+
    ˜h©j  ã                  óŽ  € R t ^ RIHt ^ RIt^ RIt^ RIHt ^ RIHt ^ RIHt ^ RIHt Rt	Rt
 ^ RItRt	^R	IHt ^R
IHt ^RIHt ^RIHt ^RIHt ^RIHt ^RIHt ]! R4      t ! R R4      t]P2                  '       g(   ]	'       g   R tR tR tR tR tR tR tR tR tR# R# R#   ] d   t]! ]4      t
 RtALaRtAii ; i)z&asyncio-related concurrency functions.)ÚannotationsN)ÚAny)ÚCallable)Ú	Coroutine)ÚTypeVarFT)Ú
await_only)Úawait_fallback)Úin_greenlet)Úgreenlet_spawn)Úis_exit_exception)ÚAsyncAdaptedLock)Ú_RunnerÚ_Tc                  óJ   € ] tR t^(tRtR R ltR R ltR R ltR R	 ltR
t	R# )Ú
_AsyncUtilz&Asyncio util for test suite/ util onlyc               ó   € V ^8„  d   QhRR/# ©é   ÚreturnÚNone© )Úformats   "ÚV/var/www/html/bestweb/venv/lib/python3.14/site-packages/sqlalchemy/util/concurrency.pyÚ__annotate__Ú_AsyncUtil.__annotate__+   s   € ÷ $ñ $˜$ñ $ó    c                	ó@   € \         '       d   \        4       V n        R # R # ©N)Úhave_greenletr   Úrunner©Úselfs   &r   Ú__init__Ú_AsyncUtil.__init__+   s   € ß‹=Ü!›)ˆDŽKñ r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r   Úfnz&Callable[..., Coroutine[Any, Any, _T]]Úargsr   Úkwargsr   r   r   )r   s   "r   r   r   /   s2   € ÷ 4ñ 4à2ð4ð ð4ð ð	4ð
 
ñ4r   c                óD   € V P                   P                  V! V/ VB 4      # )zRun coroutine on the loop)r   Úrun©r!   r%   r&   r'   s   &&*,r   r)   Ú_AsyncUtil.run/   s!   € ð �{‰{�‰™r 4Ð2¨6Ñ2Ó3Ð3r   c               ó(   € V ^8„  d   QhRRRRRRRR/# )r   r%   zCallable[..., _T]r&   r   r'   r   r   r   )r   s   "r   r   r   8   s,   € ÷ 
'ñ 
'Ø#ð
'Ø,/ð
'Ø;>ð
'à	ñ
'r   c                óæ   € \         '       d_   V P                  P                  4       P                  4       '       d	   V! V/ VB # V P                  P	                  \        V.VO5/ VB 4      # V! V/ VB # )z3Run sync function in greenlet. Support nested calls)r   r   Úget_loopÚ
is_runningr)   r
   r*   s   &&*,r   Úrun_in_greenletÚ_AsyncUtil.run_in_greenlet8   sg   € ÷ ‹=Ø�{‰{×#Ñ#Ó%×0Ñ0×2Ò2Ù˜4Ð* 6Ñ*Ð*à—{‘{—‘¤~°bÐ'J¸4Ò'JÀ6Ñ'JÓKÐKá�tÐ&˜vÑ&Ð&r   c               ó   € V ^8„  d   QhRR/# r   r   )r   s   "r   r   r   D   s   € ÷  ñ  �tñ  r   c                	óV   € \         '       d   V P                  P                  4        R # R # r   )r   r   Úcloser    s   &r   r4   Ú_AsyncUtil.closeD   s   € ß‹=Ø�K‰K×ÑÖñ r   )r   N)
Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r"   r)   r0   r4   Ú__static_attributes__r   r   r   r   r   (   s   † Ù0õ$õ4õ
'÷ ñ  r   r   c                 ón   € \         '       d   R # \        \        '       d   R\        ,          4      hR4      h)Nz9the greenlet library is required to use this function. %sÚ )r   Ú
ValueErrorÚgreenlet_errorr   r   r   Ú_not_implementedr@   K   s<   € ÷ ‹=Ùä÷ ‹~ðÜ"õ#ó
ð 	
ð ó	
ð 	
r   c                ó,   € \        V \        4      '       * # r   )Ú
isinstanceÚ	Exception)Úes   &r   r   r   X   s   € Ü˜a¤Ó+Ô+Ð+r   c                ó   € \        4        R # r   ©r@   ©Úthings   &r   r   r   [   ó   € ÜÖr   c                ó   € V # r   r   rG   s   &r   r   r   ^   s   € Øˆr   c                 ó   € \        4        R # r   rF   r   r   r   r	   r	   a   rI   r   c                ó   € \        4        R # r   rF   )r%   r&   Úkws   &*,r   r
   r
   d   rI   r   c                 ó   € \        4        R # r   rF   )r&   rM   s   *,r   r   r   g   rI   r   c                ó   € V ! V/ VB # r   r   ©r%   ÚargrM   s   &*,r   Ú_util_async_runrR   j   s   € Ù�3ˆ~˜"‰~Ðr   c                ó   € \        4        R # r   rF   rP   s   &*,r   Ú"_util_async_run_coroutine_functionrT   m   rI   r   )r:   Ú
__future__r   ÚasyncioÚtypingr   r   r   r   r   r?   ÚgreenletÚ_concurrency_py3kr   r   r	   r
   r   r   r   ÚImportErrorrD   Ústrr   r   ÚTYPE_CHECKINGr@   rR   rT   r   r   r   Ú<module>r]      sÆ   ðñ -å "ã Û Ý Ý Ý Ý à€Ø€ð+Ûð
 €MÝ;ÝCÝ=ÝCÝIÝGÝ*áˆTƒ]€÷ ñ  ðB ××Ð§Mò
ò,òòòòòòôñI %2Ñøðc ô 	Ù˜“V€NÜûð	ús   ®B+ Â+CÂ2B?Â?C