adding dependency Injection