
    tni                        U d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl	m
Z
 ddlmZ ddlmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZm Z m!Z! ddl"Z"ddl#m$Z$m%Z%m&Z&m'Z' ddl(m)Z) dd	l*m+Z+m,Z,m-Z- dd
l.m/Z/ ddl0m1Z1 ddl2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZO ddlPmQZQmRZR ddlSmTZTmUZUmVZVmWZWmXZX ddlYmZZZm[Z[m\Z\ ddl]m^Z^m_Z_m`Z`maZambZb ddlcmdZd ddlemfZfmgZgmhZhmiZimjZjmkZkmlZlmmZmmnZnmoZo ddl,mpZpmqZqmrZrmsZs ddltmuZumvZvmwZw ddlxmyZymzZz ddl{m|Z|m}Z}m~Z~mZmZ dZerddlmZ ndZej        dk    rerddlmZ  G d ded          Z e"j        ddd            G d! d"                      Z ed#d$%          Zee         ed&<    eh d'          Z e d(eUe[          ZeeUegef         Z G d) d*          Z G d+ d,eeeef         ee                   ZeeU         Zee[         Z G d- d.          Zej        dk    r7er5e,j        ddd/d0ed1ed2eqd3ee_         d4eej                 d5ee         d6efd7ZdS e,j        ddd/d0ed1ed2eqd3ee_         d4eej                 d5ed6efd8ZdS )9zHTTP Client for asyncio.    N)suppress)TracebackType)TYPE_CHECKINGAny	AwaitableCallable	CoroutineFinal	FrozenSet	GeneratorGenericIterableListMappingOptionalSequenceSetTupleType	TypedDictTypeVarUnion)CIMultiDict	MultiDictMultiDictProxyistr)URL   )hdrshttppayload)WebSocketDataQueue)AbstractCookieJar)ClientConnectionErrorClientConnectionResetErrorClientConnectorCertificateErrorClientConnectorDNSErrorClientConnectorErrorClientConnectorSSLErrorClientErrorClientHttpProxyErrorClientOSErrorClientPayloadErrorClientProxyConnectionErrorClientResponseErrorClientSSLErrorConnectionTimeoutErrorContentTypeError
InvalidURLInvalidUrlClientErrorInvalidUrlRedirectClientErrorNonHttpUrlClientErrorNonHttpUrlRedirectClientErrorRedirectClientErrorServerConnectionErrorServerDisconnectedErrorServerFingerprintMismatchServerTimeoutErrorSocketTimeoutErrorTooManyRedirectsWSMessageTypeErrorWSServerHandshakeError)ClientMiddlewareTypebuild_client_middlewares)ClientRequestClientResponseFingerprintRequestInfo_merge_ssl_params)DEFAULT_WS_CLIENT_TIMEOUTClientWebSocketResponseClientWSTimeout)HTTP_AND_EMPTY_SCHEMA_SETBaseConnectorNamedPipeConnectorTCPConnectorUnixConnector)	CookieJar)
	_SENTINELDEBUGEMPTY_BODY_METHODS	BasicAuthTimeoutHandlebasicauth_from_netrcget_env_proxy_for_urlnetrc_from_envsentinelstrip_auth_from_url)WS_KEYHttpVersionWebSocketReaderWebSocketWriter)WSHandshakeError
ws_ext_genws_ext_parse)TraceTraceConfig)JSONEncoderLooseCookiesLooseHeadersQueryStrOrURL)*r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r8   r6   r5   r7   r9   r:   r;   r<   r=   r>   r@   rC   rD   rE   rF   rL   rN   rO   rM   rI   ClientSessionClientTimeoutrJ   requestr?   )
SSLContext      )Unpackc                   |   e Zd ZU eed<   eed<   eed<   eedf         ed<   eedf         ed<   ee	e
         df         ed<   eedf         ed<   eed	<   eed
<   ee
edf         ed<   eedf         ed<   eed<   edeeeged         f         f         ed<   eed<   eedf         ed<   eedf         ed<   ded<   eeeef         ed<   ee
df         ed<   eedf         ed<   eee
ef         df         ed<   eedf         ed<   eedf         ed<   eedf         ed<   eedf         ed<   eee                  ed<   dS )_RequestOptionsparamsdatajsonNcookiesheadersskip_auto_headersauthallow_redirectsmax_redirectscompresschunked	expect100raise_for_statusread_until_eofproxy
proxy_authz%Union[ClientTimeout, _SENTINEL, None]timeoutsslserver_hostnameproxy_headerstrace_request_ctxread_bufsizeauto_decompressmax_line_sizemax_field_sizemiddlewares)__name__
__module____qualname__rg   __annotations__r   r   re   rf   r   strrT   boolintr   rD   r   rh   rl   rE   r   r   r   rA        K/var/www/html/gpu-tools/venv/lib/python3.11/site-packages/aiohttp/client.pyrr   rr      s        MMM
III
III<%&&&&<%&&&&Xc]D01111
	4
    CtO$$$$4:OOOD$.1A9T?1R(SSTTTT4    io&&&&4444	z4,	----39%%%%t+,,,,WS#X.45555T	""""4:&&&&d#####t)$$$$(#78999999r   rr   FtotalT)auto_attribsfrozenslotsc                       e Zd ZU dZee         ed<   dZee         ed<   dZee         ed<   dZ	ee         ed<   dZ
eed<   dS )rj   Nr   connect	sock_readsock_connect   ceil_threshold)r   r   r   r   r   floatr   r   r   r   r   r   r   r   rj   rj      sr         !E8E?!!!#GXe_###!%Ix%%%$(L(5/(((NEr   rj   i,     )r   r   DEFAULT_TIMEOUT>   GETPUTHEADTRACEDELETEOPTIONS_RetTypec            A       ,    e Zd ZU dZ eg d          ZdZeej	                 e
d<   dZee         e
d<   	 dddddddddej        eeeej        dddededddddd	d	d
 deddee         dee         deej                 dee         dee         dee         dee         deee                  dee         dedee         dee         dee         dedee          de!de"e!e#ege$d         f         f         de"e%e&f         dee%         d e"e'e(f         d!e!d"e!d#e!d$ee)e*                  d%e+d&e+d'e+d(e,d)e-e.         d*e"e&de%f         d+df>d,Z/d-ed          d+dfd.Z0e1rd/ed0e2d+df fd1Z3e4fd2e2d+dfd3Z5e6j7        d4k    re8rd5ed6ed7e9e:         d+d8fd9Z;nd5ed6ed7e2d+d8fd:Z;d;ed+e<fd<Z=ddddddddd=dddddddeddddddddddddd>d5ed;ed?e>d@e2dAe2dee         dee         deee                  dee         dBe!dCe+dDe"ee!df         dEee!         dFe!de"de!e#ege$d         f         f         dGe!dee         dee         d e"e(e&f         dHee!         dIee?         dJee@         dKe"e@e!eAf         dLee         dMee         dNeeBee2f                  d%ee+         d!ee!         d&ee+         d'ee+         d)ee-e.                  d+ef@dOZCeDjE        dedddddddddddddddddPdQdRd6ed5edSee         d e"eFe&f         dTee%         dUe!dVe!dWee%         dee         dXee         d?e>dee         dee         dee         dKe"e@e!eAf         dHee!         dIee?         dJee@         dLee         dMee         dDe+dYe+d+dZf.d[ZGeDjE        dedddddddddddddddddPdQdRd6ed5edSee         d e"eFe&f         dTee%         dUe!dVe!dWee%         dee         dXee         d?e>dee         dee         dee         dKe"e@e!eAf         dHee!         dIee?         dJee@         dLee         dMee         dDe+dYe+d+ef.d\ZHdee         d+d]fd^ZId_ed+ee         fd`ZJe6j7        d4k    rse8rqd6ed7e9e:         d+d8fdaZKd6ed7e9e:         d+d8fdbZLd6ed7e9e:         d+d8fdcZMd6ed7e9e:         d+d8fddZNd6ed7e9e:         d+d8fdeZOd6ed7e9e:         d+d8fdfZPd6ed7e9e:         d+d8fdgZQndddhd6edBe!d7e2d+d8fdiZKddhd6edBe!d7e2d+d8fdjZLddhd6edBe!d7e2d+d8fdkZMddld6ed@e2d7e2d+d8fdmZNddld6ed@e2d7e2d+d8fdnZOddld6ed@e2d7e2d+d8fdoZPd6ed7e2d+d8fdpZQddqZReSd+e!fdr            ZTeSd+ee         fds            ZUeSd+e fdt            ZVeSd+eWe+e+f         fdu            ZXeSd+e!fdv            ZYeYjZ        d0e!d+dfdw            ZYeSd+ej        fdx            Z[eSd+e(fdy            Z\eSddz            Z]eSd+e^e_         fd{            Z`eSd+ee         fd|            ZaeSd+efd}            ZbeSd+e!fd~            ZceSd+e"e!e#ege$d         f         f         fd            ZdeSd+e!fd            ZeeSd+e!fd            ZfeSd+e)e*         fd            ZgddZhddZideeej                  deej         deek         d+dfdZlddZmdeeej                  deej         deek         d+dfdZn xZoS )ri   z/First-class interface for making HTTP requests.)	_base_url_base_url_origin_source_traceback
_connector_loop_cookie_jar_connector_owner_default_auth_version_json_serialize_requote_redirect_url_timeout_raise_for_status_auto_decompress
_trust_env_default_headers_skip_auto_headers_request_class_response_class_ws_response_class_trace_configs_read_bufsize_max_line_size_max_field_size_resolve_charset_default_proxy_default_proxy_auth_retry_connection_middlewaresrequote_redirect_urlNr   r   TF   i  c                     dS )Nzutf-8r   )rbs     r   <lambda>zClientSession.<lambda>2  s    7 r   r   )	connectorlooprv   rw   r   r   rx   ry   json_serializerequest_classresponse_classws_response_classversion
cookie_jarconnector_ownerr   read_timeoutconn_timeoutr   r   	trust_envr   trace_configsr   r   r   fallback_charset_resolverr   ssl_shutdown_timeoutbase_urlr   r   rv   rw   r   r   rx   ry   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   returnc                x   d | _         |	||j        }|pt          j                    }|t	          |t
                    r%|| _        |d n|                                | _        nHt          |          | _        | j                                        | _        | j        j	        s
J d            | j        .| j        j
                            d          st          d          |t          u s|t          | _        |t          ur<t!          j        dt$          d           t'          j        | j        |          | _        |<t'          j        | j        |          | _        t!          j        d	t$          d           net	          |t*                    s t          d
t-          |           d          || _        |t          urt          d          |t          d          |t          urt!          j        dt$          d           |t/          ||          }|j        |urt1          d          || _        |                                r+t5          j        t9          j        d                    | _        |t?          |          }|| _         |r| j         !                    |           || _         || _"        |	| _#        || _$        |
| _%        || _&        || _'        || _(        || _)        || _*        || _+        || _,        |rt[          |          }nt[                      }|| _.        |t_          d |D                       | _0        nt_                      | _0        || _1        || _2        || _3        |pg | _4        | j4        D ]} | 5                                 || _6        || _7        || _8        d| _9        || _:        d S )Nz Only absolute URLs are supported/z!base_url must have a trailing '/'z8read_timeout is deprecated, use timeout argument instead   
stacklevelr   )r   z8conn_timeout is deprecated, use timeout argument insteadztimeout parameter cannot be of z. type, please use 'timeout=ClientTimeout(...)'zGread_timeout and timeout parameters conflict, please setup timeout.readzJconn_timeout and timeout parameters conflict, please setup timeout.connectzSThe ssl_shutdown_timeout parameter is deprecated and will be removed in aiohttp 4.0)r   r   z0Session and connector has to use same event loopr   r   c              3   4   K   | ]}t          |          V  d S Nr   .0is     r   	<genexpr>z)ClientSession.__init__.<locals>.<genexpr>  s(      /S/SAQ/S/S/S/S/S/Sr   T);r   r   asyncioget_running_loop
isinstancer   r   originr   absolutepathendswith
ValueErrorrY   r   r   warningswarnDeprecationWarningattrevolverj   typerN   RuntimeError	get_debug	tracebackextract_stacksys	_getframer   rP   r   update_cookiesr   r   r   r   r   r   r   r   r   r   r   r   r   	frozensetr   r   r   r   r   freezer   r   r   r   r   )!selfr   r   r   rv   rw   r   r   rx   ry   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   real_headerstrace_configs!                                    r   __init__zClientSession.__init__  s   L 48<$ 1w/11z(C88,4DN,4,<DD(//BSBSD!! ]]DN$(N$9$9$;$;D!>*NN,NNNN>%dn.A.J.J3.O.O%@AAAh'/+DM8++N&    
 !%DM N N N' $DM< P P PN&     g}55  >d7mm > > >   $DM8++ #  
 ' &    x//Me"    $0D  I ?$&&QRRR
>> 	O%.%<S]1=M=M%N%ND""---J% 	5++G444# /!-!1 /#%9")+-  	)-8-A-ALL&==L2>(&//S/SAR/S/S/S&S&SD##&/kkD#+-"3+1r / 	" 	"L!!!! 9##- '+'r   clsc                 n    t          j        d                    | j                  t          d           d S )Nz6Inheritance class {} from ClientSession is discouragedr   r   )r   r   formatr   r   )r	  s    r   __init_subclass__zClientSession.__init_subclass__  s?    #VCL11		
 	
 	
 	
 	
 	
r   namevalc                     || j         vr/t          j        d                    |          t          d           t                                          ||           d S )Nz8Setting custom ClientSession.{} attribute is discouragedr   r   )ATTRSr   r   r  r   super__setattr__)r  r  r  	__class__s      r   r  zClientSession.__setattr__  sa    4:%%%%+VD\\& 	    GGc*****r   	_warningsc                     | j         sMd| i} |j        d| t          fi | | dd}| j        
| j        |d<   | j                            |           d S d S )NsourcezUnclosed client session zUnclosed client session)client_sessionmessagesource_traceback)closedr   ResourceWarningr   r   call_exception_handler)r  r  kwargscontexts       r   __del__zClientSession.__del__  s    { 	7%FIN3433_ HN   *.:STTG%1.2.D*+J--g66666	7 	7r   rm   methodurlr  _RequestContextManagerc                     d S r   r   r  r   r!  r  s       r   rk   zClientSession.request  s	    
 (+sr   c                 :    t           | j        ||fi |          S )zPerform HTTP request.)r"  _requestr$  s       r   rk   zClientSession.request  s(     *-$-*N*Nv*N*NOOOr   
str_or_urlc                 t    t          |          }| j        r!|j        s| j                            |          S |S r   )r   r   r   join)r  r'  r!  s      r   
_build_urlzClientSession._build_url  s;    *oo> 	,#, 	,>&&s+++
r   
   )rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   
verify_sslfingerprintssl_contextr   r   r   r   r   r   r   r   r   rs   rt   ru   rz   r{   r|   r}   r~   r   r,  r-  r.  r   r   r   r   c                   ;<=K    j         rt          d          t          ||||          }||t          d          |t	          j        | j                  }t          |t                    s|t          j
        dt                     d} g }! j        }"|pi }                     |          }	                      |          }#n"# t          $ r}$t          |          |$d }$~$ww xY w j        J |#j         j        j        vrt'          |#          |d |D              j        z  }%n j        r j        }%nd }%| j        }| j        }|d }nH                     |          }	 t/          |          }n"# t          $ r}$t1          |          |$d }$~$ww xY w|t2          u r j        ;n(t          |t6                    st7          |          ;n|;t9           j        ;j        ;j                  }&|&                                 }' j!         j"         j#         j$         fd	 j%        D             ==D ]2}(|(&                    ||#'                    |          |           d {V  3|&(                                <	 <5   j)        o|tT          v })	 tW          |#          \  }#}*|#j,        s| rtZ          nt          }+ |+|#          |!s|	r|*rt          d          |	|!r|*|*}	|	2 j.        r+ j/        r j0        |#1                                k    r j.        }	|	: j2        r3|#j3        , j        4                    d  j5        |#j3                   d {V }	||	tl          j7        |v rt          d           j8        9                    |#          },|[tu           j8        j;                  }-|-<                    |           |-9                    |#          }.|.r|,=                    |.           d }/|t/          |          }/nV j2        rOt}          t~                    5  t          jA        t          |#           d {V \  }/}d d d            n# 1 swxY w Y    C                    ||#|||%||,|	|"||| j         jD        |/|< ||nd
||= jE                  }0dt          dt          f; <=f	d}1| jH        n|}2|2rt          |1|2          }3n|1}3	  |3|0           d {V }4n# t          t          t          t          f$ r  t          t          f$ r	 |)rd})Y  t          $ r  t          $ r6}5|5jR        t          |5t          jS                  r t          |5jT         |5d }5~5ww xY w|4jU        r% j8        V                    |4jU        |4jW                   |4jX        dv r\|
rY=D ]3}(|(Y                    ||#'                    |          ||4           d {V  4| dz  } |!Z                    |4           |rh| |k    rb|0j[        |0j[        \                                 d {V  |4\                                 t          |!d         j^        t          |!                    |4jX        dk    r|4j`        tl          ja        k    s|4jX        dv rb|4j`        tl          jb        k    rMtl          jc        }d }|d                    tl          je                  r|f                    tl          je                   n|0j[        }|4jg        d                    tl          jh                  p#|4jg        d                    tl          ji                  }6|6n|4j                                 	 t/          |6 jk                   }7n]# t          $ rP}$|0j[        |0j[        \                                 d {V  |4\                                 t[          |6d          |$d }$~$ww xY w|7j        }8|8t          vrI|0j[        |0j[        \                                 d {V  |4\                                 t          |6          |8s|#n                    |7          }7	 |71                                }9n]# t          $ rP}:|0j[        |0j[        \                                 d {V  |4\                                 t[          |7d          |:d }:~:ww xY w|#1                                |9k    r"d }	|f                    tl          j7        d            |7}#i }|4j                                 f	 d d d            n# 1 swxY w Y   |0j[        |0j[        \                                 d {V  | jo        }|n7t          |          r ||4           d {V  n|r|4q                                 |';|4jr         |4jr        s                    |'jt                   n|'t                                 t          |!          |4_u        =D ]3}(|(v                    ||#'                    |          ||4           d {V  4|4S # t          $ rh}$|&\                                 |'r|'t                                 d }'=D ]3}(|(x                    ||#'                    |          ||$           d {V  4 d }$~$ww xY w)NzSession is closedz9data and json parameters can not be used at the same time)dumpszChunk size is deprecated #1615r   c                 ,    h | ]}t          |          S r   r   r   s     r   	<setcomp>z)ClientSession._request.<locals>.<setcomp>2  s+       Q  r   r   )r   c           	      Z    g | ]'}t          ||                                         (S ))r   )rb   trace_config_ctx)r   r  r  r   s     r   
<listcomp>z*ClientSession._request.<locals>.<listcomp>b  sP     
 
 
  --@Q-RR 
 
 
r   Tz<Cannot combine AUTH argument with credentials encoded in URLzTCannot combine AUTHORIZATION header with AUTH argument or credentials encoded in URL)quote_cookie)rs   rw   rx   rt   rv   ry   r   r|   r}   r~   r   r   r   r   timersessionr   r   r   tracesr   reqr   c                 T  	K   
j         J 	 
j                             | 	           d {V }n/# t          j        $ r}t	          d| j                   |d }~ww xY w|j        J |j                            | j        t          v 	j
        
j         j        	  	         	 |                     |           d {V }	 |                    |           d {V  n## t          $ r |                                  w xY wn## t          $ r |                                  w xY w|S )N)r9  r   zConnection timeout to host )	r7  skip_payloadr   r   r   r   timeout_ceil_thresholdr   r   )r   r   r   TimeoutErrorr1   r!  protocolset_response_paramsr   rS   r   _timeout_ceil_thresholdsendstartBaseExceptionclose)r:  connexcrespr   r   r   r   r   real_timeoutr  r7  r9  s       r   _connect_and_send_requestz9ClientSession._request.<locals>._connect_and_send_request  s       $:::')-)@)@ #FL *A * * $ $ $ $ $ $DD  '3 ' ' '"8 Gcg G G# ##&''
  $}88899"'),7I)I+9,;)5)?)537?3Z*7+9 : 
 
 
	"),$#7#7#7#7#7#7D&&*jj&6&6 6 6 6 6 6 6 6 6#0 & & & $

 %& !7  - " " " JJLLL!"  $s9   #2 AAA)D C!  D ! DD  D%F)-  .  /  i3  i4  r   rM  )rK  rL  )encodedzHServer attempted redirecting to a location that does not look like a URLzInvalid redirect URL origin)yr  r   rG   r   r!   JsonPayloadr   r   r   r   r   r   r   _prepare_headersr*  r4   r   schemeallowed_protocol_schema_setr6   r   r   r   r   r3   rY   r   rj   rU   r   r   r   rC  r   r   r   r   r   send_request_startupdate_queryr7  r   IDEMPOTENT_METHODSrZ   raw_hostr5   r   r   r   r   r   hostrun_in_executor_get_netrc_authr   AUTHORIZATIONr   filter_cookiesrP   r6  r  loadr   LookupErrorr   	to_threadrW   r   r   r   rC   rD   r   rB   r1   r(   r&   r)   r,   r:   r*   OSErrorerrnor>  args_raw_cookie_headersupdate_cookies_from_headersr!  statussend_request_redirectappend_bodyrE  r>   request_infotupler   	METH_HEAD	METH_POSTMETH_GETgetCONTENT_LENGTHpoprw   LOCATIONURIreleaser   rK   r7   r)  r   callabler   
connectionadd_callbackcancel_historysend_request_endrD  send_request_exception)>r  r   r'  rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r,  r-  r.  r   r   r   r   r   r   r   r   r   	redirectshistoryr   r!  eskip_headerstmhandletraceretry_persistent_connectionauth_from_urlerr_exc_clsall_cookiestmp_cookie_jarreq_cookiesproxy_r:  rJ  effective_middlewareshandlerrH  rG  r_urlparsed_redirect_urlrQ  redirect_originorigin_val_errrI  r7  r9  s>   `               `         `````                            @@@r   r&  zClientSession._request  s>     T ; 	42333ZkJJ 0K   &t43GHHHD'4(( 	PW-@M:<NOOO	(*-2 ''00	;//*--CC 	; 	; 	;'
33:	; ***:T_HHH',,, ( !2  '(LL $ 	 2LLL='E1J= MM 11-@@M/E

 / / / ''Q./ h*.-LLg}55 ',7;;;& J*<;V
 
 
 -L""3O  /M!!1N
 
 
 
 
 !% 3
 
 
  	V 	VE**633C3CF3K3KWUUUUUUUUUU

w	 M M *Kv9K/K ,H)<S)A)A&C< /
  )799!6 $
 *k#... #   (9   ||M4M,  . % !% % 372G3::<<2W2W  $1 ||CH<P%)Z%?%? $"6& &              + , .'99(-   #'"2"A"A#"F"FK*)2)-)9)F* * * '55g>>>&4&C&CC&H&H& :',,[999,0F(!$U %k22  7>7H 5s8 8 2 2 2 2 2 2.FJ              
 --% '*6! +! '!) '"+!Z'+';$#-# $#&?CC(7&3%"&./ .  C4$$*$$'$$ $$ $$ $$ $$ $$ $$ $$ $$ $$ $$ $$ $$ $$P .9-@))k * - <":57L# # #<@%,WS\\111111 /,7/	    )+BC   6 %:?7$H&   " @ @ @9,CAU1V1V,!+SX6C?@ / (DD 4dh  
 {&???O?%+  E"'"="= &(8(8(@(@'4# #         "Q	t,,,( Y--G-G"y4&)ioo&7&7 7 7 7 7 7 7 7 JJLLL"2 '
 7w# #  !K3..4;$.3P3P K:55$+:W:W%)]F#'D&{{4+>?? A 'D,? @ @ @ $'9D $ 0 0 ? ? !4<CSCS HD D !=! !LLNNN%25 %43M/M3 3 3//  * % % %"y4&)ioo&7&7 7 7 7 7 7 7 7 JJLLL"? % j# # $%%	% "5!;!)BBB"y4&)ioo&7&7 7 7 7 7 7 7 7 JJLLL"?"F"FF!' P25((;N2O2O/	2.A.H.H.J.JOO) 2 2 2"y4&)ioo&7&7 7 7 7 7 7 7 7 JJLLL"? 3 =# # $22	2 ::<<?::#'D#KK(:DAAA1!# [M M M M M M M M M M M M M M M^ y$ioo''''''''''#'#9 '*++ (&&t,,,,,,,,,,! (%%''' !?.O00????MMOOO!'NNDM  ,,C,,V44gt          K 	 	 	HHJJJ   22C,,V44gq          	s  ;C 
C0C++C03F 
F"FF"h Fd1$Q!d!Q%	%d(Q%	)A>d(S:9d:2U9,d/U91U44U99G(d"]:9d:
_A__A3dad
b7'Ab22b77Adh dh "d#C4h 
j
"A#jj
r   i  @ r   	protocolsr   receive_timeout	autocloseautoping	heartbeatry   r   rs   rw   r   r   r   r,  r-  r.  r   r   r|   max_msg_sizer  r  r  r  r  r   r  _WSRequestContextManagerc                r    t          |                     |||||||||	|
||||||||||||                    S )zInitiate websocket connection.r  )r  _ws_connect)r  r!  r   r  r   r  r  r  r  ry   r   rs   rw   r   r   r   r,  r-  r.  r   r   r|   r  s                          r   
ws_connectzClientSession.ws_connect  sp    6 (# /#!#%%'' /+!)-   
 
 	
r   c                
  K   |t           urEt          |t                    r|}n4t          j        dt
          d           t          |          }nt          }|2t          j        dt
          d           t          j        ||          }|t                      }nt          |          }t          j        dt          j        dt          j        d	i}|                                D ]\  }}|                    ||           t!          j        t%          j        d
                    }|                                |t          j        <   |r"d                    |          |t          j        <   |
|
|t          j        <   |rt3          |          }||t          j        <   |t          j        dt
          d           d}t7          ||||          }|                     ||||d|	|||||           d {V }	 |j        dk    r(t=          |j        |j         d|j        |j!                  |j!        "                    t          j        d          #                                dk    r(t=          |j        |j         d|j        |j!                  |j!        "                    t          j        d          #                                dk    r(t=          |j        |j         d|j        |j!                  |j!        "                    t          j$        d          }t!          j        tK          j&        |tN          z             (                                                                          } || k    r(t=          |j        |j         d|j        |j!                  d }!|rTt          j        |j!        v rAd |j!        t          j                 )                    d          D             }"|"D ]
}#|#|v r|#}! nd}$|r|j!        "                    t          j                  }%|%rZ	 tU          |%          \  }}$nJ# tV          $ r9}&t=          |j        |j         |&j,        d         |j        |j!                  |&d }&~&ww xY wd}d}$|j-        }'|'J |'j.        }(|(J |j/        d |(_0        n&|(j0        tc          |j/        |(j0                  |(_0        |'j2        })|)J tg          |(d| j4                  }*|(5                    tm          |*|          |*           to          |(|)d||$          }+| 8                    |*|+|!||||| j4        |||$          S # tr          $ r |:                                  w xY w)Nzeparameter 'timeout' of type 'float' is deprecated, please use 'timeout=ClientWSTimeout(ws_close=...)'r   r   )ws_closezofloat parameter 'receive_timeout' is deprecated, please use parameter 'timeout=ClientWSTimeout(ws_receive=...)')
ws_receive	websocketUpgrade13   ,)r|   z+ssl=None is deprecated, please use ssl=TrueTF)	rs   rw   r   ry   r   r   r   r   r   e   zInvalid response status)r  rd  rw    zInvalid upgrade headerupgradezInvalid connection headerzInvalid challenge responsec                 6    g | ]}|                                 S r   )strip)r   protos     r   r5  z-ClientSession._ws_connect.<locals>.<listcomp>n  s0     " " " KKMM" " "r   r   r   r   )use_maskr|   
notakeover)r  r|   client_notakeover);rY   r   rJ   r   r   r   rH   r   r   r   r   UPGRADE
CONNECTIONSEC_WEBSOCKET_VERSIONitems
setdefaultbase64	b64encodeosurandomdecodeSEC_WEBSOCKET_KEYr)  SEC_WEBSOCKET_PROTOCOLORIGINr`   SEC_WEBSOCKET_EXTENSIONSrG   rk   rd  r@   rh  r{  rw   rm  lowerSEC_WEBSOCKET_ACCEPThashlibsha1r[   digestsplitra   r_   ra  rt  r?  r  r   max	transportr"   r   
set_parserr]   r^   r   rD  rE  ),r  r!  r   r  r   r  r  r  r  ry   r   rs   rw   r   r   r   r,  r-  r.  r   r   r|   r  
ws_timeoutr  default_headerskeyvaluesec_keyextstrrH  r_keymatchr?  resp_protocolsr  r  compress_hdrsrG  rF  
conn_protor  readerwriters,                                               r   r  zClientSession._ws_connect  s9     4 (""'?33 
?$

> '     -g>>>

2J&M< #    ZOLLLJ?-8]]LL&w//L L+OY&
 *//11 	0 	0JC##C////"2:b>>22/6~~/?/?T+, 	L8;8K8KL45(.L% 	A222F:@L67 ;M="   
 CZkJJ \\  !+' " 
 
 
 
 
 
 
 
s	{c!!,%L5; L    |b117799[HH,%L4; L    |44::<<	II,%L7; L    L$$T%>CCE$W\'F2B%C%C%J%J%L%LMMTTVVE~~,%L8; L    H 	T8DLHH" "!%d.I!J!P!PQT!U!U" " "
 ,  E	))#( *
 J ' $ 0 01N O O  '	#/;M/J/J,**+ # # #4 - L$'HQK#';$(L    ###  !H!&J?D###J))) $,*.
''(4*-):+B+ +
' I((('
E
KKKF!!/&,"G"GPPP$!%  F **
#!", +   	  	 	 	JJLLL	s2   8H U  P, +U  ,
Q/64Q**Q//B,U    U CIMultiDict[str]c                 B   t          | j                  }|rt          |t          t          f          st          |          }t                      }|                                D ]:\  }}||v r|                    ||            |||<   |                    |           ;|S )z3Add default headers and transform it to CIMultiDict)r   r   r   r   r   setr  add)r  rw   resultadded_namesr  r  s         r   rP  zClientSession._prepare_headers  s     T233 		)g	'BCC /%g..$'EEK%mmoo ) )
U+%%JJsE****"'F3KOOC((((r   rW  c                 b    t                      }	 t          ||          S # t          $ r Y dS w xY w)z
        Get auth from netrc for the given host.

        This method is designed to be called in an executor to avoid
        blocking I/O in the event loop.
        N)rX   rV   r]  )r  rW  	netrc_objs      r   rY  zClientSession._get_netrc_auth  sF     #$$		'	4888 	 	 	44	s     
..c                     d S r   r   r  r!  r  s      r   rm  zClientSession.get  	     (+sr   c                     d S r   r   r  s      r   optionszClientSession.options  r  r   c                     d S r   r   r  s      r   headzClientSession.head  r  r   c                     d S r   r   r  s      r   postzClientSession.post  r  r   c                     d S r   r   r  s      r   putzClientSession.put  r  r   c                     d S r   r   r  s      r   patchzClientSession.patch  r  r   c                     d S r   r   r  s      r   deletezClientSession.delete  r  r   )rz   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP GET request.rz   )r"  r&  r   rl  r  r!  rz   r  s       r   rm  zClientSession.get  sC     *M3 8GKQ   r   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP OPTIONS request.rz   )r"  r&  r   METH_OPTIONSr  s       r   r  zClientSession.options  sD     *%s <KOU   r   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP HEAD request.rz   )r"  r&  r   rj  r  s       r   r  zClientSession.head  sC     *NC 9HLR   r   )rt   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP POST request.rt   )r"  r&  r   rk  r  r!  rt   r  s       r   r  zClientSession.post   s6     *dncGGGGG  r   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP PUT request.rt   )r"  r&  r   METH_PUTr  s       r   r  zClientSession.put(  s6     *dmSFFtFvFF  r   c                R    t           | j        t          j        |fd|i|          S )zPerform HTTP PATCH request.rt   )r"  r&  r   
METH_PATCHr  s       r   r  zClientSession.patch0  s6     *dosHHHHH  r   c                 N    t           | j        t          j        |fi |          S )zPerform HTTP DELETE request.)r"  r&  r   METH_DELETEr  s      r   r  zClientSession.delete8  s0    )d.>>v>>  r   c                    K   | j         s6| j        &| j        r| j                                         d{V  d| _        dS dS )zMClose underlying connector.

        Release all acquired resources.
        N)r  r   r   rE  r  s    r   rE  zClientSession.close>  s]      
 { 	#*t/D*o++---------"DOOO	# 	#r   c                 ,    | j         du p| j         j        S )z@Is client session closed.

        A readonly property.
        N)r   r  r  s    r   r  zClientSession.closedH  s     $&@$/*@@r   c                     | j         S )z(Connector instance used for the session.r   r  s    r   r   zClientSession.connectorP  s     r   c                     | j         S )zThe session cookies.)r   r  s    r   r   zClientSession.cookie_jarU  s     r   c                     | j         S )z"The session HTTP protocol version.)r   r  s    r   r   zClientSession.versionZ       }r   c                     | j         S ))Do URL requoting on redirection handling.)r   r  s    r   r   z"ClientSession.requote_redirect_url_  s     ))r   c                 L    t          j        dt          d           || _        dS )r  z=session.requote_redirect_url modification is deprecated #2778r   r   N)r   r   r   r   )r  r  s     r   r   z"ClientSession.requote_redirect_urld  s6     	K	
 	
 	
 	

 &)"""r   c                 H    t          j        dt          d           | j        S )zSession's loop.z"client.loop property is deprecatedr   r   )r   r   r   r   r  s    r   r   zClientSession.loopn  s0     	02DQR	
 	
 	
 	
 zr   c                     | j         S )zTimeout for the session.)r   r  s    r   r   zClientSession.timeoutv  r  r   c                     | j         S )z*The default headers of the client session.)r   r  s    r   rw   zClientSession.headers{       $$r   c                     | j         S )z2Headers for which autogeneration should be skipped)r   r  s    r   rx   zClientSession.skip_auto_headers  s     &&r   c                     | j         S )z2An object that represents HTTP Basic Authorization)r   r  s    r   ry   zClientSession.auth  s     !!r   c                     | j         S )zJson serializer callable)r   r  s    r   r   zClientSession.json_serialize  s     ##r   c                     | j         S )z-Should connector be closed on session closing)r   r  s    r   r   zClientSession.connector_owner  r   r   c                     | j         S )zGShould `ClientResponse.raise_for_status()` be called for each response.)r   r  s    r   r   zClientSession.raise_for_status  s    
 %%r   c                     | j         S )z7Should the body response be automatically decompressed.)r   r  s    r   r   zClientSession.auto_decompress  r   r   c                     | j         S )z
        Should proxies information from environment or netrc be trusted.

        Information is from HTTP_PROXY / HTTPS_PROXY environment variables
        or ~/.netrc file if present.
        )r   r  s    r   r   zClientSession.trust_env  s     r   c                     | j         S )z7A list of TraceConfig instances used for client tracing)r   r  s    r   r   zClientSession.trace_configs  s     ""r   c                     d| _         dS )zwDetach connector from session without closing the former.

        Session is switched to closed state anyway.
        Nr  r  s    r   detachzClientSession.detach  s    
 r   c                      t          d          )NzUse async with instead)	TypeErrorr  s    r   	__enter__zClientSession.__enter__  s    0111r   exc_typeexc_valexc_tbc                     d S r   r   r  r  r  r  s       r   __exit__zClientSession.__exit__  s	     	r   c                 
   K   | S r   r   r  s    r   
__aenter__zClientSession.__aenter__  s      r   c                 >   K   |                                   d {V  d S r   )rE  r  s       r   	__aexit__zClientSession.__aexit__  s.       jjllr   r   r   N)r   r  )r   ri   )pr   r   r   __doc__r  r  r   r   r   StackSummaryr   r   rL   ru   r0  rC   rD   rI   r    HttpVersion11rY   rh   r   AbstractEventLoopre   rf   rT   r   r   rd   r   r\   r#   r   r   r   r   r   rQ   objectrj   r   rc   r   _CharsetResolverr   rA   r  r  rR   r   r  r   r  r   version_infor   rp   rr   rk   r   r*  rg   bytesrl   rE   r   r&  r   rl  rJ   r  r  rP  rY  rm  r  r  r  r  r  r  rE  propertyr  r   r   r   r   r   setterr   r   rw   r   r   rx   ry   r   r   r   r   r   r   r
  r  rD  r   r  r  r  __classcell__)r  s   @r   ri   ri      s        99I	
 	
 	
! !EF ;?x	 67>>>*.J'... (,\( .248*.*.$(*.59$(&*j-:/=;R#126 $ 08(,08 $%)59!!"6J6J68>FE\( \( \(8$\( M*	\(
 w01\( ,'\( ,'\( !\( Y'\( $HSM2\( y!\( $\( M*\( ^,\(   78\(  !\(" ./#\($ %\(&  (N+Yt_<==
'\(, E9,--\(. uo/\(0 v},-1\(2 3\(4 5\(6 #7\(8  [ 129\(: ;\(< =\(> ?\(@ $4A\(B 23C\(D $ItU$:;E\(F 
G\( \( \( \(|
tO4 
 
 
 
 
  
+	+C 	+c 	+d 	+ 	+ 	+ 	+ 	+ 	+ (0 	7 	7 	7D 	7 	7 	7 	7 7""}"	+	+ 	+ _-		+
 &	+ 	+ 	+ 	+ 	+	P	P$,	P8;	P%	P 	P 	P 	PX #     *.*.59$( $+/"& #$(*.3;%)'+,048)-049=&**.'+(,@DG@ @ @@ @
 @ @ @ ,'@ ,'@ $HSM2@ y!@ @ @ T4(@ $@  !@"  $.!19T?!BCC
#@( )@* !+@, Y'-@. }i/0/@0 TN1@2 e_3@4 j)5@6 :t[017@8 "#9@:  -;@< $GCH$56=@> sm?@@ "$A@B  }C@D !E@F h';<=G@H 
I@ @ @ @L m#%5=+/%)$( $*.$(*.48%)'+,0)-04+14
 4
 4
4
 	4

 C=4
 	124
 "%4
 4
 4
 E?4
 y!4
 4
 4
 ,'4
 !4
  Y'!4
" :t[01#4
$ TN%4
& e_'4
( j))4
* "#+4
,  --4
. /4
0 14
2 
$34
 4
 4
 4
t m#%5=+/%)$( $*.$(*.48%)'+,0)-04+1W W WW 	W
 C=W 	12W "%W W W E?W y!W W W ,'W !W  Y'!W" :t[01#W$ TN%W& e_'W( j))W* "#+W,  --W. /W0 1W2 
!3W W W Wr(> CU     C HY,?     7""}"	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+	+	+ _-	+ &		+ 	+ 	+ 	+ 	+ =A	 	 		59	LO	%	 	 	 	 =A	 	 		59	LO	%	 	 	 	 =B	 	 		59	MP	%	 	 	 	 15	 	 		*-	@C	%	 	 	 	 15	 	 		*-	@C	%	 	 	 	 15	 	 		*-	@C	%	 	 	 		h 	# 	:R 	 	 	 	# # # # A A A A XA 8M2    X  -       X  sCx    X *d * * * X*  ) ) ) ) ) ! ) g/    X     X % % % X% '9T? ' ' ' X' "hy) " " " X" $ $ $ $ X$ % % % % X% &	tX~.	$?@@	A& & & X& % % % % X% 4    X #tK0 # # # X#   2 2 2 24./ -( '	
 
      4./ -( '	
 
       r   ri   c                       e Zd ZdZdeddef         ddfdZddZd	ed
eddfdZ	ddZ
deedef         fdZdeedef         fdZdefdZdeee                  dee         dee         ddfdZdS )_BaseRequestContextManager)_coro_respcoroasyncio.Future[Any]Nr   c                     || _         d S r   )r&  )r  r(  s     r   r  z#_BaseRequestContextManager.__init__  s    GK


r   argc                 6    | j                             |          S r   )r&  rB  )r  r+  s     r   rB  z_BaseRequestContextManager.send  s    zs###r   ra  r  c                 &     | j         j        |i |S r   )r&  throw)r  ra  r  s      r   r.  z _BaseRequestContextManager.throw  s    tz0000r   c                 4    | j                                         S r   )r&  rE  r  s    r   rE  z _BaseRequestContextManager.close  s    z!!!r   c                 8    | j                                         }|S r   )r&  	__await__)r  rets     r   r1  z$_BaseRequestContextManager.__await__  s    j""$$
r   c                 *    |                                  S r   )r1  r  s    r   __iter__z#_BaseRequestContextManager.__iter__  s    ~~r   c                 h   K   | j          d {V | _        | j                                         d {V S r   )r&  r'  r  r  s    r   r  z%_BaseRequestContextManager.__aenter__  sG      %)Z//////
Z**,,,,,,,,,r   r  rG  tbc                 N   K   | j                             |||           d {V  d S r   )r'  r  r  r  rG  r6  s       r   r  z$_BaseRequestContextManager.__aexit__  s:       j""8S"55555555555r   )r+  Nr   r)  r  )r   r   r   	__slots__r	   r   r  rB  r   r.  rE  r   r1  r4  r  r   r   rD  r   r  r   r   r   r%  r%    sX       "ILY'<dH'LM LRV L L L L$ $ $ $13 1# 12G 1 1 1 1" " " "9S$%89     )Cx$78        -( - - - -64./6 m$6 ]#	6
 
6 6 6 6 6 6r   r%  c                       e Zd ZdZdeddef         deddfdZdefdZd	e	e
e                  d
e	e         de	e         ddfdZdS )_SessionRequestContextManagerr&  r'  _sessionr(  r)  Nr8  r   c                 0    || _         d | _        || _        d S r   r<  )r  r(  r8  s      r   r  z&_SessionRequestContextManager.__init__  s    
 
/3
r   c                    K   	 | j          d {V | _        | j        S # t          $ r! | j                                         d {V   w xY wr   )r&  r'  rD  r=  rE  r  s    r   r  z(_SessionRequestContextManager.__aenter__  sv      	#z))))))DJ
 :	  	 	 	-%%'''''''''	s	    +Ar  rG  r6  c                    K   | j         J | j                                          | j                                         d {V  d S r   )r'  rE  r=  r8  s       r   r  z'_SessionRequestContextManager.__aexit__  sV       z%%%
m!!###########r   )r   r   r   r9  r	   rD   ri   r  r  r   r   rD  r   r  r   r   r   r;  r;    s        .I -t^CD    
	       .    $4./$ m$$ ]#	$
 
$ $ $ $ $ $r   r;  )r   r   r   r   r!  r   r   r   r  r   c                    d S r   r   )r   r!  r   r   r   r  s         r   rk   rk     s	     ),r   c          	          d}|d}t          |d          }t          ||                    dd          ||                    dt                    ||          }t	           |j        | |fi ||          S )aB  Constructs and sends a request.

        Returns response object.
        method - HTTP method
        url - request url
        params - (optional) Dictionary or bytes to be sent in the query
        string of the new request
        data - (optional) Dictionary, bytes, or file-like object to
        send in the body of the request
        json - (optional) Any json compatible python object
        headers - (optional) Dictionary of HTTP Headers to send with
        the request
        cookies - (optional) Dict object to send with the request
        auth - (optional) BasicAuth named tuple represent HTTP Basic Auth
        auth - aiohttp.helpers.BasicAuth
        allow_redirects - (optional) If set to False, do not follow
        redirects
        version - Request HTTP version.
        compress - Set to True if request has to be compressed
        with deflate encoding.
        chunked - Set to chunk size for chunked transfer encoding.
        expect100 - Expect 100-continue response from server.
        connector - BaseConnector sub-class instance to support
        connection pooling.
        read_until_eof - Read response until eof if response
        does not have Content-Length header.
        loop - Optional event loop.
        timeout - Optional ClientTimeout settings structure, 5min
        total timeout by default.
        Usage::
        >>> import aiohttp
        >>> async with aiohttp.request('GET', 'http://python.org/') as resp:
        ...    print(resp)
        ...    data = await resp.read()
        <ClientResponse(https://www.python.org/) [200 OK]>
        FNT)r   force_closerv   r   )r   rv   r   r   r   r   )rN   ri   ro  rY   r;  r&  )r   r!  r   r   r   r  r   r8  s           r   rk   rk   %  s    Z  "O$$DAAAIJJy$//JJy(33+
 
 
 -GVS33F33
 
 	
r   )r  r   r  r  ru   r  r   r   r   
contextlibr   typesr   typingr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   	multidictr   r   r   r   yarlr   r  r   r    r!   _websocket.readerr"   abcr#   client_exceptionsr$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   client_middlewaresrA   rB   client_reqreprC   rD   rE   rF   rG   	client_wsrH   rI   rJ   r   rK   rL   rM   rN   rO   	cookiejarrP   helpersrQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   http_websocketr_   r`   ra   tracingrb   rc   typedefsrd   re   rf   rg   rh   __all__r   rl   r  rp   rr   srj   r   r   r  rU  r   r   r   r  ri   r%  r"  r  r;  r  r  rk   r   r   r   <module>rV     s          				 



                                                            .  B B B B B B B B B B B B       ! ! ! ! ! ! ! ! ! ! 1 1 1 1 1 1 " " " " " "                                                             > O N N N N N N N                      
              !                                  H G G G G G G G G G G G F F F F F F F F F F ' ' ' ' ' ' ' ' N N N N N N N N N N N N N N0f  Jw=: : : : :iu : : : :: T$d333       43, )6FQS(T(T(T}% T T T YSSSTT 7:~/FGG^U3S89 b b b b b b b bJ'!6 !6 !6 !6 !63X+=!>@Q !6 !6 !6H 4NC 56MN $ $ $ $ $ $ $ $B w=  $1-148, , ,,, 	,
 M*, w01, ), 
', , , , , ,   $1-148>
 >
 >
>
>
 	>

 M*>
 w01>
 >
 
'>
 >
 >
 >
 >
 >
r   