improve validations