
    Vh                         d dl Z d dlmZ d dlmZmZ d dlZd dlmZm	Z	m
Z
 d dlmZ g dZe j                  ded   fd	       Zd
eedf   deedf   fdZeeeedf   f   Zy)    N)	Generator)AnyUnion)*get_single_level_autograd_function_allowed*set_single_level_autograd_function_allowedunwrap_if_dead)
exposed_in)r	   	argnums_t%enable_single_level_autograd_functionunwrap_dead_wrappersreturn)NNNc               #   v   K   	 t               } t        d       d  t        |        y # t                w xY ww)NT)r   r   )
prev_states    F/home/dcms/DCMS/lib/python3.12/site-packages/torch/_functorch/utils.pyr   r      s/     ??A
2482:>2:>s   9) 969args.c                 *    t        d | D              }|S )Nc              3   j   K   | ]+  }t        |t        j                        rt        |      n| - y w)N)
isinstancetorchTensorr   ).0args     r   	<genexpr>z'unwrap_dead_wrappers.<locals>.<genexpr>"   s,      JMz#u||<s#Es   13)tuple)r   results     r   r   r       s      QU F M    )
contextlibcollections.abcr   typingr   r   r   torch._C._functorchr   r   r   torch.utils._exposed_inr	   __all__contextmanagerr   r   r   intr
    r   r   <module>r&      s     %   
 / ?y9I/J ? ?uS#X 5c?  #uS#X&'	r   