Ë
    øÿæi  ã                   ó^   — d dl mZ d dlmZ d dlZ G d„ de«      Zd dlmZ dZ G d„ d	«      Z	y)
é    )ÚEnum)ÚOptionalNc                   ó   — e Zd ZdZy)Ú
EffectTypeÚOrderedN)Ú__name__Ú
__module__Ú__qualname__ÚORDERED© ó    úk/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/torch/_library/effects.pyr   r      s   „ Ø�Gr   r   )ÚRegistrationHandle)z8__torch__.torch.classes.quantized.Conv2dPackedParamsBasez8__torch__.torch.classes.quantized.Conv3dPackedParamsBasez;__torch__.torch.classes.quantized.EmbeddingPackedParamsBasez8__torch__.torch.classes.quantized.LinearPackedParamsBasez/__torch__.torch.classes.xnnpack.Conv2dOpContextz/__torch__.torch.classes.xnnpack.LinearOpContextz8__torch__.torch.classes.xnnpack.TransposeConv2dOpContextc                   óz   — e Zd ZdZdefd„Zdd„Zedee	   fd„«       Z
e
j                  d„ «       Z
d	ee	   defd
„Zy)ÚEffectHolderz2A holder where one can register an effect impl to.Úqualnamec                 ó2   — || _         | j                  «        y ©N)r   Ú_set_default_effect)Úselfr   s     r   Ú__init__zEffectHolder.__init__   s   € Ø%ˆŒØ× Ñ Õ"r   ÚreturnNc                 ó€  — d | _         t        j                  j                  j	                  | j
                  «      \  }}|j                  d«      }t        |«      dkD  r#t        |«      dk7  rt        d|› d�«      ‚|\  }}nd}|dk(  ry |› d|› �}t        j                  j                  ||«      ��t        j                  j                  ||«      }|j                  D ]`  }t        |j                  t        j                  «      sŒ(|j                  j!                  «       }|t"        v rŒKt$        j&                  | _          y  y y )	NÚ.é   é   zTried to split z' based on '.' but found more than 1 '.'Ú Úhigher_orderz::)Ú_effectÚtorchÚ_libraryÚutilsÚparse_namespacer   ÚsplitÚlenÚAssertionErrorÚ_CÚ_get_operation_overloadÚ_get_schemaÚ	argumentsÚ
isinstanceÚtypeÚ	ClassTypeÚstrÚskip_classesr   r   )r   Ú	namespaceÚopnamer$   ÚoverloadÚschemaÚargÚtype_strs           r   r   z EffectHolder._set_default_effect"   s  € Ø-1ˆŒô "ŸN™N×0Ñ0×@Ñ@ÀÇÁÓOÑˆ	�6Ø—‘˜SÓ!ˆÜˆu‹:˜Š>Ü�5‹z˜QŠÜ$Ø% f XÐ-TÐUóð ð  %ÑˆF‘HàˆHà˜Ò&Øà�;˜b  Ð)ˆÜ�8‰8×+Ñ+¨F°HÓ=ÐIô —X‘X×)Ñ)¨&°(Ó;ˆFØ×'Ô'�Ü˜cŸh™h¬¯©Õ8Ø"Ÿx™xŸ|™|›~�HØ¤<Ñ/Ø Ü#-×#5Ñ#5�D”LÙñ (ð	 Jr   c                 ó   — | j                   S r   )r   ©r   s    r   ÚeffectzEffectHolder.effectA   s   € à�|‰|Ðr   c                 ó   — t        d«      ‚)NzUnable to directly set kernel.)ÚRuntimeError)r   Ú_s     r   r8   zEffectHolder.effectE   s   € äÐ;Ó<Ð<r   r8   c                 ó6   ‡ — |‰ _         ˆ fd„}t        |«      }|S )zvRegister an effect

        Returns a RegistrationHandle that one can use to de-register this
        effect.
        c                  ó&   •— ‰ j                  «        y r   )r   r7   s   €r   Úderegister_effectz0EffectHolder.register.<locals>.deregister_effectQ   s   ø€ Ø×$Ñ$Õ&r   )r   r   )r   r8   r>   Úhandles   `   r   ÚregisterzEffectHolder.registerI   s#   ø€ ð ˆŒô	'ô $Ð$5Ó6ˆØˆr   )r   N)r   r	   r
   Ú__doc__r.   r   r   Úpropertyr   r   r8   Úsetterr   r@   r   r   r   r   r      sg   „ Ù<ð# ó #óð> ð˜ Ñ,ò ó ðð ‡]�]ñ=ó ð=ð˜x¨
Ñ3ð Ð8Jô r   r   )
Úenumr   Útypingr   r    r   Útorch._library.utilsr   r/   r   r   r   r   Ú<module>rG      s0   ðÝ Ý ã ô�ô õ 4ð
€÷:ò :r   