refactoring: no need for all those classes