printBuffer();
    protected void blockClose(HTML.Tag t)    {      printBuffer();      DefaultStyledDocument.ElementSpec element;      // If the previous tag is a start tag then we insert a synthetic      // content tag.      DefaultStyledDocument.ElementSpec prev;      prev = (DefaultStyledDocument.ElementSpec)	      parseBuffer.get(parseBuffer.size() - 1);      if (prev.getType() == DefaultStyledDocument.ElementSpec.StartTagType)        {          AbstractDocument.AttributeContext ctx = getAttributeContext();          AttributeSet attributes = ctx.getEmptySet();          attributes = ctx.addAttribute(attributes, StyleConstants.NameAttribute,                                        HTML.Tag.CONTENT);          element = new DefaultStyledDocument.ElementSpec(attributes,			  DefaultStyledDocument.ElementSpec.ContentType,                                    new char[0], 0, 0);          parseBuffer.add(element);        }      element = new DefaultStyledDocument.ElementSpec(null,				DefaultStyledDocument.ElementSpec.EndTagType);      parseBuffer.addElement(element);      printBuffer();      if (parseStack.size() > 0)        parseStack.pop();    }