SVG Android
Copyright 2011 Larva Labs LLC and Google, Inc.

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

---

Apache Batik
Copyright 1999-2007 The Apache Software Foundation

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

This software contains code from the World Wide Web Consortium (W3C) for the
Document Object Model API (DOM API) and SVG Document Type Definition (DTD).

This software contains code from the International Organisation for
Standardization for the definition of character entities used in the software's
documentation.

This product includes images from the Tango Desktop Project
(http://tango.freedesktop.org/).

This product includes images from the Pasodoble Icon Theme
(http://www.jesusda.com/projects/pasodoble).
