refactoring client services