1. add pull interface