update the callback