anchor.diff:  // Copyright 2018 Google Inc. Use of this source code is governed by an
   // MIT-style license that can be found in the LICENSE file or at
   // https://opensource.org/licenses/MIT.
  +
  +import 'dart:collection';
   
   import 'ast/sass.dart';
   import 'import_cache.dart';
  
positive.code:   final downstream = new Set<_StylesheetNode>();
  
    _StylesheetNode(this.stylesheet, this.importer, this.canonicalUrl,
        Iterable<_StylesheetNode> upstream)
        : upstream = new List.unmodifiable(upstream) {
      for (var node in upstream) {
        node.downstream.add(this);
      }
    }
  
    /// Removes [this] as a downstream node from all the upstream nodes that it
    /// imports.
    void remove() {
      for (var node in upstream) {
        var wasRemoved = node.downstream.remove(this);
        assert(wasRemoved);
      }
  
negative.code:   /// The canonical URL of [stylesheet].
    final Uri canonicalUrl;
  
    /// A map from non-canonicalized import URLs in [stylesheet] to the
    /// stylesheets those imports refer to.
    ///
    /// This may have `null` values, which indicate failed imports.
    final Map<Uri, _StylesheetNode> upstream;
  
    /// The stylesheets that import [stylesheet].
    ///
  