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