Based on source code originally developed by
Atanion GmbH (http://www.atanion.com/)
Copyright 2002-2005 Atanion GmbH.

This product includes software developed by
The jQuery Foundation (http://jquery.org/)

This product includes software developed by
Trent Richardson (http://trentrichardson.com/)

This product includes software developed by
Twitter, Inc. (http://getbootstrap.com/)

normalize.css v3.0.0 | MIT License | git.io/normalize

This product includes software and fonts developed by
"Font Awesome by Dave Gandy - http://fontawesome.io"

This product includes software developed by
HubSpot, Inc. (http://github.hubspot.com/tether/)

This product includes software developed by
Tim Wood, Iskren Chernev, Moment.js contributors

This product includes software developed by
Federico Zivolo and contributors (PopperJS)

This product includes software developed by
Vaadin Ltd.
