rename like deferred/promise