Ë
    íì�iLp  ã                   ó¢  — d dl Z d dlZd dlZd dlmZmZ d dlmZm	Z	m
Z
 d dlmZ d dlmZmZmZ d dlmZ d dlmZmZmZ d dlmZmZmZmZ d	Zd
„ Zej<                  j?                  ddgez   «      ej<                  j?                  dddg«      d„ «       «       Z d„ Z!ej<                  j?                  dddg«      d„ «       Z"d„ Z#d„ Z$ej<                  j?                  dddg«      ej<                  j?                  de«      d„ «       «       Z%d„ Z&ej<                  j?                  de«      d„ «       Z'd„ Z(d„ Z)d„ Z*d„ Z+ej<                  j?                  ddgez   «      ej<                  j?                  d ddg«      d!„ «       «       Z,d"„ Z-d#„ Z.ej<                  j?                  ddgez   «      d$„ «       Z/ej<                  j?                  d%ddg«      ej<                  j?                  ddgez   «      d&„ «       «       Z0ej<                  j?                  d'e«      d(„ «       Z1ej<                  j?                  de«      d)„ «       Z2ej<                  j?                  ddgez   «      ej<                  j?                  d*d+«      d,„ «       «       Z3ej<                  j?                  d%ddg«      ej<                  j?                  dddg«      d-„ «       «       Z4ej<                  j?                  d.dd/g«      ej<                  j?                  ddgez   «      d0„ «       «       Z5ej<                  j?                  de«      d1„ «       Z6ej<                  j?                  d2g d3¢«      ej<                  j?                  ddgeD � cg c]0  }  ejn                  | ej<                  jq                  d4¬5«      ¬6«      ‘Œ2 c} z   «      ej<                  j?                  dddg«      d7„ «       «       «       Z9yc c} w )8é    N)ÚlinalgÚsparse)Ú	load_irisÚmake_regressionÚmake_sparse_uncorrelated)ÚLinearRegression)Ú_preprocess_dataÚ_rescale_dataÚmake_dataset)Úadd_dummy_feature)Úassert_allcloseÚassert_array_almost_equalÚassert_array_equal)ÚCOO_CONTAINERSÚCSC_CONTAINERSÚCSR_CONTAINERSÚLIL_CONTAINERSç�íµ ÷Æ°>c                  óÀ  — dgdgg} ddg}t        «       }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      ddg«       dgg} dg}t        «       }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      dg«       y )Né   é   r   )r   Úfitr   Úcoef_Ú
intercept_Úpredict)ÚXÚYÚregs      ú‰/var/www/ITT-ServiceAPI-Services/ITT-Document-Scan/mrzscanner/mrzenv/lib/python3.12/site-packages/sklearn/linear_model/tests/test_base.pyÚtest_linear_regressionr    !   sÀ   € ð ˆˆqˆcˆ
€AØ	
ˆAˆ€Aä
Ó
€CØ‡G�GˆAˆq„Mä˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q°!¨fÔ5ð ˆˆ€AØ	
ˆ€Aä
Ó
€CØ‡G�GˆAˆq„MÜ˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q¨cÕ2ó    Úsparse_containerÚfit_interceptTFc                 ó°  — t         j                  j                  |«      }d\  }}|j                  ||f¬«      }| � | |«      }|j                  |¬«      }d|j	                  |¬«      z   }t        |d¬«      }	|	j                  |||¬«       |	j                  }
|	j                  }|	j                  j                  |j                  d   fk(  sJ ‚t        j                  |«      }|s|n
t        |«      }|j                  |z  |z  }|j                  |z  |z  }t        j                  ||«      }|st        |
|«       y t        |
|dd  «       t        ||d   «       y )	N)é   é   )Úsizeç      ð?g¼‰Ø—²Òœ<)r#   Útol©Úsample_weightr   r   )ÚnpÚrandomÚRandomStateÚnormalÚuniformr   r   r   r   ÚshapeÚdiagr   ÚTr   Úsolver   )r"   r#   Úglobal_random_seedÚrngÚ	n_samplesÚ
n_featuresr   Úyr+   r   Úcoefs1Úinter1ÚWÚX_augÚXwÚywÚcoefs2s                    r   Ú%test_linear_regression_sample_weightsrA   9   s>  € ô
 �)‰)×
Ñ
Ð 2Ó
3€Cð !Ñ€Iˆzà�
‰
˜ JÐ/ˆ
Ó0€AØÐ#Ù˜QÓˆØ�
‰
˜	ˆ
Ó"€Aà˜#Ÿ+™+¨9˜+Ó5Ñ5€Mô ¨¸EÔ
B€CØ‡G�GˆAˆq €GÔ.Ø�Y‰Y€FØ�^‰^€Fà�9‰9�?‰?˜qŸw™w q™z˜mÒ+Ð+Ð+ô 	�‰�Ó€AÙ"‰AÔ(9¸!Ó(<€Eà	�‰�1‰�uÑ	€BØ	�‰�1‰�q‰€BÜ�\‰\˜"˜bÓ!€FáÜ˜ Õ'ä˜  q r 
Ô+Ü˜  q¡	Õ*r!   c                  óø   — d} t        j                  d«      }t        j                  d«      }t	        d¬«      }t        j                  t        | ¬«      5  |j                  ||«       d d d «       y # 1 sw Y   y xY w)Nz9Sparse data was passed for X, but dense data is required.é
   T©Úpositive©Úmatch)	r   Úeyer,   Úonesr   ÚpytestÚraisesÚ	TypeErrorr   )Ú	error_msgr   r9   r   s       r   Ú.test_raises_value_error_if_positive_and_sparserN   b   s[   € ØK€Iä�
‰
�2‹€AÜ
�‰�‹€Aä
 DÔ
)€Cä	�‰”y¨	Ô	2ñ Ø�‰��1Œ÷÷ ñ ús   ÁA0Á0A9zn_samples, n_features)r   é   )rO   r   c                 óD  — t         j                  j                  d«      }|j                  | |«      }|j                  | «      }|j                  | «      dz  dz   }d}d}t	        «       }|j                  |||«       |j                  |||«       |j                  |||«       y )Nr   r   r   r(   g       @)r,   r-   r.   Úrandnr   r   )	r7   r8   r6   r   r9   Úsample_weights_OKÚsample_weights_OK_1Úsample_weights_OK_2r   s	            r   Ú9test_raises_value_error_if_sample_weights_greater_than_1drU   n   s˜   € ô �)‰)×
Ñ
 Ó
"€CØ�	‰	�)˜ZÓ(€AØ�	‰	�)Ó€AØŸ	™	 )Ó,°Ñ1°AÑ5ÐØÐØÐä
Ó
€Cð ‡G�GˆAˆqÐ#Ô$Ø‡G�GˆAˆqÐ%Ô&Ø‡G�GˆAˆqÐ%Õ&r!   c                  ó�  — t        j                  ddgddgg«      } t        j                  g d¢g d¢g«      }t        j                  ddg«      }t        d¬	«      j                  | |«      }t        «       j                  | |«      }t        d¬	«      j                  ||«      }t        «       j                  ||«      }|j                  j
                  |j                  j
                  k(  sJ ‚|j                  j
                  |j                  j
                  k(  sJ ‚|j                  j                  |j                  j                  k(  sJ ‚y )
NgmâG©B‹Ø?gÊ\«^ºã?gñ‰L+KÕâ?gìf©iUÚ?)g&Ï/)Â¶Ñ?g ö<E/Ÿæ?g²MdÅô­�?)g".ÆáHwµ?g€%ü÷…|Ê?gÜ0Èeõ±æ?r   F©r#   )r,   Úarrayr   r   r   r1   Úndim)ÚX2ÚX3r9   Úlr2_without_interceptÚlr2_with_interceptÚlr3_without_interceptÚlr3_with_intercepts          r   Útest_fit_interceptr`   €   s  € ä	�‰�J 
Ð+¨j¸*Ð-EÐFÓ	G€BÜ	�‰Ú	-Ò/SÐTó
€Bô 	�‰�!�Q�Ó€Aä,¸5ÔA×EÑEÀbÈ!ÓLÐÜ)Ó+×/Ñ/°°AÓ6Ðä,¸5ÔA×EÑEÀbÈ!ÓLÐÜ)Ó+×/Ñ/°°AÓ6Ðà×#Ñ#×)Ñ)Ð-B×-HÑ-H×-NÑ-NÒNÐNÐNØ×#Ñ#×)Ñ)Ð-B×-HÑ-H×-NÑ-NÒNÐNÐNØ ×&Ñ&×+Ñ+Ð/D×/JÑ/J×/OÑ/OÒOÐOÑOr!   c                 ó�  — t         j                  j                  | «      }d}t        j                  ||«      }|j                  |«      }||z  }t        «       }|j                  ||j                  «       «       t        ||j                  |j                  z   «       t        |j                  |«      |j                  «       z
  d«       y )Néd   r   )r,   r-   r.   r   rH   Úrandr   r   Úravelr   r   r   r   )r5   r6   Únr   Úbetar9   Úolss          r   Útest_linear_regression_sparserh   “   s’   € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€AÜ�
‰
�1�aÓ€AØ�8‰8�A‹;€DØ	ˆD‰€Aä
Ó
€CØ‡G�GˆAˆq�w‰w‹yÔÜ˜d C§I¡I°·±Ñ$>Ô?ä˜cŸk™k¨!›n¨q¯w©w«yÑ8¸!Õ<r!   Úcsr_containerc                 óØ  — t         j                  j                  d«      }d}d}|j                  ||«      }d||dk  <    ||«      }|j	                  |«      }t        | ¬«      }t        di |¤Ž}	t        di |¤Ž}
|	j                  ||«       |
j                  ||«       |	j                  t        j                  |
j                  «      k(  sJ ‚t        |	j                  |
j                  «       y )Nr   éÈ   r   ç        gš™™™™™¹?rW   © )r,   r-   r.   rQ   rc   Údictr   r   r   rJ   Úapproxr   r   )r#   ri   r6   r7   r8   r   ÚXcsrr9   ÚparamsÚ	clf_denseÚ
clf_sparses              r   Ú)test_linear_regression_sparse_equal_densert   ¢   sÎ   € ô �)‰)×
Ñ
 Ó
"€CØ€IØ€JØ�	‰	�)˜ZÓ(€AØ€A€aˆ#�g�JÙ˜Ó€DØ�‰�Ó€AÜ Ô.€FÜ Ñ* 6Ñ*€IÜ!Ñ+ FÑ+€JØ‡M�M�!�QÔØ‡N�N�4˜ÔØ×Ñ¤6§=¡=°×1FÑ1FÓ#GÒGÐGÐGÜ�I—O‘O Z×%5Ñ%5Õ6r!   c                  óô  — t         j                  j                  d«      } t        | ¬«      \  }}t        j                  ||f«      j
                  }|j                  d   }t        «       }|j                  ||«       |j                  j                  d|fk(  sJ ‚|j                  |«      }|j                  ||«       |j                  |«      }t        t        j                  ||f«      j
                  |d¬«       y )Nr   ©Úrandom_stater   r   rO   ©Údecimal)r,   r-   r.   r   Úvstackr3   r1   r   r   r   r   r   )r6   r   r9   r   r8   r   ÚY_predÚy_preds           r   Ú'test_linear_regression_multiple_outcomer}   ¶   s¿   € ä
�)‰)×
Ñ
 Ó
"€CÜ¨Ô,�D€A€qä
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
Ó
€CØ‡G�GˆQ�„OØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ø�[‰[˜‹^€FØ‡G�GˆAˆq„MØ�[‰[˜‹^€FÜœbŸi™i¨°Ð(8Ó9×;Ñ;¸VÈQÖOr!   Úcoo_containerc                 ó   — t         j                  j                  | «      }t        |¬«      \  }} ||«      }t        j                  ||f«      j
                  }|j                  d   }t        «       }|j                  ||«       |j                  j                  d|fk(  sJ ‚|j                  |«      }|j                  ||j                  «       «       |j                  |«      }	t        t        j                  |	|	f«      j
                  |d¬«       y )Nrv   r   r   rO   rx   )r,   r-   r.   r   rz   r3   r1   r   r   r   r   rd   r   )
r5   r~   r6   r   r9   r   r8   rg   r{   r|   s
             r   Ú.test_linear_regression_sparse_multiple_outcomer€   Ç   sÓ   € ô �)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qÙ�aÓ€AÜ
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
Ó
€CØ‡G�GˆAˆq„MØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ø�[‰[˜‹^€FØ‡G�GˆAˆq�w‰w‹yÔØ�[‰[˜‹^€FÜœbŸi™i¨°Ð(8Ó9×;Ñ;¸VÈQÖOr!   c                  óÈ  — dgdgg} ddg}t        d¬«      }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      ddg«       dgg} dg}t        d¬«      }|j                  | |«       t        |j                  dg«       t        |j                  dg«       t        |j                  | «      dg«       y )Nr   r   TrD   r   )r   r   r   r   r   r   r   )r   r9   r   s      r   Útest_linear_regression_positiver‚   Ù   sÂ   € à
ˆˆqˆcˆ
€AØ	
ˆAˆ€Aä
 DÔ
)€CØ‡G�GˆAˆq„Mä˜cŸi™i¨!¨Ô-Ü˜cŸn™n¨q¨cÔ2Ü˜cŸk™k¨!›n¨q°!¨fÔ5ð ˆˆ€AØ	
ˆ€Aä
 DÔ
)€CØ‡G�GˆAˆq„MÜ�C—I‘I ˜sÔ#Ü�C—N‘N Q CÔ(Ü�C—K‘K “N Q CÕ(r!   c                 óX  — t         j                  j                  | «      }t        |¬«      \  }}t        j                  ||f«      j
                  }|j                  d   }t        d¬«      }|j                  ||«       |j                  j                  d|fk(  sJ ‚t        j                  |j                  dk\  «      sJ ‚|j                  |«      }|j                  ||j                  «       «       |j                  |«      }t        t        j                  ||f«      j
                  |«       y )Nrv   r   TrD   r   rl   )r,   r-   r.   r   rz   r3   r1   r   r   r   Úallr   rd   r   )	r5   r6   r   r9   r   r8   rg   r{   r|   s	            r   Ú0test_linear_regression_positive_multiple_outcomer…   ð   sâ   € ä
�)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qÜ
�	‰	�1�a�&Ó×Ñ€AØ—‘˜‘€Jä
 DÔ
)€CØ‡G�GˆAˆq„MØ�9‰9�?‰?˜q *˜oÒ-Ð-Ð-Ü�6‰6�#—)‘)˜sÑ"Ô#Ð#Ð#Ø�[‰[˜‹^€FØ‡G�GˆAˆq�w‰w‹yÔØ�[‰[˜‹^€FÜ”B—I‘I˜v vÐ.Ó/×1Ñ1°6Õ:r!   c                 ó@  — t         j                  j                  | «      }t        |¬«      \  }}t	        d¬«      }|j                  ||«       t	        d¬«      }|j                  ||«       t        j                  |j                  |j                  z
  dz  «      dkD  sJ ‚y )Nrv   TrD   Fr   çü©ñÒMbP?)r,   r-   r.   r   r   r   Úmeanr   )r5   r6   r   r9   r   Úregns         r   Ú.test_linear_regression_positive_vs_nonpositiverŠ     s|   € ä
�)‰)×
Ñ
Ð 2Ó
3€CÜ#°Ô5�D€A€qä
 DÔ
)€CØ‡G�GˆAˆq„MÜ UÔ+€DØ‡H�HˆQ�„Nä�7‰7�C—I‘I §
¡
Ñ*¨qÑ0Ó1°DÒ8Ð8Ñ8r!   c                 ó®  — t         j                  j                  | «      }d}d}|j                  ||«      }|d d …df   d|d d …df   z  z   d|d d …df   z  z   d|d d …df   z  z   }t	        d¬	«      }|j                  ||«       t	        d
¬	«      }|j                  ||«       t        j                  |j                  |j                  z
  dz  «      dk  sJ ‚y )Nrk   é   r   r   r   rO   g      ø?TrD   Fr   )r,   r-   r.   rc   r   r   rˆ   r   )r5   r6   r7   r8   r   r9   r   r‰   s           r   Ú<test_linear_regression_positive_vs_nonpositive_when_positiver�     sÊ   € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ	Š!ˆQˆ$‰�!�aš˜1˜‘g‘+Ñ  A¢a¨ d¡G¡Ñ+¨c°A²a¸°d±G©mÑ;€Aä
 DÔ
)€CØ‡G�GˆAˆq„MÜ UÔ+€DØ‡H�HˆQ�„Nä�7‰7�C—I‘I §
¡
Ñ*¨qÑ0Ó1°DÒ8Ð8Ñ8r!   Úuse_swc                 óì  — t         j                  j                  |«      }|j                  dd«      }|j                  dd«      }|j	                  d«      }| �	 | |«      }n|j                  «       }|j                  «       }|r|j                  «       }	nd }	t        «       }
|
j                  |||	¬«       | �t        |j                  «       |«       nt        ||«       t        ||«       |rt        |	|«       t        d¬«      }
|
j                  |||	¬«       | �t        |j                  «       |«       n't         j                  j                  ||z
  «      dkD  sJ ‚t        ||«       |rt        |	|«       y y )NrC   é   r   r*   F)Úcopy_Xgáz®GáÚ?)r,   r-   r.   rQ   rc   Úcopyr   r   r   Útoarrayr   Únorm)r"   rŽ   r5   r6   Úoriginal_X_dataÚoriginal_y_dataÚorginal_sw_datar   r9   r+   r   s              r   Útest_inplace_data_preprocessingr˜     sS  € ô
 �)‰)×
Ñ
Ð 2Ó
3€CØ—i‘i  BÓ'€OØ—i‘i  AÓ&€OØ—h‘h˜r“l€OàÐ#Ù˜_Ó-‰à× Ñ Ó"ˆØ×ÑÓ€Añ Ø'×,Ñ,Ó.‰àˆô Ó
€CØ‡G�GˆAˆq €GÔ.ØÐ#Ü˜Ÿ	™	› _Õ5ä˜˜?Ô+Ü�A�Ô'áÜ˜ Ô7ô  %Ô
(€CØ‡G�GˆAˆq €GÔ.ØÐ#ô 	˜Ÿ	™	› _Õ5ô
 �y‰y�~‰~˜a /Ñ1Ó2°TÒ9Ð9Ð9ô �A�Ô'áä˜ Õ7ð r!   c                  ó�  — t        j                  d«      } | j                  dt        j                  j                  d«      i«      }t        dd«      D ]V  }t        j                  j                  d«      }d|d d |dk7  r| j                  j                  |d¬«      }||t        |«      <   ŒX d	}t        «       }t        j                  t        |¬
«      5  |j                  |j                  d d …dd…f   |j                  d d …df   «       d d d «       | j                  j                  |d   d¬«      |d<   t        |d«      sJ ‚t!        j"                  «       5  t!        j$                  dt        «       |j                  |j                  d d …dd…f   |j                  d d …df   «       d d d «       y # 1 sw Y   Œ¨xY w# 1 sw Y   y xY w)NÚpandasÚ0rC   r   rŒ   r   é   )Ú
fill_valuez+pandas.DataFrame with sparse columns found.rF   r   rO   r   Úerror)rJ   ÚimportorskipÚ	DataFramer,   r-   rQ   ÚrangeÚarraysÚSparseArrayÚstrr   ÚwarnsÚUserWarningr   ÚilocÚhasattrÚwarningsÚcatch_warningsÚsimplefilter)ÚpdÚdfÚcolÚarrÚmsgr   s         r   Ú2test_linear_regression_pd_sparse_dataframe_warningr±   W  s‚  € Ü	×	Ñ	˜XÓ	&€Bð 
�‰�sœBŸI™IŸO™O¨BÓ/Ð0Ó	1€BÜ�Q˜‹{ò ˆÜ�i‰i�o‰o˜bÓ!ˆØˆˆBˆQˆà�!Š8Ø—)‘)×'Ñ'¨¸Ð'Ó:ˆCØˆŒ3ˆs‹8Šðð 8€Cä
Ó
€CÜ	�‰”k¨Ô	-ñ 0Ø�‰�—‘š˜1˜Q˜3˜‘ §¡ª¨A¨¡Ô/÷0ð �i‰i×#Ñ# B s¡G¸Ð#Ó:€B€s�GÜ�2�xÔ Ð Ð ä	×	 Ñ	 Ó	"ñ 0Ü×Ñ˜g¤{Ô3Ø�‰�—‘š˜1˜Q˜3˜‘ §¡ª¨A¨¡Ô/÷0ð 0÷0ð 0ú÷0ð 0ús   Ã7F0ÅAF<Æ0F9Æ<Gc                 ó¾  — t         j                  j                  | «      }d}d}|j                  ||«      }|j                  |«      }t        j                  |d¬«      }t        j                  |d¬«      }t        ||d¬«      \  }}	}
}}}t        |
t        j                  |«      «       t        |d«       t        |t        j                  |«      «       |�J ‚t        ||«       t        |	|«       t        ||d¬«      \  }}	}
}}}t        |
|«       t        ||«       t        |t        j                  |«      «       |�J ‚t        |||z
  «       t        |	||z
  «       y )Nrk   r   r   ©ÚaxisFrW   T)	r,   r-   r.   rc   rˆ   r	   r   ÚzerosrI   )r5   r6   r7   r8   r   r9   Úexpected_X_meanÚexpected_y_meanÚXtÚytÚX_meanÚy_meanÚX_scaleÚsqrt_sws                 r   Útest_preprocess_datar¾   s  s<  € Ü
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ�‰�Ó€AÜ—g‘g˜a aÔ(€OÜ—g‘g˜a aÔ(€Oä/?Ø	ˆ1˜Eô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§h¡h¨zÓ&:Ô;Ü˜f aÔ(Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜b !Ô$Ü˜b !Ô$ä/?Ø	ˆ1˜Dô0Ñ,€BˆˆF�F˜G Wô ˜f oÔ6Ü˜f oÔ6Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜b ! oÑ"5Ô6Ü˜b ! oÑ"5Õ6r!   c                 ó¸  — t         j                  j                  | «      }d}d}d}|j                  ||«      }|j                  ||«      }t        j                  |d¬«      }|� ||«      }t        ||d¬«      \  }	}
}	}}	}	t        |t        j                  |«      «       t        |
|«       t        ||d¬«      \  }	}
}	}}	}	t        ||«       t        |
||z
  «       y )	Nrk   rO   r   r   r³   FrW   T)r,   r-   r.   rc   rˆ   r	   r   rµ   )r5   r"   r6   r7   r8   Ú	n_outputsr   r9   r·   Ú_r¹   r»   s               r   Ú test_preprocess_data_multioutputrÂ   ‘  sÑ   € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ€IØ�‰�˜JÓ'€AØ�‰�˜IÓ&€AÜ—g‘g˜a aÔ(€OàÐ#Ù˜QÓˆä-¨a°À%ÔHÑ€A€rˆ1ˆf�a˜Ü˜f¤b§h¡h¨yÓ&9Ô:Ü˜b !Ô$ä-¨a°À$ÔGÑ€A€rˆ1ˆf�a˜Ü˜f oÔ6Ü˜b ! f¡*Õ-r!   Úrescale_with_swc                 ó  — t         j                  j                  |«      }d}d}|j                  ||«      }d||dk  <   |d d …dfxx   dz  cc<   d|d d …df<   d|d d …d	f<   |j                  |«      }t        j                  |j                  |«      «      d
z   }t        j
                  |d|¬«      }	t        j
                  |d|¬«      }
t        j
                  ||d¬«      }t        j
                  ||z
  dz  |d¬«      }|dt        j                  |j                  «      j                  z  k  }t        |g d¢«       t        j                  |«      t        j                  |j                  «       «      z  }d
||<   |� ||«      }t        ||d|| ¬«      \  }}}}}}|� |j                  «       }|j                  «       }t        ||	«       t        ||
«       t        |t        j                  |«      «       | rdt!        |t        j                  |«      «       |�t!        ||d d …d f   |z  «       nt!        ||d d …d f   ||	z
  z  «       t!        ||||
z
  z  «       y |�J ‚|�t!        ||«       nt!        |||	z
  «       t!        |||
z
  «       y )Nrk   rŒ   rl   ç      à?r   rC   r(   r   rO   r   )r´   Úweights)rÆ   r´   )r   r   r   r   T©r#   r+   rÃ   )r,   r-   r.   rc   ÚabsÚaverageÚfinfoÚdtypeÚepsr   ÚsqrtÚsumr	   r“   r   rI   r   )rÃ   r"   r5   r6   r7   r8   r   r9   r+   r¶   r·   ÚX_sample_weight_avgÚX_sample_weight_varÚconstant_maskÚexpected_X_scaler¸   r¹   rº   r»   r¼   r½   s                        r   Útest_preprocess_data_weightedrÓ   §  so  € ô
 �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€Jð
 	�‰�˜JÓ'€AØ€A€aˆ#�g�Jð ‚aˆ€dƒGˆr�MƒGð €A‚aˆ€d�Gð €A‚aˆ€d�GØ�‰�Ó€Aä—F‘F˜3Ÿ8™8 IÓ.Ó/°!Ñ3€MÜ—j‘j ¨°MÔB€OÜ—j‘j ¨°MÔB€OäŸ*™* Q°ÀAÔFÐÜŸ*™*Ø	
Ð Ñ	  QÑ&°ÀAôÐð (¨"¬r¯x©x¸¿¹Ó/@×/DÑ/DÑ*DÑD€MÜ�}¢lÔ3Ü—w‘wÐ2Ó3´b·g±g¸m×>OÑ>OÓ>QÓ6RÑRÐð '(Ð�]Ñ#àÐ#Ù˜QÓˆä/?Ø	Ø	ØØ#Ø'ô0Ñ,€BˆˆF�F˜G Wð Ð#à�I‰I‹KˆØ�Z‰Z‹\ˆä˜f oÔ6Ü˜f oÔ6Ü˜g¤r§w¡w¨zÓ':Ô;ÙÜ˜¤§¡¨Ó!7Ô8ØÐ'Ü˜B ª¨4¨Ñ 0°1Ñ 4Õ5ä˜B ª¨4¨Ñ 0°A¸Ñ4GÑ HÔIÜ˜˜G q¨?Ñ':Ñ;Õ<àˆÐˆØÐ'Ü˜B Õ"ä˜B  OÑ 3Ô4Ü˜˜A Ñ/Õ0r!   Úlil_containerc                 óP  — t         j                  j                  | «      }d}d}t        j                  ||d|¬«      } ||«      }|j	                  |«      }|j                  «       }t        ||d¬«      \  }}	}
}}}t        |
t        j                  |«      «       t        |d«       t        |t        j                  |«      «       |�J ‚t        |j                  «       |«       t        |	|«       t        ||d¬«      \  }}	}
}}}t        |
t        j                  |d¬	«      «       t        |t        j                  |d¬	«      «       t        |t        j                  |«      «       |�J ‚t        |j                  «       |«       t        |	|t        j                  |d¬	«      z
  «       y )
Nrk   r   rÅ   )Údensityrw   FrW   r   Tr³   )r,   r-   r.   r   rc   r“   r	   r   rµ   rI   rˆ   )r5   rÔ   r6   r7   r8   r   r9   ÚXAr¸   r¹   rº   r»   r¼   r½   s                 r   Ú#test_sparse_preprocess_data_offsetsrØ   ò  s]  € ä
�)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JÜ�‰�I˜z°3ÀSÔI€AÙ�aÓ€AØ�‰�Ó€AØ	
�‰‹€Bä/?Ø	ˆ1˜Eô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§h¡h¨zÓ&:Ô;Ü˜f aÔ(Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜bŸj™j›l¨BÔ/Ü˜b !Ô$ä/?Ø	ˆ1˜Dô0Ñ,€BˆˆF�F˜G Wô ˜f¤b§g¡g¨b°qÔ&9Ô:Ü˜f¤b§g¡g¨a°aÔ&8Ô9Ü˜g¤r§w¡w¨zÓ':Ô;Øˆ?Ðˆ?Ü˜bŸj™j›l¨BÔ/Ü˜b !¤b§g¡g¨a°aÔ&8Ñ"8Õ9r!   c                 óŠ   — t        «       \  }}d||dk  <    | |«      }t        ||d¬«      \  }}}}}}|j                  dk(  sJ ‚y )Nrl   ç      @TrW   Úcsr)r   r	   Úformat)ri   r   r9   rÛ   Úcsr_rÁ   s         r   Útest_csr_preprocess_datarÞ     sT   € ô Ó�D€A€qØ€A€aˆ#�g�JÙ
˜Ó
€CÜ*¨3°ÀÔFÑ€Dˆ!ˆQ��1�aØ�;‰;˜%ÒÐÑr!   Úto_copy)TFc                 ó–  — t        «       \  }}d||dk  <   | � | |«      }t        ||d|d¬«      \  }}}}}}|r/| �-t        j                  |j                  |j                  «      rJ ‚y |rt        j                  ||«      rJ ‚y | �-t        j                  |j                  |j                  «      sJ ‚y t        j                  ||«      sJ ‚y )Nrl   rÚ   TF)r#   r’   Úcheck_input)r   r	   r,   Úmay_share_memoryÚdata)r"   rß   r   r9   ÚX_Úy_rÁ   s          r   Ú#test_preprocess_copy_data_no_checksræ     sÑ   € ô Ó�D€A€qØ€A€aˆ#�g�JàÐ#Ù˜QÓˆä)Ø	ˆ1˜D w¸EôÑ€BˆˆAˆq�!�Qñ Ð#Ð/Ü×&Ñ& r§w¡w°·±Ô7Ð7Ð7Ð7Ù	Ü×&Ñ& r¨1Ô-Ð-Ð-Ð-Ø	Ð	%Ü×"Ñ" 2§7¡7¨A¯F©FÔ3Ð3Ñ3ä×"Ñ" 2 qÔ)Ð)Ñ)r!   c                 ó²
  — t         j                  j                  |«      }d}d}|j                  ||«      }|j                  |«      }|j                  |«      dz   }t        j                  |t         j
                  ¬«      }	t        j                  |t         j
                  ¬«      }
t        j                  |t         j
                  ¬«      }t        j                  |t         j                  ¬«      }t        j                  |t         j                  ¬«      }t        j                  |t         j                  ¬«      }t        |	|
||| ¬«      \  }}}}}}t        ||||| ¬«      \  }}}}}}t        |	|||| ¬«      \  }}}}}} t        ||
||| ¬«      \  }!}"}#}$}%}&|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r|j                  t         j
                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚| r|j                  t         j                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r| j                  t         j
                  k(  sJ ‚|!j                  t         j                  k(  sJ ‚|"j                  t         j                  k(  sJ ‚|#j                  t         j                  k(  sJ ‚|$j                  t         j                  k(  sJ ‚|j                  t         j
                  k(  sJ ‚| r|&j                  t         j                  k(  sJ ‚|	j                  t         j
                  k(  sJ ‚|
j                  t         j
                  k(  sJ ‚|j                  t         j                  k(  sJ ‚|j                  t         j                  k(  sJ ‚t        ||dd¬«       t        ||dd¬«       t        ||d¬	«       t        ||d¬	«       t        ||«       | rt        ||d¬	«       y y )
Nrk   r   r   ©rË   rÇ   r‡   r   )ÚrtolÚatol©ré   )
r,   r-   r.   rc   ÚasarrayÚfloat32Úfloat64r	   rË   r   )'rÃ   r#   r5   r6   r7   r8   r   r9   ÚswÚX_32Úy_32Úsw_32ÚX_64Úy_64Úsw_64ÚXt_32Úyt_32Ú	X_mean_32Ú	y_mean_32Ú
X_scale_32Ú
sqrt_sw_32ÚXt_64Úyt_64Ú	X_mean_64Ú	y_mean_64Ú
X_scale_64Ú
sqrt_sw_64ÚXt_3264Úyt_3264ÚX_mean_3264Úy_mean_3264ÚX_scale_3264Úsqrt_sw_3264ÚXt_6432Úyt_6432ÚX_mean_6432Úy_mean_6432ÚX_scale_6432Úsqrt_sw_6432s'                                          r   Útest_dtype_preprocess_datar  2  sT  € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€JØ�‰�˜JÓ'€AØ�‰�Ó€AØ	�‰�)Ó	˜qÑ	 €Bä�:‰:�aœrŸz™zÔ*€DÜ�:‰:�aœrŸz™zÔ*€DÜ�J‰J�r¤§¡Ô,€EÜ�:‰:�aœrŸz™zÔ*€DÜ�:‰:�aœrŸz™zÔ*€DÜ�J‰J�r¤§¡Ô,€EäAQØØØ#ØØ'ôBÑ>€Eˆ5�)˜Y¨
°Jô BRØØØ#ØØ'ôBÑ>€Eˆ5�)˜Y¨
°Jô 	ØØØ'ØØ+ô	
ñ K€GˆW�k ;°¸lô 	ØØØ'ØØ+ô	
ñ K€GˆW�k ;°¸lð �;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø×ÑœrŸz™zÒ)Ð)Ð)ÙØ×Ñ¤2§:¡:Ò-Ð-Ð-à�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�;‰;œ"Ÿ*™*Ò$Ð$Ð$Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø�?‰?œbŸj™jÒ(Ð(Ð(Ø×ÑœrŸz™zÒ)Ð)Ð)ÙØ×Ñ¤2§:¡:Ò-Ð-Ð-à�=‰=œBŸJ™JÒ&Ð&Ð&Ø�=‰=œBŸJ™JÒ&Ð&Ð&Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§¡Ò+Ð+Ð+ÙØ×!Ñ!¤R§Z¡ZÒ/Ð/Ð/à�=‰=œBŸJ™JÒ&Ð&Ð&Ø�=‰=œBŸJ™JÒ&Ð&Ð&Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§
¡
Ò*Ð*Ð*Ø×Ñ¤§¡Ò+Ð+Ð+ÙØ×!Ñ!¤R§Z¡ZÒ/Ð/Ð/à�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#Ø�:‰:œŸ™Ò#Ð#Ð#ä�E˜5 t°$Õ7Ü�E˜5 t°$Õ7Ü�I˜y¨tÕ4Ü�I˜y¨tÕ4Ü�J 
Ô+ÙÜ˜
 J°TÖ:ð r!   Ú	n_targetsr   c                 ó°  — t         j                  j                  |«      }d}d}d|j                  |«      z   }|j                  ||«      }| €|j                  |«      }n|j                  || «      }t        j                  |«      }	||	d d …t         j
                  f   z  }
| €||	z  }n||	d d …t         j
                  f   z  }|�+ ||«      }| € ||j                  dd«      «      }n ||«      }t        |||«      \  }}}t        ||	«       |�2|j                  «       }|j                  «       }| €|j                  «       }t        ||
«       t        ||«       y )Nrk   r   r(   éÿÿÿÿr   )r,   r-   r.   rc   rÍ   ÚnewaxisÚreshaper
   r   r“   rd   )r  r"   r5   r6   r7   r8   r+   r   r9   Úexpected_sqrt_swÚexpected_rescaled_XÚexpected_rescaled_yÚ
rescaled_XÚ
rescaled_yr½   s                  r   Útest_rescale_datar  •  s^  € ô �)‰)×
Ñ
Ð 2Ó
3€CØ€IØ€Jà˜#Ÿ(™( 9Ó-Ñ-€MØ�‰�˜JÓ'€AØÐØ�H‰H�YÓ‰à�H‰H�Y 	Ó*ˆä—w‘w˜}Ó-ÐØÐ.ªq´"·*±*¨}Ñ=Ñ=ÐàÐØÐ"2Ñ2ÑàÐ"2²1´b·j±j°=Ñ"AÑAÐàÐ#Ù˜QÓˆØÐÙ  §¡¨2¨qÓ!1Ó2‰Aá  Ó#ˆAä&3°A°q¸-Ó&HÑ#€J�
˜Gä�GÐ-Ô.àÐ#Ø×'Ñ'Ó)ˆ
Ø×'Ñ'Ó)ˆ
ØÐØ#×)Ñ)Ó+ˆJä�JÐ 3Ô4Ü�JÐ 3Õ4r!   c                 óX  — t        «       }|j                  j                  t        j                  «      }|j
                  j                  t        j                  «      } | |«      }t        j                  |j                  t        j                  ¬«      }|j                  j                  t        j                  «      }|j
                  j                  t        j                  «      } | |«      }t        j                  |j                  t        j                  ¬«      }	t        |||«      \  }
}t        |||	«      \  }}|
j                  «       \  }}}}|j                  «       \  }}}}|\  }}}|\  }}}|j                  t        j                  k(  sJ ‚|j                  t        j                  k(  sJ ‚t        ||t        ¬«       t        |||«      \  }}t        |||	«      \  }}|j                  «       \  }}}}|j                  «       \  }}}}|\  }}}|\  }}}|j                  t        j                  k(  sJ ‚|j                  t        j                  k(  sJ ‚t        ||t        ¬«       t        ||t        ¬«       t        ||«       t        ||«       t        ||«       t        ||«       y )Nrè   rë   )r   rã   Úastyper,   rí   ÚtargetÚaranger'   rî   r   Ú_next_pyrË   r   ré   r   )ri   Úirisrð   rñ   ÚX_csr_32Úsample_weight_32ró   rô   ÚX_csr_64Úsample_weight_64Ú
dataset_32rÁ   Ú
dataset_64Úxi_32Úyi_32Úxi_64Úyi_64Ú
xi_data_32Ú
xi_data_64Údatasetcsr_32Údatasetcsr_64Úxicsr_32Úyicsr_32Úxicsr_64Úyicsr_64Úxicsr_data_32Úxicsr_data_64s                              r   Útest_fused_types_make_datasetr4  À  s9  € ä‹;€Dà�9‰9×ÑœBŸJ™JÓ'€DØ�;‰;×ÑœbŸj™jÓ)€DÙ˜TÓ"€HÜ—y‘y §¡´"·*±*Ô=Ðà�9‰9×ÑœBŸJ™JÓ'€DØ�;‰;×ÑœbŸj™jÓ)€DÙ˜TÓ"€HÜ—y‘y §¡´"·*±*Ô=Ðô !  tÐ-=Ó>�M€J�Ü   tÐ-=Ó>�M€J�Ø#×,Ñ,Ó.Ñ€Eˆ5�!�QØ#×,Ñ,Ó.Ñ€Eˆ5�!�QØÑ€J��1ØÑ€J��1à×ÑœrŸz™zÒ)Ð)Ð)Ø×ÑœrŸz™zÒ)Ð)Ð)Ü�E˜5¤tÕ,ô $ H¨dÐ4DÓEÑ€M�1Ü# H¨dÐ4DÓEÑ€M�1Ø,×5Ñ5Ó7Ñ€Hˆh˜˜1Ø,×5Ñ5Ó7Ñ€Hˆh˜˜1Ø"Ñ€M�1�aØ"Ñ€M�1�aà×Ñ¤"§*¡*Ò,Ð,Ð,Ø×Ñ¤"§*¡*Ò,Ð,Ð,ä�M =´tÕ<Ü�H˜h¬TÕ2ä�z =Ô1Ü�z =Ô1Ü�u˜hÔ'Ü�u˜hÕ'r!   ÚX_shape))rC   r&   )rC   é   )rb   rb   z/Known to fail for CSR arrays, see issue #30131.)Úreason)Úmarksc                 ó„  — t         j                  j                  |«      }| \  }}|j                  ||«      }|j                  |«      }|� ||«      }t	        |¬«      }	t        di |	¤Žj                  ||d¬«      }
|
j                  j                  «       }|r|
j                  }t        j                  |«      }|
j                  |||¬«       t        |
j                  |d¬«       |rt        |
j                  «       d}|
j                  |||¬«       t        |
j                  |d¬«       |rt        |
j                  «       |j                  dd|j                  d	   ¬
«      }|
j                  |||¬«      }
|
j                  j                  «       }|r|
j                  }|
j                  ||t         j                  |z  ¬«       t        |
j                  ||€dnd¬«       |rt        |
j                  «       |j                  «       }d	|dd |ddxxx dz  ccc |
j                  |||¬«       |
j                  j                  «       }|r|
j                  }|
j                  |dd |dd |dd ¬«       t        |
j                  |d¬«       |rt        |
j                  «       |� t        j                   ||d|dz   gd¬«      }nt        j"                  ||d|dz   gd	¬«      }t        j"                  ||d|dz   g«      }|j                  «       }|d|dz  xxx dz  ccc t        j"                  ||d|dz   gd	¬«      }t        di |	¤Žj                  |||¬«      }t        di |	¤Žj                  |||¬«      }t        |j                  |j                  d¬«       |r!t        |j                  |j                  «       yy)zõTest that the impact of sample_weight is consistent.

    Note that this test is stricter than the common test
    check_sample_weight_equivalence alone and also tests sparse X.
    It is very similar to test_enet_sample_weight_consistency.
    NrW   r*   r   rë   g     À^@g{®Gáz„?r   r   )ÚlowÚhighr'   gñhãˆµøä>éûÿÿÿiè  Úcsc)rÜ   r³   rm   )r,   r-   r.   rc   rn   r   r   r   r’   r   Ú	ones_liker   r0   r1   Úpir   rz   Úconcatenate)r5  r"   r#   r5   r6   r7   r8   r   r9   rq   r   ÚcoefÚ	interceptr+   Úsample_weight_0Úcoef_0Úintercept_0rZ   Úy2Úsample_weight_1Úsample_weight_2Úreg1Úreg2s                          r   Ú0test_linear_regression_sample_weight_consistencyrK  î  sd  € ô0 �)‰)×
Ñ
Ð 2Ó
3€CØ#Ñ€Iˆzà�‰�˜JÓ'€AØ�‰�Ó€AØÐ#Ù˜QÓˆÜ Ô.€Fä
Ñ
$˜VÑ
$×
(Ñ
(¨¨A¸TÐ
(Ó
B€CØ�9‰9�>‰>Ó€DÙØ—N‘Nˆ	ô
 —L‘L “O€MØ‡G�GˆAˆq €GÔ.Ü�C—I‘I˜t¨$Õ/ÙÜ˜Ÿ™¨	Ô2ð €MØ‡G�GˆAˆq €GÔ.Ü�C—I‘I˜t¨$Õ/ÙÜ˜Ÿ™¨	Ô2ð —K‘K D¨q°q·w±w¸q±z�KÓB€MØ
�'‰'�!�Q mˆ'Ó
4€CØ�9‰9�>‰>Ó€DÙØ—N‘Nˆ	à‡G�GˆAˆq¤§¡¨Ñ 5€GÔ6Ü�C—I‘I˜tÐ2BÐ2J©$ÐPTÕUÙÜ˜Ÿ™¨	Ô2ð $×(Ñ(Ó*€OØ€O�B�CÐØ€b€cƒFˆd�NƒFØ‡G�GˆAˆq €GÔ0Ø�Y‰Y�^‰^Ó€FÙØ—n‘nˆØ‡G�GˆAˆcˆrˆF�A�c�r�F¨-¸¸Ð*<€GÔ=Ü�C—I‘I˜v¨DÕ1ÙÜ˜Ÿ™¨Ô4ð Ð#Ü�]‰]˜A˜qÐ!1 9°¡>Ð2Ð3¸EÔB‰ä�^‰^˜Q Ð"2 I°¡NÐ 3Ð4¸1Ô=ˆÜ	�‰˜˜AÐ. 	¨Q¡Ð/Ð0Ó	1€BØ#×(Ñ(Ó*€OØÐ$�i 1‘nÓ%¨Ñ*Ó%Ü—n‘nØ	˜Ð&6¨	°Q©Ð7Ð8¸qô€Oô Ñ%˜fÑ%×)Ñ)¨!¨Q¸oÐ)ÓN€DÜÑ%˜fÑ%×)Ñ)¨"¨bÀÐ)ÓP€DÜ�D—J‘J §
¡
°Õ6ÙÜ˜Ÿ™¨¯©Õ9ð r!   ):r©   Únumpyr,   rJ   Úscipyr   r   Úsklearn.datasetsr   r   r   Úsklearn.linear_modelr   Úsklearn.linear_model._baser	   r
   r   Úsklearn.preprocessingr   Úsklearn.utils._testingr   r   r   Úsklearn.utils.fixesr   r   r   r   ré   r    ÚmarkÚparametrizerA   rN   rU   r`   rh   rt   r}   r€   r‚   r…   rŠ   r�   r˜   r±   r¾   rÂ   rÓ   rØ   rÞ   ræ   r  r  r4  ÚparamÚxfailrK  )Ú	containers   0r   ú<module>rY     s)  ðó ã Û ß  ç QÑ QÝ 1÷ñ õ
 4÷ñ ÷
ó ð €ò3ð0 ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜¨4°¨-Ó8ñ$+ó 9ó Fð$+òN	ð ‡�×ÑÐ0°6¸6Ð2BÓCñ'ó Dð'ò"Pò&=ð ‡�×Ñ˜¨4°¨-Ó8Ø‡�×Ñ˜¨.Ó9ñ7ó :ó 9ð7ò$Pð" ‡�×Ñ˜¨.Ó9ñPó :ðPò")ò.;ò"
9ò9ð" ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜ D¨% =Ó1ñ38ó 2ó Fð38òl0ò87ð< ‡�×ÑÐ+¨d¨V°nÑ-DÓEñ.ó Fð.ð* ‡�×ÑÐ*¨U°D¨MÓ:Ø‡�×ÑÐ+¨d¨V°nÑ-DÓEñF1ó Fó ;ðF1ðR ‡�×Ñ˜¨.Ó9ñ:ó :ð:ð< ‡�×Ñ˜¨.Ó9ñ ó :ð ð ‡�×ÑÐ+¨d¨V°nÑ-DÓEØ‡�×Ñ˜ MÓ2ñ*ó 3ó Fð*ð* ‡�×ÑÐ*¨U°D¨MÓ:Ø‡�×Ñ˜¨5°$¨-Ó8ñ^;ó 9ó ;ð^;ðB ‡�×Ñ˜ t¨Q iÓ0Ø‡�×ÑÐ+¨d¨V°nÑ-DÓEñ&5ó Fó 1ð&5ðR ‡�×Ñ˜¨.Ó9ñ*(ó :ð*(ðZ ‡�×Ñ˜Ò$CÓDØ‡�×ÑØØ	€Fð (öð ð 	ˆ�‰ØØ—+‘+×#Ñ#ØHð $ó ö	
òñ	óð ‡�×Ñ˜¨5°$¨-Ó8ñQ:ó 9óó EñQ:ùòs   Í"5O