§
    tŠtj-:  ã                   ó8  — d dl Z d dlZd dlZd dlZd dlmZ d dlmZ d dl	m
Z d dlmZ d dlmZ d dlmZ ej        d„ ¦   «         Zej        d„ ¦   «         Zej        d	„ ¦   «         Zej        d
„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej        d„ ¦   «         Zej                              ej!         d¬¦  «         G d„ d¦  «        ¦   «         Z"dS )é    N)Úimport_optional_dependency)Úoption_context)Ú	DataFrame)Úexpressions)ÚVersionc                  ó    — t          t          j                             d¦  «                             d¦  «        t          d¦  «        d¬¦  «        S )Né   ©i'  é   ÚABCDÚfloat64©ÚcolumnsÚdtype©r   ÚnpÚrandomÚdefault_rngÚstandard_normalÚlist© ó    ú[/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/pandas/tests/test_expressions.pyÚ_framer      sF   € åÝ
Œ	×Ò˜aÑ Ô ×0Ò0°Ñ<Ô<Ý�V‘”Øðñ ô ð r   c                  ó    — t          t          j                             d¦  «                             d¦  «        t          d¦  «        d¬¦  «        S )Nr	   )éd   r   r   r   r   r   r   r   r   Ú_frame2r      sF   € åÝ
Œ	×Ò˜aÑ Ô ×0Ò0°Ñ:Ô:Ý�V‘”Øðñ ô ð r   c                 óÌ   — t          | d         | d                              d¦  «        | d                              d¦  «        | d                              d¦  «        dœ¦  «        S ©	NÚAÚBÚfloat32ÚCÚint64ÚDÚint32)r    r!   r#   r%   ©r   Úastype©r   s    r   Ú_mixedr*   "   sd   € åà˜”Ø˜”×#Ò# IÑ.Ô.Ø˜”×#Ò# GÑ,Ô,Ø˜”×#Ò# GÑ,Ô,ð		
ð 	
ñô ð r   c                 óÌ   — t          | d         | d                              d¦  «        | d                              d¦  «        | d                              d¦  «        dœ¦  «        S r   r'   ©r   s    r   Ú_mixed2r-   .   sd   € åà˜”Ø˜”×$Ò$ YÑ/Ô/Ø˜”×$Ò$ WÑ-Ô-Ø˜”×$Ò$ WÑ-Ô-ð		
ð 	
ñô ð r   c                  ó¦   — t          t          j                             d¦  «                             ddd¬¦  «        t          d¦  «        d¬¦  «        S )	Nr	   é   r   r
   ©Úsizer   r$   r   ©r   r   r   r   Úintegersr   r   r   r   Ú_integerr4   :   sM   € åÝ
Œ	×Ò˜aÑ Ô ×)Ò)¨!¨S°zÐ)ÑBÔBÝ�V‘”Øðñ ô ð r   c                 ó–   — | t           j                             d¦  «                             ddt          j        | ¦  «        ¬¦  «        z  S )Nr	   r   r0   )r   r   r   r3   Úshape)r4   s    r   Ú_integer_integersr7   C   s>   € ð •b”i×+Ò+¨AÑ.Ô.×7Ò7¸¸1Å2Ä8ÈHÑCUÔCUÐ7ÑVÔVÑVÐVr   c                  ó¦   — t          t          j                             d¦  «                             ddd¬¦  «        t          d¦  «        d¬¦  «        S )	Nr	   r/   r   )ée   r   r0   r   r$   r   r2   r   r   r   Ú	_integer2r:   I   sM   € åÝ
Œ	×Ò˜aÑ Ô ×)Ò)¨!¨S°xÐ)Ñ@Ô@Ý�V‘”Øðñ ô ð r   c                 ó6   — | d                               ¦   «         S ©Nr    ©Úto_numpyr)   s    r   Ú_arrayr?   R   ó   € à�#Œ;×ÒÑ!Ô!Ð!r   c                 ó6   — | d                               ¦   «         S r<   r=   r,   s    r   Ú_array2rB   W   ó   € à�3Œ<× Ò Ñ"Ô"Ð"r   c                 ó6   — | d                               ¦   «         S ©Nr%   r=   )r*   s    r   Ú_array_mixedrF   \   r@   r   c                 ó6   — | d                               ¦   «         S rE   r=   )r-   s    r   Ú_array_mixed2rH   a   rC   r   znot using numexpr)Úreasonc                   óú  — e Zd Zededefd„¦   «         Zej         	                    dg d¢¦  «        ej         	                    dddg¦  «        ej         	                    dg d	¢¦  «        d
„ ¦   «         ¦   «         ¦   «         Z
ej         	                    dg d¢¦  «        ej         	                    dddg¦  «        d„ ¦   «         ¦   «         Zd„ Zej                             d¦  «        ej         	                    dg d¢¦  «        ej         	                    dddg¦  «        d„ ¦   «         ¦   «         ¦   «         Zej         	                    dddg¦  «        d„ ¦   «         Zej         	                    dddg¦  «        ej         	                    dg d¢¦  «        d„ ¦   «         ¦   «         Zej         	                    dg d¢¦  «        d„ ¦   «         Zej         	                    dg d¢¦  «        d„ ¦   «         Zej         	                    d eg d¢g d¢gg d¢¬ ¦  «         eddgddggd!d"g¬ ¦  «        f eg d#¢g d$¢g d%¢gg d¢¬ ¦  «         eddgddgddggd!d"g¬ ¦  «        fg¦  «        d&„ ¦   «         Zej         	                    dd	¦  «        ej         	                    d'd(¦  «        d)„ ¦   «         ¦   «         Zej         	                    d*g d+¢¦  «        ej         	                    d,d-d.g¦  «        d/„ ¦   «         ¦   «         Zd0S )1ÚTestExpressionsÚflexÚopnamec                 óú   ‡— |rˆfd„}‰|_         nt          t          ‰¦  «        }t          dd¦  «        5   || |¦  «        }d d d ¦  «         n# 1 swxY w Y   t	          j        ¦   «           || |¦  «        }||fS )Nc                 ó6   •—  t          | ‰¦  «        |¦  «        S )N)Úgetattr)ÚxÚyrM   s     €r   ú<lambda>z)TestExpressions.call_op.<locals>.<lambda>k   s   ø€ Ð0�g a¨Ñ0Ô0°Ñ3Ô3€ r   úcompute.use_numexprF)Ú__name__rP   Úoperatorr   ÚexprÚget_test_result)ÚdfÚotherrL   rM   ÚopÚexpectedÚresults      `   r   Úcall_opzTestExpressions.call_oph   sÑ   ø€ àð 	+Ø3Ð3Ð3Ð3ˆBØ ˆBŒKˆKå� 6Ñ*Ô*ˆBåÐ1°5Ñ9Ô9ð 	%ð 	%Ø�r˜"˜e‘}”}ˆHð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%õ 	ÔÑÔÐà��B˜‘”ˆØ�xÐÐs   ¶AÁAÁAÚfixture)r4   r:   r7   r   r   r*   r-   TFÚarith)ÚaddÚsubÚmulÚmodÚtruedivÚfloordivc                 óŽ  — |                      |¦  «        }|                     ¦   «         5 }|                     t          dd¦  «         |                      ||||¦  «        \  }}	|dk    r%t          d„ |	j        j        D ¦   «         ¦  «        sJ ‚t          j	        |	|¦  «         t          t          |j        ¦  «        ¦  «        D ]h}
|                      |j        d d …|
f         |j        d d …|
f         ||¦  «        \  }}	|dk    r|	j        j        dk    sJ ‚t          j	        |	|¦  «         Œi	 d d d ¦  «         d S # 1 swxY w Y   d S )NÚ_MIN_ELEMENTSr   re   c              3   ó,   K  — | ]}|j         d k    V — ŒdS )ÚfN)Úkind)Ú.0rQ   s     r   ú	<genexpr>z6TestExpressions.test_run_arithmetic.<locals>.<genexpr>�   s(   è è € ÐIÐI¨Q˜1œ6 Sš=ÐIÐIÐIÐIÐIÐIr   rj   )ÚgetfixturevalueÚcontextÚsetattrrW   r^   ÚallÚdtypesÚvaluesÚtmÚassert_equalÚrangeÚlenr   Úilocr   rk   )ÚselfÚrequestr_   rL   r`   ÚmonkeypatchrY   Úmr]   r\   Úis              r   Útest_run_arithmeticz#TestExpressions.test_run_arithmeticx   sš  € ð" ×$Ò$ WÑ-Ô-ˆØ× Ò Ñ"Ô"ð 	2 aØ�IŠI•d˜O¨QÑ/Ô/Ð/Ø#Ÿ|š|¨B°°D¸%Ñ@Ô@ÑˆF�Hà˜	Ò!Ð!ÝÐIÐI°(´/Ô2HÐIÑIÔIÑIÔIÐIÐIÐIÝŒO˜H fÑ-Ô-Ð-å�3˜rœz™?œ?Ñ+Ô+ð 2ð 2�Ø#'§<¢<Ø”G˜A˜A˜A˜q˜D”M 2¤7¨1¨1¨1¨a¨4¤=°$¸ñ$ô $Ñ �˜ð ˜IÒ%Ð%Ø#œ>Ô.°#Ò5Ð5Ð5Ð5Ý” ¨&Ñ1Ô1Ð1Ð1ð2ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2ð 	2ð 	2s   ªDD:Ä:D>ÅD>c                 ó°  — |                      |¦  «        }|j        }t          dd¦  «        5  |dz   }ddd¦  «         n# 1 swxY w Y   |                     ¦   «         5 }	|	                     t
          dd¦  «         t          j        d¦  «         |                      ||||¦  «        \  }
}t          j        ¦   «         }|s
J d¦   «         ‚t          j
        ||
¦  «         t          t          |j        ¦  «        ¦  «        D ]=}|j        dd…|f         dz   }|                      |j        dd…|f         ||d	¦  «         Œ>	 ddd¦  «         dS # 1 swxY w Y   dS )
z²
        tests solely that the result is the same whether or not numexpr is
        enabled.  Need to test whether the function does the correct thing
        elsewhere.
        rT   Fr/   Nrh   r   Tz Did not use numexpr as expected.ra   )rn   rU   r   ro   rp   rW   Úset_test_moder^   rX   rt   ru   rv   rw   r   rx   )ry   rz   r_   rL   Úcomparison_opr{   rY   r`   rZ   r|   r]   r\   Úused_numexprr}   Úbinary_comps                  r   Útest_run_binaryzTestExpressions.test_run_binaryš   sö  € ð& ×$Ò$ WÑ-Ô-ˆØÔ&ˆÝÐ1°5Ñ9Ô9ð 	ð 	Ø˜‘FˆEð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð × Ò Ñ"Ô"ð 	F aØ�IŠI•d˜O¨QÑ/Ô/Ð/ÝÔ˜tÑ$Ô$Ð$à#Ÿ|š|¨B°°t¸UÑCÔCÑˆF�HåÔ/Ñ1Ô1ˆLØÐCÐCÐ!CÑCÔC�<ÝŒO˜H fÑ-Ô-Ð-å�3˜rœz™?œ?Ñ+Ô+ð Fð F�Ø#œj¨¨¨¨A¨Ô.°Ñ2�Ø—’˜RœW Q Q Q¨ Tœ]¨K¸¸uÑEÔEÐEÐEðFð	Fð 	Fð 	Fñ 	Fô 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Føøøð 	Fð 	Fð 	Fð 	Fð 	Fð 	Fs"   ­?¿AÁAÁCEÅEÅEc                 ó²  — t           j                             d¦  «                             d¦  «        }t           j                             d¦  «                             d¦  «        }t	          j        t          j        d ||d¦  «        }|rJ ‚t	          j        t          j        d||d¦  «        }|rJ ‚t	          j        t          j        d||d¦  «        }|sJ ‚d S )Nr	   iAB r   Úevaluateú+)r   r   r   r   rW   Ú_can_use_numexprrV   ra   )ry   ÚarrayÚarray2r]   s       r   Útest_invalidzTestExpressions.test_invalidÀ   s¿   € Ý”	×%Ò% aÑ(Ô(×8Ò8¸ÑCÔCˆÝ”×&Ò& qÑ)Ô)×9Ò9¸#Ñ>Ô>ˆõ Ô&¥x¤|°T¸5À%ÈÑTÔTˆØÐÐˆzõ Ô&¥x¤|°S¸&À&È*ÑUÔUˆØÐÐˆzõ Ô&¥x¤|°S¸%ÀÈÑTÔTˆØˆˆˆvˆˆr   z2ignore:invalid value encountered in:RuntimeWarningzopname,op_str))ra   r‡   )rb   ú-)rc   Ú*)re   ú/)Úpowú**zleft_fix,right_fix)r?   rB   )rF   rH   c                 óR  — |                      |¦  «        }|                      |¦  «        }d„ }t          dd¦  «        5   |||||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «          |||||¦  «         t          j        ¦   «           |||||¦  «         d S )Nc                 ó&  — |dk    rt          j        | ¦  «        } t          t          |¦  «        }t	          j        || | d¬¦  «        }t	          j        || | d¬¦  «        }t          j        ||¦  «         t	          j        ||||d¦  «        }|rJ ‚d S )Nr�   T©Úuse_numexprFr†   )	r   ÚabsrP   rV   rW   r†   rt   Úassert_numpy_array_equalrˆ   )ÚleftÚrightrM   Úop_strr[   r]   r\   s          r   Útestitz/TestExpressions.test_binary_ops.<locals>.testitÜ   s•   € Ø˜ŠˆÝ”v˜d‘|”|�å� 6Ñ*Ô*ˆBõ ”] 2 t¨T¸tÐDÑDÔDˆFÝ”} R¨¨tÀÐGÑGÔGˆHÝÔ'¨°Ñ9Ô9Ð9åÔ*¨2¨v°u¸eÀZÑPÔPˆFØÐÐ�:ÐÐr   rT   Fr/   ©rn   r   rW   Úset_numexpr_threads)	ry   rz   rM   r™   Úleft_fixÚ	right_fixr—   r˜   rš   s	            r   Útest_binary_opszTestExpressions.test_binary_opsÐ   s  € ð ×&Ò& xÑ0Ô0ˆØ×'Ò'¨	Ñ2Ô2ˆð	ð 	ð 	õ Ð1°5Ñ9Ô9ð 	0ð 	0ØˆF�4˜ ¨Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0õ 	Ô  Ñ#Ô#Ð#Øˆˆt�U˜F FÑ+Ô+Ð+ÝÔ Ñ"Ô"Ð"Øˆˆt�U˜F FÑ+Ô+Ð+Ð+Ð+s   ¾AÁAÁ Ac                 óH  ‡‡‡— |                      |¦  «        Š|                      |¦  «        Šˆˆˆfd„}t          dd¦  «        5   |¦   «          d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «          |¦   «          t          j        ¦   «           |¦   «          d S )Nc                  óâ   •— ‰dz   } ‰dz   }‰}t          j        |‰| d¬¦  «        }t          j        |‰| d¬¦  «        }t          j        ||¦  «         t          j        ||‰|d¦  «        }|rJ ‚d S )Nr/   Tr“   Fr†   )rW   r†   rt   r–   rˆ   )Úf12Úf22r[   r]   r\   r�   r—   r˜   s        €€€r   rš   z3TestExpressions.test_comparison_ops.<locals>.testitù   s†   ø€ Ø˜‘(ˆCØ˜!‘)ˆCàˆBå”] 2 t¨S¸dÐCÑCÔCˆFÝ”} R¨¨sÀÐFÑFÔFˆHÝÔ'¨°Ñ9Ô9Ð9åÔ*¨2¨r°5¸#¸zÑJÔJˆFØÐÐ�:ÐÐr   rT   Fr/   r›   )ry   rz   r�   r�   rž   rš   r—   r˜   s     `   @@r   Útest_comparison_opsz#TestExpressions.test_comparison_opsò   sÿ   øøø€ ð ×&Ò& xÑ0Ô0ˆØ×'Ò'¨	Ñ2Ô2ˆð	ð 	ð 	ð 	ð 	ð 	ð 	õ Ð1°5Ñ9Ô9ð 	ð 	ØˆF‰HŒHˆHð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	Ô  Ñ#Ô#Ð#Øˆ‰ŒˆÝÔ Ñ"Ô"Ð"Øˆ‰Œˆˆˆs   ÁAÁA Á#A Úcond)r   r   r*   r-   c                 ó  ‡‡— |                      |¦  «        Šˆˆfd„}t          dd¦  «        5   |¦   «          d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «          |¦   «          t          j        ¦   «           |¦   «          d S )Nc                  ó2  •— t          j        ‰j        t           j        ¬¦  «        } |                      ‰¦  «         t          j        | ‰j        ‰j        dz   ¦  «        }t          j        | ‰j        ‰j        dz   ¦  «        }t          j	        ||¦  «         d S )N)r   r/   )
r   Úemptyr6   Úbool_ÚfillrW   Úwherers   rt   r–   )Úcr]   r\   r¥   rY   s      €€r   rš   z*TestExpressions.test_where.<locals>.testit  sy   ø€ Ý”˜œ­¬Ð2Ñ2Ô2ˆAØ�FŠF�4‰LŒLˆLÝ”Z  2¤9¨b¬i¸!©mÑ<Ô<ˆFÝ”x  2¤9¨b¬i¸!©mÑ<Ô<ˆHÝÔ'¨°Ñ9Ô9Ð9Ð9Ð9r   rT   Fr/   r›   )ry   rz   r¥   r_   rš   rY   s     `  @r   Ú
test_wherezTestExpressions.test_where  sæ   øø€ ð ×$Ò$ WÑ-Ô-ˆð	:ð 	:ð 	:ð 	:ð 	:ð 	:õ Ð1°5Ñ9Ô9ð 	ð 	ØˆF‰HŒHˆHð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	Ô  Ñ#Ô#Ð#Øˆ‰ŒˆÝÔ Ñ"Ô"Ð"Øˆ‰Œˆˆˆs   ®AÁA	ÁA	zop_str,opname))rŽ   re   )z//rf   )r�   r�   c                 óv  — t          t          j                             d¦  «                             d¦  «        dk    t          j                             d¦  «                             d¦  «        dk    dœ¦  «        }d|› d�}t	          t
          |¦  «        }t          j        |¦  «        }t          j	        t          |¬¦  «        5   |||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          |¬¦  «        5   ||j        |j        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          |¬¦  «        5   ||j        d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          |¬¦  «        5   |d	|j        ¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          |¬¦  «        5   |d	|¦  «         d d d ¦  «         n# 1 swxY w Y   t          j	        t          |¬¦  «        5   ||d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr	   é
   ç      à?©ÚaÚbz
operator 'z!' not implemented for bool dtypes©ÚmatchTF)r   r   r   r   rP   rV   ÚreÚescapeÚpytestÚraisesÚNotImplementedErrorr²   r³   )ry   r™   rM   rY   Úmsgrj   Úerr_msgs          r   Ú!test_bool_ops_raise_on_arithmeticz1TestExpressions.test_bool_ops_raise_on_arithmetic"  s•  € õ å”Y×*Ò*¨1Ñ-Ô-×4Ò4°RÑ8Ô8¸3Ò>Ý”Y×*Ò*¨1Ñ-Ô-×4Ò4°RÑ8Ô8¸3Ò>ðð ñ
ô 
ˆð E˜6ÐDÐDÐDˆÝ•H˜fÑ%Ô%ˆÝ”)˜C‘.”.ˆåŒ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆb�"‰IŒIˆIð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆbŒd�B”D‰MŒMˆMð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆbŒd�D‰MŒMˆMð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆe�R”T‰NŒNˆNð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆe�R‰LŒLˆLð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ Œ]Õ.°gÐ>Ñ>Ô>ð 	ð 	ØˆAˆb�$‰KŒKˆKð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	sl   ÃCÃC"Ã%C"ÄD'Ä'D+Ä.D+ÅE+Å+E/Å2E/ÆF/Æ/F3Æ6F3ÇG.Ç.G2Ç5G2ÈH.È.H2È5H2))r‡   ra   )r�   rc   )rŒ   rb   c                 ó–  — d}t          t          j                             d¦  «                             |¦  «        dk    t          j                             d¦  «                             |¦  «        dk    dœ¦  «        }ddddœ}d	d
ddœ}t	          t
          |¦  «        }t	          t
          |||                  ¦  «        }	|dk    rd S d}
t          dd¬¦  «        }|r0|dv r,t          |j        ¦  «        t          d¦  «        k     rt          nd }| 
                    ¦   «         5 }|                     t          dd¦  «         t          dd¦  «        5  t          j        ||
¬¦  «        5   |||¦  «        } |	||¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||
¬¦  «        5   ||j        |j        ¦  «        } |	|j        |j        ¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||
¬¦  «        5   ||j        d¦  «        } |	|j        d¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||
¬¦  «        5   |d|j        ¦  «        } |	d|j        ¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||
¬¦  «        5   |d|¦  «        } |	d|¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        ||
¬¦  «        5   ||d¦  «        } |	|d¦  «        }t          j        ||¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nr¯   r	   r°   r±   ú|ú&ú^)r‡   r�   rŒ   Úor_Úand_Úxor)r¿   rÀ   rÁ   rŒ   z$operator is not supported by numexprÚnumexprÚignore)Úerrors>   r�   r‡   z2.13.1rh   é   rT   Tr´   F)r   r   r   r   rP   rV   r   r   Ú__version__ÚUserWarningro   rp   rW   r   rt   Úassert_produces_warningÚassert_frame_equalr²   r³   Úassert_series_equal)ry   r™   rM   r{   ÚnrY   ÚsubsÚ	sub_funcsrj   Úfer»   ÚneÚwarningr|   ÚrÚes                   r   Ú test_bool_ops_warn_on_arithmeticz0TestExpressions.test_bool_ops_warn_on_arithmeticC  sÐ  € ð ˆÝå”Y×*Ò*¨1Ñ-Ô-×4Ò4°QÑ7Ô7¸#Ò=Ý”Y×*Ò*¨1Ñ-Ô-×4Ò4°QÑ7Ô7¸#Ò=ðð ñ
ô 
ˆð ˜s¨Ð-Ð-ˆØ f°5Ð9Ð9ˆ	å•H˜fÑ%Ô%ˆÝ•X˜y¨¨f¬Ô6Ñ7Ô7ˆà�SŠ=ˆ=àˆFà4ˆÝ'¨	¸(ÐCÑCÔCˆð ðà˜*Ð$Ð$Ý˜œÑ'Ô'­'°(Ñ*;Ô*;Ò;Ð;õ ˆKð ð 	ð × Ò Ñ"Ô"ð 	0 aØ�IŠI•d˜O¨QÑ/Ô/Ð/ÝÐ 5°tÑ<Ô<ð 0ð 0ÝÔ/°¸sÐCÑCÔCð 0ð 0Ø˜˜"˜b™	œ	�AØ˜˜2˜r™
œ
�AÝÔ)¨!¨QÑ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0õ
 Ô/°¸sÐCÑCÔCð 1ð 1Ø˜˜"œ$ ¤™œ�AØ˜˜2œ4 ¤™œ�AÝÔ*¨1¨aÑ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1õ
 Ô/°¸sÐCÑCÔCð 1ð 1Ø˜˜"œ$ ™œ�AØ˜˜2œ4 ™œ�AÝÔ*¨1¨aÑ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1õ
 Ô/°¸sÐCÑCÔCð 1ð 1Ø˜˜% ¤™œ�AØ˜˜5 "¤$™œ�AÝÔ*¨1¨aÑ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1õ
 Ô/°¸sÐCÑCÔCð 0ð 0Ø˜˜% ™œ�AØ˜˜5 "™œ�AÝÔ)¨!¨QÑ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0õ
 Ô/°¸sÐCÑCÔCð 0ð 0Ø˜˜"˜d™œ�AØ˜˜2˜t™œ�AÝÔ)¨!¨QÑ/Ô/Ð/ð0ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0ð50ð 0ð 0ñ 0ô 0ð 0ð 0ð 0ð 0ð 0ð 0øøøð 0ð 0ð 0ð 0ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0ð 	0ð 	0s  Ä"-N>ÅN&Å&.F ÆN&Æ F$Æ$N&Æ'F$Æ(N&ÇAHÈN&ÈHÈN&ÈHÈN&È08I4É(N&É4I8É8N&É;I8É<N&Ê8KËN&ËKËN&Ë KË!N&Ë:.L4Ì(N&Ì4L8Ì8N&Ì;L8Ì<N&Í.NÎN&ÎNÎN&ÎNÎN&ÎN>Î&N*	Î*N>Î-N*	Î.N>Î>OÏOztest_input,expected)r   r/   r	   Úaa)r²   r³   r¬   r   )r   r²   r   )r   é   r	   r×   )r   r   r	   r×   )r   r/   r/   Úbbc                 óž   — |j         d d …ddgf                              |j         d d …ddgf         ¦  «        }t          j        ||¦  «         d S )Nr²   r   )ÚlocrÒ   rt   rÌ   )ry   Ú
test_inputr\   r]   s       r   Útest_bool_ops_column_name_dtypez/TestExpressions.test_bool_ops_column_name_dtypeƒ  sX   € ð. ”    C¨ >Ð 1Ô2×5Ò5°j´nÀQÀQÀQÈÈgÈÐEVÔ6WÑXÔXˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   Úaxis)r   r/   c                 ó¼  — |}|dk    r|j         dd d …f         }n|j         d d …df         }|                     ¦   «         5 }|                     t          dd¦  «         t	          ||¦  «        }t          dd¦  «        5   |||¬¦  «        }	d d d ¦  «         n# 1 swxY w Y    |||¬¦  «        }
t          j        |	|
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr/   r   rh   rT   F)rÞ   )rx   ro   rp   rW   rP   r   rt   rÌ   )ry   rÞ   r`   r   r{   rY   rZ   r|   Úop_funcr\   r]   s              r   Útest_frame_series_axisz&TestExpressions.test_frame_series_axis�  su  € ð ˆØ�1Š9ˆ9Ø”G˜A˜q˜q˜q˜D”MˆEˆEà”G˜A˜A˜A˜q˜D”MˆEà× Ò Ñ"Ô"ð 		4 aØ�IŠI•d˜O¨QÑ/Ô/Ð/å˜b %Ñ(Ô(ˆGåÐ 5°uÑ=Ô=ð 5ð 5Ø"˜7 5¨tÐ4Ñ4Ô4�ð5ð 5ð 5ñ 5ô 5ð 5ð 5ð 5ð 5ð 5ð 5øøøð 5ð 5ð 5ð 5ð �W˜U¨Ð.Ñ.Ô.ˆFÝÔ! (¨FÑ3Ô3Ð3ð		4ð 		4ð 		4ñ 		4ô 		4ð 		4ð 		4ð 		4ð 		4ð 		4ð 		4ð 		4øøøð 		4ð 		4ð 		4ð 		4ð 		4ð 		4s6   Á =CÁ=BÂCÂB	ÂCÂB	Â%CÃCÃCr[   )Ú__mod__Ú__rmod__Ú__floordiv__Ú__rfloordiv__ÚscalaréûÿÿÿrÈ   c                 óŽ  — |                      ¦   «         5 }|                     t          dd¦  «         t          j        dd¦  «        } ||¦  «        }t          ||¦  «        } ||¦  «        }	t          dd¦  «        5   ||¦  «        }
d d d ¦  «         n# 1 swxY w Y   t          j        |	|
¦  «         t          |¦  «        D ]g\  }}|t          k    r|	j        |df         }n|	|         }	  t          t          |¦  «        |¦  «        |¦  «        }
||
k    sJ ‚ŒX# t          $ r Y Œdw xY w	 d d d ¦  «         d S # 1 swxY w Y   d S )Nrh   r   iÎÿÿÿé2   rT   F)ro   rp   rW   r   ÚarangerP   r   rt   ru   Ú	enumerater   rx   ÚintÚZeroDivisionError)ry   r[   Úbox_with_arrayræ   r{   r|   ÚdataÚobjÚmethodr]   r\   r}   ÚelemÚscalar_results                 r   Ú,test_python_semantics_with_numexpr_installedz<TestExpressions.test_python_semantics_with_numexpr_installedµ  sô  € ð × Ò Ñ"Ô"ð 	5 aØ�IŠI•d˜O¨QÑ/Ô/Ð/Ý”9˜S "Ñ%Ô%ˆDØ �. Ñ&Ô&ˆCÝ˜S "Ñ%Ô%ˆFØ�V˜F‘^”^ˆFõ  Ð 5°uÑ=Ô=ð *ð *Ø!˜6 &™>œ>�ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *õ ŒO˜F HÑ-Ô-Ð-õ % T™?œ?ð 
5ð 
5‘��4Ø!¥YÒ.Ð.Ø$*¤K°°1°Ô$5�M�Mà$*¨1¤I�Mð5Ø5�w¥s¨4¡y¤y°"Ñ5Ô5°fÑ=Ô=�Hð )¨HÒ4Ð4Ð4Ð4Ð4øõ )ð ð ð Ø�Dðøøøð
5ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5ð 	5ð 	5s[   •A(D:Á=BÂ	D:ÂB	ÂD:ÂB	ÂAD:Ã-&DÄ	D:Ä
D)Ä&D:Ä(D)Ä)D:Ä:D>ÅD>N)rU   Ú
__module__Ú__qualname__ÚstaticmethodÚboolÚstrr^   r¸   ÚmarkÚparametrizer~   r„   r‹   ÚfilterwarningsrŸ   r¤   r­   r½   rÖ   r   rÝ   rá   rô   r   r   r   rK   rK   f   s‘  € € € € € àð  ð  ¨sð  ð  ð  ñ „\ð ð „[×ÒØð	
ð 	
ð 	
ñô ð „[×Ò˜V d¨E ]Ñ3Ô3Ø„[×ÒØÐDÐDÐDñô ð2ð 2ñô ñ 4Ô3ñô ð 2ð$ „[×ÒØð	
ð 	
ð 	
ñô ð „[×Ò˜V d¨E ]Ñ3Ô3ðFð Fñ 4Ô3ñô ðFð2ð ð ð  „[×ÒÐ TÑUÔUØ„[×ÒØØSÐSÐSñô ð „[×ÒØÐ4Ð6WÐXñô ð,ð ,ñô ñ	ô ñ VÔUð,ð4 „[×ÒØÐ4Ð6WÐXñô ðð ñô ðð2 „[×Ò˜V d¨E ]Ñ3Ô3Ø„[×Ò˜YÐ(RÐ(RÐ(RÑSÔSðð ñ TÔSñ 4Ô3ðð$ „[×ÒØÐNÐNÐNñô ðð ñô ðð< „[×ÒØÐCÐCÐCñô ð;0ð ;0ñô ð;0ðz „[×ÒØð �	Ø$�_�_ o o oÐ6Ð@XÐ@XÐ@Xðñ ô ð �	˜E 5˜>¨E°5¨>Ð:ÀSÈ'ÀNÐSÑSÔSð	ð �	Ø$�_�_ o o o°°°ÐGØ4Ð4Ð4ðñ ô ð �	Ø˜U�^ e¨U ^°e¸U°^ÐDØ  '˜Nðñ ô ð	ð	
ñô ð*0ð 0ñ+ô ð*0ð
 „[×ÒØÐDñô ð „[×Ò˜V VÑ,Ô,ð4ð 4ñ -Ô,ñô ð4ð( „[×ÒØð	
ð 	
ð 	
ñô ð „[×Ò˜X¨¨A wÑ/Ô/ð5ð 5ñ 0Ô/ñô ð5ð 5ð 5r   rK   )#rV   r¶   Únumpyr   r¸   Úpandas.compat._optionalr   Úpandasr   Úpandas._testingÚ_testingrt   Úpandas.core.apir   Úpandas.core.computationr   rW   Úpandas.util.versionr   r_   r   r   r*   r-   r4   r7   r:   r?   rB   rF   rH   rú   ÚskipifÚUSE_NUMEXPRrK   r   r   r   ú<module>r     s@  ðØ €€€Ø 	€	€	€	à Ð Ð Ð Ø €€€à >Ð >Ð >Ð >Ð >Ð >à !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð Ø %Ð %Ð %Ð %Ð %Ð %Ø 7Ð 7Ð 7Ð 7Ð 7Ð 7Ø 'Ð 'Ð 'Ð 'Ð 'Ð 'ð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðWð Wñ „ðWð
 „ðð ñ „ðð „ð"ð "ñ „ð"ð „ð#ð #ñ „ð#ð „ð"ð "ñ „ð"ð „ð#ð #ñ „ð#ð „×Ò˜Ô(Ð(Ð1DÐÑEÔEðt5ð t5ð t5ð t5ð t5ñ t5ô t5ñ FÔEðt5ð t5ð t5r   