added MoveValidation logic