Ë
    ômxigŸ ã                   ó*  — 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 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jL                   e$«       d„ ¬«      d„ «       Z' ejL                   e$«       d„ ¬«      d„ «       Z( ejL                   e%«       d„ ¬«      d„ «       Z)ejL                  d„ «       Z* G d„ d«      Z+d„ Z, G d„ d«      Z-ejL                  d„ «       Z.ejL                  d„ «       Z/ G d„ d«      Z0ejL                  d„ «       Z1ejL                  d„ «       Z2 G d„ d «      Z3ejh                  jk                  d!ejl                  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/„ «       Z7ejh                  jk                  d0d1d2gddd3d3d'fd4dd1d2gdd3d5d'fddd1d2gd5d3d'fd1d2gddd3d3dfd6dd1d2gdd3d5dfddd1d2gd5d3dfg«      d7„ «       Z8d8„ Z9ejh                  jk                  d9d d d:d;id<d=gfd d d:d>id d=gfd d d:d?id@dAgfd d d:dBdCgid@dAgfdDd d:dEidDd gfdFdFd:dGidHdFgfdIdId:dEidIdJgfdDdDd:dGidKdDgfdDdId:dGidDdIgfdDdDd:dLidDdKgfd d d:dMidNd gfdDdDi dKdOgfd d i d@dAgfg«      dP„ «       Z:ejh                  jk                  dQdR eg dS¢dTdUejv                  gg dV¢dWœ«      fd1 eg dX¢dYdTdUejv                  gejv                  dZd[d\gdWœ«      fg«      d]„ «       Z<ejh                  jk                  d^g d_¢«      d`„ «       Z=ejh                  jk                  d:dadRhd d dbœg«      dc„ «       Z>erddndeZ?ejh                  jk                  dfdDdDdgdhe?› di�fdDdD e@dD«      djfg«      dk„ «       ZAejh                  jk                  dldmdng«      ejh                  jk                  dod5d3g«      dp„ «       «       ZBdq„ ZCdr„ ZDds„ ZEdt„ ZFejh                  jk                  dudvdwg«      dx„ «       ZGdy„ ZHejh                  jk                  dzd{d|g«      ejh                  jk                  d}dDd5d~œdd€gfdDd5d�œd‚dƒgfg«      d„„ «       «       ZIejh                  jk                  dzd{d|g«      ejh                  jk                  d}ddDid‚dƒgfd‚dDidd€gfg«      d…„ «       «       ZJejh                  jk                  dzd{d|g«      ejh                  jk                  d†dƒd5id€d5ig«      d‡„ «       «       ZKdˆ„ ZLd‰„ ZMdŠ„ ZNd‹„ ZOdŒ„ ZPd�„ ZQdŽ„ ZRd�„ ZSejh                  jk                  d�dd‘g«      d’„ «       ZTd“„ ZUd”„ ZVd•„ ZWejh                  jk                  d�d–d—g«      d˜„ «       ZXejh                  jk                  d™g dš¢«      ejh                  jk                  d›ddœg«      d�„ «       «       ZYdž„ ZZejh                  jk                  d™g dŸ¢«      ejh                  jk                  d d5d3g«      ejh                  jk                  d¡d5d3g«      ejh                  jk                  d¢d5d3g«      ejh                  jk                  d£d5d3g«      ejh                  jk                  d¤d5d3g«      ejh                  jk                  d¥d5d3g«      d¦„ «       «       «       «       «       «       «       Z[d§„ Z\d¨„ Z]ejh                  jk                  d©d5d3g«      ejh                  jk                  dªd5d3g«      d«„ «       «       Z^ejh                  jk                  d™g dŸ¢«      d¬„ «       Z_yc c} w )®é    )ÚdateÚdatetimeÚ	timedeltaN)ÚPY314)Ú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       ú\/home/htdocs/ttos/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_seriesr8   4   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   Únanr5   ÚNaTr7   r)   r'   Úget_series_nar>   @   sJ   € ä”—‘ˆx˜wÔ'Ü”—‘ˆx˜wÔ'Ü”—‘ˆx˜xÔ(Ü”—‘ˆxÓð	ð r)   c                 ó.   — | j                   j                  S ©N©r.   Úname©Úxs    r'   ú<lambda>rE   I   ó   € °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_dtyperN   I   ó   € ð �=‰=Ðr)   c                 ó.   — | j                   j                  S r@   rA   rC   s    r'   rE   rE   R   rF   r)   c                 ó   — | j                   S )zk
    A duplicate of the series_of_dtype fixture, so that it can be used
    twice by a single function
    rJ   rL   s    r'   Úseries_of_dtype2rR   R   rO   r)   c                 ó.   — | j                   j                  S r@   rA   rC   s    r'   rE   rE   [   s   € °a·g±g·l±l€ r)   c                 ó   — | j                   S )zU
    A parametrized fixture returning a variety of Series with all NA
    values
    rJ   rL   s    r'   Úseries_of_dtype_all_narU   [   rO   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   )rY   rZ   Ú	col_right©r   )Údf1Údf2s     r'   Údfs_for_indicatorrc   d   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Údata2ri   r+   ©r   r(   r   r    r!   Ústandard_normal)ÚselfÚdfs     r'   ro   zTestMerge.dfr   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   )rh   ri   Úvaluerl   ©rn   s    r'   rb   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©rW   rX   ÚcÚdÚerx   rW   r   é   ©ÚkeyÚv1©r   r   r    r!   rm   rs   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]   ©rw   rX   rv   rW   ©Úindexr}   rs   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 )
NrW   r+   r   r   r,   )rƒ   r.   T©Ú
left_indexÚright_indexr-   ©r   r   ÚtmÚassert_frame_equal)rn   Ú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 )Nrh   ri   ©Úon©r   rŠ   r‹   )rn   ro   rb   Ú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   Úastyper:   r   rŠ   r‹   ©rn   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 )Nrh   r’   )Ú	set_indexr   rŠ   r‹   )rn   ro   rb   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 )Nru   r   ry   rz   r€   r]   r�   r‚   r{   Tr~   F)Úleft_onrˆ   ÚhowÚsortr„   )Úright_onr‡   r¢   r£   )
r   r   r    r!   rm   r   rŠ   r‹   ÚlocÚcolumns)rn   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 )Nru   r   ry   rz   r€   r]   r�   r‚   r{   TÚinner©r¡   rˆ   r¢   r’   )r¤   r‡   r¢   )r   r   r    r!   rm   r   Újoinr¥   rƒ   rŠ   r‹   r¦   ©rn   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 bothr{   )r¡   r“   z)len\(right_on\) must equal len\(left_on\)rh   ri   ©r¡   r¤   )ÚpytestÚraisesr5   Úerrorsr   r   Ú
ValueError)rn   ro   rb   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~   Frh   ri   ©r¢   r‡   rˆ   z=left_index parameter must be of type bool, not <class 'list'>©r´   rµ   r·   r   )rn   ro   rb   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 )Nr{   r’   r   Úv1_xÚv1_y)r   Úvalue_countsÚsumr   )rn   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)r0   ÚbarÚbazr0   ©r+   r   r\   r]   )Úlkeyrr   )r0   rÇ   Úquxr0   )r^   é   ry   é   )Úrkeyrr   rÊ   rÎ   ÚouterT)r¡   r¤   r¢   r£   rÇ   rÈ   r0   ©rB   rË   r   r\   r+   r]   Úvalue_xrÌ   r^   rÍ   ry   Úvalue_y)r   r   r   r   r<   rŠ   Úassert_series_equal)rn   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+   ©rW   rX   rq   r‚   r0   rÇ   ©rv   rw   T©r‡   rˆ   ÚcopyrÌ   rW   Úpeekaboorw   )r   r   r   Úall)rn   r~   r„   rÃ   s       r'   Útest_merge_copyzTestMerge.test_merge_copy8  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Ö   rq   r‚   r0   rÇ   r×   TFrØ   rW   rw   )r   r   r   r   Úshares_memoryÚ_values)rn   Úusing_array_managerÚusing_infer_stringr~   r„   rÃ   s         r'   Útest_merge_nocopyzTestMerge.test_merge_nocopyD  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^   ©r{   rr   rr   r{   ©r¦   ©r+   r+   r   r\   r]   r^   rÌ   )r{   Ú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^   )r{   rr   rè   )rr   r{   rè   )	r   r   r   r   r   Úarrayr<   rŠ   r‹   )rn   r~   r„   r•   r�   s        r'   Ú"test_intelligently_handle_join_keyz,TestMerge.test_intelligently_handle_join_keyN  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+   rq   rz   r   é   rÏ   ©r¢   r{   r,   TFr   ÚboolÚval©r¡   r¤   r¢   Úkey_0)r   r   r.   r   rë   Úint)rn   ra   rb   ro   rÊ   rÎ   s         r'   Útest_merge_join_key_dtype_castz(TestMerge.test_merge_join_key_dtype_casta  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å   rr   r{   r,   ©r¦   r.   rè   rÌ   r-   rç   rÏ   rò   ræ   rê   ró   rA   r\   )r   r+   r+   r   r   r\   T)r‡   r¤   r¢   rÐ   )r   r   Úarangerë   r   rŠ   rÓ   ÚnotnarÛ   r   rô   r,   )	rn   r~   r„   r{   rÃ   r¨   rÊ   rÎ   r�   s	            r'   Útest_handle_join_key_pass_arrayz)TestMerge.test_handle_join_key_pass_arrayx  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)NrD   rW   r‚   ÚyrX   rv   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   )rn   Údtra   rb   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]   rD   rW   r‚   rü   rX   rv   )rW   rX   Úq)rv   rw   rx   ÚfÚgÚhrw   ©r   r   Ú_check_merge)rn   rþ   Údt2Údt3Údt4ra   rb   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\   rD   ©rW   rX   rv   rw   r‚   rü   )rx   r  r  z hÚir  )rn   rþ   r  r	  ra   rb   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å   r{   r~   ré   r„   r‰   )rn   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‹   )rn   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†   rD   ©r‡   r¤   rW   ©r¡   rˆ   r³   c                 ó¬   — t        g d¢¬«      }t        g d¢¬«      }t        g d¢t        ¬«      }t        ||fd|i|¤Ž}t        j                  ||«       y )N©rW   rX   rv   ræ   ©rD   rü   Úz©rW   rX   rv   rD   rü   r  r÷   r¢   )r   r;   r   rŠ   r‹   )rn   Ú	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Ì   ©ry   rÍ   é	   r  r\   r-   ©r+   r]   ry   ©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†   rD   r  rW   r  ©r   r+   r   r³   )r   r   rë   r<   r;   )rn   Ú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†   rD   r  rW   r  r³   r”   )	r–   r  rŽ   r)  r+  r  r.  r~   r„   s	      €€€€€€r'   r+  z>TestMerge.test_merge_left_notempty_right_empty.<locals>.check25  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š   )rn   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å   r{   rr   ræ   r   r-   ©r{   rÑ   rÒ   r’   )r   r   Údtypesr   rŠ   r‹   )rn   rN   rR   ro   rŒ   r�   Úactuals          r'   Útest_merge_empty_framez TestMerge.test_merge_empty_frameE  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å   r{   rr   ræ   r5  r’   r‰   )rn   rN   rU   Údf_leftÚdf_rightr�   r7  s          r'   Útest_merge_all_na_columnz"TestMerge.test_merge_all_na_columnW  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   rq   ©Úsizer  r+   é   iÛ  r]   iÚ  r\   iØ  r^   )Úvar1Úvar2Úvar3ry   )rC  Úvar8rC  F©r“   r£   )r   r    r!   Úintegersr   r   Ú	from_dictrC  Úuniquer£   r   rŠ   r‹   rÛ   )rn   rw   ro   rC  ÚnewrŽ   r–   s          r'   Útest_merge_nosortzTestMerge.test_merge_nosortl  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 )NrW   )r+   r   r+   )r“   r¢   r£   ræ   r‰   )rn   r£   rK  r¢   ro   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©rP  Úi3rP  Ú_)r“   Úrsuffixç        ©r   r+   )rP  rQ  Úi1_rS  Nr-   ræ   ©rP  rQ  rX  rS  r;   F©Úcheck_dtype)r   r­   r   r<   r   r;   rž   Úreset_indexr¦   rš   rŠ   r‹   ©rn   ra   rb   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      à?ç      ø?rO  gffffffæ?rR  rT  rP  )rU  r“   rW  rV  )rP  rX  rQ  rS  rY  )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@   r7   )rn   ÚNotADataFrames    €r'   Ú_constructorz=TestMerge.test_merge_type.<locals>.NotADataFrame._constructorÀ  s	   ø€ à$Ð$r)   N)Ú__name__Ú
__module__Ú__qualname__Úpropertyrg  )rf  s   €r'   rf  rd  ¿  s   ø„ Øó%ó ñ%r)   rf  rh   r’   )r   r   Ú
isinstance)rn   ro   rb   ÚnadrŽ   rf  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  )rw   Útrþ   ræ   zDThe behavior of DataFrame concatenation with empty or all-NA entriesr±   T©Úignore_index)r   rG  r   r   r   ÚFutureWarningrŠ   Úassert_produces_warningr   rš   r;   r‹   )rn   rà   rw   ro   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~   )rU  r¢   ÚAB)Ú0Ú0r)
r   Útimedelta64r   r   r­   r   r5   r=   rŠ   r‹   )rn   Ú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ƒ   rB   zdatetime64[ú]©r†  r  r‡  zdatetime64[s]Tr  Únatr-   ©r�  r�  ræ   )r   r   rš   Úto_framer.   r   r   rë   r5   ÚcoreÚarraysÚDatetimeArrayÚ_simple_newrŠ   r‹   )
rn   r…  ra   Úserr.   Ú	exp_dtyperb   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‹   )	rn   r…  ra   r›  r.   r¸   rb   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"  ©r{   r|   r€   )r{   r0   r0   )r{   rÇ   rÇ   )r{   r|   r€   Úv3Úv4)r{   r0   r0   rÇ   rÇ   )rh   r0   r0   z?Data columns not unique: Index\(\['foo'\], dtype='object|str'\)r±   )r   r¦   rŠ   r‹   r   r´   rµ   r   )rn   ro   rb   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ò -ˆŒØPˆÜ�]‰]œ:¨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   r2   ©Úperiodsr4   r+   rå   Ú20151011r\   r   r]   r5  r{   rÏ   ré   )r   r5   Ú
date_ranger   r<   r   rŠ   r‹   r›   s        r'   Útest_merge_on_datetime64tzz$TestMerge.test_merge_on_datetime64tzC  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¦  r2   r§  rå   r\   r©  r   r5  r{   rÏ   ré   rÑ   zdatetime64[ns, US/Eastern]rÒ   )	r   r5   rª  r   r=   r   rŠ   r‹   r.   r›   s        r'   Útest_merge_datetime64tz_valuesz(TestMerge.test_merge_datetime64tz_values\  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ÚUTCr3   Ú2018r-   g      @Ú2019)r   rr   Údate2ræ   r   r   r’   )r   rÑ   Údate2_xrÒ   Údate2_y)	r5   ÚDatetimeTZDtyper   r   r   r   r:   rŠ   r‹   )rn   Údtzr„   r~   rŽ   r�   s         r'   Ú test_merge_on_datetime64tz_emptyz*TestMerge.test_merge_on_datetime64tz_emptyw  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¨  Úfreqr4   r   ræ   r+   rr   )z2017-10-29 03:00:00z2017-10-29 04:00:00z2017-10-29 05:00:00r   )r   rr   r¯  rÏ   ©r¢   r“   ry   r\   )r   rÑ   rÒ   )r   r5   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ƒ   )r5   Úperiod_ranger   r   r   r   r   r   r   r   rø   r,   ÚrepeatÚreshapeÚ
sort_indexrƒ   rŠ   r‹   )rn   rƒ   ro   rb   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]   r5  r{   rÏ   ré   )r   r5   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   r5  r{   rÏ   ré   rÑ   z	Period[D]rÒ   )	r   r5   rÉ  r   r=   r   rŠ   r‹   r.   )rn   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   rW   rX   r\   r]   r^   )rY   Úcol_conflict_xr[   Úcol_conflict_yr_   )Ú	left_onlyÚbothÚ
right_onlyrÚ  rÚ  rÚ  ©rØ  rÚ  rÙ  ©Ú
categoriesÚ_merge)rY   rÖ  r[   r×  r_   rÞ  rY   rÏ   T©r“   r¢   Ú	indicatorÚcustom_nameræ   )	rÙ   r   r   r<   r
   r   rŠ   r‹   Úrename)
rn   rc   ra   rb   Ú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±   rY   rÏ   r^   rß  r¼   )rn   rc   ra   rb   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 )
NrY   r~   Trß  rÚ  r„   rØ  r«   rÙ  )r   rÞ  rÛ   )rn   rc   ra   rb   Útest2Útest3Útest4s          r'   Ú%test_merge_indicator_result_integrityz/TestMerge.test_merge_indicator_result_integrity1  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Þ  rY   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ß  )rY   Úcustom_column_namez:Cannot use name of an existing column for indicator columnrô  ©r   r´   rµ   r·   r   )rn   rc   ra   rT  r  Údf_badcolumnr¸   s          r'   Útest_merge_indicator_invalidz&TestMerge.test_merge_indicator_invalidD  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+   rW   rX   )rY   Úcol2)r+   r+   r\   )rX   rD   rü   )r   r+   r+   r\   ©rW   rX   rD   rü   )rØ  rÙ  rÚ  rÚ  rÛ  rÜ  rÞ  rY   rù  rÏ   Trß  ©r   r
   r   rŠ   r‹   )rn   Údf3Údf4Úhand_coded_resultÚtest5s        r'   Ú%test_merge_indicator_multiple_columnsz/TestMerge.test_merge_indicator_multiple_columnsf  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‚   ©rW   rX   rv   rw   rx   )ÚmeowÚbarkúum... weasel noise?ÚnayÚchirp©rW   rv   r^   Tz1:1)r‡   rˆ   Úvalidate)r  r  r	  r
  )Úa_xrX   Úa_yrv   rÄ  Ú
one_to_oner  rW   )r“   r  ©rX   rW   rv   rÈ  )r‡   r¤   r  rx   Ú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)rW   rW   rX   rX   )r   r+   r   r+   ©rW   rW   rX   )r   r+   r   )r  r  r	  )rW   rX   rw   )r  r  r  zQMerge keys are not unique in either left or right dataset; not a one-to-one mergerX   )r   r   rÙ   r   rŠ   r‹   rž   r   r´   rµ   r   r·   )rn   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_validationy  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   )rn   rW   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/  r0  r1  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-  ©rW   r{   r‚   rX   rÕ  r{   Tr¬   )r   r   r   ©r+   r+   r+   ©r   r   r   r\   r]   r^   ©rW   r{   rX   ræ   )Úinplace)r   r   r   r<   rž   rŠ   r‹   )rn   r¢   rƒ   Úexpected_indexra   rb   rŽ   r�   s           r'   Ú$test_merge_on_index_with_more_valuesz.TestMerge.test_merge_on_index_with_more_valuesD  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+   r3  rX   ©r+   r   r\   N)r   r+   r+   r   )r+   r   r   r\   r6  r   r+   r   rÈ  r{   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é(   rp  )ÚanimalÚ	max_speedÚquetzaléP   rA  rB  ré   r„   r‰   )rn   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Ü  r3  rX   r  r‚   r{   Tr„   r¬   r;  )rW   rW   rX   rv   )r+   r+   r   r\   r6  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   )rn   rj   rk   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)Prh  ri  rj  r´   Úfixturero   rb   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/  r3  r8  r<  rJ  rM  r^  ra  Úfilterwarningsrn  rx  r„  r�  rŸ  r¤  r«  r­  r·  r¾  rÍ  rÏ  rÓ  ré  rë  rð  r÷  r   r!  r&  r   r   r5   r=   rŠ   ÚALL_REAL_NUMPY_DTYPESr   r   Úfloat64r   Úfrom_tuplesr<   r   r   r9  r=  rG  rK  rP  )Ú.0Údtypr   r   s   0000r'   re   re   q   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re   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‹   )rD   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_valsr0   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 )Nr0   rÇ   r`  r+   r   ç      ð?ç       @Úuint64r-   Úint32)rz  r{  ÚCr†  ÚEÚFrz  r’   )r   r   rš   r   r   rz  r.   r   )rn   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-   r0   rÇ   r@  é   )Úk1Úk2Úv)r   rÇ   )r+   r0   r€   r^   ry   r‚   rn  ro  r’   r  rV  r   r+   TrE  Ú	mergesort)Úkindr7  )r   r.   r   rë   rø   r,   r   rW  r­   rÙ   rr  r<   r¥   rn  ro  rŠ   r‹   Úsort_values)
rn   rj  rk  Ú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   )rb  rc  ç      @©ÚXÚYrb  rw  r+   r\   r   rc  c                 ó   — t        d|i«      }t        d|i«      }t        |«      }|j                  |dd¬«      }t        j                  ||«       |j                  |dd¬«      }t        j                  ||ddg   «       y )Nry  rz  r³   r‰   )rn   Úint_valsÚ
float_valsÚexp_valsrz  r{  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 )Nrb  rc  rq   rî   rz   r{   r|   ræ   r   éÈ   )r{   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)	Nry  r   rz  )çš™™™™™ñ?g      @rw  r\   rw  rx  r³   )r   rŠ   rv  ÚUserWarningr   r‹   r   r<   )rn   rz  r{  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 ©Nr{   TFr-   r’   )r   r   r;   r   rŠ   r‹   ©rn   ra   rb   r�   rŽ   s        r'   Ú(test_merge_incompat_infer_boolean_objectz8TestMergeDtypes.test_merge_incompat_infer_boolean_objectC  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_missingN  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-  )rW   rX   rW   )rV  rb  rc  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 )Nrz  r’   )r   r   r   rz  r.   r   )rn   Údf1_valsÚdf2_valsra   rb   rŽ   s         r'   Ú!test_merge_incompat_dtypes_are_okz1TestMergeDtypes.test_merge_incompat_dtypes_are_okZ  s�   € ô  ˜˜h˜Ó(ˆÜ˜˜h˜Ó(ˆä�s˜C S EÔ*ˆÜ˜vŸx™xŸ~™~Ô.Ð.Ð.Ü�s˜C S EÔ*ˆÜ˜vŸx™xŸ~™~Ô.´/À&Ç(Á(Ç.Á.Ô2QÐQÐQÐ2QÐ.r)   rd  r  re  )r~  Ú1Ú2z1/1/2011r†  rÂ  z
2011-01-01z
2011-01-02rV  Ú20130101)r¨  r2   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)Nrz  úYou are trying to merge on ú and zE columns for key 'A'. If you wish to proceed you should use pd.concatr±   r’   ©rz  r{  rf  r{  zE columns for key 'B'. If you wish to proceed you should use pd.concatrf  zE columns for key 'C'. If you wish to proceed you should use pd.concat)	r   r.   ÚreÚescaper´   rµ   r·   r   r   )rn   rŽ  r�  ra   rb   r¸   rü  rý  s           r'   Ú test_merge_incompat_dtypes_errorz0TestMergeDtypes.test_merge_incompat_dtypes_errorr  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‹   )	rn   Úany_numeric_ea_dtyper¢   Úexpected_datarj  rk  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)   rW   rX   c                 óÔ   — t        dgdg|¬«      }t        dgdg|¬«      }t        |||¬«      }t        t        |«      «      }t        ||dg|¬«      }t	        j
                  ||«       y )N)rW   rœ  r÷   )rX   rï   r�  rž  )	rn   r¢   r   Úany_string_dtyperj  rk  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^   ©rz  r{  r\   r]   ©rz  rf  rï   r—  ræ   r‰   )rn   r¢   r   ra   rb   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   r5   ÚStringDtyperÙ   ÚNAr   rŠ   r‹   r   r   r.   r   rW  rÓ   r6  )	rn   r  Ústring_dtypera   rã  rb   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_xr{  ÚA_yrf  rÏ   rz  Trs  )r   Úheadr   r   r<   rs  rŠ   r‹   )rn   Ú
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)$rh  ri  rj  r´   rR  rS  r   rš   ri  r   r,   re  ÚintcÚint16Úint8Úuint8rV  Úfloat32Úfloat16rv  r  r‚  r†  rŠ  rŒ  r;   rð   r�  r5   rª  rš  r¢  r¦  rª  r½  rÆ  r7   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   r0   rÇ   )rq   r>  )ÚoneÚtwoÚthreerx  )r   r   r   r    r!   Úchoicerš   r	   r7   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 )Nr0   rÇ   r+   r   )ry  ÚZ)r   r   rš   r	   r7   r)   r'   r„   r„   K  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 )
Nry  r’   r¹  Ústrr0   rÇ   rÜ  )ry  ÚY_xÚY_yr‚   ©	r   r6  rÌ  r   r.   r   r	   rŠ   rÓ   )rn   r~   rá   rÃ   rŽ   r.   r�   s          r'   Útest_identicalz#TestMergeCategorical.test_identicalV  se   € ä�t˜T cÔ*ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸UˆÜÜ¨%°¨Ô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 )Nry  r’   r¹  r×  r0   rÇ   rÜ  r,   ©ry  rz  rÓ  r‚   rÚ  ©rn   r~   r„   rá   rÃ   rŽ   r.   r�   s           r'   Ú
test_basiczTestMergeCategorical.test_basica  sv   € ô �t˜U sÔ+ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸UˆÜä ¨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 )NrW   rX   rv   rw   rx   )r   r+   r   r\   r]   Únullr×   r  r  rÖ   r~   )r¢   r¡   r¤   r`  )r   r   rÙ   rš   r	   rŠ   r‹   )rn   r„   r~   ro   r�   ÚcrightrŽ   Úclefts           r'   Útest_merge_categoricalz+TestMergeCategorical.test_merge_categoricalq  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)rf  r{  rz  )Ú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ð  )rf  rf  r†  )rò  ró  rò  r-   r-  )rœ  ÚprW   rœ  rõ  )rz  rf  rf  )rò  rò  ró  )rq   rp  r@  )rœ  rõ  rj  r~   Tr»   g      &@g      (@)rœ  rõ  rW   rj  )	r	   r   r
   rž   r   r   r<   rŠ   r‹   )rn   rð  Úpcatra   rb   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Ó  ry  r’   r¹  r×  r0   rÇ   rÜ  r+   r   rÝ  r‚   )ÚassignrÓ  rš   r   r6  rÌ  r   r.   r   r	   rŠ   rÓ   ry  rK  Ú#_categories_match_up_to_permutationrÞ  s           r'   Útest_other_columnsz'TestMergeCategorical.test_other_columnsÒ  sÛ   € à—‘˜uŸw™wŸ~™~¨jÓ9�Ó:ˆä�t˜U sÔ+ˆØ—‘×)Ñ)Ó+ˆÙ%7”—‘˜”¸UˆÜä ¨U°E¨NÔ;ØÜ ¨Q°¨FÔ3ðò
 "ô
ˆô 	×Ñ˜v xÔ0ð �v‰v�}‰}×@Ñ@ÀÇÁÇÁÔQÐQÐQØ�w‰w�~‰~×AÑAÀ&Ç(Á(Ç/Á/ÔRÐRÑRr)   Úchangec                 ó   — | S r@   r7   rC   s    r'   rE   zTestMergeCategorical.<lambda>ê  s   € �a€ r)   c                 ó:   — | j                  t        g d¢«      «      S )N)r0   rÇ   Úbah©rš   r	   rC   s    r'   rE   zTestMergeCategorical.<lambda>ë  s   € �a—h‘hÔ/Ò0EÓFÓG€ r)   c                 ó8   — | j                  t        d¬«      «      S )NT©rð  r   rC   s    r'   rE   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;   )ry  ry  ré   r¹  r×  r,   rÝ  r‚   )ry  rš   rù  rl  rK  r.   r	   r   r6  rÌ  r   r   rŠ   rÓ   )rn   rü  r  r~   r„   rá   ry  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”—‘˜”¸UˆÜ˜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^   )
rW   rX   rv   rw   rx   r  r  r  r  Új)rr  ÚwrD   rü   r  r   )r‡  r$   Úurõ  Úo)
ÚaaÚbbÚccÚddÚeeÚffÚggÚhhÚiiÚjjr  c                 ó$   — | j                  d«      S )Nr`  )rš   rC   s    r'   rE   zITestMergeCategorical.test_self_join_multiple_categories.<locals>.<lambda>"  s   €  §¡¨Ó 4€ r)   r’   )r   Úapplyr   r   r¦   rŠ   r‹   )rn   r‡  ÚeachÚletterro   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š   r5   r6   r   r<   r   rŠ   r‹   )rn   ro   rb   Ú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‹   )	rn   Úcategory_columnrÝ  Úexpected_categoriesrð  ra   rb   rŽ   r�   s	            r'   Ú/test_merging_with_bool_or_int_cateorical_columnzDTestMergeCategorical.test_merging_with_bool_or_int_cateorical_columnI  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¨  rz  r’   )rz  ÚB_xÚB_y)r   r   r   r<   r   rŠ   r‹   )rn   ro   rŽ   r�   s       r'   Útest_merge_on_int_arrayz,TestMergeCategorical.test_merge_on_int_arraya  sg   € äœV Q¨¬2¯6©6 N¸'ÔBÈÑKÓLˆÜ�r˜2 #Ô&ˆÜÜ˜!˜Q¤§¡˜¨wÔ7ÀÈ!ÑLó
ˆô 	×Ñ˜f hÕ/r)   N)rh  ri  rj  rÛ  rß  rä  rï  r´   rR  rS  r÷  rû  r  r  r"  r)  r-  r7   r)   r'   rÕ  rÕ  U  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 )NrW   ©rî   rq   r   ©r   r+   r   r‚   r`   r7   r)   r'   rE  rE  k  s   € ä�cš;Ð'ªyÔ9Ð9r)   c                  ó(   — t        dg d¢ig d¢¬«      S )NrX   ©é,  éd   r�  ©r\   r+   r   r‚   r`   r7   r)   r'   rF  rF  p  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î   rq   r�  r4  rÖ   r   r+   r‚   Tr~   r/  r0  )r   rq   rî   r-  r„   r2  r5  ©r4  r�  r3  r   rÏ   r   r3  r™   c                 óR   — t        ||dd||¬«      }t        j                  ||«       y )NT)r‡   rˆ   r¢   r£   r”   )rn   rE  rF  r¢   r£   r�   rŽ   s          r'   Útest_merge_on_indexesz(TestMergeOnIndexes.test_merge_on_indexesv  s/   € ô` Ø�X¨$¸DÀcÐPTô
ˆô 	×Ñ˜f hÕ/r)   N)
rh  ri  rj  r´   rR  rS  r   r   r<   r:  r7   r)   r'   r7  r7  u  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)   r7  rƒ   r+   r   Ú	index_colrA   rz  r{  )rÝ  rB   )ÚstartÚstoprB   r1   z
2018-01-02rÐ   c                 óL   — t        | «      j                  › d| j                  › d�S )Nú[r’  )Útyperh  r.   rC   s    r'   rE   rE   ´  s"   € ”T˜!“W×%Ñ%Ð& a¨¯© y°Ð2€ r)   )rH   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_datarb  rc  r;  r’   )rB  rC  r‰   )rƒ   r~   r„   rŽ   r�   s        r'   Útest_merge_index_typesrD  ¬  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)NNNTTr{  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)Nrz  rÉ   rW   rX   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ˆ   ÚnmrW   rX   r�   rŽ   r¸   s              r'   Útest_merge_seriesrJ  Â  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)Nrz  rÉ   rW   rX   r   r+   rÏ   r«   rF  r‚   r   )r{  rf  r‘  z-Not allowed to merge between different levelsr±   r’   )r   r   rH  r   r´   rµ   r   r   rÖ   s     r'   Útest_merge_series_multilevelrL  ÷  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)NrO  )Ú_xÚ_yÚ0_xÚ0_yrQ  rR  rW   )NrR  rV  )rQ  Nz0.0_xrX   Úb_yr  )NrQ  )Ú_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‰   )rY   rù  ÚkwargsÚexpected_colsrW   rX   r�   rŽ   s           r'   Útest_merge_suffixr[  		  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„   r8  é<   éF   ©éX  é¼  é   )rz  rì  ÚB2)r+   r4  r�  r3  rD  r_  r`  ra  c                 óª   — t        g d¢g d¢dœ«      }t        g d¢g d¢dœ«      }t        ||d| d¬«      }g d	¢|_        t        j                  ||«       y )
N)r4  r�  r+   )r\  r]  rD  r¨  r8  r^  rz  )rQ  rQ  )r“   r¢   rM  )rz  r+  r+  )r   r   r¦   rŠ   r‹   )r¢   r�   rE  rF  rŽ   s        r'   Útest_merge_duplicate_suffixrd  )	  sL   € ô, šm²,Ñ?Ó@€GÜš²_ÑEÓF€HÜ�7˜H¨°#ÀÔM€FÚ*€HÔä×Ñ˜& (Õ+r)   zcol1, col2, suffixes))rW   rW   )NN)rW   rW   )rN  N)r   r   )NrN  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ˆ   rM  rõ  )rY   rù  rM  rW   rX   r¸   s         r'   Útest_merge_suffix_errorrh  G	  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)	NrW   r   rX   rf  zPassing 'suffixes' as ar±   Trg  )r   r´   rµ   Ú	TypeErrorr   )rM  rW   rX   s      r'   Útest_merge_suffix_raisesrl  V	  sX   € ä�3š	Ð"Ó#€AÜ�3š	Ð"Ó#€Aä	�‰”yÐ(AÔ	Bñ JÜˆa�˜t°ÀÕI÷J÷ Jñ Júó   ºAÁAz2, got 3r’  zcol1, col2, suffixes, msgr  z%too many values to unpack \(expected z\)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   rf  r±   Trg  rõ  )rY   rù  rM  r¸   rW   rX   s         r'   Útest_merge_suffix_length_errorro  b	  sY   € ô 	�4šÐ#Ó$€AÜ�4šÐ#Ó$€Aä	�‰”z¨Ô	-ñ JÜˆa�˜t°ÀÕI÷J÷ Jñ Júrm  Ú	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   ©r0   r~   r0   ©r0   r„   Tr†   ©r~   r„   r0   )	r	   r   r   rš   rž   rq  r   rŠ   r‹   )	rp  rq  Ú
cat_dtypesra   Údata_fooÚ
data_rightrb   rŽ   r�   s	            r'   Útest_merge_equal_cat_dtypesry  v	  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ô  rW   rX   r+   r   rs  r0   )r\   r   r+   rt  Tr†   r\   ru  )r	   r   r   rš   rž   r   rŠ   r‹   )rp  ra   rb   rŽ   r�   s        r'   Útest_merge_equal_cat_dtypes2r{  ›	  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 )
NrW   r   r+   r   Úintervalr-   r`  r«   rº  )	r   r   r5   Ú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«   rF  ræ   rN  rœ  rQ  rR  ©r“   rM  )rœ  rN  FrZ  )r   rH  r   r   rW  rŠ   r‹   )ÚlettersÚnumbersrƒ   Úframe_xÚframe_yÚl_sufÚr_sufrŽ   r  r&  Útuplesr8  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­  )rD   rü   r�  )Ú2000Ú2001Ú2002)rü   r  r~   rü   rº  )rŒ  r�  r=   r  )r   r5   r»  r   rŠ   r‹   ©ra   rb   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+   rr   rÈ  rÌ   rÜ  r~   Tr»   r   g      @rÑ   rÒ   )	r   r   r   r   r   r   r<   rŠ   r‹   )r‘  r‡   ra   rb   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)rW   rX   rW   rv   rW   rX   r  )r   r+   r   r+   r   r   )ÚCat1ÚInt1)rW   rX   rv   rW   rX   rv   )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‹   )rW   rX   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)rY  Ú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   Úgetattrr5   ©rž  rY  r   r~   r„   r¸   s         r'   Ú/test_merge_join_cols_error_reporting_duplicatesr¦  <
  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©  M
  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§  rY  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“   rW   r£  )rž  rY  r~   r„   r¸   s        r'   Ú1test_merge_join_cols_error_reporting_on_and_indexr«  ^
  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+   r0   )rD   r  r„   TrD   )r¢   r‡   r¤   )rD   Úx_xÚz_xÚx_yÚz_yr‰   ©r~   r„   rŽ   r�   s       r'   Útest_merge_right_left_indexr²  r
  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Ö   rW   rX   r-   Tr  r  )r   rž   r   r,   r   rŠ   r‹   ©ra   rb   r�   rŽ   s       r'   Ú$test_merge_result_empty_index_and_onrµ  ƒ
  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   )rW   rX   Úb_xrÖ   ú(Passing 'suffixes' which cause duplicater±   rW   r’   )rR  rQ  r‚  ©r   r´   rµ   r   r   ri  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 )Nr4  r5  )rW   rX   rX   ræ   r+   r\   r   rÖ   rW   r’   )r+   r+   r+   r   )rW   r·  r·  rU  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   )rW   rX   rX   r·  ræ   r+   r\   r   rÖ   r¸  r±   rW   r’   r¹  ri  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]   rW   ç     €\@ræ   r#  rq   rp  r@  rD   rü   r«   Tr»   )r#  rq   r+   r   )rp  r@  r\   r]   )rD   rü   rW   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)
Nry  rf  é   )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¨  rf  rÌ   rz  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   )r{   rY   r-   r\   r]   )r{   rù  r{   rÏ   ré   )r{   rY   rù  )r{   rù  rY   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 )	NrW   r+   rv   rÐ   r‚   rw   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ï   r4  r5  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ÚpyarrowrW   r+   r   r-   r×  )r´   Úimportorskipr   r   rÙ   rŠ   r‹   )r.   ro   rb   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„   r4   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@  r3   é   é   r   rb  rc  )rr  rW   rr  r‹  r+   )rr  rX   rˆ  )rr  rW   rX   r«   T©rœ  r~   r   r„   ré   )r5   r6   r   rþ   Úas_unitr   r<   Úilocr\  r   rŠ   r‹   )r4   r¢   Úvalsra   rb   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Úcolrz  r{  rX   r4  )rz  )rf  rF  )rµ  rƒ   )rå  rX   Tr~   r¬   )r   r   rW  r   r<   r   rŠ   r‹   )ro   rb   r�   rŽ   s       r'   Ú"test_merge_multiindex_single_levelræ  5  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+   r{   Tr†   r“   r[  )r~   r„   r«   )r~   r«   r«   )Ú
fill_valuerÏ   rß  )Úappendr   rž   r   r\  ÚsetrK  ÚintersectionÚisinrs  rÁ   rJ  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þ  B  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)Nrb  r-   r`  r   r/   r÷   zYou are mergingr±   rV  r+   )r   r   r<   r5   Ú
Int64DtyperŠ   rv  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Ù  rW   rX   r-   r+   rv   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   rz  r{  rÄ  )rz  rf  r†  rÏ   ré   )rz  r{  rf  r†  rf  r†  )r   rá  r   r   r<   rŠ   r‹   )rÅ  r  ra   rb   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)Nr{   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Í   rg   )`r   r   r   r˜  Únumpyr   r´   Úpandas.compatr   Úpandas.core.dtypes.commonr   r   Úpandas.core.dtypes.dtypesr	   Úpandasr5   r
   r   r   r   r   r   r   r   r   r   r   Úpandas._testingÚ_testingrŠ   Úpandas.core.reshape.concatr   Úpandas.core.reshape.merger   r   r(   r8   r>   rQ  rN   rR   rU   rc   re   r  r^  r~   r„   rÕ  rE  rF  r7  rR  rS  rU  rD  rJ  rL  r[  r<   rd  rh  rl  ÚTWO_GOT_THREEÚtuplero  ry  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  r  )rY  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ñ $‘
¨€ð ‡�×ÑØð ØØØ5°m°_ÀBÐGð		
ð 
ˆ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ñ-ùòq Ws   Å0\
