def check_int(school, international):
    """
    Checks if a school is an international school based on a school list and other criteria

    Parameters
    ----------
    school: current school being checked
    international: AP/IB school list

    Returns
    -------
    Y or N
    """

    # list of criteria that could qualify a school as an international school even if it is not on the school lists
    int_criteria = ["International Baccalaureate", "IBDP", "IB", "IB Score", "A Level",
                    "A-Level", "French Baccalaureate", "A Levels", "A*"]

    school_name = school['name']

    degree_name = school['degree']
    if degree_name is None: degree_name = ''

    field_of_study = school['field_of_study']
    if field_of_study is None: field_of_study = ''

    grades = school['grades']
    if grades is None: grades = ''

    if any(element.lower() == school_name.lower() for element in international["AP"]):
        int_hs = 'Y (AP)'
    elif any(element.lower() == school_name.lower() for element in international["IB"]):
        int_hs = 'Y (IB)'
    elif any(element.lower() in school_name.lower() for element in int_criteria) or \
            any(element.lower() in degree_name.lower() for element in int_criteria) or \
            any(element.lower() in field_of_study.lower() for element in int_criteria) or \
            any(element.lower() in grades.lower() for element in int_criteria):
        int_hs = 'Y'
    else:
        int_hs = 'N'

    return int_hs