anchor.diff:                          itemBuilder: widget.itemBuilder,
                           separatorBuilder: widget.separatorBuilder,
                           itemCount: widget.itemCount,
  -                        itemPositionsNotifier: frontItemPositionsNotifier,
  -                        positionedIndex: frontTarget,
  -                        controller: frontScrollController,
  +                        itemPositionsNotifier: front.itemPositionsNotifier,
  +                        positionedIndex: front.target,
  +                        controller: front.scrollController,
                           scrollDirection: widget.scrollDirection,
                           reverse: widget.reverse,
                           cacheExtent: cacheExtent,
  -                        alignment: frontAlignment,
  +                        alignment: front.alignment,
                           physics: widget.physics,
                           addSemanticIndexes: widget.addSemanticIndexes,
                           semanticChildCount: widget.semanticChildCount,
  
positive.code:                         itemBuilder: widget.itemBuilder,
                          separatorBuilder: widget.separatorBuilder,
                          itemCount: widget.itemCount,
                          positionedIndex: backTarget,
                          controller: backScrollController,
                          itemPositionsNotifier: backItemPositionsNotifier,
                          scrollDirection: widget.scrollDirection,
                          reverse: widget.reverse,
                          cacheExtent: cacheExtent,
                          alignment: backAlignment,
                          physics: widget.physics,
                          addSemanticIndexes: widget.addSemanticIndexes,
                          semanticChildCount: widget.semanticChildCount,
  
negative.code: }
  
  enum _ListDisplay { back, front, both }
  
  class _ListDisplayDetails {
    final itemPositionsNotifier = ItemPositionsNotifier();
    final scrollController = ScrollController(keepScrollOffset: false);
  
    /// The index of the item to scroll to.
    int target = 0;
  
    /// The desired alignment for [target].
    ///
    /// See [ItemScrollController.jumpTo] for an explanation of alignment.
    double alignment = 0;
  }
  