def ns_has_i_umlaut(ns: str, gs: str, np: str):
    """
    Checks if the nominative singular has an i-umlaut
    # >>> ns_has_i_umlaut("ketill", "ketils", "katlar")
    # True

    >>> ns_has_i_umlaut("armr", "arms", "armar")
    False

    >>> ns_has_i_umlaut("mór", "mós", "móar")
    False

    >>> ns_has_i_umlaut("hirðir", "hirðis", "hirðar")
    False

    >>> ns_has_i_umlaut("söngr", "söngs", "söngvar")
    False

    >>> ns_has_i_umlaut("gestr", "gests", "gestir")
    False

    >>> ns_has_i_umlaut("staðr", "staðar", "staðir")
    False

    :param ns:
    :param gs:
    :param np:
    :return:
    """

    ns_syl = s.syllabify_ssp(ns)
    gs_syl = s.syllabify_ssp(gs)
    np_syl = s.syllabify_ssp(np)
    s_ns_syl = [Syllable(syl, VOWELS, CONSONANTS) for syl in ns_syl]
    s_gs_syl = [Syllable(syl, VOWELS, CONSONANTS) for syl in gs_syl]
    s_np_syl = [Syllable(syl, VOWELS, CONSONANTS) for syl in np_syl]
    if len(gs_syl) >= 2 and s_gs_syl[-1].nucleus[0] == "i":
        if len(ns_syl) >= 2:
            vowel = s_ns_syl[-2].nucleus[0]
        else:
            vowel = s_ns_syl[-1].nucleus[0]
        return vowel in BACK_TO_FRONT_VOWELS and s_gs_syl[-2].nucleus[0] == BACK_TO_FRONT_VOWELS[vowel]

    if len(np_syl) >= 2 and s_np_syl[-1].nucleus[0] == "i":
        if len(ns_syl) >= 2:
            vowel = s_ns_syl[-2].nucleus[0]
        else:
            vowel = s_ns_syl[-1].nucleus[0]
        return vowel in BACK_TO_FRONT_VOWELS and s_np_syl[-2].nucleus[0] in BACK_TO_FRONT_VOWELS[vowel]

    return False
Checks if the nominative singular has an i-umlaut
    # >>> ns_has_i_umlaut("ketill", "ketils", "katlar")
    # True

    >>> ns_has_i_umlaut("armr", "arms", "armar")
    False

    >>> ns_has_i_umlaut("mór", "mós", "móar")
    False

    >>> ns_has_i_umlaut("hirðir", "hirðis", "hirðar")
    False

    >>> ns_has_i_umlaut("söngr", "söngs", "söngvar")
    False

    >>> ns_has_i_umlaut("gestr", "gests", "gestir")
    False

    >>> ns_has_i_umlaut("staðr", "staðar", "staðir")
    False

    :param ns:
    :param gs:
    :param np:
    :return: