Apache FreeMarker
Copyright 2015-2016 The Apache Software Foundation

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

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

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

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