throw new Error("not implemented");
DefaultDocumentEvent ev = new DefaultDocumentEvent(offset, length, DocumentEvent.EventType.CHANGE);    buffer.change(offset, length, ev);  Element root = getDefaultRootElement();  int paragraphCount =  root.getElementCount(); for (int pindex = 0; pindex < paragraphCount; pindex++) { Element paragraph = root.getElement(pindex);  if ((paragraph.getStartOffset() > offset + length) || (paragraph.getEndOffset() < offset)) continue;   int contentCount = paragraph.getElementCount(); for (int cindex = 0; cindex < contentCount; cindex++) { Element content = paragraph.getElement(cindex);  if ((content.getStartOffset() > offset + length) || (content.getEndOffset() < offset)) continue;  if (content instanceof AbstractElement) { AbstractElement el = (AbstractElement) content; if (replace) el.removeAttributes(el); el.addAttributes(attributes); } else throw new AssertionError("content elements are expected to be" + "instances of " + "javax.swing.text.AbstractDocument.AbstractElement"); } }
  public void setCharacterAttributes(int offset, int length,				     AttributeSet attributes,				     boolean replace)  {    // FIXME: Implement me.    throw new Error("not implemented");  }