import re


def get_index_of_tone_vowel(syllable):
    """
    Returns the index of the vowel that should be marked with a tone accent in a given syllable.
    The tone marks are assigned with the following priority:
     - A and E first
     - O is accented in OU
     - otherwise, the *final* vowel
    Returns -1 if no vowels found.
    ARGS:
        syllable (str)
    """
    vowels = "AaEeIiOoUuÜü"
    index = -1
    if 'a' in syllable:
        index = syllable.index('a')
    elif 'e' in syllable:
        index = syllable.index('e')
    elif 'ou' in syllable:
        index = syllable.index('ou')
    else:
        match = re.search('[{vowels}]+'.format(vowels=vowels), syllable)
        if match:
            index = match.end() - 1
    return index