"""simple docstring"""
import numpy as np







def 						__a   (	_SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )	->Optional[Any]:
  a__:     Optional[int]										=	int(np.ceil((x_end - xa) / h   )   )
  a__:     str										=	np.zeros((n + 1,)   )
  a__:     str										=	ya
  a__:     int										=	xa

  for k in range(_SCREAMING_SNAKE_CASE   ):
    a__:     int										=	f(_SCREAMING_SNAKE_CASE		,     y[k]   )
    a__:     Union[str, Any]										=	f(x + 0.5 * h		,     y[k] + 0.5 * h * ka   )
    a__:     int										=	f(x + 0.5 * h		,     y[k] + 0.5 * h * ka   )
    a__:     Optional[Any]										=	f(x + h		,     y[k] + h * ka   )
    a__:     List[Any]										=	y[k] + (1 / 6) * h * (ka + 2 * ka + 2 * ka + ka)
    x += h

  return y


if __name__ == "__main__":
 import doctest

 doctest.testmod()



"""simple docstring"""
def 						__a   (	_SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )	->Union[str, Any]:
  if height >= 1:
    move_tower(height - 1		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )
    move_disk(_SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )
    move_tower(height - 1		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )







def 						__a   (	_SCREAMING_SNAKE_CASE		,     _SCREAMING_SNAKE_CASE   )	->Union[str, Any]:
  print('moving disk from'		,     _SCREAMING_SNAKE_CASE		,     'to'		,     _SCREAMING_SNAKE_CASE   )







def 						__a   (	)	->List[str]:
  a__:     Dict										=	int(input('Height of hanoi: '   ).strip()   )
  move_tower(_SCREAMING_SNAKE_CASE		,     'A'		,     'B'		,     'C'   )


if __name__ == "__main__":
 main()


