
    9iT                        S SK r S SKrS SKrS SKrS SKJr  S SKJrJrJ	r	J
r
JrJr  S SKJrJr  S SKrS SKJs  Jr  S SKJr  S SKJrJrJr  S SKJrJrJr  S SKJ r   S S	K!J"r"  S S
K#J$r$  \" S\RJ                  \RL                  5      r'S\(S\)4S jr*\ RV                   " S S5      5       r, " S S\RZ                  5      r. " S S5      r/\	" S\05      r1 " S S\Rd                  5      r3 " S S5      r4 " S S5      r5 " S S5      r6 " S S5      r7 " S  S!5      r8 " S" S#5      r9 " S$ S%5      r: " S& S'\:5      r; " S( S)\:5      r< " S* S+\:5      r= " S, S-\:5      r> " S. S/\:5      r? " S0 S15      r@ " S2 S35      rAg)4    N)abstractmethod)AnyCallableNewTypeOptionalTypeVarUnion)overrideSelf)TracingContext)
FakeTensorFakeTensorModeTensor)MetaConverterMetaTensorDescMetaTensorDescriber)SymNode)ShapeEnv)no_dispatch	_SymNodeTnamereturnc                 $    U R                  S5      $ )z
An ops filter which allows pickle-safe ops. Pickle-safe ops are built-in
ones where it will be possible to unpickle on any machine which has PyTorch.
)ztorch.ops.atenztorch.ops.fbgemm)
startswithr   s    W/var/www/html/land-doc-ocr/venv/lib/python3.13/site-packages/torch/fx/_graph_pickler.py_ops_filter_safer      s     ??	
     c                   6    \ rS rSr% \r\\\/\	4      \
S'   Srg)Options(   
ops_filter N)__name__
__module____qualname____firstlineno__r   r"   r   r   strbool__annotations____static_attributes__r#   r   r   r    r    (   s     3CJ3%+./Br   r    c            	          ^  \ rS rSrSrSS\R                  S\\   SS4U 4S jjjr	\
S\S\\S	\4   \\S	4   4   4S
 j5       r\
S\S\\   4S j5       r\SS\S\\   S\4S jj5       r\S\S\S\4S j5       rSrU =r$ )GraphPickler/   zV
GraphPickler is a Pickler which helps pickling fx graph - in particular
GraphModule.
Nfileoptionsr   c                    > [         TU ]  U5        U=(       d
    [        5       U l        [	        [        5       5      U l        [        SS9U l        g )NF)	copy_data)	super__init__r    r0   _UnpickleStateTokenobject_unpickle_stater   _meta_tensor_describer)selfr/   r0   	__class__s      r   r4   GraphPickler.__init__5   s>    +')  368< ':E&J#r   obj.c                 X   [        U[        5      (       a  [        R                  X5      $ [        U[        R
                  R                  5      (       a  [        R                  X5      $ [        U[        R                  R                  [        R                  R                  45      (       a  [        R                  X5      $ [        U[        5      (       a  [        R                  X5      $ [        U[        R                  5      (       a  [        R                  X5      $ [        U[        R                   R"                  5      (       a  [$        R                  X5      $ [        U[        R
                  R&                  5      (       a   e[(        R                  X5      =n(       a  U$ [*        $ N)
isinstancer   _TensorPickleDatareduce_helpertorchfxGraphModule_GraphModulePickleData_opsOperatorBaseOpOverloadPacket_OpPickleDatar   _ShapeEnvPickleDataSymInt_SymNodePickleData_guardsr   _TracingContextPickleDataNode_TorchNumpyPickleDataNotImplemented)r9   r<   reduces      r   reducer_overrideGraphPickler.reducer_overrideC   s)   * c:&&$224==UXX1122)77BBejj55uzz7R7RSTT ..t99X&&&44T??U\\**%33D>>U]]99::,::4EE "#uxx}}5555.<<TGGvG "!r   c                 "    XR                   L a  gg )Nunpickle_stater7   )r9   r<   s     r   persistent_idGraphPickler.persistent_idn   s    &&&#r   c                     [         R                  " 5        nU " X25      nUR                  U5        UR                  5       sSSS5        $ ! , (       d  f       g= f)z
Pickle an object.
N)ioBytesIOdumpgetvalue)clsr<   r0   streampicklers        r   dumpsGraphPickler.dumpsu   s9    
 ZZ\V&*GLL??$ \\s   )A		
Adata	fake_modec                     [        U5      n[        R                  " U 5       n[        X25      nUR	                  5       sSSS5        $ ! , (       d  f       g= f)z
Unpickle an object.
N)_UnpickleStater[   r\   _GraphUnpicklerload)rd   re   stater`   	unpicklers        r   loadsGraphPickler.loads   s<    
 y)ZZ'6I>># s   A
A)r8   r7   r0   r>   )r$   r%   r&   r'   __doc__r[   r\   r   r    r4   r
   r6   tupler   r   rS   r(   rX   classmethodbytesrb   staticmethodr   rl   r+   __classcell__r:   s   @r   r-   r-   /   s    
KRZZ K(72C Kt K K ("("	xS!5c?2	3(" ("T  HSM   % %'): %e % % $E $n $ $ $r   r-   c                   &    \ rS rSrS\SS4S jrSrg)rg      re   r   Nc                 .    Xl         [        5       U l        g r>   )re   r   meta_converter)r9   re   s     r   r4   _UnpickleState.__init__   s    "9Fr   )re   rx   )r$   r%   r&   r'   r   r4   r+   r#   r   r   rg   rg      s    I. IT Ir   rg   r5   c                   h   ^  \ rS rSrS\R
                  S\SS4U 4S jjr\S\	S\	4S j5       r
S	rU =r$ )
rh      r`   rV   r   Nc                 0   > [         TU ]  U5        X l        g r>   )r3   r4   r7   )r9   r`   rV   r:   s      r   r4   _GraphUnpickler.__init__   s     -r   pidc                 R    US:X  a  U R                   $ [        R                  " S5      e)NrV   zInvalid persistent ID)r7   pickleUnpicklingError)r9   r~   s     r   persistent_load_GraphUnpickler.persistent_load   s)    ""'''(()@AAr   rW   )r$   r%   r&   r'   r[   r\   rg   r4   r
   r6   r   r+   rs   rt   s   @r   rh   rh      sG    .rzz .> .d . B6 Bf B Br   rh   c                       \ rS rSr% \\\4   \S'   \S\	S\
S\\\\/\
4   \\\4   4   4S j5       rS\
SS4S	 jrS
\S\
4S jrSrg)rJ      rd   ra   r<   r   c                 B    U R                   U " U5      UR                  44$ r>   unpickler7   r_   ra   r<   s      r   rA   !_ShapeEnvPickleData.reduce_helper   s"     ||c#h(?(?@@@r   envNc                     UR                   (       a   eUR                  R                  5       U l        U R                  S	 U R                  S	 g )Ntracked_fakesfake_tensor_cache)_translation_validation_enabled__dict__copyrd   )r9   r   s     r   r4   _ShapeEnvPickleData.__init__   s@     6666LL%%'	IIo&II)*r   rV   c                    UR                   (       d   eUR                   R                  (       d   eU R                  R                  5        H%  u  p#[	        UR                   R                  X#5        M'     UR                   R                  $ r>   )re   	shape_envrd   itemssetattr)r9   rV   kvs       r   r   _ShapeEnvPickleData.unpickle   sg    ''''''1111IIOO%DAN,,66= & ''111r   )rd   )r$   r%   r&   r'   dictr(   r6   r*   rp   r-   r   ro   r   r   rg   r5   rA   r4   r   r+   r#   r   r   rJ   rJ      s    
sF{
A"A)1A	$'12E$@S:S4TT
A A+H + +2~ 2( 2r   rJ   c                       \ rS rSr\S\S\S\\\	\
/\4   \\	\4   4   4S j5       rS\SS4S jrS\4S	 jrS
\
S\R"                  4S jrSrg)rL      ra   r<   r   c                     U " UR                   5      UR                  4n[        U[        R                  5      (       a  [
        R                  U4$ [        S[        U5       35      e)NzUnhandled SymNode type )	noder7   r?   rB   rK   rL   unpickle_sym_intNotImplementedErrortype)r_   ra   r<   argss       r   rA    _SymNodePickleData.reduce_helper   sU     CHHw667c5<<((%66<<%(?S	{&KLLr   r   Nc                     UR                   U l        UR                  U l        UR                  U l        UR                  U l        g r>   )_exprexprr   pytype_hinthint)r9   r   s     r   r4   _SymNodePickleData.__init__   s.    JJ	kkJJ	r   c                     U R                   c   e[        U R                  U R                   U R                  U R                  5      $ r>   )r   r   r   r   r   )r9   s    r   _to_sym_node_SymNodePickleData._to_sym_node   s3    ~~)))tyy$..$++tyyIIr   rV   c                 J    [         R                  " U R                  5       5      $ r>   )rB   rK   r   r9   rV   s     r   r   #_SymNodePickleData.unpickle_sym_int   s    ||D--/00r   )r   r   r   r   )r$   r%   r&   r'   rp   r-   r   ro   r   r   rg   r5   rA   r   r4   r   rB   rK   r   r+   r#   r   r   rL   rL      s    MM M 
$'23U4AT;T5UU
	M MW  Jg J1~ 1%,, 1r   rL   c                       \ rS rSr% \\   \S'   \S\S\S\	\
\\/\4   \	\\4   4   4S j5       rS\S\SS	4S
 jrS\S\4S jrSrg	)r@      metadatara   r<   r   c                 X    U R                   U " UR                  U5      UR                  44$ r>   )r   r8   r7   r   s      r   rA   _TensorPickleData.reduce_helper   s3     ||..4##
 
 	
r   	describertNc           	         UR                  U5      nUR                  (       a?  [        UR                  [        R                  R
                  R                  5      (       d   e[        R                  " US S9U l	        [        R                   HC  nUS;   a  M  [        U R                  U5      c  M$   SU S[        U R                  U5       35       e   g )Nre   )re   	view_funcz
not None: z: )describe_tensorr   r?   rB   _subclasses
meta_utils_FakeTensorViewFuncdataclassesreplacer   r   _UNSERIALIZABLEgetattr)r9   r   r   r   r   s        r   r4   _TensorPickleData.__init__   s    
 ,,Q/ %% 1 1 < < P P*
 *
 	
 
 $++HE  //A..4==!,4 QCr'$--";!<=4 0r   rV   c                 D  ^ [         R                  " U R                  TR                  S9nS[        / [
        R                  4   S[        [
        R                  [        4   S[        4U4S jjnTR                  R                  UTR                  R                  US S 5      $ )Nr   make_meta_tdevicer   c                    > [        5          [        TR                  U " 5       U5      sS S S 5        $ ! , (       d  f       g = fr>   )r   r   re   )r   r   rV   s     r   	with_fake-_TensorPickleData.unpickle.<locals>.with_fake	  s-     !",,M s	   2
A )r   r   r   re   r   rB   r   r	   r   r(   r   rx   meta_tensorr   )r9   rV   r   r   s    `  r   r   _TensorPickleData.unpickle  s    &&MM$..

	!"ell"23	=B5<<QTCT=U		 ,,88$$..
 	
r   )r   )r$   r%   r&   r'   r   r   r*   rp   r-   ro   r   r   rg   r5   rA   r   r   r4   r   r+   r#   r   r   r@   r@      s    Z((
"
)3
	$'34eDBU<U6VV

 
"5 & T ,
~ 
* 
r   r@   c                       \ rS rSr\S\S\S\\\	\
\/\4   \\
\4   4      4S j5       rS\S\SS4S	 jrS
\S\	S\4   4S jr\S\S\\
   4S j5       rSrg)rP   i  ra   r<   r   c                 f    U R                  U5      =n(       a  U R                  X1R                  44$ g r>   )from_objectr   r7   )r_   ra   r<   rd   s       r   rA   #_TorchNumpyPickleData.reduce_helper  s3     ??3''4'LL4)@)@"ABBr   modr   Nc                     Xl         X l        g r>   r   r   )r9   r   r   s      r   r4   _TorchNumpyPickleData.__init__*  s    	r   rV   .c                     [        [        R                  " U R                  5      U R                  5      n[
        R                  R                  R                  R                  5       U   $ r>   )
r   	importlibimport_moduler   r   rB   _dynamo	variablesmiscget_np_to_tnp_map)r9   rV   nps      r   r   _TorchNumpyPickleData.unpickle.  sE    Y,,TXX6		B}}&&++==?CCr   tnpc                    [        U5      (       d  g [        R                  R                  R                  R                  5       n UR                  U5      =n(       d  g  [        USS 5      =n(       d  Sn[        USS 5      =n(       d  g U[        [        R                  " U5      U5      :X  d   eU " XE5      $ ! [         a     g f = f)Nr%   numpyr$   )callablerB   r   r   r   get_tnp_to_np_mapget	TypeErrorr   r   r   )r_   r   	tnp_to_npr   r   r   s         r   r   !_TorchNumpyPickleData.from_object2  s    }}MM++00BBD		#--,,B, -
 r<666CJ555WY44S94@@@@3~  		s   B8 8
CCr   )r$   r%   r&   r'   rp   r-   r6   r   ro   r   r   rg   r5   rA   r(   r4   r   r   r+   r#   r   r   rP   rP     s    
"
)/
	dN+V34eDBU<U6VV	


 
C s t D~ D(3;:O D f $  r   rP   c                      \ rS rSr\S\S\R                  R                  S\	\
\\/\R                  R                  4   \	\\4   4   4S j5       rS\R                  R                  S\SS4S	 jrS
\S\R                  R                  4S jrSrg)rE   iH  ra   r<   r   c                 V    U R                   U " X!R                  5      UR                  44$ r>   )r   r0   r7   r   s      r   rA   $_GraphModulePickleData.reduce_helperI  s/     ||__%##
 
 	
r   gmr0   Nc                 :   [        U[        R                  R                  R                  5      (       a  UR                  5       nOUR                  5       nUR                  R                  5       U l	        U R                  S	 [        UR                  U5      U l        g )N_graph)r?   rB   rC   _lazy_graph_module_LazyGraphModule_real_recompile	recompiler   r   gm_dict_GraphPickleDatar   graph)r9   r   r0   _python_codes       r   r4   _GraphModulePickleData.__init__U  sj    b%((55FFGG--/L<<>L{{'')LL"%bii9
r   rV   c                     [         R                  R                  R                  [         R                  R                  5      nU R                  Ul        U R                  R                  X!5      Ul        U$ r>   )	rB   rC   rD   __new__r   r   r   r   r   )r9   rV   r   s      r   r   _GraphModulePickleData.unpickle_  sL    XX!!))%((*>*>?llJJ'';		r   )r   r   )r$   r%   r&   r'   rp   r-   rB   rC   rD   ro   r   r   rg   r5   rA   r    r4   r   r+   r#   r   r   rE   rE   H  s    	
"	
).)=)=	
	$')=)==>d''(	*
	
 	
:588// :' :d :~ %((:N:N r   rE   c                   $   \ rS rSrS\R
                  R                  S\\R
                  R                  S 4   S\SS4S jr	S\R
                  R                  S\S \R
                  R                  4   S	\S\R
                  R                  4S
 jrSrg)_NodePickleDataif  r   mappingr0   r   Nc                   ^ [         R                  " [        R                  R                  U4S jUR
                  5      U l        [         R                  " [        R                  R                  U4S jUR                  5      U l        UR                  U l        UR                  U l        [        R                  UR                  U5      U l        UR                  U l        UR                  U l        g )Nc                    > TU    $ r>   r#   nr   s    r   <lambda>*_NodePickleData.__init__.<locals>.<lambda>m  s	    '!*r   c                    > TU    $ r>   r#   r   s    r   r   r   o  s	    WQZr   )pytreetree_map_onlyrB   rC   rO   r   kwargsr   oprI   r   targetr   meta)r9   r   r   r0   s     ` r   r4   _NodePickleData.__init__g  s     ((8LdiiX	**HHMM/
 II	''#**4;;@ II	 II	r   r   rV   c                   ^ [         R                  " [        U4S jU R                  5      n[         R                  " [        U4S jU R                  5      nU R
                  R                  U5      n[        U5      (       d  [        U[        5      (       d   eUR                  U R                  XdXPR                  U R                  5      nU R                  Ul        U$ )Nc                    > TU    $ r>   r#   r   s    r   r   *_NodePickleData.unpickle.<locals>.<lambda>  s	    wqzr   c                    > TU    $ r>   r#   r   s    r   r   r    s	    wqzr   )r  r  r   r   r  r  r   r   r?   r(   create_noder  r   r   r  )r9   r   r   rV   r   r  r  r   s     `     r   r   _NodePickleData.unpickle}  s     ##O5I499U%%14;;
 %%n5:fc#:#:::  &		499UII	r   )r   r  r  r   r  r  r   )r$   r%   r&   r'   rB   rC   rO   r   r    r4   Graphrg   r   r+   r#   r   r   r   r   f  s    hhmm ehhmm%667 	
 
,xx~~ '67 '	
 
r   r   c            
          \ rS rSr\S\S\S\\\	/\4   \\
   4   4S j5       r\S\S\SS 4S j5       r\S\S	\\S
   \S   4   S\SS 4S j5       r\S\	S\4S j5       r\S\S\4S j5       r\S\S\S\4S j5       rSrg)rI   i  ra   r  r   c                 j    U R                  X!R                  5      nUR                  UR                  44$ r>   )r   r0   r   r7   )r_   ra   r  results       r   rA   _OpPickleData.reduce_helper  s.     B0'"9"9!;<<r   r0   c                    [        U[        5      (       a  [        U5      $ [        R                  R
                  R                  U5      n[        U[        R                  R                  5      (       a  U R                  U[        U5      $ [        U[        R                  R                  5      (       a  U R                  U[        U5      $ UR                  S5      (       a  UR                  SS5      u  pE[        XE5      $ UR                  S5      (       a  UR                  SS5      u  pe[!        U5      $ [#        S[%        U5       SU SU 35      e)N)z	builtins.zmath.ztorch..   z	operator.zTARGET:  )r?   r(   _OpStrPickleDatarB   rC   rO   _pretty_print_targetrF   
OpOverload
_pickle_op_OpOverloadPickleDatarH   _OpOverloadPacketPickleDatar   split_OpBuiltinPickleData_OpOperatorPickleDatar   r   )r_   r  r0   r   rootdetail_s          r   r   _OpPickleData.pickle  s   b##B''xx}}11"5b%**//00>>$(=wGGEJJ7788>>$(CWMM__=>>::c1-LD'55__[))

3*IA(00 &b
!B4q&GHHr   r   dataclsr  r  c                 t    UR                   =n(       a  U" U 5      (       d  SSKJn  U" SU  35      eU" U 5      $ )Nr   )BypassFxGraphCachez"Unable to pickle non-standard op: )r"   torch._inductor.codecacher'  )r   r%  r0   r"   r'  s        r   r  _OpPickleData._pickle_op  s?     ",,,J,j6F6FD$'I$%PQQt}r   rV   c                     g r>   r#   r   s     r   r   _OpPickleData.unpickle  s    r   c                     SU;   a2  UR                  SS5      u  p#[        5       U   nU R                  XC5      $ [        5       U   $ )z3
Like `globals()[name]` but supports dotted names.
r  r  )r  globals_getattr_by_name)r_   r   r   restr!  s        r   _lookup_global_by_name$_OpPickleData._lookup_global_by_name  sE    
 $;

3*IC9S>D''339T?"r   r!  c                 r    SU;   a'  UR                  SS5      u  p![        X5      n SU;   a  M'  [        X5      $ )z7
Like `getattr(root, name)` but supports dotted names.
r  r  )r  r   )r!  r   r   s      r   r.  _OpPickleData._getattr_by_name  s=    
 Tk

3*IC4%D Tk t""r   r#   N)r$   r%   r&   r'   rp   r-   r6   ro   r   rg   r5   rA   r    r   rr   r(   r	   r   r  r   r   r0  r.  r+   r#   r   r   rI   rI     s5   ="=(.=	x(&0159L3MM	N= = I I I_ I I& ()40M+NN

  
  ~ &   	## 	#& 	# 	# #v #S #V # #r   rI   c                   8    \ rS rSrS\SS4S jrS\S\4S jrSrg)	r  i  r   r   Nc                     Xl         g r>   r   r9   r   s     r   r4   _OpStrPickleData.__init__      	r   rV   c                     U R                   $ r>   r   r   s     r   r   _OpStrPickleData.unpickle  s    yyr   r   )	r$   r%   r&   r'   r(   r4   rg   r   r+   r#   r   r   r  r    s(    S T ~ # r   r  c                   `    \ rS rSrS\SS4S jrS\S\R                  R                  4S jr
Srg)	r  i  r   r   Nc                     Xl         g r>   r   r6  s     r   r4   _OpOverloadPickleData.__init__  r8  r   rV   c                     U R                  U R                  5      n[        U[        R                  R
                  5      (       d   eU$ r>   )r0  r   r?   rB   rF   r  r9   rV   r<   s      r   r   _OpOverloadPickleData.unpickle  s8    ))$))4#uzz445555
r   r   )r$   r%   r&   r'   r(   r4   rg   rB   rF   r  r   r+   r#   r   r   r  r    s2    S T ~ %**:O:O r   r  c                   `    \ rS rSrS\SS4S jrS\S\R                  R                  4S jr
Srg)	r  i  r   r   Nc                     Xl         g r>   r   r6  s     r   r4   $_OpOverloadPacketPickleData.__init__  r8  r   rV   c                     U R                  U R                  5      n[        U[        R                  R
                  5      (       d   eU$ r>   )r0  r   r?   rB   rF   rH   r?  s      r   r   $_OpOverloadPacketPickleData.unpickle  s8    ))$))4#uzz::;;;;
r   r   )r$   r%   r&   r'   r(   r4   rg   rB   rF   rH   r   r+   r#   r   r   r  r    s2    S T ~ %**:U:U r   r  c                   <    \ rS rSrS\S\SS4S jrS\S\4S jrS	r	g)
r  i  r!  r   r   Nc                     Xl         X l        g r>   )r!  r   )r9   r!  r   s      r   r4   _OpBuiltinPickleData.__init__  s    		r   rV   c                 *   U R                   S:X  a  [        R                  U R                  5      $ U R                   S:X  a  SS KnU R                  X R                  5      $ U R                   S:X  a   U R                  [        U R                  5      $ [        e)Nbuiltinsmathr   rB   )r!  __builtins__r   r   rK  r.  rB   r   )r9   rV   rK  s      r   r   _OpBuiltinPickleData.unpickle  sp    99
"##DII..YY& ((yy99YY'!((		::%%r   )r   r!  
r$   r%   r&   r'   r(   r4   rg   r6   r   r+   r#   r   r   r  r    s/    S   
&~ 
&& 
&r   r  c                   8    \ rS rSrS\SS4S jrS\S\4S jrSr	g)	r   i  r   r   Nc                     Xl         g r>   r   r6  s     r   r4   _OpOperatorPickleData.__init__  r8  r   rV   c                 @    SS K nU R                  X R                  5      $ )Nr   )operatorr.  r   )r9   rV   rS  s      r   r   _OpOperatorPickleData.unpickle  s    $$Xyy99r   r   rN  r#   r   r   r   r     s(    S T :~ :& :r   r   c                       \ rS rSrS\R
                  R                  S\SS4S jrS\R
                  R                  S\
S\R
                  R                  4S	 jrS
rg)r   i  r   r0   r   Nc                     UR                   U l        UR                  U l        0 nUR                   H  n[        XCU5      X4'   M     [        UR                  5       5      U l        g r>   )_tracer_cls
tracer_cls_tracer_extrastracer_extrasnodesr   ro   values)r9   r   r0   r[  r   s        r   r4   _GraphPickleData.__init__  sP    ++"1168KKD)$w?EK  5<<>*
r   r   rV   c                     [         R                  R                  XR                  U R                  5      n0 nU R
                   H  nUR                  X4U5      XE'   M     U$ r>   )rB   rC   r  rX  rZ  r[  r   )r9   r   rV   r   r[  nds         r   r   _GraphPickleData.unpickle  sN     r??D4F4FG68**BE.AEI  r   )r[  rX  rZ  )r$   r%   r&   r'   rB   rC   r  r    r4   rD   rg   r   r+   r#   r   r   r   r     sS    +ehhnn +w +4 +&	((&&	8F			r   r   c                       \ rS rSr\S\S\R                  R                  S\	\
\\/\R                  R                  4   \	\\4   4   4S j5       rS\SS4S jrS	\S\4S
 jrSrg)rN   i+  ra   r<   r   c                 B    U R                   U " U5      UR                  44$ r>   r   r   s      r   rA   '_TracingContextPickleData.reduce_helper,  s*     LLC''
 	
r   contextNc                 6   UR                   U l         UR                  U l        UR                  U l        UR                  U l        UR                  U l        UR
                  U l        UR                  U l        UR                  U l        UR                  U l        g r>   )	module_contextframe_summary_stackloc_in_frameaot_graph_nameparams_flatparams_flat_unwrap_subclassesparams_unwrapped_to_flat_indexoutput_strides#force_unspec_int_unbacked_size_like)r9   rd  s     r   r4   "_TracingContextPickleData.__init__;  s    %44#*#>#> #00%44"..-4-R-R*.5.T.T+%4477 	0r   rV   c                 b   [        UR                  5      nU R                  Ul        U R                  Ul        U R                  Ul        U R
                  Ul        U R                  Ul        U R                  Ul        U R                  Ul        U R                  Ul	        U R                  Ul
        U$ r>   )r   re   rf  rg  rh  ri  rj  rk  rl  rm  rn  )r9   rV   rd  s      r   r   "_TracingContextPickleData.unpickleQ  s     !9!9:!%!4!4&*&>&>##00!%!4!4"..040R0R-151T1T.!%!4!444 	3 r   )	ri  rn  rg  rh  rf  rm  rj  rk  rl  )r$   r%   r&   r'   rp   r-   rB   rM   r   ro   r   r   rg   r5   rA   r4   r   r+   r#   r   r   rN   rN   +  s    
"
).)E)E
	$')E)EEFd''(	*

 

 
4 
,~ . r   rN   )Br   r   r[   r   abcr   typingr   r   r   r   r   r	   typing_extensionsr
   r   rB   torch.utils._pytreeutils_pytreer  torch._guardsr   torch._subclasses.fake_tensorr   r   r   torch._subclasses.meta_utilsr   r   r   torch.fx.experimental.sym_noder   %torch.fx.experimental.symbolic_shapesr   torch.utils._mode_utilsr   rK   SymFloatr   r(   r)   r   	dataclassr    Picklerr-   rg   r6   r5   	Unpicklerrh   rJ   rL   r@   rP   rE   r   rI   r  r  r  r  r   r   rN   r#   r   r   <module>r     sq     	   C C ,  $ $ ( L L 
 3 : / Ku~~>	3 4  C C CX$6>> X$vI I 3V< 
Bf&& 
B2 2>1 1:;
 ;
|) )X <% %PB# B#J} M - &= &$:M : @3 3r   