refactor for abstraction of bouncing and stepping