is that Deferred resolved somewhere else than just above? If not I think we should just return the promise here not the Deferred:

```js
return tplDef.promise;
```