anchor.diff:      this.value,
       this.activeColor,
       this.inactiveColor,
  +    this.activeThumbDecoration,
  +    this.inactiveThumbDecoration,
       this.activeTrackColor,
       this.inactiveTrackColor,
       this.onChanged
  
positive.code:     canvas.drawRRect(trackRRect, paint);
  
      Offset thumbOffset = new Offset(
        offset.dx + kRadialReactionRadius + position.value * _trackInnerLength,
        offset.dy + size.height / 2.0
      );
  
      paintRadialReaction(canvas, thumbOffset);
  
      if (_cachedThumbColor != thumbColor) {
        _thumbPainter = new BoxDecoration(
          backgroundColor: thumbColor,
          shape: BoxShape.circle,
          boxShadow: elevationToShadow[1]
        ).createBoxPainter();
        _cachedThumbColor = thumbColor;
      }
  
      // The thumb contracts slightly during the animation
      double inset = 2.0 - (position.value - 0.5).abs() * 2.0;
      double radius = _kThumbRadius - inset;
      Rect thumbRect = new Rect.fromLTRB(thumbOffset.dx - radius,
                                         thumbOffset.dy - radius,
                                         thumbOffset.dx + radius,
                                         thumbOffset.dy + radius);
      _thumbPainter.paint(canvas, thumbRect);
    }
  }
  
negative.code:       value: value,
        activeColor: activeThumbColor,
        inactiveColor: inactiveThumbColor,
        activeThumbDecoration: activeThumbDecoration,
        inactiveThumbDecoration: inactiveThumbDecoration,
        activeTrackColor: activeTrackColor,
        inactiveTrackColor: inactiveTrackColor,
        onChanged: onChanged
  