first commit after big refactoring