+
    ;i;7                         ^ RI t ^ RIt^ RIHt ^ RIHt ^ RIHtH	t	 ^RI
5 ^ RItRtRt]! R4      t]! R4      t ! R R	]4      t ! R
 R]4      t]R8X  d   ]P(                  ! 4        R# R# )    N)jit)utils)TestCaseforbid_codegen)*infnanc                   :  a  ] tR t^t o Rt].t]P                  ]P                  .t
].]
,           t]P                  ]P                  .t].],           t]]P&                  .tR tR tR tR tR tR tR tR	 tR
 tR tR tR t R t!R t"R t#R t$R t%R t&Rt'V t(R# )TestAssertPreciseEqualz*
Tests for TestCase.assertPreciseEqual().
c                T   a a VV 3R  lpV! W4       V! W3W"34       V! W.W".4       R# )c                 T   < SP                   ! W3/ SB  SP                   ! W3/ SB  R # N)assertPreciseEqualleftrightkwargsselfs   &&V/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/tests/test_support.pyassert_succeed1TestAssertPreciseEqual.eq.<locals>.assert_succeed    s)    ##D:6:##E:6:    N )r   r   r   r   r   s   f&&l r   eqTestAssertPreciseEqual.eq   s.    	; 	t#|e^4|e^4r   c                   a a VV 3R  lpV! W4       V! W!4       V! W3W"34       V! W"3W34       V! W.W".4       V! W".W.4       R# )c                    <  SP                   ! W3/ SB  SP                  V : R V: R24       R#   \         d     R# i ; i)z and z unexpectedly considered equalN)r   failAssertionErrorr   s   &&r   assert_fail.TestAssertPreciseEqual.ne.<locals>.assert_fail(   sC    U''>v> 		tUST " s   1 A A Nr   )r   r   r   r   r    s   f&&l r   neTestAssertPreciseEqual.ne'   sS    	U 	D E TL5.1UNTL1TL5.1UNTL1r   c                ^   \         P                  ! V P                  V P                  V P                  4       F`  w  rpV P                  V! ^4      V! ^4      4       V P                  V! ^4      V! ^4      4       V P                  V! ^4      V! ^4      4       Kb  	  \         P                  ! V P                  V P                  4       F#  w  rEV P                  V! ^4      V! ^4      4       K%  	  \         P                  ! V P                  V P                  4       F#  w  rEV P                  V! ^4      V! ^4      4       K%  	  \         P                  ! V P                  V P                  4       FH  w  rEWEJ d!   V P                  V! ^4      V! ^4      4       K*  V P                  V! ^4      V! ^4      4       KJ  	  \         P                  ! V P                  V P                  4       FH  w  rEWEJ d!   V P                  V! ^4      V! ^4      4       K*  V P                  V! ^4      V! ^4      4       KJ  	  R# )   N)
	itertoolsproduct	int_typesfloat_typescomplex_typesr"   r   
bool_typesnp_float_typesnp_complex_types)r   ifcuvs   &     r   
test_types!TestAssertPreciseEqual.test_types6   s    !((9I9I)-););=GA!GGAaD!A$GGAaD!A$GGAaD!A$	= %%dnndnnEDAGGAaD!A$ F %%dnndooFDAGGAaD!A$ G %%d&9&94;N;NODAv!ad#!ad#	 P %%d&;&;T=R=RSDAv!ad#!ad#	 Tr   c           
     h   V P                    F  pR F  pV P                  V! ^ 4      V! ^ 4      VR7       V P                  V! ^ 4      V! ^4      VR7       V P                  V! R4      V! ^4      VR7       V P                  V! ^^P,          4      V! ^^^P,          ,           4      VR7       K  	  K  	  R# )exactprecNr6   singledouble)r(   r   r"   r   tpr8   s   &  r   test_int_values&TestAssertPreciseEqual.test_int_valuesQ   s    ..B51r!u401r!u4021D11b5	2a2g;T:	 6 !r   c                "   \         P                  ! V P                  V P                  4       F_  w  rV P                  V! R 4      V! R 4      4       V P                  V! R4      V! R4      4       V P	                  V! R 4      V! R4      4       Ka  	  R# )TFN)r&   r'   r+   r   r"   )r   tpatpbs   &  r   test_bool_values'TestAssertPreciseEqual.test_bool_valuesY   sf    !))$//4??KHCGGCIs4y)GGCJE
+GGCIs5z* Lr   c           	        V P                  \        4      ;_uu_ 4        V P                  \        P                  ! R 4      \        P                  ! R 4      RR7       RRR4       V P                  \        4      ;_uu_ 4        V P                  \        P                  ! ^4      \        P                  ! ^4      \        ^4      R7       RRR4       R#   + '       g   i     L}; i  + '       g   i     R# ; i)FFg<invalid)abs_tolN)assertRaises
ValueErrorr   npfloat64int)r   s   &r   test_abs_tol_parse)TestAssertPreciseEqual.test_abs_tol_parse_   s    z**GGBJJu%rzz%'8)GL +z**GGBJJqM2::a=#a&GA +* +****s   =C AC#C 	#C4	c           	         V P                    EF  pR EF  pV P                  V! R4      V! R4      VR7       V P                  V! R4      V! R4      VR7       V P                  V! R	4      V! R	4      VR7       V P                  V! R4      V! R	4      VR7       V P                  V! R4      V! R	4      VRR7       V P                  V! \        4      V! \        4      VR7       V P                  V! \        4      V! R4      VR7       V P                  V! \        ) 4      V! \        ) 4      VR7       V P                  V! \        4      V! \        ) 4      VR7       V P                  V! \        4      V! \        4      VR7       V P                  V! \        4      V! ^ 4      VR7       V P                  V! \        4      V! \        4      VR7       V P                  V! \        4      V! \        ) 4      VR7       EK  	  EK  	  R# )
r6   g      ?r7           T)r8   ignore_sign_on_zerog*GNr9          )r)   r   r"   INFNANr=   s   &  r   test_float_values(TestAssertPreciseEqual.test_float_valuesf   sx   ""B53Ct43Ct44"T(63D53D$O3Ct43D5C4"cT(63SD53Ct43AT23Ct43SD5! 6 #r   c                    \         \        P                  3 F,  pV P                  V! R \        ,           4      V! R 4      4       K.  	  R#       ?N)floatrL   rM   r"   DBL_EPSILONr   r>   s   & r   test_float64_values*TestAssertPreciseEqual.test_float64_valuesz   s1    "**%BGGBs[()2c73 &r   c                x    \         P                  pV P                  V! R \        ,           4      V! R 4      4       R# rZ   )rL   float32r"   FLT_EPSILONr^   s   & r   test_float32_values*TestAssertPreciseEqual.test_float32_values~   s'    ZZ3$%r#w/r   c           	     N   \         \        P                  3 EF	  pR EFz  pVR ,          pVR \        ,           ,          pVR \        ^,          ,           ,          pVR \        ^,          ,           ,          pV P	                  V! V4      V! V4      4       V P	                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      R^R7       V P	                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      R^R7       V P	                  V! V4      V! V4      R^R7       V P                  V! V4      V! V4      R^R7       V P                  V! V4      V! V4      R^R7       EK}  	  V P                  V! R4      V! R4      RRR7       V P	                  V! R4      V! R	4      RRR7       V P                  V! R
4      V! R4      RR
R7       V P	                  V! R
4      V! R4      RR
R7       EK  	  R# )r[   r6   r7   r;   r8   ulpsgؗҜ<gMg<epsr8   rI   gؗҼ<rG   gC]r2<gq7K<Nr[   ig      ?g      )r\   rL   rM   r]   r"   r   r   r>   scaleabr0   ds   &      r   test_float64_values_inexact2TestAssertPreciseEqual.test_float64_values_inexact   s   "**%B5CKS;./S;?23S;?231r!u%1r!u731r!u841r!u8!<1r!u841r!u8!<1r!u8!<1r!u8!<1r!u8!< 6 GGBuIr%yxGGGGBuIr%yxGGGGBuIr%yxGGGGBuIr%yxGG) &r   c                .   \         P                  pR EFy  pVR ,          pVR \        ,           ,          pVR \        ^,          ,           ,          pVR \        ^,          ,           ,          pV P                  V! V4      V! V4      4       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P	                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P	                  V! V4      V! V4      R^R7       V P                  V! V4      V! V4      R^R7       V P	                  V! V4      V! V4      R^R7       V P	                  V! V4      V! V4      R^R7       EK|  	  V P	                  V! R4      V! R4      RRR	7       V P                  V! R4      V! R
4      RRR	7       V P	                  V! R4      V! R4      RRR	7       V P                  V! R4      V! R
4      RRR	7       R# )r[   r6   r7   r;   r:   rg   gHz>gH׊>ri   rj   gv!>g:0yE>Nrk   )rL   rb   rc   r"   r   rl   s   &      r   test_float32_values_inexact2TestAssertPreciseEqual.test_float32_values_inexact   s   ZZ1E A{*+A{Q./A{Q./AGGBqE2a5!GGBqE2a5wG/GGBqE2a5xG0GGBqE2a5xG0GGBqE2a5xG0GGBqE2a5xaG8GGBqE2a5xaG8GGBqE2a5xaG8GGBqE2a5xaG8 2" 	4"T(5A4"T(5A4"T(4@4"T(4@r   c                   \        R R 4      \        R R4      \        RR 4      \        RR4      .w  rr4V P                   EF)  pR EF  pV P                  V! R4      V! R4      VR7       V P                  V! R4      V! R4      VR7       V P                  V! R4      V! R4      VR7       V P                  V! V4      V! V4      VR7       V P                  V! V4      V! V4      VR7       V P                  V! V4      V! V4      VR7       V P                  V! V4      V! V4      VR7       V P                  V! V4      V! V4      VR7       V P                  V! \        \        \        4      4      V! \        \        \        4      4      VR7       V P                  V! \        \        \        ) 4      4      V! \        \        \        ) 4      4      VR7       V P                  V! \        \        ) \        ) 4      4      V! \        \        ) \        ) 4      4      VR7       V P                  V! \        \        \        4      4      V! \        \        \        ) 4      4      VR7       V P                  V! \        \        \        4      4      V! \        \        ) \        4      4      VR7       V P                  V! \        \        ^ 4      4      V! \        \        ^ 4      4      VR7       V P                  V! \        \
        ^ 4      4      V! \        \
        ^ 4      4      VR7       V P                  V! \        ^ \
        4      4      V! \        ^ \
        4      4      VR7       V P                  V! \        \
        \
        4      4      V! \        \
        \
        4      4      VR7       V P                  V! \        \        \
        4      4      V! \        \        \
        4      4      VR7       V P                  V! \        \
        \        ) 4      4      V! \        \
        \        ) 4      4      VR7       EK  	  V P                  V! \        \        ^ 4      4      V! \        \        ^4      4      RR7       EK,  	  R# )	rR   r6   r7   NrT   r9   y      ?       @y      ?      ?y       @       @)complexr*   r   r"   rU   rV   )r   c_ppc_pnc_npc_nnr>   r8   s   &      r   test_complex_values*TestAssertPreciseEqual.test_complex_values   s'    #*#s"3WS$5G")$"4gdD6I"KD$$B56
BvJT:6
BvJT:6
BvJT:4"T(64"T(64"T(64"T(64"T(673,-r'#s2C/D4P73-.733E0FTR7C4#./GSD3$4G1HtT73,-r'#t2D/EDQ73,-r'3$2D/EDQ73?+RQ-@tL73?+RQ-@tL71c?+R3-@tL73,-r'#s2C/D4P73,-r'#s2C/D4P73-.733E0FTR- 6< GGBwsA'GCO)<7GK? %r   c           	        \         \        P                  3 EF  pR EF  pVR ,          pVR \        ,           ,          pVR \        ^,          ,           ,          pV! \        W34      4      pV! \        W44      4      pV! \        WD4      4      pV P	                  V! V4      V! V4      4       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V! \        W54      4      p	V! \        WU4      4      p
V P	                  V! V4      V! V	4      RR7       V P	                  V! V	4      V! V
4      RR7       V P                  V! V4      V! V	4      R^R7       V P                  V! V	4      V! V
4      R^R7       V P                  V! V4      V! V
4      R^R7       V P                  V! V4      V! V
4      RR7       EK  	  EK  	  R# )r[   r;   r7   rg   r:   Nrk   )rw   rL   
complex128r]   r"   r   r   r>   rm   rn   ro   r0   aaabbbacccs   &          r   test_complex128_values_inexact5TestAssertPreciseEqual.test_complex128_values_inexact   s   BMM*B5CKS;./S;?23&&&22'22X622X622X6&&22X622X622XA>22XA>22XA>22X6% 6 +r   c                   \         P                  pR EF  pVR ,          pVR \        ,           ,          pVR \        ^,          ,           ,          pV! \        W34      4      pV! \        W44      4      pV! \        WD4      4      pV P	                  V! V4      V! V4      4       V P	                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V P                  V! V4      V! V4      RR7       V! \        W54      4      p	V! \        WU4      4      p
V P	                  V! V4      V! V	4      RR7       V P	                  V! V	4      V! V
4      RR7       V P                  V! V4      V! V	4      R^R7       V P                  V! V	4      V! V
4      R^R7       V P                  V! V4      V! V
4      R^R7       EK  	  R# )r[   r;   r7   r:   rg   Nrk   )rL   	complex64rc   rw   r"   r   r   s   &          r   test_complex64_values_inexact4TestAssertPreciseEqual.test_complex64_values_inexact   s   \\1EA{*+A{Q./AGAM"BGAM"BGAM"BGGBrFBrF#GGBrFBrFG2GGBrFBrFG2GGBrFBrFG2GGBrFBrFG2GAM"BGAM"BGGBrFBrFG2GGBrFBrFG2GGBrFBrFG:GGBrFBrFG:GGBrFBrFG:% 2r   c                   \         P                  \         P                  \         P                  \        P
                  \        P                  \        P                  \        P                  \        P                  .pV F/  pV P                  W"4       V P                  W"P                  4       K1  	  \        P                   ! V^4       F  w  r4V P                  W44       K  	  R# )   N)ColorredgreenblueShakemintShapecirclesquarePlanetEARTHMERCURYr   r"   valuer&   combinations)r   valuesvalrn   ro   s   &    r   
test_enums!TestAssertPreciseEqual.test_enums  s    ))U[[%**ejj,,fllFNNLCGGCGGC#  **615DAGGAM 6r   c                   \         P                  ! ^^\         P                  R7      P                  R4      pVP	                  4       pV P                  W4       V P                  W^,           4       V P                  WRR 4       V P                  WP                  4       V P                  WP                  \         P                  4      4       V P                  WP                  P	                  4       P                  4       V P                  WP                  4       4       RVP                  n        V P                  W4       \         P                  ! ^^\         P                  R7      pVR\        ,           ,          pVR\        ^,          ,           ,          pV P                  W4       V P                  WRR7       V P                  WRR7       R# )	r%   )dtypeNFr[   r;   r7   )r      r<   )rL   arangeint16reshapecopyr   r"   Tastypeint32flattenflags	writeablerM   r]   )r   rn   ro   r0   s   &   r   test_arrays"TestAssertPreciseEqual.test_arrays  s)   IIa"((+33F;FFHq5Sb63388BHH%&3388:<< 99;!IIa"**-{"#{Q&'8$8$r   c                $   \         P                  ! R R4      p\         P                  ! R R4      p\         P                  ! RR4      p\         P                  ! RR4      pV P                  W4       V P                  W4       V P                  W4       R# )1900Yz
1900-01-01D1901N)rL   
datetime64r   r"   r   rn   ro   r0   rp   s   &    r   test_npdatetime&TestAssertPreciseEqual.test_npdatetime&  sc    MM&#&MM&#&MM,,MM&#&r   c                $   \         P                  ! ^R4      p\         P                  ! ^R4      p\         P                  ! ^<R4      p\         P                  ! ^R4      pV P                  W4       V P                  W4       V P                  W4       R# )r%   hmN)rL   timedelta64r   r"   r   s   &    r   test_nptimedelta'TestAssertPreciseEqual.test_nptimedelta1  sc    NN1c"NN1c"NN2s#NN1c"r   r   N))__name__
__module____qualname____firstlineno____doc__rN   r(   rL   rb   rM   r,   r\   r)   r   r   r-   rw   r*   boolbool_r+   r   r"   r3   r?   rD   rO   rW   r_   rd   rq   rt   r|   r   r   r   r   r   r   __static_attributes____classdictcell____classdict__s   @r   r   r      s      Ijj"**-N'N*Kbmm4I 00M!J52$6;+B6(40H.A2$LL7,;,%2		 	r   r   c                   ,   a  ] tR tRt o R tR tRtV tR# )TestMisci=  c           	        \        4       p\        4       p. pV P                  W4      ;_uu_ 4         R R R 4       V P                  \        4      ;_uu_ 4       pV P                  W4      ;_uu_ 4        VP	                  V4       R R R 4       R R R 4       V P                  \        V4      \        XP                  4      4       R #   + '       g   i     L; i  + '       g   i     L[; i  + '       g   i     Lf; ir   )objectassertRefCountrJ   r   appendassertInstr	exception)r   xylcms   &    r   test_assertRefCountTestMisc.test_assertRefCount?  s    HH  && '~.."$$Q** + / 	c!fc",,/0 '& +* /.s/   CC)1C	C)C	C&!C))C9	c           	     V   R p\        4       ;_uu_ 4        V P                  \        4      ;_uu_ 4       p\        RR7      ! V4      pV! 4        RRR4       RRR4       V P	                  R\        XP                  4      4       R#   + '       g   i     L?; i  + '       g   i     LJ; i)zO
Test that forbid_codegen() prevents code generation using the @jit
decorator.
c                      ^# )r%   r   r   r   r   r/   'TestMisc.test_forbid_codegen.<locals>.fQ  s    r   T)nopythonNzcodegen forbidden by test case)r   rJ   RuntimeErrorr   r   r   r   )r   r/   raisescfuncs   &   r   test_forbid_codegenTestMisc.test_forbid_codegenL  so    
	""<00FT*1- 1  	6F<L<L8MN 10 s"   BB	BBBB(	r   N)r   r   r   r   r   r   r   r   r   s   @r   r   r   =  s     1O Or   r   __main__g      <g      >)r&   numpyrL   numbar   
numba.corer   numba.tests.supportr   r   enum_usecasesunittestr]   rc   r\   rU   rV   r   r   r   mainr   r   r   <module>r      sk        8  ElElgX gT	Ox O: zMMO r   