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

  var _req, _req2, _req3, _loader, _cjsExports, __cjsMetaURL;

  _export("default", void 0);

  return {
    setters: [function (_unresolved_) {
      _req = _unresolved_.__cjsMetaURL;
    }, function (_unresolved_2) {
      _req2 = _unresolved_2.__cjsMetaURL;
    }, function (_unresolved_3) {
      _req3 = _unresolved_3.__cjsMetaURL;
    }, function (_unresolved_4) {
      _loader = _unresolved_4.default;
    }],
    execute: function () {
      _loader.define(_context.meta.url, function (exports, _require, module, __filename, __dirname) {
        var require = _loader.createRequireWithReqMap({
          "../internals/to-object": _req,
          "../internals/to-absolute-index": _req2,
          "../internals/length-of-array-like": _req3
        }, _require);

        (function () {
          var toObject = require('../internals/to-object');

          var toAbsoluteIndex = require('../internals/to-absolute-index');

          var lengthOfArrayLike = require('../internals/length-of-array-like');

          var min = Math.min; // `Array.prototype.copyWithin` method implementation
          // https://tc39.es/ecma262/#sec-array.prototype.copywithin
          // eslint-disable-next-line es/no-array-prototype-copywithin -- safe

          module.exports = [].copyWithin || function copyWithin(target
          /* = 0 */
          , start
          /* = 0, end = @length */
          ) {
            var O = toObject(this);
            var len = lengthOfArrayLike(O);
            var to = toAbsoluteIndex(target, len);
            var from = toAbsoluteIndex(start, len);
            var end = arguments.length > 2 ? arguments[2] : undefined;
            var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);
            var inc = 1;

            if (from < to && to < from + count) {
              inc = -1;
              from += count - 1;
              to += count - 1;
            }

            while (count-- > 0) {
              if (from in O) O[to] = O[from];else delete O[to];
              to += inc;
              from += inc;
            }

            return O;
          };
        })();

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

      _export("__cjsMetaURL", __cjsMetaURL = _context.meta.url);
    }
  };
});
//# sourceMappingURL=array-copy-within.js.map