Ë
    u™ãj`x  ã                   óx  — d dl Zd dlZd dlZd dlmZ d dlm	Z	 d dl
mc mc mZ d„ Zej                   j#                  deej&                  g«      d„ «       Zd„ Zd„ Zd„ Zd	„ Zd
„ Zd„ Zej                   j#                  d ej6                  dd¬«      ej8                  j:                   ej8                  d«      ej8                  j<                  gej>                  jA                  ej8                  j:                   ej8                  d«      f ej8                  d«      ej8                  j<                  fg«      fg d¢ ej&                   ejB                  ejD                  «      j:                  d  ejB                  ejD                  «      j<                  gd¬«      ej>                  jA                   ejB                  ejD                  «      j:                  d fd  ejB                  ejD                  «      j<                  fg«      f ejF                  dd«       ejF                  d d«       ejF                  dd«      g ej&                   ejF                   ejB                  ejD                  «      j<                   d«       ejF                  d d«       ejF                   ejB                  ejD                  «      j<                  d«      g«      ej>                  jA                   ejF                   ejB                  ejD                  «      j<                   d«       ejF                  d d«      f ejF                  d d«       ejF                   ejB                  ejD                  «      j<                  d«      fg«      fg«      d„ «       Z$d„ Z%ej                   j#                  dg ddfg d¢ddfg«      d„ «       Z&ej                   j#                  d d ejN                  d«       ejP                   ejN                  d«      «      g«      ej                   j#                  d!ejR                  ejT                  g«      d"„ «       «       Z+ej                   j#                  d#d dddd$ejX                  gejX                   d dddd$gejX                   d dddd$ejX                  gg«      d%„ «       Z-d&„ Z.ej                   j#                  d'd(g d)¢d*fd+g d,¢d-fg«      d.„ «       Z/d/„ Z0d0„ Z1ej                   j#                  d1dd+g«      d2„ «       Z2ej                   j#                  d3d(d+g«      d4„ «       Z3d5„ Z4d6„ Z5ej                   j#                  d7d8„ d9„ fd:„ d;„ fg«      d<„ «       Z6d=„ Z7ej                   j#                  d> ejp                  d?«       ejp                  d?«      d@z  g«      dA„ «       Z9ej                   j#                  dBg dC¢«      dD„ «       Z:dE„ Z;dF„ Z<ej                   j#                  dGdHdIidfi dJfdHdKidJfdHdLidMfg«      dN„ «       Z=ej                   j#                  d#g dO¢«      ej                   j#                  dPddg«      dQ„ «       «       Z>ej                   j#                  dRg dS¢dTfg dU¢dTfg dV¢dWfg«      dX„ «       Z?ej                   j#                  dYg dZ¢«      d[„ «       Z@ej                   j#                  d\d]„ d^„ d_„ d`„ g«      da„ «       ZAej                   j#                  dbej„                  ej†                  ej&                  eg«      dc„ «       ZDej                   j#                  dbeej&                  ej†                  ej„                  g«      dd„ «       ZEej                   j#                  ded ej8                  dfdg¬h«      j�                  di«       ej8                  djdg¬h«      j�                  di«       ej8                  dkdg¬h«      j�                  di«       ej8                  dldg¬h«      j�                  di«      gg«      ej                   j#                  dbeej&                  ej†                  ej„                  g«      dm„ «       «       ZGdn„ ZHdo„ ZIej                   j#                  dpg dq¢«      dr„ «       ZJds„ ZKej                   j#                  dedtdug«      ej                   j#                  dvej„                  ej˜                  fej&                  ejš                  feejœ                  fg«      dw„ «       «       ZOej                   j#                  d1g dx¢«      dy„ «       ZPej                   j#                  dedg dz¢g«      ej                   j#                  d*d(d+g«      ej                   j#                  d{d(d+g«      d|„ «       «       «       ZQej                   j#                  d}g d~¢g d¢g d€¢g d�¢d‚dƒgfg d„¢g d…¢g d†¢g d‡¢g dˆ¢fg«      d‰„ «       ZRej                   j#                  d}g d~¢g d¢g dŠ¢g dˆ¢g dŠ¢fg d„¢g d…¢g d‹¢g dˆ¢g d‹¢fg«      dŒ„ «       ZSd�„ ZTdŽ„ ZUd�„ ZVd�„ ZWd‘„ ZXd’„ ZYd“„ ZZd”„ Z[ej                   j#                  d•g d–¢«      d—„ «       Z\d˜„ Z]ej                   j#                  d™g dš¢«      ej                   j#                  d›g dš¢«      dœ„ «       «       Z^ej                   j#                  d™g dš¢«      ej                   j#                  d›g dš¢«      d�„ «       «       Z_dž„ Z`dŸ„ Zad „ Zby)¡é    N)ÚCategoricalDtypec                  óÀ   — t        j                  dd¬«      } t        j                  | dd¬«      }t        j                  g d¢«      }t        j                  ||d¬«       y )	Né   Úint64©Údtypeé   F©Úlabels)é   r   r   r   r   )Úcheck_dtype)ÚnpÚonesÚpdÚcutÚarrayÚtmÚassert_numpy_array_equal)ÚdataÚresultÚexpecteds      úh/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/tests/reshape/test_cut.pyÚtest_simpler   
   sD   € Ü�7‰7�1˜GÔ$€DÜ�V‰V�D˜! EÔ*€Fä�x‰xšÓ(€HÜ×Ñ ¨¸eÖDó    Úfuncc                 ó€  —  | g d¢«      }t        j                  |dd¬«      \  }}t         j                  j                  |j	                  d«      «      }|j                  g d¢«      }t        j                  |d¬«      }t        j                  ||«       t        j                  |t        j                  g d¢«      «       y )N©çš™™™™™É?çffffffö?ç      @çÍÌÌÌÌÌ@çffffff#@çÍÌÌÌÌÌ @é   T©Úretbins)r   r   r   r   é   r   ©Úordered)çü©ñÒMbÈ?g>waïîî
@gúÝè!""@r"   )r   r   ÚIntervalIndexÚfrom_breaksÚroundÚtakeÚCategoricalr   Úassert_categorical_equalÚassert_almost_equalr   r   )r   r   r   ÚbinsÚ	intervalsr   s         r   Ú	test_binsr4      sŠ   € áÒ.Ó/€DÜ—6‘6˜$ ¨4Ô0�L€FˆDä× Ñ ×,Ñ,¨T¯Z©Z¸«]Ó;€IØ—‘Ò1Ó2€IÜ�~‰~˜i°Ô6€Hä×Ñ ¨Ô1Ü×Ñ˜4¤§¡Ò*OÓ!PÕQr   c                  óœ  — t        j                  g d¢«      } t        j                  | ddd¬«      \  }}t        j                  j                  |j                  d«      «      }t        j                  |d¬«      }|j                  g d¢«      }t        j                  ||«       t        j                  |t        j                  g d¢«      «       y )	N©r   r   r    r!   r"   r#   çš™™™™™@r	   T©Úrightr&   r$   r(   )r   r   r   r'   r$   r   r   )r*   r7   çÍÌÌÌÌÌ@çÍÌÌÌÌL@r"   )r   r   r   r   r+   r,   r-   r/   r.   r   r0   r1   ©r   r   r2   r3   r   s        r   Ú
test_rightr=      s�   € Ü�8‰8Ò9Ó:€DÜ—6‘6˜$ ¨°tÔ<�L€FˆDä× Ñ ×,Ñ,¨T¯Z©Z¸«]Ó;€IÜ�~‰~˜i°Ô6€HØ�}‰}Ò2Ó3€Hä×Ñ ¨Ô1Ü×Ñ˜4¤§¡Ò*KÓ!LÕMr   c                  ó   — t        j                  g d¢«      } t        j                  | ddd¬«      \  }}t        j                  j                  |j                  d«      d¬«      }|j                  g d	¢«      }t        j                  |d¬
«      }t        j                  ||«       t        j                  |t        j                  g d¢«      «       y )Nr6   r	   FTr8   r$   Úleft©Úclosed)r   r   r   r'   r$   r   r   r(   )r   r7   r:   r;   g%�•Ck#@)r   r   r   r   r+   r,   r-   r.   r/   r   r0   r1   r<   s        r   Útest_no_rightrB   +   s•   € Ü�8‰8Ò9Ó:€DÜ—6‘6˜$ ¨¸Ô=�L€FˆDä× Ñ ×,Ñ,¨T¯Z©Z¸«]À6Ð,ÓJ€IØ—‘Ò4Ó5€IÜ�~‰~˜i°Ô6€Hä×Ñ ¨Ô1Ü×Ñ˜4¤§¡Ò*KÓ!LÕMr   c                  ó   — t        j                  t        d«      d«      } | }t        j                  t        d«      |j                  ¬«      }t	        j
                  ||«       t         j                  j                  t        j                  | j                  t        j                  d«      «      | j                  d¬«      }t        j                  t        d«      |j                  ¬«      }t	        j
                  ||«       y )Nr   r$   ©r2   éÿÿÿÿT©Ú
categoriesr)   é   )r   r   ÚrangerG   r   r0   r/   Ú
from_codesr   ÚappendÚcodesÚint8)Úcr   r   s      r   Útest_bins_from_interval_indexrO   7   s¬   € Ü
�‰Œu�Q‹x˜Ó€AØ€HÜ�V‰V”E˜!“H 8×#6Ñ#6Ô7€FÜ×Ñ ¨Ô1ä�~‰~×(Ñ(Ü
�	‰	�!—'‘'œ2Ÿ7™7 2›;Ó'°A·L±LÈ$ð )ó €Hô �V‰V”E˜!“H 8×#6Ñ#6Ô7€FÜ×Ñ ¨Õ1r   c                  óÚ  — t        j                  g d¢«      } t        j                  | g d¢¬«      }t        j                  j                  g d¢«      }t        j                  |j                  |«       t        j                  g d¢|j                  ¬«      }t        j                  |j                  |«       t        j                  |j                  t        j                  g d¢d¬«      «       y )	N)	é
   é   é   é   é   é   é   é;   é<   )r   é   é#   éF   rD   ))r   rZ   )rZ   r[   )r[   r\   )rV   é   é2   )r   r   r'   rM   r   )r   r   r   r   r+   Úfrom_tuplesr   Úassert_index_equalrG   r   rL   )ÚagesrN   r   r   s       r   Ú)test_bins_from_interval_index_doc_examplerb   D   s•   € ä�8‰8Ò8Ó9€DÜ
�‰ˆtš/Ô*€AÜ×Ñ×+Ñ+Ò,IÓJ€HÜ×Ñ˜!Ÿ,™,¨Ô1ä�V‰V’L q§|¡|Ô4€FÜ×Ñ˜&×+Ñ+¨XÔ6Ü×Ñ §¡¬b¯h©h²yÈÔ.OÕPr   c                  óÜ   — d} t         j                  j                  g d¢«      }t        j                  t
        | ¬«      5  t        j                  ddg|¬«       d d d «       y # 1 sw Y   y xY w)Nz)Overlapping IntervalIndex is not accepted))r   rQ   )r'   rT   )r	   é   ©Úmatchr   rH   rD   )r   r+   r_   ÚpytestÚraisesÚ
ValueErrorr   )ÚmsgÚiis     r   Ú-test_bins_not_overlapping_from_interval_indexrl   P   sS   € à
5€CÜ	×	Ñ	×	%Ñ	%Ò&AÓ	B€Bä	�‰”z¨Ô	-ñ  Ü
�‰��1ˆv˜BÕ÷ ÷  ñ  ús   ¿A"Á"A+c                  ó    — d} g d¢}t        j                  t        | ¬«      5  t        j                  |g d¢«       d d d «       y # 1 sw Y   y xY w)Nz bins must increase monotonicallyr   re   )çš™™™™™¹?ç      ø?r   rQ   ©rg   rh   ri   r   r   ©rj   r   s     r   Útest_bins_not_monotonicrr   Y   s>   € Ø
,€CÚ)€Dä	�‰”z¨Ô	-ñ (Ü
�‰ˆtÒ&Ô'÷(÷ (ñ (ús   ¢AÁAzx, bins, expectedz
2017-12-31r$   ©Úperiodsz
2018-01-01©rE   r   r   r   r   rE   Únsr   c                 óp   — t        j                  | |«      }t        j                  |j                  |«       y ©N)r   r   r   r`   rG   )Úxr2   r   r   s       r   Ú#test_bins_monotonic_not_overflowingrz   a   s*   € ôh �V‰V�A�t‹_€FÜ×Ñ˜&×+Ñ+¨XÕ6r   c                  ó¨   — d} g d¢}t        j                  t        | ¬«      5  t        j                  |g d¢g d¢¬«       d d d «       y # 1 sw Y   y xY w)Nz9Bin labels must be one fewer than the number of bin edgesr   re   )r   r   rQ   )ÚfooÚbarÚbazr
   rp   rq   s     r   Útest_wrong_num_labelsr   ™   s@   € Ø
E€CÚ)€Dä	�‰”z¨Ô	-ñ ?Ü
�‰ˆt’ZÒ(=Õ>÷?÷ ?ñ ?ús   ¢AÁAz
x,bins,msgr'   zCannot cut empty array)r   r'   r$   ç      à?z#`bins` should be a positive integerc                 ó�   — t        j                  t        |¬«      5  t        j                  | |«       d d d «       y # 1 sw Y   y xY w)Nre   rp   )ry   r2   rj   s      r   Útest_cut_cornerr‚   ¡   s4   € ô 
�‰”z¨Ô	-ñ Ü
�‰ˆq�$Œ÷÷ ñ ús	   œ<¼AÚargÚcut_funcc                 óz   — d}t        j                  t        |¬«      5   || d«       d d d «       y # 1 sw Y   y xY w)Nz!Input array must be 1 dimensionalre   r'   )rg   rh   ri   )rƒ   r„   rj   s      r   Útest_cut_not_1d_argr†   ­   s6   € ð .€CÜ	�‰”z¨Ô	-ñ Ù��aÔ÷÷ ñ ús   ž
1±:r   r	   c                 ó–   — d}t        j                  t        |¬«      5  t        j                  | d¬«       d d d «       y # 1 sw Y   y xY w)Nz?cannot specify integer `bins` when input data contains infinityre   r$   rD   rp   )r   rj   s     r   Útest_int_bins_with_infrˆ   µ   s;   € ð L€CÜ	�‰”z¨Ô	-ñ Ü
�‰ˆt˜!Õ÷÷ ñ ús	   ž?¿Ac                  óB  — d} t        j                  g d¢| ¬«      }t        j                  |ddgd¬«      }t        j                  t        j                  t        j                  t        j                  dt        j                  g| ¬«      }t        j                  ||«       y )Nry   )r   rE   r   r   éýÿÿÿ©Únamer   r   Fr
   )r   ÚSeriesr   r   Únanr   Úassert_series_equal)rŒ   ÚserÚindÚexps       r   Útest_cut_out_of_range_morer“   Ä   si   € à€Dä
�)‰)Ò%¨DÔ
1€CÜ
�&‰&��q˜!�f UÔ
+€Cä
�)‰)”R—V‘VœRŸV™V¤R§V¡V¨Q´·±Ð7¸dÔ
C€CÜ×Ñ˜3 Õ$r   zright,breaks,closedT)çü©ñÒMbP¿ç      Ð?r€   ç      è?r   r9   F)r   r•   r€   r–   gj¼t“ð?r?   c                 ó  — t        j                  t        j                  ddd«      d«      }t        j                  |dd| ¬«      \  }}t        j
                  j                  ||¬«      }t        j                  |j                  |«       y )Nr   g)\�Âõ(ð?rn   r	   T)r&   r9   r@   )
r   ÚtileÚaranger   r   r+   r,   r   r`   rG   )r9   ÚbreaksrA   Úarrr   r2   Ú	ex_levelss          r   Útest_labelsr�   Ï   sj   € ô �'‰'”"—)‘)˜A˜t SÓ)¨1Ó
-€Cä—6‘6˜#˜q¨$°eÔ<�L€FˆDÜ× Ñ ×,Ñ,¨V¸FÐ,ÓC€IÜ×Ñ˜&×+Ñ+¨YÕ7r   c                  óÜ   — d} t        j                  t        j                  j	                  d«      j                  d«      | ¬«      }t        j                  |d«      }|j                  | k(  sJ ‚y )Nr|   r'   éd   r‹   r	   )r   r�   r   ÚrandomÚdefault_rngÚstandard_normalr   rŒ   )rŒ   r�   Úfactors      r   Ú#test_cut_pass_series_name_to_factorr¤   Þ   sR   € Ø€DÜ
�)‰)”B—I‘I×)Ñ)¨!Ó,×<Ñ<¸SÓAÈÔ
M€Cä�V‰V�C˜‹^€FØ�;‰;˜$ÒÐÑr   c                  óä   — t        j                  ddd«      } t        j                  | dd¬«      }t        j                  j                  g d¢«      }t        j                  |j                  |«       y )Nr   g\�Âõ(\ç?ç{®Gáz„?r	   r'   ©Ú	precision)gÖÿ9Ì—G¿g
×£p=
Ç?g
×£p=
×?gHáz®Gá?g
×£p=
ç?)	r   r™   r   r   r+   r,   r   r`   rG   )r›   r   rœ   s      r   Útest_label_precisionr©   æ   sS   € Ü
�)‰)�A�t˜TÓ
"€CÜ�V‰V�C˜ aÔ(€Fä× Ñ ×,Ñ,Ò-OÓP€IÜ×Ñ˜&×+Ñ+¨YÕ7r   r   c                 óT  — t        j                  ddd«      }t         j                  |d d d…<   t        j                  |d| ¬«      }t        j
                  |«      }t        j                  t        j                  |«      t         j                  |«      }t        j                  ||«       y )Nr   r–   r¦   r$   r	   r
   )
r   r™   rŽ   r   r   ÚasarrayÚwhereÚisnar   r1   )r   r›   r   r   s       r   Útest_na_handlingr®   î   ss   € ä
�)‰)�A�t˜TÓ
"€CÜ�v‰v€C‰ˆ!ˆ�Hä�V‰V�C˜ 6Ô*€FÜ�Z‰Z˜Ó€Fä�x‰xœŸ™ ›¤b§f¡f¨fÓ5€HÜ×Ñ˜6 8Õ,r   Úuse_bottleneckc                 óR  — t        j                  d| «      5  dddt        j                  g}t        j                  t        j
                  |«      d«      }t        j
                  t        j                  |d«      «      }t        j                  ||«       d d d «       y # 1 sw Y   y xY w)Nr¯   gš™™™™™ñ?gš™™™™™@gffffff
@r'   )r   Úoption_contextr   rŽ   r   r�   r   r�   )r¯   r   r   r   s       r   Ú%test_cut_series_with_nan_integer_binsr²   ú   s|   € ô
 
×	Ñ	Ð+¨^Ó	<ñ 1Ø�S˜#œrŸv™vÐ&ˆÜ—‘œŸ	™	 $›¨Ó+ˆÜ—9‘9œRŸV™V D¨!›_Ó-ˆÜ
×Ñ˜v xÔ0÷	1÷ 1ñ 1ús   —A=BÂB&c                  óÜ  — t        j                  d«      } t        j                  | d¬«      }t         j                   ddt         j                  g}t        j
                  | |«      }t        j
                  ||«      }t        j                  j                  |«      }t        j                  |j                  |«       |d   t        j                  dt         j                  «      k(  sJ ‚|d   t        j                  t         j                   d«      k(  sJ ‚|d   t        j                  dt         j                  «      k(  sJ ‚|d   t        j                  t         j                   d«      k(  sJ ‚y )NrH   r   r   r'   r	   r   r   )r   r™   r   r�   Úinfr   r+   r,   r   r`   rG   ÚInterval)r   Údata_serr2   r   Ú
result_serÚ
ex_uniquess         r   Útest_inf_handlingr¹     s  € Ü�9‰9�Q‹<€DÜ�y‰y˜ WÔ-€Hä�V‰VˆG�Q˜œ2Ÿ6™6Ð"€DÜ�V‰V�D˜$Ó€FÜ—‘˜ $Ó'€Jä×!Ñ!×-Ñ-¨dÓ3€JÜ×Ñ˜&×+Ñ+¨ZÔ8à�!‰9œŸ™ A¤r§v¡vÓ.Ò.Ð.Ð.Ø�!‰9œŸ™¤R§V¡V G¨QÓ/Ò/Ð/Ð/Ø�a‰=œBŸK™K¨¬2¯6©6Ó2Ò2Ð2Ð2Ø�a‰=œBŸK™K¬¯©¨°Ó3Ò3Ð3Ñ3r   c                  óü   — t         j                  j                  d«      j                  d«      } t	        j
                  | g d¢«      }t	        j                  |«      }| dk  | dkD  z  }t        j                  ||«       y )Nr'   rŸ   ru   rE   r   )	r   r    r¡   r¢   r   r   r­   r   r   )r›   r   ÚmaskÚex_masks       r   Útest_cut_out_of_boundsr½     s`   € Ü
�)‰)×
Ñ
 Ó
"×
2Ñ
2°3Ó
7€CÜ�V‰V�CšÓ$€Fä�7‰7�6‹?€DØ�R‰x˜C !™GÑ$€GÜ×Ñ  gÕ.r   zget_labels,get_expectedc                 ó   — | S rx   © r
   s    r   ú<lambda>rÀ   $  s   € ˜6€ r   c                 óL   — t        j                  dgddgz  z   ddgz   | d¬«      S )NÚMediumr	   ÚSmallÚLargeTrF   )r   r/   r
   s    r   rÀ   rÀ   %  s/   € œ2Ÿ>™>Ø�
˜Q ' ™]Ñ*¨h¸Ð-@Ñ@Ø!Øô€ r   c                 óF   — t         j                  j                  g d¢| «      S )N©r   r   r'   ©r   r/   rJ   r
   s    r   rÀ   rÀ   ,  s   € œ2Ÿ>™>×4Ñ4²YÀÓG€ r   c                 ó\   — t         j                  j                  dgddgz  z   ddgz   | «      S )Nr   r	   r   r'   rÇ   r
   s    r   rÀ   rÀ   -  s,   € œ2Ÿ>™>×4Ñ4°a°S¸1À¸s¹7±]ÀaÈÀVÑ5KÈVÓT€ r   c                 ó�   — g d¢}g d¢}g d¢}t        j                  || | |«      ¬«      }t        j                  | ||«      «       y )N)r   rV   r^   rŸ   ©r^   r   rQ   rR   r]   é   r\   )rÃ   rÂ   rÄ   r
   )r   r   r   r0   )Ú
get_labelsÚget_expectedr2   r›   r   r   s         r   Útest_cut_pass_labelsrÎ      s?   € ò$ €DÚ
%€CÚ)€Fä�V‰V�C˜¡j°Ó&8Ô9€FÜ×Ñ ©°VÓ(<Õ=r   c            	      óÌ   — g d¢} g d¢}t        j                  | d|¬«      }t        j                  | dt        j                  ||d¬«      ¬«      }t        j                  ||«       y )NrÊ   )ÚGoodrÂ   ÚBadr$   r
   TrF   )r   r   r/   r   r0   )r›   r   r   r’   s       r   Útest_cut_pass_labels_compatrÒ   :  sN   € â
%€CÚ&€Fä�V‰V�C˜ 6Ô*€FÜ
�&‰&��a¤§¡¨vÀ&ÐRVÔ WÔ
X€CÜ×Ñ ¨Õ,r   ry   g      &@g    _ Bc                 ó0   — t        j                  | d«       y )Nr'   ©r   r   )ry   s    r   Útest_round_frac_just_worksrÕ   D  s   € ô ‡F�Fˆ1ˆa…Lr   zval,precision,expected))gœ¢#¹ü]Àr$   iŠÿÿÿ)çœ¢#¹ü]@r$   év   )rÖ   r'   r×   )gÝ”	÷~. ?r'   giUMu?c                 ó@   — t        j                  | |¬«      }||k(  sJ ‚y )Nr§   )ÚtmodÚ_round_frac)Úvalr¨   r   r   s       r   Útest_round_fracrÜ   J  s$   € ô ×Ñ˜c¨YÔ7€FØ�XÒÐÑr   c                  ó®  — t        j                  g d¢«      } t        j                  | d«      }t        j                  ddd¬«      j                  d«      }|dxx   dz  cc<   t        j                  t         j                  j                  |d¬	«      j                  g d
¢«      «      j                  t        d¬«      «      }t        j                  ||«       y )N)	r   r   r'   r$   r	   r   rH   é   é   r$   r   rß   r	   )Únumgü©ñÒMb€?r9   r@   )	r   r   r   r   r   r   r'   r'   r'   Tr(   )r   r�   r   r   Úlinspacer-   r+   r,   r.   Úastyper   r   r�   )r�   r   Úexp_binsr   s       r   Útest_cut_return_intervalsrä   Y  s§   € Ü
�)‰)Ò/Ó
0€CÜ�V‰V�C˜‹^€Fä�{‰{˜1˜a QÔ'×-Ñ-¨aÓ0€HØˆQƒK�5ÑƒKä�y‰yÜ
×Ñ×$Ñ$ X°gÐ$Ó>×CÑCÚ'ó	
ó÷ �fÔ dÔ+Ó,ð	 ô
 ×Ñ˜6 8Õ,r   c                  ór  — t        j                  t        j                  d«      «      } t        j                  | dd¬«      \  }}t        j                  t         j
                  j                  g d¢d¬«      j                  d«      «      j                  t        d¬«      «      }t        j                  ||«       y )	Nr	   r'   Tr%   )gú~j¼t“h¿ro   r$   r9   r@   r(   )r   r�   r   r™   r   r+   r,   Úrepeatrâ   r   r   r�   )r�   r   r2   r   s       r   Útest_series_ret_binsrç   h  s†   € ä
�)‰)”B—I‘I˜a“LÓ
!€CÜ—6‘6˜#˜q¨$Ô/�L€FˆDä�y‰yÜ
×Ñ×$Ñ$Ò%5¸gÐ$ÓF×MÑMÈaÓPóç�fÔ dÔ+Ó,ð ô ×Ñ˜6 8Õ,r   z
kwargs,msgÚ
duplicatesÚdropzBin edges must be uniqueÚraiser|   z(invalid value for 'duplicates' parameterc                 óÎ  — g d¢}t        j                  t        j                  g d¢«      g d¢¬«      }|�<t	        j
                  t        |¬«      5  t        j                  ||fi | ¤Ž d d d «       y t        j                  ||fi | ¤Ž}t        j                  |t        j                  t        j                  |«      «      «      }t        j                  ||«       y # 1 sw Y   y xY w)N)r   r'   r	   rH   rQ   rQ   )r   r$   r   rÞ   é	   )ÚaÚbrN   ÚdÚe©Úindexre   )r   r�   r   r   rg   rh   ri   r   Úuniquer«   r   r�   )Úkwargsrj   r2   Úvaluesr   r   s         r   Útest_cut_duplicates_binrö   s  s¬   € ò  €DÜ�Y‰Y”r—x‘x¢Ó0Ò8QÔR€Fà
€Ü�]‰]œ:¨SÔ1ñ 	+Ü�F‰F�6˜4Ñ* 6Ò*÷	+ð 	+ô —‘˜ Ñ/¨Ñ/ˆÜ—6‘6˜&¤"§)¡)¬B¯J©J°tÓ,<Ó"=Ó>ˆÜ
×Ñ˜v xÕ0÷	+ð 	+ús   ÁCÃC$)g      "@g      "Àg        Úlengthc                 óä   — t        j                  | g|z  «      }t        j                  |dd¬«      }t        j                  dg|z  t        j                  ¬«      }t        j                  ||«       y )Nr   Fr
   r   r   )r   r�   r   r   Úintpr   r�   )r   r÷   r�   r   r   s        r   Útest_single_binrú   Š  sT   € ô �)‰)�T�F˜V‘OÓ
$€CÜ�V‰V�C˜ 5Ô)€Fä�y‰y˜!˜˜v™¬R¯W©WÔ5€HÜ×Ñ˜6 8Õ,r   zvalues,threshold)rn   rn   rn   gü©ñÒMbP?)çš™™™™™¹¿rû   rû   )r¦   r¦   r¦   g-Cëâ6?c                 ó^   — t        j                  | dd¬«      \  }}|d   |d   z
  }||k  sJ ‚y )Nr$   Tr%   rE   r   rÔ   )rõ   Ú	thresholdr   r2   Ú	bin_ranges        r   Útest_single_bin_edge_adjustmentrÿ   •  s:   € ô —6‘6˜& !¨TÔ2�L€FˆDà�R‘˜4 ™7Ñ"€IØ�yÒ Ð Ñ r   z#array_1_writeable,array_2_writeable))TT)TF)FFc                 óJ  — t        j                  ddd«      }| |j                  _        t        j                  ddd«      }||j                  _        t        j                  d«      }t	        j
                  t        j                  ||«      t        j                  ||«      «       y )Nr   rŸ   rQ   )r   r™   ÚflagsÚ	writeabler   r0   r   r   )Úarray_1_writeableÚarray_2_writeableÚarray_1Úarray_2Úhundred_elementss        r   Útest_cut_read_onlyr  ¥  sy   € ô
 �i‰i˜˜3 Ó#€GØ/€G‡M�MÔä�i‰i˜˜3 Ó#€GØ/€G‡M�MÔä—y‘y “~ÐÜ×ÑÜ
�‰Ð Ó)¬2¯6©6Ð2BÀGÓ+Lõr   Úconvc                 ó,   — t        j                  | «      S rx   )r   Ú	Timestamp©Úvs    r   rÀ   rÀ   ¹  s   € ”"—,‘,˜q“/€ r   c                 ó,   — t        j                  | «      S rx   )r   Úto_datetimer  s    r   rÀ   rÀ   º  s   € ”"—.‘. Ó#€ r   c                 ó,   — t        j                  | «      S rx   )r   Ú
datetime64r  s    r   rÀ   rÀ   »  s   € ”"—-‘- Ó"€ r   c                 óH   — t        j                  | «      j                  «       S rx   )r   r  Úto_pydatetimer  s    r   rÀ   rÀ   ¼  s   € ”"—,‘,˜q“/×/Ñ/Ó1€ r   c                 óü  — t        j                  d«      t        j                  d«      g}g d¢}t        j                  t        j                  t        j
                  t        j                  |d   «      t        j                  |d   «      «      t        j
                  t        j                  |d   «      t        j                  |d   «      «      g«      «      }|D �cg c]
  } | |«      ‘Œ }}t        j                  t        j                  ||¬«      «      }t        |d   «      t         j                  u r|j                  d«      }|j                  t        d	¬
«      «      }t        j                  ||«       y c c}w )Nz
2012-12-13z
2012-12-15)z
2012-12-12z
2012-12-14z
2012-12-16r   r   r'   rD   zinterval[datetime64[s]]Tr(   )r   r  r   r�   r+   rµ   r  r   Útyperâ   r   r   r�   )r	  r   Úbin_datar   r  r2   r   s          r   Útest_datetime_binr  ¶  s  € ô �M‰M˜,Ó'¬¯©°|Ó)DÐE€DÚ9€Hä�y‰yÜ
×Ñä—‘œBŸL™L¨°!©Ó5´r·|±|ÀHÈQÁKÓ7PÓQÜ—‘œBŸL™L¨°!©Ó5´r·|±|ÀHÈQÁKÓ7PÓQðó	
ó€Hð &Ö&˜‰D��GÐ&€DÐ&Ü�Y‰Y”r—v‘v˜d¨Ô.Ó/€FäˆD�‰Gƒ}œŸ™Ñ%à—?‘?Ð#<Ó=ˆà�‰Ô/¸Ô=Ó>€HÜ×Ñ˜6 8Õ,ùò 's   ÃE9Úboxc                 óF  — t        j                  g d¢«      j                  d| › d�«      } ||«      }t        j                  |dd¬«      \  }}| dk(  rt        j                  g d¢d| › d�¬	«      }nt        j                  g d
¢d| › d�¬	«      }t        j                  g d¢d| › d�¬	«      }t         j
                  j                  ||«      }t        j                  |«      j                  t        d¬«      «      }t        j                  t        j                  |«      |«       y )N)ú
2013-01-01z
2013-01-02z
2013-01-03úM8[ú]r$   Tr%   Ús)z2012-12-31 23:57:08ú2013-01-01 16:00:00ú2013-01-02 08:00:00r   )ú2012-12-31 23:57:07.200000r  r  )r  r  ú2013-01-03 00:00:00r(   )r   r  râ   r   ÚDatetimeIndexr+   Úfrom_arraysr�   r   r   r�   )	Úunitr  r   r   Ú_r?   r9   Úexp_intervalsr   s	            r   Útest_datetime_cutr'  ×  s  € ô
 �>‰>ÒDÓE×LÑLØ
ˆdˆV�1ˆó€Dñ ˆt‹9€DÜ—‘�t˜Q¨Ô-�I€FˆAàˆs‚{ô ×ÑÚQØ˜�v˜Q�-ô
‰ô
 ×Ñòð
 ˜�v˜Q�-ô
ˆô ×ÑÚMØ�D�6˜ˆmô€Eô
 ×$Ñ$×0Ñ0°°uÓ=€MÜ�y‰y˜Ó'×.Ñ.Ô/?ÈÔ/MÓN€HÜ×Ñœ2Ÿ9™9 VÓ,¨hÕ7r   c                 óš  —  | t        j                  d«      t        j                  d«      t        j                  d«      t        j                  d«      g«      }t        j                  t        j                  ddd¬«      «      }d	}t	        j
                  t        |¬
«      5  t        j                  ||«       d d d «       y # 1 sw Y   y xY w)Nú2013-01-01 04:57:07.200000ú2013-01-01 21:00:00ú2013-01-02 13:00:00ú2013-01-03 05:00:00Ú20130101r$   ú
US/Eastern)rt   Útzz9Cannot use timezone-naive bins with timezone-aware valuesre   )r   r  r�   Ú
date_rangerg   rh   ri   r   )r  r2   r�   rj   s       r   Ú+test_datetime_tz_cut_mismatched_tzawarenessr1  ü  sš   € ñ ä�L‰LÐ5Ó6Ü�L‰LÐ.Ó/Ü�L‰LÐ.Ó/Ü�L‰LÐ.Ó/ð		
ó€Dô �)‰)”B—M‘M *°a¸LÔIÓ
J€Cà
E€CÜ	�‰”z¨Ô	-ñ Ü
�‰ˆs�DÔ÷÷ ñ ús   Â!CÃC
r2   r)  ÚUTC©r/  r.  r*  r+  r,  c                 ó*  — d}t        j                  t        j                  dd|d¬«      «      }t        | t        «      s || «      } t        j
                  || «      }t        j                  t        j                  t        j                  d|¬«      t        j                  d|¬«      «      t        j                  t        j                  d|¬«      t        j                  d	|¬«      «      t        j                  t        j                  d	|¬«      t        j                  d
|¬«      «      g«      }t        | t        «      r|j                  d«      }t        j                  |«      j                  t        d¬«      «      }t        j                  ||«       y )Nr.  r-  r$   rv   ©rt   r/  r$  r   r3  r  r  r!  z$interval[datetime64[ns, US/Eastern]]Tr(   )r   r�   r0  Ú
isinstanceÚintr   r+   rµ   r  râ   r   r   r�   )r2   r  r/  r�   r   rk   r   s          r   Útest_datetime_tz_cutr8    s)  € ð" 
€BÜ
�)‰)”B—M‘M *°a¸BÀTÔJÓ
K€Cä�dœCÔ Ù�4‹yˆä�V‰V�C˜Ó€FÜ	×	Ñ	ä�K‰KÜ—‘Ð9¸bÔAÜ—‘Ð2°rÔ:óô �K‰KÜ—‘Ð2°rÔ:Ü—‘Ð2°rÔ:óô �K‰KÜ—‘Ð2°rÔ:Ü—‘Ð2°rÔ:óð	
ó
€Bô  �$œÔà�Y‰YÐ=Ó>ˆÜ�y‰y˜‹}×#Ñ#Ô$4¸TÔ$BÓC€HÜ×Ñ˜6 8Õ,r   c                  óÄ   — d} t        j                  t        | ¬«      5  t        j                  t        j
                  dd¬«      g d¢¬«       d d d «       y # 1 sw Y   y xY w)Nz bins must be of datetime64 dtypere   r-  r$   rs   ©r   r'   r	   rD   )rg   rh   ri   r   r   r0  ©rj   s    r   Útest_datetime_nan_errorr<  =  sG   € Ø
,€Cä	�‰”z¨Ô	-ñ EÜ
�‰Œr�}‰}˜Z°Ô3º)ÕD÷E÷ Eñ Eús   ž/AÁAc                  ó„  — t        j                  t        j                  dd¬«      t        j                  dd¬«      ¬«      } | j                  j	                  «       }t        j                  |t        j                  dg«      «       | j	                  «       }t        j                  |t        j                  g d¢«      «       y )	NÚ20130102r   rs   r-  r'   rD   F)FTTTT)	r   r   r0  rG   r­   r   r   r   r   )r   r»   s     r   Útest_datetime_nan_maskr?  D  s‚   € Ü�V‰VÜ
�‰�j¨!Ô,´2·=±=ÀÐUVÔ3Wô€Fð ×Ñ×!Ñ!Ó#€DÜ×Ñ ¤b§h¡h°¨wÓ&7Ô8à�;‰;‹=€DÜ×Ñ ¤b§h¡hÒ/NÓ&OÕPr   r/  )Nr2  z
US/Pacificc                 ó¸  — t        j                  t        j                  dd| |¬«      «      }t        j                  |dd¬«      \  }}t        j                  ||«      }t	        j
                  ||«       |dk(  rt        j                  g d¢d	|› d
�¬«      }nt        j                  g d¢d	|› d
�¬«      }|j                  | «      }t	        j                  ||«       y )NÚ20180101r$   r5  r'   Tr%   r  )z2017-12-31 23:57:08ú2018-01-02 00:00:00ú2018-01-03 00:00:00r  r  r   )z2017-12-31 23:57:07.200000rB  rC  )	r   r�   r0  r   r   r�   r"  Útz_localizer`   )r/  r$  r�   r   Úresult_binsr   Úexpected_binss          r   Útest_datetime_cut_roundtriprG  P  sÅ   € ô �)‰)”B—M‘M *°a¸BÀTÔJÓ
K€CÜŸ&™&  a°Ô6Ñ€FˆKä�v‰v�c˜;Ó'€HÜ×Ñ˜6 8Ô,àˆs‚{ô ×(Ñ(ÚQØ˜�v˜Q�-ô
‰ô
 ×(Ñ(òð
 ˜�v˜Q�-ô
ˆð "×-Ñ-¨bÓ1€MÜ×Ñ˜+ }Õ5r   c                  ó@  — t        j                  t        j                  dd¬«      «      } t        j                  | dd¬«      \  }}t        j                  | |«      }t	        j
                  ||«       t        j                  g d¢«      }t	        j                  ||«       y )NÚ1dayr$   rs   r'   Tr%   )z0 days 23:57:07.200000z2 days 00:00:00z3 days 00:00:00)r   r�   Útimedelta_ranger   r   r�   ÚTimedeltaIndexr`   )r�   r   rE  r   rF  s        r   Útest_timedelta_cut_roundtriprL  p  sy   € ä
�)‰)”B×&Ñ& v°qÔ9Ó
:€CÜŸ&™&  a°Ô6Ñ€FˆKä�v‰v�c˜;Ó'€HÜ×Ñ˜6 8Ô,ä×%Ñ%ÚHó€Mô ×Ñ˜+ }Õ5r   rH   rÞ   zbox, comparec                 óª   —  |g d¢dz  «      } |g d¢dz  «      }t        j                  || d¬«      }t        j                  || d¬«      } |||«       y )N)r   r   r   r   r   rQ   )FTTFTré   )rè   rÔ   )r2   r  ÚcompareÚdata_expectedÚdata_resultr   r   s          r   Útest_cut_bool_coercion_to_intrQ  ~  sQ   € ñ š¨"Ñ,Ó-€MÙÒ6¸Ñ;Ó<€KÜ�v‰v�m T°fÔ=€HÜ�V‰V�K °&Ô9€FÙˆF�HÕr   )r|   r   Tc                 ó®   — t        d«      }d}t        j                  t        |¬«      5  t	        j
                  |d| ¬«       d d d «       y # 1 sw Y   y xY w)Nr   zJBin labels must either be False, None or passed in as a list-like argumentre   r	   r
   )rI   rg   rh   ri   r   r   )r   rõ   rj   s      r   Útest_cut_incorrect_labelsrS  �  sE   € ô �1‹X€FØ
V€CÜ	�‰”z¨Ô	-ñ )Ü
�‰ˆv�q Õ(÷)÷ )ñ )ús   ©AÁA)r   r   rR   Úinclude_lowestc                 óÈ  — t         j                  j                  d«      j                  ddd¬«      j	                  t
        «      }t         j                  |d d d…<   |j	                  t        «      }t        j                  |d d d…<   t        j                  t        j                  |d¬«      | ||¬«      }t        j                  || ||¬«      }t        j                  ||«       y )	Nr'   r   rQ   r^   )ÚsizeÚInt64r   )r9   rT  )r   r    r¡   Úintegersrâ   ÚfloatrŽ   Úobjectr   ÚNAr   r   r   r0   )r2   r9   rT  rí   rî   r   r   s          r   Útest_cut_nullable_integerr\  ™  s­   € ô 	�	‰	×Ñ˜aÓ ×)Ñ)¨!¨R°bÐ)Ó9×@Ñ@ÄÓG€AÜ�V‰V€A�cˆ€c�FØ	�‰”Ó€AÜ�U‰U€A�cˆ€c�FÜ�V‰VÜ
�‰�˜'Ô" D°Ànô€Fô �v‰v�a˜ U¸>ÔJ€HÜ×Ñ ¨Õ1r   z3data, bins, labels, expected_codes, expected_labels)rR   é   é   )rd   é   rZ   r]   )ÚAÚBr`  )r   r   r   r`  ra  )r   r$   r   ©r   r'   r	   rH   rß   )r'   r   r   r'   )r'   r   r   rÆ   c                 ó¦   — t        j                  | ||d¬«      }t         j                  j                  ||d¬«      }t	        j
                  ||«       y ©NF©r2   r   r)   rF   ©r   r   r/   rJ   r   r0   ©r   r2   r   Úexpected_codesÚexpected_labelsr   r   s          r   Útest_cut_non_unique_labelsrj  ¨  óJ   € ô �V‰V�D˜t¨F¸EÔB€FÜ�~‰~×(Ñ(Ø ?¸Eð )ó €Hô ×Ñ ¨Õ1r   )ÚCra  r`  )r$   r   r   r'   c                 ó¦   — t        j                  | ||d¬«      }t         j                  j                  ||d¬«      }t	        j
                  ||«       y rd  rf  rg  s          r   Útest_cut_unordered_labelsrn  ¸  rk  r   c                  ó    — d} t        j                  t        | ¬«      5  t        j                  ddgg d¢d¬«       d d d «       y # 1 sw Y   y xY w)Nz.'labels' must be provided if 'ordered = False're   r€   r$   rÆ   F)r2   r)   rp   r;  s    r   Ú3test_cut_unordered_with_missing_labels_raises_errorrp  È  s>   € à
:€CÜ	�‰”z¨Ô	-ñ 8Ü
�‰��Qˆxši°Õ7÷8÷ 8ñ 8ús   žAÁAc                  ó  — t        j                  g d¢«      } t        j                  g d¢«      }t        j                  g d¢«      }t        j                  | ||d¬«      }t        j                  g d¢d¬«      }t        j                  ||«       y )	N)r   r'   r$   r	   r   )r   r'   r	   rH   )rí   rî   rN   Fre  )rí   rí   rî   rî   rN   Úcategoryr   )r   r�   r   r   r�   )r�   r2   r   r   r   s        r   Ú%test_cut_unordered_with_series_labelsrs  Ï  sa   € ä
�)‰)’OÓ
$€CÜ�9‰9’\Ó"€DÜ�Y‰Y’Ó'€FÜ�V‰V�C˜d¨6¸5ÔA€FÜ�y‰yÒ2¸*ÔE€HÜ×Ñ˜6 8Õ,r   c            	      ó’  — t        j                  dt        j                  j	                  d«      j                  ddd«      i«      } t        ddd«      D �cg c]  }|› d|dz   › �‘Œ }}t        j                  d	«      5  t        j                  | j                  t        dd
d«      d	|¬«      | d<   d d d «       y c c}w # 1 sw Y   y xY w)NÚvaluer'   r   rŸ   r]   rQ   z - rì   Féi   )r9   r   Úgroup)r   Ú	DataFramer   r    r¡   rX  rI   r   Úassert_produces_warningr   ru  )ÚdfÚir   s      r   Útest_cut_no_warningsr|  Ù  sµ   € Ü	�‰�w¤§	¡	× 5Ñ 5°aÓ 8× AÑ AÀ!ÀSÈ"Ó MÐNÓ	O€BÜ(-¨a°°bÓ(9Ö: 1���3�q˜1‘u�gÒÐ:€FÐ:Ü	×	#Ñ	# EÓ	*ñ VÜ—f‘f˜RŸX™X¤u¨Q°°RÓ'8ÀÈfÔUˆˆ7‰÷Vð Vùò ;÷Vð Vús   ÁB8Á=2B=Â=Cc            	      ó”  — t        j                  t        j                  ddd¬«      gdz  t        j                  ddd¬«      t        j                  ddd¬«      gz   g d¢d¬	«      j                  j	                  «       } t        j                  g d¢g d¢¬
«      }t        j
                  |g d¢d¬«      }t        j                  || «       y )Nr”   r'   r9   r@   r$   r	   )r   r   r'   r$   r   rr  )rò   r   rñ   r:  T)r2   rT  )r   r�   rµ   ÚcatÚ
as_orderedr   r   r�   )r   r�   r   s      r   Ú.test_cut_with_duplicated_index_lowest_includedr€  à  sš   € ä�y‰yÜ	�‰�V˜Q wÔ	/Ð0°1Ñ4Ü�;‰;�q˜! GÔ,¬b¯k©k¸&À!ÈGÔ.TÐ
Uñ	VâØô	÷
 
�c�*‰*‹,ð ô �)‰)’Oª?Ô
;€CÜ�V‰V�Cši¸Ô=€FÜ×Ñ˜6 8Õ,r   c                  óú  — t        j                  t        d«      «      } t        j                  | d«      j	                  «       j                  d«      }t        j                  | d«      j	                  «       j                  d«      }t        j                  ||dœ«      }t        j                  t        j                  ddd¬«      t        j                  dd	d¬«      t        j                  d	d
d¬«      t        j                  d
dd¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  ddd¬«      t        j                  ddd¬«      g
d¬«      }t        j                  dgdz  t        j                  gdz  z   t        j                  gdz  dgdz  z   dœ|¬«      }t        j                  ||«       y )NrŸ   rQ   r   )Ú1Ú2gòÒMbX¹¿gÍÌÌÌÌÌ#@r9   r@   gÍÌÌÌÌÌ3@g33333³=@gÍÌÌÌÌÌC@g     ÀH@g33333³M@g33333SQ@gÍÌÌÌÌÌS@gfffffFV@éc   Tr(   rñ   )r   r�   rI   r   Úvalue_countsÚheadÚtailrx  ÚCategoricalIndexrµ   r   rŽ   r   Úassert_frame_equal)r�   Úser1Úser2r   rò   r   s         r   Ú*test_cut_with_nonexact_categorical_indicesrŒ  î  s  € ô �)‰)”E˜#“JÓ
€CÜ�6‰6�#�r‹?×'Ñ'Ó)×.Ñ.¨qÓ1€DÜ�6‰6�#�r‹?×'Ñ'Ó)×.Ñ.¨qÓ1€DÜ�\‰\ ¨4Ñ0Ó1€Fä×Ñä�K‰K˜ ¨GÔ4Ü�K‰K˜˜T¨'Ô2Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜d¨7Ô3Ü�K‰K˜˜b¨Ô1ð	
ð ô€Eô  �|‰|Øˆd�Q‰hœ"Ÿ&™&˜ A™Ñ%¬R¯V©V¨H°q©L¸B¸4À!¹8Ñ,CÑDÈEô€Hô ×Ñ˜( FÕ+r   c                  ó2  — t        j                  d«      ft        j                  d«      ft        j                  d«      fg} t        j                  g d¢g d¢| ¬«      }t         j                  j	                  g d¢| d¬	«      }t        j                  ||«       y )
NrQ   r]   rË   )r'   r	   rH   )r   r$   r   rÞ   )r2   r   rÆ   Tr(   )r   r  r   r/   rJ   r   r0   )r   r   r   s      r   Ú$test_cut_with_timestamp_tuple_labelsrŽ    so   € ä�|‰|˜BÓÐ!¤B§L¡L°Ó$4Ð#6¼¿¹ÀbÓ9IÐ8KÐL€FÜ�V‰V’I¢L¸Ô@€Fä�~‰~×(Ñ(ª°FÀDÐ(ÓI€HÜ×Ñ ¨Õ1r   c                  ó‚  — t        j                  t        j                  d«      t        j                  d«      d¬«      } t        j                  t        j                  t        j                  d«      g«      | ¬«      }t         j
                  j                  dg| d¬	«      }t        j                  |j                  |«       y )
Nz
2022-02-25z
2022-02-27Ú1D)Úfreqz
2022-02-26rD   r   Tr(   )
r   Úinterval_ranger  r   r�   r/   rJ   r   r0   r   )r2   r   r   s      r   Ú$test_cut_bins_datetime_intervalindexr“    sƒ   € ä×ÑÜ
�‰�\Ó"¤B§L¡L°Ó$>ÀTô€Dô �V‰V”B—I‘IœrŸ|™|¨LÓ9Ð:Ó;À$ÔG€FÜ�~‰~×(Ñ(¨!¨¨d¸DÐ(ÓA€HÜ×Ñ §¡¨hÕ7r   c            
      ól  — t        j                  dddddt         j                  ddgd¬	«      } g d
¢}t         j                  j	                  |«      }t        j                  t         j
                  j                  g d¢|d¬«      «      }t        j                  | |¬«      }t        j                  ||«       y )Nr   r   r'   r$   r	   rH   rÞ   rW  r   rb  )rE   r   r   r   r   rE   r'   r$   Tr(   rD   )
r   r�   r[  r+   r,   r/   rJ   r   r   r�   )Úseriesr2   r3   r   r   s        r   Útest_cut_with_nullable_int64r–  !  s�   € ä�Y‰Y˜˜1˜a  A¤r§u¡u¨a°Ð3¸7ÔC€FÚ€DÜ× Ñ ×,Ñ,¨TÓ2€Iä�y‰yÜ
�‰×!Ñ!Ò"<¸iÐQUÐ!ÓVó€Hô �V‰V�F Ô&€Fä×Ñ˜6 8Õ,r   rA   )r?   r9   ÚbothÚneitherc                 ó(  — t         j                  j                  g d¢| ¬«      }g d¢}t        j                  ||¬«      }|j	                  |«      }t        j                  |j                  |j                  |j                  j                  «      «       y )N©)r   r   )r'   r$   )r	   r   r@   )g      à¿r   r€   r   ro   r'   r    r$   ç      @r	   ç      @r   g      @rD   )
r   r+   r_   r   Úget_indexerr   r   rL   râ   r   )rA   r2   r   r   rh  s        r   Útest_cut_intervalindex_closedrž  0  sp   € ô ×Ñ×'Ñ'Ò(@ÈÐ'ÓP€DÚA€DÜ�V‰V�D˜tÔ$€Fð ×%Ñ% dÓ+€NÜ×Ñ §¡¨n×.CÑ.CÀFÇLÁL×DVÑDVÓ.WÕXr   c                  ó:  — t         j                  j                  g d¢«      } dddddt        j                  g}t        j
                  || ¬«      }t        j                  g d¢|j                  j                  ¬	«      }t        j                  |j                  |«       y )
Nrš  r€   ro   r    r›  rœ  rD   )r   rE   r   rE   r'   rE   r   )r   r+   r_   r   rŽ   r   r   rL   r   r   r   ©r2   r   r   rh  s       r   Ú test_cut_intervalindex_with_gapsr¡  =  sn   € ä×Ñ×'Ñ'Ò(@ÓA€DØ��c˜3 ¤R§V¡VÐ,€DÜ�V‰V�D˜tÔ$€Fä—X‘XÒ3¸6¿<¹<×;MÑ;MÔN€NÜ×Ñ §¡¨nÕ=r   Ú	bins_unit)r  ÚmsÚusrv   Ú	data_unitc                 óÐ  — t        j                  ddd¬«      j                  |«      }t         j                  j	                  |d¬«      }t        j
                  t        j                  ddd¬«      j                  | «      «      }t        j                  ||¬	«      }t        j
                  t         j                  j                  g d
¢|d¬«      «      }t        j                  ||«       y )Nz0 daysr	   Ú7D©rt   r‘  r?   r@   r$   Ú10DrD   rÆ   Tr(   )r   rJ  Úas_unitr+   r,   r�   r   r/   rJ   r   r�   ©r¥  r¢  rš   r2   r�   r   r   s          r   Ú0test_cut_timedelta_intervalindex_mismatched_unitr¬  G  s¯   € ô
 ×Ñ °!¸$Ô?×GÑGÈ	ÓR€FÜ×Ñ×'Ñ'¨°vÐ'Ó>€DÜ
�)‰)Ü
×Ñ˜8¨Q°UÔ;×CÑCÀIÓNó€Cô �V‰V�C˜dÔ#€Fä�y‰yœŸ™×2Ñ2²9¸dÈDÐ2ÓQÓR€HÜ×Ñ˜6 8Õ,r   c                 óÐ  — t        j                  ddd¬«      j                  |«      }t         j                  j	                  |d¬«      }t        j
                  t        j                  ddd¬«      j                  | «      «      }t        j                  ||¬	«      }t        j
                  t         j                  j                  g d
¢|d¬«      «      }t        j                  ||«       y )Nr  r	   r§  r¨  r?   r@   r$   r©  rD   rÆ   Tr(   )r   r0  rª  r+   r,   r�   r   r/   rJ   r   r�   r«  s          r   Ú/test_cut_datetime_intervalindex_mismatched_unitr®  X  s«   € ô �]‰]˜<°¸Ô>×FÑFÀyÓQ€FÜ×Ñ×'Ñ'¨°vÐ'Ó>€DÜ
�)‰)Ü
�‰�l¨A°EÔ:×BÑBÀ9ÓMó€Cô �V‰V�C˜dÔ#€Fä�y‰yœŸ™×2Ñ2²9¸dÈDÐ2ÓQÓR€HÜ×Ñ˜6 8Õ,r   c                  ó,  — t        j                  t        j                  ddg«      «      } t        j                  | j                  d¬«      }|j
                  }t         j                  j                  ddg|d¬«      }t        j                  ||dd¬	«       y )
Nz2023-10-06 12:00:00+0000z2023-10-07 12:00:00+0000r'   rD   r   r   TrF   )r   Úcheck_category_order)
r   r�   r  r   r   rG   r/   rJ   r   r0   )r�   r   rG   r   s       r   Ú)test_cut_datetime_array_no_attributeerrorr±  h  s{   € ä
�)‰)Ü
�‰Ð2Ð4NÐOÓPó€Cô �V‰V�C—I‘I AÔ&€Fà×"Ñ"€JÜ�~‰~×(Ñ(¨!¨Q¨¸JÐPTÐ(ÓU€Hä×ÑØ� dÀör   c                  óJ  — t         j                  j                  t        ddd«      dd¬«      } dt        j
                  dg}t        j                  || «      }t	        j                  g d	¢|j                  j                  ¬
«      }t        j                  |j                  |«       y )Nr   éf   r   r?   zinterval[int64])rA   r   g333333ó?gffffff$@)r   rE   rQ   r   )r   r+   r,   rI   r   rŽ   r   r   rL   r   r   r   r   s       r   Ú5test_cut_int64_intervalindex_more_bins_than_leaf_sizer´  x  s€   € ô ×Ñ×'Ñ'Üˆa��aÓ Ð/@ð (ó €Dð ”—‘˜Ð€DÜ�V‰V�D˜$Ó€Fä—X‘Xšk°·±×1CÑ1CÔD€NÜ×Ñ §¡¨nÕ=r   c                  óÔ  — t        j                  t        j                  g d¢«      «      } t        j                  | d   | d   «      }t        j                  | |«      }t        j                  g d¢|j                  j                  j                  ¬«      }t        j                  |j                  j                  j                  «       |«       t        j                  | j                  «       |«      }t        j                  |j                  |«       t        j                  t        | «      t        j                  | d   | d   «      «      }t        j                  |j                  |«       y )N)z
2000-01-01ú
2000-01-02r¶  z
2000-01-03r   r$   )rE   r   r   r   r   )r   r�   r  r’  r   r   r   r~  rL   r   r   r   Úto_numpyÚlistr0  )r�   r2   r   rh  Ú
result_arrÚresult_lists         r   Ú0test_cut_datetime_series_with_intervalindex_binsr»  †  sý   € ô �)‰)Ü
�‰ÒOÓPó€Cô ×Ñ˜S ™V S¨¡VÓ,€DÜ�V‰V�C˜Ó€Fô —X‘Xšm°6·:±:×3CÑ3C×3IÑ3IÔJ€NÜ×Ñ §
¡
× 0Ñ 0× 9Ñ 9Ó ;¸^ÔLô —‘˜Ÿ™›¨Ó-€JÜ×Ñ 
× 0Ñ 0°.ÔAô —&‘&œ˜c›¤B§M¡M°#°a±&¸#¸a¹&Ó$AÓB€KÜ×Ñ × 1Ñ 1°>ÕBr   )cÚnumpyr   rg   Úpandasr   Úpandas._testingÚ_testingr   Úpandas.api.typesr   Úpandas.core.reshape.tileÚcoreÚreshaper˜   rÙ   r   ÚmarkÚparametrizer¸  r   r4   r=   rB   rO   rb   rl   rr   r0  r  ÚminÚmaxr+   r_   Úiinfor   Útimedelta64rz   r   r‚   Úeyerx  r   Úqcutr†   r´   rˆ   r“   r�   r¤   r©   r®   r²   r¹   r½   rÎ   rÒ   r™   rÕ   rÜ   rä   rç   rö   rú   rÿ   r  r  r�   ÚIndexr'  r1  Ú
tz_convertr8  r<  r?  rG  rL  r�   r0   Úassert_equalrQ  rS  r\  rj  rn  rp  rs  r|  r€  rŒ  rŽ  r“  r–  rž  r¡  r¬  r®  r±  r´  r»  r¿   r   r   ú<module>rÏ     sú
  ðÛ Û ã Ý Ý -ß 'Ó 'òEð ‡�×Ñ˜ $¨¯©Ð!1Ó2ñ	Ró 3ð	Rò	Nò	Nò
2ò	Qò ò(ð ‡�×ÑØð ˆB�M‰M˜,°Ô2Ø�\‰\×Ñ˜|˜rŸ|™|¨LÓ9¸2¿<¹<×;KÑ;KÐLØ×Ñ×(Ñ(à—\‘\×%Ñ% | r§|¡|°LÓ'AÐBØ!�R—\‘\ ,Ó/°·±×1AÑ1AÐBðóð		
ò ØˆB�H‰HØ�—‘˜"Ÿ(™(Ó#×'Ñ'¨¨H¨B¯H©H°R·X±XÓ,>×,BÑ,BÐCÈ7ôð ×Ñ×(Ñ(Ø�"—(‘(˜2Ÿ8™8Ó$×(Ñ(¨!Ð,¨q°(°"·(±(¸2¿8¹8Ó2D×2HÑ2HÐ.IÐJóð	
ð �—‘˜r 4Ó(Ø�—‘˜q $Ó'Ø�—‘˜q $Ó'ðð
 ˆB�H‰Hà"�B—N‘N H B§H¡H¨R¯X©XÓ$6×$:Ñ$:Ð#:¸DÓAØ"�B—N‘N 1 dÓ+Ø"�B—N‘N 8 2§8¡8¨B¯H©HÓ#5×#9Ñ#9¸4Ó@ðóð ×Ñ×(Ñ(ð '˜Ÿ™¨¨¯©°·±Ó(:×(>Ñ(>Ð'>ÀÓEØ&˜Ÿ™ q¨$Ó/ðð
 '˜Ÿ™ q¨$Ó/Ø&˜Ÿ™ x r§x¡x°·±Ó'9×'=Ñ'=¸tÓDðð	óð	
ð).ó1ñd7óe1ðd7ò?ð ‡�×ÑØà	ˆQÐ(Ð)Ú	�CÐ>Ð?ðóñóðð
 ‡�×Ñ˜  F B§F¡F¨1£I¨|¨r¯|©|¸F¸B¿F¹FÀ1»IÓ/FÐ GÓHØ‡�×Ñ˜ b§f¡f¨b¯g©gÐ%6Ó7ñó 8ó Iðð ‡�×ÑØ
à	
ˆAˆq�!�Q˜Ÿ™ÐØ
�&‰&ˆ�!�Q˜˜1˜aÐ Ø
�&‰&ˆ�!�Q˜˜1˜a §¡Ð(ðóñóðò%ð ‡�×ÑØà	Ò*¨GÐ4Ø	Ò.°Ð7ðóñ8óð8òò8ð ‡�×Ñ˜ D¨% =Ó1ñ-ó 2ð-ð ‡�×ÑÐ)¨D°%¨=Ó9ñ1ó :ð1ò4ò"/ð ‡�×ÑØñ "ñð	
ñ HÙTð	
ðóñ">ó#ð">ò-ð ‡�×Ñ˜˜y˜rŸy™y¨›°	°·	±	¸$³À$Ñ0FÐGÓHñó Iðð
 ‡�×ÑØòóñóðò-ò-ð ‡�×ÑØà
˜Ð	 Ð&Ø	Ð'Ð(Ø
˜Ð	 Ð"<Ð=Ø
˜Ð	Ð JÐKð	óñ1óð1ð ‡�×Ñ˜Ò!1Ó2Ø‡�×Ñ˜ A q 6Ó*ñ-ó +ó 3ð-ð ‡�×ÑØâ	˜%Ð Ú	˜UÐ#Ú	˜VÐ$ðóñ!óð!ð ‡�×ÑØ)Ò+Xóñóðð ‡�×ÑØ
á!Ù#Ù"Ù1ð	óñ-óð-ð0 ‡�×Ñ˜ §¡¨B¯H©H°b·h±hÀÐ EÓFñ!8ó Gð!8ðH ‡�×Ñ˜  r§x¡x°·±¸2¿9¹9Ð EÓFñó Gðð" ‡�×ÑØ
à	àˆB�L‰LÐ5¸%Ô@×KÑKØóð ˆB�L‰LÐ.°5Ô9×DÑDÀ\ÓRØˆB�L‰LÐ.°5Ô9×DÑDÀ\ÓRØˆB�L‰LÐ.°5Ô9×DÑDÀ\ÓRð	
ð
óð ‡�×Ñ˜  r§x¡x°·±¸2¿9¹9Ð EÓFñ-ó Góð-ò@Eò	Qð ‡�×Ñ˜Ò:Ó;ñ6ó <ð6ò>6ð ‡�×Ñ˜ ! Q Ó(Ø‡�×ÑØà	�‰�B×*Ñ*Ð+Ø	�‰�2×.Ñ.Ð/Ø	ˆr�‰Ððóñóó )ðð ‡�×Ñ˜Ò#3Ó4ñ)ó 5ð)ð ‡�×Ñ˜ !¢Z Ó1Ø‡�×Ñ˜ 4¨ -Ó0Ø‡�×ÑÐ)¨D°%¨=Ó9ñ	2ó :ó 1ó 2ð	2ð ‡�×ÑØ9â	Ò'ªº)ÀcÈ3ÀZÐPÚ	’O¢\²9ºiÐHðóñ2óð2ð ‡�×ÑØ9â	Ò'ªº)Â_ÐUÚ	’O¢\²9ºlÐKðóñ2óð2ò8ò-òVò-ò,ò>2ò8ò-ð ‡�×Ñ˜Ò#GÓHñ	Yó Ið	Yò>ð ‡�×Ñ˜Ò&=Ó>Ø‡�×Ñ˜Ò&=Ó>ñ-ó ?ó ?ð-ð ‡�×Ñ˜Ò&=Ó>Ø‡�×Ñ˜Ò&=Ó>ñ-ó ?ó ?ð-òò >óCr   