anchor.diff:  
   /// Returns a grey line for all values.
   FlLine defaultGridLine(double value) {
  -  return const FlLine(
  +  return FlLine(
       color: Colors.grey,
       strokeWidth: 0.5,
     );
   }
   
   /// Defines style of a line.
  -class FlLine {
  +class FlLine with EquatableMixin {
  +
     /// Defines color of the line.
     final Color color;
   
  
positive.code:       topTitles: SideTitles.lerp(a.topTitles, b.topTitles, t),
      );
    }
  }
  
  /// Holds data for showing each side titles (a title per each axis value).
  class SideTitles {
    final bool showTitles;
    final GetTitleFunction getTitles;
    final double reservedSize;
  
negative.code:   ///
    /// [offset] is the touch position in device pixels,
    /// 0, 0 is top, left, and 1, 1 is bottom right.
    TouchedSpot(FlSpot spot, Offset offset,)
      : spot = spot,
        offset = offset;
  
    /// Used for equality check, see [EquatableMixin].
    @override
    List<Object> get props => [
      spot,
      offset,
    ];
  
  }
  
  /// Holds data for rendering horizontal and vertical range annotations.
  class RangeAnnotations with EquatableMixin {
    final List<HorizontalRangeAnnotation> horizontalRangeAnnotations;
    final List<VerticalRangeAnnotation> verticalRangeAnnotations;
  
    /// Axis based charts can annotate some horizontal and vertical regions,
    /// using [horizontalRangeAnnotations], and [verticalRangeAnnotations] respectively.
    RangeAnnotations({
      List<HorizontalRangeAnnotation> horizontalRangeAnnotations,
      List<VerticalRangeAnnotation> verticalRangeAnnotations,
    })
      : horizontalRangeAnnotations = horizontalRangeAnnotations ?? const [],
        verticalRangeAnnotations = verticalRangeAnnotations ?? const [];
  
    /// Lerps a [RangeAnnotations] based on [t] value, check [Tween.lerp].
    static RangeAnnotations lerp(RangeAnnotations a, RangeAnnotations b, double t) {
      return RangeAnnotations(
        horizontalRangeAnnotations: lerpHorizontalRangeAnnotationList(
          a.horizontalRangeAnnotations, b.horizontalRangeAnnotations, t),
        verticalRangeAnnotations: lerpVerticalRangeAnnotationList(
          a.verticalRangeAnnotations, b.verticalRangeAnnotations, t),
      );
    }
  
    /// Used for equality check, see [EquatableMixin].
    @override
    List<Object> get props => [
      horizontalRangeAnnotations,
      verticalRangeAnnotations,
    ];
  
  }
  
  /// Defines an annotation region in y (vertical) axis.
  class HorizontalRangeAnnotation with EquatableMixin {
  
    /// Determines starting point in vertical (y) axis.
    final double y1;
  
  