Ë
    ÃÓ^jé  ã                  óè  — d Z ddlmZ ddlZddlZddlZddlZddlmZ ddlm	Z	m
Z
 ddlmZ e	rddlmZ g d	¢Z e
d
«      Z eej                   d¬«      dd„«       Z eej"                  d¬«      dd„«       Z eej$                  d¬«      ddd„«       Z eej&                  d¬«      ddd„«       Z G d„ d«      Z G d„ d«      Zd d„Z G d„ d«      Zd d„Zd„ Z eej4                  d¬«      d!d„«       Zy)"z
Python polyfills for builtins
é    )ÚannotationsN)ÚCallable)ÚTYPE_CHECKINGÚTypeVaré   )Úsubstitute_in_graph)ÚIterable)ÚallÚanyÚcastÚ	enumerateÚsumÚ_TT)Úcan_constant_fold_throughc               ó   — | D ]  }|rŒ y y)NFT© ©ÚiterableÚelems     úk/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/torch/_dynamo/polyfills/builtins.pyr
   r
   !   s   € àò ˆÚÙðð ó    c               ó   — | D ]  }|sŒ y y)NTFr   r   s     r   r   r   )   s   € àò ˆÚÙðð r   )Úis_embedded_typec              #  ó’   K  — t        |t        «      s!t        t        |«      j                  ›d�«      ‚| D ]  }||f–— |dz  }Œ y ­w)Nz+ object cannot be interpreted as an integeré   )Ú
isinstanceÚintÚ	TypeErrorÚtypeÚ__name__)r   ÚstartÚxs      r   r   r   1   sV   è ø€ ä�eœSÔ!ÜÜ�E‹{×#Ñ#Ð&Ð&QÐRó
ð 	
ð ò ˆØ�QˆhŠØ�‰
‰ñùs   ‚AAc               óL   — t        j                  t        j                  | |«      S ©N)Ú	functoolsÚreduceÚoperatorÚadd)r   r!   s     r   r   r   =   s   € ä×ÑœHŸL™L¨(°EÓ:Ð:r   c                  ó   — e Zd Zd„ Zd„ Zd„ Zy)Ú_CallableIteratorc                ó.   — || _         || _        d| _        y )NF)ÚfnÚsentinelÚ	exhausted)Úselfr,   r-   s      r   Ú__init__z_CallableIterator.__init__E   s   € ØˆŒØ ˆŒØˆ�r   c                ó   — | S r$   r   ©r/   s    r   Ú__iter__z_CallableIterator.__iter__J   ó   € Øˆr   c                ó‚   — | j                   rt        ‚| j                  «       }|| j                  k(  rd| _         t        ‚|S )NT)r.   ÚStopIterationr,   r-   )r/   Úrs     r   Ú__next__z_CallableIterator.__next__M   s>   € Ø�>Š>ÜÐð �G‰G‹Iˆð �—‘ÒØ!ˆDŒNÜÐð ˆr   N©r    Ú
__module__Ú__qualname__r0   r3   r8   r   r   r   r*   r*   D   s   „ òò
ór   r*   c                  ó$   — e Zd Zdd„Zdd„Zdd„Zy)Ú_SequenceIteratorc                ó.   — || _         d| _        d| _        y )Nr   F)r   Úindexr.   )r/   r   s     r   r0   z_SequenceIterator.__init___   s   € Ø ˆŒØˆŒ
Øˆ�r   c                ó   — | S r$   r   r2   s    r   r3   z_SequenceIterator.__iter__d   r4   r   c                óâ   — | j                   rt        ‚	 | j                  j                  | j                  «      }| xj                  dz  c_        |S # t
        t        f$ r d| _         t        d ‚w xY w)Nr   T)r.   r6   r   Ú__getitem__r?   Ú
IndexError©r/   Úresults     r   r8   z_SequenceIterator.__next__g   sa   € Ø�>Š>ÜÐð	*Ø—]‘]×.Ñ.¨t¯z©zÓ:ˆFØ�JŠJ˜!‰O�JØˆMøÜœMÐ*ò 	*Ø!ˆDŒNÜ TÐ)ð	*ús   ”;A ÁA.N©ÚreturnÚNone)rG   r=   ©rG   Úobjectr9   r   r   r   r=   r=   ^   s   „ óó
ô
*r   r=   c                ó`   — t        | d«      rt        | «      S t        dt        | «      › d�«      ‚)NrB   ú'z' object is not iterable)Úhasattrr=   r   r   )r   s    r   Úsequence_iteratorrN   t   s1   € Üˆx˜Ô'Ü  Ó*Ð*Ü
�aœ˜X›Ð'Ð'?Ð@Ó
AÐAr   c                  ó$   — e Zd Zdd„Zdd„Zdd„Zy)Ú_ReversedSequenceIteratorc                ó8   — || _         t        |«      dz
  | _        y )Nr   )ÚseqÚlenr?   )r/   rR   s     r   r0   z"_ReversedSequenceIterator.__init__}   s   € ØˆŒÜ˜“X ‘\ˆ�
r   c                ó   — | S r$   r   r2   s    r   r3   z"_ReversedSequenceIterator.__iter__�   r4   r   c                óÐ   — | j                   dk  rt        ‚	 | j                  | j                      }| xj                   dz  c_         |S # t        t        f$ r d| _         t        d ‚w xY w)Nr   éÿÿÿÿr   )r?   r6   rR   rC   rD   s     r   r8   z"_ReversedSequenceIterator.__next__„   sc   € Ø�:‰:˜Š>ÜÐð	*Ø—X‘X˜dŸj™jÑ)ˆFð 	�
Š
�a‰�
Øˆøô	 œMÐ*ò 	*ØˆDŒJÜ TÐ)ð	*ús   —A ÁA%NrF   )rG   rP   rI   r9   r   r   r   rP   rP   z   s   „ ó"óô	r   rP   c                ó   — t        | «      S r$   )rP   )rR   s    r   Úreversed_sequence_iteratorrX   �   s   € Ü$ SÓ)Ð)r   c               óP   — t        | t        «      st        d«      ‚t        | |«      S )Nz iter(v, w): v must be a callable)r   r   r   r*   )r,   r-   s     r   Úcallable_iteratorrZ   ”   s'   € ô �bœ(Ô#ÜÐ:Ó;Ð;ä˜R Ó*Ð*r   c                ó   — |S r$   r   )ÚtypÚvals     r   r   r   �   s   € à€Jr   )r   úIterable[object]rG   Úbool)r   )r   úIterable[_T]r!   r   rG   zIterable[tuple[int, _T]])r!   r   r   r`   rG   r   )rG   r^   )r\   r   r]   r   rG   r   )Ú__doc__Ú
__future__r   Úbuiltinsr%   r'   ÚtypingÚcollections.abcr   r   r   Ú
decoratorsr   r	   Ú__all__r   r
   r   r   r   r*   r=   rN   rP   rX   rZ   r   r   r   r   ú<module>rh      s  ðñõ #ã Û Û Û Ý $ß )å ,ñ Ý(ò€ñ ˆTƒ]€ñ �X—\‘\¸TÔBòó Cðñ �X—\‘\¸TÔBòó Cðñ �X×'Ñ'¸$Ô?óó @ðñ �X—\‘\¸TÔBó;ó Cð;÷ñ ÷4*ñ *ó,B÷ñ ó,*ò+ñ �V—[‘[¸DÔAòó Bñr   