anchor.diff:          "Refactoring ${_resource.name} for CSP compatibility…",
           maxWork: 1);
   
  -    List<ws.File> files;
  +    Iterable<ws.File> files;
       if (_resource is ws.File) {
         files = [_resource];
       } else if (_resource is ws.Container) {
  
positive.code:       // TODO(ussuri): Fix other known and fixable CSP violations.
  
        // If there are any files to write, the original HTML has been altered:
        // Back up the original HTML and replace it with the postprocessed one.
        if (_newFiles.isNotEmpty) {
          _newFiles.add(
              new _FileWriter(_file.parent, _file.name + '.pre_csp', htmlText));
          // NOTE: doc.outerHtml may insert previously missing parts of a standard
          // HTML document. One important example is Polymer elements, which
          // normally don't have <head> or <body>, but will after postprocessing.
          // That doesn't affect their functionality, though, so it's ok.
          _newFiles.add(
  
negative.code:   _CspFixerSingleFile(this._file);
  
    Future process() {
      if (!willProcess(_file)) return new Future.value();
  
      _logger.info("Processing ${_file.path}...");
  
      return _file.getContents().then((final String htmlText) {
        try {
  