about to refactor verifier to be parameterized on two types