anchor.diff:    /// you can set [fitInsideHorizontally] true to force it to shift inside the chart horizontally,
     /// also you can set [fitInsideVertically] true to force it to shift inside the chart vertically.
     LineTouchTooltipData({
  -    this.tooltipBgColor = Colors.white,
  -    this.tooltipRoundedRadius = 4,
  -    this.tooltipPadding = const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
  -    this.tooltipBottomMargin = 16,
  -    this.maxContentWidth = 120,
  -    this.getTooltipItems = defaultLineTooltipItem,
  -    this.fitInsideHorizontally = false,
  -    this.fitInsideVertically = false,
  -  }) : super();
  +    Color tooltipBgColor,
  +    double tooltipRoundedRadius,
  +    EdgeInsets tooltipPadding,
  +    double tooltipBottomMargin,
  +    double maxContentWidth,
  +    GetLineTooltipItems getTooltipItems,
  +    bool fitInsideHorizontally,
  +    bool fitInsideVertically,
  +  })
  +    : tooltipBgColor = tooltipBgColor ?? Colors.white,
  +      tooltipRoundedRadius = tooltipRoundedRadius ?? 4,
  +      tooltipPadding = tooltipPadding ?? const EdgeInsets.symmetric(horizontal: 16, vertical: 8),
  +      tooltipBottomMargin = tooltipBottomMargin ?? 16,
  +      maxContentWidth = maxContentWidth ?? 120,
  +      getTooltipItems = getTooltipItems ?? defaultLineTooltipItem,
  +      fitInsideHorizontally = fitInsideHorizontally ?? false,
  +      fitInsideVertically = fitInsideVertically ?? false,
  +      super();
   
     /// Used for equality check, see [EquatableMixin].
     @override
  
positive.code:   ///
    /// If [extraLinesOnTop] sets true, it draws the line above the main bar lines, otherwise
    /// it draws them below the main bar lines.
    ExtraLinesData(
        {this.horizontalLines = const [],
        this.verticalLines = const [],
        this.extraLinesOnTop = true});
  
    /// Lerps a [ExtraLinesData] based on [t] value, check [Tween.lerp].
    static ExtraLinesData lerp(ExtraLinesData a, ExtraLinesData b, double t) {
  
negative.code:   /// and you can implement [getStrokeColor] callback,
    /// it gives you the [FlSpot], and you should decide to return a [Color].
    FlDotData({
      bool show = true,
      double dotSize,
      double checkToShowDot,
      GetDotColorCallback strokeWidth,
      GetDotColorCallback getStrokeColor,
      CheckToShowDot getDotColor,
    })
      : show = show ?? true,
        dotSize = dotSize ?? 4.0,
        checkToShowDot = checkToShowDot ?? showAllDots,
        strokeWidth = strokeWidth ?? 0.0,
        getStrokeColor = getStrokeColor ?? _defaultGetDotStrokeColor,
        getDotColor = getDotColor ?? _defaultGetDotColor;
  
    /// Lerps a [FlDotData] based on [t] value, check [Tween.lerp].
    static FlDotData lerp(FlDotData a, FlDotData b, double t) {
  