Contributed by Sasha Mikhedov
Contributed by Stephen Coles
Contributed by mikel antonio
Contributed by Florian Hardwig
Contributed by Adelina Shaydullina
Contributed by Matthijs Sluiter