<footer id="footer">

<script type="text/javascript">
function(){
  $(".close").click(function(){$(".bottom_bar").hide();});
};
</script>

<div class="bottom-bar">
	<p><i class="far fa-calendar-check"></i>&nbsp;Capella 5.1 has been released 
    	<a class="btn btn-outline" href="https://github.com/eclipse/capella/wiki/Release-Notes-5.1.0" target="_blank"><i class="fa fa-info-circle"></i>&nbsp;Release notes</a>
    	<a class="btn btn-indigo" href="https://www.eclipse.org/capella/download.html"><i class="fa fa-download"></i>&nbsp;Download</a>
 
 	<button type="button" class="close" aria-label="Close" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode); return false;'>
  		<span class="fa fa-times" aria-hidden="true"></span>
  	</button>
  	</p>
</div>

    <div class="container">
   		<div class="row">
        	<div class="col-sm-4 col-xs-12">
				<ul>
					<li><h4>Legal</h4></li>
					<li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank">Privacy Policy</a></li>
					<li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank">Terms of Use</a></li>
					<li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank">Copyright Agent</a></li>
					<li><a href="https://www.eclipse.org/legal/epl-2.0" target="_blank">Eclipse Public License</a></li>
					<li><a href="https://www.eclipse.org/legal/" target="_blank">Legal Resources</a></li>
				</ul>
			</div>
        	<div class="col-sm-4 col-xs-12">
        		<ul>
					<li><h4>Useful Links</h4></li>
					<li><a href="https://projects.eclipse.org/projects/polarsys.capella" target="_blank">Project Page</a></li>
					<li><a href="https://forum.mbse-capella.org/" target="_blank">Forum</a></li>
					<li><a href="https://github.com/eclipse/capella/wiki/Repositories" target="_blank">Report a Bug</a></li>
					<li><a href="https://github.com/eclipse/capella" target="_blank">Source Code <i class="fa fa-github" aria-hidden="true"></i></a></li>
					<li><a href="https://github.com/eclipse/capella/wiki#factory-capella-development" target="_blank">How to Contribute</a></li>
				</ul>
			</div>
        	<div class="col-sm-4 col-xs-12">
				<ul class="endfooter">
					<li><h4>Other</h4></li>
					<li><a href="https://www.eclipse.org/" target="_blank">Eclipse</a></li>
					<li><a href="https://www.eclipse.org/org/workinggroups/" target="_blank">Working Groups</a></li>
				</ul>
			</div>
			<div class="clear"></div>
        </div>
		<div class="clear"><br></div>
        <div class="col-md-6">
        </div>
        <div id="socialmedia" class="col-md-12">
             <!-- Social Media -->
             <ul class="socialmedia_links">
             	<li class="twitter"><a href="https://twitter.com/capella_arcadia " target="_blank"><i class="fa fa-twitter"></i> <span class="sr-only">Twitter</span></a></li>
				<li class="youtube"><a href="https://www.youtube.com/EclipseCapella " target="_blank"><i class="fa fa-youtube"></i> <span class="sr-only">Youtube</span></a></li>
				<li class="linkedin"><a href="https://www.linkedin.com/in/capella-mbse-tool-244083162/" target="_blank"><i class="fa fa-linkedin"></i> <span class="sr-only">Linkedin</span></a></li>
	            <li class="wikipedia"><a href="https://en.wikipedia.org/wiki/Capella_(engineering)" target="_blank"><i class="fa fa-wikipedia-w"></i> <span class="sr-only">Wikipedia</span></a></li>
             </ul>
         </div>
    </div>
</footer> <!-- /#footer -->

<script type="text/javascript" src="../../js/googleAnalytics.js"></script>