
    3j              	          % S SK Jr  S SKJr  S SKJrJr  S SKJr  S SK	r
S SKJrJrJr  \\\/\\   4   r\\\/\4   r\r\r0 r\\\   \4   \S'   0 r\\\   \S-  4   \S'   \" S	5      r\" S
5      r\" S5      r SS\\   S\S\S-  SS4S jjrS\\   SS4S jrS\S\S\\   4S jrS\\\4   S\S\\   4S jr S\\   S\S\\   4S jr!S\"\S4   S\S\\   4S jr#S\S\S\\   4S jr$S\\\4   S\S\4S jr%S\\   S\S\4S jr&S\"\S4   S\S\4S jr'S\S\S\4S jr(\" \\ \%5        \" \\!\&5        \" \"\#\'5        \
RR                  RT                   H  r+\" \+\#\'5        M     \" \\$\(5        g)     )
namedtuple)Callable)AnyTypeVar)
NamedTupleN)PyTreetree_flattenTreeSpecSUPPORTED_NODESSUPPORTED_NODES_EXACT_MATCH_T_K_Vclsflatten_fn_specflatten_fn_exact_match_specreturnc                 (    U[         U '   U[        U '   g Nr   r   )r   r   r   s      J/home/wildlama/miniconda3/lib/python3.13/site-packages/torch/fx/_pytree.pyregister_pytree_flatten_specr      s    
 +OC'B$    c                      [         U 	 [        U 	 g r   r   )r   s    r   _deregister_pytree_flatten_specr   "   s     	#C(r   pytreespecc           	      L   UR                  5       (       a  U /$ UR                  [        ;   aP  [        UR                     nU" X5      n/ n[        X1R	                  5       5       H  u  pV[        XV5      nXG-  nM     U$ [        U 5      u  pX:w  a  [        SU	 SU  SU S35      eU$ )Nz
Real spec z of object z! is different from expected spec z_. Please file an issue at https://github.com/pytorch/pytorch/issues/new?template=bug-report.yml)is_leaftyper   zipchildrentree_flatten_specr	   RuntimeError)
r   r   r   child_pytreesresultchild
child_specflatflat_result	real_specs
             r   r#   r#   )   s     ||~~x yyO#)$))4'5!$]MMO!DE$U7DNF "E )&1K;vh6WX\W] ^l m
 	
 r   dc                 J    UR                    Vs/ s H  o U   PM	     sn$ s  snf r   )context)r,   r   ks      r   _dict_flatten_specr0   E   s     ,,',QaD,'''s    c                 \    [        UR                  5       Vs/ s H  o U   PM	     sn$ s  snf r   rangenum_childrenr,   r   is      r   _list_flatten_specr7   I   )     1 1232QaD2333   ).c                 \    [        UR                  5       Vs/ s H  o U   PM	     sn$ s  snf r   r2   r5   s      r   _tuple_flatten_specr;   M   r8   r9   c                 \    [        UR                  5       Vs/ s H  o U   PM	     sn$ s  snf r   r2   r5   s      r   _namedtuple_flatten_specr=   Q   r8   r9   c                 2    [        U 5      UR                  :H  $ r   lenr4   r,   r   s     r   _dict_flatten_spec_exact_matchrB   U       q6T&&&&r   c                 2    [        U 5      UR                  :H  $ r   r?   rA   s     r   _list_flatten_spec_exact_matchrE   Y   rC   r   c                 2    [        U 5      UR                  :H  $ r   r?   rA   s     r   _tuple_flatten_spec_exact_matchrG   ]   rC   r   c                 2    [        U 5      UR                  :H  $ r   r?   rA   s     r   $_namedtuple_flatten_spec_exact_matchrI   a   rC   r   r   ),collectionsr   collections.abcr   typingr   r   typing_extensionsr   torch.return_typestorchtorch.utils._pytreer   r	   r
   listFlattenFnSpecboolFlattenFnExactMatchSpecFlattenFuncSpecFlattenFuncExactMatchSpecr   dictr    __annotations__r   r   r   r   r   r   r#   r0   r7   tupler;   r=   rB   rE   rG   rI   return_typesall_return_typesreturn_type r   r   <module>r^      s   " $  (  > > &(+T#Y67"FH#5t#;<   3 24d3i./ 4OQ T$s)-Dt-K"KL QT]T]T] CGC	cC"C "94!?C 
	C)	c)	)
 
#Y8($r2v, (h (48 (4$r( 4( 4tBx 445S> 4 4d2h 44
 4( 4tCy 4'd2r6l '( 't ''d2h 'h '4 ''uRW~ 'X '$ ''J 'h '4 ' T#57U V T#57U V 	#
 %%66K ' 7 (r   