more refactoring to SpecifyType proposal