Added client and server codes