Ë
    ÿÿæi¬Ã  ã                  ó¸  — U d dl mZ d dlZd dlmZ d dlZd dlZd dlZd dlZd dlm	Z	 d dl
mZ d dlZd dlZd dlZd dlmZ d dlmZ d dlmZ d d	lmZ d d
lmZ d dlmZ d dlmZ d dlmZ d dlm Z  d dlm!Z! ejD                  d(d„«       Z# G d„ d«      Z$ e%e!«      Z&dddddgdœdœZ'de(d<   d ejR                  ejT                  jV                  ejT                  jV                   ejT                  jX                  ejT                  jX                    e-d«       e-d«        e-d«      dœ	Z.d)d„Z/d*d„Z0d*d „Z1d*d!„Z2d*d"„Z3d*d#„Z4d*d$„Z5d*d%„Z6	 d+	 	 	 	 	 	 	 	 	 	 	 d,d&„Z7d-d'„Z8y).é    )ÚannotationsN)Údatetime)Úsleep)ÚAny)ÚJSONSerializable)ÚCategoricalDistribution)ÚFloatDistribution)ÚUpdateFinishedTrialError)ÚBaseStorage)ÚDEFAULT_STUDY_NAME_PREFIX)ÚFrozenStudy)ÚStudyDirection)ÚFrozenTrial)Ú
TrialStatec                 ó   — t         ‚©N)ÚNotImplementedError© ó    ús/Volumes/fast/ai/experiments/voice-extract-mac/.venv/lib/python3.12/site-packages/optuna/testing/pytest_storages.pyÚstorager      s   € ä
Ðr   c                  ó˜  — e Zd Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Z	d<d„Z
d<d	„Zd<d
„Zd<d„Zd<d„Zd<d„Zej"                  j%                  d ej(                  «        ej(                  «       f eddd«       eddd«      fg«      	 	 	 	 	 	 	 	 d=d„«       Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Zd<d„Z d<d„Z!d<d „Z"d<d!„Z#d<d"„Z$d<d#„Z%d<d$„Z&d<d%„Z'ej"                  j%                  d&d'd(gd(d'gg«      	 	 	 	 	 	 d>d)„«       Z(d<d*„Z)d<d+„Z*d<d,„Z+d<d-„Z,d<d.„Z-ej"                  j%                  d/e.j^                  e.j`                  g«      ej"                  j%                  d0g d1¢d2 e1d3«      d4gd2 e1d5«      d4g e1d3«      d2d4 e1d5«      g e1d3«      g e1d5«      gg«      	 	 	 	 	 	 	 	 d?d6„«       «       Z2d<d7„Z3d<d8„Z4d<d9„Z5d<d:„Z6y;)@ÚStorageTestCasec                óú  — |j                  t        j                  g¬«      }|j                  «       }t	        |«      dk(  sJ ‚|d   j
                  |k(  sJ ‚|d   j                  j                  t        «      sJ ‚|j                  t        j                  g¬«      }||k7  sJ ‚|j                  «       }t	        |«      dk(  sJ ‚|D �ch c]  }|j
                  ’Œ c}||hk(  sJ ‚t        d„ |D «       «      sJ ‚y c c}w )N©Ú
directionsé   r   é   c              3  óZ   K  — | ]#  }|j                   j                  t        «      –— Œ% y ­wr   )Ú
study_nameÚ
startswithr   )Ú.0Úss     r   Ú	<genexpr>z8StorageTestCase.test_create_new_study.<locals>.<genexpr>0   s!   è ø€ Ð^É~È!�1—<‘<×*Ñ*Ô+D×EÉ~ùs   ‚)+)
Úcreate_new_studyr   ÚMINIMIZEÚget_all_studiesÚlenÚ	_study_idr    r!   r   Úall)Úselfr   Ústudy_idÚfrozen_studiesÚ	study_id2r#   s         r   Útest_create_new_studyz%StorageTestCase.test_create_new_study"   s  € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆà ×0Ñ0Ó2ˆÜ�>Ó" aÒ'Ð'Ð'Ø˜aÑ ×*Ñ*¨hÒ6Ð6Ð6Ø˜aÑ ×+Ñ+×6Ñ6Ô7PÔQÐQÐQà×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	à˜9Ò$Ð$Ð$Ø ×0Ñ0Ó2ˆÜ�>Ó" aÒ'Ð'Ð'Ù%3Ó4¡^ �—“ ^Ñ4¸À9Ð8MÒMÐMÐMÜÑ^É~Ó^Ô^Ð^Ñ^ùò 5s   ÃC8c                óX  — |j                  t        j                  g¬«      }|j                  t        j                  g¬«      }|j                  |«       |j                  t        j                  g¬«      }|j	                  «       }|D �ch c]  }|j
                  ’Œ c}||hk(  sJ ‚y c c}w ©Nr   ©r%   r   r&   Údelete_studyr'   r)   )r+   r   r,   r.   Ú	study_id3r-   r#   s          r   Útest_create_new_study_unique_idz/StorageTestCase.test_create_new_study_unique_id2   s›   € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	Ø×Ñ˜YÔ'Ø×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	à ×0Ñ0Ó2ˆÙ%3Ó4¡^ �—“ ^Ñ4¸À9Ð8MÒMÐMÑMùÒ4s   Â	B'c                ól  — | j                   j                  }|}|j                  t        j                  g|¬«      }||j                  |«      k(  sJ ‚t        j                  t        j                  j                  «      5  |j                  t        j                  g|¬«       d d d «       y # 1 sw Y   y xY w)N©r   r    )Útest_create_new_study_with_nameÚ__name__r%   r   r&   Úget_study_name_from_idÚpytestÚraisesÚoptunaÚ
exceptionsÚDuplicatedStudyError©r+   r   Úfunction_namer    r,   s        r   r8   z/StorageTestCase.test_create_new_study_with_name;   s˜   € à×<Ñ<×EÑEˆØ"ˆ
Ø×+Ñ+Ü&×/Ñ/Ð0¸Zð ,ó 
ˆð ˜W×;Ñ;¸HÓEÒEÐEÐEä�]‰]œ6×,Ñ,×AÑAÕBØ×$Ñ$´×1HÑ1HÐ0IÐV`Ð$Ôa÷ C×BÑBús   Á>#B*Â*B3c                ót  — |j                  t        j                  g¬«      }|j                  |«       |j	                  |«      }t        |«      dk(  sJ ‚t        j                  t        «      5  |j                  |dz   «       d d d «       |j                  |«       |j                  t        j                  g¬«      }|j	                  |«      }t        |«      dk(  sJ ‚|j                  |«       t        j                  t        «      5  |j                  |«       d d d «       y # 1 sw Y   Œ¡xY w# 1 sw Y   y xY w)Nr   r   r   )
r%   r   r&   Úcreate_new_trialÚget_all_trialsr(   r;   r<   ÚKeyErrorr3   )r+   r   r,   Útrialss       r   Útest_delete_studyz!StorageTestCase.test_delete_studyH   s  € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ× Ñ  Ô*Ø×'Ñ'¨Ó1ˆÜ�6‹{˜aÒÐÐä�]‰]œ8Õ$à× Ñ  ¨A¡Ô.÷ %ð 	×Ñ˜XÔ&Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×'Ñ'¨Ó1ˆÜ�6‹{˜aÒÐÐà×Ñ˜XÔ&Ü�]‰]œ8Õ$à× Ñ  Ô*÷ %Ð$÷ %Ð$ú÷ %Ð$ús   Á-D"ÄD.Ä"D+Ä.D7c                ój  — |j                  t        j                  g¬«      }|j                  t        j                  g¬«      }|j                  t        j                  g¬«      }|j                  |«       |j	                  «       D �ci c]  }|j
                  |“Œ }}||v sJ ‚||vsJ ‚||v sJ ‚y c c}w r1   r2   )r+   r   Ú	study_id1r.   r4   r#   Ústudiess          r   Ú/test_delete_study_after_create_multiple_studiesz?StorageTestCase.test_delete_study_after_create_multiple_studies\   s»   € Ø×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	Ø×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	Ø×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	à×Ñ˜YÔ'à+2×+BÑ+BÔ+DÓEÑ+D a�1—;‘; ‘>Ð+DˆÐEØ˜GÑ#Ð#Ð#Ø Ñ'Ð'Ð'Ø˜GÑ#Ð#Ñ#ùò Fs   ÂB0c                óÒ  — | j                   j                  }|}|j                  t        j                  g|¬«      }|j                  |«      |k(  sJ ‚|j                  |«      |k(  sJ ‚t        j                  t        «      5  |j                  d«       d d d «       t        j                  t        «      5  |j                  |dz   «       d d d «       y # 1 sw Y   Œ@xY w# 1 sw Y   y xY w)Nr7   z
dummy-namer   )
Ú6test_get_study_id_from_name_and_get_study_name_from_idr9   r%   r   r&   r:   Úget_study_id_from_namer;   r<   rE   r@   s        r   rM   zFStorageTestCase.test_get_study_id_from_name_and_get_study_name_from_idh   sÊ   € à×SÑS×\Ñ\ˆØ"ˆ
Ø×+Ñ+Ü&×/Ñ/Ð0¸Zð ,ó 
ˆð
 ×-Ñ-¨hÓ7¸:ÒEÐEÐEØ×-Ñ-¨jÓ9¸XÒEÐEÐEô �]‰]œ8Õ$Ø×*Ñ*¨<Ô8÷ %ô �]‰]œ8Õ$Ø×*Ñ*¨8°a©<Ô8÷ %Ð$÷ %Ð$ú÷ %Ð$ús   Â CÂ3CÃCÃC&c                ó  ‡‡‡— t         j                  ft         j                  ft         j                  t         j                  ft         j                  t         j                  ft         j                  t         j                  gt         j                  t         j                  gfD ][  Š‰j                  ‰¬«      Šdˆˆˆfd„} |«        ‰dz   }t	        j
                  t        «      5  ‰j                  |«       d d d «       Œ] y # 1 sw Y   ŒhxY w)Nr   c                 óR   •— ‰j                  ‰«      } | t        ‰«      k(  sJ d«       ‚y )NzCDirection of a study should be a tuple of `StudyDirection` objects.)Úget_study_directionsÚlist)Úgot_directionsr   r,   Útargets    €€€r   Ú	check_getzDStorageTestCase.test_set_and_get_study_directions.<locals>.check_get†   s/   ø€ Ø!(×!=Ñ!=¸hÓ!G�à%¬¨f«Ò5ð ØYóÑ5r   r   )ÚreturnÚNone)r   r&   ÚMAXIMIZEr%   r;   r<   rE   rQ   )r+   r   rU   Únon_existent_study_idr,   rT   s    `  @@r   Ú!test_set_and_get_study_directionsz1StorageTestCase.test_set_and_get_study_directions{   sÐ   ú€ ä×$Ñ$Ð&Ü×$Ñ$Ð&Ü×$Ñ$¤n×&=Ñ&=Ð>Ü×$Ñ$¤n×&=Ñ&=Ð>Ü×$Ñ$¤n×&=Ñ&=Ð>Ü×$Ñ$¤n×&=Ñ&=Ð>ó
ˆFð ×/Ñ/¸6Ð/ÓBˆH÷ñ ŒKð %-¨q¡LÐ!ä—‘œxÕ(Ø×,Ñ,Ð-BÔC÷ )Ð(ñ/
÷. )Ð(ús   Ã$DÄD
	c                óò  ‡‡— ‰j                  t        j                  g¬«      Šdˆˆfd„}t        j	                  «       D ]  \  }} |||«       Œ ‰j                  ‰«      t        k(  sJ ‚ |dd«       ‰dz   }t        j                  t        «      5  ‰j                  |«       d d d «       t        j                  t        «      5  ‰j                  |dd«       d d d «       y # 1 sw Y   Œ?xY w# 1 sw Y   y xY w)	Nr   ÚkeyÚvaluec                ó^   •— ‰j                  ‰| |«       ‰j                  ‰«      |    |k(  sJ ‚y r   )Úset_study_user_attrÚget_study_user_attrs©r\   r]   r   r,   s     €€r   Úcheck_set_and_getzLStorageTestCase.test_set_and_get_study_user_attrs.<locals>.check_set_and_get™   s3   ø€ Ø×'Ñ'¨°#°uÔ=Ø×/Ñ/°Ó9¸#Ñ>À%ÒGÐGÑGr   ÚdatasetÚImageNetr   ©r\   Ústrr]   r   rV   rW   )
r%   r   r&   ÚEXAMPLE_ATTRSÚitemsr`   r;   r<   rE   r_   ©r+   r   rb   r\   r]   rY   r,   s    `    @r   Ú!test_set_and_get_study_user_attrsz1StorageTestCase.test_set_and_get_study_user_attrs–   sÔ   ù€ Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆö	Hô
 (×-Ñ-Ö/‰JˆC�Ù˜c 5Õ)ð 0à×+Ñ+¨HÓ5¼ÒFÐFÐFñ 	˜) ZÔ0ð !)¨1¡ÐÜ�]‰]œ8Õ$Ø×(Ñ(Ð)>Ô?÷ %ô �]‰]œ8Õ$Ø×'Ñ'Ð(=¸uÀgÔN÷ %Ð$÷	 %Ð$ú÷ %Ð$úó   ÂC!ÃC-Ã!C*Ã-C6c                ó   — t        |«       y r   )Ú-_test_set_and_get_study_user_attrs_for_floats©r+   r   s     r   Ú,test_set_and_get_study_user_attrs_for_floatsz<StorageTestCase.test_set_and_get_study_user_attrs_for_floats®   ó
   € Ü5°gÕ>r   c                óò  ‡‡— ‰j                  t        j                  g¬«      Šdˆˆfd„}t        j	                  «       D ]  \  }} |||«       Œ ‰j                  ‰«      t        k(  sJ ‚ |dd«       ‰dz   }t        j                  t        «      5  ‰j                  |«       d d d «       t        j                  t        «      5  ‰j                  |dd«       d d d «       y # 1 sw Y   Œ?xY w# 1 sw Y   y xY w)	Nr   r\   r]   c                ó^   •— ‰j                  ‰| |«       ‰j                  ‰«      |    |k(  sJ ‚y r   )Úset_study_system_attrÚget_study_system_attrsra   s     €€r   rb   zNStorageTestCase.test_set_and_get_study_system_attrs.<locals>.check_set_and_get´   ó3   ø€ Ø×)Ñ)¨(°C¸Ô?Ø×1Ñ1°(Ó;¸CÑ@ÀEÒIÐIÑIr   rc   rd   r   re   )
r%   r   r&   rg   rh   rt   r;   r<   rE   rs   ri   s    `    @r   Ú#test_set_and_get_study_system_attrsz3StorageTestCase.test_set_and_get_study_system_attrs±   sÔ   ù€ Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆö	Jô
 (×-Ñ-Ö/‰JˆC�Ù˜c 5Õ)ð 0à×-Ñ-¨hÓ7¼=ÒHÐHÐHñ 	˜) ZÔ0ð !)¨1¡ÐÜ�]‰]œ8Õ$Ø×*Ñ*Ð+@ÔA÷ %ô �]‰]œ8Õ$Ø×)Ñ)Ð*?ÀÈÔP÷ %Ð$÷	 %Ð$ú÷ %Ð$úrk   c                ó   — t        |«       y r   )Ú/_test_set_and_get_study_system_attrs_for_floatsrn   s     r   Ú.test_set_and_get_study_system_attrs_for_floatsz>StorageTestCase.test_set_and_get_study_system_attrs_for_floatsÉ   s
   € Ü7¸Õ@r   c                ó  — |j                  t        j                  g¬«      }t        j	                  «       D ]  \  }}|j                  |||«       Œ |j                  |«      t        k(  sJ ‚|j                  |«      i k(  sJ ‚|j                  t        j                  g¬«      }t        j	                  «       D ]  \  }}|j                  |||«       Œ |j                  |«      t        k(  sJ ‚|j                  |«      i k(  sJ ‚y r1   )	r%   r   r&   rg   rh   rs   rt   r`   r_   )r+   r   r,   r\   r]   s        r   Ú*test_study_user_and_system_attrs_confusionz:StorageTestCase.test_study_user_and_system_attrs_confusionÌ   sð   € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆÜ'×-Ñ-Ö/‰JˆC�Ø×)Ñ)¨(°C¸Õ?ð 0à×-Ñ-¨hÓ7¼=ÒHÐHÐHØ×+Ñ+¨HÓ5¸Ò;Ð;Ð;à×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆÜ'×-Ñ-Ö/‰JˆC�Ø×'Ñ'¨°#°uÕ=ð 0à×+Ñ+¨HÓ5¼ÒFÐFÐFØ×-Ñ-¨hÓ7¸2Ò=Ð=Ñ=r   c                ó¤  — 	 	 	 	 	 	 	 	 	 	 	 	 dd„}|j                  t        j                  g¬«      }d}t        |«      D ]n  }t	        j
                  «       }t        d«       |j                  |«      }t        d«       t	        j
                  «       }|j                  |«      }	 ||	||||«       Œp t        j                  t        «      5  |j                  |dz   «       d d d «       |j                  t        j                  g¬«      }
t        |«      D ]X  }|j                  |
«       |j                  |
«      }	|	D �ch c]  }|j                  ’Œ c}t        t        |dz   «      «      k(  rŒXJ ‚ |j                  |«      |j                  |
«      z   }	t        |	D �ch c]  }|j                  ’Œ c}«      d|z  k(  sJ ‚y # 1 sw Y   ŒßxY wc c}w c c}w )Nc                ó¾  ‡‡‡— t        | «      |dz   k(  sJ ‚t        | D �ch c]  }|j                  ’Œ c}«      |dz   k(  sJ ‚‰| D �ch c]  }|j                  ’Œ c}v sJ ‚| D �ch c]  }|j                  ’Œ c}t        t	        |dz   «      «      k(  sJ ‚t        d„ | D «       «      sJ ‚t        d„ | D «       «      sJ ‚t        d„ | D «       «      sJ ‚t        d„ | D «       «      sJ ‚t        d„ | D «       «      sJ ‚t        ˆˆfd„| D «       «      sJ ‚t        ˆˆˆfd„| D «       «      sJ ‚t        d	„ | D «       «      sJ ‚t        d
„ | D «       «      sJ ‚y c c}w c c}w c c}w )Nr   c              3  óV   K  — | ]!  }|j                   t        j                  k(  –— Œ# y ­wr   )Ústater   ÚRUNNING©r"   Úts     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>å   s    è ø€ ÐE¹f¸�q—w‘w¤*×"4Ñ"4Õ4¹fùó   ‚')c              3  ó:   K  — | ]  }|j                   i k(  –— Œ y ­wr   ©Úparamsr�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>æ   s   è ø€ Ð6©v¨!�q—x‘x 2•~©vùó   ‚c              3  ó:   K  — | ]  }|j                   i k(  –— Œ y ­wr   ©Úintermediate_valuesr�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>ç   s   è ø€ ÐC¹F°q�q×,Ñ,°Õ2¹Fùr‡   c              3  ó:   K  — | ]  }|j                   i k(  –— Œ y ­wr   ©Ú
user_attrsr�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>è   s   è ø€ Ð:±6¨a�q—|‘| rÕ)±6ùr‡   c              3  ó:   K  — | ]  }|j                   i k(  –— Œ y ­wr   ©Úsystem_attrsr�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>é   s   è ø€ Ð<±V°�q—~‘~¨Õ+±Vùr‡   c              3  ór   •K  — | ].  }|j                   ‰k7  r|j                  �|j                  ‰k  –— Œ0 y ­wr   ©Ú	_trial_idÚdatetime_start)r"   r‚   Útime_before_creationÚtrial_ids     €€r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>ê   s<   øè ø€ ð á�AØ—;‘; (Ò*¨q×/?Ñ/?Ð/Kð × Ñ Ð#7Õ7Ùùs   ƒ47c              3  óˆ   •K  — | ]9  }|j                   ‰k(  r(|j                  �‰|j                  cxk  xr ‰k  nc –— Œ; y ­wr   r’   )r"   r‚   Útime_after_creationr•   r–   s     €€€r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>ï   sD   øè ø€ ð á�AØ—;‘; (Ò*¨q×/?Ñ/?Ð/Kð % q×'7Ñ'7ÖMÐ:M×MÐMÙùs   ƒ?Ac              3  ó8   K  — | ]  }|j                   d u –— Œ y ­wr   ©Údatetime_completer�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>ô   s   è ø€ ÐC¹F°q�q×*Ñ*¨dÔ2¹Fùó   ‚c              3  ó8   K  — | ]  }|j                   d u –— Œ y ­wr   ©r]   r�   s     r   r$   zOStorageTestCase.test_create_new_trial.<locals>._check_trials.<locals>.<genexpr>õ   s   è ø€ Ð7±¨1�q—w‘w $”±ùrœ   ©r(   r“   ÚnumberÚsetÚranger*   )rF   Úidxr–   r•   r˜   r‚   s     ``` r   Ú_check_trialsz<StorageTestCase.test_create_new_trial.<locals>._check_trialsÚ   sm  ú€ ô �v“; #¨¡'Ò)Ð)Ð)Ü©VÓ4©V¨˜Ÿ›¨VÑ4Ó5¸¸q¹Ò@Ð@Ð@Ø±VÓ<±V° §£°VÑ<Ñ<Ð<Ð<Ù&,Ó-¡f �A—H“H fÑ-´´U¸3À¹7³^Ó1DÒDÐDÐDÜÑE¹fÓEÔEÐEÐEÜÑ6©vÓ6Ô6Ð6Ð6ÜÑC¹FÓCÔCÐCÐCÜÑ:±6Ó:Ô:Ð:Ð:ÜÑ<±VÓ<Ô<Ð<Ð<Üô áóô ð ð ô
 õ áóô ð ð ô
 ÑC¹FÓCÔCÐCÐCÜÑ7±Ó7Ô7Ð7Ñ7ùò' 5ùÚ<ùÚ-s    EÁEÁ$Er   é   çü©ñÒMbP?r   r   )rF   úlist[FrozenTrial]r£   Úintr–   r¨   r•   r   r˜   r   rV   rW   )r%   r   r&   r¢   r   Únowr   rC   rD   r;   r<   rE   r    r¡   r(   r“   )r+   r   r¤   r,   Ún_trial_in_studyÚir•   r–   r˜   rF   r.   r‚   s               r   Útest_create_new_trialz%StorageTestCase.test_create_new_trialÙ   sÊ  € ð	8Ø%ð	8àð	8ð ð	8ð #+ð		8ð
 "*ð	8ð ó	8ð: ×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØÐÜÐ'Ö(ˆAÜ#+§<¡<£>Ð Ü�%ŒLØ×/Ñ/°Ó9ˆHÜ�%ŒLÜ"*§,¡,£.Ðà×+Ñ+¨HÓ5ˆFÙ˜& ! XÐ/CÐEXÕYð )ô �]‰]œ8Õ$Ø×$Ñ$ X°¡\Ô2÷ %ð ×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	ÜÐ'Ö(ˆAØ×$Ñ$ YÔ/à×+Ñ+¨IÓ6ˆFá&,Ó-¡f �A—H“H fÑ-´´U¸1¸q¹5³\Ó1BÓBÐBÐBð )ð ×'Ñ'¨Ó1°G×4JÑ4JÈ9Ó4UÑUˆä©Ó0© A�A—K“K¨Ñ0Ó1°QÐ9IÑ5IÒIÐIÑI÷ %Ð$üò .ùò 1s   Ã	F<Ä;GÆGÆ<Gzstart_time,complete_timeiæ  é	   r   r   c                óŽ  ‡— t        t        j                  d||ddidt        dd«      iddidd	id
dddœdd¬«      Šdˆfd„}|j	                  t
        j                  g¬«      }d}t        |«      D ]0  }|j                  |‰¬«      }|j                  |«      }	 ||	||«       Œ2 t        j                  t        «      5  |j                  |dz   «       d d d «       |j	                  t
        j                  g¬«      }
t        |«      D ]Z  }|j                  |
‰¬«       |j                  |
«      }	|	D �ch c]  }|j                  ’Œ c}t        t        |dz   «      «      k(  rŒZJ ‚ |j                  |«      |j                  |
«      z   }	t        |	D �ch c]  }|j                   ’Œ c}«      d|z  k(  sJ ‚y # 1 sw Y   ŒáxY wc c}w c c}w )Ni'  Úxç      à?r   r   ÚfooÚbarÚbazé{   é
   éd   iè  )r   r   r¥   é7   éÿÿÿÿ)r   r]   r”   r›   r†   Údistributionsr�   r�   rŠ   r    r–   c                óÐ  •— t        | «      |dz   k(  sJ ‚t        | D �ch c]  }|j                  ’Œ c}«      |dz   k(  sJ ‚|| D �ch c]  }|j                  ’Œ c}v sJ ‚| D �ch c]  }|j                  ’Œ c}t        t	        |dz   «      «      k(  sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd„| D «       «      sJ ‚t        ˆfd	„| D «       «      sJ ‚t        ˆfd
„| D «       «      sJ ‚y c c}w c c}w c c}w )Nr   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   ©r   ©r"   r‚   Útemplate_trials     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>-  ó!   øè ø€ ÐGÁ¸1�q—w‘w .×"6Ñ"6Õ6Áùó   ƒ#&c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   r…   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>.  s!   øè ø€ ÐIÁ&¸Q�q—x‘x >×#8Ñ#8Õ8Á&ùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   )r¹   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>/  s#   øè ø€ ÐWÑPVÈ1�q—‘¨.×*FÑ*FÕFÑPVùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   r‰   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>0  s&   øè ø€ ÐcÑ\bÐWX�q×,Ñ,°×0RÑ0RÕRÑ\bùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   rŒ   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>1  s!   øè ø€ ÐQÉ&ÀQ�q—|‘| ~×'@Ñ'@Õ@É&ùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   r�   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>2  s!   øè ø€ ÐUÉfÈ�q—~‘~¨×)DÑ)DÕDÉfùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   )r”   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>3  s%   øè ø€ ÐYÑRXÈQ�q×'Ñ'¨>×+HÑ+HÕHÑRXùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   rš   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>4  s&   øè ø€ Ð_ÑX^ÐST�q×*Ñ*¨n×.NÑ.NÕNÑX^ùrÀ   c              3  óP   •K  — | ]  }|j                   ‰j                   k(  –— Œ y ­wr   rž   r½   s     €r   r$   zcStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials.<locals>.<genexpr>5  r¿   rÀ   rŸ   )rF   r£   r–   r‚   r¾   s       €r   r¤   zPStorageTestCase.test_create_new_trial_with_template_trial.<locals>._check_trials(  sU  ø€ Ü�v“; #¨¡'Ò)Ð)Ð)Ü©VÓ4©V¨˜Ÿ›¨VÑ4Ó5¸¸q¹Ò@Ð@Ð@Ø±VÓ<±V° §£°VÑ<Ñ<Ð<Ð<Ù&,Ó-¡f �A—H“H fÑ-´´U¸3À¹7³^Ó1DÒDÐDÐDÜÓGÁÓGÔGÐGÐGÜÓIÁ&ÓIÔIÐIÐIÜÓWÑPVÓWÔWÐWÐWÜÓcÑ\bÓcÔcÐcÐcÜÓQÉ&ÓQÔQÐQÐQÜÓUÉfÓUÔUÐUÐUÜÓYÑRXÓYÔYÐYÐYÜÓ_ÑX^Ó_Ô_Ð_Ð_ÜÓGÁÓGÔGÐGÑGùò 5ùÚ<ùÚ-s   žEÁEÁ"E#r   r¥   ©r¾   r   )rF   r§   r£   r¨   r–   r¨   rV   rW   )r   r   ÚCOMPLETEr	   r%   r   r&   r¢   rC   rD   r;   r<   rE   r    r¡   r(   r“   )r+   r   Ú
start_timeÚcomplete_timer¤   r,   rª   r«   r–   rF   r.   r‚   r¾   s               @r   Ú)test_create_new_trial_with_template_trialz9StorageTestCase.test_create_new_trial_with_template_trial  sÅ  ø€ ô %Ü×%Ñ%ØØ%Ø+Ø˜�:ØÔ 1°!°QÓ 7Ð8Ø˜u�~Ø ˜Ø$&¨3°4Ñ 8ØØô
ˆõ	Hð ×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆàÐÜÐ'Ö(ˆAØ×/Ñ/°ÈÐ/ÓXˆHØ×+Ñ+¨HÓ5ˆFÙ˜& ! XÕ.ð )ô �]‰]œ8Õ$Ø×$Ñ$ X°¡\Ô2÷ %ð ×,Ñ,¼×9PÑ9PÐ8QÐ,ÓRˆ	ÜÐ'Ö(ˆAØ×$Ñ$ Y¸~Ð$ÔNØ×+Ñ+¨IÓ6ˆFÙ&,Ó-¡f �A—H“H fÑ-´´U¸1¸q¹5³\Ó1BÓBÐBÐBð )ð
 ×'Ñ'¨Ó1°G×4JÑ4JÈ9Ó4UÑUˆä©Ó0© A�A—K“K¨Ñ0Ó1°QÐ9IÑ5IÒIÐIÑI÷ %Ð$üò .ùò 1s   Â<F1Ä0F=ÆGÆ1F:c                óf  — |j                  t        j                  g¬«      }|j                  |«      }|j	                  |«      dk(  sJ ‚|j                  |«      }|j	                  |«      dk(  sJ ‚t        j                  t        «      5  |j	                  |dz   «       d d d «       y # 1 sw Y   y xY w)Nr   r   r   )r%   r   r&   rC   Úget_trial_number_from_idr;   r<   rE   ©r+   r   r,   r–   s       r   Útest_get_trial_number_from_idz-StorageTestCase.test_get_trial_number_from_idM  sš   € à×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆà×+Ñ+¨HÓ5ˆØ×/Ñ/°Ó9¸QÒ>Ð>Ð>à×+Ñ+¨HÓ5ˆØ×/Ñ/°Ó9¸QÒ>Ð>Ð>ä�]‰]œ8Õ$Ø×,Ñ,¨X¸©\Ô:÷ %×$Ñ$ús   Â	B'Â'B0c                ó  — |j                  t        j                  g¬«      }t        D �cg c]  }|j	                  |«      ‘Œ }}t        |t        «      D �](  \  }}|t        j                  k(  rŒ|j                  |«      j                  t        j                  k(  sJ ‚|j                  |«      j                  }|j                  |||j                  «       rdnd ¬«       |j                  |«      j                  |k(  sJ ‚|t        j                  k(  r |j                  |«      j                  |k(  sJ ‚|j                  «       r|j                  |«      j                  ��Œ
J ‚|j                  |«      j                  €�Œ)J ‚ t        j                   t"        «      5  t%        |«      dz   }|j                  |t        j&                  ¬«       d d d «       t        D ]‘  }|j                  «       sŒ|j	                  |«      }|j                  ||d¬«       t        D ]P  }	d }
|	t        j&                  k(  rdg}
t        j                   t(        «      5  |j                  ||	|
¬«       d d d «       ŒR Œ“ y c c}w # 1 sw Y   Œ©xY w# 1 sw Y   ŒpxY w)Nr   )ç        ©r   Úvaluesr   r¼   rÓ   )r%   r   r&   Ú
ALL_STATESrC   Úzipr   ÚWAITINGÚ	get_trialr   r€   r”   Úset_trial_state_valuesÚis_finishedr›   r;   r<   rE   ÚmaxrÊ   r
   )r+   r   r,   Ú_Ú	trial_idsr–   r   Údatetime_start_prevÚnon_existent_trial_idÚstate2rÕ   s              r   Ú%test_set_trial_state_values_for_statez5StorageTestCase.test_set_trial_state_values_for_stateZ  sD  € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆÝAKÓLÁ¸A�W×-Ñ-¨hÕ7Àˆ	ÐLä" 9¬j×9‰OˆH�eØœ
×*Ñ*Ò*ØØ×$Ñ$ XÓ.×4Ñ4¼
×8JÑ8JÒJÐJÐJØ")×"3Ñ"3°HÓ"=×"LÑ"LÐØ×*Ñ*Ø ¸×8IÑ8IÔ8K©fÐQUð +ô ð ×$Ñ$ XÓ.×4Ñ4¸Ò=Ð=Ð=àœ
×*Ñ*Ò*Ø×(Ñ(¨Ó2×AÑAÐEXÒXÐXÐXØ× Ñ Ô"Ø×(Ñ(¨Ó2×DÑDÒPÐPÐPà×(Ñ(¨Ó2×DÑDÒLÐLÐLð  :ô$ �]‰]œ8Õ$Ü$'¨	£N°QÑ$6Ð!Ø×*Ñ*Ø%Ü ×)Ñ)ð +ô ÷ %÷  ˆEØ×$Ñ$Ô&ØØ×/Ñ/°Ó9ˆHØ×*Ñ*¨8¸5ÈÐ*ÔPß$�à-1�ØœZ×0Ñ0Ò0Ø!˜U�FÜ—]‘]Ô#;Õ<Ø×2Ñ2°8À6ÐRXÐ2ÔY÷ =Ð<ñ %ñ  ùò7 M÷( %Ð$ú÷" =Ð<ús   ªI,Æ0I1É
I=É1I:É=Jc                ó   — t        |«       y r   )Ú'_test_set_trial_state_values_for_floatsrn   s     r   Ú&test_set_trial_state_values_for_floatsz6StorageTestCase.test_set_trial_state_values_for_floats„  s
   € Ü/°Õ8r   c                óT  — t        |ddd¬«      \  }}|j                  «       D ]œ  \  }}|j                  «       D ]„  \  }}|j                  |«      |j                  k(  sJ ‚|j                  j	                  «       D ]B  }|j                  ||«      |j                  |   j                  |j                  |   «      k(  rŒBJ ‚ Œ† Œž t        d„ |j                  «       D «       «      dz   }t        j                  t        «      5  |j                  |«       d d d «       t        j                  t        «      5  |j                  |d«       d d d «       |dz
  }	t        j                  t        «      5  |j                  |	d«       d d d «       y # 1 sw Y   ŒwxY w# 1 sw Y   ŒOxY w# 1 sw Y   y xY w)Nr   é   r   ©Ún_studyÚn_trialÚseedc              3  óJ   K  — | ]  }|j                  «       D ]  }|–— Œ Œ y ­wr   ©Úkeys©r"   ÚtsÚtids      r   r$   zLStorageTestCase.test_get_trial_param_and_get_trial_params.<locals>.<genexpr>“  ó!   è ø€ ÐLÑ6˜À"Ç'Á'Æ)¸3”À)�Ñ6ùó   ‚!#ÚparamAz	dummy-key)Ú_setup_studiesrh   Úget_trial_paramsr†   rî   Úget_trial_paramr¹   Úto_internal_reprrÜ   rÕ   r;   r<   rE   )
r+   r   rÝ   Ústudy_to_trialsÚtrial_id_to_trialr–   Úexpected_trialr\   rà   Úexistent_trial_ids
             r   Ú)test_get_trial_param_and_get_trial_paramsz9StorageTestCase.test_get_trial_param_and_get_trial_params‡  s{  € Ü+¨G¸QÈÐPQÔRÑˆˆ?à$3×$9Ñ$9Ö$;Ñ ˆAÐ Ø,=×,CÑ,CÖ,EÑ(�˜.Ø×/Ñ/°Ó9¸^×=RÑ=RÒRÐRÐRØ)×0Ñ0×5Ñ5Ö7�CØ"×2Ñ2°8¸SÓAÀ^×EaÑEaØñFç&Ñ& ~×'<Ñ'<¸SÑ'AÓBóCð Cð Cñ 8ñ -Fð %<ô ÑL˜o×4Ñ4Ô6ÓLÓLÈqÑPð 	ô �]‰]œ8Õ$Ø×$Ñ$Ð%:Ô;÷ %ä�]‰]œ8Õ$Ø×#Ñ#Ð$9¸8ÔD÷ %à1°AÑ5ÐÜ�]‰]œ8Õ$Ø×#Ñ#Ð$5°{ÔC÷ %Ð$÷ %Ð$úç$Ð$ú÷ %Ð$ús$   Ã>FÄ1FÅ*FÆFÆFÆF'c           	     óú  — |j                  t        j                  g¬«      }|j                  |«      }|j                  |«      }|j                  |j                  t        j                  g¬«      «      }t	        dd¬«      }t        d¬«      }t        d¬«      }t	        ddd	¬
«      }	|j                  |dd|«       |j                  |dd|«       |j                  |d«      dk(  sJ ‚|j                  |d«      dk(  sJ ‚|j                  |«      j                  dddœk(  sJ ‚|j                  |«      dddœk(  sJ ‚|j                  |dd|«       |j                  |dd|	«       |j                  |d«      dk(  sJ ‚|j                  |d«      dk(  sJ ‚|j                  |«      j                  dddœk(  sJ ‚|j                  |«      dddœk(  sJ ‚t        j                  t        «      5  |j                  |dd|	«       d d d «       t        j                  t        «      5  |j                  |ddt        d¬«      «       d d d «       |j                  |t        j                   dg¬«       t        j                  t"        «      5  |j                  |dd|«       d d d «       t        j                  t$        «      5  |j                  |d«       d d d «       t        j                  t"        «      5  |j                  |dd|	«       d d d «       |j                  |dd|«       |j                  |d«      dk(  sJ ‚|j                  |«      j                  ddik(  sJ ‚|j                  |«      ddik(  sJ ‚t'        |||g«      dz   }
t        j                  t$        «      5  |j                  |
dd|«       d d d «       y # 1 sw Y   �ŒºxY w# 1 sw Y   �Œ‡xY w# 1 sw Y   �Œ;xY w# 1 sw Y   �ŒxY w# 1 sw Y   ŒêxY w# 1 sw Y   y xY w)Nr   ç      ð?ç       @©ÚlowÚhigh)ÚShibuyaÚEbisuÚMeguro©Úchoices)r  ÚShinseng      Y@T)r  r  Úlogr¯   r°   Úyr   r  )r¯   r  ç333333Ó?Úzçš™™™™™¹?)r¯   r  )r  r  r  rÓ   rÔ   çš™™™™™Ù?r   r	  )r%   r   r&   rC   r	   r   Úset_trial_paramr÷   rÙ   r†   rö   r;   r<   Ú
ValueErrorrÚ   r   rÊ   r
   rE   rÜ   )r+   r   r,   Ú
trial_id_1Ú
trial_id_2Ú
trial_id_3Údistribution_xÚdistribution_y_1Údistribution_y_2Údistribution_zrà   s              r   Útest_set_trial_paramz$StorageTestCase.test_set_trial_param�  s¸  € à×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×-Ñ-¨hÓ7ˆ
Ø×-Ñ-¨hÓ7ˆ
Ø×-Ñ-Ø×$Ñ$´×1HÑ1HÐ0IÐ$ÓJó
ˆ
ô
 +¨s¸Ô=ˆÜ2Ð;YÔZÐÜ2Ð;QÔRÐÜ*¨s¸ÀDÔIˆð 	×Ñ 
¨C°°nÔEØ×Ñ 
¨C°Ð4DÔEØ×&Ñ& z°3Ó7¸3Ò>Ð>Ð>Ø×&Ñ& z°3Ó7¸1Ò<Ð<Ð<à× Ñ  Ó,×3Ñ3¸SÀxÑ7PÒPÐPÐPØ×'Ñ'¨
Ó3¸SÀxÑ7PÒPÐPÐPð 	×Ñ 
¨C°°nÔEØ×Ñ 
¨C°°nÔEØ×&Ñ& z°3Ó7¸3Ò>Ð>Ð>Ø×&Ñ& z°3Ó7¸3Ò>Ð>Ð>Ø× Ñ  Ó,×3Ñ3¸SÀsÑ7KÒKÐKÐKØ×'Ñ'¨
Ó3¸SÀsÑ7KÒKÐKÐKô �]‰]œ:Õ&Ø×#Ñ# J°°S¸.ÔI÷ 'ô �]‰]œ:Õ&Ø×#Ñ#Ø˜C Ô$;ÐDbÔ$cô÷ 'ð
 	×&Ñ& z¼×9LÑ9LÐVYÐUZÐ&Ô[ä�]‰]Ô3Õ4Ø×#Ñ# J°°QÐ8HÔI÷ 5ô �]‰]œ8Õ$Ø×#Ñ# J°Ô4÷ %ô �]‰]Ô3Õ4Ø×#Ñ# J°°S¸.ÔI÷ 5ð 	×Ñ 
¨C°Ð4DÔEØ×&Ñ& z°3Ó7¸1Ò<Ð<Ð<Ø× Ñ  Ó,×3Ñ3¸¸YÐ7GÒGÐGÐGØ×'Ñ'¨
Ó3¸¸YÐ7GÒGÐGÐGô !$ Z°¸ZÐ$HÓ IÈAÑ MÐÜ�]‰]œ8Õ$Ø×#Ñ#Ð$9¸3ÀÀ^ÔT÷ %Ð$÷7 'Ñ&ú÷ 'Ñ&ú÷ 5Ñ4ú÷ %Ñ$ú÷ 5Ð4ú÷ %Ð$úsH   Ç$N1ÈN>É=OÊ3OË'O%ÎO1Î1N;Î>OÏOÏO"Ï%O.Ï1O:c                ó   — t        |«       y r   )Ú(_test_set_and_get_trial_param_for_floatsrn   s     r   Ú'test_set_and_get_trial_param_for_floatsz7StorageTestCase.test_set_and_get_trial_param_for_floatsÜ  s
   € Ü0°Õ9r   c                ó  — |j                  t        j                  g¬«      }|j                  |«      }|j                  |«      }|j                  |j                  t        j                  g¬«      «      }|j                  |«      }|j                  |«      }|j	                  |t
        j                  d¬«       |j	                  |t
        j                  t        d«      f¬«       |j	                  |t
        j                  d¬«       |j	                  |t
        j                  g d¢¬«       |j                  |«      j                  dk(  sJ ‚|j                  |«      j                  �J ‚|j                  |«      j                  t        d«      k(  sJ ‚|j                  |«      j                  g d¢k(  sJ ‚|j                  |«      j                  g d¢k(  sJ ‚t        |||||«      dz   }t        j                  t        «      5  |j	                  |t
        j                  d¬«       d d d «       t        j                  t         «      5  |j	                  |t
        j                  d¬«       d d d «       y # 1 sw Y   ŒNxY w# 1 sw Y   y xY w)	Nr   )r°   rÔ   Úinf)r  çš™™™™™É?r  r°   r   )r   )r%   r   r&   rC   rÚ   r   rÊ   ÚfloatrØ   rÙ   r]   rÕ   rÜ   r;   r<   rE   r
   )	r+   r   r,   r  r  r  Ú
trial_id_4Ú
trial_id_5rà   s	            r   Ú&test_set_trial_state_values_for_valuesz6StorageTestCase.test_set_trial_state_values_for_valuesß  sA  € à×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×-Ñ-¨hÓ7ˆ
Ø×-Ñ-¨hÓ7ˆ
Ø×-Ñ-Ø×$Ñ$´×1HÑ1HÐ0IÐ$ÓJó
ˆ
ð ×-Ñ-¨hÓ7ˆ
Ø×-Ñ-¨hÓ7ˆ
ð 	×&Ñ& z¼×9LÑ9LÐU[Ð&Ô\Ø×&Ñ&Øœj×1Ñ1¼5À»<¸/ð 	'ô 	
ð 	×&Ñ&Øœj×0Ñ0¸ð 	'ô 	
ð 	×&Ñ&Øœj×0Ñ0ºð 	'ô 	
ð × Ñ  Ó,×2Ñ2°cÒ9Ð9Ð9Ø× Ñ  Ó,×2Ñ2Ð:Ð:Ð:Ø× Ñ  Ó,×2Ñ2´e¸E³lÒBÐBÐBØ× Ñ  Ó,×3Ñ3²ÒFÐFÐFØ× Ñ  Ó,×3Ñ3²ÒFÐFÐFä # J°
¸JÈ
ÐT^Ó _ÐbcÑ cÐÜ�]‰]œ8Õ$Ø×*Ñ*Ø%¬Z×-@Ñ-@Èð +ô ÷ %ô �]‰]Ô3Õ4Ø×*Ñ*¨:¼Z×=PÑ=PÐY]Ð*Ô^÷ 5Ð4÷ %Ð$ú÷ 5Ð4ús   Ç?#I/É#I;É/I8É;Jc                óZ  — |j                  t        j                  g¬«      }|j                  |«      }|j                  |«      }|j                  |j                  t        j                  g¬«      «      }|j                  |«      }|j	                  |dd«       |j	                  |dd«       |j	                  |dd«       |j	                  |dd«       |j	                  |dd«       |j	                  |d	t        d
«      «       |j	                  |dt        d«      «       |j                  |«      j                  dddœk(  sJ ‚|j                  |«      j                  i k(  sJ ‚|j                  |«      j                  dddt        d
«      dœk(  sJ ‚t        j                  |j                  |«      j                  d   «      sJ ‚|j	                  |dd«       |j                  |«      j                  dddœk(  sJ ‚t        ||||«      dz   }t        j                  t        «      5  |j	                  |dd«       d d d «       |j                  |t        j                   dg¬«       t        j                  t"        «      5  |j	                  |dd«       d d d «       y # 1 sw Y   ŒbxY w# 1 sw Y   y xY w)Nr   r   r  r   r  r  r   r°   r¥   r  Únan)r   r   )r   r   r   r¥   r  rÓ   rÔ   )r%   r   r&   rC   Úset_trial_intermediate_valuer   rÙ   rŠ   ÚnpÚisnanrÜ   r;   r<   rE   rÚ   r   rÊ   r
   )r+   r   r,   r  r  r  r!  rà   s           r   Ú!test_set_trial_intermediate_valuez1StorageTestCase.test_set_trial_intermediate_value  sw  € à×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×-Ñ-¨hÓ7ˆ
Ø×-Ñ-¨hÓ7ˆ
Ø×-Ñ-Ø×$Ñ$´×1HÑ1HÐ0IÐ$ÓJó
ˆ
ð ×-Ñ-¨hÓ7ˆ
ð 	×,Ñ,¨Z¸¸CÔ@Ø×,Ñ,¨Z¸¸CÔ@Ø×,Ñ,¨Z¸¸CÔ@Ø×,Ñ,¨Z¸¸CÔ@Ø×,Ñ,¨Z¸¸CÔ@Ø×,Ñ,¨Z¸¼EÀ%»LÔIØ×,Ñ,¨Z¸¼EÀ%»LÔIà× Ñ  Ó,×@Ñ@ÈÐPSÑDTÒTÐTÐTØ× Ñ  Ó,×@Ñ@ÀBÒFÐFÐFØ× Ñ  Ó,×@Ñ@ØØØÜ�U‹|ñ	E
ò 
ð 	
ð 
ô �x‰x˜×)Ñ)¨*Ó5×IÑIÈ!ÑLÔMÐMÐMð 	×,Ñ,¨Z¸¸CÔ@Ø× Ñ  Ó,×@Ñ@ÈÐPSÑDTÒTÐTÐTä # J°
¸JÈ
Ó SÐVWÑ WÐÜ�]‰]œ8Õ$Ø×0Ñ0Ð1FÈÈ3ÔO÷ %ð 	×&Ñ& z¼×9LÑ9LÐVYÐUZÐ&Ô[ä�]‰]Ô3Õ4Ø×0Ñ0°¸QÀÔD÷ 5Ð4÷ %Ð$ú÷
 5Ð4ús   È JÉ8J!ÊJÊ!J*c                ó   — t        |«       y r   )Ú-_test_set_trial_intermediate_value_for_floatsrn   s     r   Ú,test_set_trial_intermediate_value_for_floatsz<StorageTestCase.test_set_trial_intermediate_value_for_floats0  rp   r   c                ó6  ‡— t        ‰ddd¬«      \  }}t        ˆfd„|j                  «       D «       «      sJ ‚t        d„ |j                  «       D «       «      dz   }t	        j
                  t        «      5  ‰j                  |«       d d d «       y # 1 sw Y   y xY w)Nr   rç   rµ   rè   c              3  óŠ   •K  — | ]:  }|j                  «       D ]%  \  }}‰j                  |«      |j                  k(  –— Œ' Œ< y ­wr   )rh   Úget_trial_user_attrsr�   ©r"   rF   r–   Útrialr   s       €r   r$   z<StorageTestCase.test_get_trial_user_attrs.<locals>.<genexpr>5  sG   øè ø€ ð 
á2�Ø#)§<¡<¦>‘�˜%ð ×(Ñ(¨Ó2°e×6FÑ6FÕFà#1ð GÙ2ùó   ƒA Ac              3  óJ   K  — | ]  }|j                  «       D ]  }|–— Œ Œ y ­wr   rí   rï   s      r   r$   z<StorageTestCase.test_get_trial_user_attrs.<locals>.<genexpr>;  ó&   è ø€ Ð ]Ñ/G¨ÐSU×SZÑSZÖS\ÈC¤ÐS\ Ñ/Gùró   r   )rõ   r*   rÕ   rÜ   r;   r<   rE   r/  ©r+   r   rÝ   rù   Únon_existent_trials    `   r   Útest_get_trial_user_attrsz)StorageTestCase.test_get_trial_user_attrs3  sŠ   ø€ Ü+¨G¸QÈÐPRÔSÑˆˆ?Üó 
à)×0Ñ0Ô2ó
ô 
ð 	
ð 
ô !Ñ ]¨×/EÑ/EÔ/GÓ ]Ó]Ð`aÑaÐÜ�]‰]œ8Õ$Ø×(Ñ(Ð);Ô<÷ %×$Ñ$úó   Á4BÂBc                ó�  ‡— ‰j                  ‰j                  t        j                  g¬«      «      }dˆfd„}t        j                  «       D ]  \  }} ||||«       Œ ‰j                  |«      j                  t        k(  sJ ‚ ||dd«       ‰j                  ‰j                  t        j                  g¬«      «      } ||dd«       t        ‰j                  |«      j                  «      d	k(  sJ ‚‰j                  |«      j                  d   dk(  sJ ‚t        ||h«      d	z   }t        j                  t        «      5  ‰j                  |dd«       d d d «       ‰j                  |t        j                   d
g¬«       t        j                  t"        «      5  ‰j                  |dd«       d d d «       y # 1 sw Y   ŒbxY w# 1 sw Y   y xY w)Nr   r\   r]   c                ór   •— ‰j                  | ||«       ‰j                  | «      j                  |   |k(  sJ ‚y r   )Úset_trial_user_attrrÙ   r�   ©r–   r\   r]   r   s      €r   rb   zCStorageTestCase.test_set_trial_user_attr.<locals>.check_set_and_getD  s9   ø€ Ø×'Ñ'¨°#°uÔ=Ø×$Ñ$ XÓ.×9Ñ9¸#Ñ>À%ÒGÐGÑGr   rc   rd   Úbaseline_scorer¦   r   rÓ   rÔ   ©r–   r¨   r\   rf   r]   r   rV   rW   )rC   r%   r   r&   rg   rh   rÙ   r�   r(   rÜ   r;   r<   rE   r;  rÚ   r   rÊ   r
   )r+   r   r  rb   r\   r]   r  rà   s    `      r   Útest_set_trial_user_attrz(StorageTestCase.test_set_trial_user_attr?  sž  ø€ Ø×-Ñ-Ø×$Ñ$´×1HÑ1HÐ0IÐ$ÓJó
ˆ
õ	Hô
 (×-Ñ-Ö/‰JˆC�Ù˜j¨#¨uÕ5ð 0à× Ñ  Ó,×7Ñ7¼=ÒHÐHÐHñ 	˜* i°Ô<ð ×-Ñ-Ø×$Ñ$´×1HÑ1HÐ0IÐ$ÓJó
ˆ
ñ 	˜*Ð&6¸Ô>Ü�7×$Ñ$ ZÓ0×;Ñ;Ó<ÀÒAÐAÐAØ× Ñ  Ó,×7Ñ7Ð8HÑIÈUÒRÐRÐRô !$ Z°Ð$<Ó =ÀÑ AÐÜ�]‰]œ8Õ$Ø×'Ñ'Ð(=¸uÀgÔN÷ %ð 	×&Ñ& z¼×9LÑ9LÐVYÐUZÐ&Ô[Ü�]‰]Ô3Õ4Ø×'Ñ'¨
°E¸7ÔC÷ 5Ð4÷ %Ð$ú÷
 5Ð4ús   Ä;F0ÆF<Æ0F9Æ<Gc                ó   — t        |«       y r   )Ú,_test_set_and_get_trial_user_attr_for_floatsrn   s     r   Ú+test_set_and_get_trial_user_attr_for_floatsz;StorageTestCase.test_set_and_get_trial_user_attr_for_floatsb  s
   € Ü4°WÕ=r   c                ó6  ‡— t        ‰ddd¬«      \  }}t        ˆfd„|j                  «       D «       «      sJ ‚t        d„ |j                  «       D «       «      dz   }t	        j
                  t        «      5  ‰j                  |«       d d d «       y # 1 sw Y   y xY w)Nr   rç   rµ   rè   c              3  óŠ   •K  — | ]:  }|j                  «       D ]%  \  }}‰j                  |«      |j                  k(  –— Œ' Œ< y ­wr   )rh   Úget_trial_system_attrsr�   r0  s       €r   r$   z>StorageTestCase.test_get_trial_system_attrs.<locals>.<genexpr>g  sG   øè ø€ ð 
á2�Ø#)§<¡<¦>‘�˜%ð ×*Ñ*¨8Ó4¸×8JÑ8JÕJà#1ð KÙ2ùr2  c              3  óJ   K  — | ]  }|j                  «       D ]  }|–— Œ Œ y ­wr   rí   rï   s      r   r$   z>StorageTestCase.test_get_trial_system_attrs.<locals>.<genexpr>m  r4  ró   r   )rõ   r*   rÕ   rÜ   r;   r<   rE   rE  r5  s    `   r   Útest_get_trial_system_attrsz+StorageTestCase.test_get_trial_system_attrse  sŠ   ø€ Ü+¨G¸QÈÐPRÔSÑˆˆ?Üó 
à)×0Ñ0Ô2ó
ô 
ð 	
ð 
ô !Ñ ]¨×/EÑ/EÔ/GÓ ]Ó]Ð`aÑaÐÜ�]‰]œ8Õ$Ø×*Ñ*Ð+=Ô>÷ %×$Ñ$úr8  c                ó
  ‡— ‰j                  t        j                  g¬«      }‰j                  |«      }dˆfd„}t        j                  «       D ]  \  }} ||||«       Œ ‰j                  |«      j                  }|t        k(  sJ ‚ ||dd«       ‰j                  |«      } ||dd«       ‰j                  |«      j                  }|ddik(  sJ ‚t        ||h«      d	z   }	t        j                  t        «      5  ‰j                  |	dd«       d d d «       ‰j                  |t        j                  d
g¬«       t        j                  t         «      5  ‰j                  |dd«       d d d «       y # 1 sw Y   ŒbxY w# 1 sw Y   y xY w)Nr   r\   r]   c                ó^   •— ‰j                  | ||«       ‰j                  | «      |   |k(  sJ ‚y r   )Úset_trial_system_attrrE  r<  s      €r   rb   zEStorageTestCase.test_set_trial_system_attr.<locals>.check_set_and_getu  ru   r   rc   rd   r=  r¦   r   rÓ   rÔ   r>  )r%   r   r&   rC   rg   rh   rÙ   r�   rÜ   r;   r<   rE   rJ  rÚ   r   rÊ   r
   )
r+   r   r,   r  rb   r\   r]   r�   r  rà   s
    `        r   Útest_set_trial_system_attrz*StorageTestCase.test_set_trial_system_attrq  sj  ø€ Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×-Ñ-¨hÓ7ˆ
õ	Jô
 (×-Ñ-Ö/‰JˆC�Ù˜j¨#¨uÕ5ð 0à×(Ñ(¨Ó4×AÑAˆØœ}Ò,Ð,Ð,ñ 	˜* i°Ô<ð ×-Ñ-¨hÓ7ˆ
Ù˜*Ð&6¸Ô>Ø×(Ñ(¨Ó4×AÑAˆØÐ 0°%Ð8Ò8Ð8Ð8ô !$ Z°Ð$<Ó =ÀÑ AÐÜ�]‰]œ8Õ$Ø×)Ñ)Ð*?ÀÈÔP÷ %ð 	×&Ñ& z¼×9LÑ9LÐVYÐUZÐ&Ô[Ü�]‰]Ô3Õ4Ø×)Ñ)¨*°e¸WÔE÷ 5Ð4÷ %Ð$ú÷
 5Ð4ús   Ã8E-ÅE9Å-E6Å9Fc                ó   — t        |«       y r   )Ú._test_set_and_get_trial_system_attr_for_floatsrn   s     r   Ú-test_set_and_get_trial_system_attr_for_floatsz=StorageTestCase.test_set_and_get_trial_system_attr_for_floats’  s
   € Ü6°wÕ?r   c                óÖ  — t        |ddd¬«      \  }}|j                  «       }t        |«      t        |«      k(  sJ ‚|j                  «       D ]›  \  }}d }|D ]  }|j                  |j                  k(  sŒ|} n |€J ‚|j
                  |j
                  k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k(  sJ ‚|j                  |j                  k(  rŒ›J ‚ y )Nrµ   é.   rè   )rõ   r'   r(   rh   r    Ú	directionr�   r�   )r+   r   Úexpected_frozen_studiesrÝ   r-   Úexpected_frozen_studyÚfrozen_studyr#   s           r   Útest_get_all_studiesz$StorageTestCase.test_get_all_studies•  sÿ   € Ü%3°GÀRÐQSÐZ\Ô%]Ñ"Ð Ø ×0Ñ0Ó2ˆÜ�>Ó"¤cÐ*AÓ&BÒBÐBÐBØ(?×(EÑ(EÖ(GÑ$ˆAÐ$Ø/3ˆLÛ#�Ø—<‘<Ð#8×#CÑ#CÓCØ#$�LÙð $ð  Ð+Ð+Ð+Ø×)Ñ)Ð-B×-LÑ-LÒLÐLÐLØ×*Ñ*Ð.C×.NÑ.NÒNÐNÐNØ×*Ñ*Ð.C×.NÑ.NÒNÐNÐNØ×,Ñ,Ð0E×0RÑ0RÓRÐRÐRñ )Hr   c                óŠ  — t        |ddd¬«      \  }}|j                  «       D ]<  \  }}|j                  «       D ]$  }|j                  |j                  «      }||k(  rŒ$J ‚ Œ> t        d„ |j                  «       D «       «      dz   }t        j                  t        «      5  |j                  |«       d d d «       y # 1 sw Y   y xY w)Nr   é   é/   rè   c              3  óJ   K  — | ]  }|j                  «       D ]  }|–— Œ Œ y ­wr   rí   rï   s      r   r$   z1StorageTestCase.test_get_trial.<locals>.<genexpr>®  rò   ró   r   )	rõ   rh   rÕ   rÙ   r“   rÜ   r;   r<   rE   )r+   r   rÝ   rù   Úexpected_trialsrû   r1  rà   s           r   Útest_get_trialzStorageTestCase.test_get_trial¥  s³   € Ü+¨G¸QÈÐQSÔTÑˆˆ?à"1×"7Ñ"7Ö"9ÑˆAˆØ"1×"8Ñ"8Ö":�Ø×)Ñ)¨.×*BÑ*BÓC�Ø Ó.Ð.Ð.ñ #;ð #:ô ÑL˜o×4Ñ4Ô6ÓLÓLÈqÑPð 	ô �]‰]œ8Õ$Ø×ÑÐ3Ô4÷ %×$Ñ$ús   ÂB9Â9Cc                ój  — t        |ddd¬«      \  }}|j                  «       D ]3  \  }}|j                  |«      }|D ]  }||j                     }||k(  rŒJ ‚ Œ5 t	        |j                  «       «      dz   }	t        j                  t        «      5  |j                  |	«       d d d «       y # 1 sw Y   y xY w)Nr   rW  é0   rè   r   )	rõ   rh   rD   r“   rÜ   rî   r;   r<   rE   )
r+   r   rÝ   rù   r,   rZ  rF   r1  rû   rY   s
             r   Útest_get_all_trialsz#StorageTestCase.test_get_all_trials³  s©   € Ü+¨G¸QÈÐQSÔTÑˆˆ?à)8×)>Ñ)>Ö)@Ñ%ˆH�oØ×+Ñ+¨HÓ5ˆFÛ�Ø!0°·±Ñ!A�Ø Ó.Ð.Ð.ñ  ð *Aô !$ O×$8Ñ$8Ó$:Ó ;¸aÑ ?ÐÜ�]‰]œ8Õ$Ø×"Ñ"Ð#8Ô9÷ %×$Ñ$ús   ÂB)Â)B2Úparam_namesÚaÚbc           
     ó†  — |j                  t        j                  g¬«      }|j                  |t        j
                  j                  t        j                  ¬«      «      }|D ]!  }|j                  ||dt        dd«      ¬«       Œ# |j                  |«      }t        |d   j                  j                  «       «      |k(  sJ ‚y )Nr   r¼   rÿ   rÓ   r   )Údistributionr   )r%   r   r&   rC   r=   r1  Úcreate_trialr   r€   r  r	   rD   rR   r†   rî   )r+   r   r_  r,   r–   Ú
param_namerF   s          r   Ú test_get_all_trials_params_orderz0StorageTestCase.test_get_all_trials_params_orderÀ  sµ   € ð ×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×+Ñ+Ø”f—l‘l×/Ñ/´j×6HÑ6HÐ/ÓIó
ˆó &ˆJØ×#Ñ#Ø˜* cÔ8IÈ#ÈsÓ8Sð $õ ð &ð
 ×'Ñ'¨Ó1ˆÜ�F˜1‘I×$Ñ$×)Ñ)Ó+Ó,°Ò;Ð;Ñ;r   c                ó  — t        |ddd¬«      \  }}|D ]r  }|j                  |d¬«      }t        |«      t        ||   «      k(  sJ ‚t        j                  |«      }d|d   j
                  d	<   |j                  |d
¬«      }||k(  rŒrJ ‚ y )Nr   rç   é1   rè   T©Údeepcopyr  r   r¯   F)rõ   rD   r(   Úcopyrj  r†   )r+   r   r-   rù   r,   Útrials0Útrials0_originalÚtrials1s           r   Ú#test_get_all_trials_deepcopy_optionz3StorageTestCase.test_get_all_trials_deepcopy_optionÐ  sœ   € Ü*8¸È!ÐUVÐ]_Ô*`Ñ'ˆ˜ã&ˆHØ×,Ñ,¨XÀÐ,ÓEˆGÜ�w“<¤3 °xÑ'@Ó#AÒAÐAÐAô  $Ÿ}™}¨WÓ5ÐØ%(ˆG�A‰J×Ñ˜cÑ"à×,Ñ,¨XÀÐ,ÓFˆGØ# wÓ.Ð.Ð.ñ 'r   c                ó  — |j                  t        j                  g¬«      }t        j                  d«      }t
        j                  t
        j                  t
        j                  f}|D ]N  }t        |«      }||_	        |j                  t
        j                  k(  rdgnd |_
        |j                  ||¬«       ŒP |j                  |d ¬«      }t        |«      dk(  sJ ‚|j                  |t
        j                  f¬«      }t        |«      dk(  sJ ‚t        d„ |D «       «      sJ ‚|j                  |t
        j                  t
        j                  f¬«      }t        |«      dk(  sJ ‚t        d	„ |D «       «      sJ ‚|j                  |d
¬«      }t        |«      dk(  sJ ‚t        D �cg c],  }|t
        j                  k7  sŒ|t
        j                  k7  sŒ+|‘Œ. }	}|	D ]&  }|j                  ||f¬«      }t        |«      dk(  rŒ&J ‚ y c c}w )Nr   é3   rÓ   rÉ   )Ústatesr¥   r   c              3  óV   K  — | ]!  }|j                   t        j                  k(  –— Œ# y ­wr   )r   r   rÊ   r�   s     r   r$   zCStorageTestCase.test_get_all_trials_state_option.<locals>.<genexpr>ó  s    è ø€ ÐB¹6°a�1—7‘7œj×1Ñ1Õ1¹6ùrƒ   c              3  ót   K  — | ]0  }|j                   t        j                  t        j                  fv –— Œ2 y ­wr   )r   r   rÊ   ÚPRUNEDr�   s     r   r$   zCStorageTestCase.test_get_all_trials_state_option.<locals>.<genexpr>÷  s-   è ø€ ÐWÑPVÈ1�1—7‘7œz×2Ñ2´J×4EÑ4EÐFÔFÑPVùs   ‚68r   r   )r%   r   rX   ÚrandomÚRandomr   rÊ   ru  Ú_generate_trialr   rÕ   rC   rD   r(   r*   rÖ   )
r+   r   r,   Ú	generatorrr  r   r‚   rF   r#   Úother_statess
             r   Ú test_get_all_trials_state_optionz0StorageTestCase.test_get_all_trials_state_optionÞ  sï  € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆÜ—M‘M "Ó%ˆ	ô ×ÑÜ×ÑÜ×Ñð
ˆó ˆEÜ 	Ó*ˆAØˆAŒGØ !§¡¬:×+>Ñ+>Ò >˜‘uÀDˆAŒHØ×$Ñ$ X¸aÐ$Õ@ð	 ð ×'Ñ'¨¸Ð'Ó>ˆÜ�6‹{˜aÒÐÐà×'Ñ'¨¼*×:MÑ:MÐ9OÐ'ÓPˆÜ�6‹{˜aÒÐÐÜÑB¹6ÓBÔBÐBÐBà×'Ñ'¨¼*×:MÑ:MÌz×O`ÑO`Ð9aÐ'ÓbˆÜ�6‹{˜aÒÐÐÜÑWÑPVÓWÔWÐWÐWà×'Ñ'¨¸Ð'Ó<ˆÜ�6‹{˜aÒÐÐõ "ó
Ù!�! Q¬*×*=Ñ*=Ó%=À!Äz×GXÑGXÓBXŠA�zð 	ð 
ó "ˆEØ×+Ñ+¨H¸e¸XÐ+ÓFˆFÜ�v“; !Ó#Ð#Ð#ñ "ùò
s   Æ"HÆ;HÇHc                ó  — t        |ddd¬«      \  }}|j                  «       D �]å  }|j                  |d¬«      }t        j                  |«      }|D �]­  }|j
                  j                  «       sb|j                  |j                  ddt        dd	«      «       |j                  |j                  d
d«       |j                  |j                  dd«       |j
                  t        j                  k(  rÈ|j                  dz  dk(  r-|j                  |j                  t        j                   dg«       ŒÜ|j                  dz  d	k(  rK|j#                  |j                  dd«       |j                  |j                  t        j$                  dg«       �Œ9|j                  |j                  t        j&                  «       �Œe|j
                  t        j(                  k(  s�Œ„|j                  |j                  t        j                  «       �Œ° ||k(  r�ŒæJ ‚ y )Nr   rW  r]  rè   Fri  ÚparamXr   r   Ú	usr_attrXÚ	sys_attrXr¥   )rõ   rî   rD   rk  rj  r   rÛ   r  r“   r	   r;  rJ  r   r€   r    rÚ   rÊ   r&  ru  ÚFAILrØ   )r+   r   rÝ   rù   r,   rF   Údeepcopied_trialsr1  s           r   Ú test_get_all_trials_not_modifiedz0StorageTestCase.test_get_all_trials_not_modified  s˜  € Ü+¨G¸QÈÐQSÔTÑˆˆ?à'×,Ñ,×.ˆHØ×+Ñ+¨H¸uÐ+ÓEˆFÜ $§¡¨fÓ 5Ðä�Ø—{‘{×.Ñ.Ô0Ø×+Ñ+¨E¯O©O¸XÀqÔJ[Ð\]Ð_`ÓJaÔbØ×/Ñ/°·±ÀÈaÔPØ×1Ñ1°%·/±/À;ÐPQÔRà—;‘;¤*×"4Ñ"4Ò4Ø—|‘| aÑ'¨1Ò,Ø×6Ñ6°u·±Ì
×H[ÑH[Ð^_Ð]`ÕaØŸ™¨Ñ)¨QÒ.Ø×<Ñ<¸U¿_¹_ÈaÐQRÔSØ×6Ñ6°u·±Ì
×HYÑHYÐ\]Ð[^Ö_à×6Ñ6°u·±Ì
ÏÉÖXØ—[‘[¤J×$6Ñ$6Ô6Ø×2Ñ2°5·?±?ÄJ×DVÑDVÖWð  ð" Ð.Ô.Ð.Ð.ñ+ /r   c                ó  — t        |ddd¬«      \  }}|D ]  }|j                  |«      dk(  rŒJ ‚ t        |j                  «       «      dz   }t	        j
                  t        «      5  |j                  |«      sJ ‚	 d d d «       y # 1 sw Y   y xY w)Nr   é   é2   rè   r   )rõ   Úget_n_trialsrÜ   rî   r;   r<   rE   )r+   r   Ústudy_id_to_frozen_studiesrÝ   r,   rY   s         r   Útest_get_n_trialsz!StorageTestCase.test_get_n_trials  s†   € Ü(6°wÈÐSTÐ[]Ô(^Ñ%Ð" AÛ2ˆHØ×'Ñ'¨Ó1°QÓ6Ð6Ð6ð 3ô !$Ð$>×$CÑ$CÓ$EÓ FÈÑ JÐÜ�]‰]œ8Õ$Ø×'Ñ'Ð(=Ô>Ð>Ñ>÷ %×$Ñ$ús   Á%BÂBc                óÄ  — |j                  t        j                  f¬«      }t        j                  d«      }t
        j                  t
        j                  t
        j                  g}|D ]N  }t        |«      }||_	        |j                  t
        j                  k(  rdgnd |_
        |j                  ||¬«       ŒP |j                  |t
        j                  «      dk(  sJ ‚|j                  |t
        j                  «      dk(  sJ ‚t        D �cg c],  }|t
        j                  k7  sŒ|t
        j                  k7  sŒ+|‘Œ. }}|D ]  }|j                  ||«      dk(  rŒJ ‚ y c c}w )Nr   rq  rÓ   rÉ   r   r   r   )r%   r   rX   rv  rw  r   rÊ   ru  rx  r   rÕ   rC   r†  rÖ   )r+   r   r,   ry  rr  r#   r‚   rz  s           r   Útest_get_n_trials_state_optionz.StorageTestCase.test_get_n_trials_state_option&  sD  € Ø×+Ñ+¼×8OÑ8OÐ7QÐ+ÓRˆÜ—M‘M "Ó%ˆ	ô ×ÑÜ×ÑÜ×Ñð
ˆó ˆAÜ 	Ó*ˆAØˆAŒGØ !§¡¬:×+>Ñ+>Ò >˜‘uÀDˆAŒHØ×$Ñ$ X¸aÐ$Õ@ð	 ð ×#Ñ# H¬j×.AÑ.AÓBÀaÒGÐGÐGØ×#Ñ# H¬j×.?Ñ.?Ó@ÀAÒEÐEÐEõ "ó
Ù!�! Q¬*×*=Ñ*=Ó%=À!Äz×GXÑGXÓBXŠA�zð 	ð 
ó ˆAØ×'Ñ'¨°!Ó4¸Ó9Ð9Ð9ñ ùò
s   ÄEÄ$EÄ8ErQ  rÕ   )rÓ   rÿ   r   rÓ   r  rÿ   z-infc                ój  — |j                  |g¬«      }t        j                  t        «      5  |j	                  |«       d d d «       t        j                  t
        «      5  |j	                  |dz   «       d d d «       t        j                  d«      }|D ]<  }t        |«      }t        j                  |_        ||_        |j                  ||¬«       Œ> |t        j                  k(  rt!        |«      n
t#        |«      }|j	                  |«      j                  |k(  sJ ‚y # 1 sw Y   ŒßxY w# 1 sw Y   ŒµxY w)Nr   r   rq  rÉ   )r%   r;   r<   r  Úget_best_trialrE   rv  rw  rx  r   rÊ   r   r]   rC   r   rX   rÜ   Úmin)	r+   r   rQ  rÕ   r,   ry  Úvr¾   Úexpected_values	            r   Útest_get_best_trialz#StorageTestCase.test_get_best_trial?  sü   € ð ×+Ñ+¸	°{Ð+ÓCˆÜ�]‰]œ:Õ&Ø×"Ñ" 8Ô,÷ 'ô �]‰]œ8Õ$Ø×"Ñ" 8¨a¡<Ô0÷ %ô —M‘M "Ó%ˆ	ãˆAÜ,¨YÓ7ˆNÜ#-×#6Ñ#6ˆNÔ Ø#$ˆNÔ Ø×$Ñ$ X¸nÐ$ÕMð	 ð
 )2´^×5LÑ5LÒ(Lœ˜VœÔRUÐV\ÓR]ˆØ×%Ñ% hÓ/×5Ñ5¸ÒGÐGÑG÷ 'Ð&ú÷ %Ð$ús   ­DÁ D)ÄD&Ä)D2c                óª  — |j                  t        j                  t        j                  f¬«      }t	        j
                  d«      }t        d«      D ]A  }t        |«      }t        j                  |_
        ||dz   g|_        |j                  ||¬«       ŒC t        j                  t        «      5  |j!                  |«       d d d «       y # 1 sw Y   y xY w)Nr   rq  r¥   r   rÉ   )r%   r   rX   r&   rv  rw  r¢   rx  r   rÊ   r   rÕ   rC   r;   r<   ÚRuntimeErrorrŒ  )r+   r   r,   ry  r«   r¾   s         r   Ú4test_get_best_trial_for_multi_objective_optimizationzDStorageTestCase.test_get_best_trial_for_multi_objective_optimization_  s¬   € Ø×+Ñ+Ü&×/Ñ/´×1HÑ1HÐIð ,ó 
ˆô —M‘M "Ó%ˆ	Ü�q–ˆAÜ,¨YÓ7ˆNÜ#-×#6Ñ#6ˆNÔ Ø%&¨¨A© JˆNÔ!Ø×$Ñ$ X¸nÐ$ÕMð	 ô �]‰]œ<Õ(Ø×"Ñ" 8Ô,÷ )×(Ñ(ús   Â.C	Ã	Cc                ó0  — t        j                  t        «      5  |j                  dd¬«       d d d «       |j	                  t
        j                  g¬«      }t        j                  t        «      5  |j                  |d¬«       d d d «       |j                  |«      }||j                  |d¬«      k(  sJ ‚|j	                  t
        j                  g¬«      }|j                  |«      }||j                  |d¬«      k(  sJ ‚y # 1 sw Y   ŒÓxY w# 1 sw Y   Œ‰xY w)Nr   )r,   Útrial_numberr   )r•  )r;   r<   rE   Ú'get_trial_id_from_study_id_trial_numberr%   r   r&   rC   rÐ   s       r   Ú,test_get_trial_id_from_study_id_trial_numberz<StorageTestCase.test_get_trial_id_from_study_id_trial_numbern  s  € Ü�]‰]œ8Õ$Ø×;Ñ;ÀQÐUVÐ;ÔW÷ %ð ×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆä�]‰]œ8Õ$Ø×;Ñ;¸HÐSTÐ;ÔU÷ %ð ×+Ñ+¨HÓ5ˆà˜7×JÑJØ 1ð Kó 
ò 
ð 	
ð 
ð ×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆà×+Ñ+¨HÓ5ˆà˜7×JÑJØ 1ð Kó 
ò 
ð 	
ñ 
÷) %Ð$ú÷
 %Ð$ús   šD Á0DÄ D	ÄDc                ó$  — |j                  t        j                  g¬«      }|j                  |dd«       t	        j
                  t	        j                  |«      «      }|j                  |«      }|j                  |«      }||cxk(  rddik(  sJ ‚ J ‚y )Nr   r\   Úpickle)r%   r   r&   rs   r™  ÚloadsÚdumpsrt   )r+   r   r,   Úrestored_storageÚstorage_system_attrsÚrestored_storage_system_attrss         r   Útest_pickle_storagez#StorageTestCase.test_pickle_storage‡  s‹   € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×%Ñ% h°°xÔ@ä!Ÿ<™<¬¯©°WÓ(=Ó>Ðà&×=Ñ=¸hÓGÐØ(8×(OÑ(OÐPXÓ(YÐ%Ø#Ð'DÔYÈÐPXÐHYÒYÐYÑYÐYÑYr   c                ó¼  — |j                  t        j                  g¬«      }|j                  |«      }|j	                  |t
        j                  «       |j	                  |t
        j                  «       t        j                  t        «      5  |j	                  |t
        j                  «       d d d «       t        j                  t        «      5  |j	                  |t
        j                  «       d d d «       t        j                  t        «      5  |j	                  |t
        j                  «       d d d «       y # 1 sw Y   ŒŽxY w# 1 sw Y   ŒXxY w# 1 sw Y   y xY wr1   )r%   r   r&   rC   Úcheck_trial_is_updatabler   r€   rØ   r;   r<   r
   r€  ru  rÊ   rÐ   s       r   Útest_check_trial_is_updatablez-StorageTestCase.test_check_trial_is_updatable‘  sò   € Ø×+Ñ+¼×8OÑ8OÐ7PÐ+ÓQˆØ×+Ñ+¨HÓ5ˆà×(Ñ(¨´:×3EÑ3EÔFØ×(Ñ(¨´:×3EÑ3EÔFä�]‰]Ô3Õ4Ø×,Ñ,¨X´z·±ÔG÷ 5ô �]‰]Ô3Õ4Ø×,Ñ,¨X´z×7HÑ7HÔI÷ 5ô �]‰]Ô3Õ4Ø×,Ñ,¨X´z×7JÑ7JÔK÷ 5Ð4÷ 5Ð4ú÷ 5Ð4ú÷ 5Ð4ús$   Â!D:Ã!EÄ!EÄ:EÅEÅEN©r   r   rV   rW   )r   r   rË   r   rÌ   r   rV   rW   )r   r   r_  z	list[str]rV   rW   )r   r   rQ  r   rÕ   zlist[float]rV   rW   )7r9   Ú
__module__Ú__qualname__r/   r5   r8   rG   rK   rM   rZ   rj   ro   rv   ry   r{   r¬   r;   ÚmarkÚparametrizer   r©   rÍ   rÑ   râ   rå   rý   r  r  r#  r)  r,  r7  r?  rB  rG  rK  rN  rU  r[  r^  rf  ro  r{  r‚  rˆ  rŠ  r   rX   r&   r   r�  r“  r—  rŸ  r¢  r   r   r   r   r   !   st  „ ó_ó Nóbó+ó(
$ó9ó&Dó6Oó0?óQó0Aó>ó8Jðt ‡[�[×ÑØ"Ø
ˆ(�,‰,‹.˜,˜(Ÿ,™,›.Ð	)©H°T¸1¸aÓ,@Á(È4ÐQRÐTUÓBVÐ+WÐXóð4JØ"ð4JØ08ð4JØIQð4Jà	ò4Jó	ð4Jól;ó(ZóT9óDó,=Uó~:ó%_óN(EóT?ó
=ó!DóF>ó
?óFóB@óSó 5ó:ð ‡[�[×Ñ˜]¨c°3¨Z¸#¸s¸Ð,DÓEð<Ø"ð<Ø1:ð<à	ò<ó Fð<ó/ó#$óJ/ó4?ó:ð2 ‡[�[×Ñ˜[¨>×+BÑ+BÀN×D[ÑD[Ð*\Ó]Ø‡[�[×ÑØâØ‘%˜“, Ð$Ø‘%˜“- Ð%Ù�5‹\˜3 ¡U¨6£]Ð3Ù�5‹\ˆNÙ�6‹]ˆOð	
ó
ðHØ"ðHØ/=ðHØGRðHà	òHó
ó ^ðHó(-ó
ó2ZôLr   r   ÚMNISTr¦   ÚimageÚclassification©r=  Útags)rc   ÚnoneÚjson_serializablezdict[str, JSONSerializable]rg   r  r%  )	ÚzeroÚpirÜ   znegative maxr�  znegative minr  znegative infr%  c                óŒ   — t        j                  | «      rt        j                  |«      S t        j                  |«      ry| |k(  S )NF)Úmathr(  )r`  ra  s     r   Úis_equal_floatsr³  ·  s2   € Ü‡z�z�!„}Ü�z‰z˜!‹}ÐÜ‡z�z�!„}ØØ�‰6€Mr   c                óä   — | j                  t        j                  g¬«      }t        j	                  «       D ]8  \  }}| j                  |||«       t        | j                  |«      |   |«      rŒ8J ‚ y r1   )r%   r   r&   ÚFLOAT_ATTRSrh   r_   r³  r`   ©r   r,   r\   r]   s       r   rm   rm   ¿  si   € Ø×'Ñ'´N×4KÑ4KÐ3LÐ'ÓM€Hô "×'Ñ'Ö)‰
ˆˆUØ×#Ñ# H¨c°5Ô9Ü˜w×;Ñ;¸HÓEÀcÑJÈEÕRÐRÐRñ *r   c                óä   — | j                  t        j                  g¬«      }t        j	                  «       D ]8  \  }}| j                  |||«       t        | j                  |«      |   |«      rŒ8J ‚ y r1   )r%   r   r&   rµ  rh   rs   r³  rt   r¶  s       r   rx   rx   È  si   € Ø×'Ñ'´N×4KÑ4KÐ3LÐ'ÓM€Hô "×'Ñ'Ö)‰
ˆˆUØ×%Ñ% h°°UÔ;Ü˜w×=Ñ=¸hÓGÈÑLÈeÕTÐTÐTñ *r   c                óf  — | j                  t        j                  g¬«      }t        j	                  «       D ]y  }t        j                  |«      rŒ| j                  |«      }| j                  |t        j                  |f¬«       | j                  |«      j                  }|€J ‚t        ||«      rŒyJ ‚ y )Nr   rÔ   )r%   r   r&   rµ  rÕ   r²  r(  rC   rÚ   r   rÊ   rÙ   r]   r³  )r   r,   r]   r–   Ú	set_values        r   rä   rä   Ñ  s¡   € Ø×'Ñ'´N×4KÑ4KÐ3LÐ'ÓM€HÜ×#Ñ#Ö%ˆÜ�:‰:�eÔØØ×+Ñ+¨HÓ5ˆØ×&Ñ& x´z×7JÑ7JÐTYÐS[Ð&Ô\Ø×%Ñ% hÓ/×5Ñ5ˆ	ØÐ$Ð$Ð$Ü˜y¨%Õ0Ð0Ð0ñ &r   c                ó0  — | j                  t        j                  g¬«      }| j                  |«      }t        j                  «       D ]Í  \  }}t        ||¬«      }t        |f¬«      }||fD ]§  }t        |t        «      rt        j                  |«      sŒ)|j                  j                  |z   }|j                  |«      }	| j                  |||	|«       t        | j!                  ||«      |	«      sJ ‚| j#                  |«      j$                  |   |k(  rŒ§J ‚ ŒÏ y )Nr   r  r  )r%   r   r&   rC   rµ  rh   r	   r   Ú
isinstancer²  ÚisfiniteÚ	__class__r9   rø   r  r³  r÷   rÙ   r¹   )
r   r,   r–   r\   r]   Úfloat_distributionÚcategorical_distributionrc  re  Úinternal_reprs
             r   r  r  Ý  s  € Ø×'Ñ'´N×4KÑ4KÐ3LÐ'ÓM€HØ×'Ñ'¨Ó1€Hä!×'Ñ'Ö)‰
ˆˆUÜ.°5¸uÔEÐÜ#:ÀEÀ8Ô#LÐ Ø/Ð1IÓJˆLä˜,Ô(9Ô:Ä4Ç=Á=ÐQVÔCWØØ%×/Ñ/×8Ñ8¸3Ñ>ˆJØ(×9Ñ9¸%Ó@ˆMØ×#Ñ# H¨j¸-ÈÔVÜ" 7×#:Ñ#:¸8ÀZÓ#PÐR_Ô`Ð`Ð`Ø×$Ñ$ XÓ.×<Ñ<¸ZÑHÈLÓXÐXÐXñ Kñ *r   c                ó,  — | j                  t        j                  g¬«      }| j                  |«      }t	        t
        j                  «       «      D ]B  \  }}| j                  |||«       t        | j                  |«      j                  |   |«      rŒBJ ‚ y r1   )r%   r   r&   rC   Ú	enumeraterµ  rÕ   r&  r³  rÙ   rŠ   )r   r,   r–   r«   r]   s        r   r+  r+  ï  sƒ   € Ø×'Ñ'´N×4KÑ4KÐ3LÐ'ÓM€HØ×'Ñ'¨Ó1€HÜœk×0Ñ0Ó2Ö3‰ˆˆ5Ø×,Ñ,¨X°q¸%Ô@Ü˜w×0Ñ0°Ó:×NÑNÈqÑQÐSXÕYÐYÐYñ 4r   c                ó  — | j                  | j                  t        j                  g¬«      «      }t        j                  «       D ]8  \  }}| j                  |||«       t        | j                  |«      |   |«      rŒ8J ‚ y r1   )	rC   r%   r   r&   rµ  rh   r;  r³  r/  ©r   r–   r\   r]   s       r   rA  rA  ÷  sw   € Ø×'Ñ'Ø× Ñ ¬^×-DÑ-DÐ,EÐ ÓFó€Hô
 "×'Ñ'Ö)‰
ˆˆUØ×#Ñ# H¨c°5Ô9Ü˜w×;Ñ;¸HÓEÀcÑJÈEÕRÐRÐRñ *r   c                ó  — | j                  | j                  t        j                  g¬«      «      }t        j                  «       D ]8  \  }}| j                  |||«       t        | j                  |«      |   |«      rŒ8J ‚ y r1   )	rC   r%   r   r&   rµ  rh   rJ  r³  rE  rÄ  s       r   rM  rM    sw   € Ø×'Ñ'Ø× Ñ ¬^×-DÑ-DÐ,EÐ ÓFó€Hô
 "×'Ñ'Ö)‰
ˆˆUØ×%Ñ% h°°UÔ;Ü˜w×=Ñ=¸hÓGÈÑLÈeÕTÐTÐTñ *r   c                ó  — t        j                  |«      }i }i }t        |«      D ]Ø  }d|› �}	|€/|j                  t        j
                  t        j                  g«      }| j                  |f|	¬«      }
| j                  |
d|«       | j                  |
d|«       i }t        |«      D ]:  }t        |«      }||_        | j                  |
|«      |_        |||j                  <   Œ< |||
<   t        |	|d|id|i|
¬«      ||
<   ŒÚ ||fS )Nztest-study-name-r7   Úur#   )r    rQ  r�   r�   r,   )rv  rw  r¢   Úchoicer   r&   rX   r%   r_   rs   rx  r    rC   r“   r   )r   ré   rê   rë   rQ  ry  Ústudy_id_to_frozen_studyÚstudy_id_to_trialsr«   r    r,   rF   Újr1  s                 r   rõ   rõ     s#  € ô —‘˜dÓ#€IØ79ÐØ<>ÐÜ�7Ž^ˆØ'¨ sÐ+ˆ
ØÐØ!×(Ñ(¬.×*AÑ*AÄ>×CZÑCZÐ)[Ó\ˆIØ×+Ñ+¸	°|ÐPZÐ+Ó[ˆØ×#Ñ# H¨c°1Ô5Ø×%Ñ% h°°QÔ7ØˆÜ�w–ˆAÜ# IÓ.ˆEØˆEŒLØ%×6Ñ6°xÀÓGˆEŒOØ&+ˆF�5—?‘?Ò#ð	  ð
 (.Ð˜8Ñ$Ü-8Ø!ØØ˜Q�xØ˜q˜Øô.
Ð  Ò*ð ð* $Ð%7Ð7Ð7r   c                ó  — | j                  dd«      t        dd«      f| j                  dd«      t        ddd¬«      f| j                  g d¢«      t        d«      f| j                  dd«      t        dd«      f| j                  dd	g«      t        d
«      fdœ}ddd dddgdœdœ}| j                  t        «      }i }i }i }i }i }|j                  «       D ]&  \  }	\  }
}| j                  ddg«      sŒ|
||	<   |||	<   Œ( |j                  «       D ]<  \  }	}
| j                  ddg«      r|
|d|	z   <   | j                  ddg«      sŒ5|
|d|	z   <   Œ> t        | j                  dd«      «      D ]+  }| j                  ddg«      sŒ| j                  dd«      ||<   Œ- t        d||t        j                  k(  r| j                  dd«      nd t        j                  «       |j                  «       rt        j                  «       nd |||||d¬«      S )Nr   r   r   T)r
  )ÚCatAÚCatBÚCatCéýÿÿÿr  r  )r  r  )rô   ÚparamBÚparamCÚparamDÚparamEÚvalueAr¦   r©  rª  r«  )ÚattrAÚattrBÚattrCÚattrDFÚusr_Úsys_é   rµ   iöÿÿÿ)r    r   r]   r”   r›   r†   r¹   r�   r�   rŠ   r–   )Úuniformr	   rÈ  r   rÖ   rh   r¢   Úrandintr   r   rÊ   r   r©   rÛ   )ry  Úexample_paramsÚexample_attrsr   r†   r¹   r�   r�   rŠ   r\   r]   Údistr«   s                r   rx  rx  /  s1  € à×$Ñ$ Q¨Ó*Ô,=¸aÀÓ,CÐDØ×$Ñ$ Q¨Ó*Ô,=¸aÀÈÔ,MÐNà×ÑÒ5Ó6Ü#Ð$<Ó=ð
ð ×$Ñ$ R¨Ó+Ô->¸rÀ1Ó-EÐFØ×#Ñ# S¨# JÓ/Ô1HÈÓ1TÐUñ	€Nð ØØØ$)°GÐ=MÐ3NÑOñ	€Mð ×ÑœZÓ(€EØ€FØ€MØ€JØ#%€LØÐØ,×2Ñ2Ö4Ñˆ‰]ˆe�TØ×Ñ˜T 5˜MÕ*ØˆF�3‰KØ!%ˆM˜#Òð 5ð $×)Ñ)Ö+‰
ˆˆUØ×Ñ˜T 5˜MÔ*Ø',ˆJ�v ‘|Ñ$Ø×Ñ˜T 5˜MÕ*Ø).ˆL˜ #™Ò&ð	 ,ô
 �9×$Ñ$ Q¨Ó+Ö,ˆØ×Ñ˜T 5˜MÕ*Ø%.×%6Ñ%6°s¸BÓ%?Ð Ò"ð -ô ØØØ,1´Z×5HÑ5HÒ,Hˆi×Ñ  RÔ(ÈdÜ—|‘|“~Ø,1×,=Ñ,=Ô,?œ(Ÿ,™,œ.ÀTØØ#ØØ!Ø/Øôð r   )rV   r   )r`  r   ra  r   rV   Úboolr£  r   )r   r   ré   r¨   rê   r¨   rë   r¨   rQ  zStudyDirection | NonerV   z@tuple[dict[int, FrozenStudy], dict[int, dict[int, FrozenTrial]]])ry  zrandom.RandomrV   r   )9Ú
__future__r   rk  r   r²  r™  rv  ÚsysÚtimer   Útypingr   Únumpyr'  r;   r=   Úoptuna._typingr   Úoptuna.distributionsr   r	   Úoptuna.exceptionsr
   Úoptuna.storagesr   Úoptuna.storages._baser   Úoptuna.study._frozenr   Úoptuna.study._study_directionr   Úoptuna.trialr   r   Úfixturer   r   rR   rÖ   rg   Ú__annotations__r°  Ú
float_inforÜ   r�  r   rµ  r³  rm   rx   rä   r  r+  rA  rM  rõ   rx  r   r   r   Ú<module>ró     sz  ðÞ "ã Ý Û Û Û Û 
Ý Ý ã Û ã Ý +Ý 8Ý 2Ý 6Ý 'Ý ;Ý ,Ý 8Ý $Ý #ð ‡�òó ð÷~Lñ ~LñB �*Ó€
ð ØØ,1¸GÐEUÐ;VÑWñ.€Ð*ó ð Ø
�'‰'Ø�>‰>×ÑØ—^‘^×'Ñ'Ð'Ø�>‰>×ÑØ—^‘^×'Ñ'Ð'Ù�‹<Ù˜5“\�MÙ�‹<ñ
€óóSóUó	1óYó$ZóSóUð  (,ð8Øð8àð8ð ð8ð ð	8ð
 %ð8ð Fó8ôD/r   