refactoring: keep simple architecture