
    Ng                     J   d dl Z d dlZd dlmZmZmZ d dl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)castasciic                 @    h | ]}d |d                     d          S )%02Xr   )encode).0is     L/var/www/html/ai-engine/env/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                   F    e Zd Zddddddedededed	d
f
dZded	e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                 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   __call__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__name__
__module____qualname__r2   boolr!   rK    r   r   r   r      s                 	 
     
       NC NC N N N N N Nr   r   c            	       @    e Zd Zdddddedededdfd	Zd
edefdZdS )	_Unquoterr   F)r&   unsafer   r&   rT   r   r   Nc                    || _         || _        || _        t                      | _        t          d          | _        d S )NT)r   )_ignore_unsafer   r   _quoter
_qs_quoter)r    r&   rT   r   s       r   r!   z_Unquoter.__init__v   s8    yy!T***r   r"   c                    |d S t          |t                    st          d          |sdS t          t          j        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    r=| j        r	|| j        v r|                    d           n|                    d           || j        v rg|                    d           t/          t1          |                                                    dd          }|D ]}|                    |           |                    |           |t          |          k     |j        r3|                    |t          |j                   d	z  d                     d                    |          }||k    r|S |S )Nr$   r   r   r(   r	   r+   r,   r-   r*   z+=&;zCannot quote Noner0   r/   )r1   r2   r3   r   codecsBufferedIncrementalDecoderutf8_decoderr6   _IS_HEX_STR	fullmatchbytesr>   r?   UnicodeDecodeErrorbufferr8   resetr   rY   RuntimeErrorrW   rV   rX   hexrA   upperjoin)r    r"   decoderrC   rF   rG   rD   brI   	start_pctto_addhrJ   s                r   rK   z_Unquoter.__call__}   s    ;4#s## 	64555 	2v8,..II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x $2#5#5JJsOOOOJJsOOOT\!!

3BLL&&((, # #BJJrNNNNJJrNNNm CHHnnp > 	8JJsC///!3556777wws||3;;Js7   #C9 9AF E+*F +*FF FF F rL   rQ   r   r   rS   rS   u   s        (*" + + +# +C +$ +SW + + + +HC HC H H H H H Hr   rS   )r[   restringr   r   r   typingr   r   r7   rangeBPCT_ALLOWED
GEN_DELIMSSUB_DELIMS_WITHOUT_QS
SUB_DELIMSRESERVED
UNRESERVEDr5   compiler9   r^   getincrementaldecoderr]   r   rS   rQ   r   r   <module>ry      sS    				 9 9 9 9 9 9 9 9 9 9      )?)'22 @@UU3ZZ@@@
! "V+

"V#f,

,
, "*(
)
)bj122+v+G44\ \ \ \ \ \ \ \~P P P P P P P P P Pr   