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

  var _req, _req2, _req3, _req4, _req5, _req6, _req7, _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) {
      _req4 = _unresolved_4.__cjsMetaURL;
    }, function (_unresolved_5) {
      _req5 = _unresolved_5.__cjsMetaURL;
    }, function (_unresolved_6) {
      _req6 = _unresolved_6.__cjsMetaURL;
    }, function (_unresolved_7) {
      _req7 = _unresolved_7.__cjsMetaURL;
    }, function (_unresolved_8) {
      _loader = _unresolved_8.default;
    }],
    execute: function () {
      _loader.define(_context.meta.url, function (exports, _require, module, __filename, __dirname) {
        let require = _loader.createRequireWithReqMap({
          "../internals/an-object": _req,
          "../internals/object-define-properties": _req2,
          "../internals/enum-bug-keys": _req3,
          "../internals/hidden-keys": _req4,
          "../internals/html": _req5,
          "../internals/document-create-element": _req6,
          "../internals/shared-key": _req7
        }, _require);

        (function () {
          /* global ActiveXObject -- old IE, WSH */
          var anObject = require('../internals/an-object');

          var definePropertiesModule = require('../internals/object-define-properties');

          var enumBugKeys = require('../internals/enum-bug-keys');

          var hiddenKeys = require('../internals/hidden-keys');

          var html = require('../internals/html');

          var documentCreateElement = require('../internals/document-create-element');

          var sharedKey = require('../internals/shared-key');

          var GT = '>';
          var LT = '<';
          var PROTOTYPE = 'prototype';
          var SCRIPT = 'script';
          var IE_PROTO = sharedKey('IE_PROTO');

          var EmptyConstructor = function () {
            /* empty */
          };

          var scriptTag = function (content) {
            return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT;
          }; // Create object with fake `null` prototype: use ActiveX Object with cleared prototype


          var NullProtoObjectViaActiveX = function (activeXDocument) {
            activeXDocument.write(scriptTag(''));
            activeXDocument.close();
            var temp = activeXDocument.parentWindow.Object;
            activeXDocument = null; // avoid memory leak

            return temp;
          }; // Create object with fake `null` prototype: use iframe Object with cleared prototype


          var NullProtoObjectViaIFrame = function () {
            // Thrash, waste and sodomy: IE GC bug
            var iframe = documentCreateElement('iframe');
            var JS = 'java' + SCRIPT + ':';
            var iframeDocument;
            iframe.style.display = 'none';
            html.appendChild(iframe); // https://github.com/zloirock/core-js/issues/475

            iframe.src = String(JS);
            iframeDocument = iframe.contentWindow.document;
            iframeDocument.open();
            iframeDocument.write(scriptTag('document.F=Object'));
            iframeDocument.close();
            return iframeDocument.F;
          }; // Check for document.domain and active x support
          // No need to use active x approach when document.domain is not set
          // see https://github.com/es-shims/es5-shim/issues/150
          // variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346
          // avoid IE GC bug


          var activeXDocument;

          var NullProtoObject = function () {
            try {
              activeXDocument = new ActiveXObject('htmlfile');
            } catch (error) {
              /* ignore */
            }

            NullProtoObject = typeof document != 'undefined' ? document.domain && activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) // old IE
            : NullProtoObjectViaIFrame() : NullProtoObjectViaActiveX(activeXDocument); // WSH

            var length = enumBugKeys.length;

            while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];

            return NullProtoObject();
          };

          hiddenKeys[IE_PROTO] = true; // `Object.create` method
          // https://tc39.es/ecma262/#sec-object.create

          module.exports = Object.create || function create(O, Properties) {
            var result;

            if (O !== null) {
              EmptyConstructor[PROTOTYPE] = anObject(O);
              result = new EmptyConstructor();
              EmptyConstructor[PROTOTYPE] = null; // add "__proto__" for Object.getPrototypeOf polyfill

              result[IE_PROTO] = O;
            } else result = NullProtoObject();

            return Properties === undefined ? result : definePropertiesModule.f(result, Properties);
          };
        })();

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

      _export("__cjsMetaURL", __cjsMetaURL = _context.meta.url);
    }
  };
});
//# sourceMappingURL=object-create.js.map