






def   SCREAMING_SNAKE_CASE_				(				__magic_name__   :    str      ,     __magic_name__   :    str   )						->     str:






	"""simple docstring"""



	if not isinstance(UpperCamelCase__      ,     UpperCamelCase__   ):
		raise TypeError("""plaintext must be a string"""   )
	if not isinstance(UpperCamelCase__      ,     UpperCamelCase__   ):
		raise TypeError("""key must be a string"""   )

	if not plaintext:
		raise ValueError("""plaintext is empty"""   )
	if not key:
		raise ValueError("""key is empty"""   )

	key += plaintext
	UpperCamelCase	:int		=      plaintext.lower()
	UpperCamelCase	:Optional[int]		=      key.lower()
	UpperCamelCase	:List[Any]		=      0
	UpperCamelCase	:Any		=      0
	UpperCamelCase	:Any		=      """"""
	while plaintext_iterator < len(UpperCamelCase__   ):
		if (
		    ord(plaintext[plaintext_iterator]   ) < 97
		    or ord(plaintext[plaintext_iterator]   ) > 122
		):
			ciphertext += plaintext[plaintext_iterator]
			plaintext_iterator += 1
		elif ord(key[key_iterator]   ) < 97 or ord(key[key_iterator]   ) > 122:
			key_iterator += 1
		else:
			ciphertext += chr(
			    (
			        (ord(plaintext[plaintext_iterator]   ) - 97 + ord(key[key_iterator]   ))
			        - 97
			    )
			    % 26
			    + 97   )
			key_iterator += 1
			plaintext_iterator += 1
	return ciphertext

def   SCREAMING_SNAKE_CASE_				(				__magic_name__   :    str      ,     __magic_name__   :    str   )						->     str:






	"""simple docstring"""



	if not isinstance(UpperCamelCase__      ,     UpperCamelCase__   ):
		raise TypeError("""ciphertext must be a string"""   )
	if not isinstance(UpperCamelCase__      ,     UpperCamelCase__   ):
		raise TypeError("""key must be a string"""   )

	if not ciphertext:
		raise ValueError("""ciphertext is empty"""   )
	if not key:
		raise ValueError("""key is empty"""   )

	UpperCamelCase	:int		=      key.lower()
	UpperCamelCase	:Tuple		=      0
	UpperCamelCase	:List[str]		=      0
	UpperCamelCase	:str		=      """"""
	while ciphertext_iterator < len(UpperCamelCase__   ):
		if (
		    ord(ciphertext[ciphertext_iterator]   ) < 97
		    or ord(ciphertext[ciphertext_iterator]   ) > 122
		):
			plaintext += ciphertext[ciphertext_iterator]
		else:
			plaintext += chr(
			    (ord(ciphertext[ciphertext_iterator]   ) - ord(key[key_iterator]   )) % 26
			    + 97   )
			key += chr(
			    (ord(ciphertext[ciphertext_iterator]   ) - ord(key[key_iterator]   )) % 26
			    + 97   )
			key_iterator += 1
		ciphertext_iterator += 1
	return plaintext


if __name__ == "__main__":
	import doctest

	doctest.testmod()
	UpperCAmelCase_					:		List[str]           = int(input('''Type 1 to encrypt or 2 to decrypt:'''))
	if operation == 1:
		UpperCAmelCase_					:		Union[str, Any]           = input('''Typeplaintext to be encrypted:\n''')
		UpperCAmelCase_					:		Optional[int]           = input('''Type the key:\n''')
		print(encrypt(plaintext, key))
	elif operation == 2:
		UpperCAmelCase_					:		int           = input('''Type the ciphertext to be decrypted:\n''')
		UpperCAmelCase_					:		int           = input('''Type the key:\n''')
		print(decrypt(ciphertext, key))
	decrypt('''jsqqs avvwo''', '''coffee''')







def     lowerCamelCase__  (  UpperCamelCase__      :							int = 100    )      ->			int:



					'''simple docstring'''




					_snake_case						=					1
					_snake_case						=					0
					for i in range(1							,     num + 1    ):
										fact *= i

					for j in str(UpperCamelCase__    ):
										result += int(UpperCamelCase__    )

					return result


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



