more validations and messages