anchor.diff:      if (_color == value)
         return;
       _color = value;
  +    _cachedPaint = null;
       markNeedsPaint();
     }
   
  
positive.code:     if (_opacity == value)
        return;
      _opacity = value;
      markNeedsPaint();
    }
  
    void paint(PaintingCanvas canvas, Offset offset) {
      if (child != null) {
        int a = (_opacity * 255).round();
  
        if (a == 0)
          return;
  
negative.code:         return;
        }
  
        canvas.saveLayer(null, _paint);
        canvas.paintChild(child, offset.toPoint());
        canvas.restore();
      }
  