adding two server modes