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

Apache FreeMarker
Copyright 2015-2016 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/).

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

FreeMarker, both in its source code and binary form (freemarker.jar)
includes files that were developed outside the FreeMarker project, and
are licensed by the Apache Software Foundation under the Apache License,
Version 2.0. This is the same license as the license of FreeMaker. These
files are:
  
    src/main/freemarker/ext/jsp/web-app_2_2.dtd
    src/main/freemarker/ext/jsp/web-app_2_3.dtd
    src/main/freemarker/ext/jsp/web-jsptaglibrary_1_1.dtd
    src/main/freemarker/ext/jsp/web-jsptaglibrary_1_2.dtd

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

The FreeMarker source code contains the following binaries, which were
produced by the FreeMarker project itself, and are hence covered by the
license of the FreeMarker project:

    src/main/misc/overloadedNumberRules/prices.ods
    src/manual/en_US/docgen-originals/figures/overview.odg
    src/test/resources/freemarker/ext/jsp/webapps/config/WEB-INF/lib/WebappLocalFreemarkerServlet.jar
    src/test/resources/freemarker/ext/jsp/webapps/config/WEB-INF/lib/templates.jar
    src/test/resources/freemarker/ext/jsp/webapps/tldDiscovery/WEB-INF/lib/taglib-foo.jar
    src/test/resources/freemarker/ext/jsp/webapps/tldDiscovery/WEB-INF/taglib 2.jar

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