functionality splitted into more projects - adjusted