gk7FOoOOFoOOFoOOFoOOFoOOFoOOFoOOFoOOF o OOF o OOF o OOF o OOF o OOFoOOFoOOFoOOFoOOFoOOFEoOOFEoOOFEoOOFEoOOFEoOO FEoOO FEoOO FEoOO FEoOO FEoOOFEoOOFE o OOF!E"o"Oo#Oo$Oo%X&X O1o'Oo(Oo)Oo*Oo+O&Ogo,O'Ogo-Oo.X&X O1%^Oo/JOo/Oo0O O!XMb1o2O"O#XMf1o4O$O%XMj1o6dX^OoIc9c)(aBase implementation of event loop. The event loop can be broken up into a multiplexer (the part responsible for notifying us of I/O events) and the event loop proper, which wraps a multiplexer with functionality for scheduling callbacks, immediately or at a given time in the future. Whenever a public API takes a callback, subsequent positional arguments will be passed to the callback if/when it is called. This avoids the proliferation of trivial lambdas implementing closures. Keyword arguments for the callback are not supported; this is a conscious design decision, leaving the door open for keyword arguments to modify the meaning of the API call itself. N) constants) coroutines)events) exceptions)futures) protocols)sslproto) staggered)tasks)timeouts) transports)trsock)logger) BaseEventLoopServerdg?AF_INET6iQcQMkWWQOO1WM1%^W QM 1!WQ1!)N__self__) _callback isinstancegetattrr Taskreprrstr)handlecbs ,/usr/lib64/python3.14/asyncio/base_events.py_format_handler Gs@   B'"j$/<<BKK  6{clQWM6X^dQWM6X^dWQ1!)Nzz) subprocessPIPESTDOUTr)fds r _format_piper'Ps+ Z__ z  Bxr!cWWO1%a WO1bQMWMWM O1dW ^ WO1bc9c)N SO_REUSEPORTz)reuse_port not supported by socket modulerzTreuse_port not supported by socket module, SO_REUSEPORT defined but not implemented.)hasattrsocket ValueError setsockopt SOL_SOCKETr)OSErrorsocks r_set_reuseportr2Ysc 6> * *DEE J OOF--v/B/BA F JIJ J Js /AA(c WWO1%adQOWMWM-7aQ`dQWM6X^WMkJ&QWM 6X^WMkJdQ`OkJHW QW1%^ QO6X^OkJ*W QW1%^ QO6X^OkJ WQ1kQWM6X^<WM+kW%^QMWM 1JQ+kW QW1%^QM#O1kOQ7^dQCJkWM$T1W%^QWM 6X^ TQOTTV00p!TQOT00p! dWW0^dc9cW&^Hrc9c)N inet_ptonrr!idna%)r*r+ IPPROTO_TCP IPPROTO_UDP SOCK_STREAM SOCK_DGRAMrbytesrint TypeErrorr, AF_UNSPECAF_INET _HAS_IPv6appendrdecoder4r/) hostportfamilytypeprotoflowinfoscopeidafsafs r _ipaddr_inforMds 6; ' ' Q**F,>,>?? L v!!!"" "" """ | D% TS[ D#  42: t9D!!!~~ 9 JJv 'h${{6" d{    R &yR6??2T,KKKTL88 ;:&  2   s* F*(_interleave_addrinfos..s  a   s ) collections OrderedDictrBlistvaluesextend itertoolschain from_iterable zip_longest) addrinfosfirst_address_family_countaddrinfos_by_familyaddrrFaddrinfos_lists reordereds r_interleave_addrinfosres&113a  ,*,  '#**40  .5578OI!A%+,K-G!-KLM A > :Q >> ? ??00  ! !? 3  r!cQM1%a,QM1kWQWW01%^dW M Q1M1drP) cancelled exceptionr SystemExitKeyboardInterruptr _get_loopstop)futexcs r_run_until_complete_cbrosG ==??mmo cJ(9: ; ;  c!r! TCP_NODELAYc<QMWMWM-7^nQMWM 6X^OQM WM6X^0QMWMWMO1dddd)Nr) rFr+r@rrGr:rHr8r-rpr0s r _set_nodelayrrsj KKFNNFOO< < V/// f000 OOF..0B0BA F10 =r!cdrPrQr0s rrrrrs r!chW_+WQWM1%^ WO1bdd)Nz"Socket cannot be of type SSLSocket)sslr SSLSocketr>r0s r_check_ssl_socketrws* :dCMM::<==;r!cT[XoOoOojOoOoOoOoOoOo Oo O o O o O o Qod ) _SendfileFallbackProtocolcWQWM1%a WO1bTiQM 1QiQM1QiQMQi QM1QMQ1QM%^*QMMM1QidOQid)Nz.transport should be _FlowControlMixin instance)rr_FlowControlMixinr> _transport get_protocol_proto is_reading_should_resume_reading_protocol_paused_should_resume_writing pause_reading set_protocol_loop create_future_write_ready_fut)selftransps r__init__"_SendfileFallbackProtocol.__init__s&*">">??LM M ))+ &,&7&7&9#&,&=&=#D!  & &$(OO$9$9$G$G$ID !$(D !r!c QMM1%^ WO1bQMkQ`dQDOesI dI3c)NzConnection closed by peer)r} is_closingConnectionErrorr)rrms rdrain_SendfileFallbackProtocol.drains> ?? % % ' '!"=> >## ;  sAA AA cWO1b)Nz?Invalid state: connection should have been established already. RuntimeErrorr transports rconnection_made)_SendfileFallbackProtocol.connection_madesNO Or!cQM_CQ`%QMMWO11JQMMQ1QMM Q1d)NzConnection is closed by peer)r set_exceptionrrconnection_lost)rrns rr)_SendfileFallbackProtocol.connection_losts[  ,{%%33#$BCE%%33C8 ##C(r!crQM_dQMMM1QidrP)rr}rrrs r pause_writing'_SendfileFallbackProtocol.pause_writings,  ,  $ 5 5 C C Er!cdQM`dQMMO1OQidNF)r set_resultrs rresume_writing(_SendfileFallbackProtocol.resume_writings-  (  ((/ $r!cWO1bNz'Invalid state: reading should be pausedr)rdatas r data_received'_SendfileFallbackProtocol.data_receivedDEEr!cWO1brrrs r eof_received&_SendfileFallbackProtocol.eof_receivedrr!cR QMMQM1QM%^QMM 1QM _QM M 1QM%^QMM1dd3crP) r}rrrresume_readingrcancelrrrs rrestore!_SendfileFallbackProtocol.restoresr $$T[[1  & & OO * * ,  ,  ! ! ( ( *  & & KK & & ( 'sB%B')rrrr}rN)__name__ __module__ __qualname____firstlineno__rrrrrrrrr__static_attributes____classdictcell__ __classdict__s@rryrys6 )O )F % FF )r!ryc[XoOoOojOOgoOoOoOoOoOo O o O o X O 1o O oO oOoOoOoOoOoQod)riNcTiT iWM1Qi+QiT0iTPiT@iT`i Tpi OQi OQi dr) r_socketsweakrefWeakSet_clients_waiters_protocol_factory_backlog _ssl_context_ssl_handshake_timeout_ssl_shutdown_timeout_serving_serving_forever_fut)rloopsocketsprotocol_factory ssl_contextbacklogssl_handshake_timeoutssl_shutdown_timeouts rrServer.__init__sO   )  !1 '&;#%9" $(!r!cROQMM OQM8 O/!)N) __class__rrrs r__repr__Server.__repr__%s'4>>**+9T\\4DAFFr!cXQM`NbQMMQ1drP)rraddrs r_attachServer._attach(s$}}((( )$r!cQMMQ1WQM1O6X^QM`QM 1dddNr)rdiscardlenr_wakeuprs r_detachServer._detach,s? i( t}}  "t}}'< LLN(= "r!cQMkOQiQC+kQM1%^HQMO1H- drP)rdoner)rwaiterswaiters rrServer._wakeup1s5-- F;;==!!$'r!c 4QM%^dOQiQMCokQMQM1QMM QM TMTMQMQM1Hq d)NT) rrlistenrr_start_servingrrrr)rr1s rrServer._start_serving8sl ==  MMD KK & JJ % %&&.?.?mmT%@%@** ,"r!cQM!rP)rrs rget_loopServer.get_loopCs zzr!cQM!rP)rrs r is_servingServer.is_servingFs }}r!cVQM`dWOQM11!)NrQc3L QCkWMQ1sH d3crP)rTransportSocket)rRss rrT!Server.sockets..MsF 1V++A.. s"$)rtuplers rrServer.socketsIs$ == F FFFr!cvQMkQ`dOQiQCkQMMQ1H OQiQM_@QMM 1%a!QMM 1OQiWQM1O6X^QM1dd)NFr) rr _stop_servingrrrrrrr)rrr1s rclose Server.closeOs-- ?  D JJ $ $T *  % % 1--2244  % % , , .(,D % t}}  " LLN #r!cfQMM1CkQM1H drP)rcopyrrs r close_clientsServer.close_clientsb#++-I OO .r!cfQMM1CkQM1H drP)rrabortrs r abort_clientsServer.abort_clientsfrr!cl QM1WMO1DOesI dI3cr)rr sleeprs r start_servingServer.start_servingjs$ kk!ns *424c QM_WOQ8 O/1bQM`WOQ8 O/1bQM1QMM 1QiQMDOesI OQidI W M^1QM1QM1DOesI bb9cc9cOQic9c3c)Nzserver z, is already being awaited on serve_forever()z is closed) rrrrrrrCancelledErrorr wait_closedrs r serve_foreverServer.serve_foreverps  $ $ 0$!MNP P ==  ;< < $(JJ$<$<$>! -++ + +)-D % ,((   &&(((  )-D %s`A*C -B <B =B C  B C!#C CC  C C  CC CC c QM`dQMM1kQMMQ1QDOesI dI3c)aWait until server is closed and all connections are dropped. - If the server is not closed, wait. - If it is closed, but there are still active connections, wait. Anyone waiting here will be unblocked once both conditions (server is closed and all connections have been dropped) have become true, in either order. Historical note: In 3.11 and before, this was broken, returning immediately if the server was already closed, even if there were still active connections. An attempted fix in 3.12.0 was still broken, returning immediately if the server was still open and there were no active connections. Hopefully in 3.12.1 we have it right. N)rrrrB)rrs rr Server.wait_closeds?* == ))+ V$ sA A A A) rrrrrrrrrrrrP)rrrrrrrrrrrrpropertyrrrrrr r rrrs@rrrsh>B) G% ( ,GG & -*r!rc[XoOoOojOoOoOoOOOO,OgoO oO o OwO OO O,O ggo OwOOOOO OO OOOOOOO,Oggo OxOgo OyOgo OyOgoOwOgoOoOoOoOoOoOoO oOwO!goO"oO#oO$oO%oO&oO'oO(oO)oO*o X!MD0O+go#O,o$O-o%OO,O.go&OO,O/go'OO,O0go(O1o)O2o*O3o+OO,O4go,O5o-O6o.O7o/O8O9O:O9O;O9Ogo1O{O?O,O@ggo2OAo3OBo4OCo5OwODgo6OyOEOO8O9O;O9OM~O;O9OMOMOFOOVOWOEOOXOOQOOYOOOOOOZO, O[ggoDOEOOOOO,O\goEO]oFO^oGO_oHO`XIMOaXIMObXIMOcOOdOOeO9OfOOgOOhO, OigoKO`XIMOaXIMObXIMOcOOdOOeO9OfOOgOOhO, OjgoLOkoMOloNOmoOOnoPOooQOpoROqoSOroTOsoUOtoVOuoWOvoXQoYd)}ricOQiOQiOQiWM1Qi+QiOQiOQiOQi WMO1MQi OQiQMW M"11OQiOQiOQiOQiOQiOQiW0M21QiOQiOQid)NrF monotonicg?)_timer_cancelled_count_closed _stoppingrVdeque_ready _scheduled_default_executor _internal_fds _thread_idtimeget_clock_info resolution_clock_resolution_exception_handler set_debugr_is_debug_mode_old_agen_hooksslow_callback_duration_current_handle _task_factory"_coroutine_origin_tracking_enabled&_coroutine_origin_tracking_saved_depthrr _asyncgens_asyncgens_shutdown_called_executor_shutdown_calledrs rrBaseEventLoop.__init__s&'# !'') !%!%!4!4[!A!L!L"& z0023#'*##!27/6:3"//+*/').&r!c OQMM OQM1 OQM1 OQM 1 O/ !)Nrz running=z closed=z debug=r)rr is_running is_closed get_debugrs rrBaseEventLoop.__repr__sP''( $//2C1DEnn&'wt~~/?.@ C r!c0WMQO5!)z,Create a Future object attached to the loop.r)rFuturers rrBaseEventLoop.create_futures~~4((r!nameNcontextc"QM1QM`8WMTT#O5kQM%^ QMOQ!Q`QMT1kJQMTQO5kQM Q1Q!)z4Schedule a coroutine object. Return a task object. )rr8r9)r9) _check_closedr(r r_source_tracebackset_name)rcoror8r9tasks r create_taskBaseEventLoop.create_tasks     %::dDJD%%**2. ))$5))$g)F MM$  r!cLQ_WQ1%a WO1bTid)aGSet a task factory that will be used by loop.create_task(). If factory is None the default task factory will be set. If factory is a callable, it should have a signature matching '(loop, coro)', where 'loop' will be a reference to the active event loop, 'coro' will be a coroutine object. The callable must return a Future. Nz'task factory must be a callable or None)callabler>r()rfactorys rset_task_factoryBaseEventLoop.set_task_factorys&  x'8'8EF F$r!cQM!)zB.?CB4B0 B4 CB2CD.C0B42C4C :B=; C CADDDDczQMMOO5QM1%a"QMWM QO1ddW ^ZkQM1%a;QM1%a!QMQMQ1Ok=dOk=dOk=dOk=cc9c)NTr) rrr1rr_set_result_unless_cancelledrrgr)rrexs rrBaseEventLoop._do_shutdownls D  " " + + + 6>>##))'*N*N*0$8$ D>>##F,<,<,>,>))&*>*>CC-?# DsAA B: AB55B:cQM1%^ WO1bWM1_ WO1bd)Nz"This event loop is already runningz7Cannot run the event loop while another loop is running)r0rr_get_running_looprs r_check_runningBaseEventLoop._check_runningvsA ??  CD D  # # % 1IK K 2r!cfQM1QM1QMQM1WM 1QiWM1Qi WMQMQMO5WMQ1d)zPrepare the run loop to process events. This method exists so that custom custom event loop subclasses (e.g., event loops that integrate a GUI event loop with Python's event loop) have access to all the loop setup logic. ) firstiter finalizerN)r<r_set_coroutine_origin_tracking_debugsysget_asyncgen_hooksr%r get_identrset_asyncgen_hooksrrr_set_running_looprs r_run_forever_setup BaseEventLoop._run_forever_setup}s   ++DKK8"557#--/ 3333   &r!cOQiOQiWMO1QM O1QM _%W MQM 2OQidd)zClean up after an event loop finishes the looping over events. This method exists so that custom custom event loop subclasses (e.g., event loops that integrate a GUI event loop with Python's event loop) have access to all the loop cleanup logic. FN)rrrrrr%rrrs r_run_forever_cleanup"BaseEventLoop._run_forever_cleanups[  & ++E2    +  " "D$8$8 9#'D  ,r!cQM1QM1QM%aH$QM1dQM1c9c)zRun until stop() is called.N)r _run_oncerrrs r run_foreverBaseEventLoop.run_foreversE (  # # % >>>  % % 'D % % 's0AAAc\QM1QM1WMQ1%(kWM TO5kQ%^OQiQMW1QM1QMW1QM1%a WO1bQM1!Q%^:QM1%^%QM1%aQM1b9cQMW1c9c)a,Run until the Future is done. If the argument is a coroutine, it is wrapped in a Task. WARNING: It would be disastrous to call run_until_complete() with the same coroutine twice -- it would wrap it in two different Tasks and that can't be good. Return the Future's result, or raise its exception. r5Fz+Event loop stopped before Future completed.)r<rrisfuturer ensure_future_log_destroy_pendingadd_done_callbackrorrrgrhremove_done_callbackrr)rrnew_tasks rrun_until_complete BaseEventLoop.run_until_completes  ''//$$V7 +0F '  !78 @      ' '(> ?{{}}LM M}} FKKMM&2B2B2D2D  "   ' '(> ?s7C ADDD+cOQid)zStop running the event loop. Every callback already scheduled will still run. This simply informs run_forever to stop looping after a complete iteration. TN)rrs rrlBaseEventLoop.stops r!cQM1%^ WO1bQM%^dQM%^WM OQ1OQiQM M1QMM1OQi QMkQ_OQi QMOO5dd)zClose the event loop. This clears the queues and shuts down the executor, but does not wait for the executor to finish. The event loop must not be running. z!Cannot close a running event loopNzClose %rTFr) r0rrrrdebugrrrr-rrrexecutors rrBaseEventLoop.closes ??  BC C <<  ;; LLT *   )-&))  %)D "   5  ) r!cQM!)z*Returns True if the event loop was closed.)rrs rr1BaseEventLoop.is_closeds ||r!cQM1%a:QOQ8 /WQO5QM1%aQM1ddd)Nzunclosed event loop r)r1rr0r)r_warns r__del__BaseEventLoop.__del__sC~~ (1?4 P??$$ % r!cQMOG!)z*Returns True if the event loop is running.N)rrs rr0BaseEventLoop.is_runningst+,r!c,WM1!)zReturn the time according to the event loop's clock. This is a float expressed in seconds since an epoch, but the epoch, precision, accuracy and drift are unspecified and may differ per event loop. )rrrs rrBaseEventLoop.times~~r!cQ` WO1bQMQM1Q*Q+QL3OQ,2kQM%^ QMOQ!)aArrange for a callback to be called at a given time. Return a Handle: an opaque object with a cancel() method that can be used to cancel the call. The delay can be an int or float, expressed in seconds. It is always relative to the current time. Each callback will be called exactly once. If two callbacks are scheduled for exactly the same time, it is undefined which will be called first. Any positional arguments after the callback will be passed to the callback when it is called. zdelay must not be Noner9r;)r>call_atrr=)rdelaycallbackr9ritimers r call_laterBaseEventLoop.call_laters] =45 5 TYY[50(.T.%,.  " "''+ r!cdQ` WO1bQM1QM%^"QM1QM QO1W M TT@Q1kQM%^ QMOWMQMQ1OQi Q!)zlLike call_later(), but uses an absolute time. Absolute time corresponds to the event loop's time() method. zwhen cannot be Nonerr;T) r>r<r _check_thread_check_callbackr TimerHandler=heapqheappushr)rwhenrr9rirs rrBaseEventLoop.call_at s <12 2  ;;     9 5""44wG  " "''+ t. r!cQM1QM%^"QM1QMQO1QM TQ1kQM %^ QM OQ!)a$Arrange for a callback to be called as soon as possible. This operates as a FIFO queue: callbacks are called in the order in which they are registered. Each callback will be called exactly once. Any positional arguments after the callback will be passed to the callback when it is called. call_soonr;)r<rrr _call_soonr=rrr9rirs rrBaseEventLoop.call_soon2s_  ;;     ; 79  # #((, r!cWMQ1%aWMQ1%^WOQ O/1bW Q1%aWOQ OQ8 /1bd)Nzcoroutines cannot be used with z()z"a callable object was expected by z(), got )r iscoroutine_iscoroutinefunctionr>rD)rrmethods rrBaseEventLoop._check_callbackEsp  " "8 , ,//991&<> >!!4VH=l$% %"r!cWMTT1kQM%^ QMOQMM Q1Q!)Nr;)rHandler=rrB)rrrir9rs rrBaseEventLoop._call_soonOs@xt=  # #((, 6" r!c~QM`dWM1kTM6w^ WO1bd)aGCheck that the current thread is the thread running the event loop. Non-thread-safe methods of this class make this assumption and will likely behave incorrectly when the assumption is violated. Should only be called when (self._debug == True). The caller is responsible for checking this condition for performance reasons. NzMNon-thread-safe operation invoked on an event loop other than the current one)rrrr)r thread_ids rrBaseEventLoop._check_threadVs@ ?? " '')  ''( ( (r!cQM1QM%^QMQO1QMTQ1kQM%^ QMOQM 1Q!)z"Like call_soon(), but thread-safe.rr;)r<rrrr=rsrs rr"BaseEventLoop.call_soon_threadsafegs^  ;;  +A B9  # #((,  r!cJQM1QM%^QMQO1Q`EQMkQM 1Q`&W M MOO5kTiW MQMQ+QL32QO5!)Nrun_in_executorasyncio)thread_name_prefixr5) r<rrrr| concurrentrThreadPoolExecutor wrap_futuresubmit)rrfuncris rrBaseEventLoop.run_in_executorrs  ;;  '8 9  --H  ( ( *%--@@'0A*2&"" OOD (4 (t5 5r!cxWQWMM1%a W O1bTid)Nz,executor must be ThreadPoolExecutor instance)rr rr r>rrs rset_default_executor"BaseEventLoop.set_default_executors-(J$6$6$I$IJJJK K!)r!cXQ OQ8 /+kQ%^QMOQ8 /1Q%^QMOQ8 /1Q%^QMOQ8 /1Q%^QMOQ8 /1OMQ1kWMOQ1QM 1kW M TT4TV1k QM 1Q* k OQ O Q O *O O Q 8 /kTM6^WMQ1Q !WMQ1Q !) N:zfamily=ztype=zproto=zflags=, zGet address info %szGetting address info z took g@@z.3fzms: ) rBrrrrr+ getaddrinfor&info) rrDrErFrGrHflagsmsgt0addrinfodts r_getaddrinfo_debug BaseEventLoop._getaddrinfo_debugsq!"  JJ + ,  JJth' (  JJy) *  JJy) *iin *C0 YY[%%d&M YY[2 %cU&c#d8,O ,, , KK  LL r!rFrrGrHrc QM%^ QMkJWMkQM OTqT#TEQ1DOesI !I3crP)rrr+rr)rrDrErFrGrHr getaddr_funcs rrBaseEventLoop.getaddrinfosN ;;22L!--L)) ,dDHH HHsAA A Ac` QMOWMT1DOesI !I3crP)rr+ getnameinfo)rsockaddrrs rr"BaseEventLoop.getnameinfos/)) &$$h77 77s %.,.fallbackcf QM%^QM1O6w^ WO1bWQ1QM TT41QM TT41DOesI !IW M^kQ%abOk=JOk=cc9cQMTT41DOesI !3c)Nrzthe socket must be non-blocking) r gettimeoutr,rw_check_sendfile_params_sock_sendfile_nativerSendfileNotAvailableError_sock_sendfile_fallback)rr1fileoffsetcountr%rns r sock_sendfileBaseEventLoop.sock_sendfiles ;;4??,1>? ?$ ##D> 33D4:CC CC33  11$28AAA AsNAB1A-&A+'A-*B1+A--BB B1BB1+B.,B1cH WMOQ8 OQ8 O/1b3c)Nz-syscall sendfile is not available for socket z and file z combinationrr*rr1r,r-r.s rr)#BaseEventLoop._sock_sendfile_natives322;D8Dx| -. .s "cr Q%^QMQ1Q%^WQWM1JWMkW Q1kOkQ%^WTG* Q1kQO6:^J]W Q1OQkQM OQMQ1DOesI k Q %aJ"QMTOQ 1DOesI Ty* kHzQQO6^&WQO1%^QMT7*1!!!I\I:QO6^&WQO1%^QMT7*1ccc9c3c)Nrseek) r6minr!SENDFILE_FALLBACK_READBUFFER_SIZE bytearray memoryviewrreadinto sock_sendallr*) rr1r,r-r. blocksizebuf total_sentviewreads rr+%BaseEventLoop._sock_sendfile_fallbacks$  IIf  yBB C#EE  "  / #E$6 BI A~!#z 2!11$ tLL''5Dk:::" A~'$"7"7 &-.#8~M;A~'$"7"7 &-.#8~sCAD7A D%D&#D D D-D7DD.D44D7cOWQOO17^ WO1bQMWM6Xa WO1bQ_OW QW 1%aWOMQ11bQO6:^WOMQ11bW QW 1%aWOMQ11bQO6^WOMQ11bd)Nbmodez$file should be opened in binary modez+only SOCK_STREAM type sockets are supportedz+count must be a positive integer (got {!r})rz0offset must be a non-negative integer (got {!r})) rr,rGr+r:rr=r>formatr3s rr($BaseEventLoop._check_sendfile_paramss gdFC0 0CD DyyF...JK K  eS))AHHOQQz AHHOQQ&#&&BII  A:BII  r!c +kQMQ1QrmVmxk Ok WMTVQO5k Q MO1Q_NQC!rk mT6w^HQ MQ 1J) Q%^QM1bW OQ8 O/1bQMT1DOesI Q O9m!W^Rk OQ 8 OW Q 1M 1 /kW Q MQ1k QMQ 1Ok = HOk = cc9cIhW^*k QMQ 1Q _Q M1bOk = cQ _Q M1b9cO9mc9c3c)z$Create, bind and connect one socket.NrFrGrHF*error while attempting to bind on address : z&no matching local address with family=z found) rBr+ setblockingbindr/rlowererrnopop sock_connectr)rr addr_infolocal_addr_infos my_exceptionsrFtype_rH_r]r1lfamilyladdrrnrs r _connect_sockBaseEventLoop._connect_socks} -(+4(u# .==%HD   U #+/?+GQ1(  2 %( 0@%+//11%(OyPV&WXX##D2 2 2*. -J1#2'',ir#c(..2B1CE&cii5%,,S11 2 3    %   )- -JskE,=DB8/?D.D/D4E,8 DAD DDD E!#%EE!!E$$E))E,rur1 local_addrhappy_eyeballs_delay interleave all_errorsc [[[[ Q _Q%a WO1bQ `Q%^Q%a WO1bQk Q _Q%a WO1bQ _Q%a WO1bQ_ WQ1Q _Q`OkQ`QB_Q_ WO1bPMT#0QWMTgPO5DOesI kQ%a W O 1bQ _?PMTWMQQPO5DOesI jP%a W O 1bJOjQ%^ W QQ1k+jQ `&QCkPMPQP1DOesI kJ3 J0WMQQQ0O gQ1Q PO 5DOesI O kQ`PRRp+pCkQCkQKH H pkkjQ%^ WO P1bWP1O6X^PO bWPO 1jWQ0OgP11%^PO bW OMOMOP1111bJ;Q` WO1bQM WM6w^WOQ8 /1bPM#TTJQ Q O5DOesI rkkPM$%^+QM'O1kW(M*OTQQQ1QQ0!BI BIBIW ^BHc9cBIdppkkcOjc9cIr3c)aConnect to a TCP server. Create a streaming transport connection to a given internet host and port: socket family AF_INET or socket.AF_INET6 depending on host (or family if specified), socket type SOCK_STREAM. protocol_factory must be a callable returning a protocol instance. This method is a coroutine which will try to establish the connection in the background. When successful, the coroutine returns a (transport, protocol) pair. Nz+server_hostname is only meaningful with sslz:You must set server_hostname when using ssl without a host1ssl_handshake_timeout is only meaningful with ssl0ssl_shutdown_timeout is only meaningful with sslr8host/port and sock can not be specified at the same timerFrGrHrr!getaddrinfo() returned empty listc38: QCkQ0QQQ0OggsH d3c)c*:PMPQP1!rP)rY)rr laddr_infosrs r;BaseEventLoop.create_connection...zs$2D2D&+3r!NrQ)rRrrrgrs rrT2BaseEventLoop.create_connection..ws& ).H)1).sr5rzcreate_connection failedc3>: QCkWQ1P6HsH d3crPr)rRrnmodels rrTrjsGJSs3x50JszMultiple exceptions: {}rc36 QCkWQ1sH d3crPrl)rRrns rrTrjs%E*3c#hh*z5host and port was not specified and no sock specified"A Stream Socket was expected, got )rrr+z%r connected to %s:%r: (%r, %r))r,rw_ensure_resolvedr+r:r/rerYr staggered_raceExceptionGrouprrallrFrrG_create_connection_transportrget_extra_inforr)rrrDrErurFrHrr1r[rUrrr\r]r^infosrsubrnrrPrrgrms` @@@rcreate_connectionBaseEventLoop.create_connectionsp(  &sJK K  "s "ABB"O ,SCE E +CBD D   d #  + 0BJ  t/ NPP// V''u0NNEABB%$($9$9++5d%:%,, #!"EFF## -eZ@J#+ %H!%)%7%7&+&? ? !&(66 ). )   |-7GZc3Cc3cZG &!,-GTT:!+(m+!$JqM 2GJGGG",Q-/&&?&F&F II%E*%EE'GHH(| KMMyyF...!8ACC%)$E$E C"7!5%F%77 8 ;;++H5D LL:T9h @(""mN," ?#! ! H "&J 7sB1K.7K8AK.8K96K.0K KK  -K.8K9K.KK.!BK%%AK.9K,:AK.K.K  KK.KK.K.%K))K.c 8 QMO1Q1kQM1k Q%^0WQW1%^OJQk QM TTTTQQO5k JQM TQ 1k Q DOesI T0!IQ M 1b9c3c)NF)rTrUrr)rLrrboolrZrQr) rr1rrurUrTrrrPrrYrs rru*BaseEventLoop._create_connection_transports #%##% !+C!6!6CJ00 '&;%9 1;I 33DFKI LL ""   OO  s0A2B5B:B;B?BBBBc QM1%^ WO1bWQOWMM 1kQWMM G^WOQ8 /1bQWMM G^QMTT41DOesI !Q%aWOQ8 /1bQMTT41DOesI !I4WM^kQ%abOk=ISOk=cc9cI/3c)a Send a file to transport. Return the total number of bytes which were sent. The method uses high-performance os.sendfile if available. file must be a regular file object opened in binary mode. offset tells from where to start reading the file. If specified, count is the total number of bytes to transmit as opposed to sending the file until EOF is reached. File position is updated on return or also in case of error in which case file.tell() can be used to figure out the number of bytes which were sent. fallback set to True makes asyncio to manually read and send the file when the platform does not support the sendfile syscall (e.g. Windows or SSL socket on Unix). Raise SendfileNotAvailableError if the system does not support sendfile syscall and fallback is False. zTransport is closing_sendfile_compatiblez(sendfile is not supported for transport NzHfallback is disabled and native sendfile is not supported for transport ) rrrr _SendfileMode UNSUPPORTED TRY_NATIVE_sendfile_nativerr*_sendfile_fallback)rrr,r-r.r%rErns rsendfileBaseEventLoop.sendfiles0    ! !56 6y"8 ..::< 9**66 6:9-HJ J 9**55 5 !22939BBB ++4-9: :,,Y-3<< <B77   r?rHr@rAs rr BaseEventLoop._sendfile_fallbacksn  IIf ).Cu%E  " )&1 " #E$6 BI A~)A~'$"7"7 &-.--/ ! !"#z 2!11$ tLL% A~'$"7"7 &-.--/ ! ! kkm## T%4[)"  "M " $A~'$"7"7 &-.--/ ! !sAF* E"&=F*#E$F*).E"E E"$=F*!E"F*'E":E ;E"F*E"F* E"">F' F#!F''F*c  W` WO1bWQWM1%aW OQ8 /1bW QOO1%aW OQ8 O/1bQM 1kWMTT8TEQQOO5 k QM1QMQ 1QMQ MQ1k QMQM1k QDOesI Q M"!IW^2QM1Q M!1Q M!1bc9c3c) zbUpgrade transport to TLS. Return a new transport that *protocol* should start using immediately. Nz"Python ssl module is not availablez@sslcontext is expected to be an instance of ssl.SSLContext, got _start_tls_compatibleFz transport z is not supported by start_tls())rrrV)rurr SSLContextr>rrr SSLProtocolrrrrr BaseExceptionrr_app_transport) rrrPrYrTrUrrr ssl_protocol conmade_cb resume_cbs r start_tlsBaseEventLoop.start_tlss< ;CD D*cnn55!n&' 'y"95AAYM)IJL L##%++ J "7!5!& (  !|,^^L$@$@)L NN9#;#;<  LL***   OO            s0C'E*D/D0D4 ED>E reuse_portallow_broadcastc ~ Q _Q MWM6X^WOQ 8 /1bQ%a*Q%a#Q%aQ%aQ%aQ%aQ%^EW T#TEQQQO5k OM OQ M 111k WOQ O/1bQ MO1Ok BJQ%a Q%aQO 6X^ WO 1bTE0O 00k BJWWO 1%^QWM6X^T#0C(kQ`HWQW1%^HWO 1b Q%^YQO O7^PWMWMQ1M 1%^WM"Q1TE0T#000k BJ,kO Q0OQ00CrkkQ`H WQW,1%^W/Q1O6Xa WO1bQM1TWM2TVQO5DOesI kQ%a W'O1bQC"rkkkkkQQ0kQQ7^OO+QQ$QQQQ$H$ H QM 1RRp+pC(rkkQ%^QO `HQ%^QO`H$QQ0KH* k kkQ %a WO1b+kQ CrrmErkkOk Ok WMQWM2QO5k Q%^ W5Q 1Q%^/Q M7WM8WM:O1Q MO1Q%^Q M=Q1Q%^#Q%aQM?Q Q1DOesI Qk J QO bQ1kQME1kQMGQ QQ Q1kQMH%^:Q%^W(MJOT#QQ1JW(MLOQQQ1QDOesI QQ0!W$^BI}W&^"kW(M*OT/1Ok=BIOk=cc9cBI8ppkkcIW&^1kQ _Q MA1QMBQ1Ok=BHOk=cQ _Q MA1b9cIQMA1b9c3c)zCreate datagram connection.Nz$A datagram socket was expected, got )r[ remote_addrrFrHrrrrc3D QCrmQ%aHQ OQ /sH d3c)=NrQ)rRkvs rrT9BaseEventLoop.create_datagram_endpoint..Zs $NLDAAZs!A3ZLs  zKsocket modifier keyword arguments can not be used when sock is specified. ()Frzunexpected address familyNNAF_UNIXzstring is expected)rz2Unable to check or remove stale UNIX socket %r: %rrrz2-tuple is expectedrcrdzcan not get address informationrIz@Datagram endpoint local_addr=%r remote_addr=%r created: (%r, %r)z2Datagram endpoint remote_addr=%r created: (%r, %r))'rGr+r:r,dictritemsrLr*rrrr>statS_ISSOCKosst_moderemoveFileNotFoundErrorr/rerrorrrrqr;r2r-r. SO_BROADCASTrMrQrrBrr^rrr) rrr[rrFrHrrrr1optsproblemsr_addraddr_pairs_inforberr addr_infosidxrwfamrVpror]key addr_pairr local_addressremote_addressrnrPrrs rcreate_datagram_endpoint&BaseEventLoop.create_datagram_endpointHs  yyF... :4(CEEkeu/z#)e'1,;= 99$NDJJL$NN 008z<==   U #F+Q;$%@AA%+O\#B"D++&..0H'5D' 40E0E'(<==6*Q-{"B 6==)<)D)DEEIIj1&,O%/$=$?#B #$j/A{3C!DIC' *4 7 7CIN"+,A"BB&*&;&; f6G6G"'4'<'A!A %")*M"NN7<3CCG#&*C"*437, 33:JsOC0 8="E&%^XQW(M@6X^DWCW(O1%^/QM5W(MDW(MFO 1QMIQ1BH, Q%a"WKOQRp+pCkQOKH pk8 /1bO kQ%aQCkQMU1H J>Q` WO1bQMVW(MX6w^WOQ8 /1bQ+kQCkQM[O 1H W]TQTQ Q 1kQ%^.QM_1WM`O1DOesI QM,%^W.MbOQ1Q!ppkcBIwW(M*^1QM,%^W.M0O QQQO O 5BHc9cWJ^kOQ8 OWQ1MM18 /kQMNWNMP6X^NQMS1QMU1QM,%^W.M0Q1Ok=BH'WKQMNQ1ObOk=cc9cppkcQ%aQCkQMU1H cc9cBI`3c)aCreate a TCP server. The host parameter can be a string, in that case the TCP server is bound to host and port. The host parameter can also be a sequence of strings and in that case the TCP server is bound to all hosts of the sequence. If a host appears multiple times (possibly indirectly e.g. when hostnames resolve to the same IP address), the server is only bound once to that host. Return a Server object which can be used to stop the service. This method is a coroutine. z*ssl argument must be an SSLContext or NoneNr`rarbposixcygwinr5)rFrFz:create_server() failed to create socket.socket(%r, %r, %r)Texc_info IPPROTO_IPV6rJrKz%could not bind on any address out of z)Neither host/port nor sock were specifiedrprz %r is serving)2rr|r>r,rwrr8rplatformrrVabcIterablerr rsetr[r\r]r+rrrwarningrBr-r. SO_REUSEADDRr2 SO_KEEPALIVErArr*r IPV6_V6ONLYrMr/rNrO EADDRNOTAVAILrPrrGr:rLrrrr)rrrDrErFrr1rrurrrrrrrhostsfsrw completedresrLsocktyperH canonnamesarrrrLs r create_serverBaseEventLoop.create_servers.: c4 HI I ,CE E + BD D   d #  t/ NPP$ "7 2 Os||x7O GrzT3'' {'?'?@@$%#d11$V8=2?# % ,,++E 55e<=EI5 % C9<6B%B!%}}R5ANN4($"--v/B/BDJ!&t,!"--v/B/BDJ " &//1#FN;;(;(;(.(:(:(,. @ " =!X!:?%@%$d1g%%@#CDD!  ' !(| !LMMyyF... #EdX!NOOfGD   U #'7&;,.   ! ! #++a. ;; KK 0 e%,"<<!;;"NN,G+-xO! !6# @#%c#hnn&6 899(;(;;#KKM JJL#{{ &s 3$%cii54? @&A! ' !(!( !sA;SA*S,N S!N".SR N8C2R+O#<RR R,B8S$S%4SAO RO  R# R-BR3R:RRR#SSc  QMWM6w^WOQ8 /1bQ_Q%a WO1bQ_Q%a WO1bQ_ W Q1QM T!QOOQQO5DOesI rmgQM %^)QMO1kWMOT&Q1Tg0!IC3c) Nrpr`rar5T)rTrrr+z%r handled: (%r, %r)) rGr+r:r,rwrurrvrr)rrr1rurrrrPs rconnect_accepted_socket%BaseEventLoop.connect_accepted_socketqs 99** *A$JK K ,SCE E +CBD D   d #$($E$E C"7!5%F%77  ;;++H5D LL/( K""7sBCCACc Q1kQM1kQMT#Q1kQDOesI QM%^&WM OQM 1TS1TS0!I>QM1b9c3c)Nz Read pipe %r connected: (%r, %r))rrcrrrrfilenorrrbrPrrs rconnect_read_pipeBaseEventLoop.connect_read_pipes}#%##%2246J  LL ;; LL;  =""   OO  +*B A3A1A3:B 1A33BB c Q1kQM1kQMT#Q1kQDOesI QM%^&WM OQM 1TS1TS0!I>QM1b9c3c)Nz!Write pipe %r connected: (%r, %r))rrfrrrrrrs rconnect_write_pipe BaseEventLoop.connect_write_pipes}#%##%33DFK  LL ;; LL<  =""   OO  rc~Q+kQ_QMOWQ1 /1Q_2QWM6X^QMOWQ1 /1J@Q_QMOWQ1 /1Q_QMOWQ1 /1WM OM Q11d)Nzstdin=zstdout=stderr=zstdout=zstderr= )rBr'r#r%rrr)rrrkrlrmrs r_log_subprocessBaseEventLoop._log_subprocesssu   KK&e!4 56 7  &J,=,="= KK.f)=(>? @! gl6&:%;<=! gl6&:%;<= SXXd^$r!rkrlrmuniversal_newlinesrjrnencodingerrorstextc  WQWW01%a WO1bQ%^ WO1bQ%a WO1bQO6w^ WO1bQ %^ WO1bQ _ WO1bQ _ WO1bQ1k OkQM%^O Q*kQM TTE1QM TO T4TX0,Q @2DOesI kQM%^Q_WMO T1T0!I23c) Nzcmd must be a string universal_newlines must be Falsezshell must be Truerbufsize must be 0text must be Falseencoding must be Noneerrors must be Nonezrun shell command %rT%s: %r) rr<rr,rrrprr)rrcmdrkrlrmrrjrnrrrrorP debug_logrs rsubprocess_shellBaseEventLoop.subprocess_shells #s|,,34 4 ?@ @12 2 a<01 1 12 2  45 5  23 3#% ;;/4I  6 B99 4KCIKK ;;90 KK) 7"" KsCD D 3D c  Q%^ WO1bQ%^ WO1bQO6w^ WO1bQ %^ WO1bQ _ WO1bQ _ WO1bQ0Q *kQ1kOkQM%^OQ8 /kQMQT4Q1QMTO T4QQ0,Q @2DOesI kQM%^Q_WM O QQ1QQ0!I43c) Nrzshell must be Falserrrrrzexecute program Fr)r,rrrprr)rrprogramrkrlrmrrjrnrrrriro popen_argsrPrrs rsubprocess_execBaseEventLoop.subprocess_execs ?@ @ 23 3 a<01 1 12 2  45 5  23 3Z$& #% ;;+7+6I  E6 B99 %   ;;90 KK)Y 7("" sB7C09C.:5C0cQM!)zKReturn an exception handler, or None if the default one is in use. )r"rs rget_exception_handler#BaseEventLoop.get_exception_handlers&&&r!cTQ_WQ1%aWOQ8 /1bTid)asSet handler as the new event loop exception handler. If handler is None, the default exception handler will be set. If handler is a callable object, it should have a signature matching '(loop, context)', where 'loop' will be a reference to the active event loop, 'context' will be a dict object (see `call_exception_handler()` documentation for details about context). Nz+A callable object or None is expected, got )rDr>r")rhandlers rset_exception_handler#BaseEventLoop.set_exception_handlers6  x'8'8##*+/0 0")r!cQMO1kQ%aOkQMO1kQ_WQ1T3M0kJOkOQ7^AQM_4QMM%^QMMQO$Q+kW Q1CkQO7^H TkQO6X^:O M WMQ11kO kTxM1* kJKQO6X^:O M WMQ11kO kTxM1* kJ WQ1kQMQ O Q /1H WMO M Q1QO5d)aDefault exception handler. This is called when an exception occurs and no exception handler is set, and can be called by a custom exception handler that wants to defer to the default behavior. This default handler logs the error message and other context-dependent information. In debug mode, a truncated stack trace is also appended showing where the given object (e.g. a handle or future or task) was created, if any. The context parameter has the same meaning as in `call_exception_handler()`. rz!Unhandled exception in event looprhNFsource_tracebackhandle_traceback>rrhr5z+Object created at (most recent call last): z+Handle created at (most recent call last): rK r)getrG __traceback__r'r=sortedr traceback format_listrstriprrBrr) rr9rrhr log_linesrvaluetbs rdefault_exception_handler'BaseEventLoop.default_exception_handlersS++i(9GKK ,  Y4K4KLHH g -$$0$$66$$66 & 'I '?C..LE((WWY2259:F$**WWY2259:F$U    uBug. /#  TYYy)H=r!c QM`QMQ1dOkQMO1kQ`QMO1kQ`QMO1kQ_!WQO1%^QM1kQ_.WQO 1%^QMQMT1dQMT1dWW0^bW^W M OOO5dc9cWW0^bW^^kQMO O O QO Q,1Ok=dWW0^bW^W M OOO5Ok=dc9cOk=cc9c)aCall the current event loop's exception handler. The context argument is a dict containing the following keys: - 'message': Error message; - 'exception' (optional): Exception object; - 'future' (optional): Future instance; - 'task' (optional): Task instance; - 'handle' (optional): Handle instance; - 'protocol' (optional): Protocol instance; - 'transport' (optional): Transport instance; - 'socket' (optional): Socket instance; - 'asyncgen' (optional): Asynchronous generator that caused the exception. New keys maybe introduced in the future. Note: do not overload this method in an event loop subclass. For custom exception handling, use the `set_exception_handler()` method. Nz&Exception in default exception handlerTrr@rr get_contextrunrz$Unhandled error in exception handlerrhr9zeException in default exception handler while handling an unexpected error in custom exception handler) r"rrirjrrrr r*rr)rr9ctxthingrns rr$BaseEventLoop.call_exception_handlerJsy,  " " * ,..w7$ 0 F+=$KK1E=#KK1E$ )F)F++-C?wsE':':GGD33TC++D:3 12   , E&*,  ,0 12   0022!#I#S!74 #$56$0LL"?+/000 0sGCBC<2C<2C98C9<E4D332E,%E/+E,,E//E4c^QM%aQMMQ1dd)zAdd a Handle to _ready.N) _cancelledrrBrrs r _add_callbackBaseEventLoop._add_callbacks"  KK  v &!r!cFQMQ1QM1d)z6Like _add_callback() but called from a signal handler.N)r rsrs r_add_callback_signalsafe&BaseEventLoop._add_callback_signalsafes 6" r!cRQM%^Q9MO* pidd)z3Notification that a TimerHandle has been cancelled.rN)rrrs r_timer_handle_cancelled%BaseEventLoop._timer_handle_cancelleds!     ' '1 , ' r!ctWQM1kQW6^{QMQ* W6^d+kQMC.kQM %^ OQiHQM Q1H0 WMQ1T iOQiJmQM%^\QMOM %^>Q9MO*piWMQM1kOQiHmOkQM%aQM%^OkJTQM%^CQMOMQM1* kQW6^WkJQO6^OkQMM!Q1kQM#Q1OkQM1QM$*kQM%^dQMOkQMQ6^JDWMQM1kOQiQMM Q1HuWQM1kW'Q1CkQMM)1kQM %^H0QM*%^sT0iQM1k QM/1QM1Q * k TM06^!W2M4OW7Q1Q 1OQiHQM/1H OkdOQic9c)zRun one full iteration of the event loop. This calls all currently ready callbacks, polls for I/O, schedules the resulting callbacks, and finally schedules 'call_later' callbacks. FrrNzExecuting %s took %.3f seconds)rr_MIN_SCHEDULED_TIMER_HANDLESr%_MIN_CANCELLED_TIMER_HANDLES_FRACTIONrrBrheapifyheappoprr_whenrMAXIMUM_SELECT_TIMEOUT _selectorselectrwr!rangepopleftrr'_runr&rrr ) r sched_count new_scheduledrrrvend_timentodoirrs rrBaseEventLoop._run_oncesi$//* 6 6  ' '+ 55 6M//$$(-F%!((0 * MM- (+O*+D '//dooa&8&C&C++q0+t7$)! ;;$..G __ooa(..s rr#BaseEventLoop.set_debugs/ ??    % %d&I&I7 S r!)r+r,r!rr)r*r'rrr"r-rr%rrrr(rrr&rP)NNNr)r)rN)FNN)ZrrrrrrrrArFrIrQrZr^rcrfrprsrwr<r|rrrrrrrrrrrlrr1rrrr0rrrrrrrrrrrrr"r/r)r+r(rYryrurrrrrr+r:rqrr? AI_PASSIVErrrrrr#r$rrrrrrr r#r&rrr2r#rrrs@rrrs/@ )d* %""%)"26" 9=" "26"" $"#' " "& " "& "CG" @D(," AE)-"04" ""7DG "20DK'(( ($L*.%MM - 0T$&%(" D 5 * 0H!"H)*H23H;<H7 A(, A./4*).X59Q#Q# !Q#Q#Q#$(Q# Q#.2 Q# #' Q# "& Q#"&Q#37Q#Q#j*/"&!% #8-<#'-<^1"2.+$).+(,.+/3.+.2 .+bEID#./D#78D#@AD#37D#8< D#CG D#L D&' D.4.@.@ D%& D./ D59M##M## M  M  MMMMM#'M"&MM^###'#"& #<# # %"#%/__"#&0oo"#'1oo"#38 "# &* "# 45 "# )- "# 6: "# AE "#H #$.OO #dF0P'  - Qf :Tr!r)rr)r)7__doc__rVcollections.abcconcurrent.futuresr rOrr[rr+rr#rrrrrrru ImportErrorr5rrrrrr r r r r rrlogr__all__r)r*r*rAr.r r'r2rMrerorrrwProtocolryAbstractServerrAbstractEventLooprrQr!rrOs0      $ #),% FJ ' #J8v," 6=!!G  > A) 2 2A)HKV " "K\iTF,,iT}  CsDD D