@Override
  protected void firePropertyChange(String propertyName, Object oldValue, Object newValue) {
    if ("text".equals(propertyName)
        || (("font".equals(propertyName) || "foreground".equals(propertyName))
            && oldValue != newValue
            && getClientProperty(BasicHTML.propertyKey) != null)) {
      super.firePropertyChange(propertyName, oldValue, newValue);
    }
  }
@Override
  protected void firePropertyChange(String propertyName, Object oldValue, Object newValue)