<?xml version="1.0" encoding="UTF-8"?>
<!--
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.
-->
<project xmlns="http://maven.apache.org/DECORATION/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/DECORATION/1.0.0                       http://maven.apache.org/xsd/decoration-1.0.0.xsd">
    <custom>
        <fluidoSkin>
            <topBarEnabled>true</topBarEnabled>
            <sideBarEnabled>true</sideBarEnabled>
            <googleSearch>
                <sitesearch>${project.url}</sitesearch>
            </googleSearch>
            <gitHub>
                <projectId>apache/maven-archetype</projectId>
                <ribbonOrientation>right</ribbonOrientation>
                <ribbonColor>gray</ribbonColor>
            </gitHub>
        </fluidoSkin>
    </custom>
    <body>
        <breadcrumbs>
            <item name="Maven" href="https://maven.apache.org/index.html"/>
            <item name="Maven Archetype" href="https://maven.apache.org/maven-archetype/index.html"/>
        </breadcrumbs>
        <menu name="Overview">
            <item name="Introduction" href="/index.html"/>
            <item name="Maven Archetype Plugin" href="./maven-archetype-plugin/index.html"/>
            <!-- According to http://jira.codehaus.org/browse/MNGSITE-152 -->
            <item name="License" href="http://www.apache.org/licenses/"/>
            <item name="Download" href="download.html"/>
        </menu>
        <menu ref="modules" inherit="bottom"/>
        <menu ref="reports" inherit="bottom"/>
    </body>
</project>
