def create_full_amplicon(id, primer, first=None, last=None, is_unique=False):
    """
    Create the full amplicon including primers.  For those with
    alternative primers, the amplicon will include the largest
    region possible.

    Arguments:
        * id: the id number of the primer
        * primer: a dictionary containg the primer information
        * first: the id for the first amplicon
        * last: the id for the last amplicon
        * is_unique: a Boolean to apply unique amplicons

    Return Value:
        Returns a list containing primer details including:
            * chr
            * start
            * end
            * name
            * score
            * strand (+)
    """
    amplicon = list()
    amplicon.append(primer['chr'])
    if is_unique:
        if str(id) == str(first):
            amplicon.append(str(max(primer['left']['end'])))
            amplicon.append(str(min(primer['right']['end'])))
        elif str(id) == str(last):
            amplicon.append(str(min(primer['left']['start'])))
            amplicon.append(str(max(primer['right']['start'])))
        else:
            amplicon.append(str(min(primer['left']['start'])))
            amplicon.append(str(max(primer['right']['end'])))
    else:
        amplicon.append(str(min(primer['left']['start'])))
        amplicon.append(str(max(primer['right']['end'])))
    amplicon.append(f'nCoV-2019_{id}')
    amplicon.append(str(primer['qual']))
    amplicon.append('+')
    return amplicon