Factor out PValidator for now