returning proper deferred object