Ë
    P/æj«  ã                   óÔ  — d dl mZmZmZmZmZ d dlmZmZm	Z	m
Z
mZmZmZmZ ddlmZ ddgZdZd„ Zd	„ Z eed
«      Zd„ e_        d„ e_          ed¬«      e«        eed«      Zd„ e_        d„ e_          ed¬«      e«       deeef   deee   ef   fd„Zdee   dedeeef   fd„Zdee   deee   ef   fd„Zdee   dedee   fd„Z eeeede¬«        eeeede¬«       y)é    )ÚAnyÚDictÚIterableÚListÚTuple)Ú_dict_flattenÚ_dict_flatten_with_keysÚ_dict_unflattenÚ_list_flattenÚ_list_flatten_with_keysÚ_list_unflattenÚContextÚregister_pytree_nodeé   )ÚcompatibilityÚimmutable_listÚimmutable_dictzÒIf you are attempting to modify the kwargs or args of a torch.fx.Node object,
instead create a new copy of it and assign the copy to the node:
    new_args = ... # copy and mutate args
    node.args = new_args
c                 óR   — t        dt        | «      j                  › dt        › �«      ‚)Nú'z$' object does not support mutation. )ÚNotImplementedErrorÚtypeÚ__name__Ú_help_mutation)ÚselfÚargsÚkwargss      úa/root/repos/pocs/video-evals/.venv/lib/python3.12/site-packages/torch/fx/immutable_collections.pyÚ_no_mutationr      s,   € Ü
Ø
ŒD�‹J×ÑÐ Ð DÄ^ÐDTÐUóð ó    c                 ól   — t        d| j                  z   | fi «      }|D ]  }t        ||t        «       Œ |S )NÚ
immutable_)r   r   Úsetattrr   )ÚbaseÚmutable_functionsÚ	containerÚattrs       r   Ú_create_immutable_containerr'   "   s<   € Ü�\ D§M¡MÑ1°D°7¸BÓ?€IØ!ò /ˆÜ�	˜4¤Õ.ð/àÐr   )Ú__delitem__Ú__iadd__Ú__imul__Ú__setitem__ÚappendÚclearÚextendÚinsertÚpopÚremoveÚreverseÚsortc                 ó8   — t         t        t        | «      «      ffS ©N)r   ÚtupleÚiter©r   s    r   ú<lambda>r9   :   s   € ¬.¼5ÄÀdÃÓ;LÐ:NÐ)O€ r   c                 ó*   — t        t        | «      «      S r5   )Úhashr6   r8   s    r   r9   r9   ;   s   € ¤t¬E°$«KÓ'8€ r   T)Úis_backward_compatible)r(   Ú__ior__r+   r-   r0   ÚpopitemÚ
setdefaultÚupdatec                 óB   — t         t        | j                  «       «      ffS r5   )r   r7   Úitemsr8   s    r   r9   r9   L   s   € ¬.¼4ÀÇ
Á
ÃÓ;MÐ:OÐ)P€ r   c                 óF   — t        t        | j                  «       «      «      S r5   )r;   r6   rB   r8   s    r   r9   r9   M   s   € ¤t¬E°$·*±*³,Ó,?Ó'@€ r   ÚdÚreturnc                 ó   — t        | «      S r5   )r   ©rD   s    r   Ú_immutable_dict_flattenrH   R   ó   € Ü˜ÓÐr   ÚvaluesÚcontextc                 ó,   — t        t        | |«      «      S r5   )r   r
   ©rJ   rK   s     r   Ú_immutable_dict_unflattenrN   V   ó   € ô œ/¨&°'Ó:Ó;Ð;r   c                 ó   — t        | «      S r5   )r   rG   s    r   Ú_immutable_list_flattenrQ   ]   rI   r   c                 ó,   — t        t        | |«      «      S r5   )r   r   rM   s     r   Ú_immutable_list_unflattenrS   a   rO   r   z-torch.fx.immutable_collections.immutable_dict)Úserialized_type_nameÚflatten_with_keys_fnz-torch.fx.immutable_collections.immutable_listN)Útypingr   r   r   r   r   Útorch.utils._pytreer   r	   r
   r   r   r   r   r   Ú_compatibilityr   Ú__all__r   r   r'   Úlistr   Ú
__reduce__Ú__hash__Údictr   rH   rN   rQ   rS   © r   r   ú<module>r_      sy  ðç 3Õ 3÷	÷ 	ó 	õ *ð Ð-Ð
.€ð€òòñ -Øðó€ñ" P€Ô Ù8€Ô à *� TÔ *¨>Ô :á,Øð	ó€ñ Q€Ô Ù@€Ô Ø *� TÔ *¨>Ô :ð˜t C¨ H™~ð °%¸¸S¹	À7Ð8JÑ2Kó ð<Ø�S‰Mð<àð<ð 
ˆ#ˆsˆ(�^ó<ð˜t C™yð ¨U°4¸±9¸gÐ3EÑ-Fó ð<Ø�S‰Mð<àð<ð 
ˆ#�Yó<ñ ØØØØHØ0õñ ØØØØHØ0ör   