§
    fŠtj¹  ã                   ó¢  — d Z ddlZddlZddlZddlZddgZg Z e	ej
        j        ¦  «        D ]/Zeevr)e                      eej
        j        e¦  «        ¦  «         Œ0 e	ej
        j        ¦  «        D ]+Ze                      eej
        j        e¦  «        ¦  «         Œ,d„ eD ¦   «         Zej                             de¦  «        d„ ¦   «         ZdS )a’  Test that all ufuncs have float32-preserving signatures.

This was once guaranteed through the code generation script for
generating ufuncs, `scipy/special/_generate_pyx.py`. Starting with
gh-20260, SciPy developers have begun moving to generate ufuncs
through direct use of the NumPy C API (through C++). Existence of
float32 preserving signatures must now be tested since it is no
longer guaranteed.
é    NÚ_gen_harmonicÚ_normalized_gen_harmonicc                 óF   — g | ]}t          |t          j        ¦  «        ¯|‘ŒS © )Ú
isinstanceÚnpÚufunc)Ú.0Úfuncs     úg/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/special/tests/test_ufunc_signatures.pyú
<listcomp>r      s)   € Ð
BÐ
BÐ
B�D¥z°$½¼Ñ'AÔ'AÐ
Bˆ4Ð
BÐ
BÐ
Bó    r	   c                 óF  — t          d„ | j        D ¦   «         ¦  «        }t          ¦   «         }|D ]i}|                     |                     dd¦  «                             dd¦  «        |                     dd¦  «                             dd¦  «        g¦  «         Œj||k    sJ ‚d S )Nc              3   ó:   K  — | ]}d |v °d|v °
d|v °d|v °|V — ŒdS )ÚlÚiÚqÚpNr   )r
   Úsigs     r   ú	<genexpr>z(test_ufunc_signatures.<locals>.<genexpr>(   sO   è è € ð Oð O˜Ø˜s˜
˜
 c¨S j j°C¸3°J°JÀ#ÈÀ*À*ð ØBLÀ*À*À*ðOð Or   ÚdÚfÚDÚF)ÚsetÚtypesÚupdateÚreplace)r	   r   Úexpanded_typesr   s       r   Útest_ufunc_signaturesr       sÎ   € õ ð Oð O˜uœ{ð Oñ Oô Oñ Oô O€Eõ
 ‘U”U€NØð 
ð 
ˆØ×ÒØ�[Š[˜˜cÑ"Ô"×*Ò*¨3°Ñ4Ô4Ø�[Š[˜˜cÑ"Ô"×*Ò*¨3°Ñ4Ô4ð6ñ	
ô 	
ð 	
ð 	
ð �NÒ"Ð"Ð"Ð"Ð"Ð"r   )Ú__doc__Únumpyr   ÚpytestÚscipy.special._ufuncsÚscipyÚscipy.special._gufuncsÚ
exceptionsÚ_ufuncsÚdirÚspecialÚfuncnameÚappendÚgetattrÚ_gufuncsÚmarkÚparametrizer    r   r   r   ú<module>r1      s/  ððð ð Ð Ð Ð Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð ð
 Ð9Ð:€
à
€Ø��E”MÔ)Ñ*Ô*ð Að A€HØ�zÐ!Ð!Ø�Š�w�w˜uœ}Ô4°hÑ?Ô?Ñ@Ô@Ð@øØ��E”MÔ*Ñ+Ô+ð >ð >€HØ‡N‚N�7�7˜5œ=Ô1°8Ñ<Ô<Ñ=Ô=Ð=Ð=ð CÐ
B˜GÐ
BÑ
BÔ
B€à„×Ò˜ 'Ñ*Ô*ð#ð #ñ +Ô*ð#ð #ð #r   