start implementing moves