anchor.diff:  import 'scrollable.dart';
   import 'virtual_viewport.dart';
   
  -/// Controls what alignment items use when settling.
  -enum ItemsSnapAlignment {
  -  item,
  -  adjacentItem
  +/// Controls how a pageable list should behave during a fling.
  +enum PageableListFlingBehavior {
  +  canFlingAcrossMultiplePages,
  +  stopAtNextPage
   }
   
   /// Scrollable widget that scrolls one "page" at a time.
  
positive.code: 
    Future<Null> fling(double scrollVelocity) {
      switch(config.itemsSnapAlignment) {
        case ItemsSnapAlignment.adjacentItem:
          return _flingToAdjacentItem(scrollVelocity);
        default:
          return super.fling(scrollVelocity).then(_notifyPageChanged);
      }
    }
  
  
negative.code: 
    ScrollBehavior<double, double> createScrollBehavior() => scrollBehavior;
  
    bool get shouldSnapScrollOffset => config.itemsSnapAlignment == PageableListFlingBehavior.canFlingAcrossMultiplePages;
  
    double snapScrollOffset(double newScrollOffset) {
      final double previousItemOffset = newScrollOffset.floorToDouble();
  