<?php
/**
 * Copyright (c) 2015, 2018 Eclipse Foundation.
 *
 * This program and the accompanying materials are made
 * available under the terms of the Eclipse Public License 2.0
 * which is available at https://www.eclipse.org/legal/epl-2.0/
 *
 * Contributors:
 * Nathan Gervais (Eclipse Foundation) - Initial implementation
 * Eric Poirier (Eclipse Foundation)
 *
 * SPDX-License-Identifier: EPL-2.0
 */
?>
<div class="col-sm-24">
  <div id="ganymedeHeader">
    <div id="headerGraphic">
      <map name="ganymedeHeaderIMap">
        <area shape="rect" coords="71,61,440, 124" href="/ganymede/">
        <area shape="rect" coords="450,60,745,125"
          href="/downloads/packages/release/ganymede/sr2"
        >
      </map>
      <img src="/ganymede/images/ganymedeHeaderThin.jpg"
        usemap="#ganymedeHeaderIMap"
      >
    </div>
  </div>
  <div id="widecontent">
    <br />
    <table width="70%" align="center">
      <tr>
        <td colspan="5">
          <p>
            Eclipse Ganymede is the annual release of Eclipse projects in 2008;
            this year including 23 projects. Some highlights of the release
            include the new p2 provisioning platform, new Equinox security
            features, new Ecore modeling tools, support for SOA and much more.
            Use the links below to download and discover more about the projects
            in the Ganymede release. <br /> <br />
          </p>
          <p>
            Click <a href="http://wiki.eclipse.org/Simultaneous_Release">here</a>
            to find out about the newest Eclipse Simultaneous Release
          </p>
        </td>
      </tr>
      <tr>
        <td align="center" valign="top"><a
          href="/downloads/packages/release/ganymede/sr2"
        ><img src="http://dev.eclipse.org/huge_icons/actions/document-save.png" /></a><br />
          <a href="/downloads/packages/release/ganymede/sr2">Download Ganymede</a></td>
        <td align="center" valign="top"><a href="learn.php"><img
            src="http://dev.eclipse.org/huge_icons/actions/system-search.png"
          /></a><br /> <a href="learn.php">Learn&nbsp;more about&nbsp;Ganymede</a></td>
        <td align="center" valign="top"><a href="buzz.php"><img
            src="http://dev.eclipse.org/huge_icons/devices/network-wireless.png"
          /></a><br /> <a href="buzz.php">Ganymede Buzz</a></td>
        <td align="center" valign="top"><a href="mapList.php"><img
            src="http://dev.eclipse.org/huge_icons/categories/applications-internet.png"
          /></a><br /> <a href="mapList.php">Ganymede&nbsp;Around the&nbsp;World</a></td>
        <td align="center" valign="top"><a href="/donate/"><img
            src="http://dev.eclipse.org/huge_icons/apps/system-users.png"
          /></a><br /> <a href="/donate/">Friends of Eclipse</a></td>
      </tr>
    </table>
  </div>
</div>