<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _idFromHeaderInfo(headerInfo, isDecoy, decoyTag):
 """Generates a protein id from headerInfo. If "isDecoy" is True, the "decoyTag" is added to beginning of the generated protein id. :param headerInfo: dict, must contain a key "id" :param isDecoy: bool, determines if the "decoyTag" is added or not. :param decoyTag: str, a tag that identifies decoy / reverse protein entries. :returns: str, protein id """

    proteinId = headerInfo['id']
    if isDecoy:
        proteinId = ''.join((decoyTag, proteinId))

    return proteinId