BUG Return the promise instead of the whole deferred object.