Apache Falcon

Copyright 2011-2016 The Apache Software Foundation

This product includes software developed at
The Apache Software Foundation (http://www.apache.org/).

This product includes JMS specifications (https://javaee.github.io/jms-spec/)
 which is distributed under the Common Development and Distribution License
 (https://javaee.github.io/jms-spec/LICENSE)

*****************
CC BY-SA 3.0
*****************

The following binary components are provided under CC BY-SA 3.0
  entypo-icon (Entypo pictograms by Daniel Bruce - www.entypo.com)
