Ë
    *V.j75  ã                   ó¤   — d dl mZ d dlmZ d dlZd dlZd dlmZm	Z	m
Z
mZmZmZmZmZ d dlmZ  G d„ d«      Zd„ Zd„ Zd	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zy)é    )Úproduct)Úascii_lowercaseN)Ú	DataFrameÚIndexÚ
MultiIndexÚPeriodÚSeriesÚ	TimedeltaÚ	TimestampÚ
date_rangec                   ó˜  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej*                  j-                  d edd«      D � ��cg c]  }t1        d|d›d�«      ‘Œ c}}}  edd«      D � ��cg c]  }t1        d|d›d�«      ‘Œ c}}}  edd«      D � ��cg c]  }t1        d|d›d�d¬«      ‘Œ c}}}  edd«      D � ��cg c]  }t3        |d¬«      ‘Œ c}}}  edd«      D � ��cg c]  }t5        dd|¬«      ‘Œ c}}} g«      d „ «       Zd!„ Zd"„ Zd#„ Zy$c c}}} w c c}}} w c c}}} w c c}}} w c c}}} w )%ÚTestCountingc                 ó  — t        dgdgdgdgdggdg¬«      }|j                  d«      }|j                  }t        g d¢«      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y )NÚaÚbÚA©Úcolumns©r   é   é   r   é   ©r   Úgroupbyr   r	   ÚtmÚassert_series_equalÚcumcount©ÚselfÚdfÚgÚsgÚexpecteds        údC:\xampp\htdocs\tradingbinance\backend\.venv\Lib\site-packages\pandas/tests/groupby/test_counting.pyÚtest_cumcountzTestCounting.test_cumcount   sq   € Ü˜˜ ˜u s e¨c¨U°S°EÐ:ÀSÀEÔJˆØ�J‰J�s‹OˆØ�S‰Sˆäš/Ó*ˆä
×Ñ˜x¨¯©«Ô6Ü
×Ñ˜x¨¯©«Õ7ó    c                 ó   — t        «       j                  d¬«      }t        t        ¬«      j                  d¬«      }t        d¬«      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y ©Nr   )Úlevel©ÚdtypeÚint64)r   r   r	   Úobjectr   r   r   ©r   ÚgeÚseÚes       r$   Útest_cumcount_emptyz TestCounting.test_cumcount_empty   sg   € Ü‹[× Ñ  qÐ Ó)ˆÜœ&Ô!×)Ñ)°Ð)Ó2ˆô ˜Ô!ˆä
×Ñ˜q "§+¡+£-Ô0Ü
×Ñ˜q "§+¡+£-Õ0r&   c                 ó.  — t        dgdgdgdgdggdgdgdz  ¬«      }|j                  d«      }|j                  }t        g d¢dgdz  ¬«      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y )	Nr   r   r   r   é   ©r   Úindexr   ©r6   r   r   s        r$   Útest_cumcount_dupe_indexz%TestCounting.test_cumcount_dupe_index)   s†   € ÜØˆU�S�E˜C˜5 3 %¨#¨Ð/¸#¸ÀqÀcÈAÁgô
ˆð �J‰J�s‹OˆØ�S‰Sˆäš/°!°°q±Ô9ˆä
×Ñ˜x¨¯©«Ô6Ü
×Ñ˜x¨¯©«Õ7r&   c                 óf  — t        j                  ddgddgddgddgddgg«      }t        dgdgdgdgdggdg|¬«      }|j                  d«      }|j                  }t        g d¢|¬	«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y )
Nr   r   r   r   r   r   r5   r   r7   )	r   Úfrom_tuplesr   r   r   r	   r   r   r   ©r   Úmir    r!   r"   r#   s         r$   Útest_cumcount_mizTestCounting.test_cumcount_mi5   s¥   € Ü×#Ñ# a¨ V¨a°¨V°a¸°V¸aÀ¸VÀaÈÀVÐ$LÓMˆÜ˜˜ ˜u s e¨c¨U°S°EÐ:ÀSÀEÐQSÔTˆØ�J‰J�s‹OˆØ�S‰Sˆäš/°Ô4ˆä
×Ñ˜x¨¯©«Ô6Ü
×Ñ˜x¨¯©«Õ7r&   c                 ó2  — t        dgdgdgdgdggdgdgdz  ¬«      }|j                  g d¢«      }|j                  }t        g d¢dgdz  ¬	«      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y )
Nr   r   r   r   r4   r5   ©r   r   r   r   r   r   r7   r   r   s        r$   Útest_cumcount_groupby_not_colz*TestCounting.test_cumcount_groupby_not_col@   s‡   € ÜØˆU�S�E˜C˜5 3 %¨#¨Ð/¸#¸ÀqÀcÈAÁgô
ˆð �J‰J’Ó'ˆØ�S‰Sˆäš/°!°°q±Ô9ˆä
×Ñ˜x¨¯©«Ô6Ü
×Ñ˜x¨¯©«Õ7r&   c                 ó  — t        dt        d«      i«      }|j                  d«      }|j                  }t	        g d¢«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y )Nr   Úaaabar?   ©r   Úlistr   r   r	   r   r   Úngroupr   s        r$   Útest_ngroupzTestCounting.test_ngroupL   sa   € Ü˜œT '›]Ð+Ó,ˆØ�J‰J�s‹OˆØ�S‰Sˆäš/Ó*ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ó&  — t        dt        d«      i«      }|j                  d«      }|j                  }t	        t        d«      d¬«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y )Nr   Úabcder4   r,   r*   )	r   rD   r   r   r	   Úranger   r   rE   r   s        r$   Útest_ngroup_distinctz!TestCounting.test_ngroup_distinctV   sg   € Ü˜œT '›]Ð+Ó,ˆØ�J‰J�s‹OˆØ�S‰Sˆäœ% ›(¨'Ô2ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ó  — t        ddgdz  i«      }|j                  d«      }|j                  }t        dgdz  «      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y )Nr   r   r4   )r   r   r   r	   r   r   rE   r   s        r$   Útest_ngroup_one_groupz"TestCounting.test_ngroup_one_group`   sg   € Ü˜˜a˜S 1™W�~Ó&ˆØ�J‰J�s‹OˆØ�S‰Sˆä˜1˜# ™'“?ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ó   — t        «       j                  d¬«      }t        t        ¬«      j                  d¬«      }t        d¬«      }t	        j
                  ||j                  «       «       t	        j
                  ||j                  «       «       y r(   )r   r   r	   r-   r   r   rE   r.   s       r$   Útest_ngroup_emptyzTestCounting.test_ngroup_emptyj   sg   € Ü‹[× Ñ  qÐ Ó)ˆÜœ&Ô!×)Ñ)°Ð)Ó2ˆô ˜Ô!ˆä
×Ñ˜q "§)¡)£+Ô.Ü
×Ñ˜q "§)¡)£+Õ.r&   c                 óø   — t        dt        d«      i«      }t        t        d«      «      }t        j                  |j                  |«      j                  «       |j                  |«      j                  «       «       y )Nr   rB   )r   rD   r	   r   r   r   rE   )r   r    Úss      r$   Ú test_ngroup_series_matches_framez-TestCounting.test_ngroup_series_matches_framet   sU   € Ü˜œT '›]Ð+Ó,ˆÜ”4˜“=Ó!ˆä
×Ñ˜rŸz™z¨!›}×3Ñ3Ó5°q·y±yÀ³|×7JÑ7JÓ7LÕMr&   c                 ó,  — t        dt        d«      idgdz  ¬«      }|j                  d«      }|j                  }t	        g d¢dgdz  ¬«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y ©Nr   rB   r   r4   r7   r?   rC   r   s        r$   Útest_ngroup_dupe_indexz#TestCounting.test_ngroup_dupe_indexz   sq   € Ü˜œT '›]Ð+°A°3¸±7Ô;ˆØ�J‰J�s‹OˆØ�S‰Sˆäš/°!°°q±Ô9ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ód  — t        j                  ddgddgddgddgddgg«      }t        dt        d«      i|¬«      }|j	                  d«      }|j
                  }t        g d¢|¬«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y )Nr   r   r   r   rB   r7   r?   )
r   r:   r   rD   r   r   r	   r   r   rE   r;   s         r$   Útest_ngroup_mizTestCounting.test_ngroup_mi„   s”   € Ü×#Ñ# a¨ V¨a°¨V°a¸°V¸aÀ¸VÀaÈÀVÐ$LÓMˆÜ˜œT '›]Ð+°2Ô6ˆØ�J‰J�s‹OˆØ�S‰SˆÜš/°Ô4ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ó0  — t        dt        d«      idgdz  ¬«      }|j                  g d¢«      }|j                  }t	        g d¢dgdz  ¬«      }t        j                  ||j                  «       «       t        j                  ||j                  «       «       y rS   rC   r   s        r$   Útest_ngroup_groupby_not_colz(TestCounting.test_ngroup_groupby_not_colŽ   sr   € Ü˜œT '›]Ð+°A°3¸±7Ô;ˆØ�J‰J’Ó'ˆØ�S‰Sˆäš/°!°°q±Ô9ˆä
×Ñ˜x¨¯©«Ô4Ü
×Ñ˜x¨¯©«Õ5r&   c                 ó`  — t        g d¢dg¬«      }|j                  dg«      }t        g d¢«      }t        g d¢«      }t        j                  ||j
                  dz
  |z
  «       t        j                  ||j                  d¬«      «       t        j                  ||j                  d	¬«      «       y )
N)r   r   r   r   r   r   r   )r   r   r   r   r   )r   r   r   r   r   r   T)Ú	ascendingF)r   r   r	   r   r   ÚngroupsrE   )r   r    r!   rZ   Ú
descendings        r$   Útest_ngroup_descendingz#TestCounting.test_ngroup_descending˜   sˆ   € ÜÒ0¸3¸%Ô@ˆØ�J‰J˜�uÓˆäš?Ó+ˆ	ÜšOÓ,ˆ
ä
×Ñ˜z¨A¯I©I¸©M¸YÑ+FÔGÜ
×Ñ˜y¨!¯(©(¸T¨(Ó*BÔCÜ
×Ñ˜z¨1¯8©8¸e¨8Ó+DÕEr&   c                 ó2  — t        ddgddgddgddgddggddg¬«      }|j                  ddg«      }|j                  «       }|j                  «       }t	        g d¢«      }t	        g d	¢«      }t        j                  ||«       t        j                  ||«       y )
Nr   ÚxÚyr   r   ÚXr   r   r?   )r   r   rE   r   r	   r   r   )r   r    r!   Úg_ngroupÚ
g_cumcountÚexpected_ngroupÚexpected_cumcounts          r$   Útest_ngroup_matches_cumcountz)TestCounting.test_ngroup_matches_cumcount£   s•   € äØ�3ˆZ˜#˜s˜ c¨3 Z°#°s°¸cÀ3¸ZÐHØ˜#�Jô
ˆð �J‰J˜˜S�zÓ"ˆØ—8‘8“:ˆØ—Z‘Z“\ˆ
Ü ¢Ó1ˆÜ"¢?Ó3Ðä
×Ñ˜x¨Ô9Ü
×Ñ˜zÐ+<Õ=r&   c                 ó  — t        t        d«      d¬«      D ]Ü  }t        d|i«      }|j                  dg«      }t	        t        |«      «      }|D �cg c]  }|j                  |«      ‘Œ }}t        |«      D ��cg c]  \  }}|d | j                  |«      ‘Œ }}}t        j                  |j                  «       t        |«      «       t        j                  |j                  «       t        |«      «       ŒÞ y c c}w c c}}w )Nr   é   )Úrepeatr   )r   rI   r   r   ÚsortedÚsetr6   Ú	enumerateÚcountr   r   rE   r	   r   )	r   Úpr    r!   ÚorderÚvalÚngroupdÚiÚ
cumcounteds	            r$   Útest_ngroup_cumcount_pairz&TestCounting.test_ngroup_cumcount_pair²   sÇ   € äœ˜q›¨!×,ˆAÜ˜C ˜8Ó$ˆBØ—
‘
˜C˜5Ó!ˆAäœ3˜q›6“NˆEÙ34Ó5±1¨C�u—{‘{ 3Õ'°1ˆGÐ5Ü9BÀ1¼ÔF¹©v¨q°#˜!˜B˜Q˜%Ÿ+™+ cÕ*¸ˆJÑFä×"Ñ" 1§8¡8£:¬v°g«Ô?Ü×"Ñ" 1§:¡:£<´¸
Ó1CÕDñ -ùò
 6ùÛFs   ÁC7Á9C<c                 ój  — t        dt        j                  j                  d«      j	                  t        d«      d«      i«      }|j                  d|¬«      }d|d<   d|d<   t        |«      D ]Q  \  }\  }}||j                  |j                  df<   t        |j                  «      D ]  \  }}||j                  |df<   Œ ŒS t        j                  t        |d   j                  «      |j                  «       «       t        j                  t        |d   j                  «      |j                  «       «       y )	Nr   r   Úabcdeféd   )ÚsortéÿÿÿÿÚgroup_idÚgroup_index)r   ÚnpÚrandomÚdefault_rngÚchoicerD   r   rl   Úlocr6   r   r   r	   ÚvaluesrE   r   )	r   rx   r    r!   rr   Ú_ÚgroupÚjÚinds	            r$   Ú"test_ngroup_respects_groupby_orderz/TestCounting.test_ngroup_respects_groupby_order¿   sú   € Ü˜œRŸY™Y×2Ñ2°1Ó5×<Ñ<¼TÀ(»^ÈSÓQÐRÓSˆØ�J‰J�s ˆJÓ&ˆØˆˆ:‰Øˆˆ=Ñä& qž\‰MˆA‰z��5Ø./ˆB�F‰F�5—;‘; 
Ð*Ñ+Ü# E§K¡KÖ0‘��3Ø-.�—‘�s˜MÐ)Ò*ñ 1ð *ô
 	×Ñœv b¨¡n×&;Ñ&;Ó<¸a¿h¹h»jÔIÜ
×Ñœv b¨Ñ&7×&>Ñ&>Ó?ÀÇÁÃÕNr&   Údatetimeliker   rh   z2016-05-Ú02dz 20:09:25+00:00z	 20:09:25ÚUTC)ÚtzÚh)ÚunitÚ2Wiá  )ÚfreqÚyearÚmonthc                 óÖ   — t        g d¢|dœ«      }|j                  d«      j                  «       }t        dddgiddg¬	«      }d|j                  _        t        j                  ||«       y )
N)r   r   r   )r_   r`   r_   r`   r   r   r   r   r7   )r   r   rm   r6   Únamer   Úassert_frame_equal)r   r‡   r    Úresr#   s        r$   Útest_count_with_datetimelikez)TestCounting.test_count_with_datetimelikeÍ   s]   € ô š_°<Ñ@ÓAˆØ�j‰j˜‹o×#Ñ#Ó%ˆÜ˜c A q 6˜]°3¸°*Ô=ˆØ!ˆ�‰ÔÜ
×Ñ˜h¨Õ,r&   c                 óR  — t        t        j                  t        j                  gddgddgdœ«      }|j                  ddg«      j                  j                  «       }t        g ddggg g gddg¬«      }t        g |t        j                  d	¬
«      }t        j                  ||d¬«       y )Nr   r   r   r   ©r   ÚBÚCr   r˜   )ÚlevelsÚcodesÚnamesr™   )r6   r+   r’   F)Úcheck_index_type)r   r|   Únanr   r™   rm   r   r	   r,   r   r   )r   r    Úresultr<   r#   s        r$   Ú(test_count_with_only_nans_in_first_groupz5TestCounting.test_count_with_only_nans_in_first_groupá   sŽ   € äœbŸf™f¤b§f¡fÐ-°S¸#°JÀaÈÀVÑLÓMˆØ—‘˜S #˜JÓ'×)Ñ)×/Ñ/Ó1ˆÜ  S¨# JÐ/¸¸B°xÈÈSÀzÔRˆÜ˜" B¬b¯h©h¸SÔAˆÜ
×Ñ˜v xÀ%ÖHr&   c                 óò   — t        g d¢ddt        j                  ddgdœ«      }|j                  dg«      j	                  «       }t        t        g d¢d¬	«      d
g d¢i¬«      }t        j                  ||«       y )N)r   r   r   r   r   r4   rh   r   r   )r   r˜   r˜   )g        g      @g      @g      @©r’   r   )r   r   r   r   )r6   Údata)r   r|   rž   r   rm   r   r   r“   )r   r    r”   r#   s       r$   Ú4test_count_groupby_column_with_nan_in_groupby_columnzATestCounting.test_count_groupby_column_with_nan_in_groupby_columné   sg   € äš_°A°q¼"¿&¹&À!ÀQÐ3GÑHÓIˆØ�j‰j˜#˜Ó×%Ñ%Ó'ˆÜÜÒ,°3Ô7¸sÂLÐ>Qô
ˆô 	×Ñ˜h¨Õ,r&   c                 ó¨  — t        ddd¬«      }t        t        j                  d«      |t        j                  d«      g¬«      }|j	                  d„ «      }|j                  «       }t        t        j                  d«      t        j                  d«      |g¬«      }|j	                  d„ «      }|j                  «       }t        j                  ||«       y )Nz1/1/2012Ú5miné
   )ÚstartrŽ   Úperiodsr7   c                 ó   — | d   dz  dk(  S )Nr   r   r   © ©r_   s    r$   Ú<lambda>z@TestCounting.test_groupby_count_dateparseerror.<locals>.<lambda>÷   ó   € ¨¨!©¨q©°Aªr&   c                 ó   — | d   dz  dk(  S )Nr   r   r«   r¬   s    r$   r­   z@TestCounting.test_groupby_count_dateparseerror.<locals>.<lambda>û   r®   r&   )r   r	   r|   Úaranger   rm   r   r   )r   ÚdrÚserÚgroupedrŸ   r#   s         r$   Ú!test_groupby_count_dateparseerrorz.TestCounting.test_groupby_count_dateparseerrorò   s˜   € Ü˜j¨v¸rÔBˆô ”R—Y‘Y˜r“]¨2¬r¯y©y¸«}Ð*=Ô>ˆØ—+‘+Ñ5Ó6ˆØ—‘“ˆä”R—Y‘Y˜r“]¬2¯9©9°R«=¸"Ð*=Ô>ˆØ—+‘+Ñ5Ó6ˆØ—=‘=“?ˆä
×Ñ˜v xÕ0r&   N)Ú__name__Ú
__module__Ú__qualname__r%   r2   r8   r=   r@   rF   rJ   rL   rN   rQ   rT   rV   rX   r]   rf   rt   r†   ÚpytestÚmarkÚparametrizerI   r   r
   r   r•   r    r¤   r´   )Ú.0rr   r   r_   r
   r   s   000000r$   r   r      sd  „ ò8ò1ò
8ò	8ò
8ò6ò6ò6ò/òNò6ò6ò6ò	Fò>òEòOð ‡[�[×ÑØáCHÈÈAÄ;ÕOÁ;¸aŒY˜ ! C ¨Ð8Õ9À;ÓOÙ=BÀ1Àa¼[ÕI¹[¸ŒY˜ ! C ¨	Ð2Õ3¸[ÓIÙGLÈQÐPQÄ{ÕSÁ{À!ŒY˜ ! C ¨	Ð2°uÖ=À{ÓSÙ-2°1°a¬[Õ9©[¨ŒY�q˜sÖ#¨[Ó9Ù<AÀ!ÀQ¼KÕH¹K°qŒV˜ D°Ö2¸KÓHð	
ó	ñ-ó	ð-òIò-ó1ùôE PùÜIùÜSùÜ9ùÜHs   ÁD)ÂD0Â+D7ÃD>Ã:Er   c                  ó.  — t        t        d«      t        j                  d«      j	                  d«      dœ«      } t        ddgt        ddgd¬	«      d
¬«      }| j                  d«      j                  j                  «       }t        j                  ||«       y )NÚababrh   ztimedelta64[ns])r!   Údeltar   r   r   r!   r¢   r¾   ©r6   r’   )r   rD   r|   r°   Úastyper	   r   r   r¾   rm   r   r   )r    r#   rŸ   s      r$   Ú#test_groupby_timedelta_cython_countrÁ     sw   € Ü	Ü�8‹n¤r§y¡y°£|×':Ñ':Ð;LÓ'MÑNó
€Bô �q˜!�f¤E¨3°¨*¸3Ô$?ÀgÔN€HØ�Z‰Z˜‹_×"Ñ"×(Ñ(Ó*€FÜ×Ñ˜8 VÕ,r&   c                  óÞ  — d} t        d| dz  d¬«      }t        t        j                  j	                  d«      j                  t        t        «      | «      t        j                  j	                  d«      j                  dd| «      t        j                  j	                  d«      j                  | «      j                  d	«      t        j                  j	                  d«      j                  d
d| «      t        j                  j	                  d«      j                  || «      t        j                  j	                  d«      j                  | «      j                  d	«      t        j                  j	                  d«      j                  | «      j                  d	«      t        j                  j	                  d«      j                  || «      t        j                  j	                  d«      j                  |d«      z
  t        j                  j	                  d«      j                  t        t        «      | «      dœ	«      }|j                  j                  g d¢«      D ]Q  }t        j                  |j                  t        j                  j	                  d«      j                  | | dz  «      |f<   ŒS |d   j                  d«      |d<   ddddgfD ]œ  }|j!                  |«      j#                  «       }d}t%        j&                  t(        |¬«      5  |j!                  |«      j+                  t        j"                  «      j                  |d¬«      }d d d «       t%        j,                  |«       Œž y # 1 sw Y   Œ"xY w)Ni €  z
2015-08-30r§   Úmin)r©   rŽ   r   r   r4   r   iöÿÿÿr   )	Ú1stÚ2ndÚ3rdÚ4thÚ5thÚ6thÚ7thÚ8thÚ9th)rÄ   rÅ   rÇ   rÌ   ÚcategoryrÄ   rÅ   z7DataFrameGroupBy.apply operated on the grouping columns)Úmatch)Úaxis)r   r   r|   r}   r~   r   rD   r   ÚintegersÚstandard_normalÚroundr   Údroprž   r€   rÀ   r   rm   r   Úassert_produces_warningÚDeprecationWarningÚapplyr“   )Únr±   r    ÚcolÚkeyÚleftÚmsgÚrights           r$   Ú
test_countrÝ   
  s„  € Ø€AÜ	�L¨!¨r©'¸Ô	>€Bä	ä—9‘9×(Ñ(¨Ó+×2Ñ2´4¼Ó3HÈ!ÓLÜ—9‘9×(Ñ(¨Ó+×4Ñ4°Q¸¸1Ó=Ü—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>×DÑDÀQÓGÜ—9‘9×(Ñ(¨Ó+×4Ñ4°S¸"¸aÓ@Ü—9‘9×(Ñ(¨Ó+×2Ñ2°2°qÓ9Ü—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>×DÑDÀQÓGÜ—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>×DÑDÀQÓGÜ—9‘9×(Ñ(¨Ó+×2Ñ2°2°qÓ9Ü�i‰i×#Ñ# AÓ&×-Ñ-¨b°!Ó4ñ5ä—9‘9×(Ñ(¨Ó+×2Ñ2´4¼Ó3HÈ!ÓLñ	
ó
€Bð �z‰z�‰Ò4Ö5ˆÜCEÇ6Á6ˆ�‰Œr�y‰y×$Ñ$ QÓ'×.Ñ.¨q°!°r±'Ó:¸CÐ?Ò@ð 6ð �5‘	× Ñ  Ó,€B€u�Ià�u˜u e˜nÓ-ˆØ�z‰z˜#‹×$Ñ$Ó&ˆØGˆÜ×'Ñ'Ô(:À#ÖFØ—J‘J˜s“O×)Ñ)¬)¯/©/Ó:×?Ñ?ÀÈ!Ð?ÓLˆE÷ Gä
×Ñ˜d EÕ*ñ .÷ GÐFús   ÌA M#Í#M,	c                  óH  — t        g d¢dt        j                  dgdt        j                  t        j                  ggg d¢¬«      } | j                  d«      j	                  «       }| j                  dd¬	«      j	                  «       }t        dd
gddggddgddg¬«      }d|j
                  _        t        j                  ||j                  «       «       t        j                  ||«       | j                  d«      d   j	                  «       }t        j                  ||d   «       y )N)r   r   Úfoor   Úbarr   r—   r   r   F)Úas_indexr   r   r˜   r™   r5   )r   r|   rž   r   rm   r6   r’   r   r“   Úreset_indexr   )r    Úcount_asÚcount_not_asr#   Úcount_Bs        r$   Útest_count_non_nullsræ   *  sï   € ô 
Ú	˜œBŸF™F EÐ*¨Q´·±¼¿¹Ð,?Ð@Úô
€Bð
 �z‰z˜#‹×$Ñ$Ó&€HØ—:‘:˜c¨E�:Ó2×8Ñ8Ó:€Lä˜1˜a˜& 1 a &Ð)°C¸°:ÀaÈÀVÔL€HØ€H‡N�NÔÜ×Ñ˜,¨×(<Ñ(<Ó(>Ô?Ü×Ñ˜( HÔ-à�j‰j˜‹o˜cÑ"×(Ñ(Ó*€GÜ×Ñ˜7 H¨S¡MÕ2r&   c                  ó:  — t        dgdz  dgdz  z   dgdz  dgdz  z   dœ«      } | j                  d«      j                  j                  «       }t	        ddgt        ddgd¬«      d¬«      }t        j                  ||«       t        dt        j                  t        j                  gdgdz  z   dgdz  dgdz  z   dœ«      } | j                  d«      j                  j                  «       }t	        d	dgt        ddgd¬«      d¬«      }t        j                  ||«       y )
Nr   r   r   r   )r   Úcrè   r¢   r¿   r   )
r   r   r   rm   r	   r   r   r   r|   rž   ©r    rŸ   r#   s      r$   Útest_count_objectrê   >  s   € Ü	˜#˜ ™ c U¨Q¡YÑ.°a°S¸1±WÀ¸sÀQ¹wÑ5FÑGÓ	H€BØ�Z‰Z˜‹_×Ñ×$Ñ$Ó&€FÜ�q˜!�f¤E¨1¨a¨&°sÔ$;À#ÔF€HÜ×Ñ˜6 8Ô,ä	˜#œrŸv™v¤r§v¡vÐ.°#°¸±Ñ:À!ÀÀqÁÈAÈ3ÐQRÉ7ÑARÑSÓ	T€BØ�Z‰Z˜‹_×Ñ×$Ñ$Ó&€FÜ�q˜!�f¤E¨1¨a¨&°sÔ$;À#ÔF€HÜ×Ñ˜6 8Õ,r&   c                  ól  — t        j                  t         j                  j                  d«      j	                  ddd«      t         j                  j                  d«      j	                  ddd«      f«      j                  d«      } t        | g d¢¬«      }t         j                  ||dk(  <   |j                  dd	g«      j                  «       }d
D ]g  }|d   j                  |«      |d<   |d   j                  |«      |d<   |j                  dd	g«      j                  «       }t        j                  ||«       Œi y )Nr   r   r4   )rw   r   Úfloat64)r   r   rè   Údr   rè   rí   )Úfloat32r-   r   r   )r|   Úhstackr}   r~   rÐ   rÀ   r   rž   r   rm   r   r“   )Úvalsr    r#   ÚtrŸ   s        r$   Útest_count_cross_typerò   J  s  € ô �9‰9ä�I‰I×!Ñ! !Ó$×-Ñ-¨a°°HÓ=Ü�I‰I×!Ñ! !Ó$×-Ñ-¨a°°HÓ=ð	
ó÷
 �fˆYÓð 	ô 
�4Ò!5Ô	6€BÜ—&‘&€B€rˆQ�w�KØ�z‰z˜3 ˜*Ó%×+Ñ+Ó-€Hã"ˆØ�S‘'—.‘. Ó#ˆˆ3‰Ø�S‘'—.‘. Ó#ˆˆ3‰Ø—‘˜S #˜JÓ'×-Ñ-Ó/ˆÜ
×Ñ˜f hÕ/ñ	 #r&   c                  óÎ  — t        t        j                  g d¢t        j                  «      t        j                  g d¢t        j                  «      t        j                  g d¢t        j
                  «      t        d«      dœ«      } | j                  d«      j                  «       }t        ddgddgddgdœt        t        d	«      d¬
«      ¬«      }t        j                  ||«       y )N)r   r   r   rw   )r   r   r   é   )rh   r4   rô   é   r½   )r   r   rè   Úgrprö   r   )r   r   rè   Úabr¢   r7   )r   r|   ÚarrayÚint8Úuint32Úint16rD   r   rm   r   r   r“   ré   s      r$   Útest_lower_int_prec_countrü   _  s¦   € Ü	ä—‘š.¬"¯'©'Ó2Ü—‘š,¬¯	©	Ó2Ü—‘š,¬¯©Ó1Ü˜“>ñ		
ó
€Bð �Z‰Z˜Ó×$Ñ$Ó&€FÜØ�!ˆf˜A˜q˜6¨¨A¨Ñ/´u¼TÀ$»ZÈeÔ7Tô€Hô ×Ñ˜& (Õ+r&   c                  ó`  ‡—  G d„ dt         «      Š G ˆfd„d«      } t        t        d«      D �cg c]	  } | «       ‘Œ c}t        d«      dœ«      }|j	                  d«      j                  «       }t        d	d
d
git        t        d«      d¬«      ¬«      }t        j                  ||«       y c c}w )Nc                   ó   — e Zd Zy)úAtest_count_uses_size_on_exception.<locals>.RaisingObjectExceptionN)rµ   r¶   r·   r«   r&   r$   ÚRaisingObjectExceptionrÿ   p  s   „ Ør&   r   c                   ó.   •‡ — e Zd Zddˆ fd„Zˆfd„Zˆ xZS )ú8test_count_uses_size_on_exception.<locals>.RaisingObjectc                 ó0   •— t         ‰| �  «        || _        y ©N)ÚsuperÚ__init__rÛ   )r   rÛ   Ú	__class__s     €r$   r  zAtest_count_uses_size_on_exception.<locals>.RaisingObject.__init__t  s   ø€ Ü‰GÑÔØˆD�Hr&   c                 ó(   •—  ‰| j                   «      ‚r  )rÛ   )r   Úotherr   s     €r$   Ú__eq__z?test_count_uses_size_on_exception.<locals>.RaisingObject.__eq__x  s   ø€ á(¨¯©Ó2Ð2r&   )zI will raise inside Cython)ÚreturnN)rµ   r¶   r·   r  r
  Ú__classcell__)r  r   s   @€r$   ÚRaisingObjectr  s  s   ù„ ö	÷	3ð 	3r&   r  rh   r½   )r   rö   rö   r   r   r÷   r¢   r7   )	Ú	Exceptionr   rI   rD   r   rm   r   r   r“   )r  r‚   r    rŸ   r#   r   s        @r$   Ú!test_count_uses_size_on_exceptionr  o  sŽ   ø€ ô¤ô ÷3ó 3ô 
´5¸´8Ó<±8¨a™-�/°8Ñ<ÄTÈ(Ã^ÑTÓ	U€BØ�Z‰Z˜Ó×$Ñ$Ó&€FÜ˜#  1˜v˜¬e´D¸³JÀUÔ.KÔL€HÜ×Ñ˜& (Õ+ùò =s   ¯B+c                 ó
  — t        j                  d«       t        g d¢t        g d¢| ¬«      dœ«      }|j	                  d«      j                  «       }t        ddit        g d¢d¬	«      ¬
«      }t        j                  ||«       y )NÚpyarrow)r   r   r   )r   r   r   r*   )r   r   r   r   r   r¢   r7   )	r¸   Úimportorskipr   r	   r   rm   r   r   r“   )Úany_string_dtyper    rŸ   r#   s       r$   Útest_count_arrow_string_arrayr  ‚  si   € ä
×Ñ˜	Ô"Ü	Úœf¢_Ð<LÔMÑNó
€Bð �Z‰Z˜‹_×"Ñ"Ó$€FÜ˜#˜q˜¬ªy¸sÔ)CÔD€HÜ×Ñ˜& (Õ+r&   )Ú	itertoolsr   Ústringr   Únumpyr|   r¸   Úpandasr   r   r   r   r	   r
   r   r   Úpandas._testingÚ_testingr   r   rÁ   rÝ   ræ   rê   rò   rü   r  r  r«   r&   r$   Ú<module>r     s[   ðÝ Ý "ã Û ÷	÷ 	ó 	õ ÷j1ñ j1òZ-ò+ò@3ò(	-ò0ò*,ò ,ó&,r&   