
    iE              )       0   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 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 ddlmZ dd	lmZ dd
lmZ ddl m!Z! ddl"m#Z#m$Z$ ddl%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZBmCZCmDZDmEZEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z` ddlambZb ddlcmdZd ddlemfZfmgZg ddlhmiZimjZjmkZk ddllmmZmmnZnmoZo ddlpmqZqmrZrmsZsmtZt ddlumvZvmwZwmxZxmyZymzZzm{Z{m|Z|m}Z}m~Z~mZmZmZmZmZ ddlmZmZmZmZmZmZmZmZmZ ddlmZ ddlmZmZmZmZmZmZmZmZmZmZmZ ddlmZmZmZ dZerd dlmZ n	 d dlmZ  ejJ                  de`d       ee   Zdddddedddd	d ee#ee#   f   d!eeeef      d"ee   d#ee!ee!   df   d$eeej                  eej                     f      d%ee   d&eed'      d(ed)ee   d*ee   d+ed,dfd-Zd.ed/   d0e jX                  d,dfd1Zddddd2d3dedededj\                  edddd4dd5d ee#ee#   f   d!eeeef      d"ee   d#ee!ee!   df   d$eeej                  eej                     f      d6ed7ed%ee   d&eed'      d(ed8ee   d9ed:eej`                     d;ed)ee   d*ee   d<ed0ee jX                     d+ed,df(d=Zd>ee   d,dfd?Zed@k(  r eejh                  dd        yy# e$ r eZY w xY w)A    N)ArgumentParser)Iterable)suppress)import_module)TYPE_CHECKINGAny	AwaitableCallabler   ListOptionalSetTypeUnioncast   )AbstractAccessLogger)AppKey)access_logger)PathLike)ApplicationCleanupError);HTTPAcceptedHTTPBadGatewayHTTPBadRequestHTTPClientErrorHTTPConflictHTTPCreated	HTTPErrorHTTPExceptionHTTPExpectationFailedHTTPFailedDependencyHTTPForbidden	HTTPFoundHTTPGatewayTimeoutHTTPGoneHTTPInsufficientStorageHTTPInternalServerErrorHTTPLengthRequiredHTTPMethodNotAllowedHTTPMisdirectedRequestHTTPMoveHTTPMovedPermanentlyHTTPMultipleChoices!HTTPNetworkAuthenticationRequiredHTTPNoContentHTTPNonAuthoritativeInformationHTTPNotAcceptableHTTPNotExtendedHTTPNotFoundHTTPNotImplementedHTTPNotModifiedHTTPOkHTTPPartialContentHTTPPaymentRequiredHTTPPermanentRedirectHTTPPreconditionFailedHTTPPreconditionRequiredHTTPProxyAuthenticationRequiredHTTPRedirectionHTTPRequestEntityTooLargeHTTPRequestHeaderFieldsTooLargeHTTPRequestRangeNotSatisfiableHTTPRequestTimeoutHTTPRequestURITooLongHTTPResetContentHTTPSeeOtherHTTPServerErrorHTTPServiceUnavailableHTTPSuccessfulHTTPTemporaryRedirectHTTPTooManyRequestsHTTPUnauthorizedHTTPUnavailableForLegalReasonsHTTPUnprocessableEntityHTTPUnsupportedMediaTypeHTTPUpgradeRequiredHTTPUseProxyHTTPVariantAlsoNegotiatesHTTPVersionNotSupportedNotAppKeyWarning)FileResponse)AccessLogger)
middlewarenormalize_path_middleware)PayloadAccessErrorRequestHandlerRequestPayloadError)BaseRequest	FileFieldRequest)ContentCodingResponseStreamResponsejson_response)AbstractRouteDefRouteDefRouteTableDef	StaticDefdeletegetheadoptionspatchpostputroutestaticview)		AppRunner
BaseRunnerBaseSiteGracefulExitNamedPipeSiteServerRunnerSockSiteTCPSiteUnixSite)Server)AbstractResourceAbstractRouteDynamicResourcePlainResourcePrefixedSubAppResourceResourceResourceRouteStaticResourceUrlDispatcherUrlMappingMatchInfoView)WebSocketReadyWebSocketResponse	WSMsgType)rr   r   r   rR   r   r   r   r   r   r   r   r   r    r!   r"   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>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rS   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   r`   ra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   ro   rp   rq   rr   rt   ru   rv   rw   rs   rx   ry   rz   r{   r|   r}   r~   r   r   r   r   r   r   r   r   run_app)
SSLContextignoreT)categoryappend   )	hostportpathsockssl_contextprintbacklogreuse_address
reuse_portappr   r   r   r   r   r   ).Nr   r   r   kwargsreturnc       	           K   t        j                  |       r
|  d {   } t        t        |       } t	        | fi |
}|j                          d {    g }	 |[t        |t              r"|j                  t        |||||||	             nO|D ]#  }|j                  t        |||||||	             % n&||| |j                  t        ||||||	             |dt        |t        t        j                  f      r|j                  t        ||||             n%|D ]   }|j                  t        ||||             " |Tt        |t              s|j                  t        ||||             n%|D ]   }|j                  t        ||||             " |D ]  }|j                          d {     |rBt!        d |j"                  D              } |dj%                  dj'                  |                   	 t        j(                  d       d {    7 7 7 o7 # |j+                          d {  7   w xY ww)N)r   r   r   r   )r   r   r   r   r   )r   r   c              3   F   K   | ]  }t        |j                          y w)N)strname).0ss     F/var/www/html/binance/venv/lib/python3.12/site-packages/aiohttp/web.py	<genexpr>z_run_app.<locals>.<genexpr>  s     =13qvv;=s   !z6======== Running on {} ========
(Press CTRL+C to quit)z, i  )asyncioiscoroutiner   r   ro   setup
isinstancer   r   rv   osr   rw   r   ru   startsortedsitesformatjoinsleepcleanup)r   r   r   r   r   r   r   r   r   r   r   runnerr   hpr   sitenamess                     r   _run_appr   1  si     3i
{C
 Cs%f%F
,,.E^$$$/ '&3#-
  ALL" (3$+*7'1
 \dld.>LL +#"/)	 $bkk 23$/ '	  ALL "(3$+	 dH-$/ '	  ALL "(3$+	  	D**,	 ===E))/		%0@)A --%%% K  j  &nnsk   IH3IHIEH$ 0H 1A#H$ H"H$ II H$ "H$ $H?8H;9H??I	to_cancelzasyncio.Task[Any]loopc                    | sy | D ]  }|j                           |j                  t        j                  | ddi       | D ]G  }|j	                         r|j                         %|j                  d|j                         |d       I y )Nreturn_exceptionsTz1unhandled exception during asyncio.run() shutdown)message	exceptiontask)cancelrun_until_completer   gather	cancelledr   call_exception_handler)r   r   r   s      r   _cancel_tasksr     s       	GNNINNO 
>>>>'''R!%!1 	
    g      N@g     R@F)r   r   r   r   shutdown_timeoutkeepalive_timeoutr   r   r   access_log_classaccess_log_format
access_loghandle_signalsr   r   handler_cancellationr   r   r   r   r   r   r   r   c          	      .   |t        j                         }|j                         r|r~|j                  dk(  ro|j                  t
        j                  k(  r|j                  t
        j                         |j                         s#|j                  t        j                                |j                  t        | fi d|d|d|d|d|d|d	|d
|d|	d|
d|d|d|d|d|d||      }	 t        j                  |       |j                  |       	 |j%                          t'        t         j(                        5  |j                  |       ddd       t+        t        j,                  |      |       |j                  |j/                                |j1                          y# t         t"        f$ r Y w xY w# 1 sw Y   mxY w# t+        t        j,                  |      |       |j                  |j/                                |j1                          w xY w# 	 |j%                          t'        t         j(                        5  |j                  |       ddd       n# 1 sw Y   nxY wt+        t        j,                  |      |       |j                  |j/                                |j1                          w # t+        t        j,                  |      |       |j                  |j/                                |j1                          w xY wxY w)zRun an app locallyNzaiohttp.accessr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   )r   new_event_loop	get_debugr   levelloggingNOTSETsetLevelDEBUGhasHandlers
addHandlerStreamHandlercreate_taskr   set_event_loopr   rr   KeyboardInterruptr   r   CancelledErrorr   	all_tasksshutdown_asyncgensclose)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   	main_tasks                       r   r   r     s   . |%%' ~~J:??>N+Nw~~-.%%'!!'"7"7"9:  	
	
 	
 		

 	
 .	
 0	
 $	
 	
 	
 .	
 0	
 "	
 *	
 (	
  "!	
" "6%	
I.t$	*	'001 3''	23 '++D148##D$;$;$=>JJL +, 
3 3 '++D148##D$;$;$=>JJL	'001 3''	23 3 3 '++D148##D$;$;$=>JJL '++D148##D$;$;$=>JJLs{   3&F, )G GG ,F>;H  =F>>H  G
G AH L")KI&	K&I/+K2ALALLargvc                    t        dd      }|j                  ddd       |j                  dd	d
d        |j                  dddt        d       |j                  ddd       |j                  |       \  }}|j                  j                  d      \  }}}|r|s|j                  d       |j                  d      r|j                  d       	 t        |      }	 t        |      }	|j                  !t        t        d      s|j                  d       t        j                   t        j"                         |j                  r|j$                  d x}
}n|j$                  xs d }
|j&                  } 	|      }t)        ||
||j                  !       |j+                  d"#       y # t        $ r!}|j                  d| d|        Y d }~d }~ww xY w# t        $ r |j                  d|d|       Y w xY w)$Nzaiohttp.web Application serverzaiohttp.web)descriptionprog
entry_funczvCallable returning the `aiohttp.web.Application` instance to run. Should be specified in the 'module:function' syntax.z
entry-func)helpmetavarz-Hz
--hostnamez0TCP/IP hostname to serve on (default: localhost))r   defaultz-Pz--portz.TCP/IP port to serve on (default: %(default)r)i  )r   typer   z-Uz--pathz_Unix file system path to serve on. Can be combined with hostname to serve on both Unix and TCP.)r   :z,'entry-func' not in 'module:function' syntax.z#relative module names not supportedzunable to import z: zmodule z has no attribute AF_UNIXz=file system paths not supported by your operating environment)r   	localhost)r   r   r   zStopped
)r   )r   add_argumentintparse_known_argsr   	partitionerror
startswithr   ImportErrorgetattrAttributeErrorr   hasattrsocketr   basicConfigr   hostnamer   r   exit)r   
arg_parserargs
extra_argvmod_str_func_strmoduleexfuncr   r   r   s                r   mainr     s   4=J H    ?	   =   )   "2248D*  ??44S9GQ7GH#>?>w'Nvx(
 yyWVY%?K	
 gmm,yyT]]*t}}+yy
z
CCdDII6OOKO(/  >,WIRt<==>  N77+-?|LMNs*   F& G &	G/GG G76G7__main__)r   r   r   r   syswarningsargparser   collections.abcr   
contextlibr   	importlibr   typingr   r   r	   r
   TypingIterabler   r   r   r   r   r   abcr   helpersr   logr   typedefsr   web_appr   r   web_exceptionsr   r   r   r   r   r   r   r   r    r!   r"   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>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   rM   rN   rO   rP   rQ   rR   web_fileresponserS   web_logrT   web_middlewaresrU   rV   web_protocolrW   rX   rY   web_requestrZ   r[   r\   web_responser]   r^   r_   r`   web_routedefra   rb   rc   rd   re   rf   rg   rh   ri   rj   rk   rl   rm   rn   
web_runnerro   rp   rq   rr   rs   rt   ru   rv   rw   
web_serverrx   web_urldispatcherry   rz   r{   r|   r}   r~   r   r   r   r   r   web_wsr   r   r   __all__sslr   r   objectfilterwarningsr   HostSequencer   r   boolr   AbstractEventLoopr   
LOG_FORMATfloatLoggerr   r   __name__r    r   r   <module>r&     sh     	  
  # $  #    & %   M< < < < < < < < < < < < < < < <z ; ! 
 
     
 
 
 )    @F "
   +;D Ic" 04<@JN(,+0$(!%x	{Ik22	3x 5l*+
,x 3-	x
 .2D8
9x 5v}}(EEF
Gx *%x HY'(x x D>x x x 
xv&'/6/H/H	6 04<@JN"#(,+03?)44+8$(!%!&04'E	{Ik22	3E 5l*+
,E 3-	E
 .2D8
9E 5v}}(EEF
GE E E *%E HY'(E E /0E E (E E  D>!E" #E$ %E& 7,,
-'E( )E* 
+EP@)tCy @)T @)F z!" O	  
s   L
 
LL