def  _lowerCamelCase					(   a_				: int = 60_08_51_47_51_43):

			try:
						lowerCamelCase						:Optional[Any]						  =     int(a_)
			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						:List[str]						  =     2
			lowerCamelCase						:Tuple						  =     0
			if n == 2:
						return 2
			while n > 2:
						while n % i != 0:
									i += 1
						lowerCamelCase						:Optional[Any]						  =     i
						while n % i == 0:
									lowerCamelCase						:Union[str, Any]						  =     n // i
						i += 1
			return int(a_)


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




from maths.prime_factors import prime_factors





def  _lowerCamelCase					(   a_				: int):
			if not isinstance(a_						,			a_):
						lowerCamelCase						:Tuple						  =     F"Input value of [number={number}] must be an integer"
						raise TypeError(a_)
			if number < 1:
						raise ValueError('''Input must be a positive integer''')
			return -1 if len(prime_factors(a_)) % 2 else 1


if __name__ == "__main__":
			import doctest

			doctest.testmod()



