

from ...configuration_utils import PretrainedConfig
from ...utils import logging


lowerCAmelCase_       	=	logging.get_logger(__name__)

lowerCAmelCase_       	=	{
    '''microsoft/biogpt''': '''https://huggingface.co/microsoft/biogpt/resolve/main/config.json''',
    # See all BioGPT models at https://huggingface.co/models?filter=biogpt
}





class 	snake_case_   (		__A					):







			'''simple docstring'''

			SCREAMING_SNAKE_CASE     :   Optional[int]									=				"biogpt"







			def __init__(     self :				Any							,   _UpperCamelCase :				Dict=4_2_3_8_4							,   _UpperCamelCase :				Dict=1_0_2_4							,   _UpperCamelCase :				Optional[Any]=2_4							,   _UpperCamelCase :				Union[str, Any]=1_6							,   _UpperCamelCase :				Union[str, Any]=4_0_9_6							,   _UpperCamelCase :				Union[str, Any]="gelu"							,   _UpperCamelCase :				Tuple=0.1							,   _UpperCamelCase :				int=0.1							,   _UpperCamelCase :				Union[str, Any]=1_0_2_4							,   _UpperCamelCase :				Optional[int]=0.02							,   _UpperCamelCase :				str=1e-12							,   _UpperCamelCase :				List[str]=True							,   _UpperCamelCase :				str=True							,   _UpperCamelCase :				List[str]=0.0							,   _UpperCamelCase :				Optional[Any]=0.0							,   _UpperCamelCase :				int=1							,   _UpperCamelCase :				List[Any]=0							,   _UpperCamelCase :				Any=2							,   **_UpperCamelCase :				List[str]							,   )      ->List[Any]:
									snake_case_   =	vocab_size
									snake_case_   =	max_position_embeddings
									snake_case_   =	hidden_size
									snake_case_   =	num_hidden_layers
									snake_case_   =	num_attention_heads
									snake_case_   =	intermediate_size
									snake_case_   =	hidden_act
									snake_case_   =	hidden_dropout_prob
									snake_case_   =	attention_probs_dropout_prob
									snake_case_   =	initializer_range
									snake_case_   =	layer_norm_eps
									snake_case_   =	scale_embedding
									snake_case_   =	use_cache
									snake_case_   =	layerdrop
									snake_case_   =	activation_dropout
									super().__init__(pad_token_id=_UpperCamelCase							,   bos_token_id=_UpperCamelCase							,   eos_token_id=_UpperCamelCase							,   **_UpperCamelCase							)



'''simple docstring'''







A__:    Optional[int]					    =       [4, 1, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
A__:    Any					    =       [3, 7, 7, 4, 2, 6, 4, 1, 5, 3, 7, 5]
A__:    int					    =       {
    0: '''Sunday''',
    1: '''Monday''',
    2: '''Tuesday''',
    3: '''Wednesday''',
    4: '''Thursday''',
    5: '''Friday''',
    6: '''Saturday''',
}


def 	SCREAMING_SNAKE_CASE_					(  _UpperCAmelCase	:	int    ,_UpperCAmelCase	:	int    ,_UpperCAmelCase	:	int  )  ->			str:
       assert len(str(_UpperCAmelCase  )  ) > 2, "year should be in YYYY format"
       assert 1 <= month <= 12, "month should be between 1 to 12"
       assert 1 <= day <= 31, "day should be between 1 to 31"

       # Doomsday algorithm:
       _a    : List[str]     					=year // 100
       _a    : List[str]     					=(5 * (century % 4) + 2) % 7
       _a    : Optional[int]     					=year % 100
       _a    : Any     					=centurian % 12
       _a    : int     					=(
           (centurian // 12) + centurian_m + (centurian_m // 4) + century_anchor
       ) % 7
       _a    : Optional[Any]     					=(
           DOOMSDAY_NOT_LEAP[month - 1]
           if (year % 4 != 0) or (centurian == 0 and (year % 400) == 0)
           else DOOMSDAY_LEAP[month - 1]
       )
       _a    : str     					=(dooms_day + day - day_anchor) % 7
       return WEEK_DAY_NAMES[week_day]


if __name__ == "__main__":
   import doctest

   doctest.testmod()


