def merge_author_metadata(active_author_dict, proxy_author_dict):
    """ merge metadata, taking from the active author metadata first, then filling in from the proxy author """
    # there has got to be a more pretty way to do this?
    return {
        "affiliation": active_author_dict["affiliation"]
        if active_author_dict["affiliation"]
        else proxy_author_dict["affiliation"],
        "email_address": active_author_dict["email_address"]
        if active_author_dict["email_address"]
        else proxy_author_dict["email_address"],
        "first_name": active_author_dict["first_name"]
        if active_author_dict["first_name"]
        else proxy_author_dict["first_name"],
        "last_name": active_author_dict["last_name"]
        if active_author_dict["last_name"]
        else proxy_author_dict["last_name"],
        "middle_name": active_author_dict["middle_name"]
        if active_author_dict["middle_name"]
        else proxy_author_dict["middle_name"],
        "orcid": active_author_dict["orcid"]
        if active_author_dict["orcid"]
        else proxy_author_dict["orcid"],
    }