
    sg@                     H    d dl mZ dej                  dej                  fdZy)    Ngmreturnc                     d | j                   j                  fd      5  | j                          ddd       | S # 1 sw Y   | S xY w)a  
    Sets a breakpoint in `gm`'s generated python code. It drops into pdb when
    `gm` gets run.

    Args:
        gm: graph module to insert breakpoint. It is then recompiled for it to
            take effect.

    Returns:
        the `gm` with breakpoint inserted.
    c                     dg| S )Nzimport pdb; pdb.set_trace()
 )bodys    N/var/www/html/venv/lib/python3.12/site-packages/torch/fx/experimental/debug.py
insert_pdbzset_trace.<locals>.insert_pdb   s    /7$77    c                       fdS )Nc                 0     r |             S |       S )Nr   )r   cur_transformr
   s    r	   <lambda>z-set_trace.<locals>.<lambda>.<locals>.<lambda>   s)    +8M$'   r   r   )r   r
   s   `r	   r   zset_trace.<locals>.<lambda>   s     r   )make_transformerN)graphon_generate_code	recompile)r   r
   s    @r	   	set_tracer      sO    8 
	"	"
 
# 

  	 I Is	   ?A	)torch.fxfxGraphModuler   r   r   r	   <module>r      s#    ".. R^^ r   