

'''simple docstring'''



import os
import sys
from contextlib import contextmanager


# Windows only
if os.name == "nt":
  import ctypes
  import msvcrt  # noqa







  class 		lowerCAmelCase__  ( ctypes.Structure   ):



   """simple docstring"""



   lowerCAmelCase__       = [("size", ctypes.c_int), ("visible", ctypes.c_byte)]







def   a__			(    ):




     """simple docstring"""


     if os.name == "nt":
          __SCREAMING_SNAKE_CASE      = CursorInfo()
          __SCREAMING_SNAKE_CASE      = ctypes.windll.kernelaa.GetStdHandle(-11		)
          ctypes.windll.kernelaa.GetConsoleCursorInfo(UpperCAmelCase_ ,       ctypes.byref(UpperCAmelCase_		)		)
          __SCREAMING_SNAKE_CASE      = False
          ctypes.windll.kernelaa.SetConsoleCursorInfo(UpperCAmelCase_ ,       ctypes.byref(UpperCAmelCase_		)		)
     elif os.name == "posix":
          sys.stdout.write("""\033[?25l"""		)
          sys.stdout.flush()







def   a__			(    ):




     """simple docstring"""


     if os.name == "nt":
          __SCREAMING_SNAKE_CASE      = CursorInfo()
          __SCREAMING_SNAKE_CASE      = ctypes.windll.kernelaa.GetStdHandle(-11		)
          ctypes.windll.kernelaa.GetConsoleCursorInfo(UpperCAmelCase_ ,       ctypes.byref(UpperCAmelCase_		)		)
          __SCREAMING_SNAKE_CASE      = True
          ctypes.windll.kernelaa.SetConsoleCursorInfo(UpperCAmelCase_ ,       ctypes.byref(UpperCAmelCase_		)		)
     elif os.name == "posix":
          sys.stdout.write("""\033[?25h"""		)
          sys.stdout.flush()







@contextmanager
def   a__			(    ):




     """simple docstring"""


     try:
          hide_cursor()
          yield
     finally:
          show_cursor()











'''simple docstring'''
def A__       (	UpperCAmelCase_ = 6_0_0_8_5_1_4_7_5_1_4_3				):

						try:
												_UpperCamelCase   :						str												=  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.'				)
						_UpperCamelCase   :						int												=  1
						_UpperCamelCase   :						Optional[Any]												=  2
						while i * i <= n:
												while n % i == 0:
																		_UpperCamelCase   :						Union[str, Any]												=  i
																		n //= i
												i += 1
						if n > 1:
												_UpperCamelCase   :						Dict												=  n
						return int(UpperCAmelCase_				)


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


