start of the Server implementation