anchor.diff:    void paint(Canvas canvas, Size size) {
       Paint paint = new Paint()
         ..color = backgroundColor
  -      ..style = ui.PaintingStyle.fill;
  +      ..style = PaintingStyle.fill;
       canvas.drawRect(Point.origin & size, paint);
   
       paint.color = valueColor;
  
positive.code: 
  // TODO(jestelle) This should probably go somewhere else?  And maybe be more
  // general?  Or maybe the IntTween should actually work this way?
  class StepTween extends Tween<int> {
    StepTween({ int begin, int end }) : super(begin: begin, end: end);
  
    // The inherited lerp() function doesn't work with ints because it multiplies
    // the begin and end types by a double, and int * double returns a double.
  
negative.code:     Paint paint = new Paint()
        ..color = valueColor
        ..strokeWidth = _kCircularProgressIndicatorStrokeWidth
        ..style = PaintingStyle.stroke;
  
      if (value != null) {
        // Determinite
        double angle = value.clamp(0.0, 1.0) * _kSweep;
        Path path = new Path()
          ..arcTo(Point.origin & size, _kStartAngle, angle, false);
        canvas.drawPath(path, paint);
  
      } else {
        // Non-determinite
        paint.strokeCap = StrokeCap.square;
  
        double arcSweep = math.max(headValue * 3 / 2 * math.PI - tailValue * 3 / 2 * math.PI, _kEpsilon);
        Path path = new Path()
  