added and improved new feature, squashed to 1 commit