§
    ð­½j×L  ã                   óÀ  — 	 d dl mZmZ d dlmZ d dlmZ d dlZd dlZd dl	Z	dZ
dZd„ Z edg d	¢¦  «        Zd
e_        dej        _        dej        _        dej        _        dej        _         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 eed¦  «        r G d„ de¦  «        Z eed¦  «        r G d„ de¦  «        Z eed ¦  «        r G d!„ d"e¦  «        Z eed#¦  «        r G d$„ d%e¦  «        Zd&„ Z ed#¦  «        reZdS  ed¦  «        reZdS  ed ¦  «        reZdS  ed¦  «        reZdS eZdS )'é    )ÚABCMetaÚabstractmethod)Ú
namedtuple)ÚMappingNé   é   c                 óJ  — 	 t          | t          ¦  «        r| }na	 t          |                      ¦   «         ¦  «        }n># t          t          t
          f$ r$ t          d                     | ¦  «        ¦  «        d ‚w xY w|dk     r"t          d                     |¦  «        ¦  «        ‚|S )NzInvalid file object: {!r}r   zInvalid file descriptor: {})Ú
isinstanceÚintÚfilenoÚAttributeErrorÚ	TypeErrorÚ
ValueErrorÚformat)ÚfileobjÚfds     ú4/Users/bpa/Downloads/Python-3.11.17/Lib/selectors.pyÚ_fileobj_to_fdr      s´   € ð
õ �'�3ÑÔð ?Øˆˆð	?Ý�W—^’^Ñ%Ô%Ñ&Ô&ˆBˆBøÝ¥	­:Ð6ð 	?ð 	?ð 	?Ýð $ß$*¢F¨7¡O¤Oñ5ô 5Ø:>ð?ð	?øøøð 
ˆA‚v€vÝÐ6×=Ò=¸bÑAÔAÑBÔBÐBØ€Is	   ›!= ½;A8ÚSelectorKey)r   r   ÚeventsÚdatazŸSelectorKey(fileobj, fd, events, data)

    Object used to associate a file object to its backing
    file descriptor, selected event mask, and attached data.
zFile object registered.zUnderlying file descriptor.z3Events that must be waited for on this file object.zvOptional opaque data associated to this file object.
For example, this could be used to store a per-client session ID.c                   ó(   — e Zd Z	 d„ Zd„ Zd„ Zd„ ZdS )Ú_SelectorMappingc                 ó   — || _         d S ©N)Ú	_selector)ÚselfÚselectors     r   Ú__init__z_SelectorMapping.__init__?   s   € Ø!ˆŒˆˆó    c                 ó4   — t          | j        j        ¦  «        S r   )Úlenr   Ú
_fd_to_key©r   s    r   Ú__len__z_SelectorMapping.__len__B   s   € Ý�4”>Ô,Ñ-Ô-Ð-r    c                 ó¾   — 	 | j                              |¦  «        }| j         j        |         S # t          $ r$ t          d                     |¦  «        ¦  «        d ‚w xY w©Nú{!r} is not registered)r   Ú_fileobj_lookupr#   ÚKeyErrorr   )r   r   r   s      r   Ú__getitem__z_SelectorMapping.__getitem__E   sk   € ð	OØ”×/Ò/°Ñ8Ô8ˆBØ”>Ô,¨RÔ0Ð0øÝð 	Oð 	Oð 	OÝÐ3×:Ò:¸7ÑCÔCÑDÔDÈ$ÐNð	Oøøøs	   ‚+. ®.Ac                 ó4   — t          | j        j        ¦  «        S r   )Úiterr   r#   r$   s    r   Ú__iter__z_SelectorMapping.__iter__L   s   € Ý�D”NÔ-Ñ.Ô.Ð.r    N)Ú__name__Ú
__module__Ú__qualname__r   r%   r+   r.   © r    r   r   r   <   sV   € € € € € Ø3ð"ð "ð "ð.ð .ð .ðOð Oð Oð/ð /ð /ð /ð /r    r   c                   óŒ   — e Zd Z	 edd„¦   «         Zed„ ¦   «         Zdd„Zedd„¦   «         Zd„ Zd„ Z	ed„ ¦   «         Z
d	„ Zd
„ ZdS )ÚBaseSelectorNc                 ó   — 	 t           ‚r   ©ÚNotImplementedError©r   r   r   r   s       r   ÚregisterzBaseSelector.register_   s   € ð	õ& "Ð!r    c                 ó   — 	 t           ‚r   r6   )r   r   s     r   Ú
unregisterzBaseSelector.unregisterv   ó   € ð	õ "Ð!r    c                 ó\   — 	 |                       |¦  «         |                      |||¦  «        S r   )r;   r9   r8   s       r   ÚmodifyzBaseSelector.modify‰   s1   € ð	ð 	�Š˜Ñ Ô Ð Ø�}Š}˜W f¨dÑ3Ô3Ð3r    c                 ó   — 	 t           ‚r   r6   )r   Útimeouts     r   ÚselectzBaseSelector.selectš   r<   r    c                 ó   — 	 d S r   r2   r$   s    r   ÚclosezBaseSelector.close­   s   € ð	ð 	ˆr    c                 óÂ   — 	 |                       ¦   «         }|€t          d¦  «        ‚	 ||         S # t          $ r$ t          d                     |¦  «        ¦  «        d ‚w xY w)NzSelector is closedr(   )Úget_mapÚRuntimeErrorr*   r   )r   r   Úmappings      r   Úget_keyzBaseSelector.get_key´   sy   € ð	ð
 —,’,‘.”.ˆØˆ?ÝÐ3Ñ4Ô4Ð4ð	OØ˜7Ô#Ð#øÝð 	Oð 	Oð 	OÝÐ3×:Ò:¸7ÑCÔCÑDÔDÈ$ÐNð	Oøøøs	   ¨0 °.Ac                 ó   — 	 t           ‚r   r6   r$   s    r   rE   zBaseSelector.get_mapÂ   s   € à@Ý!Ð!r    c                 ó   — | S r   r2   r$   s    r   Ú	__enter__zBaseSelector.__enter__Ç   s   € Øˆr    c                 ó.   — |                       ¦   «          d S r   )rC   )r   Úargss     r   Ú__exit__zBaseSelector.__exit__Ê   s   € Ø�
Š
‰Œˆˆˆr    r   )r/   r0   r1   r   r9   r;   r>   rA   rC   rH   rE   rK   rN   r2   r    r   r4   r4   P   sâ   € € € € € ðð ð"ð "ð "ñ „^ð"ð, ð"ð "ñ „^ð"ð$4ð 4ð 4ð 4ð" ð"ð "ð "ñ „^ð"ð$ð ð ðOð Oð Oð ð"ð "ñ „^ð"ðð ð ðð ð ð ð r    r4   )Ú	metaclassc                   óD   — e Zd Z	 d„ Zd„ Zd
d„Zd„ Zd
d„Zd„ Zd„ Z	d	„ Z
dS )Ú_BaseSelectorImplc                 ó<   — i | _         t          | ¦  «        | _        d S r   )r#   r   Ú_mapr$   s    r   r   z_BaseSelectorImpl.__init__Ñ   s   € àˆŒå$ TÑ*Ô*ˆŒ	ˆ	ˆ	r    c                 ó¢   — 	 	 t          |¦  «        S # t          $ r2 | j                             ¦   «         D ]}|j        |u r|j        c cY S Œ‚ w xY wr   )r   r   r#   Úvaluesr   r   ©r   r   Úkeys      r   r)   z!_BaseSelectorImpl._fileobj_lookup×   sx   € ð	ð	Ý! 'Ñ*Ô*Ð*øÝð 	ð 	ð 	à”×-Ò-Ñ/Ô/ð "ð "�Ø”; 'Ð)Ð)Øœ6�M�M�M�M�Mð *ð ð	øøøs   ƒ ’7AÁANc                 óH  — |r|t           t          z   z  r"t          d                     |¦  «        ¦  «        ‚t	          ||                      |¦  «        ||¦  «        }|j        | j        v r(t          d                     ||j        ¦  «        ¦  «        ‚|| j        |j        <   |S )NzInvalid events: {!r}z"{!r} (FD {}) is already registered)	Ú
EVENT_READÚEVENT_WRITEr   r   r   r)   r   r#   r*   ©r   r   r   r   rW   s        r   r9   z_BaseSelectorImpl.registerê   s¨   € Øð 	D˜F¥zµKÑ'?Ð%@Ñ@ð 	DÝÐ3×:Ò:¸6ÑBÔBÑCÔCÐCå˜' 4×#7Ò#7¸Ñ#@Ô#@À&È$ÑOÔOˆàŒ6�T”_Ð$Ð$ÝÐ?ß"šF 7¨C¬FÑ3Ô3ñ5ô 5ð 5ð #&ˆŒ˜œÑØˆ
r    c                 óÆ   — 	 | j                              |                      |¦  «        ¦  «        }n1# t          $ r$ t          d                     |¦  «        ¦  «        d ‚w xY w|S r'   )r#   Úpopr)   r*   r   rV   s      r   r;   z_BaseSelectorImpl.unregister÷   sp   € ð	OØ”/×%Ò% d×&:Ò&:¸7Ñ&CÔ&CÑDÔDˆCˆCøÝð 	Oð 	Oð 	OÝÐ3×:Ò:¸7ÑCÔCÑDÔDÈ$ÐNð	Oøøøàˆ
s	   ‚-0 °.Ac                 ó|  — 	 | j         |                      |¦  «                 }n1# t          $ r$ t          d                     |¦  «        ¦  «        d ‚w xY w||j        k    r-|                      |¦  «         |                      |||¦  «        }n0||j        k    r%|                     |¬¦  «        }|| j         |j	        <   |S )Nr(   )r   )
r#   r)   r*   r   r   r;   r9   r   Ú_replacer   r[   s        r   r>   z_BaseSelectorImpl.modifyþ   sË   € ð	OØ”/ $×"6Ò"6°wÑ"?Ô"?Ô@ˆCˆCøÝð 	Oð 	Oð 	OÝÐ3×:Ò:¸7ÑCÔCÑDÔDÈ$ÐNð	Oøøøà�S”ZÒÐØ�OŠO˜GÑ$Ô$Ð$Ø—-’- ¨°Ñ6Ô6ˆCˆCØ�S”XÒÐà—,’, D�,Ñ)Ô)ˆCØ&)ˆDŒO˜CœFÑ#Øˆ
s	   ‚ # £.Ac                 óF   — | j                              ¦   «          d | _        d S r   )r#   ÚclearrS   r$   s    r   rC   z_BaseSelectorImpl.close  s!   € ØŒ×ÒÑÔÐØˆŒ	ˆ	ˆ	r    c                 ó   — | j         S r   )rS   r$   s    r   rE   z_BaseSelectorImpl.get_map  s
   € ØŒyÐr    c                 óB   — 	 	 | j         |         S # t          $ r Y d S w xY wr   )r#   r*   )r   r   s     r   Ú_key_from_fdz_BaseSelectorImpl._key_from_fd  s;   € ð	ð	Ø”? 2Ô&Ð&øÝð 	ð 	ð 	Ø�4�4ð	øøøs   ƒ �
�r   )r/   r0   r1   r   r)   r9   r;   r>   rC   rE   rd   r2   r    r   rQ   rQ   Î   s™   € € € € € Ø'ð+ð +ð +ðð ð ð&ð ð ð ðð ð ðð ð ð ðð ð ðð ð ðð ð ð ð r    rQ   c                   ól   ‡ — e Zd Z	 ˆ fd„Zdˆ fd„	Zˆ fd„Zej        dk    rdd„Zne	j	        Zdd„Z	ˆ xZ
S )	ÚSelectSelectorc                 ó”   •— t          ¦   «                              ¦   «          t          ¦   «         | _        t          ¦   «         | _        d S r   )Úsuperr   ÚsetÚ_readersÚ_writers©r   Ú	__class__s    €r   r   zSelectSelector.__init__%  s3   ø€ Ý‰Œ×ÒÑÔÐÝ™œˆŒÝ™œˆŒˆˆr    Nc                 óò   •— t          ¦   «                              |||¦  «        }|t          z  r| j                             |j        ¦  «         |t          z  r| j                             |j        ¦  «         |S r   )rh   r9   rY   rj   Úaddr   rZ   rk   )r   r   r   r   rW   rm   s        €r   r9   zSelectSelector.register*  sm   ø€ Ý‰gŒg×Ò˜w¨°Ñ5Ô5ˆØ•JÑð 	&ØŒM×Ò˜cœfÑ%Ô%Ð%Ø•KÑð 	&ØŒM×Ò˜cœfÑ%Ô%Ð%Øˆ
r    c                 óÆ   •— t          ¦   «                              |¦  «        }| j                             |j        ¦  «         | j                             |j        ¦  «         |S r   )rh   r;   rj   Údiscardr   rk   ©r   r   rW   rm   s      €r   r;   zSelectSelector.unregister2  sO   ø€ Ý‰gŒg× Ò  Ñ)Ô)ˆØŒ×Ò˜cœfÑ%Ô%Ð%ØŒ×Ò˜cœfÑ%Ô%Ð%Øˆ
r    Úwin32c                 óH   — t          j         ||||¦  «        \  }}}|||z   g fS r   )rA   )r   ÚrÚwÚ_r@   Úxs         r   Ú_selectzSelectSelector._select9  s-   € Ý”m A q¨!¨WÑ5Ô5‰GˆAˆq�!Ø�a˜!‘e˜R�<Ðr    c                 óš  — |€d nt          |d¦  «        }g }	 |                      | j        | j        g |¦  «        \  }}}n# t          $ r |cY S w xY wt          |¦  «        }t          |¦  «        }||z  D ]V}d}||v r
|t          z  }||v r
|t          z  }|                      |¦  «        }|r| 	                    |||j
        z  f¦  «         ŒW|S ©Nr   )Úmaxry   rj   rk   ÚInterruptedErrorri   rY   rZ   rd   Úappendr   )	r   r@   Úreadyru   rv   rw   r   r   rW   s	            r   rA   zSelectSelector.select?  sû   € Ø!˜/�$�$­s°7¸A©¬ˆØˆð	Ø—l’l 4¤=°$´-ÀÀWÑMÔM‰GˆAˆq�!�!øÝð 	ð 	ð 	ØˆLˆLˆLð	øøøå�‰FŒFˆÝ�‰FŒFˆØ�a‘%ð 		9ð 		9ˆBØˆFØ�QˆwˆwØ�*Ñ$�Ø�QˆwˆwØ�+Ñ%�à×#Ò# BÑ'Ô'ˆCØð 9Ø—’˜c 6¨C¬JÑ#6Ð7Ñ8Ô8Ð8øØˆs   ˜&? ¿AÁAr   )r/   r0   r1   r   r9   r;   ÚsysÚplatformry   rA   Ú__classcell__©rm   s   @r   rf   rf   "  s·   ø€ € € € € Ø ðð ð ð ð ð
ð ð ð ð ð ðð ð ð ð ð „|�wÒÐð	 ð 	 ð 	 ð 	 ð 	 ð ”-ˆðð ð ð ð ð ð ð r    rf   c                   óV   ‡ — e Zd Z	 dZdZdZˆ fd„Zdˆ fd„	Zˆ fd„Zdˆ fd„	Z	dd„Z
ˆ xZS )Ú_PollLikeSelectorNc                 óz   •— t          ¦   «                              ¦   «          |                      ¦   «         | _        d S r   )rh   r   Ú_selector_clsr   rl   s    €r   r   z_PollLikeSelector.__init__[  s0   ø€ Ý‰Œ×ÒÑÔÐØ×+Ò+Ñ-Ô-ˆŒˆˆr    c                 ó4  •— t          ¦   «                              |||¦  «        }d}|t          z  r
|| j        z  }|t          z  r
|| j        z  }	 | j                             |j        |¦  «         n'#  t          ¦   «                              |¦  «         ‚ xY w|S r{   )	rh   r9   rY   Ú_EVENT_READrZ   Ú_EVENT_WRITEr   r   r;   )r   r   r   r   rW   Úpoller_eventsrm   s         €r   r9   z_PollLikeSelector.register_  s¢   ø€ Ý‰gŒg×Ò˜w¨°Ñ5Ô5ˆØˆØ•JÑð 	.Ø˜TÔ-Ñ-ˆMØ•KÑð 	/Ø˜TÔ.Ñ.ˆMð	ØŒN×#Ò# C¤F¨MÑ:Ô:Ð:Ð:øð	Ý‰GŒG×Ò˜wÑ'Ô'Ð'ØøøøØˆ
s   Á A1 Á1$Bc                 ó¬   •— t          ¦   «                              |¦  «        }	 | j                             |j        ¦  «         n# t          $ r Y nw xY w|S r   )rh   r;   r   r   ÚOSErrorrr   s      €r   r;   z_PollLikeSelector.unregisterm  sc   ø€ Ý‰gŒg× Ò  Ñ)Ô)ˆð	ØŒN×%Ò% c¤fÑ-Ô-Ð-Ð-øÝð 	ð 	ð 	ð ˆDð	øøøð ˆ
s   ¤A Á
AÁAc                 óü  •— 	 | j         |                      |¦  «                 }n!# t          $ r t          |›d�¦  «        d ‚w xY wd}||j        k    rud}|t          z  r
|| j        z  }|t          z  r
|| j        z  }	 | j         	                    |j
        |¦  «         n'#  t          ¦   «                              |¦  «         ‚ xY wd}||j        k    rd}|r&|                     ||¬¦  «        }|| j         |j
        <   |S )Nz is not registeredFr   T)r   r   )r#   r)   r*   r   rY   r‰   rZ   rŠ   r   r>   r   rh   r;   r   r_   )r   r   r   r   rW   ÚchangedÚselector_eventsrm   s          €r   r>   z_PollLikeSelector.modifyw  s7  ø€ ð	GØ”/ $×"6Ò"6°wÑ"?Ô"?Ô@ˆCˆCøÝð 	Gð 	Gð 	GÝ˜gÐ;Ð;Ð;Ñ<Ô<À$ÐFð	Gøøøð ˆØ�S”ZÒÐØˆOØ�
Ñ"ð 4Ø 4Ô#3Ñ3�Ø�Ñ#ð 5Ø 4Ô#4Ñ4�ðØ”×%Ò% c¤f¨oÑ>Ô>Ð>Ð>øðÝ‘”×"Ò" 7Ñ+Ô+Ð+ØøøøØˆGØ�3”8ÒÐØˆGàð 	*Ø—,’, f°4�,Ñ8Ô8ˆCØ&)ˆDŒO˜CœFÑ#Øˆ
s   ƒ $ ¤AÁ= B Â$Cc                 ó„  — |€d }n |dk    rd}nt          j        |dz  ¦  «        }g }	 | j                             |¦  «        }n# t          $ r |cY S w xY w|D ]g\  }}d}|| j         z  r
|t          z  }|| j         z  r
|t          z  }|  	                    |¦  «        }|r| 
                    |||j        z  f¦  «         Œh|S )Nr   ç     @�@)ÚmathÚceilr   Úpollr}   r‰   rZ   rŠ   rY   rd   r~   r   )r   r@   r   Úfd_event_listr   Úeventr   rW   s           r   rA   z_PollLikeSelector.select’  s  € ð ˆ?ØˆGˆGØ˜Š\ˆ\ØˆGˆGõ ”i ¨#¡Ñ.Ô.ˆGØˆð	Ø œN×/Ò/°Ñ8Ô8ˆMˆMøÝð 	ð 	ð 	ØˆLˆLˆLð	øøøà&ð 		9ð 		9‰IˆB�ØˆFØ˜Ô(Ð(Ñ(ð &Ø�+Ñ%�Ø˜Ô)Ð)Ñ)ð %Ø�*Ñ$�à×#Ò# BÑ'Ô'ˆCØð 9Ø—’˜c 6¨C¬JÑ#6Ð7Ñ8Ô8Ð8øØˆs   ©A ÁAÁAr   )r/   r0   r1   r‡   r‰   rŠ   r   r9   r;   r>   rA   r‚   rƒ   s   @r   r…   r…   U  s³   ø€ € € € € ØFØ€MØ€KØ€Lð.ð .ð .ð .ð .ðð ð ð ð ð ðð ð ð ð ðð ð ð ð ð ð6ð ð ð ð ð ð ð r    r…   r•   c                   ó:   — e Zd Z	 ej        Zej        Zej        Z	dS )ÚPollSelectorN)
r/   r0   r1   rA   r•   r‡   ÚPOLLINr‰   ÚPOLLOUTrŠ   r2   r    r   r™   r™   ±  s&   € € € € € Ø"ØœˆØ”mˆØ”~ˆˆˆr    r™   Úepollc                   óX   ‡ — e Zd Z	 ej        Zej        Zej        Z	d„ Z
dd„Zˆ fd„Zˆ xZS )ÚEpollSelectorc                 ó4   — | j                              ¦   «         S r   ©r   r   r$   s    r   r   zEpollSelector.filenoÀ  ó   € Ø”>×(Ò(Ñ*Ô*Ð*r    Nc                 óä  — |€d}n#|dk    rd}nt          j        |dz  ¦  «        dz  }t          t          | j        ¦  «        d¦  «        }g }	 | j                             ||¦  «        }n# t          $ r |cY S w xY w|D ]q\  }}d}|t          j	         z  r
|t          z  }|t          j         z  r
|t          z  }|                      |¦  «        }|r|                     |||j        z  f¦  «         Œr|S )Néÿÿÿÿr   r’   gü©ñÒMbP?r   )r“   r”   r|   r"   r#   r   r•   r}   rA   ÚEPOLLINrZ   ÚEPOLLOUTrY   rd   r~   r   )	r   r@   Úmax_evr   r–   r   r—   r   rW   s	            r   rA   zEpollSelector.selectÃ  s(  € ØˆØ��Ø˜A’�Ø��õ œ) G¨c¡MÑ2Ô2°TÑ9�õ
 �˜Tœ_Ñ-Ô-¨qÑ1Ô1ˆFàˆEðØ $¤× 3Ò 3°G¸VÑ DÔ D��øÝ#ð ð ð Ø���ðøøøà*ð 	=ð 	=‘	��EØ�Ø�FœN˜?Ñ*ð *Ø�kÑ)�FØ�FœOÐ+Ñ+ð )Ø�jÑ(�Fà×'Ò'¨Ñ+Ô+�Øð =Ø—L’L # v°´
Ñ':Ð!;Ñ<Ô<Ð<øØˆLs   ÁA* Á*A9Á8A9c                 óz   •— | j                              ¦   «          t          ¦   «                              ¦   «          d S r   ©r   rC   rh   rl   s    €r   rC   zEpollSelector.closeã  ó,   ø€ ØŒN× Ò Ñ"Ô"Ð"Ý‰GŒG�MŠM‰OŒOˆOˆOˆOr    r   )r/   r0   r1   rA   rœ   r‡   r¤   r‰   r¥   rŠ   r   rC   r‚   rƒ   s   @r   rž   rž   º  st   ø€ € € € € Ø#ØœˆØ”nˆØ”ˆð	+ð 	+ð 	+ð	ð 	ð 	ð 	ð@	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	r    rž   Údevpollc                   óP   ‡ — e Zd Z	 ej        Zej        Zej        Z	d„ Z
ˆ fd„Zˆ xZS )ÚDevpollSelectorc                 ó4   — | j                              ¦   «         S r   r    r$   s    r   r   zDevpollSelector.filenoð  r¡   r    c                 óz   •— | j                              ¦   «          t          ¦   «                              ¦   «          d S r   r¨   rl   s    €r   rC   zDevpollSelector.closeó  r©   r    )r/   r0   r1   rA   rª   r‡   rš   r‰   r›   rŠ   r   rC   r‚   rƒ   s   @r   r¬   r¬   ê  s_   ø€ € € € € Ø)ØœˆØ”mˆØ”~ˆð	+ð 	+ð 	+ð	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	r    r¬   Úkqueuec                   óN   ‡ — e Zd Z	 ˆ fd„Zd„ Zdˆ fd„	Zˆ fd„Zdd„Zˆ fd„Zˆ xZ	S )	ÚKqueueSelectorc                 ó†   •— t          ¦   «                              ¦   «          t          j        ¦   «         | _        d| _        d S r{   )rh   r   rA   r¯   r   Ú_max_eventsrl   s    €r   r   zKqueueSelector.__init__ý  s4   ø€ Ý‰GŒG×ÒÑÔÐÝ#œ]™_œ_ˆDŒNØ ˆDÔÐÐr    c                 ó4   — | j                              ¦   «         S r   r    r$   s    r   r   zKqueueSelector.fileno  r¡   r    Nc                 ó8  •— t          ¦   «                              |||¦  «        }	 |t          z  r\t          j        |j        t          j        t          j        ¦  «        }| j         	                    |gdd¦  «         | xj
        dz  c_
        |t          z  r\t          j        |j        t          j        t          j        ¦  «        }| j         	                    |gdd¦  «         | xj
        dz  c_
        n'#  t          ¦   «                              |¦  «         ‚ xY w|S ©Nr   r   )rh   r9   rY   rA   Úkeventr   ÚKQ_FILTER_READÚ	KQ_EV_ADDr   Úcontrolr³   rZ   ÚKQ_FILTER_WRITEr;   )r   r   r   r   rW   Úkevrm   s         €r   r9   zKqueueSelector.register  s  ø€ Ý‘'”'×"Ò" 7¨F°DÑ9Ô9ˆCðØ�JÑ&ð *Ý œ-¨¬µÔ0EÝ(.Ô(8ñ:ô :�Cà”N×*Ò*¨C¨5°!°QÑ7Ô7Ð7ØÐ$Ô$¨Ñ)Ð$Ô$Ø�KÑ'ð *Ý œ-¨¬µÔ0FÝ(.Ô(8ñ:ô :�Cà”N×*Ò*¨C¨5°!°QÑ7Ô7Ð7ØÐ$Ô$¨Ñ)Ð$Ô$øøðÝ‘”×"Ò" 7Ñ+Ô+Ð+ØøøøØˆJs   ¦CC3 Ã3$Dc                 ó>  •— t          ¦   «                              |¦  «        }|j        t          z  rnt	          j        |j        t          j        t          j        ¦  «        }| xj	        dz  c_	        	 | j
                             |gdd¦  «         n# t          $ r Y nw xY w|j        t          z  rnt	          j        |j        t          j        t          j        ¦  «        }| xj	        dz  c_	        	 | j
                             |gdd¦  «         n# t          $ r Y nw xY w|S )Nr   r   )rh   r;   r   rY   rA   r·   r   r¸   ÚKQ_EV_DELETEr³   r   rº   r�   rZ   r»   )r   r   rW   r¼   rm   s       €r   r;   zKqueueSelector.unregister  s3  ø€ Ý‘'”'×$Ò$ WÑ-Ô-ˆCØŒz�JÑ&ð 	Ý”m C¤F­FÔ,AÝ$*Ô$7ñ9ô 9�àÐ Ô  AÑ%Ð Ô ðØ”N×*Ò*¨C¨5°!°QÑ7Ô7Ð7Ð7øÝð ð ð ð �Dðøøøð Œz�KÑ'ð Ý”m C¤F­FÔ,BÝ$*Ô$7ñ9ô 9�àÐ Ô  AÑ%Ð Ô ðØ”N×*Ò*¨C¨5°!°QÑ7Ô7Ð7Ð7øÝð ð ð à�Dðøøøð ˆJs$   Á2B Â
BÂBÃ/D Ä
DÄDc                 ó¢  — |€d nt          |d¦  «        }| j        pd}g }	 | j                             d ||¦  «        }n# t          $ r |cY S w xY w|D ]|}|j        }|j        }d}|t          j        k    r
|t          z  }|t          j
        k    r
|t          z  }|                      |¦  «        }	|	r|                     |	||	j        z  f¦  «         Œ}|S r¶   )r|   r³   r   rº   r}   ÚidentÚfilterrA   r¸   rY   r»   rZ   rd   r~   r   )
r   r@   r¦   r   Úkev_listr¼   r   Úflagr   rW   s
             r   rA   zKqueueSelector.select.  s   € Ø%˜o�d�dµ3°wÀ±?´?ˆGð Ô%Ð*¨ˆFØˆEðØœ>×1Ò1°$¸ÀÑHÔH��øÝ#ð ð ð Ø���ðøøøàð =ð =�Ø”Y�Ø”z�Ø�Ø�6Ô0Ò0Ð0Ø�jÑ(�FØ�6Ô1Ò1Ð1Ø�kÑ)�Fà×'Ò'¨Ñ+Ô+�Øð =Ø—L’L # v°´
Ñ':Ð!;Ñ<Ô<Ð<øØˆLs   ¡> ¾AÁAc                 óz   •— | j                              ¦   «          t          ¦   «                              ¦   «          d S r   r¨   rl   s    €r   rC   zKqueueSelector.closeG  r©   r    r   )
r/   r0   r1   r   r   r9   r;   rA   rC   r‚   rƒ   s   @r   r±   r±   ú  s®   ø€ € € € € Ø$ð	!ð 	!ð 	!ð 	!ð 	!ð
	+ð 	+ð 	+ð	ð 	ð 	ð 	ð 	ð 	ð$	ð 	ð 	ð 	ð 	ð.	ð 	ð 	ð 	ð2	ð 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	r    r±   c                 óÔ   — 	 t          t          | d ¦  «        }|€dS 	  |¦   «         }| dk    r|                     d¦  «         n|                     ¦   «          dS # t          $ r Y dS w xY w)NFr•   r   T)ÚgetattrrA   r•   rC   r�   )Úmethodr   Úselector_objs      r   Ú_can_userÉ   L  s’   € ðõ •v˜v tÑ,Ô,€HØÐàˆuð
Ø�x‘z”zˆØ�VÒÐà×Ò˜aÑ Ô Ð Ð ð ×ÒÑ Ô Ð ØˆtøÝð ð ð Øˆuˆuðøøøs   �:A Á
A'Á&A')Úabcr   r   Úcollectionsr   Úcollections.abcr   r“   rA   r€   rY   rZ   r   r   Ú__doc__r   r   r   r   r   r4   rQ   rf   r…   Úhasattrr™   rž   r¬   r±   rÉ   ÚDefaultSelectorr2   r    r   ú<module>rÐ      s]  ððð (Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ð 'Ø "Ð "Ð "Ð "Ð "Ð "Ø #Ð #Ð #Ð #Ð #Ð #Ø €€€Ø €€€Ø 
€
€
€
ð €
Ø€ðð ð ð2 ˆj˜Ð(KÐ(KÐ(KÑLÔL€ð€Ô ð
 8€Ô Ô Ø6€„Ô ØR€Ô Ô ðE€Ô Ô ð/ð /ð /ð /ð /�wñ /ô /ð /ð({ð {ð {ð {ð {˜Wð {ñ {ô {ð {ð|Qð Qð Qð Qð Q˜ñ Qô Qð Qðh0ð 0ð 0ð 0ð 0Ð&ñ 0ô 0ð 0ðfWð Wð Wð Wð WÐ)ñ Wô Wð Wðt €7ˆ6�6ÑÔð &ð&ð &ð &ð &ð &Ð(ñ &ô &ð &ð €7ˆ6�7ÑÔð -ð+ð +ð +ð +ð +Ð)ñ +ô +ð +ð\ €7ˆ6�9ÑÔð ðð ð ð ð Ð+ñ ô ð ð €7ˆ6�8ÑÔð QðOð Oð Oð Oð OÐ*ñ Oô Oð Oðdð ð ð4 €8ˆHÑÔð 	%Ø$€O€O€OØ€XˆgÑÔð %Ø#€O€O€OØ€XˆiÑÔð %Ø%€O€O€OØ€XˆfÑÔð %Ø"€O€O€Oà$€O€O€Or    