refactor DI example 10