+
    ~jȅ                    H   R t ^ RIHt ^ RIt^ RIt^ RIt^ RIHt ^ RIH	t	H
t
Ht ^ RIHt ^ RIHtHtHt ^RIHt ^RIHt ^R	IHt ^R
IHt ^RIHtHtHt ^RIH t H!t!H"t"H#t# ^RI$H%t%H&t&H't'H(t( ^RI)H*t*H+t+ ^RI,H-t-H.t.H/t/H0t0H1t1 ^RI2H3t3 ^RI4H5t5 ^RI6H7t7H8t8H9t9H:t:H;t;H<t<H=t=H>t>H?t?H@t@ ]'       d   ^ RIAHBtB ^ RICHDtDHEtE ^RIFHtG ^RIHHtH ]P                  R8X  d   ]P                  tKM]P
                  tK]3R R lltL]3R R lltM ! R R4      tN ! R R]N4      tOR  R! ltPR# )"z
requests.sessions
~~~~~~~~~~~~~~~~~

This module provides a Session object to manage and persist settings across
requests (cookies, auth, proxies).
)annotationsN)OrderedDict)	GeneratorMappingMutableMapping)	timedelta)TYPE_CHECKINGAnycast)to_native_string)is_prepared)HTTPAdapter)_basic_auth_str)	cookieliburljoinurlparse)RequestsCookieJarcookiejar_from_dictextract_cookies_to_jarmerge_cookies)ChunkedEncodingErrorContentDecodingErrorInvalidSchemaTooManyRedirects)default_hooksdispatch_hook)DEFAULT_REDIRECT_LIMITREDIRECT_STATIPreparedRequestRequestResponse)codes)CaseInsensitiveDict)
DEFAULT_PORTSdefault_headersget_auth_from_urlget_environ_proxiesget_netrc_authrequote_uriresolve_proxiesrewind_bodyshould_bypass_proxiesto_key_val_list)	CookieJar)SelfUnpack)_types)BaseAdapterwin32c               (    V ^8  d   QhRRRRRRRR/# )   request_settingr	   session_setting
dict_classtypereturn )formats   "f/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/requests/sessions.py__annotate__r=   L   s,      +.<@    c                D   Vf   V # V f   V# \        V\        4      '       d   \        V \        4      '       g   V # V! \        V4      4      pVP                  \        V 4      4       VP	                  4        UUu. uF  w  rEVe   K  VNK  	  pppV F  pW7 K  	  V# u uppi )zDetermines appropriate setting for a given request, taking into account
the explicit setting on that request, and the setting in the session. If a
setting is a dictionary, they will be merged together using `dict_class`
)
isinstancer   r,   updateitems)r5   r6   r7   merged_settingkv	none_keyskeys   &&&     r<   merge_settingrH   L   s      	?G,,OW1U1U @AN//:; "0!5!5!7E!7v1!7IE  	 Fs   9BBc               (    V ^8  d   QhRRRRRRRR/# )r4   request_hooksz_t.HooksTypesession_hooksr7   r8   r9   r:   )r;   s   "r<   r=   r=   l   s6     C CCC C 	Cr>   c                    Ve   VP                  R4      . 8X  d   V # V e   V P                  R4      . 8X  d   V# \        WV4      # )zProperly merges both requests and session hooks.

This is necessary because when request_hooks == {'response': []}, the
merge breaks Session hooks entirely.
response)getrH   )rJ   rK   r7   s   &&&r<   merge_hooksrO   l   sM      1 1* = C 1 1* = CzBBr>   c                      ] tR t^t$ R]R&   R]R&   R]R&   R R ltR	 R
 ltR R ltRR R lltR R lt	R R lt
R R ltRtR# )SessionRedirectMixinintmax_redirectsbool	trust_envr   cookiesc               $    V ^8  d   QhRRRRRR/# r4   requestr   kwargsr	   r9   r    r:   )r;   s   "r<   r=   !SessionRedirectMixin.__annotate__   s    LLOLsLxLr>   c                	    R # Nr:   )selfrY   rZ   s   &&,r<   sendSessionRedirectMixin.send   s    r>   c                    V ^8  d   QhRRRR/# )r4   respr    r9   z
str | Noner:   )r;   s   "r<   r=   r[      s       Z r>   c                    VP                   '       d1   VP                  R,          pVP                  R4      p\        VR4      # R# )z7Receives a Response. Returns a redirect URI or ``None``locationlatin1utf8N)is_redirectheadersencoder   )r^   rb   rd   s   && r<   get_redirect_target(SessionRedirectMixin.get_redirect_target   s>     ||J/H  x0H#Hf55r>   c               $    V ^8  d   QhRRRRRR/# )r4   old_urlstrnew_urlr9   rT   r:   )r;   s   "r<   r=   r[      s!     . . .s .t .r>   c                   \        V4      p\        V4      pVP                  VP                  8w  d   R# VP                  R8X  d6   VP                  R9   d%   VP                  R8X  d   VP                  R9   d   R# VP                  VP                  8g  pVP                  VP                  8g  p\        P
                  ! VP                  R4      R3pV'       g%   VP                  V9   d   VP                  V9   d   R# T;'       g    T# )zFDecide whether Authorization header should be removed when redirectingThttpNhttpsF)P   N)i  N)r   hostnameschemeportr#   rN   )r^   rm   ro   
old_parsed
new_parsedchanged_portchanged_schemedefault_ports   &&&     r<   should_strip_auth&SessionRedirectMixin.should_strip_auth   s    g&
g&
*"5"55 ':-!!W,;. "*//9#**j.?.??%))**;*;TBDI</</ --~-r>   Nc               @    V ^8  d   QhRRRRRRRRR	R
RRRRRRRRRR/
# )r4   rb   r    reqr   streamrT   timeout_t.TimeoutTypeverify_t.VerifyTypecert_t.CertTypeproxiesdict[str, str] | Noneyield_requestsadapter_kwargsr	   r9   zGenerator[Response, None, None]r:   )r;   s   "r<   r=   r[      sz     y yy y 	y
  y y y 'y y y 
)yr>   c	              +  \  "   . p
V P                  V4      p\        VP                  4      P                  pV'       Ed4   VP	                  4       pV
R,          Vn        V
P                  V4        VP                   \        VP
                  4      V P                  8  d   \        RV P                   R2VR7      hVP!                  4        VP#                  R4      '       d<   \        VP                  4      pRP%                  \'        VP(                  4      V.4      p\        V4      pVP                  R	8X  d   V'       d   VP+                  VR
7      pMVP                  '       d   VP                  pVP-                  4       pVP.                  '       g!   \1        VP                  \3        V4      4      pM\3        V4      p\'        V4      Vn        V P5                  W4       VP6                  \8        P:                  \8        P<                  39  d/   RpV F  pVP>                  PA                  VR4       K!  	  RVn!        VP>                  pVPA                  RR4       \E        RVPF                  4      p\I        VW!P                  4       \K        VV PL                  4       VPO                  V4       V PQ                  W4      pV PS                  W4       VPT                  RJ;'       d    RV9   ;'       g    RV9   pV'       d   \W        V4       TpV'       d   Vx  EK  V PX                  ! V3RVRVRVRVRVRR/V	B p\I        V PL                  WP                  4       V P                  V4      pVx  EK<  R#   \        \        \        3 d!    TP                  P                  RR7        EL.i ; i5i)zBReceives a Response. Returns a generator of Responses or Requests.:NNNF)decode_contentz	Exceeded z redirects.)rM   z//: )fragmentContent-LengthTransfer-EncodingNCookier-   r   r   r   r   r   allow_redirects)r   zContent-Typer   )-rj   r   urlr   copyhistoryappendcontentr   r   RuntimeErrorrawreadlenrS   r   close
startswithjoinr   ru   _replacegeturlnetlocr   r(   rebuild_methodstatus_coder!   temporary_redirectpermanent_redirectrh   popbodyr
   _cookiesr   r   rV   prepare_cookiesrebuild_proxiesrebuild_auth_body_positionr*   r_   )r^   rb   r   r   r   r   r   r   r   r   histr   previous_fragmentprepared_requestparsed_rurlparsedpurged_headersheaderrh   
cookie_jar
rewindables   &&&&&&&&&,           r<   resolve_redirects&SessionRedirectMixin.resolve_redirects   sP      "&&t,$SWW-66c"xxz  7DLKK4 4<< D$6$66& 2 23;?$ 
 JJL ~~d##&txx0hh 01C1C DcJK c]F"$):2CD$*OO!--/C
 ===dhhC(89!#&#3C#8  07 ((((( 
 "Y,F$,,00> -(, %&..GKK$'
 k+;+D+DEJ":sHH=*dll3,,Z8 **+;EG.5
 *88D   G+MM/Bg/M 
 ,- #C	yy	!	 $	 "		
 	 $	 %*	 %	 't||5ExxP ..t4
O  )*>M 4U34s\   ;N,/N,.M3 :A%N, AN,?$N,$-N,EN,0N,>N,A N,32N)%N,(N))N,c               $    V ^8  d   QhRRRRRR/# r4   r   r   rM   r    r9   Noner:   )r;   s   "r<   r=   r[   5  s$     4 4 /4;C4	4r>   c                `   VP                   p\        V4      '       g   Q h\        V4      '       g   Q hVP                  pVP                  pVP                  pRV9   d   V P	                  WV4      '       d   VR V P
                  '       d   \        V4      MRpVe   VP                  V4       R# R# )zWhen being redirected we may want to strip authentication from the
request to avoid leaking credentials. This method intelligently removes
and reapplies authentication where possible to avoid credential loss.
AuthorizationN)rY   _is_preparedrh   r   r|   rU   r'   prepare_auth)r^   r   rM   original_requestrh   original_urlr   new_auths   &&&     r<   r   !SessionRedirectMixin.rebuild_auth5  s     $++,----,----"**'++""g%$*@*@*S*S ( +/...>#&d))(3  r>   c               $    V ^8  d   QhRRRRRR/# )r4   r   r   r   r   r9   dict[str, str]r:   )r;   s   "r<   r=   r[   N  s(     " ")" '" 
	"r>   c                |   \        V4      '       g   Q hVP                  p\        VP                  4      P                  p\        WV P                  4      pRV9   d   VR  \        WT,          4      w  rgVP                  R4      '       g   V'       d   V'       d   \        Wg4      VR&   V#   \         d    RRrv LGi ; i)ap  This method re-evaluates the proxy configuration by considering the
environment variables. If we are redirected to a URL covered by
NO_PROXY, we strip the proxy configuration. Otherwise, we set missing
proxy keys for this URL (in case they were stripped by a previous
redirect).

This method also replaces the Proxy-Authorization header where
necessary.

:rtype: dict
zProxy-AuthorizationNrr   )r   rh   r   r   ru   r)   rU   r%   KeyErrorr   r   )r^   r   r   rh   ru   new_proxiesusernamepasswords   &&&     r<   r   $SessionRedirectMixin.rebuild_proxiesN  s      ,----"***../66%&6P G+-.	,!2;3F!GH   ))h8-<X-PG)*  	,!%th	,s    B* *B;:B;c               $    V ^8  d   QhRRRRRR/# r   r:   )r;   s   "r<   r=   r[   r  s$     ) ) /);C)	)r>   c                   VP                   pVP                  \        P                  8X  d
   VR8w  d   RpVP                  \        P                  8X  d
   VR8w  d   RpVP                  \        P
                  8X  d
   VR8X  d   RpW1n         R# )zrWhen being redirected we may want to change the method of the request
based on certain specs or browser behavior.
HEADGETPOSTN)methodr   r!   	see_otherfoundmoved)r^   r   rM   r   s   &&& r<   r   #SessionRedirectMixin.rebuild_methodr  su     "(( 5??2v7GF 5;;.6V3CF 5;;.6V3CF"(r>   r:   )FNTNNF)__name__
__module____qualname____firstlineno____annotations__r_   rj   r|   r   r   r   r   __static_attributes__r:   r>   r<   rQ   rQ      s=    OL(.@yv42"H) )r>   rQ   c                     ] tR tRt$ RtR]R&   R]R&   R]R&   R	]R
&   R]R&   R]R&   R]R&   R]R&   R]R&   R]R&   R]R&   R]R&   . RDOtR]R&   R R ltR R ltR  R! lt	R" R# lt
RER% R& lltRFR' R( lltR) R* ltR+ R, ltRGR- R. lltRFR/ R0 lltRFR1 R2 lltR3 R4 ltR5 R6 ltR7 R8 ltR9 R: ltR; R< ltR= R> ltR? R@ ltRA RB ltRCtR$# )HSessioni  aT  A Requests session.

Provides cookie persistence, connection-pooling, and configuration.

Basic Usage::

  >>> import requests
  >>> s = requests.Session()
  >>> s.get('https://httpbin.org/get')
  <Response [200]>

Or as a context manager::

  >>> with requests.Session() as s:
  ...     s.get('https://httpbin.org/get')
  <Response [200]>
zCaseInsensitiveDict[str]rh   _t.AuthTypeauthr   r   zdict[str, list[_t.HookType]]hookszMutableMapping[str, Any]paramsrT   r   r   r   r   r   rR   rS   rU   r   rV   z MutableMapping[str, BaseAdapter]adaptersz	list[str]	__attrs__c                   V ^8  d   QhRR/# r4   r9   r   r:   )r;   s   "r<   r=   Session.__annotate__  s     =- =-$ =-r>   c                	`   \        4       V n        R V n        / V n        \	        4       V n        / V n        RV n        RV n        R V n	        \        V n        RV n        \        / 4      V n        \        4       V n        V P#                  R\%        4       4       V P#                  R\%        4       4       R # )NFTzhttps://zhttp://)r$   rh   r   r   r   r   r   r   r   r   r   rS   rU   r   rV   r   r   mountr   r^   s   &r<   __init__Session.__init__  s     '( 	
  #_

    	 4  +2. $

:{}-

9km,r>   c                   V ^8  d   QhRR/# )r4   r9   r.   r:   )r;   s   "r<   r=   r     s      4 r>   c                	    V # r]   r:   r   s   &r<   	__enter__Session.__enter__  s    r>   c                    V ^8  d   QhRRRR/# )r4   argsr	   r9   r   r:   )r;   s   "r<   r=   r     s      c d r>   c                	&    V P                  4        R # r]   )r   )r^   r   s   &*r<   __exit__Session.__exit__  s    

r>   c                    V ^8  d   QhRRRR/# )r4   rY   r   r9   r   r:   )r;   s   "r<   r=   r     s     , ,w ,? ,r>   c                F   \        RVP                  4      p\        \        VP                  4      pVP                  ;'       g    / p\        V\        P                  4      '       g   \        V4      p\        \        \        4       V P                  4      V4      pVP                  pV P                  '       d&   V'       g   V P                  '       g   \        V4      p\        4       pVP                  VP!                  4       VVP"                  VP$                  VP&                  \)        VP*                  V P*                  \,        R7      \)        VP.                  V P.                  4      \)        W`P                  4      V\1        VP2                  V P2                  4      R7
       V# )aS  Constructs a :class:`PreparedRequest <PreparedRequest>` for
transmission and returns it. The :class:`PreparedRequest` has settings
merged from the :class:`Request <Request>` instance and those of the
:class:`Session`.

:param request: :class:`Request` instance to prepare with this
    session's settings.
:rtype: requests.PreparedRequest

_t.UriType)r7   )
r   r   filesdatajsonrh   r   r   rV   r   )r
   r   rn   r   rV   r@   r   r-   r   r   r   r   rU   r'   r   prepareupperr   r   r   rH   rh   r"   r   rO   r   )r^   rY   r   r   rV   merged_cookiesr   ps   &&      r<   prepare_requestSession.prepare_request  s*    <-c7>>*//''R '9#6#677)'2G '+-t||<g

 ||>>>$tyyy!#&D			<<>--!:M !=tYY/"gmmTZZ8 	 	
 r>   Nc          "     \    V ^8  d   QhRRRRRRRRR	R
RRRRRRRRRRRRRRRRRRRRRR R!R"/# )#r4   r   rn   r   r   r   _t.ParamsTyper   _t.DataTyperh   z_t.HeadersTyperV   z5RequestsCookieJar | CookieJar | dict[str, str] | Noner   z_t.FilesTyper   r   r   r   r   rT   r   r   r   z_t.HooksInputType | Noner   bool | Noner   _t.VerifyType | Noner   r   r   _t.JsonTyper9   r    r:   )r;   s   "r<   r=   r   -  s     ` `` ` 	`
 `  ` G` ` `  ` ` '` (` ` %`  !`" #`$ 
%`r>   c                   \        V\        4      '       d   VP                  R4      p\        VP	                  4       TTTT;'       g    / TT;'       g    / VVVR7
      pV P                  V4      p\        V4      '       g   Q hT;'       g    / pV P                  VP                  WW4      pRV	RV
/pVP                  V4       V P                  ! V3/ VB pV# )a  Constructs a :class:`Request <Request>`, prepares it and sends it.
Returns :class:`Response <Response>` object.

:param method: method for the new :class:`Request` object.
:param url: URL for the new :class:`Request` object.
:param params: (optional) Dictionary or bytes to be sent in the query
    string for the :class:`Request`.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
    object to send in the body of the :class:`Request`.
:param json: (optional) json to send in the body of the
    :class:`Request`.
:param headers: (optional) Dictionary of HTTP Headers to send with the
    :class:`Request`.
:param cookies: (optional) Dict or CookieJar object to send with the
    :class:`Request`.
:param files: (optional) Dictionary of ``'filename': file-like-objects``
    for multipart encoding upload.
:param auth: (optional) Auth tuple or callable to enable
    Basic/Digest/Custom HTTP Auth.
:param timeout: (optional) How many seconds to wait for the server to send
    data before giving up, as a float, or a :ref:`(connect timeout,
    read timeout) <timeouts>` tuple.
:type timeout: float or tuple
:param allow_redirects: (optional) Set to True by default.
:type allow_redirects: bool
:param proxies: (optional) Dictionary mapping protocol or protocol and
    hostname to the URL of the proxy.
:param hooks: (optional) Dictionary mapping hook name to one event or
    list of events, event must be callable.
:param stream: (optional) whether to immediately download the response
    content. Defaults to ``False``.
:param verify: (optional) Either a boolean, in which case it controls whether we verify
    the server's TLS certificate, or a string, in which case it must be a path
    to a CA bundle to use. Defaults to ``True``. When set to
    ``False``, requests will accept any TLS certificate presented by
    the server, and will ignore hostname mismatches and/or expired
    certificates, which will make your application vulnerable to
    man-in-the-middle (MitM) attacks. Setting verify to ``False``
    may be useful during local development or testing.
:param cert: (optional) if String, path to ssl client cert file (.pem).
    If Tuple, ('cert', 'key') pair.
:rtype: requests.Response
zutf-8)
r   r   rh   r   r   r   r   r   rV   r   r   r   )r@   bytesdecoder   r   r   r   merge_environment_settingsr   rA   r_   )r^   r   r   r   r   rh   rV   r   r   r   r   r   r   r   r   r   r   r   prepsettingssend_kwargsrb   s   &&&&&&&&&&&&&&&&&     r<   rY   Session.request-  s    | c5!!**W%C <<><<R
 ##C(D!!!!--R22HHgv
 w
 	8$yy--r>   c               (    V ^8  d   QhRRRRRRRR/# )	r4   r   r   r   r  rZ   zUnpack[_t.GetKwargs]r9   r    r:   )r;   s   "r<   r=   r     s8     A AA A '	A
 
Ar>   c                R    VP                  RR4       V P                  ! RV3RV/VB # )a9  Sends a GET request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param params: (optional) Dictionary, list of tuples or bytes to send
in the query string for the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
r   Tr   r   
setdefaultrY   )r^   r   r   rZ   s   &&&,r<   rN   Session.get  s0     	+T2||E3@v@@@r>   c               $    V ^8  d   QhRRRRRR/# r4   r   r   rZ   zUnpack[_t.RequestKwargs]r9   r    r:   )r;   s   "r<   r=   r     s"     	6 	6: 	61I 	6h 	6r>   c                N    VP                  RR4       V P                  ! RV3/ VB # )zSends a OPTIONS request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
r   TOPTIONSr  r^   r   rZ   s   &&,r<   optionsSession.options  s+     	+T2||Is5f55r>   c               $    V ^8  d   QhRRRRRR/# r  r:   )r;   s   "r<   r=   r     s"     	3 	3
 	3.F 	38 	3r>   c                N    VP                  RR4       V P                  ! RV3/ VB # )zSends a HEAD request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
r   Fr   r  r  s   &&,r<   headSession.head  s+     	+U3||FC2622r>   c          
     ,    V ^8  d   QhRRRRRRRRR	R
/# )r4   r   r   r   r  r   r  rZ   zUnpack[_t.PostKwargs]r9   r    r:   )r;   s   "r<   r=   r     sC     I II I 	I
 (I 
Ir>   c                2    V P                   ! RV3RVRV/VB # )a  Sends a POST request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
    object to send in the body of the :class:`Request`.
:param json: (optional) json to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
r   r   r   rY   )r^   r   r   r   rZ   s   &&&&,r<   postSession.post  s$    " ||FCHdHHHHr>   c               (    V ^8  d   QhRRRRRRRR/# 	r4   r   r   r   r  rZ   zUnpack[_t.DataKwargs]r9   r    r:   )r;   s   "r<   r=   r     s,     = ==%0=CX=	=r>   c                .    V P                   ! RV3RV/VB # )aE  Sends a PUT request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
    object to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
PUTr   r!  r^   r   r   rZ   s   &&&,r<   putSession.put  s     ||E3<T<V<<r>   c               (    V ^8  d   QhRRRRRRRR/# r%  r:   )r;   s   "r<   r=   r     s,     ? ??%0?CX?	?r>   c                .    V P                   ! RV3RV/VB # )aG  Sends a PATCH request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param data: (optional) Dictionary, list of tuples, bytes, or file-like
    object to send in the body of the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
PATCHr   r!  r(  s   &&&,r<   patchSession.patch  s     ||GS>t>v>>r>   c               $    V ^8  d   QhRRRRRR/# r  r:   )r;   s   "r<   r=   r     s"     5 5* 50H 5X 5r>   c                *    V P                   ! RV3/ VB # )zSends a DELETE request. Returns :class:`Response` object.

:param url: URL for the new :class:`Request` object.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:rtype: requests.Response
DELETEr!  r  s   &&,r<   deleteSession.delete  s     ||Hc4V44r>   c               $    V ^8  d   QhRRRRRR/# rX   r:   )r;   s   "r<   r=   r     s&     M MO Ms Mx Mr>   c                   VP                  RV P                  4       VP                  RV P                  4       VP                  RV P                  4       RV9  d$   \	        WP
                  V P                  4      VR&   \        V\        4      '       d   \        R4      h\        V4      '       g   Q hVP                  RR4      pVP                  R4      pVP                  pV P                  VP                  R7      p\!        4       pVP"                  ! V3/ VB p\!        4       V,
          p	\%        V	R	7      Vn        \)        R
WX3/ VB pVP*                  '       d?   VP*                   F.  p
\-        V P.                  V
P0                  V
P2                  4       K0  	  \-        V P.                  WP2                  4       V'       d%   V P4                  ! W3/ VB pV U
u. uF  qNK  	  pp
M. pV'       d)   VP7                  ^ V4       VP                  4       pWn        V'       g%    \9        V P4                  ! W3RR/VB 4      Vn        V'       g   VP>                   V# u up
i   \<         d     L(i ; i)z9Send a given PreparedRequest.

:rtype: requests.Response
r   r   r   r   z#You can only send PreparedRequests.r   T)r   )secondsrM   r   ) r  r   r   r   r)   r   rU   r@   r   
ValueErrorr   r   rN   r   get_adapterr   preferred_clockr_   r   elapsedr   r   r   rV   rY   r   r   insertnext_nextStopIterationr   )r^   rY   rZ   r   r   r   adapterstartrr;  rb   genr   s   &&,          r<   r_   Session.send  s    	(DKK0(DKK0&$)),F" /t~~ VF9 gw''BCCG$$$$ !**%6=H% ""w{{"3  ! LL+F+ "#e+g.	 *e9&9 999		&t||T\\488L " 	t||Wee< ((>v>C(+,tG,GG NN1a AI **1UdUfU II1 -$ ! s   
I!#I I-,I-c               0    V ^8  d   QhRRRRRRRRR	R
RR/# )r4   r   rn   r   r   r   r  r   r  r   r   r9   dict[str, Any]r:   )r;   s   "r<   r=   r   ?  sN     %V %V%V '%V 	%V
 %%V %V 
%Vr>   c                8   V P                   '       d   Ve   VP                  R4      MRp\        WR7      pVe+   VP                  4        F  w  rVP	                  W4       K  	  VRJ g   VfQ   \
        P                  P                  R4      ;'       g*    \
        P                  P                  R4      ;'       g    Tp\        W P                  4      p\        W0P                  4      p\        W@P                  4      p\        WPP                  4      pRVRVR	VR
V/# )zF
Check the environment and merge it with some settings.

:rtype: dict
Nno_proxy)rH  TREQUESTS_CA_BUNDLECURL_CA_BUNDLEr   r   r   r   )rU   rN   r&   rB   r  osenvironrH   r   r   r   r   )
r^   r   r   r   r   r   rH  env_proxiesrD   rE   s
   &&&&&&    r<   r
  "Session.merge_environment_settings?  s     >>>292Ew{{:.4H-cEK"'--/DA&&q, 0
 ~JJNN#78  zz~~&67    6v{{3v{{3T99-7HfhPTUUr>   c                    V ^8  d   QhRRRR/# )r4   r   rn   r9   r1   r:   )r;   s   "r<   r=   r   f  s     N Ns N{ Nr>   c                    V P                   P                  4        F<  w  r#VP                  4       P                  VP                  4       4      '       g   K:  Vu # 	  \	        RV: 24      h)zf
Returns the appropriate connection adapter for the given URL.

:rtype: requests.adapters.BaseAdapter
z&No connection adapters were found for )r   rB   lowerr   r   )r^   r   prefixr@  s   &&  r<   r9  Session.get_adapterf  sT      $}}224OFyy{%%flln55  5
 DSGLMMr>   c                   V ^8  d   QhRR/# r   r:   )r;   s   "r<   r=   r   s  s      t r>   c                h    V P                   P                  4        F  pVP                  4        K  	  R# )z+Closes all adapters and as such the sessionN)r   valuesr   )r^   rE   s   & r<   r   Session.closes  s"    %%'AGGI (r>   c               $    V ^8  d   QhRRRRRR/# )r4   rR  rn   r@  r1   r9   r   r:   )r;   s   "r<   r=   r   x  s!     	8 	8C 	8+ 	8$ 	8r>   c                    W P                   V&   V P                    Uu. uF   p\        V4      \        V4      8  g   K  VNK"  	  ppV F+  pV P                   P                  V4      V P                   V&   K-  	  R# u upi )zgRegisters a connection adapter to a prefix.

Adapters are sorted in descending order by prefix length.
N)r   r   r   )r^   rR  r@  rD   keys_to_moverG   s   &&&   r<   r   Session.mountx  sf    
 !(f#'==I=aCFS[4H=IC!%!2!23!7DMM#   Js
   A8A8c                   V ^8  d   QhRR/# )r4   r9   rF  r:   )r;   s   "r<   r=   r     s      n r>   c           	     	Z    V P                    Uu/ uF  q\        WR 4      bK  	  ppV# u upi r]   )r   getattr)r^   attrstates   &  r<   __getstate__Session.__getstate__  s/    =A^^L^Twt400^L Ms   (c                    V ^8  d   QhRRRR/# )r4   r`  rF  r9   r   r:   )r;   s   "r<   r=   r     s     ' '. 'T 'r>   c                	P    VP                  4        F  w  r#\        WV4       K  	  R # r]   )rB   setattr)r^   r`  r_  values   &&  r<   __setstate__Session.__setstate__  s     ;;=KDD& )r>   )r   r   r   rV   rh   r   rS   r   r   r   rU   r   )rh   rV   r   r   r   r   r   r   r   r   rU   rS   )NNNNNNNTNNNNNNr]   )NN)r   r   r   r   __doc__r   r   r   r   r   r   rY   rN   r  r  r"  r)  r.  r3  r_   r
  r9  r   r   ra  rg  r   r:   r>   r<   r   r     s    $ &%
''$$L
O..Iy =-~,\`DA$	6	3I&=?5M^%VNN
	8' 'r>   r   c                   V ^8  d   QhRR/# )r4   r9   r   r:   )r;   s   "r<   r=   r=     s       r>   c                     \        4       # )a>  
Returns a :class:`Session` for context-management.

.. deprecated:: 1.0.0

    This method has been deprecated since version 1.0.0 and is only kept for
    backwards compatibility. New code should use :class:`~requests.sessions.Session`
    to create a session. This may be removed at a future date.

:rtype: Session
)r   r:   r>   r<   sessionrl    s     9r>   )Qri  
__future__r   rK  systimecollectionsr   collections.abcr   r   r   datetimer   typingr   r	   r
   _internal_utilsr   r0   r   r   r   r   r   r   compatr   r   r   rV   r   r   r   r   
exceptionsr   r   r   r   r   r   r   modelsr   r   r   r   r    status_codesr!   
structuresr"   utilsr#   r$   r%   r&   r'   r(   r)   r*   r+   r,   http.cookiejarr-   typing_extensionsr.   r/   r   _tr1   platformperf_counterr:  rH   rO   rQ   r   rl  r:   r>   r<   <module>r     s    # 	 
  # > >  + + - / ! ! 0 0   0    +   (.% <<7''OiiO DOF #C&I) I)X~'" ~'Br>   