Ë
    *V.j\)  ã            
       ó2  — d dl Zd dlZd dlmZ d dlmc mZ d dl	Z
d dl	mZmZ d dlmZ  ej                   ej"                  ej$                  ej&                  ej(                  ddgg d¢¬«      d„ «       Zd	„ Zej.                  j0                  d
„ «       Zd„ Zd„ Zej.                  j9                  dddg«      ej.                  j9                  dg d¢«      d„ «       «       Zd„ Zd„ Zej.                  j9                  dddg«      ej.                  j9                  dg d¢«      ej.                  j9                  dg d¢g d¢fg d¢g d¢fg d¢g d¢fg«      d„ «       «       «       Z ej.                  j9                  dddg«      d„ «       Z!ej.                  j9                  ddd g«      d!„ «       Z"ejF                  ej.                  j9                  dddg«      ej.                  j9                  d"d# ejH                  d$«      jJ                  fd%g«      d&„ «       «       «       Z&d'„ Z'y)(é    N)ÚUnsupportedFunctionCall)Ú	DataFrameÚSeriesÚInt64ÚFloat64)znp.int32znp.int64z
np.float32z
np.float64r   r   )ÚparamsÚidsc                 óþ  — | j                   }|}|dk(  rt        j                  }n|dk(  rt        j                  }t        j                  |«      j
                  dk(  rt        j                  |«      j                  nt        j                  |«      j                  }t        j                  |«      j
                  dk(  rt        j                  |«      j                  nt        j                  |«      j                  }|||fS )zZ
    Fixture of dtypes with min and max values used for testing
    cummin and cummax
    r   r   Úi)
ÚparamÚnpÚint64Úfloat64ÚdtypeÚkindÚiinfoÚminÚfinfoÚmax)Úrequestr   Únp_typeÚmin_valÚmax_vals        úfC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\pandas/tests/groupby/test_cumulative.pyÚdtypes_for_minmaxr      sË   € ð �M‰M€Eà€GØ�ÒÜ—(‘(‰Ø	�)Ò	Ü—*‘*ˆô �8‰8�GÓ×!Ñ! SÒ(ô 	�‰�Ó×Òä�X‰X�gÓ×"Ñ"ð ô �8‰8�GÓ×!Ñ! SÒ(ô 	�‰�Ó×Òä�X‰X�gÓ×"Ñ"ð ð �7˜GÐ$Ð$ó    c                  ó  — t        dgdz  ddœ«      } | j                  d«      d   j                  «       }| j                  dd¬«      d   j                  d	„ «      }d|_        t        j                  ||«       t        dgd
z  ddœ«      } | d   j                  t        «      | d<   | j                  d«      d   j                  «       }| j                  dd¬«      d   j                  d„ «      }d|_        t        j                  ||«       y )NÚbé
   é   ©ÚkeyÚvaluer"   r#   F©Ú
group_keysc                 ó"   — | j                  «       S ©N©Úcumprod©Úxs    r   Ú<lambda>z&test_groupby_cumprod.<locals>.<lambda>3   ó
   € ÈAÏIÉIÌKr   éd   c                 ó"   — | j                  «       S r'   r(   r*   s    r   r,   z&test_groupby_cumprod.<locals>.<lambda>:   r-   r   )	r   Úgroupbyr)   ÚapplyÚnameÚtmÚassert_series_equalÚastypeÚfloat)ÚdfÚactualÚexpecteds      r   Útest_groupby_cumprodr:   .   sð   € ä	˜C˜5 2™:°Ñ2Ó	3€Bà�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FØ�z‰z˜%¨EˆzÓ2°7Ñ;×AÑAÑBWÓX€HØ€H„MÜ×Ñ˜6 8Ô,ä	˜C˜5 3™;°Ñ3Ó	4€BØ�W‘+×$Ñ$¤UÓ+€B€w�KØ�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FØ�z‰z˜%¨EˆzÓ2°7Ñ;×AÑAÑBWÓX€HØ€H„MÜ×Ñ˜6 8Õ,r   c                  ó<  — t        dgdz  ddœ«      } | j                  d«      d   j                  «       }t        g d¢d¬«      }t	        j
                  ||«       | j                  dd	¬
«      d   j                  d„ «      }d|_        t	        j
                  ||«       y )Nr   é   é † r!   r"   r#   )r=   l    d(	 l     �Iú5 l      Fµx:^ ©r2   Fr$   c                 ó"   — | j                  «       S r'   r(   r*   s    r   r,   z/test_groupby_cumprod_overflow.<locals>.<lambda>K   s
   € �!—)‘)”+r   )r   r0   r)   r   r3   r4   r1   r2   )r7   r8   r9   Únumpy_results       r   Útest_groupby_cumprod_overflowrA   ?   s–   € ô 
˜C˜5 1™9¨wÑ7Ó	8€BØ�Z‰Z˜Ó˜wÑ'×/Ñ/Ó1€FÜÚMØô€Hô ×Ñ˜6 8Ô,à—:‘:˜e°�:Ó6°wÑ?×EÑEÙó€Lð  €LÔÜ×Ñ˜6 <Õ0r   c                  ó  — t        ddt        j                  dgg d¢dœ«      } | j                  d«      j	                  dd¬«      }t        dt        j                  t        j                  gg d	¢d
œ«      }t        j                  ||«       y )Né   r    )rC   r    g      @)Úar   ÚcrD   TF)Únumeric_onlyÚskipna)rC   r    g      @)r   rE   )r   r   Únanr0   r)   r3   Úassert_frame_equal)r7   Úresultr9   s      r   Ú1test_groupby_cumprod_nan_influences_other_columnsrK   Q   sq   € ä	àØ”R—V‘V˜Q�Úñ	
ó
€Bð �Z‰Z˜‹_×$Ñ$°$¸uÐ$ÓE€FÜ ¤2§6¡6¬2¯6©6Ð2ºÑEÓF€HÜ×Ñ˜& (Õ+r   c                 ó*  — | d   }| d   }t        g d¢g d¢dœ«      }g d¢}|j                  |«      }t        d|i«      j                  |«      }|j                  d«      j                  «       }t	        j
                  ||«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||«       ||j                  ddgdf<   |dz   |j                  ddgdf<   ||j                  g d¢df<   |dz   |j                  ddgdf<   |j                  d«      j                  «       }t	        j
                  ||d¬«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||d¬«       |j                  ddi«      }t        j                  |j                  g d¢df<   t        dt        j                  dt        j                  dt        j                  dt        j                  dgi«      }|j                  d«      j                  «       }t	        j
                  ||«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||«       t        dgt        j                  dg«      dœ«      }t        t        j                  d«      dgd¬«      }|j                  d«      d   j                  «       }t	        j                  ||«       t        g d¢g d¢dœ«      }|j                  d«      j                   j                  «       }t        g d¢d¬«      }t	        j                  ||«       y ) Nr   rC   ©rC   rC   rC   rC   r    r    r    r    ©é   r<   rO   r    r    rO   r    rC   ©ÚAÚB)rO   rO   rO   r    r    r    r    rC   rR   rQ   Fr$   c                 ó"   — | j                  «       S r'   ©Úcumminr*   s    r   r,   ztest_cummin.<locals>.<lambda>l   ó
   € ÀÇÁÄr   r    é   é   ©r    rO   rW   é   T)Úcheck_exactc                 ó"   — | j                  «       S r'   rT   r*   s    r   r,   ztest_cummin.<locals>.<lambda>w   ó
   € ¸A¿H¹H¼Jr   r6   ©r   r    r<   rW   r<   rO   c                 ó"   — | j                  «       S r'   rT   r*   s    r   r,   ztest_cummin.<locals>.<lambda>ƒ   rV   r   Ú2001©rD   r   r   ©Úindexr2   rD   ©rC   r    rC   )rC   r    r    r>   )r   r5   r0   rU   r3   rI   rR   r1   Úto_frameÚlocr   rH   ÚpdÚto_datetimer   r4   r   )r   r   r   Úbase_dfÚexpected_minsr7   r9   rJ   s           r   Útest_cumminrk   _   só  € Ø˜aÑ €EØ Ñ"€Gô Ò6Ò=UÑVÓW€GÚ,€Mà	�‰˜Ó	€Bä˜#˜}Ð-Ó.×5Ñ5°eÓ<€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ñ˜& (Ô+Ø�Z‰Z˜¨ˆZÓ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓW€FÜ×Ñ˜& (Ô+ð "€B‡F�FˆAˆqˆ6�3ˆ;ÑØ! A™+€B‡F�FˆAˆqˆ6�3ˆ;ÑØ&-€H‡L�L’˜sÐ"Ñ#Ø '¨!¡€H‡L�L�!�Q�˜�ÑØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ñ˜& (¸Õ=à
�
‰
�3 5ˆ
Ó)×+Ñ+×1Ñ1Ñ2FÓG×PÑPÓRð ô ×Ñ˜& (¸Õ=ð �n‰n˜c 7˜^Ó,€GÜ%'§V¡V€G‡K�K’˜cÐ!Ñ"Ü˜#¤§¡¨¬2¯6©6°1´b·f±f¸aÄÇÁÈÐKÐLÓM€HØ�_‰_˜SÓ!×(Ñ(Ó*€FÜ×Ñ˜& (Ô+à�‰˜¨ˆÓ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓWð ô ×Ñ˜& (Ô+ô 
˜!˜¤2§>¡>°6°(Ó#;Ñ<Ó	=€BÜ”b—n‘n VÓ,°Q°C¸cÔB€Hà�Z‰Z˜‹_˜SÑ!×(Ñ(Ó*€FÜ×Ñ˜8 VÔ,ô 
šªÑ3Ó	4€BØ�Z‰Z˜‹_×Ñ×%Ñ%Ó'€FÜ’i cÔ*€HÜ×Ñ˜6 8Õ,r   ÚmethodrU   Úcummaxr   )ÚUInt64r   r   r6   Úbooleanc                 ó˜  — t        g d¢t        j                  gdz  dœ«      }|d   j                  |«      |d<   |j	                  d«      }t        dt        j                  gdz  i|¬«      } t        || «      «       }t        j                  ||«        t        |d   | «      «       j                  «       }t        j                  ||«       y )NrM   é   rP   rR   rQ   ©r   )	r   r   rH   r5   r0   Úgetattrr3   rI   re   )rl   r   ri   Úgroupedr9   rJ   s         r   Útest_cummin_max_all_nan_columnru   •   s®   € ô Ò6¼b¿f¹f¸XÈ¹\ÑJÓK€GØ˜3‘<×&Ñ& uÓ-€GˆC�LØ�o‰o˜cÓ"€Gä˜#¤§¡˜x¨!™|Ð,°EÔ:€HØ%ŒW�W˜fÓ%Ó'€FÜ×Ñ˜( FÔ+à*ŒW�W˜S‘\ 6Ó*Ó,×5Ñ5Ó7€FÜ×Ñ˜( FÕ+r   c                 óÊ  — | d   }| d   }t        g d¢g d¢dœ«      }g d¢}|j                  |«      }t        d|i«      j                  |«      }|j                  d«      j                  «       }t	        j
                  ||«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||«       ||j                  ddgdf<   ||j                  g d¢df<   |j                  d«      j                  «       }t	        j
                  ||«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||«       |j                  ddi«      }t        j                  |j                  g d¢df<   t        dt        j                  dt        j                  dt        j                  dt        j                  dgi«      }|j                  d«      j                  «       }t	        j
                  ||«       |j                  dd	¬
«      j                  j                  d„ «      j                  «       }t	        j
                  ||«       t        dgt        j                  dg«      dœ«      }t        t        j                  d«      dgd¬«      }|j                  d«      d   j                  «       }t	        j                  ||«       t        g d¢g d¢dœ«      }|j                  d«      j                   j                  «       }t        g d¢d¬«      }t	        j                  ||«       y )Nr   r    rM   rN   rP   )rO   r<   r<   r<   r    rO   rO   rO   rR   rQ   Fr$   c                 ó"   — | j                  «       S r'   ©rm   r*   s    r   r,   ztest_cummax.<locals>.<lambda>±   rV   r   rW   rY   c                 ó"   — | j                  «       S r'   rx   r*   s    r   r,   ztest_cummax.<locals>.<lambda>º   r]   r   r6   r^   r<   rO   c                 ó"   — | j                  «       S r'   rx   r*   s    r   r,   ztest_cummax.<locals>.<lambda>Æ   rV   r   rC   r`   ra   r   rb   rD   rd   )r    rC   rC   )r    rC   r    r>   )r   r5   r0   rm   r3   rI   rR   r1   re   rf   r   rH   rg   rh   r   r4   r   )r   r   r   ri   Úexpected_maxsr7   r9   rJ   s           r   Útest_cummaxr|   ¤   s»  € Ø˜aÑ €EØ Ñ"€Gô Ò6Ò=UÑVÓW€GÚ,€Mà	�‰˜Ó	€Bä˜#˜}Ð-Ó.×5Ñ5°eÓ<€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ñ˜& (Ô+Ø�Z‰Z˜¨ˆZÓ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓW€FÜ×Ñ˜& (Ô+ð "€B‡F�FˆAˆqˆ6�3ˆ;ÑØ&-€H‡L�L’˜sÐ"Ñ#Ø�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ñ˜& (Ô+à
�
‰
�3 5ˆ
Ó)×+Ñ+×1Ñ1Ñ2FÓG×PÑPÓRð ô ×Ñ˜& (Ô+ð �n‰n˜c 7˜^Ó,€GÜ%'§V¡V€G‡K�K’˜cÐ!Ñ"Ü˜#¤§¡¨¬2¯6©6°1´b·f±f¸aÄÇÁÈÐKÐLÓM€HØ�_‰_˜SÓ!×(Ñ(Ó*€FÜ×Ñ˜& (Ô+à�‰˜¨ˆÓ.×0Ñ0×6Ñ6Ñ7KÓL×UÑUÓWð ô ×Ñ˜& (Ô+ô 
˜!˜¤2§>¡>°6°(Ó#;Ñ<Ó	=€BÜ”b—n‘n VÓ,°Q°C¸cÔB€Hà�Z‰Z˜‹_˜SÑ!×(Ñ(Ó*€FÜ×Ñ˜8 VÔ,ô 
šªÑ3Ó	4€BØ�Z‰Z˜‹_×Ñ×%Ñ%Ó'€FÜ’i cÔ*€HÜ×Ñ˜6 8Õ,r   c                  óT  — t        t        d«      D � cg c]  } t        j                  j                  | z   ‘Œ! c} «      }t        d||j                  j                  d«      dœ«      }|j                  d«      }|j                  «       }|ddg   }t        j                  ||«       y c c} w )NrX   rC   zM8[ns]©rQ   rR   ÚCrQ   rR   r   )r   Úrangerg   ÚNaTÚ_valuer   Ú_valuesÚviewr0   rm   r3   rI   )ÚnÚserr7   ÚgbÚresÚexps         r   Ú&test_cummax_i8_at_implementation_boundrŠ   Ø   sˆ   € ô ¬U°1¬XÓ6©X¨”"—&‘&—-‘- !Ó#¨XÑ6Ó
7€CÜ	˜ ¨3¯;©;×+;Ñ+;¸HÓ+EÑFÓ	G€BØ	�‰�C‹€Bà
�)‰)‹+€CØ
ˆc�3ˆZ‰.€CÜ×Ñ˜#˜sÕ#ùò 7s   “$B%)r6   r   r   zgroups,expected_data©rC   rC   rC   )rC   NN©rC   r    rO   ©rC   Nr    )rC   rO   rO   c                 ó  — t        dt        g d¢|¬«      i«      }|j                  «       }|j                  |«      d   } t	        || «      d¬«      }t        ||d¬«      }t        j                  ||«       t        j                  ||«       y )NrD   r�   rr   F©rG   )r   r2   )r   r   Úcopyr0   rs   r3   rI   r4   )	rl   r   ÚgroupsÚexpected_datar7   Úorigr‡   rJ   r9   s	            r   Útest_cummin_max_skipnar”   ä   s{   € ô 
�Cœ¢°EÔ:Ð;Ó	<€BØ�7‰7‹9€DØ	�‰�FÓ	˜CÑ	 €Bà ŒW�R˜Ó ¨Ô.€FÜ�m¨5°sÔ;€Hô ×Ñ˜"˜dÔ#ä×Ñ˜6 8Õ,r   c                 óB  — t        t        j                  ddgg d¢dœ«      }|j                  g d¢«      ddg   } t	        || «      d¬«      }t        t        j                  t        j                  t        j                  gg d¢dœ«      }t        j                  ||«       y )	Nç       @)r–   r–   r–   ra   r‹   rD   r   Fr�   )r   r   rH   r0   rs   r3   rI   )rl   r7   r‡   rJ   r9   s        r   Ú$test_cummin_max_skipna_multiple_colsr—   ý   sz   € ô 
œ"Ÿ&™& # sÐ+²/ÑBÓ	C€BØ	�‰’IÓ	  S˜zÑ	*€Bà ŒW�R˜Ó ¨Ô.€FÜ¤§¡¬¯©´·±Ð7ºoÑNÓO€Hä×Ñ˜& (Õ+r   Úfuncr)   Úcumsumc                 ó\  — t        g d¢g d¢dœ«      }|j                  d«      }d}t        j                  t        |¬«      5   t        || «      ddd	«       d d d «       t        j                  t        |¬«      5   t        || «      d¬
«       d d d «       y # 1 sw Y   ŒAxY w# 1 sw Y   y xY w)Nrd   rŒ   rP   rQ   z+numpy operations are not valid with groupby©ÚmatchrC   r    rO   )Úfoo)r   r0   ÚpytestÚraisesr   rs   )r˜   r7   ÚgÚmsgs       r   Útest_numpy_compatr¢   	  s†   € ô 
šªÑ3Ó	4€BØ
�
‰
�3‹€Aà
7€Cä	�‰Ô.°cÖ	:ØŒ��4Ó˜˜A˜qÔ!÷ 
;ä	�‰Ô.°cÖ	:ØŒ��4Ó˜QÕ÷ 
;Ð	:÷ 
;Ð	:úç	:Ð	:ús   ÁBÁ9B"ÂBÂ"B+z	dtype,valrn   Úuint64)r   l         c                 óÚ   — |t         j                  g}t        ddg|dœ|¬«      }|j                  d«      }|j	                  | «      }t        d|i|¬«      }t        j                  ||«       y )NrC   )Úgrpr   rr   r¥   r   )rg   ÚNAr   r0   Ú	transformr3   rI   )rl   r   ÚvalÚdatar7   rt   rJ   r9   s           r   Ú#test_nullable_int_not_cast_as_floatrª     sd   € ð ”—‘ˆ<€DÜ	˜A˜q˜6¨Ñ-°UÔ	;€BØ�j‰j˜Ó€Gà×Ñ˜vÓ&€FÜ˜#˜t˜¨EÔ2€Hä×Ñ˜& (Õ+r   c                  óœ  — t        ddt        j                  gdt        j                  dgg d¢gg d¢¬«      } t        dt        j                  gt        j                  dgddggdd	g¬«      }| j                  d
«      j	                  «       }t        j                  ||«       | j                  d
d¬«      j	                  «       }t        j                  ||«       d}t        j                  t        |¬«      5  | j                  d
«      j	                  d¬«      }d d d «       | j	                  d¬«      }t        j                  ||«       d}t        j                  t        |¬«      5  | j                  d
«      j                  d¬«      }d d d «       | j                  d¬«      }t        j                  ||«       y # 1 sw Y   Œ¡xY w# 1 sw Y   Œ>xY w)NrC   r    é	   )rO   r<   r¬   r~   )Úcolumnsr<   rR   r   rQ   F)Úas_indexz1DataFrameGroupBy.cumsum with axis=1 is deprecatedr›   )Úaxisz2DataFrameGroupBy.cumprod with axis=1 is deprecated)
r   r   rH   r0   r™   r3   rI   Úassert_produces_warningÚFutureWarningr)   )r7   r9   rJ   r¡   s       r   Útest_cython_api2r²   '  sg  € ô 
�Q˜œ2Ÿ6™6�N Q¬¯©° N²IÐ>ÊÔ	X€BÜ˜1œbŸf™f˜+¬¯©° {°Q¸°FÐ;ÀcÈ3ÀZÔP€HØ�Z‰Z˜‹_×#Ñ#Ó%€FÜ×Ñ˜& (Ô+ð �Z‰Z˜ eˆZÓ,×3Ñ3Ó5€FÜ×Ñ˜& (Ô+ð >€CÜ	×	#Ñ	#¤M¸Ö	=Ø—‘˜C“×'Ñ'¨QÐ'Ó/ˆ÷ 
>à�y‰y˜aˆyÓ €HÜ×Ñ˜& (Ô+à
>€CÜ	×	#Ñ	#¤M¸Ö	=Ø—‘˜C“×(Ñ(¨aÐ(Ó0ˆ÷ 
>à�z‰z˜qˆzÓ!€HÜ×Ñ˜& (Õ+÷ 
>Ð	=ú÷ 
>Ð	=ús   Ã4"F6Å#"GÆ6F?ÇG)(Únumpyr   rž   Úpandas.errorsr   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsÚtdÚpandasrg   r   r   Úpandas._testingÚ_testingr3   ÚfixtureÚint32r   Úfloat32r   r   r:   ÚmarkÚ
skip_ubsanrA   rK   rk   Úparametrizeru   r|   rŠ   r”   r—   r¢   Úskip_if_32bitr   r   rª   r²   © r   r   Ú<module>rÄ      s&  ðÛ Û å 1ß )Ð )ã ÷õ ð €‡�Ø�H‰H�b—h‘h §
¡
¨B¯J©J¸ÀÐKÚPôñ%ó	ð%ò6-ð" ‡�×Ññ1ó ð1ò",ò3-ðl ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×Ñ˜Ò"TÓUñ
,ó Vó 9ð
,ò1-òh	$ð ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×Ñ˜Ò"?Ó@Ø‡�×ÑØâ	’OÐ$Ú	’LÐ!Ú	’OÐ$ðóñ-óó Aó 9ð-ð ‡�×Ñ˜ H¨hÐ#7Ó8ñ,ó 9ð,ð ‡�×Ñ˜ )¨XÐ!6Ó7ñ
 ó 8ð
 ð ×ÑØ‡�×Ñ˜ H¨hÐ#7Ó8Ø‡�×ÑØ�8˜X˜RŸX™X hÓ/×3Ñ3Ð4Ð6JÐKóñ,óó 9ó ð
,ó,r   