Work on the client implementation