Contributed by Benoît Bodhuin
Contributed by Plain Form
Contributed by David Jonathan Ross
Contributed by Antoine Elsensohn