




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


_snake_case										=       logging.get_logger(__name__)

_snake_case										=       {"openai-gpt": "https://huggingface.co/openai-gpt/resolve/main/config.json"}







class 						lowercase							(   UpperCamelCase__		):
     _a							 =						"openai-gpt"
     _a							 =						{
         "max_position_embeddings": "n_positions",
         "hidden_size": "n_embd",
         "num_attention_heads": "n_head",
         "num_hidden_layers": "n_layer",
     }

     def __init__(  self		,     _a=4_0478		,     _a=512		,     _a=768		,     _a=12		,     _a=12		,     _a="gelu"		,     _a=0.1		,     _a=0.1		,     _a=0.1		,     _a=1e-5		,     _a=0.02		,     _a="cls_index"		,     _a=True		,     _a=None		,     _a=True		,     _a=0.1		,     **_a		,     )						->							List[str]:
           _A							:     List[Any]			=						vocab_size
           _A							:     Tuple			=						n_positions
           _A							:     Union[str, Any]			=						n_embd
           _A							:     Union[str, Any]			=						n_layer
           _A							:     List[str]			=						n_head
           _A							:     int			=						afn
           _A							:     str			=						resid_pdrop
           _A							:     Optional[Any]			=						embd_pdrop
           _A							:     int			=						attn_pdrop
           _A							:     Dict			=						layer_norm_epsilon
           _A							:     int			=						initializer_range
           _A							:     int			=						summary_type
           _A							:     List[str]			=						summary_use_proj
           _A							:     Dict			=						summary_activation
           _A							:     Dict			=						summary_first_dropout
           _A							:     Any			=						summary_proj_to_labels
           super().__init__(**_a				)






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



def 			_lowerCAmelCase       (					__lowerCAmelCase  ,  __lowerCAmelCase  ,  __lowerCAmelCase      )   ->					str:


				"""simple docstring"""

				assert len(str(__lowerCAmelCase      )      ) > 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:
				snake_case__	:      Optional[int]     		=	year // 100
				snake_case__	:      List[str]     		=	(5 * (century % 4) + 2) % 7
				snake_case__	:      Dict     		=	year % 100
				snake_case__	:      Union[str, Any]     		=	centurian % 12
				snake_case__	:      List[Any]     		=	(
				    (centurian // 12) + centurian_m + (centurian_m // 4) + century_anchor
				) % 7
				snake_case__	:      List[str]     		=	(
				    DOOMSDAY_NOT_LEAP[month - 1]
				    if (year % 4 != 0) or (centurian == 0 and (year % 400) == 0)
				    else DOOMSDAY_LEAP[month - 1]
				)
				snake_case__	:      List[str]     		=	(dooms_day + day - day_anchor) % 7
				return WEEK_DAY_NAMES[week_day]


if __name__ == "__main__":
				import doctest

				doctest.testmod()

