§
    fŠtj§ ã            	       ót  — d dl Z d dlZd dlZd dlZd dlZd dlZd dlZd dlmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ d dlZd dlmZ d dlm Z m!Z!m"Z"m#Z#m$Z$ d dl%m&Z& d dl'm&c m(Z) d dl*m+Z+m,Z,m-Z- d dl*m.Z.m/Z/m0Z0m1Z1m2Z2 d dl*m3Z3 d d	l*m4Z4m5Z5m6Z6 d d
l7m8Z8m9Z9 d dl:m;Z;m<Z<m=Z= d dl>m?Z?m@Z@mAZA d dlBmCZCmDZDmEZE d dlFmGZG d dlHZHej        dk    s ejI        ¦   «         d          dk    rejJ        nejK        ZL G d„ d¦  «        ZM G d„ d¦  «        ZN G d„ d¦  «        ZO G d„ d¦  «        ZP G d„ d¦  «        ZQ G d„ d¦  «        ZR G d„ d¦  «        ZS G d„ d ¦  «        ZT G d!„ d"¦  «        ZU G d#„ d$¦  «        ZV G d%„ d&¦  «        ZW G d'„ d(¦  «        ZX G d)„ d*¦  «        ZY G d+„ d,¦  «        ZZ G d-„ d.¦  «        Z[ G d/„ d0¦  «        Z\ G d1„ d2¦  «        Z]dd3„Z^ G d4„ d5¦  «        Z_ G d6„ d7¦  «        Z` G d8„ d9¦  «        Za G d:„ d;¦  «        Zb G d<„ d=¦  «        Zc G d>„ d?¦  «        Zd G d@„ dA¦  «        Ze G dB„ dC¦  «        Zf G dD„ dE¦  «        ZgdF„ ZhdG„ Zi G dH„ dI¦  «        Zj G dJ„ dK¦  «        Zk G dL„ dM¦  «        Zl G dN„ dO¦  «        Zm G dP„ dQ¦  «        Zn G dR„ dS¦  «        Zo G dT„ dU¦  «        Zp G dV„ dW¦  «        Zq G dX„ dY¦  «        Zr G dZ„ d[¦  «        Zs G d\„ d]¦  «        Zt G d^„ d_¦  «        Zud`„ Zvda„ Zwejx         y                    dbej         dcdddeej        ejz        g¦  «        df„ ¦   «         Z{ejx         y                    dgej         dcdddeej        ejz        g¦  «        dh„ ¦   «         Z|ejx         y                    dbej         dcdddeej        ejz        g¦  «        di„ ¦   «         Z}ejx         y                    dgej         dcdddeej        ejz        g¦  «        dj„ ¦   «         Z~dk„ Zdl„ Z€dm„ Z�dn„ Z‚do„ Zƒej„        dp„ ¦   «         Z…eCdq„ ¦   «         Z†dr„ Z‡ds„ Zˆdt„ Z‰du„ ZŠdv„ Z‹dw„ ZŒdx„ Z�dy„ ZŽdz„ Z�d{„ Z�d|„ Z‘ G d}„ d~¦  «        Z’dS )€é    N)ÚarrayÚisnanÚr_ÚarangeÚfinfoÚpiÚsinÚcosÚtanÚexpÚlogÚzerosÚsqrtÚasarrayÚinfÚ
nan_to_numÚrealÚarctanÚdoubleÚarray_equal)Úraises)Úassert_equalÚassert_array_equalÚassert_Úassert_allcloseÚassert_array_almost_equal_nulp)Úspecial)ÚellipeÚellipkÚellipkm1)ÚelliprcÚelliprdÚelliprfÚelliprgÚelliprj)Úsoftplus)Úmathieu_odd_coefÚmathieu_even_coefÚ	stirling2)Únp_longÚnp_ulong)Úxp_assert_closeÚxp_assert_equalÚSCIPY_ARRAY_API)Ú_FACTORIALK_LIMITS_64BITSÚ_FACTORIALK_LIMITS_32BITSÚ_is_subdtype)Úwith_special_errorsÚassert_func_equalÚFuncData)ÚquadÚwin32Ú32bitc                   óÎ  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)e*j+         ,                    d(¬)¦  «        d*„ ¦   «         Z-d+„ Z.d,„ Z/d-„ Z0d.„ Z1d/„ Z2d0„ Z3d1„ Z4d2„ Z5d3„ Z6d4„ Z7d5„ Z8d6„ Z9d7„ Z:d8„ Z;d9„ Z<d:„ Z=d;„ Z>d<„ Z?d=„ Z@d>„ ZAd?„ ZBd@„ ZCdA„ ZDdB„ ZEdC„ ZFdD„ ZGdE„ ZHdF„ ZIdG„ ZJdH„ ZKdI„ ZLdJ„ ZMdK„ ZNdL„ ZOdM„ ZPdN„ ZQdO„ ZRdP„ ZSdQ„ ZTdR„ ZUdS„ ZVdT„ ZWdU„ ZXdV„ ZYdW„ ZZdX„ Z[dY„ Z\dZ„ Z]d[„ Z^d\„ Z_d]„ Z`d^„ Zad_„ Zbd`„ Zcda„ Zddb„ Zedc„ Zfdd„ Zgde„ Zhdf„ Zidg„ Zjdh„ Zkdi„ Zle*j+         m                    djg dk¢¦  «        dl„ ¦   «         Zndm„ Zoe*j+         m                    djg dn¢¦  «        do„ ¦   «         Zpdp„ Zqdq„ Zrdr„ Zsds„ Ztdt„ Zudu„ Zvdv„ Zwdw„ Zxdx„ Zydy„ Zzdz„ Z{d{„ Z|d|„ Z}d}„ Z~d~„ Zd„ Z€d€„ Z�d�„ Z‚e*j+         ,                    d‚¬)¦  «        dƒ„ ¦   «         Zƒe*j+         ,                    d„¬)¦  «        d…„ ¦   «         Z„e*j+         ,                    d†¬)¦  «        d‡„ ¦   «         Z…dˆ„ Z†d‰„ Z‡dŠ„ Zˆd‹„ Z‰dŒ„ ZŠd�„ Z‹dŽ„ ZŒd�„ Z�d�„ ZŽd‘„ Z�d’„ Z�d“„ Z‘d”„ Z’d•„ Z“d–„ Z”d—„ Z•d˜„ Z–d™„ Z—dš„ Z˜d›„ Z™dœ„ Zšd�„ Z›dž„ ZœdŸ„ Z�d „ Zžd¡„ ZŸd¢„ Z d£„ Z¡d¤„ Z¢d¥„ Z£d¦„ Z¤d§„ Z¥d¨„ Z¦d©„ Z§dª„ Z¨d«„ Z©d¬„ Zªd­„ Z«d®„ Z¬d¯„ Z­d°„ Z®d±„ Z¯d²„ Z°d³„ Z±d´„ Z²dµ„ Z³d¶„ Z´d·„ Zµd¸„ Z¶d¹„ Z·dº„ Z¸d»S )¼Ú
TestCephesc                 ó.   — t          j        d¦  «         d S ©Nr   )ÚcephesÚairy©Úselfs    ú\/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/special/tests/test_basic.pyÚ	test_airyzTestCephes.test_airy<   ó   € ÝŒ�A‰Œˆˆˆó    c                 ó.   — t          j        d¦  «         d S r;   )r<   Úairyer>   s    r@   Ú
test_airyezTestCephes.test_airye?   s   € ÝŒ�Q‰ŒˆˆˆrC   c           	      óÄ  — t          j        g d¢¦  «        }t          j        g d¢¦  «        }t          j        t          j        |d d …d f         |d d d …f         ¦  «        ¦  «                             dd¦  «        j        }t          j        g d¢g d¢g d¢g d¢g¦  «        }t          t          j        |                     ¦   «         |d	¬
¦  «         t           j	         
                    d¦  «        }t           j        t          j        dd¦  «        d|                     d¦  «        z  dz
  f         }t          j        dd¦  «        }t          j        t          j        |d d …d f         |d d d …f         ¦  «        ¦  «                             dd¦  «        j        }t          t          j        t          j        |d d …df         |d d …df         dz  ¦  «        |dd¬¦  «         d S )N)gL7‰A`åÐ?é   gÍÌÌÌÌÌ@é   )é   çš™™™™™Ù?é   gffffff
@rJ   éÿÿÿÿ)g§±½ôÞ¸¿g	TÕ·J¤í?g®	7ÿ¾“?geL¼F¿)é   g¥*è+ @r   g­M{á£Ü@)g×£p=
×%@gÏ”“>èÖ@g©<² Íýw¿gúü†ð$@)éˆ   g³,y¥3@iøK  gà–Êô5�@ç‚vIhÂ%<=©ÚrtoléÒ  iùÿÿÿé   éè  éô  r   éf   é   ç     ð?ç»½×Ùß|Û=©ÚatolrR   )Únpr   Úbroadcast_arraysÚreshapeÚTr3   r<   ÚbinomÚravelÚrandomÚRandomStater   r   Úrand)r?   ÚnÚkÚnkÚrknownÚrngs         r@   Ú
test_binomzTestCephes.test_binomB   sÜ  € ÝŒHÐ(Ð(Ð(Ñ)Ô)ˆÝŒHÐ%Ð%Ð%Ñ&Ô&ˆÝŒX•bÔ)¨!¨A¨A¨A¨d¨F¬)°Q°t¸A¸A¸A°v´YÑ?Ô?ñ ô ßš  2™œ¤qð 	å”ð #ð #ð #Ø#QÐ#QÐ#QØFÐFÐFØ@Ð@Ð@ðBñ Cô Cˆõ 	�&œ,¨¯ª©¬¸ÀÐGÑGÔGÐGõ Œi×#Ò# DÑ)Ô)ˆÝŒE•"”)˜B Ñ#Ô# T¨#¯(ª(°2©,¬,Ñ%6¸Ñ%<Ð<Ô=ˆÝŒI�a˜ÑÔˆÝŒX•bÔ)¨!¨A¨A¨A¨d¨F¬)°Q°t¸A¸A¸A°v´YÑ?Ô?ñ ô ßš  2™œ¤qð 	õ 	�&œ,Ý œ, r¨!¨!¨!¨A¨#¤w°°1°1°1°Q°3´¸9Ñ0EÑFÔFØØ$¨5ð	2ñ 	2ô 	2ð 	2ð 	2ð 	2rC   c           	      óò  — t           j                             d¦  «         t           j        t          j        ddd¦  «                 }t          j        dd¦  «        }t          j        t          j        |d d …d f         |d d d …f         ¦  «        ¦  «                             dd¦  «        j	        }t          t          j        t          j        |d d …df         |d d …df         d	z  ¦  «        |d
d
¬¦  «         d S )NrS   rX   é,  é   r   rW   rJ   rM   rY   rZ   r[   )r]   rc   Úseedr   Úlogspacer   r   r^   r_   r`   r3   r<   ra   )r?   rf   rg   rh   s       r@   Útest_binom_2zTestCephes.test_binom_2Y   sæ   € å
Œ	�Š�tÑÔÐÝŒE•"”+˜a  bÑ)Ô)Ô*ˆÝŒI�a˜ÑÔˆÝŒX•bÔ)¨!¨A¨A¨A¨d¨F¬)°Q°t¸A¸A¸A°v´YÑ?Ô?ñ ô ßš  2™œ¤qð 	õ 	�&œ,Ý œ, r¨!¨!¨!¨A¨#¤w°°1°1°1°Q°3´¸9Ñ0EÑFÔFØØ$¨5ð	2ñ 	2ô 	2ð 	2ð 	2ð 	2rC   c           	      ó"  — t           j        d„ ¦   «         }t           j                             d¦  «         t          j        dd¦  «        }t          j        dd¦  «        }t          j        t          j        |d d …d f         |d d d …f         ¦  «        ¦  «                             dd¦  «        j        }||d d …df         |d d …df         k             }t          t          j         ||d d …df         |d d …df         ¦  «        |dd¬¦  «         d S )	Nc                 ó¶   — t          | ¦  «        } t          |¦  «        }d}d}t          d|dz   ¦  «        D ]}||| z   |z
  z  }||z  }Œt          ||z  ¦  «        S ©NrX   )ÚintÚrangeÚfloat)rf   rg   ÚnumÚdenÚis        r@   Ú	binom_intz.TestCephes.test_binom_exact.<locals>.binom_intg   sj   € å�A‘”ˆAÝ�A‘”ˆAØˆCØˆCÝ˜1˜a ™c‘]”]ð ð �Ø�q˜1‘u˜q‘yÑ �Ø�q‘��Ý˜˜S™‘>”>Ð!rC   rS   rX   é   r   rJ   rM   r[   )r]   Ú	vectorizerc   ro   r   r   r^   r_   r`   r3   r<   ra   )r?   r{   rf   rg   rh   s        r@   Útest_binom_exactzTestCephes.test_binom_exactf   s  € Ý	Œð	"ð 	"ñ 
Œð	"õ 	Œ	�Š�tÑÔÐÝŒI�a˜ÑÔˆÝŒI�a˜ÑÔˆÝŒX•bÔ)¨!¨A¨A¨A¨d¨F¬)°Q°t¸A¸A¸A°v´YÑ?Ô?ñ ô ßš  2™œ¤qð 	à��1�1�1�Q�3”˜2˜a˜a˜a ˜cœ7Ò"Ô#ˆÝ�&œ,Ø#˜) B q q q¨ s¤G¨R°°°°!°¬WÑ5Ô5ØØ  qð	*ñ 	*ô 	*ð 	*ð 	*ð 	*rC   c                 ó–   — g d¢}t          j        |¦  «        }t          t          j        |ddd¬¦  «                             ¦   «          d S )N))rU   rV   gìßwP–Ô~)iê  iõ  giióÞüÍ9~)iì  iö  g´ÁyhÇY~)iî  i÷  gèpvÙÀy~)ið  iø  gz¼°ºNº™~)iò  iù  gGTÉ³¹~)iô  iú  g@íjàH­Ù~)iö  iû  gF:aYÍ¦ù~)iø  iü  gè²É¸V )iú  iý  g
{øä™9)iü  iþ  gyÇVx“Y)iþ  éÿ  gù*I �y)i   i   g¯I¼¬†™)i  i  gõþW@N€¹)i  i  g5¿�†ôyÙ)r   rX   rJ   çê-�™—q=rQ   )r]   r   r4   r<   ra   Úcheck)r?   Údatasets     r@   Útest_binom_nooverflow_8346z%TestCephes.test_binom_nooverflow_8346}   sQ   € ð
ð 
ð 
ˆõ" ”*˜WÑ%Ô%ˆÝ•”˜w¨°¸Ð>Ñ>Ô>×DÒDÑFÔFÐFÐFÐFrC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S )NrX   ç      à?ç      ð?)r   r<   Úbdtrr>   s    r@   Ú	test_bdtrzTestCephes.test_bdtr“   s&   € Ý•V”[  1 SÑ)Ô)¨#Ñ.Ô.Ð.Ð.Ð.rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S ©NrX   é   r†   )r   r<   Úbdtrir>   s    r@   Ú
test_bdtrizTestCephes.test_bdtri–   ó&   € Ý•V”\ ! A cÑ*Ô*¨3Ñ/Ô/Ð/Ð/Ð/rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r‹   )r   r<   Úbdtrcr>   s    r@   Ú
test_bdtrczTestCephes.test_bdtrc™   r�   rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S ©NrX   r   ç      @)r   r<   Úbdtrinr>   s    r@   Útest_bdtrinzTestCephes.test_bdtrinœ   ó&   € Ý•V”] 1 Q qÑ)Ô)¨#Ñ.Ô.Ð.Ð.Ð.rC   c                 ó2   — t          j        ddd¦  «         d S r‹   )r<   Úbdtrikr>   s    r@   Útest_bdtrikzTestCephes.test_bdtrikŸ   s   € ÝŒ�a˜˜#ÑÔÐÐÐrC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©Nr   ç        )r   r<   Úbeir>   s    r@   Útest_beizTestCephes.test_bei¢   ó    € Ý•V”Z ‘]”] 3Ñ'Ô'Ð'Ð'Ð'rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úbeipr>   s    r@   Ú	test_beipzTestCephes.test_beip¥   ó    € Ý•V”[ ‘^”^ CÑ(Ô(Ð(Ð(Ð(rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©Nr   r‡   )r   r<   Úberr>   s    r@   Útest_berzTestCephes.test_ber¨   r¡   rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úberpr>   s    r@   Ú	test_berpzTestCephes.test_berp«   r¥   rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r§   )r   r<   Ú
besselpolyr>   s    r@   Útest_besselpolyzTestCephes.test_besselpoly®   s'   € Ý•VÔ& q¨¨1Ñ-Ô-¨cÑ2Ô2Ð2Ð2Ð2rC   c                 óP   — t          t          j        d¦  «        ddd¬¦  «         d S )NrX   r‡   ç�íµ ÷Æ°>r   r[   )r   r<   Úcbrtr>   s    r@   Ú	test_cbrtzTestCephes.test_cbrt±   s'   € Ý�œ A™œ¨°$¸QÐ?Ñ?Ô?Ð?Ð?Ð?rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S ©NrX   r   rž   )r   r<   Úchdtrr>   s    r@   Ú
test_chdtrzTestCephes.test_chdtr´   s$   € Ý•V”\ ! AÑ&Ô& sÑ+Ô+Ð+Ð+Ð+rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S ©NrX   r   r‡   )r   r<   Úchdtrcr>   s    r@   Útest_chdtrczTestCephes.test_chdtrc·   ó$   € Ý•V”] 1 QÑ'Ô'¨Ñ,Ô,Ð,Ð,Ð,rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S ©NrX   rž   )r   r<   Úchdtrir>   s    r@   Útest_chdtrizTestCephes.test_chdtriº   r¼   rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S ©Nr   rX   rž   )r   r<   Úchndtrixr>   s    r@   Útest_chndtrixzTestCephes.test_chndtrix½   ó&   € Ý•V”_ Q q¨Ñ+Ô+¨CÑ0Ô0Ð0Ð0Ð0rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Úcosdgr>   s    r@   Ú
test_cosdgzTestCephes.test_cosdgÀ   ó    € Ý•V”\ !‘_”_ SÑ)Ô)Ð)Ð)Ð)rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úcosm1r>   s    r@   Ú
test_cosm1zTestCephes.test_cosm1Ã   rÉ   rC   c                 óP   — t          t          j        d¦  «        ddd¬¦  «         d S )Né-   r‡   çvƒôõ!„>r   r[   )r   r<   Úcotdgr>   s    r@   Ú
test_cotdgzTestCephes.test_cotdgÆ   s)   € Ý�œ RÑ(Ô(¨#°FÀÐCÑCÔCÐCÐCÐCrC   c                 óŽ   — t          t          j        d¦  «        d¦  «         t          t          j        d¦  «        d¦  «         d S )Nr   rž   g®Gáz®ó?gâ¨Àfà?)r   r<   Údawsnr   r>   s    r@   Ú
test_dawsnzTestCephes.test_dawsnÉ   s;   € Ý•V”\ !‘_”_ SÑ)Ô)Ð)Ý�œ TÑ*Ô*Ð,?Ñ@Ô@Ð@Ð@Ð@rC   c                 ó  — g d¢}t          j        dt           j        z  dz   ¦  «                             t           j        ¦  «        }t          t          j        ||¦  «        ddd¬¦  «         t          j        dt           j        z  dz   ¦  «                             t           j        ¦  «        }t          t          j        ||¦  «        dd	d¬¦  «         t          j        dt           j        z  d
z   ¦  «                             t           j        ¦  «        }t          t          j        ||¦  «        dd	d¬¦  «         t          t           d¦  «        rgt          j        dt           j        z  dz   ¦  «                             t           j
        ¦  «        }t          t          j        ||¦  «        ddd¬¦  «         g d¢}t          j        dt           j        z  dz   ¦  «                             t           j        ¦  «        }t          t          j        ||¦  «        dd	d¬¦  «         t          j        dt           j        z  dt           j        z  dt           j        z  ¦  «        }g d¢}t          t          j        |d¦  «        |d	d¬¦  «         d S )N)rX   é   é   rJ   g-Cëâ6
?r‡   rÏ   r   r[   ç•Ö&è.>ç [n‡Û<çVçž¯Ò<Úfloat128r�   gÉûÖ"<)rJ   rH   é   ç      ð¿çš™™™™™É?)g£ºgúìë?gsø½OBá?g”saLÀ?g
7•I”^Ê¿rŒ   )r]   r   r   ÚastypeÚfloat32r   r   ÚdiricÚfloat64ÚhasattrrÛ   r   )r?   Ún_oddÚxÚn_evenÚoctave_results        r@   Ú
test_diriczTestCephes.test_diricÍ   s	  € ð �
�
ˆÝŒH�Q•r”u‘W˜t‘^Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝ�œ a¨Ñ/Ô/°¸6ÈÐJÑJÔJÐJÝŒH�Q•r”u‘W˜t‘^Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝ�œ a¨Ñ/Ô/°¸7ÈÐKÑKÔKÐKÝŒH�Q•r”u‘W˜u‘_Ñ%Ô%×,Ò,­R¬ZÑ8Ô8ˆÝ�œ a¨Ñ/Ô/°¸7ÈÐKÑKÔKÐKÝ•2�zÑ"Ô"ð 	På”˜�2œ5™ 5™Ñ)Ô)×0Ò0µ´Ñ=Ô=ˆAÝ�GœM¨!¨UÑ3Ô3°S¸wÈQÐOÑOÔOÐOà��ˆÝŒH�Q•r”u‘W˜t‘^Ñ$Ô$×+Ò+­B¬JÑ7Ô7ˆÝ�œ a¨Ñ0Ô0°$¸WÈ1ÐMÑMÔMÐMõ ŒI�c�"œ%‘i ¥R¤U¡¨Cµ´©IÑ6Ô6ˆð@ð @ð @ˆå�œ a¨Ñ+Ô+¨]ÀÈqÐQÑQÔQÐQÐQÐQrC   c                 óð   — t          j        d¦  «        }t          j        g d¢¦  «        }t          t	          j        |d d …t           j        f         |¦  «        j        |j        |j        fk    ¦  «         d S )NrÖ   )rX   rŒ   rL   )	r]   r   r   r   r   rá   ÚnewaxisÚshapeÚsize)r?   rå   rf   s      r@   Útest_diric_broadcastingz"TestCephes.test_diric_broadcastingæ   sb   € ÝŒI�a‰LŒLˆÝŒH�Y�Y�YÑÔˆÝ•”˜a   ¥2¤: Ô.°Ñ2Ô2Ô8¸Q¼VÀQÄVÐ<LÒLÑMÔMÐMÐMÐMrC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©NrX   r‡   )r   r<   r   r>   s    r@   Útest_ellipezTestCephes.test_ellipeë   ó"   € Ý•V”] 1Ñ%Ô% cÑ*Ô*Ð*Ð*Ð*rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S rÂ   )r   r<   Ú	ellipeincr>   s    r@   Útest_ellipeinczTestCephes.test_ellipeincî   ó%   € Ý•VÔ% a¨Ñ*Ô*¨3Ñ/Ô/Ð/Ð/Ð/rC   c                 ó0   — t          j        dd¦  «         d S ©Nr   rX   )r<   Úellipjr>   s    r@   Útest_ellipjzTestCephes.test_ellipjñ   s   € ÝŒ�a˜ÑÔÐÐÐrC   c                 óP   — t          t          d¦  «        t          dz  ¦  «         d S )Nr   rJ   )r   r   r   r>   s    r@   Útest_ellipkzTestCephes.test_ellipkô   s"   € Ý�˜q™	œ	¥2 a¡4Ñ(Ô(Ð(Ð(Ð(rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S r�   )r   r<   Ú	ellipkincr>   s    r@   Útest_ellipkinczTestCephes.test_ellipkinc÷   rõ   rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   ©r   r<   Úerfr>   s    r@   Útest_erfzTestCephes.test_erfú   s    € Ý•V”Z ‘]”] CÑ(Ô(Ð(Ð(Ð(rC   c                 óz   — d}t          t          j        |¦  «        t          j        | ¦  «        z   d¦  «         d S )Ng ¡#8xŸ@rž   r   ©r?   rå   s     r@   Útest_erf_symmetryzTestCephes.test_erf_symmetryý   s4   € ØˆÝ•V”Z ‘]”]¥V¤Z°°¡^¤^Ñ3°SÑ9Ô9Ð9Ð9Ð9rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Úerfcr>   s    r@   Ú	test_erfczTestCephes.test_erfc  s    € Ý•V”[ ‘^”^ SÑ)Ô)Ð)Ð)Ð)rC   c                 óP   — t          t          j        d¦  «        ddd¬¦  «         d S )NrJ   g      Y@r±   r   r[   )r   r<   Úexp10r>   s    r@   Ú
test_exp10zTestCephes.test_exp10  s'   € Ý�œ Q™œ¨°TÀÐBÑBÔBÐBÐBÐBrC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S )NrJ   ç      @)r   r<   Úexp2r>   s    r@   Ú	test_exp2zTestCephes.test_exp2  r¥   rC   c                 ó|  — t          t          j        d¦  «        d¦  «         t          t          j        t          j        ¦  «        t          j        ¦  «         t          t          j        t          j         ¦  «        d¦  «         t          t          j        t          j        ¦  «        t          j        ¦  «         d S )Nr   rž   rM   )r   r<   Úexpm1r]   r   Únanr>   s    r@   Ú
test_expm1zTestCephes.test_expm1
  sz   € Ý•V”\ !‘_”_ SÑ)Ô)Ð)Ý•V”\¥"¤&Ñ)Ô)­2¬6Ñ2Ô2Ð2Ý•V”\¥2¤6 'Ñ*Ô*¨BÑ/Ô/Ð/Ý•V”\¥"¤&Ñ)Ô)­2¬6Ñ2Ô2Ð2Ð2Ð2rC   c                 ó
  — t           j        }t           |d¦  «        d¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j        d¦  «        ¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j         t          j        ¦  «        ¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j         t          j         ¦  «        ¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j        t          j         ¦  «        ¦  «         t           |t          dt          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          dt          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          t          j        t          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          t          j         t          j        ¦  «        ¦  «        t          dd¦  «        ¦  «         t           |t          t          j         t          j        ¦  «        ¦  «        t          dd¦  «        ¦  «         t           |t          t          j        t          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          dt          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          dt          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          t          j        d¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         t           |t          t          j        t          j        ¦  «        ¦  «        t          t          j        t          j        ¦  «        ¦  «         d S )Nù                r   rX   rJ   rH   rÖ   rM   )r<   r  r   Úcomplexr]   r   r  )r?   r  s     r@   Útest_expm1_complexzTestCephes.test_expm1_complex  s;  € Ý”ˆÝ�U�U˜6‘]”] FÑ+Ô+Ð+Ý�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼ÀÑ0BÔ0BÑCÔCÐCÝ�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼¸ÅÄÑ0HÔ0HÑIÔIÐIÝ�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼¸Å"Ä&ÀÑ0IÔ0IÑJÔJÐJÝ�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼ÅÄÀÑ0HÔ0HÑIÔIÐIÝ�U�U�7 1¥b¤fÑ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7 1¥b¤fÑ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7¥2¤6­2¬6Ñ2Ô2Ñ3Ô3µW½R¼VÅRÄVÑ5LÔ5LÑMÔMÐMÝ�U�U�7¥B¤F 7­B¬FÑ3Ô3Ñ4Ô4µg¸bÀ!±n´nÑEÔEÐEÝ�U�U�7¥B¤F 7­B¬FÑ3Ô3Ñ4Ô4µg¸bÀ!±n´nÑEÔEÐEÝ�U�U�7¥2¤6­2¬6Ñ2Ô2Ñ3Ô3µW½R¼VÅRÄVÑ5LÔ5LÑMÔMÐMÝ�U�U�7 1¥b¤fÑ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7 1¥b¤fÑ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7¥2¤6¨1Ñ-Ô-Ñ.Ô.µ½¼ÅÄÑ0GÔ0GÑHÔHÐHÝ�U�U�7¥2¤6­2¬6Ñ2Ô2Ñ3Ô3µW½R¼VÅRÄVÑ5LÔ5LÑMÔMÐMÐMÐMrC   z-The real part of expm1(z) bad at these points©Úreasonc                 óP  — t          j        g d¢¦  «        }t          j        t          j        |¦  «        ¦  «         }|d|z  z   }t          j        g d¢¦  «        }t	          j        |¦  «        }t          |j        |j        d¦  «         t          |j        |j        d¦  «         d S )N)çš™™™™™¹?rÞ   ç333333Ó?rÖ   é   rn   ù              ð?)y”­á=…ÿ�¼Cwˆ¯¹?yC7gg)gF<ëUŠgòÉ?yŠQØá”Š<—™âD*ÌÓ?yg:>¬Œ–<»›sKÀy>ñûÕñ¸£¼$	‹Um>lÀy;VÃél ™<„«£´å@rŒ   rn   )	r]   r   r   r
   r<   r  r   Úimagr   )r?   Úyrå   ÚzÚexpectedÚfounds         r@   Útest_expm1_complex_hardz"TestCephes.test_expm1_complex_hard#  s©   € õ ŒHÐ/Ð/Ð/Ñ0Ô0ˆÝŒV•B”F˜1‘I”IÑÔÐˆØ��1‘‰Hˆõ ”8ð Jð Jð Jñ Kô Kˆõ ”˜Q‘”ˆå& u¤z°8´=À!ÑDÔDÐDå& u¤z°8´=À"ÑEÔEÐEÐEÐErC   c                 óš   — t          t          j        ddd¦  «        d¦  «         t          t          j        ddd¦  «        dd¬	¦  «         d S )
NrX   r   rž   r±   rÖ   é
   g£�2•óÿï?r�   rQ   )r   r<   Úfdtrr   r>   s    r@   Ú	test_fdtrzTestCephes.test_fdtr8  sW   € Ý•V”[  A qÑ)Ô)¨3Ñ/Ô/Ð/å�œ D¨!¨RÑ0Ô0Ð2DØ"ð	$ñ 	$ô 	$ð 	$ð 	$ð 	$rC   c                 óš   — t          t          j        ddd¦  «        d¦  «         t          t          j        ddd¦  «        dd¬	¦  «         d S )
NrX   r   r‡   rJ   r  g    _ BgDô�IXlÑ?r�   rQ   )r   r<   Úfdtrcr   r>   s    r@   Ú
test_fdtrczTestCephes.test_fdtrc>  sY   € Ý•V”\ ! Q¨Ñ*Ô*¨CÑ0Ô0Ð0õ 	�œ Q¨¨TÑ2Ô2Ð4GØ"ð	$ñ 	$ô 	$ð 	$ð 	$ð 	$rC   c                 óÄ   — t          t          j        ddddg¦  «        t          ddg¦  «        d¬¦  «         d}t          t          j        d	d|¦  «        d
d¬¦  «         d S )NrX   gV-²�ïß?gÕxé&1à?gší
}°Ìï?g<zO'Ñð?r±   rQ   g°×€í‡ì?r  rŒ   r�   )r   r<   Úfdtrir   )r?   Úps     r@   Ú
test_fdtrizTestCephes.test_fdtriE  ss   € Ý�œ Q¨¨E°5¨>Ñ:Ô:Ý˜y¨*Ð5Ñ6Ô6¸Tð	Cñ 	Cô 	Cð 	Cð %ˆÝ�œ S¨!¨QÑ/Ô/°¸Ð?Ñ?Ô?Ð?Ð?Ð?rC   c                 ó†   — d\  }}}t          t          j        ||t          j        |||¦  «        ¦  «        |d¬¦  «         d S )N)rX   éPÃ  g\«/˜Õ¹=@rÚ   rQ   )r   r<   r-  r'  )r?   ÚdfdÚdfnrå   s       r@   Útest_gh20835zTestCephes.test_gh20835M  sE   € à1‰ˆˆS�!Ý�œ S¨#­v¬{¸3ÀÀQÑ/GÔ/GÑHÔHÈ!ÐRWÐXÑXÔXÐXÐXÐXrC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S )NrX   r†   )r   r<   r-  r>   s    r@   Útest_fdtri_mysterious_failurez(TestCephes.test_fdtri_mysterious_failureR  s&   € Ý�œ Q¨¨3Ñ/Ô/°Ñ3Ô3Ð3Ð3Ð3rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r”   )r   r<   Úfdtridfdr>   s    r@   Útest_fdtridfdzTestCephes.test_fdtridfdU  rÅ   rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©Nr   ©rž   rž   )r   r<   Úfresnelr>   s    r@   Útest_fresnelzTestCephes.test_fresnelX  s"   € Ý•V”^ AÑ&Ô& yÑ1Ô1Ð1Ð1Ð1rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©NrÖ   ç      8@)r   r<   Úgammar>   s    r@   Ú
test_gammazTestCephes.test_gamma[  s    € Ý•V”\ !‘_”_ TÑ*Ô*Ð*Ð*Ð*rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S )NrÖ   rX   rž   )r   r<   Úgammainccinvr>   s    r@   Útest_gammainccinvzTestCephes.test_gammainccinv^  s%   € Ý•VÔ(¨¨1Ñ-Ô-¨cÑ2Ô2Ð2Ð2Ð2rC   c                 ó.   — t          j        d¦  «         d S )Nr&  )r<   Úgammalnr>   s    r@   Útest_gammalnzTestCephes.test_gammalna  s   € ÝŒ�rÑÔÐÐÐrC   c                 ó<  — t          j        t           j         dddddddt           j        g	t           j        ¦  «        }t          j        t           j        t           j        dd	d	ddddg	t           j        ¦  «        }t          t          j        |¦  «        |¦  «         d S )
Néüÿÿÿç      ÀgffffffÀç       €rž   rX   gÍÌÌÌÌÌ@r‡   rÝ   )r]   r   r   râ   r  r   r<   Úgammasgn)r?   ÚvalsÚ	references      r@   Útest_gammasgnzTestCephes.test_gammasgnd  s†   € ÝŒxÝŒfˆW�b˜$  d¨C°°C½¼Ð@Å"Ä*ñ
ô 
ˆõ ”HÝŒV•R”V˜S $¨¨c°3¸¸SÐAÅ2Ä:ñ
ô 
ˆ	õ 	�6œ?¨4Ñ0Ô0°)Ñ<Ô<Ð<Ð<Ð<rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S rµ   )r   r<   Úgdtrr>   s    r@   Ú	test_gdtrzTestCephes.test_gdtrm  ó&   € Ý•V”[  1 QÑ'Ô'¨Ñ,Ô,Ð,Ð,Ð,rC   c                 ób   — t          t          j        ddt          j        ¦  «        d¦  «         d S rï   )r   r<   rS  r]   r   r>   s    r@   Útest_gdtr_infzTestCephes.test_gdtr_infp  s(   € Ý•V”[  1¥R¤VÑ,Ô,¨SÑ1Ô1Ð1Ð1Ð1rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r¹   )r   r<   Úgdtrcr>   s    r@   Ú
test_gdtrczTestCephes.test_gdtrcs  ó&   € Ý•V”\ ! A aÑ(Ô(¨Ñ-Ô-Ð-Ð-Ð-rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S rÂ   )r   r<   Úgdtriar>   s    r@   Útest_gdtriazTestCephes.test_gdtriav  r˜   rC   c                 ó2   — t          j        ddd¦  «         d S ©NrX   r   )r<   Úgdtribr>   s    r@   Útest_gdtribzTestCephes.test_gdtriby  s   € ÝŒ�a˜˜!ÑÔÐÐÐrC   c                 ó2   — t          j        ddd¦  «         d S ©NrX   r  )r<   Úgdtrixr>   s    r@   Útest_gdtrixzTestCephes.test_gdtrix}  s   € ÝŒ�a˜˜"ÑÔÐÐÐrC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úhankel1r>   s    r@   Útest_hankel1zTestCephes.test_hankel1€  ó   € ÝŒ�q˜ÑÔÐÐÐrC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úhankel1er>   s    r@   Útest_hankel1ezTestCephes.test_hankel1eƒ  ó   € ÝŒ˜˜!ÑÔÐÐÐrC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úhankel2r>   s    r@   Útest_hankel2zTestCephes.test_hankel2†  rj  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úhankel2er>   s    r@   Útest_hankel2ezTestCephes.test_hankel2e‰  rn  rC   c                 óè   — t          t          j        ddd¦  «        t          d¦  «        dd¬¦  «         t          t          j        ddd¦  «        d	dd¬¦  «         t          j        ddd¦  «         d S )
NrX   r‡   r±   r   r[   rŒ   rH   éúÿÿÿg¹ãˆ®š?)r   r<   Úhyp1f1r   r>   s    r@   Útest_hyp1f1zTestCephes.test_hyp1f1Œ  sv   € Ý�œ a¨¨AÑ.Ô.µ°C±´¸tÈ!ÐLÑLÔLÐLÝ�œ a¨¨BÑ/Ô/Ð1HØ!¨ð	+ñ 	+ô 	+ð 	+åŒ�a˜˜!ÑÔÐÐÐrC   c                 óP   — t          t          j        dddd¦  «        d¦  «         d S r¹   )r   r<   Úhyp2f1r>   s    r@   Útest_hyp2f1zTestCephes.test_hyp2f1’  ó(   € Ý•V”] 1 Q q¨Ñ+Ô+¨CÑ0Ô0Ð0Ð0Ð0rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Úi0r>   s    r@   Útest_i0zTestCephes.test_i0•  ó    € Ý•V”Y˜q‘\”\ #Ñ&Ô&Ð&Ð&Ð&rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Úi0er>   s    r@   Útest_i0ezTestCephes.test_i0e˜  r¡   rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úi1r>   s    r@   Útest_i1zTestCephes.test_i1›  r€  rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úi1er>   s    r@   Útest_i1ezTestCephes.test_i1ež  r¡   rC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úit2i0k0r>   s    r@   Útest_it2i0k0zTestCephes.test_it2i0k0¡  ó   € ÝŒ�qÑÔÐÐÐrC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úit2j0y0r>   s    r@   Útest_it2j0y0zTestCephes.test_it2j0y0¤  r�  rC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Ú
it2struve0r>   s    r@   Útest_it2struve0zTestCephes.test_it2struve0§  s   € ÝÔ˜!ÑÔÐÐÐrC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úitairyr>   s    r@   Útest_itairyzTestCephes.test_itairyª  ó   € ÝŒ�aÑÔÐÐÐrC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r;  )r   r<   Úiti0k0r>   s    r@   Útest_iti0k0zTestCephes.test_iti0k0­  ó"   € Ý•V”] 1Ñ%Ô% iÑ0Ô0Ð0Ð0Ð0rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r;  )r   r<   Úitj0y0r>   s    r@   Útest_itj0y0zTestCephes.test_itj0y0°  r›  rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úitmodstruve0r>   s    r@   Útest_itmodstruve0zTestCephes.test_itmodstruve0³  s#   € Ý•VÔ(¨Ñ+Ô+¨CÑ0Ô0Ð0Ð0Ð0rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Ú	itstruve0r>   s    r@   Útest_itstruve0zTestCephes.test_itstruve0¶  s#   € Ý•VÔ% aÑ(Ô(¨Ñ-Ô-Ð-Ð-Ð-rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S rµ   )r   r<   Úivr>   s    r@   Útest_ivzTestCephes.test_iv¹  ó"   € Ý•V”Y˜q ‘^”^ CÑ(Ô(Ð(Ð(Ð(rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S rµ   )r   r<   Úiver>   s    r@   Útest_ivezTestCephes.test_ive¼  ó"   € Ý•V”Z  !‘_”_ SÑ)Ô)Ð)Ð)Ð)rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Új0r>   s    r@   Útest_j0zTestCephes.test_j0¿  r€  rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Új1r>   s    r@   Útest_j1zTestCephes.test_j1Â  r€  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S r§   )r   r<   Újnr>   s    r@   Útest_jnzTestCephes.test_jnÅ  r¨  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S r§   )r   r<   Újvr>   s    r@   Útest_jvzTestCephes.test_jvÈ  r¨  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S r§   )r   r<   Újver>   s    r@   Útest_jvezTestCephes.test_jveË  r¬  rC   c                 ó.   — t          j        d¦  «         d S ©NrJ   )r<   Úk0r>   s    r@   Útest_k0zTestCephes.test_k0Î  ó   € ÝŒ	�!‰ŒˆˆˆrC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úk0er>   s    r@   Útest_k0ezTestCephes.test_k0eÑ  ó   € ÝŒ
�1‰ŒˆˆˆrC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úk1r>   s    r@   Útest_k1zTestCephes.test_k1Ô  rÀ  rC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úk1er>   s    r@   Útest_k1ezTestCephes.test_k1e×  rÄ  rC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úkeir>   s    r@   Útest_keizTestCephes.test_keiÚ  rÄ  rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Úkeipr>   s    r@   Ú	test_keipzTestCephes.test_keipÝ  r¥   rC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úkerr>   s    r@   Útest_kerzTestCephes.test_kerà  rÄ  rC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úkerpr>   s    r@   Ú	test_kerpzTestCephes.test_kerpã  rB   rC   c                 ó.   — t          j        d¦  «         d S r½  )r<   Úkelvinr>   s    r@   Útest_kelvinzTestCephes.test_kelvinæ  r—  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úknr>   s    r@   Útest_knzTestCephes.test_kné  ó   € ÝŒ	�!�A‰ŒˆˆˆrC   c                 óÄ   — t          t          j        d¦  «        d¦  «         t          t	          j        t          j        t          j        ¦  «        ¦  «        ¦  «         d S r¾   )r   r<   Úkolmogir   r]   r   r  r>   s    r@   Útest_kolmogizTestCephes.test_kolmogiì  sF   € Ý•V”^ AÑ&Ô& sÑ+Ô+Ð+Ý•”�œ­¬Ñ/Ô/Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r§   )r   r<   Ú
kolmogorovr>   s    r@   Útest_kolmogorovzTestCephes.test_kolmogorovð  s#   € Ý•VÔ& qÑ)Ô)¨3Ñ/Ô/Ð/Ð/Ð/rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S )Nr   rM  )r   r<   Ú_kolmogpr>   s    r@   Útest_kolmogpzTestCephes.test_kolmogpó  s"   € Ý•V”_ QÑ'Ô'¨Ñ.Ô.Ð.Ð.Ð.rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r�   )r   r<   Ú_kolmogcr>   s    r@   Útest_kolmogczTestCephes.test_kolmogcö  s"   € Ý•V”_ QÑ'Ô'¨Ñ-Ô-Ð-Ð-Ð-rC   c                 óÄ   — t          t          j        d¦  «        d¦  «         t          t	          j        t          j        t          j        ¦  «        ¦  «        ¦  «         d S r�   )r   r<   Ú	_kolmogcir   r]   r   r  r>   s    r@   Útest_kolmogcizTestCephes.test_kolmogciù  sH   € Ý•VÔ% aÑ(Ô(¨#Ñ.Ô.Ð.Ý•”�Ô)­"¬&Ñ1Ô1Ñ2Ô2Ñ3Ô3Ð3Ð3Ð3rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úkvr>   s    r@   Útest_kvzTestCephes.test_kvý  rÝ  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úkver>   s    r@   Útest_kvezTestCephes.test_kve   ó   € ÝŒ
�1�Q‰ŒˆˆˆrC   c                 ó8  — t           j        }t           |d¦  «        d¦  «         t           |d¦  «        t          j         ¦  «         t           |d¦  «        t          j        ¦  «         t           |t          j        ¦  «        t          j        ¦  «         d S )Nr   rž   rM   éþÿÿÿ)r<   Úlog1pr   r]   r   r  )r?   rö  s     r@   Ú
test_log1pzTestCephes.test_log1p  sy   € Ý”ˆÝ�U�U˜1‘X”X˜sÑ#Ô#Ð#Ý�U�U˜2‘Y”Y¥¤ Ñ(Ô(Ð(Ý�U�U˜2‘Y”Y¥¤Ñ'Ô'Ð'Ý�U�U�2œ6‘]”]¥B¤FÑ+Ô+Ð+Ð+Ð+rC   c           	      óP  — t           j        }t          }t           |d¦  «        d¦  «         t           | |dd¦  «        ¦  «         |t          j         d¦  «        ¦  «         t          j        ¦   «         5  t          j        ddt          ¦  «         t           | |dt          j        ¦  «        ¦  «         |t          j        t          j        dz  ¦  «        ¦  «         t           | |dt          j        ¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j         d¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j        d¦  «        ¦  «         |t          j        d¦  «        ¦  «         t           | |t          j         t          j        ¦  «        ¦  «         |t          j        dt          j        z  d	z  ¦  «        ¦  «         t           | |t          j        t          j        ¦  «        ¦  «         |t          j        t          j        d	z  ¦  «        ¦  «         t           | |t          j        t          j        ¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j         t          j        ¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j        t          j        ¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j        d¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         t           | |t          j        t          j        ¦  «        ¦  «         |t          j        t          j        ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr  rM   r   Úignorez%invalid value encountered in multiplyrX   rJ   rŒ   rH   )r<   rö  r  r   r]   r   ÚwarningsÚcatch_warningsÚfilterwarningsÚRuntimeWarningr   r   r  )r?   rö  Úcs      r@   Útest_log1p_complexzTestCephes.test_log1p_complex
  sy  € Ý”ˆÝˆÝ�U�U˜6‘]”] FÑ+Ô+Ð+Ý�U�U˜1˜1˜R ™8œ8‘_”_ a a­¬¨°¡m¤mÑ4Ô4Ð4ÝÔ$Ñ&Ô&ð 	Fð 	FÝÔ#ØÐAÅ>ñSô Sð Så˜E˜E ! ! A¥r¤v¡,¤,Ñ/Ô/°°µ2´6½2¼5À¹7Ñ1CÔ1CÑDÔDÐDÝ˜˜˜q˜q ¥B¤F™|œ|Ñ,Ô,¨a¨aµ´½¼Ñ.?Ô.?Ñ@Ô@Ð@Ý˜E˜E ! !¥R¤V G¨Q¡-¤-Ñ0Ô0°!°!µB´F½B¼EÑ2BÔ2BÑCÔCÐCÝ˜˜˜q˜q¥¤¨™|œ|Ñ,Ô,¨a¨aµ´¸©l¬lÑ;Ô;Ð;Ý˜E˜E ! !¥R¤V G­R¬VÑ"4Ô"4Ñ5Ô5°q°q½¼ÀÅ2Ä5ÁÈÁÑ7KÔ7KÑLÔLÐLÝ˜E˜E ! !¥B¤F­B¬FÑ"3Ô"3Ñ4Ô4°a°a½¼ÅÄÀaÁÑ6HÔ6HÑIÔIÐIÝ˜˜˜q˜q¥¤­¬Ñ0Ô0Ñ1Ô1°1°1µR´V½R¼VÑ3DÔ3DÑEÔEÐEÝ˜˜˜q˜q¥"¤& ­"¬&Ñ1Ô1Ñ2Ô2°A°Aµb´f½b¼fÑ4EÔ4EÑFÔFÐFÝ˜˜˜q˜q¥¤­¬Ñ0Ô0Ñ1Ô1°1°1µR´V½R¼VÑ3DÔ3DÑEÔEÐEÝ˜˜˜q˜q¥¤¨™|œ|Ñ,Ô,¨a¨aµ´½¼Ñ.?Ô.?Ñ@Ô@Ð@Ý˜˜˜q˜q¥¤­¬Ñ0Ô0Ñ1Ô1°1°1µR´V½R¼VÑ3DÔ3DÑEÔEÐEð	Fð 	Fð 	Fñ 	Fô 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	Føøøð 	Fð 	Fð 	Fð 	Fð 	Fð 	Fs   Á8NPÐPÐ"Pc                 óN   — t          t          j        ddd¦  «        d¦  «         d S )Nr   rX   r‡   )r   r<   Úlpmvr>   s    r@   Ú	test_lpmvzTestCephes.test_lpmv  rU  rC   c                 ó~   — t          j        g d¢¦  «        }t          t          j        |d¦  «        |dz  ¦  «         d S ©N)rX   rJ   rÖ   r   rJ   )r]   r   r   r<   Ú	mathieu_a©r?   Úms     r@   Útest_mathieu_a_q0zTestCephes.test_mathieu_a_q0!  ó<   € åŒH�Y�Y�YÑÔˆÝ•VÔ% a¨Ñ+Ô+¨Q°©TÑ2Ô2Ð2Ð2Ð2rC   z	m, q, ref))r   é   g�sà6¥6%À)rŒ   ç      ø?g:$ÜZøb"@)rÖ   ç      Ð?g5`VU 9@)r
  éöÿÿÿgÈq^ÌA3P@c                 óT   — t          j        ||¦  «        }t          ||d¬¦  «         d S ©NrÚ   rQ   )r<   r  r   ©r?   r  ÚqÚrefr   s        r@   Útest_mathieu_azTestCephes.test_mathieu_a(  ó1   € õ Ô˜Q Ñ"Ô"ˆÝ˜˜3 UÐ+Ñ+Ô+Ð+Ð+Ð+rC   c                 ó~   — t          j        g d¢¦  «        }t          t          j        |d¦  «        |dz  ¦  «         d S r  )r]   r   r   r<   Ú	mathieu_br  s     r@   Útest_mathieu_b_q0zTestCephes.test_mathieu_b_q03  r	  rC   ))rX   r|   gÛ*|2Tƒ6À)rÖ   rŒ   gkBvä/9@)é	   r  gÅgf@T@)r&  éýÿÿÿg‘ôèY@c                 óT   — t          j        ||¦  «        }t          ||d¬¦  «         d S r  )r<   r  r   r  s        r@   Útest_mathieu_bzTestCephes.test_mathieu_b:  r  rC   c           
      ó²  — t          t          j        ddd¦  «        d¦  «         t          j        d„ ¦   «         }t          j        dd¦  «        }t          j        dt          j        ddd¦  «        f         }t          t          j        |d d …d f         |d d d …f         d	¦  «        d          ||d d …d f         |d d d …f         d	¦  «        d
d¬¦  «         d S )NrX   r   ©r‡   rž   c                 óØ  — |t           j        dz  z  }| dk    rddd|z  t          d|z  ¦  «        z  z
  z  S | dk    r(t          |¦  «        |dz  t          d|z  ¦  «        z  z
  S | dk    r.t          d|z  ¦  «        |t          d	|z  ¦  «        d
z  dz
  z  z
  S t          | |z  ¦  «        |t          | dz   |z  ¦  «        d	| dz   z  z  t          | dz
  |z  ¦  «        d	| dz
  z  z  z
  z  z
  S )Né´   r   gÍ;fž æ?rX   r†   rJ   r
  rŒ   rH   é   r  )r]   r   r
   ©r  r  r!  s      r@   Ú	ce_smallqz.TestCephes.test_mathieu_cem.<locals>.ce_smallqI  sö   € à•”�s‘‰NˆAØ�AŠvˆvà  A¨¨1©­S°°1±©X¬X©Ñ$5Ñ6Ð6Ø�a’�å˜1‘v”v  !¡¥c¨!¨A©#¡h¤h¡Ñ.Ð.Ø�a’�å˜1˜Q™3‘x”x !¥S¨¨1©¡X¤X¨b¡[°3Ñ%6Ñ"7Ñ7Ð7õ ˜1˜Q™3‘x”x !¥S¨!¨A©#¨q©¡\¤\°1°a¸±c±7Ñ%;½cÀ1ÀQÁ3ÈÁ'¹l¼lÈAÈqÐQRÉsÉGÑ>TÑ%TÑ"UÑUÐUrC   éd   éâÿÿÿé÷ÿÿÿr&  ç°rh‘í|¿?ç›+¡†›„=©rR   r\   )	r   r<   Úmathieu_cemr]   r}   r   r   rp   r   )r?   r"  r  r  s       r@   Útest_mathieu_cemzTestCephes.test_mathieu_cemE  sð   € Ý•VÔ'¨¨!¨AÑ.Ô.¨yÑ9Ô9Ð9õ 
Œð	Vð 	Vñ 
Œð	Võ ŒI�a˜ÑÔˆÝŒE�!•R”[  b¨"Ñ-Ô-Ð-Ô.ˆÝ�Ô*¨1¨Q¨Q¨Q¨t¨V¬9°a¸¸Q¸Q¸Q¸´iÀÑGÔGÈÔJØ!˜	 ! A A A d F¤)¨Q¨t°A°A°A¨v¬Y¸Ñ>Ô>Ø"¨ð	,ñ 	,ô 	,ð 	,ð 	,ð 	,rC   c           
      ó²  — t          t          j        ddd¦  «        d¦  «         t          j        d„ ¦   «         }t          j        dd¦  «        }t          j        dt          j        ddd¦  «        f         }t          t          j        |d d …d f         |d d d …f         d	¦  «        d          ||d d …d f         |d d d …f         d	¦  «        d
d¬¦  «         d S )NrX   r   ©rž   r‡   c                 óŠ  — |t           j        dz  z  }| dk    r(t          |¦  «        |dz  t          d|z  ¦  «        z  z
  S | dk    r+t          d|z  ¦  «        |t          d|z  ¦  «        z  dz  z
  S t          | |z  ¦  «        |t          | dz   |z  ¦  «        d| dz   z  z  t          | dz
  |z  ¦  «        d| dz
  z  z  z
  z  z
  S )Nr  rX   r
  rŒ   rJ   rH   r   )r]   r   r	   r!  s      r@   Ú	se_smallqz.TestCephes.test_mathieu_sem.<locals>.se_smallqb  sÅ   € à•”�s‘‰NˆAØ�AŠvˆvå˜1‘v”v  !¡¥c¨!¨A©#¡h¤h¡Ñ.Ð.Ø�a’�å˜1˜Q™3‘x”x !¥C¨¨!©¡H¤H¡*¨R¡-Ñ/Ð/õ ˜1˜Q™3‘x”x !¥S¨!¨A©#¨q©¡\¤\°1°a¸±c±7Ñ%;½cÀ1ÀQÁ3ÈÁ'¹l¼lÈAÈqÐQRÉsÉGÑ>TÑ%TÑ"UÑUÐUrC   r#  r$  r%  r&  r&  r'  r(  )	r   r<   Úmathieu_semr]   r}   r   r   rp   r   )r?   r.  r  r  s       r@   Útest_mathieu_semzTestCephes.test_mathieu_sem^  sð   € Ý•VÔ'¨¨!¨AÑ.Ô.¨yÑ9Ô9Ð9õ 
Œð
	Vð 
	Vñ 
Œð
	Võ ŒI�a˜ÑÔˆÝŒE�!•R”[  b¨"Ñ-Ô-Ð-Ô.ˆÝ�Ô*¨1¨Q¨Q¨Q¨t¨V¬9°a¸¸Q¸Q¸Q¸´iÀÑGÔGÈÔJØ!˜	 ! A A A d F¤)¨Q¨t°A°A°A¨v¬Y¸Ñ>Ô>Ø"¨ð	,ñ 	,ô 	,ð 	,ð 	,ð 	,rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S ©NrX   r   r<  )r   r<   Úmathieu_modcem1r>   s    r@   Útest_mathieu_modcem1zTestCephes.test_mathieu_modcem1t  ó'   € Ý•VÔ+¨A¨a°Ñ2Ô2°9Ñ=Ô=Ð=Ð=Ð=rC   c                 óh  — t          j        ddd¦  «         t          j        dd¦  «        d d …d d f         }t          j        t          j        ddd¦  «                 d d d …d f         }t          j        ddd¦  «        d d d d …f         }t          j        ||| ¦  «        d         }t          j        ||d¦  «        d          t          j        ||d¦  «        d         z  }t          j        |||¦  «        d          d|z  t          j        |||¦  «        d         z  z
  }t          ||d¬	¦  «         d S )
NrX   r   rH   rõ  rJ   r&  rL   rZ   rQ   )	r<   Úmathieu_modcem2r]   r   r   rp   Úlinspacer3  r   ©r?   r  r  r!  Úy1ÚfrÚy2s          r@   Útest_mathieu_modcem2zTestCephes.test_mathieu_modcem2w  s2  € ÝÔ˜q  1Ñ%Ô%Ð%õ ŒI�a˜‰OŒO˜A˜A˜A˜d 4˜KÔ(ˆÝŒE•"”+˜b ! RÑ(Ô(Ô)¨$¨q¨q¨q°¨+Ô6ˆÝŒK˜˜1˜aÑ Ô   d¨1¨1¨1 Ô-ˆåÔ# A q¨1¨"Ñ-Ô-¨aÔ0ˆåÔ$ Q¨¨1Ñ-Ô-¨aÔ0Ð0µ6Ô3IÈ!ÈQÐPQÑ3RÔ3RÐSTÔ3UÑUˆÝÔ% a¨¨AÑ.Ô.¨qÔ1Ð1Ø�"‘•VÔ+¨A¨q°!Ñ4Ô4°QÔ7Ñ7ñ8ˆõ 	˜˜B UÐ+Ñ+Ô+Ð+Ð+Ð+rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r2  )r   r<   Úmathieu_modsem1r>   s    r@   Útest_mathieu_modsem1zTestCephes.test_mathieu_modsem1‡  r5  rC   c                 ód  — t          j        ddd¦  «         t          j        dd¦  «        d d …d d f         }t          j        t          j        ddd¦  «                 d d d …d f         }t          j        ddd¦  «        d d d d …f         }t          j        ||| ¦  «        d         }t          j        ||d¦  «        d         t          j        ||d¦  «        d         z  }t          j        |||¦  «        d         d|z  t          j        |||¦  «        d         z  z
  }t          ||d¬	¦  «         d S )
NrX   rH   rõ  rJ   r&  r   rL   rZ   rQ   )	r<   Úmathieu_modsem2r]   r   r   rp   r8  r?  r   r9  s          r@   Útest_mathieu_modsem2zTestCephes.test_mathieu_modsem2Š  s)  € ÝÔ˜q  1Ñ%Ô%Ð%õ ŒI�a˜‰OŒO˜A˜A˜A˜d 4˜KÔ(ˆÝŒE•"”+˜b ! RÑ(Ô(Ô)¨$¨q¨q¨q°¨+Ô6ˆÝŒK˜˜1˜aÑ Ô   d¨1¨1¨1 Ô-ˆåÔ# A q¨1¨"Ñ-Ô-¨aÔ0ˆÝÔ# A q¨!Ñ,Ô,¨QÔ/µ&Ô2HÈÈAÈqÑ2QÔ2QÐRSÔ2TÑTˆÝÔ$ Q¨¨1Ñ-Ô-¨aÔ0Ø�"‘•VÔ+¨A¨q°!Ñ4Ô4°QÔ7Ñ7ñ8ˆå˜˜B UÐ+Ñ+Ô+Ð+Ð+Ð+rC   c                 ó¦  — t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j        ddd¦  «        t          j        t          j        f¦  «         t          t          j	        ddd¦  «        t          j        t          j        f¦  «         d S )Né'  r   gÍÌÌÌÌÌô?r  )
r   r<   r)  r]   r  r/  r3  r?  r7  rB  r>   s    r@   Útest_mathieu_overflowz TestCephes.test_mathieu_overflow˜  sH  € å•VÔ'¨¨q°#Ñ6Ô6½¼ÅÄÐ8HÑIÔIÐIÝ•VÔ'¨¨q°#Ñ6Ô6½¼ÅÄÐ8HÑIÔIÐIÝ•VÔ'¨¨s°CÑ8Ô8½2¼6Å2Ä6Ð:JÑKÔKÐKÝ•VÔ'¨¨s°CÑ8Ô8½2¼6Å2Ä6Ð:JÑKÔKÐKÝ•VÔ+¨E°3¸Ñ<Ô<½r¼vÅrÄvÐ>NÑOÔOÐOÝ•VÔ+¨E°3¸Ñ<Ô<½r¼vÅrÄvÐ>NÑOÔOÐOÝ•VÔ+¨E°3¸Ñ<Ô<½r¼vÅrÄvÐ>NÑOÔOÐOÝ•VÔ+¨E°3¸Ñ<Ô<½r¼vÅrÄvÐ>NÑOÔOÐOÐOÐOrC   c                 ó¶   — t          d¦  «        D ]H}t          j        ddd¦  «        }t          |d         dd¬¦  «         t          |d	         d
d¬¦  «         ŒId S )Né<   rJ   r#  rM   r   g.ød‰SÂ?rZ   rQ   rX   gà§GcÛì?ç-Cëâ6?)rv   r<   rB  r   )r?   rg   Úvs      r@   Útest_mathieu_ticket_1847z#TestCephes.test_mathieu_ticket_1847£  sr   € õ �r‘”ð 	Gð 	GˆAÝÔ& q¨#¨rÑ2Ô2ˆAå˜A˜aœDÐ":ÀÐGÑGÔGÐGÝ˜A˜aœDÐ":ÀÐFÑFÔFÐFÐFð		Gð 	GrC   c                 ó.   — t          j        d¦  «         d S r;   )r<   Úmodfresnelmr>   s    r@   Útest_modfresnelmzTestCephes.test_modfresnelm¬  ó   € ÝÔ˜1ÑÔÐÐÐrC   c                 ó.   — t          j        d¦  «         d S r;   )r<   Úmodfresnelpr>   s    r@   Útest_modfresnelpzTestCephes.test_modfresnelp¯  rO  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S rµ   )r   r<   Ú	modstruver>   s    r@   Útest_modstruvezTestCephes.test_modstruve²  rõ   rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S rï   )r   r<   Únbdtrr>   s    r@   Ú
test_nbdtrzTestCephes.test_nbdtrµ  r[  rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r¾   )r   r<   Únbdtrcr>   s    r@   Útest_nbdtrczTestCephes.test_nbdtrc¸  r˜   rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S rï   )r   r<   Únbdtrir>   s    r@   Útest_nbdtrizTestCephes.test_nbdtri»  r˜   rC   c                 ó2   — t          j        ddd¦  «         d S )NrX   rK   r†   )r<   Únbdtrikr>   s    r@   Útest_nbdtrikzTestCephes.test_nbdtrik¾  s   € ÝŒ�q˜˜BÑÔÐÐÐrC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r”   )r   r<   Únbdtrinr>   s    r@   Útest_nbdtrinzTestCephes.test_nbdtrinÁ  s&   € Ý•V”^ A a¨Ñ*Ô*¨3Ñ/Ô/Ð/Ð/Ð/rC   c                 óP   — t          t          j        dddd¦  «        d¦  «         d S rµ   )r   r<   Úncfdtrr>   s    r@   Útest_ncfdtrzTestCephes.test_ncfdtrÄ  r|  rC   c                 óÐ   — t          t          j        dddd¦  «        d¦  «         g d¢}t          j        ddd|¦  «        }t	          t          j        ddd|¦  «        |¦  «         d S )NrX   r   rž   )r†   rX   r  rJ   rŒ   r  )r   r<   Úncfdtrirf  r   )r?   Úfr.  s      r@   Útest_ncfdtrizTestCephes.test_ncfdtriÇ  sf   € Ý•V”^ A q¨!¨QÑ/Ô/°Ñ5Ô5Ð5ØˆMˆMˆÝŒM˜!˜Q  QÑ'Ô'ˆÝ�œ q¨!¨S°!Ñ4Ô4°aÑ8Ô8Ð8Ð8Ð8rC   zpncfdtr uses a Boost math implementation but ncfdtridfdinverts the less accurate cdflib implementation of ncfdtr.c                 ó†   — g d¢}t          j        d|dd¦  «        }t          t          j        d|dd¦  «        |¦  «         d S )N©rX   rJ   rŒ   rJ   r  r|   )r<   rf  r   Ú
ncfdtridfd)r?   r2  r.  s      r@   Útest_ncfdtridfdzTestCephes.test_ncfdtridfdÍ  sI   € ð ˆiˆiˆÝŒM˜!˜S $¨Ñ+Ô+ˆÝ�Ô)¨!¨Q°°bÑ9Ô9¸3Ñ?Ô?Ð?Ð?Ð?rC   zpncfdtr uses a Boost math implementation but ncfdtridfninverts the less accurate cdflib implementation of ncfdtr.c                 óŠ   — g d¢}t          j        |ddd¦  «        }t          t          j        |ddd¦  «        |d¬¦  «         d S )N)r  rX   rJ   rŒ   g     ˆÃ@rJ   r  r|   gñhãˆµøä>rQ   )r<   rf  r   Ú
ncfdtridfn)r?   r3  r.  s      r@   Útest_ncfdtridfnzTestCephes.test_ncfdtridfnØ  sP   € ð "Ð!Ð!ˆÝŒM˜#˜q $¨Ñ+Ô+ˆÝ�Ô)¨!¨Q°°bÑ9Ô9¸3ÀTÐJÑJÔJÐJÐJÐJrC   zoncfdtr uses a Boost math implementation but ncfdtrincinverts the less accurate cdflib implementation of ncfdtr.c                 ó†   — g d¢}t          j        dd|d¦  «        }t          t          j        dd|d¦  «        |¦  «         d S )N)r†   r  ç       @rJ   rŒ   r|   )r<   rf  r   Ú	ncfdtrinc)r?   Úncr.  s      r@   Útest_ncfdtrinczTestCephes.test_ncfdtrincã  sI   € ð ˆ_ˆ_ˆÝŒM˜!˜Q  BÑ'Ô'ˆÝ�Ô(¨¨A¨q°"Ñ5Ô5°rÑ:Ô:Ð:Ð:Ð:rC   c           	      óR  — t          t          j        ddd¦  «        d¦  «         t          t          j        ddd¦  «        d¦  «         t          t          j        t          j        dd¦  «        dd	d¬
¦  «         t          t	          j        t          j        dt          j        d¦  «        ¦  «        ¦  «         t          t          j        ddt          j        ¦  «        ddd¬
¦  «         t          t	          j        t          j        t          j        dd¦  «        ¦  «        ¦  «         t          t	          j        t          j        dt          j        d¦  «        ¦  «        ¦  «         t          t	          j        t          j        ddt          j        ¦  «        ¦  «        ¦  «         d S )NrX   r   r†   r  i   rÎ   rž   r‡   rI  r[   rt  ç      $@r±   )	r   r<   Únctdtrr   r]   r   r   r   r  r>   s    r@   Útest_nctdtrzTestCephes.test_nctdtrî  s2  € Ý•V”] 1 Q qÑ)Ô)¨#Ñ.Ô.Ð.Ý•V”] 1 e¨RÑ0Ô0°#Ñ6Ô6Ð6å�œ¥b¤f¨b°"Ñ5Ô5°sÀÈAÐNÑNÔNÐNÝ•”�œ r­2¬6°3Ñ7Ô7Ñ8Ô8Ñ9Ô9Ð9Ý�œ b¨"­b¬fÑ5Ô5°rÀÈ1ÐMÑMÔMÐMå•”�œ¥r¤v¨r°2Ñ6Ô6Ñ7Ô7Ñ8Ô8Ð8Ý•”�œ r­2¬6°2Ñ6Ô6Ñ7Ô7Ñ8Ô8Ð8Ý•”�œ r¨2­r¬vÑ6Ô6Ñ7Ô7Ñ8Ô8Ð8Ð8Ð8rC   c                 ó2   — t          j        ddd¦  «         d S )NrX   r†   r   )r<   Ú	nctdtridfr>   s    r@   Útest_nctdtridfzTestCephes.test_nctdtridfú  s   € ÝÔ˜˜3˜qÑ!Ô!Ð!Ð!Ð!rC   c                 ó2   — t          j        ddd¦  «         d S r`  )r<   Ú	nctdtrincr>   s    r@   Útest_nctdtrinczTestCephes.test_nctdtrincý  s   € ÝÔ˜˜1˜QÑÔÐÐÐrC   c                 ó2   — t          j        ddd¦  «         d S )Nr  rÞ   r†   )r<   Únctdtritr>   s    r@   Útest_nctdtritzTestCephes.test_nctdtrit   s   € ÝŒ˜˜3˜rÑ"Ô"Ð"Ð"Ð"rC   c                 óT   — t          t          j        ddd¦  «        ddd¬¦  «         d S )Nr†   rX   r‡   r±   r   r[   )r   r<   Únrdtrimnr>   s    r@   Útest_nrdtrimnzTestCephes.test_nrdtrimn  s-   € Ý�œ¨¨Q°Ñ2Ô2°C¸dÈÐKÑKÔKÐKÐKÐKrC   c                 óT   — t          t          j        ddd¦  «        ddd¬¦  «         d S )Nr†   rž   r   r[   )r   r<   Únrdtrisdr>   s    r@   Útest_nrdtrisdzTestCephes.test_nrdtrisd  s:   € Ý�œ¨¨C°Ñ4Ô4°cØ að	)ñ 	)ô 	)ð 	)ð 	)ð 	)rC   c                 ó4   — t          j        dddd¦  «         d S r`  )r<   Úobl_ang1r>   s    r@   Útest_obl_ang1zTestCephes.test_obl_ang1
  ó   € ÝŒ˜˜!˜A˜aÑ Ô Ð Ð Ð rC   c                 óš   — t          j        ddddd¦  «        }t          |d         ddd¬¦  «         t          |d         ddd¬¦  «         d S )NrX   r   r‡   rÏ   r[   rž   )r<   Úobl_ang1_cvr   )r?   Úresults     r@   Útest_obl_ang1_cvzTestCephes.test_obl_ang1_cv  sV   € ÝÔ# A a¨¨!¨AÑ.Ô.ˆÝ˜˜qœ	 3¨V¸!Ð<Ñ<Ô<Ð<Ý˜˜qœ	 3¨V¸!Ð<Ñ<Ô<Ð<Ð<Ð<rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S ©NrX   r   rt  )r   r<   Úobl_cvr>   s    r@   Útest_obl_cvzTestCephes.test_obl_cv  r˜   rC   c                 ó4   — t          j        dddd¦  «         d S r`  )r<   Úobl_rad1r>   s    r@   Útest_obl_rad1zTestCephes.test_obl_rad1  rŽ  rC   c                 ó6   — t          j        ddddd¦  «         d S r`  )r<   Úobl_rad1_cvr>   s    r@   Útest_obl_rad1_cvzTestCephes.test_obl_rad1_cv  ó!   € ÝÔ˜1˜Q˜q  1Ñ%Ô%Ð%Ð%Ð%rC   c                 ó4   — t          j        dddd¦  «         d S r`  )r<   Úobl_rad2r>   s    r@   Útest_obl_rad2zTestCephes.test_obl_rad2  rŽ  rC   c                 ó6   — t          j        ddddd¦  «         d S r`  )r<   Úobl_rad2_cvr>   s    r@   Útest_obl_rad2_cvzTestCephes.test_obl_rad2_cv  r�  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S )NrX   r   r,  )r   r<   Úpbdvr>   s    r@   Ú	test_pbdvzTestCephes.test_pbdv!  s$   € Ý•V”[  1Ñ%Ô% iÑ0Ô0Ð0Ð0Ð0rC   c                 ó0   — t          j        dd¦  «         d S r`  )r<   Úpbvvr>   s    r@   Ú	test_pbvvzTestCephes.test_pbvv$  ó   € ÝŒ�A�aÑÔÐÐÐrC   c                 ó0   — t          j        dd¦  «         d S r`  )r<   Úpbwar>   s    r@   Ú	test_pbwazTestCephes.test_pbwa'  rª  rC   c                 óÌ   — t          j        dd¦  «        }t          |t          j        d¦  «        dd¬¦  «         t          j        g d¢d¦  «        }t          |g d¢¦  «         d S )Nr   rX   rM   rÏ   r[   ©r   rX   rJ   )rX   rX   rX   )r<   Úpdtrr   r]   r   r   ©r?   Úvals     r@   Ú	test_pdtrzTestCephes.test_pdtr*  sa   € ÝŒk˜!˜QÑÔˆÝ˜�RœV B™ZœZ¨f¸1Ð=Ñ=Ô=Ð=åŒk˜)˜)˜) QÑ'Ô'ˆÝ˜3 	 	 	Ñ*Ô*Ð*Ð*Ð*rC   c                 óÒ   — t          j        dd¦  «        }t          |dt          j        d¦  «        z
  dd¬¦  «         t          j        g d¢d¦  «        }t          |g d¢¦  «         d S )	Nr   rX   rM   rÏ   r[   r¯  rž   )r   r   r   )r<   Úpdtrcr   r]   r   r   r±  s     r@   Ú
test_pdtrczTestCephes.test_pdtrc1  se   € ÝŒl˜1˜aÑ Ô ˆÝ˜˜Q¥¤¨¡¤™^°&¸qÐAÑAÔAÐAåŒl˜9˜9˜9 cÑ*Ô*ˆÝ˜3 	 	 	Ñ*Ô*Ð*Ð*Ð*rC   c                 óÂ   — t          j        ¦   «         5  d}t          j        d|t          ¦  «         t	          j        dd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nú-floating point number truncated to an integerrù  r†   )rú  rû  rü  rý  r<   Úpdtri©r?   Úmsgs     r@   Ú
test_pdtrizTestCephes.test_pdtri8  s¡   € ÝÔ$Ñ&Ô&ð 	"ð 	"ØAˆCÝÔ# H¨cµ>ÑBÔBÐBÝŒL˜˜SÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   ”3AÁAÁAc                 ó4   — t          j        dddd¦  «         d S r`  )r<   Úpro_ang1r>   s    r@   Útest_pro_ang1zTestCephes.test_pro_ang1?  rŽ  rC   c           	      ór   — t          t          j        ddddd¦  «        t          d¦  «        dd¬¦  «         d S )NrX   r   r  rÏ   r[   )r   r<   Úpro_ang1_cvr   r>   s    r@   Útest_pro_ang1_cvzTestCephes.test_pro_ang1_cvB  sG   € Ý�Ô*¨1¨a°°A°qÑ9Ô9½5ÀÑ;LÔ;LØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r”  )r   r<   Úpro_cvr>   s    r@   Útest_pro_cvzTestCephes.test_pro_cvF  r˜   rC   c                 ó4   — t          j        dddd¦  «         d S rd  )r<   Úpro_rad1r>   s    r@   Útest_pro_rad1zTestCephes.test_pro_rad1I  s   € ÝŒ˜˜!˜A˜cÑ"Ô"Ð"Ð"Ð"rC   c                 ó6   — t          j        ddddd¦  «         d S r`  )r<   Úpro_rad1_cvr>   s    r@   Útest_pro_rad1_cvzTestCephes.test_pro_rad1_cvL  r�  rC   c                 ó4   — t          j        dddd¦  «         d S r`  )r<   Úpro_rad2r>   s    r@   Útest_pro_rad2zTestCephes.test_pro_rad2O  rŽ  rC   c                 ó6   — t          j        ddddd¦  «         d S r`  )r<   Úpro_rad2_cvr>   s    r@   Útest_pro_rad2_cvzTestCephes.test_pro_rad2_cvR  r�  rC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úpsir>   s    r@   Útest_psizTestCephes.test_psiU  rÄ  rC   c                 óN   — t          t          j        ddd¦  «        d¦  «         d S r;   )r   r<   Úradianr>   s    r@   Útest_radianzTestCephes.test_radianX  s&   € Ý•V”] 1 Q qÑ)Ô)¨!Ñ,Ô,Ð,Ð,Ð,rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S rï   )r   r<   Úrgammar>   s    r@   Útest_rgammazTestCephes.test_rgamma[  rñ   rC   c                 óž  — t          t          j        d¦  «        d¦  «         t          t          j        d¦  «        d¦  «         t          t          j        d¦  «        d¦  «         t          t          j        d¦  «        d¦  «         t          t          j        d	¦  «        d¦  «         t          t          j        d
¦  «        d¦  «         d S )Nç333333@ç      @ç333333Àç      ÀgÍÌÌÌÌÌ@r  gÍÌÌÌÌÌÀg      Àç      @rL  )r   r<   Úroundr>   s    r@   Ú
test_roundzTestCephes.test_round^  s¤   € Ý•V”\ #Ñ&Ô& sÑ+Ô+Ð+Ý•V”\ $Ñ'Ô'¨Ñ-Ô-Ð-Ý•V”\ #Ñ&Ô& sÑ+Ô+Ð+Ý•V”\ $Ñ'Ô'¨Ñ-Ô-Ð-Ý•V”\ #Ñ&Ô& sÑ+Ô+Ð+Ý•V”\ $Ñ'Ô'¨Ñ-Ô-Ð-Ð-Ð-rC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úshichir>   s    r@   Útest_shichizTestCephes.test_shichif  r—  rC   c                 ó   — t          j        d¦  «         t          j        t          j        ¦  «        \  }}t	          |t          j        dz  dd¬¦  «         t	          |ddd¬¦  «         t          j        t          j         ¦  «        \  }}t	          |t          j         dz  dd¬¦  «         t          t          j        |¦  «        d¦  «         d S )NrX   r†   rÏ   r   r[   z cosine integral(-inf) is not nan)r<   Úsicir]   r   r   r   r   r   )r?   Úsrþ  s      r@   Ú	test_sicizTestCephes.test_sicii  s­   € ÝŒ�A‰ŒˆåŒ{�2œ6Ñ"Ô"‰ˆˆ1Ý˜�2œ5 3™;¨V¸!Ð<Ñ<Ô<Ð<Ý˜˜1 6°Ð2Ñ2Ô2Ð2åŒ{�BœF˜7Ñ#Ô#‰ˆˆ1Ý˜�BœE˜6 C™<¨f¸1Ð=Ñ=Ô=Ð=Ý•”˜‘”Ð?Ñ@Ô@Ð@Ð@Ð@rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S ©NéZ   r‡   )r   r<   Úsindgr>   s    r@   Ú
test_sindgzTestCephes.test_sindgt  ó"   € Ý•V”\ "Ñ%Ô% cÑ*Ô*Ð*Ð*Ð*rC   c                 óÈ   — t          t          j        dd¦  «        d¦  «         t          t	          j        t          j        dt          j        ¦  «        ¦  «        ¦  «         d S )NrX   r  çÍÌÌÌÌÌì?)r   r<   Úsmirnovr   r]   r   r  r>   s    r@   Útest_smirnovzTestCephes.test_smirnovw  sJ   € Ý•V”^ A bÑ)Ô)¨#Ñ.Ô.Ð.Ý•”�œ¨­"¬&Ñ1Ô1Ñ2Ô2Ñ3Ô3Ð3Ð3Ð3rC   c                 óT  — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t	          j        t          j        dt          j        ¦  «        ¦  «        ¦  «         d S )	NrX   r  rM   rJ   ç      è?ç      à¿rŒ   g      È¿)r   r<   Ú	_smirnovpr   r]   r   r  r>   s    r@   Útest_smirnovpzTestCephes.test_smirnovp{  sˆ   € Ý•VÔ% a¨Ñ,Ô,¨bÑ1Ô1Ð1Ý•VÔ% a¨Ñ.Ô.Ð0@ÑAÔAÐAÝ•VÔ% a¨Ñ.Ô.Ð0@ÑAÔAÐAÝ•”�Ô)¨!­R¬VÑ4Ô4Ñ5Ô5Ñ6Ô6Ð6Ð6Ð6rC   c                 ó  — t          t          j        dd¦  «        d¦  «         t          t	          j        t          j        dt          j        ¦  «        ¦  «        ¦  «         t	          j        dddd¬¦  «        }t          t          j        d|¦  «        dt          j	        d|¦  «        z
  dd¬	¦  «         t	          j        ddd
d¬¦  «        }t          t          j        d|¦  «        dt          j	        d|¦  «        z
  dd¬	¦  «         d S )NrX   r  r   r  T©ÚendpointrŒ   rÏ   r[   rÖ   rH   )
r   r<   Ú	_smirnovcr   r]   r   r  r8  r   rò  )r?   Úx10Úx4s      r@   Útest_smirnovczTestCephes.test_smirnovc�  sü   € Ý•VÔ% a¨Ñ+Ô+¨CÑ0Ô0Ð0Ý•”�Ô)¨!­B¬FÑ3Ô3Ñ4Ô4Ñ5Ô5Ð5ÝŒk˜!˜Q ¨TÐ2Ñ2Ô2ˆÝ�Ô(¨¨CÑ0Ô0°!µf´nÀQÈÑ6LÔ6LÑ2LØ#¨!ð	-ñ 	-ô 	-ð 	-åŒ[˜˜A˜q¨4Ð0Ñ0Ô0ˆÝ�Ô(¨¨BÑ/Ô/°µV´^ÀAÀrÑ5JÔ5JÑ1JØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c           	      óf  — t          t          j        dt          j        dd¦  «        ¦  «        ddd¬¦  «         t          t          j        dt          j        dd¦  «        ¦  «        ddd¬¦  «         t	          t          j        t          j        dt
          j        ¦  «        ¦  «        ¦  «         d S ©NrX   rK   rÏ   r   r[   ç333333ã?)r   r<   rò  Úsmirnovir   r]   r   r  r>   s    r@   Útest_smirnovizTestCephes.test_smirnovi‹  sž   € Ý�œ q­&¬/¸!¸SÑ*AÔ*AÑBÔBÀCØ#¨!ð	-ñ 	-ô 	-ð 	-å�œ q­&¬/¸!¸SÑ*AÔ*AÑBÔBÀCØ#¨!ð	-ñ 	-ô 	-ð 	-å•”�œ¨­2¬6Ñ2Ô2Ñ3Ô3Ñ4Ô4Ð4Ð4Ð4rC   c           	      óf  — t          t          j        dt          j        dd¦  «        ¦  «        ddd¬¦  «         t          t          j        dt          j        dd¦  «        ¦  «        ddd¬¦  «         t	          t          j        t          j        dt
          j        ¦  «        ¦  «        ¦  «         d S r  )r   r<   rü  Ú
_smirnovcir   r]   r   r  r>   s    r@   Útest_smirnovcizTestCephes.test_smirnovci’  s£   € Ý�Ô(¨­FÔ,=¸aÀÑ,EÔ,EÑFÔFÈØ#¨!ð	-ñ 	-ô 	-ð 	-å�Ô(¨­FÔ,=¸aÀÑ,EÔ,EÑFÔFÈØ#¨!ð	-ñ 	-ô 	-ð 	-å•”�Ô*¨1­R¬VÑ4Ô4Ñ5Ô5Ñ6Ô6Ð6Ð6Ð6rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S r¾   )r   r<   Úspencer>   s    r@   Útest_spencezTestCephes.test_spence™  rñ   rC   c                 óä   — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        ddd¬¦  «         t          t          j        dd¦  «        ddd¬¦  «         d S )	NrX   r   r†   rõ  rÏ   r[   rJ   gMo˜¸þFë?)r   r<   Ústdtrr   r>   s    r@   Ú
test_stdtrzTestCephes.test_stdtrœ  sj   € Ý•V”\ ! AÑ&Ô& sÑ+Ô+Ð+Ý�œ Q¨Ñ*Ô*¨D°vÀAÐFÑFÔFÐFÝ�œ Q¨Ñ*Ô*¨NÀÈaÐPÑPÔPÐPÐPÐPrC   c                 ó0   — t          j        dd¦  «         d S )Nçffffffæ?rX   )r<   Ústdtridfr>   s    r@   Útest_stdtridfzTestCephes.test_stdtridf¡  s   € ÝŒ˜˜AÑÔÐÐÐrC   c                 ó0   — t          j        dd¦  «         d S )NrX   r  )r<   Ústdtritr>   s    r@   Útest_stdtritzTestCephes.test_stdtrit¤  s   € ÝŒ�q˜ÑÔÐÐÐrC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S r�   )r   r<   Ústruver>   s    r@   Útest_struvezTestCephes.test_struve§  r¼   rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S )NrÎ   r‡   )r   r<   Útandgr>   s    r@   Ú
test_tandgzTestCephes.test_tandgª  rï  rC   c                 óR   — t          t          j        dd¦  «        ddd¬¦  «         d S )NrX   r‡   rÏ   r   r[   )r   r<   Útklmbdar>   s    r@   Útest_tklmbdazTestCephes.test_tklmbda­  s+   € Ý�œ q¨!Ñ,Ô,¨c¸ÀQÐGÑGÔGÐGÐGÐGrC   c                 ó.   — t          j        d¦  «         d S rt   )r<   Úy0r>   s    r@   Útest_y0zTestCephes.test_y0°  rÀ  rC   c                 ó.   — t          j        d¦  «         d S rt   )r<   r:  r>   s    r@   Útest_y1zTestCephes.test_y1³  rÀ  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úynr>   s    r@   Útest_ynzTestCephes.test_yn¶  rÝ  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úyvr>   s    r@   Útest_yvzTestCephes.test_yv¹  rÝ  rC   c                 ó0   — t          j        dd¦  «         d S rt   )r<   Úyver>   s    r@   Útest_yvezTestCephes.test_yve¼  ró  rC   c                 ó  — t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd	¦  «        t          dd
¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        t          dd¦  «        g}t          dd¦  «        t          dd ¦  «        t          d!d"¦  «        t          d#d$¦  «        t          d%d&¦  «        t          d'd(¦  «        t          d)d*¦  «        t          d+d,¦  «        t          d-d.¦  «        t          d/d¦  «        t          d0d1¦  «        t          d2d3¦  «        t          d4d5¦  «        t          d6d7¦  «        t          d8d9¦  «        t          d:d:¦  «        g}t          t          j        ||d;¬<¦  «         d S )=Ngš™™™™�ƒ@g+û®þ·Ð¿çš™™™™™Ù¿rÝ  r  rt  rÝ   r‡   g      "Àg      "@g†4×µ/Y¾gï8EGrùñ?rß  gffffff@iËÿÿÿgš™™™™>@rž   g|ò°Pkš¿?r  rX   iêÿÿÿrõ  r  iäÿÿÿé   ißÿÿÿg     jø@ç  �Ä¼ÖBg¥ï0"¢b™¾gpØªO#žM?g¡MF¦>—Æ?g5-¦®û•¿g`ø×èÙÎ?g±	SÇ+¯?g6UÎÖí€Ó?gÇ—þë¦Ê¿gjD{�?/,Gg`Ó 0Ggú!Ž^†¯?g¬nF5o°{¿gIÛþ\YÙ?g7áf¼8¾g…oC9	µ?gÿyh…¨¿gÈEÖb’ºr?g�Žÿ{€¿gÝ.Å
ýë?ga~gT-s?gÉ¤Å,P&ª?g¸|¸öÿb¿gÞ—ØY3š¿gÍ!Ø‘-�@gõi$‚bgáäÛÀhúgy(ÂV@ß^úgÒ»„ð©Ç>g½¶„ð©Ç>gx\±¼©hé<rP   rQ   )r  r3   r<   Úwofz)r?   r!  Úws      r@   Ú	test_wofzzTestCephes.test_wofz¿  s;  € Ý�U˜8Ñ$Ô$¥g¨d°2Ñ&6Ô&6½ÀÀB¹¼Ý�S˜‰_Œ_�g c¨#Ñ.Ô.µ¸¸B±´ÝÐ% fÑ-Ô-­w°s¸3Ñ/?Ô/?Ý�S˜ÑÔ¥¨¨GÑ 4Ô 4Ý�R˜‰]Œ]�G C¨™OœO­W°Q°s©^¬^Ý�R˜‰_Œ_�g c¨#Ñ.Ô.µ¸¸TÑ0BÔ0Bðˆõ ÐFØFñHô HåÐGØIñKô KåÐGØHñJô JåÐHØIñKô KåÐFØFñHô HåÐGØIñKô KåÐDØGñIô IåÐHØIñKô KåÐHØIñKô KåÐJØñô åÐHØGñIô IåÐHØGñIô IåÐFØFñHô HåÐFØFñHô HåÐFØFñHô HåÐFØFñHô Hð?!
ˆõD 	�&œ+ q¨!°%Ð8Ñ8Ô8Ð8Ð8Ð8rC   N)¹Ú__name__Ú
__module__Ú__qualname__rA   rF   rk   rq   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þ   r  r  r  r  r  r  r  ÚpytestÚmarkÚxfailr$  r(  r+  r/  r4  r6  r9  r>  rC  rF  rI  rQ  rT  rW  rZ  r^  rb  rf  ri  rm  rq  rt  rx  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Ö  rÙ  rÜ  rà  rã  ræ  ré  rì  rï  rò  r÷  rÿ  r  r  Úparametrizer  r  r  r*  r0  r4  r=  r@  rC  rF  rK  rN  rR  rU  rX  r[  r^  ra  rd  rg  rk  ro  rr  rw  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×  rÚ  râ  rå  ré  rî  ró  rø  rÿ  r  r  r
  r  r  r  r  r  r  r   r"  r%  r(  r+  r2  © rC   r@   r9   r9   ;   sÊ  € € € € € ðð ð ðð ð ð2ð 2ð 2ð.2ð 2ð 2ð*ð *ð *ð.Gð Gð Gð,/ð /ð /ð0ð 0ð 0ð0ð 0ð 0ð/ð /ð /ðð ð ð(ð (ð (ð)ð )ð )ð(ð (ð (ð)ð )ð )ð3ð 3ð 3ð@ð @ð @ð,ð ,ð ,ð-ð -ð -ð-ð -ð -ð1ð 1ð 1ð*ð *ð *ð*ð *ð *ðDð Dð DðAð Að AðRð Rð Rð2Nð Nð Nð
+ð +ð +ð0ð 0ð 0ðð ð ð)ð )ð )ð0ð 0ð 0ð)ð )ð )ð:ð :ð :ð*ð *ð *ðCð Cð Cð)ð )ð )ð3ð 3ð 3ðNð Nð Nð& „[×ÒÐMÐÑNÔNðFð Fñ OÔNðFð($ð $ð $ð$ð $ð $ð@ð @ð @ðYð Yð Yð
4ð 4ð 4ð1ð 1ð 1ð2ð 2ð 2ð+ð +ð +ð3ð 3ð 3ðð ð ð=ð =ð =ð-ð -ð -ð2ð 2ð 2ð.ð .ð .ð/ð /ð /ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ðð ð ð1ð 1ð 1ð'ð 'ð 'ð(ð (ð (ð'ð 'ð 'ð(ð (ð (ðð ð ðð ð ðð ð ðð ð ð1ð 1ð 1ð1ð 1ð 1ð1ð 1ð 1ð.ð .ð .ð)ð )ð )ð*ð *ð *ð'ð 'ð 'ð'ð 'ð 'ð)ð )ð )ð)ð )ð )ð*ð *ð *ðð ð ðð ð ðð ð ðð ð ðð ð ð)ð )ð )ðð ð ðð ð ðð ð ðð ð ð2ð 2ð 2ð0ð 0ð 0ð/ð /ð /ð.ð .ð .ð4ð 4ð 4ðð ð ðð ð ð,ð ,ð ,ðFð Fð Fð(-ð -ð -ð3ð 3ð 3ð „[×ÒØð	.ð 	.ð 	.ñô ð,ð ,ñô ð,ð3ð 3ð 3ð „[×ÒØð	,ð 	,ð 	,ñô ð,ð ,ñô ð,ð,ð ,ð ,ð2,ð ,ð ,ð,>ð >ð >ð,ð ,ð ,ð >ð >ð >ð,ð ,ð ,ð	Pð 	Pð 	PðGð Gð Gðð ð ðð ð ð0ð 0ð 0ð.ð .ð .ð/ð /ð /ð/ð /ð /ð ð  ð  ð0ð 0ð 0ð1ð 1ð 1ð9ð 9ð 9ð „[×ÒðIð ñ ô ð@ð @ñô ð@ð
 „[×ÒðIð ñ ô ðKð Kñô ðKð
 „[×ÒðIð ñ ô ð;ð ;ñô ð;ð

9ð 
9ð 
9ð"ð "ð "ð ð  ð  ð#ð #ð #ðLð Lð Lð)ð )ð )ð!ð !ð !ð=ð =ð =ð
/ð /ð /ð!ð !ð !ð&ð &ð &ð!ð !ð !ð&ð &ð &ð1ð 1ð 1ðð ð ðð ð ð+ð +ð +ð+ð +ð +ð"ð "ð "ð!ð !ð !ð-ð -ð -ð/ð /ð /ð#ð #ð #ð&ð &ð &ð!ð !ð !ð&ð &ð &ðð ð ð-ð -ð -ð+ð +ð +ð.ð .ð .ðð ð ð	Að 	Að 	Að+ð +ð +ð4ð 4ð 4ð7ð 7ð 7ð-ð -ð -ð5ð 5ð 5ð7ð 7ð 7ð+ð +ð +ðQð Qð Qð
ð ð ðð ð ð-ð -ð -ð+ð +ð +ðHð Hð Hðð ð ðð ð ðð ð ðð ð ðð ð ð*9ð *9ð *9ð *9ð *9rC   r9   c                   ó²   — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    d¦  «        d„ ¦   «         Z
ej         	                    d¦  «        d„ ¦   «         ZdS )	ÚTestAiryc                 óJ  — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         t          j        d¦  «        }t          |t          g d	¢¦  «        dd¬¦  «         d S )
Nç®Gáz®ï?)g*÷é¢…Á?gTk'kP‹Ä¿gñe¢©+ó?gýyC¯ytí?ç+i¤)+P>r   r[   g=
×£p=Ú?)g‚'Ý$'Ð?ge«ªÎ¿g›‰LÐÑé?gæ
ŒHVVà?g
×£p=
×¿)gl@ÆÔD|Ü?gVƒ¬~×­Í¿gU–¬äÂÜ?g¨3{É”ÉÞ?)r   r=   r   r   r  s     r@   rA   zTestAiry.test_airyí  sÈ   € õ ŒL˜ÑÔˆÝ˜�5Ð!RÐ!RÐ!RÑSÔSØ#¨!ð	-ñ 	-ô 	-ð 	-åŒL˜ÑÔˆÝ˜�5Ð!QÐ!QÐ!QÑRÔRØ#¨!ð	-ñ 	-ô 	-ð 	-åŒL˜ÑÔˆÝ˜�5Ð!OÐ!OÐ!OÑPÔPØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ó´  — t          j        d¦  «        }t          j        d¦  «        }d gdz  }t          d¦  «        D ]-}||         t	          dt          d¦  «        z  ¦  «        z  ||<   Œ.t          dd¦  «        D ]H}||         t	          t          t          dt          d¦  «        z  ¦  «        ¦  «         ¦  «        z  ||<   ŒIt          ||dd¬¦  «         d S )Nç{®Gáz„?rH   rJ   gNè´�N{?çTäqs*¹>r   r[   )	r   rE   r=   rv   r   r   Úabsr   r   )r?   ÚaÚbÚb1rf   s        r@   rF   zTestAiry.test_airyeú  s×   € ÝŒM˜$ÑÔˆÝŒL˜ÑÔˆØˆV�A‰XˆÝ�q‘”ð 	6ð 	6ˆAØ�a”D�˜\­$¨t©*¬*Ñ4Ñ5Ô5Ñ5ˆBˆq‰EˆEÝ�q˜‘”ð 	Bð 	BˆAØ�a”D��c¥$ |µD¸±J´JÑ'>Ñ"?Ô"?Ñ@Ô@Ð@ÑAÔAÑAˆBˆq‰EˆEÝ˜˜2 F°Ð3Ñ3Ô3Ð3Ð3Ð3rC   c                 ó@  — t          j        d¦  «        }t          ddg¦  «        t          ddg¦  «        t          ddg¦  «        t          dd	g¦  «        f}t          ||d
d¬¦  «         t          j        d¦  «        }t          |d         t          g d¢¦  «        dd¬¦  «         t          |d         t          g d¢¦  «        dd¬¦  «         t          |d         t          g d¢¦  «        dd¬¦  «         t          |d         t          g d¢¦  «        dd¬¦  «         d S )NrJ   g‘†lƒ‡Çò¿goe‰Î2+
Àg(õá0[Àg Xü*éJÀgõUfÏÝ¿gË°zU¡`Ù?g4Ðc1=Cã?gó¿CîuTè¿ça2U0*©#?r   r[   rÖ   )g²&„‡Çò¿g(Æ.÷2+
Àg²óÕð¬RÀg}þ`·í­Àg¯%ëÍ�Àçpé~°=rX   )g7Ç;1[ÀgÛeì*éJÀg”Vw±Àg˜L¸¦ Àg<€É3¾ÂÀçLÎaã§�ä=)gÌNÏÝ¿g3%IQ¡`Ù?gZy¡†ÎŒ×¿gÊ€1‹1^Ö?gô3þ3t�Õ¿rŒ   )gq«M0=Cã?g7ëïuTè¿g\ÜG`¡Èê?gþpâ�žvì¿g$ß.mÂí?)r   Úbi_zerosr   r   )r?   ÚbiÚbias      r@   Útest_bi_zeroszTestAiry.test_bi_zeros  sŽ  € ÝÔ˜aÑ Ô ˆÝ�k :Ð.Ñ/Ô/Ý�k ;Ð/Ñ0Ô0Ý�k :Ð.Ñ/Ô/Ý�j +Ð.Ñ/Ô/ð1ˆõ 	˜˜C f°1Ð5Ñ5Ô5Ð5åÔ˜aÑ Ô ˆÝ˜˜1œ�uð &:ð &:ð &:ñ  ;ô  ;ð
 %¨1ð	.ñ 	.ô 	.ð 	.õ 	˜˜1œ�uð &:ð &:ð &:ñ  ;ô  ;ð
 %¨1ð	.ñ 	.ô 	.ð 	.õ 	˜˜1œ�uð &:ð &:ð &:ñ  ;ô  ;ð
 %¨1ð	.ñ 	.ô 	.ð 	.õ 	˜˜1œ�uð &9ð &9ð &9ñ  :ô  :ð
 %¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c           	      óÌ   — t          j        d¦  «        }t          |t          dg¦  «        t          dg¦  «        t          dg¦  «        t          dg¦  «        fdd¬¦  «         d S )	NrX   gÒác¨q´Àg!·xÛùLð¿gMóŽSt$á?g ‘~û:pæ?rH  r   r[   )r   Úai_zerosr   r   )r?   Úais     r@   Útest_ai_zeroszTestAiry.test_ai_zeros)  sp   € ÝÔ˜aÑ Ô ˆÝ˜�U K =Ñ1Ô1Ý" K =Ñ1Ô1Ý" F 8™_œ_Ý" F 8™_œ_ð.ð $¨!ð		-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   rÖ   c                 óú  — t          j        d¦  «        \  }}}}t          j        |¦  «        \  }}}}t          j        |¦  «        \  }}	}}dt          |¦  «        dz  z  }
t          |¦  «        dz  }t	          ||d¬¦  «         t	          ||d¬¦  «         t	          ||
z  ddd¬¦  «         t	          |	|z  ddd¬¦  «         t	          |d d…         g d	¢d¬¦  «         t	          |d d…         g d
¢d¬¦  «         d S )Nr1  rX   r  rZ   rQ   r   r[   rN   )gÞu¨q´Àg‹qHkZÀg4µ¢Àg™é9Î–%ÀgB™~ôÊÆÀgÌL„ä˜"À)g ªæÛùLð¿gQö“Oü	ÀgMQnÈGÀg3þ:§Àg)Ê}Àg¥æîú À)r   rP  r=   rC  r   )r?   r!  ÚzpÚai_zpxÚaip_zxÚai_zÚaip_zÚ_Úai_zpÚaip_zpÚai_envelopeÚaip_envelopes               r@   Útest_ai_zeros_bigzTestAiry.test_ai_zeros_big1  sP  € å 'Ô 0°Ñ 7Ô 7Ñˆˆ2ˆv�vÝ#œL¨™OœOÑˆˆe�Q˜Ý%œl¨2Ñ.Ô.Ñˆˆv�q˜!à�˜A™œ ™Ñ&ˆÝ˜2‘w”w ‘ˆõ 	˜ ¨EÐ2Ñ2Ô2Ð2Ý˜ ¨EÐ2Ñ2Ô2Ð2õ 	˜˜[Ñ(¨!°%¸aÐ@Ñ@Ô@Ð@Ý˜˜|Ñ+¨Q°UÀÐCÑCÔCÐCõ 	˜˜"˜1˜"œð:ð :ð :Ø@Eð	Gñ 	Gô 	Gð 	Gõ 	˜˜2˜A˜2œð:ð :ð :Ø@Eð	Gñ 	Gô 	Gð 	Gð 	Gð 	GrC   c                 óú  — t          j        d¦  «        \  }}}}t          j        |¦  «        \  }}}}t          j        |¦  «        \  }}}}	dt          |¦  «        dz  z  }
t          |¦  «        dz  }t	          ||d¬¦  «         t	          ||d¬¦  «         t	          ||
z  ddd¬¦  «         t	          |	|z  ddd¬¦  «         t	          |d d…         g d	¢d¬¦  «         t	          |d d…         g d
¢d¬¦  «         d S )Nr1  rX   r  rZ   rQ   r   r[   rN   )gx&„‡Çò¿gg†-÷2+
ÀgÁšÖð¬RÀggÑ`·í­Àgu•%ëÍ�Àg{¸àû À)g K;1[ÀgÂáì*éJÀg¬¯Vw±Àg<w¸¦ Àgd
Ê3¾ÂÀg/{Ô
"À)r   rK  r=   rC  r   )r?   r!  rT  Úbi_zpxÚbip_zxrY  Úbi_zÚbip_zÚbi_zpÚbip_zpÚbi_envelopeÚbip_envelopes               r@   Útest_bi_zeros_bigzTestAiry.test_bi_zeros_bigJ  sP  € å 'Ô 0°Ñ 7Ô 7Ñˆˆ2ˆv�vÝ#œL¨™OœOÑˆˆ1ˆd�EÝ%œl¨2Ñ.Ô.Ñˆˆ1ˆe�Và�˜A™œ ™Ñ&ˆÝ˜2‘w”w ‘ˆõ 	˜ ¨EÐ2Ñ2Ô2Ð2Ý˜ ¨EÐ2Ñ2Ô2Ð2õ 	˜˜[Ñ(¨!°%¸aÐ@Ñ@Ô@Ð@Ý˜˜|Ñ+¨Q°UÀÐCÑCÔCÐCõ 	˜˜"˜1˜"œð:ð :ð :Ø@Eð	Gñ 	Gô 	Gð 	Gõ 	˜˜2˜A˜2œð:ð :ð :Ø@Eð	Gñ 	Gô 	Gð 	Gð 	Gð 	GrC   N)r3  r4  r5  rA   rF   rN  rR  r6  r7  Ú	fail_slowr^  rh  r:  rC   r@   r<  r<  ì  s±   € € € € € ð-ð -ð -ð4ð 4ð 4ð#.ð #.ð #.ðJ-ð -ð -ð „[×Ò˜1ÑÔðGð Gñ ÔðGð0 „[×Ò˜1ÑÔðGð Gñ ÔðGð Gð GrC   r<  c                   ó   — e Zd Zd„ ZdS )ÚTestAssocLaguerrec                 óø   — t          j        dd¦  «        }t          j        ddd¦  «        }t          | |d¦  «        dd¬¦  «         t          j        ddd¦  «        }t          | |d¦  «        dd¬¦  «         d S )Nr  rX   rÞ   r?  r   r[   )r   ÚgenlaguerreÚassoc_laguerrer   )r?   Úa1Úa2s      r@   Útest_assoc_laguerrez%TestAssocLaguerre.test_assoc_laguerree  s€   € ÝÔ   AÑ&Ô&ˆÝÔ# B r¨!Ñ,Ô,ˆÝ˜˜B˜B˜r™FœF¨°aÐ8Ñ8Ô8Ð8ÝÔ# A b¨Ñ+Ô+ˆÝ˜˜B˜B˜q™EœE¨°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   N)r3  r4  r5  rq  r:  rC   r@   rk  rk  d  s#   € € € € € ð8ð 8ð 8ð 8ð 8rC   rk  c                   ó   — e Zd Zd„ ZdS )ÚTestBesselpolyc                 ó   — d S ©Nr:  r>   s    r@   r¯   zTestBesselpoly.test_besselpolyn  ó   € ØˆrC   N)r3  r4  r5  r¯   r:  rC   r@   rs  rs  m  s#   € € € € € ðð ð ð ð rC   rs  c                   óz   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )Ú
TestKelvinc                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   gŠ�®Tï?çiUMuï>r   r[   )r   rŸ   r   )r?   Úmbeis     r@   r    zTestKelvin.test_beis  s-   € ÝŒ{˜1‰~Œ~ˆå˜Ð0°vÀAÐFÑFÔFÐFÐFÐFrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   gDïî,Xí?rz  r   r[   )r   r£   r   )r?   Úmbeips     r@   r¤   zTestKelvin.test_beipx  s-   € Ý”˜Q‘”ˆå˜Ð2¸ÀaÐHÑHÔHÐHÐHÐHrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   g¦PAØ4è?rz  r   r[   )r   r¨   r   )r?   Úmbers     r@   r©   zTestKelvin.test_ber}  s-   € ÝŒ{˜1‰~Œ~ˆå˜Ð1¸ÀQÐGÑGÔGÐGÐGÐGrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   gß×iiŽß¿rz  r   r[   )r   r«   r   )r?   Úmberps     r@   r¬   zTestKelvin.test_berp‚  s-   € Ý”˜Q‘”ˆå˜Ð3¸&ÀqÐIÑIÔIÐIÐIÐIrC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   ©g&jjÙ@gðŠà+é"@g(›r…wÉ+@g¡„™¶U2@gŸ`<ƒÆ6@rH  r   r[   )r   Ú	bei_zerosr   r   )r?   rL  s     r@   Útest_bei_zeroszTestKelvin.test_bei_zeros‡  sW   € åÔ˜qÑ!Ô!ˆÝ˜�Eð #-ð #-ð #-ñ .ô .ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   )g¼€yWo.@gâ•²£Ý� @g× �Âú{)@g¡K¾„11@g›Wc"¤5@r?  r   r[   )r   Ú
beip_zerosr   r   )r?   Úbips     r@   Útest_beip_zeroszTestKelvin.test_beip_zeros‘  sW   € ÝÔ  Ñ#Ô#ˆÝ˜�Uð $8ð $8ð $8ñ 9ô 9ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   ©gÑ\§‘–Ê@gø6ýÙ�ô@gÓŸýHY'@g>"¦D0@ggaO;ü�4@rH  r   r[   )r   Ú	ber_zerosr   r   )r?   r¨   s     r@   Útest_ber_zeroszTestKelvin.test_ber_zerosš  óW   € ÝÔ Ñ"Ô"ˆÝ˜�Uð $.ð $.ð $.ñ /ô /ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   ©gÖ ˜£'@g»ÕsÒû%@gÇF ^×ï-@g´vÛ…æj3@gÌîÉÃBÝ7@rH  r   r[   )r   Ú
berp_zerosr   r   )r?   Úbrps     r@   Útest_berp_zeroszTestKelvin.test_berp_zeros£  sW   € ÝÔ  Ñ#Ô#ˆÝ˜�Uð $.ð $.ð $.ñ /ô /ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c           
      ó¬  — t          j        d¦  «        }t          |t          j        d¦  «        t          j        d¦  «        dz  z   t          j        d¦  «        t          j        d¦  «        dz  z   t          j        d¦  «        t          j        d¦  «        dz  z   t          j	        d¦  «        t          j
        d¦  «        dz  z   fdd¬¦  «         d S )NrJ   r  r?  r   r[   )r   rØ  r   r¨   rŸ   rÒ  rÌ  r«   r£   rÕ  rÏ  )r?   Úmkelvs     r@   rÙ  zTestKelvin.test_kelvin¬  s´   € Ý”˜qÑ!Ô!ˆÝ˜¥¤¨A¡¤µ´¸Q±´ÀÑ1BÑ BÝ '¤¨A¡¤µ´¸Q±´ÀÑ1BÑ BÝ '¤¨Q¡¤µ'´,¸q±/´/À"Ñ2DÑ DÝ '¤¨Q¡¤µ'´,¸q±/´/À"Ñ2DÑ Dð Fð $¨!ð		-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   g¬øàÓ>èÉ¿rz  r   r[   )r   rÌ  r   )r?   Úmkeis     r@   rÍ  zTestKelvin.test_kei´  s-   € ÝŒ{˜1‰~Œ~ˆÝ˜Ð2¸ÀaÐHÑHÔHÐHÐHÐHrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   grß@dª"Ì?rz  r   r[   )r   rÏ  r   )r?   Úmkeips     r@   rÐ  zTestKelvin.test_keip¸  s-   € Ý”˜Q‘”ˆÝ˜Ð2¸ÀaÐHÑHÔHÐHÐHÐHrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   gÜ™þU¥¿rz  r   r[   )r   rÒ  r   )r?   Úmkers     r@   rÓ  zTestKelvin.test_ker¼  s-   € ÝŒ{˜1‰~Œ~ˆÝ˜Ð3¸&ÀqÐIÑIÔIÐIÐIÐIrC   c                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrJ   gº^.n3J»¿rz  r   r[   )r   rÕ  r   )r?   Úmkerps     r@   rÖ  zTestKelvin.test_kerpÀ  s-   € Ý”˜Q‘”ˆÝ˜Ð3¸&ÀqÐIÑIÔIÐIÐIÐIrC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   ©gþE�>Q@gB•š=° @gÆPN´«�)@gðmú³91@g
�×Ø%ª5@rH  r   r[   )r   Ú	kei_zerosr   r   )r?   rÌ  s     r@   Útest_kei_zeroszTestKelvin.test_kei_zerosÄ  rŽ  rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   ©gÑW�f,º@gÉå?¤ßÎ"@g�FZ*o·+@gôOp±¢N2@gE¦aøÀ6@rH  r   r[   )r   Ú
keip_zerosr   r   )r?   rÏ  s     r@   Útest_keip_zeroszTestKelvin.test_keip_zerosÍ  óW   € ÝÔ! !Ñ$Ô$ˆÝ˜�eð %/ð %/ð %/ñ 0ô 0ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ód  — t          j        d¦  «        }|\  }}}}}}}}	t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d	¢¦  «        dd¬¦  «         t          |t          g d
¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          |	t          g d¢¦  «        dd¬¦  «         d S )NrÖ   r‹  rH  r   r[   rƒ  )ç¬â�Ì#û?çQ½5°U‚@çq8ó«9 %@çol•`.@g‹O0žq3@rŸ  r�  )guÍä›m.@gŽÙëÝ� @gësµû{)@g¶ä „11@gN(DÀ!¤5@©gúòì£S@g8ó«9@°@gÝ^Ò­C'@g¾¤1ZG0@g+¤ü¤Ú‡4@r£  )r   Úkelvin_zerosr   r   )
r?   ÚtmpÚberzÚbeizÚkerzÚkeizÚberpzÚbeipzÚkerpzÚkeipzs
             r@   Útest_kelvin_zeroszTestKelvin.test_kelvin_zeros×  s  € ÝÔ" 1Ñ%Ô%ˆØ=@Ñ:ˆˆd�D˜$  u¨e°UÝ˜�eð %/ð %/ð %/ñ 0ô 0ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�eð %/ð %/ð %/ñ 0ô 0ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�eð %/ð %/ð %/ñ 0ô 0ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�eð %/ð %/ð %/ñ 0ô 0ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�uð &0ð &0ð &0ñ  1ô  1ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�uð &0ð &0ð &0ñ  1ô  1ð $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�uð &0ð &0ð &0ñ  1ô  1ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�uð &0ð &0ð &0ñ  1ô  1ð
 $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   )r¨  r©  rª  r«  gD£;ˆ�q3@rH  r   r[   )r   Ú	ker_zerosr   r   )r?   rÒ  s     r@   Útest_ker_zeroszTestKelvin.test_ker_zeros  rŽ  rC   c                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   r¬  rH  r   r[   )r   Ú
kerp_zerosr   r   )r?   rÕ  s     r@   Útest_kerp_zeroszTestKelvin.test_kerp_zeros  r¦  rC   N)r3  r4  r5  r    r¤   r©   r¬   r…  r‰  r�  r“  rÙ  rÍ  rÐ  rÓ  rÖ  r¡  r¥  r·  rº  r½  r:  rC   r@   rx  rx  r  s;  € € € € € ðGð Gð Gð
Ið Ið Ið
Hð Hð Hð
Jð Jð Jð
-ð -ð -ð-ð -ð -ð-ð -ð -ð-ð -ð -ð-ð -ð -ðIð Ið IðIð Ið IðJð Jð JðJð Jð Jð-ð -ð -ð-ð -ð -ð4-ð 4-ð 4-ðl-ð -ð -ð-ð -ð -ð -ð -rC   rx  c                   ó   — e Zd Zd„ ZdS )ÚTestBernoullic                 ór   — t          j        d¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )NrÖ   )r‡   rö  g-!ôlVÅ?rž   g±áé•²¡¿rž   rH  r   r[   )r   Ú	bernoullir   r   )r?   Úbrns     r@   Útest_bernoullizTestBernoulli.test_bernoulli!  sW   € ÝÔ Ñ"Ô"ˆÝ˜�Uð $,ð $,ð $,ñ -ô -ð $¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   N)r3  r4  r5  rÃ  r:  rC   r@   r¿  r¿     s#   € € € € € ð-ð -ð -ð -ð -rC   r¿  c                   ó$   — e Zd ZdZd„ Zd„ Zd„ ZdS )ÚTestBetaz
    Test beta and betaln.
    c                 óÌ  — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        t          j        d¦  «        ¦  «         t          t          j        dd¦  «        ddd	¬
¦  «         t          j        dd¦  «        }t          j        d¦  «        t          j        d¦  «        z  t          j        d¦  «        z  }t          ||d¬¦  «         d S )NrX   r‡   ç33333YÀç¬÷N’~hçßà“©‚¡?é«   g6.8@rP   r   r(  rJ   rH   rN   rQ   )r   r   Úbetar   rB  )r?   ÚbetÚbetgs      r@   Ú	test_betazTestBeta.test_beta1  sÌ   € Ý•W”\ ! QÑ'Ô'¨Ñ-Ô-Ð-Ý�œ V¨VÑ4Ô4µg´mÀFÑ6KÔ6KÑLÔLÐLÝ�œ V¨SÑ1Ô1Ð3EØ"¨ð	,ñ 	,ô 	,ð 	,õ Œl˜1˜aÑ Ô ˆÝ”˜aÑ Ô ¥¤¨qÑ!1Ô!1Ñ1µ7´=ÀÑ3CÔ3CÑCˆÝ˜˜T¨Ð.Ñ.Ô.Ð.Ð.Ð.rC   c                 ón   — t          t          j        t          j        dd¦  «        ¦  «        ¦  «         d S )NrM   rJ   )r   r]   Úisinfr   rË  r>   s    r@   Útest_beta_infzTestBeta.test_beta_inf;  s,   € Ý•”�œ b¨!Ñ,Ô,Ñ-Ô-Ñ.Ô.Ð.Ð.Ð.rC   c                 ó®  — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        t          j        d¦  «        ¦  «         t          t          j        dd¦  «        ddd	¬
¦  «         t          j        dd¦  «        }t          t          t          j        dd¦  «        ¦  «        ¦  «        }t          ||d¬¦  «         d S )NrX   rž   rÇ  rÈ  rÉ  éª   gðIÊÀs	@r'  r   r(  rJ   rH   rP   rQ   )r   r   Úbetalnr   rH  r   rC  rË  )r?   ÚbetlnrÌ  s      r@   Útest_betalnzTestBeta.test_betaln>  sÇ   € Ý•W”^ A qÑ)Ô)¨3Ñ/Ô/Ð/Ý�œ v¨vÑ6Ô6Ýœ¨Ñ/Ô/ñ	1ô 	1ð 	1å�œ v¨sÑ3Ô3Ð5GØ"¨ð	,ñ 	,ô 	,ð 	,õ ”˜q !Ñ$Ô$ˆÝ•#•g”l 1 aÑ(Ô(Ñ)Ô)Ñ*Ô*ˆÝ˜˜s¨Ð/Ñ/Ô/Ð/Ð/Ð/rC   N)r3  r4  r5  Ú__doc__rÎ  rÑ  rÖ  r:  rC   r@   rÅ  rÅ  ,  sK   € € € € € ðð ð/ð /ð /ð/ð /ð /ð	0ð 	0ð 	0ð 	0ð 	0rC   rÅ  c                   óô  — e Zd ZdZd„ Zej                             dg d¢¦  «        d„ ¦   «         Zej                             dg d¢¦  «        d„ ¦   «         Z	ej                             dg d	¢¦  «        d
„ ¦   «         Z
ej                             dej        ej        ej        ej        ej        ej        g¦  «        ej                             dg d¢¦  «        d„ ¦   «         ¦   «         Zej                             ddej        fdej        fdej        fej        ej        dfej        fej        ej        dfej        fej        ej        dfej        fdddddddej        dfdfdej        dfdfdej        dfdfej        ddfdfej        ddfdfej        ddfdfdej        dfdfdej        dfdfdej        dfdfej        ddfdfej        ddfdfej        ddfdfg¦  «        d„ ¦   «         Zej                             ddej        fdej        fdej        fej        ej        dfej        fej        ej        dfej        fej        ej        dfej        fdddd d!d"dej        dfdfdej        dfdfdej        dfdfej        ddfdfej        ddfdfej        ddfdfdej        dfdfdej        dfdfdej        dfdfej        ddfdfej        ddfdfej        ddfdfg¦  «        d#„ ¦   «         Zej                             d$ej        ej        g¦  «        d%„ ¦   «         Zej                             d&ej        d'fej        d(fg¦  «        ej                             d)d*d+g¦  «        d,„ ¦   «         ¦   «         Zd-S ).ÚTestBetaIncz?
    Tests for betainc, betaincinv, betaincc, betainccinv.
    c                 ó^  — t          j        g d¢¦  «        }t          t          j        dd|¦  «        |¦  «         t          t          j        dd|¦  «        |¦  «         t          t          j        dd|¦  «        d|z
  ¦  «         t          t          j        dd|¦  «        d|z
  ¦  «         d S )N)r   r  rX   rX   )r]   r   r   r   ÚbetaincÚ
betaincinvÚbetainccÚbetainccinvr  s     r@   Ú
test_a1_b1zTestBetaInc.test_a1_b1O  sž   € åŒH�\�\�\Ñ"Ô"ˆÝ•W”_ Q¨¨1Ñ-Ô-¨qÑ1Ô1Ð1Ý•WÔ'¨¨1¨aÑ0Ô0°!Ñ4Ô4Ð4Ý•WÔ% a¨¨AÑ.Ô.°°A±Ñ6Ô6Ð6Ý•WÔ(¨¨A¨qÑ1Ô1°1°q±5Ñ9Ô9Ð9Ð9Ð9rC   z
a, b, x, p))rJ   rH   gšÐ@wÔ?r†   )rÉ  g     `e@rZ   g°î*¶¯á?)rÉ  rÊ  g"YxãÃ;r  )g   `¥ù1?g    Ø¦Ag¯ª\Àa¼Y4g   €ý ï?)rH   i�† gñ-ß‡)?gŽ;¥ƒõÿï?c                 óF  — t          j        |||¦  «        }t          ||d¬¦  «         t          j        |||¦  «        }t          ||d¬¦  «         t          j        |||¦  «        }t          ||d¬¦  «         t          j        |||¦  «        }t          ||d¬¦  «         d S )NrÚ   rQ   gê-�™—a=rP   )r   rÛ  r   rÜ  ÚbtdtriaÚbtdtrib)	r?   rD  rE  rå   r.  Úp1Úx1ro  rF  s	            r@   Útest_betainc_and_inversesz%TestBetaInc.test_betainc_and_inversesf  s«   € õ Œ_˜Q  1Ñ%Ô%ˆÝ˜˜A EÐ*Ñ*Ô*Ð*ÝÔ  1 aÑ(Ô(ˆÝ˜˜A EÐ*Ñ*Ô*Ð*ÝŒ_˜Q  1Ñ%Ô%ˆÝ˜˜A EÐ*Ñ*Ô*Ð*ÝŒ_˜Q  1Ñ%Ô%ˆÝ˜˜A EÐ*Ñ*Ô*Ð*Ð*Ð*rC   ))ç      @rÝ  r  g     ªê?)ç      @g     €*@g      Ø?gòó&�¶Û?)ç      À?rç  g333333Û?gF­Úo„êE?)rè  ç      2@r±   gg2$·Zç?)rè  ré  g¬Zd;ßï?g•‡²ˆºœ�6)rè  rA  rõ  gâž�Ô`…<)ç      0@rõ  gè£Ýÿÿÿï?g<dE­A¢>)g’áëßôÚ?g7–ûÃŠÐ@g¼Òô/3·J?çH¯¼šò×z>c                 ó¦   — t          j        |||¦  «        }t          ||d¬¦  «         t          j        |||¦  «        }t          ||d¬¦  «         d S )Nç›+¡†›„ö<rQ   gVçž¯=)r   rÝ  r   rÞ  )r?   rD  rE  rå   r.  rã  rä  s          r@   Útest_betaincc_betainccinvz%TestBetaInc.test_betaincc_betainccinv  s\   € õ Ô˜a  AÑ&Ô&ˆÝ˜˜A EÐ*Ñ*Ô*Ð*ÝÔ   A qÑ)Ô)ˆÝ˜˜A EÐ*Ñ*Ô*Ð*Ð*Ð*rC   za, b, y, ref))ç¢‰c§j,@rï  ghHçISOa gÚ­ù  ãY;)g      ,@g      -@g„ë‘¤Íg}äc]ì¶«;)rà  g      .@gUš¿v \U,gãS²‰^%:)ry  g      ô?g´M´›»oigºKB;)r  g    Ðiø@g1ðúÖ$ÔÏ-g\_±«cp:c                 óV   — t          j        |||¦  «        }t          ||d¬¦  «         d S )Nr'  rQ   )r   rÜ  r   )r?   rD  rE  r   r  rå   s         r@   Útest_betaincinv_tiny_yz"TestBetaInc.test_betaincinv_tiny_y‘  s3   € õ2 Ô˜q ! QÑ'Ô'ˆÝ˜˜3 UÐ+Ñ+Ô+Ð+Ð+Ð+rC   ÚfuncÚargs))rÝ   rJ   r†   )r  ç       Àr†   )r  rt  ç333333Ó¿)r  rt  çš™™™™™ñ?c                 óÜ   — t          j        d¬¦  «        5  t          j        t           j        d¬¦  «        5   ||Ž  d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )NÚraise)Údomainrù  ©Úmatch)r   Úerrstater6  r   ÚSpecialFunctionError)r?   rò  ró  s      r@   Útest_betainc_domain_errorsz&TestBetaInc.test_betainc_domain_errors­  sô   € õ Ô WÐ-Ñ-Ô-ð 	ð 	Ý”�wÔ;À8ÐLÑLÔLð ð Ø��d��ðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð ð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	ð 	ð 	s3   –!A!·A	½A!Á	A	ÁA!ÁA	ÁA!Á!A%Á(A%zargs,expected)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ž   )©r‡   rž   r†   rž   )©r‡   rž   r‡   r‡   c                 óB   — t          j        |Ž }t          ||¦  «         d S ru  )r   rÛ  r   ©r?   ró  r"  Úobserveds       r@   Útest_betainc_edge_casesz#TestBetaInc.test_betainc_edge_cases·  s&   € õ< ”? DÐ)ˆÝ�X˜xÑ(Ô(Ð(Ð(Ð(rC   )rÿ  r‡   )r   rž   )r  rž   )r  r‡   )r  r‡   )r  rž   c                 óB   — t          j        |Ž }t          ||¦  «         d S ru  )r   rÝ  r   r  s       r@   Útest_betaincc_edge_casesz$TestBetaInc.test_betaincc_edge_casesØ  s'   € õ< Ô# TÐ*ˆÝ�X˜xÑ(Ô(Ð(Ð(Ð(rC   Údtypec                 óæ   — t          j        dg|¬¦  «        }t          j        dg|¬¦  «        }t          j        |||¦  «        }t	          ||dt          j        |¦  «        j        z  ¬¦  «         d S )Nr•   ©r  r†   r&  rQ   )r]   r   r   rÜ  r   r   Úeps)r?   r  rD  rå   r‘  s        r@   Útest_gh21426zTestBetaInc.test_gh21426ù  so   € õ ŒH�b�T Ð'Ñ'Ô'ˆÝŒH�c�U %Ð(Ñ(Ô(ˆÝÔ# A q¨!Ñ,Ô,ˆÝ˜ ¨­R¬X°e©_¬_Ô-@Ñ(@ÐAÑAÔAÐAÐAÐArC   zdtype, rtolrI  rÚ   za, b, x, reference)ç#B’¡œÇ;gO›
´ã’;r†   gE]tÑE·?)rÚ   g¼‰Ø—²Òœ<r†   gF]tÑE·?c                 óÚ   — t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          j        ||¬¦  «        }t          j        |||¦  «        }t	          |||¬¦  «         d S )Nr  rQ   )r]   r   r   rÛ  r   )r?   rD  rE  rå   rP  r  rR   Úress           r@   Útest_gh22682zTestBetaInc.test_gh22682  sn   € õ ŒH�Q˜eÐ$Ñ$Ô$ˆÝŒH�Q˜eÐ$Ñ$Ô$ˆÝŒH�Q˜eÐ$Ñ$Ô$ˆÝŒo˜a  AÑ&Ô&ˆÝ˜˜Y¨TÐ2Ñ2Ô2Ð2Ð2Ð2rC   N)r3  r4  r5  r×  rß  r6  r7  r9  rå  rî  rñ  r   rÛ  rÜ  rá  râ  rÝ  rÞ  rþ  r]   r  r   r  r
  rà   râ   r  r  r:  rC   r@   rÙ  rÙ  J  s$  € € € € € ðð ð:ð :ð :ð. „[×ÒØð	6ð 	6ð 	6ñ
7ô 
7ð+ð +ñ
7ô 
7ð+ð „[×Ò˜\ð
<ð 
<ð 
<ñ=ô =ð+ð +ñ=ô =ð+ð „[×ÒØð	7ð 	7ð 	7ñô ð,ð ,ñô ð,ð& „[×Ò˜V g¤o°wÔ7IØ&-¤o°w´Ø&-Ô&6¸Ô8Kð&Mñ Nô Nð „[×Ò˜Vð &Ið &Ið &Iñ Jô Jðð ñJô JñNô Nð
ð
 „[×ÒØà˜bœfÐ%Ø˜bœfÐ%Ø˜bœfÐ%ØŒf�b”f˜cÐ" B¤FÐ+ØŒf�b”f˜cÐ" B¤FÐ+ØŒf�b”f˜cÐ" B¤FÐ+Ø"Ø"Ø"Ø"Ø"Ø"Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ð1	
ñô ð:)ð )ñ;ô ð:)ð „[×ÒØà˜bœfÐ%Ø˜bœfÐ%Ø˜bœfÐ%ØŒf�b”f˜cÐ" B¤FÐ+ØŒf�b”f˜cÐ" B¤FÐ+ØŒf�b”f˜cÐ" B¤FÐ+Ø"Ø"Ø"Ø"Ø"Ø"Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%Ø�2”6˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ØŒf�c˜3Ð Ð%ð1	
ñô ð:)ð )ñ;ô ð:)ð „[×Ò˜W r¤z°2´:Ð&>Ñ?Ô?ðBð Bñ @Ô?ðBð „[×Ò˜]Ø!œz¨4Ð0Ø!œz¨5Ð1ð3ñ4ô 4ð „[×ÒÐ1ØEØFðHñIô Ið3ð 3ñIô Iñ4ô 4ð3ð 3ð 3rC   rÙ  c                   óÐ   — e Zd Zd„ Zd„ Zd„ Zd„ Zej         	                    dg d¢¦  «        ej         	                    ddd	g¦  «        d
„ ¦   «         ¦   «         Z
d„ Zd„ Zd„ Zd„ ZdS )ÚTestCombinatoricsc                 ó°  — t          t          j        ddgddg¦  «        ddg¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        dddd¬	¦  «        d
¦  «         t          d„ t	          d¦  «        D ¦   «         t          j        dt          t	          d¦  «        ¦  «        ¦  «        d¬¦  «         t          j        t          ¦  «        j	        dz   }t          t          j        ||dz
  d¬¦  «        |¦  «         d}t          j        ddd¬¦  «        |k    sJ ‚d S )Nr&  rŒ   rH   ç      ^@g     @j@T©Úexactéx   ©r  Ú
repetitionéÜ   c                 ó<   — g | ]}t          j        d |d¬¦  «        ‘ŒS )rn   Tr  )r   Úcomb)Ú.0rg   s     r@   ú
<listcomp>z/TestCombinatorics.test_comb.<locals>.<listcomp>  s)   € ÐLÐLÐL¸Q�œ b¨!°4Ð8Ñ8Ô8ÐLÐLÐLrC   r.  rn   rÚ   ©r\   rX   l   hU7`�±Së?Q r#  é2   )
r   r   r  r   rv   Úlistr]   Úiinforu   Úmax)r?   Úiir"  s      r@   Ú	test_combzTestCombinatorics.test_comb  sB  € Ý�œ b¨" X°°1¨vÑ6Ô6¸¸t¸ÑEÔEÐEÝ�œ R¨Ñ+Ô+¨TÑ2Ô2Ð2Ý•W”\ " a¨tÐ4Ñ4Ô4°cÑ:Ô:Ð:Ý•W”\ " a¨tÀÐEÑEÔEÀsÑKÔKÐKåÐLÐLÅ%ÈÁ)Ä)ÐLÑLÔLÝœ R­­e°B©i¬i©¬Ñ9Ô9Àð	Gñ 	Gô 	Gð 	Gõ ŒX•c‰]Œ]Ô Ñ"ˆÝ•W”\ " b¨¡d°$Ð7Ñ7Ô7¸Ñ<Ô<Ð<à1ˆÝŒ|˜C ¨4Ð0Ñ0Ô0°HÒ<Ð<Ð<Ð<Ð<Ð<rC   c                 óÊ   — d}d}t          j        |¦  «        }t          j        |¦  «        }t          j        ||d¬¦  «        }t          j        ||d¬¦  «        }||k    sJ ‚d S )NéF   rT   Tr  )r]   Úint64r   r  )r?   rf   rg   Únp_nÚnp_kÚres_npÚres_pys          r@   Útest_comb_with_np_int64z)TestCombinatorics.test_comb_with_np_int64!  si   € ØˆØˆÝŒx˜‰{Œ{ˆÝŒx˜‰{Œ{ˆÝ”˜d D°Ð5Ñ5Ô5ˆÝ”˜a ¨$Ð/Ñ/Ô/ˆØ˜ÒÐÐÐÐÐrC   c                 ó€  — t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        g d¢g d	¢¦  «        g d
¢¦  «         d S )NrJ   rŒ   Tr  r   rM   F©rJ   rM   rJ   r&  ©rŒ   rŒ   rM   rŒ   )rž   rž   rž   r  )r   r   r  r   r>   s    r@   Útest_comb_zerosz!TestCombinatorics.test_comb_zeros*  ó·   € Ý•W”\ ! Q¨dÐ3Ñ3Ô3°QÑ7Ô7Ð7Ý•W”\ " a¨tÐ4Ñ4Ô4°aÑ8Ô8Ð8Ý•W”\ ! R¨tÐ4Ñ4Ô4°aÑ8Ô8Ð8Ý•W”\ ! R¨uÐ5Ñ5Ô5°qÑ9Ô9Ð9Ý�œ ^ ^ ^°]°]°]ÑCÔCÐEWÐEWÐEWÑXÔXÐXÐXÐXrC   c                 ó4  — d}t          j        t          |¬¦  «        5  t          j        ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬¦  «        5  t          j        ddd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nz`exact=True`rú  rÜ  rH   Tr  rŒ   gš™™™™™@)r6  r   Ú
ValueErrorr   r  rº  s     r@   Útest_comb_exact_non_int_errorz/TestCombinatorics.test_comb_exact_non_int_error1  s  € ØˆÝŒ]�:¨SÐ1Ñ1Ô1ð 	-ð 	-ÝŒL˜˜a tÐ,Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-åŒ]�:¨SÐ1Ñ1Ô1ð 	-ð 	-ÝŒL˜˜C tÐ,Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s#   žAÁAÁ	AÁ(BÂBÂBÚN©r   rÖ   r&  r  TFc                 ó˜   — t          j        |d|d¬¦  «        }|dk    sJ ‚|rt          |¦  «        t          u snt          j        sJ ‚d S d S )Nr   Tr  rX   )r   r  Útyperu   r]   râ   )r?   r9  r  Úactuals       r@   Útest_comb_repetition_k_zeroz-TestCombinatorics.test_comb_repetition_k_zero8  s[   € õ
 ”˜a ¨%¸DÐAÑAÔAˆØ˜Š{ˆ{ˆ{ˆ{Ø&+Ð;�t�F‰|Œ|�sÐ"Ð"Ð"µ´Ð"Ð"Ð;Ð"Ð"Ð"Ð"rC   c                 ó®   — t          j        g d¢¦  «        }t          j        |ddd¬¦  «        }t          j        g d¢¦  «        }t	          ||¦  «         d S )Nr:  r   FTr  )r‡   r‡   r‡   )r]   r   r   r  r   )r?   r9  r‘  r"  s       r@   Ú!test_comb_repetition_k_zero_arrayz3TestCombinatorics.test_comb_repetition_k_zero_arrayA  sV   € åŒH�Z�Z�ZÑ Ô ˆÝ”˜a ¨%¸DÐAÑAÔAˆÝ”8˜O˜O˜OÑ,Ô,ˆÝ�V˜XÑ&Ô&Ð&Ð&Ð&rC   c                 óî   — t          t          j        ddgddg¦  «        ddg¦  «         t          t          j        dd¦  «        ddd¬¦  «         t          t          j        ddd	¬
¦  «        d¦  «         d S )Nr&  rŒ   rH   ç     €†@g     °³@rÏ   r   r[   Tr  iÐ  )r   r   Úpermr   r>   s    r@   Ú	test_permzTestCombinatorics.test_permH  st   € Ý�œ b¨" X°°1¨vÑ6Ô6¸¸u¸ÑFÔFÐFÝ�œ R¨Ñ+Ô+¨T¸ÀQÐGÑGÔGÐGÝ•W”\ " a¨tÐ4Ñ4Ô4°cÑ:Ô:Ð:Ð:Ð:rC   c                 ó€  — t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        ddd¬¦  «        d¦  «         t          t          j        g d¢g d	¢¦  «        g d
¢¦  «         d S )NrJ   rŒ   Tr  r   rM   Fr2  r3  )rž   rž   rž   rB  )r   r   rC  r   r>   s    r@   Útest_perm_zerosz!TestCombinatorics.test_perm_zerosM  r5  rC   c                 óô  — t          j        t          d¬¦  «        5  t          j        ddgddgd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬¦  «        5  t          j        d
dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬¦  «        5  t          j        ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬¦  «        5  t          j        ddd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d	¬¦  «        5  t          j        dd
d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzscalar integersrú  rX   rJ   rH   rÖ   Tr  zNon-integergffffff@rN   gffffffÀrŒ   g333333Àç      @)r6  r   r7  r   rC  r>   s    r@   Útest_perm_ivzTestCombinatorics.test_perm_ivT  s¡  € åŒ]�:Ð->Ð?Ñ?Ô?ð 	5ð 	5ÝŒL˜!˜Q˜ ! Q ¨tÐ4Ñ4Ô4Ð4ð	5ð 	5ð 	5ñ 	5ô 	5ð 	5ð 	5ð 	5ð 	5ð 	5ð 	5øøøð 	5ð 	5ð 	5ð 	5õ Œ]�:¨]Ð;Ñ;Ô;ð 	-ð 	-ÝŒL˜˜a tÐ,Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-åŒ]�:¨]Ð;Ñ;Ô;ð 	.ð 	.ÝŒL˜˜q¨Ð-Ñ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.åŒ]�:¨]Ð;Ñ;Ô;ð 	.ð 	.ÝŒL˜˜D¨Ð-Ñ-Ô-Ð-ð	.ð 	.ð 	.ñ 	.ô 	.ð 	.ð 	.ð 	.ð 	.ð 	.ð 	.øøøð 	.ð 	.ð 	.ð 	.åŒ]�:¨]Ð;Ñ;Ô;ð 	/ð 	/ÝŒL˜˜c¨Ð.Ñ.Ô.Ð.ð	/ð 	/ð 	/ñ 	/ô 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/ð 	/øøøð 	/ð 	/ð 	/ð 	/ð 	/ð 	/sY   œAÁAÁAÁ*BÂBÂBÂ4CÃCÃCÃ>D"Ä"D&Ä)D&ÅE-Å-E1Å4E1N)r3  r4  r5  r(  r0  r4  r8  r6  r7  r9  r>  r@  rD  rF  rI  r:  rC   r@   r  r    så   € € € € € ð=ð =ð =ð ð  ð  ðYð Yð Yð-ð -ð -ð „[×Ò˜S * * *Ñ-Ô-Ø„[×Ò˜W t¨U mÑ4Ô4ð<ð <ñ 5Ô4ñ .Ô-ð<ð'ð 'ð 'ð;ð ;ð ;ð
Yð Yð Yð/ð /ð /ð /ð /rC   r  c                   óP   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ ZdS )ÚTestTrigonometricc                 óX   — t          j        d¦  «        }d}t          ||dd¬¦  «         d S )Né   rÝ  rÏ   r   r[   ©r   r²   r   )r?   ÚcbÚcbrls      r@   r³   zTestTrigonometric.test_cbrtd  s3   € ÝŒ\˜"ÑÔˆØˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 óX   — t          j        d¦  «        }d}t          ||dd¬¦  «         d S )Ngfffffæ;@géŽ–š…C@r?  r   r[   rN  )r?   Úcb1Úcbrl1s      r@   Útest_cbrtmorezTestTrigonometric.test_cbrtmorei  s3   € ÝŒl˜4Ñ Ô ˆØˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 ó‚   — t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         d S )Nrì  rt  r?  r   r[   ©r   rÇ   r
   r   r   )r?   ÚcdgÚcdgrls      r@   rÈ   zTestTrigonometric.test_cosdgn  s=   € ÝŒm˜BÑÔˆÝ•B�s‘F‘”ˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 ó‚   — t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         d S ©NrT   rH  r?  r   r[   rV  )r?   ÚcdgmÚcdgmrls      r@   Útest_cosdgmorez TestTrigonometric.test_cosdgmores  s=   € ÝŒ}˜RÑ Ô ˆÝ•R˜‘V‘”ˆÝ˜˜f¨6¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   c                 ó,  — t          j        d¦  «        t          j        d¦  «        t          j        t          dz  ¦  «        f}t          d¦  «        dz
  t          d¦  «        dz
  t          t          dz  ¦  «        dz
  f}t	          ||dd¬¦  «         d S )Nr   r  r&  rX   r?  r[   )r   rË   r   r
   r   )r?   ÚcsÚcsrls      r@   rÌ   zTestTrigonometric.test_cosm1x  s{   € ÝŒm˜AÑÔ�wœ}¨RÑ0Ô0µ´½rÀ"¹uÑ1EÔ1EÐFˆÝ�A‘”�q‘�˜R™œ ™¥3¥r¨"¡u¡:¤:¨a¡<Ð0ˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 óˆ   — t          j        d¦  «        }t          t          dz  ¦  «        dz  }t	          ||dd¬¦  «         d S )NrT   rH  rM   r?  r   r[   ©r   rÐ   r   r   r   )r?   ÚctÚctrls      r@   rÑ   zTestTrigonometric.test_cotdg}  sB   € ÝŒ]˜2ÑÔˆÝ•2�c‘6‰{Œ{˜RÑ ˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 óˆ   — t          j        d¦  «        }t          t          dz  ¦  «        dz  }t	          ||dd¬¦  «         d S )NrÎ   r  rM   r?  r   r[   rb  )r?   Úct1Úctrl1s      r@   Útest_cotdgmorez TestTrigonometric.test_cotdgmore‚  sB   € ÝŒm˜BÑÔˆÝ•B�s‘F‘”˜bÑ!ˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 óÈ  — t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        d	dd¬¦  «         t          t          j        d
¦  «        d	dd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        d	dd¬¦  «         t          t          j        d¦  «        d	dd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         d S )NrÎ   r‡   ç´àø¤tã=r   r[   éÓÿÿÿrÝ   rì  rž   i¦ÿÿÿé‡   éyÿÿÿéá   éÿÿÿi  iòþÿÿé;  éÅþÿÿiý  )r   r   rÐ   r>   s    r@   Útest_specialpointsz$TestTrigonometric.test_specialpoints‡  sµ  € Ý�œ bÑ)Ô)¨3°WÀ1ÐEÑEÔEÐEÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ bÑ)Ô)¨3°WÀ1ÐEÑEÔEÐEÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÝ�œ dÑ+Ô+¨T¸ÀaÐHÑHÔHÐHÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÐFÐFrC   c                 ó�   — t          t          j        dg¦  «        d¦  «         t          t          j        d¦  «        d¦  «         d S )Nr   rX   rž   r‡   )r   r   Úsincr   r>   s    r@   Ú	test_sinczTestTrigonometric.test_sinc–  s>   € å�7œ<¨¨Ñ,Ô,¨aÑ0Ô0Ð0Ý•W”\ #Ñ&Ô&¨Ñ,Ô,Ð,Ð,Ð,rC   c                 óN   — t          j        d¦  «        }t          |d¦  «         d S rë  )r   rí  r   )r?   Úsns     r@   rî  zTestTrigonometric.test_sindg›  s'   € ÝŒ]˜2ÑÔˆÝ�R˜ÑÔÐÐÐrC   c                 óþ   — t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         d S )NrT   rH  r?  r   r[   rÎ   r  )r   rí  r	   r   r   )r?   ÚsnmÚsnmrlÚsnm1Úsnmrl1s        r@   Útest_sindgmorez TestTrigonometric.test_sindgmoreŸ  ór   € ÝŒm˜BÑÔˆÝ•B�s‘F‘”ˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8ÝŒ}˜RÑ Ô ˆÝ•R˜‘V‘”ˆÝ˜˜f¨6¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   N)r3  r4  r5  r³   rT  rÈ   r]  rÌ   rÑ   rh  rr  ru  rî  r}  r:  rC   r@   rK  rK  c  s¼   € € € € € ð7ð 7ð 7ð
9ð 9ð 9ð
9ð 9ð 9ð
;ð ;ð ;ð
7ð 7ð 7ð
7ð 7ð 7ð
9ð 9ð 9ð
Gð Gð Gð-ð -ð -ð
ð ð ð;ð ;ð ;ð ;ð ;rC   rK  c                   ó    — e Zd Zd„ Zd„ Zd„ ZdS )Ú	TestTandgc                 ó‚   — t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         d S rZ  ©r   r  r   r   r   )r?   ÚtnÚtnrls      r@   r  zTestTandg.test_tandgª  s=   € ÝŒ]˜2ÑÔˆÝ•2�c‘6‰{Œ{ˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 óþ   — t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         t          j        d¦  «        }t          t          dz  ¦  «        }t	          ||dd¬¦  «         d S )NrÎ   r  r?  r   r[   rH  rÝ  r‚  )r?   ÚtnmÚtnmrlÚtnm1Útnmrl1s        r@   Útest_tandgmorezTestTandg.test_tandgmore¯  r~  rC   c                 ó4  — t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d	¦  «        ddd¬¦  «         t          t          j        d
¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         t          t          j        d¦  «        ddd¬¦  «         d S )Nr   rž   rj  r[   rÎ   r‡   rk  rÝ   rl  rm  r  iLÿÿÿrn  ro  rp  rq  )r   r   r  r>   s    r@   rr  zTestTandg.test_specialpoints·  ss  € Ý�œ aÑ(Ô(¨#°GÀ!ÐDÑDÔDÐDÝ�œ bÑ)Ô)¨3°WÀ1ÐEÑEÔEÐEÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÝ�œ cÑ*Ô*¨C°gÀAÐFÑFÔFÐFÝ�œ dÑ+Ô+¨T¸ÀaÐHÑHÔHÐHÝ�œ cÑ*Ô*¨D°wÀQÐGÑGÔGÐGÝ�œ dÑ+Ô+¨S°wÀQÐGÑGÔGÐGÐGÐGrC   N)r3  r4  r5  r  rŠ  rr  r:  rC   r@   r€  r€  ¨  sF   € € € € € ð7ð 7ð 7ð
;ð ;ð ;ðHð Hð Hð Hð HrC   r€  c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )Ú	TestEllipc                 óD   — t          j        dt          j        ¦  «         dS )zRegression test for #912.r†   N)r   rø   r]   r  r>   s    r@   Útest_ellipj_nanzTestEllip.test_ellipj_nanÆ  s   € åŒ�s�BœFÑ#Ô#Ð#Ð#Ð#rC   c                 ó–   — t          j        dd¦  «        }t          d¦  «        t          d¦  «        ddg}t	          ||dd¬¦  «         d S )NrÞ   r   r‡   çá7ÎQE=r[   )r   rø   r	   r
   r   )r?   ÚelÚrels      r@   rù   zTestEllip.test_ellipjÊ  sJ   € ÝŒ^˜C Ñ"Ô"ˆÝ�3‰xŒx�˜C™œ  TÐ*ˆÝ˜˜C g°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 ó`  — t          j        d¦  «        }t          |ddd¬¦  «         t          t          j        d¦  «        t
          j        ¦  «         t          t          j        d¦  «        t          dz  ¦  «         t          t          j        t
          j        ¦  «        d¦  «         t          t          j        t
          j        ¦  «        t
          j        ¦  «         t          t          j        d	¦  «        t
          j        ¦  «         t          t          j        d
¦  «        d¦  «         d S )NrÞ   g˜;{yÑ�ú?rI  r   r[   rž   r‡   rJ   rM   r  g­Õü�ÒNé?)	r   r   r   r   r    r]   r   r   r  )r?   Úelks     r@   rû   zTestEllip.test_ellipkÏ  sß   € ÝŒn˜RÑ Ô ˆÝ˜Ð.°WÀ1ÐEÑEÔEÐEå•WÔ% cÑ*Ô*­B¬FÑ3Ô3Ð3Ý•WÔ% cÑ*Ô*­B¨q©DÑ1Ô1Ð1Ý•WÔ%¥b¤fÑ-Ô-¨sÑ3Ô3Ð3Ý•WÔ%¥b¤fÑ-Ô-­r¬vÑ6Ô6Ð6Ý•WÔ% bÑ)Ô)­2¬6Ñ2Ô2Ð2Ý�œ sÑ+Ô+Ð-?Ñ@Ô@Ð@Ð@Ð@rC   c                 ó  — t          j        t          dz  d¦  «        }t          j        d¦  «        }t	          ||dd¬¦  «         dt          z  dz  }dt          z  dz  }t          |¦  «        dz  }t          j        ||¦  «        }t	          |d	d
d¬¦  «         t          t          j        t          dz  d¦  «        t          dz  ¦  «         t          t          j        t          dz  d¦  «        t          j        ¦  «         t          t          j        t          dz  t          j         ¦  «        d¦  «         t          t          j        t          dz  t          j	        ¦  «        t          j	        ¦  «         t          t          j        t          dz  d¦  «        t          j	        ¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        t          j        d¦  «        t          j        ¦  «         t          t          j        t          j         d¦  «        t          j         ¦  «         t          t          j        t          j        t          j        ¦  «        t          j	        ¦  «         t          t          j        t          j        t          j         ¦  «        t          j	        ¦  «         t          t          j        t          j         t          j         ¦  «        t          j	        ¦  «         t          t          j        t          j         t          j        ¦  «        t          j	        ¦  «         t          t          j        t          j	        d¦  «        t          j	        ¦  «         t          t          j        t          j	        t          j	        ¦  «        t          j	        ¦  «         t	          t          j        dd¦  «        dd¬¦  «         t	          t          j        dd¦  «        d¦  «         d S )NrJ   rÞ   rÙ   r   r[   rn   r  rÎ   gëfo¾Khé?r?  rž   r‡   r†   g–±t½„ñØ?rX   rK   r'  rQ   ç6<½R–!ù?r  gfäO¨•Né?)
r   rý   r   r   r   r	   r   r]   r   r  )r?   Úelkincr•  ÚalphaÚphir  s         r@   rþ   zTestEllip.test_ellipkincÚ  sÉ  € ÝÔ"¥2 a¡4¨Ñ+Ô+ˆÝŒn˜SÑ!Ô!ˆÝ˜ ¨'¸Ð:Ñ:Ô:Ð:Ø•2‘�c‘	ˆØ•‰e�C‰iˆÝ�‰JŒJ˜‰MˆÝÔ" 3 qÑ)Ô)ˆÝ˜ 
°¸aÐ@Ñ@Ô@Ð@õ 	•WÔ&¥r¨!¡t¨SÑ1Ô1µ2°a±4Ñ8Ô8Ð8Ý•WÔ&¥r¨!¡t¨SÑ1Ô1µ2´6Ñ:Ô:Ð:Ý•WÔ&¥r¨!¡t­b¬f¨WÑ5Ô5°sÑ;Ô;Ð;Ý•WÔ&¥r¨!¡t­R¬VÑ4Ô4µb´fÑ=Ô=Ð=Ý•WÔ&¥r¨!¡t¨QÑ/Ô/µ´Ñ8Ô8Ð8Ý•WÔ& q¨#Ñ.Ô.°Ñ4Ô4Ð4Ý•WÔ&¥r¤v¨sÑ3Ô3µR´VÑ<Ô<Ð<Ý•WÔ&­¬ w°Ñ4Ô4µr´v°gÑ>Ô>Ð>Ý•WÔ&¥r¤v­r¬vÑ6Ô6½¼Ñ?Ô?Ð?Ý•WÔ&¥r¤vµ´¨wÑ7Ô7½¼Ñ@Ô@Ð@Ý•WÔ&­¬ wµ´°Ñ8Ô8½"¼&ÑAÔAÐAÝ•WÔ&­¬ wµ´Ñ7Ô7½¼Ñ@Ô@Ð@Ý•WÔ&¥r¤v¨sÑ3Ô3µR´VÑ<Ô<Ð<Ý•WÔ&¥r¤v­r¬vÑ6Ô6½¼Ñ?Ô?Ð?å�Ô)Ð*=¸qÑAÔAÀ3ÈUÐSÑSÔSÐSÝ�Ô)¨&°#Ñ6Ô6Ð8KÑLÔLÐLÐLÐLrC   c                 ó¨  — d}d}t          j        |d¦  «        }g }t          d¦  «        D ],}|                     |¦  «         t          j        |d¦  «        }Œ-t	          j        ||¦  «        }t          |t          j        |d¦  «        d¦  «         t	          j        |t          z   |¦  «        }t          |t          j        |d¦  «        d¦  «         d S )	Nç    àå?çP»ag¬í?r   r&  rX   gV»^»8jð?g,j6êÆ„@rJ   )	r]   Ú	nextafterrv   Úappendr   rý   r   Ú	full_liker   ©r?   Úmbadrš  r  ÚmvalsÚjrj  Úf1s           r@   Útest_ellipkinc_2zTestEllip.test_ellipkinc_2÷  sÈ   € ð #ˆØ ˆÝŒL˜˜qÑ!Ô!ˆØˆÝ�r‘”ð 	#ð 	#ˆAØ�LŠL˜‰OŒOˆOÝ”˜Q Ñ"Ô"ˆAˆAÝÔ˜c 5Ñ)Ô)ˆÝ& q­"¬,°qÐ:LÑ*MÔ*MÈqÑQÔQÐQåÔ˜s¥R™x¨Ñ/Ô/ˆÝ& r­2¬<¸Ð<NÑ+OÔ+OÐQRÑSÔSÐSÐSÐSrC   c                 ó   — t          j        ddd¦  «        }t          j        ddd¦  «        }t          j        dt          dz  dd¬¦  «        }t	          t          j        |d	¦  «        t          j        t          j        |¦  «        ¦  «        d
¬¦  «         t	          t          j        |d	¦  «        t          j        t          j        |¦  «        ¦  «        d
¬¦  «         t	          t          j        |d	¦  «        t          j        t          j        |¦  «        ¦  «        d
¬¦  «         t          t          j        t           j        dz  d	¦  «        t           j
        ¦  «         t	          t          j        | d	¦  «        t          j        t          j        | ¦  «        ¦  «        d
¬¦  «         t	          t          j        | d	¦  «        t          j        t          j        | ¦  «        ¦  «        d
¬¦  «         t	          t          j        | d	¦  «        t          j        t          j        | ¦  «        ¦  «        d
¬¦  «         t          t          j        t           j         dz  d	¦  «        t           j
        ¦  «         d S )NiÔþÿÿiïÿÿÿr×   g—ÔFFõg<r  rJ   Frú  rX   r/  rQ   )r]   rp   r8  r   r   r   rý   Úarcsinhr   r   r   )r?   ÚxlogÚxlinÚxlin2s       r@   Útest_ellipkinc_singularz!TestEllip.test_ellipkinc_singular  s  € åŒ{˜4  bÑ)Ô)ˆÝŒ{˜5 # rÑ*Ô*ˆÝ”˜C¥ A¡ r°EÐ:Ñ:Ô:ˆå�Ô)¨$°Ñ2Ô2µB´J½r¼vÀd¹|¼|Ñ4LÔ4LØ!ð	#ñ 	#ô 	#ð 	#å�Ô)¨$°Ñ2Ô2µB´J½r¼vÀd¹|¼|Ñ4LÔ4LØ!ð	#ñ 	#ô 	#ð 	#å�Ô)¨%°Ñ3Ô3µR´ZÅÄÀuÁÄÑ5NÔ5NØ!ð	#ñ 	#ô 	#ð 	#å•WÔ&¥r¤u¨Q¡w°Ñ2Ô2µB´FÑ;Ô;Ð;Ý�Ô)¨4¨%°Ñ3Ô3µR´ZÅÄÈÀuÁÄÑ5NÔ5NØ!ð	#ñ 	#ô 	#ð 	#å�Ô)¨4¨%°Ñ3Ô3µR´ZÅÄÈÀuÁÄÑ5NÔ5NØ!ð	#ñ 	#ô 	#ð 	#å�Ô)¨5¨&°!Ñ4Ô4µb´jÅÄÈÈÁÄÑ6PÔ6PØ!ð	#ñ 	#ô 	#ð 	#å•WÔ&­¬ v¨a¡x°Ñ3Ô3µR´VÑ<Ô<Ð<Ð<Ð<rC   c                 ób  — t          j        d¦  «        }t          |ddd¬¦  «         t          t          j        d¦  «        t          dz  ¦  «         t          t          j        d¦  «        d¦  «         t          t          j        t
          j         ¦  «        t
          j        ¦  «         t          t          j        t
          j        ¦  «        t
          j        ¦  «         t          t          j        d¦  «        t
          j        ¦  «         t          t          j        d	¦  «        d
¦  «         d S )NrÞ   gèÑlÓ÷?r?  r   r[   rž   rJ   r‡   r  g?egô@)r   r   r   r   r   r]   r   r  )r?   Úeles     r@   rð   zTestEllip.test_ellipe  sÜ   € ÝŒn˜RÑ Ô ˆÝ˜Ð/°fÀ1ÐEÑEÔEÐEå•W”^ CÑ(Ô(­"¨Q©$Ñ/Ô/Ð/Ý•W”^ CÑ(Ô(¨#Ñ.Ô.Ð.Ý•W”^¥R¤V GÑ,Ô,­b¬fÑ5Ô5Ð5Ý•W”^¥B¤FÑ+Ô+­R¬VÑ4Ô4Ð4Ý•W”^ AÑ&Ô&­¬Ñ/Ô/Ð/Ý�œ sÑ+Ô+Ð-?Ñ@Ô@Ð@Ð@Ð@rC   c                 óÈ  — t          j        t          dz  d¦  «        }t          j        d¦  «        }t	          ||dd¬¦  «         dt          z  dz  dt          z  dz  }}t          |¦  «        dz  }t          j        ||¦  «        }t	          |d	d
d¬¦  «         t          t          j        t          dz  d¦  «        t          dz  ¦  «         t          t          j        t          dz  d¦  «        d¦  «         t          t          j        t          dz  t          j         ¦  «        t          j        ¦  «         t          t          j        t          dz  t          j	        ¦  «        t          j	        ¦  «         t          t          j        t          dz  d¦  «        t          j	        ¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        t          j        d¦  «        t          j        ¦  «         t          t          j        t          j         d¦  «        t          j         ¦  «         t          t          j        t          j        t          j         ¦  «        t          j        ¦  «         t          t          j        t          j         t          j         ¦  «        t          j         ¦  «         t          t          j        t          j        t          j        ¦  «        t          j	        ¦  «         t          t          j        t          j         t          j        ¦  «        t          j	        ¦  «         t          t          j        t          j	        d¦  «        t          j	        ¦  «         t          t          j        t          j	        t          j	        ¦  «        t          j	        ¦  «         t	          t          j        dd¦  «        d¦  «         d S )NrJ   rÞ   rj  r   r[   é4   r  é#   g�'ˆÉÒâ?r?  rž   r‡   r†   r—  r  g¢‚‰çL@)
r   ró   r   r   r   r	   r   r]   r   r  )r?   Úeleincr®  r™  rš  r  s         r@   rô   zTestEllip.test_ellipeinc'  s¥  € ÝÔ"¥2 a¡4¨Ñ+Ô+ˆÝŒn˜SÑ!Ô!ˆÝ˜ ¨'¸Ð:Ñ:Ô:Ð:à�‘U˜3‘Y˜r¥"™u S™yˆsˆÝ�‰JŒJ˜‰MˆÝÔ" 3 qÑ)Ô)ˆÝ˜ 
°¸aÐ@Ñ@Ô@Ð@å•WÔ&¥r¨!¡t¨SÑ1Ô1µ2°a±4Ñ8Ô8Ð8Ý•WÔ&¥r¨!¡t¨SÑ1Ô1°3Ñ7Ô7Ð7Ý•WÔ&¥r¨!¡t­b¬f¨WÑ5Ô5µr´vÑ>Ô>Ð>Ý•WÔ&¥r¨!¡t­R¬VÑ4Ô4µb´fÑ=Ô=Ð=Ý•WÔ&¥r¨!¡t¨QÑ/Ô/µ´Ñ8Ô8Ð8Ý•WÔ& q¨#Ñ.Ô.°Ñ4Ô4Ð4Ý•WÔ&¥r¤v¨sÑ3Ô3µR´VÑ<Ô<Ð<Ý•WÔ&­¬ w°Ñ4Ô4µr´v°gÑ>Ô>Ð>Ý•WÔ&¥r¤vµ´¨wÑ7Ô7½¼Ñ@Ô@Ð@Ý•WÔ&­¬ wµ´°Ñ8Ô8½2¼6¸'ÑBÔBÐBÝ•WÔ&¥r¤v­r¬vÑ6Ô6½¼Ñ?Ô?Ð?Ý•WÔ&­¬ wµ´Ñ7Ô7½¼Ñ@Ô@Ð@Ý•WÔ&¥r¤v¨sÑ3Ô3µR´VÑ<Ô<Ð<Ý•WÔ&¥r¤v­r¬vÑ6Ô6½¼Ñ?Ô?Ð?Ý�Ô)¨&°#Ñ6Ô6Ð8JÑKÔKÐKÐKÐKrC   c                 ó¨  — d}d}t          j        |d¦  «        }g }t          d¦  «        D ],}|                     |¦  «         t          j        |d¦  «        }Œ-t	          j        ||¦  «        }t          |t          j        |d¦  «        d¦  «         t	          j        |t          z   |¦  «        }t          |t          j        |d¦  «        d	¦  «         d S )
Nrœ  r�  r   r&  rX   gà%‰¤�ë?rJ   gXo«�óÆ
@rH   )	r]   rž  rv   rŸ  r   ró   r   r   r   r¡  s           r@   Útest_ellipeinc_2zTestEllip.test_ellipeinc_2A  sÉ   € ð #ˆØ ˆÝŒL˜˜qÑ!Ô!ˆØˆÝ�r‘”ð 	#ð 	#ˆAØ�LŠL˜‰OŒOˆOÝ”˜Q Ñ"Ô"ˆAˆAÝÔ˜c 5Ñ)Ô)ˆÝ& q­"¬,°qÐ:MÑ*NÔ*NÐPQÑRÔRÐRåÔ˜s¥R™x¨Ñ/Ô/ˆÝ& r­2¬<¸Ð<NÑ+OÔ+OÐQRÑSÔSÐSÐSÐSrC   N)r3  r4  r5  r�  rù   rû   rþ   r¦  r¬  rð   rô   r´  r:  rC   r@   r�  r�  Å  s¯   € € € € € ð$ð $ð $ð7ð 7ð 7ð
	Að 	Að 	AðMð Mð Mð:Tð Tð Tð =ð =ð =ð*	Að 	Að 	AðLð Lð Lð4Tð Tð Tð Tð TrC   r�  c                   óx   — e Zd ZdZd„ Zd„ Zd„ Zd„ Zd„ Ze	j
                             d¬¦  «        d	„ ¦   «         Zd
S )ÚTestEllipCarlsonz³Test for Carlson elliptic integrals ellipr[cdfgj].
    The special values used in these tests can be found in Sec. 3 of Carlson
    (1994), https://arxiv.org/abs/math/9409227
    c           	      ó:  — t          t          dd¦  «        d¦  «         t          dt          ¦  «        dk    sJ ‚t          t          dd¦  «        ¦  «        sJ ‚t          dt	          dt          ¦  «        ¦  «        dk    sJ ‚t          ddgddgddgddgdd	gdd
gg¦  «        }t          t          j        t          j        d¦  «        ddt          j        d¦  «        dz  dg¦  «        }t          |¦  «        D ]"\  }}t          t          |Ž ||         ¦  «         Œ#d S )NrX   rž   r   r  g      @rt  r  ù       €      ð¿rô  rÝ   y
cÝƒÅñ?
cÝƒÅñ¿y=‹€Bžó?C†GÀÖ¿rÝ  yæª fŸãè?P×9lµbÉ?)
r   r!   r   r   r  r   r]   r   r   Ú	enumerate©r?   ró  Úexpected_resultsrz   Úarrs        r@   Útest_elliprczTestEllipCarlson.test_elliprcW  s7  € Ý�  1™œ qÑ)Ô)Ð)Ý�q�#‰Œ #Ò%Ð%Ð%Ð%Ý•W˜Q ‘]”]Ñ#Ô#Ð#Ð#Ð#Ý�q�' !¥S™/œ/Ñ*Ô*¨cÒ1Ð1Ð1Ð1Ý�s˜D�kØ˜S�kØ˜D�kØ˜d�mØ˜T�lØ˜T�lð$ñ %ô %ˆõ !¥"¤%Ý"$¤&¨¡+¤+Ø">Ø"CÝ"$¤&¨¡+¤+°Ñ"3Ø"Dð"Fñ Gô GÐõ   ‘o”oð 	@ð 	@‰FˆAˆsÝ�G S˜MÐ+;¸AÔ+>Ñ?Ô?Ð?Ð?ð	@ð 	@rC   c           
      ó„  — t          t          ddd¦  «        d¦  «         t          t          ddd¦  «        dz  d¦  «         t          ddt          ¦  «        dk    sJ ‚t          j        t          ddd¦  «        ¦  «        sJ ‚t          j        t          ddt          dd¦  «        ¦  «        ¦  «        sJ ‚t          j        t          ddt          dd¦  «        ¦  «        ¦  «        sJ ‚t          t          ddt          j        t          j        ¦  «        j	         dz  ¦  «        ¦  «        sJ ‚t          t          ddt          dd¦  «        ¦  «        ¦  «        sJ ‚t          g d	¢g d
¢g d¢g d¢g d¢g d¢g¦  «        }t          g d¢¦  «        }t          |¦  «        D ]"\  }}t          t          |Ž ||         ¦  «         Œ#d S )NrX   r   rJ   rÝ  gÌ`C•+ã?rž   rt  rM   )rž   rt  r‡   ©rt  rÝ  r  ©r  r¸  rt  ©rž   r  r¸  )rž   ù      ð¿      ð?r  )y       À      ð¿r¸  rÂ  )gfe¤_Áü?gÓÃ×i+"Å?g”P$Må?ytgöFUô?7¨·?@y™¢R<¹ý¿ý8á*Èî¿y{ ÿ6Í2ý?×zä°Œó¿)r   r"   r   r]   rÐ  r  r   r   râ   Útinyr   r¹  rº  s        r@   Útest_elliprdzTestEllipCarlson.test_elliprdk  sã  € Ý�  1 aÑ(Ô(¨!Ñ,Ô,Ð,Ý�  1 aÑ(Ô(¨3Ñ.Ð0FÑGÔGÐGÝ�q˜!�SÑ!Ô! SÒ(Ð(Ð(Ð(ÝŒx�  1 aÑ(Ô(Ñ)Ô)Ð)Ð)Ð)ÝŒx�  1¥g¨a°¡m¤mÑ4Ô4Ñ5Ô5Ð5Ð5Ð5ÝŒx�  1¥g¨a°¡m¤mÑ4Ô4Ñ5Ô5Ð5Ð5Ð5Ý•W˜Q ¥B¤H­R¬ZÑ$8Ô$8Ô$=Ð#=ÀÑ#CÑDÔDÑEÔEÐEÐEÐEÝ•W˜Q ¥7¨2¨q¡>¤>Ñ2Ô2Ñ3Ô3Ð3Ð3Ð3Ý�o�o�oØ%�o�oØ(Ð(Ð(Ø(Ð(Ð(Ø,Ð,Ð,Ø3Ð3Ð3ð5ñ 6ô 6ˆõ !ð "Dð "Dð "Dñ Eô EÐõ   ‘o”oð 	@ð 	@‰FˆAˆsÝ�G S˜MÐ+;¸AÔ+>Ñ?Ô?Ð?Ð?ð	@ð 	@rC   c           
      óÌ  — t          t          ddd¦  «        d¦  «         t          t          ddd¦  «        d¦  «         t          dt          d¦  «        dk    sJ ‚t          j        t          ddd¦  «        ¦  «        sJ ‚t          t          ddd¦  «        ¦  «        sJ ‚t          t          t          ¦  «        dd¦  «        dk    sJ ‚t          t          ddt          t           d¦  «        ¦  «        ¦  «        sJ ‚t          g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g¦  «        }t          g d¢¦  «        }t          |¦  «        D ]"\  }}t          t          |Ž ||         ¦  «         Œ#d S )NrX   r   rJ   g°PŸOùùô?rž   rM   )r‡   rt  rž   )r  r¸  rž   )r†   r‡   rž   ©rÂ  r  rž   r¿  rÀ  )rÂ  r  ù      ð?      ð¿)geQŸOùùô?çÊžu5Jªý?rÈ  yp\©óÜyé?õª¯øôkó¿g2åÎ°â?gHw‹îÐ´ð?y­‘|pFî?-6Fjá¿)	r   r#   r   r]   rÐ  r   r  r   r¹  rº  s        r@   Útest_elliprfzTestEllipCarlson.test_elliprfƒ  s¡  € Ý�  1 aÑ(Ô(¨!Ñ,Ô,Ð,Ý�  1 aÑ(Ô(Ð*@ÑAÔAÐAÝ�q�#˜qÑ!Ô! SÒ(Ð(Ð(Ð(ÝŒx�  1 aÑ(Ô(Ñ)Ô)Ð)Ð)Ð)Ý•W˜Q  2Ñ&Ô&Ñ'Ô'Ð'Ð'Ð'Ý•w�s‘|”| Q¨Ñ*Ô*¨cÒ1Ð1Ð1Ð1Ý•W˜Q ¥7­C¨4°Ñ#3Ô#3Ñ4Ô4Ñ5Ô5Ð5Ð5Ð5Ý�o�o�oØ(Ð(Ð(Ø%�o�oØ,Ð,Ð,Ø%�o�oØ(Ð(Ð(Ø1Ð1Ð1ð3ñ 4ô 4ˆõ !ð "Fð "Fð "Fñ Gô GÐõ   ‘o”oð 	@ð 	@‰FˆAˆsÝ�G S˜MÐ+;¸AÔ+>Ñ?Ô?Ð?Ð?ð	@ð 	@rC   c           	      óf  — t          t          ddd¦  «        d¦  «         t          t          ddd¦  «        d¦  «         t          t          ddd¦  «        d¦  «         t          j        t          dt          d¦  «        ¦  «        sJ ‚t          j        t          t          t          ¦  «        dd¦  «        ¦  «        sJ ‚t          g d¢g d¢g d¢g d¢g d¢g d	¢g¦  «        }t          t          j        d
ddddg¦  «        }t          |¦  «        D ]"\  }}t          t          |Ž ||         ¦  «         Œ#d S )NrX   r   r†   )rž   rê  rê  r¿  rÁ  rÆ  )r¸  rÂ  r  )rž   g8øÂdª`´?r  gˆL+©›û?g’Þ}�^Û?yæ—®û0•Ü?Ê‹µêW¥æ?yjèN”×?Ó^ßì·ÒÙ?géÈ£tð?)	r   r$   r]   rÐ  r   r  r   r   r¹  rº  s        r@   Útest_elliprgzTestEllipCarlson.test_elliprgœ  sX  € Ý�  1 aÑ(Ô(¨!Ñ,Ô,Ð,Ý�  1 aÑ(Ô(¨#Ñ.Ô.Ð.Ý�  1 aÑ(Ô(¨!Ñ,Ô,Ð,ÝŒx� ¥3¨Ñ*Ô*Ñ+Ô+Ð+Ð+Ð+ÝŒx�¥­¡¤¨a°Ñ3Ô3Ñ4Ô4Ð4Ð4Ð4ÝÐ'Ð'Ð'Ø%�o�oØ(Ð(Ð(Ø,Ð,Ð,Ø.Ð.Ð.Ø(Ð(Ð(ð*ñ +ô +ˆõ !¥"¤%Ø"1Ø"2Ø"DØ"DØ"1ð"3ñ 4ô 4Ðõ   ‘o”oð 	@ð 	@‰FˆAˆsÝ�G S˜MÐ+;¸AÔ+>Ñ?Ô?Ð?Ð?ð	@ð 	@rC   c                 ó  — t          t          dddd¦  «        d¦  «         t          ddt          d¦  «        dk    sJ ‚t          t          dddd¦  «        ¦  «        sJ ‚t          t          dddd¦  «        ¦  «        sJ ‚t          dddt          ¦  «        dk    sJ ‚t	          g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢g d¢g d¢g	¦  «        }t	          g d¢¦  «        }t          |¦  «        D ]"\  }}t          t          |Ž ||         ¦  «         Œ#d S )NrX   rž   r   rM   )rž   r‡   rt  rÝ  )rt  rÝ  r  r•   )rt  rÝ  r  rÂ  )r  r¸  rž   rt  )rÂ  ù      ð¿      ð¿r‡   rt  )r  r¸  rž   rÇ  )rÂ  rÍ  r‡   y      À      ð?)rt  rÝ  r  rö  )rt  rÝ  r  ç      À)	g ‡@Üè?gÔviéMÂ?yà»ŒmÁ?\�IísØ¿g'4Obú?g›o¾0¢ î?y¨ÏÛW7ý?xfOAªó?y�¸bvš�ã¿˜Ü¶Ÿ.ñ¿g·HQ€¥Ï?gjß¡B7EÀ¿)r   r%   r   r   r   r¹  rº  s        r@   Útest_elliprjzTestEllipCarlson.test_elliprj±  sn  € Ý�  1 a¨Ñ+Ô+¨QÑ/Ô/Ð/Ý�q˜!�S !Ñ$Ô$¨Ò+Ð+Ð+Ð+Ý•W˜Q  1 aÑ(Ô(Ñ)Ô)Ð)Ð)Ð)Ý•W˜R  A qÑ)Ô)Ñ*Ô*Ð*Ð*Ð*Ý�q˜!˜Q¥Ñ$Ô$¨Ò+Ð+Ð+Ð+ÝÐ*Ð*Ð*Ø*Ð*Ð*Ø0Ð0Ð0Ø-Ð-Ð-Ø6Ð6Ð6Ø2Ð2Ð2Ø<Ð<Ð<Ø+Ð+Ð+Ø+Ð+Ð+ð-ñ .ô .ˆõ !ð "5ð "5ð "5ñ 6ô 6Ðõ   ‘o”oð 	@ð 	@‰FˆAˆsÝ�G S˜MÐ+;¸AÔ+>Ñ?Ô?Ð?Ð?ð	@ð 	@rC   zInsufficient accuracy on 32-bitr  c                 ó’   — t          t          dddd¦  «        ddd¬¦  «         t          t          d	d
dd¦  «        ddd¬¦  «         d S )Ng   €ƒgq>g   `ÐW:g    H¸ÀBg   @Û˜ß?gR€yì|â>rí  r  r(  g   àÀ,@g    ¥xÛ=g   @§e•:g   `Ý½Ø>gî(óHœR)A)r   r%   r>   s    r@   Útest_elliprj_hardz"TestEllipCarlson.test_elliprj_hardÌ  s€   € å�Ð 5Ø 6Ø 3Ø 1ñ3ô 3ð ;Ø"¨ð	0ñ 	0ô 	0ð 	0õ 	�Ð 2Ø 5Ø 4Ø 5ñ7ô 7ð <Ø"¨ð	0ñ 	0ô 	0ð 	0ð 	0ð 	0rC   N)r3  r4  r5  r×  r½  rÄ  rÉ  rË  rÏ  r6  r7  r8  rÑ  r:  rC   r@   r¶  r¶  R  s©   € € € € € ðð ð@ð @ð @ð(@ð @ð @ð0@ð @ð @ð2@ð @ð @ð*@ð @ð @ð6 „[×ÒÐ?ÐÑ@Ô@ð0ð 0ñ AÔ@ð0ð 0ð 0rC   r¶  c                   ó*   — e Zd ZdZd„ Zd„ Zd„ Zd„ ZdS )Ú"TestEllipLegendreCarlsonIdentitiesz½Test identities expressing the Legendre elliptic integrals in terms
    of Carlson's symmetric integrals.  These identities can be found
    in the DLMF https://dlmf.nist.gov/19.25#i .
    c                 ó>  — t          j        ddd¦  «        | _        t          t          ¦  «        j        | _        ddt          dt          j        | j         ¦  «        z   dd¦  «        z  z  | _        t          j	        | j        g| j        | j        f¦  «        | _
        d S )NrÝ   r‡   rA  rt  rM   rž   )r]   r   Úm_n1_1r   r   ÚminÚmax_negÚlog2Ú
very_neg_mÚconcatenateÚ
ms_up_to_1r>   s    r@   Úsetup_classz.TestEllipLegendreCarlsonIdentities.setup_classâ  s“   € Ý”i  R¨Ñ.Ô.ˆŒå�V‘}”}Ô(ˆŒà ¥F¨2Ý+-¬7°D´L°=Ñ+AÔ+Añ,BØCEØ+.ñ%0ô %0ñ !0ñ 0ˆŒõ œ.¨4¬<¨.Ø*.¬/Ø*.¬+ð*7ñ 8ô 8ˆŒˆˆrC   c                 ór   — | j         }t          t          |¦  «        t          dd|z
  d¦  «        ¦  «         dS )z5Test identity:
        K(m) = R_F(0, 1-m, 1)
        rž   r‡   N)rÛ  r   r   r#   r  s     r@   Útest_kz)TestEllipLegendreCarlsonIdentities.test_kî  s7   € ð ŒOˆÝ�˜q™	œ	¥7¨2¨r°!©t°RÑ#8Ô#8Ñ9Ô9Ð9Ð9Ð9rC   c                 óâ   — t          t          ¦  «        j        }|dt          dt	          j        |¦  «         ¦  «        z  z  }t          t          |¦  «        t          d|d¦  «        ¦  «         dS )z\Test identity:
        K(m) = R_F(0, 1-m, 1)
        But with the ellipkm1 function
        rt  rž   r‡   N)	r   r   rÃ  r   r]   rØ  r   r    r#   )r?   rÃ  Úm1s      r@   Útest_km1z+TestEllipLegendreCarlsonIdentities.test_km1õ  s]   € õ •V‰}Œ}Ô!ˆà�B�˜r¥B¤G¨D¡M¤M >Ñ2Ô2Ñ2Ñ2ˆÝ� ™œ¥g¨b°"°bÑ&9Ô&9Ñ:Ô:Ð:Ð:Ð:rC   c           	      óx   — | j         }t          t          |¦  «        dt          dd|z
  d¦  «        z  ¦  «         dS )z9Test identity:
        E(m) = 2*R_G(0, 1-k^2, 1)
        rt  rž   r‡   N)rÛ  r   r   r$   r  s     r@   Útest_ez)TestEllipLegendreCarlsonIdentities.test_e   s<   € ð ŒOˆÝ�˜q™	œ	 2¥g¨b°"°Q±$¸Ñ&;Ô&;Ñ#;Ñ<Ô<Ð<Ð<Ð<rC   N)r3  r4  r5  r×  rÜ  rÞ  rá  rã  r:  rC   r@   rÓ  rÓ  Ü  sZ   € € € € € ðð ð

8ð 
8ð 
8ð:ð :ð :ð	;ð 	;ð 	;ð=ð =ð =ð =ð =rC   rÓ  c                   ó^   — e Zd Zd„ Zd„ Zdd„Zd„ Zd„ Zd„ Zd„ Z	d	„ Z
d
„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestErfc                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )Nr  g)‘;âT¯Ñ?r?  r   r[   )r   r  r   )r?   Úers     r@   r  zTestErf.test_erf
  s.   € ÝŒ[˜ÑÔˆÝ˜˜L¨v¸AÐ>Ñ>Ô>Ð>Ð>Ð>rC   c                 óv   — t          j        d¦  «        }t          g d¢¦  «        }t          ||dd¬¦  «         d S )NrÖ   )yTücJ¹5÷?÷=ê¯Wþ?yo²ìõ@ìœnò¾î@yŸÞÖ'Ê·@¦Ž´¯g	@y»"[
¯
@•ç,y]+@y¼ldì&@-;'j'>@rH  r   r[   )r   Ú	erf_zerosr   r   )r?   ÚerzÚerzrs      r@   Útest_erf_zeroszTestErf.test_erf_zeros  sO   € ÝÔ Ñ"Ô"ˆÝð -ð -ð -ñ .ô .ˆõ
 	˜˜T¨°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   r   c                 óš  — t           j                             d¦  «        }d}|                     d|¦  «        d|                     dd|¦  «        z  dz
  z  }|                     d|¦  «        d|                     dd|¦  «        z  dz
  z  }|d|z  z   }	t          j        d¬	¦  «        5   ||	¦  «        }
 ||¦  «        j        }t          j        |
¦  «        }|
|         }
|	|         }	t          j        |¦  «        }||         }||         }t          ||
|	||¬
¦  «         t          |||||¬
¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrS   rE  g{®Gáz”?rJ   r   rX   r  rù  ©Úallr(  )	r]   rc   rd   ÚparetoÚrandintrü  r   Úisfiniter3   )r?   rò  Ú
other_funcrR   r\   rj   rf   rå   r   r!  r1  Úw_realÚmasks                r@   Ú_check_variant_funczTestErf._check_variant_func  s©  € ÝŒi×#Ò# DÑ)Ô)ˆØˆØ�JŠJ�t˜QÑÔ 1 S§[¢[°°A°qÑ%9Ô%9Ñ#9¸AÑ#=Ñ>ˆØ�JŠJ�t˜QÑÔ 1 S§[¢[°°A°qÑ%9Ô%9Ñ#9¸AÑ#=Ñ>ˆØ��1‘‰HˆåŒ[˜XÐ&Ñ&Ô&ð 	Eð 	EØ�
˜1‘”ˆAØ�Z ‘]”]Ô'ˆFå”;˜q‘>”>ˆDØ�$”ˆAØ�$”ˆAå”;˜vÑ&Ô&ˆDØ˜D”\ˆFØ�$”ˆAõ ˜d A q¨t¸$Ð?Ñ?Ô?Ð?Ý˜d F¨A°D¸tÐDÑDÔDÐDð	Eð 	Eð 	Eñ 	Eô 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eð 	Eøøøð 	Eð 	Eð 	Eð 	Eð 	Eð 	Es   Â'BE Å EÅEc                 óN   — |                       t          j        d„ dd¬¦  «         d S )Nc                 ó0   — dt          j        | ¦  «        z
  S rt   ©r<   r  ©r!  s    r@   ú<lambda>z.TestErf.test_erfc_consistent.<locals>.<lambda>1  s   € �a�&œ* Q™-œ-Ñ'€ rC   r�   r'  r(  )rö  r<   r  r>   s    r@   Útest_erfc_consistentzTestErf.test_erfc_consistent.  s:   € Ø× Ò ÝŒKØ'Ð'ØØð	 	!ñ 	ô 	ð 	ð 	ð 	rC   c                 óL   — |                       t          j        d„ d¬¦  «         d S )Nc                 óZ   — t          j        | | z  ¦  «        t          j        | ¦  «        z  S ru  )r]   r   r<   r  rú  s    r@   rû  z/TestErf.test_erfcx_consistent.<locals>.<lambda>9  s   € •b”f˜Q˜q™S‘k”k¥F¤K°¡N¤NÑ2€ rC   r�   rQ   )rö  r<   Úerfcxr>   s    r@   Útest_erfcx_consistentzTestErf.test_erfcx_consistent6  s7   € Ø× Ò ÝŒLØ2Ð2Øð 	!ñ 	ô 	ð 	ð 	ð 	rC   c                 óL   — |                       t          j        d„ d¬¦  «         d S )Nc                 ó6   — dt          j        d| z  ¦  «        z  S )Nr¸  r  rù  rú  s    r@   rû  z.TestErf.test_erfi_consistent.<locals>.<lambda>@  s   € �c�FœJ r¨!¡tÑ,Ô,Ñ,€ rC   r�   rQ   )rö  r<   Úerfir>   s    r@   Útest_erfi_consistentzTestErf.test_erfi_consistent=  s7   € Ø× Ò ÝŒKØ,Ð,Øð 	!ñ 	ô 	ð 	ð 	ð 	rC   c                 óL   — |                       t          j        d„ d¬¦  «         d S )Nc                 óŒ   — t          t          ¦  «        dz  t          j        |  | z  ¦  «        z  t	          j        | ¦  «        z  S r½  )r   r   r]   r   r<   r  rú  s    r@   rû  z/TestErf.test_dawsn_consistent.<locals>.<lambda>G  s0   € •d�2‘h”h˜q‘j¥2¤6¨1¨"¨Q©$¡<¤<Ñ/µ&´+¸a±.´.Ñ@€ rC   r�   rQ   )rö  r<   rÓ   r>   s    r@   Útest_dawsn_consistentzTestErf.test_dawsn_consistentD  s7   € Ø× Ò ÝŒLØ@Ð@Øð 	!ñ 	ô 	ð 	ð 	ð 	rC   c                 ó´   — t           j        t           j         t           j        g}t           j        ddg}t          t	          j        |¦  «        |d¬¦  «         d S )NrM   rX   rÚ   rQ   )r]   r  r   r   r   r  ©r?   rO  r"  s      r@   Útest_erf_nan_infzTestErf.test_erf_nan_infK  sH   € Ý”�œ˜¥¤Ð(ˆÝ”F˜B �?ˆÝ�œ DÑ)Ô)¨8¸%Ð@Ñ@Ô@Ð@Ð@Ð@rC   c                 ó´   — t           j        t           j         t           j        g}t           j        ddg}t          t	          j        |¦  «        |d¬¦  «         d S )NrJ   r   rÚ   rQ   )r]   r  r   r   r   r  r	  s      r@   Útest_erfc_nan_infzTestErf.test_erfc_nan_infP  sH   € Ý”�œ˜¥¤Ð(ˆÝ”F˜A˜q�>ˆÝ�œ TÑ*Ô*¨H¸5ÐAÑAÔAÐAÐAÐArC   c                 óÈ   — t           j        t           j         t           j        g}t           j        t           j        dg}t          t	          j        |¦  «        |d¬¦  «         d S )Nr   rÚ   rQ   )r]   r  r   r   r   rÿ  r	  s      r@   Útest_erfcx_nan_infzTestErf.test_erfcx_nan_infU  sK   € Ý”�œ˜¥¤Ð(ˆÝ”F�BœF AÐ&ˆÝ�œ dÑ+Ô+¨X¸EÐBÑBÔBÐBÐBÐBrC   c                 óÞ   — t           j        t           j         t           j        g}t           j        t           j         t           j        g}t          t	          j        |¦  «        |d¬¦  «         d S r  )r]   r  r   r   r   r  r	  s      r@   Útest_erfi_nan_infzTestErf.test_erfi_nan_infZ  sO   € Ý”�œ˜¥¤Ð(ˆÝ”F�RœV˜G¥R¤VÐ,ˆÝ�œ TÑ*Ô*¨H¸5ÐAÑAÔAÐAÐAÐArC   c                 ó´   — t           j        t           j         t           j        g}t           j        ddg}t          t	          j        |¦  «        |d¬¦  «         d S )NrM  rž   rÚ   rQ   )r]   r  r   r   r   rÓ   r	  s      r@   Útest_dawsn_nan_infzTestErf.test_dawsn_nan_inf_  sI   € Ý”�œ˜¥¤Ð(ˆÝ”F˜D #Ð&ˆÝ�œ dÑ+Ô+¨X¸EÐBÑBÔBÐBÐBÐBrC   c                 óÔ   — t           j        t           j         t           j        g}t           j        t           j        dz  z   ddg}t          t	          j        |¦  «        |d¬¦  «         d S )Nr  r  rÚ   rQ   )r]   r  r   r   r   r0  r	  s      r@   Útest_wofz_nan_infzTestErf.test_wofz_nan_infd  sT   € Ý”�œ˜¥¤Ð(ˆÝ”F�RœV c™\Ñ)¨6°6Ð:ˆÝ�œ TÑ*Ô*¨H¸5ÐAÑAÔAÐAÐAÐArC   N)r   )r3  r4  r5  r  rì  rö  rü  r   r  r  r
  r  r  r  r  r  r:  rC   r@   rå  rå    sô   € € € € € ð?ð ?ð ?ð8ð 8ð 8ðEð Eð Eð Eð.ð ð ðð ð ðð ð ðð ð ðAð Að Að
Bð Bð Bð
Cð Cð Cð
Bð Bð Bð
Cð Cð Cð
Bð Bð Bð Bð BrC   rå  c                   ó   — e Zd Zd„ ZdS )Ú	TestEulerc                 ó¬  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |dgd¬¦  «         t          |ddgd¬¦  «         t          |g d¢d¬¦  «         t          j        d¦  «        }g d¢}t          d	d
¦  «        }t	          dd¦  «        D ]?}|dz  rt          ||         ¦  «         |d|z  <   Œ$t          ||         ¦  «        |d|z  <   Œ@t          j        d¬¦  «        5  t          ||z
  |z  ¦  «        }t          |¦  «        }	d d d ¦  «         n# 1 swxY w Y   t          |	ddd¬¦  «         d S )Nr   rX   rJ   rÚ   rQ   )rX   r   rM   rÜ   )rX   rX   rÖ   é=   ii  iYÅ  i­=) iÕâl   Q~¥ l   10ÿ[¿l   Õ$8gC
 l   í2�¼³l   ¹vö}Ju: )r×   Údé   rù  rî  rž   rj  r[   )
r   Úeulerr   r   rv   rw   r]   rü  r   r&  )
r?   Úeu0Úeu1Úeu2Úeu24Ú	mathworldÚcorrectrg   ÚerrÚerrmaxs
             r@   Ú
test_eulerzTestEuler.test_eulerk  s­  € ÝŒm˜AÑÔˆÝŒm˜AÑÔˆÝŒm˜AÑÔˆÝ˜˜a˜S uÐ-Ñ-Ô-Ð-Ý˜˜a ˜V¨%Ð0Ñ0Ô0Ð0Ý˜˜Z˜Z˜Z¨eÐ4Ñ4Ô4Ð4ÝŒ}˜RÑ Ô ˆð+ð +ð +ˆ	õ ˜˜cÑ"Ô"ˆÝ�q˜‘”ð 	3ð 	3ˆAØ�A‘ð 3Ý % i°¤lÑ 3Ô 3Ð3�˜˜!™‘�å$ Y¨q¤\Ñ2Ô2�˜˜!™‘�ÝŒ[˜XÐ&Ñ&Ô&ð 	ð 	Ý˜d 7™l¨GÑ3Ñ4Ô4ˆCÝ˜‘X”XˆFð	ð 	ð 	ñ 	ô 	ð 	ð 	ð 	ð 	ð 	ð 	øøøð 	ð 	ð 	ð 	õ 	˜ ¨'¸Ð:Ñ:Ô:Ð:Ð:Ð:s   Ä%D6Ä6D:Ä=D:N)r3  r4  r5  r$  r:  rC   r@   r  r  j  s#   € € € € € ð;ð ;ð ;ð ;ð ;rC   r  c                   ó2   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ ZdS )ÚTestExpc                 óR   — t          j        d¦  «        }d}t          ||¦  «         d S )NrJ   rH   )r   r  r   ©r?   ÚexÚexrls      r@   r  zTestExp.test_exp2„  s*   € ÝŒ\˜!‰_Œ_ˆØˆÝ�R˜ÑÔÐÐÐrC   c                 óX   — t          j        d¦  «        }d}t          ||dd¬¦  «         d S )Nræ  gÍ;fž @r?  r   r[   )r   r  r   ©r?   ÚexmÚexmrls      r@   Útest_exp2morezTestExp.test_exp2more‰  s3   € ÝŒl˜3ÑÔˆØˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 óX   — t          j        d¦  «        }d}t          ||dd¬¦  «         d S )NrJ   r#  r±   r   r[   ©r   r
  r   r(  s      r@   r  zTestExp.test_exp10Ž  s3   € ÝŒ]˜1ÑÔˆØˆÝ˜˜D t°!Ð4Ñ4Ô4Ð4Ð4Ð4rC   c                 óX   — t          j        d¦  «        }d}t          ||dd¬¦  «         d S )Nræ  gY—úí¤Ãs@r?  r   r[   r1  r,  s      r@   Útest_exp10morezTestExp.test_exp10more“  s3   € ÝŒm˜CÑ Ô ˆØˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 ó  — t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        f}t          d¦  «        dz
  t          d¦  «        dz
  t          d¦  «        dz
  f}t          ||dd¬¦  «         d S )NrJ   rŒ   rH   rX   r?  r   r[   ©r   r  r   r   r(  s      r@   r  zTestExp.test_expm1˜  ss   € ÝŒm˜AÑÔ¥¤¨aÑ 0Ô 0µ'´-ÀÑ2BÔ2BÐCˆÝ�A‘”˜‘
�C ™FœF Q™J­¨A©¬°©
Ð3ˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 ó  — t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        f}t          d¦  «        dz
  t          d¦  «        dz
  t          d¦  «        dz
  f}t          ||dd¬¦  «         d S )NrJ   çÍÌÌÌÌÌ @çš™™™™™@rX   r?  r   r[   r5  )r?   Úex1Úexrl1s      r@   Útest_expm1morezTestExp.test_expm1more�  ss   € ÝŒ}˜QÑÔ¥¤¨sÑ!3Ô!3µW´]À3Ñ5GÔ5GÐHˆÝ�Q‘”˜!‘�S ™XœX¨™\­3¨s©8¬8°a©<Ð8ˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   N)	r3  r4  r5  r  r/  r  r3  r  r;  r:  rC   r@   r&  r&  ƒ  sn   € € € € € ðð ð ð
9ð 9ð 9ð
5ð 5ð 5ð
9ð 9ð 9ð
7ð 7ð 7ð
9ð 9ð 9ð 9ð 9rC   r&  c                 óŒ  ‡— ˆfd„}d„ }t          | ¦  «        t          |¦  «        u s*J dt          | ¦  «        › dt          |¦  «        › �¦   «         ‚t          | t          j        ¦  «        rl| j        |j        k    sJ ‚ || |¦  «         t          |                      ¦   «         |                     ¦   «         ¦  «        D ]\  }}t          ||‰¬¦  «         ŒdS t          j        | ¦  «        rLt          j        |¦  «        r8t          t          | ¦  «        d¦  «        r || ¦  «        o ||¦  «         dS  dS  || |¦  «         dS )aÄ  
    Sharper assertion function that is stricter about matching types, not just values

    This is useful/necessary in some cases:
      * dtypes for arrays that have the same _values_ (e.g. element 1.0 vs 1)
      * distinguishing complex from real NaN
      * result types for scalars

    We still want to be able to allow a relative tolerance for the values though.
    The main logic comparison logic is handled by the xp_assert_* functions.
    c                 óT   •— ‰€t          | |¦  «         d S t          | |‰¬¦  «         d S )NrQ   )r-   r,   )rå   r   rR   s     €r@   Úassert_funcz(assert_really_equal.<locals>.assert_func¯  s7   ø€ Ø!% �˜˜1ÑÔÐÐÐµ?À1ÀaÈdÐ3SÑ3SÔ3SÐ3SÐ3SÐ3SrC   c                 ón   — t          j        | j        ¦  «        rt          j        | j        ¦  «        sJ ‚d S ru  )r]   r   r   r  ©rå   s    r@   Úassert_complex_nanz/assert_really_equal.<locals>.assert_complex_nan²  s1   € ÝŒx˜œÑÔÐ4¥B¤H¨Q¬VÑ$4Ô$4Ð4Ð4Ð4Ð4Ð4rC   ztypes not equal: z, rQ   rþ  N)
r<  Ú
isinstancer]   Úndarrayr  Úziprb   Úassert_really_equalr   r1   )rå   r   rR   r>  rA  Úelem_xÚelem_ys     `    r@   rE  rE  £  s�  ø€ ðTð Tð Tð Tð Tð5ð 5ð 5õ �‰7Œ7•d˜1‘g”gÐÐÐÐGµ4¸±7´7ÐGÐG½dÀ1¹g¼gÐGÐGÑÔÐõ �!•R”ZÑ Ô ð àŒw˜!œ'Ò!Ð!Ð!Ð!àˆ�A�qÑÔÐÝ! !§'¢'¡)¤)¨Q¯WªW©Y¬YÑ7Ô7ð 	;ð 	;‰NˆF�FÝ ¨°TÐ:Ñ:Ô:Ð:Ð:ð	;ð 	;å	Œ�!‰Œð �œ !™œð ­µd¸1±g´g¸sÑ)CÔ)Cð ØÐ˜1ÑÔÐ7Ð"4Ð"4°QÑ"7Ô"7Ð"7Ð"7Ð"7Ð7Ð7Ð7ð 	ˆ�A�qÑÔÐÐÐrC   c                   ó¨  — e Zd Zd„ Zej                             dg d¢¦  «        d„ ¦   «         Zej                             dg d¢¦  «        ej                             ddd	g¦  «        d
„ ¦   «         ¦   «         Zej                             ddd	g¦  «        d„ ¦   «         Z	ej                             dg d¢¦  «        d„ ¦   «         Z
ej                             dddg¦  «        ej                             dg d¢¦  «        d„ ¦   «         ¦   «         Zej                             ddd	g¦  «        ej                             dddg¦  «        ej                             dej         ej        d¦  «        ej        ej        dz  z    ej        d¦  «        ej        ej        dz   ej         ej         dz   d ej        d¦  «        g
g d¢¬¦  «        ej                             dej        ej        ej        g¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         Zej                             ddd ej        d!g¦  «        d"„ ¦   «         Zej                             d# ed$d%¦  «        ¦  «        ej                             ddd	g¦  «        d&„ ¦   «         ¦   «         Zej                             ddd	g¦  «        ej                             d'deej        ej        ej        ej        ej        ej         ej!        ej"        g
¦  «        ej                             d( edd%¦  «        ¦  «        d)„ ¦   «         ¦   «         ¦   «         Z#ej                             ddd	g¦  «        ej                             d* ed$d%¦  «        ¦  «        d+„ ¦   «         ¦   «         Z$ej         %                    d%¦  «        ej                             d'ej        ej         ej!        ej"        g¦  «        ej                             dg d¢¦  «        d,„ ¦   «         ¦   «         ¦   «         Z&ej                             d ed-d.d/¦  «        ¦  «        d0„ ¦   «         Z'ej                             d e( edd1¦  «        ¦  «         e( ed-d.d/¦  «        ¦  «        z   ¦  «        d2„ ¦   «         Z)d3„ Z*d4„ Z+ej                             d'ej        ej        ej        e,g¦  «        ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             d( edd%¦  «        ¦  «        ej                             d5g d$gd gej        gej        ej        dz  z   gej        d$ggg d6¢¬¦  «        d7„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z-ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             dd$d d8ej        ej        ej        dz  z   dgg d9¢¬¦  «        d:„ ¦   «         ¦   «         ¦   «         Z.ej                             d ed-d.d;¦  «        ¦  «        d<„ ¦   «         Z/ej                             d e( edd1¦  «        ¦  «         e( ed-d.d;¦  «        ¦  «        z   ¦  «        d=„ ¦   «         Z0d>„ Z1ej                             d'ej        ej        ej        e,g¦  «        ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             d( edd%¦  «        ¦  «        ej                             d5g d$gd gej        gej        ej        dz  z   gej        d$ggg d6¢¬¦  «        d?„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z2ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             dd$d d8ej        ej        ej        dz  z   dgg d9¢¬¦  «        d@„ ¦   «         ¦   «         ¦   «         Z3ej                             dA ed$d%¦  «        ¦  «        ej                             d edBdCdD¦  «        ¦  «        dE„ ¦   «         ¦   «         Z4ej                             dA e( ed$d%¦  «        ¦  «        d/dCgz   ¦  «        ej                             d e( edd1¦  «        ¦  «         e( ed1dFd;¦  «        ¦  «        z   ¦  «        dG„ ¦   «         ¦   «         Z5dH„ Z6ej                             d'ej        ej        ej        e,g¦  «        ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             d( edd%¦  «        ¦  «        ej                             d5g d$gd gej        gej        ej        dz  z   gej        d$ggg d6¢¬¦  «        dI„ ¦   «         ¦   «         ¦   «         ¦   «         ¦   «         Z7ej                             dddg¦  «        ej                             ddd	g¦  «        ej                             dA ed$d%¦  «        ¦  «        ej                             dd$d d8ej        ej        ej        dz  z   dgg d9¢¬¦  «        dJ„ ¦   «         ¦   «         ¦   «         ¦   «         Z8ej                             ddd	g¦  «        ej                             dg d¢¦  «        ej                             dAdKdLddMdd ej        g¦  «        dN„ ¦   «         ¦   «         ¦   «         Z9ej                             ddd	g¦  «        ej                             dg d¢¦  «        ej                             dAd! ej        d¦  «        gd!dOg¬¦  «        dP„ ¦   «         ¦   «         ¦   «         Z:ej                             dg d¢¦  «        ej                             dA ed$dQ¦  «        ¦  «        dR„ ¦   «         ¦   «         Z;dS„ Z<dS )TÚTestFactorialFunctionsc                 ó@  — |rt          j        ||d¬¦  «        S |dk    rt          j        ||¦  «        nd}t          j        |||z
  |z  ¦  «        t          j        ||z  dz   ¦  «        z  t          j        ||z  dz   ¦  «        z  }|t          j        |d¦  «        z  S )NT©rg   r  ÚzerorX   )r   Ú
factorialkr]   ÚmodÚpowerrB  rÙ  Úmaximum)r?   rf   rg   r  ÚextendÚrrO  s          r@   Úfactorialk_refz%TestFactorialFunctions.factorialk_refÈ  s¢   € Øð 	:ÝÔ% a¨1°DÐ9Ñ9Ô9Ð9à" fÒ,Ð,�BŒF�1�a‰LŒLˆL°!ˆÝŒx˜˜A ™E 1™9Ñ%Ô%­¬°a¸±c¸A±gÑ(>Ô(>Ñ>ÅÄÐPQÐRSÑPSÐVWÑPWÑAXÔAXÑXˆà•b”j  AÑ&Ô&Ñ&Ð&rC   zexact,extend))TrL  )FrL  )Fr  c                 óò   — ||dœ}t          j        t          j        di |¤Ž¦  «        sJ ‚t          j        t          j        di |¤Ž¦  «        sJ ‚t          j        t          j        dddi|¤Ž¦  «        sJ ‚d S )N©r  rQ  rX   rg   rŒ   ©rX   )r]   Úisscalarr   Ú	factorialÚ
factorial2rM  )r?   r  rQ  Úkws       r@   Ú"test_factorialx_scalar_return_typez9TestFactorialFunctions.test_factorialx_scalar_return_typeÑ  s‘   € ð ¨Ð/Ð/ˆÝŒ{�7Ô,Ð5Ð5°"Ð5Ð5Ñ6Ô6Ð6Ð6Ð6ÝŒ{�7Ô-Ð6Ð6°2Ð6Ð6Ñ7Ô7Ð7Ð7Ð7ÝŒ{�7Ô-Ð;Ð;°1Ð;¸Ð;Ð;Ñ<Ô<Ð<Ð<Ð<Ð<Ð<rC   rf   )rM   rõ  r  r  TFc                 óÒ   — d|i}t          t          j        |fi |¤Žd¦  «         t          t          j        |fi |¤Žd¦  «         t          t          j        |fddi|¤Žd¦  «         d S )Nr  r   rg   rŒ   )r   r   rX  rY  rM  )r?   r  rf   rZ  s       r@   Ú$test_factorialx_negative_extend_zeroz;TestFactorialFunctions.test_factorialx_negative_extend_zeroÙ  s‚   € ð �uÐˆÝ•WÔ& qÐ/Ð/¨BÐ/Ð/°Ñ3Ô3Ð3Ý•WÔ'¨Ð0Ð0¨RÐ0Ð0°!Ñ4Ô4Ð4Ý•WÔ'¨Ð5Ð5¨QÐ5°"Ð5Ð5°qÑ9Ô9Ð9Ð9Ð9rC   c                 ó@  — d|i}d}g d¢}t          j        g d¢|rt          nt           j        ¬¦  «        }t	          t          j        |fi |¤Ž||¬¦  «         t	          t          j        |fi |¤Ž||¬¦  «         t	          t          j        |fddi|¤Ž||¬¦  «         d S )	Nr  rÚ   )éûÿÿÿrK  r   rX   )r   r   rX   rX   r  rQ   rg   rŒ   )	r]   r   Ú
native_intrâ   rE  r   rX  rY  rM  )r?   r  rZ  rR   rf   r"  s         r@   Ú*test_factorialx_negative_extend_zero_arrayzATestFactorialFunctions.test_factorialx_negative_extend_zero_arrayá  sÀ   € à�uÐˆØˆØˆNˆNˆå”8˜L˜L˜L¸eÐ0Sµ
°
ÍÌÐTÑTÔTˆÝ�GÔ-¨aÐ6Ð6°2Ð6Ð6¸ÀtÐLÑLÔLÐLÝ�GÔ.¨qÐ7Ð7°BÐ7Ð7¸ÈÐMÑMÔMÐMÝ�GÔ.¨qÐ<Ð<°AÐ<¸Ð<Ð<¸hÈTÐRÑRÔRÐRÐRÐRrC   ©gš™™™™™ñ¿gš™™™™™Àgffffff
Àc                 óH  — ddi}ddddœ}ddd	dœ}d
dddœ}d}t          t          j        |fi |¤Ž||         |¬¦  «         t          t          j        |fi |¤Ž||         |¬¦  «         t          t          j        |fddi|¤Ž||         |¬¦  «         t          t          j        |gfi |¤Žd         ||         |¬¦  «         t          t          j        |gfi |¤Žd         ||         |¬¦  «         t          t          j        |gfddi|¤Žd         ||         |¬¦  «         d S )NrQ  r  gRc/a_%Àg:\Oag@g*BZ'÷¿rb  go	08G)ñ?goíNb]ÒÀg¢MxcQÞï¿g¡N«yŠç?g†=uÌò?gÙ7ÁKÓÀç [n‡ë<rQ   rg   rŒ   r   )r   r   rX  rY  rM  )r?   rf   rZ  Úexp_1Úexp_2Úexp_krR   s          r@   Ú'test_factorialx_negative_extend_complexz>TestFactorialFunctions.test_factorialx_negative_extend_complexì  sƒ  € à˜	Ð"ˆØ-Ø.Ø.ð0ð 0ˆð .Ø-Ø.ð0ð 0ˆð /Ø-Ø-ð/ð /ˆð ˆÝ�Ô)¨!Ð2Ð2¨rÐ2Ð2°E¸!´HÀ4ÐHÑHÔHÐHÝ�Ô*¨1Ð3Ð3°Ð3Ð3°U¸1´XÀDÐIÑIÔIÐIÝ�Ô*¨1Ð8Ð8°Ð8°RÐ8Ð8¸%À¼(ÈÐNÑNÔNÐNÝ�Ô)¨1¨#Ð4Ð4°Ð4Ð4°QÔ7¸¸q¼ÈÐMÑMÔMÐMÝ�Ô*¨A¨3Ð5Ð5°"Ð5Ð5°aÔ8¸%À¼(ÈÐNÑNÔNÐNÝ�Ô*¨A¨3Ð:Ð:°!Ð:°rÐ:Ð:¸1Ô=¸uÀQ¼xÈdÐSÑSÔSÐSÐSÐSrC   r  r   r  Ún_outerc                 óX   ‡— ddiŠˆfd„} |||z   ¦  «          |d|z  |z   ¦  «         d S )NrQ  r  c                 ó.  •— t          t          | ¦  «        d¦  «        }t          j        d¦  «        }|rt          j        d¦  «        nt          j        d¦  «        }t          t          j        | fi ‰¤Ž|¦  «         t          t          j        | dz  fi ‰¤Ž|¦  «         t          t          j	        | dz  fddi‰¤Ž|¦  «         d}t          t          j	        | |z  fd|i‰¤Ž|¦  «         t          t          j        | gfi ‰¤Žd         |¦  «         t          t          j        | dz  gfi ‰¤Žd         |¦  «         t          t          j	        | dz  gfddi‰¤Žd         |¦  «         t          t          j	        | |z  gfd|i‰¤Žd         |¦  «         d S )	Nrþ  únan+nanjr  rJ   rŒ   rg   y      ø?       Àr   )
r1   r<  r]   Ú
complex128râ   rE  r   rX  rY  rM  )rf   Ú
complexifyÚcomplex_nanr   rþ  rZ  s        €r@   Ú_checkzTTestFactorialFunctions.test_factorialx_negative_extend_complex_poles.<locals>._check	  sµ  ø€ Ý%¥d¨1¡g¤g¨sÑ3Ô3ˆJåœ-¨
Ñ3Ô3ˆKØ/9ÐP•"”- 
Ñ+Ô+Ð+½r¼zÈ%Ñ?PÔ?PˆCå¥Ô 1°!Ð :Ð :°rÐ :Ð :¸CÑ@Ô@Ð@Ý¥Ô 2°1°q±5Ð ?Ð ?¸BÐ ?Ð ?ÀÑEÔEÐEÝ¥Ô 2°1°q±5Ð DÐ D¸AÐ DÀÐ DÐ DÀcÑJÔJÐJàˆAÝ¥Ô 2°1°q±5Ð DÐ D¸AÐ DÀÐ DÐ DÀkÑRÔRÐRå¥Ô 1°1°#Ð <Ð <¸Ð <Ð <¸QÔ ?ÀÑEÔEÐEÝ¥Ô 2°A¸±E°7Ð AÐ A¸bÐ AÐ AÀ!Ô DÀcÑJÔJÐJÝ¥Ô 2°A¸±E°7Ð FÐ F¸aÐ FÀ2Ð FÐ FÀqÔ IÈ3ÑOÔOÐOÝ¥Ô 2°A¸±E°7Ð FÐ F¸aÐ FÀ2Ð FÐ FÀqÔ IÈ;ÑWÔWÐWÐWÐWrC   i † r:  )r?   ri  r  rp  rZ  s       @r@   Ú-test_factorialx_negative_extend_complex_poleszDTestFactorialFunctions.test_factorialx_negative_extend_complex_poles 	  sc   ø€ ð ˜	Ð"ˆð	Xð 	Xð 	Xð 	Xð 	Xð( 	ˆˆw˜‰~ÑÔÐàˆˆw˜Ñ  4Ñ'Ñ(Ô(Ð(Ð(Ð(rC   ÚboxedrQ  rL  r  r  r  rl  NÚnat)
ÚNaNznp.float64('nan')ú	NaN+i*NaNznp.complex128('nan+nanj')r   zinf+0iz-infz-inf+0iÚNoneÚNaT)ÚidsÚ
factorialxc                 óê  — d|dœ}|t           j        k    rd|d<   |rg d¢ndddt          d ¦  «        g}|t           j        k    rdnddg}t	          t          |¦  «        |¦  «        sDt          j        t          d	¬
¦  «        5   ||r|gn|fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t	          t          |¦  «        |¦  «        rJ|dk    rDt          j        t          d¬
¦  «        5   ||r|gn|fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S |dk    ot	          t          |¦  «        d¦  «        }|rt          j	        d¦  «        nt          j
        d¦  «        }	t	          t          |¦  «        d¦  «        rLt          j        |¦  «        r8t          j
        |dk    rdnd¦  «        }
|dk    rt          j
        d¦  «        n|
}	|r ||gfi |¤Žd         n ||fi |¤Ž}t          ||	¦  «         d S )NFrU  rŒ   rg   ©rz   rj  rþ  rz   rj  rþ  úUnsupported data type.*rú  r  úIn order to use non-integer.*rl  r  rL  r   r   )r   rM  r<  rX  r1   r6  r   r7  r]   rm  râ   rÐ  rE  )r?   ry  rf   rQ  rr  rZ  Úpermissible_typesÚtypes_need_complex_extrn  r"  Úneg_inf_resultr‘  s               r@   Útest_factorialx_inf_nanz.TestFactorialFunctions.test_factorialx_inf_nan	  sÖ  € ð& ¨Ð/Ð/ˆØ�Ô+Ò+Ð+ØˆBˆs‰Gð 05ÐU˜O˜O˜O˜O¸3ÀÀSÍ$ÈtÉ*Ì*Ð:UÐà(2µgÔ6GÒ(GÐ(G  ÈcÐSVÈZÐå�D ™GœGÐ%6Ñ7Ô7ð 	2Ý”�zÐ1JÐKÑKÔKð 6ð 6Ø�
 %Ð.˜A˜3˜3¨QÐ5Ð5°"Ð5Ð5Ð5ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6ð 6ð 6å�$˜q™'œ'Ð#9Ñ:Ô:ð 	2¸vÈÒ?RÐ?RÝ”�zÐ1PÐQÑQÔQð 6ð 6Ø�
 %Ð.˜A˜3˜3¨QÐ5Ð5°"Ð5Ð5Ð5ð6ð 6ð 6ñ 6ô 6ð 6ð 6ð 6ð 6ð 6ð 6ð 6øøøð 6ð 6ð 6ð 6ð 6ð 6ð ! IÒ-ÐMµ<ÅÀQÁÄÈÑ3MÔ3MˆJð 5?ÐU•r”} ZÑ0Ô0Ð0ÅBÄJÈuÑDUÔDUˆHå�D ™GœG SÑ)Ô)ð L­b¬h°q©k¬kð Lå!#¤°&¸FÒ2BÐ2B¨A¨AÈÑ!OÔ!O�Ø12°Q²°�2œ: eÑ,Ô,Ð,¸^�à16ÐO�Z�Z  Ð*Ð* rÐ*Ð*¨1Ô-Ð-¸J¸JÀqÐ<OÐ<OÈBÐ<OÐ<OˆFÝ ¨Ñ1Ô1Ð1Ð1Ð1s$   ÂBÂB"Â%B"Ã)DÄD	ÄD	rö  Ústringc                 óÂ  — t          j        t          d¬¦  «        5  t          j        d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          j        d|¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          j        ddd|¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzargument `extend` must be.*rú  rX   )rQ  rŒ   T©rg   r  rQ  )r6  r   r7  r   rX  rY  rM  )r?   rQ  s     r@   Útest_factorialx_raises_extendz4TestFactorialFunctions.test_factorialx_raises_extendN	  s¬  € åŒ]�:Ð-JÐKÑKÔKð 	0ð 	0ÝÔ˜a¨Ð/Ñ/Ô/Ð/ð	0ð 	0ð 	0ñ 	0ô 	0ð 	0ð 	0ð 	0ð 	0ð 	0ð 	0øøøð 	0ð 	0ð 	0ð 	0åŒ]�:Ð-JÐKÑKÔKð 	1ð 	1ÝÔ˜q¨Ð0Ñ0Ô0Ð0ð	1ð 	1ð 	1ñ 	1ô 	1ð 	1ð 	1ð 	1ð 	1ð 	1ð 	1øøøð 	1ð 	1ð 	1ð 	1åŒ]�:Ð-JÐKÑKÔKð 	Bð 	BÝÔ˜q A¨T¸&ÐAÑAÔAÐAð	Bð 	Bð 	Bñ 	Bô 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bøøøð 	Bð 	Bð 	Bð 	Bð 	Bð 	Bs3   œ?¿AÁAÁ%BÂBÂBÂ.CÃCÃCÚlevelsrX   rÖ   c                 óØ  ‡‡— dˆfd„	Šˆˆfd„}t          j         ‰ddg‰¬¦  «        ¦  «        }dt          j        d¦  «        gdt	          j        dd	¬
¦  «        gdt	          j        ddd	¬
¦  «        gdœ} |t	          j        ||¬
¦  «        |d         ¦  «          |t	          j        ||¬
¦  «        |d         ¦  «          |t	          j        |d|¬
¦  «        |d         ¦  «         d S )NrX   c                 ó6   •— |dk    r| S  ‰| | g|dz
  ¦  «        S )z¥
            Double x and nest it k times

            For example:
            >>> _nest_me([3, 4], 2)
            [[[3, 4], [3, 4]], [[3, 4], [3, 4]]]
            r   rX   r:  ©rå   rg   Ú_nest_mes     €r@   rŠ  zDTestFactorialFunctions.test_factorialx_array_shape.<locals>._nest_meZ	  s-   ø€ ð �AŠvˆvØ�à�x  A ¨¨!©Ñ,Ô,Ð,rC   c                 óÞ   •— t          j         ‰|‰¬¦  «        t          ¬¦  «        }t          |                      t           j        ¦  «         |j        t           j        ¦  «        ¦  «         d S )N©rg   r  )r]   r   Úobjectr   rß   râ   )r  Únucleusr   rŠ  r†  s      €€r@   rp  zBTestFactorialFunctions.test_factorialx_array_shape.<locals>._checkg	  sZ   ø€ Ý”(˜8˜8 G¨vÐ6Ñ6Ô6½fÐEÑEÔEˆCõ ˜CŸJšJ¥r¤zÑ2Ô2°J°C´J½r¼zÑ4JÔ4JÑKÔKÐKÐKÐKrC   rÖ   r×   rŒ  r  r|   Tr  r&  rŒ   rm  rJ   rV  )r]   r   ÚmathrX  r   rY  rM  )r?   r†  r  rp  rf   Úexp_nucleusrŠ  s    `    @r@   Útest_factorialx_array_shapez2TestFactorialFunctions.test_factorialx_array_shapeW	  s8  øø€ ð	-ð 	-ð 	-ð 	-ð 	-ð 	-ð	Lð 	Lð 	Lð 	Lð 	Lð 	Lõ ŒH�X�X˜q "˜g¨Ð0Ñ0Ô0Ñ1Ô1ˆØ¥¤¨rÑ 2Ô 2Ð3à�wÔ1°"¸DÐAÑAÔAÐBØ�wÔ1°"°a¸tÐDÑDÔDÐEðGð Gˆð
 	ˆ�wÔ  ¨%Ð0Ñ0Ô0°+¸a´.ÑAÔAÐAØˆ�wÔ! !¨5Ð1Ñ1Ô1°;¸q´>ÑBÔBÐBØˆ�wÔ! ! Q¨eÐ4Ñ4Ô4°kÀ!´nÑEÔEÐEÐEÐErC   r  Údimc                 ó¶  — t          j        d||¬¦  «        }ddddœ}t          t          j        ||¬¦  «        t          j        |d         |¬	¦  «        ¦  «         t          t          j        ||¬¦  «        t          j        |d
         |¬	¦  «        ¦  «         t          t          j        |d|¬¦  «        t          j        |d         |¬	¦  «        ¦  «         d S )NrÖ   )r  Úndminr  r|   r&  rm  r  rX   ©r”  rJ   rŒ   )r]   r   r   r   rX  rY  rM  )r?   r’  r  r  rf   r   s         r@   Útest_factorialx_array_dimensionz6TestFactorialFunctions.test_factorialx_array_dimensionw	  sã   € õ ŒH�Q˜e¨3Ð/Ñ/Ô/ˆØ˜" Ð$Ð$ˆÝ�Ô)¨!°5Ð9Ñ9Ô9Ýœ  Q¤¨sÐ3Ñ3Ô3ñ	5ô 	5ð 	5å�Ô*¨1°EÐ:Ñ:Ô:Ýœ  Q¤¨sÐ3Ñ3Ô3ñ	5ô 	5ð 	5å�Ô*¨1¨a°uÐ=Ñ=Ô=Ýœ  Q¤¨sÐ3Ñ3Ô3ñ	5ô 	5ð 	5ð 	5ð 	5rC   Úlevelc                 óÀ  ‡— dˆfd„	Š ‰dg|dz
  ¬¦  «        }ddddœ}|rt           nt          } |t          j        ||¬	¦  «        t	          j        |d         |¬
¦  «        ¦  «          |t          j        ||¬	¦  «        t	          j        |d         |¬
¦  «        ¦  «          |t          j        |d|¬	¦  «        t	          j        |d         |¬
¦  «        ¦  «         d S )NrX   c                 ó4   •— |dk    r| S  ‰| g|dz
  ¦  «        S r÷   r:  r‰  s     €r@   rŠ  zCTestFactorialFunctions.test_factorialx_array_like.<locals>._nest_meŠ	  s)   ø€ Ø�AŠvˆvØ�à�x   Q q¡SÑ)Ô)Ð)rC   rÖ   rŒ  r  r|   r&  rm  r  r•  rJ   rŒ   rV  )r   r   r   rX  r]   r   rY  rM  )r?   r—  r  rf   r�  r>  rŠ  s         @r@   Útest_factorialx_array_likez1TestFactorialFunctions.test_factorialx_array_like‡	  s  ø€ ð	*ð 	*ð 	*ð 	*ð 	*ð 	*ð ˆH�a�S˜E !™GÐ$Ñ$Ô$ˆØ "¨Ð,Ð,ˆØ,1ÐFÕ(Ð(µˆØˆ•GÔ% a¨uÐ5Ñ5Ô5Ý”H˜[¨œ^°5Ð9Ñ9Ô9ñ	;ô 	;ð 	;àˆ•GÔ& q°Ð6Ñ6Ô6Ý”H˜[¨œ^°5Ð9Ñ9Ô9ñ	;ô 	;ð 	;àˆ•GÔ& q¨!°5Ð9Ñ9Ô9Ý”H˜[¨œ^°5Ð9Ñ9Ô9ñ	;ô 	;ð 	;ð 	;ð 	;rC   c                 óŒ  ‡‡— ||dœŠ|rt           nt          Šˆˆfd„}ˆˆfd„} | |d¦  «        ¦  «          | |d¦  «        ¦  «          |t          j        d|¬¦  «        ¦  «          |t          j        ddg|¬¦  «        ¦  «          |t          j        |¦  «        j        ¦  «        }|t          j        k    r‘|rd S t          j                             t          j	        ¦  «        dk    r^ | ||dz
  ¦  «        ¦  «          |t          j        |dz
  |¬¦  «        ¦  «          |t          j        |dz
  g|¬¦  «        ¦  «         d S d S |t          j
        t          j        fv s|sY ||dz
  ¦  «          |t          j        |dz
  |¬¦  «        ¦  «          |t          j        |dz
  |dz
  g|¬¦  «        ¦  «         d S d S )	NrU  c                 ó²  •— t          | t          j        ¦  «        r|                      t          j        ¦  «        nt          j        | ¦  «        } ‰t          j        | fi ‰¤Žt          j        |fi ‰¤Ž¦  «          ‰t          j        | fi ‰¤Žt          j        |fi ‰¤Ž¦  «          ‰t          j        | fddi‰¤Žt          j        |fddi‰¤Ž¦  «         d S )Nrg   rŒ   )	rB  r]   rC  rß   r+  r   rX  rY  rM  )rf   Ún_refr>  rZ  s     €€r@   rp  z;TestFactorialFunctions.test_factorialx_uint.<locals>._check¢	  sù   ø€ Ý*4°Q½¼
Ñ*CÔ*CÐT�A—H’H�RœXÑ&Ô&Ð&ÍÌÐRSÉÌˆEØˆK�Ô)¨!Ð2Ð2¨rÐ2Ð2µGÔ4EÀeÐ4RÐ4RÈrÐ4RÐ4RÑSÔSÐSØˆK�Ô*¨1Ð3Ð3°Ð3Ð3µWÔ5GÈÐ5TÐ5TÐQSÐ5TÐ5TÑUÔUÐUØˆK�Ô*¨1Ð8Ð8°Ð8°RÐ8Ð8ÝÔ*¨5Ð<Ð<°AÐ<¸Ð<Ð<ñ>ô >ð >ð >ð >rC   c                 óH  •— t          j        ¦   «         5  t          j        dt          ¦  «         | dz  }d d d ¦  «         n# 1 swxY w Y    ‰t	          j        | fi ‰¤Ž|¦  «          ‰t	          j        | fi ‰¤Ž|¦  «          ‰t	          j        | fddi‰¤Ž|¦  «         d S )Nrù  r   rg   rŒ   )rú  rû  Úsimplefilterrý  r   rX  rY  rM  )rf   Ú
shaped_infr>  rZ  s     €€r@   Ú
_check_infz?TestFactorialFunctions.test_factorialx_uint.<locals>._check_inf¨	  sÿ   ø€ åÔ(Ñ*Ô*ð #ð #ÝÔ% hµÑ?Ô?Ð?Ø ™U�
ð#ð #ð #ñ #ô #ð #ð #ð #ð #ð #ð #øøøð #ð #ð #ð #ð ˆK�Ô)¨!Ð2Ð2¨rÐ2Ð2°JÑ?Ô?Ð?ØˆK�Ô*¨1Ð3Ð3°Ð3Ð3°ZÑ@Ô@Ð@ØˆK�Ô*¨1Ð8Ð8°Ð8°RÐ8Ð8¸*ÑEÔEÐEÐEÐEs   • AÁAÁAr   rX   r  z2.0.0rJ   )r   r   r]   r   r%  r&  Úuint64ÚlibÚNumpyVersionÚ__version__Úuint8Úuint16)	r?   r  rQ  r  rp  r¡  r9  r>  rZ  s	          @@r@   Útest_factorialx_uintz+TestFactorialFunctions.test_factorialx_uintš	  s'  øø€ ð ¨Ð/Ð/ˆØ,1ÐFÕ(Ð(µˆð	>ð 	>ð 	>ð 	>ð 	>ð 	>ð	Fð 	Fð 	Fð 	Fð 	Fð 	Fð 	ˆˆuˆu�Q‰xŒxÑÔÐØˆˆuˆu�Q‰xŒxÑÔÐØˆ�rŒx˜ Ð'Ñ'Ô'Ñ(Ô(Ð(Øˆ�rŒx˜˜A˜ eÐ,Ñ,Ô,Ñ-Ô-Ð-àˆE•"”(˜5‘/”/Ô%Ñ&Ô&ˆà•B”IÒÐØð 9à�Ý”×$Ò$¥R¤^Ñ4Ô4¸Ò?Ð?à�
˜5˜5  1¡™:œ:Ñ&Ô&Ð&Ø�
�2œ8 A a¡C¨uÐ5Ñ5Ô5Ñ6Ô6Ð6Ø�
�2œ8 Q q¡S E°Ð7Ñ7Ô7Ñ8Ô8Ð8Ð8Ð8ð	 @Ð?ð
 •r”x¥¤Ð+Ð+Ð+°5Ð+ð ˆF�1�Q‘3‰KŒKˆKØˆF•2”8˜A˜a™C uÐ-Ñ-Ô-Ñ.Ô.Ð.ØˆF•2”8˜Q˜q™S ! A¡#˜J¨eÐ4Ñ4Ô4Ñ5Ô5Ð5Ð5Ð5ð ,Ð+rC   rT   r  r&  c                 ód  — t           j        dk    rdnd}t          t          t	          j        |d¬¦  «        ¦  «        t	          j        |d¬¦  «        |¬¦  «         t          t	          j        |gd¬¦  «                             t          ¦  «        t	          j        |gd¬¦  «        |¬¦  «         d S )Nr6   ç´àø¤tã0=rÚ   Tr  FrQ   )ÚsysÚplatformr   rw   r   rX  rß   ©r?   rf   rR   s      r@   Útest_factorial_accuracyz.TestFactorialFunctions.test_factorial_accuracyÊ	  sÃ   € õ
 œ¨Ò/Ð/ˆuˆu°Uˆå��gÔ/°¸Ð>Ñ>Ô>Ñ?Ô?ÝÔ)¨!°5Ð9Ñ9Ô9Àð	Fñ 	Fô 	Fð 	Få�Ô)¨1¨#°TÐ:Ñ:Ô:×AÒAÅ%ÑHÔHÝÔ)¨1¨#°UÐ;Ñ;Ô;À$ð	Hñ 	Hô 	Hð 	Hð 	Hð 	HrC   é   c                 óX  — t          j        |¦  «        }t          |t          j        |d¬¦  «        ¦  «         t          |t          j        |gd¬¦  «        d         ¦  «         t          j        dk    rdnd}t          |¦  «        }t          |t          j        |d¬¦  «        |¬¦  «         t          |t          j        |gd¬¦  «        d         |¬¦  «         dd	d
œ}t          |t          j        |fi |¤Ž|¬¦  «         t          |t          j        |gfi |¤Žd         |¬¦  «         d S )NTr  r   r6   ç›+¡†›„6=rÚ   FrQ   r  rU  )r�  rX  r   r   r«  r¬  rw   r   ©r?   rf   r!  rR   rZ  s        r@   Útest_factorial_int_referencez3TestFactorialFunctions.test_factorial_int_referenceÖ	  s7  € õ ”. Ñ#Ô#ˆÝ˜7¥GÔ$5°a¸tÐ$DÑ$DÔ$DÑEÔEÐEÝ˜7¥GÔ$5°q°cÀÐ$FÑ$FÔ$FÀqÔ$IÑJÔJÐJåœ¨Ò/Ð/ˆuˆu°Uˆå˜‘.”.ˆÝ˜¥Ô!2°1¸EÐ!BÑ!BÔ!BÈÐNÑNÔNÐNÝ˜¥Ô!2°A°3¸eÐ!DÑ!DÔ!DÀQÔ!GÈdÐSÑSÔSÐSð ¨	Ð2Ð2ˆÝ˜¥Ô!2°1Ð!;Ð!;¸Ð!;Ð!;À$ÐGÑGÔGÐGÝ˜¥Ô!2°A°3Ð!=Ð!=¸"Ð!=Ð!=¸aÔ!@ÀtÐLÑLÔLÐLÐLÐLrC   c                 óä   — d„ } |dd¦  «          |dd¦  «          |dd¦  «          |dd	¦  «          |d
d¦  «          |dd¦  «          |dd¦  «          |dd¦  «          |dd¦  «         d S )Nc                 óô  — t           j        dk    rdnd}t          t          j        | ¦  «        ||¬¦  «         t          t          j        | g¦  «        d         ||¬¦  «         t          j        t          d¬¦  «        5  t          j        | d¬	¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t          j        | gd¬	¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
Nr6   r±  rÚ   rQ   r   ú`exact=True` only supports.*rú  Tr  )r«  r¬  r   r   rX  r6  r   r7  )rf   r"  rR   s      r@   rp  zETestFactorialFunctions.test_factorial_float_reference.<locals>._checkê	  sq  € ÝœL¨GÒ3Ð3�5�5¸ˆDÝ�GÔ-¨aÑ0Ô0°(ÀÐFÑFÔFÐFÝ�GÔ-¨q¨cÑ2Ô2°1Ô5°xÀdÐKÑKÔKÐKå”�zÐ1OÐPÑPÔPð 1ð 1ÝÔ! !¨4Ð0Ñ0Ô0Ð0ð1ð 1ð 1ñ 1ô 1ð 1ð 1ð 1ð 1ð 1ð 1øøøð 1ð 1ð 1ð 1å”�zÐ1OÐPÑPÔPð 3ð 3ÝÔ! 1 #¨TÐ2Ñ2Ô2Ð2ð3ð 3ð 3ñ 3ô 3ð 3ð 3ð 3ð 3ð 3ð 3ð 3øøøð 3ð 3ð 3ð 3ð 3ð 3s$   Á?B"Â"B&Â)B&ÃC-Ã-C1Ã4C1rA  gŒê�r„Ñï?gÃõ(\�Âñ?gö“þ÷cÓð?g333333@g»”ð�4¯s@g333333&@gù¿ÀÞ‰OˆAçfffff¦@@g çÈ	Â²Gg     ÀK@gC$¡ŠÇÓJOgÍÌÌÌÌlS@gæØ á}â³Wgš™™™™ùX@gXÖ>Ü%±`g’\þCúSe@gG=Âüïr:  ©r?   rp  s     r@   Útest_factorial_float_referencez5TestFactorialFunctions.test_factorial_float_referenceé	  sÄ   € ð	3ð 	3ð 	3ð 	ˆˆtÐ2Ñ3Ô3Ð3ØˆˆtÐ2Ñ3Ô3Ð3ØˆˆtÐ2Ñ3Ô3Ð3ØˆˆtÐ2Ñ3Ô3Ð3ØˆˆtÐ6Ñ7Ô7Ð7ØˆˆtÐ6Ñ7Ô7Ð7ØˆˆtÐ7Ñ8Ô8Ð8ØˆˆtÐ7Ñ8Ô8Ð8àˆˆxÐ7Ñ8Ô8Ð8Ð8Ð8rC   c                 óŽ   — d„ } |dd¬¦  «          |dd¬¦  «          |dd¬¦  «          |d	d
¬¦  «          |dd¬¦  «         d S )Nc                 óÎ   — t           j        dk    rdnd}dddœ}t          t          j        | fi |¤Ž||¬¦  «         t          t          j        | gfi |¤Žd         ||¬¦  «         d S )	Nr6   rd  çVçž¯â<Fr  rU  rQ   r   )r«  r¬  r   r   rX  ©rf   r"  rR   rZ  s       r@   rp  zGTestFactorialFunctions.test_factorial_complex_reference.<locals>._check
  s�   € ÝœL¨GÒ3Ð3�5�5¸ˆDØ ¨IÐ6Ð6ˆBÝ�GÔ-¨aÐ6Ð6°2Ð6Ð6¸ÀtÐLÑLÔLÐLÝ�GÔ-¨q¨cÐ8Ð8°RÐ8Ð8¸Ô;¸XÈDÐQÑQÔQÐQÐQÐQrC   rö  gkï´‘ø[ü?©r"  ù      à¿        ykï´‘ø[ü?        ù       @       @y·±B}Û¿æŒçåë?g§èH.ÿï¿gK«	!¶‡Ã@y      ð¿-Cëâ6?yI{�÷Œxâ¿ØQÂüÿ‡ÃÀr:  r¸  s     r@   Ú test_factorial_complex_referencez7TestFactorialFunctions.test_factorial_complex_reference 
  sŠ   € ð	Rð 	Rð 	Rð 	ˆˆtÐ3Ð4Ñ4Ô4Ð4ØˆˆyÐ#=Ð>Ñ>Ô>Ð>ØˆˆvÐ QÐRÑRÔRÐRàˆˆwÐ!5Ð6Ñ6Ô6Ð6Øˆˆ|Ð&SÐTÑTÔTÐTÐTÐTrC   Úcontent)z[]z[1]z[1.1]z[NaN]z[NaN+i*NaN]z[NaN, 1]c                 ó  ‡— |t           u rt          rt          j        d¦  «         |t          j        u r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         |t          j        k    r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         ||dœŠ|dk    st          |¦  «        dk    r|n|d         }t	          j	        |||¬¦  «        }d }|d	k    rI|rGt          j
        t          d
¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   �n-t          |j        g d¢¦  «        sFt          j
        t          d¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nÐt          |j        d¦  «        rL|d	k    rFt          j
        t          d¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   no|r[t          |j        d¦  «        sFt          j
        t          d¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nt          j        |fi ‰¤Ž}|�­ˆfd„|                     ¦   «         D ¦   «         }t          |¦  «        dk    r|d         n|}|j        r>|d	k    ot          |j        d¦  «        }	|	rt          j        n|rt&          nt          j        }t	          j	        |||¬¦  «        }
t)          ||
d¬¦  «         d S d S )Nz+object arrays unsupported in array API modec              3   ód   K  — | ]+}t          j        |¦  «        p|t          |¦  «        k    V — Œ,d S ru  ©r]   r   ru   ©r   rå   s     r@   ú	<genexpr>zKTestFactorialFunctions.test_factorial_array_corner_cases.<locals>.<genexpr>
  ó9   è è € Ð$SÐ$SÀa¥R¤X¨a¡[¤[Ð%A°Q½#¸a¹&¼&²[Ð$SÐ$SÐ$SÐ$SÐ$SÐ$SrC   úimpossible combinationc              3   óP   K  — | ]!}t          t          |¦  «        d ¦  «        V — Œ"dS ©rþ  N©r1   r<  rÆ  s     r@   rÇ  zKTestFactorialFunctions.test_factorial_array_corner_cases.<locals>.<genexpr>!
  ó2   è è € Ð&SÐ&SÀa¥|µD¸±G´G¸SÑ'AÔ'AÐ&SÐ&SÐ&SÐ&SÐ&SÐ&SrC   rU  r   rX   ©r”  r  r  úIncompatible options:.*rú  r{  r|  rþ  r}  rz   r¶  c                 ó4   •— g | ]}t          j        |fi ‰¤Ž‘ŒS r:  )r   rX  ©r   rå   rZ  s     €r@   r!  zLTestFactorialFunctions.test_factorial_array_corner_cases.<locals>.<listcomp>;
  s,   ø€ ÐAÐAÐA°!•7Ô$ QÐ-Ð-¨"Ð-Ð-ÐAÐAÐArC   rÚ   rQ   )r�  r.   r6  Úskipr]   r+  Úanyrâ   Úlenr   r   r7  r   rX  r1   r  rb   rì   rm  r`  rE  ©r?   rÂ  r’  r  rQ  r  rf   r‘  r  Úcxr"  rZ  s              @r@   Ú!test_factorial_array_corner_casesz8TestFactorialFunctions.test_factorial_array_corner_cases
  s1  ø€ ð •Fˆ?ˆ?�ˆ?ÝŒKÐEÑFÔFÐFà•B”HÐÐ¥Ð$SÐ$SÈ7Ð$SÑ$SÔ$SÑ!SÔ!SÐÝŒKÐ0Ñ1Ô1Ð1Ø•B”JÒÐ¥3Ð&SÐ&SÈ7Ð&SÑ&SÔ&SÑ#SÔ#SÐÝŒKÐ0Ñ1Ô1Ð1à¨Ð/Ð/ˆà! Ašg˜g­¨W©¬¸Ò):Ð):�'�'ÀÈÄˆÝŒH�W C¨uÐ5Ñ5Ô5ˆàˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ùå˜aœg   Ñ7Ô7ð 
	0Ý”�zÐ1JÐKÑKÔKð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +øå˜!œ' 3Ñ'Ô'ð 	0¨F°iÒ,?Ð,?Ý”�zÐ1PÐQÑQÔQð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +øàð 	0�<¨¬°Ñ5Ô5ð 	0Ý”�zÐ1OÐPÑPÔPð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +øõ Ô& qÐ/Ð/¨BÐ/Ð/ˆFàÐàAÐAÐAÐA°q·w²w±y´yÐAÑAÔAˆCå ™HœH¨šM˜M�#�a”&�&¨sˆCð Œvð WØ 	Ò)ÐI­|¸A¼GÀSÑ/IÔ/I�Ø)+ÐV�œ˜ÀÐ2Uµ*°*Í2Ì:�Ý”x ¨3°eÐ<Ñ<Ô<ˆHÝ ¨°uÐ=Ñ=Ô=Ð=Ð=Ð=ð ÐsH   ÄD!Ä!D%Ä(D%Å E?Å?FÆFÇG Ç G$Ç'G$ÈH=È=IÉIrÀ  )Ú1z1.1z2+2jrt  ru  rv  c           	      ó´  — ||dœ}|dk    rJ|rHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        dddt          d ¦  «        g¦  «        sHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        d¦  «        rN|dk    rHt          j        t          d	¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S |�t          j        |¦  «        ro|dk    ot          t          |¦  «        d¦  «        }|rt          j	        d
¦  «        nt          j
        d¦  «        }t          t          j        |fi |¤Ž|¦  «         d S |ret          t          |¦  «        d¦  «        rHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          j        |fi |¤Žt          j        |dz   ¦  «        ¦  «         d S )NrU  r  rÏ  rú  rz   rj  rþ  r|  r}  rl  r  r¶  rX   )r6  r   r7  r   rX  r1   r<  r]   r   rm  râ   rE  r   rB  ©r?   rf   r  rQ  rZ  rn  r"  s          r@   Ú"test_factorial_scalar_corner_casesz9TestFactorialFunctions.test_factorial_scalar_corner_casesF
  sŽ  € ð
 ¨Ð/Ð/ˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +å�d 1™gœg¨¨S°#µt¸D±z´zÐ'BÑCÔCð 	KÝ”�zÐ1JÐKÑKÔKð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +å�$˜q™'œ' 3Ñ'Ô'ð 	K¨F°iÒ,?Ð,?Ý”�zÐ1PÐQÑQÔQð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +àˆY�"œ( 1™+œ+ˆYà  IÒ-ÐMµ<ÅÀQÁÄÈÑ3MÔ3MˆJØ4>ÐU•r”} ZÑ0Ô0Ð0ÅBÄJÈuÑDUÔDUˆHÝ¥Ô 1°!Ð :Ð :°rÐ :Ð :¸HÑEÔEÐEÐEÐEØð 	K•|¥D¨¡G¤G¨SÑ1Ô1ð 	KÝ”�zÐ1OÐPÑPÔPð +ð +ÝÔ! !Ð*Ð* rÐ*Ð*Ð*ð+ð +ð +ñ +ô +ð +ð +ð +ð +ð +ð +ð +øøøð +ð +ð +ð +ð +ð +õ �Ô*¨1Ð3Ð3°Ð3Ð3µW´]À1ÀqÁ5Ñ5IÔ5IÑJÔJÐJÐJÐJsG   ©A	Á	AÁAÂB?Â?CÃCÄ
D*Ä*D.Ä1D.Ç6HÈHÈHr  c                 ód  — t           j        dk    rdnd}t          t          t	          j        |d¬¦  «        ¦  «        t	          j        |d¬¦  «        |¬¦  «         t          t	          j        |gd¬¦  «                             t          ¦  «        t	          j        |gd¬¦  «        |¬¦  «         d S )Nr6   ç›+¡†›„=rÚ   Tr  FrQ   )r«  r¬  r   rw   r   rY  rß   r­  s      r@   Útest_factorial2_accuracyz/TestFactorialFunctions.test_factorial2_accuracya
  sÃ   € õ
 œ¨Ò/Ð/ˆuˆu°Uˆå��gÔ0°¸$Ð?Ñ?Ô?Ñ@Ô@ÝÔ*¨1°EÐ:Ñ:Ô:Àð	Gñ 	Gô 	Gð 	Gå�Ô*¨A¨3°dÐ;Ñ;Ô;×BÒBÅ5ÑIÔIÝÔ*¨A¨3°eÐ<Ñ<Ô<À4ð	Iñ 	Iô 	Ið 	Ið 	Ið 	IrC   c           
      ó¾  — t          j        t          j        t	          t          |dd¦  «        ¦  «        d¦  «        }t          |t          j        |d¬¦  «        ¦  «         t          |t          j        |gd¬¦  «        d         ¦  «         t          j
        dk    rdnd}t          |¦  «        }t          |t          j        |d	¬¦  «        |¬
¦  «         t          |t          j        |gd	¬¦  «        d         |¬
¦  «         d	ddœ}|dz  dk    rMt          |t          j        |fi |¤Ž|¬
¦  «         t          |t          j        |gfi |¤Žd         |¬
¦  «         d S d S )Nr   rõ  rX   Tr  r6   rÝ  rÚ   FrQ   r  rU  rJ   )Ú	functoolsÚreduceÚoperatorÚmulr$  rv   r   r   rY  r«  r¬  rw   r   r²  s        r@   Útest_factorial2_int_referencez4TestFactorialFunctions.test_factorial2_int_referencem
  sd  € õ Ô"¥8¤<µµe¸A¸qÀ"±o´oÑ1FÔ1FÈÑJÔJˆå˜7¥GÔ$6°qÀÐ$EÑ$EÔ$EÑFÔFÐFÝ˜7¥GÔ$6¸°sÀ$Ð$GÑ$GÔ$GÈÔ$JÑKÔKÐKåœ¨Ò/Ð/ˆuˆu°Uˆå˜‘.”.ˆÝ˜¥Ô!3°A¸UÐ!CÑ!CÔ!CÈ$ÐOÑOÔOÐOÝ˜¥Ô!3°Q°C¸uÐ!EÑ!EÔ!EÀaÔ!HÈtÐTÑTÔTÐTð ¨	Ð2Ð2ˆàˆq‰5�AŠ:ˆ:Ý˜G¥WÔ%7¸Ð%@Ð%@¸RÐ%@Ð%@ÀtÐLÑLÔLÐLÝ˜G¥WÔ%7¸¸Ð%BÐ%B¸rÐ%BÐ%BÀ1Ô%EÈDÐQÑQÔQÐQÐQÐQð ˆ:rC   c                 ó¬  — d„ } |dd¬¦  «          |dt          j        d¦  «        t          j        dt          j        z  ¦  «        z  ¬¦  «          |dt          j        d¦  «        t          j        dt          j        z  ¦  «        z  ¬¦  «          |dd¬¦  «          |d	d
¬¦  «          |dd¬¦  «          |dd¬¦  «          |dd¬¦  «         d S )Nc                 óª   — d}dddœ}t          t          j        | fi |¤Ž||¬¦  «         t          t          j        | gfi |¤Žd         ||¬¦  «         d S )Nrí  Fr  rU  rQ   r   )r   r   rY  r½  s       r@   rp  zHTestFactorialFunctions.test_factorial2_complex_reference.<locals>._check‡
  sq   € ØˆDØ ¨IÐ6Ð6ˆBÝ�GÔ.¨qÐ7Ð7°BÐ7Ð7¸ÈÐMÑMÔMÐMÝ�GÔ.°¨sÐ9Ð9°bÐ9Ð9¸!Ô<¸hÈTÐRÑRÔRÐRÐRÐRrC   rŒ   r¾  rH   rJ   rn   rö  g^D]?JOê?r¿  y^D]?JOê?        y      @      @y­ÄÓ&0ñ¿!›Ÿ:÷?g�St$—ÿÿ¿gtäQä*¿@y       À-Cëâ6?yqƒjí®§?¯xØ*¿À)r   rY  r�  r   r   r¸  s     r@   Ú!test_factorial2_complex_referencez8TestFactorialFunctions.test_factorial2_complex_reference…
  s	  € ð	Sð 	Sð 	Sð 	ˆˆq˜1ÐÑÔÐØˆˆq�7Ô-¨aÑ0Ô0µ4´9¸QÅÄ¹[Ñ3IÔ3IÑIÐJÑJÔJÐJØˆˆr�GÔ.¨rÑ2Ô2µT´Y¸qÅ4Ä7¹{Ñ5KÔ5KÑKÐLÑLÔLÐLàˆˆtÐ4Ð5Ñ5Ô5Ð5ØˆˆyÐ#>Ð?Ñ?Ô?Ð?ØˆˆvÐ OÐPÑPÔPÐPàˆˆwÐ!6Ð7Ñ7Ô7Ð7Øˆˆ|Ð&UÐVÑVÔVÐVÐVÐVrC   c                 ó  ‡— |t           j        k    r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         |t           j        k    r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         ||dœŠ|dk    st          |¦  «        dk    r|n|d         }t          j        |||¬¦  «        }d }|dk    rH|rFt          j        t          d	¬
¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nÒt          |j        g d¢¦  «        sFt          j        t          d¬
¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nut          |j        ddg¦  «        rL|dk    rFt          j        t          d¬
¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nt          j        |fi ‰¤Ž}|�­ˆfd„|                     ¦   «         D ¦   «         }t          |¦  «        dk    r|d         n|}|j        r>|dk    ot          |j        d¦  «        }	|	rt           j        n|rt"          nt           j        }t          j        |||¬¦  «        }
t%          ||
d¬¦  «         d S d S )Nc              3   ód   K  — | ]+}t          j        |¦  «        p|t          |¦  «        k    V — Œ,d S ru  rÅ  rÆ  s     r@   rÇ  zLTestFactorialFunctions.test_factorial2_array_corner_cases.<locals>.<genexpr>§
  rÈ  rC   rÉ  c              3   óP   K  — | ]!}t          t          |¦  «        d ¦  «        V — Œ"dS rË  rÌ  rÆ  s     r@   rÇ  zLTestFactorialFunctions.test_factorial2_array_corner_cases.<locals>.<genexpr>©
  rÍ  rC   rU  r   rX   rÎ  r  rÏ  rú  r{  r|  rj  rþ  r}  c                 ó4   •— g | ]}t          j        |fi ‰¤Ž‘ŒS r:  )r   rY  rÑ  s     €r@   r!  zMTestFactorialFunctions.test_factorial2_array_corner_cases.<locals>.<listcomp>À
  ó,   ø€ ÐBÐBÐB°1•7Ô% aÐ.Ð.¨2Ð.Ð.ÐBÐBÐBrC   r¼  rQ   )r]   r+  rÓ  r6  rÒ  râ   rÔ  r   r   r7  r   rY  r1   r  rb   rì   rm  r`  rE  rÕ  s              @r@   Ú"test_factorial2_array_corner_casesz9TestFactorialFunctions.test_factorial2_array_corner_casesš
  sw  ø€ ð •B”HÒÐ¥Ð$SÐ$SÈ7Ð$SÑ$SÔ$SÑ!SÔ!SÐÝŒKÐ0Ñ1Ô1Ð1Ø•B”JÒÐ¥3Ð&SÐ&SÈ7Ð&SÑ&SÔ&SÑ#SÔ#SÐÝŒKÐ0Ñ1Ô1Ð1à¨Ð/Ð/ˆà! Ašg˜g­¨W©¬¸Ò):Ð):�'�'ÀÈÄˆÝŒH�W C¨uÐ5Ñ5Ô5ˆàˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øå˜aœg   Ñ7Ô7ð 	1Ý”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øå˜!œ' C¨ :Ñ.Ô.ð 	1°6¸YÒ3FÐ3FÝ”�zÐ1PÐQÑQÔQð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øõ Ô'¨Ð0Ð0¨RÐ0Ð0ˆFàÐàBÐBÐBÐB¸¿º¹	¼	ÐBÑBÔBˆCå ™HœH¨šM˜M�#�a”&�&¨sˆCð Œvð WØ 	Ò)ÐI­|¸A¼GÀSÑ/IÔ/I�Ø)+ÐV�œ˜ÀÐ2Uµ*°*Í2Ì:�Ý”x ¨3°eÐ<Ñ<Ô<ˆHÝ ¨°uÐ=Ñ=Ô=Ð=Ð=Ð=ð Ðs6   Ã C?Ã?DÄDÄ=EÅE Å#E Æ F?Æ?GÇGc           	      óä  — ||dœ}|dk    rJ|rHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        dddt          d ¦  «        g¦  «        sHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        ddg¦  «        rN|dk    rHt          j        t          d	¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S |�t          j        |¦  «        ro|dk    ot          t          |¦  «        d¦  «        }|rt          j	        d
¦  «        nt          j
        d¦  «        }t          t          j        |fi |¤Ž|¦  «         d S  | j        |fddi|¤Ž}t          t          j        |fi |¤Ž|d¬¦  «         d S )NrU  r  rÏ  rú  rz   rj  rþ  r|  r}  rl  r  rg   rJ   rÚ   rQ   )r6  r   r7  r   rY  r1   r<  r]   r   rm  râ   rE  rS  rÚ  s          r@   Ú#test_factorial2_scalar_corner_casesz:TestFactorialFunctions.test_factorial2_scalar_corner_casesË
  sò  € ð
 ¨Ð/Ð/ˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,å�d 1™gœg¨¨S°#µt¸D±z´zÐ'BÑCÔCð 	SÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,å�$˜q™'œ' C¨ :Ñ.Ô.ð 
	S°6¸YÒ3FÐ3FÝ”�zÐ1PÐQÑQÔQð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,àˆY�"œ( 1™+œ+ˆYà  IÒ-ÐMµ<ÅÀQÁÄÈÑ3MÔ3MˆJØ4>ÐU•r”} ZÑ0Ô0Ð0ÅBÄJÈuÑDUÔDUˆHÝ¥Ô 2°1Ð ;Ð ;¸Ð ;Ð ;¸XÑFÔFÐFÐFÐFà*�tÔ*¨1Ð8Ð8°Ð8°RÐ8Ð8ˆHÝ¥Ô 2°1Ð ;Ð ;¸Ð ;Ð ;¸XÈEÐRÑRÔRÐRÐRÐRs5   ©A	Á	AÁAÂB?Â?CÃCÄD,Ä,D0Ä3D0rg   rÓ  rn   iãÿÿÿc           	      ól  — t           j        dk    rdnd}t          t          t	          j        ||d¬¦  «        ¦  «        t	          j        ||d¬¦  «        |¬¦  «         t          t	          j        |g|d¬¦  «                             t          ¦  «        t	          j        |g|d¬¦  «        |¬¦  «         d S )Nr6   rª  rÝ  TrK  FrQ   )r«  r¬  r   rw   r   rM  rß   )r?   rf   rg   rR   s       r@   Útest_factorialk_accuracyz/TestFactorialFunctions.test_factorialk_accuracyã
  sË   € õ œ¨Ò/Ð/ˆuˆu°Uˆå��gÔ0°°a¸tÐDÑDÔDÑEÔEÝÔ*¨1°¸Ð?Ñ?Ô?Àdð	Lñ 	Lô 	Lð 	Lå�Ô*¨A¨3°!¸4Ð@Ñ@Ô@×GÒGÍÑNÔNÝÔ*¨A¨3°!¸5ÐAÑAÔAÈð	Nñ 	Nô 	Nð 	Nð 	Nð 	NrC   r#  c           
      óÎ  — t          j        t          j        t	          t          |d| ¦  «        ¦  «        d¦  «        }t          |t          j        ||d¬¦  «        ¦  «         t          |t          j        |g|d¬¦  «        d         ¦  «         t          j
        dk    rdnd}t          |¦  «        }t          |t          j        ||d¬¦  «        |¬	¦  «         t          |t          j        |g|d¬¦  «        d         |¬	¦  «         |dd
dœ}||z  dk    rOd}t          |t          j        |fi |¤Ž|¬	¦  «         t          |t          j        |gfi |¤Žd         |¬	¦  «         d S d S )Nr   rX   Tr  r6   g´àø¤tã =r'  FrQ   r  r„  rÝ  )rà  rá  râ  rã  r$  rv   r   r   rM  r«  r¬  rw   r   )r?   rf   rg   r!  rR   rZ  s         r@   Útest_factorialk_int_referencez4TestFactorialFunctions.test_factorialk_int_referenceò
  sv  € õ Ô"¥8¤<µµe¸A¸qÀ1À"±o´oÑ1FÔ1FÈÑJÔJˆå˜7¥GÔ$6°q¸!À4Ð$HÑ$HÔ$HÑIÔIÐIÝ˜7¥GÔ$6¸°s¸AÀTÐ$JÑ$JÔ$JÈ1Ô$MÑNÔNÐNåœ¨Ò/Ð/ˆuˆu°Uˆå˜‘.”.ˆÝ˜¥Ô!3°A°qÀÐ!FÑ!FÔ!FÈTÐRÑRÔRÐRÝ˜¥Ô!3°Q°C¸À%Ð!HÑ!HÔ!HÈÔ!KÐRVÐWÑWÔWÐWð ˜u°	Ð:Ð:ˆàˆq‰5�AŠ:ˆ:ØˆDÝ˜G¥WÔ%7¸Ð%@Ð%@¸RÐ%@Ð%@ÀtÐLÑLÔLÐLÝ˜G¥WÔ%7¸¸Ð%BÐ%B¸rÐ%BÐ%BÀ1Ô%EÈDÐQÑQÔQÐQÐQÐQð ˆ:rC   c           	      óÚ  — d„ } |ddt          j        ddd¬¦  «        ¬¦  «          |ddd¬¦  «          |d	dd
¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd¬¦  «          |ddd ¬¦  «          |d!dd"¬¦  «         d S )#Nc                 ó¬   — d}|dddœ}t          t          j        | fi |¤Ž||¬¦  «         t          t          j        | gfi |¤Žd         ||¬¦  «         d S )Nr'  Fr  r„  rQ   r   )r   r   rM  )rf   rg   r   rR   rZ  s        r@   rp  zHTestFactorialFunctions.test_factorialk_complex_reference.<locals>._check  ss   € ØˆDØ 5°IÐ>Ð>ˆBÝ�GÔ.¨qÐ7Ð7°BÐ7Ð7¸À4ÐHÑHÔHÐHÝ�GÔ.°¨sÐ9Ð9°bÐ9Ð9¸!Ô<¸cÈÐMÑMÔMÐMÐMÐMrC   rH   rŒ   TrK  )rf   rg   r   rÖ   gD!Áñ)@g      @gNqåÅ5®3@ræ  gªGÜ`­@r  g     ®ž@y       À      @y      À      @y      @      @yRsÁ¶å¿ðÌU#[˜@y      @      Àyõ¼•ú£ÿ?M…,a¢í?y@/Ìn­êÇ?ƒ�'ì?rö  gyL_ÇšZç?r¿  yyL_ÇšZç?        g333333@gffffffæ¿y©NVÇÝ?ü†*ÊV7â?g333333ã¿y›ü)k“h²¿»]ýb·¿gÇ):’ËÿÀgÌiß‘·T¾@y      À-Cëâ6?y(“5öEÁ?WùÝ•T¾À©r   rM  r¸  s     r@   Ú!test_factorialk_complex_referencez8TestFactorialFunctions.test_factorialk_complex_reference  s“  € ð	Nð 	Nð 	Nð 	ˆ��a�WÔ/°°Q¸dÐCÑCÔCÐDÑDÔDÐDØˆ��aÐ0Ð1Ñ1Ô1Ð1Øˆ�˜Ð2Ð3Ñ3Ô3Ð3àˆ��cÐ2Ð3Ñ3Ô3Ð3Øˆ��s Ð'Ñ'Ô'Ð'Øˆ� ¨WÐ5Ñ5Ô5Ð5àˆ�˜1Ð"RÐSÑSÔSÐSØˆ��fÐ"QÐRÑRÔRÐRØˆ�˜6Ð'VÐWÑWÔWÐWàˆ�˜Ð 6Ð7Ñ7Ô7Ð7Øˆ�˜aÐ%@ÐAÑAÔAÐAØˆ�˜Ð"RÐSÑSÔSÐSØˆ�˜Ð#UÐVÑVÔVÐVàˆ�˜AÐ#8Ð9Ñ9Ô9Ð9Øˆ� Ð(VÐWÑWÔWÐWÐWÐWrC   c                 ó  ‡— |t           j        k    r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         |t           j        k    r-t          d„ |D ¦   «         ¦  «        rt          j        d¦  «         d||dœŠ|dk    st          |¦  «        dk    r|n|d         }t          j        |||¬¦  «        }d }|d	k    rH|rFt          j        t          d
¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nÒt          |j        g d¢¦  «        sFt          j        t          d¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nut          |j        ddg¦  «        rL|d	k    rFt          j        t          d¬¦  «        5  t          j        |fi ‰¤Ž d d d ¦  «         n# 1 swxY w Y   nt          j        |fi ‰¤Ž}|�­ˆfd„|                     ¦   «         D ¦   «         }t          |¦  «        dk    r|d         n|}|j        r>|d	k    ot          |j        d¦  «        }	|	rt           j        n|rt"          nt           j        }t          j        |||¬¦  «        }
t%          ||
d¬¦  «         d S d S )Nc              3   ód   K  — | ]+}t          j        |¦  «        p|t          |¦  «        k    V — Œ,d S ru  rÅ  rÆ  s     r@   rÇ  zLTestFactorialFunctions.test_factorialk_array_corner_cases.<locals>.<genexpr>8  rÈ  rC   rÉ  c              3   óP   K  — | ]!}t          t          |¦  «        d ¦  «        V — Œ"dS rË  rÌ  rÆ  s     r@   rÇ  zLTestFactorialFunctions.test_factorialk_array_corner_cases.<locals>.<genexpr>:  rÍ  rC   rŒ   r„  r   rX   rÎ  r  rÏ  rú  r{  r|  rj  rþ  r}  c                 ó4   •— g | ]}t          j        |fi ‰¤Ž‘ŒS r:  rö  rÑ  s     €r@   r!  zMTestFactorialFunctions.test_factorialk_array_corner_cases.<locals>.<listcomp>Q  rì  rC   r¼  rQ   )r]   r+  rÓ  r6  rÒ  râ   rÔ  r   r   r7  r   rM  r1   r  rb   rì   rm  r`  rE  rÕ  s              @r@   Ú"test_factorialk_array_corner_casesz9TestFactorialFunctions.test_factorialk_array_corner_cases+  sy  ø€ ð •B”HÒÐ¥Ð$SÐ$SÈ7Ð$SÑ$SÔ$SÑ!SÔ!SÐÝŒKÐ0Ñ1Ô1Ð1Ø•B”JÒÐ¥3Ð&SÐ&SÈ7Ð&SÑ&SÔ&SÑ#SÔ#SÐÝŒKÐ0Ñ1Ô1Ð1à˜u°Ð7Ð7ˆà! Ašg˜g­¨W©¬¸Ò):Ð):�'�'ÀÈÄˆÝŒH�W C¨uÐ5Ñ5Ô5ˆàˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øå˜aœg   Ñ7Ô7ð 	1Ý”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øå˜!œ' C¨ :Ñ.Ô.ð 	1°6¸YÒ3FÐ3FÝ”�zÐ1PÐQÑQÔQð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,øõ Ô'¨Ð0Ð0¨RÐ0Ð0ˆFàÐàBÐBÐBÐB¸¿º¹	¼	ÐBÑBÔBˆCå ™HœH¨šM˜M�#�a”&�&¨sˆCð Œvð WØ 	Ò)ÐI­|¸A¼GÀSÑ/IÔ/I�Ø)+ÐV�œ˜ÀÐ2Uµ*°*Í2Ì:�Ý”x ¨3°eÐ<Ñ<Ô<ˆHÝ ¨°uÐ=Ñ=Ô=Ð=Ð=Ð=ð Ðs6   Ã!D Ä DÄDÄ>EÅE!Å$E!Æ!G Ç GÇGc           	      óâ  — |||dœ}|dk    rJ|rHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        dddt          d ¦  «        g¦  «        sHt          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          t          |¦  «        ddg¦  «        rN|dk    rHt          j        t          d	¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S |�t          j        |¦  «        ro|dk    ot          t          |¦  «        d¦  «        }|rt          j	        d
¦  «        nt          j
        d¦  «        }t          t          j        |fi |¤Ž|¦  «         d S  | j        |fi |¤Ž}t          t          j        |fi |¤Ž|d¬¦  «         d S )Nr„  r  rÏ  rú  rz   rj  rþ  r|  r}  rl  r  rÚ   rQ   )r6  r   r7  r   rM  r1   r<  r]   r   rm  râ   rE  rS  )r?   rf   rg   r  rQ  rZ  rn  r"  s           r@   Ú#test_factorialk_scalar_corner_casesz:TestFactorialFunctions.test_factorialk_scalar_corner_cases\  sï  € ð ˜u°Ð7Ð7ˆØ�YÒÐ 5ÐÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,å�d 1™gœg¨¨S°#µt¸D±z´zÐ'BÑCÔCð 	SÝ”�zÐ1JÐKÑKÔKð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,å�$˜q™'œ' C¨ :Ñ.Ô.ð 
	S°6¸YÒ3FÐ3FÝ”�zÐ1PÐQÑQÔQð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,àˆY�"œ( 1™+œ+ˆYà  IÒ-ÐMµ<ÅÀQÁÄÈÑ3MÔ3MˆJØ4>ÐU•r”} ZÑ0Ô0Ð0ÅBÄJÈuÑDUÔDUˆHÝ¥Ô 2°1Ð ;Ð ;¸Ð ;Ð ;¸XÑFÔFÐFÐFÐFà*�tÔ*¨1Ð3Ð3°Ð3Ð3ˆHÝ¥Ô 2°1Ð ;Ð ;¸Ð ;Ð ;¸XÈEÐRÑRÔRÐRÐRÐRs5   ªA
Á
AÁAÂ C Ã CÃCÄD-Ä-D1Ä4D1rM   rÝ   rž   c                 óÊ  — |rdgnd}|||dœ}|dk    rod}t          t          |¦  «        d¦  «        r|dk     rd}t          j        t          |¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S |dk    rHt          j        t          d	¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S t          j        |fi |¤Ž d S )
NrX   r„  rL  r}  rz   zFor `extend='zero'`.*rú  r   zParameter k cannot be zero!)r1   r<  r6  r   r7  r   rM  )r?   rg   r  rQ  rr  rf   rZ  r»  s           r@   Ú test_factorialk_raises_k_complexz7TestFactorialFunctions.test_factorialk_raises_k_complexu  s§  € ð
 ÐˆQˆCˆC˜aˆØ˜u°Ð7Ð7ˆØ�VÒÐØ1ˆCÝ�D ™GœG SÑ)Ô)ð .¨q°1ªu¨uØ-�Ý”�z°Ð5Ñ5Ô5ð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,à�!ŠVˆVÝ”�zÐ1NÐOÑOÔOð ,ð ,ÝÔ" 1Ð+Ð+¨Ð+Ð+Ð+ð,ð ,ð ,ñ ,ô ,ð ,ð ,ð ,ð ,ð ,ð ,ð ,øøøð ,ð ,ð ,ð ,ð ,ð ,õ Ô˜qÐ'Ð' BÐ'Ð'Ð'Ð'Ð's$   ÁA6Á6A:Á=A:Â$CÃCÃCrw  c                 ó¬   — |rdgnd}|||dœ}t          j        t          d¬¦  «        5  t          j        |fi |¤Ž d d d ¦  «         d S # 1 swxY w Y   d S )NrX   r„  r|  rú  )r6  r   r7  r   rM  )r?   rg   r  rQ  rr  rf   rZ  s          r@   Útest_factorialk_raises_k_otherz5TestFactorialFunctions.test_factorialk_raises_k_other‰  s¶   € ð ÐˆQˆCˆC˜aˆØ˜u°Ð7Ð7ˆÝŒ]�:Ð-FÐGÑGÔGð 	(ð 	(ÝÔ˜qÐ'Ð' BÐ'Ð'Ð'ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð 	(ð 	(s   ©A	Á	AÁAr   c                 óì  — |||dœ}|�rˆ|t          j        ¦   «         v �rrt          j        t          |         g¦  «        }t          t          j        |fi |¤Žj        t          ¦  «         t          t          j        |dz   fi |¤Žj        t          j
        ¦  «         t          j        |dz   fi |¤Žt          j        t          j        ¦  «        j        k    sJ ‚t          j        t           |         g¦  «        }t          t          j        |fi |¤Žj        t          j
        ¦  «         t          t          j        |dz   fi |¤Žj        t          ¦  «         t          j        |dz   fi |¤Žt          j        t          j
        ¦  «        j        k    sJ ‚d S t          j        t          j        |d¦  «        g¦  «        }|rt          nt          j        }t          t          j        |fi |¤Žj        |¦  «         d S )Nr„  rX   )r/   Úkeysr]   r   r0   r   r   rM  r  r*   r+  r%  Úint32r&  r�  Úgetrâ   )r?   rg   r  rQ  rZ  rf   r  s          r@   Útest_factorialk_dtypez,TestFactorialFunctions.test_factorialk_dtype•  sÖ  € ð ˜u°Ð7Ð7ˆØñ 	C�QÕ3Ô8Ñ:Ô:Ð:Ñ:Ý”Õ3°AÔ6Ð7Ñ8Ô8ˆAÝ�Ô+¨AÐ4Ð4°Ð4Ð4Ô:½GÑDÔDÐDÝ�Ô+¨A°©EÐ8Ð8°RÐ8Ð8Ô>ÅÄÑIÔIÐIåÔ% a¨!¡eÐ2Ð2¨rÐ2Ð2µR´X½b¼hÑ5GÔ5GÔ5KÒKÐKÐKÐKå”Õ3°AÔ6Ð7Ñ8Ô8ˆAÝ�Ô+¨AÐ4Ð4°Ð4Ð4Ô:½B¼HÑEÔEÐEÝ�Ô+¨A°©EÐ8Ð8°RÐ8Ð8Ô>ÅÑGÔGÐGÝÔ% a¨!¡eÐ2Ð2¨rÐ2Ð2µR´X½b¼hÑ5GÔ5GÔ5KÒKÐKÐKÐKÐKÐKå”Õ3Ô7¸¸1Ñ=Ô=Ð>Ñ?Ô?ˆAð $Ð3•F�F­¬ˆEÝ�Ô+¨AÐ4Ð4°Ð4Ð4Ô:¸EÑBÔBÐBÐBÐBrC   c                 ó–  — t          j        t           j        dddt           j        g¦  «        }t          j        t           j        dddt           j        g¦  «        }t          t	          j        |d¬¦  «        |¦  «         t          j        t          d¬¦  «        5  t	          j        |d	¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )
NrX   rJ   rŒ   rN   Fr  r¶  rú  T)	r]   r   r  r   r   rX  r6  r   r7  ©r?   rå   r"  s      r@   Útest_factorial_mixed_nan_inputsz6TestFactorialFunctions.test_factorial_mixed_nan_inputs¬  sî   € ÝŒH•b”f˜a  A¥r¤vÐ.Ñ/Ô/ˆÝ”8�RœV Q¨¨1­b¬fÐ5Ñ6Ô6ˆÝ•WÔ& q°Ð6Ñ6Ô6¸ÑAÔAÐAÝŒ]�:Ð-KÐLÑLÔLð 	-ð 	-ÝÔ˜a tÐ,Ñ,Ô,Ð,ð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   ÂB>Â>CÃC)=r3  r4  r5  rS  r6  r7  r9  r[  r]  ra  rh  rq  r]   r  râ   rm  r   Ú
datetime64r   rX  rY  rM  r�  r…  rv   r‘  ru   Úint8Úint16r  r+  r¦  r§  Úuint32r¢  r–  rš  ri  r¨  r®  r$  r³  r¹  rÁ  r�  r×  rÛ  rÞ  rä  rç  rí  rï  rñ  ró  r÷  rü  rþ  r   r  r  r
  r:  rC   r@   rI  rI  Ç  s_  € € € € € ð'ð 'ð 'ð „[×Ò˜^ØRÐRÐRñTô Tð=ð =ñTô Tð=ð „[×Ò˜S , , ,Ñ/Ô/Ø„[×Ò˜W t¨U mÑ4Ô4ð:ð :ñ 5Ô4ñ 0Ô/ð:ð „[×Ò˜W t¨U mÑ4Ô4ðSð Sñ 5Ô4ðSð „[×Ò˜SÐ"4Ð"4Ð"4Ñ5Ô5ðTð Tñ 6Ô5ðTð& „[×Ò˜V a¨ WÑ-Ô-Ø„[×Ò˜Y¨¨¨Ñ5Ô5ð)ð )ñ 6Ô5ñ .Ô-ð)ð4 „[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×ÒØàŒF�J�B”J˜uÑ%Ô% r¤v°´°r±	Ñ'9¸=¸2¼=ÈÑ;TÔ;TØŒF�B”F˜R‘K "¤& ¨2¬6¨'°B©,¸¸m¸b¼mÈEÑ>RÔ>Rð	
ð
ð 
ð 
ð ñ 
ô 
ð „[×ÒØØ	Ô	˜GÔ.°Ô0BÐCñô ð2ð 2ñ	ô ñ
ô 
ñ <Ô;ñ 5Ô4ð"2ðB „[×Ò˜X¨¨3°´¸Ð'AÑBÔBðBð Bñ CÔBðBð „[×Ò˜X u u¨Q°¡{¤{Ñ3Ô3Ø„[×Ò˜W t¨U mÑ4Ô4ðFð Fñ 5Ô4ñ 4Ô3ðFð< „[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜WØˆc�2”7˜BœH b¤h°´Ø
Œ�"”)˜RœY¨¬	ð'ñ ô ð „[×Ò˜U E E¨!¨Q¡K¤KÑ0Ô0ð5ð 5ñ 1Ô0ñ	ô ñ 5Ô4ð5ð „[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜W e e¨A¨q¡k¤kÑ2Ô2ð;ð ;ñ 3Ô2ñ 5Ô4ð;ð" „[×Ò˜1ÑÔØ„[×Ò˜W r¤x°´¸B¼IÀrÄyÐ&QÑRÔRØ„[×Ò˜^ØRÐRÐRñTô Tð)6ð )6ñTô Tñ SÔRñ Ôð)6ðX „[×Ò˜S % %¨¨C°Ñ"4Ô"4Ñ5Ô5ð	Hð 	Hñ 6Ô5ð	Hð „[×Ò˜SØ!˜T % %¨¨2¡,¤,Ñ/Ô/°$°$°u°u¸RÀÀbÑ7IÔ7IÑ2JÔ2JÑJñLô LðMð MñLô LðMð"9ð 9ð 9ð.Uð Uð Uð  „[×Ò˜W r¤x°´Ø')¤}°fð'>ñ ?ô ?à„[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜U E E¨!¨Q¡K¤KÑ0Ô0à„[×ÒØØ	ˆaˆS�3�%˜"œ&˜ B¤F¨R¬V°b©[Ñ$8Ð#9¸B¼FÀA¸;ÐGØFÐFÐFð ñ ô ð
)>ð )>ñô ñ 1Ô0ñ 5Ô4ñ <Ô;ñ?ô ?ð)>ðV „[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜S 1 c¨6°2´6¸2¼6ÀBÄFÈ2ÁIÑ;MÈtÐ"TØ!QÐ!QÐ!Qð ñ Sô SðKð KñSô Sñ 5Ô4ñ <Ô;ðKð. „[×Ò˜S % %¨¨C°Ñ"4Ô"4Ñ5Ô5ð	Ið 	Iñ 6Ô5ð	Ið „[×Ò˜SØ!˜T % %¨¨2¡,¤,Ñ/Ô/°$°$°u°u¸RÀÀbÑ7IÔ7IÑ2JÔ2JÑJñLô LðRð RñLô LðRð,Wð Wð Wð* „[×Ò˜W r¤x°´Ø')¤}°fð'>ñ ?ô ?à„[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜U E E¨!¨Q¡K¤KÑ0Ô0à„[×ÒØØ	ˆaˆS�3�%˜"œ&˜ B¤F¨R¬V°b©[Ñ$8Ð#9¸B¼FÀA¸;ÐGØFÐFÐFð ñ ô ð
$>ð $>ñô ñ 1Ô0ñ 5Ô4ñ <Ô;ñ?ô ?ð$>ðL „[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜S 1 c¨6°2´6¸2¼6ÀBÄFÈ2ÁIÑ;MÈtÐ"TØ!QÐ!QÐ!Qð ñ Sô SðSð SñSô Sñ 5Ô4ñ <Ô;ðSð( „[×Ò˜S % %¨¨1¡+¤+Ñ.Ô.ð „[×Ò˜S % %¨¨R°Ñ"5Ô"5Ñ6Ô6ð	Nð 	Nñ 7Ô6ñ /Ô.ð	Nð „[×Ò˜S $ $ u u¨Q°¡{¤{Ñ"3Ô"3°r¸2°hÑ">Ñ?Ô?Ø„[×Ò˜SØ!˜T % %¨¨2¡,¤,Ñ/Ô/°$°$°u°u¸RÀÀbÑ7IÔ7IÑ2JÔ2JÑJñLô LðRð RñLô Lñ @Ô?ðRð0Xð Xð Xð< „[×Ò˜W r¤x°´Ø')¤}°fð'>ñ ?ô ?à„[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜U E E¨!¨Q¡K¤KÑ0Ô0à„[×ÒØØ	ˆaˆS�3�%˜"œ&˜ B¤F¨R¬V°b©[Ñ$8Ð#9¸B¼FÀA¸;ÐGØFÐFÐFð ñ ô ð
$>ð $>ñô ñ 1Ô0ñ 5Ô4ñ <Ô;ñ?ô ?ð$>ðL „[×Ò˜X¨°	Ð':Ñ;Ô;Ø„[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜S % %¨¨1¡+¤+Ñ.Ô.Ø„[×Ò˜S 1 c¨6°2´6¸2¼6ÀBÄFÈ2ÁIÑ;MÈtÐ"TØ!QÐ!QÐ!Qð ñ Sô SðSð SñSô Sñ /Ô.ñ 5Ô4ñ <Ô;ð
Sð( „[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜^ØRÐRÐRñTô Tà„[×Ò˜S 2 t¨Q°°V¸SÀ"Ä&Ð"IÑJÔJð(ð (ñ KÔJñTô Tñ 5Ô4ð(ð  „[×Ò˜W t¨U mÑ4Ô4Ø„[×Ò˜^ØRÐRÐRñTô Tð „[×Ò˜S 8¨]¨R¬]¸5Ñ-AÔ-AÐ"BØ"*¨EÐ!2ð ñ 4ô 4ð(ð (ñ4ô 4ñTô Tñ 5Ô4ð(ð „[×Ò˜^ØRÐRÐRñTô Tà„[×Ò˜S % %¨¨2¡,¤,Ñ/Ô/ðCð Cñ 0Ô/ñTô TðCð(-ð -ð -ð -ð -rC   rI  c                   ó    — e Zd Zej                             ddddddddd	d
ej        ddfej         ddfg¦  «        d„ ¦   «         Zd„ Z	d„ Z
d„ ZdS )ÚTestFresnelzz, s, c)r†   çgÌN’°?çÖ�[‘‚ß?)y      à?        r  r  )y       Àš™™™™™¹?y²n<«æÓ¿ÌÆôj¹<C¿yÿ)¬BR;ß¿u´ñx7Q»?)yš™™™™™¹¿      ø¿yÚ¾|Î¤¿}-Ðì2ç?y�ŽÇ/—¸?½�¶!�ëÛ¿)rH  çGæ²M›Ü?çpB¾×Røß?)y      @        r  r  )y              @y       €Gæ²M›Ü¿y        pB¾×Røß?)y      À        gGæ²M›Ü¿gpB¾×Røß¿)y       €      Ày        Gæ²M›Ü?y       €pB¾×Røß¿r†   rö  c                 óŒ   — t          t          j        |¦  «        ¦  «        }t          |t          ||g¦  «        dd¬¦  «         d S )Nr?  r   r[   )r   r   r=  r   )r?   r!  rè  rþ  Úfrss        r@   Útest_fresnel_valueszTestFresnel.test_fresnel_valuesµ  sC   € õ@ •G”O AÑ&Ô&Ñ'Ô'ˆÝ˜�U A q 6™]œ]°¸aÐ@Ñ@Ô@Ð@Ð@Ð@rC   c                 óp  — t          j        d¦  «        \  }}t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          j        |¦  «        d         }t          j        |¦  «        d         }t          |ddd¬¦  «         t          |ddd¬¦  «         d S )	NrÖ   )y‰ÒÞà @X9´ÈvÒ?y^ºI«@¡Ö4ï8EÏ?y=
×£p½@+‡ÙÎ÷Ë?yßà“©@eâX·É?y„O¯”å@Çº¸�È?çú~j¼t“X?r   r[   )y.� ø1æû?ãÇ˜»–�Ó?yƒÀÊ¡E6@:#J{ƒ/Ð?yqà-�
@yé&1¬Ì?yŒÛh o@¤ß¾œ3Ê?y¨WÊ2Äq@q¬‹ÛhÈ?rX   rj  )r   Úfresnel_zerosr   r   r=  )r?   ÚszoÚczoÚvals1Úvals2s        r@   Útest_fresnel_zeroszTestFresnel.test_fresnel_zerosÚ  sì   € ÝÔ(¨Ñ+Ô+‰ˆˆSÝ˜�Uð $4ð $4ð $4ñ 5ô 5ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�Uð $4ð $4ð $4ñ 5ô 5ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ ” Ñ$Ô$ QÔ'ˆÝ” Ñ$Ô$ QÔ'ˆÝ˜˜q w°QÐ7Ñ7Ô7Ð7Ý˜˜q w°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   c                 ó‚   — t          j        d¦  «        \  }}t          j        d¦  «        }t          ||dd¬¦  «         d S )NrN   çßÄAfcz=r   r[   )r   r  Úfresnelc_zerosr   )r?   r  r  Úfrcs       r@   Útest_fresnelc_zeroszTestFresnel.test_fresnelc_zerosí  óC   € ÝÔ(¨Ñ+Ô+‰ˆˆSÝÔ$ QÑ'Ô'ˆÝ˜˜S w°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   c                 ó‚   — t          j        d¦  «        \  }}t          j        d¦  «        }t          ||dd¬¦  «         d S )NrÖ   r!  r   r[   )r   r  Úfresnels_zerosr   )r?   r  r  r  s       r@   Útest_fresnels_zeroszTestFresnel.test_fresnels_zerosò  r%  rC   N)r3  r4  r5  r6  r7  r9  r]   r   r  r  r$  r(  r:  rC   r@   r  r  ´  s´   € € € € € Ø„[×Ò˜Yà7Ø=ð	
ð
	
ð 	&Ø,Ø)Ø/Ø*à	Œ��cÐØ
Œ&ˆ�$˜Ðð;)ñ ô ð>Að Añ?ô ð>Að8ð 8ð 8ð&8ð 8ð 8ð
8ð 8ð 8ð 8ð 8rC   r  c                   ó–  — e Zd Zd„ Zd„ Zd„ Zed„ ¦   «         Zed„ ¦   «         Zd„ Z	d„ Z
ej                             dej         ej        gej        ej        gfd	d
gej         ej        gf edd¦  «         ej        dej        ¦  «        f eddd¦  «         ej        dej        ¦  «        fdgej        gfg¦  «        d„ ¦   «         ZdS )Ú	TestGammac                 óN   — t          j        d¦  «        }t          |d¦  «         d S r@  )r   rB  r   )r?   Úgams     r@   rC  zTestGamma.test_gammaù  s'   € ÝŒm˜AÑÔˆÝ�S˜ÑÔÐÐÐrC   c                 ó–   — t          j        d¦  «        }t          t          j        d¦  «        ¦  «        }t	          ||dd¬¦  «         d S )NrŒ   r?  r   r[   )r   rH  r   rB  r   )r?   ÚgamlnÚlngams      r@   rI  zTestGamma.test_gammalný  sE   € Ý” Ñ"Ô"ˆÝ•G”M !Ñ$Ô$Ñ%Ô%ˆÝ˜˜u¨6¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   c                 ó€   — t          j        dd¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S )Nr†   r?  r   r[   )r   rE  Úgammaincinvr   )r?   ÚgccinvÚgcinvs      r@   rF  zTestGamma.test_gammainccinv  sC   € ÝÔ% b¨Ñ,Ô,ˆÝÔ# B rÑ*Ô*ˆÝ˜ ¨F¸Ð;Ñ;Ô;Ð;Ð;Ð;rC   c                 óp  — t          j        dd¦  «        }t          j        d|¦  «        }t          |ddd¬¦  «         t          j        dd¦  «        }t          j        dd¦  «        }t          d|dd¬¦  «         t          |ddd¬¦  «         t          j        dd	¦  «        }t          d
|dd¬¦  «         d S )NrK   rJ  r   r[   r&  gš™™™™™©?g`£	í\Þ;r#  g¦m�áìb<g      &@)r   r1  Úgammaincr   ©r?   r   rå   s      r@   Útest_gammaincinvzTestGamma.test_gammaincinv  sÁ   € åÔ  2Ñ&Ô&ˆÝÔ˜R Ñ"Ô"ˆÝ˜˜3 W°1Ð5Ñ5Ô5Ð5ÝÔ˜R Ñ&Ô&ˆÝÔ Ð$:Ñ;Ô;ˆÝ˜˜a g°AÐ6Ñ6Ô6Ð6Ý˜Ð1¸ÀaÐHÑHÔHÐHÝÔ Ð$JÑKÔKˆÝ˜˜a g°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 óâ   — dt          j        dd¦  «        dt          j        dd¦  «        dg}|D ]>}t          j        d|¦  «        }t          j        d|¦  «        }t          ||d¬¦  «         Œ?d S )	Nr  r   gCsÿÿÿÿÏ?rX   g^F    Ð?rK   r�   rQ   )r]   rž  r   r1  r5  r   )r?   ÚptsÚptr   rå   s        r@   Útest_975zTestGamma.test_975  s‡   € ð
 ÝŒ|˜D !Ñ$Ô$ lÝŒ|˜D !Ñ$Ô$ lð4ˆð ð 	/ð 	/ˆBÝÔ# B¨Ñ+Ô+ˆAÝÔ   aÑ(Ô(ˆAÝ˜A˜r¨Ð.Ñ.Ô.Ð.Ð.ð	/ð 	/rC   c                 ó‚   — t          j        d¦  «        }dt          j        d¦  «        z  }t          ||dd¬¦  «         d S )Nr
  rX   r?  r   r[   )r   rÙ  rB  r   )r?   ÚrgamÚrlgams      r@   rÚ  zTestGamma.test_rgamma   sB   € ÝŒ~˜aÑ Ô ˆØ•'”- Ñ"Ô"Ñ"ˆÝ˜˜e¨&°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c                 óJ   — t          t          j        d¦  «        d¦  «         d S )NrM   r   )r   r   rÙ  r>   s    r@   Útest_infinityzTestGamma.test_infinity%  s"   € Ý•W”^ BÑ'Ô'¨Ñ+Ô+Ð+Ð+Ð+rC   z
x,expectedrM  rž   iàÿÿÿr   é    i üÿÿéc   r  gPÚÂ²ZdbÃc                 óJ   — t          t          j        |¦  «        |¦  «         d S ru  )r   r   rB  r	  s      r@   Ú
test_poleszTestGamma.test_poles(  s$   € õ  	�7œ=¨Ñ+Ô+¨XÑ6Ô6Ð6Ð6Ð6rC   N)r3  r4  r5  rC  rI  rF  r2   r7  r;  rÚ  r@  r6  r7  r9  r]   r   r  rv   ÚfullrD  r:  rC   r@   r*  r*  ø  s[  € € € € € ðð ð ð;ð ;ð ;ð
<ð <ð <ð
 ð	7ð 	7ñ Ôð	7ð ð
/ð 
/ñ Ôð
/ð:ð :ð :ð
,ð ,ð ,ð „[×ÒØð Œvˆg�r”vÐ ¤¨¬Ð 0Ð1à�Cˆ[˜BœF˜7 B¤FÐ+Ð,àˆU�3˜‰]Œ]˜G˜BœG B¨¬Ñ/Ô/Ð0àˆU�5˜#˜rÑ"Ô" G B¤G¨B°´Ñ$7Ô$7Ð8à$Ð%¨¬ xÐ0ð	
ñô ð7ð 7ñô ð7ð 7ð 7rC   r*  c                   óD   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
S )Ú
TestHankelc                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S ©Nr  rJ   rŒ   rj  r   r[   )r   r   rh  r>   s    r@   Ú
test_negv1zTestHankel.test_negv1=  óG   € Ý�œ¨¨AÑ.Ô.µ´ÀÀAÑ1FÔ1FÐ0FØ$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c                 ó²   — t          j        dd¦  «        }t          j        dd¦  «        t          j        dd¦  «        dz  z   }t	          ||dd¬¦  «         d S ©NrX   r  r  r?  r   r[   )r   rh  r·  r'  r   )r?   Úhank1Úhankrls      r@   ri  zTestHankel.test_hankel1A  sW   € Ý”  "Ñ%Ô%ˆÝ”*˜Q˜rÑ"Ô"¥W¤Z°°"Ñ%5Ô%5°bÑ%8Ñ8ˆÝ˜˜v¨F¸Ð;Ñ;Ô;Ð;Ð;Ð;rC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   rl  r>   s    r@   Útest_negv1ezTestHankel.test_negv1eF  óI   € Ý�Ô(¨¨QÑ/Ô/µ'Ô2BÀ1ÀaÑ2HÔ2HÐ1HØ$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c                 ó    — t          j        dd¦  «        }t          j        dd¦  «        t          d¦  «        z  }t	          ||dd¬¦  «         d S )NrX   r  y       €š™™™™™¹¿r?  r   r[   )r   rl  rh  r   r   )r?   Úhank1eÚhankrles      r@   rm  zTestHankel.test_hankel1eJ  sM   € ÝÔ! ! BÑ'Ô'ˆÝ”/ ! BÑ'Ô'­¨D©	¬	Ñ1ˆÝ˜ ¨f¸1Ð=Ñ=Ô=Ð=Ð=Ð=rC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   rp  r>   s    r@   Ú
test_negv2zTestHankel.test_negv2O  rK  rC   c                 ó²   — t          j        dd¦  «        }t          j        dd¦  «        t          j        dd¦  «        dz  z
  }t	          ||dd¬¦  «         d S rM  )r   rp  r·  r'  r   )r?   Úhank2Úhankrl2s      r@   rq  zTestHankel.test_hankel2S  sW   € Ý”  "Ñ%Ô%ˆÝ”:˜a Ñ#Ô#¥g¤j°°2Ñ&6Ô&6°rÑ&9Ñ9ˆÝ˜˜w¨V¸!Ð<Ñ<Ô<Ð<Ð<Ð<rC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   rs  r>   s    r@   Ú
test_neg2ezTestHankel.test_neg2eX  rR  rC   c                 ó€   — t          j        dd¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S )NrX   r  r?  r   r[   )r   rs  r   )r?   Úhank2eÚhankrl2es      r@   Útest_hankl2ezTestHankel.test_hankl2e\  sC   € ÝÔ! ! BÑ'Ô'ˆÝÔ# A bÑ)Ô)ˆÝ˜ ¨v¸AÐ>Ñ>Ô>Ð>Ð>Ð>rC   c                 óœ   — t          j        dd¦  «        }t          j        |j        ¦  «        sJ ‚t          j        |j        ¦  «        sJ ‚d S r;   )r   rp  r]   r   r   Úisposinfr  ©r?   r  s     r@   Útest_hankel2_gh4517zTestHankel.test_hankel2_gh4517a  sI   € åŒo˜a Ñ#Ô#ˆÝŒx˜œÑ!Ô!Ð!Ð!Ð!ÝŒ{˜3œ8Ñ$Ô$Ð$Ð$Ð$Ð$Ð$rC   N)r3  r4  r5  rJ  ri  rQ  rm  rW  rq  r\  r`  rd  r:  rC   r@   rG  rG  ;  s›   € € € € € ð.ð .ð .ð<ð <ð <ð
.ð .ð .ð>ð >ð >ð
.ð .ð .ð=ð =ð =ð
.ð .ð .ð?ð ?ð ?ð
%ð %ð %ð %ð %rC   rG  c                   óJ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ ZdS )Ú	TestHyperc                 ó²   — t          j        dd¦  «        }t          j        dd¦  «        t          j        dd¦  «        dz  z   }t	          ||dd¬¦  «         d S rM  )r   Úh1vpÚjvpÚyvpr   )r?   Úh1Úh1reals      r@   Ú	test_h1vpzTestHyper.test_h1vpi  óW   € ÝŒ\˜!˜BÑÔˆÝ”+˜a Ñ#Ô#¥g¤k°!°BÑ&7Ô&7¸Ñ&:Ñ:ˆÝ˜˜F¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 ó²   — t          j        dd¦  «        }t          j        dd¦  «        t          j        dd¦  «        dz  z
  }t	          ||dd¬¦  «         d S rM  )r   Úh2vpri  rj  r   )r?   Úh2Úh2reals      r@   Ú	test_h2vpzTestHyper.test_h2vpn  rn  rC   c                 óB  — t          t          j        dd¦  «        dd¬¦  «         t          t          j        dd¦  «        dd¬¦  «         t          j        d	g d
¢¦  «        }t          j        g d¢¦  «        }t          ||d¬¦  «         t          j        d	t          j        g d
¢¦  «        dz   ¦  «        }t          ||                     t          ¦  «        d¬¦  «         g d¢}g d¢}t          j        ||¦  «        }g d¢}t          ||d¬¦  «         t          j        t          j        |gdz  ¦  «        |¦  «        }t          |t          j        |gdz  ¦  «        d¬¦  «         t          t          t          j        t          j        |gdz  ¦  «        ddg¦  «         d S )Nræ  r†   çQívîoó?r�   rQ   r   r‡   rÚ   rÝ  )g      ø¿rM   r   rX   r  )gÄñÌ·â?g3|t-Õ”æ?r‡   g�ßo�Ýö?g�{hùç¨ù?r  ©r†   r  ræ  )r   rX   r†   )r‡   gŸá¶cÏý?ru  rJ   rŒ   rX   )
r   r   Úhyp0f1r]   r   rß   r  ÚvstackÚassert_raisesr7  )r?   rå   r"  rä  Úx2s        r@   Útest_hyp0f1zTestHyper.test_hyp0f1s  s©  € å�œ s¨CÑ0Ô0Ð2BÈÐOÑOÔOÐOÝ�œ s¨AÑ.Ô.°¸%Ð@Ñ@Ô@Ð@õ ŒN˜3Ð 5Ð 5Ð 5Ñ6Ô6ˆÝ”8ð Að Að Añ Bô Bˆå˜˜8¨%Ð0Ñ0Ô0Ð0õ ŒN˜3¥¤Ð)>Ð)>Ð)>Ñ ?Ô ?À#Ñ EÑFÔFˆÝ˜˜8Ÿ?š?­7Ñ3Ô3¸%Ð@Ñ@Ô@Ð@ð ˆ_ˆ_ˆØˆ[ˆ[ˆÝŒN˜2˜rÑ"Ô"ˆØ>Ð>Ð>ˆÝ˜˜8¨%Ð0Ñ0Ô0Ð0ÝŒN�2œ9 b T¨A¡XÑ.Ô.°Ñ3Ô3ˆÝ˜�2œ9 h Z°!¡^Ñ4Ô4¸5ÐAÑAÔAÐAÝ•j¥'¤.Ý”i   q¡Ñ)Ô)¨A¨q¨6ñ	3ô 	3ð 	3ð 	3ð 	3rC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )Nçš™™™™™é?y      à?      à?y;EÊGÔÒù?uMÂâé?rÏ   r   r[   )r   rw  r   rc  s     r@   Útest_hyp0f1_gh5764zTestHyper.test_hyp0f1_gh5764�  s@   € õ Œn˜S ,Ñ/Ô/ˆå˜ÐHØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ó"  — t          j        ddd¦  «        }t          |ddd¬¦  «         t          g g d¢‘g d¢‘g d	¢‘g d
¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d¢‘g d ¢‘g d!¢‘g d"¢‘g d#¢‘g d$¢‘g d%¢‘g d&¢‘g d'¢‘g d(¢‘g d)¢‘g d*¢‘g d+¢‘g d,¢‘g d-¢‘g d.¢‘g d/¢‘g d0¢‘g d1¢‘g d2¢‘g d3¢‘g d4¢‘g d5¢‘g d6¢‘g d7¢‘g d8¢‘g d9¢‘g d:¢‘g d;¢‘g d<¢‘g d=¢‘g d>¢‘g d?¢‘g d@¢‘g dA¢‘g dB¢‘g dC¢‘g dD¢‘g dE¢‘g dF¢‘g dG¢‘g dH¢‘g dI¢‘g dJ¢‘g dK¢‘g dL¢‘g dM¢‘g dN¢‘g dO¢‘g dP¢‘g dQ¢‘g dR¢‘g dS¢‘g dT¢‘g dU¢‘g dV¢‘g dW¢‘g dX¢‘g dY¢‘g dZ¢‘g d[¢‘g d\¢‘g d]¢‘g d^¢‘g d_¢‘g d`¢‘g da¢‘g db¢‘g dc¢‘g dd¢‘g de¢‘g df¢‘g dg¢‘g dh¢‘g di¢‘g dj¢‘¦  «        }|D ]C\  }}}}t          j        |||¦  «        }t	          t          ||z
  ¦  «        |z  dkk     ¦  «         ŒDd S )lNr  r  g–ŒŒ™õ?rÏ   r   r[   )gÕ{*§=Ã ÀgÀË±aò¯)Àg5æ¯=ÀgÉv¾ŸêXÄ@)g�îÀ)AI@gDA�°ÌhÀgÂ$P³j)Àg•~ÂÙ­¹@)g,qÓUp–,ÀgË@=¸&Ç?gXÍÎý 3@g¬ZžÀø@)gô”îÞ\@gˆ8Œ8£*@g\Ö³Ö!=@g   Æž£A)g•AZ;Àg‰OðFA'ÀgxÅ�Oõ<Àg_DÌc „òD)g‰^g¿Å@g ŸëV*E7Àgíé4à)3@g7-XÌtD)gÎ§ŽU(@g2Tj›‡8Àgº$Ã@g  Lý¦h¥B)gëüÛe¿¼;@gJÎìgoèÿ¿grÑ›è@g `å±«õ»B)gÏ5'Šë.@gqZð¢¯=Àg7ßˆîY·.Àgé8¨²wÀ)gB‰–Ì,@g"î^¬¯#@grTÉ[	R3@g  €¢œÓB)gªºÃý²YÀg�N]ù,ã*@gÑòò*!j,Àg©³¤í1@)gÃ#r¦ @g�q{874*ÀgWs%§o.@g´ÔÿMÀdD)g8˜—|.2@g°*±!î”,Àg?áËÈI(#@gJ
r þß.Ä)g¡ªøu–÷8Àgø#ûÖ=)@g*³÷˜þ'1Àgš™™)ÏˆvA)g%™0õNº:@gUxá1@gžxÎ‚@grÜ),c¾@)g:³Màô8@g˜´óGb+=@g3ÒœV/@gX9Ò™im@)g"d¬xz@gqùöK—ù¿gÙv7ã##@g  ð—Õñ>B)g küxž’-ÀgëD8L+8@gÞó²Üˆÿ2Àg‹72�LU¥@)gtd@Q4h6@gé%ç@æ}Àgr3ýŽ¸b @gu­ß¯Ñ¡Ã)gêçò‹·ºé?g"p$Ð`E2@gY|TÈ3Àgíƒ\DŒá?)gV-é(ë+@g$ø•½[»3@g;/@gEQwÐ²@)g[üfªÀg­ßLL4ÀgQÿ´¬V�@g0#ž.@)g Õ§¤®;@g/áŽ?jvÀgx„.<ŠN&@g©óè^I•èÄ)gŸ‹+­9Àg‹Xþ[íó?gbZåSH%@g£â¤Õ5/)@)g}ÊRgÅ¢	@gïÕ}¶Ä,*@gÎñœ6@g�1w-ØÓ@)g—RAö(Àg_¢“›@g5AÔ} :=Àg   Fª�¬A)gô¬ÿÎQz5@gÊq.#ÐÀgœT��qÀ&Àgõc ™·™Ü?)gÏ†Û%šµ#Àg¨ZV«@
Àgý‰%@¨¾0@g   àSydÁ)gB˜Û½ÜŸ%@gúÝ*>¼8ÀgôV¸@Ý'Àg¶Ö	­Ê¦À)g/HŸûË:ÀgÛn@SÈ ÀgÄÀ)bÇ™9@g  À9�·óÁ)gTì�¹Š3!ÀgŒËD ÀgkëLFr%@g3333»`4A)g:§kƒ™
º¿g\ëæ=)²'Àgi›,ÿkŠ9Àgèbx‘®Þø?)g´iøXòwÀg-Cw¤U5@g'jin…Â9Àg¬ÆÖÆX5@)gb�Ëêãú@g€Tyñ4#/@g]p¿H=ÀgIŒ»Œw�?)gÔ6ÕÅ3ý@g2×XxMü:@g›~?ë^0ÀgœWÊ1ŸŒŸ?)gá¾Ä37Àg R€æ{Ï@gicx.4ï?gµºmÕm’?)gv�Ü�%å7@g9˜M€a%=Àg}êy³ÝÀgG­r™�##@)gG8-xÑ‹.@gÇ‚½@g�åhb(@g  €£’¸ÓA)gþë�û¦w1@gó�Óqëø2@gO]ù,ÏË@g0É·-€ÅX@)gôÍì©å2@gÌ�y# <@gÍ£xï¬á?g’‚]÷?)g];¬Ë„f$@g1é”ì}¯0ÀgƒŠª_éŠ9ÀgÊû8Úƒ„@)gã:!Ï‰ò1Àg†�ˆ)q(@gîåãg2ÀgÉv¾ŸÓ%)A)gYöN»:+Àg”n	È°-õ?g‹¨‰>åÀgZdû|I.A)grøæ/ÛK@g\‡}Lù9@g«‡çìÓ*ÀgßÎ™„£¢?)gQq5V°@gÁ¤�?š)@g'Ó¹¾@0@glìÕÛ­`@)gøºVŒn:ÀgÄ¾‹RQ0Àg—÷ÝT&Àg à›Q¡C¶Â)gîR4 Œ©8ÀgÙüèiú+Àgªù…²K• @g{®G¤Á)g²�t±iq+Àg(¡O?«3ÀgÀ	àÁª1=@g  8çœc‡B)g|>oÏ˜ÒÀg¨\—Ð!<@g"?4VÆ?g%®c\qñî?)gÇ »’ëø¿gp�¹fP!Àg³†AO¹Ü:@g€ª¦,\Ã)gº=RŽŠ8@gÿ%¤;ÀgŒôz®3@gÿ†Å~ž0«G)g.CV–l@gÜáe< ¤.@g§��»­9@g¸…kq1A)g–€ó=~†$Àgpš™ôR°7@g Ä77Àg,œ¤¹Ç†@)g‹à^ðîô¿g”¢•{©)Àg—RAº2@g  dLäú Â)gf=ç4,R@gy…O„Û-Àg#Þ•¸é~8@gËÌ÷ˆ—¸Å)g|´Ý©%P4Àg:<„ñÓö9@gKzsž4Àg$(~ŒO4æ@)gÅñ2y¹Ä3@gæ‰1ú$6Àg&TpxA¬6Àg®G!½ðJA)gf^XH
^;@g7Ãøür:@g±`,…/@gš™™ùi{dA)gihÉxî@g!B·òí8(@g°7Öj´�*@gò˜�Êh�¤@)gæäêlmF<Àg¨Óp€OÜ4@g�’`2"@gÌÚðâ“-¦¾)g¢nV3!º2@gÑ.•m–q1Àgµ!Z†“{.@gr»ûÖÛOµE)g“‹sÌ`m@g“ôzAUŽÀguCÏ=V”#@g  ž\�Â)gŠPLÚ-(@g,›9$µ"9Àg6¹Îu7@g¿ÕeR´ÂF)gúðÆÝw8Àgƒv=5@gÄjâÓRW+ÀgÃõ(\«-æ@)gŠyó§ÏÀg~=—ŠÈ@gç4MÐVÀgw±zÑä:@)g˜^0ò‘ÜÀg+î‰¿7¯%Àg-@Ûj81Àg5¶×‚Þ,jÀ)gj¯ô�ß4ÀgˆÇz0Àg¸­-</Ý;Àg…ºÝ½]
D)gáNØ4ý3@g¤}ˆW6@gLªUS!9ÀgäØÞÉ�F>)g ž€�Q4@g=Ÿàæ}­ÀgÇÕÈ®´5@g¿Ç]nhgF)g—æV«9ÀgÒÐé”9Àgfž9ó,#ÀgF|}fvÑ?)g=^°ee;@gy›’}2Àg¥'Tà> Àg#…�o@)g•÷Ìí¹+5Àg™±�È;ÀgN8CgÓ8@g   Çbk²A)g´ÎSx+26@g™œÚ¦@g‡ÚÛÒI0ÀgéSÀ•M­C¾)gTÝ‹*0@gŸ`<¯6ÀgóWy¹5@gûƒÇŸRjùÆ)gÓ°kÍ
Àg Ïß/:õ?gJLHRË"@g±x ìu-À)gŠKÀuæò@g¬œÁôù6Àg¼t8_‘x7@gdý;Ëõ='Æ)g+:í„ò;@gBªÍ¤ò10@g";Àª²Ãæ¿gK$¼Ó?)gp›ã»Í @g òñd’üÀgœ‰�	�=@g=§6`²¥ F)g²TÍbR.Àg³±·9:g3@gUùà­ÚfÀgRb×öKZ@)gÓâ¥þ¬!Àg%ÏP7«3;ÀgûÀ]‰þ?gr	òyæý?)g)Yóˆvº2ÀgÈ¹¨qÊ@gñ¦¶/û3Àg   ¸ž®A)g©?j/|öá¿g¡š7óò:@g‹#~áoÝ½?g8çpEìï?)g²ÖPj/ÆÀgS�ÄÖ"X)Àg©�Y¬Àgt¢—0N»?)g¤»ìù�Àgo&	xT7@gá-hT@#@g.;Éø%rÓ?)g·Ø'_ @gÉ–@¥¥ç7Àg‘:KÚžÖ$@g ð[™ŠÅB)gØk5Úº9ÀgÑ¼ÒèÄ:ÀgÊk%t—p;@g  .<Ûÿ^Â)gf¶Ð:OI&ÀgžÐëOâ/Àg´#01ñ|2Àg´­f�ñ`YÀ)gqÓv~@g©uÑFdü9@gØz+·S7ÀgÊF1Š/$‰?)gíx¤°3Àg~…[6:Àg;ŠsÔÑ9@gÉÀKºw*1@)gÈP€îì@gvïò¾;K,ÀgÒ¬ÇØd&<@g—!³õºsÆ)gÔÖˆ`|.ÀgOwžxÎø=@gå+ÜMK“<Àg›UŸ«UÃÉ@)gÚ©ÚêI÷@gÂ©jÝG1ÀgÂ4gØƒ66@g(ë4Î½4E)gøS¡‰É>×?gDß-íl¸¿g–SLï,c<ÀgÔ‰åE4î?)gd�?A÷ç Àg�„3$)ÀgùlxÕ^¿ò?gs>Èô|Tó?)g(%ˆãŽá@g:Ä‰ù»$@g~ê³^gv2ÀgJ‹HF&–°?)g}rØ"Š:@g3�Ç\¾z;@go¦ø®÷á)@g+‡h¨A)g©¶@')ý"ÀgùÔV‘vü/@guQ™Uë-ÀgföyŒ2yt@)gM6y%$‘Àg/Œ;Rï#@güšöÞ):@gw%",Å6Ô¿)g¬%xžÓ'Àg¸ª‘°$6ÀgÜÚ­ÅÄ5Àgu$9ŽÄ?)gl¦k»C9Àgâ<œÀtF8ÀgÅpôçÁô?gï¢ õ?rI  )r   rw  r   r   r   rC  )r?   Úhyp1Úref_datarD  rE  rþ  r"  r‘  s           r@   rx  zTestHyper.test_hyp1f1•  s1  € ÝŒ~˜b  BÑ'Ô'ˆÝ˜Ð0°vÀAÐFÑFÔFÐFõ ð e
ØOÐOÐOðe
àNÐNÐNðe
ð NÐMÐMðe
ð MÐLÐLð	e
ð
 PÐOÐOðe
ð NÐMÐMðe
ð NÐMÐMðe
ð NÐMÐMðe
ð PÐOÐOðe
ð MÐLÐLðe
ð OÐNÐNðe
ð NÐMÐMðe
ð OÐNÐNðe
ð OÐNÐNðe
ð MÐLÐLðe
ð  MÐLÐLð!e
ð" NÐMÐMð#e
ð$ OÐNÐNð%e
ð& OÐNÐNð'e
ð( NÐMÐMð)e
ð* MÐLÐLð+e
ð, OÐNÐNð-e
ð. OÐNÐNð/e
ð0 NÐMÐMð1e
ð2 MÐLÐLð3e
ð4 OÐNÐNð5e
ð6 OÐNÐNð7e
ð8 PÐOÐOð9e
ð: PÐOÐOð;e
ð< PÐOÐOð=e
ð> OÐNÐNð?e
ð@ PÐOÐOðAe
ðB OÐNÐNðCe
ðD NÐMÐMðEe
ðF NÐMÐMðGe
ðH NÐMÐMðIe
ðJ OÐNÐNðKe
ðL MÐLÐLðMe
ðN MÐLÐLðOe
ðP MÐLÐLðQe
ðR OÐNÐNðSe
ðT OÐNÐNðUe
ðV OÐNÐNðWe
ðX NÐMÐMðYe
ðZ MÐLÐLð[e
ð\ QÐPÐPð]e
ð^ PÐOÐOð_e
ð` OÐNÐNðae
ðb NÐMÐMðce
ðd PÐOÐOðee
ðf NÐMÐMðge
ðh MÐLÐLðie
ðj OÐNÐNðke
ðl PÐOÐOðme
ðn OÐNÐNðoe
ðp OÐNÐNðqe
ðr OÐNÐNðse
ðt MÐLÐLðue
ðv MÐLÐLðwe
ðx OÐNÐNðye
ðz NÐMÐMð{e
ð| OÐNÐNð}e
ð~ NÐMÐMðe
ð@ OÐNÐNðAe
ðB OÐNÐNðCe
ðD QÐPÐPðEe
ðF PÐOÐOðGe
ðH NÐMÐMðIe
ðJ NÐMÐMðKe
ðL PÐOÐOðMe
ðN OÐNÐNðOe
ðP OÐNÐNðQe
ðR OÐNÐNðSe
ðT OÐNÐNðUe
ðV OÐNÐNðWe
ðX OÐNÐNðYe
ðZ NÐMÐMð[e
ð\ NÐMÐMð]e
ð^ OÐNÐNð_e
ð` OÐNÐNðae
ðb OÐNÐNðce
ðd NÐMÐMðee
ðf PÐOÐOðge
ðh NÐMÐMðie
ðj NÐMÐMðke
ðl PÐOÐOðme
ðn QÐPÐPðoe
ðp NÐMÐMðqe
ðr OÐNÐNðse
ðt OÐNÐNðue
ðv OÐNÐNðwe
ðx NÐMÐMðye
ðz OÐNÐNð{e
ð| OÐNÐNð}e
ð~ NÐMÐMðe
ð@ MÐLÐLðAe
ðB OÐNÐNðCe
ðD OÐNÐNðEe
ðF PÐOÐOðGe
ðH OÐNÐNðIe
ñ eô eˆðN 'ð 	<ð 	<‰NˆAˆa��(Ý”^ A a¨Ñ*Ô*ˆFÝ•C˜ 6Ñ)Ñ*Ô*¨8Ñ3°dÒ:Ñ;Ô;Ð;Ð;ð	<ð 	<rC   c                 ó„   — t          j        ddd¦  «        }t          j        ddd¦  «        }t          ||dd¬¦  «         d S )Nr†   r  g7úþB.†Àg|:úþB.†Àr!  r   r[   ©r   rw  r   )r?   r€  Úhyp2s      r@   Útest_hyp1f1_gh2957zTestHyper.test_hyp1f1_gh2957	  sE   € ÝŒ~˜c 3¨Ñ8Ô8ˆÝŒ~˜c 3¨Ñ8Ô8ˆÝ˜˜d¨°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c                 óX   — t          j        ddd¦  «        }t          |ddd¬¦  «         d S )Nr†   r  iüÿÿgÅ<`÷’²œ?r!  r   r[   rƒ  )r?   Úhyps     r@   Útest_hyp1f1_gh2282zTestHyper.test_hyp1f1_gh2282  s3   € ÝŒn˜S # uÑ-Ô-ˆÝ˜Ð1¸ÀaÐHÑHÔHÐHÐHÐHrC   c                 óX  — dddddt          d¦  «        z  gdddddt          d	¦  «        z  gddd
d	dt          d¦  «        z  gg d¢dddt          d	¦  «        d
z  t          d¦  «        gddddt	          j        d¦  «        t	          j        d¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  gdd
d
ddt          t          ¦  «        z  t	          j        d
¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  gdd
dddt          t          ¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  gdddddt	          j        d¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  t	          j        d¦  «        z  gg d¢g d ¢g d!¢g d"¢g d#¢d$d%g}t          |¦  «        D ]9\  }\  }}}}}t	          j	        ||||¦  «        }t          ||d&d'd(|› �¬)¦  «         Œ:d S )*Nr†   rX   r  ç|®Gáz¤?ræ  gÿÿÿÿÿÿ÷?g|®Gáz¤¿r•   rÞ   rJ   rÎ  r}  )rŒ   rà  r  rŠ  gŒYiô2õ?r  rŒ   g433333ó?rH   r
  rÖ   rM   rè  rt  g       ?rÝ  ç      @g      ÀgUUUUUUÕ¿g  º†@gUUUUUUõ?g«ªªªªªÀ)r  rö  r‡   ç      $ÀgEciH!…@)rõ  rŒ   rX   çffffffî?gáz®Gáæ?)rJ   r  rX   r�  gyé&1¬|¿)rv  rŒ   rX   r�  g"nN%@?)rJ   r_  rX   r�  g!¡JÍþ¾)r&  é|üÿÿç      %@r>  g²z˜SŽ;)r&  rŽ  g      %Àr>  g[�B.—VP<r?  r   útest #©r\   rR   Úerr_msg)r   r   r	   r
   r   rB  r   r   r¹  rz  r   )	r?   Úvaluesrz   rD  rE  rþ  rå   rJ  Úcvs	            r@   r{  zTestHyper.test_hyp2f1  sj  € ð �!�S˜& '­#¨oÑ*>Ô*>Ñ">Ð?Ø�!�S˜' 6­&°©+¬+Ñ#5Ð6Ø��1�c˜6¥# e¡*¤*Ñ,Ð-ØMÐMÐMØ��C�˜S™œ 1™¥c¨'¡l¤lÐ3Ø��1�aÝŒ]˜1ÑÔ¥¤¨eÑ 4Ô 4Ñ4ÝŒ}˜SÑ!Ô!ñ"Ý$+¤M°#Ñ$6Ô$6ñ7ð8ð ��5˜"Ø•T�"‘X”XÑ¥¤¨eÑ 4Ô 4Ñ4ÝŒ}˜YÑ'Ô'ñ(Ý*1¬-¸	Ñ*BÔ*BñCðDð ��5˜"Ø•T�"‘X”XÑ¥¤¨eÑ 4Ô 4Ñ4ÝŒ}˜YÑ'Ô'ñ(Ý*1¬-¸	Ñ*BÔ*BñCðDð ��w Ø�GœM¨$Ñ/Ô/Ñ/µ'´-ÀÑ2HÔ2HÑHÝŒ}˜TÑ"Ô"ñ#Ý%,¤]°8Ñ%<Ô%<ñ=ð>ð
 ;Ð:Ð:àÐÐØ Ð Ð Ø&Ð&Ð&Ø&Ð&Ð&àGØHð9
ˆõ< #,¨FÑ"3Ô"3ð 	Nð 	NÑˆA‰��1�a˜˜AÝ”  1 a¨Ñ+Ô+ˆBÝ˜B ¨°QÀÈÀÀÐMÑMÔMÐMÐMð	Nð 	NrC   c                 ór  — t          j        ddd¦  «        }t          |ddd¬¦  «         g d¢g d	¢}}t          |¦  «        t          |¦  «        }}d
}t          j        |||¦  «        }t          t          t          |z  ¦  «        z  t          j        |||¦  «        t          j        d|z   |z
  ¦  «        t          j        |¦  «        z  z  |d|z
  z  t          j        d|z   |z
  d|z
  |¦  «        z  t          j        |¦  «        t          j        d|z
  ¦  «        z  z  z
  z  }t          ||dd¬¦  «         d S )NrX   r  r#  gÑà D„?rÏ   r   r[   )r  r  ç333333ó?gš™™™™™À)r  gš™™™™™	@r-  gš™™™™™	Àr†   rJ   r!  )r   Úhyperur   r   r   r	   rw  rB  )r?   Úval1rD  rE  r!  ÚhypuÚhprls          r@   Útest_hyperuzTestHyper.test_hyperu6  s7  € ÝŒ~˜a  CÑ(Ô(ˆÝ˜˜i¨f¸1Ð=Ñ=Ô=Ð=Ø Ð Ð Ð!4Ð!4Ð!4ˆ!ˆÝ�a‰jŒj�' !™*œ*ˆ!ˆØˆÝŒ~˜a  !Ñ$Ô$ˆÝ•3•r˜!‘t‘9”9‘�wœ~¨a°°!Ñ4Ô4Ý '¤¨a°©c°!©eÑ 4Ô 4µW´]À1Ñ5EÔ5EÑ Eñ Gà  1 Q¡3™x­¬°q¸±s¸1±u¸Q¸q¹SÀÑ(CÔ(CÑCÝ")¤-°Ñ"2Ô"2µ7´=ÀÀ1ÁÑ3EÔ3EÑ"Eñ Gñ Gñ Hˆõ 	˜˜d¨°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c                 óT   — t          t          j        ddd¦  «        ddd¬¦  «         d S )NrX   r  g3333334@g«ð(ÃÂ¨?r!  r   r[   )r   r   r—  r>   s    r@   Útest_hyperu_gh2287zTestHyper.test_hyperu_gh2287C  s;   € Ý�œ q¨#¨tÑ4Ô4Ð6JØ$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   N)r3  r4  r5  rm  rs  r{  r~  rx  r…  rˆ  r{  r›  r�  r:  rC   r@   rf  rf  h  sµ   € € € € € ð9ð 9ð 9ð
9ð 9ð 9ð
3ð 3ð 3ð4-ð -ð -ðr<ð r<ð r<ðh:ð :ð :ð
Ið Ið Ið"Nð "Nð "NðH:ð :ð :ð.ð .ð .ð .ð .rC   rf  c                   óÐ  — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
d	„ Zd
„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z d„ Z!d „ Z"d!„ Z#d"„ Z$d#„ Z%d$„ Z&d%„ Z'd&„ Z(d'„ Z)d(„ Z*d)„ Z+d*„ Z,d+„ Z-d,„ Z.d-„ Z/d.„ Z0d/„ Z1d0„ Z2d1„ Z3dUd5„Z4e5j6         7                     e8j9        ¦   «         d6k    d7¬8¦  «        d9„ ¦   «         Z:e5j6         7                     e8j9        ¦   «         d6k    d7¬8¦  «        d:„ ¦   «         Z;d;„ Z<d<„ Z=e5j6        j>        d=„ ¦   «         Z?d>„ Z@d?„ ZAd@„ ZBdA„ ZCdB„ ZDdC„ ZEdD„ ZFdVdF„ZGdG„ ZHdH„ ZIdI„ ZJdJ„ ZKdK„ ZLdL„ ZMdM„ ZNdN„ ZOdO„ ZPdP„ ZQdQ„ ZRdR„ ZSdS„ ZTdT„ ZUd4S )WÚ
TestBesselc                 óŒ   — t          t          j        d¦  «        ¦  «        }t          |t          ddg¦  «        dd¬¦  «         d S )NrÞ   gîb�“ÉƒÉ?gÎ�Jö Ö¿r?  r   r[   )r   r   r�  r   )r?   Úit0s     r@   rž  zTestBessel.test_itj0y0I  sR   € Ý•G”N 2Ñ&Ô&Ñ'Ô'ˆÝ˜�UÐ$7Ð9MÐ#NÑOÔOØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 óŒ   — t          t          j        d¦  «        ¦  «        }t          |t          ddg¦  «        dd¬¦  «         d S )NrÞ   gbqòÌTtt?g/]ÃooÊÛ¿r?  r   r[   )r   r   r�  r   )r?   Úit2s     r@   r�  zTestBessel.test_it2j0y0N  sR   € Ý•G”O BÑ'Ô'Ñ(Ô(ˆÝ˜�UÐ$9Ð;OÐ#PÑQÔQØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         d S ©NrŒ   rJ   r  )r   r   r¦  r>   s    r@   Útest_negv_ivzTestBessel.test_negv_ivS  s.   € Ý•W”Z  !‘_”_¥g¤j°°AÑ&6Ô&6Ñ7Ô7Ð7Ð7Ð7rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S ©Nr  r   r?  r[   )r   r®  r´  r   ©r?   ÚozÚozrs      r@   r¯  zTestBessel.test_j0V  ó=   € ÝŒZ˜‰^Œ^ˆÝŒj˜˜2ÑÔˆÝ˜˜C f°1Ð5Ñ5Ô5Ð5Ð5Ð5rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S ©Nr  rX   r?  r   r[   )r   r±  r´  r   ©r?   Úo1Úo1rs      r@   r²  zTestBessel.test_j1[  r¬  rC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )NrX   rÞ   çÕ;öâx¹?r?  r   r[   )r   r´  r   )r?   Újnnrs     r@   rµ  zTestBessel.test_jn`  s1   € ÝŒz˜!˜BÑÔˆÝ˜Ð2¸ÀaÐHÑHÔHÐHÐHÐHrC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  ©r   r   r·  r>   s    r@   Útest_negv_jvzTestBessel.test_negv_jvd  s;   € Ý�œ
 2 qÑ)Ô)­G¬J°q¸!Ñ,<Ô,<Ð+<À7ÐQRÐSÑSÔSÐSÐSÐSrC   c           	      ó²   — g d¢g d¢g d¢g d¢g d¢g}t          |¦  «        D ]5\  }\  }}}t          j        ||¦  «        }t          ||ddd|› �¬	¦  «         Œ6d S )
N)r   r  g³
Yeˆëï?)çUUUUUUå?ç:Œ0âŽyE>gË¿ÀÀÂ+Ë>)r¹  rZ   g)%¡›¹-„>)gÍÌÌÌÌÌ@rZ   g5Ôc)Ç!9)r¹  r  g%²,ÄÍ¿r?  r   r�  r‘  )r¹  r   r·  r   )r?   r“  rz   rJ  rå   r   Úycs          r@   r¸  zTestBessel.test_jvg  sš   € Ø/Ð/Ð/Ø5Ð5Ð5Ø6Ð6Ð6Ø6Ð6Ð6Ø2Ð2Ð2ð	ˆõ & fÑ-Ô-ð 	Nð 	N‰LˆA‰y��1�aÝ”˜A˜qÑ!Ô!ˆBÝ˜B ¨°QÀÈÀÀÐMÑMÔMÐMÐMð	Nð 	NrC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   rº  r>   s    r@   Útest_negv_jvezTestBessel.test_negv_jver  óG   € Ý�œ B¨Ñ*Ô*­W¬[¸¸AÑ->Ô->Ð,>Ø$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c                 ó  — t          j        dd¦  «        }t          |ddd¬¦  «         t          j        dd¦  «        }d}t          j        d|¦  «        t	          t          |j        ¦  «         ¦  «        z  }t          ||dd¬¦  «         d S )NrX   rÞ   r³  r?  r   r[   ùš™™™™™É?      ð?)r   rº  r   r·  r   rC  r  )r?   ÚjvexpÚjvexp1r!  Újvexprs        r@   r»  zTestBessel.test_jvev  s„   € Ý”˜A˜bÑ!Ô!ˆÝ˜Ð3¸&ÀqÐIÑIÔIÐIÝ”˜Q˜uÑ%Ô%ˆØˆÝ”˜A˜a‘”¥¥c¨!¬&¡k¤k \Ñ!2Ô!2Ñ2ˆÝ˜ ¨V¸!Ð<Ñ<Ô<Ð<Ð<Ð<rC   c                 óº  — t          j        dd¦  «        }t          j        dd¦  «        }t          |t          g d¢¦  «        dd¬¦  «         t          |t          g d¢¦  «        dd¬¦  «         t          j        dd¦  «        }t          |t          g d	¢¦  «        d
¬¦  «         t          j        dd¦  «        }t          |t          g d¢¦  «        d
¬¦  «         d S )Nr   rÖ   rX   )go@—.=@gzj,[�@g“ÆÌlµN!@g5/ƒ D•'@g”hó>¡Ü-@rH  r[   ©gžŽ’W§@g”0Óö@g›¬QÑX$@g ²º¥*@g8„*5{x0@rW   )g’Eèk¹[@g÷~CÅju]@gYrÊ�ìì^@g�Ê,Æ `@gò»f	À`@rP   rQ   é-  )g“õ¦t™s@g&»Ç­r3t@gWú¦þ’³t@gæ,‘$Y&u@gëú­…†�u@©r   Újn_zerosr   r   )r?   Újn0Újn1Újn102Újn301s        r@   Útest_jn_zeroszTestBessel.test_jn_zeros~  sP  € ÝÔ˜q Ñ#Ô#ˆÝÔ˜q Ñ#Ô#ˆÝ˜�Uð $3ð $3ð $3ñ 4ô 4ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ 	˜�Uð $.ð $.ð $.ñ /ô /ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ Ô   QÑ'Ô'ˆÝ˜�uð &>ð &>ð &>ñ  ?ô  ?ð FKð		Lñ 	Lô 	Lð 	Lõ Ô   QÑ'Ô'ˆÝ˜�uð &>ð &>ð &>ñ  ?ô  ?ð FKð		Lñ 	Lô 	Lð 	Lð 	Lð 	LrC   c                 óæ  — t          j        dd¦  «        }t          |d         dd¬¦  «         t          |d         dd¬¦  «         t          |d	         d
d¬¦  «         t          j        dd¦  «        }t          |d         dd¬¦  «         t          |d         dd¬¦  «         t          |d	         dd¬¦  «         t          j        dd¦  «        }t          |t          g d¢¦  «        d¬¦  «         d S )Nr   rm   i  gç¾;€‰@rP   rQ   i  g¬8ç¯âv‹@i+  g×‚MŠm�@r&  gíxæÙiý‰@g‡	,ô‹@gÐ¸{>Éê�@iÂ  rÖ   )gU´DX»¹§@g×ÒÈ!â§@g*±HÄS¨@g¾zú5Á ¨@g@–2�º;¨@rº  rÇ  )r?   rÉ  Újn10Újn3010s       r@   Útest_jn_zeros_slowzTestBessel.test_jn_zeros_slowœ  s  € ÝÔ˜q #Ñ&Ô&ˆÝ˜˜Eœ
Ð$9ÀÐFÑFÔFÐFÝ˜˜Eœ
Ð$9ÀÐFÑFÔFÐFÝ˜˜Eœ
Ð$9ÀÐFÑFÔFÐFåÔ  CÑ(Ô(ˆÝ˜˜UœÐ%:ÀÐGÑGÔGÐGÝ˜˜UœÐ%:ÀÐGÑGÔGÐGÝ˜˜UœÐ%:ÀÐGÑGÔGÐGåÔ! $ qÑ)Ô)ˆÝ˜¥ð ':ð ':ð ':ñ !;ô !;ð BFð		Gñ 	Gô 	Gð 	Gð 	Gð 	GrC   c                 ó`  ‡
— t           j        Š
ˆ
fd„}t          dd¦  «        D ]Š}t          j        |¦  «        \  }}}}t	          |||¦  «        D ]]\  }}}	|	dk    rt           ‰
||¦  «        dd¬¦  «         Œ)|	dk    rt           |||¦  «        dd¬¦  «         ŒLt          d|› �¦  «        ‚Œ‹d S )Nc                 óH   •—  ‰| dz
  |¦  «         ‰| dz   |¦  «        z
  dz  S )NrX   rJ   r:  )rf   rå   r´  s     €r@   Újnpz(TestBessel.test_jnjnp_zeros.<locals>.jnp±  s/   ø€ Ø�B�q˜‘s˜1‘I”I   1 Q¡3 q¡	¤	Ñ)¨1Ñ,Ð,rC   rX   rT   r   r±   r"  zInvalid t return for nt=)r   r´  rv   Újnjnp_zerosrD  r   ÚAssertionError)r?   rÔ  Úntr!  rf   r  ÚtÚzzÚnnÚttr´  s             @r@   Útest_jnjnp_zeroszTestBessel.test_jnjnp_zeros®  sô   ø€ ÝŒZˆð	-ð 	-ð 	-ð 	-ð 	-å˜˜2‘,”,ð 	Jð 	JˆBÝ Ô,¨RÑ0Ô0‰JˆAˆq�!�QÝ! ! Q¨™lœlð Jð J‘
��B˜Ø˜’7�7Ý# B B r¨2¡J¤J°¸Ð=Ñ=Ô=Ð=Ð=Ø˜1’W�WÝ# C C¨¨B¡K¤K°¸Ð>Ñ>Ô>Ð>Ð>å(Ð)HÀBÐ)HÐ)HÑIÔIÐIðJð	Jð 	JrC   c                 óè   — t          j        dd¦  «        }t          |t          g d¢¦  «        dd¬¦  «         t          j        dd¦  «        }t          t          j        d|¦  «        dd¬	¦  «         d S )
NrX   rÖ   ©gÚÉà(yuý?gOXâeS@g¦aøˆ˜!@g¶óýÔxi'@g'Nîw(º-@rH  r   r[   é»  rÚ   r"  )r   Ú	jnp_zerosr   r   ri  )r?   rÔ  s     r@   Útest_jnp_zeroszTestBessel.test_jnp_zeros½  sŠ   € ÝÔ  !Ñ$Ô$ˆÝ˜�Uð $.ð $.ð $.ñ /ô /ð
 $¨!ð	-ñ 	-ô 	-ð 	-õ Ô  AÑ&Ô&ˆÝ�œ C¨Ñ-Ô-¨q°uÐ=Ñ=Ô=Ð=Ð=Ð=rC   c           
      óÖ   — t          j        dd¦  «        }t          |t          g d¢¦  «        t          g d¢¦  «        t          g d¢¦  «        t          g d¢¦  «        fdd¬	¦  «         d S )
NrX   rÖ   rÅ  rÞ  )çÞå"¾“@g+û®þ·@gŒ-9(1!@gÈ˜»–�'@g–>tA}Ë-@)g‚”0Óv@gj¼t“Ä@g§èH.?$@gŠ}"O’*@gG¬Å§p0@rz  r   r[   )r   Ú
jnyn_zerosr   r   )r?   Újnzs     r@   Útest_jnyn_zeroszTestBessel.test_jnyn_zerosÈ  s¸   € ÝÔ   AÑ&Ô&ˆÝ˜�eð %/ð %/ð %/ñ 0ô 0õ
 $ð %/ð %/ð %/ñ 0ô 0õ
 $ð %/ð %/ð %/ñ 0ô 0õ
 $ð %/ð %/ð %/ñ 0ô 0ð1ð( $¨!ð)	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ó²   — t          j        dd¦  «        }t          j        dd¦  «        t          j        dd¦  «        z
  dz  }t          ||dd¬¦  «         d S )NrJ   rX   rŒ   rJ  r   r[   )r   ri  r·  r   )r?   ÚjvprimÚjv0s      r@   Útest_jvpzTestBessel.test_jvpà  sS   € Ý”˜Q˜qÑ!Ô!ˆÝŒz˜!˜A‰Œ�wœz¨!¨A™œÑ.°Ñ1ˆÝ˜ ¨'¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r¨  )r   r¾  rî  r   )r?   ÚozkÚozkrs      r@   r¿  zTestBessel.test_k0å  ó=   € ÝŒj˜‰nŒnˆÝŒz˜!˜BÑÔˆÝ˜˜D v°AÐ6Ñ6Ô6Ð6Ð6Ð6rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r¨  )r   rÂ  rñ  r   )r?   ÚozkeÚozkers      r@   rÃ  zTestBessel.test_k0eê  ó=   € ÝŒ{˜2‰ŒˆÝ”˜A˜bÑ!Ô!ˆÝ˜˜e¨&°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r®  )r   rÆ  rî  r   )r?   Úo1kÚo1krs      r@   rÇ  zTestBessel.test_k1ï  rî  rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r®  )r   rÉ  rñ  r   )r?   Úo1keÚo1kers      r@   rÊ  zTestBessel.test_k1eô  rò  rC   c                 óº  — dt           j                             ¦   «         z  dz
  }dt           j                             ¦   «         z  dz
  }t          j        d||¦  «        }t          j        d||¦  «        }t          j        d||¦  «        }t          j        d||¦  «        }t	          |j        dgdd¬¦  «         t	          |j        t          ||z   dz   ||z
  g¦  «        dz  dd¬¦  «         ||z   dz   ||z   d	z   z  d	||z   dz   z  |dz   z  d	|dz   z  |dz   z  g}|d         |d         d|d         z  z
  |d         |d         z
  |d         z   g}t	          |j        t          |¦  «        d
z  dd¬¦  «         ||z   d	z   ||z   dz   z  ||z   dz   z  d||z   d	z   z  ||z   dz   z  |dz   z  d||z   d	z   z  |dz   z  |dz   z  d|dz   z  |dz   z  |dz   z  g}|d         |d         d|d         z  z
  |d         d|d         z  z
  d|d         z  z   |d         |d         z
  |d         z   |d         z
  g}	t	          |j        t          |	¦  «        dz  dd¬¦  «         d S )NrÖ   rX   r   rJ   rŒ   r‘  r[   rt  rH   g       @rN   r   r
  g      H@)r]   rc   r   Újacobir   rþ  r   )
r?   rD  rE  ÚP0ÚP1ÚP2ÚP3ÚcpÚp2cÚp3cs
             r@   Útest_jacobizTestBessel.test_jacobiù  s’  € Ø�bŒi×ÒÑ Ô Ñ  1Ñ$ˆØ�bŒi×ÒÑ Ô Ñ  1Ñ$ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆÝŒ^˜A˜a Ñ"Ô"ˆå˜œ˜q˜c¨°aÐ8Ñ8Ô8Ð8Ý˜œ�e Q¨¡U¨Q¡Y°°A±Ð$6Ñ7Ô7¸#Ñ=Ø$¨1ð	.ñ 	.ô 	.ð 	.à�‰s�1‰u�q˜‘s˜1‘u‰o˜q ! A¡# a¡%™y¨!¨A©#™°°1°Q±3±¸¸1¹±Ð>ˆØ�!Œu�R˜”U˜1˜R œU™7‘] 2 a¤5¨¨A¬¡;¨r°!¬uÑ#4Ð5ˆÝ˜œ�e C™jœj¨3Ñ.°WÀ1ÐEÑEÔEÐEØ�‰s�1‰u�q˜‘s˜1‘u‰o˜q ™s 1™uÑ% a¨¨1©¨Q©¡i°°1±°Q±Ñ&7¸¸1¹Ñ&=Ø�!�A‘#�a‘%‰j˜!˜A™#Ñ  !¡Ñ$ Q¨¨!©¡W¨a°©c¡]°A°a±CÑ%8ð:ˆà�!Œu�R˜”U˜1˜R œU™7‘] 2 a¤5¨¨2¨a¬5©¡=°°2°a´5±Ñ#8¸¸A¼¸rÀ!¼u¹ÀRÈÄUÑ9JÈ2ÈaÌ5Ñ9PÐQˆÝ˜œ�e C™jœj¨4Ñ/°gÀAÐFÑFÔFÐFÐFÐFrC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )Nr   rÞ   ç_±2ü?r?  r[   )r   rÛ  r   )r?   Úkn1s     r@   rÜ  zTestBessel.test_kn  s1   € ÝŒj˜˜2ÑÔˆÝ˜Ð/°fÀ1ÐEÑEÔEÐEÐEÐErC   c                 ór   — t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         d S ©NrÝ  r8  rß  ©r   r   rî  r>   s    r@   Útest_negv_kvzTestBessel.test_negv_kv  s0   € Ý•W”Z  SÑ)Ô)­7¬:°d¸CÑ+@Ô+@ÑAÔAÐAÐAÐArC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )Nr   rÞ   r  rJ  r[   ©r   rî  r   )r?   Úkv0s     r@   Útest_kv0zTestBessel.test_kv0  s1   € ÝŒj˜˜2ÑÔˆÝ˜Ð/°gÀAÐFÑFÔFÐFÐFÐFrC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )NrX   rÞ   gKçÞ‹˜@rJ  r   r[   r  )r?   Úkv1s     r@   Útest_kv1zTestBessel.test_kv1  ó1   € ÝŒj˜˜3ÑÔˆÝ˜Ð.°WÀ1ÐEÑEÔEÐEÐEÐErC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S )NrJ   rÞ   g¢)lH—ÁH@rJ  r   r[   r  )r?   Úkv2s     r@   Útest_kv2zTestBessel.test_kv2  r  rC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S )NrA  rX   gÜ.€Õ”"éH)r   r   rÛ  r>   s    r@   Útest_kn_largeorderzTestBessel.test_kn_largeorder  s%   € Ý�œ
 2 qÑ)Ô)Ð+AÑBÔBÐBÐBÐBrC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S )Nr   g =‘`äXáCr  r>   s    r@   Útest_kv_largeargzTestBessel.test_kv_largearg"  s$   € Ý•W”Z  4Ñ(Ô(¨!Ñ,Ô,Ð,Ð,Ð,rC   c                 ór   — t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         d S r  )r   r   rñ  r>   s    r@   Útest_negv_kvezTestBessel.test_negv_kve%  s0   € Ý•W”[  cÑ*Ô*­G¬K¸¸cÑ,BÔ,BÑCÔCÐCÐCÐCrC   c                 ó>  — t          j        dd¦  «        }t          j        dd¦  «        t          d¦  «        z  }t	          ||dd¬¦  «         d}t          j        d|¦  «        }t          j        d|¦  «        t          |¦  «        z  }t	          ||dd¬¦  «         d S )Nr   rÞ   r?  r[   rÀ  )r   rñ  rî  r   r   )r?   Úkve1r  r!  Úkve2r  s         r@   rò  zTestBessel.test_kve(  s“   € ÝŒ{˜1˜RÑ Ô ˆÝŒj˜˜2ÑÔ�s 2™wœwÑ&ˆÝ˜˜c¨°QÐ7Ñ7Ô7Ð7ØˆÝŒ{˜1˜QÑÔˆÝŒj˜˜1‰oŒo�c !™fœfÑ$ˆÝ˜˜c¨°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   c                 ó‚   — d}t          t          j        d|¦  «         t          j        d|d¬¦  «        dd¬¦  «         d S )Nr8  rX   r   ©rf   rJ  r[   )r   r   rî  Úkvp)r?   r!  s     r@   Útest_kvp_v0n1zTestBessel.test_kvp_v0n11  sQ   € ØˆÝ�œ A qÑ)Ô)Ð)­7¬;°q¸!¸qÐ+AÑ+AÔ+AØ$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c                 óÌ   — d}d}t          j        |dz   |¦  «         ||z  t          j        ||¦  «        z  z   }t          j        ||d¬¦  «        }t          ||dd¬¦  «         d S )NrÝ  r8  rX   r  rJ  r   r[   ©r   rî  r   r   ©r?   rJ  r!  Úxcrå   s        r@   Útest_kvp_n1zTestBessel.test_kvp_n16  so   € ØˆØˆÝŒj˜˜1™˜QÑÔÐ ! A¡#¥g¤j°°1¡o¤oÑ"5Ñ5ˆÝŒK˜˜!˜qÐ!Ñ!Ô!ˆå˜˜A G°!Ð4Ñ4Ô4Ð4Ð4Ð4rC   c                 óî   — d}d}|dz  |dz  z   |z
  |dz  z  t          j        ||¦  «        z  t          j        |dz   |¦  «        |z  z   }t          j        ||d¬¦  «        }t          ||dd¬¦  «         d S )	NrÝ  r8  rJ   rX   r  rJ  r   r[   r#  r$  s        r@   Útest_kvp_n2zTestBessel.test_kvp_n2>  s†   € ØˆØˆØ�‰d�1�a‘4‰i˜‰k˜1˜a™4Ñ¥'¤*¨Q¨q¡/¤/Ñ1µG´J¸qÀ¹sÀ1Ñ4EÔ4EÀaÑ4GÑGˆÝŒK˜˜1 Ð"Ñ"Ô"ˆÝ˜˜A G°!Ð4Ñ4Ô4Ð4Ð4Ð4rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r¨  )r   r  r$  r   r©  s      r@   r   zTestBessel.test_y0E  r¬  rC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r®  )r   r:  r$  r   r¯  s      r@   r"  zTestBessel.test_y1J  s=   € ÝŒZ˜‰^Œ^ˆÝŒj˜˜2ÑÔˆÝ˜˜3 V°!Ð4Ñ4Ô4Ð4Ð4Ð4rC   c                 ót  — t          j        d¦  «        \  }}t          j        dd¬¦  «        \  }}t          ||f         }t          ||f         }t          t	          t          j        d|¦  «        ¦  «        ddd¬¦  «         t          t	          t          j        d|¦  «        |z
  ¦  «        ddd¬¦  «         d S )NrJ   rX   ©r  rž   rI  r   r[   )r   Úy0_zerosr   r   rC  r'  )r?   ÚyoÚypoÚzoÚzporï  Úallvals          r@   Útest_y0_zeroszTestBessel.test_y0_zerosO  s«   € ÝÔ! !Ñ$Ô$‰ˆˆ3ÝÔ! !¨AÐ.Ñ.Ô.‰ˆˆ3Ý��B�ŒiˆÝ�C˜�G”ˆÝ��GœJ s¨CÑ0Ô0Ñ1Ô1°3¸WÈ1ÐMÑMÔMÐMÝ��GœJ q¨#Ñ.Ô.°Ñ7Ñ8Ô8¸#ÀGÐRSÐTÑTÔTÐTÐTÐTrC   c                 ó�   — t          j        d¦  «        }t          |t          dg¦  «        t          dg¦  «        fdd¬¦  «         d S )NrX   rã  gÑ®BÊOªà?rz  r   r[   )r   Úy1_zerosr   r   )r?   r:  s     r@   Útest_y1_zeroszTestBessel.test_y1_zerosW  sU   € ÝÔ˜aÑ Ô ˆÝ˜�U G 9Ñ-Ô-­u°g°YÑ/?Ô/?Ð@Ø#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ó”   — t          j        dd¬¦  «        }t          |t          dg¦  «        t          dg¦  «        fdd¬¦  «         d S )NrX   r,  yL¦
F%uâ?!°rh‘íì?y;ßO�—nè¿Ð³Yõ¹Úâ?r  r   r[   )r   Ú	y1p_zerosr   r   )r?   Úy1ps     r@   Útest_y1p_zeroszTestBessel.test_y1p_zeros\  s[   € ÝÔ ¨!Ð,Ñ,Ô,ˆÝ˜�e ] OÑ4Ô4µe¸_Ð<MÑ6NÔ6NÐOØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 óÆ   — t          j        dd¦  «        }t          |t          ddg¦  «        dd¬¦  «         t          j        dd	¦  «        }t          |g d
¢d¬¦  «         d S )NrH   rJ   g¿œ3¢”@g·(³A&¹"@rz  r   r[   rß  rÖ   )g]E.ô+"|@gçHå(éð|@gffÂ|çŒ}@g&îb`~@g�HO_°�~@rÚ   rQ   )r   Úyn_zerosr   r   )r?   Úans     r@   Útest_yn_zeroszTestBessel.test_yn_zerosa  s�   € ÝÔ˜a Ñ"Ô"ˆÝ˜�E 7¨GÐ"4Ñ5Ô5¸FÈÐKÑKÔKÐKÝÔ˜c !Ñ$Ô$ˆÝ˜ð 4ð 4ð 4ð
 #ð	%ñ 	%ô 	%ð 	%ð 	%ð 	%rC   c                 ó\  — t          j        dd¦  «        }t          |t          ddg¦  «        dd¬¦  «         t          j        dd¦  «        }t          t          j        d|¦  «        dd	¬
¦  «         t          j        dd¦  «        }t          t          j        d|¦  «        dd¬
¦  «         d S )Nr   rJ   gÎQhÕ¾“@gŠzNþ·@rB  r[   é+   rÖ   rÚ   r"  rß  rØ   )r   Ú	ynp_zerosr   r   rj  ©r?   Úaos     r@   Útest_ynp_zeroszTestBessel.test_ynp_zerosl  s¤   € ÝÔ˜q Ñ#Ô#ˆÝ˜�E :¨zÐ":Ñ;Ô;À&ÈqÐQÑQÔQÐQÝÔ˜r !Ñ$Ô$ˆÝ�œ B¨Ñ+Ô+¨Q°UÐ;Ñ;Ô;Ð;ÝÔ˜s 1Ñ%Ô%ˆÝ�œ C¨Ñ,Ô,¨a°dÐ;Ñ;Ô;Ð;Ð;Ð;rC   c                 óz   — t          j        dd¦  «        }t          t          j        d|¦  «        dd¬¦  «         d S )Nrß  rÖ   r   r'  r"  )r   rA  r   rj  rB  s     r@   Útest_ynp_zeros_large_orderz%TestBessel.test_ynp_zeros_large_ordert  s;   € ÝÔ˜s 1Ñ%Ô%ˆÝ�œ C¨Ñ,Ô,¨a°eÐ<Ñ<Ô<Ð<Ð<Ð<rC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S ©NrX   rÞ   ç5‹,Ž1—
Àr?  r   r[   )r   r$  r   )r?   Úyn2ns     r@   r%  zTestBessel.test_ynx  s1   € ÝŒz˜!˜BÑÔˆÝ˜Ð1¸ÀQÐGÑGÔGÐGÐGÐGrC   c                 óV   — t          j        dd¦  «        }|t          j         k    sJ ‚d S )NrV   rX   )r<   r$  r]   r   )r?   r  s     r@   Útest_yn_gh_20405zTestBessel.test_yn_gh_20405|  s.   € å”9˜S !Ñ$Ô$ˆØ�BœF˜7Ò"Ð"Ð"Ð"Ð"Ð"rC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   r'  r>   s    r@   Útest_negv_yvzTestBessel.test_negv_yv�  sG   € Ý�œ
 2 qÑ)Ô)­G¬J°q¸!Ñ,<Ô,<Ð+<Ø$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c                 óV   — t          j        dd¦  «        }t          |ddd¬¦  «         d S rH  )r   r'  r   )r?   Úyv2s     r@   r(  zTestBessel.test_yv…  s1   € ÝŒj˜˜2ÑÔˆÝ˜Ð0°vÀAÐFÑFÔFÐFÐFÐFrC   c                 óz   — t          t          j        dd¦  «        t          j        dd¦  «         dd¬¦  «         d S rI  )r   r   r*  r>   s    r@   Útest_negv_yvezTestBessel.test_negv_yve‰  r¾  rC   c                 óð   — t          j        dd¦  «        }t          |ddd¬¦  «         t          j        dd¦  «        t	          d¦  «        z  }t          j        dd¦  «        }t          ||dd¬¦  «         d S )	NrX   rÞ   rI  r?  r   r[   rÀ  rM   )r   r*  r   r'  r   )r?   Úyve2Úyve2rÚyve22s       r@   r+  zTestBessel.test_yve�  su   € ÝŒ{˜1˜RÑ Ô ˆÝ˜Ð1¸ÀQÐGÑGÔGÐGÝ”
˜1˜UÑ#Ô#¥C¨¡G¤GÑ+ˆÝ”˜A˜eÑ$Ô$ˆÝ˜˜u¨6¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   c                 ó²   — t          j        dd¦  «        t          j        dd¦  «        z
  dz  }t          j        dd¦  «        }t          ||dd¬¦  «         d S )	NrX   rÞ   rŒ   rt  rJ   rJ  r   r[   )r   r'  rj  r   )r?   ÚyvprÚyvp1s      r@   Útest_yvpzTestBessel.test_yvp”  sW   € Ý”
˜1˜RÑ Ô ¥7¤:¨a°Ñ#3Ô#3Ñ3°SÑ8ˆÝŒ{˜1˜RÑ Ô ˆÝ˜˜d¨°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c              #   óª   K  — g d¢}g d¢}t          j        ||¦  «        E d{V —† t          j        dt          dd¦  «        z   dg¦  «        E d{V —† dS )z>Yield points at which to compare Cephes implementation to AMOS)iˆÿÿÿrÇ  ç      4ÀrŒ  rÝ   rö  rž   r‡   ç{®Gáú(@r  rÆ  )iìúÿÿéõÿÿÿr  rM   r‡   ry  ç     i@g     y@g     Ä‚@gÍÌÌÌÌä…@é  i'  Nr†   iÄÿÿÿrH  rà  )Ú	itertoolsÚproductr   )r?   rJ  r!  s      r@   Ú_cephes_vs_amos_pointsz!TestBessel._cephes_vs_amos_points™  s†   è è € ð KÐJÐJˆðð ð ˆåÔ$ Q¨Ñ*Ô*Ð*Ð*Ð*Ð*Ð*Ð*Ð*õ Ô$ S­6°#°r©?¬?Ñ%:¸S¸EÑBÔBÐBÐBÐBÐBÐBÐBÐBÐBÐBrC   ç•dyáý¥=r   Nc                 ó  — |                       ¦   «         D ]ô\  }}|� |||¦  «        rŒ |||¦  «         |||dz   ¦  «         |t          |¦  «        |¦  «        }
}	}t          j        |¦  «        r)t	          t          j        |	¦  «        dk    ||f¦  «         Œ…t          j        |¦  «        rt	          |	j        dk    ||f¦  «         Œµt          ||	||f||¬¦  «         |t          |¦  «        k    rt          |
|	||f||¬¦  «         Œõd S )Nr  çœu ˆ<ä7~r   )r’  rR   r\   )	rc  ru   r]   rÐ  r   rC  r   r  r   )r?   r¥  Úf2rR   r\   rÒ  rJ  r!  Úc1Úc2Úc3s              r@   Úcheck_cephes_vs_amoszTestBessel.check_cephes_vs_amos¥  s,  € Ø×/Ò/Ñ1Ô1ð 	;ð 	;‰DˆAˆqØÐ D D¨¨A¡J¤JÐØØ˜˜A˜q™œ 2 2 a¨¨"©¡:¤:¨r¨rµ#°a±&´&¸!©}¬}�B�ˆBÝŒx˜‰|Œ|ð ;Ý�œ˜r™
œ
 eÒ+¨a°¨VÑ4Ô4Ð4Ð4Ý”˜"‘”ð ;Ý˜œ 1š q¨! fÑ-Ô-Ð-Ð-å  B°°A°¸TÈÐMÑMÔMÐMØ�˜A™œ’;�;Ý# B¨°Q¸°FØ*.°Tð;ñ ;ô ;ð ;øð	;ð 	;rC   Úppc64lezfails on ppc64ler  c                 ó`   — |                       t          j        t          j        dd¬¦  «         d S )NrZ   çu5%ÅÅœ r(  )rk  r   r·  r´  r>   s    r@   Útest_jv_cephes_vs_amosz!TestBessel.test_jv_cephes_vs_amos´  ó+   € ð 	×!Ò!¥'¤*­g¬j¸uÈ6Ð!ÑRÔRÐRÐRÐRrC   c                 ó`   — |                       t          j        t          j        dd¬¦  «         d S )Nrd  rn  r(  ©rk  r   r'  r$  r>   s    r@   Útest_yv_cephes_vs_amosz!TestBessel.test_yv_cephes_vs_amos¹  rp  rC   c                 óh   — d„ }|                       t          j        t          j        dd|¬¦  «         d S )Nc                 ó(   — t          | ¦  «        dk    S )Nr#  )rC  )rJ  r!  s     r@   ÚskipperzDTestBessel.test_yv_cephes_vs_amos_only_small_orders.<locals>.skipper¿  s   € Ý�q‘6”6˜B’;ÐrC   rd  rn  )rR   r\   rÒ  rr  )r?   rv  s     r@   Ú(test_yv_cephes_vs_amos_only_small_ordersz3TestBessel.test_yv_cephes_vs_amos_only_small_orders¾  sG   € ð	ð 	ð 	à×!Ò!¥'¤*­g¬j¸uÈ6Ø'.ð 	"ñ 	0ô 	0ð 	0ð 	0ð 	0rC   c                 ó¼   — t          j        d¬¦  «        5  |                      t          j        t          j        dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrù  rî  g:Œ0âŽy5>rn  r(  )r]   rü  rk  r   r¦  r>   s    r@   Útest_iv_cephes_vs_amosz!TestBessel.test_iv_cephes_vs_amosÄ  s®   € ÝŒ[˜XÐ&Ñ&Ô&ð 	Vð 	VØ×%Ò%¥g¤jµ'´*À4ÈfÐ%ÑUÔUÐUð	Vð 	Vð 	Vñ 	Vô 	Vð 	Vð 	Vð 	Vð 	Vð 	Vð 	Vð 	Vøøøð 	Vð 	Vð 	Vð 	Vð 	Vð 	Vs   –.AÁAÁAc                 óØ  — d}t           j                             d¦  «         t           j                             d|¦  «        dt           j                             d|¬¦  «        z  z  }t           j                             d|¦  «        dt           j                             d|¬¦  «        z  z  }t           j                             d|¬¦  «        d	k    }||                              t           j        ¦  «        ||<   t          j        d
¬¦  «        5  t          j	        ||¦  «        }t          j	        ||dz   ¦  «        }t           j
        |t          |¦  «        dk    <   t           j
        |t          |¦  «        dk    <   d	|t          |¦  «        dk     <   d	|t          |¦  «        dk     <   t          ||z  dz
  ¦  «        }d	|t          j        |¦  «        <   d d d ¦  «         n# 1 swxY w Y   t          j        |¦  «        }t          ||         dk     ||         ||         t          j	        ||         ||         ¦  «        t          j	        ||         ||         dz   ¦  «        f¦  «         d S )Ni@B rX   r†   rM   rJ   ©rì   rÞ   r
  r   rù  rî  r  rf  gYóøÂn¥gH¯¼šò×Š>)r]   rc   ro   rð  rñ  rß   r+  rü  r   r¦  r   rC  r   Úargmaxr   )	r?   r9  rJ  rå   Úimskrh  ri  Údcrg   s	            r@   Ú test_iv_cephes_vs_amos_mass_testz+TestBessel.test_iv_cephes_vs_amos_mass_testÈ  sD  € àˆÝ
Œ	�Š�qÑÔÐÝŒI×Ò˜S !Ñ$Ô$¨­R¬Y×->Ò->¸qÀqÐ->Ñ-IÔ-IÑ'IÑIˆÝŒI×Ò˜S !Ñ$Ô$¨­R¬Y×->Ò->¸qÀqÐ->Ñ-IÔ-IÑ'IÑIˆå”	×!Ò! !¨!Ð!Ñ,Ô,°Ò1ˆØ�D”'—.’.¥¤Ñ*Ô*ˆˆ$‰åŒ[˜XÐ&Ñ&Ô&ð 	!ð 	!Ý”˜A˜qÑ!Ô!ˆBÝ”˜A˜q ™tÑ$Ô$ˆBõ #%¤&ˆB�s�2‰wŒw˜ŠÑÝ"$¤&ˆB�s�2‰wŒw˜ŠÑØ#$ˆB�s�2‰wŒw˜ÒÑ Ø#$ˆB�s�2‰wŒw˜ÒÑ å�R˜‘U˜Q‘Y‘”ˆBØ ˆB�rŒx˜‰|Œ|Ñð	!ð 	!ð 	!ñ 	!ô 	!ð 	!ð 	!ð 	!ð 	!ð 	!ð 	!øøøð 	!ð 	!ð 	!ð 	!õ ŒI�b‰MŒMˆõ 	ØˆqŒE�DŠLØˆqŒT�1�Q”4�œ A a¤D¨!¨A¬$Ñ/Ô/µ´¸A¸a¼DÀ!ÀAÄ$ÀrÁ'Ñ1JÔ1JÐKñ	
ô 	
ð 	
ð 	
ð 	
s   ÄCG Ç G$Ç'G$c                 óº   — |                       t          j        t          j        dd¬¦  «         |                       t          j        t          j        dd¬¦  «         d S )NrØ   rn  r(  )rk  r   rî  rÛ  r>   s    r@   Útest_kv_cephes_vs_amosz!TestBessel.test_kv_cephes_vs_amosè  sJ   € Ø×!Ò!¥'¤*­g¬j¸tÈ&Ð!ÑQÔQÐQØ×!Ò!¥'¤*­g¬j¸tÈ&Ð!ÑQÔQÐQÐQÐQrC   c                 óØ   — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         d S )	NrŒ   rH   gPòýîí‡Û?rÆ  r`  g©~OmÊ’?gY†8ÖE@”@gKÆSn˜ô–¿r¶  r>   s    r@   Útest_ticket_623zTestBessel.test_ticket_623ì  s_   € Ý�œ
 1 aÑ(Ô(Ð*=Ñ>Ô>Ð>Ý�œ
 3¨Ñ-Ô-Ð/AÑBÔBÐBÝ�œ
 3¨	Ñ2Ô2Ð4GÑHÔHÐHÐHÐHrC   c           	      ó  — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d	¦  «         t          t          j        dd¦  «        d
¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d	¦  «         t          t          j        dd¦  «        d
¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        t          j        dd¦  «        t          d¦  «        z  ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        t          d¦  «        z  ¦  «         t          t          j	        dd¦  «        t          j        dd¦  «        t          d¦  «        z  ¦  «         t          t          j
        dd¦  «        t          j        dd¦  «        t          d¦  «        z  ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        dt          j        dd¦  «        z  z   ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        dt          j        dd¦  «        z  z
  ¦  «         dS )zNegative-order BesselsrM   rX   gl—îÉ)Ü¿rõ  gè›ú•Pj½?g”kÖ²ÿè?g%¡E*2iú¿gæ•‹Èâ?gw-ý-`Á?gÃ‰�óÒBã?g‚®Wÿù?rö  g¥ÑÞ´—Û?gÅzò|å?çaÿþ²ó?gpôx%‚Ý?y      ð?        y      ð?      ð?yY…»DÓÐ?`{€ñ1wê¿y6 xùî?BŽ„]#Ó®?yÞ ¤‚¢©è?ùbæ>à‡Ù?yÙ.}9d•±?°¤°8ÇkØ¿y      ð?333333Ó?rõ  y333333Ó?      ð?r  N)r   r   r·  r'  r¦  rî  rº  r   r*  rª  rñ  rh  rp  r>   s    r@   Útest_ticket_853zTestBessel.test_ticket_853ñ  s”  € õ 	�œ
 2 qÑ)Ô)Ð+>Ñ?Ô?Ð?Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+=Ñ>Ô>Ð>Ý�œ
 2 qÑ)Ô)Ð+<Ñ=Ô=Ð=Ý�œ
 4¨Ñ+Ô+Ð-CÑDÔDÐDÝ�œ
 4¨Ñ+Ô+Ð-?Ñ@Ô@Ð@Ý�œ
 4¨Ñ+Ô+Ð->Ñ?Ô?Ð?Ý�œ
 4¨Ñ+Ô+Ð-?Ñ@Ô@Ð@å�œ
 2 tÑ,Ô,Ð.AÑBÔBÐBÝ�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAÝ�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAÝ�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAå�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAÝ�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAÝ�œ
 2 tÑ,Ô,Ð.@ÑAÔAÐAÝ�œ
 2 tÑ,Ô,Ð.?Ñ@Ô@Ð@å�œ
 4¨Ñ.Ô.Ð0FÑGÔGÐGÝ�œ
 4¨Ñ.Ô.Ð0UÑVÔVÐVÝ�œ
 4¨Ñ.Ô.Ð0BÑCÔCÐCÝ�œ
 4¨Ñ.Ô.Ð0UÑVÔVÐVå�œ
 4¨Ñ.Ô.Ð0AÑBÔBÐBÝ�œ
 4¨Ñ.Ô.Ð0RÑSÔSÐSÝ�œ
 4¨Ñ.Ô.Ð0BÑCÔCÐCÝ�œ
 4¨Ñ.Ô.Ð0RÑSÔSÐSå�œ D¨Ñ0Ô0µ'´*¸TÀ6Ñ2JÔ2JÍ3ÈtÉ9Ì9Ñ2TÑUÔUÐUÝ�œ D¨Ñ0Ô0µ'´*¸TÀ6Ñ2JÔ2JÍ3ÈtÉ9Ì9Ñ2TÑUÔUÐUÝ�œ D¨Ñ0Ô0µ'´*¸TÀ6Ñ2JÔ2JÍ3ÈtÉ9Ì9Ñ2TÑUÔUÐUÝ�œ D¨Ñ0Ô0µ'´*¸TÀ6Ñ2JÔ2JÍ3ÈvÉ;Ì;Ñ2VÑWÔWÐWåÝŒO˜D $Ñ'Ô'ÝŒJ�t˜TÑ"Ô" R­¬
°4¸Ñ(=Ô(=Ñ%=Ñ=ñ	
ô 	
ð 	
õ 	ÝŒO˜D $Ñ'Ô'ÝŒJ�t˜TÑ"Ô" R­¬
°4¸Ñ(=Ô(=Ñ%=Ñ=ñ	
ô 	
ð 	
ð 	
ð 	
rC   c                 óÜ  — t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j        dd¦  «        ¦  «        ¦  «         t          t          t          j	        dd¦  «        ¦  «        ¦  «         t          t          t          j	        dd¦  «        ¦  «        ¦  «         t          t          t          j
        dd¦  «        ¦  «        ¦  «         t          t          t          j
        dd¦  «        ¦  «        ¦  «         t          t          t          j        d¦  «        dd…         ¦  «                             ¦   «         t          j        d¦  «        ¦  «         t          t          t          j        d¦  «        dd…         ¦  «                             ¦   «          t          j        d¦  «        ¦  «         dS )zReal-valued Bessel domainsr†   rM   rX   r   rJ   rH   N)r   r   r   r·  r¦  r'  rî  rº  rª  r*  rñ  rE   rï  rÓ  r>   s    r@   Útest_ticket_854zTestBessel.test_ticket_854#  s%  € å••g”j  bÑ)Ô)Ñ*Ô*Ñ+Ô+Ð+Ý••g”j  bÑ)Ô)Ñ*Ô*Ñ+Ô+Ð+Ý••g”j  bÑ)Ô)Ñ*Ô*Ñ+Ô+Ð+Ý••g”j  BÑ'Ô'Ñ(Ô(Ñ)Ô)Ð)Ý••g”j  bÑ)Ô)Ñ*Ô*Ñ+Ô+Ð+Ý••g”j  BÑ'Ô'Ñ(Ô(Ñ)Ô)Ð)Ý••g”k # rÑ*Ô*Ñ+Ô+Ñ,Ô,Ð,Ý••g”k # rÑ*Ô*Ñ+Ô+Ñ,Ô,Ð,Ý••g”k # rÑ*Ô*Ñ+Ô+Ñ,Ô,Ð,Ý••g”k ! RÑ(Ô(Ñ)Ô)Ñ*Ô*Ð*Ý••g”k # rÑ*Ô*Ñ+Ô+Ñ,Ô,Ð,Ý••g”k ! RÑ(Ô(Ñ)Ô)Ñ*Ô*Ð*Ý••g”m BÑ'Ô'¨¨!¨Ô,Ñ-Ô-×1Ò1Ñ3Ô3µW´]À2Ñ5FÔ5FÑGÔGÐGÝ•E�'œ-¨Ñ+Ô+¨A¨a¨CÔ0Ñ1Ô1×5Ò5Ñ7Ô7Ð7½¼ÀrÑ9JÔ9JÑKÔKÐKÐKÐKrC   c                 óÆ   — t          t          j        dd¦  «        t          j        k    ¦  «         t          t          j        dd¦  «        t          j        k    ¦  «         d S )Nr  r   )r   r   rî  r]   r   rñ  r>   s    r@   Útest_gh_7909zTestBessel.test_gh_79094  sJ   € Ý•”
˜3 Ñ"Ô"¥b¤fÒ,Ñ-Ô-Ð-Ý•”˜C Ñ#Ô#¥r¤vÒ-Ñ.Ô.Ð.Ð.Ð.rC   c                 ó’   — t          t          j        dd¦  «        d¦  «         t          t          j        dd¦  «        d¦  «         dS )zReal-valued Bessel I overflowrX   i¼  gá¹Îõ¥‡¬~rU   i`  g ¶?los~N©r   r   r¦  r>   s    r@   Útest_ticket_503zTestBessel.test_ticket_5038  sB   € å�œ
 1 cÑ*Ô*Ð,AÑBÔBÐBÝ�œ
 4¨Ñ.Ô.Ð0EÑFÔFÐFÐFÐFrC   c                 óL   — t          t          j        dd¦  «        d¦  «         d S )Nrö  rX   r…  rŒ  r>   s    r@   Útest_iv_hyperg_poleszTestBessel.test_iv_hyperg_poles=  s%   € Ý�œ
 4¨Ñ+Ô+Ð->Ñ?Ô?Ð?Ð?Ð?rC   éÈ   c                 ó  — t          d|¦  «                             t          ¦  «        }|d|z  z   t          d|z  ¦  «        z  t	          j        |dz   ¦  «        z
  t	          j        ||z   dz   ¦  «        z
  }t          |t          |¦  «        <   t          |¦  «        }t          |¦  «         
                    ¦   «         t          t          ¦  «        j        z  |z  t          |d         ¦  «        dz  z   }|                     ¦   «         |fS )Nr   rJ   r†   rX   rM   r&  )r   rß   r   r   r   rH  r   r   r   rC  r&  r   r  Úsum©r?   rJ  r!  rf   rg   rR  r"  s          r@   Ú	iv_serieszTestBessel.iv_series@  sÈ   € Ý�1�a‰LŒL×Ò¥Ñ'Ô'ˆØˆq�‰s‰U•C˜˜1™‘I”IÑ¥¤°°!±Ñ 4Ô 4Ñ4µw´ÀqÈÁsÈ1ÁuÑ7MÔ7MÑMˆÝˆ�%�‰(Œ(‰Ý�‰FŒFˆÝ�!‰fŒf�jŠj‰lŒl�U¥6™]œ]Ô.Ñ.°Ñ2µS¸¸2¼±Z´ZÀ±]ÑBˆØ�uŠu‰wŒw˜ˆ|ÐrC   c                 óŒ   — dD ]@}|                       d|¦  «        \  }}t          t          j        |¦  «        |||¬¦  «         ŒAd S )N©r‡   ry  r_  r   ©r\   r’  )r”  r   r   r~  ©r?   r!  Úvaluer"  s       r@   Útest_i0_serieszTestBessel.test_i0_seriesH  óX   € Ø!ð 	Gð 	GˆAØŸš¨¨1Ñ-Ô-‰JˆE�3Ý�GœJ q™MœM¨5°sÀAÐFÑFÔFÐFÐFð	Gð 	GrC   c                 óŒ   — dD ]@}|                       d|¦  «        \  }}t          t          j        |¦  «        |||¬¦  «         ŒAd S )Nr–  rX   r—  )r”  r   r   r…  r˜  s       r@   Útest_i1_serieszTestBessel.test_i1_seriesM  r›  rC   c           	      óœ   — dD ]H}dD ]C}|                       ||¦  «        \  }}t          t          j        ||¦  «        ||||f¬¦  «         ŒDŒId S )N)r\  rŒ  rÝ   rž   r‡   r]  r  )r‡   ry  r_  y      ð¿       @r—  )r”  r   r   r¦  ©r?   rJ  r!  r™  r"  s        r@   Útest_iv_serieszTestBessel.test_iv_seriesR  sw   € Ø7ð 	Sð 	SˆAØ,ð Sð S�Ø!Ÿ^š^¨A¨qÑ1Ô1‘
��sÝ¥¤
¨1¨aÑ 0Ô 0°%¸cÈAÈqÈ6ÐRÑRÔRÐRÐRðSð	Sð 	SrC   c           	      óâ   — ddgddgddgddgddgd	d
gddgddgg}t          |¦  «        D ]D\  }\  }}t          j        |¦  «        t          | ¦  «        z  }t	          ||ddd|› �¬¦  «         ŒEd S )Nrž   r‡   rZ   r  g0oO…øí?r†   gÖÊÿ!¤ä?gr¢·bÏÝ?ræ  gâ®ÄÞpHÑ?r•   gð“ÌíC~Ç?ç      4@gïgo¯×û¶?r?  r   r�  r‘  )r¹  r   r~  r   r   ©r?   r“  rz   rå   rJ  r”  s         r@   r  zTestBessel.test_i0X  s²   € Ø˜�*Ø˜#�,Ø˜Ð%Ø˜Ð%Ø˜Ð%Ø˜Ð%Ø˜Ð%Ø˜Ð&ðˆõ # 6Ñ*Ô*ð 	Nð 	N‰IˆA‰v��1Ý”˜A‘”¥ a R¡¤Ñ(ˆBÝ˜B ¨°QÀÈÀÀÐMÑMÔMÐMÐMð	Nð 	NrC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r¨  )r   r‚  rª  r   )r?   ÚoizeÚoizers      r@   rƒ  zTestBessel.test_i0ef  ó=   € ÝŒ{˜2‰ŒˆÝ”˜A˜rÑ"Ô"ˆÝ˜˜e¨&°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c           	      óÜ   — ddgddgddgddgdd	gd
dgddgg}t          |¦  «        D ]D\  }\  }}t          j        |¦  «        t          | ¦  «        z  }t	          ||ddd|› �¬¦  «         ŒEd S )Nrž   rZ   gjïËÙß|Ë=r  gÈ•!§[1§?r†   g;Í˜Ä?r‡   gèRùÎœÊ?r•   g|«äýÄ?r¢  g}¦‹ÊÎf¶?r?  r   r�  r‘  )r¹  r   r…  r   r   r£  s         r@   r†  zTestBessel.test_i1k  s¬   € Ø˜�*ØÐ0Ð1Ø˜Ð%Ø˜Ð%Ø˜Ð%Ø˜Ð%Ø˜Ð&ðˆõ # 6Ñ*Ô*ð 	Nð 	N‰IˆA‰v��1Ý”˜A‘”¥ a R¡¤Ñ(ˆBÝ˜B ¨°QÀÈÀÀÐMÑMÔMÐMÐMð	Nð 	NrC   c                 ó~   — t          j        d¦  «        }t          j        dd¦  «        }t          ||dd¬¦  «         d S r®  )r   rˆ  rª  r   )r?   Úoi1eÚoi1ers      r@   r‰  zTestBessel.test_i1ex  r§  rC   c                 óŒ   — t          t          j        d¦  «        ¦  «        }t          |t          ddg¦  «        dd¬¦  «         d S )NrÖ   gÑ—JBÙ?@g*uõÌù?rz  r   r[   )r   r   r™  r   )r?   Úiti0s     r@   rš  zTestBessel.test_iti0k0}  sR   € Ý•W”^ AÑ&Ô&Ñ'Ô'ˆÝ˜�eÐ%7Ð9KÐ$LÑMÔMØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ór   — t          j        d¦  «        }t          |t          ddg¦  «        dd¬¦  «         d S )Nr  gÝ³¿É„|T?gVäÀ‚Æ¥
@rB  r   r[   )r   r‹  r   r   )r?   Úit2ks     r@   rŒ  zTestBessel.test_it2i0k0‚  sJ   € ÝŒ˜rÑ"Ô"ˆÝ˜�eÐ%:Ð<NÐ$OÑPÔPØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 óv   — t          j        dd¦  «        t          d¦  «        z  }t          |ddd¬¦  «         d S )Nr   r  çš™™™™™¹¿gv M…øí?rJ  r[   )r   r¦  r   r   )r?   Úiv1s     r@   r§  zTestBessel.test_iv‡  s<   € ÝŒj˜˜2ÑÔ�s 3™xœxÑ'ˆÝ˜Ð0°wÀQÐGÑGÔGÐGÐGÐGrC   c                 ór   — t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         d S r¥  )r   r   rª  r>   s    r@   Útest_negv_ivezTestBessel.test_negv_ive‹  s0   € Ý•W”[  1Ñ%Ô%¥w¤{°2°aÑ'8Ô'8Ñ9Ô9Ð9Ð9Ð9rC   c                 ó    — t          j        dd¦  «        }t          j        dd¦  «        t          d¦  «        z  }t	          ||dd¬¦  «         d S )Nr   r  r±  rJ  r[   )r   rª  r¦  r   r   )r?   Úive1r²  s      r@   r«  zTestBessel.test_iveŽ  sL   € ÝŒ{˜1˜RÑ Ô ˆÝŒj˜˜2ÑÔ�s 3™xœxÑ'ˆÝ˜˜c¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 óx   — t          t          j        dd¦  «        t          j        dd¦  «        dd¬¦  «         d S )NrX   rJ   r   rJ  r[   )r   r   r¦  Úivpr>   s    r@   Ú	test_ivp0zTestBessel.test_ivp0“  s8   € Ý�œ
 1 aÑ(Ô(­'¬+°a¸Ñ*;Ô*;À'ÐPQÐRÑRÔRÐRÐRÐRrC   c                 ó²   — t          j        dd¦  «        t          j        dd¦  «        z   dz  }t          j        dd¦  «        }t          ||dd¬¦  «         d S )Nr   rJ   rX   rJ  r[   )r   r¦  r¸  r   r6  s      r@   Útest_ivpzTestBessel.test_ivp–  sS   € ÝŒZ˜˜!‰_Œ_�wœz¨!¨A™œÑ.°Ñ1ˆÝŒK˜˜!ÑÔˆÝ˜˜1 7°Ð3Ñ3Ô3Ð3Ð3Ð3rC   )rd  r   N)r�  )Vr3  r4  r5  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  r  rò  r!  r&  r(  r   r"  r3  r6  r:  r>  rD  rF  r%  rL  rN  r(  rR  r+  rZ  rc  rk  r6  r7  r8  r¬  Úmachinero  rs  rw  ry  Úslowr  r�  rƒ  r†  rˆ  rŠ  r�  r�  r”  rš  r�  r   r  rƒ  r†  r‰  rš  rŒ  r§  r´  r«  r¹  r»  r:  rC   r@   rŸ  rŸ  H  s�  € € € € € ð-ð -ð -ð
-ð -ð -ð
8ð 8ð 8ð6ð 6ð 6ð
6ð 6ð 6ð
Ið Ið IðTð Tð Tð	Nð 	Nð 	Nð.ð .ð .ð=ð =ð =ðLð Lð Lð<Gð Gð Gð$Jð Jð Jð	>ð 	>ð 	>ð-ð -ð -ð0;ð ;ð ;ð
7ð 7ð 7ð
:ð :ð :ð
7ð 7ð 7ð
:ð :ð :ð
Gð Gð Gð&Fð Fð FðBð Bð BðGð Gð GðFð Fð FðFð Fð FðCð Cð Cð-ð -ð -ðDð Dð Dð8ð 8ð 8ð.ð .ð .ð
5ð 5ð 5ð5ð 5ð 5ð6ð 6ð 6ð
5ð 5ð 5ð
Uð Uð Uð-ð -ð -ð
-ð -ð -ð
	%ð 	%ð 	%ð<ð <ð <ð=ð =ð =ðHð Hð Hð#ð #ð #ð
.ð .ð .ðGð Gð Gð.ð .ð .ð;ð ;ð ;ð:ð :ð :ð

Cð 
Cð 
Cð;ð ;ð ;ð ;ð „[×ÒÐ'�xÔ'Ñ)Ô)¨YÒ6Ø0ð ñ 2ô 2ðSð Sñ2ô 2ðSð „[×ÒÐ'�xÔ'Ñ)Ô)¨YÒ6Ø0ð ñ 2ô 2ðSð Sñ2ô 2ðSð0ð 0ð 0ðVð Vð Vð „[Ôð
ð 
ñ Ôð
ð>Rð Rð RðIð Ið Ið
0
ð 0
ð 0
ðdLð Lð Lð"/ð /ð /ðGð Gð Gð
@ð @ð @ðð ð ð ðGð Gð Gð
Gð Gð Gð
Sð Sð SðNð Nð Nð:ð :ð :ð
Nð Nð Nð:ð :ð :ð
-ð -ð -ð
-ð -ð -ð
Hð Hð Hð:ð :ð :ð9ð 9ð 9ð
Sð Sð Sð4ð 4ð 4ð 4ð 4rC   rŸ  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestLaguerrec                 ó¬  — t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          j        d¦  «        }t          |j        dgdd¬¦  «         t          |j        d	dgdd¬¦  «         t          |j        t	          g d
¢¦  «        dz  dd¬¦  «         t          |j        t	          g d¢¦  «        dz  dd¬¦  «         t          |j        t	          g d¢¦  «        dz  dd¬¦  «         t          |j        t	          g d¢¦  «        dz  dd¬¦  «         d S )Nr   rX   rJ   rŒ   rH   rÖ   r‘  r[   rM   )rX   rK  rJ   rt  )rM   r  iîÿÿÿrN   rH  )rX   iðÿÿÿéH   i ÿÿÿrÜ   rA  )rM   r×   i8ÿÿÿiX  i¨ýÿÿr  r  )r   Úlaguerrer   rþ  r   )r?   Úlag0Úlag1Úlag2Úlag3Úlag4Úlag5s          r@   Útest_laguerrezTestLaguerre.test_laguerre�  sd  € ÝÔ Ñ"Ô"ˆÝÔ Ñ"Ô"ˆÝÔ Ñ"Ô"ˆÝÔ Ñ"Ô"ˆÝÔ Ñ"Ô"ˆÝÔ Ñ"Ô"ˆÝ˜œ  ¨'¸Ð:Ñ:Ô:Ð:Ý˜œ  Q ¨g¸AÐ>Ñ>Ô>Ð>Ý˜œ¥ i i iÑ 0Ô 0°3Ñ 6¸WÈ1ÐMÑMÔMÐMÝ˜œ¥ m m mÑ 4Ô 4°SÑ 8¸wÈQÐOÑOÔOÐOÝ˜œ¥Ð&8Ð&8Ð&8Ñ 9Ô 9¸$Ñ >Ø$¨1ð	.ñ 	.ô 	.ð 	.å˜œ¥Ð&DÐ&DÐ&DÑ EÔ EÈÑ MØ$¨1ð	.ñ 	.ô 	.ð 	.ð 	.ð 	.rC   c           
      óh  — dt           j                             ¦   «         z  dz
  }t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t          j        d|¦  «        }t	          |j        dg¦  «         t	          |j        d|dz   g¦  «         t          |j        t          dd|dz   z  |d	z   |d
z   z  g¦  «        d
z  dd¬¦  «         t          dd|dz   z  d|dz   z  |dz   z  |dz   |dz   z  |dz   z  g¦  «        dz  }t          |j        |dd¬¦  «         d S )NrÖ   rñ  r   rX   rJ   rŒ   rM   rõ  r‡   rt  rÏ   r[   r  rH  )r]   rc   r   rm  r   rþ  r   r   )r?   rg   rÃ  rÄ  rÅ  rÆ  r"  s          r@   Útest_genlaguerrezTestLaguerre.test_genlaguerre­  sZ  € Ø�bŒi×ÒÑ Ô Ñ  3Ñ&ˆÝÔ" 1 QÑ'Ô'ˆÝÔ" 1 QÑ'Ô'ˆÝÔ" 1 QÑ'Ô'ˆÝÔ" 1 QÑ'Ô'ˆÝ�T”V˜a˜SÑ!Ô!Ð!Ý�T”V˜b ! a¡%˜[Ñ)Ô)Ð)Ý˜œ¥ q¨"°°A±©,¸¸R¹ÀAÈÁFÑ8KÐ&LÑ MÔ MÐPSÑ SØ#¨!ð	-ñ 	-ô 	-ð 	-å˜"Ø˜q 1™u™+Ø  A¡™,¨!¨a©%Ñ0Ø˜q™5 Q¨¡UÑ+¨q°1©uÑ5ð7ñ 8ô 8ð ;>ñ>ˆõ 	˜œ ¨v¸AÐ>Ñ>Ô>Ð>Ð>Ð>rC   N)r3  r4  r5  rÉ  rË  r:  rC   r@   r¿  r¿  œ  s2   € € € € € ð.ð .ð .ð ?ð ?ð ?ð ?ð ?rC   r¿  c                   ó   — e Zd Zd„ ZdS )Ú
TestLambdac           
      ó‚  — t          j        dd¦  «        }t          t          j        dd¦  «        dt          j        dd¦  «        z  dz  g¦  «        t          t          j        dd¦  «        dt          j        dd¦  «        z  dz  dt          j        dd¦  «        z  dz  z   g¦  «        f}t          ||dd¬¦  «         d S )	NrX   r  r   rJ   rõ  rA  r?  r[   )r   Úlmbdar   r´  ri  r·  r   )r?   ÚlamÚlamrs      r@   Ú
test_lmbdazTestLambda.test_lmbda¿  sº   € ÝŒm˜A˜bÑ!Ô!ˆå•7”:˜a Ñ#Ô# Q¥w¤z°!°BÑ'7Ô'7Ñ%7¸Ñ%:Ð;Ñ<Ô<Ý•7”;˜q Ñ$Ô$ b­¬°A°bÑ)9Ô)9Ñ&9¸#Ñ&=ÀÅ'Ä+ÈaÐPRÑBSÔBSÑ@SÐTVÑ@VÑ&VÐWÑXÔXð
ˆõ 	˜˜T¨°QÐ7Ñ7Ô7Ð7Ð7Ð7rC   N)r3  r4  r5  rÒ  r:  rC   r@   rÍ  rÍ  ¾  s#   € € € € € ð8ð 8ð 8ð 8ð 8rC   rÍ  c                   ó   — e Zd Zd„ Zd„ ZdS )Ú	TestLog1pc                 óú   — t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        f}t          d¦  «        t          d¦  «        t          d¦  «        f}t          ||dd¬¦  «         d S )Nr&  r  r   r  r?  r   r[   ©r   rö  r   r   )r?   Úl1pÚl1prls      r@   r÷  zTestLog1p.test_log1pÉ  sg   € ÝŒ}˜RÑ Ô ¥'¤-°Ñ"3Ô"3µW´]À2Ñ5FÔ5FÐGˆÝ�R‘”�#˜b™'œ'¥3 r¡7¤7Ð+ˆÝ˜˜U¨°aÐ8Ñ8Ô8Ð8Ð8Ð8rC   c                 óú   — t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        f}t          d¦  «        t          d¦  «        t          d¦  «        f}t          ||dd¬	¦  «         d S )
NrX   rö  r–  rJ   r7  r8  r?  r   r[   rÖ  )r?   Úl1pmÚl1pmrls      r@   Útest_log1pmorezTestLog1p.test_log1pmoreÎ  sg   € Ý”˜aÑ Ô ¥'¤-°Ñ"4Ô"4µg´mÀCÑ6HÔ6HÐIˆÝ�a‘&”&�˜S™œ¥# c¡(¤(Ð+ˆÝ˜˜f¨6¸Ð:Ñ:Ô:Ð:Ð:Ð:rC   N)r3  r4  r5  r÷  rÜ  r:  rC   r@   rÔ  rÔ  È  s2   € € € € € ð9ð 9ð 9ð
;ð ;ð ;ð ;ð ;rC   rÔ  c           	      ó¸   ‡‡— ‰dz  dk    rdnd}d|z  t          ˆˆfd„| dz  |dz  ddt          j        z  | z  |z  d¬	¦  «        d         z  }| dk    r|dz  }|S )
zÜ
    Compute the Fourier coefficient of the even Mathieu function.
    The integral definition of a Fourier coefficient is used.
    This function is used as an alternative implementation of
    mathieu_even_coef().
    rJ   r   r  éh  rX   c                 ó<   •— t          j        ‰‰| ¦  «        d         S r;   )r   r)  ©rØ  rf   r  s    €€r@   rû  z7ce_fourier_coefficient_using_integral.<locals>.<lambda>Þ  ó   ø€ ¥'Ô"5°a¸¸AÑ">Ô">¸qÔ"A€ rC   r
   r'  ©ÚweightÚwvarÚepsrel©r5   r]   r   ©rg   rf   r  Úperiodrþ  s    ``  r@   Ú%ce_fourier_coefficient_using_integralré  Ô  s–   øø€ ð ˜‘E˜Q’J�JˆSˆS C€Fð 
ˆ6‰•4ÐAÐAÐAÐAÐAØ˜ ™	 6¨!¡8Ø$¨1­R¬U©7°1©9°VÑ+;ÀEðKñ Kô KàKLôNñ 	N€Að 	ˆ1‚u€uØ	ˆQ‰ˆØ€HrC   c           	      ó²   ‡‡— | dk    rdS ‰dz  dk    rdnd}d|z  t          ˆˆfd„| dz  |dz  ddt          j        z  | z  |z  d¬	¦  «        d         z  }|S )
zÚ
    Compute the Fourier coefficient of the odd Mathieu function.
    The integral definition of a Fourier coefficient is used.
    This function is used as an alternative implementation of
    mathieu_odd_coef().
    r   rž   rJ   r  rÞ  c                 ó<   •— t          j        ‰‰| ¦  «        d         S r;   )r   r/  rà  s    €€r@   rû  z7se_fourier_coefficient_using_integral.<locals>.<lambda>ò  rá  rC   r	   r'  râ  ræ  rç  s    ``  r@   Ú%se_fourier_coefficient_using_integralrì  æ  s�   øø€ ð 	ˆA‚v€vØˆsØ˜‘E˜Q’J�JˆSˆS C€FØ	
ˆ6‰•4ÐAÐAÐAÐAÐAØ˜ ™	 6¨!¡8Ø$¨1­R¬U©7°1©9°VÑ+;ÀEðKñ Kô KàKLôNñ 	N€Að €HrC   c                   ó>  — e Zd Zej                             dddg¦  «        d„ ¦   «         Zej                             dddg¦  «        d„ ¦   «         Zej                             ddd	g¦  «        d
„ ¦   «         Zej                             dddg¦  «        d„ ¦   «         Z	dS )ÚTestMathieuzn, q)rH   rà  )r
  g      @c                 óº   ‡‡— t          j        ‰‰¦  «        }ˆˆfd„t          d¦  «        D ¦   «         }t          ||d t	          |¦  «        …         d¬¦  «         d S )Nc                 ó2   •— g | ]}t          |‰‰¦  «        ‘ŒS r:  ©ré  ©r   rg   rf   r  s     €€r@   r!  zNTestMathieu.test_mathieu_even_coef_against_integral_n_even.<locals>.<listcomp>  s&   ø€ ÐNÐNÐNÀÕ2°1°a¸Ñ;Ô;ÐNÐNÐNrC   rH   rZ   rQ   ©r   r(   rv   r   rÔ  ©r?   rf   r  ÚArþ  s    ``  r@   Ú.test_mathieu_even_coef_against_integral_n_evenz:TestMathieu.test_mathieu_even_coef_against_integral_n_evenú  sf   øø€ õ
 Ô% a¨Ñ+Ô+ˆð OÐNÐNÐNÐNÅUÈ1ÁXÄXÐNÑNÔNˆÝ˜˜1˜W�c !™fœf˜Wœ:¨EÐ2Ñ2Ô2Ð2Ð2Ð2rC   )rŒ   rà  )rL   rJ   c                 ó¾   ‡‡— t          j        ‰‰¦  «        }ˆˆfd„t          ddd¦  «        D ¦   «         }t          ||d t	          |¦  «        …         d¬¦  «         d S )Nc                 ó2   •— g | ]}t          |‰‰¦  «        ‘ŒS r:  rñ  rò  s     €€r@   r!  zMTestMathieu.test_mathieu_even_coef_against_integral_n_odd.<locals>.<listcomp>  ó&   ø€ ÐTÐTÐTÀÕ2°1°a¸Ñ;Ô;ÐTÐTÐTrC   rX   r  rJ   rZ   rQ   ró  rô  s    ``  r@   Ú-test_mathieu_even_coef_against_integral_n_oddz9TestMathieu.test_mathieu_even_coef_against_integral_n_odd  sk   øø€ õ Ô% a¨Ñ+Ô+ˆð UÐTÐTÐTÐTÅUÈ1ÈaÐQRÁ^Ä^ÐTÑTÔTˆÝ˜˜1˜W�c !™fœf˜Wœ:¨EÐ2Ñ2Ô2Ð2Ð2Ð2rC   )rJ   rà  )r&  rJ   c                 ó¼   ‡‡— t          j        ‰‰¦  «        }ˆˆfd„t          dd¦  «        D ¦   «         }t          ||d t	          |¦  «        …         d¬¦  «         d S )Nc                 ó2   •— g | ]}t          |‰‰¦  «        ‘ŒS r:  ©rì  rò  s     €€r@   r!  zMTestMathieu.test_mathieu_odd_coef_against_integral_n_even.<locals>.<listcomp>  s&   ø€ ÐQÐQÐQÀÕ2°1°a¸Ñ;Ô;ÐQÐQÐQrC   rX   rÖ   rZ   rQ   ©r   r'   rv   r   rÔ  ©r?   rf   r  ÚBrþ  s    ``  r@   Ú-test_mathieu_odd_coef_against_integral_n_evenz9TestMathieu.test_mathieu_odd_coef_against_integral_n_even  sh   øø€ õ Ô$ Q¨Ñ*Ô*ˆð RÐQÐQÐQÐQÅUÈ1ÈaÁ[Ä[ÐQÑQÔQˆÝ˜˜1˜W�c !™fœf˜Wœ:¨EÐ2Ñ2Ô2Ð2Ð2Ð2rC   c                 ó¾   ‡‡— t          j        ‰‰¦  «        }ˆˆfd„t          ddd¦  «        D ¦   «         }t          ||d t	          |¦  «        …         d¬¦  «         d S )Nc                 ó2   •— g | ]}t          |‰‰¦  «        ‘ŒS r:  rý  rò  s     €€r@   r!  zLTestMathieu.test_mathieu_odd_coef_against_integral_n_odd.<locals>.<listcomp>&  rù  rC   rX   r  rJ   rZ   rQ   rþ  rÿ  s    ``  r@   Ú,test_mathieu_odd_coef_against_integral_n_oddz8TestMathieu.test_mathieu_odd_coef_against_integral_n_odd  sk   øø€ õ Ô$ Q¨Ñ*Ô*ˆð UÐTÐTÐTÐTÅUÈ1ÈaÐQRÁ^Ä^ÐTÑTÔTˆÝ˜˜1˜W�c !™fœf˜Wœ:¨EÐ2Ñ2Ô2Ð2Ð2Ð2rC   N)
r3  r4  r5  r6  r7  r9  rö  rú  r  r  r:  rC   r@   rî  rî  ø  sÞ   € € € € € à„[×Ò˜V h°	Ð%:Ñ;Ô;ð3ð 3ñ <Ô;ð3ð „[×Ò˜V h°Ð%7Ñ8Ô8ð	3ð 	3ñ 9Ô8ð	3ð „[×Ò˜V h°Ð%8Ñ9Ô9ð	3ð 	3ñ :Ô9ð	3ð „[×Ò˜V h°Ð%7Ñ8Ô8ð	3ð 	3ñ 9Ô8ð	3ð 	3ð 	3rC   rî  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestFresnelIntegralc                 ó   — d S ru  r:  r>   s    r@   rR  z$TestFresnelIntegral.test_modfresnelp,  rv  rC   c                 ó   — d S ru  r:  r>   s    r@   rN  z$TestFresnelIntegral.test_modfresnelm/  rv  rC   N)r3  r4  r5  rR  rN  r:  rC   r@   r  r  *  s2   € € € € € ðð ð ðð ð ð ð rC   r  c                   ó   — e Zd Zd„ ZdS )ÚTestOblCvSeqc                 óv   — t          j        ddd¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )Nr   rŒ   rX   )g~TÃ~OÖ¿g£té_’Jö?gmÅþ²{ò@g@j'÷û&@rz  r[   )r   Ú
obl_cv_seqr   r   )r?   Úobls     r@   Útest_obl_cv_seqzTestOblCvSeq.test_obl_cv_seq4  s[   € ÝÔ   1 QÑ'Ô'ˆÝ˜�Uð $/ð $/ð $/ñ 0ô 0ð $¨!ð		-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   N)r3  r4  r5  r  r:  rC   r@   r
  r
  3  ó#   € € € € € ð-ð -ð -ð -ð -rC   r
  c                   ó8   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	dS )	ÚTestParabolicCylinderc                 ó–   — t          j        dd¦  «        }t          |t          ddg¦  «        t          ddg¦  «        fdd¬	¦  «         d S )
NrX   r  gìQ¸…ëï?gx$(~Œ¹?gx$(~Œ©¿gÃõ(\�Âï?rH  r   r[   )r   Úpbdn_seqr   r   )r?   Úpbs     r@   Útest_pbdn_seqz#TestParabolicCylinder.test_pbdn_seq>  sp   € ÝÔ˜a Ñ$Ô$ˆÝ˜�U FØ$*ð$,ñ -ô -å" GØ$*ð$,ñ -ô -ð.ð $¨!ð		-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   c                 ó¤   — t          j        dd¦  «         dt          j        dd¦  «        d         z  t          j        dd¦  «        d         z
   d S )NrX   rÞ   r  r   )r   r¥  r>   s    r@   r¦  zTestParabolicCylinder.test_pbdvF  sL   € ÝŒ�Q�rÑÔÐØ•”˜a Ñ#Ô# AÔ&Ñ&­¬°a¸Ñ);Ô);¸AÔ)>Ñ>Ð>Ð>Ð>rC   c                 óÐ   — t          j        dd¦  «        }t          j        dd¦  «        }t          |t	          |d         ¦  «        t	          |d         ¦  «        fdd¬¦  «         d S )NrX   r  r   rH  r[   )r   r  Úpbdv_seqr   r   )r?   ÚpbnÚpbvs      r@   Útest_pbdv_seqz#TestParabolicCylinder.test_pbdv_seqJ  s\   € ÝÔ˜q Ñ$Ô$ˆÝÔ˜q Ñ$Ô$ˆÝ˜�d 3 q¤6™lœl­D°°Q´©L¬LÐ9ÀÈQÐOÑOÔOÐOÐOÐOrC   c                 óº  — t          j        ddd¦  «        }d|dz  z  t          j        t           j        ¦  «        z  t	          j        dd|z  z
  ¦  «        z  }t          t	          j        |d¦  «        d         |dd¬	¦  «         t          t	          j        d
d¦  «        d         dd¬¦  «         t          t	          j        dd¦  «        d         dd¬¦  «         d S )Nr  r&  rÖ   rJ   r†   rž   r   r'  r(  g®Gáz®$@gq=
×£p4@g©³HáÓQ9r�   rQ   g�Âõ(\#Àg…ëQ¸…@gŸ¡kÓS a>)r]   r8  r   r   r   rÙ  r   r¥  )r?   Úetar!  s      r@   Útest_pbdv_pointsz&TestParabolicCylinder.test_pbdv_pointsO  sÈ   € åŒk˜#˜r 1Ñ%Ô%ˆØ��A‘‰J•r”w�rœu‘~”~Ñ%¥g¤n°R¸¸3¹±YÑ&?Ô&?Ñ?ˆÝ�œ S¨"Ñ-Ô-¨aÔ0°!¸%ÀeÐLÑLÔLÐLõ 	�œ U¨EÑ2Ô2°1Ô5Ð7JÐQVÐWÑWÔWÐWÝ�œ U¨DÑ1Ô1°!Ô4Ð6JÐQVÐWÑWÔWÐWÐWÐWrC   c                 ó’  — t          j        ddd¦  «        d d …d f         }t          j        ddd¦  «        d d d …f         }t          j        ||¦  «        }ddt	          |¦  «        z  z   }t          j        |||z   ¦  «        d         t          j        |||z
  ¦  «        d         z
  |z  d	z  }t          |d
         |dd¬¦  «         d S ©NrK  rH   r
  r  r&  rÖ   rë  r   rt  rX   r±   r(  )r]   r8  r   r¥  rC  r   ©r?   rå   r  r.  r  Údps         r@   Útest_pbdv_gradientz(TestParabolicCylinder.test_pbdv_gradientY  óÇ   € ÝŒK˜˜A˜qÑ!Ô! ! ! ! D &Ô)ˆÝŒk˜#˜r 1Ñ%Ô% d¨1¨1¨1 fÔ-ˆåŒL˜˜aÑ Ô ˆØ�T�#˜a™&œ&‘[Ñ ˆÝŒl˜3  C¡Ñ(Ô(¨Ô+­g¬l¸3ÀÀCÁÑ.HÔ.HÈÔ.KÑKÈsÑRÐUWÑWˆÝ˜˜!œ˜b t°$Ð7Ñ7Ô7Ð7Ð7Ð7rC   c                 ó’  — t          j        ddd¦  «        d d …d f         }t          j        ddd¦  «        d d d …f         }t          j        ||¦  «        }ddt	          |¦  «        z  z   }t          j        |||z   ¦  «        d         t          j        |||z
  ¦  «        d         z
  |z  d	z  }t          |d
         |dd¬¦  «         d S r   )r]   r8  r   r¨  rC  r   r!  s         r@   Útest_pbvv_gradientz(TestParabolicCylinder.test_pbvv_gradientb  r$  rC   c                 óÆ   — t          j        dd¦  «        \  }}t          |t          j        g d¢¦  «        ¦  «         t          |t          j        g d¢¦  «        ¦  «         d S )NrJ   rŒ   )g:4¦¬€Ï@gŽ1{Ð½õ?g7,%Ònšá?)g�µ»ûXØ@g=<'‡’î?gÊ ¾áùá?)r   Úpbvv_seqr   r]   r   )r?   Úres1Úres2s      r@   Útest_pbvv_seqz#TestParabolicCylinder.test_pbvv_seqk  s†   € ÝÔ% a¨Ñ+Ô+‰
ˆˆdÝ˜�bœhð (<ð (<ð (<ñ =ô =ñ 	>ô 	>ð 	>õ 	˜�bœhð (;ð (;ð (;ñ <ô <ñ 	=ô 	=ð 	=ð 	=ð 	=rC   N)
r3  r4  r5  r  r¦  r  r  r#  r&  r+  r:  rC   r@   r  r  =  sƒ   € € € € € ð-ð -ð -ð?ð ?ð ?ðPð Pð Pð
Xð Xð Xð8ð 8ð 8ð8ð 8ð 8ð=ð =ð =ð =ð =rC   r  c                   ó   — e Zd Zd„ ZdS )ÚTestPolygammac           	      ó¢  — t          j        dd¦  «        }t          j        dd¦  «        }t          |ddd¬¦  «         t          |ddd¬¦  «         g d	¢}t          t          j        d|¦  «        t          j        |¦  «        d
d¬¦  «         g d¢}g d¢}g d¢}t          t          j        ||¦  «        |d
d¬¦  «         t	          j        |gdz  ¦  «        }t          t          j        |t	          j        |gdz  ¦  «        ¦  «        |d
d¬¦  «         t          t          j        t	          j        |gdz  ¦  «        |¦  «        |d
d¬¦  «         d S )NrJ   rX   rŒ   gX]ï ;ÀrJ  r   r[   gOV,@Ëù@)rJ   rŒ   g  8»×ÙBrÏ   r¯  rv  )gý2}‰jÿ¿gó.òMæéí?gçð}2ï;Î¿)r   Ú	polygammar   rÓ  r]   rx  )r?   Úpoly2Úpoly3rå   rf   r"  s         r@   Útest_polygammazTestPolygamma.test_polygammaw  sv  € ÝÔ! ! QÑ'Ô'ˆÝÔ! ! QÑ'Ô'ˆÝ˜˜}°7ÀÐCÑCÔCÐCÝ˜˜|°'ÀÐBÑBÔBÐBð ˆNˆNˆÝ�Ô)¨!¨QÑ/Ô/µ´¸Q±´Ø#¨!ð	-ñ 	-ô 	-ð 	-ð ˆIˆIˆØˆOˆOˆð*ð *ð *ˆå�Ô)¨!¨QÑ/Ô/°ÀÈQÐOÑOÔOÐOÝ”9˜h˜Z¨™\Ñ*Ô*ˆÝ�Ô)¨!­R¬Y¸°s¸1±uÑ-=Ô-=Ñ>Ô>ÀØ#¨!ð	-ñ 	-ô 	-ð 	-å�Ô)­"¬)°Q°C¸±EÑ*:Ô*:¸AÑ>Ô>ÀØ#¨!ð	-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   N)r3  r4  r5  r2  r:  rC   r@   r-  r-  u  s#   € € € € € ð-ð -ð -ð -ð -rC   r-  c                   ó   — e Zd Zd„ ZdS )ÚTestProCvSeqc                 óv   — t          j        ddd¦  «        }t          |t          g d¢¦  «        dd¬¦  «         d S )Nr   rŒ   rX   )gÑ"Ûù~jÔ?g6?þÒ¢¾@g)uÉ8F"@gË2�g)@rz  r[   )r   Ú
pro_cv_seqr   r   )r?   Úprols     r@   Útest_pro_cv_seqzTestProCvSeq.test_pro_cv_seq�  s[   € ÝÔ! ! Q¨Ñ*Ô*ˆÝ˜�eð %0ð %0ð %0ñ 1ô 1ð $¨!ð		-ñ 	-ô 	-ð 	-ð 	-ð 	-rC   N)r3  r4  r5  r8  r:  rC   r@   r4  r4  �  r  rC   r4  c                   ó   — e Zd Zd„ ZdS )ÚTestPsic                 óT   — t          j        d¦  «        }t          |ddd¬¦  «         d S )NrX   g¶oüŒxâ¿r?  r   r[   )r   rÓ  r   )r?   Úpss     r@   rÔ  zTestPsi.test_psiš  s-   € ÝŒ[˜‰^Œ^ˆÝ˜Ð0°vÀAÐFÑFÔFÐFÐFÐFrC   N)r3  r4  r5  rÔ  r:  rC   r@   r:  r:  ™  s(   € € € € € ðGð Gð Gð Gð GrC   r:  c                   ó   — e Zd Zd„ Zd„ ZdS )Ú
TestRadianc                 óh   — t          j        ddd¦  «        }t          |t          dz  dd¬¦  «         d S )Nrì  r   rt  rz  r[   ©r   rÖ  r   r   )r?   Úrads     r@   r×  zTestRadian.test_radian   s6   € ÝŒn˜R  AÑ&Ô&ˆÝ˜�R ™V¨&°qÐ9Ñ9Ô9Ð9Ð9Ð9rC   c                 ón   — t          j        ddd¦  «        }t          |t          dz  dz   dd¬¦  «         d S )	Nrì  rX   rH  rJ   gƒ†íC?rz  r   r[   r@  )r?   Úrad1s     r@   Útest_radianmorezTestRadian.test_radianmore¤  s<   € ÝŒ~˜b ! RÑ(Ô(ˆÝ˜�b ™dÐ%:Ñ:ÀÈaÐPÑPÔPÐPÐPÐPrC   N)r3  r4  r5  r×  rD  r:  rC   r@   r>  r>  Ÿ  s7   € € € € € ð:ð :ð :ðQð Qð Qð Qð QrC   r>  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestRiccatic                 ó2  — d\  }}t          j        ||f¦  «        }t          |¦  «        D ]E}t          j        ||¦  «        }t          j        ||d¬¦  «        }||z  |d|f<   ||z  |z   |d|f<   ŒFt          |t          j        ||¦  «        dd¬¦  «         d S ©N)rJ   rÞ   T)Ú
derivativer   rX   r?  r[   )r]   Úemptyrv   r   Úspherical_jnr   Ú
riccati_jn)r?   r9  rå   ÚSrf   r¤  Újps          r@   Útest_riccati_jnzTestRiccati.test_riccati_jnª  ó®   € Ø‰ˆˆ1ÝŒH�a˜�VÑÔˆÝ�q‘”ð 	ð 	ˆAÝÔ$ Q¨Ñ*Ô*ˆAÝÔ% a¨°tÐ<Ñ<Ô<ˆBØ�q‘SˆAˆa�ˆc‰FØ�r‘T˜A‘XˆAˆa�ˆc‰FˆFÝ˜�7Ô-¨a°Ñ3Ô3¸&ÀqÐIÑIÔIÐIÐIÐIrC   c                 ó2  — d\  }}t          j        ||f¦  «        }t          |¦  «        D ]E}t          j        ||¦  «        }t          j        ||d¬¦  «        }||z  |d|f<   ||z  |z   |d|f<   ŒFt          |t          j        ||¦  «        dd¬¦  «         d S rH  )r]   rJ  rv   r   Úspherical_ynr   Ú
riccati_yn)r?   r9  rå   ÚCrf   r   Úyps          r@   Útest_riccati_ynzTestRiccati.test_riccati_yn´  rP  rC   N)r3  r4  r5  rO  rV  r:  rC   r@   rF  rF  ©  s:   € € € € € ðJð Jð JðJð Jð Jð Jð JrC   rF  c                   ó   — e Zd Zd„ Zd„ ZdS )ÚTestSoftplusc                 óŒ  — dd l }|j                             d¦  «        }d}|                     dd|¬¦  «        }|                     dd|¬¦  «        }|                     dd|¬¦  «        }|                     d	d
|¬¦  «        } |j        ||||g¦  «        }g d¢g d¢g d¢g d¢g}	t          |¦  «        }
t          |
|	d¬¦  «         d S )Nr   l   �(ÚsÿrŒ   iœÿÿÿiÛÿÿÿr{  é   r·  g
×£p=ª@@r#  )g¨%~ÝßB7gpNÛfßà™7g­8ËëBÜ8)gJÈR{ý?g6ê�ï™]=g¡X�áes>)g °Ënö@?@gãWâHÂ;@gl¸H.÷þ=@)g9lchªPR@gäÀñöS@gzse‹vëB@r¼  rQ   )Únumpyrc   Údefault_rngÚuniformÚstackr&   r   )r?   r]   rj   rf   ro  rp  Úa3Úa4rD  r  r  s              r@   Útest_softpluszTestSoftplus.test_softplusÀ  s÷   € ð 	ÐÐÐØŒi×#Ò# MÑ2Ô2ˆØˆØ�[Š[˜˜s¨ˆ[Ñ+Ô+ˆØ�[Š[˜˜b qˆ[Ñ)Ô)ˆØ�[Š[˜˜T¨ˆ[Ñ*Ô*ˆØ�[Š[˜ ¨!ˆ[Ñ,Ô,ˆØˆBŒH�b˜"˜b "Ð%Ñ&Ô&ˆð TÐSÐSØQÐQÐQØKÐKÐKØHÐHÐHðJˆõ
 �q‰kŒkˆÝ˜˜S uÐ-Ñ-Ô-Ð-Ð-Ð-rC   c                 ó  — t          j        d¦  «        dz
  }t          j        d¦  «        }|                     ¦   «         }|dk    }t	          |||¬¦  «         t	          ||         ¦  «        ||<   t          ||¦  «         d S )NrÖ   rJ   r   )ÚoutÚwhere)r]   r   ÚonesÚcopyr&   r   )r?   rå   rc  r  rd  s        r@   Útest_softplus_with_kwargsz&TestSoftplus.test_softplus_with_kwargsÝ  sw   € ÝŒI�a‰LŒL˜1ÑˆÝŒg�a‰jŒjˆØ�hŠh‰jŒjˆØ�A’ˆå�˜ 5Ð)Ñ)Ô)Ð)Ý˜a œhÑ'Ô'ˆˆE‰
Ý˜˜SÑ!Ô!Ð!Ð!Ð!rC   N)r3  r4  r5  ra  rg  r:  rC   r@   rX  rX  ¿  s2   € € € € € ð.ð .ð .ð:"ð "ð "ð "ð "rC   rX  c                   ó   — e Zd Zd„ ZdS )Ú	TestRoundc                 ó  — t          t          t          t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        t          j        d¦  «        f¦  «        ¦  «        }d}t          ||¦  «         d S )Ng333333$@gÍÌÌÌÌÌ$@r�  g333333%@)r&  r&  r&  r  )r$  Úmapru   r   rá  r   )r?   ÚrndÚrndrls      r@   râ  zTestRound.test_roundé  st   € Ý•3•s�Wœ]¨4Ñ0Ô0Ý$œ]¨4Ñ0Ô0Ý$œ]¨4Ñ0Ô0Ý$œ]¨4Ñ0Ô0ð2ñ 3ô 3ñ 4ô 4ˆð ˆÝ˜3˜uÑ%Ô%Ð%Ð%Ð%rC   N)r3  r4  r5  râ  r:  rC   r@   ri  ri  è  s#   € € € € € ð&ð &ð &ð &ð &rC   ri  c                   ó(   — e Zd Zdd„Zd„ Zd„ Zd„ ZdS )Ú
TestStruver#  c                 ó^  — t          d|¦  «        }d|z  d|z  d|z  |z   dz   z  z  t          j        |dz   ¦  «        z  t          j        ||z   dz   ¦  «        z  }t          |¦  «                             ¦   «         t          t          ¦  «        j        z  |z  }|                     ¦   «         |fS )z?Compute Struve function & error estimate from its power series.r   rM   r†   rJ   rX   r  )	r   r   rB  rC  r&  r   r   r  r’  r“  s          r@   Ú_serieszTestStruve._seriesø  s”   € å�1�a‰LŒLˆØ�!‰G�r˜!‘t˜q ™s 1™u Q™wÑ'Ñ'­¬°a¸±eÑ(<Ô(<Ñ<½W¼]È1ÈQÉ3ÈsÉ7Ñ=SÔ=SÑSˆÝ�!‰fŒf�jŠj‰lŒl�U¥6™]œ]Ô.Ñ.°Ñ2ˆØ�uŠu‰wŒw˜ˆ|ÐrC   c                 ó    — dD ]J}dD ]E}|                       ||¦  «        \  }}t          t          j        ||¦  «        |d|¬¦  «        ||ff ŒFŒKdS )z-Check Struve function versus its power series)
iìÿÿÿr  çö(\�ÂõÀrÞ  rM   r   rX   rÜ  r]  é   )rX   r&  é   r.  rT   r   r(  N)rq  r   r   r  rŸ  s        r@   Útest_vs_serieszTestStruve.test_vs_seriesÿ  s   € àBð 	Wð 	WˆAØ(ð Wð W�Ø!Ÿ\š\¨!¨QÑ/Ô/‘
��sÝ¥¤¨q°!Ñ 4Ô 4°eÀ!È#ÐNÑNÔNÐQRÐTUÐPVÐVÐVÐVðWð	Wð 	WrC   c                 ó¢  — t          t          j        dd¦  «        dd¬¦  «         t          t          j        dd¦  «        dd¬¦  «         t          t          j        d	d
¦  «        dd¬¦  «         t          t          j        dd¦  «        dd¬¦  «         t          t          j        dd¦  «        t          j        dd¦  «         ¦  «         t          t          j        dd¦  «        t          j        dd¦  «         ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        
 ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        
 ¦  «         t	          t          t          j        dd¦  «        ¦  «        ¦  «         t	          t          t          j        dd¦  «        ¦  «        ¦  «         d S )Nrs  r.  gä;cv=ð§?rë  rQ   g…ëQ¸ ÀgŠ< j¤?rº  rß  r�  g³÷ýï�?r�   g       Ài×ÿÿÿg©Ÿ zzµ“?rd  iôÿÿÿé)   r   r^  r  gffffffÀrM   g333333$À)r   r   r  r   r   r   r>   s    r@   Útest_some_valueszTestStruve.test_some_values  s|  € Ý�œ u¨bÑ1Ô1°?ÈÐNÑNÔNÐNÝ�œ u¨bÑ1Ô1°?ÈÐNÑNÔNÐNÝ�œ t¨SÑ1Ô1°?ÈÐOÑOÔOÐOÝ�œ t¨SÑ1Ô1°?ÈÐOÑOÔOÐOÝ•W”^ C¨Ñ-Ô-µ´¸sÀBÑ0GÔ0GÐ/GÑHÔHÐHÝ•W”^ C¨Ñ-Ô-µ´¸sÀBÑ0GÔ0GÐ/GÑHÔHÐHÝ•W”^ C¨Ñ-Ô-µ´¸sÀBÑ0GÔ0GÐ/GÑHÔHÐHÝ•W”^ C¨Ñ-Ô-µ´¸sÀBÑ0GÔ0GÐ/GÑHÔHÐHå••g”n T¨2Ñ.Ô.Ñ/Ô/Ñ0Ô0Ð0Ý••g”n U¨BÑ/Ô/Ñ0Ô0Ñ1Ô1Ð1Ð1Ð1rC   c                 óJ  — t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t          t          j        dd¦  «        t          j        dd¦  «        ¦  «         dS )zRegression test for #679rÝ   gâÕÿÿÿ3@gó*   4@rô  g333333ÀN)r   r   r  r>   s    r@   Útest_regression_679zTestStruve.test_regression_679  s™   € å�œ t¨YÑ7Ô7Ýœ t¨YÑ7Ô7ñ	9ô 	9ð 	9å�œ t¨YÑ7Ô7Ýœ t¨YÑ7Ô7ñ	9ô 	9ð 	9å�œ t¨YÑ7Ô7Ýœ t¨YÑ7Ô7ñ	9ô 	9ð 	9ð 	9ð 	9rC   N)r#  )r3  r4  r5  rq  rv  ry  r{  r:  rC   r@   ro  ro  ÷  sX   € € € € € ðð ð ð ðWð Wð Wð2ð 2ð 2ð9ð 9ð 9ð 9ð 9rC   ro  c                  óR   — t          t          j        dd¦  «        ddd¬¦  «         d S )Nr  rŒ   gdX	
§î?rÏ   r   r[   )r   r   r¶   r:  rC   r@   Útest_chi2_smalldfr}    s-   € Ý•G”M # qÑ)Ô)Ð+<À6ÐPQÐRÑRÔRÐRÐRÐRrC   c                  ó`   — t          t          j        dt          j        ¦  «        d¦  «         d S )Nr  r‡   )r   r   r¶   r]   r   r:  rC   r@   Útest_ch2_infr  !  s&   € Ý•”˜s¥2¤6Ñ*Ô*¨CÑ0Ô0Ð0Ð0Ð0rC   rå   rÝ   rM  rž   c                 ól   — t          j        t          j        t           j        | ¦  «        ¦  «        sJ ‚d S ru  ©r]   r   r   r¶   r  r@  s    r@   Útest_chi2_v_nanr‚  %  s,   € åŒ8•G”M¥"¤&¨!Ñ,Ô,Ñ-Ô-Ð-Ð-Ð-Ð-Ð-rC   rJ  c                 ól   — t          j        t          j        | t           j        ¦  «        ¦  «        sJ ‚d S ru  r�  ©rJ  s    r@   Útest_chi2_x_nanr…  *  s,   € åŒ8•G”M !¥R¤VÑ,Ô,Ñ-Ô-Ð-Ð-Ð-Ð-Ð-rC   c                 ól   — t          j        t          j        t           j        | ¦  «        ¦  «        sJ ‚d S ru  ©r]   r   r   rº   r  r@  s    r@   Útest_chi2c_v_nanrˆ  /  s,   € åŒ8•G”N¥2¤6¨1Ñ-Ô-Ñ.Ô.Ð.Ð.Ð.Ð.Ð.rC   c                 ól   — t          j        t          j        | t           j        ¦  «        ¦  «        sJ ‚d S ru  r‡  r„  s    r@   Útest_chi2c_x_nanrŠ  4  s,   € åŒ8•G”N 1¥b¤fÑ-Ô-Ñ.Ô.Ð.Ð.Ð.Ð.Ð.rC   c            	      óâ  — t          j        ddddt           j        g¦  «        d d …t           j        f         } t          j        t           j         dddt           j        g¦  «        }t	          j        | dz  |dz  ¦  «        }|dk     | dk     z  |dk    | dk    z  z  t          j        | ¦  «        t          j        |¦  «        z  z  }t          j        t          j        ||         ¦  «        ¦  «        sJ ‚t          j        t          j	        ||          ¦  «        ¦  «        sJ ‚t          t	          j        | |¦  «        |¦  «         t          t	          j        d| dz  |dz  ¦  «        |¦  «         t          dt	          j        | dz  |dz  ¦  «        z
  |¦  «         t          dt	          j        | |¦  «        z
  |¦  «         t          dt	          j        d| dz  |dz  ¦  «        z
  |¦  «         d S )Ng{®Gáz„¿r   rA  rX   rJ   )r]   r   r   rê   r   r5  rÐ  rï  r   rò  r   r¶   rS  Ú	gammainccrº   rY  )rJ  rå   r  rõ  s       r@   Útest_chi2_edgecases_gh20972r�  9  s³  € õ 	Œ
�E˜1˜d A¥r¤vÐ.Ñ/Ô/°°°µ2´:°Ô>€AÝ
Œ
•R”V�G˜U A t­R¬VÐ4Ñ5Ô5€Aõ Ô
˜1˜q™5 ! a¡%Ñ
(Ô
(€CØ�ŠE�a˜!’eÑ  Q¢¨1°ª6Ñ2Ñ2µR´X¸a±[´[Å2Ä8ÈAÁ;Ä;Ñ5NÑN€DÝŒ6•"”(˜3˜tœ9Ñ%Ô%Ñ&Ô&Ð&Ð&Ð&ÝŒ6•"”+˜c 4 %œjÑ)Ô)Ñ*Ô*Ð*Ð*Ð*õ •G”M ! QÑ'Ô'¨Ñ-Ô-Ð-Ý•G”L  A¨¡E¨1¨q©5Ñ1Ô1°3Ñ7Ô7Ð7Ý�A�Ô)¨!¨a©%°°Q±Ñ7Ô7Ñ7¸Ñ=Ô=Ð=Ý�A�œ q¨!Ñ,Ô,Ñ,¨cÑ2Ô2Ð2Ý�A�œ a¨¨Q©°°A±Ñ6Ô6Ñ6¸Ñ<Ô<Ð<Ð<Ð<rC   c                  óR   — t          t          j        dd¦  «        ddd¬¦  «         d S )Nr  rŒ   çÀyj_�¥?rÏ   r   r[   )r   r   rº   r:  rC   r@   Útest_chi2c_smalldfr�  N  s9   € Ý•G”N 3¨Ñ*Ô*Ð,AØ að)ñ )ô )ð )ð )ð )rC   c                  óR   — t          t          j        dd¦  «        ddd¬¦  «         d S )Nr  r�  rŒ   rÏ   r   r[   )r   r   r¿   r:  rC   r@   Útest_chi2_inv_smalldfr’  S  s9   € Ý•G”N 3Ð(=Ñ>Ô>ÀØ að)ñ )ô )ð )ð )ð )rC   c            	      ón  — d} t          dt          j        dt          j        d¦  «        ¦  «        z  d| ¬¦  «         d}d}d}t          t          j        dgd	ggg d
¢¦  «        d||g|d	|gg| ¬¦  «         d}t          t          j        dd¦  «        || ¬¦  «         t          t          j        dd¦  «        || ¬¦  «         t          t          j        dd¦  «        | | ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          t          j        dd¦  «        d| ¬¦  «         t          j        d¦  «        }t          t          j        |j        |j        ¦  «        d | ¬¦  «         t          t          j        d!|j        z  |j        ¦  «        d"| ¬¦  «         t          t          j        |j        d	|j        z  ¦  «        d#| ¬¦  «         t          t          j        d$d$¦  «        d$¦  «         t          t          j        d%d$¦  «        d$¦  «         t          t          j        dd&¦  «        t          j	        ¦  «         t          t          j        d$t          j
        ¦  «        t          j	        ¦  «         t          t          j        t          j
        d$¦  «        t          j	        ¦  «         t          t          j        d$t          j
         ¦  «        t          j	        ¦  «         t          t          j        t          j
         d$¦  «        t          j	        ¦  «         t          t          j        t          j
        t          j
         ¦  «        t          j	        ¦  «         t          t          j        t          j
         t          j
        ¦  «        t          j	        ¦  «         t          t          j        dt          j	        ¦  «        t          j	        ¦  «         t          t          j        t          j	        d¦  «        t          j	        ¦  «         t          t          j        dt          j
        ¦  «        t          j
        ¦  «         t          t          j        t          j
        d¦  «        t          j
        ¦  «         t          t          j        dt          j
         ¦  «        t          j
         ¦  «         t          t          j        t          j
         d¦  «        t          j
         ¦  «         d S )'NrP   rX   rJ   gDS«YCµê?rQ   gQÕ_Ñý?g®Å?Õ@g>;,
i}@rŒ   )rX   rŒ   rÖ   gÊ=·O÷?rM   rõ  rÜ   rN   gXñÓs•ê*@r  g   V4o�Agˆ†ôO„1eAgêŒ 9Y>)Fg‹¾ÜìÒEgæ^ 9^;g–d¼¾-èž?g¯–P.5�_gsTNÓØNegºÒ6ödgu”?jç/Ê g]éXC}KÀdg¯žÑ§›R£g"!çx{¿{ r‡   gë][#!Rrõ  gŒÙ�S1ÛëgNÕ_Ñ r   rB  r&  )r   r   Úagmr]   r   r   rÃ  r&  r   r  r   )rR   Úagm13Úagm15Úagm35Úagm12Úfis         r@   Útest_agm_simplerš  X  s±  € Ø€Dõ �A•g”k !¥R¤W¨Q¡Z¤ZÑ0Ô0Ñ0Ð2FØðñ ô ð ð
 €EØ€EØ€EÝ•G”K !  q c 
¨I¨I¨IÑ6Ô6Ø˜ Ð&Ø˜Q Ð&ð(Ø.2ð4ñ 4ô 4ð 4ð €EÝ•G”K  1Ñ%Ô% u°4Ð8Ñ8Ô8Ð8Ý•G”K  1Ñ%Ô% u°4Ð8Ñ8Ô8Ð8Ý•G”K  BÑ'Ô'¨%¨°dÐ;Ñ;Ô;Ð;Ý•G”K  AÑ&Ô&Ð(:ÀÐFÑFÔFÐFÝ•G”K  KÑ0Ô0Ð2DØðñ ô ð å•G”K  aÑ(Ô(Ð*?ÀdÐKÑKÔKÐKÝ•G”K  qÑ)Ô)Ð+?ÀdÐKÑKÔKÐKÝ•G”K  uÑ-Ô-Ð/EØðñ ô ð å•G”K  vÑ.Ô.Ð0GØðñ ô ð å•G”K ¨Ñ/Ô/Ð1HØðñ ô ð å	Œ�#‰Œ€BÝ•G”K ¤¨¬Ñ0Ô0Ð2IØðñ ô ð å•G”K  R¤V¡¨R¬VÑ4Ô4Ð6LØðñ ô ð å•G”K ¤¨¨2¬7©Ñ3Ô3Ð5LØðñ ô ð õ •”˜Q Ñ"Ô" AÑ&Ô&Ð&Ý•”˜R Ñ#Ô# QÑ'Ô'Ð'å•”˜R Ñ$Ô$¥b¤fÑ-Ô-Ð-Ý•”˜Q¥¤Ñ'Ô'­¬Ñ0Ô0Ð0Ý•”�RœV QÑ'Ô'­¬Ñ0Ô0Ð0Ý•”˜Q¥¤ Ñ(Ô(­"¬&Ñ1Ô1Ð1Ý•”�bœf˜W aÑ(Ô(­"¬&Ñ1Ô1Ð1Ý•”�RœV¥b¤f WÑ-Ô-­r¬vÑ6Ô6Ð6Ý•”�bœf˜W¥b¤fÑ-Ô-­r¬vÑ6Ô6Ð6Ý•”˜Q¥¤Ñ'Ô'­¬Ñ0Ô0Ð0Ý•”�RœV RÑ(Ô(­"¬&Ñ1Ô1Ð1å•”˜Q¥¤Ñ'Ô'­¬Ñ0Ô0Ð0Ý•”�RœV QÑ'Ô'­¬Ñ0Ô0Ð0Ý•”˜R¥"¤& Ñ)Ô)­B¬F¨7Ñ3Ô3Ð3Ý•”�bœf˜W bÑ)Ô)­B¬F¨7Ñ3Ô3Ð3Ð3Ð3rC   c            	      ól  — t          j        ¦   «         5  t          j        ddt          ¦  «         t	          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t	          t          j        ddd¦  «        t          j        ddd¦  «        ¦  «         t	          t          j        ddd¦  «        t          j        ddd¦  «        ¦  «         t	          t          j	        ddd¦  «        t          j	        ddd¦  «        ¦  «         t	          t          j
        dd¦  «        t          j
        dd¦  «        ¦  «         t	          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t	          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t	          t          j        dd¦  «        t          j        dd¦  «        ¦  «         t	          t          j        dd¦  «        t          j        dd¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrù  r¸  rX   r  gÍÌÌÌÌÌü?rJ   gffffff@)rú  rû  rü  rý  r   r   ÚexpnrZ  rW  r]  r¹  rÛ  r$  rò  r  r:  rC   r@   Útest_legacyr�  •  s  € å	Ô	 Ñ	"Ô	"ð Kð KÝÔØÐEÅ~ñ	Wô 	Wð 	Wå•W”\ ! SÑ)Ô)­7¬<¸¸SÑ+AÔ+AÑBÔBÐBÝ•W”^ A q¨#Ñ.Ô.µ´¸sÀCÈÑ0MÔ0MÑNÔNÐNÝ•W”] 1 a¨Ñ-Ô-­w¬}¸SÀ#ÀsÑ/KÔ/KÑLÔLÐLÝ•W”^ A q¨#Ñ.Ô.µ´¸sÀCÈÑ0MÔ0MÑNÔNÐNÝ•W”] 1 cÑ*Ô*­G¬M¸#¸sÑ,CÔ,CÑDÔDÐDÝ•W”Z  3Ñ'Ô'­¬°C¸Ñ)=Ô)=Ñ>Ô>Ð>Ý•W”Z  3Ñ'Ô'­¬°C¸Ñ)=Ô)=Ñ>Ô>Ð>Ý•W”_ Q¨Ñ,Ô,­g¬o¸cÀ3Ñ.GÔ.GÑHÔHÐHÝ•WÔ% a¨Ñ-Ô-­wÔ/?ÀÀSÑ/IÔ/IÑJÔJÐJðKð Kð Kñ Kô Kð Kð Kð Kð Kð Kð Kð Køøøð Kð Kð Kð Kð Kð Ks   ”HH)È)H-È0H-c                  ó2   — dd l } |                      ¦   «         S r;   )Ú	threadingÚLock)rŸ  s    r@   Úerrstate_lockr¡  ¦  s   € àÐÐÐØ�>Š>ÑÔÐrC   c                 óâ   — | 5  t          j        d¬¦  «        5  t          t           j        t           j        dd¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         d S # 1 swxY w Y   d S )Nrø  rî  rX   y        .Ÿ‡¢®B}T)r   rü  ry  rý  r¦  )r¡  s    r@   Útest_error_raisingr£  ¬  s  € à	ð Nð NÝÔ 'Ð*Ñ*Ô*ð 	Nð 	NÝ�'Ô6½¼
ÀAÀuÑMÔMÐMð	Nð 	Nð 	Nñ 	Nô 	Nð 	Nð 	Nð 	Nð 	Nð 	Nð 	Nøøøð 	Nð 	Nð 	Nð 	NðNð Nð Nñ Nô Nð Nð Nð Nð Nð Nð Nð Nøøøð Nð Nð Nð Nð Nð Ns4   ƒA$™'AÁ A$ÁA	ÁA$ÁA	ÁA$Á$A(Á+A(c                  óæ  — d„ } t          j        ddt           j        fdt           j        fdgt          ¬¦  «        }t           j        |ddgf         } t          j        | ¦  «        |d d …df         |d d …df         ¦  «        }t          t          j	        ||d	d	¬
¦  «          t          j        | ¦  «        |d d …df         |d d …df         ¦  «        }t          t          j	        ||d	d	¬
¦  «         d S )Nc                 óÞ   — t          j        d¬¦  «        5  | dk    r"t          j        |¦  «        s| cd d d ¦  «         S | t          j        |¦  «        z  cd d d ¦  «         S # 1 swxY w Y   d S ©Nrù  )Úinvalidr   )r]   rü  r   r   ©rå   r   s     r@   Úxfuncztest_xlogy.<locals>.xfunc´  sÊ   € ÝŒ[ Ð*Ñ*Ô*ð 	#ð 	#Ø�AŠvˆv�bœh q™kœkˆvØð	#ð 	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð �œ ™œ‘{ð		#ð 	#ð 	#ð 	#ñ 	#ô 	#ð 	#ð 	#ð 	#ð 	#ð 	#ð 	#øøøð 	#ð 	#ð 	#ð 	#ð 	#ð 	#ó   –A"¿A"Á"A&Á)A&©r   r   r   ©r‡   rt  r  )r   r  )rX   r  rX   rP   r(  )
r]   r   r  r   rw   r   r}   r3   r   Úxlogy)r©  Úz1Úz2Úw1Úw2s        r@   Ú
test_xlogyr²  ³  sô   € ð#ð #ð #õ 
Œ�U˜Q¥¤˜K¨!­R¬V¨°jÐAÍÐ	OÑ	OÔ	O€BÝ	Œˆr�G˜WÐ%Ð%Ô	&€Bà	�Œ�eÑ	Ô	˜R    ! œW b¨¨¨¨1¨¤gÑ	.Ô	.€BÝ•g”m R¨°%¸eÐDÑDÔDÐDØ	�Œ�eÑ	Ô	˜R    ! œW b¨¨¨¨1¨¤gÑ	.Ô	.€BÝ•g”m R¨°%¸eÐDÑDÔDÐDÐDÐDrC   c                  ó  — d„ } t          j        ddt           j        fdt           j        fddgt          ¬¦  «        } t          j        | ¦  «        |d d …df         |d d …df         ¦  «        }t          t          j        ||dd¬	¦  «         d S )
Nc                 óÞ   — t          j        d¬¦  «        5  | dk    r"t          j        |¦  «        s| cd d d ¦  «         S | t          j        |¦  «        z  cd d d ¦  «         S # 1 swxY w Y   d S r¦  )r]   rü  r   rö  r¨  s     r@   r©  ztest_xlog1py.<locals>.xfuncÅ  sÊ   € ÝŒ[ Ð*Ñ*Ô*ð 	'ð 	'Ø�AŠvˆv�bœh q™kœkˆvØð	'ð 	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð �2œ8 A™;œ;‘ð		'ð 	'ð 	'ð 	'ñ 	'ô 	'ð 	'ð 	'ð 	'ð 	'ð 	'ð 	'øøøð 	'ð 	'ð 	'ð 	'ð 	'ð 	'rª  r«  r   r¬  )rX   g ÂëþKH´9r  rX   rP   r(  )	r]   r   r  r   rw   r}   r3   r   Úxlog1py)r©  r®  r°  s      r@   Útest_xlog1pyr¶  Ä  sœ   € ð'ð 'ð 'õ 
Œ�U˜Q¥¤˜K¨!­R¬V¨°jØð!Ý(-ð
/ñ 
/ô 
/€Bà	�Œ�eÑ	Ô	˜R    ! œW b¨¨¨¨1¨¤gÑ	.Ô	.€BÝ•g”o r¨2°EÀÐFÑFÔFÐFÐFÐFrC   c                  ód  — d„ } dddt           j        f}ddg}g }t          j        ||¦  «        D ]\  }}|                     ||z  ¦  «         Œt          j        |t          ¬¦  «        } t          j        | t           j        g¬¦  «        |¦  «        }t          t          j        ||d	d	¬
¦  «         d S )Nc                 óT   — | dk     rt           j         S t          j        | | ¦  «         S r;   )r]   r   r   r­  r@  s    r@   r©  ztest_entr.<locals>.xfuncÓ  s)   € ØˆqŠ5ˆ5Ý”F�7ˆNå”M ! QÑ'Ô'Ð'Ð'rC   r   r†   r‡   rM   rX   r  ©ÚotypesrP   r(  )r]   r   ra  rb  rŸ  r   rw   r}   râ   r3   r   Úentr)r©  r“  Úsignsr¼  ÚsgnrJ  r!  r1  s           r@   Ú	test_entrr¾  Ò  sÁ   € ð(ð (ð (ð
 ��c�2œ6Ð"€FØ�ˆG€EØ
€CÝÔ# E¨6Ñ2Ô2ð ð ‰ˆˆQØ�
Š
�3˜‘7ÑÔÐÐÝ
Œ��EÐ"Ñ"Ô"€AØ0�Œ�U¥B¤J <Ð0Ñ0Ô0°Ñ3Ô3€AÝ•g”l A q¨u¸5ÐAÑAÔAÐAÐAÐArC   c                  ó„  — d„ } d}ddg}g }t          j        ||||¦  «        D ]$\  }}}}|                     ||z  ||z  f¦  «         Œ%t          j        |t
          ¬¦  «        } t          j        | t          j        g¬¦  «        |d d …df         |d d …df         ¦  «        }	t          t          j
        |	|dd¬	¦  «         d S )
Nc                 óþ   — | dk     s|dk     s|dk    r| dk    rt           j        S t          j        | ¦  «        st          j        |¦  «        rt           j        S | dk    r|S t          j        | | |z  ¦  «        | z
  |z   S r;   )r]   r   rb  r   r­  r¨  s     r@   r©  ztest_kl_div.<locals>.xfuncã  s~   € ØˆqŠ5ˆ5�A˜’E�E˜a 1šf˜f¨¨aª¨å”6ˆMÝŒ[˜‰^Œ^ð 	1�rœ{¨1™~œ~ð 	1å”6ˆMØ�!ŠVˆVØˆHå”=  A a¡CÑ(Ô(¨1Ñ,¨qÑ0Ð0rC   ©r   r†   r‡   rM   rX   r  r¹  r   rP   r(  )ra  rb  rŸ  r]   r   rw   r}   râ   r3   r   Úkl_div©
r©  r“  r¼  r¼  ÚsgnaÚvaÚsgnbÚvbr!  r1  s
             r@   Útest_kl_divrÈ  â  sâ   € ð
1ð 
1ð 
1ð €FØ�ˆG€EØ
€CÝ'Ô/°°v¸uÀfÑMÔMð 'ð 'Ñˆˆb�$˜Ø�
Š
�D˜‘G˜T "™WÐ%Ñ&Ô&Ð&Ð&Ý
Œ��EÐ"Ñ"Ô"€AØ0�Œ�U¥B¤J <Ð0Ñ0Ô0°°1°1°1°Q°3´¸¸1¸1¸1¸Q¸3¼Ñ@Ô@€AÝ•g”n a¨°¸UÐCÑCÔCÐCÐCÐCrC   c                  ó„  — d„ } d}ddg}g }t          j        ||||¦  «        D ]$\  }}}}|                     ||z  ||z  f¦  «         Œ%t          j        |t
          ¬¦  «        } t          j        | t          j        g¬¦  «        |d d …df         |d d …df         ¦  «        }	t          t          j
        |	|dd¬	¦  «         d S )
Nc                 ó~   — | dk    r|dk    rt          j        | | |z  ¦  «        S | dk    r|dk    rdS t          j        S r;   )r   r­  r]   r   r¨  s     r@   r©  ztest_rel_entr.<locals>.xfuncù  sF   € ØˆqŠ5ˆ5�Q˜’U�UÝ”=  A a¡CÑ(Ô(Ð(Ø�!ŠVˆV˜˜Qš˜Ø�1å”6ˆMrC   rÁ  rM   rX   r  r¹  r   rP   r(  )ra  rb  rŸ  r]   r   rw   r}   râ   r3   r   Úrel_entrrÃ  s
             r@   Útest_rel_entrrÌ  ø  sã   € ðð ð ð €FØ�ˆG€EØ
€CÝ'Ô/°°v¸uÀfÑMÔMð 'ð 'Ñˆˆb�$˜Ø�
Š
�D˜‘G˜T "™WÐ%Ñ&Ô&Ð&Ð&Ý
Œ��EÐ"Ñ"Ô"€AØ0�Œ�U¥B¤J <Ð0Ñ0Ô0°°1°1°1°Q°3´¸¸1¸1¸1¸Q¸3¼Ñ@Ô@€AÝ•gÔ&¨¨1°5¸uÐEÑEÔEÐEÐEÐErC   c                  ó¶   — t          j        g d¢¦  «        } g d¢}| d d …df         }| d d …df         }t          t          j        ||¦  «        |dd¬¦  «         d S )N))gp¬ÝäBî?gÄ¬ÝäBî?)gø‰tK&ÃÞ?gCŒtK&ÃÞ?)g>”ÑƒO'é?gvŽÑƒO'é?)gãÿÿÿÿÿ½gQÿÿÿÿW"½g¨    G=r   rX   rP   r(  )r]   r   r   r   rË  ©Úinputsr"  rå   r   s       r@   Ú test_rel_entr_gh_20710_near_zerorÐ  
  s�   € åŒXð ð ð ñ ô €Fðð ð €Hð
 	ˆqˆqˆq�!ˆtŒ€AØˆqˆqˆq�!ˆtŒ€AÝ•GÔ$ Q¨Ñ*Ô*¨H¸5ÀqÐIÑIÔIÐIÐIÐIrC   c                  óà   — t          j        d¬¦  «         t          j        g d¢¦  «        } g d¢}| d d …df         }| d d …df         }t	          t          j        ||¦  «        |dd¬¦  «         d S )	Nrù  rî  ))rH   çX™çë¨ö )rÈ  gZb××çti)rÒ  g  4&õkC)gMÂá«G.¦@g)ØZ?—g åwaò)§€r   rX   rP   r(  )r   Úseterrr]   r   r   rË  rÎ  s       r@   Útest_rel_entr_gh_20710_overflowrÔ    s”   € Ý„N�xÐ Ñ Ô Ð ÝŒXð ð ð ñ ô €Fðð ð €Hð
 	ˆqˆqˆq�!ˆtŒ€AØˆqˆqˆq�!ˆtŒ€AÝ•GÔ$ Q¨Ñ*Ô*¨H¸5ÀqÐIÑIÔIÐIÐIÐIrC   c                  ó  — t          t          j        dd¦  «        t          j        ¦  «         t          t          j        dd¦  «        dt          j        d¦  «        z  ¦  «         t          t          j        dd¦  «        d¦  «         d„ } t          j                             dd¦  «        } t          j	        | t          j
        g¬	¦  «        |d d …d
f         |d d …df         ¦  «        }t          t          j        ||dd¬¦  «         d S )NrM   r  rJ   r†   ræ  rÝ  c                 ó¾   — | dk     rt           j        S t          j        |¦  «        | k     rdt          j        |¦  «        z  S | t          j        |¦  «        d| z  z
  z  S )Nr   r†   )r]   r   rC  Úsquare©ÚdeltarR  s     r@   r©  ztest_huber.<locals>.xfunc8  sT   € Ø�1Š9ˆ9Ý”6ˆMÝŒV�A‰YŒY˜ÒÐØ�œ 1™œÑ%Ð%à�BœF 1™IœI¨¨e©Ñ3Ñ4Ð4rC   r&  r¹  r   rX   rP   r(  )r   r   Úhuberr]   r   r   r×  rc   Úrandnr}   râ   r3   ©r©  r!  r1  s      r@   Ú
test_huberrÝ  3  sé   € Ý•”˜r 3Ñ'Ô'­¬Ñ0Ô0Ð0Ý•G”M ! SÑ)Ô)¨3µ´¸3±´Ñ+?Ñ@Ô@Ð@Ý•G”M ! SÑ)Ô)Ð+>Ñ?Ô?Ð?ð5ð 5ð 5õ 	Œ	�Š˜˜AÑÔ€AØ0�Œ�U¥B¤J <Ð0Ñ0Ô0°°1°1°1°Q°3´¸¸1¸1¸1¸Q¸3¼Ñ@Ô@€AÝ•g”m Q¨°¸EÐBÑBÔBÐBÐBÐBrC   c                  ó`  — d„ } t          j        t           j                             dd¦  «                             ¦   «         ddgddggz   ¦  «        } t          j        | t           j        g¬¦  «        |d d …df         |d d …df         ¦  «        }t          t          j	        ||dd¬	¦  «         d S )
Nc                 ó~   — | dk     rt           j        S | r|sdS | dz  t          j        d|| z  dz  z   ¦  «        dz
  z  S )Nr   rJ   rX   )r]   r   r   rØ  s     r@   r©  z test_pseudo_huber.<locals>.xfuncF  sQ   € Ø�1Š9ˆ9Ý”6ˆMØð 	> ð 	>Ø�1à˜!‘8�rœw q¨A¨e©G°a©<Ñ'7Ñ8Ô8¸1Ñ<Ñ=Ð=rC   r&  rJ   r   r†   r¹  rX   rP   r(  )
r]   r   rc   rÛ  Útolistr}   râ   r3   r   Úpseudo_huberrÜ  s      r@   Útest_pseudo_huberrâ  E  s®   € ð>ð >ð >õ 	Œ•”—’  QÑ'Ô'×.Ò.Ñ0Ô0°Q¸°H¸sÀA¸hÐ3GÑGÑHÔH€AØ0�Œ�U¥B¤J <Ð0Ñ0Ô0°°1°1°1°Q°3´¸¸1¸1¸1¸Q¸3¼Ñ@Ô@€AÝ•gÔ*¨A¨q°uÀ5ÐIÑIÔIÐIÐIÐIrC   c                  ó`   — d} d}t          j        | |¦  «        }d}t          ||d¬¦  «         d S )Nr‡   g¬CÒÑ]r2<gs.-“„De8rP   rQ   )r   rá  r   )rÙ  rR  r   r"  s       r@   Útest_pseudo_huber_small_rrä  S  s@   € Ø€EØ€AÝÔ˜U AÑ&Ô&€Að &€HÝ�A�x eÐ,Ñ,Ô,Ð,Ð,Ð,rC   c                  ó  — t          j        t          d¬¦  «        5  t          dd¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          d¬¦  «        5  t	          dd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NzToo many predicted coefficientsrú  rU   )r6  Úwarnsrý  r'   r(   r:  rC   r@   Útest_runtime_warningrç  `  s  € Ý	Œ•nØ>ð
@ñ 
@ô 
@ð %ð %å˜˜tÑ$Ô$Ð$ð%ð %ð %ñ %ô %ð %ð %ð %ð %ð %ð %øøøð %ð %ð %ð %õ 
Œ•nØ>ð
@ñ 
@ô 
@ð &ð &å˜$ Ñ%Ô%Ð%ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s   œ9¹=Á =ÁA=Á=BÂBc                   ó  — e Zd Zdgddgg d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g d¢gZej                             ddei fdeddifg¦  «        d„ ¦   «         Z	ej                             ddei fdeddifg¦  «        d„ ¦   «         Z
ej                             ddei fdeddifg¦  «        d„ ¦   «         Zej                             ddei fdeddifg¦  «        d„ ¦   «         Zej                             ddei fdeddifg¦  «        d„ ¦   «         Zd„ Zd„ Zej                             dddddej        g¦  «        ej                             dg d¢¦  «        ej                             d ddg¦  «        d!„ ¦   «         ¦   «         ¦   «         Zej                             d ddg¦  «        d"„ ¦   «         Zej                             ddei fdeddifg¦  «        d#„ ¦   «         Zej                             ddei fdeddifg¦  «        d$„ ¦   «         Zd%„ Zd&S )'ÚTestStirling2rX   r   )r   rX   rX   )r   rX   rŒ   rX   )r   rX   rL   rN   rX   )r   rX   r|   r×   r&  rX   )r   rX   é   rì  éA   r|   rX   )r   rX   é?   rÆ  i^  éŒ   r.  rX   )	r   rX   é   iÆ  i¥  é  i
  é   rX   )
r   rX   éÿ   iÑ  iZ  i'  iV
  iÎ  é$   rX   )r   rX   r€   ér$  i9…  i¦  i+Y  éø  iî  rÎ   rX   zis_exact, comp, kwargsTFrR   r�   c           	      óÞ   — t          dt          | j        ¦  «        ¦  «        D ]I}t          t          |dz   ¦  «        ¦  «        }| j        |         } ||t	          |g||¬¦  «        fi |¤Ž ŒJd S )NrX   r  )rv   rÔ  Útabler$  r)   )r?   Úis_exactÚcompÚkwargsrf   Úk_valuesÚrows          r@   Útest_table_caseszTestStirling2.test_table_casesx  sƒ   € õ
 �q�#˜dœj™/œ/Ñ*Ô*ð 	Jð 	JˆAÝ�E ! A¡#™JœJÑ'Ô'ˆHØ”*˜Q”-ˆCØˆD�•i   X°XÐ>Ñ>Ô>ÐIÐIÀ&ÐIÐIÐIÐIð	Jð 	JrC   c                 ó   —  |t          dd|¬¦  «        | j        d         d         fi |¤Ž  |t          dd|¬¦  «        | j        d         d         fi |¤Ž  |t          dd|¬¦  «        dfi |¤Ž  |t          dgdg|¬¦  «        dgfi |¤Ž d S )Nr   r  rH   rJ   rÖ   rŒ   r×   )r)   rö  ©r?   r÷  rø  rù  s       r@   Útest_valid_single_integerz'TestStirling2.test_valid_single_integer‚  sÌ   € ð
 	ˆ�Y�q˜! 8Ð,Ñ,Ô,¨d¬j¸¬m¸AÔ.>ÐIÐIÀ&ÐIÐIÐIØˆ�Y�q˜! 8Ð,Ñ,Ô,¨d¬j¸¬m¸AÔ.>ÐIÐIÀ&ÐIÐIÐIð 	ˆ�Y�q˜! 8Ð,Ñ,Ô,¨bÐ;Ð;°FÐ;Ð;Ð;Øˆ�Y˜�s˜Q˜C xÐ0Ñ0Ô0°2°$ÐAÐA¸&ÐAÐAÐAÐAÐArC   c                 ó¢   —  |t          dd|¬¦  «        dfi |¤Ž  |t          dd|¬¦  «        dfi |¤Ž  |t          dd|¬¦  «        dfi |¤Ž d S )NrM   r  r   rJ   ©r)   rþ  s       r@   Útest_negative_integerz#TestStirling2.test_negative_integerŽ  s…   € ð 	ˆ�Y�r˜2 XÐ.Ñ.Ô.°Ð<Ð<°VÐ<Ð<Ð<Øˆ�Y�r˜1 HÐ-Ñ-Ô-¨qÐ;Ð;°FÐ;Ð;Ð;Øˆ�Y�q˜" HÐ-Ñ-Ô-¨qÐ;Ð;°FÐ;Ð;Ð;Ð;Ð;rC   c           	      óz  — | j         d         d         | j         d         d         g} |t          t          ddg¦  «        t          ddg¦  «        |¬¦  «        |¦  «          |t          ddgt          ddg¦  «        |¬¦  «        |¦  «          |t          t          ddg¦  «        ddg|¬¦  «        |¦  «         d S )Nr&  rŒ   rH   r  )rö  r)   r   )r?   r÷  rø  rù  Úanss        r@   Útest_array_inputszTestStirling2.test_array_inputs˜  sü   € ð
 Œz˜"Œ~˜aÔ  $¤*¨R¤.°Ô"3Ð4ˆØˆ�Y•w  B˜xÑ(Ô(Ý&¨¨1 v™œØ%-ð/ñ /ô /ð ñ	ô 	ð 	ð 	ˆ�Y˜˜B�xÝ&¨¨1 v™œØ%-ð/ñ /ô /ð ñ	ô 	ð 	ð 	ˆ�Y•w  B˜xÑ(Ô(Ø ! 1˜vØ%-ð/ñ /ô /ð ñ	ô 	ð 	ð 	ð 	rC   rP   c                 óR   — g d¢}g d¢}g d¢} |t          |||¬¦  «        |fi |¤Ž d S )N)r   rX   rŒ   r×   rï  rô  ró  )rM   r   rŒ   rÖ   r
  r&  r&  )rõ  r   rJ   rŒ   rÖ   rL   rŒ   r  r	  ©r?   r÷  rø  rù  r	  rf   rg   s          r@   Útest_mixed_valueszTestStirling2.test_mixed_values«  sT   € ð .Ð-Ð-ˆØ$Ð$Ð$ˆØ"Ð"Ð"ˆØˆ�Y�q˜! 8Ð,Ñ,Ô,¨cÐ<Ð<°VÐ<Ð<Ð<Ð<Ð<rC   c                 ó”   ‡— dt          j        d¦  «        cŠ}t          t          ‰|d¬¦  «        dz  ˆfd„|D ¦   «         ¦  «         dS )z{Test parity follows well known identity.

        en.wikipedia.org/wiki/Stirling_numbers_of_the_second_kind#Parity
        r#  ée   Tr  rJ   c                 óX   •— g | ]&}t          j        ‰|d z  z
  dz
  ‰|z
  ¦  «        d z  ‘Œ'S )rJ   rX   )r�  r  )r   rg   rf   s     €r@   r!  z5TestStirling2.test_correct_parity.<locals>.<listcomp>¾  s;   ø€ Ð?Ð?Ð?¸�TŒY�q˜A ™F‘| aÑ'¨¨Q©Ñ/Ô/°!Ñ3Ð?Ð?Ð?rC   N)r]   r   r   r)   )r?   ÚKrf   s     @r@   Útest_correct_parityz!TestStirling2.test_correct_parity¶  sb   ø€ ð
 •B”I˜c‘N”Nˆˆˆ1ÝÝ�a˜ $Ð'Ñ'Ô'¨!Ñ+Ø?Ð?Ð?Ð?¸QÐ?Ñ?Ô?ñ	
ô 	
ð 	
ð 	
ð 	
rC   c                 óò   — t          ddg¦  «        }ddg}ddg}t          t          ||d¬¦  «        |¦  «        sJ ‚t          d	d
g¦  «        }ddg}ddg}t          t          ||d¬¦  «        |¦  «        sJ ‚d S )Nl   V^–;Ú. l   ák4Ô-Tr×   rT   rI   rH   Tr  l	   D,"ÒSBX¡p!NæÑ l   wY®)ÄHŠ_î1e_é*   r@  é   )r   r   r)   )r?   r	  rf   rg   s       r@   Útest_big_numberszTestStirling2.test_big_numbersÁ  s£   € å�~Ð'8Ð9Ñ:Ô:ˆØ�ˆHˆØ�ˆGˆÝ�9 Q¨°Ð6Ñ6Ô6¸Ñ<Ô<Ð<Ð<Ð<åÐ<Ø:ð<ñ =ô =ˆà�ˆHˆØ�ˆHˆÝ�9 Q¨°Ð6Ñ6Ô6¸Ñ<Ô<Ð<Ð<Ð<Ð<Ð<rC   r9  r‹  rÝ  y      @      ð?Ú12r	  )rà  rŒ   Ú2Nr÷  c                 óŽ   — t          j        t          ¦  «        5  t          |||¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr  )r6  r   Ú	TypeErrorr)   )r?   r9  r	  r÷  s       r@   Útest_unsupported_input_typesz*TestStirling2.test_unsupported_input_typesÎ  s�   € õ
 Œ]�9Ñ%Ô%ð 	,ð 	,Ý�a˜ (Ð+Ñ+Ô+Ð+ð	,ð 	,ð 	,ñ 	,ô 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,ð 	,øøøð 	,ð 	,ð 	,ð 	,ð 	,ð 	,s   š:º>Á>c                 óN  — t          | j        d         dd …         ¦  «        }t          g d¢t          ¬¦  «        }t          g d¢t          ¬¦  «        }t          j        t
          ¦  «        5  t          t          |||¬¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )NrH   rX   ©rH   rH   rH   rH   r  ©rX   rJ   rŒ   rH   r  )r   rö  r�  r6  r   r	  r   r)   )r?   r÷  r	  rf   rg   s        r@   Ú!test_numpy_array_int_object_dtypez/TestStirling2.test_numpy_array_int_object_dtypeÖ  sß   € õ �d”j ”m A B BÔ'Ñ(Ô(ˆÝ�L�L�L­Ð/Ñ/Ô/ˆÝ�L�L�L­Ð/Ñ/Ô/ˆÝŒ]�9Ñ%Ô%ð 	>ð 	>Ý�	 ! Q¨hÐ7Ñ7Ô7¸Ñ=Ô=Ð=ð	>ð 	>ð 	>ñ 	>ô 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>ð 	>øøøð 	>ð 	>ð 	>ð 	>ð 	>ð 	>s   Á,!BÂBÂ!Bc                 óÞ   — t          | j        d         dd …         ¦  «        }t          g d¢t          ¬¦  «        }t          g d¢t          ¬¦  «        } |t          ||d¬¦  «        |fi |¤Ž d S )NrH   rX   r	  r  r	  Fr  )r   rö  r+   r)   r	  s          r@   Ú#test_numpy_array_unsigned_int_dtypez1TestStirling2.test_numpy_array_unsigned_int_dtypeà  s{   € õ �d”j ”m A B BÔ'Ñ(Ô(ˆÝ�L�L�L­Ð1Ñ1Ô1ˆÝ�L�L�L­Ð1Ñ1Ô1ˆØˆ�Y�q˜! 5Ð)Ñ)Ô)¨3Ð9Ð9°&Ð9Ð9Ð9Ð9Ð9rC   c                 ó„  — t          g d¢g d¢g¦  «        }t          g d¢g d¢g¦  «        }t          g d¢¦  «        } |t          |||¬¦  «        |fi |¤Ž t          dgdgdgdgdgg¦  «        }t          g d¢¦  «        }t          d	„ t          d
¦  «        D ¦   «         ¦  «        } |t          ||d¬¦  «        |fi |¤Ž d S )N)rX   r|   r×   r&  )rX   rL   rN   rX   )rÖ   rÖ   rÖ   rÖ   r	  r	  r  rH   )r   rX   rJ   rŒ   rH   rÖ   c                 ó   — g | ]}g d ¢‘ŒS ))r   rX   rL   rN   rX   r   r:  )r   rY  s     r@   r!  zDTestStirling2.test_broadcasting_arrays_correctly.<locals>.<listcomp>ù  s   € Ð<Ð<Ð<¨aÐ)Ð)Ð)Ð<Ð<Ð<rC   rÖ   F)r   r)   rv   r	  s          r@   Ú"test_broadcasting_arrays_correctlyz0TestStirling2.test_broadcasting_arrays_correctlyë  sù   € õ ���¨¨¨Ð5Ñ6Ô6ˆÝ�\�\�\ < < <Ð0Ñ1Ô1ˆÝ�L�L�LÑ!Ô!ˆØˆ�Y�q˜! 8Ð,Ñ,Ô,¨cÐ<Ð<°VÐ<Ð<Ð<å�a�S˜1˜# ˜s Q C¨!¨Ð-Ñ.Ô.ˆÝÐ&Ð&Ð&Ñ'Ô'ˆÝÐ<Ð<µ5¸±8´8Ð<Ñ<Ô<Ñ=Ô=ˆØˆ�Y�q˜! 5Ð)Ñ)Ô)¨3Ð9Ð9°&Ð9Ð9Ð9Ð9Ð9rC   c                 ó<  — t          t          ddd¦  «        ¦  «        }|D ]z}t          t          d|dz   ¦  «        ¦  «        }t          |g|d¬¦  «        }|t          |g|d¬¦  «        z
  }t          j        t          j        ||z  ¦  «        ¦  «        dk     sJ ‚Œ{d S )	Né3   r
	  rÖ   rX   Tr  Fgñhãˆµøô>)r$  rv   r)   r]   r&  rC  )r?   rå   rf   Ú	k_entriesÚdenomrx   s         r@   Útest_temme_rel_max_errorz&TestStirling2.test_temme_rel_max_errorü  s¬   € õ •�r˜3 Ñ"Ô"Ñ#Ô#ˆØð 	6ð 	6ˆAÝ�U 1 a¨¡c™]œ]Ñ+Ô+ˆIÝ˜q˜c 9°DÐ9Ñ9Ô9ˆEØ�) Q C¨¸%Ð@Ñ@Ô@Ñ@ˆCÝ”6�"œ&  u¡Ñ-Ô-Ñ.Ô.°Ò5Ð5Ð5Ð5Ð5ð		6ð 	6rC   N)r3  r4  r5  rö  r6  r7  r9  r   r   rü  rÿ  r	  r	  r	  r	  r	  r]   r  r	  r	  r	  r	  r$	  r:  rC   r@   ré  ré  i  sˆ  € € € € € à	
ˆØ	
ˆAˆØˆ	ˆ	ØˆˆØˆˆØÐÐØ!Ð!Ð!Ø(Ð(Ð(Ø0Ð0Ð0Ø7Ð7Ð7Ø@Ð@Ð@ð€Eð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ðJð Jñ	ô ðJð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ðBð Bñ	ô ðBð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ð<ð <ñ	ô ð<ð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ðð ñ	ô ðð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ð=ð =ñ	ô ð=ð	
ð 	
ð 	
ð=ð =ð =ð „[×Ò˜S 3¨¨D°$¸¼Ð"?Ñ@Ô@Ø„[×Ò˜SÐ"5Ð"5Ð"5Ñ6Ô6Ø„[×Ò˜Z¨$°¨Ñ7Ô7ð,ð ,ñ 8Ô7ñ 7Ô6ñ AÔ@ð,ð
 „[×Ò˜Z¨$°¨Ñ7Ô7ð>ð >ñ 8Ô7ð>ð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ð:ð :ñ	ô ð:ð „[×ÒÐ5Ø	ˆ|˜RÐ Ø	� &¨% Ð1ð8ñ ô ð:ð :ñ	ô ð:ð6ð 6ð 6ð 6ð 6rC   ré  ru  )“rà  ra  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   r6  r   ry  Únumpy.testingr   r   r   r   r   Úscipyr   Úscipy.special._ufuncsÚ_ufuncsr<   Úscipy.specialr   r   r    r!   r"   r#   r$   r%   r&   r'   r(   r)   Úscipy._lib._utilr*   r+   Úscipy._lib._array_apir,   r-   r.   Úscipy.special._basicr/   r0   r1   Úscipy.special._testutilsr2   r3   r4   Úscipy.integrater5   r�  Úarchitecturer  r+  r`  r9   r<  rk  rs  rx  r¿  rÅ  rÙ  r  rK  r€  r�  r¶  rÓ  rå  r  r&  rE  rI  r  r*  rG  rf  rŸ  r¿  rÍ  rÔ  ré  rì  rî  r  r
  r  r-  r4  r:  r>  rF  rX  ri  ro  r}  r  r7  r9  r  r‚  r…  rˆ  rŠ  r�  r�  r’  rš  r�  Úfixturer¡  r£  r²  r¶  r¾  rÈ  rÌ  rÐ  rÔ  rÝ  râ  rä  rç  ré  r:  rC   r@   ú<module>r1	     sÐ  ðð" Ð Ð Ð Ø Ð Ð Ð Ø €€€Ø €€€Ø 
€
€
€
Ø €€€à Ð Ð Ð ðð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð ð €€€Ø *Ð *Ð *Ð *Ð *Ð *ðLð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Lð Ð Ð Ð Ð Ð Ø &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ð &Ø 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ð 2Ø EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EÐ EØ "Ð "Ð "Ð "Ð "Ð "Ø HÐ HÐ HÐ HÐ HÐ HÐ HÐ HÐ HÐ HØ .Ð .Ð .Ð .Ð .Ð .Ð .Ð .Ø SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ SÐ Sðð ð ð ð ð ð ð ð ð ð!ð !ð !ð !ð !ð !ð !ð !ð !ð !à  Ð  Ð  Ð  Ð  Ð  à €€€ð „L�GÒÐØ€xÔÑÔ˜qÔ! WÒ,Ð,ð ŒXˆXð 
„xð ðn9ð n9ð n9ð n9ð n9ñ n9ô n9ð n9ðbuGð uGð uGð uGð uGñ uGô uGð uGðp8ð 8ð 8ð 8ð 8ñ 8ô 8ð 8ðð ð ð ð ñ ô ð ð
k-ð k-ð k-ð k-ð k-ñ k-ô k-ð k-ð\	-ð 	-ð 	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð0ð 0ð 0ð 0ð 0ñ 0ô 0ð 0ð<D3ð D3ð D3ð D3ð D3ñ D3ô D3ð D3ðNO/ð O/ð O/ð O/ð O/ñ O/ô O/ð O/ðdB;ð B;ð B;ð B;ð B;ñ B;ô B;ð B;ðJHð Hð Hð Hð Hñ Hô Hð Hð:JTð JTð JTð JTð JTñ JTô JTð JTðZG0ð G0ð G0ð G0ð G0ñ G0ô G0ð G0ðT)=ð )=ð )=ð )=ð )=ñ )=ô )=ð )=ðX_Bð _Bð _Bð _Bð _Bñ _Bô _Bð _BðD;ð ;ð ;ð ;ð ;ñ ;ô ;ð ;ð29ð 9ð 9ð 9ð 9ñ 9ô 9ð 9ð@!ð !ð !ð !ðHj-ð j-ð j-ð j-ð j-ñ j-ô j-ð j-ðZA8ð A8ð A8ð A8ð A8ñ A8ô A8ð A8ðH@7ð @7ð @7ð @7ð @7ñ @7ô @7ð @7ðF*%ð *%ð *%ð *%ð *%ñ *%ô *%ð *%ðZ].ð ].ð ].ð ].ð ].ñ ].ô ].ð ].ð@Q	4ð Q	4ð Q	4ð Q	4ð Q	4ñ Q	4ô Q	4ð Q	4ðh?ð ?ð ?ð ?ð ?ñ ?ô ?ð ?ðD8ð 8ð 8ð 8ð 8ñ 8ô 8ð 8ð	;ð 	;ð 	;ð 	;ð 	;ñ 	;ô 	;ð 	;ðð ð ð$ð ð ð$/3ð /3ð /3ð /3ð /3ñ /3ô /3ð /3ðdð ð ð ð ñ ô ð ð-ð -ð -ð -ð -ñ -ô -ð -ð5=ð 5=ð 5=ð 5=ð 5=ñ 5=ô 5=ð 5=ðp-ð -ð -ð -ð -ñ -ô -ð -ð4-ð -ð -ð -ð -ñ -ô -ð -ðGð Gð Gð Gð Gñ Gô Gð GðQð Qð Qð Qð Qñ Qô Qð QðJð Jð Jð Jð Jñ Jô Jð Jð,&"ð &"ð &"ð &"ð &"ñ &"ô &"ð &"ðR&ð &ð &ð &ð &ñ &ô &ð &ð#9ð #9ð #9ð #9ð #9ñ #9ô #9ð #9ðLSð Sð Sð1ð 1ð 1ð „×Ò˜ ¤˜w¨¨d°C¸¼ÀÄÐHÑIÔIð.ð .ñ JÔIð.ð „×Ò˜ ¤˜w¨¨d°C¸¼ÀÄÐHÑIÔIð.ð .ñ JÔIð.ð „×Ò˜ ¤˜w¨¨d°C¸¼ÀÄÐHÑIÔIð/ð /ñ JÔIð/ð „×Ò˜ ¤˜w¨¨d°C¸¼ÀÄÐHÑIÔIð/ð /ñ JÔIð/ð=ð =ð =ð*)ð )ð )ð
)ð )ð )ð
:4ð :4ð :4ðzKð Kð Kð" „ðð ñ „ðð
 ðNð Nñ ÔðNðEð Eð Eð"Gð Gð GðBð Bð Bð Dð Dð Dð,Fð Fð Fð$Jð Jð Jð&Jð Jð Jð,Cð Cð Cð$Jð Jð Jð
-ð 
-ð 
-ð&ð &ð &ð[6ð [6ð [6ð [6ð [6ñ [6ô [6ð [6ð [6ð [6rC   