
    h                        S SK r S SKrS SKJrJrJr  S SKJrJrJ	r	  \R                  " S5      r\" S5       V s1 s H  n SU S 3R                  S5      iM     sn rSrS	r\S
-   r\\-   r\\-   S-   r\\-   r\R(                  " S5      r\R(                  " S5      r\ R.                  " S5      r " S S5      r " S S5      rgs  sn f )    N)ascii_lettersascii_lowercasedigits)Unioncastoverloadascii   %02Xz:/?#[]@z!$'()*,+&=;z-._~s   [A-Z0-9][A-Z0-9]z[A-Fa-f0-9][A-Fa-f0-9]zutf-8c                       \ rS rSrSSSSS.S\S\S\S	\S
S4
S jjr\S\S
\4S j5       r\SS j5       rS\	\S4   S
\	\S4   4S jrSr
g)_Quoter    FT)safe	protectedqsrequoter   r   r   r   returnNc                4    Xl         X l        X0l        X@l        g N)_safe
_protected_qs_requote)selfr   r   r   r   s        B/var/www/html/env/lib/python3.13/site-packages/yarl/_quoting_py.py__init___Quoter.__init__   s     
#    valc                     g r    r   r"   s     r   __call___Quoter.__call__$       ),r!   c                     g r   r$   r%   s     r   r&   r'   &       +.r!   c                    Uc  g [        U[        5      (       d  [        S5      eU(       d  gUR                  SSS9n[	        5       n[	        5       nU R
                  nU[        -  nU R                  (       d  US-  nXPR                  -  nUR                  S5      nSnU[        U5      :  GaG  X'   nUS	-  nU(       GaF  U[        ;   a  US
-
  nUR                  U5        [        U5      S:X  a  US	S  n	[        R                  U	5      (       d(  UR                  S5        UR                  5         US-  nM   [!        [#        US	S  R%                  S5      SS95      n
XR                  ;   a  UR                  U5        O1X;   a  UR                  [)        U
5      5        OUR                  U5        UR                  5         OD[        U5      S:X  a5  U[        U5      :X  a&  UR                  S5        UR                  5         US	-  nGMg  U[)        S5      :X  aU  U R*                  (       aD  UR                  5         UR                  U5        U[        U5      :X  a  UR                  S5        GM  U R                  (       a,  U[)        S5      :X  a  UR                  [)        S5      5        GM  X;   a  UR                  U5        GM!  UR                  SUS 3R                  S5      5        U[        U5      :  a  GMG  UR%                  S5      nX:X  a  U$ U$ ! [&         a+    UR                  S5        UR                  5         US-  n GM  f = f)NArgument should be strr   utf8ignore)errorsr   r	   r             s   %25      baser    +r   )
isinstancestr	TypeErrorencode	bytearrayr   ALLOWEDr   r   lenBASCII_LOWERCASEappend_IS_HEXmatchextendclearchrintdecode
ValueErrorordr   )r   r"   bvalretpctr   bsafeidxchbufunquotedret2s               r   r&   r'   (   s   ;#s##455zz&z2kkzzxxFNDG$CIoB1HC))bB

2s8q=ab'C"==--

6*		q !#&s3qr7>>'+B'L#M  ??2

3!)

3x=1

3IIK X]sc$i'7JJv&IIK1HCs3xDMM		

2 #d)#JJv&xxB#c(N

3s8${

2JJ!Bs8,,W56q CIot zz'";JY & !

6*		q 	!s   5%L 0MM)r   r   r   r   r"   Nr   N__name__
__module____qualname____firstlineno__r:   boolr   r   r&   r   __static_attributes__r$   r!   r   r   r      s         	 
     
  ,C,C, ,. .NE#t), NsDy1A Nr!   r   c                       \ rS rSrSSSSS.S\S\S\S\S	S
4
S jjr\S\S	\4S j5       r\SS j5       rS\	\S
4   S	\	\S
4   4S jrSr
g
)	_Unquotery   r   F)r.   unsafer   plusr.   r_   r   r`   r   Nc                n    Xl         X l        X0l        X@l        [	        5       U l        [	        SS9U l        g )NT)r   )_ignore_unsafer   _plusr   _quoter
_qs_quoter)r   r.   r_   r   r`   s        r   r   _Unquoter.__init__z   s-     
y!T*r!   r"   c                     g r   r$   r%   s     r   r&   _Unquoter.__call__   r(   r!   c                     g r   r$   r%   s     r   r&   ri      r*   r!   c                 F   Uc  g [        U[        5      (       d  [        S5      eU(       d  g[        [        R
                  [        5       5      n/ nSnU[        U5      :  GaZ  X   nUS-  nUS:X  Ga  U[        U5      S-
  ::  Ga   XUS-    n[        R                  U5      (       a  [        [        USS9/5      nUS-  n UR                  U5      nU(       d  M  U R"                  (       a7  US
;   a1  U R%                  U5      n
U
c  ['        S5      eUR                  U
5        O`XR(                  ;   d  XR*                  ;   a1  U R-                  U5      n
U
c  ['        S5      eUR                  U
5        OUR                  U5        GM3  UR                  (       aD  US-
  [        UR                  5      S	-  -
  n	UR                  XUS-
   5        UR!                  5         US:X  aW  U R"                  (       d  U R.                  (       a  XPR(                  ;   a  UR                  S5        OUR                  S5        GM  XPR(                  ;   aS  UR                  S5        [1        [3        U5      5      R5                  5       SS  nU H  nUR                  U5        M     GMG  UR                  U5        U[        U5      :  a  GMZ  UR                  (       a+  UR                  U[        UR                  5      * S	-  S  5        SR7                  U5      nX:X  a  U$ U$ ! [         a    US	-
  [        UR                  5      S	-  -
  n	UR                  XUS	-
   5        UR!                  5          UR                  U5      n GN! [         a    UR                  XS	-
  U 5          GMH  f = ff = f)Nr,   r   r   r0   r   r3   r4   r5   r2   z+=&;zCannot quote Noner8   r7   )r9   r:   r;   r   codecsBufferedIncrementalDecoderutf8_decoderr?   _IS_HEX_STR	fullmatchbytesrG   rH   UnicodeDecodeErrorbufferrA   resetr   rf   RuntimeErrorrc   rb   re   rd   hexrJ   upperjoin)r   r"   decoderrL   rO   rP   rM   brR   	start_pctto_addhrS   s                r   r&   ri      s    ;#s##455v88,.ICHnB1HCSySCHqL0a(((--s3R012A1HC
%#*>>!#4 $ xxH$6!%!:!>"./B"CC

6*!\\1X5M!%h!7!>"./B"CC

6*

8,~~!Gc'..&9A&==	

33734Syll8JJJsOJJsO\\!

3BL&&(,BJJrN JJrNm CHnp >>JJsC//!3567wws|;Ji . %$'!Gc'...AA.E$E	

337#;<%'.~~a'8H1 %JJs7S'9:$%%s+   L AN "M66 NN NN )rb   rd   r   rf   re   rc   rT   rU   r$   r!   r   r]   r]   y   s     + + 	+
 + + 
+ ,C,C, ,. .HE#t), HsDy1A Hr!   r]   )rl   restringr   r   r   typingr   r   r   r<   r@   rangeBPCT_ALLOWED
GEN_DELIMSSUB_DELIMS_WITHOUT_QS
SUB_DELIMSRESERVED
UNRESERVEDr>   compilerB   ro   getincrementaldecoderrn   r   r]   )is   0r   <module>r      s     	 9 9 ( ("))'2 5:3Z@Z!Ac7""7+Z@
! "V+

"V#f,

,
, **(
)jj12++G4` `F\ \e As   C