${pom.name}
Copyright (c) 2005 - 2009 The Apache Software Foundation

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

This product also includes software under the SCA Collaboration license 
(see the LICENSE file contained in this distribution), with the following
copyright:

(c) Copyright SCA Collaboration 2006, 2007

