ó
    Þ jÓ  ã                  óØ   • S SK Jr  S SKrS SKrS SKrS SKJrJrJrJ	r	  S SK
Jr  S SKJr  S SKJrJr  S SKJr  \(       a   S SKJrJr  S S	KJr  S S
KJr  S SKJr  S SKJr   " S S\5      rg)é    )ÚannotationsN)ÚTYPE_CHECKINGÚAnyÚ
CollectionÚMapping)ÚHTTPAdapter)Ú	DictCache)ÚPERMANENT_REDIRECT_STATUSESÚCacheController)ÚCallbackFileWrapper)ÚPreparedRequestÚResponse)ÚHTTPResponse)Ú	BaseCache)ÚBaseHeuristic)Ú
Serializerc                  óÞ   ^ • \ rS rSr1 Skr      S                 S	U 4S jjjr      S
               SU 4S jjjr  S         SU 4S jjjrSU 4S jjrSr	U =r
$ )ÚCacheControlAdapteré   >   ÚPUTÚPATCHÚDELETEc                óÄ   >• [         T
U ]  " U0 UD6  Uc
  [        5       OUU l        XPl        U=(       d    SU l        U=(       d    [        n	U	" U R                  X$S9U l        g )N)ÚGET)Úcache_etagsÚ
serializer)ÚsuperÚ__init__r	   ÚcacheÚ	heuristicÚcacheable_methodsr   Ú
controller)Úselfr   r   Úcontroller_classr   r    r!   ÚargsÚkwÚcontroller_factoryÚ	__class__s             €ÚZ/var/www/html/gaurav/venv/lib/python3.13/site-packages/pip/_vendor/cachecontrol/adapter.pyr   ÚCacheControlAdapter.__init__   sX   ø€ ô 	‰Ò˜$Ð% "Ò%Ø$)¡M”Y”[°uˆŒ
Ø"ŒØ!2×!>°hˆÔà-×@´ÐÙ,Ø�J‰J Kñ
ˆ�ó    c                óz  >• U=(       d    U R                   nUR                  U;   ag   U R                  R                  U5      n	U	(       a  U R                  XSS9$ UR                  R                  U R                  R                  U5      5        [        TU ]-  XX4XV5      n
U
$ ! [        R
                   a    Sn	 Nvf = f)z|
Send a request. Use the request information to see if it
exists in the cache and cache the response if we need to and can.
NT)Ú
from_cache)r!   Úmethodr"   Úcached_requestÚzlibÚerrorÚbuild_responseÚheadersÚupdateÚconditional_headersr   Úsend)r#   ÚrequestÚstreamÚtimeoutÚverifyÚcertÚproxiesr!   Ú	cacheableÚcached_responseÚrespr(   s              €r)   r6   ÚCacheControlAdapter.send2   sª   ø€ ð &×?¨×)?Ñ)?ˆ	Ø�>‰>˜YÓ&ð'Ø"&§/¡/×"@Ñ"@ÀÓ"I�ö Ø×*Ñ*¨7ÐPTÐ*ÐUÐUð �O‰O×"Ñ" 4§?¡?×#FÑ#FÀwÓ#OÔPä‰w‰|˜G¨W¸dÓLˆàˆøô —:‘:ó 'Ø"&’ð'ús   ¨B! Â!B:Â9B:c                óü  >^
• U=(       d    U R                   nU(       GdM  UR                  U;   Ga<  U R                  (       a  U R                  R                  U5      nUR                  S:X  aC  U R
                  R                  X5      nXbLa  SnUR                  SS9  UR                  5         UnO½[        UR                  5      [        ;   a  U R
                  R                  X5        O„[        UR                  [        R                  " U R
                  R                  X5      5      Ul        UR                   (       a/  UR"                  m
SU
4S jjn[$        R&                  " Xr5      Ul        [(        TU ]U  X5      nUR                  U R,                  ;   a`  UR.                  (       aO  UR0                  c   eU R
                  R3                  UR0                  5      n	U R4                  R7                  U	5        X8l        U$ )z…
Build a response by making a request or using the cache.

This will end up calling send and returning a potentially
cached response
i0  TF)Údecode_contentc                ój   >• T" 5         U R                   S:X  a  U R                  R                  5         g g )Nr   )Ú
chunk_leftÚ_fpÚ_close)r#   Úsuper_update_chunk_lengths    €r)   Ú_update_chunk_lengthÚ@CacheControlAdapter.build_response.<locals>._update_chunk_length‰   s(   ø€ Ù1Ô3ØŸ?™?¨aÓ/Ø ŸH™HŸO™OÕ-ð 0r+   )r#   r   ÚreturnÚNone)r!   r.   r    ÚapplyÚstatusr"   Úupdate_cached_responseÚreadÚrelease_connÚintr
   Úcache_responser   rE   Ú	functoolsÚpartialÚchunkedrH   ÚtypesÚ
MethodTyper   r2   Úinvalidating_methodsÚokÚurlÚ	cache_urlr   Údeleter-   )r#   r7   Úresponser-   r!   r=   r>   rH   r?   r[   rG   r(   s             @€r)   r2   Ú"CacheControlAdapter.build_responseP   s’  ù€ ð &×?¨×)?Ñ)?ˆ	ß˜gŸn™n°	Ô9ð �~�~ØŸ>™>×/Ñ/°Ó9�ð �‰ #Ó%ð
 #'§/¡/×"HÑ"HØó#�ð #Ò2Ø!%�Jð —‘¨U�Ñ3Ø×%Ñ%Ô'à*‘ô �X—_‘_Ó%Ô)DÓDØ—‘×.Ñ.¨wÕAô  3Ø—L‘LÜ×%Ò%ØŸ™×6Ñ6¸óó �”ð ×#×#Ø08×0MÑ0MÐ-÷.ô
 5:×4DÒ4DØ,ó5�HÔ1ô ™Ñ/°ÓBˆð �>‰>˜T×6Ñ6Ó6¸4¿7¿7Ø—;‘;Ñ*Ð*Ð*ØŸ™×1Ñ1°'·+±+Ó>ˆIØ�J‰J×Ñ˜iÔ(ð %Œàˆr+   c                óV   >• U R                   R                  5         [        TU ]  5         g )N)r   Úcloser   )r#   r(   s    €r)   r`   ÚCacheControlAdapter.closeŸ   s   ø€ Ø�
‰
×ÑÔÜ‰‰�r+   )r   r!   r"   r    )NTNNNN)r   zBaseCache | Noner   Úboolr$   ztype[CacheController] | Noner   zSerializer | Noner    zBaseHeuristic | Noner!   úCollection[str] | Noner%   r   r&   r   rJ   rK   )FNTNNN)r7   r   r8   rb   r9   z7None | float | tuple[float, float] | tuple[float, None]r:   z
bool | strr;   z4None | bytes | str | tuple[bytes | str, bytes | str]r<   zMapping[str, str] | Noner!   rc   rJ   r   )FN)
r7   r   r]   r   r-   rb   r!   rc   rJ   r   )rJ   rK   )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rX   r   r6   r2   r`   Ú__static_attributes__Ú__classcell__)r(   s   @r)   r   r      sB  ø† Ú5Ðð #'Ø Ø9=Ø(,Ø*.Ø48ð
àð
ð ð
ð 7ð	
ð
 &ð
ð (ð
ð 2ð
ð ð
ð ð
ð 
÷
ð 
ð0 ØKOØ!ØGKØ,0Ø48ðà ðð ðð Ið	ð
 ðð Dðð *ðð 2ðð 
÷ð ðD !Ø48ðMà ðMð ðMð ð	Mð
 2ðMð 
÷Mð M÷^õ r+   r   )Ú
__future__r   rS   rV   r0   Útypingr   r   r   r   Úpip._vendor.requests.adaptersr   Úpip._vendor.cachecontrol.cacher	   Ú#pip._vendor.cachecontrol.controllerr
   r   Ú$pip._vendor.cachecontrol.filewrapperr   Úpip._vendor.requestsr   r   Úpip._vendor.urllib3r   r   Ú#pip._vendor.cachecontrol.heuristicsr   Ú"pip._vendor.cachecontrol.serializer   r   © r+   r)   Ú<module>ru      sE   ðõ #ã Û Û ß :Ó :å 5å 4ß \Ý Dæß>Ý0å8ÝAÝ=ôG˜+õ Gr+   