copied the server impl from my old project