wrap all custom validators in try-catch, unify signiture of validators to return an error on any positive value, or null on any non-postive return value.