Ë
    ¤eh; ã                  óø  — U d dl mZ d dlmZ d dlmZ d dlZd dlZd dl	Z	d dl
mZ d dlmZmZmZ d dlmc mZ d dlmZmZmZmZ d dlZd dlmZmZmZmZmZm Z  d dl!m"Z# d d	l$m%Z%m&Z& d d
l'm(Z( d dl)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/ d dl0m1Z1m2Z2m3Z3m4Z4m5Z5 d dl6m7Z7  e	jp                  d„ e(D «       ¬«      d„ «       Z9 e	jp                  e%jt                  ¬«      d„ «       Z;d„ Z< e	jp                   e= e>d«      «      g d¢¬«      d„ «       Z?e?Z@e?ZAe	jp                  d„ «       ZB G d„ d«      ZC G d„ d«      ZDd„ ZE G d„ d«      ZF G d „ d!«      ZG G d"„ d#«      ZHej’                  j•                  d$«      j—                  d%«      ZL G d&„ d'«      ZM ejœ                  d(«      d)„ «       ZO ejœ                  d(«      e	j                   j£                  d*d+«      d,„ «       «       ZR ejœ                  d(«      d-„ «       ZS ejœ                  d(«      d.„ «       ZTe,e&jª                  e+d/œZVd0eWd1<   e	j                   j£                  d2e(«      e	j                   j£                  d3eV«      d4„ «       «       ZXd5„ ZYd6„ ZZe	j                   j£                  d7g d8¢«      d9„ «       Z[d:„ Z\d;„ Z]d<„ Z^d=„ Z_e	j                   j£                  d>d?«      e	j                   j£                  d@e`eaf«      e	j                   j£                  dAe`eaf«      dB„ «       «       «       Zbe	j                   j£                  dCdDdEg«      dF„ «       ZcdG„ Zde	j                   j£                  dHdIdJg«      dK„ «       ZedL„ Zfe	j                   j£                  dH e7jÎ                  «       «      dM„ «       ZhdN„ Zi G dO„ dP«      Zjy)Qé    )Úannotations)Úreduce)ÚproductN)ÚPY312)ÚNumExprClobberingErrorÚPerformanceWarningÚUndefinedVariableError)Úis_boolÚis_floatÚis_list_likeÚ	is_scalar)Ú	DataFrameÚIndexÚSeriesÚ
date_rangeÚperiod_rangeÚtimedelta_range)ÚexprÚpytables)ÚENGINES)ÚBaseExprVisitorÚPandasExprVisitorÚPythonExprVisitor)ÚNUMEXPR_INSTALLEDÚUSE_NUMEXPR)ÚARITH_OPS_SYMSÚSPECIAL_CASE_ARITH_OPS_SYMSÚ_binary_math_opsÚ_binary_ops_dictÚ_unary_math_ops)ÚDEFAULT_GLOBALSc              #  óæ   K  — | ]i  }t        j                  |t         j                  j                  |d k(  xr t         dt        › dt
        › �¬«      t        j                  d «      g¬«      –— Œk y­w)Únumexprznumexpr enabled->z, installed->©Úreason©ÚmarksN)ÚpytestÚparamÚmarkÚskipifr   r   ÚtdÚ
skip_if_no)Ú.0Úengines     ú`/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/pandas/tests/computation/test_eval.pyú	<genexpr>r1   <   s{   è ø€ ò ð ô 	�‰Øä—‘×"Ñ"Ø˜iÑ'Ò;´¨OØ.¬{¨mð <"Ü"3Ð!4ð6ð #ó ô
 —‘˜iÓ(ð÷
	
ð 
	
ñùs   ‚A/A1)Úparamsc                ó   — | j                   S ©N©r)   ©Úrequests    r0   r/   r/   ;   s   € ð" �=‰=Ðó    c                ó   — | j                   S r4   r5   r6   s    r0   Úparserr:   O   s   € à�=‰=Ðr8   c                óâ   — t         |   }t        |   j                  r
	  || |«      S  || |«      S # t        $ r5}t	        |«      j                  d«      rt        j                  cY d }~S ‚ d }~ww xY w)Nz6negative number cannot be raised to a fractional power)r   r   Úhas_neg_fracÚ
ValueErrorÚstrÚ
startswithÚnpÚnan)ÚlhsÚcmp1Úrhsr/   ÚcÚes         r0   Ú_eval_single_binrG   T   sm   € Ü˜Ñ€AÜˆv�×#Ò#ð	Ù�S˜#“;Ðñ ˆS�#‹;Ðøô ò 	Ü�1‹v× Ñ ØHôô —v‘v•Øûð	ús    ž0 °	A.¹)A)Á"A.Á(A)Á)A.é   )r   r   Ú	SeriesNaNÚDataFrameNaNÚfloat)r2   Úidsc           	     óF  — t        t        j                  j                  d«      j	                  d«      «      }t        j
                  ||dkD  <   t        t        j                  j                  d«      j	                  d«      «      t        t        j                  j                  d«      j	                  d«      «      t        ddt        j
                  t        j
                  dg«      |t        j                  j                  d«      j	                  «       f}|| j                     S )Né   )é
   rH   ç      à?rH   é   )r   r@   ÚrandomÚdefault_rngÚstandard_normalrA   r   r)   )r7   Únan_df1Úoptss      r0   rB   rB   c   sÑ   € ô
 œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓIÓJ€GÜŸV™V€GˆG�c‰MÑô 	”"—)‘)×'Ñ'¨Ó*×:Ñ:¸7ÓCÓDÜŒr�y‰y×$Ñ$ QÓ'×7Ñ7¸Ó:Ó;Ü��1”b—f‘fœbŸf™f aÐ(Ó)ØÜ
�	‰	×Ñ˜aÓ ×0Ñ0Ó2ð€Dð �—‘ÑÐr8   c                 ó    — d„ d„ d„ d„ d„ d„ dœS )Nc                ó^   — t        t        j                  | «      t        j                  ¬«      S ©N©Údtype)r   r@   ÚarangeÚint64©Úns    r0   ú<lambda>zidx_func_dict.<locals>.<lambda>|   s   € ”uœRŸY™Y q›\´·±Ô:€ r8   c                ó^   — t        t        j                  | «      t        j                  ¬«      S rY   )r   r@   r\   Úfloat64r^   s    r0   r`   zidx_func_dict.<locals>.<lambda>}   s   € ”uœRŸY™Y q›\´·±Ô<€ r8   c           
     ót   — t        t        dd| z   «      D �cg c]  }|› dt        |«      › �‘Œ c}«      S c c}w )Néa   Ú_)r   ÚrangeÚchr)r_   Úis     r0   r`   zidx_func_dict.<locals>.<lambda>~   s2   € ”u´u¸RÀÀaÁÓ7HÖI°!   1¤S¨£V HšoÒIÓJ€ ùÒIs   —5c                ó   — t        d| ¬«      S )Nú
2020-01-01©Úperiods)r   r^   s    r0   r`   zidx_func_dict.<locals>.<lambda>   s   € œ
 <¸Ô;€ r8   c                ó   — t        d| ¬«      S )Nz1 dayrk   )r   r^   s    r0   r`   zidx_func_dict.<locals>.<lambda>€   s   € œ¨¸Ô;€ r8   c                ó   — t        d| d¬«      S )Nrj   ÚD)rl   Úfreq)r   r^   s    r0   r`   zidx_func_dict.<locals>.<lambda>�   s   € ”| L¸!À#ÔF€ r8   )rh   ÚfÚsÚdtr,   Úp© ru   r8   r0   Úidx_func_dictrv   y   s    € ñ ;Ù<ÙJÙ;Ù;ÙFñð r8   c            
      óö  — e Zd Zej                  j                  dg d¢g d¢¬«      ej                  j                  dddgdd	g¬«      ej                  j                  d
ej                  «      d„ «       «       «       Zej                  j                  dej                  «      d„ «       Z
ej                  j                  dej                  «      d„ «       Zej                  j                  dddg«      ej                  j                  dddg«      d„ «       «       Zej                  j                  d e ee«      j!                  e«      «      «      d„ «       Zd„ Zd„ Zej,                  d„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zej                  j                  d eej>                  jA                  d«      jC                  d«      «       eej>                  jA                  d«      jE                  dd¬«      «       eej>                  jA                  d«      jC                  d«      d kD  «      g«      d!„ «       Z#ej                  j                  d e$ej>                  jA                  d«      jC                  d«      «       e$ej>                  jA                  d«      jE                  dd¬«      «       e$ej>                  jA                  d«      jC                  d«      d kD  «      g«      d"„ «       Z%d#„ Z&d$„ Z'ej                  j                  d%ejP                  ejR                  g«      ej                  j                  d&d'd(g«      d)„ «       «       Z*d*„ Z+ej                  j                  d+d,«      d-„ «       Z,d.„ Z-d/„ Z.d0„ Z/d1„ Z0d2„ Z1d3„ Z2y4)5ÚTestEvalrC   )z!=z==z<=z>=ú<ú>)ÚneÚeqÚleÚgeÚltÚgt)rL   Úcmp2rz   ry   r€   r   Úbinopc                óŒ  — |dk(  rO|dv rKd}t        j                  t        |¬«      5  d|› d|› d|› d�}	t        j                  |	||¬	«       d d d «       y t        ||||«      }
t        ||||«      }t        |
|||«      }d|› d|› d|› d�}	t        j                  |	||¬	«      }t        j                  ||«       y # 1 sw Y   y xY w)
NÚpython©ÚandÚorú"'BoolOp' nodes are not implemented©Úmatchú(lhs z rhs) z (lhs ú rhs)©r/   r:   )r(   ÚraisesÚNotImplementedErrorÚpdÚevalrG   ÚtmÚassert_equal)ÚselfrC   r�   r‚   rB   rD   r/   r:   ÚmsgÚexÚlhs_newÚrhs_newÚexpectedÚresults                 r0   Útest_complex_cmp_opszTestEval.test_complex_cmp_ops†   sÕ   € ð �XÒ %¨=Ñ"8Ø6ˆCÜ—‘Ô2¸#Ô>ñ :Ø˜T˜F &¨¨¨v°d°V¸5ÐA�Ü—‘˜ 6°&Õ9÷:ð ä" 3¨¨c°6Ó:ˆÜ" 3¨¨c°6Ó:ˆÜ# G¨U°G¸VÓDˆà�T�F˜&   v¨d¨V°5Ð9ˆÜ—‘˜ F°6Ô:ˆÜ
�‰˜ Õ)÷:ð ús   §%B:Â:CÚcmp_opc           	     ó.  — |dk  }|dk  }|dk(  rI|dv rEd}t        j                  t        |¬«      5  d|› d�}t        j                  |||¬«       d d d «       y d|› d�}d	j                  d
dg«      }|dv rLt        |«      sAt        j                  t        |¬«      5  t        j                  |||||dœ¬«       d d d «       y t        ||||«      }t        j                  |||¬«      }	t        j                  |	|«       y # 1 sw Y   y xY w# 1 sw Y   y xY w)Nr   r„   ©Úinúnot inú&'(In|NotIn)' nodes are not implementedr‰   úlhs ú rhsr�   ú|zvonly list-like( or dict-like)? objects are allowed to be passed to (DataFrame\.)?isin\(\), you passed a (`|')bool(`|')z'argument of type 'bool' is not iterable©rB   rD   ©r/   r:   Ú
local_dict)r(   rŽ   r�   r�   r‘   Újoinr   Ú	TypeErrorrG   r’   r“   )
r”   rœ   rB   rD   r/   r:   r•   r–   r™   rš   s
             r0   Útest_simple_cmp_opszTestEval.test_simple_cmp_ops�   s$  € à�A‰gˆØ�A‰gˆà�XÒ &Ð,<Ñ"<Ø:ˆCä—‘Ô2¸#Ô>ñ :Ø˜F˜8 4Ð(�Ü—‘˜ 6°&Õ9÷:ð à�F�8˜4Ð ˆØ�h‰hð"ð :ð	ó
ˆð Ð%Ñ%¬l¸3Ô.?Ü—‘œy°Ô4ñ Ü—‘ØØ!Ø!Ø'*°3Ñ7õ	÷ð ô (¨¨V°S¸&ÓAˆHÜ—W‘W˜R¨°vÔ>ˆFÜ�O‰O˜F HÕ-÷3:ð ú÷ð ús   ±C?ÂDÃ?DÄDÚopc           	     ó8  — |dk(  rI|dv rEd}t        j                  t        |¬«      5  d|› d�}t        j                  |||¬«       d d d «       y t        |«      rJt        |«      s?|dv r;|dk(  r6|dk(  r1t         j                  j                  d	¬
«      }	|j                  |	«       ddg}
d|› d�}dj                  ddg«      }t        |«      rE||
v rAt        j                  t        |¬«      5  t        j                  |||||dœ¬«       d d d «       y t        |«      rt        |«      rd„ ||fD «       \  }}t        ||||«      }t        |«      r| }n| }t        j                  |||¬«      }t        j                  ||«       y # 1 sw Y   y xY w# 1 sw Y   y xY w)Nr„   rž   r¡   r‰   z~(lhs rŒ   r�   Úpandasz]Looks like expected is negative, unclear whether expected is incorrect or result is incorrectr$   rŸ   r    r¤   zwonly list-like( or dict-like)? objects are allowed to be passed to (DataFrame\.)?isin\(\), you passed a (`|')float(`|')z(argument of type 'float' is not iterabler¥   r¦   c              3  óH   K  — | ]  }t        j                  |g«      –— Œ y ­wr4   )r@   Úarray©r.   Úxs     r0   r1   z3TestEval.test_compound_invert_op.<locals>.<genexpr>ë   s   è ø€ Ò>¨aœBŸH™H a SŸMÑ>ùs   ‚ ")r(   rŽ   r�   r�   r‘   r   r*   ÚxfailÚapplymarkerr¨   r   r©   rG   r’   Úassert_almost_equal)r”   r«   rB   rD   r7   r/   r:   r•   r–   r*   Ú
skip_theser™   rš   s                r0   Útest_compound_invert_opz TestEval.test_compound_invert_opÀ   s©  € à�XÒ "Ð(8Ñ"8Ø:ˆCÜ—‘Ô2¸#Ô>ñ :Ø˜b˜T Ð'�Ü—‘˜ 6°&Õ9÷:ð ô �SŒMÜ˜S”MØÐ&Ñ&Ø˜(Ò"Ø˜(Ò"ä—;‘;×$Ñ$ð?ð %ó ˆDð ×Ñ Ô%Ø˜HÐ%ˆ
Ø�b�T˜Ðˆà�h‰hð#ð ;ð	ó
ˆô �SŒ>˜b JÑ.Ü—‘œy°Ô4ñ Ü—‘ØØ!Ø!Ø'*°3Ñ7õ	÷ð ô ˜Œ~¤)¨C¤.Ù>°C¸°:Ô>‘��SÜ'¨¨R°°fÓ=ˆHÜ˜Ô"Ø'˜<‘à$˜9�Ü—W‘W˜R¨°vÔ>ˆFÜ×"Ñ" 8¨VÕ4÷]:ð ú÷4ð ús   §FÃ+FÆFÆFc                óÀ  — |}|dk(  rHd|› d|› d�}	d}
t        j                  t        |
¬«      5  t        j                  |	||¬«       d d d «       y t        ||||«      }t        ||||«      }|�e|�bd|› d|› d�}	d|› d|› d�}d	|› d
|› d�}t        |d||«      }|	||fD ]0  }t        j                  |||¬«      }t        j                  ||«       Œ2 y y y # 1 sw Y   y xY w)Nr„   r¢   ú mid r£   rˆ   r‰   r�   ú mid and mid r‹   ú mid) & (mid rŒ   ú&)r(   rŽ   r�   r�   r‘   rG   r’   r´   )r”   rC   r�   rB   ÚmidhsrD   r/   r:   ÚmidÚex1r•   r—   r˜   Úex2Úex3r™   r–   rš   s                     r0   Útest_chained_cmp_opzTestEval.test_chained_cmp_opô   s  € ð ˆØ�XÒØ˜˜˜e D 6¨Ð.ˆCØ6ˆCÜ—‘Ô2¸#Ô>ñ ;Ü—‘˜ F°6Õ:÷;àä" 3¨¨c°6Ó:ˆÜ" 3¨¨c°6Ó:ˆàÐ 7Ð#6Ø˜˜˜e D 6¨Ð.ˆCØ˜˜˜m¨D¨6°Ð6ˆCØ˜$˜˜}¨T¨F°%Ð8ˆCÜ'¨°°g¸vÓFˆHà˜C �oò 9�ÜŸ™ ¨F¸6ÔB�ä×&Ñ& v¨xÕ8ñ9ð $7Ð÷;àús   ®CÃCÚarith1c                ó  — d|› d�}t        j                  |||¬«      }t        ||||«      }t        j                  ||«       d|› d|› d�}t        j                  |||¬«      }t        ||||«      }		 |	j                  |«      \  }	}
|dk(  r:dd l}|j                  d|› d�«      }t        j                  |j                  |«       y t        d|› d�«      }t        j                  ||«       y # t        t        t        f$ r Y y w xY w)	Nr¢   r£   r�   z rhs r#   r   znlhs z ghs)r�   r‘   rG   r’   r´   Úalignr#   ÚevaluateÚvaluesr=   r©   ÚAttributeError)r”   rÂ   rB   rD   r/   r:   r–   rš   r™   ÚnlhsÚghsr{   s               r0   Útest_binary_arith_opszTestEval.test_binary_arith_ops  s  € ð �F�8˜4Ð ˆÜ—‘˜ F°6Ô:ˆÜ# C¨°°fÓ=ˆä
×Ñ˜v xÔ0Ø�F�8˜5  ¨Ð-ˆÜ—‘˜ F°6Ô:ˆÜ  V¨S°&Ó9ˆð	9ØŸ
™
 3›‰IˆD�#ð ˜Ò"Û$ð Ÿ;™;¨¨v¨h°dÐ';Ó<�ô
 ×&Ñ& v§}¡}°hÕ?ä %¨ x¨tÐ 4Ó5�Ü×&Ñ& v¨xÕ8øô# œI¤~Ð6ò 	ñ ð	ús   Á3C, Ã,DÄDc                ó¢  — d}t        j                  |||¬«      }||z  }t        j                  ||«       |dk(  rqdd l}|j                  d«      }t        |t        t        f«      r!t        j                  |j                  |«       y t        j                  ||j                  «       «       y t        |d||«      }t        j                  ||«       y )Nz	lhs % rhsr�   r#   r   zexpected % rhsú%)r�   r‘   r’   r´   r#   rÅ   Ú
isinstancer   r   rÆ   ÚitemrG   )	r”   rB   rD   r/   r:   r–   rš   r™   r{   s	            r0   Útest_moduluszTestEval.test_modulus0  s¥   € ØˆÜ—‘˜ F°6Ô:ˆØ˜‘9ˆÜ
×Ñ˜v xÔ0à�YÒÛ à—{‘{Ð#4Ó5ˆHÜ˜&¤9¬fÐ"5Ô6Ü×&Ñ& v§}¡}°hÕ?ä×&Ñ& v¨x¯}©}«Õ?ä'¨°#°s¸FÓCˆHÜ×"Ñ" 6¨8Õ4r8   c                ó  — d}|dk(  r4t        j                  |||¬«      }||z  }t        j                  ||«       y d}t	        j
                  t        |¬«      5  t        j                  |||dœ||¬«       d d d «       y # 1 sw Y   y xY w)Nz
lhs // rhsr„   r�   zGunsupported operand type\(s\) for //: 'VariableNode' and 'VariableNode'r‰   r¥   ©r§   r/   r:   )r�   r‘   r’   r“   r(   rŽ   r©   )	r”   rB   rD   r/   r:   r–   Úresr™   r•   s	            r0   Útest_floor_divisionzTestEval.test_floor_divisionB  s„   € Øˆà�XÒÜ—'‘'˜" V°FÔ;ˆCØ˜c‘zˆHÜ�O‰O˜C Õ*ð!ð ô —‘œy°Ô4ñ Ü—‘ØØ'*°3Ñ7Ø!Ø!õ	÷÷ ñ ús   ÁA?Á?Bc                ó@  — d}t        |d||«      }t        j                  |||¬«      }t        |«      r}t        |«      rrt	        |t
        t        j                  f«      rRt        j                  |«      r=d}t        j                  t        |¬«      5  t        j                  ||«       d d d «       y t        j                  ||«       d}t        j                  |||¬«      }t        |d||«      }	t        |	d||«      }t        j                  ||«       y # 1 sw Y   y xY w)Nz
lhs ** rhsú**r�   z-(DataFrame.columns|numpy array) are differentr‰   z(lhs ** rhs) ** rhs)rG   r�   r‘   r   rÍ   Úcomplexr@   ÚcomplexfloatingÚisnanr(   rŽ   ÚAssertionErrorr’   Úassert_numpy_array_equalr´   )
r”   rB   rD   r/   r:   r–   r™   rš   r•   Úmiddles
             r0   Útest_powzTestEval.test_powV  sò   € ð ˆÜ# C¨¨s°FÓ;ˆÜ—‘˜ F°6Ô:ˆô �cŒNÜ˜#”Ü˜8¤g¬r×/AÑ/AÐ%BÔCÜ—‘˜Ô àAˆCÜ—‘œ~°SÔ9ñ >Ü×+Ñ+¨F°HÔ=÷>ð >ô ×"Ñ" 6¨8Ô4à&ˆBÜ—W‘W˜R¨°vÔ>ˆFä% c¨4°°fÓ=ˆFÜ'¨°°c¸6ÓBˆHÜ×"Ñ" 6¨8Õ4÷>ð >ús   ÂDÄDc                óî   — 	 |j                  t        «      }| }t        j                  d||¬«      }t        j                  ||«       y # t        $ r" t        j                  t        |«      g«      }Y Œ\w xY w)Nz~elbr�   )	ÚastypeÚboolrÇ   r@   r¯   r�   r‘   r’   r´   )r”   rB   r/   r:   Úelbr™   rš   s          r0   Útest_check_single_invert_opz$TestEval.test_check_single_invert_opp  se   € ð	(Ø—*‘*œTÓ"ˆCð �4ˆÜ—‘˜¨°vÔ>ˆÜ
×Ñ˜x¨Õ0øô	 ò 	(Ü—(‘(œD ›I˜;Ó'ŠCð	(ús   ‚A	 Á	(A4Á3A4c                ó¨  — d}t        t        j                  j                  d«      j	                  d«      «      }|dk(  r?d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       n>d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       t        t        j                  j                  d«      j                  d	d¬
«      «      }|dk(  r?d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       n1| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j	                  d«      dkD  «      }| }t        j                  |||¬«      }t        j                  ||«       t        g d¢t        j                  j                  d«      j	                  d«      dkD  dœ«      }|dk(  r=t        j                  t        d¬«      5  t        j                  |||¬«       d d d «       y d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       y # 1 sw Y   �ŒãxY w# 1 sw Y   �ŒðxY w# 1 sw Y   �ŒOxY w# 1 sw Y   y xY w# 1 sw Y   y xY w)Nú~lhsrN   ©rH   rN   r#   ú-couldn't find matching opcode for 'invert_dd'r‰   r�   ú0ufunc 'invert' not supported for the input typesrH   ©Úsizeú)couldn't find matching opcode for 'invertrP   ©ÚarQ   g       @é   )ÚbrE   úunknown type objectú#bad operand type for unary ~: 'str')r   r@   rR   rS   rT   r(   rŽ   r�   r�   r‘   r©   Úintegersr’   Úassert_frame_equalr=   )r”   r/   r:   r   rB   r•   Úexpectrš   s           r0   Útest_frame_invertzTestEval.test_frame_invertz  sU  € Øˆô
 œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓHÓIˆØ�YÒØAˆCÜ—‘Ô2¸#Ô>ñ <Ü—‘˜ V°FÕ;÷<ð <ð EˆCÜ—‘œy°Ô4ñ <Ü—‘˜ V°FÕ;÷<ô œŸ	™	×-Ñ-¨aÓ0×9Ñ9¸!À&Ð9ÓIÓJˆØ�YÒØ=ˆCÜ—‘Ô2¸#Ô>ñ <Ü—‘˜ V°FÕ;÷<ð <ð �TˆFÜ—W‘W˜T¨&¸Ô@ˆFÜ×!Ñ! &¨&Ô1ô œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓHÈ3ÑNÓOˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜f fÔ-ô Ú¤b§i¡i×&;Ñ&;¸AÓ&>×&NÑ&NÈqÓ&QÐTWÑ&WÑXó
ˆð �YÒÜ—‘œzÐ1FÔGñ <Ü—‘˜ V°FÕ;÷<ð <ð 8ˆCÜ—‘œy°Ô4ñ <Ü—‘˜ V°FÕ;÷<ð <÷C<ñ <ú÷<ñ <ú÷<ñ <ú÷$<ð <ú÷<ð <ús<   ÁJÂJ"ÄJ/È4J<É3KÊJÊ"J,Ê/J9Ê<KËKc                óD  — d}t        t        j                  j                  d«      j	                  d«      «      }|dk(  r?d}t        j                  t        |¬«      5  t        j                  |||¬«      }d d d «       n>d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       t        t        j                  j                  d«      j                  dd¬	«      «      }|dk(  r?d
}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       n1| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j	                  d«      dkD  «      }| }t        j                  |||¬«      }t        j                  ||«       t        g d¢«      }|dk(  r=t        j                  t        d¬«      5  t        j                  |||¬«       d d d «       y d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       y # 1 sw Y   �Œ±xY w# 1 sw Y   �Œ¾xY w# 1 sw Y   �ŒxY w# 1 sw Y   y xY w# 1 sw Y   y xY w)Nrã   rN   rH   r#   rå   r‰   r�   ræ   rç   ré   rP   rê   rî   rï   )r   r@   rR   rS   rT   r(   rŽ   r�   r�   r‘   r©   rð   r’   Úassert_series_equalr=   )r”   r/   r:   r   rB   r•   rš   rò   s           r0   Útest_series_invertzTestEval.test_series_invert§  s2  € àˆô ”R—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸aÓ@ÓAˆØ�YÒØAˆCÜ—‘Ô2¸#Ô>ñ EÜŸ™ ¨f¸VÔD�÷Eð Eð EˆCÜ—‘œy°Ô4ñ <Ü—‘˜ V°FÕ;÷<ô ”R—Y‘Y×*Ñ*¨1Ó-×6Ñ6°q¸qÐ6ÓAÓBˆØ�YÒØ=ˆCÜ—‘Ô2¸#Ô>ñ <Ü—‘˜ V°FÕ;÷<ð <ð �TˆFÜ—W‘W˜T¨&¸Ô@ˆFÜ×"Ñ" 6¨6Ô2ô ”R—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸aÓ@À3ÑFÓGˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜v vÔ.ô ’]Ó#ˆØ�YÒÜ—‘œzÐ1FÔGñ <Ü—‘˜ V°FÕ;÷<ð <ð 8ˆCÜ—‘œy°Ô4ñ <Ü—‘˜ V°FÕ;÷<ð <÷GEñ Eú÷<ñ <ú÷<ñ <ú÷(<ð <ú÷<ð <ús<   ÁI#ÂI0ÄI=ÈJ
ÉJÉ#I-É0I:É=JÊ
JÊJc                ó"  — d}t        t        j                  j                  d«      j	                  d«      «      }| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j                  dd¬«      «      }| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j	                  d«      dkD  «      }|dk(  r?d	}t        j                  t        |¬
«      5  t        j                  |||¬«       d d d «       y | }t        j                  |||¬«      }t        j                  ||«       y # 1 sw Y   y xY w)Nú-lhsrN   rä   r�   rH   rç   rP   r#   ú*couldn't find matching opcode for 'neg_bb'r‰   )r   r@   rR   rS   rT   r�   r‘   r’   rñ   rð   r(   rŽ   r�   ©r”   r/   r:   r   rB   rò   rš   r•   s           r0   Útest_frame_negatezTestEval.test_frame_negateÖ  sF  € Øˆô œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓHÓIˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜f fÔ-ô œŸ	™	×-Ñ-¨aÓ0×9Ñ9¸!À&Ð9ÓIÓJˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜f fÔ-ô œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓHÈ3ÑNÓOˆØ�YÒØ>ˆCÜ—‘Ô2¸#Ô>ñ <Ü—‘˜ V°FÕ;÷<ð <ð �TˆFÜ—W‘W˜T¨&¸Ô@ˆFÜ×!Ñ! &¨&Õ1÷<ð <úó   Ä1FÆFc                ó"  — d}t        t        j                  j                  d«      j	                  d«      «      }| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j                  dd¬«      «      }| }t        j                  |||¬«      }t        j                  ||«       t        t        j                  j                  d«      j	                  d«      dkD  «      }|dk(  r?d}t        j                  t        |¬	«      5  t        j                  |||¬«       d d d «       y | }t        j                  |||¬«      }t        j                  ||«       y # 1 sw Y   y xY w)
Nrø   rN   rH   r�   rç   rP   r#   rù   r‰   )r   r@   rR   rS   rT   r�   r‘   r’   rõ   rð   r(   rŽ   r�   rú   s           r0   Útest_series_negatezTestEval.test_series_negateð  sF  € Øˆô ”R—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸aÓ@ÓAˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜v vÔ.ô ”R—Y‘Y×*Ñ*¨1Ó-×6Ñ6°q¸qÐ6ÓAÓBˆØ�ˆÜ—‘˜ f°VÔ<ˆÜ
×Ñ˜v vÔ.ô ”R—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸aÓ@À3ÑFÓGˆØ�YÒØ>ˆCÜ—‘Ô2¸#Ô>ñ <Ü—‘˜ V°FÕ;÷<ð <ð �TˆFÜ—W‘W˜T¨&¸Ô@ˆFÜ×"Ñ" 6¨6Õ2÷<ð <úrü   rB   rN   rä   rH   rç   rP   c                óh   — d}|}t        j                  |||¬«      }t        j                  ||«       y ©Nz+lhsr�   )r�   r‘   r’   rñ   ©r”   rB   r/   r:   r   rò   rš   s          r0   Útest_frame_poszTestEval.test_frame_pos
  s0   € ð ˆØˆä—‘˜ f°VÔ<ˆÜ
×Ñ˜f fÕ-r8   c                óh   — d}|}t        j                  |||¬«      }t        j                  ||«       y r   )r�   r‘   r’   rõ   r  s          r0   Útest_series_poszTestEval.test_series_pos  s0   € ð ˆØˆä—‘˜ f°VÔ<ˆÜ
×Ñ˜v vÕ.r8   c                ó   — d}d }t         r|dk(  r|dk(  st        }t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       t        j                  d||¬«      d	k(  sJ ‚t        j                  d
||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚t        j                  |dd¬«      5  t        j                  d||¬«      dk(  sJ ‚	 d d d «       t        j                  |dd¬«      5  t        j                  d||¬«      dk(  sJ ‚	 d d d «       t        j                  d||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚t        j                  d||¬«      dk(  sJ ‚y # 1 sw Y   �ŒŽxY w# 1 sw Y   ŒÊxY w# 1 sw Y   Œ—xY w)Nz%bad operand type for unary ~: 'float'r#   r­   r‰   z~1.0r�   z-1.0©r:   r/   g      ð¿z+1.0g      ð?z~1éþÿÿÿz-1éÿÿÿÿz+1rQ   zBitwise inversionF)rŠ   Úcheck_stacklevelz~Truez~Falsez-Truez-Falser   z+Truez+False)	r   ÚDeprecationWarningr(   rŽ   r©   r�   r‘   r’   Úassert_produces_warning)r”   r/   r:   r•   Úwarns        r0   Útest_scalar_unaryzTestEval.test_scalar_unary.  sæ  € Ø5ˆØˆÝ˜& IÒ-°&¸HÒ2DÜ%ˆDÜ�]‰]œ9¨CÔ0ñ 	:Ü�G‰G�F 6°&Õ9÷	:ô �w‰w�v f°VÔ<ÀÒDÐDÐDÜ�w‰w�v f°VÔ<ÀÒDÐDÐDÜ�w‰w�t F°6Ô:¸bÒ@Ð@Ð@Ü�w‰w�t F°6Ô:¸bÒ@Ð@Ð@Ü�w‰w�t F°6Ô:¸bÒ@Ð@Ð@Ü×'Ñ'ØÐ+¸eô
ñ 	Kô —7‘7˜7¨6¸&ÔAÀUÒJÐJÑJ÷	Kô ×'Ñ'ØÐ+¸eô
ñ 	Mô —7‘7˜8¨F¸6ÔBÀfÒLÐLÑL÷	Mô �w‰w�w v°fÔ=ÀÒFÐFÐFÜ�w‰w�x¨°vÔ>À&ÒHÐHÐHÜ�w‰w�w v°fÔ=ÀÒFÐFÐFÜ�w‰w�x¨°vÔ>À&ÒHÐHÑH÷'	:ñ 	:ú÷	Kð 	Kú÷	Mð 	Mús#   ¶GÄ G(Ä?G4ÇG%Ç(G1Ç4G=c                óî   — t        j                  t        j                  d«      t         j                  ¬«      }t        j                  g d¢t         j                  ¬«      }t        j                  ||«       y )Nz>[-True, True, +True, -False, False, +False, -37, 37, ~37, +37]rZ   )
r  TrQ   r   Fr   iÛÿÿÿé%   iÚÿÿÿr  )r@   r¯   r�   r‘   Úobject_r’   rÚ   )r”   rš   r™   s      r0   Útest_unary_in_arrayzTestEval.test_unary_in_arrayH  sV   € ô —‘Ü�G‰GÐTÓUÜ—*‘*ô
ˆô —8‘8òô —*‘*ô
ˆô 	×#Ñ# F¨HÕ5r8   r[   r   zx < -0.1z-5 > xc                ó¶   — t        dt        j                  dg|¬«      i«      }|j                  |«      }|j                  t        j                  dg«      k(  sJ ‚y )Nr±   r   rZ   F)r   r@   r¯   r‘   rÆ   )r”   r[   r   ÚdfrÒ   s        r0   Útest_float_comparison_bin_opz%TestEval.test_float_comparison_bin_opa  sJ   € ô ˜œRŸX™X q c°Ô7Ð8Ó9ˆØ�g‰g�d‹mˆØ�z‰zœRŸX™X u gÓ.Ò.Ð.Ñ.r8   c                óh  — t        dddt        j                  gi«      }|j                  d«      }|j                  j                  d«      }t        j                  ||t         ¬«       |j                  d«      }|j                  j                  dd¬«      }t        j                  ||t         ¬«       y )	Nr±   r   rQ   zx.fillna(-1)r  ©Úcheck_nameszx.shift(1, fill_value=-1))Ú
fill_value)
r   r@   rA   r‘   r±   Úfillnar’   rõ   r   Úshift©r”   r  rš   r™   s       r0   Útest_unary_in_functionzTestEval.test_unary_in_functioni  s‰   € ä˜˜a ¤B§F¡F˜^Ð,Ó-ˆà—‘˜Ó(ˆØ—4‘4—;‘;˜r“?ˆô 	×Ñ˜v xÄ¸_ÕMà—‘Ð4Ó5ˆØ—4‘4—:‘:˜a¨B�:Ó/ˆÜ
×Ñ˜v xÄ¸_ÖMr8   r–   )z1 or 2z1 and 2za and bza or bz1 or 2 and (3 + 2) > 3z2 * x > 2 or 1 and 2z2 * df > 3 and 1 or ac                ój  — t         j                  j                  d«      j                  d«      dd}}}t	        t         j                  j                  d«      j                  d«      «      }d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       y # 1 sw Y   y xY w)NrN   rì   rQ   ©rì   rN   ú;cannot evaluate scalar only bool ops|'BoolOp' nodes are notr‰   r�   )
r@   rR   rS   rT   r   r(   rŽ   r�   r�   r‘   )	r”   r–   r/   r:   r±   rë   rí   r  r•   s	            r0   Útest_disallow_scalar_bool_opsz&TestEval.test_disallow_scalar_bool_opsw  sˆ   € ô —)‘)×'Ñ'¨Ó*×:Ñ:¸1Ó=¸qÀ!ˆaˆ1ˆÜ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆàKˆÜ�]‰]Ô.°cÔ:ñ 	6Ü�G‰G�B˜v¨fÕ5÷	6÷ 	6ñ 	6ús   ÂB)Â)B2c                ó¢  — d}t        j                  d||¬«      }|dk(  sJ ‚t        |«      sJ ‚d}t        j                  d||¬«      }|dk(  sJ ‚t        |«      sJ ‚d}t        j                  d||¬«      }|rJ ‚t        |«      sJ ‚t        |«      sJ ‚t	        j
                  dg«      }t        j                  d||¬«      }t        j                  |t	        j
                  dg«      «       |j                  dk(  sJ ‚t	        j
                  dg«      }t        j                  d||¬«      }t        j                  |t	        j
                  dg«      «       |j                  dk(  sJ ‚t	        j
                  dg«      }t        j                  d||¬«      }t        j                  |t	        j
                  dg«      «       |j                  dk(  sJ ‚y )NrQ   r±   r�   g      ø?F)rQ   )	r�   r‘   r   r
   r@   r¯   r’   rÚ   Úshape)r”   r/   r:   r±   rš   s        r0   Útest_identicalzTestEval.test_identical‹  s†  € àˆÜ—‘˜ V°FÔ;ˆØ˜Š{Ðˆ{Ü˜Ô Ð Ð àˆÜ—‘˜ V°FÔ;ˆØ˜Š}Ðˆ}Ü˜Ô Ð Ð àˆÜ—‘˜ V°FÔ;ˆÙÐˆzÜ�vŒÐˆÜ˜Ô Ð Ð ä�H‰H�a�S‹MˆÜ—‘˜ V°FÔ;ˆÜ
×#Ñ# F¬B¯H©H°a°S«MÔ:Ø�|‰|˜tÒ#Ð#Ð#ä�H‰H�c�U‹OˆÜ—‘˜ V°FÔ;ˆÜ
×#Ñ# F¬B¯H©H°c°U«OÔ<Ø�|‰|˜tÒ#Ð#Ð#ä�H‰H�e�WÓˆÜ—‘˜ V°FÔ;ˆÜ
×#Ñ# F¬B¯H©H°e°WÓ,=Ô>Ø�|‰|˜tÒ#Ð#Ñ#r8   c                óF   — d}t        j                  |||¬«      }|dk(  sJ ‚y )Nz1 + 2 *         5 - 1 + 2 r�   é   )r�   r‘   )r”   r/   r:   Úexprš   s        r0   Útest_line_continuationzTestEval.test_line_continuation¬  s'   € ðˆä—‘˜ V°FÔ;ˆØ˜Š|Ð‰|r8   c                óÞ  — d}t        j                  |||¬«      }t        j                  |«      }||k(  sJ ‚t	        dg d¢i«      }d}|j                  d|d›�«      }|j                  sJ ‚d}|j                  d	|d›�«      }|j                  d
dgd d …f   }t        j                  ||«       d}|j                  d|d›�«      }|j                  d
gd d …f   }t        j                  ||«       y )Nz1000000000.006r�   ÚA)g~  eÍÍAç$  eÍÍAg'1  eÍÍAg©  eÍÍAzA < z.4fgÅ   eÍÍAzA > rQ   rN   r*  úA == )
r�   r‘   r@   rb   r   ÚqueryÚemptyÚlocr’   rñ   )	r”   r/   r:   r&  rš   r™   r  ÚcutoffÚexacts	            r0   Útest_float_truncationzTestEval.test_float_truncation³  sí   € àˆÜ—‘˜ V°FÔ;ˆÜ—:‘:˜c“?ˆØ˜Ò!Ð!Ð!ä˜ÒPÐQÓRˆØ ˆØ—‘˜D ¨ Ð-Ó.ˆØ�|Š|Ðˆ|à ˆØ—‘˜D ¨ Ð-Ó.ˆØ—6‘6˜1˜a˜&¢!˜)Ñ$ˆÜ
×Ñ˜h¨Ô/àˆØ—‘˜E %¨ Ð-Ó.ˆØ—6‘6˜1˜#šq˜&‘>ˆÜ
×Ñ˜h¨Õ/r8   c                óf  — t        g d¢gg d¢¬«      }d}t        j                  t        |¬«      5  |j	                  d«       d d d «       t        «       }d|j
                  _        t        j                  t        |¬«      5  |j	                  d«       d d d «       y # 1 sw Y   ŒZxY w# 1 sw Y   y xY w)	N)r   r   r   )ÚfooÚbarÚclass©Úcolumnsz4Python keyword not valid identifier in numexpr queryr‰   z
class == 0Úlambdazlambda == 0)r   r(   rŽ   ÚSyntaxErrorr,  ÚindexÚname©r”   r  r•   s      r0   Útest_disallow_python_keywordsz&TestEval.test_disallow_python_keywordsÉ  s�   € äš	�{Ò,CÔDˆØDˆÜ�]‰]œ;¨cÔ2ñ 	#Ø�H‰H�\Ô"÷	#ô ‹[ˆØ ˆ�‰ŒÜ�]‰]œ;¨cÔ2ñ 	$Ø�H‰H�]Ô#÷	$ð 	$÷	#ð 	#ú÷
	$ð 	$ús   °BÂ B'ÂB$Â'B0c                ó  — t        j                  t        t        d¬«      5  t	        j
                  d«      dk(  sJ ‚t	        j
                  d«      dk(  sJ ‚t	        j
                  d«      dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)	NF)r	  znot Truer  z	not Falser  zTrue and not Truer   )r’   Úmaybe_produces_warningr
  r   r�   r‘   )r”   s    r0   Útest_true_false_logiczTestEval.test_true_false_logicÕ  sv   € ô ×&Ñ&Ü¤¸ô
ñ 	5ô —7‘7˜:Ó&¨"Ò,Ð,Ð,Ü—7‘7˜;Ó'¨2Ò-Ð-Ð-Ü—7‘7Ð.Ó/°1Ò4Ð4Ñ4÷	5÷ 	5ñ 	5ús   ¡AA:Á:Bc                óX  — t        ddi«      }t        j                  |j                  j	                  d«      j
                  › «      sJ ‚t        j                  |j                  j	                  d«      j
                  xr% |j                  j	                  d«      j
                  › «      sJ ‚y )Nrë   Úhello)r   r�   r‘   r>   rŠ   rë   )r”   Úevents     r0   Útest_and_logic_string_matchz$TestEval.test_and_logic_string_matchß  sx   € ä˜˜W�~Ó&ˆÜ�w‰w˜%Ÿ)™)Ÿ/™/¨'Ó2×4Ñ4Ð5Ô7Ð7Ð7Ü�w‰w˜%Ÿ)™)Ÿ/™/¨'Ó2×4Ñ4ÒS¸¿¹¿¹ÈÓ9Q×9SÑ9SÐTÔVÐVÑVr8   N)3Ú__name__Ú
__module__Ú__qualname__r(   r*   Úparametrizer   ÚBOOL_OPS_SYMSr›   ÚCMP_OPS_SYMSrª   r¶   rÁ   ÚsortedÚsetr   Ú
differencer   rÊ   rÏ   rÓ   r,   Úskip_if_windowsrÜ   rá   ró   rö   rû   rþ   r   r@   rR   rS   rT   rð   r  r   r  r  r  Úfloat32rb   r  r  r   r#  r'  r1  r=  r@  rD  ru   r8   r0   rx   rx   …   s|  „ Ø‡[�[×ÑØÚ*Ú0ð ó ð
 ‡[�[×Ñ˜V c¨3 Z°d¸D°\ÐÓBØ‡[�[×Ñ˜W d×&8Ñ&8Ó9ñ*ó :ó Cóð*ð  ‡[�[×Ñ˜X t×'8Ñ'8Ó9ñ .ó :ð .ðD ‡[�[×Ñ˜T 4×#4Ñ#4Ó5ñ15ó 6ð15ðf ‡[�[×Ñ˜V c¨3 ZÓ0Ø‡[�[×Ñ˜V c¨3 ZÓ0ñ9ó 1ó 1ð9ð. ‡[�[×ÑØ‘&™˜^Ó,×7Ñ7Ð8SÓTÓUóñ9óð9ò@5ò$ð( ×Ññ5ó ð5ò21ò+<òZ-<ò^2ò43ð4 ‡[�[×ÑØñ �b—i‘i×+Ñ+¨AÓ.×>Ñ>¸vÓFÓGá�b—i‘i×+Ñ+¨AÓ.×7Ñ7¸ÀÐ7ÓGÓHá�b—i‘i×+Ñ+¨AÓ.×>Ñ>¸vÓFÈÑLÓMð	
ó
ñ.ó
ð.ð ‡[�[×ÑØñ �2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>Ó?á�2—9‘9×(Ñ(¨Ó+×4Ñ4°Q¸QÐ4Ó?Ó@á�2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>ÀÑDÓEð	
ó
ñ/ó
ð/òIò46ð2 ‡[�[×Ñ˜W r§z¡z°2·:±:Ð&>Ó?Ø‡[�[×Ñ˜V j°(Ð%;Ó<ñ/ó =ó @ð/òNð ‡[�[×ÑØð	
óñ6óð6ò$òBò0ò,
$ò5óWr8   rx   c                  ó–   — e Zd Zej                  j                  dg d¢«      ej                  j                  dddg«      d„ «       «       Zy)ÚTestTypeCastingr«   )ú+ú-Ú*rÕ   ú/Ú
left_right)r  Ú3)rW  r  c                óì  — |}t        t        j                  j                  d«      j	                  d«      |¬«      }|\  }	}
|	› d|› d|
› �}t        j                  |||¬«      }|dk(  r6|dk(  r1t        j                  j                  d¬	«      }|j                  |«       |j                  j                  |k(  sJ ‚|j                  j                  |k(  sJ ‚t        j                  |t        |«      d
¬«       y )NrN   ©rH   rì   rZ   ú r�   Ú	complex64r#   zfnumexpr issue with complex that are upcast to complex 128 https://github.com/pydata/numexpr/issues/492r$   F)Úcheck_exact)r   r@   rR   rS   rT   r�   r‘   r(   r*   r²   r³   rÆ   r[   r’   rñ   )r”   r/   r:   r«   Úcomplex_or_float_dtyperV  r7   r[   r  ÚleftÚrightrr   rÒ   r*   s                 r0   Útest_binop_typecastingz&TestTypeCasting.test_binop_typecastingë  sá   € ð 'ˆÜ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÈuÔUˆØ ‰ˆˆeØˆf�A�b�T˜˜5˜'Ð"ˆÜ�g‰g�a ¨vÔ6ˆØ�KÒ F¨iÒ$7Ü—;‘;×$Ñ$ð?ð %ó ˆDð
 ×Ñ Ô%Ø�y‰y�‰ %Ò'Ð'Ð'Ø�z‰z×Ñ 5Ò(Ð(Ð(Ü
×Ñ˜c¤4¨£7¸Ö>r8   N)rE  rF  rG  r(   r*   rH  r`  ru   r8   r0   rQ  rQ  ê  sG   „ Ø‡[�[×Ñ˜TÒ#=Ó>ð ‡[�[×Ñ˜\¨K¸Ð+EÓFñ?ó Gó ?ñ?r8   rQ  c                 ó¢   — t        t        t        j                  d«      | «      «       }t	        t        j
                  d„ | D «       «      }|xr |S )NÚis_monotonic_increasingc              3  óx   K  — | ]2  }t        |j                  j                  t        j                  «      –— Œ4 y ­wr4   )Ú
issubclassr[   Útyper@   Ú
datetime64r°   s     r0   r1   zshould_warn.<locals>.<genexpr>  s#   è ø€ ÒMÀ1”z !§'¡'§,¡,´·±×>ÑMùs   ‚8:)ÚanyÚmapÚoperatorÚ
attrgetterr   Úxor)ÚargsÚnot_monoÚonly_one_dts      r0   Úshould_warnro    sH   € Ü”sœ8×.Ñ.Ð/HÓIÈ4ÓPÓQÐQ€HÜÜ�‰ÑMÈÔMó€Kð Ò#˜Ð#r8   c                  óL  — e Zd Zg d¢Zedgz   Zd„ Zej                  j                  d«      ej                  j                  de«      ej                  j                  de«      ej                  j                  de«      d„ «       «       «       «       Z
ej                  j                  d	e«      ej                  j                  de«      d
„ «       «       Zej                  j                  d«      ej                  j                  de«      ej                  j                  de«      ej                  j                  de«      ej                  j                  de«      d„ «       «       «       «       «       Zej                  j                  d«      ej                  j                  dddg«      ej                  j                  de«      ej                  j                  d	e«      d„ «       «       «       «       Zej                  j                  dddg«      ej                  j                  d e eddgddg«      «      dgz   «      ej                  j                  d«      d„ «       «       «       Zej                  j                  d«      ej                  j                  de«      ej                  j                  d	e«      ej                  j                  dddg«      ej                  j                  dddg«      d„ «       «       «       «       «       Zej                  j                  d«      ej                  j                  de«      ej                  j                  de«      ej                  j                  de«      ej                  j                  de«      d„ «       «       «       «       «       Zd„ Zy) ÚTestAlignment)rh   rr   rs   rr   c                óØ   — d}t        t        j                  j                  d«      j	                  d«      «      }t        j                  |||¬«      }t        j                  ||dz  «       y )Nzdf * ~2rN   rY  r�   éýÿÿÿ)	r   r@   rR   rS   rT   r�   r‘   r’   rñ   )r”   r/   r:   rr   r  rÒ   s         r0   Útest_align_nested_unary_opz(TestAlignment.test_align_nested_unary_op  sQ   € ØˆÜ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆÜ�g‰g�a ¨vÔ6ˆÜ
×Ñ˜c 2¨¡7Õ+r8   zalways::RuntimeWarningÚlr_idx_typeÚrr_idx_typeÚ
c_idx_typec                ód  — t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        |j                  |j                  «      r;t        j                  t        «      5  t        j                  d||¬«      }	d d d «       nt        j                  d||¬«      }	t        j                  	||z   «       y # 1 sw Y   Œ#xY w)	NrN   ©rO   rO   rO   ©r:  r7  )é   rO   r{  zdf + df2r�   ©r   r@   rR   rS   rT   ro  r:  r’   r  ÚRuntimeWarningr�   r‘   rñ   )
r”   r/   r:   ru  rv  rw  rv   r  Údf2rÒ   s
             r0   Útest_basic_frame_alignmentz(TestAlignment.test_basic_frame_alignment  s  € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°XÓ>Ø,�- Ñ,¨RÓ0Ø-�M *Ñ-¨bÓ1ô
ˆô
 Ü�I‰I×!Ñ! !Ó$×4Ñ4°XÓ>Ø,�- Ñ,¨RÓ0Ø-�M *Ñ-¨bÓ1ô
ˆô �r—x‘x §¡Ô+Ü×+Ñ+¬NÓ;ñ HÜ—g‘g˜j°ÀÔG�÷Hð Hô —'‘'˜*¨V¸FÔCˆCÜ
×Ñ˜c 2¨¡8Õ,÷	Hð Hús   ÃD&Ä&D/Ú
r_idx_typec                ó  — t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        j                  d||¬«      }t        j                  ||dk  «       t        t        j                  j                  d«      j	                  |j                  «      |j                  |j                  ¬«      }t        j                  d||¬«      }t        j                  |||k  «       y )NrN   ry  rO   rz  údf < 2r�   zdf < df3)r   r@   rR   rS   rT   r�   r‘   r’   rñ   r"  r:  r7  )	r”   r/   r:   r€  rw  rv   r  rÒ   Údf3s	            r0   Útest_frame_comparisonz#TestAlignment.test_frame_comparison3  sÒ   € ô
 Ü�I‰I×!Ñ! !Ó$×4Ñ4°XÓ>Ø+�- 
Ñ+¨BÓ/Ø-�M *Ñ-¨bÓ1ô
ˆô
 �g‰g�h v°fÔ=ˆÜ
×Ñ˜c 2¨¡6Ô*äÜ�I‰I×!Ñ! !Ó$×4Ñ4°R·X±XÓ>Ø—(‘(Ø—J‘Jô
ˆô
 �g‰g�j¨¸Ô?ˆÜ
×Ñ˜c 2¨¡8Õ,r8   zignore::RuntimeWarningÚr1Úc1Úr2Úc2c                ó  — t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }	t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }
t        |j                  |	j                  |
j                  «      r;t        j                  t        «      5  t        j                  d	||¬
«      }d d d «       nt        j                  d	||¬
«      }t        j                  ||	z   |
z   «       y # 1 sw Y   Œ&xY w)NrN   r  rì   rz  )é   rN   rŠ  rä   rH   zdf + df2 + df3r�   r|  )r”   r/   r:   r…  r†  r‡  rˆ  rv   r  r~  rƒ  rÒ   s               r0   Ú#test_medium_complex_frame_alignmentz1TestAlignment.test_medium_complex_frame_alignmentH  s^  € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ø#�- Ñ# AÓ&Ø%�M "Ñ% aÓ(ô
ˆô
 Ü�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ø#�- Ñ# AÓ&Ø%�M "Ñ% aÓ(ô
ˆô
 Ü�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ø#�- Ñ# AÓ&Ø%�M "Ñ% aÓ(ô
ˆô
 �r—x‘x §¡¨C¯I©IÔ6Ü×+Ñ+¬NÓ;ñ NÜ—g‘gÐ.°vÀfÔM�÷Nð Nô —'‘'Ð*°6À&ÔIˆCÜ
×Ñ˜c 2¨¡8¨c¡>Õ2÷	Nð Nús   Ä)F Æ F	Ú
index_namer:  r7  c                óª  — t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        ||«      }t        t        j                  j                  d«      j	                  d«      |d d «      }	t        |j                  |	j                  «      r;t        j                  t        «      5  t        j                  d||¬«      }
d d d «       nt        j                  d||¬«      }
|dk(  s|dk(  r|d	k(  r|j                  |	«      n||	z   }n||	z   }t        j                  
|«       y # 1 sw Y   ŒKxY w)
NrN   ry  rO   rz  rH   údf + sr�   rs   r#   )r   r@   rR   rS   rT   Úgetattrr   ro  r:  r’   r  r}  r�   r‘   Úaddrñ   )r”   r/   r:   rŒ  r€  rw  rv   r  r:  rr   rÒ   r™   s               r0   Ú!test_basic_frame_series_alignmentz/TestAlignment.test_basic_frame_series_alignmentf  s*  € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°XÓ>Ø+�- 
Ñ+¨BÓ/Ø-�M *Ñ-¨bÓ1ô
ˆô
 ˜˜JÓ'ˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>ÀÀbÀqÀ	ÓJˆä�r—x‘x §¡Ô)Ü×+Ñ+¬NÓ;ñ FÜ—g‘g˜h¨v¸fÔE�÷Fð Fô —'‘'˜(¨6¸&ÔAˆCà˜Ò ¨tÒ!3Ø$*¨iÒ$7�r—v‘v˜a”y¸RÀ!¹V‰Hà˜A‘vˆHÜ
×Ñ˜c 8Õ,÷Fð Fús   ÃE	Å	Ezr_idx_type, c_idx_typerh   )rs   rs   c           
     ó\  — |dk(  rT|dv rP|dk(  rK|dk(  rF|dk(  rAd|› d|› d|› d	|› d
|› �
}|j                  t        j                  j                  |d¬«      «       t	        t
        j                  j                  d«      j                  d«       ||   d«       ||   d«      ¬«      }	t        |	|«      }
t        t
        j                  j                  d«      j                  d«      |
d d «      }t        |j                  |	j                  «      r;t        j                  t        «      5  t!        j"                  d||¬«      }d d d «       nt!        j"                  d||¬«      }|dk(  s|dk(  r|dk(  r|	j%                  |«      n||	z   }n||	z   }t        j&                  |«       y # 1 sw Y   ŒKxY w)Nr#   )r­   r„   r:  rh   rr   z"Flaky column ordering when engine=z	, parser=z, index_name=z, r_idx_type=z, c_idx_type=F)r%   ÚstrictrN   )rO   é   rO   r”  rz  rH   zs + dfr�   rs   )r³   r(   r*   r²   r   r@   rR   rS   rT   r�  r   ro  r:  r’   r  r}  r�   r‘   r�  rñ   )r”   r7   r/   r:   rŒ  r€  rw  rv   r%   r  r:  rr   rÒ   r™   s                 r0   Ú!test_basic_series_frame_alignmentz/TestAlignment.test_basic_series_frame_alignment�  s«  € ð �iÒØÐ.Ñ.Ø˜gÒ%Ø˜cÒ!Ø˜cÒ!ð 5°V°Hð =Ø ˜ ¨z¨lð ;Ø(˜\¨°z°lðDð ð
 ×Ñ¤§¡× 1Ñ 1¸ÈÐ 1Ó NÔOÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°WÓ=Ø+�- 
Ñ+¨BÓ/Ø-�M *Ñ-¨aÓ0ô
ˆô
 ˜˜JÓ'ˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>ÀÀbÀqÀ	ÓJˆÜ�q—w‘w §¡Ô)Ü×+Ñ+¬NÓ;ñ FÜ—g‘g˜h¨v¸fÔE�÷Fð Fô —'‘'˜(¨6¸&ÔAˆCà˜Ò ¨tÒ!3Ø$*¨iÒ$7�r—v‘v˜a”y¸QÀ¹V‰Hà˜2‘vˆHÜ
×Ñ˜c 8Õ,÷Fð Fús   Ä&F"Æ"F+r«   rR  rT  c                óL  — t        t        j                  j                  d«      j	                  d«       ||   d«       ||   d«      ¬«      }t        ||«      }	t        t        j                  j                  d«      j	                  d«      |	d d «      }
d|› d�}d|› d	�}t        |j                  |
j                  «      rut        j                  t        «      5  t        j                  |||¬
«      }d d d «       t        j                  t        «      5  t        j                  |||¬
«      }d d d «       n0t        j                  |||¬
«      }t        j                  |||¬
«      }|dk7  r#|dk7  r|dk(  rt        j                  «       y y y y # 1 sw Y   Œ�xY w# 1 sw Y   Œ>xY w)NrN   ry  rO   rz  rH   zs z dfzdf z sr�   rs   r#   )r   r@   rR   rS   rT   r�  r   ro  r:  r’   r  r}  r�   r‘   rñ   )r”   r/   r:   rŒ  r«   r€  rw  rv   r  r:  rr   rB   rD   rë   rí   s                  r0   Útest_series_frame_commutativityz-TestAlignment.test_series_frame_commutativityª  sx  € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°XÓ>Ø+�- 
Ñ+¨BÓ/Ø-�M *Ñ-¨bÓ1ô
ˆô
 ˜˜JÓ'ˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸AÓ>ÀÀbÀqÀ	ÓJˆà�2�$�cˆlˆØ�B�4�rˆlˆÜ�r—x‘x §¡Ô)Ü×+Ñ+¬NÓ;ñ ?Ü—G‘G˜C¨°vÔ>�÷?ä×+Ñ+¬NÓ;ñ ?Ü—G‘G˜C¨°vÔ>�÷?ð ?ô —‘˜ F°6Ô:ˆAÜ—‘˜ F°6Ô:ˆAà˜Ò *°Ò"4Ø˜Ò"Ü×%Ñ% a¨Õ+ð #ð #5Ð÷?ð ?ú÷?ð ?ús   ÃFÄFÆFÆF#c                ó  — d}d}	d|	z  }
t        t        j                  j                  d«      j	                  |	|f«       ||   |	«       ||   |«      ¬«      }t        t        j                  j                  d«      j	                  |
|f«       ||   |
«       ||   |«      ¬«      }|j
                  }t        t        j                  j                  d«      j	                  |«      |d | «      }|dk(  s|dk(  r|dk(  r|j                  |«      }n||z   }n||z   }|dk(  s|dk(  r|dk(  r|j                  |«      }n||z   }n||z   }t        |j                  |j                  |j                  «      r;t        j                  t        «      5  t        j                  d||¬«      }d d d «       nt        j                  d||¬«      }j                  |j                  k(  sJ ‚t        j                   ||«       y # 1 sw Y   Œ;xY w)	Nrì   rH   rN   rz  rs   r#   zdf2 + ser + dfr�   )r   r@   rR   rS   rT   r7  r   r�  ro  r:  r’   r  r}  r�   r‘   r"  rñ   )r”   r/   r:   r…  r†  r‡  rˆ  rv   r_   Úm1Úm2r  r~  r:  ÚserÚ	expected2r™   rÒ   s                     r0   Ú#test_complex_series_frame_alignmentz1TestAlignment.test_complex_series_frame_alignmentÉ  sÞ  € ð ˆØˆØ�‰VˆÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°b¸!°WÓ=Ø#�- Ñ# BÓ'Ø%�M "Ñ% aÓ(ô
ˆô
 Ü�I‰I×!Ñ! !Ó$×4Ñ4°b¸!°WÓ=Ø#�- Ñ# BÓ'Ø%�M "Ñ% aÓ(ô
ˆð
 —‘ˆÜ”R—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸aÓ@À%ÈÈÀ)ÓLˆà�Š:˜˜tšØ˜Ò"ØŸG™G C›L‘	à #™I‘	à˜c™	ˆIà�Š:˜˜tšØ˜Ò"Ø$Ÿ=™=¨Ó,‘à$ r™>‘à  2‘~ˆHä�s—y‘y #§)¡)¨R¯X©XÔ6Ü×+Ñ+¬NÓ;ñ NÜ—g‘gÐ.°vÀfÔM�÷Nð Nô —'‘'Ð*°6À&ÔIˆCØ�y‰y˜HŸN™NÒ*Ð*Ð*Ü
×Ñ˜c 8Õ,÷Nð Nús   Æ	G5Ç5G>c                ó&  — t        t        j                  j                  d«      j	                  d«      «      }t        t        j                  j                  d«      j	                  d«      «      }|dk(  rt        }nd}t        j                  |«      5  t        j                  d||¬«       d d d «       t        t        j                  j                  d«      j	                  d«      «      }t        j                  d«      5  t        j                  d||¬«       d d d «       t        t        j                  j                  d«      j	                  d	«      «      }t        t        j                  j                  d«      j	                  d«      «      }t        j                  d«      5  t        j                  d||¬«       d d d «       t        t        j                  j                  d«      j	                  d
«      «      }t        t        j                  j                  d«      j	                  d«      «      }|dk(  }|st        }nd}t        j                  |«      5 }t        j                  d||¬«       |set        |«      dk(  sJ ‚t        |d   j                  «      }	t        j                  |j                  |j                   d   z
  «      }
d|
d›d�}|	|k(  sJ ‚d d d «       y # 1 sw Y   �Œ7xY w# 1 sw Y   �Œ×xY w# 1 sw Y   �Œ@xY w# 1 sw Y   y xY w)NrN   )éè  rO   é'  r#   FrŽ  r�   rŸ  )rO   r   ry  r„   rQ   r   z_Alignment difference on axis 1 is larger than an order of magnitude on term 'df', by more than z.4gz; performance may suffer.)r   r@   rR   rS   rT   r   r   r’   r  r�   r‘   Úlenr>   ÚmessageÚlog10rè   r"  )r”   r/   r:   r  rr   ÚseenÚis_python_engineÚwrnÚwr•   Úloggedr™   s               r0   Ú+test_performance_warning_for_poor_alignmentz9TestAlignment.test_performance_warning_for_poor_alignmentù  sm  € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?À
ÓKÓLˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸EÓBÓCˆØ�YÒÜ%‰DàˆDä×'Ñ'¨Ó-ñ 	<Ü�G‰G�H V°FÕ;÷	<ô ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸DÓAÓBˆÜ×'Ñ'¨Ó.ñ 	<Ü�G‰G�H V°FÕ;÷	<ô ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓLÓMˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸EÓBÓCˆÜ×'Ñ'¨Ó.ñ 	<Ü�G‰G�H V°FÕ;÷	<ô ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓIÓJˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸EÓBÓCˆà! XÑ-ÐáÜ$‰CàˆCä×'Ñ'¨Ó,ð 	'°Ü�G‰G�H V°FÕ;á#Ü˜1“v ’{Ð"�{Ü˜!˜A™$Ÿ,™,Ó'�ÜŸ™ !§&¡&¨2¯8©8°A©;Ñ"6Ó7�ð$à$*¨3 <Ð/HðJð ð
 ˜h’Ð&�÷	'ð 	'÷-	<ñ 	<ú÷	<ñ 	<ú÷
	<ñ 	<ú÷	'ð 	'ús1   ÂK Ã?K-Æ#K:ÉB LË K*Ë-K7Ë:LÌLN)rE  rF  rG  Úindex_typesÚlhs_index_typesrt  r(   r*   ÚfilterwarningsrH  r  r„  r‹  r‘  Úlistr   r•  r—  r�  r©  ru   r8   r0   rq  rq    s`  „ Ú"€KØ! S EÑ)€Oò,ð ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜]¨OÓ<Ø‡[�[×Ñ˜]¨KÓ8Ø‡[�[×Ñ˜\¨;Ó7ñ-ó 8ó 9ó =ó :ð-ð* ‡[�[×Ñ˜\¨?Ó;Ø‡[�[×Ñ˜\¨?Ó;ñ-ó <ó <ð-ð& ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜T ?Ó3Ø‡[�[×Ñ˜T ;Ó/Ø‡[�[×Ñ˜T ;Ó/Ø‡[�[×Ñ˜T ;Ó/ñ3ó 0ó 0ó 0ó 4ó :ð
3ð2 ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜\¨G°YÐ+?Ó@Ø‡[�[×Ñ˜\¨;Ó7Ø‡[�[×Ñ˜\¨?Ó;ñ-ó <ó 8ó Aó :ð-ð. ‡[�[×Ñ˜\¨G°YÐ+?Ó@Ø‡[�[×ÑØ Ù‰W�c˜3�Z # s Ó,Ó-°°Ñ>óð ‡[�[×ÑÐ 8Ó9ñ!-ó :ó	ó Að!-ðF ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜\¨;Ó7Ø‡[�[×Ñ˜\¨?Ó;Ø‡[�[×Ñ˜\¨G°YÐ+?Ó@Ø‡[�[×Ñ˜T C¨ :Ó.ñ,ó /ó Aó <ó 8ó :ð
,ð4 ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜T ?Ó3Ø‡[�[×Ñ˜T ;Ó/Ø‡[�[×Ñ˜T ;Ó/Ø‡[�[×Ñ˜T ;Ó/ñ)-ó 0ó 0ó 0ó 4ó :ð
)-óV*'r8   rq  c            
      óŠ  — e Zd Zd„ Zd„ Zej                  j                  dddg«      ej                  j                  dddg«      ej                  j                  dej                  «      d„ «       «       «       Z
ej                  j                  dddg«      ej                  j                  dddg«      ej                  j                  dej                  «      d	„ «       «       «       Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zej                  j;                  d¬«      d„ «       Zd„ Zd„ Z d „ Z!d!„ Z"d"„ Z#d#„ Z$d$„ Z%ej                  j                  d%d&d'd&d(g e&jN                  g «      d)g«      d*„ «       Z(ej                  j                  d%g d+¢«      d,„ «       Z)ej                  j                  d-d&d'd&d(g e&jN                  g «      d)d&d(ig«      d.„ «       Z*d/„ Z+d0„ Z,d1„ Z-d2„ Z.d3„ Z/d4„ Z0ej                  j                  d5g d6¢«      d7„ «       Z1ej                  j                  d8d9d:g«      d;„ «       Z2y<)=ÚTestOperationsc                ó\   — |j                  dd«      dz   |d<   t        j                  |i |¤ŽS ©NÚlevelr   rQ   ©Úpopr�   r‘   ©r”   rl  Úkwargss      r0   r‘   zTestOperations.eval+  ó/   € Ø Ÿ*™* W¨aÓ0°1Ñ4ˆˆw‰Ü�w‰w˜Ð' Ñ'Ð'r8   c                ór  — g }|dk(  rddg}t         j                  t         j                  z   D �cg c]  }||vr|‘Œ
 }}d„ |D «       }|D ]Û  }d|› d�}d|› d�}d|› d�}	|d	v r?d
}
t        j                  t
        |
¬«      5  t        j                  |||¬«       d d d «       ŒXt        d|d|«      }| j                  |||¬«      }||k(  sJ ‚t        ||d|«      }| j                  |d|i||¬«      }||k(  sJ ‚t        d||dz   |«      }| j                  |	d|i||¬«      }||k(  rŒÛJ ‚ y c c}w # 1 sw Y   ŒíxY w)Nr„   rŸ   r    c              3  ó,   K  — | ]  }|d k7  sŒ	|–— Œ y­w)z//Nru   )r.   r«   s     r0   r1   z7TestOperations.test_simple_arith_ops.<locals>.<genexpr>:  s   è ø€ Ò4�b¨¨t«ŒrÑ4ùs   ‚
�z1 z 1zx z (x + 1)rž   z&argument of type 'int' is not iterabler‰   r�   rQ   r±   rÑ   )	r   r   rJ  r(   rŽ   r©   r�   r‘   rG   )r”   r/   r:   Úexclude_arithr«   Ú	arith_opsÚopsr–   r¿   rÀ   r•   Úexpecr±   Úys                 r0   Útest_simple_arith_opsz$TestOperations.test_simple_arith_ops/  s�  € ØˆØ�XÒØ! 8Ð,ˆMô ×)Ñ)¬D×,=Ñ,=Ñ=ö
àØ˜Ñ&ò ð
ˆ	ð 
ñ 5˜IÔ4ˆàò 	"ˆBØ�b�T˜�ˆBØ�r�d˜"�+ˆCØ�r�d˜(Ð#ˆCàÐ%Ñ%Ø>�Ü—]‘]¤9°CÔ8ñ >Ü—G‘G˜B v°fÕ=÷>ð >ô )¨¨B°°6Ó:�Ø—I‘I˜b¨¸�IÓ?�Ø˜E’zÐ!�zä(¨¨B°°6Ó:�Ø—I‘I˜c¨s°A¨h¸vÈf�IÓU�Ø˜E’zÐ!�zä(¨¨B°°A±°vÓ>�Ø—I‘I˜c¨s°A¨h¸vÈf�IÓU�Ø˜E“zÐ!�zñ)	"ùò
÷>ð >ús   ¯D(Á?D-Ä-D6	rD   TFrB   r«   c                ó   — |› d|› d|› �}t         dk(  r<|dv r8d}t        j                  t        |¬«      5  | j	                  |«       d d d «       y | j	                  |«      }t	        |«      }||k(  sJ ‚y # 1 sw Y   y xY w©NrZ  r„   r…   rˆ   r‰   ©r:   r(   rŽ   r�   r‘   ©r”   rD   rB   r«   r–   r•   rÒ   r&  s           r0   Útest_simple_bool_opsz#TestOperations.test_simple_bool_opsR  ó€   € ð ˆu�A�b�T˜˜3˜%Ð ˆä�XÒ "¨Ñ"5Ø6ˆCÜ—‘Ô2¸#Ô>ñ Ø—	‘	˜"”÷àà�i‰i˜‹mˆÜ�2‹hˆØ�cŠzÐ‰z÷àúó   µA4Á4A=c                ó   — |› d|› d|› �}t         dk(  r<|dv r8d}t        j                  t        |¬«      5  | j	                  |«       d d d «       y | j	                  |«      }t	        |«      }||k(  sJ ‚y # 1 sw Y   y xY wrÁ  rÂ  rÃ  s           r0   Útest_bool_ops_with_constantsz+TestOperations.test_bool_ops_with_constantsb  rÅ  rÆ  c                ó^  — t         j                  j                  d«      j                  d«      }t	        t         j                  j                  d«      j                  d«      «      }d}t        j                  t        |¬«      5  | j                  d||dœ¬«       d d d «       y # 1 sw Y   y xY w)	NrN   )rì   rŠ  rH   é   rO   z?N-dimensional objects, where N > 2, are not supported with evalr‰   úx + y©r±   r¾  ©r§   )	r@   rR   rS   rT   r   r(   rŽ   r�   r‘   )r”   r±   r¾  r•   s       r0   Útest_4d_ndarray_failsz$TestOperations.test_4d_ndarray_failsr  sƒ   € Ü�I‰I×!Ñ! !Ó$×4Ñ4°\ÓBˆÜ”2—9‘9×(Ñ(¨Ó+×;Ñ;¸BÓ?Ó@ˆØOˆÜ�]‰]Ô.°cÔ:ñ 	<Ø�I‰I�g°¸Ñ*:ˆIÔ;÷	<÷ 	<ñ 	<ús   ÂB#Â#B,c                ó4   — | j                  d«      }|dk(  sJ ‚y )NÚ1rQ   )r‘   )r”   r±   s     r0   Útest_constantzTestOperations.test_constanty  s   € Ø�I‰I�c‹NˆØ�AŠvˆ‰vr8   c                óÈ   — t        t        j                  j                  d«      j	                  d«      «      }| j                  dd|i¬«      }t        j                  ||«       y )NrN   ©rO   rN   r  rÍ  ©r   r@   rR   rS   rT   r‘   r’   rñ   )r”   r  r~  s      r0   Útest_single_variablez#TestOperations.test_single_variable}  sL   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓHÓIˆØ�i‰i˜¨$°¨ˆiÓ4ˆÜ
×Ñ˜b #Õ&r8   c                óô   — t        t        j                  j                  d«      j	                  d«      «      }t        j                  t        d¬«      5  | j                  d«       d d d «       y # 1 sw Y   y xY w)NrN   rY  úname 'x' is not definedr‰   zdf[x > 2] > 2)	r   r@   rR   rS   rT   r(   rŽ   Ú	NameErrorr‘   ©r”   r  s     r0   Ú&test_failing_subscript_with_name_errorz5TestOperations.test_failing_subscript_with_name_error‚  sV   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆÜ�]‰]œ9Ð,EÔFñ 	'Ø�I‰I�oÔ&÷	'÷ 	'ñ 	'ús   ÁA.Á.A7c                óÞ   — t        t        j                  j                  d«      j	                  d«      «      }| j                  dd|i¬«      }|dz   |dkD     }t        j                  ||«       y )NrN   rY  z(df + 1)[df > 2]r  rÍ  rQ   rÔ  r  s       r0   Útest_lhs_expression_subscriptz,TestOperations.test_lhs_expression_subscript‡  s_   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆØ—‘Ð-¸4À¸*�ÓEˆØ˜‘F˜B ™FÑ#ˆÜ
×Ñ˜f hÕ/r8   c           	     ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }d}|j                  |j                  k  }d}|j                  |j                  z   |j                  z   }d}|j                  |j                  z   |j                  |j                  dk     z   }|||f}|||f}	t        ||	«      D ].  \  }
}t        j                  || j                  |
d	|i¬
«      «       Œ0 y )NrN   rY  Úabcr6  zdf.a < df.bzdf.a + df.b + df.czdf.a + df.b + df.c[df.b < 0]r   r  rÍ  )r   r@   rR   rS   rT   r­  rë   rí   rE   Úzipr’   rõ   r‘   )r”   r  Úexpr1Úexpec1Úexpr2Úexpec2Úexpr3Úexpec3ÚexprsÚexpecsrF   r½  s               r0   Útest_attr_expressionz#TestOperations.test_attr_expression�  sæ   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ5Ãkô
ˆð ˆØ—‘˜Ÿ™‘ˆØ$ˆØ—‘˜Ÿ™‘˜rŸt™tÑ#ˆØ.ˆØ—‘˜Ÿ™‘˜rŸt™t B§D¡D¨1¡H™~Ñ-ˆØ�u˜eÐ#ˆØ˜ Ð'ˆÜ˜E 6Ó*ò 	O‰HˆAˆuÜ×"Ñ" 5¨$¯)©)°AÀ4ÈÀ*¨)Ó*MÕNñ	Or8   c                óŠ  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }t        t        j                  j                  d«      j	                  d«      «      }d}d}t        j                  t        |¬«      5  | j                  |||dœ¬	«       d d d «       y # 1 sw Y   y xY w)
NrN   rY  rÞ  r6  zdf = df2ú%cannot assign without a target objectr‰   )r  r~  rÍ  )
r   r@   rR   rS   rT   r­  r(   rŽ   r=   r‘   )r”   r  r~  rà  r•   s        r0   Útest_assignment_failsz$TestOperations.test_assignment_failsœ  s›   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ5Ãkô
ˆô œŸ	™	×-Ñ-¨aÓ0×@Ñ@ÀÓHÓIˆØˆØ5ˆÜ�]‰]œ:¨SÔ1ñ 	@Ø�I‰I�e¨r¸#Ñ(>ˆIÔ?÷	@÷ 	@ñ 	@ús   ÂB9Â9Cc                ó
  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }t        j                  t        d¬«      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)NrN   rä   Úabr6  úinvalid syntaxr‰   zd c = a + b©
r   r@   rR   rS   rT   r­  r(   rŽ   r9  r‘   rÙ  s     r0   Ú%test_assignment_column_multiple_raisez4TestOperations.test_assignment_column_multiple_raise¦  sa   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆô �]‰]œ;Ð.>Ô?ñ 	#Ø�G‰G�MÔ"÷	#÷ 	#ñ 	#ús   ÁA9Á9Bc                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }d}t        j                  t        |¬«      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)NrN   rä   rí  r6  z5left hand side of an assignment must be a single namer‰   zd,c = a + brï  r<  s      r0   Ú%test_assignment_column_invalid_assignz4TestOperations.test_assignment_column_invalid_assign®  sf   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð FˆÜ�]‰]œ;¨cÔ2ñ 	#Ø�G‰G�MÔ"÷	#÷ 	#ñ 	#úó   Á A;Á;Bc                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }d}t        j                  t        |¬«      5  |j                  d«       d d d «       y # 1 sw Y   y xY w)NrN   rä   rí  r6  zcannot assign to function callr‰   zTimestamp("20131001") = a + brï  r<  s      r0   Ú3test_assignment_column_invalid_assign_function_callzBTestOperations.test_assignment_column_invalid_assign_function_call·  sf   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð /ˆÜ�]‰]œ;¨cÔ2ñ 	5Ø�G‰GÐ3Ô4÷	5÷ 	5ñ 	5úró  c                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  «       }|d   |d   z   |d<   |j                  dd¬	«       t        j                  ||«       y )
NrN   rä   rí  r6  rë   rí   ú	a = a + bT©Úinplace©
r   r@   rR   rS   rT   r­  Úcopyr‘   r’   rñ   ©r”   r  r™   s      r0   Ú&test_assignment_single_assign_existingz5TestOperations.test_assignment_single_assign_existing¿  ór   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð —7‘7“9ˆØ  ™¨°©Ñ5ˆ�‰Ø
�‰� TˆÔ*Ü
×Ñ˜b (Õ+r8   c                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  «       }|d   |d   z   |d<   |j                  dd	¬
«       t        j                  ||«       y )NrN   rä   rí  r6  rë   rí   rE   ú	c = a + bTrø  rú  rü  s      r0   Ú!test_assignment_single_assign_newz0TestOperations.test_assignment_single_assign_newÉ  rþ  r8   c                ó4  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  «       }d}|j                  dd¬«       |j                  «       }d|d	   z   |d
<   t        j                  ||«       y )NrN   rä   rí  r6  rQ   z	a = 1 + bTrø  rí   rë   rú  )r”   r  rë   r™   s       r0   Ú+test_assignment_single_assign_local_overlapz:TestOperations.test_assignment_single_assign_local_overlapÓ  s~   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð �W‰W‹YˆØˆØ
�‰� TˆÔ*à—7‘7“9ˆØ˜H S™MÑ)ˆ�‰Ü
×Ñ˜b (Õ+r8   c                ód  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }d}|j                  j                  «       }|j                  dd¬«       ||j                  z   }t        j                  ||j                  d	¬
«       |j                  �J ‚y )NrN   rä   rí  r6  rQ   r÷  Trø  Fr  )r   r@   rR   rS   rT   r­  rë   rû  r‘   rí   r’   rõ   r;  )r”   r  rë   Úold_arš   s        r0   Ú"test_assignment_single_assign_namez1TestOperations.test_assignment_single_assign_nameß  sˆ   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð ˆØ—‘—	‘	“ˆØ
�‰� TˆÔ*Ø˜Ÿ™‘ˆÜ
×Ñ˜v r§t¡t¸Õ?Ø�{‰{Ð"Ð"Ñ"r8   c                ó4  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  dd¬«       d}t        j                  t        |¬	«      5  |j                  d
«       d d d «       y # 1 sw Y   y xY w)NrN   rä   rí  r6  r   Trø  z#can only assign a single expressionr‰   z	c = a = b)
r   r@   rR   rS   rT   r­  r‘   r(   rŽ   r9  r<  s      r0   Útest_assignment_multiple_raisesz.TestOperations.test_assignment_multiple_raisesë  su   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð 	�‰� TˆÔ*Ø3ˆÜ�]‰]œ;¨cÔ2ñ 	!Ø�G‰G�KÔ ÷	!÷ 	!ñ 	!ús   Á3BÂBc                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }| j                  dd|i|d¬«       |j                  «       }|d	   |d
   z   |d<   t        j                  ||«       y )NrN   rä   rí  r6  zc = df.a + df.br  T)r§   Útargetrù  rë   rí   rE   ©
r   r@   rR   rS   rT   r­  r‘   rû  r’   rñ   rü  s      r0   Útest_assignment_explicitz'TestOperations.test_assignment_explicitõ  s{   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð 	�	‰	Ð#°°r°
À2Ètˆ	ÔTØ—7‘7“9ˆØ  ™¨°©Ñ5ˆ�‰Ü
×Ñ˜b (Õ+r8   c                óŽ   — t        dgdgdœ«      }|j                  d«      }t        dg«      }t        j                  ||d¬«       y )Né   iàÿÿÿ©rë   rí   za in [11, -32]TFr  )r   r‘   r   r’   rõ   r  s       r0   Útest_column_inzTestOperations.test_column_inÿ  sC   € ä˜b˜T¨¨Ñ.Ó/ˆØ—‘Ð)Ó*ˆÜ˜4˜&“>ˆô 	×Ñ˜v x¸UÖCr8   z%Unknown: Omitted test_ in name prior.r$   c                ó  — t        t        j                  j                  d«      j	                  d«      t        d«      ¬«      }|j                  dd¬«      }|€J ‚|j                  «       }|d   |d	   z   |d
<   t        j                  ||«       y )NrN   rä   rí  r6  r   Frø  rë   rí   rE   r  )r”   r  Úactualr™   s       r0   Útest_assignment_not_inplacez*TestOperations.test_assignment_not_inplace  s‚   € ô Ü�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<ÄdÈ4Ãjô
ˆð —‘˜¨e�Ó4ˆØÐ!Ð!Ð!à—7‘7“9ˆØ  ™¨°©Ñ5ˆ�‰Ü
×Ñ˜b (Õ+r8   c                óê  — t        g d¢g d¢dœ«      }|j                  «       }|d   |d   z   |d<   |d   |d   z   |d<   |j                  dd	¬
«      }t        j                  ||«       |�J ‚|d   dz
  |d<   |d   dz   |d<   |j                  dd	¬
«      }t        j                  ||«       |�J ‚d}t        j                  t        |¬«      5  |j                  dd¬
«       d d d «       y # 1 sw Y   y xY w)N©rQ   rN   rì   ©rŠ  rH   rÊ  r  rë   rí   rE   Údú$
        c = a + b
        d = c + bTrø  rQ   rN   rF   ú$
        a = a - 1
        e = a + 2z@Multi-line expressions are only valid if all expressions containr‰   z(
            a = b + 2
            b - 2F)r   rû  r‘   r’   rñ   r(   rŽ   r=   )r”   Úwarn_copy_on_writer  r™   Úanswerr•   s         r0   Útest_multi_line_expressionz)TestOperations.test_multi_line_expression  s$  € äšYªYÑ7Ó8ˆØ—7‘7“9ˆà  ™¨°©Ñ5ˆ�‰Ø  ™¨°©Ñ5ˆ�‰Ø—‘ðð ð	 ó 
ˆô 	×Ñ˜h¨Ô+Øˆ~Ðˆ~à  ™¨Ñ)ˆ�‰Ø  ™¨Ñ)ˆ�‰Ø—‘ðð ð	 ó 
ˆô 	×Ñ˜h¨Ô+Øˆ~Ðˆ~ð QˆÜ�]‰]œ:¨SÔ1ñ 	Ø�G‰Gðð ð	 ô ÷	÷ 	ñ 	ús   ÃC)Ã)C2c                óP  — t        g d¢g d¢dœ«      }|j                  «       }|d   |d   z   |d<   |d   |d   z   |d<   |j                  dd	¬
«      }t        j                  ||«       |d   dz
  |d<   |d   dz   |d<   |j                  dd	¬
«      }t        j                  ||«       y )Nr  r  r  rë   rí   rE   r  r  Frø  rQ   rN   rF   r  ©r   rû  r‘   r’   rñ   rü  s      r0   Ú&test_multi_line_expression_not_inplacez5TestOperations.test_multi_line_expression_not_inplace;  sÊ   € äšYªYÑ7Ó8ˆØ—7‘7“9ˆà  ™¨°©Ñ5ˆ�‰Ø  ™¨°©Ñ5ˆ�‰Ø�W‰Wðð ð	 ó 
ˆô 	×Ñ˜h¨Ô+à  ™¨Ñ)ˆ�‰Ø  ™¨Ñ)ˆ�‰Ø�W‰Wðð ð	 ó 
ˆô 	×Ñ˜h¨Õ+r8   c                óÒ   — t        g d¢g d¢dœ«      }|j                  «       }d}|d   |z  |d<   |d   |z   |d<   |j                  dd	¬
«      }t        j                  ||«       |�J ‚y )Nr  r  r  r”  rë   rE   r  z?
        c = a * @local_var
        d = c + @local_var
        Trø  r  )r”   r  r™   Ú	local_varr  s        r0   Ú)test_multi_line_expression_local_variablez8TestOperations.test_multi_line_expression_local_variableT  s~   € äšYªYÑ7Ó8ˆØ—7‘7“9ˆàˆ	Ø  ™¨	Ñ1ˆ�‰Ø  ™¨	Ñ1ˆ�‰Ø—‘ðð ð ó 
ˆô 	×Ñ˜h¨Ô+Øˆ~Ð‰~r8   c                óð   — t        g d¢g d¢dœ«      }d„ }|j                  «       }|d    |dd«      z  |d<   |d    |dd«      z   |d	<   |j                  d
d¬«      }t        j                  ||«       |�J ‚y )Nr  r  r  c                ó   — |S r4   ru   r  s     r0   Ú
local_funczUTestOperations.test_multi_line_expression_callable_local_variable.<locals>.local_funcj  ó   € ØˆHr8   rë   rQ   r”  rE   r  zM
        c = a * @local_func(1, 7)
        d = c + @local_func(1, 7)
        Trø  r  ©r”   r  r%  r™   r  s        r0   Ú2test_multi_line_expression_callable_local_variablezATestOperations.test_multi_line_expression_callable_local_variablef  sŽ   € äšYªYÑ7Ó8ˆò	ð —7‘7“9ˆØ  ™©
°1°aÓ(8Ñ8ˆ�‰Ø  ™©
°1°aÓ(8Ñ8ˆ�‰Ø—‘ðð ð ó 
ˆô 	×Ñ˜h¨Ô+Øˆ~Ð‰~r8   c                óô   — t        g d¢g d¢dœ«      }d„ }|j                  «       }|d    |dd¬«      z  |d	<   |d	    |dd¬«      z   |d
<   |j                  dd¬«      }t        j                  ||«       |�J ‚y )Nr  r  r  c                ó   — |S r4   ru   r  s     r0   r%  zaTestOperations.test_multi_line_expression_callable_local_variable_with_kwargs.<locals>.local_func~  r&  r8   rë   r”  rQ   )rí   rë   rE   r  zU
        c = a * @local_func(b=7, a=1)
        d = c + @local_func(b=7, a=1)
        Trø  r  r'  s        r0   Ú>test_multi_line_expression_callable_local_variable_with_kwargszMTestOperations.test_multi_line_expression_callable_local_variable_with_kwargsz  sŽ   € äšYªYÑ7Ó8ˆò	ð —7‘7“9ˆØ  ™©
°Q¸!Ô(<Ñ<ˆ�‰Ø  ™©
°Q¸!Ô(<Ñ<ˆ�‰Ø—‘ðð ð ó 
ˆô 	×Ñ˜h¨Ô+Øˆ~Ð‰~r8   c                óú   — t        g d¢g d¢dœ«      }|j                  «       }d}t        j                  t        |¬«      5  |j                  d«       d d d «       t        j                  ||«       y # 1 sw Y   Œ xY w)Nr  r  r  rê  r‰   za = 1)r   rû  r(   rŽ   r=   r,  r’   rñ   )r”   r  Údf_origr•   s       r0   Útest_assignment_in_queryz'TestOperations.test_assignment_in_queryŽ  s`   € äšYªYÑ7Ó8ˆØ—'‘'“)ˆØ5ˆÜ�]‰]œ:¨SÔ1ñ 	Ø�H‰H�WÔ÷	ä
×Ñ˜b 'Õ*÷	ð 	ús   Á A1Á1A:c                ó  — t        g d¢g d¢dœ«      }|j                  «       }||d   dk(     }|j                  dd¬«       t        j                  ||«       i }dd	i}| j                  d
|d¬«       t        j                  ||«       y )Nr  r  r  rë   rN   za == 2Trø  rì   ú	a = 1 + 2©r
  rù  )r   rû  r,  r’   rñ   r‘   Úassert_dict_equalrü  s      r0   Útest_query_inplacez!TestOperations.test_query_inplace—  s   € äšYªYÑ7Ó8ˆØ—7‘7“9ˆØ˜H S™M¨QÑ.Ñ/ˆØ
�‰� 4ˆÔ(Ü
×Ñ˜h¨Ô+àˆØ˜�8ˆà�	‰	�+ b°$ˆ	Ô7Ü
×Ñ˜R Õ*r8   Úinvalid_targetrQ   ÚcatrN   ©rQ   rì   c                ó6  — d}d}t        j                  t        |¬«      5  | j                  ||d¬«       d d d «       t	        |d«      r9t        j                  t        |¬«      5  | j                  ||d¬«       d d d «       y y # 1 sw Y   ŒOxY w# 1 sw Y   y xY w)Nz)Cannot assign expression output to targetr0  r‰   Tr1  rû  F)r(   rŽ   r=   r‘   Úhasattr©r”   r4  r•   Ú
expressions       r0   Útest_cannot_item_assignz&TestOperations.test_cannot_item_assign¥  s•   € à9ˆØ ˆ
ä�]‰]œ:¨SÔ1ñ 	GØ�I‰I�j¨ÀˆIÔF÷	Gô �> 6Ô*Ü—‘œz°Ô5ñ LØ—	‘	˜*¨^ÀU�	ÔK÷Lð Lð +÷	Gð 	Gú÷Lð Lús    BÁ$BÂBÂB)rQ   r5  r6  c                ó”   — d}d}t        j                  t        |¬«      5  | j                  ||d¬«       d d d «       y # 1 sw Y   y xY w)Nz"Cannot return a copy of the targetr0  r‰   Fr1  )r(   rŽ   r=   r‘   r9  s       r0   Útest_cannot_copy_itemz$TestOperations.test_cannot_copy_item±  sE   € à2ˆØ ˆ
ä�]‰]œ:¨SÔ1ñ 	HØ�I‰I�j¨ÀˆIÔG÷	H÷ 	Hñ 	Hús	    >¾Ar
  c                óÆ   — d}| j                  ||d¬«      dk(  sJ ‚d}t        j                  t        |¬«      5  | j                  ||d¬«       d d d «       y # 1 sw Y   y xY w)Nú1 + 2Fr1  rì   z0Cannot operate inplace if there is no assignmentr‰   T)r‘   r(   rŽ   r=   )r”   r
  r:  r•   s       r0   Útest_inplace_no_assignmentz)TestOperations.test_inplace_no_assignment¹  s^   € àˆ
à�y‰y˜¨F¸EˆyÓBÀaÒGÐGÐGà@ˆÜ�]‰]œ:¨SÔ1ñ 	?Ø�I‰I�j¨¸ˆIÔ>÷	?÷ 	?ñ 	?ús   ¹AÁA c                ó$  — t        t        j                  j                  d«      j	                  d«      t        ddd¬«      ¬«      }|dk  }| j                  dd|i¬	«      }|dk  }t        j                  ||«       t        j                  ||«       y )
NrN   ©rN   rN   rj   ro   ©rp   rl   r6  r‚  r  rÍ  ©	r   r@   rR   rS   rT   r   r‘   r’   rñ   )r”   r  rF   Úrr±   s        r0   Ú*test_basic_period_index_boolean_expressionz9TestOperations.test_basic_period_index_boolean_expressionÃ  s   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ü  °CÀÔCô
ˆð �‰FˆØ�I‰I�h¨D°"¨:ˆIÓ6ˆØ�‰Fˆä
×Ñ˜a Ô#Ü
×Ñ˜a Õ#r8   c                óô   — t        t        j                  j                  d«      j	                  d«      t        ddd¬«      ¬«      }| j                  dd|i¬	«      }||d
k     }t        j                  ||«       y )NrN   rB  rj   ro   rC  r6  zdf[df < 2 + 3]r  rÍ  rH   rD  ©r”   r  rE  rF   s       r0   Ú,test_basic_period_index_subscript_expressionz;TestOperations.test_basic_period_index_subscript_expressionÏ  sk   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ü  °CÀÔCô
ˆð �I‰IÐ&°D¸"°:ˆIÓ>ˆØˆr�E‰z‰NˆÜ
×Ñ˜a Õ#r8   c                ó  — t        t        j                  j                  d«      j	                  d«      t        ddd¬«      ¬«      }| j                  dd|i¬	«      }|||dk     dk     |dz  z   }t        j                  ||«       y )
NrN   rB  rj   ro   rC  r6  zdf[df[df < 2] < 2] + df * 2r  rÍ  rD  rH  s       r0   Ú-test_nested_period_index_subscript_expressionz<TestOperations.test_nested_period_index_subscript_expressionØ  s}   € ÜÜ�I‰I×!Ñ! !Ó$×4Ñ4°VÓ<Ü  °CÀÔCô
ˆð �I‰IÐ3ÀÀrÀ
ˆIÓKˆØˆr�"�q‘&‰z˜A‰~Ñ  a¡Ñ'ˆÜ
×Ñ˜a Õ#r8   c                ó  — t        t        j                  j                  d«      j	                  d«      «      }t        dd¬«      |d<   | j                  dd|i||¬	«      }|j                  d
k  }t        j                  ||d¬«       y )NrN   rY  z1/1/2012rH   rk   Údates1zdf.dates1 < 20130101r  rÑ   Ú20130101Fr  )
r   r@   rR   rS   rT   r   r‘   rM  r’   rõ   )r”   r/   r:   r  rÒ   r½  s         r0   Útest_date_booleanz TestOperations.test_date_booleaná  s{   € Ü”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆÜ! *°aÔ8ˆˆ8‰Ø�i‰iØ"Ø˜b�zØØð	 ó 
ˆð —	‘	˜JÑ&ˆÜ
×Ñ˜s E°uÖ=r8   c                ó®  — |dk7  �rt        j                  d||¬«      }|sJ ‚t        j                  d||¬«      }|sJ ‚t        j                  d||¬«      }|rJ ‚t        j                  d||¬«      }|sJ ‚t        j                  d||¬«      }|sJ ‚t        j                  d||¬«      }|sJ ‚t        j                  d	||¬«      }|sJ ‚t        j                  d
||¬«      }|sJ ‚t        j                  d||¬«      }|rJ ‚t        j                  d||¬«      }|sJ ‚y d}t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       d}t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       t        j                  t        |¬«      5  t        j                  d||¬«       d d d «       y # 1 sw Y   �Œ9xY w# 1 sw Y   �Œ
xY w# 1 sw Y   ŒÚxY w# 1 sw Y   ŒªxY w# 1 sw Y   ŒxxY w# 1 sw Y   y xY w)Nr„   z1 in [1, 2]r�   z2 in (1, 2)z3 in (1, 2)z3 not in (1, 2)z[3] not in (1, 2)z[3] in ([3], 2)z[[3]] in [[[3]], 2]z(3,) in [(3,), 2]z(3,) not in [(3,), 2]z[(3,)] in [[(3,)], 2]z'In' nodes are not implementedr‰   z[(3,)] in (1, 2, [(3,)])z!'NotIn' nodes are not implementedz[3] not in (1, 2, [[3]]))r�   r‘   r(   rŽ   r�   )r”   r/   r:   rÒ   r•   s        r0   Útest_simple_in_opsz!TestOperations.test_simple_in_opsí  sn  € Ø�XÓÜ—'‘'˜-°¸vÔFˆCÙˆJ�3ä—'‘'˜-°¸vÔFˆCÙˆJ�3ä—'‘'˜-°¸vÔFˆCÙˆN�7ä—'‘'Ð+°FÀ6ÔJˆCÙˆJ�3ä—'‘'Ð-°fÀVÔLˆCÙˆJ�3ä—'‘'Ð+°FÀ6ÔJˆCÙˆJ�3ä—'‘'Ð/¸ÀvÔNˆCÙˆJ�3ä—'‘'Ð-°fÀVÔLˆCÙˆJ�3ä—'‘'Ð1¸&ÈÔPˆCÙˆN�7ä—'‘'Ð1¸&ÈÔPˆCÙˆJ‘3à2ˆCÜ—‘Ô2¸#Ô>ñ EÜ—‘˜¨f¸VÕD÷Eä—‘Ô2¸#Ô>ñ EÜ—‘˜¨f¸VÕD÷Eä—‘Ô2¸#Ô>ñ EÜ—‘˜¨f¸VÕD÷Eä—‘Ô2¸#Ô>ñ RÜ—‘Ð2¸6È&ÕQ÷Rà5ˆCÜ—‘Ô2¸#Ô>ñ IÜ—‘Ð)°&ÀÕH÷Iä—‘Ô2¸#Ô>ñ RÜ—‘Ð2¸6È&ÕQ÷Rð R÷Eñ Eú÷Eñ Eú÷Eð Eú÷Rð Rú÷Ið Iú÷Rð RúsH   Ä=JÅ9JÆ5J'Ç1J3È/J?É+KÊJÊJ$Ê'J0Ê3J<Ê?KËKc                ól   — d}dj                  d«      }d}t        j                  |||¬«      }||k(  sJ ‚y )NrQ   z * Ú!aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaar�   )r¨   r�   r‘   )r”   r/   r:   rë   r   r™   rÒ   s          r0   Útest_check_many_exprsz$TestOperations.test_check_many_exprs  s8   € ØˆØ�z‰z˜(Ó#ˆØˆÜ�g‰g�d 6°&Ô9ˆØ�hŠÐ‰r8   r   )zdf > 2 and df > 3zdf > 2 or df > 3z
not df > 2c                óZ  — t        t        j                  j                  d«      j	                  d«      «      }|dk(  rHd}d|v rd}t        j                  t        |¬«      5  t        j                  |d|i||¬	«       d d d «       y t        j                  |d|i||¬	«       y # 1 sw Y   y xY w)
NrN   rY  r„   rˆ   Únotú'Not' nodes are not implementedr‰   r  )r§   r:   r/   ©
r   r@   rR   rS   rT   r(   rŽ   r�   r�   r‘   )r”   r   r/   r:   r  r•   s         r0   Útest_fails_and_or_notz$TestOperations.test_fails_and_or_not#  s¤   € ô ”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆØ�XÒØ6ˆCØ˜‰}Ø7�ä—‘Ô2¸#Ô>ñ Ü—‘ØØ $ b˜zØ!Ø!õ	÷ð ô �G‰GØØ  "˜:ØØö	÷ð ús   Á B!Â!B*Úcharr¤   r»   c                óN  — t        t        j                  j                  d«      j	                  d«      «      }d|› d�}|dk(  r?d}t        j                  t        |¬«      5  t        j                  |||¬«       d d d «       y t        j                  |||¬«       y # 1 sw Y   y xY w)	NrN   rY  z(df + 2)[df > 1] > 0 z	 (df > 0)r„   z$cannot evaluate scalar only bool opsr‰   r  rX  )r”   rZ  r/   r:   r  r–   r•   s          r0   Útest_fails_ampersand_pipez(TestOperations.test_fails_ampersand_pipeB  sŒ   € ä”r—y‘y×,Ñ,¨QÓ/×?Ñ?ÀÓGÓHˆØ$ T F¨)Ð4ˆØ�XÒØ8ˆCÜ—‘Ô2¸#Ô>ñ :Ü—‘˜ 6°&Õ9÷:ð :ô �G‰G�B˜v¨fÖ5÷	:ð :ús   Á BÂB$N)3rE  rF  rG  r‘   r¿  r(   r*   rH  r   rI  rÄ  rÈ  rÎ  rÑ  rÕ  rÚ  rÜ  rè  rë  rð  rò  rõ  rý  r  r  r  r  r  r  r²   r  r  r  r"  r(  r+  r.  r3  r@   r¯   r;  r=  r@  rF  rI  rK  rO  rQ  rT  rY  r\  ru   r8   r0   r¯  r¯  *  s¤  „ ò(ò!"ðF ‡[�[×Ñ˜U T¨5 MÓ2Ø‡[�[×Ñ˜U T¨5 MÓ2Ø‡[�[×Ñ˜T 4×#5Ñ#5Ó6ñó 7ó 3ó 3ðð ‡[�[×Ñ˜U T¨5 MÓ2Ø‡[�[×Ñ˜U T¨5 MÓ2Ø‡[�[×Ñ˜T 4×#5Ñ#5Ó6ñó 7ó 3ó 3ðò<òò'ò
'ò
0òOò@ò#ò#ò5ò,ò,ò
,ò
#ò!ò,òDð ‡[�[×ÑÐEÐÓFñ,ó Gð,ò#òJ,ò2ò$ò(ò(+ò+ð ‡[�[×ÑÐ-°°5¸1¸a¸&À(À"Ç(Á(È2Ã,ÐPVÐ/WÓXñ	Ló Yð	Lð ‡[�[×ÑÐ-Ò/AÓBñHó CðHð ‡[�[×Ñ˜X¨¨5°1°a°&¸(¸"¿(¹(À2»,ÈÐQRÐTUÐPVÐ'WÓXñ?ó Yð?ò
$ò$ò$ò
>ò-Rò^ð ‡[�[×ÑØò	
óñóðð. ‡[�[×Ñ˜V c¨3 ZÓ0ñ	6ó 1ñ	6r8   r¯  c                  óT  — e Zd Zd„ Zej
                  j                  e d¬«      ej
                  j                  de	«      d„ «       «       Z
ej
                  j                  de«      d„ «       Zd„ Zd„ Zej
                  j                  d	ej                   ej"                  fej$                  ej"                  fej&                  ej&                  fej"                  ej"                  f ej(                  ej*                  ej*                  ej.                  ¬
«      g«      d„ «       Zd„ Zd„ Zy)ÚTestMathc                ó\   — |j                  dd«      dz   |d<   t        j                  |i |¤ŽS r±  r³  rµ  s      r0   r‘   zTestMath.evalP  r·  r8   z&Unary ops only implemented for numexprr$   Úfnc                ól  — t        dt        j                  j                  d«      j	                  d«      i«      }|j
                  }|› d�}| j                  |«      }t        j                  d¬«      5   t        t        |«      |«      }d d d «       t        j                  |d¬«       y # 1 sw Y   Œ"xY w)	Nrë   rN   rO   z(a)Úignore©ÚallFr  )r   r@   rR   rS   rT   rë   r‘   Úerrstater�  r’   rõ   )r”   r`  r  rë   r   Úgotrò   s          r0   Útest_unary_functionszTestMath.test_unary_functionsT  s“   € ô
 ˜œRŸY™Y×2Ñ2°1Ó5×EÑEÀbÓIÐJÓKˆØ�D‰Dˆà��SˆzˆØ�i‰i˜‹oˆÜ�[‰[˜XÔ&ñ 	(Ø$”WœR “_ QÓ'ˆF÷	(ä
×Ñ˜s F¸Ö>÷	(ð 	(ús   Á2B*Â*B3c                óà  — t        t        j                  j                  d«      j	                  d«      t        j                  j                  d«      j	                  d«      dœ«      }|j
                  }|j                  }|› d�}| j                  |«      }t        j                  d¬«      5   t        t        |«      ||«      }d d d «       t        j                  |d¬«       y # 1 sw Y   Œ"xY w)	NrN   rO   r  z(a, b)rb  rc  Fr  )r   r@   rR   rS   rT   rë   rí   r‘   re  r�  r’   r´   )r”   r`  r  rë   rí   r   rf  rò   s           r0   Útest_binary_functionszTestMath.test_binary_functionsb  s¾   € ää—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAÜ—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAñó
ˆð �D‰DˆØ�D‰Dˆà��Vˆ}ˆØ�i‰i˜‹oˆÜ�[‰[˜XÔ&ñ 	+Ø$”WœR “_ Q¨Ó*ˆF÷	+ä
×Ñ˜s F¸Ö>÷	+ð 	+ús   Â+C$Ã$C-c                ó¼  — t        t        j                  j                  d«      j	                  d«      t        j                  j                  d«      j	                  d«      dœ«      }|j                  d||d¬«       |j                  }t        j                  t        j                  |j                  «      |j                  «      }t        j                  ||d¬«       y )	NrN   rO   r  ze = arctan2(sin(a), b)T©r/   r:   rù  Fr  )r   r@   rR   rS   rT   r‘   rF   Úarctan2Úsinrë   rí   r’   rõ   ©r”   r/   r:   r  rf  rò   s         r0   Útest_df_use_casezTestMath.test_df_use_cases  s§   € Üä—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAÜ—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAñó
ˆð 	�‰Ø$ØØØð	 	ô 	
ð �d‰dˆÜ—‘œBŸF™F 2§4¡4›L¨"¯$©$Ó/ˆÜ
×Ñ˜s F¸Ö>r8   c                óš  — t        t        j                  j                  d«      j	                  d«      t        j                  j                  d«      j	                  d«      dœ«      }|j                  d||d¬«       |j                  }t        j                  |j                  |j                  z   «      }t        j                  ||d¬«       y )	NrN   rO   r  ze = sin(a + b)Trk  Fr  )r   r@   rR   rS   rT   r‘   rF   rm  rë   rí   r’   rõ   rn  s         r0   Ú test_df_arithmetic_subexpressionz)TestMath.test_df_arithmetic_subexpression„  s—   € Üä—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAÜ—Y‘Y×*Ñ*¨1Ó-×=Ñ=¸bÓAñó
ˆð 	�‰Ð ¨¸ÈˆÔMØ�d‰dˆÜ—‘˜Ÿ™˜rŸt™t™Ó$ˆÜ
×Ñ˜s F¸Ö>r8   zdtype, expect_dtyper&   c                óÒ  — t        dt        j                  j                  d«      j	                  d«      j                  |«      i«      }|j                  j                  |k(  sJ ‚|j                  d||d¬«       |j                  }t        j                  |j                  «      }|j                  |j                  k(  sJ ‚||j                  k(  sJ ‚t        j                  ||d¬«       y )	Nrë   rN   rO   z
b = sin(a)Trk  Fr  )r   r@   rR   rS   rT   rÞ   rë   r[   r‘   rí   rm  r’   rõ   )r”   r[   Úexpect_dtyper/   r:   r  rf  rò   s           r0   Útest_result_typeszTestMath.test_result_types�  s»   € ô  Ø”"—)‘)×'Ñ'¨Ó*×:Ñ:¸2Ó>×EÑEÀeÓLÐMó
ˆð �t‰t�z‰z˜UÒ"Ð"Ð"Ø
�‰� V°FÀDˆÔIØ�d‰dˆÜ—‘˜Ÿ™“ˆØ�|‰|˜sŸy™yÒ(Ð(Ð(Ø˜sŸy™yÒ(Ð(Ð(Ü
×Ñ˜s F¸Ö>r8   c                ó  — t        dt        j                  j                  d«      j	                  d«      i«      }d}t        j                  t        |¬«      5  |j                  d||¬«       d d d «       y # 1 sw Y   y xY w)Nrë   rN   rO   z#"mysin" is not a supported functionr‰   zmysin(a)r�   )	r   r@   rR   rS   rT   r(   rŽ   r=   r‘   ©r”   r/   r:   r  r•   s        r0   Útest_undefined_funczTestMath.test_undefined_func«  se   € Ü˜œRŸY™Y×2Ñ2°1Ó5×EÑEÀbÓIÐJÓKˆØ3ˆä�]‰]œ:¨SÔ1ñ 	>Ø�G‰G�J v°fˆGÔ=÷	>÷ 	>ñ 	>úó   ÁA5Á5A>c                ó  — t        dt        j                  j                  d«      j	                  d«      i«      }d}t        j                  t        |¬«      5  |j                  d||¬«       d d d «       y # 1 sw Y   y xY w)Nrë   rN   rO   z1Function "sin" does not support keyword argumentsr‰   zsin(x=a)r�   )	r   r@   rR   rS   rT   r(   rŽ   r©   r‘   rv  s        r0   Útest_keyword_argzTestMath.test_keyword_arg²  se   € Ü˜œRŸY™Y×2Ñ2°1Ó5×EÑEÀbÓIÐJÓKˆØAˆä�]‰]œ9¨CÔ0ñ 	>Ø�G‰G�J v°fˆGÔ=÷	>÷ 	>ñ 	>úrx  N)rE  rF  rG  r‘   r(   r*   r+   r   rH  r    rg  r   ri  ro  rq  r@   Úint32rb   r]   rO  r)   Ú
complex128r,   rN  rt  rw  rz  ru   r8   r0   r^  r^  O  s  „ ò(ð ‡[�[×ÑØÐÐ&Nð ó ð ‡[�[×Ñ˜T ?Ó3ñ?ó 4óð?ð ‡[�[×Ñ˜TÐ#3Ó4ñ?ó 5ð?ò ?ò"
?ð ‡[�[×ÑØà�X‰X�r—z‘zÐ"Ø�X‰X�r—z‘zÐ"Ø�Z‰Z˜Ÿ™Ð$Ø�Z‰Z˜Ÿ™Ð$ØˆF�L‰L˜Ÿ™¨¯©¸R×=OÑ=OÔPð	
ó	ñ?ó	ð?ò">ó>r8   r^  rN   rO   c                  ó*   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zy)Ú	TestScopec                ón   — d}t        j                  t        dz  t        j                  |||¬«      «       y )Nú
_var_s * 2rN   r�   )r’   rÚ   Ú_var_sr�   r‘   )r”   r/   r:   rF   s       r0   Útest_global_scopezTestScope.test_global_scope¾  s+   € ØˆÜ
×#Ñ#Ü�Q‰JœŸ™ ¨&¸Ô@õ	
r8   c                óÊ   — d}t        «       j                  «       }t        j                  d|||¬«       t        «       j                  «       }|j	                  d«       ||k(  sJ ‚y )NrQ   úx + 1rÑ   Úlcls)Úlocalsrû  r�   r‘   r´  )r”   r/   r:   r±   r…  Úlcls2s         r0   Útest_no_new_localszTestScope.test_no_new_localsÄ  sK   € ØˆÜ‹x�}‰}‹ˆÜ
�‰� D°ÀÕGÜ“—‘“ˆØ�	‰	�&ÔØ�uŠ}Ð‰}r8   c                ó¦   — d}t        «       j                  «       }t        j                  d||¬«       t        «       j                  «       }||k(  sJ ‚y )NrQ   r„  r�   )Úglobalsrû  r�   r‘   )r”   r/   r:   r±   ÚgblsÚgbls2s         r0   Útest_no_new_globalszTestScope.test_no_new_globalsÌ  s?   € ØˆÜ‹y�~‰~ÓˆÜ
�‰� ¨vÕ6Ü“	—‘Ó ˆØ�uŠ}Ð‰}r8   c                óž   — d}d}t        j                  t        |¬«      5  t        j                  d||i ¬«       d d d «       y # 1 sw Y   y xY w)NrQ   r×  r‰   r„  r¦   ©r(   rŽ   r	   r�   r‘   )r”   r/   r:   r±   r•   s        r0   Útest_empty_localszTestScope.test_empty_localsÓ  sF   € àˆØ'ˆÜ�]‰]Ô1¸Ô=ñ 	JÜ�G‰G�G F°6ÀbÕI÷	J÷ 	Jñ 	Júó    AÁAc                óž   — d}d}t        j                  t        |¬«      5  t        j                  |||i ¬«       d d d «       y # 1 sw Y   y xY w)Nzname '_var_s' is not definedr€  r‰   )r/   r:   Úglobal_dictr�  )r”   r/   r:   r•   rF   s        r0   Útest_empty_globalszTestScope.test_empty_globalsÚ  sF   € à,ˆØˆÜ�]‰]Ô1¸Ô=ñ 	EÜ�G‰G�A˜f¨VÀÕD÷	E÷ 	Eñ 	Eúr‘  N)rE  rF  rG  r‚  rˆ  r�  r�  r”  ru   r8   r0   r~  r~  ½  s   „ ò
òòòJóEr8   r~  r#   c                 óž   — d} t        j                  t        | ¬«      5  t        j                  ddddœd¬«       d d d «       y # 1 sw Y   y xY w)	NzInvalid engine 'asdf' passedr‰   rË  rQ   rN   rÌ  Úasdf)r§   r/   ©r(   rŽ   ÚKeyErrorr�   r‘   ©r•   s    r0   Útest_invalid_enginerš  â  óC   € à
(€CÜ	�‰”x sÔ	+ñ EÜ
�‰�¨!°!Ñ$4¸VÕD÷E÷ Eñ Eúó   žAÁA)Úuse_numexprr™   ))Tr#   )Fr„   c                ó†   — ddl m} t        j                  d| «      5   |d «      }||k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr   )Ú_check_engineúcompute.use_numexpr)Úpandas.core.computation.evalrŸ  r�   Úoption_context)r�  r™   rŸ  rš   s       r0   Útest_numexpr_option_respectedr£  é  sE   € õ ;ä	×	Ñ	Ð0°+Ó	>ñ "Ù˜tÓ$ˆØ˜Ò!Ð!Ñ!÷"÷ "ñ "ús	   �7·A c                 óø   — t        j                  dd«      5  t        g d¢g d¢dœ«      } | j                  d«      }t        d d gddgdœd	dg¬
«      }t	        j
                  ||«       d d d «       y # 1 sw Y   y xY w)Nr   F)TFTFNN)rQ   rN   rì   rŠ  rH   rÊ  )r)  ÚBz
A.isnull()rH   rÊ  rŠ  )r:  )r�   r¢  r   r,  r’   rñ   )r  rš   r™   s      r0   Ú#test_numexpr_option_incompatible_opr¦  ú  sz   € ô 
×	Ñ	Ð0°%Ó	8ñ 0ÜÚ8Ò?QÑRó
ˆð —‘˜,Ó'ˆÜ D¨$ <°q¸!°fÑ=ÀaÈÀVÔLˆÜ
×Ñ˜f hÔ/÷0÷ 0ñ 0ús   —AA0Á0A9c                 óž   — d} t        j                  t        | ¬«      5  t        j                  ddddœd¬«       d d d «       y # 1 sw Y   y xY w)	NzInvalid parser 'asdf' passedr‰   rË  rQ   rN   rÌ  r–  )r§   r:   r—  r™  s    r0   Útest_invalid_parserr¨    r›  rœ  )r„   r   r­   z dict[str, type[BaseExprVisitor]]Ú_parsersr/   r:   c                óÒ   — t         |   } |d| |«      }|j                  D ]9  }d}t        j                  t        |¬«      5   t        ||«      «        d d d «       Œ; y # 1 sw Y   ŒFxY w)Nr„  znodes are not implementedr‰   )r©  Úunsupported_nodesr(   rŽ   r�   r�  )r/   r:   ÚVisitorClassÚinstr¼  r•   s         r0   Útest_disallowed_nodesr®    sn   € ô ˜FÑ#€LÙ˜ ¨Ó0€Dà×-Ñ-ò !ˆØ)ˆÜ�]‰]Ô.°cÔ:ñ 	!ØŒG�D˜#ÓÔ ÷	!ð 	!ñ!÷	!ð 	!ús   Á AÁA&	c                ó˜   — d}t        j                  t        d¬«      5  t        j                  || |¬«       d d d «       y # 1 sw Y   y xY w)Nzs +rî  r‰   r�   ©r(   rŽ   r9  r�   r‘   )r/   r:   rF   s      r0   Útest_syntax_error_exprsr±     s;   € Ø€AÜ	�‰”{Ð*:Ô	;ñ 1Ü
�‰�˜&¨Õ0÷1÷ 1ñ 1ús   žA Á A	c                óœ   — d}d}t        j                  t        |¬«      5  t        j                  || |¬«       d d d «       y # 1 sw Y   y xY w)Nzs + tzname 's' is not definedr‰   r�   )r(   rŽ   rØ  r�   r‘   )r/   r:   rF   r•   s       r0   Útest_name_error_exprsr³  &  s?   € Ø€AØ
#€CÜ	�‰”y¨Ô	,ñ 1Ü
�‰�˜&¨Õ0÷1÷ 1ñ 1ús    AÁAÚexpress)za + @bz@a + bz@a + @bc                ó:  — d\  }}|dk7  r=t        j                  t        d¬«      5  t        j                  || |¬«       d d d «       y t        j                  t        d¬«      5  t        j                  || |¬«       d d d «       y # 1 sw Y   y xY w# 1 sw Y   y xY w)N©rQ   rN   r­   zThe '@' prefix is onlyr‰   r�   zThe '@' prefix is notr°  )r/   r:   r´  rë   rí   s        r0   Ú%test_invalid_local_variable_referencer·  -  s‡   € à�D€A€qà�ÒÜ�]‰]œ;Ð.FÔGñ 	;Ü�G‰G�G F°6Õ:÷	;ð 	;ô �]‰]œ;Ð.EÔFñ 	;Ü�G‰G�G F°6Õ:÷	;ð 	;÷	;ð 	;ú÷	;ð 	;ús   ¦BÁ#BÂBÂBc                óò   — d\  }}| dk(  r?d}t        j                  t        |¬«      5  t        j                  d| |¬«       d d d «       y t        j                  d| |¬«      }|||z   k(  sJ ‚y # 1 sw Y   y xY w)Nr¶  r#   zVariables in expression .+r‰   zsin + dotted_liner�   )r(   rŽ   r   r�   r‘   )r/   r:   rm  Údotted_liner•   rÒ   s         r0   Útest_numexpr_builtin_raisesrº  9  s€   € ØÑ€CˆØ�ÒØ*ˆÜ�]‰]Ô1¸Ô=ñ 	GÜ�G‰GÐ'°¸vÕF÷	Gð 	Gô �g‰gÐ)°&ÀÔHˆØ�c˜KÑ'Ò'Ð'Ñ'÷		Gð 	Gús   ¨A-Á-A6c                óš   — d}t        j                  t        d¬«      5  t        j                  d|| |¬«       d d d «       y # 1 sw Y   y xY w)N)é*   g      @zResolver of type .+r‰   r?  )Ú	resolversr/   r:   )r(   rŽ   r©   r�   r‘   )r/   r:   Úcannot_resolves      r0   Útest_bad_resolver_raisesr¿  D  sA   € Ø€NÜ	�‰”yÐ(=Ô	>ñ QÜ
�‰� >¸&ÈÕP÷Q÷ Qñ Qús   žAÁA
c                ó”   — t        j                  t        d¬«      5  t        j                  d| |¬«       d d d «       y # 1 sw Y   y xY w)Nzexpr cannot be an empty stringr‰   Ú r�   ©r(   rŽ   r=   r�   r‘   r�   s     r0   Útest_empty_string_raisesrÃ  J  s6   € ä	�‰”zÐ)IÔ	Jñ 2Ü
�‰�˜6¨&Õ1÷2÷ 2ñ 2úó	   œ>¾Ac                ó”   — t        j                  t        d¬«      5  t        j                  d| |¬«       d d d «       y # 1 sw Y   y xY w)Nz#only a single expression is allowedr‰   z1 + 1; 2 + 2r�   r°  r�   s     r0   Ú$test_more_than_one_expression_raisesrÆ  P  s6   € Ü	�‰”{Ð*OÔ	Pñ >Ü
�‰� v°fÕ=÷>÷ >ñ >úrÄ  Úcmpr…   rB   rD   c                óŠ  — t         d„ t        t        j                  j	                  d«      j
                  i} ||    «       } ||    «       }  ||   «       }d|› d|› d�}d|› d|› d�}d|› d|› d	�}	|||	fD ]@  }
d
}t        j                  t        |¬«      5  t        j                  |
||¬«       d d d «       ŒB y # 1 sw Y   ŒMxY w)Nc                 ó^   — t         j                  j                  d«      j                  d«      S )NrN   rO   )r@   rR   rS   rð   ru   r8   r0   r`   z0test_bool_ops_fails_on_scalars.<locals>.<lambda>Z  s    € ”R—Y‘Y×*Ñ*¨1Ó-×6Ñ6°rÓ:€ r8   rN   r¢   r¸   r£   r¹   r‹   rº   rŒ   r  r‰   r�   )ÚintrK   r@   rR   rS   rT   r(   rŽ   r�   r�   r‘   )rB   rÇ  rD   r/   r:   Úgenr½   r¾   r¿   rÀ   r–   r•   s               r0   Útest_bool_ops_fails_on_scalarsrÌ  U  sã   € ô
 	Ñ:ÜŒr�y‰y×$Ñ$ QÓ'×7Ñ7ð€Cð
 ˆ#ˆc‰(‹*€CØ
ˆ#ˆc‰(‹*€CØ
ˆ#ˆc‰(‹*€Cà���U˜3˜%˜tÐ
$€CØ���] 3 % tÐ
,€CØ�#��m C 5¨Ð
.€CØ�C˜ˆoò 6ˆØKˆÜ�]‰]Ô.°cÔ:ñ 	6Ü�G‰G�B˜v¨fÕ5÷	6ð 	6ñ6÷	6ð 	6ús   ÂB9Â9C	Úotherz'x'z...c                óº   — t        dg d¢it        ¬«      }|j                  d| › �«      }t        g d¢d¬«      }t        rd |_        t        j                  ||«       y )Nr)  )rë   rí   rE   rZ   r+  )FFF©r;  )r   Úobjectr‘   r   r   r;  r’   rõ   )rÍ  r  rš   r™   s       r0   Útest_equals_variousrÑ  k  sR   € ô 
�CšÐ)´Ô	8€BØ�W‰W�u˜U˜G�_Ó%€FÜÒ+°#Ô6€HÝð ˆŒÜ×Ñ˜6 8Õ,r8   c                óf   — d}t         j                  }t        j                  || |¬«      }||k(  sJ ‚y )Nzinf + 1r�   )r@   Úinfr�   r‘   )r/   r:   rr   r™   rš   s        r0   Útest_infrÔ  }  s0   € Ø€AÜ�v‰v€HÜ�W‰W�Q˜v¨fÔ5€FØ�XÒÐÑr8   Úcolumnu	   Temp(Â°C)u   Capacitance(Î¼F)c                óî   — t        t        j                  j                  d«      j	                  d«      |dg¬«      }|||   dkD     }d|› d�}|j                  || ¬«      }t        j                  ||«       y )	NrN   rä   rí   r6  rH   ú`z` > 5)r/   )r   r@   rR   rS   rT   r,  r’   rñ   )r/   rÕ  r  r™   Úquery_stringrš   s         r0   Útest_query_tokenrÙ  „  su   € ô 
Ü
�	‰	×Ñ˜aÓ ×0Ñ0°Ó8À6È3À-ô
€Bð �"�V‘*˜q‘.Ñ!€HØ�v�h˜eÐ$€LØ�X‰X�l¨6ˆXÓ2€FÜ×Ñ˜& (Õ+r8   c                ó”  — t        ddgddggddg¬«      }||j                  dkD      }|j                  d| |¬	«      }t        j                  ||«       |d
k(  r;d}t        j                  t        |¬«      5  |j                  d| |¬	«       d d d «       y |j                  d| |¬	«      }t        j                  ||«       y # 1 sw Y   y xY w)Nr   rO   rQ   r{  r5  Úcountr6  z
~(cat > 0)r�   r„   rW  r‰   znot (cat > 0))r   r5  r,  r’   rñ   r(   rŽ   r�   )r/   r:   r  r™   rš   r•   s         r0   Útest_negate_lt_eq_lerÜ  �  sË   € Ü	�Q˜�G˜a ˜WÐ%°°wÐ/?Ô	@€BØ�B—F‘F˜Q‘J�-Ñ €Hà�X‰X�l¨6¸&ˆXÓA€FÜ×Ñ˜& (Ô+à�ÒØ/ˆÜ�]‰]Ô.°cÔ:ñ 	DØ�H‰H�_¨V¸FˆHÔC÷	Dð 	Dð —‘˜/°&À�ÓHˆÜ
×Ñ˜f hÕ/÷		Dð 	Dús   Á5B>Â>Cc                ó`  — |dv r7| j                  t        j                  j                  t        d|› �¬«      «       t        t        j                  j                  d«      j                  ddd¬«      |d	g¬
«      }|||   dkD     }|j                  |› d�«      }t        j                  ||«       y )N)ÚTrueÚFalserÓ  ÚInfz+GH 47859 DataFrame eval not supported with )rŽ   r%   rN   r   éd   rÓ  rç   Úcol1r6  rÊ  z>6)r³   r(   r*   r²   r˜  r   r@   rR   rS   rð   r,  r’   rñ   )r7   rÕ  r  r™   rš   s        r0   Ú test_eval_no_support_column_namerã     s¯   € ð Ð0Ñ0Ø×ÑÜ�K‰K×ÑÜØDÀVÀHÐMð ó ô	
ô 
Ü
�	‰	×Ñ˜aÓ ×)Ñ)¨!¨S°wÐ)Ó?Ø˜Ð ô
€Bð �"�V‘*˜q‘.Ñ!€HØ�X‰X˜˜ �mÓ$€Fä×Ñ˜& (Õ+r8   c                óþ  — t        g d¢g d¢g d¢dœ«      }|d d  }|d   }t        j                  |«      5  |j                  dd¬«       d d d «       t        g d	¢g d¢g d¢dœ«      }t        j                  ||«       | s6t        j
                  ||d   «       t        j
                  |d   |d   «       y t        g d¢d¬
«      }t        j
                  ||«       t        j
                  |d   |«       y # 1 sw Y   Œ«xY w)Nr  r  )r”  é   é	   )r)  r¥  ÚCr)  z	A = B + CTrø  )r  é   é   rÏ  )r   r’   Úassert_cow_warningr‘   rñ   rõ   r   )Úusing_copy_on_writer  r  Úresult_viewr›  r™   s         r0   Útest_set_inplacerí  ¸  sÝ   € ô 
šªºÑCÓ	D€BØ‘Q�%€KØ
ˆS‰'€CÜ	×	Ñ	Ð1Ó	2ñ +Ø
�‰� TˆÔ*÷+äš|²)Â)ÑLÓM€HÜ×Ñ˜"˜hÔ'ÙÜ
×Ñ˜s H¨S¡MÔ2Ü
×Ñ˜{¨3Ñ/°¸#±Õ?äš)¨#Ô.ˆÜ
×Ñ˜s HÔ-Ü
×Ñ˜{¨3Ñ/°Õ:÷+ð +ús   µC3Ã3C<c                  ó\   — e Zd Zej                  j                  dddg d¢dg«      d„ «       Zy)ÚTestValidateÚvaluerQ   rÞ  r  g      @c                ó–   — d}t        j                  t        |¬«      5  t        j                  d|¬«       d d d «       y # 1 sw Y   y xY w)Nz8For argument "inplace" expected type bool, received typer‰   z2+2rø  rÂ  )r”   rð  r•   s      r0   Útest_validate_bool_argsz$TestValidate.test_validate_bool_argsÍ  s8   € àHˆÜ�]‰]œ:¨SÔ1ñ 	*Ü�G‰G�E 5Õ)÷	*÷ 	*ñ 	*ús	   ž?¿AN)rE  rF  rG  r(   r*   rH  rò  ru   r8   r0   rï  rï  Ì  s/   „ Ø‡[�[×Ñ˜W q¨&²)¸SÐ&AÓBñ*ó Cñ*r8   rï  )kÚ
__future__r   Ú	functoolsr   Ú	itertoolsr   ri  Únumpyr@   r(   Úpandas.compatr   Úpandas.errorsr   r   r	   Úpandas.util._test_decoratorsÚutilÚ_test_decoratorsr,   Úpandas.core.dtypes.commonr
   r   r   r   r­   r�   r   r   r   r   r   r   Úpandas._testingÚ_testingr’   Úpandas.core.computationr   r   Úpandas.core.computation.enginesr   Úpandas.core.computation.exprr   r   r   Ú#pandas.core.computation.expressionsr   r   Úpandas.core.computation.opsr   r   r   r   r    Úpandas.core.computation.scoper!   Úfixturer/   ÚPARSERSr:   rG   r­  rf   rB   rD   r¼   rv   rx   rQ  ro  rq  r¯  r^  rR   rS   rT   r�  r~  r-   rš  r*   rH  r£  r¦  r¨  ÚPyTablesExprVisitorr©  Ú__annotations__r®  r±  r³  r·  rº  r¿  rÃ  rÆ  rÊ  rK   rÌ  rÑ  rÔ  rÙ  rÜ  Úkeysrã  rí  rï  ru   r8   r0   ú<module>r
     sØ  ðÞ "å Ý Û ã Û å ÷ñ ÷
 *Ð )÷ó ó ÷÷ õ ÷õ 4÷ñ ÷
÷õ õ :ð €‡�ñð ôôñ ó!ð ð €‡��t—|‘|Ô$ñó %ðòð €‡�Ù‘�a“‹>ÚEôñó	ðð 
€Ø€ð ‡�ñó ð÷^	Wñ ^	W÷J?ñ ?ò<$÷S'ñ S'÷tb6ñ b6÷Jh>ñ h>ðV 
�‰×	Ñ	˜qÓ	!×	1Ñ	1°"Ó	5€÷"Eñ "EðJ €‡�ˆyÓñEó ðEð €‡�ˆyÓØ‡�×ÑØðóñ"óó ð"ð €‡�ˆyÓñ0ó ð0ð €‡�ˆyÓñEó ðEð  Ø×,Ñ,Øñ.€Ð
*ó ð ‡�×Ñ˜ 7Ó+Ø‡�×Ñ˜ 8Ó,ñ!ó -ó ,ð!ò1ò1ð ‡�×Ñ˜Ò$CÓDñ;ó Eð;ò(òQò2ò>ð
 ‡�×Ñ˜ Ó.Ø‡�×Ñ˜  e Ó-Ø‡�×Ñ˜  e Ó-ñ6ó .ó .ó /ð6ð& ‡�×ÑØàØðóñ-óð-òð ‡�×Ñ˜ KÐ1CÐ#DÓEñ,ó Fð,ò0ð  ‡�×ÑØØ€O×ÑÓóñ,ó	ð,ò(;÷(*ò *r8   