import warnings
from functools import wraps
from typing import Callable


def 	lowerCamelCase					(	UpperCamelCase     :				Callable							)   ->    Callable:

		@wraps(UpperCamelCase							)
		def _inner_fn(*UpperCamelCase     :				Optional[Any]			,       **UpperCamelCase     :				Optional[Any]							):
				warnings.warn(
				    (F"""'{fn.__name__}' is experimental and might be subject to breaking changes in the future.""")			,       UpperCamelCase			,       )
				return fn(*UpperCamelCase			,       **UpperCamelCase							)

		return _inner_fn
def 	lowerCamelCase					(	UpperCamelCase     :				int = 60_08_51_47_51_43							)   ->    int:

		try:
				_lowerCamelCase				   =  int(UpperCamelCase							)
		except (TypeError, ValueError):
				raise TypeError('Parameter n must be int or castable to int.'							)
		if n <= 0:
				raise ValueError('Parameter n must be greater than or equal to one.'							)
		_lowerCamelCase				   =  1
		_lowerCamelCase				   =  2
		while i * i <= n:
				while n % i == 0:
						_lowerCamelCase				   =  i
						n //= i
				i += 1
		if n > 1:
				_lowerCamelCase				   =  n
		return int(UpperCamelCase							)


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