+
    ˜°³j6a  ã                   ó  € R t ^ RIHt ^ RIt^ RIHt ^RIHtHtHtH	t	H
t
HtHtHtHtHtHtHtHtHtHt RR.t ! R R]4      tRR	] R
]
 R] R] R] R2,           ]n         R R ltR R lt]	! ]R7      RR R ll4       tR# )z'Implementation for the RAdam algorithm.)ÚcastN)ÚTensor)Ú_capturable_docÚ_default_to_fused_or_foreachÚ_differentiable_docÚ_disable_dynamo_if_unsupportedÚ_foreach_docÚ!_get_capturable_supported_devicesÚ_get_scalar_dtypeÚ
_get_valueÚ_maximize_docÚ_params_docÚ
_to_scalarÚ_use_grad_for_differentiableÚ_view_as_realÚ	OptimizerÚParamsTÚRAdamÚradamc            	       ó|   a a€ ] tR t^t oRRRRRRRRR/V3R lV 3R lllltV 3R	 ltR
 t]RR l4       tRt	Vt
V ;t# )r   FÚforeachNÚmaximizeÚ
capturableÚdifferentiablec                óŽ   <€ V ^8„  d   QhRS[ RS[S[,          RS[S[S[3,          RS[RS[RS[RS[R,          R	S[R
S[RS[RR/# )é   ÚparamsÚlrÚbetasÚepsÚweight_decayÚdecoupled_weight_decayr   Nr   r   r   Úreturn)r   Úfloatr   ÚtupleÚbool)ÚformatÚ__classdict__s   "€ÚR/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/optim/radam.pyÚ__annotate__ÚRAdam.__annotate__    sŠ   ø€ ÷ &+ñ &+áð&+ñ ‘F�Nð&+ñ ‘U™E�\Õ"ð	&+ñ
 ð&+ñ ð&+ñ !%ð&+ñ ˜•ð&+ñ ð&+ñ ð&+ñ ð&+ð 
ñ&+ó    c               óì  <€ \        V\        4      '       d!   VP                  4       ^8w  d   \        R4      hRV8:  g   \        RV 24      hRV8:  g   \        RV 24      hRV^ ,          u;8:  d   R8  g   M \        RV^ ,           24      hRV^,          u;8:  d   R8  g   M \        RV^,           24      hRV8:  g   \        RV 24      hR	VR
VRVRVRVRVRV	RVRV
/	p\        SV `  W4       R# )é   zTensor lr must be 1-elementç        zInvalid learning rate: zInvalid epsilon value: ç      ð?z#Invalid beta parameter at index 0: z#Invalid beta parameter at index 1: zInvalid weight_decay value: r   r   r   r    r   r   r   r!   r   N)Ú
isinstancer   ÚnumelÚ
ValueErrorÚsuperÚ__init__)Úselfr   r   r   r   r    r!   r   r   r   r   ÚdefaultsÚ	__class__s   &&&&&&&$$$$ €r(   r4   ÚRAdam.__init__    s  ø€ ô �bœ&×!Ò! b§h¡h£j°A¤oÜÐ:Ó;Ð;Ø�bŒyÜÐ6°r°dÐ;Ó<Ð<Ø�cŒzÜÐ6°s°eÐ<Ó=Ð=Ø�e˜A•hÖ$ Ö$ÜÐBÀ5ÈÅ8À*ÐMÓNÐNØ�e˜A•hÖ$ Ö$ÜÐBÀ5ÈÅ8À*ÐMÓNÐNØ�lÔ"ÜÐ;¸L¸>ÐJÓKÐKð �"Ø�UØ�3Ø˜LØ˜Ø�wØ˜*Ø$Ð&<Ø˜nð

ˆô 	‰Ñ˜Ö*r+   c                ó¨  <€ \         SV `  V4       V P                   EF0  pVP                  R R4       VP                  RR4       VP                  RR4       VP                  RR4       VP                  RR4       VR,           FÅ  pV P                  P                  V. 4      p\        V4      ^ 8w  g   K1  \        P                  ! VR,          4      '       d   KV  \        VR,          4      pVR,          '       d,   \        P                  ! V\        4       VP                  R	7      M\        P                  ! V\        4       R
7      VR&   KÇ  	  EK3  	  R# )r   Nr   Fr   r!   r   r   Ústep©ÚdtypeÚdevice©r<   )r3   Ú__setstate__Úparam_groupsÚ
setdefaultÚstateÚgetÚlenÚtorchÚ	is_tensorr#   Útensorr
   r=   )r5   rB   ÚgroupÚpÚp_stateÚstep_valr7   s   &&    €r(   r?   ÚRAdam.__setstate__H   s	  ø€ Ü‰Ñ˜UÔ#Ø×&Õ&ˆEØ×Ñ˜Y¨Ô-Ø×Ñ˜Z¨Ô/Ø×ÑÐ-¨uÔ5Ø×ÑÐ5°uÔ=Ø×Ñ˜\¨5Ô1Ø˜8—_�_�ØŸ*™*Ÿ.™.¨¨BÓ/�Ü�w“< 1Ö$¬U¯_ª_¸WÀV½_×-MÔ-MÜ$ W¨V¥_Ó5�Hð
 ! ×.Ô.ô ŸšØ$Ô,=Ó,?ÈÏÉõô #Ÿ\š\¨(Ô:KÓ:MÔNð ˜F“Oô	 %ó 'r+   c                ób  € R pVR,           EFž  pVP                   f   K  V\        P                  ! V4      ,          pVP                  V4       VP                   P                  '       d   \        R4      hVP                  VP                   4       V P                  V,          p	\        V	4      ^ 8X  d°   VR,          '       d,   \        P                  ! R\        4       VP                  R7      M\        P                  ! R\        4       R7      V	R&   \        P                  ! V\        P                  R7      V	R	&   \        P                  ! V\        P                  R7      V	R
&   VP                  V	R	,          4       VP                  V	R
,          4       VP                  V	R,          4       EK¡  	  V# )Fr   z'RAdam does not support sparse gradientsr   r;   r.   r>   r:   )Úmemory_formatÚexp_avgÚ
exp_avg_sq© )ÚgradrE   Ú
is_complexÚappendÚ	is_sparseÚRuntimeErrorrB   rD   Úzerosr
   r=   rG   Ú
zeros_likeÚpreserve_format)
r5   rH   Úparams_with_gradÚgradsÚexp_avgsÚexp_avg_sqsÚstate_stepsÚhas_complexrI   rB   s
   &&&&&&&   r(   Ú_init_groupÚRAdam._init_group\   sP  € ð ˆØ�x—‘ˆAØ�v‰vÔ!Øœu×/Ò/°Ó2Õ2�Ø ×'Ñ'¨Ô*Ø—6‘6×#×#Ð#Ü&Ð'PÓQÐQØ—‘˜QŸV™VÔ$àŸ
™
 1��ä�u“: ”?ð ! ×.Ô.ô Ÿš BÔ.?Ó.AÈ!Ï(É(ÕSä"Ÿ\š\¨#Ô5FÓ5HÔIð ˜&‘Mô (-×'7Ò'7Ø¬×)>Ñ)>ô(�E˜)Ñ$ô +0×*:Ò*:Ø¬×)>Ñ)>ô+�E˜,Ñ'ð —‘  iÕ 0Ô1Ø×"Ñ" 5¨Õ#6Ô7Ø×"Ñ" 5¨¥=×1ñ7 !ð: Ðr+   c                ó  € V P                  4        RpVe.   \        P                  ! 4       ;_uu_ 4        V! 4       pRRR4       V P                   F�  p. p. p. p. p. p\	        \
        \        \        3,          VR,          4      w  ršV P                  W4WVWx4      p\        VVVVVV	V
VR,          VR,          VR,          VR,          VR,          VR,          VR	,          VR
,          VR7       KŸ  	  V#   + '       g   i     L¿; i)z�Perform a single optimization step.

Args:
    closure (Callable, optional): A closure that reevaluates the model
        and returns the loss.
Nr   r   r    r   r   r   r   r   r!   )Úbeta1Úbeta2r   r    r   r   r   r   r   r!   r_   )	Ú'_accelerator_graph_capture_health_checkrE   Úenable_gradr@   r   r$   r#   r`   r   )r5   ÚclosureÚlossrH   rZ   r[   r\   r]   r^   rc   rd   r_   s   &&          r(   r:   Ú
RAdam.step   s  € ð 	×4Ñ4Ô6àˆØÒÜ×"Ò"×$Õ$Ù“y�÷ %ð ×&Ô&ˆEØ-/ÐØ"$ˆEØ%'ˆHØ(*ˆKØ(*ˆKÜ¤¤e¬U lÕ 3°U¸7µ^ÓD‰LˆEà×*Ñ*Ø¨¸+óˆKô Ø ØØØØØØØ˜•;Ø" >Õ2Ø˜%•LØ˜zÕ*Ø˜iÕ(Ø  Õ.Ø$Ð%5Õ6Ø',Ð-EÕ'FØ'÷!ñ 'ð> ˆ÷E %×$ús   ´C3Ã3D	rQ   )gü©ñÒMbP?)gÍÌÌÌÌÌì?g+‡ÙÎ÷ï?g:Œ0âŽyE>é    F©N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r4   r?   r`   r   r:   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)r7   r'   s   @@r(   r   r      s\   ù‡ € ñ&+ð  $ð&+ð ð&+ð !ð&+ð  %÷&+ö &+õPò(!ðF "ó-ó "÷-ð -r+   a  Implements RAdam algorithm.

    .. math::
       \begin{aligned}
            &\rule{110mm}{0.4pt}                                                                 \\
            &\textbf{input}      : \gamma \text{ (lr)}, \: \beta_1, \beta_2
                \text{ (betas)}, \: \theta_0 \text{ (params)}, \:f(\theta) \text{ (objective)}, \:
                \lambda \text{ (weight decay)}, \:\textit{maximize}                               \\
            &\hspace{13mm} \epsilon \text{ (epsilon)}, \textit{decoupled\_weight\_decay}         \\
            &\textbf{initialize} :  m_0 \leftarrow 0 \text{ ( first moment)},
                v_0 \leftarrow 0 \text{ ( second moment)},                                       \\
            &\hspace{18mm} \rho_{\infty} \leftarrow 2/(1-\beta_2) -1                      \\[-1.ex]
            &\rule{110mm}{0.4pt}  \\
            &\textbf{for} \: t=1 \: \textbf{to} \: \ldots \: \textbf{do}                         \\
            &\hspace{6mm}\textbf{if} \: \textit{maximize}:                                       \\
            &\hspace{12mm}g_t           \leftarrow   -\nabla_{\theta} f_t (\theta_{t-1})         \\
            &\hspace{6mm}\textbf{else}                                                           \\
            &\hspace{12mm}g_t           \leftarrow   \nabla_{\theta} f_t (\theta_{t-1})          \\
            &\hspace{6mm} \theta_t \leftarrow \theta_{t-1}                                       \\
            &\hspace{6mm} \textbf{if} \: \lambda \neq 0                                          \\
            &\hspace{12mm}\textbf{if} \: \textit{decoupled\_weight\_decay}                       \\
            &\hspace{18mm} \theta_t \leftarrow \theta_{t} - \gamma \lambda \theta_{t}            \\
            &\hspace{12mm}\textbf{else}                                                          \\
            &\hspace{18mm} g_t \leftarrow g_t + \lambda \theta_{t}                               \\
            &\hspace{6mm}m_t           \leftarrow   \beta_1 m_{t-1} + (1 - \beta_1) g_t          \\
            &\hspace{6mm}v_t           \leftarrow   \beta_2 v_{t-1} + (1-\beta_2) g^2_t          \\
            &\hspace{6mm}\widehat{m_t} \leftarrow   m_t/\big(1-\beta_1^t \big)                   \\
            &\hspace{6mm}\rho_t \leftarrow \rho_{\infty} -
                2 t \beta^t_2 /\big(1-\beta_2^t \big)                                    \\[0.1.ex]
            &\hspace{6mm}\textbf{if} \: \rho_t > 5                                               \\
            &\hspace{12mm} l_t \leftarrow \frac{\sqrt{ (1-\beta^t_2) }}{ \sqrt{v_t} +\epsilon  } \\
            &\hspace{12mm} r_t \leftarrow
      \sqrt{\frac{(\rho_t-4)(\rho_t-2)\rho_{\infty}}{(\rho_{\infty}-4)(\rho_{\infty}-2) \rho_t}} \\
            &\hspace{12mm}\theta_t \leftarrow \theta_t - \gamma \widehat{m_t} r_t l_t        \\
            &\hspace{6mm}\textbf{else}                                                           \\
            &\hspace{12mm}\theta_t \leftarrow \theta_t - \gamma \widehat{m_t}                \\
            &\rule{110mm}{0.4pt}                                                          \\[-1.ex]
            &\bf{return} \:  \theta_t                                                     \\[-1.ex]
            &\rule{110mm}{0.4pt}                                                          \\[-1.ex]
       \end{aligned}

    For further details regarding the algorithm we refer to `On the variance of the adaptive learning rate and beyond`_.

    This implementation provides an option to use either the original weight_decay implementation as in Adam
    (where the weight_decay is applied to the gradient) or the one from AdamW (where weight_decay is applied
    to the weight) through the decoupled_weight_decay option. When decoupled_weight_decay is set to False
    (default), it uses the original Adam style weight decay, otherwise, it uses the AdamW style which
    corresponds more closely to the `author's implementation`_ in the RAdam paper. Further information
    about decoupled weight decay can be found in `Decoupled Weight Decay Regularization`_.

    z
    Args:
        a¦  
        lr (float, Tensor, optional): learning rate (default: 1e-3)
        betas (Tuple[float, float], optional): coefficients used for computing
            running averages of gradient and its square (default: (0.9, 0.999))
        eps (float, optional): term added to the denominator to improve
            numerical stability (default: 1e-8)
        weight_decay (float, optional): weight decay (L2 penalty) (default: 0)
        decoupled_weight_decay (bool, optional): whether to decouple the weight
            decay as in AdamW to obtain RAdamW. If True, the algorithm does not
            accumulate weight decay in the momentum nor variance. (default: False)
        z	
        a  

    .. _On the variance of the adaptive learning rate and beyond:
        https://arxiv.org/abs/1908.03265
    .. _author's implementation:
        https://github.com/LiyuanLucasLiu/RAdam
    .. _Decoupled Weight Decay Regularization:
        https://arxiv.org/abs/1711.05101

    c                 ó>  € V ^8„  d   QhR\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\        R\        R\        R	\        R
\        R\        R\        R\        R\        R\        RR/# ©r   r   r[   r\   r]   r^   rc   rd   r   r    r   r!   r   r   r   r_   r"   N©Úlistr   r#   r%   )r&   s   "r(   r)   r)      sà   € ÷ fDñ fDÜ”�LðfDä”�<ðfDô ”6�lðfDô ”f•ð	fDô
 ”f•ðfDô ðfDô ðfDô 	ðfDô ðfDô 
ðfDô !ðfDô ðfDô ðfDô ðfDô  ð!fDð" 
ñ#fDr+   c       
         ó�  a	aaaaa€ \         P                  P                  4       '       g   \        V4      p\	        V 4       EF   w  ppV'       g	   W,          MW,          ) pW/,          pW?,          oWO,          p\         P
                  P                  4       '       gl   V'       dd   \        4       pVP                  P                  VP                  P                  8X  d   VP                  P                  V9   g   \        R V R24      h\         P                  ! V4      '       dY   \         P                  ! V4      p\         P                  ! V4      p\         P                  ! V4      p\         P                  ! S4      oV^,          pV'       d   TM
\        V4      pV^ 8w  d;   V
'       d    VP                  ^Wx,          ,
          4       MVP                  VVR7      pVP!                  V^V,
          4       SP                  V4      P#                  VV^V,
          R7       ^VV,          ,
          p^VV,          ,
          oVV,          p^^V,
          ,          ^,
          oS^V,          VV,          ,          S,          ,
          oVV3R lpVVV	V3R lpV'       dQ   \         P$                  ! SR8„  V! 4       V! 4       ,          R4      pVP'                  VV,          V,          R	R7       EKª  SR8”  d6   VP'                  VV,          V! 4       ,          V! 4       ,          R	R7       EKæ  VP'                  VV,          R	R7       EK  	  R# )
úIIf capturable=True, params and state_steps must be on supported devices: Ú.©Úalpha)Úvaluec                  ó”   <€ S^,
          S^,
          ,          S ,          S ^,
          S ^,
          ,          S,          ,          R,          # )é   ç      à?rQ   )Úrho_infÚrho_ts   €€r(   Ú_compute_rectÚ+_single_tensor_radam.<locals>._compute_rectE  sI   ø€ à˜•Ø˜1•9õàõð ˜a•K G¨a¥KÕ0°5Õ8õ:ð õð r+   c                  óš   <€ SP                  4       p S'       d   V P                  S4      p MV P                  S4      p SR ,          V ,          # )r   )ÚsqrtÚaddÚadd_)Úexp_avg_sq_sqrtÚbias_correction2r   r   rP   s    €€€€r(   Ú_compute_adaptive_lrÚ2_single_tensor_radam.<locals>._compute_adaptive_lrM  sB   ø€ Ø(Ÿo™oÓ/ˆOßØ"1×"5Ñ"5°cÓ":‘à"1×"6Ñ"6°sÓ";�à$ cÕ)¨_Õ<Ð<r+   ç      @r/   Ng      ð¿)rE   ÚjitÚis_scriptingr   Ú	enumerateÚcompilerÚis_compilingr	   r=   ÚtypeÚAssertionErrorrS   Úview_as_realr   Úmul_r†   Úlerp_Úaddcmul_Úwherer‡   )r   r[   r\   r]   r^   rc   rd   r   r    r   r!   r   r   r   r_   ÚiÚparamrR   rO   Ústep_tÚcapturable_supported_devicesr:   Úbias_correction1Úbias_corrected_exp_avgr‚   rŠ   Úupdater‰   rP   r€   r�   s   &&&&&$$$$d$d$$$            @@@@r(   Ú_single_tensor_radamr       sž  ý€ ô$ �9‰9×!Ñ!×#Ò#Ü˜‹^ˆä˜f×%‰ˆˆ5ß'ˆuŽx¨e­h¨YˆØ•+ˆØ •^ˆ
Ø•ˆô �~‰~×*Ñ*×,Ò,·Ü+LÓ+NÐ(à—‘×!Ñ! V§]¡]×%7Ñ%7Ô7Ø—L‘L×%Ñ%Ð)EÔEä$Ø_Ð`|Ð_}Ð}~Ðóð ô ×Ò˜E×"Ò"Ü×&Ò& uÓ-ˆEÜ×%Ò% dÓ+ˆDÜ×(Ò(¨Ó1ˆGÜ×+Ò+¨JÓ7ˆJð 	�!�ˆß#‰v¬°FÓ);ˆà˜1Ôß%Ø—
‘
˜1˜rÕ0Õ0Õ1à—x‘x ¨\�xÓ:�ð 	�‰�d˜A �IÔ&Ø�‰˜Ó×'Ñ'¨¨d¸!¸e½)Ð'ÔDà˜u d�{�?ÐØ˜u d�{�?Ðð ")Ð+;Õ!;Ðð �q˜5•y•/ AÕ%ˆà˜!˜d�( e¨T¥kÕ2Ð5EÕEÕEˆö	÷	=ð 	=÷ Ü—[’[Ø˜‘™]›_Ñ/CÓ/EÕEÀsóˆFð �J‰JÐ-°Õ2°VÕ;À4ˆJ×Hà�sŒ{Ø—
‘
Ø*Øõá*Ó,õ-ñ $“oõ&ð ð ÷ ð —
‘
Ð1°BÕ6¸d�
×Cóc &r+   c                 ó>  € V ^8„  d   QhR\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\        R\        R\        R	\        R
\        R\        R\        R\        R\        R\        RR/# rt   ru   )r&   s   "r(   r)   r)   i  sà   € ÷ JJñ JJÜ”�LðJJä”�<ðJJô ”6�lðJJô ”f•ð	JJô
 ”f•ðJJô ðJJô ðJJô 	ðJJô ðJJô 
ðJJô !ðJJô ðJJô ðJJô ðJJô  ð!JJð" 
ñ#JJr+   c       
         ój  a*€ \        V 4      ^ 8X  d   R# V'       d   \        R4      h\        P                  P	                  4       '       gz   V'       dr   \        RR7      o*\        ;QJ d*    V*3R l\        WRR7       4       F  '       d   K   RM	  RM! V*3R l\        WRR7       4       4      '       g   \        RS* R	24      h\        V4      p\        P                  ! WW#V.4      pVP                  4        EFŠ  w  w  pppppp\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        P                  P	                  4       '       gJ   V^ ,          P                  '       d1   \        P                   ! V\        P"                  ! R
RR7      R
R7       M\        P                   ! V^4       V'       d   \%        VVVV4       V'       d   \        P&                  ! V4      p^^V,
          ,          ^,
          pV'       dÑ   \        P(                  ! VV4      p\        P*                  ! V4       \        P                   ! V^4       \        P(                  ! VV4      p\        P,                  ! VV4       \        P,                  ! V^4       \        P.                  ! VV4       \        P*                  ! V4       \        P                   ! VV4       TpM]V Uu. uFQ  pV^\1        V4      ,          V\1        V4      ,          ,          ^V\1        V4      ,          ,
          ,          ,
          NKS  	  ppV^ 8w  di   V
'       d&   \        P,                  ! V^Wx,          ,
          4       M;V'       d   \        P                   ! VVVR7       M\        P2                  ! VVVR7      p\        P4                  ! VV^V,
          4       \        P,                  ! VV4       \        P6                  ! VVV^V,
          4       ?V'       Edb   \        P8                  ! V^4      p \        P8                  ! V^4      p!\        P,                  ! V V!4       ?!\        P,                  ! V V4       V^,
          V^,
          ,          p\        P:                  ! VV4      p"\        P.                  ! V V"4       ?"\        P<                  ! V 4       \        V VRR7       U#U$u. uF!  w  p#p$\        P>                  ! V$R8„  V#R4      NK#  	  p%p#p$? ?V% U%u. uF  p%\        P>                  ! V%^ 8„  RR
4      NK   	  p&p%\        P,                  ! V&V4       \        P(                  ! VV4      p\        P*                  ! V4       \        P                   ! V^4       \        P.                  ! V&V4       \        P*                  ! V&4       \        P(                  ! VV4      p\        P*                  ! V4       \        P                   ! V^4       \        P<                  ! V4       \        P,                  ! VV4       \        P,                  ! VX%4       ?%\        P*                  ! V4       \        P.                  ! VV4       ?EM9V U$u. uFT  p$V$^8”  dI   V$^,
          V$^,
          ,          V,          V^,
          V^,
          ,          V$,          ,          R,          M^ NKV  	  p%p$V% U%u. uF  p%V%^ 8”  d   ^ MR
NK  	  p'p%V Uu. uF  p^V\1        V4      ,          ,
          NK  	  pp\        V'VRR7       U%U(u. uF  w  p%p(VV%,          V(,          R,          NK  	  p&p%p(\        VX%VRR7       UU%U(u. uFC  w  pp%p(^V\1        V4      ,          ,
          R,          VV%,          V(,          ,          R,          NKE  	  pp%pp(\        P@                  ! V4      p)\        P                   ! V)V	4       \        P.                  ! V)V4       \        PB                  ! V)4       \        P                   ! V)V&4       \        P6                  ! VVV)4       EK�  	  R# u upi u up$p#i u up%i u up$i u up%i u upi u up(p%i u up(p%pi )rj   Nz#_foreach ops don't support autogradF)Úsupports_xlac              3   óÄ   <"  € T FU  w  rVP                   P                  VP                   P                  8H  ;'       d    VP                   P                  S9   x € KW  	  R # 5irk   )r=   r’   )Ú.0rI   r:   rœ   s   &  €r(   Ú	<genexpr>Ú&_multi_tensor_radam.<locals>.<genexpr>†  sT   øé € ð 
ñ A‘�ð �H‰H�M‰M˜TŸ[™[×-Ñ-Ñ-÷ >ð >Ø—‘—‘Ð!=Ñ=ô>ã@ùs
   ƒ:A ¾"A T)Ústrictrx   ry   r/   Úcpu)r=   rz   rŒ   r.   r   éÿÿÿÿ)"rD   r“   rE   r�   r‘   r	   ÚallÚzipr   r   Ú"_group_tensors_by_device_and_dtypeÚvaluesr   rv   r   Úis_cpuÚ_foreach_add_rG   r   Ú_foreach_negÚ_foreach_powÚ_foreach_neg_Ú_foreach_mul_Ú_foreach_div_r   Ú_foreach_addÚ_foreach_lerp_Ú_foreach_addcmul_Ú_foreach_subÚ_foreach_mulÚ_foreach_sqrt_r˜   Ú_foreach_sqrtÚ_foreach_reciprocal_)+r   r[   r\   r]   r^   rc   rd   r   r    r   r!   r   r   r   r_   Úgrouped_tensorsÚgrouped_params_Úgrouped_grads_Úgrouped_exp_avgs_Úgrouped_exp_avg_sqs_Úgrouped_state_steps_Ú_Úgrouped_paramsÚgrouped_gradsÚgrouped_exp_avgsÚgrouped_exp_avg_sqsÚgrouped_state_stepsr€   r�   r‰   Ú
rho_t_listr:   ÚnumÚsub2ÚdenomÚnr�   ÚrectÚunrect_step_sizeÚunrectifiedÚbcÚbufferrœ   s+   &&&&&$$$$$$$$$$                           @r(   Ú_multi_tensor_radamrÔ   i  s”  ø€ ô$ ˆ6ƒ{�aÔÙçÜÐBÓCÐCô �>‰>×&Ñ&×(Ò(¯ZÜ'HØô(
Ð$÷ ‹sô 
ô ˜v¸4Õ@ó
�s�sŠsô 
ô ˜v¸4Õ@ó
÷ 
ò 
ô
 !Ø[Ð\xÐ[yÐyzÐ{óð ô 
�B‹€Bä×BÒBØ	˜¨{Ð;ó€Oð ×"Ñ"×$ñ		ñ 	ØØØØØØÜœd¤6�l¨OÓ<ˆÜœT¤&�\¨>Ó:ˆÜ¤¤V¥Ð.?Ó@ÐÜ"¤4¬¥<Ð1EÓFÐÜ"¤4¬¥<Ð1EÓFÐô �~‰~×*Ñ*×,Ò,Ð1DÀQÕ1G×1N×1NÐ1NÜ×ÒØ#¤U§\¢\°#¸eÔ%DÈCöô ×ÒÐ 3°QÔ7çÜØ Ð/?ÐATô÷ Ü!×.Ò.¨}Ó=ˆMð �q˜5•y•/ AÕ%ˆ÷
 Ü$×1Ò1°%Ð9LÓMÐÜ×ÒÐ 0Ô1Ü×ÒÐ 0°!Ô4Ü$×1Ò1°%Ð9LÓMÐÜ×ÒÐ 0Ð2EÔFÜ×ÒÐ 0°!Ô4Ü×ÒÐ 0Ð2BÔCÜ×ÒÐ 0Ô1Ü×ÒÐ 0°'Ô:Ø)‰Jñ 0óñ 0�Dð ØÜ˜TÓ"õ#àœJ tÓ,Õ,õ.ð �u¤
¨4Ó 0Õ0Õ0õ2÷2ð 2ñ
 0ð ð ð ˜1Ôß%Ü×#Ò# N°A¸Õ8IÕ4IÕJ÷ Ü×'Ò'Ø% ~¸\öô %*×$6Ò$6Ø% ~¸\ô%�Mô
 	×ÒÐ-¨}¸aÀ%½iÔHä×ÒÐ/°Ô7Ü×ÒØ °¸qÀ5½yô	
ð
 çˆ:Ü×$Ò$ Z°Ó3ˆCÜ×%Ò% j°!Ó4ˆDÜ×Ò  TÔ*ØÜ×Ò  WÔ-Ø •{ w°¥{Õ3ˆGÜ×&Ò& z°7Ó;ˆEÜ×Ò  UÔ+ØÜ× Ò  Ô%ô
 !$ C¨¸DÕ Aôá A‘H�A�uô —’˜E C™K¨¨CÖ0Ù Að ñ ð ØÙLPÓQÉDÀD¤§¢¨D°1©H°c¸3Ö ?ÉDÐÐQÜ×ÒÐ 0°"Ô5ä$×1Ò1°%Ð9LÓMÐÜ×ÒÐ 0Ô1Ü×ÒÐ 0°!Ô4ä×ÒÐ 0Ð2BÔCÜ×ÒÐ 0Ô1ä$×1Ò1°%Ð9LÓMÐÜ×ÒÐ 0Ô1Ü×ÒÐ 0°!Ô4Ü× Ò Ð!1Ô2Ü×ÒÐ 0°"Ô5Ü×ÒÐ 0°$Ô7ØÜ×ÒÐ 0Ô1Ü×ÒÐ 0Ð2BÔCÚ ñ (óñ (�Eð ˜1”9ð ˜Q•YØ˜q•yõ"àõð   !�¨°!­Õ4°uÕ<õ>ð
 öð òñ (ð ð ñ ?CÓC¹d°d  q¤™1¨cÒ1¹dˆKÐCñ ;Nó Ù:M°$��EœZ¨Ó-Õ-×-Ð-Ñ:Mð ð  ô
 !$ KÐ1AÈ$Õ Oô á O‘H�D˜"ð �d•˜R• 2×%Ð%Ù Oð ñ  ô '*Ø'¨Ð/?Èõ'õ ñ'‘N�D˜$ ð �eœz¨$Ó/Õ/Õ/°CÕ7¸BÀ½IÈ½NÕKÈb×PÐPñ'ð ò  ô ×$Ò$Ð%8Ó9ˆÜ×Ò˜F CÔ(Ü×Ò˜FÐ$4Ô5Ü×"Ò" 6Ô*Ü×Ò˜FÐ$4Ô5ô 	×Ò Ð0@À&×Iós %ùòXùó^ùò  Rùò*ùò Dùò ùó ùô s3   Ì7Ab	Ô)'bÕ$bÛAbÜ$bÜ>"b#Ý3#b(Þ,A	b.
)Úsingle_tensor_fnc          "      óX  € V ^8„  d   QhR\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\         \        ,          R\        R\        R,          R	\        R
\        R\        R\        R\        R\        R\        R\        R\        RR/# )r   r   r[   r\   r]   r^   r!   r   Nr   r   r_   r   rc   rd   r   r    r   r"   )rv   r   r%   r#   )r&   s   "r(   r)   r)   7  sÊ   € ÷ ;ñ ;Ü”�Lð;ä”�<ð;ô ”6�lð;ô ”f•ð	;ô
 ”f•ð;ô !ð;ô �D�[ð;ô ð;ô ð;ô ð;ô ð;ô ð;ô  ð!;ô" 	ð#;ô$ ð%;ô& 
ð';ð( 
ñ);r+   c               óÆ  € \         ;QJ d    R V 4       F  '       d   K   RM	  RM! R V 4       4      '       g   \        R4      hVf   \        WRR7      w  ppV'       d0   \        P                  P                  4       '       d   \        R4      hV'       d,   \        P                  P                  4       '       g   \        pM\        pV! V VVVVVVVVVV
VVVV	R7       R# )	zhFunctional API that performs RAdam algorithm computation.

See :class:`~torch.optim.RAdam` for details.
c              3   óV   "  € T F  p\        V\        P                  4      x € K!  	  R # 5irk   )r0   rE   r   )r¥   Úts   & r(   r¦   Úradam.<locals>.<genexpr>P  s   é € Ð@±K¨qŒz˜!œUŸ\™\×*Ð*³Kùs   ‚')FTzPAPI has changed, `state_steps` argument must contain a list of singleton tensorsN)Ú	use_fusedz6torch.jit.script not supported with foreach optimizers)
rc   rd   r   r    r   r   r!   r   r   r_   )r«   rV   r   rE   r�   rŽ   rÔ   r    )r   r[   r\   r]   r^   r!   r   r   r   r_   r   rc   rd   r   r    r   rÄ   Úfuncs   &&&&&&&&&&&$$$$$  r(   r   r   6  sÆ   € ÷4 ‹3Ñ@±KÓ@�3�3Š3Ñ@±KÓ@×@Ò@ÜØ^ó
ð 	
ð ‚Ü1Ø¨eô
‰
ˆˆ7÷ ”5—9‘9×)Ñ)×+Ò+ÜÐSÓTÐTç”u—y‘y×-Ñ-×/Ò/Ü"‰ä#ˆáØØØØØØØØØ!ØØØ5Ø%ØØ÷r+   )FNFFFF)Ú__doc__Útypingr   rE   r   Ú	optimizerr   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   Ú__all__r   r    rÔ   r   rQ   r+   r(   Ú<module>rá      sÅ   ðá .å ã Ý ÷÷ ÷ ÷ ñ ð& �GÐ
€ôNˆIô Nðd2ðf	à	ˆð 
	ð 
ˆð 	Ø	ˆð 	Ø	Ðð 	Ø	Ðð 	ðõgKð „õ`fDõRJJñZ  Ð1EÔFö;ó Gò;r+   