Ë
    Ñ3Cfp  ã                   ó<   — d dl Z d dlZd dlmZmZmZ  G d„ d«      Zy)é    N)ÚAnyÚDequeÚOptionalc                   ó`   — e Zd ZdZdej
                  ddfd„Zd
dee   ddfd„Z	de
fd„Zdd	„Zy)ÚEventResultOrErrorzÓEvent asyncio lock helper class.

    Wraps the Event asyncio lock allowing either to awake the
    locked Tasks without any error or raising an exception.

    thanks to @vorpalsmith for the simple design.
    ÚloopÚreturnNc                 ó„   — || _         d | _        t        j                  «       | _        t        j                  «       | _        y ©N)Ú_loopÚ_excÚasyncioÚEventÚ_eventÚcollectionsÚdequeÚ_waiters)Úselfr   s     úM/var/www/highfloat_scraper/venv/lib/python3.12/site-packages/aiohttp/locks.pyÚ__init__zEventResultOrError.__init__   s-   € ØˆŒ
Ø-1ˆŒ	Ü—m‘m“oˆŒÜ4?×4EÑ4EÓ4Gˆó    Úexcc                 óF   — || _         | j                  j                  «        y r   )r   r   Úset)r   r   s     r   r   zEventResultOrError.set   s   € ØˆŒ	Ø‰‰Õr   c              ƒ   ój  K  — | j                   j                  | j                  j                  «       «      }| j                  j                  |«       	 |ƒ d {  –—† }| j                  j                  |«       | j                  | j                  ‚|S 7 Œ9# | j                  j                  |«       w xY w­wr   )r   Úcreate_taskr   Úwaitr   ÚappendÚremover   )r   ÚwaiterÚvals      r   r   zEventResultOrError.wait   s‡   è ø€ Ø—‘×'Ñ'¨¯©×(8Ñ(8Ó(:Ó;ˆØ‰×Ñ˜VÔ$ð	)Ø—,ˆCàM‰M× Ñ  Ô(à9‰9Ð Ø—)‘)ˆOàˆ
ð ùàM‰M× Ñ  Õ(üs0   ‚AB3ÁB ÁBÁB Á5B3ÂB ÂB0Â0B3c                 óF   — | j                   D ]  }|j                  «        Œ y)zCancel all waitersN)r   Úcancel)r   r    s     r   r#   zEventResultOrError.cancel&   s   € à—m‘mò 	ˆFØM‰MOñ	r   r   )r	   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   ÚAbstractEventLoopr   r   ÚBaseExceptionr   r   r   r#   © r   r   r   r      sL   „ ñðH˜W×6Ñ6ð H¸4ó Hñx Ñ.ð ¸$ó ð˜Có ôr   r   )r   r   Útypingr   r   r   r   r*   r   r   ú<module>r,      s   ðÛ Û ß 'Ñ '÷#ò #r   