Made pull function use async waterfall