+
     h3  c                   s   ^ RI t ^ RIt^ RIt^ RIHtHt ^RIHt ^RIH	t	 ^	t
Rt]P                  ! R4      t ! R R]4      t ! R	 R
]4      t ! R R]4      t ! R R]4      tR R ltR R ltR R ltR R ltR R ltR R ltR3R R lltR R ltR R  ltR! R" ltR# R$ ltR3R% R& lltR' R( ltR) R* lt R+ R, lt!R4R- R. llt"R5R/ R0 llt#R6R1 R2 llt$R# )7    N)OptionalUnion)idnadata)intranges_contains   xn--u   [.。．｡]c                   s    ] tR t^tRtRtR# )	IDNAErrorz5Base exception for all IDNA-encoding related problems NZ__name__Z
__module__Z__qualname__Z__firstlineno__Z__doc__Z__static_attributes__r       ./usr/lib/python3.14/site-packages/idna/core.pyr   r      s    ?r   r   c                   s    ] tR t^tRtRtR# )IDNABidiErrorz;Exception when bidirectional requirements are not satisfiedr   Nr   r   r   r	   r
   r
      s    Er   r
   c                   s    ] tR t^tRtRtR# )InvalidCodepointz<Exception when a disallowed or unallocated codepoint is usedr   Nr   r   r   r	   r   r      s    Fr   r   c                   s    ] tR t^ tRtRtR# )InvalidCodepointContextzCException when the codepoint is not valid in the context it is usedr   Nr   r   r   r	   r   r       s    Mr   r   c                s0    V ^8  d   QhR\         R\         /# )   cpreturn)intformat   "r	   __annotate__r   &   s        r   c                 s    \         P                  ! \        V 4      4      pV^ 8X  d1   \         P                  ! \        V 4      4      '       g   \	        R4      hV# )r    z Unknown character in unicodedata)unicodedataZ	combiningZchrZname
ValueError)r   Zv   & r	   _combining_classr   &   sC    c"g&AAvB((?@@Hr   c                s<    V ^8  d   QhR\         R\         R\        /# )r   r   scriptr   strboolr   r   r	   r   r   .   s&     @ @3 @ @ @r   c                 sV    \        \        V 4      \        P                  V,          4      # )N)r   ordr   Zscripts)r   r      &&r	   
_is_scriptr   .   s    SWh&6&6v&>??r   c                0    V ^8  d   QhR\         R\        /# r   sr   r   bytesr   r   r	   r   r   2   s            r   c                 s$    V P                  R 4      # )punycode)encoder"      &r	   	_punycoder)   2   s    88Jr   c                r    r!   )r   r   r   r   r	   r   r   6   s        S  S  r   c                 s$    R P                  V 4      # )zU+{:04X}r   r'   r(   r	   _unotr*   6   s    Qr   c                sR    V ^8  d   QhR\         \        \        3,          R\        /# r   labelr   r   r$   r   r   r   r   r	   r   r   :   s#      eE3J/ D r   c                 s*    \        V 4      ^?8  d   R# R# )i?   FTlenr,   r(   r	   valid_label_lengthr1   :   s    
5zBr   c                s^    V ^8  d   QhR\         \        \        3,          R\        R\        /# )r   r,   trailing_dotr   r-   r   r   r	   r   r   @   s*      uUCZ0   r   c                 s>    \        V 4      V'       d   ^M^8  d   R# R# )i   FTr.   )r,   r2   r   r	   valid_string_lengthr3   @   s    
5zLSc2r   c                s<    V ^8  d   QhR\         R\        R\        /# )r   r,   	check_ltrr   r   r   r   r	   r   r   F   s&     C Cc Cd Ct Cr   c                 sR   R p\        V ^4       FQ  w  r4\        P                  ! V4      pVR8X  d%   \        RP	                  \        V 4      V4      4      hVR9   g   KO  RpKS  	  V'       g   V'       g   R# \        P                  ! V ^ ,          4      pVR9   d   RpM-VR8X  d   R pM#\        RP	                  \        V 4      4      4      hR pRp\        V ^4       F  w  r4\        P                  ! V4      pV'       d]   VR9  d   \        RP	                  V4      4      hVR9   d   RpM	VR8w  d   R pVR9   d    V'       g   TpKj  W8w  d   \        R	4      hK}  K  VR9  d   \        R
P	                  V4      4      hVR9   d   RpK  VR8w  g   K  R pK  	  V'       g   \        R4      hR# )F z1Unknown directionality in label {} at position {}TLz=First codepoint in label {} must be directionality L, R or ALNNSMzGInvalid direction for codepoint at position {} in a right-to-left labelz2Can not mix numeral types in a right-to-left labelzGInvalid direction for codepoint at position {} in a left-to-right labelz0Label ends with illegal codepoint directionality)RALAN)r8   r9   )
r8   r9   r:   ENESCSETONBNr7   )r8   r9   r;   r:   )r:   r;   )r6   r;   r<   r=   r>   r?   r@   r7   )r6   r;   )	enumerater   Zbidirectionalr
   r   repr)	r,   r4   Z
bidi_labelZidxr   Z	directionZrtlZvalid_endingZnumber_types	   &&       r	   
check_bidirC   F   s   JUA&--b1	? S Z Z[_`e[fhk lmm))J ' i ))%(3IK	c	[bbcghmcnoppL!%KUA&--b1	 !  $$m$t$tux$yzz33#e#$L(""+K"/+,`aa 0	 )  PP#$m$t$tux$yzzK'#e#$M 'P NOOr   c                r    r+   r   r   r   r	   r   r      s      # $ r   c                 sn    \         P                  ! V ^ ,          4      ^ ,          R8X  d   \        R4      hR# )r    Mz0Label begins with an illegal combining characterT)r   Zcategoryr   r0   r(   r	   check_initial_combinerrE      s-    E!H%a(C/JKKr   c                r    r+   r   r   r   r	   r   r      s      3 4 r   c                 s    V R ,          R8X  d   \        R4      hV ^ ,          R8X  g   V R,          R8X  d   \        R4      hR# ):r   i   Nz--z4Label has disallowed hyphens in 3rd and 4th position-z)Label must not start or end with a hyphenT)r   r0   r(   r	   check_hyphen_okrH      s?    SzTNOOQx3%)s*CDDr   c                s(    V ^8  d   QhR\         RR/# r   r,   r   N)r   r   r   r	   r   r      s     A AS AT Ar   c                 sT    \         P                  ! R V 4      V 8w  d   \        R4      hR# )NFCz%Label must be in Normalization Form CN)r   	normalizer   r0   r(   r	   	check_nfcrL      s(    UE*e3?@@ 4r   c                s<    V ^8  d   QhR\         R\        R\        /# )r   r,   posr   r   r   r   r   r   r	   r   r      s!     ) )# )C )D )r   c                 s2   \        W,          4      pVR 8X  EdB   V^ 8  d-   \        \        W^,
          ,          4      4      \        8X  d   R# Rp\        V^,
          RR4       Fb  p\        P
                  P                  \        W,          4      4      pV\        R4      8X  d   KC  V\        R4      \        R4      39   d   Rp M M	  V'       g   R# Rp\        V^,           \        V 4      4       Fd  p\        P
                  P                  \        W,          4      4      pV\        R4      8X  d   KC  V\        R4      \        R4      39   d   Rp V#  V# 	  V# VR8X  d6   V^ 8  d-   \        \        W^,
          ,          4      4      \        8X  d   R# R# R# )	i   TFZTr6   Dr8   i   rG   )r   r   _virama_combining_classZranger   Zjoining_typesZgetr/   )r,   rM   cp_valueZokZiZjoining_types   &&    r	   valid_contextjrR      sX   5:H67E'N 348OOsQwB'A#1155c%(mDLs3x'#c(CH!55 ( sQwE
+A#1155c%(mDLs3x'#c(CH!55 	 	 , 	67E'N 348OO r   c                sH    V ^8  d   QhR\         R\        R\        R\        /# )r   r,   rM   	exceptionr   rN   r   r   r	   r   r      s(     ' '# 'C 'D 'T 'r   c                 s   \        W,          4      pV^8X  db   ^ Tu;8  d   \        V 4      ^,
          8  dA   M R# \        W^,
          ,          4      ^l8X  d    \        W^,           ,          4      ^l8X  d   R# R# VR8X  dC   V\        V 4      ^,
          8  d*   \        V 4      ^8  d   \        W^,           ,          R4      # R# VR8X  g   VR8X  d#   V^ 8  d   \        W^,
          ,          R4      # R# VR8X  dN   V  FE  pVR	8X  d   K  \        VR
4      '       g'   \        VR4      '       g   \        VR4      '       g   KD   R# 	  R# RTu;8:  d   R8:  d.   M M*V  F"  pR\        V4      u;8:  d   R8:  g   K    R#  K$  	  R# RTu;8:  d   R8:  d/   M R# V  F"  pR\        V4      u;8:  d   R8:  g   K    R#  K$  	  R# R# )i   TFiu  ZGreeki  i  ZHebrewi0  u   ・ZHiraganaZKatakanaZHani`  ii  i  i  )r   r/   r   )r,   rM   rS   rQ   r   s   &&&  r	   valid_contextorT      s   5:H6s#SZ!^#  5q>"f,U7^1D1N	V	UaCJNe!Gng66	V	x617e!Gnh77	V	BX~"j))ZJ-G-G:VXZ_K`K`	 
 	(	#e	#BB)6) *  	(	#e	#  BB)6) *  r   c                sT    V ^8  d   QhR\         \        \        \        3,          RR/# rI   r   r   r$   	bytearrayr   r   r	   r   r      s&     $ $uS%23 $ $r   c                 s.   \        V \        \        34      '       d   V P                  R 4      p \	        V 4      ^ 8X  d   \        R4      h\        V 4       \        V 4       \        V 4       \        V 4       EFL  w  r\        V4      p\        V\        P                  R,          4      '       d   K:  \        V\        P                  R,          4      '       dJ    \        W4      '       g6   \        RP!                  \#        V4      V^,           \%        V 4      4      4      hK  \        V\        P                  R,          4      '       dJ   \)        W4      '       g6   \        RP!                  \#        V4      V^,           \%        V 4      4      4      hEK  \+        RP!                  \#        V4      V^,           \%        V 4      4      4      h	  \-        V 4       R	#   \&         d7    \        RP!                  \#        T4      T^,           \%        T 4      4      4      hi ; i)
zutf-8zEmpty LabelZPVALIDZCONTEXTJz*Joiner {} not allowed at position {} in {}z<Unknown codepoint adjacent to joiner {} at position {} in {}ZCONTEXTO-Codepoint {} not allowed at position {} in {}z-Codepoint {} at position {} of {} not allowedN)
isinstancer$   rV   decoder/   r   rL   rH   rE   rA   r   r   r   Zcodepoint_classesrR   r   r   r*   rB   r   rT   r   rC   )r,   rM   r   rQ   s   &   r	   check_labelrZ      s   %%+,,W%
5zQ&&eE5!U#r7Xx'A'A('KLLx)C)CJ)OPP
%e111DKKERZO]`cd]dfjkpfqr  2 x)C)CJ)OPP!%---CJJ5QY?\_bc\ceijoepq  .
 #?FFuXX[^_X_aefkalm - $4 u!  RYYhq$u+ s   AGAHc                r    r+   r#   r   r   r	   r   r     s      # % r   c                 s    V P                  R 4      p\        V4       \        V4      '       g   \        R4      hV#   \         d     Mi ; i\        T 4       \        \        T 4      ,           p\        T4      '       g   \        R4      hT# )asciizLabel too long)r&   ulabelr1   r   UnicodeEncodeErrorrZ   _alabel_prefixr)   r,   Zlabel_bytesr   r	   alabelr`     s    ll7+{!+..,--   9U#33Kk**())s   9< A
	A
c                s\    V ^8  d   QhR\         \        \        \        3,          R\        /# r+   rU   r   r   r	   r   r   /  s&      %UI-. 3 r   c                 s<   \        V \        \        34      '       g    V P                  R 4      pMT pVP                  4       pVP                  \        4      '       dO   V\        \        4      R pV'       g   \        R4      hVP                  R 4      R,          R8X  d   \        R4      hM\        V4       VP                  R 4      #  VP                  R4      p \        T 4       T #   \         d    \        T 4       T u # i ; i  \         d    \        R4      hi ; i)r[   Nz5Malformed A-label, no Punycode eligible content foundrF   z"A-label must not end with a hyphenr%   zInvalid A-labelrG   )rX   r$   rV   r&   r]   rZ   ZlowerZ
startswithr^   r/   r   rY   UnicodeErrorr_   r   r	   r\   r\   /  s   eeY/00	,,w/K
 ##%Kn--!#n"5"78STTg&r*c1@AA 2 	K !!'**+"":. L- " 	L	&  +)**+s   C& D &D DDc                sH    V ^8  d   QhR\         R\        R\        R\         /# )r   domain
std3_rulestransitionalr   r   r   r   r	   r   r   L  s)     0 0 0 0D 0UX 0r   c                s   ^RI H p Rp\        V 4       F  w  rV\        V4      p Y7R8  d   TM\        P                  ! W7R34      ^,
          ,          pV^,          p	Rp
\        V4      ^8X  d
   V^,          p
V	R8X  g#   V	R8X  d	   V'       d   V	R8X  d   V'       g   V
f   WF,          pK  V
e0   V	R	8X  g   V	R8X  d	   V'       d   V	R8X  d   V'       d   WJ,          pK  V	R
8w  d   \        4       hK  	  \        P                  ! RV4      #   \         d7    \        RP                  \        T4      T^,           \        T 4      4      4      hi ; i)zBRe-map the characters in the string according to UTS46 processing.)	uts46datar5   i   ZZNZVrO   Z3rD   ZIrW   rJ   )re   rA   r   bisectZbisect_leftr/   Z
IndexErrorr   r   r*   rB   r   rK   )rb   rc   rd   re   ZoutputrM   ZcharZ
code_pointZuts46rowZstatusZreplacements   &&&        r	   uts46_remaprg   L  s-   $Fv&	Y
	 C/?VEWEWXapsctEuxyEyzHa[F)-K8}!&qk#cM,cM*9L(#&C-
RUZf%3 l" % '2   //  	"?FFuZGXZ]`aZacghncop 	s1   A'D	D	D	*D	D	D	D		AE
c                s    V ^8  d   QhR\         \        \        \        3,          R\        R\        R\        R\        R\        /# )r   r"   strictuts46rc   rd   r   r   r   r$   rV   r   r   r   r	   r   r   n  sP     $ $S%"#$$ $ 	$
 $ $r   c                 sf   \        V \        4      '       g    \        V R 4      p V'       d   \	        WV4      p Rp. pV'       d   V P                  R4      pM\        P                  V 4      pV'       d	   VR.8X  d   \        R4      hVR,          R8X  d   VR RpV F2  p\        V4      p V '       d   VP                  V 4       K)  \        R4      h	  V'       d   VP                  R4       R	P                  V4      p \        W4      '       g   \        R
4      hV #   \         d    \        R4      hi ; i)r[   zGshould pass a unicode string to the function rather than a byte string.F.r5   Empty domainTEmpty labelr   s   .zDomain too longrG   )rX   r   UnicodeDecodeErrorr   rg   split_unicode_dots_rer`   appendjoinr3   )	r"   rh   ri   rc   rd   r2   resultlabelsr,   s	   &&&&&    r	   r&   r&   n  s    a	gAwA |4LF!''*Vt^''bzR2J5MMM!M**  c		&Aq//)**H5 " 	geff	gs   D D0c          
      s    V ^8  d   QhR\         \        \        \        3,          R\        R\        R\        R\        /# )r   r"   rh   ri   rc   r   rj   r   r   r	   r   r     sF        S%"#     	 
 	 r   c                 s,    \        V \        4      '       g   \        V R 4      p T'       d   \	        YR4      p Rp. pT'       g   \
        P                  T 4      pMT P                  R4      pT'       d	   TR.8X  d   \        R4      hTR,          '       g   TR RpT F2  p\        T4      p T '       d   TP                  T 4       K)  \        R4      h	  T'       d   TP                  R4       RP                  T4      #   \         d    \        R4      hi ; i)	r[   zInvalid ASCII in A-labelFrk   r5   rl   Trm   rG   )
rX   r   rn   r   rg   rp   ro   r\   rq   rr   )r"   rh   ri   rc   r2   rs   rt   r,   s   &&&&    r	   rY   rY     s    4!S!!AwA u-LF!''*Vt^''"::2J5MMM!M**  b88F/  42334s   "C< <D)F)TF)FFFF)FFF)%rf   Zrer   Ztypingr   r   r5   r   Z	intrangesr   rP   r^   Zcompilerp   ra   r   r
   r   r   r   r   r)   r*   r1   r3   rC   rE   rH   rL   rR   rT   rZ   r`   r\   rg   r&   rY   r   r   r	   <module>ru      s     	  "  ( :::; 	 		I 		y 		i 	@  CLA
)X'T$N&:0D$N   r   