code: def as_dotted(dotted_str):
      
      #max_asn = 4294967295 (65535 * 65535)
      if '.' not in dotted_str:
          return dotted_str
      max_byte = 65535
      left, right = map(int, dotted_str.split('.'))
      if left > max_byte or right > max_byte:
          raise ValueError('The max low and high order value for '
              'a 32-bit ASN is 65535')
      binval = "{0:016b}".format(left)
      binval += "{0:016b}".format(right)
      return int(binval, 2)
docs: Implement RFC 5396 to support 'asdotted' notation for BGP AS numbers.
      Provide a string in format of '1.10', '65000.65015' and this will return
      a 4-byte decimal representation of the AS number.
      Get the binary values for the int's and pad to 16 bits if necessary
      (values <255). Concatenate the first 2 bytes with second 2 bytes then
      convert back to decimal. The maximum for low and high order values is
      65535 (i.e. 65535.65535).
      
      :param str dotted_str: asdotted notation for BGP ASN
      :rtype: int