Contributed by Connary Fagen
Contributed by Gareth Hague
Contributed by Jan Charvát
Contributed by Rafael Nobre
Contributed by Stephen Coles