Added DI factory