anchor.diff:  import 'package:args/args.dart';
   import 'package:googleapis_generator_dependency/googleapis_generator.dart';
   
  -ArgParser downloadCommandArgParser() => ArgParser()
  +ArgParser _downloadCommandArgParser() => ArgParser()
     ..addOption('output-dir',
         abbr: 'o',
         help: 'Output directory of discovery documents.',
         defaultsTo: 'googleapis-discovery-documents');
   
  -ArgParser runConfigCommandArgParser() => ArgParser()
  +ArgParser _runConfigCommandArgParser() => ArgParser()
     ..addCommand('download')
     ..addCommand('generate')
     ..addOption(
  
positive.code:     case 'run_config':
        if (commandOptions.command == null ||
            !['download', 'generate'].contains(commandOptions.command!.name)) {
          dieWithUsage('The `run_config` command has only the two subcommands: '
              '`download` and `generate`.');
        }
  
  
negative.code:   )
    ..addFlag('delete-existing', defaultsTo: true);
  
  ArgParser _globalArgParser() => ArgParser()
    ..addCommand('download', _downloadCommandArgParser())
    ..addCommand('run_config', _runConfigCommandArgParser())
    ..addFlag('help', abbr: 'h', help: 'Displays usage information.');
  
  ArgResults _parseArguments(ArgParser parser, List<String> arguments) {
    try {
      return parser.parse(arguments);
    } on FormatException catch (e) {
      _dieWithUsage('Error parsing arguments:\n${e.message}\n');
    }
  }
  
  Never _dieWithUsage([String? message]) {
    if (message != null) {
      print(message);
    }
  