initial work on the client