also code for the server