Kann man bestimmt auch noch optimieren: http://osm.org/go/0NLU2WnXP-