Contributed by JAF
Contributed by Andrea Nienhaus
Contributed by Florian Hardwig
Contributed by verena gerlach