





import os
import sys
from contextlib import contextmanager


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




   class 			__UpperCamelCase    (							ctypes.Structure    ):
        # _fields is a specific attr expected by ctypes
        __A	:  int							  =   [("""size""", ctypes.c_int), ("""visible""", ctypes.c_byte)]
def      A__       (    )  ->  Union[str, Any]:






   """simple docstring"""







   if os.name == "nt":
      _UpperCAmelCase           =   CursorInfo()
      _UpperCAmelCase           =   ctypes.windll.kernelaa.GetStdHandle(-11						)
      ctypes.windll.kernelaa.GetConsoleCursorInfo(SCREAMING_SNAKE_CASE_				,	ctypes.byref(SCREAMING_SNAKE_CASE_						)						)
      _UpperCAmelCase           =   False
      ctypes.windll.kernelaa.SetConsoleCursorInfo(SCREAMING_SNAKE_CASE_				,	ctypes.byref(SCREAMING_SNAKE_CASE_						)						)
   elif os.name == "posix":
      sys.stdout.write('''\033[?25l'''						)
      sys.stdout.flush()
def      A__       (    )  ->  List[Any]:






   """simple docstring"""







   if os.name == "nt":
      _UpperCAmelCase           =   CursorInfo()
      _UpperCAmelCase           =   ctypes.windll.kernelaa.GetStdHandle(-11						)
      ctypes.windll.kernelaa.GetConsoleCursorInfo(SCREAMING_SNAKE_CASE_				,	ctypes.byref(SCREAMING_SNAKE_CASE_						)						)
      _UpperCAmelCase           =   True
      ctypes.windll.kernelaa.SetConsoleCursorInfo(SCREAMING_SNAKE_CASE_				,	ctypes.byref(SCREAMING_SNAKE_CASE_						)						)
   elif os.name == "posix":
      sys.stdout.write('''\033[?25h'''						)
      sys.stdout.flush()
@contextmanager
def      A__       (    )  ->  str:






   """simple docstring"""







   try:
      hide_cursor()
      yield
   finally:
      show_cursor()






def      A__       (    SCREAMING_SNAKE_CASE_   :      int						)  ->  bool:






   """simple docstring"""







   if not isinstance(SCREAMING_SNAKE_CASE_				,	SCREAMING_SNAKE_CASE_						):
      _UpperCAmelCase           =   F'''Input value of [number={number}] must be an integer'''
      raise TypeError(SCREAMING_SNAKE_CASE_						)
   if number < 0:
      return False
   _UpperCAmelCase           =   number * number
   while number > 0:
      if number % 10 != number_square % 10:
         return False
      number //= 10
      number_square //= 10
   return True


if __name__ == "__main__":
   import doctest

   doctest.testmod()