
    קgh                     ~    d dl Z d dlmZmZ d dlZd dlmZ ddZd Zdej	        j
        dee         fdZddefd
ZdS )    N)DictOptional)
LazyStringc                       fddvrdd<   dv r#t           j                                        sdd<   t          fd          S )z;
    Returns a LazyString that formats the graph code.
    c                        d  S S )N  )maybe_idnames   K/var/www/html/ai-engine/env/lib/python3.11/site-packages/torch/fx/_utils.pyformat_namez+lazy_format_graph_code.<locals>.format_name   s"    ''X'''K    print_outputFcoloredc            	      r    t          d               dj        j        j         j        di           S )Nz===== z =====
r	   )_format_graph_codeforward__code__co_filenameprint_readable)r   gmkwargss   r   <lambda>z(lazy_format_graph_code.<locals>.<lambda>   sG    ",[[]],,,J+B''''
 
 r   )sysstdoutisattyr   )r   r   r
   r   r   s   ````@r   lazy_format_graph_coder   	   s    
      V##!&~F3:#4#4#6#6!y	
 	
 	
 	
 	
 	
  r   c                     d|  d| d| dS )z7
    Returns a string that formats the graph code.
    zTRACED GRAPH
 r   
r	   )r   filename	graph_strs      r   r   r   #   s%     =T<<H<<y<<<<r   graphreturnc                 `    | j         D ]%}|j        dk    rd|j        v r|j        d         c S &dS )zF
    Returns the nn_module_stack of the first call_function node.
    call_functionnn_module_stackN)nodesopmeta)r"   nodes     r   #first_call_function_nn_module_stackr+   *   sI      0 07o%%*;ty*H*H9.////4r      c                     g }| }t          |          D ]=}|                    |                                           |j        dk    r n|j        }>d                    |ddd                   S )zD
    Returns a string of the last num_nodes nodes in the graph.
    rootr   N)rangeappendformat_noder(   prevjoin)r*   	num_nodesnode_contextscuris        r   get_node_contextr9   4   s{     M
C9  S__..///6VEh99]44R4()))r   )N)r,   )r   typingr   r   torchtorch._loggingr   r   r   fxGraphr+   strr9   r	   r   r   <module>r@      s    



 ! ! ! ! ! ! ! !  % % % % % %   4= = =ux~ (4.    * *3 * * * * * *r   