§
    fŠtj§\  ã                   óì  — d dl mZ d dlmZ d dlZd dlZd dlZd dlmZ d dl	Z
d dlmZmZ d dlZd dlmZ d dlmZ d dlm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  d dl!m"c m#Z$ d d	l%m&Z& d d
l'm(Z(m)Z)m*Z*m+Z+m,Z,m-Z-m.Z.  e&e¦  «         ej/        j0        d„ ¦   «         Z1d„ Z2d„ Z3d„ Z4d„ Z5d„ Z6e dd„¦   «         Z7d„ Z8d„ Z9 G d„ d¦  «        Z: G d„ d¦  «        Z; G d„ d¦  «        Z<d„ Z= G d„ d¦  «        Z>dS )é    )ÚPoolN)ÚFraction)Úassert_equalÚassert_)Úraises)Úskip_xp_invalid_arg)Úxp_assert_equal)Ú_aligned_zerosÚcheck_random_stateÚ
MapWrapperÚgetfullargspec_no_selfÚFullArgSpecÚrng_integersÚ_validate_intÚ_rename_parameterÚ_contains_nanÚ_rng_html_rewriteÚ_workers_wrapper)Úlazy_xp_function)ÚclusterÚinterpolateÚlinalgÚoptimizeÚsparseÚspatialÚstatsc                  óº   — d} d„ }dD ]R}dD ]M}dD ]H}t           j        t           j        fD ]-}|ddd|ffD ]"}t          | ¦  «        D ]} |||||¦  «         ŒŒ#Œ.ŒIŒNŒSd S )	Né
   c                 ól  — t          | |||f¦  «        }t          | |||¬¦  «        }|€t          j        |¦  «        j        }t          |j        d         d         |z  d¦  «         t          | d¦  «        rt          |j        | |¦  «         nt          |j        | f|¦  «         t          |j        |¦  «         |dk    rt          |j
        j        |¦  «         d S |dk    r)|j        dk    rt          |j
        j        |¦  «         d S d S |€t          |j
        j        |¦  «         d S t          ¦   «         ‚)N)ÚalignÚdatar   Ú__len__ÚCÚF)Úreprr
   ÚnpÚdtypeÚ	alignmentr   Ú__array_interface__ÚhasattrÚshaper   ÚflagsÚc_contiguousÚsizeÚf_contiguousÚ
ValueError)r+   r'   Úorderr    Úerr_msgÚxs         úY/var/www/html/CA-Chatbot/venv/lib/python3.11/site-packages/scipy/_lib/tests/test__util.pyÚcheckz"test__aligned_zeros.<locals>.check   s<  € Ý˜˜u e¨UÐ3Ñ4Ô4ˆÝ˜5 %¨°eÐ<Ñ<Ô<ˆØˆ=Ý”H˜U‘O”OÔ-ˆEÝ�QÔ*¨6Ô2°1Ô5¸Ñ=¸qÑAÔAÐAÝ�5˜)Ñ$Ô$ð 	5Ý˜œ %¨Ñ1Ô1Ð1Ð1å˜œ 5 (¨GÑ4Ô4Ð4Ý�Q”W˜eÑ$Ô$Ð$Ø�CŠ<ˆ<Ý�A”GÔ(¨'Ñ2Ô2Ð2Ð2Ð2Ø�cŠ\ˆ\ØŒv˜Šzˆzå˜œÔ,¨gÑ6Ô6Ð6Ð6Ð6ð ˆzð ˆ]Ý�A”GÔ(¨'Ñ2Ô2Ð2Ð2Ð2å‘,”,Ðó    )	é   é   é   é   é   é   é    é@   N)r   r7   r9   é   )r#   r$   Nr7   r8   r9   )r&   Úuint8Úfloat64Úrange)Úniterr5   r    Únr1   r'   r+   Újs           r4   Útest__aligned_zerosrF      sÊ   € à€Eðð ð ð. 3ð >ð >ˆØð 	>ð 	>ˆAØ)ð >ð >�Ý œh­¬
Ð3ð >ð >�EØ"# a¨¨A¨q \Ð!2ð >ð >˜Ý!& u¡¤ð >ð >˜AØ!˜E %¨°°uÑ=Ô=Ð=Ð=ð>ð>ð>ð>ð	>ð>ð >r6   c                  óŠ  — t          d¦  «        } t          t          | ¦  «        t          j        j        ¦  «         t          | ¦  «        } t          t          | ¦  «        t          j        j        ¦  «         t          d ¦  «        } t          t          | ¦  «        t          j        j        ¦  «         t          t          t           d¦  «         t          j                             t          j         	                    ¦   «         ¦  «        }t          |¦  «        } t          t          | ¦  «        t          j        j        ¦  «         d S )Nr7   Úa)
r   r   Útyper&   ÚrandomÚRandomStateÚassert_raisesr0   Ú	GeneratorÚPCG64)ÚrsiÚrgs     r4   Útest_check_random_staterQ   ?   sÞ   € õ
 ˜QÑ
Ô
€CÝ•�c‘”�BœIÔ1Ñ2Ô2Ð2Ý
˜SÑ
!Ô
!€CÝ•�c‘”�BœIÔ1Ñ2Ô2Ð2Ý
˜TÑ
"Ô
"€CÝ•�c‘”�BœIÔ1Ñ2Ô2Ð2Ý•*Õ0°#Ñ6Ô6Ð6Ý	Œ×	Ò	�RœYŸ_š_Ñ.Ô.Ñ	/Ô	/€BÝ
˜RÑ
 Ô
 €CÝ•�c‘”�BœIÔ/Ñ0Ô0Ð0Ð0Ð0r6   c                  ó¬  — t          d¦  «        } t          | j        ¦  «        }t          |t	          dgd d dg d i ¦  «        ¦  «         t          | j        ¦  «        }t          |t	          ddgd d d g d i ¦  «        ¦  «          G d„ d¦  «        } |¦   «         }t          |j        ¦  «        }t          |t	          g d¢d	d
ddgdd ii ¦  «        ¦  «         d S )Nr7   Úpool)r7   ÚfuncÚiterablec                   ó   — e Zd Zdddœd„ZdS )ú0test_getfullargspec_no_self.<locals>._rv_genericr8   r9   N©r.   c                ó   — d S ©N© )ÚselfrH   ÚbÚcr.   ÚargsÚkwargss          r4   Ú_rvsz5test_getfullargspec_no_self.<locals>._rv_generic._rvsZ   s   € Ø�4r6   ©r8   r9   )Ú__name__Ú
__module__Ú__qualname__ra   r[   r6   r4   Ú_rv_genericrW   Y   s4   € € € € € ð	°ð 	ð 	ð 	ð 	ð 	ð 	ð 	r6   rf   )rH   r]   r^   r_   r`   rb   r.   )r   r   Ú__init__r   r   Ú__call__ra   )ÚpÚargspecrf   Úrv_objs       r4   Útest_getfullargspec_no_selfrl   P   s  € Ý�1‰Œ€AÝ$ Q¤ZÑ0Ô0€GÝ��+ v h°°d¸DÀ"Ø&*¨Bñ0ô 0ñ 1ô 1ð 1å$ Q¤ZÑ0Ô0€GÝ��+ v¨zÐ&:¸DÀ$ÈØ&(¨$°ñ4ô 4ñ 5ô 5ð 5ðð ð ð ð ñ ô ð ð ˆ[‰]Œ]€FÝ$ V¤[Ñ1Ô1€GÝ��+ o o o°v¸xØ&,¨v¨h¸À¸ÈñLô Lñ Mô Mð Mð Mð Mr6   c                  óà  — t          j        d¦  «        } t          j        | ¦  «        }t          d¦  «        }t	          |j        t          u ¦  «         t	          |j        d u ¦  «         t	          |j        du ¦  «         t           |t           j        | ¦  «        ¦  «        }t          ||¦  «         t          t          ¦  «        5  t          d¦  «        }d d d ¦  «         d S # 1 swxY w Y   d S )Nç      $@r7   Fr   )r&   ÚarangeÚsinr   r   Ú_mapfuncÚmaprS   Ú	_own_poolÚlistr   rL   ÚRuntimeError)Úin_argÚout_argri   Úouts       r4   Útest_mapwrapper_serialry   c   s  € ÝŒY�s‰^Œ^€FÝŒf�V‰nŒn€Gå�1‰Œ€AÝˆAŒJ�#ÐÑÔÐÝˆAŒF�dˆNÑÔÐÝˆAŒK˜5Ð Ñ!Ô!Ð!Ý
ˆqˆq•”˜Ñ Ô Ñ
!Ô
!€CÝ��gÑÔÐå	•|Ñ	$Ô	$ð ð Ý�q‰MŒMˆðð ð ñ ô ð ð ð ð ð ð ð øøøð ð ð ð ð ð s   ÃC#Ã#C'Ã*C'c                  óš   — t          d¦  «        5 } |                      t          j        g d¢¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr8   )r7   r8   r9   r:   )r   rr   Úmathrp   )ri   s    r4   Ú	test_poolr|   r   s‰   € Ý	ˆa‰Œð &�AØ	�Š�dŒh˜˜˜Ñ%Ô%Ð%ð&ð &ð &ñ &ô &ð &ð &ð &ð &ð &ð &ð &øøøð &ð &ð &ð &ð &ð &s   �#A Á AÁAc                  ó°  — t          j        d¦  «        } t          j        | ¦  «        }t          d¦  «        5 } |t           j        | ¦  «        }t	          t          |¦  «        |¦  «         t          |j        du ¦  «         t          t          |j	        t          ¦  «        ¦  «         t          |j        d u¦  «         d d d ¦  «         n# 1 swxY w Y   t          t          ¦  «        5 } |t           j        | ¦  «         d d d ¦  «         n# 1 swxY w Y   t          |j        t          u ¦  «         t!          d¦  «        5 }t          |j        ¦  «        }t          |j        du ¦  «         |                     ¦   «          |                     t           j        | ¦  «        }t	          t          |¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrn   r8   TF)r&   ro   rp   r   r   rt   r   rs   Ú
isinstancerS   ÚPWLrq   rL   Ú	ExceptionrI   r0   r   rr   Úclose)rv   rw   ri   rx   ÚexcinfoÚqs         r4   Útest_mapwrapper_parallelr„   w   sA  € ÝŒY�s‰^Œ^€FÝŒf�V‰nŒn€Gå	�A‰Œð (˜!Øˆa•”˜ÑÔˆÝ•T˜#‘Y”Y Ñ(Ô(Ð(å�”˜tÐ#Ñ$Ô$Ð$Ý•
˜1œ6¥3Ñ'Ô'Ñ(Ô(Ð(Ý�”
 $Ð&Ñ'Ô'Ð'ð(ð (ð (ñ (ô (ð (ð (ð (ð (ð (ð (øøøð (ð (ð (ð (õ 
•yÑ	!Ô	!ð  WØ	ˆ�"Œ&�&ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ ˆGŒL�JÐ&Ñ'Ô'Ð'õ 
ˆa‰Œð 	)�AÝ�q”uÑÔˆå�”˜uÐ$Ñ%Ô%Ð%Ø	�Š‰	Œ	ˆ	ð �eŠe•B”F˜FÑ#Ô#ˆÝ•T˜#‘Y”Y Ñ(Ô(Ð(ð	)ð 	)ð 	)ñ 	)ô 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)ð 	)øøøð 	)ð 	)ð 	)ð 	)ð 	)ð 	)s7   ¸BCÃCÃCÃ*DÄDÄDÅA<GÇGÇGr7   c           	      ó¨   — |€J ‚t          |t          ¦  «        sJ ‚t          j        t	           |t          j        | |z  ¦  «        ¦  «        ¦  «        S rZ   )r~   r   r&   Úarrayrt   rp   )r3   r]   Úworkerss      r4   Úuser_of_workersrˆ   —   sN   € àÐÐÐÝ�g�zÑ*Ô*Ð*Ð*Ð*ÝŒ8•D˜˜¥¤¨¨Q©Ñ/Ô/Ñ0Ô0Ñ1Ô1Ð1r6   c                  óÂ  — t          j        dt           j        ¦  «        } t          j        | dz  ¦  «        }t	          d¦  «        5 }t          | |j        d¬¦  «        }t          ||¦  «         d d d ¦  «         n# 1 swxY w Y   t          | d d¬¦  «        }t          ||¦  «         t          | dd¬¦  «        }t          ||¦  «         t          j	        t
          d¬¦  «        }t           || ¦  «        |¦  «         t	          d¦  «        5 }t          j	        t
          d|j        ¬¦  «        }t           || ¦  «        |¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr   ç       @r8   )r‡   r]   )r]   )r]   r‡   )
r&   ÚlinspaceÚpirp   r   rˆ   rr   r   Ú	functoolsÚpartial)ÚarrÚreqri   ÚvÚpart_fs        r4   Útest__workers_wrapperr“   ž   sÃ  € Ý
Œ+�a�œÑ
Ô
€CÝ
Œ&��s‘Ñ
Ô
€Cå	ˆa‰Œð �AÝ˜C¨¬°!Ð4Ñ4Ô4ˆÝ�Q˜ÑÔÐðð ð ñ ô ð ð ð ð ð ð øøøð ð ð ð õ 	˜ T¨QÐ/Ñ/Ô/€AÝ��CÑÔÐå˜ Q¨!Ð,Ñ,Ô,€AÝ��CÑÔÐõ Ô�°!Ð4Ñ4Ô4€FÝ��˜‘”˜cÑ"Ô"Ð"å	ˆa‰Œð '�AÝÔ"¥?°aÀÄÐGÑGÔGˆÝ�V�V˜C‘[”[ #Ñ&Ô&Ð&ð'ð 'ð 'ñ 'ô 'ð 'ð 'ð 'ð 'ð 'ð 'ð 'øøøð 'ð 'ð 'ð 'ð 'ð 's$   Á(A:Á:A>ÂA>Ä;EÅEÅEc                  óì  — t           j                             ¦   «         } t          | dddd¬¦  «        }t          j        |¦  «        dk    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | ddd¬¦  «        }t          j        |¦  «        dk    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | dddd	¬¦  «        }t          j        |¦  «        d
k    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | ddd	¬¦  «        }t          j        |¦  «        d
k    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚	 t           j                             ¦   «         } n# t          $ r Y d S w xY wt          | dddd¬¦  «        }t          j        |¦  «        dk    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | ddd¬¦  «        }t          j        |¦  «        dk    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | dddd	¬¦  «        }t          j        |¦  «        d
k    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚t          | ddd	¬¦  «        }t          j        |¦  «        d
k    sJ ‚t          j        |¦  «        dk    sJ ‚|j        dk    sJ ‚d S )Nr8   é   éd   T)ÚlowÚhighr.   Úendpoint)r–   )r—   r.   r™   r   Fr:   )	r&   rJ   rK   r   ÚmaxÚminr+   Údefault_rngÚAttributeError)Úrngr�   s     r4   Útest_rng_integersrŸ   µ   sG  € Ý
Œ)×
Ò
Ñ
!Ô
!€Cõ �s ¨°¸dÐ
CÑ
CÔ
C€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°dÐ
;Ñ
;Ô
;€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°¸eÐ
DÑ
DÔ
D€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°eÐ
<Ñ
<Ô
<€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐðÝŒi×#Ò#Ñ%Ô%ˆˆøÝð ð ð Øˆˆðøøøõ �s ¨°¸dÐ
CÑ
CÔ
C€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°dÐ
;Ñ
;Ô
;€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°¸eÐ
DÑ
DÔ
D€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐõ �s ¨°eÐ
<Ñ
<Ô
<€CÝŒ6�#‰;Œ;˜!ÒÐÐÐÝŒ6�#‰;Œ;˜!ÒÐÐÐØŒ9˜ÒÐÐÐÐÐs   Å2F Æ
FÆFc            	       ó8  — e Zd Zej                             dd ej        d¦  «         ej        d¦  «         ej	        d¦  «        g¦  «        d„ ¦   «         Z
ej                             dd ej	        dg¦  «         edd¦  «        g¦  «        d„ ¦   «         Zd„ ZdS )	ÚTestValidateIntrD   r:   c                 ó6   — t          |d¦  «        }|dk    sJ ‚d S )NrD   r:   )r   ©r\   rD   s     r4   Útest_validate_intz!TestValidateInt.test_validate_intñ   s"   € å˜!˜SÑ!Ô!ˆØ�AŠvˆvˆvˆvˆvˆvr6   ç      @r7   c                 óŽ   — t          j        t          d¬¦  «        5  t          |d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nzn must be an integer©ÚmatchrD   )Úpytestr   Ú	TypeErrorr   r£   s     r4   Útest_validate_int_badz%TestValidateInt.test_validate_int_badö   sŒ   € åŒ]�9Ð,BÐCÑCÔCð 	"ð 	"Ý˜!˜SÑ!Ô!Ð!ð	"ð 	"ð 	"ñ 	"ô 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"ð 	"øøøð 	"ð 	"ð 	"ð 	"ð 	"ð 	"s   œ:º>Á>c                 ó�   — t          j        t          d¬¦  «        5  t          ddd¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nz$n must be an integer not less than 0r§   éÿÿÿÿrD   r   )r©   r   r0   r   ©r\   s    r4   Útest_validate_int_below_minz+TestValidateInt.test_validate_int_below_minû   s–   € ÝŒ]�:ð .;ð <ñ <ô <ð 	&ð 	&å˜"˜c 1Ñ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&s   œ;»?Á?N)rc   rd   re   r©   ÚmarkÚparametrizer&   r@   Úint16r†   r¤   r   r«   r¯   r[   r6   r4   r¡   r¡   ï   sÃ   € € € € € à„[×Ò˜S 1 h b¤h¨q¡k¤k°8°2´8¸A±;´;ÀÀÄÈÁÄÐ"LÑMÔMðð ñ NÔMðð „[×Ò˜S 3¨¨¬°!°©¬°x°xÀÀ1±~´~Ð"FÑGÔGð"ð "ñ HÔGð"ð&ð &ð &ð &ð &r6   r¡   c                   ó’   — e Zd Z edd¦  «        d„ ¦   «         Z eddd¬¦  «        d„ ¦   «         Zd„ Zej        d„ ¦   «         Z	d	„ Z
d
S )ÚTestRenameParameterÚoldÚnewc                 ó   — |S rZ   r[   ©r\   r¶   s     r4   Úold_keyword_still_acceptedz.TestRenameParameter.old_keyword_still_accepted  ó   € àˆ
r6   z1.9.0)Údep_versionc                 ó   — |S rZ   r[   r¸   s     r4   Úold_keyword_deprecatedz*TestRenameParameter.old_keyword_deprecated  rº   r6   c                 óX  — |                       d¦  «        }|                       d¬¦  «        }|                       d¬¦  «        }||cxk    r|cxk    rdk    sn J ‚t          j        d¦  «        }t          j        t
          |¬¦  «        5  |                       d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        d¦  «        }t          j        t
          |¬¦  «        5  |                       dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          |¬¦  «        5  |                       dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t
          |¬¦  «        5  |                       dd¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )	Nr   ©r¶   ©rµ   z.old_keyword_still_accepted() got an unexpectedr§   ©Ú
unexpectedz)old_keyword_still_accepted() got multiple©r¶   rµ   )r¹   ÚreÚescaper©   r   rª   )r\   Úres1Úres2Úres3Úmessages        r4   Útest_old_keyword_still_acceptedz3TestRenameParameter.test_old_keyword_still_accepted  s±  € à×.Ò.¨rÑ2Ô2ˆØ×.Ò.°2Ð.Ñ6Ô6ˆØ×.Ò.°2Ð.Ñ6Ô6ˆØ�tÐ)Ð)Ò)Ð)˜tÐ)Ð)Ò)Ð) rÒ)Ð)Ð)Ð)Ð)Ð)õ ”)ÐLÑMÔMˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	;ð 	;Ø×+Ò+°rÐ+Ñ:Ô:Ð:ð	;ð 	;ð 	;ñ 	;ô 	;ð 	;ð 	;ð 	;ð 	;ð 	;ð 	;øøøð 	;ð 	;ð 	;ð 	;õ ”)ÐGÑHÔHˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	8ð 	8Ø×+Ò+¨B°BÐ+Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8åŒ]�9¨GÐ4Ñ4Ô4ð 	8ð 	8Ø×+Ò+¨B°BÐ+Ñ7Ô7Ð7ð	8ð 	8ð 	8ñ 	8ô 	8ð 	8ð 	8ð 	8ð 	8ð 	8ð 	8øøøð 	8ð 	8ð 	8ð 	8åŒ]�9¨GÐ4Ñ4Ô4ð 	<ð 	<Ø×+Ò+°¸Ð+Ñ;Ô;Ð;ð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð 	<ð 	<sH   Â	B,Â,B0Â3B0Ã&D
Ä
DÄDÄ0EÅEÅEÅ:FÆF#Æ&F#c                 ó"   — ddl m}  |¦   «         S )Nr   )ÚLock)Ú	threadingrÌ   )r\   rÌ   s     r4   Ú
kwarg_lockzTestRenameParameter.kwarg_lock$  s   € à"Ð"Ð"Ð"Ð"Ð"Øˆt‰vŒvˆr6   c                 ó*  — d}|                       d¦  «        }|                       d¬¦  «        }|5  t          j        t          |¬¦  «        5  |                       d¬¦  «        }d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   ||cxk    r|cxk    rdk    sn J ‚t	          j        d¦  «        }t          j        t          |¬¦  «        5  |                       d¬¦  «         d d d ¦  «         n# 1 swxY w Y   t	          j        d¦  «        }t          j        t          |¬¦  «        5  |                       dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   |5  t          j        t          |¬¦  «        5  t          j        t          |¬¦  «        5  |                       dd¬¦  «         d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   d d d ¦  «         n# 1 swxY w Y   |5  t          j        t          |¬¦  «        5  t          j        t          |¬¦  «        5  |                       dd¬	¦  «         d d d ¦  «         n# 1 swxY w Y   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 )
Nz+Use of keyword argument `old` is deprecatedr   r¿   r§   rÀ   z*old_keyword_deprecated() got an unexpectedrÁ   z%old_keyword_deprecated() got multiplerÃ   )r½   r©   ÚwarnsÚDeprecationWarningrÄ   rÅ   r   rª   )r\   rÎ   Údep_msgrÆ   rÇ   rÈ   rÉ   s          r4   Útest_old_keyword_deprecatedz/TestRenameParameter.test_old_keyword_deprecated)  sG  € ð @ˆØ×*Ò*¨2Ñ.Ô.ˆØ×*Ò*¨rÐ*Ñ2Ô2ˆàð 	?ð 	?Ý”Õ0¸Ð@Ñ@Ô@ð ?ð ?Ø×6Ò6¸2Ð6Ñ>Ô>�Dð?ð ?ð ?ñ ?ô ?ð ?ð ?ð ?ð ?ð ?ð ?øøøð ?ð ?ð ?ð ?ð	?ð 	?ð 	?ñ 	?ô 	?ð 	?ð 	?ð 	?ð 	?ð 	?ð 	?øøøð 	?ð 	?ð 	?ð 	?ð �tÐ)Ð)Ò)Ð)˜tÐ)Ð)Ò)Ð) rÒ)Ð)Ð)Ð)Ð)Ð)õ ”)ÐHÑIÔIˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	7ð 	7Ø×'Ò'°2Ð'Ñ6Ô6Ð6ð	7ð 	7ð 	7ñ 	7ô 	7ð 	7ð 	7ð 	7ð 	7ð 	7ð 	7øøøð 	7ð 	7ð 	7ð 	7õ
 ”)ÐCÑDÔDˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	4ð 	4Ø×'Ò'¨°Ð'Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4àð 	<ð 	<Ý”�y°Ð8Ñ8Ô8ð <ð <Ý”LÕ!3¸7ÐCÑCÔCð<ð <ð ×/Ò/°¸Ð/Ñ;Ô;Ð;ð<ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð <ð <ð <ñ <ô <ð <ð <ð <ð <ð <ð <øøøð <ð <ð <ð <ð	<ð 	<ð 	<ñ 	<ô 	<ð 	<ð 	<ð 	<ð 	<ð 	<ð 	<øøøð 	<ð 	<ð 	<ð 	<ð
 ð 	@ð 	@Ý”�y°Ð8Ñ8Ô8ð @ð @Ý”LÕ!3¸7ÐCÑCÔCð@ð @à×/Ò/°B¸BÐ/Ñ?Ô?Ð?ð@ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð @ð @ð @ñ @ô @ð @ð @ð @ð @ð @ð @øøøð @ð @ð @ð @ð	@ð 	@ð 	@ñ 	@ô 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@ð 	@øøøð 	@ð 	@ð 	@ð 	@ð 	@ð 	@s  °BÁA/Á#BÁ/A3	Á3BÁ6A3	Á7BÂB
ÂB
ÃC;Ã;C?ÄC?Ä5EÅEÅ EÅ&G0ÆGÆGÆ6GÇGÇGÇ	GÇ
GÇG0ÇG	ÇG0Ç G	Ç!G0Ç0G4Ç7G4Ç=JÈI0È5IÉI0ÉIÉI0É IÉ!I0É$JÉ0I4	É4JÉ7I4	É8JÊJÊJN)rc   rd   re   r   r¹   r½   rÊ   r©   ÚfixturerÎ   rÓ   r[   r6   r4   r´   r´     s«   € € € € € ð
 Ð�u˜eÑ$Ô$ðð ñ %Ô$ðð Ð�u˜e°Ð9Ñ9Ô9ðð ñ :Ô9ðð<ð <ð <ð* „^ðð ñ „^ðð@ð @ð @ð @ð @r6   r´   c                   óÖ  — e Zd Zd„ Zd„ Zed„ ¦   «         Zej         	                    dd¬¦  «        ej         
                    dg d¢¦  «        d	„ ¦   «         ¦   «         Zej         	                    d
d¬¦  «        ej         	                    dd¬¦  «        ej         	                    dd¬¦  «        ej         	                    dd¬¦  «        d„ ¦   «         ¦   «         ¦   «         ¦   «         ZdS )ÚTestContainsNaNc                 óž  — t          j        dddt           j        g¦  «        }t          |¦  «        sJ ‚t          |d¬¦  «        sJ ‚t          |d¬¦  «        sJ ‚t          |d d…         ¦  «        rJ ‚t          |d d…         d¬¦  «        rJ ‚t          |d d…         d¬¦  «        rJ ‚t	          j        t          d¬¦  «        5  t          |d	¬¦  «         d d d ¦  «         n# 1 swxY w Y   t          |d d…         d	¬¦  «        rJ ‚t	          j        t          d
¬¦  «        5  t          |d¬¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nr7   r8   r9   Ú	propagate)Ú
nan_policyÚomitúThe input contains nan valuesr§   Úraiseznan_policy must be one ofÚnan)r&   r†   rÝ   r   r©   r   r0   )r\   r!   s     r4   Útest_policyzTestContainsNaN.test_policyK  sì  € ÝŒx˜˜A˜q¥"¤&Ð)Ñ*Ô*ˆå˜TÑ"Ô"Ð"Ð"Ð"Ý˜T¨kÐ:Ñ:Ô:Ð:Ð:Ð:Ý˜T¨fÐ5Ñ5Ô5Ð5Ð5Ð5Ý   b q b¤Ñ*Ô*Ð*Ð*Ð*Ý   b q b¤°kÐBÑBÔBÐBÐBÐBÝ   b q b¤°fÐ=Ñ=Ô=Ð=Ð=Ð=åŒ]�:Ð-LÐMÑMÔMð 	4ð 	4Ý˜$¨7Ð3Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4å   b q b¤°gÐ>Ñ>Ô>Ð>Ð>Ð>åŒ]�:Ð-HÐIÑIÔIð 	2ð 	2Ý˜$¨5Ð1Ñ1Ô1Ð1ð	2ð 	2ð 	2ñ 	2ô 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2ð 	2øøøð 	2ð 	2ð 	2ð 	2ð 	2ð 	2s$   ÃC"Ã"C&Ã)C&Ä#EÅEÅ	Ec                 óv  — t          t          j        g t          ¬¦  «        ¦  «        rJ ‚t          t          j        g d¢¦  «        ¦  «        rJ ‚t          t          j        ddgddgg¦  «        ¦  «        rJ ‚t          t          j        g d¢¦  «        ¦  «        rJ ‚t          t          j        g d¢¦  «        ¦  «        rJ ‚t          t          j        d	d
t          j        g¦  «        ¦  «        sJ ‚t          t          j        d	dt          j        g¦  «        ¦  «        sJ ‚t          t          j        t          j        dt          j        g¦  «        ¦  «        sJ ‚t          t          j        d	dgddgg¦  «        ¦  «        rJ ‚t          t          j        d	dgdt          j        gg¦  «        ¦  «        sJ ‚d S )N©r'   )r7   r8   r9   r7   r8   r9   r:   )ç      ð?rŠ   ç      @)rá   ù               @râ   rá   rã   rŠ   râ   r¥   )r   r&   r†   ÚfloatrÝ   r®   s    r4   Útest_contains_nanz!TestContainsNaN.test_contains_nan\  s�  € å ¥¤¨"µEÐ!:Ñ!:Ô!:Ñ;Ô;Ð;Ð;Ð;õ !¥¤¨)¨)¨)Ñ!4Ô!4Ñ5Ô5Ð5Ð5Ð5Ý ¥¤¨A¨q¨6°A°q°6Ð*:Ñ!;Ô!;Ñ<Ô<Ð<Ð<Ð<å ¥¤¨,¨,¨,Ñ!7Ô!7Ñ8Ô8Ð8Ð8Ð8Ý ¥¤¨-¨-¨-Ñ!8Ô!8Ñ9Ô9Ð9Ð9Ð9Ý�RœX r¨3µ´Ð&7Ñ8Ô8Ñ9Ô9Ð9Ð9Ð9Ý�RœX r¨2­r¬vÐ&6Ñ7Ô7Ñ8Ô8Ð8Ð8Ð8Ý�RœX¥r¤v¨rµ2´6Ð&:Ñ;Ô;Ñ<Ô<Ð<Ð<Ð<Ý ¥¤¨B°¨8°b¸"°XÐ*>Ñ!?Ô!?Ñ@Ô@Ð@Ð@Ð@Ý�RœX¨¨B x°"µb´f°Ð&>Ñ?Ô?Ñ@Ô@Ð@Ð@Ð@Ð@Ð@r6   c                 ó®  — t          j        dddt           j        g¦  «        }t          |¦  «        rJ ‚t          j        dddt           j        gd¬¦  «        }t          |¦  «        sJ ‚t          j        ddgdt           j        gg¦  «        }t          |¦  «        rJ ‚t          j        ddgdt           j        ggd¬¦  «        }t          |¦  «        sJ ‚d S )Nr7   r8   Ú3Úobjectrà   Ú1r9   )r&   r†   rÝ   r   )r\   Údata1Údata2Údata3Údata4s        r4   Útest_contains_nan_with_stringsz.TestContainsNaN.test_contains_nan_with_stringsl  sÒ   € å”˜!˜Q ¥R¤VÐ,Ñ-Ô-ˆÝ  Ñ'Ô'Ð'Ð'Ð'å”˜!˜Q ¥R¤VÐ,°HÐ=Ñ=Ô=ˆÝ˜UÑ#Ô#Ð#Ð#Ð#å”˜3 ˜( Q­¬ KÐ0Ñ1Ô1ˆÝ  Ñ'Ô'Ð'Ð'Ð'å”˜3 ˜( Q­¬ KÐ0¸ÐAÑAÔAˆÝ˜UÑ#Ô#Ð#Ð#Ð#Ð#Ð#r6   Tzlazy backends tested separately)Ú
eager_onlyÚreasonrÙ   )rØ   rÚ   rÜ   c                 ó&  — t           j                             d¦  «        }|                     d¬¦  «        }|                     |¦  «        }t	          ||¦  «        rJ ‚t          j        |¦  «        d                              |j        ¦  «        }|dk    rFt          j
        t          d¬¦  «        5  t	          ||¦  «         d d d ¦  «         d S # 1 swxY w Y   d S |dk    rt	          ||d	¬
¦  «        sJ ‚d S |dk    rt	          ||¦  «        sJ ‚d S d S )Nì   }šÜ? ©r8   r9   r:   rX   ©r7   r8   r7   rÜ   rÛ   r§   rÚ   T©Úxp_omit_okayrØ   )r&   rJ   rœ   Úasarrayr   ÚxpxÚatÚsetrÝ   r©   r   r0   )r\   ÚxprÙ   rž   Úx0r3   s         r4   Útest_array_apizTestContainsNaN.test_array_apiz  sc  € õ Œi×#Ò# OÑ4Ô4ˆØ�ZŠZ˜YˆZÑ'Ô'ˆØ�JŠJ�r‰NŒNˆÝ   JÑ/Ô/Ð/Ð/Ð/åŒF�1‰IŒI�gÔ×"Ò" 2¤6Ñ*Ô*ˆà˜Ò Ð Ý”�zÐ1PÐQÑQÔQð -ð -Ý˜a Ñ,Ô,Ð,ð-ð -ð -ñ -ô -ð -ð -ð -ð -ð -ð -ð -øøøð -ð -ð -ð -ð -ð -à˜6Ò!Ð!Ý   J¸TÐBÑBÔBÐBÐBÐBÐBÐBØ˜;Ò&Ð&Ý   JÑ/Ô/Ð/Ð/Ð/ð 'Ð&Ø/Ð/s   Â0CÃCÃCÚnumpyzlazy backends only)rð   ÚcupyÚarray_api_strictÚtorchc                 óv  — t           j                             d¦  «        }|                     d¬¦  «        }|                     |¦  «        }t	          t          |¦  «        |                     d¦  «        ¦  «         t	          t          |d¦  «        |                     d¦  «        ¦  «         t	          t          |dd¬¦  «        |                     d¦  «        ¦  «         d	}t          j        t          |¬
¦  «        5  t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬
¦  «        5  t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j
        |¦  «        d                              t           j        ¦  «        }t	          t          |¦  «        |                     d¦  «        ¦  «         t	          t          |d¦  «        |                     d¦  «        ¦  «         t	          t          |dd¬¦  «        |                     d¦  «        ¦  «         t          j        t          |¬
¦  «        5  t          |d¦  «         d d d ¦  «         n# 1 swxY w Y   t          j        t          |¬
¦  «        5  t          |d¦  «         d d d ¦  «         d S # 1 swxY w Y   d S )Nrò   ró   rX   FrØ   rÚ   Trõ   znot supported for lazy arraysr§   rÜ   rô   )r&   rJ   rœ   r÷   r	   r   r©   r   rª   rø   rù   rú   rÝ   )r\   rû   rž   rü   r3   r¨   s         r4   Útest_array_api_lazyz#TestContainsNaN.test_array_api_lazy�  sG  € õ
 Œi×#Ò# OÑ4Ô4ˆØ�ZŠZ˜YˆZÑ'Ô'ˆØ�JŠJ�r‰NŒNˆå� aÑ(Ô(¨"¯*ª*°UÑ*;Ô*;Ñ<Ô<Ð<Ý� a¨Ñ5Ô5°r·z²zÀ%Ñ7HÔ7HÑIÔIÐIÝ� a¨¸dÐCÑCÔCÀRÇZÂZÐPUÑEVÔEVÑWÔWÐWà/ˆÝŒ]�9¨EÐ2Ñ2Ô2ð 	%ð 	%Ý˜!˜VÑ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%åŒ]�9¨EÐ2Ñ2Ô2ð 	&ð 	&Ý˜!˜WÑ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&õ ŒF�1‰IŒI�gÔ×"Ò"¥2¤6Ñ*Ô*ˆå� aÑ(Ô(¨"¯*ª*°TÑ*:Ô*:Ñ;Ô;Ð;Ý� a¨Ñ5Ô5°r·z²zÀ$Ñ7GÔ7GÑHÔHÐHÝ� a¨¸dÐCÑCÔCÀRÇZÂZÐPTÑEUÔEUÑVÔVÐVÝŒ]�9¨EÐ2Ñ2Ô2ð 	%ð 	%Ý˜!˜VÑ$Ô$Ð$ð	%ð 	%ð 	%ñ 	%ô 	%ð 	%ð 	%ð 	%ð 	%ð 	%ð 	%øøøð 	%ð 	%ð 	%ð 	%åŒ]�9¨EÐ2Ñ2Ô2ð 	&ð 	&Ý˜!˜WÑ%Ô%Ð%ð	&ð 	&ð 	&ñ 	&ô 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&ð 	&øøøð 	&ð 	&ð 	&ð 	&ð 	&ð 	&sH   Ã<DÄDÄ DÄ?EÅE Å#E ÉI*É*I.É1I.ÊJ.Ê.J2Ê5J2N)rc   rd   re   rÞ   rå   r   rî   r©   r°   Úskip_xp_backendsr±   rý   r  r[   r6   r4   rÖ   rÖ   J  sN  € € € € € ð2ð 2ð 2ð"Að Að Að  ð$ð $ñ Ôð$ð „[×!Ò!¨TØ)Jð "ñ Lô Là„[×Ò˜\Ð+IÐ+IÐ+IÑJÔJð0ð 0ñ KÔJñLô Lð0ð  „[×!Ò! 'Ð2FÐ!ÑGÔGØ„[×!Ò! &Ð1EÐ!ÑFÔFØ„[×!Ò!Ð"4Ð=QÐ!ÑRÔRØ„[×!Ò! 'Ð2FÐ!ÑGÔGð&ð &ñ HÔGñ SÔRñ GÔFñ HÔGð&ð &ð &r6   rÖ   c                  óR   — d„ }  t          | ¦  «        ¦   «         }g d¢}||k    sJ ‚d S )Nc                  ó   — g d¢} | S )N)znp.random.default_rng(8989843)únp.random.default_rng(seed)z8np.random.default_rng(0x9a71b21474694f919882289dc1559ca)ú bob r[   )Úliness    r4   Úmock_strz(test__rng_html_rewrite.<locals>.mock_str¬  s   € ð
ð 
ð 
ˆð ˆr6   )únp.random.default_rng()r  r  r  )r   )r
  ÚresÚrefs      r4   Útest__rng_html_rewriter  «  sM   € ðð ð ð &Õ
˜HÑ
%Ô
%Ñ
'Ô
'€Cðð ð €Cð �#Š:ˆ:ˆ:ˆ:ˆ:ˆ:r6   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ej          !                    d¦  «        ej         j"        ej          #                    dedfedfed fedfedfe	dfe
dfedfed fed fed fed fed fed fed fed fed fed fed fedfedfedfedfedfedfg¦  «        d!„ ¦   «         ¦   «         ¦   «         Z$d"S )#ÚTestTransitionToRNGc                 ó˜   — t           j                             d¦  «        }t          j        j        |                     d¬¦  «        dfi |¤ŽS ©Nì   2F†a¿j  )é   r9   rX   r9   ©r&   rJ   rœ   r   ÚvqÚkmeans2©r\   r`   rž   s      r4   ÚkmeanszTestTransitionToRNG.kmeansÁ  óC   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝŒzÔ! #§*¢*°' *Ñ":Ô":¸AÐHÐHÀÐHÐHÐHr6   c                 ó˜   — t           j                             d¦  «        }t          j        j        |                     d¬¦  «        dfi |¤ŽS r  r  r  s      r4   r  zTestTransitionToRNG.kmeans2Å  r  r6   c                 ó®   — t           j                             d¦  «        }|                     d¦  «        \  }}}t          j        ||fi |¤Ž} ||¦  «        S )Nr  )r9   r   )r&   rJ   rœ   r   ÚBarycentricInterpolator)r\   r`   rž   Úx1Úx2Úy1Úfs          r4   ÚbarycentriczTestTransitionToRNG.barycentricÉ  sV   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØ—Z’Z Ñ(Ô(‰
ˆˆB�ÝÔ/°°BÐAÐA¸&ÐAÐAˆØˆq�‰uŒuˆr6   c                 óŒ   — t           j                             d¦  «        }t          j        |                     d¦  «        dfi |¤ŽS )Nr  ©r   r   r9   )r&   rJ   rœ   r   Úclarkson_woodruff_transformr  s      r4   r%  z/TestTransitionToRNG.clarkson_woodruff_transformÏ  s?   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝÔ1°#·*²*¸XÑ2FÔ2FÈÐTÐTÈVÐTÐTÐTr6   c                 óª   — t           j                             d¦  «        }t          j        t          j        |                     d¦  «        fi |¤Žj        S )Nr  r9   )r&   rJ   rœ   r   ÚbasinhoppingÚrosenr3   r  s      r4   r'  z TestTransitionToRNG.basinhoppingÓ  sB   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝÔ$¥X¤^°S·Z²ZÀ±]´]ÐMÐMÀfÐMÐMÔOÐOr6   c                 óö   — t           j                             d¦  «        }t          j        |                     d¦  «         dz  |                     d¦  «        dz  ¦  «        } |t          j        |fi |¤Žj        S )Nr  r9   r   )r&   rJ   rœ   r   ÚBoundsr(  r3   )r\   Úfunr`   rž   Úboundss        r4   ÚoptzTestTransitionToRNG.opt×  sh   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝ” #§*¢*¨Q¡-¤- °"Ñ!4°c·j²jÀ±m´mÀbÑ6HÑIÔIˆØˆs•8”> 6Ð4Ð4¨VÐ4Ð4Ô6Ð6r6   c                 ó2   —  | j         t          j        fi |¤ŽS rZ   )r-  r   Údifferential_evolution©r\   r`   s     r4   r/  z*TestTransitionToRNG.differential_evolutionÜ  s   € ØˆtŒx�Ô7ÐBÐB¸6ÐBÐBÐBr6   c                 ó2   —  | j         t          j        fi |¤ŽS rZ   )r-  r   Údual_annealingr0  s     r4   r2  z"TestTransitionToRNG.dual_annealingß  s   € ØˆtŒx�Ô/Ð:Ð:°6Ð:Ð:Ð:r6   c                 ó¾   — t           j                             d¦  «        }|                     d¦  «        }t          j        t          j        t          j        |fddi|¤ŽS )Nr  r9   Ú	directionrJ   )r&   rJ   rœ   r   Ú
check_gradr(  Ú	rosen_der)r\   r`   rž   r3   s       r4   r5  zTestTransitionToRNG.check_gradâ  sb   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØ�JŠJ�q‰MŒMˆÝÔ"¥8¤>µ8Ô3EÀqð Að AØ-5ðAØ9?ðAð Að 	Ar6   c                 óL   — t          j        dddi|¤Ž                     ¦   «         S )Nr$  Údensityrá   )r$  )r   Úrandom_arrayÚtoarrayr0  s     r4   r9  z TestTransitionToRNG.random_arrayè  s*   € ÝÔ"ÐCÐC°SÐC¸FÐCÐC×KÒKÑMÔMÐMr6   c                 óL   — t          j        dddi|¤Ž                     ¦   «         S ©Nr   r8  rá   r$  )r   rJ   r:  r0  s     r4   rJ   zTestTransitionToRNG.randomë  s)   € ÝŒ}Ð;Ð;¨SÐ;°FÐ;Ð;×CÒCÑEÔEÐEr6   c                 óL   — t          j        dddi|¤Ž                     ¦   «         S r<  )r   Úrandr:  r0  s     r4   r>  zTestTransitionToRNG.randî  s)   € ÝŒ{Ð9Ð9¨3Ð9°&Ð9Ð9×AÒAÑCÔCÐCr6   c                 ó˜   — t           j                             d¦  «        }|                     d¦  «        }t          j        j        |fi |¤ŽS )Nr  r$  )r&   rJ   rœ   r   r   Úsvds)r\   r`   rž   ÚAs       r4   r@  zTestTransitionToRNG.svdsñ  sD   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØ�JŠJ�xÑ Ô ˆÝŒ}Ô! !Ð.Ð. vÐ.Ð.Ð.r6   c                 ó\   — t          j        j        j        di |¤Ž                     ¦   «         S )Nr9   )r9   )r   Ú	transformÚRotationrJ   Ú	as_matrixr0  s     r4   Úrandom_rotationz#TestTransitionToRNG.random_rotationö  s+   € ÝÔ Ô)Ô0Ð=Ð=°fÐ=Ð=×GÒGÑIÔIÐIr6   c                 ó®   — t           j                             d¦  «        }|                     d¦  «        }t          j        t          j        |fi |¤Žj        S ©Nr  r–   )r&   rJ   rœ   r   Úgoodness_of_fitÚlaplaceÚpvalue©r\   r`   rž   r!   s       r4   rI  z#TestTransitionToRNG.goodness_of_fitù  sG   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØ�zŠz˜#‰ŒˆÝÔ$¥U¤]°DÐCÐC¸FÐCÐCÔJÐJr6   c                 óº   — t           j                             d¦  «        }t          |                     d¦  «        ¦  «        }d„ }t	          j        ||fi |¤Žj        S )Nr  ©r8   r–   c                 ó\   — t          j        | |¬¦  «        t          j        ||¬¦  «        z
  S )N)Úaxis)r&   Úmean)r3   ÚyrP  s      r4   Ú	statisticz7TestTransitionToRNG.permutation_test.<locals>.statistic  s+   € ­"¬'°!¸$Ð*?Ñ*?Ô*?Å"Ä'È!ÐRVÐBWÑBWÔBWÑ*WÐ#Wr6   )r&   rJ   rœ   Útupler   Úpermutation_testrK  )r\   r`   rž   r!   rS  s        r4   rU  z$TestTransitionToRNG.permutation_testþ  sX   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝ�S—Z’Z Ñ)Ô)Ñ*Ô*ˆØWÐWÐWÝÔ% d¨IÐ@Ð@¸Ð@Ð@ÔGÐGr6   c                 ó°   — t           j                             d¦  «        }|                     d¦  «        f}t          j        |t           j        fi |¤Žj        S rH  )r&   rJ   rœ   r   Ú	bootstraprQ  Úconfidence_intervalrL  s       r4   rW  zTestTransitionToRNG.bootstrap  sI   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØ—
’
˜3‘”Ð!ˆÝŒ˜t¥R¤WÐ7Ð7°Ð7Ð7ÔKÐKr6   c                 ó¦   — t           j                             d¦  «        }|                     d¦  «        \  }}}t          j        ||fd|i|¤Žj        S )Nr  )r9   r–   Úcontrol)r&   rJ   rœ   r   ÚdunnettrK  )r\   r`   rž   r3   rR  rZ  s         r4   r[  zTestTransitionToRNG.dunnett	  sQ   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆØŸ
š
 8Ñ,Ô,‰ˆˆ1ˆgÝŒ}˜Q Ð=Ð=¨7Ð=°fÐ=Ð=ÔDÐDr6   c                 óR  — d„ }t          j        t          j         dt          j        z  ¬¦  «        t          j        t          j         dt          j        z  ¬¦  «        t          j        t          j         dt          j        z  ¬¦  «        g}t          j        d|d|dœ|¤Ž}|j        S )Nc                 óÌ   — t          j        | d         ¦  «        dt          j        | d         ¦  «        dz  z  z   d| d         dz  z  t          j        | d         ¦  «        z  z   S )Nr   é   r7   r8   gš™™™™™¹?r:   )r&   rp   )r3   s    r4   Ú
f_ishigamiz5TestTransitionToRNG.sobol_indices.<locals>.f_ishigami  sX   € ¥2¤6¨!¨A¬$¡<¤<°!µb´f¸Q¸q¼T±l´lÀaÑ6GÑ2GÑ#GØ%(¨A¨a¬D°A©IÑ%6½¼ÀÀ!Ä¹¼Ñ%Eñ$Fð Gr6   r8   )ÚlocÚscalei   )rT   rD   Údistsr[   )r   Úuniformr&   rŒ   Úsobol_indicesÚfirst_order)r\   r`   r_  rb  r  s        r4   rd  z!TestTransitionToRNG.sobol_indices  s˜   € ð	Gð 	Gð 	Gå”¥B¤E 6°µR´U±Ð;Ñ;Ô;Ý”¥B¤E 6°µR´U±Ð;Ñ;Ô;Ý”¥B¤E 6°µR´U±Ð;Ñ;Ô;ð=ˆõ Ô!ÐQ z°TÀÐQÐQÈ&ÐQÐQˆØŒÐr6   c                 ó@   —  |dddi|¤Ž}|                      d¦  «        S )NÚdr7   r:   r[   )rJ   )r\   Úenginer`   Úqrngs       r4   Ú
qmc_enginezTestTransitionToRNG.qmc_engine  s,   € ØˆvÐ$Ð$˜Ð$˜VÐ$Ð$ˆØ�{Š{˜1‰~Œ~Ðr6   c                 ó<   —  | j         t          j        j        fi |¤ŽS rZ   )rj  r   ÚqmcÚHaltonr0  s     r4   ÚhaltonzTestTransitionToRNG.halton  s!   € ØˆtŒ�uœyÔ/Ð:Ð:°6Ð:Ð:Ð:r6   c                 ó<   —  | j         t          j        j        fi |¤ŽS rZ   )rj  r   rl  ÚSobolr0  s     r4   ÚsobolzTestTransitionToRNG.sobol  s    € ØˆtŒ�uœyœÐ9Ð9°&Ð9Ð9Ð9r6   c                 ó<   —  | j         t          j        j        fi |¤ŽS rZ   )rj  r   rl  ÚLatinHypercuber0  s     r4   Úlatin_hypercubez#TestTransitionToRNG.latin_hypercube!  s!   € ØˆtŒ�uœyÔ7ÐBÐB¸6ÐBÐBÐBr6   c                 ó<   —  | j         t          j        j        fi |¤ŽS rZ   )rj  r   rl  ÚPoissonDiskr0  s     r4   Úpoisson_diskz TestTransitionToRNG.poisson_disk$  s!   € ØˆtŒ�uœyÔ4Ð?Ð?¸Ð?Ð?Ð?r6   c                 ó\   — t          j        j        dgfi |¤Ž}|                     d¦  «        S )Nr   r:   )r   rl  ÚMultivariateNormalQMCrJ   ©r\   r`   ÚXs      r4   Úmultivariate_normal_qmcz+TestTransitionToRNG.multivariate_normal_qmc'  s.   € ÝŒIÔ+¨Q¨CÐ:Ð:°6Ð:Ð:ˆØ�xŠx˜‰{Œ{Ðr6   c                 ó`   — t          j        j        ddgdfi |¤Ž}|                     d¦  «        S )Ng      à?r:   )r   rl  ÚMultinomialQMCrJ   rz  s      r4   Úmultinomial_qmcz#TestTransitionToRNG.multinomial_qmc+  s2   € ÝŒIÔ$ c¨3 Z°Ð=Ð=°fÐ=Ð=ˆØ�xŠx˜‰{Œ{Ðr6   c                 óÒ   — t           j                             d¦  «        }t          |                     d¦  «        ¦  «        }t	          j        di |¤Ž}t	          j        |d|iŽj        S )Nr  rN  Úmethodr[   )r&   rJ   rœ   rT  r   ÚPermutationMethodÚpearsonrrK  )r\   r`   rž   r!   r�  s        r4   Úpermutation_methodz&TestTransitionToRNG.permutation_method/  s_   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝ�S—Z’Z Ñ)Ô)Ñ*Ô*ˆÝÔ(Ð2Ð2¨6Ð2Ð2ˆÝŒ~˜tÐ3¨FÐ3Ð3Ô:Ð:r6   c                 óî   — t           j                             d¦  «        }t          |                     d¦  «        ¦  «        }t	          j        |Ž }t	          j        di |¤Ž}|                     |¬¦  «        S )Nr  rN  )r�  r[   )r&   rJ   rœ   rT  r   rƒ  ÚBootstrapMethodrX  )r\   r`   rž   r!   r  r�  s         r4   Úbootstrap_methodz$TestTransitionToRNG.bootstrap_method5  sj   € ÝŒi×#Ò#Ð$7Ñ8Ô8ˆÝ�S—Z’Z Ñ)Ô)Ñ*Ô*ˆÝŒn˜dÐ#ˆÝÔ&Ð0Ð0¨Ð0Ð0ˆØ×&Ò&¨fÐ&Ñ5Ô5Ð5r6   r   zmethod, arg_nameÚseedÚrandom_statec           	      ó¢  — t           j                             d ¦  «         d}t           j                             |¦  «        }d}t	          j        t          |¬¦  «        5   || fi d|||i¤Ž d d d ¦  «         n# 1 swxY w Y   t           j                             |¦  «        } || |¬¦  «        } || |¬¦  «        }t          ||¦  «         |j        dv r || fi ||i¤Ž}t          ||¦  «         d S t           j         	                    |¦  «        } || fi ||i¤Ž} || fi ||i¤Ž}|j        dv rU || fi |t           j         	                    |¦  «        i¤Ž}	t          |	|¦  «          || fi ||i¤Ž}
t          |
|¦  «         d S t           j                             |¦  «          || fi |d i¤Ž}t          ||¦  «         t          ||¦  «         d S )Nl   p _ z3got multiple values for argument now known as `rng`r§   rž   )rž   >   r[  rd  >   rq  rn  rw  rt  r  r|  )
r&   rJ   rˆ  rœ   r©   r   rª   r   rc   rK   )r\   r�  Úarg_namerˆ  rž   rÉ   rÆ   rÇ   rÈ   Úres1bÚres2bs              r4   Útest_rng_deterministicz*TestTransitionToRNG.test_rng_deterministic<  sx  € õ< 	Œ	�Š�tÑÔÐØˆåŒi×#Ò# DÑ)Ô)ˆØGˆÝŒ]�9¨GÐ4Ñ4Ô4ð 	9ð 	9ØˆF�4Ð8Ð8˜E 3¨°$Ð7Ð8Ð8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9õ Œi×#Ò# DÑ)Ô)ˆØˆv�d Ð$Ñ$Ô$ˆØˆv�d Ð%Ñ%Ô%ˆÝ�T˜4Ñ Ô Ð àŒ?Ð:Ð:Ð:à�6˜$Ð3Ð3 8¨TÐ"2Ð3Ð3ˆDÝ˜˜tÑ$Ô$Ð$ØˆFåŒi×#Ò# DÑ)Ô)ˆØˆv�dÐ.Ð.˜x¨˜oÐ.Ð.ˆØˆv�dÐ/Ð/˜x¨Ð.Ð/Ð/ˆàŒ?ð Mð Mð Mð �F˜4ÐKÐK H­b¬i×.CÒ.CÀDÑ.IÔ.IÐ#JÐKÐKˆEÝ˜ Ñ%Ô%Ð%Ø�F˜4Ð4Ð4 H¨dÐ#3Ð4Ð4ˆEÝ˜ Ñ%Ô%Ð%ØˆFå
Œ	�Š�tÑÔÐØˆv�dÐ/Ð/˜x¨Ð.Ð/Ð/ˆÝ�T˜4Ñ Ô Ð Ý�T˜4Ñ Ô Ð Ð Ð s   ÁA8Á8A<Á?A<N)%rc   rd   re   r  r  r"  r%  r'  r-  r/  r2  r5  r9  rJ   r>  r@  rF  rI  rU  rW  r[  rd  rj  rn  rq  rt  rw  r|  r  r„  r‡  r©   r°   Ú	fail_slowÚslowr±   rŽ  r[   r6   r4   r  r  À  s  € € € € € ðIð Ið IðIð Ið Iðð ð ðUð Uð UðPð Pð Pð7ð 7ð 7ð
Cð Cð Cð;ð ;ð ;ðAð Að AðNð Nð NðFð Fð FðDð Dð Dð/ð /ð /ð
Jð Jð JðKð Kð Kð
Hð Hð HðLð Lð Lð
Eð Eð Eð
ð ð ðð ð ð;ð ;ð ;ð:ð :ð :ðCð Cð Cð@ð @ð @ðð ð ðð ð ð;ð ;ð ;ð6ð 6ð 6ð „[×Ò˜2ÑÔØ„[ÔØ„[×ÒÐ/Ø	�ÐØ	�&ÐØ	�nÐ%Ø	$ fÐ-Ø	�vÐØ	 Ð(Ø	˜Ð Ø	�VÐØ	�~Ð&Ø	�Ð Ø	ˆ~ÐØ	˜.Ð)Ø	˜.Ð)Ø	˜>Ð*Ø	�NÐ#Ø	˜^Ð,Ø	˜>Ð*Ø	�.Ð!Ø	˜Ð'Ø	�ÐØ	�ˆØ	˜&Ð!Ø	�vÐØ	  &Ð)Ø	˜&Ð!ð32ñ ô ð6%!ð %!ñ7ô ñ Ôñ Ôð:%!ð %!ð %!r6   r  )r7   N)?Úmultiprocessingr   Úmultiprocessing.poolr   rÄ   r{   r�   Ú	fractionsr   rþ   r&   Únumpy.testingr   r   r©   r   rL   Úscipy.conftestr   Úscipy._lib._array_apir	   Úscipy._lib._utilr
   r   r   r   r   r   r   r   r   r   r   Úscipy._lib.array_api_extraÚ_libÚarray_api_extrarø   Ú"scipy._lib.array_api_extra.testingr   Úscipyr   r   r   r   r   r   r   r°   r�  rF   rQ   rl   ry   r|   r„   rˆ   r“   rŸ   r¡   r´   rÖ   r  r  r[   r6   r4   ú<module>r�     s^  ðØ  Ð  Ð  Ð  Ð  Ð  Ø ,Ð ,Ð ,Ð ,Ð ,Ð ,Ø 	€	€	€	Ø €€€Ø Ð Ð Ð Ø Ð Ð Ð Ð Ð à Ð Ð Ð Ø /Ð /Ð /Ð /Ð /Ð /Ð /Ð /Ø €€€Ø *Ð *Ð *Ð *Ð *Ð *Ø .Ð .Ð .Ð .Ð .Ð .à 1Ð 1Ð 1Ð 1Ð 1Ð 1ð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ð )Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ð (Ø ?Ð ?Ð ?Ð ?Ð ?Ð ?Ø PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ PÐ Pð Ð �Ñ Ô Ð ð „Ôð >ð  >ñ Ôð >ðF1ð 1ð 1ð"Mð Mð Mð&ð ð ð&ð &ð &ð
)ð )ð )ð@ ð2ð 2ð 2ñ Ôð2ð'ð 'ð 'ð.7 ð 7 ð 7 ðt&ð &ð &ð &ð &ñ &ô &ð &ð$F@ð F@ð F@ð F@ð F@ñ F@ô F@ð F@ðR^&ð ^&ð ^&ð ^&ð ^&ñ ^&ô ^&ð ^&ðBð ð ð*~!ð ~!ð ~!ð ~!ð ~!ñ ~!ô ~!ð ~!ð ~!ð ~!r6   