


'''simple docstring'''



class 		_snake_case					:




					def __init__(      self							,							_lowerCamelCase):
								UpperCAmelCase__  :					int        =     size
								UpperCAmelCase__  :					List[str]        =     [0] * size
								UpperCAmelCase__  :					Union[str, Any]        =     [0] * size




					@staticmethod
					def 				snake_case__						(      _lowerCamelCase):
								return index | (index + 1)




					@staticmethod
					def 				snake_case__						(      _lowerCamelCase):
								return (index & (index + 1)) - 1




					def 				snake_case__						(      self							,							_lowerCamelCase							,							_lowerCamelCase):
								UpperCAmelCase__  :					Optional[Any]        =     value
								while index < self.size:
											UpperCAmelCase__  :					Any        =     self.get_prev(_lowerCamelCase) + 1
											if current_left_border == index:
														UpperCAmelCase__  :					Optional[int]        =     value
											else:
														UpperCAmelCase__  :					Dict        =     max(_lowerCamelCase							,							_lowerCamelCase							,							_lowerCamelCase)
											UpperCAmelCase__  :					int        =     self.get_next(_lowerCamelCase)




					def 				snake_case__						(      self							,							_lowerCamelCase							,							_lowerCamelCase):
								right -= 1  # Because of right is exclusive
								UpperCAmelCase__  :					str        =     0
								while left <= right:
											UpperCAmelCase__  :					Any        =     self.get_prev(_lowerCamelCase)
											if left <= current_left:
														UpperCAmelCase__  :					Tuple        =     max(_lowerCamelCase							,							self.tree[right])
														UpperCAmelCase__  :					int        =     current_left
											else:
														UpperCAmelCase__  :					Tuple        =     max(_lowerCamelCase							,							self.arr[right])
														right -= 1
								return result


if __name__ == "__main__":
		import doctest

		doctest.testmod()



'''simple docstring'''



def     _UpperCamelCase      (		UpperCamelCase__ ,      UpperCamelCase__ ,      UpperCamelCase__ ,      UpperCamelCase__					):
			if height >= 1:
						move_tower(height - 1 ,      UpperCamelCase__ ,      UpperCamelCase__ ,      UpperCamelCase__					)
						move_disk(UpperCamelCase__ ,      UpperCamelCase__					)
						move_tower(height - 1 ,      UpperCamelCase__ ,      UpperCamelCase__ ,      UpperCamelCase__					)







def     _UpperCamelCase      (		UpperCamelCase__ ,      UpperCamelCase__					):
			print("""moving disk from""" ,      UpperCamelCase__ ,      """to""" ,      UpperCamelCase__					)







def     _UpperCamelCase      (		):
			UpperCAmelCase__  :					List[str]        =     int(input("""Height of hanoi: """					).strip()					)
			move_tower(UpperCamelCase__ ,      """A""" ,      """B""" ,      """C"""					)


if __name__ == "__main__":
		main()