Contributed by tobias schererbauer
Contributed by Gareth Hague
Contributed by Jérémy Landes (Studio Triple)