Client now uses DI