§
    ªöÉg°7  ã                   ó(  — 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mZ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)Úoption_context)Ú	DataFrameÚIndexÚSeries)Úexpressionsc                  ó    — t          t          j                             d¦  «                             d¦  «        t          d¦  «        d¬¦  «        S )Né   ©i'  é   ÚABCDÚfloat64©ÚcolumnsÚdtype©r   ÚnpÚrandomÚdefault_rngÚstandard_normalÚlist© ó    úi/var/www/html/nodeJS/PythonScripts/venv3.11/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   ÚcopyÚastype©r   s    r   Ú_mixedr+   #   sp   € åà˜”×!Ò!Ñ#Ô#Ø˜”×#Ò# IÑ.Ô.Ø˜”×#Ò# GÑ,Ô,Ø˜”×#Ò# GÑ,Ô,ð		
ð 	
ñô ð r   c                 óð   — t          | d                              ¦   «         | d                              d¦  «        | d                              d¦  «        | d                              d¦  «        dœ¦  «        S r   r'   ©r   s    r   Ú_mixed2r.   /   sp   € åà˜”×"Ò"Ñ$Ô$Ø˜”×$Ò$ 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   Ú_integerr5   ;   sM   € åÝ
Œ	×Ò˜aÑ Ô ×)Ò)¨!¨S°zÐ)ÑBÔBÝ�V‘”Øðñ ô ð r   c                 ó–   — | t           j                             d¦  «                             ddt          j        | ¦  «        ¬¦  «        z  S )Nr	   r   r1   )r   r   r   r4   Úshape)r5   s    r   Ú_integer_integersr8   D   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	   r0   r   )ée   r   r1   r   r$   r   r3   r   r   r   Ú	_integer2r;   J   sM   € åÝ
Œ	×Ò˜aÑ Ô ×)Ò)¨!¨S°xÐ)Ñ@Ô@Ý�V‘”Øðñ ô ð r   c                 ó@   — | d         j                              ¦   «         S ©Nr    ©Úvaluesr(   r*   s    r   Ú_arrayr@   S   ó   € à�#Œ;Ô×"Ò"Ñ$Ô$Ð$r   c                 ó@   — | d         j                              ¦   «         S r=   r>   r-   s    r   Ú_array2rC   X   ó   € à�3Œ<Ô×#Ò#Ñ%Ô%Ð%r   c                 ó@   — | d         j                              ¦   «         S ©Nr%   r>   )r+   s    r   Ú_array_mixedrG   ]   rA   r   c                 ó@   — | d         j                              ¦   «         S rF   r>   )r.   s    r   Ú_array_mixed2rI   b   rD   r   znot using numexpr)Úreasonc                   óB  — 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,eeeg¦  «        ej         	                    d-d.d/g¦  «        d0„ ¦   «         ¦   «         ¦   «         Zd1S )2Ú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ÚyrN   s     €r   ú<lambda>z)TestExpressions.call_op.<locals>.<lambda>l   s   ø€ Ð0�g a¨Ñ0Ô0°Ñ3Ô3€ r   úcompute.use_numexprF)Ú__name__rQ   Úoperatorr   ÚexprÚget_test_result)ÚdfÚotherrM   rN   ÚopÚexpectedÚresults      `   r   Úcall_opzTestExpressions.call_opi   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)r5   r;   r8   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   rf   c              3   ó,   K  — | ]}|j         d k    V — ŒdS )ÚfN)Úkind)Ú.0rR   s     r   ú	<genexpr>z6TestExpressions.test_run_arithmetic.<locals>.<genexpr>�   s(   è è € ÐIÐI¨Q˜1œ6 Sš=ÐIÐIÐIÐIÐIÐIr   rk   )ÚgetfixturevalueÚcontextÚsetattrrX   r_   ÚallÚdtypesr?   ÚtmÚassert_equalÚrangeÚlenr   Úilocr   rl   )ÚselfÚrequestr`   rM   ra   ÚmonkeypatchrZ   Úmr^   r]   Úis              r   Útest_run_arithmeticz#TestExpressions.test_run_arithmeticy   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.
        rU   Fr0   Nri   r   Tz Did not use numexpr as expected.rb   )ro   rV   r   r(   rp   rq   rX   Úset_test_moder_   rY   rt   ru   rv   rw   r   rx   )ry   rz   r`   rM   Úcomparison_opr{   rZ   ra   r[   r|   r^   r]   Úused_numexprr}   Úbinary_comps                  r   Útest_run_binaryzTestExpressions.test_run_binary›   sÿ  € ð& ×$Ò$ WÑ-Ô-ˆØÔ&ˆÝÐ1°5Ñ9Ô9ð 	"ð 	"Ø—G’G‘I”I ‘MˆEð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð × Ò Ñ"Ô"ð 	F aØ�IŠI•d˜O¨QÑ/Ô/Ð/ÝÔ˜tÑ$Ô$Ð$à#Ÿ|š|¨B°°t¸UÑCÔCÑˆF�HåÔ/Ñ1Ô1ˆLØÐCÐ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ÁAÁ0C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   rX   Ú_can_use_numexprrW   rb   )ry   ÚarrayÚarray2r^   s       r   Útest_invalidzTestExpressions.test_invalidÁ   sÁ   € Ý”	×%Ò% aÑ(Ô(×8Ò8¸ÑCÔCˆÝ”×&Ò& qÑ)Ô)×9Ò9¸#Ñ>Ô>ˆõ Ô&¥x¤|°T¸5À%ÈÑTÔTˆØÐÐÐõ Ô&¥x¤|°S¸&À&È*ÑUÔUˆØÐÐÐõ Ô&¥x¤|°S¸%ÀÈÑTÔTˆØˆˆˆˆˆr   z2ignore:invalid value encountered in:RuntimeWarningzopname,op_str))rb   r‡   )rc   ú-)rd   Ú*)rf   ú/)Úpowú**zleft_fix,right_fix)r@   rC   )rG   rI   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   ÚabsrQ   rW   rX   r†   rt   Úassert_numpy_array_equalrˆ   )ÚleftÚrightrN   Ú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   rU   Fr0   ©ro   r   rX   Úset_numexpr_threads)	ry   rz   rN   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 )Nr0   Tr“   Fr†   )rX   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   rU   Fr0   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   r0   )
r   Úemptyr7   Úbool_ÚfillrX   Úwherer?   rt   r–   )Úcr^   r]   r¥   rZ   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   rU   Fr0   r›   )ry   rz   r¥   r`   rš   rZ   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Ž   rf   )z//rg   )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   rQ   rW   ÚreÚescapeÚpytestÚraisesÚNotImplementedErrorr²   r³   )ry   r™   rN   rZ   Úmsgrk   Ú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‡   rb   )r�   rd   )rŒ   rc   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 t          j        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 ¦  «         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Œ   Té   )Úmin_elementsF)r   r   r   r   rQ   rW   rt   r”   Úassert_produces_warningÚassert_frame_equalr²   r³   Úassert_series_equal)ry   r™   rN   ÚnrZ   ÚsubsÚ	sub_funcsrk   ÚfeÚrÚes              r   Ú test_bool_ops_warn_on_arithmeticz0TestExpressions.test_bool_ops_warn_on_arithmeticD  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åŒ^˜D¨qÐ1Ñ1Ô1ð 	,ð 	,ÝÔ+Ñ-Ô-ð ,ð ,Ø�A�b˜"‘I”I�Ø�B�r˜2‘J”J�ÝÔ% a¨Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,õ
 Ô+Ñ-Ô-ð -ð -Ø�A�b”d˜BœD‘M”M�Ø�B�r”t˜RœT‘N”N�ÝÔ& q¨!Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -õ
 Ô+Ñ-Ô-ð -ð -Ø�A�b”d˜D‘M”M�Ø�B�r”t˜T‘N”N�ÝÔ& q¨!Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -õ
 Ô+Ñ-Ô-ð -ð -Ø�A�e˜RœT‘N”N�Ø�B�u˜bœd‘O”O�ÝÔ& q¨!Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -õ
 Ô+Ñ-Ô-ð ,ð ,Ø�A�e˜R‘L”L�Ø�B�u˜b‘M”M�ÝÔ% a¨Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,õ
 Ô+Ñ-Ô-ð ,ð ,Ø�A�b˜$‘K”K�Ø�B�r˜4‘L”L�ÝÔ% a¨Ñ+Ô+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð5	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,së   ÃL#Ã1.D+ÄL#Ä+D/	Ä/L#Ä2D/	Ä3L#Å	AFÆL#ÆF	ÆL#ÆF	ÆL#Æ58G9Ç-L#Ç9G=	Ç=L#È G=	ÈL#È8IÉL#ÉI	ÉL#É"I	É#L#É9.J3Ê'L#Ê3J7	Ê7L#Ê:J7	Ê;L#Ë.LË?L#ÌL	ÌL#ÌL	ÌL#Ì#L'Ì*L'ztest_input,expected)r   r0   r	   Úaa)r²   r³   r¬   r   )r   r²   r   )r   é   r	   rÐ   )r   r   r	   rÐ   )r   r0   r0   Úbbc                 óž   — |j         d d …ddgf                              |j         d d …ddgf         ¦  «        }t          j        ||¦  «         d S )Nr²   r   )ÚlocÚnert   rÇ   )ry   Ú
test_inputr]   r^   s       r   Útest_bool_ops_column_name_dtypez/TestExpressions.test_bool_ops_column_name_dtypey  sX   € ð. ”    C¨ >Ð 1Ô2×5Ò5°j´nÀQÀQÀQÈÈgÈÐEVÔ6WÑXÔXˆÝ
Ô˜f hÑ/Ô/Ð/Ð/Ð/r   Úaxis)r   r0   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 )Nr0   r   ri   rU   F)rØ   )rx   rp   rq   rX   rQ   r   rt   rÇ   )ry   rØ   ra   r   r{   rZ   r[   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__ÚboxÚ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 )Nri   r   iÎÿÿÿé2   rU   F)rp   rq   rX   r   ÚarangerQ   r   rt   ru   Ú	enumerater   rx   ÚintÚZeroDivisionError)ry   r\   rà   rá   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Ø�#�d‘)”)ˆCÝ˜S "Ñ%Ô%ˆFØ�V˜F‘^”^ˆFõ  Ð 5°uÑ=Ô=ð *ð *Ø!˜6 &™>œ>�ð*ð *ð *ñ *ô *ð *ð *ð *ð *ð *ð *øøøð *ð *ð *ð *õ ŒO˜F HÑ-Ô-Ð-õ % T™?œ?ð 
5ð 
5‘��4Ø�)Ò#Ð#Ø$*¤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)rV   Ú
__module__Ú__qualname__ÚstaticmethodÚboolÚstrr_   r·   ÚmarkÚparametrizer~   r„   r‹   ÚfilterwarningsrŸ   r¤   r­   r¼   rÏ   r   r×   rÛ   r   r   rî   r   r   r   rL   rL   g   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,ðd „[×ÒØð �	Ø$�_�_ 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ð( „[×ÒØð	
ð 	
ð 	
ñô ð „[×Ò˜U Y°¸Ð$>Ñ?Ô?Ø„[×Ò˜X¨¨A wÑ/Ô/ð5ð 5ñ 0Ô/ñ @Ô?ñô ð5ð 5ð 5r   rL   )!rW   rµ   Únumpyr   r·   Úpandasr   Úpandas._testingÚ_testingrt   Úpandas.core.apir   r   r   Úpandas.core.computationr   rX   r`   r   r   r+   r.   r5   r8   r;   r@   rC   rG   rI   rô   ÚskipifÚUSE_NUMEXPRrL   r   r   r   ú<module>rÿ      s>  ðØ €€€Ø 	€	€	€	à Ð Ð Ð Ø €€€à !Ð !Ð !Ð !Ð !Ð !Ø Ð Ð Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð
 8Ð 7Ð 7Ð 7Ð 7Ð 7ð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðð ñ „ðð „ðWð Wñ „ðWð
 „ðð ñ „ðð „ð%ð %ñ „ð%ð „ð&ð &ñ „ð&ð „ð%ð %ñ „ð%ð „ð&ð &ñ „ð&ð „×Ò˜Ô(Ð(Ð1DÐÑEÔEðj5ð j5ð j5ð j5ð j5ñ j5ô j5ñ FÔEðj5ð j5ð j5r   