refactoring, init-time