





def 						__SCREAMING_SNAKE_CASE  (				UpperCamelCase__ = 100 )  ->				int:







			'''simple docstring'''

			UpperCAmelCase   		=				set()

			UpperCAmelCase   		=				0

			UpperCAmelCase   		=				n + 1  # maximum limit

			for a in range(2			,			UpperCamelCase__ ):
						for b in range(2			,			UpperCamelCase__ ):
									UpperCAmelCase   		=				a**b  # calculates the current power
									collect_powers.add(UpperCamelCase__ )  # adds the result to the set
			return len(UpperCamelCase__ )


if __name__ == "__main__":
				print("Number of terms ", solution(int(str(input()).strip())))










import cva
import numpy as np

class 	A_       :
	def __init__(    self							,					_A							,					_A		):






				'''simple docstring'''







				if k in (0.04, 0.06):
							UpperCAmelCase   		=				k
							UpperCAmelCase   		=				window_size
				else:
							raise ValueError('''invalid k value'''		)
	def __str__(    self		):






				'''simple docstring'''







				return str(self.k		)







	def      _lowercase				(    self							,					_A		):






				'''simple docstring'''







				UpperCAmelCase   		=				cva.imread(_A							,					0		)
				UpperCAmelCase		,			UpperCAmelCase   		=				img.shape
				UpperCAmelCase   		=				[]
				UpperCAmelCase   		=				img.copy()
				UpperCAmelCase   		=				cva.cvtColor(_A							,					cva.COLOR_GRAY2RGB		)
				UpperCAmelCase		,			UpperCAmelCase   		=				np.gradient(_A		)
				UpperCAmelCase   		=				dx**2
				UpperCAmelCase   		=				dy**2
				UpperCAmelCase   		=				dx * dy
				UpperCAmelCase   		=				0.04
				UpperCAmelCase   		=				self.window_size // 2
				for y in range(_A							,					h - offset		):
							for x in range(_A							,					w - offset		):
										UpperCAmelCase   		=				ixx[
										    y - offset : y + offset + 1, x - offset : x + offset + 1
										].sum()
										UpperCAmelCase   		=				iyy[
										    y - offset : y + offset + 1, x - offset : x + offset + 1
										].sum()
										UpperCAmelCase   		=				ixy[
										    y - offset : y + offset + 1, x - offset : x + offset + 1
										].sum()

										UpperCAmelCase   		=				(wxx * wyy) - (wxy**2)
										UpperCAmelCase   		=				wxx + wyy
										UpperCAmelCase   		=				det - k * (trace**2)
										# Can change the value
										if r > 0.5:
													corner_list.append([x, y, r]		)
													color_img.itemset((y, x, 0)							,					0		)
													color_img.itemset((y, x, 1)							,					0		)
													color_img.itemset((y, x, 2)							,					2_5_5		)
				return color_img, corner_list


if __name__ == "__main__":
				__A				:    Tuple       =   HarrisCorner(0.04, 3)
				__A    , __A				:    List[Any]       =   edge_detect.detect("path_to_image")
				cva.imwrite("detect.png", color_img)



