custom validations part 1