final update... promise