initial server functionality