changed to listen to server push