code: def normalize_int(value: IntConvertible) -> int:
      
      if is_integer(value):
          return cast(int, value)
      elif is_bytes(value):
          return big_endian_to_int(value)
      elif is_hex(value) and is_0x_prefixed(value):
          value = cast(str, value)
          if len(value) == 2:
              return 0
          else:
              return int(value, 16)
      elif is_string(value):
          return int(value)
      else:
          raise TypeError("Unsupported type: Got `{0}`".format(type(value)))
docs: Robust to integer conversion, handling hex values, string representations,
      and special cases like `0x`.