Ë
    ì—0j  ã                   óJ   — d dl mZ d dlmZ dgZ G d„ d«      Z G d„ d«      Zy)é    ©Úref)ÚGenericAliasÚWeakSetc                   ó   — e Zd Zd„ Zd„ Zd„ Zy)Ú_IterationGuardc                 ó$   — t        |«      | _        y ©N)r   Úweakcontainer)Úselfr   s     ú(/usr/local/lib/python3.12/_weakrefset.pyÚ__init__z_IterationGuard.__init__   s   € ä  Ó/ˆÕó    c                 ó`   — | j                  «       }|�|j                  j                  | «       | S r
   )r   Ú
_iteratingÚadd)r   Úws     r   Ú	__enter__z_IterationGuard.__enter__   s,   € Ø×ÑÓ ˆØˆ=Ø�L‰L×Ñ˜TÔ"Øˆr   c                 óŠ   — | j                  «       }|�1|j                  }|j                  | «       |s|j                  «        y y y r
   )r   r   ÚremoveÚ_commit_removals)r   ÚeÚtÚbr   Úss         r   Ú__exit__z_IterationGuard.__exit__   sB   € Ø×ÑÓ ˆØˆ=Ø—‘ˆAØ�H‰H�TŒNÙØ×"Ñ"Õ$ð ð r   N)Ú__name__Ú
__module__Ú__qualname__r   r   r   © r   r   r   r      s   „ ò0òó%r   r   c                   óð   — e Zd Zd!d„Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZeZd„ Zd„ Zd„ ZeZd„ Zd„ Zd„ ZeZd„ Zd„ ZeZd„ Zd„ Zd„ Z e Z!d„ Z"d„ Z#d„ Z$e$Z%d„ Z&d „ Z' e(e)«      Z*y)"r   Nc                 ó    — t        «       | _        t        | «      fd„}|| _        g | _        t        «       | _        |�| j                  |«       y y )Nc                 óž   —  |«       }|�D|j                   r|j                  j                  | «       y |j                  j	                  | «       y y r
   )r   Ú_pending_removalsÚappendÚdataÚdiscard)ÚitemÚselfrefr   s      r   Ú_removez!WeakSet.__init__.<locals>._remove'   sA   € Ù“9ˆDØÐØ—?’?Ø×*Ñ*×1Ñ1°$Õ7à—I‘I×%Ñ% dÕ+ð	  r   )Úsetr&   r   r*   r$   r   Úupdate)r   r&   r*   s      r   r   zWeakSet.__init__%   sH   € Ü“EˆŒ	Ü"% d£)ó 	,ð ˆŒà!#ˆÔÜ›%ˆŒØÐØ�K‰K˜Õð r   c                 óœ   — | j                   j                  }| j                  j                  }	 	  |«       } ||«       Œ# t        $ r Y y w xY wr
   )r$   Úpopr&   r'   Ú
IndexError)r   r.   r'   r(   s       r   r   zWeakSet._commit_removals5   sS   € Ø×$Ñ$×(Ñ(ˆØ—)‘)×#Ñ#ˆØðÙ“u�ñ �DŒMð øô ò Ùðús   ¯? ¿	AÁ
Ac              #   óŒ   K  — t        | «      5  | j                  D ]  } |«       }|€Œ|–— Œ 	 d d d «       y # 1 sw Y   y xY w­wr
   )r   r&   ©r   Úitemrefr(   s      r   Ú__iter__zWeakSet.__iter__?   s;   è ø€ Ü˜TÕ"ØŸ9œ9�Ù“y�ØÑ#ð “Jñ %÷ #×"Ñ"üs   ‚AŽ8¨8¯	A¸A½Ac                 óX   — t        | j                  «      t        | j                  «      z
  S r
   )Úlenr&   r$   ©r   s    r   Ú__len__zWeakSet.__len__H   s    € Ü�4—9‘9‹~¤ D×$:Ñ$:Ó ;Ñ;Ð;r   c                 óT   — 	 t        |«      }|| j                  v S # t        $ r Y yw xY w)NF)r   Ú	TypeErrorr&   )r   r(   Úwrs      r   Ú__contains__zWeakSet.__contains__K   s4   € ð	Ü�T“ˆBð �T—Y‘YˆÐøô ò 	Ùð	ús   ‚ ›	'¦'c                 óP   — | j                   t        | «      f| j                  «       fS r
   )Ú	__class__ÚlistÚ__getstate__r6   s    r   Ú
__reduce__zWeakSet.__reduce__R   s"   € Ø�~‰~¤ T£
˜}¨d×.?Ñ.?Ó.AÐAÐAr   c                 óš   — | j                   r| j                  «        | j                  j                  t	        || j
                  «      «       y r
   )r$   r   r&   r   r   r*   ©r   r(   s     r   r   zWeakSet.addU   s2   € Ø×!Ò!Ø×!Ñ!Ô#Ø�	‰	�‰”c˜$ §¡Ó-Õ.r   c                 óp   — | j                   r| j                  «        | j                  j                  «        y r
   )r$   r   r&   Úclearr6   s    r   rD   zWeakSet.clearZ   s%   € Ø×!Ò!Ø×!Ñ!Ô#Ø�	‰	�‰Õr   c                 ó$   — | j                  | «      S r
   ©r=   r6   s    r   ÚcopyzWeakSet.copy_   s   € Ø�~‰~˜dÓ#Ð#r   c                 ó¼   — | j                   r| j                  «        	 	 | j                  j                  «       } |«       }|�|S Œ'# t        $ r t	        d«      d ‚w xY w)Nzpop from empty WeakSet)r$   r   r&   r.   ÚKeyErrorr1   s      r   r.   zWeakSet.popb   si   € Ø×!Ò!Ø×!Ñ!Ô#ØðCØŸ)™)Ÿ-™-›/�ñ “9ˆDØÐØ�ð øô ò CÜÐ7Ó8¸dÐBðCús   ŸA ÁAc                 ó„   — | j                   r| j                  «        | j                  j                  t	        |«      «       y r
   )r$   r   r&   r   r   rB   s     r   r   zWeakSet.removen   s-   € Ø×!Ò!Ø×!Ñ!Ô#Ø�	‰	×Ñœ˜T›Õ#r   c                 ó„   — | j                   r| j                  «        | j                  j                  t	        |«      «       y r
   )r$   r   r&   r'   r   rB   s     r   r'   zWeakSet.discards   s-   € Ø×!Ò!Ø×!Ñ!Ô#Ø�	‰	×Ñœ#˜d›)Õ$r   c                 ól   — | j                   r| j                  «        |D ]  }| j                  |«       Œ y r
   )r$   r   r   )r   ÚotherÚelements      r   r,   zWeakSet.updatex   s-   € Ø×!Ò!Ø×!Ñ!Ô#ÛˆGØ�H‰H�WÕñ r   c                 ó(   — | j                  |«       | S r
   )r,   ©r   rM   s     r   Ú__ior__zWeakSet.__ior__~   s   € Ø�‰�EÔØˆr   c                 óH   — | j                  «       }|j                  |«       |S r
   )rG   Údifference_update©r   rM   Únewsets      r   Ú
differencezWeakSet.difference‚   s    € Ø—‘“ˆØ× Ñ  Ô'Øˆr   c                 ó&   — | j                  |«       y r
   )Ú__isub__rP   s     r   rS   zWeakSet.difference_updateˆ   ó   € Ø�‰�eÕr   c                 óÂ   — | j                   r| j                  «        | |u r| j                  j                  «        | S | j                  j	                  d„ |D «       «       | S )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr
   r   ©Ú.0r(   s     r   Ú	<genexpr>z#WeakSet.__isub__.<locals>.<genexpr>�   s   è ø€ Ð'D¹e°d¬¨D¯	¹eùó   ‚)r$   r   r&   rD   rS   rP   s     r   rX   zWeakSet.__isub__Š   sR   € Ø×!Ò!Ø×!Ñ!Ô#Ø�5‰=Ø�I‰I�O‰OÔð ˆð �I‰I×'Ñ'Ñ'D¹eÓ'DÔDØˆr   c                 ó8   ‡ — ‰ j                  ˆ fd„|D «       «      S )Nc              3   ó,   •K  — | ]  }|‰v sŒ|–— Œ y ­wr
   r    ©r]   r(   r   s     €r   r^   z'WeakSet.intersection.<locals>.<genexpr>”   s   øè ø€ ÐE©u t¸Àºœd©uùs   ƒ	�rF   rP   s   ` r   ÚintersectionzWeakSet.intersection“   s   ø€ Ø�~‰~ÓE©uÓEÓEÐEr   c                 ó&   — | j                  |«       y r
   )Ú__iand__rP   s     r   Úintersection_updatezWeakSet.intersection_update—   rY   r   c                 ó‚   — | j                   r| j                  «        | j                  j                  d„ |D «       «       | S )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr
   r   r\   s     r   r^   z#WeakSet.__iand__.<locals>.<genexpr>œ   s   è ø€ Ð%B¹E°D¤c¨$§i¹Eùr_   )r$   r   r&   rf   rP   s     r   re   zWeakSet.__iand__™   s4   € Ø×!Ò!Ø×!Ñ!Ô#Ø�	‰	×%Ñ%Ñ%B¹EÓ%BÔBØˆr   c                 óF   — | j                   j                  d„ |D «       «      S )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr
   r   r\   s     r   r^   z#WeakSet.issubset.<locals>.<genexpr>    s   è ø€ Ð!>¹°¤# d§)¹ùr_   )r&   ÚissubsetrP   s     r   rk   zWeakSet.issubsetŸ   s   € Ø�y‰y×!Ñ!Ñ!>¹Ó!>Ó>Ð>r   c                 óN   — | j                   t        t        t        |«      «      k  S r
   ©r&   r+   Úmapr   rP   s     r   Ú__lt__zWeakSet.__lt__£   ó   € Ø�y‰yœ3œs¤3¨›Ó/Ñ/Ð/r   c                 óF   — | j                   j                  d„ |D «       «      S )Nc              3   ó2   K  — | ]  }t        |«      –— Œ y ­wr
   r   r\   s     r   r^   z%WeakSet.issuperset.<locals>.<genexpr>§   s   è ø€ Ð#@¹%°$¤C¨§I¹%ùr_   )r&   Ú
issupersetrP   s     r   rs   zWeakSet.issuperset¦   s   € Ø�y‰y×#Ñ#Ñ#@¹%Ó#@Ó@Ð@r   c                 óN   — | j                   t        t        t        |«      «      kD  S r
   rm   rP   s     r   Ú__gt__zWeakSet.__gt__ª   rp   r   c                 ó†   — t        || j                  «      st        S | j                  t	        t        t        |«      «      k(  S r
   )Ú
isinstancer=   ÚNotImplementedr&   r+   rn   r   rP   s     r   Ú__eq__zWeakSet.__eq__­   s0   € Ü˜% §¡Ô0Ü!Ð!Ø�y‰yœC¤¤C¨£Ó0Ñ0Ð0r   c                 óH   — | j                  «       }|j                  |«       |S r
   )rG   Úsymmetric_difference_updaterT   s      r   Úsymmetric_differencezWeakSet.symmetric_difference²   s    € Ø—‘“ˆØ×*Ñ*¨5Ô1Øˆr   c                 ó&   — | j                  |«       y r
   )Ú__ixor__rP   s     r   r{   z#WeakSet.symmetric_difference_update¸   rY   r   c                 óÈ   ‡ — ‰ j                   r‰ j                  «        ‰ |u r‰ j                  j                  «        ‰ S ‰ j                  j	                  ˆ fd„|D «       «       ‰ S )Nc              3   óJ   •K  — | ]  }t        |‰j                  «      –— Œ y ­wr
   )r   r*   rb   s     €r   r^   z#WeakSet.__ixor__.<locals>.<genexpr>À   s   øè ø€ Ð1\ÑV[Èd´#°d¸D¿L¹L×2IÑV[ùs   ƒ #)r$   r   r&   rD   r{   rP   s   ` r   r~   zWeakSet.__ixor__º   sT   ø€ Ø×!Ò!Ø×!Ñ!Ô#Ø�5‰=Ø�I‰I�O‰OÔð ˆð �I‰I×1Ñ1Ó1\ÑV[Ó1\Ô\Øˆr   c                 ó6   — | j                  d„ | |fD «       «      S )Nc              3   ó.   K  — | ]  }|D ]  }|–— Œ Œ y ­wr
   r    )r]   r   r   s      r   r^   z WeakSet.union.<locals>.<genexpr>Ä   s   è ø€ ÐB© AÃ¸1œaÀ˜a©ùs   ‚rF   rP   s     r   ÚunionzWeakSet.unionÃ   s   € Ø�~‰~ÑB¨$°©ÓBÓBÐBr   c                 ó<   — t        | j                  |«      «      dk(  S )Nr   )r5   rc   rP   s     r   Ú
isdisjointzWeakSet.isdisjointÇ   s   € Ü�4×$Ñ$ UÓ+Ó,°Ñ1Ð1r   c                 ó,   — t        | j                  «      S r
   )Úreprr&   r6   s    r   Ú__repr__zWeakSet.__repr__Ê   s   € Ü�D—I‘I‹Ðr   r
   )+r   r   r   r   r   r3   r7   r;   r@   r   rD   rG   r.   r   r'   r,   rQ   rV   Ú__sub__rS   rX   rc   Ú__and__rf   re   rk   Ú__le__ro   rs   Ú__ge__ru   ry   r|   Ú__xor__r{   r~   rƒ   Ú__or__r…   rˆ   Úclassmethodr   Ú__class_getitem__r    r   r   r   r   $   sÐ   „ óò òò<òòBò/ò
ò
$ò
ò$ò
%ò
òòð €GòòòFà€Gòòò?à€Fò0òAà€Fò0ò1ò
ð #€GòòòCà€Fò2òñ $ LÓ1Ñr   N)Ú_weakrefr   Útypesr   Ú__all__r   r   r    r   r   Ú<module>r”      s*   ðõ
 Ý àˆ+€÷%ñ %÷2i2ò i2r   