add moving logic