Contributed by Brian Dove
Contributed by Ben Nelsen
Contributed by André Mora
Contributed by Stephen Coles