





def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				list       , UpperCamelCase__:				list       , UpperCamelCase__:				int     ):
		SCREAMING_SNAKE_CASE__								=   len(UpperCamelCase__     )
		SCREAMING_SNAKE_CASE__								=   [[0] * n for i in range(UpperCamelCase__     )]
		for i in range(UpperCamelCase__     ):
				SCREAMING_SNAKE_CASE__								=   y_points[i]

		for i in range(2       , UpperCamelCase__     ):
				for j in range(UpperCamelCase__       , UpperCamelCase__     ):
						SCREAMING_SNAKE_CASE__								=   (
						    (xa - x_points[j - i + 1]) * q[j][i - 1]
						    - (xa - x_points[j]) * q[j - 1][i - 1]
						) / (x_points[j] - x_points[j - i + 1])

		return [q[n - 1][n - 1], q]


if __name__ == "__main__":
	import doctest

	doctest.testmod()






def 					SCREAMING_SNAKE_CASE__				(							UpperCamelCase__:				int = 600_851_475_143     ):

		try:
				SCREAMING_SNAKE_CASE__								=   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."""     )
		SCREAMING_SNAKE_CASE__								=   1
		SCREAMING_SNAKE_CASE__								=   2
		while i * i <= n:
				while n % i == 0:
						SCREAMING_SNAKE_CASE__								=   i
						n //= i
				i += 1
		if n > 1:
				SCREAMING_SNAKE_CASE__								=   n
		return int(UpperCamelCase__     )


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