refactor server and request a bit more