<?xml version="1.0" encoding="ISO-8859-1"?>
<!--

   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

-->
<project name="Commons Compress">

  <bannerRight>
    <name>Commons Compress</name>
    <src>/images/compress-logo-white.png</src>
    <href>/index.html</href>
  </bannerRight>

  <body>
    <menu name="Compress">
      <item name="Overview"    href="/index.html"/>
      <item name="Examples"    href="/examples.html"/>
      <item name="Known Limitations" href="/limitations.html"/>
      <item name="Conventions"    href="/conventions.html"/>
      <item name="Issue Tracking" href="/issue-tracking.html"/>
      <item name="Download"    href="/download_compress.cgi"/>
      <item name="Security Reports"    href="/security-reports.html"/>
      <item name="Wiki"        href="http://wiki.apache.org/commons/Compress"/>
      <item name="Javadoc 1.11" href="javadocs/api-1.11/index.html"/>
      <item name="Javadoc 1.10" href="javadocs/api-1.10/index.html"/>
      <item name="Javadoc 1.9" href="javadocs/api-1.9/index.html"/>
      <item name="Javadoc 1.8.1" href="javadocs/api-1.8.1/index.html"/>
      <item name="Javadoc 1.8" href="javadocs/api-1.8/index.html"/>
      <item name="Javadoc 1.7" href="javadocs/api-1.7/index.html"/>
      <item name="Javadoc 1.6" href="javadocs/api-1.6/index.html"/>
      <item name="Javadoc GIT latest" href="apidocs/index.html"/>
    </menu>
  </body>
  
</project>
