+
    QV-j³4  ã                   óX  € ^ RI t ^ RIt^ RIHt ^ RIt^ RIHtHt ^RIHt ^RI	H
t
 ^RIHt ]
P                  ! ]4      t]! R4       ! R R	]P                   4      4       t]t]! R
4       ! R R]P                   4      4       t]! R4       ! R R]P                   4      4       t]! R4       ! R R]P                   4      4       t]! R4       ! R R]P                   4      4       t]! R4       ! R R]P                   4      4       t ! R R]P                   4      t ! R R]P                   4      t ! R R]P                   4      t ! R R ]P                   4      t ! R! R"]P                   4      t ! R# R$]P                   4      t ! R% R&]P                   4      t ! R' R(]4      t ! R) R*]P                   4      t / R+]bR,]R-RIR.^
/3bR/]bR0]bR1]R2R3/3bR4]bR5]R6R3/3bR7]bR8]PB                  bR9]bR:]PD                  bR;]bR<]bR=]bR>]PF                  bR?]bR@]PH                  bRA]PJ                  RB]RC]RD]PL                  RE]PN                  RF]PP                  RG] /Ct)]! ])4      t*RH t+]+! R14      t,]+! R04      t-]+! R+4      t.]+! R/4      t/]+! R44      t0]+! R=4      t1]+! RB4      t2]+! R<4      t3]+! R;4      t4R# )Jé    N)ÚOrderedDict)ÚTensorÚnn)Úuse_kernel_forward_from_hub)Úlogging)Úis_torchdynamo_compilingÚGeluTanhc                   ój   a a€ ] tR t^t oRtR	V3R lV 3R llltV3R lR ltV3R lR ltRtVt	V ;t
# )
ÚGELUTanha  
A fast C implementation of the tanh approximation of the GeLU activation function. See
https://huggingface.co/papers/1606.08415.

This implementation is equivalent to NewGELU and FastGELU but much faster. However, it is not an exact numerical
match due to rounding errors.
c                ó    <€ V ^8„  d   QhRS[ /# )é   Úuse_gelu_tanh_python©Úbool)ÚformatÚ__classdict__s   "€Úi/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/transformers/activations.pyÚ__annotate__ÚGELUTanh.__annotate__(   s   ø€ ÷ Qñ Q©Tñ Qó    c                óÄ   <€ \         SV `  4        V'       d   V P                  V n        R# \        P
                  ! \        P                  P                  R R7      V n        R# )Útanh)ÚapproximateN)	ÚsuperÚ__init__Ú_gelu_tanh_pythonÚactÚ	functoolsÚpartialr   Ú
functionalÚgelu)Úselfr   Ú	__class__s   &&€r   r   ÚGELUTanh.__init__(   s<   ø€ Ü‰ÑÔßØ×-Ñ-ˆDŽHä ×(Ò(¬¯©×);Ñ);ÈÔPˆDŽHr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©r   ÚinputÚreturn©r   )r   r   s   "€r   r   r   /   s   ø€ ÷ wñ w¡vð w±&ñ wr   c                óþ   € VR ,          R\         P                  ! \        P                  ! R\        P                  ,          4      VR\         P
                  ! VR4      ,          ,           ,          4      ,           ,          # ©ç      à?ç      ð?ç       @ç÷Hmâä¦?g      @©Útorchr   ÚmathÚsqrtÚpiÚpow©r"   r'   s   &&r   r   ÚGELUTanh._gelu_tanh_python/   sP   € Ø�s�{˜c¤E§J¢J¬t¯yªy¸¼t¿w¹w½Ó/GÈ5ÐS[Ô^c×^gÒ^gÐhmÐorÓ^sÕSsÕKsÕ/tÓ$uÕuÕvÐvr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   r   2   ó   ø€ ÷ ñ ™Vð ©ñ r   c                ó$   € V P                  V4      # ©N©r   r6   s   &&r   ÚforwardÚGELUTanh.forward2   ó   € Ø�x‰x˜‹Ðr   r<   ©F)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r=   Ú__static_attributes__Ú__classdictcell__Ú__classcell__©r#   r   s   @@r   r   r      s1   ù‡ € ñ÷Qõ Q÷wð w÷÷ ð r   r   ÚNewGELUc                   ó6   a € ] tR t^:t o RtV 3R lR ltRtV tR# )ÚNewGELUActivationzÂ
Implementation of the GELU activation function currently in Google BERT repo (identical to OpenAI GPT). Also see
the Gaussian Error Linear Units paper: https://huggingface.co/papers/1606.08415
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   ÚNewGELUActivation.__annotate__A   s   ø€ ÷ wñ w™Vð w©ñ wr   c                óþ   € R V,          R\         P                  ! \        P                  ! R\        P                  ,          4      VR\         P
                  ! VR4      ,          ,           ,          4      ,           ,          # r+   r0   r6   s   &&r   r=   ÚNewGELUActivation.forwardA   sP   € Ø�U�{˜c¤E§J¢J¬t¯yªy¸¼t¿w¹w½Ó/GÈ5ÐS[Ô^c×^gÒ^gÐhmÐorÓ^sÕSsÕKsÕ/tÓ$uÕuÕvÐvr   © N©rA   rB   rC   rD   rE   r=   rF   rG   ©r   s   @r   rL   rL   :   s   ø‡ € ñ÷
wö wr   rL   ÚGeLUc                   ój   a a€ ] tR t^Et oRtR	V3R lV 3R llltV3R lR ltV3R lR ltRtVt	V ;t
# )
ÚGELUActivationaŸ  
Original Implementation of the GELU activation function in Google BERT repo when initially created. For
information: OpenAI GPT's GELU is slightly different (and gives slightly different results): 0.5 * x * (1 +
torch.tanh(math.sqrt(2 / math.pi) * (x + 0.044715 * torch.pow(x, 3)))) This is now written in C in nn.functional
Also see the Gaussian Error Linear Units paper: https://huggingface.co/papers/1606.08415
c                ó    <€ V ^8„  d   QhRS[ /# )r   Úuse_gelu_pythonr   )r   r   s   "€r   r   ÚGELUActivation.__annotate__N   s   ø€ ÷ *ñ *©ñ *r   c                ó˜   <€ \         SV `  4        V'       d   V P                  V n        R # \        P
                  P                  V n        R # r;   )r   r   Ú_gelu_pythonr   r   r    r!   )r"   rX   r#   s   &&€r   r   ÚGELUActivation.__init__N   s/   ø€ Ü‰ÑÔßØ×(Ñ(ˆDŽHä—}‘}×)Ñ)ˆDŽHr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   rY   U   s   ø€ ÷ Gñ G¡&ð G©Vñ Gr   c                óŽ   € VR ,          R\         P                  ! V\        P                  ! R4      ,          4      ,           ,          # )r,   r-   r.   )r1   Úerfr2   r3   r6   s   &&r   r[   ÚGELUActivation._gelu_pythonU   s,   € Ø�s�{˜c¤E§I¢I¨e´d·i²iÀ³nÕ.DÓ$EÕEÕFÐFr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   rY   X   r9   r   c                ó$   € V P                  V4      # r;   r<   r6   s   &&r   r=   ÚGELUActivation.forwardX   r?   r   r<   r@   )rA   rB   rC   rD   rE   r   r[   r=   rF   rG   rH   rI   s   @@r   rV   rV   E   s/   ù‡ € ñ÷*õ *÷Gð G÷÷ ð r   rV   ÚSiLUc                   ó6   a € ] tR t^\t o RtV 3R lR ltRtV tR# )ÚSiLUActivationaÐ  
See Gaussian Error Linear Units (Hendrycks et al., https://arxiv.org/abs/1606.08415) where the SiLU (Sigmoid Linear
Unit) was originally introduced and coined, and see Sigmoid-Weighted Linear Units for Neural Network Function
Approximation in Reinforcement Learning (Elfwing et al., https://arxiv.org/abs/1702.03118) and Swish: a Self-Gated
Activation Function (Ramachandran et al., https://arxiv.org/abs/1710.05941v1) where the SiLU was experimented with
later.
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   ÚSiLUActivation.__annotate__f   s   ø€ ÷ )ñ )™Vð )©ñ )r   c                ó@   € \         P                  P                  V4      # r;   )r   r    Úsilur6   s   &&r   r=   ÚSiLUActivation.forwardf   s   € Ü�}‰}×!Ñ! %Ó(Ð(r   rQ   NrR   rS   s   @r   rf   rf   \   s   ø‡ € ñ÷)ö )r   rf   ÚFastGELUc                   ó6   a € ] tR t^jt o RtV 3R lR ltRtV tR# )ÚFastGELUActivationzu
Applies GELU approximation that is slower than QuickGELU but more accurate. See: https://github.com/hendrycks/GELUs
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   ÚFastGELUActivation.__annotate__p   s   ø€ ÷ iñ i™Vð i©ñ ir   c                óž   € R V,          R\         P                  ! VR,          RRV,          V,          ,           ,          4      ,           ,          # )r,   r-   g€ÑÓ3Eˆé?r/   )r1   r   r6   s   &&r   r=   ÚFastGELUActivation.forwardp   s:   € Ø�U�{˜c¤E§J¢J¨u°|Õ/CÀsÈXÐX]ÕM]Ð`eÕMeÕGeÕ/fÓ$gÕgÕhÐhr   rQ   NrR   rS   s   @r   rn   rn   j   s   ø‡ € ñ÷iö ir   rn   Ú	QuickGELUc                   ó6   a € ] tR t^tt o RtV 3R lR ltRtV tR# )ÚQuickGELUActivationzj
Applies GELU approximation that is fast but somewhat inaccurate. See: https://github.com/hendrycks/GELUs
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   Ú QuickGELUActivation.__annotate__z   s   ø€ ÷ 4ñ 4™Vð 4©ñ 4r   c                óJ   € V\         P                  ! R V,          4      ,          # )g¬Zd;û?)r1   Úsigmoidr6   s   &&r   r=   ÚQuickGELUActivation.forwardz   s   € Ø”u—}’} U¨U¥]Ó3Õ3Ð3r   rQ   NrR   rS   s   @r   ru   ru   t   s   ø‡ € ñ÷4ö 4r   ru   c                   óT   a a€ ] tR t^~t oRtV3R lV 3R lltV3R lR ltRtVtV ;t	# )ÚClippedGELUActivationar  
Clip the range of possible GeLU outputs between [min, max]. This is especially useful for quantization purpose, as
it allows mapping negatives values in the GeLU spectrum. For more information on this trick, please refer to
https://huggingface.co/papers/2004.09602.

Gaussian Error Linear Unit. Original Implementation of the gelu activation function in Google Bert repo when
initially created.

For information: OpenAI GPT's gelu is slightly different (and gives slightly different results): 0.5 * x * (1 +
torch.tanh(math.sqrt(2 / math.pi) * (x + 0.044715 * torch.pow(x, 3)))). See https://huggingface.co/papers/1606.08415
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# )r   ÚminÚmax)Úfloat)r   r   s   "€r   r   Ú"ClippedGELUActivation.__annotate__‹   s   ø€ ÷ ñ ™Eð ©ñ r   c                ól   <€ W8”  d   \        R V RV R24      h\        SV `	  4        Wn        W n        R# )zmin should be < max (got min: z, max: Ú)N)Ú
ValueErrorr   r   r~   r   )r"   r~   r   r#   s   &&&€r   r   ÚClippedGELUActivation.__init__‹   s8   ø€ ØŒ9ÜÐ=¸c¸UÀ'È#ÈÈaÐPÓQÐQä‰ÑÔØŒØŽr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# ©r   Úxr(   r)   )r   r   s   "€r   r   r�   “   s   ø€ ÷ 7ñ 7™ð 7¡Fñ 7r   c                ól   € \         P                  ! \        V4      V P                  V P                  4      # r;   )r1   Úclipr!   r~   r   )r"   rˆ   s   &&r   r=   ÚClippedGELUActivation.forward“   s!   € Ü�zŠzœ$˜q›' 4§8¡8¨T¯X©XÓ6Ð6r   )r   r~   ©
rA   rB   rC   rD   rE   r   r=   rF   rG   rH   rI   s   @@r   r|   r|   ~   s#   ù‡ € ñ
÷ó ÷7÷ 7ð 7r   r|   c                   óH   a a€ ] tR t^—t oRtV 3R ltV3R lR ltRtVtV ;t	# )ÚAccurateGELUActivationzÉ
Applies GELU approximation that is faster than default and more accurate than QuickGELU. See:
https://github.com/hendrycks/GELUs

Implemented along with MEGA (Moving Average Equipped Gated Attention)
c                ó„   <€ \         SV `  4        \        P                  ! ^\        P                  ,          4      V n        R# )r   N)r   r   r2   r3   r4   Úprecomputed_constant©r"   r#   s   &€r   r   ÚAccurateGELUActivation.__init__Ÿ   s'   ø€ Ü‰ÑÔÜ$(§I¢I¨a´$·'±'­kÓ$:ˆÖ!r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   Ú#AccurateGELUActivation.__annotate__£   s   ø€ ÷ tñ t™Vð t©ñ tr   c                óÀ   € R V,          ^\         P                  ! V P                  VR\         P                  ! V^4      ,          ,           ,          4      ,           ,          # )r,   r/   )r1   r   r�   r5   r6   s   &&r   r=   ÚAccurateGELUActivation.forward£   sE   € Ø�U�{˜a¤%§*¢*¨T×-FÑ-FÈ%ÐRZÔ]b×]fÒ]fÐglÐnoÓ]pÕRpÕJpÕ-qÓ"rÕrÕsÐsr   )r�   rŒ   rI   s   @@r   rŽ   rŽ   —   s!   ù‡ € ñõ;÷t÷ tð tr   rŽ   c                   óZ   a a€ ] tR t^§t oRtV 3R ltV3R lR ltV3R lR ltRtVt	V ;t
# )ÚMishActivationzÍ
See Mish: A Self-Regularized Non-Monotonic Activation Function (Misra., https://huggingface.co/papers/1908.08681). Also
visit the official repository for the paper: https://github.com/digantamisra98/Mish
c                ób   <€ \         SV `  4        \        P                  P                  V n        R # r;   )r   r   r   r    Úmishr   r‘   s   &€r   r   ÚMishActivation.__init__­   s   ø€ Ü‰ÑÔÜ—=‘=×%Ñ%ˆŽr   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   ÚMishActivation.__annotate__±   s   ø€ ÷ Añ A¡&ð A©Vñ Ar   c                óv   € V\         P                  ! \        P                  P	                  V4      4      ,          # r;   )r1   r   r   r    Úsoftplusr6   s   &&r   Ú_mish_pythonÚMishActivation._mish_python±   s%   € Ø”u—z’z¤"§-¡-×"8Ñ"8¸Ó"?Ó@Õ@Ð@r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   r�   ´   r9   r   c                ó$   € V P                  V4      # r;   r<   r6   s   &&r   r=   ÚMishActivation.forward´   r?   r   r<   )rA   rB   rC   rD   rE   r   r    r=   rF   rG   rH   rI   s   @@r   r˜   r˜   §   s*   ù‡ € ñõ
&÷Að A÷÷ ð r   r˜   c                   ó6   a € ] tR t^¸t o RtV 3R lR ltRtV tR# )ÚLinearActivationzS
Applies the linear activation function, i.e. forwarding input directly to output.
c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   ÚLinearActivation.__annotate__½   s   ø€ ÷ ñ ™Vð ©ñ r   c                ó   € V# r;   rQ   r6   s   &&r   r=   ÚLinearActivation.forward½   s   € Øˆr   rQ   NrR   rS   s   @r   r¦   r¦   ¸   s   ø‡ € ñ÷ö r   r¦   c                   ó.   a € ] tR t^Át o RtRR ltRtV tR# )ÚLaplaceActivationzë
Applies elementwise activation based on Laplace function, introduced in MEGA as an attention activation. See
https://huggingface.co/papers/2209.10655

Inspired by squared relu, but with bounded range and gradient for better stability
c                ó®   € W,
          P                  V\        P                  ! R 4      ,          4      pRR\        P                  ! V4      ,           ,          # )r.   r,   r-   )Údivr2   r3   r1   r_   )r"   r'   ÚmuÚsigmas   &&&&r   r=   ÚLaplaceActivation.forwardÉ   s:   € Ø•× Ñ  ¬¯ª°3«Õ!7Ó8ˆØ�cœEŸIšI eÓ,Õ,Õ-Ð-r   rQ   N)g»¹øÛž æ?g ^×/ØÒ?rR   rS   s   @r   r¬   r¬   Á   s   ø‡ € ñ÷.ò .r   r¬   c                   ó*   a € ] tR t^Ît o RtR tRtV tR# )ÚReLUSquaredActivationzV
Applies the relu^2 activation introduced in https://huggingface.co/papers/2109.08668
c                óp   € \         P                  P                  V4      p\        P                  ! V4      pV# r;   )r   r    Úrelur1   Úsquare)r"   r'   Úrelu_appliedÚsquareds   &&  r   r=   ÚReLUSquaredActivation.forwardÓ   s)   € Ü—}‘}×)Ñ)¨%Ó0ˆÜ—,’,˜|Ó,ˆØˆr   rQ   NrR   rS   s   @r   r³   r³   Î   s   ø‡ € ñ÷ð r   r³   c                   ó*   a € ] tR t^Ùt o RtR tRtV tR# )ÚSqrtSoftplusActivationuF   sqrt(softplus(x)) â€” the router scoring function used by DeepSeek V4.c                ó\   € \         P                  P                  V4      P                  4       # r;   )r   r    rŸ   r3   r6   s   &&r   r=   ÚSqrtSoftplusActivation.forwardÜ   s    € Ü�}‰}×%Ñ% eÓ,×1Ñ1Ó3Ð3r   rQ   NrR   rS   s   @r   r»   r»   Ù   s   ø‡ € ÙP÷4ð 4r   r»   c                   ó2   a a€ ] tR t^àt oV 3R ltRtVtV ;t# )ÚClassInstantierc                ón   <€ \         SV `  V4      p\        V\        4      '       d   TMV/ 3w  r4V! R/ VB # )NrQ   )r   Ú__getitem__Ú
isinstanceÚtuple)r"   ÚkeyÚcontentÚclsÚkwargsr#   s   &&   €r   rÁ   ÚClassInstantier.__getitem__á   s7   ø€ Ü‘'Ñ% cÓ*ˆÜ!+¨G´U×!;Ò!;‘gÀ'È2À‰ˆÙ‰}�V‰}Ðr   rQ   )rA   rB   rC   rD   rÁ   rF   rG   rH   rI   s   @@r   r¿   r¿   à   s   ù‡ € ÷õ r   r¿   c                   ó�   a a€ ] tR t^çt oRtRRRR]P                  R3V 3R lltV3R lR ltV3R lR	 lt	V3R
 lR lt
RtVtV ;t# )ÚXIELUActivationzÞ
Applies the xIELU activation function introduced in https://arxiv.org/abs/2411.13010

If the user has installed the nickjbrowning/XIELU wheel, we import xIELU CUDA
Otherwise, we emit a single warning and use xIELU Python
gš™™™™™é?r,   Fc                ót  <€ \         SV `  4        \        P                  ! \        P
                  ! \        P                  ! \        P                  ! WR 7      4      4      P                  ^ 4      4      V n	        \        P                  ! \        P
                  ! \        P                  ! \        P                  ! W#,
          VR 7      4      4      P                  ^ 4      4      V n
        V P                  R\        P                  ! W5R 7      4       V P                  R\        P                  ! WER 7      4       W`n        \        V4      V n        \        V4      V n        RV n         ^ RIp\        P$                  P&                  P)                  4       V n        Rp ^ RIHp	 V	! V P.                  4      V n        VR,          p\4        P7                  V4       R#   \2         d)   p
TRT
 R2,          pT P.                  T n         Rp
?
LERp
?
ii ; i  \2         d%   p
\4        P7                  R	T
 R
24        Rp
?
R# Rp
?
ii ; i))ÚdtypeÚbetaÚepsNzUsing experimental xIELU CUDA.)Úallow_in_graphz& Enabled torch._dynamo for xIELU CUDA.z+ Could not enable torch._dynamo for xIELU (z*) - this may result in slower performance.z CUDA-fused xIELU not available (u   ) â€“ falling back to a Python version.
For CUDA xIELU (experimental), `pip install git+https://github.com/nickjbrowning/XIELU`)r   r   r   Ú	Parameterr1   ÚlogÚexpm1ÚtensorÚ	unsqueezeÚalpha_pÚalpha_nÚregister_bufferÚwith_vector_loadsr€   Ú_beta_scalarÚ_eps_scalarÚ_xielu_cuda_objÚ	xielu.opsÚclassesÚxieluÚXIELUÚtorch.compilerrÏ   Ú_xielu_cudaÚ_xielu_cuda_fnÚ	ExceptionÚloggerÚwarning_once)r"   Úalpha_p_initÚalpha_n_initrÍ   rÎ   rÌ   rØ   rÞ   ÚmsgrÏ   Úerrr#   s   &&&&&&&    €r   r   ÚXIELUActivation.__init__ï   s­  ø€ ô 	‰ÑÔÜ—|’|¤E§I¢I¬e¯kªk¼%¿,º,À|Ô:aÓ.bÓ$c×$mÑ$mÐnoÓ$pÓqˆŒÜ—|’|Ü�IŠI”e—k’k¤%§,¢,¨|Õ/BÈ%Ô"PÓQÓR×\Ñ\Ð]^Ó_ó
ˆŒð 	×Ñ˜V¤U§\¢\°$Ô%DÔEØ×Ñ˜U¤E§L¢L°Ô$BÔCØ!2Ôä! $›KˆÔÜ  ›:ˆÔà#ˆÔð	Ûä#(§=¡=×#6Ñ#6×#<Ñ#<Ó#>ˆDÔ Ø2ˆCð7Ý9á&4°T×5EÑ5EÓ&F�Ô#ØÐ?Õ?�ô ×Ñ Ö$øô ô 7ØÐDÀSÀEÐIsÐtÕt�Ø&*×&6Ñ&6�×#Ñ#ûð7ûô ô 	Ü×ÑØ2°3°%ð 8jð j÷ò ûð	úsB   Å!3H Æ&G Æ;H ÇHÇH Ç;H È HÈH ÈH7ÈH2È2H7c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r‡   r)   )r   r   s   "€r   r   ÚXIELUActivation.__annotate__  s   ø€ ÷ 
ñ 
™vð 
©&ñ 
r   c           
     óø  € \         P                  P                  V P                  4      pV P                  \         P                  P                  V P
                  4      ,           p\        P                  ! V^ 8„  W!,          V,          V P                  V,          ,           \        P                  ! \        P                  ! WP                  4      4      V,
          V,          V P                  V,          ,           4      # )r   )r   r    rŸ   rÕ   rÍ   rÖ   r1   ÚwhererÒ   r~   rÎ   )r"   rˆ   rÕ   rÖ   s   &&  r   Ú_xielu_pythonÚXIELUActivation._xielu_python  s™   € Ü—-‘-×(Ñ(¨¯©Ó6ˆØ—)‘)œbŸm™m×4Ñ4°T·\±\ÓBÕBˆÜ�{Š{Ø�‰EØ�K˜!�O˜dŸi™i¨!�mÕ+Ü�[Š[œŸš 1§h¡hÓ/Ó0°1Õ4¸Õ?À$Ç)Á)ÈaÅ-ÕOó
ð 	
r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r‡   r)   )r   r   s   "€r   r   rì   "  s   ø€ ÷ +ñ +™Vð +©ñ +r   c                ód  € VP                   pVP                  4       ^8  d   VP                  ^ 4      pK(  VP                  4       ^8”  d#   VP                  R^VP	                  R4      4      pW!P                   8w  d"   \
        P                  RVVP                   4       V P                  P                  VV P                  P                  VP                  4      V P                  P                  VP                  4      V P                  V P                  V P                  4      pVP                  V4      # )zDFirewall function to prevent torch.compile from seeing .item() callsz_Warning: xIELU input tensor expects 3 dimensions but got (shape: %s). Reshaping to (shape: %s).éÿÿÿÿ)ÚshapeÚdimrÔ   ÚviewÚsizerä   rå   rÛ   r=   rÕ   ÚtorÌ   rÖ   rÙ   rÚ   rØ   )r"   rˆ   Úoriginal_shapeÚresults   &&  r   rá   ÚXIELUActivation._xielu_cuda"  sà   € àŸ™ˆà�e‰e‹g˜ŒkØ—‘˜A“ŠAØ�5‰5‹7�QŒ;Ø—‘�r˜1˜aŸf™f R›jÓ)ˆAØŸW™WÔ$Ü×ÑØqØØ—‘ôð
 ×%Ñ%×-Ñ-ØØ�L‰L�O‰O˜AŸG™GÓ$Ø�L‰L�O‰O˜AŸG™GÓ$à×ÑØ×ÑØ×"Ñ"ó
ˆð �{‰{˜>Ó*Ð*r   c                ó&   <€ V ^8„  d   QhRS[ RS[ /# r&   r)   )r   r   s   "€r   r   rì   ;  s   ø€ ÷ )ñ )™Vð )©ñ )r   c                óÐ   € V P                   eI   VP                  '       d7   \        4       '       g   V P                  V4      # \        P                  R4       V P                  V4      # )Nz:torch._dynamo is compiling, using Python version of xIELU.)rÛ   Úis_cudar   râ   rä   rå   rï   r6   s   &&r   r=   ÚXIELUActivation.forward;  sP   € Ø×ÑÒ+°··°Ü+×-Ò-Ø×*Ñ*¨5Ó1Ð1ä×#Ñ#Ð$`ÔaØ×!Ñ! %Ó(Ð(r   )rÙ   rÚ   râ   rÛ   rÖ   rÕ   rØ   g�íµ ÷Æ°¾)rA   rB   rC   rD   rE   r1   Úbfloat16r   rï   rá   r=   rF   rG   rH   rI   s   @@r   rÊ   rÊ   ç   sK   ù‡ € ñð ØØØØ�n‰nØ÷(÷T
ð 
÷+ð +÷2)÷ )ð )r   rÊ   r!   Úgelu_10r~   r   Ú	gelu_fastÚgelu_newÚgelu_pythonrX   TÚgelu_pytorch_tanhÚgelu_python_tanhr   Úgelu_accurateÚ	hardswishÚlaplaceÚ
leaky_reluÚlinearrš   Ú
quick_gelurµ   Úrelu2Úrelu6ry   rj   ÚsqrtsoftplusÚswishr   ÚprelurÞ   c           	      óŠ   € V \         9   d   \         V ,          # \        R V  R\        \         P                  4       4       24      h)z	function z not found in ACT2FN mapping )ÚACT2FNÚKeyErrorÚlistÚkeys)Úactivation_strings   &r   Úget_activationr  a  sB   € ØœFÔ"ÜÐ'Õ(Ð(ä˜Ð#4Ð"5Ð5RÔSWÔX^×XcÑXcÓXeÓSfÐRgÐhÓiÐir   iöÿÿÿ)5r   r2   Úcollectionsr   r1   r   r   Úintegrations.hub_kernelsr   Úutilsr   Úutils.import_utilsr   Ú
get_loggerrA   rä   ÚModuler   ÚPytorchGELUTanhrL   rV   rf   rn   ru   r|   rŽ   r˜   r¦   r¬   r³   r»   r¿   rÊ   Ú	HardswishÚ	LeakyReLUÚReLUÚReLU6ÚSigmoidrd   ÚTanhÚPReLUÚACT2CLSr  r  r  r  r!   r  r  r  rj   rš   Ú
linear_actrQ   r   r   Ú<module>r)     s]  ðó Û Ý #ã ß å AÝ Ý 8ð 
×	Ò	˜HÓ	%€ñ ˜ZÓ(ôˆr�y‰yó ó )ðð0 €ñ ˜YÓ'ôw˜Ÿ	™	ó wó (ðwñ ˜VÓ$ô�R—Y‘Yó ó %ðñ, ˜VÓ$ô
)�R—Y‘Yó 
)ó %ð
)ñ ˜ZÓ(ôi˜Ÿ™ó ió )ðiñ ˜[Ó)ô4˜"Ÿ)™)ó 4ó *ð4ô7˜BŸI™Iô 7ô2t˜RŸY™Yô tô �R—Y‘Yô ô"�r—y‘yô ô
.˜Ÿ	™	ô 
.ô˜BŸI™Iô ô4˜RŸY™Yô 4ô�kô ôZ)�b—i‘iô Z)ðzØ
ˆNðàÐ%¨¨s°E¸2Ð'>Ð?ðð Ð#ðð Ð!ð	ð
 �NÐ%6¸Ð$=Ð>ðð ˜ðð ˜Ð$:¸DÐ#AÐBðð Ð+ðð �—‘ðð Ð ðð �"—,‘,ðð Ððð ˆNðð Ð%ðð ˆB�G‰Gðð  Ð"ð!ð" ˆR�X‰Xð#ð$ ˆr�z‰zØ
ˆNØÐ*ØˆR�W‰WØ
ˆB�G‰GØˆR�X‰XØˆ_ñ1€ñ4 
˜Ó	!€òjñ ˜]Ó+€Ù˜*Ó%€Ù�fÓ€Ù˜;Ó'€	Ù"Ð#6Ó7Ð Ù˜LÓ)€
Ù�fÓ€Ù�fÓ€Ù˜HÓ%‚
r   