def METHOD_NAME(row, rank, name):
    id = row[0]
    parent = parents.get(id)
    if parent == None:
        print 'missing parent', id
        parent = ''
    # Determine flags
    flags = []
    if row[7] == '1':
        flags.append('extinct')
    status = row[4]
    if status == 'accepted':
        True
    elif status == 'interim unpublished':
        True
    elif id in has_children:     # This works
        True
    else:
        flags.append('hidden')
    taxon = (id, parent, name, rank, ','.join(flags))
    others = taxa_by_name.get(name)
    if others == None:
        taxa_by_name[name] = [taxon]
    else:
        others.append(taxon)
    return taxon