+
    ˜°³jêY  ã            
       óô   € ^ 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 RR.t ! R R]4      tRR	] R
] R] R] R2	,           ]n        RR R lltR tR R ltR R ltR R ltR# )é    )ÚcastN)ÚTensor)Ú_default_to_fused_or_foreachÚ_device_dtype_check_for_fusedÚ_differentiable_docÚ_foreach_docÚ_get_scalar_dtypeÚ
_get_valueÚ_maximize_docÚ_params_docÚ
_to_scalarÚ_use_grad_for_differentiableÚ_view_as_realÚ
DeviceDictÚ	OptimizerÚParamsTÚAdagradÚadagradc                   óŠ   a a€ ] tR t^t oRRRRRRR/V3R lV 3R lllltV 3R ltV3R	 lR
 ltR t]RR l4       t	Rt
VtV ;t# )r   NÚmaximizeFÚdifferentiableÚfusedc                ó†   <€ V ^8„  d   QhRS[ RS[S[,          RS[RS[RS[RS[RS[R,          R	S[R
S[RS[R,          RR/# )é   ÚparamsÚlrÚlr_decayÚweight_decayÚinitial_accumulator_valueÚepsÚforeachNr   r   r   Úreturn)r   Úfloatr   Úbool)ÚformatÚ__classdict__s   "€ÚT/home/luca/screen-checking/.venv/lib/python3.14/site-packages/torch/optim/adagrad.pyÚ__annotate__ÚAdagrad.__annotate__   s’   ø€ ÷ Eñ EáðEñ ‘F�NðEñ ð	Eñ
 ðEñ $)ðEñ ðEñ ˜•ðEñ ðEñ ðEñ �d�{ðEð 
ñ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8:  g   \        RV 24      hRV8:  g   \        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       V
'       d5   V	'       d   \        R4      hV'       d   \        R4      hRV n        RV n        V P                   FÞ  pVR,           FÎ  pV P                  V,          pVR,          '       d5   \        P                  ! R\        VR,          R7      VP                  R7      M\        P                  ! R\        4       R7      VR&   \        P                   ! V4      '       d   \#        WU4      MTp\        P$                  ! Wß\        P&                  R7      VR&   KÐ  	  Kà  	  R# )é   zTensor lr must be 1-elementç        zInvalid learning rate: zInvalid lr_decay value: zInvalid weight_decay value: z)Invalid initial_accumulator_value value: zInvalid epsilon value: r   r   r    r   r   r!   r   r   r   z)`fused` does not support `differentiable`z0`fused` and `foreach` cannot be `True` together.Tr   ©Úis_fused©ÚdtypeÚdevice©r1   Ústep©Úmemory_formatÚsumN© )Ú
isinstancer   ÚnumelÚ
ValueErrorÚsuperÚ__init__ÚRuntimeErrorÚ"_need_device_dtype_check_for_fusedÚ_step_supports_amp_scalingÚparam_groupsÚstateÚtorchÚzerosr	   r2   ÚtensorÚ
is_complexÚcomplexÚ	full_likeÚpreserve_format)Úselfr   r   r   r   r   r    r!   r   r   r   ÚdefaultsÚgroupÚprB   Ú
init_valueÚ	__class__s   &&&&&&&&$$$     €r'   r=   ÚAdagrad.__init__   sì  ø€ ô �bœ&×!Ò! b§h¡h£j°A¤oÜÐ:Ó;Ð;Ø�bŒyÜÐ6°r°dÐ;Ó<Ð<Ø�hŒÜÐ7¸°zÐBÓCÐCØ�lÔ"ÜÐ;¸L¸>ÐJÓKÐKØÐ/Ô/ÜØ;Ð<UÐ;VÐWóð ð �cŒzÜÐ6°s°eÐ<Ó=Ð=ð �"Ø˜Ø�3Ø˜LØ'Ð)BØ�wØ˜Ø˜nØ�Uð

ˆô 	‰Ñ˜Ô*çßÜ"Ð#NÓOÐOßÜ"Ð#UÓVÐVØ6:ˆDÔ3Ø.2ˆDÔ+à×&Ô&ˆEØ˜8—_�_�ØŸ
™
 1��ð ˜W—~”~ô —K’KØÜ/¸¸w½ÔHØ Ÿx™xõô Ÿš cÔ1BÓ1DÔEð �f‘ô ×'Ò'¨×*Ò*ô Ð5ÔQà2ð ô
  %ŸšØ´×1FÑ1Fô ��e“ó! %ó 'r*   c           	     óÖ  <€ \         S
V `  V4       R pV P                   EF   pVP                  RR 4       VP                  RR4       VP                  RR4       VP                  RR 4      p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\        VR7      VP                  R	7      M\        P                  ! V\        4       R
7      VR&   KÉ  	  EK#  	  \        V P                  P                  4       4      p\        V4      ^ 8g  ;'       d%    \        P                  ! V^ ,          R,          4      pV'       gA   V F8  p	\        P                  ! \        V	R,          4      \        VR7      R
7      V	R&   K:  	  R # R # )Nr!   r   Fr   r   r   r4   r.   r0   r3   )r<   Ú__setstate__rA   Ú
setdefaultrB   ÚgetÚlenrC   Ú	is_tensorr#   rE   r	   r2   ÚlistÚvalues)rJ   rB   r   rL   rM   Úp_stateÚstep_valÚstate_valuesÚstep_is_tensorÚsrO   s   &&        €r'   rR   ÚAdagrad.__setstate__d   s…  ø€ Ü‰Ñ˜UÔ#ð ˆØ×&Õ&ˆEØ×Ñ˜Y¨Ô-Ø×Ñ˜Z¨Ô/Ø×ÑÐ-¨uÔ5Ø×$Ñ$ W¨dÓ3ˆEà˜8—_�_�ØŸ*™*Ÿ.™.¨¨BÓ/�Ü�w“< 1Ö$¬U¯_ª_¸WÀV½_×-MÔ-MÜ$ W¨V¥_Ó5�Hð ! Ÿ>œ>ô ŸšØ$Ü"3¸UÔ"CØ#$§8¡8õô #Ÿ\š\¨(Ô:KÓ:MÔNð ˜F“Oô	 %ñ 'ô( ˜DŸJ™J×-Ñ-Ó/Ó0ˆÜ˜lÓ+¨qÑ0÷ 
ð 
´e·o²oØ˜�O˜FÕ#ó7
ˆ÷ Û!�Ü!ŸLšLÜ˜!˜F�)Ó$Ô,=ÀuÔ,Mô��&“	ó "ñ r*   c                ó   <€ V ^8„  d   QhRR/# )r   r"   Nr8   )r%   r&   s   "€r'   r(   r)   ‡   s   ø€ ÷ -ñ -˜dñ -r*   c                ó    € V P                    F=  pVR,           F-  pV P                  V,          pVR,          P                  4        K/  	  K?  	  R# )z6Calls tensor.share_memory_() on the state sum tensors.r   r7   N)rA   rB   Úshare_memory_)rJ   rL   rM   rB   s   &   r'   Úshare_memoryÚAdagrad.share_memory‡   s?   € à×&Ô&ˆEØ˜8—_�_�ØŸ
™
 1��Ø�e•×*Ñ*Ö,ó %ó 'r*   c                óô  € R R rvVR,           EFå  pVP                   f   K  VR,          '       d&   \        V RR4      '       d   \        V4       R V n        WhP                   P                  ,          pV\
        P                  ! V4      ,          pVP                  V4       VP                  VP                   4       V P                  V,          p	\        V	4      ^ 8X  dæ   VR,          '       d   \        V4       VR,          '       d5   \
        P                  ! R\        VR,          R7      VP                  R7      M\
        P                  ! R\        4       R7      V	R	&   V P                  R
,          p
\
        P                  ! V4      '       d   \        Wª4      MT
p\
        P                   ! W‹\
        P"                  R7      V	R&   VP                  V	R,          4       VP                  V	R	,          4       EKè  	  Wg3# )Fr   r   r?   Tr.   r0   r-   r3   r4   r   r5   r7   r8   )ÚgradÚgetattrr   r?   Ú	is_sparserC   rF   ÚappendrB   rU   rD   r	   r2   rE   rK   rG   rH   rI   )rJ   rL   Úparams_with_gradÚgradsÚ
state_sumsÚstate_stepsÚhas_sparse_gradÚhas_complexrM   rB   r   rN   s   &&&&&&      r'   Ú_init_groupÚAdagrad._init_groupŽ   s™  € Ø',¨e˜Ø�x—‘ˆAØ�v‰vÔ!Ø˜—>”>¤gØØ8Ø÷'ò 'ô
 2°!Ô4Ø>C�DÔ;Ø§6¡6×#3Ñ#3Õ3�Øœu×/Ò/°Ó2Õ2�Ø ×'Ñ'¨Ô*Ø—‘˜QŸV™VÔ$ØŸ
™
 1��Ü�u“: ”?Ø˜W—~”~Ü5°aÔ8ð ! Ÿ>œ>ô ŸšØÜ"3¸UÀ7½^Ô"LØ#$§8¡8õô #Ÿ\š\¨#Ô5FÓ5HÔIð ˜&‘Mð 15·±Ø3õ1Ð-ô
 !×+Ò+¨A×.Ò.ô  Ð 9ÔUà6ð ô
 $)§?¢?Ø´U×5JÑ5Jô$�E˜%‘Lð ×!Ñ! %¨¥,Ô/Ø×"Ñ" 5¨¥=×1ñQ !ðT Ð+Ð+r*   c                óÄ  € RpVe.   \         P                  ! 4       ;_uu_ 4        V! 4       pRRR4       V P                   F‰  p. p. p. p. pV P                  W4WVV4      w  r‰\	        VVVVVR,          VR,          VR,          VR,          VVR,          VR,          VR,          V	VR	,          \        V R
R4      \        V RR4      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   Ú
grad_scaleÚ	found_inf)r   r   r   r    rm   r!   r   r   rn   r   rr   rs   )rC   Úenable_gradrA   ro   r   rf   )
rJ   ÚclosureÚlossrL   ri   rj   rk   rl   rm   rn   s
   &&        r'   r4   ÚAdagrad.step¼   sî   € ð ˆàÒÜ×"Ò"×$Õ$Ù“y�÷ %ð ×&Ô&ˆEØ-/ÐØ"$ˆEØ')ˆJØ(*ˆKà+/×+;Ñ+;Ø¨¸Kó,Ñ(ˆOô Ø ØØØØ˜•;Ø" >Õ2Ø˜zÕ*Ø˜%•LØ /Ø˜iÕ(Ø˜zÕ*Ø$Ð%5Õ6Ø'Ø˜G•nÜ" 4¨°tÓ<Ü! $¨°TÓ:÷!ñ 'ð: ˆ÷A %×$ús   ¤CÃC	)r?   r@   )g{®Gáz„?r   r   r   g»½×Ùß|Û=N©N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r=   rR   rb   ro   r   r4   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)rO   r&   s   @@r'   r   r      sb   ù‡ € ñEð ðEð  %ðEð "÷Eö EõN!÷F-ð -ò,,ð\ "ó*ó "÷*ð *r*   a[  Implements Adagrad algorithm.

    .. math::
       \begin{aligned}
            &\rule{110mm}{0.4pt}                                                                 \\
            &\textbf{input}      : \gamma \text{ (lr)}, \: \theta_0 \text{ (params)}, \: f(\theta)
                \text{ (objective)}, \: \lambda \text{ (weight decay)},                          \\
            &\hspace{12mm}    \tau \text{ (initial accumulator value)}, \: \eta\text{ (lr decay)}\\
            &\textbf{initialize} :  state\_sum_0 \leftarrow \tau                          \\[-1.ex]
            &\rule{110mm}{0.4pt}                                                                 \\
            &\textbf{for} \: t=1 \: \textbf{to} \: \ldots \: \textbf{do}                         \\
            &\hspace{5mm}g_t           \leftarrow   \nabla_{\theta} f_t (\theta_{t-1})           \\
            &\hspace{5mm} \tilde{\gamma}    \leftarrow \gamma / (1 +(t-1) \eta)                  \\
            &\hspace{5mm} \textbf{if} \: \lambda \neq 0                                          \\
            &\hspace{10mm} g_t \leftarrow g_t + \lambda \theta_{t-1}                             \\
            &\hspace{5mm}state\_sum_t  \leftarrow  state\_sum_{t-1} + g^2_t                      \\
            &\hspace{5mm}\theta_t \leftarrow
                \theta_{t-1}- \tilde{\gamma} \frac{g_t}{\sqrt{state\_sum_t}+\epsilon}            \\
            &\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 `Adaptive Subgradient Methods for Online Learning
    and Stochastic Optimization`_.
    z
    Args:
        aÙ  
        lr (float, Tensor, optional): learning rate (default: 1e-2)
        lr_decay (float, optional): learning rate decay (default: 0)
        weight_decay (float, optional): weight decay (L2 penalty) (default: 0)
        initial_accumulator_value (float, optional): initial value of the
            sum of squares of gradients (default: 0)
        eps (float, optional): term added to the denominator to improve
            numerical stability (default: 1e-10)
        z	
        aÚ  
        fused (bool, optional): whether the fused implementation (CPU and CUDA only) is used.
            Currently, `torch.float64`, `torch.float32`, `torch.float16`, and `torch.bfloat16`
            are supported. (default: None). Please note that the fused implementation does not
            support sparse or complex gradients.
    .. _Adaptive Subgradient Methods for Online Learning and Stochastic
        Optimization: http://jmlr.org/papers/v12/duchi11a.html

    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   r   rj   rk   rl   r   Nrr   rs   rm   r!   r   rn   r   r   r   r    r   r"   )rW   r   r$   r#   )r%   s   "r'   r(   r(     sé   € ÷ Gñ GÜ”�LðGä”�<ðGô ”V•ðGô ”f•ð	Gô
 �$�;ðGô ˜•ðGô ˜�}ðGô ðGô �D�[ðGô ðGô ðGô 	”�ðGô  ð!Gô" ð#Gô$ 
ð%Gô& ð'Gð( 
ñ)G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   Vf   \        W	RR7      w  ppVf   RpVf   RpV'       d0   \        P                  P                  4       '       d   \        R4      hV'       d0   \        P                  P                  4       '       d   \        R4      hV'       d,   \        P                  P                  4       '       g   \        pM9V'       d,   \        P                  P                  4       '       g   \        pM\        pV! V VVVVVVVVVV	V
VVR	7       R# )
zlFunctional API that performs Adagrad algorithm computation.

See :class:`~torch.optim.Adagrad` for details.
c              3   óV   "  € T F  p\        V\        P                  4      x € K!  	  R # 5irx   )r9   rC   r   )Ú.0Úts   & r'   Ú	<genexpr>Úadagrad.<locals>.<genexpr>6  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 optimizersz4torch.jit.script not supported with fused optimizers©
r   r   r   r    rm   r   r   rn   rr   rs   )	Úallr>   r   rC   ÚjitÚis_scriptingÚ_fused_adagradÚ_multi_tensor_adagradÚ_single_tensor_adagrad)r   rj   rk   rl   r   rr   rs   rm   r!   r   rn   r   r   r   r    r   Ú_Úfuncs   &&&&&&&&&&&$$$$$  r'   r   r     s  € ÷2 ‹3Ñ@±KÓ@�3�3Š3Ñ@±KÓ@×@Ò@ÜØ^ó
ð 	
ð ‚}˜šÜ1Ø¨eô
‰
ˆˆ7ð ‚}ØˆØ‚Øˆç”5—9‘9×)Ñ)×+Ò+ÜÐSÓTÐTß”—‘×'Ñ'×)Ò)ÜÐQÓRÐRç”U—Y‘Y×+Ñ+×-Ò-Ü‰ß	œŸ™×/Ñ/×1Ò1Ü$‰ä%ˆáØØØØØØ!ØØØ'ØØ%ØØØ÷r*   c                 óP   € V P                  4       p\        P                  ! WV4      # rx   )ÚsizerC   Úsparse_coo_tensor)re   Úgrad_indicesrX   r’   s   &&& r'   Ú_make_sparser•   g  s    € Ø�9‰9‹;€DÜ×"Ò" <¸Ó>Ð>r*   c                óN  € 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   rj   rk   rl   rr   Nrs   r   r   r   r    rm   r   r   rn   r"   ©rW   r   r#   r$   )r%   s   "r'   r(   r(   l  sË   € ÷ B=ñ B=Ü”�LðB=ä”�<ðB=ô ”V•ðB=ô ”f•ð	B=ô
 ˜•ðB=ô ˜�}ðB=ô 	”�ðB=ô ðB=ô ðB=ô 
ðB=ô ðB=ô ðB=ô ðB=ô ðB=ð  
ñ!B=r*   c          
      óN  € Vf   Ve   \        R4      h\        P                  P                  4       '       g   \	        V4      p\        WW#RR7       EFO  w  rïppV^,          p\        V4      pV'       g   TMV) pV^ 8w  d0   VP                  '       d   \        R4      hVP                  WçR7      pV^V^,
          V,          ,           ,          pVP                  '       dÃ   VP                  4       pVP                  4       pVP                  4       pVP                  \        VVVP                  ^4      4      4       VP!                  V4      pVP                  4       P#                  4       P                  V	4      pVP                  \        VVVV,          4      V) R7       EKQ  \        P$                  ! V4      pV'       dC   \        P&                  ! V4      p\        P&                  ! V4      p\        P&                  ! V4      pVP)                  Wÿ^R7       V'       d   VP+                  4       V	,           pMVP+                  4       P                  V	4      pVP-                  VVV) R7       V'       g   EK#  \        P.                  ! V4      p\        P.                  ! V4      pEKR  	  R # )Nú,Expected grad_scale and found_inf to be NoneT)Ústrictz;weight_decay option is not compatible with sparse gradients©Úalpha©Úvalue)ÚAssertionErrorrC   rŠ   r‹   r   Úzipr
   rg   r>   ÚaddÚcoalesceÚ_indicesÚ_valuesÚadd_r•   ÚpowÚsparse_maskÚsqrt_rF   Úview_as_realÚaddcmul_ÚsqrtÚaddcdiv_Úview_as_complex)r   rj   rk   rl   rr   rs   r   r   r   r    rm   r   r   rn   Úparamre   Ú	state_sumÚstep_tr4   Úclrr”   Úgrad_valuesÚstdÚ
std_valuesrF   s   &&&&&&$$$$$$$$           r'   rŽ   rŽ   l  s  € ð" Ò Ò!6ÜÐKÓLÐLä�9‰9×!Ñ!×#Ò#Ü˜‹^ˆä*-Ø�z°t÷+ð +Ñ&ˆ�Y ð 	�!�ˆÜ˜&Ó!ˆß#‰t¨$¨ˆà˜1ÔØ�~�~ˆ~Ü"ØQóð ð —8‘8˜E�8Ó6ˆDà�A˜ � XÕ-Õ-Õ.ˆà�>�>ˆ>Ø—=‘=“?ˆDØŸ=™=›?ˆLØŸ,™,›.ˆKà�N‰Nœ<¨¨l¸K¿O¹OÈAÓ<NÓOÔPØ×'Ñ'¨Ó-ˆCØŸ™›×,Ñ,Ó.×3Ñ3°CÓ8ˆJØ�J‰JÜ˜T <°¸zÕ1IÓJØ�dð ÷ ô
 ×)Ò)¨%Ó0ˆJßÜ×)Ò)¨$Ó/�Ü!×.Ò.¨yÓ9�	Ü×*Ò*¨5Ó1�Ø×Ñ˜t°ÐÔ3ßØ—n‘nÓ&¨Õ,‘à—n‘nÓ&×+Ñ+¨CÓ0�Ø�N‰N˜4 ¨S¨DˆNÔ1ßŠzÜ×-Ò-¨eÓ4�Ü!×1Ò1°)Ó<“	óW+r*   c                óN  € 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%   s   "r'   r(   r(   ±  sË   € ÷ l?ñ l?Ü”�Lðl?ä”�<ðl?ô ”V•ðl?ô ”f•ð	l?ô
 ˜•ðl?ô ˜�}ðl?ô 	”�ðl?ô ðl?ô ðl?ô 
ðl?ô ðl?ô ðl?ô ðl?ô ðl?ð  
ñ!l?r*   c                ó@  € V'       d   \        R 4      hVf   Ve   \        R4      h\        V 4      ^ 8X  d   R# \        V4      p\        P                  ! WW#.4      pVP                  4        EF¨  w  w  ppppp\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      pT
;'       d5    \        ;QJ d    R V 4       F  '       g   K   RM	  RM! R V 4       4      pV'       d   \        VVVVVVVV	RVVVVVR7       KÙ  V'       d   \        VVV4       V'       d   \        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^ 8w  d<   V'       d   \        P"                  ! VVVR
7       M\        P&                  ! VVVR
7      pV Uu. uF+  pV) ^\)        V4      ^,
          V,          ,           ,          NK-  	  pp\        P*                  ! VVV^R7       \        P,                  ! V4      p\        P"                  ! VV	4       V^ 8w  g	   V'       d   \        P.                  ! VV4       TpM\        P0                  ! VV4      p\        P2                  ! VVV4       EK«  	  R# u upi )z#_foreach ops don't support autogradNrš   c              3   ó8   "  € T F  qP                   x € K  	  R # 5irx   )rg   )rƒ   re   s   & r'   r…   Ú(_multi_tensor_adagrad.<locals>.<genexpr>Û  s   é € ð 9
Ù'3˜t�NŽN£|ùs   ‚TFrˆ   g      ð?Úcpu)r2   rœ   rž   )r    rU   r   r   Ú"_group_tensors_by_device_and_dtyperX   r   rW   r   ÚanyrŽ   r   rC   Ú_foreach_negÚcompilerÚis_compilingÚis_cpuÚ_foreach_add_rE   Ú_foreach_addr
   Ú_foreach_addcmul_Ú_foreach_sqrtÚ_foreach_mul_Ú_foreach_mulÚ_foreach_addcdiv_)r   rj   rk   rl   rr   rs   r   r   r   r    rm   r   r   rn   Úgrouped_tensorlistsÚdevice_params_Údevice_grads_Údevice_state_sums_Údevice_state_steps_r�   Údevice_paramsÚdevice_gradsÚdevice_state_sumsÚdevice_state_stepsÚdevice_has_sparse_gradr4   Ú	minus_clrr´   Ú	numerators   &&&&&&$$$$$$$$               r'   r�   r�   ±  s¶  € ÷" ÜÐBÓCÐCØÒ Ò!6ÜÐKÓLÐLô ˆ6ƒ{�aÔÙä	�B‹€Bä#×FÒFØ	˜
Ð0óÐð  ×&Ñ&×(ñ		ñ 	ØØØØØÜœT¤&�\¨>Ó:ˆÜœD¤�L¨-Ó8ˆÜ ¤¤f¥Ð/AÓBÐÜ!¤$¤v¥,Ð0CÓDÐà!0÷ "
ð "
·S³Sñ 9
Ù'3ó9
·S·S²Sñ 9
Ù'3ó9
ó 6
Ð÷ "Ü"ØØØ!Ø"ØØ)Ø!ØØ $Ø!Ø-Ø'Ø%Ø#õñ  ÷ Ü˜-¨Ð7HÔIçÜ ×-Ò-¨lÓ;ˆLô �~‰~×*Ñ*×,Ò,Ð1CÀAÕ1F×1M×1MÐ1MÜ×ÒØ"¤E§L¢L°¸UÔ$CÈ3öô ×ÒÐ 2°AÔ6à˜1ÔçÜ×#Ò# L°-À|ÖTä$×1Ò1Ø  -°|ô �ñ
 GYó
ÙFX¸dˆRˆC�1œ
 4Ó(¨1Õ,°Õ8Õ8×9Ð9ÑFXð 	ð 
ô 	×ÒÐ 1°<ÀÐUVÕWä×!Ò!Ð"3Ó4ˆÜ×Ò˜C Ô%à˜1Ô§ä×Ò ¨iÔ8Ø$‰Iä×*Ò*¨<¸ÓCˆIä×Ò ¨y¸#×>óQ )ùòp
s   É1Lc                óN  € 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%   s   "r'   r(   r(      sË   € ÷ Sñ SÜ”�LðSä”�<ðSô ”V•ðSô ”f•ð	Sô
 ˜•ðSô ˜�}ðSô 	”�ðSô ðSô ðSô 
ðSô ðSô ðSô ðSô ðSð  
ñ!Sr*   c                ób  € V '       g   R # V
'       g	   V'       d   \        R4      hV'       d   \        R4      hVe   VP                  V/M/ pVe   VP                  V/M/ p\        V\        4      '       d)   \	        VP                  4      R8w  d   VP                  V/MR p\
        P                  ! WW#.4      pVP                  4        EFa  w  w  ppw  w  ppppp\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      p\        \        \        ,          V4      pR R ppVe$   VP                  VVP                  VRR7      4      pVe$   VP                  VVP                  VRR7      4      pVe'   VV9  d    VP                  VRR7      VV&   VV,          p\        P                  ! V^4       \        P                  ! VVVVVVVV	VVVR7       Vf   EK9  \        P                  ! VV.\!        V4      ,          4       EKd  	  R # )Nz5`fused` does not support sparse grad or complex paramz<adagrad with fused=True does not support differentiable=Truerº   T)Únon_blocking)r2   rÖ   )r   r   r   r    r   rr   rs   )r>   r2   r9   r   Ústrr   r»   Úitemsr   rW   rS   ÚtorC   rÁ   Ú_fused_adagrad_Ú_foreach_sub_rU   )r   rj   rk   rl   rr   rs   r   r   r   r    rm   r   r   rn   Úgrad_scale_dictÚfound_inf_dictÚlr_dictÚgrouped_tensorsr2   r�   rÉ   rÊ   rË   rÌ   rÍ   rÎ   rÏ   rÐ   Údevice_grad_scaleÚdevice_found_infs   &&&&&&$$$$$$$$                r'   rŒ   rŒ      s#  € ÷" ÙßŸ+ÜÐRÓSÐSçÜØJó
ð 	
ð
 ,6Ò+Aˆ×	Ñ	˜JÑ'Àrð ð *3Ò)>ˆ×	Ñ	˜9Ñ%ÀBð ô & b¬&×1Ò1´c¸"¿)¹)³nÈÔ6Mˆ�‰�B‰ÐSWð ô  ×BÒBØ	˜
Ð0ó€Oð 
×	Ñ	×	 ñ	‰ˆ�ñ ñ	
ØØØØà	äœT¤&�\¨>Ó:ˆÜœD¤�L¨-Ó8ˆÜ ¤¤f¥Ð/AÓBÐÜ!¤$¤v¥,Ð0CÓDÐà.2°DÐ+ÐØÒ!Ø /× :Ñ :Ø˜
Ÿ™ f¸4˜Ó@ó!Ðð Ò Ø-×8Ñ8Ø˜	Ÿ™ V¸$˜Ó?ó Ðð Ò 6°Ô#8Ø Ÿe™e¨6À˜eÓEˆG�F‰OØ˜•ˆBÜ×ÒÐ.°Ô2Ü×ÒØØØØØØØ%ØØØ(Ø&õ	
ð Õ'Ü×ÒØ"Ð%5Ð$6¼Ð=OÓ9PÕ$P÷óC 
!r*   )NNNFNFF)Útypingr   rC   r   Ú	optimizerr   r   r   r   r	   r
   r   r   r   r   r   r   r   r   Ú__all__r   Ú__doc__r   r•   rŽ   r�   rŒ   r8   r*   r'   Ú<module>ræ      s¤   ðå ã Ý ÷÷ ÷ ÷ ð$ �iÐ
 €ôKˆiô Kð^ð4	à	ˆð 	ð 
ˆð 	Ø	ˆð 	Ø	Ðð ðõ5.ð „÷fGòT?õ
B=õJl?÷^Sr*   