Ë
    P/æj®  ã            	       ó|  — U d dl mZ d dlmZmZmZmZmZmZm	Z	m
Z
 d dlZd dlmZmZ eeegef   Zeeegef   Zi Zee
e   ef   ed<   i Zee
e   ee   f   ed<   	 dde
e   ded	ee   d
dfd„Z	 ddeded
ee   fd„Zdeeef   ded
ee   fd„Zdee   ded
ee   fd„Zde	e   ded
ee   fd„Zdeded
ee   fd„Zdeeef   ded
efd„Zdee   ded
efd„Zde	e   ded
efd„Zdeded
efd„Z ee ee«        ee!ee«        ee"ee«       ejF                  jH                  D ]  Z% ee%ee«       Œ  eeee«       y)é    )Ú
namedtuple)ÚAnyÚCallableÚDictÚListÚ
NamedTupleÚOptionalÚTupleÚTypeN)ÚPyTreeÚTreeSpecÚSUPPORTED_NODESÚSUPPORTED_NODES_EXACT_MATCHÚclsÚflatten_fn_specÚflatten_fn_exact_match_specÚreturnc                 ó(   — |t         | <   |t        | <   y ©N)r   r   )r   r   r   s      úS/root/repos/pocs/video-evals/.venv/lib/python3.12/site-packages/torch/fx/_pytree.pyÚregister_pytree_flatten_specr      s   € ð
 +„O�CÑØ'BÔ Ò$ó    ÚpytreeÚspecc                 ó|  — |j                  «       r| gS |j                  t        vrt        t        | «      › d�«      ‚t        |j                     } || |«      }|r/t        |j                     }|r || |«      st        d| › d|› �«      ‚g }t        ||j                  «      D ]  \  }}t        |||«      }	||	z  }Œ |S )Nzê does not have a flatten_fn_spec associated with it. Please register one with torch.fx._pytree.register_pytree_flatten_spec.  If you have serialized your model, make sure that any custom pytrees have been registered before loading it.zCannot flatten pytree z, given spec: )Úis_leafÚtyper   ÚRuntimeErrorr   ÚzipÚchildren_specsÚtree_flatten_spec)
r   r   Úexact_structural_matchr   Úchild_pytreesr   ÚresultÚchildÚ
child_specÚflats
             r   r!   r!      sá   € ð
 ‡|�|„~ØˆxˆØ‡y�yœÑ'ÜÜ�F‹|ˆnð Sð Só
ð 	
ô
 & d§i¡iÑ0€OÙ# F¨DÓ1€MÙÜ&AÀ$Ç)Á)Ñ&LÐ#Ù&Ñ/JØØô0
ô Ð!7¸°x¸~ÈdÈVÐTÓUÐUØ€FÜ  °×0CÑ0CÓDò ÑˆˆzÜ  ¨
Ð4JÓKˆØ�$‰‰ðð €Mr   Údc                 óF   — |j                   D �cg c]  }| |   ‘Œ	 c}S c c}w r   )Úcontext)r(   r   Úks      r   Ú_dict_flatten_specr,   6   s   € ØŸ,™,Ö'�QˆAˆa‹DÒ'Ð'ùÒ's   �c                 óX   — t        |j                  «      D �cg c]  }| |   ‘Œ	 c}S c c}w r   ©ÚrangeÚnum_children©r(   r   Úis      r   Ú_list_flatten_specr3   :   ó%   € Ü × 1Ñ 1Ó2Ö3�QˆAˆa‹DÒ3Ð3ùÒ3ó   ˜'c                 óX   — t        |j                  «      D �cg c]  }| |   ‘Œ	 c}S c c}w r   r.   r1   s      r   Ú_tuple_flatten_specr7   >   r4   r5   c                 óX   — t        |j                  «      D �cg c]  }| |   ‘Œ	 c}S c c}w r   r.   r1   s      r   Ú_namedtuple_flatten_specr9   B   r4   r5   c                 ó2   — t        | «      |j                  k(  S r   ©Úlenr0   ©r(   r   s     r   Ú_dict_flatten_spec_exact_matchr>   F   ó   € Üˆq‹6�T×&Ñ&Ñ&Ð&r   c                 ó2   — t        | «      |j                  k(  S r   r;   r=   s     r   Ú_list_flatten_spec_exact_matchrA   J   r?   r   c                 ó2   — t        | «      |j                  k(  S r   r;   r=   s     r   Ú_tuple_flatten_spec_exact_matchrC   N   r?   r   c                 ó2   — t        | «      |j                  k(  S r   r;   r=   s     r   Ú$_namedtuple_flatten_spec_exact_matchrE   R   r?   r   r   )F)&Úcollectionsr   Útypingr   r   r   r   r   r	   r
   r   Útorch.return_typesÚtorchÚtorch.utils._pytreer   r   ÚFlattenFuncSpecÚboolÚFlattenFuncExactMatchSpecr   Ú__annotations__r   r   r!   r,   r3   r7   r9   r>   rA   rC   rE   ÚdictÚlistÚtupleÚreturn_typesÚall_return_typesÚreturn_type© r   r   ú<module>rV      sP  ðæ "ß O× OÓ Oã ß 0ð ˜F HÐ-¨tÐ3Ñ4€Ø$ f¨hÐ%7¸Ð%=Ñ>Ð à46€��d˜3‘i Ð0Ñ1Ó 6ØTVÐ ˜T $ s¡)¨XÐ6OÑ-PÐ"PÑQÓ Vð HLñCØ	ˆc‰ðCà$ðCð "*Ð*CÑ!DðCð 
ó	Cð !ñØðà
ðð 
ˆ#�Yó	ð:(˜$˜s C˜x™.ð (°ð (¸TÀ#¹Yó (ð4˜$˜s™)ð 4¨8ð 4¸¸S¹	ó 4ð4˜5 ™:ð 4¨Xð 4¸$¸s¹)ó 4ð4 
ð 4°(ð 4¸tÀC¹yó 4ð' d¨3°¨8¡nð '¸Hð 'Èó 'ð' d¨3¡ið '°xð 'ÀDó 'ð' u¨S¡zð '¸ð 'Àdó 'ð'¨Jð '¸hð 'È4ó 'ñ ˜TÐ#5Ð7UÔ VÙ ˜TÐ#5Ð7UÔ VÙ Ø	ØØ#ôð
 ×%Ñ%×6Ñ6ò €KÙ ØØØ'õðñ ØØØ(õr   