§
    ž²Åj?  ã                   ó   — d Z ddlZdd„ZdS )za
APIs related to torch.compile which lazily import torch._dynamo to avoid
circular dependencies.
é    NTc                 ó„   ‡ ‡— ‰ �"t          j        ‰ ¦  «        ˆ ˆfd„¦   «         }|S t          j        t          ‰¬¦  «        S )au  
    This API should be only used inside torch, external users should still use
    torch._dynamo.disable. The main goal of this API is to avoid circular
    imports issues that is common while using _dynamo.disable inside torch
    itself.

    This API avoids it by lazily importing torch._dynamo from the import time to
    the invocation of the decorated function.
    Nc                  ó†   •— t          ‰dd ¦  «        }|€&dd l}|j                             ‰‰¦  «        }|‰_         || i |¤ŽS )NÚ__dynamo_disabler   )ÚgetattrÚtorch._dynamoÚ_dynamoÚdisabler   )ÚargsÚkwargsÚ
disable_fnÚtorchÚfnÚ	recursives       €€ú?C:\Projects\Historical\venv\Lib\site-packages\torch/_compile.pyÚinnerz_disable_dynamo.<locals>.inner   s]   ø€ õ ! Ð%7¸Ñ>Ô>ˆJØÐ!Ø$Ð$Ð$Ð$à"œ]×2Ò2°2°yÑAÔA�
Ø&0�Ô#à�:˜tÐ. vÐ.Ð.Ð.ó    )r   )Ú	functoolsÚwrapsÚpartialÚ_disable_dynamo)r   r   r   s   `` r   r   r   
   s]   øø€ ð 
€~å	Œ˜Ñ	Ô	ð		/ð 		/ð 		/ð 		/ð 		/ñ 
Ô	ð		/ð ˆõ Ô ¥¸IÐFÑFÔFÐFr   )NT)Ú__doc__r   r   © r   r   ú<module>r      sA   ððð ð
 Ð Ð Ð ðGð Gð Gð Gð Gð Gr   