code: def _normalize(number):
      
      m = fullmatch(_VALID_ALPHA_PHONE_PATTERN, number)
      if m:
          return _normalize_helper(number, _ALPHA_PHONE_MAPPINGS, True)
      else:
          return normalize_digits_only(number)
docs: Normalizes a string of characters representing a phone number.
  
      This performs the following conversions:
       - Punctuation is stripped.
       - For ALPHA/VANITY numbers:
          - Letters are converted to their numeric representation on a telephone
            keypad. The keypad used here is the one defined in ITU
            Recommendation E.161. This is only done if there are 3 or more
            letters in the number, to lessen the risk that such letters are
            typos.
       - For other numbers:
          - Wide-ascii digits are converted to normal ASCII (European) digits.
          - Arabic-Indic numerals are converted to European numerals.
          - Spurious alpha characters are stripped.
  
      Arguments:
      number -- string representing a phone number
  
      Returns the normalized string version of the phone number.