@Override
 public void addEndText(final Appendable out, final Object... data) {
   try {
     out.append("</applet>");
     out.append("\n");
   } catch (IOException e) {
     throw new RuntimeException(e);
   }
 }
  @Override
  public void addStartText(final Appendable out, final Object... data) {
    try {
      out.append(
          "<applet id=\""
              + getUniqueId()
              + "\" name=\"flash\" code=\"JmolApplet\" archive=\"JmolApplet.jar\"\n"
              + "        codebase=\"../..\"\n"
              + "        width=\"500\" height=\"420\" align=\"center\" mayscript=\"true\">");
      out.append("<param name=\"bgcolor\" value=\"black\">");
      out.append("\n");
      out.append("<param name=\"progressbar\" value=\"true\">");
      out.append("\n");
      out.append("<param name=\"script\" value=\"\n");
      String script = m_ScriptWriter.writeScript(getPFD(), m_Locations, m_Index);
      out.append(script);
      out.append("  \">\n");

    } catch (IOException e) {
      throw new RuntimeException(e);
    }
  }