anchor.diff:    String toString() {
       List<String> outputUnitStrings = [];
       for (var outputUnit in outputUnits) {
  -      List<String> importStrings = [];
  +      List<String?> importStrings = [];
         for (var import in outputUnit.imports) {
           importStrings.add(import.name);
         }
  
positive.code:       List<CodeFragment> codeFragments = [];
        for (var outputUnit in outputUnits) {
          if (omittedOutputUnits.contains(outputUnit)) continue;
          var codeFragment = outputUnitMap[outputUnit];
          if (uniqueCodeFragments.add(codeFragment)) {
            codeFragments.add(codeFragment);
          }
          var finalizedFragment = codeFragmentMap[codeFragment];
          if (uniqueFinalizedFragments.add(finalizedFragment)) {
            finalizedFragments.add(finalizedFragment);
          }
  
negative.code:   ///   {a}, {b}, {c}+{a, b}, {b, c}+{a, b, c}.
    List<PreFragment> mergeFragments(List<PreFragment> preDeferredFragments) {
      var components = separateComponents(preDeferredFragments);
      final desiredNumberOfFragment = _options.mergeFragmentsThreshold!;
      int idealFragmentSize = (totalSize / desiredNumberOfFragment).ceil();
      List<_Partition> partitions = [];
      void add(PreFragment next) {
  