anchor.diff:  
       if (widget.itemCount == 0) {
         setState(() {
  -        frontTarget = 0;
  -        backTarget = 0;
  +        front.target = 0;
  +        back.target = 0;
         });
       } else {
  -      if (frontTarget > widget.itemCount - 1) {
  +      if (front.target > widget.itemCount - 1) {
           setState(() {
  -          frontTarget = widget.itemCount - 1;
  +          front.target = widget.itemCount - 1;
           });
         }
  -      if (backTarget > widget.itemCount - 1) {
  +      if (back.target > widget.itemCount - 1) {
           setState(() {
  -          backTarget = widget.itemCount - 1;
  +          back.target = widget.itemCount - 1;
           });
         }
       }
  
positive.code:       final scrollAmount = _screenScrollCount *
            startingScrollController.position.viewportDimension;
        final endingScrollController =
            _showFrontList ? backScrollController : frontScrollController;
        final startCompleter = Completer<void>();
        final endCompleter = Completer<void>();
        startAnimationCallback = () {
  
negative.code:                         itemBuilder: widget.itemBuilder,
                          separatorBuilder: widget.separatorBuilder,
                          itemCount: widget.itemCount,
                          itemPositionsNotifier: front.itemPositionsNotifier,
                          positionedIndex: front.target,
                          controller: front.scrollController,
                          scrollDirection: widget.scrollDirection,
                          reverse: widget.reverse,
                          cacheExtent: cacheExtent,
                          alignment: front.alignment,
                          physics: widget.physics,
                          addSemanticIndexes: widget.addSemanticIndexes,
                          semanticChildCount: widget.semanticChildCount,
  