




import math
def 					lowerCamelCase_    (    SCREAMING_SNAKE_CASE   ):
			'''simple docstring'''

			if not isinstance(SCREAMING_SNAKE_CASE					,	SCREAMING_SNAKE_CASE   ):
						SCREAMING_SNAKE_CASE           =					f"""Input value of [number={number}] must be an integer"""
						raise TypeError(SCREAMING_SNAKE_CASE   )

			if number < 1:
						SCREAMING_SNAKE_CASE           =					f"""Input value of [number={number}] must be > 0"""
						raise ValueError(SCREAMING_SNAKE_CASE   )
			elif number == 1:
						return 3
			elif number == 2:
						return 5
			else:
						SCREAMING_SNAKE_CASE           =					int(math.log(number // 3					,	2   )   ) + 2

						SCREAMING_SNAKE_CASE           =					[3, 5]
						SCREAMING_SNAKE_CASE           =					2
						SCREAMING_SNAKE_CASE           =					3
						for block in range(1					,	SCREAMING_SNAKE_CASE   ):
									for _ in range(SCREAMING_SNAKE_CASE   ):
												proth_list.append(2 ** (block + 1) + proth_list[proth_index - 1]   )
												proth_index += 1
									increment *= 2

			return proth_list[number - 1]


if __name__ == "__main__":
		import doctest

		doctest.testmod()

		for number in range(1_1):
				__A						:							Tuple							=  0
				try:
						__A						:							Optional[int]							=  proth(number)
				except ValueError:
						print(f'''ValueError: there is no {number}th Proth number''')
						continue

				print(f'''The {number}th Proth number: {value}''')












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


__A						:							Any							=  logging.get_logger(__name__)

__A						:							int							=  {
    # See all MEGATRON_BERT models at https://huggingface.co/models?filter=bert
}




class 			UpperCAmelCase_      (   A       ):




							'''simple docstring'''



							a__						  =     '''megatron-bert'''





							def __init__(					self       :	str       ,     a       :	Union[str, Any]=29_056       ,     a       :	Optional[int]=1_024       ,     a       :	str=24       ,     a       :	str=16       ,     a       :	str=4_096       ,     a       :	Any="gelu"       ,     a       :	Any=0.1       ,     a       :	Optional[int]=0.1       ,     a       :	Optional[int]=512       ,     a       :	Optional[Any]=2       ,     a       :	List[str]=0.02       ,     a       :	List[Any]=1E-1_2       ,     a       :	Any=0       ,     a       :	List[Any]="absolute"       ,     a       :	List[str]=True       ,     **a       :	Optional[Any]       ,     )			->					List[str]:
										super().__init__(pad_token_id=a       ,     **a			)

										SCREAMING_SNAKE_CASE           =					vocab_size
										SCREAMING_SNAKE_CASE           =					hidden_size
										SCREAMING_SNAKE_CASE           =					num_hidden_layers
										SCREAMING_SNAKE_CASE           =					num_attention_heads
										SCREAMING_SNAKE_CASE           =					hidden_act
										SCREAMING_SNAKE_CASE           =					intermediate_size
										SCREAMING_SNAKE_CASE           =					hidden_dropout_prob
										SCREAMING_SNAKE_CASE           =					attention_probs_dropout_prob
										SCREAMING_SNAKE_CASE           =					max_position_embeddings
										SCREAMING_SNAKE_CASE           =					type_vocab_size
										SCREAMING_SNAKE_CASE           =					initializer_range
										SCREAMING_SNAKE_CASE           =					layer_norm_eps
										SCREAMING_SNAKE_CASE           =					position_embedding_type
										SCREAMING_SNAKE_CASE           =					use_cache






