





import copy
from collections import OrderedDict
from typing import Dict, Mapping

from packaging import version

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


a__    :		str      						=     logging.get_logger(__name__)

a__    :		Optional[Any]      						=     {
    'facebook/detr-resnet-50': 'https://huggingface.co/facebook/detr-resnet-50/resolve/main/config.json',
    # See all DETR models at https://huggingface.co/models?filter=detr
}






class  lowercase    (      __lowercase       ):






					"""simple docstring"""



					snake_case_						  =			'detr'
					snake_case_						  =			['past_key_values']
					snake_case_						  =			{
					    'hidden_size': 'd_model',
					    'num_attention_heads': 'encoder_attention_heads',
					}





					def __init__(    self						:     Tuple ,					a_						:     Union[str, Any]=True ,					a_						:     Dict=None ,					a_						:     Union[str, Any]=3 ,					a_						:     Dict=1_00 ,					a_						:     Union[str, Any]=6 ,					a_						:     Optional[Any]=20_48 ,					a_						:     Optional[Any]=8 ,					a_						:     List[Any]=6 ,					a_						:     List[Any]=20_48 ,					a_						:     str=8 ,					a_						:     Union[str, Any]=0.0 ,					a_						:     Optional[Any]=0.0 ,					a_						:     Union[str, Any]=True ,					a_						:     Dict="relu" ,					a_						:     Tuple=2_56 ,					a_						:     List[Any]=0.1 ,					a_						:     Optional[int]=0.0 ,					a_						:     Optional[int]=0.0 ,					a_						:     Union[str, Any]=0.0_2 ,					a_						:     Union[str, Any]=1.0 ,					a_						:     str=False ,					a_						:     int="sine" ,					a_						:     Dict="resnet50" ,					a_						:     Tuple=True ,					a_						:     int=False ,					a_						:     str=1 ,					a_						:     Optional[int]=5 ,					a_						:     Any=2 ,					a_						:     str=1 ,					a_						:     Optional[int]=1 ,					a_						:     Tuple=5 ,					a_						:     Any=2 ,					a_						:     Union[str, Any]=0.1 ,					**a_						:     Tuple ,					):

						"""simple docstring"""



						if backbone_config is not None and use_timm_backbone:
							raise ValueError("""You can't specify both `backbone_config` and `use_timm_backbone`."""							)

						if not use_timm_backbone:
							if backbone_config is None:
								logger.info("""`backbone_config` is `None`. Initializing the config with the default `ResNet` backbone."""							)
								lowerCamelCase__										=			CONFIG_MAPPING["resnet"](out_features=["""stage4"""]							)
							elif isinstance(a_ ,					a_							):
								lowerCamelCase__										=			backbone_config.get("""model_type"""							)
								lowerCamelCase__										=			CONFIG_MAPPING[backbone_model_type]
								lowerCamelCase__										=			config_class.from_dict(a_							)
							# set timm attributes to None
							lowerCamelCase__										=			None, None, None

						lowerCamelCase__										=			use_timm_backbone
						lowerCamelCase__										=			backbone_config
						lowerCamelCase__										=			num_channels
						lowerCamelCase__										=			num_queries
						lowerCamelCase__										=			d_model
						lowerCamelCase__										=			encoder_ffn_dim
						lowerCamelCase__										=			encoder_layers
						lowerCamelCase__										=			encoder_attention_heads
						lowerCamelCase__										=			decoder_ffn_dim
						lowerCamelCase__										=			decoder_layers
						lowerCamelCase__										=			decoder_attention_heads
						lowerCamelCase__										=			dropout
						lowerCamelCase__										=			attention_dropout
						lowerCamelCase__										=			activation_dropout
						lowerCamelCase__										=			activation_function
						lowerCamelCase__										=			init_std
						lowerCamelCase__										=			init_xavier_std
						lowerCamelCase__										=			encoder_layerdrop
						lowerCamelCase__										=			decoder_layerdrop
						lowerCamelCase__										=			encoder_layers
						lowerCamelCase__										=			auxiliary_loss
						lowerCamelCase__										=			position_embedding_type
						lowerCamelCase__										=			backbone
						lowerCamelCase__										=			use_pretrained_backbone
						lowerCamelCase__										=			dilation
						# Hungarian matcher
						lowerCamelCase__										=			class_cost
						lowerCamelCase__										=			bbox_cost
						lowerCamelCase__										=			giou_cost
						# Loss coefficients
						lowerCamelCase__										=			mask_loss_coefficient
						lowerCamelCase__										=			dice_loss_coefficient
						lowerCamelCase__										=			bbox_loss_coefficient
						lowerCamelCase__										=			giou_loss_coefficient
						lowerCamelCase__										=			eos_coefficient
						super().__init__(is_encoder_decoder=a_ ,					**a_							)





					@property
					def       _UpperCamelCase       (    self						:     Optional[int]							):

						"""simple docstring"""



						return self.encoder_attention_heads





					@property
					def       _UpperCamelCase       (    self						:     List[Any]							):

						"""simple docstring"""



						return self.d_model





					@classmethod
					def       _UpperCamelCase       (    cls						:     str ,					a_						:     PretrainedConfig ,					**a_						:     List[str]							):

						"""simple docstring"""



						return cls(backbone_config=a_ ,					**a_							)





					def       _UpperCamelCase       (    self						:     List[Any]							):

						"""simple docstring"""



						lowerCamelCase__										=			copy.deepcopy(self.__dict__							)
						if output["backbone_config"] is not None:
							lowerCamelCase__										=			self.backbone_config.to_dict()
						lowerCamelCase__										=			self.__class__.model_type
						return output






class  lowercase    (      __lowercase       ):






					"""simple docstring"""



					snake_case_						  =			version.parse('1.11'       )





					@property
					def       _UpperCamelCase       (    self						:     List[Any]							):

						"""simple docstring"""



						return OrderedDict(
						    [
						        ("""pixel_values""", {0: """batch""", 1: """num_channels""", 2: """height""", 3: """width"""}),
						        ("""pixel_mask""", {0: """batch"""}),
						    ]							)





					@property
					def       _UpperCamelCase       (    self						:     List[Any]							):

						"""simple docstring"""



						return 1e-5





					@property
					def       _UpperCamelCase       (    self						:     Optional[Any]							):

						"""simple docstring"""



						return 12


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())))