<!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>February 3, 2009</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>

		<strong>Eli Grammar for Fortran 95, version of August 7, 2004</strong> <br/><br/>
		Photran's parser is based on an Eli grammar for Fortran 95, which is provided under an MIT
		license.  This grammar was previously available from
		<a href="http://members.aol.com/wclodius/eli_f95_parser.html">http://members.aol.com/wclodius/eli_f95_parser.html</a>
		and currently available from the Internet Archive at
		<a href="http://web.archive.org/web/20040807193721/members.aol.com/wclodius/eli_f95_parser.html">http://web.archive.org/web/20040807193721/members.aol.com/wclodius/eli_f95_parser.html</a>
		<br/><br/>
		<!--strong>Name of second package including version number</strong><br/><br/>
		Please include in this section information about the package including 
		where it was obtained from, outbound licensing 
		terms and notices that may apply, and anything else necessary to meet the obligations of 
		redistribution (and possibly modification, etc.) under the inbound license.  If the source 
		code for the package is not available at eclipse.org, please include instructions on how to
		get it regardless of whether you are obligated to do so by the license. 
		</em></p-->


</body>
</html>