<?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">
	<version position="none" />
	<publishDate position="right"/>
	<bannerRight>
		<name>Apache Incubator</name>
		<src>http://incubator.apache.org/images/apache-incubator-logo.png</src>
		<href>http://incubator.apache.org</href>
	</bannerRight>
	<bannerLeft>
		<name>Apache Wink</name>
		<src>images/wink2-s.png</src>
		<href>http://incubator.apache.org/wink/</href>
	</bannerLeft>
	<body>
		<head>
			<link rel="shortcut icon" href="./images/wink2.ico" />
			<!--
				this style is needed to enable child modules to use the main
				site.css
			-->
			<style type="text/css" media="all"> @import url(css/site.css);
				</style>
		</head>
		<links>
			<item name="SVN" href="${project.scm.url}" />
			<item name="Wiki"
				href="http://cwiki.apache.org/confluence/display/WINK/Index" />
			<item name="Jira" href="${project.issueManagement.url}" />
		</links>
		<breadcrumbs>
			<item name="Apache" href="http://www.apache.org"/>
			<item name="Incubator" href="http://incubator.apache.org" />
			<item name="Wink" href="http://incubator.apache.org/wink" />
		</breadcrumbs>
		<menu name="Main">
			<item name="Introduction" href="./index.html" />
			<item name="News" href="./news.html" />
			<item name="Downloads" href="./downloads.html" />
			<item name="Documentation" href="./documentation.html" />
			<!-- item name="Roadmap" href="./roadmap.html" / -->
			<item name="Community" href="./community.html" />
			<item name="FAQ" href="./faqs.html" />
		</menu>
		<menu ref="reports" />
	</body>
	<skin>
		<groupId>org.apache.maven.skins</groupId>
		<artifactId>maven-stylus-skin</artifactId>
		<version>1.0.1</version>
	</skin>
</project>
