o
     JAf8  ã                   @   sB   d Z ddlmZ ddlmZ ddlmZ ddœdd„Zd	d
„ ZdS ))Úruné   )Ú
coroutines)Úevents)ÚtasksN)Údebugc                C   sþ   	 t  ¡ d urtdƒ‚t | ¡std | ¡ƒ‚t  ¡ }z;t  |¡ |d ur*| 	|¡ | 
| ¡W zt|ƒ | 
| ¡ ¡ | 
| ¡ ¡ W t  d ¡ | ¡  S t  d ¡ | ¡  w zt|ƒ | 
| ¡ ¡ | 
| ¡ ¡ W t  d ¡ | ¡  w t  d ¡ | ¡  w )Nz8asyncio.run() cannot be called from a running event loopz"a coroutine was expected, got {!r})r   Z_get_running_loopÚRuntimeErrorr   ZiscoroutineÚ
ValueErrorÚformatZnew_event_loopZset_event_loopZ	set_debugÚrun_until_completeÚ_cancel_all_tasksZshutdown_asyncgensZshutdown_default_executorÚclose)Úmainr   Úloop© r   ú&/usr/lib/python3.10/asyncio/runners.pyr      s:   ÿ






ÿ
ú


ÿ
r   c                 C   st   t  | ¡}|s	d S |D ]}| ¡  q|  t j|ddiŽ¡ |D ]}| ¡ r&q| ¡ d ur7|  d| ¡ |dœ¡ qd S )NZreturn_exceptionsTz1unhandled exception during asyncio.run() shutdown)ÚmessageÚ	exceptionÚtask)r   Z	all_tasksÚcancelr
   ZgatherÚ	cancelledr   Zcall_exception_handler)r   Z	to_cancelr   r   r   r   r   7   s"   

ý€ür   )Ú__all__Ú r   r   r   r   r   r   r   r   r   Ú<module>   s    /