Ë
    ì—0jî%  ã                   óB  — d dl Z d dlZd dlZd dlmZ  ej
                  d«      ZdZdZd„ Z	d„ Z
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„ Zy)é    N)Ú	ucd_3_2_0u   [.ã€‚ï¼Žï½¡]s   xn--zxn--c                 óF  — g }| D ]<  }t        j                  |«      rŒ|j                  t        j                  |«      «       Œ> dj	                  |«      } t        j                  d| «      } | D ]Í  }t        j                  |«      s©t        j                  |«      s”t        j                  |«      st        j                  |«      sjt        j                  |«      sUt        j                  |«      s@t        j                  |«      s+t        j                  |«      st        j                  |«      sŒÁt!        d|z  «      ‚ | D �cg c]  }t        j"                  |«      ‘Œ }}t%        |«      r2t%        d„ | D «       «      rt!        d«      ‚|d   r|d   st!        d«      ‚| S c c}w )	NÚ ÚNFKCzInvalid character %rc              3   óF   K  — | ]  }t        j                  |«      –— Œ y ­w)N)Ú
stringprepÚin_table_d2)Ú.0Úxs     ú+/usr/local/lib/python3.12/encodings/idna.pyÚ	<genexpr>znameprep.<locals>.<genexpr>1   s   è ø€ Ð8±%¨QŒz×%Ñ% a×(±%ùs   ‚!zViolation of BIDI requirement 2r   éÿÿÿÿzViolation of BIDI requirement 3)r   Úin_table_b1ÚappendÚmap_table_b2ÚjoinÚunicodedataÚ	normalizeÚin_table_c12Úin_table_c22Úin_table_c3Úin_table_c4Úin_table_c5Úin_table_c6Úin_table_c7Úin_table_c8Úin_table_c9ÚUnicodeErrorÚin_table_d1Úany)ÚlabelÚnewlabelÚcr   ÚRandALs        r   Únameprepr%      sa  € à€HÛˆÜ×!Ñ! !Ô$àØ�‰œ
×/Ñ/°Ó2Õ3ð	 ð
 �G‰G�HÓ€Eô ×!Ñ! &¨%Ó0€Eó ˆÜ×"Ñ" 1Ô%Ü×"Ñ" 1Ô%Ü×!Ñ! !Ô$Ü×!Ñ! !Ô$Ü×!Ñ! !Ô$Ü×!Ñ! !Ô$Ü×!Ñ! !Ô$Ü×!Ñ! !Ô$Ü×!Ñ! !Õ$ÜÐ5¸Ñ9Ó:Ð:ð ñ 27Ó7±¨AŒj×$Ñ$ QÕ'°€FÐ7Ü
ˆ6„{ô Ñ8±%Ó8Ô8ÜÐ@ÓAÐAð
 �aŠy  r¢
ÜÐ@ÓAÐAà€Lùò# 8s   ÅFc                 ó  — 	 | j                  d«      } dt        | «      cxk  rdk  r| S  t        d«      ‚t        d«      ‚# t        $ r Y nw xY wt        | «      } 	 | j                  d«      } dt        | «      cxk  rdk  r| S  t        d«      ‚t        d«      ‚# t        $ r Y nw xY w| j	                  t
        «      rt        d«      ‚| j                  d«      } t        | z   } dt        | «      cxk  rdk  r| S  t        d«      ‚t        d«      ‚)NÚasciir   é@   úlabel empty or too longzLabel starts with ACE prefixÚpunycode)ÚencodeÚlenr   r%   Ú
startswithÚsace_prefixÚ
ace_prefix)r!   s    r   ÚToASCIIr0   <   s/  € ð
6à—‘˜WÓ%ˆð Œs�5‹zÔ˜BÒØˆLð äÐ4Ó5Ð5ŒlÐ4Ó5Ð5øô ò Ùðúô �U‹O€Eð6Ø—‘˜WÓ%ˆð
 Œs�5‹zÔ˜BÒØˆLð äÐ4Ó5Ð5ŒlÐ4Ó5Ð5øô ò Ùðúð ×ÑœÔ$ÜÐ9Ó:Ð:ð �L‰L˜Ó$€Eô ˜Ñ€Eð 	Œ3ˆu‹:Ô˜ÒØˆð ä
Ð0Ó
1Ð1Œ,Ð0Ó
1Ð1s#   ‚A  Á 	AÁAÁB Â	B%Â$B%c                 ó  — t        | «      dkD  rt        d«      ‚t        | t        «      rd}n	 | j	                  d«      } d}|st        | «      } 	 | j	                  d«      } | j                  t        «      st        | d«      S | t        t        «      d  }|j                  d«      }t        |«      }t        | d«      j                  «       t        |d«      k7  rt        d| |«      ‚|S # t        $ r d}Y Œ±w xY w# t        $ r t        d«      ‚w xY w)	Ni   zlabel way too longTr'   FzInvalid character in IDN labelr*   zIDNA does not round-trip)r,   r   Ú
isinstanceÚbytesr+   r%   r-   r/   ÚstrÚdecoder0   Úlower)r!   Ú
pure_asciiÚlabel1ÚresultÚlabel2s        r   Ú	ToUnicoder;   g   s  € Ü
ˆ5ƒz�DÒô Ð/Ó0Ð0ä�%œÔØ‰
ð	Ø—L‘L Ó)ˆEØˆJñ ä˜“ˆð	AØ—L‘L Ó)ˆEð ×ÑœJÔ'Ü�5˜'Ó"Ð"ð ”3”z“?Ð#Ð$€Fð �]‰]˜:Ó&€Fô �V‹_€Fô ˆ5�'Ó× Ñ Ó"¤c¨&°'Ó&:Ò:ÜÐ5°u¸fÓEÐEð €Møô; ò 	ØŠJð	ûô ò 	AÜÐ?Ó@Ð@ð	Aús   ®C% ÁC6 Ã%C3Ã2C3Ã6Dc                   ó   — e Zd Zdd„Zdd„Zy)ÚCodecc                 óD  — |dk7  rt        d|z   «      ‚|sy	 |j                  d«      }|j                  d«      }|d d D ]-  }dt        |«      cxk  rdk  rŒt        d	«      ‚ t        d	«      ‚ t        |d   «      dk\  rt        d
«      ‚|t        |«      fS # t        $ r Y nw xY wt        «       }t        j                  |«      }|r|d   sd}|d= nd}|D ]/  }|r|j                  d«       |j                  t        |«      «       Œ1 t        ||z   «      t        |«      fS )NÚstrictúunsupported error handling ©ó    r   r'   ó   .r   r   r(   r)   zlabel too longrB   )
r   r+   Úsplitr,   ÚUnicodeEncodeErrorÚ	bytearrayÚdotsÚextendr0   r3   )ÚselfÚinputÚerrorsr9   Úlabelsr!   Útrailing_dots          r   r+   zCodec.encode›   s8  € à�XÒäÐ<¸VÑCÓDÐDáØð	&Ø—\‘\ 'Ó*ˆFð
 —\‘\ $Ó'ˆFØ  ›�ØœC ›JÔ+¨Ó+Ü&Ð'@ÓAÐAð ,Ü&Ð'@ÓAÐAð %ô �6˜"‘:‹ "Ò$Ü"Ð#3Ó4Ð4Øœ3˜u›:Ð%Ð%øô "ò 	Ùð	úô “ˆÜ—‘˜EÓ"ˆÙ˜& š*ØˆLØ�r‘
àˆLÛˆEÙà—‘˜dÔ#Ø�M‰Mœ' %›.Õ)ð	 ô
 �V˜LÑ(Ó)¬3¨u«:Ð5Ð5s   ˜B Â	B$Â#B$c                 ó¨  — |dk7  rt        d|z   «      ‚|syt        |t        «      st        |«      }t        |vr	 |j	                  d«      t        |«      fS |j                  d«      }|rt        |d   «      dk(  rd}|d= nd	}g }|D ]  }|j                  t        |«      «       Œ dj                  |«      |z   t        |«      fS # t        $ r Y Œyw xY w)
Nr?   úUnsupported error handling ©r   r   r'   rC   r   r   Ú.r   )r   r2   r3   r/   r5   r,   ÚUnicodeDecodeErrorrD   r   r;   r   )rI   rJ   rK   rL   rM   r9   r!   s          r   r5   zCodec.decodeÀ   sá   € à�XÒÜÐ<¸VÑCÓDÐDáØô ˜%¤Ô'ä˜%“LˆEä˜UÑ"ðØ—|‘| GÓ,¬c°%«jÐ8Ð8ð —‘˜TÓ"ˆá”c˜& ™*“o¨Ò*ØˆLØ�r‘
àˆLàˆÛˆEØ�M‰Mœ) EÓ*Õ+ð ð �x‰x˜Ó Ñ,¬c°%«jÐ8Ð8øô &ò Ùðús   »C Ã	CÃCN)r?   )Ú__name__Ú
__module__Ú__qualname__r+   r5   © rB   r   r=   r=   š   s   „ ó#6ôJ 9rB   r=   c                   ó   — e Zd Zd„ Zy)ÚIncrementalEncoderc                 ón  — |dk7  rt        d|z   «      ‚|syt        j                  |«      }d}|r|d   sd}|d= n	|s|d= |rd}t        «       }d}|D ]B  }|r|j	                  d«       |dz  }|j	                  t        |«      «       |t        |«      z  }ŒD ||z  }|t        |«      z  }t        |«      |fS )	Nr?   r@   rA   rB   r   rC   r   é   )r   rG   rD   rF   rH   r0   r,   r3   ©	rI   rJ   rK   ÚfinalrL   rM   r9   Úsizer!   s	            r   Ú_buffer_encodez!IncrementalEncoder._buffer_encodeã   sÒ   € Ø�XÒäÐ<¸VÑCÓDÐDáØä—‘˜EÓ"ˆØˆÙØ˜"’:Ø#�Ø˜2‘JÙà˜2�JÙØ#'�Lä“ˆØˆÛˆEÙà—‘˜dÔ#Ø˜‘	�Ø�M‰Mœ' %›.Ô)Ø”C˜“JÑ‰Dð ð 	�,ÑˆØ”�LÓ!Ñ!ˆÜ�f“˜tÐ$Ð$rB   N)rS   rT   rU   r^   rV   rB   r   rX   rX   â   s   „ ó %rB   rX   c                   ó   — e Zd Zd„ Zy)ÚIncrementalDecoderc                 ó¤  — |dk7  rt        d|z   «      ‚|syt        |t        «      rt        j	                  |«      }nt        |d«      }|j	                  d«      }d}|r|d   sd}|d= n	|s|d= |rd}g }d}|D ]1  }|j                  t        |«      «       |r|d	z  }|t        |«      z  }Œ3 dj                  |«      |z   }|t        |«      z  }||fS )
Nr?   rO   rP   r'   rQ   r   r   r   rZ   )	r   r2   r4   rG   rD   r   r;   r,   r   r[   s	            r   Ú_buffer_decodez!IncrementalDecoder._buffer_decode  sñ   € Ø�XÒÜÐ<¸VÑCÓDÐDáØô �eœSÔ!Ü—Z‘Z Ó&‰Fô ˜˜wÓ'ˆEØ—[‘[ Ó%ˆFàˆÙØ˜"’:Ø"�Ø˜2‘JÙà˜2�JÙØ#&�LàˆØˆÛˆEØ�M‰Mœ) EÓ*Ô+ÙØ˜‘	�Ø”C˜“JÑ‰Dð	 ð —‘˜&Ó! LÑ0ˆØ”�LÓ!Ñ!ˆØ˜ˆ~ÐrB   N)rS   rT   rU   rb   rV   rB   r   r`   r`     s   „ ó$rB   r`   c                   ó   — e Zd Zy)ÚStreamWriterN©rS   rT   rU   rV   rB   r   rd   rd   ,  ó   „ ØrB   rd   c                   ó   — e Zd Zy)ÚStreamReaderNre   rV   rB   r   rh   rh   /  rf   rB   rh   c            	      ó¢   — t        j                  dt        «       j                  t        «       j                  t
        t        t        t        ¬«      S )NÚidna)Únamer+   r5   ÚincrementalencoderÚincrementaldecoderÚstreamwriterÚstreamreader)	ÚcodecsÚ	CodecInfor=   r+   r5   rX   r`   rd   rh   rV   rB   r   Úgetregentryrr   4  s6   € Ü×ÑØÜ‹w�~‰~Ü‹w�~‰~Ü-Ü-Ü!Ü!ôð rB   )r   Úrerp   r   r   ÚcompilerG   r/   r.   r%   r0   r;   r=   ÚBufferedIncrementalEncoderrX   ÚBufferedIncrementalDecoderr`   rd   rh   rr   rV   rB   r   Ú<module>rw      s§   ð÷ Ó Ý 0ð €r‡z�zÐ.Ó/€ð €
Ø€ò,ò\)2òV/ôfF9ˆF�L‰Lô F9ôP!%˜×:Ñ:ô !%ôF%˜×:Ñ:ô %ôN	�5˜×,Ñ,ô 	ô	�5˜×,Ñ,ô 	ó
	rB   