anchor.diff:    }
   }
   
  +class Selection {
  +  final Element selectedElement;
  +  final Selector selector;
  +  Selection(this.selectedElement, this.selector);
  +}
   
   class DumpInfoTask extends CompilerTask {
     DumpInfoTask(Compiler compiler)
  
positive.code: 
      Map<String, List<String>> holding = <String, List<String>>{};
      for (Element fn in infoCollector.mapper.functions) {
        Iterable<Element> pulling = getRetaining(fn);
        // Don't bother recording an empty list of dependencies.
        if (pulling.length > 0) {
          String fnId = infoCollector.idOf(fn);
  
negative.code:         // recorded.  Don't register these.
          if (fnId != null) {
            holding[fnId] = pulling
              .map((selection) {
                return <String, String>{
                  "id": infoCollector.idOf(selection.selectedElement),
                  "mask": selection.selector.mask.toString()
                };
              })
              // Filter non-null ids for the same reason as above.
              .where((a) => a['id'] != null)
              .toList();
          }
        }
  