anchor.diff:        assert(child != null);
         // We always put the next child at the smallest index with the minimum
         // value.
  -
         final crossAxisIndex = scrollOffsets.findSmallestIndexWithMinimumValue();
  -      if (indexOf(child!) == 1) {
  -        print('RRL_po: [1]: $crossAxisIndex | $scrollOffsets');
  -      }
  -
         final childParentData = getParentData(child!);
  -
         childParentData.layoutOffset = scrollOffsets[crossAxisIndex];
         childParentData.crossAxisIndex = crossAxisIndex;
         childParentData.crossAxisOffset = crossAxisIndex * stride;
         scrollOffsets[crossAxisIndex] =
             childScrollOffset(child!)! + paintExtentOf(child!) + mainAxisSpacing;
  -      // logParentData('RRL_po', child);
  -      // print('RRL $scrollOffsets');
  +
         assert(childParentData.index == index);
         return true;
       }
  -
  -    // print('RRL scrollOffset: $scrollOffset');
   
       // Find the first child that ends after the scroll offset.
       while (scrollOffsets
  
positive.code:       if (!inLayoutRange) {
          if (child == null || indexOf(child!) != index) {
            // We are missing a child. Insert it (and lay it out) if possible.
            print('insertAndLayoutChild 473');
            child = insertAndLayoutChild(
              childConstraints,
              after: trailingChildWithLayout,
  
negative.code:     }
  
      // Now find the first child that ends after our end.
      while (scrollOffsets.any(
        (offset) => offset - mainAxisSpacing < targetEndScrollOffset,
      )) {
  