
    Kxh.                     :   d dl mZmZmZmZmZ ddlZddlZddlm	Z	m
Z
  ej        d          Z G d dej                  Z G d d	ej                  Z G d
 dej                  Z G d deej                  Z G d deej                  Zdej        fdZdS )   )encodedecodealabelulabel	IDNAError    N)TupleOptionalu   [.。．｡]c            	       Z    e Zd Zddededeeef         fdZddededeeef         fdZdS )	Codecstrictdataerrorsreturnc                     |dk    r"t          d                    |                    |sdS t          |          t          |          fS )Nr   Unsupported error handling "{}")    r   )r   formatr   lenselfr   r   s      I/var/www/html/what/lib/python3.11/site-packages/pip/_vendor/idna/codec.pyr   zCodec.encode
   sN    X?FFvNNOOO 	6d||SYY&&r   c                     |dk    r"t          d                    |                    |sdS t          |          t          |          fS )Nr   r    r   )r   r   r   r   r   s      r   r   zCodec.decode   sN    X?FFvNNOOO 	5d||SYY&&r   N)r   )	__name__
__module____qualname__strr	   bytesintr   r    r   r   r   r      s        ' '3 ' '5;L ' ' ' '' '5 '# 'U38_ ' ' ' ' ' 'r   r   c            
       6    e Zd Zdedededeeef         fdZdS )IncrementalEncoderr   r   finalr   c                    |dk    r"t          d                    |                    |sdS t                              |          }d}|r|d         sd}|d= n	|s|d= |rd}g }d}|D ]=}|                    t          |                     |r|dz  }|t          |          z  }>d                    |          |z   }	|t          |          z  }|	|fS 	Nr   r   r   r   .r   r   )r   r   _unicode_dots_resplitappendr   r   join
r   r   r   r%   labelstrailing_dotresultsizelabel
result_strs
             r   _buffer_encodez!IncrementalEncoder._buffer_encode   s   X?FFvNNOOO 	5!''-- 	'": '"2JJ '2J '#&L 	 	EMM&--((( 	CJJDD XXf%%4
L!!!4r   N)r   r   r   r   boolr	   r!   r5   r"   r   r   r$   r$      sM         3    D  U3PS8_            r   r$   c            
       6    e Zd Zdedededeeef         fdZdS )IncrementalDecoderr   r   r%   r   c                    |dk    r"t          d                    |                    |sdS t                              |          }d}|r|d         sd}|d= n	|s|d= |rd}g }d}|D ]=}|                    t          |                     |r|dz  }|t          |          z  }>d                    |          |z   }	|t          |          z  }|	|fS r'   )r   r   r*   r+   r,   r   r   r-   r.   s
             r   _buffer_decodez!IncrementalDecoder._buffer_decode>   s   X?FFvNNOOO 	7!''-- 	'": '"2JJ '2J '#&L 	 	EMM&--((( 	CJJDDXXf%%4
L!!!D!!r   N)r   r   r   r   r6   r	   r!   r:   r"   r   r   r8   r8   =   sM        "3 " "D "U3PS8_ " " " " " "r   r8   c                       e Zd ZdS )StreamWriterNr   r   r   r"   r   r   r<   r<   ^           Dr   r<   c                       e Zd ZdS )StreamReaderNr=   r"   r   r   r@   r@   b   r>   r   r@   r   c            	          t          j        dt                      j        t                      j        t
          t          t          t                    S )Nidna)namer   r   incrementalencoderincrementaldecoderstreamwriterstreamreader)	codecs	CodecInfor   r   r   r$   r8   r<   r@   r"   r   r   getregentryrJ   f   s=    ww~ww~--!!   r   )corer   r   r   r   r   rH   retypingr	   r
   compiler*   r   BufferedIncrementalEncoderr$   BufferedIncrementalDecoderr8   r<   r@   rI   rJ   r"   r   r   <module>rQ      sz   ; ; ; ; ; ; ; ; ; ; ; ; ; ;  				 " " " " " " " "2::;; ' ' ' ' 'FL ' ' '(         :      B" " " " ": " " "B	 	 	 	 	5&- 	 	 		 	 	 	 	5&- 	 	 	
V% 
 
 
 
 
 
r   