Created by Lars Ott
Contributed by Stephen Coles
Contributed by Andrew Lohin
Contributed by Florian Hardwig