anchor.diff:      } else if (library.isLibrary) {
         final librariesToAnalyze = <ClassReference>[];
         for (final ClassReference classRef
  -          in library.children as Iterable<ClassReference>) {
  +          in library.children.cast<ClassReference>()) {
           final HeapGraphClassLive liveClass = classRef.actualClass!;
           if (_classMatcher(liveClass)) {
             librariesToAnalyze.add(classRef);
  
positive.code:           var childExternalSizes = 0;
            final bucketSizes = SplayTreeMap<String, Bucket>();
            for (final ExternalObjectReference child
                in ref.children as Iterable<ExternalObjectReference>) {
              if (child.externalSize < 10000) {
                bucketSizes.putIfAbsent(bucket10K, () => Bucket(0, 0));
                bucketSizes[bucket10K]!.totalCount += 1;
  
negative.code: 
        final ExternalReferences externals = library as ExternalReferences;
        for (final ExternalReference external
            in externals.children.cast<ExternalReference>()) {
          final liveExternal = external.liveExternal;
          final size = liveExternal.externalProperty.externalSize;
          final liveElement = liveExternal.live;
  