<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--
  Licensed to the Apache Software Foundation (ASF) under one
  or more contributor license agreements.  See the NOTICE file
  distributed with this work for additional information
  regarding copyright ownership.  The ASF licenses this file
  to you under the Apache License, Version 2.0 (the
  "License"); you may not use this file except in compliance
  with the License.  You may obtain a copy of the License at
  
    http://www.apache.org/licenses/LICENSE-2.0
  
  Unless required by applicable law or agreed to in writing,
  software distributed under the License is distributed on an
  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  KIND, either express or implied.  See the License for the
  specific language governing permissions and limitations
  under the License.
-->

<html lang="hu">

<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <meta http-equiv="Content-Script-Type" content="text/javascript">
  <title>FreeMarker Documention</title>
  <style type="text/css">
    body {
      background: #FFF;
      padding: 2em;
      color: #000000;
      font-family: Arial,sans-serif;
      font-size: 16px;
    }
    h1 {
      font-size: 166%;
      margin-top: 1.5em;
      margin-bottom: 0.75em;
      color: #0050B2;
      font-family: Arial,sans-serif;
      font-weight: bold;
    }
    .top {
      margin-top: 0;
    }
    a:link,
    a:visited,
    a:hover,
    a:active {
      color:#00C;
      text-decoration: none;
    }
  </style>
</head>

<body>
    <p class="top">Offline FreeMarker Documentation:</p>
    <ul>
      <li><a href="_html/index.html">Manual</a></li>
      <li><a href="_html/api/index.html">Java API</a></li>
    </ul>
    
    <p><a href="http://freemarker.org/">Visit the FreeMarker home page</a> (help, editor plugins, latest downloads, etc.)</p>
    
    <p><i>Disclaimer: Apache FreeMarker is an effort undergoing incubation at The Apache Software Foundation (ASF). Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.</i></p>
</body>
</html>