






"""simple docstring"""

def _lowerCAmelCase						(	__lowerCamelCase:list[list[int]] ):

						'''simple docstring'''






						if len(__lowerCamelCase ) == 0 or not all(len(__lowerCamelCase ) == 2 for pair in coordinates ):
												raise ValueError("The program cannot work out a fitting polynomial." )

						if len({tuple(__lowerCamelCase ) for pair in coordinates} ) != len(__lowerCamelCase ):
												raise ValueError("The program cannot work out a fitting polynomial." )

						__magic_name__      =  {x for x, _ in coordinates}
						if len(__lowerCamelCase ) == 1:
												return f'''x={coordinates[0][0]}'''

						if len(__lowerCamelCase ) != len(__lowerCamelCase ):
												raise ValueError("The program cannot work out a fitting polynomial." )

						__magic_name__      =  len(__lowerCamelCase )

						__magic_name__      =  0
						__magic_name__      =  []
						# put the x and x to the power values in a matrix
						while count_of_line < x:
												__magic_name__      =  0
												__magic_name__      =  coordinates[count_of_line][0]
												__magic_name__      =  []
												while count_in_line < x:
																		count_line.append(a ** (x - (count_in_line + 1)) )
																		count_in_line += 1
												matrix.append(__lowerCamelCase )
												count_of_line += 1

						__magic_name__      =  0
						# put the y values into a vector
						__magic_name__      =  []
						while count_of_line < x:
												vector.append(coordinates[count_of_line][1] )
												count_of_line += 1

						__magic_name__      =  0

						while count < x:
												__magic_name__      =  0
												while zahlen < x:
																		if count == zahlen:
																								zahlen += 1
																		if zahlen == x:
																								break
																		__magic_name__      =  matrix[zahlen][count] / matrix[count][count]
																		for counting_columns, item in enumerate(matrix[count] ):
																								# manipulating all the values in the matrix
																								matrix[zahlen][counting_columns] -= item * bruch
																		# manipulating the values in the vector
																		vector[zahlen] -= vector[count] * bruch
																		zahlen += 1
												count += 1

						__magic_name__      =  0
						# make solutions
						__magic_name__      =  []
						while count < x:
												solution.append(str(vector[count] / matrix[count][count] ) )
												count += 1

						__magic_name__      =  0
						__magic_name__      =  "f(x)="

						while count < x:
												__magic_name__      =  solution[count].split("E" )
												if len(__lowerCamelCase ) > 1:
																		__magic_name__      =  f'''{remove_e[0]}*10^{remove_e[1]}'''
												solved += f'''x^{x - (count + 1)}*{solution[count]}'''
												if count + 1 != x:
																		solved += "+"
												count += 1

						return solved


if __name__ == "__main__":
			print(points_to_polynomial([]))
			print(points_to_polynomial([[]]))
			print(points_to_polynomial([[1, 0], [2, 0], [3, 0]]))
			print(points_to_polynomial([[1, 1], [2, 1], [3, 1]]))
			print(points_to_polynomial([[1, 3], [2, 3], [3, 3]]))
			print(points_to_polynomial([[1, 1], [2, 2], [3, 3]]))
			print(points_to_polynomial([[1, 1], [2, 4], [3, 9]]))
			print(points_to_polynomial([[1, 3], [2, 6], [3, 11]]))
			print(points_to_polynomial([[1, -3], [2, -6], [3, -11]]))
			print(points_to_polynomial([[1, 5], [2, 2], [3, 9]]))











"""simple docstring"""

from __future__ import annotations

lowercase           =							{1: 1}






def _lowerCAmelCase						(	__lowerCamelCase:int ):

						'''simple docstring'''






						if n in COLLATZ_SEQUENCE_LENGTHS:
												return COLLATZ_SEQUENCE_LENGTHS[n]
						__magic_name__      =  n // 2 if n % 2 == 0 else 3 * n + 1
						__magic_name__      =  collatz_sequence_length(__lowerCamelCase ) + 1
						__magic_name__      =  sequence_length
						return sequence_length






def _lowerCAmelCase						(	__lowerCamelCase:int = 1_0_0_0_0_0_0 ):

						'''simple docstring'''






						__magic_name__      =  max((collatz_sequence_length(__lowerCamelCase ), i) for i in range(1			,    __lowerCamelCase ) )
						return result[1]


if __name__ == "__main__":
			print(solution(int(input().strip())))



