§
    ž²Åjm  ã                  óL  — d Z ddlmZ ddlZddlZddlZddlmZmZ 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dS )z
Python polyfills for builtins
é    )ÚannotationsN)ÚIterableÚTypeVaré   )Úsubstitute_in_graph)ÚallÚanyÚ	enumerateÚsumÚ_TT)Úcan_constant_fold_throughÚiterableúIterable[object]ÚreturnÚboolc               ó   — | D ]}|s dS ŒdS )NFT© ©r   Úelems     úQC:\Projects\Historical\venv\Lib\site-packages\torch/_dynamo/polyfills/builtins.pyr   r      s*   € àð ð ˆØð 	Ø�5�5ð	àˆ4ó    c               ó   — | D ]}|r dS ŒdS )NTFr   r   s     r   r	   r	   "   s*   € àð ð ˆØð 	Ø�4�4ð	àˆ5r   )Úis_embedded_typeúIterable[_T]ÚstartÚintúIterable[tuple[int, _T]]c              #  óœ   K  — t          |t          ¦  «        s$t          t          |¦  «        j        ›d�¦  «        ‚| D ]}||fV — |dz  }Œd S )Nz+ object cannot be interpreted as an integeré   )Ú
isinstancer   Ú	TypeErrorÚtypeÚ__name__)r   r   Úxs      r   r
   r
   *   sr   è è € å�e�SÑ!Ô!ð 
ÝÝ�E‰{Œ{Ô#ÐRÐRÐRñ
ô 
ð 	
ð ð ð ˆØ�QˆhˆˆˆØ�‰
ˆˆðð r   c               óB   — t          j        t          j        | |¦  «        S )N)Ú	functoolsÚreduceÚoperatorÚadd)r   r   s     r   r   r   6   s   € åÔ�HœL¨(°EÑ:Ô:Ð:r   )r   r   r   r   )r   )r   r   r   r   r   r   )r   r   r   r   r   r   )Ú__doc__Ú
__future__r   Úbuiltinsr&   r(   Útypingr   r   Ú
decoratorsr   Ú__all__r   r   r	   r
   r   r   r   r   ú<module>r0      sp  ððð ð #Ð "Ð "Ð "Ð "Ð "à €€€Ø Ð Ð Ð Ø €€€Ø $Ð $Ð $Ð $Ð $Ð $Ð $Ð $à ,Ð ,Ð ,Ð ,Ð ,Ð ,ðð ð €ð €WˆT�]„]€ð Ð�X”\¸TÐBÑBÔBðð ð ñ CÔBðð Ð�X”\¸TÐBÑBÔBðð ð ñ CÔBðð Ð�XÔ'¸$Ð?Ñ?Ô?ðð ð ð ñ @Ô?ðð Ð�X”\¸TÐBÑBÔBð;ð ;ð ;ð ;ñ CÔBð;ð ;ð ;r   