calls `createDeferred();` regardless of the if clause