modified class Server