<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 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 name="Apache Chainsaw">
  <bannerLeft>
    <name>Logging Services</name>
    <src>images/ls-logo.jpg</src>
    <href>http://logging.apache.org/</href>
  </bannerLeft>
  <bannerRight>
    <name>Apache log4j</name>
    <src>images/logo.png</src>
    <href>https://logging.apache.org/log4j/2.x/</href>
  </bannerRight>
  <body>
    <breadcrumbs>
      <item name="Apache" href="http://www.apache.org/" />
	  <item name="Logging Services" href="http://logging.apache.org/" />
	  <item name="Chainsaw" href="http://logging.apache.org:80/chainsaw/" />
    </breadcrumbs>

	<menu name="Get Chainsaw">
	   <item name="Download" href="/download.html"/>
	   <item name="Changes" href="/changes-report.html"/>
	   <item name="License" href="https://www.apache.org/licenses/LICENSE-2.0"/>
	   <item name="Important Distribution Notes" href="/distributionnotes.html" />
	</menu>

    <menu name="About Chainsaw">
      <item name="Introduction" href="/index.html"/>
	  <item name="Quick Tour" href="/quicktour.html" />
	  <item name="Zeroconf" href="/zeroconf.html" />
	  <item name="Roadmap" href="/roadmap.html"/>
	  <item name="JavaDoc" href="/apidocs/index.html"/>
   </menu>

  <menu name="Manual">
    <item name="Viewing Log Events" href="/viewing-log-events.html"/>
    <item name="Colorizing Output" href="/colorizing-output.html" />
    <item name="Expression Rules" href="/expression-rules.html" />
    <item name="Configuration Library" href="/configuration-library.html"/>
  </menu>

	<menu name="Community">
		<item name="Mailing Lists" href="/mail-lists.html"/>
		<item name="Issue Tracking" href="/issue-tracking.html"/>
	</menu>
	
	<menu name="Development">
		<item name="Repository" href="/source-repository.html"/>
		<item name="Cross Reference" href="/xref/index.html"/>
		<item name="Dependencies" href="/dependencies.html"/>
		<!--item name="Continuous Integration" href="/integration.html"/-->
		<item name="Duplication" href="/cpd.html"/>
		<item name="PMD" href="/pmd.html"/>
	</menu>
	
	<menu name="Apache">
		<item name="Home" href="http://www.apache.org"/>	
		<item name="Sponsorship" href="http://www.apache.org/foundation/sponsorship.html"/>
		<item name="Thanks" href="http://www.apache.org/foundation/thanks.html"/>
                <item name="Security" href="https://www.apache.org/security/"/>
		<item name="Conferences" href="http://www.apachecon.com"/>
	</menu>
	
  </body>
  <skin>
    <groupId>org.apache.maven.skins</groupId>
    <artifactId>maven-fluido-skin</artifactId>
    <version>1.8</version>
  </skin>
</project>
