anchor.diff:    }
   
     void _requiredIntoDependencies(Required fact) {
  +    // Dependencies whose depender is [fact.dep], grouped by the names of
  +    // packages they depend on.
  +    var matchingByAllowed = <String, Set<Dependency>>{};
  +
       var ref = fact.dep.toRef();
       for (var dependency in _dependenciesByDepender[ref].toList()) {
         var intersection = fact.dep.constraint
  
positive.code:           ? incompatibility.dep2
            : incompatibility.dep1;
  
    // Merge two deps, [_allIds] aware to reduce gaps. Algorithm TBD.
    PackageDep _mergeDeps(PackageDep dep1, PackageDep dep2);
  
    // Intersect two deps, return `null` if they aren't compatible (diff name, diff
    // source, diff desc, or non-overlapping).
  
negative.code:     }
  
      _disallowed[ref] = new Disallowed(
          _mergeDeps([fact.dep, existing.dep]), [existing, fact]);
      return false;
    }
  
  