anchor.diff:        _containerLayer.add(paintLayer);
         compositeChild(child, parentLayer: paintLayer);
       }
  +  }
  +
  +  static Paint _getPaintForColorFilter(Color color, sky.TransferMode transferMode) {
  +    return new Paint()
  +      ..setColorFilter(new sky.ColorFilter.mode(color, transferMode))
  +      ..isAntiAlias = false;
     }
   
     void paintChildWithColorFilter(RenderObject child,
  
positive.code:     assert(debugCanPaintChild(child));
      final Offset childOffset = childPosition.toOffset();
      if (!child.needsCompositing) {
        canvas.saveLayer(bounds, OpacityLayer.paintForAlpha(alpha));
        canvas.translate(childOffset.dx, childOffset.dy);
        insertChild(child, Offset.zero);
        canvas.restore();
  
negative.code:     assert(debugCanPaintChild(child));
      final Offset childOffset = childPosition.toOffset();
      if (!child.needsCompositing) {
        canvas.saveLayer(bounds, _getPaintForColorFilter(color, transferMode));
        canvas.translate(childOffset.dx, childOffset.dy);
        insertChild(child, Offset.zero);
        canvas.restore();
  