refactoring client code