add custom dependency injection