





"""simple docstring"""






def      lowercase__ (					lowerCAmelCase__   :			int			)    ->			int:



			'''simple docstring'''
			a__  :	list[list[int]]		 =			[[0 for _ in range(lowerCAmelCase__			)] for _ in range(m + 1			)]
			for i in range(m + 1			):
						a__  :	List[str]		 =			1

			for n in range(m + 1			):
						for k in range(1							,			lowerCAmelCase__			):
									memo[n][k] += memo[n][k - 1]
									if n - k > 0:
												memo[n][k] += memo[n - k - 1][k]

			return memo[m][m - 1]


if __name__ == "__main__":
		import sys

		if len(sys.argv) == 1:
				try:
						__UpperCAmelCase						=			int(input('''Enter a number: ''').strip())
						print(partition(n))
				except ValueError:
						print('''Please enter a number.''')
		else:
				try:
						__UpperCAmelCase						=			int(sys.argv[1])
						print(partition(n))
				except ValueError:
						print('''Please pass a number.''')






"""simple docstring"""






from maths.is_square_free import is_square_free
from maths.prime_factors import prime_factors






def      lowercase__ (					lowerCAmelCase__   :			int			)    ->			int:



			'''simple docstring'''
			a__  :	Tuple		 =			prime_factors(lowerCAmelCase__			)
			if is_square_free(lowerCAmelCase__			):
						return -1 if len(lowerCAmelCase__			) % 2 else 1
			return 0


if __name__ == "__main__":
		import doctest

		doctest.testmod()