+
    X°³jÝº  ã                   ó–   € R t ^ RIt^ RIt^ RIHtHtHtHtHtH	t	H
t
 ^ RIHt ^ RIHt ^ RIHtHtHtHt  ! R R4      t ! R R	4      tR# )
z-Test functions for 1D array set operations.

N)Úediff1dÚintersect1dÚisinÚ	setdiff1dÚsetxor1dÚunion1dÚunique)ÚStringDType)Ú	AxisError)Úassert_array_equalÚassert_equalÚassert_raisesÚassert_raises_regexc                   ó&	  a € ] tR t^t o R tR tR tR tR tR t	]
P                  P                  R]P                  ! . R*O]P                  R7      R	]P                   R
3]P                  ! . R*O]P                  R7      ]P                  ! . R+O]P"                  R7      R	R3]P                  ! . R,O]P$                  R7      ]P                   ]P                   R3.4      R 4       t]
P                  P                  R]P                  ! . R*O]P(                  R7      R-R.]P                  ! . R/O]P(                  R7      3]P                  ! . R*O]P"                  R7      ]P                  ! ^.]P*                  R7      R	]P                  ! . R0O]P"                  R7      3]P                  ! . R*O]P,                  R7      ^ ^ ]P                  ! . R1O]P,                  R7      3]P                  ! . R*O]P                  R7      ^R2]P                  ! . R3O]P                  R7      3.4      R 4       t]
P                  P                  R. R4O4      R 4       t]
P                  P                  R. R4O4      R 4       tR t]
P                  P                  R. R4O4      R 4       tR t]
P                  P                  R. R4O4      R 4       t]
P                  P                  RR	R.4      R 4       tR t]
P                  P                  R]P$                  ]P(                  3]P(                  ]P$                  3]P@                  ]PB                  3]PB                  ]P@                  3]P@                  ]P(                  3]P(                  ]P@                  3]PD                  ]P                  3.4      ]
P                  P                  R. R4O4      R 4       4       t#]
P                  P                  R]P                  ! R5R6.]PD                  R7      ]P                  ! R7R8.]P                  R7      .4      ]
P                  P                  R. R4O4      R 4       4       t$]
P                  P                  R. R4O4      R 4       t%R t&R t'R  t(R! t)R" t*R# t+R$ t,R% t-R& t.R' t/R( t0R)t1V t2R	# )9Ú
TestSetOpsc                ó®  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        WRR7      p\        WC4       \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        W4      p\        WE4       \        . \        . . 4      4       R# )	é   T©Úassume_uniqueN©r   é   é   é   ©r   é   é   r   r   )r   r   r   )r   r   r   r   r   )r   r   r   r   r   r   r   )ÚnpÚarrayr   r   )ÚselfÚaÚbÚecÚcÚeds   &     Úa/home/luca/screen-checking/.venv/lib/python3.14/site-packages/numpy/lib/tests/test_arraysetops.pyÚtest_intersect1dÚTestSetOps.test_intersect1d   s�   € ä�HŠH’\Ó"ˆÜ�HŠH’_Ó%ˆä�XŠX’iÓ ˆÜ˜¨DÔ1ˆÜ˜1Ô!ô �HŠH’_Ó%ˆÜ�HŠHÒ*Ó+ˆä�XŠX’iÓ ˆÜ˜ÓˆÜ˜1Ô!Ü˜2œ{¨2¨rÓ2Ö3ó    c                ó�   €  ! R  R4      pV! 4       p\        W"4      p\        W24       \        . RO. RO4      p\        V. RO4       R# )c                   ó*   a € ] tR t^(t o RR ltRtV tR# )Ú4TestSetOps.test_intersect1d_array_like.<locals>.TestNc                ó.   € \         P                  ! ^4      # )r   )r   Úarange)r   ÚdtypeÚcopys   &&&r$   Ú	__array__Ú>TestSetOps.test_intersect1d_array_like.<locals>.Test.__array__)   s   € Ü—y’y “|Ð#r'   © )NN)Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__r/   Ú__static_attributes__Ú__classdictcell__©Ú__classdict__s   @r$   ÚTestr*   (   s   ø‡ € ÷$ò $r'   r:   N©r   r   r   )r   r   )r   r:   r   Úress   &   r$   Útest_intersect1d_array_likeÚ&TestSetOps.test_intersect1d_array_like&   s=   € ÷	$ñ 	$ñ ‹FˆÜ˜!ÓˆÜ˜3Ô"Üš)¢YÓ/ˆÜ˜3¢	Ö*r'   c                ó6  € \         P                  ! . RO4      p\         P                  ! . RO4      p\        WRRR7      w  r4p\         P                  ! . RO4      p\        W64       \        W,          V4       \        W%,          V4       \         P                  ! . RO4      p\         P                  ! . R	O4      p\        WRR7      w  r4p\         P                  ! . RO4      p\        W74       \        W,          V4       \        W%,          V4       \         P                  ! . R
O. RO.4      p\         P                  ! . RO. RO.4      p\        WRRR7      w  r4p\         P                  ! WAP
                  4      p\         P                  ! WRP
                  4      p	\         P                  ! . RO4      p
\        W¡V,          4       \        W¢V	,          4       \         P                  ! . RO. RO.4      p\         P                  ! . RO. RO.4      p\        WRR7      w  r4p\         P                  ! WAP
                  4      p\         P                  ! WRP
                  4      p	\         P                  ! . RO4      p
\        W¡V,          4       \        W¢V	,          4       R# )r   T)r   Úreturn_indices)r@   N©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   rB   )r   rC   r   é   )r   r   r   rB   )é
   é   rC   é	   )r   rB   r   rC   )r   r   r   rB   rB   )r   r   rC   r   r   )r   r   r   r   )rE   rF   rC   r   )r   r   rC   )r   r   r   r   Úunravel_indexÚshape)r   r   r    r"   Úi1Úi2ÚeeÚefÚui1Úui2Úeas   &          r$   Útest_intersect1d_indicesÚ#TestSetOps.test_intersect1d_indices2   sÊ  € ä�HŠH’\Ó"ˆÜ�HŠH’\Ó"ˆÜ °DÈÔN‰	ˆˆrÜ�XŠX’iÓ ˆÜ˜1Ô!Ü˜1�5 "Ô%Ü˜1�5 "Ô%ô �HŠHÒ*Ó+ˆÜ�HŠHÒ-Ó.ˆÜ °TÔ:‰	ˆˆrÜ�XŠX’lÓ#ˆÜ˜1Ô!Ü˜1�5 "Ô%Ü˜1�5 "Ô%ô �HŠH’l¢MÐ2Ó3ˆÜ�HŠH’l¢NÐ3Ó4ˆÜ °DÈÔN‰	ˆˆrÜ×Ò˜r§7¡7Ó+ˆÜ×Ò˜r§7¡7Ó+ˆÜ�XŠX’lÓ#ˆÜ˜2 �vÔ&Ü˜2 �vÔ&ô �HŠH’o¢Ð7Ó8ˆÜ�HŠH’l¢NÐ3Ó4ˆÜ °TÔ:‰	ˆˆrÜ×Ò˜r§7¡7Ó+ˆÜ×Ò˜r§7¡7Ó+ˆÜ�XŠX’iÓ ˆÜ˜2 �vÔ&Ü˜2 �vÖ&r'   c                óf  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        W4      p\        WC4       \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        W4      p\        WC4       \         P                  ! . RO4      p\         P                  ! . R	O4      p\         P                  ! . RO4      p\        W4      p\        WC4       \        . \        . . 4      4       R# )
r   Nr   r   )r   r   r   r;   )rB   r   r   ©r   r   r   r   r   rB   ©r   rC   r   r   ©rB   r   r   rC   ©r   r   r   r   ©r   r   r    r!   r"   s   &    r$   Útest_setxor1dÚTestSetOps.test_setxor1dY   sÆ   € Ü�HŠH’\Ó"ˆÜ�HŠH’_Ó%ˆä�XŠX’iÓ ˆÜ�Q‹NˆÜ˜1Ô!ä�HŠH’YÓˆÜ�HŠH’YÓˆä�XŠXÒ(Ó)ˆÜ�Q‹NˆÜ˜1Ô!ä�HŠH’\Ó"ˆÜ�HŠH’\Ó"ˆä�XŠXÒ(Ó)ˆÜ�Q‹NˆÜ˜1Ô!ä˜2œx¨¨BÓ/Ö0r'   c                óš  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        WRR7      p\        WC4       \         P                  ! ^.^.^.^..4      p\         P                  ! ^^.^^..4      p\         P                  ! . RO4      p\        WRR7      p\        WC4       R# )r   Tr   NrU   rV   rT   rW   rX   s   &    r$   Útest_setxor1d_uniqueÚTestSetOps.test_setxor1d_uniqueq   sž   € Ü�HŠH’\Ó"ˆÜ�HŠH’\Ó"ˆä�XŠXÒ(Ó)ˆÜ�Q¨Ô.ˆÜ˜1Ô!ä�HŠH�q�c˜A˜3   a SÐ)Ó*ˆÜ�HŠH�q˜!�f˜q !˜fÐ%Ó&ˆä�XŠXÒ(Ó)ˆÜ�Q¨Ô.ˆÜ˜1Ö!r'   c           	     óä  € \         P                  ! . 4      p\         P                  ! ^.4      p\         P                  ! ^^.4      p\        . \        V4      4       \        ^ .\        V^ R7      4       \        ^ .\        V^ R7      4       \        R^ .\        VR^ R7      4       \        . \        V4      4       \        ^.\        V4      4       \        . RO\        V^^	R7      4       \        . RO\        V^^.^^.R7      4       \        ^^	.\        V^	R7      4       \        . RO\        V^^.R7      4       \        ^^.\        V^R7      4       \        . R	O\        V^^.R7      4       R# )
r   )Úto_begin)Úto_end)r_   r`   Néÿÿÿÿ)r   r   rG   )r   rB   r   r   rC   )r   r   rC   )r   rB   r   )r   r   r   r   )r   Ú	zero_elemÚone_elemÚtwo_elems   &   r$   Útest_ediff1dÚTestSetOps.test_ediff1d€   s"  € Ü—H’H˜R“Lˆ	Ü—8’8˜Q˜C“=ˆÜ—8’8˜Q ˜FÓ#ˆä˜2œw yÓ1Ô2Ü˜A˜3¤¨	¸AÔ >Ô?Ü˜A˜3¤¨	¸!Ô <Ô=Ü˜B ˜7¤G¨IÀÈ1Ô$MÔNÜ˜2œw xÓ0Ô1Ü˜A˜3¤¨Ó 1Ô2Üš9¤g¨hÀÈ1Ô&MÔNÜš?Ü" 8°q¸!°fÀaÈÀVÔLô	Nä˜A˜q˜6¤7¨8¸AÔ#>Ô?Üš9¤g¨hÀÀ1¸vÔ&FÔGÜ˜A˜q˜6¤7¨8¸aÔ#@ÔAÜš9¤g¨hÀ!ÀQÀÔ&HÖIr'   zary, prepend, append, expected©r-   Nr`   r_   c                ó˜   € R V R2p\        \        V4      ;_uu_ 4        \        VVVR7       RRR4       R#   + '       g   i     R# ; i)z
dtype of `z` must be compatible©Úaryr`   r_   N)r   Ú	TypeErrorr   )r   rj   ÚprependÚappendÚexpectedÚmsgs   &&&&& r$   Ú!test_ediff1d_forbidden_type_castsÚ,TestSetOps.test_ediff1d_forbidden_type_casts“   s?   € ð: ˜8˜*Ð$8Ð9ˆÜ ¤¨C×0Õ0Ü˜Ø!Ø$õ&÷ 1×0×0Ò0ús	   Ÿ8¸A		zary,prepend,append,expectedc                óˆ   € \         P                  ! VVVR 7      p\        WT4       VP                  VP                  8X  g   Q hR# )ri   N)r   r   r   r-   )r   rj   rl   rm   rn   Úactuals   &&&&& r$   Útest_ediff1d_scalar_handlingÚ'TestSetOps.test_ediff1d_scalar_handling¶   s:   € ô: —’ Ø#)Ø%,ô.ˆô 	�VÔ&Ø�|‰|˜xŸ~™~Ô-Ð-Ò-r'   ÚkindÚsortc                ó¦  aa€ R  p\         P                  ! V\        .^0R7      oVV3R lp\         P                  ! ^4      P	                  . RO4      p\         P
                  ! . RO. RO. R	O.4      pV! WE4       R
R.pRpV! Wg4       \         P
                  ! ^4      pV! W…4       V! WH4       V! Wˆ4       V! ^V4       V! V^4       V! ^^4       SR8w  d   . p	V! W•4       V! WI4       V! W™4       \        \         P                  \         P                  3 F¶  p
SR8X  d   V
\         P                  8X  d   K!  V
\         P                  \         P                  09   d   \         P
                  ! . ROV
R7      pM$V
\        09   d   \         P
                  ! . RO4      p\         P
                  ! . V
R7      pV! VX4       V! W¼4       V! WÌ4       K¸  	  R# )c                 ón   € \         P                  ! V4      P                  4       P                  4       pW9   # ©N)r   ÚasarrayÚflattenÚtolist)r   r    s   &&r$   Ú
_isin_slowÚ(TestSetOps.test_isin.<locals>._isin_slowÛ   s(   € Ü—
’
˜1“×%Ñ%Ó'×.Ñ.Ó0ˆAØ‘6ˆMr'   )ÚotypesÚexcludedc                 óH   <€ \        WSR 7      pS! W4      p\        W#4       R# )©rv   N)r   r   )r   r    ÚxÚyÚ	isin_slowrv   s   &&  €€r$   Úassert_isin_equalÚ/TestSetOps.test_isin.<locals>.assert_isin_equalà   s    ø€ Ü�Q Ô%ˆAÙ˜!“ˆAÜ˜qÖ$r'   Útablerg   N©r   r   r   )rE   é   é   )é    r   r   )é   é   é!   )rG   rC   )r   rB   )rG   r   ©TFF)r   Ú	vectorizeÚboolr,   Úreshaper   Úint64Úfloat64)r   rv   r~   r‡   r   r    r"   ÚdÚfr„   r-   ÚarÚempty_arrayr†   s   &f           @r$   Ú	test_isinÚTestSetOps.test_isinÙ   s{  ù€ ò	ô —L’L ´T°FÀaÀSÔIˆ	ö	%ô �IŠI�b‹M×!Ñ!¢)Ó,ˆÜ�HŠH’l¢Iª|Ð<Ó=ˆÙ˜!Ôð �VÐˆØˆÙ˜!Ôô �HŠH�Q‹KˆÙ˜!ÔÙ˜!ÔÙ˜!Ôñ 	˜!˜QÔÙ˜!˜QÔÙ˜!˜QÔð �7Œ?ð ˆAÙ˜aÔ#Ù˜aÔ#Ù˜aÔ#ô œBŸH™H¤b§j¡jÓ1ˆEØ�wŒ 5¬B¯J©JÔ#6ÙàœŸ™¤2§:¡:Ð.Ô.Ü—X’Xšl°%Ô8‘Øœ4˜&”Ü—X’XÒ2Ó3�äŸ(š( 2¨UÔ3ˆKá˜k¨2Ô.Ù˜bÔ.Ù˜kÖ7ó 2r'   c                óÀ  € R EFX  p. ROp. ROV,          p\         P                  ! . R	O4      p\        W4RVR7      p\        We4       ^V^ &   \         P                  ! . R
O4      p\        W4RVR7      p\        We4       ^^uV^ &   V^&   \         P                  ! . RO4      p\        W4RVR7      p\        We4       \         P                  ! . RO4      p. ROV,          p. ROp\        W4VR7      p\        We4       V. ROV,          ,           p. ROp\        W4VR7      p\        We4       \         P                  ! . RO4      p\         P                  ! . ROV,          4      p\         P                  ! . R	O4      p\        W4VR7      p\        We4       \         P                  ! . RO4      p\         P                  ! . ROV,          4      p\         P                  ! . RO4      p\        W4VR7      p\        We4       \         P                  ! ^^.4      p\         P                  ! ^^.V,          4      p\         P                  ! RR.4      p\        W4VR7      p\        We4       EK[  	  \         P                  ! ^.4      p\         P                  ! ^.4      p\         P                  ! R.4      p\        W4VR7      p\        We4       VR9   d   \        \        . . VR7      . 4       R# R# )r   TF)r   rv   rƒ   N©r   rE   r   r   ©TFTT)FFTT)TFTF©r   r   r   r   r   r   r   r   r   r   r   r   r   r   rŠ   )FTFTTTTTTFTFFF)r   r   r   )TTTTTTTTTTTFTT)r   r   r   r   r   )r   r   r   r   r   r   )TFTTT>   Nrw   ©r   r   r   r   )r   rv   Úmultr   r    r!   r"   s   &&     r$   Útest_isin_additionalÚTestSetOps.test_isin_additional  sC  € ô ˆDâˆAÚ $Õ&ˆAÜ—’Ò3Ó4ˆBÜ�Q¨°DÔ9ˆAÜ˜qÔ%àˆAˆa‰DÜ—’Ò4Ó5ˆBÜ�Q¨°DÔ9ˆAÜ˜qÔ%à˜AˆJˆAˆa‰D�!�A‘$Ü—’Ò4Ó5ˆBÜ�Q¨°DÔ9ˆAÜ˜qÔ%ä—’ÒCÓDˆAÚ˜DÕ ˆAò4ˆBä�Q Ô%ˆAÜ˜qÔ%à’I Õ$Õ$ˆAò+ˆBä�Q Ô%ˆAÜ˜qÔ%ä—’šÓ&ˆAÜ—’š¨4Õ/Ó0ˆAÜ—’Ò3Ó4ˆBÜ�Q Ô%ˆAÜ˜qÔ%ä—’šÓ)ˆAÜ—’Ò+¨dÕ2Ó3ˆAÜ—’Ò9Ó:ˆBÜ�Q Ô%ˆAÜ˜qÔ%ä—’˜!˜Q˜Ó ˆAÜ—’˜!˜Q˜ $�Ó'ˆAÜ—’˜5 %˜.Ó)ˆBÜ�Q Ô%ˆAÜ˜q×%ñ_ ôb �HŠH�a�S‹MˆÜ�HŠH�a�S‹MˆÜ�XŠX�u�gÓˆÜ�˜DÔ!ˆÜ˜1Ô!à�>Ô!Üœt B¨°Ô6¸Ö;ñ "r'   c                óÂ   € \         P                  ! . RO4      p\         P                  ! R R.4      p\         P                  ! . RO4      p\        W4      p\        WC4       R# )r   r"   N)r   r    r"   r—   Úer"   r¦   r    )TFTFFTFFr¡   rX   s   &    r$   Útest_isin_char_arrayÚTestSetOps.test_isin_char_arrayQ  sC   € Ü�HŠHÒ=Ó>ˆÜ�HŠH�c˜3�ZÓ ˆä�XŠXÒKÓLˆÜ�‹Jˆä˜1Ö!r'   c                ó  € R F]  p\         P                  ! . RO4      p. ROV,          p\        \         P                  ! \	        W4VR7      4      \	        W4RVR7      4       K_  	  VR	9   dœ   R F“  p\         P                  ! . RO\         P
                  R7      p. ROV,          p\         P                  ! V\         P
                  R7      p\        \         P                  ! \	        W4VR7      4      \	        W4RVR7      4       K•  	  R# R# )
zTest isin's invert parameterrƒ   T©Úinvertrv   Nrg   rž   r    rŠ   >   Nrw   )r   r   r   r«   r   Úfloat32)r   rv   r¢   r   r    s   &&   r$   Útest_isin_invertÚTestSetOps.test_isin_invertZ  sÄ   € ó
 ˆDÜ—’ÒCÓDˆAÚ˜DÕ ˆAÜœrŸyšy¬¨a¸Ô)>Ó?Ü# A°¸DÔAöCñ ð �>Ô!Û�Ü—H’HÒGÜ"$§*¡*ô.�â Õ$�Ü—H’H˜Q¤b§j¡jÔ1�Ü"¤2§9¢9¬T°!¸TÔ-BÓ#CÜ#'¨°TÀÔ#EöGó  ñ "r'   c           	     ób  € \         P                  ! . RO\         P                  R7      p\         P                  ! . RO\         P                  R7      p\         P                  ! . RO\        R7      p\	        V\        W4      4       \	        \         P                  ! V4      \        WRR7      4       \         P                  ! . R	O\         P                  R7      p\         P                  ! . R
O\         P                  R7      p\         P                  ! . RO4      p\        WRR7      p\	        WT4       R# )z(Hit the standard isin code with integersrg   T©r«   r   N)r   r   r   r   r   r   ç    eÍÍA)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    rn   r!   r"   s   &     r$   Ú!test_isin_hit_alternate_algorithmÚ,TestSetOps.test_isin_hit_alternate_algorithmo  s²   € ô �HŠHÒ,´B·H±HÔ=ˆÜ�HŠH’^¬2¯8©8Ô4ˆÜ—8’8Ò1¼Ô>ˆÜ˜8¤T¨!£ZÔ0Üœ2Ÿ9š9 XÓ.´°QÀ$Ô0GÔHä�HŠH’\¬¯©Ô2ˆÜ�HŠHÒ)´·±Ô:ˆÜ�XŠXÒ/Ó0ˆÜ� TÔ*ˆÜ˜1Ö!r'   c           
     ó  € \         P                  ! RR.4      p\         P                  ! . RO4      p\         P                  ! RR.4      p\        V\        W#VR7      4       \        \         P                  ! V4      \        W#RVR7      4       R# )z&Test that isin works for boolean inputTFrƒ   rª   N)FFF)r   r   r   r   r«   )r   rv   r   r    rn   s   &&   r$   Útest_isin_booleanÚTestSetOps.test_isin_boolean  sj   € ô �HŠH�d˜E�]Ó#ˆÜ�HŠHÒ*Ó+ˆÜ—8’8˜U D˜MÓ*ˆÜ˜8Ü ¨4Ô0ô	2äœ2Ÿ9š9 XÓ.Ü ¨T¸Ô=ö	?r'   c           	     ó  € \         P                  P                  ^ 4      pVP                  ^ ^d^
R7      pVP                  ^ ^d^
R7      p\	        W44      pVP                  R4      pVP                  R4      p\        V\	        WgVR7      4       R# )z(Test that isin works for timedelta input)Úsizeútimedelta64[s]rƒ   N)r   ÚrandomÚRandomStateÚrandintr   Úastyper   )r   rv   Úrstater   r    ÚtruthÚa_timedeltaÚb_timedeltas   &&      r$   Útest_isin_timedeltaÚTestSetOps.test_isin_timedeltaŠ  sx   € ô —‘×&Ñ& qÓ)ˆØ�N‰N˜1˜c¨ˆNÓ+ˆØ�N‰N˜1˜c¨ˆNÓ+ˆÜ�Q“
ˆØ—h‘hÐ/Ó0ˆØ—h‘hÐ/Ó0ˆÜ˜5¤$ {ÀdÔ"KÖLr'   c                óÖ   € \         P                  ! . RORR7      pTp\        P                  ! \        4      ;_uu_ 4        \        WRR7       RRR4       R#   + '       g   i     R# ; i)r�   r¹   rg   r‰   rƒ   N©r�   r   r   )r   r   ÚpytestÚraisesÚ
ValueErrorr   ©r   r   r    s   &  r$   Útest_isin_table_timedelta_failsÚ*TestSetOps.test_isin_table_timedelta_fails•  s@   € Ü�HŠH’YÐ&6Ô7ˆØˆä�]Š]œ:×&Õ&Ü�˜GÕ$÷ '×&×&Ò&ús   ¿AÁA(	zdtype1,dtype2c                ó‚  € \         P                  ! V\         P                  4      p\         P                  ! . ROVR7      pV'       d   \         P                  ! . ROVR7      pM\         P                  ! . R	OVR7      p\         P                  ! . R
O4      pVR8H  ;'       d/    V\         P                  8H  ;'       d    V\         P
                  8H  pV'       d=   \        P                  ! \        RR7      ;_uu_ 4        \        WVVR7       RRR4       R# \        \        WVVR7      V4       R#   + '       g   i     R# ; i)z7Test that isin works as expected for mixed dtype input.rg   r‰   zexceed the maximum©Úmatchrƒ   N)r�   r�   r   r   )i€ÿÿÿr�   é   )rÏ   r�   éÿ   )TTFF)r   Ú
issubdtypeÚsignedintegerr   Úint16Úint8rÆ   rÇ   ÚRuntimeErrorr   r   )	r   Údtype1Údtype2rv   Úis_dtype2_signedÚar1Úar2rn   Úexpect_failures	   &&&&     r$   Útest_isin_mixed_dtypeÚ TestSetOps.test_isin_mixed_dtypeœ  sÚ   € ô Ÿ=š=¨´×1AÑ1AÓBÐÜ�hŠh’|¨6Ô2ˆçÜ—(’(š>°Ô8‰Cä—(’(š=°Ô7ˆCä—8’8Ò6Ó7ˆà ™÷ 6ð 6Ø”b—h‘hÑ×4Ð4 6¬R¯W©WÑ#4ð 	÷ Ü—’œ|Ð3G×HÖHÜ�S DÕ)÷ IÑHô œt C°4Ô8¸(ÖC÷ I×HÐHús   Ã<D-Ä-D>	Údatac                óî   € V^,          p\         P                  ! W#VR7      p\        VRR.4       VP                  \         P                  4      p\         P                  ! W#VR7      p\        VRR.4       R# )z>Test values outside intp range (negative ones if 32bit system)rƒ   FTN)r   r   r   r½   Úint32)r   rv   rÞ   Úqueryr<   s   &&&  r$   Útest_isin_mixed_huge_valsÚ$TestSetOps.test_isin_mixed_huge_vals¾  s]   € ð �Q•ˆÜ�gŠg�d¨Ô-ˆÜ˜3 ¨ Ô.ð �{‰{œ2Ÿ8™8Ó$ˆÜ�gŠg�d¨Ô-ˆÜ˜3 ¨ Ö/r'   c           	     óŠ  € \         P                  R,           F§  p\         P                  ! . RO\        R7      p\         P                  ! . ROVR7      p\         P                  ! . RO\        R7      p\	        \        W4VR7      V4       YCrC\         P                  ! . RO\        R7      p\	        \        W4VR7      V4       K©  	  R# )	z4Test that isin works as expected for bool/int input.Ú
AllIntegerrg   rƒ   Nr‘   ©r�   r�   r�   r�   )FTT)TTTT)r   Ú	typecodesr   r“   r   r   )r   rv   r-   r   r    rn   s   &&    r$   Útest_isin_mixed_booleanÚ"TestSetOps.test_isin_mixed_booleanÎ  s„   € ô —\‘\ ,×/Ð/ˆEÜ—’Ò-´TÔ:ˆAÜ—’š¨UÔ3ˆAÜ—x’xÒ 3¼4Ô@ˆHÜœt A¨tÔ4°hÔ?àˆqÜ—x’xÒ 8ÄÔEˆHÜœt A¨tÔ4°hÖ?ó 0r'   c                ó¸   € R .p\         P                  ! ^.^
,          4      p\         P                  ! R.4      p\         P                  ! W4      p\        WC4       R # )NFr¡   ©r   rÙ   rÚ   rn   Úresults   &    r$   Útest_isin_first_array_is_objectÚ*TestSetOps.test_isin_first_array_is_objectÛ  sC   € ØˆfˆÜ�hŠh˜�s˜R•xÓ ˆÜ—8’8˜U˜GÓ$ˆÜ—’˜Ó"ˆÜ˜6Ö,r'   c                ó¶   € ^p\         P                  ! R.^
,          4      p\         P                  ! R.4      p\         P                  ! W4      p\        WC4       R# )r   NFr¡   rë   s   &    r$   Ú test_isin_second_array_is_objectÚ+TestSetOps.test_isin_second_array_is_objectâ  sA   € ØˆÜ�hŠh˜�v •{Ó#ˆÜ—8’8˜U˜GÓ$ˆÜ—’˜Ó"ˆÜ˜6Ö,r'   c                ó¸   € R .p\         P                  ! R .^
,          4      p\         P                  ! R.4      p\         P                  ! W4      p\        WC4       R # )NTr¡   rë   s   &    r$   Ú test_isin_both_arrays_are_objectÚ+TestSetOps.test_isin_both_arrays_are_objecté  sC   € ØˆfˆÜ�hŠh˜�v •{Ó#ˆÜ—8’8˜T˜FÓ#ˆÜ—’˜Ó"ˆÜ˜6Ö,r'   c                ó0  € \         P                  ! R \        3R\        3.4      p\         P                  ! R.VR7      p\         P                  ! R.^
,          VR7      p\         P                  ! R.4      p\         P
                  ! W#4      p\        WT4       R# )Úfield1Úfield2Nrg   T)r   N)r   r-   ÚintÚobjectr   r   r   )r   ÚdtrÙ   rÚ   rn   rì   s   &     r$   Ú+test_isin_both_arrays_have_structured_dtypeÚ6TestSetOps.test_isin_both_arrays_have_structured_dtypeð  so   € ô �XŠX˜¤#�¨´6Ð(:Ð;Ó<ˆÜ�hŠh˜	�{¨"Ô-ˆÜ�hŠh˜	�{ RÕ'¨rÔ2ˆÜ—8’8˜T˜FÓ#ˆÜ—’˜Ó"ˆÜ˜6Ö,r'   c                ó2  € \         P                  ! R^.\        R7      p\         P                  ! R^.\        R7      p\         P                  ! RR.4      p\         P                  ! W4      p\	        WC4       \         P                  ! WRR7      p\	        V\         P
                  ! V4      4       \         P                  ! . RO\        R7      pVRR p\         P                  ! . RO\        R7      pVRR p\         P                  ! RR.4      p\         P                  ! W4      p\	        WC4       \         P                  ! WRR7      p\	        V\         P
                  ! V4      4       \         P                  ! . R	O\        R7      pVRR p\         P                  ! R^.\        R7      p\         P                  ! RR.4      p\         P                  ! W4      p\	        WC4       \         P                  ! WRR7      p\	        V\         P
                  ! V4      4       R# )
r   rg   Tr°   NF©r   )rþ   )r   r   r   ra   )rþ   ©r   r   r   )r   r   rù   r   r   r«   rë   s   &    r$   Ú'test_isin_with_arrays_containing_tuplesÚ2TestSetOps.test_isin_with_arrays_containing_tuplesú  su  € Ü�hŠh˜˜a�y¬Ô/ˆÜ�hŠh˜˜a�y¬Ô/ˆÜ—8’8˜T 4˜LÓ)ˆÜ—’˜Ó"ˆÜ˜6Ô,Ü—’˜¨$Ô/ˆÜ˜6¤2§9¢9¨XÓ#6Ô7ô �hŠhÒ(´Ô7ˆØ�#�2ˆhˆÜ�hŠhÒ(´Ô7ˆØ�#�2ˆhˆÜ—8’8˜T 4˜LÓ)ˆÜ—’˜Ó"ˆÜ˜6Ô,Ü—’˜¨$Ô/ˆÜ˜6¤2§9¢9¨XÓ#6Ô7ä�hŠhÒ(´Ô7ˆØ�#�2ˆhˆÜ�hŠh˜˜a�y¬Ô/ˆÜ—8’8˜T 5˜MÓ*ˆÜ—’˜Ó"ˆÜ˜6Ô,Ü—’˜¨$Ô/ˆÜ˜6¤2§9¢9¨XÓ#6Ö7r'   c           	     ó*  € \         P                  ! . R	O4      p\         P                  ! . R
O4      p\        \        \        WRR7       \         P                  ! . RO\
        R7      p\         P                  ! . RO\
        R7      p\        \        \        W4RR7       \         P                  \         P                  3 FÔ  p\         P                  ! . ROVR7      p\         P                  ! R\         P                  ! V4      P                  .VR7      p\        \        \        WRR7       \         P                  ! WRR7      p\        VR.R.^,          ,           4       \         P                  ! WRR7      p\        VR.R.^,          ,           4       KÖ  	  R# )z&Test that isin raises expected errors.Ú	quicksortrƒ   rg   r‰   NTFrw   )r   r   r   r   r   )r   r   rB   rC   rE   )r   r   r   r    r   ra   )ra   r   r   r   r   )r   r   r   rÈ   r   rù   rà   r•   ÚiinfoÚmaxrÕ   r   )r   rÙ   rÚ   Úobj_ar1Úobj_ar2r-   Úoverflow_ar2rì   s   &       r$   Útest_isin_errorsÚTestSetOps.test_isin_errors  s  € ô �hŠh’Ó'ˆÜ�hŠhÒ'Ó(ˆÜ”j¤$¨°{ÕCô —(’(Ò.´fÔ=ˆÜ—(’(Ò.´fÔ=ˆÜ”j¤$¨¸wÕGä—h‘h¤§¡Ó)ˆEÜ—(’(Ò+°5Ô9ˆCäŸ8š8 R¬¯ª°%«×)<Ñ)<Ð$=ÀUÔKˆLô
 ÜÜ�c¨gõô —W’W˜S°TÔ:ˆFÜ˜v¨ v°°¸!µÕ';Ô<Ü—W’W˜S°VÔ<ˆFÜ˜v¨ v°°¸!µÕ';Ö<ó' *r'   c                ó²  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        W4      p\        WC4       \         P                  ! . RO. RO.4      p\         P                  ! . RO4      p\         P                  ! . RO4      p\        WV4      p\        W‡4       \        . \        . . 4      4       R# )	r   N)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   r   r   r   r   )r   r   r   r   )	r   r   r    r!   r"   r„   r…   ÚezÚzs	   &        r$   Útest_union1dÚTestSetOps.test_union1d=  s’   € Ü�HŠH’_Ó%ˆÜ�HŠHÒ*Ó+ˆä�XŠXÒ(Ó)ˆÜ�A‹MˆÜ˜1Ô!ô �HŠH’i¢Ð+Ó,ˆÜ�HŠH’_Ó%ˆÜ�XŠXÒ(Ó)ˆÜ�A‹MˆÜ˜1Ô!ä˜2œw r¨2›Ö/r'   c                óH  € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! ^^.4      p\        W4      p\        WC4       \         P                  ! ^4      p\         P                  ! ^4      p\         P                  ! ^^.4      p\        W4      p\        WC4       \        . \        . . 4      4       \         P                  ! R\         P
                  4      p\        \        V. 4      P                  \         P
                  4       R# )rB   N)rB   r   r   r   r   r   r   r   r  r1   )r   r   r   r   r,   Úuint32r   r-   rX   s   &    r$   Útest_setdiff1dÚTestSetOps.test_setdiff1dO  sÀ   € Ü�HŠHÒ-Ó.ˆÜ�HŠHÒ*Ó+ˆä�XŠX�q˜!�fÓˆÜ�a‹OˆÜ˜1Ô!ä�IŠI�b‹MˆÜ�IŠI�b‹MˆÜ�XŠX�r˜2�hÓˆÜ�a‹OˆÜ˜1Ô!ä˜2œy¨¨RÓ0Ô1Ü�HŠH�RœŸ™Ó#ˆÜ”Y˜q "Ó%×+Ñ+¬R¯Y©YÖ7r'   c                óÆ   € \         P                  ! . RO4      p\         P                  ! . RO4      p\         P                  ! ^^.4      p\        WRR7      p\        WC4       R# )r   Tr   N)r   r   r   )r   r   r   )r   r   r   r   )r   r   r    rn   rs   s   &    r$   Útest_setdiff1d_uniqueÚ TestSetOps.test_setdiff1d_uniquea  sD   € Ü�HŠH’YÓˆÜ�HŠH’YÓˆÜ—8’8˜Q ˜FÓ#ˆÜ˜1¨tÔ4ˆÜ�VÖ&r'   c                óº   € \         P                  ! . RO4      p\         P                  ! . RO4      p\        \        W4      \         P                  ! R.4      4       R# )r   r"   N)r   r    r"   )r   r    Ús)r   r   r   r   rÉ   s   &  r$   Útest_setdiff1d_char_arrayÚ$TestSetOps.test_setdiff1d_char_arrayh  s6   € Ü�HŠH’_Ó%ˆÜ�HŠH’_Ó%ˆÜœ9 Q›?¬B¯HªH°c°U«OÖ<r'   c                óÔ   € \         P                  ! . RO4      p\         P                  ! . RO4      p\        W4      p\        W4      p\	        W4      p\        WT4      p\        W64       R# )r   N)r   r   r   r   rC   )rG   rC   r   r   r   r   r   )r   r   r   r   r   r   r   )r   r   r    Úc1Úaux1Úaux2Úc2s   &      r$   Útest_manywaysÚTestSetOps.test_manywaysm  sM   € Ü�HŠH’_Ó%ˆÜ�HŠHÒ*Ó+ˆä�a‹^ˆÜ˜1Ó ˆÜ�q‹}ˆÜ�tÓ"ˆÜ˜2Ö"r'   r1   r;   )r   r   r   )ç      ð?ç      @g      "@i   i  )r�   r   r   r   )r   r   r   )r�   r   r   r�   é÷ÿÿÿ)r   r   r   r%  )Nrw   r‰   l            l           lûÿÿÿ         lûÿÿÿ        )3r2   r3   r4   r5   r%   r=   rQ   rY   r\   re   rÆ   ÚmarkÚparametrizer   r   r•   Únanr¬   rÔ   rp   rÓ   r–   rà   rt   r›   r£   r§   r­   r²   rµ   rÂ   rÊ   Úuint8Úuint16Úuint64rÜ   râ   rè   rí   rð   ró   rû   r   r	  r  r  r  r  r!  r6   r7   r8   s   @r$   r   r      s9  ø‡ € ò4ò$
+ò%'òN1ò0"òJð& ‡[�[×ÑÐ=ð 
�Š’) 2§8¡8Ô	,Ø	Ø	�‰Ø	ð	ð 
�Š’) 2§8¡8Ô	,Ø	�Š’) 2§:¡:Ô	.Ø	Ø	ð	ð 
�Š’, b§g¡gÔ	.Ø	�‰Ø	�‰Ø	ð	ð%@ó ñ.
&ó/ð.
&ð ‡[�[×ÑØ%à
�(Š(’9 B§H¡HÔ
-Ø
Ø
Ø
�(Š(’< r§x¡xÔ
0ð
2ð �(Š(’9 B§J¡JÔ
/Ø
�(Š(�A�3˜bŸj™jÔ
)Ø
Ø
�(Š(’9 B§J¡JÔ
/ð
1ð �(Š(’9 B§H¡HÔ
-Ø
Ø
Ø
�(Š(’< r§x¡xÔ
0ð
2ð �(Š(’9 B§H¡HÔ
-Ø
Ø
Ø
�(Š(’=¨¯©Ô
1ð
3ð	
óñ*.ó+ð*.ð ‡[�[×Ñ˜VÒ%<Ó=ñ78ó >ð78ðr ‡[�[×Ñ˜VÒ%<Ó=ñ;<ó >ð;<òz"ð ‡[�[×Ñ˜VÒ%<Ó=ñGó >ðGò("ð  ‡[�[×Ñ˜VÒ%<Ó=ñ?ó >ð?ð ‡[�[×Ñ˜V d¨F ^Ó4ñMó 5ðMò%ð ‡[�[×ÑØà�W‰W�b—h‘hÐØ�X‰X�r—w‘wÐØ�X‰X�r—y‘yÐ!Ø�Y‰Y˜Ÿ™Ð!Ø�X‰X�r—x‘xÐ Ø�X‰X�r—x‘xÐ Ø�Y‰Y˜Ÿ™Ð!ð	
óð ‡[�[×Ñ˜VÒ%<Ó=ñDó >óðDð* ‡[�[×Ñ˜VØ
�Š�%˜Ð#¨2¯9©9Ô5Ø
�Š�&˜*Ð%¨R¯X©XÔ6ð&ó ð ‡[�[×Ñ˜VÒ%<Ó=ñ	0ó >ó	ð
	0ð ‡[�[×Ñ˜VÒ%<Ó=ñ
@ó >ð
@ò-ò-ò-ò-ò8òB =òD0ò$8ò$'ò=÷
#ð #r'   r   c                   óÞ  a € ] tR tRt o R tR t]P                  P                  R4      R 4       t	R t
R tR tR	 tR
 tR tR t]P                  P#                  R. R.O4      R 4       tR tR tR t]P                  P#                  R^ R/.4      R 4       t]P                  P#                  R. R0O4      R 4       tR tR tR tR tR tR tR t]P                  P#                  R. R1O. R1O.. R2O^.4      ]P                  P#                  RRR .4      ]P                  P#                  R!]P@                  ]PB                  .4      R" 4       4       4       t"R# t#R$ t$R% t%]P                  P#                  R&]PL                  ! R'4      ]PL                  ! R(4      .4      ]P                  P#                  R)]'! R*R/4      ]'! R3R/4      ^ .R4]'! R4R34      R/.R5^R6]'! R5R34      R+..4      R, 4       4       t(R-t)V t*R# )7Ú
TestUniqueix  c                ó¨  € R pVP                  RV4      p\        V4      p	\        W’V4       \        V	4      \        V4      J g   Q hVP                  RV4      p\        VRRR4      w  rš\        W’V4       \        W£V4       \        V	4      \        V4      J g   Q hVP                  RV4      p\        VRRR4      w  rš\        W’V4       \        W¤V4       \        V	4      \        V4      J g   Q hVP                  RV4      p\        VRRR4      w  rš\        W’V4       \        W¥V4       \        V	4      \        V4      J g   Q hVP                  RV4      p\        VRRR4      w  r›p\        W’V4       \        W³V4       \        WÄV4       \        V	4      \        V4      J g   Q hVP                  RV4      p\        VRRR4      w  r›p\        W’V4       \        W³V4       \        WÅV4       \        V	4      \        V4      J g   Q hVP                  R	V4      p\        VRRR4      w  r›p\        W’V4       \        W´V4       \        WÅV4       \        V	4      \        V4      J g   Q hVP                  R
V4      p\        VRRR4      w  r›rÍ\        W’V4       \        W³V4       \        WÄV4       \        WÕV4       \        V	4      \        V4      J g   Q hR# )zcheck {0} failed for type {1}ÚvaluesÚreturn_indexTFÚreturn_inverseÚreturn_countszreturn_index and return_inversezreturn_index and return_countsz return_inverse and return_countsz.return_index, return_inverse and return_countsN)Úformatr   r   Útype)r   r   r    rJ   rK   r"   rú   Úbase_msgro   ÚvÚjÚj1Új2Új3s   &&&&&&&       r$   Ú	check_allÚTestUnique.check_allz  s˜  € Ø2ˆà�o‰o˜h¨Ó+ˆÜ�1‹IˆÜ˜1 Ô%Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰o˜n¨bÓ1ˆÜ�a˜˜u eÓ,‰ˆÜ˜1 Ô%Ü˜1 #Ô&Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰oÐ.°Ó3ˆÜ�a˜  eÓ,‰ˆÜ˜1 Ô%Ü˜1 #Ô&Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰o˜o¨rÓ2ˆÜ�a˜  tÓ,‰ˆÜ˜1 Ô%Ü˜1 Ô%Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰oÐ?ÀÓDˆÜ˜1˜d D¨%Ó0‰	ˆˆrÜ˜1 Ô%Ü˜2 3Ô'Ü˜2 3Ô'Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰oÐ>ÀÓCˆÜ˜1˜d E¨4Ó0‰	ˆˆrÜ˜1 Ô%Ü˜2 3Ô'Ü˜2 #Ô&Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰oÐ@À"ÓEˆÜ˜1˜e T¨4Ó0‰	ˆˆrÜ˜1 Ô%Ü˜2 3Ô'Ü˜2 #Ô&Ü�A‹wœ$˜q›'Ó!Ð!Ð!à�o‰oð  4Ø68ó:ˆä˜q $¨¨dÓ3‰ˆˆrÜ˜1 Ô%Ü˜2 3Ô'Ü˜2 3Ô'Ü˜2 #Ô&Ü�A‹wœ$˜q›'Ó!Ð!Ò!r'   c                óæ   € . pVP                  \        P                  R ,          4       VP                  \        P                  R,          4       VP                  R4       VP                  R4       V# )rå   ÚAllFloatúdatetime64[D]útimedelta64[D])Úextendr   rç   rm   )r   Útypess   & r$   Ú	get_typesÚTestUnique.get_types²  sO   € àˆØ�‰”R—\‘\ ,Õ/Ô0Ø�‰”R—\‘\ *Õ-Ô.Ø�‰�_Ô%Ø�‰Ð%Ô&Øˆr'   z+ignore:\w+ chararray \w+:DeprecationWarningc           	     ó>  € . RO^
,          p. ROp. ROp. RO^
,          p\         P                  ! . RO^
4      pV P                  4       pV FB  p\         P                  ! W4      p\         P                  ! W'4      p	V P	                  W‰W4WW4       KD  	  Rp\         P
                  ! \        V4      V4      pWR&   \         P
                  ! \        V4      V4      p	W)R&   V P	                  W‰W4WW4       RR.p\         P                  ! \        \        W4      4      V4      p\         P                  ! \        \        W"4      4      V4      p	V P	                  W‰W4WW4       . ROp\        \         P                  ! \         P                  ! V4      4      RR.4       . ROp. ROp
^ ^.^ ^.^^..p\        V4      p\        WÊ4       \        VRR7      w  rÞ\        WÚ4       \        Wë4       \         P                  P                  ^4      pRVR&   \         P                  ! VRR7      w  rÞ\        V\         P                  ! ^4      4       . p\         P                  ! VRR7      ^,          p\         P                  ! VRR7      ^,          p\         P                  ! VRRR	7      R
,          w  pp\        VP                   \         P"                  4       \        VP                   \         P"                  4       \        VP                   \         P"                  4       \        VP                   \         P"                  4       R\         P$                  R\         P$                  .pRR\         P$                  .p. ROp. R Op. R!Op\        \         P                  ! \         P                  ! V4      4      \         P                  ! V4      4       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       R"\         P$                  R#\'        R\         P$                  4      \'        R\         P$                  4      .pR#R"\'        R\         P$                  4      .p. R$Op. R%Op. R&Op\        \         P                  ! \         P                  ! V4      4      \         P                  ! V4      4       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \         P(                  ! RR4      p\         P(                  ! R4      V\         P(                  ! R4      V.p\         P(                  ! R4      \         P(                  ! R4      V.p. ROp. R Op. R!Op\        \         P                  ! V4      V4       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \         P*                  ! RR4      p\         P*                  ! ^R4      V\         P*                  ! ^R4      V.p\         P*                  ! ^R4      \         P*                  ! ^R4      V.p. ROp. R Op. R!Op\        \         P                  ! V4      V4       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \         P$                  .^,          p\         P$                  .p^ .p. R'Op^.p\        \         P                  ! V4      V4       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       \        \         P                  ! VRR7      VV34       R# )(r   ÚOºNNNÚ r#  T©r1  .)r0  )r0  r1  :r   NNg       @)r2  ç        ÚnatÚDz
2020-12-26z
2020-12-24r  ÚhN©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   )rH  Úiù      ð?      ð¿)y      ð?        rT  r   )©r   r   rU  rÿ   r;   )r   r�   r   )r   r   r�   r   )r   r   r   y       @      ð¿y      ð?      ð?)r   r�   r   )r   r   r�   r   r   )r   r   r   ræ   )r   ÚmultiplyrC  r   r;  ÚemptyÚlenÚlistÚzipr   rw   r   ÚcharÚ	chararrayÚzerosr   r-   Úintpr(  ÚcomplexÚ
datetime64Útimedelta64)r   r   r    rJ   rK   r"   rB  rú   ÚaaÚbbÚunqÚinvÚa1Úa2Úa2_invÚa1_idxÚa3_idxÚa3_invÚuaÚua_idxÚua_invÚua_cntrK  Úall_nanss   &                       r$   Útest_unique_1dÚTestUnique.test_unique_1d»  sÙ  € ò " BÕ&ˆÚˆÚˆÚ" RÕ'ˆÜ�KŠKš bÓ)ˆð —‘Ó ˆÛˆBÜ—’˜!“ˆBÜ—’˜!“ˆBØ�N‰N˜2 2¨1Ö1ñ ð ˆÜ�XŠX”c˜!“f˜bÓ!ˆØˆ1‰Ü�XŠX”c˜!“f˜bÓ!ˆØˆ1‰Ø�‰�r˜r qÔ-ð ˜Ð#ˆÜ�XŠX”dœ3˜q›9“o rÓ*ˆÜ�XŠX”dœ3˜q›9“o rÓ*ˆØ�‰�r˜r qÔ-ò $ˆÜÜ�GŠG”B—I’I˜b“MÓ"Ø�rˆNô	
ò %ˆÚˆØ�1ˆv˜˜1�v  1˜vÐ&ˆÜ�A‹YˆÜ˜2Ô#Ü˜A¨dÔ3‰
ˆÜ˜2Ô#Ü˜6Ô'ô �G‰G×Ñ˜aÓ ˆØˆˆ#‰Ü—Y’Y˜q°Ô6‰
ˆÜ˜6¤2§8¢8¨A£;Ô/ð ˆÜ—’˜1¨4Ô0°Õ3ˆÜ—’˜1¨TÔ2°1Õ5ˆÜŸš 1°4Ø26ô8Ø8:õ<‰ˆ�ä�V—\‘\¤2§7¡7Ô+Ü�V—\‘\¤2§7¡7Ô+Ü�V—\‘\¤2§7¡7Ô+Ü�V—\‘\¤2§7¡7Ô+ð ”"—&‘&˜#œrŸv™vÐ&ˆØ�3œŸ™ÐˆÚˆÚˆÚˆä”R—W’WœRŸYšY q›\Ó*¬B¯GªG°B«KÔ8Ü”R—Y’Y˜q¨tÔ4°r¸6°lÔCÜ”R—Y’Y˜q°Ô6¸¸V¸ÔEÜ”R—Y’Y˜q°Ô5¸¸F°|ÔDð ”r—v‘v˜x¬°´b·f±fÓ)=¼wÀsÌBÏFÉFÓ?SÐTˆØ˜¤'¨#¬r¯v©vÓ"6Ð7ˆÚˆÚ ˆÚˆä”R—W’WœRŸYšY q›\Ó*¬B¯GªG°B«KÔ8Ü”R—Y’Y˜q¨tÔ4°r¸6°lÔCÜ”R—Y’Y˜q°Ô6¸¸V¸ÔEÜ”R—Y’Y˜q°Ô5¸¸F°|ÔDô �mŠm˜E 3Ó'ˆÜ�]Š]˜<Ó(¨#¬r¯}ª}¸\Ó/JÈCÐPˆÜ�mŠm˜LÓ)¬2¯=ª=¸Ó+FÈÐLˆÚˆÚˆÚˆÜ”R—Y’Y˜q“\ 2Ô&Ü”R—Y’Y˜q¨tÔ4°r¸6°lÔCÜ”R—Y’Y˜q°Ô6¸¸V¸ÔEÜ”R—Y’Y˜q°Ô5¸¸F°|ÔDô �nŠn˜U CÓ(ˆÜ�^Š^˜A˜sÓ# S¬"¯.ª.¸¸CÓ*@À#ÐFˆÜ�nŠn˜Q Ó$¤b§n¢n°Q¸Ó&<¸cÐBˆÚˆÚˆÚˆÜ”R—Y’Y˜q“\ 2Ô&Ü”R—Y’Y˜q¨tÔ4°r¸6°lÔCÜ”R—Y’Y˜q°Ô6¸¸V¸ÔEÜ”R—Y’Y˜q°Ô5¸¸F°|ÔDô —F‘F�8˜a•<ˆÜ�f‰fˆXˆØ�ˆÚˆØ�ˆÜ”R—Y’Y˜xÓ(¨"Ô-Ü”R—Y’Y˜x°dÔ;¸bÀ&¸\ÔJÜ”R—Y’Y˜x¸Ô=ÀÀF¸|ÔLÜ”R—Y’Y˜x°tÔ<¸rÀ6¸lÖKr'   c           	     óº  € V P                  4       pVP                  R 4       V F³  p\        P                  ! . V4      p\        P                  ! . V4      p\        P                  ! . \        P                  4      p\        P                  ! . \        P                  4      p\        P                  ! . \        P                  4      pV P                  W4WVWr4       Kµ  	  R# )ÚSUN)rC  rA  r   r   r•   r;  )r   rB  rú   r   r    rJ   rK   r"   s   &       r$   Útest_unique_zero_sizedÚ!TestUnique.test_unique_zero_sized6  s�   € à—‘Ó ˆØ�‰�TÔÛˆBÜ—’˜˜RÓ ˆAÜ—’˜˜RÓ ˆAÜ—’˜"œbŸh™hÓ'ˆBÜ—’˜"œbŸh™hÓ'ˆBÜ—’˜œRŸX™XÓ&ˆAØ�N‰N˜1 ¨Ö/ó r'   c           	     ó¦  €  ! R  R\         P                  4      p. ROp. RO^
,          p\         P                  ! . RO^
4      pV P                  4       pV Fy  p\         P                  ! . RO^
,          VR7      p\         P                  ! . R	OVR7      pV! VP
                  WgR7      p	V! VP
                  WhR7      p
V P                  WšW#WF4       K{  	  R# )
c                   ó   € ] tR tRtRtR# )Ú1TestUnique.test_unique_subclass.<locals>.SubclassiC  r1   N)r2   r3   r4   r5   r6   r1   r'   r$   ÚSubclassry  C  s   † Ûr'   rz  rg   )r-   ÚbufferNrP  rQ  rR  rN  rO  )r   ÚndarrayrV  rC  r   rI   r;  )r   rz  rJ   rK   r"   rB  rú   r   r    rb  rc  s   &          r$   Útest_unique_subclassÚTestUnique.test_unique_subclassB  s¡   € ô	”r—z‘zô 	ò ˆÚ" RÕ'ˆÜ�KŠKš bÓ)ˆð —‘Ó ˆÛˆBÜ—’Ò.°Õ3¸2Ô>ˆAÜ—’š¨RÔ0ˆAÙ˜!Ÿ'™'¨Ô6ˆBÙ˜!Ÿ'™'¨Ô6ˆBØ�N‰N˜2 2¨1Ö1ó r'   c                óv   € . ROp. ROp\        VRR7      p\        \        VP                  4       4      V4       R# )ÚappleF©ÚsortedN)r€  Úbananar€  ÚcherryÚdaterƒ  ÚfigÚgrape)r€  rƒ  r„  r…  r†  r‡  ©r   r   r‚  r}   ©r   ÚarrÚ
unq_sortedrf  s   &   r$   Ú"test_unique_byte_string_hash_basedÚ-TestUnique.test_unique_byte_string_hash_basedS  s/   € âVˆÚJˆ
ä�C Ô&ˆô 	œ6 "§)¡)£+Ó.°
Ö;r'   c                óv   € . ROp. ROp\        VRR7      p\        \        VP                  4       4      V4       R# )õ   cafÃ©Fr�  N)	r�  Úcafer�  õ   naÃ¯veÚnaiveõ   rÃ©sumÃ©r‘  Úresumer“  )r�  r�  r’  r‘  r”  r“  rˆ  r‰  s   &   r$   Ú%test_unique_unicode_string_hash_basedÚ0TestUnique.test_unique_unicode_string_hash_based]  s4   € ò
ˆò Pˆ
ä�C Ô&ˆô 	œ6 "§)¡)£+Ó.°
Ö;r'   c                óh  € \         P                  ! . R NRNRNR NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRN\        RR7      R7      p. ROp\        VR	R
R7      p\	        R V 4       4      p\        V^4       \        R V 4       4      p\        WR4       R# )õ   straÃŸeNÚstrasseõ   niÃ±oÚninoõ   Ã©lÃ¨veÚeleve©Ú	na_objectrg   FT©r‚  Ú	equal_nanc              3   ó(   "  € T F  qR J x € K
  	  R # 5irz   r1   ©Ú.0r„   s   & r$   Ú	<genexpr>ÚFTestUnique.test_unique_vstring_hash_based_equal_nan.<locals>.<genexpr>®  ó   é € Ð/©B q˜d�«Bùó   ‚c              3   ó0   "  € T F  qf   K  Vx € K  	  R # 5irz   r1   r£  s   & r$   r¥  r¦  ±  ó   é € Ð;¡r !ŸAšA£rùó   ‚Œ
Úbbbbbbbbbbbbbbbbbbbbõ<   ÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸõ<   Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©ÚeeeeeeeeeeeeeeeeeeeeÚnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnõ(   Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Á,  bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbõ   ÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸÃŸõ   Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Ã©Á,  eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeÁ�  nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnõX  Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±Ã±©r¬  r²  r¯  rµ  r�  r›  rš  r°  r¶  r™  r˜  r­  r³  rœ  r®  r´  r±  r·  ©r   r   r	   r   Úsumr   r‚  r   ©r   r   Úunq_sorted_wo_nonerf  Ú
count_noneÚ
a1_wo_nones   &     r$   Ú(test_unique_vstring_hash_based_equal_nanÚ3TestUnique.test_unique_vstring_hash_based_equal_nanj  sÀ  € ä�HŠHð %àð%ð ð%ð ð	%ð
 ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð  ð!%ð" ð#%ð$ ð%%ð& ð'%ð( ð)%ð* ð+%ð, ð-%ð. ð/%ð0 ð1%ð4 ð5%ð6 ð7%ð8 ð9%ð: ð;%ð< ð=%ð> ð?%ð@ ðA%ðB ðC%ðD ðE%ðF ðG%ðH ðI%ôL ¨Ô-ôM'
ˆòP
Ðô* �A˜e¨tÔ4ˆô
 Ñ/©BÓ/Ó/ˆ
Ü�Z Ô#äÑ;¡rÓ;Ó;ˆ
Ü˜:Ö:r'   c                óh  € \         P                  ! . R NRNRNR NRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRNRN\        RR7      R7      p. ROp\        VR	R	R
7      p\	        R V 4       4      p\        V^4       \        R V 4       4      p\        WR4       R# )r˜  Nr™  rš  r›  rœ  r�  rž  rg   Fr   c              3   ó(   "  € T F  qR J x € K
  	  R # 5irz   r1   r£  s   & r$   r¥  ÚJTestUnique.test_unique_vstring_hash_based_not_equal_nan.<locals>.<genexpr>ø  r§  r¨  c              3   ó0   "  € T F  qf   K  Vx € K  	  R # 5irz   r1   r£  s   & r$   r¥  rÃ  û  rª  r«  r¬  r­  r®  r¯  r°  r±  r²  r³  r´  rµ  r¶  r·  r¸  r¹  r»  s   &     r$   Ú,test_unique_vstring_hash_based_not_equal_nanÚ7TestUnique.test_unique_vstring_hash_based_not_equal_nan´  sÀ  € ä�HŠHð %àð%ð ð%ð ð	%ð
 ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð ð%ð  ð!%ð" ð#%ð$ ð%%ð& ð'%ð( ð)%ð* ð+%ð, ð-%ð. ð/%ð0 ð1%ð4 ð5%ð6 ð7%ð8 ð9%ð: ð;%ð< ð=%ð> ð?%ð@ ðA%ðB ðC%ðD ðE%ðF ðG%ðH ðI%ôL ¨Ô-ôM'
ˆòP
Ðô* �A˜e¨uÔ5ˆô
 Ñ/©BÓ/Ó/ˆ
Ü�Z Ô#äÑ;¡rÓ;Ó;ˆ
Ü˜:Ö:r'   c                óŠ   € \         P                  ! . RO^,          \        RR7      R7      p\        \        \
        VRR7       R# )r€  Nrž  rg   F©r¡  )
r€  rƒ  r€  Nr„  r…  rƒ  r†  Nr‡  )r   r   r	   r   rÈ   r   )r   r   s   & r$   Útest_unique_vstring_errorsÚ%TestUnique.test_unique_vstring_errorsþ  s9   € Ü�HŠHòð õô ¨Ô-ô
ˆô 	”j¤&¨!°u×=r'   Úargc                óè   € \         P                  ! . RO4      p\         P                  ! ^^.3RR/VR/B p\         P                  ! ^^.3RR/VR/B p\        W44       F  w  rV\	        WV4       K  	  R# )zÐThese currently never use the hash-based solution.  However,
it seems easier to just allow it.

When the hash-based solution is added, this test should fail and be
replaced with something more comprehensive.
r‚  FTN)
r   r   r   r   r   rC   éÇ   r   r   r   )r   r   r   rZ  r   )r   rË  r   Úres_not_sortedÚ
res_sortedrŠ  rn   s   &&     r$   Útest_unsupported_hash_basedÚ&TestUnique.test_unsupported_hash_based  sl   € ô �HŠHÒ5Ó6ˆäŸš A q 6ÑG°%ÐG¸CÀ¸;ÑGˆÜ—Y’Y  1˜vÑB¨dÐB°s¸D°kÑBˆ
ä  Ö<‰MˆCÜ˜sÖ-ó =r'   c                óB  € \        \        V P                  \        4       \        \        V P                  R \        3R\        3.4       \        \
        \        \        P                  ! ^
4      ^R7       \        \
        \        \        P                  ! ^
4      RR7       R# )r   r    ©ÚaxisNéþÿÿÿ)	r   rk   Ú_run_axis_testsrù   rø   r
   r   r   r,   )r   s   &r$   Útest_unique_axis_errorsÚ"TestUnique.test_unique_axis_errors  sd   € Ü”i ×!5Ñ!5´vÔ>Ü”i ×!5Ñ!5ØœS�z C¬ =Ð1ô	3ô 	”i¤¬¯ª°2«¸QÕ?Ü”i¤¬¯ª°2«¸R×@r'   c                óÒ   € R p. RO. RO.p\         P                  ! V4      p\        \        V^ R7      \        V^ R7      V4       \        \        V^R7      \        V^R7      V4       R# )zUnique failed on list of listsrÓ  N©r�   r   r�   )r   r{   r   r   )r   ro   ÚinpÚinp_arrs   &   r$   Útest_unique_axis_listÚ TestUnique.test_unique_axis_list   sR   € Ø.ˆÚš)Ð$ˆÜ—*’*˜S“/ˆÜœ6 #¨AÔ.´°wÀQÔ0GÈÔMÜœ6 #¨AÔ.´°wÀQÔ0GÈÖMr'   c                óF  € . pVP                  \        P                  R ,          4       VP                  \        P                  R,          4       VP                  R4       VP                  R4       VP                  R\        3R\        3.4       VP                  R\        3R\
        3.4       V F  pV P                  V4       K  	  Rp\        P                  ! ^
\        P                  R7      P                  R^4      P                  \        4      p\        P                  ! RR	.R	R	..\        R7      p\        \        V^ R
7      WS4       Rp\        P                  ! RR.RR.RR.RR..4      p\        P                  ! RR..4      p\        \        V^ R
7      WS4       R# )rå   r>  r?  r@  r   r    z&Non-bitwise-equal booleans test failedrg   FTrÓ  z"Negative zero equality test failedrJ  Nra   ç       €)rA  r   rç   rm   rø   ÚfloatrÖ  r,   r)  r”   Úviewr“   r   r   r   )r   rB  r-   ro   rÞ   rì   s   &     r$   Útest_unique_axisÚTestUnique.test_unique_axis'  sF  € ØˆØ�‰”R—\‘\ ,Õ/Ô0Ø�‰”R—\‘\ *Õ-Ô.Ø�‰�_Ô%Ø�‰Ð%Ô&Ø�‰�sœC�j 3¬ *Ð-Ô.Ø�‰�sœC�j 3¬ ,Ð/Ô0ãˆEØ× Ñ  Ö'ñ ð 7ˆÜ�yŠy˜¤2§8¡8Ô,×4Ñ4°R¸Ó;×@Ñ@ÄÓFˆÜ—’˜E 4˜=¨4°¨,Ð7¼tÔDˆÜœ6 $¨QÔ/°Ô=à2ˆÜ�xŠx˜$ ˜ s¨D k°D¸#°;ÀÀdÀÐLÓMˆÜ—’˜D #˜;˜-Ó(ˆÜœ6 $¨QÔ/°Ö=r'   rÔ  c                ój   € \         P                  ! . RO4      p\        W!R7      p\        V. RO4       R# )r   rÓ  N)r   r   r   r   r   r   r   r   rA   ©r   r   r   r   )r   rÔ  r„   Úuniqs   &&  r$   Útest_unique_1d_with_axisÚ#TestUnique.test_unique_1d_with_axis=  s%   € ä�HŠHÒ-Ó.ˆÜ�aÔ#ˆÜ˜4¢Ö.r'   Nc           	     óú   € \         P                  ! . RO. RO. RO. RO.4      p\        VRVR7      w  r4\        VP                  Vf   VP                  M^4       \        V\         P                  ! W4VR7      4       R# )r   T)r1  rÔ  NrÓ  )r   r   r   )r   r   r   )r   r   r   r   Úndimr   Útake)r   rÔ  r„   rç  re  s   &&   r$   Útest_unique_inverse_with_axisÚ(TestUnique.test_unique_inverse_with_axisC  sV   € ä�HŠH’i¢ªI²yÐAÓBˆÜ˜1¨T¸Ô=‰	ˆÜ�S—X‘X¨ª˜qŸvšv¸1Ô=Ü˜1œbŸgšg d°dÔ;Ö<r'   c                ó*  € \         P                  ! R\         P                  R7      p\        V^ RRRR7      w  r#rE\	        VP
                  VP
                  4       \        V\         P                  ! RR7      4       \        V\         P                  ! ^ .4      4       \        V\         P                  ! ^ ^ .4      4       \        V\         P                  ! ^.4      4       \        V^RRRR7      w  r#rE\	        VP
                  VP
                  4       \        V\         P                  ! RR7      4       \        V\         P                  ! . 4      4       \        V\         P                  ! . 4      4       \        V\         P                  ! . 4      4       R	p\         P                  ! VR7      p\        \        V4      4       FO  p\        V4      p	Wh,          ^ 8X  d   ^ W˜&   M^W˜&   \        \        WxR7      \         P                  ! V	R7      4       KQ  	  R# )
r   )rI   r-   T©rÔ  r0  r1  r2  )rI   rÓ  N)r   r�   )r   r�   )r�   r   r�   r   r�   r   r�   )r   rW  rÔ   r   r   r-   r   r   ÚrangerX  rY  )
r   Úsingle_zerorç  Úidxre  ÚcntrI   Úmultiple_zerosrÔ  Úexpected_shapes
   &         r$   Útest_unique_axis_zerosÚ!TestUnique.test_unique_axis_zerosJ  s{  € ä—h’h V´2·7±7Ô;ˆÜ$ [°qÀtØ48ÈôNÑˆ�3ô 	�T—Z‘Z ×!2Ñ!2Ô3Ü˜4¤§¢°Ô!7Ô8Ü˜3¤§¢¨!¨£Ô.Ü˜3¤§¢¨!¨Q¨Ó 0Ô1Ü˜3¤§¢¨!¨£Ô.ô % [°qÀtØ48ÈôNÑˆ�3ô 	�T—Z‘Z ×!2Ñ!2Ô3Ü˜4¤§¢°Ô!7Ô8Ü˜3¤§¢¨£Ô-Ü˜3¤§¢¨£Ô-Ü˜3¤§¢¨£Ô-ð &ˆÜŸš¨Ô.ˆÜœ#˜e›*Ö%ˆDÜ! %›[ˆNØ�{˜aÔØ'(�Ò$à'(�Ñ$äœv nÔ@Ü!Ÿxšx¨nÔ=ö?ó &r'   c                óf  € \         P                  ! . RORR7      p\         P                  P                  V^ 4      p\         P                  ! V4      p\         P                  ! VRRR7      w  rEpRp\        VP                  VP                  V4       \        VP                  VP                  V4       R# )é@   r)  rg   T)r0  r2  z6Unique returned different results when asked for indexN)rú  r�   r   r   r   é?   rû  r�   r�   r�   r   r   r�   rû  r�   )r   r   ÚmaÚmasked_equalr   r   rÞ   Úmask)r   r„   r…   r6  Úv2rS  r"   ro   s   &       r$   Útest_unique_maskedÚTestUnique.test_unique_maskedn  s|   € ä�HŠHÒFØ"ô$ˆä�E‰E×Ñ˜q !Ó$ˆä�IŠI�a‹LˆÜ—9’9˜Q¨TÀÔF‰ˆˆqàFˆÜ˜1Ÿ6™6 2§7¡7¨CÔ0Ü˜1Ÿ6™6 2§7¡7¨CÖ0r'   c                ó¦   € R pR FH  p\         P                  ! R.^ ..V4      p\         P                  ! V^ R7      p\        W4W,          4       KJ  	  R# )z*sort order incorrect for integer type '%s'ÚbhilqrÓ  Nra   ræ  )r   Úfmtrú   r   r    s   &    r$   Ú test_unique_sort_order_with_axisÚ+TestUnique.test_unique_sort_order_with_axis{  sG   € ð ;ˆÛˆBÜ—’˜2˜$  ˜ bÓ)ˆAÜ—	’	˜! !Ô$ˆAÜ˜q S¥XÖ.ó r'   c                óš  € \         P                  ! . RO. RO. RO. RO.4      P                  V4      pRp\         P                  ! ^ ^.4      p\        \	        V4      VP                  V4      V4       Rp\         P                  ! . RO. RO.4      p\        \	        V^ R7      VP                  V4      V4       Rp\         P                  ! . RO. RO. RO. RO.4      p\        \	        V^R7      VP                  V4      V4       Rp\         P                  ! ^^.^^ ..^ ^.^ ^ ...4      P                  V4      p\         P
                  ! V^^ .^R7      p\        \	        V^R7      WC4       \	        V^ RRRR7      w  rgr‰Rp\        W',          Wc4       R	p\        \         P
                  ! Wh^ R7      V4       R
p\        V	\         P                  ! ^^.4      V4       \	        V^RRRR7      w  rgr‰Rp\        VRV3,          V4       Rp\        \         P
                  ! Wh^R7      V4       Rp\        V	\         P                  ! . RO4      V4       R# )r�   z&Unique with 1d array and axis=0 failedz&Unique with 2d array and axis=0 failedrÓ  z&Unique with 2d array and axis=1 failedz&Unique with 3d array and axis=2 failedTrð  z-Unique's return_index=True failed with axis=0z/Unique's return_inverse=True failed with axis=0z.Unique's return_counts=True failed with axis=0z-Unique's return_index=True failed with axis=1rG  z/Unique's return_inverse=True failed with axis=1z.Unique's return_counts=True failed with axis=1N)r�   r   r�   r�   )r   r�   r�   r�   )r�   r�   r   rÚ  )r   r   r   )r   r   r½   r   r   rì  )
r   r-   rÞ   ro   rì   Údata3drç  ró  re  rô  s
   &&        r$   rÖ  ÚTestUnique._run_axis_tests„  s
  € Ü�xŠxšÚ%Ú%Ú%ð'ó (÷ )/©¨u«ð 	ð
 7ˆÜ—’˜1˜a˜&Ó!ˆÜœ6 $›<¨¯©°uÓ)=¸sÔCà6ˆÜ—’š<ªÐ6Ó7ˆÜœ6 $¨QÔ/°·±¸uÓ1EÀsÔKà6ˆÜ—’š9¢i²ºIÐFÓGˆÜœ6 $¨QÔ/°·±¸uÓ1EÀsÔKà6ˆÜ—’˜Q ˜FØ ˜Fð$à ˜FØ ˜Fð$ð%ó &÷ '-¡f¨U£mð 	ô —’˜ ! Q ¨aÔ0ˆÜœ6 &¨qÔ1°6Ô?ä$ T°ÀØ48ÈôNÑˆ�3à=ˆÜ˜4�9 dÔ0Ø?ˆÜœ2Ÿ7š7 4°1Ô5°tÔ<Ø>ˆÜ˜3¤§¢¨!¨Q¨Ó 0°#Ô6ä$ T°ÀØ48ÈôNÑˆ�3à=ˆÜ˜4  3 �<¨Ô.Ø?ˆÜœ2Ÿ7š7 4°1Ô5°tÔ<Ø>ˆÜ˜3¤§¢ªÓ 3°SÖ9r'   c           	     óè  € \         P                  ! ^^\         P                  \         P                  \         P                  .4      p\         P                  ! V4      p\         P                  ! VRR7      p\	        V\         P                  ! ^\         P                  .4      4       \	        V\         P                  ! ^\         P                  \         P                  \         P                  .4      4       R# )r   FrÈ  N©r   r   r(  r   r   )r   r   rd  Únot_unqs   &   r$   Útest_unique_nanequalsÚ TestUnique.test_unique_nanequals°  s‡   € ä�HŠH�a˜œBŸF™F¤B§F¡F¬B¯F©FÐ3Ó4ˆÜ�iŠi˜‹lˆÜ—)’)˜A¨Ô/ˆÜ˜3¤§¢¨!¬R¯V©V¨Ó 5Ô6Ü˜7¤B§H¢H¨a´·±¼¿¹ÄÇÁÐ-HÓ$IÖJr'   c                óv  € \         P                  ! \         P                  R RR\         P                  ) RR RR\         P                  RRR \         P                  ) R.4      p\         P                  ! V4      \         P                  ! VRR7      3\         P
                  ! V4      \         P                  ! VRRR7      3\         P                  ! V4      \         P                  ! VRRR	7      3\         P                  ! V4      \         P                  ! VRRRRR
7      33 Fš  w  r#\        V4      \        V4      8X  g   Q h\        V\        4      '       g   V3p\        V\        4      '       g   V3p\        W#4       F9  w  rE\        \         P                  ! V4      \         P                  ! V4      4       K;  	  Kœ  	  R# )r#  rJ  g      @r$  g      @FrÈ  T)r2  r¡  )r1  r¡  )r0  r1  r2  r¡  Nrà  )r   r   r(  Úunique_valuesr   Úunique_countsÚunique_inverseÚ
unique_allrX  Ú
isinstanceÚtuplerZ  r   rw   )r   rŠ  Úres_unique_array_apiÚ
res_uniquers   rn   s   &     r$   Útest_unique_array_api_functionsÚ*TestUnique.test_unique_array_api_functions¸  si  € Ü�hŠhä—‘˜˜S #¬¯© wØ�c˜3 ¤R§V¡VØ�T˜3¤§¡ ¨ðó
ˆô × Ò  Ó%Ü—	’	˜#¨Ô/ðô
 × Ò  Ó%Ü—	’	˜#¨T¸UÔCðô
 ×!Ò! #Ó&Ü—	’	˜#¨d¸eÔDðô
 —’˜cÓ"Ü—	’	ØØ!%Ø#'Ø"&Ø#ôð	ó1
Ñ,Ð ô0 Ð+Ó,´°J³Ô?Ð?Ð?ÜÐ2´E×:Ò:Ø(<Ð'>Ð$Ü˜j¬%×0Ò0Ø(˜]�
ä$'Ð(<Ö$IÑ �äœRŸWšW V›_¬b¯gªg°hÓ.?Ö@ó %Jó=1
r'   c                ó¦  € \         P                  ! . RO. RO.4      p\         P                  ! VRR7      w  r#VP                  VP                  4      p\         P
                  \         P                  3 F[  pV! V4      p\        W%P                  4       \        W5P                  4       \        WP                  VP                  ,          4       K]  	  R# )r   TrI  Nr;   )r   r   r   )
r   r   r   r”   rI   r  r  r   r/  Úinverse_indices)r   rŠ  Úexpected_valuesÚexpected_inverseÚfuncrì   s   &     r$   Útest_unique_inverse_shapeÚ$TestUnique.test_unique_inverse_shapeã  s‘   € ä�hŠhš	¢9Ð-Ó.ˆÜ,.¯IªI°cÈ$Ô,OÑ)ˆØ+×3Ñ3°C·I±IÓ>ÐÜ×%Ñ%¤r§}¡}Ó4ˆDÙ˜#“YˆFÜ˜·±Ô>ÜÐ/×1GÑ1GÔHÜ˜s§M¡M°&×2HÑ2HÕ$IÖJó	 5r'   rÞ   Ú	transposeFTr-   c                ó  € \         P                  ! V4      P                  V4      pV'       d   VP                  p\         P                  ! V4      p\         P                  ! \         P
                  ! V4      4      p\        WVR R7       R# )T)ÚstrictN)r   Úmatrixr½   ÚTr   r{   r   )r   rÞ   r!  r-   ÚmatÚurn   s   &&&&   r$   Útest_unique_with_matrixÚ"TestUnique.test_unique_with_matrixî  sU   € ô �iŠi˜‹o×$Ñ$ UÓ+ˆßØ—%‘%ˆCÜ�IŠI�c‹NˆÜ—9’9œRŸZšZ¨›_Ó-ˆÜ˜1¨t×4r'   c                ó  € \         P                  ! \         P                  ^ ^ \         P                  .4      p\         P                  ! R\         P                  .4      p\         P                  ! V^ RR7      p\	        W24       R# )r�   rJ  T©rÔ  r¡  Nr  ©r   Úarr1drn   rì   s   &   r$   Ú'test_unique_axis0_equal_nan_on_1d_arrayÚ2TestUnique.test_unique_axis0_equal_nan_on_1d_arrayÿ  sQ   € ä—’œ"Ÿ&™& ! Q¬¯©Ð/Ó0ˆÜ—8’8˜R¤§¡˜LÓ)ˆÜ—’˜5 q°DÔ9ˆÜ˜6Ö,r'   c                ó  € \         P                  ! \         P                  ^ ^ \         P                  .4      p\         P                  ! R\         P                  .4      p\         P                  ! VRRR7      p\	        W24       R# )r�   rJ  Tr+  Nra   r  r,  s   &   r$   Ú&test_unique_axis_minus1_eq_on_1d_arrayÚ1TestUnique.test_unique_axis_minus1_eq_on_1d_array  sQ   € Ü—’œ"Ÿ&™& ! Q¬¯©Ð/Ó0ˆÜ—8’8˜R¤§¡˜LÓ)ˆÜ—’˜5 r°TÔ:ˆÜ˜6Ö,r'   c                ó&  € \         P                  ! \         P                  ^ ^ \         P                  .4      p\        P                  ! \
        RR7      ;_uu_ 4        \         P                  ! VRRR7       RRR4       R#   + '       g   i     R# ; i)r�   zinteger argument expectedrÍ   rJ  Fr+  N)r   r   r(  rÆ   rÇ   rk   r   )r   r-  s   & r$   Ú'test_unique_axis_float_raises_typeerrorÚ2TestUnique.test_unique_axis_float_raises_typeerror  sS   € Ü—’œ"Ÿ&™& ! Q¬¯©Ð/Ó0ˆÜ�]Š]œ9Ð,G×HÖHÜ�IŠI�e #°Õ7÷ I×H×HÒHús   ÁA?Á?B	rú   ÚFrL  r/  rJ  y              @c                ó¤   € \         P                  ! W!R 7      p\         P                  ! V4      p\        V4      \        V4      ^,
          8X  g   Q hR# )rg   N)r   r   r   rX  )r   rú   r/  r  r'  s   &&&  r$   Ú test_unique_complex_signed_zerosÚ+TestUnique.test_unique_complex_signed_zeros  s9   € ô
 �HŠH�VÔ&ˆÜ�IŠI�a‹LˆÜ�1‹vœ˜V› q�Ô(Ð(Ò(r'   r1   )r0  r1  r2  ra   )Nr�   ra   )r   r   r   )r   r   r   rà  i8ÿÿÿiçÿÿÿy       €      À)+r2   r3   r4   r5   r;  rC  rÆ   r&  Úfilterwarningsrq  ru  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.  r1  r4  r-   r_  r8  r6   r7   r8   s   @r$   r-  r-  x  s9  ø‡ € ò6"òpð ‡[�[×ÑÐ NÓOñxLó PðxLòt
0ò2ò"<ò<òH;òTH;òT>ð ‡[�[×Ñ˜UÒ$WÓXñ.ó Yð.òAòNò>ð, ‡[�[×Ñ˜V a¨ WÓ-ñ/ó .ð/ð
 ‡[�[×Ñ˜V¢]Ó3ñ=ó 4ð=ò"?òH1ò/ò*:òXKò)AòV	Kð ‡[�[×ÑØÚ
Ú
ð
â	Ø	
ð	óð ‡[�[×Ñ˜[¨5°$¨-Ó8Ø‡[�[×Ñ˜W r§x¡x°·±Ð&<Ó=ñ5ó >ó 9óð5ò-ò-ò8ð
 ‡[�[×Ñ˜T B§H¢H¨S£M°2·8²8¸C³=Ð#AÓBØ‡[�[×Ñ˜X©°°bÓ)9¹7À4ÈÓ;LÈaÐ(PØ)-©w°t¸TÓ/BÀBÐ(GØ),¨a°±g¸cÀ4Ó6HÈ"Ð(Mð(Oó Pñ)óPó Cö)r'   r-  )Ú__doc__rÆ   Únumpyr   r   r   r   r   r   r   r   Únumpy.dtypesr	   Únumpy.exceptionsr
   Únumpy.testingr   r   r   r   r   r-  r1   r'   r$   Ú<module>r@     sD   ðñó ã ß R× RÑ RÝ $Ý &÷ó ÷c	#ñ c	#÷L`
)ó `
)r'   