Ë ‚Ö¦i„Ï ã ó¸ — d Z ddlZddlZddlZddlZddlZddlZddlZddlZddl Z ddl Z ddlZddlZddl mZ ddl mZ ddl mZ ddl mZ ddl mZ dd l mZ dd l mZ ddl mZ ddl mZ dd l mZ ddlmZ dZe j6 dk( r ed« ‚d„ Zd„ Z G d„ dej> « Z G d„ dejB « Z" G d„ dejF ejH « Z% G d„ dejL « Z' G d„ d« Z( G d„ de(« Z) G d „ d!e(« Z* G d"„ d#e*« Z+ G d$„ d%e*« Z, G d&„ d'e(« Z- G d(„ d)e(« Z.d*„ Z/ G d+„ d,ej` « Z1e Z2e1Z3y)-z2Selector event loop for Unix with signal handling.é Né )Úbase_events)Úbase_subprocess)Ú constants)Ú coroutines)Úevents)Ú exceptions)Úfutures)Úselector_events)Útasks)Ú transports)Úlogger)ÚSelectorEventLoopÚAbstractChildWatcherÚSafeChildWatcherÚFastChildWatcherÚPidfdChildWatcherÚMultiLoopChildWatcherÚThreadedChildWatcherÚDefaultEventLoopPolicyÚwin32z+Signals are not really supported on Windowsc ó — y)zDummy signal handler.N© )ÚsignumÚframes ú,/usr/lib64/python3.12/asyncio/unix_events.pyÚ_sighandler_noopr * s € àó c óP — t j | « S # t $ r | cY S w xY w©N)ÚosÚwaitstatus_to_exitcodeÚ ValueError)Ústatuss r r" r" / s. € ðÜ×(Ñ(¨Ó0Ð0øÜò ð Š ð ús ‚ —%¤%c ó¾ ‡ — e Zd ZdZdˆ fd„ Zˆ fd„Zd„ Zd„ Zd„ Zd„ Z d „ Z dd „Z dd„Z dd„Z d „ Z dddddddœd„Z ddddddddœd„Zd„ Zd„ Zd„ Zd„ Zˆ xZS )Ú_UnixSelectorEventLoopzdUnix event loop. Adds signal handling and UNIX Domain Socket support to SelectorEventLoop. Nc ó2 •— t ‰| � |« i | _ y r )ÚsuperÚ__init__Ú_signal_handlers)ÚselfÚselectorÚ __class__s €r r) z_UnixSelectorEventLoop.__init__? s ø€ Ü ‰Ñ˜Ô"Ø "ˆÕr c ó0 •— t ‰| � « t j « s,t | j « D ] }| j |« Œ y | j r;t j d| ›d�t | ¬« | j j « y y )NzClosing the loop z@ on interpreter shutdown stage, skipping signal handlers removal©Úsource)r( ÚcloseÚsysÚ is_finalizingÚlistr* Úremove_signal_handlerÚwarningsÚwarnÚResourceWarningÚclear)r+ Úsigr- s €r r1 z_UnixSelectorEventLoop.closeC s† ø€ Ü ‰‰ ŒÜ× Ñ Ô"ܘD×1Ñ1Ö2�Ø×*Ñ*¨3Õ/ñ 3ð ×$Ò$Ü— ‘ Ð 1°$°ð :Hð Iô .Ø%)õ +ð ×%Ñ%×+Ñ+Õ-ð %r c ó: — |D ] }|sŒ| j |« Œ y r )Ú_handle_signal)r+ Údatar s r Ú_process_self_dataz)_UnixSelectorEventLoop._process_self_dataQ s € ÛˆFÙàØ×Ñ Õ'ñ r c óR — t j |« st j |« rt d« ‚| j |« | j « t j | j j « « t j ||| d« }|| j |<