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

  var _req, _req2, _req3, _req4, _req5, _req6, _req7, _req8, _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) {
      _req8 = _unresolved_8.__cjsMetaURL;
    }, function (_unresolved_9) {
      _loader = _unresolved_9.default;
    }],
    execute: function () {
      _loader.define(_context.meta.url, function (exports, _require, module, __filename, __dirname) {
        var require = _loader.createRequireWithReqMap({
          "../internals/function-uncurry-this": _req,
          "../internals/function-name": _req2,
          "../internals/redefine": _req3,
          "../internals/an-object": _req4,
          "../internals/object-is-prototype-of": _req5,
          "../internals/to-string": _req6,
          "../internals/fails": _req7,
          "../internals/regexp-flags": _req8
        }, _require);

        (function () {
          var uncurryThis = require('../internals/function-uncurry-this');

          var PROPER_FUNCTION_NAME = require('../internals/function-name').PROPER;

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

          var anObject = require('../internals/an-object');

          var isPrototypeOf = require('../internals/object-is-prototype-of');

          var $toString = require('../internals/to-string');

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

          var regExpFlags = require('../internals/regexp-flags');

          var TO_STRING = 'toString';
          var RegExpPrototype = RegExp.prototype;
          var n$ToString = RegExpPrototype[TO_STRING];
          var getFlags = uncurryThis(regExpFlags);
          var NOT_GENERIC = fails(function () {
            return n$ToString.call({
              source: 'a',
              flags: 'b'
            }) != '/a/b';
          }); // FF44- RegExp#toString has a wrong name

          var INCORRECT_NAME = PROPER_FUNCTION_NAME && n$ToString.name != TO_STRING; // `RegExp.prototype.toString` method
          // https://tc39.es/ecma262/#sec-regexp.prototype.tostring

          if (NOT_GENERIC || INCORRECT_NAME) {
            redefine(RegExp.prototype, TO_STRING, function toString() {
              var R = anObject(this);
              var p = $toString(R.source);
              var rf = R.flags;
              var f = $toString(rf === undefined && isPrototypeOf(RegExpPrototype, R) && !('flags' in RegExpPrototype) ? getFlags(R) : rf);
              return '/' + p + '/' + f;
            }, {
              unsafe: true
            });
          }
        })();

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

      _export("__cjsMetaURL", __cjsMetaURL = _context.meta.url);
    }
  };
});
//# sourceMappingURL=es.regexp.to-string.js.map