Ë
    ÷Q(h>u  ã            
       ó  — 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	m
Z
 d dlmZmZmZmZ d dlmZmZ d dlmZmZmZ d dlmZ d d	lmZ d d
lmZmZmZmZm Z m!Z!m"Z"m#Z# d dl$m%Z%m&Z& d dl'm(Z(m)Z) d dl*m+Z+ d dl,m-Z-m.Z.m/Z/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8 d dl9m:Z:m;Z;m<Z< d dl=m>Z>m?Z?m@Z@mAZAmBZBmCZC d„ ZDd„ ZEd„ ZFejŽ                  j‘                  deAe@z   e?z   eCz   eBz   e>z   «      d„ «       ZId„ ZJd„ ZKd„ ZL ejš                  «       ZNeNjž                  ZPeNj¢                  ZR e8eRd¬«      ZS e8eRd¬«      ZT ejª                  eReSeTf«      ZVePj®                  \  ZXZYeVj®                  d   ZZ e[ ej¸                  eR«      «      Z] e^ e_ej¸                  eReSeTf«      «      Z`d „ Zad!„ Zbd"„ Zcd#„ Zdd$„ Zed%„ Zfd&„ Zgd'„ Zhd(„ Zid)„ Zjd*„ ZkejŽ                  j‘                  d+d,d-g«      d.„ «       Zld/„ Zmd0„ ZnejŽ                  j‘                  d1d-d2g«      d3„ «       ZoejŽ                  j‘                  d4eA«      d5„ «       Zpd6„ ZqejŽ                  j‘                  d1g d7¢«      ejŽ                  j‘                  d+d,d8g«      d9„ «       «       Zrd:„ ZsejŽ                  j‘                  d4eA«      d;„ «       Ztd<„ ZuejŽ                  j‘                  d=g d>¢«      d?„ «       ZvejŽ                  j‘                  d@ ed¬A«       e. ed¬A«      «       e- ed¬A«      «      g«      dB„ «       Zw G dC„ dDe«      Zx G dE„ dFe«      ZyejŽ                  j‘                  dG e. eydH¬I«      «       ej                  «       f e/ ex«       «       ej                  dJd ¬K«      fg«      dL„ «       ZzdM„ Z{ejŽ                  j‘                  dNe.efe/e!fg«      dO„ «       Z|ejŽ                  j‘                  dPe^ejú                  e~g«      dQ„ «       ZdR„ Z€dS„ Z�dT„ Z‚dU„ ZƒejŽ                  j‘                  dVe-dWfe.dXfg«      dY„ «       Z„dZ„ Z…y)[é    N)Ú	cpu_count)Údatasets)ÚClassifierMixinÚclone)Úload_linnerudÚmake_classificationÚmake_multilabel_classificationÚmake_regression)ÚDummyClassifierÚDummyRegressor)ÚGradientBoostingRegressorÚRandomForestClassifierÚStackingRegressor)ÚNotFittedError)ÚSimpleImputer)ÚLassoÚLinearRegressionÚLogisticRegressionÚOrthogonalMatchingPursuitÚPassiveAggressiveClassifierÚRidgeÚSGDClassifierÚSGDRegressor)Újaccard_scoreÚmean_squared_error)ÚGridSearchCVÚtrain_test_split)ÚOneVsRestClassifier)ÚClassifierChainÚMultiOutputClassifierÚMultiOutputRegressorÚRegressorChain)Úmake_pipeline)Ú	LinearSVC)ÚDecisionTreeClassifier)Úshuffle)Úassert_almost_equalÚassert_array_almost_equalÚassert_array_equal)ÚBSR_CONTAINERSÚCOO_CONTAINERSÚCSC_CONTAINERSÚCSR_CONTAINERSÚDOK_CONTAINERSÚLIL_CONTAINERSc                  ó¬  — t        j                  dd¬«      \  } }| d d |d d }}| dd  |dd  }}t        j                  |«      }t	        d«      D ]?  }t        d¬«      }|j                  ||d d …|f   «       |j                  |«      |d d …|f<   ŒA t        t        d¬«      «      }|j                  ||«       |j                  |«      }	t        ||	«       y ©Né   r   ©Ú	n_targetsÚrandom_stateé2   ©r5   )
r   r
   ÚnpÚ
zeros_likeÚranger   ÚfitÚpredictr!   r'   )
ÚXÚyÚX_trainÚy_trainÚX_testÚy_testÚ
referencesÚnÚrgrÚy_preds
             ú\/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/sklearn/tests/test_multioutput.pyÚtest_multi_target_regressionrH   =   sÒ   € Ü×#Ñ#¨a¸aÔ@�D€A€qØ˜˜"�v˜q  "˜vˆW€GØ�r�s�V˜Q˜r˜s˜VˆF€Fä—‘˜vÓ&€JÜ�1‹Xò /ˆÜ'°QÔ7ˆØ�‰�˜¢ A ™Ô'ØŸ;™; vÓ.ˆ
’1�a�4Òð/ô
 Ô8ÀaÔHÓ
I€CØ‡G�GˆG�WÔØ�[‰[˜Ó €Fä˜
 FÕ+ó    c                  ód  — t        j                  dd¬«      \  } }| d d |d d }}| dd  |dd  }}t        j                  |«      }d}t	        d«      D ]_  }t        dd¬«      }	|	j                  |d | |d |…|f   «       |	j                  ||d  ||d …|f   «       |	j                  |«      |d d …|f<   Œa t        t        dd¬«      «      }	|	j                  |d | |d | «       |	j                  ||d  ||d  «       |	j                  |«      }
t        ||
«       t        t        t        «      d«      rJ ‚y )	Nr2   r   r3   r6   é   é   ©r5   Úmax_iterÚpartial_fit)r   r
   r8   r9   r:   r   rO   r<   r!   r'   Úhasattrr   )r=   r>   r?   r@   rA   rB   rC   Ú
half_indexrD   ÚsgrrF   s              rG   Ú(test_multi_target_regression_partial_fitrS   O   sI  € Ü×#Ñ#¨a¸aÔ@�D€A€qØ˜˜"�v˜q  "˜vˆW€GØ�r�s�V˜Q˜r˜s˜VˆF€Fä—‘˜vÓ&€JØ€JÜ�1‹Xò /ˆÜ¨°AÔ6ˆØ�‰˜  Ð,¨g°k°z°kÀ1°nÑ.EÔFØ�‰˜ 
 Ð,¨g°j±kÀ1°nÑ.EÔFØŸ;™; vÓ.ˆ
’1�a�4Òð	/ô œ|¸ÀQÔGÓ
H€Cà‡O�O�G˜K˜ZÐ(¨'°+°:Ð*>Ô?Ø‡O�O�G˜J˜KÐ(¨'°*°+Ð*>Ô?à�[‰[˜Ó €FÜ˜
 FÔ+ÜÔ+¬EÓ2°MÔBÐBÐBÐBrI   c                  óê   — t        j                  dd¬«      \  } }t        t        d¬«      «      }d}t	        j
                  t        |¬«      5  |j                  | |«       d d d «       y # 1 sw Y   y xY w)Né   r   r3   r7   zat least two dimensions©Úmatch)r   r
   r!   r   ÚpytestÚraisesÚ
ValueErrorr;   )r=   r>   rE   Úmsgs       rG   Ú'test_multi_target_regression_one_targetr\   f   s]   € ä×#Ñ#¨a¸aÔ@�D€A€qÜ
Ô8ÀaÔHÓ
I€CØ
#€CÜ	�‰”z¨Ô	-ñ Ø�‰��1Œ÷÷ ñ ús   ÁA)Á)A2Úsparse_containerc                 ó^  — t        j                  dd¬«      \  }}|d d |d d }}|dd  }t        t        d¬«      «      }t        t        d¬«      «      }|j	                  ||«       |j	                   | |«      |«       t        |j                  |«      |j                   | |«      «      «       y r1   )r   r
   r!   r   r;   r'   r<   )r]   r=   r>   r?   r@   rA   rE   Ú
rgr_sparses           rG   Ú#test_multi_target_sparse_regressionr`   o   s¡   € ô ×#Ñ#¨a¸aÔ@�D€A€qØ˜˜"�v˜q  "˜vˆW€GØˆrˆsˆV€Fä
œu°!Ô4Ó
5€CÜ%¤e¸Ô&;Ó<€Jà‡G�GˆG�WÔØ‡N�NÑ# GÓ,¨gÔ6äØ�‰�FÓ˜Z×/Ñ/Ñ0@ÀÓ0HÓIõrI   c                  ó,  — g d¢g d¢g} ddgddgg}ddg}t        t        «       «      }d}t        j                  t        |¬«      5  |j                  | ||«       d d d «       t        t        d	¬
«      «      }|j                  | ||«       y # 1 sw Y   Œ2xY w)N©rU   é   r2   ©é   rL   é   çTã¥›Ä 	@çX9´Èv¾@gš™™™™™é?g333333ã?zdoes not support sample weightsrV   r   r7   )r!   r   rX   rY   rZ   r;   r   )r=   r>   ÚwrE   r[   s        rG   Ú$test_multi_target_sample_weights_apirj   ˆ   s�   € Ú	’IÐ€AØ
�ˆ˜% ˜Ð(€AØ	ˆcˆ
€Aä
Ô8Ó:Ó
;€CØ
+€CÜ	�‰”z¨Ô	-ñ Ø�‰��1�aÔ÷ô Ô8ÀaÔHÓ
I€CØ‡G�GˆAˆq�!Õ÷ð ús   ÁB
Â
Bc                  ó:  — g d¢g d¢g} ddgddgg}ddg}t        t        dd¬	«      «      }|j                  | ||«       ddg}t        t        dd¬	«      «      }|j                  | ||«       |j                  | «      d   d   |j                  | «      d   d   k7  sJ ‚y )
Nrb   rd   rg   rh   ç       @ç      ð?r   rL   rM   )r!   r   rO   r<   )r=   r>   ri   Úrgr_wrE   s        rG   Ú+test_multi_target_sample_weight_partial_fitro   —   s©   € â	’IÐ€AØ
�ˆ˜% ˜Ð(€AØ	ˆcˆ
€AÜ ¤¸1ÀqÔ!IÓJ€EØ	×Ñ�a˜˜AÔð 
ˆcˆ
€AÜ
œ|¸ÀQÔGÓ
H€CØ‡O�O�A�q˜!Ôà�;‰;�q‹>˜!Ñ˜QÑ 5§=¡=°Ó#3°AÑ#6°qÑ#9Ò9Ð9Ñ9rI   c                  óZ  — g d¢g d¢g} ddgddgg}ddg}t        t        d¬«      «      }|j                  | ||«       g d¢g d¢g d¢g}ddgddgddgg}t        t        d¬«      «      }|j                  ||«       g d	¢g d
¢g}t        |j	                  |«      |j	                  |«      «       y )Nrb   rd   rg   rh   rl   rm   r   r7   ©g      ø?g      @ç      @©rr   g      @g      @)r!   r   r;   r'   r<   )ÚXwÚywri   rn   r=   r>   rE   rA   s           rG   Ú test_multi_target_sample_weightsrv   §   s°   € â
’YÐ	€BØ�%ˆ.˜5 %˜.Ð	)€BØ	ˆcˆ
€AÜ Ô!:ÈÔ!JÓK€EØ	‡I�Iˆb�"�aÔò 
’IšyÐ)€AØ
�ˆ˜% ˜¨%°¨Ð8€AÜ
Ô8ÀaÔHÓ
I€CØ‡G�GˆAˆq„MâšÐ/€FÜ˜Ÿ™ FÓ+¨U¯]©]¸6Ó-BÕCrI   rU   r7   rc   c                  ó  — t        ddd¬«      } t        | d¬«      }|j                  t        t        t
        «       |j                  d   }|j                  t        t        «       |j                  d   }t        «       dkD  r||usJ ‚y y )NÚlog_lossrU   rL   ©Úlossr5   rN   re   )Ún_jobsr   )r   r    rO   r=   r>   ÚclassesÚestimators_r   )Úsgd_linear_clfÚmorÚest1Úest2s       rG   Ú8test_multi_output_classification_partial_fit_parallelismr‚   Ç   sr   € Ü"¨
ÀÈQÔO€NÜ
 °qÔ
9€CØ‡O�O”A”qœ'Ô"Ø�?‰?˜1Ñ€DØ‡O�O”A”qÔØ�?‰?˜1Ñ€DÜƒ{�Q‚à˜4ÑÐÑð rI   c                  ó  — t        dd¬«      } t        | «      }|j                  t        t        «       t        |d«      rJ ‚t        ddd¬«      } t        | «      }|j                  t        t        «       t        |d«      sJ ‚y )NrU   rL   rM   Úpredict_probarx   ry   )r   r    r;   r=   r>   rP   )r~   Úmulti_target_linears     rG   Ú'test_hasattr_multi_output_predict_probar†   Ô   sx   € ô #°¸AÔ>€NÜ/°Ó?ÐØ×ÑœAœqÔ!ÜÐ*¨OÔ<Ð<Ð<ô #¨
ÀÈQÔO€NÜ/°Ó?ÐØ×ÑœAœqÔ!ÜÐ&¨Ô8Ð8Ñ8rI   c                  ó  — t        dd¬«      } ddi}d„ }t        | ||dd¬	«      }t        |«      }|j                  t        t
        «       |j                  t        «       t        dd¬«      } t        | «      }|j                  t        t
        «       d
}d}d}t        j                  t        |¬«      5 }|j                  t        «       d d d «       t        j                  j                  t        «      sJ ‚|t        |j                  j                  «      v sJ ‚t        |j                  j                  j                  t        «      sJ ‚|t        |j                  j                  j                  «      v sJ ‚y # 1 sw Y   Œ°xY w)NrU   rL   rM   rz   )Úhingerx   Úmodified_huberc                 ó   — t        | d«      ryy)Nr„   rm   g        )rP   )Ú	estimatorr=   r>   s      rG   Úcustom_scorerz6test_multi_output_predict_proba.<locals>.custom_scoreré   s   € Ü�9˜oÔ.ØàrI   r2   Úraise)Ú
param_gridÚscoringÚcvÚerror_scorez8probability estimates are not available for loss='hinge'z0'SGDClassifier' has no attribute 'predict_proba'ú8'MultiOutputClassifier' has no attribute 'predict_proba'rV   )r   r   r    r;   r=   r>   r„   rX   rY   ÚAttributeErrorÚ
isinstanceÚvalueÚ	__cause__Ústr)	r~   ÚparamrŒ   Úgrid_clfr…   Ú
inner2_msgÚ
inner1_msgÚ	outer_msgÚ	exec_infos	            rG   Útest_multi_output_predict_probarž   ä   sK  € Ü"°¸AÔ>€NØÐ<Ð=€Eòô ØØØØØô€Hô 0°Ó9ÐØ×ÑœAœqÔ!à×%Ñ%¤aÔ(ô #°¸AÔ>€NÜ/°Ó?ÐØ×ÑœAœqÔ!àK€JØC€JØJ€IÜ	�‰”~¨YÔ	7ð -¸9Ø×)Ñ)¬!Ô,÷-ô �i—o‘o×/Ñ/´Ô@Ð@Ð@Øœ˜YŸ_™_×6Ñ6Ó7Ñ7Ð7Ð7ä�i—o‘o×/Ñ/×9Ñ9¼>ÔJÐJÐJØœ˜YŸ_™_×6Ñ6×@Ñ@ÓAÑAÐAÑA÷-ð -ús   Â2E7Å7F c                  ó  — t        ddd¬«      } t        | «      }t        j                  d   dz  }|j	                  t        d | t
        d | t        ¬«       |j                  t        «      }t        t        f|j                  k(  sJ ‚|j	                  t        |d  t
        |d  «       |j                  t        «      }t        t        f|j                  k(  sJ ‚t        d«      D ]ª  }t        | «      } | j	                  t        d | t
        d |…|f   t        |   ¬«       t        | j                  t        «      |d d …|f   «       | j	                  t        |d  t
        |d …|f   «       t        | j                  t        «      |d d …|f   «       Œ¬ y )	Nrx   rU   rL   ry   r   rc   )r|   r2   )r   r    r=   ÚshaperO   r>   r|   r<   Ú	n_samplesÚ	n_outputsr:   r   r)   )r~   r…   rQ   Úfirst_predictionsÚsecond_predictionsÚis         rG   Ú,test_multi_output_classification_partial_fitr¦     sv  € ô #¨
ÀÈQÔO€NÜ/°Ó?Ðô —‘˜‘˜q‘€JØ×#Ñ#¤A k z N´A°k°z°NÌGÐ#ÔTà+×3Ñ3´AÓ6ÐÜ”yÐ!Ð%6×%<Ñ%<Ò<Ð<Ð<à×#Ñ#¤A j k N´A°j°k°NÔCØ,×4Ñ4´QÓ7ÐÜ”yÐ!Ð%7×%=Ñ%=Ò=Ð=Ð=ô �1‹Xò Pˆä˜~Ó.ˆØ×"Ñ"ÜˆkˆzˆNœA˜k˜z˜k¨1˜nÑ-´w¸q±zð 	#ô 	
ô 	˜>×1Ñ1´!Ó4Ð6GÊÈ1ÈÑ6MÔNØ×"Ñ"¤1 Z [ >´1°Z±[À!°^Ñ3DÔEÜ˜>×1Ñ1´!Ó4Ð6HÊÈAÈÑ6NÕOñPrI   c                  óÎ   — t        ddd¬«      } t        | «      }d}t        j                  t        |¬«      5  |j                  t        t        «       d d d «       y # 1 sw Y   y xY w)Nrx   rU   rL   ry   z8classes must be passed on the first call to partial_fit.rV   )r   r    rX   rY   rZ   rO   r=   r>   )r~   r…   r[   s      rG   ÚGtest_multi_output_classification_partial_fit_no_first_classes_exceptionr¨   -  sS   € Ü"¨
ÀÈQÔO€NÜ/°Ó?ÐØ
D€CÜ	�‰”z¨Ô	-ñ .Ø×'Ñ'¬¬1Ô-÷.÷ .ñ .ús   ·AÁA$c                  ó  — t        dd¬«      } t        | «      }|j                  t        t        «       |j                  t        «      }t        t        f|j                  k(  sJ ‚|j                  t        «      }t        |«      t        k(  sJ ‚|D ]  }t        t        f|j                  k(  rŒJ ‚ t        t        j                  t        j                  |«      d¬«      |«       t!        d«      D ]•  }t#        | «      }|j                  t        t        d d …|f   «       t%        |j                  t        «      «      t%        |d d …|f   «      k(  sJ ‚t        t%        |j                  t        «      «      t%        ||   «      «       Œ— y )Né
   rU   ©Ún_estimatorsr5   ©Úaxisr2   )r   r    r;   r=   r>   r<   r¡   r¢   r    r„   ÚlenÚ	n_classesr)   r8   ÚargmaxÚdstackr:   r   Úlist)ÚforestÚmulti_target_forestÚpredictionsr„   Úclass_probabilitiesr¥   Úforest_s          rG   Ú test_multi_output_classificationr¹   5  sI  € ô $°À!ÔD€FÜ/°Ó7Ðð ×ÑœAœqÔ!à%×-Ñ-¬aÓ0€KÜ”yÐ! [×%6Ñ%6Ò6Ð6Ð6à'×5Ñ5´aÓ8€Mäˆ}Ó¤Ò*Ð*Ð*Ø,ò CÐÜœ9Ð%Ð)<×)BÑ)BÓBÐBÐBðCô ”r—y‘y¤§¡¨=Ó!9ÀÔBÀKÔPô �1‹Xò SˆÜ˜“-ˆØ�‰”A”qš˜A˜‘wÔÜ�G—O‘O¤AÓ&Ó'¬4°ºA¸q¸DÑ0AÓ+BÒBÐBÐBÜœ4 × 5Ñ 5´aÓ 8Ó9¼4ÀÈaÑ@PÓ;QÕRñ	SrI   c                  óº  — t        d¬«      } t        | «      }t        |«      }|j                  t        t
        «       |j                  t        «      }t        t        f|j                  k(  sJ ‚t        d«      D ]a  }t        |«      }|j                  t        t
        d d …|f   «       t        |j                  t        «      «      t        |d d …|f   «      k(  rŒaJ ‚ y )Nr   r7   r2   )r$   r   r    r;   r=   r>   r<   r¡   r¢   r    r:   r   r³   )ÚsvcÚmulti_class_svcÚmulti_target_svcr¶   r¥   Úmulti_class_svc_s         rG   Ú%test_multiclass_multioutput_estimatorr¿   R  sÁ   € ä
 Ô
#€CÜ)¨#Ó.€OÜ,¨_Ó=Ðà×ÑœœAÔà"×*Ñ*¬1Ó-€KÜ”yÐ! [×%6Ñ%6Ò6Ð6Ð6ô �1‹Xò LˆÜ  Ó1ÐØ×ÑœQ¤¢! Q $¡Ô(ÜÐ$×,Ñ,¬QÓ/Ó0´D¸ÂQÈÀTÑ9JÓ4KÓKÐKÐKñLrI   c            	      ó�  — d} t         j                  j                  | «      }|j                  d¬«      }t        j                  g d¢«      j                  dd«      }t        j                  g d¢«      j                  dd«      }t        j                  ||gd¬«      }t        t        d	| ¬
«      «      }|j                  ||«       |j                  |«      }t        j                  ddgddgddgddgddgg«      t        j                  g d¢g d¢g d¢g d¢g d¢g«      g}t        t        |«      «      D ]  }	t        ||	   ||	   «       Œ y )Ni  )rL   rL   )Úsize)ÚbÚarÃ   rÂ   rÃ   rL   rU   )ÚdÚeÚfrÅ   rÄ   r­   Ú	liblinear)Úsolverr5   gšu)"�Î?g™¢u·_|è?gt“Ä³€å?gÑÙv˜þÔ?g/‰’�á?g¢íÚÖý Ý?gK[ÇaSÖ?g[ÒrOÖä?gaÊ]×q”ç?g?kDQ×Ð?)g 8öì¹Œà?g°ªŒ�Î?gèo|Ì‹<Ï?)g¨©§‡OWÌ?g˜Ú”#Kƒä?gÚz~ÿƒ›Á?)gP1s&qÅ?g„çþf^Ç?g„]=¼!Ìä?)gâ{Y;‚Ñ?gë®hJªá?g�L$$SÆ?)g»XA¡Ø	å?gó 7%®Ð?g™˜‘î¥ø´?)r8   ÚrandomÚRandomStateÚnormalÚarrayÚreshapeÚconcatenater    r   r;   r„   r:   r¯   r'   )
ÚseedÚrngr=   Úy1Úy2ÚYÚclfÚy_resultÚy_actualr¥   s
             rG   Ú3test_multiclass_multioutput_estimator_predict_probar×   d  s>  € Ø€Dô �)‰)×
Ñ
 Ó
%€Cð 	�
‰
˜ˆ
Ó€Aô 
�‰Ò+Ó	,×	4Ñ	4°Q¸Ó	:€BÜ	�‰Ò+Ó	,×	4Ñ	4°Q¸Ó	:€Bä
�‰˜˜B�x aÔ(€Aä
Ü +¸DÔAó€Cð ‡G�GˆAˆq„Mà× Ñ  Ó#€Hä
�‰à˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(Ø˜ZÐ(ðó	
ô 	�‰â3Ú4Ú4Ú4Ú4ðó	
ð€Hô* ”3�x“=Ó!ò 6ˆÜ˜H Q™K¨°!©Õ5ñ6rI   c                  óŒ  — g d¢g d¢g} ddgddgg}t        j                  ddg«      }t        dd¬	«      }t        |«      }|j	                  | ||«       g d¢g d¢g d¢g}ddgddgddgg}t        dd¬	«      }t        |«      }|j	                  ||«       g d
¢g d¢g}t        |j                  |«      |j                  |«      «       y )Nrb   rd   r2   rc   rl   rm   rª   rU   r«   rq   rs   )r8   Úasarrayr   r    r;   r'   r<   )	rt   ru   ri   r´   Úclf_wr=   r>   rÔ   rA   s	            rG   Ú/test_multi_output_classification_sample_weightsrÛ   “  sÅ   € â
’YÐ	€BØˆaˆ&�1�a�&Ð	€BÜ
�
‰
�C˜�:Ó€AÜ#°À!ÔD€FÜ! &Ó)€EØ	‡I�Iˆb�"�aÔò 
’IšyÐ)€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AÜ#°À!ÔD€FÜ
 Ó
'€CØ‡G�GˆAˆq„MâšÐ/€FÜ˜Ÿ™ FÓ+¨U¯]©]¸6Ó-BÕCrI   c                  óž  — g d¢g d¢g d¢g} ddgddgddgg}t        j                  g d¢«      }t        dd¬	«      }t        |«      }|j	                  | ||«       g d¢g d¢g d¢g d¢g}ddgddgddgddgg}t        dd¬	«      }t        |«      }|j	                  ||«       g d¢g}t        |j                  |«      |j                  |«      «       y )
Nrb   rd   rq   r2   rc   )rl   rm   rm   rU   é   rM   )r8   rÙ   r   r    r;   r(   r<   )	rt   ru   ri   r~   rÚ   r=   r>   rÔ   rA   s	            rG   Ú;test_multi_output_classification_partial_fit_sample_weightsrÞ   §  sÏ   € â
’Y¢Ð	0€BØˆaˆ&�1�a�&˜1˜a˜&Ð	!€BÜ
�
‰
’?Ó#€AÜ"°¸BÔ?€NÜ! .Ó1€EØ	‡I�Iˆb�"�aÔò 
’Išyª/Ð:€AØ
ˆQˆ�!�Q�˜!˜Q˜ ! Q Ð(€AÜ"°¸BÔ?€NÜ
 Ó
/€CØ‡G�GˆAˆq„MÚÐ€FÜ˜cŸk™k¨&Ó1°5·=±=ÀÓ3HÕIrI   c                  ó^  — t        t        d¬«      «      } t        j                  t        «      5  | j                  t        t        «       d d d «       t        j                  t        t        f«      }| j                  t        t        «       t        j                  t        «      5  | j                  t        |«       d d d «       d}t        j                  t        |¬«      5  | j                  t        t        d d …df   «       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)Nr   r7   zUnknown label typerV   rU   )r    r$   rX   rY   r   Úscorer=   r>   r8   Úcolumn_stackrÑ   rÒ   r;   rZ   )ÚmocÚy_newr[   s      rG   Útest_multi_output_exceptionsrä   º  sÖ   € ô  ¤	°qÔ 9Ó
:€CÜ	�‰”~Ó	&ñ Ø�	‰	”!”QŒ÷ô
 �O‰OœR¤˜HÓ%€EØ‡G�GŒAŒq„MÜ	�‰”zÓ	"ñ Ø�	‰	”!�UÔ÷ð €CÜ	�‰”z¨Ô	-ñ Ø�‰””1’Q˜�T‘7Ô÷ð ÷ð ú÷ð ú÷
ð ús#   ¯DÂ$DÃ "D#ÄDÄD Ä#D,Úresponse_methodr„   r<   c                 ó²   — t        t        «       «      }t        j                  t        «      5   t        || «      t        «       ddd«       y# 1 sw Y   yxY w)zECheck that we raise the proper error when the estimator is not fittedN)r    r   rX   rY   r   Úgetattrr=   )rå   râ   s     rG   Ú"test_multi_output_not_fitted_errorrè   Î  sD   € ô  Ô 2Ó 4Ó
5€CÜ	�‰”~Ó	&ñ )Ø%Œ��_Ó%¤aÔ(÷)÷ )ñ )ús   ­AÁAc                  ól  — t        t        «       «      } t        | d«      sJ ‚| j                  t        t
        «       t        | d«      sJ ‚t        t        «       «      } t        | d«      rJ ‚d}d}t        j                  t        |¬«      5 }| j                  t        «       ddd«       t        j                  j                  t        «      sJ ‚|t        |j                  j                  «      k(  sJ ‚| j                  t        t
        «       t        | d«      rJ ‚t        j                  t        |¬«      5 }| j                  t        «       ddd«       t        |j                  j                  t        «      sJ ‚|t        |j                  j                  «      k(  sJ ‚y# 1 sw Y   ŒÿxY w# 1 sw Y   Œ`xY w)zVCheck the behavior for the delegation of predict_proba to the underlying
    estimatorr„   r’   z3'LinearSVC' object has no attribute 'predict_proba'rV   N)r    r   rP   r;   r=   r>   r$   rX   rY   r“   r„   r”   r•   r–   r—   )râ   rœ   Ú	inner_msgr�   s       rG   Ú(test_multi_output_delegate_predict_probarë   Ö  sX  € ô
  Ô 2Ó 4Ó
5€CÜ�3˜Ô(Ð(Ð(Ø‡G�GŒAŒq„MÜ�3˜Ô(Ð(Ð(ô  ¤	£Ó
,€CÜ�s˜OÔ,Ð,Ð,àJ€IØE€IÜ	�‰”~¨YÔ	7ð ¸9Ø×Ñœ!Ô÷ä�i—o‘o×/Ñ/´Ô@Ð@Ð@Øœ˜IŸO™O×5Ñ5Ó6Ò6Ð6Ð6à‡G�GŒAŒq„MÜ�s˜OÔ,Ð,Ð,Ü	�‰”~¨YÔ	7ð ¸9Ø×Ñœ!Ô÷ä�i—o‘o×/Ñ/´Ô@Ð@Ð@Øœ˜IŸO™O×5Ñ5Ó6Ò6Ð6Ñ6÷ð ú÷ð ús   Â
FÄ5F*ÆF'Æ*F3c                  óØ   — t        ddddd¬«      \  } }t        j                  |D ��cg c](  }t        |d«      dd  D �cg c]  }t	        |«      ‘Œ c}‘Œ* c}}«      }| |fS c c}w c c}}w )	Niè  éd   é   rª   r   )r¡   Ú
n_featuresr°   Ún_informativer5   z#06brc   )r   r8   rÌ   ÚformatÚint)r=   r>   ÚyyÚyyyÚY_multis        rG   Ú-generate_multilabel_dataset_with_correlationsrö   ó  si   € ô Ø 3°"ÀBÐUVô�D€A€qô �h‰hÈq×QÈ¬V°B¸Ó-?ÀÀÐ-CÖD cœ˜S�ÔDÓQÓR€GØˆgˆ:Ðùò EùÓQs   ¨A&
¾A!ÁA&
Á!A&
Úchain_methodÚdecision_functionc                 ó   — t        «       \  }}t        t        «       | ¬«      j                  ||«      }|j	                  |«      }|j
                  |j
                  k(  sJ ‚|j                  |«      }|dk\  }t        ||«       t        |d«      rJ ‚y )N©r÷   r   r„   )	rö   r   r$   r;   r<   r    rø   r)   rP   )r÷   r=   rÓ   Úclassifier_chainÚY_predÚ
Y_decisionÚY_binarys          rG   Ú5test_classifier_chain_fit_and_predict_with_linear_svcrÿ   ÿ  s‘   € ô 9Ó:�D€A€qÜ&Ü‹Ø!ô÷ 
�cˆ!ˆQƒið ð
 ×%Ñ% aÓ(€FØ�<‰<˜1Ÿ7™7Ò"Ð"Ð"à!×3Ñ3°AÓ6€Jà˜Q‰€HÜ�x Ô(ÜÐ'¨Ô9Ð9Ð9Ð9rI   Úcsr_containerc                 ó  — t        «       \  }} | |«      }t        t        «       «      j                  ||«      }|j	                  |«      }t        t        «       «      j                  ||«      }|j	                  |«      }t        ||«       y ©N)rö   r   r   r;   r<   r)   )r   r=   rÓ   ÚX_sparserû   ÚY_pred_sparseÚY_pred_denses          rG   Ú6test_classifier_chain_fit_and_predict_with_sparse_datar    s|   € ô 9Ó:�D€A€qÙ˜QÓ€Hä&Ô'9Ó';Ó<×@Ñ@ÀÈ1ÓMÐØ$×,Ñ,¨XÓ6€Mä&Ô'9Ó';Ó<×@Ñ@ÀÀAÓFÐØ#×+Ñ+¨AÓ.€Lä�} lÕ3rI   c                  óŒ  — t        «       \  } }| d d…d d …f   }| dd …d d …f   }|d d…d d …f   }|dd …d d …f   }t        t        «       «      }|j                  ||«       |j	                  |«      }t        t        «       «      }|j                  ||«       |j	                  |«      }	t        ||	d¬«      t        ||d¬«      kD  sJ ‚y )NiX  Úsamples©Úaverage)rö   r   r   r;   r<   r   r   )
r=   rÓ   r?   rA   ÚY_trainÚY_testÚovrÚ
Y_pred_ovrÚchainÚY_pred_chains
             rG   Ú+test_classifier_chain_vs_independent_modelsr  !  sÎ   € ô 9Ó:�D€A€qØ���’a�‰j€GØˆs‰t’Qˆw‰Z€FØ���’a�‰j€GØˆs‰t’Qˆw‰Z€Fä
Ô0Ó2Ó
3€CØ‡G�GˆG�WÔØ—‘˜VÓ$€JäÔ.Ó0Ó1€EØ	‡I�Iˆg�wÔØ—=‘= Ó(€Lä˜ °yÔAÄMØ�
 IôEò ð ñ rI   )r<   r„   Úpredict_log_probarø   r  c           	      óL  — t        «       \  }}t        t        «       | ¬«      }|j                  ||«       |j	                  |«      }|j
                  |j
                  k(  sJ ‚|j                  D �cg c]  }|j                  j                  ‘Œ c}t        t        |j
                  d   |j
                  d   |j
                  d   z   «      «      k(  sJ ‚ t        ||«      |«      }|dk(  rt        j                  |«      }|dk\  }t        ||«       t        |t         «      sJ ‚y c c}w )Nrú   rU   r  ç      à?)rö   r   r   r;   r<   r    r}   Úcoef_rÁ   r³   r:   rç   r8   Úexpr)   r”   r   )	r÷   rå   r=   rÓ   r  rü   ÚcÚY_probrþ   s	            rG   Ú%test_classifier_chain_fit_and_predictr  8  sý   € ô 9Ó:�D€A€qÜÔ.Ó0¸|ÔL€EØ	‡I�Iˆa�„OØ�]‰]˜1Ó€FØ�<‰<˜1Ÿ7™7Ò"Ð"Ð"Ø"'×"3Ñ"3Ö4˜QˆA�G‰G�L‹LÒ4¼Üˆa�g‰g�a‰j˜!Ÿ'™' !™* q§w¡w¨q¡zÑ1Ó2ó9ò ð ð ð -ŒW�U˜OÓ,¨QÓ/€FØÐ-Ò-Ü—‘˜“ˆØ˜‰}€HÜ�x Ô(ä�eœ_Ô-Ð-Ñ-ùò 5s   Á/D!c            	      óª  — t        «       \  } }t        t        «       «      }|j                  | |«       |j	                  | «      }|j
                  |j
                  k(  sJ ‚|j                  D �cg c]  }|j                  j                  ‘Œ c}t        t        | j
                  d   | j
                  d   |j
                  d   z   «      «      k(  sJ ‚y c c}w )NrU   )rö   r"   r   r;   r<   r    r}   r  rÁ   r³   r:   )r=   rÓ   r  rü   r  s        rG   Ú$test_regressor_chain_fit_and_predictr  Q  s§   € ä8Ó:�D€A€qÜœ5›7Ó#€EØ	‡I�Iˆa�„OØ�]‰]˜1Ó€FØ�<‰<˜1Ÿ7™7Ò"Ð"Ð"Ø"'×"3Ñ"3Ö4˜QˆA�G‰G�L‹LÒ4¼Üˆa�g‰g�a‰j˜!Ÿ'™' !™* q§w¡w¨q¡zÑ1Ó2ó9ò ð ñ ùÒ4s   Á-Cc                 ó  — t        «       \  }} | |«      }t        t        «       d¬«      t        t	        «       d¬«      g}|D ]@  }|j                  ||«       |j                  |«      }|j                  |j                  k(  rŒ@J ‚ y )Nr2   ©r�   )rö   r   r   r"   r   r;   r<   r    )r   r=   rÓ   r  Úbase_chainsr  rü   s          rG   Ú7test_base_chain_fit_and_predict_with_sparse_data_and_cvr  ]  s~   € ô 9Ó:�D€A€qÙ˜QÓ€HäÔ*Ó,°Ô3Ü”u“w 1Ô%ð€Kð ò 'ˆØ�	‰	�(˜AÔØ—‘˜xÓ(ˆØ�|‰|˜qŸw™wÓ&Ð&Ð&ñ'rI   c                  óä  — t        «       \  } }t        t        «       «      t        t	        «       «      fD �]9  }t        |«      j                  dd¬«      }|j                  | |«       t        |«      j                  |j                  ¬«      }|j                  | |«       t        |j                  |j                  «       t        |j                  «      t        t        d«      «      k7  sJ ‚t        |j                  «      dk(  sJ ‚t        t        |j                  «      «      dk(  sJ ‚t        |j                   |j                   «      D ]%  \  }}t#        |j$                  |j$                  «       Œ' �Œ< y )NrÉ   é*   )Úorderr5   ©r"  re   )rö   r   r   r"   r   r   Ú
set_paramsr;   Úorder_r)   r³   r"  r:   r¯   ÚsetÚzipr}   r(   r  )r=   rÓ   r  Úchain_randomÚchain_fixedr€   r�   s          rG   Útest_base_chain_random_orderr*  l  s.  € ä8Ó:�D€A€qÜ!Ô"4Ó"6Ó7¼ÌËÓ9PÐQó >ˆÜ˜U“|×.Ñ.°XÈBÐ.ÓOˆØ×Ñ˜˜AÔÜ˜E“l×-Ñ-°L×4GÑ4GÐ-ÓHˆØ�‰˜˜1ÔÜ˜;×-Ñ-¨|×/BÑ/BÔCÜ�L×&Ñ&Ó'¬4´°a³«>Ò9Ð9Ð9Ü�<×&Ñ&Ó'¨1Ò,Ð,Ð,Ü”3�|×*Ñ*Ó+Ó,°Ò1Ð1Ð1ô ˜l×6Ñ6¸×8OÑ8OÓPò 	>‰JˆD�$Ü% d§j¡j°$·*±*Õ=ò	>ñ>rI   zchain_type, chain_method))Ú
classifierr<   )r+  r„   )r+  r  )r+  rø   )Ú	regressorÚ c                 ó  — t        «       \  }}| dk(  rt        t        «       |¬«      }nt        t	        «       «      }|j                  ||«       t        |«      j                  d¬«      }|j                  ||«       |j                  |«      }|j                  |«      }|j                  |j                  k(  sJ ‚t        j                  ||k(  «      rJ ‚t        |t        «      rt        ||d¬«      dkD  sJ ‚y t        ||«      dk  sJ ‚y )	Nr+  rú   r2   r  r  r	  gš™™™™™Ù?g      Ð?)rö   r   r   r"   r   r;   r   r$  r<   r    r8   Úallr”   r   r   )Ú
chain_typer÷   r=   rÓ   r  Úchain_cvÚ	Y_pred_cvrü   s           rG   Ú(test_base_chain_crossval_fit_and_predictr3  ~  sç   € ô 9Ó:�D€A€qà�\Ò!ÜÔ 2Ó 4À<ÔP‰äœu›wÓ'ˆØ	‡I�Iˆa�„OÜ�U‹|×&Ñ&¨!Ð&Ó,€HØ‡L�L��AÔØ× Ñ  Ó#€IØ�]‰]˜1Ó€Fà�?‰?˜fŸl™lÒ*Ð*Ð*Ü�v‰v�f 	Ñ)Ô*Ð*Ð*Ü�%œÔ)Ü˜Q 	°9Ô=ÀÒCÐCÑCä! ! YÓ/°$Ò6Ð6Ñ6rI   r‹   )r¬   c                 ó  — | j                  t        t        «       t        | j                  t
        «      sJ ‚t        | j                  «      t        k(  sJ ‚t        t        | j                  «      D ]  \  }}t        ||«       Œ y r  )r;   r=   r>   r”   Úclasses_r³   r¯   r¢   r'  r|   r)   )r‹   Úestimator_classesÚexpected_classess      rG   Útest_multi_output_classes_r8  Ÿ  sr   € ð ‡M�M”!”QÔÜ�i×(Ñ(¬$Ô/Ð/Ð/Üˆy×!Ñ!Ó"¤iÒ/Ð/Ð/Ü/2´7¸I×<NÑ<NÓ/Oò @Ñ+ÐÐ+ÜÐ,Ð.>Õ?ñ@rI   c                   ó    ‡ — e Zd Zdˆ fd„	Zˆ xZS )ÚDummyRegressorWithFitParamsc                 ó4   •— || _         t        ‰| �	  |||«      S r  ©Ú_fit_paramsÚsuperr;   ©Úselfr=   r>   Úsample_weightÚ
fit_paramsÚ	__class__s        €rG   r;   zDummyRegressorWithFitParams.fit²  ó   ø€ Ø%ˆÔÜ‰w‰{˜1˜a Ó/Ð/rI   r  ©Ú__name__Ú
__module__Ú__qualname__r;   Ú__classcell__©rC  s   @rG   r:  r:  ±  ó   ø„ ÷0ñ 0rI   r:  c                   ó    ‡ — e Zd Zdˆ fd„	Zˆ xZS )ÚDummyClassifierWithFitParamsc                 ó4   •— || _         t        ‰| �	  |||«      S r  r<  r?  s        €rG   r;   z DummyClassifierWithFitParams.fit¸  rD  rI   r  rE  rJ  s   @rG   rM  rM  ·  rK  rI   rM  zestimator, datasetÚprior)Ústrategyr2   r3   c                 ó¢   — |\  }}t        j                  |«      }| j                  |||¬«       | j                  D ]  }d|j                  v rŒJ ‚ y )N)Ú
some_paramrR  )r8   r9   r;   r}   r=  )r‹   Údatasetr=   r>   rR  Údummy_estimators         rG   Ú*test_multioutput_estimator_with_fit_paramsrU  ½  sV   € ð �D€A€qÜ—‘˜qÓ!€JØ‡M�M�!�Q :€MÔ.Ø$×0Ñ0ò ;ˆØ˜×:Ñ:Ò:Ð:Ð:ñ;rI   c                  ób  — t         j                  j                  d«      } t        j                  dd¬«      \  }}| j                  |j                  d   «      } G d„ dt        «      }t         |«       «      }d|i} |j                  ||fi |¤Ž |j                  D ]  }|j                  |u rŒJ ‚ y )Nr   r2   r3   c                   ó   ‡ — e Zd Zˆ fd„Zˆ xZS )ú0test_regressor_chain_w_fit_params.<locals>.MySGDc                 ó<   •— |d   | _         t        ‰| �  ||fi |¤Ž y )NrA  )Úsample_weight_r>  r;   )r@  r=   r>   rB  rC  s       €rG   r;   z4test_regressor_chain_w_fit_params.<locals>.MySGD.fitÙ  s#   ø€ Ø",¨_Ñ"=ˆDÔÜ‰G‰K˜˜1Ñ+ 
Ó+rI   rE  rJ  s   @rG   ÚMySGDrX  Ø  s   ø„ ÷	,ð 	,rI   r[  rA  )r8   rÉ   rÊ   r   r
   Úrandr    r   r"   r;   r}   rZ  )rÐ   r=   r>   Úweightr[  ÚmodelÚ	fit_paramÚests           rG   Ú!test_regressor_chain_w_fit_paramsra  Ò  s¦   € ä
�)‰)×
Ñ
 Ó
"€CÜ×#Ñ#¨a¸aÔ@�D€A€qØ�X‰X�a—g‘g˜a‘jÓ!€Fô,”ô ,ô
 ™5›7Ó#€Eð ! &Ð)€IØ€E‡I�Iˆa�Ñ �iÒ à× Ñ ò ,ˆØ×!Ñ! VÒ+Ð+Ð+ñ,rI   zMultiOutputEstimator, Estimatorc                 óž  — t         j                  j                  d«      }|j                  dd«      |j	                  ddd«      }}|j                  ddg|j                  dd	g¬
«      j                  t        «      }t         j                  ||<   t        t        «        |«       «      } | |«      j                  ||«      j                  ||«       y )Nr!  r6   rc   rU   r  )r6   r2   r   g{®Gáz„?g®Gáz®ï?)Úp)r8   rÉ   rÊ   ÚrandnÚbinomialÚchoicer    ÚastypeÚboolÚnanr#   r   r;   rà   )ÚMultiOutputEstimatorÚ	EstimatorrÐ   r=   r>   ÚmaskÚpipes          rG   Útest_support_missing_valuesrn  ç  s£   € ô �)‰)×
Ñ
 Ó
#€CØ�9‰9�R˜Ó˜SŸ\™\¨!¨S°'Ó:€q€AØ�:‰:�q˜!�f˜aŸg™g¨$°¨ˆ:Ó6×=Ñ=¼dÓC€DÜ�f‰f€A€d�Gäœ›©)«+Ó6€DÙ˜Ó×"Ñ" 1 aÓ(×.Ñ.¨q°!Õ4rI   Ú
order_typec                 óâ   — g d¢g d¢g d¢g}ddgddgddgg} | ddg«      }t        t        dd¬«      |¬	«      }|j                  ||«       g d¢g}ddgg}t        |j	                  |«      |«       y )
Nrb   rd   rq   r2   rc   rU   r   r«   r#  )r   r   r;   r(   r<   )ro  r=   r>   r"  r  rA   rB   s          rG   Ú!test_classifier_chain_tuple_orderrq  ú  s   € â	’IšÐ/€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AÙ˜˜1�vÓ€EäÜ¨A¸AÔ>Àeô€Eð 
‡I�Iˆa�„OÚÐ€FØ�!ˆfˆX€FÜ˜eŸm™m¨FÓ3°VÕ<rI   c                  óø   — g d¢g d¢g d¢g} ddgddgddgg}t        ddg«      }t        t        «       |¬«      }t        j                  t
        d¬	«      5  |j                  | |«       d d d «       y # 1 sw Y   y xY w)
Nrb   rd   rq   r2   rc   rU   r#  zinvalid orderrV   )Útupler   r   rX   rY   rZ   r;   )r=   r>   r"  r  s       rG   Ú)test_classifier_chain_tuple_invalid_orderrt  
  ss   € Ú	’IšÐ/€AØ
ˆQˆ�!�Q�˜!˜Q˜Ð €AÜ�1�a�&‹M€EäÔ2Ó4¸EÔB€Eä	�‰”z¨Ô	9ñ Ø�	‰	�!�QŒ÷÷ ñ ús   ÁA0Á0A9c                 óü   — t        ddddd¬«      \  }}t        ||d¬«      \  }}}}d}t        t        «       g d¢dd	¬
«      }|j	                  ||«       t        j                  || j                  «       d   «      sJ ‚y )Nrí   rL   r2   r   )r¡   rï   r°   Ún_labelsr5   r7   z�\[Chain\].*\(1 of 3\) Processing order 0, total=.*\n\[Chain\].*\(2 of 3\) Processing order 1, total=.*\n\[Chain\].*\(3 of 3\) Processing order 2, total=.*\n$)r   rU   rc   T©r"  r5   Úverbose)r	   r   r   r%   r;   ÚrerW   Ú
readouterr)	Úcapsysr=   r>   r?   rA   r@   rB   Úpatternr+  s	            rG   Útest_classifier_chain_verboser}    sŒ   € Ü)Ø !¨q¸1È1ô�D€A€qô (8¸¸1È1Ô'MÑ$€GˆV�W˜fð	Að ô !ÜÓ ÚØØô	€Jð ‡N�N�7˜GÔ$Ü�8‰8�G˜V×.Ñ.Ó0°Ñ3Ô4Ð4Ñ4rI   c                 óø   — t        ddd¬«      \  }}t        ||d¬«      \  }}}}d}t        t        «       g d¢dd¬	«      }|j	                  ||«       t        j                  || j                  «       d   «      sJ ‚y )
Né}   r2   r   )r¡   r4   r5   r7   z�\[Chain\].*\(1 of 3\) Processing order 1, total=.*\n\[Chain\].*\(2 of 3\) Processing order 0, total=.*\n\[Chain\].*\(3 of 3\) Processing order 2, total=.*\n$)rU   r   rc   Trw  )r
   r   r"   r   r;   ry  rW   rz  )	r{  r=   r>   r?   rA   r@   rB   r|  r,  s	            rG   Útest_regressor_chain_verboser€  +  sƒ   € Ü S°AÀAÔF�D€A€qÜ'7¸¸1È1Ô'MÑ$€GˆV�W˜fð	Að ô
 ÜÓÚØØô	€Ið ‡M�M�'˜7Ô#Ü�8‰8�G˜V×.Ñ.Ó0°Ñ3Ô4Ð4Ñ4rI   c                  óÂ   — t        d¬«      \  } }t        dt        d¬«      fgt        «       d¬«      }t	        |¬«      j                  | |«      }|j                  | «       y	)
zkTest that MultiOutputRegressor checks the fitted estimator for
    predict. Non-regression test for #16549.T)Ú
return_X_yÚsgdrU   r7   rc   )Ú
estimatorsÚfinal_estimatorr�   )r‹   N)r   r   r   r   r!   r;   r<   )r=   r>   ÚstackerÚregs       rG   Ú4test_multioutputregressor_ducktypes_fitted_estimatorrˆ  >  sZ   € ô  DÔ)�D€A€qÜØœL°aÔ8Ð9Ð:Ü›Øô€Gô ¨Ô
1×
5Ñ
5°a¸Ó
;€Cð ‡K�K�…NrI   zCls, methodr;   rO   c                 óÌ   — t        d¬«      \  }} | t        «       «      }t        j                  t        d¬«      5   t        ||«      ||d¬«       ddd«       y# 1 sw Y   yxY w)zgCheck that we raise an error when passing metadata not requested by the
    underlying classifier.
    r6   )r¡   zis only supported ifrV   rU   )ÚtestN)r   r   rX   rY   rZ   rç   )ÚClsÚmethodr=   r>   rÔ   s        rG   Útest_fit_params_no_routingr�  N  sY   € ô ¨Ô,�D€A€qÙ
Ô)Ó+Ó
,€Cä	�‰”zÐ)?Ô	@ñ +ØŒ��VÓ˜Q ¨Õ*÷+÷ +ñ +ús   »AÁA#c                  ó¦   — t        t        «       «      } d}t        j                  t        |¬«      5  t        | d«       d d d «       y # 1 sw Y   y xY w)Nz:This 'MultiOutputRegressor' has no attribute 'partial_fit'rV   rO   )r!   r   rX   rY   r“   rç   )r`  r[   s     rG   Ú*test_multioutput_regressor_has_partial_fitr�  \  sD   € ô Ô/Ó1Ó
2€CØ
F€CÜ	�‰”~¨SÔ	1ñ $Ü��]Ô#÷$÷ $ñ $ús   ±AÁA)†ry  Únumpyr8   rX   Újoblibr   Úsklearnr   Úsklearn.baser   r   Úsklearn.datasetsr   r   r	   r
   Úsklearn.dummyr   r   Úsklearn.ensembler   r   r   Úsklearn.exceptionsr   Úsklearn.imputer   Úsklearn.linear_modelr   r   r   r   r   r   r   r   Úsklearn.metricsr   r   Úsklearn.model_selectionr   r   Úsklearn.multiclassr   Úsklearn.multioutputr   r    r!   r"   Úsklearn.pipeliner#   Úsklearn.svmr$   Úsklearn.treer%   Úsklearn.utilsr&   Úsklearn.utils._testingr'   r(   r)   Úsklearn.utils.fixesr*   r+   r,   r-   r.   r/   rH   rS   r\   ÚmarkÚparametrizer`   rj   ro   rv   Ú	load_irisÚirisÚdatar=   ÚtargetrÑ   rÒ   Úy3rá   r>   r    r¡   rï   r¢   r¯   Úuniquer°   r³   Úmapr|   r‚   r†   rž   r¦   r¨   r¹   r¿   r×   rÛ   rÞ   rä   rè   rë   rö   rÿ   r  r  r  r  r  r*  r3  r8  r:  rM  rU  ra  rn  rÌ   rs  rq  rt  r}  r€  rˆ  r�  r�  © rI   rG   ú<module>r®     sŸ  ðÛ 	ã Û Ý å ß /÷ó ÷ :÷ñ õ
 .Ý (÷	÷ 	ó 	÷ >ß BÝ 2÷ó õ +Ý !Ý /Ý !÷ñ ÷
÷ ò,ò$Cò.ð ‡�×ÑØØØñàñð ñð ñ	ð
 ñóñóðò ò:ò Dð& €x×ÑÓ€à‡I�I€Ø	‡[�[€ÙˆR˜aÔ €ÙˆR˜aÔ €Ø€B‡O�O�R˜˜R�LÓ!€ØŸ™Ñ €	ˆ:Ø�G‰G�A‰J€	Ù�	�—	‘	˜"“Ó€	Ù
‰s�2—9‘9˜r 2 r˜lÓ+Ó
,€ò	 ò9ò 'BòTPò>.òSò:Lò$,6ò^Dò(Jò&ð( ‡�×ÑÐ*¨_¸iÐ,HÓIñ)ó Jð)ò7ò:	ð ‡�×Ñ˜¨)Ð5HÐ)IÓJñ:ó Kð:ð$ ‡�×Ñ˜¨.Ó9ñ4ó :ð4òð. ‡�×ÑØÚJóð ‡�×ÑÐ*¨_Ð>QÐ,RÓSñ.ó Tó	ð
.ò(	ð ‡�×Ñ˜¨.Ó9ñ'ó :ð'ò>ð$ ‡�×ÑØòó	ñ7ó	ð7ð. ‡�×ÑØá¨AÔ.ÙÑ4À!ÔDÓEÙÑ.¸AÔ>Ó?ðóñ@óð@ô0 .ô 0ô0 ?ô 0ð ‡�×ÑØñ "Ñ">ÈÔ"PÓQØ3ˆH×3Ñ3Ó5ð	
ñ
 !Ñ!<Ó!>Ó?Ø$ˆH×$Ñ$¨q¸qÔAð	
ð	óñ;óð;ò,ð* ‡�×ÑØ%ØÐ/Ð0Ð3GÈÐ2OÐPóñ
5óð
5ð ‡�×Ñ˜¨¨b¯h©h¸Ð'>Ó?ñ=ó @ð=òò5ò,5ò&ð  ‡�×ÑØ�_ eÐ,Ð/DÀmÐ.TÐUóñ+óð+ó$rI   