+
    :i2(                     T   ^ RI t ^ RIt^ RIt^ RIHtHt ^ RIHt ^ RI	H
t
 ^ RIHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtHtH t H!t!H"t"H#t#H$t$H%t% ^ RI&H't' R t( ! R R	]4      t) ! R
 R])4      t* ! R R])4      t+ ! R R]4      t,]-R8X  d   ]P\                  ! 4        R# R# )    N)unittestCUDATestCase)types)cuda)real_usecaseimag_usecaseconjugate_usecasephase_usecasepolar_as_complex_usecaserect_usecaseisnan_usecaseisinf_usecaseisfinite_usecaseexp_usecaselog_usecaselog_base_usecaselog10_usecasesqrt_usecaseasin_usecaseacos_usecaseatan_usecasecos_usecasesin_usecasetan_usecaseacosh_usecaseasinh_usecaseatanh_usecasecosh_usecasesinh_usecasetanh_usecase)numpy_supportc                 B  aaaa \         ;QJ d    R  S 4       F  '       g   K   RM	  RM! R  S 4       4      '       d   Q h\        S\        P                  4      '       d   Q h\        P
                  ! S! S!  RR7      ! V 4      oS.\        S4      ,            Uu. uF  p\        P                  ! V^R4      NK  	  pp\        S4      ^8X  d   V3R lpM\        S4      ^8X  d   V3R lpMQ h\        P
                  ! \        V4      4      ! V4      oVVV3R lpV# u upi )c              3   V   "   T F  p\        V\        P                  4      x  K!  	  R # 5iN)
isinstancer   Array).0tps   & b/var/www/html/photoedit/myenv/lib/python3.14/site-packages/numba/cuda/tests/cudapy/test_complex.py	<genexpr>&compile_scalar_func.<locals>.<genexpr>   s     B2:b%++..s   ')TF)deviceCc                    < \         P                  ! ^4      pW P                  ^ ,          8  d   S! W,          4      W&   R# R#    Nr   gridshape)outaidevice_funcs   && r)   kernel_func(compile_scalar_func.<locals>.kernel_func$   s1    		!A99Q<$QT*      c                    < \         P                  ! ^4      pW0P                  ^ ,          8  d   S! W,          W#,          4      W&   R# R# r/   r1   )r4   r5   br6   r7   s   &&& r)   r8   r9   )   s5    		!A99Q<$QT140  r:   c           	        < \        V 4      pS
 Uu. uF/  p\        P                  ! V\        P                  ! V4      R 7      NK1  	  pp\        P                  ! V\        P                  ! S4      R 7      p\        V 4       F  w  rV\        Wc4       F	  w  rxWxV&   K  	  K  	  V.V,           p	S\        \        P                  ! VR,          4      4      R3,          ! V	!   \        V4      # u upi ))dtype   )lennpemptyr!   as_dtype	enumeratezipintmathceillist)valuesnr(   inputsoutputr6   vsvinpargsargtypeskernelrestypes   &         r)   kernel_wrapper+compile_scalar_func.<locals>.kernel_wrapper2   s    K$&$b ((1M$:$:2$>?$ 	 &!=#9#9'#BCv&EAb/A * ' x& s499QW%&+,d3F|&s   5C()	anyr%   r   r&   r   jitrI   r@   tuple)	pyfuncrR   rT   r(   kernel_typesr8   rU   r7   rS   s	   &ff    @@r)   compile_scalar_funcr\      s    sBBsssBBBBBB'5;;////((7H-d;FCK  'i$x.8:8 KKAs+8  : 8}	+ 
X!		1
 	qXXeL)*;7F
 ;:s   !Dc                   D   a  ] tR t^@t o R tR tR tRR lt]t]t	Rt
V tR# )BaseComplexTestc                    RR ^RRR\        R4      \        R4      \        R4      .	p\        P                  ! W4       UUu. uF  w  r#\        W#4      NK  	  upp# u uppi )        g      ?-inf+infnan       g      )float	itertoolsproductcomplexselfrealsxys   &   r)   basic_valuesBaseComplexTest.basic_valuesB   sT    tQD$vfuU|=*3*;*;E*IJ*I$!*IJJJs    Ac                    R R ^R\         P                  ) \         P                  5\        R4      \        R4      \        R4      .	p\        P                  ! W4       UUu. uF  w  r#\        W#4      NK  	  upp# u uppi )r`   ra   rb   rc   re   rG   pirf   rg   rh   ri   rj   s   &   r)   more_valuesBaseComplexTest.more_valuesG   s`    dArDGG8dggXvfuU|=*3*;*;E*IJ*I$!*IJJJs   A8c           
         RR ^R\         P                  ) \         P                  5\        R4      \        R4      .p\        P                  ! W4       UUu. uF  w  r#\        W#4      NK  	  upp# u uppi )r`   infra   rd   re   rr   rj   s   &   r)   non_nan_valuesBaseComplexTest.non_nan_valuesL   sZ    tQTWWHtwwhuuV}.*3*;*;E*IJ*I$!*IJJJs   A.c                   V EF5  p\        V\        P                  4      '       d   V3p\        V\        4      '       d   V^ ,          ! V!  pVP                  ^ ,          \        P
                  \        P                  39   d   RMRp\        WP                  VP                  4      p. p	. p
V FI  p\        V\        \        34      '       g   V3p V
P                  V! V!  4       V	P                  V4       KK  	  V! V	4      p\        WV	4       F&  w  rpRV: RV: 2pV P                  WVVVVR7       K(  	  EK8  	  R#   \         d'   pT P                  R\        T4      4        Rp?K  Rp?ii ; i)r   singledoublezmath domain errorNz
for input z with prec )preculpsignore_sign_on_zeromsg)r%   r   TyperY   rQ   float32	complex64r\   return_typerI   append
ValueErrorassertInstrrE   assertPreciseEqual)rk   rZ   sigsrJ   r~   r   sigr}   cudafunc	ok_valuesexpected_listrQ   egot_listgotexpectedr   s   &&&&&&           r)   run_funcBaseComplexTest.run_funcQ   sD   C#uzz**d#u%%!fclxx{u}}eoo&FF !  +688S__MHIM!$u665D!((7$$T*   	*H'*8I'N#t594@''D-1<O,/ ( 1 (O- $ " MM"5s1v>s   &D??E0
E++E0 N)r0   F)__name__
__module____qualname____firstlineno__ro   rt   rx   r   	run_unary
run_binary__static_attributes____classdictcell____classdict__s   @r)   r^   r^   @   s(     K
K
K
1< IJr:   r^   c                   8   a  ] tR t^st o R tR tR tR tRtV t	R# )TestComplexc           	         V P                  4       pT P                  T\        P                  \        P                  3 Uu. uF  pVP                  V4      NK  	  upV4       R # u upi r$   )ro   r   r   r   
complex128underlying_float)rk   rZ   rJ   r(   s   &&  r)   check_real_imageTestComplex.check_real_imageu   s^    ""$v#(??E4D4D"EG"EB ++B/"EG	Gs   A#
c                0    V P                  \        4       R # r$   )r   r   rk   s   &r)   	test_realTestComplex.test_real|       l+r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   	test_imagTestComplex.test_imag   r   r:   c                    \         pV P                  4       pV P                  V\        P                  \        P
                  .V4       R # r$   )r	   ro   r   r   r   r   )rk   rZ   rJ   s   &  r)   test_conjugateTestComplex.test_conjugate   s8    """$v)9)9:	r:   r   N)
r   r   r   r   r   r   r   r   r   r   r   s   @r)   r   r   s   s     ,, r:   r   c                      a  ] tR t^t o RtR tRR l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R tR tR tR tRtV tR# )	TestCMathz!
Tests for cmath module support.
c           	         T P                  T\        P                  \        P                  3 Uu. uF  p\        P                  ! V4      NK  	  upV P                  4       4       R # u upi r$   )r   r   r   r   booleanro   )rk   rZ   r(   s   && r)   check_predicate_funcTestCMath.check_predicate_func   sW    v#(#3#3U__"EG"EB b)"EG((*	,Gs   A&
Nc                ,   V'       d   R  pMR pT P                  Y! \        P                  4      .T;'       g    V P                  4       VVR7       T P                  Y! \        P                  4      .T;'       g    V P                  4       VVR7       R# )c                 $    V P                  V 4      # r$   )r   r(   s   &r)   r   'TestCMath.check_unary_func.<locals>.sig   s    **2..r:   c                     V ! V 4      # r$   r   r   s   &r)   r   r      s    "vr:   r~   r   N)r   r   r   rt   r   ro   )rk   rZ   r~   rJ   returns_floatr   r   s   &&&&&& r)   check_unary_funcTestCMath.check_unary_func   s    /vE$4$4 5633!1!1!3$+> 	 	@ 	vEOO 4544!2!2!44+> 	 	@r:   c                4    V P                  \        R R7       R# )T)r   N)r   r
   r   s   &r)   
test_phaseTestCMath.test_phase   s    m4@r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   
test_polarTestCMath.test_polar   s    67r:   c                   a  V 3R  lpV! \         P                  S P                  4       4       V! \         P                  S P	                  4       4       R# )c                 &  < V Uu. uFT  p\         P                  ! VP                  4      '       d   VP                  ^ 8X  g   K<  VP                  VP                  3NKV  	  ppV P                  pSP                  \        V ! WD4      .V4       R# u upi )r   N)rG   isinfimagrealr   r   r   )r(   seed_valueszrJ   
float_typerk   s   &&   r)   do_test$TestCMath.test_rect.<locals>.do_test   sx    0; @1!ZZ//166Q; 'qvvqvv&F @,,JOOL2j+E*F"$@s   *BBBN)r   r   rt   r   ro   )rk   r   s   f r)   	test_rectTestCMath.test_rect   s:    	$ 	  $"2"2"45!2!2!45r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   
test_isnanTestCMath.test_isnan       !!-0r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   
test_isinfTestCMath.test_isinf   r   r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   test_isfiniteTestCMath.test_isfinite   s    !!"23r:   c                4    V P                  \        ^R7       R#    r~   N)r   r   r   s   &r)   test_expTestCMath.test_exp       k2r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   test_logTestCMath.test_log   s    k*r:   c                .   \        \        P                  ! V P                  4       V P                  4       4      4      p\        P
                  \        P
                  3\        P                  \        P                  3.pV P                  \        W!^R7       R# )   r   N)	rI   rg   rh   rt   r   r   r   r   r   )rk   rJ   value_typess   &  r)   test_log_baseTestCMath.test_log_base   so    i''(8(8(:D<L<L<NOP((%*:*:;9;(+ 	 	 r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   
test_log10TestCMath.test_log10       m,r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   	test_sqrtTestCMath.test_sqrt   r   r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   	test_acosTestCMath.test_acos       l3r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   	test_asinTestCMath.test_asin   r   r:   c                R    V P                  \        ^V P                  4       R7       R# )r   )r~   rJ   N)r   r   rx   r   s   &r)   	test_atanTestCMath.test_atan   s%    l%)%8%8%: 	 	<r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   test_cosTestCMath.test_cos   r   r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   test_sinTestCMath.test_sin   s    k2r:   c                6    V P                  \        ^RR7       R# r   Tr   N)r   r   r   s   &r)   test_tanTestCMath.test_tan   s    k26 	 	8r:   c                0    V P                  \        4       R # r$   )r   r   r   s   &r)   
test_acoshTestCMath.test_acosh   r   r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   
test_asinhTestCMath.test_asinh   s    m!4r:   c                6    V P                  \        ^RR7       R# r  )r   r   r   s   &r)   
test_atanhTestCMath.test_atanh   s    m!26 	 	8r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   	test_coshTestCMath.test_cosh   r   r:   c                4    V P                  \        ^R7       R# r   )r   r   r   s   &r)   	test_sinhTestCMath.test_sinh   r   r:   c                6    V P                  \        ^RR7       R# r  )r   r    r   s   &r)   	test_tanhTestCMath.test_tanh  s    l26 	 	8r:   r   )r0   NFF) r   r   r   r   __doc__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   r   s   @r)   r   r      s     ,@$A8	6114
3+ -,
44<338-58448 8r:   r   c                   ,   a  ] tR tRt o R tR tRtV tR# )TestAtomicOnComplexComponentsi  c                6   \         P                  R  4       p^ p\        P                  ! V4      \        P                  ! V4      R,          ,           pVP	                  4       pV^V3,          ! V4       \        P
                  P                  V^,           V4       R# )c                     \         P                  ! ^4      p\         P                  P                  V P                  V^4       R# r/   )r   r2   atomicaddr   rJ   r6   s   & r)   atomic_add_oneITestAtomicOnComplexComponents.test_atomic_on_real.<locals>.atomic_add_one  '    		!AKKOOFKKA.r:                 ?Nr   rX   rA   arangecopytestingassert_equal)rk   r!  Narr1arr2s   &    r)   test_atomic_on_real1TestAtomicOnComplexComponents.test_atomic_on_real  sr    		/ 
	/ yy|biilR//yy{q!tT"


q$/r:   c                6   \         P                  R  4       p^ p\        P                  ! V4      \        P                  ! V4      R,          ,           pVP	                  4       pV^V3,          ! V4       \        P
                  P                  VR,           V4       R# )c                     \         P                  ! ^4      p\         P                  P                  V P                  V^4       R# r/   )r   r2   r  r  r   r   s   & r)   atomic_add_one_jKTestAtomicOnComplexComponents.test_atomic_on_imag.<locals>.atomic_add_one_j  r#  r:   r$  Nr%  )rk   r1  r*  r+  r,  s   &    r)   test_atomic_on_imag1TestAtomicOnComplexComponents.test_atomic_on_imag  sr    		/ 
	/ yy|biilR//yy{At$


r	40r:   r   N)r   r   r   r   r-  r3  r   r   r   s   @r)   r  r    s     
0
1 
1r:   r  __main__)/rG   rg   numpyrA   numba.cuda.testingr   r   
numba.corer   numbar   numba.tests.complex_usecasesr   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    numba.npr!   r\   r^   r   r   r  r   mainr   r:   r)   <module>r=     s       5  8 8 8 8 8 8 8 ##L0l 0f/ .y8 y8x1L 1B zMMO r:   