Contributed by Julian Schröpel
Contributed by Radek Kocjan
Contributed by Soimadou Ibrahim-Aliamane
Contributed by Florian Hardwig