=========================================================================

Apache FreeMarker
Copyright 2015 The Apache Software Foundation

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

=========================================================================

The documentation includes icons from Entypo pictograms, version 2.0,
by Daniel Bruce (http://www.entypo.com/, http://www.danielbruce.se/),
licensed under Creative Commons Attribution-ShareAlike 3.0 (CC BY-SA 3.0)
(http://creativecommons.org/licenses/by-sa/3.0/legalcode) and under SIL
Open Font License 1.1 (http://scripts.sil.org/OFL).

=========================================================================

The documentation includes icons from Font Awesome by Dave Gandy
(http://fontawesome.io), licensed under SIL Open Font License 1.1
(http://scripts.sil.org/OFL).

=========================================================================

The documentation includes icons from Material Design icons by Google
(http://google.github.io/material-design-icons/), licensed under
Creative Common Attribution 4.0 International License (CC-BY 4.0)
(https://creativecommons.org/licenses/by/4.0/).

=========================================================================
