finished the server and client