Ë
    ž…j`‹  ã                   ó¬  — d Z ddlmZ ddlZddlZddlZddlmZ ddlm	c m
Z ddlmZ ddl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mZ defd	„Z ej@                  g ejB                  ¢d
‘d‘d‘d‘¬«      d„ «       Z"ej@                  d„ «       Z#d„ Z$d„ Z%ejL                  jO                  d e ejP                  d«      ejR                  ¬«       ed«      f e ejP                  d«      ejT                  ¬«       e ejP                  d«      ejR                  ¬«      f e ejP                  d«      ejT                  ¬«       ed«      f e ejP                  d«      ejT                  ¬«       e ejP                  d«      ejV                  ¬«      fg«      d„ «       Z,ejL                  jO                  dg d¢«      ejL                  jO                  dddg«      d„ «       «       Z-ejL                  jO                  dg d¢ddgg«      d „ «       Z. G d!„ d"«      Z/ejL                  ja                  d#«      ejL                  ja                  d$«      ejL                  jO                  d%g d&¢«      d'„ «       «       «       Z1d(„ Z2d)„ Z3d*„ Z4d+„ Z5d,„ Z6ejL                  jO                  d-d.ejn                  g«      d/„ «       Z8d0„ Z9d1„ Z:d2„ Z; G d3„ d4«      Z<d5„ Z=d6„ Z>d7„ Z?d8„ Z@d9„ ZAy):zX
The tests in this package are to ensure the proper resultant dtypes of
set operations.
é    )ÚdatetimeN)Úlib)Úfind_common_type)	ÚCategoricalDtypeÚCategoricalIndexÚDatetimeTZDtypeÚIndexÚ
MultiIndexÚPeriodDtypeÚ
RangeIndexÚSeriesÚ	Timestamp)Úis_signed_integer_dtypeÚpandas_dtypeÚreturnc                 ó0   — t        | «      t        |«      k(  S )zO
    Checks if the set of unique elements of arr1 and arr2 are equivalent.
    )Ú	frozenset)Úarr1Úarr2s     úa/root/aria/tools/markitdown-venv/lib/python3.12/site-packages/pandas/tests/indexes/test_setops.pyÚequal_contentsr   #   s   € ô �T‹?œi¨›oÑ-Ð-ó    ÚobjectÚcategoryúdatetime64[ns]ztimedelta64[ns])Úparamsc                 ó   — | j                   S )zÙ
    Dtypes that can be given to an Index with small positive integers.

    This means that for any dtype `x` in the params list, `Index([1, 2, 3], dtype=x)` is
    valid and gives the correct Index (sub-)class.
    )Úparam)Úrequests    r   Ú'any_dtype_for_small_pos_integer_indexesr    *   s   € ð  �=‰=Ðr   c                 ó   — | S ©N© )Ú
index_flats    r   Úindex_flat2r%   =   s   € àÐr   c                 ó˜   — | j                  «       }| j                  «       }|j                  |«      j                  |j                  k(  sJ ‚y r"   )Úsort_valuesÚunionÚdtype)ÚindexÚidx1Úidx2s      r   Útest_union_same_typesr-   B   sA   € ð ×ÑÓ€DØ×ÑÓ€DØ�:‰:�dÓ×!Ñ! T§Z¡ZÒ/Ð/Ñ/r   c                 ó¾  — | }|}|j                   s>|j                   s2|j                  j                  dk(  r|j                  j                  dk(  sJ|j                   su|j                   si|j                  j                  dk(  rP|j                  j                  dk(  r7t        j                  j                  dt        d¬«      }|j                  |«       t        |j                  |j                  g«      }d }d}t        |«      rt        |«      s�n |j                  j                  dk(  r t        j                  |j                  d«      r9|j                  j                  dk(  r't        j                  |j                  d«      st        }n§t        |j                  t        «      rt        |j                  t        «      s4t        |j                  t        «      rYt        |j                  t        «      r?t         }d	}t        j                  j                  d
t"        d¬«      }|j                  |«       t$        j&                  |j                  |j                  fv }	t)        |j                  «      }
t)        |j                  «      }|j+                  «       }|j+                  «       }t-        j.                  ||¬«      5  |j1                  |«      }|j1                  |«      }d d d «       |	rM|
s|rIj                  t%        j                  d«      k(  sJ ‚j                  t%        j                  d«      k(  sJ ‚y j                  |k(  sJ ‚j                  |k(  sJ ‚y # 1 sw Y   Œ{xY w)NÚiÚbzGH#44000 True==1F)ÚreasonÚraisesÚstrictz'<' not supported betweenÚcÚiufczPeriodDtype\[B\] is deprecatedz"Warning not produced on all builds©ÚmatchÚO)Ú	is_uniquer)   ÚkindÚpytestÚmarkÚxfailÚ
ValueErrorÚapplymarkerr   Úlenr   Úis_np_dtypeÚRuntimeWarningÚ
isinstancer   r   ÚFutureWarningÚAssertionErrorÚnpÚuint64r   r'   ÚtmÚassert_produces_warningr(   )r$   r%   r   r+   r,   r<   Úcommon_dtypeÚwarnÚmsgÚ
any_uint64Úidx1_signedÚidx2_signedÚres1Úres2s                 r   Útest_union_different_typesrR   J   sƒ  € ð €DØ€Dð �NŠNØ—’Ø�J‰J�O‰O˜sÒ"Ø�J‰J�O‰O˜sÒ"à�NŠNØ—’Ø�J‰J�O‰O˜sÒ"Ø�J‰J�O‰O˜sÒ"ô �{‰{× Ñ Ø%¬jÀð !ó 
ˆð 	×Ñ˜DÔ!ä# T§Z¡Z°·±Ð$<Ó=€Là€DØ
%€CÜˆtŒ9œC œIÙØ
�*‰*�/‰/˜SÒ
 ¬#¯/©/¸$¿*¹*ÀfÔ*MØ�
‰
�‰˜3Ò¬¯©¸¿
¹
ÀFÔ(Kô ‰ä�4—:‘:œ{Ô+´
¸4¿:¹:ÔGWÔ0Xä�4—:‘:œ{Ô+´
¸4¿:¹:ÔGWÔ0XäˆØ/ˆÜ�{‰{× Ñ Ø7Ü!Øð !ó 
ˆð
 	×Ñ˜DÔ!ä—‘˜tŸz™z¨4¯:©:Ð6Ð6€JÜ)¨$¯*©*Ó5€KÜ)¨$¯*©*Ó5€Kð ×ÑÓ€DØ×ÑÓ€Dä	×	#Ñ	# D°Ô	4ñ  Ø�z‰z˜$ÓˆØ�z‰z˜$Óˆ÷ ñ ‘{¡kØ�z‰zœRŸX™X c›]Ò*Ð*Ð*Ø�z‰zœRŸX™X c›]Ò*Ð*Ñ*à�z‰z˜\Ò)Ð)Ð)Ø�z‰z˜\Ò)Ð)Ñ)÷ ð  ús   Ê6#MÍMz	idx1,idx2é   ©r)   c                 óà   — | j                  |«      }|j                  | «      }|j                  | j                  |j                  fv sJ ‚|j                  | j                  |j                  fv sJ ‚y r"   )r(   r)   )r+   r,   rP   rQ   s       r   Ú"test_compatible_inconsistent_pairsrV   ”   s^   € ð �:‰:�dÓ€DØ�:‰:�dÓ€Dà�:‰:˜$Ÿ*™* d§j¡jÐ1Ñ1Ð1Ð1Ø�:‰:˜$Ÿ*™* d§j¡jÐ1Ñ1Ð1Ñ1r   zleft, right, expected))Úint64rW   rW   )rW   rG   r   )rW   Úfloat64rX   )rG   rX   rX   )rG   rG   rG   )rX   rX   rX   )r   rW   r   )r   rG   r   )r   rX   r   )údatetime64[ns, CET]rW   r   )rY   rG   r   )rY   rX   r   )ú	Period[D]rW   r   )rZ   rG   r   )rZ   rX   r   Únames)Úfoor\   r\   )r\   ÚbarNc                 ó*  — t        | «      } t        |«      }t        g | |d   ¬«      }t        g ||d   ¬«      }|j                  |«      }|j                  |k(  sJ ‚|j                  |d   k(  sJ ‚|j                  |«      }|j                  |d   k(  sJ ‚y )Nr   )r)   Únameé   é   )r   r	   r(   r)   r_   Úintersection)ÚleftÚrightÚexpectedr[   Úar0   Úresults          r   Útest_union_dtypesrh   ¦   s—   € ô, ˜Ó€DÜ˜Ó€EÜˆb˜ 5¨¡8Ô,€AÜˆb˜ E¨!¡HÔ-€AØ�W‰W�Q‹Z€FØ�<‰<˜8Ò#Ð#Ð#Ø�;‰;˜% ™(Ò"Ð"Ð"ð �^‰^˜AÓ€FØ�;‰;˜% ™(Ò"Ð"Ñ"r   Úvalues©r`   ra   ra   é   rk   c                 óš   — t        | «      }t        ddg«      }|j                  |«      }t        dg«      }t        j                  ||«       y )Nrk   )r	   rb   rH   Úassert_index_equal)ri   rf   r0   rg   re   s        r   Útest_intersection_duplicatesrn   Ê   sC   € ô 	ˆf‹€AÜˆq�!ˆf‹€AØ�^‰^˜AÓ€FÜ�a�S‹z€HÜ×Ñ˜& (Õ+r   c                   ó  — e Zd Zej                  j                  dddg«      ej                  j                  dg d¢«      d„ «       «       Zej                  j                  d«      d„ «       Zej                  j                  d«      d	„ «       Z	ej                  j                  d«      d
„ «       Z
ej                  j                  d«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  dg d¢«      d„ «       Zej                  j                  d«      d„ «       Zd„ Zd„ Zd„ Zy)Ú
TestSetOpsÚcaseg      à?ÚxxxÚmethod©rb   r(   Ú
differenceÚsymmetric_differencec                 óŒ   — d}t        j                  t        |¬«      5   t        ||«      |«       d d d «       y # 1 sw Y   y xY w)Nz!Input must be Index or array-liker6   )r;   r2   Ú	TypeErrorÚgetattr)Úselfrq   rs   r*   rL   s        r   Útest_set_ops_error_casesz#TestSetOps.test_set_ops_error_casesÖ   s=   € ð 2ˆÜ�]‰]œ9¨CÔ0ñ 	)Ø"ŒG�E˜6Ó" 4Ô(÷	)÷ 	)ñ 	)ús	   ž:ºAú3ignore:PeriodDtype\[B\] is deprecated:FutureWarningc                 ó   — t        |t        «      r+t        j                  dt	        |«      j
                  › �«       |d d j                  «       }|d d j                  «       }|j                  |«      }t        j                  ||«       t        |j                  t        «      ry |j                  «       |j                  «       |j                  «       g}|D ]!  }|j                  |«      }t        ||«      rŒ!J ‚ t        |t         «      r:d}t        j"                  t$        |¬«      5  |j                  g d¢«       d d d «       y y # 1 sw Y   y xY w)NúNot relevant for rS   rk   ú.other must be a MultiIndex or a list of tuplesr6   ©r`   ra   rk   )rC   r   r;   ÚskipÚtypeÚ__name__Úuniquerb   rH   rm   r)   r   Úto_numpyÚ	to_seriesÚto_listr   r
   r2   rx   )	rz   r*   ÚfirstÚsecondÚ	intersectÚcasesrq   rg   rL   s	            r   Útest_intersection_basez!TestSetOps.test_intersection_baseà   s'  € ä�eÔ-Ô.Ü�K‰KÐ+¬D°«K×,@Ñ,@Ð+AÐBÔCà�b�q�	× Ñ Ó"ˆØ�r˜�×!Ñ!Ó#ˆØ×&Ñ& vÓ.ˆ	Ü
×Ñ˜i¨Ô0ä�e—k‘k¤?Ô3ð ð —‘Ó" F×$4Ñ$4Ó$6¸¿¹Ó8HÐIˆØò 	2ˆDØ×'Ñ'¨Ó-ˆFÜ! &¨&Õ1Ð1Ð1ð	2ô �eœZÔ(ØBˆCÜ—‘œy°Ô4ñ .Ø×"Ñ"¢9Ô-÷.ð .ð )÷.ð .ús   Ä&EÅEc                 óN  — |j                  «       }|dd  }|d d }|}|j                  |«      }t        j                  |j	                  «       |j	                  «       «       t        |j                  t        «      ry |j                  «       |j                  «       |j                  «       g}|D ]!  }|j                  |«      }t        ||«      rŒ!J ‚ t        |t        «      r:d}	t        j                  t        |	¬«      5  |j                  g d¢«       d d d «       y y # 1 sw Y   y xY w)Nrk   rS   r   r6   r€   )r„   r(   rH   rm   r'   rC   r)   r   r…   r†   r‡   r   r
   r;   r2   rx   )
rz   r*   rˆ   r‰   Ú
everythingr(   r‹   rq   rg   rL   s
             r   Útest_union_basezTestSetOps.test_union_baseú   s  € à—‘“ˆØ�a�b�	ˆØ�r˜�ˆØˆ
à—‘˜FÓ#ˆÜ
×Ñ˜e×/Ñ/Ó1°:×3IÑ3IÓ3KÔLä�e—k‘k¤?Ô3ð ð —‘Ó" F×$4Ñ$4Ó$6¸¿¹Ó8HÐIˆØò 	6ˆDØ—[‘[ Ó&ˆFÜ! &¨*Õ5Ð5Ð5ð	6ô �eœZÔ(ØBˆCÜ—‘œy°Ô4ñ 'Ø—‘šIÔ&÷'ð 'ð )÷'ð 'ús   Ã=DÄD$c                 óH  — |dd  }|d d }|j                   dk(  r$t        |«      j                  t        |«      «      }nt        |t        «      rg }n|dd  }|j                  ||«      }t        ||«      sJ ‚|j                  «       |j                  «       |j                  «       g}|D ]"  }|j                  ||«      }t        ||«      rŒ"J ‚ t        |t        «      r;d}	t        j                  t        |	¬«      5  |j                  g d¢|«       d d d «       y y # 1 sw Y   y xY w)Nra   é   Úbooleanr   r6   r€   )Úinferred_typeÚsetru   rC   r   r   r…   r†   r‡   r
   r;   r2   rx   )
rz   Úsortr*   rˆ   r‰   Úanswerrg   r‹   rq   rL   s
             r   Útest_difference_basezTestSetOps.test_difference_base  s!  € à�a�b�	ˆØ�r˜�ˆØ×Ñ )Ò+ô ˜“Z×*Ñ*¬3¨v«;Ó7‰FÜ˜Ô/Ô0Ø‰Fà˜1˜2�YˆFØ×!Ñ! &¨$Ó/ˆÜ˜f fÔ-Ð-Ð-ð —‘Ó" F×$4Ñ$4Ó$6¸¿¹Ó8HÐIˆØò 	2ˆDØ×%Ñ% d¨DÓ1ˆFÜ! &¨&Õ1Ð1Ð1ð	2ô �eœZÔ(ØBˆCÜ—‘œy°Ô4ñ 2Ø× Ñ ¢¨DÔ1÷2ð 2ð )÷2ð 2ús   Ã9DÄD!c                 ó®  — |rM|j                   dk(  r>|j                  dk(  r/|j                  t        j                  j                  d¬«      «       t        |t        «      r+t        j                  dt        |«      j                  › �«       t        |«      dk  rt        j                  d«       |d   |d	d  v s
|d
   |d d
 v rt        j                  d«       |d	d  }|d d
 }|dd
g   }|j                  |«      }t        j                  |j                  «       |j                  «       «       |j!                  «       |j#                  «       |j%                  «       g}|D ]!  }	|j                  |	«      }t'        ||«      rŒ!J ‚ t        |t(        «      r:d}
t        j*                  t,        |
¬«      5  |j                  g d¢«       d d d «       y y # 1 sw Y   y xY w)Nr   ÚstringzTODO: infer_string)r1   r~   ra   zToo few values for testr   r`   éÿÿÿÿz+Index values no not satisfy test condition.r   r6   r€   )r)   r“   r?   r;   r<   r=   rC   r   r�   r‚   rƒ   r@   rv   rH   rm   r'   r…   r†   r‡   r   r
   r2   rx   )rz   r*   Úusing_infer_stringr   rˆ   r‰   r–   rg   r‹   rq   rL   s              r   Útest_symmetric_differencez$TestSetOps.test_symmetric_difference.  s«  € ñ Ø—‘˜xÒ'Ø×#Ñ# xÒ/à×Ñ¤§¡× 1Ñ 1Ð9MÐ 1Ó NÔOÜ�eÔ-Ô.Ü�K‰KÐ+¬D°«K×,@Ñ,@Ð+AÐBÔCÜˆu‹:˜Š>Ü�K‰KÐ1Ô2Ø�‰8�u˜Q˜R�yÑ  E¨"¡I°°s¸°Ñ$;ô �K‰KÐEÔFà�a�b�	ˆØ�s˜�ˆØ˜˜2�w‘ˆØ×+Ñ+¨FÓ3ˆÜ
×Ñ˜f×0Ñ0Ó2°F×4FÑ4FÓ4HÔIð —‘Ó" F×$4Ñ$4Ó$6¸¿¹Ó8HÐIˆØò 	2ˆDØ×/Ñ/°Ó5ˆFÜ! &¨&Õ1Ð1Ð1ð	2ô �eœZÔ(ØBˆCÜ—‘œy°Ô4ñ 6Ø×*Ñ*ª9Ô5÷6ð 6ð )÷6ð 6ús   Æ-GÇGzfname, sname, expected_name)©ÚArž   rž   ©rž   ÚBN)rž   NN©Nr    N)NNNc                 ól  — |j                   s|j                  «       }n|}|j                  «       j                  |«      }|j                  «       j                  |«      }|j	                  |«      }|j                  «       j                  |«      }	t        j                  ||	«       |j                  «       j                  |«      }|j                  |«      j                  |«      }|j	                  |«      }|j                  «       j                  |«      }	t        j                  ||	«       |j                  |«      j                  |«      }|j                  «       j                  |«      }|j	                  |«      }|j                  «       j                  |«      }	t        j                  ||	«       |j                  |«      j                  |«      }|j                  |«      j                  |«      }|j	                  |«      }|j                  |«      j                  |«      }	t        j                  ||	«       y r"   )r9   r„   ÚcopyÚ	set_namesr(   rH   rm   Údrop©
rz   r$   ÚfnameÚsnameÚexpected_namer*   rˆ   r‰   r(   re   s
             r   Útest_corner_unionzTestSetOps.test_corner_unionP  s·  € ð ×#Ò#Ø×%Ñ%Ó'‰EàˆEð —
‘
“×&Ñ& uÓ-ˆØ—‘“×'Ñ'¨Ó.ˆØ—‘˜FÓ#ˆØ—:‘:“<×)Ñ)¨-Ó8ˆÜ
×Ñ˜e XÔ.ð —
‘
“×&Ñ& uÓ-ˆØ—‘˜EÓ"×,Ñ,¨UÓ3ˆØ—‘˜FÓ#ˆØ—:‘:“<×)Ñ)¨-Ó8ˆÜ
×Ñ˜e XÔ.ð —
‘
˜5Ó!×+Ñ+¨EÓ2ˆØ—‘“×'Ñ'¨Ó.ˆØ—‘˜FÓ#ˆØ—:‘:“<×)Ñ)¨-Ó8ˆÜ
×Ñ˜e XÔ.ð —
‘
˜5Ó!×+Ñ+¨EÓ2ˆØ—‘˜EÓ"×,Ñ,¨UÓ3ˆØ—‘˜FÓ#ˆØ—:‘:˜eÓ$×.Ñ.¨}Ó=ˆÜ
×Ñ˜e XÕ.r   c                 óP  — |j                   s|j                  «       }n|}|j                  «       j                  |«      }|dd  j                  |«      }|j	                  |«      j                  «       }|j                  |«      j                  «       }	t        j                  ||	«       y ©Nr`   )r9   r„   r£   r¤   r(   r'   rH   rm   r¦   s
             r   Útest_union_unequalzTestSetOps.test_union_unequal  sŒ   € ð ×#Ò#Ø×%Ñ%Ó'‰EàˆEð —
‘
“×&Ñ& uÓ-ˆØ�q�r�×$Ñ$ UÓ+ˆØ—‘˜FÓ#×/Ñ/Ó1ˆØ—?‘? =Ó1×=Ñ=Ó?ˆÜ
×Ñ˜e XÕ.r   c                 óp  — |j                   s|j                  «       }n|}|j                  «       j                  |«      }|j                  «       j                  |«      }|j	                  |«      }|j                  «       j                  |«      }	t        j                  ||	«       |j                  «       j                  |«      }|j                  |«      j                  |«      }|j	                  |«      }|j                  |«      j                  |«      }	t        j                  ||	«       |j                  |«      j                  |«      }|j                  «       j                  |«      }|j	                  |«      }|j                  |«      j                  |«      }	t        j                  ||	«       |j                  |«      j                  |«      }|j                  |«      j                  |«      }|j	                  |«      }|j                  |«      j                  |«      }	t        j                  ||	«       y r"   )r9   r„   r£   r¤   rb   rH   rm   r¥   ©
rz   r$   r§   r¨   r©   r*   rˆ   r‰   rŠ   re   s
             r   Útest_corner_intersectz TestSetOps.test_corner_intersect–  sÅ  € ð ×#Ò#Ø×%Ñ%Ó'‰EàˆEð —
‘
“×&Ñ& uÓ-ˆØ—‘“×'Ñ'¨Ó.ˆØ×&Ñ& vÓ.ˆ	Ø—:‘:“<×)Ñ)¨-Ó8ˆÜ
×Ñ˜i¨Ô2ð —
‘
“×&Ñ& uÓ-ˆØ—‘˜EÓ"×,Ñ,¨UÓ3ˆØ×&Ñ& vÓ.ˆ	Ø—:‘:˜eÓ$×.Ñ.¨}Ó=ˆÜ
×Ñ˜i¨Ô2ð —
‘
˜5Ó!×+Ñ+¨EÓ2ˆØ—‘“×'Ñ'¨Ó.ˆØ×&Ñ& vÓ.ˆ	Ø—:‘:˜eÓ$×.Ñ.¨}Ó=ˆÜ
×Ñ˜i¨Ô2ð —
‘
˜5Ó!×+Ñ+¨EÓ2ˆØ—‘˜EÓ"×,Ñ,¨UÓ3ˆØ×&Ñ& vÓ.ˆ	Ø—:‘:˜eÓ$×.Ñ.¨}Ó=ˆÜ
×Ñ˜i¨Õ2r   c                 óV  — |j                   s|j                  «       }n|}|j                  «       j                  |«      }|dd  j                  |«      }|j	                  |«      j                  «       }|dd  j                  |«      j                  «       }	t        j                  ||	«       y r¬   )r9   r„   r£   r¤   rb   r'   rH   rm   r¯   s
             r   Útest_intersect_unequalz!TestSetOps.test_intersect_unequalÄ  s–   € ð ×#Ò#Ø×%Ñ%Ó'‰EàˆEð —
‘
“×&Ñ& uÓ-ˆØ�q�r�×$Ñ$ UÓ+ˆØ×&Ñ& vÓ.×:Ñ:Ó<ˆ	Ø˜˜�9×&Ñ& }Ó5×AÑAÓCˆÜ
×Ñ˜i¨Õ2r   c                 óà  — t        |t        «      r.|j                  t        t	        |j
                  «      «      «      }n|j                  d«      }t        j                  |«      }|j                  |«      }|j                  |j                  k(  sJ ‚|j                  |d d «      }|j                  |j                  k(  sJ ‚|d d j                  |«      }|j                  |j                  k(  sJ ‚y )Nr\   r   )
rC   r
   ÚrenameÚlistÚrangeÚnlevelsrF   Úasarrayrb   r_   )rz   r*   Úotherrg   s       r   Ú.test_intersection_name_retention_with_namelessz9TestSetOps.test_intersection_name_retention_with_namelessÛ  sÆ   € ä�eœZÔ(Ø—L‘L¤¤e¨E¯M©MÓ&:Ó!;Ó<‰Eà—L‘L Ó'ˆEä—
‘
˜5Ó!ˆà×#Ñ# EÓ*ˆØ�{‰{˜eŸj™jÒ(Ð(Ð(ð ×#Ñ# E¨"¨1 IÓ.ˆØ�{‰{˜eŸj™jÒ(Ð(Ð(ð �r˜�×'Ñ'¨Ó.ˆØ�{‰{˜eŸj™jÒ(Ð(Ñ(r   c                 ó¦   — |j                   st        j                  d«       |j                  ||¬«      }|d d }t	        j
                  ||d¬«       y )Nz&Not relevant since index is not unique©r•   r   T©Úexact)r9   r;   r�   ru   rH   rm   )rz   r*   r•   rg   re   s        r   Ú$test_difference_preserves_type_emptyz/TestSetOps.test_difference_preserves_type_emptyï  sJ   € ð �ŠÜ�K‰KÐ@ÔAØ×!Ñ! %¨dÐ!Ó3ˆØ˜˜!�9ˆÜ
×Ñ˜f h°dÖ;r   c                 óZ  — t        |t        «      r|D �cg c]  }|g|j                  z  ‘Œ }}|j                  |d   «      }|j                  |d   «      }|j	                  |«      sJ ‚|j                  |«      }|d d j                  |d   «      }t        j                  ||«       y c c}w )Nr   r`   ra   )rC   r
   r·   r´   Úequalsru   rH   rm   )rz   r*   r[   Úxr¹   rg   re   s          r   Ú%test_difference_name_retention_equalsz0TestSetOps.test_difference_name_retention_equalsù  sŸ   € Ü�eœZÔ(Ø27Ö8¨Q�a�S˜5Ÿ=™=Ó(Ð8ˆEÐ8Ø—‘˜U 1™XÓ&ˆØ—‘˜U 1™XÓ&ˆà�|‰|˜EÔ"Ð"Ð"à×!Ñ! %Ó(ˆØ˜˜!�9×#Ñ# E¨!¡HÓ-ˆÜ
×Ñ˜f hÕ/ùò 9s   •B(c                 óÄ   — |j                   st        j                  d«       |j                  |d d «      }|j	                  ||¬«      }t        j                  ||d¬«       y )Nz(Not relevant because index is not uniquer   r¼   Tr½   )r9   r;   r�   rb   ru   rH   rm   )rz   r*   r•   ÚinterÚdiffs        r   Ú(test_intersection_difference_match_emptyz3TestSetOps.test_intersection_difference_match_empty  sU   € ð
 �ŠÜ�K‰KÐBÔCØ×"Ñ" 5¨¨! 9Ó-ˆØ×Ñ ¨DÐÓ1ˆÜ
×Ñ˜e T°Ö6r   N)rƒ   Ú
__module__Ú__qualname__r;   r<   Úparametrizer{   ÚfilterwarningsrŒ   r�   r—   rœ   rª   r­   r°   r²   rº   r¿   rÃ   rÇ   r#   r   r   rp   rp   Ô   s½  „ à‡[�[×Ñ˜V c¨5 \Ó2Ø‡[�[×ÑØÒQóñ)óó 3ð)ð ‡[�[×ÑÐ VÓWñ.ó Xð.ð2 ‡[�[×ÑÐ VÓWñ'ó Xð'ð2 ‡[�[×ÑÐ VÓWñ2ó Xð2ð2 ‡[�[×ÑÐ VÓWñ6ó Xð6ðB ‡[�[×ÑØ%ò	
ó	ñ#/ó	ð#/ðJ ‡[�[×ÑØ%ò	
ó	ñ/ó	ð/ð ‡[�[×ÑØ%ò	
ó	ñ"3ó	ð"3ðH ‡[�[×ÑØ%ò	
ó	ñ3ó	ð3ð ‡[�[×ÑÐ VÓWñ)ó Xð)ò&<ò
0ó	7r   rp   z7ignore:invalid value encountered in cast:RuntimeWarningr|   rs   rt   c                 óê  — | }|j                  d«      }t        |t        «      rdnd} t        ||«      ||¬«      } t        ||«      ||¬«      }|r!|j                  r|dv r|j                  d«      }t        j                  |||¬«        t        ||«      |d d |¬«      } t        ||«      |d d |¬«      }|r!|j                  r|dv r|j                  d«      }t        j                  |||¬«       y )Nr   ÚequivTr¼   )r(   rv   r½   rS   )ÚastyperC   r   ry   ÚemptyrH   rm   )	r$   r•   rs   r›   r*   r¹   r¾   rg   re   s	            r   Útest_setop_with_categoricalrÐ     sí   € ð €Eà�L‰L˜Ó$€EÜ! %¬Ô4‰G¸$€Eà#ŒW�U˜FÓ# E°Ô5€FØ%Œw�u˜fÓ% e°$Ô7€HáØ�KŠKØÐ7Ñ7à—?‘? :Ó.ˆÜ×Ñ˜& (°%Õ8à#ŒW�U˜FÓ# E¨"¨1 I°DÔ9€FØ%Œw�u˜fÓ% e¨B¨Q i°dÔ;€HáØ�KŠKØÐ7Ñ7à—?‘? :Ó.ˆÜ×Ñ˜& (°%Ö8r   c                 óô   — | j                   rt        j                  d«       | }|g d¢   }|j                  |«      j	                  |j                  |«      «      sJ ‚|j                  |«      j
                  sJ ‚y )NzNot relevant for empty Index©r   r   r`   ra   )rÏ   r;   r�   rb   rÁ   r9   )r*   ÚidxÚidx_non_uniques      r   Ú(test_intersection_duplicates_all_indexesrÕ   2  si   € à‡{‚{ä�‰Ð2Ô3à
€CØšÑ&€Nà×Ñ˜NÓ+×2Ñ2°>×3NÑ3NÈsÓ3SÔTÐTÐTØ×Ñ˜NÓ+×5Ò5Ð5Ñ5r   c                 ó<  — | }t        g d¢|¬«      }t        g d¢|¬«      }t        g d¢|¬«      }t        |t        «      rt        g d¢«      }|j                  |«      }t	        j
                  ||«       |j                  |d¬«      }t	        j
                  ||«       y )Nrj   rT   )rk   rk   r‘   )r`   ra   ra   rk   rk   r‘   Fr¼   ©r	   rC   r   r(   rH   rm   ©r    r)   rf   r0   re   rg   s         r   Ú0test_union_duplicate_index_subsets_of_each_otherrÙ   ?  sƒ   € ð 4€EÜŠl %Ô(€AÜŠi˜uÔ%€AäÒ'¨uÔ5€HÜ�!Ô%Ô&ÜÒ+Ó,ˆØ�W‰W�Q‹Z€FÜ×Ñ˜& (Ô+Ø�W‰W�Q˜UˆWÓ#€FÜ×Ñ˜& (Õ+r   c                 óþ   — | }t        g d¢|¬«      }t        ddg|¬«      }t        g d¢|¬«      }|j                  |«      }t        j                  ||«       |j                  |«      }t        j                  ||«       y )N)r`   r   r   rT   r   r`   ©r   r   r`   ©r	   r(   rH   rm   rØ   s         r   Ú1test_union_with_duplicate_index_and_non_monotonicrÝ   P  sk   € ð 4€EÜŠi˜uÔ%€AÜˆq�!ˆf˜EÔ"€AÜ’Y eÔ,€Hà�W‰W�Q‹Z€FÜ×Ñ˜& (Ô+à�W‰W�Q‹Z€FÜ×Ñ˜& (Õ+r   c                  ó¤   — t        g d¢«      } t        g d¢«      }t        g d¢«      }| j                  |d¬«      }t        j                  ||«       y )Nrj   )Ú1Ú0rà   )r`   ra   ra   rk   rß   rà   rà   Fr¼   rÜ   )rf   r0   re   rg   s       r   Ú+test_union_duplicate_index_different_dtypesrá   `  sC   € äŠlÓ€AÜŠoÓ€AÜÒ0Ó1€HØ�W‰W�Q˜UˆWÓ#€FÜ×Ñ˜& (Õ+r   c                  ó    — t        g d¢«      } t        g d¢«      }| j                  |«      }t        g d¢«      }t        j                  ||«       y )NrÛ   rÒ   rÜ   )rf   r0   rg   re   s       r   Ú(test_union_same_value_duplicated_in_bothrã   i  s=   € äŠiÓ€AÜŠlÓ€AØ�W‰W�Q‹Z€FÜ’\Ó"€HÜ×Ñ˜& (Õ+r   Údupr`   c                 ó  — t        t        j                  dddg«      }t        t        j                  | ddg«      }|j                  |d¬«      }t        t        j                  | dddg«      }t	        j
                  ||«       y )Nr`   ra   Fr¼   g      ð?ç       @)r	   rF   Únanr(   rH   rm   )rä   rf   r0   rg   re   s        r   Útest_union_nan_in_bothrè   r  sm   € ô 	Œr�v‰v�q˜!˜QÐÓ €AÜŒr�v‰v�s˜A˜qÐ!Ó"€AØ�W‰W�Q˜UˆWÓ#€FÜ”b—f‘f˜c 3¨¨SÐ1Ó2€HÜ×Ñ˜& (Õ+r   c                  ó¤   — t        ddd«      } t        ddd«      }| j                  |d¬«      }t        g d¢«      }t        j                  ||«       y )	Nr`   éd   é   é2   rk   Tr¼   )r`   r‘   é   é
   é   é   é   é   é   é   é   é"   é%   é(   é+   é.   é1   é7   é=   éC   éI   éO   éU   é[   éa   )r   r(   r	   rH   rm   )r+   r,   rg   re   s       r   Útest_union_rangeindex_sort_truer  |  sQ   € ä�a˜˜aÓ €DÜ�a˜˜QÓ€DØ�Z‰Z˜ 4ˆZÓ(€FÜò	
ó€Hô: ×Ñ˜& (Õ+r   c                 ó8  — | }t        g d¢|¬«      }t        g d¢|¬«      }t        g d¢|¬«      }t        |t        «      rt        g d¢«      }|j                  |«      }t	        j
                  ||«       |j                  |«      }t	        j
                  ||«       y )N)r`   r   ra   rT   rÛ   rÒ   r×   rØ   s         r   Ú<test_union_with_duplicate_index_not_subset_and_non_monotonicr  ¡  s|   € ð 4€EÜŠi˜uÔ%€AÜŠi˜uÔ%€AÜ’\¨Ô/€HÜ�!Ô%Ô&ÜšÓ&ˆà�W‰W�Q‹Z€FÜ×Ñ˜& (Ô+à�W‰W�Q‹Z€FÜ×Ñ˜& (Õ+r   c                  ó”  — t        ddt        j                  g«      } | j                  j                  j
                  dk(  sJ ‚t        ddg«      }|j                  | «      }t        ddt        j                  gt        j                  ¬«      }t        j                  ||«       | j                  |«      }t        j                  ||«       y )Nr`   ra   r/   rT   )r   rF   rç   Ú
categoriesr)   r:   r	   r(   rX   rH   rm   )ÚcirÓ   rg   re   s       r   Ú#test_union_int_categorical_with_nanr
  ³  s•   € Ü	˜1˜a¤§¡˜.Ó	)€BØ�=‰=×Ñ×#Ñ# sÒ*Ð*Ð*ä
��A�‹-€Cà�Y‰Y�r‹]€FÜ�a˜œBŸF™F�^¬2¯:©:Ô6€HÜ×Ñ˜& (Ô+à�X‰X�c‹]€FÜ×Ñ˜& (Õ+r   c            	       óþ  — e Zd Zd„ Zej
                  j                  ddgd¬«      d„ «       Zej
                  j                  dg d¢«      d	„ «       Zej
                  j                  ddgd¬«      ej
                  j                  d
g d¢«      d„ «       «       Z	d„ Z
ej
                  j                  ddgd¬«      d„ «       Zej
                  j                  dej                  eeg«      ej
                  j                  ddgd¬«      d„ «       «       Zej
                  j                  ddgd¬«      d„ «       Zej
                  j                  ddgd¬«      ej
                  j                  dddg«      d„ «       «       Zd„ Zd„ Zej
                  j                  ddgd¬«      d„ «       Zej
                  j                  ddgd¬«      d„ «       Zej
                  j                  dddg«      d„ «       Zej
                  j                  dddg«      d„ «       Zd„ Zej
                  j                  d d!d"ej4                  gg d#¢fd!d"gej4                  d$d%d&gfg«      d'„ «       Zd(„ Zd)„ Zd*„ Z ej@                  d+«      d,„ «       Z!y-).ÚTestSetOpsUnsortedc                 óî   — t        ddd«      t        ddd«      g}t        |t        ¬«      }t        dgt        ¬«      }|j                  |«      }t        g t        ¬«      }t	        j
                  ||«       y )NiÜ  ra   é	   rò   rT   Úaa)r   r	   r   rb   rH   rm   )rz   Údt_datesÚindex1Úindex2rg   re   s         r   Útest_intersect_str_datesz+TestSetOpsUnsorted.test_intersect_str_datesÄ  sd   € Ü˜T 1 aÓ(¬(°4¸¸BÓ*?Ð@ˆä�x¤vÔ.ˆÜ˜�v¤VÔ,ˆØ×$Ñ$ VÓ,ˆä˜¤6Ô*ˆÜ
×Ñ˜f hÕ/r   r*   r™   T)Úindirectc                 ó
  — |d d }|d d }|j                  ||¬«      }|dv r3t        j                  |j                  «       |j                  «       «       nt        j                  ||«       |j                  ||¬«      }||usJ ‚y )Né   rî   r¼   ©NF)rb   rH   rm   r'   )rz   r*   r•   rˆ   r‰   rŠ   rÅ   s          r   Útest_intersectionz$TestSetOpsUnsorted.test_intersectionÎ  sŒ   € à�c�r�
ˆØ�s˜�ˆØ×&Ñ& v°DÐ&Ó9ˆ	Ø�=Ñ Ü×!Ñ! )×"7Ñ"7Ó"9¸6×;MÑ;MÓ;OÕPä×!Ñ! )¨VÔ4ð ×"Ñ" 5¨tÐ"Ó4ˆØ˜EÑ!Ð!Ñ!r   zindex2_name,keeps_name))r*   T)r¹   Fr  c                 óò   — t        g d¢|¬«      }t        g d¢d¬«      }t        g d¢«      }|j                  ||«      }|rd|_        |j                  |j                  k(  sJ ‚t        j                  ||«       y )N)rk   r‘   rS   rë   rí   ©r_   ©r`   ra   rk   r‘   rS   r*   ©rk   r‘   rS   )r	   rb   r_   rH   rm   )rz   Úindex2_nameÚ
keeps_namer•   r  r  re   rg   s           r   Ú#test_intersection_name_preservationz6TestSetOpsUnsorted.test_intersection_name_preservationÜ  sh   € ô ’¨[Ô9ˆÜ’¨WÔ5ˆÜšÓ#ˆØ×$Ñ$ V¨TÓ2ˆáØ#ˆHŒMà�{‰{˜hŸm™mÒ+Ð+Ð+Ü
×Ñ˜f hÕ/r   z$first_name,second_name,expected_name)r�   rŸ   r¡   c                 ó|   — |dd }|d d }||_         ||_         |j                  ||¬«      }|j                   |k(  sJ ‚y )NrS   r  rî   r¼   )r_   rb   )	rz   r*   Ú
first_nameÚsecond_namer©   r•   rˆ   r‰   rŠ   s	            r   Ú$test_intersection_name_preservation2z7TestSetOpsUnsorted.test_intersection_name_preservation2ð  sO   € ð �a˜�ˆØ�s˜�ˆØˆŒ
Ø!ˆŒØ×&Ñ& v°DÐ&Ó9ˆ	Ø�~‰~ Ò.Ð.Ñ.r   c                 ó(  — t        ddgd¬«      }t        ddgd¬«      }t        dd	gd
¬«      }|j                  |j                  ||¬«      |¬«      }|j                  ||¬«      j                  ||¬«      }t        j                  ||«       t        ddgd¬«      }t        g d¬«      }t        g d¬«      }	|j                  |j                  |	|¬«      |¬«      }|j                  ||¬«      j                  |	|¬«      }t        j                  ||«       y )Nr`   ra   Úi1r  rS   rë   Úi2rk   r‘   Úi3r¼   Új1Új2Új3rÜ   )
rz   r•   r%  r&  r'  r(   re   r(  r)  r*  s
             r   Útest_chained_unionz%TestSetOpsUnsorted.test_chained_unionÿ  sü   € ä�A�q�6 Ô%ˆÜ�A�q�6 Ô%ˆÜ�A�q�6 Ô%ˆØ—‘˜Ÿ™ "¨4˜Ó0°t�Ó<ˆØ—8‘8˜B T�8Ó*×0Ñ0°¸$Ð0Ó?ˆÜ
×Ñ˜e XÔ.ä�A�q�6 Ô%ˆÜ�2˜DÔ!ˆÜ�2˜DÔ!ˆØ—‘˜Ÿ™ "¨4˜Ó0°t�Ó<ˆØ—8‘8˜B T�8Ó*×0Ñ0°¸$Ð0Ó?ˆÜ
×Ñ˜e XÕ.r   c                 óâ   — |dd }|d d }|d d }|j                  ||¬«      }|dv r3t        j                  |j                  «       |j                  «       «       y t        j                  ||«       y ©NrS   r  rî   r¼   r  )r(   rH   rm   r'   )rz   r*   r•   rˆ   r‰   rŽ   r(   s          r   Ú
test_unionzTestSetOpsUnsorted.test_union  so   € à�a˜�ˆØ�s˜�ˆØ˜3˜B�Zˆ
à—‘˜F¨�Ó.ˆØ�=Ñ Ü×!Ñ! %×"3Ñ"3Ó"5°z×7MÑ7MÓ7OÕPä×!Ñ! %¨Õ4r   Úklassc                 ó  — |dd }|d d }|d d } ||j                   «      }|j                  ||¬«      }|dv r3t        j                  |j	                  «       |j	                  «       «       y t        j                  ||«       y r-  )ri   r(   rH   rm   r'   )	rz   r*   r/  r•   rˆ   r‰   rŽ   rq   rg   s	            r   Útest_union_from_iterablesz,TestSetOpsUnsorted.test_union_from_iterables  s   € ð �a˜�ˆØ�s˜�ˆØ˜3˜B�Zˆ
á�V—]‘]Ó#ˆØ—‘˜T¨�Ó-ˆØ�=Ñ Ü×!Ñ! &×"4Ñ"4Ó"6¸
×8NÑ8NÓ8PÕQä×!Ñ! &¨*Õ5r   c                 óø   — |dd }|j                  ||¬«      }||usJ ‚|j                  t        g |j                  ¬«      |¬«      }||usJ ‚t        g |j                  ¬«      j                  ||¬«      }||usJ ‚y )NrS   r  r¼   rT   )r(   r	   r)   )rz   r*   r•   rˆ   r(   s        r   Útest_union_identityz&TestSetOpsUnsorted.test_union_identity*  sˆ   € à�a˜�ˆà—‘˜E¨�Ó-ˆà˜EÑ!Ð!Ð!ð —‘œE "¨E¯K©KÔ8¸t�ÓDˆØ˜EÑ!Ð!Ð!ä�b §¡Ô,×2Ñ2°5¸tÐ2ÓDˆØ˜EÑ!Ð!Ñ!r   zsecond_name,expected)NN)r_   r_   c                 óP  — |dd }|d d }|dd }d|_         ||_         |j                  ||¬«      }|du rt        j                  ||«       n9||_         t        j                  |j	                  «       |j	                  «       «       |€|j                   �J ‚y |j                   |k(  sJ ‚y )NrS   r  rî   r_   r¼   T)r_   ru   rH   rm   r'   )	rz   r*   r"  re   r•   rˆ   r‰   r–   rg   s	            r   Ú!test_difference_name_preservationz4TestSetOpsUnsorted.test_difference_name_preservation:  s°   € ð �a˜�ˆØ�s˜�ˆØ�r˜"�ˆàˆŒ
Ø!ˆŒØ×!Ñ! &¨tÐ!Ó4ˆà�4‰<Ü×!Ñ! &¨&Õ1à%ˆFŒKÜ×!Ñ! &×"4Ñ"4Ó"6¸×8JÑ8JÓ8LÔMàÐØ—;‘;Ð&Ð&Ñ&à—;‘; (Ò*Ð*Ñ*r   c                 óÀ   — |j                  «       }|dd }d|_        |j                  g |«      }|dd j                  «       }d|_        t	        j
                  ||«       y )NrS   r  r_   )r£   r_   ru   r„   rH   rm   )rz   r*   r•   rˆ   rg   re   s         r   Útest_difference_empty_argz,TestSetOpsUnsorted.test_difference_empty_argP  s\   € Ø—
‘
“ˆØ�a˜�ˆØˆŒ
Ø×!Ñ! " dÓ+ˆØ˜˜2�;×%Ñ%Ó'ˆØˆŒÜ
×Ñ˜f hÕ/r   c                 óœ   — t        ddg«      }t        dg«      }|j                  |«      }t        dg«      }t        j                  ||«       y )Nr`   T)r	   ru   rH   rm   )rz   rc   rd   rg   re   s        r   Ú"test_difference_should_not_comparez5TestSetOpsUnsorted.test_difference_should_not_compareY  sC   € ä�a˜�V‹}ˆÜ�t�f“ˆØ—‘ Ó'ˆÜ˜!˜“:ˆÜ
×Ñ˜f hÕ/r   c                 ó–   — |dd }d|_         |j                  ||«      }t        |«      dk(  sJ ‚|j                   |j                   k(  sJ ‚y )NrS   r  r_   r   )r_   ru   r@   )rz   r*   r•   rˆ   rg   s        r   Útest_difference_identityz+TestSetOpsUnsorted.test_difference_identitya  sN   € à�a˜�ˆØˆŒ
Ø×!Ñ! %¨Ó.ˆä�6‹{˜aÒÐÐØ�{‰{˜eŸj™jÒ(Ð(Ñ(r   c                 ó–   — |dd }|d d }|j                  ||«      }|dd }|€|j                  «       }t        j                  ||«       y )NrS   r  rî   )ru   r'   rH   rm   )rz   r*   r•   rˆ   r‰   rg   re   s          r   Útest_difference_sortz'TestSetOpsUnsorted.test_difference_sortj  sX   € à�a˜�ˆØ�s˜�ˆà×!Ñ! &¨$Ó/ˆØ˜˜B�<ˆàˆ<Ø×+Ñ+Ó-ˆHä
×Ñ˜f hÕ/r   Úopnameru   rv   c                 óê  — t        dt        d«      dg«      }t        dt        d«      dg«      }t        j                  ||«      }t	        j
                  t        d¬«      5   ||«      }d d d «       t        dt        d«      dt        d«      g«      }|dk(  r|d d }t	        j                  |«       t        j                  ||d	¬
«      } ||«      }t	        j                  ||«       y # 1 sw Y   Œ�xY w)Nrk   Ú2000r`   ra   Ú1999znot supported betweenr6   ru   Fr¼   )r	   r   ÚoperatorÚmethodcallerrH   rI   rB   rm   )rz   r>  rf   r0   Úoprg   re   s          r   Útest_difference_incomparablez/TestSetOpsUnsorted.test_difference_incomparablew  sà   € ä�1”i Ó'¨Ð+Ó,ˆÜ�1”i Ó'¨Ð+Ó,ˆÜ×"Ñ" 6¨1Ó-ˆä×'Ñ'¬Ð>UÔVñ 	á˜“UˆF÷	ô ˜!œY vÓ.°´9¸VÓ3DÐEÓFˆØ�\Ò!Ø  �|ˆHÜ
×Ñ˜f hÔ/ô ×"Ñ" 6¨1°5Ô9ˆÙ�A“ˆÜ
×Ñ˜f hÕ/÷	ð 	ús   Á 	C)Ã)C2c                 ó  — t        dt        d«      dg«      }t        dt        d«      dg«      }t        j                  ||d¬«      }d}t	        j
                  t        |¬	«      5   ||«       d d d «       y # 1 sw Y   y xY w)
Nrk   r@  r`   ra   rA  Tr¼   z<'<' not supported between instances of 'Timestamp' and 'int'r6   )r	   r   rB  rC  r;   r2   rx   )rz   r>  rf   r0   rD  rL   s         r   Ú!test_difference_incomparable_truez4TestSetOpsUnsorted.test_difference_incomparable_trueŠ  sq   € ä�1”i Ó'¨Ð+Ó,ˆÜ�1”i Ó'¨Ð+Ó,ˆÜ×"Ñ" 6¨1°4Ô8ˆàLˆÜ�]‰]œ9¨CÔ0ñ 	ÙˆqŒE÷	÷ 	ñ 	ús   Á$	A6Á6A?c                 ó  — t        j                  t        g d¢g d¢«      «      }t        j                  ddg«      }|j                  ||¬«      }t        j                  g d¢«      }|€|j	                  «       }t        j                  ||«       y )N)r\   r]   Úbazr€   )r\   r`   ©r]   rk   r¼   ))r]   ra   )rI  rk   rJ  )r
   Úfrom_tuplesÚziprv   r'   rH   rm   )rz   r•   r  r  rg   re   s         r   Útest_symmetric_difference_miz/TestSetOpsUnsorted.test_symmetric_difference_mi”  sx   € Ü×'Ñ'¬Ò,AÂ9Ó(MÓNˆÜ×'Ñ'¨°ZÐ(@ÓAˆØ×,Ñ,¨V¸$Ð,Ó?ˆÜ×)Ñ)Ò*NÓOˆØˆ<Ø×+Ñ+Ó-ˆHÜ
×Ñ˜f hÕ/r   zindex2,expectedr   r`   )ræ   ç      @ç        ræ   rN  rO  c                 óà   — t        |«      }t        |«      }t        dt        j                  ddg«      }|j                  ||¬«      }|€|j	                  «       }t        j                  ||«       y )Nr`   ra   rk   r¼   )r	   rF   rç   rv   r'   rH   rm   )rz   r  re   r•   r  rg   s         r   Ú!test_symmetric_difference_missingz4TestSetOpsUnsorted.test_symmetric_difference_missing�  sg   € ô �v“ˆÜ˜“?ˆô ˜œ2Ÿ6™6 1 aÐ(Ó)ˆà×,Ñ,¨V¸$Ð,Ó?ˆØˆ<Ø×+Ñ+Ó-ˆHÜ
×Ñ˜f hÕ/r   c                 ó
  — t        g d¢d¬«      }t        j                  g d¢«      }t        ddgd¬«      }|j                  ||¬«      }|dv rt	        j
                  ||«       n$t	        j
                  |j                  «       |«       |j                  dk(  sJ ‚|j                  |d	|¬
«      }d	|_        |dv rt	        j
                  ||«       n$t	        j
                  |j                  «       |«       |j                  d	k(  sJ ‚y )N)r`   ra   rk   r‘   r  r  )ra   rk   r‘   rS   r`   rS   r¼   )NTÚnew_name)Úresult_namer•   )r	   rF   Úarrayrv   rH   rm   r'   r_   )rz   r•   r  r  re   rg   s         r   Ú#test_symmetric_difference_non_indexz6TestSetOpsUnsorted.test_symmetric_difference_non_index°  sæ   € Ü’|¨(Ô3ˆÜ—‘š,Ó'ˆÜ˜!˜Q˜ hÔ/ˆØ×,Ñ,¨V¸$Ð,Ó?ˆØ�<ÑÜ×!Ñ! &¨(Õ3ä×!Ñ! &×"4Ñ"4Ó"6¸ÔAØ�{‰{˜hÒ&Ð&Ð&à×,Ñ,¨VÀÐRVÐ,ÓWˆØ"ˆŒØ�<ÑÜ×!Ñ! &¨(Õ3ä×!Ñ! &×"4Ñ"4Ó"6¸ÔAØ�{‰{˜jÒ(Ð(Ñ(r   c                 ó¬   — t        g d¢|¬«      }t        g d¢|¬«      }|j                  |«      }t        g d¢|¬«      }t        j                  ||«       y )Nr€   rT   r  r  rÜ   )rz   Úany_numeric_ea_and_arrow_dtyperÓ   r,   rg   re   s         r   Útest_union_ea_dtypesz'TestSetOpsUnsorted.test_union_ea_dtypesÃ  sF   € ä’IÐ%CÔDˆÜ’YÐ&DÔEˆØ—‘˜4“ˆÜšÐ0NÔOˆÜ
×Ñ˜f hÕ/r   c                 ó¨   — t        dg|¬«      }t        dg|¬«      }|j                  |«      }t        ddg|¬«      }t        j                  ||«       y )Nrf   rT   r0   rÜ   )rz   Úany_string_dtyper+   r,   rg   re   s         r   Útest_union_string_arrayz*TestSetOpsUnsorted.test_union_string_arrayË  sO   € Ü�c�UÐ"2Ô3ˆÜ�c�UÐ"2Ô3ˆØ—‘˜DÓ!ˆÜ˜#˜s˜Ð+;Ô<ˆÜ
×Ñ˜f hÕ/r   Úpyarrowc                 ó¼   — t        dgd¬«      }t        dgd¬«      }|j                  |«      }t        ddg|j                  ¬«      }t        j                  ||«       y )Nz
2020-01-01ztimestamp[s][pyarrow]rT   z
2020-01-02)r	   r(   r)   rH   rm   )rz   rc   rd   Úresre   s        r   Útest_union_pyarrow_timestampz/TestSetOpsUnsorted.test_union_pyarrow_timestampÒ  sU   € ô �l�^Ð+BÔCˆÜ�|�nÐ,CÔDˆà�j‰j˜ÓˆÜ˜,¨Ð5¸T¿Z¹ZÔHˆÜ
×Ñ˜c 8Õ,r   N)"rƒ   rÈ   rÉ   r  r;   r<   rÊ   r  r  r#  r+  r.  rF   rU  r   rµ   r1  r3  r5  r7  r9  r;  r=  rE  rG  rM  rç   rQ  rV  rY  r\  ÚtdÚ
skip_if_nor`  r#   r   r   r  r  Á  sí  „ ò0ð ‡[�[×Ñ˜W x j¸4ÐÓ@ñ"ó Að"ð ‡[�[×ÑØ ò	
óñ
0óð
0ð ‡[�[×Ñ˜W x j¸4ÐÓ@Ø‡[�[×ÑØ.Ú>óñ/ó	ó Að
/ò/ð  ‡[�[×Ñ˜W x j¸4ÐÓ@ñ	5ó Að	5ð ‡[�[×Ñ˜W r§x¡x°¸Ð&>Ó?Ø‡[�[×Ñ˜W x j¸4ÐÓ@ñ6ó Aó @ð6ð ‡[�[×Ñ˜W x j¸4ÐÓ@ñ"ó Að"ð ‡[�[×Ñ˜W x j¸4ÐÓ@Ø‡[�[×ÑÐ3°lÐDTÐ5UÓVñ+ó Wó Að+ò(0ò0ð ‡[�[×Ñ˜W x j¸4ÐÓ@ñ)ó Að)ð ‡[�[×Ñ˜W x j¸4ÐÓ@ñ
0ó Að
0ð ‡[�[×Ñ˜X¨Ð6LÐ'MÓNñ0ó Oð0ð$ ‡[�[×Ñ˜X¨Ð6LÐ'MÓNñó Oðò0ð ‡[�[×ÑØà��B—F‘Fˆ^š_Ð-Ø�ˆV�b—f‘f˜c 3¨Ð,Ð-ð	
óñ
0óð
0ò)ò&0ò0ð €R‡]�]�9Óñ-ó ñ-r   r  c                  ó  — t        ddgd¬«      } t        ddgd¬«      }| j                  |«      }|| usJ ‚||usJ ‚t        j                  || «       |j                  dk(  sJ ‚d| _        |j                  dk(  sJ ‚| j                  dk(  sJ ‚y ©Nr   r`   Úoriginalr  Úchanged)r	   rb   rH   rm   r_   ©r  r  rg   s      r   Ú!test_intersection_mutation_safetyrh  Ý  s›   € ä�A�q�6 
Ô+€FÜ�A�q�6 
Ô+€Fà× Ñ  Ó(€Fà˜ÑÐÐØ˜ÑÐÐä×Ñ˜& &Ô)Ø�;‰;˜*Ò$Ð$Ð$à€F„Kà�;‰;˜*Ò$Ð$Ð$Ø�;‰;˜)Ò#Ð#Ñ#r   c                  ó  — t        ddgd¬«      } t        ddgd¬«      }| j                  |«      }|| usJ ‚||usJ ‚t        j                  || «       |j                  dk(  sJ ‚d| _        |j                  dk(  sJ ‚| j                  dk(  sJ ‚y rd  ©r	   r(   rH   rm   r_   rg  s      r   Útest_union_mutation_safetyrk  ð  s™   € ä�A�q�6 
Ô+€FÜ�A�q�6 
Ô+€Fà�\‰\˜&Ó!€Fà˜ÑÐÐØ˜ÑÐÐä×Ñ˜& &Ô)Ø�;‰;˜*Ò$Ð$Ð$à€F„Kà�;‰;˜*Ò$Ð$Ð$Ø�;‰;˜)Ò#Ð#Ñ#r   c                  ó  — t        ddgd¬«      } t        ddgd¬«      }| j                  |«      }||usJ ‚t        j                  ||«       |j                  dk(  sJ ‚d|_        |j                  dk(  sJ ‚|j                  dk(  sJ ‚y rd  rj  rg  s      r   Ú test_union_mutation_safety_otherrm    s‹   € ä�A�q�6 
Ô+€FÜ�A�q�6 
Ô+€Fà�\‰\˜&Ó!€Fà˜ÑÐÐä×Ñ˜& &Ô)Ø�;‰;˜*Ò$Ð$Ð$à€F„Kà�;‰;˜*Ò$Ð$Ð$Ø�;‰;˜)Ò#Ð#Ñ#r   c                  óÖ   — t        j                  ddgddg¬«      } t        j                  ddgddg¬«      }| j                  |«      }|| usJ ‚ddg| _        |j                  ddgk(  sJ ‚y ©N)rf   r`   )r0   ra   rÂ   Úy)r[   Úchanged1Úchanged2)r
   rK  rb   r[   ©Úmi1Úmi2rg   s      r   Ú,test_multiindex_intersection_mutation_safetyrv    sx   € ä
×
 Ñ
  (¨HÐ!5¸cÀ3¸ZÔ
H€CÜ
×
 Ñ
  (¨HÐ!5¸cÀ3¸ZÔ
H€Cà×Ñ˜cÓ"€FØ˜ÑÐÐà˜ZÐ(€C„IØ�<‰<˜C ˜:Ò%Ð%Ñ%r   c                  óÖ   — t        j                  ddgddg¬«      } t        j                  ddgddg¬«      }| j                  |«      }|| usJ ‚ddg| _        |j                  ddgk(  sJ ‚y ro  )r
   rK  r(   r[   rs  s      r   Ú%test_multiindex_union_mutation_safetyrx  !  su   € ä
×
 Ñ
  (¨HÐ!5¸cÀ3¸ZÔ
H€CÜ
×
 Ñ
  (¨HÐ!5¸cÀ3¸ZÔ
H€Cà�Y‰Y�s‹^€FØ˜ÑÐÐà˜ZÐ(€C„IØ�<‰<˜C ˜:Ò%Ð%Ñ%r   )BÚ__doc__r   rB  ÚnumpyrF   r;   Úpandas._libsr   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsra  Úpandas.core.dtypes.castr   Úpandasr   r   r   r	   r
   r   r   r   r   Úpandas._testingÚ_testingrH   Úpandas.api.typesr   r   Úboolr   ÚfixtureÚALL_REAL_NUMPY_DTYPESr    r%   r-   rR   r<   rÊ   ÚarangerW   rX   rG   rV   rh   rn   rp   rË   rÐ   rÕ   rÙ   rÝ   rá   rã   rç   rè   r  r  r
  r  rh  rk  rm  rv  rx  r#   r   r   ú<module>rˆ     sö  ðñõ
 Û ã Û å ß )Ð )å 4÷
÷ 
õ 
õ ÷ð. $ó .ð €‡�ðØ	×	!Ñ	!ðàðð 	ðð 	ð	ð
 	ðôñóðð ‡�ñó ðò0òG*ðT ‡�×ÑØá	ˆyˆr�y‰y˜‹| 2§8¡8Ô	,©j¸«mÐ<Ù	ˆyˆr�y‰y˜‹| 2§:¡:Ô	.±°i°b·i±iÀ³lÈ"Ï(É(Ô0SÐTÙ	ˆyˆr�y‰y˜‹| 2§:¡:Ô	.±
¸1³Ð>Ù	ˆyˆr�y‰y˜‹| 2§:¡:Ô	.±°i°b·i±iÀ³lÈ"Ï)É)Ô0TÐUð	óñ2óð2ð ‡�×ÑØòóð( ‡�×Ñ˜Ð#8Ð:NÐ"OÓPñ#ó Qó)ð*#ð ‡�×Ñ˜¢L°1°a°&Ð#9Ó:ñ,ó ;ð,÷z7ñ z7ðz	 ‡�×ÑÐUÓVØ‡�×ÑÐRÓSØ‡�×ÑØÒMóñ9óó Tó Wð
9ò8
6ò,ò",ò ,ò,ð ‡�×Ñ˜  B§F¡F Ó,ñ,ó -ð,ò",òJ,ò$,÷Y-ñ Y-òx$ò&$ò&$ò$	&ó	&r   