o
    zsg                  5   @   s>  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  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l/m0Z0 ddl1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZN ddlOmPZPmQZQmRZRmSZSmTZT ddlUmVZVmWZWmXZX ddlYmZZZm[Z[m\Z\m]Z]m^Z^ ddl_m`Z` ddlambZbmcZcmdZdmeZemfZfmgZgmhZhmiZi ddl+mjZjmkZkmlZlmmZm ddlnmoZompZpmqZq ddlrmsZsmtZt ddlumvZvmwZwmxZxmyZymzZz dZ{er;ddl|m}Z} ndZ}ej~dkrLerLddlmZ G dd deddZe!jddddG d d! d!Zed"d#d$Zee ed%< eh d&Zed'eQeWZeeQegef ZG d(d) d)ZG d*d+ d+eeeef ee ZeeQ ZeeW ZG d,d- d-Zdddddddd.dddddddehde+jdddd/d/d0d1ed2ezd3eyd4ed5ed6eex d7eee  d8eee d9ed:ed;ee d<ee d=ed>ee d?ed@eez dAeee dBe eef dCeew dDekdEee[ dFee dGeej dHedIedJef4dKdLZdS )MzHTTP Client for asyncio.    N)suppress)TracebackType)TYPE_CHECKINGAny	AwaitableCallable	CoroutineFinal	FrozenSet	GeneratorGenericIterableListMappingOptional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)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get_env_proxy_for_url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-   r.   r/   r0   r1   r2   r6   r4   r3   r5   r7   r8   r9   r:   r;   r<   r>   r?   r@   rA   rB   rH   rJ   rK   rI   rE   ClientSessionClientTimeoutrF   requestr=   )
SSLContext      )Unpackc                   @   s~  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< 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)__name__
__module____qualname__ra   __annotations__r   r   r_   r`   r   strrP   boolintr   r@   r   rb   rf   rA   r    r   r   J/var/www/html/minecraft/env/lib/python3.10/site-packages/aiohttp/client.pyrk      s4   
  rk   FtotalT)auto_attribsfrozenslotsc                   @   sZ   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 )rd   Nr   connect	sock_readsock_connect   ceil_threshold)r   r   r   r   r   floatr   r   r   r   r   r   r   r   r   rd      s   
 rd   i,     )r   r   DEFAULT_TIMEOUT>   GETPUTHEADTRACEDELETEOPTIONS_RetTypec                ?       s  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 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)df:d*d+Z-d,ed  d)dfd-d.Z.e/rd/ed0e0d)df fd1d2Z1e2fd3e0d)dfd4d5Z3e4j5d6kre6rd7ed8ed9e7e8 d)d:fd;d<Z9nd7ed8ed9e0d)d:fd=d<Z9d>ed)e:fd?d@Z;dddddddddAdddddddeddddddddddddBd7ed>edCe<dDe0dEe0dee dee deee  dee dFe!dGe+dHe"ee!df dIee! dJe!de"de!e#ege$d f f dKe!dee dee d e"e(e&f dLee! dMee= dNee> dOe"e>e!e?f dPee dQee dRee@ee0f  d%ee+ d!ee! d&ee+ d'ee+ d)ef>dSdTZAeBjCdUedddddddddddddddddVdWdXd8ed7edYee d e"eDe&f dZee% d[e!d\e!d]ee% dee d^ee dCe<dee dee dee dOe"e>e!e?f dLee! dMee= dNee> dPee dQee dHe+d_e+d)d`f.dadbZEeBjCdUedddddddddddddddddVdWdXd8ed7edYee d e"eDe&f dZee% d[e!d\e!d]ee% dee d^ee dCe<dee dee dee dOe"e>e!e?f dLee! dMee= dNee> dPee dQee dHe+d_e+d)ef.dcddZFdee d)defdfdgZGe4j5d6kre6rd8ed9e7e8 d)d:fdhdiZHd8ed9e7e8 d)d:fdjdkZId8ed9e7e8 d)d:fdldmZJd8ed9e7e8 d)d:fdndoZKd8ed9e7e8 d)d:fdpdqZLd8ed9e7e8 d)d:fdrdsZMd8ed9e7e8 d)d:fdtduZNnkddvd8edFe!d9e0d)d:fdwdiZHddvd8edFe!d9e0d)d:fdxdkZIddvd8edFe!d9e0d)d:fdydmZJddzd8edDe0d9e0d)d:fd{doZKddzd8edDe0d9e0d)d:fd|dqZLddzd8edDe0d9e0d)d:fd}dsZMd8ed9e0d)d:fd~duZNdddZOePd)e!fddZQePd)ee fddZRePd)e fddZSePd)eTe+e+f fddZUePd)e!fddZVeVjWd0e!d)dfddZVePd)ejfddZXePd)e(fddZYePdddZZePd)e[e\ fddZ]ePd)ee fddZ^ePd)efddZ_ePd)e!fddZ`ePd)e"e!e#ege$d f f fddZaePd)e!fddZbePd)e!fddZcePd)e)e* fddZddddZedddZfdeeeg  deeg deeh d)dfddZidddZjdeeeg  deeg deeh d)dfddZk  ZlS )rc   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requote_redirect_urlNr   r   TF     c                 C   s   dS )Nzutf-8r   )rbr   r   r   <lambda>,  s    zClientSession.<lambda>)	connectorloopro   rp   rz   r{   rq   rr   json_serializerequest_classresponse_classws_response_classversion
cookie_jarconnector_ownerrx   read_timeoutconn_timeoutr|   r   	trust_envr   trace_configsr   r   r   fallback_charset_resolverbase_urlr   r   ro   rp   rz   r{   rq   rr   r   r   r   r   r   r   r   rx   r   r   r|   r   r   r   r   r   r   r   r   returnc                C   s  d | _ |d u r|d ur|j}|pt }|d u st|tr,|| _|d u r&d n| | _nt|| _| j | _| jj	s?J d| jd urO| jj
dsOtd|tu sW|d u rt| _|turotjdtdd tj| j|d| _|d urtj| j|d| _tjd	tdd n"t|tstd
t| d|| _|turtd|d urtd|d u rt|d}|j|urtd|| _| rttd| _|d u rt|d}|| _ |r| j !| || _ || _"|	| _#|| _$|
| _%|| _&|| _'|| _(|| _)|| _*|| _+|| _,|r	t-|}nt- }|| _.|d urt/dd |D | _0nt/ | _0|| _1|| _2|| _3|p0g | _4| j4D ]}|5  q5|| _6|| _7|| _8d| _9d 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.connectr   z0Session and connector has to use same event loopr   c                 s   s    | ]}t |V  qd S Nr   .0ir   r   r   	<genexpr>  s    z)ClientSession.__init__.<locals>.<genexpr>T):r   r   asyncioget_running_loop
isinstancer   r   originr   absolutepathendswith
ValueErrorrS   r   r   warningswarnDeprecationWarningattrevolverd   typerJ   RuntimeError	get_debug	tracebackextract_stacksys	_getframer   rL   r   update_cookiesr   r   r   r   r   r   r   r   r   r   r   r   r   	frozensetr   r   r   r   r   freezer   r   r   r   )selfr   r   r   ro   rp   rz   r{   rq   rr   r   r   r   r   r   r   r   rx   r   r   r|   r   r   r   r   r   r   r   r   real_headerstrace_configr   r   r   __init__  s   $








zClientSession.__init__clsc                 C   s   t jd| jtdd d S )Nz6Inheritance class {} from ClientSession is discouragedr   r   )r   r   formatr   r   )r   r   r   r   __init_subclass__  s   
zClientSession.__init_subclass__namevalc                    s2   || j vrtjd|tdd t || d S )Nz8Setting custom ClientSession.{} attribute is discouragedr   r   )ATTRSr   r   r   r   super__setattr__)r   r   r   	__class__r   r   r    s   
zClientSession.__setattr__	_warningsc                 C   sZ   | j s+d| i}|jd| tfi | | dd}| jd ur#| 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contextr   r   r   __del__  s   



zClientSession.__del__rg   methodurlr  _RequestContextManagerc                 K      d S r   r   r   r  r  r  r   r   r   re     s   zClientSession.requestc                 K   s   t | j||fi |S )zPerform HTTP request.)r  _requestr  r   r   r   re     s   
str_or_urlc                 C   s,   t |}| jd u r|S |jrJ | j|S r   )r   r   r   join)r   r  r  r   r   r   
_build_url  s
   

zClientSession._build_url
   )rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   
verify_sslfingerprintssl_contextr}   r~   r   r   r   r   r   r   rl   rm   rn   rs   rt   ru   rv   rw   ry   r  r  r  r}   r~   r   r   c          :         s   j rtdt||||}|d ur|d urtd|d ur'tj| jd}t|ts6|d ur6t	
dt d}g }  j}!|p@i } |}z |}"W n ty^ }# zt||#d }#~#ww  jd usfJ |"j jjvrqt|"|d urdd |D  jB }$n	 jr j}$nd }$|d u r j}|d u r j}|d u rd }n |}zt|}W n ty }# zt||#d }#~#ww |tu rÈ j}%nt|tst|d}%n|}%t j|%j|%jd	}&|&  }'|d u r j!}|d u r j"}|d u r j#}|d u r j$} fd
d j%D }(|(D ]})|)&||"'||I d H  q|&( }*z|*  j)o)|t*v }+	 t+|"\}"},|"j,s@|r:t-nt}-|-|"| sM|	rM|,rMtd|	d u sZ| r\|,d ur\|,}	|	d u rt j.rt j/rq j0|"1 krt j.}	|d ur|	d urt2j3|v rtd j45|"}.|d urt6 j4j7d}/|/8| |/5|"}0|0r|.9|0 |d urt|}n j:rt;t< t=|"\}}W d    n	1 sw   Y   j>||"fi d|d|d|$d|d|.d|	d|!d|d|d|d jd j?d|d|d|*d d |d ur|ndd!|d"|d#|(d$ j@}1z jjA|1|(|%d%I d H }2W n tBjCyJ }3 ztDd&|" |3d }3~3ww |2jEd usSJ |2jFd us[J |2jFjG|*|tHv |||%jI| jjJ||d'	 z2z"|1K|2I d H }4z
|4 |2I d H  W n tLy   |4M   w W n tLy   |2M   w W n; tNtOfy   |+rd(}+Y q*  tPy     tQy }3 z|3jRd u rt|3tBjCr҂ tN|3jS |3d }3~3ww |4jT }r j48||4jU |4jVd)v r|
r|(D ]})|)W||"'|||4I d H  q|d*7 }| X|4 |r'||kr'|4M  tY| d jZt[| |4jVd+kr4|4j\t2j]ksA|4jVd,v rS|4j\t2j^krSt2j_}d }|`t2jarS|bt2ja |4jc`t2jdpa|4jc`t2je}5|5d u rhno|4f  z
t|5 jg d-}6W n ty }# zt-|5d.|#d }#~#ww |6j}7|7thvr|4M  ti|5|7s|"j|6}6z|61 }8W n ty }9 zt-|6d/|9d }9~9ww |"1 |8krd }	|bt2j3d  |6}"i }|4f  q*	 W d    n	1 sw   Y  |d u r jk}|d u rntl|r||4I d H  n|r	|4m  |'d ur |4jnd ur|4jno|'jp n|'p  t[| |4_q|(D ]})|)r||"'|||4I d H  q'|4W S  tLyj }# z"|&M  |'rQ|'p  d }'|(D ]})|)s||"'|||#I d H  qS d }#~#ww )0NzSession is closedz9data and json parameters can not be used at the same time)dumpszChunk size is deprecated #1615r   c                 S   s   h | ]}t |qS r   r   r   r   r   r   	<setcomp>!  s    z)ClientSession._request.<locals>.<setcomp>r   )r   c                    s    g | ]}t  ||jd qS ))r   )r\   trace_config_ctx)r   r   r   r   r   r   
<listcomp>Q  s    
z*ClientSession._request.<locals>.<listcomp>Tz<Cannot combine AUTH argument with credentials encoded in URLzTCannot combine AUTHORIZATION header with AUTH argument or credentials encoded in URL)quote_cookierl   rp   rq   rm   ro   rr   r   ru   rv   rw   r   r   rz   r{   timersessionr}   r~   r   tracesr   )r$  r|   zConnection timeout to host )	r"  skip_payloadry   r   r   r   timeout_ceil_thresholdr   r   F)-  .  /  i3  i4  r   r)  )r'  r(  )encodedzHServer attempted redirecting to a location that does not look like a URLzInvalid redirect URL origin)tr	  r   rC   r   r   JsonPayloadr   r   r   r   r   r   r   _prepare_headersr  r2   r   schemeallowed_protocol_schema_setr4   r   r   r   r   r1   rS   r   rd   rQ   r   r   r   startr   r   r   r   r   send_request_startupdate_queryr"  r   IDEMPOTENT_METHODSrT   raw_hostr3   r   r   r   r   r   AUTHORIZATIONr   filter_cookiesrL   r!  r   loadr   r   LookupErrorrR   r   r   r   r   r   TimeoutErrorr/   	transportprotocolset_response_paramsrO   r   _timeout_ceil_thresholdsendBaseExceptioncloser*   r8   r(   OSErrorerrnoargs_cookiesr  statussend_request_redirectappendr<   request_infotupler  	METH_HEAD	METH_POSTMETH_GETgetCONTENT_LENGTHpoprp   LOCATIONURIreleaser   rG   r5   r  r   callablerx   
connectionadd_callbackcancel_historysend_request_endsend_request_exception):r   r  r  rl   rm   rn   ro   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   r  r  r  r}   r~   r   r   r   r   r   r   	redirectshistoryr   r  eskip_headersreal_timeouttmhandler$  tracer"  retry_persistent_connectionauth_from_urlerr_exc_clsall_cookiestmp_cookie_jarreq_cookiesreqconnexcrespr_urlparsed_redirect_urlr-  redirect_originorigin_val_errr   r  r   r    sv  )




	









	





  
\



zClientSession._requestr   r   i  @ )r  	protocolsr|   receive_timeout	autocloseautoping	heartbeatrr   r   rl   rp   rz   r{   r}   r  r  r  r~   r   ru   max_msg_sizero  rp  rq  rr  rs  r   rt  _WSRequestContextManagerc                C   s   t | j|fi d|d|d|d|d|d|d|d|	d	|
d
|d|d|d|d|d|d|d|d|d|d|d|S )zInitiate websocket connection.r  ro  r|   rp  rq  rr  rs  rr   r   rl   rp   rz   r{   r}   r  r  r  r~   r   ru   rt  )ru  _ws_connect)r   r  r  ro  r|   rp  rq  rr  rs  rr   r   rl   rp   rz   r{   r}   r  r  r  r~   r   ru   rt  r   r   r   
ws_connect`  s^   	
zClientSession.ws_connectc          ,         s  |t urt|tr|}ntjdtdd t|d}nt}|d ur0tjdtdd tj||d}|d u r8t	 }nt	|}t
jdt
jdt
jd	i}| D ]
\}}||| qKttd
}| |t
j< |rod||t
j< |
d urx|
|t
j< |rt|d}||t
j< |d u rtjdtdd d}t||||}| j||||d|	|||||dI d H }z!|jdkrt|j|j d|j|j!d|j!"t
jd# dkrt|j|j d|j|j!d|j!"t
jd# dkrt|j|j d|j|j!d|j!"t
j$d}tt%&|t' (  } || krt|j|j d|j|j!dd }!|rCt
j|j!v rCdd |j!t
j )dD }"|"D ]}#|#|v rA|#}! nq6d}$|r}|j!"t
j}%|%ryzt*|%\}}$W n" t+yx }& zt|j|j |&j,d |j|j!d|&d }&~&ww d}d}$|j-}'|'d usJ |'j.}(|(d usJ |j/d u rd |(_0n|(j0d urt1|j/|(j0|(_0|'j2})|)d usJ t3|(d| j4d}*|(5t6|*||* t7|(|)d||$d}+W n t8y   |9   w | j:|*|+|!||||| j4|||$dS ) 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   ,)ru   z+ssl=None is deprecated, please use ssl=TrueTF)	rl   rp   ry   rr   rz   r{   r}   r~   r   e   zInvalid response status)r  rD  rp    zInvalid upgrade headerupgradezInvalid connection headerzInvalid challenge responsec                 S   s   g | ]}|  qS r   )strip)r   protor   r   r   r   &  s    z-ClientSession._ws_connect.<locals>.<listcomp>r   r   r   )use_maskru   
notakeover)rs  ru   client_notakeover);rS   r   rF   r   r   r   rD   r   r   r   r   UPGRADE
CONNECTIONSEC_WEBSOCKET_VERSIONitems
setdefaultbase64	b64encodeosurandomdecodeSEC_WEBSOCKET_KEYr  SEC_WEBSOCKET_PROTOCOLORIGINrZ   SEC_WEBSOCKET_EXTENSIONSrC   re   rD  r>   rG  rZ  rp   rL  lowerSEC_WEBSOCKET_ACCEPThashlibsha1rU   digestsplitr[   rY   rB  rS  r:  ry  r   maxr9  r    r   
set_parserrW   rX   r>  r?  r   ),r   r  r  ro  r|   rp  rq  rr  rs  rr   r   rl   rp   rz   r{   r}   r  r  r  r~   r   ru   rt  
ws_timeoutr   default_headerskeyvaluesec_keyextstrrj  r_keymatchr:  resp_protocolsr  r  compress_hdrsri  rh  
conn_protor9  readerwriterr   r   r   rv    s@  




	
	
	
zClientSession._ws_connectCIMultiDict[str]c                 C   sh   t | j}|r2t|ttfst |}t }| D ]\}}||v r(||| q|||< || q|S )z3Add default headers and transform it to CIMultiDict)r   r   r   r   r   setr  add)r   rp   resultadded_namesr  r  r   r   r   r,  o  s   
zClientSession._prepare_headersc                 K   r  r   r   r   r  r  r   r   r   rL       zClientSession.getc                 K   r  r   r   r  r   r   r   options  r  zClientSession.optionsc                 K   r  r   r   r  r   r   r   head  r  zClientSession.headc                 K   r  r   r   r  r   r   r   post  r  zClientSession.postc                 K   r  r   r   r  r   r   r   put  r  zClientSession.putc                 K   r  r   r   r  r   r   r   patch  r  zClientSession.patchc                 K   r  r   r   r  r   r   r   delete  r  zClientSession.delete)rs   c                K      t | jtj|fd|i|S )zPerform HTTP GET request.rs   )r  r  r   rK  r   r  rs   r  r   r   r   rL       c                K   r  )zPerform HTTP OPTIONS request.rs   )r  r  r   METH_OPTIONSr  r   r   r   r    r  c                K   r  )zPerform HTTP HEAD request.rs   )r  r  r   rI  r  r   r   r   r    r  )rm   c                K   r  )zPerform HTTP POST request.rm   )r  r  r   rJ  r   r  rm   r  r   r   r   r       c                K   r  )zPerform HTTP PUT request.rm   )r  r  r   METH_PUTr  r   r   r   r    r  c                K   r  )zPerform HTTP PATCH request.rm   )r  r  r   
METH_PATCHr  r   r   r   r    r  c                 K   s   t | jtj|fi |S )zPerform HTTP DELETE request.)r  r  r   METH_DELETEr  r   r   r   r    s   c                    s6   | j s| jdur| jr| j I dH  d| _dS dS )zMClose underlying connector.

        Release all acquired resources.
        N)r	  r   r   r?  r   r   r   r   r?    s   
zClientSession.closec                 C   s   | j du p| j jS )z@Is client session closed.

        A readonly property.
        N)r   r	  r  r   r   r   r	    s   zClientSession.closedc                 C      | j S )z(Connector instance used for the session.r   r  r   r   r   r        zClientSession.connectorc                 C   r  )zThe session cookies.)r   r  r   r   r   r      r  zClientSession.cookie_jarc                 C   r  )z"The session HTTP protocol version.)r   r  r   r   r   r     r  zClientSession.versionc                 C   r  ))Do URL requoting on redirection handling.)r   r  r   r   r   r   
  r  z"ClientSession.requote_redirect_urlc                 C   s   t jdtdd || _dS )r  z=session.requote_redirect_url modification is deprecated #2778r   r   N)r   r   r   r   )r   r   r   r   r   r     s   
c                 C   s   t jdtdd | jS )zSession's loop.z"client.loop property is deprecatedr   r   )r   r   r   r   r  r   r   r   r     s   zClientSession.loopc                 C   r  )zTimeout for the session.)r   r  r   r   r   r|   !  r  zClientSession.timeoutc                 C   r  )z*The default headers of the client session.)r   r  r   r   r   rp   &  r  zClientSession.headersc                 C   r  )z2Headers for which autogeneration should be skipped)r   r  r   r   r   rq   +  r  zClientSession.skip_auto_headersc                 C   r  )z2An object that represents HTTP Basic Authorization)r   r  r   r   r   rr   0  r  zClientSession.authc                 C   r  )zJson serializer callable)r   r  r   r   r   r   5  r  zClientSession.json_serializec                 C   r  )z-Should connector be closed on session closing)r   r  r   r   r   r   :  r  zClientSession.connector_ownerc                 C   r  )zGShould `ClientResponse.raise_for_status()` be called for each response.)r   r  r   r   r   rx   ?  s   zClientSession.raise_for_statusc                 C   r  )z7Should the body response be automatically decompressed.)r   r  r   r   r   r   F  r  zClientSession.auto_decompressc                 C   r  )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  r   r   r   r   K  s   zClientSession.trust_envc                 C   r  )z7A list of TraceConfig instances used for client tracing)r   r  r   r   r   r   U  r  zClientSession.trace_configsc                 C   s
   d| _ dS )zwDetach connector from session without closing the former.

        Session is switched to closed state anyway.
        Nr  r  r   r   r   detachZ  s   
zClientSession.detachc                 C   s   t d)NzUse async with instead)	TypeErrorr  r   r   r   	__enter__a     zClientSession.__enter__exc_typeexc_valexc_tbc                 C   r  r   r   r   r  r  r  r   r   r   __exit__d  s   zClientSession.__exit__c                    s   | S r   r   r  r   r   r   
__aenter__m  s   zClientSession.__aenter__c                    s   |   I d H  d S r   )r?  r  r   r   r   	__aexit__p  s   zClientSession.__aexit__r   r   N)r   r  )r   rc   )mr   r   r   __doc__r   r   r   r   r   StackSummaryr   r   rH   rn   r  r?   r@   rE   r   HttpVersion11rS   rb   r   AbstractEventLoopr_   r`   rP   r   r   r^   r   rV   r!   r   r   r   r   r   rM   objectrd   r   r]   r   _CharsetResolverr   r   rN   r   r  r   r  r   version_infor   rj   rk   re   r   r  ra   bytesrf   rA   r   r  r   rK  rF   rw  rv  r,  rL  r  r  r  r  r  r  r?  propertyr	  r   r   r   r   r   setterr   r|   rp   r
   r   rq   rr   r   r   rx   r   r   r   r  r  r>  r   r  r  r  __classcell__r   r   r  r   rc      s  
 "	




 !
 
	
	


 !"#
   
	

:
	

 Z





	



	
	


		




	
rc   c                   @   s   e Zd ZdZdeddef ddfddZdd	d
ZdededdfddZ	dddZ
deedef fddZdeedef fddZdefddZdeee  dee dee ddfddZdS )_BaseRequestContextManager)_coro_respcoroasyncio.Future[Any]Nr   c                 C   s
   || _ d S r   )r  )r   r  r   r   r   r   }     
z#_BaseRequestContextManager.__init__argc                 C   s   | j |S r   )r  r=  )r   r  r   r   r   r=    s   z_BaseRequestContextManager.sendrB  r  c                 O   s   | j j|i |S r   )r  throw)r   rB  r  r   r   r   r    s   z _BaseRequestContextManager.throwc                 C   s
   | j  S r   )r  r?  r  r   r   r   r?    r  z _BaseRequestContextManager.closec                 C   s   | j  }|S r   )r  	__await__)r   retr   r   r   r    s   
z$_BaseRequestContextManager.__await__c                 C   s   |   S r   )r  r  r   r   r   __iter__  r  z#_BaseRequestContextManager.__iter__c                    s    | j I d H | _| j I d H S r   )r  r  r  r  r   r   r   r    s   z%_BaseRequestContextManager.__aenter__r  ri  tbc                    s   | j |||I d H  d S r   )r  r  r   r  ri  r  r   r   r   r    s   z$_BaseRequestContextManager.__aexit__)r  Nr   r  r  )r   r   r   	__slots__r   r   r   r=  r   r  r?  r   r  r  r  r   r   r>  r   r  r   r   r   r   r  y  s$    


r  c                   @   sh   e Zd ZdZdeddef deddfddZdefd	d
Zde	e
e  de	e de	e ddfddZdS )_SessionRequestContextManagerr  r  _sessionr  r  Nr#  r   c                 C   s   || _ d | _|| _d S r   r  )r   r  r#  r   r   r   r     s   
z&_SessionRequestContextManager.__init__c                    s:   z| j I d H | _W | jS  ty   | j I d H   w r   )r  r  r>  r  r?  r  r   r   r   r    s   z(_SessionRequestContextManager.__aenter__r  ri  r  c                    s.   | j d usJ | j   | j I d H  d S r   )r  r?  r  r  r   r   r   r    s   
z'_SessionRequestContextManager.__aexit__)r   r   r   r  r   r@   rc   r   r  r   r   r>  r   r  r   r   r   r   r    s&    
		
r  r  r   )rl   rm   rn   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   ro   r   r   r   r   r   r   r  r  rl   rm   rn   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   ro   r   r   r   r   r   r   r   c                C   s   d}|du rd}t |dd}t||||||d}t|j| |fi d|d|d|d	|d
|d|d|d|	d|
d|d|d|d|d|d|d|d|d||S )a  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
      >>> resp = await aiohttp.request('GET', 'http://python.org/')
      >>> resp
      <ClientResponse(python.org/) [200]>
      >>> data = await resp.read()
    FNT)r   force_close)r   ro   r   r|   r   r   rl   rm   rn   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r   r   r   )rJ   rc   r  r  )r  r  rl   rm   rn   rp   rq   rr   rs   rt   ru   rv   rw   rx   ry   rz   r{   r|   ro   r   r   r   r   r   r   r   r#  r   r   r   re     sn   @		
re   )r  r   r  r  rn   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   	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-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   client_reqrepr?   r@   rA   rB   rC   	client_wsrD   rE   rF   r   rG   rH   rI   rJ   rK   	cookiejarrL   helpersrM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   http_websocketrY   rZ   r[   tracingr\   r]   typedefsr^   r_   r`   ra   rb   __all__r}   rf   r  rj   rk   srd   r   r   r   r2  r   r  r   r  rc   r  r  ru  r  r  r   r   r  r  re   r   r   r   r   <module>   s   T|(
3          $%
	

