Ë
    P/æjd  ã                   ó¸   — U d dl mZmZmZ d dlmZ  G d„ d«      Zi aeej                  ef   e	d<   dej                  deddfd	„Z
dej                  dee   fd
„Zy)é    )ÚcastÚDictÚOptionalNc                   ó   — e Zd Zy)Ú_StateN)Ú__name__Ú
__module__Ú__qualname__© ó    úf/root/repos/pocs/video-evals/.venv/lib/python3.12/site-packages/torch/distributed/_composable_state.pyr   r      s   „ Ør   r   Ú_module_state_mappingÚmoduleÚstateÚreturnc                 ó<   — | t         vsJ d| › d�«       ‚|t         | <   y )Nz
Inserting z more than once.)r   )r   r   s     r   Ú_insert_module_stater      s+   € àÔ.Ñ.ÐU°*¸V¸HÐDTÐ0UÓUÐ.Ø$)Ô˜&Ò!r   c                 óf   — t        | t        «      rt        t        | «      S | t        v r	t        |    S y)at  
    Return the ``_State`` in ``model``.

    Given a ``module``, this API finds out if the module is also a ``_State``
    instance or if the module is managed by a composable API. If the module
    is also a ``_State``, ``module`` will be casted to ``_State` and returned.
    If it is managed by a composable API, the corresponding ``_State`` will
    be returned.
    N)Ú
isinstancer   r   r   )r   s    r   Ú_get_module_stater      s4   € ô �&œ&Ô!Ü”F˜FÓ#Ð#ð Ô*Ñ*Ü(¨Ñ0Ð0àr   )Útypingr   r   r   Útorch.nnÚnnr   r   ÚModuleÚ__annotations__r   r   r   r   r   ú<module>r      sm   ðß 'Ò 'å ÷	ñ 	ð 24Ð �t˜BŸI™I vÐ-Ñ.Ó 3ð* §¡ð *°6ð *¸dó *ð˜bŸi™ið ¨H°VÑ,<ô r   