add push  func