anchor.diff:      if (dart == null || html == null || css == null) {
         throw new BadRequestError('Missing core source parameter.');
       }
  +    String sourcesJson = new JsonEncoder().convert(
  +      {"dart" : dart, "html": html, "css": css});
  +    _logger.info("About to summarize: ${_hashSource(sourcesJson)}");
  +
       SummaryText summaryString = await _analyzeMulti({"main.dart" : dart}).then((result) {
         Summarizer summarizer = new Summarizer(
             dart: dart,
  
positive.code:     if (offset == null) offset = 0;
      Stopwatch watch = new Stopwatch()..start();
      srcRequestRecorder.record("FORMAT", source, offset);
      counter.increment("Formats");
  
      // Guard against trying to format code with errors.
  
negative.code:       throw new BadRequestError('Missing parameter: \'sources\'');
      }
      Stopwatch watch = new Stopwatch()..start();
      String sourcesJson = new JsonEncoder().convert(sources);
      srcRequestRecorder.record("ANALYZE-v1", sourcesJson);
      _logger.info("About to ANALYZE-v1: ${_hashSource(sourcesJson)}");
      try {
        return analyzer.analyzeMulti(sources).then((AnalysisResults results) async {
          int lineCount = 0;
  