
    q"h+                        S SK Jr  S SKrS SKJrJrJrJrJr  S SK	J
r
  S SKJr  S SKJr  \(       a  S SKJr   " S S	5      rg)
    )annotationsN)IOTYPE_CHECKINGAnyMappingcast)msgpack)CaseInsensitiveDict)HTTPResponse)PreparedRequestc                      \ rS rSrSr S
       SS jjrSS jr S
       SS jjr S
       SS jjr S
       SS jjr	S	r
g)
Serializer   4Nc           
        [        UR                  5      nUc:  UR                  SS9n[        R                  " U5      Ul        [        U5      Ul        SUUR                  R                  5        VVs0 s H  u  pV[        U5      [        U5      _M     snnUR                  UR                  [        UR                  5      UR                  S.0n0 US'   SU;   ag  US   R                  S5      nU HM  n	[        U	5      R                  5       n	UR                  R!                  U	S 5      n
U
b  [        U
5      n
XS   U	'   MO     SR#                  SU R$                   3R'                  5       U R)                  U5      /5      $ s  snnf )	NF)decode_contentresponse)bodyheadersstatusversionreasonr   vary,   ,cc=)r
   r   readioBytesIO_fplenlength_remainingitemsstrr   r   r   r   splitstripgetjoinserde_versionencode	serialize)selfrequestr   r   response_headerskvdatavaried_headersheaderheader_values              T/var/www/html/env/lib/python3.13/site-packages/pip/_vendor/cachecontrol/serialize.pydumpsSerializer.dumps   sk    6I6
 < ===6D::d+HL(+D	H% 7?7G7G7M7M7OP7OtqCFCFN7OP"//#++hoo."*"9"9	
 V%%-f5;;C@N(V**,&2264@+#&|#4L'3VV$ ) yyC 2 234;;=t~~d?STUU' Qs   2!E>
c                H    [        [        [        R                  " USS95      $ )NT)use_bin_type)r   bytesr	   r6   )r,   r1   s     r5   r+   Serializer.serialize>   s    E7==DABB    c                    U(       d  g UR                  SU R                   S3R                  5       5      (       d  g USS  nU R                  XU5      $ )Nr   r      )
startswithr)   r*   	_loads_v4)r,   r-   r1   	body_files       r5   loadsSerializer.loadsA   sS      T%7%7$8:AACDDABx~~gY77r<   c                Z   SUR                  S0 5      ;   a  gUR                  S0 5      R                  5        H'  u  pEUR                  R                  US5      U:w  d  M'    g   US   R                  S5      n[	        US   S   S9nUR                  SS	5      S
:X  a  UR                  S5        XrS   S'    Uc  [
        R                  " U5      nOUn US   R                  SS5        [        SUSS.US   D6$ ! [         a(    [
        R                  " UR                  S5      5      n NWf = f)zPVerify our vary headers match and construct a real urllib3
HTTPResponse object.
*r   Nr   r   r   )r1   ztransfer-encoding chunkedutf8strictF)r   preload_content )
r'   r#   r   popr
   r   r   	TypeErrorr*   r   )	r,   r-   cachedrA   r3   valuebody_rawr   r   s	            r5   prepare_responseSerializer.prepare_responseS   s/    &**VR(( $ZZ399;MF""640E9 < *%))&1,?
#I.-
 ;;*B/9<KK+,(/z9%	7 zz(+  	zx.SuSz@RSS  	7 ::hoof56D	7s   5C8 C8 8/D*)D*c                r     [         R                  " USS9nU R                  XU5      $ ! [         a     g f = f)NF)raw)r	   rB   
ValueErrorrQ   )r,   r-   r1   rA   rN   s        r5   r@   Serializer._loads_v4   s@    	]]4U3F $$Wi@@  		s   ) 
66rK   )N)r-   r   r   r   r   zbytes | Nonereturnr:   )r1   zdict[str, Any]rW   r:   )r-   r   r1   r:   rA   IO[bytes] | NonerW   HTTPResponse | None)r-   r   rN   zMapping[str, Any]rA   rX   rW   rY   )__name__
__module____qualname____firstlineno__r)   r6   r+   rB   rQ   r@   __static_attributes__rK   r<   r5   r   r      s    M "	(V (V (V 	(V
 
(VTC '+	8 8 8 $	8
 
8, '+	2T 2T "2T $	2T
 
2Tp '+	A A A $	A
 
A Ar<   r   )
__future__r   r   typingr   r   r   r   r   pip._vendorr	   pip._vendor.requests.structuresr
   pip._vendor.urllib3r   pip._vendor.requestsr   r   rK   r<   r5   <module>re      s0    # 	 8 8  ? ,4AA AAr<   