Apache Empire-db
Copyright 2008-2010 The Apache Software Foundation

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

For further information see http://incubator.apache.org/empire-db
