anchor.diff:        // to call this that guarantees the scroll controller offsets will be
         // updated for the new zoom level and layout size
         // https://github.com/flutter/devtools/issues/2012.
  -      horizontalController.jumpTo(
  -          newScrollOffset.clamp(FlameChart.minScrollOffset, maxScrollOffset));
  +      scrollToX(newScrollOffset, jump: true);
       });
     }
   
  
positive.code:     double offset, {
      bool jump = false,
    }) async {
      final target = offset.clamp(FlameChart.minScrollOffset, maxScrollOffset);
      if (jump) {
        horizontalController.jumpTo(target);
      } else {
  
negative.code:   Future<void> scrollVerticallyToData(V data) async {
      await verticalController.animateTo(
        // Subtract [2 * rowHeightWithPadding] to give the target scroll event top padding.
        (topYForData(data) - 2 * rowHeightWithPadding).clamp(
          FlameChart.minScrollOffset,
          verticalController.position.maxScrollExtent,
        ),
        duration: shortDuration,
        curve: defaultCurve,
      );
  