System.register(["__unresolved_0", "__unresolved_1"], function (_export, _context) {
  "use strict";

  var _req, _loader, _cjsExports, __cjsMetaURL;

  _export("default", void 0);

  return {
    setters: [function (_unresolved_) {
      _req = _unresolved_.__cjsMetaURL;
    }, function (_unresolved_2) {
      _loader = _unresolved_2.default;
    }],
    execute: function () {
      _loader.define(_context.meta.url, function (exports, _require, module, __filename, __dirname) {
        var require = _loader.createRequireWithReqMap({
          "../internals/well-known-symbol": _req
        }, _require);

        (function () {
          var wellKnownSymbol = require('../internals/well-known-symbol');

          var ITERATOR = wellKnownSymbol('iterator');
          var SAFE_CLOSING = false;

          try {
            var called = 0;
            var iteratorWithReturn = {
              next: function next() {
                return {
                  done: !!called++
                };
              },
              'return': function _return() {
                SAFE_CLOSING = true;
              }
            };

            iteratorWithReturn[ITERATOR] = function () {
              return this;
            }; // eslint-disable-next-line es/no-array-from, no-throw-literal -- required for testing


            Array.from(iteratorWithReturn, function () {
              throw 2;
            });
          } catch (error) {
            /* empty */
          }

          module.exports = function (exec, SKIP_CLOSING) {
            if (!SKIP_CLOSING && !SAFE_CLOSING) return false;
            var ITERATION_SUPPORT = false;

            try {
              var object = {};

              object[ITERATOR] = function () {
                return {
                  next: function next() {
                    return {
                      done: ITERATION_SUPPORT = true
                    };
                  }
                };
              };

              exec(object);
            } catch (error) {
              /* empty */
            }

            return ITERATION_SUPPORT;
          };
        })();

        _export("default", _cjsExports = module.exports);
      });

      _export("__cjsMetaURL", __cjsMetaURL = _context.meta.url);
    }
  };
});
//# sourceMappingURL=check-correctness-of-iteration.js.map