
    3j]              
       ,   % S r SSKrSSKrSSKrSSKJr  SSKJr  SSKr	0 r
\\\4   \S'   \" 5       r\\   \S'   S\S-  S\4S	 jrS
\SS4S jrS\\R&                     S\\\\4      4S jrS\S\\\\4      4S jr SS\S\S\\\\4      4S jjrg)zG
Utilities for converting data types into structured JSON for dumping.
    N)Sequence)AnyINTERN_TABLEDUMPED_FILESsreturnc                    ^ ^ T c  g[         R                  T 5      mTcF  [        [         5      mT[         T '   [        R                  R
                  R                  SUU 4S jSS9  T$ )Nstrc                     > TT 4$ N )rr   s   S/home/wildlama/miniconda3/lib/python3.13/site-packages/torch/_logging/structured.py<lambda>intern_string.<locals>.<lambda>   s	    Aq6    T)suppress_context)r   getlentorch_logging	_internaltrace_structured)r   r   s   `@r   intern_stringr      s^    yAyQ  11>D 	2 	
 Hr   filenamec                    ^ ^ ST ;  a  g T [         ;   a  g [         R                  T 5        SSKJm  [        R
                  R                  R                  SU 4S jUU 4S jS9  g )Neval_with_keyr   )_loader	dump_filec                     > ST 0$ )Nnamer   )r   s   r   r   dump_file.<locals>.<lambda>,   s    H
r   c                  &   > T R                  T5      $ r   )
get_source)r   r   s   r   r   r#   /   s    7--h7r   )metadata_fn
payload_fn)r   addtorch.fx.graph_moduler   r   r   r   r   )r   r   s   `@r   r    r    "   sT    h&<X-	NN--
 8 . r   tbc                     U  Vs/ s H;  nUR                   UR                  [        UR                  5      UR                  S.PM=     nnU$ s  snf )N)liner"   r   loc)linenor"   r   r   r,   )r*   framer   s      r   from_tracebackr0   3   sW     	 E LLJJ%enn5::		
   	 H	s   AA
num_framesc                    SSK Jn  SSKJn  UR	                  5       nU(       a  [        USU -  S  5      $ UR                  5       R                  5       n[        R                  R                  [        R                  " [        5      5      [        R                  R                  -   n[        [!        U5      5       HA  u  pgXWR"                  ;  d  M  U[%        U5      U-
  U -
  [%        U5      U-
   n[        U5      s  $    [        USU -  S  5      $ )Nr   )TracingContextCapturedTracebackr
   )torch._guardsr3   torch.utils._tracebackr5   extract_stackr0   extractsummaryospathdirnameinspectgetfiler   sep	enumeratereversedr   r   )	r1   r3   r5   user_tbr*   torch_filepathir/   filtered_tbs	            r   get_user_stackrG   B   s    ,8**,Ggb:o&7899		"	"	$	,	,	.B WW__W__U%;<rww{{JNhrl+/SWq[:5B!DK!+..	 , "R*_./00r   cppc                 R   SSK Jn  SSKJn  UR	                  US9R                  5       nU Vs/ s H\  nUR                  R                  S5      (       a  UR                  U" 5       ;  d"  SUR                  ;   d  SUR                  ;   d  MZ  UPM^     nn[        USU -  S	 5      $ s  snf )
zB
Returns the traceback for the user stack and the framework stack
r   )uninteresting_filesr4   )rH   z.pyzat::ztorch::r
   N)
%torch.fx.experimental.symbolic_shapesrJ   r7   r5   r9   r:   r   endswithr"   r0   )r1   rH   rJ   r5   r*   r/   s         r   get_framework_stackrM   W   s     J8		"	"s	"	+	3	3	5B 

E ''..NN*=*??%**$	UZZ(? 	  

 "R*_./00

s   AB$B$)   F)__doc__r>   r;   	tracebackcollections.abcr   typingr   torch._logging._internalr   r   dictr   int__annotations__setr   r   r    FrameSummarylistr0   rG   boolrM   r   r   r   <module>r[      s     	  $    "d38n ! c#h S4Z C   "x	 6 67 Dc3h<P 1s 1tDcN'; 1, ',11#1	$sCx.1r   