
    !&h                         d dl mZ d dlZd dlmZ d dlmZ d dlmZ dgZ	 G d dej                  j                  j                        Z G d	 de      Zy)
    )CallableN)_FusedModule)Tracer)ScopeQuantizationTracerc                   T     e Zd Zdedej
                  j                  def fdZ xZ	S )ScopeContextManagerscopecurrent_modulecurrent_module_pathc           	      L    t         |   |t        |t        |                   y )N)super__init__r   type)selfr
   r   r   	__class__s       u/var/www/pru.catia.catastroantioquia-mas.com/valormas/lib/python3.12/site-packages/torch/ao/quantization/fx/tracer.pyr   zScopeContextManager.__init__   s!     	&94;O PQ    )
__name__
__module____qualname__r   torchnnModulestrr   __classcell__r   s   @r   r	   r	      s2    RR,1HHOORRUR Rr   r	   c                   p     e Zd Zdee   dee   f fdZdej                  j                  dede
fdZ xZS )r   skipped_module_namesskipped_module_classesc                 n    t         |           || _        || _        t	        dd       | _        d| _        y )N T)r   r   r   r    r   r
   record_stack_traces)r   r   r    r   s      r   r   zQuantizationTracer.__init__   s7     	$8!&<# 2t_
#' r   mmodule_qualified_namereturnc                 6   |j                   j                  d      xs |j                   j                  d      xr% t        |t        j                  j
                         xs9 || j                  v xs) t        |      | j                  v xs t        |t              S )Nztorch.nnztorch.ao.nn)
r   
startswith
isinstancer   r   
Sequentialr   r   r    r   )r   r$   r%   s      r   is_leaf_modulez!QuantizationTracer.is_leaf_module$   s     LL++J7 >||..}=; #1ehh&9&9::	+ %(A(AA	+ Aw$555	+ !\*	
r   )r   r   r   listr   r   r   r   r   r   boolr+   r   r   s   @r   r   r      sC    ($(I(GKH~(
 
 
PT 
r   )typingr   r   torch.ao.nn.intrinsicr   torch.fx._symbolic_tracer   torch.fx.proxyr   __all__fxproxyr	   r    r   r   <module>r6      sH      . +   
R%((..<< R
 
r   