complete format validation and add divisibleBy