refactoring, modularization