anchor.diff:      collectGarbage(visibleIndices);
   
       if (!visible) {
  -      if(scrollOffset > viewportOffset.trailingScrollOffset){
  +      if (scrollOffset > viewportOffset.trailingScrollOffset) {
           // We are outside the bounds, we have to correct the scroll.
           double viewportOffsetScrollOffset = pageSize * viewportOffset.pageIndex;
           double correction = viewportOffsetScrollOffset - scrollOffset;
           geometry = new SliverGeometry(
             scrollOffsetCorrection: correction,
           );
  -      }else {
  +      } else {
           geometry = SliverGeometry.zero;
           childManager.didFinishLayout();
         }
  
positive.code:     @required SliverStaggeredGridDelegate gridDelegate,
    })  : assert(gridDelegate != null),
          _gridDelegate = gridDelegate,
          _pageSizeToViewportOffsets = new HashMap<double, SplayTreeMap<int, _ViewportOffsets>>(),
          super(childManager: childManager);
  
    @override
  
negative.code:         assert(cellExtent != null && cellExtent >= 0),
          assert(mainAxisSpacing != null && mainAxisSpacing >= 0),
          assert(crossAxisSpacing != null && crossAxisSpacing >= 0),
          assert(
              mainAxisOffsetsCacheSize != null && mainAxisOffsetsCacheSize > 0),
          cellStride = cellExtent + crossAxisSpacing;
  
    /// The maximum number of children in the cross axis.
  