Ë
    ,Œ:j#
 ã                   óV  — 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l.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z= ddl>m?Z?m@Z@ ddlAmBZBmCZCmDZDmEZEmFZF  ejŽ                  dd¬«      ZH ejŽ                  dd¬«      ZI G d„ d«      ZJ eJ«       ZK ej˜                  d«      ZMde
› �ZNdjŸ                   ej                   «       D � cg c]
  } | dk7  sŒ	| ‘Œ c} «      ZQ G d„ dej¤                  «      ZS G d „ d!e:«      ZT G d"„ d#e/«      ZUej¬                  d$ej®                  f   ZX G d%„ d&«      ZY G d'„ deY«      ZZ G d(„ deY«      Z[yc c} w ))é    N)Ú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Ú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__© ó    úO/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/httpx/_client.pyr=   r=   @   s   „ òrC   r=   Úhttpxzpython-httpx/z, Úidentityc                   ó   — e Zd ZdZdZdZy)ÚClientStater   é   é   N)r>   r?   r@   ÚUNOPENEDÚOPENEDÚCLOSEDrB   rC   rD   rH   rH   _   s   „ ð €Hð €Fð �FrC   rH   c                   óV   — e Zd ZdZdedededdfd„Zdej                  e
   f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.
    ÚstreamÚresponseÚtimerÚreturnNc                 ó.   — || _         || _        || _        y ©N©Ú_streamÚ	_responseÚ_timer©ÚselfrP   rQ   rR   s       rD   Ú__init__zBoundSyncStream.__init__s   ó   € ð ˆŒØ!ˆŒØˆ�rC   c              #   ó6   K  — | j                   D ]  }|–— Œ y ­wrU   ©rW   ©r[   Úchunks     rD   Ú__iter__zBoundSyncStream.__iter__z   s   è ø€ Ø—\‘\ò 	ˆEØ‹Kñ	ùs   ‚c                 ó¶   — | j                   j                  «       }t        j                  |¬«      | j                  _        | j                  j                  «        y ©N)Úseconds)rY   Úsync_elapsedÚdatetimeÚ	timedeltarX   ÚelapsedrW   Úclose©r[   re   s     rD   rj   zBoundSyncStream.close~   s;   € Ø—+‘+×*Ñ*Ó,ˆÜ!)×!3Ñ!3¸GÔ!Dˆ�‰ÔØ�‰×ÑÕrC   ©rS   N)r>   r?   r@   rA   r,   r   r2   r\   ÚtypingÚIteratorÚbytesrb   rj   rB   rC   rD   rO   rO   m   sF   „ ñð
Ø$ðØ08ðØAFðà	óð˜&Ÿ/™/¨%Ñ0ó ôrC   rO   c                   óV   — e Zd ZdZdedededdfd„Zdej                  e
   f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.
    rP   rQ   rR   rS   Nc                 ó.   — || _         || _        || _        y rU   rV   rZ   s       rD   r\   zBoundAsyncStream.__init__Š   r]   rC   c                óH   K  — | j                   2 3 d {  –—† }|­–— Œ7 Œ
6 y ­wrU   r_   r`   s     rD   Ú	__aiter__zBoundAsyncStream.__aiter__‘   s&   è ø€ ØŸ<™<÷ 	ð 	�%ØŒKð	ø™<ùs   ‚"� “” —"ž  "c              ƒ   óæ   K  — | j                   j                  «       ƒ d {  –—† }t        j                  |¬«      | j                  _        | j                  j                  «       ƒ d {  –—†  y 7 ŒL7 Œ­wrd   )rY   Úasync_elapsedrg   rh   rX   ri   rW   Úacloserk   s     rD   rw   zBoundAsyncStream.aclose•   sQ   è ø€ ØŸ™×1Ñ1Ó3×3ˆÜ!)×!3Ñ!3¸GÔ!Dˆ�‰ÔØ�l‰l×!Ñ!Ó#×#Ñ#ð 4øà#ús"   ‚A1 A-¡AA1Á'A/Á(A1Á/A1rl   )r>   r?   r@   rA   r!   r   r2   r\   rm   ÚAsyncIteratorro   rt   rw   rB   rC   rD   rq   rq   „   sH   „ ñð
Ø%ðØ19ðØBGðà	óð ×!5Ñ!5°eÑ!<ó ô$rC   rq   .c                   ó®  — e Zd Zddddededddddœdej                  e   dej                  e   d	ej                  e	   d
ej                  e
   dedededej                  ej                  eej                   e   f      dededej&                  eej(                  egef   f   fd„Zedefd„«       Zedefd„«       Zdedefd„Zdej                  e   dedej:                  eej                  e   f   fd„Zede fd„«       Z!e!jD                  deddfd„«       Z!edej:                  eej                   e   f   fd„«       Z#e#jD                  dej:                  eej                   e   f   ddfd„«       Z#edej                  e$   fd„«       Z%e%jD                  deddfd „«       Z%edefd!„«       Z&e&jD                  deddfd"„«       Z&ede'fd#„«       Z(e(jD                  d	e	ddfd$„«       Z(ede)fd%„«       Z*e*jD                  d
e
ddfd&„«       Z*ede+fd'„«       Z,e,jD                  deddfd(„«       Z,ddddddde-dd)œ	d*eded+ej                  e.   d,ej                  e/   d-ej                  e0   d.ej                  ejb                     dej                  e   d	ej                  e	   d
ej                  e
   dej&                  ee2f   d/ej                  e3   de4fd0„Z5dedefd1„Z6	 d>d
ej                  e
   dej                  e
   fd2„Z7	 d>d	ej                  e	   dej                  e	   fd3„Z8	 d>dej                  e   dej                  e   fd4„Z9dej                  e   dej                  e$   fd5„Z:e-fd6e4dej&                  ee2df   de$fd7„Z;d6e4d8e<de4fd9„Z=d6e4d8e<defd:„Z>d6e4d8e<defd;„Z?d6e4ded*ede'fd<„Z@d6e4d*edej                  ej&                  eAeBf      fd=„ZCy)?Ú
BaseClientNFÚ Túutf-8©ÚauthÚparamsÚheadersÚcookiesÚtimeoutÚfollow_redirectsÚmax_redirectsÚevent_hooksÚbase_urlÚ	trust_envÚdefault_encodingr~   r   r€   r�   r‚   rƒ   r„   r…   r†   r‡   rˆ   c                óÔ  — |€i n|}| j                  t        |	«      «      | _        | j                  |«      | _        t        |«      | _        t        |«      | _        t        |«      | _
        t        |«      | _        || _        || _        t        |j!                  dg «      «      t        |j!                  dg «      «      dœ| _        |
| _        || _        t(        j*                  | _        y ©NÚrequestrQ   )r‹   rQ   )Ú_enforce_trailing_slashr0   Ú	_base_urlÚ_build_authÚ_authr1   Ú_paramsr   r€   r   Ú_cookiesr   Ú_timeoutrƒ   r„   ÚlistÚgetÚ_event_hooksÚ
_trust_envÚ_default_encodingrH   rK   Ú_state)r[   r~   r   r€   r�   r‚   rƒ   r„   r…   r†   r‡   rˆ   s               rD   r\   zBaseClient.__init__Ÿ   sÆ   € ð" (Ð/‘b°[ˆà×5Ñ5´c¸(³mÓDˆŒà×%Ñ% dÓ+ˆŒ
Ü" 6Ó*ˆŒÜ˜wÓ'ˆŒÜ Ó(ˆŒÜ Ó(ˆŒØ 0ˆÔØ*ˆÔä˜KŸO™O¨I°rÓ:Ó;Ü˜[Ÿ_™_¨Z¸Ó<Ó=ñ
ˆÔð $ˆŒØ!1ˆÔÜ!×*Ñ*ˆ�rC   rS   c                 ó<   — | j                   t        j                  k(  S )z2
        Check if the client being closed
        )r˜   rH   rM   ©r[   s    rD   Ú	is_closedzBaseClient.is_closedÃ   s   € ð
 �{‰{œk×0Ñ0Ñ0Ð0rC   c                 ó   — | j                   S rU   )r–   rš   s    rD   r‡   zBaseClient.trust_envÊ   s   € à�‰ÐrC   Úurlc                 óz   — |j                   j                  d«      r|S |j                  |j                   dz   ¬«      S )Nó   /©Úraw_path)r¡   ÚendswithÚ	copy_with©r[   r�   s     rD   rŒ   z"BaseClient._enforce_trailing_slashÎ   s3   € Ø�<‰<× Ñ  Ô&ØˆJØ�}‰} c§l¡l°TÑ&9ˆ}Ó:Ð:rC   ÚproxiesÚallow_env_proxiesc                 óš  — |€>|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://)r4   Úitemsr   Ú
isinstanceÚdictÚstrr0   )r[   r¥   r¦   Úkeyr�   Únew_proxiesÚvalueÚproxys           rD   Ú_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 rU   )r’   rš   s    rD   r‚   zBaseClient.timeoutç   s   € à�}‰}ÐrC   c                 ó$   — t        |«      | _        y rU   )r   r’   )r[   r‚   s     rD   r‚   zBaseClient.timeoutë   ó   € ä Ó(ˆ�rC   c                 ó   — | j                   S rU   )r•   rš   s    rD   r…   zBaseClient.event_hooksï   s   € à× Ñ Ð rC   c                 ó|   — t        |j                  dg «      «      t        |j                  dg «      «      dœ| _        y rŠ   )r“   r”   r•   )r[   r…   s     rD   r…   zBaseClient.event_hooksó   s4   € ô
 ˜KŸO™O¨I°rÓ:Ó;Ü˜[Ÿ_™_¨Z¸Ó<Ó=ñ
ˆÕrC   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    rD   r~   zBaseClient.authü   s   € ð �z‰zÐrC   c                 ó0   — | j                  |«      | _        y rU   )rŽ   r�   ©r[   r~   s     rD   r~   zBaseClient.auth  s   € à×%Ñ% dÓ+ˆ�
rC   c                 ó   — | j                   S )zK
        Base URL to use when sending requests with relative URLs.
        )r�   rš   s    rD   r†   zBaseClient.base_url  s   € ð
 �~‰~ÐrC   c                 óB   — | j                  t        |«      «      | _        y rU   )rŒ   r0   r�   r¤   s     rD   r†   zBaseClient.base_url  s   € à×5Ñ5´c¸#³hÓ?ˆ�rC   c                 ó   — | j                   S )z@
        HTTP headers to include when sending requests.
        )Ú_headersrš   s    rD   r€   zBaseClient.headers  ó   € ð
 �}‰}ÐrC   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¼   )r[   r€   Úclient_headerss      rD   r€   zBaseClient.headers  sJ   € ä à!Ü$3×$:Ñ$:¸7Ó$CØ,Ü)×0Ñ0°Ó9ñ	ó
ˆð 	×Ñ˜gÔ&Ø&ˆ�rC   c                 ó   — | j                   S )zA
        Cookie values to include when sending requests.
        )r‘   rš   s    rD   r�   zBaseClient.cookies*  r½   rC   c                 ó$   — t        |«      | _        y rU   )r   r‘   )r[   r�   s     rD   r�   zBaseClient.cookies1  r³   rC   c                 ó   — | j                   S )zO
        Query parameters to include in the URL when sending requests.
        )r�   rš   s    rD   r   zBaseClient.params5  s   € ð
 �|‰|ÐrC   c                 ó$   — t        |«      | _        y rU   )r1   r�   )r[   r   s     rD   r   zBaseClient.params<  s   € ä" 6Ó*ˆ�rC   )	ÚcontentÚdataÚfilesÚjsonr   r€   r�   r‚   Ú
extensionsÚmethodrÉ   rÊ   rË   rÌ   rÍ   c       	         ó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Í   rB   )Ú
_merge_urlÚ_merge_headersÚ_merge_cookiesÚ_merge_queryparamsr©   r=   r‚   r   rª   Úas_dictr   )r[   rÎ   r�   rÉ   rÊ   rË   rÌ   r   r€   r�   r‚   rÍ   s               rD   Ú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ÜØØØØØØØØØØ!ô
ð 	
rC   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    )r0   Úis_relative_urlr†   r¡   Úlstripr£   )r[   r�   Ú	merge_urlÚmerge_raw_paths       rD   rÐ   zBaseClient._merge_urls  s\   € ô
 ˜“Hˆ	Ø×$Ò$ð "Ÿ]™]×3Ñ3°i×6HÑ6H×6OÑ6OÐPTÓ6UÑUˆNØ—=‘=×*Ñ*°NÐ*ÓCÐCØÐrC   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Ã   )r[   r�   Úmerged_cookiess      rD   rÒ   zBaseClient._merge_cookies‰  s4   € ñ �d—l’lÜ$ T§\¡\Ó2ˆNØ×!Ñ! 'Ô*Ø!Ð!ØˆrC   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Ã   )r[   r€   Úmerged_headerss      rD   rÑ   zBaseClient._merge_headers–  s&   € ô ! §¡Ó.ˆØ×Ñ˜gÔ&ØÐrC   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   r1   Úmerge)r[   r   Úmerged_queryparamss      rD   rÓ   zBaseClient._merge_queryparams¡  s2   € ñ �T—[’[Ü!,¨T¯[©[Ó!9ÐØ%×+Ñ+¨FÓ3Ð3ØˆrC   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     rD   rŽ   zBaseClient._build_auth­  s]   € Øˆ<ØÜ˜œeÔ$Ü d¨1¡g¸¸Q¹Ô@Ð@Ü˜œdÔ#ØˆKÜ�dŒ^Ü TÔ*Ð*äÐ7¸°xÐ@ÓAÐArC   r‹   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   )r[   r‹   r~   rä   rå   s        rD   Ú_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ˆrC   rQ   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�   rP   rÍ   )Ú_redirect_methodÚ_redirect_urlÚ_redirect_headersÚ_redirect_streamr   r�   r   rÍ   )r[   r‹   rQ   rÎ   r�   r€   rP   r�   s           rD   Ú_build_redirect_requestz"BaseClient._build_redirect_requestË  s�   € ð
 ×&Ñ& w°Ó9ˆØ× Ñ  ¨(Ó3ˆØ×(Ñ(¨°#°vÓ>ˆØ×&Ñ& w°Ó7ˆÜ˜$Ÿ,™,Ó'ˆÜØØØØØØ×)Ñ)ô
ð 	
rC   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)r[   r‹   rQ   rÎ   s       rD   rí   zBaseClient._redirect_methodÞ  st   € ð
 —‘ˆð ×Ñ¤5§?¡?Ò2°vÀÒ7GØˆFð ×Ñ¤5§;¡;Ò.°6¸VÒ3CØˆFð ×Ñ¤5×#:Ñ#:Ò:¸vÈÒ?OØˆFàˆrC   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€   r0   r   r   Úschemerþ   r£   r�   r×   Újoinrÿ   )r[   r‹   rQ   Úlocationr�   Úexcs         rD   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€   r6   r�   r5   ÚpopÚnetlocÚdecoderÎ   )r[   r‹   r�   rÎ   r€   s        rD   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Ô#àˆrC   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Î   rP   )r[   r‹   rÎ   s      rD   rð   zBaseClient._redirect_stream-  s#   € ð �W—^‘^Ò#¨°%ªØà�~‰~ÐrC   rU   )Dr>   r?   r@   r   r   rm   ÚOptionalr"   r'   r%   r$   r-   ÚboolÚintÚMappingr«   ÚListÚ	EventHookr.   ÚUnionÚCallablero   r\   Úpropertyr›   r‡   r0   rŒ   r&   ÚDictr   r°   r   r‚   Úsetterr…   r   r~   r†   r   r€   r   r�   r1   r   ÚUSE_CLIENT_DEFAULTr(   r)   r+   ÚAnyr=   r*   r   rÕ   rÐ   rÒ   rÑ   rÓ   rŽ   rë   r   rñ   rí   rî   rï   r,   r!   rð   rB   rC   rD   rz   rz   ž   s  „ ð ,0Ø37Ø04Ø04Ø 6Ø!&Ø2ð ØØØMTò"+ð �o‰o˜iÑ(ð"+ð —‘ Ñ0ð	"+ð
 —‘ Ñ-ð"+ð —‘ Ñ-ð"+ð ð"+ð ð"+ð ð"+ð —_‘_Ø�N‰N˜3 §¡¨IÑ 6Ð6Ñ7ñ
ð"+ð ð"+ð ð"+ð !Ÿ,™, s¨F¯O©O¸U¸GÀS¸LÑ,IÐ'IÑJó"+ðH ð1˜4ò 1ó ð1ð ð˜4ò ó ðð;¨3ð ;°3ó ;ð
%Ø—‘ |Ñ4ð%ØIMð%à	�‰�S˜&Ÿ/™/¨%Ñ0Ð0Ñ	1ó%ð( ð˜ò ó ðð ‡^�^ð)˜|ð )°ò )ó ð)ð ð!˜VŸ[™[¨¨f¯k©k¸)Ñ.DÐ)DÑEò !ó ð!ð ×Ñð
Ø!Ÿ;™; s¨F¯K©K¸	Ñ,BÐ'BÑCð
à	ò
ó ð
ð ð�f—o‘o dÑ+ò ó ðð 
‡[�[ð,˜ð , tò ,ó ð,ð ð˜#ò ó ðð ‡_�_ð@˜Hð @¨ò @ó ð@ð ð˜ò ó ðð ‡^�^ð
'˜{ð 
'¨tò 
'ó ð
'ð ð˜ò ó ðð ‡^�^ð)˜{ð )¨tò )ó ð)ð ð˜ò ó ðð ‡]�]ð+˜_ð +°ò +ó ð+ð 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø@RØ9=ò1
àð1
ð ð1
ð
 —‘ Ñ0ð1
ð �o‰o˜kÑ*ð1
ð �‰˜|Ñ,ð1
ð �o‰o˜fŸj™jÑ)ð1
ð —‘ Ñ0ð1
ð —‘ Ñ-ð1
ð —‘ Ñ-ð1
ð —‘˜lÐ,<Ð<Ñ=ð1
ð —O‘OÐ$5Ñ6ð1
ð 
ó1
ðf˜hð ¨3ó ð. 7;ñØ—‘ {Ñ3ðà	�‰˜Ñ	%óð 7;ñ	Ø—‘ {Ñ3ð	à	�‰˜Ñ	%ó	ð :>ñ
Ø—o‘o oÑ6ð
à	�‰˜Ñ	)ó
ð
B §¡°	Ñ :ð 
B¸v¿¹ÈtÑ?Tó 
Bð ASñàðð �l‰l˜9Ð&6¸Ð<Ñ=ðð 
ó	ð$
¨wð 
À(ð 
Èwó 
ð&¨ð ¸8ð Èó ð. Wð ¸ð ÀSó ð:¨ð °sð ÀCð ÈGó ð6	Øð	Ø(+ð	à	�‰˜Ÿ™ n°oÐ&EÑFÑ	Gô	rC   rz   c            -       ó  ‡ — e Zd ZdZddddddddddedeedddddddœdej                  e	   d	ej                  e
   d
ej                  e   dej                  e   dedej                  e   dededej                  e   dej                  ej"                  eef      dededededej                  ej"                  eej.                  e   f      dedej                  e   dej                  ej4                  dej6                  f      dedej8                  eej4                  egef   f   f(ˆ fd„Zddddedddfdedej                  e   dedededej                  e   dej                  ej4                  dej6                  f      dedefd„Zddddedfd e dedej                  e   dededededefd!„Z!d"e"defd#„Z#ddddddde$e$e$dd$œd%ed"ed&ej                  e%   d'ej                  e&   d(ej                  e'   d)ej                  ej6                     d	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(df   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd+„Z+e,ddddddde$e$e$dd$œd%ed"ed&ej                  e%   d'ej                  e&   d(ej                  e'   d)ej                  ej6                     d	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(df   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   dejZ                  e*   fd,„«       Z.de$e$d-œd.e/d/edej8                  e	e(df   dej8                  ee(f   de*f
d0„Z0d.e/de1ded1ej.                  e*   de*f
d2„Z2d.e/ded1ej.                  e*   de*fd3„Z3d.e/de*fd4„Z4ddde$e$e$dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd6„Z5ddde$e$e$dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd7„Z6ddde$e$e$dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd8„Z7ddddddde$e$e$dd$œd"ed&ej                  e%   d'ej                  e&   d(ej                  e'   d)ej                  ej6                     d	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd9„Z8ddddddde$e$e$dd$œd"ed&ej                  e%   d'ej                  e&   d(ej                  e'   d)ej                  ej6                     d	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd:„Z9ddddddde$e$e$dd$œd"ed&ej                  e%   d'ej                  e&   d(ej                  e'   d)ej                  ej6                     d	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd;„Z:ddde$e$e$dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej8                  e	e(f   dej8                  ee(f   dej8                  ee(f   d*ej                  e)   de*fd<„Z;dDd=„Z<d>e=de=fd?„Z>	 	 	 dEd@ej                  ej~                  e@      dAej                  e@   dBej                  eA   ddfdC„ZBˆ xZCS )Fr8   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).
    * **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".
    NTFr{   r|   ©r~   r   r€   r�   ÚverifyÚcertÚhttp1Úhttp2r¥   Úmountsr‚   rƒ   Úlimitsr„   r…   r†   Ú	transportÚappr‡   rˆ   r~   r   r€   r�   r  r  r  r  r¥   r  r‚   rƒ   r   r„   r…   r†   r!  r"  .r‡   rˆ   c                ó˜  •— t         ‰| �  |||||||||||¬«       |r	 dd l}|xr
 |d u xr |d u }| j	                  |	|«      }| 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   zuUsing http2=True, but the 'h2' package is not installed. Make sure to install httpx using `pip install httpx[http2]`.)r  r  r  r  r   r!  r"  r‡   ©r  r  r  r  r   r‡   ©Úsuperr\   Úh2ÚImportErrorr°   Ú_init_transportÚ
_transportr¨   r3   Ú_init_proxy_transportÚ_mountsrÃ   rª   Úsorted©r[   r~   r   r€   r�   r  r  r  r  r¥   r  r‚   rƒ   r   r„   r…   r†   r!  r"  r‡   rˆ   r(  r¦   Ú	proxy_mapr¬   r¯   Ú	__class__s                             €rD   r\   zClient.__init__l  s˜  ø€ ô4 	‰ÑØØØØØØ-Ø'Ø#ØØØ-ð 	ô 	
ñ ðÛð &ÒK¨#°¨+ÒK¸)ÀtÐ:KÐØ×'Ñ'¨Ð1BÓCˆ	à×.Ñ.ØØØØØØØØð /ó 	
ˆŒð, (Ÿo™oÓ/÷Q
ñ ��Uô �s‹OØˆ}ñ "à×+Ñ+ØØØØØØØ#ð ,ó ñ
óQ
ˆŒð ÐØ�L‰L×ÑØBHÇ,Á,Ã.×Q±°°Y”˜C“ )Ñ+ÓQôô œF 4§<¡<×#5Ñ#5Ó#7Ó8Ó9ˆ�øôM ò Ü!ðSóð ððüó&Q
ùó  Ró   ŸD' Á40E ÃE
Ä'D=rS   c	                 óH   — |�|S |�t        |¬«      S t        ||||||¬«      S ©N)r"  r%  )r    r   ©	r[   r  r  r  r  r   r!  r"  r‡   s	            rD   r*  zClient._init_transport¿  s?   € ð Ð ØÐàˆ?Ü  SÔ)Ð)äØØØØØØô
ð 	
rC   r¯   c           	      ó&   — t        |||||||¬«      S )N)r  r  r  r  r   r‡   r¯   )r   ©r[   r¯   r  r  r  r  r   r‡   s           rD   r,  zClient._init_proxy_transportÙ  s&   € ô ØØØØØØØô
ð 	
rC   r�   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¨   Úmatchesr+  ©r[   r�   Úpatternr!  s       rD   Ú_transport_for_urlzClient._transport_for_urlí  óS   € ð
 #'§,¡,×"4Ñ"4Ó"6ò 	KÑˆG�YØ�‰˜sÕ#Ø*3Ð*;�t—‘ÒJÀÒJð	Kð �‰ÐrC   ©rÉ   rÊ   rË   rÌ   r   r€   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
        z®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ƒ   )ÚwarningsÚwarnÚDeprecationWarningrÕ   Úsend)r[   rÎ   r�   rÉ   rÊ   rË   rÌ   r   r€   r�   r~   rƒ   r‚   rÍ   Úmessager‹   s                   rD   r‹   zClient.requestø  su   € ðB ÐðCð ô
 �M‰M˜'Ô#5Ô6à×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð �y‰y˜ tÐ>NˆyÓOÐOrC   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
        rB  T)r‹   r~   rƒ   rP   N)rÕ   rG  rj   ©r[   rÎ   r�   rÉ   rÊ   rË   rÌ   r   r€   r�   r~   rƒ   r‚   rÍ   r‹   rQ   s                   rD   rP   zClient.stream0  s}   è ø€ ð8 ×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð —9‘9ØØØ-Øð	 ó 
ˆð	ØŠNà�N‰NÕøˆH�N‰NÕüs   ‚2AµA
 ¹AÁ
AÁA©rP   r~   rƒ   r‹   rP   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˜   rH   rM   ÚRuntimeErrorrL   r©   r=   rƒ   rë   Ú_send_handling_authÚreadÚBaseExceptionrj   ©r[   r‹   rP   r~   rƒ   rQ   r  s          rD   rG  zClient.sendd  sº   € ð* �;‰;œ+×,Ñ,Ò,ÜÐVÓWÐWä!×(Ñ(ˆŒô Ð*Ô,<Ô=ð ×!Ò!à!ð 	ð ×'Ñ'¨°Ó6ˆà×+Ñ+ØØØ-Øð	 ,ó 
ˆð	ÙØ—‘”àˆOøäò 	Ø�N‰NÔØˆIûð	ús   ÂB Â	B8Â!B3Â3B8rP  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ƒ   rP  )Úsync_auth_flowÚnextÚ_send_handling_redirectsrG  ÚStopIterationrj   r“   rP  rS  ÚappendrT  ©	r[   r‹   r~   rƒ   rP  Ú	auth_flowrQ   Únext_requestr  s	            rD   rR  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‹   rQ   )Úlenr„   r   r•   Ú_send_single_requestr“   rP  Úhas_redirect_locationrñ   rS  r_  rT  rj   ©r[   r‹   rƒ   rP  ÚhookrQ   r  s          rD   rZ  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©rQ   rR   úHTTP Request: %s %s "%s %d %s")r>  r�   r2   Ú
sync_startr©   rP   r,   rQ  r   Úhandle_requestr‹   rO   r�   Úextract_cookiesr—   rˆ   ÚloggerÚinforÎ   Úhttp_versionrö   Úreason_phrase©r[   r‹   r!  rR   rQ   s        rD   rc  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ô   rs  rý   ©	r[   r�   r   r€   r�   r~   rƒ   r‚   rÍ   s	            rD   r”   z
Client.get   s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rC   c                ó6   — | j                  d||||||||¬«	      S )úZ
        Send an `OPTIONS` request.

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

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

        **Parameters**: See `httpx.request`.
        rõ   r@  rý   ©r[   r�   rÉ   rÊ   rË   rÌ   r   r€   r�   r~   rƒ   r‚   rÍ   s                rD   ÚpostzClient.postW  sA   € ð* �|‰|ØØØØØØØØØØØ-ØØ!ð ó 
ð 	
rC   c                ó>   — | j                  d|||||||||	|
||¬«      S )úU
        Send a `PUT` request.

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

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

        **Parameters**: See `httpx.request`.
        ÚDELETErs  rý   rv  s	            rD   ÚdeletezClient.deleteÆ  s5   € ð" �|‰|ØØØØØØØ-ØØ!ð ó 

ð 
	
rC   c                 ó  — | j                   t        j                  k7  rbt        j                  | _         | j                  j	                  «        | j
                  j                  «       D ]  }|€Œ|j	                  «        Œ yy©z.
        Close transport and proxies.
        N)r˜   rH   rM   r+  rj   r-  Úvalues)r[   r!  s     rD   rj   zClient.closeã  sd   € ð �;‰;œ+×,Ñ,Ò,Ü%×,Ñ,ˆDŒKà�O‰O×!Ñ!Ô#Ø!Ÿ\™\×0Ñ0Ó2ò &�	ØÑ(Ø—O‘OÕ%ñ&ð	 -rC   r[   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˜   rH   rK   rL   rM   rQ  r+  Ú	__enter__r-  r�  )r[   Úmsgr!  s      rD   r“  zClient.__enter__ï  s    € Ø�;‰;œ+×.Ñ.Ò.ä×"Ñ"Ð$SÜ×"Ñ"Ð$_ðð �k‰kñˆCô ˜sÓ#Ð#ä!×(Ñ(ˆŒà�‰×!Ñ!Ô#ØŸ™×,Ñ,Ó.ò 	&ˆIØÑ$Ø×#Ñ#Õ%ð	&ð ˆrC   Úexc_typeÚ	exc_valueÚ	tracebackc                 óÒ   — t         j                  | _        | j                  j	                  |||«       | j
                  j                  «       D ]  }|€Œ|j	                  |||«       Œ y rU   )rH   rM   r˜   r+  Ú__exit__r-  r�  )r[   r•  r–  r—  r!  s        rD   r™  zClient.__exit__ÿ  s]   € ô "×(Ñ(ˆŒà�‰× Ñ  ¨9°iÔ@ØŸ™×,Ñ,Ó.ò 	CˆIØÑ$Ø×"Ñ" 8¨Y¸	ÕBñ	CrC   rl   ©NNN)Dr>   r?   r@   rA   r   r   r   rm   r  r"   r'   r%   r$   r/   r#   r  r&   r  r«   r   r-   r   r  r  r  r.   r  r  r  ro   r\   r*  r   r,  r0   r>  r  r(   r)   r+   r=   r*   r   r‹   r   rn   rP   r   rG  r   rR  rZ  rc  r”   rz  r}  r�  r…  r‰  r�  rj   r7   r“  ÚTyperT  r   r™  Ú__classcell__©r1  s   @rD   r8   r8   9  sm  ø„ ñ0ðj ,0Ø37Ø04Ø04Ø"Ø+/ØØØ15ØFJØ 6Ø!&Ø'Ø2ð ØØ48ØAEØØMTò1Q:ð �o‰o˜iÑ(ðQ:ð —‘ Ñ0ð	Q:ð
 —‘ Ñ-ðQ:ð —‘ Ñ-ðQ:ð ðQ:ð �o‰o˜iÑ(ðQ:ð ðQ:ð ðQ:ð —‘ Ñ.ðQ:ð —‘ §¡¨s°MÐ/AÑ BÑCðQ:ð ðQ:ð ðQ:ð ðQ:ð  ð!Q:ð" —_‘_Ø�N‰N˜3 §¡¨IÑ 6Ð6Ñ7ñ
ð#Q:ð( ð)Q:ð* —?‘? =Ñ1ð+Q:ð, �_‰_˜VŸ_™_¨S°&·*±*¨_Ñ=Ñ>ð-Q:ð. ð/Q:ð0 !Ÿ,™, s¨F¯O©O¸U¸GÀS¸LÑ,IÐ'IÑJõ1Q:ðj #Ø+/ØØØ'Ø48ØAEØñ
àð
ð �o‰o˜iÑ(ð
ð ð	
ð
 ð
ð ð
ð —?‘? =Ñ1ð
ð �_‰_˜VŸ_™_¨S°&·*±*¨_Ñ=Ñ>ð
ð ð
ð 
ó
ð: #Ø+/ØØØ'Øñ
àð
ð ð
ð �o‰o˜iÑ(ð	
ð
 ð
ð ð
ð ð
ð ð
ð 
ó
ð(	 cð 	¨mó 	ð  48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø@RØASØ@RØ9=ò6Pàð6Pð ð6Pð
 —‘ Ñ0ð6Pð �o‰o˜kÑ*ð6Pð �‰˜|Ñ,ð6Pð �o‰o˜fŸj™jÑ)ð6Pð —‘ Ñ0ð6Pð —‘ Ñ-ð6Pð —‘ Ñ-ð6Pð �l‰l˜9Ð&6¸Ð<Ñ=ð6Pð !Ÿ,™, tÐ-=Ð'=Ñ>ð6Pð —‘˜lÐ,<Ð<Ñ=ð6Pð —O‘OÐ$5Ñ6ð6Pð  
ó!6Pðp ð 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø@RØASØ@RØ9=ò1àð1ð ð1ð
 —‘ Ñ0ð1ð �o‰o˜kÑ*ð1ð �‰˜|Ñ,ð1ð �o‰o˜fŸj™jÑ)ð1ð —‘ Ñ0ð1ð —‘ Ñ-ð1ð —‘ Ñ-ð1ð �l‰l˜9Ð&6¸Ð<Ñ=ð1ð !Ÿ,™, tÐ-=Ð'=Ñ>ð1ð —‘˜lÐ,<Ð<Ñ=ð1ð —O‘OÐ$5Ñ6ð1ð  
�‰˜Ñ	"ò!1ó ð1ðn Ø@RØASò/àð/ð ð	/ð
 �l‰l˜9Ð&6¸Ð<Ñ=ð/ð !Ÿ,™, tÐ-=Ð'=Ñ>ð/ð 
ó/ðb àð ð ð ð ð	 ð
 —‘˜XÑ&ð ð 
ó ðD#àð#ð ð#ð —‘˜XÑ&ð	#ð
 
ó#ðJ"¨Gð "¸ó "ðP 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ó:
&ð˜ð ˜aó ð$ AEØ48Ø48ñ	Cà—/‘/ &§+¡+¨mÑ"<Ñ=ðCð —?‘? =Ñ1ðCð —?‘? =Ñ1ð	Cð
 
÷CrC   c            -       óJ  ‡ — e Zd ZdZddddddddddedeedddddddœdej                  e	   d	ej                  e
   d
ej                  e   dej                  e   dedej                  e   dededej                  e   dej                  ej"                  eef      dededededej                  ej"                  eej.                  ej0                  dej2                  f      f      dedej                  e   dej                  ej0                  dej2                  f      dedej6                  eej0                  egef   f   f(ˆ fd„Zddddedddfdedej                  e   dedededej                  e   dej                  ej0                  dej2                  f      dedefd„Zddddedfd ededej                  e   dededededefd!„Z d"e!defd#„Z"ddddddde#e#e#dd$œd%ed"ed&ej                  e$   d'ej                  e%   d(ej                  e&   d)ej                  ej2                     d	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'df   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd+„Z*e+ddddddde#e#e#dd$œd%ed"ed&ej                  e$   d'ej                  e%   d(ej                  e&   d)ej                  ej2                     d	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   dejX                  e)   fd,„«       Z-de#e#d-œd.e.d/edej6                  e	e'df   dej6                  ee'f   de)f
d0„Z/d.e.de0ded1ej.                  e)   de)f
d2„Z1d.e.ded1ej.                  e)   de)fd3„Z2d.e.de)fd4„Z3ddde#e#e#dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'df   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd6„Z4ddde#e#e#dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd7„Z5ddde#e#e#dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd8„Z6ddddddde#e#e#dd$œd"ed&ej                  e$   d'ej                  e%   d(ej                  e&   d)ej                  ej2                     d	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd9„Z7ddddddde#e#e#dd$œd"ed&ej                  e$   d'ej                  e%   d(ej                  e&   d)ej                  ej2                     d	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd:„Z8ddddddde#e#e#dd$œd"ed&ej                  e$   d'ej                  e%   d(ej                  e&   d)ej                  ej2                     d	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd;„Z9ddde#e#e#dd5œd"ed	ej                  e
   d
ej                  e   dej                  e   dej6                  e	e'f   dej6                  ee'f   dej6                  ee'f   d*ej                  e(   de)fd<„Z:dDd=„Z;d>e<de<fd?„Z=	 	 	 dEd@ej                  ej|                  e?      dAej                  e?   dBej                  e@   ddfdC„ZAˆ xZBS )Fr;   aC	  
    An asynchronous HTTP client, with connection pooling, HTTP/2, redirects,
    cookie persistence, etc.

    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`.
    * **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".
    NTFr{   r|   r  r~   r   r€   r�   r  r  r  r  r¥   r  r‚   rƒ   r   r„   r…   .r†   r!  r"  r‡   rˆ   c                ó˜  •— t         ‰| �  |||||||||||¬«       |r	 dd l}|xr
 |d u xr |d u }| j	                  |	|«      }| 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 r$  r&  r/  s                             €rD   r\   zAsyncClient.__init__A  s˜  ø€ ô4 	‰ÑØØØØØØ-Ø'Ø#ØØØ-ð 	ô 	
ñ ðÛð &ÒK¨#°¨+ÒK¸)ÀtÐ:KÐØ×'Ñ'¨Ð1BÓCˆ	à×.Ñ.ØØØØØØØØð /ó 	
ˆŒð. (Ÿo™oÓ/÷V
ñ ��Uô �s‹OØˆ}ñ "à×+Ñ+ØØØØØØØ#ð ,ó ñ
óV
ˆŒð ÐØ�L‰L×ÑØBHÇ,Á,Ã.×Q±°°Y”˜C“ )Ñ+ÓQôô œF 4§<¡<×#5Ñ#5Ó#7Ó8Ó9ˆ�øôM ò Ü!ðSóð ððüó(V
ùó  Rr2  rS   c	                 óH   — |�|S |�t        |¬«      S t        ||||||¬«      S r4  )r   r   r5  s	            rD   r*  zAsyncClient._init_transport”  s?   € ð Ð ØÐàˆ?Ü  SÔ)Ð)ä!ØØØØØØô
ð 	
rC   r¯   c                 ó$   — t        ||||||¬«      S )N)r  r  r  r   r‡   r¯   )r   r7  s           rD   r,  z!AsyncClient._init_proxy_transport®  s#   € ô "ØØØØØØô
ð 	
rC   r�   c                 ó¨   — | j                   j                  «       D ]*  \  }}|j                  |«      sŒ|€| j                  c S |c S  | j                  S r9  r:  r<  s       rD   r>  zAsyncClient._transport_for_urlÁ  r?  rC   r@  rÎ   rÉ   rÊ   rË   rÌ   rÍ   c             ƒ   ó~   K  — | 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
        rB  rC  N)rÕ   rG  )r[   rÎ   r�   rÉ   rÊ   rË   rÌ   r   r€   r�   r~   rƒ   r‚   rÍ   r‹   s                  rD   r‹   zAsyncClient.requestÌ  s]   è ø€ ðB ×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð —Y‘Y˜w¨TÐDT�YÓU×UÐUÐUús   ‚4=¶;·=c               óþ   K  — | j                  |||||||||	||¬«      }| j                  ||
|d¬«      ƒ d{  –—† }	 |­–— |j                  «       ƒ d{  –—†  y7 Œ#7 Œ# |j                  «       ƒ d{  –—†7   w xY w­wrJ  )rÕ   rG  rw   rK  s                   rD   rP   zAsyncClient.streamü  s™   è ø€ ð8 ×$Ñ$ØØØØØØØØØØØ!ð %ó 
ˆð Ÿ™ØØØ-Øð	 #ó 
÷ 
ˆð	$Ø‹Nà—/‘/Ó#×#Ñ#ð
øð $ù�(—/‘/Ó#×#Ò#üsD   ‚5A=·A¸A=½A ÁA=ÁAÁA=ÁA=ÁA:Á3A6Á4A:Á:A=rL  r‹   rP   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
        rN  rO  N)r˜   rH   rM   rQ  rL   r©   r=   rƒ   rë   rR  ÚareadrT  rw   rU  s          rD   rG  zAsyncClient.send0  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rP  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rW  )Úasync_auth_flowÚ	__anext__rZ  ÚasendÚStopAsyncIterationrw   r“   rP  r¦  r\  rT  r]  s	            rD   rR  zAsyncClient._send_handling_autha  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ra  )rb  r„   r   r•   rc  r“   rP  rd  rñ   r¦  r_  rT  rw   re  s          rD   rZ  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)rh  Nz?Attempted to send an sync request with an AsyncClient instance.rý   ri  rj  )r>  r�   r2   Úasync_startr©   rP   r!   rQ  r   Úhandle_async_requestr‹   rq   r�   rm  r—   rˆ   rn  ro  rÎ   rp  rö   rq  rr  s        rD   rc  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rs  c             ƒ   óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)ru  rô   rs  Nrý   rv  s	            rD   r”   zAsyncClient.getÌ  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úó   ‚' %¡'c             ƒ   óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)rx  ry  rs  Nrý   rv  s	            rD   rz  zAsyncClient.optionsé  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úr±  c             ƒ   óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r|  ró   rs  Nrý   rv  s	            rD   r}  zAsyncClient.head  sC   è ø€ ð" —\‘\ØØØØØØØ-ØØ!ð "ó 

÷ 

ð 
	
ð 

úr±  c             ƒ   óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)r  rõ   r@  Nrý   r€  s                rD   r�  zAsyncClient.post#  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úó   ‚"+¤)¥+c             ƒ   óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)rƒ  r„  r@  Nrý   r€  s                rD   r…  zAsyncClient.putH  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úrµ  c             ƒ   óZ   K  — | j                  d|||||||||	|
||¬«      ƒ d{  –—† S 7 Œ­w)r‡  rˆ  r@  Nrý   r€  s                rD   r‰  zAsyncClient.patchm  sO   è ø€ ð* —\‘\ØØØØØØØØØØØ-ØØ!ð "ó 
÷ 
ð 	
ð 
úrµ  c             ƒ   óR   K  — | j                  d||||||||¬«	      ƒ d{  –—† S 7 Œ­w)r‹  rŒ  rs  Nrý   rv  s	            rD   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˜   rH   rM   r+  rw   r-  r�  )r[   r¯   s     rD   rw   zAsyncClient.aclose¯  s~   è ø€ ð �;‰;œ+×,Ñ,Ò,Ü%×,Ñ,ˆDŒKà—/‘/×(Ñ(Ó*×*Ð*ØŸ™×,Ñ,Ó.ò )�ØÑ$ØŸ,™,›.×(Ñ(ñ)ð	 -ð +øð )ús*   ‚ABÁBÁ#BÁ7BÂ
BÂ	BÂBr[   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˜   rH   rK   rL   rM   rQ  r+  Ú
__aenter__r-  r�  )r[   r”  r¯   s      rD   r»  zAsyncClient.__aenter__»  s»   è ø€ Ø�;‰;œ+×.Ñ.Ò.ä×"Ñ"Ð$SÜ×"Ñ"Ð$_ðð �k‰kñˆCô ˜sÓ#Ð#ä!×(Ñ(ˆŒà�o‰o×(Ñ(Ó*×*Ð*Ø—\‘\×(Ñ(Ó*ò 	)ˆEØÑ Ø×&Ñ&Ó(×(Ñ(ð	)ð ˆð	 	+øð )ús*   ‚B
CÂCÂ#CÂ1CÃCÃ	CÃCr•  r–  r—  c              ƒ   ó  K  — t         j                  | _        | j                  j	                  |||«      ƒ d {  –—†  | j
                  j                  «       D ]   }|€Œ|j	                  |||«      ƒ d {  –—†  Œ" y 7 ŒB7 Œ	­wrU   )rH   rM   r˜   r+  Ú	__aexit__r-  r�  )r[   r•  r–  r—  r¯   s        rD   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?rl   rš  )Cr>   r?   r@   rA   r   r   r   rm   r  r"   r'   r%   r$   r/   r#   r  r&   r  r«   r   r-   r   r  r  r  r  r.   r  ro   r\   r*  r   r,  r0   r>  r  r(   r)   r+   r=   r*   r   r‹   r   rx   rP   r   rG  r   rR  rZ  rc  r”   rz  r}  r�  r…  r‰  r�  rw   r:   r»  r›  rT  r   r½  rœ  r�  s   @rD   r;   r;     s„  ø„ ñ1ðl ,0Ø37Ø04Ø04Ø"Ø+/ØØØ15ØKOØ 6Ø!&Ø'Ø2ð ØØ9=ØAEØØMTò1Q:ð �o‰o˜iÑ(ðQ:ð —‘ Ñ0ð	Q:ð
 —‘ Ñ-ðQ:ð —‘ Ñ-ðQ:ð ðQ:ð �o‰o˜iÑ(ðQ:ð ðQ:ð ðQ:ð —‘ Ñ.ðQ:ð —‘ §¡¨sÐ4FÐ/FÑ GÑHðQ:ð ðQ:ð ðQ:ð ðQ:ð  ð!Q:ð" —_‘_Ø�N‰N˜3 §¡¨F¯O©O¸CÀÇÁ¸OÑ,LÑ MÐMÑNñ
ð#Q:ð( ð)Q:ð* —?‘?Ð#5Ñ6ð+Q:ð, �_‰_˜VŸ_™_¨S°&·*±*¨_Ñ=Ñ>ð-Q:ð. ð/Q:ð0 !Ÿ,™, s¨F¯O©O¸U¸GÀS¸LÑ,IÐ'IÑJõ1Q:ðj #Ø+/ØØØ'Ø9=ØAEØñ
àð
ð �o‰o˜iÑ(ð
ð ð	
ð
 ð
ð ð
ð —?‘?Ð#5Ñ6ð
ð �_‰_˜VŸ_™_¨S°&·*±*¨_Ñ=Ñ>ð
ð ð
ð 
ó
ð: #Ø+/ØØØ'Øñ
àð
ð ð
ð �o‰o˜iÑ(ð	
ð
 ð
ð ð
ð ð
ð ð
ð 
ó
ð&	 cð 	Ð.@ó 	ð  48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø@RØASØ@RØ9=ò.Vàð.Vð ð.Vð
 —‘ Ñ0ð.Vð �o‰o˜kÑ*ð.Vð �‰˜|Ñ,ð.Vð �o‰o˜fŸj™jÑ)ð.Vð —‘ Ñ0ð.Vð —‘ Ñ-ð.Vð —‘ Ñ-ð.Vð �l‰l˜9Ð&6¸Ð<Ñ=ð.Vð !Ÿ,™, tÐ-=Ð'=Ñ>ð.Vð —‘˜lÐ,<Ð<Ñ=ð.Vð —O‘OÐ$5Ñ6ð.Vð  
ó!.Vð` ð 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò1$àð1$ð ð1$ð
 —‘ Ñ0ð1$ð �o‰o˜kÑ*ð1$ð �‰˜|Ñ,ð1$ð �o‰o˜fŸj™jÑ)ð1$ð —‘ Ñ0ð1$ð —‘ Ñ-ð1$ð —‘ Ñ-ð1$ð �l‰l˜9Ð&6Ð6Ñ7ð1$ð !Ÿ,™, tÐ-=Ð'=Ñ>ð1$ð —‘˜lÐ,<Ð<Ñ=ð1$ð —O‘OÐ$5Ñ6ð1$ð  
×	Ñ	˜hÑ	'ò!1$ó ð1$ðn Ø@RØASò/àð/ð ð	/ð
 �l‰l˜9Ð&6¸Ð<Ñ=ð/ð !Ÿ,™, tÐ-=Ð'=Ñ>ð/ð 
ó/ðb %àð %ð ð %ð ð	 %ð
 —‘˜XÑ&ð %ð 
ó %ðD$àð$ð ð$ð —‘˜XÑ&ð	$ð
 
ó$ðL!°'ð !¸hó !ðN 48Ø04Ø04Ø@RØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6¸Ð<Ñ=ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ðB 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø-1Ø/3Ø,0Ø37Ø04Ø04Ø:LØASØ@RØ9=ò#
àð#
ð —‘ Ñ0ð	#
ð
 �o‰o˜kÑ*ð#
ð �‰˜|Ñ,ð#
ð �o‰o˜fŸj™jÑ)ð#
ð —‘ Ñ0ð#
ð —‘ Ñ-ð#
ð —‘ Ñ-ð#
ð �l‰l˜9Ð&6Ð6Ñ7ð#
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð#
ð —‘˜lÐ,<Ð<Ñ=ð#
ð —O‘OÐ$5Ñ6ð#
ð 
ó#
ðR 48Ø04Ø04Ø:LØASØ@RØ9=ò
àð
ð —‘ Ñ0ð	
ð
 —‘ Ñ-ð
ð —‘ Ñ-ð
ð �l‰l˜9Ð&6Ð6Ñ7ð
ð !Ÿ,™, tÐ-=Ð'=Ñ>ð
ð —‘˜lÐ,<Ð<Ñ=ð
ð —O‘OÐ$5Ñ6ð
ð 
ó
ó:
)ð˜qð  Qó ð$ AEØ48Ø48ñ	Fà—/‘/ &§+¡+¨mÑ"<Ñ=ðFð —?‘? =Ñ1ðFð —?‘? =Ñ1ð	Fð
 
÷FrC   )\rg   ÚenumÚloggingrm   rD  Ú
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.   r/   Ú_urlsr0   r1   Ú_utilsr2   r3   r4   r5   r6   ÚTypeVarr7   r:   r=   r  Ú	getLoggerrn  rÂ   r  ÚkeysrÀ   ÚEnumrH   rO   rq   r  r  r  rz   r8   r;   )r¬   s   0rD   ú<module>rÒ     sz  ðÛ Û Û Û Û ß :Ý å $ß 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Ñ,€	÷Xñ XôvQCˆZô QCôhIF�*õ IFùòe% Ds   Ä)
F&Ä4F&