support multi push and pull