Contributed by Spencer Lachmanec
Contributed by Raffael Stüken
Contributed by Sye Robertson
Contributed by Dan Reynolds