anchor.diff:  
     void _handleDragEnd(Offset velocity) {
       fling(velocity);
  -  }
  -
  -  final List<ScrollListener> _listeners = new List<ScrollListener>();
  -  void addListener(ScrollListener listener) {
  -    _listeners.add(listener);
  -  }
  -
  -  void removeListener(ScrollListener listener) {
  -    _listeners.remove(listener);
  -  }
  -
  -  void _notifyListeners() {
  -    List<ScrollListener> localListeners = new List<ScrollListener>.from(_listeners);
  -    for (ScrollListener listener in localListeners)
  -      listener();
     }
   }
   
  
positive.code: 
    final double initialScrollOffset;
    final ScrollDirection scrollDirection;
  }
  
  abstract class ScrollableState<T extends Scrollable> extends State<T> {
  
negative.code:     return new ScrollableViewport(
        initialScrollOffset: initialScrollOffset,
        scrollDirection: scrollDirection,
        onScroll: onScroll,
        child: new BlockBody(children, direction: _direction)
      );
    }
  