updated promise resolve