£Á°èZ¨Ä…–K§‚«“ô4“ÒÙ´dîfUÙÃÅ WKbyÊ¦•êŽ…È®FÒ¿ÊÎóCozá¬S@6{Í:›œêZÌ:Š•_%:¢¾¾~;‘Ã~èŠ©ÊÇí`ÔÑ©úë™µ'5I¿fš×WO%ø9¾«¾DK|€ùÍD”Ýs]nHÕ¶ê×Ó¼ãžªéUWŸÈË%DÒÕ¬ï‘]/Åcx  ‰ï2ß]ä6G[]S£ÔÏ¯rs{úëóµmÒï#UQxo·õÞCe]"±/aÙ&Eã4ú9Jé_ÞåëdãöKë)AÞ                  ¯¹ægƒÛowÐø^d™ý½ßB7áyMä9ÜÖUã
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
<html>
U
    if#                     @   s   d dl Z d dlZd dlZd dlmZ edZdZdZdd Z	dd	 Z
d
d ZG dd dejZG dd dejZG dd dejZG dd deejZG dd deejZdd ZdS )    N)	ucd_3_2_0u   [.。．｡]s   xn--zxn--c                 C   s   g }| D ] }t |rq|t | qd|} td| } | D ]j}t |st |st 	|st 
|st |st |st |st |st |rDtd| qDdd | D }t|rtdd | D rtd|d	 r|d
 std| S )N ZNFKCzInvalid character %rc                 S   s   g | ]}t |qS  )
stringprepZin_table_d1.0xr   r   3/opt/alt/python38/lib64/python3.8/encodings/idna.py
<listcomp>)   s     znameprep.<locals>.<listcomp>c                 s   s   | ]}t |V  qd S )N)r   Zin_table_d2r   r   r   r	   	<genexpr>1   s     znameprep.<locals>.<genexpr>zViolation of BIDI requirement 2r   zViolation of BIDI requirement 3)r   Zin_table_b1appendZmap_table_b2joinunicodedataZ	normalizeZin_table_c12Zin_table_c22Zin_table_c3Zin_table_c4Zin_table_c5Zin_table_c6Zin_table_c7Zin_table_c8Zin_table_c9UnicodeErrorany)labelZnewlabelcZRandALr   r   r	   nameprep   sB    


	r   c                 C   s   z|  d} W n tk
r"   Y n*X dt|   k r<dk rDn n| S tdt| } z|  d} W n tk
rv   Y n*X dt|   k rdk rn n| S td| trtd|  d} t|  } dt|   k rdk rn n| S tdd S )Nasciir   @   label empty or too longzLabel starts with ACE prefixpunycode)encoder   lenr   
startswithsace_prefix
ace_prefix)r   r   r   r	   ToASCII<   s,    

r   c                 C   s   t | trd}n,z| d} d}W n tk
r:   d}Y nX |stt| } z| d} W n tk
rr   tdY nX | tst| dS | ttd  }|	d}t
|}t| d t|dkrtd| ||S )NTr   FzInvalid character in IDN labelr   zIDNA does not round-trip)
isinstancebytesr   r   r   r   r   strr   decoder   lower)r   Z
pure_asciiZlabel1resultZlabel2r   r   r	   	ToUnicodeg   s*    





r%   c                   @   s    e Zd ZdddZdddZdS )	Codecstrictc                 C   s  |dkrt d| |sdS z|d}W n tk
r>   Y ndX |d}|d d D ]&}dt|  k rrdk sVn t d	qVt|d dkrt d
|t|fS t }t|}|r|d sd}|d= nd}|D ] }|r|d |t| qt	|| t|fS )Nr'   unsupported error handling     r   r      .r   r   r   r   zlabel too longr*   )
r   r   UnicodeEncodeErrorsplitr   	bytearraydotsextendr   r    )selfinputerrorsr$   labelsr   trailing_dotr   r   r	   r      s4    



zCodec.encodec                 C   s   |dkrt d| |sdS t|ts.t|}t|kr`z|dt|fW S  tk
r^   Y nX |d}|rt|d dkrd}|d= nd	}g }|D ]}|t	| qd
|| t|fS )
Nr'   Unsupported error handling r   r   r   r+   r   r   .r   )r   r   r    r   r"   r   UnicodeDecodeErrorr-   r   r%   r   )r1   r2   r3   r4   r5   r$   r   r   r   r	   r"      s(    

zCodec.decodeN)r'   )r'   )__name__
__module____qualname__r   r"   r   r   r   r	   r&      s   
%r&   c                   @   s   e Zd Zdd ZdS )IncrementalEncoderc           	      C   s   |dkrt d| |sdS t|}d}|rT|d sBd}|d= n|sT|d= |rTd}t }d}|D ]4}|r||d |d7 }|t| |t|7 }qb||7 }|t|7 }t||fS )	Nr'   r(   r)   r*   r   r+   r      )r   r/   r-   r.   r0   r   r   r    	r1   r2   r3   finalr4   r5   r$   sizer   r   r   r	   _buffer_encode   s2    

z!IncrementalEncoder._buffer_encodeN)r:   r;   r<   rB   r   r   r   r	   r=      s   r=   c                   @   s   e Zd Zdd ZdS )IncrementalDecoderc           	      C   s   |dkrt d| |sdS t|tr2t|}nt|d}|d}d}|rt|d sbd}|d= n|st|d= |rtd}g }d}|D ]*}|t| |r|d	7 }|t|7 }qd|| }|t|7 }||fS )
Nr'   r6   r7   r   r8   r   r   r   r>   )	r   r   r!   r/   r-   r   r%   r   r   r?   r   r   r	   _buffer_decode   s6    


z!IncrementalDecoder._buffer_decodeN)r:   r;   r<   rD   r   r   r   r	   rC      s   rC   c                   @   s   e Zd ZdS )StreamWriterNr:   r;   r<   r   r   r   r	   rE   "  s   rE   c                   @   s   e Zd ZdS )StreamReaderNrF   r   r   r   r	   rG   %  s   rG   c                	   C   s    t jdt jt jttttdS )NZidna)namer   r"   incrementalencoderincrementaldecoderstreamwriterstreamreader)	codecs	CodecInfor&   r   r"   r=   rC   rE   rG   r   r   r   r	   getregentry*  s    rO   )r   rerM   r   r   compiler/   r   r   r   r   r%   r&   BufferedIncrementalEncoderr=   BufferedIncrementalDecoderrC   rE   rG   rO   r   r   r   r	   <module>   s   
.+)H#'