Ë
    RPf¢ ã                  óf  — d dl mZ d dlZd dlZd dlZd dlZd dlZd dlmZm	Z	 d dl
mZ ddlmZ ddlmZmZmZ ddlmZmZmZmZmZmZ dd	lmZ dd
lmZmZmZmZ ddlm Z m!Z!m"Z"m#Z# ddl$m%Z% ddl&m'Z' ddl(m)Z)m*Z* ddl+m,Z,m-Z- ddl.m/Z/ ddl0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@ ddlAmBZBmCZC ddlDmEZEmFZFmGZGmHZHmIZI  ej”                  dd¬«      ZK ej”                  dd¬«      ZL G d„ d«      ZM eM«       ZN ejž                  d«      ZPde› �ZQdj¥                   ej¦                  «       D � cg c]
  } | dk7  sŒ	| ‘Œ c} «      ZT G d„ d ejª                  «      ZV G d!„ d"e=«      ZW G d#„ d$e1«      ZXej²                  d%ej´                  f   Z[ G d&„ d'«      Z\ G d(„ de\«      Z] G d)„ de\«      Z^yc c} w )*é    )ÚannotationsN)ÚasynccontextmanagerÚcontextmanager)ÚTracebackTypeé   )Ú__version__)ÚAuthÚ	BasicAuthÚFunctionAuth)ÚDEFAULT_LIMITSÚDEFAULT_MAX_REDIRECTSÚDEFAULT_TIMEOUT_CONFIGÚLimitsÚProxyÚTimeout)ÚSUPPORTED_DECODERS)Ú
InvalidURLÚRemoteProtocolErrorÚTooManyRedirectsÚrequest_context)ÚCookiesÚHeadersÚRequestÚResponse)Úcodes)ÚASGITransport)ÚAsyncBaseTransportÚBaseTransport)ÚAsyncHTTPTransportÚHTTPTransport)ÚWSGITransport)ÚAsyncByteStreamÚ	AuthTypesÚ	CertTypesÚCookieTypesÚHeaderTypesÚProxiesTypesÚ
ProxyTypesÚQueryParamTypesÚRequestContentÚRequestDataÚRequestExtensionsÚRequestFilesÚSyncByteStreamÚTimeoutTypesÚURLTypesÚVerifyTypes)ÚURLÚQueryParams)ÚTimerÚ
URLPatternÚget_environment_proxiesÚis_https_redirectÚsame_originÚTÚClient)ÚboundÚUÚAsyncClientc                  ó   — e Zd ZdZy)ÚUseClientDefaulta<  
    For some parameters such as `auth=...` and `timeout=...` we need to be able
    to indicate the default "unset" state, in a way that is distinctly different
    to using `None`.

    The default "unset" state indicates that whatever default is set on the
    client should be used. This is different to setting `None`, which
    explicitly disables the parameter, possibly overriding a client default.

    For example we use `timeout=USE_CLIENT_DEFAULT` in the `request()` signature.
    Omitting the `timeout` parameter will send a request using whatever default
    timeout has been configured on the client. Including `timeout=None` will
    ensure no timeout is used.

    Note that user code shouldn't need to use the `USE_CLIENT_DEFAULT` constant,
    but it is used internally when a parameter is not included.
    N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__© ó    úG/var/www/fastapitest/venv/lib/python3.12/site-packages/httpx/_client.pyr?   r?   C   s   „ òrE   r?   Úhttpxzpython-httpx/z, Úidentityc                  ó   — e Zd ZdZdZdZy)ÚClientStater   é   é   N)r@   rA   rB   ÚUNOPENEDÚOPENEDÚCLOSEDrD   rE   rF   rJ   rJ   b   s   „ ð €Hð €Fð �FrE   rJ   c                  ó8   — e Zd ZdZ	 	 	 	 	 	 	 	 dd„Zdd„Zdd„Zy)	ÚBoundSyncStreamz“
    A byte stream that is bound to a given response instance, and that
    ensures the `response.elapsed` is set once the response is closed.
    c                ó.   — || _         || _        || _        y ©N©Ú_streamÚ	_responseÚ_timer©ÚselfÚstreamÚresponseÚtimers       rF   Ú__init__zBoundSyncStream.__init__v   ó   € ð ˆŒØ!ˆŒØˆ�rE   c              #  ó6   K  — | j                   D ]  }|–— Œ y ­wrS   ©rU   ©rY   Úchunks     rF   Ú__iter__zBoundSyncStream.__iter__}   s   è ø€ Ø—\‘\ò 	ˆEØ‹Kñ	ùs   ‚c                ó¶   — | j                   j                  «       }t        j                  |¬«      | j                  _        | j                  j                  «        y ©N)Úseconds)rW   Úsync_elapsedÚdatetimeÚ	timedeltarV   ÚelapsedrU   Úclose©rY   rf   s     rF   rk   zBoundSyncStream.close�   s;   € Ø—+‘+×*Ñ*Ó,ˆÜ!)×!3Ñ!3¸GÔ!Dˆ�‰ÔØ�‰×ÑÕrE   N)rZ   r.   r[   r   r\   r4   ÚreturnÚNone)rm   ztyping.Iterator[bytes]©rm   rn   )r@   rA   rB   rC   r]   rc   rk   rD   rE   rF   rQ   rQ   p   s6   „ ñð
Ø$ðØ08ðØAFðà	óóôrE   rQ   c                  ó8   — e Zd ZdZ	 	 	 	 	 	 	 	 dd„Zdd„Zdd„Zy)	ÚBoundAsyncStreamzš
    An async byte stream that is bound to a given response instance, and that
    ensures the `response.elapsed` is set once the response is closed.
    c                ó.   — || _         || _        || _        y rS   rT   rX   s       rF   r]   zBoundAsyncStream.__init__�   r^   rE   c               óH   K  — | j                   2 3 d {  –—† }|­–— Œ7 Œ
6 y ­wrS   r`   ra   s     rF   Ú	__aiter__zBoundAsyncStream.__aiter__”   s&   è ø€ ØŸ<™<÷ 	ð 	�%ØŒKð	ø™<ùs   ‚"� “” —"ž  "c              ƒ  óæ   K  — | j                   j                  «       ƒ d {  –—† }t        j                  |¬«      | j                  _        | j                  j                  «       ƒ d {  –—†  y 7 ŒL7 Œ­wre   )rW   Úasync_elapsedrh   ri   rV   rj   rU   Úacloserl   s     rF   rw   zBoundAsyncStream.aclose˜   sQ   è ø€ ØŸ™×1Ñ1Ó3×3ˆÜ!)×!3Ñ!3¸GÔ!Dˆ�‰ÔØ�l‰l×!Ñ!Ó#×#Ñ#ð 4øà#ús"   ‚A1 A-¡AA1Á'A/Á(A1Á/A1N)rZ   r"   r[   r   r\   r4   rm   rn   )rm   ztyping.AsyncIterator[bytes]ro   )r@   rA   rB   rC   r]   rt   rw   rD   rE   rF   rq   rq   ‡   s6   „ ñð
Ø%ðØ19ðØBGðà	óóô$rE   rq   .c                  óð  — e Zd Zddddededddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d'd„Zed(d„«       Zed(d	„«       Zd)d
„Z		 	 	 	 	 	 d*d„Z
ed+d„«       Zej                  d,d„«       Zed-d„«       Zej                  d.d„«       Zed/d„«       Zej                  d0d„«       Zed1d„«       Zej                  d2d„«       Zed3d„«       Zej                  d4d„«       Zed5d„«       Zej                  d6d„«       Zed7d„«       Zej                  d8d„«       Zdddddddeddœ		 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d9d„Zd:d„Zd;d<d„Zd;d=d„Z	 d;	 	 	 d>d„Zd?d „Zef	 	 	 	 	 d@d!„ZdAd"„ZdBd#„ZdCd$„ZdDd%„Z	 	 	 	 	 	 dEd&„Zy)FÚ
BaseClientNFÚ Túutf-8©ÚauthÚparamsÚheadersÚcookiesÚtimeoutÚfollow_redirectsÚmax_redirectsÚevent_hooksÚbase_urlÚ	trust_envÚdefault_encodingc               óÔ  — |€i n|}| j                  t        |	«      «      | _        | j                  |«      | _        t        |«      | _        t        |«      | _        t        |«      | _
        t        |«      | _        || _        || _        t        |j!                  dg «      «      t        |j!                  dg «      «      dœ| _        |
| _        || _        t(        j*                  | _        y ©NÚrequestr[   )rŠ   r[   )Ú_enforce_trailing_slashr2   Ú	_base_urlÚ_build_authÚ_authr3   Ú_paramsr   r   r   Ú_cookiesr   Ú_timeoutr‚   rƒ   ÚlistÚgetÚ_event_hooksÚ
_trust_envÚ_default_encodingrJ   rM   Ú_state)rY   r}   r~   r   r€   r�   r‚   rƒ   r„   r…   r†   r‡   s               rF   r]   zBaseClient.__init__¢   sÆ   € ð (Ð/‘b°[ˆà×5Ñ5´c¸(³mÓDˆŒà×%Ñ% dÓ+ˆŒ
Ü" 6Ó*ˆŒÜ˜wÓ'ˆŒÜ Ó(ˆŒÜ Ó(ˆŒØ 0ˆÔØ*ˆÔä˜KŸO™O¨I°rÓ:Ó;Ü˜[Ÿ_™_¨Z¸Ó<Ó=ñ
ˆÔð $ˆŒØ!1ˆÔÜ!×*Ñ*ˆ�rE   c                ó<   — | j                   t        j                  k(  S )z2
        Check if the client being closed
        )r—   rJ   rO   ©rY   s    rF   Ú	is_closedzBaseClient.is_closedÄ   s   € ð
 �{‰{œk×0Ñ0Ñ0Ð0rE   c                ó   — | j                   S rS   )r•   r™   s    rF   r†   zBaseClient.trust_envË   s   € à�‰ÐrE   c                óz   — |j                   j                  d«      r|S |j                  |j                   dz   ¬«      S )Nó   /©Úraw_path)rŸ   ÚendswithÚ	copy_with©rY   Úurls     rF   r‹   z"BaseClient._enforce_trailing_slashÏ   s3   € Ø�<‰<× Ñ  Ô&ØˆJØ�}‰} c§l¡l°TÑ&9ˆ}Ó:Ð:rE   c                óš  — |€>|r:t        «       j                  «       D ��ci c]  \  }}||€d nt        |¬«      “Œ c}}S i S t        |t        «      rNi }|j                  «       D ]7  \  }}t        |t
        t        f«      rt        |¬«      n|}||t        |«      <   Œ9 |S t        |t
        t        f«      rt        |¬«      n|}d|iS c c}}w )N)r£   zall://)r6   Úitemsr   Ú
isinstanceÚdictÚstrr2   )rY   ÚproxiesÚallow_env_proxiesÚkeyr£   Únew_proxiesÚvalueÚproxys           rF   Ú_get_proxy_mapzBaseClient._get_proxy_mapÔ   sÏ   € ð ˆ?Ù ô %<Ó$=×$CÑ$CÓ$E÷á ˜˜Sð   ™´%¸C´.Ñ@óð ð ˆIÜ�gœtÔ$ØˆKØ%Ÿm™m›oò .‘
��UÜ,6°u¼sÄC¸jÔ,Iœ %Õ(Èu�Ø(-�œC ›HÒ%ð.ð Ðä*4°W¼sÄC¸jÔ*I”E˜gÕ&ÈwˆEØ˜eÐ$Ð$ùós    Cc                ó   — | j                   S rS   )r‘   r™   s    rF   r�   zBaseClient.timeoutè   s   € à�}‰}ÐrE   c                ó$   — t        |«      | _        y rS   )r   r‘   )rY   r�   s     rF   r�   zBaseClient.timeoutì   ó   € ä Ó(ˆ�rE   c                ó   — | j                   S rS   )r”   r™   s    rF   r„   zBaseClient.event_hooksð   s   € à× Ñ Ð rE   c                ó|   — t        |j                  dg «      «      t        |j                  dg «      «      dœ| _        y r‰   )r’   r“   r”   )rY   r„   s     rF   r„   zBaseClient.event_hooksô   s4   € ô ˜KŸO™O¨I°rÓ:Ó;Ü˜[Ÿ_™_¨Z¸Ó<Ó=ñ
ˆÕrE   c                ó   — | j                   S )z¦
        Authentication class used when none is passed at the request-level.

        See also [Authentication][0].

        [0]: /quickstart/#authentication
        )rŽ   r™   s    rF   r}   zBaseClient.authû   s   € ð �z‰zÐrE   c                ó0   — | j                  |«      | _        y rS   )r�   rŽ   ©rY   r}   s     rF   r}   zBaseClient.auth  s   € à×%Ñ% dÓ+ˆ�
rE   c                ó   — | j                   S )zK
        Base URL to use when sending requests with relative URLs.
        )rŒ   r™   s    rF   r…   zBaseClient.base_url
  s   € ð
 �~‰~ÐrE   c                óB   — | j                  t        |«      «      | _        y rS   )r‹   r2   rŒ   r¢   s     rF   r…   zBaseClient.base_url  s   € à×5Ñ5´c¸#³hÓ?ˆ�rE   c                ó   — | j                   S )z@
        HTTP headers to include when sending requests.
        )Ú_headersr™   s    rF   r   zBaseClient.headers  ó   € ð
 �}‰}ÐrE   c                ó    — t        dt        j                  d«      dt        j                  d«      dœ«      }|j	                  |«       || _        y )Ns   */*Úasciis
   keep-alive)s   Accepts   Accept-Encodings
   Connections
   User-Agent)r   ÚACCEPT_ENCODINGÚencodeÚ
USER_AGENTÚupdater»   )rY   r   Úclient_headerss      rF   r   zBaseClient.headers  sJ   € ä à!Ü$3×$:Ñ$:¸7Ó$CØ,Ü)×0Ñ0°Ó9ñ	ó
ˆð 	×Ñ˜gÔ&Ø&ˆ�rE   c                ó   — | j                   S )zA
        Cookie values to include when sending requests.
        )r�   r™   s    rF   r€   zBaseClient.cookies)  r¼   rE   c                ó$   — t        |«      | _        y rS   )r   r�   )rY   r€   s     rF   r€   zBaseClient.cookies0  r²   rE   c                ó   — | j                   S )zO
        Query parameters to include in the URL when sending requests.
        )r�   r™   s    rF   r~   zBaseClient.params4  s   € ð
 �|‰|ÐrE   c                ó$   — t        |«      | _        y rS   )r3   r�   )rY   r~   s     rF   r~   zBaseClient.params;  s   € ä" 6Ó*ˆ�rE   )	ÚcontentÚdataÚfilesÚjsonr~   r   r€   r�   Ú
extensionsc       	        óP  — | j                  |«      }| j                  |«      }| j                  |	«      }	| j                  |«      }|€i n|}d|vrDt	        |
t
        «      r| j                  n
t        |
«      }
t        di |¤d|
j                  «       i¤Ž}t        |||||||||	|¬«
      S )aJ  
        Build and return a request instance.

        * The `params`, `headers` and `cookies` arguments
        are merged with any values set on the client.
        * The `url` argument is merged with any `base_url` set on the client.

        See also: [Request instances][0]

        [0]: /advanced/#request-instances
        r�   )rÈ   rÉ   rÊ   rË   r~   r   r€   rÌ   rD   )Ú
_merge_urlÚ_merge_headersÚ_merge_cookiesÚ_merge_queryparamsr¦   r?   r�   r   r§   Úas_dictr   )rY   Úmethodr£   rÈ   rÉ   rÊ   rË   r~   r   r€   r�   rÌ   s               rF   Úbuild_requestzBaseClient.build_request?  s¿   € ð4 �o‰o˜cÓ"ˆØ×%Ñ% gÓ.ˆØ×%Ñ% gÓ.ˆØ×(Ñ(¨Ó0ˆØ%Ð-‘R°:ˆ
Ø˜JÑ&ô ˜gÔ'7Ô8ð —’ä˜WÓ%ð ô
 ÑF 
ÑF°G·O±OÓ4EÒFˆJÜØØØØØØØØØØ!ô
ð 	
rE   c                óÐ   — t        |«      }|j                  rN| j                  j                  |j                  j	                  d«      z   }| j                  j                  |¬«      S |S )z‹
        Merge a URL argument together with any 'base_url' on the client,
        to create the URL used for the outgoing request.
        r�   rž   )r2   Úis_relative_urlr…   rŸ   Úlstripr¡   )rY   r£   Ú	merge_urlÚmerge_raw_paths       rF   rÎ   zBaseClient._merge_urlr  s\   € ô
 ˜“Hˆ	Ø×$Ò$ð "Ÿ]™]×3Ñ3°i×6HÑ6H×6OÑ6OÐPTÓ6UÑUˆNØ—=‘=×*Ñ*°NÐ*ÓCÐCØÐrE   c                ór   — |s| j                   r(t        | j                   «      }|j                  |«       |S |S )z�
        Merge a cookies argument together with any cookies on the client,
        to create the cookies used for the outgoing request.
        )r€   r   rÂ   )rY   r€   Úmerged_cookiess      rF   rÐ   zBaseClient._merge_cookiesˆ  s4   € ñ
 �d—l’lÜ$ T§\¡\Ó2ˆNØ×!Ñ! 'Ô*Ø!Ð!ØˆrE   c                óR   — t        | j                  «      }|j                  |«       |S )z�
        Merge a headers argument together with any headers on the client,
        to create the headers used for the outgoing request.
        )r   r   rÂ   )rY   r   Úmerged_headerss      rF   rÏ   zBaseClient._merge_headers“  s&   € ô
 ! §¡Ó.ˆØ×Ñ˜gÔ&ØÐrE   c                ón   — |s| j                   r&t        | j                   «      }|j                  |«      S |S )zœ
        Merge a queryparams argument together with any queryparams on the client,
        to create the queryparams used for the outgoing request.
        )r~   r3   Úmerge)rY   r~   Úmerged_queryparamss      rF   rÑ   zBaseClient._merge_queryparamsœ  s2   € ñ �T—[’[Ü!,¨T¯[©[Ó!9ÐØ%×+Ñ+¨FÓ3Ð3ØˆrE   c                ó¼   — |€y t        |t        «      rt        |d   |d   ¬«      S t        |t        «      r|S t	        |«      rt        |¬«      S t        d|›�«      ‚)Nr   r   ©ÚusernameÚpassword)ÚfunczInvalid "auth" argument: )r¦   Útupler
   r	   Úcallabler   Ú	TypeErrorr·   s     rF   r�   zBaseClient._build_auth¨  s]   € Øˆ<ØÜ˜œeÔ$Ü d¨1¡g¸¸Q¹Ô@Ð@Ü˜œdÔ#ØˆKÜ�dŒ^Ü TÔ*Ð*äÐ7¸°xÐ@ÓAÐArE   c                óò   — t        |t        «      r| j                  n| j                  |«      }|�|S |j                  j
                  |j                  j                  }}|s|rt        ||¬«      S t        «       S )Nrâ   )	r¦   r?   rŽ   r�   r£   rã   rä   r
   r	   )rY   rŠ   r}   rã   rä   s        rF   Ú_build_request_authzBaseClient._build_request_auth´  sk   € ô % TÔ+;Ô<ˆD�JŠJÀ$×BRÑBRÐSWÓBXð 	ð ÐØˆKà$Ÿ[™[×1Ñ1°7·;±;×3GÑ3G�(ˆÙ‘xÜ h¸ÔBÐBä‹vˆrE   c                óô   — | j                  ||«      }| j                  ||«      }| j                  |||«      }| j                  ||«      }t	        | j
                  «      }t        ||||||j                  ¬«      S )zƒ
        Given a request and a redirect response, return a new request that
        should be used to effect the redirect.
        )rÓ   r£   r   r€   rZ   rÌ   )Ú_redirect_methodÚ_redirect_urlÚ_redirect_headersÚ_redirect_streamr   r€   r   rÌ   )rY   rŠ   r[   rÓ   r£   r   rZ   r€   s           rF   Ú_build_redirect_requestz"BaseClient._build_redirect_requestÆ  s�   € ð
 ×&Ñ& w°Ó9ˆØ× Ñ  ¨(Ó3ˆØ×(Ñ(¨°#°vÓ>ˆØ×&Ñ& w°Ó7ˆÜ˜$Ÿ,™,Ó'ˆÜØØØØØØ×)Ñ)ô
ð 	
rE   c                óö   — |j                   }|j                  t        j                  k(  r|dk7  rd}|j                  t        j                  k(  r|dk7  rd}|j                  t        j
                  k(  r|dk(  rd}|S )z‹
        When being redirected we may want to change the method of the request
        based on certain specs or browser behavior.
        ÚHEADÚGETÚPOST)rÓ   Ústatus_coder   Ú	SEE_OTHERÚFOUNDÚMOVED_PERMANENTLY)rY   rŠ   r[   rÓ   s       rF   rì   zBaseClient._redirect_methodÙ  st   € ð
 —‘ˆð ×Ñ¤5§?¡?Ò2°vÀÒ7GØˆFð ×Ñ¤5§;¡;Ò.°6¸VÒ3CØˆFð ×Ñ¤5×#:Ñ#:Ò:¸vÈÒ?OØˆFàˆrE   c                óÜ  — |j                   d   }	 t        |«      }|j                  r2|j
                  s&|j                  |j                  j
                  ¬«      }|j                  r|j                  j                  |«      }|j                  j                  r2|j                  s&|j                  |j                  j                  ¬«      }|S # t        $ r}t        d|› d�|¬«      d‚d}~ww xY w)z<
        Return the URL for the redirect to follow.
        ÚLocationz Invalid URL in location header: ú.©rŠ   N)Úhost)Úfragment)r   r2   r   r   Úschemerý   r¡   r£   rÖ   Újoinrþ   )rY   rŠ   r[   Úlocationr£   Úexcs         rF   rí   zBaseClient._redirect_urlð  sÎ   € ð ×#Ñ# JÑ/ˆð	Ü�h“-ˆCð �:Š:˜cŸhšhØ—-‘- W§[¡[×%5Ñ%5�-Ó6ˆCð ×ÒØ—+‘+×"Ñ" 3Ó'ˆCð �;‰;×Ò¨¯ªØ—-‘-¨¯©×)=Ñ)=�-Ó>ˆCàˆ
øô' ò 	Ü%Ø2°3°%°qÐ9À7ôàðûð	ús   ‘C Ã	C+ÃC&Ã&C+c                ó|  — t        |j                  «      }t        ||j                  «      sFt	        |j                  |«      s|j                  dd«       |j                  j                  d«      |d<   ||j                  k7  r)|dk(  r$|j                  dd«       |j                  dd«       |j                  dd«       |S )	zR
        Return the headers that should be used for the redirect request.
        ÚAuthorizationNr¾   ÚHostró   zContent-LengthzTransfer-EncodingÚCookie)	r   r   r8   r£   r7   ÚpopÚnetlocÚdecoderÓ   )rY   rŠ   r£   rÓ   r   s        rF   rî   zBaseClient._redirect_headers  sŸ   € ô ˜'Ÿ/™/Ó*ˆä˜3 §¡Ô,Ü$ W§[¡[°#Ô6ð —‘˜O¨TÔ2ð "Ÿj™j×/Ñ/°Ó8ˆG�F‰Oà�W—^‘^Ò#¨°%ªð �K‰KÐ(¨$Ô/Ø�K‰KÐ+¨TÔ2ð 	�‰�H˜dÔ#àˆrE   c                óD   — ||j                   k7  r|dk(  ry|j                  S )zO
        Return the body that should be used for the redirect request.
        ró   N)rÓ   rZ   )rY   rŠ   rÓ   s      rF   rï   zBaseClient._redirect_stream(  s#   € ð �W—^‘^Ò#¨°%ªØà�~‰~ÐrE   )r}   úAuthTypes | Noner~   úQueryParamTypes | Noner   úHeaderTypes | Noner€   úCookieTypes | Noner�   r/   r‚   Úboolrƒ   Úintr„   ú+None | typing.Mapping[str, list[EventHook]]r…   r0   r†   r  r‡   ú#str | typing.Callable[[bytes], str]rm   rn   )rm   r  )r£   r2   rm   r2   )r©   úProxiesTypes | Nonerª   r  rm   zdict[str, Proxy | None])rm   r   )r�   r/   rm   rn   )rm   údict[str, list[EventHook]])r„   r  rm   rn   )rm   úAuth | None)r}   r#   rm   rn   )rm   r2   )r£   r0   rm   rn   )rm   r   )r   r&   rm   rn   )rm   r   )r€   r%   rm   rn   )rm   r3   )r~   r)   rm   rn   )rÓ   r¨   r£   r0   rÈ   úRequestContent | NonerÉ   úRequestData | NonerÊ   úRequestFiles | NonerË   útyping.Any | Noner~   r  r   r  r€   r  r�   úTimeoutTypes | UseClientDefaultrÌ   úRequestExtensions | Nonerm   r   )r£   r0   rm   r2   rS   )r€   r  rm   r  )r   r  rm   r  )r~   r  rm   r  )r}   r  rm   r  )rŠ   r   r}   ú#AuthTypes | UseClientDefault | Nonerm   r	   )rŠ   r   r[   r   rm   r   )rŠ   r   r[   r   rm   r¨   )rŠ   r   r[   r   rm   r2   )rŠ   r   r£   r2   rÓ   r¨   rm   r   )rŠ   r   rÓ   r¨   rm   z'SyncByteStream | AsyncByteStream | None) r@   rA   rB   r   r   r]   Úpropertyrš   r†   r‹   r¯   r�   Úsetterr„   r}   r…   r   r€   r~   ÚUSE_CLIENT_DEFAULTrÔ   rÎ   rÐ   rÏ   rÑ   r�   rê   rð   rì   rí   rî   rï   rD   rE   rF   ry   ry   ¡   sF  „ ð "&Ø)-Ø&*Ø&*Ø 6Ø!&Ø2ØEIØØØ@Gñ +ð ð +ð 'ð	 +ð
 $ð +ð $ð +ð ð +ð ð +ð ð +ð Cð +ð ð +ð ð +ð >ð +ð 
ó +ðD ò1ó ð1ð òó ðó;ð
%Ø*ð%Ø?Cð%à	 ó%ð( òó ðð ‡^�^ò)ó ð)ð ò!ó ð!ð ×Ñò
ó ð
ð òó ðð 
‡[�[ò,ó ð,ð òó ðð ‡_�_ò@ó ð@ð òó ðð ‡^�^ò
'ó ð
'ð òó ðð ‡^�^ò)ó ð)ð òó ðð ‡]�]ò+ó ð+ð *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø3EØ/3ñ1
àð1
ð ð1
ð
 'ð1
ð !ð1
ð #ð1
ð  ð1
ð 'ð1
ð $ð1
ð $ð1
ð 1ð1
ð -ð1
ð 
ó1
ófô,	ôð 04ð
Ø,ð
à	ó
ó
Bð 5Gðàðð 2ðð 
ó	ó$
ó&ó.ó:ð6	Øð	Ø(+ð	à	0ô	rE   ry   c                  óT  ‡ — e Zd ZdZdddddddddddedeedddddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„Zddddedddf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d d	„Zddddedf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d
„Z	d"d„Z
dddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d#d„Zedddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d$d„«       Zdeedœ	 	 	 	 	 	 	 	 	 d%d„Z	 	 	 	 	 	 	 	 	 	 d&d„Z	 	 	 	 	 	 	 	 d'd„Zd(d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d)d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d)d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d)d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d)d„Zd+d„Zd,d„Z	 	 	 d-	 	 	 	 	 	 	 d.d„Zˆ xZS )/r:   aŒ	  
    An HTTP client, with connection pooling, HTTP/2, redirects, cookie persistence, etc.

    It can be shared between threads.

    Usage:

    ```python
    >>> client = httpx.Client()
    >>> response = client.get('https://example.org')
    ```

    **Parameters:**

    * **auth** - *(optional)* An authentication class to use when sending
    requests.
    * **params** - *(optional)* Query parameters to include in request URLs, as
    a string, dictionary, or sequence of two-tuples.
    * **headers** - *(optional)* Dictionary of HTTP headers to include when
    sending requests.
    * **cookies** - *(optional)* Dictionary of Cookie items to include when
    sending requests.
    * **verify** - *(optional)* SSL certificates (a.k.a CA bundle) used to
    verify the identity of requested hosts. Either `True` (default CA bundle),
    a path to an SSL certificate file, an `ssl.SSLContext`, or `False`
    (which will disable verification).
    * **cert** - *(optional)* An SSL certificate used by the requested host
    to authenticate the client. Either a path to an SSL certificate file, or
    two-tuple of (certificate file, key file), or a three-tuple of (certificate
    file, key file, password).
    * **http2** - *(optional)* A boolean indicating if HTTP/2 support should be
    enabled. Defaults to `False`.
    * **proxy** - *(optional)* A proxy URL where all the traffic should be routed.
    * **proxies** - *(optional)* A dictionary mapping proxy keys to proxy
    URLs.
    * **timeout** - *(optional)* The timeout configuration to use when sending
    requests.
    * **limits** - *(optional)* The limits configuration to use.
    * **max_redirects** - *(optional)* The maximum number of redirect responses
    that should be followed.
    * **base_url** - *(optional)* A URL to use as the base when building
    request URLs.
    * **transport** - *(optional)* A transport class to use for sending requests
    over the network.
    * **app** - *(optional)* An WSGI application to send requests to,
    rather than sending actual network requests.
    * **trust_env** - *(optional)* Enables or disables usage of environment
    variables for configuration.
    * **default_encoding** - *(optional)* The default encoding to use for decoding
    response text, if no charset information is included in a response Content-Type
    header. Set to a callable for automatic character set detection. Default: "utf-8".
    NTFrz   r{   ©r}   r~   r   r€   ÚverifyÚcertÚhttp1Úhttp2r®   r©   Úmountsr�   r‚   Úlimitsrƒ   r„   r…   Ú	transportÚappr†   r‡   c               ó2  •— t         ‰| �  |||||||||||¬«       |r	 dd l}|
r)d}t	        j
                  |t        «       |	rt        d«      ‚|rd}t	        j
                  |t        «       |xr
 |d u xr |d u }| j                  |
xs |	|«      }| j                  ||||||||¬«      | _
        |j                  «       D ��	ci c]+  \  }}	t        |«      |	€d n| j                  |	||||||¬«      “Œ- c}	}| _        |�F| j                  j                  |j                  «       D ��ci c]  \  }}t        |«      |“Œ c}}«       t!        t#        | j                  j                  «       «      «      | _        y # t        $ r t        d«      d ‚w xY wc c}	}w c c}}w )	Nr|   r   úuUsing http2=True, but the 'h2' package is not installed. Make sure to install httpx using `pip install httpx[http2]`.úJThe 'proxies' argument is now deprecated. Use 'proxy' or 'mounts' instead.ú*Use either `proxy` or 'proxies', not both.zhThe 'app' shortcut is now deprecated. Use the explicit style 'transport=WSGITransport(app=...)' instead.©r"  r#  r$  r%  r'  r(  r)  r†   ©r"  r#  r$  r%  r'  r†   ©Úsuperr]   Úh2ÚImportErrorÚwarningsÚwarnÚDeprecationWarningÚRuntimeErrorr¯   Ú_init_transportÚ
_transportr¥   r5   Ú_init_proxy_transportÚ_mountsrÂ   r§   Úsorted©rY   r}   r~   r   r€   r"  r#  r$  r%  r®   r©   r&  r�   r‚   r'  rƒ   r„   r…   r(  r)  r†   r‡   r2  Úmessagerª   Ú	proxy_mapr«   Ú	__class__s                              €rF   r]   zClient.__init__j  sê  ø€ ô2 	‰ÑØØØØØØ-Ø'Ø#ØØØ-ð 	ô 	
ñ ðÛñ ð4ð ô �M‰M˜'Ô#5Ô6ÙÜ"Ð#OÓPÐPáðVð ô �M‰M˜'Ô#5Ô6à%ÒK¨#°¨+ÒK¸)ÀtÐ:KÐØ×'Ñ'¨Ò(8°5Ð:KÓLˆ	à×.Ñ.ØØØØØØØØð /ó 	
ˆŒð, (Ÿo™oÓ/÷@
ñ ��Uô �s‹OØˆ}ñ "à×+Ñ+ØØØØØØØ#ð ,ó ñ
ó@
ˆŒð ÐØ�L‰L×ÑØBHÇ,Á,Ã.×Q±°°Y”˜C“ )Ñ+ÓQôô œF 4§<¡<×#5Ñ#5Ó#7Ó8Ó9ˆ�øôm ò Ü!ðSóð ððüóF@
ùó  Rs   ŸE4 Ã0FÄ$F
Å4F
c	                óH   — |�|S |�t        |¬«      S t        ||||||¬«      S ©N)r)  r/  )r!   r    ©	rY   r"  r#  r$  r%  r'  r(  r)  r†   s	            rF   r8  zClient._init_transportÌ  s?   € ð Ð ØÐàˆ?Ü  SÔ)Ð)äØØØØØØô
ð 	
rE   c           	     ó&   — t        |||||||¬«      S ©N)r"  r#  r$  r%  r'  r†   r®   )r    ©rY   r®   r"  r#  r$  r%  r'  r†   s           rF   r:  zClient._init_proxy_transportæ  s&   € ô ØØØØØØØô
ð 	
rE   c                ó¨   — | j                   j                  «       D ]*  \  }}|j                  |«      sŒ|€| j                  c S |c S  | j                  S ©z›
        Returns the transport instance that should be used for a given URL.
        This will either be the standard connection pool, or a proxy.
        ©r;  r¥   Úmatchesr9  ©rY   r£   Úpatternr(  s       rF   Ú_transport_for_urlzClient._transport_for_urlú  óS   € ð
 #'§,¡,×"4Ñ"4Ó"6ò 	KÑˆG�YØ�‰˜sÕ#Ø*3Ð*;�t—‘ÒJÀÒJð	Kð �‰ÐrE   ©rÈ   rÉ   rÊ   rË   r~   r   r€   r}   r‚   r�   rÌ   c               óž   — |	�d}t        j                  |t        «       | j                  |||||||||	||¬«      }| j	                  ||
|¬«      S )a¡  
        Build and send a request.

        Equivalent to:

        ```python
        request = client.build_request(...)
        response = client.send(request, ...)
        ```

        See `Client.build_request()`, `Client.send()` and
        [Merging of configuration][0] for how the various parameters
        are merged with client-level configuration.

        [0]: /advanced/#merging-of-configuration
        ú®Setting per-request cookies=<...> is being deprecated, because the expected behaviour on cookie persistence is ambiguous. Set cookies directly on the client instance instead.©rÓ   r£   rÈ   rÉ   rÊ   rË   r~   r   r€   r�   rÌ   ©r}   r‚   ©r4  r5  r6  rÔ   Úsend©rY   rÓ   r£   rÈ   rÉ   rÊ   rË   r~   r   r€   r}   r‚   r�   rÌ   r>  rŠ   s                   rF   rŠ   zClient.request  su   € ðB ÐðCð ô
 �M‰M˜'Ô#5Ô6à×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð �y‰y˜ tÐ>NˆyÓOÐOrE   c             #  óÂ   K  — | j                  |||||||||	||¬«      }| j                  ||
|d¬«      }	 |–— |j                  «        y# |j                  «        w xY w­w©a  
        Alternative to `httpx.request()` that streams the response body
        instead of loading it into memory at once.

        **Parameters**: See `httpx.request`.

        See also: [Streaming Responses][0]

        [0]: /quickstart#streaming-responses
        rR  T)rŠ   r}   r‚   rZ   N)rÔ   rU  rk   ©rY   rÓ   r£   rÈ   rÉ   rÊ   rË   r~   r   r€   r}   r‚   r�   rÌ   rŠ   r[   s                   rF   rZ   zClient.stream=  s}   è ø€ ð8 ×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð —9‘9ØØØ-Øð	 ó 
ˆð	ØŠNà�N‰NÕøˆH�N‰NÕüs   ‚2AµA
 ¹AÁ
AÁA©rZ   r}   r‚   c               óv  — | j                   t        j                  k(  rt        d«      ‚t        j                  | _         t        |t        «      r| j                  n|}| j                  ||«      }| j                  |||g ¬«      }	 |s|j                  «        |S # t        $ r}|j                  «        |‚d}~ww xY w)aƒ  
        Send a request.

        The request is sent as-is, unmodified.

        Typically you'll want to build one with `Client.build_request()`
        so that any client-level configuration is merged into the request,
        but passing an explicit `httpx.Request()` is supported as well.

        See also: [Request instances][0]

        [0]: /advanced/#request-instances
        ú5Cannot send a request, as the client has been closed.©r}   r‚   ÚhistoryN)r—   rJ   rO   r7  rN   r¦   r?   r‚   rê   Ú_send_handling_authÚreadÚBaseExceptionrk   ©rY   rŠ   rZ   r}   r‚   r[   r  s          rF   rU  zClient.sendq  sº   € ð* �;‰;œ+×,Ñ,Ò,ÜÐVÓWÐWä!×(Ñ(ˆŒô Ð*Ô,<Ô=ð ×!Ò!à!ð 	ð ×'Ñ'¨°Ó6ˆà×+Ñ+ØØØ-Øð	 ,ó 
ˆð	ÙØ—‘”àˆOøäò 	Ø�N‰NÔØˆIûð	ús   ÂB Â	B8Â!B3Â3B8c                ó¦  — |j                  |«      }	 t        |«      }	 | j                  |||¬«      }	 	 |j                  |«      }t        |«      |_        |j                  «        |}|j                  |«       Œ[# t        $ r |cY |j                  «        S w xY w# t        $ r}|j                  «        |‚d }~ww xY w# |j                  «        w xY w©N)r‚   r^  )Úsync_auth_flowÚnextÚ_send_handling_redirectsrU  ÚStopIterationrk   r’   r^  r`  Úappendra  ©	rY   rŠ   r}   r‚   r^  Ú	auth_flowr[   Únext_requestr  s	            rF   r_  zClient._send_handling_auth¢  s×   € ð ×'Ñ'¨Ó0ˆ	ð	Ü˜9“oˆGàØ×8Ñ8ØØ%5Ø#ð 9ó �ð
ð(Ø'0§~¡~°hÓ'?˜ô (,¨G£}�HÔ$Ø—M‘M”OØ*�GØ—N‘N 8Ô,ð øô )ò (Ø'™ð �O‰OÕð(ûô %ò Ø—N‘NÔ$Ø�Iûðûð �O‰OÕúsL   “ B> µA: Á3B Á9B> Á:BÂB ÂBÂB Â	B;Â$B6Â6B;Â;B> Â>Cc                óÐ  — 	 t        |«      | j                  kD  rt        d|¬«      ‚| j                  d   D ]
  } ||«       Œ | j	                  |«      }	 | j                  d   D ]
  } ||«       Œ t        |«      |_        |j                  s|S | j                  ||«      }||gz   }|r|j                  «        n	||_
        |S 	 ŒÃ# t        $ r}|j                  «        |‚d }~ww xY w©Nz#Exceeded maximum allowed redirects.rü   rŠ   r[   )Úlenrƒ   r   r”   Ú_send_single_requestr’   r^  Úhas_redirect_locationrð   r`  rl  ra  rk   ©rY   rŠ   r‚   r^  Úhookr[   r  s          rF   rg  zClient._send_handling_redirectsÄ  s  € ð Ü�7‹|˜d×0Ñ0Ò0Ü&Ø9À7ôð ð ×)Ñ)¨)Ñ4ò �Ù�W•ðð ×0Ñ0°Ó9ˆHðØ ×-Ñ-¨jÑ9ò #�DÙ˜•Nð#ä#'¨£=�Ô à×5Ò5Ø#�Oà×6Ñ6°wÀÓI�Ø! X JÑ.�á#Ø—M‘M•Oà,3�HÔ)Ø#�Oð $ð- øô6 !ò Ø—‘Ô Ø�	ûðús   Á9C Â3C Ã	C%ÃC Ã C%c                óŽ  — | j                  |j                  «      }t        «       }|j                  «        t	        |j
                  t        «      st        d«      ‚t        |¬«      5  |j                  |«      }ddd«       t	        j
                  t        «      sJ ‚||_
        t        |j
                  ||¬«      |_        | j                  j                  |«       | j                  |_        t         j#                  d|j$                  |j                  |j&                  |j(                  |j*                  «       |S # 1 sw Y   ŒÃxY w)úL
        Sends a single request, without handling any redirections.
        z?Attempted to send an async request with a sync Client instance.rü   N©r[   r\   úHTTP Request: %s %s "%s %d %s")rM  r£   r4   Ú
sync_startr¦   rZ   r.   r7  r   Úhandle_requestrŠ   rQ   r€   Úextract_cookiesr–   r‡   ÚloggerÚinforÓ   Úhttp_versionrõ   Úreason_phrase©rY   rŠ   r(  r\   r[   s        rF   rp  zClient._send_single_requesté  s  € ð ×+Ñ+¨G¯K©KÓ8ˆ	Ü“ˆØ×ÑÔä˜'Ÿ.™.¬.Ô9ÜØQóð ô  WÔ-ñ 	9Ø ×/Ñ/°Ó8ˆH÷	9ô ˜(Ÿ/™/¬>Ô:Ð:Ð:à"ˆÔÜ)Ø�O‰O h°eô
ˆŒð 	�‰×$Ñ$ XÔ.Ø$(×$:Ñ$:ˆÔ!ä�‰Ø,Ø�N‰NØ�K‰KØ×!Ñ!Ø× Ñ Ø×"Ñ"ô	
ð ˆ÷+	9ð 	9ús   Á'D;Ä;E©r~   r   r€   r}   r‚   r�   rÌ   c               ó6   — | j                  d||||||||¬«	      S )úU
        Send a `GET` request.

        **Parameters**: See `httpx.request`.
        ró   r€  rü   ©	rY   r£   r~   r   r€   r}   r‚   r�   rÌ   s	            rF   r“   z
Client.get  s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rE   c               ó6   — | j                  d||||||||¬«	      S )úZ
        Send an `OPTIONS` request.

        **Parameters**: See `httpx.request`.
        ÚOPTIONSr€  rü   rƒ  s	            rF   ÚoptionszClient.options*  s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rE   c               ó6   — | j                  d||||||||¬«	      S )úV
        Send a `HEAD` request.

        **Parameters**: See `httpx.request`.
        rò   r€  rü   rƒ  s	            rF   ÚheadzClient.headG  s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rE   c               ó>   — | j                  d|||||||||	|
||¬«      S )úV
        Send a `POST` request.

        **Parameters**: See `httpx.request`.
        rô   rO  rü   ©rY   r£   rÈ   rÉ   rÊ   rË   r~   r   r€   r}   r‚   r�   rÌ   s                rF   ÚpostzClient.postd  sA   € ð* �|‰|ØØØØØØØØØØØ-ØØ!ð ó 
ð 	
rE   c               ó>   — | j                  d|||||||||	|
||¬«      S )úU
        Send a `PUT` request.

        **Parameters**: See `httpx.request`.
        ÚPUTrO  rü   r�  s                rF   Úputz
Client.put‰  sA   € ð* �|‰|ØØØØØØØØØØØ-ØØ!ð ó 
ð 	
rE   c               ó>   — | j                  d|||||||||	|
||¬«      S )úW
        Send a `PATCH` request.

        **Parameters**: See `httpx.request`.
        ÚPATCHrO  rü   r�  s                rF   ÚpatchzClient.patch®  sA   € ð* �|‰|ØØØØØØØØØØØ-ØØ!ð ó 
ð 	
rE   c               ó6   — | j                  d||||||||¬«	      S )úX
        Send a `DELETE` request.

        **Parameters**: See `httpx.request`.
        ÚDELETEr€  rü   rƒ  s	            rF   ÚdeletezClient.deleteÓ  s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rE   c                ó  — | j                   t        j                  k7  rbt        j                  | _         | j                  j	                  «        | j
                  j                  «       D ]  }|€Œ|j	                  «        Œ yy©z.
        Close transport and proxies.
        N)r—   rJ   rO   r9  rk   r;  Úvalues)rY   r(  s     rF   rk   zClient.closeð  sd   € ð �;‰;œ+×,Ñ,Ò,Ü%×,Ñ,ˆDŒKà�O‰O×!Ñ!Ô#Ø!Ÿ\™\×0Ñ0Ó2ò &�	ØÑ(Ø—O‘OÕ%ñ&ð	 -rE   c                óv  — | j                   t        j                  k7  r:t        j                  dt        j                  di| j                      }t        |«      ‚t        j                  | _         | j                  j                  «        | j                  j                  «       D ]  }|€Œ|j                  «        Œ | S ©Nz-Cannot open a client instance more than once.z9Cannot reopen a client instance, once it has been closed.)
r—   rJ   rM   rN   rO   r7  r9  Ú	__enter__r;  r�  )rY   Úmsgr(  s      rF   r   zClient.__enter__ü  s    € Ø�;‰;œ+×.Ñ.Ò.ä×"Ñ"Ð$SÜ×"Ñ"ØOðð
 �k‰kñˆCô ˜sÓ#Ð#ä!×(Ñ(ˆŒà�‰×!Ñ!Ô#ØŸ™×,Ñ,Ó.ò 	&ˆIØÑ$Ø×#Ñ#Õ%ð	&ð ˆrE   c                óÒ   — t         j                  | _        | j                  j	                  |||«       | j
                  j                  «       D ]  }|€Œ|j	                  |||«       Œ y rS   )rJ   rO   r—   r9  Ú__exit__r;  r�  )rY   Úexc_typeÚ	exc_valueÚ	tracebackr(  s        rF   r£  zClient.__exit__  s]   € ô "×(Ñ(ˆŒà�‰× Ñ  ¨9°iÔ@ØŸ™×,Ñ,Ó.ò 	CˆIØÑ$Ø×"Ñ" 8¨Y¸	ÕBñ	CrE   ),r}   r  r~   r  r   r  r€   r  r"  r1   r#  úCertTypes | Noner$  r  r%  r  r®   úProxyTypes | Noner©   r  r&  z0None | typing.Mapping[str, BaseTransport | None]r�   r/   r‚   r  r'  r   rƒ   r  r„   r  r…   r0   r(  úBaseTransport | Noner)  ú'typing.Callable[..., typing.Any] | Noner†   r  r‡   r  rm   rn   )r"  r1   r#  r§  r$  r  r%  r  r'  r   r(  r©  r)  rª  r†   r  rm   r   )r®   r   r"  r1   r#  r§  r$  r  r%  r  r'  r   r†   r  rm   r   )r£   r2   rm   r   ©rÓ   r¨   r£   r0   rÈ   r  rÉ   r  rÊ   r  rË   r  r~   r  r   r  r€   r  r}   r  r‚   úbool | UseClientDefaultr�   r  rÌ   r  rm   r   )rÓ   r¨   r£   r0   rÈ   r  rÉ   r  rÊ   r  rË   r  r~   r  r   r  r€   r  r}   r  r‚   r¬  r�   r  rÌ   r  rm   ztyping.Iterator[Response]©
rŠ   r   rZ   r  r}   r  r‚   r¬  rm   r   ©
rŠ   r   r}   r	   r‚   r  r^  úlist[Response]rm   r   ©rŠ   r   r‚   r  r^  r¯  rm   r   ©rŠ   r   rm   r   ©r£   r0   r~   r  r   r  r€   r  r}   úAuthTypes | UseClientDefaultr‚   r¬  r�   r  rÌ   r  rm   r   ©r£   r0   rÈ   r  rÉ   r  rÊ   r  rË   r  r~   r  r   r  r€   r  r}   r³  r‚   r¬  r�   r  rÌ   r  rm   r   ro   )rY   r9   rm   r9   ©NNN©r¤  ztype[BaseException] | Noner¥  zBaseException | Noner¦  zTracebackType | Nonerm   rn   )r@   rA   rB   rC   r   r   r   r]   r8  r:  rM  r  rŠ   r   rZ   rU  r_  rg  rp  r“   r‡  rŠ  rŽ  r’  r–  rš  rk   r   r£  Ú__classcell__©r@  s   @rF   r:   r:   4  sh  ø„ ñ3ðp "&Ø)-Ø&*Ø&*Ø"Ø!%ØØØ#'Ø'+ØEIØ 6Ø!&Ø'Ø2ØEIØØ*.Ø7;ØØ@Gñ/`:ð ð`:ð 'ð	`:ð
 $ð`:ð $ð`:ð ð`:ð ð`:ð ð`:ð ð`:ð !ð`:ð %ð`:ð Cð`:ð ð`:ð ð`:ð  ð!`:ð" ð#`:ð$ Cð%`:ð& ð'`:ð( (ð)`:ð* 5ð+`:ð, ð-`:ð. >ð/`:ð0 
õ1`:ðH #Ø!%ØØØ'Ø*.Ø7;Øð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð (ð
ð 5ð
ð ð
ð 
ó
ð: #Ø!%ØØØ'Øð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð ð
ð ð
ð 
ó
ó(	ð  *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø4FØ4FØ3EØ/3ñ6Pàð6Pð ð6Pð
 'ð6Pð !ð6Pð #ð6Pð  ð6Pð 'ð6Pð $ð6Pð $ð6Pð 2ð6Pð 2ð6Pð 1ð6Pð -ð6Pð  
ó!6Pðp ð *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø4FØ4FØ3EØ/3ñ1àð1ð ð1ð
 'ð1ð !ð1ð #ð1ð  ð1ð 'ð1ð $ð1ð $ð1ð 2ð1ð 2ð1ð 1ð1ð -ð1ð  
#ò!1ó ð1ðn Ø4FØ4Fñ/àð/ð ð	/ð
 2ð/ð 2ð/ð 
ó/ðb àð ð ð ð ð	 ð
  ð ð 
ó ðD#àð#ð ð#ð  ð	#ð
 
ó#óJ"ðP *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ó:
&óð( 04Ø*.Ø*.ð	Cà,ðCð (ðCð (ð	Cð
 
÷CrE   c                  óT  ‡ — e Zd ZdZdddddddddddedeedddddddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 dˆ fd„Zddddedddf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d d	„Zddddedf	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d!d
„Z	d"d„Z
dddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d#d„Zedddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d$d„«       Zdeedœ	 	 	 	 	 	 	 	 	 d%d„Z	 	 	 	 	 	 	 	 	 	 d&d„Z	 	 	 	 	 	 	 	 d'd„Zd(d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d)d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d+d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d+d„Zdddddddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d+d„Zdddeeeddœ	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 	 d*d„Zd,d„Zd-d„Z	 	 	 d.	 	 	 	 	 	 	 d/d„Zˆ xZS )0r=   a»	  
    An asynchronous HTTP client, with connection pooling, HTTP/2, redirects,
    cookie persistence, etc.

    It can be shared between tasks.

    Usage:

    ```python
    >>> async with httpx.AsyncClient() as client:
    >>>     response = await client.get('https://example.org')
    ```

    **Parameters:**

    * **auth** - *(optional)* An authentication class to use when sending
    requests.
    * **params** - *(optional)* Query parameters to include in request URLs, as
    a string, dictionary, or sequence of two-tuples.
    * **headers** - *(optional)* Dictionary of HTTP headers to include when
    sending requests.
    * **cookies** - *(optional)* Dictionary of Cookie items to include when
    sending requests.
    * **verify** - *(optional)* SSL certificates (a.k.a CA bundle) used to
    verify the identity of requested hosts. Either `True` (default CA bundle),
    a path to an SSL certificate file, an `ssl.SSLContext`, or `False`
    (which will disable verification).
    * **cert** - *(optional)* An SSL certificate used by the requested host
    to authenticate the client. Either a path to an SSL certificate file, or
    two-tuple of (certificate file, key file), or a three-tuple of (certificate
    file, key file, password).
    * **http2** - *(optional)* A boolean indicating if HTTP/2 support should be
    enabled. Defaults to `False`.
    * **proxy** - *(optional)* A proxy URL where all the traffic should be routed.
    * **proxies** - *(optional)* A dictionary mapping HTTP protocols to proxy
    URLs.
    * **timeout** - *(optional)* The timeout configuration to use when sending
    requests.
    * **limits** - *(optional)* The limits configuration to use.
    * **max_redirects** - *(optional)* The maximum number of redirect responses
    that should be followed.
    * **base_url** - *(optional)* A URL to use as the base when building
    request URLs.
    * **transport** - *(optional)* A transport class to use for sending requests
    over the network.
    * **app** - *(optional)* An ASGI application to send requests to,
    rather than sending actual network requests.
    * **trust_env** - *(optional)* Enables or disables usage of environment
    variables for configuration.
    * **default_encoding** - *(optional)* The default encoding to use for decoding
    response text, if no charset information is included in a response Content-Type
    header. Set to a callable for automatic character set detection. Default: "utf-8".
    NTFrz   r{   r!  c               ó&  •— t         ‰| �  |||||||||||¬«       |r	 dd l}|
r)d}t	        j
                  |t        «       |	rt        d«      ‚|rd}t	        j
                  |t        «       |xr |d u }| j                  |
xs |	|«      }| j                  ||||||||¬«      | _
        |j                  «       D ��	ci c]+  \  }}	t        |«      |	€d n| j                  |	||||||¬«      “Œ- c}	}| _        |�F| j                  j                  |j                  «       D ��ci c]  \  }}t        |«      |“Œ c}}«       t!        t#        | j                  j                  «       «      «      | _        y # t        $ r t        d«      d ‚w xY wc c}	}w c c}}w )	Nr|   r   r+  r,  r-  zhThe 'app' shortcut is now deprecated. Use the explicit style 'transport=ASGITransport(app=...)' instead.r.  r/  r0  r=  s                              €rF   r]   zAsyncClient.__init__S  sá  ø€ ô4 	‰ÑØØØØØØ-Ø'Ø#ØØØ-ð 	ô 	
ñ ðÛñ ð4ð ô �M‰M˜'Ô#5Ô6ÙÜ"Ð#OÓPÐPáðVð ô �M‰M˜'Ô#5Ô6à%Ò;¨)°tÐ*;ÐØ×'Ñ'¨Ò(8°5Ð:KÓLˆ	à×.Ñ.ØØØØØØØØð /ó 	
ˆŒð. (Ÿo™oÓ/÷E
ñ ��Uô �s‹OØˆ}ñ "à×+Ñ+ØØØØØØØ#ð ,ó ñ
óE
ˆŒð ÐØ�L‰L×ÑØBHÇ,Á,Ã.×Q±°°Y”˜C“ )Ñ+ÓQôô œF 4§<¡<×#5Ñ#5Ó#7Ó8Ó9ˆ�øôm ò Ü!ðSóð ððüóHE
ùó  Rs   ŸE. Â;0FÄF
Å.Fc	                óH   — |�|S |�t        |¬«      S t        ||||||¬«      S rB  )r   r   rC  s	            rF   r8  zAsyncClient._init_transport¶  s?   € ð Ð ØÐàˆ?Ü  SÔ)Ð)ä!ØØØØØØô
ð 	
rE   c           	     ó&   — t        |||||||¬«      S rE  )r   rF  s           rF   r:  z!AsyncClient._init_proxy_transportÐ  s&   € ô "ØØØØØØØô
ð 	
rE   c                ó¨   — | j                   j                  «       D ]*  \  }}|j                  |«      sŒ|€| j                  c S |c S  | j                  S rH  rI  rK  s       rF   rM  zAsyncClient._transport_for_urlä  rN  rE   rO  c             ƒ  óº   K  — |	�d}t        j                  |t        «       | j                  |||||||||	||¬«      }| j	                  ||
|¬«      ƒ d{  –—† S 7 Œ­w)a±  
        Build and send a request.

        Equivalent to:

        ```python
        request = client.build_request(...)
        response = await client.send(request, ...)
        ```

        See `AsyncClient.build_request()`, `AsyncClient.send()`
        and [Merging of configuration][0] for how the various parameters
        are merged with client-level configuration.

        [0]: /advanced/#merging-of-configuration
        NrQ  rR  rS  rT  rV  s                   rF   rŠ   zAsyncClient.requestï  s   è ø€ ðD ÐðCð ô
 �M‰M˜'Ô#5Ô6à×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð —Y‘Y˜w¨TÐDT�YÓU×UÐUÐUús   ‚AAÁAÁAc              óþ   K  — | j                  |||||||||	||¬«      }| j                  ||
|d¬«      ƒ d{  –—† }	 |­–— |j                  «       ƒ d{  –—†  y7 Œ#7 Œ# |j                  «       ƒ d{  –—†7   w xY w­wrX  )rÔ   rU  rw   rY  s                   rF   rZ   zAsyncClient.stream(  s™   è ø€ ð8 ×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð Ÿ™ØØØ-Øð	 #ó 
÷ 
ˆð	$Ø‹Nà—/‘/Ó#×#Ñ#ð
øð $ù�(—/‘/Ó#×#Ò#üsD   ‚5A=·A¸A=½A ÁA=ÁAÁA=ÁA=ÁA:Á3A6Á4A:Á:A=rZ  c             ƒ  ó¸  K  — | j                   t        j                  k(  rt        d«      ‚t        j                  | _         t        |t        «      r| j                  n|}| j                  ||«      }| j                  |||g ¬«      ƒ d{  –—† }	 |s|j                  «       ƒ d{  –—†  |S 7 Œ!7 Œ# t        $ r }|j                  «       ƒ d{  –—†7   |‚d}~ww xY w­w)aˆ  
        Send a request.

        The request is sent as-is, unmodified.

        Typically you'll want to build one with `AsyncClient.build_request()`
        so that any client-level configuration is merged into the request,
        but passing an explicit `httpx.Request()` is supported as well.

        See also: [Request instances][0]

        [0]: /advanced/#request-instances
        r\  r]  N)r—   rJ   rO   r7  rN   r¦   r?   r‚   rê   r_  Úareadra  rw   rb  s          rF   rU  zAsyncClient.send\  sÜ   è ø€ ð* �;‰;œ+×,Ñ,Ò,ÜÐVÓWÐWä!×(Ñ(ˆŒô Ð*Ô,<Ô=ð ×!Ò!à!ð 	ð ×'Ñ'¨°Ó6ˆà×1Ñ1ØØØ-Øð	 2ó 
÷ 
ˆð	ÙØ—n‘nÓ&×&Ð&àˆOð
øð 'ùô ò 	Ø—/‘/Ó#×#Ñ#ØˆIûð	üsT   ‚BCÂB*Â	CÂB. Â#B,Â$B. Â)CÂ,B. Â.	CÂ7CÃ
CÃCÃCÃCc              ƒ  ó>  K  — |j                  |«      }	 |j                  «       ƒ d {  –—† }	 | j                  |||¬«      ƒ d {  –—† }	 	 |j                  |«      ƒ d {  –—† }t        |«      |_        |j                  «       ƒ d {  –—†  |}|j                  |«       Œs7 Œx7 Œ]7 ŒD# t        $ r |cY |j                  «       ƒ d {  –—†7   S w xY w7 ŒH# t        $ r }|j                  «       ƒ d {  –—†7   |‚d }~ww xY w# |j                  «       ƒ d {  –—†7   w xY w­wrd  )Úasync_auth_flowÚ	__anext__rg  ÚasendÚStopAsyncIterationrw   r’   r^  rÁ  ri  ra  rj  s	            rF   r_  zAsyncClient._send_handling_auth�  s  è ø€ ð ×(Ñ(¨Ó1ˆ	ð	%Ø%×/Ñ/Ó1×1ˆGàØ!%×!>Ñ!>ØØ%5Ø#ð "?ó "÷ �ð
ð(Ø-6¯_©_¸XÓ-F×'F˜ô (,¨G£}�HÔ$Ø"Ÿ.™.Ó*×*Ð*Ø*�GØ—N‘N 8Ô,ð ð 2øðøð (GùÜ-ò (Ø'™ð ×"Ñ"Ó$×$Ò$ð(úð +ùô %ò Ø"Ÿ/™/Ó+×+Ñ+Ø�Iûðûð ×"Ñ"Ó$×$Ò$üs¼   ‚D•C? ¨B!©C? ÁB#ÁC? ÁB' Á B%Á!B' Á%#C ÂCÂ	C Â C? Â#C? Â%B' Â'CÂ2C Â3DÃC	ÃDÃCÃC Ã	C<ÃC7Ã/C2Ã0C7Ã7C<Ã<C? Ã?DÄDÄDÄDc              ƒ  ó:  K  — 	 t        |«      | j                  kD  rt        d|¬«      ‚| j                  d   D ]  } ||«      ƒ d {  –—†  Œ | j	                  |«      ƒ d {  –—† }	 | j                  d   D ]  } ||«      ƒ d {  –—†  Œ t        |«      |_        |j                  s|S | j                  ||«      }||gz   }|r|j                  «       ƒ d {  –—†  n	||_
        |S 	 Œã7 Œ 7 Œ‡7 Œf7 Œ# t        $ r }|j                  «       ƒ d {  –—†7   |‚d }~ww xY w­wrn  )ro  rƒ   r   r”   rp  r’   r^  rq  rð   rÁ  rl  ra  rw   rr  s          rF   rg  z$AsyncClient._send_handling_redirects¯  s8  è ø€ ð Ü�7‹|˜d×0Ñ0Ò0Ü&Ø9À7ôð ð ×)Ñ)¨)Ñ4ò $�Ù˜7“m×#Ñ#ð$ð "×6Ñ6°wÓ?×?ˆHðØ ×-Ñ-¨jÑ9ò )�DÙ˜x›.×(Ñ(ð)ô $(¨£=�Ô à×5Ò5Ø#�Oà×6Ñ6°wÀÓI�Ø! X JÑ.�á#Ø"Ÿ.™.Ó*×*Ñ*à,3�HÔ)Ø#�Oð +ð/ ð $øà?øð )øð +ùô
 !ò Ø—o‘oÓ'×'Ñ'Ø�	ûðüs„   ‚ADÁC'ÁDÁ!C)Á"DÁ'C/ ÂC+Â#C/ Â(DÂ)-C/ ÃC-ÃC/ Ã$DÃ)DÃ+C/ Ã-C/ Ã/	DÃ8DÄDÄDÄDÄDc              ƒ  óÀ  K  — | j                  |j                  «      }t        «       }|j                  «       ƒ d{  –—†  t	        |j
                  t        «      st        d«      ‚t        |¬«      5  |j                  |«      ƒ d{  –—† }ddd«       t	        j
                  t        «      sJ ‚||_
        t        |j
                  ||¬«      |_        | j                  j                  |«       | j                  |_        t         j#                  d|j$                  |j                  |j&                  |j(                  |j*                  «       |S 7 �Œ7 ŒÉ# 1 sw Y   ŒÈxY w­w)ru  Nz?Attempted to send an sync request with an AsyncClient instance.rü   rv  rw  )rM  r£   r4   Úasync_startr¦   rZ   r"   r7  r   Úhandle_async_requestrŠ   rq   r€   rz  r–   r‡   r{  r|  rÓ   r}  rõ   r~  r  s        rF   rp  z AsyncClient._send_single_requestÕ  s+  è ø€ ð ×+Ñ+¨G¯K©KÓ8ˆ	Ü“ˆØ×ÑÓ!×!Ð!ä˜'Ÿ.™.¬/Ô:ÜØQóð ô  WÔ-ñ 	EØ&×;Ñ;¸GÓD×DˆH÷	Eô ˜(Ÿ/™/¬?Ô;Ð;Ð;Ø"ˆÔÜ*Ø�O‰O h°eô
ˆŒð 	�‰×$Ñ$ XÔ.Ø$(×$:Ñ$:ˆÔ!ä�‰Ø,Ø�N‰NØ�K‰KØ×!Ñ!Ø× Ñ Ø×"Ñ"ô	
ð ˆð7 	"ùð Eø÷	Eð 	Eüs:   ‚9E»E¼5EÁ1EÂEÂEÂCEÅEÅEÅEr€  c             ƒ  óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r‚  ró   r€  Nrü   rƒ  s	            rF   r“   zAsyncClient.getø  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úó   ‚' %¡'c             ƒ  óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r…  r†  r€  Nrü   rƒ  s	            rF   r‡  zAsyncClient.options  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úrÌ  c             ƒ  óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r‰  rò   r€  Nrü   rƒ  s	            rF   rŠ  zAsyncClient.head2  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úrÌ  c             ƒ  óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)rŒ  rô   rO  Nrü   r�  s                rF   rŽ  zAsyncClient.postO  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úó   ‚"+¤)¥+c             ƒ  óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)r�  r‘  rO  Nrü   r�  s                rF   r’  zAsyncClient.putt  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úrÐ  c             ƒ  óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)r”  r•  rO  Nrü   r�  s                rF   r–  zAsyncClient.patch™  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úrÐ  c             ƒ  óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r˜  r™  r€  Nrü   rƒ  s	            rF   rš  zAsyncClient.delete¾  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úrÌ  c              ƒ  ó2  K  — | j                   t        j                  k7  rrt        j                  | _         | j                  j	                  «       ƒ d{  –—†  | j
                  j                  «       D ]  }|€Œ|j	                  «       ƒ d{  –—†  Œ yy7 Œ@7 Œ
­wrœ  )r—   rJ   rO   r9  rw   r;  r�  )rY   r®   s     rF   rw   zAsyncClient.acloseÛ  s~   è ø€ ð �;‰;œ+×,Ñ,Ò,Ü%×,Ñ,ˆDŒKà—/‘/×(Ñ(Ó*×*Ð*ØŸ™×,Ñ,Ó.ò )�ØÑ$ØŸ,™,›.×(Ñ(ñ)ð	 -ð +øð )ús*   ‚ABÁBÁ#BÁ7BÂ
BÂ	BÂBc              ƒ  ó¦  K  — | j                   t        j                  k7  r:t        j                  dt        j                  di| j                      }t        |«      ‚t        j                  | _         | j                  j                  «       ƒ d {  –—†  | j                  j                  «       D ]  }|€Œ|j                  «       ƒ d {  –—†  Œ | S 7 Œ@7 Œ
­wrŸ  )
r—   rJ   rM   rN   rO   r7  r9  Ú
__aenter__r;  r�  )rY   r¡  r®   s      rF   rÖ  zAsyncClient.__aenter__ç  s»   è ø€ Ø�;‰;œ+×.Ñ.Ò.ä×"Ñ"Ð$SÜ×"Ñ"ØOðð
 �k‰kñˆCô ˜sÓ#Ð#ä!×(Ñ(ˆŒà�o‰o×(Ñ(Ó*×*Ð*Ø—\‘\×(Ñ(Ó*ò 	)ˆEØÑ Ø×&Ñ&Ó(×(Ñ(ð	)ð ˆð	 	+øð )ús*   ‚B
CÂCÂ#CÂ1CÃCÃ	CÃCc              ƒ  ó  K  — t         j                  | _        | j                  j	                  |||«      ƒ d {  –—†  | j
                  j                  «       D ]   }|€Œ|j	                  |||«      ƒ d {  –—†  Œ" y 7 ŒB7 Œ	­wrS   )rJ   rO   r—   r9  Ú	__aexit__r;  r�  )rY   r¤  r¥  r¦  r®   s        rF   rØ  zAsyncClient.__aexit__ù  sx   è ø€ ô "×(Ñ(ˆŒà�o‰o×'Ñ'¨°)¸YÓG×GÐGØ—\‘\×(Ñ(Ó*ò 	FˆEØÑ Ø—o‘o h°	¸9ÓE×EÑEñ	Fð 	Høð Fús'   ‚6A?¸A;¹#A?ÁA?Á3A=Á4A?Á=A?),r}   r  r~   r  r   r  r€   r  r"  r1   r#  r§  r$  r  r%  r  r®   r¨  r©   r  r&  z5None | typing.Mapping[str, AsyncBaseTransport | None]r�   r/   r‚   r  r'  r   rƒ   r  r„   zBNone | typing.Mapping[str, list[typing.Callable[..., typing.Any]]]r…   r0   r(  úAsyncBaseTransport | Noner)  rª  r†   r  r‡   r  rm   rn   )r"  r1   r#  r§  r$  r  r%  r  r'  r   r(  rÙ  r)  rª  r†   r  rm   r   )r®   r   r"  r1   r#  r§  r$  r  r%  r  r'  r   r†   r  rm   r   )r£   r2   rm   r   r«  )rÓ   r¨   r£   r0   rÈ   r  rÉ   r  rÊ   r  rË   r  r~   r  r   r  r€   r  r}   r³  r‚   r¬  r�   r  rÌ   r  rm   ztyping.AsyncIterator[Response]r­  r®  r°  r±  )r£   r0   r~   r  r   r  r€   r  r}   r  r‚   r¬  r�   r  rÌ   r  rm   r   r²  r´  ro   )rY   r<   rm   r<   rµ  r¶  )r@   rA   rB   rC   r   r   r   r]   r8  r:  rM  r  rŠ   r   rZ   rU  r_  rg  rp  r“   r‡  rŠ  rŽ  r’  r–  rš  rw   rÖ  rØ  r·  r¸  s   @rF   r=   r=     sh  ø„ ñ4ðr "&Ø)-Ø&*Ø&*Ø"Ø!%ØØØ#'Ø'+ØJNØ 6Ø!&Ø'Ø2àJNØØ/3Ø7;ØØ@Gñ1a:ð ða:ð 'ð	a:ð
 $ða:ð $ða:ð ða:ð ða:ð ða:ð ða:ð !ða:ð %ða:ð Hða:ð ða:ð ða:ð  ð!a:ð" ð#a:ð$Hð%a:ð( ð)a:ð* -ð+a:ð, 5ð-a:ð. ð/a:ð0 >ð1a:ð2 
õ3a:ðJ #Ø!%ØØØ'Ø/3Ø7;Øð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð -ð
ð 5ð
ð ð
ð 
ó
ð: #Ø!%ØØØ'Øð
àð
ð ð
ð ð	
ð
 ð
ð ð
ð ð
ð ð
ð 
ó
ó(	ð  *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø4FØ4FØ3EØ/3ñ7Vàð7Vð ð7Vð
 'ð7Vð !ð7Vð #ð7Vð  ð7Vð 'ð7Vð $ð7Vð $ð7Vð 2ð7Vð 2ð7Vð 1ð7Vð -ð7Vð  
ó!7Vðr ð *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ1$àð1$ð ð1$ð
 'ð1$ð !ð1$ð #ð1$ð  ð1$ð 'ð1$ð $ð1$ð $ð1$ð +ð1$ð 2ð1$ð 1ð1$ð -ð1$ð  
(ò!1$ó ð1$ðn Ø4FØ4Fñ/àð/ð ð	/ð
 2ð/ð 2ð/ð 
ó/ðb %àð %ð ð %ð ð	 %ð
  ð %ð 
ó %ðD$àð$ð ð$ð  ð	$ð
 
ó$óL!ðN *.Ø&*Ø&*Ø4FØ4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð 2ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ðB *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø#'Ø%)Ø"&Ø)-Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ#
àð#
ð 'ð	#
ð
 !ð#
ð #ð#
ð  ð#
ð 'ð#
ð $ð#
ð $ð#
ð +ð#
ð 2ð#
ð 1ð#
ð -ð#
ð 
ó#
ðR *.Ø&*Ø&*Ø-?Ø4FØ3EØ/3ñ
àð
ð 'ð	
ð
 $ð
ð $ð
ð +ð
ð 2ð
ð 1ð
ð -ð
ð 
ó
ó:
)óð( 04Ø*.Ø*.ð	Fà,ðFð (ðFð (ð	Fð
 
÷FrE   )_Ú
__future__r   rh   ÚenumÚloggingÚtypingr4  Ú
contextlibr   r   Útypesr   r   rŽ   r	   r
   r   Ú_configr   r   r   r   r   r   Ú	_decodersr   Ú_exceptionsr   r   r   r   Ú_modelsr   r   r   r   Ú_status_codesr   Ú_transports.asgir   Ú_transports.baser   r   Ú_transports.defaultr   r    Ú_transports.wsgir!   Ú_typesr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   Ú_urlsr2   r3   Ú_utilsr4   r5   r6   r7   r8   ÚTypeVarr9   r<   r?   r  Ú	getLoggerr{  rÁ   r   Úkeysr¿   ÚEnumrJ   rQ   rq   ÚCallableÚAnyÚ	EventHookry   r:   r=   )r«   s   0rF   ú<module>ró     s}  ðÝ "ã Û Û Û Û ß :Ý å $ß 0Ñ 0÷÷ õ *÷ó ÷ 9Ó 8Ý  Ý +ß ?ß BÝ +÷÷ ÷ ÷ ó ÷$ $÷õ ð €F‡N�N�3˜hÔ'€Ø€F‡N�N�3˜mÔ,€÷ñ ñ( &Ó'Ð ð 
ˆ×	Ñ	˜7Ó	#€à˜[˜MÐ*€
Ø—)‘)Ø+Ð&×+Ñ+Ó-ÖCˆS°¸
Ó1B‚SÒCó€ô
�$—)‘)ô ô�nô ô.$�ô $ð. �O‰O˜C §¡˜OÑ,€	÷Pñ PôfeCˆZô eCôPhF�*õ hFùò}% Ds   Ä1
F.Ä<F.