improve gpush