<!DOCTYPE html>
<html>
  <head>
    <title>CVE-XXXX-YYYY</title>
    <style type="text/css"></style>
  </head>

  <body>
    <p>
      <a href="https://cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY">
      CVE-XXXX-YYYY
      </a>
    </p>
    <p>
      <a href="https://www.openoffice.org/security/cves/CVE-XXXX-YYYY.html">
      Apache OpenOffice Advisory
      </a>
    </p>
    <p style="text-align:center; font-size:larger">
      <strong>
        CVE-XXXX-YYYY: VULNERABILITY DESCRIPTION
      </strong>
    </p>
    <p style="text-align:center; font-size:larger">
      <strong>
        Fixed in Apache OpenOffice x.y.z
      </strong>
    </p>
    <p>
      <strong>
        Description
      </strong>
    </p>
    <p>
      This is a test page for confirming that formatting is working as expected.
    </p>
    <p>
      <strong>
        Severity: Medium
      </strong>
    </p>
    <p>
      There are no known exploits of this vulnerability.
      <br />
      A proof-of-concept demonstration exists.
    </p>
    <p>
      Thanks to ... for discovering this issue.
    </p>
    <p>
      <strong>
        Vendor: The Apache Software Foundation
      </strong>
    </p>
    <p>
      <strong>
        Versions Affected
      </strong>
    </p>
    <p>
      All Apache OpenOffice versions x.y.t and older are affected.
      <br />
      OpenOffice.org versions may also be affected.
    </p>
    <p>
      <strong>
        Mitigation
      </strong>
    </p>
    <p>
      Install Apache OpenOffice x.y.z for the latest maintenance and cumulative security fixes. Use the Apache OpenOffice 
      <a href="https://www.openoffice.org/download/">
        download page
      </a>.
    </p>
    <p>
      <strong>
        Acknowledgments
      </strong>
    </p>
    <p>
      The Apache OpenOffice Security Team would like to thank
      an anonymous researcher
      for reporting the issue.
    </p>
    <p>
      <strong>
        Further Information
      </strong>
    </p>
    <p>
      For additional information and assistance, consult the
      <a href="https://forum.openoffice.org/">
        Apache OpenOffice Community Forums
      </a>
      or make requests to the
      <a href="mailto:users@openoffice.apache.org">
        users@openoffice.apache.org
      </a>
      public mailing list.
    </p>
    <p>
      The latest information on Apache OpenOffice security bulletins can be found at the
      <a href="https://www.openoffice.org/security/bulletin.html">
        Bulletin Archive page
      </a>.
    </p>
    <hr />
    <p>
      <a href="https://security.openoffice.org">
        Security Home
      </a>
      -&gt;
      <a href="https://www.openoffice.org/security/bulletin.html">
        Bulletin
      </a>
      -&gt;
      <a href="https://www.openoffice.org/security/cves/CVE-XXXX-YYYY.html">
        CVE-XXXX-YYYY
      </a>
    </p>
  </body>
</html>
