
    @OOf`                     z    d dl Z d dlZd dlmZ  ej                  dej
                        ZdedefdZde	defdZ
y)	    N)AnyStrs   [A-Z\d\-_]{1,63}$hostreturnc                    t        | t              r	 | j                  d      }n| }	 |j	                  d       t        |      dkD  ry|r|j                  d      r|dd }t        d |j                  d      D              ry	 t        j                  |j	                  d             y# t        $ r Y yw xY w# t
        $ r Y yw xY w# t
        $ r Y yw xY w)	zV
    Checks if the passed bytes are a valid DNS hostname or an IPv4/IPv6 address.
    idnaF      .Nc              3   F   K   | ]  }t         j                  |        y w)N)_label_validmatch).0xs     T/var/www/premiumrankchecker/venv/lib/python3.12/site-packages/mitmproxy/net/check.py	<genexpr>z is_valid_host.<locals>.<genexpr>    s     
AQ<a 
As   !T)
isinstancestrencodeUnicodeErrordecode
ValueErrorlenendswithallsplit	ipaddress
ip_address)r   
host_bytess     r   is_valid_hostr      s     $	V,J 
&! :j))$/_


A**:*:4*@
AAZ..v67'  		    s4   B' B6 $C '	B32B36	CC	CCportc                 "    d| cxk  xr dk  S c S )Nr   i   )r    s    r   is_valid_portr#   *   s        )r   retypingr   compile
IGNORECASEr   boolr   intr#   r"   r$   r   <module>r+      sM     	 
 rzz/? 4 >  r$   