+
    yȇi$                         ^ RI t ^ RIt^ RIt^ RIt^ RIHt ^ RI	H
t
 ^ RIHtHtHt ^ RIHt  ! R R]4      t]P$                  P'                  R]]].4      R 4       tR# )	    N)BooleanArray)
kleene_and	kleene_or
kleene_xor)BaseOpsUtilc            
       8  a  ] tR t^t o R tR tR t]P                  P                  RR]
P                  ! R^^^4      ]P                  ! ^4      .4      R 4       t]P                  P                  RRR	.. RO.4      R
 4       tR t]P                  P                  RR^.4      R 4       tR t]P                  P                  R]
P&                  . RO3R. RO3]P(                  ! R4      . RO3R	. RO3]P(                  ! R	4      . RO3.4      R 4       tR t]P                  P                  R]
P&                  . RO3R. RO3R	. RO3]P(                  ! R4      . RO3]P(                  ! R	4      . RO3.4      R 4       tR t]P                  P                  R]
P&                  . RO3R. RO3]P(                  ! R4      . RO3]P(                  ! R	4      . RO3.4      R 4       t]P                  P                  RRR	]
P&                  . RO^,          .4      R 4       tRtV tR# )TestLogicalOpsc                ,   \         P                  ! . RORR7      p\        W!4      p\        P                  ! V! R 4      V! \
        P                  ! R 4      4      4       \        P                  ! V! R4      V! \
        P                  ! R4      4      4       R# )TFNbooleandtypeTFN)pdarraygetattrtmassert_extension_array_equalnpbool_)selfall_logical_operatorsaops   &&  x/Users/max/.openclaw/workspace/postharvest/venv/lib/python3.14/site-packages/pandas/tests/arrays/boolean/test_logical.pytest_numpy_scalars_ok$TestLogicalOps.test_numpy_scalars_ok   s_    HH(	:Q.
''4"RXXd^2DE
''5	2bhhuo3FG    c                   a VP                  R 4      pRV9   d   TMVR ,           p \        \        V4      pV#   \         d"    \        \        TR,          4      oT3R lp T# i ; i)_xor:   NNc                    < S! W4      # )N )xyrops   &&r   <lambda>1TestLogicalOps.get_op_from_name.<locals>.<lambda>!   s	    c!ir   )stripr   operatorAttributeError)r   op_nameshort_opnamer   r&   s   &&  @r   get_op_from_nameTestLogicalOps.get_op_from_name   si    }}S)','<|,QTBT	(<0B 	  	((L$45C'B		(s   8 (A$#A$c                @   \         P                  ! . R R7      pTp\        W#4      ! R4      p\        P                  ! W$4       \        W#4      ! R4      p\        P                  ! W$4       \        W#4      ! \         P
                  4      p\        P                  ! W$4       R# )r   r   TFN)r   r   r   r   r   NA)r   r   r   r,   results   &&   r   test_empty_okTestLogicalOps.test_empty_ok%   sr    HHRy)'$T*
''2$U+
''2$RUU+
''2r   otherr   i  c                    \         P                  ! R R.4      pW!8H  p\         P                  ! RR.4      p\        P                  ! W44       W!8g  p\         P                  ! R R .4      p\        P                  ! W44       R# r   r   r   r   r   )r   r5   arrr2   expecteds   &&   r   test_eq_mismatched_type&TestLogicalOps.test_eq_mismatched_type1   sd    
 hhe}%88UEN+
''988T4L)
''9r   TFc           	     ~   Tp\         P                  ! . RORR7      pRp\        P                  ! \        VR7      ;_uu_ 4        \        WC4      ! V4       RRR4       \        P                  ! \        VR7      ;_uu_ 4        \        WC4      ! \        P                  ! V4      4       RRR4       \        P                  ! \        VR7      ;_uu_ 4        \        WC4      ! \         P                  ! VRR7      4       RRR4       R#   + '       g   i     L; i  + '       g   i     Ly; i  + '       g   i     R# ; i)TNr   r   zLengths must matchmatchr   )r   r   pytestraises
ValueErrorr   r   )r   r5   r   r,   r   msgs   &&&   r   #test_logical_length_mismatch_raises2TestLogicalOps.test_logical_length_mismatch_raises?   s    'HH(	:"]]:S11A& 2 ]]:S11A0 2 ]]:S11Ai @A 21 21 21 211s$   D&D(D+D	D(	+D<	c                   Tp\         P                  ! . RORR7      pRp\        P                  ! \        VR7      ;_uu_ 4        \        W24      ! \        P                  4       RRR4       R#   + '       g   i     R# ; i)TNr   r   zGot float insteadr=   r   )r   r   r?   r@   	TypeErrorr   r   nan)r   r   r,   r   rB   s   &&   r   test_logical_nan_raises&TestLogicalOps.test_logical_nan_raisesN   sN    'HH(	:!]]9C00A' 1000s    A--A>	c                   \         P                  ! R R.RR7      p\        P                  ! \        \        \        V4      P                  4      R7      ;_uu_ 4        \        W24      ! V4       RRR4       R#   + '       g   i     R# ; i)TFr   r   r=   N)	r   r   r?   r@   rF   strtype__name__r   )r   r5   r   r   s   &&& r    test_non_bool_or_na_other_raises/TestLogicalOps.test_non_bool_or_na_other_raisesV   sS    HHdE])4]]9CU0D0D,EFFA-e4 GFFFs   A77B	c                   \         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      p\         P                  ! . RO^,          RR7      pW,          p\         P                  ! . RORR7      p\        P                  ! W44       W!,          p\        P                  ! W44       \        P                  ! V\         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      4       \        P                  ! V\         P                  ! . RO^,          RR7      4       R# )TFNr   r   r   )	TTTTFNTNNr7   r   r   br2   r9   s   &    r   test_kleene_orTestLogicalOps.test_kleene_or\   s    HHdVaZ5'A+-
:)LHH(1,I>88C9
 	''9
''9 	''rxx
eWq[0D6A:=YO	
 	''rxx+a/yA	
r   zother, expectedNc                @   \         P                  ! . RORR7      pW1,          p\         P                  ! VRR7      p\        P                  ! WB4       W,          p\        P                  ! WB4       \        P                  ! V\         P                  ! . RORR7      4       R# TNr   r   r   r7   r   r5   r9   r   r2   s   &&&  r   test_kleene_or_scalar$TestLogicalOps.test_kleene_or_scalarq   sp     HH(	:88HI6
''9
''9 	''rxx+9=	
r   c                   \         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      p\         P                  ! . RO^,          RR7      pW,          p\         P                  ! . RORR7      p\        P                  ! W44       W!,          p\        P                  ! W44       \        P                  ! V\         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      4       \        P                  ! V\         P                  ! . RO^,          RR7      4       R# )TFNr   r   r   )	TFNFFFNFNr7   rQ   s   &    r   test_kleene_andTestLogicalOps.test_kleene_and   s    HHdVaZ5'A+-
:)LHH(1,I>88Gy
 	''9
''9 	''rxx
eWq[0D6A:=YO	
 	''rxx+a/yA	
r   c                @   \         P                  ! . RORR7      pW1,          p\         P                  ! VRR7      p\        P                  ! WB4       W,          p\        P                  ! WB4       \        P                  ! V\         P                  ! . RORR7      4       R# rV   r7   rW   s   &&&  r   test_kleene_and_scalar%TestLogicalOps.test_kleene_and_scalar   sp     HH(	:88HI6
''9
''9 	''rxx+9=	
r   c                   \         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      p\         P                  ! . RO^,          RR7      pW,          p\         P                  ! . RORR7      p\        P                  ! W44       W!,          p\        P                  ! W44       \        P                  ! V\         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      4       \        P                  ! V\         P                  ! . RO^,          RR7      4       R# )TFNr   r   r   )	FTNTFNNNNr7   rQ   s   &    r   test_kleene_xorTestLogicalOps.test_kleene_xor   s    HHdVaZ5'A+-
:)LHH(1,I>88DI
 	''9
''9 	''rxx
eWq[0D6A:=YO	
 	''rxx+a/yA	
r   c                @   \         P                  ! . RORR7      pW1,          p\         P                  ! VRR7      p\        P                  ! WB4       W,          p\        P                  ! WB4       \        P                  ! V\         P                  ! . RORR7      4       R# rV   r7   rW   s   &&&  r   test_kleene_xor_scalar%TestLogicalOps.test_kleene_xor_scalar   sp     HH(	:88HI6
''9
''9 	''rxx+9=	
r   c                   \         P                  P                  \        P                  ! . RO4      \        P                  ! R.^,          . RO,           4      4      p\         P                  ! R .^,          R.^,          ,           R.^,          ,           RR7      p\        V\        4      '       d   \         P                  ! VRR7      p\        W24      ! V4      p\        WB4      ! V4      p\        P                  ! WV4       \        V\        4      '       dm   R VP                  VP                  &   RVP                  VP                  &   \        W24      ! V4      p\        WB4      ! V4      p\        P                  ! WV4       R# R# )TFNr   r   )	TTTFFFTFTTTT)r   arraysr   r   r   
isinstancelistr   r   r   _data_mask)r   r5   r   r   rR   r2   r9   s   &&&    r   test_no_masked_assumptions)TestLogicalOps.test_no_masked_assumptions   s    II""HHOPHHeWq[#556
 HHdVaZ5'A+-
:)LeT""HHU)4E25914U;
''9e\**'+EKK$$AGGAGGQ6u=Fq8?H++F= +r   r#   )TFTF)TNNrg   r   )NFN)FFF)NNN)FTN)rM   
__module____qualname____firstlineno__r   r.   r3   r?   markparametrizer   	Timestampr   timedelta64r:   rC   rH   rN   rS   r1   r   rX   r[   r^   ra   rd   rm   __static_attributes____classdictcell__)__classdict__s   @r   r	   r	      s@    H

3 [[#r||D!Q3R^^A5FG	:	: [[We}6P&QRB SB( [[WsAh/5 05

* [[UU&'%&XXd^/0'(XXe_12	
	
	

* [[UU'(&')*XXd^01XXe_34	
	
	

( [[UU&'&'XXd^01XXe_12		


 [[WtUBEE;NQR;R&ST> U>r   r	   	operationc           
          R p\         P                  ! \        VR7      ;_uu_ 4        V ! RR\        P                  ! ^4      \        P                  ! ^4      4       RRR4       R#   + '       g   i     R# ; i)z3Either `left` or `right` need to be an np\.ndarray.r=   TN)r?   r@   rF   r   zeros)ry   rB   s   & r   test_error_both_scalarr|      sE    
@C	y	,	,$bhhqk288A;7 
-	,	,	,s   4A%%A6	)r*   numpyr   r?   pandasr   pandas._testing_testingr   pandas.arraysr   pandas.core.ops.mask_opsr   r   r   pandas.tests.extension.baser   r	   rr   rs   r|   r#   r   r   <module>r      sb         & 
 4f>[ f>R y*j&IJ8 K8r   