added format validation