refactoring to implement the server: done