<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
<title>About</title>
</head>
<body lang="EN-US">
<h2>About This Content</h2>

<p>November 21, 2018</p>
<h3>License</h3>

<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise
indicated below, the Content is provided to you under the terms and conditions of the
Eclipse Public License Version 1.0 (&quot;EPL&quot;).  A copy of the EPL is available
at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>

<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
apply to your use of any object code in the Content.  Check the Redistributor's license that was
provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
indicated below, the terms and conditions of the EPL still apply to any source code in the Content
and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>

<h3>Third Party Content</h3>
<p>The Content includes items that have been sourced from third parties as set out below. If you
did not receive this Content directly from the Eclipse Foundation, the following is provided
for informational purposes only, and you should look to the Redistributor's license for
terms and conditions of use.</p>

<h4>Apache Commons Compress</h4>

<p>The plug-in includes software developed by <a href="https://www.apache.org/" target="_blank">The Apache Software Foundation</a> as part of the Apache Commons Compress project.</p>

<p>Apache Commons Compress is provided to you under the terms and conditions of the <a href="https://www.apache.org/licenses/LICENSE-2.0.txt" target="_blank">Apache License, Version 2.0</a> (<a href="about_files/APACHE_LICENSE__VERSION_2.0.txt" target="_blank">APACHE_LICENSE__VERSION_2.0.txt</a>) license.</p>

<p>Apache Commons Compress including its source is available from <a href="https://commons.apache.org/proper/commons-compress/" target="_blank">commons.apache.org/proper/commons-compress/</a>. Bugs or feature requests can be made in the project issue tracking system at <a href="https://issues.apache.org/jira/browse/COMPRESS" target="_blank">issues.apache.org/jira/browse/COMPRESS</a>. The following mailing lists can be used to communicate with the project communities: Commons User List &lt;user@commons.apache.org&gt; (<a href="http://mail-archives.apache.org/mod_mbox/commons-user/" target="_blank">archive</a>), Commons Dev List &lt;dev@commons.apache.org&gt; (<a href="http://mail-archives.apache.org/mod_mbox/commons-dev/" target="_blank">archive</a>), Commons Issues List (<a href="http://mail-archives.apache.org/mod_mbox/commons-issues/" target="_blank">archive</a>), Commons Commits List (<a href="http://mail-archives.apache.org/mod_mbox/commons-commits/" target="_blank">archive</a>) or Apache Announce List (<a href="http://mail-archives.apache.org/mod_mbox/www-announce/" target="_blank">archive</a>).</p>


</body>
</html>