prefer `getValidationStates()`