push client/server seperation