Ë
    ¤ehÚž ã                   ó  — d dl mZm Z mZ d dlZd dlZd dlZd dlmZm	Z	 d dl
mZ d dlZd dlmZmZmZmZmZmZmZmZmZmZmZ d dlmZ d dlmZ d dlmZm Z  d¨d„Z!d	„ Z"d
„ Z# ejH                   e"«       d„ ¬«      d„ «       Z% ejH                   e"«       d„ ¬«      d„ «       Z& ejH                   e#«       d„ ¬«      d„ «       Z'ejH                  d„ «       Z( G d„ d«      Z)d„ Z* G d„ d«      Z+ejH                  d„ «       Z,ejH                  d„ «       Z- G d„ d«      Z.ejH                  d„ «       Z/ejH                  d„ «       Z0 G d„ d«      Z1ejd                  jg                  d ejh                  D � cg c]  }  ed!d"g| d#¬$«      ‘Œ c}  ed%d&gd%d&gd#¬'«       ed d"d#¬(«       ed)d*gd#¬+«      gz   d,„ ¬-«      d.„ «       Z5ejd                  jg                  d/d0d1gddd2d2d&fd3dd0d1gdd2d4d&fddd0d1gd4d2d&fd0d1gddd2d2dfd5dd0d1gdd2d4dfddd0d1gd4d2dfg«      d6„ «       Z6d7„ Z7ejd                  jg                  d8d d d9d:id;d<gfd d d9d=id d<gfd d d9d>id?d@gfd d d9dAdBgid?d@gfdCd d9dDidCd gfdEdEd9dFidGdEgfdHdHd9dDidHdIgfdCdCd9dFidJdCgfdCdHd9dFidCdHgfdCdCd9dKidCdJgfd d d9dLidMd gfdCdCi dJdNgfd d i d?d@gfg«      dO„ «       Z8ejd                  jg                  dPdQ eg dR¢dSdTejr                  gg dU¢dVœ«      fd0 eg dW¢dXdSdTejr                  gejr                  dYdZd[gdVœ«      fg«      d\„ «       Z:ejd                  jg                  d]g d^¢«      d_„ «       Z;ejd                  jg                  d9d`dQhd d daœg«      db„ «       Z<ejd                  jg                  dcdddCdC e=dC«      defg«      df„ «       Z>ejd                  jg                  dgdhdig«      ejd                  jg                  djd4d2g«      dk„ «       «       Z?dl„ Z@dm„ ZAdn„ ZBdo„ ZCejd                  jg                  dpdqdrg«      ds„ «       ZDdt„ ZEejd                  jg                  dudvdwg«      ejd                  jg                  dxdCd4dyœdzd{gfdCd4d|œd}d~gfg«      d„ «       «       ZFejd                  jg                  dudvdwg«      ejd                  jg                  dxdzdCid}d~gfd}dCidzd{gfg«      d€„ «       «       ZGejd                  jg                  dudvdwg«      ejd                  jg                  d�d~d4id{d4ig«      d‚„ «       «       ZHdƒ„ ZId„„ ZJd…„ ZKd†„ ZLd‡„ ZMdˆ„ ZNd‰„ ZOdŠ„ ZPejd                  jg                  d‹ddŒg«      d�„ «       ZQdŽ„ ZRd�„ ZSd�„ ZTejd                  jg                  d‹d‘d’g«      d“„ «       ZUejd                  jg                  d”g d•¢«      ejd                  jg                  d–dd—g«      d˜„ «       «       ZVd™„ ZWejd                  jg                  d”g dš¢«      ejd                  jg                  d›d4d2g«      ejd                  jg                  dœd4d2g«      ejd                  jg                  d�d4d2g«      ejd                  jg                  džd4d2g«      ejd                  jg                  dŸd4d2g«      ejd                  jg                  d d4d2g«      d¡„ «       «       «       «       «       «       «       ZXd¢„ ZYd£„ ZZejd                  jg                  d¤d4d2g«      ejd                  jg                  d¥d4d2g«      d¦„ «       «       Z[ejd                  jg                  d”g dš¢«      d§„ «       Z\yc c} w )©é    )ÚdateÚdatetimeÚ	timedeltaN)Úis_object_dtypeÚis_string_dtype)ÚCategoricalDtype)ÚCategoricalÚCategoricalIndexÚ	DataFrameÚDatetimeIndexÚIndexÚIntervalIndexÚ
MultiIndexÚPeriodIndexÚ
RangeIndexÚSeriesÚTimedeltaIndex)Úconcat)Ú
MergeErrorÚmergec           	      ó^  — t        t        | «      «      }t        j                  t        j                  ||| z  «      «      }t        |«      |k  r0t        j                  t        |«      |d |t        |«      z
   z   «      }t        j                  j                  d«      j                  |«       |S )Né   )	ÚlistÚrangeÚnpÚasarrayÚtileÚlenÚrandomÚdefault_rngÚshuffle)ÚngroupsÚnÚunique_groupsÚarrs       úc/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/reshape/merge/test_merge.pyÚget_test_datar'   '   s€   € Üœ˜w›Ó(€MÜ
�*‰*”R—W‘W˜]¨A°©LÓ9Ó
:€Cä
ˆ3ƒx�!‚|Ü�j‰jœ˜c› ]°>°Q¼¸S»±\Ð%BÑBÓCˆä‡I�I×Ñ˜!Ó×$Ñ$ SÔ)Ø€Jó    c                  óø   — t        dgd¬«      t        dgd¬«      t        dg«      t        dg«      t        dg«      t        t        j                  d«      g«      t        t        j                  dd	¬
«      g«      gS )Né   Úint64©ÚdtypeÚInt64g®Gáz®ó?ÚfooTú
2018-01-01ú
US/Eastern©Útz)r   ÚpdÚ	Timestamp© r(   r&   Ú
get_seriesr7   2   si   € ä�ˆs˜'Ô"Ü�ˆs˜'Ô"Ü�ˆv‹Ü�ˆw‹Ü�ˆv‹Ü”—‘˜\Ó*Ð+Ó,Ü”—‘˜\¨lÔ;Ð<Ó=ðð r(   c                  óÚ   — t        t        j                  gd¬«      t        t        j                  gd¬«      t        t        j                  gd¬«      t        t        j                  g«      gS )Nr.   r,   ÚfloatÚobject)r   r   Únanr4   ÚNaTr6   r(   r&   Úget_series_nar=   >   sJ   € ä”—‘ˆx˜wÔ'Ü”—‘ˆx˜wÔ'Ü”—‘ˆx˜xÔ(Ü”—‘ˆxÓð	ð r(   c                 ó.   — | j                   j                  S ©N©r-   Úname©Úxs    r&   ú<lambda>rD   G   ó   € °1·7±7·<±<€ r(   )ÚparamsÚidsc                 ó   — | j                   S )zV
    A parametrized fixture returning a variety of Series of different
    dtypes
    ©Úparam©Úrequests    r&   Úseries_of_dtyperM   G   ó   € ð �=‰=Ðr(   c                 ó.   — | j                   j                  S r?   r@   rB   s    r&   rD   rD   P   rE   r(   c                 ó   — | j                   S )zk
    A duplicate of the series_of_dtype fixture, so that it can be used
    twice by a single function
    rI   rK   s    r&   Úseries_of_dtype2rQ   P   rN   r(   c                 ó.   — | j                   j                  S r?   r@   rB   s    r&   rD   rD   Y   s   € °a·g±g·l±l€ r(   c                 ó   — | j                   S )zU
    A parametrized fixture returning a variety of Series with all NA
    values
    rI   rK   s    r&   Úseries_of_dtype_all_narT   Y   rN   r(   c                  ó^   — t        ddgddgddgdœ«      } t        g d¢g d¢g d¢d	œ«      }| |fS )
Nr   r*   r   ÚaÚb)Úcol1Úcol_conflictÚcol_left)r*   r   é   é   é   )r   r   r   r   r   )rX   rY   Ú	col_right©r   )Údf1Údf2s     r&   Údfs_for_indicatorrb   b   sB   € ä
˜a ˜V°a¸°VÈ#ÈsÈÑTÓ
U€CÜ
â#Ú+Ú(ñ	
ó€Cð �ˆ8€Or(   c                   óF  — e Zd Zej                  d„ «       Zej                  d„ «       Zej                  d„ «       Zej                  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d„ Zd„ Zej8                  j;                  dg d¢«      d„ «       Zej8                  j;                  ddddœdddœd dd!œd dd"œg«      d#„ «       Zd$„ Z d%„ Z!d&„ Z"d'„ Z#d(„ Z$ej8                  j;                  d)d*g d+¢fdg d,¢fg«      ej8                  j;                  dd-d.g«      d/„ «       «       Z%d0„ Z&d1„ Z'ej8                  jQ                  d2«      d3„ «       Z)d4„ Z*d5„ Z+ej8                  j;                  d6g d7¢«      d8„ «       Z,ej8                  j;                  d6g d7¢«      d9„ «       Z-d:„ Z.d;„ Z/d<„ Z0d=„ Z1d>„ Z2d?„ Z3d@„ Z4dA„ Z5dB„ Z6dC„ Z7dD„ Z8dE„ Z9dF„ Z:dG„ Z;dH„ Z<ej8                  j;                  dd.dIg«      ej8                  j;                  dJ e=g dK¢«       e=g dL¢«      f e>g dM¢dN¬O«       e>dPdQdRe?j€                  e?j€                  e?j€                  gdN¬O«      fgeAj„                  D � ���cg c].  }t‡        g dS¢|¬O«      t‡        g dT¢tˆ        jŠ                  ¬O«      f‘Œ0 c}}}} ¢ eFjŽ                  g dU¢«       eFjŽ                  dVdWdXeDj�                  eDj�                  eDj�                  g«      f‘ eIg dY¢dZ¬[«       eIdPd\d]e?j€                  e?j€                  e?j€                  gdZ¬[«      f‘ eJg d^¢«       eJd_d`dae?j€                  e?j€                  e?j€                  g«      f‘«      db„ «       «       ZKdc„ ZLej8                  j;                  dd-d.g«      dd„ «       ZMde„ ZNdf„ ZOygc c}}}} w )hÚ	TestMergec                 ó  — t        t        «       t        «       t        j                  j	                  d«      j                  d«      t        j                  j	                  d«      j                  d«      dœ«      }||d   dkD     }|S )Nr   é2   )Úkey1Úkey2Údata1Údata2rh   r*   ©r   r'   r   r   r    Ústandard_normal)ÚselfÚdfs     r&   rn   zTestMerge.dfp   sn   € ää%›Ü%›ÜŸ™×.Ñ.¨qÓ1×AÑAÀ"ÓEÜŸ™×.Ñ.¨qÓ1×AÑAÀ"ÓEñ	ó
ˆð ��6‘
˜Q‘ÑˆØˆ	r(   c                 ó¢   — t        t        d¬«      t        dd¬«      t        j                  j	                  d«      j                  d«      dœ«      S )Né
   )r#   r\   )r"   r#   r   )rg   rh   Úvaluerk   ©rm   s    r&   ra   zTestMerge.df2   sC   € ää%¨Ô+Ü%¨a°2Ô6ÜŸ™×.Ñ.¨qÓ1×AÑAÀ"ÓEñó
ð 	
r(   c                 óz   — t        g d¢t        j                  j                  d«      j	                  d«      dœ«      S )N©rV   rW   ÚcÚdÚerw   rV   r   é   ©ÚkeyÚv1©r   r   r   r    rl   rr   s    r&   ÚleftzTestMerge.left‰   s4   € äâ:Ü—i‘i×+Ñ+¨AÓ.×>Ñ>¸qÓAñó
ð 	
r(   c                 ó|   — t        dt        j                  j                  d«      j	                  d«      ig d¢¬«      S )NÚv2r   r\   ©rv   rW   ru   rV   ©Úindexr|   rr   s    r&   ÚrightzTestMerge.right’   s4   € äØ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>Ð?Ú&ô
ð 	
r(   c                 ó¨   — t        «       }t        dddgiddgd¬«      }t        ||dd¬«      }t        dg id¬	«      }t        j                  ||«       y )
NrV   r*   r   r   r+   )r‚   r-   T©Ú
left_indexÚright_indexr,   ©r   r   ÚtmÚassert_frame_equal)rm   Údf_emptyÚdf_aÚresultÚexpecteds        r&   Útest_merge_inner_join_emptyz%TestMerge.test_merge_inner_join_empty™   sS   € ä“;ˆÜ˜#  1˜v˜¨q°!¨f¸GÔDˆÜ�x °$ÀDÔIˆÜ˜c 2˜Y¨gÔ6ˆÜ
×Ñ˜f hÕ/r(   c                 óh   — t        ||«      }t        ||ddg¬«      }t        j                  ||«       y )Nrg   rh   ©Úon©r   r‰   rŠ   )rm   rn   ra   ÚjoinedÚexps        r&   Útest_merge_commonzTestMerge.test_merge_common¡   s0   € Ü�r˜3“ˆÜ�B˜ ¨Ð 0Ô1ˆÜ
×Ñ˜f cÕ*r(   c                 ó¦   — t        g d¢g d¢g d¢g d¢dœ«      }|j                  t        «      }|}t        ||«      }t	        j
                  ||«       y )N)r*   r   r*   r   )r   r*   r   r   )r   r   r   r   )r*   r   r   r[   ©r   r*   r   r[   )r   Úastyper9   r   r‰   rŠ   ©rm   r}   rƒ   rŽ   r�   s        r&   Útest_merge_non_string_columnsz'TestMerge.test_merge_non_string_columns¦   sK   € ô Ú¢²,Â<ÑPó
ˆð —‘œEÓ"ˆØˆÜ�t˜UÓ#ˆÜ
×Ñ˜h¨Õ/r(   c                 óÊ   — |j                  d«      }|j                  d«      }t        ||d¬«      }t        ||d¬«      j                  d«      }t        j                  ||«       y )Nrg   r‘   )Ú	set_indexr   r‰   rŠ   )rm   rn   ra   r}   rƒ   r�   rŽ   s          r&   Útest_merge_index_as_on_argz$TestMerge.test_merge_index_as_on_arg²   sW   € ð �|‰|˜FÓ#ˆØ—‘˜fÓ%ˆÜ�t˜U vÔ.ˆÜ˜˜S VÔ,×6Ñ6°vÓ>ˆÜ
×Ñ˜f hÕ/r(   c                 óB  — t        g d¢t        j                  j                  d«      j	                  d«      dœ«      }t        dt        j                  j                  d«      j	                  d«      ig d¢¬«      }t        ||d	d
dd¬«      }t        ||d	d
dd¬«      }t        j                  ||j                  d d …|j                  f   «       t        ||d	d
dd
¬«      }t        ||d	d
dd
¬«      }t        j                  ||j                  d d …|j                  f   «       y )Nrt   r   rx   ry   r   r\   r€   r�   rz   Tr}   F)Úleft_onr‡   ÚhowÚsortrƒ   )Úright_onr†   r¡   r¢   )
r   r   r   r    rl   r   r‰   rŠ   ÚlocÚcolumns)rm   r}   rƒ   Úmerged1Úmerged2s        r&   Ú(test_merge_index_singlekey_right_vs_leftz2TestMerge.test_merge_index_singlekey_right_vs_left»   s  € Üâ:Ü—i‘i×+Ñ+¨AÓ.×>Ñ>¸qÓAñó
ˆô Ø”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>Ð?Ú&ô
ˆô
 Ø�% °D¸fÈ5ô
ˆô Ø�4 %°D¸gÈEô
ˆô 	×Ñ˜g w§{¡{²1°g·o±oÐ3EÑ'FÔGäØ�% °D¸fÈ4ô
ˆô Ø�4 %°D¸gÈDô
ˆô 	×Ñ˜g w§{¡{²1°g·o±oÐ3EÑ'FÕGr(   c                 ól  — t        g d¢t        j                  j                  d«      j	                  d«      dœ«      }t        dt        j                  j                  d«      j	                  d«      ig d¢¬«      }t        ||d	d
d¬«      }|j                  |d	¬«      j                  |j                     }t        j                  ||«       t        ||d	d
d¬«      }|j                  |d	¬«      j                  |j                     }t        j                  ||j                  d d …|j                  f   «       y )Nrt   r   rx   ry   r   r\   r€   r�   rz   TÚinner©r    r‡   r¡   r‘   )r£   r†   r¡   )r   r   r   r    rl   r   Újoinr¤   r‚   r‰   rŠ   r¥   ©rm   r}   rƒ   r�   rŽ   s        r&   Ú test_merge_index_singlekey_innerz*TestMerge.test_merge_index_singlekey_inner×   sü   € Üâ:Ü—i‘i×+Ñ+¨AÓ.×>Ñ>¸qÓAñó
ˆô Ø”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>Ð?Ú&ô
ˆô �t˜U¨E¸tÈÔQˆØ—9‘9˜U u�9Ó-×1Ñ1°&·,±,Ñ?ˆÜ
×Ñ˜f hÔ/ä�u˜d¨U¸tÈÔQˆØ—9‘9˜U u�9Ó-×1Ñ1°&·,±,Ñ?ˆÜ
×Ñ˜f h§l¡l²1°f·n±nÐ3DÑ&EÕFr(   c                 ó†  — d}t        j                  t        j                  j                  |¬«      5  t        ||d¬«       d d d «       d}t        j                  t        j                  j                  |¬«      5  t        ||d¬«       d d d «       d}t        j                  t        j                  j                  |¬«      5  t        ||dd¬	«       d d d «       d
}t        j                  t        |¬«      5  t        ||dgddg¬«       d d d «       y # 1 sw Y   ŒÓxY w# 1 sw Y   Œ—xY w# 1 sw Y   ŒZxY w# 1 sw Y   y xY w)Nz&Must pass right_on or right_index=True©ÚmatchT)r†   z$Must pass left_on or left_index=True)r‡   zRCan only pass argument "on" OR "left_on" and "right_on", not a combination of bothrz   )r    r’   z)len\(right_on\) must equal len\(left_on\)rg   rh   ©r    r£   )ÚpytestÚraisesr4   Úerrorsr   r   Ú
ValueError)rm   rn   ra   r}   rƒ   Úmsgs         r&   Útest_merge_misspecifiedz!TestMerge.test_merge_misspecifiedì   s  € Ø6ˆÜ�]‰]œ2Ÿ9™9×/Ñ/°sÔ;ñ 	0Ü�$˜¨$Õ/÷	0à4ˆÜ�]‰]œ2Ÿ9™9×/Ñ/°sÔ;ñ 	1Ü�$˜¨4Õ0÷	1ð$ð 	ô �]‰]œ2Ÿ9™9×/Ñ/°sÔ;ñ 	7Ü�$˜ e°Õ6÷	7ð ;ˆÜ�]‰]œ:¨SÔ1ñ 	HÜ�"�c F 8°v¸vÐ6FÕG÷	Hð 	H÷	0ð 	0ú÷	1ð 	1ú÷	7ð 	7ú÷	Hð 	Hús/   ²DÁ:DÃD+Ã7D7ÄDÄD(Ä+D4Ä7E c           	      óœ  — d}t        j                  t        |¬«      5  t        ||ddddg¬«       d d d «       d}t        j                  t        |¬«      5  t        ||dddgd¬«       d d d «       t        j                  t        |¬«      5  t        ||dddgddg¬«       d d d «       y # 1 sw Y   ŒzxY w# 1 sw Y   ŒNxY w# 1 sw Y   y xY w)	Nz>right_index parameter must be of type bool, not <class 'list'>r°   r}   Frg   rh   ©r¡   r†   r‡   z=left_index parameter must be of type bool, not <class 'list'>©r³   r´   r¶   r   )rm   rn   ra   r·   s       r&   Ú&test_index_and_on_parameters_confusionz0TestMerge.test_index_and_on_parameters_confusionÿ   sØ   € ØNˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØ Ø# VÐ,õ÷	ð NˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØ" FÐ+Ø!õ÷	ô �]‰]œ:¨SÔ1ñ 	ÜØØØØ" FÐ+Ø# VÐ,õ÷	ð 	÷#	ð 	ú÷	ð 	ú÷	ð 	ús#   žB*ÁB6ÂCÂ*B3Â6B?ÃCc                 ó    — t        ||d¬«      }|d   j                  «       dz  j                  «       }t        |«      |k(  sJ ‚d|v sJ ‚d|v sJ ‚y )Nrz   r‘   r   Úv1_xÚv1_y)r   Úvalue_countsÚsumr   )rm   r}   ÚmergedÚexp_lens       r&   Útest_merge_overlapzTestMerge.test_merge_overlap  s^   € Ü�t˜T eÔ,ˆØ˜‘;×+Ñ+Ó-°Ñ2×7Ñ7Ó9ˆÜ�6‹{˜gÒ%Ð%Ð%Ø˜ÑÐÐØ˜ÑÐÑr(   c           	      óP  — t        g d¢g d¢dœ«      }t        g d¢g d¢dœ«      }|j                  |ddd	d
¬«      }t        ddddddt        j                  gd¬«      }t        j                  |d   |«       t        dt        j                  dddddgd¬«      }t        j                  |d   |«       t        ddddddt        j                  gd¬«      }t        j                  |d   |«       t        dt        j                  dddddgd¬«      }t        j                  |d   |«       y )N)r/   ÚbarÚbazr/   ©r*   r   r[   r\   )Úlkeyrq   )r/   rÆ   Úquxr/   )r]   é   rx   é   )Úrkeyrq   rÉ   rÍ   ÚouterT)r    r£   r¡   r¢   rÆ   rÇ   r/   ©rA   rÊ   r   r[   r*   r\   Úvalue_xrË   r]   rÌ   rx   Úvalue_y)r   r   r   r   r;   r‰   Úassert_series_equal)rm   r}   rƒ   rÂ   r•   s        r&   Ú%test_merge_different_column_key_namesz/TestMerge.test_merge_different_column_key_names"  s  € ÜÒ">ÊÑVÓWˆÜÒ#?Ê,ÑWÓXˆà—‘Ø˜6¨F¸Àdð ó 
ˆô �e˜U E¨5°%¸ÄÇÁÐGÈfÔUˆÜ
×Ñ˜v f™~¨sÔ3ä�eœRŸV™V U¨E°5¸%ÀÐGÈfÔUˆÜ
×Ñ˜v f™~¨sÔ3ä�a˜˜A˜q ! Q¬¯©Ð/°iÔ@ˆÜ
×Ñ˜v iÑ0°#Ô6ä�aœŸ™  A q¨!¨QÐ/°iÔ@ˆÜ
×Ñ˜v iÑ0°#Õ6r(   c                 óü   — t        dddœt        d«      ¬«      }t        dddœt        d«      ¬«      }t        ||d	d	d	¬
«      }d|d<   |d   dk(  j                  «       sJ ‚d|d<   |d   dk(  j                  «       sJ ‚y )Nr   r*   ©rV   rW   rp   r�   r/   rÆ   ©ru   rv   T©r†   r‡   ÚcopyrË   rV   Úpeekaboorv   )r   r   r   Úall)rm   r}   rƒ   rÂ   s       r&   Útest_merge_copyzTestMerge.test_merge_copy6  s…   € Ü˜q qÑ)´°r³Ô;ˆÜ ¨EÑ2¼%À»)ÔDˆä�t˜U¨tÀÈDÔQˆàˆˆs‰Ø�S‘	˜Q‘×#Ñ#Ô%Ð%Ð%à ˆˆs‰Ø�c‘
˜eÑ#×(Ñ(Ô*Ð*Ñ*r(   c                 óV  — t        dddœt        d«      ¬«      }t        dddœt        d«      ¬«      }t        ||d	d	d
¬«      }t        j                  |d   j
                  |d   j
                  «      sJ ‚|s3t        j                  |d   j
                  |d   j
                  «      sJ ‚y y )Nr   r*   rÕ   rp   r�   r/   rÆ   rÖ   TFr×   rV   rv   )r   r   r   r   Úshares_memoryÚ_values)rm   Úusing_array_managerÚusing_infer_stringr}   rƒ   rÂ   s         r&   Útest_merge_nocopyzTestMerge.test_merge_nocopyB  sš   € Ü˜q qÑ)´°r³Ô;ˆÜ ¨EÑ2¼%À»)ÔDˆä�t˜U¨tÀÈEÔRˆä×Ñ  s¡× 3Ñ 3°T¸#±Y×5FÑ5FÔGÐGÐGÙ!Ü×#Ñ# F¨3¡K×$7Ñ$7¸¸s¹×9KÑ9KÔLÐLÑLð "r(   c                 ó|  — t        g d¢t        t        d«      «      dœddg¬«      }t        g d¢t        t        d«      «      d	œ«      }t        ||dd
¬«      }t        g d¢t	        j
                  dddddddt        j                  t        j                  g	«      g d¢dœg d¢¬«      }t        j                  ||«       y )N©r*   r*   r   r   r[   r]   ©rz   rq   rq   rz   ©r¥   ©r*   r*   r   r[   r\   r]   rË   )rz   ÚrvaluerÎ   ©r’   r¡   ©	r*   r*   r*   r*   r   r   r[   r\   r]   r   r*   r   r[   r\   )	r   r*   r   r*   r   r   r[   r\   r]   )rz   rq   rç   )rq   rz   rç   )	r   r   r   r   r   Úarrayr;   r‰   rŠ   )rm   r}   rƒ   r”   rŽ   s        r&   Ú"test_intelligently_handle_join_keyz,TestMerge.test_intelligently_handle_join_keyL  s£   € ô Ú#¬d´5¸³8«nÑ=ÈÐQVÐGWô
ˆô Ò"4ÄÄUÈ1ÃXÃÑOÓPˆä�t˜U u°'Ô:ˆÜâ2ÜŸ™ 1 a¨¨A¨q°!°Q¼¿¹ÄÇÁÐ"GÓHÚ5ñò
 /ô
ˆô 	×Ñ˜f hÕ/r(   c                 ó  — t        dgdgdœ«      }t        dgdgdœ«      }t        ||d¬«      }|d   j                  d	k(  sJ ‚t        d
gdgdœ«      }t        dgdgdœ«      }t        ||d¬«      }|d   j                  dk(  sJ ‚t        ddgi«      }t        ddgi«      }t        j                  dg«      }t        j                  dg«      }t        ||||d¬«      }|d   j                  t        j                  t
        «      k(  sJ ‚y )Nr*   rp   ry   r   é   rÎ   ©r¡   rz   r+   TFr   ÚboolÚval©r    r£   r¡   Úkey_0)r   r   r-   r   rê   Úint)rm   r`   ra   rn   rÉ   rÍ   s         r&   Útest_merge_join_key_dtype_castz(TestMerge.test_merge_join_key_dtype_cast_  s
  € ô   ¨B¨4Ñ0Ó1ˆÜ  ¨B¨4Ñ0Ó1ˆÜ�3˜ Ô)ˆØ�%‰y�‰ 'Ò)Ð)Ð)ä  ¨q¨cÑ2Ó3ˆÜ  °¨sÑ3Ó4ˆÜ�3˜ Ô)ˆð �%‰y�‰ &Ò(Ð(Ð(ä˜  ˜Ó%ˆÜ˜  ˜Ó%ˆÜ�x‰x˜˜‹}ˆÜ�x‰x˜˜‹}ˆÜ�3˜ T°D¸gÔFˆØ�'‰{× Ñ ¤B§H¡H¬S£MÒ1Ð1Ñ1r(   c                 ó`  — t        g d¢t        j                  d«      dœddgd¬«      }t        dt        j                  d	«      id¬
«      }t        j                  g d¢d¬
«      }t	        ||d|d¬«      }t	        |||dd¬«      }t        j                  |d   |d   «       |d   j                  «       j                  «       sJ ‚|d   j                  «       j                  «       sJ ‚t        dt        j                  d«      idg¬«      }t        dt        j                  d	«      i«      }t        j                  g d¢«      }t        j                  g d¢«      }t	        ||||d¬«      }t        g d¢t        d¬«      }t        j                  |d   |«       t        dt        j                  d«      i«      }t        dt        j                  d	«      i«      }t        j                  g d¢t        j                  ¬
«      }t	        ||d|d¬«      }t        j                  |d   t        |d¬«      «       y )Nrã   r]   rä   rq   rz   r+   ©r¥   r-   rç   rË   r,   ræ   rÎ   rñ   rå   ré   rò   r@   r[   )r   r*   r*   r   r   r[   T)r†   r£   r¡   rÏ   )r   r   Úarangerê   r   r‰   rÒ   ÚnotnarÚ   r   ró   r+   )	rm   r}   rƒ   rz   rÂ   r§   rÉ   rÍ   rŽ   s	            r&   Útest_handle_join_key_pass_arrayz)TestMerge.test_handle_join_key_pass_arrayv  sÁ  € ÜÚ#¬b¯i©i¸«lÑ;Ø˜eÐ$Øô
ˆô
 ˜8¤R§Y¡Y¨q£\Ð2¸'ÔBˆÜ�h‰hÒ)°Ô9ˆä�t˜U¨E¸CÀWÔMˆÜ˜˜t¨S¸5ÀgÔNˆä
×Ñ˜v e™}¨g°e©nÔ=Ø�e‰}×"Ñ"Ó$×(Ñ(Ô*Ð*Ð*Ø�u‰~×#Ñ#Ó%×)Ñ)Ô+Ð+Ð+ä˜'¤2§9¡9¨Q£<Ð0¸7¸)ÔDˆÜ˜8¤R§Y¡Y¨q£\Ð2Ó3ˆÜ�x‰xšÓ(ˆÜ�x‰xÒ*Ó+ˆä�t˜U¨D¸4ÀWÔMˆÜÒ5¼SÀwÔOˆÜ
×Ñ˜v g™°Ô9ä˜'¤2§9¡9¨Q£<Ð0Ó1ˆÜ˜8¤R§Y¡Y¨q£\Ð2Ó3ˆä�h‰hÒ)´·±Ô:ˆÜ�t˜U¨t¸cÀwÔOˆÜ
×Ñ˜v g™´°sÀÔ0IÕJr(   c                 ó  — t        j                  «       }t        ddgi|g¬«      }t        dddgi||g¬«      }dd › dd › d	d
› dd
› �}t        j                  t
        |¬«      5  t        ||«       d d d «       y # 1 sw Y   y xY w)NrC   rV   r�   ÚyrW   ru   z>No common columns to perform merge on. Merge options: left_on=z, right_on=z, left_index=Fz, right_index=r°   )r   Únowr   r³   r´   r   r   )rm   Údtr`   ra   r·   s        r&   Ú&test_no_overlap_more_informative_errorz0TestMerge.test_no_overlap_more_informative_error–  s’   € Ü�\‰\‹^ˆÜ˜˜s˜e˜¨R¨DÔ1ˆä˜˜s C˜jÐ)°"°b°Ô:ˆð&Ø&* V¨;°t°fð =Ø˜ ¨u¨gð7ð 	ô �]‰]œ:¨SÔ1ñ 	Ü�#�sŒO÷	÷ 	ñ 	ús   Á"A8Á8Bc           	      óž  — t        ddd«      }t        ddd«      }t        ddd«      }t        ddd«      }t        ddgi|g¬	«      }t        d
ddgi||g¬	«      }t        ||«       t        dg d¢i|||g¬	«      }t        d
g d¢i||||||g¬	«      }t        ||«       t        dddgi||g¬	«      }t        d
ddgi||g¬	«      }t        ||«       y )NéÜ  r]   r*   r   r[   r\   rC   rV   r�   rû   rW   ru   )rV   rW   Úq)ru   rv   rw   ÚfÚgÚhrv   ©r   r   Ú_check_merge)rm   rý   Údt2Údt3Údt4r`   ra   s          r&   Útest_merge_non_unique_indexesz'TestMerge.test_merge_non_unique_indexes¥  sõ   € Ü�d˜A˜qÓ!ˆÜ�t˜Q Ó"ˆÜ�t˜Q Ó"ˆÜ�t˜Q Ó"ˆä˜˜s˜e˜¨R¨DÔ1ˆÜ˜˜s C˜jÐ)°"°b°Ô:ˆÜ�S˜#Ôô ˜šoÐ.°s¸BÀ°nÔEˆÜØÒ0Ð1¸#¸sÀCÈÈbÐRTÐ9Uô
ˆô 	�S˜#Ôä˜˜s C˜jÐ)°"°b°Ô:ˆÜ˜˜s C˜jÐ)°"°b°Ô:ˆÜ�S˜#Õr(   c                 óÀ   — t        ddd«      }t        ddd«      }t        ddd«      }t        dg d¢i||||g¬«      }t        d	g d
¢i|||||g¬«      }t        ||«       y )Nr   r]   r*   r   r[   rC   ©rV   rW   ru   rv   r�   rû   )rw   r  r  z hÚir  )rm   rý   r  r  r`   ra   s         r&   Ú(test_merge_non_unique_index_many_to_manyz2TestMerge.test_merge_non_unique_index_many_to_manyº  ss   € Ü�d˜A˜qÓ!ˆÜ�t˜Q Ó"ˆÜ�t˜Q Ó"ˆÜ˜Ò2Ð3¸CÀÀbÈ"Ð;MÔNˆÜØÒ,Ð-°c¸3ÀÀRÈÐ5Lô
ˆô 	�S˜#Õr(   c                 óÒ   — t        dgdgdœ«      }t        dg i«      }t        ||dd¬«      }t        j                  ||«       t        ||dd¬«      }t        j                  ||«       y )Nr*   r   rä   rz   r}   rè   rƒ   rˆ   )rm   r}   rƒ   r�   s       r&   Útest_left_merge_empty_dataframez)TestMerge.test_left_merge_empty_dataframeÄ  sc   € Ü ! °¨sÑ3Ó4ˆÜ˜5 "˜+Ó&ˆä�t˜U u°&Ô9ˆÜ
×Ñ˜f dÔ+ä�u˜d u°'Ô:ˆÜ
×Ñ˜f dÕ+r(   r¡   )rª   r}   rƒ   rÎ   c                 ó–   — t        g |d d ¬«      }|j                  «       }|j                  ||¬«      }t        j                  ||«       y )Nr   r�   rî   )r   rØ   r¬   r‰   rŠ   )rm   r‚   r¡   r}   rƒ   r�   s         r&   Útest_merge_empty_dataframez$TestMerge.test_merge_empty_dataframeÎ  sC   € ô ˜ 5¨¨! 9Ô-ˆØ—	‘	“ˆà—‘˜5 c�Ó*ˆÜ
×Ñ˜f dÕ+r(   ÚkwargTr…   rC   ©r†   r£   rV   ©r    r‡   r²   c                 ó¬   — t        g d¢¬«      }t        g d¢¬«      }t        g d¢t        ¬«      }t        ||fd|i|¤Ž}t        j                  ||«       y )N©rV   rW   ru   rå   ©rC   rû   Úz©rV   rW   ru   rC   rû   r  rö   r¡   )r   r:   r   r‰   rŠ   )rm   Ú	join_typer  r}   rƒ   Úexp_inr�   s          r&   Ú!test_merge_left_empty_right_emptyz+TestMerge.test_merge_left_empty_right_empty×  sK   € ô ¢Ô1ˆÜ¢/Ô2ˆäÒ#AÌÔPˆä�t˜UÑ;¨	Ð;°UÑ;ˆÜ
×Ñ˜f fÕ-r(   c           	      ó¼  ‡‡— t        g d¢¬«      Št        g d¢g d¢g d¢gg d¢¬«      Št        t        j                  t        j                  gdz  t        ¬«      t        j                  t        j                  gdz  t        ¬«      t        j                  t        j                  gdz  t        ¬«      g d	¢g d
¢g d¢dœg d¢¬«      }|dd }ˆˆfd„}ˆˆfd„}dddœdddœfD ]  } |||«        |||«       Œ dddœ} |||«       g d¢|d<    |||«       dddœ} |||«       t        j                  t        j                  gdz  t        ¬«      |d<    |||«       y )Nr  rå   ©r*   r   r[   ©r\   r]   rË   ©rx   rÌ   é	   r  r[   r,   ©r*   r\   rx   ©r   r]   rÌ   ©r[   rË   r"  r  r   c                 óš   •— t        ‰‰fddi|¤Ž}t        j                  || «       t        ‰‰fddi|¤Ž}t        j                  || «       y )Nr¡   rª   r}   r“   ©r•   r  r�   r}   rƒ   s      €€r&   Úcheck1z>TestMerge.test_merge_left_empty_right_notempty.<locals>.check1ü  sO   ø€ Ü˜4 Ñ=¨GÐ=°uÑ=ˆFÜ×!Ñ! &¨#Ô.Ü˜4 Ñ<¨FÐ<°eÑ<ˆFÜ×!Ñ! &¨#Õ.r(   c                 óš   •— t        ‰‰fddi|¤Ž}t        j                  || «       t        ‰‰fddi|¤Ž}t        j                  || «       y )Nr¡   rƒ   rÎ   r“   r'  s      €€r&   Úcheck2z>TestMerge.test_merge_left_empty_right_notempty.<locals>.check2  óO   ø€ Ü˜4 Ñ=¨GÐ=°uÑ=ˆFÜ×!Ñ! &¨#Ô.Ü˜4 Ñ=¨GÐ=°uÑ=ˆFÜ×!Ñ! &¨#Õ.r(   Tr…   rC   r  rV   r  ©r   r*   r   r²   )r   r   rê   r;   r:   )rm   Úexp_outr  r(  r*  r  r}   rƒ   s         @@r&   Ú$test_merge_left_empty_right_notemptyz.TestMerge.test_merge_left_empty_right_notemptyê  s:  ù€ ä¢Ô1ˆÜš9¢i²Ð;Â_ÔUˆää—X‘XœrŸv™v˜h¨™l´&Ô9Ü—X‘XœrŸv™v˜h¨™l´&Ô9Ü—X‘XœrŸv™v˜h¨™l´&Ô9ÚÚÚñò 3ô

ˆð ˜˜1�ˆõ	/õ	/ð  °Ñ5Ø¨SÑ1ð
ò 	#ˆEñ �6˜5Ô!Ù�7˜EÕ"ð	#ð  °Ñ5ˆÙˆv�uÔÚ ˆ�‰Ùˆw˜Ôà¨SÑ1ˆÙˆv�uÔÜ—x‘x¤§¡ ¨1¡´FÔ;ˆ�‰Ùˆw˜Õr(   c                 ó  ‡‡‡‡‡‡— t        g d¢g d¢g d¢gg d¢¬«      Št        g d¢¬«      Št        g d¢g d¢g d	¢t        j                  t        j                  gd
z  t        ¬«      t        j                  t        j                  gd
z  t        ¬«      t        j                  t        j                  gd
z  t        ¬«      dœg d¢¬«      Š‰dd Š‰j
                  j                  t        «      ‰_        ˆˆfd„Šˆˆˆˆˆˆfd„Šy )Nr  r   r!  r  rå   r  r#  r$  r%  r[   r,   r  r   c                 óš   •— t        ‰‰fddi|¤Ž}t        j                  || «       t        ‰‰fddi|¤Ž}t        j                  || «       y )Nr¡   rª   rƒ   r“   r'  s      €€r&   r(  z>TestMerge.test_merge_left_notempty_right_empty.<locals>.check1-  r+  r(   c                 óì   •— t        ‰‰fddi|¤Ž}t        j                  || «       t        ‰‰fddi|¤Ž}t        j                  || «       dddœdddœddd	œddd
œfD ]  } ‰‰|«        ‰‰|«       Œ y )Nr¡   r}   rÎ   Tr…   rC   r  rV   r  r²   r“   )	r•   r  r�   r(  r*  r  r-  r}   rƒ   s	      €€€€€€r&   r*  z>TestMerge.test_merge_left_notempty_right_empty.<locals>.check23  s˜   ø€ Ü˜4 Ñ<¨FÐ<°eÑ<ˆFÜ×!Ñ! &¨#Ô.Ü˜4 Ñ=¨GÐ=°uÑ=ˆFÜ×!Ñ! &¨#Ô.ð  $°DÑ9Ø#°Ñ5Ø°Ñ5Ø¨SÑ1ð	ò '�ñ �v˜uÔ%Ù�w Õ&ñ'r(   )r   r   rê   r;   r:   r‚   r™   )rm   r(  r*  r  r-  r}   rƒ   s    @@@@@@r&   Ú$test_merge_left_notempty_right_emptyz.TestMerge.test_merge_left_notempty_right_empty  s·   ý€ äš)¢Y²	Ð:ÂOÔTˆÜ¢/Ô2ˆäâÚÚÜ—X‘XœrŸv™v˜h¨™l´&Ô9Ü—X‘XœrŸv™v˜h¨™l´&Ô9Ü—X‘XœrŸv™v˜h¨™l´&Ô9ñò 3ô

ˆð ˜˜1�ˆà—|‘|×*Ñ*¬6Ó2ˆŒõ	/÷	'ò 	'r(   c                 ó4  — t        ||dœddg¬«      }|d d }t        t        |j                  d   ¬«      t        |j                  d   ¬«      t        |j                  d   ¬«      dœg d¢¬«      }|j                  |d¬«      }t	        j
                  ||«       y )	Nrä   rz   rq   rå   r   r,   ©rz   rÐ   rÑ   r‘   )r   r   Údtypesr   r‰   rŠ   )rm   rM   rQ   rn   r‹   rŽ   Úactuals          r&   Útest_merge_empty_framez TestMerge.test_merge_empty_frameC  s•   € äØ#Ð.>Ñ?Ø˜GÐ$ô
ˆð �b�q�6ˆÜä B§I¡I¨eÑ$4Ô5Ü!¨¯	©	°'Ñ(:Ô;Ü!¨¯	©	°'Ñ(:Ô;ñò
 2ô
ˆð —‘  u�Ó-ˆÜ
×Ñ˜f hÕ/r(   c                 óÄ   — t        ||dœddg¬«      }t        ||dœddg¬«      }t        |||dœg d¢¬«      }|j                  |d¬«      }t        j                  ||«       y )Nrä   rz   rq   rå   r4  r‘   rˆ   )rm   rM   rT   Údf_leftÚdf_rightrŽ   r6  s          r&   Útest_merge_all_na_columnz"TestMerge.test_merge_all_na_columnU  s}   € äØ#Ð.DÑEØ˜GÐ$ô
ˆô Ø#Ð.DÑEØ˜GÐ$ô
ˆô à&Ø1Ø1ñò
 2ô
ˆð —‘˜x¨E�Ó2ˆÜ
×Ñ˜f hÕ/r(   c                 óÈ  — t         j                  j                  d«      j                  ddd¬«      t         j                  j                  d«      j                  ddd¬«      t	        ddd«      t	        ddd	«      t	        d
dd«      t	        ddd«      t	        ddd	«      t	        dd	d«      t	        ddd	«      t	        ddd«      t	        d
dd«      t	        ddd«      g
dœ}t        j                  |«      }|j                  j                  «       }t        j                  |«      }t        j                  |t         j                  j                  d«      j                  d«      dœ«      }|j                  |dd¬«      }t        ||dd¬«      }t        j                  ||«       |j                  j                  «       |j                  j                  «       k(  j                  «       sJ ‚y )Nr   r   rp   ©Úsizer   r*   é   iÛ  r\   iÚ  r[   iØ  r]   )Úvar1Úvar2Úvar3rx   )rB  Úvar8rB  F©r’   r¢   )r   r   r    Úintegersr   r   Ú	from_dictrB  Úuniquer¢   r   r‰   rŠ   rÚ   )rm   rv   rn   rB  Únewr�   r•   s          r&   Útest_merge_nosortzTestMerge.test_merge_nosortj  s–  € ô —I‘I×)Ñ)¨!Ó,×5Ñ5°a¸À"Ð5ÓEÜ—I‘I×)Ñ)¨!Ó,×5Ñ5°a¸À"Ð5ÓEä˜˜q "Ó%Ü˜˜q !Ó$Ü˜˜q !Ó$Ü˜˜q "Ó%Ü˜˜q !Ó$Ü˜˜q !Ó$Ü˜˜q !Ó$Ü˜˜q !Ó$Ü˜˜q !Ó$Ü˜˜q !Ó$ðñ
ˆô  × Ñ  Ó#ˆØ�w‰w�~‰~ÓˆÜ�w‰w�t‹}ˆÜ×!Ñ!Ø¤2§9¡9×#8Ñ#8¸Ó#;×#BÑ#BÀ1Ó#EÑFó
ˆð —‘˜# &¨u�Ó5ˆÜ�B˜ ¨UÔ3ˆÜ
×Ñ˜f cÔ*à—‘—‘Ó  F§K¡K×$6Ñ$6Ó$8Ñ8×=Ñ=Ô?Ð?Ñ?r(   )r¢   ÚvaluesF)r*   r*   r   r*   r*   )r   r*   r*   r*   r*   r}   rƒ   c                 ó”   — t        dg d¢i«      }|j                  |d||¬«      }t        |dg¬«      }t        j                  ||«       y )NrV   )r*   r   r*   )r’   r¡   r¢   rå   rˆ   )rm   r¢   rJ  r¡   rn   r�   rŽ   s          r&   Ú test_merge_same_order_left_rightz*TestMerge.test_merge_same_order_left_rightŠ  sG   € ô ˜šYÐ'Ó(ˆà—‘˜" ¨#°D�Ó9ˆÜ˜V¨c¨UÔ3ˆÜ
×Ñ˜f hÕ/r(   c           	      óÂ  — t        ddgddgdœ«      }t        dgdgdœ«      }|j                  |dd¬«      }t        ddd	œddd	œdt        j                  d	œdt        j                  d	œddd	œd
œt	        g d
¢t
        ¬«      ¬«      j                  d «      j                  «       g d¢   }|j                  j                  d«      |_        t        j                  ||d¬«       y )Nr   r*   ©Úi1Úi2©rO  Úi3rO  Ú_)r’   Úrsuffixç        ©r   r*   )rO  rP  Úi1_rR  Nr,   rå   ©rO  rP  rW  rR  r:   F©Úcheck_dtype)r   r¬   r   r;   r   r:   r�   Úreset_indexr¥   r™   r‰   rŠ   ©rm   r`   ra   r�   rŽ   s        r&   Útest_merge_nan_rightzTestMerge.test_merge_nan_right–  sÐ   € Ü  1˜v¨a°¨VÑ4Ó5ˆÜ ˜s¨1¨#Ñ.Ó/ˆØ—‘˜# $°�Ó4ˆäà! a™.Ø A™,Ø ¤R§V¡VÑ,Ø!¤b§f¡fÑ-Ø A™,ñô Ò=ÄVÔLô	÷ ‰Y�t‹_ß‰[‹]Ò4ñ6ð 	ð  Ÿ™×.Ñ.¨xÓ8ˆŒÜ
×Ñ˜f h¸EÖBr(   c                 ó  — t        ddgddgdœ«      }t        dgdgdœ«      }|j                  |dd	¬
«      }t        dddœdt        j                  dœdddœdt        j                  dœdœ«      g d¢   }t	        j
                  ||«       y )Nr   r*   g      à?ç      ø?rN  gffffffæ?rQ  rS  rO  )rT  r’   rV  rU  )rO  rW  rP  rR  rX  )r   r¬   r   r;   r‰   rŠ   r\  s        r&   Útest_merge_nan_right2zTestMerge.test_merge_nan_right2«  s’   € Ü  1˜v¨c°3¨ZÑ8Ó9ˆÜ ˜s¨3¨%Ñ0Ó1ˆØ—‘˜# s¨t�Ó4ˆÜà ‘lØ¤2§6¡6Ñ*Ø #Ñ&Ø-´"·&±&Ñ9ñ	ó
ò $ñ%ˆô 	×Ñ˜f hÕ/r(   zMignore:Passing a BlockManager|Passing a SingleBlockManager:DeprecationWarningc                 óz   ‡—  G ˆfd„dt         «      Š ‰|«      }|j                  |d¬«      }t        |‰«      sJ ‚y )Nc                   ó"   •— e Zd Zeˆ fd„«       Zy)ú0TestMerge.test_merge_type.<locals>.NotADataFramec                 ó   •— ‰S r?   r6   )rm   ÚNotADataFrames    €r&   Ú_constructorz=TestMerge.test_merge_type.<locals>.NotADataFrame._constructor¾  s	   ø€ à$Ð$r(   N)Ú__name__Ú
__module__Ú__qualname__Úpropertyrf  )re  s   €r&   re  rc  ½  s   ø„ Øó%ó ñ%r(   re  rg   r‘   )r   r   Ú
isinstance)rm   rn   ra   Únadr�   re  s        @r&   Útest_merge_typezTestMerge.test_merge_type¹  s=   ø€ ö	%œIô 	%ñ
 ˜BÓˆØ—‘˜3 6�Ó*ˆä˜& -Ô0Ð0Ñ0r(   c           
      ó  — t        j                  t        ddddd«      gt        dd«      gdœ«      }t        t	        d«      ¬	«      }d
}t
        }|rd }t        j                  ||¬«      5  t        ||gd¬«      }t        ||gd¬«      }d d d «       t        t        ddddd«      t        ddddd«      gt        dd«      t        dd«      gdœ«      }|r|j                  t        «      }t        j                  |«       y # 1 sw Y   ŒwxY w)NiÝ  é   r]   é8   r   iäW  )rv   Útrý   rå   zDThe behavior of DataFrame concatenation with empty or all-NA entriesr°   T©Úignore_index)r   rF  r   r   r   ÚFutureWarningr‰   Úassert_produces_warningr   r™   r:   rŠ   )rm   rß   rv   rn   r·   Úwarnr�   rŽ   s           r&   Útest_join_append_timedeltasz%TestMerge.test_join_append_timedeltasÇ  s	  € ô ×ÑÜ˜D " a¨¨BÓ/Ð0¼	À!ÀUÓ8KÐ7LÑMó
ˆô œt D›zÔ*ˆØTˆÜˆÙØˆDÜ×'Ñ'¨°CÔ8ñ 	8Ü˜˜Q˜¨dÔ3ˆBÜ˜R ˜G°$Ô7ˆF÷	8ô ä˜t R¨¨A¨rÓ2´H¸TÀ2ÀqÈ!ÈRÓ4PÐQÜ  5Ó)¬9°Q¸Ó+>Ð?ñó
ˆñ à—‘¤vÓ.ˆHÜ
×Ñ˜f hÕ/÷	8ð 	8ús   Á*C?Ã?Dc           	      óv  — t        j                  d«      }t        t        ||gddg¬«      «      }t        t        |gdg¬«      «      }|j	                  |dd¬«      }t        t        ||gt        d«      ¬«      t        |t        j                  gt        d«      ¬«      d	œ«      }t        j                  ||«       y )
Ni £áÚAÚBr�   Úrr}   )rT  r¡   ÚAB)Ú0Ú0r)
r   Útimedelta64r   r   r¬   r   r4   r<   r‰   rŠ   )rm   ÚtdÚlhsÚrhsr�   rŽ   s         r&   Útest_join_append_timedeltas2z&TestMerge.test_join_append_timedeltas2á  s�   € ô �^‰^˜IÓ&ˆÜœ  B˜x°°S¨zÔ:Ó;ˆÜœ ˜t¨C¨5Ô1Ó2ˆà—‘˜# s°�Ó7ˆÜä˜R ˜H¬D°«JÔ7Ü˜b¤"§&¡&˜\´°d³Ô<ñó
ˆô 	×Ñ˜f hÕ/r(   Úunit)ÚDr  ÚmÚsÚmsÚusÚnsc                 ó   — t        dddgi«      }t        d d gddgd¬«      }d|› d�}|dv rd	}n|}|j                  |«      j                  d«      }|d   j                  |k(  sJ ‚|j                  |dd
¬«      }t        j                  ddg|¬«      }t        j                  j                  j                  j                  ||j                  ¬«      }t        ddg|dœddg¬«      }	|	d   j                  |k(  sJ ‚t        j                  ||	«       y )NÚ	entity_idée   éf   Údays©r‚   rA   zdatetime64[ú]©r…  r  r†  zdatetime64[s]Tr  Únatr,   ©rŒ  r�  rå   )r   r   r™   Úto_framer-   r   r   rê   r4   ÚcoreÚarraysÚDatetimeArrayÚ_simple_newr‰   rŠ   )
rm   r„  r`   Úserr-   Ú	exp_dtypera   r�   r�  r•   s
             r&   Útest_other_datetime_unitz"TestMerge.test_other_datetime_unitñ  s  € ô ˜ s¨C jÐ1Ó2ˆÜ�d˜D�\¨#¨s¨¸&ÔAˆà˜d˜V 1Ð%ˆà�?Ñ"à'‰IàˆIØ�j‰j˜Ó#×,Ñ,¨VÓ4ˆØ�6‰{× Ñ  IÒ-Ð-Ð-à—‘˜3¨À�ÓFˆä�x‰x˜ ˜¨iÔ8ˆÜ�w‰w�~‰~×+Ñ+×7Ñ7¸ÀDÇJÁJÐ7ÓOˆÜà! 3˜ZØñð ! &Ð)ô
ˆð �6‰{× Ñ  IÒ-Ð-Ð-Ü
×Ñ˜f cÕ*r(   c                 ó4  — t        dddgi«      }t        d d gddgd¬«      }d|› d�}|dv rXd	}t        j                  t        |¬
«      5  |j                  |«       d d d «       |j                  d«      j                  d«      }n4|j                  |«      j                  d«      }|d   j                  |k(  sJ ‚|j                  |dd¬«      }t        ddgt        j                  ddg|¬«      dœddg¬«      }t        j                  ||«       y # 1 sw Y   Œ´xY w)NrŒ  r�  rŽ  r�  r�  zm8[r‘  r’  z/Supported resolutions are 's', 'ms', 'us', 'ns'r°   zm8[s]Tr  r“  r,   r”  rå   )r   r   r³   r´   r¶   r™   r•  r-   r   r   rê   r‰   rŠ   )	rm   r„  r`   rš  r-   r·   ra   r�   r•   s	            r&   Útest_other_timedelta_unitz#TestMerge.test_other_timedelta_unit  s  € ô ˜ s¨C jÐ1Ó2ˆÜ�d˜D�\¨#¨s¨¸&ÔAˆà�d�V˜1�ˆØ�?Ñ"àCˆCÜ—‘œz°Ô5ñ "Ø—
‘
˜5Ô!÷"ð —*‘*˜WÓ%×.Ñ.¨vÓ6‰Cà—*‘*˜UÓ#×,Ñ,¨VÓ4ˆCØ�v‘;×$Ñ$¨Ò-Ð-Ð-à—‘˜3¨À�ÓFˆäØ ˜*¬b¯h©h¸¸u°~ÈUÔ.SÑTØ  &Ð)ô
ˆô 	×Ñ˜f cÕ*÷"ð "ús   Á	DÄDc                 ó’  — t        g d¢g d¢g d¢dœ«      }t        g d¢g d¢g d¢dœ«      }g d¢|_        g d¢|_        t        g d¢g d¢g d¢g d¢g d¢dœ«      }g d¢|_        t        j                  t	        ||«      |«       g d	¢|_        d
}t        j                  t        |¬«      5  t	        ||«       d d d «       y # 1 sw Y   y xY w)Nr  r   r!  ©rz   r{   r   )rz   r/   r/   )rz   rÆ   rÆ   )rz   r{   r   Úv3Úv4)rz   r/   r/   rÆ   rÆ   )rg   r/   r/   zBData columns not unique: Index\(\['foo'\], dtype='object|string'\)r°   )r   r¥   r‰   rŠ   r   r³   r´   r   )rm   rn   ra   rŽ   r·   s        r&   Ú&test_overlapping_columns_error_messagez0TestMerge.test_overlapping_columns_error_message)  sª   € Üšy²	ÂÑKÓLˆÜ¢	²Â)ÑLÓMˆâ*ˆŒ
Ú+ˆŒÜâ ÚÚÚÚñó
ˆò ?ˆÔÜ
×Ñœe B¨›n¨hÔ7ò -ˆŒØSˆÜ�]‰]œ:¨SÔ1ñ 	Ü�"�cŒN÷	÷ 	ñ 	ús   Â'B=Â=Cc                 ó”  — t        t        j                  ddd¬«      ddgdœ«      }t        t        j                  ddd¬«      g d	¢dœ«      }t        t        j                  dd
d¬«      ddt        j                  t        j                  gt        j                  dddgdœ«      }t        ||dd¬«      }t        j                  ||«       y )NÚ20151010r   r1   ©Úperiodsr3   r*   rä   Ú20151011r[   r  r\   r4  rz   rÎ   rè   )r   r4   Ú
date_ranger   r;   r   r‰   rŠ   rš   s        r&   Útest_merge_on_datetime64tzz$TestMerge.test_merge_on_datetime64tzA  s³   € ää—}‘} Z¸¸|ÔLØ˜Q˜ñó
ˆô ä—}‘} Z¸¸|ÔLÚ"ñó
ˆô ä—}‘} Z¸¸|ÔLØ˜q¤"§&¡&¬"¯&©&Ð1ÜŸF™F A q¨!Ð,ñó
ˆô �t˜U u°'Ô:ˆÜ
×Ñ˜f hÕ/r(   c                 ó  — t        ddgt        j                  ddd¬«      dœ«      }t        ddgt        j                  ddd¬«      dœ«      }t        g d	¢t        t        j                  ddd¬«      «      t        j                  gz   t        j                  gt        t        j                  ddd¬«      «      z   d
œ«      }t        ||dd¬«      }t        j                  ||«       |d   j                  dk(  sJ ‚|d   j                  dk(  sJ ‚y )Nr*   r   r¥  r1   r¦  rä   r[   r¨  r  r4  rz   rÎ   rè   rÐ   zdatetime64[ns, US/Eastern]rÑ   )	r   r4   r©  r   r<   r   r‰   rŠ   r-   rš   s        r&   Útest_merge_datetime64tz_valuesz(TestMerge.test_merge_datetime64tz_valuesZ  s  € Üà˜1�vÜŸ™ z¸1ÀÔNñó
ˆô à˜1�vÜŸ™ z¸1ÀÔNñó
ˆô â Ü¤§¡¨jÀ!ÈÔ UÓVÜ—6‘6�(ñäŸF™F˜8Ü”r—}‘} Z¸¸|ÔLÓMñNñ	ó
ˆô �t˜U u°'Ô:ˆÜ
×Ñ˜f hÔ/Ø�iÑ ×&Ñ&Ð*FÒFÐFÐFØ�iÑ ×&Ñ&Ð*FÒFÐFÑFr(   c           	      ó‚  — t        j                  d¬«      }t        t        dg|¬«      dgt        dg|¬«      dœg d¢¬«      }|d d	 }|j	                  |d
¬«      }t        t        |¬«      t        t        ¬«      t        |¬«      t        t        ¬«      t        |¬«      dœg d¢¬«      }t        j                  ||«       y )NÚUTCr2   Ú2018r,   g      @Ú2019)r   rq   Údate2rå   r   r   r‘   )r   rÐ   Údate2_xrÑ   Údate2_y)	r4   ÚDatetimeTZDtyper   r   r   r   r9   r‰   rŠ   )rm   Údtzrƒ   r}   r�   rŽ   s         r&   Ú test_merge_on_datetime64tz_emptyz*TestMerge.test_merge_on_datetime64tz_emptyu  s±   € ä× Ñ  EÔ*ˆÜä% v h°cÔ:Ø˜Ü&¨ x°sÔ;ñò
 /ô
ˆð �R�aˆyˆØ—‘˜E f�Ó-ˆÜä SÔ)Ü!¬Ô.Ü!¨Ô,Ü!¬Ô.Ü!¨Ô,ñò Iô	
ˆô 	×Ñ˜f hÕ/r(   c                 ó  — t        t        j                  dddd¬«      dg¬«      }d|d	<   t        t        j                  g d
¢«      ddœ«      }|d   j                  j                  d«      j                  j                  d«      |d<   t        ||dd¬«      }t        t        j                  dddd¬«      dgdz  t        j                  gdz  z   t        j                  gdz  dgdz  z   dœ«      }t        j                  ||«       y )Nz2017-10-29 01:00r\   r  zEurope/Madrid)r§  Úfreqr3   r   rå   r*   rq   )z2017-10-29 03:00:00z2017-10-29 04:00:00z2017-10-29 05:00:00r   )r   rq   r®  rÎ   ©r¡   r’   rx   r[   )r   rÐ   rÑ   )r   r4   r©  Úto_datetimerý   Útz_localizeÚ
tz_convertr   r   r;   r‰   rŠ   r\  s        r&   Ú+test_merge_datetime64tz_with_dst_transitionz5TestMerge.test_merge_datetime64tz_with_dst_transitionŽ  sû   € äÜ�M‰MÐ,°a¸cÀoÔVØ�Hô
ˆð ˆˆG‰ÜäŸ™òóð ñ	ó
ˆð ˜&‘k—n‘n×0Ñ0°Ó7×:Ñ:×EÑEÀoÓVˆˆF‰Ü�s˜C W°Ô8ˆÜäŸ™Ø&°¸Àôð ˜3 ™7¤b§f¡f X°¡\Ñ1ÜŸF™F˜8 a™<¨1¨#°©'Ñ1ñó
ˆô 	×Ñ˜f hÕ/r(   c           	      óô  — t        j                  ddd¬«      }t        t        t	        t        |«      «      «      |dg¬«      }t        ||g«      }|j                  |ddd¬	«      }t        t        j                  t        j                  dt        j                  ¬
«      j                  d«      j                  dd«      d«      ddg|j                  «       j                  ¬«      }t!        j"                  ||«       y )Nz
2016-01-01é   ÚM©r§  r¸  Úpnum©r‚   r¥   Trª   )r†   r‡   r¡   r,   r   éÿÿÿÿr*   Úpnum_xÚpnum_y©r¥   r‚   )r4   Úperiod_ranger   r   r   r   r   r   r   r   r÷   r+   ÚrepeatÚreshapeÚ
sort_indexr‚   r‰   rŠ   )rm   r‚   rn   ra   r�   rŽ   s         r&   Ú"test_merge_non_unique_period_indexz,TestMerge.test_merge_non_unique_period_index®  s¿   € ä—‘ °b¸sÔCˆÜ”tœE¤# e£*Ó-Ó.°eÀfÀXÔNˆÜ�b˜"�XÓˆØ—‘˜#¨$¸DÀg�ÓNˆÜÜ�G‰G”B—I‘I˜b¬¯©Ô1×8Ñ8¸Ó;×CÑCÀBÈÓJÈAÓNØ˜xÐ(Ø—.‘.Ó"×(Ñ(ô
ˆô
 	×Ñ˜f hÕ/r(   c                 ó”  — t        t        j                  ddd¬«      ddgdœ«      }t        t        j                  ddd¬«      g d	¢dœ«      }t        t        j                  dd
d¬«      ddt        j                  t        j                  gt        j                  dddgdœ«      }t        ||dd¬«      }t        j                  ||«       y )Nr¥  r   r…  rÁ  r*   rä   r¨  r[   r  r\   r4  rz   rÎ   rè   )r   r4   rÈ  r   r;   r   r‰   rŠ   rš   s        r&   Útest_merge_on_periodszTestMerge.test_merge_on_periods»  s²   € ÜÜ—O‘O J¸ÀÔDÐPQÐSTÈvÑVó
ˆô ä—‘ z¸1À3ÔGÚ"ñó
ˆô ä—‘ z¸1À3ÔGØ˜q¤"§&¡&¬"¯&©&Ð1ÜŸF™F A q¨!Ð,ñó
ˆô �t˜U u°'Ô:ˆÜ
×Ñ˜f hÕ/r(   c                 ó$  — t        ddgt        j                  ddd¬«      dœ«      }t        ddgt        j                  ddd¬«      dœ«      }t        j                  ddd¬«      }t        j                  ddd¬«      }t        g d	¢t        |«      t        j                  gz   t        j                  gt        |«      z   d
œ«      }t        ||dd¬«      }t        j                  ||«       |d   j                  dk(  sJ ‚|d   j                  dk(  sJ ‚y )Nr*   r   r¥  r…  rÁ  rä   r[   r¨  r  r4  rz   rÎ   rè   rÐ   z	Period[D]rÑ   )	r   r4   rÈ  r   r<   r   r‰   rŠ   r-   )rm   r}   rƒ   Úexp_xÚexp_yrŽ   r�   s          r&   Útest_merge_period_valuesz"TestMerge.test_merge_period_valuesÐ  sü   € ÜØ˜�F¤R§_¡_°ZÈÐQTÔ%UÑVó
ˆô Ø˜�F¤R§_¡_°ZÈÐQTÔ%UÑVó
ˆô —‘ 
°A¸CÔ@ˆÜ—‘ 
°A¸CÔ@ˆÜâ Ü ›;¬"¯&©&¨Ñ1ÜŸF™F˜8¤d¨5£kÑ1ñó
ˆô �t˜U u°'Ô:ˆÜ
×Ñ˜f hÔ/Ø�iÑ ×&Ñ&¨+Ò5Ð5Ð5Ø�iÑ ×&Ñ&¨+Ò5Ð5Ñ5r(   c                 óº  — |\  }}|j                  «       }|j                  «       }t        g d¢ddt        j                  t        j                  t        j                  t        j                  gddt        j                  t        j                  t        j                  t        j                  gt        j                  dddddgt        j                  dddddgd	œ«      }t	        g d
¢g d¢¬«      |d<   |g d¢   }t        ||ddd¬«      }t        j                  ||«       |j                  |ddd¬«      }t        j                  ||«       t        j                  ||«       t        j                  ||«       |}|j                  ddi¬«      }t        ||ddd¬«      }	t        j                  |	|«       |j                  |ddd¬«      }	t        j                  |	|«       y )N©r   r*   r   r[   r\   r]   r*   r   rV   rW   r[   r\   r]   )rX   Úcol_conflict_xrZ   Úcol_conflict_yr^   )Ú	left_onlyÚbothÚ
right_onlyrÙ  rÙ  rÙ  ©r×  rÙ  rØ  ©Ú
categoriesÚ_merge)rX   rÕ  rZ   rÖ  r^   rÝ  rX   rÎ   T©r’   r¡   Ú	indicatorÚcustom_namerå   )	rØ   r   r   r;   r	   r   r‰   rŠ   Úrename)
rm   rb   r`   ra   Údf1_copyÚdf2_copyÚ	df_resultÚtestÚdf_result_custom_nameÚtest_custom_names
             r&   Útest_indicatorzTestMerge.test_indicatoræ  s¶  € à$‰ˆˆSØ—8‘8“:ˆà—8‘8“:ˆäâ*Ø#$ a¬¯©´·±¼¿¹ÄÇÁÐ"HØ  #¤r§v¡v¬r¯v©v´r·v±v¼r¿v¹vÐFÜ#%§6¡6¨1¨a°°A°qÐ"9Ü Ÿf™f a¨¨A¨q°!Ð4ñó
ˆ	ô *òò ;ô

ˆ	�(Ñð òñ	
ˆ	ô �S˜# &¨gÀÔFˆÜ
×Ñ˜d IÔ.Ø�y‰y˜ ¨WÀˆyÓEˆÜ
×Ñ˜d IÔ.ô 	×Ñ˜c 8Ô,Ü
×Ñ˜c 8Ô,ð !*ÐØ 5× <Ñ <Ø˜}Ð-ð !=ó !
Ðô !Ø�˜ W¸ô
Ðô 	×ÑÐ.Ð0EÔFØŸ9™9Ø�F °=ð %ó 
Ðô 	×ÑÐ.Ð0EÕFr(   c                 ó  — |\  }}d}t        j                  t        |¬«      5  t        ||ddd¬«       d d d «       t        j                  t        |¬«      5  |j                  |ddd¬«       d d d «       y # 1 sw Y   ŒCxY w# 1 sw Y   y xY w)Nz<indicator option can only accept boolean or string argumentsr°   rX   rÎ   r]   rÞ  r»   )rm   rb   r`   ra   r·   s        r&   Ú#test_merge_indicator_arg_validationz-TestMerge.test_merge_indicator_arg_validation%  sˆ   € à$‰ˆˆSàLˆÜ�]‰]œ:¨SÔ1ñ 	AÜ�#�s˜v¨7¸aÕ@÷	Aä�]‰]œ:¨SÔ1ñ 	@Ø�I‰I�c˜f¨'¸QˆIÔ?÷	@ð 	@÷	Að 	Aú÷	@ð 	@ús   £A6ÁBÁ6A?ÂBc                 ó`  — |\  }}t        ||ddd¬«      }|j                  dk7  j                  «       sJ ‚|j                  |ddd¬«      }|j                  dk7  j                  «       sJ ‚t        ||ddd¬«      }|j                  dk7  j                  «       sJ ‚|j                  |ddd¬«      }|j                  dk7  j                  «       sJ ‚t        ||ddd¬«      }|j                  d	k(  j                  «       sJ ‚|j                  |ddd¬«      }|j                  d	k(  j                  «       sJ ‚y )
NrX   r}   TrÞ  rÙ  rƒ   r×  rª   rØ  )r   rÝ  rÚ   )rm   rb   r`   ra   Útest2Útest3Útest4s          r&   Ú%test_merge_indicator_result_integrityz/TestMerge.test_merge_indicator_result_integrity/  s%  € à$‰ˆˆSä�c˜3 6¨vÀÔFˆØ—‘ Ñ,×1Ñ1Ô3Ð3Ð3Ø—	‘	˜# &¨fÀ�	ÓEˆØ—‘ Ñ,×1Ñ1Ô3Ð3Ð3ä�c˜3 6¨wÀ$ÔGˆØ—‘ Ñ+×0Ñ0Ô2Ð2Ð2Ø—	‘	˜# &¨gÀ�	ÓFˆØ—‘ Ñ+×0Ñ0Ô2Ð2Ð2ä�c˜3 6¨wÀ$ÔGˆØ—‘ Ñ&×+Ñ+Ô-Ð-Ð-Ø—	‘	˜# &¨gÀ�	ÓFˆØ—‘ Ñ&×+Ñ+Ô-Ð-Ñ-r(   c           	      óŒ  — |\  }}dD ]ˆ  }t        dddg|ddgi«      }d|› d�}t        j                  t        |¬«      5  t	        ||ddd	¬
«       d d d «       t        j                  t        |¬«      5  |j	                  |ddd	¬
«       d d d «       ŒŠ t        ddgddgdœ«      }d}t        j                  t        |¬«      5  t	        ||ddd¬
«       d d d «       t        j                  t        |¬«      5  |j	                  |ddd¬
«       d d d «       y # 1 sw Y   ŒÆxY w# 1 sw Y   �Œ#xY w# 1 sw Y   Œ\xY w# 1 sw Y   y xY w)N)Ú_right_indicatorÚ_left_indicatorrÝ  rX   r*   r   zECannot use `indicator=True` option when data contains a column named z;|Cannot use name of an existing column for indicator columnr°   rÎ   TrÞ  )rX   Úcustom_column_namez:Cannot use name of an existing column for indicator columnró  ©r   r³   r´   r¶   r   )rm   rb   r`   rS  r  Údf_badcolumnr·   s          r&   Útest_merge_indicator_invalidz&TestMerge.test_merge_indicator_invalidB  si  € à"‰ˆˆQàBò 	PˆAÜ$ f¨q°!¨f°a¸!¸Q¸Ð%@ÓAˆLð Ø !˜sð #MðMð ô
 —‘œz°Ô5ñ QÜ�c˜<¨F¸È4ÕP÷Qä—‘œz°Ô5ñ PØ—	‘	˜,¨6°wÈ$�	ÔO÷Pð Pð	Pô !¨1¨a¨&ÈÈAÈÑ!OÓPˆàJˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØØ.õ÷	ô �]‰]œ:¨SÔ1ñ 	Ø�I‰IØ ¨WÐ@Tð ô ÷	ð 	÷#Qð Qú÷Pñ Pú÷	ð 	ú÷	ð 	ús/   ¿DÁ3D!ÃD.Ã6D:ÄD	Ä!D+	Ä.D7Ä:Ec                 óB  — t        ddgddgdœ«      }t        g d¢g d¢dœ«      }t        g d¢g d	¢dœ«      }t        g d
¢g d¢¬«      |d<   t        ||ddgdd¬«      }t        j                  ||«       |j                  |ddgdd¬«      }t        j                  ||«       y )Nr   r*   rV   rW   )rX   Úcol2)r*   r*   r[   )rW   rC   rû   )r   r*   r*   r[   ©rV   rW   rC   rû   )r×  rØ  rÙ  rÙ  rÚ  rÛ  rÝ  rX   rø  rÎ   TrÞ  ©r   r	   r   r‰   rŠ   )rm   Údf3Údf4Úhand_coded_resultÚtest5s        r&   Ú%test_merge_indicator_multiple_columnsz/TestMerge.test_merge_indicator_multiple_columnsd  sª   € ä ! Q °#°s°Ñ<Ó=ˆä¢²OÑDÓEˆä%Ú!Ò+?Ñ@ó
Ðô '2Ú=Ú:ô'
Ð˜(Ñ#ô
 �c˜3 F¨FÐ#3¸ÈDÔQˆÜ
×Ñ˜eÐ%6Ô7Ø—	‘	˜# 6¨6Ð"2¸È4�	ÓPˆÜ
×Ñ˜eÐ%6Õ7r(   c                 ó²	  — t        g d¢g d¢dœt        d«      ¬«      }t        g d¢g d¢dœt        d	«      ¬«      }|j                  «       }|j                  «       }t        ||d
d
d¬«      }t	        j
                  ||«       t	        j
                  ||«       t        g d¢g d¢g d¢g d¢dœt        d«      g d¢¬«      }t        ||d
d
d¬«      }t	        j
                  ||«       t        g d¢g d¢g d¢dœt        d«      ¬«      }t        ||dd¬«      }t	        j
                  ||«       t	        j
                  ||«       t	        j
                  ||«       t        ||dd¬«      }t	        j
                  ||«       t        g d¢g d¢g d¢dœg d¢t        d«      ¬«      }|j                  d«      }	t        |	|d
dd¬«      }t	        j
                  ||«       t        |t        dgdgdœdg¬«      g«      }
t        ||
d
d
d¬«       d}t        j                  t        |¬«      5  t        ||
d
d
d¬«       d d d «       t        j                  t        |¬«      5  t        ||
dd¬«       d d d «       t        |t        dgdgdœdg¬«      gd
¬«      }t        ||d
d
d¬«       d }t        j                  t        |¬«      5  t        ||d
d
d¬«       d d d «       t        j                  t        |¬«      5  t        ||dd¬«       d d d «       t        ||
dd!¬«       d"}t        j                  t        |¬«      5  t        ||
d
d
d¬«       d d d «       d#}t        j                  t        |¬«      5  t        ||
dd¬«       d d d «       d$}t        j                  t        |¬«      5  t        ||dd%¬«       d d d «       t        g d&¢g d'¢g d¢dœt        d«      ¬«      }t        g d(¢g d)¢g d*¢d+œt        d«      ¬«      }t        g d(¢g d)¢g d,¢g d*¢dœt        d«      ¬«      }d-}t        j                  t        |¬«      5  t        ||dd¬«       d d d «       t        ||dd.gd¬«      }t	        j
                  ||«       y # 1 sw Y   �ŒExY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒÆxY w# 1 sw Y   �Œ xY w# 1 sw Y   �ŒhxY w# 1 sw Y   �Œ@xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒŒxY w)/Nr  )ÚcatÚdogÚweaselÚhorserÕ   r\   r�   ©rV   rW   ru   rv   rw   )ÚmeowÚbarkúum... weasel noise?ÚnayÚchirp©rV   ru   r]   Tz1:1)r†   r‡   Úvalidate)r  r  r  r	  )Úa_xrW   Úa_yru   rÃ  Ú
one_to_oner  rV   )r’   r  ©rW   rV   ru   rÇ  )r†   r£   r  rw   ÚmooÚone_to_manyzBMerge keys are not unique in right dataset; not a one-to-one merger°   Úcowr[   )r¢   Úmany_to_onezAMerge keys are not unique in left dataset; not a one-to-one mergeÚmany_to_manyzCMerge keys are not unique in right dataset; not a many-to-one mergezBMerge keys are not unique in left dataset; not a one-to-many mergez™"jibberish" is not a valid argument. Valid arguments are:
- "1:1"
- "1:m"
- "m:1"
- "m:m"
- "one_to_one"
- "one_to_many"
- "many_to_one"
- "many_to_many"Ú	jibberish)rV   rV   rW   rW   )r   r*   r   r*   ©rV   rV   rW   )r   r*   r   )r  r  r  )rV   rW   rv   )r  r  r  zQMerge keys are not unique in either left or right dataset; not a one-to-one mergerW   )r   r   rØ   r   r‰   rŠ   r�   r   r³   r´   r   r¶   )rm   r}   rƒ   Ú	left_copyÚ
right_copyr�   rŽ   Ú
expected_2Ú
expected_3Úleft_index_resetÚright_w_dupsr·   Úleft_w_dupsÚexpected_multis                 r&   Útest_validationzTestMerge.test_validationw  sÇ  € ÜÚ&Ò-NÑOÜ˜“(ô
ˆô
 â.ÚLñô ˜“(ô
ˆð —I‘I“Kˆ	Ø—Z‘Z“\ˆ
ä�t˜U¨tÀÐPUÔVˆÜ
×Ñ˜d IÔ.Ü
×Ñ˜e ZÔ0ô â+Ú6Ú+ÚCñ	ô ˜“(Ú,ô	
ˆô Ø�% D°dÀ\ô
ˆô 	×Ñ˜f hÔ/äâ)Ú6ÚCñô
 ˜“(ô
ˆ
ô �t˜U s°UÔ;ˆÜ
×Ñ˜d IÔ.Ü
×Ñ˜e ZÔ0Ü
×Ñ˜f jÔ1ä�t˜U s°\ÔBˆÜ
×Ñ˜f jÔ1ô â6Ú)ÚCñò
 $Ü˜“(ô
ˆ
ð  Ÿ>™>¨#Ó.ÐÜØØØØØ!ô
ˆô 	×Ñ˜f jÔ1ô ˜u¤i°s°eÀ5À'Ñ0JÐSTÐRUÔ&VÐWÓXˆÜØØØØØ"õ	
ð SˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØ Ø%õ÷	ô �]‰]œ:¨SÔ1ñ 	EÜ�$˜¨°|ÕD÷	Eô Ø”9 C 5°¨wÑ7À¸sÔCÐDÈ4ô
ˆô 	ØØØØØ"õ	
ð RˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØ Ø%õ÷	ô �]‰]œ:¨SÔ1ñ 	EÜ�+˜u¨°|ÕD÷	Eô 	ˆk˜<¨C¸.ÕIàSˆÜ�]‰]œ:¨SÔ1ñ 	ÜØØØØ Ø&õ÷	ð SˆÜ�]‰]œ:¨SÔ1ñ 	MÜ�+˜|°¸mÕL÷	Mð
	ð 	ô �]‰]œ:¨SÔ1ñ 	=Ü�$˜ #°Õ<÷	=ô â)Ú!Ú6ñô
 ˜“(ô
ˆô â$ÚÚ<ñô
 ˜“(ô
ˆô #â$ÚÚ-Ú<ñ	ô ˜“(ô
ˆð%ð 	ô �]‰]œ:¨SÔ1ñ 	7Ü�$˜ #°Õ6÷	7ô �t˜U¨¨S z¸EÔBˆÜ
×Ñ˜f nÕ5÷W	ñ 	ú÷	Eñ 	Eú÷ 	ñ 	ú÷	Eñ 	Eú÷	ñ 	ú÷	Mñ 	Mú÷ 	=ñ 	=ú÷H	7ð 	7ús`   ÈQ2ÉQ?Ê7RË+RÌ/R&Í%R3ÎS Ð2SÑ2Q<Ñ?R	ÒRÒR#Ò&R0Ò3R=Ó S
ÓSc                 ó”   — t        g g g dœ«      }t        j                  d¬«      5  t        ||d¬«       d d d «       y # 1 sw Y   y xY w)Nr  Úraise)ÚdividerÕ   r‘   )r   r   Úerrstater   )rm   rV   s     r&   Ú)test_merge_two_empty_df_no_division_errorz3TestMerge.test_merge_two_empty_df_no_division_error<  s@   € ä˜B R¨bÑ1Ó2ˆÜ�[‰[ Ô(ñ 	'Ü�!�Q˜:Õ&÷	'÷ 	'ñ 	'ús	   ¦>¾ArÎ   zindex,expected_index)r*   r   r\   )r*   r   r\   NNN)ú
2001-01-01ú
2002-02-02ú
2003-03-03zM8[ns]r,   r&  r'  r(  r  )r*   r   r[   NNN)©r*   r   ©r   r[   ©r[   r\   r)  r*  r+  )r&  ú
2001-01-02ú
2001-01-03r…  )r¸  r,  r-  )Ú1dÚ2dÚ3dr.  r/  r0  c           
      ób  — t        g d¢g d¢dœ|¬«      }t        dg d¢i«      }|j                  |dd|¬«      }t        g d	¢g d
¢g d¢t        j                  ddgt        j                  ddgt        j                  ddggg d¢¬«      }|j	                  |d¬«       t        j                  ||«       y )Nr,  ©rV   rz   r�   rW   rÔ  rz   Tr«   )r   r   r   ©r*   r*   r*   ©r   r   r   r[   r\   r]   ©rV   rz   rW   rå   )Úinplace)r   r   r   r;   r�   r‰   rŠ   )rm   r¡   r‚   Úexpected_indexr`   ra   r�   rŽ   s           r&   Ú$test_merge_on_index_with_more_valuesz.TestMerge.test_merge_on_index_with_more_valuesB  s¥   € ô^ ši²	Ñ:À%ÔHˆÜ˜Ò0Ð1Ó2ˆØ—‘˜3¨¸4ÀS�ÓIˆÜâÚÚÜ—‘˜˜A�Ü—‘˜˜A�Ü—‘˜˜A�ðò &ô

ˆð 	×Ñ˜>°4ÐÔ8Ü
×Ñ˜f hÕ/r(   c                 óô   — t        g d¢g d¢dœ«      }t        dg d¢i«      }t        g d¢g d¢g d¢dœg d¢d	d
dt        j                  g¬«      }|j                  |ddd¬«      }t	        j
                  ||«       y )Nr  )r   r*   r*   r2  rW   ©r*   r   r[   N)r   r*   r*   r   )r*   r   r   r[   r5  r   r*   r   rÇ  rz   Trƒ   r«   ©r   r   r;   r   r‰   rŠ   rš   s        r&   Útest_merge_right_index_rightz&TestMerge.test_merge_right_index_right‚  sq   € ô šy²Ñ;Ó<ˆÜ˜3¢	Ð*Ó+ˆäÚ!ª,º\ÑJÚ%Ø�a˜œBŸF™FÐ#ô
ˆð
 —‘˜E¨5¸dÈ�ÓPˆÜ
×Ñ˜f hÕ/r(   c                 óø   — t        ddgddgdœ«      }t        ddgddgdœ«      }|j                  |dd	g|¬
«      }|dk(  rt        ddgddgdœ«      }nt        ddgddgdœ«      }t        j                  ||«       y )Nr  Úpigé(   ro  )ÚanimalÚ	max_speedÚquetzaléP   r@  rA  rè   rƒ   rˆ   )rm   r¡   Úleft_dfÚright_dfr�   rŽ   s         r&   Útest_merge_preserves_row_orderz(TestMerge.test_merge_preserves_row_order‘  s“   € ô ¨¨u ~ÀRÈÀHÑMÓNˆÜ¨°EÐ(:È"ÈbÈÑRÓSˆØ—‘˜x¨X°{Ð,CÈ�ÓMˆØ�'Š>Ü ¨Y¸Ð,>ÈbÐRTÈXÑ!VÓW‰Hä ¨U°E¨NÈ"ÈbÈÑ!RÓSˆHÜ
×Ñ˜f hÕ/r(   c           	      ój  — t        g d¢t        g d¢t        d«      ¬«      dœ«      }t        dg d¢it        g d¢«      ¬«      }|j	                  |d	d
d¬«      }t        g d¢t        g d¢«      g d¢dœdddt
        j                  g¬«      }|j                  g d¢¬«      }t        j                  ||«       y )Nr  r  ÚabcrÛ  r2  rW   r  r�   rz   Trƒ   r«   r:  )rV   rV   rW   ru   )r*   r*   r   r[   r5  r   r*   r   rå   )
r   r	   r   r
   r   r   r;   Úreindexr‰   rŠ   r­   s        r&   Ú8test_merge_take_missing_values_from_index_of_other_dtypezBTestMerge.test_merge_take_missing_values_from_index_of_other_dtype�  s§   € äâÜ"¢?¼tÀE»{ÔKñó
ˆô ˜3¢	Ð*Ô2BÂ?Ó2SÔTˆØ—‘˜E¨5¸dÈ�ÓPˆÜâ$Ü"Ò#7Ó8Ú!ñð
 �a˜œBŸF™FÐ#ô
ˆð ×#Ñ#Ò,=Ð#Ó>ˆÜ
×Ñ˜f hÕ/r(   c                 óN  — t        t        j                  d«      j                  d«      dz   g d¢¬«      }t        t        j                  d«      j                  d«      dz   g d¢¬«      }|j                  j
                  D ]  }d|j                  _        Œ |j                  |«       y )	Nrí   )r\   r]   r*   r  rå   )r]   r\   rù  F)	r   r   r÷   rÊ  Ú_mgrr—  ÚflagsÚ	writeabler   )rm   ri   rj   r%   s       r&   Útest_merge_readonlyzTestMerge.test_merge_readonly²  s‰   € äÜ�I‰I�b‹M×!Ñ! &Ó)¨AÑ-Ò7Pô
ˆô Ü�I‰I�b‹M×!Ñ! &Ó)¨AÑ-Ò7Kô
ˆð
 —:‘:×$Ñ$ò 	(ˆCØ"'ˆC�I‰IÕð	(ð 	�‰�EÕr(   N)Prg  rh  ri  r³   Úfixturern   ra   r}   rƒ   r�   r–   r›   rž   r¨   r®   r¸   r¼   rÄ   rÓ   rÛ   rá   rë   rô   rù   rþ   r
  r  r  ÚmarkÚparametrizer  r  r.  r2  r7  r;  rI  rL  r]  r`  Úfilterwarningsrm  rw  rƒ  rœ  rž  r£  rª  r¬  r¶  r½  rÌ  rÎ  rÒ  rè  rê  rï  rö  rÿ  r   r%  r
   r   r4   r<   r‰   ÚALL_REAL_NUMPY_DTYPESr   r   Úfloat64r   Úfrom_tuplesr;   r   r   r8  r<  rF  rJ  rO  )Ú.0Údtypr   r   s   0000r&   rd   rd   o   sk  „ Ø‡^�^ñó ðð ‡^�^ñ
ó ð
ð ‡^�^ñ
ó ð
ð ‡^�^ñ
ó ð
ò0ò+ò

0ò0òHò8Gò*Hò&ò8 ò7ò(
+òMò0ò&2ò.Kò@òò*ò,ð ‡[�[×Ñ˜UÒ$GÓHñ,ó Ið,ð ‡[�[×ÑØà°Ñ5Ø¨SÑ1Ø¨DÑ1Ø¨Ñ-ð		
óñ.óð.ò-ò^('òT0ò$0ò*@ð@ ‡[�[×ÑØ˜e¢_Ð5¸ºoÐ7NÐOóð ‡[�[×Ñ˜U V¨WÐ$5Ó6ñ0ó 7óð0òCò*0ð ‡[�[×ÑØWóñ	1óð	1ò0ò40ð  ‡[�[×Ñ˜VÒ%KÓLñ+ó Mð+ð: ‡[�[×Ñ˜VÒ%KÓLñ+ó Mð+ò2ò00ò2Gò60ò20ò@0ò0ò*6ò,=Gò~@ò.ò& òD8ò&C6òJ'ð ‡[�[×Ñ˜U W¨gÐ$6Ó7Ø‡[�[×ÑØñ !¢Ó+Ù Ò!<Ó=ðñ
 Ú>Àhôñ Ø! <°¸r¿v¹vÀrÇvÁvÈrÏvÉvÐVØ"ôð	ð&	
ð& ×4Ñ4÷ñ ð
 ô š)¨4Ô0ÜÒ5¼R¿Z¹ZÔHòõð&	
ð, *�×)Ñ)Ò*BÓCØ)�×)Ñ)Ø˜V V¨R¯V©V°R·V±V¸R¿V¹VÐDóðð+&	
ñ8 ÒFÈSÔQÙØ! <°¸r¿v¹vÀrÇvÁvÈrÏvÉvÐVØôðð7&	
ñF Ò1Ó2Ù  d¨D°"·&±&¸"¿&¹&À"Ç&Á&ÐIÓJððE&	
ó)ñT0óU)ó 8ðV0ò*0ð ‡[�[×Ñ˜U V¨WÐ$5Ó6ñ	0ó 7ð	0ò0ó*ùõs   É+3Nrd   c                 óð   — dD ]q  }dD ]j  }| j                  |||¬«      }t        | j                  «       |j                  «       ||¬«      }|j                  d«      }t	        j
                  ||d¬«       Œl Œs y )N)rª   r}   rÎ   )TF©r¡   r¢   r‚   F)Úcheck_names)r¬   r   r[  r�   r‰   rŠ   )rC   rû   r¡   r¢   r�   rŽ   s         r&   r  r  Â  sx   € Ø)ò GˆØ!ò 	GˆDØ—V‘V˜A 3¨T�VÓ2ˆFä˜QŸ]™]›_¨a¯m©m«oÀ3ÈTÔRˆHØ×)Ñ)¨'Ó2ˆHô ×!Ñ! &¨(ÀÖFñ	GñGr(   c                   ó¶  — e Zd Zej                  j                  dddg eddg«      j                  d«      g«      d„ «       Zej                  j                  de	j                  e	j                  e	j                  e	j                  e	j                  e	j                  g«      ej                  j                  de	j                  e	j                   e	j"                  e	j$                  g«      d„ «       «       Zej                  j                  d	g d
¢g d¢g d
¢g d¢dœfg d
¢ddgddgddgdœfddgg d¢ddgddgdœfg«      d„ «       Zd„ Zd„ Zd„ Zd„ Zej                  j                  dg d¢ eg d¢«      j                  d«      fg d¢ eg d¢«      j                  d«      fddg eddge¬«      fddg eddge¬«      fg«      d „ «       Zej                  j                  d eddgd!¬«      g d"¢f eddgd#¬«      g d"¢fg d¢g d$¢fg d¢g d$¢fg d¢g d$¢f ej:                  d%dd&¬'«      d(d)gf ej:                  d%dd&¬'«      ddgf ej:                  d%dd&¬'«      d*dgf ej:                  d+d¬,«       ej:                  d+dd-¬.«      fg	«      d/„ «       Zej                  j                  d0ddgd1fg d2fdgd3fdgd4fg«      d5„ «       Zej                  j                  d0d6d7gd1fg d2fd7gd3fd6gd4fg«      d8„ «       Z ej                  j                  d9d2g d:¢g d;¢gfd1g d;¢g d:¢gfd4g d:¢g d;¢gfd3g d;¢g d:¢gfg«      d<„ «       Z!d=„ Z"ej                  j                  d>g d?¢«      d@„ «       Z#yA)BÚTestMergeDtypesÚ
right_valsr/   rÆ   Úcategoryc                 óT  — t        ddgt        ddg«      j                  d«      ddgddgt        ddgd¬	«      t        ddgd
¬	«      dœ«      }t        d|i«      }t        ||d¬«      }t	        |j
                  j                  «      s"t        |j
                  j                  «      sJ ‚y y )Nr/   rÆ   r_  r*   r   ç      ð?ç       @Úuint64r,   Úint32)ry  rz  ÚCr…  ÚEÚFry  r‘   )r   r   r™   r   r   ry  r-   r   )rm   r^  r}   rƒ   r�   s        r&   Útest_differentzTestMergeDtypes.test_differentÏ  s§   € ô à˜U�^Ü˜U E˜NÓ+×2Ñ2°:Ó>Ø˜�VØ˜3�ZÜ˜Q ˜F¨(Ô3Ü˜Q ˜F¨'Ô2ñó	
ˆô ˜3 
Ð+Ó,ˆô
 �t˜U sÔ+ˆÜ˜vŸx™xŸ~™~Ô.´/À&Ç(Á(Ç.Á.Ô2QÐQÐQÐ2QÐ.r(   Úd1Úd2c           	      óä  — t        j                  |«      }t        j                  |«      }t        t        j                  g d¢dz  |¬«      ddgdz  t        j                  t        j                  d«      t         j
                  ¬«      dœ«      }t        j                  d	d
g«      }t        dt        j                  ddg|¬«      i|¬«      }|j                  |ddg¬«      }|j                  «       }	|j                  dk(  rt        j                  d«      }t        j                  t         j                  |¬«      |	d<   d|	j                  |	j                  dk(  |	j                  dk(  z  df<   d|	j                  |	j                  dk(  |	j                  dk(  z  df<   t        j                   ||	«       |j                  |ddgd¬«      }|	j#                  ddgdd¬«       t        j                   ||	«       y )Nr,  rÌ   r,   r/   rÆ   r?  é   )Úk1Úk2Úv)r   rÆ   )r*   r/   r   r]   rx   r�   rm  rn  r‘   r  rU  r   r*   TrD  Ú	mergesort)Úkindr6  )r   r-   r   rê   r÷   r+   r   rV  r¬   rØ   rq  r;   r¤   rm  rn  r‰   rŠ   Úsort_values)
rm   ri  rj  Údtype1Údtype2r}   r‚   rƒ   r�   rŽ   s
             r&   Útest_join_multi_dtypesz&TestMergeDtypes.test_join_multi_dtypeså  s”  € ô
 —‘˜"“ˆÜ—‘˜"“ˆää—h‘hšy¨1™}°FÔ;Ø˜e�n rÑ)Ü—X‘XœbŸi™i¨›m´2·8±8Ô<ñó
ˆô ×&Ñ&¨
°JÐ'?Ó@ˆÜ˜4¤§¡¨1¨a¨&¸Ô!?Ð@ÈÔNˆà—‘˜5 d¨D \�Ó2ˆà—9‘9“;ˆà�;‰;˜#ÒÜ—X‘X˜iÓ(ˆFÜŸ™¤"§&¡&°Ô7ˆ�‰ØJKˆ�‰�h—k‘k QÑ&¨8¯;©;¸%Ñ+?Ñ@À$ÐFÑGØJKˆ�‰�h—k‘k QÑ&¨8¯;©;¸%Ñ+?Ñ@À$ÐFÑGä
×Ñ˜f hÔ/à—‘˜5 d¨D \¸�Ó=ˆØ×Ñ˜d D˜\°ÀTÐÔJÜ
×Ñ˜f hÕ/r(   zint_vals, float_vals, exp_valsr  )ra  rb  ç      @©ÚXÚYra  rv  r*   r[   r   rb  c                 ó   — t        d|i«      }t        d|i«      }t        |«      }|j                  |dd¬«      }t        j                  ||«       |j                  |dd¬«      }t        j                  ||ddg   «       y )Nrx  ry  r²   rˆ   )rm   Úint_valsÚ
float_valsÚexp_valsry  rz  rŽ   r�   s           r&   Útest_merge_on_ints_floatsz)TestMergeDtypes.test_merge_on_ints_floats  s|   € ô �s˜H�oÓ&ˆÜ�s˜JÐ'Ó(ˆÜ˜XÓ&ˆà—‘˜ C°#�Ó6ˆÜ
×Ñ˜f hÔ/à—‘˜ C°#�Ó6ˆÜ
×Ñ˜f h°°S¨zÑ&:Õ;r(   c                 óú   — t        ddgddgdœddg¬«      }t        d	gd
gdœddg¬«      }|j                  |dd¬«      }t        ddgddgt        j                  dgdœg d¢¬«      }t	        j
                  ||«       y )Nra  rb  rp   rí   ry   rz   r{   rå   r   éÈ   )rz   r   r   r}   rè   g      i@r   )r   r   r   r;   r‰   rŠ   r\  s        r&   Útest_merge_key_dtype_castz)TestMergeDtypes.test_merge_key_dtype_cast  s…   € ä  c 
°2°r°(Ñ;ÀeÈTÀ]ÔSˆÜ  ¨C¨5Ñ1¸EÀ4¸=ÔIˆØ—‘˜3 5¨f�Ó5ˆÜØ˜#�J r¨2 h´r·v±v¸u°oÑFÚ'ô
ˆô 	×Ñ˜f hÕ/r(   c                 óÔ  — t        dg d¢i«      }t        dg d¢i«      }t        dgdgdœ«      }t        j                  t        «      5  |j	                  |dd¬«      }t        j
                  ||«       d d d «       t        j                  t        «      5  |j	                  |dd¬«      }t        j
                  ||ddg   «       d d d «       t        dt        j                  t        j                  dgi«      }t        j                  d «      5  |j	                  |dd¬«      }t        j
                  ||ddg   «       d d d «       y # 1 sw Y   ŒÔxY w# 1 sw Y   Œ�xY w# 1 sw Y   y xY w)	Nrx  r  ry  )çš™™™™™ñ?g      @rv  r[   rv  rw  r²   )r   r‰   ru  ÚUserWarningr   rŠ   r   r;   )rm   ry  rz  rŽ   r�   s        r&   Ú!test_merge_on_ints_floats_warningz1TestMergeDtypes.test_merge_on_ints_floats_warning)  sL  € ô
 �sšIÐ&Ó'ˆÜ�sšOÐ,Ó-ˆÜ A 3¨c¨UÑ3Ó4ˆä×'Ñ'¬Ó4ñ 	4Ø—W‘W˜Q¨°c�WÓ:ˆFÜ×!Ñ! &¨(Ô3÷	4ô ×'Ñ'¬Ó4ñ 	@Ø—W‘W˜Q¨°c�WÓ:ˆFÜ×!Ñ! &¨(°C¸°:Ñ*>Ô?÷	@ô
 �sœRŸV™V¤R§V¡V¨SÐ1Ð2Ó3ˆä×'Ñ'¨Ó-ñ 	@Ø—W‘W˜Q¨°c�WÓ:ˆFÜ×!Ñ! &¨(°C¸°:Ñ*>Ô?÷	@ð 	@÷	4ð 	4ú÷	@ð 	@ú÷	@ð 	@ús$   Á+EÂ0EÄ0EÅEÅEÅE'c                 ó  — t        dt        ddgt        ¬«      i«      }t        dddgi«      }t        dddgit        ¬«      }t        ||d¬«      }t	        j
                  ||«       t        ||d¬«      }t	        j
                  ||«       y ©Nrz   TFr,   r‘   )r   r   r:   r   r‰   rŠ   ©rm   r`   ra   rŽ   r�   s        r&   Ú(test_merge_incompat_infer_boolean_objectz8TestMergeDtypes.test_merge_incompat_infer_boolean_objectA  s€   € ä˜¤¨¨e }¼FÔ CÐDÓEˆÜ˜  u Ð.Ó/ˆä˜e d¨E ]Ð3¼6ÔBˆÜ�s˜C EÔ*ˆÜ
×Ñ˜f hÔ/Ü�s˜C EÔ*ˆÜ
×Ñ˜f hÕ/r(   c                 ó6  — t        dt        ddt        j                  gt        ¬«      i«      }t        dddgi«      }t        dddgit        ¬«      }t        ||d¬«      }t        j                  ||«       t        ||d¬«      }t        j                  ||«       y r‡  )r   r   r   r;   r:   r   r‰   rŠ   rˆ  s        r&   Ú5test_merge_incompat_infer_boolean_object_with_missingzETestMergeDtypes.test_merge_incompat_infer_boolean_object_with_missingL  s‰   € ô ˜¤¨¨e´R·V±VÐ'<ÄFÔ KÐLÓMˆÜ˜  u Ð.Ó/ˆä˜e d¨E ]Ð3¼6ÔBˆÜ�s˜C EÔ*ˆÜ
×Ñ˜f hÔ/Ü�s˜C EÔ*ˆÜ
×Ñ˜f hÕ/r(   zdf1_vals, df2_valsr,  )rV   rW   rV   )rU  ra  rb  r   FTr,   c                 ó8  — t        d|i«      }t        d|i«      }t        ||dg¬«      }t        |j                  j                  «      sJ ‚t        ||dg¬«      }t        |j                  j                  «      s"t        |j                  j                  «      sJ ‚y y )Nry  r‘   )r   r   r   ry  r-   r   )rm   Údf1_valsÚdf2_valsr`   ra   r�   s         r&   Ú!test_merge_incompat_dtypes_are_okz1TestMergeDtypes.test_merge_incompat_dtypes_are_okX  s�   € ô  ˜˜h˜Ó(ˆÜ˜˜h˜Ó(ˆä�s˜C S EÔ*ˆÜ˜vŸx™xŸ~™~Ô.Ð.Ð.Ü�s˜C S EÔ*ˆÜ˜vŸx™xŸ~™~Ô.´/À&Ç(Á(Ç.Á.Ô2QÐQÐQÐ2QÐ.r(   rc  r  rd  )r}  Ú1Ú2z1/1/2011r…  rÁ  z
2011-01-01z
2011-01-02rU  Ú20130101)r§  r1   r¦  c                 ó\  — t        d|i«      }t        d|i«      }d|d   j                  › d|d   j                  › d�}t        j                  |«      }t	        j
                  t        |¬«      5  t        ||dg¬«       d d d «       d|d   j                  › d|d   j                  › d�}t        j                  |«      }t	        j
                  t        |¬«      5  t        ||dg¬«       d d d «       t        |«      t        |«      k(  rót        |||dœ«      }t        |||dœ«      }d|d   j                  › d|d   j                  › d	�}t        j                  |«      }t	        j
                  t        |¬«      5  t        ||«       d d d «       d|d
   j                  › d|d
   j                  › d�}t        j                  |«      }t	        j
                  t        |¬«      5  t        ||dd
g¬«       d d d «       y y # 1 sw Y   �Œ€xY w# 1 sw Y   �Œ"xY w# 1 sw Y   Œ‘xY w# 1 sw Y   y xY w)Nry  úYou are trying to merge on ú and zE columns for key 'A'. If you wish to proceed you should use pd.concatr°   r‘   ©ry  rz  re  rz  zE columns for key 'B'. If you wish to proceed you should use pd.concatre  zE columns for key 'C'. If you wish to proceed you should use pd.concat)	r   r-   ÚreÚescaper³   r´   r¶   r   r   )rm   r�  rŽ  r`   ra   r·   rû  rü  s           r&   Ú test_merge_incompat_dtypes_errorz0TestMergeDtypes.test_merge_incompat_dtypes_errorp  s)  € ô4 ˜˜h˜Ó(ˆÜ˜˜h˜Ó(ˆð *¨#¨c©(¯.©.Ð)9¸¸sÀ3¹x¿~¹~Ð>Nð OSð Sð 	ô �i‰i˜‹nˆÜ�]‰]œ:¨SÔ1ñ 	&Ü�#�s ˜uÕ%÷	&ð
 *¨#¨c©(¯.©.Ð)9¸¸sÀ3¹x¿~¹~Ð>Nð OSð Sð 	ô �i‰i˜‹nˆÜ�]‰]œ:¨SÔ1ñ 	&Ü�#�s ˜uÕ%÷	&ô
 ˆx‹=œC ›MÒ)ô  (°ÀÑIÓJˆCÜ (°ÀÑIÓJˆCð
 .¨c°#©h¯n©nÐ-=¸UÀ3ÀsÁ8Ç>Á>ÐBRð SWð Wð ô —)‘)˜C“.ˆCÜ—‘œz°Ô5ñ  Ü�c˜3”÷ ð .¨c°#©h¯n©nÐ-=¸UÀ3ÀsÁ8Ç>Á>ÐBRð SWð Wð ô —)‘)˜C“.ˆCÜ—‘œz°Ô5ñ /Ü�c˜3 C¨ :Õ.÷/ð /ð/ *÷	&ñ 	&ú÷	&ñ 	&ú÷$ ð  ú÷/ð /ús0   Á.G<ÃH	Å9HÇ!H"Ç<HÈ	HÈHÈ"H+zexpected_data, howrÎ   rª   rƒ   r}   c                 óÔ   — t        dgdg|¬«      }t        dgdg|¬«      }t        |||¬«      }t        t        |«      «      }t        ||dg|¬«      }t	        j
                  ||«       y )N)r*   Úidrö   )r   rî   ©r‚   r¥   r-   ©r   r   r   r   r‰   rŠ   )	rm   Úany_numeric_ea_dtyper¡   Úexpected_datari  rj  r�   Ú	exp_indexrŽ   s	            r&   Útest_merge_EA_dtypez#TestMergeDtypes.test_merge_EA_dtypeº  so   € ô ˜�v¨ vÐ5IÔJˆÜ˜�v¨ vÐ5IÔJˆÜ�r˜2 3Ô'ˆÜœs =Ó1Ó2ˆ	ÜØ °T°FÐBVô
ˆô 	×Ñ˜f hÕ/r(   rV   rW   c                 óÔ   — t        dgdg|¬«      }t        dgdg|¬«      }t        |||¬«      }t        t        |«      «      }t        ||dg|¬«      }t	        j
                  ||«       y )N)rV   r›  rö   )rW   rî   rœ  r�  )	rm   r¡   rŸ  Úany_string_dtyperi  rj  r�   Úexp_idxrŽ   s	            r&   Útest_merge_string_dtypez'TestMergeDtypes.test_merge_string_dtypeÎ  so   € ô ˜�x¨$¨Ð7GÔHˆÜ˜�x¨$¨Ð7GÔHˆÜ�r˜2 3Ô'ˆÜœS Ó/Ó0ˆÜØ °4°&Ð@Pô
ˆô 	×Ñ˜f hÕ/r(   zhow, expected_data)Tr*   r\   )Fr]   r[   c                 ó²   — t        ddgddgdœ«      }t        ddgddgdœ«      }t        |||¬	«      }t        |g d
¢¬«      }t        j                  ||«       y )NTFr*   r]   ©ry  rz  r[   r\   ©ry  re  rî   r–  rå   rˆ   )rm   r¡   rŸ  r`   ra   r�   rŽ   s          r&   Útest_merge_bool_dtypez%TestMergeDtypes.test_merge_bool_dtypeâ  s\   € ô ˜t U˜m°1°a°&Ñ9Ó:ˆÜ˜u d˜m°1°a°&Ñ9Ó:ˆÜ�s˜C SÔ)ˆÜ˜]²OÔDˆÜ
×Ñ˜f hÕ/r(   c                 ón  — t        g d¢g d¢dœt        j                  «       ¬«      }|j                  «       }t        dddt        j                  dgd	d
dt        j                  dgdœ|¬«      }|j                  «       }t        ||dg|¬«      }t        j                  ||«       t        j                  ||«       t        t        j                  d«      t        j                  «       t        j                  d«      gt        j                  g d¢«      ¬«      }t        j                  |j                  |«       y )N)r�  r‘  Ú3Ú4N)r¬  Ú5Ú6Ú7Ú8)©Úlvl0zlvl1-a©r²  zlvl1-b)Údatar-   r�  r‘  r«  r­  r¯  r°  Ú9Ú11)r±  ©r²  zlvl1-cr±  )r}   rƒ   r’   r¡   ÚO)r±  r³  r·  r�   )r   r4   ÚStringDtyperØ   ÚNAr   r‰   rŠ   r   r   r-   r   rV  rÒ   r5  )	rm   r  Ústring_dtyper`   râ  ra   rã  rÂ   rŽ   s	            r&   Útest_merge_ea_with_stringz)TestMergeDtypes.test_merge_ea_with_stringó  sÿ   € äâ$>Ú$=ñô —.‘.Ó"ô
ˆð —8‘8“:ˆÜà%(¨#¨s´B·E±E¸3Ð$?Ø%(¨#¨s´B·E±E¸4Ð$@ñð ô
ˆð —8‘8“:ˆÜ˜C sÐ0BÐ/CÈÔSˆô 	×Ñ˜c 8Ô,Ü
×Ñ˜c 8Ô,ô Ü�X‰X�c‹]œBŸN™NÓ,¬b¯h©h°s«mÐ<Ü×(Ñ(ÚLóô
ˆô 	×Ñ˜vŸ}™}¨hÕ7r(   zleft_empty, how, exp)
)Fr}   r}   )Frƒ   Úempty)Frª   r½  )FrÎ   r}   )FÚcrossÚempty_cross)Tr}   r½  )Trƒ   rƒ   )Trª   r½  )TrÎ   rƒ   )Tr¾  r¿  c                 ó$  — t        ddgddgdœ«      }t        dgdgdœd¬	«      }|r|j                  d
«      }n|j                  d
«      }|j                  ||¬«      }|dk(  r2t        ddgddgt        j                  t        j                  gdœ«      }nO|dk(  r!t        dgt        j                  gdgdœ«      }n)|dk(  rt        g d¢d¬«      }n|dk(  rt        g d¢d¬«      }|dk(  rj                  dd¬«      }t        j                  |«       y )Nr   r*   r[   r\   r§  r]   r¨  r+   r,   r   rî   r}   r–  rƒ   r½  rö   r¿  )ÚA_xrz  ÚA_yre  rÎ   ry  Trr  )r   Úheadr   r   r;   rr  r‰   rŠ   )rm   Ú
left_emptyr¡   r•   r}   rƒ   r�   rŽ   s           r&   Útest_merge_emptyz TestMergeDtypes.test_merge_empty  s  € ô    1˜v¨Q°¨FÑ3Ó4ˆÜ  ¨1¨#Ñ.°gÔ>ˆáØ—9‘9˜Q“<‰Dà—J‘J˜q“MˆEà—‘˜E s�Ó+ˆà�&Š=Ü ¨¨1 v°Q¸°FÄ"Ç&Á&Ì"Ï&É&ÐAQÑ!RÓS‰HØ�GŠ^Ü ¨ s´"·&±&°ÀÀÑ!DÓE‰HØ�GŠ^Ü ªÀÔH‰HØ�MÒ!Ü Ò)AÈÔQˆHà�'Š>Ø×+Ñ+¨C¸dÐ+ÓCˆHä
×Ñ˜f hÕ/r(   N)$rg  rh  ri  r³   rQ  rR  r   r™   rh  r   r+   rd  ÚintcÚint16Úint8Úuint8rU  Úfloat32Úfloat16ru  r~  r�  r…  r‰  r‹  r:   rï   r�  r4   r©  r™  r¡  r¥  r©  r¼  rÅ  r6   r(   r&   r]  r]  Î  sö  „ Ø‡[�[×ÑØ˜˜u�~¡v¨u°e¨nÓ'=×'DÑ'DÀZÓ'PÐQóñRóðRð& ‡[�[×ÑØˆr�x‰x˜Ÿ™ 2§7¡7¨B¯H©H°b·g±g¸r¿x¹xÐHóð ‡[�[×Ñ˜T B§H¡H¨b¯j©j¸"¿*¹*ÀbÇjÁjÐ#QÓRñ0ó Sóð0ð> ‡[�[×ÑØ(âšªyºÑ)OÐPÚ˜˜c˜
¨1¨a¨&¸¸S°zÑ$BÐCØ�ˆV’_¨Q°¨F¸#¸s¸Ñ&DÐEð	
óñ<óð<ò	0ò@ò0	0ò
0ð ‡[�[×ÑØò ™šÓ/×6Ñ6°zÓBÐCÚ™f¢_Ó5×<Ñ<¸ZÓHÐIà�ˆV‘V˜U D˜M°Ô8Ð9Ø�ˆV‘V˜U D˜M°Ô6Ð7ð	
ó
ñRó
ðRð ‡[�[×ÑØñ �Q˜�F (Ô+ª_Ð=Ù�Q˜�F 'Ô*ªOÐ<ÚšÐ(ÚšoÐ.ÚšÐ(à�—‘˜j°!¸#Ô>Ø˜|Ð,ðð ˆR�]‰]˜:¨q°sÔ;¸aÀ¸VÐDØˆR�]‰]˜:¨q°sÔ;¸cÀ3¸ZÐHà�—‘˜j°!Ô4Ø�—‘˜j°!¸ÔEðð	
óñ*3/ó+ð*3/ðj ‡[�[×ÑØà�ˆV�WÐØ�ˆMØˆS�'ˆNØˆS�&ˆMð		
óñ	0óð	0ð ‡[�[×ÑØà�3ˆZ˜Ð!Ø�ˆMØˆU�GÐØˆU�FˆOð		
óñ	0óð	0ð ‡[�[×ÑØà’|¢]Ð3Ð4Ø’}¢lÐ3Ð4Ø’l¢MÐ2Ð3Ø’}¢lÐ3Ð4ð		
óñ0óð0ò8ðB ‡[�[×ÑØò	
óñ0óñ0r(   r]  c                  ó$  — t        t        t        j                  j	                  d«      j                  ddgd¬«      «      j                  t        ddg«      «      t        j                  j	                  d«      j                  g d¢d¬«      dœ«      S )Nr   r/   rÆ   )rp   r=  )ÚoneÚtwoÚthreerw  )r   r   r   r   r    Úchoicer™   r   r6   r(   r&   r}   r}   =  sy   € ääÜ—	‘	×%Ñ% aÓ(×/Ñ/°¸°ÀUÐ/ÓKóç‰fÔ% u¨e nÓ5Ó6Ü—‘×&Ñ& qÓ)×0Ñ0Ò1HÈuÐ0ÓUñ		
óð r(   c                  ól   — t        t        ddg«      j                  t        ddg«      «      ddgdœ«      S )Nr/   rÆ   r*   r   )rx  ÚZ)r   r   r™   r   r6   r(   r&   rƒ   rƒ   I  s<   € ää˜ ˜Ó'×.Ñ.Ô/?ÀÈÀÓ/OÓPØ�Q�ñ	
óð r(   c            
       ó–  — e Zd Zd„ Zd„ Zd„ Zd„ Zej                  j                  dddg«      d„ «       Z
d	„ Zej                  j                  d
d„ d„ d„ g«      d„ «       Zd„ Zd„ Zej                  j                  dddg«      ej                  j                  dg d¢ddgddgfg d¢ddgddgfg d¢ddgddgfg«      d„ «       «       Zd„ Zy)ÚTestMergeCategoricalc                 óî   — t        ||d¬«      }|j                  j                  «       }|st        j                  d«      nd}t        t        ddg¬«      ||gg d¢¬	«      }t        j                  ||«       y )
Nrx  r‘   r¸  Ústringr/   rÆ   rÛ  )rx  ÚY_xÚY_yr�   ©	r   r5  rË  r   r-   r   r   r‰   rÒ   )rm   r}   rà   rÂ   r�   r-   rŽ   s          r&   Útest_identicalz#TestMergeCategorical.test_identicalT  se   € ä�t˜T cÔ*ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸XˆÜÜ¨%°¨Ô8¸%ÀÐGÚ%ô
ˆô 	×Ñ˜v xÕ0r(   c                 ó  — t        ||d¬«      }|j                  j                  «       }|st        j                  d«      nd}t        t        ddg¬«      |t        j                  d«      gg d	¢¬
«      }t        j                  ||«       y )Nrx  r‘   r¸  rÖ  r/   rÆ   rÛ  r+   ©rx  ry  rÒ  r�   rÙ  ©rm   r}   rƒ   rà   rÂ   r�   r-   rŽ   s           r&   Ú
test_basiczTestMergeCategorical.test_basic_  sv   € ô �t˜U sÔ+ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸XˆÜä ¨U°E¨NÔ;ØÜ—‘˜Ó!ðò
 "ô
ˆô 	×Ñ˜v xÕ0r(   c           	      ó
  — t        ddddddœddddddœdœ«      }t        d	d	d	d	d	dœd
d
d
d
d
dœdœ«      }t        ||ddd¬«      }|j                  «       }|j                  «       }|d   j                  d«      |d<   t        ||ddd¬«      }|d   j                  t	        dg«      «      |d<   t        j                  ||«       |j                  «       }|d   j                  d«      |d<   t        ||ddd¬«      }t        j                  ||«       |j                  «       }|d   j                  d«      |d<   |j                  «       }|d   j                  d«      |d<   t        ||ddd¬«      }t        j                  ||«       y )NrV   rW   ru   rv   rw   )r   r*   r   r[   r\   ÚnullrÖ   r  r  rÕ   r}   )r¡   r    r£   r_  )r   r   rØ   r™   r   r‰   rŠ   )rm   rƒ   r}   rn   rŽ   Úcrightr�   Úclefts           r&   Útest_merge_categoricalz+TestMergeCategorical.test_merge_categoricalo  s•  € ô à ¨°¸Ñ=Ø F¨v¸&ÀVÑLñó
ˆô à ¨°¸Ñ=Ø ¨°¸Ñ=ñó
ˆô �4˜ F°CÀ#ÔFˆð —7‘7“9ˆð
 —‘“ˆØ˜S‘k×(Ñ(¨Ó4ˆˆs‰Ü�t˜V¨¸ÀsÔKˆØ  ™×,Ñ,Ô-=¸v¸hÓ-GÓHˆ�‰Ü
×Ñ˜f hÔ/ð —	‘	“ˆØ˜3‘Z×&Ñ& zÓ2ˆˆc‰
Ü�u˜f¨&¸#ÈÔLˆÜ
×Ñ˜f hÔ/ð —‘“ˆØ˜S‘k×(Ñ(¨Ó4ˆˆs‰Ø—	‘	“ˆØ˜3‘Z×&Ñ& zÓ2ˆˆc‰
Ü�u˜f¨&¸#ÈÔLˆÜ
×Ñ˜f hÕ/r(   c                 ó  — t        t        g d¢g d¢¬«      g d¢dœ«      }t        t        g d¢g d¢¬«      g d¢dœ«      }t        ||dg¬	«      }t        t        g d¢«      g d¢g d
¢dœ«      }t        j                  ||«       y )Nr–  rÛ  )ÚA0ÚB0ÚC0)ÚFooÚLeft)re  rz  ry  )ÚC1ÚB1ÚA1)rè  ÚRightrè  r‘   )rì  rë  rê  )rè  ré  rí  rú  r\  s        r&   Ú'tests_merge_categorical_unordered_equalz<TestMergeCategorical.tests_merge_categorical_unordered_equalš  s}   € ää"¢?ºÔOÚ*ñó
ˆô ä"¢?ºÔOÚ+ñó
ˆô �s˜C U GÔ,ˆÜä"¢?Ó3Ú*Ú+ñó
ˆô 	×Ñ˜f hÕ/r(   ÚorderedTFc                 ó¸  — t        ddg|¬«      }t        g d¢t        g d¢|¬«      g d¢dœ«      j                  d	d
g«      }t        g d¢t        g d¢|¬«      g d¢dœ«      j                  d	d
g«      }t	        ||ddd¬«      }t        g d¢t        g d¢|¬«      g d¢ddt
        j                  gdœ«      j                  d	d
g«      }t        j                  ||«       y )NÚP2ÚP1©rÜ  rï  )re  re  r…  )rñ  rò  rñ  r,   r,  )r›  ÚprV   r›  rô  )ry  re  re  )rñ  rñ  rò  )rp   ro  r?  )r›  rô  ri  r}   Trº   g      &@g      (@)r›  rô  rV   ri  )	r   r   r	   r�   r   r   r;   r‰   rŠ   )rm   rï  Úpcatr`   ra   r�   rŽ   s          r&   Ú5test_multiindex_merge_with_unordered_categoricalindexzJTestMergeCategorical.test_multiindex_merge_with_unordered_categoricalindex³  sã   € ô  ¨D°$¨<ÀÔIˆÜâ%Ü Ò!3¸4Ô@Úñó
÷ ‰)�T˜3�KÓ
 ð 	ô â%Ü Ò!3¸4Ô@Ú"ñó
÷ ‰)�T˜3�KÓ
 ð 	ô �s˜C V¸È$ÔOˆÜâ%Ü Ò!3¸4Ô@ÚØ˜T¤2§6¡6Ð*ñ	ó
÷ ‰)�T˜3�KÓ
 ð 	ô 	×Ñ˜f hÕ/r(   c                 óH  — |j                  |j                  j                  d«      ¬«      }t        ||d¬«      }|j                  j                  «       }|st        j                  d«      nd}t        t        ddg¬	«      |t        d
dg¬	«      gg d¢¬«      }t        j                  ||«       |j                  j                  j                  |j                  j                  «      sJ ‚|j                  j                  j                  |j                  j                  «      sJ ‚y )Nr_  )rÒ  rx  r‘   r¸  rÖ  r/   rÆ   rÛ  r*   r   rÜ  r�   )ÚassignrÒ  r™   r   r5  rË  r   r-   r   r   r‰   rÒ   rx  rJ  Ú#_categories_match_up_to_permutationrÝ  s           r&   Útest_other_columnsz'TestMergeCategorical.test_other_columnsÐ  sÛ   € à—‘˜uŸw™wŸ~™~¨jÓ9�Ó:ˆä�t˜U sÔ+ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸XˆÜä ¨U°E¨NÔ;ØÜ ¨Q°¨FÔ3ðò
 "ô
ˆô 	×Ñ˜v xÔ0ð �v‰v�}‰}×@Ñ@ÀÇÁÇÁÔQÐQÐQØ�w‰w�~‰~×AÑAÀ&Ç(Á(Ç/Á/ÔRÐRÑRr(   Úchangec                 ó   — | S r?   r6   rB   s    r&   rD   zTestMergeCategorical.<lambda>è  s   € �a€ r(   c                 ó:   — | j                  t        g d¢«      «      S )N)r/   rÆ   Úbah©r™   r   rB   s    r&   rD   zTestMergeCategorical.<lambda>é  s   € �a—h‘hÔ/Ò0EÓFÓG€ r(   c                 ó8   — | j                  t        d¬«      «      S )NT©rï  rÿ  rB   s    r&   rD   zTestMergeCategorical.<lambda>ê  s   € �a—h‘hÔ/¸Ô=Ó>€ r(   c                 óÄ  —  ||j                   j                  d«      «      }|j                  |¬«      }t        |j                   j                  j
                  t        «      sJ ‚t        ||d|¬«      }|j                  j                  «       }|st        j
                  d«      nd}	t        |	|	t        j
                  d«      gg d¢¬	«      }
t        j                  ||
«       y )
Nr:   )rx  rx  rè   r¸  rÖ  r+   rÜ  r�   )rx  r™   rø  rk  rJ  r-   r   r   r5  rË  r   r   r‰   rÒ   )rm   rû  r  r}   rƒ   rà   rx  rÂ   r�   r-   rŽ   s              r&   Útest_dtype_on_merged_differentz3TestMergeCategorical.test_dtype_on_merged_differentå  s«   € ñ �5—7‘7—>‘> (Ó+Ó,ˆØ—‘˜q�Ó!ˆÜ˜$Ÿ&™&Ÿ-™-×-Ñ-Ô/?Ô@Ð@Ð@ô �t˜U s°	Ô:ˆà—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸XˆÜ˜5 %¬¯©°'Ó):Ð;Â?ÔSˆÜ
×Ñ˜v xÕ0r(   c                 ó^  — d}t        g d¢|z  g d¢dz  |z  dD ��cg c]  }|gdz  |z  D ]  }|‘Œ Œ c}}dD ��cg c]  }|g|z  D ]  }|‘Œ Œ c}}dœ«      }|j                  d„ «      }t        ||t        |j                  «      ¬	«      }t        j                  ||«       y c c}}w c c}}w )
Nr]   )
rV   rW   ru   rv   rw   r  r  r  r  Új)rq  ÚwrC   rû   r  r   )r†  r#   Úurô  Úo)
ÚaaÚbbÚccÚddÚeeÚffÚggÚhhÚiiÚjjr  c                 ó$   — | j                  d«      S )Nr_  )r™   rB   s    r&   rD   zITestMergeCategorical.test_self_join_multiple_categories.<locals>.<lambda>   s   €  §¡¨Ó 4€ r(   r‘   )r   Úapplyr   r   r¥   r‰   rŠ   )rm   r†  ÚeachÚletterrn   r�   s         r&   Ú"test_self_join_multiple_categoriesz7TestMergeCategorical.test_self_join_multiple_categoriesÿ  sÝ   € ð ˆÜâGÈ!ÑKÚ.°Ñ2°QÑ6ð !:÷àØ#' &¨1¡*¨q¡.òð ò ðØóð!÷àð $( &¨1¡*òð ò ðØóñó
ˆð: �X‰XÑ4Ó5ˆô �r˜2¤$ r§z¡zÓ"2Ô3ˆä
×Ñ˜f bÕ)ùó=ùó
s
   œB#»B)c                 ó@  — t        t        ddd«      dgt        ddd«      dggddg¬«      }|d   j                  d	«      |d<   t        t        ddd«      dgt        ddd
«      dggddg¬«      }|d   j                  d	«      |d<   t        t        j                  d«      j                  «       ddgt        j                  d«      j                  «       dt
        j                  gt        j                  d«      j                  «       t
        j                  dggg d¢¬«      }t        ||ddg¬«      }t        j                  ||«       t        t        j                  d«      j                  «       ddggg d¢¬«      }t        ||ddg¬«      }t        j                  ||«       y )NiÑ  r*   rƒ  r   çÍÌÌÌÌÌô?r   Únum2rå   r_  r[   çffffffö?Únum4r&  r,  r-  )r   r  r  rÎ   r¹  rª   )
r   r   r™   r4   r5   r   r;   r   r‰   rŠ   )rm   rn   ra   Úexpected_outerÚresult_outerÚexpected_innerÚresult_inners          r&   Útest_dtype_on_categorical_datesz4TestMergeCategorical.test_dtype_on_categorical_dates'  sˆ  € ô Ü�4˜˜AÓ Ð$¤t¨D°!°QÓ'7¸Ð&=Ð>ÈÐQWÐHXô
ˆð ˜‘Z×&Ñ& zÓ2ˆˆ6‰
äÜ�4˜˜AÓ Ð$¤t¨D°!°QÓ'7¸Ð&=Ð>ÈÐQWÐHXô
ˆð ˜&‘k×(Ñ(¨Ó4ˆˆF‰ä"ä—‘˜lÓ+×0Ñ0Ó2°C¸Ð=Ü—‘˜lÓ+×0Ñ0Ó2°C¼¿¹Ð@Ü—‘˜lÓ+×0Ñ0Ó2´B·F±F¸CÐ@ðò
 -ô
ˆô ˜R ¨'°v°hÔ?ˆÜ
×Ñ˜l¨NÔ;ä"Ü�l‰l˜<Ó(×-Ñ-Ó/°°cÐ:Ð;Ú,ô
ˆô ˜R ¨'°v°hÔ?ˆÜ
×Ñ˜l¨NÕ;r(   z.category_column,categories,expected_categories)FTTF)r   r*   r*   r   r*   r   )ÚFalseÚTruer#  r"  r#  r"  c                 óD  — t        g d¢|dœ«      }|d   j                  t        ||¬«      «      |d<   t        ddgddgd	œ«      }|j                  |«      }t        ddg|ddgd
œ«      }|d   j                  t        ||¬«      «      |d<   t	        j
                  ||«       y )NrÈ   )r›  r  r  r  r   r\   r*   r"  )r›  Únum)r›  r  r%  )r   r™   r   r   r‰   rŠ   )	rm   Úcategory_columnrÜ  Úexpected_categoriesrï  r`   ra   r�   rŽ   s	            r&   Ú/test_merging_with_bool_or_int_cateorical_columnzDTestMergeCategorical.test_merging_with_bool_or_int_cateorical_columnG  s§   € ô š|°OÑDÓEˆØ˜‘Z×&Ñ&Ô'7¸
ÈGÔ'TÓUˆˆE‰
Ü  1˜v¨q°!¨fÑ5Ó6ˆØ—‘˜3“ˆÜ Q¨ FÐ3FÐPQÐSTÈvÑVÓWˆØ" 5™/×0Ñ0Ü˜Z°Ô9ó
ˆ�‰ô 	×Ñ˜h¨Õ/r(   c                 óö   — t        t        ddt        j                  gd¬«      ddœ«      }t	        ||d¬«      }t        t        ddt        j                  gd¬«      dddœ«      }t        j                  ||«       y )	Nr*   r   r.   r,   r§  ry  r‘   )ry  ÚB_xÚB_y)r   r   r   r;   r   r‰   rŠ   )rm   rn   r�   rŽ   s       r&   Útest_merge_on_int_arrayz,TestMergeCategorical.test_merge_on_int_array_  sg   € äœV Q¨¬2¯6©6 N¸'ÔBÈÑKÓLˆÜ�r˜2 #Ô&ˆÜÜ˜!˜Q¤§¡˜¨wÔ7ÀÈ!ÑLó
ˆô 	×Ñ˜f hÕ/r(   N)rg  rh  ri  rÚ  rÞ  rã  rî  r³   rQ  rR  rö  rú  r  r  r!  r(  r,  r6   r(   r&   rÔ  rÔ  S  s  „ ò	1ò1ò )0òV0ð2 ‡[�[×Ñ˜Y¨¨u¨Ó6ñ0ó 7ð0ò8Sð* ‡[�[×ÑØáÙGÙ>ð	
óñ1óð1ò$&*òP<ð@ ‡[�[×Ñ˜Y¨¨u¨Ó6Ø‡[�[×ÑØ8â'¨$°¨¸¸u¸ÐFÚ˜A˜q˜6 A q 6Ð*Ú/°&¸'Ð1BÀVÈWÐDUÐVð	
óñ0óó 7ð0ó0r(   rÔ  c                  ó(   — t        dg d¢ig d¢¬«      S )NrV   ©rí   rp   r   ©r   r*   r   r�   r_   r6   r(   r&   rD  rD  i  s   € ä�cš;Ð'ªyÔ9Ð9r(   c                  ó(   — t        dg d¢ig d¢¬«      S )NrW   ©é,  éd   r€  ©r[   r*   r   r�   r_   r6   r(   r&   rE  rE  n  s   € ä�cš?Ð+²9Ô=Ð=r(   c                   óX  — e Zd Zej                  j                  ddd eddgddgdœd	d
g¬«      fdd eddgddgdœd
d	g¬«      fdd eg d¢ddej                  gdœg d¢¬«      fdd eg d¢ej                  ddgdœg d¢¬«      fdd eej                  ddgg d¢dœg d¢¬«      fdd eddej                  gg d¢dœg d¢¬«      fdd edddej                  gej                  dddgdœg d¢¬«      fdd edddej                  gej                  dddgdœg d¢¬«      fg«      d„ «       Z	y)ÚTestMergeOnIndexeszhow, sort, expectedrª   Frí   rp   r€  r3  rÕ   r   r*   r�   Tr}   r.  r/  )r   rp   rí   r,  rƒ   r1  r4  ©r3  r€  r2  r  rÎ   r   r2  r˜   c                 óR   — t        ||dd||¬«      }t        j                  ||«       y )NT)r†   r‡   r¡   r¢   r“   )rm   rD  rE  r¡   r¢   rŽ   r�   s          r&   Útest_merge_on_indexesz(TestMergeOnIndexes.test_merge_on_indexest  s/   € ô` Ø�X¨$¸DÀcÐPTô
ˆô 	×Ñ˜f hÕ/r(   N)
rg  rh  ri  r³   rQ  rR  r   r   r;   r9  r6   r(   r&   r6  r6  s  sŠ  „ Ø‡[�[×ÑØà�e™Y¨b°"¨X¸SÀ#¸JÑ'GÐPQÐSTÈvÔVÐWØ�d™I¨R°¨H¸CÀ¸:Ñ&FÈqÐRSÈfÔUÐVàØÙ¢°3¸¸R¿V¹VÐ2DÑEÊYÔWðð ØÙ¢°2·6±6¸3ÀÐ2DÑEÊYÔWðð ØÙØŸ6™6 2 rÐ*²ÑAÊôðð ØÙØ˜r 2§6¡6Ð*²ÑAÊôðð ØÙØ˜b " b§f¡fÐ-°R·V±V¸SÀ#ÀsÐ4KÑLÚ&ôðð ØÙØ˜b " b§f¡fÐ-°R·V±V¸SÀ#ÀsÐ4KÑLÚ&ôððG+	
ó.ñ^0ó_.ñ^0r(   r6  r‚   r*   r   Ú	index_colr@   ry  rz  )rÜ  rA   )ÚstartÚstoprA   r0   z
2018-01-02rÏ   c                 óL   — t        | «      j                  › d| j                  › d�S )Nú[r‘  )Útyperg  r-   rB   s    r&   rD   rD   ²  s"   € ”T˜!“W×%Ñ%Ð& a¨¯© y°Ð2€ r(   )rG   c                 óÄ   — t        dddgi| ¬«      }t        dddgi| ¬«      }|j                  |dg¬	«      }t        ddgddgd
œ| ¬«      }t        j                  ||«       y )NÚ	left_datar*   r   r�   Ú
right_datara  rb  r:  r‘   )rA  rB  rˆ   )r‚   r}   rƒ   r�   rŽ   s        r&   Útest_merge_index_typesrC  ª  sl   € ô �k A q 6Ð*°%Ô8€DÜ�| c¨3 ZÐ0¸Ô>€Eà�Z‰Z˜ ; -ˆZÓ0€Fä¨¨1 v¸cÀ3¸ZÑHÐPUÔV€HÜ×Ñ˜& (Õ+r(   z-on,left_on,right_on,left_index,right_index,nmrÎ   rª   F)NNNTTrz  T)NNNTTNc           
      óø  — t        dg d¢it        j                  ddgddggddg¬	«      ¬
«      }t        g d¢t        j                  ddgddggddg¬	«      |¬«      }t        ddgddgdœt        j                  ddgdggddg¬	«      ¬
«      }|�)t	        ||| ||||¬«      }	t        j                  |	|«       y d}
t        j                  t        |
¬«      5  t	        ||| ||||¬«      }	d d d «       y # 1 sw Y   y xY w)Nry  rÈ   rV   rW   r   r*   rÎ   rª   ©Únamesr�   r   r�  r\   r[   r§  )r’   r    r£   r†   r‡   z$Cannot merge a Series without a namer°   )
r   r   Úfrom_productr   r   r‰   rŠ   r³   r´   r¶   )r’   r    r£   r†   r‡   ÚnmrV   rW   rŽ   r�   r·   s              r&   Útest_merge_seriesrI  À  s'  € ô 	Ø	ŠlÐÜ×%Ñ%¨¨S z°A°q°6Ð&:À7ÈGÐBTÔUô	€Aô 	ÚÜ×%Ñ%¨¨S z°A°q°6Ð&:À7ÈGÐBTÔUØô	€Aô
 Ø�!ˆf˜A˜q˜6Ñ"Ü×%Ñ%¨¨S z°A°3Ð&7ÀÈÐ?QÔRô€Hð 
€~ÜØØØØØØ!Ø#ô
ˆô 	×Ñ˜f hÕ/à4ˆÜ�]‰]œ:¨SÔ1ñ 		ÜØØØØØ!Ø%Ø'ôˆF÷		÷ 		ñ 		ús   ÃC0Ã0C9c                  ó:  — t        dg d¢it        j                  ddgddggddg¬	«      ¬
«      } t        g d¢t        j                  ddgddggddg¬	«      d¬«      }t	        j
                  t        d¬«      5  t        | |ddg¬«       d d d «       y # 1 sw Y   y xY w)Nry  rÈ   rV   rW   r   r*   rÎ   rª   rE  r�   r   )rz  re  r�  z-Not allowed to merge between different levelsr°   r‘   )r   r   rG  r   r³   r´   r   r   rÕ   s     r&   Útest_merge_series_multilevelrK  õ  s¨   € ô 	Ø	ŠlÐÜ×%Ñ%¨¨S z°A°q°6Ð&:À7ÈGÐBTÔUô	€Aô 	ÚÜ×%Ñ%¨¨S z°A°q°6Ð&:À7ÈGÐBTÔUØô	€Aô
 
�‰ÜÐIô
ñ +ô 	ˆa�˜ Ð)Õ*÷+÷ +ñ +ús   Á7BÂBz!col1, col2, kwargs, expected_colsÚsuffixes)Ú Ú_dupr}  Ú0_dup)NrN  )Ú_xÚ_yÚ0_xÚ0_yrP  rQ  rV   )NrQ  rU  )rP  Nz0.0_xrW   Úb_yr  )NrP  )Ú_aNÚ0_ar  c                 ó  — t        | g d¢i«      }t        |g d¢i«      }t        ddgddgddgg|¬	«      } |j                  |fd
d
dœ|¤Ž}t        j                  ||«       t        ||fd
d
dœ|¤Ž}t        j                  ||«       y )Nr  r   r*   r\   r   r]   r[   rË   rå   Tr…   rˆ   )rX   rø  ÚkwargsÚexpected_colsrV   rW   rŽ   r�   s           r&   Útest_merge_suffixrZ  	  s•   € ô( 	�4šÐ#Ó$€AÜ�4šÐ#Ó$€Aä˜1˜a˜& 1 a &¨1¨a¨&Ð1¸=ÔI€HàˆQ�W‰W�QÐD 4°TÑD¸VÑD€FÜ×Ñ˜& (Ô+ä�1�aÐE D°dÑE¸fÑE€FÜ×Ñ˜& (Õ+r(   zhow,expectedrƒ   r7  é<   éF   ©éX  é¼  é   )ry  rë  ÚB2)r*   r3  r€  r2  rC  r^  r_  r`  c                 óª   — t        g d¢g d¢dœ«      }t        g d¢g d¢dœ«      }t        ||d| d¬«      }g d	¢|_        t        j                  ||«       y )
N)r3  r€  r*   )r[  r\  rC  r§  r7  r]  ry  )rP  rP  )r’   r¡   rL  )ry  r*  r*  )r   r   r¥   r‰   rŠ   )r¡   rŽ   rD  rE  r�   s        r&   Útest_merge_duplicate_suffixrc  '	  sL   € ô, šm²,Ñ?Ó@€GÜš²_ÑEÓF€HÜ�7˜H¨°#ÀÔM€FÚ*€HÔä×Ñ˜& (Õ+r(   zcol1, col2, suffixes))rV   rV   )NN)rV   rV   )rM  N)r   r   )NrM  c                 óÄ   — t        | g d¢i«      }t        |g d¢i«      }d}t        j                  t        |¬«      5  t	        ||dd|¬«       d d d «       y # 1 sw Y   y xY w)Nr  ©r[   r\   r]   z'columns overlap but no suffix specifiedr°   T©r†   r‡   rL  rô  )rX   rø  rL  rV   rW   r·   s         r&   Útest_merge_suffix_errorrg  E	  s`   € ô 	�4šÐ#Ó$€AÜ�4šÐ#Ó$€Að 4€CÜ	�‰”z¨Ô	-ñ JÜˆa�˜t°ÀÕI÷J÷ Jñ Jús   ¼AÁAr}   ©r}   rƒ   c                 óÀ   — t        dg d¢i«      }t        dg d¢i«      }t        j                  t        d¬«      5  t	        ||dd| ¬«       d d d «       y # 1 sw Y   y xY w)	NrV   r  rW   re  zPassing 'suffixes' as ar°   Trf  )r   r³   r´   Ú	TypeErrorr   )rL  rV   rW   s      r&   Útest_merge_suffix_raisesrk  T	  sX   € ä�3š	Ð"Ó#€AÜ�3š	Ð"Ó#€Aä	�‰”yÐ(AÔ	Bñ JÜˆa�˜t°ÀÕI÷J÷ Jñ Júó   ºAÁAzcol1, col2, suffixes, msg)rV   rV   r  z(too many values to unpack \(expected 2\)z1not enough values to unpack \(expected 2, got 1\)c                 óÀ   — t        | g d¢i«      }t        |g d¢i«      }t        j                  t        |¬«      5  t	        ||dd|¬«       d d d «       y # 1 sw Y   y xY w)Nr  re  r°   Trf  rô  )rX   rø  rL  r·   rV   rW   s         r&   Útest_merge_suffix_length_errorrn  ]	  sY   € ô 	�4šÐ#Ó$€AÜ�4šÐ#Ó$€Aä	�‰”z¨Ô	-ñ JÜˆa�˜t°ÀÕI÷J÷ Jñ Júrl  Ú	cat_dtyperÍ  rÎ  Úreversec                 óP  — t        g d¢d¬«      t        g d¢d¬«      dœ}t        t        g d¢«      j                  |d   «      g d¢dœ«      j	                  d«      }g d¢}g d¢}|r |j                  «        |j                  «        t        t        |«      j                  ||    «      |d	œ«      j	                  d«      }|j                  |d
d
¬«      }t        g d¢g d¢t        g d¢«      j                  |d   «      dœ«      j	                  d«      }t        j                  ||«       y )Nr  Fró  )rÍ  rÎ  rÍ  r  ©r/   r}   r/   ©r/   rƒ   Tr…   ©r}   rƒ   r/   )	r   r   r   r™   r�   rp  r   r‰   rŠ   )	ro  rp  Ú
cat_dtypesr`   Údata_fooÚ
data_rightra   r�   rŽ   s	            r&   Útest_merge_equal_cat_dtypesrx  l	  s  € ô
  ª?ÀEÔJÜª?ÀEÔJñ€Jô
 Ü’Ó'×.Ñ.¨z¸%Ñ/@ÓAÊ9ÑUóç�i�Óð ò €HÚ€JáØ×ÑÔØ×ÑÔä
Ü�xÓ ×'Ñ'¨
°9Ñ(=Ó>ÈÑTóç�i�Óð ð �Y‰Y�s t¸ˆYÓ>€FäâÚÜš/Ó*×1Ñ1°*¸UÑ2CÓDñ	
ó÷ �i�Óð ô ×Ñ˜& (Õ+r(   c                  óÒ  — t        g d¢d¬«      } t        t        ddg«      j                  | «      ddgdœ«      j	                  d	«      }t        t        g d¢«      j                  | «      g d
¢dœ«      j	                  d	«      }|j                  |dd¬«      }t        ddgddgt        ddg«      j                  | «      dœ«      j	                  d	«      }t        j                  ||«       y )Nr  Fró  rV   rW   r*   r   rr  r/   )r[   r   r*   rs  Tr…   r[   rt  )r   r   r   r™   r�   r   r‰   rŠ   )ro  r`   ra   r�   rŽ   s        r&   Útest_merge_equal_cat_dtypes2rz  ‘	  sÝ   € ä ªOÀUÔK€Iô Ü˜˜S�zÓ"×)Ñ)¨)Ó4¸qÀ!¸fÑEóç�i�Óð ô Ü’Ó'×.Ñ.¨yÓ9ÂIÑNóç�i�Óð ð �Y‰Y�s t¸ˆYÓ>€FäØ�Q� 1 a &´¸¸c¸
Ó1C×1JÑ1JÈ9Ó1UÑVóç�i�Óð ô ×Ñ˜& (Õ+r(   c            
      ó@  — t        dt        t        j                  dd«      t        j                  dd«      gd¬«      i«      } | j	                  «       }|d   j                  d«      |d<   t        || dd¬	«      }| j	                  «       }t        j                  ||«       y )
NrV   r   r*   r   Úintervalr,   r_  rª   r¹  )	r   r   r4   ÚIntervalrØ   r™   r   r‰   rŠ   )rƒ   r}   r�   rŽ   s       r&   Útest_merge_on_cat_and_ext_arrayr~  §	  s†   € äØ	Œf”b—k‘k ! QÓ'¬¯©°Q¸Ó):Ð;À:ÔNÐOó€Eð �:‰:‹<€DØ�S‘	× Ñ  Ó,€Dˆ�Iä�4˜ G°Ô4€FØ�z‰z‹|€Hä×Ñ˜& (Õ+r(   c                  óÜ  — g d¢} g d¢}t        j                  | |fddg¬«      }t        |¬«      }d|d<   t        |¬«      }d|d<   d	}d
}|j                  |d||f¬«      }| D ��	cg c]  }|D ]	  }	||z   |	f‘Œ Œ }
}}	|
dgz  }
|
| D ��	cg c]  }|D ]	  }	||z   |	f‘Œ Œ c}	}z  }
t        j                  |
ddg¬«      }t        |¬«      }t        j                  ||d¬«       y c c}	}w c c}	}w )Nr  ©r�  r‘  r«  rÎ   rª   rE  rå   rM  r›  rP  rQ  ©r’   rL  )r›  rM  FrY  )r   rG  r   r   rV  r‰   rŠ   )ÚlettersÚnumbersr‚   Úframe_xÚframe_yÚl_sufÚr_sufr�   r  r%  Útuplesr7  rŽ   s                r&   Útest_merge_multiindex_columnsr‰  µ	  s  € ò #€GÚ€GÜ×#Ñ# W¨gÐ$6¸wÈÐ>PÔQ€Eä Ô&€GØ€GˆD�MÜ Ô&€GØ€GˆD�Mà€EØ€EØ�]‰]˜7 t¸¸u°~ˆ]ÓG€Fð 3:×M¨ÀWÒM¸cˆv˜‰~˜sÒ#ÐMÐ#ÐM€FÑMØ
ˆzˆlÑ€FØ
°7×N¨ÀgÒN¸s�˜‘ Ò$ÐNÐ$ÓNÑN€Fä×+Ñ+¨F¸7ÀGÐ:LÔM€NÜ Ô0€Hä×Ñ˜& (¸Ö>ùó NùãNs   Á%C"Â	C(c                  ó  — t        g d¢g d¢dœ«      } t        g d¢t        j                  g d¢«      dœ«      }t        | |dd¬	«      }t        g d¢g d¢t        j                  g d
¢«      dœ«      }t	        j
                  ||«       y )Nr  )r�  r‘  r¬  )rC   rû   r€  )Ú2000Ú2001Ú2002)rû   r  r}   rû   r¹  )r‹  rŒ  r<   r  )r   r4   rº  r   r‰   rŠ   ©r`   ra   r�   rŽ   s       r&   Ú test_merge_datetime_upcast_dtyper�  Ó	  ss   € ä
š/²Ñ@Ó
A€CÜ
Ú¤B§N¡NÒ3KÓ$LÑMó€Cô �3˜ ¨CÔ0€FÜâ Ú Ü—‘Ò 7Ó8ñ	
ó€Hô ×Ñ˜& (Õ+r(   Ún_categoriesr]   é€   c                 ó¶  — t        dgt        t        | «      «      z   «      }t        t        | dz   «      dg|¬«      }t        dggdgt        dgt        t        | «      «      ¬«      ¬«      }t	        ||ddd¬	«      }t        t        | dz   «      D �cg c]  }|d
k  r|dgn|t
        j                  g‘Œ c}ddg|¬«      }t        j                  ||«       y c c}w )Nr   r*   rq   rÇ  rË   rÛ  r}   Trº   r   g      @rÐ   rÑ   )	r
   r   r   r   r   r   r;   r‰   rŠ   )r�  r†   r`   ra   r�   r  rŽ   s          r&   Ú%test_categorical_non_unique_monotonicr“  ä	  sÕ   € ô
 " 1 #¬¬U°<Ó-@Ó(AÑ"AÓB€JÜ
”E˜,¨Ñ*Ó+°g°YÀjÔ
Q€CÜ
Ø
ˆˆØ�	Ü ˜s¬t´E¸,Ó4GÓ/HÔIô€Cô �3˜ °DÀdÔK€FÜÜ5:¸<È!Ñ;KÓ5LÖM°�Q˜’Uˆ!ˆS‰ ¤B§F¡F Ñ	+ÒMØ˜IÐ&Øô€Hô
 ×Ñ˜( FÕ+ùò	 	Ns   Â"Cc                  óð  — t        g d¢g d¢«      g d¢dœ} t        | «      } t        g d¢g d¢«      g d¢g d¢dœ}t        |«      j                  d	d
g«      d   }t        | |j	                  «       ddgd	d
gd¬«      }|j                  d	d
gd¬«      }| j                  |ddg¬«      }t        j                  ||«       t        g d¢g d¢d¬«      g d¢dœ} t        | «      } t        g d¢g d¢d¬«      g d¢g d¢dœ}t        |«      j                  d	d
g«      d   }t        | |j	                  «       ddgd	d
gd¬«      }|j                  d	d
gd¬«      }| j                  |ddg¬«      }t        j                  ||«       y )N)rV   rW   rV   ru   rV   rW   r  )r   r*   r   r*   r   r   )ÚCat1ÚInt1)rV   rW   ru   rV   rW   ru   )r   r   r   r*   r*   r*   )rƒ  g333333ó?r  r  r_  gš™™™™™ù?)ÚCatÚIntÚFactorr—  r˜  r™  r•  r–  r}   rñ   r*   )Úaxisr‘   r  Tr  )	r	   r   r�   r   r[  Údropr¬   r‰   rŠ   )rV   rW   rŽ   r�   s       r&   Ú&test_merge_join_categorical_multiindexrœ  ú	  s’  € ô Ò:ºOÓLÚ"ñ	€Aô 	�!‹€Aô Ò9º?ÓKÚ!Ú0ñ	€Aô
 	�!‹×Ñ  u˜~Ó.¨xÑ8€AäØ	Ø	�‰‹Ø˜Ð Ø˜�Øô€Hð �}‰}˜e U˜^°!ˆ}Ó4€HØ�V‰V�A˜6 6Ð*ˆVÓ+€FÜ×Ñ˜( FÔ+ô Ú*ªOÀTô
ò #ñ		€Aô 	�!‹€Aô Ú*ªOÀTô
ò "Ú0ñ	€Aô 	�!‹×Ñ  u˜~Ó.¨xÑ8€AäØ	Ø	�‰‹Ø˜Ð Ø˜�Øô€Hð �}‰}˜e U˜^°!ˆ}Ó4€HØ�V‰V�A˜6 6Ð*ˆVÓ+€FÜ×Ñ˜( FÕ+r(   Úfuncr   Ú
merge_asof)rX  Úerr_msg)r    r†   r    r†   )r£   r‡   r£   r‡   c                 óú   — t        ddgddgdœ«      }t        ddgddgdœ«      }d	|d
   › d|d   › d�}t        j                  t        |¬«      5   t	        t
        | «      ||fi |¤Ž d d d «       y # 1 sw Y   y xY w)Nr*   r   r[   r\   rÕ   r]   rË   r  zCan only pass argument "r   ú" OR "z" not both\.r°   ©r   r³   r´   r   Úgetattrr4   ©r�  rX  rŸ  r}   rƒ   r·   s         r&   Ú/test_merge_join_cols_error_reporting_duplicatesr¥  2
  s‰   € ô ˜A˜q˜6¨¨A¨Ñ/Ó0€DÜ˜Q ˜F¨!¨Q¨Ñ0Ó1€EØ% g¨a¡j \°¸À¹
°|À<Ð
P€CÜ	�‰”z¨Ô	-ñ 1ØŒ”�DÓ˜$ Ñ0¨Ò0÷1÷ 1ñ 1úó   ÁA1Á1A:c                 óú   — t        ddgddgdœ«      }t        ddgddgdœ«      }d	|d
   › d|d   › d�}t        j                  t        |¬«      5   t	        t
        | «      ||fi |¤Ž d d d «       y # 1 sw Y   y xY w)Nr*   r   r[   r\   rÕ   r]   rË   r  zMust pass "r   r¡  z"\.r°   r¢  r¤  s         r&   Ú,test_merge_join_cols_error_reporting_missingr¨  C
  s‰   € ô ˜A˜q˜6¨¨A¨Ñ/Ó0€DÜ˜Q ˜F¨!¨Q¨Ñ0Ó1€EØ˜ ™˜ F¨7°1©:¨,°cÐ
:€CÜ	�‰”z¨Ô	-ñ 1ØŒ”�DÓ˜$ Ñ0¨Ò0÷1÷ 1ñ 1úr¦  rX  c                 óä   — t        ddgddgdœ«      }t        ddgddgdœ«      }d	}t        j                  t        |¬
«      5   t	        t
        | «      ||fddi|¤Ž d d d «       y # 1 sw Y   y xY w)Nr*   r   r[   r\   rÕ   r]   rË   r  zZCan only pass argument "on" OR "left_index" and "right_index", not a combination of both\.r°   r’   rV   r¢  )r�  rX  r}   rƒ   r·   s        r&   Ú1test_merge_join_cols_error_reporting_on_and_indexrª  T
  s~   € ô ˜A˜q˜6¨¨A¨Ñ/Ó0€DÜ˜Q ˜F¨!¨Q¨Ñ0Ó1€Eð	:ð ô 
�‰”z¨Ô	-ñ 9ØŒ”�DÓ˜$ Ñ8¨#Ð8°Ò8÷9÷ 9ñ 9ús   ÁA&Á&A/c                  óÎ   — t        ddgddgdœ«      } t        ddgddgdœ«      }t        | |ddd¬«      }t        ddgddgddgddgddgdœ«      }t        j                  ||«       y )	Nr*   r/   )rC   r  rƒ   TrC   )r¡   r†   r£   )rC   Úx_xÚz_xÚx_yÚz_yrˆ   ©r}   rƒ   r�   rŽ   s       r&   Útest_merge_right_left_indexr±  h
  s†   € ä˜A˜q˜6¨°¨Ñ7Ó8€DÜ˜Q ˜F¨%°¨Ñ8Ó9€EÜ�4˜ G¸ÀsÔK€FÜà�Q�Ø�q�6Ø˜5�>Ø�q�6Ø˜5�>ñ	
ó€Hô ×Ñ˜& (Õ+r(   c                  óx  — t        dgdgdœ«      j                  ddg«      } t        ddgi«      j                  dg«      }t        g g dœt        j                  ¬«      j                  ddg«      }t	        | |dgd¬«      }t        j                  ||«       t	        || ddg¬	«      }t        j                  ||«       y )
Nr*   r   rÕ   rV   rW   r,   Tr  r  )r   r�   r   r+   r   r‰   rŠ   ©r`   ra   rŽ   r�   s       r&   Ú$test_merge_result_empty_index_and_onr´  y
  s©   € ä
˜1˜# Q CÑ(Ó
)×
3Ñ
3°S¸#°JÓ
?€CÜ
�S˜1˜#�JÓ
×
)Ñ
)¨3¨%Ó
0€CÜ˜r¨Ñ+´2·8±8Ô<×FÑFÈÈSÀzÓR€HÜ�3˜ c U¸Ô=€FÜ×Ñ˜& (Ô+ä�3˜¨¸°uÔ=€FÜ×Ñ˜& (Õ+r(   c                  ó@  — t        g d¢dddœ«      } t        g d¢ddœ«      }t        j                  t        d¬«      5  t	        | |d¬	«       d d d «       t        j                  t        d¬«      5  t	        || dd
¬«       d d d «       y # 1 sw Y   Œ=xY w# 1 sw Y   y xY w)Nr  r*   r   )rV   rW   Úb_xrÕ   ú(Passing 'suffixes' which cause duplicater°   rV   r‘   )rQ  rP  r�  ©r   r³   r´   r   r   rh  s     r&   Ú.test_merge_suffixes_produce_dup_columns_raisesr¹  …
  s‹   € äš9¨1°QÑ7Ó8€DÜšI¨AÑ.Ó/€Eä	�‰”zÐ)SÔ	Tñ #Üˆd�E˜cÕ"÷#ô 
�‰”zÐ)SÔ	Tñ :Üˆe�T˜c¨LÕ9÷:ð :÷#ð #ú÷:ð :ús   ½BÁ/BÂBÂBc                  óº   — t        g d¢g d¢gg d¢¬«      } t        ddgddœ«      }t        | |d	¬
«      }t        g d¢gg d¢¬«      }t        j                  ||«       y )Nr3  r4  )rV   rW   rW   rå   r*   r[   r   rÕ   rV   r‘   )r*   r*   r*   r   )rV   r¶  r¶  rT  rˆ   r°  s       r&   Ú3test_merge_duplicate_columns_with_suffix_no_warningr»  ‘
  sU   € ô ’i¢Ð+²_ÔE€DÜ˜Q ˜F¨Ñ+Ó,€EÜ�4˜ 3Ô'€FÜš,˜Ò1KÔL€HÜ×Ñ˜& (Õ+r(   c                  óÊ   — t        g d¢g d¢gg d¢¬«      } t        ddgddœ«      }t        j                  t        d	¬
«      5  t	        | |d¬«       d d d «       y # 1 sw Y   y xY w)N)r*   r*   r*   r*   )r   r   r   r   )rV   rW   rW   r¶  rå   r*   r[   r   rÕ   r·  r°   rV   r‘   r¸  rh  s     r&   ÚItest_merge_duplicate_columns_with_suffix_causing_another_duplicate_raisesr½  ›
  sY   € ô ’l¢LÐ1Ò;QÔR€DÜ˜Q ˜F¨Ñ+Ó,€EÜ	�‰”zÐ)SÔ	Tñ #Üˆd�E˜cÕ"÷#÷ #ñ #ús   ÁAÁA"c                  óò   — t        ddgddggt        ddg«      ¬«      } t        dd	gd
dggddg¬«      }t        || ddd¬«      }t        g d¢g d¢gt        g d¢«      ¬«      }t        j                  ||«       y )Nr*   r   r[   r\   rV   ç     €\@rå   r"  rp   ro  r?  rC   rû   rª   Trº   )r"  rp   r*   r   )ro  r?  r[   r\   )rC   rû   rV   r¿  ©r   r   r   r‰   rŠ   rŽ  s       r&   Ú%test_merge_string_float_column_resultrÁ  ¤
  s   € ä
�a˜�V˜a ˜VÐ$¬e°S¸%°LÓ.AÔ
B€CÜ
�a˜�W˜r 2˜hÐ'°#°s°Ô
<€CÜ�3˜ °TÀtÔL€FÜÚ	šÐ'´Ò7MÓ1Nô€Hô ×Ñ˜& (Õ+r(   c                  óÈ   — t        dgdgdg¬«      } t        dgdgdg¬«      }t        j                  t        d¬«      5  t	        | |dgd¬	«       d d d «       y # 1 sw Y   y xY w)
Nrx  re  é   )r´  r¥   r‚   iç  zCan only pass argumentr°   T)r’   r†   r¸  )Údf_1Údf_2s     r&   Ú/test_mergeerror_on_left_index_mismatched_dtypesrÆ  ¯
  s^   € ä˜3˜%¨#¨°r°dÔ;€DÜ˜3˜%¨#¨°s°eÔ<€DÜ	�‰”zÐ)AÔ	Bñ 5Üˆd�D˜c˜U¨tÕ4÷5÷ 5ñ 5ús   ¾AÁA!c                  ó  — t        t        d«      «      } t        | t        d«      dœ«      }t        dt        dd«      i«      }t        ||| d¬«      }t        ||| j                  d¬«      }t        j                  ||«       y )Nr[   r§  re  rË   ry  r²   )r
   r   r   r   Ú_datar‰   rŠ   )Úcirƒ   r}   ÚresrŽ   s        r&   Ú#test_merge_on_left_categoricalindexrË  ·
  sl   € ä	œ% ›(Ó	#€Bä˜B¤U¨1£XÑ.Ó/€EÜ�cœ5  A›;Ð'Ó(€Dä
��e R°#Ô
6€CÜ�T˜5¨"¯(©(¸SÔA€HÜ×Ñ˜#˜xÕ(r(   r-   r.   c                 óä  — t        ddgddgdœ| ¬«      }t        t        j                  t        j                  gddgdœ| ¬«      }t        ||dd	¬
«      }t        ddt        j                  t        j                  gddt        j                  t        j                  gt        j                  t        j                  ddgdœ| ¬«      }t	        j
                  ||«       t        ||dd	¬
«      }t        ddt        j                  t        j                  gt        j                  t        j                  ddgddt        j                  t        j                  gdœ| ¬«      }t	        j
                  ||«       y )Nr*   r   )rz   rX   r,   r[   r\   )rz   rø  rz   rÎ   rè   )rz   rX   rø  )rz   rø  rX   r;  )r-   r}   rƒ   r�   rŽ   s        r&   Útest_merge_outer_with_NaNrÍ  Ã
  s%  € ô ˜a ˜V¨a°¨VÑ4¸EÔB€DÜœrŸv™v¤r§v¡vÐ.¸¸A¸Ñ?ÀuÔM€EÜ�4˜ 5¨gÔ6€FÜà�qœ"Ÿ&™&¤"§&¡&Ð)Ø˜œ2Ÿ6™6¤2§6¡6Ð*Ü—V‘VœRŸV™V Q¨Ð*ñ	
ð
 ô€Hô ×Ñ˜& (Ô+ô �5˜$ 5¨gÔ6€FÜà�qœ"Ÿ&™&¤"§&¡&Ð)Ü—V‘VœRŸV™V Q¨Ð*Ø˜œ2Ÿ6™6¤2§6¡6Ð*ñ	
ð
 ô€Hô ×Ñ˜& (Õ+r(   c                  óÜ   — t        ddgit        dgd¬«      ¬«      } t        ddgit        dgd¬«      ¬«      }t        | |dd¬«      }t        dgddœ«      }t        j                  ||«       y )	NrV   r*   ru   rÏ   r�   rv   r²   )r  r  rÀ  r°  s       r&   Ú test_merge_different_index_namesrÏ  à
  si   € ä�c˜A˜3�Z¤u¨a¨S°sÔ';Ô<€DÜ�s˜Q˜C�j¬¨q¨c¸Ô(<Ô=€EÜ�4˜¨°cÔ:€FÜ ! ¨QÑ/Ó0€HÜ×Ñ˜& (Õ+r(   c                 óÄ   — t        g d¢ddœ| ¬«      }t        g d¢ddœ| ¬«      }|j                  ||¬«      }t        g d¢dddœ| ¬«      }t        j                  ||«       y )	Nr  r*   rÕ   r,   r   r  rî   r  rˆ   ©rž  r  r}   rƒ   r�   rŽ   s         r&   Útest_merge_earÒ  é
  s\   € äš9¨1Ñ-Ð5IÔJ€DÜšI¨AÑ.Ð6JÔK€EØ�Z‰Z˜ 9ˆZÓ-€FÜšy¨q°qÑ9ÐAUÔV€HÜ×Ñ˜& (Õ+r(   c           	      óB  — t        g d¢ddœ| ¬«      }t        g d¢ddœ| j                  «       ¬«      }|j                  ||¬«      }t        t        g d¢| ¬«      t        g d¢| ¬«      t        g d	¢| j                  «       ¬«      d
œ«      }t	        j
                  ||«       y )Nr  r*   rÕ   r,   r   r  rî   r3  r4  r  )r   Úlowerr   r   r‰   rŠ   rÑ  s         r&   Útest_merge_ea_and_non_earÕ  ò
  sŒ   € äš9¨1Ñ-Ð5IÔJ€DÜšI¨AÑ.Ð6J×6PÑ6PÓ6RÔS€EØ�Z‰Z˜ 9ˆZÓ-€FÜäš	Ð)=Ô>Üš	Ð)=Ô>Üš	Ð)=×)CÑ)CÓ)EÔFñ	
ó€Hô ×Ñ˜& (Õ+r(   r+   úint64[pyarrow]c                 óN  — t        j                  d«       t        dddgi| ¬«      }t        dddgid¬«      }|j                  |«      }|j	                  «       }t        j                  ||«       |j                  |«      }|j	                  «       }t        j                  ||«       y )NÚpyarrowrV   r*   r   r,   rÖ  )r³   Úimportorskipr   r   rØ   r‰   rŠ   )r-   rn   ra   r�   rŽ   s        r&   Ú!test_merge_arrow_and_numpy_dtypesrÚ    s‹   € ô ×Ñ˜	Ô"Ü	�C˜!˜Q˜�=¨Ô	.€BÜ
�S˜1˜a˜&�MÐ)9Ô
:€CØ�X‰X�c‹]€FØ�w‰w‹y€HÜ×Ñ˜& (Ô+à�Y‰Y�r‹]€FØ�x‰x‹z€HÜ×Ñ˜& (Õ+r(   r¡   )rª   r}   rÎ   rƒ   r3   zAmerica/Chicagoc                 ó&  — t        j                  ddd| ¬«      t        j                  ddd| ¬«      t        j                  ddd| ¬«      g}t        |d d dd	gd
œ«      }|d   j                  j	                  d«      |d<   t        |dd  dd	gdœ«      }|d   j                  j	                  d«      |d<   t        |dd	t
        j                  gt
        j                  dd	gdœ«      }|d   j                  j	                  d«      |d<   |dk(  r!|j                  dg   j                  d¬«      }n=|dk(  r|j                  ddg   }n&|dk(  r!|j                  ddg   j                  d¬«      }|j                  |d|¬«      }t        j                  ||«       y )Niç  r]   r?  r2   é   é   r   ra  rb  )rq  rV   rq  rŠ  r*   )rq  rW   r‡  )rq  rV   rW   rª   T©r›  r}   r   rƒ   rè   )r4   r5   r   rý   Úas_unitr   r;   Úilocr[  r   r‰   rŠ   )r3   r¡   Úvalsr`   ra   rŽ   r�   s          r&   Ú(test_merge_datetime_different_resolutionrâ    s|  € ô
 	�‰�T˜1˜b RÔ(Ü
�‰�T˜1˜b RÔ(Ü
�‰�T˜1˜b RÔ(ð€Dô
 ˜$˜r ˜(¨#¨s¨Ñ4Ó
5€CØ�3‰x�{‰{×"Ñ" 4Ó(€Cˆ�HÜ
˜$˜q˜r˜(¨#¨s¨Ñ4Ó
5€CØ�3‰x�{‰{×"Ñ" 3Ó'€Cˆ�Hä˜t¨3°´R·V±VÐ*<ÄBÇFÁFÈCÐQTÐCUÑVÓW€HØ˜S‘M×$Ñ$×,Ñ,¨TÓ2€HˆS�MØ
ˆg‚~Ø—=‘= ! Ñ%×1Ñ1°tÐ1Ó<‰Ø	�ŠØ—=‘= ! Q Ñ(‰Ø	�ŠØ—=‘= ! Q Ñ(×4Ñ4¸$Ð4Ó?ˆà�Y‰Y�s˜s¨ˆYÓ,€FÜ×Ñ˜& (Õ+r(   c                  ó
  — t        dddgi«      } t        ddgit        j                  ddgdg¬«      ¬	«      }t        ddgdt        j                  gd
œ«      }| j                  |dgdd¬«      }t        j                  ||«       y )NÚcolry  rz  rW   r3  )ry  )re  rE  )r´  r‚   )rä  rW   Tr}   r«   )r   r   rV  r   r;   r   r‰   rŠ   )rn   ra   rŽ   r�   s       r&   Ú"test_merge_multiindex_single_levelrå  +  s„   € ä	�E˜C ˜:Ð&Ó	'€BÜ
Ø�C�5ˆ\Ü×$Ñ$ f¨fÐ%5¸e¸WÔEô€Cô  # s °3¼¿¹°-Ñ@ÓA€Hà�X‰X�c E 7¸À&ˆXÓI€FÜ×Ñ˜& (Õ+r(   )r}   rƒ   rª   rÎ   r¢   Úon_indexÚleft_uniqueÚleft_monotonicÚright_uniqueÚright_monotonicc                 ó„  — ddg}|r|j                  |rdnd«       n|j                  |rdnd«       ddg}|r|j                  |rdnd«       n|j                  |rdnd«       t        d|i«      }t        d|i«      }|r(|j                  d«      }|j                  d«      }dddœ}	nddi}	t        ||f| |d	œ|	¤Ž}
|r |j	                  «       }|j	                  «       }| d
v rú| dv r|||}}}n|||}}}| dk(  rMt        |d   j                  «      j                  |d   j                  «      }|d   j                  |«      }||   }|r|j                  d«      }|�s+|d   j                  «       }|j                  |d   j                  d¬«      }|j                  t        j                  «      }|d   j                  |j                  «      }|j!                  «       }nª| dk(  r¥|d   j                  «       }|d   j                  «       }|j#                  |d¬«      }|j                  t        j                  «      }|j$                  j                  j                  |j                  «      }t        d|i«      }|j                  d«      }|rj                  d«      }nj	                  d¬«      }t'        j(                  |
|«       y )Nr   r[   r\   r*   rz   Tr…   r’   rZ  )r}   rƒ   rª   )r}   rª   rª   )Ú
fill_valuerÎ   rÞ  )Úappendr   r�   r   r[  ÚsetrJ  ÚintersectionÚisinrr  rÀ   rI  r™   r   ÚintprÉ  r•  Úmulr‚   r‰   rŠ   )r¡   r¢   ræ  rç  rè  ré  rê  r}   rƒ   Ú	on_kwargsr�   rŽ   ÚotherÚother_uniqueÚkeep_valuesÚ	keep_maskÚother_value_countsÚrepeatsÚleft_countsÚright_countsÚexpected_countss                        r&   Útest_merge_combinationsrý  8  s¤  € ð ˆqˆ6€DÙØ�‰™‘A¨QÕ/à�‰™‘A¨QÔ/à�ˆF€EÙØ�‰™/‘Q¨qÕ1à�‰™/‘Q¨qÔ1ä�e˜T�]Ó#€DÜ�u˜e�nÓ%€EáØ�~‰~˜eÓ$ˆØ—‘ Ó&ˆØ#'¸Ñ=‰	à˜5�Mˆ	ä�4˜Ð@ C¨dÑ@°iÑ@€FáØ×ÑÓ!ˆØ×!Ñ!Ó#ˆà
Ð(Ñ(ØÐ#Ñ#Ø,0°%¸˜\�e‰Hà,1°4¸˜\�eˆHØ�'Š>Ü˜d 5™k×0Ñ0Ó1×>Ñ>¸uÀU¹|×?RÑ?RÓSˆKØ  ™×,Ñ,¨[Ó9ˆIØ 	Ñ*ˆHÙØ×+Ñ+¨EÓ2ˆHÚØ!& u¡×!:Ñ!:Ó!<ÐØ(×0Ñ0°¸%±×1GÑ1GÐTUÐ0ÓVˆGØ—n‘n¤R§W¡WÓ-ˆGØ ‘×-Ñ-¨g¯n©nÓ=ˆHØ×(Ñ(Ó*‰HØ	�ŠØ˜5‘k×.Ñ.Ó0ˆØ˜U‘|×0Ñ0Ó2ˆØ%Ÿ/™/¨,À1˜/ÓEˆØ)×0Ñ0´·±Ó9ˆØ"×(Ñ(×/Ñ/×6Ñ6°×7MÑ7MÓNˆÜ˜e XÐ.Ó/ˆØ×'Ñ'¨Ó.ˆáØ×%Ñ% eÓ,‰à×'Ñ'¨TÐ'Ó2ˆä×Ñ˜& (Õ+r(   c                  ó  — t        dt        j                  gt        j                  «       ¬«      } t        dg«      }t        dgd¬«      }t        j                  t        d¬«      5  | j                  |«      }d d d «       t        j                  |«       t        j                  t        d¬«      5  |j                  | «      }d d d «       t        j                  ||j                  d	«      «       t        dg«      }t        d
gdgd¬«      }| j                  |«      }t        j                  ||«       |j                  | «      }t        j                  ||j                  d	«      «       y # 1 sw Y   ŒóxY w# 1 sw Y   Œ´xY w)Nra  r,   r_  r   r.   rö   zYou are mergingr°   rU  r*   )r   r   r;   r4   Ú
Int64Dtyper‰   ru  r„  r   rŠ   r™   r³  s       r&   Ú!test_merge_ea_int_and_float_numpyr   �  s&  € ä
�Sœ"Ÿ&™&�M¬¯©«Ô
9€CÜ
�S�EÓ
€CÜ ! ¨GÔ4€Hä	×	#Ñ	#¤KÐ7HÔ	Iñ  Ø—‘˜3“ˆ÷ ä×Ñ˜& (Ô+ä	×	#Ñ	#¤KÐ7HÔ	Iñ  Ø—‘˜3“ˆ÷ ä×Ñ˜& (§/¡/°)Ó"<Ô=ä
�S�EÓ
€CÜ˜!˜ q c°Ô9€HØ�Y‰Y�s‹^€FÜ×Ñ˜& (Ô+à�Y‰Y�s‹^€FÜ×Ñ˜& (§/¡/°)Ó"<Õ=÷ ð  ú÷ ð  ús   Á%E)Â0E5Å)E2Å5E>c                 ó4  — t        j                  d«       t        dddgi| ¬«      }t        ddit        ddg| ¬«      ¬«      }|j	                  |ddd	¬
«      }t        t        ddg| ¬«      dt        j                  gdœ«      }t        j                  ||«       y )NrØ  rV   rW   r,   r*   ru   r�   Tr}   r«   rÕ   )
r³   rÙ  r   r   r   r   r   r;   r‰   rŠ   )r£  r}   rƒ   r�   rŽ   s        r&   Útest_merge_arrow_string_indexr  ˜  s�   € ä
×Ñ˜	Ô"Ü�c˜C ˜:Ð&Ð.>Ô?€DÜ�s˜A�h¤e¨S°#¨JÐ>NÔ&OÔP€EØ�Z‰Z˜ s¸À&ˆZÓI€FÜÜ�c˜3�ZÐ'7Ô8ÀÄ2Ç6Á6¸{ÑKó€Hô ×Ñ˜& (Õ+r(   rÄ  Úright_emptyc                 ó|  — t        ddgddg¬«      }t        ddgg d¢¬«      }| r|j                  d d }|r|j                  d d }t        ||dgd¬«      }t        ddgg d	¢¬«      }| r|r|j                  d d }n-| rt        j                  |d<   n|rt        j                  |d
dg<   t        j                  ||«       y )Nr*   r   ry  rz  rÃ  )ry  re  r…  rÎ   rè   )ry  rz  re  r…  re  r…  )r   rà  r   r   r;   r‰   rŠ   )rÄ  r  r`   ra   r�   rŽ   s         r&   Ú$test_merge_empty_frames_column_orderr  ¤  s¹   € ô �A˜a˜S¨3°¨*Ô
5€CÜ
�A˜a˜Sª/Ô
:€CáØ�h‰h�r˜ˆlˆÙØ�h‰h�r˜ˆlˆä�3˜  ¨7Ô3€FÜ˜ 1 #Ò/CÔD€HÙ‘kØ—=‘=  !Ð$‰Ù	ÜŸ™ˆ�ŠÙ	Ü!Ÿv™vˆ�#�s�ÑÜ×Ñ˜& (Õ+r(   c                 óR  — t        dt        dd gd¬«      i«      }t        dt        dgd¬«      i«      }d|d   j                  › d|d   j                  › d�}t        j                  t
        t        j                  |«      ¬	«      5  |j                  |d| ¬
«       d d d «       d|d   j                  › d|d   j                  › d�}t        j                  t
        t        j                  |«      ¬	«      5  |j                  |d| ¬
«       d d d «       y # 1 sw Y   ŒxxY w# 1 sw Y   y xY w)Nrz   r*   zdatetime64[ns]r,   ztimedelta64[ns]r”  r•  zG columns for key 'key'. If you wish to proceed you should use pd.concatr°   rè   )	r   r   r-   r³   r´   r¶   r—  r˜  r   )r¡   r}   rƒ   r·   s       r&   Ú!test_merge_datetime_and_timedeltar  »  s'  € ä�eœV Q¨ IÐ5EÔFÐGÓH€DÜ�uœf a SÐ0AÔBÐCÓD€Eð & d¨5¡k×&7Ñ&7Ð%8¸¸eÀE¹l×>PÑ>PÐ=Qð RQð 	Qð ô 
�‰”z¬¯©°3«Ô	8ñ -Ø�
‰
�5˜U¨ˆ
Ô,÷-ð & e¨E¡l×&8Ñ&8Ð%9¸¸tÀE¹{×?PÑ?PÐ>Qð RQð 	Qð ô 
�‰”z¬¯©°3«Ô	8ñ -Ø�‰�D˜U¨ˆÔ,÷-ð -÷-ð -ú÷-ð -ús   ÂDÃ3DÄDÄD&)rÌ   rf   )]r   r   r   r—  Únumpyr   r³   Úpandas.core.dtypes.commonr   r   Úpandas.core.dtypes.dtypesr   Úpandasr4   r	   r
   r   r   r   r   r   r   r   r   r   Úpandas._testingÚ_testingr‰   Úpandas.core.reshape.concatr   Úpandas.core.reshape.merger   r   r'   r7   r=   rP  rM   rQ   rT   rb   rd   r  r]  r}   rƒ   rÔ  rD  rE  r6  rQ  rR  rT  rC  rI  rK  rZ  r;   rc  rg  rk  Útuplern  rx  rz  r~  r‰  r�  r“  rœ  r¥  r¨  rª  r±  r´  r¹  r»  r½  rÁ  rÆ  rË  rÍ  rÏ  rÒ  rÕ  rÚ  râ  rå  rý  r   r  r  r  )rX  s   0r&   ú<module>r     s	  ð÷ñ ó
 
ã Û ÷õ 7ã ÷÷ ÷ ñ õ Ý -÷óò	òð €‡�‘z“|Ñ)?Ô@ñó Aðð €‡�‘z“|Ñ)?Ô@ñó Aðð €‡�‘}“Ñ,BÔCñó Dðð ‡�ñ	ó ð	÷Pñ Pòf*	G÷l0ñ l0ð^ ‡�ñó ðð ‡�ñó ð÷S0ñ S0ðl ‡�ñ:ó ð:ð ‡�ñ>ó ð>÷40ñ 40ðn ‡�×ÑØØ=?×=UÑ=UÖV°T�UˆAˆqˆ6˜ KÖ0ÒVá˜#˜s˜°°c°
ÀÔMÙ˜ ¨Ô5Ù�| \Ð2¸ÔEðññ 	3ð ó 	ñ	,ó	ð	,ð ‡�×ÑØ3à
�7Ð	˜T 4¨°°sÐ;Ø+Ø	�˜Ð! 4¨°°cÐ:Ø	ˆt�g˜wÐ'¨¨u°cÐ:Ø
�7Ð	˜T 4¨°°tÐ<Ø,Ø	�˜Ð! 4¨°°dÐ;Ø	ˆt�g˜wÐ'¨¨u°dÐ;ð	óñ%óð%òP+ð$ ‡�×ÑØ'à	
ˆA�
˜LÐ)¨C°¨>Ð:Ø	
ˆA�
˜NÐ+¨a°¨\Ð:Ø	
ˆA�
˜LÐ)¨E°5¨>Ð:Ø	
ˆA�
˜T 4˜LÐ)¨E°5¨>Ð:Ø	ˆa�*˜lÐ+¨c°1¨XÐ6Ø	ˆc�J Ð-°¸¨~Ð>Ø	ˆc�J Ð-°°U¨|Ð<Ø	ˆc�J Ð-°°s¨|Ð<Ø	ˆc�J Ð-°°S¨zÐ:Ø	ˆc�J Ð-°°U¨|Ð<Ø	
ˆA�
˜LÐ)¨E°1¨:Ð6Ø	ˆc�2˜˜u�~Ð&Ø	
ˆAˆr�E˜5�>Ð"ðóñ$,ó%ð$,ð ‡�×ÑØð ÙÚ%¨b°"°b·f±fÐ-=Â_ÑUóð	
ð Ùâ+Ø˜r 2 r§v¡vÐ.ØŸ6™6 3¨¨SÐ1ñóð		
ðóñ*,ó+ð*,ð ‡�×ÑØÚJóñJó	ðJð ‡�×Ñ˜ v¨wÐ&7À!ÈaÑ9PÐ%QÓRñJó SðJð ‡�×ÑØàPØ	ˆc‘5˜“:ÐSÐTðóñJóðJð ‡�×Ñ˜ u¨e nÓ5Ø‡�×Ñ˜ T¨5 MÓ2ñ ,ó 3ó 6ð ,òF,ò,,ò?ò<,ð" ‡�×Ñ˜¨!¨S¨Ó2ñ,ó 3ð,ò*5,ðp ‡�×Ñ˜ '¨<Ð!8Ó9Ø‡�×ÑØà¨Ñ	-°	¸<Ð/HÐIØ¨$Ñ	/°*¸mÐ1LÐMðóñ1óó :ð1ð ‡�×Ñ˜ '¨<Ð!8Ó9Ø‡�×ÑØà
�SÐ	˜J¨Ð6Ð7Ø
�cÐ	˜Y¨Ð5Ð6ðóñ1óó :ð1ð ‡�×Ñ˜ '¨<Ð!8Ó9Ø‡�×ÑØà	˜ÐØ	�tÐðóñ	9óó :ð	9ò,ò"	,ò	:ò,ò#ò,ò5ò	)ð ‡�×Ñ˜ 4¨ /Ó2ñ,ó 3ð,ò8,ò,ò,ð ‡�×Ñ˜ 7Ð,<Ð"=Ó>ñ,ó ?ð,ð ‡�×Ñ˜Ò CÓDØ‡�×Ñ˜ Ð&7Ð8Ó9ñ,ó :ó Eð,ò2
,ð ‡�×Ñ˜Ò CÓDØ‡�×Ñ˜ $¨ Ó/Ø‡�×Ñ˜ d¨E ]Ó3Ø‡�×Ñ˜¨¨u¨Ó6Ø‡�×ÑÐ)¨D°%¨=Ó9Ø‡�×Ñ˜¨$°¨Ó7Ø‡�×ÑÐ*¨T°5¨MÓ:ñ?,ó ;ó 8ó :ó 7ó 4ó 0ó Eð?,òD>ò.	,ð ‡�×Ñ˜¨¨e }Ó5Ø‡�×Ñ˜¨¨u¨Ó6ñ,ó 7ó 6ð,ð* ‡�×Ñ˜Ò CÓDñ-ó Eñ-ùòa Ws   Å*[<
