anchor.diff:      metrics.meanCompletionMS.printMean();
       metrics.completionCounter.printCounterValues();
       print('====================');
  +  }
  +
  +  void printWorstResults(CompletionMetrics metrics) {
  +    print('');
  +    print('====================');
  +    print('The worst completion results:');
  +    for (var result in metrics.worstResults) {
  +      var rank = result.place.rank;
  +      var expected = result.expectedCompletion;
  +      var suggestions = result.suggestions;
  +      var preceeding = StringBuffer();
  +      for (var i = 0; i < rank - 1; i++) {
  +        if (i > 0) {
  +          preceeding.write(', ');
  +        }
  +        preceeding.write(suggestions[i].relevance);
  +      }
  +      print('');
  +      print('Rank: $rank');
  +      print('Completion: ${expected.completion}');
  +      print('Completion kind: ${expected.kind}');
  +      print('Element kind: ${expected.elementKind}');
  +      print('Offset: ${expected.offset}');
  +      print('Preceeding: $preceeding');
  +      print('Suggestion: ${suggestions[rank - 1]}');
  +    }
     }
   
     Future<List<CompletionSuggestion>> _computeCompletionSuggestions(
  
positive.code:   MeanReciprocalRankComputer nonTypeMemberMrrComputer =
        MeanReciprocalRankComputer('non-type member completions');
  
    CompletionMetrics(this.name);
  }
  
  /// This is the main metrics computer class for code completions. After the
  
negative.code:     }
      printMetrics(metricsOldMode);
      printMetrics(metricsNewMode);
      if (verbose) {
        printWorstResults(metricsNewMode);
      }
      return resultCode;
    }
  
  