+
    Ŝib                    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   "b/Users/mibo/.openclaw/workspace/.venv-ak/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                  ! W8  V	\         P                  4      V^ &   \        ^\        V 4      4       EF  pW,          p\         P                  ! V4      ( pWP                  \         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                  ! W8  V	\         P                  4      W&   EK  	  W3# )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_ewma4generate_online_numba_ewma_func.<locals>.online_ewma%   s   " &,,'ay~~',''//9HHT4lBFFKq	q#f+&A)C!xx}nO**28844D\\#c(+xx00&)) 	]QUm%CC	*--+#&8%+Y%@VRSf_$U%+Y%739  & &	V 3	,/	 .	 2; %''&)fLO# ,& !8,OFI/ '2 ~r   )r   r   r   jit)r   r
   r   r4   r   s   &&& @r   generate_online_numba_ewma_funcr7   
   s@    , }*73
YY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    sSy!
"#c 5[ggdjj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    !KKKKKKNN	
 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!    ggdjj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   