refactor / decreased dependencies