
    9i/                       S r SSKJr  SSKrSSKrSSKrSSKJrJrJ	r	  SSK
Jr  \(       a  SSKJr  / SQr\	" S	5      r\" \R                   S
S9SS j5       r\" \R"                  S
S9SS j5       r\" \R$                  S
S9SSS jj5       r\" \R&                  S
S9SSS jj5       r " S S5      r " S S5      r\4S jrg)z
Python polyfills for builtins
    )annotationsN)CallableTYPE_CHECKINGTypeVar   )substitute_in_graph)Iterable)allany	enumeratesum_TT)can_constant_fold_throughc               (    U  H  nU(       a  M    g   g)NFT iterableelems     `/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/torch/_dynamo/polyfills/builtins.pyr
   r
      s    t      c               (    U  H  nU(       d  M    g   g)NTFr   r   s     r   r   r   &   s    4  r   )is_embedded_typec              #     #    [        U[        5      (       d"  [        [        U5      R                  < S35      eU  H  nX4v   US-  nM     g 7f)Nz+ object cannot be interpreted as an integer   )
isinstanceint	TypeErrortype__name__)r   startxs      r   r   r   .   sQ     eS!!E{##&&QR
 	
 h
 s   AAc               L    [         R                  " [        R                  X5      $ N)	functoolsreduceoperatoradd)r   r    s     r   r   r   :   s    HLL(::r   c                  &    \ rS rSrS rS rS rSrg)_CallableIterator?   c                    Xl         X l        g r#   fnsentinel)selfr-   r.   s      r   __init___CallableIterator.__init__@   s     r   c                    U $ r#   r   )r/   s    r   __iter___CallableIterator.__iter__D   s    r   c                P    U R                  5       nXR                  :X  a  [        eU$ r#   )r-   r.   StopIteration)r/   rs     r   __next___CallableIterator.__next__G   s(     GGI  r   r,   N)r   
__module____qualname____firstlineno__r0   r3   r8   __static_attributes__r   r   r   r)   r)   ?   s    !
r   r)   c                      \ rS rSrSrg)_SENTINEL_MISSINGT   r   N)r   r:   r;   r<   r=   r   r   r   r?   r?   T   s    r   r?   c               r   U[         L a  U n[        US5      (       a;  UR                  5       n[        US5      (       a  U$ [        S[	        U5       S35      e[        US5      (       a  S nU" U5      $ [        S[	        U5       S35      eU n[        U[        5      (       d  [        S5      e[        XQ5      $ )Nr3   r8   'z' object is not iterable__getitem__c              3  f   #    Sn  U R                  U5      v   US-  nM  ! [         a     g f = f7f)Nr   r   )rC   
IndexError)r   is     r   sequence_protocol iter_.<locals>.sequence_protocolg   sD     &22155Q  & s   1! 1
.1.1z iter(v, w): v must be a callable)r?   hasattrr3   r   r   r   r   r)   )fn_or_iterabler.   r   iteratorrG   r-   s         r   iter_rL   Y   s     $$!8Z((((*Hx,,!DN#33K LMM8]++ %X..!DN++CDEE "h''>?? ..r   )r   zIterable[object]returnbool)r   )r   Iterable[_T]r    r   rM   zIterable[tuple[int, _T]])r    r   r   rO   rM   r   )__doc__
__future__r   builtinsr$   r&   typingr   r   r   
decoratorsr   collections.abcr	   __all__r   r
   r   r   r   r)   r?   rL   r   r   r   <module>rW      s    #    3 3 , ( T] X\\TB C X\\TB C X''$? @ X\\TB; C; *	 	
 $5 !/r   