



"""simple docstring"""

from collections import OrderedDict
from typing import Mapping

from ...configuration_utils import PretrainedConfig
from ...onnx import OnnxConfig
from ...utils import logging


A_	:						Optional[Any]				=			logging.get_logger(__name__)

A_	:						Optional[int]				=			{
    'google/mobilebert-uncased': 'https://huggingface.co/google/mobilebert-uncased/resolve/main/config.json'
}
class 						lowerCAmelCase__	(  _UpperCAmelCase   ):


	'''simple docstring'''







	_SCREAMING_SNAKE_CASE  :		str     	=   MOBILEBERT_PRETRAINED_CONFIG_ARCHIVE_MAP
	_SCREAMING_SNAKE_CASE  :		int     	=   '''mobilebert'''





	def __init__(			self							:					Any    ,					_SCREAMING_SNAKE_CASE							:					Any=30_522    ,					_SCREAMING_SNAKE_CASE							:					str=512    ,					_SCREAMING_SNAKE_CASE							:					Tuple=24    ,					_SCREAMING_SNAKE_CASE							:					Tuple=4    ,					_SCREAMING_SNAKE_CASE							:					Any=512    ,					_SCREAMING_SNAKE_CASE							:					Dict="relu"    ,					_SCREAMING_SNAKE_CASE							:					Union[str, Any]=0.0    ,					_SCREAMING_SNAKE_CASE							:					int=0.1    ,					_SCREAMING_SNAKE_CASE							:					Any=512    ,					_SCREAMING_SNAKE_CASE							:					Dict=2    ,					_SCREAMING_SNAKE_CASE							:					List[Any]=0.0_2    ,					_SCREAMING_SNAKE_CASE							:					int=1E-1_2    ,					_SCREAMING_SNAKE_CASE							:					Optional[int]=0    ,					_SCREAMING_SNAKE_CASE							:					List[Any]=128    ,					_SCREAMING_SNAKE_CASE							:					Optional[int]=True    ,					_SCREAMING_SNAKE_CASE							:					Dict=True    ,					_SCREAMING_SNAKE_CASE							:					List[Any]=128    ,					_SCREAMING_SNAKE_CASE							:					List[str]=False    ,					_SCREAMING_SNAKE_CASE							:					str=True    ,					_SCREAMING_SNAKE_CASE							:					Any=4    ,					_SCREAMING_SNAKE_CASE							:					Dict="no_norm"    ,					_SCREAMING_SNAKE_CASE							:					str=True    ,					_SCREAMING_SNAKE_CASE							:					List[Any]=None    ,					**_SCREAMING_SNAKE_CASE							:					int    ,					)	->  Tuple:





					"""simple docstring"""


					super().__init__(pad_token_id=_SCREAMING_SNAKE_CASE    ,					**_SCREAMING_SNAKE_CASE						)

					SCREAMING_SNAKE_CASE	:       int 							=    vocab_size
					SCREAMING_SNAKE_CASE	:       int 							=    hidden_size
					SCREAMING_SNAKE_CASE	:       List[Any] 							=    num_hidden_layers
					SCREAMING_SNAKE_CASE	:       Union[str, Any] 							=    num_attention_heads
					SCREAMING_SNAKE_CASE	:       List[str] 							=    hidden_act
					SCREAMING_SNAKE_CASE	:       List[Any] 							=    intermediate_size
					SCREAMING_SNAKE_CASE	:       Optional[int] 							=    hidden_dropout_prob
					SCREAMING_SNAKE_CASE	:       Any 							=    attention_probs_dropout_prob
					SCREAMING_SNAKE_CASE	:       List[Any] 							=    max_position_embeddings
					SCREAMING_SNAKE_CASE	:       str 							=    type_vocab_size
					SCREAMING_SNAKE_CASE	:       Tuple 							=    initializer_range
					SCREAMING_SNAKE_CASE	:       Any 							=    layer_norm_eps
					SCREAMING_SNAKE_CASE	:       Optional[Any] 							=    embedding_size
					SCREAMING_SNAKE_CASE	:       List[Any] 							=    trigram_input
					SCREAMING_SNAKE_CASE	:       Optional[Any] 							=    use_bottleneck
					SCREAMING_SNAKE_CASE	:       Any 							=    intra_bottleneck_size
					SCREAMING_SNAKE_CASE	:       int 							=    use_bottleneck_attention
					SCREAMING_SNAKE_CASE	:       List[str] 							=    key_query_shared_bottleneck
					SCREAMING_SNAKE_CASE	:       Any 							=    num_feedforward_networks
					SCREAMING_SNAKE_CASE	:       Union[str, Any] 							=    normalization_type
					SCREAMING_SNAKE_CASE	:       Union[str, Any] 							=    classifier_activation

					if self.use_bottleneck:
									SCREAMING_SNAKE_CASE	:       Optional[Any] 							=    intra_bottleneck_size
					else:
									SCREAMING_SNAKE_CASE	:       Tuple 							=    hidden_size

					SCREAMING_SNAKE_CASE	:       Optional[int] 							=    classifier_dropout




class 						lowerCAmelCase__	(  _UpperCAmelCase   ):


	'''simple docstring'''







	@property
	def  _lowerCAmelCase    (			self							:					int						)	->  Union[str, Any]:





					"""simple docstring"""


					if self.task == "multiple-choice":
									SCREAMING_SNAKE_CASE	:       Tuple 							=    {0: 'batch', 1: 'choice', 2: 'sequence'}
					else:
									SCREAMING_SNAKE_CASE	:       Optional[int] 							=    {0: 'batch', 1: 'sequence'}
					return OrderedDict(
					    [
					        ('input_ids', dynamic_axis),
					        ('attention_mask', dynamic_axis),
					        ('token_type_ids', dynamic_axis),
					    ]						)






"""simple docstring"""

def    __snake_case       (  __A			:	int    )    ->					int:






				'''simple docstring'''
				if not isinstance(__A       ,		__A    ):
								raise ValueError('double_factorial() only accepts integral values'    )
				if num < 0:
								raise ValueError('double_factorial() not defined for negative values'    )
				SCREAMING_SNAKE_CASE	:       List[str] 							=    1
				for i in range(__A       ,		0       ,		-2    ):
								value *= i
				return value


if __name__ == "__main__":
							import doctest

							doctest.testmod()





