@Override
    public void paint(@NotNull Graphics2D g, int x, int y, int width, int height, @Nullable Float value) {
      double mixer = value == null ? 0 : value.doubleValue();
      MixedColorProducer fillProducer = getFillProducer();
      Color fill = fillProducer.produce(mixer);
      Color draw = drawProducer.produce(mixer);
      if (ignoreBorder() || fill.getRGB() == draw.getRGB()) draw = null; // without border

      int arc = 0;
      if (SystemInfoRt.isMac) {
        int margin = macMargin(draw != null);
        x += margin;
        y += margin;
        width -= margin + margin;
        height -= margin + margin;
        arc = Math.min(width, height);
      }
      RectanglePainter.paint(g, x, y, width, height, arc, fill, draw);
    }
@Override
    public void paint(@NotNull Graphics2D g, int x, int y, int width, int height, @Nullable Float value)