factor out ArgParserTypes