+
    PV-js.  ã                  óT  € ^ RI Ht ^ RIt^ RIt^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^RIHt ^RIHtHtHt ^RIHtHtHt ]P*                  '       d   ^ RIHt . ROt ! R R	4      t ! R R]4      t ! R R
]4      t ! R R]4      t ! R R]4      t ! R R]P:                  4      tR# )é    )ÚannotationsN)Ú	b64encode)Úparse_http_list)ÚProtocolError)ÚCookiesÚRequestÚResponse)Úto_bytesÚto_strÚunquote)Ú_HashÚAuthÚ	BasicAuthÚ
DigestAuthÚ	NetRCAuthc                  óF   € ] tR t^tRtRtRtR R ltR R ltR R lt	R	t
R
# )r   aÔ  
Base class for all authentication schemes.

To implement a custom authentication scheme, subclass `Auth` and override
the `.auth_flow()` method.

If the authentication scheme does I/O such as disk access or network calls, or uses
synchronization primitives such as locks, you should override `.sync_auth_flow()`
and/or `.async_auth_flow()` instead of `.auth_flow()` to provide specialized
implementations that will be used by `Client` and `AsyncClient` respectively.
Fc               ó    € V ^8„  d   QhRRRR/# ©é   Úrequestr   Úreturnz)typing.Generator[Request, Response, None]© )Úformats   "Ú\/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/httpx/_auth.pyÚ__annotate__ÚAuth.__annotate__&   s   € ÷ ñ  ð Ð-Vñ ó    c              #  ó   "  € Vx € R# 5i)a—  
Execute the authentication flow.

To dispatch a request, `yield` it:

```
yield request
```

The client will `.send()` the response back into the flow generator. You can
access it like so:

```
response = yield request
```

A `return` (or reaching the end of the generator) will result in the
client returning the last response obtained from the server.

You can dispatch as many requests as is necessary.
Nr   ©Úselfr   s   &&r   Ú	auth_flowÚAuth.auth_flow&   s   é € ð, Œùs   ‚	c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   r   >   s   € ÷ ñ Øðà	2ñr   c              #  ó   "  € V P                   '       d   VP                  4        V P                  V4      p\        V4      p Vx €pV P                  '       d   VP                  4         VP                  V4      pK;    \         d     R# i ; i5i)zÈ
Execute the authentication flow synchronously.

By default, this defers to `.auth_flow()`. You should override this method
when the authentication scheme does I/O and/or uses concurrency primitives.
N)Úrequires_request_bodyÚreadr!   ÚnextÚrequires_response_bodyÚsendÚStopIteration©r    r   ÚflowÚresponses   &&  r   Úsync_auth_flowÚAuth.sync_auth_flow>   sv   é € ð ×%×%Ð%Ø�L‰LŒNà�~‰~˜gÓ&ˆÜ�t“*ˆàØ$‘}ˆHØ×*×*Ð*Ø—‘”ðØŸ)™) HÓ-’øÜ ô Úðüs0   ‚ABÁBÁ)A< Á:BÁ<BÂBÂ
BÂBc               ó    € V ^8„  d   QhRRRR/# )r   r   r   r   z(typing.AsyncGenerator[Request, Response]r   )r   s   "r   r   r   W   s   € ÷ ñ Øðà	1ñr   c               óJ  "  € V P                   '       d   VP                  4       G Rj  x€L
  V P                  V4      p\        V4      p V5x €pV P                  '       d   VP                  4       G Rj  x€L
   VP                  V4      pKD   Ld L  \         d     R# i ; i5i)zÉ
Execute the authentication flow asynchronously.

By default, this defers to `.auth_flow()`. You should override this method
when the authentication scheme does I/O and/or uses concurrency primitives.
N)r%   Úareadr!   r'   r(   r)   r*   r+   s   &&  r   Úasync_auth_flowÚAuth.async_auth_flowW   s�   é € ð ×%×%Ð%Ø—-‘-“/×!Ð!à�~‰~˜gÓ&ˆÜ�t“*ˆàØ$’}ˆHØ×*×*Ð*Ø—n‘nÓ&×&Ð&ðØŸ)™) HÓ-’ñ "ñ 'øô !ô ÚðüsK   ‚&B#¨B©7B#Á!B#Á4BÁ5B#Á:B ÂB#ÂB#ÂB ÂB#ÂB Â B#r   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r%   r(   r!   r.   r3   Ú__static_attributes__r   r   r   r   r      s)   † ñ
ð "ÐØ"Ðõõ0÷2ñ r   c                  ó2   € ] tR t^qtRtR R ltR R ltRtR# )ÚFunctionAuthz…
Allows the 'auth' argument to be passed as a simple callable function,
that takes the request, and returns a new, modified request.
c               ó    € V ^8„  d   QhRRRR/# )r   Úfuncz#typing.Callable[[Request], Request]r   ÚNoner   )r   s   "r   r   ÚFunctionAuth.__annotate__w   s   € ÷ ñ Ð@ð ÀTñ r   c                	ó   € Wn         R # ©N©Ú_func)r    r>   s   &&r   Ú__init__ÚFunctionAuth.__init__w   s   € ØŽ
r   c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   r@   z   s   € ÷ "ñ " ð "Ð-Vñ "r   c              #  	ó4   "  € V P                  V4      x € R # 5irB   rC   r   s   &&r   r!   ÚFunctionAuth.auth_flowz   s   é € Ø�j‰j˜Ó!Ô!ùs   ‚rC   N)r5   r6   r7   r8   r9   rE   r!   r:   r   r   r   r<   r<   q   s   † ñõ
÷"ñ "r   r<   c                  ó>   € ] tR t^~tRtR R ltR R ltR R ltRtR	# )
r   zm
Allows the 'auth' argument to be passed as a (username, password) pair,
and uses HTTP Basic authentication.
c               ó$   € V ^8„  d   QhRRRRRR/# ©r   Úusernameústr | bytesÚpasswordr   r?   r   )r   s   "r   r   ÚBasicAuth.__annotate__„   s&   € ÷ Hñ H ð H¸ð HÈñ Hr   c                	ó2   € V P                  W4      V n        R # rB   )Ú_build_auth_headerÚ_auth_header©r    rM   rO   s   &&&r   rE   ÚBasicAuth.__init__„   s   € Ø ×3Ñ3°HÓGˆÖr   c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   rP   ‡   s   € ÷ ñ  ð Ð-Vñ r   c              #  	óH   "  € V P                   VP                  R &   Vx € R# 5i)ÚAuthorizationN)rS   Úheadersr   s   &&r   r!   ÚBasicAuth.auth_flow‡   s   é € Ø+/×+<Ñ+<ˆ�‰˜Ñ(ØŒùs   ‚ "c               ó$   € V ^8„  d   QhRRRRRR/# ©r   rM   rN   rO   r   Ústrr   )r   s   "r   r   rP   ‹   ó"   € ÷  ñ  ¨;ð  À+ð  ÐRUñ  r   c                	óˆ   € R P                  \        V4      \        V4      34      p\        V4      P                  4       pRV 2# ©ó   :zBasic ©Újoinr
   r   Údecode©r    rM   rO   ÚuserpassÚtokens   &&&  r   rR   ÚBasicAuth._build_auth_header‹   ó?   € Ø—9‘9œh xÓ0´(¸8Ó2DÐEÓFˆÜ˜(Ó#×*Ñ*Ó,ˆØ˜�wÐÐr   )rS   N©	r5   r6   r7   r8   r9   rE   r!   rR   r:   r   r   r   r   r   ~   s   † ñõ
Hõ÷ ñ  r   c                  óB   € ] tR t^‘tRtR
R R lltR R ltR R ltR	tR# )r   zL
Use a 'netrc' file to lookup basic auth credentials based on the url host.
Nc               ó    € V ^8„  d   QhRRRR/# )r   Úfilez
str | Noner   r?   r   )r   s   "r   r   ÚNetRCAuth.__annotate__–   s   € ÷ -ñ -˜Zð -°4ñ -r   c                	ó:   € ^ RI pVP                  V4      V n        R# )r   N)ÚnetrcÚ_netrc_info)r    rm   rp   s   && r   rE   ÚNetRCAuth.__init__–   s   € ó 	à Ÿ;™; tÓ,ˆÖr   c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   rn   �   s   € ÷ 
ñ 
 ð 
Ð-Vñ 
r   c              #  	ó  "  € V P                   P                  VP                  P                  4      pVe   V^,          '       g   Vx € R # V P	                  V^ ,          V^,          R7      VP
                  R&   Vx € R # 5i)N)rM   rO   rX   )rq   ÚauthenticatorsÚurlÚhostrR   rY   )r    r   Ú	auth_infos   && r   r!   ÚNetRCAuth.auth_flow�   sm   é € Ø×$Ñ$×3Ñ3°G·K±K×4DÑ4DÓEˆ	ØÒ I¨a§L¤LàŒMð 04×/FÑ/FØ" 1�°	¸!µð 0Gó 0ˆG�O‰O˜OÑ,ð ŒMùs   ‚AA?Á:A?c               ó$   € V ^8„  d   QhRRRRRR/# r\   r   )r   s   "r   r   rn   ©   r^   r   c                	óˆ   € R P                  \        V4      \        V4      34      p\        V4      P                  4       pRV 2# r`   rb   re   s   &&&  r   rR   ÚNetRCAuth._build_auth_header©   ri   r   )rq   rB   rj   r   r   r   r   r   ‘   s   † ñ÷-õ
÷ ñ  r   c                  ó:  € ] tR t^¯t$ R]P
                  R]P
                  R]P                  R]P                  R]P                  R]P                  R]P                  R]P                  /t	R	]
R
&   R R ltR R ltR R ltR R ltR R ltR R ltR R ltRtR# )r   ÚMD5zMD5-SESSÚSHAzSHA-SESSzSHA-256zSHA-256-SESSzSHA-512zSHA-512-SESSz*dict[str, typing.Callable[[bytes], _Hash]]Ú_ALGORITHM_TO_HASH_FUNCTIONc               ó$   € V ^8„  d   QhRRRRRR/# rL   r   )r   s   "r   r   ÚDigestAuth.__annotate__»   s!   € ÷ ñ  ð ¸ð Èñ r   c                	ób   € \        V4      V n        \        V4      V n        R V n        ^V n        R # rB   )r
   Ú	_usernameÚ	_passwordÚ_last_challengeÚ_nonce_countrT   s   &&&r   rE   ÚDigestAuth.__init__»   s*   € Ü! (Ó+ˆŒÜ! (Ó+ˆŒØ<@ˆÔØˆÖr   c               ó    € V ^8„  d   QhRRRR/# r   r   )r   s   "r   r   r‚   Á   s   € ÷ ñ  ð Ð-Vñ r   c              #  	ój  "  € V P                   '       d)   V P                  WP                   4      VP                  R &   Vx €pVP                  R8w  g   RVP                  9  d   R# VP                  P	                  R4       F*  pVP                  4       P                  R4      '       g   K*   M	  R# V P                  WV4      V n         ^V n        V P                  WP                   4      VP                  R &   VP                  '       d&   \        VP                  4      P                  VR7       Vx € R# 5i)rX   i‘  zwww-authenticateNzdigest ©r   )r†   rR   rY   Ústatus_codeÚget_listÚlowerÚ
startswithÚ_parse_challenger‡   Úcookiesr   Úset_cookie_header)r    r   r-   Úauth_headers   &&  r   r!   ÚDigestAuth.auth_flowÁ   s
  é € Ø××ÐØ/3×/FÑ/FØ×-Ñ-ó0ˆG�O‰O˜OÑ,ð !‘=ˆà×Ñ 3Ô&Ð*<ÀH×DTÑDTÔ*Tñ à#×+Ñ+×4Ñ4Ð5GÖHˆKØ× Ñ Ó"×-Ñ-¨i×8Ô8Ùñ Iñ à#×4Ñ4°WÈÓTˆÔØˆÔà+/×+BÑ+BØ×)Ñ)ó,
ˆ�‰˜Ñ(ð ××ÐÜ�H×$Ñ$Ó%×7Ñ7ÀÐ7ÔHØŒùs   ‚B#D3Â*B	D3c               ó(   € V ^8„  d   QhRRRRRRRR/# )	r   r   r   r-   r	   r“   r]   r   Ú_DigestAuthChallenger   )r   s   "r   r   r‚   à   s2   € ÷ Cñ CØðCØ*2ðCØADðCà	ñCr   c                óB  € VP                  R4      w  rEpVP                  4       R8X  g   Q h/ p\        V4       F2  pVP                  4       P	                  R^4      w  rš\        V
4      Wy&   K4  	   VR,          P                  4       pVR,          P                  4       pVP                  RR4      pRV9   d   VR,          P                  4       MR	pR
V9   d   VR
,          P                  4       MR	p\        W¼WÞVR7      #   \         d   pRp\        TTR7      ThR	p?ii ; i)z¡
Returns a challenge from a Digest WWW-Authenticate header.
These take the form of:
`Digest realm="realm@host.com",qop="auth,auth-int",nonce="abc",opaque="xyz"`
Ú ÚdigestÚ=ÚrealmÚnonceÚ	algorithmr~   ÚopaqueNÚqop)r›   rœ   r�   rž   rŸ   z(Malformed Digest WWW-Authenticate headerr‹   )Ú	partitionrŽ   r   ÚstripÚsplitr   ÚencodeÚgetr–   ÚKeyErrorr   )r    r   r-   r“   ÚschemeÚ_ÚfieldsÚheader_dictÚfieldÚkeyÚvaluer›   rœ   r�   rž   rŸ   ÚexcÚmessages   &&&&              r   r�   ÚDigestAuth._parse_challengeà   s  € ð (×1Ñ1°#Ó6Ñˆ�6ð �|‰|‹~ Ô)Ð)Ð)à&(ˆÜ$ VÖ,ˆEØŸ™›×,Ñ,¨S°!Ó4‰JˆCÜ& u›~ˆKÓñ -ð	CØ Õ(×/Ñ/Ó1ˆEØ Õ(×/Ñ/Ó1ˆEØ#Ÿ™¨°UÓ;ˆIØ7?À;Ô7N�[ Õ*×1Ñ1Ô3ÐTXˆFØ16¸+Ô1E�+˜eÕ$×+Ñ+Ô-È4ˆCÜ'Ø°IÐRUôð øô ô 	CØ@ˆGÜ °Ô9¸sÐBûð	Cús   Á0BC> Ã>DÄ	DÄDc               ó$   € V ^8„  d   QhRRRRRR/# )r   r   r   Ú	challenger–   r   r]   r   )r   s   "r   r   r‚   ÿ   s$   € ÷ .?ñ .?Øð.?Ø+?ð.?à	ñ.?r   c                	ó†  a€ V P                   VP                  P                  4       ,          oR  V3R llpRP                  V P                  VP
                  V P                  34      pVP                  P                  pRP                  VP                  P                  4       V34      pV! V4      pRV P                  ,          pV P                  V P                  VP                  4      p	V ;P                  ^,          un        V! V4      p
VP                  P                  4       P                  R4      '       d$   V! RP                  W¢P                  V	34      4      p
V P!                  VP"                  VR7      pVf   W¢P                  V.pMW¢P                  W‰W·.pRV P                  RVP
                  RVP                  R	VR
V! RP                  V4      4      RVP                  P                  4       /pVP$                  '       d   VP$                  VR&   V'       d   RVR&   W�R&   W�R&   RV P'                  V4      ,           # )c               ó    € V ^8„  d   QhRRRR/# )r   ÚdataÚbytesr   r   )r   s   "r   r   Ú3DigestAuth._build_auth_header.<locals>.__annotate__  s   € ÷ 	8ñ 	8˜ð 	8 5ñ 	8r   c                óL   <€ S! V 4      P                  4       P                  4       # rB   )Ú	hexdigestr£   )r´   Ú	hash_funcs   &€r   r™   Ú-DigestAuth._build_auth_header.<locals>.digest  s   ø€ Ù˜T“?×,Ñ,Ó.×5Ñ5Ó7Ð7r   ra   s   %08xz-sessr‹   rM   r›   rœ   Úurir-   r�   rž   ó   authrŸ   ÚncÚcnoncezDigest )r€   r�   Úupperrc   r„   r›   r…   rv   Úraw_pathÚmethodr£   r‡   Ú_get_client_noncerœ   rŽ   ÚendswithÚ_resolve_qoprŸ   rž   Ú_get_header_value)r    r   r±   r™   ÚA1ÚpathÚA2ÚHA2Únc_valuer¾   ÚHA1rŸ   Údigest_dataÚformat_argsr¹   s   &&&           @r   rR   ÚDigestAuth._build_auth_headerÿ   sê  ø€ ð ×4Ñ4°Y×5HÑ5H×5NÑ5NÓ5PÕQˆ	÷	8ð 	8ð �Y‰Y˜Ÿ™¨	¯©¸¿¹ÐHÓIˆà�{‰{×#Ñ#ˆØ�Y‰Y˜Ÿ™×-Ñ-Ó/°Ð6Ó7ˆá�R‹jˆà˜T×.Ñ.Õ.ˆØ×'Ñ'¨×(9Ñ(9¸9¿?¹?ÓKˆØ×Ò˜QÕÕá�R‹jˆØ×Ñ×$Ñ$Ó&×/Ñ/°×8Ò8Ù˜Ÿ™ C¯©¸&Ð#AÓBÓCˆCà×Ñ 	§¡°wÐÓ?ˆØŠ;à§¡°Ð5‰Kð §¡°À3ÐLˆKð ˜Ÿ™Ø�Y—_‘_Ø�Y—_‘_Ø�4Ø™˜tŸy™y¨Ó5Ó6Ø˜×,Ñ,×3Ñ3Ó5ð
ˆð ××ÐØ$-×$4Ñ$4ˆK˜Ñ!ßØ!(ˆK˜ÑØ (˜ÑØ$*˜Ñ!à˜4×1Ñ1°+Ó>Õ>Ð>r   c               ó$   € V ^8„  d   QhRRRRRR/# )r   Únonce_countÚintrœ   rµ   r   r   )r   s   "r   r   r‚   /  s!   € ÷ 9ñ 9¨Sð 9¸ð 9À5ñ 9r   c                	óD  € \        V4      P                  4       pW2,          pV\        P                  ! 4       P                  4       ,          pV\        P
                  ! ^4      ,          p\        P                  ! V4      P                  4       R,          P                  4       # )é   :Né   N)	r]   r£   ÚtimeÚctimeÚosÚurandomÚhashlibÚsha1r¸   )r    rÐ   rœ   Úss   &&& r   rÂ   ÚDigestAuth._get_client_nonce/  sl   € Ü�Ó×#Ñ#Ó%ˆØ	�
ˆØ	ŒT�ZŠZ‹\× Ñ Ó"Õ"ˆØ	ŒR�ZŠZ˜‹]Õˆä�|Š|˜A‹×(Ñ(Ó*¨3Õ/×6Ñ6Ó8Ð8r   c               ó    € V ^8„  d   QhRRRR/# )r   Úheader_fieldszdict[str, bytes]r   r]   r   )r   s   "r   r   r‚   7  s   € ÷ ñ Ð/?ð ÀCñ r   c                	óÖ   € RpRpRpRp\        VP                  4       4       FC  w  pw  rxV^ 8”  d
   VR,          pWr9  d   TMTp	WYP                  V\        V4      4      ,          pKE  	  V# )r�   z{}="{}"z{}={}Ú z, )r�   rŸ   r½   )Ú	enumerateÚitemsr   r   )
r    rÞ   ÚNON_QUOTED_FIELDSÚQUOTED_TEMPLATEÚNON_QUOTED_TEMPLATEÚheader_valueÚirª   r¬   Útemplates
   &&        r   rÅ   ÚDigestAuth._get_header_value7  s   € Ø6ÐØ#ˆØ%ÐàˆÜ!*¨=×+>Ñ+>Ó+@Ö!AÑˆA‰~�Ø�1ŒuØ Õ$�ð Ô1ñ  à(ð ð
 ŸO™O¨E´6¸%³=ÓAÕAŠLñ "Bð Ðr   c               ó$   € V ^8„  d   QhRRRRRR/# )r   rŸ   úbytes | Noner   r   r   r   )r   s   "r   r   r‚   I  s!   € ÷ 6ñ 6 ð 6°wð 6À<ñ 6r   c                	óš   € Vf   R # \         P                  ! RV4      pRV9   d   R# VR.8X  d   \        R4      hRV: R2p\        WBR7      h)Ns   , ?r¼   s   auth-intz.Digest auth-int support is not yet implementedzUnexpected qop value "z" in digest authr‹   )Úrer¢   ÚNotImplementedErrorr   )r    rŸ   r   Úqopsr®   s   &&&  r   rÄ   ÚDigestAuth._resolve_qopI  sT   € ØŠ;ÙÜ�xŠx˜ Ó$ˆØ�dŒ?Ùà�K�=Ô Ü%Ð&VÓWÐWà*¨3©'Ð1AÐBˆÜ˜GÔ5Ð5r   )r†   r‡   r…   r„   N)r5   r6   r7   r8   rÙ   Úmd5rÚ   Úsha256Úsha512r€   Ú__annotations__rE   r!   r�   rR   rÂ   rÅ   rÄ   r:   r   r   r   r   r   ¯   s…   ‡ àˆw�{‰{Ø�G—K‘KØˆw�|‰|Ø�G—L‘LØ�7—>‘>Ø˜Ÿ™Ø�7—>‘>Ø˜Ÿ™ð	OÐÐ!Kó 	õõõ>Cõ>.?õ`9õ÷$6ñ 6r   c                  óJ   € ] tR tRt$ R]R&   R]R&   R]R&   R]R&   R]R	&   R
tR# )r–   iW  rµ   r›   rœ   r]   r�   rë   rž   rŸ   r   N)r5   r6   r7   r8   rô   r:   r   r   r   r–   r–   W  s   ‡ ØƒLØƒLØƒNØÓØ	×r   r–   )r   r   r   r   )Ú
__future__r   rÙ   r×   rí   rÕ   ÚtypingÚbase64r   Úurllib.requestr   Ú_exceptionsr   Ú_modelsr   r   r	   Ú_utilsr
   r   r   ÚTYPE_CHECKINGr   Ú__all__r   r<   r   r   r   Ú
NamedTupler–   r   r   r   Ú<module>r      s”   ðÝ "ã Û 	Û 	Û Û Ý Ý *å &ß /Ñ /ß -Ñ -à	××ÐÝò ;€÷Xñ Xôv
"�4ô 
"ô �ô  ô& �ô  ô<e6�ô e6ôP˜6×,Ñ,ö r   