
    J/Ph                         d Z ddlZddlZej                            d          Z e ee	ej
                            d          dd                             Zdad Zd Zd Zd	 ZdS )
aQ  This file contains information on how to translate different ufuncs
into numba. It is a database of different ufuncs and how each of its
loops maps to a function that implements the inner kernel of that ufunc
(the inner kernel being the per-element function).

Use the function get_ufunc_info to get the information related to the
ufunc
    Nwin32.   c                  D    t           i a t          t                      d S d S )N)	_ufunc_db_fill_ufunc_db     Q/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/numba/np/ufunc_db.py_lazy_init_dbr      s+     	y!!!!! r
   c                  P    t                       t                                          S )z+obtain a list of supported ufuncs in the db)r   r   keysr	   r
   r   
get_ufuncsr      s    OOO>>r
   c                 8    t                       t          |          S )a  get the lowering information for the ufunc with key ufunc_key.

    The lowering information is a dictionary that maps from a numpy
    loop string (as given by the ufunc types attribute) to a function
    that handles code generation for a scalar version of the ufunc
    (that is, generates the "per element" operation").

    raises a KeyError if the ufunc is not in the ufunc_db
    )r   r   )	ufunc_keys    r   get_ufunc_infor   "   s     OOOYr
   c                 =   ddl m} ddlm}m}m} ddlm} |j        |j        d| t          j
        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j         |j         d	| t          j!        <   |j"        |j#        |j#        |j#        |j#        |j#        |j#        |j#        |j#        |j#        |j#        |j$        |j$        |j%        |j%        d	| t          j&        <   |j'        |j(        |j(        |j(        |j(        |j(        |j(        |j(        |j(        |j(        |j(        |j)        |j)        |j*        |j*        d	| t          j+        <   t          j,        t          j-        k    rd|j.        |j/        |j.        |j/        |j.        |j/        |j.        |j/        |j.        |j/        |j0        |j0        |j1        |j1        d
| t          j,        <   |j2        |j2        |j2        |j2        |j2        |j2        |j2        |j2        |j2        |j2        |j0        |j0        |j1        |j1        d| t          j-        <   |j.        |j/        |j.        |j/        |j.        |j/        |j.        |j/        |j.        |j/        |j3        |j3        d| t          j4        <   |j5        |j6        |j5        |j6        |j5        |j6        |j5        |j6        |j5        |j6        |j7        |j7        d| t          j8        <   |j9        |j:        |j9        |j:        |j9        |j:        |j9        |j:        |j9        |j:        |j;        |j;        d| t          j<        <   |j=        |j=        |j=        |j=        |j=        |j=        |j=        |j=        |j=        |j=        |j>        |j>        d| t          j?        <   |j@        |j@        d| t          jA        <   |jB        |jB        d| t          jC        <   |jD        |jD        |jD        |jD        |jD        |jD        |jD        |jD        |jD        |jD        |jE        |jE        |jF        |jF        d
| t          jG        <   |jH        |jH        |jI        |jI        d| t          jJ        <   |jK        |jK        |jK        |jK        |jK        |jK        |jK        |jK        |jK        |jK        d
| t          jL        <   |jM        |jM        |jM        |jM        |jM        |jM        |jM        |jM        |jM        |jM        d
| t          jN        <   |jO        |jO        |jP        |jP        d| t          jQ        <   |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jR        |jS        |jS        d| t          jT        <   |jU        |jU        |jV        |jV        d| t          jW        <   |jX        |jX        |jY        |jY        d| t          jZ        <   |j[        |j[        |j\        |j\        d| t          j]        <   |j^        |j^        |j_        |j_        d| t          j`        <   |ja        |ja        |jb        |jb        d| t          jc        <   |jd        |jd        |je        |je        d| t          jf        <   |jg        |jg        |jh        |jh        d| t          ji        <   |jj        |jj        |jk        |jk        d| t          jl        <   |jm        |jm        |jm        |jm        |jm        |jm        |jm        |jm        |jm        |jm        |jn        |jn        |jo        |jo        d| t          jp        <   |jq        |jq        d| t          jr        <   |js        |js        |js        |js        |js        |js        |js        |js        |js        |js        |jt        |jt        |ju        |ju        d| t          jv        <   |jw        |jw        |jx        |jx        d| t          jy        <   |jz        |jz        |j{        |j{        d| t          j|        <   |j}        }|j~        |j~        ||d| t          j        <   |j        }|j        |j        ||d| t          j        <   |j        |j        |j        |j        d| t          j        <   |j        }|j        |j        ||d| t          j        <   |j        |j        d| t          j        <   |j        |j        d| t          j        <   |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        d| t          j        <   |j        }	|j        |j        |	|	d| t          j        <   |j        |j        |j        |j        d| t          j        <   |j        }
|j        |j        |
|
d| t          j        <   |j        |j        d| t          j        <   | t          j                 | t          j        <   |j        |j        d| t          j        <   | t          j                 | t          j        <   |j        |j        d| t          j        <   |dk    rh| t          j                                     |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d           |j        |j        d| t          j        <   |dk    rh| t          j                                     |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d           |j        |j        d| t          j        <   |dk    rh| t          j                                     |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d           |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |dk    rN| t          j                                     |                    d          |                    d          d           |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d	| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d	| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d	| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d	| t          j        <   i d|j        d |j        d!|j        d"|j        d#|j        d$|j        d%|j        d&|j        d'|j        d(|j        d)|j        d*|j        d+|j        d,|j        d-|j        d.|j        d/|j        | t          j        <   i d|j        d |j        d!|j        d"|j        d#|j        d$|j        d%|j        d&|j        d'|j        d(|j        d)|j        d*|j        d+|j        d,|j        d-|j        d.|j        d/|j        | t          j        <   i d|j        d |j        d!|j        d"|j        d#|j        d$|j        d%|j        d&|j        d'|j        d(|j        d)|j        d*|j        d+|j        d,|j        d-|j        d/|j        d.|j        | t          j        <   |j        |j        d0| t          j        <   |j        |j        d| t          j        <   |j        |j        d| t          j        <   |j        |j        d| t          j        <   |j        |j        |j        |j        d1| t          j        <   |d2k    rzt           rr| t          j                                     d3          | t          j                 d4<   | t          j                                     d5          | t          j                 d6<   |j'        |j'        |j'        |j'        |j'        |j'        |j'        |j'        |j'        |j'        |j'        d7| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d7| t          j        <   |j"        |j"        |j"        |j"        |j"        |j"        |j"        |j"        |j"        |j"        |j"        d7| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d
| t          j        <   |j        |j        |j        |j        |j        |j        |j        |j        |j        |j        d
| t          j	        <   dd8l m
} | t          j                                     d9|j        i           | t          j                                     d9|j        i           | t          j                                     d9|j        i           | t          j                                     d9|j        i           | t          j!                                     |j        |j        |j        d:           | t          j&                                     |j        |j        |j        d;           | t          j+                                     |j        |j        |j        |j        d<           t          j,        t          j-        k    r;| t          j,                                     |j        |j        |j        d=           | t          j-                                     |j        |j        |j        d=           | t          j4                                     |j        |j        d>           | t          j4                                     d?|j        i           | t          j                                     |j        |j        d@           | t          j                                     |j        |j        d@           | t          j                                     |j        |j        d@           | t          j                                     |j         |j!        d@           | t          j                                     |j"        |j#        d@           | t          j                                     |j$        |j%        d@           | t          j                                     |j&        |j'        dA           | t          j                                     |j(        |j)        dA           | t          j                                     |j*        |j+        dA           | t          j                                     |j,        |j-        dA           | t          j8                                     dB|j.        i           d S )CNr   )npyfuncs)	cmathimplmathimplnumbers)numpy_version)M->?m->?)?->?b->bB->Bh->hH->Hi->iI->Il->lL->Lq->qQ->Qf->fd->dF->FD->D)r   r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   zF->fzD->d)r   r   r   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   )??->?bb->bBB->Bhh->hHH->Hii->iII->Ill->lLL->Lqq->qQQ->Qff->fdd->dFF->FDD->D)r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   )zbb->dzBB->dzhh->dzHH->dzii->dzII->dzll->dzLL->dzqq->dzQQ->dr5   r6   r7   r8   )r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   )zbb->bbzBB->BBzhh->hhzHH->HHzii->iizII->IIzll->llzLL->LLzqq->qqzQQ->QQzff->ffzdd->dd)r5   r6   )r5   r6   r7   r8   )
r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   )r&   r'   r(   r)   )r&   r'   )r      )r   r   r   r   r   r    r!   r"   r#   r$   r%   )r*   zbb->?zBB->?zhh->?zHH->?zii->?zII->?zll->?zLL->?zqq->?zQQ->?zff->?zdd->?zFF->?zDD->?)r9      >)zqQ->?zQq->?z>=<z<=z!=z==)r   b->?B->?h->?H->?i->?I->?l->?L->?q->?Q->?f->?d->?F->?D->?rG   rH   rI   rJ   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   r   r   r   )rG   rH   )zfi->ffl->fzdi->ddl->d)r   r   rK   zfq->frL   zdq->d)r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   )
npdatetimezm->m)mm->mMm->MzmM->M)rN   rO   zMM->m)mq->mmd->mzqm->mzdm->m)rP   rQ   zmm->d)rP   rQ   zmm->q)zMM->?zmm->?)zMM->MrN   rN   (/  numba.npr   numba.np.mathr   r   r   numba.np.numpy_supportr   np_datetime_isnat_implnpisnatint_invert_implint_negate_implreal_negate_implcomplex_negate_implnegativeint_positive_implreal_positive_implcomplex_positive_implpositiveint_abs_impluint_abs_implreal_abs_implcomplex_abs_implabsoluteint_sign_implreal_sign_implnp_complex_sign_implsignint_or_implint_add_implreal_add_implcomplex_add_impladdint_xor_implint_sub_implreal_sub_implcomplex_sub_implsubtractint_and_implint_mul_implreal_mul_implcomplex_mul_implmultiplydividetrue_dividenp_int_sdiv_implnp_int_udiv_implnp_real_div_implnp_complex_div_implnp_int_truediv_implnp_real_floor_div_implfloor_dividenp_int_srem_implnp_int_urem_implnp_real_mod_impl	remaindernp_int_sdivrem_implnp_int_udivrem_implnp_real_divmod_impldivmodnp_int_fmod_implnp_real_fmod_implfmodnp_real_logaddexp_impl	logaddexpnp_real_logaddexp2_impl
logaddexp2int_power_implreal_power_implnp_complex_power_implpowerreal_float_power_implnp_complex_float_power_implfloat_powernp_gcd_implgcdnp_lcm_impllcmnp_real_rint_implnp_complex_rint_implrintreal_conjugate_implcomplex_conjugate_impl	conjugatenp_real_exp_implnp_complex_exp_implexpnp_real_exp2_implnp_complex_exp2_implexp2np_real_log_implnp_complex_log_impllognp_real_log2_implnp_complex_log2_impllog2np_real_log10_implnp_complex_log10_impllog10np_real_expm1_implnp_complex_expm1_implexpm1np_real_log1p_implnp_complex_log1p_impllog1pnp_real_sqrt_implnp_complex_sqrt_implsqrtnp_int_square_implnp_real_square_implnp_complex_square_implsquarenp_real_cbrt_implcbrtnp_int_reciprocal_implnp_real_reciprocal_implnp_complex_reciprocal_impl
reciprocalnp_real_sin_implnp_complex_sin_implsinnp_real_cos_implnp_complex_cos_implcostan_implnp_real_tan_impltan	asin_implnp_real_asin_implarcsinnp_real_acos_impl	acos_implarccos	atan_implnp_real_atan_implarctannp_real_atan2_implarctan2np_real_hypot_implhypotnp_real_sinh_implnp_complex_sinh_implsinhnp_real_cosh_implnp_complex_cosh_implcoshnp_real_tanh_implnp_complex_tanh_impltanh
asinh_implnp_real_asinh_implarcsinhnp_real_acosh_implnp_complex_acosh_implarccosh
atanh_implnp_real_atanh_implarctanhradians_float_impldeg2radradiansdegrees_float_implrad2degdegreesnp_real_floor_implfloorupdateidentity_implnp_real_ceil_implceilnp_real_trunc_impltruncnp_real_fabs_implfabsint_ugt_implint_sgt_implreal_gt_implnp_complex_gt_implgreaterint_signed_unsigned_cmpint_unsigned_signed_cmpint_uge_implint_sge_implreal_ge_implnp_complex_ge_implgreater_equalint_ult_implint_slt_implreal_lt_implnp_complex_lt_impllessint_ule_implint_sle_implreal_le_implnp_complex_le_impl
less_equalint_ne_implreal_ne_implnp_complex_ne_impl	not_equalint_eq_implreal_eq_implnp_complex_eq_implequalnp_logical_and_implnp_complex_logical_and_impllogical_andnp_logical_or_implnp_complex_logical_or_impl
logical_ornp_logical_xor_implnp_complex_logical_xor_impllogical_xornp_logical_not_implnp_complex_logical_not_impllogical_notnp_int_smax_implnp_int_umax_implnp_real_maximum_implnp_complex_maximum_implmaximumnp_int_smin_implnp_int_umin_implnp_real_minimum_implnp_complex_minimum_implminimumnp_real_fmax_implnp_complex_fmax_implfmaxnp_real_fmin_implnp_complex_fmin_implfminnp_real_isnan_implnp_complex_isnan_implnp_int_isnan_implisnannp_real_isinf_implnp_complex_isinf_implnp_int_isinf_implisinfnp_real_isfinite_implnp_complex_isfinite_implnp_int_isfinite_implnp_datetime_isfinite_implisfinitenp_real_signbit_implsignbitnp_real_copysign_implcopysignnp_real_nextafter_impl	nextafternp_real_spacing_implspacingnp_real_ldexp_implldexpIS_WIN32popbitwise_and
bitwise_orbitwise_xorinvertint_shl_impl
left_shiftint_shr_implright_shiftrM   timedelta_neg_impltimedelta_pos_impltimedelta_abs_impltimedelta_sign_impltimedelta_add_impldatetime_plus_timedeltatimedelta_plus_datetimetimedelta_sub_impldatetime_minus_timedeltadatetime_minus_datetimetimedelta_times_numbernumber_times_timedeltatimedelta_over_numbertimedelta_over_timedeltatimedelta_floor_div_timedeltadatetime_eq_datetime_impltimedelta_eq_timedelta_impldatetime_ne_datetime_impltimedelta_ne_timedelta_impldatetime_lt_datetime_impltimedelta_lt_timedelta_impldatetime_le_datetime_impltimedelta_le_timedelta_impldatetime_gt_datetime_impltimedelta_gt_timedelta_impldatetime_ge_datetime_impltimedelta_ge_timedelta_impldatetime_maximum_impltimedelta_maximum_impldatetime_minimum_impltimedelta_minimum_impldatetime_fmax_impltimedelta_fmax_impldatetime_fmin_impltimedelta_fmin_impltimedelta_mod_timedelta)ufunc_dbr   r   r   r   r   r   arcsin_implarctan_implarcsinh_implarctanh_implrM   s               r   r   r   0   s"    "!!!!!::::::::::444444 // HRX '''''''''''((++ HR[& )))))))))))**-- HR[& $$%$%$%$%$%%%(( HR[& %%%%%%%%%%&&-- HRW$ $%%%%%%%%%%&&)) HRV& %%%%%%%%%%%&&)) HR[& %%%%%%%%%%%&&)) HR[$ 
yBN""............11
 
$ ----------**--   HR^$ **********00! !HR_  ************ HR\  ............ HRY  **********++ HRW  00 HR\ 11 HR] '''''''''' ((//# HRX* //55	   HR^ %%%%%%%%%% HRV %%%%%%%%%% HRV **--	 HRW ++++++++++++.. HR\$ )),,	 HRV **--	 HRW )),,	 HRV **--	 HRW ++..	 HRX ++..	 HRX ++..	 HRX **--	 HRW ++++++++++,,// HRY$ ** HRW //////////0033 HR]$ )),,	 HRV )),,	 HRV !H ))	 HRV %K **	 HRY **##	 HRY %K **	 HRY ,, HRZ ,, HRX **--	 HRW **--	 HRW **--	 HRW 'L ++	 HRZ ++..	 HRZ 'L ++	 HRZ ++ HRZ
 $BJ/HRZ ++ HRZ
 $BJ/HRZ ++ HRX !!)))))))))))#
 #
 	 	 	 ** HRW   )))))))))))"
 "
 	 	 	 ++ HRX !!)))))))))))#
 #
 	 	 	 ** HRW %%%%%%%%%%%%%,, HRZ" ##44S9944S99%; %; 	< 	< 	<
 %%%%%%%%%%%%%,," "HR" !"))44T::44T::+< +< 	= 	= 	=
 %%%%%%%%%%%%%,, HRW"   44S9944S99"; "; 	< 	< 	<
 %%%%%%%%%%%%%,, HR]" &&44T::44T::(< (< 	= 	= 	=
 $$$$$$$$$$$%%,, HR\" %%44T::44T::'< '< 	= 	= 	=
 $$$$$$$$$$$%%,, HRX" !!44T::44T::#< #< 	= 	= 	=
 -------------55   HR^& ,,,,,,,,,,,,,44 HR]& -------------55   HR^& ,,,,,,,,,,,,,44   HR^& ,**********..11 HRZ& -**********..11 HRZ& ,**********++.. HRW& -**********++.. HRW&++ 	. 	.	 	* 	* 	* 	* 	* 	* 	*  	*!$ 	*%& 	*'* 	*+. 	//0 	/1HRX6++ 	. 	.	 	* 	* 	* 	* 	* 	* 	*  	*!$ 	*%& 	*'* 	*+. 	*/0 	*1HRX6.. 	1 	1	 	- 	- 	- 	- 	- 	- 	-  	-!$ 	-%& 	-'* 	-+. 	2/0 	21HR[8 -- HRZ // HR[ 00 HR\ -- HRZ ,,,,	 HRX 8&.rx&8&<&<W&E&E7#&.rx&8&<&<W&E&E7# %%%%%%%%%%%   HR^ $$$$$$$$$$$ HR] %%%%%%%%%%%   HR^ ''''''''''' HRY %%%%%%%%%% HR] %%%%%%%%%%   HR^ $#####R[  
-"    R[  
-"    R[  
-"    RW
.    RV.33    
 R[  .43" "   
 R[  2222	" "    
yBN""""558$
 $
 	 	 	
 R^##114% %   
 R_$$11& &   
 R_$$9&    RX57     R\!!57# #    RW57     R]""57$ $    RZ57! !    R%%57' '    RZ12! !    RZ12! !    RW./     RW./    
 R\!!3#     r
   )__doc__numpyrV   sysplatform
startswithrM  tuplemapint__version__splitr   r   r   r   r   r   r	   r
   r   <module>r     s         



 <""7++cc#r~33C88!<==>>	" " "       K K K K Kr
   