



def snake_case__  (			__SCREAMING_SNAKE_CASE )		->							int:
		UpperCAmelCase_						=				1
		for i in range(1			,     num + 1 ):
				fact *= i
		return fact







def snake_case__  (			__SCREAMING_SNAKE_CASE )		->							int:
		UpperCAmelCase_						=				0
		while number > 0:
				UpperCAmelCase_						=				number % 10
				sum_of_digits += last_digit
				UpperCAmelCase_						=				number // 10  # Removing the last_digit from the given number
		return sum_of_digits







def snake_case__  (			__SCREAMING_SNAKE_CASE = 100 )		->							int:
		UpperCAmelCase_						=				factorial(__SCREAMING_SNAKE_CASE )
		UpperCAmelCase_						=				split_and_add(__SCREAMING_SNAKE_CASE )
		return result


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






import unittest

from transformers import is_torch_available
from transformers.testing_utils import require_sentencepiece, require_tokenizers, require_torch, slow, torch_device


if is_torch_available():
			from transformers import AutoModelForSeqaSeqLM, AutoTokenizer



@require_torch
@require_sentencepiece
@require_tokenizers
class 	lowerCamelCase      (						unittest.TestCase  ):







					'''simple docstring'''







					@slow
					def    A__		(			self     ):
							UpperCAmelCase_						=				AutoModelForSeqaSeqLM.from_pretrained("google/mt5-small"    ,	return_dict=lowerCAmelCase     ).to(lowerCAmelCase     )
							UpperCAmelCase_						=				AutoTokenizer.from_pretrained("google/mt5-small"     )

							UpperCAmelCase_						=				tokenizer("Hello there"    ,	return_tensors="pt"     ).input_ids
							UpperCAmelCase_						=				tokenizer("Hi I am"    ,	return_tensors="pt"     ).input_ids

							UpperCAmelCase_						=				model(input_ids.to(lowerCAmelCase     )    ,	labels=labels.to(lowerCAmelCase     )     ).loss
							UpperCAmelCase_						=				-(labels.shape[-1] * loss.item())

							UpperCAmelCase_						=				-84.9127
							self.assertTrue(abs(mtf_score - EXPECTED_SCORE     ) < 1e-4     )

