
    -iy                     *   S r SSKrSSKrSSKrSSKrSSKJr  SSKJr  SSK	J
r
  SSKJr  SSKrSSKrSSKrSSKrSSKJr  SSKJr  SS	KJrJrJr  SS
KJr  SSKJr  SSKJ r J!r!J"r"  Sr#Sr$Sr% " S S5      r&\" \SS9rS r'\RP                  RS                  SSSS0SSS4SSSS.SSS4SSS0SSS4SSSS.SSS4S SS 0S!S"S4S S#SS.S!S"S4S$SS$0S%S&S'4S(SS(0S)S*S4S(S+S,0S)S*S4S-SS-0S"S.S4S-S+S/0S"S.S4S0SS00S1S%S4/5      \RP                  RS                  S2S3S4/5      \RP                  RS                  S5SS6/5      S7 5       5       5       r*\RP                  RS                  SSSS0SSS4SSSS.SSS4SSS0SSS4SSSS.SSS4S SS 0S!S"S4S S#SS.S!S"S4S$SS$0S%S&S'4S(SS(0S)S*S4S(S+S,0S)S*S4S-SS-0S"S.S4S-S+S/0S"S.S4/5      \RP                  RS                  S2S3S4/5      S8 5       5       r+\RP                  RS                  S/ S9Q5      S: 5       r,\RP                  RS                  S2S3S4/5      S; 5       r-\RP                  RS                  S2S3S4/5      S< 5       r.\RP                  RS                  S2S3S4/5      \RP                  RS                  S=S>S>S?//5      S@ 5       5       r/\RP                  RS                  S/ SAQ5      \RP                  RS                  S2S3S4/5      SB 5       5       r0\RP                  RS                  S/ SCQ5      \RP                  RS                  S2S3S4/5      SD 5       5       r1SE r2\Rf                  " SFSG9SH 5       r4\Rf                  " SFSG9SI 5       r5\RP                  RS                  SJ/ SKQ5      \RP                  RS                  S5SS6/5      SL 5       5       r6\RP                  RS                  SMS2SN0SO4SPSN0SQ4/5      SR 5       r7\RP                  RS                  SSSSTSU.STSTSU.S6S4SU.S6STSU./5      SV 5       r8\RP                  Rs                  SW5      \RP                  RS                  SMS2S40SX4SPS0SY4S4SSZ.SY4/5      S[ 5       5       r:\RP                  Rs                  SW5      \RP                  RS                  S\S]S^/5      S_ 5       5       r;S` r<\RP                  RS                  S5SS6/5      Sa 5       r=\RP                  RS                  S5SS6/5      Sb 5       r>\RP                  RS                  S5SS6/5      \RP                  RS                  S2S3S4/5      Sc 5       5       r?\RP                  RS                  S5SS6/5      \RP                  RS                  SdSSe0SSfSSg./5      Sh 5       5       r@\RP                  RS                  S5SS6/5      \RP                  RS                  SiSeS+Sf0\ASj4SSSkSl/Sm.\ASn4S0S0S6So.\ASp4SSSqSSr.\ASs4SSSqS6Sr.\ASs4SSStSm.\BSu4SSStSl/Sm.\BSu4/5      \RP                  RS                  S2S3S4/5      Sv 5       5       5       rC\RP                  RS                  SwSxSSySg.\ASz4SxS{S|.\AS}4SxS{SySg.\AS~40 \AS4/5      S 5       rD\RP                  RS                  S5SS6/5      S 5       rE\RP                  RS                  S5SS6/5      S 5       rF\RP                  RS                  S5SS6/5      S 5       rGS rH\RP                  RS                  S5SS6/5      S 5       rI\RP                  RS                  SSS6/5      S 5       rJS rKS rL\RP                  RS                  S5SS6/5      S 5       rM\RP                  RS                  S/ SQ5      S 5       rNS rO\RP                  RS                  S5SS6/5      \RP                  RS                  S2S5      S 5       5       rPS rQS rRS rSg)zTest the openml loader.    N)partial)	resources)BytesIO)	HTTPError)config_context)fetch_openml)_get_local_path_open_openml_url_retry_with_clean_cache)Bunch)check_pandas_support)SkipTestassert_allcloseassert_array_equalz"sklearn.datasets.tests.data.openmlTzdata/v1/download/{}c                   B    \ rS rSrS rSS jrS rS rS rS r	S r
S	rg
)_MockHTTPResponse&   c                     Xl         X l        g Ndatais_gzip)selfr   r   s      U/var/www/html/venv/lib/python3.13/site-packages/sklearn/datasets/tests/test_openml.py__init___MockHTTPResponse.__init__'   s    	    c                 8    U R                   R                  U5      $ r   )r   read)r   amts     r   r   _MockHTTPResponse.read+   s    yy~~c""r   c                 8    U R                   R                  5         g r   )r   closer   s    r   r#   _MockHTTPResponse.close.   s    		r   c                 0    U R                   (       a  SS0$ 0 $ )NzContent-Encodinggzipr   r$   s    r   info_MockHTTPResponse.info1   s    <<&//	r   c                 ,    [        U R                  5      $ r   )iterr   r$   s    r   __iter___MockHTTPResponse.__iter__6   s    DIIr   c                     U $ r    r$   s    r   	__enter___MockHTTPResponse.__enter__9   s    r   c                     g)NFr0   )r   exc_typeexc_valexc_tbs       r   __exit___MockHTTPResponse.__exit__<   s    r   r   N))__name__
__module____qualname____firstlineno__r   r   r#   r)   r-   r1   r7   __static_attributes__r0   r   r   r   r   &   s%    #
r   r   )	data_homec                 T  ^^^^^^^	^
^^^^^^ SmSmSmSmSm[         R                  m[        S-   SU 3-   m
U4S jmUU
UU4S	 jm	U	U4S
 jmU	U4S jmU	U4S jmUU
UU4S jmUUUUUUUU4S jn[        (       a,  U R	                  [
        R                  R                  SU5        g g )Nz(https://api.openml.org/api/v1/json/data/z1https://api.openml.org/api/v1/json/data/features/z'https://www.openml.org/data/v1/downloadz-https://api.openml.org/api/v1/json/data/list/z.gz.id_c                   > [         R                  " SSU [        S5      S  5      U-   T-   nUR                  SS5      R                  SS5      R                  SS	5      R                  S
S5      R                  SS5      R                  SS5      R                  SS5      R                  SS5      R                  SS5      R                  SS5      R                  SS5      $ )Nz\W-zhttps://api.openml.org/z-json-data-listz-jdlz-json-data-featuresz-jdfz-json-data-qualitiesz-jdqz
-json-dataz-jdz
-data_namez-dnz	-downloadz-dlz-limitz-lz-data_versionz-dvz-statusz-sz-deactivatedz-dactz-activez-act)resublenreplace)urlsuffixoutputpath_suffixs      r   
_file_name4_monkey_patch_webbased_functions.<locals>._file_nameU   s    FF5#s3'@#A#CDE 	 NN,f5W*F3W+V4W\5)W\5)W[%(WXt$W_e,WY%W^W-WY'	
r   c                   > U R                  U5      (       d   U< SU < 35       eT	" X5      n[        R                  " T
5      U-  nUR                  S5       nU(       a5  T(       a.  [	        UR                  5       5      n[        US5      sS S S 5        $ T" US5      n[	        UR                  5       5      n[        US5      sS S S 5        $ ! , (       d  f       g = f)N does not match rbTF)
startswithr   filesopenr   r   r   )rI   has_gzip_headerexpected_prefixrJ   data_file_namedata_file_pathffpdecompressed_frM   data_modulegzip_responseread_fns            r   _mock_urlopen_shared>_monkey_patch_webbased_functions.<locals>._mock_urlopen_sharedk   s    ~~o.. 	
!!1#9	
. $C0"5F  &!=QVVX&(T2 '&
 ")D!1^0023(U3 '&&s   3C-C
Cc                    > T" U UTSS9$ N.jsonrI   rU   rV   rJ   r0   )rI   rU   r_   url_prefix_data_descriptions     r   _mock_urlopen_data_descriptionH_monkey_patch_webbased_functions.<locals>._mock_urlopen_data_description|   s    #+7	
 	
r   c                    > T" U UTSS9$ rb   r0   )rI   rU   r_   url_prefix_data_featuress     r   _mock_urlopen_data_featuresE_monkey_patch_webbased_functions.<locals>._mock_urlopen_data_features   s    #+4	
 	
r   c                 @   > U R                  SS5      S   nT" UUTSS9$ )N/   r   z.arffrd   )rsplit)rI   rU   url_without_filenamer_   url_prefix_download_datas      r   _mock_urlopen_download_dataE_monkey_patch_webbased_functions.<locals>._mock_urlopen_download_data   s4      #zz#q1!4#$+4	
 	
r   c                   > U R                  T5      (       d   T< SU < 35       eT	" U S5      n[        R                  " T
5      U-  nUR                  S5       nT" US5      nUR	                  5       R                  S5      n[        R                  " U5      nS S S 5        SW;   a  [        S SSS [        5       S9eUR                  S5       nU(       a.  [        UR	                  5       5      n[        US	5      sS S S 5        $ T" US5      n[        UR	                  5       5      n[        US
5      sS S S 5        $ ! , (       d  f       N= f! , (       d  f       g = f)NrP   rc   rQ   zutf-8error  Simulated mock errorrI   codemsghdrsrZ   TF)rR   r   rS   rT   r   decodejsonloadsr   r   r   )rI   rU   rW   rX   rY   r[   	decoded_s	json_datarZ   rM   r\   r^   url_prefix_data_lists            r   _mock_urlopen_data_listA_monkey_patch_webbased_functions.<locals>._mock_urlopen_data_list   s<   ~~233 	
#&&6sg>	
3 $C1"5F   &!$Q-N&++-44W=I

9-I ' is(>Tgi    &!QVVX&(T2 '&
 ")D!1^0023(U3 '& '& '&s   ?D9,E
-E
9
E

Ec                 X  > U R                  5       nU R                  S5      S:H  nUR                  T5      (       a  T" X45      $ UR                  T
5      (       a  T" X45      $ UR                  T5      (       a  T" X45      $ UR                  T	5      (       a  T" X45      $ [        SU-  5      e)NzAccept-encodingr'   zUnknown mocking URL pattern: %s)get_full_url
get_headerrR   
ValueError)requestargskwargsrI   rU   rf   rj   r   rr   re   ri   r   rq   s        r   _mock_urlopen7_monkey_patch_webbased_functions.<locals>._mock_urlopen   s    ""$!,,->?6I>>.//*3@@^^455.sDD^^455.sDD^^7881#GG>DEEr   urlopen)r'   rT   OPENML_TEST_DATA_MODULEtest_offlinesetattrsklearndatasets_openml)contextdata_idr]   r   rM   rf   rj   r   rr   r_   r\   rL   r^   re   ri   r   rq   s     ` @@@@@@@@@@@@@r    _monkey_patch_webbased_functionsr   G   s     #MRHJKiiG)C/Cy/AK
,4 4"


$4 46F F |((00)]K r   z9data_id, dataset_params, n_samples, n_features, n_targets=   r         rn   iris)nameversion      r   anneal1        cpu鍞     H      _  
      r   zadult-census  M   MiceProtein  i  parser	liac-arffpandasr]   Fc                    [         R                  " S5      n[        XUS9  [        S	SSUS.UD6n	[	        U	R
                  S   5      U:X  d   e[        U	[        5      (       d   e[        U	R                  UR                  5      (       d   eU	R                  R                  X4U-   4:X  d   e[        U	R                  UR                  5      (       d   eU	R                  R                  X44:X  d   eUS:X  aE  [        U	R                  UR                  5      (       d   eU	R                  R                  U4:X  d   eOD[        U	R                  UR                  5      (       d   eU	R                  R                  X54:X  d   eU	R                  b   eg)
zCheck the behaviour of `fetch_openml` with `as_frame=True`.

Fetch by ID and/or name (depending if the file was previously cached).
r   r]   TFas_framecacher   idrn   Nr0   )pytestimportorskipr   r   intdetails
isinstancer   frame	DataFrameshaper   targetSeries
categories)
monkeypatchr   dataset_params	n_samples
n_features	n_targetsr   r]   pdbunchs
             r   test_fetch_openml_as_frame_truer      sg   P 
		X	&B$[W  	E u}}T"#w...eU####ekk2<<0000;;,B CCCCejj",,////::	6666A~%,,		2222||!!i\111%,,5555||!!i%;;;;###r   c                    [         R                  " S5        [        XSS9  [        S	SSUS.UD6n[	        UR
                  S   5      U:X  d   e[        U[        5      (       d   eUR                  b   e[        UR                  [        R                  5      (       d   eUR                  R                  X44:X  d   e[        UR                  [        R                  5      (       d   eUS:X  a  UR                  R                  U4:X  d   eOUR                  R                  X54:X  d   e[        UR                  [        5      (       d   eg)
zfCheck the behaviour of `fetch_openml` with `as_frame=False`.

Fetch both by ID and/or name + version.
r   Tr   Fr   r   Nrn   r0   )r   r   r   r   r   r   r   r   r   r   npndarrayr   r   r   dict)r   r   r   r   r   r   r   r   s           r    test_fetch_openml_as_frame_falser     s&   H !$[N  	E u}}T"#w...eU####;;ejj"**----::	6666ellBJJ////A~||!!i\111||!!i%;;;;e&&----r   )r   r   r   c                    ^
^^ [         R                  " S5      m[        XSS9  [        USSSS9n[        USSSS9nUR                  UR                  snm
U
U4S jnUR                  U5      nTR                  R                  UT
5        UR                  UR                  snmTR                  R                  TUR                     T
5        UU4S jnUR                  U5      n	TR                  R                  U	T5        g	)
z:Check the consistency of the LIAC-ARFF and pandas parsers.r   Tr   Fr   r   r   r   r   c                    > TU R                      nTR                  R                  R                  U5      (       a  U R	                  UR
                  5      $ U $ r   )r   apitypesis_numeric_dtypeastypedtype)seriespandas_seriesdata_pandasr   s     r   convert_numerical_dtypesFtest_fetch_openml_consistency_parser.<locals>.convert_numerical_dtypesk  sD    #FKK066<<((77==!4!455Mr   c                 X  > TU R                      nTR                  R                  R                  U5      (       a  U R	                  UR
                  5      $ [        UR
                  TR                  5      (       a/  U R                  R                  UR                  R                  5      $ U $ r   )r   r   r   r   r   r   r   CategoricalDtypecatrename_categoriesr   )r   r   frame_pandasr   s     r   (convert_numerical_and_categorical_dtypesVtest_fetch_openml_consistency_parser.<locals>.convert_numerical_and_categorical_dtypes  s    $V[[166<<((77==!4!455++R-@-@AA :://0A0A0L0LMMMr   N)
r   r   r   r   r   applytestingassert_frame_equalr   feature_names)r   r   
bunch_liacbunch_pandas	data_liacr   data_liac_with_fixed_dtypes
frame_liacr   frame_liac_with_fixed_dtypesr   r   r   s             @@@r   $test_fetch_openml_consistency_parserr   S  s     
		X	&B$[N	J  	L (__l.?.?I{ #,//2J"KJJ!!"={K  *//1C1CJ JJ!!,|/I/I"JKX $.#3#30$  JJ!!">Mr   c                     [         R                  " S5        Sn[        XSS9  [        USSUS9n[        USSUS9n[	        UR
                  UR
                  5        [        UR                  UR                  5        g)zVCheck the equivalence of the dataset when using `as_frame=False` and
`as_frame=True`.
r   r   Tr   Fr   N)r   r   r   r   r   r   r   r   )r   r   r   bunch_as_frame_truebunch_as_frame_falses        r   -test_fetch_openml_equivalence_array_dataframer     s    
 !G$[N&	 (	 (--/B/G/GH+224G4N4NOr   c                    [         R                  " S5      nUR                  R                  R                  nSnSnSnSnU" / SQ5      n[
        R                  /S-  n	/ SQn
S	n[        XS
5        [        US
SUS9nUR                  nUR                  nUR                  n[        XR                  5      (       d   e[
        R                  " UR                  U	:H  5      (       d   eUR                   U:X  d   e[
        R                  " UR"                  U
:H  5      (       d   e[
        R                  " UR$                  U
:H  5      (       d   eUR&                  U/:X  d   e[        XR(                  5      (       d   eUR*                  U:X  d   eUR                   U:X  d   eUR,                  U:X  d   eUR.                  R0                  (       d   e[        XR                  5      (       d   eUR                   U:X  d   e[
        R                  " UR                  X/-   :H  5      (       d   eUR.                  R0                  (       d   eg)z>Check fetching on a numerical only dataset with string labels.r   r   r   r   )r   )r      )zIris-setosazIris-versicolorzIris-virginicar   )sepallength
sepalwidthpetallength
petalwidthclassTFr   N)r   r   r   r   r   r   float64r   r   r   r   r   r   r   alldtypesr   columnsr   target_namesr   r   r   index	is_unique)r   r   r   r   r   
data_shapetarget_shapeframe_shapetarget_dtypedata_dtypes
data_namestarget_namer   r   r   r   s                   r   test_fetch_openml_iris_pandasr	    s    
		X	&Bvv||44GJLK#<L ::,"KKJK$[4@	E ::D\\FKKEdLL))))66$++,----::###66$,,*,----66%%%34444+...fii((((<<<'''<<<''';;+%%%<<!!!!e\\****;;+%%%66%,,+">>????;;    r   target_columnr   r   c                 0   [         R                  " S5      nSn[        XS5        [        USSUUS9n[        USSUS9nUR                  R                  UR                  UR                  5        [        U[        5      (       a\  UR                  R                  UR                  R                  UR                  U5      5        UR                  R                  S:X  d   eg	UR                  R                  U:X  d   eUR                  R                  S:X  d   eg	)
z@Check that we can force the target to not be the default target.r   r   TF)r   r   r   r
  r   r   )r      r   N)r   r   r   r   r   r   r   r   listassert_index_equalr   r   Indexr   r   r   )r   r   r
  r   r   bunch_forcing_targetbunch_defaults          r   !test_fetch_openml_forcing_targetsr    s    
		X	&BG$[4@'# !	M JJ!!"6"<"<m>Q>QR-&&


%% ''//-1H	
 $((..(:::#**//=@@@#((..(:::r   )r   r   r   r   r   c                    [         R                  " S5      n[        XSS9  [        USSSUS9n[        USSSUS9u  pVUR                  R                  UR                  U5        [        XcR                  5      (       a'  UR                  R                  UR                  U5        gUR                  R                  UR                  U5        g)z>Check the behaviour of `return_X_y=True` when `as_frame=True`.r   Tr   Fr   r   r   
return_X_yr   N)r   r   r   r   r   r   r   r   r   assert_series_equalr   )r   r   r   r   r   Xys          r   .test_fetch_openml_equivalence_frame_return_X_yr    s     
		X	&B$[NE DA JJ!!%**a0!YY


&&u||Q7


%%ellA6r   )r   r   r   r   c                     [         R                  " S5        [        XSS9  [        USSSUS9n[        USSSUS9u  pE[	        UR
                  U5        [	        UR                  U5        g)z?Check the behaviour of `return_X_y=True` when `as_frame=False`.r   Tr   Fr  N)r   r   r   r   r   r   r   )r   r   r   r   r  r  s         r   .test_fetch_openml_equivalence_array_return_X_yr    sp     !$[NE DA uzz1%u||Q'r   c                     [         R                  " S5        Sn[        XSS9  Sn[        UUSSS9n[        UUSSS9nUR                  R
                  R                  S:X  d   eUR                  R
                  S	:X  d   eg
)z9Check the difference between liac-arff and pandas parser.r   r   Tr   Fr   r   rY   ON)r   r   r   r   r   r   kind)r   r   r   bunch_liac_arffr   s        r   $test_fetch_openml_difference_parsersr   6  s    
!G$[N H"	O  	L %%**c111""c)))r   module)scopec                  2    / SQ/ SQ/ SQ/ SQ/ SQ/ SQ/ SQS.$ )	z+Returns the columns names for each dataset.)r   r   r   r   r   )'familyzproduct-typesteelcarbonhardnesstemper_rolling	conditionformabilitystrength
non-ageingsurface-finishzsurface-qualityenamelabilitybcbfbtbw%2Fmeblmchromphoscbondmarviexptlferrocorrblue%2Fbright%2Fvarn%2Fcleanlustrejurofmspr   thickwidthrG   oilborepackingr   )vendorMYCTMMINMMAXCACHCHMINCHMAXr   )N Mean_Acc1298_Mean_Mem40_CentroidMean_Acc1298_Mean_Mem40_RolloffMean_Acc1298_Mean_Mem40_FluxMean_Acc1298_Mean_Mem40_MFCC_0Mean_Acc1298_Mean_Mem40_MFCC_1Mean_Acc1298_Mean_Mem40_MFCC_2Mean_Acc1298_Mean_Mem40_MFCC_3Mean_Acc1298_Mean_Mem40_MFCC_4Mean_Acc1298_Mean_Mem40_MFCC_5Mean_Acc1298_Mean_Mem40_MFCC_6Mean_Acc1298_Mean_Mem40_MFCC_7Mean_Acc1298_Mean_Mem40_MFCC_8Mean_Acc1298_Mean_Mem40_MFCC_9Mean_Acc1298_Mean_Mem40_MFCC_10Mean_Acc1298_Mean_Mem40_MFCC_11Mean_Acc1298_Mean_Mem40_MFCC_12Mean_Acc1298_Std_Mem40_CentroidMean_Acc1298_Std_Mem40_RolloffMean_Acc1298_Std_Mem40_FluxMean_Acc1298_Std_Mem40_MFCC_0Mean_Acc1298_Std_Mem40_MFCC_1Mean_Acc1298_Std_Mem40_MFCC_2Mean_Acc1298_Std_Mem40_MFCC_3Mean_Acc1298_Std_Mem40_MFCC_4Mean_Acc1298_Std_Mem40_MFCC_5Mean_Acc1298_Std_Mem40_MFCC_6Mean_Acc1298_Std_Mem40_MFCC_7Mean_Acc1298_Std_Mem40_MFCC_8Mean_Acc1298_Std_Mem40_MFCC_9Mean_Acc1298_Std_Mem40_MFCC_10Mean_Acc1298_Std_Mem40_MFCC_11Mean_Acc1298_Std_Mem40_MFCC_12Std_Acc1298_Mean_Mem40_CentroidStd_Acc1298_Mean_Mem40_RolloffStd_Acc1298_Mean_Mem40_FluxStd_Acc1298_Mean_Mem40_MFCC_0Std_Acc1298_Mean_Mem40_MFCC_1Std_Acc1298_Mean_Mem40_MFCC_2Std_Acc1298_Mean_Mem40_MFCC_3Std_Acc1298_Mean_Mem40_MFCC_4Std_Acc1298_Mean_Mem40_MFCC_5Std_Acc1298_Mean_Mem40_MFCC_6Std_Acc1298_Mean_Mem40_MFCC_7Std_Acc1298_Mean_Mem40_MFCC_8Std_Acc1298_Mean_Mem40_MFCC_9Std_Acc1298_Mean_Mem40_MFCC_10Std_Acc1298_Mean_Mem40_MFCC_11Std_Acc1298_Mean_Mem40_MFCC_12Std_Acc1298_Std_Mem40_CentroidStd_Acc1298_Std_Mem40_RolloffStd_Acc1298_Std_Mem40_FluxStd_Acc1298_Std_Mem40_MFCC_0Std_Acc1298_Std_Mem40_MFCC_1Std_Acc1298_Std_Mem40_MFCC_2Std_Acc1298_Std_Mem40_MFCC_3Std_Acc1298_Std_Mem40_MFCC_4Std_Acc1298_Std_Mem40_MFCC_5Std_Acc1298_Std_Mem40_MFCC_6Std_Acc1298_Std_Mem40_MFCC_7Std_Acc1298_Std_Mem40_MFCC_8Std_Acc1298_Std_Mem40_MFCC_9Std_Acc1298_Std_Mem40_MFCC_10Std_Acc1298_Std_Mem40_MFCC_11Std_Acc1298_Std_Mem40_MFCC_12BH_LowPeakAmpBH_LowPeakBPMBH_HighPeakAmpBH_HighPeakBPMBH_HighLowRatioBHSUM1BHSUM2BHSUM3zamazed.suprisedzhappy.pleasedzrelaxing.calmzquiet.stillz
sad.lonelyzangry.aggresive)age	workclasszfnlwgt:z
education:zeducation-num:zmarital-status:zoccupation:zrelationship:zrace:zsex:zcapital-gain:zcapital-loss:zhours-per-week:znative-country:r   )NDYRK1A_NITSN1_NBDNF_NNR1_NNR2A_NpAKT_NpBRAF_N	pCAMKII_NpCREB_NpELK_NpERK_NpJNK_NPKCA_NpMEK_NpNR1_NpNR2A_NpNR2B_NpPKCAB_NpRSK_NAKT_NBRAF_NCAMKII_NCREB_NELK_NERK_NGSK3B_NJNK_NMEK_NTRKA_NRSK_NAPP_N
Bcatenin_NSOD1_NMTOR_NP38_NpMTOR_NDSCR1_NAMPKA_NNR2B_NpNUMB_NRAPTOR_NTIAM1_NpP70S6_NNUMB_NP70S6_NpGSK3B_NpPKCG_NCDK5_NS6_NADARB1_NAcetylH3K9_NRRP1_NBAX_NARC_NERBB4_NnNOS_NTau_NGFAP_NGluR3_NGluR4_NIL1B_NP3525_NpCASP9_NPSD95_NSNCA_NUbiquitin_NpGSK3B_Tyr216_NSHH_NBAD_NBCL2_NpS6_NpCFOS_NSYP_N	H3AcK18_NEGR1_NH3MeK4_NCaNA_Nr   )pclasssurvivedr   sexr  sibspparchticketfarecabinembarkedboatbody	home.destr   r   r   r   r   r   r   r0   r0   r   r   datasets_column_namesr  U  s9     P(
R SO
`
"O
`
{m mr   c                      0 0 SS_SS_SS_SS_S	S
_SS_SS_SS_SS
_SS_SS_SS_SS_SS_SS_SS
_SS_SSSSSSSSS
SS.
E0 0 0 SS0SSSSSSS S!.S".$ )#Nr$  r   r(  	   r)  r   r*  r   r,  r   r-  r.  r/  r0  r1  r2     r3  r4  r5  r6  r7  r8  )
r9  r:  r;  r<  r=  r>  r?  r@  rC  rE  r  r   i  rn   i  i7  i  i4  )r  r  r  r  r  r  r  r  r0   r0   r   r   datasets_missing_valuesr  H  s0    
b
a
 
 1	

 "
 b
 R
 "
 "
 "
 q
 !
 
 R
 B
  R!
" R#
$ ,.7
: !}
G, ,r   zJdata_id, parser, expected_n_categories, expected_n_floats, expected_n_ints))r   r   rn   r   r   )r   r   rn   r   r   )r   r   !   r   r   )r   r   r  r   r   )r   r   rn   r   r   )r   r   rn   r   r   )r   r   r   r   r   )r   r   r   E   r  )r   r   r  r   r   )r   r   r  r   r   )r   r   rn   r   r   )r   r   rn   r   r   )r   r   r  r   r   )r   r   r  r  r  c	           	      R   [         R                  " S5      n	U	R                  R                  R                  n
[        XUS9  [        USSUS9nUR                  n[        UR                   Vs/ s H  n[        X5      (       d  M  UPM     sn5      n[        UR                   Vs/ s H  oR                  S:X  d  M  UPM     sn5      n[        UR                   Vs/ s H  oR                  S:X  d  M  UPM     sn5      nX:X  d   eX:X  d   eUU:X  d   eUR                  R                  5       Xq   :X  d   eUR                  5       R                  5       R!                  5       nUR#                  5        H"  u  nnX   R%                  US5      nUU:X  a  M"   e   g	s  snf s  snf s  snf )
zUCheck that `fetch_openml` infer the right number of categories, integers, and
floats.r   r   TFr   rY   ir   N)r   r   r   r   r   r   r   r   rG   r   r   r  r   tolistisnasumto_dictitemsget)r   r   r   expected_n_categoriesexpected_n_floatsexpected_n_intsr]   r  r  r   r   r   r   r   n_categoriesn_floatsn_intsframe_feature_to_n_nanr   	n_missingexpected_missings                        r   !test_fetch_openml_types_inferencer	  y  st   P 
		X	&Bvv||44$[W	E KKE!LLPL5Ju,OLPL u||I|ezzS7HE|IJHU\\G\EZZ35F%\GHF000(((_$$$==!%:%CCCC"ZZ\--/7791779i2;??aH,,,, : 	QIGs$   ,FF$F;FF$2F$zparams, err_msgunknownz:The 'parser' parameter of fetch_openml must be a str amongr   z<The 'as_frame' parameter of fetch_openml must be an instancec                     Sn[        XS5        [        R                  " [        US9   [	        SSU0UD6  S S S 5        g ! , (       d  f       g = f)Nr   Tmatchr   r0   )r   r   raisesr   r   r   paramserr_msgr   s       r   &test_fetch_openml_validation_parameterr    s=     G$[4@	z	1/W// 
2	1	1s	   ?
Ar  auto)r   r   c                     Sn [        S5        [        S5      e! [         aR    [        XS5        Sn[        R
                  " [        US9   [        S	SU0UD6  SSS5         g! , (       d  f        g= ff = f)
z=Check that we raise the proper errors when we require pandas.r   !test_fetch_openml_requires_pandasz.This test requires pandas to not be installed.Tz:requires pandas to be installed. Alternatively, explicitlyr  r   Nr0   )r   r   ImportErrorr   r   r  r   )r   r  r   r  s       r   'test_fetch_openml_requires_pandas_errorr    ss     GI@A GHH  4(tDN]];g633F3 76664s'    1A6A#A6#
A2	-A62A6z2ignore:Version 1 of dataset Australian is inactivez:Sparse ARFF datasets cannot be loaded with parser='pandas'z9Sparse ARFF datasets cannot be loaded with as_frame=True.)r   r   c                     [         R                  " S5        Sn[        XS5        [         R                  " [        US9   [        SUSS.UD6  SSS5        g! , (       d  f       g= f)	zlCheck that we raise the expected error for sparse ARFF datasets and
a wrong set of incompatible parameters.
r   $  Tr  F)r   r   Nr0   )r   r   r   r  r   r   r  s       r   #test_fetch_openml_sparse_arff_errorr    sX    , !G$[4@	z	1 	
	
 	
 
2	1	1s   A
A$zdata_id, data_type)r   	dataframe)r  sparsec                     [         R                  " S5      n[        XS5        [        USSS9nUS:X  a  UR                  O[
        R                  R                  n[        UR                  U5      (       d   eg)z&Check the auto mode of `fetch_openml`.r   Tr  F)r   r   r   r  N)
r   r   r   r   r   scipyr  
csr_matrixr   r   )r   r   	data_typer   r   klasss         r   test_fetch_openml_auto_moder"    s_     
		X	&B$[4@&FD%4BLL%,,:Q:QEdii''''r   c           	         [         R                  " S5        Sn[        XS5        Sn[         R                  " [        US9   [        SS9   [        USSS	S
9  SSS5        SSS5        g! , (       d  f       N= f! , (       d  f       g= f)zWCheck that we raise a warning regarding the working memory when using
LIAC-ARFF parser.r   r   Tz*Could not adhere to working_memory config.r  gư>)working_memoryFr   r   N)r   r   r   warnsUserWarningr   r   )r   r   rz   s      r   :test_convert_arff_data_dataframe_warning_low_memory_pandasr'  #  sm     !G$[4@
6C	k	-40"	 1 
.	-00 
.	-s$    
A9
A(A9(
A6	2A99
Bc                     SnSn[        XU5        [        R                  " S5      n[        R                  " [
        US9   [        USSSS9  SSS5        g! , (       d  f       g= f)	zXCheck that a warning is raised when multiple versions exist and no version is
requested.r   r   a;  Multiple active versions of the dataset matching the name iris exist. Versions may be fundamentally different, returning version 1. Available versions:
- version 1, status: active
  url: https://www.openml.org/search?type=data&id=61
- version 3, status: active
  url: https://www.openml.org/search?type=data&id=969
r  Fr   )r   r   r   r   N)r   rE   escaper   r%  r&  r   )r   r]   r   	data_namerz   s        r   ,test_fetch_openml_iris_warn_multiple_versionr+  6  s\     GI$[=I
))	BC 
k	-		
 
.	-	-s    A
A$c                     SnSnSnSn[        XU5        [        UUSSSS9nUR                  R                  XE4:X  d   eUR                  b   eg)z/Check that we can get a dataset without target.r   Nr   r   Fr   r   r
  r   r   r   )r   r   r   r   r   )r   r]   r   r
  expected_observationsexpected_featuresr   s          r   test_fetch_openml_no_targetr0  Q  si     GM$[=I#D 99??4HHHH;;r   c                 &   [         R                  " S5        Sn[        XUS9  [        USSUS9nUR                  R
                  S   nUR                  S   R                  5       R                  5       (       d   e[        UR                  / SQ5        g	)
zNcheck that missing values in categories are compatible with pandas
categoricalr   iY  r   FTr   r   r   r   r  )FEMALEMALE_N)
r   r   r   r   r   r   r  anyr   r   )r   r]   r   r   penguins	cat_dtypes         r   test_missing_values_pandasr9  e  s    
 !G$[W	H $$U+I==$$&**,,,,y++-DEr   r     glass2)r   r   r   c                 
   Sn[        XU5        Sn[        R                  " [        US9   [	        SSSSS.UD6nSSS5        WR
                  R                  S:X  d   eUR                  S	   S
:X  d   eg! , (       d  f       N@= f)z;Check that we raise a warning when the dataset is inactive.r:  z(Version 1 of dataset glass2 is inactive,r  Fr   )r   r   r   N)   r  r   40675r0   )r   r   r%  r&  r   r   r   r   )r   r]   r   r   rz   r;  s         r   test_fetch_openml_inactiver?  {  s     G$[=I
4C	k	- 
%
?M
 
. ;;(((>>$7*** 
.	-s   A44
Bz"data_id, params, err_type, err_msgzNo active dataset glass2 foundr   r   )r   r
  z1Can only handle homogeneous multi-target datasets)r   r   zOSTRING attributes are not supported for array representation. Try as_frame=Truer$  )r   r
  r   zTarget column 'family'	undefinedz(Could not find target_column='undefined'c                     [        XU5        UR                  SS5      (       d  US:X  a  [        R                  " S5        [        R                  " XES9   [        SSUS.UD6  S S S 5        g ! , (       d  f       g = f)Nr   Tr   r  F)r   r   r0   )r   r  r   r   r  r   )r   r]   r   r  err_typer  r   s          r   test_fetch_openml_errorrC    s_    d %[=Izz*d##v'9H%	x	/:5:6: 
0	/	/s   A,,
A:zparams, err_type, err_msgr9   r   zCThe 'version' parameter of fetch_openml must be an int in the rangenAmE)r   r   zCThe 'data_id' parameter of fetch_openml must be an int in the rangez6The 'version' parameter of fetch_openml must be an intzFNeither name nor data_id are provided. Please provide name or data_id.c                 v    [         R                  " XS9   [        S0 U D6  S S S 5        g ! , (       d  f       g = f)Nr  r0   )r   r  r   )r  rB  r  s      r   )test_fetch_openml_raises_illegal_argumentrF    s'    4 
x	/v 
0	/	/s   *
8c           	         SnSnSn[        XU5        SnUR                  U5      n[        R                  " [        US9   [        UUSSSS9  S S S 5        S	nUR                  U5      n[        R                  " [        US9   [        UUSSSS9  S S S 5        SnUR                  U5      n[        R                  " [        US9   [        UUS
/SSSS9  S S S 5        S	nUR                  U5      n[        R                  " [        US9   [        UUS
/SSSS9  S S S 5        g ! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       Nu= f! , (       d  f       g = f)Nr   z.target_column='{}' has flag is_row_identifier.z&target_column='{}' has flag is_ignore.MouseIDr  Fr   r-  Genotyper   )r   formatr   r%  r&  r   )r   r]   r   expected_row_id_msgexpected_ignore_msg
target_colrz   s          r   test_warn_ignore_attributerN    sP   GJB$[=IJ

$
$Z
0C	k	-$	
 
. J

$
$Z
0C	k	-$	
 
. J

$
$Z
0C	k	-%w/	
 
. J

$
$Z
0C	k	-%w/	
 
.	-? 
.	- 
.	- 
.	- 
.	-s/   D D1EE 
D.1
D?
E
E!c                     Sn[        XU5        Sn[        R                  " [        US9   [	        USSSS9  S S S 5        g ! , (       d  f       g = f)Nrn   zJOpenML registered a problem with the dataset. It might be unusable. Error:r  Fr   r2  r   r   r%  r&  r   r   r]   r   rz   s       r   test_dataset_with_openml_errorrR    s>    G$[=I
VC	k	-WEE+V 
.	-	-   A  
Ac                     Sn[        XU5        Sn[        R                  " [        US9   [	        USSSS9  S S S 5        g ! , (       d  f       g = f)Nr  zFOpenML raised a warning on the dataset. It might be unusable. Warning:r  Fr   r2  rP  rQ  s       r    test_dataset_with_openml_warningrU  "  s>    G$[=I
RC	k	-WEE+V 
.	-	-rS  c                 v   [         R                  " S5        Sn[        XSS9  USSSS.n[        S0 UD6n[        S0 UDSSS00D6n[	        S	 UR
                  S
   R                  R                   5       5      (       d   e[        S UR
                  S
   R                  R                   5       5      (       a   eg)zACheck that we can overwrite the default parameters of `read_csv`.r   6  Fr   r]   Tr   read_csv_kwargsskipinitialspacec              3   B   #    U  H  oR                  S 5      v   M     g7f NrR   .0r   s     r   	<genexpr>Ftest_fetch_openml_overwrite_default_params_read_csv.<locals>.<genexpr>>  s      'Vs'Vs   r   c              3   D   #    U  H  nUR                  S 5      v   M     g7fr\  r^  r_  s     r   ra  rb  A  s#      EC 	sEs    Nr0   )	r   r   r   r   r   r   r   r   r6  )r   r   common_paramsadult_without_spacesadult_with_spacess        r   3test_fetch_openml_overwrite_default_params_read_csvrg  +  s    
!G$[QVW 	M (8-8$ 
*<e)D  '8'>'>w'G'K'K'V'V      '--g6::EE     r   c                 d   Sn[        XU5        [        R                  U5      S-   nSU 3n[        UR	                  S5      5      n[        XV5      n[        XF5      n[        R                  R                  U5      (       d   e[        XV5      n	UR                  5       U	R                  5       :X  d   eg )Nr   /filename.arffhttps://www.openml.org/scikit_learn_data)r   _MONKEY_PATCH_LOCAL_OPENML_PATHrJ  strmkdirr
   r	   ospathisfiler   )
r   r]   tmpdirr   openml_pathrI   cache_directory	response1location	response2s
             r   test_open_openml_url_cacherx  K  s    G$[=I188ADTTK#K=
1C&,,':;<O 6I{<H77>>(#### 6I>>y~~////r   write_to_diskc                   ^^ Sn[         R                  U5      S-   nSU 3n[        UR                  S5      5      n[	        XF5      mUU4S jnU R                  [        R                  R                  SU5        [        R                  " [        SS9   [        XV5        S S S 5        [        R                  R                  T5      (       a   eg ! , (       d  f       N5= f)	Nr   ri  rj  rk  c                    > T(       a&  [        TS5       nUR                  S5        S S S 5        [        S5      e! , (       d  f       N= f)Nw Invalid request)rT   writer   )r   r   r   rY   rv  ry  s       r   r   >test_open_openml_url_unlinks_local_path.<locals>._mock_urlopene  s7    h$ %*++ %$s	   :
Ar   r~  r  )rl  rJ  rm  rn  r	   r   r   r   r   r   r  r   r
   ro  rp  exists)	r   rr  ry  r   rs  rI   rt  r   rv  s	     `     @r   'test_open_openml_url_unlinks_local_pathr  ]  s    G188ADTTK#K=
1C&,,':;<O{<H, ((00)]K	z):	;. 
< ww~~h''''' 
<	;s   C
Cc                   ^ Sn[         R                  U5      n[        U R                  S5      5      n[	        X#5      m[
        R                  " [
        R                  R                  T5      5        [        TS5       nUR                  S5        S S S 5        [        X#5      U4S j5       nSn[        R                  " [        US9   U" 5       nS S S 5        WS:X  d   eg ! , (       d  f       NV= f! , (       d  f       N(= f)	Nr   rk  r|  r}  c                  d   > [         R                  R                  T 5      (       a  [        S5      eg)NzFile exist!rn   )ro  rp  r  	Exception)rv  s   r   
_load_data/test_retry_with_clean_cache.<locals>._load_data}  s&     77>>(##M**r   z!Invalid cache, redownloading filer  rn   )rl  rJ  rm  rn  r	   ro  makedirsrp  dirnamerT   r  r   r   r%  RuntimeWarning)	rr  r   rs  rt  rY   r  warn_msgresultrv  s	           @r   test_retry_with_clean_cacher  s  s    G188AK&,,':;<O{<HKK)*	h		 
 [: ; 3H	nH	5 
6Q;; 
	 
6	5s   =CC0
C-0
C>c                     Sn[         R                  U5      n[        U R                  S5      5      n[	        X#5      S 5       nSn[
        R                  " [        US9   U" 5         S S S 5        g ! , (       d  f       g = f)Nr   rk  c                  ,    [        S SSS [        5       S9e)Nrv   rw   rx   r   r   r0   r   r   r  :test_retry_with_clean_cache_http_error.<locals>._load_data  s    3$:')
 	
r   rw   r  )rl  rJ  rm  rn  r   r   r  r   )rr  r   rs  rt  r  	error_msgs         r   &test_retry_with_clean_cache_http_errorr    sh    G188AK&,,':;<O[:
 ;

 'I	y		2 
3	2	2s   A//
A=c           	      l   S nSn[        UR                  S5      5      n[        XU5        [        USUSSSS9u  pgU R	                  [
        R                  R                  SU5        [        USUSSSS9u  p[        R                  R                  Xh5        [        R                  R                  Xy5        g )	Nc                 :    [        SU R                  5       -  5      e)NzhThis mechanism intends to test correct cachehandling. As such, urlopen should never be accessed. URL: %s)r   r   r   r   r   s      r   _mock_urlopen_raise4test_fetch_openml_cache.<locals>._mock_urlopen_raise  s%     ")"6"6"89
 	
r   r   rk  TFr   )r   r   r?   r  r   r   r   )rm  rn  r   r   r   r   r   r   r   r   r   )
r   r]   rr  r  r   rt  	X_fetched	y_fetchedX_cachedy_cacheds
             r   test_fetch_openml_cacher    s    
 G&,,':;<O$[=I'!I ((00)=PQ%!H JJ!!)6JJ!!)6r   zas_frame, parser))Tr   )Fr   )Tr   )Fr   c                   ^^ U(       d  US:X  a  [         R                  " S5        Sn[        XS5        [        S-   SU 3-   nSn[        R
                  " U5      U-  nUS-  mUR                  S5       n[        R                  " US5      n	[        U	R                  5       5      n
S	U
[        U
5      S
-
  '   SSS5        [        R                  " TS5       nUR                  W
5        SSS5        [        R                  R                  R                   mUU4S jnU R#                  [        R                  R                  SU5        [         R$                  " [&        5       n[        R                  R)                  USXS9  SSS5        WR+                  S5      (       d   eg! , (       d  f       N= f! , (       d  f       N= f! , (       d  f       NI= f)z/Check that the checksum is working as expected.r   r   TrA   rB   zdata-v1-dl-1666876.arff.gzztest_invalid_checksum.arffrQ   %   rn   Nwbc                    > U R                  5       nUR                  S5      (       a8  [        TS5       nUR                  5       nS S S 5        [	        [        W5      SS9$ T" U 5      $ ! , (       d  f       N)= f)Nz$data/v1/download/1666876/anneal.arffrQ   Tr(   )r   endswithrT   r   r   r   )r   r   r   rI   rY   corrupted_datacorrupt_copy_pathmocked_openml_urls         r   swap_file_mock9test_fetch_openml_verify_checksum.<locals>.swap_file_mock  sd    ""$<<>??'.!!" /$W^%<dKK$W--	 /.s   A((
A6r   Fr2  1666876)r   r   r   r   r   rS   rT   r'   	bytearrayr   rG   GzipFiler  r   r   r   r   r   r  r   r   r  )r   r   rr  r   r   original_data_moduleoriginal_data_file_nameoriginal_data_path	orig_file	orig_gzipr   modified_gzipr  excr  r  s                 @@r   !test_fetch_openml_verify_checksumr    s    6X%H%G$[4@ 3S8S	?J:")=>AXX!==		 	 	&)IIi.	)* SY] 
'
 
($	/=D! 
0  ((0088. ((00)^L 
z	"c%%58 	& 	
 
#
 99Y= 
'	&
 
0	/( 
#	"s%   4AF F1 G 
F.1
F?
Gc                    S nU R                  [        R                  R                  SU5        Sn[        R
                  " [        [        R                  " SU S35      S9 n[        R                  " [        SS9 n[        US SS	9  S S S 5        [        U5      S
:X  d   eWR                  R                  5         S S S 5        g ! , (       d  f       NB= f! , (       d  f       g = f)Nc                 ,    [        S SSS [        5       S9e)Ni  Simulated network errorrx   r  r  s      r   _mock_urlopen_network_errorPtest_open_openml_url_retry_on_network_error.<locals>._mock_urlopen_network_error  s    3$=DWY
 	
r   r   z"https://api.openml.org/invalid-urlz+A network error occurred while downloading z. Retrying...r  r  r   )delayr  )r   r   r   r   r   r%  r&  rE   r)  r  r   r
   rG   valuer#   )r   r  invalid_openml_urlrecordexc_infos        r   +test_open_openml_url_retry_on_network_errorr    s    

   )-H >	ii"#=2

 
]]9,EF(/Q? G6{a
 
 GF
 
s$   "C<C3C
C	C
C#)r   r   c                     US:X  a  [         R                  " S5        Sn[        XU5        [        R                  R                  USSUS9nUc   eUS   R                  S:X  d   eSUS	   ;  d   eg)
z}Check that we can load the "zoo" dataset.
Non-regression test for:
https://github.com/scikit-learn/scikit-learn/issues/14340
r   >   Fr2  Nr   )e      animalr   )r   r   r   r   r   r   r   )r   r]   r   r   datasets        r   &test_fetch_openml_with_ignored_featurer    s     H%G$[=I++uuV , G  6?  I---7?3333r   c                 h   [         R                  " S5      nSn[        XSS9  SSUS.n[        SSS0UD6n[        SSS0UD6nUR                  R                  UR                  UR                  5        UR                  R                  R                  S	5      R                  5       (       a   eUR                  R                  R                  S	5      R                  5       (       a   e[        SSS
S.UD6n[        SSS
S.UD6nUR                  R                  UR                  S   UR                  S   5        UR                  S   R                  R                  S	5      R                  5       (       a   eUR                  S   R                  R                  S	5      R                  5       (       a   eg)zCheck that we strip the single quotes when used as a string delimiter.

Non-regression test for:
https://github.com/scikit-learn/scikit-learn/issues/23381
r   r   FrX  Tr   r   r   r   r   'r  )r   r
  r   Nr0   )r   r   r   r   r   r  r   rm  rR   r6  r  r   )r   r   r   rd  mice_pandasmice_liac_arffs         r   test_fetch_openml_strip_quotesr  (  s    
		X	&BG$[QVW!%'JM@h@-@K!FFFNJJ"";#5#5~7L7LM!!%%00599;;;;!!%%..s3779999 XhhX-XK! (6CN JJ""'"N$8$8$A   )--88=AACCCC  )--66s;??AAAAAr   c                     [         R                  " S5      nSn[        XSS9  SSUS.n[        SSS0UD6n[        SSS0UD6nUR                  R                  UR                  S	   UR                  S	   5        g
)zCheck that we can strip leading whitespace in pandas parser.

Non-regression test for:
https://github.com/scikit-learn/scikit-learn/issues/25311
r   rW  FrX  Tr  r   r   r   Nr0   )r   r   r   r   r   r  r   r   r   r   rd  adult_pandasadult_liac_arffs         r   $test_fetch_openml_leading_whitespacer  E  s     
		X	&BG$[QVW!%'JMAxA=AL"G+GGOJJ""7#_%:%:7%Cr   c                     [         R                  " S5      nSn[        XSS9  SSUS.n[        S
SS0UD6n[        S
SS0UD6nUR                  R                  UR                  UR                  5        g	)zCheck that we can handle escapechar and single/double quotechar.

Non-regression test for:
https://github.com/scikit-learn/scikit-learn/issues/25478
r   iZ  FrX  Tr  r   r   Nr0   )r   r   r   r   r   r   r   r  s         r   &test_fetch_openml_quotechar_escapecharr  W  st     
		X	&BG$[QVW!%'JMAxA=AL"G+GGOJJ!!,"4"4o6K6KLr   )T__doc__r'   r}   ro  rE   	functoolsr   	importlibr   ior   urllib.errorr   numpyr   r   scipy.sparser  r   r   sklearn.datasetsr   fetch_openml_origsklearn.datasets._openmlr	   r
   r   sklearn.utilsr   $sklearn.utils._optional_dependenciesr   sklearn.utils._testingr   r   r   r   r   rl  r   r   markparametrizer   r   r   r   r	  r  r  r  r   fixturer  r  r	  r  r  filterwarningsr  r"  r'  r+  r0  r9  r?  r   KeyErrorrC  rF  rN  rR  rU  rg  rx  r  r  r  r  r  r  r  r  r  r  r0   r   r   <module>r     sU
      	 	    "     " > 
   E  ? "7  < (D9BLR ? 
i_c1a(	f+S!Q7	
YNBA&	
X!,b"a8	y#Q*	u+S!Q7	E"BA.		4 "b!,	'R3	E"Ar1-	'B2	E"D"a0'0 K#:;4-8($ 9 <14($V ? 
i_c1a(	f+S!Q7	
YNBA&	
X!,b"a8	y#Q*	u+S!Q7	E"BA.		4 "b!,	'R3	E"Ar1-	'B2#, K#:;$. <-.$.N $56<N 7<N~ K#:;P <P4 K#:;,! <,!^ K#:;<,9V*WX; Y <;> $=>K#:;7 < ?76 $:;K#:;( < <(0*> ho  od h-  -` P4 4-8)- 956)-`  y!H	

 #J	
	00 V,v.h/f-	II PQ x H	

 G	

  T2G	
"
# R$
  PQ( R(& 4-8
 9
4 4-8 9& 4-8K#:;F < 9F( 4-8	E(q9
+ 9
+ 4-8(	"J0PQlG-DE?		
 51!	
 H$G$		
 H%H$		
 [96		
 k7-CD6		
G),Z K#:;; <[, 9^;  DY?Q	
 F+Q	
 FyAD	
 T	
!232
 4-8.
 9.
b 4-8W 9W 4-8W 9W@ 4-80 90" 4-8( 9(*.  4-87 97D + + \< 4-8#:;4 < 94(B:$Mr   