Ë
    ÏÍ:j÷J ã                   óö  — d dl mZm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 d dlmZmZmZmZmZm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 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/m0Z0m1Z1m2Z2 d dl3m4Z4 d dl5m6Z6  ejn                  ed	¬
«      d„ «       Z8g d¢Z9 e
jt                  g d¢g d¢g d¢g d¢g d¢g d¢gd¬«      Z; ee;«      Z<i Z=d„ Z> e>«        d„ Z?d]d„Z@	 	 	 	 	 d^d„ZAd„ ZBd„ ZCd]d„ZD eed¬«      ZEeEd „ dfd!„ZFd"dd#„ d$ddddddddddd%d eEfd&„ZG eGed'd¬(«      ZH eGed'dd¬)«      ZI eGed'dd'¬*«      ZJ eGed'ddd'¬+«      ZK eGe-«      ZL eGe(d¬,«      xZMZN eGe2«      ZO eGe&«      ZP eGe#«      ZQ eGe"«      ZR eGe%«      ZS eGe$«      ZT eGe)«      ZU eGe'd¬-«      ZV eGe1d¬-«      ZW eGe «      ZX eGe!d¬-«      ZY eGe0«      ZZ eGe.«      Z[ G d.„ d/«      Z\ G d0„ d1«      Z] G d2„ d3«      Z^ G d4„ d5«      Z_ G d6„ d7«      Z` G d8„ d9«      Zad:„ Zb G d;„ d<«      Zcd=„ Zd G d>„ d?«      ZeejÌ                  jÏ                  d@g dA¢«      dB„ «       ZhdC„ ZidD„ ZjdE„ ZkdF„ ZldG„ ZmdH„ ZndI„ ZodJ„ ZpdK„ ZqdL„ ZrdM„ ZsdN„ ZtdO„ ZudP„ ZvdQ„ ZwdR„ ZxdS„ ZydT„ Zz G dU„ dV«      Z{ G dW„ dX«      Z|ejÌ                  jÏ                  dYe,d'fe,d"fe,dZfe,e
jú                  fe'dfe1dfg«      ejÌ                  jÏ                  d[ddg«      d\„ «       «       Z~y)_é    )ÚwrapsÚpartialN)Únorm)ÚverboseÚassert_Úassert_array_equalÚassert_equalÚassert_almost_equalÚassert_allclose)	Ú
squareformÚpdistÚcdistÚ	num_obs_yÚ
num_obs_dmÚis_valid_dmÚ
is_valid_yÚ_validate_vectorÚ_METRICS_NAMES)Ú
braycurtisÚcanberraÚ	chebyshevÚ	cityblockÚcorrelationÚcosineÚdiceÚ	euclideanÚhammingÚjaccardÚjensenshannonÚmahalanobisÚ	minkowskiÚrogerstanimotoÚ
russellraoÚ
seuclideanÚsokalsneathÚsqeuclideanÚyule)Ú_apply_over_batch)Úskip_xp_invalid_argÚsession)ÚparamsÚscopec                 ó   — | j                   S )z;
    Fixture for all metrics in scipy.spatial.distance
    )Úparam)Úrequests    úv/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/scipy/spatial/tests/test_distance.pyÚmetricr1   C   s   € ð
 �=‰=Ðó    )zcdist-X1.txtzcdist-X2.txtziris.txtzpdist-boolean-inp.txtzpdist-chebyshev-ml-iris.txtzpdist-chebyshev-ml.txtzpdist-cityblock-ml-iris.txtzpdist-cityblock-ml.txtzpdist-correlation-ml-iris.txtzpdist-correlation-ml.txtzpdist-cosine-ml-iris.txtzpdist-cosine-ml.txtzpdist-double-inp.txtzpdist-euclidean-ml-iris.txtzpdist-euclidean-ml.txtzpdist-hamming-ml.txtzpdist-jaccard-ml.txtzpdist-jensenshannon-ml-iris.txtzpdist-jensenshannon-ml.txtzpdist-minkowski-3.2-ml-iris.txtzpdist-minkowski-3.2-ml.txtzpdist-minkowski-5.8-ml-iris.txtzpdist-seuclidean-ml-iris.txtzpdist-seuclidean-ml.txtzpdist-spearman-ml.txtzrandom-bool-data.txtzrandom-double-data.txtzrandom-int-data.txtzrandom-uint-data.txt)r   é–  ém  éÿ   éœ  éä  )r3   r   é'  éÔ  é  é�  )r4   r8   r   éò  é4  éŠ   )r5   r9   r<   r   éÛ   ée  )r6   r:   r=   r?   r   é�  )r7   r;   r>   r@   rA   r   Údouble©Údtypec                  ó®  — t         D ]�  } | j                  dd«      j                  dd«      }t        j                  j	                  t        j                  j                  t        «      d| «      }t        |«      }t        j                  |«      t        |<   |j                  «        ŒŸ t        j                  t        d   «      t        d<   t        j                  t        d   «      t        d<   t        j                  t        d   «      t        d<   t        j                  t        d	   «      t        d	<   t        j                  t        d
   «      t        d
<   y )Nz.txtÚ z-mlÚdataúpdist-boolean-inpúrandom-bool-dataúrandom-double-dataúrandom-float32-dataúrandom-int-dataúrandom-uint-data)Ú
_filenamesÚreplaceÚosÚpathÚjoinÚdirnameÚ__file__ÚopenÚnpÚloadtxtÚeoÚcloseÚbool_Úfloat32ÚlongÚulong)ÚfnÚnameÚfqfnÚfps       r0   Úload_testing_filesrb   z   sø   € Üò ˆØ�z‰z˜& "Ó%×-Ñ-¨e°RÓ8ˆÜ�w‰w�|‰|œBŸG™GŸO™O¬HÓ5°v¸rÓBˆÜ�$‹ZˆÜ—:‘:˜b“>Œˆ4‰Ø
�‰�
ðô !Ÿh™h¤rÐ*=Ñ'>Ó?„BÐÑÜŸX™X¤bÐ);Ñ&<Ó=„BÐÑÜ "§
¡
¬2Ð.BÑ+CÓ D„BÐÑÜŸG™G¤BÐ'8Ñ$9Ó:„BÐÑÜŸX™X¤bÐ);Ñ&<Ó=„BÐÒr2   c                  óF   — t        j                  d«      j                  dk  S )Nr   é   )rV   ÚintpÚitemsize© r2   r0   Ú	_is_32bitrh   ‹   s   € Ü�7‰7�1‹:×Ñ Ñ"Ð"r2   c                 ó|  ‡ — ‰ D �cg c]  }t        j                  |«      ‘Œ c}Š |€6‰ D �cg c](  }|j                  dk7  rt        j                  |«      n|‘Œ* c}Š d}t	        d„ ‰ D «       «      Š |dk  r:t        ˆ fd„‰ D «       «      st        d«      ‚t        ‰ d   j                  «      |   }‰ |fz   S c c}w c c}w )Né   r   c              3   óF   K  — | ]  }t        j                  |«      –— Œ y ­w©N)rV   Ú
atleast_1d©Ú.0Úas     r0   ú	<genexpr>z _chk_asarrays.<locals>.<genexpr>–   s   è ø€ Ò4¨”2—=‘= ×#Ñ4ùs   ‚!c              3   óV   •K  — | ]   }|j                   ‰d    j                   k(  –— Œ" y­w)r   N)Úndim)ro   rp   Úarrayss     €r0   rq   z _chk_asarrays.<locals>.<genexpr>˜   s"   øè ø€ Ò<°�1—6‘6˜V A™YŸ^™^Õ+Ñ<ùs   ƒ&)z(array ndim must be the same for neg axis)rV   Ú
asanyarrayrs   ÚravelÚtupleÚallÚ
ValueErrorÚrange)rt   Úaxisrp   s   `  r0   Ú_chk_asarraysr|   �   s¶   ø€ Ø(.Ö/ 1Œb�m‰m˜AÕÒ/€FØ€|ð "ö#Øð "#§¡¨1¢”"—(‘(˜1”+°!Ñ3ò #ˆàˆÜÑ4¨VÔ4Ó4€FØˆa‚xÜÓ<°VÔ<Ô<ÜÐGÓHÐHÜ�V˜A‘Y—^‘^Ó$ TÑ*ˆØ�T�GÑÐùò 0ùò#s
   †B4«-B9FTc
                 ób  ‡‡‡— t        | ‰¬«      }
|
d d |
d   c} Š|xr | }|s|rt        d„ | D «       «      }|r`| D �cg c]*  }t        j                  t        j                  |«      «      ‘Œ, }}t        |«      r d}d}t        d„ t        | |«      D «       «      } ‰�t        j                  ‰«      Šn/|r&t        j                  | d   j                  ‰   «      Šn| ‰‰fz   S |	rt        ‰«      Š|rt        | ‰‰«      Št        ˆˆfd„| D «       «      st        d«      ‚|r‰dk  j                  «       rt        d	«      ‚|rNt        j                  ‰dkD  «      d   Š‰j                  ‰j                  k  rt        ˆˆfd
„| D «       «      } ‰‰   Š|r‰dk(  j                  «       rd Š| ‰‰fz   S c c}w )N©r{   éÿÿÿÿc              3   óŽ   K  — | ]=  }t         j                  j                  |«      t         j                  j                  u–— Œ? y ­wrl   )rV   ÚmaÚgetmaskÚnomaskrn   s     r0   rq   z_chk_weights.<locals>.<genexpr>¨   s*   è ø€ ÒQÀQœBŸE™EŸM™M¨!Ó,´B·E±E·L±LÔ@ÑQùs   ‚AATc              3   óh   K  — | ]*  \  }}|rt         j                  j                  |«      n|–— Œ, y ­wrl   )rV   r�   Úmasked_invalid)ro   rp   Úhas_nans      r0   rq   z_chk_weights.<locals>.<genexpr>¯   s4   è ø€ ò DÙ)˜q 'ñ 7>œ2Ÿ5™5×/Ñ/°Ô2À1ÓDñ Dùs   ‚02r   c              3   óX   •K  — | ]!  }‰j                   |j                   ‰   fk(  –— Œ# y ­wrl   ©Úshape)ro   rp   r{   Úweightss     €€r0   rq   z_chk_weights.<locals>.<genexpr>¿   s%   øè ø€ ÒA°Qˆw�}‰} §¡¨¡Ð 0Õ0ÑAùs   ƒ'*z*weights shape must match arrays along axiszweights cannot be negativec              3   óN   •K  — | ]  }t        j                  |‰‰¬ «      –— Œ y­w)r~   N)rV   Útake)ro   rp   r{   Úpos_weightss     €€r0   rq   z_chk_weights.<locals>.<genexpr>Ç   s!   øè ø€ ÒNÀ!œ2Ÿ7™7 1 k¸×=Ð=ÑNùs   ƒ"%rj   )r|   ÚanyrV   ÚisnanÚsumrw   Úzipru   Úonesr‰   Ú_freq_weightsÚ_weight_maskedrx   ry   ÚnonzeroÚsize)rt   rŠ   r{   Úforce_weightsÚsimplify_weightsÚpos_onlyÚ	neg_checkÚ
nan_screenÚmask_screenÚddofÚchkedrp   Úhas_nansr�   s    ``          @r0   Ú_chk_weightsr    ž   s­  ú€ ô
 ˜& tÔ,€EØ˜˜"�:˜u R™y€L€FˆDà'Ò=°Ð,=ÐÙ™[ÜÑQÈ&ÔQÓQˆáØ17Ö8¨A”B—H‘HœRŸV™V A›YÕ'Ð8ˆÐ8ÜˆxŒ=ØˆKØ ˆMÜñ DÜ-0°¸Ó-BôDó DˆFð ÐÜ—-‘- Ó(‰Ù	Ü—'‘'˜& ™)Ÿ/™/¨$Ñ/Ó0‰à˜ $˜Ñ'Ð'áÜ Ó(ˆáÜ  ¨°$Ó7ˆäÔA¸&ÔAÔAÜÐEÓFÐFÙ�g ‘k×&Ñ&Ô(ÜÐ5Ó6Ð6áÜ—j‘j ¨1¡Ó-¨aÑ0ˆØ×Ñ˜gŸl™lÒ*ÜÔNÀvÔNÓNˆFØ˜kÑ*ˆGÙ˜W¨™\×.Ñ.Ô0ØˆØ�W˜d�OÑ#Ð#ùòA 9s   ¿/F,c                 óz   — | €| S | j                  t        «      }| |k7  j                  «       rt        d| › �«      ‚|S )Nz0frequency (integer count-type) weights required )ÚastypeÚintrŽ   ry   )rŠ   Úint_weightss     r0   r“   r“   Î   sD   € Ø€ØˆØ—.‘.¤Ó%€KØ�;Ñ×#Ñ#Ô%ÜÐKÈGÈ9ÐUÓVÐVØÐr2   c                 ó†  ‡— ‰€dŠt        j                  |«      }| D ]¡  }t         j                  j                  |«      }|t         j                  j                  u rŒ?|j
                  dkD  r9t        ˆfd„t        |j
                  «      D «       «      }|j                  |¬«      }|d|j                  t        «      z
  z  }Œ£ |S )Nr   rj   c              3   ó.   •K  — | ]  }|‰k7  sŒ	|–— Œ y ­wrl   rg   )ro   Úir{   s     €r0   rq   z!_weight_masked.<locals>.<genexpr>à   s   øè ø€ ÒC 1¸¸d»œQÑCùs   ƒ
Žr~   )rV   ru   r�   r‚   rƒ   rs   rw   rz   rŽ   r¢   r£   )rt   rŠ   r{   rp   Ú	axis_maskÚnot_axess     `   r0   r”   r”   ×   s£   ø€ Ø€|ØˆÜ�m‰m˜GÓ$€GØò -ˆÜ—E‘E—M‘M !Ó$ˆ	ØœŸ™Ÿ™Ñ$ØØ�6‰6�AŠ:ÜÓC¬¨a¯f©f«ÔCÓCˆHØ!Ÿ™¨8˜Ó4ˆIØ�1�y×'Ñ'¬Ó,Ñ,Ñ,‰ð-ð €Nr2   c                 óò  ‡‡— | D �cg c]Q  }t        j                  |j                  t         j                  «      r|j	                  t         j
                  «      n|‘ŒS } }t        j                  |t         j
                  ¬«      }t         j                  j                  |«      }d„ }| d   j                  ‰   Št        ˆˆfd„| D «       «      sJ d«       ‚t        t        |«      ‰z  «      D ]}  }|j                  ‰|z   «      }	||	   }
|j                  «       }||
z  ||	<   t        j                  |d|z
  |
z  «      }| D �cg c]#  }t        j                  | |||	‰¬«      ‰¬«      ‘Œ% } }Œ | |fS c c}w c c}w )NrC   c                 óî   — t        j                  t        j                  | ||¬«      «      }|j                  t	        | j
                  «      D �cg c]  }||k7  r| j                  |   nd‘Œ c}«      S c c}w )Nr~   rj   )rV   ru   rŒ   Úreshaperz   rs   r‰   )rp   Úixr{   Úrecordr§   s        r0   Úmytakez_rand_split.<locals>.mytakeï   sd   € Ü—‘œrŸw™w q¨"°4Ô8Ó9ˆØ�~‰~Ü(-¨a¯f©f«ö7Ø#$ð ./°$ªY˜qŸw™w qšz¸AÑ=ò 7ó 8ð 	8ùò 7s   ÁA2r   c              3   óB   •K  — | ]  }|j                   ‰   ‰k(  –— Œ y ­wrl   rˆ   )ro   rp   r{   Ún_obss     €€r0   rq   z_rand_split.<locals>.<genexpr>õ   s   øè ø€ Ò6¨!ˆq�w‰w�t‰} Õ%Ñ6ùs   ƒz#data must be aligned on sample axisç      ð?r~   )rV   Ú
issubdtyperD   Úintegerr¢   Úfloat64ÚarrayÚrandomÚRandomStater‰   rx   rz   r£   ÚrandintÚrandÚappend)rt   rŠ   r{   Ú	split_perÚseedÚarrÚseeded_randr¯   r§   Úsplit_ixÚprev_wÚqrp   r±   s     `          @r0   Ú_rand_splitrÃ   æ   si  ù€ ð #)ö*Øô )+¯©°c·i±iÄÇÁÔ(Lˆc�j‰jœŸ™Ô$Øñð *€Fð *ô �h‰h�w¤b§j¡jÔ1€GÜ—)‘)×'Ñ'¨Ó-€Kò8ð
 �1‰I�O‰O˜DÑ!€EÜÔ6¨vÔ6Ô6ð 1Ø0ó1Ð6ä”3�y“> EÑ)Ó*ò 8ˆØ×&Ñ& u¨q¡yÓ1ˆØ˜Ñ"ˆØ×ÑÓˆØ ™Jˆ�ÑÜ—)‘)˜G b¨1¡f°Ñ%6Ó7ˆà06ö8Ø+,ô —)‘)˜A™v a¨¸Ô=Ø!%ö'ð 8ˆñ 8ð8ð �7ˆ?Ðùò/*ùò*8s   ‡AE/Ä?(E4çñhãˆµøä>©Úatolc                 ó   — | S rl   rg   ©Úxs    r0   ú<lambda>rÊ     s   €  € r2   c                 ó  —  || «      } ||«      }	 t        j                  ||k7  «      j                  «       r
 |||«       y y # t        $ r  |||«       Y y t        t
        f$ r% t        ||«      D ]  \  }}t        |||¬«       Œ Y y w xY w)N)Úcompare_assert)rV   r¶   rŽ   ÚAttributeErrorÚ	TypeErrorry   r‘   Ú_rough_check)	rp   ÚbrÌ   ÚkeyÚwÚcheck_aÚcheck_bÚa_iÚb_is	            r0   rÏ   rÏ     s“   € á�!‹f€GÙ�!‹f€GðBÜ�8‰8�G˜wÑ&Ó'×+Ñ+Ô-Ù˜7 GÕ,ð .øäò )Ù�w Ö(Ü”zÐ"ò BÜ˜G WÓ-ò 	B‰HˆC�Ü˜˜c°.ÖAò	BðBús   ’/A ÁB
Á0B
Â	B
é   c                 ó   — | S rl   rg   rÈ   s    r0   rÊ   rÊ     s   € À1€ r2   rÒ   r²   c                 ón   ‡ ‡‡‡‡‡‡‡‡‡	‡
‡‡‡‡‡‡— t        ‰ «      ˆˆˆˆ	ˆ ˆˆˆˆˆˆˆˆˆˆ
ˆˆfd„«       }|S )zŒruns fn on its arguments 2 or 3 ways, checks that the results are the same,
       then returns the same thing it would have returned beforec                  óÂ  •—  ‰| i |¤Ž}| d ‰ }| ‰d  }|j                  ‰%d «      }|j                  d‰«      }t        |||dd¬«      }|d d |d   |d   }}}‰$r0|D �cg c]%  }t        j                  |j	                  «       «      ‘Œ' }}	 t        |«      |z   } ‰r||‰%<   t        | ‰| i |¤Ž‰¬«       ‰r9|dz  |‰%<   t        | ‰| i |¤Ž‰¬«       |dz  |‰%<   	 t        | ‰| i |¤Ž‰¬«       ‰�rÍt        |||‰"‰ ¬	«      \  }
}||d |j                   d
||j                  d  t        |
«      |z   }||‰%<   t        | ‰|i |¤Ž‰¬«       |
D ]J  }t        d «      g|j                  z  }t        |j                  d «      ||<   t        |«      }||   dz  ||<   ŒL t        |
«      |z   }t        | ‰|i |¤Ž‰¬«       |
D ]X  }t        d «      g|j                  z  }t        |j                  d «      ||<   t        |«      }||   t        j                  z  ||<   ŒZ |j                  dd «      dk(  r$‰r"t        |
«      |z   }t        | ‰|i |¤Ž‰¬«       ‰ri|
D �cg c]!  }t        j                  j                  |«      ‘Œ# }
}t        |
«      |z   }t        | ‰|i |¤Ž‰¬«       ‰rd |‰%<   t        | ‰|i |¤Ž‰¬«       ~
~~‰rh|D �cg c]  }t        j                   |||¬«      ‘Œ }}t        j                   ||«      dz  }t        |«      |z   }||‰%<   t        | ‰|i |¤Ž‰¬«       ~~~‰#rA‰"d
kD  r<t        |||‰"‰ ¬	«      }|\  }}t        |«      |z   }||‰%<   t        | ‰|i |¤Ž‰¬«       |S c c}w # t        $ r}	 t        |	«      |	||f«      |	‚d }	~	ww xY wc c}w c c}w # t"        $ r3}	‰!s&t%        j&                  ‰j(                  › d|	› �d¬«       Y d }	~	|S d }	~	ww xY w)Nr{   T)rŠ   r{   r—   rœ   éþÿÿÿr   )rÑ   g     @Y@gB`åÐ"Û¹?)r¼   r½   r   ée   Ú
nan_policyÚomitr~   ç       @z NotImplemented weights: é   )Ú
stacklevel)Úgetr    rV   rm   Úsqueezerw   rÏ   Ú	ExceptionÚtyperÃ   r–   Úslicers   Únanr�   r…   r»   ÚNotImplementedErrorÚwarningsÚwarnÚ__name__)&ÚargsÚkwargsÚresultrt   ÚrestrŠ   r{   rž   rp   ÚeÚ
dud_arraysÚdud_weightsÚdud_argsÚindexerÚ
dup_arraysÚdup_weightsÚdup_argsÚsplitÚsplit_arraysÚsplit_weightsÚ
split_argsÚ
const_testÚdefault_axisÚdud_testÚdup_testr^   rÑ   Úma_safeÚma_very_safeÚn_argsÚnan_safeÚ	ones_testr½   Úsilentr¼   Ú
split_testrã   Ú
weight_args&                        €€€€€€€€€€€€€€€€€r0   Úwrappedz _weight_checked.<locals>.wrapped  sb  ø€ á�TÐ$˜VÑ$ˆà�g�v�ˆØ�F�Gˆ}ˆØ—*‘*˜Z¨Ó.ˆØ�z‰z˜& ,Ó/ˆä˜V¨W¸4Ø+/¸TôCˆà % c r 
¨E°"©I°u¸R±y˜�ˆÙØ:@ÖA°Q”b—m‘m A§I¡I£KÕ0ÐAˆFÐAðJ	,ä˜“= 4Ñ'ˆDÙØ%,��zÑ"Ü˜V¡R¨Ð%8°Ñ%8¸cÕBÙØ%,¨u¡_��zÑ"Ü˜V¡R¨Ð%8°Ñ%8¸cÕBØ%,¨u¡_��zÑ"ð?Ü  ©¨TÐ)<°VÑ)<À#ÕFò
 ä*5°f¸gÀtØ@IÐPTô+VÑ'�
˜Kà-4�˜M˜WŸ\™\Ð*Ø-.�˜GŸL™L˜MÐ*Ü  Ó,¨tÑ3�Ø%0��zÑ"Ü˜V¡R¨Ð%<°VÑ%<À#ÕFà#ò 2�AÜ$ T›{˜m¨a¯f©fÑ4�GÜ$)¨'¯,©,¸Ó$=�G˜D‘MÜ# G›n�GØ!" 7¡¨cÑ!1�A�g’Jð	2ô
 ! Ó,¨tÑ3�Ü˜V¡R¨Ð%<°VÑ%<À#ÕFà#ò 5�AÜ$ T›{˜m¨a¯f©fÑ4�GÜ$)¨'¯,©,¸Ó$=�G˜D‘MÜ# G›n�GØ!" 7¡¬b¯f©fÑ!4�A�g’Jð	5ð
 —:‘:˜l¨DÓ1°VÒ;ÁÜ$ ZÓ0°4Ñ7�HÜ  ©¨XÐ)@¸Ñ)@ÀcÕJáØCMÖ!N¸a¤"§%¡%×"6Ñ"6°qÕ"9Ð!N�JÐ!NÜ$ ZÓ0°4Ñ7�HÜ  ©¨XÐ)@¸Ñ)@ÀcÕJÙ#Ø-1˜˜zÑ*Ü$ V©R°Ð-D¸VÑ-DÈ#ÕNØ ¨+ñ ØBHÖI¸QœbŸi™i¨¨1°4Ö8ÐI�
ÐIÜ Ÿi™i¨°Ó9¸CÑ?�Ü  Ó,¨tÑ3�Ø%0��zÑ"Ü˜V¡R¨Ð%<°VÑ%<À#ÕFØ˜j¨+ñ ˜i¨!šmÜ# F¨G°TØ.7¸dôD�à.3Ñ+�˜mÜ" <Ó0°4Ñ7�
Ø%2��zÑ"Ü˜V¡R¨Ð%>°vÑ%>ÀCÕHð ˆùò[ Bøô !ò ?Ø!œ$˜q›' 1 f¨gÐ"6Ó7¸QÐ>ûð?üò@ "Oùò Jøô #ò 	,ñ Ü—‘ §¡ Ð-FÀqÀcÐJØ)*õ,ûàˆûð	,ús^   Á*M-Â
AN" ÃM2 Ã.E(N" É&NÉ<AN" ËNË#BN" Í2	NÍ;NÎNÎN" Î"	OÎ+(OÏO)r   )r^   r  rý   rÑ   r  rã   r  r  rü   rÿ   r  rþ   r   r  r  r¼   r½   rÌ   r  s   `````````````````  r0   Ú_weight_checkedr	    s3   ÿÿø€ ô ˆ2ƒY÷Y÷ Yó Yó ðYðt €Nr2   rj   )rý   rã   )rý   rã   rü   )rý   rã   r  )rý   rã   rü   r  )rþ   )rü   c                   ó(  — e Zd Zd„ Zd„ Zd„ Zd„ Zej                  j                  ddddd	d
dde
j                  g«      d„ «       Zd„ Zd„ Zd„ Zdd„Zd„ Zd„ Zej                  j'                   ej*                  «       dk(  d¬«      d„ «       Zd„ Zd„ Zy)Ú	TestCdistc                 óZ  — g d¢| _         t        j                  t        j                  t        j                  t        j
                  gt        j                  t        j                  t        j
                  gt        j                  t        j
                  gt        j
                  gdœ| _        y ©N)rK   rL   rM   rJ   rI   )ÚboolÚuintr£   r[   ©Úrnd_eo_namesrV   r]   r\   r[   rµ   Úvalid_upcasts©Úselfs    r0   Úsetup_methodzTestCdist.setup_method”  óc   € ò1ˆÔô (*§x¡x´·±¼"¿*¹*ÄbÇjÁjÐ&QÜ')§w¡w´·
±
¼B¿J¹JÐ&GÜ&(§j¡j´"·*±*Ð%=Ü*,¯*©*¨ñ7ˆÕr2   c                 ó€  — g d¢g d¢g d¢g}g d¢g d¢g d¢g}dt        j                  d«      d	œ}dgd
z  }t        j                  t        «      5  t        ||fd|i|¤Ž d d d «       t        j                  t        «      5  t        ||fdt        |«      i|¤Ž d d d «       t        j                  t        «      5  t        ||fdd|z   i|¤Ž d d d «       t        j                  t        «      5  t        ||g|¢­d|iŽ d d d «       t        j                  t        «      5  t        ||g|¢­dt        |«      iŽ d d d «       t        j                  t        «      5  t        ||g|¢­dd|z   iŽ 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   ŒpxY w# 1 sw Y   y xY w)N©r²   rß   ç      @©ç333333ó?çffffff@ç333333@©çš™™™™™@r  çš™™™™™@©g      @ç      @g       @©g      @ç333333@gÍÌÌÌÌÌ @©g      @r$  r   ç…ëQ¸	@rà   ©ÚN0tV4l1D_p4raMrÒ   éÈ   r1   Útest_)rV   ÚarangeÚpytestÚraisesrÎ   r   Úeval)r  r1   ÚX1ÚX2rí   rì   s         r0   Útest_cdist_extra_argszTestCdist.test_cdist_extra_args�  sŽ  € ò šOª_Ð=ˆÚšOª_Ð=ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	3Ü�"�bÑ2 Ð2¨6Ò2÷	3ä�]‰]œ9Ó%ñ 	9Ü�"�bÑ8¤ f£Ð8°Ò8÷	9ä�]‰]œ9Ó%ñ 	=Ü�"�bÑ< ¨6Ñ!1Ð<°VÒ<÷	=ä�]‰]œ9Ó%ñ 	0Ü�"�bÐ/¨$Ò/ Ò/÷	0ä�]‰]œ9Ó%ñ 	6Ü�"�bÐ5°Ò5¤ f£Ò5÷	6ä�]‰]œ9Ó%ñ 	:Ü�"�bÐ9°DÒ9 ¨6Ñ!1Ò9÷	:ð 	:÷	3ñ 	3ú÷	9ð 	9ú÷	=ð 	=ú÷	0ð 	0ú÷	6ð 	6ú÷	:ð 	:úsH   ÁE7Á?FÂ9FÃ-FÄF(ÅF4Å7FÆFÆFÆF%Æ(F1Æ4F=c           	      ó€  — dd„}g d¢g d¢g d¢g}g d¢g d¢g d	¢g}d
t        j                  d«      dœ}d
gdz  }t        j                  t        «      5  t        |||«       d d d «       t        j                  t        «      5  t        |||g|¢­Ž  d d d «       t        j                  t        «      5  t        |||fi |¤Ž d d d «       t        j                  t        «      5  t        |||dd¬«       d d d «       t        j                  t        «      5  t        |||ddd¬«       d d d «       t        j                  t        «      5  t        |||ddd¬«       d d d «       t        j                  t        «      5  t        |||ddd«       d d d «       t        j                  t        «      5  t        |||dd«       d d d «       t        j                  t        «      5  t        |||d«       d d d «       t        j                  t        «      5  t        |||ddd¬«       d d d «       t        t        |||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   �ŒxxY w# 1 sw Y   �ŒRx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)Nrj   r×   c                 ó   — ||z   |z   S rl   rg   ©rÉ   ÚyÚargÚkwargÚkwarg2s        r0   Ú
_my_metricz:TestCdist.test_cdist_extra_args_custom.<locals>._my_metricµ  ó   € Ø˜‘; Ñ'Ð'r2   r  r  r  r!  r#  r%  r&  rà   r'  r)  r  çffffff
@©r7  r8  ©r7  çš™™™™™ñ?©r1   r6  r8  çš™™™™™@©rj   r×   )rV   r+  r,  r-  rÎ   r   r   )r  r9  r/  r0  rí   rì   s         r0   Útest_cdist_extra_args_customz&TestCdist.test_cdist_extra_args_custom²  sO  € ó	(ò šOª_Ð=ˆÚšOª_Ð=ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	&Ü�"�b˜*Ô%÷	&ä�]‰]œ9Ó%ñ 	-Ü�"�b˜*Ð, tÓ,÷	-ä�]‰]œ9Ó%ñ 	0Ü�"�b˜*Ñ/¨Ò/÷	0ä�]‰]œ9Ó%ñ 	=Ü�"�b˜*¨C¸Õ<÷	=ä�]‰]œ9Ó%ñ 	7Ü�"�b˜* a¨°#Õ6÷	7ä�]‰]œ9Ó%ñ 	7Ü�"�b˜* a¨°#Õ6÷	7ä�]‰]œ9Ó%ñ 	5Ü�"�b˜* c¨3°Ô4÷	5ä�]‰]œ9Ó%ñ 	0Ü�"�b˜* c¨3Ô/÷	0ä�]‰]œ9Ó%ñ 	+Ü�"�b˜* cÔ*÷	+ä�]‰]œ9Ó%ñ 	BÜ�"�b˜* c°¸SÕA÷	Bô 	œ˜b "¨ZØ"%¨cô3Ø47õ	9÷-	&ñ 	&ú÷	-ñ 	-ú÷	0ñ 	0ú÷	=ñ 	=ú÷	7ñ 	7ú÷	7ñ 	7ú÷	5ñ 	5ú÷	0ð 	0ú÷	+ð 	+ú÷	Bð 	Búsx   ÁIÂIÂ1IÃ!I(ÄI5ÅJÅ9JÆ+JÇJ(ÈJ4ÉIÉIÉI%É(I2É5I?ÊJÊJÊJ%Ê(J1Ê4J=c                 óŒ   — d}t         d   }t         d   }t        ||d«      }t        ||d«      }t        |||t        dkD  ¬«       y )NçVçž¯Ò<úcdist-X1úcdist-X2r   Útest_euclideanr×   ©Úrtolr   ©rX   Úwcdist_no_constr   r   )r  Úepsr/  r0  ÚY1ÚY2s         r0   Ú#test_cdist_euclidean_random_unicodez-TestCdist.test_cdist_euclidean_random_unicodeÖ  sH   € ØˆÜ�
‰^ˆÜ�
‰^ˆÜ˜R  [Ó1ˆÜ˜R Ð%5Ó6ˆÜ˜˜B S´'¸A±+Ö>r2   Úpçš™™™™™¹?ç      Ð?r²   ç®Gáz®ó?rß   gffffff@gffffff@c                 ó–   — d}t         d   }t         d   }t        ||d|¬«      }t        ||d|¬«      }t        ||d|t        dkD  ¬	«       y )
Nç‚vIhÂ%<=rE  rF  r!   ©rP  Útest_minkowskir   r×   )rÆ   rI  r   rJ  )r  rP  rL  r/  r0  rM  rN  s          r0   Útest_cdist_minkowski_randomz%TestCdist.test_cdist_minkowski_randomÞ  sP   € ð ˆÜ�
‰^ˆÜ�
‰^ˆÜ˜R  [°AÔ6ˆÜ˜R Ð%5¸Ô;ˆÜ˜˜B Q¨S¼'ÀA¹+ÖFr2   c                 óâ   — d}t         d   }t         d   }t        ||d«      }d„ }dt        j                  | ||«      z  | ||«      z  j                  «      z
  }t        |||t        dkD  ¬«       y )	Nç›+¡†›„=rE  rF  r   c                 ód   — t         j                  j                  | d¬«      j                  dd«      S )Nrj   r~   r   )rV   Úlinalgr   r¬   )ÚXs    r0   Únormsz1TestCdist.test_cdist_cosine_random.<locals>.normsï  s&   € Ü—9‘9—>‘> !¨!�>Ó,×4Ñ4°R¸Ó;Ð;r2   rj   r×   rH  )rX   ÚwcdistrV   ÚdotÚTr   r   )r  rL  r/  r0  rM  r^  rN  s          r0   Útest_cdist_cosine_randomz"TestCdist.test_cdist_cosine_randomè  sk   € ØˆÜ�
‰^ˆÜ�
‰^ˆÜ�B˜˜HÓ%ˆò	<ð ”—‘˜™e B›i™¨2±°b³	©>×*<Ñ*<Ó=Ñ=ˆä˜˜B S´'¸A±+Ö>r2   c                 ó„  — t        j                  dgdgg«      }t        j                  dgdgg«      }t        ||d¬«      }t        |dt        j                  d«      gt        j                  d«      t        j                  d«      gg«       t        j                  d	d	gd
d	gg«      }t        j                  d	dgdd	gd	dgg«      }t        ||d¬«      }t        j                  d«      }t        ||||gdd|z  dgg«       t        j                  t        «      5  t        d	dggddggd¬«       d d d «       y # 1 sw Y   y xY w)Nr×   rà   é   r    ©r1   ç        ç      @ç      à?r   r   rj   rÛ   )rV   r¶   r   r   Úsqrtr,  r-  ry   )r  Úx1Úx2ÚdistÚrt2s        r0   Útest_cdist_mahalanobisz TestCdist.test_cdist_mahalanobisö  s   € ä�X‰X˜�s˜Q˜C�jÓ!ˆÜ�X‰X˜�s˜Q˜C�jÓ!ˆÜ�R˜ MÔ2ˆÜ˜ ¤R§W¡W¨S£\Ð2´R·W±W¸S³\Ä2Ç7Á7È1Ã:Ð4NÐOÔPô �X‰X˜˜1�v  A˜wÐ'Ó(ˆÜ�X‰X˜˜1�v  1˜v¨¨2 wÐ/Ó0ˆÜ�R˜ MÔ2ˆÜ�g‰g�a‹jˆÜ˜  S¨#˜°°A¸±G¸Q°Ð@ÔAô �]‰]œ:Ó&ñ 	<Ü�A�q�6�(˜a ˜V˜H¨]Õ;÷	<÷ 	<ñ 	<ús   ÄD6Ä6D?c                 ó²   ‡—  G d„ d«      Šˆfd„}t        j                   ‰«       ggt        ¬«      }t        |||¬«      }d}t	        ||t
        dkD  ¬«       y )	Nc                   ó   — e Zd Zy)ú6TestCdist.test_cdist_custom_notdouble.<locals>.myclassN©rë   Ú
__module__Ú__qualname__rg   r2   r0   Úmyclassrq  	  ó   „ Ør2   ru  c                 óX   •— t        | d   ‰«      rt        |d   ‰«      st        d«      ‚y©Nr   zType has been changedç+‡ÙÎ÷ñ?©Ú
isinstancery   ©rÉ   r5  ru  s     €r0   r9  z9TestCdist.test_cdist_custom_notdouble.<locals>._my_metric  ó-   ø€ Ü˜a ™d GÔ,´J¸qÀ¹tÀWÔ4MÜ Ð!8Ó9Ð9Ør2   rC   re  ry  r×   ©r   )rV   r¶   Úobjectr   r	   r   )r  r9  rG   Úcdist_yÚright_yru  s        @r0   Útest_cdist_custom_notdoublez%TestCdist.test_cdist_custom_notdouble  sM   ø€ ÷	ñ 	ô	ô �x‰x™'›)˜˜¬VÔ4ˆÜ˜˜d¨:Ô6ˆØˆÜ�W˜g¬w¸©{Ö;r2   c           	      óä  — 	 t        ||fd|i|¤Ž}t        ||fdt        |«      i|¤Ž}t        ||fdd|z   i|¤Ž}t        |||t        dkD  ¬«       t        |||t        dkD  ¬«       y # t        $ rþ}	|	j
                  }
t        dkD  r t        |
j                  «       t        |	«       t        j                  |
«      5  t        ||fd|i|¤Ž d d d «       n# 1 sw Y   nxY wt        j                  |
«      5  t        ||fdt        |«      i|¤Ž d d d «       n# 1 sw Y   nxY wt        j                  |
«      5  t        ||fdd|z   i|¤Ž d d d «       n# 1 sw Y   nxY wY d }	~	y Y d }	~	y d }	~	ww xY w©Nr1   r*  r×   rH  )
r   r.  r   r   rä   Ú	__class__Úprintrë   r,  r-  )r  r/  r0  r1   rL  rí   Úy1Úy2Úy3rð   Úe_clss              r0   Ú_check_calling_conventionsz$TestCdist._check_calling_conventions  sh  € ð	CÜ�r˜2Ñ7 fÐ7°Ñ7ˆBÜ�r˜2Ñ=¤d¨6£lÐ=°fÑ=ˆBÜ�r˜2ÑA g°Ñ&6ÐA¸&ÑAˆBô ˜B ¨´gÀ±kÕBÜ˜B ¨´gÀ±kÖBøô ò 
	AØ—K‘KˆEÜ˜Š{Ü�e—n‘nÔ%Ü�a”Ü—‘˜uÓ%ñ 7Ü�b˜"Ñ6 VÐ6¨vÒ6÷7÷ 7ñ 7úä—‘˜uÓ%ñ =Ü�b˜"Ñ<¤T¨&£\Ð<°VÒ<÷=÷ =ñ =úä—‘˜uÓ%ñ AÜ�b˜"Ñ@ W¨vÑ%5Ð@¸Ò@÷A÷ Añ Aú÷ Añ Aûð
	Aús`   ‚9A( Á(	E/Á1A
E*Â;CÃ	E*ÃC	ÃE*Ã5DÄ	E*ÄD 	ÄE*Ä8EÅ	E*ÅE	ÅE*Å*E/c                 ó(  — | j                   D �]‚  }t        |   d d d…d d d…f   }t        |   dd d…d d d…f   }t        dkD  rt        d|d|«       |dv rd|vrŒL| j	                  |||«       |d	k(  rbt        j                  ||g«      j                  t
        j                  «      }t        j                  |d
d¬«      }| j	                  ||||¬«       ŒÆ|dk(  sŒÌt        j                  ||g«      j                  t
        j                  «      }t        j                  t        j                  |j                  «      «      }t        j                  t
        j                  j                  |«      j                  «      }| j	                  ||||¬«       �Œ… y )Nrd  rÛ   rj   r×   ú	testing: ú with: >   r   r'   r#   r%   r"   r  r$   r   ©r{   r�   ©ÚVr    ©ÚVI)r  rX   r   r†  r‹  rV   Úvstackr¢   rµ   ÚvarÚ
atleast_2dÚcovra  r¶   r\  Úinv)r  r1   Úeo_namer/  r0  ÚX12r‘  r“  s           r0   Útest_cdist_calling_conventionsz(TestCdist.test_cdist_calling_conventions*  sa  € ð ×(Ñ(ó 	GˆGô �G‘™S˜q˜S¡$ B $˜YÑ'ˆBÜ�G‘˜Q˜T ˜T¡3 Q 3˜YÑ'ˆBÜ˜Š{Ü�k 6¨9°gÔ>Øð *ñ *à 'Ñ)àØ×+Ñ+¨B°°FÔ;ð ˜Ò%Ü—i‘i  R Ó)×0Ñ0´·±Ó<�Ü—F‘F˜3 Q¨QÔ/�Ø×/Ñ/°°B¸À!Ð/ÕDØ˜=Ó(Ü—i‘i  R Ó)×0Ñ0´·±Ó<�Ü—M‘M¤"§&¡&¨¯©£-Ó0�Ü—X‘XœbŸi™iŸm™m¨AÓ.×0Ñ0Ó1�Ø×/Ñ/°°B¸À2Ð/ÖFñ/	Gr2   c           	      óà  — d}t         d   | j                  d   ft         d   | j                  d   ft         d   | j                  d   ft         d   | j                  d	   fg}|D ]k  }|d
   d d d…d d d…f   }|d
   dd d…d d d…f   }	 t        |||¬«      }|d   D ]2  }t         ||«       ||«      |¬«      }	t        ||	|t        dkD  ¬«       Œ4 Œm y # t
        $ r’}
|
j                  }t        dkD  r t        |j                  «       t        |
«       |d   D ]J  } ||«      } ||«      }t        j                  |«      5  t        |||¬«       d d d «       Œ@# 1 sw Y   ŒIxY w Y d }
~
�Œd }
~
ww xY w)NçH¯¼šò×z>rI   r  rM   r  rL   r£   rK   r[   r   rd  rÛ   rj   r×   re  rH  )rX   r  r   r   r   rä   r…  r†  rë   r,  r-  )r  r1   rL  ÚtestsÚtestr/  r0  r‡  Únew_typerˆ  rð   rŠ  ÚX1newÚX2news                 r0   Útest_cdist_dtype_equivalencez&TestCdist.test_cdist_dtype_equivalenceG  s–  € àˆÜÐ'Ñ(¨$×*<Ñ*<¸VÑ*DÐEÜÐ'Ñ(¨$×*<Ñ*<¸VÑ*DÐEÜÐ&Ñ'¨×);Ñ);¸EÑ)BÐCÜÐ*Ñ+¨T×-?Ñ-?À	Ñ-JÐKðMˆð ò 	KˆDØ�a‘™˜1˜™d ˜d˜Ñ#ˆBØ�a‘˜˜˜A˜™s ˜s˜Ñ#ˆBðKÜ˜2˜r¨&Ô1�ð !% Q¡ò K�HÜ™x¨›|©X°b«\À&ÔI�BÜ# B¨°¼gÈ¹kÖJñKñ!	Køô
 ò 	;ØŸ™�Ü˜Q’;Ü˜%Ÿ.™.Ô)Ü˜!”HØ $ Q¡ò ;�HÙ$ R›L�EÙ$ R›L�EÜŸ™ uÓ-ñ ;Ü˜e U°6Õ:÷;÷ ;ñ ;úö;ûð	;ús1   ÂCÃ	E-ÃA"E(Ä=E	Å	E(ÅEÅE(Å(E-z	win-arm64znumpy#29442)Úreasonc                 óº  — d}t         d   }t         d   }|j                  d   |j                  d   }}t        «       }|dk(  rd|d<   t        j                  ||ft        j
                  ¬«      }t        |||fi |¤Ž}	t        |||fd	|i|¤Ž}
t        |	|
|t        d
kD  ¬«       t        |
|u «       t        j                  |dz
  |dz   ft        j
                  ¬«      }t        j                  t        «      5  t        |||fd	|i|¤Ž d d d «       t        j                  d
|z  d
|z  ft        j
                  ¬«      d d d
…d d d
…f   }t        j                  ||ft        j
                  d¬«      }t        j                  t        «      5  t        |||fd	|i|¤Ž d d d «       t        j                  t        «      5  t        |||fd	|i|¤Ž d d d «       t        j                  ||ft        j                  ¬«      }t        j                  t        «      5  t        |||fd	|i|¤Ž 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   y xY w)NrD  rE  rF  r   r!   rS  rP  rC   Úoutr×   rH  rj   ÚF)rD   Úorder)rX   r‰   ÚdictrV   Úemptyrµ   r   r   r   r   r,  r-  ry   Úint64)r  r1   rL  r/  r0  Úout_rÚout_crí   Úout1rM  rN  Úout2Úout3Úout4Úout5s                  r0   Útest_cdist_outzTestCdist.test_cdist_outb  s$  € ð ˆÜ�
‰^ˆÜ�
‰^ˆØ—x‘x ‘{ B§H¡H¨Q¡Kˆuˆä“ˆØ�[Ò ØˆF�3‰KÜ�x‰x˜ ˜¬b¯j©jÔ9ˆÜ�2�r˜6Ñ, VÑ,ˆÜ�2�r˜6Ñ6 tÐ6¨vÑ6ˆô 	˜˜B S´'¸A±+Õ>ô 	��d�
Ôô �x‰x˜˜q™ %¨¡'Ð*´"·*±*Ô=ˆÜ�]‰]œ:Ó&ñ 	6Ü�"�b˜&Ñ5 dÐ5¨fÒ5÷	6ô �x‰xØ�‰Y˜˜E™	Ð"¬"¯*©*ô6Ù69¸°c¹3¸Q¸3°hñ@ˆä�x‰x˜ ˜¬b¯j©jÀÔDˆÜ�]‰]œ:Ó&ñ 	6Ü�"�b˜&Ñ5 dÐ5¨fÒ5÷	6ä�]‰]œ:Ó&ñ 	6Ü�"�b˜&Ñ5 dÐ5¨fÒ5÷	6ô �x‰x˜ ˜¬b¯h©hÔ7ˆÜ�]‰]œ:Ó&ñ 	6Ü�"�b˜&Ñ5 dÐ5¨fÒ5÷	6ð 	6÷	6ñ 	6ú÷	6ð 	6ú÷	6ð 	6ú÷
	6ð 	6ús0   Ã5H,ÆH9Æ9IÈIÈ,H6È9IÉIÉIc                 óP  — d}t         d   d d d…d d d…f   }t         d   d d d…d d d…f   }|j                  «       }|j                  «       }t        ||«       t        ||«       t        |j                  j
                   «       t        |j                  j
                   «       t        |j                  j
                  «       t        |j                  j
                  «       t        «       }|dk(  rd|d<   t        |||fi |¤Ž}t        |||fi |¤Ž}	t        ||	|t        dkD  ¬«       y )	NrD  rE  r×   rF  r!   rS  rP  rH  )
rX   Úcopyr	   r   ÚflagsÚc_contiguousr©  r   r   r   )
r  r1   rL  r/  r0  ÚX1_copyÚX2_copyrí   rM  rN  s
             r0   Útest_stridingzTestCdist.test_stridingŠ  s  € ð ˆÜ�
‰^™C˜a˜C¡ 1 ˜HÑ%ˆÜ�
‰^™C˜a˜C¡ 1 ˜HÑ%ˆØ—'‘'“)ˆØ—'‘'“)ˆô 	�R˜Ô!Ü�R˜Ô!ä�B—H‘H×)Ñ)Ð)Ô*Ü�B—H‘H×)Ñ)Ð)Ô*Ü�—‘×*Ñ*Ô+Ü�—‘×*Ñ*Ô+ä“ˆØ�[Ò ØˆF�3‰KÜ�2�r˜6Ñ, VÑ,ˆÜ�7˜G VÑ6¨vÑ6ˆä˜˜B S´'¸A±+Ö>r2   c                 óL  — t         j                  j                  dd«      }t         j                  j                  dd«      }t        «       }|dk(  rd|d<   t	        ||fd|i|¤Ž}|||fD �cg c]  }t        j                  |«      ‘Œ }}~~~t        d„ |D «       «      sJ ‚y c c}w )Né
   r!   rS  rP  r1   c              3   ó.   K  — | ]  } |«       d u –— Œ y ­wrl   rg   )ro   Úweak_refs     r0   rq   z0TestCdist.test_cdist_refcount.<locals>.<genexpr>³  s   è ø€ Ò@¨(‘8“: Ô%Ñ@ùs   ‚)rV   r·   rº   r©  r   ÚweakrefÚrefrx   )r  r1   rj  rk  rí   r¦  ÚvÚ	weak_refss           r0   Útest_cdist_refcountzTestCdist.test_cdist_refcount¤  s›   € Ü�Y‰Y�^‰^˜B Ó#ˆÜ�Y‰Y�^‰^˜B Ó#ˆä“ˆØ�[Ò ØˆF�3‰Kä�B˜Ñ4 6Ð4¨VÑ4ˆð /1°"°c¨]Ö;¨”W—[‘[ •^Ð;ˆ	Ð;Ø��CäÑ@°iÔ@Ô@Ð@Ñ@ùò <s   Á+B!N©r�  )rë   rs  rt  r  r1  rB  rO  r,  ÚmarkÚparametrizerV   ÚinfrX  rb  rn  r‚  r‹  r›  r£  ÚskipifÚ	sysconfigÚget_platformr³  rº  rÃ  rg   r2   r0   r  r  ’  s¿   „ ò7ò:ò*"9òH?ð ‡[�[×Ñ˜S 3¨¨c°4Ø#&¨¨S°"·&±&ð#:ó ;ñGó;ðGò?ò<ò$<óCò*Gò:Kð6 ‡[�[×ÑÐ.˜	×.Ñ.Ó0°KÑ?ÈÐÓVñ%6ó Wð%6òN?ó4Ar2   r  c            	       ó   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	e
j                  j                  d„ «       Ze
j                  j                  d	„ «       Ze
j                  j                  d
„ «       Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Ze
j                  j                  d„ «       Ze
j                  j                  d„ «       Ze
j                  j                  d„ «       Zd„ Zd„ Zd„ Zd„ Ze
j                  j                  d„ «       Z e
j                  j                  d„ «       Z!e
j                  j                  d„ «       Z"d„ Z#d„ Z$d „ Z%e
j                  j                  d!„ «       Z&e
j                  j                  d"„ «       Z'e
j                  j                  d#„ «       Z(e
j                  jS                  d$d%d&d'd(d)e*jV                  g«      d*„ «       Z,d+„ Z-d,„ Z.d-„ Z/e
j                  j                  d.„ «       Z0e
j                  j                  d/„ «       Z1e
j                  j                  d0„ «       Z2e
j                  j                  d1„ «       Z3e
j                  j                  d2„ «       Z4e
j                  j                  d3„ «       Z5d4„ Z6d5„ Z7d6„ Z8d7„ Z9d8„ Z:d9„ Z;d:„ Z<d;„ Z=d<„ Z>d=„ Z?d>„ Z@d?„ ZAd@„ ZBdA„ ZCdB„ ZDdC„ ZEdD„ ZFdE„ ZGdF„ ZHdG„ ZIdH„ ZJdI„ ZKdJ„ ZLdK„ ZMdL„ ZNe
j                  j                  dM„ «       ZOdN„ ZPeQdO„ «       ZRdVdP„ZSdQ„ ZTdR„ ZUdS„ ZVdT„ ZWyU)WÚ	TestPdistc                 óZ  — g d¢| _         t        j                  t        j                  t        j                  t        j
                  gt        j                  t        j                  t        j
                  gt        j                  t        j
                  gt        j
                  gdœ| _        y r  r  r  s    r0   r  zTestPdist.setup_method¸  r  r2   c                 ó^  — ddgddgddgg}dt        j                  d«      dœ}dgd	z  }t        j                  t        «      5  t        |fd
|i|¤Ž d d d «       t        j                  t        «      5  t        |fd
t        |«      i|¤Ž d d d «       t        j                  t        «      5  t        |fd
d|z   i|¤Ž d d d «       t        j                  t        «      5  t        |g|¢­d
|iŽ d d d «       t        j                  t        «      5  t        |g|¢­d
t        |«      iŽ d d d «       t        j                  t        «      5  t        |g|¢­d
d|z   iŽ 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   ŒoxY w# 1 sw Y   y xY w)Nr²   rß   r  r  r  r&  r×   r'  r)  r1   r*  )rV   r+  r,  r-  rÎ   r   r.  )r  r1   r/  rí   rì   s        r0   Útest_pdist_extra_argszTestPdist.test_pdist_extra_argsÁ  s€  € à�2ˆh˜˜c˜
 S¨# JÐ/ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	/Ü�"Ñ.˜VÐ. vÒ.÷	/ä�]‰]œ9Ó%ñ 	5Ü�"Ñ4œT &›\Ð4¨VÒ4÷	5ä�]‰]œ9Ó%ñ 	9Ü�"Ñ8˜W vÑ-Ð8°Ò8÷	9ä�]‰]œ9Ó%ñ 	,Ü�"Ð+ dÒ+˜VÒ+÷	,ä�]‰]œ9Ó%ñ 	2Ü�"Ð1¨DÒ1œT &›\Ò1÷	2ä�]‰]œ9Ó%ñ 	6Ü�"Ð5°Ò5˜W vÑ-Ò5÷	6ð 	6÷	/ñ 	/ú÷	5ð 	5ú÷	9ð 	9ú÷	,ð 	,ú÷	2ð 	2ú÷	6ð 	6úsH   ÁE&Á3E3Â,E?ÃFÄFÅ
F#Å&E0Å3E<Å?FÆFÆF Æ#F,c                 óT  — dd„}ddgddgddgg}d	t        j                  d«      d
œ}d	gdz  }t        j                  t        «      5  t        ||«       d d d «       t        j                  t        «      5  t        ||g|¢­Ž  d d d «       t        j                  t        «      5  t        ||fi |¤Ž d d d «       t        j                  t        «      5  t        ||dd¬«       d d d «       t        j                  t        «      5  t        ||ddd¬«       d d d «       t        j                  t        «      5  t        ||ddd¬«       d d d «       t        j                  t        «      5  t        ||ddd«       d d d «       t        j                  t        «      5  t        ||dd«       d d d «       t        j                  t        «      5  t        ||d«       d d d «       t        j                  t        «      5  t        ||ddd¬«       d d d «       t        t        ||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   �ŒqxY w# 1 sw Y   �ŒLx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)Nrj   r×   c                 ó   — ||z   |z   S rl   rg   r4  s        r0   r9  z:TestPdist.test_pdist_extra_args_custom.<locals>._my_metric×  r:  r2   r²   rß   r  r  r  r&  r'  r)  r;  r<  r=  r>  r?  r@  rA  )rV   r+  r,  r-  rÎ   r   r   )r  r9  r/  rí   rì   s        r0   Útest_pdist_extra_args_customz&TestPdist.test_pdist_extra_args_customÔ  s5  € ó	(ð �2ˆh˜˜c˜
 S¨# JÐ/ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	"Ü�"�jÔ!÷	"ä�]‰]œ9Ó%ñ 	)Ü�"�jÐ( 4Ó(÷	)ä�]‰]œ9Ó%ñ 	,Ü�"�jÑ+ FÒ+÷	,ä�]‰]œ9Ó%ñ 	9Ü�"�j¨°CÕ8÷	9ä�]‰]œ9Ó%ñ 	3Ü�"�j ! Q¨cÕ2÷	3ä�]‰]œ9Ó%ñ 	3Ü�"�j ! Q¨cÕ2÷	3ä�]‰]œ9Ó%ñ 	1Ü�"�j # s¨CÔ0÷	1ä�]‰]œ9Ó%ñ 	,Ü�"�j # sÔ+÷	,ä�]‰]œ9Ó%ñ 	'Ü�"�j #Ô&÷	'ä�]‰]œ9Ó%ñ 	>Ü�"�j #¨S¸Õ=÷	>ô 	œ˜b¨Ø"%¨cô3Ø47õ	9÷-	"ñ 	"ú÷	)ñ 	)ú÷	,ñ 	,ú÷	9ñ 	9ú÷	3ñ 	3ú÷	3ñ 	3ú÷	1ñ 	1ú÷	,ð 	,ú÷	'ð 	'ú÷	>ð 	>úsx   ÁH+Á5H8Â$IÃIÄIÄ6I,Å(I9ÆJÇ	JÇ8JÈ+H5È8IÉIÉIÉI)É,I6É9JÊJÊJÊJ'c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr�  úpdist-double-inpúpdist-euclideanr   ©rI  ©rX   Úwpdist_no_constr   ©r  rL  r]  ÚY_rightÚY_test1s        r0   Útest_pdist_euclidean_randomz%TestPdist.test_pdist_euclidean_random÷  ó5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y rÔ  rØ  rÚ  s        r0   Útest_pdist_euclidean_random_uz'TestPdist.test_pdist_euclidean_random_uþ  rÞ  r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y rÔ  ©rV   r[   rX   rÙ  r   rÚ  s        r0   Ú#test_pdist_euclidean_random_float32z-TestPdist.test_pdist_euclidean_random_float32  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  rÖ  rG  r×  rØ  ©r  rL  r]  rÛ  ÚY_test2s        r0   Ú test_pdist_euclidean_random_nonCz*TestPdist.test_pdist_euclidean_random_nonC  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  Úirisúpdist-euclidean-irisr   r×  rØ  rÚ  s        r0   Ú test_pdist_euclidean_iris_doublez*TestPdist.test_pdist_euclidean_iris_double  s3   € àˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÄ   ré  rê  r   r×   rH  ©rV   r[   rX   rÙ  r   r   rÚ  s        r0   Ú!test_pdist_euclidean_iris_float32z+TestPdist.test_pdist_euclidean_iris_float32  óB   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  ré  rê  rG  r×  rØ  rå  s        r0   Útest_pdist_euclidean_iris_nonCz(TestPdist.test_pdist_euclidean_iris_nonC#  s6   € ð ˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  úpdist-seuclideanr$   r×  ©rX   r   r   rÚ  s        r0   Útest_pdist_seuclidean_randomz&TestPdist.test_pdist_seuclidean_random-  s5   € ØˆÜÐ!Ñ"ˆÜÐ'Ñ(ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r2   c                 óî   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       t        j
                  |dd¬«      }t        |d|¬	«      }t	        |||¬«       y )
Nr�  rÕ  ró  r$   r×  r   rj   r�  r�  )rV   r[   rX   r   r   r•  )r  rL  r]  rÛ  rÜ  r‘  ræ  s          r0   Ú$test_pdist_seuclidean_random_float32z.TestPdist.test_pdist_seuclidean_random_float324  sl   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ'Ñ(ˆÜ˜˜<Ó(ˆÜ˜ ¨sÕ3ô �F‰F�1˜1 1Ô%ˆÜ˜˜<¨1Ô-ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  ró  Útest_seuclideanr×  rô  rå  s        r0   Ú!test_pdist_seuclidean_random_nonCz+TestPdist.test_pdist_seuclidean_random_nonC@  s6   € àˆÜÐ!Ñ"ˆÜÐ'Ñ(ˆÜ˜Ð,Ó-ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  ré  úpdist-seuclidean-irisr$   r×  rô  rÚ  s        r0   Útest_pdist_seuclidean_irisz$TestPdist.test_pdist_seuclidean_irisH  s3   € ØˆÜˆv‰JˆÜÐ,Ñ-ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y )NrÄ   ré  rü  r$   r×  )rV   r[   rX   r   r   rÚ  s        r0   Ú"test_pdist_seuclidean_iris_float32z,TestPdist.test_pdist_seuclidean_iris_float32O  s<   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ,Ñ-ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  ré  rü  rù  r×  rô  rå  s        r0   Útest_pdist_seuclidean_iris_nonCz)TestPdist.test_pdist_seuclidean_iris_nonCW  s6   € ð ˆÜˆv‰JˆÜÐ,Ñ-ˆÜ˜Ð,Ó-ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr�  rÕ  úpdist-cosiner   r×  ©rX   Úwpdistr   rÚ  s        r0   Útest_pdist_cosine_randomz"TestPdist.test_pdist_cosine_random`  s4   € ØˆÜÐ!Ñ"ˆÜ�^Ñ$ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  ©rV   r[   rX   r  r   rÚ  s        r0   Ú test_pdist_cosine_random_float32z*TestPdist.test_pdist_cosine_random_float32g  s=   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜ�^Ñ$ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  r  Útest_cosiner×  r  rå  s        r0   Útest_pdist_cosine_random_nonCz'TestPdist.test_pdist_cosine_random_nonCn  s4   € àˆÜÐ!Ñ"ˆÜ�^Ñ$ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrÄ   ré  úpdist-cosine-irisr   rÅ   r  rÚ  s        r0   Útest_pdist_cosine_irisz TestPdist.test_pdist_cosine_irisv  s3   € àˆÜˆv‰JˆÜÐ(Ñ)ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÄ   ré  r  r   r×   ©rÆ   r   )rV   r[   rX   r  r   r   rÚ  s        r0   Útest_pdist_cosine_iris_float32z(TestPdist.test_pdist_cosine_iris_float32~  sB   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ(Ñ)ˆÜ˜˜HÓ%ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrÄ   ré  r  r  rÅ   r  rå  s        r0   Útest_pdist_cosine_iris_nonCz%TestPdist.test_pdist_cosine_iris_nonC†  s3   € àˆÜˆv‰JˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r2   c                 óî   — t        j                  t         j                  j                  d«      j	                  d«      «      }t        j
                  ||g«      }t        t        |d«      d   dk\  d¬«       y )Ni9  é[   r   r   z&cosine distance should be non-negative)Úmsg)rV   Úabsr·   r¸   rº   r”  r   r  )r  rÉ   r]  s      r0   Útest_pdist_cosine_boundsz"TestPdist.test_pdist_cosine_boundsŽ  s\   € ô �F‰F”2—9‘9×(Ñ(¨Ó.×3Ñ3°BÓ7Ó8ˆÜ�I‰I�q˜!�fÓˆÜ”�q˜(Ó# AÑ&¨!Ñ+Ø<ö	>r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr�  rÕ  úpdist-cityblockr   r×  rØ  rÚ  s        r0   Útest_pdist_cityblock_randomz%TestPdist.test_pdist_cityblock_random—  s5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  râ  rÚ  s        r0   Ú#test_pdist_cityblock_random_float32z-TestPdist.test_pdist_cityblock_random_float32ž  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  r  Útest_cityblockr×  rØ  rå  s        r0   Ú test_pdist_cityblock_random_nonCz*TestPdist.test_pdist_cityblock_random_nonC¥  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrZ  ré  úpdist-cityblock-irisr   r×  rØ  rÚ  s        r0   Útest_pdist_cityblock_irisz#TestPdist.test_pdist_cityblock_iris¬  s3   € àˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÄ   ré  r%  r   r×   rH  rí  rÚ  s        r0   Ú!test_pdist_cityblock_iris_float32z+TestPdist.test_pdist_cityblock_iris_float32´  rï  r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrZ  ré  r%  r"  r×  rØ  rå  s        r0   Útest_pdist_cityblock_iris_nonCz(TestPdist.test_pdist_cityblock_iris_nonC¼  s6   € ð ˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr�  rÕ  úpdist-correlationr   r×  r  rÚ  s        r0   Útest_pdist_correlation_randomz'TestPdist.test_pdist_correlation_randomÆ  s5   € ØˆÜÐ!Ñ"ˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r,  r	  rÚ  s        r0   Ú%test_pdist_correlation_random_float32z/TestPdist.test_pdist_correlation_random_float32Í  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  rÕ  r-  Útest_correlationr×  r  rå  s        r0   Ú"test_pdist_correlation_random_nonCz,TestPdist.test_pdist_correlation_random_nonCÔ  s6   € ØˆÜÐ!Ñ"ˆÜÐ(Ñ)ˆÜ˜Ð.Ó/ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr�  ré  úpdist-correlation-irisr   r×  r  rÚ  s        r0   Útest_pdist_correlation_irisz%TestPdist.test_pdist_correlation_irisÛ  s3   € àˆÜˆv‰JˆÜÐ-Ñ.ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t         d   }t        j                  t         d   «      }t        |d«      }t	        |||t
        dkD  ¬«       y )Nr�  ré  r5  r   r×   rH  )rX   rV   r[   r  r   r   rÚ  s        r0   Ú#test_pdist_correlation_iris_float32z-TestPdist.test_pdist_correlation_iris_float32ã  sB   € àˆÜˆv‰JˆÜ—*‘*œRÐ 8Ñ9Ó:ˆÜ˜˜MÓ*ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó²   — t         j                  dkD  rd}nt        j                  d«       t        d   }t        d   }t        |d«      }t        ||¬«       y )Nl        r�  zsee gh-16456ré  r5  r2  r×  )ÚsysÚmaxsizer,  ÚskiprX   r  r   rå  s        r0   Ú test_pdist_correlation_iris_nonCz*TestPdist.test_pdist_correlation_iris_nonCë  sL   € ä�;‰;˜ÒØ‰Cä�K‰K˜Ô'Üˆv‰JˆÜÐ-Ñ.ˆÜ˜Ð.Ó/ˆÜ˜ ¨sÖ3r2   rP  rQ  rR  r²   rß   çš™™™™™	@c                 óp   — d}t         d   }t        |d|¬«      }t        |d|¬«      }t        ||d|¬«       y )NrU  rÕ  r!   rV  rW  r   )rÆ   rI  rØ  )r  rP  rL  r]  rM  rN  s         r0   Útest_pdist_minkowski_random_pz'TestPdist.test_pdist_minkowski_random_pö  s=   € àˆÜÐ!Ñ"ˆÜ˜Q ¨qÔ1ˆÜ˜QÐ 0°AÔ6ˆÜ˜˜B Q¨SÖ1r2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y ©Nr�  rÕ  úpdist-minkowski-3.2r!   r>  rV  r×  rØ  rÚ  s        r0   Útest_pdist_minkowski_randomz%TestPdist.test_pdist_minkowski_randomþ  s7   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r2   c                 óŠ   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||¬«       y rB  râ  rÚ  s        r0   Ú#test_pdist_minkowski_random_float32z-TestPdist.test_pdist_minkowski_random_float32  s@   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ*Ñ+ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr�  rÕ  rC  rW  r>  rV  r×  rØ  rå  s        r0   Ú test_pdist_minkowski_random_nonCz*TestPdist.test_pdist_minkowski_random_nonC  s8   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ! !Ð%5¸Ô=ˆÜ˜ ¨sÖ3r2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr�  ré  úpdist-minkowski-3.2-irisr!   r>  rV  r×  rØ  rÚ  s        r0   Útest_pdist_minkowski_3_2_irisz'TestPdist.test_pdist_minkowski_3_2_iris  ó5   € àˆÜˆv‰JˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r2   c                 óŠ   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||¬«       y )NrÄ   ré  rJ  r!   r>  rV  r×  râ  rÚ  s        r0   Ú%test_pdist_minkowski_3_2_iris_float32z/TestPdist.test_pdist_minkowski_3_2_iris_float32  s>   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr�  ré  rJ  rW  r>  rV  r×  rØ  rå  s        r0   Ú"test_pdist_minkowski_3_2_iris_nonCz,TestPdist.test_pdist_minkowski_3_2_iris_nonC#  ó6   € àˆÜˆv‰JˆÜÐ/Ñ0ˆÜ! !Ð%5¸Ô=ˆÜ˜ ¨sÖ3r2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr�  ré  úpdist-minkowski-5.8-irisr!   r$  rV  r×  rØ  rÚ  s        r0   Útest_pdist_minkowski_5_8_irisz'TestPdist.test_pdist_minkowski_5_8_iris+  rL  r2   c                 óš   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||t
        dkD  ¬«       y )	NrÄ   ré  rS  r!   r$  rV  r×   rH  rí  rÚ  s        r0   Ú%test_pdist_minkowski_5_8_iris_float32z/TestPdist.test_pdist_minkowski_5_8_iris_float323  sD   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr�  ré  rS  rW  r$  rV  r×  rØ  rå  s        r0   Ú"test_pdist_minkowski_5_8_iris_nonCz,TestPdist.test_pdist_minkowski_5_8_iris_nonC;  rQ  r2   c                 ó”  — t        j                  g d¢«      j                  dd«      }t        |d¬«      }t	        |dt        j
                  d«      t        j
                  d«      t        j
                  d«      t        j
                  d«      t        j
                  d	«      g«       t        j                  d
d
gdd
gd
dgdd
gd
dgg«      }t        |d¬«      }t        j
                  d«      }t	        |||||dd|z  ddd|z  dg
«       t        j                  t        «      5  t        d
dgddggd¬«       d d d «       y # 1 sw Y   y xY w)N)rß   rß   r  r"  r   rj   r    re  rf  rh  rg  rß   r   r×   rÛ   rà   )
rV   r¶   r¬   r   r   ri  r,  r-  ry   r  )r  rÉ   rl  rm  s       r0   Útest_pdist_mahalanobisz TestPdist.test_pdist_mahalanobisC  s  € ä�H‰HÒ)Ó*×2Ñ2°2°qÓ9ˆÜ�Q˜}Ô-ˆÜ˜˜s¤B§G¡G¨C£L´"·'±'¸#³,Ü!Ÿw™w s›|¬R¯W©W°S«\¼2¿7¹7À3»<ðIô 	Jô �H‰H�q˜!�f˜r 1˜g¨¨1 v°°1¨v¸¸2°wÐ?Ó@ˆÜ�Q˜}Ô-ˆÜ�g‰g�a‹jˆÜ˜˜s C¨¨c°1°a¸#±g¸qÀ!ÀQÈÁWÈaÐPÔQô �]‰]œ:Ó&ñ 	;Ü�Q˜�F˜Q ˜FÐ#¨MÕ:÷	;÷ 	;ñ 	;ús   Ä!D>Ä>Ec                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©NrD  rH   úpdist-hammingr   r×  r  rÚ  s        r0   Útest_pdist_hamming_randomz#TestPdist.test_pdist_hamming_randomT  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r\  r	  rÚ  s        r0   Ú!test_pdist_hamming_random_float32z+TestPdist.test_pdist_hamming_random_float32[  ó=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©NrD  rH   r]  Útest_hammingr×  r  rå  s        r0   Útest_pdist_hamming_random_nonCz(TestPdist.test_pdist_hamming_random_nonCb  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r\  ©rV   rµ   rX   r  r   rÚ  s        r0   Útest_pdist_dhamming_randomz$TestPdist.test_pdist_dhamming_randomi  ra  r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r\  r	  rÚ  s        r0   Ú"test_pdist_dhamming_random_float32z,TestPdist.test_pdist_dhamming_random_float32p  ra  r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y rc  rg  rå  s        r0   Útest_pdist_dhamming_random_nonCz)TestPdist.test_pdist_dhamming_random_nonCw  s=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nç•dyáý¥=rÕ  úpdist-jensenshannonr   r×  rô  rÚ  s        r0   Útest_pdist_jensenshannon_randomz)TestPdist.test_pdist_jensenshannon_random~  s5   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ˜˜?Ó+ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Nç:Œ0âŽyE>rÕ  ro  r   r×   rH  ©rV   r[   rX   r   r   r   rÚ  s        r0   Ú'test_pdist_jensenshannon_random_float32z1TestPdist.test_pdist_jensenshannon_random_float32…  sD   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ*Ñ+ˆÜ˜˜?Ó+ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nrn  rÕ  ro  Útest_jensenshannonr×  rô  rå  s        r0   Ú$test_pdist_jensenshannon_random_nonCz.TestPdist.test_pdist_jensenshannon_random_nonCŒ  s6   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ˜Ð/Ó0ˆÜ˜ ¨sÖ3r2   c                 óz   — t        «       rd}nd}t        d   }t        d   }t        |d«      }t        |||¬«       y )Ng•Ö&è.ñ=gê-�™—q=ré  úpdist-jensenshannon-irisr   rÅ   )rh   rX   r   r   rÚ  s        r0   Útest_pdist_jensenshannon_irisz'TestPdist.test_pdist_jensenshannon_iris“  s=   € ÜŒ;à‰CàˆCäˆv‰JˆÜÐ/Ñ0ˆÜ˜˜?Ó+ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Ng�íµ ÷Æ°>ré  ry  r   r×   r  rs  rÚ  s        r0   Ú%test_pdist_jensenshannon_iris_float32z/TestPdist.test_pdist_jensenshannon_iris_float32Ÿ  sB   € ØˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ˜˜?Ó+ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Ng-Cëâ6
?ré  ry  rv  r×  rô  rå  s        r0   Ú"test_pdist_jensenshannon_iris_nonCz,TestPdist.test_pdist_jensenshannon_iris_nonC¦  s4   € ØˆÜˆv‰JˆÜÐ/Ñ0ˆÜ˜Ð/Ó0ˆÜ˜ ¨sÖ3r2   c                 ó0  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t	        |ddd¬«       t	        |ddd¬«       y ©N©rj   r   rj   rj   r   ©rj   rj   r   rj   rj   rC   ç333333ã?r   ç»½×Ùß|Û=©rI  rÆ   ©Ú	wmatchingrV   r¶   r  r   ©r  ÚmÚm2s      r0   Útest_pdist_matching_mtica1z$TestPdist.test_pdist_matching_mtica1­  sd   € ä”b—h‘hšÓ/Ü—h‘hšÓ/ó1ˆä”r—x‘x¢´tÔ<Ü—x‘x¢´tÔ<ó>ˆä˜˜3 Q¨UÕ3Ü˜˜C a¨eÖ4r2   c                 ó0  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t	        |ddd¬«       t	        |ddd¬«       y ©N©rj   r   rj   ©rj   rj   r   rC   çUUUUUUå?r   r„  r…  r†  rˆ  s      r0   Útest_pdist_matching_mtica2z$TestPdist.test_pdist_matching_mtica2¶  sd   € ä”b—h‘hšyÓ)Ü—X‘XšiÓ(ó*ˆä”r—x‘x¢	´Ô6Ü—h‘hšy´Ô5ó7ˆä˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )Nr�  r‚  rC   r×   r   r„  r…  ©ÚwyulerV   r¶   r  r   r†  r   rˆ  s      r0   Útest_pdist_yule_mtica1z TestPdist.test_pdist_yule_mtica1¿  sr   € Ü”"—(‘(š?Ó+Ü—(‘(š?Ó+ó-ˆä”2—8‘8šO´4Ô8Ü—8‘8šO´4Ô8ó:ˆä�QŠ;Ü�!ŒHÜ˜˜1 1¨5Õ1Ü˜˜A A¨EÖ2r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )NrŽ  r�  rC   r×   r   r„  r…  r“  rˆ  s      r0   Útest_pdist_yule_mtica2z TestPdist.test_pdist_yule_mtica2É  sr   € Ü”"—(‘(š9Ó%Ü—(‘(š9Ó%ó'ˆä”2—8‘8šI¬TÔ2Ü—8‘8šI¬TÔ2ó4ˆä�QŠ;Ü�!ŒHÜ˜˜1 1¨5Õ1Ü˜˜A A¨EÖ2r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )	Nr�  r‚  rC   r×   gÛ¶mÛ¶mÛ?r   r„  r…  ©ÚwdicerV   r¶   r  r   r†  r   rˆ  s      r0   Útest_pdist_dice_mtica1z TestPdist.test_pdist_dice_mtica1Ó  sr   € Ü”"—(‘(š?Ó+Ü—(‘(š?Ó+ó-ˆä”2—8‘8šO´4Ô8Ü—8‘8šO´4Ô8ó:ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )	NrŽ  r�  rC   r×   rh  r   r„  r…  r™  rˆ  s      r0   Útest_pdist_dice_mtica2z TestPdist.test_pdist_dice_mtica2Ý  sr   € Ü”"—(‘(š9Ó%Ü—(‘(š9Ó%ó'ˆä”2—8‘8šI¬TÔ2Ü—8‘8šI¬TÔ2ó4ˆä�QŠ;Ü�!ŒHÜ˜˜3 Q¨UÕ3Ü˜˜C a¨eÖ4r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y ©	Nr�  r‚  rC   r×   g      è?r   r„  r…  )r%   rV   r¶   r  r   r†  r   rˆ  s      r0   Útest_pdist_sokalsneath_mtica1z'TestPdist.test_pdist_sokalsneath_mtica1ç  ós   € ÜœŸ™¢Ó1ÜŸ™¢Ó1ó3ˆäœŸ™¢/¼Ô>ÜŸ™¢/¼Ô>ó@ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y ©	NrŽ  r�  rC   r×   gš™™™™™é?r   r„  r…  )ÚwsokalsneathrV   r¶   r  r   r†  r   rˆ  s      r0   Útest_pdist_sokalsneath_mtica2z'TestPdist.test_pdist_sokalsneath_mtica2ñ  sr   € ÜœŸ™¢)Ó,ÜŸ™¢)Ó,ó.ˆäœ"Ÿ(™(¢9´DÔ9ÜŸ(™(¢9´DÔ9ó;ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y rŸ  ©ÚwrogerstanimotorV   r¶   r  r   r†  r   rˆ  s      r0   Ú test_pdist_rogerstanimoto_mtica1z*TestPdist.test_pdist_rogerstanimoto_mtica1û  ss   € ÜœBŸH™H¢_Ó5ÜŸH™H¢_Ó5ó7ˆäœRŸX™X¢o¼TÔBÜŸX™X¢o¼TÔBóDˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y r£  r§  rˆ  s      r0   Ú test_pdist_rogerstanimoto_mtica2z*TestPdist.test_pdist_rogerstanimoto_mtica2  sr   € ÜœBŸH™H¢YÓ/ÜŸH™H¢YÓ/ó1ˆäœRŸX™X¢i´tÔ<ÜŸX™X¢i´tÔ<ó>ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )	Nr�  r‚  rC   r×   rƒ  r   r„  r…  ©ÚwrussellraorV   r¶   r  r   r†  r   rˆ  s      r0   Útest_pdist_russellrao_mtica1z&TestPdist.test_pdist_russellrao_mtica1  r¡  r2   c                 óX  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t        dkD  rt        |«       t        |ddd¬«       t        |ddd¬«       y )	NrŽ  r�  rC   r×   r�  r   r„  r…  r­  rˆ  s      r0   Útest_pdist_russellrao_mtica2z&TestPdist.test_pdist_russellrao_mtica2  sr   € ÜœŸ™¢Ó+ÜŸ™¢Ó+ó-ˆäœŸ™¢)´4Ô8ÜŸ™¢)´4Ô8ó:ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 óÈ   — t         d   }t        dkD  r t        |j                  |j                  «       d}t        |d«      }t        |d«      }t        |||t        dkD  ¬«       y )Nré  r×   rD  r   Útest_canberrarH  )rX   r   r†  r‰   rD   rÙ  r   )r  ÚDrL  r‡  rˆ  s        r0   Útest_pdist_canberra_matchz#TestPdist.test_pdist_canberra_match#  sS   € äˆv‰JˆÜ�QŠ;Ü�!—'‘'˜1Ÿ7™7Ô#ØˆÜ˜Q 
Ó+ˆÜ˜Q Ó0ˆÜ˜˜B S´'¸A±+Ö>r2   c                 óX   — d}t        dgdgfd«      }d}t        |||t        dkD  ¬«       y )Nrr  r;  r  r   gdß>@1‘Ž?r×   r  )rÙ  r   r   )r  rL  Úpdist_yr�  s       r0   Útest_pdist_canberra_ticket_711z(TestPdist.test_pdist_canberra_ticket_711-  s4   € ð ˆÜ! C 5¨3¨% .°*Ó=ˆØˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó¾   ‡—  G d„ d«      Šˆfd„}t        j                   ‰«       g ‰«       ggt        ¬«      }t        ||¬«      }d}t	        ||t
        dkD  ¬«       y )	Nc                   ó   — e Zd Zy)ú6TestPdist.test_pdist_custom_notdouble.<locals>.myclassNrr  rg   r2   r0   ru  r»  8  rv  r2   ru  c                 óX   •— t        | d   ‰«      rt        |d   ‰«      st        d«      ‚yrx  rz  r|  s     €r0   r9  z9TestPdist.test_pdist_custom_notdouble.<locals>._my_metric;  r}  r2   rC   re  ry  r×   r~  )rV   r¶   r  r   r	   r   )r  r9  rG   r·  r�  ru  s        @r0   Útest_pdist_custom_notdoublez%TestPdist.test_pdist_custom_notdouble5  sR   ø€ ÷	ñ 	ô	ô �x‰x™'›)˜¡w£y kÐ2¼&ÔAˆÜ˜ ZÔ0ˆØˆÜ�W˜g¬w¸©{Ö;r2   c           	      óØ  — 	 t        |fd|i|¤Ž}t        |fdt        |«      i|¤Ž}t        |fdd|z   i|¤Ž}t        |||t        dkD  ¬«       t        |||t        dkD  ¬«       y # t        $ rû}|j
                  }	t        dkD  r t        |	j                  «       t        |«       t        j                  |	«      5  t        |fd|i|¤Ž d d d «       n# 1 sw Y   nxY wt        j                  |	«      5  t        |fdt        |«      i|¤Ž d d d «       n# 1 sw Y   nxY wt        j                  |	«      5  t        |fdd|z   i|¤Ž d d d «       n# 1 sw Y   nxY wY d }~y Y d }~y d }~ww xY wr„  )
r   r.  r   r   rä   r…  r†  rë   r,  r-  )
r  r]  r1   rL  rí   r‡  rˆ  r‰  rð   rŠ  s
             r0   r‹  z$TestPdist._check_calling_conventionsD  sT  € ð	CÜ�qÑ2 Ð2¨6Ñ2ˆBÜ�qÑ8¤ f£Ð8°Ñ8ˆBÜ�qÑ< ¨6Ñ!1Ð<°VÑ<ˆBô ˜B ¨´gÀ±kÕBÜ˜B ¨´gÀ±kÖBøô ò 
	<Ø—K‘KˆEÜ˜Š{Ü�e—n‘nÔ%Ü�a”Ü—‘˜uÓ%ñ 2Ü�aÑ1 Ð1¨&Ò1÷2÷ 2ñ 2úä—‘˜uÓ%ñ 8Ü�aÑ7¤ V£Ð7°Ò7÷8÷ 8ñ 8úä—‘˜uÓ%ñ <Ü�aÑ; ¨&Ñ 0Ð;°FÒ;÷<÷ <ñ <ú÷ <ñ <ûð
	<ús`   ‚6A% Á%	E)Á.A
E$Â8CÃ	E$ÃC	ÃE$Ã1DÄ		E$ÄD	ÄE$Ä3EÅ	E$ÅE	ÅE$Å$E)c                 óž  — | j                   D �]=  }t        |   d d d…d d d…f   }t        dkD  rt        d|d|«       |dv rd|vrŒ8| j	                  ||«       |dk(  rJt        j                  |j                  t
        j                  «      dd	¬
«      }| j	                  |||¬«       Œ™|dk(  sŒŸt        j                  t        j                  |j                  t
        j                  «      j                  «      «      }t        j                  t
        j                  j                  |«      j                  «      }| j	                  |||¬«       �Œ@ y )Nrd  r×   r�  rŽ  >   r   r'   Úmatchingr#   r%   r"   r  r$   r   rj   r�  r�  r    r’  )r  rX   r   r†  r‹  rV   r•  r¢   rµ   r–  r—  ra  r¶   r\  r˜  )r  r1   r™  r]  r‘  r“  s         r0   Útest_pdist_calling_conventionsz(TestPdist.test_pdist_calling_conventionsY  s  € ð
 ×(Ñ(ó 	BˆGô �7‘™C˜a˜C¡ 1 ˜HÑ%ˆAÜ˜Š{Ü�k 6¨9°gÔ>Øð )ñ )Ø-3¸7Ñ-BàØ×+Ñ+¨A¨vÔ6ð ˜Ò%Ü—F‘F˜1Ÿ8™8¤B§J¡JÓ/°a¸aÔ@�Ø×/Ñ/°°6¸QÐ/Õ?Ø˜=Ó(Ü—M‘M¤"§&¡&¨¯©´"·*±*Ó)=×)?Ñ)?Ó"@ÓA�Ü—X‘XœbŸi™iŸm™m¨AÓ.×0Ñ0Ó1�Ø×/Ñ/°°6¸bÐ/ÖAñ'	Br2   c           	      óœ  — d}t         d   | j                  d   ft         d   | j                  d   ft         d   | j                  d   ft         d   | j                  d	   fg}|D ]S  }|d
   d d d…d d d…f   }	 t        ||¬«      }|d   D ]+  }t         ||«      |¬«      }t        |||t        dkD  ¬«       Œ- ŒU y # t
        $ rˆ}	|	j                  }
t        dkD  r t        |
j                  «       t        |	«       |d   D ]A  } ||«      }t        j                  |
«      5  t        ||¬«       d d d «       Œ7# 1 sw Y   Œ@xY w Y d }	~	Œãd }	~	ww xY w)Nr�  rI   r  rM   r  rL   r£   rK   r[   r   rd  r×   re  rj   rH  )rX   r  r   r   r   rä   r…  r†  rë   r,  r-  )r  r1   rL  rž  rŸ  r/  r‡  r   rˆ  rð   rŠ  r0  s               r0   Útest_pdist_dtype_equivalencez&TestPdist.test_pdist_dtype_equivalences  sg  € àˆÜÐ'Ñ(¨$×*<Ñ*<¸VÑ*DÐEÜÐ'Ñ(¨$×*<Ñ*<¸VÑ*DÐEÜÐ&Ñ'¨×);Ñ);¸EÑ)BÐCÜÐ*Ñ+¨T×-?Ñ-?À	Ñ-JÐKðMˆð ò 	KˆDØ�a‘™˜1˜™c ˜c˜Ñ"ˆBðKÜ˜2 fÔ-�ð !% Q¡ò K�HÜ™x¨›|°FÔ;�BÜ# B¨°¼gÈ¹kÖJñKñ	Køô ò 1ØŸ™�Ü˜Q’;Ü˜%Ÿ.™.Ô)Ü˜!”HØ $ Q¡ò 1�HÙ! "›�BÜŸ™ uÓ-ñ 1Ü˜b¨Õ0÷1÷ 1ñ 1úõ1ûð1ús1   Á7B:Â:	EÃAEÄD4	Ä+	EÄ4D=Ä9EÅEc                 óÐ  — d}t         d   d d d…d d d…f   }t        |j                  d   |j                  d   dz
  z  dz  «      }t        «       }|dk(  rd|d	<   t	        j
                  |t        j                  ¬
«      }t        ||fi |¤Ž}t        ||fd|i|¤Ž}t        |||¬«       t        ||u «       t	        j
                  |dz   t        j                  ¬
«      }	t        j                  t        «      5  t        ||fd|	i|¤Ž d d d «       t	        j
                  d|z  t        j                  ¬
«      d d d…   }
t        j                  t        «      5  t        ||fd|
i|¤Ž d d d «       t	        j
                  |t        j                  ¬
«      }t        j                  t        «      5  t        ||fd|i|¤Ž d d d «       y # 1 sw Y   Œ¿xY w# 1 sw Y   ŒlxY w# 1 sw Y   y xY w)NrD  rK   rd  r×   r   rj   r!   rS  rP  rC   r¦  r×  rà   )rX   r£   r‰   r©  rV   rª  rµ   r   r   r   r,  r-  ry   r«  )r  r1   rL  r]  Úout_sizerí   r®  rÛ  rÜ  r¯  r°  r²  s               r0   Útest_pdist_outzTestPdist.test_pdist_outŒ  s±  € àˆÜÐ$Ñ%¡c¨ c©3¨Q¨3 hÑ/ˆÜ˜Ÿ™ ™
 a§g¡g¨a¡j°1¡nÑ5¸Ñ:Ó;ˆä“ˆØ�[Ò ØˆF�3‰KÜ�x‰x˜¬¯
©
Ô3ˆÜ˜˜6Ñ, VÑ,ˆÜ˜˜6Ñ6 tÐ6¨vÑ6ˆô 	˜ ¨sÕ3ô 	�˜4�Ô ô �x‰x˜ 1™¬B¯J©JÔ7ˆÜ�]‰]œ:Ó&ñ 	1Ü�!�VÑ0 Ð0¨Ò0÷	1ô �x‰x˜˜H™¬B¯J©JÔ7¹¸!¸Ñ<ˆÜ�]‰]œ:Ó&ñ 	1Ü�!�VÑ0 Ð0¨Ò0÷	1ô �x‰x˜¬¯©Ô1ˆÜ�]‰]œ:Ó&ñ 	1Ü�!�VÑ0 Ð0¨Ò0÷	1ð 	1÷	1ð 	1ú÷
	1ð 	1ú÷
	1ð 	1ús$   Ã6GÅGÆ+GÇGÇGÇG%c                 óV  — d}t         d   d d d…d d d…f   }|j                  «       }t        |j                  j                   «       t        |j                  j                  «       t        «       }|dk(  rd|d<   t        ||fi |¤Ž}t        ||fi |¤Ž}t        |||t        dkD  ¬«       y )	NrD  rK   rd  r×   r!   rS  rP  rH  )	rX   rµ  r   r¶  r·  r©  r   r   r   )r  r1   rL  r]  ÚX_copyrí   rM  rN  s           r0   rº  zTestPdist.test_striding®  s¥   € ð ˆÜÐ$Ñ%¡c¨ c©3¨Q¨3 hÑ/ˆØ—‘“ˆô 	�A—G‘G×(Ñ(Ð(Ô)Ü�—‘×)Ñ)Ô*ä“ˆØ�[Ò ØˆF�3‰KÜ�1�fÑ' Ñ'ˆÜ�6˜6Ñ, VÑ,ˆä˜˜B S´'¸A±+Ö>r2   NrÄ  )Xrë   rs  rt  r  rÏ  rÒ  rÝ  rà  rã  rç  r,  rÅ  Úslowrë  rî  rñ  rõ  r÷  rú  rý  rÿ  r  r  r
  r  r  r  r  r  r  r   r#  r&  r(  r*  r.  r0  r3  r6  r8  r=  rÆ  rV   rÇ  r@  rD  rF  rH  rK  rN  rP  rT  rV  rX  rZ  r^  r`  re  rh  rj  rl  rp  rt  rw  rz  r|  r~  r‹  r‘  r•  r—  r›  r�  r   r¥  r©  r«  r¯  r±  rµ  r¸  r)   r½  r‹  rÁ  rÃ  rÆ  rº  rg   r2   r0   rÌ  rÌ  ¶  s¶  „ ò7ò6ò&!9òF4ò4ò4ò4ð ‡[�[×Ññ4ó ð4ð ‡[�[×ÑñIó ðIð ‡[�[×Ññ4ó ð4ò4ò
4ò4ò4ò4ò4ò4ò4ò4ð ‡[�[×Ññ4ó ð4ð ‡[�[×ÑñIó ðIð ‡[�[×Ññ4ó ð4ò>ò4ò4ò4ð ‡[�[×Ññ4ó ð4ð ‡[�[×ÑñIó ðIð ‡[�[×Ññ4ó ð4ò4ò4ò4ð ‡[�[×Ññ4ó ð4ð ‡[�[×ÑñIó ðIð ‡[�[×Ññ4ó ð4ð ‡[�[×Ñ˜S 3¨¨c°3¸¸R¿V¹VÐ"DÓEñ2ó Fð2ò4ò4ò4ð ‡[�[×Ññ4ó ð4ð ‡[�[×Ññ4ó ð4ð ‡[�[×Ññ4ó ð4ð ‡[�[×Ññ4ó ð4ð ‡[�[×ÑñIó ðIð ‡[�[×Ññ4ó ð4ò;ò"4ò4ò4ò4ò4ò4ò4òIò4ò
4òIò4ò5ò7ò3ò3ò7ò5ò7ò7ò7ò7ò7ò7ð ‡[�[×Ññ?ó ð?òIð ñ<ó ð<óCò*Bò4Kò2 1óD?r2   rÌ  c                   óÆ   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
ej                  j                  d	«      ej                  j                  d
eeg«      d„ «       «       Zd„ Zy)ÚTestSomeDistanceFunctionsc                 ót   — t        j                  g d¢«      }t        j                  g d¢«      }||fg| _        y )Nr  ©r²   r²   r"  )rV   r¶   Úcases)r  rÉ   r5  s      r0   r  z&TestSomeDistanceFunctions.setup_methodÃ  s+   € ä�H‰H’_Ó%ˆÜ�H‰H’_Ó%ˆà˜!�f�Xˆ�
r2   c           	      óÔ  — | j                   D ]m  \  }}t        ||d¬«      }t        |d«       t        ||d¬«      }t        |d«       t        ||d¬«      }t        |d«       t        ||d¬«      }t        |d	«       Œo t        j                  d
dg«      }t        j                  ddg«      }t        t        ||«      t        |j                  d«      |j                  d«      «      «       y )Nrj   rV  r  ç      ø?gqÎazý“@r×   g¨ô—›wã@rR  gÙRÏ"ø6@i`  i”  i^  i”  Úuint16)rÎ  r!   r
   rV   r¶   r	   r¢   )	r  rÉ   r5  Údist1Údist1p5Údist2Údist0p25rp   rÐ   s	            r0   rW  z(TestSomeDistanceFunctions.test_minkowskiÊ  sÐ   € Ø—J‘Jò 	D‰DˆAˆqÜ˜a  aÔ(ˆEÜ  sÔ+Ü  1¨Ô,ˆGÜ Ð)CÔDÜ˜a  aÔ(ˆEÜ  zÔ2Ü   A¨Ô.ˆHÜ Ð*BÕCð	Dô �H‰H�c˜3�ZÓ ˆÜ�H‰H�c˜3�ZÓ ˆÜ”Y˜q !“_Ü˜qŸx™x¨Ó1°1·8±8¸HÓ3EÓFõ	Hr2   c                 ó‚   — | j                   D ]0  \  }}t        ||«      }t        |t        j                  d«      «       Œ2 y )Nrd  )rÎ  Ú
weuclideanr
   rV   ri  ©r  rÉ   r5  rl  s       r0   rG  z(TestSomeDistanceFunctions.test_euclideanÝ  s7   € Ø—J‘Jò 	2‰DˆAˆqÜ˜a Ó#ˆDÜ ¤b§g¡g¨a£jÕ1ñ	2r2   c                 ó\   — | j                   D ]  \  }}t        ||«      }t        |d«       Œ y )Nr"  )rÎ  Úwsqeuclideanr
   rØ  s       r0   Útest_sqeuclideanz*TestSomeDistanceFunctions.test_sqeuclideanâ  s/   € Ø—J‘Jò 	+‰DˆAˆqÜ  1Ó%ˆDÜ  cÕ*ñ	+r2   c           
      óº   — | j                   D ]L  \  }}t        ||«      }t        |ddt        j                  d«      t        j                  d«      z  z  z
  «       ŒN y )Nr²   g      2@é   é   )rÎ  Úwcosiner
   rV   ri  rØ  s       r0   r  z%TestSomeDistanceFunctions.test_cosineç  sO   € Ø—J‘Jò 	P‰DˆAˆqÜ˜1˜a“=ˆDÜ  c¨D´B·G±G¸B³KÄ"Ç'Á'È"Ã+Ñ4MÑ,NÑ&NÕOñ	Pr2   c                 óˆ   — t        t        ddgddgd¬«      t        «      sJ ‚t        t        ddgddg«      t        «      sJ ‚y )Nrj   F)Úcentered)r{  ÚwcorrelationÚfloatrß  r  s    r0   Útest_cosine_output_dtypez2TestSomeDistanceFunctions.test_cosine_output_dtypeì  sB   € äœ,¨¨1 v°°1¨vÀÔFÌÔNÐNÐNÜœ' 1 a &¨1¨a¨&Ó1´5Ô9Ð9Ñ9r2   c           
      ó  — t        j                  g d¢«      }t        j                  g d¢«      }| j                  D ]L  \  }}t        ||«      }t	        |dt        j
                  ||«      t        |«      t        |«      z  z  z
  «       ŒN y )N)ç      ð¿r   r²   )çUUUUUUõ¿rç  gUUUUUU@r²   )rV   r¶   rÎ  râ  r
   r`  r   )r  ÚxmÚymrÉ   r5  rl  s         r0   r2  z*TestSomeDistanceFunctions.test_correlationñ  so   € Ü�X‰X’nÓ%ˆÜ�X‰XÒ9Ó:ˆØ—J‘Jò 	T‰DˆAˆqÜ  1Ó%ˆDÜ  c¬B¯F©F°2°r«N¼dÀ2»hÌÈbËÑ>QÑ,RÑ&RÕSñ	Tr2   c                 óô   — t        j                  g d¢«      }t        j                  g d¢«      }t        ||«      }d|cxk  r4dt        j                  t         j                  «      j
                  z  k  sJ ‚ J ‚y )N)%rf  rf  rf  rf  rf  rf  ç       Àrf  rf  rf  rë  rë  rë  rf  rë  rf  rë  rf  rf  ræ  rë  rf  r²   rf  rf  rë  rf  rf  rë  rf  rë  rë  rë  rë  rë  rë  rf  )%r²   r²   r²   r²   r²   r²   ræ  r²   r²   r²   ræ  ræ  ræ  r²   ræ  r²   ræ  r²   r²   rf  ræ  r²   rß   r²   r²   ræ  r²   r²   ræ  r²   ræ  ræ  ræ  ræ  ræ  ræ  r²   r   r¼  )rV   r¶   r   Úfinforµ   rL  rØ  s       r0   Útest_correlation_positivez3TestSomeDistanceFunctions.test_correlation_positiveø  sm   € ä�H‰Hò Ió Jˆô �H‰Hò Ió Jˆô ˜1˜aÓ ˆØ�DÔ9˜B¤§¡¬"¯*©*Ó!5×!9Ñ!9Ñ9Ò9Ð9Ñ9Ð9Ñ9r2   zignore:Casting complexÚfuncc                 ó†   — ddg}ddg}t        j                  t        d¬«      5   |||«       d d d «       y # 1 sw Y   y xY w)Ny      ð?        y       @        y      @        y      @        Úreal©Úmatch)r,  r-  rÎ   )r  rî  rÉ   r5  s       r0   Útest_corr_dep_complexz/TestSomeDistanceFunctions.test_corr_dep_complex  sB   € ð �4ˆLˆØ�4ˆLˆÜ�]‰]œ9¨FÔ3ñ 	Ù��AŒJ÷	÷ 	ñ 	ús	   ¤
7·A c                 ó  — t        j                  g d¢«      }t        j                  g d¢«      }t        j                  g d¢g d¢g d¢g«      }| j                  D ]1  \  }}t        |||«      }t	        |t        j
                  d«      «       Œ3 y )Nr  rÍ  )rß   r²   rf  )r²   rß   r²   )rf  r²   rß   g      @)rV   r¶   rÎ  r    r
   ri  )r  rÉ   r5  Úvirl  s        r0   Útest_mahalanobisz*TestSomeDistanceFunctions.test_mahalanobis  sj   € Ü�H‰H’_Ó%ˆÜ�H‰H’_Ó%ˆÜ�X‰X’ªºÐIÓJˆØ—J‘Jò 	4‰DˆAˆqÜ˜q ! RÓ(ˆDÜ ¤b§g¡g¨c£lÕ3ñ	4r2   N)rë   rs  rt  r  rW  rG  rÛ  r  rä  r2  rí  r,  rÅ  ÚfilterwarningsrÆ  r   r   ró  rö  rg   r2   r0   rË  rË  Á  st   „ òòHò&2ò
+ò
Pò
:ò
Tò	:ð ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜V k°6Ð%:Ó;ñó <ó :ðó4r2   rË  c                   óŽ   — e Zd Zej                  ej
                  ej                  ej                  egZ	d„ Z
d„ Zd„ Zd„ Zd„ Zd„ Zy)ÚTestSquareFormc                 óH   — | j                   D ]  }| j                  |«       Œ y rl   )Úchecked_dtypesÚcheck_squareform_matrix©r  rD   s     r0   Útest_squareform_matrixz%TestSquareForm.test_squareform_matrix  ó%   € Ø×(Ñ(ò 	0ˆEØ×(Ñ(¨Õ/ñ	0r2   c                 óH   — | j                   D ]  }| j                  |«       Œ y rl   )rû  Úcheck_squareform_vectorrý  s     r0   Útest_squareform_vectorz%TestSquareForm.test_squareform_vector  rÿ  r2   c                 ó(  — t        j                  d|¬«      }t        |«      }t        |j                  d«       t        |j
                  |«       t        j                  d|¬«      }t        |«      }t        |j                  d«       t        |j
                  |«       t        j                  ddgddgg|¬«      }t        |«      }t        |j                  d«       t        |j
                  |«       t        |t        j                  dg|¬«      «       y )N)r   r   rC   ©r   ©rj   rj   r   gÍÌÌÌÌÌ@)rj   )rV   Úzerosr   r	   r‰   rD   r¶   r   )r  rD   ÚAÚrAs       r0   rü  z&TestSquareForm.check_squareform_matrix  sÅ   € Ü�H‰H�V 5Ô)ˆÜ˜‹]ˆÜ�R—X‘X˜tÔ$Ü�R—X‘X˜uÔ%ä�H‰H�V 5Ô)ˆÜ˜‹]ˆÜ�R—X‘X˜tÔ$Ü�R—X‘X˜uÔ%ä�H‰H�q˜#�h  a Ð)°Ô7ˆÜ˜‹]ˆÜ�R—X‘X˜tÔ$Ü�R—X‘X˜uÔ%Ü˜2œrŸx™x¨¨°UÔ;Õ<r2   c                 ó¨  — t        j                  d|¬«      }t        |«      }t        |j                  d«       t        |j
                  |«       t        |dgg«       t        j                  dg|¬«      }t        |«      }t        |j                  d«       t        |j
                  |«       t        |t        j                  ddgddgg|¬«      «       y )Nr  rC   r  r   gš™™™™™ @)r×   r×   )rV   r  r   r	   r‰   rD   r   r¶   )r  rD   rÁ  Úrvs       r0   r  z&TestSquareForm.check_squareform_vector0  sž   € Ü�H‰H�T Ô'ˆÜ˜‹]ˆÜ�R—X‘X˜vÔ&Ü�R—X‘X˜uÔ%Ü˜2  ˜uÔ%ä�H‰H�c�U %Ô(ˆÜ˜‹]ˆÜ�R—X‘X˜vÔ&Ü�R—X‘X˜uÔ%Ü˜2œrŸx™x¨!¨S¨°C¸°8Ð(<ÀEÔJÕKr2   c                 óH   — t        dd«      D ]  }| j                  |«       Œ y )Nr×   rd  )rz   Úcheck_squareform_multi_matrix©r  Úns     r0   Útest_squareform_multi_matrixz+TestSquareForm.test_squareform_multi_matrix=  s%   € Ü�q˜!“ò 	2ˆAØ×.Ñ.¨qÕ1ñ	2r2   c                 óŠ  — t         j                  j                  |d«      }t        |«      }t	        t        |j                  «      d«       t        |«      }t        |«      }|j                  }d}t        dk\  r+t        |j                  |j                  |j                  «       t	        t        |«      d«       t	        t        |j                  «      d«       t	        |d   |d   «       t        d|d   «      D ]I  }t        |dz   |d   «      D ]2  }	||	k7  rt	        |||	f   ||   «       |dz  }Œ"t	        |||	f   d«       Œ4 ŒK y )Né   rj   r   rà   r×   )rV   r·   rº   rÙ  r	   Úlenr‰   r   r   r†  rz   )
r  r  r]  ÚYr  ÚYrÚsÚkr§   Újs
             r0   r  z,TestSquareForm.check_squareform_multi_matrixA  s  € Ü�I‰I�N‰N˜1˜aÓ ˆÜ˜AÓˆÜ”S˜Ÿ™“\ 1Ô%Ü�q‹MˆÜ˜‹]ˆØ�G‰GˆØˆÜ�aŠ<Ü�!—'‘'˜1Ÿ7™7 B§H¡HÔ-Ü”S˜“V˜QÔÜ”S˜Ÿ™“] AÔ&Ü�Q�q‘T˜1˜Q™4Ô Ü�q˜!˜A™$“ò 	-ˆAÜ˜1˜q™5 ! A¡$Ó'ò -�Ø˜’6Ü   1 a 4¡¨!¨A©$Ô/Ø˜‘F‘Aä   1 a 4¡¨!Õ,ñ-ñ	-r2   N)rë   rs  rt  rV   rµ   r[   Úint32Úint8r  rû  rþ  r  rü  r  r  r  rg   r2   r0   rù  rù    sA   „ Ø—j‘j "§*¡*¨b¯h©h¸¿¹ÀÐF€Nò0ò0ò=ò"Lò2ó-r2   rù  c                   óN   — 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y)ÚTestNumObsYc                 ó¦   — t        dd«      D ]B  }t        j                  j                  |d«      }t	        |«      }t        t        |«      |«       ŒD y )Nr×   r¼  r  )rz   rV   r·   rº   rÙ  r	   r   )r  r  r]  r  s       r0   Útest_num_obs_y_multi_matrixz'TestNumObsY.test_num_obs_y_multi_matrixY  sC   € Ü�q˜"“ò 	*ˆAÜ—	‘	—‘˜q !Ó$ˆAÜ Ó"ˆAÜœ 1› qÕ)ñ	*r2   c                 ó‚   — t        j                  t        «      5  | j                  d«       d d d «       y # 1 sw Y   y xY w©Nrj   )r,  r-  ry   Úcheck_yr  s    r0   Útest_num_obs_y_1zTestNumObsY.test_num_obs_y_1_  s0   € ô �]‰]œ:Ó&ñ 	Ø�L‰L˜ŒO÷	÷ 	ñ 	ús   š5µ>c                 ó8   — t        | j                  d«      «       y ©Nr×   ©r   r   r  s    r0   Útest_num_obs_y_2zTestNumObsY.test_num_obs_y_2e  s   € ô 	�—‘˜Q“Õ r2   c                 ó8   — t        | j                  d«      «       y )Nrà   r$  r  s    r0   Útest_num_obs_y_3zTestNumObsY.test_num_obs_y_3j  ó   € Ü�—‘˜Q“Õ r2   c                 ó8   — t        | j                  d«      «       y ©Nr  r$  r  s    r0   Útest_num_obs_y_4zTestNumObsY.test_num_obs_y_4m  r(  r2   c                 óH   — t        dd«      D ]  }| j                  |«       Œ y )Nrd  é   )rz   Úminit)r  r§   s     r0   Útest_num_obs_y_5_10zTestNumObsY.test_num_obs_y_5_10p  s"   € Ü�q˜"“ò 	ˆAØ�J‰J�q�Mñ	r2   c                 ó  — t        «       }t        dd«      D ]  }|j                  ||dz
  z  dz  «       Œ t        dd«      D ]:  }||vsŒt        j                  t
        «      5  | j                  |«       d d d «       Œ< y # 1 sw Y   ŒGxY w©Nr×   r-  rj   rd  éi   ©Úsetrz   Úaddr,  r-  ry   Úbad_y©r  rp   r  r§   s       r0   Útest_num_obs_y_2_100z TestNumObsY.test_num_obs_y_2_100t  s…   € ô ‹EˆÜ�q˜"“ò 	#ˆAØ�E‰E�!�q˜1‘u‘+ ‘/Õ"ð	#ä�q˜#“ò 	"ˆAØ˜ŠzÜ—]‘]¤:Ó.ñ "Ø—J‘J˜q”M÷"ð "ñ	"÷"ð "úó   Á#B Â B		c                 ó8   — t        | j                  |«      «       y rl   r$  r  s     r0   r.  zTestNumObsY.minit  r(  r2   c                 óV   — t         j                  j                  |«      }t        |«      S rl   )rV   r·   rº   r   ©r  r  r5  s      r0   r6  zTestNumObsY.bad_y‚  s   € Ü�I‰I�N‰N˜1ÓˆÜ˜‹|Ðr2   c                 ó<   — t        | j                  |«      «      |k(  S rl   )r   Úmake_yr  s     r0   r   zTestNumObsY.check_y†  s   € Ü˜Ÿ™ Q›Ó(¨AÑ-Ð-r2   c                 óR   — t         j                  j                  ||dz
  z  dz  «      S ©Nrj   r×   ©rV   r·   rº   r  s     r0   r>  zTestNumObsY.make_y‰  s"   € Ü�y‰y�~‰~˜q A¨¡E™{¨qÑ0Ó1Ð1r2   N)rë   rs  rt  r  r!  r%  r'  r+  r/  r8  r.  r6  r   r>  rg   r2   r0   r  r  W  s9   „ ò*òò!ò
!ò!òò	"ò!òò.ó2r2   r  c                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestNumObsDMc                 ó  — t        dd«      D ]v  }t        j                  j                  |d«      }t	        |«      }t        |«      }t        dk\  r t        |j                  |j                  «       t        t        |«      |«       Œx y )Nrj   r¼  r  rà   )rz   rV   r·   rº   rÙ  r   r   r†  r‰   r	   r   )r  r  r]  r  r  s        r0   Útest_num_obs_dm_multi_matrixz)TestNumObsDM.test_num_obs_dm_multi_matrix�  se   € Ü�q˜"“ò 	+ˆAÜ—	‘	—‘˜q !Ó$ˆAÜ Ó"ˆAÜ˜1“ˆAÜ˜!Š|Ü�a—g‘g˜qŸw™wÔ'Üœ A›¨Õ*ñ	+r2   c                 ó8   — t        | j                  d«      «       y )Nr   ©r   Úcheck_Dr  s    r0   Útest_num_obs_dm_0zTestNumObsDM.test_num_obs_dm_0˜  ó   € ä�—‘˜Q“Õ r2   c                 ó8   — t        | j                  d«      «       y r  rG  r  s    r0   Útest_num_obs_dm_1zTestNumObsDM.test_num_obs_dm_1œ  rJ  r2   c                 ó8   — t        | j                  d«      «       y r#  rG  r  s    r0   Útest_num_obs_dm_2zTestNumObsDM.test_num_obs_dm_2   r(  r2   c                 ó8   — t        | j                  d«      «       y r#  rG  r  s    r0   Útest_num_obs_dm_3zTestNumObsDM.test_num_obs_dm_3£  r(  r2   c                 ó8   — t        | j                  d«      «       y r*  rG  r  s    r0   Útest_num_obs_dm_4zTestNumObsDM.test_num_obs_dm_4¦  r(  r2   c                 ó<   — t        | j                  |«      «      |k(  S rl   )r   Úmake_Dr  s     r0   rH  zTestNumObsDM.check_D©  s   € Ü˜$Ÿ+™+ a›.Ó)¨QÑ.Ð.r2   c                 óB   — t         j                  j                  ||«      S rl   rA  r  s     r0   rT  zTestNumObsDM.make_D¬  s   € Ü�y‰y�~‰~˜a Ó#Ð#r2   N)rë   rs  rt  rE  rI  rL  rN  rP  rR  rH  rT  rg   r2   r0   rC  rC  �  s*   „ ò+ò!ò!ò!ò!ò!ò/ó$r2   rC  c                 ó   — t        | d¬«      S ©NT)Úthrow)r   )r´  s    r0   Úis_valid_dm_throwrY  °  s   € Ü�q Ô%Ð%r2   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y)ÚTestIsValidDMc                 óÀ   — t        j                  dt         j                  ¬«      }t        j                  t
        «      5  t        |«       d d d «       y # 1 sw Y   y xY w)N©rd  rC   ©rV   r  rµ   r,  r-  ry   rY  ©r  r´  s     r0   Ú$test_is_valid_dm_improper_shape_1D_Ez2TestIsValidDM.test_is_valid_dm_improper_shape_1D_E¶  s?   € Ü�H‰H�T¤§¡Ô,ˆÜ�]‰]œ:Ó&ñ 	!Ü˜aÔ ÷	!÷ 	!ñ 	!úó   ¿AÁAc                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y )Nr]  rC   F©rV   r  rµ   r	   r   r_  s     r0   Ú$test_is_valid_dm_improper_shape_1D_Fz2TestIsValidDM.test_is_valid_dm_improper_shape_1D_F»  s$   € Ü�H‰H�T¤§¡Ô,ˆÜ”[ “^ UÕ+r2   c                 óÀ   — t        j                  dt         j                  ¬«      }t        j                  t
        «      5  t        |«       d d d «       y # 1 sw Y   y xY w©N©rà   rà   rà   rC   r^  r_  s     r0   Ú$test_is_valid_dm_improper_shape_3D_Ez2TestIsValidDM.test_is_valid_dm_improper_shape_3D_E¿  s?   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ�]‰]œ:Ó&ñ 	!Ü˜aÔ ÷	!÷ 	!ñ 	!úra  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y ©Nrg  rC   Frc  r_  s     r0   Ú$test_is_valid_dm_improper_shape_3D_Fz2TestIsValidDM.test_is_valid_dm_improper_shape_3D_FÄ  s$   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ”[ “^ UÕ+r2   c                 óú   — t         j                  j                  d«      }t        |«      }t	        dd«      D ]	  }d|||f<   Œ t        j                  t        «      5  t        |«       d d d «       y # 1 sw Y   y xY w)Nr¼  r   rd  rß   )	rV   r·   rº   r   rz   r,  r-  ry   rY  ©r  r5  r´  r§   s       r0   Ú#test_is_valid_dm_nonzero_diagonal_Ez1TestIsValidDM.test_is_valid_dm_nonzero_diagonal_EÈ  sh   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆÜ�q˜!“ò 	ˆAØˆAˆa�ˆdŠGð	ä�]‰]œ:Ó&ñ 	!Ü˜aÔ ÷	!÷ 	!ñ 	!ús   ÁA1Á1A:c                 ó²   — t         j                  j                  d«      }t        |«      }t	        dd«      D ]	  }d|||f<   Œ t        t        |«      d«       y )Nr¼  r   rd  rß   F)rV   r·   rº   r   rz   r	   r   rm  s       r0   Ú#test_is_valid_dm_nonzero_diagonal_Fz1TestIsValidDM.test_is_valid_dm_nonzero_diagonal_FÐ  sM   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆÜ�q˜!“ò 	ˆAØˆAˆa�ˆdŠGð	ä”[ “^ UÕ+r2   c                 óà   — t         j                  j                  d«      }t        |«      }|d   dz   |d<   t	        j
                  t        «      5  t        |«       d d d «       y # 1 sw Y   y xY w)Nr¼  ©rà   rj   rj   ©rj   rà   )rV   r·   rº   r   r,  r-  ry   rY  ©r  r5  r´  s      r0   Útest_is_valid_dm_asymmetric_Ez+TestIsValidDM.test_is_valid_dm_asymmetric_E×  sW   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆØ�D‘'˜A‘+ˆˆ$‰Ü�]‰]œ:Ó&ñ 	!Ü˜aÔ ÷	!÷ 	!ñ 	!ús   ÁA$Á$A-c                 ó˜   — t         j                  j                  d«      }t        |«      }|d   dz   |d<   t	        t        |«      d«       y )Nr¼  rr  rj   rs  F©rV   r·   rº   r   r	   r   rt  s      r0   Útest_is_valid_dm_asymmetric_Fz+TestIsValidDM.test_is_valid_dm_asymmetric_FÞ  s<   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆØ�D‘'˜A‘+ˆˆ$‰Ü”[ “^ UÕ+r2   c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y )Nr  rC   Trc  r_  s     r0   Útest_is_valid_dm_correct_1_by_1z-TestIsValidDM.test_is_valid_dm_correct_1_by_1ä  s$   € Ü�H‰H�V¤2§:¡:Ô.ˆÜ”[ “^ TÕ*r2   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )Nrj   Trw  rt  s      r0   Útest_is_valid_dm_correct_2_by_2z-TestIsValidDM.test_is_valid_dm_correct_2_by_2è  ó+   € Ü�I‰I�N‰N˜1ÓˆÜ�q‹MˆÜ”[ “^ TÕ*r2   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y ©Nrà   Trw  rt  s      r0   Útest_is_valid_dm_correct_3_by_3z-TestIsValidDM.test_is_valid_dm_correct_3_by_3í  r}  r2   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )Né   Trw  rt  s      r0   Útest_is_valid_dm_correct_4_by_4z-TestIsValidDM.test_is_valid_dm_correct_4_by_4ò  r}  r2   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )Nr¼  Trw  rt  s      r0   Útest_is_valid_dm_correct_5_by_5z-TestIsValidDM.test_is_valid_dm_correct_5_by_5÷  s+   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆÜ”[ “^ TÕ*r2   N)rë   rs  rt  r`  rd  rh  rk  rn  rp  ru  rx  rz  r|  r€  rƒ  r…  rg   r2   r0   r[  r[  ´  sC   „ ò!ò
,ò!ò
,ò!ò,ò!ò,ò+ò+ò
+ò
+ó
+r2   r[  c                 ó   — t        | d¬«      S rW  )r   )r5  s    r0   Úis_valid_y_throwr‡  ý  s   € Ü�a˜tÔ$Ð$r2   c                   óN   — 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y)ÚTestIsValidYc                 óÀ   — t        j                  dt         j                  ¬«      }t        j                  t
        «      5  t        |«       d d d «       y # 1 sw Y   y xY w)N©rà   rà   rC   ©rV   r  rµ   r,  r-  ry   r‡  ©r  r5  s     r0   Ú#test_is_valid_y_improper_shape_2D_Ez0TestIsValidY.test_is_valid_y_improper_shape_2D_E  s?   € Ü�H‰H�W¤B§J¡JÔ/ˆÜ�]‰]œ:Ó&ñ 	 Ü˜QÔ÷	 ÷ 	 ñ 	 úra  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y )Nr‹  rC   F©rV   r  rµ   r	   r   r�  s     r0   Ú#test_is_valid_y_improper_shape_2D_Fz0TestIsValidY.test_is_valid_y_improper_shape_2D_F  s$   € Ü�H‰H�W¤B§J¡JÔ/ˆÜ”Z “] EÕ*r2   c                 óÀ   — t        j                  dt         j                  ¬«      }t        j                  t
        «      5  t        |«       d d d «       y # 1 sw Y   y xY wrf  rŒ  r�  s     r0   Ú#test_is_valid_y_improper_shape_3D_Ez0TestIsValidY.test_is_valid_y_improper_shape_3D_E  s?   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ�]‰]œ:Ó&ñ 	 Ü˜QÔ÷	 ÷ 	 ñ 	 úra  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y rj  r�  r�  s     r0   Ú#test_is_valid_y_improper_shape_3D_Fz0TestIsValidY.test_is_valid_y_improper_shape_3D_F  s$   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ”Z “] EÕ*r2   c                 óP   — | j                  d«      }t        t        |«      d«       y )Nr×   T©Úcorrect_n_by_nr	   r   r�  s     r0   Útest_is_valid_y_correct_2_by_2z+TestIsValidY.test_is_valid_y_correct_2_by_2  ó    € Ø×Ñ Ó"ˆÜ”Z “] DÕ)r2   c                 óP   — | j                  d«      }t        t        |«      d«       y r  r—  r�  s     r0   Útest_is_valid_y_correct_3_by_3z+TestIsValidY.test_is_valid_y_correct_3_by_3  rš  r2   c                 óP   — | j                  d«      }t        t        |«      d«       y )Nr  Tr—  r�  s     r0   Útest_is_valid_y_correct_4_by_4z+TestIsValidY.test_is_valid_y_correct_4_by_4   rš  r2   c                 óP   — | j                  d«      }t        t        |«      d«       y )Nrd  Tr—  r�  s     r0   Útest_is_valid_y_correct_5_by_5z+TestIsValidY.test_is_valid_y_correct_5_by_5$  rš  r2   c                 ó  — t        «       }t        dd«      D ]  }|j                  ||dz
  z  dz  «       Œ t        dd«      D ]:  }||vsŒt        j                  t
        «      5  | j                  |«       d d d «       Œ< y # 1 sw Y   ŒGxY wr1  r3  r7  s       r0   Útest_is_valid_y_2_100z"TestIsValidY.test_is_valid_y_2_100(  sƒ   € Ü‹EˆÜ�q˜"“ò 	#ˆAØ�E‰E�!�q˜1‘u‘+ ‘/Õ"ð	#ä�q˜#“ò 	"ˆAØ˜ŠzÜ—]‘]¤:Ó.ñ "Ø—J‘J˜q”M÷"ð "ñ	"÷"ð "úr9  c                 óZ   — t         j                  j                  |«      }t        |d¬«      S rW  )rV   r·   rº   r   r<  s      r0   r6  zTestIsValidY.bad_y1  s!   € Ü�I‰I�N‰N˜1ÓˆÜ˜! 4Ô(Ð(r2   c                 óV   — t         j                  j                  ||dz
  z  dz  «      }|S r@  rA  r<  s      r0   r˜  zTestIsValidY.correct_n_by_n5  s&   € Ü�I‰I�N‰N˜A  Q¡™K¨AÑ-Ó.ˆØˆr2   N)rë   rs  rt  rŽ  r‘  r“  r•  r™  rœ  rž  r   r¢  r6  r˜  rg   r2   r0   r‰  r‰    s9   „ ò
 ò
+ò ò
+ò*ò*ò*ò*ò"ò)ór2   r‰  rP  )g      $Àg      à¿rf  c                 ó  — t        j                  t        «      5  t        ddgddg| «       d d d «       t        j                  t        «      5  t        ddgddg| ddg«       d d d «       y # 1 sw Y   Œ@xY w# 1 sw Y   y xY w)Nrj   r×   rà   r  )r,  r-  ry   r!   rV  s    r0   Ú
test_bad_pr¦  :  sy   € ô 
�‰”zÓ	"ñ %Ü�1�a�&˜1˜a˜& !Ô$÷%ä	�‰”zÓ	"ñ -Ü�1�a�&˜1˜a˜& ! a¨ VÔ,÷-ð -÷%ð %ú÷-ð -ús   šA+ÁA7Á+A4Á7B c                  ó€   — t        j                  t        «      5  t        g d¢g d¢«       d d d «       y # 1 sw Y   y xY w)N)FFF)r,  r-  ry   r%   rg   r2   r0   Útest_sokalsneath_all_falser¨  C  s3   € ä	�‰”zÓ	"ñ BÜÒ)Ò+@ÔA÷B÷ Bñ Bús   š4´=c                  ól   — t        t        g d¢g d¢«      d«       t        t        g d¢g d¢«      d«       y )N©rj   r×   rà   ©r×   r  r‚  rj   ©rj   rj   r   r   ©rj   r   rj   r   r×   )r	   Ú	wcanberrarg   r2   r0   r³  r³  I  s$   € ä”š9¢iÓ0°!Ô4Ü”š<ªÓ6¸Õ:r2   c                  ót   — t        t        g d¢g d¢«      dd¬«       t        t        g d¢g d¢«      dd¬«       y )	Nrª  r«  çUUUUUUÕ?é   ©Údecimalr¬  r­  rh  )r
   Úwbraycurtisrg   r2   r0   Útest_braycurtisrµ  O  s(   € äœ¢IªyÓ9¸6È2ÕNÜœ¢L²,Ó?ÀÈbÖQr2   c                  óº  — t        j                  g d¢«      } t        j                  g d¢«      }t        t        | |«      dd¬«       t        t	        | |«      t        j
                  d«      d¬«       t         j                  j                  d«      }|j                  d«      }|j                  d«      }t	        ||«      }t        ||«      }t        |d	z  |d¬«       y )
N)rj   rj   rj   ©r   r   r   r  rÝ  r²  rà   iÒ–Ir¼  r×   )	rV   r¶   r
   rÚ  r×  ri  r·   r¸   rº   )rj  rk  ÚrsrÉ   r5  Úd1Úd2s          r0   Útest_euclideansr»  U  s¦   € ä	�‰’)Ó	€BÜ	�‰’)Ó	€Bô œ R¨Ó,¨c¸2Õ>Üœ
 2 rÓ*¬B¯G©G°A«JÀÕCô 
�‰×	Ñ	˜zÓ	*€BØ
�‰�‹€AØ
�‰�‹€AÜ	�A�qÓ	€BÜ	�a˜Ó	€BÜ˜˜A™˜r¨2Ö.r2   c                  óˆ   — g d¢} g d¢}t        j                  t        «      5  t        | |«       d d d «       y # 1 sw Y   y xY w)N©r   r   rj   r­  ©r,  r-  ry   Úwhamming©rÉ   r5  s     r0   Útest_hamming_unequal_lengthrÁ  g  s6   € â€AÚ€Aä	�‰”zÓ	"ñ Ü��AŒ÷÷ ñ ús	   ¢8¸Ac                  óš   — g d¢} g d¢}g d¢}d}t        j                  t        |¬«      5  t        | ||«       d d d «       y # 1 sw Y   y xY w)Nr½  r­  z/'w' should have the same length as 'u' and 'v'.rñ  r¾  )ÚurÁ  rÒ   r  s       r0   Ú"test_hamming_unequal_length_with_wrÄ  p  sE   € Ú€AÚ€AÚ€AØ
;€CÜ	�‰”z¨Ô	-ñ Ü��A�qÔ÷÷ ñ ús   ªAÁA
c                  ó˜   — t        j                  g d¢d¬«      } t        j                  g d¢d¬«      }d}t        t        | |«      |«       y )N)ÚeggsÚspamrÇ  rÆ  rÇ  rÇ  rÇ  rÇ  rÇ  rÇ  rÇ  rÆ  rÆ  rÇ  rÆ  rÆ  rÆ  rÆ  rÆ  rÇ  z|S4rC   )rÆ  rÇ  rÇ  rÆ  rÆ  rÇ  rÇ  rÇ  rÇ  rÆ  rÇ  rÆ  rÇ  rÆ  rÇ  rÇ  rÆ  rÇ  rÇ  rÆ  gÍÌÌÌÌÌÜ?)rV   r¶   r   r¿  )rp   rÐ   Údesireds      r0   Útest_hamming_string_arrayrÉ  y  sM   € ä
�‰ò Bð ô	€Aô 	�‰ò Bð ô	€Að €GÜ”H˜Q “N GÕ,r2   c                  óê   — t        j                  g d¢g d¢g«      } t        | ddd ¬«      }t        | | ddd ¬«      }t        | dd¬«      }t        | | dd¬«      }t	        ||d¬«       t	        ||d¬«       y )N)
çÁQUUÕT@ç      Y@rË  rÌ  g      B@g      N@g     €V@g     Àb@g      8@g      H@r!   rj   )r1   rP  rÒ   )r1   rP  rD  r×  )rV   r¶   r   r   r   )Úarr_inÚp0Úc0Úp1Úc1s        r0   Útest_minkowski_wrÒ  ‡  sy   € ä�X‰Xò 2ò2ð3ó 4€Fô 
ˆv˜k¨Q°$Ô	7€BÜ	ˆv�v k°Q¸$Ô	?€BÜ	ˆv˜k¨QÔ	/€BÜ	ˆv�v k°QÔ	7€Bä�B˜ Õ'Ü�B˜ Ö'r2   c                  ó°  — g d¢} g d¢}t         j                  t         j                  t         j                  t         j                  fD ]o  }t        t        j                  | |¬«      t        j                  ||¬«      «      }t        t        j                  |j                  t         j                  «      «       Œq t         j                  t         j                  t         j                  t         j                  fD ]•  }t        j                  |«      j                   }t        dgt        j                  |g|¬«      «      }t        t        j                  |g|¬«      dg«      }t#        ||«       t#        |t        j$                  |«      dz  «       Œ— t         j&                  t         j$                  t         j(                  t         j*                  g}dD ]2  }t-        t         |«      sŒ|j/                  t1        t         |«      «       Œ4 |D ]N  }t        t        j                  | |¬«      t        j                  ||¬«      «      }t#        |j                  |«       ŒP y )Nrª  )r  rd  r‚  rC   r   r×   )Úfloat16Úfloat128)rV   r  Úint16r  r«  rÚ  Úasarrayr   r³   rD   ÚfloatingÚuint8rÑ  Úuint32Úuint64ÚiinfoÚmaxr	   rµ   r[   Ú	complex64Ú
complex128Úhasattrr»   Úgetattr)rÉ   r5  rD   ÚdÚumaxr¹  rº  Údtypess           r0   Útest_sqeuclidean_dtypesrå  –  s—  € ò 	€AÚ€Aä—'‘'œ2Ÿ8™8¤R§X¡X¬r¯x©xÐ8ò 5ˆÜœŸ™ A¨UÔ3´R·Z±ZÀÈÔ5OÓPˆÜ”—‘˜aŸg™g¤r§{¡{Ó3Õ4ð5ô —(‘(œBŸI™I¤r§y¡y´"·)±)Ð<ò .ˆÜ�x‰x˜‹×"Ñ"ˆÜ˜1˜#œrŸz™z¨4¨&¸Ô>Ó?ˆÜœ"Ÿ*™* d V°5Ô9¸A¸3Ó?ˆä�R˜ÔÜ�RœŸ™ DÓ)¨1Ñ,Õ-ð.ô �j‰jœ"Ÿ*™*¤b§l¡l´B·M±MÐB€FØ(ò .ˆô ”2�uÕØ�M‰Mœ'¤" eÓ,Õ-ð	.ð ò %ˆÜœŸ™ A¨UÔ3´R·Z±ZÀÈÔ5OÓPˆÜ�Q—W‘W˜eÕ$ñ%r2   c                 ó°   — t        j                  g d¢g d¢g d¢g d¢g«      }|j                  «       }t        ||| «       t	        || «       t        ||«       y )Nr  r  r  ©g3333336@gÍÌÌÌÌL7@g333333F@)rV   r×  rµ  r   r   r   )r1   r/  r¸  s      r0   Útest_modifies_inputrè  µ  sM   € ä	�‰’\Ú$Ú$Ú'ð)ó 
*€Bð �g‰g‹i€GÜ	ˆ"ˆb�&ÔÜ	ˆ"ˆfÔÜ�r˜7Õ#r2   c                 óœ  — t        j                  g d¢g d¢g d¢g d¢g«      }t        j                  t        «      5  t        ||| d«       d d d «       t        j                  t        «      5  t        || d«       d d d «       dD ]—  }|t        j                  d«      i}|dk(  r| d	k(  s|d
k(  r| dk(  s
|dk(  r| dk(  rŒ9t        j                  t        «      5  t        ||| fi |¤Ž d d d «       t        j                  t        «      5  t        || fi |¤Ž d d d «       Œ™ y # 1 sw Y   ŒÕxY w# 1 sw Y   Œ²xY w# 1 sw Y   ŒSxY w# 1 sw Y   ŒÈxY w)Nr  r  r  rç  rß   )rP  r‘  r“  r²   r‘  r$   r“  r    rP  r!   )rV   r×  r,  r-  rÎ   r   r   )r1   r/  r6  rí   s       r0   Útest_Xdist_deprecated_argsrê  Á  s9  € ä	�‰’\Ú$Ú$Ú'ð)ó 
*€Bô
 
�‰”yÓ	!ñ "Üˆb�"�f˜bÔ!÷"ô 
�‰”yÓ	!ñ Üˆb�&˜"Ô÷ð  ò (ˆØ”r—z‘z "“~Ð&ˆà�CŠZ˜F lÒ2Ø˜4’K F¨mÒ$;Ø˜3’J 6¨[Ò#8Øä�]‰]œ9Ó%ñ 	,Ü�"�b˜&Ñ+ FÒ+÷	,ô �]‰]œ9Ó%ñ 	(Ü�"�fÑ' Ò'÷	(ð 	(ñ(÷"ð "ú÷ð ú÷	,ð 	,ú÷	(ð 	(ús/   »DÁ+D*ÃD6ÄEÄD'Ä*D3Ä6D?	ÅE	c                 óÞ  — t         d   d d d…d d d…f   }t        j                  |j                  d   «      }|d d d…    |d d d…<   | dv rt	        j
                  d«       | t        | «      d| z   fD ]c  }t	        j                  t        «      5  t        |||¬«       d d d «       t	        j                  t        «      5  t        ||||¬«       d d d «       Œe y # 1 sw Y   Œ=xY w# 1 sw Y   Œ|xY w)	NrK   rd  r×   rj   )r$   r    r   únot applicabler*  ©rÒ   )rX   rV   r’   r‰   r,  r<  r.  r-  ry   r   r   )r1   r]  rÒ   r‰  s       r0   Útest_Xdist_non_negative_weightsrî  Ý  sá   € Ü
Ð Ñ!¡# A #¡s¨ s (Ñ+€AÜ
�‰�—‘˜‘
Ó€AØ‘�!�‰fˆW€A�cˆ€c�FàÐ?Ñ?Ü�‰Ð$Ô%à”d˜6“l G¨fÑ$4Ð5ò  ˆÜ�]‰]œ:Ó&ñ 	Ü�!�Q˜!Õ÷	ä�]‰]œ:Ó&ñ 	 Ü�!�Q˜˜QÕ÷	 ð 	 ñ ÷	ð 	ú÷	 ð 	 ús   ÂCÂ<C#ÃC 	Ã#C,	c                  óò  — g d¢} t        | «      }t        || «       t        | t        j                  ¬«      }t        || «       t	        |j
                  t        j                  «       dg} t        | «      }t	        |j                  d«       t	        || «       d} t        j                  t        d¬«      5  t        | «       d d d «       t        j                  d«      j                  ddd«      } t        j                  t        d¬«      5  t        | «       d d d «       ddgd	d
gg} t        j                  t        d¬«      5  t        | «       d d d «       y # 1 sw Y   Œ–xY w# 1 sw Y   ŒMxY w# 1 sw Y   y xY w)Nrª  rC   rj   zInput vector should be 1-Drñ  rd  r   r×   rà   r  )r   r   rV   rµ   r	   rD   rs   r,  r-  ry   r+  r¬   rÀ  s     r0   Útest__validate_vectorrð  ì  s0  € Ú€AÜ˜Ó€AÜ�q˜!Ôä˜¤"§*¡*Ô-€AÜ�q˜!ÔÜ�—‘œ"Ÿ*™*Ô%à	
ˆ€AÜ˜Ó€AÜ�—‘˜ÔÜ��AÔà	€AÜ	�‰”zÐ)EÔ	Fñ Ü˜Ô÷ô 	�	‰	�!‹×Ñ˜Q  AÓ&€AÜ	�‰”zÐ)EÔ	Fñ Ü˜Ô÷ð ˆQˆ�!�Q�Ð€AÜ	�‰”zÐ)EÔ	Fñ Ü˜Ô÷ð ÷ð ú÷ð ú÷ð ús$   Â4EÄ	E!Å E-ÅEÅ!E*Å-E6c                  óà   — t        j                  dt        ¬«      } t        | d   | d   «      }|dk(  sJ ‚t	        | d«      }t        |dg«       t        | d d | d d d«      }t        |dgg«       y )N)r×   r‚  rC   r   rf  r'   rj   )rV   r’   r  r”  r   r	   r   )rÉ   râ  s     r0   Útest_yule_all_samerò    sq   € ä
�‰�œdÔ#€AÜˆa�‰d�A�a‘DÓ€AØ�Š8€Oˆ8äˆa�Ó€AÜ��S�EÔäˆa��ˆe�Q�r˜�U˜FÓ#€AÜ��c�U�GÕr2   c                  ó†  — t        t        g d¢g d¢d«      d«       t        t        ddgddg«      d«       t        t        g d¢g d¢«      d«       t        t        ddggddggd	¬
«      ddg«       t        t        ddggddggd¬
«      dg«       t        t        ddggddggd	d¬«      ddgg«       t        t        ddggddggdd¬«      dgg«       t        j                  g d¢g d¢g d¢g«      } t        j                  g d¢g d¢g d¢g«      }t        t        | |d	¬
«      g d¢«       t        t        | |d¬
«      g d¢«       y )N)r²   rf  rf  )rf  r²   rf  rß   r²   rf  rh  g)>ÎdºÝ?rÐ  r   r~   rj   gÆüÜÐ”�°?T)r{   Úkeepdims)rj   r×   rà   r  )rd  r‚  é   rd   )é	   r¼  é   é   )é   rÝ  r±  r-  )é   é   é   é   )é   é   é   é   )gº'Y˜ÏÉ?gTÒyCÐ‡Â?g¥F�®w$½?gœ\BôZ¿·?)g;0%7/óÁ?g�‡ƒ)o¤?gkØï‰uª”?)r
   r   rV   r¶   )rp   rÐ   s     r0   rv  rv    sS  € Üœ¢o²ÈÓLØôäœ s¨C j°3¸°*Ó=Ø+ô-äœ¢o²ÓGÈÔMäœ¨¨S z l°c¸3°Z°LÀqÔIØ˜c˜
ô$äœ¨¨S z l°c¸3°Z°LÀqÔIØ"˜ô%äœ¨¨S z l°c¸3°Z°LÀqØ/3ô5Ø8;¸S°z°lôDäœ¨¨S z l°c¸3°Z°LÀqØ/3ô5Ø8A°{°môEô 	�‰’,ÚÚ!ð#ó 	$€Aô 	�‰Ò"Ú"Ú"ð$ó 	%€Aô œ a¨°Ô3ÚDôFäœ a¨°Ô3Ú9õ;r2   c                  ó.  — t        j                  g d¢«      } t        j                  g d¢«      }t        | |«      }t        | |gd¬«      }t	        ||«       t        t        j                  | «      t        j                  |«      d¬«      }t	        ||«       y )N)rj   r   r   )r×   r   r   r   re  )rV   r¶   r   r   r   r   r–  )Úarr_1Úarr_2ÚexpectedÚactuals       r0   Útest_gh_17703r  0  sq   € Ü�H‰H’YÓ€EÜ�H‰H’YÓ€EÜ�E˜5Ó!€HÜ�E˜5�>¨&Ô1€FÜ�F˜HÔ%Ü”2—=‘= Ó'Ü—=‘= Ó'°ô8€Fä�F˜HÕ%r2   c                 óþ   — | dv rt        j                  d«       t        j                  dt        j                  ¬«      }|j                  d¬«        t        t        j                  j                  | «      |||¬«       y )N)r   r    r$   rì  r¼  rC   F)Úwriterí  )
r,  r<  rV   r+  rµ   Úsetflagsrá  ÚscipyÚspatialÚdistance)r1   rÉ   s     r0   Útest_immutable_inputr  ;  sY   € ØÐ?Ñ?Ü�‰Ð$Ô%Ü
�	‰	�"œBŸJ™JÔ'€AØ‡J�J�U€JÔØ+„GŒE�M‰M×"Ñ" FÓ+¨A¨q°AÖ6r2   c                  óD  — t        j                  g d¢«      } t        j                  g d¢«      }t        j                  g d¢«      }t        | ||¬«      }t	        |d«       t        t        j                  | «      t        j                  |«      d|¬«      }t	        ||«       y )N)r   r   rj   rj   )r   rj   rj   r   )rÐ  r  gffffffæ?gÍÌÌÌÌÌô?rí  gã2)^ ó?r'   )r1   rÒ   )rV   r¶   r×  r'   r   r   r–  )rp   rÐ   rÒ   r  r  s        r0   Útest_gh_23109r  C  sw   € Ü
�‰’Ó€AÜ
�‰’Ó€AÜ
�
‰
Ò'Ó(€AÜ�A�q˜AŒ€HÜ�HÐ0Ô1Ü”2—=‘= Ó#Ü—=‘= Ó#Ø  Aô'€Fô �F˜HÕ%r2   c                   óN   — 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y)ÚTestJaccardc                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nrr  rH   úpdist-jaccardr   r×  r  rÚ  s        r0   Útest_pdist_jaccard_randomz%TestJaccard.test_pdist_jaccard_randomQ  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  r	  rÚ  s        r0   Ú!test_pdist_jaccard_random_float32z-TestJaccard.test_pdist_jaccard_random_float32X  ó=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nrr  rH   r  Útest_jaccardr×  r  rå  s        r0   Útest_pdist_jaccard_random_nonCz*TestJaccard.test_pdist_jaccard_random_nonC_  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  rg  rÚ  s        r0   Útest_pdist_djaccard_randomz&TestJaccard.test_pdist_djaccard_randomf  r  r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  r	  rÚ  s        r0   Ú"test_pdist_djaccard_random_float32z.TestJaccard.test_pdist_djaccard_random_float32m  r  r2   c                 óˆ   — d}t        t        j                  d«      d«      }t        t        j                  d«      ||¬«       y )NrD  ©rd  rà   r   r¼  r×  ©r   rV   r  r   ©r  rL  r  s      r0   Útest_pdist_djaccard_allzerosz(TestJaccard.test_pdist_djaccard_allzerost  s0   € ØˆÜ”"—(‘(˜6Ó" IÓ.ˆÜœŸ™ › a¨cÖ2r2   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  rg  rå  s        r0   Útest_pdist_djaccard_random_nonCz+TestJaccard.test_pdist_djaccard_random_nonCy  s=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r2   c                 óˆ   — d}t        t        j                  d«      d«      }t        t        j                  d«      ||¬«       y )NrD  r#  r  r¼  r×  r$  r%  s      r0   Ú!test_pdist_djaccard_allzeros_nonCz-TestJaccard.test_pdist_djaccard_allzeros_nonC€  s0   € ØˆÜ”"—(‘(˜6Ó" NÓ3ˆÜœŸ™ › a¨cÖ2r2   c                 ó0  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t	        |ddd¬«       t	        |ddd¬«       y r€  ©ÚwjaccardrV   r¶   r  r   rˆ  s      r0   Útest_pdist_jaccard_mtica1z%TestJaccard.test_pdist_jaccard_mtica1…  sd   € Ü”R—X‘XšoÓ.Ü—X‘XšoÓ.ó0ˆä”b—h‘hš´dÔ;Ü—h‘hš´dÔ;ó=ˆä˜˜3 Q¨UÕ3Ü˜˜C a¨eÖ4r2   c                 ó0  — t        t        j                  g d¢«      t        j                  g d¢«      «      }t        t        j                  g d¢t        ¬«      t        j                  g d¢t        ¬«      «      }t	        |ddd¬«       t	        |ddd¬«       y r�  r,  rˆ  s      r0   Útest_pdist_jaccard_mtica2z%TestJaccard.test_pdist_jaccard_mtica2�  sd   € Ü”R—X‘XšiÓ(Ü—X‘XšiÓ(ó*ˆä”b—h‘hšy´Ô5Ü—h‘hšy´Ô5ó7ˆä˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r2   c                 ó>  — t        j                  g d¢«      }t        j                  g d¢«      }t        j                  t        «      j                  }t        t        ||«      d|¬«       t        t        |g|gd«      dgg«       t        t        ||gd«      dg«       y )N)iöÿÿÿg      @r   )r×   éûÿÿÿr×   r°  r×  r   )	rV   r¶   rì  rã  rL  r   r   r   r   )r  rÉ   r5  rL  s       r0   Útest_non_01_inputzTestJaccard.test_non_01_input•  sw   € ô �H‰H’]Ó#ˆÜ�H‰H’]Ó#ˆÜ�h‰h”u‹o×!Ñ!ˆÜœ  1› s°Õ5Üœ˜q˜c A 3¨	Ó2°c°U°GÔ<Üœ˜q !˜f iÓ0°3°%Õ8r2   N)rë   rs  rt  r  r  r  r  r!  r&  r(  r*  r.  r0  r3  rg   r2   r0   r  r  O  s9   „ ò4ò4ò4ò4ò4ò3ò
4ò3ò
5ò7ó9r2   r  c                   ó<   — e Zd Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Zd„ Z	d„ Z
y	)
ÚTestChebyshevc                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nrr  rÕ  úpdist-chebyshevr   r×  rô  rÚ  s        r0   Útest_pdist_chebyshev_randomz)TestChebyshev.test_pdist_chebyshev_random¢  s5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ˜˜;Ó'ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Nr�  rÕ  r7  r   r×   rH  rs  rÚ  s        r0   Ú#test_pdist_chebyshev_random_float32z1TestChebyshev.test_pdist_chebyshev_random_float32©  sD   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ˜˜;Ó'ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nrr  rÕ  r7  Útest_chebyshevr×  rô  rå  s        r0   Ú test_pdist_chebyshev_random_nonCz.TestChebyshev.test_pdist_chebyshev_random_nonC°  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ˜Ð+Ó,ˆÜ˜ ¨sÖ3r2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrZ  ré  úpdist-chebyshev-irisr   r×  rô  rÚ  s        r0   Útest_pdist_chebyshev_irisz'TestChebyshev.test_pdist_chebyshev_iris·  s3   € ØˆÜˆv‰JˆÜÐ+Ñ,ˆÜ˜˜;Ó'ˆÜ˜ ¨sÖ3r2   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÄ   ré  r?  r   r×   rH  rs  rÚ  s        r0   Ú!test_pdist_chebyshev_iris_float32z/TestChebyshev.test_pdist_chebyshev_iris_float32¾  sB   € ØˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ+Ñ,ˆÜ˜˜;Ó'ˆÜ˜ ¨s¼GÀa¹KÖHr2   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrZ  ré  r?  r<  r×  rô  rå  s        r0   Útest_pdist_chebyshev_iris_nonCz,TestChebyshev.test_pdist_chebyshev_iris_nonCÅ  s4   € ØˆÜˆv‰JˆÜÐ+Ñ,ˆÜ˜Ð+Ó,ˆÜ˜ ¨sÖ3r2   c                 óº   — g d¢}g d¢}g d¢}t        t        |||«      d«       t        t        ||gd|¬«      dg«       t        t        |g|gd|¬«      dgg«       y )Nrª  ©r‚  rd  r  )r   rj   rd  rà   r   rí  ©r	   r   r   r   ©r  rÉ   r5  rÒ   s       r0   Útest_weightedzTestChebyshev.test_weightedÌ  s\   € ò ˆÚˆÚˆÜ”Y˜q ! QÓ'¨Ô+Ü”U˜A˜q˜6 ;°!Ô4°q°cÔ:Ü”U˜A˜3   [°AÔ6¸!¸¸Õ>r2   c                 óº   — g d¢}g d¢}g d¢}t        t        |||«      d«       t        t        ||gd|¬«      dg«       t        t        |g|gd|¬«      dgg«       y )Nrª  rF  r·  r   r   rí  rG  rH  s       r0   Útest_zero_weightzTestChebyshev.test_zero_weightÖ  sZ   € âˆÚˆÚˆÜ”Y˜q ! QÓ'¨Ô+Ü”U˜A˜q˜6 ;°!Ô4°q°cÔ:Ü”U˜A˜3   [°AÔ6¸!¸¸Õ>r2   N)rë   rs  rt  r8  r:  r=  r@  rB  rD  rI  rK  rg   r2   r0   r5  r5     s,   „ ò4òIò4ò4òIò4ò?ó?r2   r5  zfunc,pg      @rŠ   c                 ó.  — t         j                  j                  d«      } t        dddd«      | «      }|j                  d«      }|j                  d«      }|r|j                  d«      nd }|€d	|in||d
œ} | ||fi |¤Ž}	 |||fi |¤Ž}
t	        |	|
«       y )Nl   Þn�nƒ)rÃ  rj   )rÁ  rj   )rP  rj   )rÒ   rj   )rd  r×   r  )r×   r  r  rÒ   )rP  rÒ   )rV   r·   Údefault_rngr(   r   )rî  rP  rŠ   ÚrngÚref_funcrÃ  rÁ  rÒ   rí   ÚresrÀ  s              r0   Útest_distance_ndrQ  à  s�   € ô �)‰)×
Ñ
 Ó
.€CØHÔ  ¨8°X¸xÓHÈÓN€Hà�
‰
�9Ó€AØ�
‰
�6Ó€AÙ ˆ�
‰
�1Œ d€AØ˜ˆc�1‰X¨a°aÑ(8€Fá
ˆq�!Ñ
�vÑ
€CÙ
�1�aÑ
"˜6Ñ
"€Cä�C˜Õr2   rl   )	NNFTFFFFN)Ú	functoolsr   r   Úos.pathrP   r:  rÉ  ré   r¿  ÚnumpyrV   Únumpy.linalgr   Únumpy.testingr   r   r   r	   r
   r   r,  Úscipy.spatial.distancer  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'   Úscipy._lib._utilr(   Úscipy.conftestr)   Úfixturer1   rN   r¶   Ú_tdistÚ_ytdistrX   rb   rh   r|   r    r“   r”   rÃ   Úassert_allclose_forgivingrÏ   r	  r_  rK  r  rÙ  r¨  r‡  r¿  r”  rš  Ú
wcityblockÚ
wchebyshevrß  râ  r-  r×  rÚ  r´  r®  r¤  r®  r  rÌ  rË  rù  r  rC  rY  r[  r‡  r‰  rÅ  rÆ  r¦  r¨  r³  rµ  r»  rÁ  rÄ  rÉ  rÒ  rå  rè  rê  rî  rð  rò  rv  r  r  r  r  r5  rÇ  rQ  rg   r2   r0   ú<module>r`     sÛ  ð÷F %Û Û 
Û Û Û ã Ý ÷A÷ Aó ã ÷&÷ &õ &÷D÷ D÷ D÷ D÷ Dñ Dõ /Ý .ð €‡��~¨YÔ7ñó 8ðò€
ð@ 
ˆ�‰Ò/Ú2Ú2Ú2Ú2Ú2ð4ð
 <Dô
E€ñ �VÓ
€ð
 €ò>ñ Ô ò#óð -1Ø7;Ø+0Ø/4Øó	-$ò`òóñ8 $ O¸$Ô?Ð ð '@Ù! TóBð   !¨t¹ÐQTØ ¨Ø"¨t¸dØ#¨d¸EÐPUØ"¨c¸Ø#<ócñL 
˜¨Q¸Ô	>€Ù! %°aØ*/¸EôC€á	˜¨Q¸ÀaÔ	H€Ù! %°aÀØ-2¸1ô>€á! .Ó1€Ù& w¸Ô?Ð ?€	ˆHÙ˜Ó€Ù˜Ó€Ù˜YÓ'€
Ù˜YÓ'€
Ù
˜&Ó
!€Ù˜{Ó+€Ù˜7Ó#€Ù˜Y°5Ô9€
Ù˜{°uÔ=€Ù˜jÓ)€Ù˜H°Ô7€	Ù˜{Ó+€Ù˜jÓ)€÷aAñ aA÷H	I?ñ I?÷VP4ñ P4÷f@-ñ @-÷F32ñ 32÷l $ñ  $òF&÷F+ñ F+òR%÷6ñ 6ðr ‡�×Ñ˜Ò0Ó1ñ-ó 2ð-òBò;òRò/ò$òò-ò(ò%ò>	$ò(ò8 òò4
ò;ò:&ò7ò	&÷N9ñ N9÷b=?ñ =?ð@ ‡�×ÑØà	�AˆØ	�AˆØ	�CÐØ	�B—F‘FÐØ	�DÐØ	�dÐðó
ð ‡�×Ñ˜ T¨5 MÓ2ñó 3ó
ñr2   