#47 refactoring Clinent: finished