Ë
    0Ò^j X  ã                   ó˜  — 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 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«       d„ Z.d„ Z/d„ Z0d„ Z1d„ Z2edd„«       Z3d„ Z4d„ Z5 G d„ d«      Z6 G d„ d«      Z7 G d„ d«      Z8d„ Z9 G d„ d«      Z:y)é    )ÚPoolN)ÚFraction)Úassert_equalÚassert_)Úraises)Úskip_xp_invalid_arg)Úxp_assert_equal)
Ú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  — 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                  j                  t        j                  j                  «       «      }t        |«      } t        t        | «      t        j                  j                  «       y )Né   Úa)
r
   r   ÚtypeÚnpÚrandomÚRandomStateÚassert_raisesÚ
ValueErrorÚ	GeneratorÚPCG64)ÚrsiÚrgs     úf/var/www/ramen.bs-engineer-server.com/venv/lib/python3.12/site-packages/scipy/_lib/tests/test__util.pyÚtest_check_random_stater*      s¸   € ô
 ˜QÓ
€CÜ”�c“œBŸI™I×1Ñ1Ô2Ü
˜SÓ
!€CÜ”�c“œBŸI™I×1Ñ1Ô2Ü
˜TÓ
"€CÜ”�c“œBŸI™I×1Ñ1Ô2Ü”*Ô0°#Ô6Ü	�‰×	Ñ	œRŸY™YŸ_™_Ó.Ó	/€BÜ
˜RÓ
 €CÜ”�c“œBŸI™I×/Ñ/Õ0ó    c                  ól  — 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 «      «       y )Nr   Úpool)r   ÚfuncÚiterablec                   ó   — e Zd Zdddœd„Zy)ú0test_getfullargspec_no_self.<locals>._rv_genericN©Úsizec                 ó   — y ©N© )Úselfr   ÚbÚcr3   ÚargsÚkwargss          r)   Ú_rvsz5test_getfullargspec_no_self.<locals>._rv_generic._rvs6   s   € Ør+   ©é   é   )Ú__name__Ú
__module__Ú__qualname__r<   r6   r+   r)   Ú_rv_genericr1   5   s   „ ð	°õ 	r+   rC   )r   r8   r9   r:   r;   r=   r3   )r   r   Ú__init__r   r   Ú__call__r<   )ÚpÚargspecrC   Úrv_objs       r)   Útest_getfullargspec_no_selfrI   ,   s·   € Ü�1‹€AÜ$ Q§Z¡ZÓ0€GÜ�œ+ v h°°d¸DÀ"Ø&*¨Bó0ô 1ä$ Q§Z¡ZÓ0€GÜ�œ+ v¨zÐ&:¸DÀ$ÈØ&(¨$°ó4ô 5÷ñ ñ ‹]€FÜ$ V§[¡[Ó1€GÜ�œ+¢o°v¸xØ&,¨v¨h¸À¸ÈóLõ Mr+   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 «       y # 1 sw Y   y xY w)Nç      $@r   Fr   )r    ÚarangeÚsinr   r   Ú_mapfuncÚmapr-   Ú	_own_poolÚlistr   r#   ÚRuntimeError)Úin_argÚout_argrF   Úouts       r)   Útest_mapwrapper_serialrV   ?   sœ   € Ü�Y‰Y�s‹^€FÜ�f‰f�V‹n€Gä�1‹€AÜˆA�J‰Jœ#ÐÔÜˆA�F‰F�dˆNÔÜˆA�K‰K˜5Ð Ô!Ü
‰q”—‘˜Ó Ó
!€CÜ��gÔä	”|Ó	$ñ Ü�q‹Mˆ÷÷ ñ ús   Â:CÃCc                  óˆ   — t        d«      5 } | j                  t        j                  g d¢«       d d d «       y # 1 sw Y   y xY w)Nr>   )r   r>   r?   é   )r   rO   ÚmathrM   )rF   s    r)   Ú	test_poolrZ   N   s2   € Ü	ˆa‹ð &�AØ	�‰Œd�h‰hšÔ%÷&÷ &ñ &ús	   Œ#8¸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 «       t        t        «      5 } t         j                  | «       d d d «       t        j                  t        u «       t!        d«      5 }t        |j"                  «      }t        |j                  du «       |j%                  «        |j#                  t         j                  | «      }t	        t        |«      |«       d d d «       y # 1 sw Y   ŒÙxY w# 1 sw Y   Œ¶xY w# 1 sw Y   y xY w)NrK   r>   TF)r    rL   rM   r   r   rQ   r   rP   Ú
isinstancer-   ÚPWLrN   r#   Ú	Exceptionr   r$   r   rO   Úclose)rS   rT   rF   rU   ÚexcinfoÚqs         r)   Útest_mapwrapper_parallelrb   S   s@  € Ü�Y‰Y�s‹^€FÜ�f‰f�V‹n€Gä	�A‹ð (˜!Ù”—‘˜ÓˆÜ”T˜#“Y Ô(ä�—‘˜tÐ#Ô$Ü”
˜1Ÿ6™6¤3Ó'Ô(Ü�—
‘
 $Ð&Ô'÷(ô 
”yÓ	!ð  WÙ	Œ"�&‰&�&Ô÷ô ˆG�L‰LœJÐ&Ô'ô 
ˆa‹ð 	)�AÜ�q—u‘uÓˆä�—‘˜uÐ$Ô%Ø	�‰Œ	ð �e‰e”B—F‘F˜FÓ#ˆÜ”T˜#“Y Ô(÷	)ð 	)÷!(ð (ú÷ð ú÷	)ð 	)ús%   ¶A>FÃFÄA2F$ÆFÆF!Æ$F-c           	      óš   — |€J ‚t        |t        «      sJ ‚t        j                  t	         |t        j
                  | |z  «      «      «      S r5   )r\   r   r    ÚarrayrQ   rM   )Úxr8   Úworkerss      r)   Úuser_of_workersrg   s   sA   € àÐÐÐÜ�gœzÔ*Ð*Ð*Ü�8‰8”D™¤§¡¨¨Q©Ó/Ó0Ó1Ð1r+   c                  óv  — t        j                  dt         j                  «      } t        j                  | dz  «      }t	        d«      5 }t        | |j                  d¬«      }t        ||«       d d d «       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 «       y # 1 sw Y   Œ·xY w# 1 sw Y   y xY w)Nr   ç       @r>   )rf   r8   )r8   )r8   rf   )
r    ÚlinspaceÚpirM   r   rg   rO   r   Ú	functoolsÚpartial)ÚarrÚreqrF   ÚvÚpart_fs        r)   Útest__workers_wrapperrr   z   sÿ   € Ü
�+‰+�aœŸ™Ó
€CÜ
�&‰&��s‘Ó
€Cä	ˆa‹ð �AÜ˜C¨¯©°!Ô4ˆÜ�Q˜Ô÷ô 	˜ T¨QÔ/€AÜ��CÔä˜ Q¨!Ô,€AÜ��CÔô ×Ñœ°!Ô4€FÜ‘˜“˜cÔ"ä	ˆa‹ð '�AÜ×"Ñ"¤?°aÀÇÁÔGˆÜ‘V˜C“[ #Ô&÷'ð '÷ð ú÷'ð 'ús   Á%D#Ã!9D/Ä#D,Ä/D8c                  óä  — t         j                  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                  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 ‚y # t        $ r Y y w xY w)Nr>   é   éd   T)ÚlowÚhighr3   Úendpoint)ru   )rv   r3   rx   r   FrX   )	r    r!   r"   r   ÚmaxÚminÚshapeÚdefault_rngÚAttributeError)Úrngrn   s     r)   Útest_rng_integersr   ‘   sÇ  € Ü
�)‰)×
Ñ
Ó
!€Cô �s ¨°¸dÔ
C€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°dÔ
;€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°¸eÔ
D€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°eÔ
<€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐðÜ�i‰i×#Ñ#Ó%ˆô
 �s ¨°¸dÔ
C€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°dÔ
;€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°¸eÔ
D€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÐô �s ¨°eÔ
<€CÜ�6‰6�#‹;˜!ÒÐÐÜ�6‰6�#‹;˜!ÒÐÐØ�9‰9˜ÒÐÑøô3 ò Ùðús   Å2K# Ë#	K/Ë.K/c            	       ó8  — e Zd Zej                  j                  dd ej                  d«       ej                  d«       ej                  d«      g«      d„ «       Z
ej                  j                  dd ej                  dg«       edd«      g«      d„ «       Zd„ Zy)	ÚTestValidateIntÚnrX   c                 ó*   — t        |d«      }|dk(  sJ ‚y )Nr‚   rX   )r   ©r7   r‚   s     r)   Útest_validate_intz!TestValidateInt.test_validate_intÍ   s   € ä˜!˜SÓ!ˆØ�AŠvˆ‰vr+   ç      @r   c                 ó|   — t        j                  t        d¬«      5  t        |d«       d d d «       y # 1 sw Y   y xY w)Nzn must be an integer©Úmatchr‚   )Úpytestr   Ú	TypeErrorr   r„   s     r)   Útest_validate_int_badz%TestValidateInt.test_validate_int_badÒ   s0   € ä�]‰]œ9Ð,BÔCñ 	"Ü˜!˜SÔ!÷	"÷ 	"ñ 	"ús   œ2²;c                 ó~   — t        j                  t        d¬«      5  t        ddd«       d d d «       y # 1 sw Y   y xY w)Nz$n must be an integer not less than 0rˆ   éÿÿÿÿr‚   r   )rŠ   r   r$   r   ©r7   s    r)   Útest_validate_int_below_minz+TestValidateInt.test_validate_int_below_min×   s6   € Ü�]‰]œ:ð .;ô <ñ 	&ä˜"˜c 1Ô%÷	&÷ 	&ñ 	&ús   œ3³<N)r@   rA   rB   rŠ   ÚmarkÚparametrizer    Úuint8Úint16rd   r…   r   rŒ   r�   r6   r+   r)   r�   r�   Ë   s‘   „ à‡[�[×Ñ˜S 1 h b§h¡h¨q£k°8°2·8±8¸A³;ÀÀÇÁÈÃÐ"LÓMñó Nðð ‡[�[×Ñ˜S 3¨¨¯©°!°«±xÀÀ1³~Ð"FÓGñ"ó Hð"ó&r+   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
y
)ÚTestRenameParameterÚoldÚnewc                 ó   — |S r5   r6   ©r7   r˜   s     r)   Úold_keyword_still_acceptedz.TestRenameParameter.old_keyword_still_acceptedâ   ó   € àˆ
r+   z1.9.0)Údep_versionc                 ó   — |S r5   r6   rš   s     r)   Úold_keyword_deprecatedz*TestRenameParameter.old_keyword_deprecatedç   rœ   r+   c                 ó  — | j                  d«      }| j                  d¬«      }| j                  d¬«      }||cxk(  r|cxk(  rdk(  sJ ‚ J ‚t        j                  d«      }t        j                  t
        |¬«      5  | j                  d¬«       d d d «       t        j                  d«      }t        j                  t
        |¬«      5  | j                  dd¬«       d d d «       t        j                  t
        |¬«      5  | j                  dd¬«       d d d «       t        j                  t
        |¬«      5  | j                  dd¬«       d d d «       y # 1 sw Y   ŒÄxY w# 1 sw Y   Œ„xY w# 1 sw Y   ŒYxY w# 1 sw Y   y xY w)	Né
   ©r˜   ©r—   z.old_keyword_still_accepted() got an unexpectedrˆ   ©Ú
unexpectedz)old_keyword_still_accepted() got multiple©r˜   r—   )r›   ÚreÚescaperŠ   r   r‹   )r7   Úres1Úres2Úres3Úmessages        r)   Útest_old_keyword_still_acceptedz3TestRenameParameter.test_old_keyword_still_acceptedë   sS  € à×.Ñ.¨rÓ2ˆØ×.Ñ.°2Ð.Ó6ˆØ×.Ñ.°2Ð.Ó6ˆØ�tÔ)˜tÔ) rÒ)Ð)Ñ)Ð)Ð)ô —)‘)ÐLÓMˆÜ�]‰]œ9¨GÔ4ñ 	;Ø×+Ñ+°rÐ+Ô:÷	;ô —)‘)ÐGÓHˆÜ�]‰]œ9¨GÔ4ñ 	8Ø×+Ñ+¨B°BÐ+Ô7÷	8ä�]‰]œ9¨GÔ4ñ 	8Ø×+Ñ+¨B°BÐ+Ô7÷	8ä�]‰]œ9¨GÔ4ñ 	<Ø×+Ñ+°¸Ð+Ô;÷	<ð 	<÷	;ð 	;ú÷
	8ð 	8ú÷	8ð 	8ú÷	<ð 	<ús0   Á<EÃEÃ>E*Ä5E6ÅEÅE'Å*E3Å6E?c                 ó   — ddl m}  |«       S )Nr   )ÚLock)Ú	threadingr¯   )r7   r¯   s     r)   Ú
kwarg_lockzTestRenameParameter.kwarg_lock   s   € å"Ù‹vˆr+   c                 ó¸  — d}| j                  d«      }| j                  d¬«      }|5  t        j                  t        |¬«      5  | j                  d¬«      }d d d «       d d d «       ||cxk(  rcxk(  rdk(  sJ ‚ J ‚t	        j
                  d«      }t        j                  t        |¬«      5  | j                  d¬«       d d d «       t	        j
                  d«      }t        j                  t        |¬«      5  | j                  dd¬«       d d d «       |5  t        j                  t        |¬«      5  t        j                  t        |¬«      5  | j                  dd¬«       d d d «       d d d «       d d d «       |5  t        j                  t        |¬«      5  t        j                  t        |¬«      5  | j                  dd¬	«       d d d «       d d d «       d d d «       y # 1 sw Y   �ŒŒxY w# 1 sw Y   �Œ‘xY w# 1 sw Y   �Œ=xY w# 1 sw Y   ŒýxY w# 1 sw Y   Œ³xY w# 1 sw Y   Œ·xY w# 1 sw Y   Œ»xY w# 1 sw Y   ŒqxY w# 1 sw Y   ŒuxY w# 1 sw Y   y xY w)
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‹   )r7   r±   Údep_msgr©   rª   r«   r¬   s          r)   Útest_old_keyword_deprecatedz/TestRenameParameter.test_old_keyword_deprecated  s"  € ð @ˆØ×*Ñ*¨2Ó.ˆØ×*Ñ*¨rÐ*Ó2ˆàñ 	?Ü—‘Ô0¸Ô@ñ ?Ø×6Ñ6¸2Ð6Ó>�D÷?÷	?ð �tÔ)˜tÔ) rÒ)Ð)Ñ)Ð)Ð)ô —)‘)ÐHÓIˆÜ�]‰]œ9¨GÔ4ñ 	7Ø×'Ñ'°2Ð'Ô6÷	7ô
 —)‘)ÐCÓDˆÜ�]‰]œ9¨GÔ4ñ 	4Ø×'Ñ'¨°Ð'Ô3÷	4àñ 	<Ü—‘œy°Ô8ñ <Ü—L‘LÔ!3¸7ÔCñ<ð ×/Ñ/°¸Ð/Ô;÷<÷ <÷	<ð
 ñ 	@Ü—‘œy°Ô8ñ @Ü—L‘LÔ!3¸7ÔCñ@à×/Ñ/°B¸BÐ/Ô?÷@÷ @÷	@ð 	@÷'?ñ ?ú÷	?ñ 	?ú÷	7ñ 	7ú÷	4ð 	4ú÷<ð <ú÷ <ð <ú÷	<ð 	<ú÷@ð @ú÷ @ð @ú÷	@ð 	@ús³   ¨G.ÁG!ÁG.Â-G;Ã8HÄH,Ä2H ÅHÅ"H Å*H,Å<IÆIÆ4H8ÇIÇIÇ!G+	Ç&G.Ç.G8Ç;HÈHÈHÈH È H)	È%H,È,H5È8IÈ=IÉI	É	IÉIN)r@   rA   rB   r   r›   rŸ   r­   rŠ   Úfixturer±   r¶   r6   r+   r)   r–   r–   Ý   s]   „ ñ
 �u˜eÓ$ñó %ðñ �u˜e°Ô9ñó :ðò<ð* ‡^�^ñó ðó@r+   r–   c                   ó6  — e Zd Zd„ Zd„ Zed„ «       Zej                  j                  dd¬«      ej                  j                  dg d¢«      ej                  j                  d	d
¬«      d„ «       «       «       Zej                  j                  dd¬«      ej                  j                  dd¬«      ej                  j                  dd¬«      ej                  j                  dd¬«      ej                  j                  d	d
¬«      d„ «       «       «       «       «       Zy)Ú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 «       t        |d d d	¬«      rJ ‚t	        j
                  t        d
¬«      5  t        |d¬«       d d d «       y # 1 sw Y   ŒMxY w# 1 sw Y   y xY w)Nr   r>   r?   Ú	propagate)Ú
nan_policyÚomitúThe input contains nan valuesrˆ   Úraiseznan_policy must be one ofÚnan)r    rd   rÀ   r   rŠ   r   r$   )r7   Údatas     r)   Útest_policyzTestContainsNaN.test_policy'  s  € Ü�x‰x˜˜A˜q¤"§&¡&Ð)Ó*ˆä˜TÔ"Ð"Ð"Ü˜T¨kÕ:Ð:Ð:Ü˜T¨fÕ5Ð5Ð5Ü   b q Ô*Ð*Ð*Ü   b q °kÕBÐBÐBÜ   b q °fÕ=Ð=Ð=ä�]‰]œ:Ð-LÔMñ 	4Ü˜$¨7Õ3÷	4ä   b q °gÕ>Ð>Ð>ä�]‰]œ:Ð-HÔIñ 	2Ü˜$¨5Õ1÷	2ð 	2÷		4ð 	4ú÷	2ð 	2ús   Â"C<Ã%DÃ<DÄDc                 ó^  — 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 ‚y )N©Údtype)r   r>   r?   r   r>   r?   rX   )ç      ð?ri   ç      @)rÆ   ù               @rÇ   rÆ   rÈ   ri   rÇ   r†   )r   r    rd   ÚfloatrÀ   r�   s    r)   Útest_contains_nanz!TestContainsNaN.test_contains_nan8  s<  € ä ¤§¡¨"´EÔ!:Ô;Ð;Ð;ô !¤§¡ª)Ó!4Ô5Ð5Ð5Ü ¤§¡¨A¨q¨6°A°q°6Ð*:Ó!;Ô<Ð<Ð<ä ¤§¡ª,Ó!7Ô8Ð8Ð8Ü ¤§¡ª-Ó!8Ô9Ð9Ð9ÜœRŸX™X r¨3´·±Ð&7Ó8Ô9Ð9Ð9ÜœRŸX™X r¨2¬r¯v©vÐ&6Ó7Ô8Ð8Ð8ÜœRŸX™X¤r§v¡v¨r´2·6±6Ð&:Ó;Ô<Ð<Ð<Ü ¤§¡¨B°¨8°b¸"°XÐ*>Ó!?Ô@Ð@Ð@ÜœRŸX™X¨¨B x°"´b·f±f°Ð&>Ó?Ô@Ð@Ñ@r+   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 ‚y )Nr   r>   Ú3ÚobjectrÄ   Ú1r?   )r    rd   rÀ   r   )r7   Údata1Údata2Údata3Údata4s        r)   Útest_contains_nan_with_stringsz.TestContainsNaN.test_contains_nan_with_stringsH  s²   € ä—‘˜!˜Q ¤R§V¡VÐ,Ó-ˆÜ  Ô'Ð'Ð'ä—‘˜!˜Q ¤R§V¡VÐ,°HÔ=ˆÜ˜UÔ#Ð#Ð#ä—‘˜3 ˜( Q¬¯© KÐ0Ó1ˆÜ  Ô'Ð'Ð'ä—‘˜3 ˜( Q¬¯© KÐ0¸ÔAˆÜ˜UÔ#Ð#Ñ#r+   Tzlazy backends tested separately)Ú
eager_onlyÚreasonr¼   )r»   r½   r¿   Fznot applicable)rÕ   c                 óÞ  — t         j                  j                  d«      }|j                  d¬«      }|j                  |«      }t	        ||«      rJ ‚t        j                  |«      d   j                  |j                  «      }|dk(  r1t        j                  t        d¬«      5  t	        ||«       d d d «       y |dk(  rt	        ||d	¬
«      sJ ‚y |dk(  rt	        ||«      sJ ‚y y # 1 sw Y   y xY w)Nì   }šÜ? ©r>   r?   rX   r2   ©r   r>   r   r¿   r¾   rˆ   r½   T©Úxp_omit_okayr»   )r    r!   r|   Úasarrayr   ÚxpxÚatÚsetrÀ   rŠ   r   r$   )r7   Úxpr¼   r~   Úx0re   s         r)   Útest_array_apizTestContainsNaN.test_array_apiV  sØ   € ô
 �i‰i×#Ñ# OÓ4ˆØ�Z‰Z˜YˆZÓ'ˆØ�J‰J�r‹NˆÜ   JÔ/Ð/Ð/ä�F‰F�1‹I�gÑ×"Ñ" 2§6¡6Ó*ˆà˜Ò Ü—‘œzÐ1PÔQñ -Ü˜a Ô,÷-ð -à˜6Ò!Ü   J¸TÕBÐBÑBØ˜;Ò&Ü   JÔ/Ð/Ñ/ð '÷	-ð -ús   Â"C#Ã#C,Únumpyzlazy backends onlyÚcupyÚarray_api_strictÚtorchc                 óš  — t         j                  j                  d«      }|j                  d¬«      }|j                  |«      }t	        t        |«      |j                  d«      «       t	        t        |d«      |j                  d«      «       t	        t        |dd¬«      |j                  d«      «       d	}t        j                  t        |¬
«      5  t        |d«       d d d «       t        j                  t        |¬
«      5  t        |d«       d d d «       t        j                  |«      d   j                  t         j                  «      }t	        t        |«      |j                  d«      «       t	        t        |d«      |j                  d«      «       t	        t        |dd¬«      |j                  d«      «       t        j                  t        |¬
«      5  t        |d«       d d d «       t        j                  t        |¬
«      5  t        |d«       d d d «       y # 1 sw Y   �Œ@xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒTxY w# 1 sw Y   y xY w)Nr×   rØ   r2   Fr»   r½   TrÚ   znot supported for lazy arraysrˆ   r¿   rÙ   )r    r!   r|   rÜ   r	   r   rŠ   r   r‹   rÝ   rÞ   rß   rÀ   )r7   rà   r~   rá   re   r‰   s         r)   Útest_array_api_lazyz#TestContainsNaN.test_array_api_lazyj  s´  € ô �i‰i×#Ñ# OÓ4ˆØ�Z‰Z˜YˆZÓ'ˆØ�J‰J�r‹Nˆäœ aÓ(¨"¯*©*°UÓ*;Ô<Üœ a¨Ó5°r·z±zÀ%Ó7HÔIÜœ a¨¸dÔCÀRÇZÁZÐPUÓEVÔWà/ˆÜ�]‰]œ9¨EÔ2ñ 	%Ü˜!˜VÔ$÷	%ä�]‰]œ9¨EÔ2ñ 	&Ü˜!˜WÔ%÷	&ô �F‰F�1‹I�gÑ×"Ñ"¤2§6¡6Ó*ˆäœ aÓ(¨"¯*©*°TÓ*:Ô;Üœ a¨Ó5°r·z±zÀ$Ó7GÔHÜœ a¨¸dÔCÀRÇZÁZÐPTÓEUÔVÜ�]‰]œ9¨EÔ2ñ 	%Ü˜!˜VÔ$÷	%ä�]‰]œ9¨EÔ2ñ 	&Ü˜!˜WÔ%÷	&ð 	&÷	%ñ 	%ú÷	&ñ 	&ú÷	%ð 	%ú÷	&ð 	&ús0   ÃHÄ H(ÇH5ÈIÈH%È(H2È5H>ÉI
N)r@   rA   rB   rÂ   rÊ   r   rÓ   rŠ   r‘   Úskip_xp_backendsr’   Úuses_xp_capabilitiesrâ   rè   r6   r+   r)   r¹   r¹   &  s,  „ ò2ò"Að  ñ$ó ð$ð ‡[�[×!Ñ!¨TØ)Jð "ó Là‡[�[×Ñ˜\Ò+IÓJØ‡[�[×%Ñ% eÐ4DÐ%ÓEñ0ó Fó KóLð0ð  ‡[�[×!Ñ! 'Ð2FÐ!ÓGØ‡[�[×!Ñ! &Ð1EÐ!ÓFØ‡[�[×!Ñ!Ð"4Ð=QÐ!ÓRØ‡[�[×!Ñ! 'Ð2FÐ!ÓGØ‡[�[×%Ñ% eÐ4DÐ%ÓEñ&ó Fó Hó Só Gó Hñ
&r+   r¹   c                  ó@   — d„ }  t        | «      «       }g d¢}||k(  sJ ‚y )Nc                  ó   — g d¢} | S )N)znp.random.default_rng(8989843)únp.random.default_rng(seed)z8np.random.default_rng(0x9a71b21474694f919882289dc1559ca)ú bob r6   )Úliness    r)   Úmock_strz(test__rng_html_rewrite.<locals>.mock_strŠ  s   € ò
ˆð ˆr+   )únp.random.default_rng()rí   rñ   rî   )r   )rð   ÚresÚrefs      r)   Útest__rng_html_rewriterô   ‰  s.   € òð &Ô
˜HÓ
%Ó
'€Cò€Cð �#Š:Ð‰:r+   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@                  jC                  d«      ej@                  jD                  ej@                  jG                  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$y")#ÚTestTransitionToRNGc                 ó¢   — t         j                  j                  d«      }t        j                  j
                  |j                  d¬«      dfi |¤ŽS ©Nì   2F†a¿j  )é   r?   r2   r?   ©r    r!   r|   r   ÚvqÚkmeans2©r7   r;   r~   s      r)   ÚkmeanszTestTransitionToRNG.kmeansŸ  ó>   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ�z‰z×!Ñ! #§*¡*°' *Ó":¸AÑHÀÑHÐHr+   c                 ó¢   — t         j                  j                  d«      }t        j                  j
                  |j                  d¬«      dfi |¤ŽS rø   rû   rþ   s      r)   rý   zTestTransitionToRNG.kmeans2£  r   r+   c                 ó¨   — t         j                  j                  d«      }|j                  d«      \  }}}t        j                  ||fi |¤Ž} ||«      S )Nrù   )r?   r¡   )r    r!   r|   r   ÚBarycentricInterpolator)r7   r;   r~   Úx1Úx2Úy1Úfs          r)   ÚbarycentriczTestTransitionToRNG.barycentric§  sK   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØ—Z‘Z Ó(‰
ˆˆB�Ü×/Ñ/°°BÑA¸&ÑAˆÙ�‹uˆr+   c                 óŒ   — t         j                  j                  d«      }t        j                  |j                  d«      dfi |¤ŽS )Nrù   ©r¡   r¡   r?   )r    r!   r|   r   Úclarkson_woodruff_transformrþ   s      r)   r  z/TestTransitionToRNG.clarkson_woodruff_transform­  s8   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ×1Ñ1°#·*±*¸XÓ2FÈÑTÈVÑTÐTr+   c                 ó¼   — t         j                  j                  d«      }t        j                  t        j
                  |j                  d«      fi |¤Žj                  S )Nrù   r?   )r    r!   r|   r   ÚbasinhoppingÚrosenre   rþ   s      r)   r  z TestTransitionToRNG.basinhopping±  sA   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ×$Ñ$¤X§^¡^°S·Z±ZÀ³]ÑMÀfÑM×OÑOÐOr+   c                 óú   — t         j                  j                  d«      }t        j                  |j                  d«       dz  |j                  d«      dz  «      } |t        j
                  |fi |¤Žj                  S )Nrù   r?   r¡   )r    r!   r|   r   ÚBoundsr  re   )r7   Úfunr;   r~   Úboundss        r)   ÚoptzTestTransitionToRNG.optµ  s_   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ—‘ #§*¡*¨Q£- °"Ñ!4°c·j±jÀ³mÀbÑ6HÓIˆÙ”8—>‘> 6Ñ4¨VÑ4×6Ñ6Ð6r+   c                 óD   —  | j                   t        j                  fi |¤ŽS r5   )r  r   Údifferential_evolution©r7   r;   s     r)   r  z*TestTransitionToRNG.differential_evolutionº  s   € Øˆt�x‰xœ×7Ñ7ÑB¸6ÑBÐBr+   c                 óD   —  | j                   t        j                  fi |¤ŽS r5   )r  r   Údual_annealingr  s     r)   r  z"TestTransitionToRNG.dual_annealing½  s   € Øˆt�x‰xœ×/Ñ/Ñ:°6Ñ:Ð:r+   c                 óÎ   — t         j                  j                  d«      }|j                  d«      }t        j                  t        j
                  t        j                  |fddi|¤ŽS )Nrù   r?   Ú	directionr!   )r    r!   r|   r   Ú
check_gradr  Ú	rosen_der)r7   r;   r~   re   s       r)   r  zTestTransitionToRNG.check_gradÀ  s[   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØ�J‰J�q‹MˆÜ×"Ñ"¤8§>¡>´8×3EÑ3EÀqñ AØ-5ðAØ9?ñAð 	Ar+   c                 óL   — t        j                  dddi|¤Žj                  «       S )NÚdensityrÆ   )r
  )r   Úrandom_arrayÚtoarrayr  s     r)   r  z TestTransitionToRNG.random_arrayÆ  s$   € Ü×"Ñ"ÑC°SÐC¸FÑC×KÑKÓMÐMr+   c                 óL   — t        j                  dddi|¤Žj                  «       S ©Nr  rÆ   r
  )r   r!   r   r  s     r)   r!   zTestTransitionToRNG.randomÉ  s"   € Ü�}‰}Ñ;¨SÐ;°FÑ;×CÑCÓEÐEr+   c                 óL   — t        j                  dddi|¤Žj                  «       S r"  )r   Úrandr   r  s     r)   r$  zTestTransitionToRNG.randÌ  s"   € Ü�{‰{Ñ9¨3Ð9°&Ñ9×AÑAÓCÐCr+   c                 ó¢   — t         j                  j                  d«      }|j                  d«      }t        j                  j
                  |fi |¤ŽS )Nrù   r
  )r    r!   r|   r   r   Úsvds)r7   r;   r~   ÚAs       r)   r&  zTestTransitionToRNG.svdsÏ  s?   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØ�J‰J�xÓ ˆÜ�}‰}×!Ñ! !Ñ. vÑ.Ð.r+   c                 óp   — t        j                  j                  j                  di |¤Žj	                  «       S )N)r?   )r   Ú	transformÚRotationr!   Ú	as_matrixr  s     r)   Úrandom_rotationz#TestTransitionToRNG.random_rotationÔ  s+   € Ü× Ñ ×)Ñ)×0Ñ0Ñ=°fÑ=×GÑGÓIÐIr+   c                 óÀ   — t         j                  j                  d«      }|j                  d«      }t        j                  t        j
                  |fi |¤Žj                  S ©Nrù   ru   )r    r!   r|   r   Úgoodness_of_fitÚlaplaceÚpvalue©r7   r;   r~   rÁ   s       r)   r/  z#TestTransitionToRNG.goodness_of_fit×  sF   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØ�z‰z˜#‹ˆÜ×$Ñ$¤U§]¡]°DÑC¸FÑC×JÑJÐJr+   c                 ó¼   — t         j                  j                  d«      }t        |j                  d«      «      }d„ }t	        j
                  ||fi |¤Žj                  S )Nrù   ©r>   ru   c                 ó`   — t        j                  | |¬«      t        j                  ||¬«      z
  S )N)Úaxis)r    Úmean)re   Úyr6  s      r)   Ú	statisticz7TestTransitionToRNG.permutation_test.<locals>.statisticß  s#   € ¬"¯'©'°!¸$Ô*?Ä"Ç'Á'È!ÐRVÔBWÑ*WÐ#Wr+   )r    r!   r|   Útupler   Úpermutation_testr1  )r7   r;   r~   rÁ   r9  s        r)   r;  z$TestTransitionToRNG.permutation_testÜ  sK   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ�S—Z‘Z Ó)Ó*ˆÚWÜ×%Ñ% d¨IÑ@¸Ñ@×GÑGÐGr+   c                 óÂ   — t         j                  j                  d«      }|j                  d«      f}t        j                  |t         j
                  fi |¤Žj                  S r.  )r    r!   r|   r   Ú	bootstrapr7  Úconfidence_intervalr2  s       r)   r=  zTestTransitionToRNG.bootstrapâ  sG   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØ—
‘
˜3“Ð!ˆÜ�‰˜t¤R§W¡WÑ7°Ñ7×KÑKÐKr+   c                 ó°   — t         j                  j                  d«      }|j                  d«      \  }}}t        j                  ||fd|i|¤Žj
                  S )Nrù   )r?   ru   Úcontrol)r    r!   r|   r   Údunnettr1  )r7   r;   r~   re   r8  r@  s         r)   rA  zTestTransitionToRNG.dunnettç  sL   € Ü�i‰i×#Ñ#Ð$7Ó8ˆØŸ
™
 8Ó,‰ˆˆ1ˆgÜ�}‰}˜Q Ñ=¨7Ð=°fÑ=×DÑDÐDr+   c                 óš  — 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   é   r   r>   gš™™™™™¹?rX   )r    rM   )re   s    r)   Ú
f_ishigamiz5TestTransitionToRNG.sobol_indices.<locals>.f_ishigamií  sX   € ¤2§6¡6¨!¨A©$£<°!´b·f±f¸Q¸q¹T³lÀaÑ6GÑ2GÑ#GØ%(¨A¨a©D°A©IÑ%6¼¿¹ÀÀ!Á»Ñ%Eñ$Fð Gr+   r>   )ÚlocÚscalei   )r.   r‚   Údistsr6   )r   Úuniformr    rk   Úsobol_indicesÚfirst_order)r7   r;   rE  rH  rò   s        r)   rJ  z!TestTransitionToRNG.sobol_indicesì  s‹   € ò	Gä—‘¤B§E¡E 6°´R·U±U±Ô;Ü—‘¤B§E¡E 6°´R·U±U±Ô;Ü—‘¤B§E¡E 6°´R·U±U±Ô;ð=ˆô ×!Ñ!ÐQ z°TÀÑQÈ&ÑQˆØ�‰Ðr+   c                 ó8   —  |dddi|¤Ž}|j                  d«      S )NÚdr   rX   r6   )r!   )r7   Úenginer;   Úqrngs       r)   Ú
qmc_enginezTestTransitionToRNG.qmc_engineõ  s"   € ÙÑ$˜Ð$˜VÑ$ˆØ�{‰{˜1‹~Ðr+   c                 óX   —  | j                   t        j                  j                  fi |¤ŽS r5   )rP  r   ÚqmcÚHaltonr  s     r)   ÚhaltonzTestTransitionToRNG.haltonù  s"   € Øˆt�‰œuŸy™y×/Ñ/Ñ:°6Ñ:Ð:r+   c                 óX   —  | j                   t        j                  j                  fi |¤ŽS r5   )rP  r   rR  ÚSobolr  s     r)   ÚsobolzTestTransitionToRNG.sobolü  s    € Øˆt�‰œuŸy™yŸ™Ñ9°&Ñ9Ð9r+   c                 óX   —  | j                   t        j                  j                  fi |¤ŽS r5   )rP  r   rR  ÚLatinHypercuber  s     r)   Úlatin_hypercubez#TestTransitionToRNG.latin_hypercubeÿ  s"   € Øˆt�‰œuŸy™y×7Ñ7ÑB¸6ÑBÐBr+   c                 óX   —  | j                   t        j                  j                  fi |¤ŽS r5   )rP  r   rR  ÚPoissonDiskr  s     r)   Úpoisson_diskz TestTransitionToRNG.poisson_disk  s"   € Øˆt�‰œuŸy™y×4Ñ4Ñ?¸Ñ?Ð?r+   c                 óf   — t        j                  j                  dgfi |¤Ž}|j                  d«      S )Nr   rX   )r   rR  ÚMultivariateNormalQMCr!   ©r7   r;   ÚXs      r)   Úmultivariate_normal_qmcz+TestTransitionToRNG.multivariate_normal_qmc  s+   € Ü�I‰I×+Ñ+¨Q¨CÑ:°6Ñ:ˆØ�x‰x˜‹{Ðr+   c                 ój   — t        j                  j                  ddgdfi |¤Ž}|j                  d«      S )Ng      à?rX   )r   rR  ÚMultinomialQMCr!   r`  s      r)   Úmultinomial_qmcz#TestTransitionToRNG.multinomial_qmc	  s/   € Ü�I‰I×$Ñ$ c¨3 Z°Ñ=°fÑ=ˆØ�x‰x˜‹{Ðr+   c                 óÜ   — t         j                  j                  d«      }t        |j                  d«      «      }t	        j
                  di |¤Ž}t	        j                  |d|iŽj                  S )Nrù   r4  Úmethodr6   )r    r!   r|   r:  r   ÚPermutationMethodÚpearsonrr1  )r7   r;   r~   rÁ   rg  s        r)   Úpermutation_methodz&TestTransitionToRNG.permutation_method  sW   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ�S—Z‘Z Ó)Ó*ˆÜ×(Ñ(Ñ2¨6Ñ2ˆÜ�~‰~˜tÐ3¨FÑ3×:Ñ:Ð:r+   c                 óæ   — t         j                  j                  d«      }t        |j                  d«      «      }t	        j
                  |Ž }t	        j                  di |¤Ž}|j                  |¬«      S )Nrù   r4  )rg  r6   )r    r!   r|   r:  r   ri  ÚBootstrapMethodr>  )r7   r;   r~   rÁ   rò   rg  s         r)   Úbootstrap_methodz$TestTransitionToRNG.bootstrap_method  s_   € Ü�i‰i×#Ñ#Ð$7Ó8ˆÜ�S—Z‘Z Ó)Ó*ˆÜ�n‰n˜dÐ#ˆÜ×&Ñ&Ñ0¨Ñ0ˆØ×&Ñ&¨fÐ&Ó5Ð5r+   r¡   zmethod, arg_nameÚseedÚrandom_statec           	      óp  — t         j                  j                  d «       d}t         j                  j                  |«      }d}t	        j
                  t        |¬«      5   || fi d|||i¤Ž d d d «       t         j                  j                  |«      } || |¬«      } || |¬«      }t        ||«       |j                  dv r || fi ||i¤Ž}t        ||«       y t         j                  j                  |«      } || fi ||i¤Ž} || fi ||i¤Ž}|j                  dv rL || fi |t         j                  j                  |«      i¤Ž}	t        |	|«        || fi ||i¤Ž}
t        |
|«       y t         j                  j                  |«        || fi |d i¤Ž}t        ||«       t        ||«       y # 1 sw Y   �ŒAxY w)Nl   p _ z3got multiple values for argument now known as `rng`rˆ   r~   )r~   >   rA  rJ  >   rW  rT  r]  rZ  re  rb  )
r    r!   rn  r|   rŠ   r   r‹   r   r@   r"   )r7   rg  Úarg_namern  r~   r¬   r©   rª   r«   Úres1bÚres2bs              r)   Útest_rng_deterministicz*TestTransitionToRNG.test_rng_deterministic  s§  € ô< 	�	‰	�‰�tÔØˆä�i‰i×#Ñ# DÓ)ˆØGˆÜ�]‰]œ9¨GÔ4ñ 	9Ù�4Ñ8˜E 3¨°$Ð7Ò8÷	9ô �i‰i×#Ñ# DÓ)ˆÙ�d Ô$ˆÙ�d Ô%ˆÜ�T˜4Ô à�?‰?Ð:Ñ:á˜$Ñ3 8¨TÐ"2Ñ3ˆDÜ˜˜tÔ$Øä�i‰i×#Ñ# DÓ)ˆÙ�dÑ.˜x¨˜oÑ.ˆÙ�dÑ/˜x¨Ð.Ñ/ˆà�?‰?ð Mñ Mñ ˜4ÑK H¬b¯i©i×.CÑ.CÀDÓ.IÐ#JÑKˆEÜ˜ Ô%Ù˜4Ñ4 H¨dÐ#3Ñ4ˆEÜ˜ Ô%Øä
�	‰	�‰�tÔÙ�dÑ/˜x¨Ð.Ñ/ˆÜ�T˜4Ô Ü�T˜4Õ ÷?	9ñ 	9ús   ÁF+Æ+F5N)%r@   rA   rB   rÿ   rý   r  r  r  r  r  r  r  r  r!   r$  r&  r,  r/  r;  r=  rA  rJ  rP  rT  rW  rZ  r]  rb  re  rj  rm  rŠ   r‘   Ú	fail_slowÚslowr’   rt  r6   r+   r)   rö   rö   ž  s¹  „ òIòIòòUòPò7ò
Cò;òAòNòFòDò/ò
JòKò
HòLò
Eò
òò;ò:òCò@òòò;ò6ð ‡[�[×Ñ˜2ÓØ‡[�[×ÑØ‡[�[×ÑÐ/Ø	�ÐØ	�&ÐØ	�nÐ%Ø	$ fÐ-Ø	�vÐØ	 Ð(Ø	˜Ð Ø	�VÐØ	�~Ð&Ø	�Ð Ø	ˆ~ÐØ	˜.Ð)Ø	˜.Ð)Ø	˜>Ð*Ø	�NÐ#Ø	˜^Ð,Ø	˜>Ð*Ø	�.Ð!Ø	˜Ð'Ø	�ÐØ	�ˆØ	˜&Ð!Ø	�vÐØ	  &Ð)Ø	˜&Ð!ð32ó ñ6%!ó7ó ó ñ:%!r+   rö   )r   N);Úmultiprocessingr   Úmultiprocessing.poolr]   r§   rY   rl   Ú	fractionsr   rã   r    Únumpy.testingr   r   rŠ   r   r#   Úscipy.conftestr   Úscipy._lib._array_apir	   Úscipy._lib._utilr
   r   r   r   r   r   r   r   r   r   Úscipy._external.array_api_extraÚ	_externalÚarray_api_extrarÝ   Ú'scipy._external.array_api_extra.testingr   Úscipyr   r   r   r   r   r   r   r*   rI   rV   rZ   rb   rg   rr   r   r�   r–   r¹   rô   rö   r6   r+   r)   ú<module>rƒ     sÊ   ðÝ  Ý ,Û 	Û Û Ý ã ß /Û Ý *Ý .å 1÷R÷ R÷ R÷ .Ð -Ý Dß P× PÑ Pñ �Ô ò1ò"Mò&ò&ò
)ð@ ò2ó ð2ò'ò.7 ÷t&ñ &÷$F@ñ F@÷R`&ñ `&òF÷*~!ò ~!r+   