




"""simple docstring"""





def 					_UpperCamelCase    (			UpperCamelCase				,       UpperCamelCase							)			->			int:


			"""simple docstring"""
			return x if y == 0 else greatest_common_divisor(UpperCamelCase				,       x % y							)

def 					_UpperCamelCase    (			UpperCamelCase				,       UpperCamelCase							)			->			int:


			"""simple docstring"""
			return (x * y) // greatest_common_divisor(UpperCamelCase				,       UpperCamelCase							)

def 					_UpperCamelCase    (			UpperCamelCase = 20							)			->			int:


			"""simple docstring"""
			__UpperCAmelCase	: List[Any]		=					1
			for i in range(1				,       n + 1							):
						__UpperCAmelCase	: Any		=					lcm(UpperCamelCase				,       UpperCamelCase							)
			return g


if __name__ == "__main__":
					print(f'''{solution() = }''')








"""simple docstring"""





def 					_UpperCamelCase    (			UpperCamelCase				,       UpperCamelCase				,       UpperCamelCase							)			->			int:


			"""simple docstring"""

			if exponent == 1:
						return base
			if exponent % 2 == 0:
						__UpperCAmelCase	: Union[str, Any]		=					_modexpt(UpperCamelCase				,       exponent // 2				,       UpperCamelCase							) % modulo_value
						return (x * x) % modulo_value
			else:
						return (base * _modexpt(UpperCamelCase				,       exponent - 1				,       UpperCamelCase							)) % modulo_value

def 					_UpperCamelCase    (			UpperCamelCase = 1777				,       UpperCamelCase = 1855				,       UpperCamelCase = 8							)			->			int:


			"""simple docstring"""
			__UpperCAmelCase	: Optional[int]		=					base
			for _ in range(1				,       UpperCamelCase							):
						__UpperCAmelCase	: str		=					_modexpt(UpperCamelCase				,       UpperCamelCase				,       10**digits							)

			return result


if __name__ == "__main__":
					print(f'''{solution() = }''')


