def self_compare(fastas, id2desc, algorithm):
    """
    compare genome to self to get the best possible bit score for each ORF
    """
    for fasta in fastas:
        blast = open(search(fasta, fasta, method = algorithm, alignment = 'local'))
        for hit in best_blast(blast, 1):
            id, bit = hit[0].split()[0], float(hit[-1])
            id2desc[id].append(bit)
    return id2desc
compare genome to self to get the best possible bit score for each ORF