Ë
    ÷Q(h¯5 ã                   ó   — d Z ddlZddlZddlZddlmZ ddlmZ ddlm	Z	 ddl
ZddlZddlmZ ddlmZ ddlZddlmZ ddlmZ dd	lmZ dd
lmZ ddlmZ ddlmZmZ ddlm Z  ddl!m"Z" ddl#m$Z$ ddl%m&Z& ddl'm(Z( ddl)m*Z*m+Z+m,Z,m-Z-m.Z.m/Z/ ddl0m1Z1m2Z2 ddl3m4Z4m5Z5m6Z6m7Z7m8Z8m9Z9m:Z:m;Z; ddl<m=Z= ddl>m?Z?m@Z@mAZAmBZBmCZCmDZD ddlEmFZFmGZGmHZHmIZImJZJmKZKmLZLmMZMmNZNmOZOmPZPmQZQmRZRmSZSmTZTmUZUmVZVmWZWmXZXmYZYmZZZm[Z[m\Z\m]Z]m^Z^m_Z_m`Z` d„ Zad„ ZbejÆ                  jÉ                  dejÊ                  jË                  d«       ejÌ                  dd«      jÏ                  «       g«      d„ «       Zhd„ Zid „ Zjd!„ ZkejÆ                  jÉ                  d"ejØ                  d#fejÚ                  d$fejÚ                  d#fg«      ejÆ                  jÉ                  d%ejÜ                  ejÞ                  g«      d&„ «       «       ZpejÆ                  jÉ                  d'ejØ                  d(d)d*fejØ                  dd)d+fejØ                  d,d)d-fejØ                  dd$d+fejÚ                  d(d)d.fejÚ                  dd)d/fejÚ                  d0d)d1fejÚ                  d(d2d3fejÚ                  d(d4d.fg	«      ejÆ                  jÉ                  d%ejÜ                  ejÞ                  g«      d5„ «       «       ZqejÆ                  jÉ                  d6g d7¢«      ejÆ                  jÉ                  d%ejÜ                  ejÞ                  g«      d8„ «       «       Zrd9„ ZsejÆ                  jÉ                  d: ejè                  d4ejÚ                  gg«      d;f ejè                  d4ejÚ                  gg«      d;f ejè                  d4ejØ                  gg«      d<f ejè                  d4ejÚ                  ggeu¬=«      d>fg«      ejÆ                  jÉ                  d?d)d#g«      d@„ «       «       ZvdA„ ZwejÆ                  jñ                  dB«      dC„ «       ZyejÆ                  jÉ                  ddDdEgdFdGgg ejè                  dDdEgdFdGggdH¬=«       ejè                  dDdEgdFdGggdI¬=«      dJdKgdLdMgg ejè                  dJdKgdLdMggdN¬=«      g«      dO„ «       ZzejÆ                  jÉ                  dPg dQ¢«      ejÆ                  jÉ                  dRejö                  ejø                  gejö                  fejø                  ejø                  fdSejø                  fg«      dT„ «       «       Z}dU„ Z~dV„ ZdW„ Z€dX„ Z�dY„ Z‚dZ„ Zƒd[„ Z„ e�j
                  g d\¢¬]«      d^„ «       Z†d_„ Z‡d`„ Zˆda„ Z‰db„ ZŠdc„ Z‹dd„ ZŒde„ Z�df„ ZŽdg„ Z�dh„ Z�ejÆ                  jÉ                  di ed«      e‘e’gg dj¢¬k«      dl„ «       Z“dm„ Z”dn„ Z•do„ Z–dp„ Z—ejÆ                  jÉ                  dqejø                  ejö                  fejø                  ddSf«      ejÆ                  jÉ                  drds«      dt„ «       «       Z˜du„ Z™dv„ Zš G dw„ dx«      Z› G dy„ dz«      Zœd{„ Z�ejÆ                  jÉ                  d|d)d#g«      d}„ «       ZžejÆ                  jÉ                  d~d eŸd€d�d‚d)i«      dd)dfdƒ eŸd€d�d‚d)i«      dd)dfd„ eŸd€d�d‚d)i«      gd„gd)dfd… eŸd€d�d‚d)i«      d…gd)dfd† eŸd€d�d‚d)i«      dde fdƒ eŸd€d�d‡d)i«      dde¡fgg dˆ¢¬k«      d‰„ «       Z¢ejÆ                  jÉ                  d%ejÜ                  ejÞ                  e�jF                  e�jH                  e�jJ                  e�jL                  e�jN                  e�jP                  g«      dŠ„ «       Z©d‹„ ZªdŒ„ Z«ejÆ                  jÉ                  d�g dŽ¢«      d�„ «       Z¬ejÆ                  jÉ                  d�d4d‘e­dd’d“ e®d”«      fdd‘e�j^                  dd’d“ e®d•«      fdd‘e�j`                  dd’d“ e®d–«      fd4d‘e­e±fdd’d“ e®d—«      fd4d˜e²dd’d“ e d™«      fdšd›e²dd’d“ e dœ«      fdd�e²dd’dž e dŸ«      fd’d e²dd’d¡ e d¢«      fd’d£e²dd’d¤ e d¥«      fd’d¦e²dd’d¡ e d§«      fd’d¨e²dddž e d©«      fg«      dª„ «       Z³d« ejè                  d4dg«      dd(f ejè                  d4dg«       ejè                  d4dg«      dd(fd¬ ejè                  dšdg«      ed­fd® ejè                  dšdg«      ed(f ejè                  d4d¯gejö                  ¬=«       ejè                  d4dgejö                  ¬=«      ed°f ejè                  d4d±gejø                  ¬=«       ejè                  d4dgejø                  ¬=«      ed²fd³ ejè                  dšdg«      ed´fdµœZ´ejÆ                  jÉ                  d¶ e‘e´�jk                  «       «       e‘e´�jm                  «       «      ¬k«      ejÆ                  jÉ                  d·d)d#g«      d¸„ «       «       Z·d¹e dºfd»e d¼fd½e d¾f ejè                  d¿dÀgejö                  ¬=«      e d¾f ejè                  dÁdÂgejø                  ¬=«      e d¾fdÃœZ¸ejÆ                  jÉ                  dÄ e‘e¸�jk                  «       «       e‘e¸�jm                  «       «      ¬k«      dÅ„ «       Z¹dÆ„ ZºejÆ                  jÉ                  dÇejè                  ejÞ                  e�jF                  g«      dÈ„ «       Z»ejÆ                  jÉ                  dÇejè                  ejÞ                  e�jF                  g«      dÉ„ «       Z¼ejÆ                  jÉ                  dÇejÞ                  e�jF                  g«      dÊ„ «       Z½dË„ Z¾dÌ„ Z¿dÍ„ ZÀejÆ                  jÉ                  dÎdd4dÏgg«      dÐ„ «       ZÁejÆ                  jÉ                  dÑg dÒ¢«      dÓ„ «       ZÂejÆ                  jÉ                  dÔg dÕ¢«      dÖ„ «       ZÃejÆ                  jÉ                  d×dØdÙe�jˆ                  fdÚdÛe�jˆ                  fdØdÜe�jˆ                  fdÝdÞe�jŠ                  fdßdàe�jŠ                  fdádâe�jŠ                  fdãdäe�jŠ                  fdådäe�jŠ                  fdædçe�jŠ                  fdèdãe�jŠ                  fdédêe�jŒ                  fdëdìe�jŒ                  fdídîe�jŒ                  fdïdðe�jŒ                  fdñdòe�jŒ                  fg«      dó„ «       ZÇejÆ                  jÉ                  dôg dõ¢«      dö„ «       ZÈejÆ                  jÉ                  dg d÷¢g dø¢g dù¢g dú¢dûd4idüdidýdÏiggg dþ¢¬k«      ejÆ                  jÉ                  dôg dÿ¢«      �d „ «       «       ZÉejÆ                  jÉ                  dg �d¢g �d¢¬k«      �d„ «       ZÊejÆ                  jÉ                  �d e‘ eËd«      «       eËd«      ddûdügdý�dgggg �d¢¬k«      �d„ «       ZÌ�d„ ZÍejÆ                  jÉ                  �d	g �d
¢«      �d„ «       ZÎejÆ                  jÉ                  dôg �d¢«      �d„ «       ZÏ�d„ ZÐ�d„ ZÑejÆ                  jÉ                  �d	�de�d   d   f�de�d   d   f�de�d   d   fg«      �d„ «       ZÒ�d„ ZÓ�d„ ZÔejÆ                  jÉ                  �ddûd4g�df�ddûdügg�dfg�d�dg¬k«      �d„ «       ZÕ G �d„ �de«      ZÖ�d „ Z×�d!„ ZØ�d"„ ZÙejÆ                  jÉ                  �d#g �d$¢«      �d%„ «       ZÚ�d&„ ZÛ�d'„ ZÜejÆ                  jÉ                  �d(dd4dd4dejÚ                  gg �d)¢g«      �d*„ «       ZÝe;�d+„ «       ZÞejÆ                  jÉ                  �d,g �d-¢«      ejÆ                  jÉ                  �d.d)d#g«      �d/„ «       «       Zß�d0„ ZàejÆ                  jÉ                  �d1eAe@z   e?z   eBz   «      ejÆ                  jÉ                  �d2g �d3¢«      �d4„ «       «       ZáejÆ                  jÉ                  �d5 ejè                  d4«       ejè                  d«      gd4dgdÏd’ggg«      �d6„ «       Zâ�d7„ Zã�d8„ Zä�d9„ Zå�d:„ Zæ�d;„ Zçe;�d<„ «       Zè�d=„ Zéy(>  z$Tests for input validation functionsé    N)Úproduct)Ú
itemgetter)ÚNamedTemporaryFile)Úimportorskip)Úconfig_context)Údependent_packages)ÚBaseEstimator)Ú
make_blobs)ÚRandomForestRegressor)ÚNotFittedErrorÚPositiveSpectrumWarning)ÚARDRegression)ÚEstimatorWithFit)ÚKNeighborsClassifier)Ú_sparse_random_matrix)ÚSVR)Ú_safe_indexingÚas_float_arrayÚcheck_arrayÚcheck_symmetricÚ	check_X_yÚ
deprecated)ÚMockDataFrameÚ_MockEstimatorOnOffPrediction)ÚSkipTestÚ
TempMemmapÚ_convert_containerÚassert_allcloseÚassert_allclose_dense_sparseÚassert_array_equalÚcreate_memmap_backed_dataÚ'skip_if_array_api_compat_not_configured)Ú_NotAnArray)ÚCOO_CONTAINERSÚCSC_CONTAINERSÚCSR_CONTAINERSÚDIA_CONTAINERSÚDOK_CONTAINERSÚparse_version)ÚFLOAT_DTYPESÚ_allclose_dense_sparseÚ_check_feature_names_inÚ_check_method_paramsÚ_check_psd_eigenvaluesÚ_check_response_methodÚ_check_sample_weightÚ_check_yÚ_deprecate_positional_argsÚ_estimator_hasÚ_get_feature_namesÚ
_is_fittedÚ_is_pandas_dfÚ_is_polars_dfÚ_num_featuresÚ_num_samplesÚ_to_object_arrayÚassert_all_finiteÚcheck_consistent_lengthÚcheck_is_fittedÚcheck_memoryÚcheck_non_negativeÚcheck_random_stateÚcheck_scalarÚcolumn_or_1dÚhas_fit_parameterÚvalidate_datac                  óæ  — t        d «      t        j                  j                  j                  u sJ ‚t        t        j                  «      t        j                  j                  j                  u sJ ‚t        j                  j                  d«      } t        d«      j                  d«      | j                  d«      k(  sJ ‚t        j                  j                  d«      } t        | «      | u sJ ‚t        j                  j                  d«      } t        d«      j                  d«      | j                  d«      k7  sJ ‚t        j                  t        «      5  t        d«       d d d «       y # 1 sw Y   y xY w)Né*   éd   é+   zsome invalid seed)
r@   ÚnpÚrandomÚmtrandÚ_randÚRandomStateÚrandintÚpytestÚraisesÚ
ValueError)Úrng_42s    úa/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/utils/tests/test_validation.pyÚtest_make_rngrT   [   s  € ä˜dÓ#¤r§y¡y×'7Ñ'7×'=Ñ'=Ñ=Ð=Ð=ÜœbŸi™iÓ(¬B¯I©I×,<Ñ,<×,BÑ,BÑBÐBÐBä�Y‰Y×"Ñ" 2Ó&€FÜ˜bÓ!×)Ñ)¨#Ó.°&·.±.ÀÓ2EÒEÐEÐEä�Y‰Y×"Ñ" 2Ó&€FÜ˜fÓ%¨Ñ/Ð/Ð/ä�Y‰Y×"Ñ" 2Ó&€FÜ˜bÓ!×)Ñ)¨#Ó.°&·.±.ÀÓ2EÒEÐEÐEä	�‰”zÓ	"ñ 0ÜÐ.Ô/÷0÷ 0ñ 0ús   ÅE'Å'E0c                  óŒ  — t        j                  dt         j                  ¬«      } | t        j                  dt         j                  ¬«      z   } t	        | d¬«      }|j
                  t         j                  k(  sJ ‚| j                  t         j                  «      } t	        | d¬«      }t	        | d¬«      | usJ ‚|j
                  t         j                  k(  sJ ‚t        t         j                  t         j                  t         j                  t         j                  t         j                  t         j                  g}|D ]=  }| j                  |«      } t	        | «      }|j
                  t         j                  k(  rŒ=J ‚ | j                  t         «      } t	        | d¬«      }|j
                  t         j                  k(  sJ ‚t        j                  dt         j                  ¬«      } t	        | d¬«      | u sJ ‚t        j"                  | «      } t        j$                  t	        | d¬«      «      sJ ‚t'        j(                  t        j                  d«      «      j+                  «       t-        ddd	¬
«      j+                  «       g}|D ]G  }t	        |d¬«      }t         j.                  |d<   t        j0                  |«      j3                  «       sŒGJ ‚ y )N)é   é
   ©ÚdtyperW   F©ÚcopyT)rV   é   é   çš™™™™™¹?)Údensity©r   r   )rI   ÚonesÚint32Úaranger   rY   Úfloat32ÚastypeÚint64Úfloat64ÚboolÚint8Úint16Úuint8Úuint16Úuint32ÚobjectÚasfortranarrayÚ	isfortranÚspÚ
csc_matrixÚtoarrayr   ÚnanÚisnanÚany)ÚXÚX2Útested_dtypesrY   ÚmatricesÚMÚNs          rS   Útest_as_float_arrayr}   m   s  € ä
�‰�œrŸx™xÔ(€AØ	ŒB�I‰I�b¤§¡Ô)Ñ)€AÜ	˜ Ô	&€BØ�8‰8”r—z‘zÒ!Ð!Ð!à	�‰”—‘Ó€AÜ	˜ Ô	%€Bä˜! %Ô(°Ñ1Ð1Ð1Ø�8‰8”r—z‘zÒ!Ð!Ð!äœ2Ÿ7™7¤B§H¡H¬b¯h©h¼¿¹Ä"Ç)Á)ÌRÏYÉYÐW€MØò &ˆØ�H‰H�U‹OˆÜ˜AÓˆØ�x‰xœ2Ÿ:™:Ó%Ð%Ð%ð&ð 	
�‰”Ó€AÜ	˜ Ô	%€BØ�8‰8”r—z‘zÒ!Ð!Ð!ô 	�‰�œbŸj™jÔ)€AÜ˜! %Ô(¨AÑ-Ð-Ð-ä
×Ñ˜!Ó€AÜ�<‰<œ q¨tÔ4Ô5Ð5Ð5ô 	�‰”b—i‘i “lÓ#×+Ñ+Ó-Ü˜b "¨dÔ3×;Ñ;Ó=ð€Hð ò %ˆÜ˜1 4Ô(ˆÜ—&‘&ˆˆ$‰Ü—8‘8˜A“;—?‘?Õ$Ð$Ð$ñ%ó    rw   ©rW   r\   rW   r\   c                 ó‚   — t         j                  | d<   t         j                  | d<   t        | d¬«      }t        || «       y )N)r]   r   )é   é   ú	allow-nan©Úensure_all_finite)rI   rt   r   r   )rw   ÚX_converteds     rS   Útest_as_float_array_nanr‡   —   s2   € ä�f‰f€A€d�GÜ�f‰f€A€d�GÜ  °kÔB€KÜ  ¨aÕ0r~   c                  ó  — t        j                  d«      j                  dd«      } t        t	        | «      t         j
                  «      rJ ‚t        t	        t        j                  | «      «      t         j
                  «      rJ ‚y )Né   rV   é   )rI   rc   ÚreshapeÚ
isinstancer   Úmatrixrq   rr   ©rw   s    rS   Útest_np_matrixr�   Ÿ   sZ   € ä
�	‰	�"‹×Ñ˜a Ó#€Aäœ.¨Ó+¬R¯Y©YÔ7Ð7Ð7Üœ.¬¯©°qÓ)9Ó:¼B¿I¹IÔFÐFÐFÐFr~   c                  óP  — d„ } t        d¬«      5 }t        j                  |dt        j                  ¬«      }d|d d  t        t        j
                  | fD ]<  } ||«      }d|d d  t        |j                  «       |j                  «       «       d|d d  Œ> 	 d d d «       y # 1 sw Y   y xY w)Nc                 ó   — t        | d¬«      S )NFrZ   )r   )Úxs    rS   ú<lambda>ztest_memmap.<locals>.<lambda>ª   s   € ”n Q¨UÔ3€ r~   zsklearn-test)Úprefix©rW   rW   )ÚshaperY   r   r‚   )r   rI   Úmemmaprd   r   Úasarrayr    Úravel)ÚasfltÚtmpr{   Úfrw   s        rS   Útest_memmapr�   §   s’   € ñ 4€Eä	 >Ô	2ð °cÜ�I‰I�c ´·±Ô<ˆØˆ‰!ˆäœrŸz™z¨5Ð1ò 	ˆAÙ�!“ˆAØˆA‰aˆDÜ˜qŸw™w›y¨!¯'©'«)Ô4ØˆA‰a‰Dñ		÷	÷ ñ ús   �BBÂB%c                  ó~  — t        j                  d«      } | | j                  fD ]P  }dD ]I  }t        |d|¬«      }|j                  d   sJ ‚t        |d|¬«      }|j                  d   sJ ‚|sŒD||urŒIJ ‚ ŒR t        j                  | «      } | j                  d d d…   | _        | j                  j                  d   rJ ‚y )	N)rW   r]   )TFÚC)Úorderr[   ÚC_CONTIGUOUSÚFÚF_CONTIGUOUSéÿÿÿÿ)rI   ra   ÚTr   Úflagsrq   Ú
csr_matrixÚdata)rw   ÚAr[   ÚBs       rS   Útest_orderingr«   ·   sÃ   € ô 	�‰�Ó€AØ�—‘ˆVò "ˆØ!ò 	"ˆDÜ˜A S¨tÔ4ˆAØ—7‘7˜>Ò*Ð*Ð*Ü˜A S¨tÔ4ˆAØ—7‘7˜>Ò*Ð*Ð*ÚØ ’zÐ!�zñ	"ð"ô 	�‰�aÓ€AØ�V‰V‘D�b�D‰\€A„FØ�v‰v�|‰|˜NÒ+Ð+Ð+Ð+r~   zvalue, ensure_all_finiteFrƒ   Úretypec                 ó¾   —  |t        j                  d«      j                  dd«      j                  t        «      «      }| |d<   t        ||d¬«      }t        ||«       y )NrŠ   r\   r`   T)r…   Úaccept_sparse)rI   rc   r‹   re   Úfloatr   r   )Úvaluer…   r¬   rw   Ú	X_checkeds        rS   Ú(test_check_array_ensure_all_finite_validr²   Ê   sQ   € ñ 	Œr�y‰y˜‹|×#Ñ# A qÓ)×0Ñ0´Ó7Ó8€AØ€A€d�GÜ˜AÐ1BÐRVÔW€IÜ   IÕ.r~   z/value, input_name, ensure_all_finite, match_msgÚ TzInput contains infinityzInput X contains infinityÚsample_weightz%Input sample_weight contains infinityúInput contains NaNzInput X contains NaNÚyzInput y contains NaNz	allow-infz1ensure_all_finite should be a bool or 'allow-nan'r‚   c                 ó  —  |t        j                  d«      j                  dd«      j                  t         j                  «      «      }| |d<   t        j                  t        |¬«      5  t        |||d¬«       d d d «       y # 1 sw Y   y xY w)NrŠ   r\   r`   ©ÚmatchT)Ú
input_namer…   r®   )	rI   rc   r‹   re   rg   rO   rP   rQ   r   )r°   rº   r…   Ú	match_msgr¬   rw   s         rS   Ú*test_check_array_ensure_all_finite_invalidr¼   Ö   sr   € ñ. 	Œr�y‰y˜‹|×#Ñ# A qÓ)×0Ñ0´·±Ó<Ó=€AØ€A€d�GÜ	�‰”z¨Ô	3ñ 
ÜØØ!Ø/Øõ		
÷
÷ 
ñ 
ús   Á)BÂBrº   )rw   r¶   r´   c                 ó(  —  |t        j                  d«      j                  dd«      j                  t         j                  «      «      }t         j
                  |d<   t        «       }d|j                  j                  › d�}t        j                  t        d| › d�¬«      5 }t        ||| d	¬
«       d d d «       | dk(  r|j                  j                  d   v sJ ‚|j                  j                  d   vsJ ‚| dk(  r€t        j                  t        d| › d�¬«      5 }t        «       j                  |t        j                   |j"                  d   «      «       d d d «       ||j                  j                  d   v sJ ‚y y # 1 sw Y   ŒÎxY w# 1 sw Y   Œ4xY w)NrŠ   r\   r`   ú
aX   does not accept missing values encoded as NaN natively. For supervised learning, you might want to consider sklearn.ensemble.HistGradientBoostingClassifier and Regressor which accept missing values encoded as NaNs natively. Alternatively, it is possible to preprocess the data, for instance by using an imputer transformer in a pipeline or drop samples with missing values. See https://scikit-learn.org/stable/modules/impute.html You can find a list of all estimators that handle NaN values at the following page: https://scikit-learn.org/stable/modules/impute.html#estimators-that-handle-nan-valueszInput z contains NaNr¸   T)Ú	estimatorrº   r®   rw   r   )rI   rc   r‹   re   rg   rt   r   Ú	__class__Ú__name__rO   rP   rQ   r   r°   ÚargsÚfitra   r–   )rº   r¬   r¨   r¿   Úextended_msgÚctxs         rS   Ú0test_check_array_links_to_imputer_doc_only_for_XrÆ   ø   sh  € ñ ”"—)‘)˜A“,×&Ñ& q¨!Ó,×3Ñ3´B·J±JÓ?Ó@€DÜ—‘€Dˆ�JÜ“€Ià
ˆY× Ñ ×)Ñ)Ð*ð +-ð 	-ð ô 
�‰”z¨6°*°¸]Ð)KÔ	Lð 
ÐPSÜØØØ!Øõ		
÷
ð �SÒØ˜sŸy™yŸ~™~¨aÑ0Ñ0Ð0Ð0à 3§9¡9§>¡>°!Ñ#4Ñ4Ð4Ð4à�SÒô �]‰]œ:¨v°j°\ÀÐ-OÔPð 	4ÐTWÜ‹E�I‰I�dœBŸG™G D§J¡J¨q¡MÓ2Ô3÷	4à˜sŸy™yŸ~™~¨aÑ0Ñ0Ð0Ñ0ð ÷
ð 
ú÷ 	4ð 	4ús   ÂE<Ä;FÅ<FÆFc                  ó>  — t        j                  ddt         j                  ggt        ¬«      j                  } t        | d d¬«      }| |u sJ ‚t        | d d¬«      }| |u sJ ‚t        j                  t        d¬«      5  t        | d d	¬«       d d d «       y # 1 sw Y   y xY w)
NÚaÚbrX   rƒ   ©rY   r…   Frµ   r¸   T)	rI   Úarrayrt   rn   r¥   r   rO   rP   rQ   )rw   r±   s     rS   Ú)test_check_array_ensure_all_finite_objectrÌ   "  sŠ   € Ü
�‰�3˜œRŸV™VÐ$Ð%¬VÔ4×6Ñ6€Aä˜A T¸[ÔI€IØ�	‰>Ðˆ>ä˜A T¸UÔC€IØ�	‰>Ðˆ>ä	�‰”zÐ)=Ô	>ñ ;Ü�A˜T°TÕ:÷;÷ ;ñ ;ús   Á;BÂBz
X, err_msgúInput contains NaN.z5Input contains infinity or a value too large for.*intrX   z#cannot convert float NaN to integerr…   c                 óˆ   — t        j                  t        |¬«      5  t        | t        |¬«       d d d «       y # 1 sw Y   y xY w)Nr¸   rÊ   )rO   rP   rQ   r   Úint)rw   Úerr_msgr…   s      rS   Ú8test_check_array_ensure_all_finite_object_unsafe_castingrÑ   /  s8   € ô0 
�‰”z¨Ô	1ñ GÜ�AœSÐ4EÕF÷G÷ Gñ Gús	   œ8¸Ac                  óì   — t        j                  d«      } | j                  g d¢«      }dt        |«      › d�}t        j                  t
        |¬«      5  t        |d¬«       ddd«       y# 1 sw Y   yxY w)	zÓ
    Check that we raise a proper error message when passing a Series and we expect a
    2-dimensional container.

    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/27498
    Úpandas©r‚   r\   rV   z+Expected a 2-dimensional container but got z	 instead.r¸   T©Ú	ensure_2dN)rO   r   ÚSeriesÚtyperP   rQ   r   )ÚpdÚserÚmsgs      rS   Útest_check_array_series_err_msgrÜ   K  sa   € ô 
×	Ñ	˜XÓ	&€BØ
�)‰)’IÓ
€CØ7¼¸S»	°{À)Ð
L€CÜ	�‰”z¨Ô	-ñ )Ü�C 4Õ(÷)÷ )ñ )ús   ÁA*Á*A3z3ignore:Can't check dok sparse matrix for nan or infc                  ó¨  — ddgddgg} t        j                  | «      }t        j                  t        «      5  t        |«       d d d «       t        g d¢d¬«      }|j                  dk(  sJ ‚t        j                  t        d¬	«      5  t        g d¢d
¬«       d d d «       t        j                  t        d¬	«      5  t        dd
¬«       d d d «       t        t         d«      rht        t        t        j                  | «      «      «      }|j                  dk(  r2t        j                  t        d¬	«      5  t        |d
d
¬«       d d d «       t        j                  d«      j                  ddd«      }t        j                  t        «      5  t        |«       d d d «       t        |d
¬«       t        j                  d«      j                  dd«      j                  d«      }|j                  d«      }|j!                  t"        «      }|j!                  t$        «      }||||g}	t        j&                  t"        t$        t        j(                  d t*        t,        g}
g d¢}d
dg}t/        |	|
||«      D ]û  \  } }}}t        | |||¬«      }|�|j0                  |k(  sJ ‚|j0                  | j0                  k(  sJ ‚|dk(  r"|j2                  d   sJ ‚|j2                  d   r)J ‚|dk(  r"|j2                  d   sJ ‚|j2                  d   rJ ‚|r| |urŒšJ ‚| j0                  |j0                  k(  sŒ¶|j2                  d   | j2                  d   k(  sŒÖ|j2                  d   | j2                  d   k(  sŒö| |u rŒûJ ‚ g }	|	j5                  t6        t8        z   t:        z   t<        z   D �cg c]
  } ||«      ‘Œ c}«       |	j5                  |	d   j!                  t        j>                  «      |	d   j!                  t        j@                  «      g«       ddgddgg}|
D �cg c]  }|t,        usŒ|‘Œ }}t/        |	|||«      D ]Ä  \  } }}}t        | |||¬«      }|�|j0                  |k(  sJ ‚|j0                  | j0                  k(  sJ ‚| jB                  |v r| jB                  |jB                  k(  sJ ‚|jB                  |d   k(  sJ ‚|r| |urŒ‰J ‚| j0                  |j0                  k(  sŒ¥| jB                  |jB                  k(  sŒ¿| |u rŒÄJ ‚ t        ddgddgg«      }tE        |t        jF                  «      sJ ‚t        j                  t        «      5  t        |jI                  «       «       d d d «       t        |jI                  «       d
¬«       tK        |«      }t        |«      }tE        |t        jF                  «      sJ ‚t        ddgddgg«      }d}t        j                  t        |¬	«      5  t        |d
dtM        «       ¬ «       d d d «       y # 1 sw Y   �Œ°xY w# 1 sw Y   �ŒjxY w# 1 sw Y   �ŒFxY w# 1 sw Y   �ŒÛxY w# 1 sw Y   �Œ•xY wc c}w c c}w # 1 sw Y   ŒðxY w# 1 sw Y   y xY w)!Nr‚   r\   rV   rŠ   )r   r‚   r\   FrÕ   z'Expected 2D array, got 1D array insteadr¸   Tz+Expected 2D array, got scalar array insteadrW   Ú	csr_arrayzExpected 2D input, got)r®   rÖ   é   ©Úallow_ndrŸ   r¢   )rŸ   r¢   N)rY   r    r[   r¡   r£   r   ÚcsrÚcooÚdok©rY   r®   r[   éýÿÿÿz<Negative values in data passed to X in RandomForestRegressorrw   )Úensure_non_negativerº   r¿   )'rq   r§   rO   rP   Ú	TypeErrorr   ÚndimrQ   ÚhasattrÚnextÚiterrÞ   rI   rc   r‹   r[   re   rÏ   r¯   rb   rd   rh   rn   r   rY   r¦   Úextendr&   r%   r$   r(   rf   rg   ÚformatrŒ   ÚndarrayÚtolistr#   r   )rw   ÚX_csrÚX_arrayÚ
sparse_rowÚX_ndimÚX_CÚX_FÚX_intÚX_floatÚXsÚdtypesÚordersÚcopysrY   r    r[   r±   Úsparse_containerÚaccept_sparsesÚdtÚnon_object_dtypesr®   ÚX_denseÚ
X_no_arrayÚresultÚX_negrÐ   s                              rS   Útest_check_arrayr  Z  s´  € ð ˆQˆ�!�Q�Ð€AÜ�M‰M˜!Ó€EÜ	�‰”yÓ	!ñ Ü�EÔ÷ô š)¨uÔ5€GØ�<‰<˜1ÒÐÐä	�‰”zÐ)RÔ	Sñ /Ü’I¨Õ.÷/ô 
�‰”zÐ)VÔ	Wñ (Ü�B $Õ'÷(ô Œr�;ÔÜœ$œrŸ|™|¨A›Ó/Ó0ˆ
Ø�?‰?˜aÒä—‘œzÐ1IÔJñ LÜ˜J°dÀdÕK÷Lô �Y‰Y�q‹\×!Ñ! ! Q¨Ó*€FÜ	�‰”zÓ	"ñ Ü�FÔ÷ä� Õ&ô �)‰)�A‹,×
Ñ
˜q !Ó
$×
)Ñ
)¨#Ó
.€CØ
�(‰(�3‹-€CØ�J‰J”s‹O€EØ�j‰jœÓ€GØ
ˆs�E˜7Ð	#€BÜ�h‰hœœU¤B§J¡J°´d¼FÐC€FÚ€FØ�5ˆM€Eä!(¨¨V°V¸UÓ!Cò &Ñˆˆ5�%˜Ü ¨°eÀ$ÔGˆ	ØÐØ—?‘? eÒ+Ð+Ð+à—?‘? a§g¡gÒ-Ð-Ð-Ø�CŠ<Ø—?‘? >Ò2Ð2Ð2Ø —‘ ~Ò6Ð6Ð6Ø�cŠ\Ø—?‘? >Ò2Ð2Ð2Ø —‘ ~Ò6Ð6Ð6ÙØ˜IÒ%Ð%Ð%ð —‘˜9Ÿ?™?Ó*Ø—O‘O NÑ3°q·w±w¸~Ñ7NÓNØ—O‘O NÑ3°q·w±w¸~Ñ7NÓNà˜I’~Ð%�~ð+&ð4 
€BØ‡I�Iô %3Üñ%äñ%ô ñ%ö	
à ñ ˜SÕ!ò	
ôð ‡I�Iˆr�!‰u�|‰|œBŸH™HÓ% r¨!¡u§|¡|´B·J±JÓ'?Ð@ÔAà˜e�n u¨e nÐ5€Nð '-ÖA °¼&Ò0@šÐAÐÐAÜ)0Ø
Ð˜~¨uó*ò &Ñ%ˆˆ5�- ô   ¨¸mÐRVÔWˆ	ØÐØ—?‘? eÒ+Ð+Ð+à—?‘? a§g¡gÒ-Ð-Ð-Ø�8‰8�}Ñ$à—8‘8˜y×/Ñ/Ò/Ð/Ð/ð ×#Ñ# }°QÑ'7Ò7Ð7Ð7ÙØ˜IÒ%Ð%Ð%ð �w‰w˜)Ÿ/™/Ó)¨a¯h©h¸)×:JÑ:JÓ.JØ˜I’~Ð%�~ð'&ô. ˜A˜q˜6 A q 6Ð*Ó+€GÜ�gœrŸz™zÔ*Ð*Ð*ä	�‰”zÓ	"ñ %Ü�F—M‘M“OÔ$÷%ä�—‘“¨$Õ/ô ˜WÓ%€JÜ˜Ó$€FÜ�fœbŸj™jÔ)Ð)Ð)ô ˜!˜Q˜ " a Ð)Ó*€EØL€GÜ	�‰”z¨Ô	1ñ 
ÜØØ $ØÜ+Ó-õ		
÷
ð 
÷mñ ú÷/ñ /ú÷(ñ (ú÷Lñ Lú÷
ñ üòT	
ùò B÷6%ð %ú÷
ð 
úse   ·W1ÂW>Â9XÄ0XÆX%ÎX2ÐX7ÐX7Ô3X<×Y×1W;×>XØXØX"Ø%X/Ø<YÙYÚ1Ú2Ú3Ú4ÚUÚSó   1ó   2ó   3ó   4ÚV1c                 ó‚   — d}t        j                  t        |¬«      5  t        | d¬«       ddd«       y# 1 sw Y   yxY w)zmTest that check_array errors when it receives an array of bytes/string
    while a numeric dtype is required.z>dtype='numeric' is not compatible with arrays of bytes/stringsr¸   ÚnumericrX   N©rO   rP   rQ   r   )rw   Úexpected_msgs     rS   Útest_check_array_numeric_errorr  ß  s7   € ð U€LÜ	�‰”z¨Ô	6ñ (Ü�A˜YÕ'÷(÷ (ñ (ús   ž5µ>Úpd_dtype)ÚInt8ÚInt16ÚUInt8ÚUInt16ÚFloat32ÚFloat64zdtype, expected_dtyper  c                 ó´  — t        j                  d«      }| dv rt        j                  dd¬«      }t        j                  dddt        j                  t        j                  gt        j                  t        j                  dd	d
gg d¢g«      j
                  }|j                  || g d¢¬«      }|d   j                  d«      |d<   t        |d|¬«      }t        ||«       |j                  |k(  sJ ‚t        |d|¬«      }t        ||«       |j                  |k(  sJ ‚d}t        j                  t        |¬«      5  t        |d¬«       d d d «       y # 1 sw Y   y xY w)NrÓ   >   r  r  z1.2©Ú
minversionr‚   r\   rV   rß   rŠ   r�   )r‚   r\   rV   rŠ   r]   ©rÈ   rÉ   Úc)rY   Úcolumnsr!  r¯   rƒ   )r…   rY   Frµ   r¸   Tr„   )rO   r   rI   rË   rt   r¥   Ú	DataFramere   r   r   rY   rP   rQ   )r  rY   Úexpected_dtyperÙ   ÚX_nprw   r±   rÛ   s           rS   Ú"test_check_array_pandas_na_supportr&  ñ  s'  € ô 
×	Ñ	˜XÓ	&€BàÐ)Ñ)ä× Ñ  °eÔ<ˆä�8‰8Ø
ˆQ�”2—6‘6œ2Ÿ6™6Ð	"¤R§V¡V¬R¯V©V°Q¸¸1Ð$=ºÐOóç�að 	ð
 	�‰�T ²?ˆÓC€Aàˆs‰V�]‰]˜7Ó#€A€c�FÜ˜A°ÀEÔJ€IÜ�I˜tÔ$Ø�?‰?˜nÒ,Ð,Ð,ä˜A°¸eÔD€IÜ�I˜tÔ$Ø�?‰?˜nÒ,Ð,Ð,à
€CÜ	�‰”z¨Ô	-ñ /Ü�A¨Õ.÷/÷ /ñ /ús   Ä7EÅEc                  ó4  — t        j                  d«      } | j                  dd| j                  gd¬«      }d}t        j                  t
        |¬«      5  t        |dd	¬
«       ddd«       t        |d	d	¬
«      }t        |ddt        j                  g«       |j                  t        j                  k(  sJ ‚t        |d	d	t        j                  ¬«      }t        |ddt        j                  g«       |j                  t        j                  k(  sJ ‚y# 1 sw Y   Œ­xY w)z4Check check_array is correct with pd.NA in a series.rÓ   r‚   r\   ÚInt64rX   rµ   r¸   TF)r…   rÖ   N)r…   rÖ   rY   )rO   r   r×   ÚNArP   rQ   r   r   rI   rt   rY   rg   rd   )rÙ   ÚX_int64rÛ   ÚX_outs       rS   Ú*test_check_array_panadas_na_support_seriesr,    sã   € ä	×	Ñ	˜XÓ	&€Bà�i‰i˜˜A˜rŸu™u˜¨WˆiÓ5€Gà
€CÜ	�‰”z¨Ô	-ñ FÜ�G¨t¸uÕE÷Fô ˜°5ÀEÔJ€EÜ�E˜A˜q¤"§&¡&˜>Ô*Ø�;‰;œ"Ÿ*™*Ò$Ð$Ð$äØ 5°EÄÇÁô€Eô �E˜A˜q¤"§&¡&˜>Ô*Ø�;‰;œ"Ÿ*™*Ò$Ð$Ñ$÷Fð Fús   ÁDÄDc                  ó†  — t        j                  d«      } t        j                  g d¢g d¢g d¢gt        j                  ¬«      }| j                  |«      }t        |«      j                  t        j                  k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚|j                  dt        j                  i«      }t        |j                  t        j                  t        j                  t        j                  f«       t        |«      j                  t        j                  k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚|j                  dt        j                  i«      }t        |«      j                  t        j                  k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚|j                  dt        j                  i«      }t        |«      j                  t        j                  k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚|j                  t        j                  «      }t        |«      j                  t        j                  k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚| j                  d| j                  g d¢«      i«      }t        |«      j                  t        j                   k(  sJ ‚t        |t        ¬«      j                  t        j                  k(  sJ ‚y )	NrÓ   rÔ   ©rŠ   r]   r�   ©é   rß   é	   rX   r   r\   Úcat_col)rO   r   rI   rË   rd   r#  r   rY   r*   re   Úfloat16r    rú   rj   rg   ÚCategoricalrf   )rÙ   rw   ÚX_dfÚcat_dfs       rS   Ú%test_check_array_pandas_dtype_castingr7  .  s7  € ä	×	Ñ	˜XÓ	&€BÜ
�‰’)šYª	Ð2¼"¿*¹*ÔE€AØ�<‰<˜‹?€DÜ�tÓ×"Ñ"¤b§j¡jÒ0Ð0Ð0Ü�t¤<Ô0×6Ñ6¼"¿*¹*ÒDÐDÐDà�;‰;˜œ2Ÿ:™:�Ó'€DÜ�t—{‘{¤R§Z¡Z´·±¼R¿Z¹ZÐ$HÔIÜ�tÓ×"Ñ"¤b§j¡jÒ0Ð0Ð0Ü�t¤<Ô0×6Ñ6¼"¿*¹*ÒDÐDÐDà�;‰;˜œ2Ÿ8™8�}Ó%€Dä�tÓ×"Ñ"¤b§j¡jÒ0Ð0Ð0Ü�t¤<Ô0×6Ñ6¼"¿*¹*ÒDÐDÐDà�;‰;˜œ2Ÿ:™:�Ó'€Dä�tÓ×"Ñ"¤b§j¡jÒ0Ð0Ð0Ü�t¤<Ô0×6Ñ6¼"¿*¹*ÒDÐDÐDà�;‰;”r—x‘xÓ €DÜ�tÓ×"Ñ"¤b§h¡hÒ.Ð.Ð.ô �t¤<Ô0×6Ñ6¼"¿*¹*ÒDÐDÐDð
 �\‰\˜9 b§n¡n²YÓ&?Ð@ÓA€FÜ�vÓ×$Ñ$¬¯©Ò0Ð0Ð0Ü�v¤\Ô2×8Ñ8¼B¿J¹JÒFÐFÑFr~   c                  óB  — t        j                  ddgddgddgddgg«      } t        | «      }t        |«      }|j                  | j                  k(  sJ ‚t        |t         j
                  ¬«      }|j                  t        j                  t         j
                  «      k(  sJ ‚y )Ngš™™™™™É?gffffffæ?g333333ã?g      à?gš™™™™™Ù?r^   rX   )rI   rË   r   r   rY   rd   )ÚarrÚmock_dfÚchecked_arrs      rS   Ú"test_check_array_on_mock_dataframer<  S  s†   € Ü
�(‰(�S˜#�J  c 
¨S°#¨J¸¸c¸
ÐCÓ
D€CÜ˜CÓ €GÜ˜gÓ&€KØ×Ñ §	¡	Ò)Ð)Ð)Ü˜g¬R¯Z©ZÔ8€KØ×Ñ¤§¡¬¯©Ó 4Ò4Ð4Ñ4r~   c                  ó®   — g d¢g d¢g d¢g} t        | «      j                  j                  dk(  sJ ‚t        | d¬«      j                  j                  dk(  sJ ‚y )NrÔ   r.  r/  ÚiFrÕ   )r   rY   ÚkindrŽ   s    rS   Ú test_check_array_dtype_stabilityr@  \  sM   € â	’IšyÐ)€AÜ�q‹>×Ñ×$Ñ$¨Ò+Ð+Ð+Ü�q EÔ*×0Ñ0×5Ñ5¸Ò<Ð<Ñ<r~   c                  ó‚  — g d¢g d¢g d¢g} t        j                  | t         j                  ¬«      }t        j                  | t         j                  ¬«      }t	        j
                  |«      }t	        j                  |«      }t	        j                  |t         j                  ¬«      }||g}|||g}t        j                  «       5  t        j                  d«       |D ]=  }t        |t         j                  d¬«      }	|	j                  t         j                  k(  rŒ=J ‚ |D ]§  }t        |t         j                  t         j                  gd¬«      }	|	j                  t         j                  k(  sJ ‚|	|u sJ ‚t        |t         j                  t         j                  gdd	gd¬
«      }	|	j                  t         j                  k(  sJ ‚|	|urŒ§J ‚ t        |t         j                  t         j                  gdd	gd¬
«      }	|	j                  t         j                  k(  sJ ‚|	|usJ ‚|	j                  dk(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)NrÔ   r.  r/  rX   ÚerrorT)rY   r®   râ   rä   rå   F)rI   r˜   rd   rf   rq   r§   rr   rb   ÚwarningsÚcatch_warningsÚsimplefilterr   rg   rY   rî   )
Ú
X_int_listÚ	X_float32r*  ÚX_csr_float32ÚX_csc_float32ÚX_csc_int32Úinteger_dataÚfloat32_datarw   r±   s
             rS   Útest_check_array_dtype_warningrM  c  så  € ÚšYª	Ð2€JÜ—
‘
˜:¬R¯Z©ZÔ8€IÜ�j‰j˜¬2¯8©8Ô4€GÜ—M‘M )Ó,€MÜ—M‘M )Ó,€MÜ—-‘- ¬r¯x©xÔ8€KØ˜[Ð)€LØ˜}¨mÐ<€LÜ	×	 Ñ	 Ó	"ñ )Ü×Ñ˜gÔ&àò 	1ˆAÜ# A¬R¯Z©ZÀtÔLˆIØ—?‘?¤b§j¡jÓ0Ð0Ð0ð	1ð ò 	&ˆAÜ#Øœ"Ÿ*™*¤b§j¡jÐ1ÀôˆIð —?‘?¤b§j¡jÒ0Ð0Ð0Ø ‘>Ð!�>ä#ØÜ—z‘z¤2§:¡:Ð.Ø$ e˜nØô	ˆIð —?‘?¤b§j¡jÒ0Ð0Ð0Ø AÒ%Ð%Ð%ð	&ô   ØÜ—:‘:œrŸz™zÐ*Ø  %˜.Øô	
ˆ	ð �‰¤"§*¡*Ò,Ð,Ð,Ø Ñ-Ð-Ð-Ø×Ñ 5Ò(Ð(Ñ(÷?)÷ )ñ )ús   ÃAH5ÄB+H5ÇA(H5È5H>c                  óÂ  — ddgddgg} t        j                  | «      }t        «       }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        |g ¬«       d d d «       t        j                  t        |¬«      5  t        |d¬«       d d d «       t        j                  t
        d¬«      5  t        ||g¬«       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   y xY w)Nr‚   r\   rV   rŠ   ziSparse data was passed, but dense data is required. Use '.toarray\(\)' to convert to a dense numpy array.r¸   F©r®   zjParameter 'accept_sparse' should be a string, boolean or list of strings. You provided 'accept_sparse=.*'.z]When providing 'accept_sparse' as a tuple or list, it must contain at least one string value.© r   )rq   r§   r   rO   rP   rè   r   rQ   )rw   rñ   Úinvalid_typerÛ   s       rS   Ú-test_check_array_accept_sparse_type_exceptionrR  Ž  s7  € Ø
ˆQˆ�!�Q�Ð€AÜ�M‰M˜!Ó€EÜ“5€Lð	Að ô 
�‰”y¨Ô	,ñ 0Ü�E¨Õ/÷0ð	Gð ô 
�‰”z¨Ô	-ñ 7Ü�E¨Õ6÷7ð	5ð ô 
�‰”z¨Ô	-ñ -Ü�E¨Õ,÷-ä	�‰”z¨Ô	-ñ -Ü�E¨Õ,÷-ä	�‰”y¨Ô	.ñ 9Ü�E¨,¨Õ8÷9ð 9÷%0ð 0ú÷7ð 7ú÷-ð -ú÷-ð -ú÷9ð 9ús<   ÁD%Á8D1Â+D=ÃE	ÄEÄ%D.Ä1D:Ä=EÅ	EÅEc                  ó¨   — ddgddgg} t        j                  | «      }t        |d¬«       t        |d¬«       t        |dg¬«       t        |d¬«       y )	Nr‚   r\   rV   rŠ   TrO  râ   )râ   )rq   r§   r   )rw   rñ   s     rS   Ú+test_check_array_accept_sparse_no_exceptionrT  ­  sL   € Ø
ˆQˆ�!�Q�Ð€AÜ�M‰M˜!Ó€Eä� TÕ*Ü� UÕ+Ü� e WÕ-Ü� XÖ.r~   )râ   Úcscrã   Úbsr)Úparamsc              #   óÔ  K  — t        j                  dd| j                  ¬«      }| j                  dk(  rot        |d«      r"t	        d„ |j
                  D «       «      |_        n�|j                  j                  d«      |_        |j                  j                  d«      |_        n@|j                  j                  d«      |_	        |j                  j                  d«      |_
        |–— y ­w)Né   rW   )rî   rã   Úcoordsc              3   ó>   K  — | ]  }|j                  d «      –— Œ y­w)rf   N)re   )Ú.0Úvs     rS   ú	<genexpr>zX_64bit.<locals>.<genexpr>Â  s   è ø€ ÒA°1˜QŸX™X g×.ÑAùs   ‚rf   )rq   ÚrandÚparamrê   ÚtuplerZ  Úrowre   ÚcolÚindicesÚindptr)Úrequestrw   s     rS   ÚX_64bitrg  ·  s£   è ø€ ä
�‰��B˜wŸ}™}Ô-€Aà‡}�}˜ÒÜ�1�hÔô ÑA¸¿¹ÔAÓAˆA�Hð —E‘E—L‘L Ó)ˆAŒEØ—E‘E—L‘L Ó)ˆA�Eà—I‘I×$Ñ$ WÓ-ˆŒ	Ø—8‘8—?‘? 7Ó+ˆŒà
ƒGùs   ‚C&C(c                 ó    — t        | dd¬«       y )NT)Úaccept_large_sparser®   )r   )rg  s    rS   Ú1test_check_array_accept_large_sparse_no_exceptionrj  Î  s   € ä�¨TÀÖFr~   c                 ó„   — d}t        j                  t        |¬«      5  t        | dd¬«       d d d «       y # 1 sw Y   y xY w)NzbOnly sparse matrices with 32-bit integer indices are accepted. Got int64 indices. Please do reportr¸   TF)r®   ri  r  )rg  rÛ   s     rS   Ú4test_check_array_accept_large_sparse_raise_exceptionrl  Ó  sA   € ð	<ð ô 
�‰”z¨Ô	-ñ LÜ�G¨4ÀUÕK÷L÷ Lñ Lús   ž6¶?c                  óê  — d} t        j                  t        | ¬«      5  t        g g«       d d d «       d} t        j                  t        | ¬«      5  t        g d¬«       d d d «       t	        j
                  d«      } t        j                  t        | ¬«      5  t        dd¬«       d d d «       t        j                  d«      }t        j                  d	«      }d
} t        j                  t        | ¬«      5  t        ||d¬«       d d d «       t        j                  t        | ¬«      5  t        ||dd¬«       d d d «       t        j                  d«      }t        j                  d«      }d} t        j                  t        | ¬«      5  t        ||d¬«       d d d «       t        j                  t        | ¬«      5  t        ||dd¬«       d d d «       t        j                  d«      j                  dd«      }t        j                  d«      }d} t        j                  t        | ¬«      5  t        ||«       d d d «       t        j                  d«      }t        j                  d«      }t        ||d¬«      \  }}t        ||«       t        ||«       y # 1 sw Y   �Œex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)NzC0 feature\(s\) \(shape=\(1, 0\)\) while a minimum of 1 is required.r¸   z@0 sample\(s\) \(shape=\(0,\)\) while a minimum of 1 is required.FrÕ   zgInput should have at least 1 dimension i.e. satisfy `len(x.shape) > 0`, got scalar `array(42)` instead.rF   )r‚   rW   r‚   zC1 sample\(s\) \(shape=\(1, 10\)\) while a minimum of 2 is required.r\   )Úensure_min_samples)rn  rÖ   r   zD2 feature\(s\) \(shape=\(10, 2\)\) while a minimum of 3 is required.rV   )Úensure_min_featuresT)ro  rá   r   rW   zD0 feature\(s\) \(shape=\(10, 0\)\) while a minimum of 1 is required.)rW   r   é   rp  rà   )rO   rP   rQ   r   ÚreÚescaperè   rI   ra   r   Úemptyr‹   r    )rÛ   rw   r¶   r±   Ú	y_checkeds        rS   Ú2test_check_array_min_samples_and_features_messagesru  Ý  sU  € à
S€CÜ	�‰”z¨Ô	-ñ Ü�R�DÔ÷ð
 N€CÜ	�‰”z¨Ô	-ñ )Ü�B %Õ(÷)ô �)‰)ðBó€Cô 
�‰”y¨Ô	,ñ )Ü�B %Õ(÷)ô 	�‰�Ó€AÜ
�‰�‹
€AØ
S€CÜ	�‰”z¨Ô	-ñ .Ü�!�Q¨1Õ-÷.ô
 
�‰”z¨Ô	-ñ ?Ü�!�Q¨1¸Õ>÷?ô
 	�‰�Ó€AÜ
�‰�‹
€AØ
T€CÜ	�‰”z¨Ô	-ñ /Ü�!�Q¨AÕ.÷/ô
 
�‰”z¨Ô	-ñ >Ü�!�Q¨A¸Õ=÷>ô
 	�‰�‹×Ñ˜B Ó"€AÜ
�‰�‹€AØ
T€CÜ	�‰”z¨Ô	-ñ Ü�!�QŒ÷ô 	�‰�Ó €AÜ
�‰�‹€AÜ$ Q¨°DÔ9Ñ€IˆyÜ�q˜)Ô$Ü�q˜)Õ$÷sñ ú÷)ñ )ú÷)ñ )ú÷.ñ .ú÷
?ñ ?ú÷/ñ /ú÷
>ñ >ú÷ð ús_   žJÁJÂJ(Ã3J5Ä%KÆKÆ6KÈ%K)ÊJÊJ%Ê(J2Ê5J?ËKËKËK&Ë)K2c                  ól  — t        j                  g d¢g d¢g«      } t        j                  t        d¬«      5  t        | «       d d d «       g d¢g d¢g} t        j                  t        d¬«      5  t        | «       d d d «       d} t        j                  t        d¬«      5  t        | «       d d d «       t        j                  g d¢«      t        j                  g d¢«      g} t        j                  t        d¬«      5  t        | «       d d d «       t        j                  g d¢«      t        j                  g d¢«      f} t        j                  t        d¬«      5  t        | «       d d d «       t        t        j                  g d¢g d¢g«      «      } t        j                  t        d¬«      5  t        | «       d d d «       t        j                  ddgddgg«      } t        j                  t        d¬«      5  t        | «       d d d «       t        j                  g d¢«      }t        j                  t        d¬«      5  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   �Œ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   y xY w)	N©ù      ð?       @ù      @      @ù      @      @©ù       @      @ù      @      @ù      @      @zComplex data not supportedr¸   )rw  r{  r   rx  )rx  ry  rz  r|  r}  r~  )
rI   rË   rO   rP   rQ   r   r   rq   Ú
coo_matrixr1   )rw   r¶   s     rS   Ú#test_check_array_complex_data_errorr€    s  € Ü
�‰Ò*Ò,DÐEÓF€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ò 
"Ò#;Ð<€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ð 	=€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ô 
�‰Ò*Ó	+¬R¯X©XÒ6NÓ-OÐP€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ô 
�‰Ò*Ó	+¬R¯X©XÒ6NÓ-OÐP€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ô 	”b—h‘hÒ 8Ò:RÐSÓTÓU€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ô 	�‰˜˜6�{ Q¨ FÐ+Ó,€AÜ	�‰”zÐ)EÔ	Fñ Ü�AŒ÷ô
 	�‰ÒAÓB€AÜ	�‰”zÐ)EÔ	Fñ Ü�Œ÷ð ÷Iñ ú÷
ñ ú÷
ñ ú÷
ñ ú÷
ñ ú÷
ð ú÷
ð ú÷ð ús_   ·IÁ.IÂI+Ã<I8ÅJÆ,JÇ6JÈ<J*ÉIÉI(É+I5É8JÊJÊJÊJ'Ê*J3c                  óÖ   — t        t        d«      rJ ‚t        t        d«      sJ ‚t        t        d«      sJ ‚t        t        «       d«      sJ ‚ G d„ d«      } t        | d«      sJ d«       ‚y )Nr´   c                   ó*   — e Zd Z ed«      dd„«       Zy)ú@test_has_fit_parameter.<locals>.TestClassWithDeprecatedFitMethodz7Deprecated for the purpose of testing has_fit_parameterNc                  ó   — y ©NrP  )Úselfrw   r¶   r´   s       rS   rÃ   zDtest_has_fit_parameter.<locals>.TestClassWithDeprecatedFitMethod.fitM  ó   € àr~   r…  )rÁ   Ú
__module__Ú__qualname__r   rÃ   rP  r~   rS   Ú TestClassWithDeprecatedFitMethodrƒ  L  s   „ Ù	ÐMÓ	Nò	ó 
Oñ	r~   rŠ  z=has_fit_parameter fails for class with deprecated fit method.)rC   r   r   r   )rŠ  s    rS   Útest_has_fit_parameterr‹  F  ss   € Ü Ô!5°ÔGÐGÐGÜÔ2°OÔDÐDÐDÜœS /Ô2Ð2Ð2ÜœS›U OÔ4Ð4Ð4÷ñ ô
 Ø(¨/ôð GàFóGñ r~   c            	      óÐ  — t        j                  ddgddgg«      } t        j                  d«      }t        j                  ddgddgg«      }|t        j                  |«      t        j
                  |«      t        j                  |«      t        j                  |«      t        j                  |«      t        j                  |«      dœ}t        j                  t        «      5  t        |«       d d d «       |j                  «       D ]»  \  }}t        j                  t         «      5  t        |«       d d d «       t        j                  t        «      5  t        |d¬«       d d d «       t        |d¬«      }t        j"                  |«      r,|j$                  |k(  sJ ‚t'        |j)                  «       | «       Œ°t'        || «       Œ½ y # 1 sw Y   ŒØxY w# 1 sw Y   Œ¡xY w# 1 sw Y   Œ~xY w)	Nr   r‚   r\   )Údenserä   râ   rU  rã   ÚlilrV  T)Úraise_exceptionF)Úraise_warning)rI   rË   ra   rq   Ú
dok_matrixr§   rr   r  Ú
lil_matrixÚ
bsr_matrixrO   rP   rQ   r   ÚitemsÚwarnsÚUserWarningÚissparserî   r    rs   )Úarr_symÚarr_badÚarr_asymÚtest_arraysÚ
arr_formatr9  Úoutputs          rS   Útest_check_symmetricrž  V  s}  € Ü�h‰h˜˜A˜  A Ð'Ó(€GÜ�g‰g�a‹j€GÜ�x‰x˜!˜Q˜ ! Q Ð(Ó)€Hð Ü�}‰}˜XÓ&Ü�}‰}˜XÓ&Ü�}‰}˜XÓ&Ü�}‰}˜XÓ&Ü�}‰}˜XÓ&Ü�}‰}˜XÓ&ñ€Kô 
�‰”zÓ	"ñ !Ü˜Ô ÷!ð '×,Ñ,Ó.ò 0‰ˆ
�Cä�\‰\œ+Ó&ñ 	!Ü˜CÔ ÷	!ä�]‰]œ:Ó&ñ 	7Ü˜C°Õ6÷	7ô ! °EÔ:ˆÜ�;‰;�vÔØ—=‘= JÒ.Ð.Ð.Ü˜vŸ~™~Ó/°Õ9ä˜v wÕ/ñ0÷	!ð !ú÷	!ð 	!ú÷	7ð 	7ús$   Ã!GÄ$GÅGÇGÇG	ÇG%	c                  óÚ   —  G d„ dt         «      } t        j                  t        «      5  t	         | «       «       d d d «       t	         | «       j                  «       «       y # 1 sw Y   Œ(xY w)Nc                   ó   — e Zd Zd„ Zd„ Zy)ú6test_check_is_fitted_with_is_fitted.<locals>.Estimatorc                 ó   — d| _         | S )NT)r5   ©r†  Úkwargss     rS   rÃ   z:test_check_is_fitted_with_is_fitted.<locals>.Estimator.fit{  s   € Ø"ˆDŒOØˆKr~   c                 ó6   — t        | d«      xr | j                  S )Nr5   )rê   r5   ©r†  s    rS   Ú__sklearn_is_fitted__zLtest_check_is_fitted_with_is_fitted.<locals>.Estimator.__sklearn_is_fitted__  s   € Ü˜4 Ó.ÒB°4·?±?ÐBr~   N)rÁ   rˆ  r‰  rÃ   r§  rP  r~   rS   Ú	Estimatorr¡  z  s   „ ò	ó	Cr~   r¨  )r	   rO   rP   r   r=   rÃ   )r¨  s    rS   Ú#test_check_is_fitted_with_is_fittedr©  y  sN   € ôC”Mô Cô 
�‰”~Ó	&ñ %Ü™	›Ô$÷%ä‘I“K—O‘OÓ%Õ&÷%ð %ús   ©A!Á!A*c                  óB   —  G d„ dt         «      } t         | «       «       y)z;Check that check_is_fitted passes for stateless estimators.c                   ó$   ‡ — e Zd Zd„ Zˆ fd„Zˆ xZS )ú:test_check_is_fitted_stateless.<locals>.StatelessEstimatorc                 ó   — | S r…  rP  r£  s     rS   rÃ   z>test_check_is_fitted_stateless.<locals>.StatelessEstimator.fit‹  ó   € ØˆKr~   c                 ó2   •— t         ‰| �  «       }d|_        |S )NF)ÚsuperÚ__sklearn_tags__Úrequires_fit)r†  ÚtagsrÀ   s     €rS   r±  zKtest_check_is_fitted_stateless.<locals>.StatelessEstimator.__sklearn_tags__Ž  s   ø€ Ü‘7Ñ+Ó-ˆDØ %ˆDÔØˆKr~   )rÁ   rˆ  r‰  rÃ   r±  Ú__classcell__)rÀ   s   @rS   ÚStatelessEstimatorr¬  Š  s   ø„ ò	÷	ð 	r~   rµ  N)r	   r=   )rµ  s    rS   Útest_check_is_fitted_statelessr¶  ‡  s   € ôœ]ô ô Ñ&Ó(Õ)r~   c                  óÀ  — t        j                  t        «      5  t        t        «       d d d «       t        j                  t        «      5  t        d«       d d d «       t	        «       } t        «       }	 t        j                  t        «      5  t        | «       d d d «       t        j                  t        «      5  t        |«       d d d «       d}d}t        j                  t        |¬«      5  t        | |¬«       d d d «       d}d}t        j                  t        |¬«      5  t        ||¬«       d d d «        | j                  t        «       Ž   |j                  t        «       Ž  t        | «      �J ‚t        |«      �J ‚y # 1 sw Y   �ŒYxY w# 1 sw Y   �Œ9xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒãxY w# t        $ r J d«       ‚w xY w# 1 sw Y   ŒÎxY w# 1 sw Y   Œ¥xY w)	Nr   z&check_is_fitted failed with ValueErrorz!Random message %(name)s, %(name)sz+Random message ARDRegression, ARDRegressionr¸   )rÛ   z"Another message %(name)s, %(name)szAnother message SVR, SVR)rO   rP   rè   r=   r   r   r   rQ   ÚAttributeErrorrÃ   r
   )ÚardÚsvrrÛ   r¹   s       rS   Útest_check_is_fittedr»  –  sŠ  € ä	�‰”yÓ	!ñ 'ÜœÔ&÷'ä	�‰”yÓ	!ñ Ü˜Ô÷ô ‹/€CÜ
‹%€Cð?Ü�]‰]œ>Ó*ñ 	!Ü˜CÔ ÷	!ä�]‰]œ>Ó*ñ 	!Ü˜CÔ ÷	!ð .€CØ9€EÜ	�‰”z¨Ô	/ñ &Ü˜ Õ%÷&ð /€CØ&€EÜ	�‰”~¨UÔ	3ñ &Ü˜ Õ%÷&ð €C‡G�GŒZ‹\ÑØ€C‡G�GŒZ‹\Ñä˜3ÓÐ'Ð'Ð'Ü˜3ÓÐ'Ð'Ñ'÷?'ñ 'ú÷ñ ú÷	!ñ 	!ú÷	!ð 	!ûäò ?Ø>Ð>Ó>ˆuð?ú÷&ð &ú÷
&ð &úsk   šFÁFÁ4F4 ÂFÂ!F4 Â:F(ÃF4 Ã-GÄ"GÆFÆFÆF%Æ F4 Æ(F1Æ-F4 Æ4GÇGÇGc                  óð  —  G d„ dt         «      } d} | «       }t        |ddg¬«      rJ ‚t        j                  t        |¬«      5  t        |ddg¬«       d d d «       t        |ddgt        ¬«      rJ ‚t        j                  t        |¬«      5  t        |ddgt        ¬«       d d d «       t        |ddgt        ¬«      rJ ‚t        j                  t        |¬«      5  t        |ddgt        ¬«       d d d «       d	|_        t        |ddg¬«      rJ ‚t        j                  t        |¬«      5  t        |ddg¬«       d d d «       t        |ddgt        ¬«      rJ ‚t        j                  t        |¬«      5  t        |ddgt        ¬«       d d d «       t        |ddgt        ¬«      sJ ‚t        |ddgt        ¬«       d
|_	        t        |ddg¬«      sJ ‚t        |ddg¬«       t        |ddgt        ¬«      sJ ‚t        |ddgt        ¬«       t        |ddgt        ¬«      sJ ‚t        |ddgt        ¬«       y # 1 sw Y   �ŒåxY w# 1 sw Y   �Œ¤xY w# 1 sw Y   �ŒcxY w# 1 sw Y   �Œ%xY w# 1 sw Y   ŒãxY w)Nc                   ó   — e Zd Zd„ Zy)ú4test_check_is_fitted_attributes.<locals>.MyEstimatorc                 ó   — | S r…  rP  ©r†  rw   r¶   s      rS   rÃ   z8test_check_is_fitted_attributes.<locals>.MyEstimator.fit¼  r®  r~   N)rÁ   rˆ  r‰  rÃ   rP  r~   rS   ÚMyEstimatorr¾  »  s   „ ó	r~   rÁ  z
not fittedÚa_Úb_)Ú
attributesr¸   )rÄ  Ú
all_or_anyrÈ   rÉ   )
r	   r5   rO   rP   r   r=   Úallrv   rÂ  rÃ  )rÁ  rÛ   Úests      rS   Útest_check_is_fitted_attributesrÈ  º  s1  € ô”mô ð €CÙ
‹-€Cä˜#¨4°¨,Õ7Ð7Ð7Ü	�‰”~¨SÔ	1ñ 6Ü˜¨¨t¨Õ5÷6ä˜#¨4°¨,Ä3ÕGÐGÐGÜ	�‰”~¨SÔ	1ñ FÜ˜¨¨t¨ÄÕE÷Fä˜#¨4°¨,Ä3ÕGÐGÐGÜ	�‰”~¨SÔ	1ñ FÜ˜¨¨t¨ÄÕE÷Fð €C„FÜ˜#¨4°¨,Õ7Ð7Ð7Ü	�‰”~¨SÔ	1ñ 6Ü˜¨¨t¨Õ5÷6ä˜#¨4°¨,Ä3ÕGÐGÐGÜ	�‰”~¨SÔ	1ñ FÜ˜¨¨t¨ÄÕE÷Fä�c t¨T l¼sÕCÐCÐCÜ�C T¨4 L¼SÕAà€C„FÜ�c t¨T lÕ3Ð3Ð3Ü�C T¨4 LÕ1Ü�c t¨T l¼sÕCÐCÐCÜ�C T¨4 L¼SÕAÜ�c t¨T l¼sÕCÐCÐCÜ�C T¨4 L¼SÖA÷36ñ 6ú÷Fñ Fú÷Fñ Fú÷
6ñ 6ú÷Fð Fús<   ÁH8ÂIÃIÄ,IÅ5I,È8IÉIÉIÉI)É,I5Úwrap)ÚsingleÚlistra  )Úidsc                 óx  — t        «       }t        j                  t        d¬«      5  t	        | | dg«      «       d d d «        |j
                  t        «       Ž  t	        | | dg«      «       t        j                  t        d¬«      5  t	        | | dg«      «       d d d «       y # 1 sw Y   ŒkxY w# 1 sw Y   y xY w)Nzis not fitted yetr¸   Úcoef_Ú	coef_bad_)r   rO   rP   r   r=   rÃ   r
   )rÉ  r¹  s     rS   Ú$test_check_is_fitted_with_attributesrÐ  ß  sŸ   € ô ‹/€CÜ	�‰”~Ð-@Ô	Añ .Ü˜™T 7 )›_Ô-÷.ð €C‡G�GŒZ‹\Ñô �C™˜w˜i›Ô)ô 
�‰”~Ð-@Ô	Añ 2Ü˜™T ; -Ó0Ô1÷2ð 2÷.ð .ú÷2ð 2ús   ¦B$ÂB0Â$B-Â0B9c                  óx  — t        dgdgdgdgdg«       t        ddgddgggddgddg«       t        dgdt        j                  dg«      t        j                  d	«      «       t        j                  t        d
¬«      5  t        ddgdg«       d d d «       t        j                  t        d¬«      5  t        ddgd«       d d d «       t        j                  t        d¬«      5  t        ddgt        «       «       d d d «       t        j                  t        «      5  t        ddgt        j                  d«      «       d d d «       t        j                  t        d¬«      5  t        ddg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   ŒhxY w# 1 sw Y   y xY w)Nr‚   r\   rV   rŠ   r]   rÈ   rÉ   )r\   ©r‚   r\   zinconsistent numbers of samplesr¸   zgot <\w+ 'int'>zgot <\w+ 'object'>úExpected sequence or array-like)r<   rI   rË   rq   r§   rO   rP   rQ   rè   rn   r   rP  r~   rS   Útest_check_consistent_lengthrÔ  ñ  sw  € Ü˜Q˜C !  q c¨A¨3°°Ô4Ü˜a ˜V q¨! f XÐ.°°A°¸¸c¸
ÔCÜ˜Q˜C ¤r§x¡x°°£}´b·m±mÀFÓ6KÔLÜ	�‰”zÐ)JÔ	Kñ -Ü  A ¨¨Ô,÷-ä	�‰”yÐ(:Ô	;ñ +Ü  A ¨Ô*÷+ä	�‰”yÐ(=Ô	>ñ 2Ü  A ¬«Ô1÷2ô 
�‰”yÓ	!ñ 5Ü  A ¬¯©°«Ô4÷5ô 
�‰”yÐ(IÔ	Jñ AÜ  A Ô(=Ó(?Ô@÷Að A÷-ð -ú÷+ð +ú÷2ð 2ú÷5ð 5ú÷Að Aús<   Á>F Â1FÃ#FÄ"F$Å F0Æ F	ÆFÆF!Æ$F-Æ0F9c                  óº   — 	 dd l } t        j                  g d¢g d¢g d¢g«      }| j                  |g d¢¬«      }t	        |«       y # t
        $ r t        d«      ‚w xY w)Nr   rÔ   r.  r/  )rÈ   rÉ   rÃ   ©r"  zPandas not found)rÓ   rI   rË   r#  r<   ÚImportErrorr   )rÙ   rw   r5  s      rS   Ú"test_check_dataframe_fit_attributerØ    sU   € ð+Ûä�H‰H’i¢ªIÐ6Ó7ˆØ�|‰|˜AÒ'8ˆ|Ó9ˆÜ Õ%øÜò +ÜÐ)Ó*Ð*ð+ús   ‚AA ÁAc                  ó   — t        j                  dt         j                  g«      } t        j                  t
        «      5  t        | «       d d d «       t        j                  d¬«       t        | «       t        j                  d¬«       t        j                  t
        «      5  t        | «       d d d «       y # 1 sw Y   ŒnxY w# 1 sw Y   y xY w)Nr   T)Úassume_finiteF)	rI   rË   ÚinfrO   rP   rQ   r;   ÚsklearnÚ
set_configrŽ   s    rS   Útest_suppress_validationrÞ    s“   € Ü
�‰�!”R—V‘V�Ó€AÜ	�‰”zÓ	"ñ Ü˜!Ô÷ä×Ñ TÕ*Ü�aÔÜ×Ñ UÕ+Ü	�‰”zÓ	"ñ Ü˜!Ô÷ð ÷ð ú÷
ð ús   ¿B8Â#CÂ8CÃCc                  óF  — t        d«      } t        | j                  g d¢«      d¬«      }t        |t	        j
                  g d¢«      «       | j                  g d¢«      j                  d«      }t        |d d¬«      }t        |t	        j
                  g d¢t        ¬«      «       y )	NrÓ   rÔ   FrÕ   r   Úcategory)rY   rÖ   rX   )r   r   r×   r    rI   rË   re   rn   )rÙ   ÚresÚss      rS   Útest_check_array_seriesrã    sr   € ä	�hÓ	€BÜ
�b—i‘i¢	Ó*°eÔ
<€CÜ�sœBŸH™H¢YÓ/Ô0ð 	�	‰	’/Ó"×)Ñ)¨*Ó5€AÜ
�a˜t¨uÔ
5€CÜ�sœBŸH™H¢_¼FÔCÕDr~   rY   Ú
bool_dtype)rh   Úbooleanc                 óX  — |dk(  rt        dd¬«      }nt        d«      }|j                  g d¢g d¢|j                  g d¢|¬«      d	œg d	¢¬
«      }t        || ¬«      }|j                  t
        j                  k(  sJ ‚t        j                  g d¢g d¢g d¢gt        ¬«      }t        ||«       y )Nrå  rÓ   ú1.0r  rÔ   )r   r^   çÍÌÌÌÌÌ @©TFTrX   )rÏ   r¯   rh   rÖ  )ç      ð?ç        rê  )ç       @r^   rë  )ç      @rè  rê  )
r   r#  r×   r   rY   rI   rg   rË   r¯   r   )rY   rä  rÙ   ÚdfrË   Úexpected_arrays         rS   Ú'test_check_dataframe_mixed_float_dtypesrð  )  s    € ð �YÒä˜(¨uÔ5‰ä˜(Ó#ˆà	�‰âÚ"Ø—I‘IÒ1¸�IÓDñ	
ò
 )ð 
ó 
€Bô ˜ %Ô(€EØ�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ü—X‘XÚ	š/ª?Ð;Ä5ô€Nô ! ¨Õ7r~   c                  óz  — t        d«      } | j                  dg d¢i«      }t        |d¬«      }|j                  t        j
                  k(  sJ ‚t        |dgdgdgg«       | j                  g d¢g d¢d	œdd
g¬«      }t        |d¬«      }|j                  t        j                  k(  sJ ‚t        |ddgddgddgg«       y)z7Check that dataframe with bool return a boolean arrays.rÓ   rh   ré  NrX   TFrÔ   )rh   rÏ   rÏ   rÖ  r  r‚   r   r\   rV   )r   r#  r   rY   rI   Úbool_r    rf   ©rÙ   rî  rË   s      rS   Ú#test_check_dataframe_with_only_boolrô  K  s¾   € ä	�hÓ	€BØ	�‰�vÒ2Ð3Ó	4€Bä˜ $Ô'€EØ�;‰;œ"Ÿ(™(Ò"Ð"Ð"Ü�u ˜v¨ w°°Ð7Ô8ð 
�‰Ú$ªYÑ7Ø˜�ð 
ó 
€Bô ˜ )Ô,€EØ�;‰;œ"Ÿ(™(Ò"Ð"Ð"Ü�u  1˜v¨¨1 v°°1¨vÐ6Õ7r~   c                  óæ   — t        dd¬«      } | j                  d| j                  g d¢d¬«      i«      }t        |d¬«      }|j                  t
        j                  k(  sJ ‚t        |d	gd
gd	gg«       y)zFCheck that dataframe with boolean return a float array with dtype=NonerÓ   rç  r  rh   ré  rå  rX   NTF)r   r#  r×   r   rY   rI   rg   r    ró  s      rS   Ú&test_check_dataframe_with_only_booleanrö  ^  sh   € ä	�h¨5Ô	1€BØ	�‰�v˜rŸy™yÒ)<ÀI˜yÓNÐOÓ	P€Bä˜ $Ô'€EØ�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ü�u ˜v¨ w°°Ð7Õ8r~   c                   ó   — e Zd Zd„ Zy)ÚDummyMemoryc                 ó   — |S r…  rP  )r†  Úfuncs     rS   ÚcachezDummyMemory.cachei  s   € Øˆr~   N)rÁ   rˆ  r‰  rû  rP  r~   rS   rø  rø  h  s   „ ór~   rø  c                   ó   — e Zd Zy)ÚWrongDummyMemoryN©rÁ   rˆ  r‰  rP  r~   rS   rý  rý  m  s   „ Ør~   rý  c                  óÊ  — t        d«      } | j                  dk(  sJ ‚t        d «      } | j                  �J ‚t        «       }t        |«      } | |u sJ ‚d}t        j                  t
        |¬«      5  t        d«       d d d «       t        «       }dj                  |«      }t        j                  t
        |¬«      5  t        |«       d d d «       y # 1 sw Y   ŒTxY w# 1 sw Y   y xY w)NÚcache_directoryzf'memory' should be None, a string or have the same interface as joblib.Memory. Got memory='1' instead.r¸   r‚   zg'memory' should be None, a string or have the same interface as joblib.Memory. Got memory='{}' instead.)r>   Úlocationrø  rO   rP   rQ   rý  rî   )ÚmemoryÚdummyrÛ   s      rS   Útest_check_memoryr  q  sÚ   € ÜÐ+Ó,€FØ�?‰?Ð/Ò/Ð/Ð/ä˜$Ó€FØ�?‰?Ð"Ð"Ð"ä‹M€EÜ˜%Ó €FØ�U‰?Ðˆ?ð	2ð ô 
�‰”z¨Ô	-ñ Ü�QŒ÷äÓ€Eð	3ß39±6¸%³=ð ô 
�‰”z¨Ô	-ñ Ü�UÔ÷ð ÷ð ú÷ð ús   Á.CÂ8CÃCÃC"r[   c                 óî   — t        j                  d«      }t        |d¬«      5 }t        || ¬«      }t        j                  ||«      |  k(  sJ ‚|j
                  d   | k(  sJ ‚	 d d d «       y # 1 sw Y   y xY w)N)rŠ   rŠ   Úr©Ú	mmap_moderZ   Ú	WRITEABLE)rI   ra   r   r   Úmay_share_memoryr¦   )r[   rw   ÚX_memmapr±   s       rS   Útest_check_array_memmapr  ‹  sp   € ä
�‰�‹€AÜ	�A Ô	%ð 4¨Ü ¨tÔ4ˆ	Ü×"Ñ" 8¨YÓ7À¸HÒEÐEÐEØ�‰˜{Ñ+¨tÒ3Ð3Ñ3÷4÷ 4ñ 4ús   £>A+Á+A4zOestimator_name, estimator_value, delegates, expected_result, expected_exceptionÚ
estimator_ÚSubEstimatorrP  Úattribute_presentr¿   Úestimators_Úcustom_estimatorÚno_estimatorÚattribute_absent)Ú'fitted_estimator_with_default_delegatesÚ estimator_with_default_delegatesÚ#list_of_estimators_with_estimators_Ú&custom_estimator_with_custom_delegatesÚ#no_estimator_with_default_delegatesÚ5estimator_with_default_delegates_but_absent_attributec                 óú   — |€t        d«      }nt        d|¬«      } G d„ d«      } |«       }t        || |«       |r't        j                  |«      5   ||«       ddd«       y ||«      |k(  sJ ‚y# 1 sw Y   yxY w)zå
    Tests the _estimator_has function by verifying:
    - Functionality with default and custom delegates.
    - Raises ValueError if delegates are missing.
    - Raises AttributeError if the specified attribute is missing.
    Nr  )Ú	delegatesc                   ó   — e Zd Zy)ú)test_estimator_has.<locals>.MockEstimatorNrþ  rP  r~   rS   ÚMockEstimatorr  Þ  s   „ Ør~   r  )r3   ÚsetattrrO   rP   )Úestimator_nameÚestimator_valuer  Úexpected_resultÚexpected_exceptionÚcheckr  rÈ   s           rS   Útest_estimator_hasr%  ”  s‡   € ðJ ÐÜÐ2Ó3‰äÐ2¸iÔHˆ÷ñ ñ 	‹€AÜˆAˆ~˜Ô/áÜ�]‰]Ð-Ó.ñ 	Ù�!ŒH÷	ð 	ñ �Q‹x˜?Ò*Ð*Ñ*÷	ð 	ús   Á	A1Á1A:c                 ó4  — t        j                  g d¢g d¢g d¢g d¢g«      } | |«      }t        |d«        | ddgddgg«      }t        |d«       d|d<    | |«      }t        j                  t
        d¬«      5  t        |d«       d d d «       y # 1 sw Y   y xY w)	N)r‚   r‚   r   r   )r   r   r   r   r³   r   r¤   r`   z	Negative r¸   )rI   rË   r?   rO   rP   rQ   )r¬   r©   rw   s      rS   Útest_check_non_negativer'  ë  sŽ   € ô 	�‰’,¢ªlºLÐIÓJ€AÙˆq‹	€AÜ�q˜"ÔÙ��A�˜˜A˜ÐÓ €AÜ�q˜"Ôà€A€d�GÙˆq‹	€AÜ	�‰”z¨Ô	5ñ "Ü˜1˜bÔ!÷"÷ "ñ "ús   Á8BÂBc                  ó>  — t        j                  d«      } d }d}t        j                  t        |¬«      5  t        | |«       d d d «       d}t        j                  t        |¬«      5  t        | |t        «       ¬«       d d d «       y # 1 sw Y   ŒFxY w# 1 sw Y   y xY w)N©r\   r\   z;estimator requires y to be passed, but the target y is Noner¸   zGRandomForestRegressor requires y to be passed, but the target y is None)r¿   )rI   ra   rO   rP   rQ   r   r   ©rw   r¶   rÛ   s      rS   Ú test_check_X_y_informative_errorr+    s…   € Ü
�‰�‹€AØ€AØ
G€CÜ	�‰”z¨Ô	-ñ Ü�!�QŒ÷ð T€CÜ	�‰”z¨Ô	-ñ ;Ü�!�QÔ"7Ó"9Õ:÷;ð ;÷	ð ú÷;ð ;ús   µBÁ'BÂBÂBc                  óì   —  G d„ d«      }  | «       }t        |«      t        |«      k(  sJ ‚ G d„ d«      }t        j                  t        d¬«      5  t         |«       «       d d d «       y # 1 sw Y   y xY w)Nc                   ó   — e Zd Zd„ Zd„ Zy)úJtest_retrieve_samples_from_non_standard_shape.<locals>.TestNonNumericShapec                 ó   — d| _         y ©N)znot numeric©r–   r¦  s    rS   Ú__init__zStest_retrieve_samples_from_non_standard_shape.<locals>.TestNonNumericShape.__init__  ó	   € Ø)ˆD�Jr~   c                 ó   — t        g d¢«      S )NrÔ   )Úlenr¦  s    rS   Ú__len__zRtest_retrieve_samples_from_non_standard_shape.<locals>.TestNonNumericShape.__len__  s   € Ü’y“>Ð!r~   N)rÁ   rˆ  r‰  r2  r6  rP  r~   rS   ÚTestNonNumericShaper.    s   „ ò	*ó	"r~   r7  c                   ó   — e Zd Zd„ Zy)úJtest_retrieve_samples_from_non_standard_shape.<locals>.TestNoLenWeirdShapec                 ó   — d| _         y r0  r1  r¦  s    rS   r2  zStest_retrieve_samples_from_non_standard_shape.<locals>.TestNoLenWeirdShape.__init__  r3  r~   N©rÁ   rˆ  r‰  r2  rP  r~   rS   ÚTestNoLenWeirdShaper9    s   „ ó	*r~   r<  rÓ  r¸   )r9   r5  rO   rP   rè   )r7  rw   r<  s      rS   Ú-test_retrieve_samples_from_non_standard_shaper=    sh   € ÷"ñ "ñ 	Ó€AÜ˜‹?œc !›fÒ$Ð$Ð$÷*ñ *ô 
�‰”yÐ(IÔ	Jñ ,ÜÑ(Ó*Ô+÷,÷ ,ñ ,ús   ÁA*Á*A3r’   )r\   rV   g      @r]   c           	      óÌ   — t        j                  «       5  t        j                  d«       t        | dt        j
                  ddd¬«      }ddd«       | k(  sJ ‚y# 1 sw Y   ŒxY w)zPTest that check_scalar returns no error/warning if valid inputs are
    providedrB  Ú	test_namer\   r]   Úboth©Útarget_typeÚmin_valÚmax_valÚinclude_boundariesN)rC  rD  rE  rA   ÚnumbersÚReal)r’   Úscalars     rS   Útest_check_scalar_validrI  %  sa   € ô 
×	 Ñ	 Ó	"ñ 	
Ü×Ñ˜gÔ&ÜØØÜŸ™ØØØ%ô
ˆ÷	
ð �QŠ;Ð‰;÷	
ð 	
ús   •5AÁA#zJx, target_name, target_type, min_val, max_val, include_boundaries, err_msgÚ
test_name1rŠ   Úneitherz1test_name1 must be an instance of float, not int.z6test_name1 must be an instance of float, not NoneType.z4test_name1 must be an instance of int, not NoneType.z9test_name1 must be an instance of {float, bool}, not int.Ú
test_name2ztest_name2 == 1, must be > 2.r]   Ú
test_name3ztest_name3 == 5, must be < 4.Ú
test_name4Úrightztest_name4 == 2, must be > 2.Ú
test_name5Úleftztest_name5 == 4, must be < 4.Ú
test_name6zbad parameter valuezyUnknown value for `include_boundaries`: 'bad parameter value'. Possible values are: ('left', 'right', 'both', 'neither').Ú
test_name7zT`include_boundaries`='left' without specifying explicitly `min_val` is inconsistent.Ú
test_name8zU`include_boundaries`='right' without specifying explicitly `max_val` is inconsistent.c           	      ó
  — t        j                  t        «      5 }t        | |||||¬«       ddd«       t	        j
                  «      t	        |«      k(  sJ ‚t        |j
                  t        |«      «      sJ ‚y# 1 sw Y   ŒNxY w)zLTest that check_scalar returns the right error if a wrong input is
    givenrA  N)rO   rP   Ú	ExceptionrA   Ústrr°   rŒ   rØ   )r’   Útarget_namerB  rC  rD  rE  rÐ   Úraised_errors           rS   Útest_check_scalar_invalidrZ  6  s{   € ôl 
�‰”yÓ	!ð 
 \ÜØØØ#ØØØ1õ	
÷
ô ˆ|×!Ñ!Ó"¤c¨'£lÒ2Ð2Ð2Ü�l×(Ñ(¬$¨w«-Ô8Ð8Ñ8÷
ð 
ús   šA9Á9BrÒ  )r]   y        -Cëâ6
?zJThere are imaginary parts in eigenvalues \(1e\-05 of the maximum real part)r]   g-Cëâ6
¿g�íµ ÷Æ°¾z?There are negative eigenvalues \(1e\-06 of the maximum positiveg»½×Ùß|Û½z?There are negative eigenvalues \(1e\-10 of the maximum positive)r]   gê-�™—‘=z=the largest eigenvalue is more than 1e\+12 times the smallest)ÚnominalÚnominal_np_arrayÚinsignificant_imagzinsignificant negzinsignificant neg float32zinsignificant neg float64zinsignificant posz(lambdas, expected_lambdas, w_type, w_msgÚenable_warningsc                 ó<  — |sd }|€Et        j                  «       5  t        j                  dt        «       t	        | |¬«      }d d d «       n-t        j                  ||¬«      5  t	        | |¬«      }d d d «       t        |«       y # 1 sw Y   ŒxY w# 1 sw Y   Œ"xY w)NrB  )r^  r¸   )rC  rD  rE  r   r.   rO   r•  r   )ÚlambdasÚexpected_lambdasÚw_typeÚw_msgr^  Úlambdas_fixeds         rS   Ú test_check_psd_eigenvalues_validre  Ø  s˜   € ñ Øˆà€~Ü×$Ñ$Ó&ñ 	Ü×!Ñ! 'Ô+BÔCÜ2Ø¨ôˆM÷	ð 	ô �\‰\˜&¨Ô.ñ 	Ü2Ø¨ôˆM÷	ô
 Ð$ mÕ4÷	ð 	ú÷	ð 	ús   ›(BÁ#BÂBÂB)r]   y              @z/There are significant imaginary parts in eigenv)éûÿÿÿr¤   z,All eigenvalues are negative \(maximum is -1)r]   r¤   z*There are significant negative eigenvaluesga2U0*©3?g�íµ ÷ÆÀ¾gñhãˆµøä>g»½×Ùß|ë½)Úsignificant_imagzall negativezsignificant negzsignificant neg float32zsignificant neg float64zlambdas, err_type, err_msgc                 ór   — t        j                  ||¬«      5  t        | «       d d d «       y # 1 sw Y   y xY w)Nr¸   )rO   rP   r.   )r`  Úerr_typerÐ   s      rS   Ú"test_check_psd_eigenvalues_invalidrj    s/   € ô 
�‰�x wÔ	/ñ (Ü˜wÔ'÷(÷ (ñ (ús   ˜-­6c                  ó²  — t        j                  d«      d d d…   } | j                  d   rJ ‚t        | t        j                  d«      ¬«      } | j                  d   sJ ‚t        d t        j                  d«      ¬«      } t	        | t        j                  d«      «       t        dt        j                  d«      ¬«      } t	        | dt        j                  d«      z  «       t        j                  t        d	¬
«      5  t        t        j                  d«      t        j                  d«      ¬«       d d d «       d}t        j                  t        |¬
«      5  t        t        j                  d«      t        j                  d«      ¬«       d d d «       t        j                  d«      }t        j                  dt         j                  ¬«      } t        | |«      } | j                  t         j                  k(  sJ ‚t        j                  dt        ¬«      }t        d ||j                  ¬«      } | j                  t         j                  k(  sJ ‚t        j                  d«      }t        j                  t        |«      «      } d| d<   d}t        j                  t        |¬
«      5  t        | |d¬«       d d d «       y # 1 sw Y   �Œ‡xY w# 1 sw Y   �Œ;xY w# 1 sw Y   y xY w)NrW   r\   r¡   )r]   r‚   rŽ   )r]   r\   r]   rì  z)Sample weights must be 1D array or scalarr¸   )r\   rŠ   r)  z/sample_weight.shape == \(4,\), expected \(2,\)!rŠ   rX   iöÿÿÿr¤   z1Negative values in data passed to `sample_weight`T)rç   )rI   ra   r¦   r0   r   rO   rP   rQ   rd   rY   rÏ   rg   r9   )r´   rÛ   rw   rÐ   s       rS   Útest_check_sample_weightrl     s  € ä—G‘G˜B“K¡ ! Ñ$€MØ×"Ñ" >Ò2Ð2Ð2Ü(¨¼"¿'¹'À&»/ÔJ€MØ×Ñ˜~Ò.Ð.Ð.ô )¨´·±¸³ÔA€MÜ�M¤2§7¡7¨1£:Ô.ô )¨´·±¸³Ô@€MÜ�M 1¤r§w¡w¨q£z¡>Ô2ô 
�‰”zÐ)TÔ	Uñ AÜœRŸW™W V›_´·±¸³Õ@÷Að =€CÜ	�‰”z¨Ô	-ñ <ÜœRŸW™W Q›Z¬2¯7©7°6«?Õ;÷<ô 	�‰�‹€AÜ—G‘G˜A¤R§Z¡ZÔ0€MÜ(¨¸Ó:€MØ×Ñ¤"§*¡*Ò,Ð,Ð,ô 	�‰�œcÔ"€AÜ(¨¨q¸¿¹Ô@€MØ×Ñ¤"§*¡*Ò,Ð,Ð,ô 	�‰�‹€AÜ—G‘GœL¨›OÓ,€MØ€M�"ÑØA€GÜ	�‰”z¨Ô	1ñ IÜ˜]¨AÀ4ÕH÷Ið I÷1Añ Aú÷
<ñ <ú÷&Ið Iús$   Ã:4J3Å4K ÊKÊ3J=Ë K
ËKrs   c                 óŠ   — t        j                  d«      j                  dd«      } | |«       | |«      }}t        ||«      sJ ‚y )Nr1  rV   ©rI   rc   r‹   r+   ©rs   Úbaser’   r¶   s       rS   Ú!test_allclose_dense_sparse_equalsrq  L  s=   € ä�9‰9�Q‹<×Ñ  1Ó%€DÙ�4‹=™' $›-€q€AÜ! ! QÔ'Ð'Ñ'r~   c                 ó�   — t        j                  d«      j                  dd«      } | |«       | |dz   «      }}t        ||«      rJ ‚y )Nr1  rV   r‚   rn  ro  s       rS   Ú%test_allclose_dense_sparse_not_equalsrs  S  sE   € ä�9‰9�Q‹<×Ñ  1Ó%€DÙ�4‹=™' $¨¡(Ó+€q€AÜ% a¨Ô+Ð+Ð+Ð+r~   c                 óà   — t        j                  d«      j                  dd«      } | |dz   «      }d}t        j                  t
        |¬«      5  t        ||«       d d d «       y # 1 sw Y   y xY w)Nr1  rV   r‚   zFCan only compare two sparse matrices, not a sparse matrix and an arrayr¸   )rI   rc   r‹   rO   rP   rQ   r+   )rs   r’   r¶   rÛ   s       rS   Ú test_allclose_dense_sparse_raiseru  Z  s[   € ä
�	‰	�!‹×Ñ˜Q Ó"€AÙ��A‘‹€Aà
R€CÜ	�‰”z¨Ô	-ñ %Ü˜q !Ô$÷%÷ %ñ %ús   ÁA$Á$A-c                  ó6  — t         dddœd„«       } t        j                  t        d¬«      5   | ddd«       d d d «       t        j                  t        d¬«      5   | dddd	«       d d d «       t         ddddd
œd„«       }t        j                  t        d¬«      5   |dd«       d d d «       t         dddœd„«       }t        j                  t        d¬«      5   |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   y xY w)Nr‚   ©r!  Údc                 ó   — y r…  rP  ©rÈ   rÉ   r!  rx  s       rS   Úf1z=test_deprecate_positional_args_warns_for_function.<locals>.f1e  ó   € àr~   úPass c=3 as keyword argsr¸   r\   rV   úPass c=3, d=4 as keyword argsrŠ   )rÉ   r!  rx  c                 ó   — y r…  rP  rz  s       rS   Úf2z=test_deprecate_positional_args_warns_for_function.<locals>.f2o  r|  r~   zPass b=2 as keyword argsc                 ó   — y r…  rP  rz  s       rS   Úf3z=test_deprecate_positional_args_warns_for_function.<locals>.f3w  r|  r~   )r‚   ©r2   rO   r•  ÚFutureWarning)r{  r€  r‚  s      rS   Ú1test_deprecate_positional_args_warns_for_functionr…  d  s  € ÜØ˜1ó ó  ðô 
�‰”mÐ+FÔ	Gñ Ù
ˆ1ˆa�Œ÷ô 
�‰”mÐ+KÔ	Lñ Ù
ˆ1ˆa��AŒ÷ô  ð�Q˜!˜qó ó  ðô 
�‰”mÐ+FÔ	Gñ Ù
ˆ1ˆaŒ÷ô  Ø˜1ó ó  ðô 
�‰”mÐ+FÔ	Gñ Ù
ˆ1ˆaŒ÷ð ÷%ð ú÷ð ú÷ð ú÷ð ús/   ¬C+ÁC7Â
DÃ
DÃ+C4Ã7D ÄDÄDc                  óš   — t        d¬«      d„ «       } t        j                  t        d¬«      5   | dd«       d d d «       y # 1 sw Y   y xY w)Nú1.1)Úversionc                 ó   — y r…  rP  ©rÈ   rÉ   s     rS   r{  zEtest_deprecate_positional_args_warns_for_function_version.<locals>.f1€  r|  r~   z,From version 1.1 passing these as positionalr¸   r‚   r\   rƒ  )r{  s    rS   Ú9test_deprecate_positional_args_warns_for_function_versionr‹    sM   € Ü¨Ô.ñó /ðô 
�‰ÜÐLô
ñ ñ 	ˆ1ˆaŒ÷÷ ñ ús   ®
AÁA
c                  ó   —  G d„ d«      } t        j                  t        d¬«      5   | ddd«       d d d «       t        j                  t        d¬«      5   | dddd	«       d d d «        G d
„ d«      }t        j                  t        d¬«      5   |ddd«       d d d «       t        j                  t        d¬«      5   |dddd	«       d d d «       y # 1 sw Y   Œ xY w# 1 sw Y   Œ}xY w# 1 sw Y   ŒQxY w# 1 sw Y   y xY w)Nc                   ó$   — e Zd Zedddœd„«       Zy)ú:test_deprecate_positional_args_warns_for_class.<locals>.A1r‚   rw  c                 ó   — y r…  rP  ©r†  rÈ   rÉ   r!  rx  s        rS   r2  zCtest_deprecate_positional_args_warns_for_class.<locals>.A1.__init__Œ  r‡  r~   N©rÁ   rˆ  r‰  r2   r2  rP  r~   rS   ÚA1rŽ  ‹  s   „ Ø	#Ø&'¨1ó 	ó 
$ñ	r~   r’  r}  r¸   r‚   r\   rV   r~  rŠ   c                   ó&   — e Zd Zeddddœd„«       Zy)ú:test_deprecate_positional_args_warns_for_class.<locals>.A2r‚   rw  c                 ó   — y r…  rP  r�  s        rS   r2  zCtest_deprecate_positional_args_warns_for_class.<locals>.A2.__init__—  r‡  r~   N)r‚   r‚   r‘  rP  r~   rS   ÚA2r”  –  s   „ Ø	#ð	¨!¨qó 	ó 
$ñ	r~   r–  )rO   r•  r„  )r’  r–  s     rS   Ú.test_deprecate_positional_args_warns_for_classr—  Š  sã   € ÷ñ ô
 
�‰”mÐ+FÔ	Gñ Ù
ˆ1ˆa�Œ÷ô 
�‰”mÐ+KÔ	Lñ Ù
ˆ1ˆa��AŒ÷÷ñ ô
 
�‰”mÐ+FÔ	Gñ Ù
ˆ1ˆa�Œ÷ô 
�‰”mÐ+KÔ	Lñ Ù
ˆ1ˆa��AŒ÷ð ÷ð ú÷ð ú÷ð ú÷ð ús/   ¦CÁCÂC(Â;C4ÃCÃC%Ã(C1Ã4C=rd  rV   c                 ó  — t         j                  j                  dd«      }g d¢t        j                  g d¢«      t	        j
                  g d¢«      j                  t	        j
                  g d¢«      ddd dœ}t        ||| ¬«      }| �| n t        t        |j                  d   «      «      }d	D ]  }||   ||   u rŒJ ‚ |d
   t        |d
   |«      k(  sJ ‚t        |d   t        |d   |«      «       t        |d   t        |d   |«      «       y )NrŠ   r\   )r‚   r\   rV   rŠ   r‚   Úxxx)rË  rË   ú
sparse-colú
sparse-rowú
scalar-intú
scalar-strÚNone)rW  rd  r   )r›  rœ  r�  rž  rË  rË   rš  )rI   rJ   ÚrandnrË   rq   rr   r¥   r-   rË  Úranger–   r   r    r   )rd  rw   Ú_paramsr  Úindices_Úkeys         rS   Útest_check_method_paramsr¤  ¢  sý   € ä
�	‰	�‰˜˜1Ó€AâÜ—‘š,Ó'Ü—m‘m¢LÓ1×3Ñ3Ü—m‘m¢LÓ1ØØØñ€Gô " !¨G¸WÔE€FØ!Ð-‰w´4¼¸a¿g¹gÀa¹jÓ8IÓ3J€HàAò +ˆØ�c‰{˜g c™lÒ*Ð*Ð*ð+ð �&‰>œ^¨G°F©O¸XÓFÒFÐFÐFÜ�v˜g‘¬°w¸wÑ7GÈÓ(RÔSÜ Øˆ|Ñœn¨W°\Ñ-BÀHÓMõr~   Ú	sp_format)Trâ   rU  rã   rV  c                 ó  — t        j                  d«      }t        dd«      }|j                  j                  j                  |«      }t        || ¬«      }| du rd} t        j                  |«      sJ ‚|j                  | k(  sJ ‚t        ||«       y )NrÓ   rW   rV   rO  Trã   )rO   r   r   r#  ÚsparseÚfrom_spmatrixr   rq   r—  rî   r   )r¥  rÙ   Úsp_matÚsdfr  s        rS   Ú"test_check_sparse_pandas_sp_formatr«  »  s�   € ô 
×	Ñ	˜XÓ	&€BÜ" 2 qÓ)€Fà
�,‰,×
Ñ
×
+Ñ
+¨FÓ
3€CÜ˜¨IÔ6€Fà�DÑàˆ	ä�;‰;�vÔÐÐØ�=‰=˜IÒ%Ð%Ð%Ü  ¨Õ0r~   zntype1, ntype2)	)Ú
longdoubler3  )r3  rd   )rd   Údouble)rj   rb   )rb   Úlong)Úbyterl   )Úushortrm   )rm   Úuint64)rk   ri   c                 ó²  — t        j                  d«      }|j                  |j                  j	                  g d¢| d¬«      |j                  j	                  g d¢|d¬«      dœ«      }t        |j                  «      t        d«      k  r6d}t        j                  t        |¬	«      5  t        |d
dg¬«       ddd«       yt        |d
dg¬«       y# 1 sw Y   yxY w)zÜcheck that we raise an error with dataframe having
    sparse extension arrays with unsupported mixed dtype
    and pandas version below 1.1. pandas versions 1.1 and
    above fixed this issue so no error will be raised.rÓ   ©r   r‚   r   r   ©rY   Ú
fill_value©r‚   r   r‚   ©Úcol1Úcol2r‡  z3Pandas DataFrame with mixed sparse extension arraysr¸   râ   rU  rO  N)
rO   r   r#  ÚarraysÚSparseArrayr)   Ú__version__rP   rQ   r   )Úntype1Úntype2rÙ   rî  rÐ   s        rS   Ú test_check_pandas_sparse_invalidr¿  Î  s¼   € ô& 
×	Ñ	˜XÓ	&€BØ	�‰à—I‘I×)Ñ)ª)¸6ÈaÐ)ÓPØ—I‘I×)Ñ)ª)¸6ÈaÐ)ÓPñ	
ó
€Bô �R—^‘^Ó$¤}°UÓ';Ò;ØGˆÜ�]‰]œ:¨WÔ5ñ 	:Ü˜¨5°%¨.Õ9÷	:ð 	:ô
 	�B u¨e nÖ5÷	:ð 	:ús   Â$CÃCz ntype1, ntype2, expected_subtyper­  r¬  rÊ  rd   rg   ri   r¯  Úshortrj   Úintcrb   Úintpr®  rÏ   rf   ÚlonglongÚint_Úubyterk   rl   r°  Úuintcrm   Úuintr±  ÚuintpÚ	ulonglongc                 ó0  — t        j                  d«      }|j                  |j                  j	                  g d¢| d¬«      |j                  j	                  g d¢|d¬«      dœ«      }t        |ddg¬	«      }t        j                  |j                  |«      sJ ‚y )
NrÓ   r³  r   r´  r¶  r·  râ   rU  rO  )	rO   r   r#  rº  r»  r   rI   Ú
issubdtyperY   )r½  r¾  Úexpected_subtyperÙ   rî  r9  s         rS   Útest_check_pandas_sparse_validrÍ  ó  s„   € ô. 
×	Ñ	˜XÓ	&€BØ	�‰à—I‘I×)Ñ)ª)¸6ÈaÐ)ÓPØ—I‘I×)Ñ)ª)¸6ÈaÐ)ÓPñ	
ó
€Bô �b¨°¨Ô
7€CÜ�=‰=˜Ÿ™Ð$4Ô5Ð5Ñ5r~   Úconstructor_name)rË  ra  rË   Ú	dataframeÚ
sparse_csrÚ
sparse_cscc                 óL   — g d¢g d¢g}t        || «      }t        |«      dk(  sJ ‚y)z$Check _num_features for array-likes.rÔ   r.  rV   N)r   r8   )rÎ  rw   s     rS   Útest_num_featuresrÓ    s.   € ò 
’IÐ€AÜ˜1Ð.Ó/€AÜ˜Ó˜qÒ Ð Ñ r~   rÔ   r   )FTF)rê  g333333@g      @rÈ   rÉ   r!  )rÏ   rW  rh   r¯   Údict)rË  ra  rË   Úseriesc                 ól  — t        | |«      } |dk(  rd}n
|dk(  rd}n|}d|› �}t        | d«      r|t        j                  d«      z  }n1t	        | d   t
        «      r|d	z  }nt	        | d   t        «      r|d
z  }t        j                  t        |¬«      5  t        | «       d d d «       y # 1 sw Y   y xY w)NrË   znumpy.ndarrayrÕ  zpandas.*Seriesú5Unable to find the number of features from X of type r–   z with shape (3,)r   z" where the samples are of type strz# where the samples are of type dictr¸   )r   rê   rq  rr  rŒ   rW  rÔ  rO   rP   rè   r8   )rw   rÎ  Úexpected_type_nameÚmessages       rS   Ú&test_num_features_errors_1d_containersrÚ     sÁ   € ô 	˜1Ð.Ó/€AØ˜7Ò"Ø,ÑØ	˜XÒ	%Ø-Ñà-Ðà
?Ð@RÐ?SÐTð ô ˆq�'ÔØ”2—9‘9Ð/Ó0Ñ0‰Ü	�A�a‘Dœ#Ô	ØÐ7Ñ7‰Ü	�A�a‘Dœ$Ô	ØÐ8Ñ8ˆÜ	�‰”y¨Ô	0ñ Ü�aÔ÷÷ ñ ús   ÂB*Â*B3)r‚   rÉ   Frí  )rÏ   rW  rh   r¯   c                 óª   — dt        | «      j                  › �}t        j                  t        |¬«      5  t        | «       d d d «       y # 1 sw Y   y xY w)Nr×  r¸   )rØ   r‰  rO   rP   rè   r8   )rw   rÛ   s     rS   Ú test_num_features_errors_scalarsrÜ  A  sD   € àAÄ$ÀqÃ'×BVÑBVÐAWÐ
X€CÜ	�‰”y¨Ô	,ñ Ü�aÔ÷÷ ñ ús   ´A	Á	AÚnamesrx  )zlist-intr   ÚdefaultÚ
MultiIndexc                 ó
  — t        j                  d«      }|j                  ddgddgddgg| ¬«      }t        j                  «       5  t        j
                  dt        «       t        |«      } d	d	d	«       | �J ‚y	# 1 sw Y   ŒxY w)
z‘Get feature names with pandas dataframes without warning.

    Column names with consistent dtypes will not warn, such as int or MultiIndex.
    rÓ   r‚   r\   rŠ   r]   r�   rÖ  rB  N)rO   r   r#  rC  rD  rE  r„  r4   )rÝ  rÙ   rw   s      rS   Ú2test_get_feature_names_pandas_with_ints_no_warningrá  H  s€   € ô 
×	Ñ	˜XÓ	&€BØ
�‰�q˜!�f˜q !˜f q¨! fÐ-°uˆÓ=€Aä	×	 Ñ	 Ó	"ñ &Ü×Ñ˜g¤}Ô5Ü" 1Ó%ˆ÷&ð ˆ=Ð‰=÷&ð &ús   Á&A9Á9Bc                  óÎ   — t        j                  d«      } t        d«      D �cg c]  }d|› �‘Œ	 }}| j                  g d¢g d¢g|¬«      }t	        |«      }t        ||«       yc c}w )z)Get feature names with pandas dataframes.rÓ   rV   Úcol_rÔ   r.  rÖ  N)rO   r   r   r#  r4   r    )rÙ   r>  r"  rw   Úfeature_namess        rS   Útest_get_feature_names_pandasrå  [  s_   € ä	×	Ñ	˜XÓ	&€BÜ#(¨£8Ö,˜a��a�SŠzÐ,€GÐ,Ø
�‰’i¢Ð+°WˆÓ=€AÜ& qÓ)€Mä�} gÕ.ùò	 -s   £A"zconstructor_name, minversion))Úpyarrowz12.0.0)rÏ  z1.5.0)Úpolarsz0.18.2c                 óh   — g d¢g d¢g}g d¢}t        || ||¬«      }t        |«      }t        ||«       y)z:Uses the dataframe exchange protocol to get feature names.©r‚   rŠ   r\   ©rV   rV   r�   )Úcol_0Úcol_1Úcol_2)Úcolumns_namer  N)r   r4   r    )rÎ  r  r¨   r"  rî  rä  s         rS   Ú)test_get_feature_names_dataframe_protocolrï  e  s=   € ò ’yÐ!€DÚ)€GÜ	ØÐ¨WÀô
€Bô ' rÓ*€Mä�} gÕ.r~   )ræ  rÏ  rç  c                 óf   — t        g d¢g d¢g| «      }| dv rt        |«      rJ ‚y t        |«      sJ ‚y )Nré  rê  )ræ  rç  )r   r6   )rÎ  rî  s     rS   Ú!test_is_pandas_df_other_librariesrñ  u  s<   € ä	šYª	Ð2Ð4DÓ	E€BØÐ0Ñ0Ü  Ô$Ð$Ð$Ð$ä˜RÔ Ð Ñ r~   c                  óÎ   — t        j                  d«      } | j                  g d¢g«      }t        |«      sJ ‚t        t	        j
                  g d¢«      «      rJ ‚t        d«      rJ ‚y)z8Check behavior of is_pandas_df when pandas is installed.rÓ   rÔ   r‚   N)rO   r   r#  r6   rI   r˜   )rÙ   rî  s     rS   Útest_is_pandas_dfró  ~  sX   € ä	×	Ñ	˜XÓ	&€BØ	�‰’y�kÓ	"€BÜ˜ÔÐÐÜœRŸZ™Zª	Ó2Ô3Ð3Ð3Ü˜QÔÐÐÐr~   c                 ób   — t        t        j                  g d¢«      «      rJ ‚t        d«      rJ ‚y)z1Check _is_pandas_df when pandas is not installed.rÔ   r‚   N)r6   rI   r˜   )Úhide_available_pandass    rS   Ú&test_is_pandas_df_pandas_not_installedrö  ‡  s,   € ô œRŸZ™Zª	Ó2Ô3Ð3Ð3Ü˜QÔÐÐÐr~   ræ  rÏ  rÓ   rç  c                 ój   — t        g d¢g d¢g| |¬«      }| dv rt        |«      rJ ‚y t        |«      sJ ‚y )Nré  rê  r  )ræ  rÏ  )r   r7   )rÎ  r  rî  s      rS   Ú!test_is_polars_df_other_librariesrø  Ž  sF   € ô 
Ú	’IÐØØô
€Bð
 Ð3Ñ3Ü  Ô$Ð$Ð$Ð$ä˜RÔ Ð Ñ r~   c                  ó@   —  G d„ d«      }  | «       }t        |«      rJ ‚y)zACheck _is_polars_df for object that looks like a polars dataframec                   ó   — e Zd Zd„ Zy)úNtest_is_polars_df_for_duck_typed_polars_dataframe.<locals>.NotAPolarsDataFramec                 ó$   — g d¢| _         d| _        y )NrÔ   Ú	my_schema©r"  Úschemar¦  s    rS   r2  zWtest_is_polars_df_for_duck_typed_polars_dataframe.<locals>.NotAPolarsDataFrame.__init__¦  s   € Ú$ˆDŒLØ%ˆD�Kr~   Nr;  rP  r~   rS   ÚNotAPolarsDataFramerû  ¥  s   „ ó	&r~   r   N©r7   )r   Únot_a_polars_dfs     rS   Ú1test_is_polars_df_for_duck_typed_polars_dataframer  ¢  s'   € ÷&ñ &ñ
 *Ó+€OÜ˜_Ô-Ð-Ð-Ð-r~   c                  óX   — t        j                  g d¢g d¢g«      } t        | «      }|�J ‚y)z/Get feature names return None for numpy arrays.rÔ   r.  N)rI   rË   r4   )rw   rÝ  s     rS   Útest_get_feature_names_numpyr  ®  s)   € ä
�‰’)šYÐ'Ó(€AÜ˜qÓ!€EØˆ=Ð‰=r~   znames, dtypesz['int', 'str']Úpizzaz['list', 'str']zint-strzlist-strc                 ó  — t        j                  d«      }|j                  ddgddgddgg| ¬«      }t        j                  d|› d	�«      }t        j
                  t        |¬
«      5  t        |«      } ddd«       y# 1 sw Y   yxY w)zAGet feature names errors when the feature names have mixed dtypesrÓ   r‚   r\   rŠ   r]   r�   rÖ  z]Feature names are only supported if all input features have string names, but your input has a.   as feature name / column name types. If you want feature names to be stored and validated, you must convert them all to strings, by using X.columns = X.columns.astype(str) for example. Otherwise you can remove feature / column names from your input data, or convert them all to a non-string data type.r¸   N)rO   r   r#  rq  rr  rP   rè   r4   )rÝ  rú   rÙ   rw   rÛ   s        rS   Ú%test_get_feature_names_invalid_dtypesr  µ  sŠ   € ô 
×	Ñ	˜XÓ	&€BØ
�‰�q˜!�f˜q !˜f q¨! fÐ-°uˆÓ=€Aä
�)‰)ð	Ø$˜Xð &?ð	?ó€Cô 
�‰”y¨Ô	,ñ &Ü" 1Ó%ˆ÷&÷ &ñ &ús   Á&A;Á;Bc                   ó"   — e Zd Zdd„Zd„ Zdd„Zy)ÚPassthroughTransformerNc                 ó"   — t        | |d¬«       | S )NT)Úreset)rD   rÀ  s      rS   rÃ   zPassthroughTransformer.fitÏ  s   € Ü�d˜A TÕ*Øˆr~   c                 ó   — |S r…  rP  )r†  rw   s     rS   Ú	transformz PassthroughTransformer.transformÓ  s   € Øˆr~   c                 ó   — t        | |«      S r…  )r,   )r†  Úinput_featuress     rS   Úget_feature_names_outz,PassthroughTransformer.get_feature_names_outÖ  s   € Ü& t¨^Ó<Ð<r~   r…  )rÁ   rˆ  r‰  rÃ   r  r  rP  r~   rS   r
  r
  Î  s   „ óòô=r~   r
  c                  ó°  — t        j                  g d¢g«      } t        «       j                  | «      }|j	                  «       }t        |g d¢«       ddg}t        j                  t        d¬«      5  |j	                  |«       ddd«       |`	t        j                  t        d¬«      5  |j	                  «        ddd«       y# 1 sw Y   Œ@xY w# 1 sw Y   yxY w)	z4Check behavior of check_feature_names_in for arrays.©rë  rê  rì  )Úx0Úx1Úx2Úx10r  z*input_features should have length equal tor¸   Nz Unable to generate feature names)
rI   rË   r
  rÃ   r  r    rO   rP   rQ   Ún_features_in_)rw   rÇ  rÝ  Úincorrect_len_namess       rS   Útest_check_feature_names_inr  Ú  s¹   € ä
�‰’/Ð"Ó#€AÜ
 Ó
"×
&Ñ
& qÓ
)€Cà×%Ñ%Ó'€EÜ�uÒ0Ô1à  $˜-ÐÜ	�‰”zÐ)UÔ	Vñ 7Ø×!Ñ!Ð"5Ô6÷7ð 	ÐÜ	�‰”zÐ)KÔ	Lñ $Ø×!Ñ!Ô#÷$ð $÷7ð 7ú÷
$ð $ús   Á/C Â&CÃ C	ÃCc                  óV  — t        j                  d«      } g d¢}| j                  g d¢g|¬«      }t        «       j	                  |«      }|j                  «       }t        |g d¢«       t        j                  t        d¬«      5  |j                  g d¢«       ddd«       y# 1 sw Y   yxY w)	z?Check behavior of check_feature_names_in for pandas dataframes.rÓ   r   r  rÖ  zinput_features is not equal tor¸   )r  r  Úx3N)	rO   r   r#  r
  rÃ   r  r    rP   rQ   )rÙ   rÝ  rî  rÇ  s       rS   Ú"test_check_feature_names_in_pandasr  ì  sŠ   € ä	×	Ñ	˜XÓ	&€BÚ€EØ	�‰’Ð'°ˆÓ	7€BÜ
 Ó
"×
&Ñ
& rÓ
*€Cà×%Ñ%Ó'€EÜ�ušoÔ.ä	�‰”zÐ)IÔ	Jñ 6Ø×!Ñ!Ò"4Ô5÷6÷ 6ñ 6ús   ÂBÂB(c                  ó�   — d} t        j                  t        | ¬«      5  t        t	        «       d«       ddd«       y# 1 sw Y   yxY w)z@Check the error message when passing an unknown response method.zKRandomForestRegressor has none of the following attributes: unknown_method.r¸   Úunknown_methodN)rO   rP   r¸  r/   r   )rÐ   s    rS   Ú)test_check_response_method_unknown_methodr   ú  sE   € ð 	Vð ô 
�‰”~¨WÔ	5ñ JÜÔ4Ó6Ð8HÔI÷J÷ Jñ Jús	   ž<¼AÚresponse_method)Údecision_functionÚpredict_probaÚpredictc                 ó˜   — d| › d�}t        j                  t        |¬«      5  t        t	        «       | «       ddd«       y# 1 sw Y   yxY w)zUCheck the error message when a response method is not supported by the
    estimator.z7EstimatorWithFit has none of the following attributes: ú.r¸   N)rO   rP   r¸  r/   r   )r!  rÐ   s     rS   Ú8test_check_response_method_not_supported_response_methodr'    sO   € ð BÀ/ÐARÐRSÐTð ô 
�‰”~¨WÔ	5ñ DÜÔ/Ó1°?ÔC÷D÷ Dñ Dús   ¢A Á A	c                  ól  — dg} t        | «      }d}ddg}ddj                  |«      › d�}t        j                  t        |¬«      5   t        ||«      |«       d	d	d	«       ddg} t        ||«      |«      }|dk(  sJ ‚ddg} t        | «      }g d
¢} t        ||«      |«      }|dk(  sJ ‚y	# 1 sw Y   ŒSxY w)z0Check that we can pass a list of ordered method.r#  Úmocking_datar"  r$  zD_MockEstimatorOnOffPrediction has none of the following attributes: z, r&  r¸   N)r"  r$  r#  )r   ÚjoinrO   rP   r¸  r/   )Úmethod_implementedÚmy_estimatorrw   r!  rÐ   Úmethod_name_predictings         rS   Ú#test_check_response_method_list_strr.    sñ   € à)Ð*ÐÜ0Ð1CÓD€Là€Að +¨IÐ6€OàNØ�9‰9�_Ó%Ð
& að	)ð ô 
�‰”~¨WÔ	5ñ AØ=Ô˜|¨_Ó=¸aÔ@÷Að +¨OÐ<€OØRÔ3°LÀ/ÓRÐSTÓUÐØ! _Ò4Ð4Ð4ð *¨9Ð5ÐÜ0Ð1CÓD€LÚG€OØRÔ3°LÀ/ÓRÐSTÓUÐØ! YÒ.Ð.Ñ.÷Að Aús   ÁB*Â*B3c                  óÒ   — t        d«      } t        | j                  ddg«      d¬«      }t        j                  ddg«      }|j
                  |j
                  k(  sJ ‚t        ||«       y)zRegression test for gh-25145rÓ   TFrÕ   N)r   r   r×   rI   rË   rY   r    )rÙ   rá  Úexpecteds      rS   Ú#test_boolean_series_remains_booleanr1  -  sW   € ä	�hÓ	€BÜ
�b—i‘i  u Ó.¸%Ô
@€CÜ�x‰x˜˜u˜Ó&€Hà�9‰9˜Ÿ™Ò&Ð&Ð&Ü�s˜HÕ%r~   Úinput_values)r   r‚   r   r‚   r   r‚   c                 óì   — t        d«      }|j                  | d¬«      }t        |dddd¬«      }t        j                  |j
                  j                  t        j                  «      sJ ‚t        || «       y)zpCheck pandas array with extensions dtypes returns a numeric ndarray.

    Non-regression test for gh-25637.
    rÓ   ÚInt32rX   NF)rY   rÖ   rá   r…   )	r   rË   r   rI   rË  rY   r?  Úfloatingr   )r2  rÙ   Úinput_seriesr  s       rS   Ú!test_pandas_array_returns_ndarrayr7  7  sg   € ô 
�hÓ	€BØ—8‘8˜L°�8Ó8€LÜØØØØØô€Fô �=‰=˜Ÿ™×*Ñ*¬B¯K©KÔ8Ð8Ð8Ü�F˜LÕ)r~   c                  ó‚  — t        j                  d«      } | j                  | j                  ddgd| j                  dgg| j                  ¬«      }t        d¬«      5  t        j                  t        d¬	«      5  t        |«       d
d
d
«       d
d
d
«       | j                  | j                  ddgd| j                  dgg| j                  ¬«      }t        d¬«      5  t        j                  t        d¬	«      5  t        |«       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   y
xY w)z9Checks that Array API arrays checks non-finite correctly.Úarray_api_strictr‚   r   rV   rX   T©Úarray_api_dispatchrÍ   r¸   Nzinfinity or a value too large)
rO   r   r˜   rt   rd   r   rP   rQ   r   rÛ  )ÚxpÚX_nanÚX_infs      rS   Ú)test_check_array_array_api_has_non_finiter?  J  s  € ô 
×	Ñ	Ð/Ó	0€Bà�J‰J˜Ÿ™  A˜¨¨B¯F©F°A¨Ð7¸r¿z¹zˆJÓJ€EÜ	¨4Ô	0ñ Ü�]‰]œ:Ð-BÔCñ 	Ü˜Ô÷	÷ð �J‰J˜Ÿ™  A˜¨¨B¯F©F°A¨Ð7¸r¿z¹zˆJÓJ€EÜ	¨4Ô	0ñ Ü�]‰]œ:Ð-LÔMñ 	Ü˜Ô÷	÷ð ÷		ð 	ú÷ð ú÷	ð 	ú÷ð úsH   ÁDÁ7DÂDÃD5Ã4D)Ä D5ÄD	ÄDÄD&Ä)D2	Ä.D5Ä5D>zextension_dtype, regular_dtype))rå  rh   )r(  rf   )r  rg   )rà  rn   Úinclude_objectc                 ój  — t        j                  d«      }|j                  |j                  g d¢|¬«      |j                  g d¢d¬«      dœ«      }|r|j                  g d¢d¬«      |d	<   |j	                  |d
   j                  | «      ¬«      }t        |d¬«      }t        |d¬«      }t        ||«       y)zKCheck pandas extension arrays give the same result as non-extension arrays.rÓ   )r‚   r   r‚   r   rX   )r1  rß   r0  r�   rf   )rÈ   r!  rz  rn   rÉ   rÈ   )rÈ   N)rO   r   r#  r×   Úassignre   r   r    )Úextension_dtypeÚregular_dtyper@  rÙ   Ú	X_regularÚX_extensionÚX_regular_checkedÚX_extension_checkeds           rS   Ú$test_check_array_multiple_extensionsrI  Z  s«   € ô 
×	Ñ	˜XÓ	&€BØ—‘à—‘š<¨}�Ó=Ø—‘š<¨w�Ó7ñ	
ó€Iñ ØŸ™Ò#7¸x˜ÓHˆ	�#‰à×"Ñ" Y¨s¡^×%:Ñ%:¸?Ó%KÐ"ÓL€Kä# I°TÔ:ÐÜ% k¸Ô>ÐÜÐ(Ð*=Õ>r~   c                  ó~   — t        j                  d«      } | j                  g d¢g d¢dœ«      }t        |«      dk(  sJ ‚y)zDUse the DataFrame interchange protocol to get n_samples from polars.rç  rÔ   r.  rŠ  rV   N)rO   r   r#  r9   )Úplrî  s     rS   Ú#test_num_samples_dataframe_protocolrL  y  s8   € ä	×	Ñ	˜XÓ	&€Bà	�‰šIªIÑ6Ó	7€BÜ˜Ó˜qÒ Ð Ñ r~   rý   Úoutput_format)râ   rU  rã   c                 óš  —  | ddgddggt         j                  ¬«      }t        |d«      r/|j                  j	                  t         j
                  «      |_        n»t        |d«      r;t        |d«      r/|j                  j	                  t         j
                  «      |_        ntt        |d«      rht        |d«      r\|j                  j	                  t         j
                  «      |_        |j                  j	                  t         j
                  «      |_        t        ||¬	«      }|d
k(  rS|j                  j                  t         j
                  k(  sJ ‚|j                  j                  t         j
                  k(  sJ ‚y|j                  j                  t         j
                  k(  sJ ‚|j                  j                  t         j
                  k(  sJ ‚y)zGCheck the consistency of the indices dtype with sparse matrices/arrays.r   r‚   rX   Úoffsetsrb  rc  rd  re  rO  rã   N)rI   rg   rê   rO  re   rb   rb  rd  re  r   rY   rc  )rý   rM  rw   r±   s       rS   Ú1test_check_array_dia_to_int32_indexed_csr_csc_coorP  �  s?  € ñ 	˜1˜a˜& 1 a &Ð)´·±Ô<€Aô ˆq�)ÔØ—I‘I×$Ñ$¤R§X¡XÓ.ˆ�	Ü	��EÔ	œw q¨%Ô0Ø—‘—‘œRŸX™XÓ&ˆ�Ü	��IÔ	¤7¨1¨hÔ#7Ø—I‘I×$Ñ$¤R§X¡XÓ.ˆŒ	Ø—8‘8—?‘?¤2§8¡8Ó,ˆŒä˜A¨]Ô;€IØ˜ÒØ�}‰}×"Ñ"¤b§h¡hÒ.Ð.Ð.Ø�}‰}×"Ñ"¤b§h¡hÒ.Ð.Ñ.à× Ñ ×&Ñ&¬"¯(©(Ò2Ð2Ð2Ø×Ñ×%Ñ%¬¯©Ò1Ð1Ñ1r~   Úsequencec                 óª   — t        | «      }t        |t        j                  «      sJ ‚|j                  j
                  dk(  sJ ‚|j                  dk(  sJ ‚y )NÚOr‚   )r:   rŒ   rI   rï   rY   r?  ré   )rQ  Úouts     rS   Útest_to_object_arrayrU  œ  sF   € ä
˜8Ó
$€CÜ�cœ2Ÿ:™:Ô&Ð&Ð&Ø�9‰9�>‰>˜SÒ Ð Ð Ø�8‰8�qŠ=Ð‰=r~   c                  óø  — dg d¢fdg d¢fdt        j                  d«      dz  fdg d¢fdg d	¢fdd
gdgdggfdg d¢g d¢gfdg d¢gfdd
d
gddgdd
ggfddd
gddgdd
ggfdg d¢gfdt        j                  d«      j                  d«      fg} | D ]_  \  }}|dv r)t        t	        |«      t        j
                  |«      «       Œ3t        j                  t        «      5  t	        |«       d d d «       Œa y # 1 sw Y   ŒlxY w)NÚbinary)ÚspamÚeggrX  )r   r‚   r   r‚   Ú
continuousrW   g      4@Ú
multiclassrÔ   )r   r‚   r\   r\   r   r‚   r\   rV   zmultilabel-indicatorr³  )r   r   r‚   zmulticlass-multioutputr]   rŠ   zcontinuous-multioutputé   )r¤   rV   )rW  r[  rZ  )	rI   rc   r‹   r    rB   r™   rO   rP   rQ   )ÚEXAMPLESÚy_typer¶   s      rS   Útest_column_or_1dr_  ¤  s&  € à	Ò*Ð+Ø	’<Ð Ø	”r—y‘y “} tÑ+Ð,Ø	’yÐ!Ø	’Ð'Ø	˜˜˜a˜S 1 #�Ð'Ø	¢)ªYÐ!7Ð8Ø	!¢I ;Ð/Ø	! Q¨ F¨Q°¨F°Q¸°FÐ#;Ð<Ø	! Q¨ F¨Q°¨F°Q¸°FÐ#;Ð<Ø	!¢I ;Ð/Ø	!¤2§9¡9¨R£=×#8Ñ#8¸Ó#AÐBð€Hð ò  ‰	ˆ�ØÐ;Ñ;Üœ|¨A›´·±¸³Õ<ä—‘œzÓ*ñ  Ü˜Q”÷ ð  ñ	 ÷ ð  ús   ÃC0Ã0C9	c                  ó<   —  G d„ d«      } t         | «       «      rJ ‚y)z@Check that _is_polars_df return False for non-dataframe objects.c                   ó   — e Zd Zd„ Zy)ú+test__is_polars_df.<locals>.LooksLikePolarsc                 ó(   — ddg| _         ddg| _        y )NrÈ   rÉ   rþ  r¦  s    rS   r2  z4test__is_polars_df.<locals>.LooksLikePolars.__init__À  s   € Ø ˜:ˆDŒLØ ˜*ˆD�Kr~   Nr;  rP  r~   rS   ÚLooksLikePolarsrb  ¿  s   „ ó	%r~   rd  Nr  )rd  s    rS   Útest__is_polars_dfre  ¼  s"   € ÷%ñ %ô
 ™_Ó.Ô/Ð/Ð/Ð/r~   c                  ó^  — t         j                  j                  d¬«      } t        | dd¬«      }t        j                  || «      sJ ‚|j
                  j                  sJ ‚d| j
                  _        t        | dd¬«      }t        j                  || «      rJ ‚|j
                  j                  sJ ‚y)zyCheck the behavior of check_array when a writeable array is requested
    without copy if possible, on numpy arrays.
    r•   ©ÚsizeFT©r[   Úforce_writeableN)rI   rJ   Úuniformr   r
  r¦   Ú	writeable)rw   rT  s     rS   Útest_check_array_writeable_nprm  Ç  s•   € ô 	�	‰	×Ñ˜xÐÓ(€Aä
�a˜e°TÔ
:€Cä×Ñ˜s AÔ&Ð&Ð&Ø�9‰9×ÒÐÐà€A‡G�GÔä
�a˜e°TÔ
:€Cä×"Ñ" 3¨Ô*Ð*Ð*Ø�9‰9×ÒÐÑr~   c                  óp  — t         j                  j                  d¬«      } t        | d¬«      }t	        |dd¬«      }t        j
                  ||«      sJ ‚|j                  j                  sJ ‚t        | d¬«      }t	        |dd¬«      }t        j
                  ||«      rJ ‚|j                  j                  sJ ‚y	)
a  Check the behavior of check_array when a writeable array is requested
    without copy if possible, on a memory-map.

    A common situation is when a meta-estimators run in parallel using multiprocessing
    with joblib, which creates read-only memory-maps of large arrays.
    r•   rg  zw+r  FTri  r  N)rI   rJ   rk  r!   r   r
  r¦   rl  )rw   ÚmmaprT  s      rS   Útest_check_array_writeable_mmaprp  Ú  s¡   € ô 	�	‰	×Ñ˜xÐÓ(€Aä$ Q°$Ô7€DÜ
�d ¸Ô
=€Cä×Ñ˜s DÔ)Ð)Ð)Ø�9‰9×ÒÐÐä$ Q°#Ô6€DÜ
�d ¸Ô
=€Cä×"Ñ" 3¨Ô-Ð-Ð-Ø�9‰9×ÒÐÑr~   c                  óÔ  — t        j                  d«      } t        j                  j	                  d¬«      }| j                  |d¬«      }t        |dd¬«      }t        j                  ||«      sJ ‚|j                  j                  sJ ‚d|j                  _	        | j                  |d¬«      }t        |dd¬«      }t        j                  ||«      rJ ‚|j                  j                  sJ ‚y)	zxCheck the behavior of check_array when a writeable array is requested
    without copy if possible, on a dataframe.
    rÓ   r•   rg  FrZ   Tri  N)
rO   r   rI   rJ   rk  r#  r   r
  r¦   rl  )rÙ   rw   rî  rT  s       rS   Útest_check_array_writeable_dfrr  ð  sÉ   € ô 
×	Ñ	˜XÓ	&€Bä
�	‰	×Ñ˜xÐÓ(€AØ	�‰�a˜eˆÓ	$€Bä
�b˜u°dÔ
;€Cä×Ñ˜s BÔ'Ð'Ð'Ø�9‰9×ÒÐÐà€A‡G�GÔØ	�‰�a˜eˆÓ	$€Bä
�b˜u°dÔ
;€Cä×"Ñ" 3¨Ô+Ð+Ð+Ø�9‰9×ÒÐÑr~   c                  ó2  — t        j                  g d¢g d¢g«      } t        d¬«      5  t        j                  t	        | d¬«      «      sJ ‚t        j                  t        «      5  t	        | «       d d d «       d d d «       y # 1 sw Y   ŒxY w# 1 sw Y   y xY w)Nr³  r¶  Tr:  rO  )rq   rÞ   r   r—  r   rO   rP   rè   )ÚX_sps    rS   Ú8test_check_array_on_sparse_inputs_with_array_api_enabledru  	  sy   € ä�<‰<š¢IÐ.Ó/€DÜ	¨4Ô	0ñ Ü�{‰{œ; t¸4Ô@ÔAÐAÐAä�]‰]œ9Ó%ñ 	Ü˜Ô÷	÷ð ÷	ð 	ú÷ð ús#   ¨<BÁ$BÁ0BÂB
	ÂBÂBc                  óú  — t         j                  j                  d¬«      } t         j                  j                  dd¬«      }d}t	        j
                  t        |¬«      5  t        | d¬«       d d d «       t	        j
                  t        |¬«      5  t        | |d¬«       d d d «       t	        j
                  t        |¬«      5  t        | d¬«       d d d «       y # 1 sw Y   ŒmxY w# 1 sw Y   ŒGxY w# 1 sw Y   y xY w)	Nr•   rg  r‚   )rW   z5'force_all_finite' was renamed to 'ensure_all_finite'r¸   T)Úforce_all_finite)
rI   rJ   rk  rN   rO   r•  r„  r   r   r   r*  s      rS   Ú$test_force_all_finite_rename_warningrx  	  sÉ   € Ü
�	‰	×Ñ˜xÐÓ(€AÜ
�	‰	×Ñ˜! %ÐÓ(€Aà
A€Cä	�‰”m¨3Ô	/ñ .Ü�A¨Õ-÷.ô 
�‰”m¨3Ô	/ñ /Ü�!�Q¨Õ.÷/ô 
�‰”m¨3Ô	/ñ 1Ü�q¨4Õ0÷1ð 1÷.ð .ú÷/ð /ú÷1ð 1ús$   ÁCÂC%ÃC1ÃC"Ã%C.Ã1C:)êÚ__doc__rF  rq  rC  Ú	itertoolsr   Úoperatorr   Útempfiler   ÚnumpyrI   rO   Úscipy.sparser§  rq   r   rÜ  Úsklearn._configr   Úsklearn._min_dependenciesr   Úsklearn.baser	   Úsklearn.datasetsr
   Úsklearn.ensembler   Úsklearn.exceptionsr   r   Úsklearn.linear_modelr   Ú(sklearn.metrics.tests.test_score_objectsr   Úsklearn.neighborsr   Úsklearn.random_projectionr   Úsklearn.svmr   Úsklearn.utilsr   r   r   r   r   r   Úsklearn.utils._mockingr   r   Úsklearn.utils._testingr   r   r   r   r   r    r!   r"   Úsklearn.utils.estimator_checksr#   Úsklearn.utils.fixesr$   r%   r&   r'   r(   r)   Úsklearn.utils.validationr*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rT   r}   ÚmarkÚparametrizerJ   r_  Útocsrr‡   r�   r�   r«   rÛ  rt   r˜   r§   r²   r¼   rÆ   rÌ   rË   rn   rÑ   rÜ   Úfilterwarningsr  r  rd   rg   r&  r,  r7  r<  r@  rM  rR  rT  Úfixturerg  rj  rl  ru  r€  r‹  rž  r©  r¶  r»  rÈ  rË  ra  rÐ  rÔ  rØ  rÞ  rã  rð  rô  rö  rø  rý  r  r  rØ   rQ   r¸  r%  rr   r  r’  r“  r‘  Ú
dia_matrixr'  r+  r=  rI  r¯   rè   rG  ÚIntegralrh   rÏ   rZ  Ú_psd_cases_validÚvaluesÚkeysre  Ú_psd_cases_invalidrj  rl  rq  rs  ru  r…  r‹  r—  r¤  r«  r¿  r5  ÚintegerÚunsignedintegerrÍ  rÓ  rÚ  rÜ  r   rá  rå  rï  rñ  ró  rö  rø  r  r  r  r
  r  r  r   r'  r.  r1  r7  r?  rI  rL  rP  rU  r_  re  rm  rp  rr  ru  rx  rP  r~   rS   ú<module>r�     s–  ðÙ *ã Û 	Û Ý Ý Ý 'ã Û Ý Ý ã Ý *Ý 8Ý &Ý 'Ý 2ß FÝ .õ FÝ 2Ý ;Ý ÷÷ ÷÷	÷ 	ó 	õ 7÷÷ ÷÷ ÷ ÷ ÷ ÷ ÷ ñ ò>0ò$'%ðT ‡�×Ñ˜ §	¡	× 0Ñ 0°Ó 9¸W¸R¿W¹WÀRÈ»^×=QÑ=QÓ=SÐUÓVñ1ó Wð1òGòò ,ð& ‡�×ÑØØ‡f�fˆe€_�r—v‘v˜{Ð+¨b¯f©f°e¨_Ð=óð ‡�×Ñ˜ B§J¡J°·±Ð#>Ó?ñ/ó @ó	ð
/ð ‡�×ÑØ5à	�‰��TÐ4Ð5Ø	�‰��dÐ7Ð8Ø	�‰� $Ð(OÐPØ	�‰��kÐ#>Ð?Ø	�‰��TÐ/Ð0Ø	�‰��dÐ2Ð3Ø	�‰��dÐ2Ð3à�F‰FØØØ?ð		
ð 
�‰��QÐ,Ð-ðóð& ‡�×Ñ˜ B§J¡J°·±Ð#>Ó?ñ
ó @ó'ð(
ð ‡�×Ñ˜Ò'BÓCØ‡�×Ñ˜ B§J¡J°·±Ð#>Ó?ñ%1ó @ó Dð%1òP
;ð ‡�×ÑØð ˆB�H‰H�q˜"Ÿ&™&�k�]Ó#Ø!ð	
ð
 ˆB�H‰H�q˜"Ÿ&™&�k�]Ó#Ø!ð	
ð
 ˆB�H‰H�q˜"Ÿ&™&�k�]Ó#ØCð	
ð 
ˆ�‰�A�r—v‘v�;�- vÔ	.Ð0UÐVðóð$ ‡�×ÑÐ,¨t°U¨mÓ<ñGó =ó%ð&Gò)ð ‡�×ÑÐQÓRñA
ó SðA
ðH ‡�×ÑØà
ˆsˆ�c˜3�ZÐ Øˆ�‰�3˜�*˜s C˜jÐ)°Ô5Øˆ�‰�3˜�*˜s C˜jÐ)°Ô5Ø
�ˆ˜˜d�|Ð$Øˆ�‰�4˜�,  t Ð-°TÔ:ðó	ñ(ó	ð(ð ‡�×ÑØÒJóð ‡�×ÑØà
�*‰*�b—j‘jÐ	! 2§:¡:Ð.Ø	�‰�R—Z‘ZÐ Ø	�B—J‘JÐðóñ/óóð/ò:%ò*"GòJ5ò=ò()òV9ò>/ð €‡‚Ò3Ô4ñó 5ðò,Gò
Lò<%ò~'òTGò  0òF'ò*ò!(òH"BðJ ‡�×ÑØ
‰Z˜‹]˜D %Ð(Ò.Ið ó ñ2óð2òAò(
+òò	Eð ‡�×ÑØˆr�z‰z˜2Ÿ:™:Ð&¨¯
©
°D¸)ÐDóð ‡�×Ñ˜Ð':Ó;ñ8ó <óð8ò<8ò&9÷ñ ÷
	ñ 	òð4 ‡�×Ñ˜ $¨ Ó/ñ4ó 0ð4ð ‡�×ÑØUð Ù� Ð&9¸4Ð%@ÓAØØØð	
ð Ù� Ð&9¸4Ð%@ÓAØØØð	
ð á�^ RÐ*=¸tÐ)DÓEðð ˆOØØð	
ð Ù� Ð&9¸4Ð%@ÓAØÐ ØØð	
ð Ù� Ð&9¸4Ð%@ÓAØØØð	
ð Ù� Ð&8¸$Ð%?Ó@ØØØð	
ðM-ò\	ða ó 8ñr+ós8ðr+ð< ‡�×ÑØà
�
‰
Ø
�‰Ø
�ŠØ
�ŠØ
�ŠØ
�ŠØ
�ŠØ
�Šð	óñ
"óð
"ò	;ò,ð( ‡�×Ñ˜šnÓ-ñó .ðð  ‡�×ÑØPð ØØØØØÙÐIÓJð	
ð ØØ�LŠLØØØÙÐNÓOð	
ð ØØ×ÒØØØÙÐLÓMð	
ð ØØ�DˆMØØØÙÐQÓRð	
ð ØØØØØÙÐ6Ó7ð	
ð ØØØØØÙÐ6Ó7ð	
ð ØØØØØÙÐ6Ó7ð	
ð ØØØØØÙÐ6Ó7ð	
ð ØØØØØ!ÙðMóð	
ð ØØØØØÙð#óð	
ð ØØØØØÙð#óð	
ðCmópñb9ócpðb9ð& ˜˜Ÿ™ ! Q Ó(¨$°Ð3Ø!˜Ÿ™ 1 a &Ó)¨8¨2¯8©8°Q¸°FÓ+;¸TÀ2ÐFàØˆ�‰�!�Q�ÓØØVð	ð % h b§h¡h°°1¨vÓ&6Ð8OÐQSÐTàˆ�‰�!�U� 2§:¡:Ô.Øˆ�‰�!�Q�˜rŸz™zÔ*ØØKð	"ð 	ˆ�‰�!�V� B§J¡JÔ/Øˆ�‰�!�Q�˜rŸz™zÔ*ØØKð	"ð 	Øˆ�‰�!�Q�ÓØØHð	ñ-Ð ð> ‡�×ÑØ.ÙÐ	×	 Ò	 Ó	"Ó#ÙÐ×"Ò"Ó$Ó%ð ó ð
 ‡�×ÑÐ*¨T°5¨MÓ:ñ5ó ;óð5ð4 	ØØ9ðð 	ØØ7ðð 	ØØ4ðð 	ˆ�‰�$˜� b§j¡jÔ1ØØ4ð ð 	ˆ�‰�$˜� r§z¡zÔ2ØØ4ð ñ+Ð ð: ‡�×ÑØ ÙÐ	×	"Ò	"Ó	$Ó%ÙÐ×$Ò$Ó&Ó'ð ó ñ
(óð
(ò)IðX ‡�×Ñ˜ R§X¡X¨r¯}©}¸b¿mºmÐ$LÓMñ(ó Nð(ð ‡�×Ñ˜ R§X¡X¨r¯}©}¸b¿mºmÐ$LÓMñ,ó Nð,ð ‡�×Ñ˜ R§]¡]°B·M²MÐ$BÓCñ%ó Dð%òò6òð0 ‡�×Ñ˜ T¨A¨q¨6 NÓ3ñó 4ðð0 ‡�×Ñ˜Ò&HÓIñ1ó Jð1ð$ ‡�×ÑØò
óñ6óð6ð. ‡�×ÑØ&à	�< §¢Ð-Ø	�9˜bŸkškÐ*Ø	�9˜bŸkškÐ*Ø	�˜ŸšÐ$Ø	�'˜2Ÿ:š:Ð&Ø	�˜"Ÿ*š*Ð%Ø	�˜ŸšÐ$Ø	�˜Ÿ
š
Ð#Ø	�*˜bŸjšjÐ)Ø	�˜ŸšÐ$Ø	�'˜2×-Ò-Ð.Ø	�8˜R×/Ò/Ð0Ø	�(˜B×.Ò.Ð/Ø	�˜2×-Ò-Ð.Ø	�+˜r×1Ò1Ð2ðóñ(6ó)ð(6ð ‡�×ÑØÚGóñ!ó	ð!ð ‡�×ÑØâÚÚÚØ
ˆqˆ�C˜�8˜c 1˜XÐ&ðò 	0ð ó 
ð ‡�×ÑÐ+Ò-QÓRòó Só
ðð* ‡�×Ñ˜Ó2Ó8WÐÓXòó Yðð ‡�×ÑÙÙ	‰%�‹(ƒ^‘U˜1“X˜t s¨C j°3¹°*Ð%=Ð>Û6ð ó ò
óð
ó/ð ‡�×ÑÙ"ÛIóò	/ó	ð	/ð ‡�×ÑÐ+Ó-OÓPò!ó Qð!ó ó ð ‡�×ÑÙ"á	Ð&¡yÑ1°!Ñ4Ð5Ù	Ð(©Ñ2°1Ñ5Ð6Ù	Ð%¡hÑ/°Ñ2Ð3ðóò	!óð	!ó	.óð ‡�×ÑÙà
ˆqˆÑ#Ð$Ù
�C˜�:Ð	Ñ 1Ð2ðñ 
‘JÐð ó ò&óð&ö"	=˜]ô 	=ó$ó$6óJð ‡�×ÑÙÓHóòDóðDó/ó:&ð ‡�×Ñ™¨1¨a°°A°q¸"¿&¹&Ð*AÓCUÐ)VÓWò*ó Xð*ð$ )òó )ðð ‡�×ÑÙ$óóð ‡�×ÑÑ)¨D°%¨=Ó9ò?ó :óð?ó*!ð ‡�×ÑÙØ�^Ñ# nÑ4°~ÑEóð ‡�×Ñ™Ó*?Ó@ò2ó Aó	ð
2ð, ‡�×Ñ™ x r§x¡x°£{°H°B·H±H¸Q³KÐ&@ÀAÀqÀ6ÈAÈqÈ6ÐBRÐ%SÓTòó Uðó ó00óó&ó,ð. )òó )ðô1r~   