§
    ƒÛg]W  ã                   ó^   — d Z ddlZddlZddlmZ ddlmZ ddlm	Z	m
Z
 d„ Zed„ ¦   «         ZdS )aD  Contains information on how to translate different ufuncs for the CUDA
target. 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 get_ufunc_info() to get the information related to a ufunc.
é    N)Ú	lru_cache)Útyping)Úget_unary_impl_for_fn_and_tyÚget_binary_impl_for_fn_and_tyc                 ó*   — t          ¦   «         |          S ©N)Úufunc_db)Ú	ufunc_keys    úG/granary/edev/quantum/lib/python3.11/site-packages/numba/cuda/ufuncs.pyÚget_ufunc_infor      s   € Ý‰:Œ:�iÔ Ð ó    c                  ó*  ‡‡‡‡‡‡‡— ddl m} m}m} ddlmŠ ddlm} ˆfd„Šˆfd„Šˆfd„Šˆfd„Šˆfd	„}ˆfd
„}ˆfd„}ˆfd„}ˆfd„}ˆfd„}	ˆfd„Šˆˆˆˆˆfd„}
ˆfd„Šˆˆˆˆˆfd„}ˆfd„}ˆˆˆˆˆfd„}ˆfd„}ˆfd„}ˆfd„}i }‰‰‰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        <   ||dœ|t          j        <   |	|	dœ|t          j        <   ‰‰|
|
dœ|t          j        <   ‰‰||dœ|t          j        <   ||||dœ|t          j        <   ||| j        | j        dœ|t          j        <   ||‰j        ‰j        dœ|t          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'        |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.        |j0        |j0        ‰j1        ‰j1        dœ|t          j2        <   |dk    rN|t          j2                  +                    | ,                    d¦  «        | -                    d¦  «        dœ¦  «         |j3        |j4        |j3        |j4        |j3        |j4        |j3        |j4        |j3        |j4        |j3        |j5        |j5        ‰j6        ‰j6        dœ|t          j7        <   |dk    rN|t          j7                  +                    | ,                    d ¦  «        | -                    d ¦  «        dœ¦  «         |j8        |j9        |j8        |j9        |j8        |j9        |j8        |j9        |j8        |j9        |j8        |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œ¦  «         |jA        |jA        |jA        |jA        |jA        |jA        |jA        |jA        |jA        |jA        |jA        |jB        |jB        ‰jC        ‰jC        dœ|t          jD        <   |dk    rN|t          jD                  +                    | ,                    d#¦  «        | -                    d#¦  «        dœ¦  «         ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jE        ‰jF        ‰jF        dœ|t          jG        <   ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jH        ‰jI        ‰jI        dœ|t          jJ        <   ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jK        ‰jL        ‰jL        dœ|t          jM        <   ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jN        ‰jO        ‰jO        d$œ|t          jP        <   ‰jH        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jS        ‰jS        ‰jT        ‰jT        d%œ|t          jU        <   ‰jE        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰jX        ‰jX        ‰jY        ‰jY        d%œ|t          jZ        <   ‰jH        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰jQ        ‰jR        ‰j[        ‰j[        ‰j\        ‰j\        d%œ|t          j]        <   ‰jE        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰jV        ‰jW        ‰j^        ‰j^        ‰j_        ‰j_        d%œ|t          j`        <   |ja        |ja        |ja        |ja        |ja        |ja        |ja        |ja        |ja        |ja        |ja        d&œ|t          jb        <   |jc        |jc        |jc        |jc        |jc        |jc        |jc        |jc        |jc        |jc        |jc        d&œ|t          jd        <   |je        |je        |je        |je        |je        |je        |je        |je        |je        |je        |je        d&œ|t          jf        <   |jg        |jg        |jg        |jg        |jg        |jg        |jg        |jg        |jg        |jg        |jg        d'œ|t          jh        <   |ji        |ji        |ji        |ji        |ji        |ji        |ji        |ji        |ji        |ji        d(œ
|t          jj        <   |jk        |jk        |jk        |jk        |jk        |jk        |jk        |jk        |jk        |jk        d(œ
|t          jl        <   |S ))Nr   )Ú	cmathimplÚmathimplÚnumbers)Únpyfuncs)Únumpy_versionc                 ó„   •— ‰                      ||d¦  «         t          | |j        d         ¦  «        } |||||¦  «        S )Né   r   )Ú_check_arity_and_homogeneityr   Úargs©ÚfnÚcontextÚbuilderÚsigr   Úimplr   s         €r   Únp_unary_implzufunc_db.<locals>.np_unary_impl   sF   ø€ Ø×-Ò-¨c°4¸Ñ;Ô;Ð;Ý+¨B°´¸´Ñ<Ô<ˆØˆt�G˜W c¨4Ñ0Ô0Ð0r   c                 ó„   •— ‰                      ||d¦  «         t          | |j        d         ¦  «        } |||||¦  «        S )Né   r   )r   r   r   r   s         €r   Únp_binary_implz ufunc_db.<locals>.np_binary_impl!   sF   ø€ Ø×-Ò-¨c°4¸Ñ;Ô;Ð;Ý,¨R°´¸!´Ñ=Ô=ˆØˆt�G˜W c¨4Ñ0Ô0Ð0r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )ÚmathÚsin©r   r   r   r   r   s       €r   Únp_real_sin_implz"ufunc_db.<locals>.np_real_sin_impl&   ó   ø€ Øˆ}�TœX w°¸¸dÑCÔCÐCr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úcosr%   s       €r   Únp_real_cos_implz"ufunc_db.<locals>.np_real_cos_impl)   r'   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Útanr%   s       €r   Únp_real_tan_implz"ufunc_db.<locals>.np_real_tan_impl,   r'   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úasinr%   s       €r   Únp_real_asin_implz#ufunc_db.<locals>.np_real_asin_impl/   ó   ø€ Øˆ}�TœY¨°¸#¸tÑDÔDÐDr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úacosr%   s       €r   Únp_real_acos_implz#ufunc_db.<locals>.np_real_acos_impl2   r1   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úatanr%   s       €r   Únp_real_atan_implz#ufunc_db.<locals>.np_real_atan_impl5   r1   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úatan2©r   r   r   r   r!   s       €r   Únp_real_atan2_implz$ufunc_db.<locals>.np_real_atan2_impl8   ó   ø€ Øˆ~�dœj¨'°7¸CÀÑFÔFÐFr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úhypotr:   s       €r   Únp_real_hypot_implz$ufunc_db.<locals>.np_real_hypot_impl;   r<   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úsinhr%   s       €r   Únp_real_sinh_implz#ufunc_db.<locals>.np_real_sinh_impl>   r1   r   c                 ó  •— ‰                      ||d¦  «         |j        d         }|j        }t          j        |gdz  Ž }|                      |||d         ¦  «        }|                      ||¦  «        }|j        }	|j        }
 ‰| |||
g¦  «        } ‰| |||	g¦  «        } ‰| |||
g¦  «        } ‰| |||	g¦  «        }|                     ||¦  «        |_        |                     ||¦  «        |_        | 	                    ¦   «         S ©Nr   r   r    ©
r   r   Úunderlying_floatr   Ú	signatureÚmake_complexÚrealÚimagÚfmulÚ	_getvalue)r   r   r   r   ÚtyÚftyÚfsig1ÚxÚoutÚxrÚxiÚsxiÚshxrÚcxiÚchxrr*   Únp_real_cosh_implr&   rB   r   s                  €€€€€r   Únp_complex_sinh_implz&ufunc_db.<locals>.np_complex_sinh_implA   ó  ø€ ð 	×-Ò-¨c°4¸Ñ;Ô;Ð;àŒX�aŒ[ˆØÔ!ˆÝÔ  3 %¨!¡)Ð,ˆØ× Ò  ¨"¨d°1¬gÑ6Ô6ˆØ×"Ò" 7¨BÑ/Ô/ˆØŒVˆØŒVˆàÐ˜w¨°¸¸Ñ=Ô=ˆØ Ð  ¨'°5¸2¸$Ñ?Ô?ˆØÐ˜w¨°¸¸Ñ=Ô=ˆØ Ð  ¨'°5¸2¸$Ñ?Ô?ˆà—<’<  TÑ*Ô*ˆŒØ—<’<  TÑ*Ô*ˆŒà�}Š}‰ŒÐr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úcoshr%   s       €r   rX   z#ufunc_db.<locals>.np_real_cosh_implX   r1   r   c                 ó  •— ‰                      ||d¦  «         |j        d         }|j        }t          j        |gdz  Ž }|                      |||d         ¦  «        }|                      ||¦  «        }|j        }	|j        }
 ‰| |||
g¦  «        } ‰| |||	g¦  «        } ‰| |||
g¦  «        } ‰| |||	g¦  «        }|                     ||¦  «        |_        |                     ||¦  «        |_        | 	                    ¦   «         S rD   rE   )r   r   r   r   rM   rN   rO   rP   rQ   rR   rS   rV   rW   rT   rU   r*   rX   r&   rB   r   s                  €€€€€r   Únp_complex_cosh_implz&ufunc_db.<locals>.np_complex_cosh_impl[   rZ   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Útanhr%   s       €r   Únp_real_tanh_implz#ufunc_db.<locals>.np_real_tanh_implr   r1   r   c                 ó   •— ‰"                      ||d¦  «         |j        d         }|j        }t          j        |gdz  Ž }|                      |d¦  «        }|                      |||d         ¦  «        }|                      ||¦  «        }	|j        }
|j        } ‰ | |||g¦  «        } ‰| |||g¦  «        } ‰!| |||
g¦  «        } ‰| |||
g¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 
                    ||¦  «        }|                     ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 	                    ||¦  «        }| 
                    ||¦  «        }|                     ||¦  «        }| 	                    ||¦  «        |	_        | 	                    ||¦  «        |	_        |	                     ¦   «         S )Nr   r   r    g      ð?)r   r   rF   r   rG   Úget_constantrH   rI   rJ   rK   ÚfaddÚfdivÚfsubrL   )#r   r   r   r   rM   rN   rO   ÚONErP   rQ   rR   rS   ÚsiÚciÚshrÚchr_ÚrsÚis_ÚrcÚicÚsqr_rcÚsqr_icÚdÚinv_dÚrs_rcÚis_icÚis_rcÚrs_icÚnumrÚnumir*   rX   r&   rB   r   s#                                 €€€€€r   Únp_complex_tanh_implz&ufunc_db.<locals>.np_complex_tanh_implu   s8  ø€ ð 	×-Ò-¨c°4¸Ñ;Ô;Ð;àŒX�aŒ[ˆØÔ!ˆÝÔ  3 %¨!¡)Ð,ˆØ×"Ò" 3¨Ñ,Ô,ˆØ× Ò  ¨"¨d°1¬gÑ6Ô6ˆØ×"Ò" 7¨BÑ/Ô/ˆàŒVˆØŒVˆØÐ˜g w°¸°tÑ<Ô<ˆØÐ˜g w°¸°tÑ<Ô<ˆØÐ ¨°%¸"¸Ñ>Ô>ˆØ Ð  ¨'°5¸2¸$Ñ?Ô?ˆØ�\Š\˜"˜cÑ"Ô"ˆØ�lŠl˜2˜tÑ$Ô$ˆØ�\Š\˜"˜dÑ#Ô#ˆà�\Š\˜"˜cÑ"Ô"ˆØ—’˜b "Ñ%Ô%ˆØ—’˜b "Ñ%Ô%ˆØ�LŠL˜ Ñ(Ô(ˆØ—’˜S !Ñ$Ô$ˆØ—’˜R Ñ$Ô$ˆØ—’˜S "Ñ%Ô%ˆØ—’˜S "Ñ%Ô%ˆØ—’˜R Ñ$Ô$ˆØ�|Š|˜E 5Ñ)Ô)ˆØ�|Š|˜E 5Ñ)Ô)ˆØ—<’<  eÑ,Ô,ˆŒØ—<’<  eÑ,Ô,ˆŒà�}Š}‰ŒÐr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úasinhr%   s       €r   Únp_real_asinh_implz$ufunc_db.<locals>.np_real_asinh_impl›   ó   ø€ Øˆ}�TœZ¨°'¸3ÀÑEÔEÐEr   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úacoshr%   s       €r   Únp_real_acosh_implz$ufunc_db.<locals>.np_real_acosh_implž   r~   r   c                 ó6   •—  ‰t           j        | |||¦  «        S r   )r#   Úatanhr%   s       €r   Únp_real_atanh_implz$ufunc_db.<locals>.np_real_atanh_impl¡   r~   r   )úf->fúd->dzF->FzD->D)úff->fúdd->d)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->?)r   é   ú>)zqQ->?zQq->?z>=ú<z<=z!=z==)ú?->?zb->?zB->?zh->?zH->?zi->?zI->?zl->?zL->?zq->?zQ->?zf->?zd->?zF->?zD->?)r‰   úbb->búBB->Búhh->húHH->Húii->iúII->Iúll->lúLL->Lúqq->qúQQ->Qr‡   rˆ   zFF->FzDD->D)r‰   rŽ   r�   r�   r‘   r’   r“   r”   r•   r–   r—   )r�   zb->bzB->Bzh->hzH->Hzi->izI->Izl->lzL->Lzq->qzQ->Q)
rŽ   r�   r�   r‘   r’   r“   r”   r•   r–   r—   )mÚnumba.cpythonr   r   r   Únumba.npr   Únumba.np.numpy_supportr   Únp_complex_sin_implÚnpr$   Únp_complex_cos_implr)   Útan_implr,   Ú	asin_implÚarcsinÚ	acos_implÚarccosÚ	atan_implÚarctanÚarctan2r>   rA   r\   r`   Ú
asinh_implÚarcsinhÚnp_complex_acosh_implÚarccoshÚ
atanh_implÚarctanhÚradians_float_implÚdeg2radÚradiansÚdegrees_float_implÚrad2degÚdegreesÚint_ugt_implÚint_sgt_implÚreal_gt_implÚnp_complex_gt_implÚgreaterÚupdateÚ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Úint_and_implÚbitwise_andÚint_or_implÚ
bitwise_orÚint_xor_implÚbitwise_xorÚint_invert_implÚinvertÚint_shl_implÚ
left_shiftÚint_shr_implÚright_shift)r   r   r   r   r-   r0   r4   r7   r;   r?   rY   r^   ra   rz   r}   r�   r„   Údbr!   r*   rX   r&   rB   r   r   s                     @@@@@@@r   r	   r	      s   øøøøøøø€ ð ;Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ð:Ø!Ð!Ð!Ð!Ð!Ð!Ø4Ð4Ð4Ð4Ð4Ð4ð1ð 1ð 1ð 1ð 1ð
1ð 1ð 1ð 1ð 1ð
Dð Dð Dð Dð DðDð Dð Dð Dð DðDð Dð Dð Dð DðEð Eð Eð Eð EðEð Eð Eð Eð EðEð Eð Eð Eð EðGð Gð Gð Gð GðGð Gð Gð Gð GðEð Eð Eð Eð Eðð ð ð ð ð ð ð ð ð.Eð Eð Eð Eð Eðð ð ð ð ð ð ð ð ð.Eð Eð Eð Eð Eð$ð $ð $ð $ð $ð $ð $ð $ð $ðLFð Fð Fð Fð FðFð Fð Fð Fð FðFð Fð Fð Fð Fð 
€Bð !Ø ØÔ,ØÔ,ð	ð €B…r„v�Jð !Ø ØÔ,ØÔ,ð	ð €B…r„v�Jð !Ø ØÔ"ØÔ"ð	ð €B…r„v�Jð "Ø!ØÔ#ØÔ#ð	ð €B…r„y�Mð "Ø!ØÔ#ØÔ#ð	ð €B…r„y�Mð "Ø!ØÔ#ØÔ#ð	ð €B…r„y�Mð $Ø#ðð €B…r„z�Nð $Ø#ðð €B…r„x�Lð "Ø!Ø$Ø$ð	ð €B…r„w�Kð "Ø!Ø$Ø$ð	ð €B…r„w�Kð "Ø!Ø$Ø$ð	ð €B…r„w�Kð #Ø"ØÔ$ØÔ$ð	ð €B…r„z�Nð #Ø"ØÔ.ØÔ.ð	ð €B…r„z�Nð #Ø"ØÔ$ØÔ$ð	ð €B…r„z�Nð Ô+ØÔ+ðð €B…r„z�Nð
 �œ
”^€B…r„z�Nð Ô+ØÔ+ðð €B…r„z�Nð
 �œ
”^€B…r„z�Nð Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…r„z�Nð" ˜ÒÐØ
�2Œ:Œ×ÒØ×4Ò4°SÑ9Ô9Ø×4Ò4°SÑ9Ô9ð;ð ;ñ 	<ô 	<ð 	<ð
 Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…rÔÑð" ˜ÒÐØ
�2ÔÔ×#Ò#Ø×4Ò4°TÑ:Ô:Ø×4Ò4°TÑ:Ô:ð%<ð %<ñ 	=ô 	=ð 	=ð
 Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…r„w�Kð" ˜ÒÐØ
�2Œ7Œ×ÒØ×4Ò4°SÑ9Ô9Ø×4Ò4°SÑ9Ô9ð;ð ;ñ 	<ô 	<ð 	<ð
 Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…r„}Ñð" ˜ÒÐØ
�2Œ=Ô× Ò Ø×4Ò4°TÑ:Ô:Ø×4Ò4°TÑ:Ô:ð"<ð "<ñ 	=ô 	=ð 	=ð
 Ô$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…r„|Ñð" ˜ÒÐØ
�2Œ<Ô×ÒØ×4Ò4°TÑ:Ô:Ø×4Ò4°TÑ:Ô:ð!<ð !<ñ 	=ô 	=ð 	=ð
 Ô$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ%ØÔ%ØÔ,ØÔ,ðð €B…r„x�Lð" ˜ÒÐØ
�2Œ8Œ×ÒØ×4Ò4°TÑ:Ô:Ø×4Ò4°TÑ:Ô:ð<ð <ñ 	=ô 	=ð 	=ð
 Ô-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ5ØÔ5ðð €B…r„~Ñð& Ô,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ4ØÔ4ðð €B…r„}Ñð& Ô-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ-ØÔ5ØÔ5ðð €B…r„~Ñð& Ô,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ,ØÔ4ØÔ4ðð €B…r„~Ñð& Ô,ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ.ØÔ.ØÔ1ØÔ1ðð €B…r„z�Nð& Ô-ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ.ØÔ.ØÔ1ØÔ1ðð €B…r„z�Nð& Ô,ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ+ØÔ+ØÔ.ØÔ.ðð €B…r„w�Kð& Ô-ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ*ØÔ+ØÔ+ØÔ.ØÔ.ðð €B…r„w�Kð& Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ðð €B…r„~Ñð Ô$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ØÔ$ðð €B…r„}Ñð Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ðð €B…r„~Ñð Ô'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ØÔ'ðð €B…r„y�Mð Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ðð €B…r„}Ñð Ô%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ØÔ%ðð €B…r„~Ñð €Ir   )Ú__doc__r#   Únumpyrœ   Ú	functoolsr   Ú
numba.corer   Únumba.cuda.mathimplr   r   r   r	   © r   r   ú<module>r      s³   ððð ð €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð Ø Ð Ð Ð Ð Ð ð@ð @ð @ð @ð @ð @ð @ð @ð!ð !ð !ð ða	ð a	ñ „ða	ð a	ð a	r   