§
    X�’j¥  ã                  ó¸   — d dl mZ d dlmZmZmZmZmZmZ	 d dl
mZmZmZ  ede¬¦  «        Z eded¬¦  «        Zd	gZ G d
„ d	ee         ee         ¦  «        ZdS )é    )Úannotations)ÚHashableÚIterableÚIteratorÚ
MutableSetÚ
ReversibleÚSet)ÚAnyÚcastÚTypeVarÚT)ÚboundÚT_coT)r   Ú	covariantÚ
OrderedSetc                  ób  ‡ — e Zd ZdZdZd;d<d„Zed=d„¦   «         Zd>d„Zd?d„Z	d@d„Z
d?d„ZdAd„ZdAd„ZdBd„ZedCd„¦   «         ZdDd„ZdEd„ZdFd!„ZdGd"„ZdGd#„ZdFd$„ZdGd%„ZdHd&„ZdHd'„ZdId(„ZdJd)„ZdFd*„ZdKˆ fd,„ZdIˆ fd-„ZdLˆ fd.„ZdLˆ fd/„Z dKˆ fd0„Z!dKˆ fd1„Z"dKˆ fd2„Z#dMd4„Z$dNd6„Z%dOd8„Z&dPd:„Z'ˆ xZ(S )Qr   z8
    Insertion ordered set, similar to OrderedDict.
    ©Ú_dictNÚiterableúIterable[T] | NoneÚreturnÚNonec                óN   — |�t                                |d ¦  «        ni | _        d S ©N©ÚdictÚfromkeysr   )Úselfr   s     úFC:\Projects\DSCons\.venv\Lib\site-packages\torch\utils\_ordered_set.pyÚ__init__zOrderedSet.__init__   s&   € Ø6>Ð6J•T—]’] 8¨TÑ2Ô2Ð2ÐPRˆŒ
ˆ
ˆ
ó    Údict_inpúdict[T, None]úOrderedSet[T]c                ó0   — t          ¦   «         }| |_        |S r   )r   r   )r"   Úss     r   Ú
_from_dictzOrderedSet._from_dict   s   € å%™<œ<ˆØˆŒØˆr!   ÚelemÚobjectÚboolc                ó   — || j         v S r   r   ©r   r(   s     r   Ú__contains__zOrderedSet.__contains__'   s   € Ø�t”zÐ!Ð!r!   úIterator[T]c                ó*   — t          | j        ¦  «        S r   )Úiterr   ©r   s    r   Ú__iter__zOrderedSet.__iter__*   s   € Ý�D”JÑÔÐr!   Úintc                ó*   — t          | j        ¦  «        S r   )Úlenr   r1   s    r   Ú__len__zOrderedSet.__len__-   s   € Ý�4”:‰ŒÐr!   c                ó*   — t          | j        ¦  «        S r   )Úreversedr   r1   s    r   Ú__reversed__zOrderedSet.__reversed__0   s   € Ý˜œ
Ñ#Ô#Ð#r!   r   c                ó   — d | j         |<   d S r   r   r,   s     r   ÚaddzOrderedSet.add3   s   € ØˆŒ
�4ÑÐÐr!   c                ó<   — | j                              |d ¦  «         d S r   )r   Úpopr,   s     r   ÚdiscardzOrderedSet.discard6   s   € ØŒ
�Š�t˜TÑ"Ô"Ð"Ð"Ð"r!   c                ó8   — | j                              ¦   «          d S r   )r   Úclearr1   s    r   r@   zOrderedSet.clear9   s   € àŒ
×ÒÑÔÐÐÐr!   Úotherr
   c                óp   — t          |t          ¦  «        s t          |t          ¦  «        r | |¦  «        S |S )zº
        Wrap non-Set Iterables in OrderedSets

        Some of the magic methods are more strict on input types than
        the public apis, so we need to wrap inputs in sets.
        )Ú
isinstanceÚAbstractSetr   )ÚclsrA   s     r   Ú_wrap_iter_in_setzOrderedSet._wrap_iter_in_set?   s:   € õ ˜%¥Ñ-Ô-ð 	µ*¸UÅHÑ2MÔ2Mð 	Ø�3�u‘:”:ÐàˆLr!   c                ób   — | st          d¦  «        ‚| j                             ¦   «         d         S )Nzpop from an empty setr   )ÚKeyErrorr   Úpopitemr1   s    r   r=   zOrderedSet.popM   s2   € Øð 	4ÝÐ2Ñ3Ô3Ð3ØŒz×!Ò!Ñ#Ô# AÔ&Ð&r!   c                ód   — t                                | j                             ¦   «         ¦  «        S r   )r   r'   r   Úcopyr1   s    r   rK   zOrderedSet.copyR   s"   € Ý×$Ò$ T¤Z§_¢_Ñ%6Ô%6Ñ7Ô7Ð7r!   ÚothersúIterable[T]c                óB   — |                       ¦   «         } |j        |Ž  |S r   )rK   Údifference_update)r   rL   Úress      r   Ú
differencezOrderedSet.differenceU   s$   € Ø�iŠi‰kŒkˆØˆÔ˜vÐ&Ð&Øˆ
r!   c                ó   — |D ]}| |z  } Œd S r   © ©r   rL   rA   s      r   rO   zOrderedSet.difference_updateZ   ó&   € Øð 	ð 	ˆEØ�E‰MˆDˆDð	ð 	r!   c                ó   — |D ]}| |z  } Œd S r   rS   rT   s      r   ÚupdatezOrderedSet.update^   rU   r!   c                óJ   — |                       ¦   «         }|D ]}|| ur||z  }Œ|S r   ©rK   ©r   rL   rP   rA   s       r   ÚintersectionzOrderedSet.intersectionb   s8   € Ø�iŠi‰kŒkˆØð 	ð 	ˆEØ˜DÐ Ð Ø�u‘�øØˆ
r!   c                ó   — |D ]}| |z  } Œd S r   rS   rT   s      r   Úintersection_updatezOrderedSet.intersection_updatei   rU   r!   c                ó4   — | |                       |¦  «        k    S r   ©rF   ©r   rA   s     r   ÚissubsetzOrderedSet.issubsetm   ó   € Ø�t×-Ò-¨eÑ4Ô4Ò4Ð4r!   c                ó4   — | |                       |¦  «        k    S r   r_   r`   s     r   Ú
issupersetzOrderedSet.issupersetp   rb   r!   c                ó   — | |z  S r   rS   r`   s     r   Úsymmetric_differencezOrderedSet.symmetric_differences   s   € Ø�e‰|Ðr!   c                ó   — | |z  } d S r   rS   r`   s     r   Úsymmetric_difference_updatez&OrderedSet.symmetric_difference_updatev   s   € Ø�‰ˆˆˆr!   c                óL   — |                       ¦   «         }|D ]}|| u rŒ||z  }Œ|S r   rY   rZ   s       r   ÚunionzOrderedSet.uniony   s:   € Ø�iŠi‰kŒkˆØð 	ð 	ˆEØ˜ˆ}ˆ}ØØ�5‰LˆCˆCØˆ
r!   úAbstractSet[T_co]c                ó(  •— t          |t          ¦  «        r>t          | ¦  «        dz  t          |¦  «        k    r|                      ¦   «         }||z  }|S t	          t          t
                   t          ¦   «                              |¦  «        ¦  «        S )Né   )rC   r   r5   rK   r   r   ÚsuperÚ__sub__)r   rA   ÚoutÚ	__class__s      €r   ro   zOrderedSet.__sub__ƒ   sn   ø€ å�e�ZÑ(Ô(ð 	­c°$©i¬i¸!©m½sÀ5¹z¼zÒ-IÐ-IØ—)’)‘+”+ˆCØ�5‰LˆCØˆJÝ•J�q”M¥5¡7¤7§?¢?°5Ñ#9Ô#9Ñ:Ô:Ð:r!   c                ó²   •— t          |t          ¦  «        r!| j                             |j        ¦  «         | S t	          ¦   «                              |¦  «        S r   )rC   r   r   rW   rn   Ú__ior__©r   rA   rq   s     €r   rs   zOrderedSet.__ior__‹   sH   ø€ Ý�e�ZÑ(Ô(ð 	ØŒJ×Ò˜eœkÑ*Ô*Ð*ØˆKÝ‰wŒw�Š˜uÑ%Ô%Ð%r!   c                ó�   •— t          |t          ¦  «        r| j        |j        k    S t          ¦   «                              |¦  «        S r   )rC   r   r   rn   Ú__eq__rt   s     €r   rv   zOrderedSet.__eq__‘   ó:   ø€ Ý�e�ZÑ(Ô(ð 	-Ø”: ¤Ò,Ð,Ý‰wŒw�~Š~˜eÑ$Ô$Ð$r!   c                ó�   •— t          |t          ¦  «        r| j        |j        k    S t          ¦   «                              |¦  «        S r   )rC   r   r   rn   Ú__ne__rt   s     €r   ry   zOrderedSet.__ne__–   rw   r!   c                ó‚   •— t          t          t                   t          ¦   «                              |¦  «        ¦  «        S r   )r   r   r   rn   Ú__or__rt   s     €r   r{   zOrderedSet.__or__›   s'   ø€ Ý•J�q”M¥5¡7¤7§>¢>°%Ñ#8Ô#8Ñ9Ô9Ð9r!   c                óö   •— t          |t          ¦  «        r%t          | ¦  «        t          |¦  «        k     r|| z  S t          t          t                   t          ¦   «                              |¦  «        ¦  «        S r   )rC   r   r5   r   r   rn   Ú__and__rt   s     €r   r}   zOrderedSet.__and__ž   sY   ø€ å�e�ZÑ(Ô(ð 	 ­S°©Y¬Y½¸U¹¼Ò-CÐ-Cà˜4‘<ÐÝ•J�q”M¥5¡7¤7§?¢?°5Ñ#9Ô#9Ñ:Ô:Ð:r!   c                ó‚   •— t          t          t                   t          ¦   «                              |¦  «        ¦  «        S r   )r   r   r   rn   Ú__xor__rt   s     €r   r   zOrderedSet.__xor__¥   s'   ø€ Ý•J�q”M¥5¡7¤7§?¢?°5Ñ#9Ô#9Ñ:Ô:Ð:r!   Ústrc                ó@   — | j         j        › dt          | ¦  «        › d�S )Nú(ú))rq   Ú__name__Úlistr1   s    r   Ú__repr__zOrderedSet.__repr__¨   s$   € Ø”.Ô)Ð9Ð9­D°©J¬JÐ9Ð9Ð9Ð9r!   úlist[T]c                óN   — t          | j                             ¦   «         ¦  «        S r   )r…   r   Úkeysr1   s    r   Ú__getstate__zOrderedSet.__getstate__«   s   € Ý�D”J—O’OÑ%Ô%Ñ&Ô&Ð&r!   Ústatec                óF   — t                                |d ¦  «        | _        d S r   r   )r   r‹   s     r   Ú__setstate__zOrderedSet.__setstate__®   s   € Ý—]’] 5¨$Ñ/Ô/ˆŒ
ˆ
ˆ
r!   ú*tuple[type[OrderedSet[T]], tuple[list[T]]]c                ó0   — t           t          | ¦  «        ffS r   )r   r…   r1   s    r   Ú
__reduce__zOrderedSet.__reduce__±   s   € Ý�T $™ZœZ˜MÐ*Ð*r!   r   )r   r   r   r   )r"   r#   r   r$   )r(   r)   r   r*   )r   r.   )r   r3   )r(   r   r   r   )r   r   )rA   r
   r   r
   )r   r   )r   r$   )rL   rM   r   r$   )rL   rM   r   r   )rA   rM   r   r*   )rA   rM   r   r$   )rA   rM   r   r   )rA   rk   r   r$   )rA   r)   r   r*   )r   r€   )r   r‡   )r‹   r‡   r   r   )r   rŽ   ))r„   Ú
__module__Ú__qualname__Ú__doc__Ú	__slots__r    Ústaticmethodr'   r-   r2   r6   r9   r;   r>   r@   ÚclassmethodrF   r=   rK   rQ   rO   rW   r[   r]   ra   rd   rf   rh   rj   ro   rs   rv   ry   r{   r}   r   r†   rŠ   r�   r�   Ú__classcell__)rq   s   @r   r   r      s,  ø€ € € € € ðð ð €IðSð Sð Sð Sð Sð ðð ð ñ „\ðð"ð "ð "ð "ð ð  ð  ð  ðð ð ð ð$ð $ð $ð $ð ð  ð  ð  ð#ð #ð #ð #ðð ð ð ð ðð ð ñ „[ðð'ð 'ð 'ð 'ð
8ð 8ð 8ð 8ðð ð ð ð
ð ð ð ðð ð ð ðð ð ð ðð ð ð ð5ð 5ð 5ð 5ð5ð 5ð 5ð 5ðð ð ð ðð ð ð ðð ð ð ð;ð ;ð ;ð ;ð ;ð ;ð&ð &ð &ð &ð &ð &ð%ð %ð %ð %ð %ð %ð
%ð %ð %ð %ð %ð %ð
:ð :ð :ð :ð :ð :ð;ð ;ð ;ð ;ð ;ð ;ð;ð ;ð ;ð ;ð ;ð ;ð:ð :ð :ð :ð'ð 'ð 'ð 'ð0ð 0ð 0ð 0ð+ð +ð +ð +ð +ð +ð +ð +r!   N)Ú
__future__r   Úcollections.abcr   r   r   r   r   r	   rD   Útypingr
   r   r   r   r   Ú__all__r   rS   r!   r   ú<module>rœ      s  ðØ "Ð "Ð "Ð "Ð "Ð "ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð &Ð %Ð %Ð %Ð %Ð %Ð %Ð %Ð %Ð %ð €GˆC�xÐ Ñ Ô €Ø€wˆv˜X°Ð6Ñ6Ô6€àˆ.€ð^+ð ^+ð ^+ð ^+ð ^+�˜A” 
¨1¤ñ ^+ô ^+ð ^+ð ^+ð ^+r!   