Not a fan of this duplication of validation. Can you find a way to factor this and the constructor into a single codebase?