made factories singletons;