+
    NV-j>  ã                   óŠ  € R t ^ RIt^ RIt^ RIHt ^ RIt^ RIH	t
 ^ RIHt ^ RIHt ^ RIHt ]
P"                  tRR R llt]P(                  ! RR	.R
7      R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P(                  R 4       t]P>                  PA                  R4      t! ! R R]PD                  4      t# ! R R]PH                  4      t%R# )aÖ  
This file contains a minimal set of tests for compliance with the extension
array interface test suite, and should contain no other tests.
The test suite for the full functionality of the array is located in
`pandas/tests/arrays/`.

The tests in this file are inherited from the BaseExtensionTests, and only
minimal tweaks should be applied to get the tests passing (by overwriting a
parent method).

Additional tests should either be added to one of the BaseExtensionTests
classes (if they are relevant for the extension interface for all dtypes), or
be added to the array-specific tests in `pandas/tests/arrays/`.

Note: we do not bother with base.BaseIndexTests because NumpyExtensionArray
will never be held in an Index.
N)ÚNumpyEADtype)Úis_object_dtype)ÚNumpyExtensionArray)Úbasec                ó0   € V ^8„  d   QhR\         R\         /# )é   ÚattrÚobj)Ústr)Úformats   "Úr/Volumes/fast/ai/experiments/ui-tars-smoke/.venv/lib/python3.14/site-packages/pandas/tests/extension/test_numpy.pyÚ__annotate__r   !   s   € ÷ 3ñ 3œSð 3´Cñ 3ó    c                ó~  € V R8X  dª   \        VRR4      p\        VRR4      p\        V\        4      '       d3   \        V\        4      '       g   VP                  VP                  4      pMG\        V\        4      '       d2   \        V\        4      '       g   VP                  VP                  4      p\        WW#4       R# )z]
patch tm.assert_attr_equal so NumpyEADtype("object") is closed enough to
np.dtype("object")
ÚdtypeN)ÚgetattrÚ
isinstancer   ÚastypeÚnumpy_dtypeÚorig_assert_attr_equal)r   ÚleftÚrightr	   ÚlattrÚrattrs   &&&&  r   Ú_assert_attr_equalr   !   s‹   € ð
 ˆw„Ü˜˜g tÓ,ˆÜ˜˜w¨Ó-ˆÜ�eœ\×*Ò*´:¸eÄ\×3RÒ3RØ—;‘;˜u×0Ñ0Ó1‰DÜ˜œ|×,Ò,´ZÀÄ|×5TÒ5TØ—L‘L ×!2Ñ!2Ó3ˆEä˜4 uÖ2r   ÚfloatÚobject)Úparamsc                 óT   € \        \        P                  ! V P                  4      4      # ©N)r   Únpr   Úparam)Úrequests   &r   r   r   1   s   € äœŸš §¡Ó/Ó0Ð0r   c              #  óø   "  € V P                  4       ;_uu_ 4       pVP                  \        RR4       VP                  \        P                  R\
        4       Rx € RRR4       R#   + '       g   i     R# ; i5i)aï  
A monkeypatch to tells pandas to let us in.

By default, passing a NumpyExtensionArray to an index / series / frame
constructor will unbox that NumpyExtensionArray to an ndarray, and treat
it as a non-EA column. We don't want people using EAs without
reason.

The mechanism for this is a check against ABCNumpyExtensionArray
in each constructor.

But, for testing, we need to allow them in pandas. So we patch
the _typ of NumpyExtensionArray, so that we evade the ABCNumpyExtensionArray
check.
Ú_typÚ	extensionÚassert_attr_equalN)ÚcontextÚsetattrr   ÚtmÚ	assertersr   )ÚmonkeypatchÚms   & r   Úallow_in_pandasr-   6   sP   é € ð" 
×	Ñ	×	Ô	 !Ø	�	‰	Ô% v¨{Ô;Ø	�	‰	”"—,‘,Ð 3Ô5GÔHÛ÷ 
×	×	Ò	üs   ‚A:›AA&Á
A:Á&A7	Á1	A:c                 óþ   € VP                   R 8X  d;   \        P                  ! \        ^
4       Uu. uF  q"3NK  	  up4      P                  pM#\
        P                  ! ^^VP                  R7      p\        V4      # u upi )r   ©r   )	r   ÚpdÚSeriesÚrangeÚ_valuesr    ÚarangeÚ_dtyper   )r-   r   ÚiÚarrs   &&  r   Údatar8   M   s]   € à×Ñ˜HÔ$Ü�iŠi¤u¨R¤yÓ1¡y !›¡yÑ1Ó2×:Ñ:‰ä�iŠi˜˜2 U§\¡\Ô2ˆÜ˜sÓ#Ð#ùò 2s   ¯A:c                 óì   € VP                   R 8X  d6   \        \        P                  ! \        P                  R.\
        R7      4      # \        \        P                  ! \        P                  R.4      4      # )r   r/   g      ð?©é   ©r   r   r    ÚarrayÚnanr   ©r-   r   s   &&r   Údata_missingr@   V   sJ   € à×Ñ˜HÔ$Ü"¤2§8¢8¬R¯V©V°T¨NÄ&Ô#IÓJÐJÜœrŸxšx¬¯©°¨Ó6Ó7Ð7r   c                  ó   € R  p V # )c                 ój   € \         P                  ! V 4      ;'       d    \         P                  ! V4      # r   )r    Úisnan)ÚaÚbs   &&r   ÚcmpÚna_cmp.<locals>.cmp_   s    € Ü�xŠx˜‹{×*Ð*œrŸxšx¨›{Ð*r   © )rF   s    r   Úna_cmprI   ]   s   € ò+ð €Jr   c                óÂ   € VP                   R8X  d/   \        \        P                  ! . RO\        R7      R,          4      # \        \        P                  ! . RO4      4      # )z]Length-3 array with a known sort order.

This should be three items [B, C, A] with
A < B < C
r   r/   :r;   NN)rH   ©r   ©é   r:   )r;   r   é    )r   r   r    r=   r   r?   s   &&r   Údata_for_sortingrO   e   sE   € ð ×Ñ˜HÔ$ô #¤2§8¢8Ò,BÌ&Ô#QÐRTÕ#UÓVÐVÜœrŸxšxª	Ó2Ó3Ð3r   c                óð   € VP                   R8X  d7   \        \        P                  ! R\        P                  R.\
        R7      4      # \        \        P                  ! ^\        P                  ^ .4      4      # )zjLength-3 array with a known sort order.

This should be three items [B, NA, A] with
A < B and NA missing.
r   r/   r:   )rN   r<   r?   s   &&r   Údata_missing_for_sortingrQ   s   sQ   € ð ×Ñ˜HÔ$Ü"¤2§8¢8¨T´2·6±6¸4Ð,@ÌÔ#OÓPÐPÜœrŸxšx¨¬B¯F©F°A¨Ó7Ó8Ð8r   c                óú   € VP                   R8X  d   RRRrCpM\        P                  ! ^4      w  r#p\        \        P                  ! W3\        P
                  \        P
                  W"W4.VP                   R7      4      # )z‡Data for factorization, grouping, and unique tests.

Expected to be like [B, B, NA, NA, A, A, B, C]

Where A < B < C and NA is missing
r   r/   r:   rK   rL   )r   r    r4   r   r=   r>   )r-   r   rD   rE   Úcs   &&   r   Údata_for_groupingrT      sd   € ð ×Ñ˜HÔ$Ø˜˜dˆaˆˆaä—)’)˜A“,‰ˆˆaÜÜ
�Š�!œŸ™¤§¡¨¨aÐ3¸5×;LÑ;LÔMóð r   c                 ó¾   € V P                   R 8X  d   \        P                  ! V  R24       \        P                  ! ^
4      ^,          p\
        P                  ! WR7      # )ÚOz is not a numeric dtyper/   )ÚkindÚpytestÚskipr    Úonesr   Ú_from_sequence)r   r7   s   & r   Údata_for_twosr\   �   sD   € à‡z�z�SÔÜ�Š�u�gÐ4Ð5Ô6Ü
�'Š'�"‹+˜�/€CÜ×-Ò-¨cÔ?Ð?r   c                óz   € V R8X  d4   \         P                  P                  RR7      pVP                  V4       R# R# )ax  
Tests for NumpyExtensionArray with nested data. Users typically won't create
these objects via `pd.array`, but they can show up through `.array`
on a Series with nested data. Many of the base tests fail, as they aren't
appropriate for nested data.

This fixture allows these tests to be skipped when used as a usefixtures
marker to either an individual test or a test class.
r   zFails for object dtype©ÚreasonN)rX   ÚmarkÚxfailÚapplymarker)r   r"   r`   s   && r   Úskip_numpy_objectrc   ˜   s7   € ð �ÔÜ�{‰{× Ñ Ð(@Ð ÓAˆØ×Ñ˜DÖ!ñ r   rc   c            
       ó¦  a a€ ] tR t^«t o]P
                  P                  RR7      R 4       t]V 3R l4       t	V 3R lt
V 3R lt]V 3R l4       t]V 3R l4       t]V 3R	 l4       t]V 3R
 l4       t]V 3R l4       t]V 3R l4       t]V 3R l4       t]P
                  P'                  RR7      V 3R l4       tV 3R lt]V 3R l4       tRtRtRtRtV 3R ltR tV 3R ltV 3R ltV 3R ltV3R lR lt V3R lR lt!]P
                  P                  R4      ]P
                  PE                  RRR.4      R  4       4       t#]V 3R! l4       t$]V 3R" l4       t%]V 3R# l4       t&]V 3R$ l4       t']V 3R% l4       t(]]P
                  PE                  R&R'R.4      V 3R( l4       4       t)]V 3R) l4       t*]]P
                  PE                  R*]+PX                  ! . R?O4      ]-PX                  ! . R?OR+R,7      .R-R..R/7      V 3R0 l4       4       t.]]P
                  PE                  R1. R@O]-PX                  ! . R@OR2R,7      ]+PX                  ! . R@O4      .. RAOR/7      V 3R3 l4       4       t/]V 3R4 l4       t0]V 3R5 l4       t1R6 t2]P
                  P'                  R7R7      V 3R8 l4       t3]]P
                  PE                  R9R:R;.4      V 3R< l4       4       t4V 3R= lt5R>t6Vt7V ;t8# )BÚTestNumpyExtensionArrayzWe don't register our dtyper^   c                ó   € R # r   rH   )Úselfr8   s   &&r   Útest_from_dtypeÚ'TestNumpyExtensionArray.test_from_dtype¬   ó   € ñ 	r   c                ó&   <€ \         SV `  W4       R # r   )ÚsuperÚ)test_series_constructor_scalar_with_index)rg   r8   r   Ú	__class__s   &&&€r   rm   ÚATestNumpyExtensionArray.test_series_constructor_scalar_with_index±   s   ø€ ô 	‰Ñ9¸$ÖFr   c                óè   <€ VP                   P                  R 8X  dG   VP                  \        P                  P                  RVP                   P                   2R7      4       \        SV `  V4       R# )r   z:NumpyExtensionArray expectedly clashes with a NumPy name: r^   N)r   r   rb   rX   r`   ra   rl   Útest_check_dtype)rg   r8   r"   Úusing_infer_stringrn   s   &&&&€r   rq   Ú(TestNumpyExtensionArray.test_check_dtype¶   sc   ø€ Ø�:‰:×!Ñ! XÔ-Ø×ÑÜ—‘×!Ñ!ð#Ø#'§:¡:×#9Ñ#9Ð":ð<ð "ó ôô 	‰Ñ  Ö&r   c                ór   <€ VP                   R 8X  d   \        V4      '       g   Q hR# \        SV `  V4       R# )r   N)r   r   rl   Útest_is_not_object_type)rg   r   r"   rn   s   &&&€r   ru   Ú/TestNumpyExtensionArray.test_is_not_object_typeÀ   s1   ø€ Ø×Ñ Ô(ô # 5×)Ò)Ð)Ò)ä‰GÑ+¨EÖ2r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_getitem_scalar©rg   r8   rn   s   &&€r   rx   Ú+TestNumpyExtensionArray.test_getitem_scalarÈ   s   ø€ ô 	‰Ñ# DÖ)r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_shift_fill_valuery   s   &&€r   r|   Ú-TestNumpyExtensionArray.test_shift_fill_valueÍ   s   ø€ ô 	‰Ñ% dÖ+r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_limit_frame©rg   r@   rn   s   &&€r   r   Ú/TestNumpyExtensionArray.test_fillna_limit_frameÒ   s   ø€ ô 	‰Ñ'¨Ö5r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_limit_seriesr€   s   &&€r   rƒ   Ú0TestNumpyExtensionArray.test_fillna_limit_seriesØ   s   ø€ ô 	‰Ñ(¨Ö6r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_copy_framer€   s   &&€r   r†   Ú.TestNumpyExtensionArray.test_fillna_copy_frameÞ   s   ø€ ô 	‰Ñ& |Ö4r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_copy_seriesr€   s   &&€r   r‰   Ú/TestNumpyExtensionArray.test_fillna_copy_seriesã   s   ø€ ô 	‰Ñ'¨Ö5r   c                ó&   <€ \         SV `  W4       R # r   )rl   Útest_searchsorted)rg   rO   Ú	as_seriesrn   s   &&&€r   rŒ   Ú)TestNumpyExtensionArray.test_searchsortedè   s   ø€ ô
 	‰Ñ!Ð"2Ö>r   z*NumpyExtensionArray.diff may fail on dtypec                ó"   <€ \         SV `  W4      # r   )rl   Ú	test_diff)rg   r8   Úperiodsrn   s   &&&€r   r�   Ú!TestNumpyExtensionArray.test_diffï   s   ø€ ä‰wÑ  Ó/Ð/r   c                óÆ   <€ VP                   P                  \        8X  d2   \        P                  P                  R R7      pVP                  V4       \        SV `!  V4       R# )z$Dimension mismatch in np.concatenater^   N)	r   r   r   rX   r`   ra   rb   rl   Útest_insert©rg   r8   r"   r`   rn   s   &&& €r   r”   Ú#TestNumpyExtensionArray.test_insertó   sH   ø€ Ø�:‰:×!Ñ!¤VÔ+Ü—;‘;×$Ñ$Ð,RÐ$ÓSˆDØ×Ñ Ô%ä‰Ñ˜DÖ!r   c                ó&   <€ \         SV `  W4       R # r   )rl   Útest_insert_invalid©rg   r8   Úinvalid_scalarrn   s   &&&€r   r˜   Ú+TestNumpyExtensionArray.test_insert_invalidú   s   ø€ ô 	‰Ñ# DÖ9r   Nc                óx   <€ R pVP                   P                  R8X  d   \        pW n        \        SV `  V4       R # ©NrV   )r   rW   Ú	TypeErrorÚ
divmod_excrl   Útest_divmod)rg   r8   rŸ   rn   s   && €r   r    Ú#TestNumpyExtensionArray.test_divmod  s/   ø€ Øˆ
Ø�:‰:�?‰?˜cÔ!Ü"ˆJØ$ŒÜ‰Ñ˜DÖ!r   c                ó²   € \         P                  ! V4      pR pVP                  P                  R8X  d   \        pW0n        V P                  V\        V4       R # r�   )r0   r1   r   rW   rž   rŸ   Ú_check_divmod_opÚdivmod)rg   r8   ÚserÚexcs   &&  r   Útest_divmod_series_arrayÚ0TestNumpyExtensionArray.test_divmod_series_array  s@   € Ü�iŠi˜‹oˆØˆØ�:‰:�?‰?˜cÔ!ÜˆCØ!ŒOØ×Ñ˜c¤6¨4Ö0r   c                ó  <€ TpR pVP                   P                  \        8X  dI   VR9   d<   \        P                  P                  RR7      pVP                  P                  V4       \        pWPn	        \        SV `-  W4       R # ©Nz9the Series.combine step raises but not the Series method.r^   )Ú__mul__Ú__rmul__)r   r   r   rX   r`   ra   ÚnodeÚ
add_markerrž   Úseries_scalar_excrl   Útest_arith_series_with_scalar)rg   r8   Úall_arithmetic_operatorsr"   Úopnamer¯   r`   rn   s   &&&&   €r   r°   Ú5TestNumpyExtensionArray.test_arith_series_with_scalar  sr   ø€ Ø)ˆØ ÐØ�:‰:×!Ñ!¤VÔ+ØÐ0Ô0Ü—{‘{×(Ñ(ØVð )ó �ð —‘×'Ñ'¨Ô-Ü )ÐØ!2ÔÜ‰Ñ-¨dÖMr   c                ó’   <€ TpR pVP                   P                  \        8X  d   VR9  d   \        pW@n        \
        SV `  W4       R # )N)Ú__add__Ú__radd__)r   r   r   rž   Úseries_array_excrl   Útest_arith_series_with_array)rg   r8   r±   r²   r·   rn   s   &&&  €r   r¸   Ú4TestNumpyExtensionArray.test_arith_series_with_array   sA   ø€ Ø)ˆØÐØ�:‰:×!Ñ!¤VÔ+°Ð>UÔ0UÜ(ÐØ 0ÔÜ‰Ñ,¨TÖLr   c                ó  <€ TpR pVP                   P                  \        8X  dI   VR9   d<   \        P                  P                  RR7      pVP                  P                  V4       \        pWPn	        \        SV `-  W4       R # rª   )r   r   r   rX   r`   ra   r­   r®   rž   Úframe_scalar_excrl   Útest_arith_frame_with_scalar)rg   r8   r±   r"   r²   r»   r`   rn   s   &&&&   €r   r¼   Ú4TestNumpyExtensionArray.test_arith_frame_with_scalar(  sr   ø€ Ø)ˆØÐØ�:‰:×!Ñ!¤VÔ+ØÐ0Ô0Ü—{‘{×(Ñ(ØVð )ó �ð —‘×'Ñ'¨Ô-Ü(ÐØ 0ÔÜ‰Ñ,¨TÖLr   c                ó@   <€ V ^8„  d   QhRS[ P                  RS[RS[/# )r   r¥   Úop_nameÚreturn©r0   r1   r
   Úbool)r   Ú__classdict__s   "€r   r   Ú$TestNumpyExtensionArray.__annotate__5  s&   ø€ ÷ ñ ¡r§y¡yð ¹3ð Á4ñ r   c                óF   € VP                   P                  R 8X  d   VR9   # R# )rV   T)ÚsumÚminÚmaxÚanyÚall)r   rW   )rg   r¥   r¿   s   &&&r   Ú_supports_reductionÚ+TestNumpyExtensionArray._supports_reduction5  s!   € Ø�9‰9�>‰>˜SÔ ØÐAÑAÐAÙr   c                ó@   <€ V ^8„  d   QhRS[ P                  RS[RS[/# )r   r¥   r¿   ÚskipnarÁ   )r   rÃ   s   "€r   r   rÄ   :  s&   ø€ ÷ 1ñ 1¡§	¡	ð 1±Cð 1Áñ 1r   c                óü   € \        W4      pVP                  P                  pVP                  V4      p\        Wb4      pVR 8X  d   V! 4       pV! 4       p	MV! VR7      pV! VR7      p	\        P
                  ! W‰4       R# )Úcount)rÎ   N)r   r   r   r   r)   Úassert_almost_equal)
rg   r¥   r¿   rÎ   Úres_opÚ	cmp_dtypeÚaltÚexp_opÚresultÚexpecteds
   &&&&      r   Úcheck_reduceÚ$TestNumpyExtensionArray.check_reduce:  sm   € Ü˜Ó&ˆð —I‘I×)Ñ)ˆ	Ø�j‰j˜Ó#ˆÜ˜Ó&ˆØ�gÔÙ“XˆFÙ“x‰Há 6Ô*ˆFÙ VÔ,ˆHÜ
×Ò˜vÖ0r   zTODO: tests not written yetrÎ   TFc                ó   € R # r   rH   )rg   r8   Úall_numeric_reductionsrÎ   s   &&&&r   Útest_reduce_frameÚ)TestNumpyExtensionArray.test_reduce_frameJ  rj   r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_seriesr€   s   &&€r   rß   Ú*TestNumpyExtensionArray.test_fillna_seriesO  s   ø€ ô 	‰Ñ" <Ö0r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_framer€   s   &&€r   râ   Ú)TestNumpyExtensionArray.test_fillna_frameT  s   ø€ ô 	‰Ñ! ,Ö/r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_fillna_readonlyr€   s   &&€r   rå   Ú,TestNumpyExtensionArray.test_fillna_readonlyY  s   ø€ ô 	‰Ñ$ \Ö2r   c                ó&   <€ \         SV `  W4       R # r   )rl   Útest_setitem_invalidr™   s   &&&€r   rè   Ú,TestNumpyExtensionArray.test_setitem_invalid^  s   ø€ ô 	‰Ñ$ TÖ:r   c                ó&   <€ \         SV `  W4       R # r   )rl   Ú test_setitem_sequence_broadcasts©rg   r8   Úbox_in_seriesrn   s   &&&€r   rë   Ú8TestNumpyExtensionArray.test_setitem_sequence_broadcastsc  s   ø€ ô 	‰Ñ0°ÖEr   ÚsetterÚlocc                ó&   <€ \         SV `  W4       R # r   )rl   Útest_setitem_mask_broadcast)rg   r8   rï   rn   s   &&&€r   rò   Ú3TestNumpyExtensionArray.test_setitem_mask_broadcasti  s   ø€ ô
 	‰Ñ+¨DÖ9r   c                ó&   <€ \         SV `  V4       R # r   )rl   Ú&test_setitem_scalar_key_sequence_raisery   s   &&€r   rõ   Ú>TestNumpyExtensionArray.test_setitem_scalar_key_sequence_raisep  s   ø€ ô 	‰Ñ6°tÖ<r   ÚmaskÚbooleanr/   únumpy-arrayzboolean-array)Úidsc                ó(   <€ \         SV `  WV4       R # r   )rl   Útest_setitem_mask)rg   r8   r÷   rí   rn   s   &&&&€r   rü   Ú)TestNumpyExtensionArray.test_setitem_maskx  s   ø€ ô 	‰Ñ! $¨mÖ<r   ÚidxÚInt64c                ó(   <€ \         SV `  WV4       R # r   )rl   Útest_setitem_integer_array)rg   r8   rþ   rí   rn   s   &&&&€r   r  Ú2TestNumpyExtensionArray.test_setitem_integer_array„  s   ø€ ô 	‰Ñ*¨4°mÖDr   c                ó&   <€ \         SV `  W4       R # r   )rl   Útest_setitem_slicerì   s   &&&€r   r  Ú*TestNumpyExtensionArray.test_setitem_slice�  s   ø€ ä‰Ñ" 4Ö7r   c                ó&   <€ \         SV `  V4       R # r   )rl   Útest_setitem_loc_iloc_slicery   s   &&€r   r  Ú3TestNumpyExtensionArray.test_setitem_loc_iloc_slice‘  s   ø€ ä‰Ñ+¨DÖ1r   c                óè  € \         P                  ! R \         P                  ! V4      /4      ;r4\         P                  ! VP                  R7      pV! V4      pVR ,          VP                  VR 3&   VP
                  P                  \        8w  dM   \        V\        4      '       d   V\        R4      8w  d'   \         P                  ! R VP                  4       /4      p\        P                  ! WTRR7       R# )r8   )ÚindexNF)Úcheck_column_type)r0   Ú	DataFramer1   r
  rð   r   r   r   r   ÚsliceÚto_numpyr)   Úassert_frame_equal)rg   r8   Úfull_indexerÚdfr×   rÖ   Úkeys   &&&    r   Ú,test_setitem_with_expansion_dataframe_columnÚDTestNumpyExtensionArray.test_setitem_with_expansion_dataframe_column•  s©   € äŸš f¬b¯iªi¸«oÐ%>Ó?Ð?ˆÜ—’ B§H¡HÔ-ˆñ ˜2ÓˆØ"$ V¥*ˆ�
‰
�3˜�;Ñð �:‰:×!Ñ!¤VÔ+Ü˜c¤5×)Ò)¨S´E¸$³KÔ-?ÜŸ<š<¨°·±³Ð(AÓB�Ü
×Ò˜fÀ%×Hr   zNumpyEADtype is unpackedc                ó&   <€ \         SV `  V4       R # r   )rl   Ú#test_index_from_listlike_with_dtypery   s   &&€r   r  Ú;TestNumpyExtensionArray.test_index_from_listlike_with_dtype¦  s   ø€ ä‰Ñ3°DÖ9r   ÚenginerS   Úpythonc                ó(   <€ \         SV `  WV4       R # r   )rl   Útest_EA_types)rg   r  r8   r"   rn   s   &&&&€r   r  Ú%TestNumpyExtensionArray.test_EA_typesª  s   ø€ ô 	‰Ñ˜f¨GÖ4r   c                óÂ   <€ \        VR,          \        4      '       d2   \        P                  P	                  RR7      pVP                  V4       \        SV `  V4       R# )r;   zUnpacks tupler^   Néÿÿÿÿ)r   ÚtuplerX   r`   ra   rb   rl   Ú8test_loc_setitem_with_expansion_preserves_ea_index_dtyper•   s   &&& €r   r   ÚPTestNumpyExtensionArray.test_loc_setitem_with_expansion_preserves_ea_index_dtype¯  sF   ø€ Ü�d˜2•h¤×&Ò&Ü—;‘;×$Ñ$¨OÐ$Ó<ˆDØ×Ñ Ô%Ü‰ÑHÈÖNr   )rŸ   r»   r·   r¯   )TTTFF)rN   r;   r   )Úlistzinteger-arrayrù   )9Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__rX   r`   rY   rh   Úskip_nestedrm   rq   ru   rx   r|   r   rƒ   r†   r‰   rŒ   ra   r�   r”   r˜   rŸ   r¯   r»   r·   r    r§   r°   r¸   r¼   rË   rØ   ÚparametrizerÜ   rß   râ   rå   rè   rë   rò   rõ   r    r=   r0   rü   r  r  r  r  r  r  r   Ú__static_attributes__Ú__classdictcell__Ú__classcell__)rn   rÃ   s   @@r   re   re   «   s’  ù‡ € Ø‡[�[×ÑÐ:ÐÓ;ñó <ðð ôGó ðGõ'õ3ð ô*ó ð*ð ô,ó ð,ð ô6ó ð6ð
 ô7ó ð7ð
 ô5ó ð5ð ô6ó ð6ð ô?ó ð?ð ‡[�[×ÑÐJÐÓKô0ó Lð0õ"ð ô:ó ð:ð €JØÐØÐØÐõ"ò1õNõMõM÷ð ÷
1ð 1ð  ‡[�[×ÑÐ3Ó4Ø‡[�[×Ñ˜X¨¨e }Ó5ñó 6ó 5ðð ô1ó ð1ð ô0ó ð0ð ô3ó ð3ð ô;ó ð;ð ôFó ðFð
 Ø‡[�[×Ñ˜X¨¨t }Ó5ô:ó 6ó ð:ð
 ô=ó ð=ð Ø‡[�[×ÑØà�HŠHÒ5Ó6Ø�HŠHÒ5¸YÔGð	
ð ˜OÐ,ð ó ô=óó ð=ð Ø‡[�[×ÑØÚ	�B—H’HšY¨gÔ6¸¿ºÂÓ8KÐLÚ4ð ó ô
Eóó ðEð ô8ó ð8ð ô2ó ð2òIð" ‡[�[×ÑÐ8ÐÓ9ô:ó :ð:ð Ø‡[�[×Ñ˜X¨¨X Ó7ô5ó 8ó ð5÷Oõ Or   re   c                   ó   € ] tR tRtRtR# )ÚTest2DCompati¶  rH   N)r#  r$  r%  r&  r)  rH   r   r   r-  r-  ¶  s   † Ûr   r-  )Ú
Attributes)&Ú__doc__Únumpyr    rX   Úpandas.core.dtypes.dtypesr   Úpandasr0   Úpandas._testingÚ_testingr)   Úpandas.api.typesr   Úpandas.core.arrays.numpy_r   Úpandas.tests.extensionr   r&   r   r   Úfixturer   r-   r8   r@   rI   rO   rQ   rT   r\   rc   r`   Úusefixturesr'  ÚExtensionTestsre   ÚNDArrayBacked2DTestsr-  rH   r   r   Ú<module>r<     sq  ðñó$ Û å 2ã Ý Ý ,Ý 9Ý 'à×-Ñ-Ð ÷3ð  ‡‚˜ Ð*Ô+ñ1ó ,ð1ð ‡�ñó ðð, ‡�ñ$ó ð$ð ‡�ñ8ó ð8ð ‡�ñó ðð ‡�ñ
4ó ð
4ð ‡�ñ9ó ð9ð ‡�ñó ðð  ‡�ñ@ó ð@ð ‡�ñ"ó ð"ð �k‰k×%Ñ%Ð&9Ó:€ôHO˜d×1Ñ1ô HOôV	�4×,Ñ,ö 	r   