refactoring... no Singleton.