Contributed by Soimadou Ibrahim-Aliamane
Contributed by Florian Hardwig
Contributed by Jon Ternent
Contributed by Benoît Bodhuin