implemented more server functions