<!-- footer start -->
<div class="footerwrapper">
  <div class="container">
    <div class="row">
      <div class="col-md-12"><div style="margin-left:auto; margin-right:auto; text-align:center;font-size: 12px">
<div>
</div>
<div>
<a href="http://www.apache.org">
<img id="asf-logo" alt="Apache Software Foundation" src="/images/apache-logo-small.gif">
</a>
</div>
<div>
Copyright © 2015 <a href="http://www.apache.org">The Apache Software Foundation</a>, Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.
</div>
<div>
Apache Eagle, Eagle, Apache Hadoop, Hadoop, Apache HBase, HBase, Apache Hive, Hive, Apache Ambari, Ambari, Apache Spark, Spark, Apache Kafka, Kafka, Apache Storm, Storm, Apache Maven, Maven, Apache Tomcat, Tomcat, Apache Derby, Derby, Apache Cassandra, Cassandra, Apache ZooKeeper, ZooKeeper, Apache, the Apache feather logo, and the Apache project logo are trademarks of The Apache Software Foundation.
</div>
      </div></div>
    </div>
  </div>
</div>
<!-- footer end --> 

<!-- JavaScripts -->
<script src="{{ "/js/jquery-1.11.1.min.js" | prepend: site.baseurl }}"></script>
<script src="{{ "/js/jquery.singlePageNav.js" | prepend: site.baseurl }}"></script>
<script src="{{ "/js/jquery.flexslider.js" | prepend: site.baseurl }}"></script>
<script src="{{ "/js/modernizr.min.js" | prepend: site.baseurl }}"></script>
<script src="{{ "/js/svg.js" | prepend: site.baseurl }}"></script>
<script>
    /************** FlexSlider *********************/
    $('.flexslider').flexslider({
        animation: "fade",
        directionNav: false
    });
</script>