implemented horizontal movement (backend)