changes to client and server