Created by Daniel Rocha
Contributed by Martin Wenzel
Contributed by Dogma
Contributed by Stephen Coles