+
    –°³j¶  ã                   ód   a € R t0 t ^ RIt^ RIHu Ht ^ RIHt ^ RIHt . t	] ^ k  ! R R4      t
R# )é    N©ÚTensor)Ú2_scripted_functional_optimizer_deprecation_warningc                   óZ   a € ] tR t^t o R	V 3R lR lltV 3R lR ltV 3R lR ltRtV tR# )
Ú_FunctionalAdamc                ó|   <€ V ^8„  d   QhRS[ S[,          RS[RS[S[S[3,          RS[RS[RS[RS[RS[R	S[R
S[/
# )é   ÚparamsÚlrÚbetasÚepsÚweight_decayÚamsgradÚmaximizeÚforeachÚfusedÚ_allow_empty_param_list)Úlistr   ÚfloatÚtupleÚbool)ÚformatÚ__classdict__s   "€Úh/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/distributed/optim/functional_adam.pyÚ__annotate__Ú_FunctionalAdam.__annotate__   s|   ø€ ÷ +.ñ +.á‘V•ð+.ñ ð+.ñ ‘U™E�\Õ"ð	+.ñ
 ð+.ñ ð+.ñ ð+.ñ ð+.ñ ð+.ñ ð+.ñ "&ñ+.ó    c           
     óÔ  € \        ^R7       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/V n        W`n        Wpn        W€n        W�n        \        P                  P                  \        \        P                  \        \        \        P                  3,          3,          / 4      V n        \        V4      ^ 8X  d   V
'       g   \        R4      hRV/V n        R# )r	   )Ú
stacklevelç        zInvalid learning rate: zInvalid epsilon value: g      ð?z#Invalid beta parameter at index 0: z#Invalid beta parameter at index 1: zInvalid weight_decay value: r   r   Úbeta1Úbeta2r   z%optimizer got an empty parameter listr
   N)r   Ú
ValueErrorÚdefaultsr   r   r   r   ÚtorchÚjitÚannotateÚdictr   ÚstrÚstateÚlenÚparam_group)Úselfr
   r   r   r   r   r   r   r   r   r   s   &&&&&&&&&&&r   Ú__init__Ú_FunctionalAdam.__init__   sL  € ô 	;ÀaÕHØ�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ð �"Ø�3Ø�U˜1•XØ�U˜1•XØ˜Lð
ˆŒð ŒØ ŒØŒØŒ
Ü—Y‘Y×'Ñ'¬¬U¯\©\¼4ÄÄUÇ\Á\Ð@QÕ;RÐ-RÕ(SÐUWÓXˆŒ
äˆv‹;˜!Ô×$;ÜÐDÓEÐEð % fÐ-ˆÖr   c                ó4   <€ V ^8„  d   QhRS[ RS[ R,          /# )r	   ÚparamÚgradNr   )r   r   s   "€r   r   r   E   s   ø€ ÷ :ñ :¡ð :©f°t­mñ :r   c                ó  € . p. p. p. p. p. p\         P                  ! V4      p	Ve#   VP                  V4       VP                  V4       WP                  9  dÉ   / V P                  V&   V P                  V,          p
\         P                  ! R4      V
R&   \         P
                  ! V\         P                  R7      V
R&   \         P
                  ! V\         P                  R7      V
R&   V P                  '       d*   \         P
                  ! V\         P                  R7      V
R&   V P                  V,          p
VP                  V
R,          4       VP                  V
R,          4       V P                  '       d   VP                  V
R,          4       VP                  V
R,          4       \         P                  ! 4       ;_uu_ 4        \        P                  ! VVVVVVV P                  V	V P                  V P                  R,          V P                  R	,          V P                  R
,          V P                  R,          V P                  R,          V P                  V P                  RRR7       RRR4       R#   + '       g   i     R# ; i)zW
Similar to step, but operates on a single parameter and optionally a
gradient tensor.
Nr    Ústep©Úmemory_formatÚexp_avgÚ
exp_avg_sqÚmax_exp_avg_sqr!   r"   r   r   r   ©r   Úhas_complexr   r!   r"   r   r   r   r   r   Ú
grad_scaleÚ	found_inf)r%   Ú
is_complexÚappendr*   ÚtensorÚ
zeros_likeÚpreserve_formatr   Úno_gradÚFÚadamr   r$   r   r   )r-   r1   r2   Úparams_with_gradÚgradsÚexp_avgsÚexp_avg_sqsÚmax_exp_avg_sqsÚstate_stepsr;   r*   s   &&&        r   Ú
step_paramÚ_FunctionalAdam.step_paramE   sò  € ð
 ÐØˆØˆØˆØˆØ$&ˆÜ×&Ò& uÓ-ˆØÒØ×#Ñ# EÔ*Ø�L‰L˜ÔØŸ
™
Ô"Ø "ˆD�J‰J�uÑØ—J‘J˜uÕ%ˆEÜ!ŸLšL¨Ó-ˆE�&‰MÜ$×/Ò/Ø¤U×%:Ñ%:ô ˆE�)Ñô #(×"2Ò"2Ø¤U×%:Ñ%:ô#ˆE�,Ñð �|�|ˆ|Ü*/×*:Ò*:Ø¬×)>Ñ)>ô+�Ð&Ñ'ð —
‘
˜5Õ!ˆØ�‰˜˜iÕ(Ô)Ø×Ñ˜5 Õ.Ô/à�<�<ˆ<Ø×"Ñ" 5Ð)9Õ#:Ô;à×Ñ˜5 �=Ô)Ü�]Š]�_�_Ü�FŠFØ ØØØØØØŸ™Ø'ØŸ™Ø—m‘m GÕ,Ø—m‘m GÕ,Ø—=‘= Õ&Ø!Ÿ]™]¨>Õ:Ø—M‘M %Õ(ØŸ™Ø—j‘jØØõ%÷ �_�_Š_ús   ÇB&I3É3J	c                ó>   <€ V ^8„  d   QhRS[ S[R,          ,          /# )r	   Ú	gradientsN)r   r   )r   r   s   "€r   r   r   �   s    ø€ ÷ Gñ G™d¡6¨D¥=Õ1ñ Gr   c                ó0  € V P                   R ,          p. p. p. p. p. p. pRp	\        V4      \        V4      8w  d3   \        RR\        V4       R2,           R\        V4       2,           4      h\        V P                   R ,          V4       EF¨  w  r«Vf   K  V	\        P
                  ! V
4      ,          p	VP                  V
4       VP                  V4       W P                  9  dÉ   / V P                  V
&   V P                  V
,          p\        P                  ! R4      VR&   \        P                  ! V
\        P                  R	7      VR
&   \        P                  ! V
\        P                  R	7      VR&   V P                  '       d*   \        P                  ! V
\        P                  R	7      VR&   V P                  V
,          pVP                  VR
,          4       VP                  VR,          4       V P                  '       d   VP                  VR,          4       VP                  VR,          4       EK«  	  \        P                  ! 4       ;_uu_ 4        \        P                  ! VVVVVVV P                  V	V P                  V P                   R,          V P                   R,          V P                   R,          V P                   R,          V P                   R,          V P"                  V P$                  RRR7       RRR4       R#   + '       g   i     R# ; i)r
   FzEthe gradients passed in does not equal to the size of the parameters!zParams length: z. zGradients length: Nr    r4   r5   r7   r8   r9   r!   r"   r   r   r   r:   )r,   r+   r#   Úzipr%   r>   r?   r*   r@   rA   rB   r   rC   rD   rE   r   r$   r   r   )r-   rO   r
   rF   rG   rH   rI   rJ   rK   r;   r1   Úgradientr*   s   &&           r   r4   Ú_FunctionalAdam.step�   sx  € Ø×!Ñ! (Õ+ˆØÐØˆØˆØˆØˆØ$&ˆØˆäˆv‹;œ#˜i›.Ô(ÜØWØ#¤C¨£K =°Ð3õ4à&¤s¨9£~Ð&6Ð7õ8óð ô  # 4×#3Ñ#3°HÕ#=¸y×I‰OˆEØÔ#Øœu×/Ò/°Ó6Õ6�Ø ×'Ñ'¨Ô.Ø—‘˜XÔ&à§
¡
Ô*Ø(*�D—J‘J˜uÑ%Ø ŸJ™J uÕ-�EÜ$)§L¢L°Ó$5�E˜&‘Mä',×'7Ò'7Ø¬U×-BÑ-Bô(�E˜)Ñ$ô +0×*:Ò*:Ø¬U×-BÑ-Bô+�E˜,Ñ'ð —|—|�|ä27×2BÒ2BØ!´×1FÑ1Fô3˜Ð.Ñ/ð Ÿ
™
 5Õ)�à—‘  iÕ 0Ô1Ø×"Ñ" 5¨Õ#6Ô7à—<—<�<Ø#×*Ñ*¨5Ð1AÕ+BÔCà×"Ñ" 5¨¥=×1ñA  JôD �]Š]�_�_Ü�FŠFØ ØØØØØØŸ™Ø'ØŸ™Ø—m‘m GÕ,Ø—m‘m GÕ,Ø—=‘= Õ&Ø!Ÿ]™]¨>Õ:Ø—M‘M %Õ(ØŸ™Ø—j‘jØØõ%÷ �_�_Š_ús   ÉB&LÌL	)r   r$   r   r   r   r,   r*   N)	gü©ñÒMbP?)gÍÌÌÌÌÌì?g+‡ÙÎ÷ï?g:Œ0âŽyE>r    FFFFF)	Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r.   rL   r4   Ú__static_attributes__Ú__classdictcell__)r   s   @r   r   r      s'   ø‡ € ÷+.ò +.÷Z:ð :÷xGö Gr   r   c                óV   € V ^8„  d   Qh/ ^ \         9   d   \        \        ,          ;R&   # )r	   Ú__all__)Ú__conditional_annotations__r   r)   )r   s   "r   r   r      s   € ‡�÷ Ò ŒŒc�Ñ ò r   )r\   r%   Útorch.optim._functionalÚoptimÚ_functionalrD   r   Ú,torch.distributed.optim._deprecation_warningr   r[   r   r   )r\   s   @r   Ú<module>ra      s1   øð÷ €ß #Ð #Ý õð
 €Ó ÷qó qr   