anchor.diff:          const sky.Color(0x00000000),
           uncheckedColor
         ]));
  -      canvas.drawRRect(rrect, paint);
  +      canvas.drawRect(innerRect, paint);
       }
   
       if (position > _kMidpoint) {
         double t = (position - _kMidpoint) / (1.0 - _kMidpoint);
   
  -      // Solid filled rrect
  -      paint.setStyle(sky.PaintingStyle.strokeAndFill);
  +      // First draw a rounded rect outline then fill inner rectangle with accent color.
         paint.color = new Color.fromARGB((t * 255).floor(), _accentColor.red,
             _accentColor.green, _accentColor.blue);
  +      paint.setStyle(sky.PaintingStyle.stroke);
         canvas.drawRRect(rrect, paint);
  +      paint.setStyle(sky.PaintingStyle.fill);
  +      canvas.drawRect(innerRect, paint);
   
         // White inner check
         paint.color = const sky.Color(0xFFFFFFFF);
         paint.setStyle(sky.PaintingStyle.stroke);
         sky.Path path = new sky.Path();
  -      sky.Point start = new sky.Point(_kEdgeSize * 0.2, _kEdgeSize * 0.5);
  +      sky.Point start = new sky.Point(_kEdgeSize * 0.15, _kEdgeSize * 0.45);
         sky.Point mid = new sky.Point(_kEdgeSize * 0.4, _kEdgeSize * 0.7);
  -      sky.Point end = new sky.Point(_kEdgeSize * 0.8, _kEdgeSize * 0.3);
  +      sky.Point end = new sky.Point(_kEdgeSize * 0.85, _kEdgeSize * 0.25);
         Point lerp(Point p1, Point p2, double t) =>
             new Point(p1.x * (1.0 - t) + p2.x * t, p1.y * (1.0 - t) + p2.y * t);
         sky.Point drawStart = lerp(start, mid, 1.0 - t);
  
positive.code:     final PaintingCanvas canvas = context.canvas;
      // Choose a color between grey and the theme color
      sky.Paint paint = new sky.Paint()
        ..strokeWidth = 2.0
        ..color = uncheckedColor;
  
      // The rrect contracts slightly during the animation
      double inset = 2.0 - (position - _kMidpoint).abs() * 2.0;
      sky.Rect rect = new sky.Rect.fromLTWH(offset.dx + inset, offset.dy + inset,
          _kEdgeSize - inset, _kEdgeSize - inset);
      sky.RRect rrect = new sky.RRect()
        ..setRectXY(rect, _kEdgeRadius, _kEdgeRadius);
  
  
negative.code: const double _kMidpoint = 0.5;
  const sky.Color _kLightUncheckedColor = const sky.Color(0x8A000000);
  const sky.Color _kDarkUncheckedColor = const sky.Color(0xB2FFFFFF);
  const double _kEdgeSize = 18.0;
  const double _kEdgeRadius = 1.0;
  const double _kStrokeWidth = 2.0;
  
  /// A material design checkbox
  ///
  