Created by Lucas Nilsen
Contributed by Stephen Coles
Contributed by Lars Pryds
Contributed by Benoît Bodhuin