Ë
    uwjˆ” ã                   óì  — d dl Z d dlZd dlZd dlmZ d dlZd dlm	Z	m
Z
 d dl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 d d
lmZmZmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z%m&Z&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z, d dl-m.Z.m/Z/ d dl0m1Z1 d dl2m3Z3m4Z4 d dl5m6Z6m7Z7m8Z8 d dl9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z?m@Z@mAZAmBZB d dlCmDZDmEZE d dlFmGZGmHZHmIZImJZJmKZKmLZL d dlMmNZN  ejž                  «       ZPej¢                  j¥                  d «      ZSdZTdZUeSj­                  ddeT¬«      ZWeSj­                  ddeT¬«      ZXeSj³                  eUeT«      eXz  eWz   ZZeZd dd…f   j·                  deT«      Z\eZdd…d f   j·                  eUd«      Z]e\j½                  «       Z_e]j½                  «       Z`d„ Zad„ Zbd„ Zcd„ Zdd„ ZeejÌ                  jÏ                  g d¢ ee«       «      ejÌ                  jÏ                  dg d ¢«      d!„ «       «       ZhejÌ                  jÏ                  g d¢ ee«       «      ejÌ                  jÏ                  d" e8«       e7¬#«      d$„ «       «       Zid%„ ZjejÌ                  jÏ                  d&dgeIz   eJz   «      ejÌ                  jÏ                  d'd(d)g«      d*„ «       «       ZkejÌ                  jÏ                  d+ e$d(¬,«       e#d(¬-«      g«      ejÌ                  jÏ                  d&dgeIz   eJz   «      ejÌ                  jÏ                  d'd(d)g«      ejÌ                  jÏ                  d.ejØ                  ejÚ                  g«      ejÌ                  jÏ                  d/g d0¢«      d1„ «       «       «       «       «       ZnejÌ                  jÏ                  d2g d3¢«      ejÌ                  jÏ                  d4g d5¢«      ejÌ                  jÏ                  d.ejØ                  ejÚ                  g«      ejÌ                  jÏ                  d&dgeIz   eJz   «      d6„ «       «       «       «       Zod7„ ZpeBd8„ «       Zqd9„ Zrd:„ Zsd;„ Ztd<„ Zud=„ ZvejÌ                  jÏ                  d&eIeJz   «      d>„ «       ZwejÌ                  jÏ                  d?d)dg«      ejÌ                  jÏ                  d&eIeJz   «      d@„ «       «       ZxejÌ                  jÏ                  d?d)dg«      dA„ «       ZydB„ ZzejÌ                  jÏ                  dC e8«       e7¬#«      ejÌ                  jÏ                  dDeEgeD¬#«      ejÌ                  jÏ                  dE e«        ed)¬F«       e«        ed)¬F«       e«        e dG¬H«       e dI¬H«       e dJ¬H«       e«       g	eD¬#«      dK„ «       «       «       Z{ejÌ                  jÏ                  dC e8«       e7¬#«      ejÌ                  jÏ                  dDeEgeD¬#«      ejÌ                  jÏ                  d?d)dg«      dL„ «       «       «       Z|dM„ Z}dN„ Z~dO„ ZdP„ Z€ejÌ                  jÏ                  d?d)dg«      ejÌ                  jÏ                  d&eIeJz   «      dQ„ «       «       Z�ejÌ                  jÏ                  dRd)d(g«      ejÌ                  jÏ                  dSd)d(g«      ejÌ                  jÏ                  d&dgeIz   eJz   «      dT„ «       «       «       Z‚dU„ ZƒejÌ                  jÏ                  d&eIeJz   «      dV„ «       Z„ejÌ                  jÏ                  d&eIeJz   «      dW„ «       Z…ejÌ                  jÏ                  d&eJeIz   «      dX„ «       Z†ejÌ                  jÏ                  d&eJeIz   «      dY„ «       Z‡dZ„ Zˆd[„ Z‰ejÌ                  jÏ                  d\d)d(g«      ejÌ                  jÏ                  d]d)d(g«      ejÌ                  jÏ                  d^ej¢                  j³                  dd_«       e	�j                  dd_d`¬a«      g«      db„ «       «       «       Z‹ejÌ                  jÏ                  dceJ«      dd„ «       ZŒde„ Z�ejÌ                  jÏ                  dfg dg¢«      ejÌ                  jÏ                  dhg di¢«      dj„ «       «       ZŽejÌ                  jÏ                  dceJ«      dk„ «       Z�dl„ Z�dm„ Z‘ejÌ                  jÏ                  dneI«      do„ «       Z’ejÌ                  jÏ                  dneI«      dp„ «       Z“ejÌ                  jÏ                  dneI«      dq„ «       Z”dr„ Z•ds„ Z–dt„ Z—ejÌ                  jÏ                  dneI«      du„ «       Z˜dv„ Z™ejÌ                  jÏ                  dneI«      dw„ «       Zšdx„ Z›dy„ ZœejÌ                  jÏ                  dzd{d|g«      d}„ «       Z�d~„ ZžejÌ                  jÏ                  dceJ«      d„ «       ZŸd€„ Z d�„ Z¡d‚„ Z¢dƒ„ Z£ejÌ                  jÏ                  d&eIeJz   «      d„„ «       Z¤d…„ Z¥ejÌ                  jÏ                  dceJ«      d†„ «       Z¦d‡„ Z§ejÌ                  jÏ                  dceJ«      dˆ„ «       Z¨d‰„ Z©ejÌ                  jÏ                  dŠg d‹¢«      ejÌ                  jÏ                  dceJ«      dŒ„ «       «       ZªejÌ                  jÏ                  dŠg d‹¢«      ejÌ                  jÏ                  d&eHeIz   eKz   «      d�„ «       «       Z«ejÌ                  jÏ                  dceJ«      dŽ„ «       Z¬ejÌ                  jÏ                  dceJ«      d�„ «       Z­ejÌ                  jÏ                  d�e�j\                  e¯geIz   eJz   «      d‘„ «       Z°ejÌ                  jÏ                  dC e8«       «      d’„ «       Z±d“„ Z²d”„ Z³d•„ Z´d–„ Zµd—„ Z¶ejÌ                  jÏ                  d&eHeIz   eJz   «      d˜„ «       Z·d™„ Z¸ejÌ                  jÏ                  dšd›dœg«      d�„ «       Z¹ejÌ                  jÏ                  dšd›dœg«      ejÌ                  jÏ                  džd)d(g«      ejÌ                  jÏ                  d^e]eZg«      dŸ„ «       «       «       Zºd „ Z»d¡„ Z¼d¢„ Z½ejÌ                  jÏ                  d^eZ e�j|                  eZ«       e�j|                  eZ«        e�j~                  eZ�j€                  «      g«      d£„ «       ZÁejÌ                  jÏ                  dšd›dœg«      d¤„ «       ZÂd¥„ ZÃd¦„ ZÄejÌ                  jÏ                  d§g d¨¢«      d©„ «       ZÅdª„ ZÆd«„ ZÇejÌ                  jÏ                  dšd›dœg«      d¬„ «       ZÈejÌ                  jÏ                  dšd›dœg«      ejÌ                  jÏ                  džd)d(g«      d­„ «       «       ZÉejÌ                  jÏ                  dšd›dœg«      ejÌ                  jÏ                  džd)d(g«      d®„ «       «       ZÊejÌ                  jÏ                  dšd›dœg«      ejÌ                  jÏ                  džd)d(g«      d¯„ «       «       ZËd°„ ZÌejÌ                  jÏ                  d± e	j¢                  ddd²d ¬³«      geJD � cg c]'  }  | e�j›                  d´e�jœ                  ¬µ«      «      ‘Œ) c} z   «      d¶„ «       ZÏejÌ                  jÏ                  d·d¸d¹g«      dº„ «       ZÐejÌ                  jÏ                  d»e�j\                  geIz   eJz   «      d¼„ «       ZÑd½„ ZÒd¾„ ZÓejÌ                  jÏ                  d¿eee#e$e"e!g«      dÀ„ «       ZÔejÌ                  jÏ                  d¿eee#e$e"e!e eg«      dÁ„ «       ZÕdÂ„ ZÖejÌ                  jÏ                  džd)d(g«      dÃ„ «       Z×ejÌ                  �j±                  eGdÄ¬Å«      dÆ„ «       ZÙejÌ                  �jµ                  eL edÇ«      k  dÈ¬Å«      dÉ„ «       ZÛdÊ„ ZÜyc c} w )Ëé    N)ÚsparseÚstats)Úconfig_contextÚdatasets)Úclone)ÚNotFittedError)Úparse)Úlinear_kernel)Úcross_val_predict)ÚPipeline)Ú	BinarizerÚKernelCentererÚMaxAbsScalerÚMinMaxScalerÚ
NormalizerÚPowerTransformerÚQuantileTransformerÚRobustScalerÚStandardScalerÚadd_dummy_featureÚmaxabs_scaleÚminmax_scaleÚ	normalizeÚpower_transformÚquantile_transformÚrobust_scaleÚscale)ÚBOUNDS_THRESHOLDÚ_handle_zeros_in_scale)ÚSVR)Úgen_batchesÚshuffle)Ú_convert_to_numpyÚ_get_namespace_device_dtype_idsÚ)yield_namespace_device_dtype_combinations)	Ú_array_api_for_testsÚ_convert_containerÚassert_allcloseÚassert_allclose_dense_sparseÚassert_almost_equalÚassert_array_almost_equalÚassert_array_equalÚassert_array_lessÚskip_if_32bit)Ú_get_check_estimator_idsÚ check_array_api_input_and_values)Ú_IS_WASMÚCOO_CONTAINERSÚCSC_CONTAINERSÚCSR_CONTAINERSÚLIL_CONTAINERSÚ
sp_version)Úmean_variance_axisé   éè  éÿÿÿÿé   ©Úsizeé
   c                 ó>   — t        | d«      r| j                  «       } | S )NÚtoarray)Úhasattrr@   ©Úas    új/var/www/html/newmanjeet/manjet/venv/lib/python3.12/site-packages/sklearn/preprocessing/tests/test_data.pyr@   r@   V   s   € Üˆq�)ÔØ�I‰I‹KˆØ€Hó    c                 óF   — t        j                  | «      j                  d   S )Nr   )ÚnpÚasarrayÚshaperB   s    rD   Ú_check_dim_1axisrJ   \   s   € Ü�:‰:�a‹=×Ñ˜qÑ!Ð!rE   c                 óJ   — ||k7  r| dz   |z  |k(  sJ ‚y | |z  ||z
  z   |k(  sJ ‚y )Nr;   © )ÚiÚbatch_startÚ
batch_stopÚnÚ
chunk_sizeÚn_samples_seens         rD   Úassert_correct_incrrS   `   s<   € Ø�Q‚Ø�A‘˜Ñ# ~Ò5Ð5Ñ5à�:‰~ ¨kÑ!9Ñ:¸nÒLÐLÑLrE   c                  ó\  — ddg} ddg}t        | |«      D ]‰  \  }}t        j                  ||«      }t        j                  |«      }t        «       }t        j                  |d«      dz  }t	        j
                  t        «      5  |j                  |||¬«       d d d «       Œ‹ y # 1 sw Y   Œ–xY w)Né   é   r;   ©Úsample_weight)ÚzipÚrngÚrandnr   ÚpytestÚraisesÚ
ValueErrorÚfit)Ú
n_samplessÚn_featuressÚ	n_samplesÚ
n_featuresÚXÚyÚscalerÚsample_weight_notOKs           rD   Ú9test_raises_value_error_if_sample_weights_greater_than_1drh   g   sš   € ð �Q�€JØ�a�&€Kä!$ Z°Ö!=Ñˆ	�:Ü�I‰I�i Ó,ˆÜ�I‰I�iÓ ˆäÓ!ˆô "Ÿi™i¨	°1Ó5¸Ñ:ÐÜ�]‰]œ:Õ&Ø�J‰J�q˜!Ð+>ˆJÔ?÷ 'Ð&ñ ">÷ 'Ð&ús   ÂB"Â"B+	c            	   #   ó  K  — g d¢g d¢gg d¢g d¢g d¢gddgfg d¢g d¢gg d¢g d¢g d¢g d¢gt        j                  ddg«      fdt         j                  dgt         j                  t         j                  dggdt         j                  dgt         j                  t         j                  dgt         j                  t         j                  dgt         j                  t         j                  dggt        j                  ddg«      ffE d {  –—†  y 7 Œ­w)	N)r;   rU   rV   )é   é   é   ç       @ç      ð?©r;   r   r;   )r   r   r;   r;   rV   )rG   ÚarrayÚnanrL   rE   rD   Ú_yield_xw_x_sampleweightrr   y   sâ   è ø€ ò š	Ð"Úš	¢9Ð-Ø�#ˆJð	
ò š	Ð"Úš	¢9ªiÐ8Ü�H‰H�a˜�VÓð	
ð ”—‘˜ˆ^œbŸf™f¤b§f¡f¨aÐ0Ð1à”B—F‘F˜A�Ü—‘œŸ™ Ð#Ü—‘œŸ™ Ð#Ü—‘œŸ™ Ð#ð	ô �H‰H�a˜�VÓð		
ð÷ ò ús   ‚DDÄDÄD)ÚXwrd   rX   Úarray_constructor)rp   Ú
sparse_csrÚ
sparse_cscc                 ó@  — |j                  d«       }t        ||«      }t        | |«      } t        j                  | j                  d   «      }t        |¬«      }|j                  | ||¬«       t        j                  |j                  d   «      }t        |¬«      }|j                  ||«       g d¢g d¢g}	t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |	«      |j                  |	«      «       y )Nr   r   ©Ú	with_meanrW   ©ç      ø?ç      @ç      @©r}   g      @g      @)Ú
startswithr'   rG   ÚonesrI   r   r_   r*   Úmean_Úvar_Ú	transform)
rs   rd   rX   rt   ry   ÚywÚscaler_wre   rf   ÚX_tests
             rD   Ú"test_standard_scaler_sample_weightr‡   ’   sã   € ð &×0Ñ0°Ó:Ð:€IÜ˜1Ð/Ó0€AÜ	˜BÐ 1Ó	2€Bô 
�‰�—‘˜!‘Ó	€BÜ¨	Ô2€HØ‡L�L��R }€LÔ5ô 	�‰�—‘˜‘
Ó€AÜ iÔ0€FØ
‡J�Jˆq�!ÔâšÐ/€Fä˜Ÿ™ h§n¡nÔ5Ü˜Ÿ™ X§]¡]Ô3Ü˜×(Ñ(¨Ó0°(×2DÑ2DÀVÓ2LÕMrE   znamespace, dev, dtype)Úidsc           	      ó„  — t        ||«      }t        j                  |«      j                  |d¬«      }t        j                  |j
                  d   «      j                  |d¬«      }t        j                  | «      j                  |d¬«      } t        j                  | j
                  d   «      j                  |d¬«      }t        j                  g d¢g d¢g«      j                  |d¬«      }	t        «       }
|
j                  ||«       t        «       }|j                  | ||¬«       |j                  ||¬«      }|j                  ||¬«      }|j                  | |¬«      }|j                  ||¬«      }|j                  |	|¬«      }|j                  ||¬«      }t        «       }t        d¬	«      5  |j                  |||¬«       t        |j                  |¬
«      }t        |j                  |¬
«      }d d d «       t        |j                  «       t        |j                  «       t        «       }t        d¬	«      5  |j                  ||«       t        |j                  |¬
«      }t        |j                  |¬
«      }d d d «       t        |
j                  «       t        |
j                  «       t        ||«       t        ||«       t        d¬	«      5  t        t        |j                  |«      |¬
«      t        |j                  |«      |¬
«      «       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)NF©Úcopyr   rz   r~   rW   ©ÚdeviceT©Úarray_api_dispatch)Úxp)r&   rG   rp   Úastyper€   rI   r   r_   rH   r   r#   r�   r‚   r(   rƒ   )rs   rd   rX   Ú	namespaceÚdevÚdtyper�   re   r„   r†   rf   r…   ÚX_xpÚy_xpÚXw_xpÚyw_xpÚ	X_test_xpÚsample_weight_xpÚscaler_w_xpÚw_meanÚw_varÚ	scaler_xpÚuw_meanÚuw_vars                           rD   Ú,test_standard_scaler_sample_weight_array_apir¡   ª   s˜  € ô 
˜i¨Ó	-€Bä
�‰�‹×Ñ˜5 uÐÓ-€AÜ
�‰�—‘˜‘
Ó×"Ñ" 5¨uÐ"Ó5€AÜ	�‰�"‹×	Ñ	˜U¨Ð	Ó	/€BÜ	�‰�—‘˜!‘Ó	×	$Ñ	$ U°Ð	$Ó	7€BÜ�X‰X’ªÐ8Ó9×@Ñ@ÀÈUÐ@ÓS€FäÓ€FØ
‡J�Jˆq�!ÔäÓ€HØ‡L�L��R }€LÔ5ð �:‰:�a ˆ:Ó$€DØ�:‰:�a ˆ:Ó$€DØ�J‰J�r #ˆJÓ&€EØ�J‰J�r #ˆJÓ&€EØ—
‘
˜6¨#�
Ó.€IØ—z‘z -¸�zÓ<Ðä Ó"€KÜ	¨4Ö	0Ø�‰˜˜uÐ4DˆÔEÜ" ;×#4Ñ#4¸Ô<ˆÜ! +×"2Ñ"2°rÔ:ˆ÷ 
1ô
 �H—N‘N FÔ+Ü�H—M‘M 5Ô)ô Ó €IÜ	¨4Ö	0Ø�‰�d˜DÔ!Ü# I§O¡O¸Ô;ˆÜ" 9§>¡>°bÔ9ˆ÷ 
1ô
 �F—L‘L 'Ô*Ü�F—K‘K Ô(ô �G˜VÔ$Ü�F˜EÔ"Ü	¨4Ö	0ÜÜ˜i×1Ñ1°)Ó<ÀÔDÜ˜k×3Ñ3°IÓ>À2ÔFô	
÷ 
1Ð	0÷+ 
1Ñ	0ú÷ 
1Ð	0ú÷ 
1Ð	0ús'   Æ-ALÈ:AL*ËAL6ÌL'Ì*L3Ì6L?c                  óÎ  — t         t        t        t        fD �]  } t        «       }|j	                  | «      j                  | d¬«      }t        | t        «      rt        j                  | «      } t        | «      dk(  r¸t        |j                  | j                  «       «       t        |j                  t        j                  t         «      «       t#        |j%                  d¬«      t        j&                  t         «      «       t#        |j)                  d¬«      t        j&                  t         «      «       n³t        |j                  | j%                  «       «       t        |j                  | j)                  «       «       t#        |j%                  d¬«      t        j&                  t         «      «       t#        |j%                  d¬«      d«       t#        |j)                  d¬«      d«       |j*                  | j,                  d   k(  sJ ‚|j/                  |«      }t#        || «       �Œ t        j                  d«      } t        «       }|j	                  | «      j                  | d¬«      }t        |j                  d«       t        |j                  d«       t#        |j%                  d¬«      d«       t#        |j)                  d¬«      d«       |j*                  | j,                  d   k(  sJ ‚y ©	NTrŠ   r;   r   ©Úaxisç        rn   ©rk   r;   )ÚX_1rowÚX_1colÚX_list_1rowr   r_   rƒ   Ú
isinstanceÚlistrG   rp   rJ   r*   r�   ÚravelÚscale_r€   rc   r+   ÚmeanÚ
zeros_likeÚstdÚn_samples_seen_rI   Úinverse_transform)rd   rf   ÚX_scaledÚX_scaled_backs       rD   Útest_standard_scaler_1dr¶   è   s  € ä”fœk¬;Ô7ˆÜÓ!ˆØ—:‘:˜a“=×*Ñ*¨1°4Ð*Ó8ˆä�aœÔÜ—‘˜“ˆAä˜AÓ !Ò#Ü §¡¨a¯g©g«iÔ8Ü §¡¬r¯w©w´zÓ/BÔCÜ% h§m¡m¸ mÓ&;¼R¿]¹]Ì:Ó=VÔWÜ% h§l¡l¸ lÓ&:¼B¿M¹MÌ*Ó<UÕVä §¡¨a¯f©f«hÔ7Ü §¡¨q¯u©u«wÔ7Ü% h§m¡m¸ mÓ&;¼R¿]¹]Ì:Ó=VÔWÜ% h§m¡m¸ mÓ&;¸SÔAÜ% h§l¡l¸ lÓ&:¸CÔ@Ø×%Ñ%¨¯©°©Ò3Ð3Ð3ð ×0Ñ0°Ó:ˆÜ! -°Ö3ð- 8ô2 	�‰�‹€AÜÓ€FØ�z‰z˜!‹}×&Ñ& q¨tÐ&Ó4€HÜ˜Ÿ™ cÔ*Ü˜Ÿ™ sÔ+Ü˜hŸm™m°˜mÓ3°SÔ9Ü˜hŸl™l°˜lÓ2°CÔ8Ø×!Ñ! Q§W¡W¨Q¡ZÒ/Ð/Ñ/rE   Úsparse_containerÚadd_sample_weightFTc                 óÄ  — t         j                  j                  d«      }d}d}| rt        j                  |«      }nd }d}|�!t         j                  t         j
                  g}n/t         j                  t         j
                  t         j                  g}|D ]Ê  }|j                  ||«      j                  |«      }	|�
 ||	«      }	d}t        |¬«      }
|
j                  |	|¬«      j                  |	«      }|	j                  |j                  k(  sJ ‚|
j                  j                  t         j                  k(  sJ ‚|
j                  j                  t         j                  k(  rŒÊJ ‚ y )Nr   r>   rV   TFrx   rW   )rG   ÚrandomÚRandomStater€   Úfloat64Úfloat32Úfloat16r[   r‘   r   r_   rƒ   r”   r�   r®   )r¸   r·   rZ   rb   rc   rX   ry   Úsupported_dtyper”   rd   rf   r´   s               rD   Útest_standard_scaler_dtyperÀ     s  € ô �)‰)×
Ñ
 Ó
"€CØ€IØ€JÙÜŸ™ 	Ó*‰àˆØ€IØÐ#ô Ÿ:™:¤r§z¡zÐ2‰äŸ:™:¤r§z¡z´2·:±:Ð>ˆÛ ˆØ�I‰I�i Ó,×3Ñ3°EÓ:ˆØÐ'Ù  Ó#ˆAØˆIä¨)Ô4ˆØ—:‘:˜a¨}�:Ó=×GÑGÈÓJˆØ�w‰w˜(Ÿ.™.Ò(Ð(Ð(Ø�|‰|×!Ñ!¤R§Z¡ZÒ/Ð/Ð/Ø�}‰}×"Ñ"¤b§j¡jÓ0Ð0Ð0ñ !rE   rf   rx   ©Úwith_centeringr”   Úconstant)r   rn   ç      Y@c                 óN  — t        | «      } t        | t        «      r.|r,t        j                  | j
                  j                  › d�«       t        j                  j                  d«      }d}d}|r t        |j                  |¬«      dz  ¬«      }ni }t        j                  ||f||¬«      }	|€|	n ||	«      }
 | j                  |
fi |¤Žj                  |
«      }t        | t        «      r8t!        | j"                  t        j$                  |
j&                  d   «      d	¬
«       t!        | j(                  t        j*                  |
j&                  d   «      «       ||
usJ ‚t-        ||
«       t        | t        «      r-|s*t/        |
| j0                  ¬«      }||
usJ ‚t-        ||
«       y y y )Nz# does not yet support sample_weightr   éd   r;   r<   rU   rW   )rI   Ú
fill_valuer”   çH¯¼šò×z>©Úatolrx   )r   r«   r   r\   ÚskipÚ	__class__Ú__name__rG   rº   r»   ÚdictÚuniformÚfullr_   rƒ   r   r(   r‚   ÚzerosrI   r®   r€   r)   r   ry   )rf   r¸   r·   r”   rÃ   rZ   rb   rc   Ú
fit_paramsÚX_arrayrd   r´   Ú
X_scaled_2s                rD   Ú&test_standard_scaler_constant_featuresrÕ   ,  si  € ô �6‹]€FÜ�&œ,Ô'Ñ,=Ü�‰�v×'Ñ'×0Ñ0Ð1Ð1TÐUÔVä
�)‰)×
Ñ
 Ó
"€CØ€IØ€JÙÜ¨¯©¸¨Ó(CÀaÑ(GÔH‰
àˆ
Ü�g‰g˜Y¨
Ð3ÀÐPUÔV€GØ#Ð+‰Ñ1AÀ'Ó1J€AØˆv�z‰z˜!Ñ*˜zÑ*×4Ñ4°QÓ7€Hä�&œ.Ô)ä˜Ÿ™¤R§X¡X¨a¯g©g°a©jÓ%9ÀÕEô �F—M‘M¤2§7¡7¨1¯7©7°1©:Ó#6Ô7à˜1ÑÐÐÜ  ¨1Ô-ä�&œ.Ô)Ñ2Cä˜1¨×(8Ñ(8Ô9ˆ
Ø Ñ"Ð"Ð"Ü$ Z°Õ3ð	 3DÐ)rE   rb   )r>   rÆ   i'  Úaverage)g»½×Ùß|Û=r;   ç    _ Bc                 ó.  — d\  }}t        j                  t        ||dz   «      D �cg c]  }d|z  ‘Œ	 c}|¬«      }|j                  d   }t        j                  | |f|¬«      }	||z   |	d | dz  …d d …f<   ||z
  |	| dz  d …d d …f<   |€|	n ||	«      }
t        d¬«      j                  |
«      }t        j                  t         j                  «      j                  }| |z  |dz  z  | dz  |dz  z  |dz  z  z   }|dz  |k  }t        j                  |«      sJ ‚t        |j                  |   ||   k  «      sJ ‚t        |j                  |   d	«       |	dd d …f   |	d
d d …f   z
  dk7  }t        |j                  t        j                  |«         d«       t        |j                  t        j                  |«         d«       t        j                   |dz  |kD  |«      }t        |j                  |   t        j"                  |j                  «      |   «       y c c}w )N)iâÿÿÿé   r;   r>   ©r”   r   rU   Frx   rn   r:   )rG   rp   ÚrangerI   Úemptyr   r_   Úfinfor¼   ÚepsÚanyÚallr‚   r(   r®   Úlogical_notÚlogical_andÚsqrt)rb   r·   rÖ   r”   Ú	scale_minÚ	scale_maxrM   Úscalesrc   rd   rÓ   rf   rÞ   ÚboundsÚwithin_boundsÚrepresentable_diffÚcommon_masks                    rD   Ú+test_standard_scaler_near_constant_featuresrë   Z  s  € ð #Ñ€IˆyÜ�X‰X¤e¨I°yÀ1±}Ô&EÓFÑ&E �r˜1“uÐ&EÑFÈeÔT€Fà—‘˜a‘€JÜ
�‰�)˜ZÐ(°Ô6€Aà$ vÑ-€AÐˆ	�Q‰ÐšÐÑØ$ vÑ-€A€i�1�nÑšÐÑØ#Ð+‰aÑ1AÀ!Ó1D€Gä eÔ,×0Ñ0°Ó9€Fô �(‰(”2—:‘:Ó
×
"Ñ
"€Cð ˜‰_˜v q™yÑ(¨9°a©<¸#¸q¹&Ñ+@À7ÈAÁ:Ñ+MÑM€FØ˜A‘I Ñ'€Mô �6‰6�-Ô Ð Ð ô ˆv�{‰{˜=Ñ)¨V°MÑ-BÑBÔCÐCÐCÜ�F—M‘M -Ñ0°#Ô6ð ˜1ša˜4™ 1 Rª U¡8Ñ+¨qÑ0ÐÜ�F—K‘K¤§¡Ð/AÓ BÑCÀQÔGÜ�F—M‘M¤"§.¡.Ð1CÓ"DÑEÀqÔIô
 —.‘. ¨¡¨VÑ!3Ð5GÓH€KÜ�F—M‘M +Ñ.´·±¸¿¹Ó0DÀ[Ñ0QÕRùòQ Gs   ¦Hc                  óö   — g d¢} t        j                  | «      }| |fD ]Y  }t        |«      }t        |j	                  «       d«       t        |j                  «       d«       t        t        |dd¬«      |«       Œ[ y )N)rn   ç      @ç      @r¦   r¦   rn   F©ry   Úwith_std)rG   rp   r   r+   r¯   r±   r,   )ÚX_listÚX_arrrd   r´   s       rD   Útest_scale_1dró   �  s_   € â!€FÜ�H‰H�VÓ€Eà�e‹_ˆÜ˜“8ˆÜ! (§-¡-£/°3Ô7Ü! (§,¡,£.°#Ô6Üœ5 ¨e¸eÔDÀaÕHñ	 rE   c                  ó¤  — t        j                  dt        j                  d«      t         j                  ¬«      } t	        j
                  «       5  t	        j                  dt        «       t        | «       d d d «       t        t        | «      t        j                  d«      «       t        j                  dt        j                  d«      t         j                  ¬«      } d}t        j                  t        |¬«      5  t        | «      }d d d «       t        t        j                  d«      «       t        j                  ddt         j                  ¬«      } t	        j
                  «       5  t	        j                  dt        «       t        | «      }d d d «       t        t        j                  d«      «       t        j                  dd	t         j                  ¬«      }d
}t        j                  t        |¬«      5  t        |«      }d d d «       t        t        j                  d«      «       t        ||«       t        j                  t        |¬«      5  t        |d¬«      }d d d «       t        t        j                  d«      «       t        ||«       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   ŒhxY w)Né   çñhãˆµøä>rÚ   Úerrorr>   z:standard deviation of the data is probably very close to 0©Úmatchg0Žä.ÿ++g}Ã”%­I²Tz$Dataset may contain too large valuesF©rð   )rG   rÐ   Úlogr¼   ÚwarningsÚcatch_warningsÚsimplefilterÚUserWarningr   r+   rÑ   r\   Úwarns)ÚxÚwarning_messageÚx_scaledÚx_small_scaledÚx_bigÚx_big_scaledÚx_big_centereds          rD   Ú(test_standard_scaler_numerical_stabilityr  œ  sÈ  € ô
 	�‰�”2—6‘6˜$“<¤r§z¡zÔ2€Aô 
×	 Ñ	 Õ	"Ü×Ñ˜g¤{Ô3ÜˆaŒ÷ 
#ô œe A›h¬¯©°«Ô4ô 	�‰�”B—F‘F˜4“L¬¯
©
Ô3€AØR€OÜ	�‰”k¨Ö	9Ü˜“8ˆ÷ 
:ä˜h¬¯©°«Ô5ä
�‰��F¤"§*¡*Ô-€AÜ	×	 Ñ	 Õ	"Ü×Ñ˜g¤{Ô3Ü˜q›ˆ÷ 
#ô ˜n¬b¯h©h°r«lÔ;ô �G‰G�B˜¤R§Z¡ZÔ0€EØ<€OÜ	�‰”k¨Ö	9Ü˜U“|ˆ÷ 
:ä˜l¬B¯H©H°R«LÔ9Ü˜l¨NÔ;Ü	�‰”k¨Ö	9Ü˜u¨uÔ5ˆ÷ 
:ä˜n¬b¯h©h°r«lÔ;Ü˜n¨nÕ=÷9 
#Ñ	"ú÷ 
:Ñ	9ú÷
 
#Ñ	"ú÷ 
:Ð	9ú÷ 
:Ð	9ús<   Á&JÃ:J Å'&J-Ç7J:ÉKÊJÊ J*Ê-J7Ê:KËKc                  ó^  — t         j                  j                  d«      } d}d}| j                  ||«      }d|d d …df<   t	        «       }|j                  |«      j                  |d¬«      }t        j                  t        j                  |«      «      rJ ‚|j                  |k(  sJ ‚t        |j                  d¬«      |dgz  «       t        |j                  d¬«      g d¢«       ||usJ ‚|j                  |«      }||usJ ‚||usJ ‚t        ||«       t        |d	d
¬«      }t        j                  t        j                  |«      «      rJ ‚t        |j                  d	¬«      |dgz  «       t        |d	d¬«      }t        j                  t        j                  |«      «      rJ ‚t        |j                  d	¬«      |dgz  «       t        |j                  d	¬«      |dgz  «       ||usJ ‚|j                  |«      j                  |d
¬«      }t        j                  t        j                  |«      «      rJ ‚t        |j                  d¬«      |dgz  «       t        |j                  d¬«      g d¢«       ||u sJ ‚| j                  dd«      }d|d d …df<   t	        «       }|j                  |«      j                  |d¬«      }t        j                  t        j                  |«      «      rJ ‚t        |j                  d¬«      |dgz  «       t        |j                  d¬«      g d¢«       ||usJ ‚y )Nr   rk   rj   r¦   TrŠ   r¤   ©r¦   rn   rn   rn   rn   r;   F)r¥   rð   rn   )rG   rº   r»   r[   r   r_   rƒ   rß   Úisnanr²   r+   r¯   r±   r³   r   )rZ   rc   rb   rd   rf   r´   rµ   s          rD   Útest_scaler_2d_arraysr  Ã  sÏ  € ä
�)‰)×
Ñ
 Ó
"€CØ€JØ€IØ�	‰	�)˜ZÓ(€AØ€A‚aˆ€d�GäÓ€FØ�z‰z˜!‹}×&Ñ& q¨tÐ&Ó4€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)Ø×!Ñ! YÒ.Ð.Ð.ä˜hŸm™m°˜mÓ3°ZÀ3À%Ñ5GÔHÜ˜hŸl™l°˜lÓ2Ò4MÔNà˜1ÑÐÐð ×,Ñ,¨XÓ6€MØ Ñ!Ð!Ð!Ø Ñ(Ð(Ð(Ü˜m¨QÔ/ä�Q˜Q¨Ô/€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)Ü˜hŸm™m°˜mÓ3°YÀ#ÀÑ5FÔGÜ�Q˜Q¨Ô.€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)Ü˜hŸm™m°˜mÓ3°YÀ#ÀÑ5FÔGÜ˜hŸl™l°˜lÓ2°IÀÀÑ4EÔFà˜1ÑÐÐà�z‰z˜!‹}×&Ñ& q¨uÐ&Ó5€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)Ü˜hŸm™m°˜mÓ3°ZÀ3À%Ñ5GÔHÜ˜hŸl™l°˜lÓ2Ò4MÔNà�q‰=Ðˆ=à�	‰	�!�Q‹€AØ€A‚aˆ€d�GÜÓ€FØ�z‰z˜!‹}×&Ñ& q¨tÐ&Ó4€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)Ü˜hŸm™m°˜mÓ3°ZÀ3À%Ñ5GÔHÜ˜hŸl™l°˜lÓ2Ò4MÔNà˜1ÑÐÑrE   c                  ó,  — t         j                  j                  d«      } | j                  ddddg«      j	                  t         j
                  «      }t        j                  d¬«      5  t        «       j                  |«      }|j                  |«      }d d d «       t        «       j                  |j	                  t         j                  «      «      }t        j                  t        j                  «      «      sJ ‚t        ||d¬	«       y # 1 sw Y   ŒxxY w)
Nr   rk   r>   i@ r;   Úraise)ÚoverrU   ©Údecimal)rG   rº   r»   rÏ   r‘   r¾   Úerrstater   r_   rƒ   Úfit_transformr¼   rà   Úisfiniter+   )rZ   rd   rf   r´   ÚX_scaled_f64s        rD   Útest_scaler_float16_overflowr  ÷  sÇ   € ä
�)‰)×
Ñ
 Ó
"€Cð 	�‰�A�r˜F A˜;Ó'×.Ñ.¬r¯z©zÓ:€Aä	�‰˜'Ö	"ÜÓ!×%Ñ% aÓ(ˆØ×#Ñ# AÓ&ˆ÷ 
#ô
 "Ó#×1Ñ1°!·(±(¼2¿:¹:Ó2FÓG€Lô
 �6‰6”"—+‘+˜hÓ'Ô(Ð(Ð(ô
 ˜h¨¸aÖ@÷ 
#Ð	"ús   Á(+D
Ä
Dc                  óÐ   — t        j                  g d¢«      } t        | d¬«      }t        | t        j                  g d¢«      «       t        |t        j                  g d¢«      «       y )N)r   g¼‰Ø—²Òœ<r;   rU   rV   TrŠ   )r;   r;   r;   rU   rV   )rG   rp   r   r(   )Ús1Ús2s     rD   Útest_handle_zeros_in_scaler    sD   € Ü	�‰Ò%Ó	&€BÜ	 ¨Ô	.€Bä�BœŸ™Ò!4Ó5Ô6Ü�BœŸ™¢Ó1Õ2rE   c            
      ój  — t         } | j                  d   }ddd||dz   fD �]�  }t        «       j                  | «      }t        «       }t	        t
        |«      D ]  }|j                  | |   «      }Œ t        |j                  |j                  «       t        |j                  |j                  «       |j                  |j                  k(  sJ ‚t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |j                  «       t        d|«      }t        «       j                  | |   «      }t        «       j                  | |   «      }t        |j                  |j                  «       t        |j                  |j                  «       |j                  |j                  k(  sJ ‚t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |j                  «       t        «       j                  | «      }t        «       }t        t	        t
        |«      «      D ]H  \  }}|j                  | |   «      }t!        ||j"                  |j$                  |||j                  ¬«       ŒJ �Œ“ y )Nr   r;   rU   é2   é*   ©rN   rO   rP   rQ   rR   )ÚX_2drI   r   r_   r!   rb   Úpartial_fitr+   Ú	data_min_Ú	data_max_r²   Údata_range_r®   Úmin_ÚsliceÚ	enumeraterS   ÚstartÚstop©rd   rP   rQ   Úscaler_batchÚscaler_incrÚbatchÚbatch0rM   s           rD   Útest_minmax_scaler_partial_fitr.    s+  € ô 	€AØ	�‰�‰
€Aà˜!˜R  A¨¡FÔ+ˆ
ä#“~×)Ñ)¨!Ó,ˆä"“nˆÜ ¤¨JÖ7ˆEØ%×1Ñ1°!°E±(Ó;‰Kð 8ô 	" ,×"8Ñ"8¸+×:OÑ:OÔPÜ! ,×"8Ñ"8¸+×:OÑ:OÔPØ×+Ñ+¨{×/JÑ/JÒJÐJÐJÜ! ,×":Ñ":¸K×<SÑ<SÔTÜ! ,×"5Ñ"5°{×7IÑ7IÔJÜ! ,×"3Ñ"3°[×5EÑ5EÔFô �q˜*Ó%ˆÜ#“~×)Ñ)¨!¨F©)Ó4ˆÜ"“n×0Ñ0°°6±Ó;ˆä! ,×"8Ñ"8¸+×:OÑ:OÔPÜ! ,×"8Ñ"8¸+×:OÑ:OÔPØ×+Ñ+¨{×/JÑ/JÒJÐJÐJÜ! ,×":Ñ":¸K×<SÑ<SÔTÜ! ,×"5Ñ"5°{×7IÑ7IÔJÜ! ,×"3Ñ"3°[×5EÑ5EÔFô $“~×)Ñ)¨!Ó,ˆÜ"“nˆÜ!¤+¬i¸Ó"DÖE‰HˆAˆuØ%×1Ñ1°!°E±(Ó;ˆKÜØØ!ŸK™KØ Ÿ:™:ØØ%Ø*×:Ñ:öò Fñ= ,rE   c            
      ó(  — t         } | j                  d   }ddd||dz   fD �]o  }t        d¬«      j                  | «      }t        d¬«      }t	        t
        |«      D ]  }|j                  | |   «      }Œ t        |j                  |j                  «       |j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚t        d|«      }t        «       j                  | |   «      }|dk(  r{t        t        j                  t        t        j                  ¬«      |j                  «       t        t        j                   t        t        j                  ¬«      |j"                  «       n\t        t        j$                  | |   d¬	«      |j                  «       t        t        j&                  | |   d¬	«      |j"                  «       t        «       j                  | «      }t        «       }t)        t	        t
        |«      «      D ]H  \  }}|j                  | |   «      }t+        ||j,                  |j.                  |||j                  ¬
«       ŒJ t        |j                  |j                  «       |j                  |j                  k(  r�ŒpJ ‚ y )Nr   r;   rU   r  r  Frú   rÚ   r¤   r  )r  rI   r   r_   r!   rb   r   r+   r�   r‚   r²   r%  rG   rÑ   rc   r¼   r€   r®   Úvarr±   r&  rS   r'  r(  r)  s           rD   Ú test_standard_scaler_partial_fitr1  H  s  € ô 	€AØ	�‰�‰
€Aà˜!˜R  A¨¡FÔ+ˆ
ä%¨uÔ5×9Ñ9¸!Ó<ˆä$¨eÔ4ˆÜ ¤¨JÖ7ˆEØ%×1Ñ1°!°E±(Ó;‰Kð 8ä! ,×"4Ñ"4°k×6GÑ6GÔHØ× Ñ  K×$4Ñ$4Ò4Ð4Ð4Ø×+Ñ+¨{×/JÑ/JÒJÐJÐJô �q˜*Ó%ˆÜ$Ó&×2Ñ2°1°V±9Ó=ˆØ˜Š?Ü%Ü—‘œ¬2¯:©:Ô6¸×8HÑ8Hôô &Ü—‘œ
¬"¯*©*Ô5°{×7IÑ7Iõô &¤b§f¡f¨Q¨v©Y¸QÔ&?À×AQÑAQÔRÜ%Ü—‘�q˜‘y qÔ)¨;×+=Ñ+=ôô
 &Ó'×+Ñ+¨AÓ.ˆÜ$Ó&ˆÜ!¤+¬i¸Ó"DÖE‰HˆAˆuØ%×1Ñ1°!°E±(Ó;ˆKÜØØ!ŸK™KØ Ÿ:™:ØØ%Ø*×:Ñ:öð Fô 	" ,×"3Ñ"3°[×5EÑ5EÔFØ×+Ñ+¨{×/JÑ/JÔJÐJÐJñU ,rE   c                 ó  — t         j                  j                  d«      }d}d}|j                  dd|¬«      }|j                  dd|¬«      }|j	                  ||«      |z  |z   }t        «       j                  |«      }t        «       }|D ]#  }	|j                  |	j                  d	|«      «      }Œ% d
}
t        |j                  |j                  |
¬«       t        |j                  |j                  |
¬«       t        |j                  |j                  |
¬«       d}d} | |j                  dd|«      j                  t         j                  «      |z  «      }t        d¬«      j                  |«      }t        d¬«      }|D ]4  }	|	j                   d	k(  r|	j                  d	d«      }	|j                  |	«      }Œ6 d
}
|j                  €J ‚t        |j                  |j                  |
¬«       t        |j                  |j                  |
¬«       y )Nr   rU   rÆ   g  4&õkÃg  4&õkCr<   g     @�@ç    €„.Ar;   g�íµ ÷Æ°>)Úrtol)rÆ   rV   g@Œµx¯DFrx   r:   )rG   rº   r»   rÏ   r[   r   r_   r   Úreshaper(   r�   r‚   r®   Úrandintr‘   r¼   Úndim)r·   rZ   rc   rb   Úoffsetsræ   rd   r*  r+  ÚchunkÚtolr=   r   rf   s                 rD   Ú4test_standard_scaler_partial_fit_numerical_stabilityr;  {  sÅ  € ô �)‰)×
Ñ
 Ó
"€CØ€JØ€IØ�k‰k˜% ¨JˆkÓ7€GØ�[‰[˜˜c¨
ˆ[Ó3€FØ�	‰	�)˜ZÓ(¨6Ñ1°GÑ;€Aä!Ó#×'Ñ'¨Ó*€LÜ Ó"€KÛˆØ!×-Ñ-¨e¯m©m¸A¸zÓ.JÓK‰ð ð €CÜ�K×%Ñ% |×'9Ñ'9ÀÕDÜ�K×$Ñ$ l×&7Ñ&7¸cÕBÜ�K×&Ñ&¨×(;Ñ(;À#ÕFð
 €DØ€EÙ˜Ÿ™ Q¨¨4Ó0×7Ñ7¼¿
¹
ÓCÀeÑKÓL€Aô  eÔ,×0Ñ0°Ó3€FÜ ¨5Ô1€KãˆØ�:‰:˜Š?ð —M‘M ! RÓ(ˆEØ!×-Ñ-¨eÓ4‰ð ð €CØ�<‰<Ð#Ð#Ð#Ü�K×$Ñ$ f§k¡k¸Õ<Ü�K×&Ñ&¨¯©¸CÖ@rE   rX   c                 ó  —  |t        j                  dgdgdgdgg«      «      }| r"t        j                  |j                  d   «      } t        ddd¬«      }|j                  || ¬«      j                  |«      }t        |j                  «       |j                  «       «       |j                  |«      }t        |j                  «       |j                  «       «       t        |j                  «       |j                  «       «       y )	Nrn   r¦   rî   r   FT©ry   rð   r‹   rW   )rG   rp   rZ   ÚrandrI   r   r   rƒ   r,   r@   r³   )rX   r·   rd   Únull_transformÚX_nullÚX_origs         rD   Útest_partial_fit_sparse_inputrB  ª  sÆ   € ñ 	œŸ™ C 5¨3¨%°#°¸¸Ð">Ó?Ó@€AáÜŸ™ §¡¨¡Ó,ˆä#¨e¸eÈ$ÔO€NØ×'Ñ'¨¸Ð'ÓG×QÑQÐRSÓT€FÜ�v—~‘~Ó'¨¯©«Ô5Ø×-Ñ-¨fÓ5€FÜ�v—~‘~Ó'¨¯©Ó)9Ô:Ü�v—~‘~Ó'¨¯©«Õ5rE   c                 ó
  — t         d d…d d …f   }| r"t        j                  |j                  d   «      } t	        «       }t        t        |j                  d   d«      «      D �]   \  }}|d |dz   …d d …f   }|j                  «       }| €.t	        «       j                  |«      }|j                  ||   «      }n:t	        «       j                  || d |dz    ¬«      }|j                  ||   | |   ¬«      }|j                  |«      }t        ||«       t        ||«       |j                  |«      }	t        ||	«       t        j                  |j                  d   «      }
t        j                  t         «      j"                  }t%        |
|j&                  |z   «       t%        |
|j(                  |z   «       | €|dz   |j*                  k(  r�ŒbJ ‚t        j,                  | d |dz    «      t/        j0                  |j*                  «      k(  r�Œ¡J ‚ y )NrÆ   r   r;   rW   )r  rZ   r>  rI   r   r&  r!   r‹   r  r   rƒ   r+   r³   rG   rÑ   rÝ   ÚfloatrÞ   r-   r‚   r®   r²   Úsumr\   Úapprox)rX   rd   r+  rM   r,  ÚX_sofarÚchunks_copyÚscaled_batchÚscaled_incrÚright_inputÚzeroÚepsilons               rD   Ú.test_standard_scaler_trasform_with_partial_fitrN  »  sÝ  € ô 	ˆTˆcˆT’1ˆW‰€AáÜŸ™ §¡¨¡Ó,ˆä Ó"€KÜœk¨!¯'©'°!©*°aÓ8×9‰ˆˆ5Ø�I�q˜1‘u�Išq�L‘/ˆØ—l‘l“nˆØÐ Ü)Ó+×9Ñ9¸'ÓBˆLØ%×1Ñ1°!°E±(Ó;‰Kä)Ó+×9Ñ9Ø }°W°q¸1±uÐ'=ð :ó ˆLð &×1Ñ1Ø�%‘¨°eÑ(<ð 2ó ˆKð "×+Ñ+¨GÓ4ˆä! ,°Ô<Ü! '¨;Ô7Ø!×3Ñ3°KÓ@ˆÜ! '¨;Ô7ä�x‰x˜Ÿ™ ™
Ó#ˆÜ—(‘(œ5“/×%Ñ%ˆÜ˜$ × 0Ñ 0°7Ñ :Ô;Ü˜$ × 2Ñ 2°WÑ <Ô=ØÐ à˜‘E˜k×9Ñ9Ô9Ð9Ð9ä—6‘6˜-¨¨!¨a©%Ð0Ó1´V·]±]Ø×+Ñ+ó6ô ð ð ñ9 :rE   c            	      óÊ   — t        j                  g d¢g d¢g d¢g d¢g d¢g d¢gt         j                  ¬«      } t        «       }|j	                  | «       |j                  | «       y )N)r;   r;   r;   r   r;   r   )r   rõ   r   r;   r   r   )r;   rj   r;   r;   r   r   )r   r;   r   r   r;   r   )r   rj   r   r;   r   r;   rÚ   )rG   rp   Úint32r   r_   r³   )r  rf   s     rD   Ú.test_standard_check_array_of_inverse_transformrQ  å  sW   € ô 	�‰âÚÚÚÚÚð	
ô �h‰hô
	€Aô Ó€FØ
‡J�Jˆq„Mð
 ×Ñ˜QÕrE   z#array_namespace, device, dtype_nameÚcheckÚ	estimator©ÚclipÚl1©ÚnormÚl2Úmaxc                 óJ   — | j                   j                  } ||| |||¬«       y )N)r�   Ú
dtype_name)rÌ   rÍ   )rS  rR  Úarray_namespacer�   r\  Únames         rD   Ú'test_preprocessing_array_api_compliancer_  ý  s%   € ð8 ×Ñ×'Ñ'€DÙ	ˆ$�	˜?°6ÀjÖQrE   c                 ó`   — t        «       }|j                  j                  } | ||||||¬«       y )N)r�   r\  Úcheck_sample_weight)r   rÌ   rÍ   )rR  rX   r]  r�   r\  rS  r^  s          rD   Ú)test_standard_scaler_array_api_compliancerb    s7   € ô Ó €IØ×Ñ×'Ñ'€DÙ	ØØØØØØ)örE   c                  ób  — t         j                  } t        «       }|j                  | «      }t	        |j                  d¬«      d«       t	        |j                  d¬«      d«       |j                  |«      }t	        | |«       t        d¬«      }|j                  | «      }t	        |j                  d¬«      d«       t	        |j                  d¬«      d«       |j                  |«      }t	        | |«       t        d¬«      }|j                  | «      }t	        |j                  d¬«      d«       t	        |j                  d¬«      d	«       |j                  |«      }t	        | |«       t        d
¬«      }t        j                  t        «      5  |j                  | «       d d d «       y # 1 sw Y   y xY w)Nr   r¤   r;   ©r;   rU   ©Úfeature_rangerU   )ç      à¿ç333333ã?rg  rh  )rU   r;   )ÚirisÚdatar   r  r+   ÚminrZ  r³   r\   r]   r^   r_   )rd   rf   ÚX_transÚX_trans_invs       rD   Útest_min_max_scaler_irisrn  7  sU  € Ü�	‰	€AÜ‹^€Fà×"Ñ" 1Ó%€GÜ˜gŸk™k¨q˜kÓ1°1Ô5Ü˜gŸk™k¨q˜kÓ1°1Ô5Ø×*Ñ*¨7Ó3€KÜ˜a Ô-ô ¨Ô/€FØ×"Ñ" 1Ó%€GÜ˜gŸk™k¨q˜kÓ1°1Ô5Ü˜gŸk™k¨q˜kÓ1°1Ô5Ø×*Ñ*¨7Ó3€KÜ˜a Ô-ô ¨Ô4€FØ×"Ñ" 1Ó%€GÜ˜gŸk™k¨q˜kÓ1°4Ô8Ü˜gŸk™k¨q˜kÓ1°3Ô7Ø×*Ñ*¨7Ó3€KÜ˜a Ô-ô ¨Ô/€FÜ	�‰”zÕ	"Ø�
‰
�1Œ÷ 
#×	"Ñ	"ús   Æ
F%Æ%F.c                  óê  — g d¢g d¢g d¢g} g d¢g d¢g d¢g}t        «       }|j                  | «      }g d¢g d¢g d	¢g}t        ||«       |j                  |«      }t        | |«       |j	                  |«      }g d¢g d
¢g d¢g}t        ||d¬«       t        d¬«      }|j                  | «      }g d¢g d¢g d¢g}t        ||«       t        | «      }t        ||«       t        | d¬«      }t        ||«       y )N©r¦   rn   ç      à?©r¦   rn   gš™™™™™¹¿©r¦   rn   gš™™™™™ñ?©r¦   rm   rq  ©ç      ð¿rn   r¦   ©r¦   rn   r{   )r¦   r¦   rq  ©r¦   r¦   r¦   ©r¦   r¦   rn   )rv  r¦   gsh‘í|?µ?)r¦   r¦   g‡ÙÎ÷Sõ?rU   r  rd  re  )rn   rn   r{   ©rn   rn   rn   )rn   rn   rm   )r   r  r+   r³   rƒ   r   )	rd   ÚX_newrf   rl  ÚX_expected_0_1rm  ÚX_trans_newÚX_expected_0_1_newÚX_expected_1_2s	            rD   Ú*test_min_max_scaler_zero_variance_featuresr€  W  sð   € â	Ò+Ò-=Ð>€AâÒ/Ò1AÐB€Eô ‹^€FØ×"Ñ" 1Ó%€GÚ%¢ºÐH€NÜ˜g ~Ô6Ø×*Ñ*¨7Ó3€KÜ˜a Ô-à×"Ñ" 5Ó)€KÚ,Ò.@ÒBTÐUÐÜ˜kÐ+=ÀqÕIô ¨Ô/€FØ×"Ñ" 1Ó%€GÚ%¢ºÐH€NÜ˜g ~Ô6ô ˜1‹o€GÜ˜g ~Ô6Ü˜1¨FÔ3€GÜ˜g ~Õ6rE   c                  óÂ   — t         j                  } t        | d¬«      }t        t	        j
                  |d¬«      d«       t        t	        j                  |d¬«      d«       y )Nr;   r¤   r   )ri  rj  r   r+   rG   rk  rZ  )rd   rl  s     rD   Útest_minmax_scale_axis1r‚  v  sA   € Ü�	‰	€AÜ˜1 1Ô%€GÜœbŸf™f W°1Ô5°qÔ9ÜœbŸf™f W°1Ô5°qÕ9rE   c                  óf  — t         t        t        t        fD �]<  } t        d¬«      }|j	                  | «      j                  | «      }t        | t        «      rt        j                  | «      } t        | «      dk(  rgt        |j                  d¬«      t        j                  t        «      «       t        |j                  d¬«      t        j                  t        «      «       n8t        |j                  d¬«      d«       t        |j                  d¬«      d«       |j                   | j"                  d   k(  sJ ‚|j%                  |«      }t        || «       �Œ? t        j&                  d«      } t        «       }|j	                  | «      j                  | «      }|j                  «       dk\  sJ ‚|j                  «       dk  sJ ‚|j                   | j"                  d   k(  sJ ‚t         j)                  «       }|j                  «       }|j                  «       }t        ||z
  ||z
  z  t+        |d¬«      «       y r£   )r¨   r©   rª   r   r_   rƒ   r«   r¬   rG   rp   rJ   r+   rk  rÑ   rc   rZ  r²   rI   r³   r€   r­   r   )rd   rf   r´   rµ   ÚX_1dr$  Úmax_s          rD   Útest_min_max_scaler_1dr†  }  s¯  € ä”fœk¬;Ô7ˆÜ 4Ô(ˆØ—:‘:˜a“=×*Ñ*¨1Ó-ˆä�aœÔÜ—‘˜“ˆAä˜AÓ !Ò#Ü% h§l¡l¸ lÓ&:¼B¿H¹HÄZÓ<PÔQÜ% h§l¡l¸ lÓ&:¼B¿H¹HÄZÓ<PÕQä% h§l¡l¸ lÓ&:¸CÔ@Ü% h§l¡l¸ lÓ&:¸CÔ@Ø×%Ñ%¨¯©°©Ò3Ð3Ð3ð ×0Ñ0°Ó:ˆÜ! -°Ö3ð# 8ô( 	�‰�‹€AÜ‹^€FØ�z‰z˜!‹}×&Ñ& qÓ)€HØ�<‰<‹>˜SÒ Ð Ð Ø�<‰<‹>˜SÒ Ð Ð Ø×!Ñ! Q§W¡W¨Q¡ZÒ/Ð/Ð/ô �<‰<‹>€DØ�8‰8‹:€DØ�8‰8‹:€DÜØ	�‰˜ ™Ñ%¤|°D¸tÔ'DõrE   c                 óª  — t         j                  j                  d«      }|j                  dd«      }d|d d …df<    ||«      }| r|j	                  |j
                  d   «      } t        j                  t        «      5  t        «       j                  |«       d d d «       t        d¬«      j                  || ¬«      }|j                  |d	¬
«      }t        j                  t        j                  |«      «      rJ ‚t        d¬«      j                  || ¬«      }|j                  |d	¬
«      }t        j                  t        j                  |j                  «      «      rJ ‚t        |j                   |j                   «       t        |j"                  |j"                  «       t        |j$                  |j$                  «       t        |j&                  |j&                  «       | €=t        |j)                  d¬«      g d¢d«       t        |j+                  d¬«      g d¢«       t-        |d«      \  }	}
t        |	|j)                  d¬«      «       t        |
|j/                  d¬«      «       ||usJ ‚||usJ ‚|j1                  |«      }||usJ ‚||usJ ‚t        ||«       |j1                  |«      }||usJ ‚||usJ ‚t        |j3                  «       |«       |t4        v rqt        ddd	¬«      }|j7                  |«      }t9        |j                  |j                  «       |j1                  |«      }t9        |j                  |j                  «       y y # 1 sw Y   �Œ´xY w)Nr  rj   rk   r¦   r   Frx   rW   TrŠ   r¤   ©r¦   g{®Gáz„¿gìQ¸…ë@gffffffÖ¿gö(\�Âõè¿rU   r
  r=  )rG   rº   r»   r[   r>  rI   r\   r]   r^   r   r_   rƒ   rß   r  rj  r+   r�   r‚   r®   r²   r¯   r±   r7   r0  r³   r@   r4   r  r,   )rX   r·   rZ   rd   ÚX_sparserf   r´   Úscaler_sparseÚX_sparse_scaledÚX_sparse_scaled_meanÚX_sparse_scaled_varrµ   ÚX_sparse_scaled_backr?  r@  rA  s                   rD   Útest_scaler_without_centeringr�  £  så  € ô �)‰)×
Ñ
 Ó
#€CØ�	‰	�!�Q‹€AØ€A‚aˆ€d�GÙ Ó"€HáØŸ™ §¡¨¡Ó,ˆä	�‰”zÕ	"ÜÓ×Ñ˜XÔ&÷ 
#ô  eÔ,×0Ñ0°À-Ð0ÓP€FØ×Ñ ¨ÐÓ-€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)ä"¨UÔ3×7Ñ7Ø ð 8ó €Mð $×-Ñ-¨h¸TÐ-ÓB€OÜ�v‰v”b—h‘h˜×3Ñ3Ó4Ô5Ð5Ð5ä˜fŸl™l¨M×,?Ñ,?Ô@Ü˜fŸk™k¨=×+=Ñ+=Ô>Ü˜fŸm™m¨]×-AÑ-AÔBÜ˜f×4Ñ4°m×6SÑ6SÔTàÐÜ!Ø�M‰M˜qˆMÓ!Ò#CÀQô	
ô 	" (§,¡,°A ,Ó"6Ò8QÔRä0BÀ?ÐTUÓ0VÑ-ÐÐ-ÜÐ2°H·M±MÀq°MÓ4IÔJÜÐ1°8·<±<ÀQ°<Ó3GÔHð ˜1ÑÐÐØ (Ñ*Ð*Ð*à×,Ñ,¨XÓ6€MØ Ñ!Ð!Ð!Ø Ñ(Ð(Ð(Ü˜m¨QÔ/à(×:Ñ:¸?ÓKÐØ xÑ/Ð/Ð/Ø Ñ6Ð6Ð6ÜÐ2×:Ñ:Ó<¸aÔ@àœ>Ñ)Ü'°%À%ÈdÔSˆØ×-Ñ-¨hÓ7ˆÜ˜6Ÿ;™;¨¯©Ô6Ø×1Ñ1°&Ó9ˆÜ˜6Ÿ;™;¨¯©Õ6ð *÷U 
#Ñ	"ús   Á<MÍMry   rð   c                 ó¾  — t        j                  g d¢t         j                  ddgddt         j                  gddt         j                  ggt         j                  ¬«      }|� ||«      }t	        j
                  |«      r| rt        j                  d	«       t        | |¬
«      }|j                  |«       t        |j                  t        j                  g d¢«      «       y )N©r   r;   rV   rl   r>   rk   rj   rõ   r   rÚ   z3'with_mean=True' cannot be used with sparse matrix.rï   )rV   rj   rU   )rG   rp   rq   r¼   r   Úissparser\   rË   r   r_   r,   r²   )ry   rð   r·   rd   Útransformers        rD   Ú#test_scaler_n_samples_seen_with_nanr”  à  s    € ô 	�‰Ú	”R—V‘V˜Q �O a¨¬B¯F©F ^°a¸¼B¿F¹F°^ÐDÌBÏJÉJô	€Að Ð#Ù˜QÓˆä‡��qÔ™iÜ�‰ÐIÔJä ¨9¸xÔH€KØ‡O�O�AÔä�{×2Ñ2´B·H±HºYÓ4GÕHrE   c                 óú   — | j                   |j                   cxu r�J ‚ J ‚| j                  |j                  cxu r�J ‚ J ‚| j                  |j                  cxu r�J ‚ J ‚| j                  |j                  k(  sJ ‚y ©N)r�   r‚   r®   r²   )Úscaler_1Úscaler_2s     rD   Ú"_check_identity_scalers_attributesr™  ó  sp   € Ø�>‰>˜XŸ^™^Ô3Ð3Ñ3Ð3Ð3Ø�=‰=˜HŸM™MÔ1Ð1Ñ1Ð1Ð1Ø�?‰?˜hŸo™oÔ5Ð5Ñ5Ð5Ð5Ø×#Ñ# x×'?Ñ'?Ò?Ð?Ñ?rE   c                 óä  — t        j                  g d¢g d¢g d¢gt         j                  ¬«      } | |«      }t        dd¬«      }|j	                  |«      }t        ||«       t        |«      }|j	                  |«      }t        ||«       t        ||«       |j                  |«       |j                  |«       t        ||«       |j                  |«       |j                  |«       t        ||«       y )Nr‘  )rk   rl   r   )rõ   r   r>   rÚ   Frï   )rG   rp   r¼   r   r  r(   r   r)   r™  r   r_   )r·   ÚX_denser‰  Útransformer_denseÚX_trans_denseÚtransformer_sparseÚX_trans_sparses          rD   Útest_scaler_return_identityr   ú  sÒ   € ô �h‰hš	¢9ªjÐ9ÄÇÁÔL€GÙ Ó(€Hä&°ÀÔGÐØ%×3Ñ3°GÓ<€MÜ�M 7Ô+äÐ0Ó1ÐØ'×5Ñ5°hÓ?€NÜ  °Ô:ä&Ð'8Ð:LÔMà×!Ñ! 'Ô*Ø×"Ñ" 8Ô,Ü&Ð'8Ð:LÔMà×Ñ˜'Ô"Ø×Ñ˜8Ô$Ü&Ð'8Ð:LÕMrE   c                 ó¼  — t         j                  j                  d«      }|j                  dd¬«      }d|d d …df<    | |«      }t	        j
                  d¬«      5  t        d¬	«      j                  |«      }|j                  |d¬
«      }d d d «       t        j                  t        j                  «      «      rJ ‚t	        j
                  d¬«      5  t        d¬	«      j                  |«      }|j                  |d¬
«      }d d d «       t        j                  t        j                  j                  «      «      rJ ‚t        j                  j                  «       t        |j                  |j                  «       t        |j                  |j                  «       t        |j!                  d¬«      g d¢d«       t        |j#                  d¬«      g d¢«       t%        |j'                  t(        «      d«      \  }}	t        ||j!                  d¬«      «       t        |	|j#                  d¬«      «       ||usJ ‚||usJ ‚|j+                  |«      }
|
|usJ ‚|
|usJ ‚t        |
|«       |j+                  |«      }||usJ ‚||usJ ‚t        |j-                  «       |«       | t.        v r�t        ddd¬«      }t	        j
                  d¬«      5  |j1                  |«      }d d d «       t3        j                  |j                  «       |j+                  |«      }t3        |j                  |j                  «       y y # 1 sw Y   �Œ±xY w# 1 sw Y   �ŒGxY w# 1 sw Y   ŒvxY w)Nr  é   ©rj   rk   r<   r   T©ÚrecordFrx   rŠ   r¤   )r¦   gX9´Èv¾ñ?gV-²ý?g      5@g‹lçû©ñø?rU   r
  r=  )rG   rº   r»   r6  rü   rý   r   r_   rƒ   rß   r  rj  r+   r�   r‚   r®   r¯   r±   r7   r‘   rD  r³   r@   r4   r  r,   )r·   rZ   rd   r‰  rf   r´   rŠ  r‹  rŒ  ÚX_sparse_scaled_stdrµ   rŽ  r?  r@  rA  s                  rD   Útest_scaler_intr§    sÝ  € ô �)‰)×
Ñ
 Ó
#€CØ�‰�B˜VˆÓ$€AØ€A‚aˆ€d�GÙ Ó"€Hä	×	 Ñ	 ¨Ö	-Ü¨%Ô0×4Ñ4°QÓ7ˆØ×#Ñ# A¨DÐ#Ó1ˆ÷ 
.ô �v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)ä	×	 Ñ	 ¨Ö	-Ü&°Ô7×;Ñ;¸HÓEˆØ'×1Ñ1°(ÀÐ1ÓFˆ÷ 
.ô �v‰v”b—h‘h˜×3Ñ3Ó4Ô5Ð5Ð5ä˜fŸl™l¨M×,?Ñ,?Ô@Ü˜fŸk™k¨=×+=Ñ+=Ô>Ü˜fŸm™m¨]×-AÑ-AÔBäØ�‰˜1ˆÓÒ?Àôô ˜hŸl™l°˜lÓ2Ò4MÔNä0BØ×ÑœuÓ% qó1Ñ-ÐÐ-ô Ð2°H·M±MÀq°MÓ4IÔJÜÐ1°8·<±<ÀQ°<Ó3GÔHð ˜1ÑÐÐØ (Ñ*Ð*Ð*à×,Ñ,¨XÓ6€MØ Ñ!Ð!Ð!Ø Ñ(Ð(Ð(Ü˜m¨QÔ/à(×:Ñ:¸?ÓKÐØ xÑ/Ð/Ð/Ø Ñ6Ð6Ð6ÜÐ2×:Ñ:Ó<¸aÔ@àœ>Ñ)Ü'°%À%ÈdÔSˆÜ×$Ñ$¨DÖ1Ø#×1Ñ1°(Ó;ˆF÷ 2ä˜6Ÿ;™;¨¯©Ô6Ø×1Ñ1°&Ó9ˆÜ˜6Ÿ;™;¨¯©Õ6ð *÷O 
.Ñ	-ú÷
 
.Ñ	-ú÷H 2Ð1ús$   Á/L8Ã/MËMÌ8MÍMÍMc                 óž  — t         j                  j                  d«      }|j                  dd«      }d|d d …df<    | |«      }|j	                  «       }t        d¬«      j                  |«       t        ||«       |j	                  «       }t        dd¬«      j                  |«       t        |j                  «       |j                  «       «       y )	Nr  rj   rk   r¦   r   FrŠ   )ry   r‹   )	rG   rº   r»   r[   r‹   r   r_   r,   r@   )r·   rZ   rd   r‰  ÚX_copyÚX_sparse_copys         rD   Útest_scaler_without_copyr«  M  s¢   € ô �)‰)×
Ñ
 Ó
#€CØ�	‰	�!�Q‹€AØ€A‚aˆ€d�GÙ Ó"€Hà�V‰V‹X€FÜ˜Ô×"Ñ" 1Ô%Ü�q˜&Ô!à—M‘M“O€MÜ˜U¨Ô/×3Ñ3°HÔ=Ü�x×'Ñ'Ó)¨=×+@Ñ+@Ó+BÕCrE   c                 óÞ  — t         j                  j                  d«      }|j                  dd«      } | |«      }t	        j
                  t        «      5  t        |d¬«       d d d «       t	        j
                  t        «      5  t        d¬«      j                  |«       d d d «       t        d¬«      j                  |«      }t	        j
                  t        «      5  |j                  |«       d d d «        | |j                  |«      «      }t	        j
                  t        «      5  |j                  |«       d d d «       y # 1 sw Y   ŒßxY w# 1 sw Y   Œ®xY w# 1 sw Y   ŒlxY w# 1 sw Y   y xY w)Nr  rj   rk   Trx   )rG   rº   r»   r[   r\   r]   r^   r   r   r_   rƒ   r³   )r·   rZ   rd   r‰  rf   ÚX_transformed_sparses         rD   Ú+test_scale_sparse_with_mean_raise_exceptionr®  ^  s  € ä
�)‰)×
Ñ
 Ó
#€CØ�	‰	�!�Q‹€AÙ Ó"€Hô 
�‰”zÕ	"Üˆh $Õ'÷ 
#ä	�‰”zÕ	"Ü Ô&×*Ñ*¨8Ô4÷ 
#ô  dÔ+×/Ñ/°Ó2€FÜ	�‰”zÕ	"Ø×Ñ˜Ô"÷ 
#ñ ,¨F×,<Ñ,<¸QÓ,?Ó@ÐÜ	�‰”zÕ	"Ø× Ñ Ð!5Ô6÷ 
#Ð	"÷ 
#Ð	"úç	"Ð	"ú÷
 
#Ð	"ú÷ 
#Ð	"ús0   ÁD?ÂEÃEÄ$E#Ä?EÅEÅE Å#E,c                  ó¦   — t         j                  ddddgg} t        j                  t        d¬«      5  t        | «       d d d «       y # 1 sw Y   y xY w)Nrk   rl   é   rõ   z8Input X contains infinity or a value too large for dtyperø   )rG   Úinfr\   r]   r^   r   ©rd   s    rD   Ú&test_scale_input_finiteness_validationr³  t  sD   € ä
�&‰&�!�Q˜˜1Ð	Ð€AÜ	�‰ÜÐUö
ô 	ˆaŒ÷
÷ 
ñ 
ús   ²AÁAc                  óÎ   — t        j                  dd«      } t        d¬«      }d}t        j                  t
        |¬«      5  |j                  | «       d d d «       y # 1 sw Y   y xY w)Nr9   r>   TrÁ   zCannot center sparse matricesrø   )r   r>  r   r\   r]   r^   r_   )r‰  rf   Úerr_msgs      rD   Útest_robust_scaler_error_sparser¶  }  sG   € Ü�{‰{˜4 Ó$€HÜ¨Ô.€FØ-€GÜ	�‰”z¨Ö	1Ø�
‰
�8Ô÷ 
2×	1Ñ	1ús   Á AÁA$rÂ   Úwith_scalingrd   rV   rq  ©Údensityc                 ór  — |r*t        j                  | «      rt        j                  d«       t	        ||¬«      }|j                  | «       |r&t        |j                  t        j                  «      sJ ‚|j                  �J ‚|r't        |j                  t        j                  «      sJ ‚y |j                  �J ‚y )Nz(RobustScaler cannot center sparse matrix)rÂ   r·  )r   r’  r\   rË   r   r_   r«   Úcenter_rG   Úndarrayr®   )rd   rÂ   r·  rf   s       rD   Útest_robust_scaler_attributesr½  …  sŒ   € ñ
 œ&Ÿ/™/¨!Ô,Ü�‰Ð>Ô?ä¨ÀlÔS€FØ
‡J�Jˆq„MáÜ˜&Ÿ.™.¬"¯*©*Ô5Ð5Ð5à�~‰~Ð%Ð%Ð%ÙÜ˜&Ÿ-™-¬¯©Ô4Ð4Ñ4à�}‰}Ð$Ð$Ñ$rE   Úcsr_containerc                 ó€  — t         j                  j                  dd«      }d|d d …df<    | |«      }t        d¬«      }|j	                  |«       |j
                  d   t        j                  d«      k(  sJ ‚|j                  |«      }t        |d d …dgf   j                  «       |d d …dgf   j                  «       «       y )Nr>   rk   r   FrÁ   r;   )rG   rº   r[   r   r_   r®   r\   rF  rƒ   r(   r@   )r¾  rd   rf   rl  s       rD   Ú"test_robust_scaler_col_zero_sparserÀ  š  s¤   € ô 	�	‰	�‰˜˜AÓ€AØ€A‚aˆ€d�GÙ�aÓ€Aä¨Ô/€FØ
‡J�Jˆq„MØ�=‰=˜ÑœvŸ}™}¨QÓ/Ò/Ð/Ð/à×Ñ˜qÓ!€GÜ�A’a˜!˜�f‘I×%Ñ%Ó'¨²°Q°C°©×)@Ñ)@Ó)BÕCrE   c                  óT  — t         j                  j                  d«      } | j                  dd«      }d|d d …df<   t	        «       }|j                  |«      j                  |«      }t        t        j                  |d¬«      ddgz  «       t        |j                  d¬«      d   d«       y )Nr   rj   rk   r¦   r¤   )
rG   rº   r»   r[   r   r_   rƒ   r+   Úmedianr±   )rZ   rd   rf   r´   s       rD   Útest_robust_scaler_2d_arraysrÃ  ª  s†   € ä
�)‰)×
Ñ
 Ó
"€CØ�	‰	�!�Q‹€AØ€A‚aˆ€d�Gä‹^€FØ�z‰z˜!‹}×&Ñ& qÓ)€HäœbŸi™i¨°qÔ9¸1À¸u¹9ÔEÜ˜hŸl™l°˜lÓ2°1Ñ5°qÕ9rE   r¹  )r   gš™™™™™©?çš™™™™™¹?rq  r;   Ústrictly_signed)ÚpositiveÚnegativerÑ   Nc                 óT  — t        j                  dd| ¬«      j                  «       }|dk(  r%t        j                  |j
                  «      |_        nn|dk(  r&t        j                  |j
                  «       |_        nC|dk(  r>t        j                  |j
                  j                  t        j                  ¬«      |_        |j                  «       }t        d¬	«      }t        d¬	«      }|j                  |«       |j                  |«       t        |j                  |j                  «       y )
Nr9   rk   r¸  rÆ  rÇ  rÑ   rÚ   FrÁ   )r   r>  ÚtocscrG   Úabsrj  rÑ   rI   r¼   r@   r   r_   r(   r®   )r¹  rÅ  r‰  r›  rŠ  Úscaler_denses         rD   Ú+test_robust_scaler_equivalence_dense_sparserÌ  ·  sÖ   € ô �{‰{˜4 ¨GÔ4×:Ñ:Ó<€HØ˜*Ò$ÜŸ™˜xŸ}™}Ó-ˆ�Ø	˜JÒ	&ÜŸ™ §¡Ó.Ð.ˆ�Ø	˜GÒ	#ÜŸ™ §¡×!4Ñ!4¼B¿J¹JÔGˆŒØ×ÑÓ €Gä °Ô6€MÜ¨uÔ5€Là×Ñ�hÔØ×Ñ�WÔä�M×(Ñ(¨,×*=Ñ*=Õ>rE   c                 ó¦  — t         j                  j                  d«      }|j                  dd«      }t        j                  g d¢g«      }t        d¬«      }|j                  |«      }|j                   | |«      «      }||j                  z  }t        |j                  «       |«       |j                  |«      }t        ||j                  «       «       y )Nr   rj   rk   )rÄ  rn   rm   r¦   rv  FrÁ   )rG   rº   r»   r[   rp   r   r_   rƒ   r®   r+   r@   r³   )r¾  rZ   rd   Ú
single_rowrf   Ú	row_transÚrow_expectedÚrow_scaled_backs           rD   Ú(test_robust_scaler_transform_one_row_csrrÒ  Í  s©   € ô �)‰)×
Ñ
 Ó
"€CØ�	‰	�!�Q‹€AÜ—‘Ò5Ð6Ó7€JÜ¨Ô/€FØ�Z‰Z˜‹]€FØ× Ñ ¡¨zÓ!:Ó;€IØ §¡Ñ-€LÜ˜i×/Ñ/Ó1°<Ô@Ø×.Ñ.¨yÓ9€OÜ˜j¨/×*AÑ*AÓ*CÕDrE   c                  ó4  — t         j                  } t        «       }|j                  | «      }t	        t        j                  |d¬«      d«       |j                  |«      }t	        | |«       t        j                  |dd¬«      }|d   |d   z
  }t	        |d«       y )Nr   r¤   ©é   éK   ©Úqr¥   r;   ©	ri  rj  r   r  r+   rG   rÂ  r³   Ú
percentile)rd   rf   rl  rm  rØ  Úiqrs         rD   Útest_robust_scaler_irisrÜ  Ü  s~   € Ü�	‰	€AÜ‹^€FØ×"Ñ" 1Ó%€GÜœbŸi™i¨°aÔ8¸!Ô<Ø×*Ñ*¨7Ó3€KÜ˜a Ô-Ü
�‰�g °Ô2€AØ
ˆA‰$��1‘‰+€CÜ˜c 1Õ%rE   c                  ó8  — t         j                  } t        d¬«      }|j                  | «      }t	        t        j                  |d¬«      d«       |j                  |«      }t	        | |«       t        j                  |dd¬«      }|d   |d   z
  }t	        |d«       y )N)r>   éZ   ©Úquantile_ranger   r¤   r×  r;   rÙ  )rd   rf   rl  rm  rØ  Úq_ranges         rD   Ú!test_robust_scaler_iris_quantilesrâ  è  s�   € Ü�	‰	€AÜ¨Ô2€FØ×"Ñ" 1Ó%€GÜœbŸi™i¨°aÔ8¸!Ô<Ø×*Ñ*¨7Ó3€KÜ˜a Ô-Ü
�‰�g °Ô2€AØ�‰d�Q�q‘T‰k€GÜ˜g qÕ)rE   Úcsc_containerc                 ó²  — t         j                  }t        d¬«      }|j                  |«      }|j	                  |«      }t        ||«       t        dd¬«      }|j                  |«      }|j	                  |«      }t        ||«        | |«      }|j                  |«      }|j	                  |«      }t        |j                  «       |j                  «       «       y )Nr8   ©Ún_quantilesÚnormal)ræ  Úoutput_distribution)ri  rj  r   r  r³   r+   r@   )rã  rd   r“  rl  rm  r‰  ÚX_sparse_tranÚX_sparse_tran_invs           rD   Útest_quantile_transform_irisrë  ô  s¿   € ä�	‰	€Aä%°"Ô5€KØ×'Ñ'¨Ó*€GØ×/Ñ/°Ó8€KÜ˜a Ô-ä%°"È(ÔS€KØ×'Ñ'¨Ó*€GØ×/Ñ/°Ó8€KÜ˜a Ô-ñ ˜QÓ€HØ×-Ñ-¨hÓ7€MØ#×5Ñ5°mÓDÐÜ˜h×.Ñ.Ó0Ð2C×2KÑ2KÓ2MÕNrE   c                 óð  — t        j                  g d¢g d¢g d¢g«      } | |«      }t        j                  g d¢g d¢g d¢g«      } | |«      }d}t        j                  t        |¬«      5  t        d¬«      j                  |«       d d d «       t        d¬	«      }d
}t        j                  t        |¬«      5  |j                  |«       d d d «       |j                  |«       d
}t        j                  t        |¬«      5  |j                  |«       d d d «       t        j                  g d¢g d¢g«      }d}t        j                  t        |¬«      5  |j                  |«       d d d «       t        d¬	«      j                  |«      }t        j                  t        d¬«      5  |j                  d«       d d d «       t        d¬	«      }d}t        j                  t        |¬«      5 }|j                  |«       d d d «       t        «      dk(  sJ ‚|j                  |j                  d   k(  sJ ‚y # 1 sw Y   �Œ©xY w# 1 sw Y   �ŒsxY w# 1 sw Y   �Œ8xY w# 1 sw Y   ŒòxY w# 1 sw Y   Œ®xY w# 1 sw Y   ŒwxY w)N)
r   rÕ  r  r   r   r   rÖ  r   r   rÆ   )
rU   rj   r   r   rl   rõ   r   r>   r   r   )
r   r   çÍÌÌÌÌÌ@çffffff@r   r   çffffff@r   ç      #@rÄ  )
éþÿÿÿrj   r   r   rl   rõ   r   r>   r   r   zmThe number of quantiles cannot be greater than the number of samples used. Got 1000 quantiles and 10 samples.rø   r>   )Ú	subsamplerå  z>QuantileTransformer only accepts non-negative sparse matrices.zKX has 2 features, but QuantileTransformer is expecting 3 features as input.z+Expected 2D array, got scalar array insteadrÆ   zn_quantiles is set to n_samplesr;   r   )rG   Ú	transposer\   r]   r^   r   r_   rƒ   r³   r   rÿ   ÚlenÚn_quantiles_rI   )rã  rd   ÚX_negrµ  r“  Ú
X_bad_featÚwarn_msgr¥  s           rD   Ú#test_quantile_transform_check_errorrù  	  sþ  € ä
�‰â/Ú+Ú4ð	
ó	€Añ 	�aÓ€AÜ�L‰Lâ/Ú,Ú4ð	
ó€Eñ ˜%Ó €Eð	ð ô
 
�‰”z¨Ö	1Ü bÔ)×-Ñ-¨aÔ0÷ 
2ô &°"Ô5€KØN€GÜ	�‰”z¨Ö	1Ø�‰˜Ô÷ 
2à‡O�O�AÔØN€GÜ	�‰”z¨Ö	1Ø×Ñ˜eÔ$÷ 
2ô —‘Ú	,Ò.VÐWó€Jð 	Vð ô 
�‰”z¨Ö	1Ø×%Ñ% jÔ1÷ 
2ô &°"Ô5×9Ñ9¸!Ó<€Kä	�‰”zÐ)VÖ	WØ×Ñ˜bÔ!÷ 
Xô &°#Ô6€KØ0€HÜ	�‰”k¨Õ	2°fØ�‰˜Ô÷ 
3äˆv‹;˜!ÒÐÐØ×#Ñ# q§w¡w¨q¡zÒ1Ð1Ñ1÷? 
2Ñ	1ú÷
 
2Ñ	1ú÷ 
2Ñ	1ú÷ 
2Ð	1ú÷
 
XÐ	Wú÷
 
3Ð	2úsH   Á*H-Â7H:Ã?IÅIÆ!I Ç$I,È-H7È:IÉIÉIÉ I)É,I5c                 óª  — t        j                  ddgddgddgddgddgg«      } | |«      }t        dd¬«      }d}t        j                  t
        |¬«      5  |j                  |«       d d d «       t        j                  ddgddgddgddgddgg«      }|j                  |«      }t        ||j                  «       «       t        j                  g d	¢«      }t        j                  g d
¢«      }t        j                  g d¢«      }	 | ||	|ff«      }|j                  |«      }t        j                  ddgddgddgddgddgddgddgddgddgg	«      }t        ||j                  «       «       t        dd¬«      }t        j                  g d¢«      }t        j                  g d¢«      }t        j                  g d¢«      }	 | ||	|ff«      }|j                  |«      }t        j                  ddgddgddgddgddgddgddgg«      }t        ||j                  «       «       t        |j                  «       |j                  |«      j                  «       «       t        dddd¬«      }|j                  |«      }t        ||j                  «       «       t        |j                  «       |j                  |«      j                  «       «       y # 1 sw Y   �ŒaxY w)Nr   r;   rU   Trk   )Úignore_implicit_zerosræ  z['ignore_implicit_zeros' takes effect only with sparse matrix. This parameter has no effect.rø   )r   r   r;   r   rU   rU   r;   r   r;   rU   r   )r   r   r;   r;   r;   r;   r;   r;   r;   r;   r;   )r   rj   r   r;   rU   rV   rj   rk   rl   r°  rõ   r¦   rq  rn   )	r:   r:   r;   r   r   r   r;   r:   r;   )	r   r   r;   r;   r;   r;   r;   r;   r;   )	r   rj   r   r;   rU   rV   rj   rk   rl   g      Ø?rõ   )rû  ræ  rò  Úrandom_state)rG   rp   r   r\   r   rÿ   r_   r  r*   r@   r³   )
rã  rd   r‰  r“  r  Ú
X_expectedrl  ÚX_dataÚX_colÚX_rows
             rD   Ú+test_quantile_transform_sparse_ignore_zerosr  C  s¸  € ä
�‰�1�a�&˜1˜a˜& 1 a &¨1¨a¨&°1°a°&Ð9Ó:€AÙ˜QÓ€HÜ%¸DÈaÔP€Kð	ð ô
 
�‰”k¨Ö	9Ø�‰˜Ô÷ 
:ô —‘˜A˜q˜6 A q 6¨A¨q¨6°A°q°6¸A¸q¸6ÐBÓC€JØ×'Ñ'¨Ó1€GÜ˜
 G§O¡OÓ$5Ô6ô �X‰XÒ7Ó8€FÜ�H‰HÒ6Ó7€EÜ�H‰HÒ6Ó7€EÙ˜f u¨e nÐ5Ó6€HØ×'Ñ'¨Ó1€GÜ—‘à�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJØ�#ˆJð
	
ó€Jô ˜
 G§O¡OÓ$5Ô6ä%¸DÈaÔP€KÜ�X‰XÒ4Ó5€FÜ�H‰HÒ0Ó1€EÜ�H‰HÒ0Ó1€EÙ˜f u¨e nÐ5Ó6€HØ×'Ñ'¨Ó1€GÜ—‘Ø
ˆQˆ�!�U�˜a ˜Z¨!¨U¨°a¸°V¸aÀ¸VÀaÈÀVÐLó€Jô ˜
 G§O¡OÓ$5Ô6ÜØ×ÑÓ˜K×9Ñ9¸'ÓB×JÑJÓLôô
 &Ø"°¸QÈQô€Kð ×'Ñ'¨Ó1€GÜ˜
 G§O¡OÓ$5Ô6ÜØ×ÑÓ˜K×9Ñ9¸'ÓB×JÑJÓLõ÷c 
:Ñ	9ús   ÁKËKc                  ó2  — t        j                  g d¢g d¢g d¢g d¢g d¢g«      } t        d¬«      }|j                  | «       |j	                  | «      }t        j
                  t        j                  dd	d¬
«      d«      j                  }t        t        j                  |d¬«      |«       t        j                  g d¢g d¢g«      }t        j                  g d¢g d¢g«      }t        |j                  |«      |«       |j                  |«      }t        | |«       y )N)r   rU   rí  )rÕ  rj   rî  )r  rl   rï  )rÖ  rõ   rð  )rÆ   r>   rÄ  rk   rå  r   r;   )Únum)rV   r;   r¤   )r:   r;   r   )ée   é   r>   )r   r   r   ©r;   r;   r;   )rG   rp   r   r_   r  ÚtileÚlinspaceÚTr*   Úsortr+   rƒ   r³   )rd   r“  rl  rý  r†   rm  s         rD   Ú!test_quantile_transform_dense_toyr  …  så   € Ü
�‰Ú	’l¢L²,ÂÐOó	€Aô &°!Ô4€KØ‡O�O�AÔð ×'Ñ'¨Ó*€GÜ—‘œŸ™ Q¨¨qÔ1°6Ó:×<Ñ<€JÜœŸ™ ¨aÔ0°*Ô=ä�X‰XâÚð	
ó€Fô —‘âÚð	
ó€Jô ˜k×3Ñ3°FÓ;¸ZÔHà×/Ñ/°Ó8€KÜ˜a Õ-rE   c                  ó  — d} d}t        j                  t         j                  j                  | df«      d¬«      }d}g }t	        |«      D ]›  }t        ||| dz  ¬«      }|j                  |«       t        j                  dd|«      t        j                  |j                  «      z
  }t        j                  t        j                  |«      «      }|d	k  sJ ‚|j                  |«       Œ� t        t        j                  |«      «      t        |«      k(  sJ ‚t        j                   | dd
dd¬«      }g }t	        |«      D ]›  }t        ||| dz  ¬«      }|j                  |«       t        j                  dd|«      t        j                  |j                  «      z
  }t        j                  t        j                  |«      «      }|dk  sJ ‚|j                  |«       Œ� t        t        j                  |«      «      t        |«      k(  sJ ‚y )Né@B r9   r;   r   r¤   rk   r>   )rü  ræ  rò  ç{®Gáz„?g®Gáz®ï?Úcsc)r¹  Úformatrü  rÄ  )rG   r
  rº   ÚsamplerÛ   r   r_   r  r­   Ú
quantiles_rZ  rÊ  Úappendrô  Úuniquer   r>  )	rb   ræ  rd   ÚROUNDÚinf_norm_arrrü  r“  ÚdiffÚinf_norms	            rD   Ú#test_quantile_transform_subsamplingr  ¥  s°  € ð €IØ€KÜ
�‰”—	‘	× Ñ  )¨Q Ó0°qÔ9€AØ€EØ€LÜ˜ežˆÜ)Ø%Ø#Ø 2‘oô
ˆð
 	�‰˜ÔÜ�{‰{˜1˜a Ó-´·±¸×9OÑ9OÓ0PÑPˆÜ—6‘6œ"Ÿ&™& ›,Ó'ˆØ˜$ŠÐˆØ×Ñ˜HÕ%ð %ô Œr�y‰y˜Ó&Ó'¬3¨|Ó+<Ò<Ð<Ð<ô 	�‰�I˜q¨$°uÈ1ÔM€AØ€LÜ˜ežˆÜ)Ø%Ø#Ø 2‘oô
ˆð
 	�‰˜ÔÜ�{‰{˜1˜a Ó-´·±¸×9OÑ9OÓ0PÑPˆÜ—6‘6œ"Ÿ&™& ›,Ó'ˆØ˜$ŠÐˆØ×Ñ˜HÕ%ð %ô Œr�y‰y˜Ó&Ó'¬3¨|Ó+<Ò<Ð<Ñ<rE   c                  óˆ  — t         j                  j                  d«      j                  d¬«      } d}t	        |d¬«      j                  | «      }t        j                  dd|«      }t        |j                  |«       t        j                  | j                  «       |«      }t        |j                  j                  «       |«       y)zCCheck the behaviour of `QuantileTransformer` when `subsample=None`.r   )éÈ   r;   r<   rk   N)ræ  rò  r;   )rG   rº   r»   rç  r   r_   r  r(   Úreferences_Úquantiler­   r  )rd   ræ  r“  Úexpected_referencesÚexpected_quantiless        rD   Ú,test_quantile_transform_subsampling_disabledr   Ô  s—   € ä
�	‰	×Ñ˜aÓ ×'Ñ'¨XÐ'Ó6€Aà€KÜ%°+ÈÔN×RÑRÐSTÓU€KäŸ+™+ a¨¨KÓ8ÐÜ�K×+Ñ+Ð-@ÔAÜŸ™ Q§W¡W£YÐ0CÓDÐÜ�K×*Ñ*×0Ñ0Ó2Ð4FÕGrE   c                 ó¦  — t        j                  g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d¢g d	¢g d
¢g
«      } | |«      }t        d¬«      }|j                  |«       |j	                  |«      }t        t        j                  |j                  «       d¬«      d«       t        t        j                  |j                  «       d¬«      d«       |j                  |«      }t        |j                  «       |j                  «       «       t        d¬«      j                  |j                  «       «      }|j                  |«      }t        t        j                  |j                  «       d¬«      d«       t        t        j                  |j                  «       d¬«      d«       |j                  |«      }t        |j                  «       |j                  «       «       y )N)r¦   rm   r¦   )g      9@ç      @r¦   )g      I@r¦   rí  )r¦   r¦   rî  )r¦   g      @r¦   )r¦   g       @r¦   )g     ÀR@r¦   rï  )r¦   g      $@r¦   )r¦   r¦   rð  )rÄ   r¦   rÄ  r>   rå  r   r¤   r¦   rn   )rG   rp   r   r_   r  r+   rk  r@   rZ  r³   rƒ   )rã  rd   r“  rl  rm  rœ  s         rD   Ú"test_quantile_transform_sparse_toyr#  á  sS  € ä
�‰âÚÚÚÚÚÚÚÚÚð	
ó	€Añ 	�aÓ€Aä%°"Ô5€KØ‡O�O�AÔà×'Ñ'¨Ó*€GÜœbŸf™f W§_¡_Ó%6¸QÔ?ÀÔEÜœbŸf™f W§_¡_Ó%6¸QÔ?ÀÔEà×/Ñ/°Ó8€KÜ˜aŸi™i›k¨;×+>Ñ+>Ó+@ÔAä+¸Ô;×?Ñ?ÀÇ	Á	ÃÓLÐà×)Ñ)¨!Ó,€GÜœbŸf™f W§_¡_Ó%6¸QÔ?ÀÔEÜœbŸf™f W§_¡_Ó%6¸QÔ?ÀÔEà#×5Ñ5°gÓ>€KÜ˜aŸi™i›k¨;×+>Ñ+>Ó+@ÕArE   c                  ó¸   — t        j                  g d¢g d¢g d¢g«      } t        | j                  dd¬«      }t        | dd¬«      }t	        ||j                  «       y )N)r   rÕ  r  rÖ  rÆ   )rU   rj   rl   rõ   r>   )rí  rî  rï  rð  rÄ  r   rk   )r¥   ræ  r;   )rG   rp   r   r	  r+   )rd   Ú
X_trans_a0Ú
X_trans_a1s      rD   Útest_quantile_transform_axis1r'    sH   € Ü
�‰Ò&Ò(8Ò:SÐTÓU€Aä# A§C¡C¨a¸QÔ?€JÜ# A¨A¸1Ô=€JÜ˜j¨*¯,©,Õ7rE   c                 ó¤  — t        j                  ddgddgddgg«      } | |«      }t        dd¬«      j                  |«      }t	        ||«       t        dd¬«      j                  |«      }t	        |j                  «       |«       t	        ||j                  «       «       t        j                  ddgddgddgg«      }t        j                  ddgddgddgg«      }t        d¬«      j                  |«      }|j                  |«      }t	        ||«       t         j                  j                  d«      }t        «       }|j                  |«       |j                  d	gg«      |j                  t        j                  |«      gg«      k(  sJ ‚|j                  d
gg«      |j                  t        j                  |«      gg«      k(  sJ ‚|j                  d	gg«      |j                  t        j                  |j                  «      gg«      k(  sJ ‚|j                  d
gg«      |j                  t        j                  |j                  «      gg«      k(  sJ ‚y )Nr   r;   rV   ©ræ  rü  rq  rÄ  rå  )r9   r;   éöÿÿÿr>   )rG   rp   r   r  r+   r@   r_   rƒ   rº   rk  rZ  r³   r  )rã  r›  r‰  rl  Ú
X_trans_sprd   ÚX1r“  s           rD   Útest_quantile_transform_boundsr-    s'  € ô �h‰h˜˜A˜  A ¨¨A¨Ð/Ó0€GÙ˜WÓ%€Hô "¨a¸aÔ@×NÑNÈwÓW€GÜ˜g wÔ/Ü$°ÀÔC×QÑQØó€Jô ˜j×0Ñ0Ó2°GÔ<Ü˜g z×'9Ñ'9Ó';Ô<ô 	�‰�1�a�&˜1˜c˜( Q¨ FÐ+Ó,€AÜ	�‰�A�s�8˜a ˜X¨¨3 xÐ0Ó	1€BÜ%°!Ô4×8Ñ8¸Ó;€KØ×#Ñ# BÓ'€GÜ˜g rÔ*ô 	�	‰	×Ñ˜Ó#€AÜ%Ó'€KØ‡O�O�AÔØ× Ñ  3 % Ó)¨[×-BÑ-BÄRÇVÁVÈAÃYÀKÀ=Ó-QÒQÐQÐQØ× Ñ  2 $ Ó(¨K×,AÑ,AÄBÇFÁFÈ1ÃIÀ;À-Ó,PÒPÐPÐPØ×(Ñ(¨3¨%¨Ó1°[×5RÑ5RÜ
�&‰&�×(Ñ(Ó
)Ð	*Ð+ó6ò ð ð ð ×(Ñ(¨2¨$¨Ó0°K×4QÑ4QÜ
�&‰&�×(Ñ(Ó
)Ð	*Ð+ó5ò ð ñ rE   c            	      ó  — t         j                  } t        j                  dgt        dz  gdgdgdgdgdgg«      }| |fD ]?  }t        dd¬	«      }|j                  |«      }|j                  |«      }t        ||d
¬«       ŒA y )Nr¦   r>   r{   rU   rV   rj   r9   r   r)  é	   r  )	ri  rj  rG   rp   r   r   r  r³   r+   )ÚX_1ÚX_2rd   r“  rl  rm  s         rD   Ú#test_quantile_transform_and_inverser2  6  sƒ   € Ü
�)‰)€CÜ
�(‰(�S�EÔ,¨rÑ1Ð2°S°E¸A¸3ÀÀÀaÀSÈ1È#ÐNÓ
O€CØ�3‹ZˆÜ)°dÈÔKˆØ×+Ñ+¨AÓ.ˆØ!×3Ñ3°GÓ<ˆÜ! ! [¸!Ö<ñ	 rE   c                  óÔ  — t        j                  t         j                  dddgt         j                  t         j                  ddgt         j                  dddgg«      } t        dd¬«      }|j	                  | «       t        j
                  |j                  d d …df   «      j                  «       sJ ‚t        j
                  |j                  d d …dd …f   «      j                  «       rJ ‚y )Nr   r;   rq  r>   r  r)  )	rG   rp   rq   r   r  r  r  rà   rß   )rd   r“  s     rD   Útest_quantile_transform_nanr4  @  s·   € Ü
�‰”2—6‘6˜1˜a Ð#¤b§f¡f¬b¯f©f°a¸Ð%=ÄÇÁÈÈ1ÈaÐ?PÐQÓR€Aä%°"À2ÔF€KØ×Ñ˜aÔ ô �8‰8�K×*Ñ*ª1¨a¨4Ñ0Ó1×5Ñ5Ô7Ð7Ð7ä�x‰x˜×.Ñ.ªq°!±"¨uÑ5Ó6×:Ñ:Ô<Ð<Ð<Ð<rE   Ú
array_typerp   r   c                 ó@  — t        j                  g d¢dz  «      }d|j                  dd«      z  }t        || «      }d}t	        |¬«      j                  |«      }|j                  d d …df   }t        |«      dk(  sJ ‚t        t        j                  |«      dk\  «      sJ ‚y )	N)r   r;   r;   rU   rU   rV   rV   rj   rk   rk   r;   r;   r/  r/  r/  rõ   rõ   r°  r>   rÄ  r:   r;   rÆ   rå  r   )
rG   rp   r5  r'   r   r_   r  rô  rà   r  )r5  rd   ræ  ÚqtÚ	quantiless        rD   Ú*test_quantile_transformer_sorted_quantilesr9  L  s•   € ô 	�‰ÒGÈ"ÑLÓM€AØˆa�i‰i˜˜AÓÑ€AÜ˜1˜jÓ)€Aà€KÜ	¨Ô	5×	9Ñ	9¸!Ó	<€Bð —‘ša ˜dÑ#€IÜˆy‹>˜SÒ Ð Ð ÜŒr�w‰w�yÓ! QÑ&Ô'Ð'Ñ'rE   c                  óÈ   — dD ]Q  } t        | ¬«      }t        j                  t        d¬«      5  |j	                  t
        j                  «       d d d «       ŒS y # 1 sw Y   Œ^xY w)N))r:   rÞ  )rñ  éýÿÿÿ)r>   r  )g      Y@r  )rÞ  r  rß  zInvalid quantile range: \(rø   )r   r\   r]   r^   r_   ri  rj  )Úrange_rf   s     rD   Ú test_robust_scaler_invalid_ranger=  `  sL   € óˆô ¨VÔ4ˆä�]‰]œ:Ð-JÖKØ�J‰J”t—y‘yÔ!÷ LÐKñ÷ LÐKús   ­ AÁA!	c                 óÜ  — t         j                  j                  d«      }|j                  dd«      }d|d d …df<    | |«      }t	        |d¬«      }t        j
                  t        j                  |«      «      rJ ‚t	        |d¬«      }t        j
                  t        j                  |j                  «      «      rJ ‚t	        |j                  «       d¬«      }t        ||j                  «       «       t        j                  t        «      5  t	        |dd¬	«       d d d «       t        |j                  d¬
«      g d¢d«       t        |j                  d¬
«      g d¢«       ||usJ ‚t!        |d«      \  }}t        ||j                  d¬
«      «       t        ||j                  d¬
«      «       t	        |ddd¬«      }t        |j                  «       |j                  «       «       y # 1 sw Y   ŒËxY w)Nr  rj   rk   r¦   r   Frx   r;   )ry   r¥   r¤   rˆ  rU   r
  Tr=  )rG   rº   r»   r[   r   rß   r  rj  rÉ  r+   r@   r\   r]   r^   r¯   r±   r7   )	r¾  rZ   rd   ÚX_csrr´   ÚX_csr_scaledÚX_csc_scaledÚX_csr_scaled_meanÚX_csr_scaled_stds	            rD   Ú%test_scale_function_without_centeringrD  n  sŒ  € ä
�)‰)×
Ñ
 Ó
#€CØ�	‰	�!�Q‹€AØ€A‚aˆ€d�GÙ˜!Ó€Eä�Q %Ô(€HÜ�v‰v”b—h‘h˜xÓ(Ô)Ð)Ð)ä˜¨%Ô0€LÜ�v‰v”b—h‘h˜|×0Ñ0Ó1Ô2Ð2Ð2ô ˜Ÿ™›°%Ô8€LÜ˜h¨×(<Ñ(<Ó(>Ô?ô 
�‰”zÕ	"Üˆe˜u¨1Õ-÷ 
#ô Ø�‰˜1ˆÓÒ?Àôô ˜hŸl™l°˜lÓ2Ò4MÔNà˜1ÑÐÐä*<¸\È1Ó*MÑ'ÐÐ'ÜÐ/°·±ÀA°Ó1FÔGÜÐ.°·±À!°Ó0DÔEô ˜¨%¸%ÀdÔK€LÜ˜eŸm™m›o¨|×/CÑ/CÓ/EÕF÷! 
#Ð	"ús   Ä	G"Ç"G+c                  óÞ   — t         j                  } t        | d¬«      }t        t	        j
                  |d¬«      d«       t	        j                  |dd¬«      }|d   |d   z
  }t        |d«       y )Nr;   r¤   r   rÔ  r×  ©ri  rj  r   r+   rG   rÂ  rÚ  ©rd   rl  rØ  rÛ  s       rD   Útest_robust_scale_axis1rH  “  sY   € Ü�	‰	€AÜ˜1 1Ô%€GÜœbŸi™i¨°aÔ8¸!Ô<Ü
�‰�g °Ô2€AØ
ˆA‰$��1‘‰+€CÜ˜c 1Õ%rE   c                  óâ   — t         j                  d d …df   } t        | «      }t        t	        j
                  |«      d«       t	        j                  |d¬«      }|d   |d   z
  }t        |d«       y )Nr;   r   rÔ  )rØ  rF  rG  s       rD   Útest_robust_scale_1d_arrayrJ  œ  sZ   € Ü�	‰	’!�Q�$‰€AÜ˜1‹o€GÜœbŸi™i¨Ó0°!Ô4Ü
�‰�g Ô*€AØ
ˆA‰$��1‘‰+€CÜ˜c 1Õ%rE   c                  ó"  — g d¢g d¢g d¢g} t        «       }|j                  | «      }g d¢g d¢g d¢g}t        ||«       |j                  |«      }t        | |«       g d¢g d¢g d	¢g}|j	                  |«      }g d
¢g d¢g d¢g}t        ||d¬«       y )Nrp  rr  rs  rx  )r¦   r¦   rv  ry  rt  ru  rw  )r¦   rn   r¦   )rv  r¦   g_Ò­£ªê¿)r¦   r¦   gÑ–s)®ªú?rV   r  )r   r  r+   r³   rƒ   )rd   rf   rl  rý  rm  r{  r}  ÚX_expected_news           rD   Ú)test_robust_scaler_zero_variance_featuresrM  ¥  s•   € â	Ò+Ò-=Ð>€Aä‹^€FØ×"Ñ" 1Ó%€Gò #Ò$4Ò6FÐG€JÜ˜g zÔ2Ø×*Ñ*¨7Ó3€KÜ˜a Ô-ò Ò/Ò1AÐB€EØ×"Ñ" 5Ó)€KÚ'Ò)>Ò@UÐV€NÜ˜k¨>À1ÖErE   c                  ó8  — t         j                  j                  d«      } | j                  dd«      }t        j                  |t        j
                  d«      dz  t        j
                  d«      dz  g«      }d}t        |d¬	«      j                  |«      }|j                  |«      }|j                  t        j                  d
d¬«      k(  sJ ‚|j                  t        j                  dd¬«      k(  sJ ‚|j                  «       t        j                  dd¬«      k(  sJ ‚y )Nr  r  r;   )rÆ   r;   rÆ   iœÿÿÿ)r;   éc   T)rà  Úunit_variancer   çü©ñÒMbP?)rÊ  r  )rG   rº   r»   r[   Úvstackr€   r   r_   rƒ   r»  r\   rF  r®   r±   )rZ   rd   ÚX_with_outliersrà  Úrobust_scalerrl  s         rD   Ú test_robust_scaler_unit_variancerU  ¾  sè   € ô �)‰)×
Ñ
 Ó
#€CØ�	‰	�'˜1Ó€AÜ—i‘i ¤B§G¡G¨HÓ$5¸Ñ$;¼R¿W¹WÀXÓ=NÐQUÑ=UÐ VÓW€Oà€NÜ °ÈdÔS×WÑWØó€Mð ×%Ñ% aÓ(€Gà× Ñ ¤F§M¡M°!¸Ô$>Ò>Ð>Ð>Ø×Ñ¤6§=¡=°¸Ô#=Ò=Ð=Ð=Ø�;‰;‹=œFŸM™M¨!°Ô6Ò6Ð6Ñ6rE   c                 ó4  — g d¢g d¢g d¢g d¢g}t        «       }|j                  |«      }g d¢g d¢g d¢g d¢g}t        ||«       |j                  |«      }t        ||«       g d¢g d	¢g d¢g}|j	                  |«      }g d
¢g d	¢g d¢g}t        ||d¬«       t        |«      }t        ||«        | |«      }	|j                  |	«      }
g d¢g d¢g d¢g d¢g}t        |
j                  «       |«       |j                  |
«      }t        ||j                  «       «       y )Nrp  )r¦   rn   ç333333Ó¿rw  rx  )r¦   rn   çUUUUUUÕ?)r¦   rn   gš™™™™™É¿)r¦   rn   rn   rt  ru  )r¦   rm   rX  rU   r  )r   r  r+   r³   rƒ   r   r@   )r·   rd   rf   rl  rý  rm  r{  r}  rL  r‰  rŸ  ÚX_trans_sparse_invs               rD   Ú)test_maxabs_scaler_zero_variance_featuresrZ  Ð  s  € ò 
Ò+Ò-=Ò?OÐP€Aä‹^€FØ×"Ñ" 1Ó%€GâÚÚÚð	€Jô ˜g zÔ2Ø×*Ñ*¨7Ó3€KÜ˜a Ô-ò Ò/Ò1AÐB€EØ×"Ñ" 5Ó)€KÚ,Ò.>Ò@PÐQ€Nä˜k¨>À1ÕEô ˜1‹o€GÜ˜g zÔ2ñ   Ó"€HØ×)Ñ)¨(Ó3€NâÚÚÚð	€Jô ˜n×4Ñ4Ó6¸
ÔCØ×1Ñ1°.ÓAÐÜ˜aÐ!3×!;Ñ!;Ó!=Õ>rE   c                  óŠ   — g d¢g d¢g d¢g d¢g} t        «       }|j                  | «      }g d¢g d¢g d¢g d¢g}t        ||«       y )	N)r¦   rn   rq  rv  )r¦   rn   rW  rg  )r¦   rn   g      YÀr¦   )r¦   r¦   r¦   g       À)r¦   rn   g{®Gázt?rg  )r¦   rn   gú~j¼t“h¿g      Ð¿)r¦   rn   rv  r¦   )r¦   r¦   r¦   rv  )r   r  r+   )rd   rf   rl  rý  s       rD   Ú'test_maxabs_scaler_large_negative_valuer\  ú  sO   € ò 	ÚÚÚð		€Aô ‹^€FØ×"Ñ" 1Ó%€GâÚ!ÚÚð	€Jô ˜g zÕ2rE   c                 óJ  —  | g d¢g«      }t        «       }|j                  |«      }|j                  |«      } | g d¢g«      }t        |j	                  «       |j	                  «       «       |j                  |«      }t        |j	                  «       |j	                  «       «       y )N)rq  rn   rn   rz  )r   r_   rƒ   r+   r@   r³   )r¾  rd   rf   rl  rý  rµ   s         rD   Ú(test_maxabs_scaler_transform_one_row_csrr^    s…   € ñ 	’Ð'Ó(€AÜ‹^€FØ�Z‰Z˜‹]€FØ×Ñ˜qÓ!€GÙ¢Ð0Ó1€JÜ˜gŸo™oÓ/°×1CÑ1CÓ1EÔFØ×,Ñ,¨WÓ5€MÜ˜aŸi™i›k¨=×+@Ñ+@Ó+BÕCrE   c                  ó  — t         t        t        t        fD �]  } t        d¬«      }|j	                  | «      j                  | «      }t        | t        «      rt        j                  | «      } t        | «      dk(  rGt        t        j                  |j                  d¬«      «      t        j                  t        «      «       n/t        t        j                  |j                  d¬«      «      d«       |j                   | j"                  d   k(  sJ ‚|j%                  |«      }t        || «       �Œ t        j                  d«      } t        «       }|j	                  | «      j                  | «      }t        t        j                  |j                  d¬«      «      d«       |j                   | j"                  d   k(  sJ ‚t         j'                  «       }t        j                  |«      j                  «       }t        ||z  t)        |d¬«      «       y )NTrŠ   r;   r   r¤   rn   r§   )r¨   r©   rª   r   r_   rƒ   r«   r¬   rG   rp   rJ   r+   rÊ  rZ  r€   rc   r²   rI   r³   r­   r   )rd   rf   r´   rµ   r„  Úmax_abss         rD   Útest_maxabs_scaler_1dra    sx  € ä”fœk¬;Ô7ˆÜ 4Ô(ˆØ—:‘:˜a“=×*Ñ*¨1Ó-ˆä�aœÔÜ—‘˜“ˆAä˜AÓ !Ò#Ü%¤b§f¡f¨X¯\©\¸q¨\Ó-AÓ&BÄBÇGÁGÌJÓDWÕXä%¤b§f¡f¨X¯\©\¸q¨\Ó-AÓ&BÀCÔHØ×%Ñ%¨¯©°©Ò3Ð3Ð3ð ×0Ñ0°Ó:ˆÜ! -°Ö3ð 8ô$ 	�‰�‹€AÜ‹^€FØ�z‰z˜!‹}×&Ñ& qÓ)€HÜœbŸf™f X§\¡\°q \Ó%9Ó:¸CÔ@Ø×!Ñ! Q§W¡W¨Q¡ZÒ/Ð/Ð/ô �<‰<‹>€DÜ�f‰f�T‹l×ÑÓ €GÜ˜d W™n¬l¸4ÀdÔ.KÕLrE   c           
      ó˜  — t         d d…d d …f   }|j                  d   }ddd||dz   fD �]  }t        «       j                  |«      }t        «       }t        «       }t        «       }t	        ||«      D ]N  }|j                  ||   «      } | ||   «      }	|j                  |	«      } | ||   «      }
|j                  |
«      }ŒP t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |j                  «       |j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |j                  «       t        |j                  |«      |j                  |«      «       t        d|«      }t        «       j                  ||   «      }t        «       j                  ||   «      }t        |j                  |j                  «       |j                  |j                  k(  sJ ‚t        |j                  |j                  «       t        |j                  |«      |j                  |«      «       t        «       j                  |«      }t        «       }t        t	        ||«      «      D ]H  \  }}|j                  ||   «      }t        ||j                  |j                  |||j                  ¬«       ŒJ �Œ! y )NrÆ   r   r;   rU   r  r  r  )r  rI   r   r_   r!   r   r+   Úmax_abs_r²   r®   rƒ   r%  r&  rS   r'  r(  )r¾  rd   rP   rQ   r*  r+  Úscaler_incr_csrÚscaler_incr_cscr,  r?  ÚX_cscr-  rM   s                rD   Útest_maxabs_scaler_partial_fitrg  ;  sË  € ô 	ˆTˆcˆT’1ˆW‰€AØ	�‰�‰
€Aà˜!˜R  A¨¡FÔ+ˆ
ä#“~×)Ñ)¨!Ó,ˆä"“nˆÜ&›.ˆÜ&›.ˆÜ   JÖ/ˆEØ%×1Ñ1°!°E±(Ó;ˆKÙ! ! E¡(Ó+ˆEØ-×9Ñ9¸%Ó@ˆOÙ! ! E¡(Ó+ˆEØ-×9Ñ9¸%Ó@‰Oð 0ô 	" ,×"7Ñ"7¸×9MÑ9MÔNÜ! ,×"7Ñ"7¸×9QÑ9QÔRÜ! ,×"7Ñ"7¸×9QÑ9QÔRØ×+Ñ+¨{×/JÑ/JÒJÐJÐJØ×+Ñ+¨×/NÑ/NÒNÐNÐNØ×+Ñ+¨×/NÑ/NÒNÐNÐNÜ! ,×"5Ñ"5°{×7IÑ7IÔJÜ! ,×"5Ñ"5°×7MÑ7MÔNÜ! ,×"5Ñ"5°×7MÑ7MÔNÜ! ,×"8Ñ"8¸Ó";¸[×=RÑ=RÐSTÓ=UÔVô �q˜*Ó%ˆÜ#“~×)Ñ)¨!¨F©)Ó4ˆÜ"“n×0Ñ0°°6±Ó;ˆä! ,×"7Ñ"7¸×9MÑ9MÔNØ×+Ñ+¨{×/JÑ/JÒJÐJÐJÜ! ,×"5Ñ"5°{×7IÑ7IÔJÜ! ,×"8Ñ"8¸Ó";¸[×=RÑ=RÐSTÓ=UÔVô $“~×)Ñ)¨!Ó,ˆÜ"“nˆÜ!¤+¨a°Ó"<Ö=‰HˆAˆuØ%×1Ñ1°!°E±(Ó;ˆKÜØØ!ŸK™KØ Ÿ:™:ØØ%Ø*×:Ñ:öò >ñM ,rE   c                 ó  — | dk(  rTt        j                  |«      j                  d¬«      }t        d«      D ]  }t	        ||   d«       Œ t	        |d   d«       y	| dk(  rUt        d«      D ]$  }t	        t        j                  ||   «      d«       Œ& t	        t        j                  |d   «      d«       y	| dk(  rJt        |«      j                  d¬«      }t        d«      D ]  }t	        ||   d«       Œ t	        |d   d«       y	y	)
zr
    Convenient checking function for `test_normalizer_l1_l2_max` and
    `test_normalizer_l1_l2_max_non_csr`
    rV  r;   r¤   rV   rn   r¦   rY  rZ  N)rG   rÊ  rE  rÛ   r*   ÚlarX  rZ  )rX  ÚX_normÚrow_sumsrM   Úrow_maxss        rD   Úcheck_normalizerrm  t  sÝ   € ð
 ˆt‚|Ü—6‘6˜&“>×%Ñ%¨1Ð%Ó-ˆÜ�q–ˆAÜ ¨¡¨SÕ1ð ä˜H Q™K¨Õ-Ø	�ŠÜ�q–ˆAÜ¤§¡¨¨q©	Ó 2°CÕ8ð äœBŸG™G F¨1¡IÓ.°Õ4Ø	�ŠÜ�v“;—?‘?¨�?Ó*ˆÜ�q–ˆAÜ ¨¡¨SÕ1ð ä˜H Q™K¨Õ-ð	 
rE   rX  ©rV  rY  rZ  c                 óì  — t         j                  j                  d«      }|j                  dd«      } ||«      }d|dd d …f<   |j                  d   }|j                  d   }d|j
                  ||  ||«      }|||fD ]u  }t        | d¬«      }	|	j                  |«      }
|
|usJ ‚t        |
«      }
t        | d¬«      }	|	j                  |«      }||u sJ ‚t        |«      }|
|fD ]  }t        | |«       Œ Œw y )	Nr   rj   rk   r¦   rV   T©rX  r‹   F)
rG   rº   r»   r[   Úindptrrj  r   rƒ   r@   rm  )rX  r¾  rZ   r›  ÚX_sparse_unprunedÚindptr_3Úindptr_4ÚX_sparse_prunedrd   Ú
normalizerÚX_norm1ÚX_norm2rj  s                rD   Útest_normalizer_l1_l2_maxry  ‰  s  € ô �)‰)×
Ñ
 Ó
"€CØ�i‰i˜˜1‹o€GÙ% gÓ.Ðð €GˆAŠqˆD�Mð !×'Ñ'¨Ñ*€HØ ×'Ñ'¨Ñ*€HØ03Ð×Ñ˜8 HÐ-ñ $ GÓ,€Oð �Ð(9Ó:ˆÜ T°Ô5ˆ
Ø×&Ñ& qÓ)ˆØ˜aÑÐÐÜ˜'Ó"ˆä T°Ô6ˆ
Ø×&Ñ& qÓ)ˆØ˜!‰|Ðˆ|Ü˜'Ó"ˆà Ó(ˆFÜ˜T 6Õ*ñ )ñ ;rE   c                 óF  — t         j                  j                  d«      }|j                  dd«      }d|dd d …f<    ||«      }t	        | d¬«      j                  |«      }||usJ ‚t        j                  |«      r|j                  dk(  sJ ‚t        |«      }t        | |«       y )	Nr   rj   rk   r¦   rV   Frp  Úcsr)rG   rº   r»   r[   r   rƒ   r   r’  r  r@   rm  )rX  r·   rZ   r›  rd   rj  s         rD   Ú!test_normalizer_l1_l2_max_non_csrr|  «  s“   € ô
 �)‰)×
Ñ
 Ó
"€CØ�i‰i˜˜1‹o€Gð €GˆAŠqˆD�Má˜Ó!€AÜ˜T¨Ô.×8Ñ8¸Ó;€Fà˜‰?Ðˆ?Ü�?‰?˜6Ô" v§}¡}¸Ò'=Ð=Ð=ä�V‹_€FÜ�T˜6Õ"rE   c           	      óô  — t         j                  j                  d«      }|j                  dd«      }d|dd d …f<   |dt	        |dd d …f   «      j                  «       fxx   dz  cc<   t        j                  |«       } | |«      }|||fD ]k  }t        d¬	«      }|j                  |«      }||usJ ‚t        |«      }t        t        j                  |«      t        j                  t        |«      «      «       Œm y )
Nr   rj   rk   r¦   rV   rU   r:   rZ  rW  )rG   rº   r»   r[   rÊ  Úargmaxr   rƒ   r@   r,   Úsign)r¾  rZ   r›  Ú	X_all_negÚX_all_neg_sparserd   rv  rj  s           rD   Útest_normalizer_max_signr‚  À  sÜ   € ô �)‰)×
Ñ
 Ó
"€CØ�i‰i˜˜1‹o€Gà€GˆAŠqˆD�Mð ˆAŒs�7˜1ša˜4‘=Ó!×(Ñ(Ó*Ð*Ó+¨rÑ1Ó+Ü—‘˜“Ð €IÙ$ YÓ/Ðà�yÐ"2Ó3ˆÜ UÔ+ˆ
Ø×%Ñ% aÓ(ˆØ˜Q‰ÐˆÜ˜“ˆÜœ2Ÿ7™7 6›?¬B¯G©G´G¸A³JÓ,?Õ@ñ 4rE   c                 ó*  — t         j                  j                  d«      j                  dd«      }t	        t        |d¬«      t        |j                  dd¬«      j                  «       t         j                  j                  d«      }|j                  dd	«      } | |«      }t        j                  d«      }||fD ]¶  }t         j                  t         j                  fD ]‘  }d
D ]Š  }|j                  |«      }t        ||¬«      }|j                  |k(  sJ ‚t        |«      }|dk(  r&t        j                  |«      j                  d¬«      }	n|dz  }
|
j                  d¬«      }	t        |	|«       ŒŒ Œ“ Œ¸ t        j                   g d¢g d¢g d¢g«      }dD ]‚  }t        ||d¬«      \  }}|dk(  r"t        |t        j                   g d¢«      «       Œ;|dk(  r"t        |t        j                   g d¢«      «       Œbt        |t        j                   g d¢«      «       Œ„  | |«      }d
D ]2  }t#        j$                  t&        «      5  t        ||d¬«       d d d «       Œ4 t        |dd¬«      \  }}t        |t        j                   g d¢«      «       y # 1 sw Y   ŒqxY w)Né%   rV   rU   FrŠ   r   )r¥   r‹   r>   rk   )rV  rY  rW  rV  r;   r¤   )rí   r   r"  )rn   r¦   r¦   )rm   rí   r¦   rn  T)rX  Úreturn_norm)ç      @rn   rî   rY  )rî   rn   g1œ¥C+Ø@)r"  rn   rí   rZ  )rG   rº   r»   r[   r,   r   r	  r€   r½   r¼   r‘   r”   r@   rÊ  rE  r+   rp   r\   r]   ÚNotImplementedError)r¾  rd   Úrsr›  r‰  r€   r”   rX  rj  rk  ÚX_norm_squaredÚ_Únormss                rD   Útest_normalizerŒ  Õ  s  € ô 	�	‰	×Ñ˜bÓ!×'Ñ'¨¨1Ó-€AÜ”y ¨Ô/´¸1¿3¹3ÀQÈUÔ1S×1UÑ1UÔVä	�‰×	Ñ	˜qÓ	!€BØ�h‰h�r˜1‹o€GÙ˜WÓ%€HÜ�7‰7�B‹=€DØ�xÓ ˆÜ—j‘j¤"§*¡*Ó-ˆEÛ$�Ø—H‘H˜U“O�Ü" 1¨4Ô0�Ø—|‘| uÒ,Ð,Ð,ä  ›�Ø˜4’<Ü!Ÿv™v f›~×1Ñ1°qÐ1Ó9‘Hà%+¨Q¡Y�NØ-×1Ñ1°qÐ1Ó9�Hä)¨(°DÕ9ñ %ñ .ð !ô" �h‰hš¢ºÐHÓI€GÛ#ˆÜ˜W¨4¸TÔB‰ˆˆ5Ø�4Š<Ü% e¬R¯X©X²oÓ-FÕGØ�TŠ\Ü% e¬R¯X©XÒ6LÓ-MÕNä% e¬R¯X©X²oÓ-FÕGð $ñ ˜WÓ%€HÛˆÜ�]‰]Ô.Õ/Ü�h T°tÕ<÷ 0Ð/ð ô ˜¨¸4Ô@�H€A€uÜ˜e¤R§X¡XªoÓ%>Õ?÷ 0Ð/ús   È=J	Ê	J	Úconstructorc                 óÆ  — t        j                  g d¢g d¢g«      } | |j                  «       «      }t        dd¬«      }t	        |j                  |«      «      }t        j                  |dk(  «      dk(  sJ ‚t        j                  |dk(  «      d	k(  sJ ‚|j                  |«      }t        j                  |«      t        j                  |«      k(  sJ ‚t        d¬
«      j                  |«      }t	        |j                  |«      «      }||usJ ‚t        j                  |dk(  «      d	k(  sJ ‚t        j                  |dk(  «      dk(  sJ ‚t        d¬
«      }|j                  |«      }||usJ ‚t	        |«      }t        j                  |dk(  «      d	k(  sJ ‚t        j                  |dk(  «      dk(  sJ ‚t        d¬
«      }|j                  |«      }| t        ur||u sJ ‚t        d¬
«      }t        j                  g d¢g d¢gt         j                  ¬«      }|j                  |«      }| t        ur||u sJ ‚t	        |«      }t        j                  |dk(  «      d	k(  sJ ‚t        j                  |dk(  «      dk(  sJ ‚t        dd¬«      }| t         j                  t        fv r{ | |j                  «       «      }t	        |j                  |«      «      }t        j                  |dk(  «      dk(  sJ ‚t        j                  |dk(  «      dk(  sJ ‚|j                  |«      }| t        v r:t        j                  t        «      5  |j                   | |«      «       d d d «       y y # 1 sw Y   y xY w)N)r;   r   rk   )rU   rV   r:   rm   T)Ú	thresholdr‹   r   rj   r;   rU   rŠ   FrÚ   rg  rk   )rG   rp   r‹   r   r@   rƒ   rE  r   r’  r_   r¬   r¼   r3   r\   r]   r^   )r�  ÚX_rd   Ú	binarizerÚX_binÚX_floats         rD   Útest_binarizerr”    sù  € ô 
�‰’9šjÐ)Ó	*€BÙ�B—G‘G“IÓ€Aä C¨dÔ3€IÜ�I×'Ñ'¨Ó*Ó+€EÜ�6‰6�%˜1‘*Ó Ò"Ð"Ð"Ü�6‰6�%˜1‘*Ó Ò"Ð"Ð"Ø×Ñ Ó"€EÜ�?‰?˜1Ó¤§¡°Ó!7Ò7Ð7Ð7ä˜tÔ$×(Ñ(¨Ó+€IÜ�I×'Ñ'¨Ó*Ó+€EØ˜‰>Ðˆ>Ü�6‰6�%˜1‘*Ó Ò"Ð"Ð"Ü�6‰6�%˜1‘*Ó Ò"Ð"Ð"ä˜tÔ$€IØ×Ñ Ó"€EØ˜‰>Ðˆ>Ü�E‹N€EÜ�6‰6�%˜1‘*Ó Ò"Ð"Ð"Ü�6‰6�%˜1‘*Ó Ò"Ð"Ð"ä˜uÔ%€IØ×Ñ Ó"€EØœ$ÑØ˜‰zÐˆzä˜uÔ%€IÜ�h‰hš	¢:Ð.´b·j±jÔA€GØ×Ñ Ó(€EØœ$ÑØ˜ÑÐÐä�E‹N€EÜ�6‰6�%˜1‘*Ó Ò"Ð"Ð"Ü�6‰6�%˜1‘*Ó Ò"Ð"Ð"ä D¨tÔ4€IØ”r—x‘x¤Ð&Ñ&Ù˜Ÿ™›	Ó"ˆä˜	×+Ñ+¨AÓ.Ó/ˆÜ�v‰v�e˜q‘jÓ! QÒ&Ð&Ð&Ü�v‰v�e˜q‘jÓ! QÒ&Ð&Ð&Ø×#Ñ# AÓ&ˆð ”nÑ$Ü�]‰]œ:Õ&Ø×Ñ¡¨A£Ô/÷ 'Ð&ð %ß&Ð&ús   Ì5MÍM c                 óŠ  — t        | |«      }|ddfD ]£  }t        j                  t        j                  g d¢|¬«      d«      }|j                  ||¬«      }t	        d¬«      j                  |«      }t        d	¬
«      5  t	        d¬«      j                  |«      }d d d «       t        t        |«      |«       Œ¥ y # 1 sw Y   Œ"xY w)NrP  Úint64)r   r;   rU   rV   rj   rÚ   )r:   r;   rŒ   r|   )r�  TrŽ   )	r&   rG   r5  rH   r   r  r   r,   r#   )	r]  r�   r\  r�   Údtype_name_ÚX_npr•   Úbinarized_npÚbinarized_xps	            rD   Útest_binarizer_array_api_intr›  <  s    € ô
 
˜o¨vÓ	6€BØ" G¨WÓ5ˆÜ�z‰zœ"Ÿ*™*¢_¸KÔHÈ'ÓRˆØ�z‰z˜$ vˆzÓ.ˆÜ ¨3Ô/×=Ñ=¸dÓCˆÜ¨tÖ4Ü$¨sÔ3×AÑAÀ$ÓGˆL÷ 5äÔ,¨\¸2Ó>ÀÕMñ 6÷ 5Ð4ús   Á<B9Â9C	c                  ó¬  — t         j                  j                  d«      } | j                  d«      }t	        d¬«      }|j                  |«       |j                  |«      }t        j                  ||j                  «      }t        «       }t        j                  ||j                  «      }|j                  |«      }t        ||«       | j                  d«      }t        j                  ||j                  «      }	|j                  |«      }
t        j                  |
|j                  «      }|j                  |	«      }t        ||«       t        j                  |«      |j                  d   z  }|||z  z
  ||z  z
  ||z  |z  z   }t        ||«       t        j                  |	«      |j                  d   z  }|	||z  z
  |	|z  z
  ||z  |z  z   }t        ||«       y )Nr   ©rk   rj   Frú   )rU   rj   )rG   rº   r»   Úrandom_sampler   r_   rƒ   Údotr	  r   r  r+   Ú	ones_likerI   r(   )rZ   ÚX_fitrf   ÚX_fit_centeredÚK_fitÚcentererÚK_fit_centeredÚK_fit_centered2ÚX_predÚK_predÚX_pred_centeredÚK_pred_centeredÚK_pred_centered2Úones_MÚK_fit_centered3Úones_prime_MÚK_pred_centered3s                    rD   Útest_center_kernelr°  K  s¦  € ô �)‰)×
Ñ
 Ó
"€CØ×Ñ˜fÓ%€EÜ UÔ+€FØ
‡J�JˆuÔØ×%Ñ% eÓ,€NÜ�F‰F�5˜%Ÿ'™'Ó"€Eô Ó€HÜ—V‘V˜N¨N×,<Ñ,<Ó=€NØ×,Ñ,¨UÓ3€OÜ˜n¨oÔ>ð ×Ñ˜vÓ&€FÜ�V‰V�F˜EŸG™GÓ$€FØ×&Ñ& vÓ.€OÜ—f‘f˜_¨n×.>Ñ.>Ó?€OØ×)Ñ)¨&Ó1ÐÜ˜oÐ/?Ô@ô �\‰\˜%Ó  5§;¡;¨q¡>Ñ1€FØ˜f u™nÑ,¨u°v©~Ñ=ÀÈÁÐQWÑ@WÑW€OÜ�N OÔ4ô —<‘< Ó'¨%¯+©+°a©.Ñ8€Là� Ñ%Ñ%¨°©Ñ7¸,ÈÑ:NÐQWÑ:WÑWð ô �OÐ%5Õ6rE   c                  ó‚  — t         j                  j                  d«      } | j                  dd«      | j                  dd«      }}d„ } ||«      } ||«      }t	        d¬«      }|j                  |«      }|j                  |«      }||j                  z  }	||j                  z  }
||j                  z  }||j                  z  }t        «       }|j                  |	«       t        |j                  |	«      |«       t        |j                  |
«      |«       t        j                  |	«      |	j                  d   z  }|	||	z  z
  |	|z  z
  ||	z  |z  z   }t        |j                  |	«      |«       t        j                  |
«      |	j                  d   z  }|
||	z  z
  |
|z  z
  ||	z  |z  z   }t        |j                  |
«      |«       y)	z-Check kernel centering for non-linear kernel.r   rÆ   r  r¢  c                 óŠ   — t        j                  t        j                  | dd¬«      t        j                  | dd¬«       g«      S )zOur mapping function phi.r   N)Úa_minÚa_max)rG   rR  rU  r²  s    rD   Úphiz2test_kernelcenterer_non_linear_kernel.<locals>.phi|  s;   € ä�y‰yä—‘˜ ¨$Ô/Ü—‘˜ $¨aÔ0Ð0ðó
ð 	
rE   Frú   N)rG   rº   r»   r[   r   r  rƒ   r	  r   r_   r(   r   rI   )rZ   rd   r†   rµ  Úphi_XÚ
phi_X_testrf   Úphi_X_centerÚphi_X_test_centerÚKÚK_testÚK_centerÚK_test_centerÚkernel_centererr¬  Ú
K_centeredr®  ÚK_test_centereds                     rD   Ú%test_kernelcenterer_non_linear_kernelrÁ  w  s§  € ä
�)‰)×
Ñ
 Ó
"€CØ—	‘	˜#˜rÓ" C§I¡I¨b°"Ó$5€v€Aò
ñ �‹F€EÙ�V“€Jô  UÔ+€FØ×'Ñ'¨Ó.€LØ×(Ñ(¨Ó4Ðð 	�—‘‰€AØ˜%Ÿ'™'Ñ!€FØ˜lŸn™nÑ,€HØ%¨¯©Ñ6€Mä$Ó&€OØ×Ñ˜Ôä�O×-Ñ-¨aÓ0°(Ô;Ü�O×-Ñ-¨fÓ5°}ÔEô �\‰\˜!‹_˜qŸw™w q™zÑ)€FØ�V˜a‘Z‘ ! f¡*Ñ,¨v¸©z¸FÑ/BÑB€JÜ�O×-Ñ-¨aÓ0°*Ô=ô —<‘< Ó'¨!¯'©'°!©*Ñ4€Là� Ñ!Ñ! F¨V¡OÑ3°lÀQÑ6FÈÑ6OÑOð ô �O×-Ñ-¨fÓ5°ÕGrE   c                  ón  — t        j                  g d¢g d¢g d¢g d¢g«      } t        j                  d«      }| j                  | j                  «      }t        «       }t        d|fdt        «       fg«      }|j                  «       j                  j                  sJ ‚t        |||d¬	«      }t        ||«       y )
N)rV   r   r   )r   rV   r   )r   r   rV   r  )rj   r¾  ÚsvrrU   )Úcv)rG   rp   r€   rŸ  r	  r   r   r    Ú__sklearn_tags__Ú
input_tagsÚpairwiser   r+   )rd   Úy_truerº  ÚkcentÚpipelineÚy_preds         rD   Útest_cv_pipeline_precomputedrÌ  ­  s˜   € ô 	�‰’)šYª	²9Ð=Ó>€AÜ�W‰W�T‹]€FØ	�‰ˆa�c‰c‹
€AÜÓ€EÜÐ+¨UÐ3°e¼S»U°^ÐDÓE€Hð ×$Ñ$Ó&×1Ñ1×:Ò:Ð:Ð:ô
 ˜x¨¨F°qÔ9€FÜ˜f fÕ-rE   c                  ó"  — t         j                  j                  d«      } | j                  d«      }t	        «       t        «       t        «       fD ]?  }|j                  |«      j                  |«      }|j                  |«      }t        ||«       ŒA y )Nr   r�  )rG   rº   r»   rž  r   r   r   r_   rƒ   r  r,   )rZ   rd   ÚobjÚX_transformedÚX_transformed2s        rD   Útest_fit_transformrÑ  Á  sp   € Ü
�)‰)×
Ñ
 Ó
"€CØ×Ñ˜&Ó!€AÜÓ ¤*£,´	³Ó<ˆØŸ™ ›
×,Ñ,¨QÓ/ˆØ×*Ñ*¨1Ó-ˆÜ˜=¨.Õ9ñ =rE   c                  óZ   — ddgddgddgg} t        | «      } t        | g d¢g d¢g d¢g«       y ©Nr;   r   )r;   r;   r   ro   )r   r,   r²  s    rD   Útest_add_dummy_featurerÔ  Ê  s5   € Ø
ˆQˆ�!�Q�˜!˜Q˜Ð €AÜ˜!Ó€AÜ�qš9¢i²Ð;Õ<rE   c                 óð   —  | ddgddgddgg«      }|j                   }t        |«      }t        j                  |«      r|j                   |k(  sJ |«       ‚t	        |j                  «       g d¢g d¢g d¢g«       y rÓ  )r  r   r   r’  r,   r@   )r·   rd   Údesired_formats      rD   Útest_add_dummy_feature_sparser×  Ð  sm   € ñ 	˜1˜a˜& 1 a &¨1¨a¨&Ð1Ó2€AØ—X‘X€NÜ˜!Ó€AÜ�?‰?˜1Ô !§(¡(¨nÒ"<Ð?¸aÓ?Ð<Ü�q—y‘y“{¢Y²	º9Ð$EÕFrE   c                  óÌ   — t         j                  } | d d …d d…f   }t        dd¬«      t        «       t	        «       g}|D ]$  }|j                  | «       |j                  |«       Œ& y )NrU   Frï   )ri  rj  r   r   r   r  )rd   r  Úscalersrf   s       rD   Útest_fit_cold_startrÚ  Û  sc   € Ü�	‰	€AØŠQ���ˆU‰8€Dô 	 °Ô7Ü‹Ü‹ð€Gó ˆØ×Ñ˜QÔð 	×Ñ˜TÕ"ñ	 rE   Úmethodúbox-coxúyeo-johnsonc                 óJ  — t        | ¬«      }t        j                  t        «      }t	        j
                  t        «      5  |j                  |«       d d d «       t	        j
                  t        «      5  |j                  |«       d d d «       y # 1 sw Y   Œ=xY w# 1 sw Y   y xY w)N©rÛ  )	r   rG   rÊ  r©   r\   r]   r   rƒ   r³   )rÛ  Úptrd   s      rD   Ú test_power_transformer_notfittedrá  í  sg   € ä	 Ô	(€BÜ
�‰Œv‹€AÜ	�‰”~Õ	&Ø
�‰�QŒ÷ 
'ä	�‰”~Õ	&Ø
×Ñ˜QÔ÷ 
'Ð	&÷ 
'Ð	&úç	&Ð	&ús   ¿BÁ2BÂBÂB"Ústandardizec                 ó®   — | dk(  rt        j                  |«      n|}t        | |¬«      }|j                  |«      }t	        ||j                  |«      «       y )NrÜ  ©rÛ  râ  )rG   rÊ  r   r  r*   r³   )rÛ  râ  rd   rà  rl  s        rD   Útest_power_transformer_inverserå  ÷  sK   € ð ˜yÒ(Œ�‰ˆqŒ	¨a€AÜ	 °[Ô	A€BØ×Ñ˜qÓ!€GÜ˜˜2×/Ñ/°Ó8Õ9rE   c                  óx  — t        j                  t        «      } dD �]  }t        d|¬«      }|j	                  | «      }t        | d|¬«      }t        j                  | j                  «       «      \  }}|rt        |«      }t        |j                  dd«      |«       t        |j                  dd«      |«       t        | |j                  |«      «       t        ||j                  d   «       t        |j                  «      | j                  d   k(  sJ ‚t!        |j                  t         j"                  «      r�ŒJ ‚ y )N©TFrÜ  rä  r:   r;   r   )rG   rÊ  r©   r   r  r   r   ÚboxcoxÚflattenr   r*   r5  r³   Úlambdas_rô  rI   r«   r¼  )rd   râ  rà  rl  ÚX_trans_funcrý  Úlambda_expecteds          rD   Útest_power_transformer_1drí  	  sõ   € Ü
�‰Œv‹€Aä$ˆÜ Y¸KÔHˆà×"Ñ" 1Ó%ˆÜ& q°ÈÔTˆä&+§l¡l°1·9±9³;Ó&?Ñ#ˆ
�OáÜ˜zÓ*ˆJä˜J×.Ñ.¨r°1Ó5°wÔ?Ü˜J×.Ñ.¨r°1Ó5°|ÔDä˜A˜r×3Ñ3°GÓ<Ô=Ü˜O¨R¯[©[¸©^Ô<ä�2—;‘;Ó 1§7¡7¨1¡:Ò-Ð-Ð-Ü˜"Ÿ+™+¤r§z¡zÖ2Ð2Ð2ñ% %rE   c                  óŒ  — t        j                  t        «      } dD �]%  }t        d|¬«      }|j	                  | «      }t        | d|¬«      }||fD ]¢  }t        |j                  d   «      D ]h  }t        j                  | d d …|f   j                  «       «      \  }}|rt        |«      }t        |d d …|f   |«       t        ||j                  |   «       Œj |j                  |«      }	t        |	| «       Œ¤ t!        |j                  «      | j                  d   k(  sJ ‚t#        |j                  t         j$                  «      r�Œ&J ‚ y )Nrç  rÜ  rä  r;   )rG   rÊ  r  r   r  r   rÛ   rI   r   rè  ré  r   r*   rê  r³   r+   rô  r«   r¼  )
rd   râ  rà  ÚX_trans_classrë  rl  Újrý  ÚlmbdaÚX_invs
             rD   Útest_power_transformer_2dró  	  s  € Ü
�‰Œt‹€Aä$ˆÜ Y¸KÔHˆà×(Ñ(¨Ó+ˆÜ& q°ÈÔTˆà% |Ó4ˆGÜ˜7Ÿ=™=¨Ñ+Ö,�Ü$)§L¡L°²1°a°4±·±Ó1BÓ$CÑ!�
˜EáÜ!& zÓ!2�Jä# GªA¨q¨D¡M°:Ô>Ü# E¨2¯;©;°q©>Õ:ð -ð ×(Ñ(¨Ó1ˆEÜ% e¨QÕ/ð 5ô �2—;‘;Ó 1§7¡7¨1¡:Ò-Ð-Ð-Ü˜"Ÿ+™+¤r§z¡zÖ2Ð2Ð2ñ+ %rE   c                  óD  — t        d¬«      } | j                  t        j                  t        «      «       t        }d}t        j                  t        |¬«      5  | j                  |«       d d d «       t        j                  t        |¬«      5  | j                  |«       d d d «       t        j                  t        |¬«      5  t        |d¬«       d d d «       t        j                  t        |¬«      5  | j                  t        j                  t        j                  «      «       d d d «       t        j                  t        |¬«      5  | j                  t        j                  t        j                  «      «       d d d «       t        j                  t        |¬«      5  t        t        j                  t        j                  «      d¬«       d d d «       y # 1 sw Y   �ŒoxY w# 1 sw Y   �ŒGx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ß  zstrictly positiverø   )r   r_   rG   rÊ  r  r\   r]   r^   rƒ   r   rÑ   rI   )rà  ÚX_with_negativesÚnot_positive_messages      rD   Ú9test_power_transformer_boxcox_strictly_positive_exceptionr÷  6	  sW  € ô 
 Ô	+€BØ‡F�FŒ2�6‰6”$‹<ÔÜÐØ.Ðä	�‰”zÐ)=Ö	>Ø
�‰Ð%Ô&÷ 
?ô 
�‰”zÐ)=Ö	>Ø
�‰ÐÔ ÷ 
?ô 
�‰”zÐ)=Ö	>ÜÐ(°Õ;÷ 
?ô 
�‰”zÐ)=Ö	>Ø
�‰”R—X‘XœdŸj™jÓ)Ô*÷ 
?ô 
�‰”zÐ)=Ö	>Ø
�‰Œr�x‰xœŸ
™
Ó#Ô$÷ 
?ô 
�‰”zÐ)=Ö	>ÜœŸ™¤§¡Ó,°YÕ?÷ 
?Ð	>÷ 
?Ñ	>ú÷ 
?Ñ	>ú÷ 
?Ñ	>ú÷ 
?Ð	>ú÷ 
?Ð	>ú÷ 
?Ð	>úsH   ÁGÂG$ÃG1Ã33G>Å	3H
Æ/HÇG!Ç$G.Ç1G;Ç>HÈ
HÈHc                 ó   — t        | d¬«       y )NrÝ  rß  )r   r²  s    rD   Ú+test_power_transformer_yeojohnson_any_inputrù  R	  s   € ô �A˜mÖ,rE   c                 óœ  — t        | ¬«      }t        j                  t        «      }|j	                  |«       d}t        j                  t        |¬«      5  |j                  |d d …dd…f   «       d d d «       t        j                  t        |¬«      5  |j                  |d d …dd…f   «       d d d «       y # 1 sw Y   ŒHxY w# 1 sw Y   y xY w)Nrß  zBX has \d+ features, but PowerTransformer is expecting \d+ featuresrø   r   r;   )
r   rG   rÊ  r  r_   r\   r]   r^   rƒ   r³   )rÛ  rà  rd   Úwrong_shape_messages       rD   Ú&test_power_transformer_shape_exceptionrü  X	  s¢   € ä	 Ô	(€BÜ
�‰Œt‹€AØ‡F�Fˆ1„Ið
 	Nð ô 
�‰”zÐ)<Ö	=Ø
�‰�Q’q˜!˜A˜#�v‘YÔ÷ 
>ô 
�‰”zÐ)<Ö	=Ø
×Ñ˜Qšq ! A #˜v™YÔ'÷ 
>Ð	=÷ 
>Ð	=ú÷ 
>Ð	=ús   ÁB6ÂCÂ6B?ÃCc                  óð   — t        dd¬«      } t        j                  t        «      d d …dd…f   }t        j                  dg«      | _        | j                  |«      }t        | j                  |«      |«       y )NrÜ  Frä  r   r;   )	r   rG   rÊ  r  rp   rê  rƒ   r+   r³   ©rà  rd   rl  s      rD   Ú"test_power_transformer_lambda_zerorÿ  k	  s]   € Ü	 ¸Ô	>€BÜ
�‰Œt‹’Q˜˜!˜�VÑ€Aô —(‘(˜A˜3“-€B„KØ�l‰l˜1‹o€GÜ˜b×2Ñ2°7Ó;¸QÕ?rE   c                  óÒ   — t        dd¬«      } t        j                  t        «      d d …dd…f   }t        j                  dg«      | _        | j                  |«      }t        ||«       y )NrÝ  Frä  r   r;   )r   rG   rÊ  r  rp   rê  rƒ   r+   rþ  s      rD   Ú!test_power_transformer_lambda_oner  u	  sP   € ä	 ¸EÔ	B€BÜ
�‰Œt‹’Q˜˜!˜�VÑ€Aä—(‘(˜A˜3“-€B„KØ�l‰l˜1‹o€GÜ˜g qÕ)rE   zmethod, lmbda))rÜ  rÄ  )rÜ  rq  )rÝ  rÄ  )rÝ  rq  )rÝ  rn   c                 ó  — t         j                  j                  d«      }d}|j                  dd|df¬«      }| dk(  rt        j                  |d|z  dz   d «      }t        | d¬	«      }|g|_        |j                  |«      }t        | d¬	«      }|j                  |«      }t        dt         j                  j                  ||z
  «      |z  d
¬«       t        d|j                  «       d¬«       t        d|j                  «       d¬«       y )Nr   i N  r;   )Úlocr   r=   rÜ  r:   rö   Frä  rU   r  )rG   rº   r»   rç  rU  r   rê  r³   r  r*   ÚlinalgrX  r¯   r±   )rÛ  rñ  rZ   rb   rd   rà  rò  ÚX_inv_transs           rD   Ú#test_optimization_power_transformerr  	  sæ   € ô" �)‰)×
Ñ
 Ó
"€CØ€IØ�
‰
�q ¨°A¨ˆ
Ó7€Aà�Òô �G‰G�A�r˜E‘z DÑ(¨$Ó/ˆä	 °UÔ	;€BØ�'€B„KØ× Ñ  Ó#€Eä	 °UÔ	;€BØ×"Ñ" 5Ó)€Kä˜œ2Ÿ9™9Ÿ>™>¨!¨k©/Ó:¸YÑFÐPQÕRÜ˜˜;×+Ñ+Ó-°qÕ9Ü˜˜;Ÿ?™?Ó,°aÖ8rE   c                  ó‚   — t        dd¬«      } dg| _        | j                  dgg«      }t        j                  |«      sJ ‚y )NrÜ  Frä  rq  gÍÌÌÌÌÌ À)r   rê  r³   rG   r  )rà  rò  s     rD   Útest_invserse_box_coxr  ¥	  s;   € ä	 ¸Ô	>€BØ�%€B„KØ× Ñ  4 & Ó*€EÜ�8‰8�EŒ?Ð‰?rE   c                  óÔ   — g d¢} t        j                  | «      j                  dd«      } t        d¬«      j	                  | «      j
                  }t        j                  |dd¬«      sJ ‚y )	N)gffffff@gÍÌÌÌÌÌ Àrn   rm   gffffffæ?g333333@r}   gffffff@gÍÌÌÌÌÌü?gÍÌÌÌÌÌ@r†  rí   gš™™™™™"@g      @g      Àr:   r;   rÝ  rß  gáz®Gáô?rQ  rÉ   )rG   rp   r5  r   r_   rê  Úallclose)rd   rñ  s     rD   Útest_yeo_johnson_darwin_exampler  ­	  sU   € ò 	V€AÜ
�‰�‹×Ñ˜B Ó"€AÜ MÔ2×6Ñ6°qÓ9×BÑB€EÜ�;‰;�u˜e¨$Õ/Ð/Ñ/rE   c                 óü  — t        j                  t        «      }t        | ¬«      }|j	                  |«       |j
                  d   }t        j                  |t        j                  |t         j                  «      g«      }t        |d¬«      }|j	                  |«       |j
                  d   }t        ||d¬«       |j                  |«      }t        t        j                  |«      t        j                  |«      «       y )Nrß  r   )rü  rk   r  )rG   rÊ  r©   r   r_   rê  ÚconcatenateÚ	full_likerq   r"   r*   rƒ   r,   r  )rÛ  rd   rà  Úlmbda_no_nansÚ
lmbda_nansrl  s         rD   Útest_power_transformer_nansr  ¶	  s¯   € ô
 	�‰Œv‹€AÜ	 Ô	(€BØ‡F�Fˆ1„IØ—K‘K ‘N€Mô 	�‰˜œ2Ÿ<™<¨¬2¯6©6Ó2Ð3Ó4€AÜ� Ô"€Aà‡F�Fˆ1„IØ—‘˜Q‘€Jä˜ z¸1Õ=à�l‰l˜1‹o€GÜ”r—x‘x Ó(¬"¯(©(°1«+Õ6rE   c                 óÐ   — t         }| dk(  rt        j                  |«      }t        | |¬«      }t	        |j                  |«      j                  |«      |j                  |«      «       y )NrÜ  )râ  )r©   rG   rÊ  r   r+   r_   rƒ   r  )rÛ  râ  rd   rà  s       rD   Ú$test_power_transformer_fit_transformr  Í	  sR   € ô 	€AØ�ÒÜ�F‰F�1‹Iˆä	˜&¨kÔ	:€BÜ˜bŸf™f Q›i×1Ñ1°!Ó4°b×6FÑ6FÀqÓ6IÕJrE   c                 ó€  — t         }| dk(  rt        j                  |«      }|j                  «       }||usJ ‚t	        ||«       t        | |d¬«      }|j                  |«       t	        ||«       |j                  |«      }||usJ ‚|j                  |«      }t	        ||«       ||usJ ‚|j                  |«      }||usJ ‚y )NrÜ  T©râ  r‹   )
r©   rG   rÊ  r‹   r+   r   r_   rƒ   r  r³   ©rÛ  râ  rd   Ú
X_originalrà  rl  r  s          rD   Ú test_power_transformer_copy_Truer  Ù	  sÅ   € ô
 	€AØ�ÒÜ�F‰F�1‹Iˆà—‘“€JØ�JÑÐÐÜ˜a Ô,ä	˜&¨kÀÔ	E€Bà‡F�Fˆ1„IÜ˜a Ô,Ø�l‰l˜1‹o€GØ˜!ÑÐÐà×Ñ˜qÓ!€GÜ˜a Ô,Ø˜!ÑÐÐà×&Ñ& wÓ/€KØ˜+Ñ%Ð%Ñ%rE   c                 ó¸  — t         j                  «       }| dk(  rt        j                  |«      }|j                  «       }||usJ ‚t	        ||«       t        | |d¬«      }|j                  |«       t	        ||«       |j                  |«      }||u sJ ‚| dk(  rt        j                  |«      }|j                  |«      }||u sJ ‚|j                  |«      }||u sJ ‚y )NrÜ  Fr  )
r©   r‹   rG   rÊ  r+   r   r_   rƒ   r  r³   r  s          rD   Ú!test_power_transformer_copy_Falser  õ	  sÒ   € ô
 	�‰‹€AØ�ÒÜ�F‰F�1‹Iˆà—‘“€JØ�JÑÐÐÜ˜a Ô,ä	˜&¨kÀÔ	F€Bà‡F�Fˆ1„IÜ˜a Ô,à�l‰l˜1‹o€GØ�a‰<Ðˆ<à�ÒÜ�F‰F�1‹IˆØ×Ñ˜qÓ!€GØ�a‰<Ðˆ<à×&Ñ& wÓ/€KØ�kÑ!Ð!Ñ!rE   c                  óú   — t         j                  d«      } t        j                  | dd…df<   d}t	        d¬«      }t        j                  t        |¬«      5  |j                  | «       ddd«       y# 1 sw Y   yxY w)zqCheck that box-cox raises informative when a column contains all nans.

    Non-regression test for gh-26303
    r£  Nr   zColumn must not be all nan.rÜ  rß  rø   )	rZ   rž  rG   rq   r   r\   r]   r^   r  )rd   rµ  rà  s      rD   Ú1test_power_transformer_box_cox_raise_all_nans_colr  
  s\   € ô
 	×Ñ˜&Ó!€AÜ�f‰f€A‚aˆ€d�Gà+€Gä	 Ô	+€BÜ	�‰”z¨Ö	1Ø
×Ñ˜Ô÷ 
2×	1Ñ	1ús   ÁA1Á1A:r1  çš™™™™™é?)r¹  rü  )r>   r;   )rÇ   c                 óÔ   — t        j                  ddd¬«      }t        d¬«      }|j                  |«      j	                  | «       t        j                  |j                  d   «      sJ ‚y )Nrk   r;   r  r¸  Frx   r   )r   rº   r   r_   r   rG   r  r‚   )r1  r0  rf   s      rD   Ú7test_standard_scaler_sparse_partial_fit_finite_variancer  "
  sP   € ô �-‰-˜˜1 cÔ
*€CÜ eÔ,€FØ
‡J�JˆsƒO×Ñ Ô$Ü�;‰;�v—{‘{ 1‘~Ô&Ð&Ñ&rE   rf  )r   r;   )r*  r>   c                 óX  — t         j                  }t        | d¬«      j                  |«      }t	        j
                  |d¬«      t	        j                  |d¬«      }}t        j                  |d d dz
  |dd  dz   f   g}|j                  |«      }t        || d   | d   | d   | d   gg«       y )NT)rf  rU  r   r¤   rU   r>   r;   )
ri  rj  r   r_   rG   rk  rZ  Úr_rƒ   r(   )rf  rd   rf   ÚX_minÚX_maxr†   rÏ  s          rD   Útest_minmax_scaler_clipr$  3
  s­   € ô 	�	‰	€AÜ¨¸DÔA×EÑEÀaÓH€Fô —6‘6˜! !Ô$¤b§f¡f¨Q°QÔ&7ˆ5€EÜ�e‰e�E˜"˜1�I ‘N E¨!¨" I°¡NÐ2Ñ3Ð4€FØ×$Ñ$ VÓ,€MÜØØ
˜Ñ
˜M¨!Ñ,¨m¸AÑ.>ÀÈaÑ@PÐ	QÐRõrE   Údata_constructorc                 óÄ  —  | t         j                  «      }t        j                  |«      }t	        d¬«      j                  |«      }t        j                  t        j                  |«      d¬«      }|r|j                  n|} | t        j                  |d d dz   |dd   dz
  f«      j                  dd«      «      }|j                  |«      }t        | | g d	¢g«      «       y )
NTrT  r   r¤   rU   r>   r;   r:   )r;   r;   r:   r:   )ri  rj  r   r’  r   r_   rG   rZ  rÊ  Úhstackr5  rƒ   r)   )r%  rd   Ú	is_sparserf   r`  r†   rÏ  s          rD   Útest_maxabs_scaler_clipr)  C
  sÁ   € ñ
 	œŸ™Ó#€AÜ—‘ Ó"€IÜ˜tÔ$×(Ñ(¨Ó+€Fô �f‰f”R—V‘V˜A“Y QÔ'€GÙ'ˆg�lŠl¨W€GÙÜ
�	‰	�7˜2˜A�; Ñ# g¨a¨b k \°BÑ%6Ð7Ó8×@Ñ@ÀÀBÓGó€Fð ×$Ñ$ VÓ,€MÜ  Ñ0@Â.ÐAQÓ0RÕSrE   c                  óÚ   — t        «       j                  t        «      } d}t        j                  t
        |¬«      5  | j                  t        dd…df   «       ddd«       y# 1 sw Y   yxY w)z·Check that `inverse_transform` from `StandardScaler` raises an error
    with 1D array.
    Non-regression test for:
    https://github.com/scikit-learn/scikit-learn/issues/19518
    z'Expected 2D array, got 1D array insteadrø   Nr   )r   r_   r  r\   r]   r^   r³   )rf   rµ  s     rD   Ú-test_standard_scaler_raise_error_for_1d_inputr+  V
  sL   € ô Ó×!Ñ!¤$Ó'€FØ7€GÜ	�‰”z¨Ö	1Ø× Ñ ¤¢a¨ d¡Ô,÷ 
2×	1Ñ	1ús   »A!Á!A*c                  óŒ  — dt        j                  g d¢dz  g d¢z   t         j                  ¬«      j                  dd«      z  } t	        «       }t        j                  «       5  t        j                  dt        «       |j                  | «      }d	d	d	«       t        j                  t        j                  «      «      rJ ‚|j                  «       t        j                  d
«      k(  sJ ‚|j                  «       t        j                  d«      k(  sJ ‚|j!                  «       dkD  sJ ‚|j#                  «       dk  sJ ‚y	# 1 sw Y   Œ®xY w)a  Check that significantly non-Gaussian data before transforms correctly.

    For some explored lambdas, the transformed data may be constant and will
    be rejected. Non-regression test for
    https://github.com/scikit-learn/scikit-learn/issues/14959
    r3  )rh  rm   rí   r"  rj   )r  é   r-  é   é   r¢  éU   rÞ  rÚ   r:   r;   r÷   Nr¦   rn   rñ  rU   )rG   rp   r¼   r5  r   rü   rý   rþ   ÚRuntimeWarningr  rß   r  r¯   r\   rF  r±   rk  rZ  )ÚX_non_gaussianrà  rl  s      rD   Ú1test_power_transformer_significantly_non_gaussianr3  b
  sû   € ð œ2Ÿ8™8Ú˜qÑ Ò#CÑCÌ2Ï:É:ôç�gˆb�!ƒnñ€Nô 
Ó	€Bä	×	 Ñ	 Õ	"Ü×Ñ˜g¤~Ô6Ø×"Ñ" >Ó2ˆ÷ 
#ô �v‰v”b—h‘h˜wÓ'Ô(Ð(Ð(Ø�<‰<‹>œVŸ]™]¨3Ó/Ò/Ð/Ð/Ø�;‰;‹=œFŸM™M¨#Ó.Ò.Ð.Ð.Ø�;‰;‹=˜2ÒÐÐØ�;‰;‹=˜1ÒÐÑ÷ 
#Ð	"ús   Á!,D:Ä:EÚTransformerc                 ó¾   —  | «       j                  t        j                  «      }|j                  t        j                  «      }t        |t        j                  «       y)ú9Check one-to-one transformers give correct feature names.N)r_   ri  rj  Úget_feature_names_outÚfeature_namesr,   )r4  ÚtrÚ	names_outs      rD   Útest_one_to_one_featuresr;  z
  s@   € ñ 
‹×	Ñ	œ4Ÿ9™9Ó	%€BØ×(Ñ(¬×);Ñ);Ó<€IÜ�y¤$×"4Ñ"4Õ5rE   c                 ó@  — t        j                  d«      }|j                  t        j                  t        j
                  ¬«      } | «       j                  |«      }|j                  «       }t        |t        j
                  «       |j                  t        j
                  «      }t        |t        j
                  «       t        j                  d«      }t        j                  t        |¬«      5  t        d«      }|j                  |«       ddd«       y# 1 sw Y   yxY w)r6  Úpandas)Úcolumnsz0input_features is not equal to feature_names_in_rø   ÚabcdN)r\   ÚimportorskipÚ	DataFrameri  rj  r8  r_   r7  r,   ÚreÚescaper]   r^   r¬   )r4  ÚpdÚdfr9  Únames_out_df_defaultÚnames_out_df_valid_inÚmsgÚinvalid_namess           rD   Útest_one_to_one_features_pandasrJ  Œ
  sÊ   € ô 
×	Ñ	˜XÓ	&€Bà	�‰”d—i‘i¬×);Ñ);ˆÓ	<€BÙ	‹×	Ñ	˜2Ó	€Bà×3Ñ3Ó5ÐÜÐ+¬T×-?Ñ-?Ô@à×4Ñ4´T×5GÑ5GÓHÐÜÐ,¬d×.@Ñ.@ÔAä
�)‰)ÐFÓ
G€CÜ	�‰”z¨Ö	-Ü˜V›ˆØ
× Ñ  Ô/÷ 
.×	-Ñ	-ús   Ã.DÄDc                  ó@  — t         j                  j                  d«      } | j                  d«      }t	        |«      }t        «       j                  |«      }|j                  «       }|j                  d   }t        |t        |«      D �cg c]  }d|› �‘Œ	 c}«       yc c}w )z.Test that kernel centerer `feature_names_out`.r   )rl   rj   r;   ÚkernelcentererN)rG   rº   r»   rž  r
   r   r_   r7  rI   r,   rÛ   )rZ   rd   Ú
X_pairwiser¤  r:  Úsamples_out2rM   s          rD   Ú&test_kernel_centerer_feature_names_outrO  ¬
  s�   € ô �)‰)×
Ñ
 Ó
"€CØ×Ñ˜&Ó!€AÜ˜qÓ!€JÜÓ×#Ñ# JÓ/€Hà×.Ñ.Ó0€IØ×#Ñ# AÑ&€LÜ�yÄÀ|ÔATÓ"UÑAT¸A ^°A°3Ò#7ÐATÑ"UÕVùÒ"Us   ÂB
c                 ó4  — g d¢g d¢g d¢g}t        d| ¬«      j                  |«      }t        |j                  g d¢«       |j	                  |«      }|j                  |«      }||fD ]0  }| r t        |t        j                  |«      «       Œ%t        ||«       Œ2 y)z>Check that PowerTransfomer leaves constant features unchanged.)rñ  r   rU   rÝ  rä  r  N)r   r_   r(   rê  r  rƒ   rG   r°   )râ  rd   rà  ÚXftÚXtÚXt_s         rD   Ú'test_power_transformer_constant_featurerT  ¹
  s€   € ò 
’Z¢Ð,€Aä	 ¸KÔ	H×	LÑ	LÈQÓ	O€Bä�B—K‘K¢Ô+à
×
Ñ
˜1Ó
€CØ	�‰�a‹€Bà�R‹yˆÙÜ˜C¤§¡¨qÓ!1Õ2ä˜C Õ#ñ	 rE   zcno floating point exceptions, see https://github.com/numpy/numpy/pull/21895#issuecomment-1311525881)Úreasonc                  óÐ  — t        d¬«      } t        j                  g d¢«      j                  dd«      }| j	                  |«       | j
                  d   }|dk  sJ ‚t        j                  dg«      j                  dd«      }t        j                  t        d¬	«      5  | j                  |«      j                  «       }d
d
d
«       t        j                  «      sJ ‚y
# 1 sw Y   Œ!xY w)zƒCheck if a warning is triggered when the inverse transformations of the
    Box-Cox and Yeo-Johnson transformers return NaN values.rÝ  rß  )r;   r;   r×   r:   r;   r   r>   zSome values in columnrø   N)r   rG   rp   r5  r_   rê  r\   r   rÿ   r³   Úitemr  )Útransr  rñ  ÚpsiÚx_invs        rD   Ú*test_yeo_johnson_inverse_transform_warningr[  Ì
  s¶   € ô  MÔ2€EÜ
�‰’Ó×&Ñ& r¨1Ó-€AØ	‡I�Iˆa„LØ�N‰N˜1Ñ€EØ�1Š9Ðˆ9ô �(‰(�B�4‹.×
 Ñ
   QÓ
'€CÜ	�‰”kÐ)@Ö	AØ×'Ñ'¨Ó,×1Ñ1Ó3ˆ÷ 
Bô �8‰8�EŒ?Ð‰?÷ 
BÐ	Aús   Â CÃC%z1.12z2scipy version 1.12 required for stable yeo-johnsonc                  óž   — t        j                  g d¢«      } d„ } || j                  dd«      «        || dd j                  dd«      «       y)a-  Verify that PowerTransformer operates without raising any warnings on valid data.

    This test addresses numerical issues with floating point numbers (mostly
    overflows) with the Yeo-Johnson transform, see
    https://github.com/scikit-learn/scikit-learn/issues/23319#issuecomment-1464933635
    )
g     LŸ@g     xž@g     4Ÿ@g     @Ÿ@ç     dŸ@r]  g     ðž@g     <Ÿ@g     \Ÿ@g     Ÿ@c                 ó   — t        j                  d¬«      5 }t        j                  d«       t        dd¬«      j	                  | «       ddd«       r J ddj                  d	„ |D «       «      z   «       ‚y# 1 sw Y   Œ,xY w)
z0Internal helper to test for unexpected warnings.Tr¤  ÚalwaysrÝ  rä  Nz!Unexpected warnings were raised:
Ú
c              3   óF   K  — | ]  }t        |j                  «      –— Œ y ­wr–  )ÚstrÚmessage)Ú.0Úws     rD   Ú	<genexpr>zPtest_power_transformer_no_warnings.<locals>._test_no_warnings.<locals>.<genexpr>  s   è ø€ ð U
Ù$3˜qŒC�—	‘	�N¡Oùs   ‚!)rü   rý   rþ   r   r  Újoin)rj  Úcaught_warningss     rD   Ú_test_no_warningsz=test_power_transformer_no_warnings.<locals>._test_no_warningsÿ
  s{   € ä×$Ñ$¨DÕ1°_Ü×!Ñ! (Ô+Ü M¸tÔD×RÑRÐSWÔX÷ 2ñ #ð 	
Ð$HÈ4Ï9É9ñ U
Ù$3óU
ó L
ñ %
ó 	
Ð"�?÷	 2Ð1ús   —2A4Á4A=r:   r;   Nrk   )rG   rp   r5  )r  ri  s     rD   Ú"test_power_transformer_no_warningsrj  å
  sL   € ô 	�‰ò	
ó	€Aò
ñ �a—i‘i  AÓ&Ô'ñ �a˜˜�e—m‘m B¨Ó*Õ+rE   c                  ó�   — t        d¬«      j                  t        «      } | j                  d   t	        j
                  dd¬«      k(   y)zFCheck that the results are consistent across different SciPy versions.rÝ  rß  r   gâdò8ÒÚï?rÈ   )ÚrelN)r   r_   r©   rê  r\   rF  )rà  s    rD   Ú+test_yeojohnson_for_different_scipy_versionrm    s2   € ä	 Ô	/×	3Ñ	3´FÓ	;€BØ‡K�K��N”f—m‘m J°DÔ9Ó9rE   )ÝrB  rü   ÚnumpyrG   Únumpy.linalgr  ri  r\   Úscipyr   r   Úsklearnr   r   Úsklearn.baser   Úsklearn.exceptionsr   Ú$sklearn.externals._packaging.versionr	   Úparse_versionÚsklearn.metrics.pairwiser
   Úsklearn.model_selectionr   Úsklearn.pipeliner   Úsklearn.preprocessingr   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   Úsklearn.preprocessing._datar   r   Úsklearn.svmr    Úsklearn.utilsr!   r"   Úsklearn.utils._array_apir#   r$   r%   Úsklearn.utils._testingr&   r'   r(   r)   r*   r+   r,   r-   r.   Úsklearn.utils.estimator_checksr/   r0   Úsklearn.utils.fixesr1   r2   r3   r4   r5   r6   Úsklearn.utils.sparsefuncsr7   Ú	load_irisri  rº   r»   rZ   rc   rb   rÏ   r8  ræ   r[   r  r5  r¨   r©   Útolistrª   ÚX_list_1colr@   rJ   rS   rh   rr   ÚmarkÚparametrizer‡   r¡   r¶   rÀ   r½   r¼   rÕ   rë   ró   r  r  r  r  r.  r1  r;  rB  rN  rQ  r_  rb  rn  r€  r‚  r†  r�  r”  r™  r   r§  r«  r®  r³  r¶  r>  r½  rÀ  rÃ  rÌ  rÒ  rÜ  râ  rë  rù  r  r  r  r   r#  r'  r-  r2  r4  r9  r=  rD  rH  rJ  rM  rU  rZ  r\  r^  ra  rg  rm  ry  r|  r‚  rŒ  rp   r¬   r”  r›  r°  rÁ  rÌ  rÑ  rÔ  r×  rÚ  rá  rå  rí  ró  r÷  rÊ  rÑ   rI   rù  rü  rÿ  r  r  r  r  r  r  r  r  r  rÐ   rq   r  r$  r)  r+  r3  r;  rJ  rO  rT  Úxfailr[  Úskipifrj  rm  )r¾  s   0rD   Ú<module>r‰     sV  ðó 
Û ã Ý Û ß ç ,Ý Ý -Ý GÝ 2Ý 5Ý %÷÷ ÷ ÷ õ ÷& QÝ ß .÷ñ ÷

÷ 
õ 
÷÷÷ õ 9à€x×ÑÓ€ð 	‡i�i×Ñ˜AÓ€Ø€
Ø€	Ø
�+‰+�b˜! *ˆ+Ó
-€Ø	�‰�Q˜ ˆÓ	,€Ø
‡y�y�˜JÓ'¨&Ñ0°7Ñ:€Ø	ˆa’ˆd‰×	Ñ	˜A˜zÓ	*€Ø	Ša�ˆd‰×	Ñ	˜I qÓ	)€Ø�m‰m‹o€Ø�m‰m‹o€òò"òMò@ò$ð2 ‡�×ÑÒ5Ñ7OÓ7QÓRØ‡�×ÑÐ,Ò.SÓTñNó Uó SðNð, ‡�×ÑÒ5Ñ7OÓ7QÓRØ‡�×ÑØÙ-Ó/Ø'ð ó ñ
5
óó Sð5
òp"0ðJ ‡�×ÑÐ+¨d¨V°nÑ-DÀ~Ñ-UÓVØ‡�×ÑÐ,¨u°d¨mÓ<ñ1ó =ó Wð1ð: ‡�×ÑØá Ô'Ù EÔ*ðóð ‡�×ÑÐ+¨d¨V°nÑ-DÀ~Ñ-UÓVØ‡�×ÑÐ,¨u°d¨mÓ<Ø‡�×Ñ˜ 2§:¡:¨r¯z©zÐ":Ó;Ø‡�×Ñ˜¢_Ó5ñ 4ó 6ó <ó =ó Wóð 4ðF ‡�×Ñ˜Ò&7Ó8Ø‡�×Ñ˜Ò$4Ó5Ø‡�×Ñ˜ 2§:¡:¨r¯z©zÐ":Ó;Ø‡�×ÑÐ+¨d¨V°nÑ-DÀ~Ñ-UÓVñ/Só Wó <ó 6ó 9ð/Sòd	Ið ñ#>ó ð#>òL1òhAò23ò-ò`0Kðf ‡�×ÑÐ+¨^¸nÑ-LÓMñ+Aó Nð+Að\ ‡�×Ñ˜¨4°¨,Ó7Ø‡�×ÑÐ+¨^¸nÑ-LÓMñ6ó Nó 8ð6ð ‡�×Ñ˜¨4°¨,Ó7ñ&ó 8ð&òR ð0 ‡�×ÑØ)Ù-Ó/Ø'ð ó ð
 ‡�×ÑØØ%Ð&Ø ð ó ð
 ‡�×ÑØá‹Ù˜$ÔÙ‹Ù˜$ÔÙÓÙ˜ÔÙ˜ÔÙ˜ÔÙ‹ð
ð 	!ð ó ñRóóóð2Rð ‡�×ÑØ)Ù-Ó/Ø'ð ó ð
 ‡�×ÑØØ%Ð&Ø ð ó ð
 ‡�×Ñ˜¨4°¨,Ó7ñó 8óóðòò@7ò>:ò#ðL ‡�×Ñ˜¨4°¨,Ó7Ø‡�×ÑÐ+¨^¸nÑ-LÓMñ87ó Nó 8ð87ðv ‡�×Ñ˜ t¨U mÓ4Ø‡�×Ñ˜ d¨E ]Ó3Ø‡�×ÑÐ+¨d¨V°nÑ-DÀ~Ñ-UÓVñIó Wó 4ó 5ðIò @ð ‡�×ÑÐ+¨^¸nÑ-LÓMñNó NðNð2 ‡�×ÑÐ+¨^¸nÑ-LÓMñ57ó Nð57ðp ‡�×ÑÐ+¨^¸nÑ-LÓMñDó NðDð  ‡�×ÑÐ+¨^¸nÑ-LÓMñ7ó Nð7ò*òð ‡�×ÑÐ)¨D°%¨=Ó9Ø‡�×Ñ˜¨$°¨Ó7Ø‡�×Ñ˜˜rŸy™yŸ™¨r°1Ó5°{°v·{²{À2ÀqÐRUÔ7VÐWÓXñ%ó Yó 8ó :ð%ð$ ‡�×Ñ˜¨.Ó9ñDó :ðDò
:ð ‡�×Ñ˜Ò$:Ó;Ø‡�×ÑÐ*Ò,SÓTñ?ó Uó <ð?ð( ‡�×Ñ˜¨.Ó9ñEó :ðEò	&ò	*ð ‡�×Ñ˜¨.Ó9ñOó :ðOð( ‡�×Ñ˜¨.Ó9ñ62ó :ð62ðr ‡�×Ñ˜¨.Ó9ñ>ó :ð>òB.ò@,=ò^
Hð ‡�×Ñ˜¨.Ó9ñ#Bó :ð#BòL8ð ‡�×Ñ˜¨.Ó9ñ"ó :ð"òJ=ò	=ð ‡�×Ñ˜¨°Ð':Ó;ñ(ó <ð(ò&"ð ‡�×Ñ˜¨.Ó9ñ!Gó :ð!GòH&ò&òFò27ð$ ‡�×ÑÐ+¨^¸nÑ-LÓMñ&?ó Nð&?òR3ð( ‡�×Ñ˜¨.Ó9ñ	Dó :ð	DòMð@ ‡�×Ñ˜¨.Ó9ñ5ó :ð5òp.ð* ‡�×Ñ˜Ò!4Ó5Ø‡�×Ñ˜¨.Ó9ñ+ó :ó 6ð+ð@ ‡�×Ñ˜Ò!4Ó5Ø‡�×ÑØ˜¨Ñ7¸.ÑHóñ#óó 6ð#ð" ‡�×Ñ˜¨.Ó9ñAó :ðAð( ‡�×Ñ˜¨.Ó9ñ*@ó :ð*@ðZ ‡�×ÑØ�B—H’H˜dÐ# nÑ4°~ÑEóñ30óð30ðl ‡�×ÑØ)Ñ+TÓ+Vóñ	Nóð	Nò)7òX3Hòl.ò(:ò=ð ‡�×ÑØ˜¨Ñ7¸.ÑHóñGóðGò#ð$ ‡�×Ñ˜ I¨}Ð#=Ó>ñ ó ?ð ð ‡�×Ñ˜ I¨}Ð#=Ó>Ø‡�×Ñ˜¨¨u¨Ó6Ø‡�×Ñ˜˜v t˜nÓ-ñ:ó .ó 7ó ?ð:ò3ò03ò6@ð8 ‡�×Ñ˜˜t V R§V¢V¨D£\°F°B·F²F¸4³L°=À(À"Ç(Â(È4Ï:Ê:ÓBVÐWÓXñ-ó Yð-ð
 ‡�×Ñ˜ I¨}Ð#=Ó>ñ(ó ?ð(ò$@ò*ð ‡�×ÑØòó	ñ9ó	ð9ò8ò0ð ‡�×Ñ˜ I¨}Ð#=Ó>ñ7ó ?ð7ð, ‡�×Ñ˜ I¨}Ð#=Ó>Ø‡�×Ñ˜¨¨u¨Ó6ñKó 7ó ?ðKð ‡�×Ñ˜ I¨}Ð#=Ó>Ø‡�×Ñ˜¨¨u¨Ó6ñ&ó 7ó ?ð&ð4 ‡�×Ñ˜ I¨}Ð#=Ó>Ø‡�×Ñ˜¨¨u¨Ó6ñ"ó 7ó ?ð"ò8ð ‡�×ÑØ	Ø€V‡]�]�2�q #°AÔ6Ð7ñ ,óá+ˆMñ 	�b—g’g˜g°"·&²&�gÓ9Õ:Ø+ññóñ'óð'ð ‡�×Ñ˜¨6°9Ð*=Ó>ñó ?ðð ‡�×ÑØ˜Ÿš˜
 ^Ñ3°nÑDóñTóðTò 	-òð0 ‡�×ÑØàØØØØØðó
ñ6ó
ð6ð ‡�×ÑØàØØØØØØØð	óñ0óð0ò&
Wð ‡�×Ñ˜¨¨u¨Ó6ñ$ó 7ð$ð$ ‡�×ÒØð	Mð ó ñóðð$ ‡�×ÒØ‘˜vÓ&Ñ&Ø?ð ó ñ$,ó	ð$,óN:ùòWs   ö
,{1