private static void drawLine(Graphics2D g, double x, double y, double width, double height, EffectPainter2D painter) {
    if (painter == BOLD_DOTTED_UNDERSCORE) {
      double dx = (x % height + height) % height;
      double w = width + dx;
      double dw = (w % height + height) % height;
      Cached.BOLD_DOTTED_UNDERSCORE.paint(g, x - dx, y, dw == 0 ? w : w - dw + height, height, null);
    }
    else if (painter == WAVE_UNDERSCORE) {
      Cached.WAVE_UNDERSCORE.paint(g, x, y, width, height, null);
    }
    else {
      RectanglePainter2D.FILL.paint(g, x, y, width, height);
    }
  }
private static void drawLine(Graphics2D g, double x, double y, double width, double height, EffectPainter2D painter)