use boolean switches for smoother controllable movement