answer verification: complete refactor