Ë
      çi«  ã                   óŠ   — d dl mZ d dlmZmZ d dlZd dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d d	lmZmZ  G d
„ de«      Zy)é    )ÚAbstractContextManager)ÚAnyÚLiteralN)Úapply_to_collection)ÚTensor)ÚModule)Úoverride)Ú	Precision)Ú_convert_fp_tensorÚ_DtypeContextManagerc                   ó¶   — e Zd ZU dZdZed   ed<   ededefd„«       Z	ede
fd„«       Zede
fd„«       Zede
fd	„«       Zed
edefd„«       Zed
edefd„«       Zy)ÚDoublePrecisionz>Plugin for training with double (``torch.float64``) precision.z64-trueÚ	precisionÚmoduleÚreturnc                 ó"   — |j                  «       S ©N)Údouble)Úselfr   s     ú~/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/lightning_fabric/plugins/precision/double.pyÚconvert_modulezDoublePrecision.convert_module    s   € à�}‰}‹Ðó    c                 ó4   — t        t        j                  «      S r   )r   Útorchr   ©r   s    r   Útensor_init_contextz#DoublePrecision.tensor_init_context$   s   € ä#¤E§L¡LÓ1Ð1r   c                 ó"   — | j                  «       S r   ©r   r   s    r   Úmodule_init_contextz#DoublePrecision.module_init_context(   ó   € à×'Ñ'Ó)Ð)r   c                 ó"   — | j                  «       S r   r   r   s    r   Úforward_contextzDoublePrecision.forward_context,   r    r   Údatac                 óL   — t        |t        t        t        j                  ¬«      S ©N)ÚfunctionÚdtypeÚdst_type)r   r   r   r   r   ©r   r#   s     r   Úconvert_inputzDoublePrecision.convert_input0   s   € ä" 4Ô2DÌFÔ]b×]iÑ]iÔjÐjr   c                 óT   — t        |t        t        t        j                  «       ¬«      S r%   )r   r   r   r   Úget_default_dtyper)   s     r   Úconvert_outputzDoublePrecision.convert_output4   s   € ä" 4Ô2DÌFÔ]b×]tÑ]tÓ]vÔwÐwr   N)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   Ú__annotations__r	   r   r   r   r   r   r"   r   r*   r-   © r   r   r   r      sÔ   … ÙHà$-€Iˆw�yÑ!Ó-àð Vð °ò ó ðð ð2Ð%;ò 2ó ð2ð ð*Ð%;ò *ó ð*ð ð*Ð!7ò *ó ð*ð ðk #ð k¨#ò kó ðkð ðx 3ð x¨3ò xó ñxr   r   )Ú
contextlibr   Útypingr   r   r   Ú#lightning_utilities.core.apply_funcr   r   Útorch.nnr   Útyping_extensionsr	   Ú,lightning_fabric.plugins.precision.precisionr
   Ú(lightning_fabric.plugins.precision.utilsr   r   r   r3   r   r   Ú<module>r;      s0   ðõ .ß ã Ý CÝ Ý Ý &å Bß ]ôx�iõ xr   