Ë
    u™ãj}1  ã                  óÂ   — d dl mZ d dlmZ d dlZd dlZd dlmZ d dl	Z
d dlmZ d dlmZ  eg d¢«      Z G d„ d«      Z G d	„ d
e«      Z G d„ de«      Z G d„ de«      Zy)é    )Úannotations)ÚfinalN)Úis_string_dtype)Úops)ÚeqÚaddÚsubÚmulÚtruedivÚfloordivÚmodÚpowc                  óÚ   — e Zd ZU eZded<   eZded<   eZded<   eZded<   	 	 	 	 dd„Z	dd„Z
dd„Zedd	„«       Zed
„ «       Zedd„«       Zeef	 	 	 dd„«       Zedd„«       Zedd„«       Zy)ÚBaseOpsUtilútype[Exception] | NoneÚseries_scalar_excÚframe_scalar_excÚseries_array_excÚ
divmod_excc                ó  — |dv r| j                   }|S t        |t        j                  «      r(t        |t        j                  «      r| j                  }|S t        |t        j                  «      r| j
                  }|S | j                  }|S )N)Ú
__divmod__Ú__rdivmod__)r   Ú
isinstanceÚpdÚSeriesr   r   r   )ÚselfÚop_nameÚobjÚotherÚresults        új/var/www/html/python-recuperauto-other/env/lib/python3.12/site-packages/pandas/tests/extension/base/ops.pyÚ_get_expected_exceptionz#BaseOpsUtil._get_expected_exception   s€   € ð Ð3Ñ3Ø—_‘_ˆFð ˆô ˜œRŸY™YÔ'¬J°u¼b¿i¹iÔ,HØ×*Ñ*ˆFð ˆô ˜œRŸY™YÔ'Ø×+Ñ+ˆFð ˆð ×*Ñ*ˆFàˆó    c                ó   — |S ©N© )r   r   r   r   Úpointwise_results        r!   Ú_cast_pointwise_resultz"BaseOpsUtil._cast_pointwise_result0   s
   € ð  Ðr#   c                ó,   — t        j                  |«      S r%   )ÚtmÚget_op_from_name)r   r   s     r!   r+   zBaseOpsUtil.get_op_from_name9   s   € Ü×"Ñ" 7Ó+Ð+r#   c                óv   — | j                  |||«      }| j                  |«      }| j                  |||||«       y r%   )r"   r+   Ú	_check_op)r   Úserr   r   ÚexcÚops         r!   Úcheck_opnamezBaseOpsUtil.check_opnameB   s:   € à×*Ñ*¨7°C¸Ó?ˆØ×"Ñ" 7Ó+ˆà�‰�s˜B  w°Õ4r#   c                ó   — t        |t        j                  «      rQt        |j                  «      dk7  rt
        ‚|j                  d d …df   j                  ||«      j                  «       }|S |j                  ||«      }|S )Né   r   )	r   r   Ú	DataFrameÚlenÚcolumnsÚNotImplementedErrorÚilocÚcombineÚto_frame)r   r   r   r0   Úexpecteds        r!   Ú_combinezBaseOpsUtil._combineJ   sl   € ä�cœ2Ÿ<™<Ô(Ü�3—;‘;Ó 1Ò$Ü)Ð)Ø—x‘x¢ 1 ‘~×-Ñ-¨e°RÓ8×AÑAÓCˆHð ˆð —{‘{ 5¨"Ó-ˆHØˆr#   c                óV  — t        |t        j                  «      rt        |t        j                  «      sy |j                  d«      }|t        vry t        j
                  ||dœ«      } t        ||«      |d¬«      }t        j
                  ||dœ«      }t        j                  ||«       y )NÚ_)ÚAÚBr   )Úaxis)	r   r   r   ÚstripÚ_AXIS0_CHECKED_OPSr4   Úgetattrr*   Úassert_frame_equal)	r   r.   r   r   Úexpected_columnÚ	flex_nameÚdfr    r;   s	            r!   Ú_check_frame_op_axis0z!BaseOpsUtil._check_frame_op_axis0U   s‡   € ô ˜3¤§	¡	Ô*¬z¸%ÄÇÁÔ/KØØ—M‘M #Ó&ˆ	ØÔ.Ñ.Øä�\‰\ ¨#Ñ.Ó/ˆØ'”˜˜YÓ'¨°AÔ6ˆÜ—<‘< o¸OÑ LÓMˆÜ
×Ñ˜f hÕ/r#   c                óz  — |€† |||«      }| j                  |||«      }| j                  ||||«      }t        |t        |«      «      sJ ‚t	        j
                  ||«       | j                  ||||«       | j                  ||||«       y t        j                  |«      5   |||«       d d d «       y # 1 sw Y   y xY wr%   )
r<   r(   r   Útyper*   Úassert_equalÚ_check_length_zerorI   ÚpytestÚraises)r   r.   r0   r   r   r/   r    r;   s           r!   r-   zBaseOpsUtil._check_ope   s°   € ð ˆ;Ù˜˜U“^ˆFØ—}‘} S¨%°Ó4ˆHØ×2Ñ2°7¸CÀÈÓQˆHÜ˜f¤d¨3£iÔ0Ð0Ð0Ü�O‰O˜F HÔ-à×#Ñ# C¨¨U°HÔ=Ø×&Ñ& s¨E°7¸FÕCä—‘˜sÓ#ñ Ù�3˜”÷÷ ñ ús   Â
B1Â1B:c                ó  — |j                   d d }t        |t        j                  t        j                  f«      r&t        |«      t        |«      k(  r|j                   d d } |||«      }t        j                  ||j                   d d «       y ©Nr   )r8   r   r   r   r4   r5   r*   rL   )r   r   r0   r   r;   Úemptyr    s          r!   rM   zBaseOpsUtil._check_length_zeroz   sm   € ð —‘˜˜!�ˆÜ�eœbŸi™i¬¯©Ð6Ô7¼CÀ»JÌ#ÈcË(Ò<RØ—J‘J˜r �NˆEá�E˜5Ó!ˆÜ
�‰˜ §¡¨b¨qÐ 1Õ2r#   c                ó~  — |t         u r| j                  d||«      }n| j                  d||«      }|€V |||«      \  }}|t         u r||z  ||z  }}n
||z  ||z  }}t        j                  ||«       t        j                  ||«       y t	        j
                  |«      5  t        ||«       d d d «       y # 1 sw Y   y xY w)Nr   r   )Údivmodr"   r*   Úassert_series_equalrN   rO   )	r   r.   r0   r   r/   Ú
result_divÚ
result_modÚexpected_divÚexpected_mods	            r!   Ú_check_divmod_opzBaseOpsUtil._check_divmod_op†   s¼   € ð ”‰<Ø×.Ñ.¨|¸SÀ%ÓH‰Cà×.Ñ.¨}¸cÀ5ÓIˆCØˆ;Ù%'¨¨U£^Ñ"ˆJ˜
Ø”V‰|Ø-0°E©\¸3À¹;˜l‘à-2°c©\¸5À3¹;˜l�Ü×"Ñ" :¨|Ô<Ü×"Ñ" :¨|Õ<ä—‘˜sÓ#ñ #Ü�s˜EÔ"÷#÷ #ñ #ús   ÂB3Â3B<N)r   ÚstrÚreturnz4type[Exception] | tuple[type[Exception], ...] | None)r   r[   )r.   ú	pd.Seriesr   r[   )r   r[   r\   ÚNone)r\   r^   ©r.   r]   )Ú__name__Ú
__module__Ú__qualname__Ú	TypeErrorr   Ú__annotations__r   r   r   r"   r(   r+   r   r1   r<   rI   r7   r-   rM   rZ   r&   r#   r!   r   r      sÛ   … Ø09ÐÐ-Ó9Ø/8ÐÐ,Ó8Ø/8ÐÐ,Ó8Ø)2€JÐ&Ó2ðØðà	=óó& ó,ð ò5ó ð5ð ñó ðð ò0ó ð0ð à;NðØðØ25òó ðð( ò3ó ð3ð ò#ó ñ#r#   r   c                  ó®  — e Zd ZU dZeZded<   eZded<   eZded<   eZ	ded<   d„ Z
d„ Zd	„ Zd
„ Zd„ Zd„ Zej"                  j%                  dej(                  ej*                  ej,                  g«      ej"                  j%                  dej0                  ej2                  z   D � �cg c]  }|j5                  d«      s|‘Œ c}} «      d„ «       «       Zyc c}} w )ÚBaseArithmeticOpsTestsa?  
    Various Series and DataFrame arithmetic ops methods.

    Subclasses supporting various ops should set the class variables
    to indicate that they support ops of that kind

    * series_scalar_exc = TypeError
    * frame_scalar_exc = TypeError
    * series_array_exc = TypeError
    * divmod_exc = TypeError
    r   r   r   r   r   c                óÐ   — |dk(  r*t        |j                  «      rt        j                  d«       |}t	        j
                  |«      }| j                  |||j                  d   «       y )NÚ__rmod__ú%Skip testing Python string formattingr   )r   ÚdtyperN   Úskipr   r   r1   r8   ©r   ÚdataÚall_arithmetic_operatorsr   r.   s        r!   Útest_arith_series_with_scalarz4BaseArithmeticOpsTests.test_arith_series_with_scalar¬   sN   € à# zÒ1´oÀdÇjÁjÔ6QÜ�K‰KÐ?Ô@à*ˆÜ�i‰i˜‹oˆØ×Ñ˜#˜w¨¯©°©Õ4r#   c                óÀ   — |dk(  r*t        |j                  «      rt        j                  d«       |}t	        j
                  d|i«      }| j                  |||d   «       y )Nrh   ri   r?   r   )r   rj   rN   rk   r   r4   r1   )r   rm   rn   r   rH   s        r!   Útest_arith_frame_with_scalarz3BaseArithmeticOpsTests.test_arith_frame_with_scalarµ   sO   € à# zÒ1´oÀdÇjÁjÔ6QÜ�K‰KÐ?Ô@à*ˆÜ�\‰\˜3 ˜+Ó&ˆØ×Ñ˜"˜g t¨A¡wÕ/r#   c           
     óž   — |}t        j                  |«      }| j                  ||t        j                  |d   gt        |«      z  «      «       y rQ   )r   r   r1   r5   rl   s        r!   Útest_arith_series_with_arrayz3BaseArithmeticOpsTests.test_arith_series_with_array¾   s>   € à*ˆÜ�i‰i˜‹oˆØ×Ñ˜#˜w¬¯	©	°4¸±7°)¼cÀ#»hÑ2FÓ(GÕHr#   c                óž   — t        j                  |«      }| j                  |t        d«       | j                  dt        j
                  |«       y )Nr3   ©r   r   rZ   rT   r   Úrdivmod)r   rm   r.   s      r!   Útest_divmodz"BaseArithmeticOpsTests.test_divmodÄ   s7   € Ü�i‰i˜‹oˆØ×Ñ˜c¤6¨1Ô-Ø×Ñ˜a¤§¡¨cÕ2r#   c                ó  — t        j                  |«      }| j                  |t        |«       |}| j                  |t        j
                  |«       t        j                  |«      }| j                  |t        j
                  |«       y r%   ru   )r   rm   Údata_for_twosr.   r   s        r!   Útest_divmod_series_arrayz/BaseArithmeticOpsTests.test_divmod_series_arrayÉ   s`   € Ü�i‰i˜‹oˆØ×Ñ˜c¤6¨4Ô0àˆØ×Ñ˜e¤S§[¡[°#Ô6ä—	‘	˜%Ó ˆØ×Ñ˜e¤S§[¡[°#Õ6r#   c                ó  — t        j                  |«      }| j                  d||«      }|�$t        j                  |«      5  ||z    d d d «       y ||z   }t        j                  ||z   «      }t        j                  ||«       y # 1 sw Y   y xY w)NÚ__add__)r   r   r"   rN   rO   r*   rU   )r   rm   r.   r/   r    r;   s         r!   Ú$test_add_series_with_extension_arrayz;BaseArithmeticOpsTests.test_add_series_with_extension_arrayÓ   s~   € ô
 �i‰i˜‹oˆà×*Ñ*¨9°c¸4Ó@ˆØˆ?Ü—‘˜sÓ#ñ Ø�d’
÷àà�t‘ˆÜ—9‘9˜T D™[Ó)ˆÜ
×Ñ˜v xÕ0÷àús   Á BÂBÚboxr   Ú__rc                óf   —  ||«      }t        ||«      r t        ||«      |«      }|t        u sJ ‚y y r%   )ÚhasattrrD   ÚNotImplemented)r   rm   r~   r   r   r    s         r!   Ú6test_direct_arith_with_ndframe_returns_not_implementedzMBaseArithmeticOpsTests.test_direct_arith_with_ndframe_returns_not_implementedä   s=   € ñ �D“	ˆä�4˜Ô!Ø+”W˜T 7Ó+¨EÓ2ˆFØœ^Ñ+Ð+Ñ+ð "r#   N)r`   ra   rb   Ú__doc__rc   r   rd   r   r   r   ro   rq   rs   rw   rz   r}   rN   ÚmarkÚparametrizer   r   r4   ÚIndexr*   Úarithmetic_dunder_methodsÚcomparison_dunder_methodsÚ
startswithrƒ   )Ú.0Úxs   00r!   rf   rf   š   sä   … ñ
ð 1:ÐÐ-Ó9Ø/8ÐÐ,Ó8Ø/8ÐÐ,Ó8Ø)2€JÐ&Ó2ò5ò0òIò3ò
7ò1ð" ‡[�[×Ñ˜U R§Y¡Y°·±¸b¿h¹hÐ$GÓHØ‡[�[×ÑØð ×1Ñ1°B×4PÑ4PÑP÷	
àØ—<‘< Ô&ò ó	
óñ	,óó Iñ	,ùó	
s   Â$Crf   c                  ó$   — e Zd ZdZdd„Zd„ Zd„ Zy)ÚBaseComparisonOpsTestsz4Various Series and DataFrame comparison ops methods.c                óì  — |j                   dv r‚ |||«      }|j                  ||«      }| j                  |j                   |||«      }t        j                  ||«       | j                  |||j                   |«       | j                  ||||«       y d }	  |||«      }|€y|j                  ||«      }| j                  |j                   |||«      }t        j                  |«       | j                  ||||«       | j                  |||j                   |«       y t        j                  t        |«      «      5  |j                  ||«       d d d «       y # t        $ r}|}Y d }~ŒÅd }~ww xY w# 1 sw Y   y xY w)N)r   Úne)r`   r9   r(   r*   rU   rI   rM   Ú	ExceptionrN   rO   rK   )	r   r.   rm   r0   r   r    r;   r/   Úerrs	            r!   Ú_compare_otherz%BaseComparisonOpsTests._compare_otherü   sW  € Ø�;‰;˜,Ñ&á˜˜U“^ˆFØ—{‘{ 5¨"Ó-ˆHØ×2Ñ2°2·;±;ÀÀUÈHÓUˆHÜ×"Ñ" 6¨8Ô4Ø×&Ñ& s¨E°2·;±;ÀÔGà×#Ñ# C¨¨U°HÕ=ð ˆCðÙ˜C ›�ð ˆ{àŸ;™; u¨bÓ1�Ø×6Ñ6Ø—K‘K  e¨Xó�ô ×&Ñ& v¨xÔ8à×'Ñ'¨¨R°¸ÔAØ×*Ñ*¨3°°r·{±{ÀFÕKä—]‘]¤4¨£9Ó-ñ +Ø—K‘K  rÔ*÷+ð +øô ò Ø•ûðú÷+ð +ús$   Â	E Ä6E*Å	E'ÅE"Å"E'Å*E3c                ó\   — t        j                  |«      }| j                  ||||d   «       y rQ   )r   r   r“   )r   rm   Úcomparison_opr.   s       r!   Útest_compare_scalarz*BaseComparisonOpsTests.test_compare_scalar  s'   € Ü�i‰i˜‹oˆØ×Ñ˜C  }°d¸1±gÕ>r#   c                ó¸   — t        j                  |«      }t        j                  |d   gt        |«      z  |j                  ¬«      }| j	                  ||||«       y )Nr   )rj   )r   r   r5   rj   r“   )r   rm   r•   r.   r   s        r!   Útest_compare_arrayz)BaseComparisonOpsTests.test_compare_array   sF   € Ü�i‰i˜‹oˆÜ—	‘	˜4 ™7˜)¤c¨$£iÑ/°t·z±zÔBˆØ×Ñ˜C  }°eÕ<r#   Nr_   )r`   ra   rb   r„   r“   r–   r˜   r&   r#   r!   rŽ   rŽ   ù   s   „ Ù>ó+ò@?ó=r#   rŽ   c                  ó˜   — e Zd Zd„ Zej
                  j                  dej                  ej                  ej                  g«      d„ «       Zy)ÚBaseUnaryOpsTestsc                ó¨  — t        j                  |d¬«      }	 |D �cg c]  }| ‘Œ c} | }t        j                  | d¬«      }t        j                  ||«       y c c}w # t        $ rg t        j                  t        «      5  |  d d d «       n# 1 sw Y   nxY wt        j                  t        «      5  |  d d d «       Y y # 1 sw Y   Y y xY ww xY w)NÚname)rœ   )r   r   r*   rU   rc   rN   rO   )r   rm   r.   rŒ   r    r;   s         r!   Útest_invertzBaseUnaryOpsTests.test_invert'  s´   € Ü�i‰i˜ 6Ô*ˆð	5ØÖ�AˆaŠRÓð �TˆFÜ—y‘y $ ¨VÔ4ˆHÜ×"Ñ" 6¨8Õ4ùò øÜò 	ô —‘œyÓ)ñ Ø‘÷÷ ñ úä—‘œyÓ)ñ Ø‘÷÷ ó úð	úsQ   ™A! �
A§A! ÁA! Á!"CÂBÂ	CÂB	Â CÂ5CÂ9CÃC	ÃCÃCÚufuncc                ó�  — t         j                  dt         j                  dt         j                  di|   }d }	  t	        ||«      «       } ||«      }t        j                  ||«       y # t        $ rS}|}t        j                  t        |«      t        f«      5   ||«       d d d «       n# 1 sw Y   nxY wY d }~y Y d }~y d }~ww xY w)NÚ__pos__Ú__neg__Ú__abs__)ÚnpÚpositiveÚnegativeÚabsrD   r*   Úassert_extension_array_equalr‘   rN   rO   rK   rc   )r   rm   rž   Úattrr/   r    Úaltr’   s           r!   Ú#test_unary_ufunc_dunder_equivalencez5BaseUnaryOpsTests.test_unary_ufunc_dunder_equivalence9  s¶   € ô —‘˜Y¬¯©°YÄÇÁÈ	ÐRØñ
ˆð ˆð
	9Ø(”W˜T 4Ó(Ó*ˆFñ ˜“+ˆCÜ×+Ñ+¨F°CÕ8øô ò 	ØˆCô —‘¤ S£	¬9Ð5Ó6ñ Ù�d”÷÷ ñ ú÷ ñ ûð		ús/   ¹A) Á)	CÁ2&C Â	B*Â!	C Â*B3	Â/C Ã CN)r`   ra   rb   r�   rN   r…   r†   r£   r¤   r¥   r¦   rª   r&   r#   r!   rš   rš   &  s@   „ ò5ð$ ‡[�[×Ñ˜W r§{¡{°B·K±KÀÇÁÐ&HÓIñ9ó Jñ9r#   rš   )Ú
__future__r   Útypingr   Únumpyr£   rN   Úpandas.core.dtypes.commonr   Úpandasr   Úpandas._testingÚ_testingr*   Úpandas.corer   Ú	frozensetrC   r   rf   rŽ   rš   r&   r#   r!   ú<module>r´      sb   ðÝ "å ã Û å 5ã Ý Ý ñ ÚDóÐ ÷
@#ñ @#ôF\,˜[ô \,ô~*=˜[ô *=ôZ&9˜õ &9r#   