changes based on server