server / server refactor