Ë
    âQ(hTW ã                   óª  — d dl Z d dlZd dlmZm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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/m0Z0m1Z1m2Z2m3Z3m4Z4m5Z5 d dl6m7Z7m8Z8  ejr                  e d¬	«      d
„ «       Z:g d¢Z; ejx                  g d¢g d¢g d¢g d¢g d¢g d¢gd¬«      Z= ee=«      Z>i Z?d„ Z@ e@«        d„ ZAd]d„ZB	 	 	 	 	 d^d„ZCd„ ZDd„ ZEd]d„ZF eed¬«      ZGeGd„ dfd „ZHd!dd"„ d#ddddddddddd$d eGfd%„ZI G d&„ d'«      ZJd(eKfd)„ZL eIed*d¬+«      ZM eIed*dd¬,«      ZN eIed*dd*¬-«      ZO eIed*ddd*¬.«      ZP eIe/«      ZQ eIe)d¬/«      xZRZS eIe5«      ZT eIe'«      ZU eIe$«      ZV eIe#«      ZW eIe&«      ZX eIe%«      ZY eIe,«      ZZ eIe*«      Z[ eIe(d¬0«      Z\ eIe4d¬0«      Z] eIe!«      Z^ eIe"d¬0«      Z_ eIe3«      Z` eIe2«      Za eIe0«      Zb G d1„ d2«      Zc G d3„ d4«      Zd G d5„ d6«      Ze G d7„ d8«      Zf G d9„ d:«      Zg G d;„ d<«      Zhd=„ Zi G d>„ d?«      Zjd@„ Zk G dA„ dB«      ZlejÚ                  jÝ                  dCg dD¢«      dE„ «       ZodF„ ZpdG„ ZqdH„ ZrdI„ ZsdJ„ ZtdK„ ZudL„ ZvdM„ ZwdN„ ZxejÚ                  jò                  dO„ «       ZzejÚ                  jò                  dP„ «       Z{ejÚ                  jò                  dQ„ «       Z|ejÚ                  jò                  dR„ «       Z}ejÚ                  jò                  dS„ «       Z~dT„ ZdU„ Z€dV„ Z�dW„ Z‚ejÚ                  jò                  dX„ «       Zƒ G dY„ dZ«      Z„ G d[„ d\«      Z…y)_é    N)ÚwrapsÚpartial)Únorm)ÚverboseÚassert_Úassert_array_equalÚassert_equalÚassert_almost_equalÚassert_allcloseÚbreak_cyclesÚIS_PYPY)	Ú
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Úkulczynski1ÚmahalanobisÚ	minkowskiÚrogerstanimotoÚ
russellraoÚ
seuclideanÚsokalmichenerÚsokalsneathÚsqeuclideanÚyule)Únp_longÚnp_ulongÚsession)ÚparamsÚscopec                 ó   — | j                   S )z;
    Fixture for all metrics in scipy.spatial.distance
    )Úparam)Úrequests    ú_/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/scipy/spatial/tests/test_distance.pyÚmetricr5   D   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  éÿ   éœ  éä  )r7   r   é'  éÔ  é  é�  )r8   r<   r   éò  é4  éŠ   )r9   r=   r@   r   éÛ   ée  )r:   r>   rA   rC   r   é�  )r;   r?   rB   rD   rE   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        t        d	   «      t        d	<   t        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_Úfloat32r,   r-   )ÚfnÚnameÚfqfnÚfps       r4   Úload_testing_filesrd   {   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ÐÑÜ#¤BÐ'8Ñ$9Ó:„BÐÑÜ%¤bÐ);Ñ&<Ó=„BÐÒr6   c                  óF   — t        j                  d«      j                  dk  S )Nr   é   )rZ   ÚintpÚitemsize© r6   r4   Ú	_is_32bitrj   Œ   s   € Ü�7‰7�1‹:×Ñ Ñ"Ð"r6   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)rZ   Ú
atleast_1d©Ú.0Úas     r4   ú	<genexpr>z _chk_asarrays.<locals>.<genexpr>—   s   è ø€ Ò4¨”2—=‘= ×#Ñ4ùs   ‚!c              3   óV   •K  — | ]   }|j                   ‰d    j                   k(  –— Œ" y­w)r   N)Úndim)rq   rr   Úarrayss     €r4   rs   z _chk_asarrays.<locals>.<genexpr>™   s"   øè ø€ Ò<°�1—6‘6˜V A™YŸ^™^Õ+Ñ<ùs   ƒ&)z(array ndim must be the same for neg axis)rZ   Ú
asanyarrayru   ÚravelÚtupleÚallÚ
ValueErrorÚrange)rv   Úaxisrr   s   `  r4   Ú_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rn   )rZ   ÚmaÚgetmaskÚnomaskrp   s     r4   rs   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rn   )rZ   rƒ   Úmasked_invalid)rq   rr   Úhas_nans      r4   rs   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rn   ©Úshape)rq   rr   r}   Úweightss     €€r4   rs   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)rZ   Útake)rq   rr   r}   Úpos_weightss     €€r4   rs   z_chk_weights.<locals>.<genexpr>È   s!   øè ø€ ÒNÀ!œ2Ÿ7™7 1 k¸×=Ð=ÑNùs   ƒ"%rl   )r~   ÚanyrZ   ÚisnanÚsumry   Úziprw   Úonesr‹   Ú_freq_weightsÚ_weight_maskedrz   r{   ÚnonzeroÚsize)rv   rŒ   r}   Úforce_weightsÚsimplify_weightsÚpos_onlyÚ	neg_checkÚ
nan_screenÚmask_screenÚddofÚchkedrr   Úhas_nansr�   s    ``          @r4   Ú_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�   r{   )rŒ   Úint_weightss     r4   r•   r•   Ï   sD   € Ø€ØˆØ—.‘.¤Ó%€KØ�;Ñ×#Ñ#Ô%ÜÐKÈGÈ9ÐUÓVÐVØÐr6   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   rl   c              3   ó.   •K  — | ]  }|‰k7  sŒ	|–— Œ y ­wrn   ri   )rq   Úir}   s     €r4   rs   z!_weight_masked.<locals>.<genexpr>á   s   øè ø€ ÒC 1¸¸d»œQÑCùs   ƒ
Žr€   )rZ   rw   rƒ   r„   r…   ru   ry   r|   r�   r¤   r¥   )rv   rŒ   r}   rr   Ú	axis_maskÚnot_axess     `   r4   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×'Ñ'¬Ó,Ñ,Ñ,‰ð-ð €Nr6   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 )NrG   c                 óî   — t        j                  t        j                  | ||¬«      «      }|j                  t	        | j
                  «      D �cg c]  }||k7  r| j                  |   nd‘Œ c}«      S c c}w )Nr€   rl   )rZ   rw   rŽ   Úreshaper|   ru   r‹   )rr   Úixr}   Úrecordr©   s        r4   Ú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rn   rŠ   )rq   rr   r}   Ún_obss     €€r4   rs   z_rand_split.<locals>.<genexpr>ö   s   øè ø€ Ò6¨!ˆq�w‰w�t‰} Õ%Ñ6ùs   ƒz#data must be aligned on sample axisç      ð?r€   )rZ   Ú
issubdtyperH   Úintegerr¤   Úfloat64ÚarrayÚrandomÚRandomStater‹   rz   r|   r¥   ÚrandintÚrandÚappend)rv   rŒ   r}   Ú	split_perÚseedÚarrÚseeded_randr±   r©   Úsplit_ixÚprev_wÚqrr   r³   s     `          @r4   Ú_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 rn   ri   ©Úxs    r4   ú<lambda>rÌ     s   €  € r6   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)rZ   r¸   r�   ÚAttributeErrorÚ	TypeErrorr{   r“   Ú_rough_check)	rr   ÚbrÎ   ÚkeyÚwÚcheck_aÚcheck_bÚa_iÚb_is	            r4   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 rn   ri   rÊ   s    r4   rÌ   rÌ     s   € À1€ r6   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¢   rZ   ro   Úsqueezery   rÑ   Ú	ExceptionÚtyperÅ   r˜   Úsliceru   Únanrƒ   r‡   r½   ÚNotImplementedErrorÚwarningsÚwarnÚ__name__)&ÚargsÚkwargsÚresultrv   ÚrestrŒ   r}   r    rr   Ú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&                        €€€€€€€€€€€€€€€€€r4   Ú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   `````````````````  r4   Ú_weight_checkedr    s3   ÿÿø€ ô ˆ2ƒY÷Y÷ Yó Yó ðYðt €Nr6   c                   ó   — e Zd Zd„ Zd„ Zy)ÚDummyContextManagerc                  ó   — y rn   ri   ©Úselfs    r4   Ú	__enter__zDummyContextManager.__enter__}  ó   € Ør6   c                  ó   — y rn   ri   )r  rî   s     r4   Ú__exit__zDummyContextManager.__exit__  r  r6   N)rí   Ú
__module__Ú__qualname__r  r  ri   r6   r4   r  r  |  s   „ òór6   r  r5   c                 óF   — | dv rt        j                  «       S t        «       S )N)r"   r(   )ÚpytestÚdeprecated_callr  ©r5   s    r4   Úmaybe_deprecatedr  ƒ  s#   € ØÐ1Ñ1Ü×%Ñ%Ó'Ð'ä"Ó$Ð$r6   rl   )rÿ   rå   )rÿ   rå   rþ   )rÿ   rå   r  )rÿ   rå   rþ   r  )r   )rþ   c                   óŒ  — e Zd Zd„ Zej
                  j                  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                  d„ «       Zej
                  j                  d„ «       Zej
                  j                  d„ «       Zy)Ú	TestCdistc                 ó  — g d¢| _         t        t        t        j                  t        j
                  gt        t        j                  t        j
                  gt        j                  t        j
                  gt        j
                  gdœ| _        y ©N)rO   rP   rQ   rN   rM   )ÚboolÚuintr¥   r_   ©Úrnd_eo_namesr-   r,   rZ   r_   r·   Úvalid_upcastsr  s    r4   Úsetup_methodzTestCdist.setup_method¥  óW   € ò1ˆÔô (0´¼"¿*¹*ÄbÇjÁjÐ&QÜ'.´·
±
¼B¿J¹JÐ&GÜ&(§j¡j´"·*±*Ð%=Ü*,¯*©*¨ñ7ˆÕr6   c           	      óF  — 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        |«      5  t        ||fd|i|¤Ž d d d «       d d d «       t        j                  t        «      5  t        |«      5  t        ||fdt        |«      i|¤Ž d d d «       d d d «       t        j                  t        «      5  t        |«      5  t        ||fdd|z   i|¤Ž d d d «       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   �ŒKxY w# 1 sw Y   �ŒPxY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒèxY w# 1 sw Y   ŒìxY w# 1 sw Y   ŒÆxY w# 1 sw Y   Œ—xY w# 1 sw Y   y xY w)N©r´   rá   ç      @©ç333333ó?çffffff@ç333333@©çš™™™™™@r,  çš™™™™™@©g      @ç      @g       @©g      @ç333333@gÍÌÌÌÌÌ @©g      @r4  r0  ç…ëQ¸	@râ   ©ÚN0tV4l1D_p4raMrÔ   éÈ   r5   Útest_)rZ   Úaranger  ÚraisesrÐ   r  r   Úeval)r  r5   ÚX1ÚX2rï   rî   s         r4   Útest_cdist_extra_argszTestCdist.test_cdist_extra_args®  só  € ò šOª_Ð=ˆÚšOª_Ð=ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	7Ü! &Ó)ñ 7Ü�b˜"Ñ6 VÐ6¨vÒ6÷7÷	7ô �]‰]œ9Ó%ñ 	=Ü! &Ó)ñ =Ü�b˜"Ñ<¤T¨&£\Ð<°VÒ<÷=÷	=ô �]‰]œ9Ó%ñ 	AÜ! &Ó)ñ AÜ�b˜"Ñ@ W¨vÑ%5Ð@¸Ò@÷A÷	Aô �]‰]œ9Ó%ñ 	0Ü�"�bÐ/¨$Ò/ Ò/÷	0ä�]‰]œ9Ó%ñ 	6Ü�"�bÐ5°Ò5¤ f£Ò5÷	6ä�]‰]œ9Ó%ñ 	:Ü�"�bÐ9°DÒ9 ¨6Ñ!1Ò9÷	:ð 	:÷7ñ 7ú÷	7ñ 	7ú÷=ñ =ú÷	=ñ 	=ú÷Að Aú÷	Að 	Aú÷	0ð 	0ú÷	6ð 	6ú÷	:ð 	:ús�   ÁG ÁF3Á*G ÂGÂGÂ8GÃ!G3Ã-G'Ä G3Ä)G?ÅHÆHÆ3F=	Æ8G Ç G
ÇG	ÇGÇG$Ç'G0	Ç,G3Ç3G<Ç?HÈHÈH 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)Nrl   rÙ   c                 ó   — ||z   |z   S rn   ri   ©rË   ÚyÚargÚkwargÚkwarg2s        r4   Ú
_my_metricz:TestCdist.test_cdist_extra_args_custom.<locals>._my_metricÊ  ó   € Ø˜‘; Ñ'Ð'r6   r(  r*  r.  r1  r3  r5  r6  râ   r7  r9  r/  çffffff
@©rF  rG  ©rF  çš™™™™™ñ?©r5   rE  rG  çš™™™™™@©rl   rÙ   )rZ   r;  r  r<  rÐ   r   r   )r  rH  r>  r?  rï   rî   s         r4   Ú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   ©r\   Úwcdist_no_constr   r   )r  Úepsr>  r?  ÚY1ÚY2s         r4   Ú#test_cdist_euclidean_random_unicodez-TestCdist.test_cdist_euclidean_random_unicodeë  sH   € ØˆÜ�
‰^ˆÜ�
‰^ˆÜ˜R  [Ó1ˆÜ˜R Ð%5Ó6ˆÜ˜˜B S´'¸A±+Ö>r6   Ú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Â%<=rT  rU  r$   ©r_  Útest_minkowskir   rÙ   )rÈ   rX  r   rY  )r  r_  r[  r>  r?  r\  r]  s          r4   Útest_cdist_minkowski_randomz%TestCdist.test_cdist_minkowski_randomó  sP   € ð ˆÜ�
‰^ˆÜ�
‰^ˆÜ˜R  [°AÔ6ˆÜ˜R Ð%5¸Ô;ˆÜ˜˜B Q¨S¼'ÀA¹+ÖFr6   c                 óâ   — d}t         d   }t         d   }t        ||d«      }d„ }dt        j                  | ||«      z  | ||«      z  j                  «      z
  }t        |||t        dkD  ¬«       y )	Nç›+¡†›„=rT  rU  r   c                 ód   — t         j                  j                  | d¬«      j                  dd«      S )Nrl   r€   r�   )rZ   Úlinalgr   r®   )ÚXs    r4   Únormsz1TestCdist.test_cdist_cosine_random.<locals>.norms  s&   € Ü—9‘9—>‘> !¨!�>Ó,×4Ñ4°R¸Ó;Ð;r6   rl   rÙ   rW  )r\   ÚwcdistrZ   ÚdotÚTr   r   )r  r[  r>  r?  r\  rm  r]  s          r4   Útest_cdist_cosine_randomz"TestCdist.test_cdist_cosine_randomý  sk   € ØˆÜ�
‰^ˆÜ�
‰^ˆÜ�B˜˜HÓ%ˆò	<ð ”—‘˜™e B›i™¨2±°b³	©>×*<Ñ*<Ó=Ñ=ˆä˜˜B S´'¸A±+Ö>r6   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#   r  ç        ç      @ç      à?r   r�   rl   rÝ   )rZ   r¸   r   r   Úsqrtr  r<  r{   )r  Úx1Úx2ÚdistÚrt2s        r4   Ú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í   r  r  ri   r6   r4   Úmyclassr    ó   „ Ør6   r�  c                 óX   •— t        | d   ‰«      rt        |d   ‰«      st        d«      ‚y©Nr   zType has been changedç+‡ÙÎ÷ñ?©Ú
isinstancer{   ©rË   rD  r�  s     €r4   rH  z9TestCdist.test_cdist_custom_notdouble.<locals>._my_metric!  ó-   ø€ Ü˜a ™d GÔ,´J¸qÀ¹tÀWÔ4MÜ Ð!8Ó9Ð9Ør6   rG   r  r…  rÙ   ©r   )rZ   r¸   Úobjectr   r	   r   )r  rH  rK   Úcdist_yÚright_yr�  s        @r4   Útest_cdist_custom_notdoublez%TestCdist.test_cdist_custom_notdouble  sM   ø€ ÷	ñ 	ô	ô �x‰x™'›)˜˜¬VÔ4ˆÜ˜˜d¨:Ô6ˆØˆÜ�W˜g¬w¸©{Ö;r6   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©Nr5   r:  rÙ   rW  )
r   r=  r   r   ræ   Ú	__class__Úprintrí   r  r<  )r  r>  r?  r5   r[  rï   Úy1Úy2Úy3rò   Úe_clss              r4   Ú_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 )Nrs  rÝ   rl   rÙ   ú	testing: ú with: >   r   r+   r&   r"   r)   r(   r%   r   r'   r   ©r}   rŸ   ©ÚVr#   ©ÚVI)r#  r\   r   r’  r—  rZ   Úvstackr¤   r·   ÚvarÚ
atleast_2dÚcovrp  r¸   rk  Úinv)r  r5   Úeo_namer>  r?  ÚX12r�  rŸ  s           r4   Útest_cdist_calling_conventionsz(TestCdist.test_cdist_calling_conventions?  sc  € ð ×(Ñ(ó 	GˆGô �G‘™S˜q˜S¡$ B $˜YÑ'ˆBÜ�G‘˜Q˜T ˜T¡3 Q 3˜YÑ'ˆBÜ˜Š{Ü�k 6¨9°gÔ>Øð )ñ )ð .4¸7Ñ-BàØ×+Ñ+¨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ñ3	Gr6   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>rM   r   rQ   r!  rP   r¥   rO   r_   r   rs  rÝ   rl   rÙ   r  rW  )r\   r$  r   r   r   ræ   r‘  r’  rí   r  r<  )r  r5   r[  ÚtestsÚtestr>  r?  r“  Únew_typer”  rò   r–  ÚX1newÚX2news                 r4   Útest_cdist_dtype_equivalencez&TestCdist.test_cdist_dtype_equivalence^  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-c                 ó@  — d}t         d   }t         d   }|j                  d   |j                  d   }}t        «       }|dk(  rd|d<   t        j                  ||ft        j
                  ¬«      }t        |«      5  t        |||fi |¤Ž}	d d d «       t        |«      5  t        |||fd	|i|¤Ž}
d d d «       t        	
|t        d
kD  ¬«       t        |
|u «       t        j                  |dz
  |dz   ft        j
                  ¬«      }t        j                  t        «      5  t        |«      5  t        |||fd	|i|¤Ž d d d «       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        |«      5  t        |||fd	|i|¤Ž d d d «       d d d «       t        j                  t        «      5  t        |«      5  t        |||fd	|i|¤Ž d d d «       d d d «       t        j                  ||ft        j                  ¬«      }t        j                  t        «      5  t        |«      5  t        |||fd	|i|¤Ž d d d «       d d d «       y # 1 sw Y   �ŒxY w# 1 sw Y   �ŒxY w# 1 sw Y   �Œ†xY w# 1 sw Y   �Œ‹xY w# 1 sw Y   ŒùxY w# 1 sw Y   ŒýxY w# 1 sw Y   ŒËxY w# 1 sw Y   ŒÏxY w# 1 sw Y   ŒvxY w# 1 sw Y   y xY w)NrS  rT  rU  r   r$   rb  r_  rG   ÚoutrÙ   rW  rl   ÚF)rH   Úorder)r\   r‹   ÚdictrZ   Úemptyr·   r  r   r   r   r   r  r<  r{   Úint64)r  r5   r[  r>  r?  Úout_rÚout_crï   Úout1r\  r]  Úout2Úout3Úout4Úout5s                  r4   Útest_cdist_outzTestCdist.test_cdist_outy  sÔ  € ð ˆÜ�
‰^ˆÜ�
‰^ˆØ—x‘x ‘{ B§H¡H¨Q¡Kˆuˆä“ˆØ�[Ò ØˆF�3‰KÜ�x‰x˜ ˜¬b¯j©jÔ9ˆÜ˜fÓ%ñ 	1Ü�r˜2˜vÑ0¨Ñ0ˆB÷	1ä˜fÓ%ñ 	;Ü�r˜2˜vÑ:¨4Ð:°6Ñ:ˆB÷	;ô 	˜˜B S´'¸A±+Õ>ô 	��d�
Ôô �x‰x˜˜q™ %¨¡'Ð*´"·*±*Ô=ˆÜ�]‰]œ:Ó&ñ 	:Ü! &Ó)ñ :Ü�b˜"˜fÑ9¨$Ð9°&Ò9÷:÷	:ô
 �x‰xØ�‰Y˜˜E™	Ð"¬"¯*©*ô6Ù69¸°c¹3¸Q¸3°hñ@ˆä�x‰x˜ ˜¬b¯j©jÀÔDˆÜ�]‰]œ:Ó&ñ 	:Ü! &Ó)ñ :Ü�b˜"˜fÑ9¨$Ð9°&Ò9÷:÷	:ô �]‰]œ:Ó&ñ 	:Ü! &Ó)ñ :Ü�b˜"˜fÑ9¨$Ð9°&Ò9÷:÷	:ô
 �x‰x˜ ˜¬b¯h©hÔ7ˆÜ�]‰]œ:Ó&ñ 	:Ü! &Ó)ñ :Ü�b˜"˜fÑ9¨$Ð9°&Ò9÷:÷	:ð 	:÷=	1ñ 	1ú÷	;ñ 	;ú÷:ñ :ú÷	:ñ 	:ú÷:ð :ú÷	:ð 	:ú÷:ð :ú÷	:ð 	:ú÷:ð :ú÷	:ð 	:ús¨   Á9J$ÂJ1ÄKÄ)J>Ä:KÇK$ÇKÇ K$È	K<ÈK0È&K<É6LÊLÊLÊ$J.Ê1J;Ê>K	ËKËKËK!	ËK$Ë$K-Ë0K9	Ë5K<Ë<LÌL	ÌLÌLc                 óÐ  — 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        |«      5  t        |||fi |¤Ž}d d d «       t        |«      5  t        |||fi |¤Ž}	d d d «       t        	|t        dkD  ¬«       y # 1 sw Y   ŒBxY w# 1 sw Y   Œ,xY w)	NrS  rT  rÙ   rU  r$   rb  r_  rW  )r\   Úcopyr	   r   ÚflagsÚc_contiguousr´  r  r   r   r   )
r  r5   r[  r>  r?  ÚX1_copyÚX2_copyrï   r\  r]  s
             r4   Útest_stridingzTestCdist.test_striding§  sC  € ð ˆÜ�
‰^™C˜a˜C¡ 1 ˜HÑ%ˆÜ�
‰^™C˜a˜C¡ 1 ˜HÑ%ˆØ—'‘'“)ˆØ—'‘'“)ˆô 	�R˜Ô!Ü�R˜Ô!ä�B—H‘H×)Ñ)Ð)Ô*Ü�B—H‘H×)Ñ)Ð)Ô*Ü�—‘×*Ñ*Ô+Ü�—‘×*Ñ*Ô+ä“ˆØ�[Ò ØˆF�3‰KÜ˜fÓ%ñ 	1Ü�r˜2˜vÑ0¨Ñ0ˆB÷	1ä˜fÓ%ñ 	;Ü�w ¨Ñ:°6Ñ:ˆB÷	;ô 	˜˜B S´'¸A±+Ö>÷	1ð 	1ú÷	;ð 	;ús   Ä EÄ"EÅEÅE%c                 ó¬  — t         j                  j                  dd«      }t         j                  j                  dd«      }t        «       }|dk(  rd|d<   t	        |«      5  t        ||fd|i|¤Ž}d d d «       ||fD �cg c]  }t        j                  |«      ‘Œ }}~~~t        r
t        «        t        d„ |D «       «      sJ ‚y # 1 sw Y   ŒVxY wc c}w )Né
   r$   rb  r_  r5   c              3   ó.   K  — | ]  } |«       d u –— Œ y ­wrn   ri   )rq   Úweak_refs     r4   rs   z0TestCdist.test_cdist_refcount.<locals>.<genexpr>×  s   è ø€ Ò@¨(‘8“: Ô%Ñ@ùs   ‚)rZ   r¹   r¼   r´  r  r   ÚweakrefÚrefr   r   rz   )r  r5   rx  ry  rï   r±  ÚvÚ	weak_refss           r4   Útest_cdist_refcountzTestCdist.test_cdist_refcountÄ  s¿   € ä�Y‰Y�^‰^˜B Ó#ˆÜ�Y‰Y�^‰^˜B Ó#ˆä“ˆØ�[Ò ØˆF�3‰Kä˜fÓ%ñ 	9Ü˜˜BÑ8 vÐ8°Ñ8ˆC÷	9ð
 /1°"°c¨]Ö;¨”W—[‘[ •^Ð;ˆ	Ð;Ø��CåÜŒNÜÑ@°iÔ@Ô@Ð@Ñ@÷	9ð 	9üò
 <s   Á CÁ?CÃCN©r©  )rí   r  r  r%  r  ÚmarkÚthread_unsafer@  rQ  r^  ÚparametrizerZ   Úinfrg  rq  r|  rŽ  r—  r§  r¯  r¾  rÅ  rÎ  ri   r6   r4   r  r  £  sï   „ ò7ð ‡[�[×Ññ:ó ð:ò0"9òH?ð ‡[�[×Ñ˜S 3¨¨c°4Ø#&¨¨S°"·&±&ð#:ó ;ñGó;ðGò?ò<ò$<óCò*Gò>Kð6 ‡[�[×Ññ+:ó ð+:ðZ ‡[�[×Ññ?ó ð?ð8 ‡[�[×ÑñAó ñAr6   r  c            	       óŒ  — e Zd Zd„ Zej
                  j                  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
                  jU                  d$d%d&d'd(d)e+jX                  g«      d*„ «       Z-d+„ Z.d,„ Z/d-„ Z0ej
                  j                  d.„ «       Z1ej
                  j                  d/„ «       Z2ej
                  j                  d0„ «       Z3ej
                  j                  d1„ «       Z4ej
                  j                  d2„ «       Z5ej
                  j                  d3„ «       Z6d4„ Z7d5„ Z8d6„ Z9d7„ Z:d8„ Z;d9„ Z<d:„ Z=d;„ Z>d<„ Z?d=„ Z@d>„ ZAd?„ ZBd@„ ZCdA„ ZDdB„ ZEdC„ ZFdD„ ZGdE„ ZHdF„ ZIdG„ ZJdH„ ZKdI„ ZLdJ„ ZMdK„ ZNdL„ ZOej
                  j                  dM„ «       ZPdN„ ZQdO„ ZRdVdP„ZSdQ„ ZTdR„ ZUej
                  j                  dS„ «       ZVej
                  j                  dT„ «       ZWyU)WÚ	TestPdistc                 ó  — g d¢| _         t        t        t        j                  t        j
                  gt        t        j                  t        j
                  gt        j                  t        j
                  gt        j
                  gdœ| _        y r  r"  r  s    r4   r%  zTestPdist.setup_methodÜ  r&  r6   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        |«      5  t        |fd
|i|¤Ž d d d «       d d d «       t        j                  t        «      5  t        |«      5  t        |fd
t        |«      i|¤Ž d d d «       d d d «       t        j                  t        «      5  t        |«      5  t        |fd
d|z   i|¤Ž d d d «       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   �ŒFxY w# 1 sw Y   �ŒKxY w# 1 sw Y   �ŒxY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒåxY w# 1 sw Y   ŒéxY w# 1 sw Y   ŒÄxY w# 1 sw Y   Œ–xY w# 1 sw Y   y xY w)Nr´   rá   r+  r,  r/  r6  rÙ   r7  r9  r5   r:  )rZ   r;  r  r<  rÐ   r  r   r=  )r  r5   r>  rï   rî   s        r4   Útest_pdist_extra_argszTestPdist.test_pdist_extra_argså  sß  € ð �2ˆh˜˜c˜
 S¨# JÐ/ˆØ$(¬r¯y©y¸«|Ñ<ˆØˆv˜‰|ˆä�]‰]œ9Ó%ñ 	3Ü! &Ó)ñ 3Ü�bÑ2 Ð2¨6Ò2÷3÷	3ô �]‰]œ9Ó%ñ 	9Ü! &Ó)ñ 9Ü�bÑ8¤ f£Ð8°Ò8÷9÷	9ô �]‰]œ9Ó%ñ 	=Ü! &Ó)ñ =Ü�bÑ< ¨6Ñ!1Ð<°VÒ<÷=÷	=ô �]‰]œ9Ó%ñ 	,Ü�"Ð+ dÒ+˜VÒ+÷	,ä�]‰]œ9Ó%ñ 	2Ü�"Ð1¨DÒ1œT &›\Ò1÷	2ä�]‰]œ9Ó%ñ 	6Ü�"Ð5°Ò5˜W vÑ-Ò5÷	6ð 	6÷3ñ 3ú÷	3ñ 	3ú÷9ñ 9ú÷	9ñ 	9ú÷=ð =ú÷	=ð 	=ú÷	,ð 	,ú÷	2ð 	2ú÷	6ð 	6ús�   ÁF/ÁF"ÁF/ÂG	ÂF<Â+G	ÃG"Ã GÃ2G"ÄG.ÅG:ÆHÆ"F,	Æ'F/Æ/F9Æ<G	ÇG	Ç	GÇG	ÇG"Ç"G+Ç.G7Ç:HÈH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)Nrl   rÙ   c                 ó   — ||z   |z   S rn   ri   rC  s        r4   rH  z:TestPdist.test_pdist_extra_args_custom.<locals>._my_metricÿ  rI  r6   r´   rá   r+  r,  r/  r6  r7  r9  rJ  rK  rL  rM  rN  rO  rP  )rZ   r;  r  r<  rÐ   r   r   )r  rH  r>  rï   rî   s        r4   Ú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   ©rX  ©r\   Úwpdist_no_constr   ©r  r[  rl  ÚY_rightÚY_test1s        r4   Útest_pdist_euclidean_randomz%TestPdist.test_pdist_euclidean_random  ó5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y rÝ  rá  rã  s        r4   Útest_pdist_euclidean_random_uz'TestPdist.test_pdist_euclidean_random_u&  rç  r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y rÝ  ©rZ   r_   r\   râ  r   rã  s        r4   Ú#test_pdist_euclidean_random_float32z-TestPdist.test_pdist_euclidean_random_float32-  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  rß  rV  rà  rá  ©r  r[  rl  rä  ÚY_test2s        r4   Ú test_pdist_euclidean_random_nonCz*TestPdist.test_pdist_euclidean_random_nonC4  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  Úirisúpdist-euclidean-irisr   rà  rá  rã  s        r4   Ú test_pdist_euclidean_iris_doublez*TestPdist.test_pdist_euclidean_iris_double;  s3   € àˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÆ   rò  ró  r   rÙ   rW  ©rZ   r_   r\   râ  r   r   rã  s        r4   Ú!test_pdist_euclidean_iris_float32z+TestPdist.test_pdist_euclidean_iris_float32C  óB   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rò  ró  rV  rà  rá  rî  s        r4   Útest_pdist_euclidean_iris_nonCz(TestPdist.test_pdist_euclidean_iris_nonCK  s6   € ð ˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  úpdist-seuclideanr'   rà  ©r\   r   r   rã  s        r4   Útest_pdist_seuclidean_randomz&TestPdist.test_pdist_seuclidean_randomU  s5   € ØˆÜÐ!Ñ"ˆÜÐ'Ñ(ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r6   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   rl   r›  rœ  )rZ   r_   r\   r   r   r¡  )r  r[  rl  rä  rå  r�  rï  s          r4   Ú$test_pdist_seuclidean_random_float32z.TestPdist.test_pdist_seuclidean_random_float32\  sl   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ'Ñ(ˆÜ˜˜<Ó(ˆÜ˜ ¨sÕ3ô �F‰F�1˜1 1Ô%ˆÜ˜˜<¨1Ô-ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  rü  Útest_seuclideanrà  rý  rî  s        r4   Ú!test_pdist_seuclidean_random_nonCz+TestPdist.test_pdist_seuclidean_random_nonCh  s6   € àˆÜÐ!Ñ"ˆÜÐ'Ñ(ˆÜ˜Ð,Ó-ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rò  úpdist-seuclidean-irisr'   rà  rý  rã  s        r4   Útest_pdist_seuclidean_irisz$TestPdist.test_pdist_seuclidean_irisp  s3   € ØˆÜˆv‰JˆÜÐ,Ñ-ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y )NrÆ   rò  r  r'   rà  )rZ   r_   r\   r   r   rã  s        r4   Ú"test_pdist_seuclidean_iris_float32z,TestPdist.test_pdist_seuclidean_iris_float32w  s<   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ,Ñ-ˆÜ˜˜<Ó(ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rò  r  r  rà  rý  rî  s        r4   Útest_pdist_seuclidean_iris_nonCz)TestPdist.test_pdist_seuclidean_iris_nonC  s6   € ð ˆÜˆv‰JˆÜÐ,Ñ-ˆÜ˜Ð,Ó-ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr©  rÞ  úpdist-cosiner   rà  ©r\   Úwpdistr   rã  s        r4   Útest_pdist_cosine_randomz"TestPdist.test_pdist_cosine_randomˆ  s4   € ØˆÜÐ!Ñ"ˆÜ�^Ñ$ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r  ©rZ   r_   r\   r  r   rã  s        r4   Ú test_pdist_cosine_random_float32z*TestPdist.test_pdist_cosine_random_float32�  s=   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜ�^Ñ$ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  r  Útest_cosinerà  r  rî  s        r4   Útest_pdist_cosine_random_nonCz'TestPdist.test_pdist_cosine_random_nonC–  s4   € àˆÜÐ!Ñ"ˆÜ�^Ñ$ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrÆ   rò  úpdist-cosine-irisr   rÇ   r  rã  s        r4   Útest_pdist_cosine_irisz TestPdist.test_pdist_cosine_irisž  s3   € àˆÜˆv‰JˆÜÐ(Ñ)ˆÜ˜˜HÓ%ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÆ   rò  r  r   rÙ   ©rÈ   r   )rZ   r_   r\   r  r   r   rã  s        r4   Útest_pdist_cosine_iris_float32z(TestPdist.test_pdist_cosine_iris_float32¦  sB   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ(Ñ)ˆÜ˜˜HÓ%ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )NrÆ   rò  r  r  rÇ   r  rî  s        r4   Útest_pdist_cosine_iris_nonCz%TestPdist.test_pdist_cosine_iris_nonC®  s3   € àˆÜˆv‰JˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r6   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)rZ   Úabsr¹   rº   r¼   r   r   r  )r  rË   rl  s      r4   Ú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Ñ&¨!Ñ+Ø<ö	>r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr©  rÞ  úpdist-cityblockr   rà  rá  rã  s        r4   Útest_pdist_cityblock_randomz%TestPdist.test_pdist_cityblock_random¿  s5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r%  rë  rã  s        r4   Ú#test_pdist_cityblock_random_float32z-TestPdist.test_pdist_cityblock_random_float32Æ  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  r&  Útest_cityblockrà  rá  rî  s        r4   Ú test_pdist_cityblock_random_nonCz*TestPdist.test_pdist_cityblock_random_nonCÍ  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nri  rò  úpdist-cityblock-irisr   rà  rá  rã  s        r4   Útest_pdist_cityblock_irisz#TestPdist.test_pdist_cityblock_irisÔ  s3   € àˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! ! [Ó1ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÆ   rò  r.  r   rÙ   rW  rö  rã  s        r4   Ú!test_pdist_cityblock_iris_float32z+TestPdist.test_pdist_cityblock_iris_float32Ü  rø  r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nri  rò  r.  r+  rà  rá  rî  s        r4   Útest_pdist_cityblock_iris_nonCz(TestPdist.test_pdist_cityblock_iris_nonCä  s6   € ð ˆÜˆv‰JˆÜÐ+Ñ,ˆÜ! !Ð%5Ó6ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr©  rÞ  úpdist-correlationr   rà  r  rã  s        r4   Útest_pdist_correlation_randomz'TestPdist.test_pdist_correlation_randomî  s5   € ØˆÜÐ!Ñ"ˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r5  r  rã  s        r4   Ú%test_pdist_correlation_random_float32z/TestPdist.test_pdist_correlation_random_float32õ  s>   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ(Ñ)ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rÞ  r6  Útest_correlationrà  r  rî  s        r4   Ú"test_pdist_correlation_random_nonCz,TestPdist.test_pdist_correlation_random_nonCü  s6   € ØˆÜÐ!Ñ"ˆÜÐ(Ñ)ˆÜ˜Ð.Ó/ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr©  rò  úpdist-correlation-irisr   rà  r  rã  s        r4   Útest_pdist_correlation_irisz%TestPdist.test_pdist_correlation_iris  s3   € àˆÜˆv‰JˆÜÐ-Ñ.ˆÜ˜˜MÓ*ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t         d   }t        j                  t         d   «      }t        |d«      }t	        |||t
        dkD  ¬«       y )Nr©  rò  r>  r   rÙ   rW  )r\   rZ   r_   r  r   r   rã  s        r4   Ú#test_pdist_correlation_iris_float32z-TestPdist.test_pdist_correlation_iris_float32  sB   € àˆÜˆv‰JˆÜ—*‘*œRÐ 8Ñ9Ó:ˆÜ˜˜MÓ*ˆÜ˜ ¨s¼GÀa¹KÖHr6   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ò  r>  r;  rà  )ÚsysÚmaxsizer  Úskipr\   r  r   rî  s        r4   Ú test_pdist_correlation_iris_nonCz*TestPdist.test_pdist_correlation_iris_nonC  sL   € ä�;‰;˜ÒØ‰Cä�K‰K˜Ô'Üˆv‰JˆÜÐ-Ñ.ˆÜ˜Ð.Ó/ˆÜ˜ ¨sÖ3r6   r_  r`  ra  r´   rá   çš™™™™™	@c                 óp   — d}t         d   }t        |d|¬«      }t        |d|¬«      }t        ||d|¬«       y )Nrd  rÞ  r$   re  rf  r   )rÈ   rX  rá  )r  r_  r[  rl  r\  r]  s         r4   Útest_pdist_minkowski_random_pz'TestPdist.test_pdist_minkowski_random_p  s=   € àˆÜÐ!Ñ"ˆÜ˜Q ¨qÔ1ˆÜ˜QÐ 0°AÔ6ˆÜ˜˜B Q¨SÖ1r6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y ©Nr©  rÞ  úpdist-minkowski-3.2r$   rG  re  rà  rá  rã  s        r4   Útest_pdist_minkowski_randomz%TestPdist.test_pdist_minkowski_random&  s7   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r6   c                 óŠ   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||¬«       y rK  rë  rã  s        r4   Ú#test_pdist_minkowski_random_float32z-TestPdist.test_pdist_minkowski_random_float32-  s@   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ*Ñ+ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr©  rÞ  rL  rf  rG  re  rà  rá  rî  s        r4   Ú test_pdist_minkowski_random_nonCz*TestPdist.test_pdist_minkowski_random_nonC4  s8   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ! !Ð%5¸Ô=ˆÜ˜ ¨sÖ3r6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr©  rò  úpdist-minkowski-3.2-irisr$   rG  re  rà  rá  rã  s        r4   Útest_pdist_minkowski_3_2_irisz'TestPdist.test_pdist_minkowski_3_2_iris;  ó5   € àˆÜˆv‰JˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r6   c                 óŠ   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||¬«       y )NrÆ   rò  rS  r$   rG  re  rà  rë  rã  s        r4   Ú%test_pdist_minkowski_3_2_iris_float32z/TestPdist.test_pdist_minkowski_3_2_iris_float32C  s>   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨sÖ3r6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr©  rò  rS  rf  rG  re  rà  rá  rî  s        r4   Ú"test_pdist_minkowski_3_2_iris_nonCz,TestPdist.test_pdist_minkowski_3_2_iris_nonCK  ó6   € àˆÜˆv‰JˆÜÐ/Ñ0ˆÜ! !Ð%5¸Ô=ˆÜ˜ ¨sÖ3r6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr©  rò  úpdist-minkowski-5.8-irisr$   r4  re  rà  rá  rã  s        r4   Útest_pdist_minkowski_5_8_irisz'TestPdist.test_pdist_minkowski_5_8_irisS  rU  r6   c                 óš   — d}t        j                  t        d   «      }t        d   }t        |dd¬«      }t	        |||t
        dkD  ¬«       y )	NrÆ   rò  r\  r$   r4  re  rÙ   rW  rö  rã  s        r4   Ú%test_pdist_minkowski_5_8_iris_float32z/TestPdist.test_pdist_minkowski_5_8_iris_float32[  sD   € àˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ! ! [°CÔ8ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ód   — d}t         d   }t         d   }t        |dd¬«      }t        |||¬«       y )Nr©  rò  r\  rf  r4  re  rà  rá  rî  s        r4   Ú"test_pdist_minkowski_5_8_iris_nonCz,TestPdist.test_pdist_minkowski_5_8_iris_nonCc  rZ  r6   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)  r2  r�   rl   r#   r  rt  rv  ru  rá   r   rÙ   rÝ   râ   )
rZ   r¸   r®   r   r   rw  r  r<  r{   r  )r  rË   rz  r{  s       r4   Útest_pdist_mahalanobisz TestPdist.test_pdist_mahalanobisk  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 ©NrS  rL   úpdist-hammingr   rà  r  rã  s        r4   Útest_pdist_hamming_randomz#TestPdist.test_pdist_hamming_random|  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y re  r  rã  s        r4   Ú!test_pdist_hamming_random_float32z+TestPdist.test_pdist_hamming_random_float32ƒ  ó=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©NrS  rL   rf  Útest_hammingrà  r  rî  s        r4   Útest_pdist_hamming_random_nonCz(TestPdist.test_pdist_hamming_random_nonCŠ  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y re  ©rZ   r·   r\   r  r   rã  s        r4   Útest_pdist_dhamming_randomz$TestPdist.test_pdist_dhamming_random‘  rj  r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y re  r  rã  s        r4   Ú"test_pdist_dhamming_random_float32z,TestPdist.test_pdist_dhamming_random_float32˜  rj  r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y rl  rp  rî  s        r4   Útest_pdist_dhamming_random_nonCz)TestPdist.test_pdist_dhamming_random_nonCŸ  s=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nç•dyáý¥=rÞ  úpdist-jensenshannonr!   rà  rý  rã  s        r4   Útest_pdist_jensenshannon_randomz)TestPdist.test_pdist_jensenshannon_random¦  s5   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ˜˜?Ó+ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Nç:Œ0âŽyE>rÞ  rx  r!   rÙ   rW  ©rZ   r_   r\   r   r   r   rã  s        r4   Ú'test_pdist_jensenshannon_random_float32z1TestPdist.test_pdist_jensenshannon_random_float32­  sD   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ*Ñ+ˆÜ˜˜?Ó+ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nrw  rÞ  rx  Útest_jensenshannonrà  rý  rî  s        r4   Ú$test_pdist_jensenshannon_random_nonCz.TestPdist.test_pdist_jensenshannon_random_nonC´  s6   € ØˆÜÐ!Ñ"ˆÜÐ*Ñ+ˆÜ˜Ð/Ó0ˆÜ˜ ¨sÖ3r6   c                 óz   — t        «       rd}nd}t        d   }t        d   }t        |d«      }t        |||¬«       y )Ng•Ö&è.ñ=gê-�™—q=rò  úpdist-jensenshannon-irisr!   rÇ   )rj   r\   r   r   rã  s        r4   Útest_pdist_jensenshannon_irisz'TestPdist.test_pdist_jensenshannon_iris»  s=   € ÜŒ;à‰CàˆCäˆv‰JˆÜÐ/Ñ0ˆÜ˜˜?Ó+ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Ng�íµ ÷Æ°>rò  r‚  r!   rÙ   r  r|  rã  s        r4   Ú%test_pdist_jensenshannon_iris_float32z/TestPdist.test_pdist_jensenshannon_iris_float32Ç  sB   € ØˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ/Ñ0ˆÜ˜˜?Ó+ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Ng-Cëâ6
?rò  r‚  r  rà  rý  rî  s        r4   Ú"test_pdist_jensenshannon_iris_nonCz,TestPdist.test_pdist_jensenshannon_iris_nonCÎ  s4   € ØˆÜˆv‰JˆÜÐ/Ñ0ˆÜ˜Ð/Ó0ˆÜ˜ ¨sÖ3r6   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©rl   r   rl   rl   r   ©rl   rl   r   rl   rl   rG   ç333333ã?r   ç»½×Ùß|Û=©rX  rÈ   ©Ú	wmatchingrZ   r¸   r   r   ©r  ÚmÚm2s      r4   Ú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Ö4r6   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©rl   r   rl   ©rl   rl   r   rG   çUUUUUUå?r   r�  rŽ  r�  r‘  s      r4   Ú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¨°Ö6r6   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‹  rG   rÙ   r   r�  rŽ  ©ÚwyulerZ   r¸   r   r   r’  r   r‘  s      r4   Ú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Ö2r6   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˜  rG   rÙ   r   r�  rŽ  rœ  r‘  s      r4   Ú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Ö2r6   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‹  rG   rÙ   gÛ¶mÛ¶mÛ?r   r�  rŽ  ©ÚwdicerZ   r¸   r   r   r’  r   r‘  s      r4   Ú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¨°Ö6r6   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˜  rG   rÙ   rv  r   r�  rŽ  r¢  r‘  s      r4   Ú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Ö4r6   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‹  rG   rÙ   g      è?r   r�  rŽ  )r)   rZ   r¸   r   r   r’  r   r‘  s      r4   Útest_pdist_sokalsneath_mtica1z'TestPdist.test_pdist_sokalsneath_mtica1  ós   € ÜœŸ™¢Ó1ÜŸ™¢Ó1ó3ˆäœŸ™¢/¼Ô>ÜŸ™¢/¼Ô>ó@ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r6   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˜  rG   rÙ   gš™™™™™é?r   r�  rŽ  )ÚwsokalsneathrZ   r¸   r   r   r’  r   r‘  s      r4   Útest_pdist_sokalsneath_mtica2z'TestPdist.test_pdist_sokalsneath_mtica2  sr   € ÜœŸ™¢)Ó,ÜŸ™¢)Ó,ó.ˆäœ"Ÿ(™(¢9´DÔ9ÜŸ(™(¢9´DÔ9ó;ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r6   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¨  ©ÚwrogerstanimotorZ   r¸   r   r   r’  r   r‘  s      r4   Ú 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¨°Ö6r6   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      r4   Ú 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¨°Ö6r6   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‹  rG   rÙ   rŒ  r   r�  rŽ  ©ÚwrussellraorZ   r¸   r   r   r’  r   r‘  s      r4   Útest_pdist_russellrao_mtica1z&TestPdist.test_pdist_russellrao_mtica17  rª  r6   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˜  rG   rÙ   r™  r   r�  rŽ  r¶  r‘  s      r4   Útest_pdist_russellrao_mtica2z&TestPdist.test_pdist_russellrao_mtica2A  sr   € ÜœŸ™¢Ó+ÜŸ™¢Ó+ó-ˆäœŸ™¢)´4Ô8ÜŸ™¢)´4Ô8ó:ˆä�QŠ;Ü�!ŒHÜ˜˜5 q¨uÕ5Ü˜˜E¨°Ö6r6   c                 óÈ   — t         d   }t        dkD  r t        |j                  |j                  «       d}t        |d«      }t        |d«      }t        |||t        dkD  ¬«       y )Nrò  rÙ   rS  r   Útest_canberrarW  )r\   r   r’  r‹   rH   râ  r   )r  ÚDr[  r“  r”  s        r4   Útest_pdist_canberra_matchz#TestPdist.test_pdist_canberra_matchK  sS   € äˆv‰JˆÜ�QŠ;Ü�!—'‘'˜1Ÿ7™7Ô#ØˆÜ˜Q 
Ó+ˆÜ˜Q Ó0ˆÜ˜˜B S´'¸A±+Ö>r6   c                 óX   — d}t        dgdgfd«      }d}t        |||t        dkD  ¬«       y )Nr{  rJ  r-  r   gdß>@1‘Ž?rÙ   r  )râ  r   r   )r  r[  Úpdist_yr�  s       r4   Útest_pdist_canberra_ticket_711z(TestPdist.test_pdist_canberra_ticket_711U  s4   € ð ˆÜ! C 5¨3¨% .°*Ó=ˆØˆÜ˜ ¨s¼GÀa¹KÖHr6   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>.myclassNr€  ri   r6   r4   r�  rÄ  _  r‚  r6   r�  c                 óX   •— t        | d   ‰«      rt        |d   ‰«      st        d«      ‚yr„  r†  rˆ  s     €r4   rH  z9TestPdist.test_pdist_custom_notdouble.<locals>._my_metricb  r‰  r6   rG   r  r…  rÙ   rŠ  )rZ   r¸   r‹  r   r	   r   )r  rH  rK   rÀ  r�  r�  s        @r4   Útest_pdist_custom_notdoublez%TestPdist.test_pdist_custom_notdouble]  sR   ø€ ÷	ñ 	ô	ô �x‰x™'›)˜¡w£y kÐ2¼&ÔAˆÜ˜ ZÔ0ˆØˆÜ�W˜g¬w¸©{Ö;r6   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  rl  r5   r[  rï   r“  r”  r•  rò   r–  s
             r4   r—  z$TestPdist._check_calling_conventionsk  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 )Nrs  rÙ   r™  rš  >   r   r+   Úmatchingr&   r"   r)   r(   r%   r   r'   r   rl   r›  rœ  r#   rž  )r#  r\   r   r’  r—  rZ   r¡  r¤   r·   r¢  r£  rp  r¸   rk  r¤  )r  r5   r¥  rl  r�  rŸ  s         r4   Útest_pdist_calling_conventionsz(TestPdist.test_pdist_calling_conventions€  s  € ð
 ×(Ñ(ó 	BˆGô �7‘™C˜a˜C¡ 1 ˜HÑ%ˆAÜ˜Š{Ü�k 6¨9°gÔ>Øð )ñ )ð .4¸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r6   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©  rM   r   rQ   r!  rP   r¥   rO   r_   r   rs  rÙ   r  rl   rW  )r\   r$  r   r   r   ræ   r‘  r’  rí   r  r<  )r  r5   r[  rª  r«  r>  r“  r¬  r”  rò   r–  r?  s               r4   Útest_pdist_dtype_equivalencez&TestPdist.test_pdist_dtype_equivalenceœ  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        |«      5  t        ||fi |¤Ž}d d d «       t        |«      5  t        ||fd|i|¤Ž}d d d «       t        |¬«       t        ||u «       t	        j
                  |dz   t        j                  ¬
«      }	t        j                  t        «      5  t        |«      5  t        ||fd|	i|¤Ž d d d «       d d d «       t	        j
                  d|z  t        j                  ¬
«      d d d…   }
t        j                  t        «      5  t        |«      5  t        ||fd|
i|¤Ž d d d «       d d d «       t	        j
                  |t        j                  ¬
«      }t        j                  t        «      5  t        |«      5  t        ||fd|i|¤Ž d d d «       d d d «       y # 1 sw Y   �Œ“xY w# 1 sw Y   �Œ}xY w# 1 sw Y   �Œ
xY w# 1 sw Y   �ŒxY w# 1 sw Y   Œ°xY w# 1 sw Y   Œ´xY w# 1 sw Y   Œ^xY w# 1 sw Y   y xY w)NrS  rO   rs  rÙ   r   rl   r$   rb  r_  rG   r±  rà  râ   )r\   r¥   r‹   r´  rZ   rµ  r·   r  r   r   r   r  r<  r{   r¶  )r  r5   r[  rl  Úout_sizerï   r¹  rä  rå  rº  r»  r½  s               r4   Útest_pdist_outzTestPdist.test_pdist_outµ  sD  € ð ˆÜÐ$Ñ%¡c¨ c©3¨Q¨3 hÑ/ˆÜ˜Ÿ™ ™
 a§g¡g¨a¡j°1¡nÑ5¸Ñ:Ó;ˆä“ˆØ�[Ò ØˆF�3‰KÜ�x‰x˜¬¯
©
Ô3ˆÜ˜fÓ%ñ 	1Ü˜A˜vÑ0¨Ñ0ˆG÷	1ä˜fÓ%ñ 	;Ü˜A˜vÑ:¨4Ð:°6Ñ:ˆG÷	;ô 	˜ ¨sÕ3ô 	�˜4�Ô ô �x‰x˜ 1™¬B¯J©JÔ7ˆÜ�]‰]œ:Ó&ñ 	5Ü! &Ó)ñ 5Ü�a˜Ñ4 TÐ4¨VÒ4÷5÷	5ô
 �x‰x˜˜H™¬B¯J©JÔ7¹¸!¸Ñ<ˆÜ�]‰]œ:Ó&ñ 	5Ü! &Ó)ñ 5Ü�a˜Ñ4 TÐ4¨VÒ4÷5÷	5ô
 �x‰x˜¬¯©Ô1ˆÜ�]‰]œ:Ó&ñ 	5Ü! &Ó)ñ 5Ü�a˜Ñ4 TÐ4¨VÒ4÷5÷	5ð 	5÷3	1ñ 	1ú÷	;ñ 	;ú÷5ñ 5ú÷	5ñ 	5ú÷5ð 5ú÷	5ð 	5ú÷5ð 5ú÷	5ð 	5ús„   Â	H(Â*H5ÄIÄ*IÄ:IÆI(ÆIÆ-I(Ç;J ÈI4ÈJ È(H2È5H?ÉI	ÉIÉIÉI%	É!I(É(I1É4I=	É9J Ê J	c                 óÖ  — d}t         d   d d d…d d d…f   }|j                  «       }t        |j                  j                   «       t        |j                  j                  «       t        «       }|dk(  rd|d<   t        |«      5  t        ||fi |¤Ž}d d d «       t        |«      5  t        ||fi |¤Ž}d d d «       t        |t        dkD  ¬«       y # 1 sw Y   ŒAxY w# 1 sw Y   Œ,xY w)	NrS  rO   rs  rÙ   r$   rb  r_  rW  )
r\   rÀ  r   rÁ  rÂ  r´  r  r   r   r   )r  r5   r[  rl  ÚX_copyrï   r\  r]  s           r4   rÅ  zTestPdist.test_stridingÝ  sá   € ð ˆÜÐ$Ñ%¡c¨ c©3¨Q¨3 hÑ/ˆØ—‘“ˆô 	�A—G‘G×(Ñ(Ð(Ô)Ü�—‘×)Ñ)Ô*ä“ˆØ�[Ò ØˆF�3‰KÜ˜fÓ%ñ 	,Ü�q˜&Ñ+ FÑ+ˆB÷	,ä˜fÓ%ñ 	1Ü�v˜vÑ0¨Ñ0ˆB÷	1ô 	˜˜B S´'¸A±+Ö>÷	,ð 	,ú÷	1ð 	1ús   ÂCÂ&CÃCÃC(NrÏ  )Xrí   r  r  r%  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/  r1  r3  r7  r9  r<  r?  rA  rF  rÒ  rZ   rÓ  rI  rM  rO  rQ  rT  rW  rY  r]  r_  ra  rc  rg  ri  rn  rq  rs  ru  ry  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Å  ri   r6   r4   rÕ  rÕ  Ú  sò  „ ò7ð ‡[�[×Ññ6ó ð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ò8Kð2 ‡[�[×Ññ%5ó ð%5ðN ‡[�[×Ññ?ó ñ?r6   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                  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´   r2  )rZ   r¸   Úcases)r  rË   rD  s      r4   r%  z&TestSomeDistanceFunctions.setup_methodõ  s+   € ä�H‰H’_Ó%ˆÜ�H‰H’_Ó%ˆà˜!�f�Xˆ�
r6   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 )Nrl   re  r)  ç      ø?gqÎazý“@rÙ   g¨ô—›wã@ra  gÙRÏ"ø6@i`  i”  i^  i”  Úuint16)r×  r$   r
   rZ   r¸   r	   r¤   )	r  rË   rD  Údist1Údist1p5Údist2Údist0p25rr   rÒ   s	            r4   rf  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r6   c                 ó‚   — | j                   D ]0  \  }}t        ||«      }t        |t        j                  d«      «       Œ2 y )Nrs  )r×  Ú
weuclideanr
   rZ   rw  ©r  rË   rD  rz  s       r4   rV  z(TestSomeDistanceFunctions.test_euclidean  s7   € Ø—J‘Jò 	2‰DˆAˆqÜ˜a Ó#ˆDÜ ¤b§g¡g¨a£jÕ1ñ	2r6   c                 ó\   — | j                   D ]  \  }}t        ||«      }t        |d«       Œ y )Nr2  )r×  Úwsqeuclideanr
   rá  s       r4   Útest_sqeuclideanz*TestSomeDistanceFunctions.test_sqeuclidean  s/   € Ø—J‘Jò 	+‰DˆAˆqÜ  1Ó%ˆDÜ  cÕ*ñ	+r6   c           
      óº   — | j                   D ]L  \  }}t        ||«      }t        |ddt        j                  d«      t        j                  d«      z  z  z
  «       ŒN y )Nr´   g      2@é   é   )r×  Úwcosiner
   rZ   rw  rá  s       r4   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r6   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 )Nrl   F)Úcentered)r‡  ÚwcorrelationÚfloatrè  r  s    r4   Ú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Ñ9r6   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´   )rZ   r¸   r×  rë  r
   ro  r   )r  ÚxmÚymrË   rD  rz  s         r4   r;  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r6   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)%rt  rt  rt  rt  rt  rt  ç       Àrt  rt  rt  rô  rô  rô  rt  rô  rt  rô  rt  rt  rï  rô  rt  r´   rt  rt  rô  rt  rt  rô  rt  rô  rô  rô  rô  rô  rô  rt  )%r´   r´   r´   r´   r´   r´   rï  r´   r´   r´   rï  rï  rï  r´   rï  r´   rï  r´   r´   rt  rï  r´   rá   r´   r´   rï  r´   r´   rï  r´   rï  rï  rï  rï  rï  rï  r´   r   rÇ  )rZ   r¸   r   Úfinfor·   r[  rá  s       r4   Ú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Ñ9r6   zignore:Casting complexÚfuncc                 ó|   — ddg}ddg}t        j                  d¬«      5   |||«       d d d «       y # 1 sw Y   y xY w)Ny      ð?        y       @        y      @        y      @        z"Complex `u` and `v` are deprecated©Úmatch)r  r  )r  r÷  rË   rD  s       r4   Útest_corr_dep_complexz/TestSomeDistanceFunctions.test_corr_dep_complex5  sC   € ð �4ˆLˆØ�4ˆLˆÜ×#Ñ#Ð*NÔOñ 	Ù��AŒJ÷	÷ 	ñ 	ús   Ÿ
2²;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´   rt  )r´   rá   r´   )rt  r´   rá   g      @)rZ   r¸   r×  r#   r
   rw  )r  rË   rD  Úvirz  s        r4   Ú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ñ	4r6   N)rí   r  r  r%  rf  rV  rä  r  rí  r;  rö  r  rÐ  rÑ  ÚfilterwarningsrÒ  r   r   rû  rþ  ri   r6   r4   rÔ  rÔ  ó  s†   „ òòHò&2ò
+ò
Pò
:ò
Tò	:ð ‡[�[×ÑØ‡[�[×ÑÐ 8Ó9Ø‡[�[×Ñ˜V k°6Ð%:Ó;ñó <ó :ó ðó4r6   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 rn   )Úchecked_dtypesÚcheck_squareform_matrix©r  rH   s     r4   Útest_squareform_matrixz%TestSquareForm.test_squareform_matrixJ  ó%   € Ø×(Ñ(ò 	0ˆEØ×(Ñ(¨Õ/ñ	0r6   c                 óH   — | j                   D ]  }| j                  |«       Œ y rn   )r  Úcheck_squareform_vectorr  s     r4   Útest_squareform_vectorz%TestSquareForm.test_squareform_vectorN  r  r6   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   rG   ©r   ©rl   rl   r   gÍÌÌÌÌÌ@)rl   )rZ   Úzerosr   r	   r‹   rH   r¸   r   )r  rH   ÚAÚrAs       r4   r  z&TestSquareForm.check_squareform_matrixR  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Ô;Õ<r6   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  rG   r  r   gš™™™™™ @)rÙ   rÙ   )rZ   r  r   r	   r‹   rH   r   r¸   )r  rH   rÌ  Úrvs       r4   r	  z&TestSquareForm.check_squareform_vectorc  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ÕKr6   c                 óH   — t        dd«      D ]  }| j                  |«       Œ y )NrÙ   rs  )r|   Úcheck_squareform_multi_matrix©r  Úns     r4   Útest_squareform_multi_matrixz+TestSquareForm.test_squareform_multi_matrixp  s%   € Ü�q˜!“ò 	2ˆAØ×.Ñ.¨qÕ1ñ	2r6   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é   rl   r   râ   rÙ   )rZ   r¹   r¼   râ  r	   Úlenr‹   r   r   r’  r|   )
r  r  rl  ÚYr  ÚYrÚsÚkr©   Újs
             r4   r  z,TestSquareForm.check_squareform_multi_matrixt  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¡¨!Õ,ñ-ñ	-r6   N)rí   r  r  rZ   r·   r_   Úint32Úint8r   r  r  r
  r  r	  r  r  ri   r6   r4   r  r  G  sA   „ Ø—j‘j "§*¡*¨b¯h©h¸¿¹ÀÐF€Nò0ò0ò=ò"Lò2ó-r6   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  )r|   rZ   r¹   r¼   râ  r	   r   )r  r  rl  r  s       r4   Útest_num_obs_y_multi_matrixz'TestNumObsY.test_num_obs_y_multi_matrixŒ  sC   € Ü�q˜"“ò 	*ˆAÜ—	‘	—‘˜q !Ó$ˆAÜ Ó"ˆAÜœ 1› qÕ)ñ	*r6   c                 ó‚   — t        j                  t        «      5  | j                  d«       d d d «       y # 1 sw Y   y xY w©Nrl   )r  r<  r{   Úcheck_yr  s    r4   Ú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    r4   Útest_num_obs_y_2zTestNumObsY.test_num_obs_y_2˜  s   € ô 	�—‘˜Q“Õ r6   c                 ó8   — t        | j                  d«      «       y )Nrâ   r,  r  s    r4   Útest_num_obs_y_3zTestNumObsY.test_num_obs_y_3�  ó   € Ü�—‘˜Q“Õ r6   c                 ó8   — t        | j                  d«      «       y ©Nr  r,  r  s    r4   Útest_num_obs_y_4zTestNumObsY.test_num_obs_y_4   r0  r6   c                 óH   — t        dd«      D ]  }| j                  |«       Œ y )Nrs  é   )r|   Úminit)r  r©   s     r4   Útest_num_obs_y_5_10zTestNumObsY.test_num_obs_y_5_10£  s"   € Ü�q˜"“ò 	ˆAØ�J‰J�q�Mñ	r6   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Ù   r5  rl   rs  éi   ©Úsetr|   Úaddr  r<  r{   Úbad_y©r  rr   r  r©   s       r4   Útest_num_obs_y_2_100z TestNumObsY.test_num_obs_y_2_100§  s…   € ô ‹EˆÜ�q˜"“ò 	#ˆAØ�E‰E�!�q˜1‘u‘+ ‘/Õ"ð	#ä�q˜#“ò 	"ˆAØ˜ŠzÜ—]‘]¤:Ó.ñ "Ø—J‘J˜q”M÷"ð "ñ	"÷"ð "úó   Á#B Â B		c                 ó8   — t        | j                  |«      «       y rn   r,  r  s     r4   r6  zTestNumObsY.minit²  r0  r6   c                 óV   — t         j                  j                  |«      }t        |«      S rn   )rZ   r¹   r¼   r   ©r  r  rD  s      r4   r>  zTestNumObsY.bad_yµ  s   € Ü�I‰I�N‰N˜1ÓˆÜ˜‹|Ðr6   c                 ó<   — t        | j                  |«      «      |k(  S rn   )r   Úmake_yr  s     r4   r(  zTestNumObsY.check_y¹  s   € Ü˜Ÿ™ Q›Ó(¨AÑ-Ð-r6   c                 óR   — t         j                  j                  ||dz
  z  dz  «      S ©Nrl   rÙ   ©rZ   r¹   r¼   r  s     r4   rF  zTestNumObsY.make_y¼  s"   € Ü�y‰y�~‰~˜q A¨¡E™{¨qÑ0Ó1Ð1r6   N)rí   r  r  r%  r)  r-  r/  r3  r7  r@  r6  r>  r(  rF  ri   r6   r4   r#  r#  Š  s9   „ ò*òò!ò
!ò!òò	"ò!òò.ó2r6   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 )Nrl   rÇ  r  râ   )r|   rZ   r¹   r¼   râ  r   r   r’  r‹   r	   r   )r  r  rl  r  r  s        r4   Ú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›¨Õ*ñ	+r6   c                 ó8   — t        | j                  d«      «       y )Nr   ©r   Úcheck_Dr  s    r4   Útest_num_obs_dm_0zTestNumObsDM.test_num_obs_dm_0Ë  ó   € ä�—‘˜Q“Õ r6   c                 ó8   — t        | j                  d«      «       y r'  rO  r  s    r4   Útest_num_obs_dm_1zTestNumObsDM.test_num_obs_dm_1Ï  rR  r6   c                 ó8   — t        | j                  d«      «       y r+  rO  r  s    r4   Útest_num_obs_dm_2zTestNumObsDM.test_num_obs_dm_2Ó  r0  r6   c                 ó8   — t        | j                  d«      «       y r+  rO  r  s    r4   Útest_num_obs_dm_3zTestNumObsDM.test_num_obs_dm_3Ö  r0  r6   c                 ó8   — t        | j                  d«      «       y r2  rO  r  s    r4   Útest_num_obs_dm_4zTestNumObsDM.test_num_obs_dm_4Ù  r0  r6   c                 ó<   — t        | j                  |«      «      |k(  S rn   )r   Úmake_Dr  s     r4   rP  zTestNumObsDM.check_DÜ  s   € Ü˜$Ÿ+™+ a›.Ó)¨QÑ.Ð.r6   c                 óB   — t         j                  j                  ||«      S rn   rI  r  s     r4   r\  zTestNumObsDM.make_Dß  s   € Ü�y‰y�~‰~˜a Ó#Ð#r6   N)rí   r  r  rM  rQ  rT  rV  rX  rZ  rP  r\  ri   r6   r4   rK  rK  À  s*   „ ò+ò!ò!ò!ò!ò!ò/ó$r6   rK  c                 ó   — t        | d¬«      S ©NT)Úthrow)r   )r½  s    r4   Úis_valid_dm_throwra  ã  s   € Ü�q Ô%Ð%r6   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©rs  rG   ©rZ   r  r·   r  r<  r{   ra  ©r  r½  s     r4   Ú$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 )Nre  rG   F©rZ   r  r·   r	   r   rg  s     r4   Ú$test_is_valid_dm_improper_shape_1D_Fz2TestIsValidDM.test_is_valid_dm_improper_shape_1D_Fî  s$   € Ü�H‰H�T¤§¡Ô,ˆÜ”[ “^ UÕ+r6   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â   rG   rf  rg  s     r4   Ú$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Ô ÷	!÷ 	!ñ 	!úri  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y ©Nro  rG   Frk  rg  s     r4   Ú$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Õ+r6   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   rs  rá   )	rZ   r¹   r¼   r   r|   r  r<  r{   ra  ©r  rD  r½  r©   s       r4   Ú#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   rs  rá   F)rZ   r¹   r¼   r   r|   r	   r   ru  s       r4   Ú#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Õ+r6   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â   rl   rl   ©rl   râ   )rZ   r¹   r¼   r   r  r<  r{   ra  ©r  rD  r½  s      r4   Ú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Ç  rz  rl   r{  F©rZ   r¹   r¼   r   r	   r   r|  s      r4   Útest_is_valid_dm_asymmetric_Fz+TestIsValidDM.test_is_valid_dm_asymmetric_F  s<   € Ü�I‰I�N‰N˜2ÓˆÜ�q‹MˆØ�D‘'˜A‘+ˆˆ$‰Ü”[ “^ UÕ+r6   c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y )Nr  rG   Trk  rg  s     r4   Útest_is_valid_dm_correct_1_by_1z-TestIsValidDM.test_is_valid_dm_correct_1_by_1  s$   € Ü�H‰H�V¤2§:¡:Ô.ˆÜ”[ “^ TÕ*r6   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )Nrl   Tr  r|  s      r4   Ú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Õ*r6   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y ©Nrâ   Tr  r|  s      r4   Útest_is_valid_dm_correct_3_by_3z-TestIsValidDM.test_is_valid_dm_correct_3_by_3   r…  r6   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )Né   Tr  r|  s      r4   Útest_is_valid_dm_correct_4_by_4z-TestIsValidDM.test_is_valid_dm_correct_4_by_4%  r…  r6   c                 ó‚   — t         j                  j                  d«      }t        |«      }t	        t        |«      d«       y )NrÇ  Tr  r|  s      r4   Ú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Õ*r6   N)rí   r  r  rh  rl  rp  rs  rv  rx  r}  r€  r‚  r„  rˆ  r‹  r�  ri   r6   r4   rc  rc  ç  sC   „ ò!ò
,ò!ò
,ò!ò,ò!ò,ò+ò+ò
+ò
+ó
+r6   rc  c                 ó   — t        | d¬«      S r_  )r   )rD  s    r4   Úis_valid_y_throwr�  0  s   € Ü�a˜tÔ$Ð$r6   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â   rG   ©rZ   r  r·   r  r<  r{   r�  ©r  rD  s     r4   Ú#test_is_valid_y_improper_shape_2D_Ez0TestIsValidY.test_is_valid_y_improper_shape_2D_E9  s?   € Ü�H‰H�W¤B§J¡JÔ/ˆÜ�]‰]œ:Ó&ñ 	 Ü˜QÔ÷	 ÷ 	 ñ 	 úri  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y )Nr“  rG   F©rZ   r  r·   r	   r   r•  s     r4   Ú#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Õ*r6   c                 óÀ   — t        j                  dt         j                  ¬«      }t        j                  t
        «      5  t        |«       d d d «       y # 1 sw Y   y xY wrn  r”  r•  s     r4   Ú#test_is_valid_y_improper_shape_3D_Ez0TestIsValidY.test_is_valid_y_improper_shape_3D_EB  s?   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ�]‰]œ:Ó&ñ 	 Ü˜QÔ÷	 ÷ 	 ñ 	 úri  c                 óx   — t        j                  dt         j                  ¬«      }t        t	        |«      d«       y rr  r˜  r•  s     r4   Ú#test_is_valid_y_improper_shape_3D_Fz0TestIsValidY.test_is_valid_y_improper_shape_3D_FG  s$   € Ü�H‰H�Y¤b§j¡jÔ1ˆÜ”Z “] EÕ*r6   c                 óP   — | j                  d«      }t        t        |«      d«       y )NrÙ   T©Úcorrect_n_by_nr	   r   r•  s     r4   Útest_is_valid_y_correct_2_by_2z+TestIsValidY.test_is_valid_y_correct_2_by_2K  ó    € Ø×Ñ Ó"ˆÜ”Z “] DÕ)r6   c                 óP   — | j                  d«      }t        t        |«      d«       y r‡  rŸ  r•  s     r4   Útest_is_valid_y_correct_3_by_3z+TestIsValidY.test_is_valid_y_correct_3_by_3O  r¢  r6   c                 óP   — | j                  d«      }t        t        |«      d«       y )Nr  TrŸ  r•  s     r4   Útest_is_valid_y_correct_4_by_4z+TestIsValidY.test_is_valid_y_correct_4_by_4S  r¢  r6   c                 óP   — | j                  d«      }t        t        |«      d«       y )Nrs  TrŸ  r•  s     r4   Útest_is_valid_y_correct_5_by_5z+TestIsValidY.test_is_valid_y_correct_5_by_5W  r¢  r6   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r9  r;  r?  s       r4   Ú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÷"ð "ñ	"÷"ð "úrA  c                 óZ   — t         j                  j                  |«      }t        |d¬«      S r_  )rZ   r¹   r¼   r   rD  s      r4   r>  zTestIsValidY.bad_yd  s!   € Ü�I‰I�N‰N˜1ÓˆÜ˜! 4Ô(Ð(r6   c                 óV   — t         j                  j                  ||dz
  z  dz  «      }|S rH  rI  rD  s      r4   r   zTestIsValidY.correct_n_by_nh  s&   € Ü�I‰I�N‰N˜A  Q¡™K¨AÑ-Ó.ˆØˆr6   N)rí   r  r  r–  r™  r›  r�  r¡  r¤  r¦  r¨  rª  r>  r   ri   r6   r4   r‘  r‘  4  s9   „ ò
 ò
+ò ò
+ò*ò*ò*ò*ò"ò)ór6   r‘  r_  )g      $Àg      à¿rt  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)Nrl   rÙ   râ   r  )r  r<  r{   r$   re  s    r4   Ú
test_bad_pr®  m  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<  r{   r)   ri   r6   r4   Útest_sokalsneath_all_falser°  v  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©rl   rÙ   râ   ©rÙ   r  rŠ  rl   ©rl   rl   r   r   ©rl   r   rl   r   rÙ   )r	   Ú	wcanberrari   r6   r4   r¼  r¼  |  s$   € ä”š9¢iÓ0°!Ô4Ü”š<ªÓ6¸Õ:r6   c                  ót   — t        t        g d¢g d¢«      dd¬«       t        t        g d¢g d¢«      dd¬«       y )	Nr²  r³  çUUUUUUÕ?é   ©Údecimalr´  rµ  rv  )r
   Úwbraycurtisri   r6   r4   Útest_braycurtisr½  ‚  s(   € äœ¢IªyÓ9¸6È2ÕNÜœ¢L²,Ó?ÀÈbÖQr6   c                  ó€  — t        j                  g d¢«      } t        j                  g d¢«      }t        t        | |«      dd¬«       t        t	        | |«      t        j
                  d«      d¬«       t        j                  t        d¬«      5  t	        | t         j                  d d …f   |t         j                  d d …f   «      t        j
                  d«      f d d d «       t        j                  t        d¬«      5  t        | t         j                  d d …f   |t         j                  d d …f   «       d d d «       t        j                  t        d¬«      5  t        | d d …t         j                  f   |d d …t         j                  f   «       d d d «       t        j                  d	«      j                  d
d
«      }t        j                  t        «      5  t	        ||«       d d d «       t        j                  t        «      5  t        ||«       d d d «       t         j                  j                  d«      }|j                  d«      }|j                  d«      }t	        ||«      }t        ||«      }t        |d
z  |d¬«       y # 1 sw Y   �ŒªxY w# 1 sw Y   �Œ]xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒÉxY w# 1 sw Y   Œ§xY w)N)rl   rl   rl   ©r   r   r   r)  ræ  rº  râ   úInput vector should be 1-Drù  r  rÙ   iÒ–IrÇ  )rZ   r¸   r
   rã  rà  rw  r  r<  r{   Únewaxisr;  r®   r¹   rº   r¼   )rx  ry  rË   ÚrsrD  Úd1Úd2s          r4   Útest_euclideansrÅ  ˆ  s  € ä	�‰’)Ó	€BÜ	�‰’)Ó	€Bô œ R¨Ó,¨c¸2Õ>Üœ
 2 rÓ*¬B¯G©G°A«JÀÕCô 
�‰”zÐ)EÔ	Fñ EÜ�2”b—j‘j¢!�mÑ$ b¬¯©²Q¨Ñ&7Ó8¼"¿'¹'À!»*ÑD÷Eä	�‰”zÐ)EÔ	Fñ ;Ü�RœŸ
™
¢A˜Ñ&¨¬2¯:©:²q¨=Ñ(9Ô:÷;ä	�‰”zÐ)EÔ	Fñ ;Ü�Ršœ2Ÿ:™:˜Ñ&¨ª1¬b¯j©j¨=Ñ(9Ô:÷;ô 	�	‰	�!‹×Ñ˜Q Ó"€AÜ	�‰”zÓ	"ñ Ü�1�aÔ÷ä	�‰”zÓ	"ñ Ü�Q˜Ô÷ô 
�‰×	Ñ	˜zÓ	*€BØ
�‰�‹€AØ
�‰�‹€AÜ	�A�qÓ	€BÜ	�a˜Ó	€BÜ˜˜A™˜r¨2Ö.÷)Eñ Eú÷;ñ ;ú÷;ñ ;ú÷
ð ú÷ð ús=   ÂAJÃ<7JÅ7JÇJ(ÈJ4ÊJÊJÊJ%Ê(J1Ê4J=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   rl   rµ  ©r  r<  r{   Úwhamming©rË   rD  s     r4   Útest_hamming_unequal_lengthrË  ©  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       r4   Ú"test_hamming_unequal_length_with_wrÎ  ²  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|S4rG   )rÐ  rÑ  rÑ  rÐ  rÐ  rÑ  rÑ  rÑ  rÑ  rÐ  rÑ  rÐ  rÑ  rÐ  rÑ  rÑ  rÐ  rÑ  rÑ  rÐ  gÍÌÌÌÌÌÜ?)rZ   r¸   r   rÉ  )rr   rÒ   Údesireds      r4   Útest_hamming_string_arrayrÓ  »  sM   € ä
�‰ò Bð ô	€Aô 	�‰ò Bð ô	€Að €GÜ”H˜Q “N GÕ,r6   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$   rl   )r5   r_  rÔ   )r5   r_  rS  rà  )rZ   r¸   r   r   r   )Úarr_inÚp0Úc0Úp1Úc1s        r4   Ú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˜ Ö'r6   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  rs  rŠ  rG   r   rÙ   )Úfloat16Úfloat128)rZ   r!  Úint16r   r¶  rã  Úasarrayr   rµ   rH   ÚfloatingÚuint8rÚ  Úuint32Úuint64ÚiinfoÚmaxr	   r·   r_   Ú	complex64Ú
complex128Úhasattrr½   Úgetattr)rË   rD  rH   ÚdÚumaxrÃ  rÄ  Údtypess           r4   Ú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Õ$ñ%r6   c                  ót  — g d¢} g d¢}| D �cg c]  }t        |«      ‘Œ }}|D �cg c]  }t        |«      ‘Œ }}t        j                  «       5  t        | |«      }d d d «       t        j                  «       5  t        ||«      }d d d «       t	        «       y c c}w c c}w # 1 sw Y   ŒIxY w# 1 sw Y   Œ,xY w)N)TTF)TFT)r¥   r  r  r(   r	   )r_  rÄ   rÒ   rË   rD  rÛ  rÝ  s          r4   Útest_sokalmichenerrñ  ÷  sª   € ò 	€AÚ€AØÖ�AŒˆQ�Ð€AÐØÖ�AŒˆQ�Ð€AÐÜ	×	Ñ	Ó	!ñ $Ü˜a Ó#ˆ÷$ä	×	Ñ	Ó	!ñ $Ü˜a Ó#ˆ÷$ô �˜Õùò 	ùÚ÷$ð $ú÷$ð $ús"   �B¥BÁB"Á6B.Â"B+Â.B7c            	      óŒ  — d} d}d}d}d|| z   z  ||z   d|| z   z  z   z  }t        |d«       t        j                  «       5  t        ddgddgddg¬«      }d d d «       t        |«       g d	¢}g d
¢}dD ]7  }t        j                  «       5  t        t        |||g«      d«       d d d «       Œ9 y # 1 sw Y   ŒZxY w# 1 sw Y   ŒPxY w)Nrt  gš™™™™™É?r´   rÙ   gXøŸ¡$IÒ?rl   r   ©rÔ   )FFTTTFFTTTTTTFTFFFTT)TTTFFTTTFTTTTTFFFTTT)gš™™™™™©?r`  r´   g      4@r™  )r
   r  r  r(   )	ÚntfÚnftÚnttÚnffÚexpectedÚactualÚa1Úa2rÔ   s	            r4   Útest_sokalmichener_with_weightrü    sî   € ð
 €CØ
€CØ
€CØ
€CØ�C˜#‘I‰ #¨¡)¨a°3¸±9©oÑ"=Ñ>€HÜ˜ )Ô,Ü	×	Ñ	Ó	!ñ ;Ü  1˜v¨¨1 v°!°S°Ô:ˆ÷;ä˜ &Ô)ò
D€Bò
I€Bð $ò PˆÜ×#Ñ#Ó%ñ 	PÜ¤¨b°"°q°cÓ :Ð<NÔO÷	Pð 	PñP÷;ð ;ú÷	Pð 	Pús   Á B.Â
B:Â.B7Â:C	c                 ó0  — t        j                  g d¢g d¢g d¢g d¢g«      }|j                  «       }t        | «      5  t	        ||| «       d d d «       t        | «      5  t        || «       d d d «       t        ||«       y # 1 sw Y   Œ6xY w# 1 sw Y   Œ"xY w)Nr(  r*  r.  ©g3333336@gÍÌÌÌÌL7@g333333F@)rZ   rá  rÀ  r  r   r   r   )r5   r>  rÃ  s      r4   Útest_modifies_inputrÿ    s‰   € ô 
�‰’\Ú$Ú$Ú'ð)ó 
*€Bð �g‰g‹i€GÜ	˜&Ó	!ñ Üˆb�"�fÔ÷ä	˜&Ó	!ñ Üˆb�&Ô÷ä�r˜7Õ#÷	ð ú÷ð ús   ½B ÁBÂ B	ÂB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 ]¬  }|di}|dk(  r| d	k(  s|d
k(  r| dk(  s
|dk(  r| dk(  rŒ&t        j                  t        «      5  t        | «      5  t        ||| fi |¤Ž d d d «       d d d «       t        j                  t        «      5  t        | «      5  t        || fi |¤Ž d d d «       d d d «       Œ® y # 1 sw Y   ŒêxY w# 1 sw Y   ŒÇxY w# 1 sw Y   ŒoxY w# 1 sw Y   ŒsxY w# 1 sw Y   ŒDxY w# 1 sw Y   ŒõxY w)Nr(  r*  r.  rþ  rá   )r_  r�  rŸ  Úfoor�  r'   rŸ  r#   r_  r$   )rZ   rá  r  r<  rÐ   r   r   r  )r5   r>  rE  rï   s       r4   Útest_Xdist_deprecated_argsr  .  sl  € ô 
�‰’\Ú$Ú$Ú'ð)ó 
*€Bô
 
�‰”yÓ	!ñ "Üˆb�"�f˜bÔ!÷"ô 
�‰”yÓ	!ñ Üˆb�&˜"Ô÷ð  ò ,ˆØ�u�ˆà�CŠZ˜F lÒ2Ø˜4’K F¨mÒ$;Ø˜3’J 6¨[Ò#8Øä�]‰]œ9Ó%ñ 	0Ü! &Ó)ñ 0Ü�b˜"˜fÑ/¨Ò/÷0÷	0ô �]‰]œ9Ó%ñ 	,Ü! &Ó)ñ ,Ü�b˜&Ñ+ FÒ+÷,÷	,ð 	,ñ,÷"ð "ú÷ð ú÷0ð 0ú÷	0ð 	0ú÷
,ð ,ú÷	,ð 	,ús_   »D3Á+D?ÃEÃEÃEÄE/ÄE#Ä E/Ä3D<Ä?EÅEÅEÅE 	Å#E,Å(E/Å/E8	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 ]‹  }t	        j                  t        «      5  t        | «      5  t        |||¬«       d d d «       d d d «       t	        j                  t        «      5  t        | «      5  t        ||||¬«       d d d «       d d d «       Œ� y # 1 sw Y   ŒYxY w# 1 sw Y   Œ]xY w# 1 sw Y   Œ,xY w# 1 sw Y   Œ¼xY w)	NrO   rs  rÙ   rl   )r'   r#   r!   únot applicabler:  ró  )r\   rZ   r”   r‹   r  rE  r=  r<  r{   r  r   r   )r5   rl  rÔ   r’  s       r4   Útest_Xdist_non_negative_weightsr  M  s  € ä
Ð Ñ!¡# A #¡s¨ s (Ñ+€AÜ
�‰�—‘˜‘
Ó€AØ‘�!�‰fˆW€A�cˆ€c�FàÐ?Ñ?Ü�‰Ð$Ô%à”d˜6“l G¨fÑ$4Ð5ò $ˆÜ�]‰]œ:Ó&ñ 	!Ü! &Ó)ñ !Ü�a˜˜aÕ ÷!÷	!ô �]‰]œ:Ó&ñ 	$Ü! &Ó)ñ $Ü�a˜˜A Õ#÷$÷	$ð 	$ñ	$÷!ð !ú÷	!ð 	!ú÷$ð $ú÷	$ð 	$úsH   ÂDÂC?Â'DÃD#ÃDÃ,D#Ã?DÄDÄD	ÄD ÄD#Ä#D,	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²  rG   rl   rÀ  rù  rs  r�   rÙ   râ   r  )r   r   rZ   r·   r	   rH   ru   r  r<  r{   r;  r®   rÊ  s     r4   Ú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Š  rG   r   rt  r+   rl   )rZ   r”   r   r�  r   r	   r   )rË   rì  s     r4   Útest_yule_all_samer	  y  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Õr6   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´   rt  rt  )rt  r´   rt  rá   r´   rt  rv  g)>ÎdºÝ?rÙ  r   r€   rl   gÆüÜÐ”�°?T)r}   Úkeepdims)rl   rÙ   râ   r  )rs  rŠ  é   rf   )é	   rÇ  é   é   )é   ræ  r¹  r5  )é   é   é   é   )é   é   é   é   )gº'Y˜ÏÉ?gTÒyCÐ‡Â?g¥F�®w$½?gœ\BôZ¿·?)g;0%7/óÁ?g�‡ƒ)o¤?gkØï‰uª”?)r
   r!   rZ   r¸   )rr   rÒ   s     r4   r  r  †  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õ;r6   c                  ó.  — t        j                  g d¢«      } t        j                  g d¢«      }t        | |«      }t        | |gd¬«      }t	        ||«       t        t        j                  | «      t        j                  |«      d¬«      }t	        ||«       y )N)rl   r   r   )rÙ   r   r   r   r  )rZ   r¸   r   r   r   r   r¢  )Úarr_1Úarr_2rø  rù  s       r4   Útest_gh_17703r  £  sq   € Ü�H‰H’YÓ€EÜ�H‰H’YÓ€EÜ�E˜5Ó!€HÜ�E˜5�>¨&Ô1€FÜ�F˜HÔ%Ü”2—=‘= Ó'Ü—=‘= Ó'°ô8€Fä�F˜HÕ%r6   c                 ó>  — | dv rt        j                  d«       t        j                  dt        j                  ¬«      }|j                  d¬«       t        | «      5   t        t        j                  j                  | «      |||¬«       d d d «       y # 1 sw Y   y xY w)N)r!   r#   r'   r  rÇ  rG   F)Úwriteró  )r  rE  rZ   r;  r·   Úsetflagsr  rë  ÚscipyÚspatialÚdistance)r5   rË   s     r4   Útest_immutable_inputr#  ®  sv   € àÐ?Ñ?Ü�‰Ð$Ô%Ü
�	‰	�"œBŸJ™JÔ'€AØ‡J�J�U€JÔÜ	˜&Ó	!ñ ;Ø/Œ”—‘×&Ñ&¨Ó/°°1¸Õ:÷;÷ ;ñ ;ús   Á.BÂB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 ©Nr{  rL   úpdist-jaccardr    rà  r  rã  s        r4   Útest_pdist_jaccard_randomz%TestJaccard.test_pdist_jaccard_randomº  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r'  r  rã  s        r4   Ú!test_pdist_jaccard_random_float32z-TestJaccard.test_pdist_jaccard_random_float32Á  ó=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜IÓ&ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y ©Nr{  rL   r(  Útest_jaccardrà  r  rî  s        r4   Útest_pdist_jaccard_random_nonCz*TestJaccard.test_pdist_jaccard_random_nonCÈ  s4   € ØˆÜÐ"Ñ#ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r'  rp  rã  s        r4   Útest_pdist_djaccard_randomz&TestJaccard.test_pdist_djaccard_randomÏ  r,  r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r'  r  rã  s        r4   Ú"test_pdist_djaccard_random_float32z.TestJaccard.test_pdist_djaccard_random_float32Ö  r,  r6   c                 óˆ   — d}t        t        j                  d«      d«      }t        t        j                  d«      ||¬«       y )NrS  ©rs  râ   r    rÇ  rà  ©r   rZ   r  r   ©r  r[  r  s      r4   Útest_pdist_djaccard_allzerosz(TestJaccard.test_pdist_djaccard_allzerosÝ  s0   € ØˆÜ”"—(‘(˜6Ó" IÓ.ˆÜœŸ™ › a¨cÖ2r6   c                 ó†   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||¬«       y r.  rp  rî  s        r4   Útest_pdist_djaccard_random_nonCz+TestJaccard.test_pdist_djaccard_random_nonCâ  s=   € ØˆÜ�J‰J”rÐ-Ñ.Ó/ˆÜ�_Ñ%ˆÜ˜˜NÓ+ˆÜ˜ ¨sÖ3r6   c                 óˆ   — d}t        t        j                  d«      d«      }t        t        j                  d«      ||¬«       y )NrS  r6  r/  rÇ  rà  r7  r8  s      r4   Ú!test_pdist_djaccard_allzeros_nonCz-TestJaccard.test_pdist_djaccard_allzeros_nonCé  s0   € ØˆÜ”"—(‘(˜6Ó" NÓ3ˆÜœŸ™ › a¨cÖ2r6   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‰  ©ÚwjaccardrZ   r¸   r   r   r‘  s      r4   Ú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Ö4r6   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      r4   Ú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¨°Ö6r6   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    )	rZ   r¸   rõ  rì  r[  r   r    r   r   )r  rË   rD  r[  s       r4   Ú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°%Õ8r6   N)rí   r  r  r)  r+  r0  r2  r4  r9  r;  r=  rA  rC  rF  ri   r6   r4   r%  r%  ¸  s9   „ ò4ò4ò4ò4ò4ò3ò
4ò3ò
5ò7ó9r6   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 )Nr{  rÞ  úpdist-chebyshevr   rà  rý  rã  s        r4   Útest_pdist_chebyshev_randomz)TestChebyshev.test_pdist_chebyshev_random	  s5   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ˜˜;Ó'ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )Nr©  rÞ  rJ  r   rÙ   rW  r|  rã  s        r4   Ú#test_pdist_chebyshev_random_float32z1TestChebyshev.test_pdist_chebyshev_random_float32	  sD   € ØˆÜ�J‰J”rÐ,Ñ-Ó.ˆÜÐ&Ñ'ˆÜ˜˜;Ó'ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nr{  rÞ  rJ  Útest_chebyshevrà  rý  rî  s        r4   Ú test_pdist_chebyshev_random_nonCz.TestChebyshev.test_pdist_chebyshev_random_nonC	  s6   € ØˆÜÐ!Ñ"ˆÜÐ&Ñ'ˆÜ˜Ð+Ó,ˆÜ˜ ¨sÖ3r6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nri  rò  úpdist-chebyshev-irisr   rà  rý  rã  s        r4   Útest_pdist_chebyshev_irisz'TestChebyshev.test_pdist_chebyshev_iris 	  s3   € ØˆÜˆv‰JˆÜÐ+Ñ,ˆÜ˜˜;Ó'ˆÜ˜ ¨sÖ3r6   c                 ó–   — d}t        j                  t        d   «      }t        d   }t        |d«      }t	        |||t
        dkD  ¬«       y )NrÆ   rò  rR  r   rÙ   rW  r|  rã  s        r4   Ú!test_pdist_chebyshev_iris_float32z/TestChebyshev.test_pdist_chebyshev_iris_float32'	  sB   € ØˆÜ�J‰J”r˜&‘zÓ"ˆÜÐ+Ñ,ˆÜ˜˜;Ó'ˆÜ˜ ¨s¼GÀa¹KÖHr6   c                 ó`   — d}t         d   }t         d   }t        |d«      }t        |||¬«       y )Nri  rò  rR  rO  rà  rý  rî  s        r4   Útest_pdist_chebyshev_iris_nonCz,TestChebyshev.test_pdist_chebyshev_iris_nonC.	  s4   € ØˆÜˆv‰JˆÜÐ+Ñ,ˆÜ˜Ð+Ó,ˆÜ˜ ¨sÖ3r6   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Š  rs  r  )r   rl   rs  râ   r   ró  ©r	   r   r   r   ©r  rË   rD  rÔ   s       r4   Útest_weightedzTestChebyshev.test_weighted5	  s\   € ò ˆÚˆÚˆÜ”Y˜q ! QÓ'¨Ô+Ü”U˜A˜q˜6 ;°!Ô4°q°cÔ:Ü”U˜A˜3   [°AÔ6¸!¸¸Õ>r6   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²  rY  r¿  r   r   ró  rZ  r[  s       r4   Útest_zero_weightzTestChebyshev.test_zero_weight?	  sZ   € âˆÚˆÚˆÜ”Y˜q ! QÓ'¨Ô+Ü”U˜A˜q˜6 ;°!Ô4°q°cÔ:Ü”U˜A˜3   [°AÔ6¸!¸¸Õ>r6   N)rí   r  r  rK  rM  rP  rS  rU  rW  r\  r^  ri   r6   r4   rH  rH  		  s,   „ ò4òIò4ò4òIò4ò?ó?r6   rH  rn   )	NNFTFFFFN)†rC  Úos.pathrT   Ú	functoolsr   r   rÊ  ÚnumpyrZ   rë   Únumpy.linalgr   Únumpy.testingr   r   r   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)   r*   r+   Úscipy._lib._utilr,   r-   Úfixturer5   rR   r¸   Ú_tdistÚ_ytdistr\   rd   rj   r~   r¢   r•   r–   rÅ   Úassert_allclose_forgivingrÑ   r  r  Ústrr  rn  rZ  r  râ  r±  r�  rÉ  r�  r£  Ú
wcityblockÚ
wchebyshevrè  rë  Úwkulczynski1r@  rà  rã  r¼  r¶  r­  Úwsokalmichenerr·  r  rÕ  rÔ  r  r#  rK  ra  rc  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%  rH  ri   r6   r4   ú<module>ro     s#  ðóF Û ç $Û ã Û Ý ÷2÷ 2ó 2ó ã ÷&÷ &õ &÷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ñ ð%˜Só %ñ 
˜¨Q¸Ô	>€Ù! %°aØ*/¸EôC€á	˜¨Q¸ÀaÔ	H€Ù! %°aÀØ-2¸1ô>€á! .Ó1€Ù& w¸Ô?Ð ?€	ˆHÙ˜Ó€Ù˜Ó€Ù˜YÓ'€
Ù˜YÓ'€
Ù
˜&Ó
!€Ù˜{Ó+€Ù˜{Ó+€Ù˜7Ó#€Ù˜Y°5Ô9€
Ù˜{°uÔ=€Ù˜jÓ)€Ù˜H°Ô7€	Ù˜{Ó+€Ù  Ó/€Ù˜jÓ)€÷tAñ tA÷n	W?ñ W?÷rQ4ñ Q4÷h@-ñ @-÷F32ñ 32÷l $ñ  $òF&÷F+ñ F+òR%÷6ñ 6ðr ‡�×Ñ˜Ò0Ó1ñ-ó 2ð-òBò;òRò/òBòò-ò(ò%ð> ‡�×Ññó ðð ‡�×ÑñPó ðPð0 ‡�×Ññ$ó ð$ð ‡�×Ññ,ó ð,ð< ‡�×Ññ$ó ð$ò"ò4
ò;ò:&ð ‡�×Ññ;ó ð;÷N9ñ N9÷b=?ò =?r6   