input: def is_word_valid(word: str) -> bool:
      """
      Check if a word is valid based on the following criteria:
  
      - The word contains at least 3 characters.
      - The word consists solely of digits (0-9) and English letters (both uppercase and lowercase).
      - The word has at least one vowel.
      - The word has at least one consonant.
  
      You are provided with a string word.
  
      Return true if the word meets all the above criteria, otherwise, return false.
  
      Notes:
  
      - Vowels are 'a', 'e', 'i', 'o', 'u' and their uppercase versions.
      - A consonant is defined as any English letter that is not a vowel.
  
      Examples:
      >>> word = "234Adas"
      true
      >>> word = "b3"
      false
      >>> word = "a3$e"
      false
  
      Constraints:
      - 1 <= word.length <= 20
      - The word consists of English uppercase and lowercase letters, digits, '@', '#', and '$'.
      """
output:     
      if len(word) < 3:
          return false
  
      vowels = "aeiouAEIOU"
      has_vowel = False
      has_consonant = False
  
      for char in word:
          if not char.isalnum():
              return false
          if char in vowels:
              has_vowel = True
          elif char.isalpha():
              has_consonant = True
  
      return has_vowel and has_consonant
  