+
    ÏÜ³jb  ã                  óR   € ^ RI Ht ^ RIHt ^ RIt^ RIHt R R lt ! R R4      t	R# )	é    )Úannotations)ÚTYPE_CHECKINGN)Úimport_optional_dependencyc               ó$   € V ^8„  d   QhRRRRRR/# )é   ÚnopythonÚboolÚnogilÚparallel© )Úformats   "ÚZ/home/luca/screen-checking/.venv/lib/python3.14/site-packages/pandas/core/window/online.pyÚ__annotate__r   
   s+   € ÷ Lñ LØðLàðLð ñLó    c                ó~   a€ \         '       d   ^ RIoM\        R4      oSP                  WVR7      R V3R ll4       pV# )a3  
Generate a numba jitted groupby ewma function specified by values
from engine_kwargs.

Parameters
----------
nopython : bool
    nopython to be passed into numba.jit
nogil : bool
    nogil to be passed into numba.jit
parallel : bool
    parallel to be passed into numba.jit

Returns
-------
Numba function
NÚnumba)r   r
   r   c               ó8   € V ^8„  d   QhRRRRRRRRRRR	RR
RRR/# )r   Úvaluesz
np.ndarrayÚdeltasÚminimum_periodsÚintÚold_wt_factorÚfloatÚnew_wtÚold_wtÚadjustr	   Ú	ignore_nar   )r   s   "r   r   Ú5generate_online_numba_ewma_func.<locals>.__annotate__&   sX   € ÷ .ñ .Øð.àð.ð ð.ð ð	.ð
 ð.ð ð.ð ð.ð ñ.r   c           	     ó˜  <€ \         P                  ! V P                  4      pV ^ ,          P                  4       p	\         P                  ! V	4      ( P                  \         P                  4      p
\         P                  ! W¢8¬  V	\         P                  4      V^ &   \        ^\        V 4      4       EF—  pW,          p\         P                  ! V4      ( pW­P                  \         P                  4      ,          p
SP                  \        V4      4       EF  p\         P                  ! Wž,          4      '       gÇ   WÞ,          '       g	   V'       g¯   W^;;,          W1V^,
          ,          ,          ,          uu&   WÞ,          '       dw   Wž,          WÎ,          8w  d@   W^,          Wž,          ,          WLV,          ,          ,           W^,          V,           ,          Wž&   V'       d   W^;;,          V,          uu&   Kâ  RW^&   Kè  Kê  Kì  WÞ,          '       g   Kü  WÎ,          Wž&   EK	  	  \         P                  ! W¢8¬  V	\         P                  4      W‹&   EKš  	  W…3# )zÀ
Compute online exponentially weighted mean per column over 2D values.

Takes the first observation as is, then computes the subsequent
exponentially weighted mean accounting minimum periods.
ç      ð?)ÚnpÚemptyÚshapeÚcopyÚisnanÚastypeÚint64ÚwhereÚnanÚrangeÚlenÚprange)r   r   r   r   r   r   r   r   ÚresultÚweighted_avgÚnobsÚiÚcurÚis_observationsÚjr   s   &&&&&&&&       €r   Úonline_ewmaÚ4generate_online_numba_ewma_func.<locals>.online_ewma%   s�  ø€ ô" —’˜&Ÿ,™,Ó'ˆØ˜a•y—~‘~Ó'ˆÜ—’˜,Ó'Ð'×/Ñ/´·±Ó9ˆÜ—H’H˜TÑ4°lÄBÇFÁFÓKˆˆq‰	ä�qœ#˜f›+×&ˆAØ•)ˆCÜ!Ÿxšx¨›}˜nˆOØ×*Ñ*¬2¯8©8Ó4Õ4ˆDØ—\‘\¤# c£(×+�Ü—x’x ¥×0Ò0Ø&×)Ô)·ð Ÿ	 ]¸QÀ½UµmÕ%CÕC›	Ø*×-Ô-à+�°#µ&Ô8à%+¥Y°µÕ%@ÀVÐRSÍfÅ_Õ$UØ%+¥Y°Õ%7õ39 ¡÷  &Ø &§	¨VÕ 3¥	à,/ £	ñ .ñ	 2;ð %×'Ö'Ø&)¥f�L”Oñ# ,ô& Ÿš Ñ!8¸,ÌÏÉÓOˆFŒIñ/ 'ð2 ˆ~Ðr   )r   r   r   Újit)r   r
   r   r4   r   s   &&& @r   Úgenerate_online_numba_ewma_funcr7   
   s@   ø€ ÷, ƒ}Üä*¨7Ó3ˆà
‡Y�Y˜¸€YÓA÷.ó Bð.ð` Ðr   c                  ó4   € ] tR t^YtR R ltR tR R ltRtR# )ÚEWMMeanStatec               ó   € V ^8„  d   QhRR/# ©r   ÚreturnÚNoner   )r   s   "r   r   ÚEWMMeanState.__annotate__Z   s   € ÷ ñ ¸ñ r   c                	óî   € R R V,           ,          pW@n         W n        W0n        V'       d   R MTV n        R V,
          V n        \
        P                  ! V P                   R,          4      V n        RV n        R# )r    Néÿÿÿÿ)	r#   r   r   r   r   r!   Úonesr   Úlast_ewm)ÚselfÚcomr   r   r#   Úalphas   &&&&& r   Ú__init__ÚEWMMeanState.__init__Z   sU   € Ø�s˜S•yÕ!ˆØŒ
ØŒØ"Œß#‘c¨ˆŒØ  5�[ˆÔÜ—g’g˜dŸj™j¨�nÓ-ˆŒØˆŽr   c           
     	ó´   € V! VVVV P                   V P                  V P                  V P                  V P                  4      w  rVW`n        VR,          V n        V# )é   r@   )r   r   r   r   r   rB   )rC   r.   r   Úmin_periodsÚewm_funcr-   r   s   &&&&&  r   Úrun_ewmÚEWMMeanState.run_ewmd   sS   € Ù!ØØØØ×ÑØ�K‰KØ�K‰KØ�K‰KØ�N‰Nó	
‰ˆð ŒØ˜r�
ˆŒØˆr   c               ó   € V ^8„  d   QhRR/# r;   r   )r   s   "r   r   r>   s   s   € ÷ ñ �tñ r   c                	ól   € \         P                  ! V P                  R,          4      V n        RV n        R# )rI   Nr@   )r!   rA   r#   r   rB   )rC   s   &r   ÚresetÚEWMMeanState.resets   s!   € Ü—g’g˜dŸj™j¨�nÓ-ˆŒØˆŽr   )r   r   rB   r   r   r   r#   N)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rF   rL   rP   Ú__static_attributes__r   r   r   r9   r9   Y   s   † õò÷ñ r   r9   )
Ú
__future__r   Útypingr   Únumpyr!   Úpandas.compat._optionalr   r7   r9   r   r   r   Ú<module>r[      s"   ðÝ "å  ã å >õL÷^ó r   