Deferred object with when implemintation