+ var closeIteration = function (method, argument) {
+ try {
+ var returnMethod = iterator['return'];
+ if (returnMethod !== undefined) {
+ return Promise.resolve(returnMethod.call(iterator)).then(function () {
+ method(argument);
+ }, function (error) {
+ reject(error);
+ });
+ }
+ } catch (error2) {
+ return reject(error2);
+ } method(argument);
+ };
+
+ var onError = function (error) {
+ closeIteration(reject, error);
+ };
+