refactoring controller di arg