refactoring arg_parse_init