Again why wrap when we provide a callback?