anchor.diff:    int counter = ++globalCounter;
     return (Uri uri) {
       if (counter != globalCounter) throw 'Using old provider';
  -    print('fake inputProvider#$counter($uri): $poiCount $count');
  +    printVerbose('fake inputProvider#$counter($uri): $poiCount $count');
       if (uri == script) {
         if (poiCount == count) {
           cachedFileName = uri.toFilePath();
           if (count != 0) {
             cachedFileName = '$cachedFileName.$count.dart';
           }
  -        print('Not using cached version of $cachedFileName');
  +        printVerbose('Not using cached version of $cachedFileName');
           cache = new File(cachedFileName).readAsBytes().then((data) {
  -          print('Read file $cachedFileName: ${UTF8.decode(data)}');
  +          printVerbose('Read file $cachedFileName: ${UTF8.decode(data)}');
             return data;
           });
           count++;
         } else {
  -        print('Using cached version of $cachedFileName');
  +        printVerbose('Using cached version of $cachedFileName');
         }
         return cache;
       } else {
  -      print('Using realProvider for $uri');
  +      printVerbose('Using original provider for $uri');
         return inputProvider(uri);
       }
     };
  
positive.code:       switch (argument) {
          case '--simulate-mutation':
            isSimulateMutationEnabled = true;
            break;
          default:
            throw 'Unknown option: $argument.';
  
negative.code: 
  int globalCounter = 0;
  
  /// Enabled by the option --verbose (or -v). Prints more information than you
  /// really need.
  bool isVerbose = false;
  
  /// When true (the default value) print serialized scope information at the
  /// provided position.
  const bool PRINT_SCOPE_INFO =
      const bool.fromEnvironment('PRINT_SCOPE_INFO', defaultValue: true);
  
  /// Iterator for reading lines from [io.stdin].
  class StdinIterator implements Iterator<String> {
    String current;
  