o
    "i                     @   s   d Z ddlZdddZdS )za
APIs related to torch.compile which lazily import torch._dynamo to avoid
circular dependencies.
    NTc                    s2    durt   fdd}|S t jtd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                     s>   t  dd }|d u rdd l}|j }| _|| i |S )N__dynamo_disabler   )getattrtorch._dynamo_dynamodisabler   )argskwargs
disable_fntorchfn	recursive L/home/ubuntu/SoloSpeech/.venv/lib/python3.10/site-packages/torch/_compile.pyinner   s   z_disable_dynamo.<locals>.inner)r   )	functoolswrapspartial_disable_dynamo)r   r   r   r   r   r   r   	   s
   
r   )NT)__doc__r   r   r   r   r   r   <module>   s   