
def 					__magic_name__					(  __lowerCAmelCase      :		Union[str, Any]						,    __lowerCAmelCase      :		Optional[int]						,    __lowerCAmelCase      :		List[Any]						,    __lowerCAmelCase      :		List[Any]				)     ->  List[str]:
				if height >= 1:
								move_tower(height - 1						,    __lowercase						,    __lowercase						,    __lowercase				)
								move_disk(__lowercase						,    __lowercase				)
								move_tower(height - 1						,    __lowercase						,    __lowercase						,    __lowercase				)




def 					__magic_name__					(  __lowerCAmelCase      :		int						,    __lowerCAmelCase      :		int				)     ->  Optional[int]:
				print('''moving disk from'''						,    __lowercase						,    '''to'''						,    __lowercase				)




def 					__magic_name__					(  )     ->  Optional[int]:
				__lowerCamelCase          =      int(input('''Height of hanoi: '''				).strip()				)
				move_tower(__lowercase						,    '''A'''						,    '''B'''						,    '''C'''				)


if __name__ == "__main__":
					main()









'''simple docstring'''







import numpy as np
from cva import destroyAllWindows, imread, imshow, waitKey







class 					_a :





     '''simple docstring'''



     def __init__(				self							,__a							,__a							,__a							)      ->				Tuple:
          if dst_width < 0 or dst_height < 0:
               raise ValueError("""Destination width/height should be > 0"""							)

          snake_case			:      str        =			img
          snake_case			:      str        =			img.shape[1]
          snake_case			:      Union[str, Any]        =			img.shape[0]
          snake_case			:      Optional[int]        =			dst_width
          snake_case			:      List[str]        =			dst_height

          snake_case			:      List[str]        =			self.src_w / self.dst_w
          snake_case			:      int        =			self.src_h / self.dst_h

          snake_case			:      List[Any]        =			(
              np.ones((self.dst_h, self.dst_w, 3)							,np.uinta							) * 255
          )







     def 			snake_case_      (				self							)      ->				int:
          for i in range(self.dst_h							):
               for j in range(self.dst_w							):
                    snake_case			:      Optional[Any]        =			self.img[self.get_y(__a							)][self.get_x(__a							)]







     def 			snake_case_      (				self							,__a							)      ->				int:
          return int(self.ratio_x * x							)







     def 			snake_case_      (				self							,__a							)      ->				int:
          return int(self.ratio_y * y							)


if __name__ == "__main__":
      lowercase,	lowercase      :   Optional[int]      =       800, 600
      lowercase      :   Union[str, Any]      =       imread("""image_data/lena.jpg""", 1)
      lowercase      :   int      =       NearestNeighbour(im, dst_w, dst_h)
      n.process()

      imshow(
          F"""Image resized from: {im.shape[1]}x{im.shape[0]} to {dst_w}x{dst_h}""", n.output
      )
      waitKey(0)
      destroyAllWindows()



