
    tni                     N   d dl Z d dlZd dlmZmZmZ d dlmZmZ  ej	        d          Z
d  ed          D             ZdZdZed	z   Zeez   Zeez   d
z   Zeez   Z ej        d          Z ej        d          Z e j        d          Z G d d          Z G d d          ZdS )    N)ascii_lettersascii_lowercasedigits)Unionoverloadasciic                 @    h | ]}d |d                     d          S )%02Xr   )encode).0is     M/var/www/html/gpu-tools/venv/lib/python3.11/site-packages/yarl/_quoting_py.py	<setcomp>r      s.    @@@A""7++@@@       z:/?#[]@z!$'()*,+&=;z-._~s   [A-Z0-9][A-Z0-9]z[A-Fa-f0-9][A-Fa-f0-9]zutf-8c                       e Zd Zddddddedededed	d
f
dZeded	efd            Zedd            Zdeed
f         d	eed
f         fdZd
S )_Quoter FT)safe	protectedqsrequoter   r   r   r   returnNc                >    || _         || _        || _        || _        d S N)_safe
_protected_qs_requote)selfr   r   r   r   s        r   __init__z_Quoter.__init__   s$     
#r   valc                     d S r    r"   r$   s     r   __call__z_Quoter.__call__$       ),r   c                     d S r   r&   r'   s     r   r(   z_Quoter.__call__&       +.3r   c                 b   |d S t          |t                    st          d          |sdS |                    dd          }t	                      }t	                      }| j        }|t          z  }| j        s|dz  }|| j        z  }|                    d          }d}|t          |          k     r||         }|d	z  }|r|t          v r|d
z
  }|                    |           t          |          dk    r=|d	d          }	t                              |	          s/|                    d           |                                 |dz  }	 t!          t#          |d	d                              d          d                    }
n?# t&          $ r2 |                    d           |                                 |dz  }Y $w xY w|
| j        v r|                    |           n<|
|v r#|                    t)          |
                     n|                    |           |                                 nTt          |          dk    rA|t          |          k    r.|                    d           |                                 |d	z  }|t)          d          k    rZ| j        rS|                                 |                    |           |t          |          k    r|                    d           [| j        r7|t)          d          k    r$|                    t)          d                     ||v r|                    |           |                    d|d                    d                     |t          |          k     |                    d          }||k    r|S |S )NArgument should be strr   utf8ignore)errorsr   r   r             s   %25      baser
    +r   )
isinstancestr	TypeErrorr   	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(   z_Quoter.__call__(   s   ;4#s## 	64555 	2zz&z22kkkkzx 	FNDG$$CIIoocB1HC +)))bB

2s88q==abb'C"==-- !

6***		q !#&s3qrr7>>'+B+B'L'L'L#M#M% ! ! !

6***		q 	!  4?22

3!T))

3x==1111

3IIKKKK XX]]sc$ii'7'7JJv&&&IIKKK1HCs3xxDM		

2 #d))##JJv&&&x B#c((NN

3s88$$$U{{

2JJB,,W55666q CIIoot zz'""3;;Js   9F 8GGr$   Nr   N	__name__
__module____qualname__r;   boolr#   r   r(   r   r&   r   r   r   r      s                 	 
     
        ,C,C,,, X,... X.NE#t), NsDy1A N N N N N Nr   r   c                       e Zd Zddddddededededd	f
d
Zededefd            Zedd            Zdeed	f         deed	f         fdZd	S )	_Unquoterr   F)r/   unsafer   plusr/   r\   r   r]   r   Nc                    || _         || _        || _        || _        t	                      | _        t	          d          | _        d S )NT)r   )_ignore_unsafer    _plusr   _quoter
_qs_quoter)r"   r/   r\   r   r]   s        r   r#   z_Unquoter.__init__z   sA     
yy!T***r   r$   c                     d S r   r&   r'   s     r   r(   z_Unquoter.__call__   r)   r   c                     d S r   r&   r'   s     r   r(   z_Unquoter.__call__   r+   r   c                    |d S t          |t                    st          d          |sdS t                      }g }d}|t	          |          k     r#||         }|dz  }|dk    r|t	          |          dz
  k    r|||dz            }t
                              |          rt          t          |d          g          }|dz  }	 |	                    |          }n# t          $ r |d	z
  t	          |j                  d	z  z
  }	|                    ||	|d	z
                      |                                 	 |	                    |          }n2# t          $ r% |                    ||d	z
  |                    Y Y Bw xY wY nw xY w|sP| j        r@|d
v r<|                     |          }
|
t!          d          |                    |
           nc|| j        v s	|| j        v r<|                     |          }
|
t!          d          |                    |
           n|                    |           |j        rQ|dz
  t	          |j                  d	z  z
  }	|                    ||	|dz
                      |                                 |dk    rD| j        s| j        r	|| j        v r|                    d           n|                    d           || j        v rg|                    d           t+          t-          |                                                    dd          }|D ]}|                    |           |                    |           |t	          |          k     #|j        r3|                    |t	          |j                   d	z  d                     d                    |          }||k    r|S |S )Nr-   r   r   r1   r
   r4   r5   r6   r3   z+=&;zCannot quote Noner9   r8   )r:   r;   r<   utf8_decoderr?   _IS_HEX_STR	fullmatchbytesrG   rH   UnicodeDecodeErrorbufferrA   resetr    rc   RuntimeErrorr`   r_   rb   ra   hexrJ   upperjoin)r"   r$   decoderrL   rO   rP   rM   brR   	start_pctto_addhrS   s                r   r(   z_Unquoter.__call__   s   ;4#s## 	64555 	2..CHHnnSB1HCSyySCHHqL00#a-(((-- s3R000122A1HC
%#*>>!#4#4- % % %$'!Gc'..A.AA.E$E	

3y37':#;<<<%'.~~a'8'8HH1 % % %JJs37S='9:::$HH% %H% $ ! x -H$6$6!%!:!:!>"./B"C"CC

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

6****

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

3y3723444Syy $ $dl8J8JJJsOOOOJJsOOOT\!!

3BLL&&((, # #BJJrNNNNJJrNNNm CHHnnp > 	8JJsC///!3556777wws||3;;Js7   C! !AF=EF*F=FFFFrT   rU   r&   r   r   r[   r[   y   s         + + + + 	+
 + + 
+ + + + ,C,C,,, X,... X.HE#t), HsDy1A H H H H H Hr   r[   )codecsrestringr   r   r   typingr   r   r   r@   rangeBPCT_ALLOWED
GEN_DELIMSSUB_DELIMS_WITHOUT_QS
SUB_DELIMSRESERVED
UNRESERVEDr>   compilerB   rh   getincrementaldecoderrg   r   r[   r&   r   r   <module>r      sY    				 9 9 9 9 9 9 9 9 9 9 " " " " " " " ")?)'22 @@UU3ZZ@@@
! "V+

"V#f,

,
, "*(
)
)bj122+v+G44` ` ` ` ` ` ` `F\ \ \ \ \ \ \ \ \ \r   