
"""simple docstring"""

from typing import Mapping

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


_A						=			logging.get_logger(__name__)

_A						=			{
    't5-small': 'https://huggingface.co/t5-small/resolve/main/config.json',
    't5-base': 'https://huggingface.co/t5-base/resolve/main/config.json',
    't5-large': 'https://huggingface.co/t5-large/resolve/main/config.json',
    't5-3b': 'https://huggingface.co/t5-3b/resolve/main/config.json',
    't5-11b': 'https://huggingface.co/t5-11b/resolve/main/config.json',
}






class 	_lowercase       (    __UpperCAmelCase		):
	lowercase_				=     't5'
	lowercase_				=     ['past_key_values']
	lowercase_				=     {'hidden_size': 'd_model', 'num_attention_heads': 'num_heads', 'num_hidden_layers': 'num_layers'}




	def __init__(			self		,			UpperCAmelCase_=32128		,			UpperCAmelCase_=512		,			UpperCAmelCase_=64		,			UpperCAmelCase_=2048		,			UpperCAmelCase_=6		,			UpperCAmelCase_=None		,			UpperCAmelCase_=8		,			UpperCAmelCase_=32		,			UpperCAmelCase_=128		,			UpperCAmelCase_=0.1		,			UpperCAmelCase_=1E-6		,			UpperCAmelCase_=1.0		,			UpperCAmelCase_="relu"		,			UpperCAmelCase_=True		,			UpperCAmelCase_=True		,			UpperCAmelCase_=0		,			UpperCAmelCase_=1		,			**UpperCAmelCase_		,			)		->							Dict:
		lowerCamelCase					:      int          =   vocab_size
		lowerCamelCase					:      Dict          =   d_model
		lowerCamelCase					:      List[Any]          =   d_kv
		lowerCamelCase					:      int          =   d_ff
		lowerCamelCase					:      Dict          =   num_layers
		lowerCamelCase					:      Any          =   (
		    num_decoder_layers if num_decoder_layers is not None else self.num_layers
		)  # default = symmetry
		lowerCamelCase					:      Optional[int]          =   num_heads
		lowerCamelCase					:      List[Any]          =   relative_attention_num_buckets
		lowerCamelCase					:      Optional[Any]          =   relative_attention_max_distance
		lowerCamelCase					:      str          =   dropout_rate
		lowerCamelCase					:      Union[str, Any]          =   layer_norm_epsilon
		lowerCamelCase					:      Tuple          =   initializer_factor
		lowerCamelCase					:      Tuple          =   feed_forward_proj
		lowerCamelCase					:      str          =   use_cache

		lowerCamelCase					:      Optional[int]          =   self.feed_forward_proj.split('-' )
		lowerCamelCase					:      Optional[Any]          =   act_info[-1]
		lowerCamelCase					:      str          =   act_info[0] == 'gated'

		if len(UpperCAmelCase_ ) > 1 and act_info[0] != "gated" or len(UpperCAmelCase_ ) > 2:
			raise ValueError(
			    F"""`feed_forward_proj`: {feed_forward_proj} is not a valid activation function of the dense layer."""
			    'Please make sure `feed_forward_proj` is of the format `gated-{ACT_FN}` or `{ACT_FN}`, e.g. '
			    '\'gated-gelu\' or \'relu\'' )

		# for backwards compatibility
		if feed_forward_proj == "gated-gelu":
			lowerCamelCase					:      Any          =   'gelu_new'

		super().__init__(
		    pad_token_id=UpperCAmelCase_		,			eos_token_id=UpperCAmelCase_		,			is_encoder_decoder=UpperCAmelCase_		,			**UpperCAmelCase_		,			)






class 	_lowercase       (    __UpperCAmelCase		):




	@property
	def       _UpperCamelCase   (			self )		->							Mapping[str, Mapping[int, str]]:
		lowerCamelCase					:      List[Any]          =   {
		    'input_ids': {0: 'batch', 1: 'encoder_sequence'},
		    'attention_mask': {0: 'batch', 1: 'encoder_sequence'},
		}
		if self.use_past:
			lowerCamelCase					:      Optional[Any]          =   'past_encoder_sequence + sequence'
			lowerCamelCase					:      Optional[Any]          =   {0: 'batch'}
			lowerCamelCase					:      str          =   {0: 'batch', 1: 'past_decoder_sequence + sequence'}
		else:
			lowerCamelCase					:      Dict          =   {0: 'batch', 1: 'decoder_sequence'}
			lowerCamelCase					:      List[Any]          =   {0: 'batch', 1: 'decoder_sequence'}

		if self.use_past:
			self.fill_with_past_key_values_(UpperCAmelCase_		,			direction='inputs' )

		return common_inputs




	@property
	def       _UpperCamelCase   (			self )		->							int:
		return 13








"""simple docstring"""

def 		UpperCAmelCase (		a_      ):





		'''simple docstring'''


		lowerCamelCase					:      List[Any]          =   1
		for i in range(1,						num + 1      ):
				fact *= i
		return fact
def 		UpperCAmelCase (		a_      ):





		'''simple docstring'''


		lowerCamelCase					:      Optional[Any]          =   0
		while number > 0:
				lowerCamelCase					:      str          =   number % 10
				sum_of_digits += last_digit
				lowerCamelCase					:      Tuple          =   number // 10  # Removing the last_digit from the given number
		return sum_of_digits
def 		UpperCAmelCase (		a_ = 100      ):





		'''simple docstring'''


		lowerCamelCase					:      Optional[Any]          =   factorial(a_      )
		lowerCamelCase					:      int          =   split_and_add(a_      )
		return result


if __name__ == "__main__":
					print(solution(int(input('Enter the Number: ').strip())))






