anchor.diff:  
     Map<String,dynamic> klass;
     DocCoverage dc;
  -  String name, qualifiedName, docUrl, json;
  +  String name, docUrl;
     TableSectionElement scoreSection;
   
     ClassDocAnalyzer(this.libraryDocAnalyzer, this.classType, this.klassBrief);
   
     void go(String screen) {
       name = klassBrief['name'];
  -    qualifiedName = klassBrief['qualifiedName'].replaceFirst(':', '-');
  +    String qualifiedName = klassBrief['qualifiedName'].replaceFirst(':', '-');
       docUrl = libraryDocAnalyzer.htmlUrl != null ?
           '${libraryDocAnalyzer.htmlUrl}.$name' : null;
  -    HttpRequest.getString('${libraryDocAnalyzer.base}/$qualifiedName.json').then((String _json) {
  -      json = _json;
  +    HttpRequest.getString('${libraryDocAnalyzer.base}/$qualifiedName.json').then((String json) {
         klass = new JsonDecoder().convert(json);
         dc = new DocCoverage(klass);
         if (screen == 'score')
  
positive.code:     }
      else {
        text = new AnchorElement()
            ..attributes['href'] = docUrl
            ..innerHtml = '$nameHtml '
            ..append(new SpanElement()..innerHtml = '&#x2197;'..classes.add('sup'));
      }
  
      SpanElement gapsToggle = new SpanElement()
          ..append(new SpanElement()..innerHtml = '&#x25ba;'..classes.add('arrow'))
          ..appendText(' gaps')
          ..classes.add('button')
          ..onClick.listen(toggleClassGaps);
  
      scoreSection.dataset['count'] = '${score.toInt()}';
      scoreSection.dataset['size'] = '${dc.calculateSize()}';
      libraryDocAnalyzer.updateLibraryBadge();
      classRow
          ..addCell().append(gapsToggle)
          ..addCell().append(text)
          ..addCell().append(shieldImg);
  
      classRow.addCell()
              ..innerHtml = '&nbsp;'
              ..classes.add('expando');
  
      TableRowElement classGapsRow = scoreSection.addRow()
          ..classes.add('hidden')
          ..classes.add('gaps-row');
      TableCellElement classGaps = classGapsRow.addCell()
          ..append(classGapsSection(detailed: false))
          ..attributes['colspan'] = '4';
    }
  
    void reportClassGaps() {
  
negative.code: 
      libraryDocAnalyzer.addToSortedRows(scoreSection, score.toInt(), reverse: true);
      ImageElement shieldImg = new ImageElement()
        ..attributes['src'] = dc.shieldUrl()
        ..classes.add('shield');
  
      String nameHtml = '$classType $className';
      if (classType == 'class')
  