
from collections import OrderedDict
from typing import Mapping

from packaging import version

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


lowercase    :   Any						=			logging.get_logger(__name__)

lowercase    :   Optional[int]						=			{
    'google/vit-base-patch16-224': 'https://huggingface.co/vit-base-patch16-224/resolve/main/config.json',
    # See all ViT models at https://huggingface.co/models?filter=vit
}




class 					lowerCamelCase__				(							__lowercase):




	'''simple docstring'''




	_A								=	'vit'







	def __init__(   self						:Optional[int]	,  a						:Union[str, Any]=7_6_8	,  a						:str=1_2	,  a						:Tuple=1_2	,  a						:Union[str, Any]=3_0_7_2	,  a						:Dict="gelu"	,  a						:int=0.0	,  a						:str=0.0	,  a						:Optional[Any]=0.02	,  a						:Tuple=1E-1_2	,  a						:str=2_2_4	,  a						:Dict=1_6	,  a						:Any=3	,  a						:List[str]=True	,  a						:Any=1_6	,  **a						:List[str]	,  )						->					Optional[int]:
								super().__init__(**a		)

								__UpperCamelCase      :  Dict       =   hidden_size
								__UpperCamelCase      :  Optional[int]       =   num_hidden_layers
								__UpperCamelCase      :  Tuple       =   num_attention_heads
								__UpperCamelCase      :  Any       =   intermediate_size
								__UpperCamelCase      :  Optional[int]       =   hidden_act
								__UpperCamelCase      :  Union[str, Any]       =   hidden_dropout_prob
								__UpperCamelCase      :  List[Any]       =   attention_probs_dropout_prob
								__UpperCamelCase      :  List[Any]       =   initializer_range
								__UpperCamelCase      :  List[str]       =   layer_norm_eps
								__UpperCamelCase      :  Union[str, Any]       =   image_size
								__UpperCamelCase      :  Dict       =   patch_size
								__UpperCamelCase      :  int       =   num_channels
								__UpperCamelCase      :  Optional[int]       =   qkv_bias
								__UpperCamelCase      :  str       =   encoder_stride




class 					lowerCamelCase__				(							__lowercase):




	'''simple docstring'''




	_A								=	version.parse('1.11')







	@property
	def   _lowerCamelCase							(   self						:Optional[int]		)						->					Mapping[str, Mapping[int, str]]:
								return OrderedDict(
								    [
								        ("pixel_values", {0: "batch", 1: "num_channels", 2: "height", 3: "width"}),
								    ]		)







	@property
	def   _lowerCamelCase							(   self						:Tuple		)						->					float:
								return 1E-4

def       _SCREAMING_SNAKE_CASE   (						_lowerCamelCase					:     int)   ->       int:






							'''simple docstring'''





							__UpperCamelCase      :  Tuple       =   1
							for i in range(1		,    num + 1):
														fact *= i
							return fact




def       _SCREAMING_SNAKE_CASE   (						_lowerCamelCase					:     int)   ->       int:






							'''simple docstring'''





							__UpperCamelCase      :  Dict       =   0
							while number > 0:
														__UpperCamelCase      :  List[Any]       =   number % 10
														sum_of_digits += last_digit
														__UpperCamelCase      :  List[Any]       =   number // 10  # Removing the last_digit from the given number
							return sum_of_digits




def       _SCREAMING_SNAKE_CASE   (						_lowerCamelCase					:     int = 100)   ->       int:






							'''simple docstring'''





							__UpperCamelCase      :  Optional[Any]       =   factorial(_lowerCamelCase)
							__UpperCamelCase      :  Tuple       =   split_and_add(_lowerCamelCase)
							return result


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