add server, and implemented