Ë
    g^(ho  ã            
       ó$  — U d Z ddlZddlZddlZddlmZ ddlmZmZ ddl	Z
i Zeeef   ed<    e«       Zee   ed<   dee   defd	„Zd
eddfd„Zdeej(                     deeeef      fd„Zdedeeeef      fd„Z	 ddededeeeef      fd„Zy)zG
Utilities for converting data types into structured JSON for dumping.
é    N)ÚSequence)ÚAnyÚOptionalÚINTERN_TABLEÚDUMPED_FILESÚsÚreturnc                 óÐ   ‡ ‡— ‰ €yt         j                  ‰ d «      Š‰€Ht        t         «      Š‰t         ‰ <   t        j                  j
                  j                  dˆˆ fd„d¬«       ‰S )NéÿÿÿÿÚstrc                  ó   •— ‰‰ fS ©N© )Úrr   s   €€úW/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/torch/_logging/structured.pyú<lambda>zintern_string.<locals>.<lambda>   s   ø€ ˜A˜q˜6€ ó    T)Úsuppress_context)r   ÚgetÚlenÚtorchÚ_loggingÚ	_internalÚtrace_structured)r   r   s   `@r   Úintern_stringr      s`   ù€ Ø€yØä×Ñ˜˜DÓ!€AØ€yÜ”ÓˆØŒ�Q‰Ü�‰× Ñ ×1Ñ1Ø”>°Dð 	2ô 	
ð €Hr   Úfilenamec                 óÀ   ‡ ‡— d‰ vry ‰ t         v ry t         j                  ‰ «       ddlmŠ t        j
                  j                  j                  dˆ fd„ˆˆ fd„¬«       y )NÚeval_with_keyr   )Ú_loaderÚ	dump_filec                  ó   •— d‰ iS )NÚnamer   )r   s   €r   r   zdump_file.<locals>.<lambda>+   s   ø€ Ø�Hð
€ r   c                  ó&   •— ‰ j                  ‰«      S r   )Ú
get_source)r   r   s   €€r   r   zdump_file.<locals>.<lambda>.   s   ø€ ˜7×-Ñ-¨hÓ7€ r   )Úmetadata_fnÚ
payload_fn)r   ÚaddÚtorch.fx.graph_moduler   r   r   r   r   )r   r   s   `@r   r    r    !   sT   ù€ Ø˜hÑ&ØØ”<ÑØÜ×Ñ�XÔÝ-ä	‡N�N×Ñ×-Ñ-Øó
ô 8ð .õ r   Útbc                 óš   — | D �cg c]:  }|j                   |j                  t        |j                  «      |j                  dœ‘Œ< }}|S c c}w )N)Úliner"   r   Úloc)Úlinenor"   r   r   r+   )r)   Úframer   s      r   Úfrom_tracebackr/   2   sR   € ð ö	ð ð —L‘LØ—J‘JÜ% e§n¡nÓ5Ø—:‘:ó		
ð	€Að 	ð €Hùò	s   …?AÚ
num_framesc                 ó  — ddl m} ddlm} |j	                  «       }|rt        |d| z  d  «      S |j                  «       j                  «       }t        j                  j                  t        j                  t        «      «      t        j                  j                  z   }t        t!        |«      «      D ]@  \  }}||j"                  vsŒ|t%        |«      |z
  | z
  t%        |«      |z
   }t        |«      c S  t        |d| z  d  «      S )Nr   )ÚTracingContext©ÚCapturedTracebackr   )Útorch._guardsr2   Útorch.utils._tracebackr4   Úextract_stackr/   ÚextractÚsummaryÚosÚpathÚdirnameÚinspectÚgetfiler   ÚsepÚ	enumerateÚreversedr   r   )	r0   r2   r4   Úuser_tbr)   Útorch_filepathÚir.   Úfiltered_tbs	            r   Úget_user_stackrF   A   sÞ   € Ý,Ý8à×*Ñ*Ó,€GÙÜ˜g b¨:¡oÐ&7Ð8Ó9Ð9à	×	"Ñ	"Ó	$×	,Ñ	,Ó	.€Bô —W‘W—_‘_¤W§_¡_´UÓ%;Ó<¼r¿w¹w¿{¹{ÑJ€NÜœh r›lÓ+ò /‰ˆˆ5Ø §¡Ò/àœS ›W q™[¨:Ñ5¼¸B»À!¹ÐDˆKÜ! +Ó.Ò.ð	/ô ˜"˜R *™_Ð.Ð/Ó0Ð0r   Úcppc                 ó8  — ddl m} ddlm} |j	                  |¬«      j                  «       }|D �cg c]N  }|j                  j                  d«      r|j                   |«       vsd|j                  v sd|j                  v r|‘ŒP }}t        |d| z  d	 «      S c c}w )
zJ
    Returns the traceback for the user stack and the framework stack
    r   )Úuninteresting_filesr3   )rG   z.pyzat::ztorch::r   N)
Ú%torch.fx.experimental.symbolic_shapesrI   r6   r4   r8   r9   r   Úendswithr"   r/   )r0   rG   rI   r4   r)   r.   s         r   Úget_framework_stackrL   V   sŸ   € õ JÝ8à	×	"Ñ	" sÐ	"Ó	+×	3Ñ	3Ó	5€Bð ö

àð —‘×'Ñ'¨Ô.Ø—N‘NÑ*=Ó*?Ñ?à˜%Ÿ*™*Ñ$¨	°U·Z±ZÑ(?ò 	ð

€Bð 

ô ˜"˜R *™_Ð.Ð/Ó0Ð0ùò

s   ±AB)é   F)Ú__doc__r=   r:   Ú	tracebackÚcollections.abcr   Útypingr   r   Útorch._logging._internalr   r   Údictr   ÚintÚ__annotations__Úsetr   r   r    ÚFrameSummaryÚlistr/   rF   ÚboolrL   r   r   r   ú<module>rZ      sè   ðòó Û 	Û Ý $ß  ã ð  "€ˆd�3˜�8‰nÓ !ñ ›€ˆc�#‰hÓ ð�X˜c‘]ð  só ð˜ð  ó ð"�x 	× 6Ñ 6Ñ7ð ¸DÀÀcÈ3ÀhÁÑ<Pó ð1˜sð 1 t¨D°°c°©NÑ';ó 1ð, ',ñ1Øð1Ø#ð1à	ˆ$ˆs�Cˆx‰.Ñô1r   