refactor injector