------
## 最终结论
```python
def longest_even_vowel_substring(s: str) -> int:
    vowel_state = 0
    state_map = {0: -1}  # Initialize with state 0 at index -1
    max_length = 0
    vowels = {'a', 'e', 'i', 'o', 'u'}

    for index, char in enumerate(s):
        if char in vowels:
            # Toggle the bit corresponding to the vowel
            vowel_state ^= (1 << (ord(char) - ord('a')))
        
        if vowel_state in state_map:
            max_length = max(max_length, index - state_map[vowel_state])
        else:
            state_map[vowel_state] = index

    return max_length
```