"use strict";
var _k = Object.create;
var gs = Object.defineProperty;
var kk = Object.getOwnPropertyDescriptor;
var Bk = Object.getOwnPropertyNames;
var Tk = Object.getPrototypeOf, Pk = Object.prototype.hasOwnProperty;
var s = (e, t) => gs(e, "name", { value: t, configurable: !0 });
var ht = (e, t) => () => (e && (t = e(e = 0)), t);
var I = (e, t) => () => (t || e((t = { exports: {} }).exports, t), t.exports), pi = (e, t) => {
  for (var r in t)
    gs(e, r, { get: t[r], enumerable: !0 });
}, Su = (e, t, r, i) => {
  if (t && typeof t == "object" || typeof t == "function")
    for (let n of Bk(t))
      !Pk.call(e, n) && n !== r && gs(e, n, { get: () => t[n], enumerable: !(i = kk(t, n)) || i.enumerable });
  return e;
}, a0 = (e, t, r) => (Su(e, t, "default"), r && Su(r, t, "default")), Q = (e, t, r) => (r = e != null ? _k(Tk(e)) : {}, Su(
  // If the importer is in node compatibility mode or this is not an ESM
  // file that has been converted to a CommonJS file using a Babel-
  // compatible transform (i.e. "__esModule" has not been set), then set
  // "default" to the CommonJS "module.exports" for node compatibility.
  t || !e || !e.__esModule ? gs(r, "default", { value: e, enumerable: !0 }) : r,
  e
)), _u = (e) => Su(gs({}, "__esModule", { value: !0 }), e);

// ../node_modules/@storybook/global/dist/index.js
var ku = I((gz, l0) => {
  "use strict";
  var gl = Object.defineProperty, Ik = Object.getOwnPropertyDescriptor, Ok = Object.getOwnPropertyNames, Rk = Object.prototype.hasOwnProperty,
  Nk = /* @__PURE__ */ s((e, t) => {
    for (var r in t)
      gl(e, r, { get: t[r], enumerable: !0 });
  }, "__export"), Lk = /* @__PURE__ */ s((e, t, r, i) => {
    if (t && typeof t == "object" || typeof t == "function")
      for (let n of Ok(t))
        !Rk.call(e, n) && n !== r && gl(e, n, { get: /* @__PURE__ */ s(() => t[n], "get"), enumerable: !(i = Ik(t, n)) || i.enumerable });
    return e;
  }, "__copyProps"), Mk = /* @__PURE__ */ s((e) => Lk(gl({}, "__esModule", { value: !0 }), e), "__toCommonJS"), o0 = {};
  Nk(o0, {
    global: /* @__PURE__ */ s(() => jk, "global")
  });
  l0.exports = Mk(o0);
  var jk = (() => {
    let e;
    return typeof window < "u" ? e = window : typeof globalThis < "u" ? e = globalThis : typeof global < "u" ? e = global : typeof self < "u" ?
    e = self : e = {}, e;
  })();
});

// ../node_modules/picocolors/picocolors.js
var Cr = I((yz, xl) => {
  var c0 = process.argv || [], Bu = process.env, qk = !("NO_COLOR" in Bu || c0.includes("--no-color")) && ("FORCE_COLOR" in Bu || c0.includes(
  "--color") || process.platform === "win32" || require != null && require("tty").isatty(1) && Bu.TERM !== "dumb" || "CI" in Bu), $k = /* @__PURE__ */ s(
  (e, t, r = e) => (i) => {
    let n = "" + i, u = n.indexOf(t, e.length);
    return ~u ? e + Vk(n, t, r, u) + t : e + n + t;
  }, "formatter"), Vk = /* @__PURE__ */ s((e, t, r, i) => {
    let n = "", u = 0;
    do
      n += e.substring(u, i) + r, u = i + t.length, i = e.indexOf(t, u);
    while (~i);
    return n + e.substring(u);
  }, "replaceClose"), h0 = /* @__PURE__ */ s((e = qk) => {
    let t = e ? $k : () => String;
    return {
      isColorSupported: e,
      reset: t("\x1B[0m", "\x1B[0m"),
      bold: t("\x1B[1m", "\x1B[22m", "\x1B[22m\x1B[1m"),
      dim: t("\x1B[2m", "\x1B[22m", "\x1B[22m\x1B[2m"),
      italic: t("\x1B[3m", "\x1B[23m"),
      underline: t("\x1B[4m", "\x1B[24m"),
      inverse: t("\x1B[7m", "\x1B[27m"),
      hidden: t("\x1B[8m", "\x1B[28m"),
      strikethrough: t("\x1B[9m", "\x1B[29m"),
      black: t("\x1B[30m", "\x1B[39m"),
      red: t("\x1B[31m", "\x1B[39m"),
      green: t("\x1B[32m", "\x1B[39m"),
      yellow: t("\x1B[33m", "\x1B[39m"),
      blue: t("\x1B[34m", "\x1B[39m"),
      magenta: t("\x1B[35m", "\x1B[39m"),
      cyan: t("\x1B[36m", "\x1B[39m"),
      white: t("\x1B[37m", "\x1B[39m"),
      gray: t("\x1B[90m", "\x1B[39m"),
      bgBlack: t("\x1B[40m", "\x1B[49m"),
      bgRed: t("\x1B[41m", "\x1B[49m"),
      bgGreen: t("\x1B[42m", "\x1B[49m"),
      bgYellow: t("\x1B[43m", "\x1B[49m"),
      bgBlue: t("\x1B[44m", "\x1B[49m"),
      bgMagenta: t("\x1B[45m", "\x1B[49m"),
      bgCyan: t("\x1B[46m", "\x1B[49m"),
      bgWhite: t("\x1B[47m", "\x1B[49m"),
      blackBright: t("\x1B[90m", "\x1B[39m"),
      redBright: t("\x1B[91m", "\x1B[39m"),
      greenBright: t("\x1B[92m", "\x1B[39m"),
      yellowBright: t("\x1B[93m", "\x1B[39m"),
      blueBright: t("\x1B[94m", "\x1B[39m"),
      magentaBright: t("\x1B[95m", "\x1B[39m"),
      cyanBright: t("\x1B[96m", "\x1B[39m"),
      whiteBright: t("\x1B[97m", "\x1B[39m"),
      bgBlackBright: t("\x1B[100m", "\x1B[49m"),
      bgRedBright: t("\x1B[101m", "\x1B[49m"),
      bgGreenBright: t("\x1B[102m", "\x1B[49m"),
      bgYellowBright: t("\x1B[103m", "\x1B[49m"),
      bgBlueBright: t("\x1B[104m", "\x1B[49m"),
      bgMagentaBright: t("\x1B[105m", "\x1B[49m"),
      bgCyanBright: t("\x1B[106m", "\x1B[49m"),
      bgWhiteBright: t("\x1B[107m", "\x1B[49m")
    };
  }, "createColors");
  xl.exports = h0();
  xl.exports.createColors = h0;
});

// ../node_modules/unicorn-magic/default.js
var D0 = ht(() => {
});

// ../node_modules/unicorn-magic/node.js
function fi(e) {
  return e instanceof URL ? (0, g0.fileURLToPath)(e) : e;
}
var g0, Ou = ht(() => {
  g0 = require("node:url");
  D0();
  s(fi, "toPath");
});

// ../node_modules/slash/index.js
function tt(e) {
  return e.startsWith("\\\\?\\") ? e : e.replace(/\\/g, "/");
}
var ys = ht(() => {
  s(tt, "slash");
});

// ../node_modules/ts-dedent/dist/index.js
var wr = I((Es) => {
  "use strict";
  Object.defineProperty(Es, "__esModule", { value: !0 });
  Es.dedent = void 0;
  function E0(e) {
    for (var t = [], r = 1; r < arguments.length; r++)
      t[r - 1] = arguments[r];
    var i = Array.from(typeof e == "string" ? [e] : e);
    i[i.length - 1] = i[i.length - 1].replace(/\r?\n([\t ]*)$/, "");
    var n = i.reduce(function(o, l) {
      var c = l.match(/\n([\t ]+|(?!\s).)/g);
      return c ? o.concat(c.map(function(h) {
        var p, d;
        return (d = (p = h.match(/[\t ]/g)) === null || p === void 0 ? void 0 : p.length) !== null && d !== void 0 ? d : 0;
      })) : o;
    }, []);
    if (n.length) {
      var u = new RegExp(`
[	 ]{` + Math.min.apply(Math, n) + "}", "g");
      i = i.map(function(o) {
        return o.replace(u, `
`);
      });
    }
    i[0] = i[0].replace(/^\r?\n/, "");
    var a = i[0];
    return t.forEach(function(o, l) {
      var c = a.match(/(?:^|\n)( *)$/), h = c ? c[1] : "", p = o;
      typeof o == "string" && o.includes(`
`) && (p = String(o).split(`
`).map(function(d, m) {
        return m === 0 ? d : "" + h + d;
      }).join(`
`)), a += p + i[l + 1];
    }), a;
  }
  s(E0, "dedent");
  Es.dedent = E0;
  Es.default = E0;
});

// ../node_modules/tsconfig-paths/lib/filesystem.js
var Ru = I((qt) => {
  "use strict";
  Object.defineProperty(qt, "__esModule", { value: !0 });
  qt.removeExtension = qt.fileExistsAsync = qt.readJsonFromDiskAsync = qt.readJsonFromDiskSync = qt.fileExistsSync = void 0;
  var bs = require("fs");
  function Kk(e) {
    if (!bs.existsSync(e))
      return !1;
    try {
      var t = bs.statSync(e);
      return t.isFile();
    } catch {
      return !1;
    }
  }
  s(Kk, "fileExistsSync");
  qt.fileExistsSync = Kk;
  function Qk(e) {
    if (bs.existsSync(e))
      return require(e);
  }
  s(Qk, "readJsonFromDiskSync");
  qt.readJsonFromDiskSync = Qk;
  function Zk(e, t) {
    bs.readFile(e, "utf8", function(r, i) {
      if (r || !i)
        return t();
      var n = JSON.parse(i);
      return t(void 0, n);
    });
  }
  s(Zk, "readJsonFromDiskAsync");
  qt.readJsonFromDiskAsync = Zk;
  function e6(e, t) {
    bs.stat(e, function(r, i) {
      if (r)
        return t(void 0, !1);
      t(void 0, i ? i.isFile() : !1);
    });
  }
  s(e6, "fileExistsAsync");
  qt.fileExistsAsync = e6;
  function t6(e) {
    return e.substring(0, e.lastIndexOf(".")) || e;
  }
  s(t6, "removeExtension");
  qt.removeExtension = t6;
});

// ../node_modules/tsconfig-paths/lib/mapping-entry.js
var Cl = I((Nu) => {
  "use strict";
  Object.defineProperty(Nu, "__esModule", { value: !0 });
  Nu.getAbsoluteMappingEntries = void 0;
  var r6 = require("path");
  function i6(e, t, r) {
    for (var i = n6(Object.keys(t)), n = [], u = 0, a = i; u < a.length; u++) {
      var o = a[u];
      n.push({
        pattern: o,
        paths: t[o].map(function(l) {
          return r6.resolve(e, l);
        })
      });
    }
    return !t["*"] && r && n.push({
      pattern: "*",
      paths: ["".concat(e.replace(/\/$/, ""), "/*")]
    }), n;
  }
  s(i6, "getAbsoluteMappingEntries");
  Nu.getAbsoluteMappingEntries = i6;
  function n6(e) {
    return e.concat().sort(function(t, r) {
      return b0(r) - b0(t);
    });
  }
  s(n6, "sortByLongestPrefix");
  function b0(e) {
    var t = e.indexOf("*");
    return e.substr(0, t).length;
  }
  s(b0, "getPrefixLength");
});

// ../node_modules/tsconfig-paths/lib/try-path.js
var wl = I((di) => {
  "use strict";
  Object.defineProperty(di, "__esModule", { value: !0 });
  di.exhaustiveTypeException = di.getStrippedPath = di.getPathsToTry = void 0;
  var v0 = require("path"), s6 = require("path"), u6 = Ru();
  function a6(e, t, r) {
    if (!(!t || !r || r[0] === ".")) {
      for (var i = [], n = 0, u = t; n < u.length; n++) {
        var a = u[n], o = a.pattern === r ? "" : l6(a.pattern, r);
        if (o !== void 0)
          for (var l = /* @__PURE__ */ s(function(d) {
            var m = d.replace("*", o);
            i.push({ type: "file", path: m }), i.push.apply(i, e.map(function(g) {
              return { type: "extension", path: m + g };
            })), i.push({
              type: "package",
              path: v0.join(m, "/package.json")
            });
            var D = v0.join(m, "/index");
            i.push.apply(i, e.map(function(g) {
              return { type: "index", path: D + g };
            }));
          }, "_loop_1"), c = 0, h = a.paths; c < h.length; c++) {
            var p = h[c];
            l(p);
          }
      }
      return i.length === 0 ? void 0 : i;
    }
  }
  s(a6, "getPathsToTry");
  di.getPathsToTry = a6;
  function o6(e) {
    return e.type === "index" ? (0, s6.dirname)(e.path) : e.type === "file" ? e.path : e.type === "extension" ? (0, u6.removeExtension)(e.path) :
    e.type === "package" ? e.path : C0(e.type);
  }
  s(o6, "getStrippedPath");
  di.getStrippedPath = o6;
  function C0(e) {
    throw new Error("Unknown type ".concat(e));
  }
  s(C0, "exhaustiveTypeException");
  di.exhaustiveTypeException = C0;
  function l6(e, t) {
    if (!(t.length < e.length)) {
      if (e === "*")
        return t;
      var r = e.indexOf("*");
      if (r !== -1) {
        var i = e.substring(0, r), n = e.substring(r + 1);
        if (t.substr(0, r) === i && t.substr(t.length - n.length) === n)
          return t.substr(r, t.length - n.length);
      }
    }
  }
  s(l6, "matchStar");
});

// ../node_modules/tsconfig-paths/lib/match-path-sync.js
var Sl = I((gn) => {
  "use strict";
  Object.defineProperty(gn, "__esModule", { value: !0 });
  gn.matchFromAbsolutePaths = gn.createMatchPath = void 0;
  var w0 = require("path"), Al = Ru(), c6 = Cl(), Fl = wl();
  function h6(e, t, r, i) {
    r === void 0 && (r = ["main"]), i === void 0 && (i = !0);
    var n = c6.getAbsoluteMappingEntries(e, t, i);
    return function(u, a, o, l) {
      return A0(n, u, a, o, l, r);
    };
  }
  s(h6, "createMatchPath");
  gn.createMatchPath = h6;
  function A0(e, t, r, i, n, u) {
    r === void 0 && (r = Al.readJsonFromDiskSync), i === void 0 && (i = Al.fileExistsSync), n === void 0 && (n = Object.keys(require.extensions)),
    u === void 0 && (u = ["main"]);
    var a = Fl.getPathsToTry(n, e, t);
    if (a)
      return f6(a, r, i, u);
  }
  s(A0, "matchFromAbsolutePaths");
  gn.matchFromAbsolutePaths = A0;
  function p6(e, t, r, i) {
    for (var n = 0; n < t.length; n++) {
      var u = t[n], a = typeof u == "string" ? e[u] : u.reduce(function(l, c) {
        return l[c];
      }, e);
      if (a && typeof a == "string") {
        var o = w0.join(w0.dirname(r), a);
        if (i(o))
          return o;
      }
    }
  }
  s(p6, "findFirstExistingMainFieldMappedFile");
  function f6(e, t, r, i) {
    t === void 0 && (t = Al.readJsonFromDiskSync), i === void 0 && (i = ["main"]);
    for (var n = 0, u = e; n < u.length; n++) {
      var a = u[n];
      if (a.type === "file" || a.type === "extension" || a.type === "index") {
        if (r(a.path))
          return Fl.getStrippedPath(a);
      } else if (a.type === "package") {
        var o = t(a.path);
        if (o) {
          var l = p6(o, i, a.path, r);
          if (l)
            return l;
        }
      } else
        Fl.exhaustiveTypeException(a.type);
    }
  }
  s(f6, "findFirstExistingPath");
});

// ../node_modules/tsconfig-paths/lib/match-path-async.js
var B0 = I((xn) => {
  "use strict";
  Object.defineProperty(xn, "__esModule", { value: !0 });
  xn.matchFromAbsolutePathsAsync = xn.createMatchPathAsync = void 0;
  var F0 = require("path"), _l = wl(), d6 = Cl(), S0 = Ru();
  function m6(e, t, r, i) {
    r === void 0 && (r = ["main"]), i === void 0 && (i = !0);
    var n = d6.getAbsoluteMappingEntries(e, t, i);
    return function(u, a, o, l, c) {
      return _0(n, u, a, o, l, c, r);
    };
  }
  s(m6, "createMatchPathAsync");
  xn.createMatchPathAsync = m6;
  function _0(e, t, r, i, n, u, a) {
    r === void 0 && (r = S0.readJsonFromDiskAsync), i === void 0 && (i = S0.fileExistsAsync), n === void 0 && (n = Object.keys(require.extensions)),
    a === void 0 && (a = ["main"]);
    var o = _l.getPathsToTry(n, e, t);
    if (!o)
      return u();
    Lu(o, r, i, u, 0, a);
  }
  s(_0, "matchFromAbsolutePathsAsync");
  xn.matchFromAbsolutePathsAsync = _0;
  function k0(e, t, r, i, n, u) {
    if (u === void 0 && (u = 0), u >= t.length)
      return n(void 0, void 0);
    var a = /* @__PURE__ */ s(function() {
      return k0(e, t, r, i, n, u + 1);
    }, "tryNext"), o = t[u], l = typeof o == "string" ? e[o] : o.reduce(function(h, p) {
      return h[p];
    }, e);
    if (typeof l != "string")
      return a();
    var c = F0.join(F0.dirname(r), l);
    i(c, function(h, p) {
      return h ? n(h) : p ? n(void 0, c) : a();
    });
  }
  s(k0, "findFirstExistingMainFieldMappedFile");
  function Lu(e, t, r, i, n, u) {
    n === void 0 && (n = 0), u === void 0 && (u = ["main"]);
    var a = e[n];
    a.type === "file" || a.type === "extension" || a.type === "index" ? r(a.path, function(o, l) {
      return o ? i(o) : l ? i(void 0, _l.getStrippedPath(a)) : n === e.length - 1 ? i() : Lu(e, t, r, i, n + 1, u);
    }) : a.type === "package" ? t(a.path, function(o, l) {
      return o ? i(o) : l ? k0(l, u, a.path, r, function(c, h) {
        return c ? i(c) : h ? i(void 0, h) : Lu(e, t, r, i, n + 1, u);
      }) : Lu(e, t, r, i, n + 1, u);
    }) : _l.exhaustiveTypeException(a.type);
  }
  s(Lu, "findFirstExistingPath");
});

// ../node_modules/json5/lib/unicode.js
var T0 = I((lH, Mu) => {
  Mu.exports.Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/;
  Mu.exports.ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;
  Mu.exports.ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/;
});

// ../node_modules/json5/lib/util.js
var Bl = I((cH, P0) => {
  var kl = T0();
  P0.exports = {
    isSpaceSeparator(e) {
      return typeof e == "string" && kl.Space_Separator.test(e);
    },
    isIdStartChar(e) {
      return typeof e == "string" && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e === "$" || e === "_" || kl.ID_Start.test(e));
    },
    isIdContinueChar(e) {
      return typeof e == "string" && (e >= "a" && e <= "z" || e >= "A" && e <= "Z" || e >= "0" && e <= "9" || e === "$" || e === "_" || e ===
      "\u200C" || e === "\u200D" || kl.ID_Continue.test(e));
    },
    isDigit(e) {
      return typeof e == "string" && /[0-9]/.test(e);
    },
    isHexDigit(e) {
      return typeof e == "string" && /[0-9A-Fa-f]/.test(e);
    }
  };
});

// ../node_modules/json5/lib/parse.js
var L0 = I((hH, N0) => {
  var ut = Bl(), Pl, Dt, zr, qu, mi, ur, at, Rl, Cs;
  N0.exports = /* @__PURE__ */ s(function(t, r) {
    Pl = String(t), Dt = "start", zr = [], qu = 0, mi = 1, ur = 0, at = void 0, Rl = void 0, Cs = void 0;
    do
      at = D6(), y6[Dt]();
    while (at.type !== "eof");
    return typeof r == "function" ? Il({ "": Cs }, "", r) : Cs;
  }, "parse");
  function Il(e, t, r) {
    let i = e[t];
    if (i != null && typeof i == "object")
      if (Array.isArray(i))
        for (let n = 0; n < i.length; n++) {
          let u = String(n), a = Il(i, u, r);
          a === void 0 ? delete i[u] : Object.defineProperty(i, u, {
            value: a,
            writable: !0,
            enumerable: !0,
            configurable: !0
          });
        }
      else
        for (let n in i) {
          let u = Il(i, n, r);
          u === void 0 ? delete i[n] : Object.defineProperty(i, n, {
            value: u,
            writable: !0,
            enumerable: !0,
            configurable: !0
          });
        }
    return r.call(e, t, i);
  }
  s(Il, "internalize");
  var ge, fe, vs, Ur, Ee;
  function D6() {
    for (ge = "default", fe = "", vs = !1, Ur = 1; ; ) {
      Ee = Hr();
      let e = O0[ge]();
      if (e)
        return e;
    }
  }
  s(D6, "lex");
  function Hr() {
    if (Pl[qu])
      return String.fromCodePoint(Pl.codePointAt(qu));
  }
  s(Hr, "peek");
  function G() {
    let e = Hr();
    return e === `
` ? (mi++, ur = 0) : e ? ur += e.length : ur++, e && (qu += e.length), e;
  }
  s(G, "read");
  var O0 = {
    default() {
      switch (Ee) {
        case "	":
        case "\v":
        case "\f":
        case " ":
        case "\xA0":
        case "\uFEFF":
        case `
`:
        case "\r":
        case "\u2028":
        case "\u2029":
          G();
          return;
        case "/":
          G(), ge = "comment";
          return;
        case void 0:
          return G(), Le("eof");
      }
      if (ut.isSpaceSeparator(Ee)) {
        G();
        return;
      }
      return O0[Dt]();
    },
    comment() {
      switch (Ee) {
        case "*":
          G(), ge = "multiLineComment";
          return;
        case "/":
          G(), ge = "singleLineComment";
          return;
      }
      throw Me(G());
    },
    multiLineComment() {
      switch (Ee) {
        case "*":
          G(), ge = "multiLineCommentAsterisk";
          return;
        case void 0:
          throw Me(G());
      }
      G();
    },
    multiLineCommentAsterisk() {
      switch (Ee) {
        case "*":
          G();
          return;
        case "/":
          G(), ge = "default";
          return;
        case void 0:
          throw Me(G());
      }
      G(), ge = "multiLineComment";
    },
    singleLineComment() {
      switch (Ee) {
        case `
`:
        case "\r":
        case "\u2028":
        case "\u2029":
          G(), ge = "default";
          return;
        case void 0:
          return G(), Le("eof");
      }
      G();
    },
    value() {
      switch (Ee) {
        case "{":
        case "[":
          return Le("punctuator", G());
        case "n":
          return G(), zi("ull"), Le("null", null);
        case "t":
          return G(), zi("rue"), Le("boolean", !0);
        case "f":
          return G(), zi("alse"), Le("boolean", !1);
        case "-":
        case "+":
          G() === "-" && (Ur = -1), ge = "sign";
          return;
        case ".":
          fe = G(), ge = "decimalPointLeading";
          return;
        case "0":
          fe = G(), ge = "zero";
          return;
        case "1":
        case "2":
        case "3":
        case "4":
        case "5":
        case "6":
        case "7":
        case "8":
        case "9":
          fe = G(), ge = "decimalInteger";
          return;
        case "I":
          return G(), zi("nfinity"), Le("numeric", 1 / 0);
        case "N":
          return G(), zi("aN"), Le("numeric", NaN);
        case '"':
        case "'":
          vs = G() === '"', fe = "", ge = "string";
          return;
      }
      throw Me(G());
    },
    identifierNameStartEscape() {
      if (Ee !== "u")
        throw Me(G());
      G();
      let e = Ol();
      switch (e) {
        case "$":
        case "_":
          break;
        default:
          if (!ut.isIdStartChar(e))
            throw I0();
          break;
      }
      fe += e, ge = "identifierName";
    },
    identifierName() {
      switch (Ee) {
        case "$":
        case "_":
        case "\u200C":
        case "\u200D":
          fe += G();
          return;
        case "\\":
          G(), ge = "identifierNameEscape";
          return;
      }
      if (ut.isIdContinueChar(Ee)) {
        fe += G();
        return;
      }
      return Le("identifier", fe);
    },
    identifierNameEscape() {
      if (Ee !== "u")
        throw Me(G());
      G();
      let e = Ol();
      switch (e) {
        case "$":
        case "_":
        case "\u200C":
        case "\u200D":
          break;
        default:
          if (!ut.isIdContinueChar(e))
            throw I0();
          break;
      }
      fe += e, ge = "identifierName";
    },
    sign() {
      switch (Ee) {
        case ".":
          fe = G(), ge = "decimalPointLeading";
          return;
        case "0":
          fe = G(), ge = "zero";
          return;
        case "1":
        case "2":
        case "3":
        case "4":
        case "5":
        case "6":
        case "7":
        case "8":
        case "9":
          fe = G(), ge = "decimalInteger";
          return;
        case "I":
          return G(), zi("nfinity"), Le("numeric", Ur * (1 / 0));
        case "N":
          return G(), zi("aN"), Le("numeric", NaN);
      }
      throw Me(G());
    },
    zero() {
      switch (Ee) {
        case ".":
          fe += G(), ge = "decimalPoint";
          return;
        case "e":
        case "E":
          fe += G(), ge = "decimalExponent";
          return;
        case "x":
        case "X":
          fe += G(), ge = "hexadecimal";
          return;
      }
      return Le("numeric", Ur * 0);
    },
    decimalInteger() {
      switch (Ee) {
        case ".":
          fe += G(), ge = "decimalPoint";
          return;
        case "e":
        case "E":
          fe += G(), ge = "decimalExponent";
          return;
      }
      if (ut.isDigit(Ee)) {
        fe += G();
        return;
      }
      return Le("numeric", Ur * Number(fe));
    },
    decimalPointLeading() {
      if (ut.isDigit(Ee)) {
        fe += G(), ge = "decimalFraction";
        return;
      }
      throw Me(G());
    },
    decimalPoint() {
      switch (Ee) {
        case "e":
        case "E":
          fe += G(), ge = "decimalExponent";
          return;
      }
      if (ut.isDigit(Ee)) {
        fe += G(), ge = "decimalFraction";
        return;
      }
      return Le("numeric", Ur * Number(fe));
    },
    decimalFraction() {
      switch (Ee) {
        case "e":
        case "E":
          fe += G(), ge = "decimalExponent";
          return;
      }
      if (ut.isDigit(Ee)) {
        fe += G();
        return;
      }
      return Le("numeric", Ur * Number(fe));
    },
    decimalExponent() {
      switch (Ee) {
        case "+":
        case "-":
          fe += G(), ge = "decimalExponentSign";
          return;
      }
      if (ut.isDigit(Ee)) {
        fe += G(), ge = "decimalExponentInteger";
        return;
      }
      throw Me(G());
    },
    decimalExponentSign() {
      if (ut.isDigit(Ee)) {
        fe += G(), ge = "decimalExponentInteger";
        return;
      }
      throw Me(G());
    },
    decimalExponentInteger() {
      if (ut.isDigit(Ee)) {
        fe += G();
        return;
      }
      return Le("numeric", Ur * Number(fe));
    },
    hexadecimal() {
      if (ut.isHexDigit(Ee)) {
        fe += G(), ge = "hexadecimalInteger";
        return;
      }
      throw Me(G());
    },
    hexadecimalInteger() {
      if (ut.isHexDigit(Ee)) {
        fe += G();
        return;
      }
      return Le("numeric", Ur * Number(fe));
    },
    string() {
      switch (Ee) {
        case "\\":
          G(), fe += g6();
          return;
        case '"':
          if (vs)
            return G(), Le("string", fe);
          fe += G();
          return;
        case "'":
          if (!vs)
            return G(), Le("string", fe);
          fe += G();
          return;
        case `
`:
        case "\r":
          throw Me(G());
        case "\u2028":
        case "\u2029":
          E6(Ee);
          break;
        case void 0:
          throw Me(G());
      }
      fe += G();
    },
    start() {
      switch (Ee) {
        case "{":
        case "[":
          return Le("punctuator", G());
      }
      ge = "value";
    },
    beforePropertyName() {
      switch (Ee) {
        case "$":
        case "_":
          fe = G(), ge = "identifierName";
          return;
        case "\\":
          G(), ge = "identifierNameStartEscape";
          return;
        case "}":
          return Le("punctuator", G());
        case '"':
        case "'":
          vs = G() === '"', ge = "string";
          return;
      }
      if (ut.isIdStartChar(Ee)) {
        fe += G(), ge = "identifierName";
        return;
      }
      throw Me(G());
    },
    afterPropertyName() {
      if (Ee === ":")
        return Le("punctuator", G());
      throw Me(G());
    },
    beforePropertyValue() {
      ge = "value";
    },
    afterPropertyValue() {
      switch (Ee) {
        case ",":
        case "}":
          return Le("punctuator", G());
      }
      throw Me(G());
    },
    beforeArrayValue() {
      if (Ee === "]")
        return Le("punctuator", G());
      ge = "value";
    },
    afterArrayValue() {
      switch (Ee) {
        case ",":
        case "]":
          return Le("punctuator", G());
      }
      throw Me(G());
    },
    end() {
      throw Me(G());
    }
  };
  function Le(e, t) {
    return {
      type: e,
      value: t,
      line: mi,
      column: ur
    };
  }
  s(Le, "newToken");
  function zi(e) {
    for (let t of e) {
      if (Hr() !== t)
        throw Me(G());
      G();
    }
  }
  s(zi, "literal");
  function g6() {
    switch (Hr()) {
      case "b":
        return G(), "\b";
      case "f":
        return G(), "\f";
      case "n":
        return G(), `
`;
      case "r":
        return G(), "\r";
      case "t":
        return G(), "	";
      case "v":
        return G(), "\v";
      case "0":
        if (G(), ut.isDigit(Hr()))
          throw Me(G());
        return "\0";
      case "x":
        return G(), x6();
      case "u":
        return G(), Ol();
      case `
`:
      case "\u2028":
      case "\u2029":
        return G(), "";
      case "\r":
        return G(), Hr() === `
` && G(), "";
      case "1":
      case "2":
      case "3":
      case "4":
      case "5":
      case "6":
      case "7":
      case "8":
      case "9":
        throw Me(G());
      case void 0:
        throw Me(G());
    }
    return G();
  }
  s(g6, "escape");
  function x6() {
    let e = "", t = Hr();
    if (!ut.isHexDigit(t) || (e += G(), t = Hr(), !ut.isHexDigit(t)))
      throw Me(G());
    return e += G(), String.fromCodePoint(parseInt(e, 16));
  }
  s(x6, "hexEscape");
  function Ol() {
    let e = "", t = 4;
    for (; t-- > 0; ) {
      let r = Hr();
      if (!ut.isHexDigit(r))
        throw Me(G());
      e += G();
    }
    return String.fromCodePoint(parseInt(e, 16));
  }
  s(Ol, "unicodeEscape");
  var y6 = {
    start() {
      if (at.type === "eof")
        throw Hi();
      Tl();
    },
    beforePropertyName() {
      switch (at.type) {
        case "identifier":
        case "string":
          Rl = at.value, Dt = "afterPropertyName";
          return;
        case "punctuator":
          ju();
          return;
        case "eof":
          throw Hi();
      }
    },
    afterPropertyName() {
      if (at.type === "eof")
        throw Hi();
      Dt = "beforePropertyValue";
    },
    beforePropertyValue() {
      if (at.type === "eof")
        throw Hi();
      Tl();
    },
    beforeArrayValue() {
      if (at.type === "eof")
        throw Hi();
      if (at.type === "punctuator" && at.value === "]") {
        ju();
        return;
      }
      Tl();
    },
    afterPropertyValue() {
      if (at.type === "eof")
        throw Hi();
      switch (at.value) {
        case ",":
          Dt = "beforePropertyName";
          return;
        case "}":
          ju();
      }
    },
    afterArrayValue() {
      if (at.type === "eof")
        throw Hi();
      switch (at.value) {
        case ",":
          Dt = "beforeArrayValue";
          return;
        case "]":
          ju();
      }
    },
    end() {
    }
  };
  function Tl() {
    let e;
    switch (at.type) {
      case "punctuator":
        switch (at.value) {
          case "{":
            e = {};
            break;
          case "[":
            e = [];
            break;
        }
        break;
      case "null":
      case "boolean":
      case "numeric":
      case "string":
        e = at.value;
        break;
    }
    if (Cs === void 0)
      Cs = e;
    else {
      let t = zr[zr.length - 1];
      Array.isArray(t) ? t.push(e) : Object.defineProperty(t, Rl, {
        value: e,
        writable: !0,
        enumerable: !0,
        configurable: !0
      });
    }
    if (e !== null && typeof e == "object")
      zr.push(e), Array.isArray(e) ? Dt = "beforeArrayValue" : Dt = "beforePropertyName";
    else {
      let t = zr[zr.length - 1];
      t == null ? Dt = "end" : Array.isArray(t) ? Dt = "afterArrayValue" : Dt = "afterPropertyValue";
    }
  }
  s(Tl, "push");
  function ju() {
    zr.pop();
    let e = zr[zr.length - 1];
    e == null ? Dt = "end" : Array.isArray(e) ? Dt = "afterArrayValue" : Dt = "afterPropertyValue";
  }
  s(ju, "pop");
  function Me(e) {
    return $u(e === void 0 ? `JSON5: invalid end of input at ${mi}:${ur}` : `JSON5: invalid character '${R0(e)}' at ${mi}:${ur}`);
  }
  s(Me, "invalidChar");
  function Hi() {
    return $u(`JSON5: invalid end of input at ${mi}:${ur}`);
  }
  s(Hi, "invalidEOF");
  function I0() {
    return ur -= 5, $u(`JSON5: invalid identifier character at ${mi}:${ur}`);
  }
  s(I0, "invalidIdentifier");
  function E6(e) {
    console.warn(`JSON5: '${R0(e)}' in strings is not valid ECMAScript; consider escaping`);
  }
  s(E6, "separatorChar");
  function R0(e) {
    let t = {
      "'": "\\'",
      '"': '\\"',
      "\\": "\\\\",
      "\b": "\\b",
      "\f": "\\f",
      "\n": "\\n",
      "\r": "\\r",
      "	": "\\t",
      "\v": "\\v",
      "\0": "\\0",
      "\u2028": "\\u2028",
      "\u2029": "\\u2029"
    };
    if (t[e])
      return t[e];
    if (e < " ") {
      let r = e.charCodeAt(0).toString(16);
      return "\\x" + ("00" + r).substring(r.length);
    }
    return e;
  }
  s(R0, "formatChar");
  function $u(e) {
    let t = new SyntaxError(e);
    return t.lineNumber = mi, t.columnNumber = ur, t;
  }
  s($u, "syntaxError");
});

// ../node_modules/json5/lib/stringify.js
var j0 = I((fH, M0) => {
  var Nl = Bl();
  M0.exports = /* @__PURE__ */ s(function(t, r, i) {
    let n = [], u = "", a, o, l = "", c;
    if (r != null && typeof r == "object" && !Array.isArray(r) && (i = r.space, c = r.quote, r = r.replacer), typeof r == "function")
      o = r;
    else if (Array.isArray(r)) {
      a = [];
      for (let g of r) {
        let v;
        typeof g == "string" ? v = g : (typeof g == "number" || g instanceof String || g instanceof Number) && (v = String(g)), v !== void 0 &&
        a.indexOf(v) < 0 && a.push(v);
      }
    }
    return i instanceof Number ? i = Number(i) : i instanceof String && (i = String(i)), typeof i == "number" ? i > 0 && (i = Math.min(10, Math.
    floor(i)), l = "          ".substr(0, i)) : typeof i == "string" && (l = i.substr(0, 10)), h("", { "": t });
    function h(g, v) {
      let x = v[g];
      switch (x != null && (typeof x.toJSON5 == "function" ? x = x.toJSON5(g) : typeof x.toJSON == "function" && (x = x.toJSON(g))), o && (x =
      o.call(v, g, x)), x instanceof Number ? x = Number(x) : x instanceof String ? x = String(x) : x instanceof Boolean && (x = x.valueOf()),
      x) {
        case null:
          return "null";
        case !0:
          return "true";
        case !1:
          return "false";
      }
      if (typeof x == "string")
        return p(x, !1);
      if (typeof x == "number")
        return String(x);
      if (typeof x == "object")
        return Array.isArray(x) ? D(x) : d(x);
    }
    s(h, "serializeProperty");
    function p(g) {
      let v = {
        "'": 0.1,
        '"': 0.2
      }, x = {
        "'": "\\'",
        '"': '\\"',
        "\\": "\\\\",
        "\b": "\\b",
        "\f": "\\f",
        "\n": "\\n",
        "\r": "\\r",
        "	": "\\t",
        "\v": "\\v",
        "\0": "\\0",
        "\u2028": "\\u2028",
        "\u2029": "\\u2029"
      }, C = "";
      for (let k = 0; k < g.length; k++) {
        let j = g[k];
        switch (j) {
          case "'":
          case '"':
            v[j]++, C += j;
            continue;
          case "\0":
            if (Nl.isDigit(g[k + 1])) {
              C += "\\x00";
              continue;
            }
        }
        if (x[j]) {
          C += x[j];
          continue;
        }
        if (j < " ") {
          let w = j.charCodeAt(0).toString(16);
          C += "\\x" + ("00" + w).substring(w.length);
          continue;
        }
        C += j;
      }
      let S = c || Object.keys(v).reduce((k, j) => v[k] < v[j] ? k : j);
      return C = C.replace(new RegExp(S, "g"), x[S]), S + C + S;
    }
    s(p, "quoteString");
    function d(g) {
      if (n.indexOf(g) >= 0)
        throw TypeError("Converting circular structure to JSON5");
      n.push(g);
      let v = u;
      u = u + l;
      let x = a || Object.keys(g), C = [];
      for (let k of x) {
        let j = h(k, g);
        if (j !== void 0) {
          let w = m(k) + ":";
          l !== "" && (w += " "), w += j, C.push(w);
        }
      }
      let S;
      if (C.length === 0)
        S = "{}";
      else {
        let k;
        if (l === "")
          k = C.join(","), S = "{" + k + "}";
        else {
          let j = `,
` + u;
          k = C.join(j), S = `{
` + u + k + `,
` + v + "}";
        }
      }
      return n.pop(), u = v, S;
    }
    s(d, "serializeObject");
    function m(g) {
      if (g.length === 0)
        return p(g, !0);
      let v = String.fromCodePoint(g.codePointAt(0));
      if (!Nl.isIdStartChar(v))
        return p(g, !0);
      for (let x = v.length; x < g.length; x++)
        if (!Nl.isIdContinueChar(String.fromCodePoint(g.codePointAt(x))))
          return p(g, !0);
      return g;
    }
    s(m, "serializeKey");
    function D(g) {
      if (n.indexOf(g) >= 0)
        throw TypeError("Converting circular structure to JSON5");
      n.push(g);
      let v = u;
      u = u + l;
      let x = [];
      for (let S = 0; S < g.length; S++) {
        let k = h(String(S), g);
        x.push(k !== void 0 ? k : "null");
      }
      let C;
      if (x.length === 0)
        C = "[]";
      else if (l === "")
        C = "[" + x.join(",") + "]";
      else {
        let S = `,
` + u, k = x.join(S);
        C = `[
` + u + k + `,
` + v + "]";
      }
      return n.pop(), u = v, C;
    }
    s(D, "serializeArray");
  }, "stringify");
});

// ../node_modules/json5/lib/index.js
var $0 = I((mH, q0) => {
  var b6 = L0(), v6 = j0(), C6 = {
    parse: b6,
    stringify: v6
  };
  q0.exports = C6;
});

// ../node_modules/strip-bom/index.js
var U0 = I((DH, V0) => {
  "use strict";
  V0.exports = (e) => {
    if (typeof e != "string")
      throw new TypeError("Expected a string, got " + typeof e);
    return e.charCodeAt(0) === 65279 ? e.slice(1) : e;
  };
});

// ../node_modules/tsconfig-paths/lib/tsconfig-loader.js
var W0 = I((Ar) => {
  "use strict";
  var Wi = Ar && Ar.__assign || function() {
    return Wi = Object.assign || function(e) {
      for (var t, r = 1, i = arguments.length; r < i; r++) {
        t = arguments[r];
        for (var n in t) Object.prototype.hasOwnProperty.call(t, n) && (e[n] = t[n]);
      }
      return e;
    }, Wi.apply(this, arguments);
  };
  Object.defineProperty(Ar, "__esModule", { value: !0 });
  Ar.loadTsconfig = Ar.walkForTsConfig = Ar.tsConfigLoader = void 0;
  var ar = require("path"), ws = require("fs"), w6 = $0(), A6 = U0();
  function F6(e) {
    var t = e.getEnv, r = e.cwd, i = e.loadSync, n = i === void 0 ? S6 : i, u = t("TS_NODE_PROJECT"), a = t("TS_NODE_BASEURL"), o = n(r, u, a);
    return o;
  }
  s(F6, "tsConfigLoader");
  Ar.tsConfigLoader = F6;
  function S6(e, t, r) {
    var i = _6(e, t);
    if (!i)
      return {
        tsConfigPath: void 0,
        baseUrl: void 0,
        paths: void 0
      };
    var n = Ml(i);
    return {
      tsConfigPath: i,
      baseUrl: r || n && n.compilerOptions && n.compilerOptions.baseUrl,
      paths: n && n.compilerOptions && n.compilerOptions.paths
    };
  }
  s(S6, "loadSyncDefault");
  function _6(e, t) {
    if (t) {
      var r = ws.lstatSync(t).isDirectory() ? ar.resolve(t, "./tsconfig.json") : ar.resolve(e, t);
      return r;
    }
    if (ws.statSync(e).isFile())
      return ar.resolve(e);
    var i = Ll(e);
    return i ? ar.resolve(i) : void 0;
  }
  s(_6, "resolveConfigPath");
  function Ll(e, t) {
    t === void 0 && (t = ws.readdirSync);
    for (var r = t(e), i = ["tsconfig.json", "jsconfig.json"], n = 0, u = i; n < u.length; n++) {
      var a = u[n];
      if (r.indexOf(a) !== -1)
        return ar.join(e, a);
    }
    var o = ar.dirname(e);
    if (e !== o)
      return Ll(o, t);
  }
  s(Ll, "walkForTsConfig");
  Ar.walkForTsConfig = Ll;
  function Ml(e, t, r) {
    if (t === void 0 && (t = ws.existsSync), r === void 0 && (r = /* @__PURE__ */ s(function(l) {
      return ws.readFileSync(l, "utf8");
    }, "readFileSync")), !!t(e)) {
      var i = r(e), n = A6(i), u;
      try {
        u = w6.parse(n);
      } catch (l) {
        throw new Error("".concat(e, " is malformed ").concat(l.message));
      }
      var a = u.extends;
      if (a) {
        var o = void 0;
        return Array.isArray(a) ? o = a.reduce(function(l, c) {
          return H0(l, z0(e, c, t, r));
        }, {}) : o = z0(e, a, t, r), H0(o, u);
      }
      return u;
    }
  }
  s(Ml, "loadTsconfig");
  Ar.loadTsconfig = Ml;
  function z0(e, t, r, i) {
    var n;
    typeof t == "string" && t.indexOf(".json") === -1 && (t += ".json");
    var u = ar.dirname(e), a = ar.join(u, t);
    t.indexOf("/") !== -1 && t.indexOf(".") !== -1 && !r(a) && (a = ar.join(u, "node_modules", t));
    var o = Ml(a, r, i) || {};
    if (!((n = o.compilerOptions) === null || n === void 0) && n.baseUrl) {
      var l = ar.dirname(t);
      o.compilerOptions.baseUrl = ar.join(l, o.compilerOptions.baseUrl);
    }
    return o;
  }
  s(z0, "loadTsconfigFromExtends");
  function H0(e, t) {
    return e = e || {}, t = t || {}, Wi(Wi(Wi({}, e), t), { compilerOptions: Wi(Wi({}, e.compilerOptions), t.compilerOptions) });
  }
  s(H0, "mergeTsconfigs");
});

// ../node_modules/tsconfig-paths/lib/config-loader.js
var jl = I((yn) => {
  "use strict";
  Object.defineProperty(yn, "__esModule", { value: !0 });
  yn.configLoader = yn.loadConfig = void 0;
  var k6 = W0(), Vu = require("path");
  function B6(e) {
    return e === void 0 && (e = process.cwd()), J0({ cwd: e });
  }
  s(B6, "loadConfig");
  yn.loadConfig = B6;
  function J0(e) {
    var t = e.cwd, r = e.explicitParams, i = e.tsConfigLoader, n = i === void 0 ? k6.tsConfigLoader : i;
    if (r) {
      var u = Vu.isAbsolute(r.baseUrl) ? r.baseUrl : Vu.join(t, r.baseUrl);
      return {
        resultType: "success",
        configFileAbsolutePath: "",
        baseUrl: r.baseUrl,
        absoluteBaseUrl: u,
        paths: r.paths,
        mainFields: r.mainFields,
        addMatchAll: r.addMatchAll
      };
    }
    var a = n({
      cwd: t,
      getEnv: /* @__PURE__ */ s(function(o) {
        return process.env[o];
      }, "getEnv")
    });
    return a.tsConfigPath ? {
      resultType: "success",
      configFileAbsolutePath: a.tsConfigPath,
      baseUrl: a.baseUrl,
      absoluteBaseUrl: Vu.resolve(Vu.dirname(a.tsConfigPath), a.baseUrl || ""),
      paths: a.paths || {},
      addMatchAll: a.baseUrl !== void 0
    } : {
      resultType: "failed",
      message: "Couldn't find tsconfig.json"
    };
  }
  s(J0, "configLoader");
  yn.configLoader = J0;
});

// ../node_modules/minimist/index.js
var K0 = I((bH, Y0) => {
  "use strict";
  function T6(e, t) {
    var r = e;
    t.slice(0, -1).forEach(function(n) {
      r = r[n] || {};
    });
    var i = t[t.length - 1];
    return i in r;
  }
  s(T6, "hasKey");
  function G0(e) {
    return typeof e == "number" || /^0x[0-9a-f]+$/i.test(e) ? !0 : /^[-+]?(?:\d+(?:\.\d*)?|\.\d+)(e[-+]?\d+)?$/.test(e);
  }
  s(G0, "isNumber");
  function X0(e, t) {
    return t === "constructor" && typeof e[t] == "function" || t === "__proto__";
  }
  s(X0, "isConstructorOrProto");
  Y0.exports = function(e, t) {
    t || (t = {});
    var r = {
      bools: {},
      strings: {},
      unknownFn: null
    };
    typeof t.unknown == "function" && (r.unknownFn = t.unknown), typeof t.boolean == "boolean" && t.boolean ? r.allBools = !0 : [].concat(t.
    boolean).filter(Boolean).forEach(function(k) {
      r.bools[k] = !0;
    });
    var i = {};
    function n(k) {
      return i[k].some(function(j) {
        return r.bools[j];
      });
    }
    s(n, "aliasIsBoolean"), Object.keys(t.alias || {}).forEach(function(k) {
      i[k] = [].concat(t.alias[k]), i[k].forEach(function(j) {
        i[j] = [k].concat(i[k].filter(function(w) {
          return j !== w;
        }));
      });
    }), [].concat(t.string).filter(Boolean).forEach(function(k) {
      r.strings[k] = !0, i[k] && [].concat(i[k]).forEach(function(j) {
        r.strings[j] = !0;
      });
    });
    var u = t.default || {}, a = { _: [] };
    function o(k, j) {
      return r.allBools && /^--[^=]+$/.test(j) || r.strings[k] || r.bools[k] || i[k];
    }
    s(o, "argDefined");
    function l(k, j, w) {
      for (var A = k, T = 0; T < j.length - 1; T++) {
        var B = j[T];
        if (X0(A, B))
          return;
        A[B] === void 0 && (A[B] = {}), (A[B] === Object.prototype || A[B] === Number.prototype || A[B] === String.prototype) && (A[B] = {}),
        A[B] === Array.prototype && (A[B] = []), A = A[B];
      }
      var $ = j[j.length - 1];
      X0(A, $) || ((A === Object.prototype || A === Number.prototype || A === String.prototype) && (A = {}), A === Array.prototype && (A = []),
      A[$] === void 0 || r.bools[$] || typeof A[$] == "boolean" ? A[$] = w : Array.isArray(A[$]) ? A[$].push(w) : A[$] = [A[$], w]);
    }
    s(l, "setKey");
    function c(k, j, w) {
      if (!(w && r.unknownFn && !o(k, w) && r.unknownFn(w) === !1)) {
        var A = !r.strings[k] && G0(j) ? Number(j) : j;
        l(a, k.split("."), A), (i[k] || []).forEach(function(T) {
          l(a, T.split("."), A);
        });
      }
    }
    s(c, "setArg"), Object.keys(r.bools).forEach(function(k) {
      c(k, u[k] === void 0 ? !1 : u[k]);
    });
    var h = [];
    e.indexOf("--") !== -1 && (h = e.slice(e.indexOf("--") + 1), e = e.slice(0, e.indexOf("--")));
    for (var p = 0; p < e.length; p++) {
      var d = e[p], m, D;
      if (/^--.+=/.test(d)) {
        var g = d.match(/^--([^=]+)=([\s\S]*)$/);
        m = g[1];
        var v = g[2];
        r.bools[m] && (v = v !== "false"), c(m, v, d);
      } else if (/^--no-.+/.test(d))
        m = d.match(/^--no-(.+)/)[1], c(m, !1, d);
      else if (/^--.+/.test(d))
        m = d.match(/^--(.+)/)[1], D = e[p + 1], D !== void 0 && !/^(-|--)[^-]/.test(D) && !r.bools[m] && !r.allBools && (!i[m] || !n(m)) ? (c(
        m, D, d), p += 1) : /^(true|false)$/.test(D) ? (c(m, D === "true", d), p += 1) : c(m, r.strings[m] ? "" : !0, d);
      else if (/^-[^-]+/.test(d)) {
        for (var x = d.slice(1, -1).split(""), C = !1, S = 0; S < x.length; S++) {
          if (D = d.slice(S + 2), D === "-") {
            c(x[S], D, d);
            continue;
          }
          if (/[A-Za-z]/.test(x[S]) && D[0] === "=") {
            c(x[S], D.slice(1), d), C = !0;
            break;
          }
          if (/[A-Za-z]/.test(x[S]) && /-?\d+(\.\d*)?(e-?\d+)?$/.test(D)) {
            c(x[S], D, d), C = !0;
            break;
          }
          if (x[S + 1] && x[S + 1].match(/\W/)) {
            c(x[S], d.slice(S + 2), d), C = !0;
            break;
          } else
            c(x[S], r.strings[x[S]] ? "" : !0, d);
        }
        m = d.slice(-1)[0], !C && m !== "-" && (e[p + 1] && !/^(-|--)[^-]/.test(e[p + 1]) && !r.bools[m] && (!i[m] || !n(m)) ? (c(m, e[p + 1],
        d), p += 1) : e[p + 1] && /^(true|false)$/.test(e[p + 1]) ? (c(m, e[p + 1] === "true", d), p += 1) : c(m, r.strings[m] ? "" : !0, d));
      } else if ((!r.unknownFn || r.unknownFn(d) !== !1) && a._.push(r.strings._ || !G0(d) ? d : Number(d)), t.stopEarly) {
        a._.push.apply(a._, e.slice(p + 1));
        break;
      }
    }
    return Object.keys(u).forEach(function(k) {
      T6(a, k.split(".")) || (l(a, k.split("."), u[k]), (i[k] || []).forEach(function(j) {
        l(a, j.split("."), u[k]);
      }));
    }), t["--"] ? a["--"] = h.slice() : h.forEach(function(k) {
      a._.push(k);
    }), a;
  };
});

// ../node_modules/tsconfig-paths/lib/register.js
var Q0 = I((En) => {
  "use strict";
  var P6 = En && En.__spreadArray || function(e, t, r) {
    if (r || arguments.length === 2) for (var i = 0, n = t.length, u; i < n; i++)
      (u || !(i in t)) && (u || (u = Array.prototype.slice.call(t, 0, i)), u[i] = t[i]);
    return e.concat(u || Array.prototype.slice.call(t));
  };
  Object.defineProperty(En, "__esModule", { value: !0 });
  En.register = void 0;
  var I6 = Sl(), O6 = jl(), R6 = /* @__PURE__ */ s(function() {
  }, "noOp");
  function N6(e) {
    e = e || [
      "assert",
      "buffer",
      "child_process",
      "cluster",
      "crypto",
      "dgram",
      "dns",
      "domain",
      "events",
      "fs",
      "http",
      "https",
      "net",
      "os",
      "path",
      "punycode",
      "querystring",
      "readline",
      "stream",
      "string_decoder",
      "tls",
      "tty",
      "url",
      "util",
      "v8",
      "vm",
      "zlib"
    ];
    for (var t = {}, r = 0, i = e; r < i.length; r++) {
      var n = i[r];
      t[n] = !0;
    }
    return t;
  }
  s(N6, "getCoreModules");
  function L6(e) {
    var t, r;
    if (e)
      t = e.cwd, (e.baseUrl || e.paths) && (r = e);
    else {
      var i = K0(), n = i(process.argv.slice(2), {
        // eslint-disable-next-line id-denylist
        string: ["project"],
        alias: {
          project: ["P"]
        }
      });
      t = n.project;
    }
    var u = (0, O6.configLoader)({
      cwd: t ?? process.cwd(),
      explicitParams: r
    });
    if (u.resultType === "failed")
      return console.warn("".concat(u.message, ". tsconfig-paths will be skipped")), R6;
    var a = (0, I6.createMatchPath)(u.absoluteBaseUrl, u.paths, u.mainFields, u.addMatchAll), o = require("module"), l = o._resolveFilename,
    c = N6(o.builtinModules);
    return o._resolveFilename = function(h, p) {
      var d = c.hasOwnProperty(h);
      if (!d) {
        var m = a(h);
        if (m) {
          var D = P6([m], [].slice.call(arguments, 1), !0);
          return l.apply(this, D);
        }
      }
      return l.apply(this, arguments);
    }, function() {
      o._resolveFilename = l;
    };
  }
  s(L6, "register");
  En.register = L6;
});

// ../node_modules/tsconfig-paths/lib/index.js
var tD = I((At) => {
  "use strict";
  Object.defineProperty(At, "__esModule", { value: !0 });
  At.loadConfig = At.register = At.matchFromAbsolutePathsAsync = At.createMatchPathAsync = At.matchFromAbsolutePaths = At.createMatchPath = void 0;
  var Z0 = Sl();
  Object.defineProperty(At, "createMatchPath", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return Z0.createMatchPath;
  }, "get") });
  Object.defineProperty(At, "matchFromAbsolutePaths", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return Z0.matchFromAbsolutePaths;
  }, "get") });
  var eD = B0();
  Object.defineProperty(At, "createMatchPathAsync", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return eD.createMatchPathAsync;
  }, "get") });
  Object.defineProperty(At, "matchFromAbsolutePathsAsync", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return eD.matchFromAbsolutePathsAsync;
  }, "get") });
  var M6 = Q0();
  Object.defineProperty(At, "register", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return M6.register;
  }, "get") });
  var j6 = jl();
  Object.defineProperty(At, "loadConfig", { enumerable: !0, get: /* @__PURE__ */ s(function() {
    return j6.loadConfig;
  }, "get") });
});

// ../node_modules/@sindresorhus/merge-streams/index.js
function Hl(e) {
  if (!Array.isArray(e))
    throw new TypeError(`Expected an array, got \`${typeof e}\`.`);
  for (let n of e)
    Vl(n);
  let t = e.some(({ readableObjectMode: n }) => n), r = q6(e, t), i = new $l({
    objectMode: t,
    writableHighWaterMark: r,
    readableHighWaterMark: r
  });
  for (let n of e)
    i.add(n);
  return e.length === 0 && lD(i), i;
}
var zu, uD, zl, q6, $l, $6, V6, U6, Vl, z6, aD, H6, W6, J6, oD, lD, Ul, cD, G6, Uu, nD, sD, hD = ht(() => {
  zu = require("node:events"), uD = require("node:stream"), zl = require("node:stream/promises");
  s(Hl, "mergeStreams");
  q6 = /* @__PURE__ */ s((e, t) => {
    if (e.length === 0)
      return 16384;
    let r = e.filter(({ readableObjectMode: i }) => i === t).map(({ readableHighWaterMark: i }) => i);
    return Math.max(...r);
  }, "getHighWaterMark"), $l = class extends uD.PassThrough {
    static {
      s(this, "MergedStream");
    }
    #e = /* @__PURE__ */ new Set([]);
    #t = /* @__PURE__ */ new Set([]);
    #r = /* @__PURE__ */ new Set([]);
    #i;
    add(t) {
      Vl(t), !this.#e.has(t) && (this.#e.add(t), this.#i ??= $6(this, this.#e), z6({
        passThroughStream: this,
        stream: t,
        streams: this.#e,
        ended: this.#t,
        aborted: this.#r,
        onFinished: this.#i
      }), t.pipe(this, { end: !1 }));
    }
    remove(t) {
      return Vl(t), this.#e.has(t) ? (t.unpipe(this), !0) : !1;
    }
  }, $6 = /* @__PURE__ */ s(async (e, t) => {
    Uu(e, nD);
    let r = new AbortController();
    try {
      await Promise.race([
        V6(e, r),
        U6(e, t, r)
      ]);
    } finally {
      r.abort(), Uu(e, -nD);
    }
  }, "onMergedStreamFinished"), V6 = /* @__PURE__ */ s(async (e, { signal: t }) => {
    await (0, zl.finished)(e, { signal: t, cleanup: !0 });
  }, "onMergedStreamEnd"), U6 = /* @__PURE__ */ s(async (e, t, { signal: r }) => {
    for await (let [i] of (0, zu.on)(e, "unpipe", { signal: r }))
      t.has(i) && i.emit(oD);
  }, "onInputStreamsUnpipe"), Vl = /* @__PURE__ */ s((e) => {
    if (typeof e?.pipe != "function")
      throw new TypeError(`Expected a readable stream, got: \`${typeof e}\`.`);
  }, "validateStream"), z6 = /* @__PURE__ */ s(async ({ passThroughStream: e, stream: t, streams: r, ended: i, aborted: n, onFinished: u }) => {
    Uu(e, sD);
    let a = new AbortController();
    try {
      await Promise.race([
        H6(u, t),
        W6({ passThroughStream: e, stream: t, streams: r, ended: i, aborted: n, controller: a }),
        J6({ stream: t, streams: r, ended: i, aborted: n, controller: a })
      ]);
    } finally {
      a.abort(), Uu(e, -sD);
    }
    r.size === i.size + n.size && (i.size === 0 && n.size > 0 ? Ul(e) : lD(e));
  }, "endWhenStreamsDone"), aD = /* @__PURE__ */ s((e) => e?.code === "ERR_STREAM_PREMATURE_CLOSE", "isAbortError"), H6 = /* @__PURE__ */ s(
  async (e, t) => {
    try {
      await e, Ul(t);
    } catch (r) {
      aD(r) ? Ul(t) : cD(t, r);
    }
  }, "afterMergedStreamFinished"), W6 = /* @__PURE__ */ s(async ({ passThroughStream: e, stream: t, streams: r, ended: i, aborted: n, controller: {
  signal: u } }) => {
    try {
      await (0, zl.finished)(t, { signal: u, cleanup: !0, readable: !0, writable: !1 }), r.has(t) && i.add(t);
    } catch (a) {
      if (u.aborted || !r.has(t))
        return;
      aD(a) ? n.add(t) : cD(e, a);
    }
  }, "onInputStreamEnd"), J6 = /* @__PURE__ */ s(async ({ stream: e, streams: t, ended: r, aborted: i, controller: { signal: n } }) => {
    await (0, zu.once)(e, oD, { signal: n }), t.delete(e), r.delete(e), i.delete(e);
  }, "onInputStreamUnpipe"), oD = Symbol("unpipe"), lD = /* @__PURE__ */ s((e) => {
    e.writable && e.end();
  }, "endStream"), Ul = /* @__PURE__ */ s((e) => {
    (e.readable || e.writable) && e.destroy();
  }, "abortStream"), cD = /* @__PURE__ */ s((e, t) => {
    e.destroyed || (e.once("error", G6), e.destroy(t));
  }, "errorStream"), G6 = /* @__PURE__ */ s(() => {
  }, "noop"), Uu = /* @__PURE__ */ s((e, t) => {
    let r = e.getMaxListeners();
    r !== 0 && r !== Number.POSITIVE_INFINITY && e.setMaxListeners(r + t);
  }, "updateMaxListeners"), nD = 2, sD = 1;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/array.js
var pD = I((bn) => {
  "use strict";
  Object.defineProperty(bn, "__esModule", { value: !0 });
  bn.splitWhen = bn.flatten = void 0;
  function X6(e) {
    return e.reduce((t, r) => [].concat(t, r), []);
  }
  s(X6, "flatten");
  bn.flatten = X6;
  function Y6(e, t) {
    let r = [[]], i = 0;
    for (let n of e)
      t(n) ? (i++, r[i] = []) : r[i].push(n);
    return r;
  }
  s(Y6, "splitWhen");
  bn.splitWhen = Y6;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/errno.js
var fD = I((Hu) => {
  "use strict";
  Object.defineProperty(Hu, "__esModule", { value: !0 });
  Hu.isEnoentCodeError = void 0;
  function K6(e) {
    return e.code === "ENOENT";
  }
  s(K6, "isEnoentCodeError");
  Hu.isEnoentCodeError = K6;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/fs.js
var dD = I((Wu) => {
  "use strict";
  Object.defineProperty(Wu, "__esModule", { value: !0 });
  Wu.createDirentFromStats = void 0;
  var Wl = class {
    static {
      s(this, "DirentFromStats");
    }
    constructor(t, r) {
      this.name = t, this.isBlockDevice = r.isBlockDevice.bind(r), this.isCharacterDevice = r.isCharacterDevice.bind(r), this.isDirectory = r.
      isDirectory.bind(r), this.isFIFO = r.isFIFO.bind(r), this.isFile = r.isFile.bind(r), this.isSocket = r.isSocket.bind(r), this.isSymbolicLink =
      r.isSymbolicLink.bind(r);
    }
  };
  function Q6(e, t) {
    return new Wl(e, t);
  }
  s(Q6, "createDirentFromStats");
  Wu.createDirentFromStats = Q6;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/path.js
var xD = I((Qe) => {
  "use strict";
  Object.defineProperty(Qe, "__esModule", { value: !0 });
  Qe.convertPosixPathToPattern = Qe.convertWindowsPathToPattern = Qe.convertPathToPattern = Qe.escapePosixPath = Qe.escapeWindowsPath = Qe.escape =
  Qe.removeLeadingDotSegment = Qe.makeAbsolute = Qe.unixify = void 0;
  var Z6 = require("os"), e8 = require("path"), mD = Z6.platform() === "win32", t8 = 2, r8 = /(\\?)([()*?[\]{|}]|^!|[!+@](?=\()|\\(?![!()*+?@[\]{|}]))/g,
  i8 = /(\\?)([()[\]{}]|^!|[!+@](?=\())/g, n8 = /^\\\\([.?])/, s8 = /\\(?![!()+@[\]{}])/g;
  function u8(e) {
    return e.replace(/\\/g, "/");
  }
  s(u8, "unixify");
  Qe.unixify = u8;
  function a8(e, t) {
    return e8.resolve(e, t);
  }
  s(a8, "makeAbsolute");
  Qe.makeAbsolute = a8;
  function o8(e) {
    if (e.charAt(0) === ".") {
      let t = e.charAt(1);
      if (t === "/" || t === "\\")
        return e.slice(t8);
    }
    return e;
  }
  s(o8, "removeLeadingDotSegment");
  Qe.removeLeadingDotSegment = o8;
  Qe.escape = mD ? Jl : Gl;
  function Jl(e) {
    return e.replace(i8, "\\$2");
  }
  s(Jl, "escapeWindowsPath");
  Qe.escapeWindowsPath = Jl;
  function Gl(e) {
    return e.replace(r8, "\\$2");
  }
  s(Gl, "escapePosixPath");
  Qe.escapePosixPath = Gl;
  Qe.convertPathToPattern = mD ? DD : gD;
  function DD(e) {
    return Jl(e).replace(n8, "//$1").replace(s8, "/");
  }
  s(DD, "convertWindowsPathToPattern");
  Qe.convertWindowsPathToPattern = DD;
  function gD(e) {
    return Gl(e);
  }
  s(gD, "convertPosixPathToPattern");
  Qe.convertPosixPathToPattern = gD;
});

// ../node_modules/is-extglob/index.js
var ED = I((zH, yD) => {
  yD.exports = /* @__PURE__ */ s(function(t) {
    if (typeof t != "string" || t === "")
      return !1;
    for (var r; r = /(\\).|([@?!+*]\(.*\))/g.exec(t); ) {
      if (r[2]) return !0;
      t = t.slice(r.index + r[0].length);
    }
    return !1;
  }, "isExtglob");
});

// ../node_modules/is-glob/index.js
var CD = I((WH, vD) => {
  var l8 = ED(), bD = { "{": "}", "(": ")", "[": "]" }, c8 = /* @__PURE__ */ s(function(e) {
    if (e[0] === "!")
      return !0;
    for (var t = 0, r = -2, i = -2, n = -2, u = -2, a = -2; t < e.length; ) {
      if (e[t] === "*" || e[t + 1] === "?" && /[\].+)]/.test(e[t]) || i !== -1 && e[t] === "[" && e[t + 1] !== "]" && (i < t && (i = e.indexOf(
      "]", t)), i > t && (a === -1 || a > i || (a = e.indexOf("\\", t), a === -1 || a > i))) || n !== -1 && e[t] === "{" && e[t + 1] !== "}" &&
      (n = e.indexOf("}", t), n > t && (a = e.indexOf("\\", t), a === -1 || a > n)) || u !== -1 && e[t] === "(" && e[t + 1] === "?" && /[:!=]/.
      test(e[t + 2]) && e[t + 3] !== ")" && (u = e.indexOf(")", t), u > t && (a = e.indexOf("\\", t), a === -1 || a > u)) || r !== -1 && e[t] ===
      "(" && e[t + 1] !== "|" && (r < t && (r = e.indexOf("|", t)), r !== -1 && e[r + 1] !== ")" && (u = e.indexOf(")", r), u > r && (a = e.
      indexOf("\\", r), a === -1 || a > u))))
        return !0;
      if (e[t] === "\\") {
        var o = e[t + 1];
        t += 2;
        var l = bD[o];
        if (l) {
          var c = e.indexOf(l, t);
          c !== -1 && (t = c + 1);
        }
        if (e[t] === "!")
          return !0;
      } else
        t++;
    }
    return !1;
  }, "strictCheck"), h8 = /* @__PURE__ */ s(function(e) {
    if (e[0] === "!")
      return !0;
    for (var t = 0; t < e.length; ) {
      if (/[*?{}()[\]]/.test(e[t]))
        return !0;
      if (e[t] === "\\") {
        var r = e[t + 1];
        t += 2;
        var i = bD[r];
        if (i) {
          var n = e.indexOf(i, t);
          n !== -1 && (t = n + 1);
        }
        if (e[t] === "!")
          return !0;
      } else
        t++;
    }
    return !1;
  }, "relaxedCheck");
  vD.exports = /* @__PURE__ */ s(function(t, r) {
    if (typeof t != "string" || t === "")
      return !1;
    if (l8(t))
      return !0;
    var i = c8;
    return r && r.strict === !1 && (i = h8), i(t);
  }, "isGlob");
});

// ../node_modules/glob-parent/index.js
var AD = I((GH, wD) => {
  "use strict";
  var p8 = CD(), f8 = require("path").posix.dirname, d8 = require("os").platform() === "win32", Xl = "/", m8 = /\\/g, D8 = /[\{\[].*[\}\]]$/,
  g8 = /(^|[^\\])([\{\[]|\([^\)]+$)/, x8 = /\\([\!\*\?\|\[\]\(\)\{\}])/g;
  wD.exports = /* @__PURE__ */ s(function(t, r) {
    var i = Object.assign({ flipBackslashes: !0 }, r);
    i.flipBackslashes && d8 && t.indexOf(Xl) < 0 && (t = t.replace(m8, Xl)), D8.test(t) && (t += Xl), t += "a";
    do
      t = f8(t);
    while (p8(t) || g8.test(t));
    return t.replace(x8, "$1");
  }, "globParent");
});

// ../node_modules/braces/lib/utils.js
var Ju = I(($t) => {
  "use strict";
  $t.isInteger = (e) => typeof e == "number" ? Number.isInteger(e) : typeof e == "string" && e.trim() !== "" ? Number.isInteger(Number(e)) :
  !1;
  $t.find = (e, t) => e.nodes.find((r) => r.type === t);
  $t.exceedsLimit = (e, t, r = 1, i) => i === !1 || !$t.isInteger(e) || !$t.isInteger(t) ? !1 : (Number(t) - Number(e)) / Number(r) >= i;
  $t.escapeNode = (e, t = 0, r) => {
    let i = e.nodes[t];
    i && (r && i.type === r || i.type === "open" || i.type === "close") && i.escaped !== !0 && (i.value = "\\" + i.value, i.escaped = !0);
  };
  $t.encloseBrace = (e) => e.type !== "brace" ? !1 : e.commas >> 0 + e.ranges >> 0 === 0 ? (e.invalid = !0, !0) : !1;
  $t.isInvalidBrace = (e) => e.type !== "brace" ? !1 : e.invalid === !0 || e.dollar ? !0 : e.commas >> 0 + e.ranges >> 0 === 0 || e.open !==
  !0 || e.close !== !0 ? (e.invalid = !0, !0) : !1;
  $t.isOpenOrClose = (e) => e.type === "open" || e.type === "close" ? !0 : e.open === !0 || e.close === !0;
  $t.reduce = (e) => e.reduce((t, r) => (r.type === "text" && t.push(r.value), r.type === "range" && (r.type = "text"), t), []);
  $t.flatten = (...e) => {
    let t = [], r = /* @__PURE__ */ s((i) => {
      for (let n = 0; n < i.length; n++) {
        let u = i[n];
        if (Array.isArray(u)) {
          r(u);
          continue;
        }
        u !== void 0 && t.push(u);
      }
      return t;
    }, "flat");
    return r(e), t;
  };
});

// ../node_modules/braces/lib/stringify.js
var Gu = I((QH, SD) => {
  "use strict";
  var FD = Ju();
  SD.exports = (e, t = {}) => {
    let r = /* @__PURE__ */ s((i, n = {}) => {
      let u = t.escapeInvalid && FD.isInvalidBrace(n), a = i.invalid === !0 && t.escapeInvalid === !0, o = "";
      if (i.value)
        return (u || a) && FD.isOpenOrClose(i) ? "\\" + i.value : i.value;
      if (i.value)
        return i.value;
      if (i.nodes)
        for (let l of i.nodes)
          o += r(l);
      return o;
    }, "stringify");
    return r(e);
  };
});

// ../node_modules/to-regex-range/node_modules/is-number/index.js
var kD = I((eW, _D) => {
  "use strict";
  _D.exports = function(e) {
    return typeof e == "number" ? e - e === 0 : typeof e == "string" && e.trim() !== "" ? Number.isFinite ? Number.isFinite(+e) : isFinite(+e) :
    !1;
  };
});

// ../node_modules/to-regex-range/index.js
var MD = I((tW, LD) => {
  "use strict";
  var BD = kD(), Ji = /* @__PURE__ */ s((e, t, r) => {
    if (BD(e) === !1)
      throw new TypeError("toRegexRange: expected the first argument to be a number");
    if (t === void 0 || e === t)
      return String(e);
    if (BD(t) === !1)
      throw new TypeError("toRegexRange: expected the second argument to be a number.");
    let i = { relaxZeros: !0, ...r };
    typeof i.strictZeros == "boolean" && (i.relaxZeros = i.strictZeros === !1);
    let n = String(i.relaxZeros), u = String(i.shorthand), a = String(i.capture), o = String(i.wrap), l = e + ":" + t + "=" + n + u + a + o;
    if (Ji.cache.hasOwnProperty(l))
      return Ji.cache[l].result;
    let c = Math.min(e, t), h = Math.max(e, t);
    if (Math.abs(c - h) === 1) {
      let g = e + "|" + t;
      return i.capture ? `(${g})` : i.wrap === !1 ? g : `(?:${g})`;
    }
    let p = ND(e) || ND(t), d = { min: e, max: t, a: c, b: h }, m = [], D = [];
    if (p && (d.isPadded = p, d.maxLen = String(d.max).length), c < 0) {
      let g = h < 0 ? Math.abs(h) : 1;
      D = TD(g, Math.abs(c), d, i), c = d.a = 0;
    }
    return h >= 0 && (m = TD(c, h, d, i)), d.negatives = D, d.positives = m, d.result = y8(D, m, i), i.capture === !0 ? d.result = `(${d.result}\
)` : i.wrap !== !1 && m.length + D.length > 1 && (d.result = `(?:${d.result})`), Ji.cache[l] = d, d.result;
  }, "toRegexRange");
  function y8(e, t, r) {
    let i = Yl(e, t, "-", !1, r) || [], n = Yl(t, e, "", !1, r) || [], u = Yl(e, t, "-?", !0, r) || [];
    return i.concat(u).concat(n).join("|");
  }
  s(y8, "collatePatterns");
  function E8(e, t) {
    let r = 1, i = 1, n = ID(e, r), u = /* @__PURE__ */ new Set([t]);
    for (; e <= n && n <= t; )
      u.add(n), r += 1, n = ID(e, r);
    for (n = OD(t + 1, i) - 1; e < n && n <= t; )
      u.add(n), i += 1, n = OD(t + 1, i) - 1;
    return u = [...u], u.sort(C8), u;
  }
  s(E8, "splitToRanges");
  function b8(e, t, r) {
    if (e === t)
      return { pattern: e, count: [], digits: 0 };
    let i = v8(e, t), n = i.length, u = "", a = 0;
    for (let o = 0; o < n; o++) {
      let [l, c] = i[o];
      l === c ? u += l : l !== "0" || c !== "9" ? u += w8(l, c, r) : a++;
    }
    return a && (u += r.shorthand === !0 ? "\\d" : "[0-9]"), { pattern: u, count: [a], digits: n };
  }
  s(b8, "rangeToPattern");
  function TD(e, t, r, i) {
    let n = E8(e, t), u = [], a = e, o;
    for (let l = 0; l < n.length; l++) {
      let c = n[l], h = b8(String(a), String(c), i), p = "";
      if (!r.isPadded && o && o.pattern === h.pattern) {
        o.count.length > 1 && o.count.pop(), o.count.push(h.count[0]), o.string = o.pattern + RD(o.count), a = c + 1;
        continue;
      }
      r.isPadded && (p = A8(c, r, i)), h.string = p + h.pattern + RD(h.count), u.push(h), a = c + 1, o = h;
    }
    return u;
  }
  s(TD, "splitToPatterns");
  function Yl(e, t, r, i, n) {
    let u = [];
    for (let a of e) {
      let { string: o } = a;
      !i && !PD(t, "string", o) && u.push(r + o), i && PD(t, "string", o) && u.push(r + o);
    }
    return u;
  }
  s(Yl, "filterPatterns");
  function v8(e, t) {
    let r = [];
    for (let i = 0; i < e.length; i++) r.push([e[i], t[i]]);
    return r;
  }
  s(v8, "zip");
  function C8(e, t) {
    return e > t ? 1 : t > e ? -1 : 0;
  }
  s(C8, "compare");
  function PD(e, t, r) {
    return e.some((i) => i[t] === r);
  }
  s(PD, "contains");
  function ID(e, t) {
    return Number(String(e).slice(0, -t) + "9".repeat(t));
  }
  s(ID, "countNines");
  function OD(e, t) {
    return e - e % Math.pow(10, t);
  }
  s(OD, "countZeros");
  function RD(e) {
    let [t = 0, r = ""] = e;
    return r || t > 1 ? `{${t + (r ? "," + r : "")}}` : "";
  }
  s(RD, "toQuantifier");
  function w8(e, t, r) {
    return `[${e}${t - e === 1 ? "" : "-"}${t}]`;
  }
  s(w8, "toCharacterClass");
  function ND(e) {
    return /^-?(0+)\d/.test(e);
  }
  s(ND, "hasPadding");
  function A8(e, t, r) {
    if (!t.isPadded)
      return e;
    let i = Math.abs(t.maxLen - String(e).length), n = r.relaxZeros !== !1;
    switch (i) {
      case 0:
        return "";
      case 1:
        return n ? "0?" : "0";
      case 2:
        return n ? "0{0,2}" : "00";
      default:
        return n ? `0{0,${i}}` : `0{${i}}`;
    }
  }
  s(A8, "padZeros");
  Ji.cache = {};
  Ji.clearCache = () => Ji.cache = {};
  LD.exports = Ji;
});

// ../node_modules/fill-range/index.js
var Zl = I((iW, HD) => {
  "use strict";
  var F8 = require("util"), qD = MD(), jD = /* @__PURE__ */ s((e) => e !== null && typeof e == "object" && !Array.isArray(e), "isObject"), S8 = /* @__PURE__ */ s(
  (e) => (t) => e === !0 ? Number(t) : String(t), "transform"), Kl = /* @__PURE__ */ s((e) => typeof e == "number" || typeof e == "string" &&
  e !== "", "isValidValue"), Fs = /* @__PURE__ */ s((e) => Number.isInteger(+e), "isNumber"), Ql = /* @__PURE__ */ s((e) => {
    let t = `${e}`, r = -1;
    if (t[0] === "-" && (t = t.slice(1)), t === "0") return !1;
    for (; t[++r] === "0"; ) ;
    return r > 0;
  }, "zeros"), _8 = /* @__PURE__ */ s((e, t, r) => typeof e == "string" || typeof t == "string" ? !0 : r.stringify === !0, "stringify"), k8 = /* @__PURE__ */ s(
  (e, t, r) => {
    if (t > 0) {
      let i = e[0] === "-" ? "-" : "";
      i && (e = e.slice(1)), e = i + e.padStart(i ? t - 1 : t, "0");
    }
    return r === !1 ? String(e) : e;
  }, "pad"), Yu = /* @__PURE__ */ s((e, t) => {
    let r = e[0] === "-" ? "-" : "";
    for (r && (e = e.slice(1), t--); e.length < t; ) e = "0" + e;
    return r ? "-" + e : e;
  }, "toMaxLen"), B8 = /* @__PURE__ */ s((e, t, r) => {
    e.negatives.sort((o, l) => o < l ? -1 : o > l ? 1 : 0), e.positives.sort((o, l) => o < l ? -1 : o > l ? 1 : 0);
    let i = t.capture ? "" : "?:", n = "", u = "", a;
    return e.positives.length && (n = e.positives.map((o) => Yu(String(o), r)).join("|")), e.negatives.length && (u = `-(${i}${e.negatives.map(
    (o) => Yu(String(o), r)).join("|")})`), n && u ? a = `${n}|${u}` : a = n || u, t.wrap ? `(${i}${a})` : a;
  }, "toSequence"), $D = /* @__PURE__ */ s((e, t, r, i) => {
    if (r)
      return qD(e, t, { wrap: !1, ...i });
    let n = String.fromCharCode(e);
    if (e === t) return n;
    let u = String.fromCharCode(t);
    return `[${n}-${u}]`;
  }, "toRange"), VD = /* @__PURE__ */ s((e, t, r) => {
    if (Array.isArray(e)) {
      let i = r.wrap === !0, n = r.capture ? "" : "?:";
      return i ? `(${n}${e.join("|")})` : e.join("|");
    }
    return qD(e, t, r);
  }, "toRegex"), UD = /* @__PURE__ */ s((...e) => new RangeError("Invalid range arguments: " + F8.inspect(...e)), "rangeError"), zD = /* @__PURE__ */ s(
  (e, t, r) => {
    if (r.strictRanges === !0) throw UD([e, t]);
    return [];
  }, "invalidRange"), T8 = /* @__PURE__ */ s((e, t) => {
    if (t.strictRanges === !0)
      throw new TypeError(`Expected step "${e}" to be a number`);
    return [];
  }, "invalidStep"), P8 = /* @__PURE__ */ s((e, t, r = 1, i = {}) => {
    let n = Number(e), u = Number(t);
    if (!Number.isInteger(n) || !Number.isInteger(u)) {
      if (i.strictRanges === !0) throw UD([e, t]);
      return [];
    }
    n === 0 && (n = 0), u === 0 && (u = 0);
    let a = n > u, o = String(e), l = String(t), c = String(r);
    r = Math.max(Math.abs(r), 1);
    let h = Ql(o) || Ql(l) || Ql(c), p = h ? Math.max(o.length, l.length, c.length) : 0, d = h === !1 && _8(e, t, i) === !1, m = i.transform ||
    S8(d);
    if (i.toRegex && r === 1)
      return $D(Yu(e, p), Yu(t, p), !0, i);
    let D = { negatives: [], positives: [] }, g = /* @__PURE__ */ s((C) => D[C < 0 ? "negatives" : "positives"].push(Math.abs(C)), "push"), v = [],
    x = 0;
    for (; a ? n >= u : n <= u; )
      i.toRegex === !0 && r > 1 ? g(n) : v.push(k8(m(n, x), p, d)), n = a ? n - r : n + r, x++;
    return i.toRegex === !0 ? r > 1 ? B8(D, i, p) : VD(v, null, { wrap: !1, ...i }) : v;
  }, "fillNumbers"), I8 = /* @__PURE__ */ s((e, t, r = 1, i = {}) => {
    if (!Fs(e) && e.length > 1 || !Fs(t) && t.length > 1)
      return zD(e, t, i);
    let n = i.transform || ((d) => String.fromCharCode(d)), u = `${e}`.charCodeAt(0), a = `${t}`.charCodeAt(0), o = u > a, l = Math.min(u, a),
    c = Math.max(u, a);
    if (i.toRegex && r === 1)
      return $D(l, c, !1, i);
    let h = [], p = 0;
    for (; o ? u >= a : u <= a; )
      h.push(n(u, p)), u = o ? u - r : u + r, p++;
    return i.toRegex === !0 ? VD(h, null, { wrap: !1, options: i }) : h;
  }, "fillLetters"), Xu = /* @__PURE__ */ s((e, t, r, i = {}) => {
    if (t == null && Kl(e))
      return [e];
    if (!Kl(e) || !Kl(t))
      return zD(e, t, i);
    if (typeof r == "function")
      return Xu(e, t, 1, { transform: r });
    if (jD(r))
      return Xu(e, t, 0, r);
    let n = { ...i };
    return n.capture === !0 && (n.wrap = !0), r = r || n.step || 1, Fs(r) ? Fs(e) && Fs(t) ? P8(e, t, r, n) : I8(e, t, Math.max(Math.abs(r),
    1), n) : r != null && !jD(r) ? T8(r, n) : Xu(e, t, 1, r);
  }, "fill");
  HD.exports = Xu;
});

// ../node_modules/braces/lib/compile.js
var GD = I((sW, JD) => {
  "use strict";
  var O8 = Zl(), WD = Ju(), R8 = /* @__PURE__ */ s((e, t = {}) => {
    let r = /* @__PURE__ */ s((i, n = {}) => {
      let u = WD.isInvalidBrace(n), a = i.invalid === !0 && t.escapeInvalid === !0, o = u === !0 || a === !0, l = t.escapeInvalid === !0 ? "\
\\" : "", c = "";
      if (i.isOpen === !0)
        return l + i.value;
      if (i.isClose === !0)
        return console.log("node.isClose", l, i.value), l + i.value;
      if (i.type === "open")
        return o ? l + i.value : "(";
      if (i.type === "close")
        return o ? l + i.value : ")";
      if (i.type === "comma")
        return i.prev.type === "comma" ? "" : o ? i.value : "|";
      if (i.value)
        return i.value;
      if (i.nodes && i.ranges > 0) {
        let h = WD.reduce(i.nodes), p = O8(...h, { ...t, wrap: !1, toRegex: !0, strictZeros: !0 });
        if (p.length !== 0)
          return h.length > 1 && p.length > 1 ? `(${p})` : p;
      }
      if (i.nodes)
        for (let h of i.nodes)
          c += r(h, i);
      return c;
    }, "walk");
    return r(e);
  }, "compile");
  JD.exports = R8;
});

// ../node_modules/braces/lib/expand.js
var KD = I((aW, YD) => {
  "use strict";
  var N8 = Zl(), XD = Gu(), vn = Ju(), Gi = /* @__PURE__ */ s((e = "", t = "", r = !1) => {
    let i = [];
    if (e = [].concat(e), t = [].concat(t), !t.length) return e;
    if (!e.length)
      return r ? vn.flatten(t).map((n) => `{${n}}`) : t;
    for (let n of e)
      if (Array.isArray(n))
        for (let u of n)
          i.push(Gi(u, t, r));
      else
        for (let u of t)
          r === !0 && typeof u == "string" && (u = `{${u}}`), i.push(Array.isArray(u) ? Gi(n, u, r) : n + u);
    return vn.flatten(i);
  }, "append"), L8 = /* @__PURE__ */ s((e, t = {}) => {
    let r = t.rangeLimit === void 0 ? 1e3 : t.rangeLimit, i = /* @__PURE__ */ s((n, u = {}) => {
      n.queue = [];
      let a = u, o = u.queue;
      for (; a.type !== "brace" && a.type !== "root" && a.parent; )
        a = a.parent, o = a.queue;
      if (n.invalid || n.dollar) {
        o.push(Gi(o.pop(), XD(n, t)));
        return;
      }
      if (n.type === "brace" && n.invalid !== !0 && n.nodes.length === 2) {
        o.push(Gi(o.pop(), ["{}"]));
        return;
      }
      if (n.nodes && n.ranges > 0) {
        let p = vn.reduce(n.nodes);
        if (vn.exceedsLimit(...p, t.step, r))
          throw new RangeError("expanded array length exceeds range limit. Use options.rangeLimit to increase or disable the limit.");
        let d = N8(...p, t);
        d.length === 0 && (d = XD(n, t)), o.push(Gi(o.pop(), d)), n.nodes = [];
        return;
      }
      let l = vn.encloseBrace(n), c = n.queue, h = n;
      for (; h.type !== "brace" && h.type !== "root" && h.parent; )
        h = h.parent, c = h.queue;
      for (let p = 0; p < n.nodes.length; p++) {
        let d = n.nodes[p];
        if (d.type === "comma" && n.type === "brace") {
          p === 1 && c.push(""), c.push("");
          continue;
        }
        if (d.type === "close") {
          o.push(Gi(o.pop(), c, l));
          continue;
        }
        if (d.value && d.type !== "open") {
          c.push(Gi(c.pop(), d.value));
          continue;
        }
        d.nodes && i(d, n);
      }
      return c;
    }, "walk");
    return vn.flatten(i(e));
  }, "expand");
  YD.exports = L8;
});

// ../node_modules/braces/lib/constants.js
var ZD = I((lW, QD) => {
  "use strict";
  QD.exports = {
    MAX_LENGTH: 1e4,
    // Digits
    CHAR_0: "0",
    /* 0 */
    CHAR_9: "9",
    /* 9 */
    // Alphabet chars.
    CHAR_UPPERCASE_A: "A",
    /* A */
    CHAR_LOWERCASE_A: "a",
    /* a */
    CHAR_UPPERCASE_Z: "Z",
    /* Z */
    CHAR_LOWERCASE_Z: "z",
    /* z */
    CHAR_LEFT_PARENTHESES: "(",
    /* ( */
    CHAR_RIGHT_PARENTHESES: ")",
    /* ) */
    CHAR_ASTERISK: "*",
    /* * */
    // Non-alphabetic chars.
    CHAR_AMPERSAND: "&",
    /* & */
    CHAR_AT: "@",
    /* @ */
    CHAR_BACKSLASH: "\\",
    /* \ */
    CHAR_BACKTICK: "`",
    /* ` */
    CHAR_CARRIAGE_RETURN: "\r",
    /* \r */
    CHAR_CIRCUMFLEX_ACCENT: "^",
    /* ^ */
    CHAR_COLON: ":",
    /* : */
    CHAR_COMMA: ",",
    /* , */
    CHAR_DOLLAR: "$",
    /* . */
    CHAR_DOT: ".",
    /* . */
    CHAR_DOUBLE_QUOTE: '"',
    /* " */
    CHAR_EQUAL: "=",
    /* = */
    CHAR_EXCLAMATION_MARK: "!",
    /* ! */
    CHAR_FORM_FEED: "\f",
    /* \f */
    CHAR_FORWARD_SLASH: "/",
    /* / */
    CHAR_HASH: "#",
    /* # */
    CHAR_HYPHEN_MINUS: "-",
    /* - */
    CHAR_LEFT_ANGLE_BRACKET: "<",
    /* < */
    CHAR_LEFT_CURLY_BRACE: "{",
    /* { */
    CHAR_LEFT_SQUARE_BRACKET: "[",
    /* [ */
    CHAR_LINE_FEED: `
`,
    /* \n */
    CHAR_NO_BREAK_SPACE: "\xA0",
    /* \u00A0 */
    CHAR_PERCENT: "%",
    /* % */
    CHAR_PLUS: "+",
    /* + */
    CHAR_QUESTION_MARK: "?",
    /* ? */
    CHAR_RIGHT_ANGLE_BRACKET: ">",
    /* > */
    CHAR_RIGHT_CURLY_BRACE: "}",
    /* } */
    CHAR_RIGHT_SQUARE_BRACKET: "]",
    /* ] */
    CHAR_SEMICOLON: ";",
    /* ; */
    CHAR_SINGLE_QUOTE: "'",
    /* ' */
    CHAR_SPACE: " ",
    /*   */
    CHAR_TAB: "	",
    /* \t */
    CHAR_UNDERSCORE: "_",
    /* _ */
    CHAR_VERTICAL_LINE: "|",
    /* | */
    CHAR_ZERO_WIDTH_NOBREAK_SPACE: "\uFEFF"
    /* \uFEFF */
  };
});

// ../node_modules/braces/lib/parse.js
var ng = I((cW, ig) => {
  "use strict";
  var M8 = Gu(), {
    MAX_LENGTH: eg,
    CHAR_BACKSLASH: ec,
    /* \ */
    CHAR_BACKTICK: j8,
    /* ` */
    CHAR_COMMA: q8,
    /* , */
    CHAR_DOT: $8,
    /* . */
    CHAR_LEFT_PARENTHESES: V8,
    /* ( */
    CHAR_RIGHT_PARENTHESES: U8,
    /* ) */
    CHAR_LEFT_CURLY_BRACE: z8,
    /* { */
    CHAR_RIGHT_CURLY_BRACE: H8,
    /* } */
    CHAR_LEFT_SQUARE_BRACKET: tg,
    /* [ */
    CHAR_RIGHT_SQUARE_BRACKET: rg,
    /* ] */
    CHAR_DOUBLE_QUOTE: W8,
    /* " */
    CHAR_SINGLE_QUOTE: J8,
    /* ' */
    CHAR_NO_BREAK_SPACE: G8,
    CHAR_ZERO_WIDTH_NOBREAK_SPACE: X8
  } = ZD(), Y8 = /* @__PURE__ */ s((e, t = {}) => {
    if (typeof e != "string")
      throw new TypeError("Expected a string");
    let r = t || {}, i = typeof r.maxLength == "number" ? Math.min(eg, r.maxLength) : eg;
    if (e.length > i)
      throw new SyntaxError(`Input length (${e.length}), exceeds max characters (${i})`);
    let n = { type: "root", input: e, nodes: [] }, u = [n], a = n, o = n, l = 0, c = e.length, h = 0, p = 0, d, m = /* @__PURE__ */ s(() => e[h++],
    "advance"), D = /* @__PURE__ */ s((g) => {
      if (g.type === "text" && o.type === "dot" && (o.type = "text"), o && o.type === "text" && g.type === "text") {
        o.value += g.value;
        return;
      }
      return a.nodes.push(g), g.parent = a, g.prev = o, o = g, g;
    }, "push");
    for (D({ type: "bos" }); h < c; )
      if (a = u[u.length - 1], d = m(), !(d === X8 || d === G8)) {
        if (d === ec) {
          D({ type: "text", value: (t.keepEscaping ? d : "") + m() });
          continue;
        }
        if (d === rg) {
          D({ type: "text", value: "\\" + d });
          continue;
        }
        if (d === tg) {
          l++;
          let g;
          for (; h < c && (g = m()); ) {
            if (d += g, g === tg) {
              l++;
              continue;
            }
            if (g === ec) {
              d += m();
              continue;
            }
            if (g === rg && (l--, l === 0))
              break;
          }
          D({ type: "text", value: d });
          continue;
        }
        if (d === V8) {
          a = D({ type: "paren", nodes: [] }), u.push(a), D({ type: "text", value: d });
          continue;
        }
        if (d === U8) {
          if (a.type !== "paren") {
            D({ type: "text", value: d });
            continue;
          }
          a = u.pop(), D({ type: "text", value: d }), a = u[u.length - 1];
          continue;
        }
        if (d === W8 || d === J8 || d === j8) {
          let g = d, v;
          for (t.keepQuotes !== !0 && (d = ""); h < c && (v = m()); ) {
            if (v === ec) {
              d += v + m();
              continue;
            }
            if (v === g) {
              t.keepQuotes === !0 && (d += v);
              break;
            }
            d += v;
          }
          D({ type: "text", value: d });
          continue;
        }
        if (d === z8) {
          p++;
          let v = {
            type: "brace",
            open: !0,
            close: !1,
            dollar: o.value && o.value.slice(-1) === "$" || a.dollar === !0,
            depth: p,
            commas: 0,
            ranges: 0,
            nodes: []
          };
          a = D(v), u.push(a), D({ type: "open", value: d });
          continue;
        }
        if (d === H8) {
          if (a.type !== "brace") {
            D({ type: "text", value: d });
            continue;
          }
          let g = "close";
          a = u.pop(), a.close = !0, D({ type: g, value: d }), p--, a = u[u.length - 1];
          continue;
        }
        if (d === q8 && p > 0) {
          if (a.ranges > 0) {
            a.ranges = 0;
            let g = a.nodes.shift();
            a.nodes = [g, { type: "text", value: M8(a) }];
          }
          D({ type: "comma", value: d }), a.commas++;
          continue;
        }
        if (d === $8 && p > 0 && a.commas === 0) {
          let g = a.nodes;
          if (p === 0 || g.length === 0) {
            D({ type: "text", value: d });
            continue;
          }
          if (o.type === "dot") {
            if (a.range = [], o.value += d, o.type = "range", a.nodes.length !== 3 && a.nodes.length !== 5) {
              a.invalid = !0, a.ranges = 0, o.type = "text";
              continue;
            }
            a.ranges++, a.args = [];
            continue;
          }
          if (o.type === "range") {
            g.pop();
            let v = g[g.length - 1];
            v.value += o.value + d, o = v, a.ranges--;
            continue;
          }
          D({ type: "dot", value: d });
          continue;
        }
        D({ type: "text", value: d });
      }
    do
      if (a = u.pop(), a.type !== "root") {
        a.nodes.forEach((x) => {
          x.nodes || (x.type === "open" && (x.isOpen = !0), x.type === "close" && (x.isClose = !0), x.nodes || (x.type = "text"), x.invalid =
          !0);
        });
        let g = u[u.length - 1], v = g.nodes.indexOf(a);
        g.nodes.splice(v, 1, ...a.nodes);
      }
    while (u.length > 0);
    return D({ type: "eos" }), n;
  }, "parse");
  ig.exports = Y8;
});

// ../node_modules/braces/index.js
var ag = I((pW, ug) => {
  "use strict";
  var sg = Gu(), K8 = GD(), Q8 = KD(), Z8 = ng(), It = /* @__PURE__ */ s((e, t = {}) => {
    let r = [];
    if (Array.isArray(e))
      for (let i of e) {
        let n = It.create(i, t);
        Array.isArray(n) ? r.push(...n) : r.push(n);
      }
    else
      r = [].concat(It.create(e, t));
    return t && t.expand === !0 && t.nodupes === !0 && (r = [...new Set(r)]), r;
  }, "braces");
  It.parse = (e, t = {}) => Z8(e, t);
  It.stringify = (e, t = {}) => sg(typeof e == "string" ? It.parse(e, t) : e, t);
  It.compile = (e, t = {}) => (typeof e == "string" && (e = It.parse(e, t)), K8(e, t));
  It.expand = (e, t = {}) => {
    typeof e == "string" && (e = It.parse(e, t));
    let r = Q8(e, t);
    return t.noempty === !0 && (r = r.filter(Boolean)), t.nodupes === !0 && (r = [...new Set(r)]), r;
  };
  It.create = (e, t = {}) => e === "" || e.length < 3 ? [e] : t.expand !== !0 ? It.compile(e, t) : It.expand(e, t);
  ug.exports = It;
});

// ../node_modules/picomatch/lib/constants.js
var Ss = I((dW, pg) => {
  "use strict";
  var eB = require("path"), Sr = "\\\\/", og = `[^${Sr}]`, Wr = "\\.", tB = "\\+", rB = "\\?", Ku = "\\/", iB = "(?=.)", lg = "[^/]", tc = `\
(?:${Ku}|$)`, cg = `(?:^|${Ku})`, rc = `${Wr}{1,2}${tc}`, nB = `(?!${Wr})`, sB = `(?!${cg}${rc})`, uB = `(?!${Wr}{0,1}${tc})`, aB = `(?!${rc}\
)`, oB = `[^.${Ku}]`, lB = `${lg}*?`, hg = {
    DOT_LITERAL: Wr,
    PLUS_LITERAL: tB,
    QMARK_LITERAL: rB,
    SLASH_LITERAL: Ku,
    ONE_CHAR: iB,
    QMARK: lg,
    END_ANCHOR: tc,
    DOTS_SLASH: rc,
    NO_DOT: nB,
    NO_DOTS: sB,
    NO_DOT_SLASH: uB,
    NO_DOTS_SLASH: aB,
    QMARK_NO_DOT: oB,
    STAR: lB,
    START_ANCHOR: cg
  }, cB = {
    ...hg,
    SLASH_LITERAL: `[${Sr}]`,
    QMARK: og,
    STAR: `${og}*?`,
    DOTS_SLASH: `${Wr}{1,2}(?:[${Sr}]|$)`,
    NO_DOT: `(?!${Wr})`,
    NO_DOTS: `(?!(?:^|[${Sr}])${Wr}{1,2}(?:[${Sr}]|$))`,
    NO_DOT_SLASH: `(?!${Wr}{0,1}(?:[${Sr}]|$))`,
    NO_DOTS_SLASH: `(?!${Wr}{1,2}(?:[${Sr}]|$))`,
    QMARK_NO_DOT: `[^.${Sr}]`,
    START_ANCHOR: `(?:^|[${Sr}])`,
    END_ANCHOR: `(?:[${Sr}]|$)`
  }, hB = {
    alnum: "a-zA-Z0-9",
    alpha: "a-zA-Z",
    ascii: "\\x00-\\x7F",
    blank: " \\t",
    cntrl: "\\x00-\\x1F\\x7F",
    digit: "0-9",
    graph: "\\x21-\\x7E",
    lower: "a-z",
    print: "\\x20-\\x7E ",
    punct: "\\-!\"#$%&'()\\*+,./:;<=>?@[\\]^_`{|}~",
    space: " \\t\\r\\n\\v\\f",
    upper: "A-Z",
    word: "A-Za-z0-9_",
    xdigit: "A-Fa-f0-9"
  };
  pg.exports = {
    MAX_LENGTH: 1024 * 64,
    POSIX_REGEX_SOURCE: hB,
    // regular expressions
    REGEX_BACKSLASH: /\\(?![*+?^${}(|)[\]])/g,
    REGEX_NON_SPECIAL_CHARS: /^[^@![\].,$*+?^{}()|\\/]+/,
    REGEX_SPECIAL_CHARS: /[-*+?.^${}(|)[\]]/,
    REGEX_SPECIAL_CHARS_BACKREF: /(\\?)((\W)(\3*))/g,
    REGEX_SPECIAL_CHARS_GLOBAL: /([-*+?.^${}(|)[\]])/g,
    REGEX_REMOVE_BACKSLASH: /(?:\[.*?[^\\]\]|\\(?=.))/g,
    // Replace globs with equivalent patterns to reduce parsing time.
    REPLACEMENTS: {
      "***": "*",
      "**/**": "**",
      "**/**/**": "**"
    },
    // Digits
    CHAR_0: 48,
    /* 0 */
    CHAR_9: 57,
    /* 9 */
    // Alphabet chars.
    CHAR_UPPERCASE_A: 65,
    /* A */
    CHAR_LOWERCASE_A: 97,
    /* a */
    CHAR_UPPERCASE_Z: 90,
    /* Z */
    CHAR_LOWERCASE_Z: 122,
    /* z */
    CHAR_LEFT_PARENTHESES: 40,
    /* ( */
    CHAR_RIGHT_PARENTHESES: 41,
    /* ) */
    CHAR_ASTERISK: 42,
    /* * */
    // Non-alphabetic chars.
    CHAR_AMPERSAND: 38,
    /* & */
    CHAR_AT: 64,
    /* @ */
    CHAR_BACKWARD_SLASH: 92,
    /* \ */
    CHAR_CARRIAGE_RETURN: 13,
    /* \r */
    CHAR_CIRCUMFLEX_ACCENT: 94,
    /* ^ */
    CHAR_COLON: 58,
    /* : */
    CHAR_COMMA: 44,
    /* , */
    CHAR_DOT: 46,
    /* . */
    CHAR_DOUBLE_QUOTE: 34,
    /* " */
    CHAR_EQUAL: 61,
    /* = */
    CHAR_EXCLAMATION_MARK: 33,
    /* ! */
    CHAR_FORM_FEED: 12,
    /* \f */
    CHAR_FORWARD_SLASH: 47,
    /* / */
    CHAR_GRAVE_ACCENT: 96,
    /* ` */
    CHAR_HASH: 35,
    /* # */
    CHAR_HYPHEN_MINUS: 45,
    /* - */
    CHAR_LEFT_ANGLE_BRACKET: 60,
    /* < */
    CHAR_LEFT_CURLY_BRACE: 123,
    /* { */
    CHAR_LEFT_SQUARE_BRACKET: 91,
    /* [ */
    CHAR_LINE_FEED: 10,
    /* \n */
    CHAR_NO_BREAK_SPACE: 160,
    /* \u00A0 */
    CHAR_PERCENT: 37,
    /* % */
    CHAR_PLUS: 43,
    /* + */
    CHAR_QUESTION_MARK: 63,
    /* ? */
    CHAR_RIGHT_ANGLE_BRACKET: 62,
    /* > */
    CHAR_RIGHT_CURLY_BRACE: 125,
    /* } */
    CHAR_RIGHT_SQUARE_BRACKET: 93,
    /* ] */
    CHAR_SEMICOLON: 59,
    /* ; */
    CHAR_SINGLE_QUOTE: 39,
    /* ' */
    CHAR_SPACE: 32,
    /*   */
    CHAR_TAB: 9,
    /* \t */
    CHAR_UNDERSCORE: 95,
    /* _ */
    CHAR_VERTICAL_LINE: 124,
    /* | */
    CHAR_ZERO_WIDTH_NOBREAK_SPACE: 65279,
    /* \uFEFF */
    SEP: eB.sep,
    /**
     * Create EXTGLOB_CHARS
     */
    extglobChars(e) {
      return {
        "!": { type: "negate", open: "(?:(?!(?:", close: `))${e.STAR})` },
        "?": { type: "qmark", open: "(?:", close: ")?" },
        "+": { type: "plus", open: "(?:", close: ")+" },
        "*": { type: "star", open: "(?:", close: ")*" },
        "@": { type: "at", open: "(?:", close: ")" }
      };
    },
    /**
     * Create GLOB_CHARS
     */
    globChars(e) {
      return e === !0 ? cB : hg;
    }
  };
});

// ../node_modules/picomatch/lib/utils.js
var _s = I((Ft) => {
  "use strict";
  var pB = require("path"), fB = process.platform === "win32", {
    REGEX_BACKSLASH: dB,
    REGEX_REMOVE_BACKSLASH: mB,
    REGEX_SPECIAL_CHARS: DB,
    REGEX_SPECIAL_CHARS_GLOBAL: gB
  } = Ss();
  Ft.isObject = (e) => e !== null && typeof e == "object" && !Array.isArray(e);
  Ft.hasRegexChars = (e) => DB.test(e);
  Ft.isRegexChar = (e) => e.length === 1 && Ft.hasRegexChars(e);
  Ft.escapeRegex = (e) => e.replace(gB, "\\$1");
  Ft.toPosixSlashes = (e) => e.replace(dB, "/");
  Ft.removeBackslashes = (e) => e.replace(mB, (t) => t === "\\" ? "" : t);
  Ft.supportsLookbehinds = () => {
    let e = process.version.slice(1).split(".").map(Number);
    return e.length === 3 && e[0] >= 9 || e[0] === 8 && e[1] >= 10;
  };
  Ft.isWindows = (e) => e && typeof e.windows == "boolean" ? e.windows : fB === !0 || pB.sep === "\\";
  Ft.escapeLast = (e, t, r) => {
    let i = e.lastIndexOf(t, r);
    return i === -1 ? e : e[i - 1] === "\\" ? Ft.escapeLast(e, t, i - 1) : `${e.slice(0, i)}\\${e.slice(i)}`;
  };
  Ft.removePrefix = (e, t = {}) => {
    let r = e;
    return r.startsWith("./") && (r = r.slice(2), t.prefix = "./"), r;
  };
  Ft.wrapOutput = (e, t = {}, r = {}) => {
    let i = r.contains ? "" : "^", n = r.contains ? "" : "$", u = `${i}(?:${e})${n}`;
    return t.negated === !0 && (u = `(?:^(?!${u}).*$)`), u;
  };
});

// ../node_modules/picomatch/lib/scan.js
var Eg = I((DW, yg) => {
  "use strict";
  var fg = _s(), {
    CHAR_ASTERISK: ic,
    /* * */
    CHAR_AT: xB,
    /* @ */
    CHAR_BACKWARD_SLASH: ks,
    /* \ */
    CHAR_COMMA: yB,
    /* , */
    CHAR_DOT: nc,
    /* . */
    CHAR_EXCLAMATION_MARK: sc,
    /* ! */
    CHAR_FORWARD_SLASH: xg,
    /* / */
    CHAR_LEFT_CURLY_BRACE: uc,
    /* { */
    CHAR_LEFT_PARENTHESES: ac,
    /* ( */
    CHAR_LEFT_SQUARE_BRACKET: EB,
    /* [ */
    CHAR_PLUS: bB,
    /* + */
    CHAR_QUESTION_MARK: dg,
    /* ? */
    CHAR_RIGHT_CURLY_BRACE: vB,
    /* } */
    CHAR_RIGHT_PARENTHESES: mg,
    /* ) */
    CHAR_RIGHT_SQUARE_BRACKET: CB
    /* ] */
  } = Ss(), Dg = /* @__PURE__ */ s((e) => e === xg || e === ks, "isPathSeparator"), gg = /* @__PURE__ */ s((e) => {
    e.isPrefix !== !0 && (e.depth = e.isGlobstar ? 1 / 0 : 1);
  }, "depth"), wB = /* @__PURE__ */ s((e, t) => {
    let r = t || {}, i = e.length - 1, n = r.parts === !0 || r.scanToEnd === !0, u = [], a = [], o = [], l = e, c = -1, h = 0, p = 0, d = !1,
    m = !1, D = !1, g = !1, v = !1, x = !1, C = !1, S = !1, k = !1, j = !1, w = 0, A, T, B = { value: "", depth: 0, isGlob: !1 }, $ = /* @__PURE__ */ s(
    () => c >= i, "eos"), L = /* @__PURE__ */ s(() => l.charCodeAt(c + 1), "peek"), V = /* @__PURE__ */ s(() => (A = T, l.charCodeAt(++c)), "\
advance");
    for (; c < i; ) {
      T = V();
      let z;
      if (T === ks) {
        C = B.backslashes = !0, T = V(), T === uc && (x = !0);
        continue;
      }
      if (x === !0 || T === uc) {
        for (w++; $() !== !0 && (T = V()); ) {
          if (T === ks) {
            C = B.backslashes = !0, V();
            continue;
          }
          if (T === uc) {
            w++;
            continue;
          }
          if (x !== !0 && T === nc && (T = V()) === nc) {
            if (d = B.isBrace = !0, D = B.isGlob = !0, j = !0, n === !0)
              continue;
            break;
          }
          if (x !== !0 && T === yB) {
            if (d = B.isBrace = !0, D = B.isGlob = !0, j = !0, n === !0)
              continue;
            break;
          }
          if (T === vB && (w--, w === 0)) {
            x = !1, d = B.isBrace = !0, j = !0;
            break;
          }
        }
        if (n === !0)
          continue;
        break;
      }
      if (T === xg) {
        if (u.push(c), a.push(B), B = { value: "", depth: 0, isGlob: !1 }, j === !0) continue;
        if (A === nc && c === h + 1) {
          h += 2;
          continue;
        }
        p = c + 1;
        continue;
      }
      if (r.noext !== !0 && (T === bB || T === xB || T === ic || T === dg || T === sc) === !0 && L() === ac) {
        if (D = B.isGlob = !0, g = B.isExtglob = !0, j = !0, T === sc && c === h && (k = !0), n === !0) {
          for (; $() !== !0 && (T = V()); ) {
            if (T === ks) {
              C = B.backslashes = !0, T = V();
              continue;
            }
            if (T === mg) {
              D = B.isGlob = !0, j = !0;
              break;
            }
          }
          continue;
        }
        break;
      }
      if (T === ic) {
        if (A === ic && (v = B.isGlobstar = !0), D = B.isGlob = !0, j = !0, n === !0)
          continue;
        break;
      }
      if (T === dg) {
        if (D = B.isGlob = !0, j = !0, n === !0)
          continue;
        break;
      }
      if (T === EB) {
        for (; $() !== !0 && (z = V()); ) {
          if (z === ks) {
            C = B.backslashes = !0, V();
            continue;
          }
          if (z === CB) {
            m = B.isBracket = !0, D = B.isGlob = !0, j = !0;
            break;
          }
        }
        if (n === !0)
          continue;
        break;
      }
      if (r.nonegate !== !0 && T === sc && c === h) {
        S = B.negated = !0, h++;
        continue;
      }
      if (r.noparen !== !0 && T === ac) {
        if (D = B.isGlob = !0, n === !0) {
          for (; $() !== !0 && (T = V()); ) {
            if (T === ac) {
              C = B.backslashes = !0, T = V();
              continue;
            }
            if (T === mg) {
              j = !0;
              break;
            }
          }
          continue;
        }
        break;
      }
      if (D === !0) {
        if (j = !0, n === !0)
          continue;
        break;
      }
    }
    r.noext === !0 && (g = !1, D = !1);
    let U = l, X = "", R = "";
    h > 0 && (X = l.slice(0, h), l = l.slice(h), p -= h), U && D === !0 && p > 0 ? (U = l.slice(0, p), R = l.slice(p)) : D === !0 ? (U = "",
    R = l) : U = l, U && U !== "" && U !== "/" && U !== l && Dg(U.charCodeAt(U.length - 1)) && (U = U.slice(0, -1)), r.unescape === !0 && (R &&
    (R = fg.removeBackslashes(R)), U && C === !0 && (U = fg.removeBackslashes(U)));
    let N = {
      prefix: X,
      input: e,
      start: h,
      base: U,
      glob: R,
      isBrace: d,
      isBracket: m,
      isGlob: D,
      isExtglob: g,
      isGlobstar: v,
      negated: S,
      negatedExtglob: k
    };
    if (r.tokens === !0 && (N.maxDepth = 0, Dg(T) || a.push(B), N.tokens = a), r.parts === !0 || r.tokens === !0) {
      let z;
      for (let Y = 0; Y < u.length; Y++) {
        let ee = z ? z + 1 : h, O = u[Y], ue = e.slice(ee, O);
        r.tokens && (Y === 0 && h !== 0 ? (a[Y].isPrefix = !0, a[Y].value = X) : a[Y].value = ue, gg(a[Y]), N.maxDepth += a[Y].depth), (Y !==
        0 || ue !== "") && o.push(ue), z = O;
      }
      if (z && z + 1 < e.length) {
        let Y = e.slice(z + 1);
        o.push(Y), r.tokens && (a[a.length - 1].value = Y, gg(a[a.length - 1]), N.maxDepth += a[a.length - 1].depth);
      }
      N.slashes = u, N.parts = o;
    }
    return N;
  }, "scan");
  yg.exports = wB;
});

// ../node_modules/picomatch/lib/parse.js
var Cg = I((xW, vg) => {
  "use strict";
  var Qu = Ss(), Ot = _s(), {
    MAX_LENGTH: Zu,
    POSIX_REGEX_SOURCE: AB,
    REGEX_NON_SPECIAL_CHARS: FB,
    REGEX_SPECIAL_CHARS_BACKREF: SB,
    REPLACEMENTS: bg
  } = Qu, _B = /* @__PURE__ */ s((e, t) => {
    if (typeof t.expandRange == "function")
      return t.expandRange(...e, t);
    e.sort();
    let r = `[${e.join("-")}]`;
    try {
      new RegExp(r);
    } catch {
      return e.map((n) => Ot.escapeRegex(n)).join("..");
    }
    return r;
  }, "expandRange"), Cn = /* @__PURE__ */ s((e, t) => `Missing ${e}: "${t}" - use "\\\\${t}" to match literal characters`, "syntaxError"), oc = /* @__PURE__ */ s(
  (e, t) => {
    if (typeof e != "string")
      throw new TypeError("Expected a string");
    e = bg[e] || e;
    let r = { ...t }, i = typeof r.maxLength == "number" ? Math.min(Zu, r.maxLength) : Zu, n = e.length;
    if (n > i)
      throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);
    let u = { type: "bos", value: "", output: r.prepend || "" }, a = [u], o = r.capture ? "" : "?:", l = Ot.isWindows(t), c = Qu.globChars(l),
    h = Qu.extglobChars(c), {
      DOT_LITERAL: p,
      PLUS_LITERAL: d,
      SLASH_LITERAL: m,
      ONE_CHAR: D,
      DOTS_SLASH: g,
      NO_DOT: v,
      NO_DOT_SLASH: x,
      NO_DOTS_SLASH: C,
      QMARK: S,
      QMARK_NO_DOT: k,
      STAR: j,
      START_ANCHOR: w
    } = c, A = /* @__PURE__ */ s((te) => `(${o}(?:(?!${w}${te.dot ? g : p}).)*?)`, "globstar"), T = r.dot ? "" : v, B = r.dot ? S : k, $ = r.
    bash === !0 ? A(r) : j;
    r.capture && ($ = `(${$})`), typeof r.noext == "boolean" && (r.noextglob = r.noext);
    let L = {
      input: e,
      index: -1,
      start: 0,
      dot: r.dot === !0,
      consumed: "",
      output: "",
      prefix: "",
      backtrack: !1,
      negated: !1,
      brackets: 0,
      braces: 0,
      parens: 0,
      quotes: 0,
      globstar: !1,
      tokens: a
    };
    e = Ot.removePrefix(e, L), n = e.length;
    let V = [], U = [], X = [], R = u, N, z = /* @__PURE__ */ s(() => L.index === n - 1, "eos"), Y = L.peek = (te = 1) => e[L.index + te], ee = L.
    advance = () => e[++L.index] || "", O = /* @__PURE__ */ s(() => e.slice(L.index + 1), "remaining"), ue = /* @__PURE__ */ s((te = "", me = 0) => {
      L.consumed += te, L.index += me;
    }, "consume"), ke = /* @__PURE__ */ s((te) => {
      L.output += te.output != null ? te.output : te.value, ue(te.value);
    }, "append"), M = /* @__PURE__ */ s(() => {
      let te = 1;
      for (; Y() === "!" && (Y(2) !== "(" || Y(3) === "?"); )
        ee(), L.start++, te++;
      return te % 2 === 0 ? !1 : (L.negated = !0, L.start++, !0);
    }, "negate"), we = /* @__PURE__ */ s((te) => {
      L[te]++, X.push(te);
    }, "increment"), Te = /* @__PURE__ */ s((te) => {
      L[te]--, X.pop();
    }, "decrement"), ae = /* @__PURE__ */ s((te) => {
      if (R.type === "globstar") {
        let me = L.braces > 0 && (te.type === "comma" || te.type === "brace"), K = te.extglob === !0 || V.length && (te.type === "pipe" || te.
        type === "paren");
        te.type !== "slash" && te.type !== "paren" && !me && !K && (L.output = L.output.slice(0, -R.output.length), R.type = "star", R.value =
        "*", R.output = $, L.output += R.output);
      }
      if (V.length && te.type !== "paren" && (V[V.length - 1].inner += te.value), (te.value || te.output) && ke(te), R && R.type === "text" &&
      te.type === "text") {
        R.value += te.value, R.output = (R.output || "") + te.value;
        return;
      }
      te.prev = R, a.push(te), R = te;
    }, "push"), st = /* @__PURE__ */ s((te, me) => {
      let K = { ...h[me], conditions: 1, inner: "" };
      K.prev = R, K.parens = L.parens, K.output = L.output;
      let le = (r.capture ? "(" : "") + K.open;
      we("parens"), ae({ type: te, value: me, output: L.output ? "" : D }), ae({ type: "paren", extglob: !0, value: ee(), output: le }), V.push(
      K);
    }, "extglobOpen"), Ie = /* @__PURE__ */ s((te) => {
      let me = te.close + (r.capture ? ")" : ""), K;
      if (te.type === "negate") {
        let le = $;
        if (te.inner && te.inner.length > 1 && te.inner.includes("/") && (le = A(r)), (le !== $ || z() || /^\)+$/.test(O())) && (me = te.close =
        `)$))${le}`), te.inner.includes("*") && (K = O()) && /^\.[^\\/.]+$/.test(K)) {
          let Fe = oc(K, { ...t, fastpaths: !1 }).output;
          me = te.close = `)${Fe})${le})`;
        }
        te.prev.type === "bos" && (L.negatedExtglob = !0);
      }
      ae({ type: "paren", extglob: !0, value: N, output: me }), Te("parens");
    }, "extglobClose");
    if (r.fastpaths !== !1 && !/(^[*!]|[/()[\]{}"])/.test(e)) {
      let te = !1, me = e.replace(SB, (K, le, Fe, Ge, Oe, jt) => Ge === "\\" ? (te = !0, K) : Ge === "?" ? le ? le + Ge + (Oe ? S.repeat(Oe.
      length) : "") : jt === 0 ? B + (Oe ? S.repeat(Oe.length) : "") : S.repeat(Fe.length) : Ge === "." ? p.repeat(Fe.length) : Ge === "*" ?
      le ? le + Ge + (Oe ? $ : "") : $ : le ? K : `\\${K}`);
      return te === !0 && (r.unescape === !0 ? me = me.replace(/\\/g, "") : me = me.replace(/\\+/g, (K) => K.length % 2 === 0 ? "\\\\" : K ?
      "\\" : "")), me === e && r.contains === !0 ? (L.output = e, L) : (L.output = Ot.wrapOutput(me, L, t), L);
    }
    for (; !z(); ) {
      if (N = ee(), N === "\0")
        continue;
      if (N === "\\") {
        let K = Y();
        if (K === "/" && r.bash !== !0 || K === "." || K === ";")
          continue;
        if (!K) {
          N += "\\", ae({ type: "text", value: N });
          continue;
        }
        let le = /^\\+/.exec(O()), Fe = 0;
        if (le && le[0].length > 2 && (Fe = le[0].length, L.index += Fe, Fe % 2 !== 0 && (N += "\\")), r.unescape === !0 ? N = ee() : N += ee(),
        L.brackets === 0) {
          ae({ type: "text", value: N });
          continue;
        }
      }
      if (L.brackets > 0 && (N !== "]" || R.value === "[" || R.value === "[^")) {
        if (r.posix !== !1 && N === ":") {
          let K = R.value.slice(1);
          if (K.includes("[") && (R.posix = !0, K.includes(":"))) {
            let le = R.value.lastIndexOf("["), Fe = R.value.slice(0, le), Ge = R.value.slice(le + 2), Oe = AB[Ge];
            if (Oe) {
              R.value = Fe + Oe, L.backtrack = !0, ee(), !u.output && a.indexOf(R) === 1 && (u.output = D);
              continue;
            }
          }
        }
        (N === "[" && Y() !== ":" || N === "-" && Y() === "]") && (N = `\\${N}`), N === "]" && (R.value === "[" || R.value === "[^") && (N =
        `\\${N}`), r.posix === !0 && N === "!" && R.value === "[" && (N = "^"), R.value += N, ke({ value: N });
        continue;
      }
      if (L.quotes === 1 && N !== '"') {
        N = Ot.escapeRegex(N), R.value += N, ke({ value: N });
        continue;
      }
      if (N === '"') {
        L.quotes = L.quotes === 1 ? 0 : 1, r.keepQuotes === !0 && ae({ type: "text", value: N });
        continue;
      }
      if (N === "(") {
        we("parens"), ae({ type: "paren", value: N });
        continue;
      }
      if (N === ")") {
        if (L.parens === 0 && r.strictBrackets === !0)
          throw new SyntaxError(Cn("opening", "("));
        let K = V[V.length - 1];
        if (K && L.parens === K.parens + 1) {
          Ie(V.pop());
          continue;
        }
        ae({ type: "paren", value: N, output: L.parens ? ")" : "\\)" }), Te("parens");
        continue;
      }
      if (N === "[") {
        if (r.nobracket === !0 || !O().includes("]")) {
          if (r.nobracket !== !0 && r.strictBrackets === !0)
            throw new SyntaxError(Cn("closing", "]"));
          N = `\\${N}`;
        } else
          we("brackets");
        ae({ type: "bracket", value: N });
        continue;
      }
      if (N === "]") {
        if (r.nobracket === !0 || R && R.type === "bracket" && R.value.length === 1) {
          ae({ type: "text", value: N, output: `\\${N}` });
          continue;
        }
        if (L.brackets === 0) {
          if (r.strictBrackets === !0)
            throw new SyntaxError(Cn("opening", "["));
          ae({ type: "text", value: N, output: `\\${N}` });
          continue;
        }
        Te("brackets");
        let K = R.value.slice(1);
        if (R.posix !== !0 && K[0] === "^" && !K.includes("/") && (N = `/${N}`), R.value += N, ke({ value: N }), r.literalBrackets === !1 ||
        Ot.hasRegexChars(K))
          continue;
        let le = Ot.escapeRegex(R.value);
        if (L.output = L.output.slice(0, -R.value.length), r.literalBrackets === !0) {
          L.output += le, R.value = le;
          continue;
        }
        R.value = `(${o}${le}|${R.value})`, L.output += R.value;
        continue;
      }
      if (N === "{" && r.nobrace !== !0) {
        we("braces");
        let K = {
          type: "brace",
          value: N,
          output: "(",
          outputIndex: L.output.length,
          tokensIndex: L.tokens.length
        };
        U.push(K), ae(K);
        continue;
      }
      if (N === "}") {
        let K = U[U.length - 1];
        if (r.nobrace === !0 || !K) {
          ae({ type: "text", value: N, output: N });
          continue;
        }
        let le = ")";
        if (K.dots === !0) {
          let Fe = a.slice(), Ge = [];
          for (let Oe = Fe.length - 1; Oe >= 0 && (a.pop(), Fe[Oe].type !== "brace"); Oe--)
            Fe[Oe].type !== "dots" && Ge.unshift(Fe[Oe].value);
          le = _B(Ge, r), L.backtrack = !0;
        }
        if (K.comma !== !0 && K.dots !== !0) {
          let Fe = L.output.slice(0, K.outputIndex), Ge = L.tokens.slice(K.tokensIndex);
          K.value = K.output = "\\{", N = le = "\\}", L.output = Fe;
          for (let Oe of Ge)
            L.output += Oe.output || Oe.value;
        }
        ae({ type: "brace", value: N, output: le }), Te("braces"), U.pop();
        continue;
      }
      if (N === "|") {
        V.length > 0 && V[V.length - 1].conditions++, ae({ type: "text", value: N });
        continue;
      }
      if (N === ",") {
        let K = N, le = U[U.length - 1];
        le && X[X.length - 1] === "braces" && (le.comma = !0, K = "|"), ae({ type: "comma", value: N, output: K });
        continue;
      }
      if (N === "/") {
        if (R.type === "dot" && L.index === L.start + 1) {
          L.start = L.index + 1, L.consumed = "", L.output = "", a.pop(), R = u;
          continue;
        }
        ae({ type: "slash", value: N, output: m });
        continue;
      }
      if (N === ".") {
        if (L.braces > 0 && R.type === "dot") {
          R.value === "." && (R.output = p);
          let K = U[U.length - 1];
          R.type = "dots", R.output += N, R.value += N, K.dots = !0;
          continue;
        }
        if (L.braces + L.parens === 0 && R.type !== "bos" && R.type !== "slash") {
          ae({ type: "text", value: N, output: p });
          continue;
        }
        ae({ type: "dot", value: N, output: p });
        continue;
      }
      if (N === "?") {
        if (!(R && R.value === "(") && r.noextglob !== !0 && Y() === "(" && Y(2) !== "?") {
          st("qmark", N);
          continue;
        }
        if (R && R.type === "paren") {
          let le = Y(), Fe = N;
          if (le === "<" && !Ot.supportsLookbehinds())
            throw new Error("Node.js v10 or higher is required for regex lookbehinds");
          (R.value === "(" && !/[!=<:]/.test(le) || le === "<" && !/<([!=]|\w+>)/.test(O())) && (Fe = `\\${N}`), ae({ type: "text", value: N,
          output: Fe });
          continue;
        }
        if (r.dot !== !0 && (R.type === "slash" || R.type === "bos")) {
          ae({ type: "qmark", value: N, output: k });
          continue;
        }
        ae({ type: "qmark", value: N, output: S });
        continue;
      }
      if (N === "!") {
        if (r.noextglob !== !0 && Y() === "(" && (Y(2) !== "?" || !/[!=<:]/.test(Y(3)))) {
          st("negate", N);
          continue;
        }
        if (r.nonegate !== !0 && L.index === 0) {
          M();
          continue;
        }
      }
      if (N === "+") {
        if (r.noextglob !== !0 && Y() === "(" && Y(2) !== "?") {
          st("plus", N);
          continue;
        }
        if (R && R.value === "(" || r.regex === !1) {
          ae({ type: "plus", value: N, output: d });
          continue;
        }
        if (R && (R.type === "bracket" || R.type === "paren" || R.type === "brace") || L.parens > 0) {
          ae({ type: "plus", value: N });
          continue;
        }
        ae({ type: "plus", value: d });
        continue;
      }
      if (N === "@") {
        if (r.noextglob !== !0 && Y() === "(" && Y(2) !== "?") {
          ae({ type: "at", extglob: !0, value: N, output: "" });
          continue;
        }
        ae({ type: "text", value: N });
        continue;
      }
      if (N !== "*") {
        (N === "$" || N === "^") && (N = `\\${N}`);
        let K = FB.exec(O());
        K && (N += K[0], L.index += K[0].length), ae({ type: "text", value: N });
        continue;
      }
      if (R && (R.type === "globstar" || R.star === !0)) {
        R.type = "star", R.star = !0, R.value += N, R.output = $, L.backtrack = !0, L.globstar = !0, ue(N);
        continue;
      }
      let te = O();
      if (r.noextglob !== !0 && /^\([^?]/.test(te)) {
        st("star", N);
        continue;
      }
      if (R.type === "star") {
        if (r.noglobstar === !0) {
          ue(N);
          continue;
        }
        let K = R.prev, le = K.prev, Fe = K.type === "slash" || K.type === "bos", Ge = le && (le.type === "star" || le.type === "globstar");
        if (r.bash === !0 && (!Fe || te[0] && te[0] !== "/")) {
          ae({ type: "star", value: N, output: "" });
          continue;
        }
        let Oe = L.braces > 0 && (K.type === "comma" || K.type === "brace"), jt = V.length && (K.type === "pipe" || K.type === "paren");
        if (!Fe && K.type !== "paren" && !Oe && !jt) {
          ae({ type: "star", value: N, output: "" });
          continue;
        }
        for (; te.slice(0, 3) === "/**"; ) {
          let vr = e[L.index + 4];
          if (vr && vr !== "/")
            break;
          te = te.slice(3), ue("/**", 3);
        }
        if (K.type === "bos" && z()) {
          R.type = "globstar", R.value += N, R.output = A(r), L.output = R.output, L.globstar = !0, ue(N);
          continue;
        }
        if (K.type === "slash" && K.prev.type !== "bos" && !Ge && z()) {
          L.output = L.output.slice(0, -(K.output + R.output).length), K.output = `(?:${K.output}`, R.type = "globstar", R.output = A(r) + (r.
          strictSlashes ? ")" : "|$)"), R.value += N, L.globstar = !0, L.output += K.output + R.output, ue(N);
          continue;
        }
        if (K.type === "slash" && K.prev.type !== "bos" && te[0] === "/") {
          let vr = te[1] !== void 0 ? "|$" : "";
          L.output = L.output.slice(0, -(K.output + R.output).length), K.output = `(?:${K.output}`, R.type = "globstar", R.output = `${A(r)}${m}\
|${m}${vr})`, R.value += N, L.output += K.output + R.output, L.globstar = !0, ue(N + ee()), ae({ type: "slash", value: "/", output: "" });
          continue;
        }
        if (K.type === "bos" && te[0] === "/") {
          R.type = "globstar", R.value += N, R.output = `(?:^|${m}|${A(r)}${m})`, L.output = R.output, L.globstar = !0, ue(N + ee()), ae({ type: "\
slash", value: "/", output: "" });
          continue;
        }
        L.output = L.output.slice(0, -R.output.length), R.type = "globstar", R.output = A(r), R.value += N, L.output += R.output, L.globstar =
        !0, ue(N);
        continue;
      }
      let me = { type: "star", value: N, output: $ };
      if (r.bash === !0) {
        me.output = ".*?", (R.type === "bos" || R.type === "slash") && (me.output = T + me.output), ae(me);
        continue;
      }
      if (R && (R.type === "bracket" || R.type === "paren") && r.regex === !0) {
        me.output = N, ae(me);
        continue;
      }
      (L.index === L.start || R.type === "slash" || R.type === "dot") && (R.type === "dot" ? (L.output += x, R.output += x) : r.dot === !0 ?
      (L.output += C, R.output += C) : (L.output += T, R.output += T), Y() !== "*" && (L.output += D, R.output += D)), ae(me);
    }
    for (; L.brackets > 0; ) {
      if (r.strictBrackets === !0) throw new SyntaxError(Cn("closing", "]"));
      L.output = Ot.escapeLast(L.output, "["), Te("brackets");
    }
    for (; L.parens > 0; ) {
      if (r.strictBrackets === !0) throw new SyntaxError(Cn("closing", ")"));
      L.output = Ot.escapeLast(L.output, "("), Te("parens");
    }
    for (; L.braces > 0; ) {
      if (r.strictBrackets === !0) throw new SyntaxError(Cn("closing", "}"));
      L.output = Ot.escapeLast(L.output, "{"), Te("braces");
    }
    if (r.strictSlashes !== !0 && (R.type === "star" || R.type === "bracket") && ae({ type: "maybe_slash", value: "", output: `${m}?` }), L.
    backtrack === !0) {
      L.output = "";
      for (let te of L.tokens)
        L.output += te.output != null ? te.output : te.value, te.suffix && (L.output += te.suffix);
    }
    return L;
  }, "parse");
  oc.fastpaths = (e, t) => {
    let r = { ...t }, i = typeof r.maxLength == "number" ? Math.min(Zu, r.maxLength) : Zu, n = e.length;
    if (n > i)
      throw new SyntaxError(`Input length: ${n}, exceeds maximum allowed length: ${i}`);
    e = bg[e] || e;
    let u = Ot.isWindows(t), {
      DOT_LITERAL: a,
      SLASH_LITERAL: o,
      ONE_CHAR: l,
      DOTS_SLASH: c,
      NO_DOT: h,
      NO_DOTS: p,
      NO_DOTS_SLASH: d,
      STAR: m,
      START_ANCHOR: D
    } = Qu.globChars(u), g = r.dot ? p : h, v = r.dot ? d : h, x = r.capture ? "" : "?:", C = { negated: !1, prefix: "" }, S = r.bash === !0 ?
    ".*?" : m;
    r.capture && (S = `(${S})`);
    let k = /* @__PURE__ */ s((T) => T.noglobstar === !0 ? S : `(${x}(?:(?!${D}${T.dot ? c : a}).)*?)`, "globstar"), j = /* @__PURE__ */ s((T) => {
      switch (T) {
        case "*":
          return `${g}${l}${S}`;
        case ".*":
          return `${a}${l}${S}`;
        case "*.*":
          return `${g}${S}${a}${l}${S}`;
        case "*/*":
          return `${g}${S}${o}${l}${v}${S}`;
        case "**":
          return g + k(r);
        case "**/*":
          return `(?:${g}${k(r)}${o})?${v}${l}${S}`;
        case "**/*.*":
          return `(?:${g}${k(r)}${o})?${v}${S}${a}${l}${S}`;
        case "**/.*":
          return `(?:${g}${k(r)}${o})?${a}${l}${S}`;
        default: {
          let B = /^(.*?)\.(\w+)$/.exec(T);
          if (!B) return;
          let $ = j(B[1]);
          return $ ? $ + a + B[2] : void 0;
        }
      }
    }, "create"), w = Ot.removePrefix(e, C), A = j(w);
    return A && r.strictSlashes !== !0 && (A += `${o}?`), A;
  };
  vg.exports = oc;
});

// ../node_modules/picomatch/lib/picomatch.js
var Ag = I((EW, wg) => {
  "use strict";
  var kB = require("path"), BB = Eg(), lc = Cg(), cc = _s(), TB = Ss(), PB = /* @__PURE__ */ s((e) => e && typeof e == "object" && !Array.isArray(
  e), "isObject"), Ye = /* @__PURE__ */ s((e, t, r = !1) => {
    if (Array.isArray(e)) {
      let h = e.map((d) => Ye(d, t, r));
      return /* @__PURE__ */ s((d) => {
        for (let m of h) {
          let D = m(d);
          if (D) return D;
        }
        return !1;
      }, "arrayMatcher");
    }
    let i = PB(e) && e.tokens && e.input;
    if (e === "" || typeof e != "string" && !i)
      throw new TypeError("Expected pattern to be a non-empty string");
    let n = t || {}, u = cc.isWindows(t), a = i ? Ye.compileRe(e, t) : Ye.makeRe(e, t, !1, !0), o = a.state;
    delete a.state;
    let l = /* @__PURE__ */ s(() => !1, "isIgnored");
    if (n.ignore) {
      let h = { ...t, ignore: null, onMatch: null, onResult: null };
      l = Ye(n.ignore, h, r);
    }
    let c = /* @__PURE__ */ s((h, p = !1) => {
      let { isMatch: d, match: m, output: D } = Ye.test(h, a, t, { glob: e, posix: u }), g = { glob: e, state: o, regex: a, posix: u, input: h,
      output: D, match: m, isMatch: d };
      return typeof n.onResult == "function" && n.onResult(g), d === !1 ? (g.isMatch = !1, p ? g : !1) : l(h) ? (typeof n.onIgnore == "funct\
ion" && n.onIgnore(g), g.isMatch = !1, p ? g : !1) : (typeof n.onMatch == "function" && n.onMatch(g), p ? g : !0);
    }, "matcher");
    return r && (c.state = o), c;
  }, "picomatch");
  Ye.test = (e, t, r, { glob: i, posix: n } = {}) => {
    if (typeof e != "string")
      throw new TypeError("Expected input to be a string");
    if (e === "")
      return { isMatch: !1, output: "" };
    let u = r || {}, a = u.format || (n ? cc.toPosixSlashes : null), o = e === i, l = o && a ? a(e) : e;
    return o === !1 && (l = a ? a(e) : e, o = l === i), (o === !1 || u.capture === !0) && (u.matchBase === !0 || u.basename === !0 ? o = Ye.
    matchBase(e, t, r, n) : o = t.exec(l)), { isMatch: !!o, match: o, output: l };
  };
  Ye.matchBase = (e, t, r, i = cc.isWindows(r)) => (t instanceof RegExp ? t : Ye.makeRe(t, r)).test(kB.basename(e));
  Ye.isMatch = (e, t, r) => Ye(t, r)(e);
  Ye.parse = (e, t) => Array.isArray(e) ? e.map((r) => Ye.parse(r, t)) : lc(e, { ...t, fastpaths: !1 });
  Ye.scan = (e, t) => BB(e, t);
  Ye.compileRe = (e, t, r = !1, i = !1) => {
    if (r === !0)
      return e.output;
    let n = t || {}, u = n.contains ? "" : "^", a = n.contains ? "" : "$", o = `${u}(?:${e.output})${a}`;
    e && e.negated === !0 && (o = `^(?!${o}).*$`);
    let l = Ye.toRegex(o, t);
    return i === !0 && (l.state = e), l;
  };
  Ye.makeRe = (e, t = {}, r = !1, i = !1) => {
    if (!e || typeof e != "string")
      throw new TypeError("Expected a non-empty string");
    let n = { negated: !1, fastpaths: !0 };
    return t.fastpaths !== !1 && (e[0] === "." || e[0] === "*") && (n.output = lc.fastpaths(e, t)), n.output || (n = lc(e, t)), Ye.compileRe(
    n, t, r, i);
  };
  Ye.toRegex = (e, t) => {
    try {
      let r = t || {};
      return new RegExp(e, r.flags || (r.nocase ? "i" : ""));
    } catch (r) {
      if (t && t.debug === !0) throw r;
      return /$^/;
    }
  };
  Ye.constants = TB;
  wg.exports = Ye;
});

// ../node_modules/picomatch/index.js
var Sg = I((vW, Fg) => {
  "use strict";
  Fg.exports = Ag();
});

// ../node_modules/micromatch/index.js
var Ig = I((CW, Pg) => {
  "use strict";
  var kg = require("util"), Bg = ag(), _r = Sg(), hc = _s(), _g = /* @__PURE__ */ s((e) => e === "" || e === "./", "isEmptyString"), Tg = /* @__PURE__ */ s(
  (e) => {
    let t = e.indexOf("{");
    return t > -1 && e.indexOf("}", t) > -1;
  }, "hasBraces"), je = /* @__PURE__ */ s((e, t, r) => {
    t = [].concat(t), e = [].concat(e);
    let i = /* @__PURE__ */ new Set(), n = /* @__PURE__ */ new Set(), u = /* @__PURE__ */ new Set(), a = 0, o = /* @__PURE__ */ s((h) => {
      u.add(h.output), r && r.onResult && r.onResult(h);
    }, "onResult");
    for (let h = 0; h < t.length; h++) {
      let p = _r(String(t[h]), { ...r, onResult: o }, !0), d = p.state.negated || p.state.negatedExtglob;
      d && a++;
      for (let m of e) {
        let D = p(m, !0);
        (d ? !D.isMatch : D.isMatch) && (d ? i.add(D.output) : (i.delete(D.output), n.add(D.output)));
      }
    }
    let c = (a === t.length ? [...u] : [...n]).filter((h) => !i.has(h));
    if (r && c.length === 0) {
      if (r.failglob === !0)
        throw new Error(`No matches found for "${t.join(", ")}"`);
      if (r.nonull === !0 || r.nullglob === !0)
        return r.unescape ? t.map((h) => h.replace(/\\/g, "")) : t;
    }
    return c;
  }, "micromatch");
  je.match = je;
  je.matcher = (e, t) => _r(e, t);
  je.isMatch = (e, t, r) => _r(t, r)(e);
  je.any = je.isMatch;
  je.not = (e, t, r = {}) => {
    t = [].concat(t).map(String);
    let i = /* @__PURE__ */ new Set(), n = [], u = /* @__PURE__ */ s((o) => {
      r.onResult && r.onResult(o), n.push(o.output);
    }, "onResult"), a = new Set(je(e, t, { ...r, onResult: u }));
    for (let o of n)
      a.has(o) || i.add(o);
    return [...i];
  };
  je.contains = (e, t, r) => {
    if (typeof e != "string")
      throw new TypeError(`Expected a string: "${kg.inspect(e)}"`);
    if (Array.isArray(t))
      return t.some((i) => je.contains(e, i, r));
    if (typeof t == "string") {
      if (_g(e) || _g(t))
        return !1;
      if (e.includes(t) || e.startsWith("./") && e.slice(2).includes(t))
        return !0;
    }
    return je.isMatch(e, t, { ...r, contains: !0 });
  };
  je.matchKeys = (e, t, r) => {
    if (!hc.isObject(e))
      throw new TypeError("Expected the first argument to be an object");
    let i = je(Object.keys(e), t, r), n = {};
    for (let u of i) n[u] = e[u];
    return n;
  };
  je.some = (e, t, r) => {
    let i = [].concat(e);
    for (let n of [].concat(t)) {
      let u = _r(String(n), r);
      if (i.some((a) => u(a)))
        return !0;
    }
    return !1;
  };
  je.every = (e, t, r) => {
    let i = [].concat(e);
    for (let n of [].concat(t)) {
      let u = _r(String(n), r);
      if (!i.every((a) => u(a)))
        return !1;
    }
    return !0;
  };
  je.all = (e, t, r) => {
    if (typeof e != "string")
      throw new TypeError(`Expected a string: "${kg.inspect(e)}"`);
    return [].concat(t).every((i) => _r(i, r)(e));
  };
  je.capture = (e, t, r) => {
    let i = hc.isWindows(r), u = _r.makeRe(String(e), { ...r, capture: !0 }).exec(i ? hc.toPosixSlashes(t) : t);
    if (u)
      return u.slice(1).map((a) => a === void 0 ? "" : a);
  };
  je.makeRe = (...e) => _r.makeRe(...e);
  je.scan = (...e) => _r.scan(...e);
  je.parse = (e, t) => {
    let r = [];
    for (let i of [].concat(e || []))
      for (let n of Bg(String(i), t))
        r.push(_r.parse(n, t));
    return r;
  };
  je.braces = (e, t) => {
    if (typeof e != "string") throw new TypeError("Expected a string");
    return t && t.nobrace === !0 || !Tg(e) ? [e] : Bg(e, t);
  };
  je.braceExpand = (e, t) => {
    if (typeof e != "string") throw new TypeError("Expected a string");
    return je.braces(e, { ...t, expand: !0 });
  };
  je.hasBraces = Tg;
  Pg.exports = je;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/pattern.js
var $g = I((he) => {
  "use strict";
  Object.defineProperty(he, "__esModule", { value: !0 });
  he.removeDuplicateSlashes = he.matchAny = he.convertPatternsToRe = he.makeRe = he.getPatternParts = he.expandBraceExpansion = he.expandPatternsWithBraceExpansion =
  he.isAffectDepthOfReadingPattern = he.endsWithSlashGlobStar = he.hasGlobStar = he.getBaseDirectory = he.isPatternRelatedToParentDirectory =
  he.getPatternsOutsideCurrentDirectory = he.getPatternsInsideCurrentDirectory = he.getPositivePatterns = he.getNegativePatterns = he.isPositivePattern =
  he.isNegativePattern = he.convertToNegativePattern = he.convertToPositivePattern = he.isDynamicPattern = he.isStaticPattern = void 0;
  var IB = require("path"), OB = AD(), pc = Ig(), Og = "**", RB = "\\", NB = /[*?]|^!/, LB = /\[[^[]*]/, MB = /(?:^|[^!*+?@])\([^(]*\|[^|]*\)/,
  jB = /[!*+?@]\([^(]*\)/, qB = /,|\.\./, $B = /(?!^)\/{2,}/g;
  function Rg(e, t = {}) {
    return !Ng(e, t);
  }
  s(Rg, "isStaticPattern");
  he.isStaticPattern = Rg;
  function Ng(e, t = {}) {
    return e === "" ? !1 : !!(t.caseSensitiveMatch === !1 || e.includes(RB) || NB.test(e) || LB.test(e) || MB.test(e) || t.extglob !== !1 &&
    jB.test(e) || t.braceExpansion !== !1 && VB(e));
  }
  s(Ng, "isDynamicPattern");
  he.isDynamicPattern = Ng;
  function VB(e) {
    let t = e.indexOf("{");
    if (t === -1)
      return !1;
    let r = e.indexOf("}", t + 1);
    if (r === -1)
      return !1;
    let i = e.slice(t, r);
    return qB.test(i);
  }
  s(VB, "hasBraceExpansion");
  function UB(e) {
    return ea(e) ? e.slice(1) : e;
  }
  s(UB, "convertToPositivePattern");
  he.convertToPositivePattern = UB;
  function zB(e) {
    return "!" + e;
  }
  s(zB, "convertToNegativePattern");
  he.convertToNegativePattern = zB;
  function ea(e) {
    return e.startsWith("!") && e[1] !== "(";
  }
  s(ea, "isNegativePattern");
  he.isNegativePattern = ea;
  function Lg(e) {
    return !ea(e);
  }
  s(Lg, "isPositivePattern");
  he.isPositivePattern = Lg;
  function HB(e) {
    return e.filter(ea);
  }
  s(HB, "getNegativePatterns");
  he.getNegativePatterns = HB;
  function WB(e) {
    return e.filter(Lg);
  }
  s(WB, "getPositivePatterns");
  he.getPositivePatterns = WB;
  function JB(e) {
    return e.filter((t) => !fc(t));
  }
  s(JB, "getPatternsInsideCurrentDirectory");
  he.getPatternsInsideCurrentDirectory = JB;
  function GB(e) {
    return e.filter(fc);
  }
  s(GB, "getPatternsOutsideCurrentDirectory");
  he.getPatternsOutsideCurrentDirectory = GB;
  function fc(e) {
    return e.startsWith("..") || e.startsWith("./..");
  }
  s(fc, "isPatternRelatedToParentDirectory");
  he.isPatternRelatedToParentDirectory = fc;
  function XB(e) {
    return OB(e, { flipBackslashes: !1 });
  }
  s(XB, "getBaseDirectory");
  he.getBaseDirectory = XB;
  function YB(e) {
    return e.includes(Og);
  }
  s(YB, "hasGlobStar");
  he.hasGlobStar = YB;
  function Mg(e) {
    return e.endsWith("/" + Og);
  }
  s(Mg, "endsWithSlashGlobStar");
  he.endsWithSlashGlobStar = Mg;
  function KB(e) {
    let t = IB.basename(e);
    return Mg(e) || Rg(t);
  }
  s(KB, "isAffectDepthOfReadingPattern");
  he.isAffectDepthOfReadingPattern = KB;
  function QB(e) {
    return e.reduce((t, r) => t.concat(jg(r)), []);
  }
  s(QB, "expandPatternsWithBraceExpansion");
  he.expandPatternsWithBraceExpansion = QB;
  function jg(e) {
    let t = pc.braces(e, { expand: !0, nodupes: !0, keepEscaping: !0 });
    return t.sort((r, i) => r.length - i.length), t.filter((r) => r !== "");
  }
  s(jg, "expandBraceExpansion");
  he.expandBraceExpansion = jg;
  function ZB(e, t) {
    let { parts: r } = pc.scan(e, Object.assign(Object.assign({}, t), { parts: !0 }));
    return r.length === 0 && (r = [e]), r[0].startsWith("/") && (r[0] = r[0].slice(1), r.unshift("")), r;
  }
  s(ZB, "getPatternParts");
  he.getPatternParts = ZB;
  function qg(e, t) {
    return pc.makeRe(e, t);
  }
  s(qg, "makeRe");
  he.makeRe = qg;
  function eT(e, t) {
    return e.map((r) => qg(r, t));
  }
  s(eT, "convertPatternsToRe");
  he.convertPatternsToRe = eT;
  function tT(e, t) {
    return t.some((r) => r.test(e));
  }
  s(tT, "matchAny");
  he.matchAny = tT;
  function rT(e) {
    return e.replace($B, "/");
  }
  s(rT, "removeDuplicateSlashes");
  he.removeDuplicateSlashes = rT;
});

// ../node_modules/merge2/index.js
var Hg = I((SW, zg) => {
  "use strict";
  var iT = require("stream"), Vg = iT.PassThrough, nT = Array.prototype.slice;
  zg.exports = sT;
  function sT() {
    let e = [], t = nT.call(arguments), r = !1, i = t[t.length - 1];
    i && !Array.isArray(i) && i.pipe == null ? t.pop() : i = {};
    let n = i.end !== !1, u = i.pipeError === !0;
    i.objectMode == null && (i.objectMode = !0), i.highWaterMark == null && (i.highWaterMark = 64 * 1024);
    let a = Vg(i);
    function o() {
      for (let h = 0, p = arguments.length; h < p; h++)
        e.push(Ug(arguments[h], i));
      return l(), this;
    }
    s(o, "addStream");
    function l() {
      if (r)
        return;
      r = !0;
      let h = e.shift();
      if (!h) {
        process.nextTick(c);
        return;
      }
      Array.isArray(h) || (h = [h]);
      let p = h.length + 1;
      function d() {
        --p > 0 || (r = !1, l());
      }
      s(d, "next");
      function m(D) {
        function g() {
          D.removeListener("merge2UnpipeEnd", g), D.removeListener("end", g), u && D.removeListener("error", v), d();
        }
        s(g, "onend");
        function v(x) {
          a.emit("error", x);
        }
        if (s(v, "onerror"), D._readableState.endEmitted)
          return d();
        D.on("merge2UnpipeEnd", g), D.on("end", g), u && D.on("error", v), D.pipe(a, { end: !1 }), D.resume();
      }
      s(m, "pipe");
      for (let D = 0; D < h.length; D++)
        m(h[D]);
      d();
    }
    s(l, "mergeStream");
    function c() {
      r = !1, a.emit("queueDrain"), n && a.end();
    }
    return s(c, "endStream"), a.setMaxListeners(0), a.add = o, a.on("unpipe", function(h) {
      h.emit("merge2UnpipeEnd");
    }), t.length && o.apply(null, t), a;
  }
  s(sT, "merge2");
  function Ug(e, t) {
    if (Array.isArray(e))
      for (let r = 0, i = e.length; r < i; r++)
        e[r] = Ug(e[r], t);
    else {
      if (!e._readableState && e.pipe && (e = e.pipe(Vg(t))), !e._readableState || !e.pause || !e.pipe)
        throw new Error("Only readable stream can be merged.");
      e.pause();
    }
    return e;
  }
  s(Ug, "pauseStreams");
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/stream.js
var Jg = I((ta) => {
  "use strict";
  Object.defineProperty(ta, "__esModule", { value: !0 });
  ta.merge = void 0;
  var uT = Hg();
  function aT(e) {
    let t = uT(e);
    return e.forEach((r) => {
      r.once("error", (i) => t.emit("error", i));
    }), t.once("close", () => Wg(e)), t.once("end", () => Wg(e)), t;
  }
  s(aT, "merge");
  ta.merge = aT;
  function Wg(e) {
    e.forEach((t) => t.emit("close"));
  }
  s(Wg, "propagateCloseEventToSources");
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/string.js
var Gg = I((wn) => {
  "use strict";
  Object.defineProperty(wn, "__esModule", { value: !0 });
  wn.isEmpty = wn.isString = void 0;
  function oT(e) {
    return typeof e == "string";
  }
  s(oT, "isString");
  wn.isString = oT;
  function lT(e) {
    return e === "";
  }
  s(lT, "isEmpty");
  wn.isEmpty = lT;
});

// ../node_modules/globby/node_modules/fast-glob/out/utils/index.js
var Jr = I((pt) => {
  "use strict";
  Object.defineProperty(pt, "__esModule", { value: !0 });
  pt.string = pt.stream = pt.pattern = pt.path = pt.fs = pt.errno = pt.array = void 0;
  var cT = pD();
  pt.array = cT;
  var hT = fD();
  pt.errno = hT;
  var pT = dD();
  pt.fs = pT;
  var fT = xD();
  pt.path = fT;
  var dT = $g();
  pt.pattern = dT;
  var mT = Jg();
  pt.stream = mT;
  var DT = Gg();
  pt.string = DT;
});

// ../node_modules/globby/node_modules/fast-glob/out/managers/tasks.js
var Qg = I((ft) => {
  "use strict";
  Object.defineProperty(ft, "__esModule", { value: !0 });
  ft.convertPatternGroupToTask = ft.convertPatternGroupsToTasks = ft.groupPatternsByBaseDirectory = ft.getNegativePatternsAsPositive = ft.getPositivePatterns =
  ft.convertPatternsToTasks = ft.generate = void 0;
  var or = Jr();
  function gT(e, t) {
    let r = Xg(e, t), i = Xg(t.ignore, t), n = Yg(r), u = Kg(r, i), a = n.filter((h) => or.pattern.isStaticPattern(h, t)), o = n.filter((h) => or.
    pattern.isDynamicPattern(h, t)), l = dc(
      a,
      u,
      /* dynamic */
      !1
    ), c = dc(
      o,
      u,
      /* dynamic */
      !0
    );
    return l.concat(c);
  }
  s(gT, "generate");
  ft.generate = gT;
  function Xg(e, t) {
    let r = e;
    return t.braceExpansion && (r = or.pattern.expandPatternsWithBraceExpansion(r)), t.baseNameMatch && (r = r.map((i) => i.includes("/") ? i :
    `**/${i}`)), r.map((i) => or.pattern.removeDuplicateSlashes(i));
  }
  s(Xg, "processPatterns");
  function dc(e, t, r) {
    let i = [], n = or.pattern.getPatternsOutsideCurrentDirectory(e), u = or.pattern.getPatternsInsideCurrentDirectory(e), a = mc(n), o = mc(
    u);
    return i.push(...Dc(a, t, r)), "." in o ? i.push(gc(".", u, t, r)) : i.push(...Dc(o, t, r)), i;
  }
  s(dc, "convertPatternsToTasks");
  ft.convertPatternsToTasks = dc;
  function Yg(e) {
    return or.pattern.getPositivePatterns(e);
  }
  s(Yg, "getPositivePatterns");
  ft.getPositivePatterns = Yg;
  function Kg(e, t) {
    return or.pattern.getNegativePatterns(e).concat(t).map(or.pattern.convertToPositivePattern);
  }
  s(Kg, "getNegativePatternsAsPositive");
  ft.getNegativePatternsAsPositive = Kg;
  function mc(e) {
    let t = {};
    return e.reduce((r, i) => {
      let n = or.pattern.getBaseDirectory(i);
      return n in r ? r[n].push(i) : r[n] = [i], r;
    }, t);
  }
  s(mc, "groupPatternsByBaseDirectory");
  ft.groupPatternsByBaseDirectory = mc;
  function Dc(e, t, r) {
    return Object.keys(e).map((i) => gc(i, e[i], t, r));
  }
  s(Dc, "convertPatternGroupsToTasks");
  ft.convertPatternGroupsToTasks = Dc;
  function gc(e, t, r, i) {
    return {
      dynamic: i,
      positive: t,
      negative: r,
      base: e,
      patterns: [].concat(t, r.map(or.pattern.convertToNegativePattern))
    };
  }
  s(gc, "convertPatternGroupToTask");
  ft.convertPatternGroupToTask = gc;
});

// ../node_modules/@nodelib/fs.stat/out/providers/async.js
var ex = I((ra) => {
  "use strict";
  Object.defineProperty(ra, "__esModule", { value: !0 });
  ra.read = void 0;
  function xT(e, t, r) {
    t.fs.lstat(e, (i, n) => {
      if (i !== null) {
        Zg(r, i);
        return;
      }
      if (!n.isSymbolicLink() || !t.followSymbolicLink) {
        xc(r, n);
        return;
      }
      t.fs.stat(e, (u, a) => {
        if (u !== null) {
          if (t.throwErrorOnBrokenSymbolicLink) {
            Zg(r, u);
            return;
          }
          xc(r, n);
          return;
        }
        t.markSymbolicLink && (a.isSymbolicLink = () => !0), xc(r, a);
      });
    });
  }
  s(xT, "read");
  ra.read = xT;
  function Zg(e, t) {
    e(t);
  }
  s(Zg, "callFailureCallback");
  function xc(e, t) {
    e(null, t);
  }
  s(xc, "callSuccessCallback");
});

// ../node_modules/@nodelib/fs.stat/out/providers/sync.js
var tx = I((ia) => {
  "use strict";
  Object.defineProperty(ia, "__esModule", { value: !0 });
  ia.read = void 0;
  function yT(e, t) {
    let r = t.fs.lstatSync(e);
    if (!r.isSymbolicLink() || !t.followSymbolicLink)
      return r;
    try {
      let i = t.fs.statSync(e);
      return t.markSymbolicLink && (i.isSymbolicLink = () => !0), i;
    } catch (i) {
      if (!t.throwErrorOnBrokenSymbolicLink)
        return r;
      throw i;
    }
  }
  s(yT, "read");
  ia.read = yT;
});

// ../node_modules/@nodelib/fs.stat/out/adapters/fs.js
var rx = I((Di) => {
  "use strict";
  Object.defineProperty(Di, "__esModule", { value: !0 });
  Di.createFileSystemAdapter = Di.FILE_SYSTEM_ADAPTER = void 0;
  var na = require("fs");
  Di.FILE_SYSTEM_ADAPTER = {
    lstat: na.lstat,
    stat: na.stat,
    lstatSync: na.lstatSync,
    statSync: na.statSync
  };
  function ET(e) {
    return e === void 0 ? Di.FILE_SYSTEM_ADAPTER : Object.assign(Object.assign({}, Di.FILE_SYSTEM_ADAPTER), e);
  }
  s(ET, "createFileSystemAdapter");
  Di.createFileSystemAdapter = ET;
});

// ../node_modules/@nodelib/fs.stat/out/settings.js
var ix = I((Ec) => {
  "use strict";
  Object.defineProperty(Ec, "__esModule", { value: !0 });
  var bT = rx(), yc = class {
    static {
      s(this, "Settings");
    }
    constructor(t = {}) {
      this._options = t, this.followSymbolicLink = this._getValue(this._options.followSymbolicLink, !0), this.fs = bT.createFileSystemAdapter(
      this._options.fs), this.markSymbolicLink = this._getValue(this._options.markSymbolicLink, !1), this.throwErrorOnBrokenSymbolicLink = this.
      _getValue(this._options.throwErrorOnBrokenSymbolicLink, !0);
    }
    _getValue(t, r) {
      return t ?? r;
    }
  };
  Ec.default = yc;
});

// ../node_modules/@nodelib/fs.stat/out/index.js
var Xi = I((gi) => {
  "use strict";
  Object.defineProperty(gi, "__esModule", { value: !0 });
  gi.statSync = gi.stat = gi.Settings = void 0;
  var nx = ex(), vT = tx(), bc = ix();
  gi.Settings = bc.default;
  function CT(e, t, r) {
    if (typeof t == "function") {
      nx.read(e, vc(), t);
      return;
    }
    nx.read(e, vc(t), r);
  }
  s(CT, "stat");
  gi.stat = CT;
  function wT(e, t) {
    let r = vc(t);
    return vT.read(e, r);
  }
  s(wT, "statSync");
  gi.statSync = wT;
  function vc(e = {}) {
    return e instanceof bc.default ? e : new bc.default(e);
  }
  s(vc, "getSettings");
});

// ../node_modules/queue-microtask/index.js
var ax = I((WW, ux) => {
  var sx;
  ux.exports = typeof queueMicrotask == "function" ? queueMicrotask.bind(typeof window < "u" ? window : global) : (e) => (sx || (sx = Promise.
  resolve())).then(e).catch((t) => setTimeout(() => {
    throw t;
  }, 0));
});

// ../node_modules/run-parallel/index.js
var lx = I((JW, ox) => {
  ox.exports = FT;
  var AT = ax();
  function FT(e, t) {
    let r, i, n, u = !0;
    Array.isArray(e) ? (r = [], i = e.length) : (n = Object.keys(e), r = {}, i = n.length);
    function a(l) {
      function c() {
        t && t(l, r), t = null;
      }
      s(c, "end"), u ? AT(c) : c();
    }
    s(a, "done");
    function o(l, c, h) {
      r[l] = h, (--i === 0 || c) && a(c);
    }
    s(o, "each"), i ? n ? n.forEach(function(l) {
      e[l](function(c, h) {
        o(l, c, h);
      });
    }) : e.forEach(function(l, c) {
      l(function(h, p) {
        o(c, h, p);
      });
    }) : a(null), u = !1;
  }
  s(FT, "runParallel");
});

// ../node_modules/@nodelib/fs.scandir/out/constants.js
var Cc = I((ua) => {
  "use strict";
  Object.defineProperty(ua, "__esModule", { value: !0 });
  ua.IS_SUPPORT_READDIR_WITH_FILE_TYPES = void 0;
  var sa = process.versions.node.split(".");
  if (sa[0] === void 0 || sa[1] === void 0)
    throw new Error(`Unexpected behavior. The 'process.versions.node' variable has invalid value: ${process.versions.node}`);
  var cx = Number.parseInt(sa[0], 10), ST = Number.parseInt(sa[1], 10), hx = 10, _T = 10, kT = cx > hx, BT = cx === hx && ST >= _T;
  ua.IS_SUPPORT_READDIR_WITH_FILE_TYPES = kT || BT;
});

// ../node_modules/@nodelib/fs.scandir/out/utils/fs.js
var px = I((aa) => {
  "use strict";
  Object.defineProperty(aa, "__esModule", { value: !0 });
  aa.createDirentFromStats = void 0;
  var wc = class {
    static {
      s(this, "DirentFromStats");
    }
    constructor(t, r) {
      this.name = t, this.isBlockDevice = r.isBlockDevice.bind(r), this.isCharacterDevice = r.isCharacterDevice.bind(r), this.isDirectory = r.
      isDirectory.bind(r), this.isFIFO = r.isFIFO.bind(r), this.isFile = r.isFile.bind(r), this.isSocket = r.isSocket.bind(r), this.isSymbolicLink =
      r.isSymbolicLink.bind(r);
    }
  };
  function TT(e, t) {
    return new wc(e, t);
  }
  s(TT, "createDirentFromStats");
  aa.createDirentFromStats = TT;
});

// ../node_modules/@nodelib/fs.scandir/out/utils/index.js
var Ac = I((oa) => {
  "use strict";
  Object.defineProperty(oa, "__esModule", { value: !0 });
  oa.fs = void 0;
  var PT = px();
  oa.fs = PT;
});

// ../node_modules/@nodelib/fs.scandir/out/providers/common.js
var Fc = I((la) => {
  "use strict";
  Object.defineProperty(la, "__esModule", { value: !0 });
  la.joinPathSegments = void 0;
  function IT(e, t, r) {
    return e.endsWith(r) ? e + t : e + r + t;
  }
  s(IT, "joinPathSegments");
  la.joinPathSegments = IT;
});

// ../node_modules/@nodelib/fs.scandir/out/providers/async.js
var xx = I((xi) => {
  "use strict";
  Object.defineProperty(xi, "__esModule", { value: !0 });
  xi.readdir = xi.readdirWithFileTypes = xi.read = void 0;
  var OT = Xi(), fx = lx(), RT = Cc(), dx = Ac(), mx = Fc();
  function NT(e, t, r) {
    if (!t.stats && RT.IS_SUPPORT_READDIR_WITH_FILE_TYPES) {
      Dx(e, t, r);
      return;
    }
    gx(e, t, r);
  }
  s(NT, "read");
  xi.read = NT;
  function Dx(e, t, r) {
    t.fs.readdir(e, { withFileTypes: !0 }, (i, n) => {
      if (i !== null) {
        ca(r, i);
        return;
      }
      let u = n.map((o) => ({
        dirent: o,
        name: o.name,
        path: mx.joinPathSegments(e, o.name, t.pathSegmentSeparator)
      }));
      if (!t.followSymbolicLinks) {
        Sc(r, u);
        return;
      }
      let a = u.map((o) => LT(o, t));
      fx(a, (o, l) => {
        if (o !== null) {
          ca(r, o);
          return;
        }
        Sc(r, l);
      });
    });
  }
  s(Dx, "readdirWithFileTypes");
  xi.readdirWithFileTypes = Dx;
  function LT(e, t) {
    return (r) => {
      if (!e.dirent.isSymbolicLink()) {
        r(null, e);
        return;
      }
      t.fs.stat(e.path, (i, n) => {
        if (i !== null) {
          if (t.throwErrorOnBrokenSymbolicLink) {
            r(i);
            return;
          }
          r(null, e);
          return;
        }
        e.dirent = dx.fs.createDirentFromStats(e.name, n), r(null, e);
      });
    };
  }
  s(LT, "makeRplTaskEntry");
  function gx(e, t, r) {
    t.fs.readdir(e, (i, n) => {
      if (i !== null) {
        ca(r, i);
        return;
      }
      let u = n.map((a) => {
        let o = mx.joinPathSegments(e, a, t.pathSegmentSeparator);
        return (l) => {
          OT.stat(o, t.fsStatSettings, (c, h) => {
            if (c !== null) {
              l(c);
              return;
            }
            let p = {
              name: a,
              path: o,
              dirent: dx.fs.createDirentFromStats(a, h)
            };
            t.stats && (p.stats = h), l(null, p);
          });
        };
      });
      fx(u, (a, o) => {
        if (a !== null) {
          ca(r, a);
          return;
        }
        Sc(r, o);
      });
    });
  }
  s(gx, "readdir");
  xi.readdir = gx;
  function ca(e, t) {
    e(t);
  }
  s(ca, "callFailureCallback");
  function Sc(e, t) {
    e(null, t);
  }
  s(Sc, "callSuccessCallback");
});

// ../node_modules/@nodelib/fs.scandir/out/providers/sync.js
var Cx = I((yi) => {
  "use strict";
  Object.defineProperty(yi, "__esModule", { value: !0 });
  yi.readdir = yi.readdirWithFileTypes = yi.read = void 0;
  var MT = Xi(), jT = Cc(), yx = Ac(), Ex = Fc();
  function qT(e, t) {
    return !t.stats && jT.IS_SUPPORT_READDIR_WITH_FILE_TYPES ? bx(e, t) : vx(e, t);
  }
  s(qT, "read");
  yi.read = qT;
  function bx(e, t) {
    return t.fs.readdirSync(e, { withFileTypes: !0 }).map((i) => {
      let n = {
        dirent: i,
        name: i.name,
        path: Ex.joinPathSegments(e, i.name, t.pathSegmentSeparator)
      };
      if (n.dirent.isSymbolicLink() && t.followSymbolicLinks)
        try {
          let u = t.fs.statSync(n.path);
          n.dirent = yx.fs.createDirentFromStats(n.name, u);
        } catch (u) {
          if (t.throwErrorOnBrokenSymbolicLink)
            throw u;
        }
      return n;
    });
  }
  s(bx, "readdirWithFileTypes");
  yi.readdirWithFileTypes = bx;
  function vx(e, t) {
    return t.fs.readdirSync(e).map((i) => {
      let n = Ex.joinPathSegments(e, i, t.pathSegmentSeparator), u = MT.statSync(n, t.fsStatSettings), a = {
        name: i,
        path: n,
        dirent: yx.fs.createDirentFromStats(i, u)
      };
      return t.stats && (a.stats = u), a;
    });
  }
  s(vx, "readdir");
  yi.readdir = vx;
});

// ../node_modules/@nodelib/fs.scandir/out/adapters/fs.js
var wx = I((Ei) => {
  "use strict";
  Object.defineProperty(Ei, "__esModule", { value: !0 });
  Ei.createFileSystemAdapter = Ei.FILE_SYSTEM_ADAPTER = void 0;
  var An = require("fs");
  Ei.FILE_SYSTEM_ADAPTER = {
    lstat: An.lstat,
    stat: An.stat,
    lstatSync: An.lstatSync,
    statSync: An.statSync,
    readdir: An.readdir,
    readdirSync: An.readdirSync
  };
  function $T(e) {
    return e === void 0 ? Ei.FILE_SYSTEM_ADAPTER : Object.assign(Object.assign({}, Ei.FILE_SYSTEM_ADAPTER), e);
  }
  s($T, "createFileSystemAdapter");
  Ei.createFileSystemAdapter = $T;
});

// ../node_modules/@nodelib/fs.scandir/out/settings.js
var Ax = I((kc) => {
  "use strict";
  Object.defineProperty(kc, "__esModule", { value: !0 });
  var VT = require("path"), UT = Xi(), zT = wx(), _c = class {
    static {
      s(this, "Settings");
    }
    constructor(t = {}) {
      this._options = t, this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, !1), this.fs = zT.createFileSystemAdapter(
      this._options.fs), this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, VT.sep), this.stats = this._getValue(
      this._options.stats, !1), this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, !0), this.
      fsStatSettings = new UT.Settings({
        followSymbolicLink: this.followSymbolicLinks,
        fs: this.fs,
        throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink
      });
    }
    _getValue(t, r) {
      return t ?? r;
    }
  };
  kc.default = _c;
});

// ../node_modules/@nodelib/fs.scandir/out/index.js
var ha = I((bi) => {
  "use strict";
  Object.defineProperty(bi, "__esModule", { value: !0 });
  bi.Settings = bi.scandirSync = bi.scandir = void 0;
  var Fx = xx(), HT = Cx(), Bc = Ax();
  bi.Settings = Bc.default;
  function WT(e, t, r) {
    if (typeof t == "function") {
      Fx.read(e, Tc(), t);
      return;
    }
    Fx.read(e, Tc(t), r);
  }
  s(WT, "scandir");
  bi.scandir = WT;
  function JT(e, t) {
    let r = Tc(t);
    return HT.read(e, r);
  }
  s(JT, "scandirSync");
  bi.scandirSync = JT;
  function Tc(e = {}) {
    return e instanceof Bc.default ? e : new Bc.default(e);
  }
  s(Tc, "getSettings");
});

// ../node_modules/reusify/reusify.js
var _x = I((hJ, Sx) => {
  "use strict";
  function GT(e) {
    var t = new e(), r = t;
    function i() {
      var u = t;
      return u.next ? t = u.next : (t = new e(), r = t), u.next = null, u;
    }
    s(i, "get");
    function n(u) {
      r.next = u, r = u;
    }
    return s(n, "release"), {
      get: i,
      release: n
    };
  }
  s(GT, "reusify");
  Sx.exports = GT;
});

// ../node_modules/fastq/queue.js
var Bx = I((fJ, Pc) => {
  "use strict";
  var XT = _x();
  function kx(e, t, r) {
    if (typeof e == "function" && (r = t, t = e, e = null), r < 1)
      throw new Error("fastqueue concurrency must be greater than 1");
    var i = XT(YT), n = null, u = null, a = 0, o = null, l = {
      push: g,
      drain: Vt,
      saturated: Vt,
      pause: h,
      paused: !1,
      concurrency: r,
      running: c,
      resume: m,
      idle: D,
      length: p,
      getQueue: d,
      unshift: v,
      empty: Vt,
      kill: C,
      killAndDrain: S,
      error: k
    };
    return l;
    function c() {
      return a;
    }
    function h() {
      l.paused = !0;
    }
    function p() {
      for (var j = n, w = 0; j; )
        j = j.next, w++;
      return w;
    }
    function d() {
      for (var j = n, w = []; j; )
        w.push(j.value), j = j.next;
      return w;
    }
    function m() {
      if (l.paused) {
        l.paused = !1;
        for (var j = 0; j < l.concurrency; j++)
          a++, x();
      }
    }
    function D() {
      return a === 0 && l.length() === 0;
    }
    function g(j, w) {
      var A = i.get();
      A.context = e, A.release = x, A.value = j, A.callback = w || Vt, A.errorHandler = o, a === l.concurrency || l.paused ? u ? (u.next = A,
      u = A) : (n = A, u = A, l.saturated()) : (a++, t.call(e, A.value, A.worked));
    }
    function v(j, w) {
      var A = i.get();
      A.context = e, A.release = x, A.value = j, A.callback = w || Vt, a === l.concurrency || l.paused ? n ? (A.next = n, n = A) : (n = A, u =
      A, l.saturated()) : (a++, t.call(e, A.value, A.worked));
    }
    function x(j) {
      j && i.release(j);
      var w = n;
      w ? l.paused ? a-- : (u === n && (u = null), n = w.next, w.next = null, t.call(e, w.value, w.worked), u === null && l.empty()) : --a ===
      0 && l.drain();
    }
    function C() {
      n = null, u = null, l.drain = Vt;
    }
    function S() {
      n = null, u = null, l.drain(), l.drain = Vt;
    }
    function k(j) {
      o = j;
    }
  }
  s(kx, "fastqueue");
  function Vt() {
  }
  s(Vt, "noop");
  function YT() {
    this.value = null, this.callback = Vt, this.next = null, this.release = Vt, this.context = null, this.errorHandler = null;
    var e = this;
    this.worked = /* @__PURE__ */ s(function(r, i) {
      var n = e.callback, u = e.errorHandler, a = e.value;
      e.value = null, e.callback = Vt, e.errorHandler && u(r, a), n.call(e.context, r, i), e.release(e);
    }, "worked");
  }
  s(YT, "Task");
  function KT(e, t, r) {
    typeof e == "function" && (r = t, t = e, e = null);
    function i(h, p) {
      t.call(this, h).then(function(d) {
        p(null, d);
      }, p);
    }
    s(i, "asyncWrapper");
    var n = kx(e, i, r), u = n.push, a = n.unshift;
    return n.push = o, n.unshift = l, n.drained = c, n;
    function o(h) {
      var p = new Promise(function(d, m) {
        u(h, function(D, g) {
          if (D) {
            m(D);
            return;
          }
          d(g);
        });
      });
      return p.catch(Vt), p;
    }
    s(o, "push");
    function l(h) {
      var p = new Promise(function(d, m) {
        a(h, function(D, g) {
          if (D) {
            m(D);
            return;
          }
          d(g);
        });
      });
      return p.catch(Vt), p;
    }
    s(l, "unshift");
    function c() {
      if (n.idle())
        return new Promise(function(d) {
          d();
        });
      var h = n.drain, p = new Promise(function(d) {
        n.drain = function() {
          h(), d();
        };
      });
      return p;
    }
    s(c, "drained");
  }
  s(KT, "queueAsPromised");
  Pc.exports = kx;
  Pc.exports.promise = KT;
});

// ../node_modules/@nodelib/fs.walk/out/readers/common.js
var pa = I((kr) => {
  "use strict";
  Object.defineProperty(kr, "__esModule", { value: !0 });
  kr.joinPathSegments = kr.replacePathSegmentSeparator = kr.isAppliedFilter = kr.isFatalError = void 0;
  function QT(e, t) {
    return e.errorFilter === null ? !0 : !e.errorFilter(t);
  }
  s(QT, "isFatalError");
  kr.isFatalError = QT;
  function ZT(e, t) {
    return e === null || e(t);
  }
  s(ZT, "isAppliedFilter");
  kr.isAppliedFilter = ZT;
  function eP(e, t) {
    return e.split(/[/\\]/).join(t);
  }
  s(eP, "replacePathSegmentSeparator");
  kr.replacePathSegmentSeparator = eP;
  function tP(e, t, r) {
    return e === "" ? t : e.endsWith(r) ? e + t : e + r + t;
  }
  s(tP, "joinPathSegments");
  kr.joinPathSegments = tP;
});

// ../node_modules/@nodelib/fs.walk/out/readers/reader.js
var Rc = I((Oc) => {
  "use strict";
  Object.defineProperty(Oc, "__esModule", { value: !0 });
  var rP = pa(), Ic = class {
    static {
      s(this, "Reader");
    }
    constructor(t, r) {
      this._root = t, this._settings = r, this._root = rP.replacePathSegmentSeparator(t, r.pathSegmentSeparator);
    }
  };
  Oc.default = Ic;
});

// ../node_modules/@nodelib/fs.walk/out/readers/async.js
var Mc = I((Lc) => {
  "use strict";
  Object.defineProperty(Lc, "__esModule", { value: !0 });
  var iP = require("events"), nP = ha(), sP = Bx(), fa = pa(), uP = Rc(), Nc = class extends uP.default {
    static {
      s(this, "AsyncReader");
    }
    constructor(t, r) {
      super(t, r), this._settings = r, this._scandir = nP.scandir, this._emitter = new iP.EventEmitter(), this._queue = sP(this._worker.bind(
      this), this._settings.concurrency), this._isFatalError = !1, this._isDestroyed = !1, this._queue.drain = () => {
        this._isFatalError || this._emitter.emit("end");
      };
    }
    read() {
      return this._isFatalError = !1, this._isDestroyed = !1, setImmediate(() => {
        this._pushToQueue(this._root, this._settings.basePath);
      }), this._emitter;
    }
    get isDestroyed() {
      return this._isDestroyed;
    }
    destroy() {
      if (this._isDestroyed)
        throw new Error("The reader is already destroyed");
      this._isDestroyed = !0, this._queue.killAndDrain();
    }
    onEntry(t) {
      this._emitter.on("entry", t);
    }
    onError(t) {
      this._emitter.once("error", t);
    }
    onEnd(t) {
      this._emitter.once("end", t);
    }
    _pushToQueue(t, r) {
      let i = { directory: t, base: r };
      this._queue.push(i, (n) => {
        n !== null && this._handleError(n);
      });
    }
    _worker(t, r) {
      this._scandir(t.directory, this._settings.fsScandirSettings, (i, n) => {
        if (i !== null) {
          r(i, void 0);
          return;
        }
        for (let u of n)
          this._handleEntry(u, t.base);
        r(null, void 0);
      });
    }
    _handleError(t) {
      this._isDestroyed || !fa.isFatalError(this._settings, t) || (this._isFatalError = !0, this._isDestroyed = !0, this._emitter.emit("erro\
r", t));
    }
    _handleEntry(t, r) {
      if (this._isDestroyed || this._isFatalError)
        return;
      let i = t.path;
      r !== void 0 && (t.path = fa.joinPathSegments(r, t.name, this._settings.pathSegmentSeparator)), fa.isAppliedFilter(this._settings.entryFilter,
      t) && this._emitEntry(t), t.dirent.isDirectory() && fa.isAppliedFilter(this._settings.deepFilter, t) && this._pushToQueue(i, r === void 0 ?
      void 0 : t.path);
    }
    _emitEntry(t) {
      this._emitter.emit("entry", t);
    }
  };
  Lc.default = Nc;
});

// ../node_modules/@nodelib/fs.walk/out/providers/async.js
var Tx = I((qc) => {
  "use strict";
  Object.defineProperty(qc, "__esModule", { value: !0 });
  var aP = Mc(), jc = class {
    static {
      s(this, "AsyncProvider");
    }
    constructor(t, r) {
      this._root = t, this._settings = r, this._reader = new aP.default(this._root, this._settings), this._storage = [];
    }
    read(t) {
      this._reader.onError((r) => {
        oP(t, r);
      }), this._reader.onEntry((r) => {
        this._storage.push(r);
      }), this._reader.onEnd(() => {
        lP(t, this._storage);
      }), this._reader.read();
    }
  };
  qc.default = jc;
  function oP(e, t) {
    e(t);
  }
  s(oP, "callFailureCallback");
  function lP(e, t) {
    e(null, t);
  }
  s(lP, "callSuccessCallback");
});

// ../node_modules/@nodelib/fs.walk/out/providers/stream.js
var Px = I((Vc) => {
  "use strict";
  Object.defineProperty(Vc, "__esModule", { value: !0 });
  var cP = require("stream"), hP = Mc(), $c = class {
    static {
      s(this, "StreamProvider");
    }
    constructor(t, r) {
      this._root = t, this._settings = r, this._reader = new hP.default(this._root, this._settings), this._stream = new cP.Readable({
        objectMode: !0,
        read: /* @__PURE__ */ s(() => {
        }, "read"),
        destroy: /* @__PURE__ */ s(() => {
          this._reader.isDestroyed || this._reader.destroy();
        }, "destroy")
      });
    }
    read() {
      return this._reader.onError((t) => {
        this._stream.emit("error", t);
      }), this._reader.onEntry((t) => {
        this._stream.push(t);
      }), this._reader.onEnd(() => {
        this._stream.push(null);
      }), this._reader.read(), this._stream;
    }
  };
  Vc.default = $c;
});

// ../node_modules/@nodelib/fs.walk/out/readers/sync.js
var Ix = I((zc) => {
  "use strict";
  Object.defineProperty(zc, "__esModule", { value: !0 });
  var pP = ha(), da = pa(), fP = Rc(), Uc = class extends fP.default {
    static {
      s(this, "SyncReader");
    }
    constructor() {
      super(...arguments), this._scandir = pP.scandirSync, this._storage = [], this._queue = /* @__PURE__ */ new Set();
    }
    read() {
      return this._pushToQueue(this._root, this._settings.basePath), this._handleQueue(), this._storage;
    }
    _pushToQueue(t, r) {
      this._queue.add({ directory: t, base: r });
    }
    _handleQueue() {
      for (let t of this._queue.values())
        this._handleDirectory(t.directory, t.base);
    }
    _handleDirectory(t, r) {
      try {
        let i = this._scandir(t, this._settings.fsScandirSettings);
        for (let n of i)
          this._handleEntry(n, r);
      } catch (i) {
        this._handleError(i);
      }
    }
    _handleError(t) {
      if (da.isFatalError(this._settings, t))
        throw t;
    }
    _handleEntry(t, r) {
      let i = t.path;
      r !== void 0 && (t.path = da.joinPathSegments(r, t.name, this._settings.pathSegmentSeparator)), da.isAppliedFilter(this._settings.entryFilter,
      t) && this._pushToStorage(t), t.dirent.isDirectory() && da.isAppliedFilter(this._settings.deepFilter, t) && this._pushToQueue(i, r ===
      void 0 ? void 0 : t.path);
    }
    _pushToStorage(t) {
      this._storage.push(t);
    }
  };
  zc.default = Uc;
});

// ../node_modules/@nodelib/fs.walk/out/providers/sync.js
var Ox = I((Wc) => {
  "use strict";
  Object.defineProperty(Wc, "__esModule", { value: !0 });
  var dP = Ix(), Hc = class {
    static {
      s(this, "SyncProvider");
    }
    constructor(t, r) {
      this._root = t, this._settings = r, this._reader = new dP.default(this._root, this._settings);
    }
    read() {
      return this._reader.read();
    }
  };
  Wc.default = Hc;
});

// ../node_modules/@nodelib/fs.walk/out/settings.js
var Rx = I((Gc) => {
  "use strict";
  Object.defineProperty(Gc, "__esModule", { value: !0 });
  var mP = require("path"), DP = ha(), Jc = class {
    static {
      s(this, "Settings");
    }
    constructor(t = {}) {
      this._options = t, this.basePath = this._getValue(this._options.basePath, void 0), this.concurrency = this._getValue(this._options.concurrency,
      Number.POSITIVE_INFINITY), this.deepFilter = this._getValue(this._options.deepFilter, null), this.entryFilter = this._getValue(this._options.
      entryFilter, null), this.errorFilter = this._getValue(this._options.errorFilter, null), this.pathSegmentSeparator = this._getValue(this.
      _options.pathSegmentSeparator, mP.sep), this.fsScandirSettings = new DP.Settings({
        followSymbolicLinks: this._options.followSymbolicLinks,
        fs: this._options.fs,
        pathSegmentSeparator: this._options.pathSegmentSeparator,
        stats: this._options.stats,
        throwErrorOnBrokenSymbolicLink: this._options.throwErrorOnBrokenSymbolicLink
      });
    }
    _getValue(t, r) {
      return t ?? r;
    }
  };
  Gc.default = Jc;
});

// ../node_modules/@nodelib/fs.walk/out/index.js
var Da = I((Br) => {
  "use strict";
  Object.defineProperty(Br, "__esModule", { value: !0 });
  Br.Settings = Br.walkStream = Br.walkSync = Br.walk = void 0;
  var Nx = Tx(), gP = Px(), xP = Ox(), Xc = Rx();
  Br.Settings = Xc.default;
  function yP(e, t, r) {
    if (typeof t == "function") {
      new Nx.default(e, ma()).read(t);
      return;
    }
    new Nx.default(e, ma(t)).read(r);
  }
  s(yP, "walk");
  Br.walk = yP;
  function EP(e, t) {
    let r = ma(t);
    return new xP.default(e, r).read();
  }
  s(EP, "walkSync");
  Br.walkSync = EP;
  function bP(e, t) {
    let r = ma(t);
    return new gP.default(e, r).read();
  }
  s(bP, "walkStream");
  Br.walkStream = bP;
  function ma(e = {}) {
    return e instanceof Xc.default ? e : new Xc.default(e);
  }
  s(ma, "getSettings");
});

// ../node_modules/globby/node_modules/fast-glob/out/readers/reader.js
var ga = I((Kc) => {
  "use strict";
  Object.defineProperty(Kc, "__esModule", { value: !0 });
  var vP = require("path"), CP = Xi(), Lx = Jr(), Yc = class {
    static {
      s(this, "Reader");
    }
    constructor(t) {
      this._settings = t, this._fsStatSettings = new CP.Settings({
        followSymbolicLink: this._settings.followSymbolicLinks,
        fs: this._settings.fs,
        throwErrorOnBrokenSymbolicLink: this._settings.followSymbolicLinks
      });
    }
    _getFullEntryPath(t) {
      return vP.resolve(this._settings.cwd, t);
    }
    _makeEntry(t, r) {
      let i = {
        name: r,
        path: r,
        dirent: Lx.fs.createDirentFromStats(r, t)
      };
      return this._settings.stats && (i.stats = t), i;
    }
    _isFatalError(t) {
      return !Lx.errno.isEnoentCodeError(t) && !this._settings.suppressErrors;
    }
  };
  Kc.default = Yc;
});

// ../node_modules/globby/node_modules/fast-glob/out/readers/stream.js
var eh = I((Zc) => {
  "use strict";
  Object.defineProperty(Zc, "__esModule", { value: !0 });
  var wP = require("stream"), AP = Xi(), FP = Da(), SP = ga(), Qc = class extends SP.default {
    static {
      s(this, "ReaderStream");
    }
    constructor() {
      super(...arguments), this._walkStream = FP.walkStream, this._stat = AP.stat;
    }
    dynamic(t, r) {
      return this._walkStream(t, r);
    }
    static(t, r) {
      let i = t.map(this._getFullEntryPath, this), n = new wP.PassThrough({ objectMode: !0 });
      n._write = (u, a, o) => this._getEntry(i[u], t[u], r).then((l) => {
        l !== null && r.entryFilter(l) && n.push(l), u === i.length - 1 && n.end(), o();
      }).catch(o);
      for (let u = 0; u < i.length; u++)
        n.write(u);
      return n;
    }
    _getEntry(t, r, i) {
      return this._getStat(t).then((n) => this._makeEntry(n, r)).catch((n) => {
        if (i.errorFilter(n))
          return null;
        throw n;
      });
    }
    _getStat(t) {
      return new Promise((r, i) => {
        this._stat(t, this._fsStatSettings, (n, u) => n === null ? r(u) : i(n));
      });
    }
  };
  Zc.default = Qc;
});

// ../node_modules/globby/node_modules/fast-glob/out/readers/async.js
var Mx = I((rh) => {
  "use strict";
  Object.defineProperty(rh, "__esModule", { value: !0 });
  var _P = Da(), kP = ga(), BP = eh(), th = class extends kP.default {
    static {
      s(this, "ReaderAsync");
    }
    constructor() {
      super(...arguments), this._walkAsync = _P.walk, this._readerStream = new BP.default(this._settings);
    }
    dynamic(t, r) {
      return new Promise((i, n) => {
        this._walkAsync(t, r, (u, a) => {
          u === null ? i(a) : n(u);
        });
      });
    }
    async static(t, r) {
      let i = [], n = this._readerStream.static(t, r);
      return new Promise((u, a) => {
        n.once("error", a), n.on("data", (o) => i.push(o)), n.once("end", () => u(i));
      });
    }
  };
  rh.default = th;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/matchers/matcher.js
var jx = I((nh) => {
  "use strict";
  Object.defineProperty(nh, "__esModule", { value: !0 });
  var Bs = Jr(), ih = class {
    static {
      s(this, "Matcher");
    }
    constructor(t, r, i) {
      this._patterns = t, this._settings = r, this._micromatchOptions = i, this._storage = [], this._fillStorage();
    }
    _fillStorage() {
      for (let t of this._patterns) {
        let r = this._getPatternSegments(t), i = this._splitSegmentsIntoSections(r);
        this._storage.push({
          complete: i.length <= 1,
          pattern: t,
          segments: r,
          sections: i
        });
      }
    }
    _getPatternSegments(t) {
      return Bs.pattern.getPatternParts(t, this._micromatchOptions).map((i) => Bs.pattern.isDynamicPattern(i, this._settings) ? {
        dynamic: !0,
        pattern: i,
        patternRe: Bs.pattern.makeRe(i, this._micromatchOptions)
      } : {
        dynamic: !1,
        pattern: i
      });
    }
    _splitSegmentsIntoSections(t) {
      return Bs.array.splitWhen(t, (r) => r.dynamic && Bs.pattern.hasGlobStar(r.pattern));
    }
  };
  nh.default = ih;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/matchers/partial.js
var qx = I((uh) => {
  "use strict";
  Object.defineProperty(uh, "__esModule", { value: !0 });
  var TP = jx(), sh = class extends TP.default {
    static {
      s(this, "PartialMatcher");
    }
    match(t) {
      let r = t.split("/"), i = r.length, n = this._storage.filter((u) => !u.complete || u.segments.length > i);
      for (let u of n) {
        let a = u.sections[0];
        if (!u.complete && i > a.length || r.every((l, c) => {
          let h = u.segments[c];
          return !!(h.dynamic && h.patternRe.test(l) || !h.dynamic && h.pattern === l);
        }))
          return !0;
      }
      return !1;
    }
  };
  uh.default = sh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/filters/deep.js
var $x = I((oh) => {
  "use strict";
  Object.defineProperty(oh, "__esModule", { value: !0 });
  var xa = Jr(), PP = qx(), ah = class {
    static {
      s(this, "DeepFilter");
    }
    constructor(t, r) {
      this._settings = t, this._micromatchOptions = r;
    }
    getFilter(t, r, i) {
      let n = this._getMatcher(r), u = this._getNegativePatternsRe(i);
      return (a) => this._filter(t, a, n, u);
    }
    _getMatcher(t) {
      return new PP.default(t, this._settings, this._micromatchOptions);
    }
    _getNegativePatternsRe(t) {
      let r = t.filter(xa.pattern.isAffectDepthOfReadingPattern);
      return xa.pattern.convertPatternsToRe(r, this._micromatchOptions);
    }
    _filter(t, r, i, n) {
      if (this._isSkippedByDeep(t, r.path) || this._isSkippedSymbolicLink(r))
        return !1;
      let u = xa.path.removeLeadingDotSegment(r.path);
      return this._isSkippedByPositivePatterns(u, i) ? !1 : this._isSkippedByNegativePatterns(u, n);
    }
    _isSkippedByDeep(t, r) {
      return this._settings.deep === 1 / 0 ? !1 : this._getEntryLevel(t, r) >= this._settings.deep;
    }
    _getEntryLevel(t, r) {
      let i = r.split("/").length;
      if (t === "")
        return i;
      let n = t.split("/").length;
      return i - n;
    }
    _isSkippedSymbolicLink(t) {
      return !this._settings.followSymbolicLinks && t.dirent.isSymbolicLink();
    }
    _isSkippedByPositivePatterns(t, r) {
      return !this._settings.baseNameMatch && !r.match(t);
    }
    _isSkippedByNegativePatterns(t, r) {
      return !xa.pattern.matchAny(t, r);
    }
  };
  oh.default = ah;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/filters/entry.js
var Vx = I((ch) => {
  "use strict";
  Object.defineProperty(ch, "__esModule", { value: !0 });
  var Yi = Jr(), lh = class {
    static {
      s(this, "EntryFilter");
    }
    constructor(t, r) {
      this._settings = t, this._micromatchOptions = r, this.index = /* @__PURE__ */ new Map();
    }
    getFilter(t, r) {
      let i = Yi.pattern.convertPatternsToRe(t, this._micromatchOptions), n = Yi.pattern.convertPatternsToRe(r, Object.assign(Object.assign(
      {}, this._micromatchOptions), { dot: !0 }));
      return (u) => this._filter(u, i, n);
    }
    _filter(t, r, i) {
      let n = Yi.path.removeLeadingDotSegment(t.path);
      if (this._settings.unique && this._isDuplicateEntry(n) || this._onlyFileFilter(t) || this._onlyDirectoryFilter(t) || this._isSkippedByAbsoluteNegativePatterns(
      n, i))
        return !1;
      let u = t.dirent.isDirectory(), a = this._isMatchToPatterns(n, r, u) && !this._isMatchToPatterns(n, i, u);
      return this._settings.unique && a && this._createIndexRecord(n), a;
    }
    _isDuplicateEntry(t) {
      return this.index.has(t);
    }
    _createIndexRecord(t) {
      this.index.set(t, void 0);
    }
    _onlyFileFilter(t) {
      return this._settings.onlyFiles && !t.dirent.isFile();
    }
    _onlyDirectoryFilter(t) {
      return this._settings.onlyDirectories && !t.dirent.isDirectory();
    }
    _isSkippedByAbsoluteNegativePatterns(t, r) {
      if (!this._settings.absolute)
        return !1;
      let i = Yi.path.makeAbsolute(this._settings.cwd, t);
      return Yi.pattern.matchAny(i, r);
    }
    _isMatchToPatterns(t, r, i) {
      let n = Yi.pattern.matchAny(t, r);
      return !n && i ? Yi.pattern.matchAny(t + "/", r) : n;
    }
  };
  ch.default = lh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/filters/error.js
var Ux = I((ph) => {
  "use strict";
  Object.defineProperty(ph, "__esModule", { value: !0 });
  var IP = Jr(), hh = class {
    static {
      s(this, "ErrorFilter");
    }
    constructor(t) {
      this._settings = t;
    }
    getFilter() {
      return (t) => this._isNonFatalError(t);
    }
    _isNonFatalError(t) {
      return IP.errno.isEnoentCodeError(t) || this._settings.suppressErrors;
    }
  };
  ph.default = hh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/transformers/entry.js
var Hx = I((dh) => {
  "use strict";
  Object.defineProperty(dh, "__esModule", { value: !0 });
  var zx = Jr(), fh = class {
    static {
      s(this, "EntryTransformer");
    }
    constructor(t) {
      this._settings = t;
    }
    getTransformer() {
      return (t) => this._transform(t);
    }
    _transform(t) {
      let r = t.path;
      return this._settings.absolute && (r = zx.path.makeAbsolute(this._settings.cwd, r), r = zx.path.unixify(r)), this._settings.markDirectories &&
      t.dirent.isDirectory() && (r += "/"), this._settings.objectMode ? Object.assign(Object.assign({}, t), { path: r }) : r;
    }
  };
  dh.default = fh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/provider.js
var ya = I((Dh) => {
  "use strict";
  Object.defineProperty(Dh, "__esModule", { value: !0 });
  var OP = require("path"), RP = $x(), NP = Vx(), LP = Ux(), MP = Hx(), mh = class {
    static {
      s(this, "Provider");
    }
    constructor(t) {
      this._settings = t, this.errorFilter = new LP.default(this._settings), this.entryFilter = new NP.default(this._settings, this._getMicromatchOptions()),
      this.deepFilter = new RP.default(this._settings, this._getMicromatchOptions()), this.entryTransformer = new MP.default(this._settings);
    }
    _getRootDirectory(t) {
      return OP.resolve(this._settings.cwd, t.base);
    }
    _getReaderOptions(t) {
      let r = t.base === "." ? "" : t.base;
      return {
        basePath: r,
        pathSegmentSeparator: "/",
        concurrency: this._settings.concurrency,
        deepFilter: this.deepFilter.getFilter(r, t.positive, t.negative),
        entryFilter: this.entryFilter.getFilter(t.positive, t.negative),
        errorFilter: this.errorFilter.getFilter(),
        followSymbolicLinks: this._settings.followSymbolicLinks,
        fs: this._settings.fs,
        stats: this._settings.stats,
        throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink,
        transform: this.entryTransformer.getTransformer()
      };
    }
    _getMicromatchOptions() {
      return {
        dot: this._settings.dot,
        matchBase: this._settings.baseNameMatch,
        nobrace: !this._settings.braceExpansion,
        nocase: !this._settings.caseSensitiveMatch,
        noext: !this._settings.extglob,
        noglobstar: !this._settings.globstar,
        posix: !0,
        strictSlashes: !1
      };
    }
  };
  Dh.default = mh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/async.js
var Wx = I((xh) => {
  "use strict";
  Object.defineProperty(xh, "__esModule", { value: !0 });
  var jP = Mx(), qP = ya(), gh = class extends qP.default {
    static {
      s(this, "ProviderAsync");
    }
    constructor() {
      super(...arguments), this._reader = new jP.default(this._settings);
    }
    async read(t) {
      let r = this._getRootDirectory(t), i = this._getReaderOptions(t);
      return (await this.api(r, t, i)).map((u) => i.transform(u));
    }
    api(t, r, i) {
      return r.dynamic ? this._reader.dynamic(t, i) : this._reader.static(r.patterns, i);
    }
  };
  xh.default = gh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/stream.js
var Jx = I((Eh) => {
  "use strict";
  Object.defineProperty(Eh, "__esModule", { value: !0 });
  var $P = require("stream"), VP = eh(), UP = ya(), yh = class extends UP.default {
    static {
      s(this, "ProviderStream");
    }
    constructor() {
      super(...arguments), this._reader = new VP.default(this._settings);
    }
    read(t) {
      let r = this._getRootDirectory(t), i = this._getReaderOptions(t), n = this.api(r, t, i), u = new $P.Readable({ objectMode: !0, read: /* @__PURE__ */ s(
      () => {
      }, "read") });
      return n.once("error", (a) => u.emit("error", a)).on("data", (a) => u.emit("data", i.transform(a))).once("end", () => u.emit("end")), u.
      once("close", () => n.destroy()), u;
    }
    api(t, r, i) {
      return r.dynamic ? this._reader.dynamic(t, i) : this._reader.static(r.patterns, i);
    }
  };
  Eh.default = yh;
});

// ../node_modules/globby/node_modules/fast-glob/out/readers/sync.js
var Gx = I((vh) => {
  "use strict";
  Object.defineProperty(vh, "__esModule", { value: !0 });
  var zP = Xi(), HP = Da(), WP = ga(), bh = class extends WP.default {
    static {
      s(this, "ReaderSync");
    }
    constructor() {
      super(...arguments), this._walkSync = HP.walkSync, this._statSync = zP.statSync;
    }
    dynamic(t, r) {
      return this._walkSync(t, r);
    }
    static(t, r) {
      let i = [];
      for (let n of t) {
        let u = this._getFullEntryPath(n), a = this._getEntry(u, n, r);
        a === null || !r.entryFilter(a) || i.push(a);
      }
      return i;
    }
    _getEntry(t, r, i) {
      try {
        let n = this._getStat(t);
        return this._makeEntry(n, r);
      } catch (n) {
        if (i.errorFilter(n))
          return null;
        throw n;
      }
    }
    _getStat(t) {
      return this._statSync(t, this._fsStatSettings);
    }
  };
  vh.default = bh;
});

// ../node_modules/globby/node_modules/fast-glob/out/providers/sync.js
var Xx = I((wh) => {
  "use strict";
  Object.defineProperty(wh, "__esModule", { value: !0 });
  var JP = Gx(), GP = ya(), Ch = class extends GP.default {
    static {
      s(this, "ProviderSync");
    }
    constructor() {
      super(...arguments), this._reader = new JP.default(this._settings);
    }
    read(t) {
      let r = this._getRootDirectory(t), i = this._getReaderOptions(t);
      return this.api(r, t, i).map(i.transform);
    }
    api(t, r, i) {
      return r.dynamic ? this._reader.dynamic(t, i) : this._reader.static(r.patterns, i);
    }
  };
  wh.default = Ch;
});

// ../node_modules/globby/node_modules/fast-glob/out/settings.js
var Yx = I((Sn) => {
  "use strict";
  Object.defineProperty(Sn, "__esModule", { value: !0 });
  Sn.DEFAULT_FILE_SYSTEM_ADAPTER = void 0;
  var Fn = require("fs"), XP = require("os"), YP = Math.max(XP.cpus().length, 1);
  Sn.DEFAULT_FILE_SYSTEM_ADAPTER = {
    lstat: Fn.lstat,
    lstatSync: Fn.lstatSync,
    stat: Fn.stat,
    statSync: Fn.statSync,
    readdir: Fn.readdir,
    readdirSync: Fn.readdirSync
  };
  var Ah = class {
    static {
      s(this, "Settings");
    }
    constructor(t = {}) {
      this._options = t, this.absolute = this._getValue(this._options.absolute, !1), this.baseNameMatch = this._getValue(this._options.baseNameMatch,
      !1), this.braceExpansion = this._getValue(this._options.braceExpansion, !0), this.caseSensitiveMatch = this._getValue(this._options.caseSensitiveMatch,
      !0), this.concurrency = this._getValue(this._options.concurrency, YP), this.cwd = this._getValue(this._options.cwd, process.cwd()), this.
      deep = this._getValue(this._options.deep, 1 / 0), this.dot = this._getValue(this._options.dot, !1), this.extglob = this._getValue(this.
      _options.extglob, !0), this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, !0), this.fs = this._getFileSystemMethods(
      this._options.fs), this.globstar = this._getValue(this._options.globstar, !0), this.ignore = this._getValue(this._options.ignore, []),
      this.markDirectories = this._getValue(this._options.markDirectories, !1), this.objectMode = this._getValue(this._options.objectMode, !1),
      this.onlyDirectories = this._getValue(this._options.onlyDirectories, !1), this.onlyFiles = this._getValue(this._options.onlyFiles, !0),
      this.stats = this._getValue(this._options.stats, !1), this.suppressErrors = this._getValue(this._options.suppressErrors, !1), this.throwErrorOnBrokenSymbolicLink =
      this._getValue(this._options.throwErrorOnBrokenSymbolicLink, !1), this.unique = this._getValue(this._options.unique, !0), this.onlyDirectories &&
      (this.onlyFiles = !1), this.stats && (this.objectMode = !0), this.ignore = [].concat(this.ignore);
    }
    _getValue(t, r) {
      return t === void 0 ? r : t;
    }
    _getFileSystemMethods(t = {}) {
      return Object.assign(Object.assign({}, Sn.DEFAULT_FILE_SYSTEM_ADAPTER), t);
    }
  };
  Sn.default = Ah;
});

// ../node_modules/globby/node_modules/fast-glob/out/index.js
var kh = I((lG, Qx) => {
  "use strict";
  var Kx = Qg(), KP = Wx(), QP = Jx(), ZP = Xx(), Fh = Yx(), Ut = Jr();
  async function Sh(e, t) {
    lr(e);
    let r = _h(e, KP.default, t), i = await Promise.all(r);
    return Ut.array.flatten(i);
  }
  s(Sh, "FastGlob");
  (function(e) {
    e.glob = e, e.globSync = t, e.globStream = r, e.async = e;
    function t(c, h) {
      lr(c);
      let p = _h(c, ZP.default, h);
      return Ut.array.flatten(p);
    }
    s(t, "sync"), e.sync = t;
    function r(c, h) {
      lr(c);
      let p = _h(c, QP.default, h);
      return Ut.stream.merge(p);
    }
    s(r, "stream"), e.stream = r;
    function i(c, h) {
      lr(c);
      let p = [].concat(c), d = new Fh.default(h);
      return Kx.generate(p, d);
    }
    s(i, "generateTasks"), e.generateTasks = i;
    function n(c, h) {
      lr(c);
      let p = new Fh.default(h);
      return Ut.pattern.isDynamicPattern(c, p);
    }
    s(n, "isDynamicPattern"), e.isDynamicPattern = n;
    function u(c) {
      return lr(c), Ut.path.escape(c);
    }
    s(u, "escapePath"), e.escapePath = u;
    function a(c) {
      return lr(c), Ut.path.convertPathToPattern(c);
    }
    s(a, "convertPathToPattern"), e.convertPathToPattern = a;
    let o;
    (function(c) {
      function h(d) {
        return lr(d), Ut.path.escapePosixPath(d);
      }
      s(h, "escapePath"), c.escapePath = h;
      function p(d) {
        return lr(d), Ut.path.convertPosixPathToPattern(d);
      }
      s(p, "convertPathToPattern"), c.convertPathToPattern = p;
    })(o = e.posix || (e.posix = {}));
    let l;
    (function(c) {
      function h(d) {
        return lr(d), Ut.path.escapeWindowsPath(d);
      }
      s(h, "escapePath"), c.escapePath = h;
      function p(d) {
        return lr(d), Ut.path.convertWindowsPathToPattern(d);
      }
      s(p, "convertPathToPattern"), c.convertPathToPattern = p;
    })(l = e.win32 || (e.win32 = {}));
  })(Sh || (Sh = {}));
  function _h(e, t, r) {
    let i = [].concat(e), n = new Fh.default(r), u = Kx.generate(i, n), a = new t(n);
    return u.map(a.read, a);
  }
  s(_h, "getWorks");
  function lr(e) {
    if (![].concat(e).every((i) => Ut.string.isString(i) && !Ut.string.isEmpty(i)))
      throw new TypeError("Patterns must be a string (non empty) or an array of strings");
  }
  s(lr, "assertPatternsInput");
  Qx.exports = Sh;
});

// ../node_modules/globby/node_modules/path-type/index.js
async function Bh(e, t, r) {
  if (typeof r != "string")
    throw new TypeError(`Expected a string, got ${typeof r}`);
  try {
    return (await Ea.promises[e](r))[t]();
  } catch (i) {
    if (i.code === "ENOENT")
      return !1;
    throw i;
  }
}
function Th(e, t, r) {
  if (typeof r != "string")
    throw new TypeError(`Expected a string, got ${typeof r}`);
  try {
    return Ea.default[e](r)[t]();
  } catch (i) {
    if (i.code === "ENOENT")
      return !1;
    throw i;
  }
}
var Ea, hG, Zx, pG, fG, ey, dG, ty = ht(() => {
  Ea = Q(require("fs"), 1);
  s(Bh, "isType");
  s(Th, "isTypeSync");
  hG = Bh.bind(null, "stat", "isFile"), Zx = Bh.bind(null, "stat", "isDirectory"), pG = Bh.bind(null, "lstat", "isSymbolicLink"), fG = Th.bind(
  null, "statSync", "isFile"), ey = Th.bind(null, "statSync", "isDirectory"), dG = Th.bind(null, "lstatSync", "isSymbolicLink");
});

// ../node_modules/ignore/index.js
var cy = I((gG, ly) => {
  function ry(e) {
    return Array.isArray(e) ? e : [e];
  }
  s(ry, "makeArray");
  var Oh = "", iy = " ", Ph = "\\", e9 = /^\s+$/, t9 = /(?:[^\\]|^)\\$/, r9 = /^\\!/, i9 = /^\\#/, n9 = /\r?\n/g, s9 = /^\.*\/|^\.+$/, Ih = "\
/", uy = "node-ignore";
  typeof Symbol < "u" && (uy = Symbol.for("node-ignore"));
  var ny = uy, u9 = /* @__PURE__ */ s((e, t, r) => Object.defineProperty(e, t, { value: r }), "define"), a9 = /([0-z])-([0-z])/g, ay = /* @__PURE__ */ s(
  () => !1, "RETURN_FALSE"), o9 = /* @__PURE__ */ s((e) => e.replace(
    a9,
    (t, r, i) => r.charCodeAt(0) <= i.charCodeAt(0) ? t : Oh
  ), "sanitizeRange"), l9 = /* @__PURE__ */ s((e) => {
    let { length: t } = e;
    return e.slice(0, t - t % 2);
  }, "cleanRangeBackSlash"), c9 = [
    [
      // remove BOM
      // TODO:
      // Other similar zero-width characters?
      /^\uFEFF/,
      () => Oh
    ],
    // > Trailing spaces are ignored unless they are quoted with backslash ("\")
    [
      // (a\ ) -> (a )
      // (a  ) -> (a)
      // (a ) -> (a)
      // (a \ ) -> (a  )
      /((?:\\\\)*?)(\\?\s+)$/,
      (e, t, r) => t + (r.indexOf("\\") === 0 ? iy : Oh)
    ],
    // replace (\ ) with ' '
    // (\ ) -> ' '
    // (\\ ) -> '\\ '
    // (\\\ ) -> '\\ '
    [
      /(\\+?)\s/g,
      (e, t) => {
        let { length: r } = t;
        return t.slice(0, r - r % 2) + iy;
      }
    ],
    // Escape metacharacters
    // which is written down by users but means special for regular expressions.
    // > There are 12 characters with special meanings:
    // > - the backslash \,
    // > - the caret ^,
    // > - the dollar sign $,
    // > - the period or dot .,
    // > - the vertical bar or pipe symbol |,
    // > - the question mark ?,
    // > - the asterisk or star *,
    // > - the plus sign +,
    // > - the opening parenthesis (,
    // > - the closing parenthesis ),
    // > - and the opening square bracket [,
    // > - the opening curly brace {,
    // > These special characters are often called "metacharacters".
    [
      /[\\$.|*+(){^]/g,
      (e) => `\\${e}`
    ],
    [
      // > a question mark (?) matches a single character
      /(?!\\)\?/g,
      () => "[^/]"
    ],
    // leading slash
    [
      // > A leading slash matches the beginning of the pathname.
      // > For example, "/*.c" matches "cat-file.c" but not "mozilla-sha1/sha1.c".
      // A leading slash matches the beginning of the pathname
      /^\//,
      () => "^"
    ],
    // replace special metacharacter slash after the leading slash
    [
      /\//g,
      () => "\\/"
    ],
    [
      // > A leading "**" followed by a slash means match in all directories.
      // > For example, "**/foo" matches file or directory "foo" anywhere,
      // > the same as pattern "foo".
      // > "**/foo/bar" matches file or directory "bar" anywhere that is directly
      // >   under directory "foo".
      // Notice that the '*'s have been replaced as '\\*'
      /^\^*\\\*\\\*\\\//,
      // '**/foo' <-> 'foo'
      () => "^(?:.*\\/)?"
    ],
    // starting
    [
      // there will be no leading '/'
      //   (which has been replaced by section "leading slash")
      // If starts with '**', adding a '^' to the regular expression also works
      /^(?=[^^])/,
      /* @__PURE__ */ s(function() {
        return /\/(?!$)/.test(this) ? "^" : "(?:^|\\/)";
      }, "startingReplacer")
    ],
    // two globstars
    [
      // Use lookahead assertions so that we could match more than one `'/**'`
      /\\\/\\\*\\\*(?=\\\/|$)/g,
      // Zero, one or several directories
      // should not use '*', or it will be replaced by the next replacer
      // Check if it is not the last `'/**'`
      (e, t, r) => t + 6 < r.length ? "(?:\\/[^\\/]+)*" : "\\/.+"
    ],
    // normal intermediate wildcards
    [
      // Never replace escaped '*'
      // ignore rule '\*' will match the path '*'
      // 'abc.*/' -> go
      // 'abc.*'  -> skip this rule,
      //    coz trailing single wildcard will be handed by [trailing wildcard]
      /(^|[^\\]+)(\\\*)+(?=.+)/g,
      // '*.js' matches '.js'
      // '*.js' doesn't match 'abc'
      (e, t, r) => {
        let i = r.replace(/\\\*/g, "[^\\/]*");
        return t + i;
      }
    ],
    [
      // unescape, revert step 3 except for back slash
      // For example, if a user escape a '\\*',
      // after step 3, the result will be '\\\\\\*'
      /\\\\\\(?=[$.|*+(){^])/g,
      () => Ph
    ],
    [
      // '\\\\' -> '\\'
      /\\\\/g,
      () => Ph
    ],
    [
      // > The range notation, e.g. [a-zA-Z],
      // > can be used to match one of the characters in a range.
      // `\` is escaped by step 3
      /(\\)?\[([^\]/]*?)(\\*)($|\])/g,
      (e, t, r, i, n) => t === Ph ? `\\[${r}${l9(i)}${n}` : n === "]" && i.length % 2 === 0 ? `[${o9(r)}${i}]` : "[]"
    ],
    // ending
    [
      // 'js' will not match 'js.'
      // 'ab' will not match 'abc'
      /(?:[^*])$/,
      // WTF!
      // https://git-scm.com/docs/gitignore
      // changes in [2.22.1](https://git-scm.com/docs/gitignore/2.22.1)
      // which re-fixes #24, #38
      // > If there is a separator at the end of the pattern then the pattern
      // > will only match directories, otherwise the pattern can match both
      // > files and directories.
      // 'js*' will not match 'a.js'
      // 'js/' will not match 'a.js'
      // 'js' will match 'a.js' and 'a.js/'
      (e) => /\/$/.test(e) ? `${e}$` : `${e}(?=$|\\/$)`
    ],
    // trailing wildcard
    [
      /(\^|\\\/)?\\\*$/,
      (e, t) => `${t ? `${t}[^/]+` : "[^/]*"}(?=$|\\/$)`
    ]
  ], sy = /* @__PURE__ */ Object.create(null), h9 = /* @__PURE__ */ s((e, t) => {
    let r = sy[e];
    return r || (r = c9.reduce(
      (i, [n, u]) => i.replace(n, u.bind(e)),
      e
    ), sy[e] = r), t ? new RegExp(r, "i") : new RegExp(r);
  }, "makeRegex"), Lh = /* @__PURE__ */ s((e) => typeof e == "string", "isString"), p9 = /* @__PURE__ */ s((e) => e && Lh(e) && !e9.test(e) &&
  !t9.test(e) && e.indexOf("#") !== 0, "checkPattern"), f9 = /* @__PURE__ */ s((e) => e.split(n9), "splitPattern"), Rh = class {
    static {
      s(this, "IgnoreRule");
    }
    constructor(t, r, i, n) {
      this.origin = t, this.pattern = r, this.negative = i, this.regex = n;
    }
  }, d9 = /* @__PURE__ */ s((e, t) => {
    let r = e, i = !1;
    e.indexOf("!") === 0 && (i = !0, e = e.substr(1)), e = e.replace(r9, "!").replace(i9, "#");
    let n = h9(e, t);
    return new Rh(
      r,
      e,
      i,
      n
    );
  }, "createRule"), m9 = /* @__PURE__ */ s((e, t) => {
    throw new t(e);
  }, "throwError"), Gr = /* @__PURE__ */ s((e, t, r) => Lh(e) ? e ? Gr.isNotRelative(e) ? r(
    `path should be a \`path.relative()\`d string, but got "${t}"`,
    RangeError
  ) : !0 : r("path must not be empty", TypeError) : r(
    `path must be a string, but got \`${t}\``,
    TypeError
  ), "checkPath"), oy = /* @__PURE__ */ s((e) => s9.test(e), "isNotRelative");
  Gr.isNotRelative = oy;
  Gr.convert = (e) => e;
  var Nh = class {
    static {
      s(this, "Ignore");
    }
    constructor({
      ignorecase: t = !0,
      ignoreCase: r = t,
      allowRelativePaths: i = !1
    } = {}) {
      u9(this, ny, !0), this._rules = [], this._ignoreCase = r, this._allowRelativePaths = i, this._initCache();
    }
    _initCache() {
      this._ignoreCache = /* @__PURE__ */ Object.create(null), this._testCache = /* @__PURE__ */ Object.create(null);
    }
    _addPattern(t) {
      if (t && t[ny]) {
        this._rules = this._rules.concat(t._rules), this._added = !0;
        return;
      }
      if (p9(t)) {
        let r = d9(t, this._ignoreCase);
        this._added = !0, this._rules.push(r);
      }
    }
    // @param {Array<string> | string | Ignore} pattern
    add(t) {
      return this._added = !1, ry(
        Lh(t) ? f9(t) : t
      ).forEach(this._addPattern, this), this._added && this._initCache(), this;
    }
    // legacy
    addPattern(t) {
      return this.add(t);
    }
    //          |           ignored : unignored
    // negative |   0:0   |   0:1   |   1:0   |   1:1
    // -------- | ------- | ------- | ------- | --------
    //     0    |  TEST   |  TEST   |  SKIP   |    X
    //     1    |  TESTIF |  SKIP   |  TEST   |    X
    // - SKIP: always skip
    // - TEST: always test
    // - TESTIF: only test if checkUnignored
    // - X: that never happen
    // @param {boolean} whether should check if the path is unignored,
    //   setting `checkUnignored` to `false` could reduce additional
    //   path matching.
    // @returns {TestResult} true if a file is ignored
    _testOne(t, r) {
      let i = !1, n = !1;
      return this._rules.forEach((u) => {
        let { negative: a } = u;
        if (n === a && i !== n || a && !i && !n && !r)
          return;
        u.regex.test(t) && (i = !a, n = a);
      }), {
        ignored: i,
        unignored: n
      };
    }
    // @returns {TestResult}
    _test(t, r, i, n) {
      let u = t && Gr.convert(t);
      return Gr(
        u,
        t,
        this._allowRelativePaths ? ay : m9
      ), this._t(u, r, i, n);
    }
    _t(t, r, i, n) {
      if (t in r)
        return r[t];
      if (n || (n = t.split(Ih)), n.pop(), !n.length)
        return r[t] = this._testOne(t, i);
      let u = this._t(
        n.join(Ih) + Ih,
        r,
        i,
        n
      );
      return r[t] = u.ignored ? u : this._testOne(t, i);
    }
    ignores(t) {
      return this._test(t, this._ignoreCache, !1).ignored;
    }
    createFilter() {
      return (t) => !this.ignores(t);
    }
    filter(t) {
      return ry(t).filter(this.createFilter());
    }
    // @returns {TestResult}
    test(t) {
      return this._test(t, this._testCache, !0);
    }
  }, ba = /* @__PURE__ */ s((e) => new Nh(e), "factory"), D9 = /* @__PURE__ */ s((e) => Gr(e && Gr.convert(e), e, ay), "isPathValid");
  ba.isPathValid = D9;
  ba.default = ba;
  ly.exports = ba;
  if (
    // Detect `process` so that it can run in browsers.
    typeof process < "u" && (process.env && process.env.IGNORE_TEST_WIN32 || process.platform === "win32")
  ) {
    let e = /* @__PURE__ */ s((r) => /^\\\\\?\\/.test(r) || /["<>|\u0000-\u001F]+/u.test(r) ? r : r.replace(/\\/g, "/"), "makePosix");
    Gr.convert = e;
    let t = /^[a-z]:\//i;
    Gr.isNotRelative = (r) => t.test(r) || oy(r);
  }
});

// ../node_modules/globby/utilities.js
var Ts, Mh = ht(() => {
  Ts = /* @__PURE__ */ s((e) => e[0] === "!", "isNegativePattern");
});

// ../node_modules/globby/ignore.js
var hy, py, fy, Ki, jh, dy, g9, my, va, x9, y9, E9, Dy, gy, qh, $h, xy, yy, Vh = ht(() => {
  hy = Q(require("node:process"), 1), py = Q(require("node:fs"), 1), fy = Q(require("node:fs/promises"), 1), Ki = Q(require("node:path"), 1),
  jh = Q(kh(), 1), dy = Q(cy(), 1);
  ys();
  Ou();
  Mh();
  g9 = [
    "**/node_modules",
    "**/flow-typed",
    "**/coverage",
    "**/.git"
  ], my = {
    absolute: !0,
    dot: !0
  }, va = "**/.gitignore", x9 = /* @__PURE__ */ s((e, t) => Ts(e) ? "!" + Ki.default.posix.join(t, e.slice(1)) : Ki.default.posix.join(t, e),
  "applyBaseToPattern"), y9 = /* @__PURE__ */ s((e, t) => {
    let r = tt(Ki.default.relative(t, Ki.default.dirname(e.filePath)));
    return e.content.split(/\r?\n/).filter((i) => i && !i.startsWith("#")).map((i) => x9(i, r));
  }, "parseIgnoreFile"), E9 = /* @__PURE__ */ s((e, t) => {
    if (t = tt(t), Ki.default.isAbsolute(e)) {
      if (tt(e).startsWith(t))
        return Ki.default.relative(t, e);
      throw new Error(`Path ${e} is not in cwd ${t}`);
    }
    return e;
  }, "toRelativePath"), Dy = /* @__PURE__ */ s((e, t) => {
    let r = e.flatMap((n) => y9(n, t)), i = (0, dy.default)().add(r);
    return (n) => (n = fi(n), n = E9(n, t), n ? i.ignores(tt(n)) : !1);
  }, "getIsIgnoredPredicate"), gy = /* @__PURE__ */ s((e = {}) => ({
    cwd: fi(e.cwd) ?? hy.default.cwd(),
    suppressErrors: !!e.suppressErrors,
    deep: typeof e.deep == "number" ? e.deep : Number.POSITIVE_INFINITY,
    ignore: [...e.ignore ?? [], ...g9]
  }), "normalizeOptions"), qh = /* @__PURE__ */ s(async (e, t) => {
    let { cwd: r, suppressErrors: i, deep: n, ignore: u } = gy(t), a = await (0, jh.default)(e, {
      cwd: r,
      suppressErrors: i,
      deep: n,
      ignore: u,
      ...my
    }), o = await Promise.all(
      a.map(async (l) => ({
        filePath: l,
        content: await fy.default.readFile(l, "utf8")
      }))
    );
    return Dy(o, r);
  }, "isIgnoredByIgnoreFiles"), $h = /* @__PURE__ */ s((e, t) => {
    let { cwd: r, suppressErrors: i, deep: n, ignore: u } = gy(t), o = jh.default.sync(e, {
      cwd: r,
      suppressErrors: i,
      deep: n,
      ignore: u,
      ...my
    }).map((l) => ({
      filePath: l,
      content: py.default.readFileSync(l, "utf8")
    }));
    return Dy(o, r);
  }, "isIgnoredByIgnoreFilesSync"), xy = /* @__PURE__ */ s((e) => qh(va, e), "isGitIgnored"), yy = /* @__PURE__ */ s((e) => $h(va, e), "isGi\
tIgnoredSync");
});

// ../node_modules/globby/index.js
var Wh = {};
pi(Wh, {
  convertPathToPattern: () => B9,
  generateGlobTasks: () => _9,
  generateGlobTasksSync: () => k9,
  globby: () => w9,
  globbyStream: () => F9,
  globbySync: () => A9,
  isDynamicPattern: () => S9,
  isGitIgnored: () => xy,
  isGitIgnoredSync: () => yy
});
var Uh, vy, Qi, _n, b9, Cy, wy, Ey, by, zh, v9, Ay, Fy, Ca, Sy, C9, _y, ky, By, Ty, Py, Iy, Hh, w9, A9, F9, S9, _9, k9, B9, Jh = ht(() => {
  Uh = Q(require("node:process"), 1), vy = Q(require("node:fs"), 1), Qi = Q(require("node:path"), 1);
  hD();
  _n = Q(kh(), 1);
  ty();
  Ou();
  Vh();
  Mh();
  Vh();
  b9 = /* @__PURE__ */ s((e) => {
    if (e.some((t) => typeof t != "string"))
      throw new TypeError("Patterns must be a string or an array of strings");
  }, "assertPatternsInput"), Cy = /* @__PURE__ */ s((e, t) => {
    let r = Ts(e) ? e.slice(1) : e;
    return Qi.default.isAbsolute(r) ? r : Qi.default.join(t, r);
  }, "normalizePathForDirectoryGlob"), wy = /* @__PURE__ */ s(({ directoryPath: e, files: t, extensions: r }) => {
    let i = r?.length > 0 ? `.${r.length > 1 ? `{${r.join(",")}}` : r[0]}` : "";
    return t ? t.map((n) => Qi.default.posix.join(e, `**/${Qi.default.extname(n) ? n : `${n}${i}`}`)) : [Qi.default.posix.join(e, `**${i ? `\
/*${i}` : ""}`)];
  }, "getDirectoryGlob"), Ey = /* @__PURE__ */ s(async (e, {
    cwd: t = Uh.default.cwd(),
    files: r,
    extensions: i
  } = {}) => (await Promise.all(
    e.map(async (u) => await Zx(Cy(u, t)) ? wy({ directoryPath: u, files: r, extensions: i }) : u)
  )).flat(), "directoryToGlob"), by = /* @__PURE__ */ s((e, {
    cwd: t = Uh.default.cwd(),
    files: r,
    extensions: i
  } = {}) => e.flatMap((n) => ey(Cy(n, t)) ? wy({ directoryPath: n, files: r, extensions: i }) : n), "directoryToGlobSync"), zh = /* @__PURE__ */ s(
  (e) => (e = [...new Set([e].flat())], b9(e), e), "toPatternsArray"), v9 = /* @__PURE__ */ s((e) => {
    if (!e)
      return;
    let t;
    try {
      t = vy.default.statSync(e);
    } catch {
      return;
    }
    if (!t.isDirectory())
      throw new Error("The `cwd` option must be a path to a directory");
  }, "checkCwdOption"), Ay = /* @__PURE__ */ s((e = {}) => (e = {
    ...e,
    ignore: e.ignore ?? [],
    expandDirectories: e.expandDirectories ?? !0,
    cwd: fi(e.cwd)
  }, v9(e.cwd), e), "normalizeOptions"), Fy = /* @__PURE__ */ s((e) => async (t, r) => e(zh(t), Ay(r)), "normalizeArguments"), Ca = /* @__PURE__ */ s(
  (e) => (t, r) => e(zh(t), Ay(r)), "normalizeArgumentsSync"), Sy = /* @__PURE__ */ s((e) => {
    let { ignoreFiles: t, gitignore: r } = e, i = t ? zh(t) : [];
    return r && i.push(va), i;
  }, "getIgnoreFilesPatterns"), C9 = /* @__PURE__ */ s(async (e) => {
    let t = Sy(e);
    return ky(
      t.length > 0 && await qh(t, e)
    );
  }, "getFilter"), _y = /* @__PURE__ */ s((e) => {
    let t = Sy(e);
    return ky(
      t.length > 0 && $h(t, e)
    );
  }, "getFilterSync"), ky = /* @__PURE__ */ s((e) => {
    let t = /* @__PURE__ */ new Set();
    return (r) => {
      let i = Qi.default.normalize(r.path ?? r);
      return t.has(i) || e && e(i) ? !1 : (t.add(i), !0);
    };
  }, "createFilterFunction"), By = /* @__PURE__ */ s((e, t) => e.flat().filter((r) => t(r)), "unionFastGlobResults"), Ty = /* @__PURE__ */ s(
  (e, t) => {
    let r = [];
    for (; e.length > 0; ) {
      let i = e.findIndex((u) => Ts(u));
      if (i === -1) {
        r.push({ patterns: e, options: t });
        break;
      }
      let n = e[i].slice(1);
      for (let u of r)
        u.options.ignore.push(n);
      i !== 0 && r.push({
        patterns: e.slice(0, i),
        options: {
          ...t,
          ignore: [
            ...t.ignore,
            n
          ]
        }
      }), e = e.slice(i + 1);
    }
    return r;
  }, "convertNegativePatterns"), Py = /* @__PURE__ */ s((e, t) => ({
    ...t ? { cwd: t } : {},
    ...Array.isArray(e) ? { files: e } : e
  }), "normalizeExpandDirectoriesOption"), Iy = /* @__PURE__ */ s(async (e, t) => {
    let r = Ty(e, t), { cwd: i, expandDirectories: n } = t;
    if (!n)
      return r;
    let u = Py(n, i);
    return Promise.all(
      r.map(async (a) => {
        let { patterns: o, options: l } = a;
        return [
          o,
          l.ignore
        ] = await Promise.all([
          Ey(o, u),
          Ey(l.ignore, { cwd: i })
        ]), { patterns: o, options: l };
      })
    );
  }, "generateTasks"), Hh = /* @__PURE__ */ s((e, t) => {
    let r = Ty(e, t), { cwd: i, expandDirectories: n } = t;
    if (!n)
      return r;
    let u = Py(n, i);
    return r.map((a) => {
      let { patterns: o, options: l } = a;
      return o = by(o, u), l.ignore = by(l.ignore, { cwd: i }), { patterns: o, options: l };
    });
  }, "generateTasksSync"), w9 = Fy(async (e, t) => {
    let [
      r,
      i
    ] = await Promise.all([
      Iy(e, t),
      C9(t)
    ]), n = await Promise.all(r.map((u) => (0, _n.default)(u.patterns, u.options)));
    return By(n, i);
  }), A9 = Ca((e, t) => {
    let r = Hh(e, t), i = _y(t), n = r.map((u) => _n.default.sync(u.patterns, u.options));
    return By(n, i);
  }), F9 = Ca((e, t) => {
    let r = Hh(e, t), i = _y(t), n = r.map((a) => _n.default.stream(a.patterns, a.options));
    return Hl(n).filter((a) => i(a));
  }), S9 = Ca(
    (e, t) => e.some((r) => _n.default.isDynamicPattern(r, t))
  ), _9 = Fy(Iy), k9 = Ca(Hh), { convertPathToPattern: B9 } = _n.default;
});

// ../node_modules/@storybook/docs-mdx/dist/chunk-H6DQNFQR.js
function Vy(e, t) {
  let r = {}, i = {}, n = -1;
  for (; ++n < e.length; )
    Object.assign(r, e[n].property), Object.assign(i, e[n].normal);
  return new Ps(r, i, t);
}
function Xh(e) {
  return e.toLowerCase();
}
function Zi() {
  return 2 ** ++M9;
}
function Oy(e, t, r) {
  r && (e[t] = r);
}
function Tn(e) {
  let t = {}, r = {}, i;
  for (i in e.properties)
    if (j9.call(e.properties, i)) {
      let n = e.properties[i], u = new ep(
        i,
        e.transform(e.attributes || {}, i),
        n,
        e.space
      );
      e.mustUseProperty && e.mustUseProperty.includes(i) && (u.mustUseProperty = !0), t[i] = u, r[Xh(i)] = i, r[Xh(u.attribute)] = i;
    }
  return new Ps(t, r, e.space);
}
function Wy(e, t) {
  return t in e ? e[t] : t;
}
function Jy(e, t) {
  return Wy(e, t.toLowerCase());
}
function z9(e, t) {
  let r = Xh(t), i = t, n = zt;
  if (r in e.normal)
    return e.property[e.normal[r]];
  if (r.length > 4 && r.slice(0, 4) === "data" && V9.test(t)) {
    if (t.charAt(4) === "-") {
      let u = t.slice(5).replace(Ry, W9);
      i = "data" + u.charAt(0).toUpperCase() + u.slice(1);
    } else {
      let u = t.slice(4);
      if (!Ry.test(u)) {
        let a = u.replace(U9, H9);
        a.charAt(0) !== "-" && (a = "-" + a), t = "data" + a;
      }
    }
    n = ep;
  }
  return new n(i, t);
}
function H9(e) {
  return "-" + e.toLowerCase();
}
function W9(e) {
  return e.charAt(1).toUpperCase();
}
function Yy(e) {
  return t;
  function t(r) {
    let i = r && r.position && r.position[e] || {};
    if (typeof i.line == "number" && i.line > 0 && typeof i.column == "number" && i.column > 0)
      return {
        line: i.line,
        column: i.column,
        offset: typeof i.offset == "number" && i.offset > -1 ? i.offset : void 0
      };
  }
}
function np(e) {
  let t = ip(e), r = rp(e);
  if (t && r)
    return { start: t, end: r };
}
function X9(e, t) {
  let r = t || {};
  function i(n, ...u) {
    let a = i.invalid, o = i.handlers;
    if (n && Ny.call(n, e)) {
      let l = String(n[e]);
      a = Ny.call(o, l) ? o[l] : i.unknown;
    }
    if (a)
      return a.call(this, n, ...u);
  }
  return s(i, "one"), i.handlers = r.handlers || {}, i.invalid = r.invalid, i.unknown = r.unknown, i;
}
function Y9(e, t) {
  let r = { type: "Block", value: e.value };
  t.inherit(e, r), t.comments.push(r);
  let i = {
    type: "JSXEmptyExpression",
    // @ts-expect-error: `comments` is custom.
    comments: [Object.assign({}, r, { leading: !1, trailing: !0 })]
  };
  t.patch(e, i);
  let n = { type: "JSXExpressionContainer", expression: i };
  return t.patch(e, n), n;
}
function K9(e, t) {
  let r = t || {};
  return (e[e.length - 1] === "" ? [...e, ""] : e).join(
    (r.padRight ? " " : "") + "," + (r.padLeft === !1 ? "" : " ")
  ).trim();
}
function Ht(e) {
  return e ? Q9.test(String.fromCodePoint(e)) : !1;
}
function Pn(e, t) {
  let i = (t || Ky).jsx ? e4 : Z9;
  return e ? i.test(String.fromCodePoint(e)) : !1;
}
function cr(e, t) {
  return ((t || Ky).jsx ? r4 : t4).test(e);
}
function i4(e) {
  return e.join(" ").trim();
}
function l4(e, t) {
  let r = t.schema, i = r, n = e.properties || {};
  r.space === "html" && e.tagName.toLowerCase() === "svg" && (i = tp, t.schema = i);
  let u = t.all(e), a = [], o, l, c;
  for (o in n)
    if (Yh.call(n, o)) {
      let p = n[o], d = z9(i, o), m;
      if (p == null || p === !1 || typeof p == "number" && Number.isNaN(p) || !p && d.boolean)
        continue;
      if (o = t.elementAttributeNameCase === "react" && d.space ? J9[d.property] || d.property : d.attribute, Array.isArray(p) && (p = d.commaSeparated ?
      K9(p) : i4(p)), o === "style") {
        let D = typeof p == "object" ? p : c4(String(p), e.tagName);
        t.stylePropertyNameCase === "css" && (D = h4(D));
        let g = [], v;
        for (v in D)
          Yh.call(D, v) && g.push({
            type: "Property",
            method: !1,
            shorthand: !1,
            computed: !1,
            key: cr(v) ? { type: "Identifier", name: v } : { type: "Literal", value: v },
            value: { type: "Literal", value: String(D[v]) },
            kind: "init"
          });
        c = g, m = {
          type: "JSXExpressionContainer",
          expression: { type: "ObjectExpression", properties: g }
        };
      } else if (p === !0)
        m = null;
      else if (t.tableCellAlignToStyle && o4.has(e.tagName) && o === "align") {
        l = String(p);
        continue;
      } else
        m = { type: "Literal", value: String(p) };
      cr(o, { jsx: !0 }) ? a.push({
        type: "JSXAttribute",
        name: { type: "JSXIdentifier", name: o },
        value: m
      }) : a.push({
        type: "JSXSpreadAttribute",
        argument: {
          type: "ObjectExpression",
          properties: [
            {
              type: "Property",
              method: !1,
              shorthand: !1,
              computed: !1,
              key: { type: "Literal", value: String(o) },
              // @ts-expect-error No need to worry about `style` (which has a
              // `JSXExpressionContainer` value) because that’s a valid identifier.
              value: m || { type: "Literal", value: !0 },
              kind: "init"
            }
          ]
        }
      });
    }
  if (l !== void 0) {
    c || (c = [], a.push({
      type: "JSXAttribute",
      name: { type: "JSXIdentifier", name: "style" },
      value: {
        type: "JSXExpressionContainer",
        expression: { type: "ObjectExpression", properties: c }
      }
    }));
    let p = t.stylePropertyNameCase === "css" ? Qy("textAlign") : "textAlign";
    c.push({
      type: "Property",
      method: !1,
      shorthand: !1,
      computed: !1,
      key: cr(p) ? { type: "Identifier", name: p } : { type: "Literal", value: p },
      value: { type: "Literal", value: l },
      kind: "init"
    });
  }
  t.schema = r;
  let h = {
    type: "JSXElement",
    openingElement: {
      type: "JSXOpeningElement",
      attributes: a,
      name: t.createJsxElementName(e.tagName),
      selfClosing: u.length === 0
    },
    closingElement: u.length > 0 ? {
      type: "JSXClosingElement",
      name: t.createJsxElementName(e.tagName)
    } : null,
    children: u
  };
  return t.inherit(e, h), h;
}
function c4(e, t) {
  let r = {};
  try {
    s4(e, i);
  } catch (n) {
    let u = (
      /** @type {Error} */
      n
    );
    throw new Error(
      "Could not parse `style` attribute on `" + t + "`",
      { cause: u }
    );
  }
  return r;
  function i(n, u) {
    let a = n;
    a.slice(0, 2) !== "--" && (a.slice(0, 4) === "-ms-" && (a = "ms-" + a.slice(4)), a = a.replace(a4, p4)), r[a] = u;
  }
}
function h4(e) {
  let t = {}, r;
  for (r in e)
    Yh.call(e, r) && (t[Qy(r)] = e[r]);
  return t;
}
function Qy(e) {
  let t = e.replace(u4, f4);
  return t.slice(0, 3) === "ms-" && (t = "-" + t), t;
}
function p4(e, t) {
  return t.toUpperCase();
}
function f4(e) {
  return "-" + e.toLowerCase();
}
function Aa(e, t) {
  let r = t ? [...t].sort(sp) : m4;
  r.length > 0 && Zy(e, { comments: r, index: 0 });
}
function Zy(e, t) {
  if (t.index === t.comments.length)
    return;
  let r = [], i = [], n;
  for (n in e)
    if (d4.call(e, n)) {
      let a = e[n];
      if (a && typeof a == "object" && n !== "comments")
        if (Array.isArray(a)) {
          let o = -1;
          for (; ++o < a.length; )
            a[o] && typeof a[o].type == "string" && r.push(a[o]);
        } else typeof a.type == "string" && r.push(a);
    }
  r.sort(sp), i.push(...Ly(t, e, !1, { leading: !0, trailing: !1 }));
  let u = -1;
  for (; ++u < r.length; )
    Zy(r[u], t);
  i.push(
    ...Ly(t, e, !0, {
      leading: !1,
      trailing: r.length > 0
    })
  ), i.length > 0 && (e.comments = i);
}
function Ly(e, t, r, i) {
  let n = [];
  for (; e.comments[e.index] && sp(e.comments[e.index], t, r) < 1; )
    n.push(Object.assign({}, e.comments[e.index++], i));
  return n;
}
function sp(e, t, r) {
  let i = r ? "end" : "start";
  return e.range && t.range ? e.range[0] - t.range[r ? 1 : 0] : e.loc && e.loc.start && t.loc && t.loc[i] ? e.loc.start.line - t.loc[i].line ||
  e.loc.start.column - t.loc[i].column : "start" in e && i in t ? e.start - t[i] : Number.NaN;
}
function My(e, t) {
  let r = e.data && e.data.estree, i = r && r.comments || [], n;
  r && (t.comments.push(...i), Aa(r, r.comments), n = r.body[0] && r.body[0].type === "ExpressionStatement" && r.body[0].expression || void 0),
  n || (n = { type: "JSXEmptyExpression" }, t.patch(e, n));
  let u = { type: "JSXExpressionContainer", expression: n };
  return t.inherit(e, u), u;
}
function jy(e, t) {
  let r = t.schema, i = r, n = e.attributes || [], u = -1;
  e.name && r.space === "html" && e.name.toLowerCase() === "svg" && (i = tp, t.schema = i);
  let a = t.all(e), o = [];
  for (; ++u < n.length; ) {
    let c = n[u], h = c.value, p;
    if (c.type === "mdxJsxAttribute") {
      if (h == null)
        p = null;
      else if (typeof h == "object") {
        let m = h.data && h.data.estree, D = m && m.comments || [], g;
        m && (t.comments.push(...D), Aa(m, m.comments), g = m.body[0] && m.body[0].type === "ExpressionStatement" && m.body[0].expression ||
        void 0), p = {
          type: "JSXExpressionContainer",
          expression: g || { type: "JSXEmptyExpression" }
        }, t.inherit(h, p);
      } else
        p = { type: "Literal", value: String(h) };
      let d = {
        type: "JSXAttribute",
        name: t.createJsxAttributeName(c.name),
        value: p
      };
      t.inherit(c, d), o.push(d);
    } else {
      let d = c.data && c.data.estree, m = d && d.comments || [], D;
      d && (t.comments.push(...m), Aa(d, d.comments), D = d.body[0] && d.body[0].type === "ExpressionStatement" && d.body[0].expression && d.
      body[0].expression.type === "ObjectExpression" && d.body[0].expression.properties && d.body[0].expression.properties[0] && d.body[0].expression.
      properties[0].type === "SpreadElement" && d.body[0].expression.properties[0].argument || void 0);
      let g = {
        type: "JSXSpreadAttribute",
        argument: D || { type: "ObjectExpression", properties: [] }
      };
      t.inherit(c, g), o.push(g);
    }
  }
  t.schema = r;
  let l = e.name ? {
    type: "JSXElement",
    openingElement: {
      type: "JSXOpeningElement",
      attributes: o,
      name: t.createJsxElementName(e.name),
      selfClosing: a.length === 0
    },
    closingElement: a.length > 0 ? {
      type: "JSXClosingElement",
      name: t.createJsxElementName(e.name)
    } : null,
    children: a
  } : {
    type: "JSXFragment",
    openingFragment: { type: "JSXOpeningFragment" },
    closingFragment: { type: "JSXClosingFragment" },
    children: a
  };
  return t.inherit(e, l), l;
}
function D4(e, t) {
  let r = e.data && e.data.estree, i = r && r.comments || [];
  r && (t.comments.push(...i), Aa(r, i), t.esm.push(...r.body));
}
function x4(e) {
  return typeof e == "object" ? e.type === "text" ? qy(e.value) : !1 : qy(e);
}
function qy(e) {
  return e.replace(g4, "") === "";
}
function y4(e, t) {
  let r = t.all(e), i = [], n = -1, u;
  for (; ++n < r.length; ) {
    let o = r[n];
    o.type === "JSXExpressionContainer" && o.expression.type === "Literal" && x4(String(o.expression.value)) ? u && u.push(o) : (u && i.push(
    ...u), i.push(o), u = []);
  }
  let a = {
    type: "JSXFragment",
    openingFragment: { type: "JSXOpeningFragment" },
    closingFragment: { type: "JSXClosingFragment" },
    children: i
  };
  return t.inherit(e, a), a;
}
function E4(e, t) {
  let r = String(e.value || "");
  if (r) {
    let i = { type: "Literal", value: r };
    t.inherit(e, i);
    let n = { type: "JSXExpressionContainer", expression: i };
    return t.patch(e, n), n;
  }
}
function v4() {
}
function A4(e) {
  let t = X9("type", {
    invalid: F4,
    unknown: S4,
    handlers: { ...b4, ...e.handlers }
  });
  return {
    // Current space.
    elementAttributeNameCase: e.elementAttributeNameCase || "react",
    schema: e.space === "svg" ? tp : G9,
    stylePropertyNameCase: e.stylePropertyNameCase || "dom",
    tableCellAlignToStyle: e.tableCellAlignToStyle !== !1,
    // Results.
    comments: [],
    esm: [],
    // Useful functions.
    all: _4,
    createJsxAttributeName: B4,
    createJsxElementName: T4,
    handle: r,
    inherit: k4,
    patch: e1
  };
  function r(i) {
    return t(i, this);
  }
}
function F4(e) {
  throw new Error("Cannot handle value `" + e + "`, expected node");
}
function S4(e) {
  throw "type" in e, new Error("Cannot handle unknown node `" + e.type + "`");
}
function _4(e) {
  let t = e.children || [], r = -1, i = [], n = this.schema.space === "html" && e.type === "element" && w4.has(e.tagName.toLowerCase());
  for (; ++r < t.length; ) {
    let u = t[r];
    if (n && u.type === "text" && u.value === `
`)
      continue;
    let a = this.handle(u);
    Array.isArray(a) ? i.push(...a) : a && i.push(a);
  }
  return i;
}
function k4(e, t) {
  let r = (
    /** @type {Record<string, unknown> | undefined} */
    e.data
  ), i, n;
  if (e1(e, t), r) {
    for (n in r)
      C4.call(r, n) && n !== "estree" && (i || (i = {}), i[n] = r[n]);
    i && (t.data = i);
  }
}
function e1(e, t) {
  let r = np(e);
  r && r.start.offset !== void 0 && r.end.offset !== void 0 && (t.start = r.start.offset, t.end = r.end.offset, t.loc = {
    start: { line: r.start.line, column: r.start.column - 1 },
    end: { line: r.end.line, column: r.end.column - 1 }
  }, t.range = [r.start.offset, r.end.offset]);
}
function B4(e) {
  let t = t1(e);
  if (t.type === "JSXMemberExpression")
    throw new Error("Member expressions in attribute names are not supported");
  return t;
}
function T4(e) {
  return t1(e);
}
function t1(e) {
  if (e.includes(".")) {
    let t = e.split("."), r = t.shift();
    let i = { type: "JSXIdentifier", name: r };
    for (; r = t.shift(); )
      i = {
        type: "JSXMemberExpression",
        object: i,
        property: { type: "JSXIdentifier", name: r }
      };
    return i;
  }
  if (e.includes(":")) {
    let t = e.split(":");
    return {
      type: "JSXNamespacedName",
      namespace: { type: "JSXIdentifier", name: t[0] },
      name: { type: "JSXIdentifier", name: t[1] }
    };
  }
  return { type: "JSXIdentifier", name: e };
}
function Sa(e, t) {
  let r = A4(t || {}), i = r.handle(e), n = r.esm;
  if (i) {
    i.type !== "JSXFragment" && i.type !== "JSXElement" && (i = {
      type: "JSXFragment",
      openingFragment: { type: "JSXOpeningFragment" },
      closingFragment: { type: "JSXClosingFragment" },
      children: [i]
    }, r.patch(e, i));
    let a = { type: "ExpressionStatement", expression: i };
    r.patch(e, a), n.push(a);
  }
  let u = {
    type: "Program",
    body: n,
    sourceType: "module",
    comments: r.comments
  };
  return r.patch(e, u), u;
}
var T9, Kh, P9, $y, I9, O9, Qh, Bn, Zh, R9, Fa, N9, L9, Ps, zt, wa, M9, de, Ze, Uy, Z, Re, kn, Rt, Gh, ep, j9, zy, Hy, Gy, Xy, q9, $9, V9, Ry,
U9, J9, G9, tp, rp, ip, Ny, Q9, Z9, e4, t4, r4, Ky, n4, s4, Yh, u4, a4, o4, d4, m4, g4, b4, C4, w4, up = ht(() => {
  T9 = Object.create, Kh = Object.defineProperty, P9 = Object.getOwnPropertyDescriptor, $y = Object.getOwnPropertyNames, I9 = Object.getPrototypeOf,
  O9 = Object.prototype.hasOwnProperty, Qh = /* @__PURE__ */ ((e) => typeof require < "u" ? require : typeof Proxy < "u" ? new Proxy(e, {
    get: /* @__PURE__ */ s((t, r) => (typeof require < "u" ? require : t)[r], "get")
  }) : e)(function(e) {
    if (typeof require < "u")
      return require.apply(this, arguments);
    throw new Error('Dynamic require of "' + e + '" is not supported');
  }), Bn = /* @__PURE__ */ s((e, t) => /* @__PURE__ */ s(function() {
    return t || (0, e[$y(e)[0]])((t = { exports: {} }).exports, t), t.exports;
  }, "__require2"), "__commonJS"), Zh = /* @__PURE__ */ s((e, t) => {
    for (var r in t)
      Kh(e, r, { get: t[r], enumerable: !0 });
  }, "__export"), R9 = /* @__PURE__ */ s((e, t, r, i) => {
    if (t && typeof t == "object" || typeof t == "function")
      for (let n of $y(t))
        !O9.call(e, n) && n !== r && Kh(e, n, { get: /* @__PURE__ */ s(() => t[n], "get"), enumerable: !(i = P9(t, n)) || i.enumerable });
    return e;
  }, "__copyProps"), Fa = /* @__PURE__ */ s((e, t, r) => (r = e != null ? T9(I9(e)) : {}, R9(
    // If the importer is in node compatibility mode or this is not an ESM
    // file that has been converted to a CommonJS file using a Babel-
    // compatible transform (i.e. "__esModule" has not been set), then set
    // "default" to the CommonJS "module.exports" for node compatibility.
    t || !e || !e.__esModule ? Kh(r, "default", { value: e, enumerable: !0 }) : r,
    e
  )), "__toESM"), N9 = Bn({
    "node_modules/inline-style-parser/index.js"(e, t) {
      var r = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g, i = /\n/g, n = /^\s*/, u = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/, a = /^:\s*/, o = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,
      l = /^[;\s]*/, c = /^\s+|\s+$/g, h = `
`, p = "/", d = "*", m = "", D = "comment", g = "declaration";
      t.exports = function(x, C) {
        if (typeof x != "string")
          throw new TypeError("First argument must be a string");
        if (!x)
          return [];
        C = C || {};
        var S = 1, k = 1;
        function j(N) {
          var z = N.match(i);
          z && (S += z.length);
          var Y = N.lastIndexOf(h);
          k = ~Y ? N.length - Y : k + N.length;
        }
        s(j, "updatePosition");
        function w() {
          var N = { line: S, column: k };
          return function(z) {
            return z.position = new A(N), L(), z;
          };
        }
        s(w, "position2");
        function A(N) {
          this.start = N, this.end = { line: S, column: k }, this.source = C.source;
        }
        s(A, "Position"), A.prototype.content = x;
        var T = [];
        function B(N) {
          var z = new Error(
            C.source + ":" + S + ":" + k + ": " + N
          );
          if (z.reason = N, z.filename = C.source, z.line = S, z.column = k, z.source = x, C.silent)
            T.push(z);
          else
            throw z;
        }
        s(B, "error");
        function $(N) {
          var z = N.exec(x);
          if (z) {
            var Y = z[0];
            return j(Y), x = x.slice(Y.length), z;
          }
        }
        s($, "match");
        function L() {
          $(n);
        }
        s(L, "whitespace2");
        function V(N) {
          var z;
          for (N = N || []; z = U(); )
            z !== !1 && N.push(z);
          return N;
        }
        s(V, "comments");
        function U() {
          var N = w();
          if (!(p != x.charAt(0) || d != x.charAt(1))) {
            for (var z = 2; m != x.charAt(z) && (d != x.charAt(z) || p != x.charAt(z + 1)); )
              ++z;
            if (z += 2, m === x.charAt(z - 1))
              return B("End of comment missing");
            var Y = x.slice(2, z - 2);
            return k += 2, j(Y), x = x.slice(z), k += 2, N({
              type: D,
              comment: Y
            });
          }
        }
        s(U, "comment2");
        function X() {
          var N = w(), z = $(u);
          if (z) {
            if (U(), !$(a))
              return B("property missing ':'");
            var Y = $(o), ee = N({
              type: g,
              property: v(z[0].replace(r, m)),
              value: Y ? v(Y[0].replace(r, m)) : m
            });
            return $(l), ee;
          }
        }
        s(X, "declaration");
        function R() {
          var N = [];
          V(N);
          for (var z; z = X(); )
            z !== !1 && (N.push(z), V(N));
          return N;
        }
        return s(R, "declarations"), L(), R();
      };
      function v(x) {
        return x ? x.replace(c, m) : m;
      }
      s(v, "trim");
    }
  }), L9 = Bn({
    "node_modules/style-to-object/index.js"(e, t) {
      var r = N9();
      function i(n, u) {
        var a = null;
        if (!n || typeof n != "string")
          return a;
        for (var o, l = r(n), c = typeof u == "function", h, p, d = 0, m = l.length; d < m; d++)
          o = l[d], h = o.property, p = o.value, c ? u(h, p, o) : p && (a || (a = {}), a[h] = p);
        return a;
      }
      s(i, "StyleToObject2"), t.exports = i, t.exports.default = i;
    }
  }), Ps = class {
    static {
      s(this, "Schema");
    }
    /**
     * @constructor
     * @param {Properties} property
     * @param {Normal} normal
     * @param {string} [space]
     */
    constructor(e, t, r) {
      this.property = e, this.normal = t, r && (this.space = r);
    }
  };
  Ps.prototype.property = {};
  Ps.prototype.normal = {};
  Ps.prototype.space = null;
  s(Vy, "merge");
  s(Xh, "normalize");
  zt = class {
    static {
      s(this, "Info");
    }
    /**
     * @constructor
     * @param {string} property
     * @param {string} attribute
     */
    constructor(e, t) {
      this.property = e, this.attribute = t;
    }
  };
  zt.prototype.space = null;
  zt.prototype.boolean = !1;
  zt.prototype.booleanish = !1;
  zt.prototype.overloadedBoolean = !1;
  zt.prototype.number = !1;
  zt.prototype.commaSeparated = !1;
  zt.prototype.spaceSeparated = !1;
  zt.prototype.commaOrSpaceSeparated = !1;
  zt.prototype.mustUseProperty = !1;
  zt.prototype.defined = !1;
  wa = {};
  Zh(wa, {
    boolean: /* @__PURE__ */ s(() => de, "boolean"),
    booleanish: /* @__PURE__ */ s(() => Ze, "booleanish"),
    commaOrSpaceSeparated: /* @__PURE__ */ s(() => Rt, "commaOrSpaceSeparated"),
    commaSeparated: /* @__PURE__ */ s(() => kn, "commaSeparated"),
    number: /* @__PURE__ */ s(() => Z, "number"),
    overloadedBoolean: /* @__PURE__ */ s(() => Uy, "overloadedBoolean"),
    spaceSeparated: /* @__PURE__ */ s(() => Re, "spaceSeparated")
  });
  M9 = 0, de = Zi(), Ze = Zi(), Uy = Zi(), Z = Zi(), Re = Zi(), kn = Zi(), Rt = Zi();
  s(Zi, "increment");
  Gh = Object.keys(wa), ep = class extends zt {
    static {
      s(this, "DefinedInfo");
    }
    /**
     * @constructor
     * @param {string} property
     * @param {string} attribute
     * @param {number|null} [mask]
     * @param {string} [space]
     */
    constructor(e, t, r, i) {
      let n = -1;
      if (super(e, t), Oy(this, "space", i), typeof r == "number")
        for (; ++n < Gh.length; ) {
          let u = Gh[n];
          Oy(this, Gh[n], (r & wa[u]) === wa[u]);
        }
    }
  };
  ep.prototype.defined = !0;
  s(Oy, "mark");
  j9 = {}.hasOwnProperty;
  s(Tn, "create");
  zy = Tn({
    space: "xlink",
    transform(e, t) {
      return "xlink:" + t.slice(5).toLowerCase();
    },
    properties: {
      xLinkActuate: null,
      xLinkArcRole: null,
      xLinkHref: null,
      xLinkRole: null,
      xLinkShow: null,
      xLinkTitle: null,
      xLinkType: null
    }
  }), Hy = Tn({
    space: "xml",
    transform(e, t) {
      return "xml:" + t.slice(3).toLowerCase();
    },
    properties: { xmlLang: null, xmlBase: null, xmlSpace: null }
  });
  s(Wy, "caseSensitiveTransform");
  s(Jy, "caseInsensitiveTransform");
  Gy = Tn({
    space: "xmlns",
    attributes: { xmlnsxlink: "xmlns:xlink" },
    transform: Jy,
    properties: { xmlns: null, xmlnsXLink: null }
  }), Xy = Tn({
    transform(e, t) {
      return t === "role" ? t : "aria-" + t.slice(4).toLowerCase();
    },
    properties: {
      ariaActiveDescendant: null,
      ariaAtomic: Ze,
      ariaAutoComplete: null,
      ariaBusy: Ze,
      ariaChecked: Ze,
      ariaColCount: Z,
      ariaColIndex: Z,
      ariaColSpan: Z,
      ariaControls: Re,
      ariaCurrent: null,
      ariaDescribedBy: Re,
      ariaDetails: null,
      ariaDisabled: Ze,
      ariaDropEffect: Re,
      ariaErrorMessage: null,
      ariaExpanded: Ze,
      ariaFlowTo: Re,
      ariaGrabbed: Ze,
      ariaHasPopup: null,
      ariaHidden: Ze,
      ariaInvalid: null,
      ariaKeyShortcuts: null,
      ariaLabel: null,
      ariaLabelledBy: Re,
      ariaLevel: Z,
      ariaLive: null,
      ariaModal: Ze,
      ariaMultiLine: Ze,
      ariaMultiSelectable: Ze,
      ariaOrientation: null,
      ariaOwns: Re,
      ariaPlaceholder: null,
      ariaPosInSet: Z,
      ariaPressed: Ze,
      ariaReadOnly: Ze,
      ariaRelevant: null,
      ariaRequired: Ze,
      ariaRoleDescription: Re,
      ariaRowCount: Z,
      ariaRowIndex: Z,
      ariaRowSpan: Z,
      ariaSelected: Ze,
      ariaSetSize: Z,
      ariaSort: null,
      ariaValueMax: Z,
      ariaValueMin: Z,
      ariaValueNow: Z,
      ariaValueText: null,
      role: null
    }
  }), q9 = Tn({
    space: "html",
    attributes: {
      acceptcharset: "accept-charset",
      classname: "class",
      htmlfor: "for",
      httpequiv: "http-equiv"
    },
    transform: Jy,
    mustUseProperty: ["checked", "multiple", "muted", "selected"],
    properties: {
      // Standard Properties.
      abbr: null,
      accept: kn,
      acceptCharset: Re,
      accessKey: Re,
      action: null,
      allow: null,
      allowFullScreen: de,
      allowPaymentRequest: de,
      allowUserMedia: de,
      alt: null,
      as: null,
      async: de,
      autoCapitalize: null,
      autoComplete: Re,
      autoFocus: de,
      autoPlay: de,
      blocking: Re,
      capture: de,
      charSet: null,
      checked: de,
      cite: null,
      className: Re,
      cols: Z,
      colSpan: null,
      content: null,
      contentEditable: Ze,
      controls: de,
      controlsList: Re,
      coords: Z | kn,
      crossOrigin: null,
      data: null,
      dateTime: null,
      decoding: null,
      default: de,
      defer: de,
      dir: null,
      dirName: null,
      disabled: de,
      download: Uy,
      draggable: Ze,
      encType: null,
      enterKeyHint: null,
      fetchPriority: null,
      form: null,
      formAction: null,
      formEncType: null,
      formMethod: null,
      formNoValidate: de,
      formTarget: null,
      headers: Re,
      height: Z,
      hidden: de,
      high: Z,
      href: null,
      hrefLang: null,
      htmlFor: Re,
      httpEquiv: Re,
      id: null,
      imageSizes: null,
      imageSrcSet: null,
      inert: de,
      inputMode: null,
      integrity: null,
      is: null,
      isMap: de,
      itemId: null,
      itemProp: Re,
      itemRef: Re,
      itemScope: de,
      itemType: Re,
      kind: null,
      label: null,
      lang: null,
      language: null,
      list: null,
      loading: null,
      loop: de,
      low: Z,
      manifest: null,
      max: null,
      maxLength: Z,
      media: null,
      method: null,
      min: null,
      minLength: Z,
      multiple: de,
      muted: de,
      name: null,
      nonce: null,
      noModule: de,
      noValidate: de,
      onAbort: null,
      onAfterPrint: null,
      onAuxClick: null,
      onBeforeMatch: null,
      onBeforePrint: null,
      onBeforeToggle: null,
      onBeforeUnload: null,
      onBlur: null,
      onCancel: null,
      onCanPlay: null,
      onCanPlayThrough: null,
      onChange: null,
      onClick: null,
      onClose: null,
      onContextLost: null,
      onContextMenu: null,
      onContextRestored: null,
      onCopy: null,
      onCueChange: null,
      onCut: null,
      onDblClick: null,
      onDrag: null,
      onDragEnd: null,
      onDragEnter: null,
      onDragExit: null,
      onDragLeave: null,
      onDragOver: null,
      onDragStart: null,
      onDrop: null,
      onDurationChange: null,
      onEmptied: null,
      onEnded: null,
      onError: null,
      onFocus: null,
      onFormData: null,
      onHashChange: null,
      onInput: null,
      onInvalid: null,
      onKeyDown: null,
      onKeyPress: null,
      onKeyUp: null,
      onLanguageChange: null,
      onLoad: null,
      onLoadedData: null,
      onLoadedMetadata: null,
      onLoadEnd: null,
      onLoadStart: null,
      onMessage: null,
      onMessageError: null,
      onMouseDown: null,
      onMouseEnter: null,
      onMouseLeave: null,
      onMouseMove: null,
      onMouseOut: null,
      onMouseOver: null,
      onMouseUp: null,
      onOffline: null,
      onOnline: null,
      onPageHide: null,
      onPageShow: null,
      onPaste: null,
      onPause: null,
      onPlay: null,
      onPlaying: null,
      onPopState: null,
      onProgress: null,
      onRateChange: null,
      onRejectionHandled: null,
      onReset: null,
      onResize: null,
      onScroll: null,
      onScrollEnd: null,
      onSecurityPolicyViolation: null,
      onSeeked: null,
      onSeeking: null,
      onSelect: null,
      onSlotChange: null,
      onStalled: null,
      onStorage: null,
      onSubmit: null,
      onSuspend: null,
      onTimeUpdate: null,
      onToggle: null,
      onUnhandledRejection: null,
      onUnload: null,
      onVolumeChange: null,
      onWaiting: null,
      onWheel: null,
      open: de,
      optimum: Z,
      pattern: null,
      ping: Re,
      placeholder: null,
      playsInline: de,
      popover: null,
      popoverTarget: null,
      popoverTargetAction: null,
      poster: null,
      preload: null,
      readOnly: de,
      referrerPolicy: null,
      rel: Re,
      required: de,
      reversed: de,
      rows: Z,
      rowSpan: Z,
      sandbox: Re,
      scope: null,
      scoped: de,
      seamless: de,
      selected: de,
      shadowRootDelegatesFocus: de,
      shadowRootMode: null,
      shape: null,
      size: Z,
      sizes: null,
      slot: null,
      span: Z,
      spellCheck: Ze,
      src: null,
      srcDoc: null,
      srcLang: null,
      srcSet: null,
      start: Z,
      step: null,
      style: null,
      tabIndex: Z,
      target: null,
      title: null,
      translate: null,
      type: null,
      typeMustMatch: de,
      useMap: null,
      value: Ze,
      width: Z,
      wrap: null,
      // Legacy.
      // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis
      align: null,
      // Several. Use CSS `text-align` instead,
      aLink: null,
      // `<body>`. Use CSS `a:active {color}` instead
      archive: Re,
      // `<object>`. List of URIs to archives
      axis: null,
      // `<td>` and `<th>`. Use `scope` on `<th>`
      background: null,
      // `<body>`. Use CSS `background-image` instead
      bgColor: null,
      // `<body>` and table elements. Use CSS `background-color` instead
      border: Z,
      // `<table>`. Use CSS `border-width` instead,
      borderColor: null,
      // `<table>`. Use CSS `border-color` instead,
      bottomMargin: Z,
      // `<body>`
      cellPadding: null,
      // `<table>`
      cellSpacing: null,
      // `<table>`
      char: null,
      // Several table elements. When `align=char`, sets the character to align on
      charOff: null,
      // Several table elements. When `char`, offsets the alignment
      classId: null,
      // `<object>`
      clear: null,
      // `<br>`. Use CSS `clear` instead
      code: null,
      // `<object>`
      codeBase: null,
      // `<object>`
      codeType: null,
      // `<object>`
      color: null,
      // `<font>` and `<hr>`. Use CSS instead
      compact: de,
      // Lists. Use CSS to reduce space between items instead
      declare: de,
      // `<object>`
      event: null,
      // `<script>`
      face: null,
      // `<font>`. Use CSS instead
      frame: null,
      // `<table>`
      frameBorder: null,
      // `<iframe>`. Use CSS `border` instead
      hSpace: Z,
      // `<img>` and `<object>`
      leftMargin: Z,
      // `<body>`
      link: null,
      // `<body>`. Use CSS `a:link {color: *}` instead
      longDesc: null,
      // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
      lowSrc: null,
      // `<img>`. Use a `<picture>`
      marginHeight: Z,
      // `<body>`
      marginWidth: Z,
      // `<body>`
      noResize: de,
      // `<frame>`
      noHref: de,
      // `<area>`. Use no href instead of an explicit `nohref`
      noShade: de,
      // `<hr>`. Use background-color and height instead of borders
      noWrap: de,
      // `<td>` and `<th>`
      object: null,
      // `<applet>`
      profile: null,
      // `<head>`
      prompt: null,
      // `<isindex>`
      rev: null,
      // `<link>`
      rightMargin: Z,
      // `<body>`
      rules: null,
      // `<table>`
      scheme: null,
      // `<meta>`
      scrolling: Ze,
      // `<frame>`. Use overflow in the child context
      standby: null,
      // `<object>`
      summary: null,
      // `<table>`
      text: null,
      // `<body>`. Use CSS `color` instead
      topMargin: Z,
      // `<body>`
      valueType: null,
      // `<param>`
      version: null,
      // `<html>`. Use a doctype.
      vAlign: null,
      // Several. Use CSS `vertical-align` instead
      vLink: null,
      // `<body>`. Use CSS `a:visited {color}` instead
      vSpace: Z,
      // `<img>` and `<object>`
      // Non-standard Properties.
      allowTransparency: null,
      autoCorrect: null,
      autoSave: null,
      disablePictureInPicture: de,
      disableRemotePlayback: de,
      prefix: null,
      property: null,
      results: Z,
      security: null,
      unselectable: null
    }
  }), $9 = Tn({
    space: "svg",
    attributes: {
      accentHeight: "accent-height",
      alignmentBaseline: "alignment-baseline",
      arabicForm: "arabic-form",
      baselineShift: "baseline-shift",
      capHeight: "cap-height",
      className: "class",
      clipPath: "clip-path",
      clipRule: "clip-rule",
      colorInterpolation: "color-interpolation",
      colorInterpolationFilters: "color-interpolation-filters",
      colorProfile: "color-profile",
      colorRendering: "color-rendering",
      crossOrigin: "crossorigin",
      dataType: "datatype",
      dominantBaseline: "dominant-baseline",
      enableBackground: "enable-background",
      fillOpacity: "fill-opacity",
      fillRule: "fill-rule",
      floodColor: "flood-color",
      floodOpacity: "flood-opacity",
      fontFamily: "font-family",
      fontSize: "font-size",
      fontSizeAdjust: "font-size-adjust",
      fontStretch: "font-stretch",
      fontStyle: "font-style",
      fontVariant: "font-variant",
      fontWeight: "font-weight",
      glyphName: "glyph-name",
      glyphOrientationHorizontal: "glyph-orientation-horizontal",
      glyphOrientationVertical: "glyph-orientation-vertical",
      hrefLang: "hreflang",
      horizAdvX: "horiz-adv-x",
      horizOriginX: "horiz-origin-x",
      horizOriginY: "horiz-origin-y",
      imageRendering: "image-rendering",
      letterSpacing: "letter-spacing",
      lightingColor: "lighting-color",
      markerEnd: "marker-end",
      markerMid: "marker-mid",
      markerStart: "marker-start",
      navDown: "nav-down",
      navDownLeft: "nav-down-left",
      navDownRight: "nav-down-right",
      navLeft: "nav-left",
      navNext: "nav-next",
      navPrev: "nav-prev",
      navRight: "nav-right",
      navUp: "nav-up",
      navUpLeft: "nav-up-left",
      navUpRight: "nav-up-right",
      onAbort: "onabort",
      onActivate: "onactivate",
      onAfterPrint: "onafterprint",
      onBeforePrint: "onbeforeprint",
      onBegin: "onbegin",
      onCancel: "oncancel",
      onCanPlay: "oncanplay",
      onCanPlayThrough: "oncanplaythrough",
      onChange: "onchange",
      onClick: "onclick",
      onClose: "onclose",
      onCopy: "oncopy",
      onCueChange: "oncuechange",
      onCut: "oncut",
      onDblClick: "ondblclick",
      onDrag: "ondrag",
      onDragEnd: "ondragend",
      onDragEnter: "ondragenter",
      onDragExit: "ondragexit",
      onDragLeave: "ondragleave",
      onDragOver: "ondragover",
      onDragStart: "ondragstart",
      onDrop: "ondrop",
      onDurationChange: "ondurationchange",
      onEmptied: "onemptied",
      onEnd: "onend",
      onEnded: "onended",
      onError: "onerror",
      onFocus: "onfocus",
      onFocusIn: "onfocusin",
      onFocusOut: "onfocusout",
      onHashChange: "onhashchange",
      onInput: "oninput",
      onInvalid: "oninvalid",
      onKeyDown: "onkeydown",
      onKeyPress: "onkeypress",
      onKeyUp: "onkeyup",
      onLoad: "onload",
      onLoadedData: "onloadeddata",
      onLoadedMetadata: "onloadedmetadata",
      onLoadStart: "onloadstart",
      onMessage: "onmessage",
      onMouseDown: "onmousedown",
      onMouseEnter: "onmouseenter",
      onMouseLeave: "onmouseleave",
      onMouseMove: "onmousemove",
      onMouseOut: "onmouseout",
      onMouseOver: "onmouseover",
      onMouseUp: "onmouseup",
      onMouseWheel: "onmousewheel",
      onOffline: "onoffline",
      onOnline: "ononline",
      onPageHide: "onpagehide",
      onPageShow: "onpageshow",
      onPaste: "onpaste",
      onPause: "onpause",
      onPlay: "onplay",
      onPlaying: "onplaying",
      onPopState: "onpopstate",
      onProgress: "onprogress",
      onRateChange: "onratechange",
      onRepeat: "onrepeat",
      onReset: "onreset",
      onResize: "onresize",
      onScroll: "onscroll",
      onSeeked: "onseeked",
      onSeeking: "onseeking",
      onSelect: "onselect",
      onShow: "onshow",
      onStalled: "onstalled",
      onStorage: "onstorage",
      onSubmit: "onsubmit",
      onSuspend: "onsuspend",
      onTimeUpdate: "ontimeupdate",
      onToggle: "ontoggle",
      onUnload: "onunload",
      onVolumeChange: "onvolumechange",
      onWaiting: "onwaiting",
      onZoom: "onzoom",
      overlinePosition: "overline-position",
      overlineThickness: "overline-thickness",
      paintOrder: "paint-order",
      panose1: "panose-1",
      pointerEvents: "pointer-events",
      referrerPolicy: "referrerpolicy",
      renderingIntent: "rendering-intent",
      shapeRendering: "shape-rendering",
      stopColor: "stop-color",
      stopOpacity: "stop-opacity",
      strikethroughPosition: "strikethrough-position",
      strikethroughThickness: "strikethrough-thickness",
      strokeDashArray: "stroke-dasharray",
      strokeDashOffset: "stroke-dashoffset",
      strokeLineCap: "stroke-linecap",
      strokeLineJoin: "stroke-linejoin",
      strokeMiterLimit: "stroke-miterlimit",
      strokeOpacity: "stroke-opacity",
      strokeWidth: "stroke-width",
      tabIndex: "tabindex",
      textAnchor: "text-anchor",
      textDecoration: "text-decoration",
      textRendering: "text-rendering",
      transformOrigin: "transform-origin",
      typeOf: "typeof",
      underlinePosition: "underline-position",
      underlineThickness: "underline-thickness",
      unicodeBidi: "unicode-bidi",
      unicodeRange: "unicode-range",
      unitsPerEm: "units-per-em",
      vAlphabetic: "v-alphabetic",
      vHanging: "v-hanging",
      vIdeographic: "v-ideographic",
      vMathematical: "v-mathematical",
      vectorEffect: "vector-effect",
      vertAdvY: "vert-adv-y",
      vertOriginX: "vert-origin-x",
      vertOriginY: "vert-origin-y",
      wordSpacing: "word-spacing",
      writingMode: "writing-mode",
      xHeight: "x-height",
      // These were camelcased in Tiny. Now lowercased in SVG 2
      playbackOrder: "playbackorder",
      timelineBegin: "timelinebegin"
    },
    transform: Wy,
    properties: {
      about: Rt,
      accentHeight: Z,
      accumulate: null,
      additive: null,
      alignmentBaseline: null,
      alphabetic: Z,
      amplitude: Z,
      arabicForm: null,
      ascent: Z,
      attributeName: null,
      attributeType: null,
      azimuth: Z,
      bandwidth: null,
      baselineShift: null,
      baseFrequency: null,
      baseProfile: null,
      bbox: null,
      begin: null,
      bias: Z,
      by: null,
      calcMode: null,
      capHeight: Z,
      className: Re,
      clip: null,
      clipPath: null,
      clipPathUnits: null,
      clipRule: null,
      color: null,
      colorInterpolation: null,
      colorInterpolationFilters: null,
      colorProfile: null,
      colorRendering: null,
      content: null,
      contentScriptType: null,
      contentStyleType: null,
      crossOrigin: null,
      cursor: null,
      cx: null,
      cy: null,
      d: null,
      dataType: null,
      defaultAction: null,
      descent: Z,
      diffuseConstant: Z,
      direction: null,
      display: null,
      dur: null,
      divisor: Z,
      dominantBaseline: null,
      download: de,
      dx: null,
      dy: null,
      edgeMode: null,
      editable: null,
      elevation: Z,
      enableBackground: null,
      end: null,
      event: null,
      exponent: Z,
      externalResourcesRequired: null,
      fill: null,
      fillOpacity: Z,
      fillRule: null,
      filter: null,
      filterRes: null,
      filterUnits: null,
      floodColor: null,
      floodOpacity: null,
      focusable: null,
      focusHighlight: null,
      fontFamily: null,
      fontSize: null,
      fontSizeAdjust: null,
      fontStretch: null,
      fontStyle: null,
      fontVariant: null,
      fontWeight: null,
      format: null,
      fr: null,
      from: null,
      fx: null,
      fy: null,
      g1: kn,
      g2: kn,
      glyphName: kn,
      glyphOrientationHorizontal: null,
      glyphOrientationVertical: null,
      glyphRef: null,
      gradientTransform: null,
      gradientUnits: null,
      handler: null,
      hanging: Z,
      hatchContentUnits: null,
      hatchUnits: null,
      height: null,
      href: null,
      hrefLang: null,
      horizAdvX: Z,
      horizOriginX: Z,
      horizOriginY: Z,
      id: null,
      ideographic: Z,
      imageRendering: null,
      initialVisibility: null,
      in: null,
      in2: null,
      intercept: Z,
      k: Z,
      k1: Z,
      k2: Z,
      k3: Z,
      k4: Z,
      kernelMatrix: Rt,
      kernelUnitLength: null,
      keyPoints: null,
      // SEMI_COLON_SEPARATED
      keySplines: null,
      // SEMI_COLON_SEPARATED
      keyTimes: null,
      // SEMI_COLON_SEPARATED
      kerning: null,
      lang: null,
      lengthAdjust: null,
      letterSpacing: null,
      lightingColor: null,
      limitingConeAngle: Z,
      local: null,
      markerEnd: null,
      markerMid: null,
      markerStart: null,
      markerHeight: null,
      markerUnits: null,
      markerWidth: null,
      mask: null,
      maskContentUnits: null,
      maskUnits: null,
      mathematical: null,
      max: null,
      media: null,
      mediaCharacterEncoding: null,
      mediaContentEncodings: null,
      mediaSize: Z,
      mediaTime: null,
      method: null,
      min: null,
      mode: null,
      name: null,
      navDown: null,
      navDownLeft: null,
      navDownRight: null,
      navLeft: null,
      navNext: null,
      navPrev: null,
      navRight: null,
      navUp: null,
      navUpLeft: null,
      navUpRight: null,
      numOctaves: null,
      observer: null,
      offset: null,
      onAbort: null,
      onActivate: null,
      onAfterPrint: null,
      onBeforePrint: null,
      onBegin: null,
      onCancel: null,
      onCanPlay: null,
      onCanPlayThrough: null,
      onChange: null,
      onClick: null,
      onClose: null,
      onCopy: null,
      onCueChange: null,
      onCut: null,
      onDblClick: null,
      onDrag: null,
      onDragEnd: null,
      onDragEnter: null,
      onDragExit: null,
      onDragLeave: null,
      onDragOver: null,
      onDragStart: null,
      onDrop: null,
      onDurationChange: null,
      onEmptied: null,
      onEnd: null,
      onEnded: null,
      onError: null,
      onFocus: null,
      onFocusIn: null,
      onFocusOut: null,
      onHashChange: null,
      onInput: null,
      onInvalid: null,
      onKeyDown: null,
      onKeyPress: null,
      onKeyUp: null,
      onLoad: null,
      onLoadedData: null,
      onLoadedMetadata: null,
      onLoadStart: null,
      onMessage: null,
      onMouseDown: null,
      onMouseEnter: null,
      onMouseLeave: null,
      onMouseMove: null,
      onMouseOut: null,
      onMouseOver: null,
      onMouseUp: null,
      onMouseWheel: null,
      onOffline: null,
      onOnline: null,
      onPageHide: null,
      onPageShow: null,
      onPaste: null,
      onPause: null,
      onPlay: null,
      onPlaying: null,
      onPopState: null,
      onProgress: null,
      onRateChange: null,
      onRepeat: null,
      onReset: null,
      onResize: null,
      onScroll: null,
      onSeeked: null,
      onSeeking: null,
      onSelect: null,
      onShow: null,
      onStalled: null,
      onStorage: null,
      onSubmit: null,
      onSuspend: null,
      onTimeUpdate: null,
      onToggle: null,
      onUnload: null,
      onVolumeChange: null,
      onWaiting: null,
      onZoom: null,
      opacity: null,
      operator: null,
      order: null,
      orient: null,
      orientation: null,
      origin: null,
      overflow: null,
      overlay: null,
      overlinePosition: Z,
      overlineThickness: Z,
      paintOrder: null,
      panose1: null,
      path: null,
      pathLength: Z,
      patternContentUnits: null,
      patternTransform: null,
      patternUnits: null,
      phase: null,
      ping: Re,
      pitch: null,
      playbackOrder: null,
      pointerEvents: null,
      points: null,
      pointsAtX: Z,
      pointsAtY: Z,
      pointsAtZ: Z,
      preserveAlpha: null,
      preserveAspectRatio: null,
      primitiveUnits: null,
      propagate: null,
      property: Rt,
      r: null,
      radius: null,
      referrerPolicy: null,
      refX: null,
      refY: null,
      rel: Rt,
      rev: Rt,
      renderingIntent: null,
      repeatCount: null,
      repeatDur: null,
      requiredExtensions: Rt,
      requiredFeatures: Rt,
      requiredFonts: Rt,
      requiredFormats: Rt,
      resource: null,
      restart: null,
      result: null,
      rotate: null,
      rx: null,
      ry: null,
      scale: null,
      seed: null,
      shapeRendering: null,
      side: null,
      slope: null,
      snapshotTime: null,
      specularConstant: Z,
      specularExponent: Z,
      spreadMethod: null,
      spacing: null,
      startOffset: null,
      stdDeviation: null,
      stemh: null,
      stemv: null,
      stitchTiles: null,
      stopColor: null,
      stopOpacity: null,
      strikethroughPosition: Z,
      strikethroughThickness: Z,
      string: null,
      stroke: null,
      strokeDashArray: Rt,
      strokeDashOffset: null,
      strokeLineCap: null,
      strokeLineJoin: null,
      strokeMiterLimit: Z,
      strokeOpacity: Z,
      strokeWidth: null,
      style: null,
      surfaceScale: Z,
      syncBehavior: null,
      syncBehaviorDefault: null,
      syncMaster: null,
      syncTolerance: null,
      syncToleranceDefault: null,
      systemLanguage: Rt,
      tabIndex: Z,
      tableValues: null,
      target: null,
      targetX: Z,
      targetY: Z,
      textAnchor: null,
      textDecoration: null,
      textRendering: null,
      textLength: null,
      timelineBegin: null,
      title: null,
      transformBehavior: null,
      type: null,
      typeOf: Rt,
      to: null,
      transform: null,
      transformOrigin: null,
      u1: null,
      u2: null,
      underlinePosition: Z,
      underlineThickness: Z,
      unicode: null,
      unicodeBidi: null,
      unicodeRange: null,
      unitsPerEm: Z,
      values: null,
      vAlphabetic: Z,
      vMathematical: Z,
      vectorEffect: null,
      vHanging: Z,
      vIdeographic: Z,
      version: null,
      vertAdvY: Z,
      vertOriginX: Z,
      vertOriginY: Z,
      viewBox: null,
      viewTarget: null,
      visibility: null,
      width: null,
      widths: null,
      wordSpacing: null,
      writingMode: null,
      x: null,
      x1: null,
      x2: null,
      xChannelSelector: null,
      xHeight: Z,
      y: null,
      y1: null,
      y2: null,
      yChannelSelector: null,
      z: null,
      zoomAndPan: null
    }
  }), V9 = /^data[-\w.:]+$/i, Ry = /-[a-z]/g, U9 = /[A-Z]/g;
  s(z9, "find");
  s(H9, "kebab");
  s(W9, "camelcase");
  J9 = {
    classId: "classID",
    dataType: "datatype",
    itemId: "itemID",
    strokeDashArray: "strokeDasharray",
    strokeDashOffset: "strokeDashoffset",
    strokeLineCap: "strokeLinecap",
    strokeLineJoin: "strokeLinejoin",
    strokeMiterLimit: "strokeMiterlimit",
    typeOf: "typeof",
    xLinkActuate: "xlinkActuate",
    xLinkArcRole: "xlinkArcrole",
    xLinkHref: "xlinkHref",
    xLinkRole: "xlinkRole",
    xLinkShow: "xlinkShow",
    xLinkTitle: "xlinkTitle",
    xLinkType: "xlinkType",
    xmlnsXLink: "xmlnsXlink"
  }, G9 = Vy([Hy, zy, Gy, Xy, q9], "html"), tp = Vy([Hy, zy, Gy, Xy, $9], "svg"), rp = Yy("end"), ip = Yy("start");
  s(Yy, "point");
  s(np, "position");
  Ny = {}.hasOwnProperty;
  s(X9, "zwitch");
  s(Y9, "comment");
  s(K9, "stringify");
  Q9 = /[$_\p{ID_Start}]/u, Z9 = /[$_\u{200C}\u{200D}\p{ID_Continue}]/u, e4 = /[-$_\u{200C}\u{200D}\p{ID_Continue}]/u, t4 = /^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,
  r4 = /^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u, Ky = {};
  s(Ht, "start");
  s(Pn, "cont");
  s(cr, "name");
  s(i4, "stringify2");
  n4 = Fa(L9(), 1), s4 = n4.default, Yh = {}.hasOwnProperty, u4 = /[A-Z]/g, a4 = /-([a-z])/g, o4 = /* @__PURE__ */ new Set(["td", "th"]);
  s(l4, "element");
  s(c4, "parseStyle");
  s(h4, "transformStylesToCssCasing");
  s(Qy, "transformStyleToCssCasing");
  s(p4, "toCamel");
  s(f4, "toDash");
  d4 = {}.hasOwnProperty, m4 = [];
  s(Aa, "attachComments");
  s(Zy, "walk");
  s(Ly, "slice");
  s(sp, "compare");
  s(My, "mdxExpression");
  s(jy, "mdxJsxElement");
  s(D4, "mdxjsEsm");
  g4 = /[ \t\n\f\r]/g;
  s(x4, "whitespace");
  s(qy, "empty");
  s(y4, "root");
  s(E4, "text");
  b4 = {
    comment: Y9,
    doctype: v4,
    element: l4,
    mdxFlowExpression: My,
    mdxJsxFlowElement: jy,
    mdxJsxTextElement: jy,
    mdxTextExpression: My,
    mdxjsEsm: D4,
    root: y4,
    text: E4
  };
  s(v4, "ignore");
  C4 = {}.hasOwnProperty, w4 = /* @__PURE__ */ new Set(["table", "tbody", "thead", "tfoot", "tr"]);
  s(A4, "createState");
  s(F4, "invalid");
  s(S4, "unknown");
  s(_4, "all");
  s(k4, "inherit");
  s(e1, "patch");
  s(B4, "createJsxAttributeName");
  s(T4, "createJsxElementName");
  s(t1, "createJsxNameFromString");
  s(Sa, "toEstree");
});

// ../node_modules/@storybook/docs-mdx/node_modules/acorn/dist/acorn.mjs
function cp(e, t) {
  for (var r = 65536, i = 0; i < t.length; i += 2) {
    if (r += t[i], r > e)
      return !1;
    if (r += t[i + 1], r >= e)
      return !0;
  }
  return !1;
}
function Xr(e, t) {
  return e < 65 ? e === 36 : e < 91 ? !0 : e < 97 ? e === 95 : e < 123 ? !0 : e <= 65535 ? e >= 170 && N4.test(String.fromCharCode(e)) : t ===
  !1 ? !1 : cp(e, a1);
}
function In(e, t) {
  return e < 48 ? e === 36 : e < 58 ? !0 : e < 65 ? !1 : e < 91 ? !0 : e < 97 ? e === 95 : e < 123 ? !0 : e <= 65535 ? e >= 170 && L4.test(String.
  fromCharCode(e)) : t === !1 ? !1 : cp(e, a1) || cp(e, P4);
}
function Wt(e, t) {
  return new Ae(e, { beforeExpr: !0, binop: t });
}
function ve(e, t) {
  return t === void 0 && (t = {}), t.keyword = e, dp[e] = new Ae(e, t);
}
function On(e) {
  return e === 10 || e === 13 || e === 8232 || e === 8233;
}
function l1(e, t, r) {
  r === void 0 && (r = e.length);
  for (var i = t; i < r; i++) {
    var n = e.charCodeAt(i);
    if (On(n))
      return i < r - 1 && n === 13 && e.charCodeAt(i + 1) === 10 ? i + 2 : i + 1;
  }
  return -1;
}
function vi(e) {
  return i1[e] || (i1[e] = new RegExp("^(?:" + e.replace(/ /g, "|") + ")$"));
}
function Ci(e) {
  return e <= 65535 ? String.fromCharCode(e) : (e -= 65536, String.fromCharCode((e >> 10) + 55296, (e & 1023) + 56320));
}
function p1(e, t) {
  for (var r = 1, i = 0; ; ) {
    var n = l1(e, i, t);
    if (n < 0)
      return new Os(r, t - i);
    ++r, i = n;
  }
}
function V4(e) {
  var t = {};
  for (var r in hp)
    t[r] = e && Ns(e, r) ? e[r] : hp[r];
  if (t.ecmaVersion === "latest" ? t.ecmaVersion = 1e8 : t.ecmaVersion == null ? (!n1 && typeof console == "object" && console.warn && (n1 =
  !0, console.warn(`Since Acorn 8.0.0, options.ecmaVersion is required.
Defaulting to 2020, but this will stop working in the future.`)), t.ecmaVersion = 11) : t.ecmaVersion >= 2015 && (t.ecmaVersion -= 2009), t.
  allowReserved == null && (t.allowReserved = t.ecmaVersion < 5), (!e || e.allowHashBang == null) && (t.allowHashBang = t.ecmaVersion >= 14),
  r1(t.onToken)) {
    var i = t.onToken;
    t.onToken = function(n) {
      return i.push(n);
    };
  }
  return r1(t.onComment) && (t.onComment = U4(t, t.onComment)), t;
}
function U4(e, t) {
  return function(r, i, n, u, a, o) {
    var l = {
      type: r ? "Block" : "Line",
      value: i,
      start: n,
      end: u
    };
    e.locations && (l.loc = new Ia(this, a, o)), e.ranges && (l.range = [n, u]), t.push(l);
  };
}
function xp(e, t) {
  return Rn | (e ? mp : 0) | (t ? f1 : 0);
}
function J4(e, t) {
  var r = t.key.name, i = e[r], n = "true";
  return t.type === "MethodDefinition" && (t.kind === "get" || t.kind === "set") && (n = (t.static ? "s" : "i") + t.kind), i === "iget" && n ===
  "iset" || i === "iset" && n === "iget" || i === "sget" && n === "sset" || i === "sset" && n === "sget" ? (e[r] = "true", !1) : i ? !0 : (e[r] =
  n, !1);
}
function Ba(e, t) {
  var r = e.computed, i = e.key;
  return !r && (i.type === "Identifier" && i.name === t || i.type === "Literal" && i.value === t);
}
function b1(e) {
  return e.type === "Identifier" || e.type === "ParenthesizedExpression" && b1(e.expression);
}
function fp(e) {
  return e.type === "MemberExpression" && e.property.type === "PrivateIdentifier" || e.type === "ChainExpression" && fp(e.expression) || e.type ===
  "ParenthesizedExpression" && fp(e.expression);
}
function v1(e, t, r, i) {
  return e.type = t, e.end = r, this.options.locations && (e.loc.end = i), this.options.ranges && (e.range[1] = r), e;
}
function rI(e) {
  var t = I1[e] = {
    binary: vi(K4[e] + " " + s1),
    binaryOfStrings: vi(Z4[e]),
    nonBinary: {
      General_Category: vi(s1),
      Script: vi(tI[e])
    }
  };
  t.nonBinary.Script_Extensions = t.nonBinary.Script, t.nonBinary.gc = t.nonBinary.General_Category, t.nonBinary.sc = t.nonBinary.Script, t.
  nonBinary.scx = t.nonBinary.Script_Extensions;
}
function iI(e) {
  for (var t in e)
    return !0;
  return !1;
}
function O1(e) {
  return e === 36 || e >= 40 && e <= 43 || e === 46 || e === 63 || e >= 91 && e <= 94 || e >= 123 && e <= 125;
}
function nI(e) {
  return Xr(e, !0) || e === 36 || e === 95;
}
function sI(e) {
  return In(e, !0) || e === 36 || e === 95 || e === 8204 || e === 8205;
}
function R1(e) {
  return e >= 65 && e <= 90 || e >= 97 && e <= 122;
}
function uI(e) {
  return e >= 0 && e <= 1114111;
}
function aI(e) {
  return e === 100 || e === 68 || e === 115 || e === 83 || e === 119 || e === 87;
}
function L1(e) {
  return R1(e) || e === 95;
}
function oI(e) {
  return L1(e) || Na(e);
}
function lI(e) {
  return e === 33 || e >= 35 && e <= 38 || e >= 42 && e <= 44 || e === 46 || e >= 58 && e <= 64 || e === 94 || e === 96 || e === 126;
}
function cI(e) {
  return e === 40 || e === 41 || e === 45 || e === 47 || e >= 91 && e <= 93 || e >= 123 && e <= 125;
}
function hI(e) {
  return e === 33 || e === 35 || e === 37 || e === 38 || e === 44 || e === 45 || e >= 58 && e <= 62 || e === 64 || e === 96 || e === 126;
}
function Na(e) {
  return e >= 48 && e <= 57;
}
function M1(e) {
  return e >= 48 && e <= 57 || e >= 65 && e <= 70 || e >= 97 && e <= 102;
}
function j1(e) {
  return e >= 65 && e <= 70 ? 10 + (e - 65) : e >= 97 && e <= 102 ? 10 + (e - 97) : e - 48;
}
function q1(e) {
  return e >= 48 && e <= 55;
}
function pI(e, t) {
  return t ? parseInt(e, 8) : parseFloat(e.replace(/_/g, ""));
}
function $1(e) {
  return typeof BigInt != "function" ? null : BigInt(e.replace(/_/g, ""));
}
var P4, a1, I4, o1, ap, op, O4, R4, N4, L4, Ae, Jt, St, dp, F, Yt, M4, c1, Gt, h1, j4, q4, Ns, r1, i1, $4, Os, Ia, hp, n1, Rs, Rn, mp, f1, d1,
m1, Dp, D1, Ls, gp, ka, yp, Kr, g1, x1, y1, et, Tr, gt, z4, Oa, ie, Ep, H4, W4, Is, pp, E1, Kt, hr, qe, Nn, pe, G4, Ta, wi, X4, Ra, Ms, C1, w1,
A1, F1, S1, Y4, K4, Q4, Z4, s1, _1, k1, B1, T1, P1, eI, tI, I1, u1, _a, lp, re, Pa, Pr, N1, Yr, Xt, bp, be, V1, fI, U1 = ht(() => {
  P4 = [509, 0, 227, 0, 150, 4, 294, 9, 1368, 2, 2, 1, 6, 3, 41, 2, 5, 0, 166, 1, 574, 3, 9, 9, 370, 1, 81, 2, 71, 10, 50, 3, 123, 2, 54, 14,
  32, 10, 3, 1, 11, 3, 46, 10, 8, 0, 46, 9, 7, 2, 37, 13, 2, 9, 6, 1, 45, 0, 13, 2, 49, 13, 9, 3, 2, 11, 83, 11, 7, 0, 3, 0, 158, 11, 6, 9, 7,
  3, 56, 1, 2, 6, 3, 1, 3, 2, 10, 0, 11, 1, 3, 6, 4, 4, 193, 17, 10, 9, 5, 0, 82, 19, 13, 9, 214, 6, 3, 8, 28, 1, 83, 16, 16, 9, 82, 12, 9, 9,
  84, 14, 5, 9, 243, 14, 166, 9, 71, 5, 2, 1, 3, 3, 2, 0, 2, 1, 13, 9, 120, 6, 3, 6, 4, 0, 29, 9, 41, 6, 2, 3, 9, 0, 10, 10, 47, 15, 406, 7,
  2, 7, 17, 9, 57, 21, 2, 13, 123, 5, 4, 0, 2, 1, 2, 6, 2, 0, 9, 9, 49, 4, 2, 1, 2, 4, 9, 9, 330, 3, 10, 1, 2, 0, 49, 6, 4, 4, 14, 9, 5351, 0,
  7, 14, 13835, 9, 87, 9, 39, 4, 60, 6, 26, 9, 1014, 0, 2, 54, 8, 3, 82, 0, 12, 1, 19628, 1, 4706, 45, 3, 22, 543, 4, 4, 5, 9, 7, 3, 6, 31, 3,
  149, 2, 1418, 49, 513, 54, 5, 49, 9, 0, 15, 0, 23, 4, 2, 14, 1361, 6, 2, 16, 3, 6, 2, 1, 2, 4, 101, 0, 161, 6, 10, 9, 357, 0, 62, 13, 499,
  13, 983, 6, 110, 6, 6, 9, 4759, 9, 787719, 239], a1 = [0, 11, 2, 25, 2, 18, 2, 1, 2, 14, 3, 13, 35, 122, 70, 52, 268, 28, 4, 48, 48, 31, 14,
  29, 6, 37, 11, 29, 3, 35, 5, 7, 2, 4, 43, 157, 19, 35, 5, 35, 5, 39, 9, 51, 13, 10, 2, 14, 2, 6, 2, 1, 2, 10, 2, 14, 2, 6, 2, 1, 68, 310, 10,
  21, 11, 7, 25, 5, 2, 41, 2, 8, 70, 5, 3, 0, 2, 43, 2, 1, 4, 0, 3, 22, 11, 22, 10, 30, 66, 18, 2, 1, 11, 21, 11, 25, 71, 55, 7, 1, 65, 0, 16,
  3, 2, 2, 2, 28, 43, 28, 4, 28, 36, 7, 2, 27, 28, 53, 11, 21, 11, 18, 14, 17, 111, 72, 56, 50, 14, 50, 14, 35, 349, 41, 7, 1, 79, 28, 11, 0,
  9, 21, 43, 17, 47, 20, 28, 22, 13, 52, 58, 1, 3, 0, 14, 44, 33, 24, 27, 35, 30, 0, 3, 0, 9, 34, 4, 0, 13, 47, 15, 3, 22, 0, 2, 0, 36, 17, 2,
  24, 20, 1, 64, 6, 2, 0, 2, 3, 2, 14, 2, 9, 8, 46, 39, 7, 3, 1, 3, 21, 2, 6, 2, 1, 2, 4, 4, 0, 19, 0, 13, 4, 159, 52, 19, 3, 21, 2, 31, 47,
  21, 1, 2, 0, 185, 46, 42, 3, 37, 47, 21, 0, 60, 42, 14, 0, 72, 26, 38, 6, 186, 43, 117, 63, 32, 7, 3, 0, 3, 7, 2, 1, 2, 23, 16, 0, 2, 0, 95,
  7, 3, 38, 17, 0, 2, 0, 29, 0, 11, 39, 8, 0, 22, 0, 12, 45, 20, 0, 19, 72, 264, 8, 2, 36, 18, 0, 50, 29, 113, 6, 2, 1, 2, 37, 22, 0, 26, 5,
  2, 1, 2, 31, 15, 0, 328, 18, 16, 0, 2, 12, 2, 33, 125, 0, 80, 921, 103, 110, 18, 195, 2637, 96, 16, 1071, 18, 5, 4026, 582, 8634, 568, 8, 30,
  18, 78, 18, 29, 19, 47, 17, 3, 32, 20, 6, 18, 689, 63, 129, 74, 6, 0, 67, 12, 65, 1, 2, 0, 29, 6135, 9, 1237, 43, 8, 8936, 3, 2, 6, 2, 1, 2,
  290, 16, 0, 30, 2, 3, 0, 15, 3, 9, 395, 2309, 106, 6, 12, 4, 8, 8, 9, 5991, 84, 2, 70, 2, 1, 3, 0, 3, 1, 3, 3, 2, 11, 2, 0, 2, 6, 2, 64, 2,
  3, 3, 7, 2, 6, 2, 27, 2, 3, 2, 4, 2, 0, 4, 6, 2, 339, 3, 24, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 30, 2, 24, 2, 7, 1845, 30,
  7, 5, 262, 61, 147, 44, 11, 6, 17, 0, 322, 29, 19, 43, 485, 27, 757, 6, 2, 3, 2, 1, 2, 14, 2, 196, 60, 67, 8, 0, 1205, 3, 2, 26, 2, 1, 2, 0,
  3, 0, 2, 9, 2, 3, 2, 0, 2, 0, 7, 0, 5, 0, 2, 0, 2, 0, 2, 2, 2, 1, 2, 0, 3, 0, 2, 0, 2, 0, 2, 0, 2, 0, 2, 1, 2, 0, 3, 3, 2, 6, 2, 3, 2, 3, 2,
  0, 2, 9, 2, 16, 6, 2, 2, 4, 2, 16, 4421, 42719, 33, 4153, 7, 221, 3, 5761, 15, 7472, 16, 621, 2467, 541, 1507, 4938, 6, 4191], I4 = "\u200C\u200D\xB7\u0300-\
\u036F\u0387\u0483-\u0487\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u0610-\u061A\u064B-\u0669\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7\u06E8\u06EA-\u06ED\u06F0-\u06F9\u0711\u0730-\u074A\u07A6-\u07B0\u07C0-\u07C9\u07EB-\u07F3\u07FD\u0816-\u0819\u081B-\u0823\u0825-\u0827\u0829-\u082D\u0859-\u085B\u0898-\u089F\u08CA-\u08E1\u08E3-\u0903\u093A-\u093C\u093E-\u094F\u0951-\u0957\u0962\u0963\u0966-\u096F\u0981-\u0983\u09BC\u09BE-\u09C4\u09C7\u09C8\u09CB-\u09CD\u09D7\u09E2\u09E3\u09E6-\u09EF\u09FE\u0A01-\u0A03\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A66-\u0A71\u0A75\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AE2\u0AE3\u0AE6-\
\u0AEF\u0AFA-\u0AFF\u0B01-\u0B03\u0B3C\u0B3E-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B55-\u0B57\u0B62\u0B63\u0B66-\u0B6F\u0B82\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0BE6-\u0BEF\u0C00-\u0C04\u0C3C\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C62\u0C63\u0C66-\u0C6F\u0C81-\u0C83\u0CBC\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CE2\u0CE3\u0CE6-\u0CEF\u0CF3\u0D00-\u0D03\u0D3B\u0D3C\u0D3E-\u0D44\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0D62\u0D63\u0D66-\u0D6F\u0D81-\u0D83\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0E50-\u0E59\u0EB1\u0EB4-\u0EBC\u0EC8-\u0ECE\u0ED0-\u0ED9\u0F18\u0F19\u0F20-\u0F29\
\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86\u0F87\u0F8D-\u0F97\u0F99-\u0FBC\u0FC6\u102B-\u103E\u1040-\u1049\u1056-\u1059\u105E-\u1060\u1062-\u1064\u1067-\u106D\u1071-\u1074\u1082-\u108D\u108F-\u109D\u135D-\u135F\u1369-\u1371\u1712-\u1715\u1732-\u1734\u1752\u1753\u1772\u1773\u17B4-\u17D3\u17DD\u17E0-\u17E9\u180B-\u180D\u180F-\u1819\u18A9\u1920-\u192B\u1930-\u193B\u1946-\u194F\u19D0-\u19DA\u1A17-\u1A1B\u1A55-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AB0-\u1ABD\u1ABF-\u1ACE\u1B00-\u1B04\u1B34-\u1B44\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1B82\u1BA1-\u1BAD\u1BB0-\u1BB9\u1BE6-\u1BF3\u1C24-\u1C37\u1C40-\u1C49\u1C50-\u1C59\
\u1CD0-\u1CD2\u1CD4-\u1CE8\u1CED\u1CF4\u1CF7-\u1CF9\u1DC0-\u1DFF\u200C\u200D\u203F\u2040\u2054\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2CEF-\u2CF1\u2D7F\u2DE0-\u2DFF\u302A-\u302F\u3099\u309A\u30FB\uA620-\uA629\uA66F\uA674-\uA67D\uA69E\uA69F\uA6F0\uA6F1\uA802\uA806\uA80B\uA823-\uA827\uA82C\uA880\uA881\uA8B4-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F1\uA8FF-\uA909\uA926-\uA92D\uA947-\uA953\uA980-\uA983\uA9B3-\uA9C0\uA9D0-\uA9D9\uA9E5\uA9F0-\uA9F9\uAA29-\uAA36\uAA43\uAA4C\uAA4D\uAA50-\uAA59\uAA7B-\uAA7D\uAAB0\uAAB2-\uAAB4\uAAB7\uAAB8\uAABE\uAABF\uAAC1\uAAEB-\uAAEF\uAAF5\uAAF6\uABE3-\uABEA\uABEC\uABED\uABF0-\uABF9\uFB1E\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFF10-\uFF19\uFF3F\
\uFF65", o1 = "\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u0870-\u0887\u0889-\u088E\u08A0-\u08C9\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\
\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C5D\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\
\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D04-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\
\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u1711\u171F-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4C\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\
\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2118-\u211D\u2124\u2126\u2128\u212A-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\
\u3096\u309B-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BF\u31F0-\u31FF\u3400-\u4DBF\u4E00-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7CA\uA7D0\uA7D1\uA7D3\uA7D5-\uA7D9\uA7F2-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2\
-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB69\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC",
  ap = {
    3: "abstract boolean byte char class double enum export extends final float goto implements import int interface long native package pri\
vate protected public short static super synchronized throws transient volatile",
    5: "class enum extends super const export import",
    6: "enum",
    strict: "implements interface let package private protected public static yield",
    strictBind: "eval arguments"
  }, op = "break case catch continue debugger default do else finally for function if return switch throw try var while with null true false\
 instanceof typeof void delete new in this", O4 = {
    5: op,
    "5module": op + " export import",
    6: op + " const class extends export import super"
  }, R4 = /^in(stanceof)?$/, N4 = new RegExp("[" + o1 + "]"), L4 = new RegExp("[" + o1 + I4 + "]");
  s(cp, "isInAstralSet");
  s(Xr, "isIdentifierStart");
  s(In, "isIdentifierChar");
  Ae = /* @__PURE__ */ s(function(t, r) {
    r === void 0 && (r = {}), this.label = t, this.keyword = r.keyword, this.beforeExpr = !!r.beforeExpr, this.startsExpr = !!r.startsExpr, this.
    isLoop = !!r.isLoop, this.isAssign = !!r.isAssign, this.prefix = !!r.prefix, this.postfix = !!r.postfix, this.binop = r.binop || null, this.
    updateContext = null;
  }, "TokenType");
  s(Wt, "binop");
  Jt = { beforeExpr: !0 }, St = { startsExpr: !0 }, dp = {};
  s(ve, "kw");
  F = {
    num: new Ae("num", St),
    regexp: new Ae("regexp", St),
    string: new Ae("string", St),
    name: new Ae("name", St),
    privateId: new Ae("privateId", St),
    eof: new Ae("eof"),
    // Punctuation token types.
    bracketL: new Ae("[", { beforeExpr: !0, startsExpr: !0 }),
    bracketR: new Ae("]"),
    braceL: new Ae("{", { beforeExpr: !0, startsExpr: !0 }),
    braceR: new Ae("}"),
    parenL: new Ae("(", { beforeExpr: !0, startsExpr: !0 }),
    parenR: new Ae(")"),
    comma: new Ae(",", Jt),
    semi: new Ae(";", Jt),
    colon: new Ae(":", Jt),
    dot: new Ae("."),
    question: new Ae("?", Jt),
    questionDot: new Ae("?."),
    arrow: new Ae("=>", Jt),
    template: new Ae("template"),
    invalidTemplate: new Ae("invalidTemplate"),
    ellipsis: new Ae("...", Jt),
    backQuote: new Ae("`", St),
    dollarBraceL: new Ae("${", { beforeExpr: !0, startsExpr: !0 }),
    // Operators. These carry several kinds of properties to help the
    // parser use them properly (the presence of these properties is
    // what categorizes them as operators).
    //
    // `binop`, when present, specifies that this operator is a binary
    // operator, and will refer to its precedence.
    //
    // `prefix` and `postfix` mark the operator as a prefix or postfix
    // unary operator.
    //
    // `isAssign` marks all of `=`, `+=`, `-=` etcetera, which act as
    // binary operators with a very low precedence, that should result
    // in AssignmentExpression nodes.
    eq: new Ae("=", { beforeExpr: !0, isAssign: !0 }),
    assign: new Ae("_=", { beforeExpr: !0, isAssign: !0 }),
    incDec: new Ae("++/--", { prefix: !0, postfix: !0, startsExpr: !0 }),
    prefix: new Ae("!/~", { beforeExpr: !0, prefix: !0, startsExpr: !0 }),
    logicalOR: Wt("||", 1),
    logicalAND: Wt("&&", 2),
    bitwiseOR: Wt("|", 3),
    bitwiseXOR: Wt("^", 4),
    bitwiseAND: Wt("&", 5),
    equality: Wt("==/!=/===/!==", 6),
    relational: Wt("</>/<=/>=", 7),
    bitShift: Wt("<</>>/>>>", 8),
    plusMin: new Ae("+/-", { beforeExpr: !0, binop: 9, prefix: !0, startsExpr: !0 }),
    modulo: Wt("%", 10),
    star: Wt("*", 10),
    slash: Wt("/", 10),
    starstar: new Ae("**", { beforeExpr: !0 }),
    coalesce: Wt("??", 1),
    // Keyword token types.
    _break: ve("break"),
    _case: ve("case", Jt),
    _catch: ve("catch"),
    _continue: ve("continue"),
    _debugger: ve("debugger"),
    _default: ve("default", Jt),
    _do: ve("do", { isLoop: !0, beforeExpr: !0 }),
    _else: ve("else", Jt),
    _finally: ve("finally"),
    _for: ve("for", { isLoop: !0 }),
    _function: ve("function", St),
    _if: ve("if"),
    _return: ve("return", Jt),
    _switch: ve("switch"),
    _throw: ve("throw", Jt),
    _try: ve("try"),
    _var: ve("var"),
    _const: ve("const"),
    _while: ve("while", { isLoop: !0 }),
    _with: ve("with"),
    _new: ve("new", { beforeExpr: !0, startsExpr: !0 }),
    _this: ve("this", St),
    _super: ve("super", St),
    _class: ve("class", St),
    _extends: ve("extends", Jt),
    _export: ve("export"),
    _import: ve("import", St),
    _null: ve("null", St),
    _true: ve("true", St),
    _false: ve("false", St),
    _in: ve("in", { beforeExpr: !0, binop: 7 }),
    _instanceof: ve("instanceof", { beforeExpr: !0, binop: 7 }),
    _typeof: ve("typeof", { beforeExpr: !0, prefix: !0, startsExpr: !0 }),
    _void: ve("void", { beforeExpr: !0, prefix: !0, startsExpr: !0 }),
    _delete: ve("delete", { beforeExpr: !0, prefix: !0, startsExpr: !0 })
  }, Yt = /\r\n?|\n|\u2028|\u2029/, M4 = new RegExp(Yt.source, "g");
  s(On, "isNewLine");
  s(l1, "nextLineBreak");
  c1 = /[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/, Gt = /(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g, h1 = Object.prototype, j4 = h1.hasOwnProperty,
  q4 = h1.toString, Ns = Object.hasOwn || function(e, t) {
    return j4.call(e, t);
  }, r1 = Array.isArray || function(e) {
    return q4.call(e) === "[object Array]";
  }, i1 = /* @__PURE__ */ Object.create(null);
  s(vi, "wordsRegexp");
  s(Ci, "codePointToString");
  $4 = /(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/, Os = /* @__PURE__ */ s(function(t, r) {
    this.line = t, this.column = r;
  }, "Position");
  Os.prototype.offset = /* @__PURE__ */ s(function(t) {
    return new Os(this.line, this.column + t);
  }, "offset");
  Ia = /* @__PURE__ */ s(function(t, r, i) {
    this.start = r, this.end = i, t.sourceFile !== null && (this.source = t.sourceFile);
  }, "SourceLocation");
  s(p1, "getLineInfo");
  hp = {
    // `ecmaVersion` indicates the ECMAScript version to parse. Must be
    // either 3, 5, 6 (or 2015), 7 (2016), 8 (2017), 9 (2018), 10
    // (2019), 11 (2020), 12 (2021), 13 (2022), 14 (2023), or `"latest"`
    // (the latest version the library supports). This influences
    // support for strict mode, the set of reserved words, and support
    // for new syntax features.
    ecmaVersion: null,
    // `sourceType` indicates the mode the code should be parsed in.
    // Can be either `"script"` or `"module"`. This influences global
    // strict mode and parsing of `import` and `export` declarations.
    sourceType: "script",
    // `onInsertedSemicolon` can be a callback that will be called when
    // a semicolon is automatically inserted. It will be passed the
    // position of the inserted semicolon as an offset, and if
    // `locations` is enabled, it is given the location as a `{line,
    // column}` object as second argument.
    onInsertedSemicolon: null,
    // `onTrailingComma` is similar to `onInsertedSemicolon`, but for
    // trailing commas.
    onTrailingComma: null,
    // By default, reserved words are only enforced if ecmaVersion >= 5.
    // Set `allowReserved` to a boolean value to explicitly turn this on
    // an off. When this option has the value "never", reserved words
    // and keywords can also not be used as property names.
    allowReserved: null,
    // When enabled, a return at the top level is not considered an
    // error.
    allowReturnOutsideFunction: !1,
    // When enabled, import/export statements are not constrained to
    // appearing at the top of the program, and an import.meta expression
    // in a script isn't considered an error.
    allowImportExportEverywhere: !1,
    // By default, await identifiers are allowed to appear at the top-level scope only if ecmaVersion >= 2022.
    // When enabled, await identifiers are allowed to appear at the top-level scope,
    // but they are still not allowed in non-async functions.
    allowAwaitOutsideFunction: null,
    // When enabled, super identifiers are not constrained to
    // appearing in methods and do not raise an error when they appear elsewhere.
    allowSuperOutsideMethod: null,
    // When enabled, hashbang directive in the beginning of file is
    // allowed and treated as a line comment. Enabled by default when
    // `ecmaVersion` >= 2023.
    allowHashBang: !1,
    // By default, the parser will verify that private properties are
    // only used in places where they are valid and have been declared.
    // Set this to false to turn such checks off.
    checkPrivateFields: !0,
    // When `locations` is on, `loc` properties holding objects with
    // `start` and `end` properties in `{line, column}` form (with
    // line being 1-based and column 0-based) will be attached to the
    // nodes.
    locations: !1,
    // A function can be passed as `onToken` option, which will
    // cause Acorn to call that function with object in the same
    // format as tokens returned from `tokenizer().getToken()`. Note
    // that you are not allowed to call the parser from the
    // callback—that will corrupt its internal state.
    onToken: null,
    // A function can be passed as `onComment` option, which will
    // cause Acorn to call that function with `(block, text, start,
    // end)` parameters whenever a comment is skipped. `block` is a
    // boolean indicating whether this is a block (`/* */`) comment,
    // `text` is the content of the comment, and `start` and `end` are
    // character offsets that denote the start and end of the comment.
    // When the `locations` option is on, two more parameters are
    // passed, the full `{line, column}` locations of the start and
    // end of the comments. Note that you are not allowed to call the
    // parser from the callback—that will corrupt its internal state.
    // When this option has an array as value, objects representing the
    // comments are pushed to it.
    onComment: null,
    // Nodes have their start and end characters offsets recorded in
    // `start` and `end` properties (directly on the node, rather than
    // the `loc` object, which holds line/column data. To also add a
    // [semi-standardized][range] `range` property holding a `[start,
    // end]` array with the same numbers, set the `ranges` option to
    // `true`.
    //
    // [range]: https://bugzilla.mozilla.org/show_bug.cgi?id=745678
    ranges: !1,
    // It is possible to parse multiple files into a single AST by
    // passing the tree produced by parsing the first file as
    // `program` option in subsequent parses. This will add the
    // toplevel forms of the parsed file to the `Program` (top) node
    // of an existing parse tree.
    program: null,
    // When `locations` is on, you can pass this to record the source
    // file in every node's `loc` object.
    sourceFile: null,
    // This value, if given, is stored in every node, whether
    // `locations` is on or off.
    directSourceFile: null,
    // When enabled, parenthesized expressions are represented by
    // (non-standard) ParenthesizedExpression nodes
    preserveParens: !1
  }, n1 = !1;
  s(V4, "getOptions");
  s(U4, "pushComment");
  Rs = 1, Rn = 2, mp = 4, f1 = 8, d1 = 16, m1 = 32, Dp = 64, D1 = 128, Ls = 256, gp = Rs | Rn | Ls;
  s(xp, "functionFlags");
  ka = 0, yp = 1, Kr = 2, g1 = 3, x1 = 4, y1 = 5, et = /* @__PURE__ */ s(function(t, r, i) {
    this.options = t = V4(t), this.sourceFile = t.sourceFile, this.keywords = vi(O4[t.ecmaVersion >= 6 ? 6 : t.sourceType === "module" ? "5m\
odule" : 5]);
    var n = "";
    t.allowReserved !== !0 && (n = ap[t.ecmaVersion >= 6 ? 6 : t.ecmaVersion === 5 ? 5 : 3], t.sourceType === "module" && (n += " await")), this.
    reservedWords = vi(n);
    var u = (n ? n + " " : "") + ap.strict;
    this.reservedWordsStrict = vi(u), this.reservedWordsStrictBind = vi(u + " " + ap.strictBind), this.input = String(r), this.containsEsc =
    !1, i ? (this.pos = i, this.lineStart = this.input.lastIndexOf(`
`, i - 1) + 1, this.curLine = this.input.slice(0, this.lineStart).split(Yt).length) : (this.pos = this.lineStart = 0, this.curLine = 1), this.
    type = F.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc =
    this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = !0,
    this.inModule = t.sourceType === "module", this.strict = this.inModule || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.
    potentialArrowInForAwait = !1, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = /* @__PURE__ */ Object.
    create(null), this.pos === 0 && t.allowHashBang && this.input.slice(0, 2) === "#!" && this.skipLineComment(2), this.scopeStack = [], this.
    enterScope(Rs), this.regexpState = null, this.privateNameStack = [];
  }, "Parser"), Tr = { inFunction: { configurable: !0 }, inGenerator: { configurable: !0 }, inAsync: { configurable: !0 }, canAwait: { configurable: !0 },
  allowSuper: { configurable: !0 }, allowDirectSuper: { configurable: !0 }, treatFunctionsAsVar: { configurable: !0 }, allowNewDotTarget: { configurable: !0 },
  inClassStaticBlock: { configurable: !0 } };
  et.prototype.parse = /* @__PURE__ */ s(function() {
    var t = this.options.program || this.startNode();
    return this.nextToken(), this.parseTopLevel(t);
  }, "parse");
  Tr.inFunction.get = function() {
    return (this.currentVarScope().flags & Rn) > 0;
  };
  Tr.inGenerator.get = function() {
    return (this.currentVarScope().flags & f1) > 0 && !this.currentVarScope().inClassFieldInit;
  };
  Tr.inAsync.get = function() {
    return (this.currentVarScope().flags & mp) > 0 && !this.currentVarScope().inClassFieldInit;
  };
  Tr.canAwait.get = function() {
    for (var e = this.scopeStack.length - 1; e >= 0; e--) {
      var t = this.scopeStack[e];
      if (t.inClassFieldInit || t.flags & Ls)
        return !1;
      if (t.flags & Rn)
        return (t.flags & mp) > 0;
    }
    return this.inModule && this.options.ecmaVersion >= 13 || this.options.allowAwaitOutsideFunction;
  };
  Tr.allowSuper.get = function() {
    var e = this.currentThisScope(), t = e.flags, r = e.inClassFieldInit;
    return (t & Dp) > 0 || r || this.options.allowSuperOutsideMethod;
  };
  Tr.allowDirectSuper.get = function() {
    return (this.currentThisScope().flags & D1) > 0;
  };
  Tr.treatFunctionsAsVar.get = function() {
    return this.treatFunctionsAsVarInScope(this.currentScope());
  };
  Tr.allowNewDotTarget.get = function() {
    var e = this.currentThisScope(), t = e.flags, r = e.inClassFieldInit;
    return (t & (Rn | Ls)) > 0 || r;
  };
  Tr.inClassStaticBlock.get = function() {
    return (this.currentVarScope().flags & Ls) > 0;
  };
  et.extend = /* @__PURE__ */ s(function() {
    for (var t = [], r = arguments.length; r--; ) t[r] = arguments[r];
    for (var i = this, n = 0; n < t.length; n++)
      i = t[n](i);
    return i;
  }, "extend");
  et.parse = /* @__PURE__ */ s(function(t, r) {
    return new this(r, t).parse();
  }, "parse");
  et.parseExpressionAt = /* @__PURE__ */ s(function(t, r, i) {
    var n = new this(i, t, r);
    return n.nextToken(), n.parseExpression();
  }, "parseExpressionAt");
  et.tokenizer = /* @__PURE__ */ s(function(t, r) {
    return new this(r, t);
  }, "tokenizer");
  Object.defineProperties(et.prototype, Tr);
  gt = et.prototype, z4 = /^(?:'((?:\\[^]|[^'\\])*?)'|"((?:\\[^]|[^"\\])*?)")/;
  gt.strictDirective = function(e) {
    if (this.options.ecmaVersion < 5)
      return !1;
    for (; ; ) {
      Gt.lastIndex = e, e += Gt.exec(this.input)[0].length;
      var t = z4.exec(this.input.slice(e));
      if (!t)
        return !1;
      if ((t[1] || t[2]) === "use strict") {
        Gt.lastIndex = e + t[0].length;
        var r = Gt.exec(this.input), i = r.index + r[0].length, n = this.input.charAt(i);
        return n === ";" || n === "}" || Yt.test(r[0]) && !(/[(`.[+\-/*%<>=,?^&]/.test(n) || n === "!" && this.input.charAt(i + 1) === "=");
      }
      e += t[0].length, Gt.lastIndex = e, e += Gt.exec(this.input)[0].length, this.input[e] === ";" && e++;
    }
  };
  gt.eat = function(e) {
    return this.type === e ? (this.next(), !0) : !1;
  };
  gt.isContextual = function(e) {
    return this.type === F.name && this.value === e && !this.containsEsc;
  };
  gt.eatContextual = function(e) {
    return this.isContextual(e) ? (this.next(), !0) : !1;
  };
  gt.expectContextual = function(e) {
    this.eatContextual(e) || this.unexpected();
  };
  gt.canInsertSemicolon = function() {
    return this.type === F.eof || this.type === F.braceR || Yt.test(this.input.slice(this.lastTokEnd, this.start));
  };
  gt.insertSemicolon = function() {
    if (this.canInsertSemicolon())
      return this.options.onInsertedSemicolon && this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc), !0;
  };
  gt.semicolon = function() {
    !this.eat(F.semi) && !this.insertSemicolon() && this.unexpected();
  };
  gt.afterTrailingComma = function(e, t) {
    if (this.type === e)
      return this.options.onTrailingComma && this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc), t || this.next(), !0;
  };
  gt.expect = function(e) {
    this.eat(e) || this.unexpected();
  };
  gt.unexpected = function(e) {
    this.raise(e ?? this.start, "Unexpected token");
  };
  Oa = /* @__PURE__ */ s(function() {
    this.shorthandAssign = this.trailingComma = this.parenthesizedAssign = this.parenthesizedBind = this.doubleProto = -1;
  }, "DestructuringErrors");
  gt.checkPatternErrors = function(e, t) {
    if (e) {
      e.trailingComma > -1 && this.raiseRecoverable(e.trailingComma, "Comma is not permitted after the rest element");
      var r = t ? e.parenthesizedAssign : e.parenthesizedBind;
      r > -1 && this.raiseRecoverable(r, t ? "Assigning to rvalue" : "Parenthesized pattern");
    }
  };
  gt.checkExpressionErrors = function(e, t) {
    if (!e)
      return !1;
    var r = e.shorthandAssign, i = e.doubleProto;
    if (!t)
      return r >= 0 || i >= 0;
    r >= 0 && this.raise(r, "Shorthand property assignments are valid only in destructuring patterns"), i >= 0 && this.raiseRecoverable(i, "\
Redefinition of __proto__ property");
  };
  gt.checkYieldAwaitInDefaultParams = function() {
    this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos) && this.raise(this.yieldPos, "Yield expression cannot be a default va\
lue"), this.awaitPos && this.raise(this.awaitPos, "Await expression cannot be a default value");
  };
  gt.isSimpleAssignTarget = function(e) {
    return e.type === "ParenthesizedExpression" ? this.isSimpleAssignTarget(e.expression) : e.type === "Identifier" || e.type === "MemberExp\
ression";
  };
  ie = et.prototype;
  ie.parseTopLevel = function(e) {
    var t = /* @__PURE__ */ Object.create(null);
    for (e.body || (e.body = []); this.type !== F.eof; ) {
      var r = this.parseStatement(null, !0, t);
      e.body.push(r);
    }
    if (this.inModule)
      for (var i = 0, n = Object.keys(this.undefinedExports); i < n.length; i += 1) {
        var u = n[i];
        this.raiseRecoverable(this.undefinedExports[u].start, "Export '" + u + "' is not defined");
      }
    return this.adaptDirectivePrologue(e.body), this.next(), e.sourceType = this.options.sourceType, this.finishNode(e, "Program");
  };
  Ep = { kind: "loop" }, H4 = { kind: "switch" };
  ie.isLet = function(e) {
    if (this.options.ecmaVersion < 6 || !this.isContextual("let"))
      return !1;
    Gt.lastIndex = this.pos;
    var t = Gt.exec(this.input), r = this.pos + t[0].length, i = this.input.charCodeAt(r);
    if (i === 91 || i === 92)
      return !0;
    if (e)
      return !1;
    if (i === 123 || i > 55295 && i < 56320)
      return !0;
    if (Xr(i, !0)) {
      for (var n = r + 1; In(i = this.input.charCodeAt(n), !0); )
        ++n;
      if (i === 92 || i > 55295 && i < 56320)
        return !0;
      var u = this.input.slice(r, n);
      if (!R4.test(u))
        return !0;
    }
    return !1;
  };
  ie.isAsyncFunction = function() {
    if (this.options.ecmaVersion < 8 || !this.isContextual("async"))
      return !1;
    Gt.lastIndex = this.pos;
    var e = Gt.exec(this.input), t = this.pos + e[0].length, r;
    return !Yt.test(this.input.slice(this.pos, t)) && this.input.slice(t, t + 8) === "function" && (t + 8 === this.input.length || !(In(r = this.
    input.charCodeAt(t + 8)) || r > 55295 && r < 56320));
  };
  ie.parseStatement = function(e, t, r) {
    var i = this.type, n = this.startNode(), u;
    switch (this.isLet(e) && (i = F._var, u = "let"), i) {
      case F._break:
      case F._continue:
        return this.parseBreakContinueStatement(n, i.keyword);
      case F._debugger:
        return this.parseDebuggerStatement(n);
      case F._do:
        return this.parseDoStatement(n);
      case F._for:
        return this.parseForStatement(n);
      case F._function:
        return e && (this.strict || e !== "if" && e !== "label") && this.options.ecmaVersion >= 6 && this.unexpected(), this.parseFunctionStatement(
        n, !1, !e);
      case F._class:
        return e && this.unexpected(), this.parseClass(n, !0);
      case F._if:
        return this.parseIfStatement(n);
      case F._return:
        return this.parseReturnStatement(n);
      case F._switch:
        return this.parseSwitchStatement(n);
      case F._throw:
        return this.parseThrowStatement(n);
      case F._try:
        return this.parseTryStatement(n);
      case F._const:
      case F._var:
        return u = u || this.value, e && u !== "var" && this.unexpected(), this.parseVarStatement(n, u);
      case F._while:
        return this.parseWhileStatement(n);
      case F._with:
        return this.parseWithStatement(n);
      case F.braceL:
        return this.parseBlock(!0, n);
      case F.semi:
        return this.parseEmptyStatement(n);
      case F._export:
      case F._import:
        if (this.options.ecmaVersion > 10 && i === F._import) {
          Gt.lastIndex = this.pos;
          var a = Gt.exec(this.input), o = this.pos + a[0].length, l = this.input.charCodeAt(o);
          if (l === 40 || l === 46)
            return this.parseExpressionStatement(n, this.parseExpression());
        }
        return this.options.allowImportExportEverywhere || (t || this.raise(this.start, "'import' and 'export' may only appear at the top le\
vel"), this.inModule || this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'")), i === F._import ? this.parseImport(
        n) : this.parseExport(n, r);
      // If the statement does not start with a statement keyword or a
      // brace, it's an ExpressionStatement or LabeledStatement. We
      // simply start parsing an expression, and afterwards, if the
      // next token is a colon and the expression was a simple
      // Identifier node, we switch to interpreting it as a label.
      default:
        if (this.isAsyncFunction())
          return e && this.unexpected(), this.next(), this.parseFunctionStatement(n, !0, !e);
        var c = this.value, h = this.parseExpression();
        return i === F.name && h.type === "Identifier" && this.eat(F.colon) ? this.parseLabeledStatement(n, c, h, e) : this.parseExpressionStatement(
        n, h);
    }
  };
  ie.parseBreakContinueStatement = function(e, t) {
    var r = t === "break";
    this.next(), this.eat(F.semi) || this.insertSemicolon() ? e.label = null : this.type !== F.name ? this.unexpected() : (e.label = this.parseIdent(),
    this.semicolon());
    for (var i = 0; i < this.labels.length; ++i) {
      var n = this.labels[i];
      if ((e.label == null || n.name === e.label.name) && (n.kind != null && (r || n.kind === "loop") || e.label && r))
        break;
    }
    return i === this.labels.length && this.raise(e.start, "Unsyntactic " + t), this.finishNode(e, r ? "BreakStatement" : "ContinueStatement");
  };
  ie.parseDebuggerStatement = function(e) {
    return this.next(), this.semicolon(), this.finishNode(e, "DebuggerStatement");
  };
  ie.parseDoStatement = function(e) {
    return this.next(), this.labels.push(Ep), e.body = this.parseStatement("do"), this.labels.pop(), this.expect(F._while), e.test = this.parseParenExpression(),
    this.options.ecmaVersion >= 6 ? this.eat(F.semi) : this.semicolon(), this.finishNode(e, "DoWhileStatement");
  };
  ie.parseForStatement = function(e) {
    this.next();
    var t = this.options.ecmaVersion >= 9 && this.canAwait && this.eatContextual("await") ? this.lastTokStart : -1;
    if (this.labels.push(Ep), this.enterScope(0), this.expect(F.parenL), this.type === F.semi)
      return t > -1 && this.unexpected(t), this.parseFor(e, null);
    var r = this.isLet();
    if (this.type === F._var || this.type === F._const || r) {
      var i = this.startNode(), n = r ? "let" : this.value;
      return this.next(), this.parseVar(i, !0, n), this.finishNode(i, "VariableDeclaration"), (this.type === F._in || this.options.ecmaVersion >=
      6 && this.isContextual("of")) && i.declarations.length === 1 ? (this.options.ecmaVersion >= 9 && (this.type === F._in ? t > -1 && this.
      unexpected(t) : e.await = t > -1), this.parseForIn(e, i)) : (t > -1 && this.unexpected(t), this.parseFor(e, i));
    }
    var u = this.isContextual("let"), a = !1, o = this.containsEsc, l = new Oa(), c = this.start, h = t > -1 ? this.parseExprSubscripts(l, "\
await") : this.parseExpression(!0, l);
    return this.type === F._in || (a = this.options.ecmaVersion >= 6 && this.isContextual("of")) ? (t > -1 ? (this.type === F._in && this.unexpected(
    t), e.await = !0) : a && this.options.ecmaVersion >= 8 && (h.start === c && !o && h.type === "Identifier" && h.name === "async" ? this.unexpected() :
    this.options.ecmaVersion >= 9 && (e.await = !1)), u && a && this.raise(h.start, "The left-hand side of a for-of loop may not start with \
'let'."), this.toAssignable(h, !1, l), this.checkLValPattern(h), this.parseForIn(e, h)) : (this.checkExpressionErrors(l, !0), t > -1 && this.
    unexpected(t), this.parseFor(e, h));
  };
  ie.parseFunctionStatement = function(e, t, r) {
    return this.next(), this.parseFunction(e, Is | (r ? 0 : pp), !1, t);
  };
  ie.parseIfStatement = function(e) {
    return this.next(), e.test = this.parseParenExpression(), e.consequent = this.parseStatement("if"), e.alternate = this.eat(F._else) ? this.
    parseStatement("if") : null, this.finishNode(e, "IfStatement");
  };
  ie.parseReturnStatement = function(e) {
    return !this.inFunction && !this.options.allowReturnOutsideFunction && this.raise(this.start, "'return' outside of function"), this.next(),
    this.eat(F.semi) || this.insertSemicolon() ? e.argument = null : (e.argument = this.parseExpression(), this.semicolon()), this.finishNode(
    e, "ReturnStatement");
  };
  ie.parseSwitchStatement = function(e) {
    this.next(), e.discriminant = this.parseParenExpression(), e.cases = [], this.expect(F.braceL), this.labels.push(H4), this.enterScope(0);
    for (var t, r = !1; this.type !== F.braceR; )
      if (this.type === F._case || this.type === F._default) {
        var i = this.type === F._case;
        t && this.finishNode(t, "SwitchCase"), e.cases.push(t = this.startNode()), t.consequent = [], this.next(), i ? t.test = this.parseExpression() :
        (r && this.raiseRecoverable(this.lastTokStart, "Multiple default clauses"), r = !0, t.test = null), this.expect(F.colon);
      } else
        t || this.unexpected(), t.consequent.push(this.parseStatement(null));
    return this.exitScope(), t && this.finishNode(t, "SwitchCase"), this.next(), this.labels.pop(), this.finishNode(e, "SwitchStatement");
  };
  ie.parseThrowStatement = function(e) {
    return this.next(), Yt.test(this.input.slice(this.lastTokEnd, this.start)) && this.raise(this.lastTokEnd, "Illegal newline after throw"),
    e.argument = this.parseExpression(), this.semicolon(), this.finishNode(e, "ThrowStatement");
  };
  W4 = [];
  ie.parseCatchClauseParam = function() {
    var e = this.parseBindingAtom(), t = e.type === "Identifier";
    return this.enterScope(t ? m1 : 0), this.checkLValPattern(e, t ? x1 : Kr), this.expect(F.parenR), e;
  };
  ie.parseTryStatement = function(e) {
    if (this.next(), e.block = this.parseBlock(), e.handler = null, this.type === F._catch) {
      var t = this.startNode();
      this.next(), this.eat(F.parenL) ? t.param = this.parseCatchClauseParam() : (this.options.ecmaVersion < 10 && this.unexpected(), t.param =
      null, this.enterScope(0)), t.body = this.parseBlock(!1), this.exitScope(), e.handler = this.finishNode(t, "CatchClause");
    }
    return e.finalizer = this.eat(F._finally) ? this.parseBlock() : null, !e.handler && !e.finalizer && this.raise(e.start, "Missing catch o\
r finally clause"), this.finishNode(e, "TryStatement");
  };
  ie.parseVarStatement = function(e, t, r) {
    return this.next(), this.parseVar(e, !1, t, r), this.semicolon(), this.finishNode(e, "VariableDeclaration");
  };
  ie.parseWhileStatement = function(e) {
    return this.next(), e.test = this.parseParenExpression(), this.labels.push(Ep), e.body = this.parseStatement("while"), this.labels.pop(),
    this.finishNode(e, "WhileStatement");
  };
  ie.parseWithStatement = function(e) {
    return this.strict && this.raise(this.start, "'with' in strict mode"), this.next(), e.object = this.parseParenExpression(), e.body = this.
    parseStatement("with"), this.finishNode(e, "WithStatement");
  };
  ie.parseEmptyStatement = function(e) {
    return this.next(), this.finishNode(e, "EmptyStatement");
  };
  ie.parseLabeledStatement = function(e, t, r, i) {
    for (var n = 0, u = this.labels; n < u.length; n += 1) {
      var a = u[n];
      a.name === t && this.raise(r.start, "Label '" + t + "' is already declared");
    }
    for (var o = this.type.isLoop ? "loop" : this.type === F._switch ? "switch" : null, l = this.labels.length - 1; l >= 0; l--) {
      var c = this.labels[l];
      if (c.statementStart === e.start)
        c.statementStart = this.start, c.kind = o;
      else
        break;
    }
    return this.labels.push({ name: t, kind: o, statementStart: this.start }), e.body = this.parseStatement(i ? i.indexOf("label") === -1 ? i +
    "label" : i : "label"), this.labels.pop(), e.label = r, this.finishNode(e, "LabeledStatement");
  };
  ie.parseExpressionStatement = function(e, t) {
    return e.expression = t, this.semicolon(), this.finishNode(e, "ExpressionStatement");
  };
  ie.parseBlock = function(e, t, r) {
    for (e === void 0 && (e = !0), t === void 0 && (t = this.startNode()), t.body = [], this.expect(F.braceL), e && this.enterScope(0); this.
    type !== F.braceR; ) {
      var i = this.parseStatement(null);
      t.body.push(i);
    }
    return r && (this.strict = !1), this.next(), e && this.exitScope(), this.finishNode(t, "BlockStatement");
  };
  ie.parseFor = function(e, t) {
    return e.init = t, this.expect(F.semi), e.test = this.type === F.semi ? null : this.parseExpression(), this.expect(F.semi), e.update = this.
    type === F.parenR ? null : this.parseExpression(), this.expect(F.parenR), e.body = this.parseStatement("for"), this.exitScope(), this.labels.
    pop(), this.finishNode(e, "ForStatement");
  };
  ie.parseForIn = function(e, t) {
    var r = this.type === F._in;
    return this.next(), t.type === "VariableDeclaration" && t.declarations[0].init != null && (!r || this.options.ecmaVersion < 8 || this.strict ||
    t.kind !== "var" || t.declarations[0].id.type !== "Identifier") && this.raise(
      t.start,
      (r ? "for-in" : "for-of") + " loop variable declaration may not have an initializer"
    ), e.left = t, e.right = r ? this.parseExpression() : this.parseMaybeAssign(), this.expect(F.parenR), e.body = this.parseStatement("for"),
    this.exitScope(), this.labels.pop(), this.finishNode(e, r ? "ForInStatement" : "ForOfStatement");
  };
  ie.parseVar = function(e, t, r, i) {
    for (e.declarations = [], e.kind = r; ; ) {
      var n = this.startNode();
      if (this.parseVarId(n, r), this.eat(F.eq) ? n.init = this.parseMaybeAssign(t) : !i && r === "const" && !(this.type === F._in || this.options.
      ecmaVersion >= 6 && this.isContextual("of")) ? this.unexpected() : !i && n.id.type !== "Identifier" && !(t && (this.type === F._in || this.
      isContextual("of"))) ? this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value") : n.init = null, e.declarations.
      push(this.finishNode(n, "VariableDeclarator")), !this.eat(F.comma))
        break;
    }
    return e;
  };
  ie.parseVarId = function(e, t) {
    e.id = this.parseBindingAtom(), this.checkLValPattern(e.id, t === "var" ? yp : Kr, !1);
  };
  Is = 1, pp = 2, E1 = 4;
  ie.parseFunction = function(e, t, r, i, n) {
    this.initFunction(e), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !i) && (this.type === F.star && t & pp && this.
    unexpected(), e.generator = this.eat(F.star)), this.options.ecmaVersion >= 8 && (e.async = !!i), t & Is && (e.id = t & E1 && this.type !==
    F.name ? null : this.parseIdent(), e.id && !(t & pp) && this.checkLValSimple(e.id, this.strict || e.generator || e.async ? this.treatFunctionsAsVar ?
    yp : Kr : g1));
    var u = this.yieldPos, a = this.awaitPos, o = this.awaitIdentPos;
    return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(xp(e.async, e.generator)), t & Is || (e.id = this.type ===
    F.name ? this.parseIdent() : null), this.parseFunctionParams(e), this.parseFunctionBody(e, r, !1, n), this.yieldPos = u, this.awaitPos =
    a, this.awaitIdentPos = o, this.finishNode(e, t & Is ? "FunctionDeclaration" : "FunctionExpression");
  };
  ie.parseFunctionParams = function(e) {
    this.expect(F.parenL), e.params = this.parseBindingList(F.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams();
  };
  ie.parseClass = function(e, t) {
    this.next();
    var r = this.strict;
    this.strict = !0, this.parseClassId(e, t), this.parseClassSuper(e);
    var i = this.enterClassBody(), n = this.startNode(), u = !1;
    for (n.body = [], this.expect(F.braceL); this.type !== F.braceR; ) {
      var a = this.parseClassElement(e.superClass !== null);
      a && (n.body.push(a), a.type === "MethodDefinition" && a.kind === "constructor" ? (u && this.raiseRecoverable(a.start, "Duplicate cons\
tructor in the same class"), u = !0) : a.key && a.key.type === "PrivateIdentifier" && J4(i, a) && this.raiseRecoverable(a.key.start, "Identi\
fier '#" + a.key.name + "' has already been declared"));
    }
    return this.strict = r, this.next(), e.body = this.finishNode(n, "ClassBody"), this.exitClassBody(), this.finishNode(e, t ? "ClassDeclar\
ation" : "ClassExpression");
  };
  ie.parseClassElement = function(e) {
    if (this.eat(F.semi))
      return null;
    var t = this.options.ecmaVersion, r = this.startNode(), i = "", n = !1, u = !1, a = "method", o = !1;
    if (this.eatContextual("static")) {
      if (t >= 13 && this.eat(F.braceL))
        return this.parseClassStaticBlock(r), r;
      this.isClassElementNameStart() || this.type === F.star ? o = !0 : i = "static";
    }
    if (r.static = o, !i && t >= 8 && this.eatContextual("async") && ((this.isClassElementNameStart() || this.type === F.star) && !this.canInsertSemicolon() ?
    u = !0 : i = "async"), !i && (t >= 9 || !u) && this.eat(F.star) && (n = !0), !i && !u && !n) {
      var l = this.value;
      (this.eatContextual("get") || this.eatContextual("set")) && (this.isClassElementNameStart() ? a = l : i = l);
    }
    if (i ? (r.computed = !1, r.key = this.startNodeAt(this.lastTokStart, this.lastTokStartLoc), r.key.name = i, this.finishNode(r.key, "Ide\
ntifier")) : this.parseClassElementName(r), t < 13 || this.type === F.parenL || a !== "method" || n || u) {
      var c = !r.static && Ba(r, "constructor"), h = c && e;
      c && a !== "method" && this.raise(r.key.start, "Constructor can't have get/set modifier"), r.kind = c ? "constructor" : a, this.parseClassMethod(
      r, n, u, h);
    } else
      this.parseClassField(r);
    return r;
  };
  ie.isClassElementNameStart = function() {
    return this.type === F.name || this.type === F.privateId || this.type === F.num || this.type === F.string || this.type === F.bracketL ||
    this.type.keyword;
  };
  ie.parseClassElementName = function(e) {
    this.type === F.privateId ? (this.value === "constructor" && this.raise(this.start, "Classes can't have an element named '#constructor'"),
    e.computed = !1, e.key = this.parsePrivateIdent()) : this.parsePropertyName(e);
  };
  ie.parseClassMethod = function(e, t, r, i) {
    var n = e.key;
    e.kind === "constructor" ? (t && this.raise(n.start, "Constructor can't be a generator"), r && this.raise(n.start, "Constructor can't be\
 an async method")) : e.static && Ba(e, "prototype") && this.raise(n.start, "Classes may not have a static property named prototype");
    var u = e.value = this.parseMethod(t, r, i);
    return e.kind === "get" && u.params.length !== 0 && this.raiseRecoverable(u.start, "getter should have no params"), e.kind === "set" && u.
    params.length !== 1 && this.raiseRecoverable(u.start, "setter should have exactly one param"), e.kind === "set" && u.params[0].type === "\
RestElement" && this.raiseRecoverable(u.params[0].start, "Setter cannot use rest params"), this.finishNode(e, "MethodDefinition");
  };
  ie.parseClassField = function(e) {
    if (Ba(e, "constructor") ? this.raise(e.key.start, "Classes can't have a field named 'constructor'") : e.static && Ba(e, "prototype") &&
    this.raise(e.key.start, "Classes can't have a static field named 'prototype'"), this.eat(F.eq)) {
      var t = this.currentThisScope(), r = t.inClassFieldInit;
      t.inClassFieldInit = !0, e.value = this.parseMaybeAssign(), t.inClassFieldInit = r;
    } else
      e.value = null;
    return this.semicolon(), this.finishNode(e, "PropertyDefinition");
  };
  ie.parseClassStaticBlock = function(e) {
    e.body = [];
    var t = this.labels;
    for (this.labels = [], this.enterScope(Ls | Dp); this.type !== F.braceR; ) {
      var r = this.parseStatement(null);
      e.body.push(r);
    }
    return this.next(), this.exitScope(), this.labels = t, this.finishNode(e, "StaticBlock");
  };
  ie.parseClassId = function(e, t) {
    this.type === F.name ? (e.id = this.parseIdent(), t && this.checkLValSimple(e.id, Kr, !1)) : (t === !0 && this.unexpected(), e.id = null);
  };
  ie.parseClassSuper = function(e) {
    e.superClass = this.eat(F._extends) ? this.parseExprSubscripts(null, !1) : null;
  };
  ie.enterClassBody = function() {
    var e = { declared: /* @__PURE__ */ Object.create(null), used: [] };
    return this.privateNameStack.push(e), e.declared;
  };
  ie.exitClassBody = function() {
    var e = this.privateNameStack.pop(), t = e.declared, r = e.used;
    if (this.options.checkPrivateFields)
      for (var i = this.privateNameStack.length, n = i === 0 ? null : this.privateNameStack[i - 1], u = 0; u < r.length; ++u) {
        var a = r[u];
        Ns(t, a.name) || (n ? n.used.push(a) : this.raiseRecoverable(a.start, "Private field '#" + a.name + "' must be declared in an enclos\
ing class"));
      }
  };
  s(J4, "isPrivateNameConflicted");
  s(Ba, "checkKeyName");
  ie.parseExportAllDeclaration = function(e, t) {
    return this.options.ecmaVersion >= 11 && (this.eatContextual("as") ? (e.exported = this.parseModuleExportName(), this.checkExport(t, e.exported,
    this.lastTokStart)) : e.exported = null), this.expectContextual("from"), this.type !== F.string && this.unexpected(), e.source = this.parseExprAtom(),
    this.semicolon(), this.finishNode(e, "ExportAllDeclaration");
  };
  ie.parseExport = function(e, t) {
    if (this.next(), this.eat(F.star))
      return this.parseExportAllDeclaration(e, t);
    if (this.eat(F._default))
      return this.checkExport(t, "default", this.lastTokStart), e.declaration = this.parseExportDefaultDeclaration(), this.finishNode(e, "Ex\
portDefaultDeclaration");
    if (this.shouldParseExportStatement())
      e.declaration = this.parseExportDeclaration(e), e.declaration.type === "VariableDeclaration" ? this.checkVariableExport(t, e.declaration.
      declarations) : this.checkExport(t, e.declaration.id, e.declaration.id.start), e.specifiers = [], e.source = null;
    else {
      if (e.declaration = null, e.specifiers = this.parseExportSpecifiers(t), this.eatContextual("from"))
        this.type !== F.string && this.unexpected(), e.source = this.parseExprAtom();
      else {
        for (var r = 0, i = e.specifiers; r < i.length; r += 1) {
          var n = i[r];
          this.checkUnreserved(n.local), this.checkLocalExport(n.local), n.local.type === "Literal" && this.raise(n.local.start, "A string l\
iteral cannot be used as an exported binding without `from`.");
        }
        e.source = null;
      }
      this.semicolon();
    }
    return this.finishNode(e, "ExportNamedDeclaration");
  };
  ie.parseExportDeclaration = function(e) {
    return this.parseStatement(null);
  };
  ie.parseExportDefaultDeclaration = function() {
    var e;
    if (this.type === F._function || (e = this.isAsyncFunction())) {
      var t = this.startNode();
      return this.next(), e && this.next(), this.parseFunction(t, Is | E1, !1, e);
    } else if (this.type === F._class) {
      var r = this.startNode();
      return this.parseClass(r, "nullableID");
    } else {
      var i = this.parseMaybeAssign();
      return this.semicolon(), i;
    }
  };
  ie.checkExport = function(e, t, r) {
    e && (typeof t != "string" && (t = t.type === "Identifier" ? t.name : t.value), Ns(e, t) && this.raiseRecoverable(r, "Duplicate export '" +
    t + "'"), e[t] = !0);
  };
  ie.checkPatternExport = function(e, t) {
    var r = t.type;
    if (r === "Identifier")
      this.checkExport(e, t, t.start);
    else if (r === "ObjectPattern")
      for (var i = 0, n = t.properties; i < n.length; i += 1) {
        var u = n[i];
        this.checkPatternExport(e, u);
      }
    else if (r === "ArrayPattern")
      for (var a = 0, o = t.elements; a < o.length; a += 1) {
        var l = o[a];
        l && this.checkPatternExport(e, l);
      }
    else r === "Property" ? this.checkPatternExport(e, t.value) : r === "AssignmentPattern" ? this.checkPatternExport(e, t.left) : r === "Re\
stElement" && this.checkPatternExport(e, t.argument);
  };
  ie.checkVariableExport = function(e, t) {
    if (e)
      for (var r = 0, i = t; r < i.length; r += 1) {
        var n = i[r];
        this.checkPatternExport(e, n.id);
      }
  };
  ie.shouldParseExportStatement = function() {
    return this.type.keyword === "var" || this.type.keyword === "const" || this.type.keyword === "class" || this.type.keyword === "function" ||
    this.isLet() || this.isAsyncFunction();
  };
  ie.parseExportSpecifier = function(e) {
    var t = this.startNode();
    return t.local = this.parseModuleExportName(), t.exported = this.eatContextual("as") ? this.parseModuleExportName() : t.local, this.checkExport(
      e,
      t.exported,
      t.exported.start
    ), this.finishNode(t, "ExportSpecifier");
  };
  ie.parseExportSpecifiers = function(e) {
    var t = [], r = !0;
    for (this.expect(F.braceL); !this.eat(F.braceR); ) {
      if (r)
        r = !1;
      else if (this.expect(F.comma), this.afterTrailingComma(F.braceR))
        break;
      t.push(this.parseExportSpecifier(e));
    }
    return t;
  };
  ie.parseImport = function(e) {
    return this.next(), this.type === F.string ? (e.specifiers = W4, e.source = this.parseExprAtom()) : (e.specifiers = this.parseImportSpecifiers(),
    this.expectContextual("from"), e.source = this.type === F.string ? this.parseExprAtom() : this.unexpected()), this.semicolon(), this.finishNode(
    e, "ImportDeclaration");
  };
  ie.parseImportSpecifier = function() {
    var e = this.startNode();
    return e.imported = this.parseModuleExportName(), this.eatContextual("as") ? e.local = this.parseIdent() : (this.checkUnreserved(e.imported),
    e.local = e.imported), this.checkLValSimple(e.local, Kr), this.finishNode(e, "ImportSpecifier");
  };
  ie.parseImportDefaultSpecifier = function() {
    var e = this.startNode();
    return e.local = this.parseIdent(), this.checkLValSimple(e.local, Kr), this.finishNode(e, "ImportDefaultSpecifier");
  };
  ie.parseImportNamespaceSpecifier = function() {
    var e = this.startNode();
    return this.next(), this.expectContextual("as"), e.local = this.parseIdent(), this.checkLValSimple(e.local, Kr), this.finishNode(e, "Imp\
ortNamespaceSpecifier");
  };
  ie.parseImportSpecifiers = function() {
    var e = [], t = !0;
    if (this.type === F.name && (e.push(this.parseImportDefaultSpecifier()), !this.eat(F.comma)))
      return e;
    if (this.type === F.star)
      return e.push(this.parseImportNamespaceSpecifier()), e;
    for (this.expect(F.braceL); !this.eat(F.braceR); ) {
      if (t)
        t = !1;
      else if (this.expect(F.comma), this.afterTrailingComma(F.braceR))
        break;
      e.push(this.parseImportSpecifier());
    }
    return e;
  };
  ie.parseModuleExportName = function() {
    if (this.options.ecmaVersion >= 13 && this.type === F.string) {
      var e = this.parseLiteral(this.value);
      return $4.test(e.value) && this.raise(e.start, "An export name cannot include a lone surrogate."), e;
    }
    return this.parseIdent(!0);
  };
  ie.adaptDirectivePrologue = function(e) {
    for (var t = 0; t < e.length && this.isDirectiveCandidate(e[t]); ++t)
      e[t].directive = e[t].expression.raw.slice(1, -1);
  };
  ie.isDirectiveCandidate = function(e) {
    return this.options.ecmaVersion >= 5 && e.type === "ExpressionStatement" && e.expression.type === "Literal" && typeof e.expression.value ==
    "string" && // Reject parenthesized strings.
    (this.input[e.start] === '"' || this.input[e.start] === "'");
  };
  Kt = et.prototype;
  Kt.toAssignable = function(e, t, r) {
    if (this.options.ecmaVersion >= 6 && e)
      switch (e.type) {
        case "Identifier":
          this.inAsync && e.name === "await" && this.raise(e.start, "Cannot use 'await' as identifier inside an async function");
          break;
        case "ObjectPattern":
        case "ArrayPattern":
        case "AssignmentPattern":
        case "RestElement":
          break;
        case "ObjectExpression":
          e.type = "ObjectPattern", r && this.checkPatternErrors(r, !0);
          for (var i = 0, n = e.properties; i < n.length; i += 1) {
            var u = n[i];
            this.toAssignable(u, t), u.type === "RestElement" && (u.argument.type === "ArrayPattern" || u.argument.type === "ObjectPattern") &&
            this.raise(u.argument.start, "Unexpected token");
          }
          break;
        case "Property":
          e.kind !== "init" && this.raise(e.key.start, "Object pattern can't contain getter or setter"), this.toAssignable(e.value, t);
          break;
        case "ArrayExpression":
          e.type = "ArrayPattern", r && this.checkPatternErrors(r, !0), this.toAssignableList(e.elements, t);
          break;
        case "SpreadElement":
          e.type = "RestElement", this.toAssignable(e.argument, t), e.argument.type === "AssignmentPattern" && this.raise(e.argument.start, "\
Rest elements cannot have a default value");
          break;
        case "AssignmentExpression":
          e.operator !== "=" && this.raise(e.left.end, "Only '=' operator can be used for specifying default value."), e.type = "AssignmentP\
attern", delete e.operator, this.toAssignable(e.left, t);
          break;
        case "ParenthesizedExpression":
          this.toAssignable(e.expression, t, r);
          break;
        case "ChainExpression":
          this.raiseRecoverable(e.start, "Optional chaining cannot appear in left-hand side");
          break;
        case "MemberExpression":
          if (!t)
            break;
        default:
          this.raise(e.start, "Assigning to rvalue");
      }
    else r && this.checkPatternErrors(r, !0);
    return e;
  };
  Kt.toAssignableList = function(e, t) {
    for (var r = e.length, i = 0; i < r; i++) {
      var n = e[i];
      n && this.toAssignable(n, t);
    }
    if (r) {
      var u = e[r - 1];
      this.options.ecmaVersion === 6 && t && u && u.type === "RestElement" && u.argument.type !== "Identifier" && this.unexpected(u.argument.
      start);
    }
    return e;
  };
  Kt.parseSpread = function(e) {
    var t = this.startNode();
    return this.next(), t.argument = this.parseMaybeAssign(!1, e), this.finishNode(t, "SpreadElement");
  };
  Kt.parseRestBinding = function() {
    var e = this.startNode();
    return this.next(), this.options.ecmaVersion === 6 && this.type !== F.name && this.unexpected(), e.argument = this.parseBindingAtom(), this.
    finishNode(e, "RestElement");
  };
  Kt.parseBindingAtom = function() {
    if (this.options.ecmaVersion >= 6)
      switch (this.type) {
        case F.bracketL:
          var e = this.startNode();
          return this.next(), e.elements = this.parseBindingList(F.bracketR, !0, !0), this.finishNode(e, "ArrayPattern");
        case F.braceL:
          return this.parseObj(!0);
      }
    return this.parseIdent();
  };
  Kt.parseBindingList = function(e, t, r, i) {
    for (var n = [], u = !0; !this.eat(e); )
      if (u ? u = !1 : this.expect(F.comma), t && this.type === F.comma)
        n.push(null);
      else {
        if (r && this.afterTrailingComma(e))
          break;
        if (this.type === F.ellipsis) {
          var a = this.parseRestBinding();
          this.parseBindingListItem(a), n.push(a), this.type === F.comma && this.raiseRecoverable(this.start, "Comma is not permitted after \
the rest element"), this.expect(e);
          break;
        } else
          n.push(this.parseAssignableListItem(i));
      }
    return n;
  };
  Kt.parseAssignableListItem = function(e) {
    var t = this.parseMaybeDefault(this.start, this.startLoc);
    return this.parseBindingListItem(t), t;
  };
  Kt.parseBindingListItem = function(e) {
    return e;
  };
  Kt.parseMaybeDefault = function(e, t, r) {
    if (r = r || this.parseBindingAtom(), this.options.ecmaVersion < 6 || !this.eat(F.eq))
      return r;
    var i = this.startNodeAt(e, t);
    return i.left = r, i.right = this.parseMaybeAssign(), this.finishNode(i, "AssignmentPattern");
  };
  Kt.checkLValSimple = function(e, t, r) {
    t === void 0 && (t = ka);
    var i = t !== ka;
    switch (e.type) {
      case "Identifier":
        this.strict && this.reservedWordsStrictBind.test(e.name) && this.raiseRecoverable(e.start, (i ? "Binding " : "Assigning to ") + e.name +
        " in strict mode"), i && (t === Kr && e.name === "let" && this.raiseRecoverable(e.start, "let is disallowed as a lexically bound nam\
e"), r && (Ns(r, e.name) && this.raiseRecoverable(e.start, "Argument name clash"), r[e.name] = !0), t !== y1 && this.declareName(e.name, t, e.
        start));
        break;
      case "ChainExpression":
        this.raiseRecoverable(e.start, "Optional chaining cannot appear in left-hand side");
        break;
      case "MemberExpression":
        i && this.raiseRecoverable(e.start, "Binding member expression");
        break;
      case "ParenthesizedExpression":
        return i && this.raiseRecoverable(e.start, "Binding parenthesized expression"), this.checkLValSimple(e.expression, t, r);
      default:
        this.raise(e.start, (i ? "Binding" : "Assigning to") + " rvalue");
    }
  };
  Kt.checkLValPattern = function(e, t, r) {
    switch (t === void 0 && (t = ka), e.type) {
      case "ObjectPattern":
        for (var i = 0, n = e.properties; i < n.length; i += 1) {
          var u = n[i];
          this.checkLValInnerPattern(u, t, r);
        }
        break;
      case "ArrayPattern":
        for (var a = 0, o = e.elements; a < o.length; a += 1) {
          var l = o[a];
          l && this.checkLValInnerPattern(l, t, r);
        }
        break;
      default:
        this.checkLValSimple(e, t, r);
    }
  };
  Kt.checkLValInnerPattern = function(e, t, r) {
    switch (t === void 0 && (t = ka), e.type) {
      case "Property":
        this.checkLValInnerPattern(e.value, t, r);
        break;
      case "AssignmentPattern":
        this.checkLValPattern(e.left, t, r);
        break;
      case "RestElement":
        this.checkLValPattern(e.argument, t, r);
        break;
      default:
        this.checkLValPattern(e, t, r);
    }
  };
  hr = /* @__PURE__ */ s(function(t, r, i, n, u) {
    this.token = t, this.isExpr = !!r, this.preserveSpace = !!i, this.override = n, this.generator = !!u;
  }, "TokContext"), qe = {
    b_stat: new hr("{", !1),
    b_expr: new hr("{", !0),
    b_tmpl: new hr("${", !1),
    p_stat: new hr("(", !1),
    p_expr: new hr("(", !0),
    q_tmpl: new hr("`", !0, !0, function(e) {
      return e.tryReadTemplateToken();
    }),
    f_stat: new hr("function", !1),
    f_expr: new hr("function", !0),
    f_expr_gen: new hr("function", !0, !1, null, !0),
    f_gen: new hr("function", !1, !1, null, !0)
  }, Nn = et.prototype;
  Nn.initialContext = function() {
    return [qe.b_stat];
  };
  Nn.curContext = function() {
    return this.context[this.context.length - 1];
  };
  Nn.braceIsBlock = function(e) {
    var t = this.curContext();
    return t === qe.f_expr || t === qe.f_stat ? !0 : e === F.colon && (t === qe.b_stat || t === qe.b_expr) ? !t.isExpr : e === F._return || e ===
    F.name && this.exprAllowed ? Yt.test(this.input.slice(this.lastTokEnd, this.start)) : e === F._else || e === F.semi || e === F.eof || e ===
    F.parenR || e === F.arrow ? !0 : e === F.braceL ? t === qe.b_stat : e === F._var || e === F._const || e === F.name ? !1 : !this.exprAllowed;
  };
  Nn.inGeneratorContext = function() {
    for (var e = this.context.length - 1; e >= 1; e--) {
      var t = this.context[e];
      if (t.token === "function")
        return t.generator;
    }
    return !1;
  };
  Nn.updateContext = function(e) {
    var t, r = this.type;
    r.keyword && e === F.dot ? this.exprAllowed = !1 : (t = r.updateContext) ? t.call(this, e) : this.exprAllowed = r.beforeExpr;
  };
  Nn.overrideContext = function(e) {
    this.curContext() !== e && (this.context[this.context.length - 1] = e);
  };
  F.parenR.updateContext = F.braceR.updateContext = function() {
    if (this.context.length === 1) {
      this.exprAllowed = !0;
      return;
    }
    var e = this.context.pop();
    e === qe.b_stat && this.curContext().token === "function" && (e = this.context.pop()), this.exprAllowed = !e.isExpr;
  };
  F.braceL.updateContext = function(e) {
    this.context.push(this.braceIsBlock(e) ? qe.b_stat : qe.b_expr), this.exprAllowed = !0;
  };
  F.dollarBraceL.updateContext = function() {
    this.context.push(qe.b_tmpl), this.exprAllowed = !0;
  };
  F.parenL.updateContext = function(e) {
    var t = e === F._if || e === F._for || e === F._with || e === F._while;
    this.context.push(t ? qe.p_stat : qe.p_expr), this.exprAllowed = !0;
  };
  F.incDec.updateContext = function() {
  };
  F._function.updateContext = F._class.updateContext = function(e) {
    e.beforeExpr && e !== F._else && !(e === F.semi && this.curContext() !== qe.p_stat) && !(e === F._return && Yt.test(this.input.slice(this.
    lastTokEnd, this.start))) && !((e === F.colon || e === F.braceL) && this.curContext() === qe.b_stat) ? this.context.push(qe.f_expr) : this.
    context.push(qe.f_stat), this.exprAllowed = !1;
  };
  F.colon.updateContext = function() {
    this.curContext().token === "function" && this.context.pop(), this.exprAllowed = !0;
  };
  F.backQuote.updateContext = function() {
    this.curContext() === qe.q_tmpl ? this.context.pop() : this.context.push(qe.q_tmpl), this.exprAllowed = !1;
  };
  F.star.updateContext = function(e) {
    if (e === F._function) {
      var t = this.context.length - 1;
      this.context[t] === qe.f_expr ? this.context[t] = qe.f_expr_gen : this.context[t] = qe.f_gen;
    }
    this.exprAllowed = !0;
  };
  F.name.updateContext = function(e) {
    var t = !1;
    this.options.ecmaVersion >= 6 && e !== F.dot && (this.value === "of" && !this.exprAllowed || this.value === "yield" && this.inGeneratorContext()) &&
    (t = !0), this.exprAllowed = t;
  };
  pe = et.prototype;
  pe.checkPropClash = function(e, t, r) {
    if (!(this.options.ecmaVersion >= 9 && e.type === "SpreadElement") && !(this.options.ecmaVersion >= 6 && (e.computed || e.method || e.shorthand))) {
      var i = e.key, n;
      switch (i.type) {
        case "Identifier":
          n = i.name;
          break;
        case "Literal":
          n = String(i.value);
          break;
        default:
          return;
      }
      var u = e.kind;
      if (this.options.ecmaVersion >= 6) {
        n === "__proto__" && u === "init" && (t.proto && (r ? r.doubleProto < 0 && (r.doubleProto = i.start) : this.raiseRecoverable(i.start,
        "Redefinition of __proto__ property")), t.proto = !0);
        return;
      }
      n = "$" + n;
      var a = t[n];
      if (a) {
        var o;
        u === "init" ? o = this.strict && a.init || a.get || a.set : o = a.init || a[u], o && this.raiseRecoverable(i.start, "Redefinition o\
f property");
      } else
        a = t[n] = {
          init: !1,
          get: !1,
          set: !1
        };
      a[u] = !0;
    }
  };
  pe.parseExpression = function(e, t) {
    var r = this.start, i = this.startLoc, n = this.parseMaybeAssign(e, t);
    if (this.type === F.comma) {
      var u = this.startNodeAt(r, i);
      for (u.expressions = [n]; this.eat(F.comma); )
        u.expressions.push(this.parseMaybeAssign(e, t));
      return this.finishNode(u, "SequenceExpression");
    }
    return n;
  };
  pe.parseMaybeAssign = function(e, t, r) {
    if (this.isContextual("yield")) {
      if (this.inGenerator)
        return this.parseYield(e);
      this.exprAllowed = !1;
    }
    var i = !1, n = -1, u = -1, a = -1;
    t ? (n = t.parenthesizedAssign, u = t.trailingComma, a = t.doubleProto, t.parenthesizedAssign = t.trailingComma = -1) : (t = new Oa(), i =
    !0);
    var o = this.start, l = this.startLoc;
    (this.type === F.parenL || this.type === F.name) && (this.potentialArrowAt = this.start, this.potentialArrowInForAwait = e === "await");
    var c = this.parseMaybeConditional(e, t);
    if (r && (c = r.call(this, c, o, l)), this.type.isAssign) {
      var h = this.startNodeAt(o, l);
      return h.operator = this.value, this.type === F.eq && (c = this.toAssignable(c, !1, t)), i || (t.parenthesizedAssign = t.trailingComma =
      t.doubleProto = -1), t.shorthandAssign >= c.start && (t.shorthandAssign = -1), this.type === F.eq ? this.checkLValPattern(c) : this.checkLValSimple(
      c), h.left = c, this.next(), h.right = this.parseMaybeAssign(e), a > -1 && (t.doubleProto = a), this.finishNode(h, "AssignmentExpressi\
on");
    } else
      i && this.checkExpressionErrors(t, !0);
    return n > -1 && (t.parenthesizedAssign = n), u > -1 && (t.trailingComma = u), c;
  };
  pe.parseMaybeConditional = function(e, t) {
    var r = this.start, i = this.startLoc, n = this.parseExprOps(e, t);
    if (this.checkExpressionErrors(t))
      return n;
    if (this.eat(F.question)) {
      var u = this.startNodeAt(r, i);
      return u.test = n, u.consequent = this.parseMaybeAssign(), this.expect(F.colon), u.alternate = this.parseMaybeAssign(e), this.finishNode(
      u, "ConditionalExpression");
    }
    return n;
  };
  pe.parseExprOps = function(e, t) {
    var r = this.start, i = this.startLoc, n = this.parseMaybeUnary(t, !1, !1, e);
    return this.checkExpressionErrors(t) || n.start === r && n.type === "ArrowFunctionExpression" ? n : this.parseExprOp(n, r, i, -1, e);
  };
  pe.parseExprOp = function(e, t, r, i, n) {
    var u = this.type.binop;
    if (u != null && (!n || this.type !== F._in) && u > i) {
      var a = this.type === F.logicalOR || this.type === F.logicalAND, o = this.type === F.coalesce;
      o && (u = F.logicalAND.binop);
      var l = this.value;
      this.next();
      var c = this.start, h = this.startLoc, p = this.parseExprOp(this.parseMaybeUnary(null, !1, !1, n), c, h, u, n), d = this.buildBinary(t,
      r, e, p, l, a || o);
      return (a && this.type === F.coalesce || o && (this.type === F.logicalOR || this.type === F.logicalAND)) && this.raiseRecoverable(this.
      start, "Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses"), this.parseExprOp(d, t, r, i, n);
    }
    return e;
  };
  pe.buildBinary = function(e, t, r, i, n, u) {
    i.type === "PrivateIdentifier" && this.raise(i.start, "Private identifier can only be left side of binary expression");
    var a = this.startNodeAt(e, t);
    return a.left = r, a.operator = n, a.right = i, this.finishNode(a, u ? "LogicalExpression" : "BinaryExpression");
  };
  pe.parseMaybeUnary = function(e, t, r, i) {
    var n = this.start, u = this.startLoc, a;
    if (this.isContextual("await") && this.canAwait)
      a = this.parseAwait(i), t = !0;
    else if (this.type.prefix) {
      var o = this.startNode(), l = this.type === F.incDec;
      o.operator = this.value, o.prefix = !0, this.next(), o.argument = this.parseMaybeUnary(null, !0, l, i), this.checkExpressionErrors(e, !0),
      l ? this.checkLValSimple(o.argument) : this.strict && o.operator === "delete" && b1(o.argument) ? this.raiseRecoverable(o.start, "Dele\
ting local variable in strict mode") : o.operator === "delete" && fp(o.argument) ? this.raiseRecoverable(o.start, "Private fields can not be\
 deleted") : t = !0, a = this.finishNode(o, l ? "UpdateExpression" : "UnaryExpression");
    } else if (!t && this.type === F.privateId)
      (i || this.privateNameStack.length === 0) && this.options.checkPrivateFields && this.unexpected(), a = this.parsePrivateIdent(), this.
      type !== F._in && this.unexpected();
    else {
      if (a = this.parseExprSubscripts(e, i), this.checkExpressionErrors(e))
        return a;
      for (; this.type.postfix && !this.canInsertSemicolon(); ) {
        var c = this.startNodeAt(n, u);
        c.operator = this.value, c.prefix = !1, c.argument = a, this.checkLValSimple(a), this.next(), a = this.finishNode(c, "UpdateExpressi\
on");
      }
    }
    if (!r && this.eat(F.starstar))
      if (t)
        this.unexpected(this.lastTokStart);
      else
        return this.buildBinary(n, u, a, this.parseMaybeUnary(null, !1, !1, i), "**", !1);
    else
      return a;
  };
  s(b1, "isLocalVariableAccess");
  s(fp, "isPrivateFieldAccess");
  pe.parseExprSubscripts = function(e, t) {
    var r = this.start, i = this.startLoc, n = this.parseExprAtom(e, t);
    if (n.type === "ArrowFunctionExpression" && this.input.slice(this.lastTokStart, this.lastTokEnd) !== ")")
      return n;
    var u = this.parseSubscripts(n, r, i, !1, t);
    return e && u.type === "MemberExpression" && (e.parenthesizedAssign >= u.start && (e.parenthesizedAssign = -1), e.parenthesizedBind >= u.
    start && (e.parenthesizedBind = -1), e.trailingComma >= u.start && (e.trailingComma = -1)), u;
  };
  pe.parseSubscripts = function(e, t, r, i, n) {
    for (var u = this.options.ecmaVersion >= 8 && e.type === "Identifier" && e.name === "async" && this.lastTokEnd === e.end && !this.canInsertSemicolon() &&
    e.end - e.start === 5 && this.potentialArrowAt === e.start, a = !1; ; ) {
      var o = this.parseSubscript(e, t, r, i, u, a, n);
      if (o.optional && (a = !0), o === e || o.type === "ArrowFunctionExpression") {
        if (a) {
          var l = this.startNodeAt(t, r);
          l.expression = o, o = this.finishNode(l, "ChainExpression");
        }
        return o;
      }
      e = o;
    }
  };
  pe.shouldParseAsyncArrow = function() {
    return !this.canInsertSemicolon() && this.eat(F.arrow);
  };
  pe.parseSubscriptAsyncArrow = function(e, t, r, i) {
    return this.parseArrowExpression(this.startNodeAt(e, t), r, !0, i);
  };
  pe.parseSubscript = function(e, t, r, i, n, u, a) {
    var o = this.options.ecmaVersion >= 11, l = o && this.eat(F.questionDot);
    i && l && this.raise(this.lastTokStart, "Optional chaining cannot appear in the callee of new expressions");
    var c = this.eat(F.bracketL);
    if (c || l && this.type !== F.parenL && this.type !== F.backQuote || this.eat(F.dot)) {
      var h = this.startNodeAt(t, r);
      h.object = e, c ? (h.property = this.parseExpression(), this.expect(F.bracketR)) : this.type === F.privateId && e.type !== "Super" ? h.
      property = this.parsePrivateIdent() : h.property = this.parseIdent(this.options.allowReserved !== "never"), h.computed = !!c, o && (h.
      optional = l), e = this.finishNode(h, "MemberExpression");
    } else if (!i && this.eat(F.parenL)) {
      var p = new Oa(), d = this.yieldPos, m = this.awaitPos, D = this.awaitIdentPos;
      this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0;
      var g = this.parseExprList(F.parenR, this.options.ecmaVersion >= 8, !1, p);
      if (n && !l && this.shouldParseAsyncArrow())
        return this.checkPatternErrors(p, !1), this.checkYieldAwaitInDefaultParams(), this.awaitIdentPos > 0 && this.raise(this.awaitIdentPos,
        "Cannot use 'await' as identifier inside an async function"), this.yieldPos = d, this.awaitPos = m, this.awaitIdentPos = D, this.parseSubscriptAsyncArrow(
        t, r, g, a);
      this.checkExpressionErrors(p, !0), this.yieldPos = d || this.yieldPos, this.awaitPos = m || this.awaitPos, this.awaitIdentPos = D || this.
      awaitIdentPos;
      var v = this.startNodeAt(t, r);
      v.callee = e, v.arguments = g, o && (v.optional = l), e = this.finishNode(v, "CallExpression");
    } else if (this.type === F.backQuote) {
      (l || u) && this.raise(this.start, "Optional chaining cannot appear in the tag of tagged template expressions");
      var x = this.startNodeAt(t, r);
      x.tag = e, x.quasi = this.parseTemplate({ isTagged: !0 }), e = this.finishNode(x, "TaggedTemplateExpression");
    }
    return e;
  };
  pe.parseExprAtom = function(e, t, r) {
    this.type === F.slash && this.readRegexp();
    var i, n = this.potentialArrowAt === this.start;
    switch (this.type) {
      case F._super:
        return this.allowSuper || this.raise(this.start, "'super' keyword outside a method"), i = this.startNode(), this.next(), this.type ===
        F.parenL && !this.allowDirectSuper && this.raise(i.start, "super() call outside constructor of a subclass"), this.type !== F.dot && this.
        type !== F.bracketL && this.type !== F.parenL && this.unexpected(), this.finishNode(i, "Super");
      case F._this:
        return i = this.startNode(), this.next(), this.finishNode(i, "ThisExpression");
      case F.name:
        var u = this.start, a = this.startLoc, o = this.containsEsc, l = this.parseIdent(!1);
        if (this.options.ecmaVersion >= 8 && !o && l.name === "async" && !this.canInsertSemicolon() && this.eat(F._function))
          return this.overrideContext(qe.f_expr), this.parseFunction(this.startNodeAt(u, a), 0, !1, !0, t);
        if (n && !this.canInsertSemicolon()) {
          if (this.eat(F.arrow))
            return this.parseArrowExpression(this.startNodeAt(u, a), [l], !1, t);
          if (this.options.ecmaVersion >= 8 && l.name === "async" && this.type === F.name && !o && (!this.potentialArrowInForAwait || this.value !==
          "of" || this.containsEsc))
            return l = this.parseIdent(!1), (this.canInsertSemicolon() || !this.eat(F.arrow)) && this.unexpected(), this.parseArrowExpression(
            this.startNodeAt(u, a), [l], !0, t);
        }
        return l;
      case F.regexp:
        var c = this.value;
        return i = this.parseLiteral(c.value), i.regex = { pattern: c.pattern, flags: c.flags }, i;
      case F.num:
      case F.string:
        return this.parseLiteral(this.value);
      case F._null:
      case F._true:
      case F._false:
        return i = this.startNode(), i.value = this.type === F._null ? null : this.type === F._true, i.raw = this.type.keyword, this.next(),
        this.finishNode(i, "Literal");
      case F.parenL:
        var h = this.start, p = this.parseParenAndDistinguishExpression(n, t);
        return e && (e.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(p) && (e.parenthesizedAssign = h), e.parenthesizedBind < 0 && (e.
        parenthesizedBind = h)), p;
      case F.bracketL:
        return i = this.startNode(), this.next(), i.elements = this.parseExprList(F.bracketR, !0, !0, e), this.finishNode(i, "ArrayExpressio\
n");
      case F.braceL:
        return this.overrideContext(qe.b_expr), this.parseObj(!1, e);
      case F._function:
        return i = this.startNode(), this.next(), this.parseFunction(i, 0);
      case F._class:
        return this.parseClass(this.startNode(), !1);
      case F._new:
        return this.parseNew();
      case F.backQuote:
        return this.parseTemplate();
      case F._import:
        return this.options.ecmaVersion >= 11 ? this.parseExprImport(r) : this.unexpected();
      default:
        return this.parseExprAtomDefault();
    }
  };
  pe.parseExprAtomDefault = function() {
    this.unexpected();
  };
  pe.parseExprImport = function(e) {
    var t = this.startNode();
    if (this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword import"), this.next(), this.type === F.parenL && !e)
      return this.parseDynamicImport(t);
    if (this.type === F.dot) {
      var r = this.startNodeAt(t.start, t.loc && t.loc.start);
      return r.name = "import", t.meta = this.finishNode(r, "Identifier"), this.parseImportMeta(t);
    } else
      this.unexpected();
  };
  pe.parseDynamicImport = function(e) {
    if (this.next(), e.source = this.parseMaybeAssign(), !this.eat(F.parenR)) {
      var t = this.start;
      this.eat(F.comma) && this.eat(F.parenR) ? this.raiseRecoverable(t, "Trailing comma is not allowed in import()") : this.unexpected(t);
    }
    return this.finishNode(e, "ImportExpression");
  };
  pe.parseImportMeta = function(e) {
    this.next();
    var t = this.containsEsc;
    return e.property = this.parseIdent(!0), e.property.name !== "meta" && this.raiseRecoverable(e.property.start, "The only valid meta prop\
erty for import is 'import.meta'"), t && this.raiseRecoverable(e.start, "'import.meta' must not contain escaped characters"), this.options.sourceType !==
    "module" && !this.options.allowImportExportEverywhere && this.raiseRecoverable(e.start, "Cannot use 'import.meta' outside a module"), this.
    finishNode(e, "MetaProperty");
  };
  pe.parseLiteral = function(e) {
    var t = this.startNode();
    return t.value = e, t.raw = this.input.slice(this.start, this.end), t.raw.charCodeAt(t.raw.length - 1) === 110 && (t.bigint = t.raw.slice(
    0, -1).replace(/_/g, "")), this.next(), this.finishNode(t, "Literal");
  };
  pe.parseParenExpression = function() {
    this.expect(F.parenL);
    var e = this.parseExpression();
    return this.expect(F.parenR), e;
  };
  pe.shouldParseArrow = function(e) {
    return !this.canInsertSemicolon();
  };
  pe.parseParenAndDistinguishExpression = function(e, t) {
    var r = this.start, i = this.startLoc, n, u = this.options.ecmaVersion >= 8;
    if (this.options.ecmaVersion >= 6) {
      this.next();
      var a = this.start, o = this.startLoc, l = [], c = !0, h = !1, p = new Oa(), d = this.yieldPos, m = this.awaitPos, D;
      for (this.yieldPos = 0, this.awaitPos = 0; this.type !== F.parenR; )
        if (c ? c = !1 : this.expect(F.comma), u && this.afterTrailingComma(F.parenR, !0)) {
          h = !0;
          break;
        } else if (this.type === F.ellipsis) {
          D = this.start, l.push(this.parseParenItem(this.parseRestBinding())), this.type === F.comma && this.raiseRecoverable(
            this.start,
            "Comma is not permitted after the rest element"
          );
          break;
        } else
          l.push(this.parseMaybeAssign(!1, p, this.parseParenItem));
      var g = this.lastTokEnd, v = this.lastTokEndLoc;
      if (this.expect(F.parenR), e && this.shouldParseArrow(l) && this.eat(F.arrow))
        return this.checkPatternErrors(p, !1), this.checkYieldAwaitInDefaultParams(), this.yieldPos = d, this.awaitPos = m, this.parseParenArrowList(
        r, i, l, t);
      (!l.length || h) && this.unexpected(this.lastTokStart), D && this.unexpected(D), this.checkExpressionErrors(p, !0), this.yieldPos = d ||
      this.yieldPos, this.awaitPos = m || this.awaitPos, l.length > 1 ? (n = this.startNodeAt(a, o), n.expressions = l, this.finishNodeAt(n,
      "SequenceExpression", g, v)) : n = l[0];
    } else
      n = this.parseParenExpression();
    if (this.options.preserveParens) {
      var x = this.startNodeAt(r, i);
      return x.expression = n, this.finishNode(x, "ParenthesizedExpression");
    } else
      return n;
  };
  pe.parseParenItem = function(e) {
    return e;
  };
  pe.parseParenArrowList = function(e, t, r, i) {
    return this.parseArrowExpression(this.startNodeAt(e, t), r, !1, i);
  };
  G4 = [];
  pe.parseNew = function() {
    this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword new");
    var e = this.startNode();
    if (this.next(), this.options.ecmaVersion >= 6 && this.type === F.dot) {
      var t = this.startNodeAt(e.start, e.loc && e.loc.start);
      t.name = "new", e.meta = this.finishNode(t, "Identifier"), this.next();
      var r = this.containsEsc;
      return e.property = this.parseIdent(!0), e.property.name !== "target" && this.raiseRecoverable(e.property.start, "The only valid meta \
property for new is 'new.target'"), r && this.raiseRecoverable(e.start, "'new.target' must not contain escaped characters"), this.allowNewDotTarget ||
      this.raiseRecoverable(e.start, "'new.target' can only be used in functions and class static block"), this.finishNode(e, "MetaProperty");
    }
    var i = this.start, n = this.startLoc;
    return e.callee = this.parseSubscripts(this.parseExprAtom(null, !1, !0), i, n, !0, !1), this.eat(F.parenL) ? e.arguments = this.parseExprList(
    F.parenR, this.options.ecmaVersion >= 8, !1) : e.arguments = G4, this.finishNode(e, "NewExpression");
  };
  pe.parseTemplateElement = function(e) {
    var t = e.isTagged, r = this.startNode();
    return this.type === F.invalidTemplate ? (t || this.raiseRecoverable(this.start, "Bad escape sequence in untagged template literal"), r.
    value = {
      raw: this.value.replace(/\r\n?/g, `
`),
      cooked: null
    }) : r.value = {
      raw: this.input.slice(this.start, this.end).replace(/\r\n?/g, `
`),
      cooked: this.value
    }, this.next(), r.tail = this.type === F.backQuote, this.finishNode(r, "TemplateElement");
  };
  pe.parseTemplate = function(e) {
    e === void 0 && (e = {});
    var t = e.isTagged;
    t === void 0 && (t = !1);
    var r = this.startNode();
    this.next(), r.expressions = [];
    var i = this.parseTemplateElement({ isTagged: t });
    for (r.quasis = [i]; !i.tail; )
      this.type === F.eof && this.raise(this.pos, "Unterminated template literal"), this.expect(F.dollarBraceL), r.expressions.push(this.parseExpression()),
      this.expect(F.braceR), r.quasis.push(i = this.parseTemplateElement({ isTagged: t }));
    return this.next(), this.finishNode(r, "TemplateLiteral");
  };
  pe.isAsyncProp = function(e) {
    return !e.computed && e.key.type === "Identifier" && e.key.name === "async" && (this.type === F.name || this.type === F.num || this.type ===
    F.string || this.type === F.bracketL || this.type.keyword || this.options.ecmaVersion >= 9 && this.type === F.star) && !Yt.test(this.input.
    slice(this.lastTokEnd, this.start));
  };
  pe.parseObj = function(e, t) {
    var r = this.startNode(), i = !0, n = {};
    for (r.properties = [], this.next(); !this.eat(F.braceR); ) {
      if (i)
        i = !1;
      else if (this.expect(F.comma), this.options.ecmaVersion >= 5 && this.afterTrailingComma(F.braceR))
        break;
      var u = this.parseProperty(e, t);
      e || this.checkPropClash(u, n, t), r.properties.push(u);
    }
    return this.finishNode(r, e ? "ObjectPattern" : "ObjectExpression");
  };
  pe.parseProperty = function(e, t) {
    var r = this.startNode(), i, n, u, a;
    if (this.options.ecmaVersion >= 9 && this.eat(F.ellipsis))
      return e ? (r.argument = this.parseIdent(!1), this.type === F.comma && this.raiseRecoverable(this.start, "Comma is not permitted after\
 the rest element"), this.finishNode(r, "RestElement")) : (r.argument = this.parseMaybeAssign(!1, t), this.type === F.comma && t && t.trailingComma <
      0 && (t.trailingComma = this.start), this.finishNode(r, "SpreadElement"));
    this.options.ecmaVersion >= 6 && (r.method = !1, r.shorthand = !1, (e || t) && (u = this.start, a = this.startLoc), e || (i = this.eat(F.
    star)));
    var o = this.containsEsc;
    return this.parsePropertyName(r), !e && !o && this.options.ecmaVersion >= 8 && !i && this.isAsyncProp(r) ? (n = !0, i = this.options.ecmaVersion >=
    9 && this.eat(F.star), this.parsePropertyName(r)) : n = !1, this.parsePropertyValue(r, e, i, n, u, a, t, o), this.finishNode(r, "Propert\
y");
  };
  pe.parseGetterSetter = function(e) {
    e.kind = e.key.name, this.parsePropertyName(e), e.value = this.parseMethod(!1);
    var t = e.kind === "get" ? 0 : 1;
    if (e.value.params.length !== t) {
      var r = e.value.start;
      e.kind === "get" ? this.raiseRecoverable(r, "getter should have no params") : this.raiseRecoverable(r, "setter should have exactly one\
 param");
    } else
      e.kind === "set" && e.value.params[0].type === "RestElement" && this.raiseRecoverable(e.value.params[0].start, "Setter cannot use rest\
 params");
  };
  pe.parsePropertyValue = function(e, t, r, i, n, u, a, o) {
    (r || i) && this.type === F.colon && this.unexpected(), this.eat(F.colon) ? (e.value = t ? this.parseMaybeDefault(this.start, this.startLoc) :
    this.parseMaybeAssign(!1, a), e.kind = "init") : this.options.ecmaVersion >= 6 && this.type === F.parenL ? (t && this.unexpected(), e.kind =
    "init", e.method = !0, e.value = this.parseMethod(r, i)) : !t && !o && this.options.ecmaVersion >= 5 && !e.computed && e.key.type === "I\
dentifier" && (e.key.name === "get" || e.key.name === "set") && this.type !== F.comma && this.type !== F.braceR && this.type !== F.eq ? ((r ||
    i) && this.unexpected(), this.parseGetterSetter(e)) : this.options.ecmaVersion >= 6 && !e.computed && e.key.type === "Identifier" ? ((r ||
    i) && this.unexpected(), this.checkUnreserved(e.key), e.key.name === "await" && !this.awaitIdentPos && (this.awaitIdentPos = n), e.kind =
    "init", t ? e.value = this.parseMaybeDefault(n, u, this.copyNode(e.key)) : this.type === F.eq && a ? (a.shorthandAssign < 0 && (a.shorthandAssign =
    this.start), e.value = this.parseMaybeDefault(n, u, this.copyNode(e.key))) : e.value = this.copyNode(e.key), e.shorthand = !0) : this.unexpected();
  };
  pe.parsePropertyName = function(e) {
    if (this.options.ecmaVersion >= 6) {
      if (this.eat(F.bracketL))
        return e.computed = !0, e.key = this.parseMaybeAssign(), this.expect(F.bracketR), e.key;
      e.computed = !1;
    }
    return e.key = this.type === F.num || this.type === F.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "ne\
ver");
  };
  pe.initFunction = function(e) {
    e.id = null, this.options.ecmaVersion >= 6 && (e.generator = e.expression = !1), this.options.ecmaVersion >= 8 && (e.async = !1);
  };
  pe.parseMethod = function(e, t, r) {
    var i = this.startNode(), n = this.yieldPos, u = this.awaitPos, a = this.awaitIdentPos;
    return this.initFunction(i), this.options.ecmaVersion >= 6 && (i.generator = e), this.options.ecmaVersion >= 8 && (i.async = !!t), this.
    yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(xp(t, i.generator) | Dp | (r ? D1 : 0)), this.expect(F.parenL),
    i.params = this.parseBindingList(F.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams(), this.parseFunctionBody(
    i, !1, !0, !1), this.yieldPos = n, this.awaitPos = u, this.awaitIdentPos = a, this.finishNode(i, "FunctionExpression");
  };
  pe.parseArrowExpression = function(e, t, r, i) {
    var n = this.yieldPos, u = this.awaitPos, a = this.awaitIdentPos;
    return this.enterScope(xp(r, !1) | d1), this.initFunction(e), this.options.ecmaVersion >= 8 && (e.async = !!r), this.yieldPos = 0, this.
    awaitPos = 0, this.awaitIdentPos = 0, e.params = this.toAssignableList(t, !0), this.parseFunctionBody(e, !0, !1, i), this.yieldPos = n, this.
    awaitPos = u, this.awaitIdentPos = a, this.finishNode(e, "ArrowFunctionExpression");
  };
  pe.parseFunctionBody = function(e, t, r, i) {
    var n = t && this.type !== F.braceL, u = this.strict, a = !1;
    if (n)
      e.body = this.parseMaybeAssign(i), e.expression = !0, this.checkParams(e, !1);
    else {
      var o = this.options.ecmaVersion >= 7 && !this.isSimpleParamList(e.params);
      (!u || o) && (a = this.strictDirective(this.end), a && o && this.raiseRecoverable(e.start, "Illegal 'use strict' directive in function\
 with non-simple parameter list"));
      var l = this.labels;
      this.labels = [], a && (this.strict = !0), this.checkParams(e, !u && !a && !t && !r && this.isSimpleParamList(e.params)), this.strict &&
      e.id && this.checkLValSimple(e.id, y1), e.body = this.parseBlock(!1, void 0, a && !u), e.expression = !1, this.adaptDirectivePrologue(
      e.body.body), this.labels = l;
    }
    this.exitScope();
  };
  pe.isSimpleParamList = function(e) {
    for (var t = 0, r = e; t < r.length; t += 1) {
      var i = r[t];
      if (i.type !== "Identifier")
        return !1;
    }
    return !0;
  };
  pe.checkParams = function(e, t) {
    for (var r = /* @__PURE__ */ Object.create(null), i = 0, n = e.params; i < n.length; i += 1) {
      var u = n[i];
      this.checkLValInnerPattern(u, yp, t ? null : r);
    }
  };
  pe.parseExprList = function(e, t, r, i) {
    for (var n = [], u = !0; !this.eat(e); ) {
      if (u)
        u = !1;
      else if (this.expect(F.comma), t && this.afterTrailingComma(e))
        break;
      var a = void 0;
      r && this.type === F.comma ? a = null : this.type === F.ellipsis ? (a = this.parseSpread(i), i && this.type === F.comma && i.trailingComma <
      0 && (i.trailingComma = this.start)) : a = this.parseMaybeAssign(!1, i), n.push(a);
    }
    return n;
  };
  pe.checkUnreserved = function(e) {
    var t = e.start, r = e.end, i = e.name;
    if (this.inGenerator && i === "yield" && this.raiseRecoverable(t, "Cannot use 'yield' as identifier inside a generator"), this.inAsync &&
    i === "await" && this.raiseRecoverable(t, "Cannot use 'await' as identifier inside an async function"), this.currentThisScope().inClassFieldInit &&
    i === "arguments" && this.raiseRecoverable(t, "Cannot use 'arguments' in class field initializer"), this.inClassStaticBlock && (i === "a\
rguments" || i === "await") && this.raise(t, "Cannot use " + i + " in class static initialization block"), this.keywords.test(i) && this.raise(
    t, "Unexpected keyword '" + i + "'"), !(this.options.ecmaVersion < 6 && this.input.slice(t, r).indexOf("\\") !== -1)) {
      var n = this.strict ? this.reservedWordsStrict : this.reservedWords;
      n.test(i) && (!this.inAsync && i === "await" && this.raiseRecoverable(t, "Cannot use keyword 'await' outside an async function"), this.
      raiseRecoverable(t, "The keyword '" + i + "' is reserved"));
    }
  };
  pe.parseIdent = function(e) {
    var t = this.parseIdentNode();
    return this.next(!!e), this.finishNode(t, "Identifier"), e || (this.checkUnreserved(t), t.name === "await" && !this.awaitIdentPos && (this.
    awaitIdentPos = t.start)), t;
  };
  pe.parseIdentNode = function() {
    var e = this.startNode();
    return this.type === F.name ? e.name = this.value : this.type.keyword ? (e.name = this.type.keyword, (e.name === "class" || e.name === "\
function") && (this.lastTokEnd !== this.lastTokStart + 1 || this.input.charCodeAt(this.lastTokStart) !== 46) && this.context.pop(), this.type =
    F.name) : this.unexpected(), e;
  };
  pe.parsePrivateIdent = function() {
    var e = this.startNode();
    return this.type === F.privateId ? e.name = this.value : this.unexpected(), this.next(), this.finishNode(e, "PrivateIdentifier"), this.options.
    checkPrivateFields && (this.privateNameStack.length === 0 ? this.raise(e.start, "Private field '#" + e.name + "' must be declared in an \
enclosing class") : this.privateNameStack[this.privateNameStack.length - 1].used.push(e)), e;
  };
  pe.parseYield = function(e) {
    this.yieldPos || (this.yieldPos = this.start);
    var t = this.startNode();
    return this.next(), this.type === F.semi || this.canInsertSemicolon() || this.type !== F.star && !this.type.startsExpr ? (t.delegate = !1,
    t.argument = null) : (t.delegate = this.eat(F.star), t.argument = this.parseMaybeAssign(e)), this.finishNode(t, "YieldExpression");
  };
  pe.parseAwait = function(e) {
    this.awaitPos || (this.awaitPos = this.start);
    var t = this.startNode();
    return this.next(), t.argument = this.parseMaybeUnary(null, !0, !1, e), this.finishNode(t, "AwaitExpression");
  };
  Ta = et.prototype;
  Ta.raise = function(e, t) {
    var r = p1(this.input, e);
    t += " (" + r.line + ":" + r.column + ")";
    var i = new SyntaxError(t);
    throw i.pos = e, i.loc = r, i.raisedAt = this.pos, i;
  };
  Ta.raiseRecoverable = Ta.raise;
  Ta.curPosition = function() {
    if (this.options.locations)
      return new Os(this.curLine, this.pos - this.lineStart);
  };
  wi = et.prototype, X4 = /* @__PURE__ */ s(function(t) {
    this.flags = t, this.var = [], this.lexical = [], this.functions = [], this.inClassFieldInit = !1;
  }, "Scope");
  wi.enterScope = function(e) {
    this.scopeStack.push(new X4(e));
  };
  wi.exitScope = function() {
    this.scopeStack.pop();
  };
  wi.treatFunctionsAsVarInScope = function(e) {
    return e.flags & Rn || !this.inModule && e.flags & Rs;
  };
  wi.declareName = function(e, t, r) {
    var i = !1;
    if (t === Kr) {
      var n = this.currentScope();
      i = n.lexical.indexOf(e) > -1 || n.functions.indexOf(e) > -1 || n.var.indexOf(e) > -1, n.lexical.push(e), this.inModule && n.flags & Rs &&
      delete this.undefinedExports[e];
    } else if (t === x1) {
      var u = this.currentScope();
      u.lexical.push(e);
    } else if (t === g1) {
      var a = this.currentScope();
      this.treatFunctionsAsVar ? i = a.lexical.indexOf(e) > -1 : i = a.lexical.indexOf(e) > -1 || a.var.indexOf(e) > -1, a.functions.push(e);
    } else
      for (var o = this.scopeStack.length - 1; o >= 0; --o) {
        var l = this.scopeStack[o];
        if (l.lexical.indexOf(e) > -1 && !(l.flags & m1 && l.lexical[0] === e) || !this.treatFunctionsAsVarInScope(l) && l.functions.indexOf(
        e) > -1) {
          i = !0;
          break;
        }
        if (l.var.push(e), this.inModule && l.flags & Rs && delete this.undefinedExports[e], l.flags & gp)
          break;
      }
    i && this.raiseRecoverable(r, "Identifier '" + e + "' has already been declared");
  };
  wi.checkLocalExport = function(e) {
    this.scopeStack[0].lexical.indexOf(e.name) === -1 && this.scopeStack[0].var.indexOf(e.name) === -1 && (this.undefinedExports[e.name] = e);
  };
  wi.currentScope = function() {
    return this.scopeStack[this.scopeStack.length - 1];
  };
  wi.currentVarScope = function() {
    for (var e = this.scopeStack.length - 1; ; e--) {
      var t = this.scopeStack[e];
      if (t.flags & gp)
        return t;
    }
  };
  wi.currentThisScope = function() {
    for (var e = this.scopeStack.length - 1; ; e--) {
      var t = this.scopeStack[e];
      if (t.flags & gp && !(t.flags & d1))
        return t;
    }
  };
  Ra = /* @__PURE__ */ s(function(t, r, i) {
    this.type = "", this.start = r, this.end = 0, t.options.locations && (this.loc = new Ia(t, i)), t.options.directSourceFile && (this.sourceFile =
    t.options.directSourceFile), t.options.ranges && (this.range = [r, 0]);
  }, "Node"), Ms = et.prototype;
  Ms.startNode = function() {
    return new Ra(this, this.start, this.startLoc);
  };
  Ms.startNodeAt = function(e, t) {
    return new Ra(this, e, t);
  };
  s(v1, "finishNodeAt");
  Ms.finishNode = function(e, t) {
    return v1.call(this, e, t, this.lastTokEnd, this.lastTokEndLoc);
  };
  Ms.finishNodeAt = function(e, t, r, i) {
    return v1.call(this, e, t, r, i);
  };
  Ms.copyNode = function(e) {
    var t = new Ra(this, e.start, this.startLoc);
    for (var r in e)
      t[r] = e[r];
    return t;
  };
  C1 = "ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_Wh\
en_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT C\
hanges_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modi\
fier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Op\
erator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_\
Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STer\
m Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC\
 XID_Start XIDS", w1 = C1 + " Extended_Pictographic", A1 = w1, F1 = A1 + " EBase EComp EMod EPres ExtPict", S1 = F1, Y4 = S1, K4 = {
    9: C1,
    10: w1,
    11: A1,
    12: F1,
    13: S1,
    14: Y4
  }, Q4 = "Basic_Emoji Emoji_Keycap_Sequence RGI_Emoji_Modifier_Sequence RGI_Emoji_Flag_Sequence RGI_Emoji_Tag_Sequence RGI_Emoji_ZWJ_Sequen\
ce RGI_Emoji", Z4 = {
    9: "",
    10: "",
    11: "",
    12: "",
    13: "",
    14: Q4
  }, s1 = "Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Num\
ber Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_L\
etter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C \
Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z S\
pace_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu", _1 = "Adlam Adlm Ahom Anatol\
ian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks B\
opomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham\
 Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egypti\
an_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru\
 Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phl\
i Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khud\
awadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam \
Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hierog\
lyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Og\
ham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old\
_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahl\
avi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Som\
peng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri\
 Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wa\
ra Yi Yiii Zanabazar_Square Zanb", k1 = _1 + " Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian \
Sogo Sogdian Sogd", B1 = k1 + " Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho", T1 = B1 + " Chorasmian Chrs Diak Div\
es_Akuru Khitan_Small_Script Kits Yezi Yezidi", P1 = T1 + " Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith", eI = P1 + " H\
rkt Katakana_Or_Hiragana Kawi Nag_Mundari Nagm Unknown Zzzz", tI = {
    9: _1,
    10: k1,
    11: B1,
    12: T1,
    13: P1,
    14: eI
  }, I1 = {};
  s(rI, "buildUnicodeData");
  for (_a = 0, lp = [9, 10, 11, 12, 13, 14]; _a < lp.length; _a += 1)
    u1 = lp[_a], rI(u1);
  re = et.prototype, Pa = /* @__PURE__ */ s(function(t, r) {
    this.parent = t, this.base = r || this;
  }, "BranchID");
  Pa.prototype.separatedFrom = /* @__PURE__ */ s(function(t) {
    for (var r = this; r; r = r.parent)
      for (var i = t; i; i = i.parent)
        if (r.base === i.base && r !== i)
          return !0;
    return !1;
  }, "separatedFrom");
  Pa.prototype.sibling = /* @__PURE__ */ s(function() {
    return new Pa(this.parent, this.base);
  }, "sibling");
  Pr = /* @__PURE__ */ s(function(t) {
    this.parser = t, this.validFlags = "gim" + (t.options.ecmaVersion >= 6 ? "uy" : "") + (t.options.ecmaVersion >= 9 ? "s" : "") + (t.options.
    ecmaVersion >= 13 ? "d" : "") + (t.options.ecmaVersion >= 15 ? "v" : ""), this.unicodeProperties = I1[t.options.ecmaVersion >= 14 ? 14 :
    t.options.ecmaVersion], this.source = "", this.flags = "", this.start = 0, this.switchU = !1, this.switchV = !1, this.switchN = !1, this.
    pos = 0, this.lastIntValue = 0, this.lastStringValue = "", this.lastAssertionIsQuantifiable = !1, this.numCapturingParens = 0, this.maxBackReference =
    0, this.groupNames = /* @__PURE__ */ Object.create(null), this.backReferenceNames = [], this.branchID = null;
  }, "RegExpValidationState");
  Pr.prototype.reset = /* @__PURE__ */ s(function(t, r, i) {
    var n = i.indexOf("v") !== -1, u = i.indexOf("u") !== -1;
    this.start = t | 0, this.source = r + "", this.flags = i, n && this.parser.options.ecmaVersion >= 15 ? (this.switchU = !0, this.switchV =
    !0, this.switchN = !0) : (this.switchU = u && this.parser.options.ecmaVersion >= 6, this.switchV = !1, this.switchN = u && this.parser.options.
    ecmaVersion >= 9);
  }, "reset");
  Pr.prototype.raise = /* @__PURE__ */ s(function(t) {
    this.parser.raiseRecoverable(this.start, "Invalid regular expression: /" + this.source + "/: " + t);
  }, "raise");
  Pr.prototype.at = /* @__PURE__ */ s(function(t, r) {
    r === void 0 && (r = !1);
    var i = this.source, n = i.length;
    if (t >= n)
      return -1;
    var u = i.charCodeAt(t);
    if (!(r || this.switchU) || u <= 55295 || u >= 57344 || t + 1 >= n)
      return u;
    var a = i.charCodeAt(t + 1);
    return a >= 56320 && a <= 57343 ? (u << 10) + a - 56613888 : u;
  }, "at");
  Pr.prototype.nextIndex = /* @__PURE__ */ s(function(t, r) {
    r === void 0 && (r = !1);
    var i = this.source, n = i.length;
    if (t >= n)
      return n;
    var u = i.charCodeAt(t), a;
    return !(r || this.switchU) || u <= 55295 || u >= 57344 || t + 1 >= n || (a = i.charCodeAt(t + 1)) < 56320 || a > 57343 ? t + 1 : t + 2;
  }, "nextIndex");
  Pr.prototype.current = /* @__PURE__ */ s(function(t) {
    return t === void 0 && (t = !1), this.at(this.pos, t);
  }, "current");
  Pr.prototype.lookahead = /* @__PURE__ */ s(function(t) {
    return t === void 0 && (t = !1), this.at(this.nextIndex(this.pos, t), t);
  }, "lookahead");
  Pr.prototype.advance = /* @__PURE__ */ s(function(t) {
    t === void 0 && (t = !1), this.pos = this.nextIndex(this.pos, t);
  }, "advance");
  Pr.prototype.eat = /* @__PURE__ */ s(function(t, r) {
    return r === void 0 && (r = !1), this.current(r) === t ? (this.advance(r), !0) : !1;
  }, "eat");
  Pr.prototype.eatChars = /* @__PURE__ */ s(function(t, r) {
    r === void 0 && (r = !1);
    for (var i = this.pos, n = 0, u = t; n < u.length; n += 1) {
      var a = u[n], o = this.at(i, r);
      if (o === -1 || o !== a)
        return !1;
      i = this.nextIndex(i, r);
    }
    return this.pos = i, !0;
  }, "eatChars");
  re.validateRegExpFlags = function(e) {
    for (var t = e.validFlags, r = e.flags, i = !1, n = !1, u = 0; u < r.length; u++) {
      var a = r.charAt(u);
      t.indexOf(a) === -1 && this.raise(e.start, "Invalid regular expression flag"), r.indexOf(a, u + 1) > -1 && this.raise(e.start, "Duplic\
ate regular expression flag"), a === "u" && (i = !0), a === "v" && (n = !0);
    }
    this.options.ecmaVersion >= 15 && i && n && this.raise(e.start, "Invalid regular expression flag");
  };
  s(iI, "hasProp");
  re.validateRegExpPattern = function(e) {
    this.regexp_pattern(e), !e.switchN && this.options.ecmaVersion >= 9 && iI(e.groupNames) && (e.switchN = !0, this.regexp_pattern(e));
  };
  re.regexp_pattern = function(e) {
    e.pos = 0, e.lastIntValue = 0, e.lastStringValue = "", e.lastAssertionIsQuantifiable = !1, e.numCapturingParens = 0, e.maxBackReference =
    0, e.groupNames = /* @__PURE__ */ Object.create(null), e.backReferenceNames.length = 0, e.branchID = null, this.regexp_disjunction(e), e.
    pos !== e.source.length && (e.eat(
      41
      /* ) */
    ) && e.raise("Unmatched ')'"), (e.eat(
      93
      /* ] */
    ) || e.eat(
      125
      /* } */
    )) && e.raise("Lone quantifier brackets")), e.maxBackReference > e.numCapturingParens && e.raise("Invalid escape");
    for (var t = 0, r = e.backReferenceNames; t < r.length; t += 1) {
      var i = r[t];
      e.groupNames[i] || e.raise("Invalid named capture referenced");
    }
  };
  re.regexp_disjunction = function(e) {
    var t = this.options.ecmaVersion >= 16;
    for (t && (e.branchID = new Pa(e.branchID, null)), this.regexp_alternative(e); e.eat(
      124
      /* | */
    ); )
      t && (e.branchID = e.branchID.sibling()), this.regexp_alternative(e);
    t && (e.branchID = e.branchID.parent), this.regexp_eatQuantifier(e, !0) && e.raise("Nothing to repeat"), e.eat(
      123
      /* { */
    ) && e.raise("Lone quantifier brackets");
  };
  re.regexp_alternative = function(e) {
    for (; e.pos < e.source.length && this.regexp_eatTerm(e); )
      ;
  };
  re.regexp_eatTerm = function(e) {
    return this.regexp_eatAssertion(e) ? (e.lastAssertionIsQuantifiable && this.regexp_eatQuantifier(e) && e.switchU && e.raise("Invalid qua\
ntifier"), !0) : (e.switchU ? this.regexp_eatAtom(e) : this.regexp_eatExtendedAtom(e)) ? (this.regexp_eatQuantifier(e), !0) : !1;
  };
  re.regexp_eatAssertion = function(e) {
    var t = e.pos;
    if (e.lastAssertionIsQuantifiable = !1, e.eat(
      94
      /* ^ */
    ) || e.eat(
      36
      /* $ */
    ))
      return !0;
    if (e.eat(
      92
      /* \ */
    )) {
      if (e.eat(
        66
        /* B */
      ) || e.eat(
        98
        /* b */
      ))
        return !0;
      e.pos = t;
    }
    if (e.eat(
      40
      /* ( */
    ) && e.eat(
      63
      /* ? */
    )) {
      var r = !1;
      if (this.options.ecmaVersion >= 9 && (r = e.eat(
        60
        /* < */
      )), e.eat(
        61
        /* = */
      ) || e.eat(
        33
        /* ! */
      ))
        return this.regexp_disjunction(e), e.eat(
          41
          /* ) */
        ) || e.raise("Unterminated group"), e.lastAssertionIsQuantifiable = !r, !0;
    }
    return e.pos = t, !1;
  };
  re.regexp_eatQuantifier = function(e, t) {
    return t === void 0 && (t = !1), this.regexp_eatQuantifierPrefix(e, t) ? (e.eat(
      63
      /* ? */
    ), !0) : !1;
  };
  re.regexp_eatQuantifierPrefix = function(e, t) {
    return e.eat(
      42
      /* * */
    ) || e.eat(
      43
      /* + */
    ) || e.eat(
      63
      /* ? */
    ) || this.regexp_eatBracedQuantifier(e, t);
  };
  re.regexp_eatBracedQuantifier = function(e, t) {
    var r = e.pos;
    if (e.eat(
      123
      /* { */
    )) {
      var i = 0, n = -1;
      if (this.regexp_eatDecimalDigits(e) && (i = e.lastIntValue, e.eat(
        44
        /* , */
      ) && this.regexp_eatDecimalDigits(e) && (n = e.lastIntValue), e.eat(
        125
        /* } */
      )))
        return n !== -1 && n < i && !t && e.raise("numbers out of order in {} quantifier"), !0;
      e.switchU && !t && e.raise("Incomplete quantifier"), e.pos = r;
    }
    return !1;
  };
  re.regexp_eatAtom = function(e) {
    return this.regexp_eatPatternCharacters(e) || e.eat(
      46
      /* . */
    ) || this.regexp_eatReverseSolidusAtomEscape(e) || this.regexp_eatCharacterClass(e) || this.regexp_eatUncapturingGroup(e) || this.regexp_eatCapturingGroup(
    e);
  };
  re.regexp_eatReverseSolidusAtomEscape = function(e) {
    var t = e.pos;
    if (e.eat(
      92
      /* \ */
    )) {
      if (this.regexp_eatAtomEscape(e))
        return !0;
      e.pos = t;
    }
    return !1;
  };
  re.regexp_eatUncapturingGroup = function(e) {
    var t = e.pos;
    if (e.eat(
      40
      /* ( */
    )) {
      if (e.eat(
        63
        /* ? */
      ) && e.eat(
        58
        /* : */
      )) {
        if (this.regexp_disjunction(e), e.eat(
          41
          /* ) */
        ))
          return !0;
        e.raise("Unterminated group");
      }
      e.pos = t;
    }
    return !1;
  };
  re.regexp_eatCapturingGroup = function(e) {
    if (e.eat(
      40
      /* ( */
    )) {
      if (this.options.ecmaVersion >= 9 ? this.regexp_groupSpecifier(e) : e.current() === 63 && e.raise("Invalid group"), this.regexp_disjunction(
      e), e.eat(
        41
        /* ) */
      ))
        return e.numCapturingParens += 1, !0;
      e.raise("Unterminated group");
    }
    return !1;
  };
  re.regexp_eatExtendedAtom = function(e) {
    return e.eat(
      46
      /* . */
    ) || this.regexp_eatReverseSolidusAtomEscape(e) || this.regexp_eatCharacterClass(e) || this.regexp_eatUncapturingGroup(e) || this.regexp_eatCapturingGroup(
    e) || this.regexp_eatInvalidBracedQuantifier(e) || this.regexp_eatExtendedPatternCharacter(e);
  };
  re.regexp_eatInvalidBracedQuantifier = function(e) {
    return this.regexp_eatBracedQuantifier(e, !0) && e.raise("Nothing to repeat"), !1;
  };
  re.regexp_eatSyntaxCharacter = function(e) {
    var t = e.current();
    return O1(t) ? (e.lastIntValue = t, e.advance(), !0) : !1;
  };
  s(O1, "isSyntaxCharacter");
  re.regexp_eatPatternCharacters = function(e) {
    for (var t = e.pos, r = 0; (r = e.current()) !== -1 && !O1(r); )
      e.advance();
    return e.pos !== t;
  };
  re.regexp_eatExtendedPatternCharacter = function(e) {
    var t = e.current();
    return t !== -1 && t !== 36 && !(t >= 40 && t <= 43) && t !== 46 && t !== 63 && t !== 91 && t !== 94 && t !== 124 ? (e.advance(), !0) : !1;
  };
  re.regexp_groupSpecifier = function(e) {
    if (e.eat(
      63
      /* ? */
    )) {
      this.regexp_eatGroupName(e) || e.raise("Invalid group");
      var t = this.options.ecmaVersion >= 16, r = e.groupNames[e.lastStringValue];
      if (r)
        if (t)
          for (var i = 0, n = r; i < n.length; i += 1) {
            var u = n[i];
            u.separatedFrom(e.branchID) || e.raise("Duplicate capture group name");
          }
        else
          e.raise("Duplicate capture group name");
      t ? (r || (e.groupNames[e.lastStringValue] = [])).push(e.branchID) : e.groupNames[e.lastStringValue] = !0;
    }
  };
  re.regexp_eatGroupName = function(e) {
    if (e.lastStringValue = "", e.eat(
      60
      /* < */
    )) {
      if (this.regexp_eatRegExpIdentifierName(e) && e.eat(
        62
        /* > */
      ))
        return !0;
      e.raise("Invalid capture group name");
    }
    return !1;
  };
  re.regexp_eatRegExpIdentifierName = function(e) {
    if (e.lastStringValue = "", this.regexp_eatRegExpIdentifierStart(e)) {
      for (e.lastStringValue += Ci(e.lastIntValue); this.regexp_eatRegExpIdentifierPart(e); )
        e.lastStringValue += Ci(e.lastIntValue);
      return !0;
    }
    return !1;
  };
  re.regexp_eatRegExpIdentifierStart = function(e) {
    var t = e.pos, r = this.options.ecmaVersion >= 11, i = e.current(r);
    return e.advance(r), i === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, r) && (i = e.lastIntValue), nI(i) ? (e.lastIntValue = i, !0) :
    (e.pos = t, !1);
  };
  s(nI, "isRegExpIdentifierStart");
  re.regexp_eatRegExpIdentifierPart = function(e) {
    var t = e.pos, r = this.options.ecmaVersion >= 11, i = e.current(r);
    return e.advance(r), i === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, r) && (i = e.lastIntValue), sI(i) ? (e.lastIntValue = i, !0) :
    (e.pos = t, !1);
  };
  s(sI, "isRegExpIdentifierPart");
  re.regexp_eatAtomEscape = function(e) {
    return this.regexp_eatBackReference(e) || this.regexp_eatCharacterClassEscape(e) || this.regexp_eatCharacterEscape(e) || e.switchN && this.
    regexp_eatKGroupName(e) ? !0 : (e.switchU && (e.current() === 99 && e.raise("Invalid unicode escape"), e.raise("Invalid escape")), !1);
  };
  re.regexp_eatBackReference = function(e) {
    var t = e.pos;
    if (this.regexp_eatDecimalEscape(e)) {
      var r = e.lastIntValue;
      if (e.switchU)
        return r > e.maxBackReference && (e.maxBackReference = r), !0;
      if (r <= e.numCapturingParens)
        return !0;
      e.pos = t;
    }
    return !1;
  };
  re.regexp_eatKGroupName = function(e) {
    if (e.eat(
      107
      /* k */
    )) {
      if (this.regexp_eatGroupName(e))
        return e.backReferenceNames.push(e.lastStringValue), !0;
      e.raise("Invalid named reference");
    }
    return !1;
  };
  re.regexp_eatCharacterEscape = function(e) {
    return this.regexp_eatControlEscape(e) || this.regexp_eatCControlLetter(e) || this.regexp_eatZero(e) || this.regexp_eatHexEscapeSequence(
    e) || this.regexp_eatRegExpUnicodeEscapeSequence(e, !1) || !e.switchU && this.regexp_eatLegacyOctalEscapeSequence(e) || this.regexp_eatIdentityEscape(
    e);
  };
  re.regexp_eatCControlLetter = function(e) {
    var t = e.pos;
    if (e.eat(
      99
      /* c */
    )) {
      if (this.regexp_eatControlLetter(e))
        return !0;
      e.pos = t;
    }
    return !1;
  };
  re.regexp_eatZero = function(e) {
    return e.current() === 48 && !Na(e.lookahead()) ? (e.lastIntValue = 0, e.advance(), !0) : !1;
  };
  re.regexp_eatControlEscape = function(e) {
    var t = e.current();
    return t === 116 ? (e.lastIntValue = 9, e.advance(), !0) : t === 110 ? (e.lastIntValue = 10, e.advance(), !0) : t === 118 ? (e.lastIntValue =
    11, e.advance(), !0) : t === 102 ? (e.lastIntValue = 12, e.advance(), !0) : t === 114 ? (e.lastIntValue = 13, e.advance(), !0) : !1;
  };
  re.regexp_eatControlLetter = function(e) {
    var t = e.current();
    return R1(t) ? (e.lastIntValue = t % 32, e.advance(), !0) : !1;
  };
  s(R1, "isControlLetter");
  re.regexp_eatRegExpUnicodeEscapeSequence = function(e, t) {
    t === void 0 && (t = !1);
    var r = e.pos, i = t || e.switchU;
    if (e.eat(
      117
      /* u */
    )) {
      if (this.regexp_eatFixedHexDigits(e, 4)) {
        var n = e.lastIntValue;
        if (i && n >= 55296 && n <= 56319) {
          var u = e.pos;
          if (e.eat(
            92
            /* \ */
          ) && e.eat(
            117
            /* u */
          ) && this.regexp_eatFixedHexDigits(e, 4)) {
            var a = e.lastIntValue;
            if (a >= 56320 && a <= 57343)
              return e.lastIntValue = (n - 55296) * 1024 + (a - 56320) + 65536, !0;
          }
          e.pos = u, e.lastIntValue = n;
        }
        return !0;
      }
      if (i && e.eat(
        123
        /* { */
      ) && this.regexp_eatHexDigits(e) && e.eat(
        125
        /* } */
      ) && uI(e.lastIntValue))
        return !0;
      i && e.raise("Invalid unicode escape"), e.pos = r;
    }
    return !1;
  };
  s(uI, "isValidUnicode");
  re.regexp_eatIdentityEscape = function(e) {
    if (e.switchU)
      return this.regexp_eatSyntaxCharacter(e) ? !0 : e.eat(
        47
        /* / */
      ) ? (e.lastIntValue = 47, !0) : !1;
    var t = e.current();
    return t !== 99 && (!e.switchN || t !== 107) ? (e.lastIntValue = t, e.advance(), !0) : !1;
  };
  re.regexp_eatDecimalEscape = function(e) {
    e.lastIntValue = 0;
    var t = e.current();
    if (t >= 49 && t <= 57) {
      do
        e.lastIntValue = 10 * e.lastIntValue + (t - 48), e.advance();
      while ((t = e.current()) >= 48 && t <= 57);
      return !0;
    }
    return !1;
  };
  N1 = 0, Yr = 1, Xt = 2;
  re.regexp_eatCharacterClassEscape = function(e) {
    var t = e.current();
    if (aI(t))
      return e.lastIntValue = -1, e.advance(), Yr;
    var r = !1;
    if (e.switchU && this.options.ecmaVersion >= 9 && ((r = t === 80) || t === 112)) {
      e.lastIntValue = -1, e.advance();
      var i;
      if (e.eat(
        123
        /* { */
      ) && (i = this.regexp_eatUnicodePropertyValueExpression(e)) && e.eat(
        125
        /* } */
      ))
        return r && i === Xt && e.raise("Invalid property name"), i;
      e.raise("Invalid property name");
    }
    return N1;
  };
  s(aI, "isCharacterClassEscape");
  re.regexp_eatUnicodePropertyValueExpression = function(e) {
    var t = e.pos;
    if (this.regexp_eatUnicodePropertyName(e) && e.eat(
      61
      /* = */
    )) {
      var r = e.lastStringValue;
      if (this.regexp_eatUnicodePropertyValue(e)) {
        var i = e.lastStringValue;
        return this.regexp_validateUnicodePropertyNameAndValue(e, r, i), Yr;
      }
    }
    if (e.pos = t, this.regexp_eatLoneUnicodePropertyNameOrValue(e)) {
      var n = e.lastStringValue;
      return this.regexp_validateUnicodePropertyNameOrValue(e, n);
    }
    return N1;
  };
  re.regexp_validateUnicodePropertyNameAndValue = function(e, t, r) {
    Ns(e.unicodeProperties.nonBinary, t) || e.raise("Invalid property name"), e.unicodeProperties.nonBinary[t].test(r) || e.raise("Invalid p\
roperty value");
  };
  re.regexp_validateUnicodePropertyNameOrValue = function(e, t) {
    if (e.unicodeProperties.binary.test(t))
      return Yr;
    if (e.switchV && e.unicodeProperties.binaryOfStrings.test(t))
      return Xt;
    e.raise("Invalid property name");
  };
  re.regexp_eatUnicodePropertyName = function(e) {
    var t = 0;
    for (e.lastStringValue = ""; L1(t = e.current()); )
      e.lastStringValue += Ci(t), e.advance();
    return e.lastStringValue !== "";
  };
  s(L1, "isUnicodePropertyNameCharacter");
  re.regexp_eatUnicodePropertyValue = function(e) {
    var t = 0;
    for (e.lastStringValue = ""; oI(t = e.current()); )
      e.lastStringValue += Ci(t), e.advance();
    return e.lastStringValue !== "";
  };
  s(oI, "isUnicodePropertyValueCharacter");
  re.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
    return this.regexp_eatUnicodePropertyValue(e);
  };
  re.regexp_eatCharacterClass = function(e) {
    if (e.eat(
      91
      /* [ */
    )) {
      var t = e.eat(
        94
        /* ^ */
      ), r = this.regexp_classContents(e);
      return e.eat(
        93
        /* ] */
      ) || e.raise("Unterminated character class"), t && r === Xt && e.raise("Negated character class may contain strings"), !0;
    }
    return !1;
  };
  re.regexp_classContents = function(e) {
    return e.current() === 93 ? Yr : e.switchV ? this.regexp_classSetExpression(e) : (this.regexp_nonEmptyClassRanges(e), Yr);
  };
  re.regexp_nonEmptyClassRanges = function(e) {
    for (; this.regexp_eatClassAtom(e); ) {
      var t = e.lastIntValue;
      if (e.eat(
        45
        /* - */
      ) && this.regexp_eatClassAtom(e)) {
        var r = e.lastIntValue;
        e.switchU && (t === -1 || r === -1) && e.raise("Invalid character class"), t !== -1 && r !== -1 && t > r && e.raise("Range out of or\
der in character class");
      }
    }
  };
  re.regexp_eatClassAtom = function(e) {
    var t = e.pos;
    if (e.eat(
      92
      /* \ */
    )) {
      if (this.regexp_eatClassEscape(e))
        return !0;
      if (e.switchU) {
        var r = e.current();
        (r === 99 || q1(r)) && e.raise("Invalid class escape"), e.raise("Invalid escape");
      }
      e.pos = t;
    }
    var i = e.current();
    return i !== 93 ? (e.lastIntValue = i, e.advance(), !0) : !1;
  };
  re.regexp_eatClassEscape = function(e) {
    var t = e.pos;
    if (e.eat(
      98
      /* b */
    ))
      return e.lastIntValue = 8, !0;
    if (e.switchU && e.eat(
      45
      /* - */
    ))
      return e.lastIntValue = 45, !0;
    if (!e.switchU && e.eat(
      99
      /* c */
    )) {
      if (this.regexp_eatClassControlLetter(e))
        return !0;
      e.pos = t;
    }
    return this.regexp_eatCharacterClassEscape(e) || this.regexp_eatCharacterEscape(e);
  };
  re.regexp_classSetExpression = function(e) {
    var t = Yr, r;
    if (!this.regexp_eatClassSetRange(e)) if (r = this.regexp_eatClassSetOperand(e)) {
      r === Xt && (t = Xt);
      for (var i = e.pos; e.eatChars(
        [38, 38]
        /* && */
      ); ) {
        if (e.current() !== 38 && (r = this.regexp_eatClassSetOperand(e))) {
          r !== Xt && (t = Yr);
          continue;
        }
        e.raise("Invalid character in character class");
      }
      if (i !== e.pos)
        return t;
      for (; e.eatChars(
        [45, 45]
        /* -- */
      ); )
        this.regexp_eatClassSetOperand(e) || e.raise("Invalid character in character class");
      if (i !== e.pos)
        return t;
    } else
      e.raise("Invalid character in character class");
    for (; ; )
      if (!this.regexp_eatClassSetRange(e)) {
        if (r = this.regexp_eatClassSetOperand(e), !r)
          return t;
        r === Xt && (t = Xt);
      }
  };
  re.regexp_eatClassSetRange = function(e) {
    var t = e.pos;
    if (this.regexp_eatClassSetCharacter(e)) {
      var r = e.lastIntValue;
      if (e.eat(
        45
        /* - */
      ) && this.regexp_eatClassSetCharacter(e)) {
        var i = e.lastIntValue;
        return r !== -1 && i !== -1 && r > i && e.raise("Range out of order in character class"), !0;
      }
      e.pos = t;
    }
    return !1;
  };
  re.regexp_eatClassSetOperand = function(e) {
    return this.regexp_eatClassSetCharacter(e) ? Yr : this.regexp_eatClassStringDisjunction(e) || this.regexp_eatNestedClass(e);
  };
  re.regexp_eatNestedClass = function(e) {
    var t = e.pos;
    if (e.eat(
      91
      /* [ */
    )) {
      var r = e.eat(
        94
        /* ^ */
      ), i = this.regexp_classContents(e);
      if (e.eat(
        93
        /* ] */
      ))
        return r && i === Xt && e.raise("Negated character class may contain strings"), i;
      e.pos = t;
    }
    if (e.eat(
      92
      /* \ */
    )) {
      var n = this.regexp_eatCharacterClassEscape(e);
      if (n)
        return n;
      e.pos = t;
    }
    return null;
  };
  re.regexp_eatClassStringDisjunction = function(e) {
    var t = e.pos;
    if (e.eatChars(
      [92, 113]
      /* \q */
    )) {
      if (e.eat(
        123
        /* { */
      )) {
        var r = this.regexp_classStringDisjunctionContents(e);
        if (e.eat(
          125
          /* } */
        ))
          return r;
      } else
        e.raise("Invalid escape");
      e.pos = t;
    }
    return null;
  };
  re.regexp_classStringDisjunctionContents = function(e) {
    for (var t = this.regexp_classString(e); e.eat(
      124
      /* | */
    ); )
      this.regexp_classString(e) === Xt && (t = Xt);
    return t;
  };
  re.regexp_classString = function(e) {
    for (var t = 0; this.regexp_eatClassSetCharacter(e); )
      t++;
    return t === 1 ? Yr : Xt;
  };
  re.regexp_eatClassSetCharacter = function(e) {
    var t = e.pos;
    if (e.eat(
      92
      /* \ */
    ))
      return this.regexp_eatCharacterEscape(e) || this.regexp_eatClassSetReservedPunctuator(e) ? !0 : e.eat(
        98
        /* b */
      ) ? (e.lastIntValue = 8, !0) : (e.pos = t, !1);
    var r = e.current();
    return r < 0 || r === e.lookahead() && lI(r) || cI(r) ? !1 : (e.advance(), e.lastIntValue = r, !0);
  };
  s(lI, "isClassSetReservedDoublePunctuatorCharacter");
  s(cI, "isClassSetSyntaxCharacter");
  re.regexp_eatClassSetReservedPunctuator = function(e) {
    var t = e.current();
    return hI(t) ? (e.lastIntValue = t, e.advance(), !0) : !1;
  };
  s(hI, "isClassSetReservedPunctuator");
  re.regexp_eatClassControlLetter = function(e) {
    var t = e.current();
    return Na(t) || t === 95 ? (e.lastIntValue = t % 32, e.advance(), !0) : !1;
  };
  re.regexp_eatHexEscapeSequence = function(e) {
    var t = e.pos;
    if (e.eat(
      120
      /* x */
    )) {
      if (this.regexp_eatFixedHexDigits(e, 2))
        return !0;
      e.switchU && e.raise("Invalid escape"), e.pos = t;
    }
    return !1;
  };
  re.regexp_eatDecimalDigits = function(e) {
    var t = e.pos, r = 0;
    for (e.lastIntValue = 0; Na(r = e.current()); )
      e.lastIntValue = 10 * e.lastIntValue + (r - 48), e.advance();
    return e.pos !== t;
  };
  s(Na, "isDecimalDigit");
  re.regexp_eatHexDigits = function(e) {
    var t = e.pos, r = 0;
    for (e.lastIntValue = 0; M1(r = e.current()); )
      e.lastIntValue = 16 * e.lastIntValue + j1(r), e.advance();
    return e.pos !== t;
  };
  s(M1, "isHexDigit");
  s(j1, "hexToInt");
  re.regexp_eatLegacyOctalEscapeSequence = function(e) {
    if (this.regexp_eatOctalDigit(e)) {
      var t = e.lastIntValue;
      if (this.regexp_eatOctalDigit(e)) {
        var r = e.lastIntValue;
        t <= 3 && this.regexp_eatOctalDigit(e) ? e.lastIntValue = t * 64 + r * 8 + e.lastIntValue : e.lastIntValue = t * 8 + r;
      } else
        e.lastIntValue = t;
      return !0;
    }
    return !1;
  };
  re.regexp_eatOctalDigit = function(e) {
    var t = e.current();
    return q1(t) ? (e.lastIntValue = t - 48, e.advance(), !0) : (e.lastIntValue = 0, !1);
  };
  s(q1, "isOctalDigit");
  re.regexp_eatFixedHexDigits = function(e, t) {
    var r = e.pos;
    e.lastIntValue = 0;
    for (var i = 0; i < t; ++i) {
      var n = e.current();
      if (!M1(n))
        return e.pos = r, !1;
      e.lastIntValue = 16 * e.lastIntValue + j1(n), e.advance();
    }
    return !0;
  };
  bp = /* @__PURE__ */ s(function(t) {
    this.type = t.type, this.value = t.value, this.start = t.start, this.end = t.end, t.options.locations && (this.loc = new Ia(t, t.startLoc,
    t.endLoc)), t.options.ranges && (this.range = [t.start, t.end]);
  }, "Token"), be = et.prototype;
  be.next = function(e) {
    !e && this.type.keyword && this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword " + this.type.keyword), this.
    options.onToken && this.options.onToken(new bp(this)), this.lastTokEnd = this.end, this.lastTokStart = this.start, this.lastTokEndLoc = this.
    endLoc, this.lastTokStartLoc = this.startLoc, this.nextToken();
  };
  be.getToken = function() {
    return this.next(), new bp(this);
  };
  typeof Symbol < "u" && (be[Symbol.iterator] = function() {
    var e = this;
    return {
      next: /* @__PURE__ */ s(function() {
        var t = e.getToken();
        return {
          done: t.type === F.eof,
          value: t
        };
      }, "next")
    };
  });
  be.nextToken = function() {
    var e = this.curContext();
    if ((!e || !e.preserveSpace) && this.skipSpace(), this.start = this.pos, this.options.locations && (this.startLoc = this.curPosition()),
    this.pos >= this.input.length)
      return this.finishToken(F.eof);
    if (e.override)
      return e.override(this);
    this.readToken(this.fullCharCodeAtPos());
  };
  be.readToken = function(e) {
    return Xr(e, this.options.ecmaVersion >= 6) || e === 92 ? this.readWord() : this.getTokenFromCode(e);
  };
  be.fullCharCodeAtPos = function() {
    var e = this.input.charCodeAt(this.pos);
    if (e <= 55295 || e >= 56320)
      return e;
    var t = this.input.charCodeAt(this.pos + 1);
    return t <= 56319 || t >= 57344 ? e : (e << 10) + t - 56613888;
  };
  be.skipBlockComment = function() {
    var e = this.options.onComment && this.curPosition(), t = this.pos, r = this.input.indexOf("*/", this.pos += 2);
    if (r === -1 && this.raise(this.pos - 2, "Unterminated comment"), this.pos = r + 2, this.options.locations)
      for (var i = void 0, n = t; (i = l1(this.input, n, this.pos)) > -1; )
        ++this.curLine, n = this.lineStart = i;
    this.options.onComment && this.options.onComment(
      !0,
      this.input.slice(t + 2, r),
      t,
      this.pos,
      e,
      this.curPosition()
    );
  };
  be.skipLineComment = function(e) {
    for (var t = this.pos, r = this.options.onComment && this.curPosition(), i = this.input.charCodeAt(this.pos += e); this.pos < this.input.
    length && !On(i); )
      i = this.input.charCodeAt(++this.pos);
    this.options.onComment && this.options.onComment(
      !1,
      this.input.slice(t + e, this.pos),
      t,
      this.pos,
      r,
      this.curPosition()
    );
  };
  be.skipSpace = function() {
    e: for (; this.pos < this.input.length; ) {
      var e = this.input.charCodeAt(this.pos);
      switch (e) {
        case 32:
        case 160:
          ++this.pos;
          break;
        case 13:
          this.input.charCodeAt(this.pos + 1) === 10 && ++this.pos;
        case 10:
        case 8232:
        case 8233:
          ++this.pos, this.options.locations && (++this.curLine, this.lineStart = this.pos);
          break;
        case 47:
          switch (this.input.charCodeAt(this.pos + 1)) {
            case 42:
              this.skipBlockComment();
              break;
            case 47:
              this.skipLineComment(2);
              break;
            default:
              break e;
          }
          break;
        default:
          if (e > 8 && e < 14 || e >= 5760 && c1.test(String.fromCharCode(e)))
            ++this.pos;
          else
            break e;
      }
    }
  };
  be.finishToken = function(e, t) {
    this.end = this.pos, this.options.locations && (this.endLoc = this.curPosition());
    var r = this.type;
    this.type = e, this.value = t, this.updateContext(r);
  };
  be.readToken_dot = function() {
    var e = this.input.charCodeAt(this.pos + 1);
    if (e >= 48 && e <= 57)
      return this.readNumber(!0);
    var t = this.input.charCodeAt(this.pos + 2);
    return this.options.ecmaVersion >= 6 && e === 46 && t === 46 ? (this.pos += 3, this.finishToken(F.ellipsis)) : (++this.pos, this.finishToken(
    F.dot));
  };
  be.readToken_slash = function() {
    var e = this.input.charCodeAt(this.pos + 1);
    return this.exprAllowed ? (++this.pos, this.readRegexp()) : e === 61 ? this.finishOp(F.assign, 2) : this.finishOp(F.slash, 1);
  };
  be.readToken_mult_modulo_exp = function(e) {
    var t = this.input.charCodeAt(this.pos + 1), r = 1, i = e === 42 ? F.star : F.modulo;
    return this.options.ecmaVersion >= 7 && e === 42 && t === 42 && (++r, i = F.starstar, t = this.input.charCodeAt(this.pos + 2)), t === 61 ?
    this.finishOp(F.assign, r + 1) : this.finishOp(i, r);
  };
  be.readToken_pipe_amp = function(e) {
    var t = this.input.charCodeAt(this.pos + 1);
    if (t === e) {
      if (this.options.ecmaVersion >= 12) {
        var r = this.input.charCodeAt(this.pos + 2);
        if (r === 61)
          return this.finishOp(F.assign, 3);
      }
      return this.finishOp(e === 124 ? F.logicalOR : F.logicalAND, 2);
    }
    return t === 61 ? this.finishOp(F.assign, 2) : this.finishOp(e === 124 ? F.bitwiseOR : F.bitwiseAND, 1);
  };
  be.readToken_caret = function() {
    var e = this.input.charCodeAt(this.pos + 1);
    return e === 61 ? this.finishOp(F.assign, 2) : this.finishOp(F.bitwiseXOR, 1);
  };
  be.readToken_plus_min = function(e) {
    var t = this.input.charCodeAt(this.pos + 1);
    return t === e ? t === 45 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 62 && (this.lastTokEnd === 0 || Yt.test(this.input.
    slice(this.lastTokEnd, this.pos))) ? (this.skipLineComment(3), this.skipSpace(), this.nextToken()) : this.finishOp(F.incDec, 2) : t === 61 ?
    this.finishOp(F.assign, 2) : this.finishOp(F.plusMin, 1);
  };
  be.readToken_lt_gt = function(e) {
    var t = this.input.charCodeAt(this.pos + 1), r = 1;
    return t === e ? (r = e === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2, this.input.charCodeAt(this.pos + r) === 61 ? this.
    finishOp(F.assign, r + 1) : this.finishOp(F.bitShift, r)) : t === 33 && e === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) ===
    45 && this.input.charCodeAt(this.pos + 3) === 45 ? (this.skipLineComment(4), this.skipSpace(), this.nextToken()) : (t === 61 && (r = 2),
    this.finishOp(F.relational, r));
  };
  be.readToken_eq_excl = function(e) {
    var t = this.input.charCodeAt(this.pos + 1);
    return t === 61 ? this.finishOp(F.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) : e === 61 && t === 62 && this.options.ecmaVersion >=
    6 ? (this.pos += 2, this.finishToken(F.arrow)) : this.finishOp(e === 61 ? F.eq : F.prefix, 1);
  };
  be.readToken_question = function() {
    var e = this.options.ecmaVersion;
    if (e >= 11) {
      var t = this.input.charCodeAt(this.pos + 1);
      if (t === 46) {
        var r = this.input.charCodeAt(this.pos + 2);
        if (r < 48 || r > 57)
          return this.finishOp(F.questionDot, 2);
      }
      if (t === 63) {
        if (e >= 12) {
          var i = this.input.charCodeAt(this.pos + 2);
          if (i === 61)
            return this.finishOp(F.assign, 3);
        }
        return this.finishOp(F.coalesce, 2);
      }
    }
    return this.finishOp(F.question, 1);
  };
  be.readToken_numberSign = function() {
    var e = this.options.ecmaVersion, t = 35;
    if (e >= 13 && (++this.pos, t = this.fullCharCodeAtPos(), Xr(t, !0) || t === 92))
      return this.finishToken(F.privateId, this.readWord1());
    this.raise(this.pos, "Unexpected character '" + Ci(t) + "'");
  };
  be.getTokenFromCode = function(e) {
    switch (e) {
      // The interpretation of a dot depends on whether it is followed
      // by a digit or another two dots.
      case 46:
        return this.readToken_dot();
      // Punctuation tokens.
      case 40:
        return ++this.pos, this.finishToken(F.parenL);
      case 41:
        return ++this.pos, this.finishToken(F.parenR);
      case 59:
        return ++this.pos, this.finishToken(F.semi);
      case 44:
        return ++this.pos, this.finishToken(F.comma);
      case 91:
        return ++this.pos, this.finishToken(F.bracketL);
      case 93:
        return ++this.pos, this.finishToken(F.bracketR);
      case 123:
        return ++this.pos, this.finishToken(F.braceL);
      case 125:
        return ++this.pos, this.finishToken(F.braceR);
      case 58:
        return ++this.pos, this.finishToken(F.colon);
      case 96:
        if (this.options.ecmaVersion < 6)
          break;
        return ++this.pos, this.finishToken(F.backQuote);
      case 48:
        var t = this.input.charCodeAt(this.pos + 1);
        if (t === 120 || t === 88)
          return this.readRadixNumber(16);
        if (this.options.ecmaVersion >= 6) {
          if (t === 111 || t === 79)
            return this.readRadixNumber(8);
          if (t === 98 || t === 66)
            return this.readRadixNumber(2);
        }
      // Anything else beginning with a digit is an integer, octal
      // number, or float.
      case 49:
      case 50:
      case 51:
      case 52:
      case 53:
      case 54:
      case 55:
      case 56:
      case 57:
        return this.readNumber(!1);
      // Quotes produce strings.
      case 34:
      case 39:
        return this.readString(e);
      // Operators are parsed inline in tiny state machines. '=' (61) is
      // often referred to. `finishOp` simply skips the amount of
      // characters it is given as second argument, and returns a token
      // of the type given by its first argument.
      case 47:
        return this.readToken_slash();
      case 37:
      case 42:
        return this.readToken_mult_modulo_exp(e);
      case 124:
      case 38:
        return this.readToken_pipe_amp(e);
      case 94:
        return this.readToken_caret();
      case 43:
      case 45:
        return this.readToken_plus_min(e);
      case 60:
      case 62:
        return this.readToken_lt_gt(e);
      case 61:
      case 33:
        return this.readToken_eq_excl(e);
      case 63:
        return this.readToken_question();
      case 126:
        return this.finishOp(F.prefix, 1);
      case 35:
        return this.readToken_numberSign();
    }
    this.raise(this.pos, "Unexpected character '" + Ci(e) + "'");
  };
  be.finishOp = function(e, t) {
    var r = this.input.slice(this.pos, this.pos + t);
    return this.pos += t, this.finishToken(e, r);
  };
  be.readRegexp = function() {
    for (var e, t, r = this.pos; ; ) {
      this.pos >= this.input.length && this.raise(r, "Unterminated regular expression");
      var i = this.input.charAt(this.pos);
      if (Yt.test(i) && this.raise(r, "Unterminated regular expression"), e)
        e = !1;
      else {
        if (i === "[")
          t = !0;
        else if (i === "]" && t)
          t = !1;
        else if (i === "/" && !t)
          break;
        e = i === "\\";
      }
      ++this.pos;
    }
    var n = this.input.slice(r, this.pos);
    ++this.pos;
    var u = this.pos, a = this.readWord1();
    this.containsEsc && this.unexpected(u);
    var o = this.regexpState || (this.regexpState = new Pr(this));
    o.reset(r, n, a), this.validateRegExpFlags(o), this.validateRegExpPattern(o);
    var l = null;
    try {
      l = new RegExp(n, a);
    } catch {
    }
    return this.finishToken(F.regexp, { pattern: n, flags: a, value: l });
  };
  be.readInt = function(e, t, r) {
    for (var i = this.options.ecmaVersion >= 12 && t === void 0, n = r && this.input.charCodeAt(this.pos) === 48, u = this.pos, a = 0, o = 0,
    l = 0, c = t ?? 1 / 0; l < c; ++l, ++this.pos) {
      var h = this.input.charCodeAt(this.pos), p = void 0;
      if (i && h === 95) {
        n && this.raiseRecoverable(this.pos, "Numeric separator is not allowed in legacy octal numeric literals"), o === 95 && this.raiseRecoverable(
        this.pos, "Numeric separator must be exactly one underscore"), l === 0 && this.raiseRecoverable(this.pos, "Numeric separator is not \
allowed at the first of digits"), o = h;
        continue;
      }
      if (h >= 97 ? p = h - 97 + 10 : h >= 65 ? p = h - 65 + 10 : h >= 48 && h <= 57 ? p = h - 48 : p = 1 / 0, p >= e)
        break;
      o = h, a = a * e + p;
    }
    return i && o === 95 && this.raiseRecoverable(this.pos - 1, "Numeric separator is not allowed at the last of digits"), this.pos === u ||
    t != null && this.pos - u !== t ? null : a;
  };
  s(pI, "stringToNumber");
  s($1, "stringToBigInt");
  be.readRadixNumber = function(e) {
    var t = this.pos;
    this.pos += 2;
    var r = this.readInt(e);
    return r == null && this.raise(this.start + 2, "Expected number in radix " + e), this.options.ecmaVersion >= 11 && this.input.charCodeAt(
    this.pos) === 110 ? (r = $1(this.input.slice(t, this.pos)), ++this.pos) : Xr(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifi\
er directly after number"), this.finishToken(F.num, r);
  };
  be.readNumber = function(e) {
    var t = this.pos;
    !e && this.readInt(10, void 0, !0) === null && this.raise(t, "Invalid number");
    var r = this.pos - t >= 2 && this.input.charCodeAt(t) === 48;
    r && this.strict && this.raise(t, "Invalid number");
    var i = this.input.charCodeAt(this.pos);
    if (!r && !e && this.options.ecmaVersion >= 11 && i === 110) {
      var n = $1(this.input.slice(t, this.pos));
      return ++this.pos, Xr(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(F.num, n);
    }
    r && /[89]/.test(this.input.slice(t, this.pos)) && (r = !1), i === 46 && !r && (++this.pos, this.readInt(10), i = this.input.charCodeAt(
    this.pos)), (i === 69 || i === 101) && !r && (i = this.input.charCodeAt(++this.pos), (i === 43 || i === 45) && ++this.pos, this.readInt(
    10) === null && this.raise(t, "Invalid number")), Xr(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number");
    var u = pI(this.input.slice(t, this.pos), r);
    return this.finishToken(F.num, u);
  };
  be.readCodePoint = function() {
    var e = this.input.charCodeAt(this.pos), t;
    if (e === 123) {
      this.options.ecmaVersion < 6 && this.unexpected();
      var r = ++this.pos;
      t = this.readHexChar(this.input.indexOf("}", this.pos) - this.pos), ++this.pos, t > 1114111 && this.invalidStringToken(r, "Code point \
out of bounds");
    } else
      t = this.readHexChar(4);
    return t;
  };
  be.readString = function(e) {
    for (var t = "", r = ++this.pos; ; ) {
      this.pos >= this.input.length && this.raise(this.start, "Unterminated string constant");
      var i = this.input.charCodeAt(this.pos);
      if (i === e)
        break;
      i === 92 ? (t += this.input.slice(r, this.pos), t += this.readEscapedChar(!1), r = this.pos) : i === 8232 || i === 8233 ? (this.options.
      ecmaVersion < 10 && this.raise(this.start, "Unterminated string constant"), ++this.pos, this.options.locations && (this.curLine++, this.
      lineStart = this.pos)) : (On(i) && this.raise(this.start, "Unterminated string constant"), ++this.pos);
    }
    return t += this.input.slice(r, this.pos++), this.finishToken(F.string, t);
  };
  V1 = {};
  be.tryReadTemplateToken = function() {
    this.inTemplateElement = !0;
    try {
      this.readTmplToken();
    } catch (e) {
      if (e === V1)
        this.readInvalidTemplateToken();
      else
        throw e;
    }
    this.inTemplateElement = !1;
  };
  be.invalidStringToken = function(e, t) {
    if (this.inTemplateElement && this.options.ecmaVersion >= 9)
      throw V1;
    this.raise(e, t);
  };
  be.readTmplToken = function() {
    for (var e = "", t = this.pos; ; ) {
      this.pos >= this.input.length && this.raise(this.start, "Unterminated template");
      var r = this.input.charCodeAt(this.pos);
      if (r === 96 || r === 36 && this.input.charCodeAt(this.pos + 1) === 123)
        return this.pos === this.start && (this.type === F.template || this.type === F.invalidTemplate) ? r === 36 ? (this.pos += 2, this.finishToken(
        F.dollarBraceL)) : (++this.pos, this.finishToken(F.backQuote)) : (e += this.input.slice(t, this.pos), this.finishToken(F.template, e));
      if (r === 92)
        e += this.input.slice(t, this.pos), e += this.readEscapedChar(!0), t = this.pos;
      else if (On(r)) {
        switch (e += this.input.slice(t, this.pos), ++this.pos, r) {
          case 13:
            this.input.charCodeAt(this.pos) === 10 && ++this.pos;
          case 10:
            e += `
`;
            break;
          default:
            e += String.fromCharCode(r);
            break;
        }
        this.options.locations && (++this.curLine, this.lineStart = this.pos), t = this.pos;
      } else
        ++this.pos;
    }
  };
  be.readInvalidTemplateToken = function() {
    for (; this.pos < this.input.length; this.pos++)
      switch (this.input[this.pos]) {
        case "\\":
          ++this.pos;
          break;
        case "$":
          if (this.input[this.pos + 1] !== "{")
            break;
        // fall through
        case "`":
          return this.finishToken(F.invalidTemplate, this.input.slice(this.start, this.pos));
        case "\r":
          this.input[this.pos + 1] === `
` && ++this.pos;
        // fall through
        case `
`:
        case "\u2028":
        case "\u2029":
          ++this.curLine, this.lineStart = this.pos + 1;
          break;
      }
    this.raise(this.start, "Unterminated template");
  };
  be.readEscapedChar = function(e) {
    var t = this.input.charCodeAt(++this.pos);
    switch (++this.pos, t) {
      case 110:
        return `
`;
      // 'n' -> '\n'
      case 114:
        return "\r";
      // 'r' -> '\r'
      case 120:
        return String.fromCharCode(this.readHexChar(2));
      // 'x'
      case 117:
        return Ci(this.readCodePoint());
      // 'u'
      case 116:
        return "	";
      // 't' -> '\t'
      case 98:
        return "\b";
      // 'b' -> '\b'
      case 118:
        return "\v";
      // 'v' -> '\u000b'
      case 102:
        return "\f";
      // 'f' -> '\f'
      case 13:
        this.input.charCodeAt(this.pos) === 10 && ++this.pos;
      // '\r\n'
      case 10:
        return this.options.locations && (this.lineStart = this.pos, ++this.curLine), "";
      case 56:
      case 57:
        if (this.strict && this.invalidStringToken(
          this.pos - 1,
          "Invalid escape sequence"
        ), e) {
          var r = this.pos - 1;
          this.invalidStringToken(
            r,
            "Invalid escape sequence in template string"
          );
        }
      default:
        if (t >= 48 && t <= 55) {
          var i = this.input.substr(this.pos - 1, 3).match(/^[0-7]+/)[0], n = parseInt(i, 8);
          return n > 255 && (i = i.slice(0, -1), n = parseInt(i, 8)), this.pos += i.length - 1, t = this.input.charCodeAt(this.pos), (i !== "\
0" || t === 56 || t === 57) && (this.strict || e) && this.invalidStringToken(
            this.pos - 1 - i.length,
            e ? "Octal literal in template string" : "Octal literal in strict mode"
          ), String.fromCharCode(n);
        }
        return On(t) ? (this.options.locations && (this.lineStart = this.pos, ++this.curLine), "") : String.fromCharCode(t);
    }
  };
  be.readHexChar = function(e) {
    var t = this.pos, r = this.readInt(16, e);
    return r === null && this.invalidStringToken(t, "Bad character escape sequence"), r;
  };
  be.readWord1 = function() {
    this.containsEsc = !1;
    for (var e = "", t = !0, r = this.pos, i = this.options.ecmaVersion >= 6; this.pos < this.input.length; ) {
      var n = this.fullCharCodeAtPos();
      if (In(n, i))
        this.pos += n <= 65535 ? 1 : 2;
      else if (n === 92) {
        this.containsEsc = !0, e += this.input.slice(r, this.pos);
        var u = this.pos;
        this.input.charCodeAt(++this.pos) !== 117 && this.invalidStringToken(this.pos, "Expecting Unicode escape sequence \\uXXXX"), ++this.
        pos;
        var a = this.readCodePoint();
        (t ? Xr : In)(a, i) || this.invalidStringToken(u, "Invalid Unicode escape"), e += Ci(a), r = this.pos;
      } else
        break;
      t = !1;
    }
    return e + this.input.slice(r, this.pos);
  };
  be.readWord = function() {
    var e = this.readWord1(), t = F.name;
    return this.keywords.test(e) && (t = dp[e]), this.finishToken(t, e);
  };
  fI = "8.12.1";
  et.acorn = {
    Parser: et,
    version: fI,
    defaultOptions: hp,
    Position: Os,
    SourceLocation: Ia,
    getLineInfo: p1,
    Node: Ra,
    TokenType: Ae,
    tokTypes: F,
    keywordTypes: dp,
    TokContext: hr,
    tokContexts: qe,
    isIdentifierChar: In,
    isIdentifierStart: Xr,
    Token: bp,
    isNewLine: On,
    lineBreak: Yt,
    lineBreakG: M4,
    nonASCIIwhitespace: c1
  };
});

// ../node_modules/@storybook/docs-mdx/dist/mdx-N42X6CFJ.js
var Rb = {};
pi(Rb, {
  compile: () => Tb,
  compileSync: () => Pb,
  createProcessor: () => Qp,
  evaluate: () => bN,
  evaluateSync: () => vN,
  nodeTypes: () => Bb,
  run: () => Zp,
  runSync: () => Ob
});
function Zt(e) {
  return !e || typeof e != "object" ? "" : "position" in e || "type" in e ? z1(e.position) : "start" in e || "end" in e ? z1(e) : "line" in e ||
  "column" in e ? Lp(e) : "";
}
function Lp(e) {
  return H1(e && e.line) + ":" + H1(e && e.column);
}
function z1(e) {
  return Lp(e && e.start) + "-" + Lp(e && e.end);
}
function H1(e) {
  return e && typeof e == "number" ? e : 1;
}
function W1(e) {
  return !!(e !== null && typeof e == "object" && "href" in e && e.href && "protocol" in e && e.protocol && // @ts-expect-error: indexing is fine.
  e.auth === void 0);
}
function Cp(e, t) {
  if (e && e.includes(pr.default.sep))
    throw new Error(
      "`" + t + "` cannot be a path: did not expect `" + pr.default.sep + "`"
    );
}
function wp(e, t) {
  if (!e)
    throw new Error("`" + t + "` cannot be empty");
}
function J1(e, t) {
  if (!e)
    throw new Error("Setting `" + t + "` requires `path` to be set too");
}
function gI(e) {
  return !!(e && typeof e == "object" && "byteLength" in e && "byteOffset" in e);
}
function JE(e, t) {
  let r = bI(e) ? e : new WE(e), { format: i, ...n } = t || {};
  return {
    file: r,
    options: {
      format: i === "md" || i === "mdx" ? i : r.extname && (n.mdExtensions || EI).includes(r.extname) ? "md" : "mdx",
      ...n
    }
  };
}
function bI(e) {
  return !!(e && typeof e == "object" && "message" in e && "messages" in e);
}
function vI() {
  return {
    enter: {
      mdxFlowExpression: wI,
      mdxTextExpression: AI
    },
    exit: {
      mdxFlowExpression: G1,
      mdxFlowExpressionChunk: X1,
      mdxTextExpression: G1,
      mdxTextExpressionChunk: X1
    }
  };
}
function CI() {
  return {
    handlers: {
      mdxFlowExpression: Y1,
      mdxTextExpression: Y1
    },
    unsafe: [
      { character: "{", inConstruct: ["phrasing"] },
      { atBreak: !0, character: "{" }
    ]
  };
}
function wI(e) {
  this.enter({ type: "mdxFlowExpression", value: "" }, e), this.buffer();
}
function AI(e) {
  this.enter({ type: "mdxTextExpression", value: "" }, e), this.buffer();
}
function G1(e) {
  let t = this.resume(), r = e.estree, i = this.stack[this.stack.length - 1];
  i.type === "mdxFlowExpression" || i.type, this.exit(e), i.value = t, r && (i.data = { estree: r });
}
function X1(e) {
  this.config.enter.data.call(this, e), this.config.exit.data.call(this, e);
}
function Y1(e) {
  return "{" + (e.value || "") + "}";
}
function K1(e, t) {
  let r = String(e);
  if (typeof t != "string")
    throw new TypeError("Expected character");
  let i = 0, n = r.indexOf(t);
  for (; n !== -1; )
    i++, n = r.indexOf(t, n + t.length);
  return i;
}
function GE(e) {
  let t = typeof e == "string" ? e.charCodeAt(0) : e;
  return t >= 48 && t <= 57;
}
function SI(e) {
  let t = typeof e == "string" ? e.charCodeAt(0) : e;
  return t >= 97 && t <= 102 || t >= 65 && t <= 70 || t >= 48 && t <= 57;
}
function _I(e) {
  let t = typeof e == "string" ? e.charCodeAt(0) : e;
  return t >= 97 && t <= 122 || t >= 65 && t <= 90;
}
function Z1(e) {
  return _I(e) || GE(e);
}
function Vs(e) {
  return kI.call(eE, e) ? eE[e] : !1;
}
function TI(e, t = {}) {
  let r = typeof t.additional == "string" ? t.additional.charCodeAt(0) : t.additional, i = [], n = 0, u = -1, a = "", o, l;
  t.position && ("start" in t.position || "indent" in t.position ? (l = t.position.indent, o = t.position.start) : o = t.position);
  let c = (o ? o.line : 0) || 1, h = (o ? o.column : 0) || 1, p = m(), d;
  for (n--; ++n <= e.length; )
    if (d === 10 && (h = (l ? l[u] : 0) || 1), d = e.charCodeAt(n), d === 38) {
      let v = e.charCodeAt(n + 1);
      if (v === 9 || v === 10 || v === 12 || v === 32 || v === 38 || v === 60 || Number.isNaN(v) || r && v === r) {
        a += Ln(d), h++;
        continue;
      }
      let x = n + 1, C = x, S = x, k;
      if (v === 35) {
        S = ++C;
        let V = e.charCodeAt(S);
        V === 88 || V === 120 ? (k = "hexadecimal", S = ++C) : k = "decimal";
      } else
        k = "named";
      let j = "", w = "", A = "", T = k === "named" ? Z1 : k === "decimal" ? GE : SI;
      for (S--; ++S <= e.length; ) {
        let V = e.charCodeAt(S);
        if (!T(V))
          break;
        A += Ln(V), k === "named" && FI.includes(A) && (j = A, w = Vs(A));
      }
      let B = e.charCodeAt(S) === 59;
      if (B) {
        S++;
        let V = k === "named" ? Vs(A) : !1;
        V && (j = A, w = V);
      }
      let $ = 1 + S - x, L = "";
      if (!(!B && t.nonTerminated === !1))
        if (!A)
          k !== "named" && D(4, $);
        else if (k === "named") {
          if (B && !w)
            D(5, 1);
          else if (j !== A && (S = C + j.length, $ = 1 + S - C, B = !1), !B) {
            let V = j ? 1 : 3;
            if (t.attribute) {
              let U = e.charCodeAt(S);
              U === 61 ? (D(V, $), w = "") : Z1(U) ? w = "" : D(V, $);
            } else
              D(V, $);
          }
          L = w;
        } else {
          B || D(2, $);
          let V = Number.parseInt(
            A,
            k === "hexadecimal" ? 16 : 10
          );
          if (PI(V))
            D(7, $), L = Ln(
              65533
              /* `�` */
            );
          else if (V in Q1)
            D(6, $), L = Q1[V];
          else {
            let U = "";
            II(V) && D(6, $), V > 65535 && (V -= 65536, U += Ln(V >>> 10 | 55296), V = 56320 | V & 1023), L = U + Ln(V);
          }
        }
      if (L) {
        g(), p = m(), n = S - 1, h += S - x + 1, i.push(L);
        let V = m();
        V.offset++, t.reference && t.reference.call(
          t.referenceContext,
          L,
          { start: p, end: V },
          e.slice(x - 1, S)
        ), p = V;
      } else
        A = e.slice(x - 1, S), a += A, h += A.length, n = S - 1;
    } else
      d === 10 && (c++, u++, h = 0), Number.isNaN(d) ? g() : (a += Ln(d), h++);
  return i.join("");
  function m() {
    return {
      line: c,
      column: h,
      offset: n + ((o ? o.offset : 0) || 0)
    };
  }
  function D(v, x) {
    let C;
    t.warning && (C = m(), C.column += x, C.offset += x, t.warning.call(
      t.warningContext,
      BI[v],
      C,
      v
    ));
  }
  function g() {
    a && (i.push(a), t.text && t.text.call(t.textContext, a, {
      start: p,
      end: m()
    }), a = "");
  }
}
function PI(e) {
  return e >= 55296 && e <= 57343 || e > 1114111;
}
function II(e) {
  return e >= 1 && e <= 8 || e === 11 || e >= 13 && e <= 31 || e >= 127 && e <= 159 || e >= 64976 && e <= 65007 || (e & 65535) === 65535 || (e &
  65535) === 65534;
}
function OI(e, t) {
  if (e = e.replace(
    t.subset ? RI(t.subset) : /["&'<>`]/g,
    i
  ), t.subset || t.escapeOnly)
    return e;
  return e.replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g, r).replace(
    // eslint-disable-next-line no-control-regex, unicorn/no-hex-escape
    /[\x01-\t\v\f\x0E-\x1F\x7F\x81\x8D\x8F\x90\x9D\xA0-\uFFFF]/g,
    i
  );
  function r(n, u, a) {
    return t.format(
      (n.charCodeAt(0) - 55296) * 1024 + n.charCodeAt(1) - 56320 + 65536,
      a.charCodeAt(u + 2),
      t
    );
  }
  function i(n, u, a) {
    return t.format(
      n.charCodeAt(0),
      a.charCodeAt(u + 1),
      t
    );
  }
}
function RI(e) {
  let t = [], r = -1;
  for (; ++r < e.length; )
    t.push(e[r].replace(/[|\\{}()[\]^$+*?.]/g, "\\$&"));
  return new RegExp("(?:" + t.join("|") + ")", "g");
}
function NI(e) {
  return "&#x" + e.toString(16).toUpperCase() + ";";
}
function LI(e, t) {
  return OI(e, Object.assign({ format: NI }, t));
}
function MI() {
  return {
    canContainEols: ["mdxJsxTextElement"],
    enter: {
      mdxJsxFlowTag: r,
      mdxJsxFlowTagClosingMarker: i,
      mdxJsxFlowTagAttribute: h,
      mdxJsxFlowTagExpressionAttribute: p,
      mdxJsxFlowTagAttributeValueLiteral: e,
      mdxJsxFlowTagAttributeValueExpression: e,
      mdxJsxFlowTagSelfClosingMarker: u,
      mdxJsxTextTag: r,
      mdxJsxTextTagClosingMarker: i,
      mdxJsxTextTagAttribute: h,
      mdxJsxTextTagExpressionAttribute: p,
      mdxJsxTextTagAttributeValueLiteral: e,
      mdxJsxTextTagAttributeValueExpression: e,
      mdxJsxTextTagSelfClosingMarker: u
    },
    exit: {
      mdxJsxFlowTagClosingMarker: a,
      mdxJsxFlowTagNamePrimary: o,
      mdxJsxFlowTagNameMember: l,
      mdxJsxFlowTagNameLocal: c,
      mdxJsxFlowTagExpressionAttribute: d,
      mdxJsxFlowTagExpressionAttributeValue: t,
      mdxJsxFlowTagAttributeNamePrimary: m,
      mdxJsxFlowTagAttributeNameLocal: D,
      mdxJsxFlowTagAttributeValueLiteral: g,
      mdxJsxFlowTagAttributeValueLiteralValue: t,
      mdxJsxFlowTagAttributeValueExpression: v,
      mdxJsxFlowTagAttributeValueExpressionValue: t,
      mdxJsxFlowTagSelfClosingMarker: x,
      mdxJsxFlowTag: C,
      mdxJsxTextTagClosingMarker: a,
      mdxJsxTextTagNamePrimary: o,
      mdxJsxTextTagNameMember: l,
      mdxJsxTextTagNameLocal: c,
      mdxJsxTextTagExpressionAttribute: d,
      mdxJsxTextTagExpressionAttributeValue: t,
      mdxJsxTextTagAttributeNamePrimary: m,
      mdxJsxTextTagAttributeNameLocal: D,
      mdxJsxTextTagAttributeValueLiteral: g,
      mdxJsxTextTagAttributeValueLiteralValue: t,
      mdxJsxTextTagAttributeValueExpression: v,
      mdxJsxTextTagAttributeValueExpressionValue: t,
      mdxJsxTextTagSelfClosingMarker: x,
      mdxJsxTextTag: C
    }
  };
  function e() {
    this.buffer();
  }
  function t(w) {
    this.config.enter.data.call(this, w), this.config.exit.data.call(this, w);
  }
  function r(w) {
    let A = {
      name: void 0,
      attributes: [],
      close: !1,
      selfClosing: !1,
      start: w.start,
      end: w.end
    };
    this.data.mdxJsxTagStack || (this.data.mdxJsxTagStack = []), this.data.mdxJsxTag = A, this.buffer();
  }
  function i(w) {
    let A = this.data.mdxJsxTagStack;
    if (A.length === 0)
      throw new Se(
        "Unexpected closing slash `/` in tag, expected an open tag first",
        { start: w.start, end: w.end },
        "mdast-util-mdx-jsx:unexpected-closing-slash"
      );
  }
  function n(w) {
    let A = this.data.mdxJsxTag;
    if (A.close)
      throw new Se(
        "Unexpected attribute in closing tag, expected the end of the tag",
        { start: w.start, end: w.end },
        "mdast-util-mdx-jsx:unexpected-attribute"
      );
  }
  function u(w) {
    let A = this.data.mdxJsxTag;
    if (A.close)
      throw new Se(
        "Unexpected self-closing slash `/` in closing tag, expected the end of the tag",
        { start: w.start, end: w.end },
        "mdast-util-mdx-jsx:unexpected-self-closing-slash"
      );
  }
  function a() {
    let w = this.data.mdxJsxTag;
    w.close = !0;
  }
  function o(w) {
    let A = this.data.mdxJsxTag;
    A.name = this.sliceSerialize(w);
  }
  function l(w) {
    let A = this.data.mdxJsxTag;
    A.name += "." + this.sliceSerialize(w);
  }
  function c(w) {
    let A = this.data.mdxJsxTag;
    A.name += ":" + this.sliceSerialize(w);
  }
  function h(w) {
    let A = this.data.mdxJsxTag;
    n.call(this, w), A.attributes.push({ type: "mdxJsxAttribute", name: "", value: null });
  }
  function p(w) {
    let A = this.data.mdxJsxTag;
    n.call(this, w), A.attributes.push({ type: "mdxJsxExpressionAttribute", value: "" }), this.buffer();
  }
  function d(w) {
    let A = this.data.mdxJsxTag;
    let T = A.attributes[A.attributes.length - 1];
    T.type;
    let B = w.estree;
    T.value = this.resume(), B && (T.data = { estree: B });
  }
  function m(w) {
    let A = this.data.mdxJsxTag;
    let T = A.attributes[A.attributes.length - 1];
    T.type, T.name = this.sliceSerialize(w);
  }
  function D(w) {
    let A = this.data.mdxJsxTag;
    let T = A.attributes[A.attributes.length - 1];
    T.type, T.name += ":" + this.sliceSerialize(w);
  }
  function g() {
    let w = this.data.mdxJsxTag;
    w.attributes[w.attributes.length - 1].value = TI(
      this.resume(),
      { nonTerminated: !1 }
    );
  }
  function v(w) {
    let A = this.data.mdxJsxTag;
    let T = A.attributes[A.attributes.length - 1];
    T.type;
    let B = { type: "mdxJsxAttributeValueExpression", value: this.resume() }, $ = w.estree;
    $ && (B.data = { estree: $ }), T.value = B;
  }
  function x() {
    let w = this.data.mdxJsxTag;
    w.selfClosing = !0;
  }
  function C(w) {
    let A = this.data.mdxJsxTag;
    let T = this.data.mdxJsxTagStack;
    let B = T[T.length - 1];
    if (A.close && B.name !== A.name)
      throw new Se(
        "Unexpected closing tag `" + j(A) + "`, expected corresponding closing tag for `" + j(B) + "` (" + Zt(B) + ")",
        { start: w.start, end: w.end },
        "mdast-util-mdx-jsx:end-tag-mismatch"
      );
    this.resume(), A.close ? T.pop() : this.enter(
      {
        type: w.type === "mdxJsxTextTag" ? "mdxJsxTextElement" : "mdxJsxFlowElement",
        name: A.name || null,
        attributes: A.attributes,
        children: []
      },
      w,
      S
    ), A.selfClosing || A.close ? this.exit(w, k) : T.push(A);
  }
  function S(w, A) {
    let T = this.data.mdxJsxTag;
    let B = w ? " before the end of `" + w.type + "`" : "", $ = w ? { start: w.start, end: w.end } : void 0;
    throw new Se(
      "Expected a closing tag for `" + j(T) + "` (" + Zt({ start: A.start, end: A.end }) + ")" + B,
      $,
      "mdast-util-mdx-jsx:end-tag-mismatch"
    );
  }
  function k(w, A) {
    let T = this.data.mdxJsxTag;
    throw new Se(
      "Expected the closing tag `" + j(T) + "` either after the end of `" + A.type + "` (" + Zt(A.end) + ") or another opening tag after the\
 start of `" + A.type + "` (" + Zt(A.start) + ")",
      { start: w.start, end: w.end },
      "mdast-util-mdx-jsx:end-tag-mismatch"
    );
  }
  function j(w) {
    return "<" + (w.close ? "/" : "") + (w.name || "") + ">";
  }
}
function jI(e) {
  let t = e || {}, r = t.quote || '"', i = t.quoteSmart || !1, n = t.tightSelfClosing || !1, u = t.printWidth || Number.POSITIVE_INFINITY, a = r ===
  '"' ? "'" : '"';
  if (r !== '"' && r !== "'")
    throw new Error(
      "Cannot serialize attribute values with `" + r + "` for `options.quote`, expected `\"`, or `'`"
    );
  return o.peek = $I, {
    handlers: {
      mdxJsxFlowElement: o,
      mdxJsxTextElement: o
    },
    unsafe: [
      { character: "<", inConstruct: ["phrasing"] },
      { atBreak: !0, character: "<" }
    ],
    // Always generate fenced code (never indented code).
    fences: !0,
    // Always generate links with resources (never autolinks).
    resourceLink: !0
  };
  function o(l, c, h, p) {
    let d = l.type === "mdxJsxFlowElement", m = l.name ? !l.children || l.children.length === 0 : !1, D = YE(h), g = KE(D), v = h.createTracker(
    p), x = h.createTracker(p), C = [], S = (d ? g : "") + "<" + (l.name || ""), k = h.enter(l.type);
    if (v.move(S), x.move(S), l.attributes && l.attributes.length > 0) {
      if (!l.name)
        throw new Error("Cannot serialize fragment w/ attributes");
      let B = -1;
      for (; ++B < l.attributes.length; ) {
        let $ = l.attributes[B], L;
        if ($.type === "mdxJsxExpressionAttribute")
          L = "{" + ($.value || "") + "}";
        else {
          if (!$.name)
            throw new Error("Cannot serialize attribute w/o name");
          let V = $.value, U = $.name, X = "";
          if (V != null)
            if (typeof V == "object")
              X = "{" + (V.value || "") + "}";
            else {
              let R = i && K1(V, r) > K1(V, a) ? a : r;
              X = R + LI(V, { subset: [R] }) + R;
            }
          L = U + (X ? "=" : "") + X;
        }
        C.push(L);
      }
    }
    let j = !1, w = C.join(" ");
    // Block:
    d && // Including a line ending (expressions).
    (/\r?\n|\r/.test(w) || // Current position (including `<tag`).
    v.current().now.column + // -1 because columns, +1 for ` ` before attributes.
    // Attributes joined by spaces.
    w.length + // ` />`.
    (m ? n ? 2 : 3 : 1) > u) && (j = !0);
    let A = v, T = S;
    if (j) {
      A = x;
      let B = -1;
      for (; ++B < C.length; )
        C[B] = g + XE + C[B];
      T += A.move(
        `
` + C.join(`
`) + `
` + g
      );
    } else w && (T += A.move(" " + w));
    return m && (T += A.move(
      (n || j ? "" : " ") + "/"
    )), T += A.move(">"), l.children && l.children.length > 0 && (l.type === "mdxJsxTextElement" ? T += A.move(
      // @ts-expect-error: `containerPhrasing` is typed correctly, but TS
      // generates *hardcoded* types, which means that our dynamically added
      // directives are not present.
      // At some point, TS should fix that, and `from-markdown` should be fine.
      h.containerPhrasing(l, {
        ...A.current(),
        before: ">",
        after: "<"
      })
    ) : (A.shift(2), T += A.move(`
`), T += A.move(qI(l, h, A.current())), T += A.move(`
`))), m || (T += A.move(
      (d ? g : "") + "</" + (l.name || "") + ">"
    )), k(), T;
  }
  s(o, "mdxElement");
}
function qI(e, t, r) {
  let i = t.indexStack, n = e.children, u = t.createTracker(r), a = KE(YE(t)), o = [], l = -1;
  for (i.push(-1); ++l < n.length; ) {
    let c = n[l];
    i[i.length - 1] = l;
    let h = { before: `
`, after: `
`, ...u.current() }, p = t.handle(c, e, t, h), d = c.type === "mdxJsxFlowElement" ? p : t.indentLines(p, function(m, D, g) {
      return (g ? "" : a) + m;
    });
    o.push(u.move(d)), c.type !== "list" && (t.bulletLastUsed = void 0), l < n.length - 1 && o.push(u.move(`

`));
  }
  return i.pop(), o.join("");
}
function YE(e) {
  let t = 0;
  for (let r of e.stack)
    r === "mdxJsxFlowElement" && t++;
  return t;
}
function KE(e) {
  return XE.repeat(e);
}
function $I() {
  return "<";
}
function VI() {
  return {
    enter: { mdxjsEsm: zI },
    exit: { mdxjsEsm: HI, mdxjsEsmData: WI }
  };
}
function UI() {
  return { handlers: { mdxjsEsm: JI } };
}
function zI(e) {
  this.enter({ type: "mdxjsEsm", value: "" }, e), this.buffer();
}
function HI(e) {
  let t = this.resume(), r = this.stack[this.stack.length - 1];
  r.type, this.exit(e);
  let i = e.estree;
  r.value = t, i && (r.data = { estree: i });
}
function WI(e) {
  this.config.enter.data.call(this, e), this.config.exit.data.call(this, e);
}
function JI(e) {
  return e.value || "";
}
function GI() {
  return [
    vI(),
    MI(),
    VI()
  ];
}
function XI(e) {
  return {
    extensions: [
      CI(),
      jI(e),
      UI()
    ]
  };
}
function Mp(e) {
  return (
    // Special whitespace codes (which have negative values), C0 and Control
    // character DEL
    e !== null && (e < 32 || e === 127)
  );
}
function ne(e) {
  return e !== null && e < -2;
}
function Ke(e) {
  return e !== null && (e < 0 || e === 32);
}
function Ce(e) {
  return e === -2 || e === -1 || e === 32;
}
function eO(e) {
  return QE(e) || KI(e);
}
function _i(e) {
  return t;
  function t(r) {
    return r !== null && r > -1 && e.test(String.fromCharCode(r));
  }
}
function tO(e) {
  return "\x1B[33m" + e + "\x1B[39m";
}
function sO(e, t) {
  let r, i;
  typeof t == "function" ? r = t : t && typeof t == "object" && (t.enter && (r = t.enter), t.leave && (i = t.leave)), n(e, void 0, void 0, [])();
  function n(u, a, o, l) {
    return Fp(u) && (c.displayName = "node (" + tO(u.type) + ")"), c;
    function c() {
      let h = r ? tE(r(u, a, o, l)) : [];
      if (h[0] === Ap)
        return h;
      if (h[0] !== nO) {
        let p;
        for (p in u)
          if (rO.call(u, p) && u[p] && typeof u[p] == "object" && // @ts-expect-error: custom esast extension.
          p !== "data" && // @ts-expect-error: custom esast extension.
          p !== "position") {
            let d = l.concat(u), m = u[p];
            if (Array.isArray(m)) {
              let D = (
                /** @type {Array<unknown>} */
                m
              ), g = 0;
              for (; g > -1 && g < D.length; ) {
                let v = D[g];
                if (Fp(v)) {
                  let x = n(
                    v,
                    p,
                    g,
                    d
                  )();
                  if (x[0] === Ap)
                    return x;
                  g = typeof x[1] == "number" ? x[1] : g + 1;
                } else
                  g++;
              }
            } else if (Fp(m)) {
              let D = n(m, p, void 0, d)();
              if (D[0] === Ap)
                return D;
            }
          }
      }
      return i ? tE(i(u, a, o, l)) : h;
    }
    s(c, "visit3");
  }
  s(n, "build");
}
function tE(e) {
  return Array.isArray(e) ? e : typeof e == "number" ? [iO, e] : [e];
}
function Fp(e) {
  return !!(e && typeof e == "object" && "type" in e && typeof e.type == "string" && e.type.length > 0);
}
function ZE(e, t) {
  let r = t.prefix || "", i = t.suffix || "", n = Object.assign({}, t.acornOptions), u = [], a = [], o = n.onComment, l = n.onToken, c = !1,
  h, p, d = Object.assign({}, n, {
    onComment: u,
    preserveParens: !0
  });
  l && (d.onToken = a);
  let m = uO(e, t.tokenTypes), D = m.value, g = r + D + i, v = t.expression && rE(D);
  if (v && !t.allowEmpty)
    throw new Se("Unexpected empty expression", {
      place: C(0),
      ruleId: "unexpected-empty-expression",
      source: "micromark-extension-mdx-expression"
    });
  try {
    h = t.expression && !v ? t.acorn.parseExpressionAt(g, 0, d) : t.acorn.parse(g, d);
  } catch (S) {
    let k = (
      /** @type {AcornError} */
      S
    ), j = C(k.pos);
    k.message = String(k.message).replace(/ \(\d+:\d+\)$/, ""), k.pos = j.offset, k.loc = {
      line: j.line,
      column: j.column - 1
    }, p = k, c = k.raisedAt >= r.length + D.length || // Broken comments are raised at their start, not their end.
    k.message === "Unterminated comment";
  }
  if (h && t.expression && !v)
    if (rE(g.slice(h.end, g.length - i.length)))
      h = {
        type: "Program",
        start: 0,
        end: r.length + D.length,
        // @ts-expect-error: It’s good.
        body: [{
          type: "ExpressionStatement",
          expression: h,
          start: 0,
          end: r.length + D.length
        }],
        sourceType: "module",
        comments: []
      };
    else {
      let S = C(h.end), k = (
        /** @type {AcornError} */
        new Error("Unexpected content after expression")
      );
      k.pos = S.offset, k.loc = {
        line: S.line,
        column: S.column - 1
      }, p = k, h = void 0;
    }
  if (h) {
    if (h.comments = u, sO(h, function(S, k, j, w) {
      let A = (
        /** @type {AcornNode | Array<AcornNode>} */
        w[w.length - 1]
      ), T = k;
      S.type === "ParenthesizedExpression" && A && T && (typeof j == "number" && (A = A[T], T = j), A[T] = S.expression), x(S);
    }), Array.isArray(o))
      o.push(...u);
    else if (typeof o == "function")
      for (let S of u)
        o(S.type === "Block", S.value, S.start, S.end, S.loc.start, S.loc.end);
    for (let S of a)
      S.end <= r.length || S.start - r.length >= D.length || (x(S), Array.isArray(l) ? l.push(S) : l(S));
  }
  return {
    estree: h,
    error: p,
    swallow: c
  };
  function x(S) {
    let k = C(S.start), j = C(S.end);
    S.start = k.offset, S.end = j.offset, S.loc = {
      start: {
        line: k.line,
        column: k.column - 1,
        offset: k.offset
      },
      end: {
        line: j.line,
        column: j.column - 1,
        offset: j.offset
      }
    }, S.range = [S.start, S.end];
  }
  function C(S) {
    let k = S - r.length;
    k < 0 ? k = 0 : k > D.length && (k = D.length);
    let j = aO(m.stops, k);
    return j || (j = {
      line: t.start.line,
      column: t.start.column,
      offset: t.start.offset
    }), j;
  }
}
function rE(e) {
  return /^\s*$/.test(e.replace(/\/\*[\s\S]*?\*\//g, "").replace(/\/\/[^\r\n]*(\r\n|\n|\r)/g, ""));
}
function uO(e, t) {
  let r = {
    value: "",
    stops: []
  }, i = -1;
  for (; ++i < e.length; ) {
    let n = e[i];
    if (n[0] === "enter") {
      let u = n[1].type;
      if (u === "lineEnding" || t.includes(u)) {
        let a = n[2].sliceStream(n[1]);
        for (; a.length > 0 && a[0] === -1; )
          a.shift();
        let o = oO(a);
        r.stops.push([r.value.length, n[1].start]), r.value += o, r.stops.push([r.value.length, n[1].end]);
      }
    }
  }
  return r;
}
function aO(e, t) {
  let r = 0;
  for (; r < e.length && e[r][0] <= t; )
    r += 1;
  if (r === 0)
    return;
  let [i, n] = e[r - 1], u = t - i;
  return {
    line: n.line,
    column: n.column + u,
    offset: n.offset + u
  };
}
function oO(e) {
  let t = -1, r = [], i;
  for (; ++t < e.length; ) {
    let n = e[t], u;
    if (typeof n == "string")
      u = n;
    else
      switch (n) {
        case -5: {
          u = "\r";
          break;
        }
        case -4: {
          u = `
`;
          break;
        }
        case -3: {
          u = `\r
`;
          break;
        }
        case -2: {
          u = "	";
          break;
        }
        case -1: {
          if (i)
            continue;
          u = " ";
          break;
        }
        default:
          u = String.fromCharCode(n);
      }
    i = n === -2, r.push(u);
  }
  return r.join("");
}
function Zr(e) {
  let t = e || {}, r = t.loc || {}, i = t.range || [void 0, void 0], n = iE(r.start, i[0] || t.start), u = iE(r.end, i[1] || t.end);
  if (n && u)
    return { start: n, end: u };
}
function iE(e, t) {
  if (e && typeof e == "object") {
    let r = "line" in e ? Sp(e.line) : void 0, i = "column" in e ? Sp(e.column) : void 0;
    if (r && i !== void 0)
      return {
        line: r,
        column: i + 1,
        offset: Sp(t)
      };
  }
}
function Sp(e) {
  return typeof e == "number" && e > -1 ? e : void 0;
}
function Ua(e, t, r, i, n, u, a, o, l, c, h) {
  let p = this, d = this.events.length + 3, m = 0, D, g;
  return v;
  function v(k) {
    return e.enter(r), e.enter(i), e.consume(k), e.exit(i), D = p.now(), x;
  }
  function x(k) {
    if (k === null) {
      if (g)
        throw g;
      let j = new Se(
        "Unexpected end of file in expression, expected a corresponding closing brace for `{`",
        {
          place: p.now(),
          ruleId: "unexpected-eof",
          source: "micromark-extension-mdx-expression"
        }
      );
      throw j.url = Un + lO, j;
    }
    if (ne(k))
      return e.enter("lineEnding"), e.consume(k), e.exit("lineEnding"), S;
    if (k === 125 && m === 0) {
      let j = u ? fO.call(
        p,
        u,
        a,
        n,
        d,
        D,
        c || !1,
        l || !1
      ) : {
        type: "ok",
        estree: void 0
      };
      if (j.type === "ok") {
        e.enter(i), e.consume(k), e.exit(i);
        let w = e.exit(r);
        return o && j.estree && Object.assign(w, {
          estree: j.estree
        }), t;
      }
      return g = j.message, e.enter(n), e.consume(k), C;
    }
    return e.enter(n), C(k);
  }
  function C(k) {
    return k === 125 && m === 0 || k === null || ne(k) ? (e.exit(n), x(k)) : (k === 123 && !u ? m += 1 : k === 125 && (m -= 1), e.consume(k),
    C);
  }
  function S(k) {
    let j = p.now();
    if (j.line !== D.line && !h && p.parser.lazy[j.line]) {
      let w = new Se(
        "Unexpected lazy line in expression in container, expected line to be prefixed with `>` when in a block quote, whitespace when in a \
list, etc",
        {
          place: p.now(),
          ruleId: "unexpected-lazy",
          source: "micromark-extension-mdx-expression"
        }
      );
      throw w.url = Un + cO, w;
    }
    return x(k);
  }
}
function fO(e, t, r, i, n, u, a) {
  let o = ZE(this.events.slice(i), {
    acorn: e,
    tokenTypes: [r],
    acornOptions: t,
    start: n,
    expression: !0,
    allowEmpty: u,
    prefix: a ? "({" : "",
    suffix: a ? "})" : ""
  }), l = o.estree;
  if (a && l) {
    let c = l.body[0];
    if (c.type !== "ExpressionStatement" || c.expression.type !== "ObjectExpression") {
      let h = Zr(c), p = new Se(
        "Unexpected `" + c.type + "` in code: expected an object spread (`{...spread}`)",
        {
          place: h.start,
          ruleId: "non-spread",
          source: "micromark-extension-mdx-expression"
        }
      );
      throw p.url = Un + nE, p;
    }
    if (c.expression.properties[1]) {
      let h = Zr(c.expression.properties[1]), p = new Se(
        "Unexpected extra content in spread: only a single spread is supported",
        {
          place: h.start,
          ruleId: "spread-extra",
          source: "micromark-extension-mdx-expression"
        }
      );
      throw p.url = Un + hO, p;
    }
    if (c.expression.properties[0] && c.expression.properties[0].type !== "SpreadElement") {
      let h = Zr(c.expression.properties[0]), p = new Se(
        "Unexpected `" + c.expression.properties[0].type + "` in code: only spread elements are supported",
        {
          place: h.start,
          ruleId: "non-spread",
          source: "micromark-extension-mdx-expression"
        }
      );
      throw p.url = Un + nE, p;
    }
  }
  if (o.error) {
    let c = new Se("Could not parse expression with acorn", {
      cause: o.error,
      place: {
        line: o.error.loc.line,
        column: o.error.loc.column + 1,
        offset: o.error.pos
      },
      ruleId: "acorn",
      source: "micromark-extension-mdx-expression"
    });
    return c.url = Un + pO, {
      type: "nok",
      message: c
    };
  }
  return {
    type: "ok",
    estree: l
  };
}
function Be(e, t, r, i) {
  let n = i ? i - 1 : Number.POSITIVE_INFINITY, u = 0;
  return a;
  function a(l) {
    return Ce(l) ? (e.enter(r), o(l)) : t(l);
  }
  function o(l) {
    return Ce(l) && u++ < n ? (e.consume(l), o) : (e.exit(r), t(l));
  }
}
function dO(e) {
  let t = e || {}, r = t.addResult, i = t.acorn, n = t.spread, u = t.allowEmpty, a;
  if (u == null && (u = !0), i) {
    if (!i.parseExpressionAt)
      throw new Error("Expected a proper `acorn` instance passed in as `options.acorn`");
    a = Object.assign({
      ecmaVersion: 2024,
      sourceType: "module"
    }, t.acornOptions);
  } else if (t.acornOptions || t.addResult)
    throw new Error("Expected an `acorn` instance passed in as `options.acorn`");
  return {
    flow: {
      123: {
        name: "mdxFlowExpression",
        tokenize: o,
        concrete: !0
      }
    },
    text: {
      123: {
        name: "mdxTextExpression",
        tokenize: l
      }
    }
  };
  function o(c, h, p) {
    let d = this;
    return m;
    function m(x) {
      return D(x);
    }
    function D(x) {
      return Ua.call(d, c, g, "mdxFlowExpression", "mdxFlowExpressionMarker", "mdxFlowExpressionChunk", i, a, r, n, u)(x);
    }
    function g(x) {
      return Ce(x) ? Be(c, v, "whitespace")(x) : v(x);
    }
    function v(x) {
      let C = d.parser.constructs.flow[60], k = (Array.isArray(C) ? C : (
        /* c8 ignore next 3 -- always a list when normalized. */
        C ? [C] : []
      )).find(function(j) {
        return j.name === "mdxJsxFlowTag";
      });
      return x === 60 && k ? c.attempt(k, v, p)(x) : x === null || ne(x) ? h(x) : p(x);
    }
  }
  function l(c, h) {
    let p = this;
    return d;
    function d(m) {
      return Ua.call(p, c, h, "mdxTextExpression", "mdxTextExpressionMarker", "mdxTextExpressionChunk", i, a, r, n, u, !0)(m);
    }
  }
}
function eb(e, t, r, i, n, u, a, o, l, c, h, p, d, m, D, g, v, x, C, S, k, j, w, A, T, B, $, L, V, U, X, R) {
  let N = this, z, Y;
  return ee;
  function ee(b) {
    return e.enter(o), e.enter(l), e.consume(b), e.exit(l), O;
  }
  function O(b) {
    return Ke(b) ? r(b) : (z = ue, E(b));
  }
  function ue(b) {
    if (b === 47)
      return e.enter(c), e.consume(b), e.exit(c), z = ke, E;
    if (b === 62)
      return Ct(b);
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(p), e.enter(d), e.consume(b), M;
    P(b, "before name", "a character that can start a name, such as a letter, `$`, or `_`" + (b === 33 ? " (note: to create a comment in MDX\
, use `{/* text */}`)" : ""));
  }
  function ke(b) {
    if (b === 62)
      return Ct(b);
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(p), e.enter(d), e.consume(b), M;
    P(b, "before name", "a character that can start a name, such as a letter, `$`, or `_`" + (b === 42 || b === 47 ? " (note: JS comments in\
 JSX tags are not supported in MDX)" : ""));
  }
  function M(b) {
    if (b !== null && b >= 0 && Pn(b, {
      jsx: !0
    }))
      return e.consume(b), M;
    if (b === 46 || b === 47 || b === 58 || b === 62 || b === 123 || Ke(b) || Qr(b))
      return e.exit(d), z = we, E(b);
    P(b, "in name", "a name character such as letters, digits, `$`, or `_`; whitespace before attributes; or the end of the tag" + (b === 64 ?
    " (note: to create a link in MDX, use `[text](url)`)" : ""));
  }
  function we(b) {
    if (b === 46)
      return e.enter(m), e.consume(b), e.exit(m), z = Te, E;
    if (b === 58)
      return e.enter(g), e.consume(b), e.exit(g), z = Ie, E;
    if (b === 47 || b === 62 || b === 123 || b !== null && b >= 0 && Ht(b))
      return e.exit(p), K(b);
    P(b, "after name", "a character that can start an attribute name, such as a letter, `$`, or `_`; whitespace before attributes; or the en\
d of the tag");
  }
  function Te(b) {
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(D), e.consume(b), ae;
    P(b, "before member name", "a character that can start an attribute name, such as a letter, `$`, or `_`; whitespace before attributes; o\
r the end of the tag");
  }
  function ae(b) {
    if (b !== null && b >= 0 && Pn(b, {
      jsx: !0
    }))
      return e.consume(b), ae;
    if (b === 46 || b === 47 || b === 62 || b === 123 || Ke(b) || Qr(b))
      return e.exit(D), z = st, E(b);
    P(b, "in member name", "a name character such as letters, digits, `$`, or `_`; whitespace before attributes; or the end of the tag" + (b ===
    64 ? " (note: to create a link in MDX, use `[text](url)`)" : ""));
  }
  function st(b) {
    if (b === 46)
      return e.enter(m), e.consume(b), e.exit(m), z = Te, E;
    if (b === 47 || b === 62 || b === 123 || b !== null && b >= 0 && Ht(b))
      return e.exit(p), K(b);
    P(b, "after member name", "a character that can start an attribute name, such as a letter, `$`, or `_`; whitespace before attributes; or\
 the end of the tag");
  }
  function Ie(b) {
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(v), e.consume(b), te;
    P(b, "before local name", "a character that can start a name, such as a letter, `$`, or `_`" + (b === 43 || b !== null && b > 46 && b < 58 ?
    " (note: to create a link in MDX, use `[text](url)`)" : ""));
  }
  function te(b) {
    if (b !== null && b >= 0 && Pn(b, {
      jsx: !0
    }))
      return e.consume(b), te;
    if (b === 47 || b === 62 || b === 123 || Ke(b) || Qr(b))
      return e.exit(v), z = me, E(b);
    P(b, "in local name", "a name character such as letters, digits, `$`, or `_`; whitespace before attributes; or the end of the tag");
  }
  function me(b) {
    if (b === 47 || b === 62 || b === 123 || b !== null && b >= 0 && Ht(b))
      return e.exit(p), K(b);
    P(b, "after local name", "a character that can start an attribute name, such as a letter, `$`, or `_`; whitespace before attributes; or \
the end of the tag");
  }
  function K(b) {
    if (b === 47)
      return e.enter(h), e.consume(b), e.exit(h), z = ce, E;
    if (b === 62)
      return Ct(b);
    if (b === 123)
      return Ua.call(N, e, le, x, C, S, i, n, u, !0, !1, a)(b);
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(k), e.enter(j), e.enter(w), e.consume(b), Fe;
    P(b, "before attribute name", "a character that can start an attribute name, such as a letter, `$`, or `_`; whitespace before attributes\
; or the end of the tag");
  }
  function le(b) {
    return z = K, E(b);
  }
  function Fe(b) {
    if (b !== null && b >= 0 && Pn(b, {
      jsx: !0
    }))
      return e.consume(b), Fe;
    if (b === 47 || b === 58 || b === 61 || b === 62 || b === 123 || Ke(b) || Qr(b))
      return e.exit(w), z = Ge, E(b);
    P(b, "in attribute name", "an attribute name character such as letters, digits, `$`, or `_`; `=` to initialize a value; whitespace befor\
e attributes; or the end of the tag");
  }
  function Ge(b) {
    if (b === 58)
      return e.enter(A), e.consume(b), e.exit(A), z = Oe, E;
    if (b === 61)
      return e.exit(j), e.enter(B), e.consume(b), e.exit(B), z = sr, E;
    if (b === 47 || b === 62 || b === 123 || Ke(b) || Qr(b) || b !== null && b >= 0 && Ht(b))
      return e.exit(j), e.exit(k), z = K, E(b);
    P(b, "after attribute name", "a character that can start an attribute name, such as a letter, `$`, or `_`; `=` to initialize a value; or\
 the end of the tag");
  }
  function Oe(b) {
    if (b !== null && b >= 0 && Ht(b))
      return e.enter(T), e.consume(b), jt;
    P(b, "before local attribute name", "a character that can start an attribute name, such as a letter, `$`, or `_`; `=` to initialize a va\
lue; or the end of the tag");
  }
  function jt(b) {
    if (b !== null && b >= 0 && Pn(b, {
      jsx: !0
    }))
      return e.consume(b), jt;
    if (b === 47 || b === 61 || b === 62 || b === 123 || Ke(b) || Qr(b))
      return e.exit(T), e.exit(j), z = vr, E(b);
    P(b, "in local attribute name", "an attribute name character such as letters, digits, `$`, or `_`; `=` to initialize a value; whitespace\
 before attributes; or the end of the tag");
  }
  function vr(b) {
    if (b === 61)
      return e.enter(B), e.consume(b), e.exit(B), z = sr, E;
    if (b === 47 || b === 62 || b === 123 || b !== null && b >= 0 && Ht(b))
      return e.exit(k), K(b);
    P(b, "after local attribute name", "a character that can start an attribute name, such as a letter, `$`, or `_`; `=` to initialize a val\
ue; or the end of the tag");
  }
  function sr(b) {
    if (b === 34 || b === 39)
      return e.enter($), e.enter(L), e.consume(b), e.exit(L), Y = b, hi;
    if (b === 123)
      return Ua.call(N, e, Ui, U, X, R, i, n, u, !1, !1, a)(b);
    P(b, "before attribute value", "a character that can start an attribute value, such as `\"`, `'`, or `{`" + (b === 60 ? " (note: to use \
an element or fragment as a prop value in MDX, use `{<element />}`)" : ""));
  }
  function Ui(b) {
    return e.exit(k), z = K, E(b);
  }
  function hi(b) {
    return b === null && P(b, "in attribute value", "a corresponding closing quote `" + String.fromCodePoint(Y) + "`"), b === Y ? (e.enter(L),
    e.consume(b), e.exit(L), e.exit($), e.exit(k), Y = void 0, z = K, E) : ne(b) ? (z = hi, E(b)) : (e.enter(V), mn(b));
  }
  function mn(b) {
    return b === null || b === Y || ne(b) ? (e.exit(V), hi(b)) : (e.consume(b), mn);
  }
  function ce(b) {
    if (b === 62)
      return Ct(b);
    P(b, "after self-closing slash", "`>` to end the tag" + (b === 42 || b === 47 ? " (note: JS comments in JSX tags are not supported in MD\
X)" : ""));
  }
  function Ct(b) {
    return e.enter(l), e.consume(b), e.exit(l), e.exit(o), t;
  }
  function E(b) {
    return ne(b) ? (e.enter("lineEnding"), e.consume(b), e.exit("lineEnding"), _) : Ce(b) || Qr(b) ? (e.enter("esWhitespace"), y(b)) : z(b);
  }
  function y(b) {
    return ne(b) ? (e.exit("esWhitespace"), E(b)) : Ce(b) || Qr(b) ? (e.consume(b), y) : (e.exit("esWhitespace"), z(b));
  }
  function _(b) {
    if (!a && N.parser.lazy[N.now().line]) {
      let q = new Se("Unexpected lazy line in container, expected line to be prefixed with `>` when in a block quote, whitespace when in a l\
ist, etc", N.now(), "micromark-extension-mdx-jsx:unexpected-lazy");
      throw q.url = sE + "#unexpected-lazy-line-in-container-expected-line-to-be", q;
    }
    return E(b);
  }
  function P(b, q, H) {
    let W = new Se("Unexpected " + (b === null ? "end of file" : "character `" + (b === 96 ? "` ` `" : String.fromCodePoint(b)) + "` (" + mO(
    b) + ")") + " " + q + ", expected " + H, N.now(), "micromark-extension-mdx-jsx:unexpected-" + (b === null ? "eof" : "character"));
    throw W.url = sE + (b === null ? "#unexpected-end-of-file-at-expected-expect" : "#unexpected-character-at-expected-expect"), W;
  }
}
function mO(e) {
  return "U+" + e.toString(16).toUpperCase().padStart(4, "0");
}
function DO(e, t) {
  return {
    name: "mdxJsxTextTag",
    tokenize: r
  };
  function r(i, n, u) {
    return eb.call(this, i, n, u, e, t.acornOptions, t.addResult, !0, "mdxJsxTextTag", "mdxJsxTextTagMarker", "mdxJsxTextTagClosingMarker", "\
mdxJsxTextTagSelfClosingMarker", "mdxJsxTextTagName", "mdxJsxTextTagNamePrimary", "mdxJsxTextTagNameMemberMarker", "mdxJsxTextTagNameMember",
    "mdxJsxTextTagNamePrefixMarker", "mdxJsxTextTagNameLocal", "mdxJsxTextTagExpressionAttribute", "mdxJsxTextTagExpressionAttributeMarker",
    "mdxJsxTextTagExpressionAttributeValue", "mdxJsxTextTagAttribute", "mdxJsxTextTagAttributeName", "mdxJsxTextTagAttributeNamePrimary", "m\
dxJsxTextTagAttributeNamePrefixMarker", "mdxJsxTextTagAttributeNameLocal", "mdxJsxTextTagAttributeInitializerMarker", "mdxJsxTextTagAttribut\
eValueLiteral", "mdxJsxTextTagAttributeValueLiteralMarker", "mdxJsxTextTagAttributeValueLiteralValue", "mdxJsxTextTagAttributeValueExpressio\
n", "mdxJsxTextTagAttributeValueExpressionMarker", "mdxJsxTextTagAttributeValueExpressionValue");
  }
}
function gO(e, t) {
  return {
    name: "mdxJsxFlowTag",
    tokenize: r,
    concrete: !0
  };
  function r(i, n, u) {
    let a = this;
    return o;
    function o(p) {
      return l(p);
    }
    function l(p) {
      return eb.call(a, i, c, u, e, t.acornOptions, t.addResult, !1, "mdxJsxFlowTag", "mdxJsxFlowTagMarker", "mdxJsxFlowTagClosingMarker", "\
mdxJsxFlowTagSelfClosingMarker", "mdxJsxFlowTagName", "mdxJsxFlowTagNamePrimary", "mdxJsxFlowTagNameMemberMarker", "mdxJsxFlowTagNameMember",
      "mdxJsxFlowTagNamePrefixMarker", "mdxJsxFlowTagNameLocal", "mdxJsxFlowTagExpressionAttribute", "mdxJsxFlowTagExpressionAttributeMarker",
      "mdxJsxFlowTagExpressionAttributeValue", "mdxJsxFlowTagAttribute", "mdxJsxFlowTagAttributeName", "mdxJsxFlowTagAttributeNamePrimary", "\
mdxJsxFlowTagAttributeNamePrefixMarker", "mdxJsxFlowTagAttributeNameLocal", "mdxJsxFlowTagAttributeInitializerMarker", "mdxJsxFlowTagAttribu\
teValueLiteral", "mdxJsxFlowTagAttributeValueLiteralMarker", "mdxJsxFlowTagAttributeValueLiteralValue", "mdxJsxFlowTagAttributeValueExpressi\
on", "mdxJsxFlowTagAttributeValueExpressionMarker", "mdxJsxFlowTagAttributeValueExpressionValue")(p);
    }
    function c(p) {
      return Ce(p) ? Be(i, h, "whitespace")(p) : h(p);
    }
    function h(p) {
      let d = a.parser.constructs.flow[123], D = (Array.isArray(d) ? d : d ? [d] : []).find((g) => g.name === "mdxFlowExpression");
      return p === 60 ? (
        // We can’t just say: fine. Lines of blocks have to be parsed until an eol/eof.
        o(p)
      ) : p === 123 && D ? i.attempt(D, h, u)(p) : p === null || ne(p) ? n(p) : u(p);
    }
  }
}
function xO(e) {
  let t = e || {}, r = t.acorn, i;
  if (r) {
    if (!r.parse || !r.parseExpressionAt)
      throw new Error("Expected a proper `acorn` instance passed in as `options.acorn`");
    i = Object.assign({
      ecmaVersion: 2024,
      sourceType: "module"
    }, t.acornOptions, {
      locations: !0
    });
  } else if (t.acornOptions || t.addResult)
    throw new Error("Expected an `acorn` instance passed in as `options.acorn`");
  return {
    flow: {
      60: gO(r || void 0, {
        acornOptions: i,
        addResult: t.addResult || void 0
      })
    },
    text: {
      60: DO(r || void 0, {
        acornOptions: i,
        addResult: t.addResult || void 0
      })
    }
  };
}
function yO() {
  return {
    disable: { null: ["autolink", "codeIndented", "htmlFlow", "htmlText"] }
  };
}
function Ir(e, t, r, i) {
  let n = e.length, u = 0, a;
  if (t < 0 ? t = -t > n ? 0 : n + t : t = t > n ? n : t, r = r > 0 ? r : 0, i.length < 1e4)
    a = Array.from(i), a.unshift(t, r), e.splice(...a);
  else
    for (r && e.splice(t, r); u < i.length; )
      a = i.slice(u, u + 1e4), a.unshift(t, 0), e.splice(...a), u += 1e4, t += 1e4;
}
function Qt(e, t) {
  return e.length > 0 ? (Ir(e, e.length, 0, t), e) : t;
}
function uE(e) {
  if (e === null || Ke(e) || Qr(e))
    return 1;
  if (eO(e))
    return 2;
}
function zp(e, t, r) {
  let i = [], n = -1;
  for (; ++n < e.length; ) {
    let u = e[n].resolveAll;
    u && !i.includes(u) && (t = u(t, r), i.push(u));
  }
  return t;
}
function EO(e, t) {
  let r = -1, i, n, u, a, o, l, c, h;
  for (; ++r < e.length; )
    if (e[r][0] === "enter" && e[r][1].type === "attentionSequence" && e[r][1]._close) {
      for (i = r; i--; )
        if (e[i][0] === "exit" && e[i][1].type === "attentionSequence" && e[i][1]._open && // If the markers are the same:
        t.sliceSerialize(e[i][1]).charCodeAt(0) === t.sliceSerialize(e[r][1]).charCodeAt(0)) {
          if ((e[i][1]._close || e[r][1]._open) && (e[r][1].end.offset - e[r][1].start.offset) % 3 && !((e[i][1].end.offset - e[i][1].start.
          offset + e[r][1].end.offset - e[r][1].start.offset) % 3))
            continue;
          l = e[i][1].end.offset - e[i][1].start.offset > 1 && e[r][1].end.offset - e[r][1].start.offset > 1 ? 2 : 1;
          let p = Object.assign({}, e[i][1].end), d = Object.assign({}, e[r][1].start);
          aE(p, -l), aE(d, l), a = {
            type: l > 1 ? "strongSequence" : "emphasisSequence",
            start: p,
            end: Object.assign({}, e[i][1].end)
          }, o = {
            type: l > 1 ? "strongSequence" : "emphasisSequence",
            start: Object.assign({}, e[r][1].start),
            end: d
          }, u = {
            type: l > 1 ? "strongText" : "emphasisText",
            start: Object.assign({}, e[i][1].end),
            end: Object.assign({}, e[r][1].start)
          }, n = {
            type: l > 1 ? "strong" : "emphasis",
            start: Object.assign({}, a.start),
            end: Object.assign({}, o.end)
          }, e[i][1].end = Object.assign({}, a.start), e[r][1].start = Object.assign({}, o.end), c = [], e[i][1].end.offset - e[i][1].start.
          offset && (c = Qt(c, [
            ["enter", e[i][1], t],
            ["exit", e[i][1], t]
          ])), c = Qt(c, [
            ["enter", n, t],
            ["enter", a, t],
            ["exit", a, t],
            ["enter", u, t]
          ]), c = Qt(
            c,
            zp(
              t.parser.constructs.insideSpan.null,
              e.slice(i + 1, r),
              t
            )
          ), c = Qt(c, [
            ["exit", u, t],
            ["enter", o, t],
            ["exit", o, t],
            ["exit", n, t]
          ]), e[r][1].end.offset - e[r][1].start.offset ? (h = 2, c = Qt(c, [
            ["enter", e[r][1], t],
            ["exit", e[r][1], t]
          ])) : h = 0, Ir(e, i - 1, r - i + 3, c), r = i + c.length - h - 2;
          break;
        }
    }
  for (r = -1; ++r < e.length; )
    e[r][1].type === "attentionSequence" && (e[r][1].type = "data");
  return e;
}
function bO(e, t) {
  let r = this.parser.constructs.attentionMarkers.null, i = this.previous, n = uE(i), u;
  return a;
  function a(l) {
    return u = l, e.enter("attentionSequence"), o(l);
  }
  function o(l) {
    if (l === u)
      return e.consume(l), o;
    let c = e.exit("attentionSequence"), h = uE(l), p = !h || h === 2 && n || r.includes(l), d = !n || n === 2 && h || r.includes(i);
    return c._open = !!(u === 42 ? p : p && (n || !d)), c._close = !!(u === 42 ? d : d && (h || !p)), t(l);
  }
}
function aE(e, t) {
  e.column += t, e.offset += t, e._bufferIndex += t;
}
function CO(e, t, r) {
  let i = 0;
  return n;
  function n(m) {
    return e.enter("autolink"), e.enter("autolinkMarker"), e.consume(m), e.exit("autolinkMarker"), e.enter("autolinkProtocol"), u;
  }
  function u(m) {
    return dr(m) ? (e.consume(m), a) : c(m);
  }
  function a(m) {
    return m === 43 || m === 45 || m === 46 || Nt(m) ? (i = 1, o(m)) : c(m);
  }
  function o(m) {
    return m === 58 ? (e.consume(m), i = 0, l) : (m === 43 || m === 45 || m === 46 || Nt(m)) && i++ < 32 ? (e.consume(m), o) : (i = 0, c(m));
  }
  function l(m) {
    return m === 62 ? (e.exit("autolinkProtocol"), e.enter("autolinkMarker"), e.consume(m), e.exit("autolinkMarker"), e.exit("autolink"), t) :
    m === null || m === 32 || m === 60 || Mp(m) ? r(m) : (e.consume(m), l);
  }
  function c(m) {
    return m === 64 ? (e.consume(m), h) : QI(m) ? (e.consume(m), c) : r(m);
  }
  function h(m) {
    return Nt(m) ? p(m) : r(m);
  }
  function p(m) {
    return m === 46 ? (e.consume(m), i = 0, h) : m === 62 ? (e.exit("autolinkProtocol").type = "autolinkEmail", e.enter("autolinkMarker"), e.
    consume(m), e.exit("autolinkMarker"), e.exit("autolink"), t) : d(m);
  }
  function d(m) {
    if ((m === 45 || Nt(m)) && i++ < 63) {
      let D = m === 45 ? d : p;
      return e.consume(m), D;
    }
    return r(m);
  }
}
function wO(e, t, r) {
  return i;
  function i(u) {
    return Ce(u) ? Be(e, n, "linePrefix")(u) : n(u);
  }
  function n(u) {
    return u === null || ne(u) ? t(u) : r(u);
  }
}
function AO(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    if (a === 62) {
      let o = i.containerState;
      return o.open || (e.enter("blockQuote", {
        _container: !0
      }), o.open = !0), e.enter("blockQuotePrefix"), e.enter("blockQuoteMarker"), e.consume(a), e.exit("blockQuoteMarker"), u;
    }
    return r(a);
  }
  function u(a) {
    return Ce(a) ? (e.enter("blockQuotePrefixWhitespace"), e.consume(a), e.exit("blockQuotePrefixWhitespace"), e.exit("blockQuotePrefix"), t) :
    (e.exit("blockQuotePrefix"), t(a));
  }
}
function FO(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return Ce(a) ? Be(
      e,
      u,
      "linePrefix",
      i.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
    )(a) : u(a);
  }
  function u(a) {
    return e.attempt(tb, t, r)(a);
  }
}
function SO(e) {
  e.exit("blockQuote");
}
function _O(e, t, r) {
  return i;
  function i(u) {
    return e.enter("characterEscape"), e.enter("escapeMarker"), e.consume(u), e.exit("escapeMarker"), n;
  }
  function n(u) {
    return QE(u) ? (e.enter("characterEscapeValue"), e.consume(u), e.exit("characterEscapeValue"), e.exit("characterEscape"), t) : r(u);
  }
}
function kO(e, t, r) {
  let i = this, n = 0, u, a;
  return o;
  function o(p) {
    return e.enter("characterReference"), e.enter("characterReferenceMarker"), e.consume(p), e.exit("characterReferenceMarker"), l;
  }
  function l(p) {
    return p === 35 ? (e.enter("characterReferenceMarkerNumeric"), e.consume(p), e.exit("characterReferenceMarkerNumeric"), c) : (e.enter("c\
haracterReferenceValue"), u = 31, a = Nt, h(p));
  }
  function c(p) {
    return p === 88 || p === 120 ? (e.enter("characterReferenceMarkerHexadecimal"), e.consume(p), e.exit("characterReferenceMarkerHexadecima\
l"), e.enter("characterReferenceValue"), u = 6, a = ZI, h) : (e.enter("characterReferenceValue"), u = 7, a = jp, h(p));
  }
  function h(p) {
    if (p === 59 && n) {
      let d = e.exit("characterReferenceValue");
      return a === Nt && !Vs(i.sliceSerialize(d)) ? r(p) : (e.enter("characterReferenceMarker"), e.consume(p), e.exit("characterReferenceMar\
ker"), e.exit("characterReference"), t);
    }
    return a(p) && n++ < u ? (e.consume(p), h) : r(p);
  }
}
function BO(e, t, r) {
  let i = this, n = {
    tokenize: j,
    partial: !0
  }, u = 0, a = 0, o;
  return l;
  function l(w) {
    return c(w);
  }
  function c(w) {
    let A = i.events[i.events.length - 1];
    return u = A && A[1].type === "linePrefix" ? A[2].sliceSerialize(A[1], !0).length : 0, o = w, e.enter("codeFenced"), e.enter("codeFenced\
Fence"), e.enter("codeFencedFenceSequence"), h(w);
  }
  function h(w) {
    return w === o ? (a++, e.consume(w), h) : a < 3 ? r(w) : (e.exit("codeFencedFenceSequence"), Ce(w) ? Be(e, p, "whitespace")(w) : p(w));
  }
  function p(w) {
    return w === null || ne(w) ? (e.exit("codeFencedFence"), i.interrupt ? t(w) : e.check(oE, g, k)(w)) : (e.enter("codeFencedFenceInfo"), e.
    enter("chunkString", {
      contentType: "string"
    }), d(w));
  }
  function d(w) {
    return w === null || ne(w) ? (e.exit("chunkString"), e.exit("codeFencedFenceInfo"), p(w)) : Ce(w) ? (e.exit("chunkString"), e.exit("code\
FencedFenceInfo"), Be(e, m, "whitespace")(w)) : w === 96 && w === o ? r(w) : (e.consume(w), d);
  }
  function m(w) {
    return w === null || ne(w) ? p(w) : (e.enter("codeFencedFenceMeta"), e.enter("chunkString", {
      contentType: "string"
    }), D(w));
  }
  function D(w) {
    return w === null || ne(w) ? (e.exit("chunkString"), e.exit("codeFencedFenceMeta"), p(w)) : w === 96 && w === o ? r(w) : (e.consume(w), D);
  }
  function g(w) {
    return e.attempt(n, k, v)(w);
  }
  function v(w) {
    return e.enter("lineEnding"), e.consume(w), e.exit("lineEnding"), x;
  }
  function x(w) {
    return u > 0 && Ce(w) ? Be(
      e,
      C,
      "linePrefix",
      u + 1
    )(w) : C(w);
  }
  function C(w) {
    return w === null || ne(w) ? e.check(oE, g, k)(w) : (e.enter("codeFlowValue"), S(w));
  }
  function S(w) {
    return w === null || ne(w) ? (e.exit("codeFlowValue"), C(w)) : (e.consume(w), S);
  }
  function k(w) {
    return e.exit("codeFenced"), t(w);
  }
  function j(w, A, T) {
    let B = 0;
    return $;
    function $(R) {
      return w.enter("lineEnding"), w.consume(R), w.exit("lineEnding"), L;
    }
    function L(R) {
      return w.enter("codeFencedFence"), Ce(R) ? Be(
        w,
        V,
        "linePrefix",
        i.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
      )(R) : V(R);
    }
    function V(R) {
      return R === o ? (w.enter("codeFencedFenceSequence"), U(R)) : T(R);
    }
    function U(R) {
      return R === o ? (B++, w.consume(R), U) : B >= a ? (w.exit("codeFencedFenceSequence"), Ce(R) ? Be(w, X, "whitespace")(R) : X(R)) : T(R);
    }
    function X(R) {
      return R === null || ne(R) ? (w.exit("codeFencedFence"), A(R)) : T(R);
    }
  }
}
function TO(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return a === null ? r(a) : (e.enter("lineEnding"), e.consume(a), e.exit("lineEnding"), u);
  }
  function u(a) {
    return i.parser.lazy[i.now().line] ? r(a) : t(a);
  }
}
function IO(e, t, r) {
  let i = this;
  return n;
  function n(c) {
    return e.enter("codeIndented"), Be(e, u, "linePrefix", 5)(c);
  }
  function u(c) {
    let h = i.events[i.events.length - 1];
    return h && h[1].type === "linePrefix" && h[2].sliceSerialize(h[1], !0).length >= 4 ? a(c) : r(c);
  }
  function a(c) {
    return c === null ? l(c) : ne(c) ? e.attempt(PO, a, l)(c) : (e.enter("codeFlowValue"), o(c));
  }
  function o(c) {
    return c === null || ne(c) ? (e.exit("codeFlowValue"), a(c)) : (e.consume(c), o);
  }
  function l(c) {
    return e.exit("codeIndented"), t(c);
  }
}
function OO(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return i.parser.lazy[i.now().line] ? r(a) : ne(a) ? (e.enter("lineEnding"), e.consume(a), e.exit("lineEnding"), n) : Be(e, u, "linePrefi\
x", 5)(a);
  }
  function u(a) {
    let o = i.events[i.events.length - 1];
    return o && o[1].type === "linePrefix" && o[2].sliceSerialize(o[1], !0).length >= 4 ? t(a) : ne(a) ? n(a) : r(a);
  }
}
function NO(e) {
  let t = e.length - 4, r = 3, i, n;
  if ((e[r][1].type === "lineEnding" || e[r][1].type === "space") && (e[t][1].type === "lineEnding" || e[t][1].type === "space")) {
    for (i = r; ++i < t; )
      if (e[i][1].type === "codeTextData") {
        e[r][1].type = "codeTextPadding", e[t][1].type = "codeTextPadding", r += 2, t -= 2;
        break;
      }
  }
  for (i = r - 1, t++; ++i <= t; )
    n === void 0 ? i !== t && e[i][1].type !== "lineEnding" && (n = i) : (i === t || e[i][1].type === "lineEnding") && (e[n][1].type = "code\
TextData", i !== n + 2 && (e[n][1].end = e[i - 1][1].end, e.splice(n + 2, i - n - 2), t -= i - n - 2, i = n + 2), n = void 0);
  return e;
}
function LO(e) {
  return e !== 96 || this.events[this.events.length - 1][1].type === "characterEscape";
}
function MO(e, t, r) {
  let i = this, n = 0, u, a;
  return o;
  function o(d) {
    return e.enter("codeText"), e.enter("codeTextSequence"), l(d);
  }
  function l(d) {
    return d === 96 ? (e.consume(d), n++, l) : (e.exit("codeTextSequence"), c(d));
  }
  function c(d) {
    return d === null ? r(d) : d === 32 ? (e.enter("space"), e.consume(d), e.exit("space"), c) : d === 96 ? (a = e.enter("codeTextSequence"),
    u = 0, p(d)) : ne(d) ? (e.enter("lineEnding"), e.consume(d), e.exit("lineEnding"), c) : (e.enter("codeTextData"), h(d));
  }
  function h(d) {
    return d === null || d === 32 || d === 96 || ne(d) ? (e.exit("codeTextData"), c(d)) : (e.consume(d), h);
  }
  function p(d) {
    return d === 96 ? (e.consume(d), u++, p) : u === n ? (e.exit("codeTextSequence"), e.exit("codeText"), t(d)) : (a.type = "codeTextData", h(
    d));
  }
}
function nb(e) {
  let t = {}, r = -1, i, n, u, a, o, l, c;
  for (; ++r < e.length; ) {
    for (; r in t; )
      r = t[r];
    if (i = e[r], r && i[1].type === "chunkFlow" && e[r - 1][1].type === "listItemPrefix" && (l = i[1]._tokenizer.events, u = 0, u < l.length &&
    l[u][1].type === "lineEndingBlank" && (u += 2), u < l.length && l[u][1].type === "content"))
      for (; ++u < l.length && l[u][1].type !== "content"; )
        l[u][1].type === "chunkText" && (l[u][1]._isInFirstContentOfListItem = !0, u++);
    if (i[0] === "enter")
      i[1].contentType && (Object.assign(t, jO(e, r)), r = t[r], c = !0);
    else if (i[1]._container) {
      for (u = r, n = void 0; u-- && (a = e[u], a[1].type === "lineEnding" || a[1].type === "lineEndingBlank"); )
        a[0] === "enter" && (n && (e[n][1].type = "lineEndingBlank"), a[1].type = "lineEnding", n = u);
      n && (i[1].end = Object.assign({}, e[n][1].start), o = e.slice(n, r), o.unshift(i), Ir(e, n, r - n + 1, o));
    }
  }
  return !c;
}
function jO(e, t) {
  let r = e[t][1], i = e[t][2], n = t - 1, u = [], a = r._tokenizer || i.parser[r.contentType](r.start), o = a.events, l = [], c = {}, h, p,
  d = -1, m = r, D = 0, g = 0, v = [g];
  for (; m; ) {
    for (; e[++n][1] !== m; )
      ;
    u.push(n), m._tokenizer || (h = i.sliceStream(m), m.next || h.push(null), p && a.defineSkip(m.start), m._isInFirstContentOfListItem && (a.
    _gfmTasklistFirstContentOfListItem = !0), a.write(h), m._isInFirstContentOfListItem && (a._gfmTasklistFirstContentOfListItem = void 0)),
    p = m, m = m.next;
  }
  for (m = r; ++d < o.length; )
    // Find a void token that includes a break.
    o[d][0] === "exit" && o[d - 1][0] === "enter" && o[d][1].type === o[d - 1][1].type && o[d][1].start.line !== o[d][1].end.line && (g = d +
    1, v.push(g), m._tokenizer = void 0, m.previous = void 0, m = m.next);
  for (a.events = [], m ? (m._tokenizer = void 0, m.previous = void 0) : v.pop(), d = v.length; d--; ) {
    let x = o.slice(v[d], v[d + 1]), C = u.pop();
    l.unshift([C, C + x.length - 1]), Ir(e, C, 2, x);
  }
  for (d = -1; ++d < l.length; )
    c[D + l[d][0]] = D + l[d][1], D += l[d][1] - l[d][0] - 1;
  return c;
}
function VO(e) {
  return nb(e), e;
}
function UO(e, t) {
  let r;
  return i;
  function i(o) {
    return e.enter("content"), r = e.enter("chunkContent", {
      contentType: "content"
    }), n(o);
  }
  function n(o) {
    return o === null ? u(o) : ne(o) ? e.check(
      $O,
      a,
      u
    )(o) : (e.consume(o), n);
  }
  function u(o) {
    return e.exit("chunkContent"), e.exit("content"), t(o);
  }
  function a(o) {
    return e.consume(o), e.exit("chunkContent"), r.next = e.enter("chunkContent", {
      contentType: "content",
      previous: r
    }), r = r.next, n;
  }
}
function zO(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return e.exit("chunkContent"), e.enter("lineEnding"), e.consume(a), e.exit("lineEnding"), Be(e, u, "linePrefix");
  }
  function u(a) {
    if (a === null || ne(a))
      return r(a);
    let o = i.events[i.events.length - 1];
    return !i.parser.constructs.disable.null.includes("codeIndented") && o && o[1].type === "linePrefix" && o[2].sliceSerialize(o[1], !0).length >=
    4 ? t(a) : e.interrupt(i.parser.constructs.flow, r, t)(a);
  }
}
function sb(e, t, r, i, n, u, a, o, l) {
  let c = l || Number.POSITIVE_INFINITY, h = 0;
  return p;
  function p(x) {
    return x === 60 ? (e.enter(i), e.enter(n), e.enter(u), e.consume(x), e.exit(u), d) : x === null || x === 32 || x === 41 || Mp(x) ? r(x) :
    (e.enter(i), e.enter(a), e.enter(o), e.enter("chunkString", {
      contentType: "string"
    }), g(x));
  }
  function d(x) {
    return x === 62 ? (e.enter(u), e.consume(x), e.exit(u), e.exit(n), e.exit(i), t) : (e.enter(o), e.enter("chunkString", {
      contentType: "string"
    }), m(x));
  }
  function m(x) {
    return x === 62 ? (e.exit("chunkString"), e.exit(o), d(x)) : x === null || x === 60 || ne(x) ? r(x) : (e.consume(x), x === 92 ? D : m);
  }
  function D(x) {
    return x === 60 || x === 62 || x === 92 ? (e.consume(x), m) : m(x);
  }
  function g(x) {
    return !h && (x === null || x === 41 || Ke(x)) ? (e.exit("chunkString"), e.exit(o), e.exit(a), e.exit(i), t(x)) : h < c && x === 40 ? (e.
    consume(x), h++, g) : x === 41 ? (e.consume(x), h--, g) : x === null || x === 32 || x === 40 || Mp(x) ? r(x) : (e.consume(x), x === 92 ?
    v : g);
  }
  function v(x) {
    return x === 40 || x === 41 || x === 92 ? (e.consume(x), g) : g(x);
  }
}
function ub(e, t, r, i, n, u) {
  let a = this, o = 0, l;
  return c;
  function c(m) {
    return e.enter(i), e.enter(n), e.consume(m), e.exit(n), e.enter(u), h;
  }
  function h(m) {
    return o > 999 || m === null || m === 91 || m === 93 && !l || // To do: remove in the future once we’ve switched from
    // `micromark-extension-footnote` to `micromark-extension-gfm-footnote`,
    // which doesn’t need this.
    // Hidden footnotes hook.
    /* c8 ignore next 3 */
    m === 94 && !o && "_hiddenFootnoteSupport" in a.parser.constructs ? r(m) : m === 93 ? (e.exit(u), e.enter(n), e.consume(m), e.exit(n), e.
    exit(i), t) : ne(m) ? (e.enter("lineEnding"), e.consume(m), e.exit("lineEnding"), h) : (e.enter("chunkString", {
      contentType: "string"
    }), p(m));
  }
  function p(m) {
    return m === null || m === 91 || m === 93 || ne(m) || o++ > 999 ? (e.exit("chunkString"), h(m)) : (e.consume(m), l || (l = !Ce(m)), m ===
    92 ? d : p);
  }
  function d(m) {
    return m === 91 || m === 92 || m === 93 ? (e.consume(m), o++, p) : p(m);
  }
}
function ab(e, t, r, i, n, u) {
  let a;
  return o;
  function o(d) {
    return d === 34 || d === 39 || d === 40 ? (e.enter(i), e.enter(n), e.consume(d), e.exit(n), a = d === 40 ? 41 : d, l) : r(d);
  }
  function l(d) {
    return d === a ? (e.enter(n), e.consume(d), e.exit(n), e.exit(i), t) : (e.enter(u), c(d));
  }
  function c(d) {
    return d === a ? (e.exit(u), l(a)) : d === null ? r(d) : ne(d) ? (e.enter("lineEnding"), e.consume(d), e.exit("lineEnding"), Be(e, c, "l\
inePrefix")) : (e.enter("chunkString", {
      contentType: "string"
    }), h(d));
  }
  function h(d) {
    return d === a || d === null || ne(d) ? (e.exit("chunkString"), c(d)) : (e.consume(d), d === 92 ? p : h);
  }
  function p(d) {
    return d === a || d === 92 ? (e.consume(d), h) : h(d);
  }
}
function qs(e, t) {
  let r;
  return i;
  function i(n) {
    return ne(n) ? (e.enter("lineEnding"), e.consume(n), e.exit("lineEnding"), r = !0, i) : Ce(n) ? Be(
      e,
      i,
      r ? "linePrefix" : "lineSuffix"
    )(n) : t(n);
  }
}
function zn(e) {
  return e.replace(/[\t\n\r ]+/g, " ").replace(/^ | $/g, "").toLowerCase().toUpperCase();
}
function JO(e, t, r) {
  let i = this, n;
  return u;
  function u(m) {
    return e.enter("definition"), a(m);
  }
  function a(m) {
    return ub.call(
      i,
      e,
      o,
      // Note: we don’t need to reset the way `markdown-rs` does.
      r,
      "definitionLabel",
      "definitionLabelMarker",
      "definitionLabelString"
    )(m);
  }
  function o(m) {
    return n = zn(
      i.sliceSerialize(i.events[i.events.length - 1][1]).slice(1, -1)
    ), m === 58 ? (e.enter("definitionMarker"), e.consume(m), e.exit("definitionMarker"), l) : r(m);
  }
  function l(m) {
    return Ke(m) ? qs(e, c)(m) : c(m);
  }
  function c(m) {
    return sb(
      e,
      h,
      // Note: we don’t need to reset the way `markdown-rs` does.
      r,
      "definitionDestination",
      "definitionDestinationLiteral",
      "definitionDestinationLiteralMarker",
      "definitionDestinationRaw",
      "definitionDestinationString"
    )(m);
  }
  function h(m) {
    return e.attempt(WO, p, p)(m);
  }
  function p(m) {
    return Ce(m) ? Be(e, d, "whitespace")(m) : d(m);
  }
  function d(m) {
    return m === null || ne(m) ? (e.exit("definition"), i.parser.defined.push(n), t(m)) : r(m);
  }
}
function GO(e, t, r) {
  return i;
  function i(o) {
    return Ke(o) ? qs(e, n)(o) : r(o);
  }
  function n(o) {
    return ab(
      e,
      u,
      r,
      "definitionTitle",
      "definitionTitleMarker",
      "definitionTitleString"
    )(o);
  }
  function u(o) {
    return Ce(o) ? Be(e, a, "whitespace")(o) : a(o);
  }
  function a(o) {
    return o === null || ne(o) ? t(o) : r(o);
  }
}
function YO(e, t, r) {
  return i;
  function i(u) {
    return e.enter("hardBreakEscape"), e.consume(u), n;
  }
  function n(u) {
    return ne(u) ? (e.exit("hardBreakEscape"), t(u)) : r(u);
  }
}
function QO(e, t) {
  let r = e.length - 2, i = 3, n, u;
  return e[i][1].type === "whitespace" && (i += 2), r - 2 > i && e[r][1].type === "whitespace" && (r -= 2), e[r][1].type === "atxHeadingSequ\
ence" && (i === r - 1 || r - 4 > i && e[r - 2][1].type === "whitespace") && (r -= i + 1 === r ? 2 : 4), r > i && (n = {
    type: "atxHeadingText",
    start: e[i][1].start,
    end: e[r][1].end
  }, u = {
    type: "chunkText",
    start: e[i][1].start,
    end: e[r][1].end,
    contentType: "text"
  }, Ir(e, i, r - i + 1, [
    ["enter", n, t],
    ["enter", u, t],
    ["exit", u, t],
    ["exit", n, t]
  ])), e;
}
function ZO(e, t, r) {
  let i = 0;
  return n;
  function n(h) {
    return e.enter("atxHeading"), u(h);
  }
  function u(h) {
    return e.enter("atxHeadingSequence"), a(h);
  }
  function a(h) {
    return h === 35 && i++ < 6 ? (e.consume(h), a) : h === null || Ke(h) ? (e.exit("atxHeadingSequence"), o(h)) : r(h);
  }
  function o(h) {
    return h === 35 ? (e.enter("atxHeadingSequence"), l(h)) : h === null || ne(h) ? (e.exit("atxHeading"), t(h)) : Ce(h) ? Be(e, o, "whitesp\
ace")(h) : (e.enter("atxHeadingText"), c(h));
  }
  function l(h) {
    return h === 35 ? (e.consume(h), l) : (e.exit("atxHeadingSequence"), o(h));
  }
  function c(h) {
    return h === null || h === 35 || Ke(h) ? (e.exit("atxHeadingText"), o(h)) : (e.consume(h), c);
  }
}
function n5(e) {
  let t = e.length;
  for (; t-- && !(e[t][0] === "enter" && e[t][1].type === "htmlFlow"); )
    ;
  return t > 1 && e[t - 2][1].type === "linePrefix" && (e[t][1].start = e[t - 2][1].start, e[t + 1][1].start = e[t - 2][1].start, e.splice(t -
  2, 2)), e;
}
function s5(e, t, r) {
  let i = this, n, u, a, o, l;
  return c;
  function c(M) {
    return h(M);
  }
  function h(M) {
    return e.enter("htmlFlow"), e.enter("htmlFlowData"), e.consume(M), p;
  }
  function p(M) {
    return M === 33 ? (e.consume(M), d) : M === 47 ? (e.consume(M), u = !0, g) : M === 63 ? (e.consume(M), n = 3, i.interrupt ? t : O) : dr(
    M) ? (e.consume(M), a = String.fromCharCode(M), v) : r(M);
  }
  function d(M) {
    return M === 45 ? (e.consume(M), n = 2, m) : M === 91 ? (e.consume(M), n = 5, o = 0, D) : dr(M) ? (e.consume(M), n = 4, i.interrupt ? t :
    O) : r(M);
  }
  function m(M) {
    return M === 45 ? (e.consume(M), i.interrupt ? t : O) : r(M);
  }
  function D(M) {
    let we = "CDATA[";
    return M === we.charCodeAt(o++) ? (e.consume(M), o === we.length ? i.interrupt ? t : V : D) : r(M);
  }
  function g(M) {
    return dr(M) ? (e.consume(M), a = String.fromCharCode(M), v) : r(M);
  }
  function v(M) {
    if (M === null || M === 47 || M === 62 || Ke(M)) {
      let we = M === 47, Te = a.toLowerCase();
      return !we && !u && cE.includes(Te) ? (n = 1, i.interrupt ? t(M) : V(M)) : e5.includes(a.toLowerCase()) ? (n = 6, we ? (e.consume(M), x) :
      i.interrupt ? t(M) : V(M)) : (n = 7, i.interrupt && !i.parser.lazy[i.now().line] ? r(M) : u ? C(M) : S(M));
    }
    return M === 45 || Nt(M) ? (e.consume(M), a += String.fromCharCode(M), v) : r(M);
  }
  function x(M) {
    return M === 62 ? (e.consume(M), i.interrupt ? t : V) : r(M);
  }
  function C(M) {
    return Ce(M) ? (e.consume(M), C) : $(M);
  }
  function S(M) {
    return M === 47 ? (e.consume(M), $) : M === 58 || M === 95 || dr(M) ? (e.consume(M), k) : Ce(M) ? (e.consume(M), S) : $(M);
  }
  function k(M) {
    return M === 45 || M === 46 || M === 58 || M === 95 || Nt(M) ? (e.consume(M), k) : j(M);
  }
  function j(M) {
    return M === 61 ? (e.consume(M), w) : Ce(M) ? (e.consume(M), j) : S(M);
  }
  function w(M) {
    return M === null || M === 60 || M === 61 || M === 62 || M === 96 ? r(M) : M === 34 || M === 39 ? (e.consume(M), l = M, A) : Ce(M) ? (e.
    consume(M), w) : T(M);
  }
  function A(M) {
    return M === l ? (e.consume(M), l = null, B) : M === null || ne(M) ? r(M) : (e.consume(M), A);
  }
  function T(M) {
    return M === null || M === 34 || M === 39 || M === 47 || M === 60 || M === 61 || M === 62 || M === 96 || Ke(M) ? j(M) : (e.consume(M), T);
  }
  function B(M) {
    return M === 47 || M === 62 || Ce(M) ? S(M) : r(M);
  }
  function $(M) {
    return M === 62 ? (e.consume(M), L) : r(M);
  }
  function L(M) {
    return M === null || ne(M) ? V(M) : Ce(M) ? (e.consume(M), L) : r(M);
  }
  function V(M) {
    return M === 45 && n === 2 ? (e.consume(M), N) : M === 60 && n === 1 ? (e.consume(M), z) : M === 62 && n === 4 ? (e.consume(M), ue) : M ===
    63 && n === 3 ? (e.consume(M), O) : M === 93 && n === 5 ? (e.consume(M), ee) : ne(M) && (n === 6 || n === 7) ? (e.exit("htmlFlowData"), e.
    check(
      r5,
      ke,
      U
    )(M)) : M === null || ne(M) ? (e.exit("htmlFlowData"), U(M)) : (e.consume(M), V);
  }
  function U(M) {
    return e.check(
      i5,
      X,
      ke
    )(M);
  }
  function X(M) {
    return e.enter("lineEnding"), e.consume(M), e.exit("lineEnding"), R;
  }
  function R(M) {
    return M === null || ne(M) ? U(M) : (e.enter("htmlFlowData"), V(M));
  }
  function N(M) {
    return M === 45 ? (e.consume(M), O) : V(M);
  }
  function z(M) {
    return M === 47 ? (e.consume(M), a = "", Y) : V(M);
  }
  function Y(M) {
    if (M === 62) {
      let we = a.toLowerCase();
      return cE.includes(we) ? (e.consume(M), ue) : V(M);
    }
    return dr(M) && a.length < 8 ? (e.consume(M), a += String.fromCharCode(M), Y) : V(M);
  }
  function ee(M) {
    return M === 93 ? (e.consume(M), O) : V(M);
  }
  function O(M) {
    return M === 62 ? (e.consume(M), ue) : M === 45 && n === 2 ? (e.consume(M), O) : V(M);
  }
  function ue(M) {
    return M === null || ne(M) ? (e.exit("htmlFlowData"), ke(M)) : (e.consume(M), ue);
  }
  function ke(M) {
    return e.exit("htmlFlow"), t(M);
  }
}
function u5(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return ne(a) ? (e.enter("lineEnding"), e.consume(a), e.exit("lineEnding"), u) : r(a);
  }
  function u(a) {
    return i.parser.lazy[i.now().line] ? r(a) : t(a);
  }
}
function a5(e, t, r) {
  return i;
  function i(n) {
    return e.enter("lineEnding"), e.consume(n), e.exit("lineEnding"), e.attempt(zs, t, r);
  }
}
function l5(e, t, r) {
  let i = this, n, u, a;
  return o;
  function o(O) {
    return e.enter("htmlText"), e.enter("htmlTextData"), e.consume(O), l;
  }
  function l(O) {
    return O === 33 ? (e.consume(O), c) : O === 47 ? (e.consume(O), j) : O === 63 ? (e.consume(O), S) : dr(O) ? (e.consume(O), T) : r(O);
  }
  function c(O) {
    return O === 45 ? (e.consume(O), h) : O === 91 ? (e.consume(O), u = 0, D) : dr(O) ? (e.consume(O), C) : r(O);
  }
  function h(O) {
    return O === 45 ? (e.consume(O), m) : r(O);
  }
  function p(O) {
    return O === null ? r(O) : O === 45 ? (e.consume(O), d) : ne(O) ? (a = p, z(O)) : (e.consume(O), p);
  }
  function d(O) {
    return O === 45 ? (e.consume(O), m) : p(O);
  }
  function m(O) {
    return O === 62 ? N(O) : O === 45 ? d(O) : p(O);
  }
  function D(O) {
    let ue = "CDATA[";
    return O === ue.charCodeAt(u++) ? (e.consume(O), u === ue.length ? g : D) : r(O);
  }
  function g(O) {
    return O === null ? r(O) : O === 93 ? (e.consume(O), v) : ne(O) ? (a = g, z(O)) : (e.consume(O), g);
  }
  function v(O) {
    return O === 93 ? (e.consume(O), x) : g(O);
  }
  function x(O) {
    return O === 62 ? N(O) : O === 93 ? (e.consume(O), x) : g(O);
  }
  function C(O) {
    return O === null || O === 62 ? N(O) : ne(O) ? (a = C, z(O)) : (e.consume(O), C);
  }
  function S(O) {
    return O === null ? r(O) : O === 63 ? (e.consume(O), k) : ne(O) ? (a = S, z(O)) : (e.consume(O), S);
  }
  function k(O) {
    return O === 62 ? N(O) : S(O);
  }
  function j(O) {
    return dr(O) ? (e.consume(O), w) : r(O);
  }
  function w(O) {
    return O === 45 || Nt(O) ? (e.consume(O), w) : A(O);
  }
  function A(O) {
    return ne(O) ? (a = A, z(O)) : Ce(O) ? (e.consume(O), A) : N(O);
  }
  function T(O) {
    return O === 45 || Nt(O) ? (e.consume(O), T) : O === 47 || O === 62 || Ke(O) ? B(O) : r(O);
  }
  function B(O) {
    return O === 47 ? (e.consume(O), N) : O === 58 || O === 95 || dr(O) ? (e.consume(O), $) : ne(O) ? (a = B, z(O)) : Ce(O) ? (e.consume(O),
    B) : N(O);
  }
  function $(O) {
    return O === 45 || O === 46 || O === 58 || O === 95 || Nt(O) ? (e.consume(O), $) : L(O);
  }
  function L(O) {
    return O === 61 ? (e.consume(O), V) : ne(O) ? (a = L, z(O)) : Ce(O) ? (e.consume(O), L) : B(O);
  }
  function V(O) {
    return O === null || O === 60 || O === 61 || O === 62 || O === 96 ? r(O) : O === 34 || O === 39 ? (e.consume(O), n = O, U) : ne(O) ? (a =
    V, z(O)) : Ce(O) ? (e.consume(O), V) : (e.consume(O), X);
  }
  function U(O) {
    return O === n ? (e.consume(O), n = void 0, R) : O === null ? r(O) : ne(O) ? (a = U, z(O)) : (e.consume(O), U);
  }
  function X(O) {
    return O === null || O === 34 || O === 39 || O === 60 || O === 61 || O === 96 ? r(O) : O === 47 || O === 62 || Ke(O) ? B(O) : (e.consume(
    O), X);
  }
  function R(O) {
    return O === 47 || O === 62 || Ke(O) ? B(O) : r(O);
  }
  function N(O) {
    return O === 62 ? (e.consume(O), e.exit("htmlTextData"), e.exit("htmlText"), t) : r(O);
  }
  function z(O) {
    return e.exit("htmlTextData"), e.enter("lineEnding"), e.consume(O), e.exit("lineEnding"), Y;
  }
  function Y(O) {
    return Ce(O) ? Be(
      e,
      ee,
      "linePrefix",
      i.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
    )(O) : ee(O);
  }
  function ee(O) {
    return e.enter("htmlTextData"), a(O);
  }
}
function f5(e) {
  let t = -1;
  for (; ++t < e.length; ) {
    let r = e[t][1];
    (r.type === "labelImage" || r.type === "labelLink" || r.type === "labelEnd") && (e.splice(t + 1, r.type === "labelImage" ? 4 : 2), r.type =
    "data", t++);
  }
  return e;
}
function d5(e, t) {
  let r = e.length, i = 0, n, u, a, o;
  for (; r--; )
    if (n = e[r][1], u) {
      if (n.type === "link" || n.type === "labelLink" && n._inactive)
        break;
      e[r][0] === "enter" && n.type === "labelLink" && (n._inactive = !0);
    } else if (a) {
      if (e[r][0] === "enter" && (n.type === "labelImage" || n.type === "labelLink") && !n._balanced && (u = r, n.type !== "labelLink")) {
        i = 2;
        break;
      }
    } else n.type === "labelEnd" && (a = r);
  let l = {
    type: e[u][1].type === "labelLink" ? "link" : "image",
    start: Object.assign({}, e[u][1].start),
    end: Object.assign({}, e[e.length - 1][1].end)
  }, c = {
    type: "label",
    start: Object.assign({}, e[u][1].start),
    end: Object.assign({}, e[a][1].end)
  }, h = {
    type: "labelText",
    start: Object.assign({}, e[u + i + 2][1].end),
    end: Object.assign({}, e[a - 2][1].start)
  };
  return o = [
    ["enter", l, t],
    ["enter", c, t]
  ], o = Qt(o, e.slice(u + 1, u + i + 3)), o = Qt(o, [["enter", h, t]]), o = Qt(
    o,
    zp(
      t.parser.constructs.insideSpan.null,
      e.slice(u + i + 4, a - 3),
      t
    )
  ), o = Qt(o, [
    ["exit", h, t],
    e[a - 2],
    e[a - 1],
    ["exit", c, t]
  ]), o = Qt(o, e.slice(a + 1)), o = Qt(o, [["exit", l, t]]), Ir(e, u, e.length, o), e;
}
function m5(e, t, r) {
  let i = this, n = i.events.length, u, a;
  for (; n--; )
    if ((i.events[n][1].type === "labelImage" || i.events[n][1].type === "labelLink") && !i.events[n][1]._balanced) {
      u = i.events[n][1];
      break;
    }
  return o;
  function o(d) {
    return u ? u._inactive ? p(d) : (a = i.parser.defined.includes(
      zn(
        i.sliceSerialize({
          start: u.end,
          end: i.now()
        })
      )
    ), e.enter("labelEnd"), e.enter("labelMarker"), e.consume(d), e.exit("labelMarker"), e.exit("labelEnd"), l) : r(d);
  }
  function l(d) {
    return d === 40 ? e.attempt(
      c5,
      h,
      a ? h : p
    )(d) : d === 91 ? e.attempt(
      h5,
      h,
      a ? c : p
    )(d) : a ? h(d) : p(d);
  }
  function c(d) {
    return e.attempt(
      p5,
      h,
      p
    )(d);
  }
  function h(d) {
    return t(d);
  }
  function p(d) {
    return u._balanced = !0, r(d);
  }
}
function D5(e, t, r) {
  return i;
  function i(p) {
    return e.enter("resource"), e.enter("resourceMarker"), e.consume(p), e.exit("resourceMarker"), n;
  }
  function n(p) {
    return Ke(p) ? qs(e, u)(p) : u(p);
  }
  function u(p) {
    return p === 41 ? h(p) : sb(
      e,
      a,
      o,
      "resourceDestination",
      "resourceDestinationLiteral",
      "resourceDestinationLiteralMarker",
      "resourceDestinationRaw",
      "resourceDestinationString",
      32
    )(p);
  }
  function a(p) {
    return Ke(p) ? qs(e, l)(p) : h(p);
  }
  function o(p) {
    return r(p);
  }
  function l(p) {
    return p === 34 || p === 39 || p === 40 ? ab(
      e,
      c,
      r,
      "resourceTitle",
      "resourceTitleMarker",
      "resourceTitleString"
    )(p) : h(p);
  }
  function c(p) {
    return Ke(p) ? qs(e, h)(p) : h(p);
  }
  function h(p) {
    return p === 41 ? (e.enter("resourceMarker"), e.consume(p), e.exit("resourceMarker"), e.exit("resource"), t) : r(p);
  }
}
function g5(e, t, r) {
  let i = this;
  return n;
  function n(o) {
    return ub.call(
      i,
      e,
      u,
      a,
      "reference",
      "referenceMarker",
      "referenceString"
    )(o);
  }
  function u(o) {
    return i.parser.defined.includes(
      zn(
        i.sliceSerialize(i.events[i.events.length - 1][1]).slice(1, -1)
      )
    ) ? t(o) : r(o);
  }
  function a(o) {
    return r(o);
  }
}
function x5(e, t, r) {
  return i;
  function i(u) {
    return e.enter("reference"), e.enter("referenceMarker"), e.consume(u), e.exit("referenceMarker"), n;
  }
  function n(u) {
    return u === 93 ? (e.enter("referenceMarker"), e.consume(u), e.exit("referenceMarker"), e.exit("reference"), t) : r(u);
  }
}
function E5(e, t, r) {
  let i = this;
  return n;
  function n(o) {
    return e.enter("labelImage"), e.enter("labelImageMarker"), e.consume(o), e.exit("labelImageMarker"), u;
  }
  function u(o) {
    return o === 91 ? (e.enter("labelMarker"), e.consume(o), e.exit("labelMarker"), e.exit("labelImage"), a) : r(o);
  }
  function a(o) {
    return o === 94 && "_hiddenFootnoteSupport" in i.parser.constructs ? r(o) : t(o);
  }
}
function v5(e, t, r) {
  let i = this;
  return n;
  function n(a) {
    return e.enter("labelLink"), e.enter("labelMarker"), e.consume(a), e.exit("labelMarker"), e.exit("labelLink"), u;
  }
  function u(a) {
    return a === 94 && "_hiddenFootnoteSupport" in i.parser.constructs ? r(a) : t(a);
  }
}
function C5(e, t) {
  return r;
  function r(i) {
    return e.enter("lineEnding"), e.consume(i), e.exit("lineEnding"), Be(e, t, "linePrefix");
  }
}
function w5(e, t, r) {
  let i = 0, n;
  return u;
  function u(c) {
    return e.enter("thematicBreak"), a(c);
  }
  function a(c) {
    return n = c, o(c);
  }
  function o(c) {
    return c === n ? (e.enter("thematicBreakSequence"), l(c)) : i >= 3 && (c === null || ne(c)) ? (e.exit("thematicBreak"), t(c)) : r(c);
  }
  function l(c) {
    return c === n ? (e.consume(c), i++, l) : (e.exit("thematicBreakSequence"), Ce(c) ? Be(e, o, "whitespace")(c) : o(c));
  }
}
function S5(e, t, r) {
  let i = this, n = i.events[i.events.length - 1], u = n && n[1].type === "linePrefix" ? n[2].sliceSerialize(n[1], !0).length : 0, a = 0;
  return o;
  function o(m) {
    let D = i.containerState.type || (m === 42 || m === 43 || m === 45 ? "listUnordered" : "listOrdered");
    if (D === "listUnordered" ? !i.containerState.marker || m === i.containerState.marker : jp(m)) {
      if (i.containerState.type || (i.containerState.type = D, e.enter(D, {
        _container: !0
      })), D === "listUnordered")
        return e.enter("listItemPrefix"), m === 42 || m === 45 ? e.check(Va, r, c)(m) : c(m);
      if (!i.interrupt || m === 49)
        return e.enter("listItemPrefix"), e.enter("listItemValue"), l(m);
    }
    return r(m);
  }
  function l(m) {
    return jp(m) && ++a < 10 ? (e.consume(m), l) : (!i.interrupt || a < 2) && (i.containerState.marker ? m === i.containerState.marker : m ===
    41 || m === 46) ? (e.exit("listItemValue"), c(m)) : r(m);
  }
  function c(m) {
    return e.enter("listItemMarker"), e.consume(m), e.exit("listItemMarker"), i.containerState.marker = i.containerState.marker || m, e.check(
      zs,
      // Can’t be empty when interrupting.
      i.interrupt ? r : h,
      e.attempt(
        A5,
        d,
        p
      )
    );
  }
  function h(m) {
    return i.containerState.initialBlankLine = !0, u++, d(m);
  }
  function p(m) {
    return Ce(m) ? (e.enter("listItemPrefixWhitespace"), e.consume(m), e.exit("listItemPrefixWhitespace"), d) : r(m);
  }
  function d(m) {
    return i.containerState.size = u + i.sliceSerialize(e.exit("listItemPrefix"), !0).length, t(m);
  }
}
function _5(e, t, r) {
  let i = this;
  return i.containerState._closeFlow = void 0, e.check(zs, n, u);
  function n(o) {
    return i.containerState.furtherBlankLines = i.containerState.furtherBlankLines || i.containerState.initialBlankLine, Be(
      e,
      t,
      "listItemIndent",
      i.containerState.size + 1
    )(o);
  }
  s(n, "onBlank");
  function u(o) {
    return i.containerState.furtherBlankLines || !Ce(o) ? (i.containerState.furtherBlankLines = void 0, i.containerState.initialBlankLine = void 0,
    a(o)) : (i.containerState.furtherBlankLines = void 0, i.containerState.initialBlankLine = void 0, e.attempt(F5, t, a)(o));
  }
  s(u, "notBlank");
  function a(o) {
    return i.containerState._closeFlow = !0, i.interrupt = void 0, Be(
      e,
      e.attempt(_t, t, r),
      "linePrefix",
      i.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
    )(o);
  }
  s(a, "notInCurrentItem");
}
function k5(e, t, r) {
  let i = this;
  return Be(
    e,
    n,
    "listItemIndent",
    i.containerState.size + 1
  );
  function n(u) {
    let a = i.events[i.events.length - 1];
    return a && a[1].type === "listItemIndent" && a[2].sliceSerialize(a[1], !0).length === i.containerState.size ? t(u) : r(u);
  }
}
function B5(e) {
  e.exit(this.containerState.type);
}
function T5(e, t, r) {
  let i = this;
  return Be(
    e,
    n,
    "listItemPrefixWhitespace",
    i.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 5
  );
  function n(u) {
    let a = i.events[i.events.length - 1];
    return !Ce(u) && a && a[1].type === "listItemPrefixWhitespace" ? t(u) : r(u);
  }
}
function P5(e, t) {
  let r = e.length, i, n, u;
  for (; r--; )
    if (e[r][0] === "enter") {
      if (e[r][1].type === "content") {
        i = r;
        break;
      }
      e[r][1].type === "paragraph" && (n = r);
    } else
      e[r][1].type === "content" && e.splice(r, 1), !u && e[r][1].type === "definition" && (u = r);
  let a = {
    type: "setextHeading",
    start: Object.assign({}, e[n][1].start),
    end: Object.assign({}, e[e.length - 1][1].end)
  };
  return e[n][1].type = "setextHeadingText", u ? (e.splice(n, 0, ["enter", a, t]), e.splice(u + 1, 0, ["exit", e[i][1], t]), e[i][1].end = Object.
  assign({}, e[u][1].end)) : e[i][1] = a, e.push(["exit", a, t]), e;
}
function I5(e, t, r) {
  let i = this, n;
  return u;
  function u(c) {
    let h = i.events.length, p;
    for (; h--; )
      if (i.events[h][1].type !== "lineEnding" && i.events[h][1].type !== "linePrefix" && i.events[h][1].type !== "content") {
        p = i.events[h][1].type === "paragraph";
        break;
      }
    return !i.parser.lazy[i.now().line] && (i.interrupt || p) ? (e.enter("setextHeadingLine"), n = c, a(c)) : r(c);
  }
  function a(c) {
    return e.enter("setextHeadingLineSequence"), o(c);
  }
  function o(c) {
    return c === n ? (e.consume(c), o) : (e.exit("setextHeadingLineSequence"), Ce(c) ? Be(e, l, "lineSuffix")(c) : l(c));
  }
  function l(c) {
    return c === null || ne(c) ? (e.exit("setextHeadingLine"), t(c)) : r(c);
  }
}
function N5(e) {
  let t = {
    tokenize: n,
    concrete: !0
  };
  if (!e || !e.acorn || !e.acorn.parse)
    throw new Error("Expected an `acorn` instance passed in as `options.acorn`");
  let r = e.acorn, i = Object.assign({
    ecmaVersion: 2024,
    sourceType: "module"
  }, e.acornOptions, {
    locations: !0
  });
  return {
    flow: {
      101: t,
      105: t
    }
  };
  function n(u, a, o) {
    let l = this, c = l.parser.definedModuleSpecifiers || (l.parser.definedModuleSpecifiers = []), h = this.events.length + 1, p = "";
    return l.interrupt ? o : d;
    function d(C) {
      return l.now().column > 1 ? o(C) : (u.enter("mdxjsEsm"), u.enter("mdxjsEsmData"), u.consume(C), p += String.fromCharCode(C), m);
    }
    function m(C) {
      return dr(C) ? (u.consume(C), p += String.fromCharCode(C), m) : (p === "import" || p === "export") && C === 32 ? (u.consume(C), D) : o(
      C);
    }
    function D(C) {
      return C === null || ne(C) ? (u.exit("mdxjsEsmData"), g(C)) : (u.consume(C), D);
    }
    function g(C) {
      return C === null ? x(C) : ne(C) ? u.check(O5, x, v)(C) : (u.enter("mdxjsEsmData"), D(C));
    }
    function v(C) {
      return u.enter("lineEnding"), u.consume(C), u.exit("lineEnding"), g;
    }
    function x(C) {
      let S = ZE(l.events.slice(h), {
        acorn: r,
        acornOptions: i,
        tokenTypes: ["mdxjsEsmData"],
        prefix: c.length > 0 ? "var " + c.join(",") + `
` : ""
      });
      if (S.error) {
        if (C !== null && S.swallow)
          return v(C);
        let j = new Se("Could not parse import/exports with acorn", {
          cause: S.error,
          place: {
            line: S.error.loc.line,
            column: S.error.loc.column + 1,
            offset: S.error.pos
          },
          ruleId: "acorn",
          source: "micromark-extension-mdxjs-esm"
        });
        throw j.url = pE + "#could-not-parse-importexports-with-acorn", j;
      }
      if (c.length > 0) {
        let j = S.estree.body.shift();
      }
      let k = -1;
      for (; ++k < S.estree.body.length; ) {
        let j = S.estree.body[k];
        if (!R5.has(j.type)) {
          let w = new Se("Unexpected `" + j.type + "` in code: only import/exports are supported", {
            place: Zr(j),
            ruleId: "non-esm",
            source: "micromark-extension-mdxjs-esm"
          });
          throw w.url = pE + "#unexpected-type-in-code-only-importexports-are-supported", w;
        }
        if (j.type === "ImportDeclaration" && !l.interrupt) {
          let w = -1;
          for (; ++w < j.specifiers.length; ) {
            let A = j.specifiers[w];
            c.push(A.local.name);
          }
        }
      }
      return Object.assign(u.exit("mdxjsEsm"), e.addResult ? {
        estree: S.estree
      } : void 0), a(C);
    }
  }
}
function L5(e, t, r) {
  return i;
  function i(n) {
    return e.enter("lineEndingBlank"), e.consume(n), e.exit("lineEndingBlank"), e.attempt(zs, t, r);
  }
}
function ob(e) {
  let t = {}, r = -1;
  for (; ++r < e.length; )
    M5(t, e[r]);
  return t;
}
function M5(e, t) {
  let r;
  for (r in t) {
    let n = (fE.call(e, r) ? e[r] : void 0) || (e[r] = {}), u = t[r], a;
    if (u)
      for (a in u) {
        fE.call(n, a) || (n[a] = []);
        let o = u[a];
        j5(
          // @ts-expect-error Looks like a list.
          n[a],
          Array.isArray(o) ? o : o ? [o] : []
        );
      }
  }
}
function j5(e, t) {
  let r = -1, i = [];
  for (; ++r < t.length; )
    (t[r].add === "after" ? e : i).push(t[r]);
  Ir(e, 0, 0, i);
}
function q5(e) {
  let t = Object.assign(
    {
      acorn: et.extend((0, YI.default)()),
      acornOptions: { ecmaVersion: 2024, sourceType: "module" },
      addResult: !0
    },
    e
  );
  return ob([
    N5(t),
    dO(t),
    xO(t),
    yO()
  ]);
}
function V5(e) {
  let t = (
    /** @type {Processor} */
    this
  ), r = e || $5, i = t.data(), n = i.micromarkExtensions || (i.micromarkExtensions = []), u = i.fromMarkdownExtensions || (i.fromMarkdownExtensions =
  []), a = i.toMarkdownExtensions || (i.toMarkdownExtensions = []);
  n.push(q5(r)), u.push(GI()), a.push(XI(r));
}
function z5(e, t) {
  let r = t || U5, i = typeof r.includeImageAlt == "boolean" ? r.includeImageAlt : !0, n = typeof r.includeHtml == "boolean" ? r.includeHtml :
  !0;
  return lb(e, i, n);
}
function lb(e, t, r) {
  if (H5(e)) {
    if ("value" in e)
      return e.type === "html" && !r ? "" : e.value;
    if (t && "alt" in e && e.alt)
      return e.alt;
    if ("children" in e)
      return dE(e.children, t, r);
  }
  return Array.isArray(e) ? dE(e, t, r) : "";
}
function dE(e, t, r) {
  let i = [], n = -1;
  for (; ++n < e.length; )
    i[n] = lb(e[n], t, r);
  return i.join("");
}
function H5(e) {
  return !!(e && typeof e == "object");
}
function cb(e, t) {
  let r = Number.parseInt(e, t);
  return (
    // C0 except for HT, LF, FF, CR, space.
    r < 9 || r === 11 || r > 13 && r < 32 || // Control character (DEL) of C0, and C1 controls.
    r > 126 && r < 160 || // Lone high surrogates and low surrogates.
    r > 55295 && r < 57344 || // Noncharacters.
    r > 64975 && r < 65008 || /* eslint-disable no-bitwise */
    (r & 65535) === 65535 || (r & 65535) === 65534 || /* eslint-enable no-bitwise */
    // Out of range
    r > 1114111 ? "\uFFFD" : String.fromCodePoint(r)
  );
}
function Hn(e) {
  let t = [], r = -1, i = 0, n = 0;
  for (; ++r < e.length; ) {
    let u = e.charCodeAt(r), a = "";
    if (u === 37 && Nt(e.charCodeAt(r + 1)) && Nt(e.charCodeAt(r + 2)))
      n = 2;
    else if (u < 128)
      /[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(u)) || (a = String.fromCharCode(u));
    else if (u > 55295 && u < 57344) {
      let o = e.charCodeAt(r + 1);
      u < 56320 && o > 56319 && o < 57344 ? (a = String.fromCharCode(u, o), n = 1) : a = "\uFFFD";
    } else
      a = String.fromCharCode(u);
    a && (t.push(e.slice(i, r), encodeURIComponent(a)), i = r + n + 1, a = ""), n && (r += n, n = 0);
  }
  return t.join("") + e.slice(i);
}
function J5(e) {
  let t = e.attempt(
    this.parser.constructs.contentInitial,
    i,
    n
  ), r;
  return t;
  function i(o) {
    if (o === null) {
      e.consume(o);
      return;
    }
    return e.enter("lineEnding"), e.consume(o), e.exit("lineEnding"), Be(e, t, "linePrefix");
  }
  function n(o) {
    return e.enter("paragraph"), u(o);
  }
  function u(o) {
    let l = e.enter("chunkText", {
      contentType: "text",
      previous: r
    });
    return r && (r.next = l), r = l, a(o);
  }
  function a(o) {
    if (o === null) {
      e.exit("chunkText"), e.exit("paragraph"), e.consume(o);
      return;
    }
    return ne(o) ? (e.consume(o), e.exit("chunkText"), u) : (e.consume(o), a);
  }
}
function X5(e) {
  let t = this, r = [], i = 0, n, u, a;
  return o;
  function o(S) {
    if (i < r.length) {
      let k = r[i];
      return t.containerState = k[1], e.attempt(
        k[0].continuation,
        l,
        c
      )(S);
    }
    return c(S);
  }
  function l(S) {
    if (i++, t.containerState._closeFlow) {
      t.containerState._closeFlow = void 0, n && C();
      let k = t.events.length, j = k, w;
      for (; j--; )
        if (t.events[j][0] === "exit" && t.events[j][1].type === "chunkFlow") {
          w = t.events[j][1].end;
          break;
        }
      x(i);
      let A = k;
      for (; A < t.events.length; )
        t.events[A][1].end = Object.assign({}, w), A++;
      return Ir(
        t.events,
        j + 1,
        0,
        t.events.slice(k)
      ), t.events.length = A, c(S);
    }
    return o(S);
  }
  function c(S) {
    if (i === r.length) {
      if (!n)
        return d(S);
      if (n.currentConstruct && n.currentConstruct.concrete)
        return D(S);
      t.interrupt = !!(n.currentConstruct && !n._gfmTableDynamicInterruptHack);
    }
    return t.containerState = {}, e.check(
      mE,
      h,
      p
    )(S);
  }
  function h(S) {
    return n && C(), x(i), d(S);
  }
  function p(S) {
    return t.parser.lazy[t.now().line] = i !== r.length, a = t.now().offset, D(S);
  }
  function d(S) {
    return t.containerState = {}, e.attempt(
      mE,
      m,
      D
    )(S);
  }
  function m(S) {
    return i++, r.push([t.currentConstruct, t.containerState]), d(S);
  }
  function D(S) {
    if (S === null) {
      n && C(), x(0), e.consume(S);
      return;
    }
    return n = n || t.parser.flow(t.now()), e.enter("chunkFlow", {
      contentType: "flow",
      previous: u,
      _tokenizer: n
    }), g(S);
  }
  function g(S) {
    if (S === null) {
      v(e.exit("chunkFlow"), !0), x(0), e.consume(S);
      return;
    }
    return ne(S) ? (e.consume(S), v(e.exit("chunkFlow")), i = 0, t.interrupt = void 0, o) : (e.consume(S), g);
  }
  function v(S, k) {
    let j = t.sliceStream(S);
    if (k && j.push(null), S.previous = u, u && (u.next = S), u = S, n.defineSkip(S.start), n.write(j), t.parser.lazy[S.start.line]) {
      let w = n.events.length;
      for (; w--; )
        if (
          // The token starts before the line ending…
          n.events[w][1].start.offset < a && // …and either is not ended yet…
          (!n.events[w][1].end || // …or ends after it.
          n.events[w][1].end.offset > a)
        )
          return;
      let A = t.events.length, T = A, B, $;
      for (; T--; )
        if (t.events[T][0] === "exit" && t.events[T][1].type === "chunkFlow") {
          if (B) {
            $ = t.events[T][1].end;
            break;
          }
          B = !0;
        }
      for (x(i), w = A; w < t.events.length; )
        t.events[w][1].end = Object.assign({}, $), w++;
      Ir(
        t.events,
        T + 1,
        0,
        t.events.slice(A)
      ), t.events.length = w;
    }
  }
  function x(S) {
    let k = r.length;
    for (; k-- > S; ) {
      let j = r[k];
      t.containerState = j[1], j[0].exit.call(t, e);
    }
    r.length = S;
  }
  function C() {
    n.write([null]), u = void 0, n = void 0, t.containerState._closeFlow = void 0;
  }
}
function Y5(e, t, r) {
  return Be(
    e,
    e.attempt(this.parser.constructs.document, t, r),
    "linePrefix",
    this.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4
  );
}
function Q5(e) {
  let t = this, r = e.attempt(
    // Try to parse a blank line.
    zs,
    i,
    // Try to parse initial flow (essentially, only code).
    e.attempt(
      this.parser.constructs.flowInitial,
      n,
      Be(
        e,
        e.attempt(
          this.parser.constructs.flow,
          n,
          e.attempt(qO, n)
        ),
        "linePrefix"
      )
    )
  );
  return r;
  function i(u) {
    if (u === null) {
      e.consume(u);
      return;
    }
    return e.enter("lineEndingBlank"), e.consume(u), e.exit("lineEndingBlank"), t.currentConstruct = void 0, r;
  }
  function n(u) {
    if (u === null) {
      e.consume(u);
      return;
    }
    return e.enter("lineEnding"), e.consume(u), e.exit("lineEnding"), t.currentConstruct = void 0, r;
  }
}
function hb(e) {
  return {
    tokenize: t,
    resolveAll: pb(
      e === "text" ? rR : void 0
    )
  };
  function t(r) {
    let i = this, n = this.parser.constructs[e], u = r.attempt(n, a, o);
    return a;
    function a(h) {
      return c(h) ? u(h) : o(h);
    }
    function o(h) {
      if (h === null) {
        r.consume(h);
        return;
      }
      return r.enter("data"), r.consume(h), l;
    }
    function l(h) {
      return c(h) ? (r.exit("data"), u(h)) : (r.consume(h), l);
    }
    function c(h) {
      if (h === null)
        return !0;
      let p = n[h], d = -1;
      if (p)
        for (; ++d < p.length; ) {
          let m = p[d];
          if (!m.previous || m.previous.call(i, i.previous))
            return !0;
        }
      return !1;
    }
  }
}
function pb(e) {
  return t;
  function t(r, i) {
    let n = -1, u;
    for (; ++n <= r.length; )
      u === void 0 ? r[n] && r[n][1].type === "data" && (u = n, n++) : (!r[n] || r[n][1].type !== "data") && (n !== u + 2 && (r[u][1].end = r[n -
      1][1].end, r.splice(u + 2, n - u - 2), n = u + 2), u = void 0);
    return e ? e(r, i) : r;
  }
}
function rR(e, t) {
  let r = 0;
  for (; ++r <= e.length; )
    if ((r === e.length || e[r][1].type === "lineEnding") && e[r - 1][1].type === "data") {
      let i = e[r - 1][1], n = t.sliceStream(i), u = n.length, a = -1, o = 0, l;
      for (; u--; ) {
        let c = n[u];
        if (typeof c == "string") {
          for (a = c.length; c.charCodeAt(a - 1) === 32; )
            o++, a--;
          if (a)
            break;
          a = -1;
        } else if (c === -2)
          l = !0, o++;
        else if (c !== -1) {
          u++;
          break;
        }
      }
      if (o) {
        let c = {
          type: r === e.length || l || o < 2 ? "lineSuffix" : "hardBreakTrailing",
          start: {
            line: i.end.line,
            column: i.end.column - o,
            offset: i.end.offset - o,
            _index: i.start._index + u,
            _bufferIndex: u ? a : i.start._bufferIndex + a
          },
          end: Object.assign({}, i.end)
        };
        i.end = Object.assign({}, c.start), i.start.offset === i.end.offset ? Object.assign(i, c) : (e.splice(
          r,
          0,
          ["enter", c, t],
          ["exit", c, t]
        ), r += 2);
      }
      r++;
    }
  return e;
}
function iR(e, t, r) {
  let i = Object.assign(
    r ? Object.assign({}, r) : {
      line: 1,
      column: 1,
      offset: 0
    },
    {
      _index: 0,
      _bufferIndex: -1
    }
  ), n = {}, u = [], a = [], o = [], l = !0, c = {
    consume: k,
    enter: j,
    exit: w,
    attempt: B(A),
    check: B(T),
    interrupt: B(T, {
      interrupt: !0
    })
  }, h = {
    previous: null,
    code: null,
    containerState: {},
    events: [],
    parser: e,
    sliceStream: g,
    sliceSerialize: D,
    now: v,
    defineSkip: x,
    write: m
  }, p = t.tokenize.call(h, c), d;
  return t.resolveAll && u.push(t), h;
  function m(U) {
    return a = Qt(a, U), C(), a[a.length - 1] !== null ? [] : ($(t, 0), h.events = zp(u, h.events, h), h.events);
  }
  s(m, "write");
  function D(U, X) {
    return sR(g(U), X);
  }
  s(D, "sliceSerialize");
  function g(U) {
    return nR(a, U);
  }
  s(g, "sliceStream");
  function v() {
    let { line: U, column: X, offset: R, _index: N, _bufferIndex: z } = i;
    return {
      line: U,
      column: X,
      offset: R,
      _index: N,
      _bufferIndex: z
    };
  }
  s(v, "now");
  function x(U) {
    n[U.line] = U.column, V();
  }
  s(x, "defineSkip");
  function C() {
    let U;
    for (; i._index < a.length; ) {
      let X = a[i._index];
      if (typeof X == "string")
        for (U = i._index, i._bufferIndex < 0 && (i._bufferIndex = 0); i._index === U && i._bufferIndex < X.length; )
          S(X.charCodeAt(i._bufferIndex));
      else
        S(X);
    }
  }
  s(C, "main");
  function S(U) {
    l = void 0, d = U, p = p(U);
  }
  s(S, "go");
  function k(U) {
    ne(U) ? (i.line++, i.column = 1, i.offset += U === -3 ? 2 : 1, V()) : U !== -1 && (i.column++, i.offset++), i._bufferIndex < 0 ? i._index++ :
    (i._bufferIndex++, i._bufferIndex === a[i._index].length && (i._bufferIndex = -1, i._index++)), h.previous = U, l = !0;
  }
  s(k, "consume");
  function j(U, X) {
    let R = X || {};
    return R.type = U, R.start = v(), h.events.push(["enter", R, h]), o.push(R), R;
  }
  s(j, "enter");
  function w(U) {
    let X = o.pop();
    return X.end = v(), h.events.push(["exit", X, h]), X;
  }
  s(w, "exit2");
  function A(U, X) {
    $(U, X.from);
  }
  s(A, "onsuccessfulconstruct");
  function T(U, X) {
    X.restore();
  }
  s(T, "onsuccessfulcheck");
  function B(U, X) {
    return R;
    function R(N, z, Y) {
      let ee, O, ue, ke;
      return Array.isArray(N) ? we(N) : "tokenize" in N ? (
        // @ts-expect-error Looks like a construct.
        we([N])
      ) : M(N);
      function M(Ie) {
        return te;
        function te(me) {
          let K = me !== null && Ie[me], le = me !== null && Ie.null, Fe = [
            // To do: add more extension tests.
            /* c8 ignore next 2 */
            ...Array.isArray(K) ? K : K ? [K] : [],
            ...Array.isArray(le) ? le : le ? [le] : []
          ];
          return we(Fe)(me);
        }
      }
      function we(Ie) {
        return ee = Ie, O = 0, Ie.length === 0 ? Y : Te(Ie[O]);
      }
      function Te(Ie) {
        return te;
        function te(me) {
          return ke = L(), ue = Ie, Ie.partial || (h.currentConstruct = Ie), Ie.name && h.parser.constructs.disable.null.includes(Ie.name) ?
          st(me) : Ie.tokenize.call(
            // If we do have fields, create an object w/ `context` as its
            // prototype.
            // This allows a “live binding”, which is needed for `interrupt`.
            X ? Object.assign(Object.create(h), X) : h,
            c,
            ae,
            st
          )(me);
        }
      }
      function ae(Ie) {
        return l = !0, U(ue, ke), z;
      }
      function st(Ie) {
        return l = !0, ke.restore(), ++O < ee.length ? Te(ee[O]) : Y;
      }
    }
  }
  s(B, "constructFactory");
  function $(U, X) {
    U.resolveAll && !u.includes(U) && u.push(U), U.resolve && Ir(
      h.events,
      X,
      h.events.length - X,
      U.resolve(h.events.slice(X), h)
    ), U.resolveTo && (h.events = U.resolveTo(h.events, h));
  }
  s($, "addResult");
  function L() {
    let U = v(), X = h.previous, R = h.currentConstruct, N = h.events.length, z = Array.from(o);
    return {
      restore: Y,
      from: N
    };
    function Y() {
      i = U, h.previous = X, h.currentConstruct = R, h.events.length = N, o = z, V();
    }
  }
  s(L, "store");
  function V() {
    i.line in n && i.column < 2 && (i.column = n[i.line], i.offset += n[i.line] - 1);
  }
  s(V, "accountForPotentialSkip");
}
function nR(e, t) {
  let r = t.start._index, i = t.start._bufferIndex, n = t.end._index, u = t.end._bufferIndex, a;
  if (r === n)
    a = [e[r].slice(i, u)];
  else {
    if (a = e.slice(r, n), i > -1) {
      let o = a[0];
      typeof o == "string" ? a[0] = o.slice(i) : a.shift();
    }
    u > 0 && a.push(e[n].slice(0, u));
  }
  return a;
}
function sR(e, t) {
  let r = -1, i = [], n;
  for (; ++r < e.length; ) {
    let u = e[r], a;
    if (typeof u == "string")
      a = u;
    else
      switch (u) {
        case -5: {
          a = "\r";
          break;
        }
        case -4: {
          a = `
`;
          break;
        }
        case -3: {
          a = `\r
`;
          break;
        }
        case -2: {
          a = t ? " " : "	";
          break;
        }
        case -1: {
          if (!t && n)
            continue;
          a = " ";
          break;
        }
        default:
          a = String.fromCharCode(u);
      }
    n = u === -2, i.push(a);
  }
  return i.join("");
}
function mR(e) {
  let r = (
    /** @type {FullNormalizedExtension} */
    ob([fb, ...(e || {}).extensions || []])
  ), i = {
    defined: [],
    lazy: {},
    constructs: r,
    content: n(W5),
    document: n(G5),
    flow: n(K5),
    string: n(eR),
    text: n(tR)
  };
  return i;
  function n(u) {
    return a;
    function a(o) {
      return iR(i, u, o);
    }
  }
}
function DR(e) {
  for (; !nb(e); )
    ;
  return e;
}
function gR() {
  let e = 1, t = "", r = !0, i;
  return n;
  function n(u, a, o) {
    let l = [], c, h, p, d, m;
    for (u = t + (typeof u == "string" ? u.toString() : new TextDecoder(a || void 0).decode(u)), p = 0, t = "", r && (u.charCodeAt(0) === 65279 &&
    p++, r = void 0); p < u.length; ) {
      if (DE.lastIndex = p, c = DE.exec(u), d = c && c.index !== void 0 ? c.index : u.length, m = u.charCodeAt(d), !c) {
        t = u.slice(p);
        break;
      }
      if (m === 10 && p === d && i)
        l.push(-3), i = void 0;
      else
        switch (i && (l.push(-5), i = void 0), p < d && (l.push(u.slice(p, d)), e += d - p), m) {
          case 0: {
            l.push(65533), e++;
            break;
          }
          case 9: {
            for (h = Math.ceil(e / 4) * 4, l.push(-2); e++ < h; )
              l.push(-1);
            break;
          }
          case 10: {
            l.push(-4), e = 1;
            break;
          }
          default:
            i = !0, e = 1;
        }
      p = d + 1;
    }
    return o && (i && l.push(-5), t && l.push(t), l.push(null)), l;
  }
}
function yR(e) {
  return e.replace(xR, ER);
}
function ER(e, t, r) {
  if (t)
    return t;
  if (r.charCodeAt(0) === 35) {
    let n = r.charCodeAt(1), u = n === 120 || n === 88;
    return cb(r.slice(u ? 2 : 1), u ? 16 : 10);
  }
  return Vs(r) || e;
}
function bR(e, t, r) {
  return typeof t != "string" && (r = t, t = void 0), vR(r)(
    DR(
      mR(r).document().write(gR()(e, t, !0))
    )
  );
}
function vR(e) {
  let t = {
    transforms: [],
    canContainEols: ["emphasis", "fragment", "heading", "paragraph", "strong"],
    enter: {
      autolink: u(sr),
      autolinkProtocol: B,
      autolinkEmail: B,
      atxHeading: u(Ge),
      blockQuote: u(te),
      characterEscape: B,
      characterReference: B,
      codeFenced: u(me),
      codeFencedFenceInfo: a,
      codeFencedFenceMeta: a,
      codeIndented: u(me, a),
      codeText: u(K, a),
      codeTextData: B,
      data: B,
      codeFlowValue: B,
      definition: u(le),
      definitionDestinationString: a,
      definitionLabelString: a,
      definitionTitleString: a,
      emphasis: u(Fe),
      hardBreakEscape: u(Oe),
      hardBreakTrailing: u(Oe),
      htmlFlow: u(jt, a),
      htmlFlowData: B,
      htmlText: u(jt, a),
      htmlTextData: B,
      image: u(vr),
      label: a,
      link: u(sr),
      listItem: u(hi),
      listItemValue: d,
      listOrdered: u(Ui, p),
      listUnordered: u(Ui),
      paragraph: u(mn),
      reference: M,
      referenceString: a,
      resourceDestinationString: a,
      resourceTitleString: a,
      setextHeading: u(Ge),
      strong: u(ce),
      thematicBreak: u(E)
    },
    exit: {
      atxHeading: l(),
      atxHeadingSequence: j,
      autolink: l(),
      autolinkEmail: Ie,
      autolinkProtocol: st,
      blockQuote: l(),
      characterEscapeValue: $,
      characterReferenceMarkerHexadecimal: Te,
      characterReferenceMarkerNumeric: Te,
      characterReferenceValue: ae,
      codeFenced: l(v),
      codeFencedFence: g,
      codeFencedFenceInfo: m,
      codeFencedFenceMeta: D,
      codeFlowValue: $,
      codeIndented: l(x),
      codeText: l(R),
      codeTextData: $,
      data: $,
      definition: l(),
      definitionDestinationString: k,
      definitionLabelString: C,
      definitionTitleString: S,
      emphasis: l(),
      hardBreakEscape: l(V),
      hardBreakTrailing: l(V),
      htmlFlow: l(U),
      htmlFlowData: $,
      htmlText: l(X),
      htmlTextData: $,
      image: l(z),
      label: ee,
      labelText: Y,
      lineEnding: L,
      link: l(N),
      listItem: l(),
      listOrdered: l(),
      listUnordered: l(),
      paragraph: l(),
      referenceString: we,
      resourceDestinationString: O,
      resourceTitleString: ue,
      resource: ke,
      setextHeading: l(T),
      setextHeadingLineSequence: A,
      setextHeadingText: w,
      strong: l(),
      thematicBreak: l()
    }
  };
  mb(t, (e || {}).mdastExtensions || []);
  let r = {};
  return i;
  function i(y) {
    let _ = {
      type: "root",
      children: []
    }, P = {
      stack: [_],
      tokenStack: [],
      config: t,
      enter: o,
      exit: c,
      buffer: a,
      resume: h,
      data: r
    }, b = [], q = -1;
    for (; ++q < y.length; )
      if (y[q][1].type === "listOrdered" || y[q][1].type === "listUnordered")
        if (y[q][0] === "enter")
          b.push(q);
        else {
          let H = b.pop();
          q = n(y, H, q);
        }
    for (q = -1; ++q < y.length; ) {
      let H = t[y[q][0]];
      db.call(H, y[q][1].type) && H[y[q][1].type].call(
        Object.assign(
          {
            sliceSerialize: y[q][2].sliceSerialize
          },
          P
        ),
        y[q][1]
      );
    }
    if (P.tokenStack.length > 0) {
      let H = P.tokenStack[P.tokenStack.length - 1];
      (H[1] || gE).call(P, void 0, H[0]);
    }
    for (_.position = {
      start: Ai(
        y.length > 0 ? y[0][1].start : {
          line: 1,
          column: 1,
          offset: 0
        }
      ),
      end: Ai(
        y.length > 0 ? y[y.length - 2][1].end : {
          line: 1,
          column: 1,
          offset: 0
        }
      )
    }, q = -1; ++q < t.transforms.length; )
      _ = t.transforms[q](_) || _;
    return _;
  }
  function n(y, _, P) {
    let b = _ - 1, q = -1, H = !1, W, J, oe, De;
    for (; ++b <= P; ) {
      let se = y[b];
      switch (se[1].type) {
        case "listUnordered":
        case "listOrdered":
        case "blockQuote": {
          se[0] === "enter" ? q++ : q--, De = void 0;
          break;
        }
        case "lineEndingBlank": {
          se[0] === "enter" && (W && !De && !q && !oe && (oe = b), De = void 0);
          break;
        }
        case "linePrefix":
        case "listItemValue":
        case "listItemMarker":
        case "listItemPrefix":
        case "listItemPrefixWhitespace":
          break;
        default:
          De = void 0;
      }
      if (!q && se[0] === "enter" && se[1].type === "listItemPrefix" || q === -1 && se[0] === "exit" && (se[1].type === "listUnordered" || se[1].
      type === "listOrdered")) {
        if (W) {
          let xe = b;
          for (J = void 0; xe--; ) {
            let Ue = y[xe];
            if (Ue[1].type === "lineEnding" || Ue[1].type === "lineEndingBlank") {
              if (Ue[0] === "exit")
                continue;
              J && (y[J][1].type = "lineEndingBlank", H = !0), Ue[1].type = "lineEnding", J = xe;
            } else if (!(Ue[1].type === "linePrefix" || Ue[1].type === "blockQuotePrefix" || Ue[1].type === "blockQuotePrefixWhitespace" || Ue[1].
            type === "blockQuoteMarker" || Ue[1].type === "listItemIndent"))
              break;
          }
          oe && (!J || oe < J) && (W._spread = !0), W.end = Object.assign(
            {},
            J ? y[J][1].start : se[1].end
          ), y.splice(J || b, 0, ["exit", W, se[2]]), b++, P++;
        }
        if (se[1].type === "listItemPrefix") {
          let xe = {
            type: "listItem",
            _spread: !1,
            start: Object.assign({}, se[1].start),
            // @ts-expect-error: we’ll add `end` in a second.
            end: void 0
          };
          W = xe, y.splice(b, 0, ["enter", xe, se[2]]), b++, P++, oe = void 0, De = !0;
        }
      }
    }
    return y[_][1]._spread = H, P;
  }
  function u(y, _) {
    return P;
    function P(b) {
      o.call(this, y(b), b), _ && _.call(this, b);
    }
  }
  function a() {
    this.stack.push({
      type: "fragment",
      children: []
    });
  }
  function o(y, _, P) {
    this.stack[this.stack.length - 1].children.push(y), this.stack.push(y), this.tokenStack.push([_, P]), y.position = {
      start: Ai(_.start),
      // @ts-expect-error: `end` will be patched later.
      end: void 0
    };
  }
  function l(y) {
    return _;
    function _(P) {
      y && y.call(this, P), c.call(this, P);
    }
  }
  function c(y, _) {
    let P = this.stack.pop(), b = this.tokenStack.pop();
    if (b)
      b[0].type !== y.type && (_ ? _.call(this, y, b[0]) : (b[1] || gE).call(this, y, b[0]));
    else throw new Error(
      "Cannot close `" + y.type + "` (" + Zt({
        start: y.start,
        end: y.end
      }) + "): it\u2019s not open"
    );
    P.position.end = Ai(y.end);
  }
  function h() {
    return z5(this.stack.pop());
  }
  function p() {
    this.data.expectingFirstListItemValue = !0;
  }
  function d(y) {
    if (this.data.expectingFirstListItemValue) {
      let _ = this.stack[this.stack.length - 2];
      _.start = Number.parseInt(this.sliceSerialize(y), 10), this.data.expectingFirstListItemValue = void 0;
    }
  }
  function m() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.lang = y;
  }
  function D() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.meta = y;
  }
  function g() {
    this.data.flowCodeInside || (this.buffer(), this.data.flowCodeInside = !0);
  }
  function v() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.value = y.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g, ""), this.data.flowCodeInside = void 0;
  }
  function x() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.value = y.replace(/(\r?\n|\r)$/g, "");
  }
  function C(y) {
    let _ = this.resume(), P = this.stack[this.stack.length - 1];
    P.label = _, P.identifier = zn(
      this.sliceSerialize(y)
    ).toLowerCase();
  }
  function S() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.title = y;
  }
  function k() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.url = y;
  }
  function j(y) {
    let _ = this.stack[this.stack.length - 1];
    if (!_.depth) {
      let P = this.sliceSerialize(y).length;
      _.depth = P;
    }
  }
  function w() {
    this.data.setextHeadingSlurpLineEnding = !0;
  }
  function A(y) {
    let _ = this.stack[this.stack.length - 1];
    _.depth = this.sliceSerialize(y).codePointAt(0) === 61 ? 1 : 2;
  }
  function T() {
    this.data.setextHeadingSlurpLineEnding = void 0;
  }
  function B(y) {
    let P = this.stack[this.stack.length - 1].children, b = P[P.length - 1];
    (!b || b.type !== "text") && (b = Ct(), b.position = {
      start: Ai(y.start),
      // @ts-expect-error: we’ll add `end` later.
      end: void 0
    }, P.push(b)), this.stack.push(b);
  }
  function $(y) {
    let _ = this.stack.pop();
    _.value += this.sliceSerialize(y), _.position.end = Ai(y.end);
  }
  function L(y) {
    let _ = this.stack[this.stack.length - 1];
    if (this.data.atHardBreak) {
      let P = _.children[_.children.length - 1];
      P.position.end = Ai(y.end), this.data.atHardBreak = void 0;
      return;
    }
    !this.data.setextHeadingSlurpLineEnding && t.canContainEols.includes(_.type) && (B.call(this, y), $.call(this, y));
  }
  function V() {
    this.data.atHardBreak = !0;
  }
  function U() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.value = y;
  }
  function X() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.value = y;
  }
  function R() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.value = y;
  }
  function N() {
    let y = this.stack[this.stack.length - 1];
    if (this.data.inReference) {
      let _ = this.data.referenceType || "shortcut";
      y.type += "Reference", y.referenceType = _, delete y.url, delete y.title;
    } else
      delete y.identifier, delete y.label;
    this.data.referenceType = void 0;
  }
  function z() {
    let y = this.stack[this.stack.length - 1];
    if (this.data.inReference) {
      let _ = this.data.referenceType || "shortcut";
      y.type += "Reference", y.referenceType = _, delete y.url, delete y.title;
    } else
      delete y.identifier, delete y.label;
    this.data.referenceType = void 0;
  }
  function Y(y) {
    let _ = this.sliceSerialize(y), P = this.stack[this.stack.length - 2];
    P.label = yR(_), P.identifier = zn(_).toLowerCase();
  }
  function ee() {
    let y = this.stack[this.stack.length - 1], _ = this.resume(), P = this.stack[this.stack.length - 1];
    if (this.data.inReference = !0, P.type === "link") {
      let b = y.children;
      P.children = b;
    } else
      P.alt = _;
  }
  function O() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.url = y;
  }
  function ue() {
    let y = this.resume(), _ = this.stack[this.stack.length - 1];
    _.title = y;
  }
  function ke() {
    this.data.inReference = void 0;
  }
  function M() {
    this.data.referenceType = "collapsed";
  }
  function we(y) {
    let _ = this.resume(), P = this.stack[this.stack.length - 1];
    P.label = _, P.identifier = zn(
      this.sliceSerialize(y)
    ).toLowerCase(), this.data.referenceType = "full";
  }
  function Te(y) {
    this.data.characterReferenceType = y.type;
  }
  function ae(y) {
    let _ = this.sliceSerialize(y), P = this.data.characterReferenceType, b;
    P ? (b = cb(
      _,
      P === "characterReferenceMarkerNumeric" ? 10 : 16
    ), this.data.characterReferenceType = void 0) : b = Vs(_);
    let q = this.stack.pop();
    q.value += b, q.position.end = Ai(y.end);
  }
  function st(y) {
    $.call(this, y);
    let _ = this.stack[this.stack.length - 1];
    _.url = this.sliceSerialize(y);
  }
  function Ie(y) {
    $.call(this, y);
    let _ = this.stack[this.stack.length - 1];
    _.url = "mailto:" + this.sliceSerialize(y);
  }
  function te() {
    return {
      type: "blockquote",
      children: []
    };
  }
  function me() {
    return {
      type: "code",
      lang: null,
      meta: null,
      value: ""
    };
  }
  function K() {
    return {
      type: "inlineCode",
      value: ""
    };
  }
  function le() {
    return {
      type: "definition",
      identifier: "",
      label: null,
      title: null,
      url: ""
    };
  }
  function Fe() {
    return {
      type: "emphasis",
      children: []
    };
  }
  function Ge() {
    return {
      type: "heading",
      // @ts-expect-error `depth` will be set later.
      depth: 0,
      children: []
    };
  }
  function Oe() {
    return {
      type: "break"
    };
  }
  function jt() {
    return {
      type: "html",
      value: ""
    };
  }
  function vr() {
    return {
      type: "image",
      title: null,
      url: "",
      alt: null
    };
  }
  function sr() {
    return {
      type: "link",
      title: null,
      url: "",
      children: []
    };
  }
  function Ui(y) {
    return {
      type: "list",
      ordered: y.type === "listOrdered",
      start: null,
      spread: y._spread,
      children: []
    };
  }
  function hi(y) {
    return {
      type: "listItem",
      spread: y._spread,
      checked: null,
      children: []
    };
  }
  function mn() {
    return {
      type: "paragraph",
      children: []
    };
  }
  function ce() {
    return {
      type: "strong",
      children: []
    };
  }
  function Ct() {
    return {
      type: "text",
      value: ""
    };
  }
  function E() {
    return {
      type: "thematicBreak"
    };
  }
}
function Ai(e) {
  return {
    line: e.line,
    column: e.column,
    offset: e.offset
  };
}
function mb(e, t) {
  let r = -1;
  for (; ++r < t.length; ) {
    let i = t[r];
    Array.isArray(i) ? mb(e, i) : CR(e, i);
  }
}
function CR(e, t) {
  let r;
  for (r in t)
    if (db.call(t, r))
      switch (r) {
        case "canContainEols": {
          let i = t[r];
          i && e[r].push(...i);
          break;
        }
        case "transforms": {
          let i = t[r];
          i && e[r].push(...i);
          break;
        }
        case "enter":
        case "exit": {
          let i = t[r];
          i && Object.assign(e[r], i);
          break;
        }
      }
}
function gE(e, t) {
  throw e ? new Error(
    "Cannot close `" + e.type + "` (" + Zt({
      start: e.start,
      end: e.end
    }) + "): a different token (`" + t.type + "`, " + Zt({
      start: t.start,
      end: t.end
    }) + ") is open"
  ) : new Error(
    "Cannot close document, a token (`" + t.type + "`, " + Zt({
      start: t.start,
      end: t.end
    }) + ") is still open"
  );
}
function wR(e) {
  let t = this;
  t.parser = r;
  function r(i) {
    return bR(i, {
      ...t.data("settings"),
      ...e,
      // Note: these options are not in the readme.
      // The goal is for them to be set by plugins on `data` instead of being
      // passed by users.
      extensions: t.data("micromarkExtensions") || [],
      mdastExtensions: t.data("fromMarkdownExtensions") || []
    });
  }
  s(r, "parser");
}
function AR(e, t) {
  let r = {
    type: "element",
    tagName: "blockquote",
    properties: {},
    children: e.wrap(e.all(t), !0)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function FR(e, t) {
  let r = { type: "element", tagName: "br", properties: {}, children: [] };
  return e.patch(t, r), [e.applyData(t, r), { type: "text", value: `
` }];
}
function SR(e, t) {
  let r = t.value ? t.value + `
` : "", i = {};
  t.lang && (i.className = ["language-" + t.lang]);
  let n = {
    type: "element",
    tagName: "code",
    properties: i,
    children: [{ type: "text", value: r }]
  };
  return t.meta && (n.data = { meta: t.meta }), e.patch(t, n), n = e.applyData(t, n), n = { type: "element", tagName: "pre", properties: {},
  children: [n] }, e.patch(t, n), n;
}
function _R(e, t) {
  let r = {
    type: "element",
    tagName: "del",
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function kR(e, t) {
  let r = {
    type: "element",
    tagName: "em",
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function BR(e, t) {
  let r = typeof e.options.clobberPrefix == "string" ? e.options.clobberPrefix : "user-content-", i = String(t.identifier).toUpperCase(), n = Hn(
  i.toLowerCase()), u = e.footnoteOrder.indexOf(i), a, o = e.footnoteCounts.get(i);
  o === void 0 ? (o = 0, e.footnoteOrder.push(i), a = e.footnoteOrder.length) : a = u + 1, o += 1, e.footnoteCounts.set(i, o);
  let l = {
    type: "element",
    tagName: "a",
    properties: {
      href: "#" + r + "fn-" + n,
      id: r + "fnref-" + n + (o > 1 ? "-" + o : ""),
      dataFootnoteRef: !0,
      ariaDescribedBy: ["footnote-label"]
    },
    children: [{ type: "text", value: String(a) }]
  };
  e.patch(t, l);
  let c = {
    type: "element",
    tagName: "sup",
    properties: {},
    children: [l]
  };
  return e.patch(t, c), e.applyData(t, c);
}
function TR(e, t) {
  let r = {
    type: "element",
    tagName: "h" + t.depth,
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function PR(e, t) {
  if (e.options.allowDangerousHtml) {
    let r = { type: "raw", value: t.value };
    return e.patch(t, r), e.applyData(t, r);
  }
}
function Db(e, t) {
  let r = t.referenceType, i = "]";
  if (r === "collapsed" ? i += "[]" : r === "full" && (i += "[" + (t.label || t.identifier) + "]"), t.type === "imageReference")
    return [{ type: "text", value: "![" + t.alt + i }];
  let n = e.all(t), u = n[0];
  u && u.type === "text" ? u.value = "[" + u.value : n.unshift({ type: "text", value: "[" });
  let a = n[n.length - 1];
  return a && a.type === "text" ? a.value += i : n.push({ type: "text", value: i }), n;
}
function IR(e, t) {
  let r = String(t.identifier).toUpperCase(), i = e.definitionById.get(r);
  if (!i)
    return Db(e, t);
  let n = { src: Hn(i.url || ""), alt: t.alt };
  i.title !== null && i.title !== void 0 && (n.title = i.title);
  let u = { type: "element", tagName: "img", properties: n, children: [] };
  return e.patch(t, u), e.applyData(t, u);
}
function OR(e, t) {
  let r = { src: Hn(t.url) };
  t.alt !== null && t.alt !== void 0 && (r.alt = t.alt), t.title !== null && t.title !== void 0 && (r.title = t.title);
  let i = { type: "element", tagName: "img", properties: r, children: [] };
  return e.patch(t, i), e.applyData(t, i);
}
function RR(e, t) {
  let r = { type: "text", value: t.value.replace(/\r?\n|\r/g, " ") };
  e.patch(t, r);
  let i = {
    type: "element",
    tagName: "code",
    properties: {},
    children: [r]
  };
  return e.patch(t, i), e.applyData(t, i);
}
function NR(e, t) {
  let r = String(t.identifier).toUpperCase(), i = e.definitionById.get(r);
  if (!i)
    return Db(e, t);
  let n = { href: Hn(i.url || "") };
  i.title !== null && i.title !== void 0 && (n.title = i.title);
  let u = {
    type: "element",
    tagName: "a",
    properties: n,
    children: e.all(t)
  };
  return e.patch(t, u), e.applyData(t, u);
}
function LR(e, t) {
  let r = { href: Hn(t.url) };
  t.title !== null && t.title !== void 0 && (r.title = t.title);
  let i = {
    type: "element",
    tagName: "a",
    properties: r,
    children: e.all(t)
  };
  return e.patch(t, i), e.applyData(t, i);
}
function MR(e, t, r) {
  let i = e.all(t), n = r ? jR(r) : gb(t), u = {}, a = [];
  if (typeof t.checked == "boolean") {
    let h = i[0], p;
    h && h.type === "element" && h.tagName === "p" ? p = h : (p = { type: "element", tagName: "p", properties: {}, children: [] }, i.unshift(
    p)), p.children.length > 0 && p.children.unshift({ type: "text", value: " " }), p.children.unshift({
      type: "element",
      tagName: "input",
      properties: { type: "checkbox", checked: t.checked, disabled: !0 },
      children: []
    }), u.className = ["task-list-item"];
  }
  let o = -1;
  for (; ++o < i.length; ) {
    let h = i[o];
    (n || o !== 0 || h.type !== "element" || h.tagName !== "p") && a.push({ type: "text", value: `
` }), h.type === "element" && h.tagName === "p" && !n ? a.push(...h.children) : a.push(h);
  }
  let l = i[i.length - 1];
  l && (n || l.type !== "element" || l.tagName !== "p") && a.push({ type: "text", value: `
` });
  let c = { type: "element", tagName: "li", properties: u, children: a };
  return e.patch(t, c), e.applyData(t, c);
}
function jR(e) {
  let t = !1;
  if (e.type === "list") {
    t = e.spread || !1;
    let r = e.children, i = -1;
    for (; !t && ++i < r.length; )
      t = gb(r[i]);
  }
  return t;
}
function gb(e) {
  let t = e.spread;
  return t ?? e.children.length > 1;
}
function qR(e, t) {
  let r = {}, i = e.all(t), n = -1;
  for (typeof t.start == "number" && t.start !== 1 && (r.start = t.start); ++n < i.length; ) {
    let a = i[n];
    if (a.type === "element" && a.tagName === "li" && a.properties && Array.isArray(a.properties.className) && a.properties.className.includes(
    "task-list-item")) {
      r.className = ["contains-task-list"];
      break;
    }
  }
  let u = {
    type: "element",
    tagName: t.ordered ? "ol" : "ul",
    properties: r,
    children: e.wrap(i, !0)
  };
  return e.patch(t, u), e.applyData(t, u);
}
function $R(e, t) {
  let r = {
    type: "element",
    tagName: "p",
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function VR(e, t) {
  let r = { type: "root", children: e.wrap(e.all(t)) };
  return e.patch(t, r), e.applyData(t, r);
}
function UR(e, t) {
  let r = {
    type: "element",
    tagName: "strong",
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function zR(e, t) {
  let r = e.all(t), i = r.shift(), n = [];
  if (i) {
    let a = {
      type: "element",
      tagName: "thead",
      properties: {},
      children: e.wrap([i], !0)
    };
    e.patch(t.children[0], a), n.push(a);
  }
  if (r.length > 0) {
    let a = {
      type: "element",
      tagName: "tbody",
      properties: {},
      children: e.wrap(r, !0)
    }, o = ip(t.children[1]), l = rp(t.children[t.children.length - 1]);
    o && l && (a.position = { start: o, end: l }), n.push(a);
  }
  let u = {
    type: "element",
    tagName: "table",
    properties: {},
    children: e.wrap(n, !0)
  };
  return e.patch(t, u), e.applyData(t, u);
}
function HR(e, t, r) {
  let i = r ? r.children : void 0, u = (i ? i.indexOf(t) : 1) === 0 ? "th" : "td", a = r && r.type === "table" ? r.align : void 0, o = a ? a.
  length : t.children.length, l = -1, c = [];
  for (; ++l < o; ) {
    let p = t.children[l], d = {}, m = a ? a[l] : void 0;
    m && (d.align = m);
    let D = { type: "element", tagName: u, properties: d, children: [] };
    p && (D.children = e.all(p), e.patch(p, D), D = e.applyData(p, D)), c.push(D);
  }
  let h = {
    type: "element",
    tagName: "tr",
    properties: {},
    children: e.wrap(c, !0)
  };
  return e.patch(t, h), e.applyData(t, h);
}
function WR(e, t) {
  let r = {
    type: "element",
    tagName: "td",
    // Assume body cell.
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, r), e.applyData(t, r);
}
function JR(e) {
  let t = String(e), r = /\r?\n|\r/g, i = r.exec(t), n = 0, u = [];
  for (; i; )
    u.push(
      EE(t.slice(n, i.index), n > 0, !0),
      i[0]
    ), n = i.index + i[0].length, i = r.exec(t);
  return u.push(EE(t.slice(n), n > 0, !1)), u.join("");
}
function EE(e, t, r) {
  let i = 0, n = e.length;
  if (t) {
    let u = e.codePointAt(i);
    for (; u === xE || u === yE; )
      i++, u = e.codePointAt(i);
  }
  if (r) {
    let u = e.codePointAt(n - 1);
    for (; u === xE || u === yE; )
      n--, u = e.codePointAt(n - 1);
  }
  return n > i ? e.slice(i, n) : "";
}
function GR(e, t) {
  let r = { type: "text", value: JR(String(t.value)) };
  return e.patch(t, r), e.applyData(t, r);
}
function XR(e, t) {
  let r = {
    type: "element",
    tagName: "hr",
    properties: {},
    children: []
  };
  return e.patch(t, r), e.applyData(t, r);
}
function La() {
}
function t7(e, t) {
  let r = [{ type: "text", value: "\u21A9" }];
  return t > 1 && r.push({
    type: "element",
    tagName: "sup",
    properties: {},
    children: [{ type: "text", value: String(t) }]
  }), r;
}
function r7(e, t) {
  return "Back to reference " + (e + 1) + (t > 1 ? "-" + t : "");
}
function i7(e) {
  let t = typeof e.options.clobberPrefix == "string" ? e.options.clobberPrefix : "user-content-", r = e.options.footnoteBackContent || t7, i = e.
  options.footnoteBackLabel || r7, n = e.options.footnoteLabel || "Footnotes", u = e.options.footnoteLabelTagName || "h2", a = e.options.footnoteLabelProperties ||
  {
    className: ["sr-only"]
  }, o = [], l = -1;
  for (; ++l < e.footnoteOrder.length; ) {
    let c = e.footnoteById.get(e.footnoteOrder[l]);
    if (!c)
      continue;
    let h = e.all(c), p = String(c.identifier).toUpperCase(), d = Hn(p.toLowerCase()), m = 0, D = [], g = e.footnoteCounts.get(p);
    for (; g !== void 0 && ++m <= g; ) {
      D.length > 0 && D.push({ type: "text", value: " " });
      let C = typeof r == "string" ? r : r(l, m);
      typeof C == "string" && (C = { type: "text", value: C }), D.push({
        type: "element",
        tagName: "a",
        properties: {
          href: "#" + t + "fnref-" + d + (m > 1 ? "-" + m : ""),
          dataFootnoteBackref: "",
          ariaLabel: typeof i == "string" ? i : i(l, m),
          className: ["data-footnote-backref"]
        },
        children: Array.isArray(C) ? C : [C]
      });
    }
    let v = h[h.length - 1];
    if (v && v.type === "element" && v.tagName === "p") {
      let C = v.children[v.children.length - 1];
      C && C.type === "text" ? C.value += " " : v.children.push({ type: "text", value: " " }), v.children.push(...D);
    } else
      h.push(...D);
    let x = {
      type: "element",
      tagName: "li",
      properties: { id: t + "fn-" + d },
      children: e.wrap(h, !0)
    };
    e.patch(c, x), o.push(x);
  }
  if (o.length !== 0)
    return {
      type: "element",
      tagName: "section",
      properties: { dataFootnotes: !0, className: ["footnotes"] },
      children: [
        {
          type: "element",
          tagName: u,
          properties: {
            ...Wa(a),
            id: "footnote-label"
          },
          children: [{ type: "text", value: n }]
        },
        { type: "text", value: `
` },
        {
          type: "element",
          tagName: "ol",
          properties: {},
          children: e.wrap(o, !0)
        },
        { type: "text", value: `
` }
      ]
    };
}
function n7(e) {
  let t = [], r = -1;
  for (; ++r < e.length; )
    t[r] = bb(e[r]);
  return Xa(i);
  function i(...n) {
    let u = -1;
    for (; ++u < t.length; )
      if (t[u].apply(this, n))
        return !0;
    return !1;
  }
}
function s7(e) {
  let t = (
    /** @type {Record<string, unknown>} */
    e
  );
  return Xa(r);
  function r(i) {
    let n = (
      /** @type {Record<string, unknown>} */
      /** @type {unknown} */
      i
    ), u;
    for (u in e)
      if (n[u] !== t[u])
        return !1;
    return !0;
  }
}
function u7(e) {
  return Xa(t);
  function t(r) {
    return r && r.type === e;
  }
}
function Xa(e) {
  return t;
  function t(r, i, n) {
    return !!(o7(r) && e.call(
      this,
      r,
      typeof i == "number" ? i : void 0,
      n || void 0
    ));
  }
}
function a7() {
  return !0;
}
function o7(e) {
  return e !== null && typeof e == "object" && "type" in e;
}
function l7(e) {
  return "\x1B[33m" + e + "\x1B[39m";
}
function p7(e, t, r, i) {
  let n;
  typeof t == "function" && typeof r != "function" ? (i = r, r = t) : n = t;
  let u = bb(n), a = i ? -1 : 1;
  o(e, void 0, [])();
  function o(l, c, h) {
    let p = (
      /** @type {Record<string, unknown>} */
      l && typeof l == "object" ? l : {}
    );
    if (typeof p.type == "string") {
      let m = (
        // `hast`
        typeof p.tagName == "string" ? p.tagName : (
          // `xast`
          typeof p.name == "string" ? p.name : void 0
        )
      );
      Object.defineProperty(d, "name", {
        value: "node (" + l7(l.type + (m ? "<" + m + ">" : "")) + ")"
      });
    }
    return d;
    function d() {
      let m = vb, D, g, v;
      if ((!t || u(l, c, h[h.length - 1] || void 0)) && (m = f7(r(l, h)), m[0] === wE))
        return m;
      if ("children" in l && l.children) {
        let x = (
          /** @type {UnistParent} */
          l
        );
        if (x.children && m[0] !== h7)
          for (g = (i ? x.children.length : -1) + a, v = h.concat(x); g > -1 && g < x.children.length; ) {
            let C = x.children[g];
            if (D = o(C, g, v)(), D[0] === wE)
              return D;
            g = typeof D[1] == "number" ? D[1] : g + a;
          }
      }
      return m;
    }
  }
  s(o, "factory");
}
function f7(e) {
  return Array.isArray(e) ? e : typeof e == "number" ? [c7, e] : e == null ? vb : [e];
}
function Yp(e, t, r, i) {
  let n, u, a;
  typeof t == "function" && typeof r != "function" ? (u = void 0, a = t, n = r) : (u = t, a = r, n = i), p7(e, u, o, n);
  function o(l, c) {
    let h = c[c.length - 1], p = h ? h.children.indexOf(l) : void 0;
    return a(l, p, h);
  }
  s(o, "overload");
}
function m7(e, t) {
  let r = t || d7, i = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map(), a = { ...YR, ...r.handlers },
  o = {
    all: c,
    applyData: g7,
    definitionById: i,
    footnoteById: n,
    footnoteCounts: u,
    footnoteOrder: [],
    handlers: a,
    one: l,
    options: r,
    patch: D7,
    wrap: y7
  };
  return Yp(e, function(h) {
    if (h.type === "definition" || h.type === "footnoteDefinition") {
      let p = h.type === "definition" ? i : n, d = String(h.identifier).toUpperCase();
      p.has(d) || p.set(d, h);
    }
  }), o;
  function l(h, p) {
    let d = h.type, m = o.handlers[d];
    if ($p.call(o.handlers, d) && m)
      return m(o, h, p);
    if (o.options.passThrough && o.options.passThrough.includes(d)) {
      if ("children" in h) {
        let { children: g, ...v } = h, x = Wa(v);
        return x.children = o.all(h), x;
      }
      return Wa(h);
    }
    return (o.options.unknownHandler || x7)(o, h, p);
  }
  s(l, "one2");
  function c(h) {
    let p = [];
    if ("children" in h) {
      let d = h.children, m = -1;
      for (; ++m < d.length; ) {
        let D = o.one(d[m], h);
        if (D) {
          if (m && d[m - 1].type === "break" && (!Array.isArray(D) && D.type === "text" && (D.value = AE(D.value)), !Array.isArray(D) && D.type ===
          "element")) {
            let g = D.children[0];
            g && g.type === "text" && (g.value = AE(g.value));
          }
          Array.isArray(D) ? p.push(...D) : p.push(D);
        }
      }
    }
    return p;
  }
  s(c, "all2");
}
function D7(e, t) {
  e.position && (t.position = np(e));
}
function g7(e, t) {
  let r = t;
  if (e && e.data) {
    let i = e.data.hName, n = e.data.hChildren, u = e.data.hProperties;
    if (typeof i == "string")
      if (r.type === "element")
        r.tagName = i;
      else {
        let a = "children" in r ? r.children : [r];
        r = { type: "element", tagName: i, properties: {}, children: a };
      }
    r.type === "element" && u && Object.assign(r.properties, Wa(u)), "children" in r && r.children && n !== null && n !== void 0 && (r.children =
    n);
  }
  return r;
}
function x7(e, t) {
  let r = t.data || {}, i = "value" in t && !($p.call(r, "hProperties") || $p.call(r, "hChildren")) ? { type: "text", value: t.value } : {
    type: "element",
    tagName: "div",
    properties: {},
    children: e.all(t)
  };
  return e.patch(t, i), e.applyData(t, i);
}
function y7(e, t) {
  let r = [], i = -1;
  for (t && r.push({ type: "text", value: `
` }); ++i < e.length; )
    i && r.push({ type: "text", value: `
` }), r.push(e[i]);
  return t && e.length > 0 && r.push({ type: "text", value: `
` }), r;
}
function AE(e) {
  let t = 0, r = e.charCodeAt(t);
  for (; r === 9 || r === 32; )
    t++, r = e.charCodeAt(t);
  return e.slice(t);
}
function FE(e, t) {
  let r = m7(e, t), i = r.one(e, void 0), n = i7(r), u = Array.isArray(i) ? { type: "root", children: i } : i || { type: "root", children: [] };
  return n && ("children" in u, u.children.push({ type: "text", value: `
` }, n)), u;
}
function E7(e, t) {
  return e && "run" in e ? async function(r, i) {
    let n = (
      /** @type {HastRoot} */
      FE(r, t)
    );
    await e.run(n, i);
  } : function(r) {
    return (
      /** @type {HastRoot} */
      FE(r, t || e)
    );
  };
}
function SE(e) {
  if (e)
    throw e;
}
function Vp(e) {
  if (typeof e != "object" || e === null)
    return !1;
  let t = Object.getPrototypeOf(e);
  return (t === null || t === Object.prototype || Object.getPrototypeOf(t) === null) && !(Symbol.toStringTag in e) && !(Symbol.iterator in e);
}
function b7() {
  let e = [], t = { run: r, use: i };
  return t;
  function r(...n) {
    let u = -1, a = n.pop();
    if (typeof a != "function")
      throw new TypeError("Expected function as last argument, not " + a);
    o(null, ...n);
    function o(l, ...c) {
      let h = e[++u], p = -1;
      if (l) {
        a(l);
        return;
      }
      for (; ++p < n.length; )
        (c[p] === null || c[p] === void 0) && (c[p] = n[p]);
      n = c, h ? v7(h, o)(...c) : a(null, ...c);
    }
    s(o, "next");
  }
  function i(n) {
    if (typeof n != "function")
      throw new TypeError(
        "Expected `middelware` to be a function, not " + n
      );
    return e.push(n), t;
  }
}
function v7(e, t) {
  let r;
  return i;
  function i(...a) {
    let o = e.length > a.length, l;
    o && a.push(n);
    try {
      l = e.apply(this, a);
    } catch (c) {
      let h = (
        /** @type {Error} */
        c
      );
      if (o && r)
        throw h;
      return n(h);
    }
    o || (l instanceof Promise ? l.then(u, n) : l instanceof Error ? n(l) : u(l));
  }
  function n(a, ...o) {
    r || (r = !0, t(a, ...o));
  }
  function u(a) {
    n(null, a);
  }
}
function Tp(e, t) {
  if (typeof t != "function")
    throw new TypeError("Cannot `" + e + "` without `parser`");
}
function Pp(e, t) {
  if (typeof t != "function")
    throw new TypeError("Cannot `" + e + "` without `compiler`");
}
function Ip(e, t) {
  if (t)
    throw new Error(
      "Cannot call `" + e + "` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`."
    );
}
function _E(e) {
  if (!Vp(e) || typeof e.type != "string")
    throw new TypeError("Expected node, got `" + e + "`");
}
function kE(e, t, r) {
  if (!r)
    throw new Error(
      "`" + e + "` finished async. Use `" + t + "` instead"
    );
}
function ja(e) {
  return F7(e) ? e : new WE(e);
}
function F7(e) {
  return !!(e && typeof e == "object" && "message" in e && "messages" in e);
}
function S7(e) {
  return typeof e == "string" || _7(e);
}
function _7(e) {
  return !!(e && typeof e == "object" && "byteLength" in e && "byteOffset" in e);
}
function BE(e) {
  return e !== null && typeof e == "object" && "type" in e && typeof e.type == "string";
}
function Us(e, { enter: t, leave: r }) {
  return new B7(t, r).visit(e, null);
}
function wb(e, t) {
  if (e.type === "MemberExpression")
    return !e.computed && wb(e.object, e);
  if (e.type === "Identifier") {
    if (!t)
      return !0;
    switch (t.type) {
      case "MemberExpression":
        return t.computed || e === t.object;
      case "MethodDefinition":
        return t.computed;
      case "PropertyDefinition":
        return t.computed || e === t.value;
      case "Property":
        return t.computed || e === t.value;
      case "ExportSpecifier":
      case "ImportSpecifier":
        return e === t.local;
      case "LabeledStatement":
      case "BreakStatement":
      case "ContinueStatement":
        return !1;
      default:
        return !0;
    }
  }
  return !1;
}
function Ab(e) {
  let t = /* @__PURE__ */ new WeakMap(), r = /* @__PURE__ */ new Map(), i = new jn(null, !1), n = [], u = i;
  Us(e, {
    enter(a, o) {
      switch (a.type) {
        case "Identifier":
          o && wb(a, o) && n.push([u, a]);
          break;
        case "ImportDeclaration":
          a.specifiers.forEach((l) => {
            u.declarations.set(l.local.name, l);
          });
          break;
        case "FunctionExpression":
        case "FunctionDeclaration":
        case "ArrowFunctionExpression":
          a.type === "FunctionDeclaration" ? (a.id && u.declarations.set(a.id.name, a), t.set(a, u = new jn(u, !1))) : (t.set(a, u = new jn(
          u, !1)), a.type === "FunctionExpression" && a.id && u.declarations.set(a.id.name, a)), a.params.forEach((l) => {
            Up(l).forEach((c) => {
              u.declarations.set(c, a);
            });
          });
          break;
        case "ForStatement":
        case "ForInStatement":
        case "ForOfStatement":
          t.set(a, u = new jn(u, !0));
          break;
        case "BlockStatement":
          t.set(a, u = new jn(u, !0));
          break;
        case "ClassDeclaration":
        case "VariableDeclaration":
          u.add_declaration(a);
          break;
        case "CatchClause":
          t.set(a, u = new jn(u, !0)), a.param && Up(a.param).forEach((l) => {
            a.param && u.declarations.set(l, a.param);
          });
          break;
      }
    },
    leave(a) {
      t.has(a) && u !== null && u.parent && (u = u.parent);
    }
  });
  for (let a = n.length - 1; a >= 0; --a) {
    let [o, l] = n[a];
    o.references.has(l.name) || Fb(o, l.name), o.find_owner(l.name) || r.set(l.name, l);
  }
  return { map: t, scope: i, globals: r };
}
function Fb(e, t) {
  e.references.add(t), e.parent && Fb(e.parent, t);
}
function Up(e) {
  return Vn(e).map((t) => t.name);
}
function Vn(e, t = []) {
  switch (e.type) {
    case "Identifier":
      t.push(e);
      break;
    case "MemberExpression":
      let r = e;
      for (; r.type === "MemberExpression"; )
        r = /** @type {any} */
        r.object;
      t.push(
        /** @type {any} */
        r
      );
      break;
    case "ObjectPattern":
      let i = /* @__PURE__ */ s((u) => {
        u.type === "RestElement" ? Vn(u.argument, t) : Vn(u.value, t);
      }, "handle_prop");
      e.properties.forEach(i);
      break;
    case "ArrayPattern":
      let n = /* @__PURE__ */ s((u) => {
        u && Vn(u, t);
      }, "handle_element");
      e.elements.forEach((u) => {
        u && n(u);
      });
      break;
    case "RestElement":
      Vn(e.argument, t);
      break;
    case "AssignmentPattern":
      Vn(e.left, t);
      break;
  }
  return t;
}
function Fi(e, t) {
  let r = ["start", "end", "loc", "range", "comments"], i = -1;
  for (; ++i < r.length; ) {
    let n = r[i];
    n in e && (t[n] = e[n]);
  }
}
function T7(e) {
  return e.type === "FunctionDeclaration" ? { ...e, type: "FunctionExpression" } : (e.type, { ...e, type: "ClassExpression" });
}
function P7(e) {
  return e.type === "FunctionDeclaration" || e.type === "ClassDeclaration" || e.type === "VariableDeclaration";
}
function Kp(e, t) {
  let r = -1, i = [], n = [], u;
  for (; ++r < e.length; ) {
    let a = e[r];
    a.type === "ImportNamespaceSpecifier" ? u = a : n.push(a);
  }
  if (u) {
    let a = {
      type: "VariableDeclarator",
      id: u.local,
      init: t
    };
    Fi(u, a), i.push(a);
  }
  return i.push({
    type: "VariableDeclarator",
    id: {
      type: "ObjectPattern",
      properties: n.map(function(a) {
        let o = a.type === "ImportSpecifier" ? a.imported : a.type === "ExportSpecifier" ? a.exported : { type: "Identifier", name: "default" },
        l = a.local;
        a.type === "ExportSpecifier" && (l = o, o = a.local);
        let c = {
          type: "Property",
          kind: "init",
          shorthand: o.name === l.name,
          method: !1,
          computed: !1,
          key: o,
          value: l
        };
        return Fi(a, c), c;
      })
    },
    init: u ? { type: "Identifier", name: u.local.name } : t
  }), i;
}
function Si(e) {
  let t = -1, r;
  for (; ++t < e.length; ) {
    let i = e[t], n = typeof i == "string" && cr(i) ? { type: "Identifier", name: i } : { type: "Literal", value: i };
    r = r ? {
      type: "MemberExpression",
      object: r,
      property: n,
      computed: n.type === "Literal",
      optional: !1
    } : n;
  }
  return r.type, r;
}
function TE(e) {
  let t = -1, r;
  for (; ++t < e.length; ) {
    let i = e[t];
    typeof i == "string" && cr(i, { jsx: !0 }), "" + i;
    let n = { type: "JSXIdentifier", name: i };
    r = r ? { type: "JSXMemberExpression", object: r, property: n } : n;
  }
  return r;
}
function I7(e) {
  let t = e.baseUrl || void 0, r = typeof t == "object" ? t.href : t, i = e.outputFormat || "program", n = e.pragma === void 0 ? "React.crea\
teElement" : e.pragma, u = e.pragmaFrag === void 0 ? "React.Fragment" : e.pragmaFrag, a = e.pragmaImportSource || "react", o = e.jsxImportSource ||
  "react", l = e.jsxRuntime || "automatic";
  return function(h, p) {
    let d = [], m = [], D = [], g = 0, v, x, C;
    if (l && D.push("@jsxRuntime " + l), l === "automatic" && o && D.push("@jsxImportSource " + o), l === "classic" && n && D.push("@jsx " +
    n), l === "classic" && u && D.push("@jsxFrag " + u), h.comments || (h.comments = []), D.length > 0 && h.comments.unshift({
      type: "Block",
      value: D.join(" "),
      data: { _mdxIsPragmaComment: !0 }
    }), l === "classic" && a) {
      if (!n)
        throw new Error(
          "Missing `pragma` in classic runtime with `pragmaImportSource`"
        );
      w({
        type: "ImportDeclaration",
        specifiers: [
          {
            type: "ImportDefaultSpecifier",
            local: { type: "Identifier", name: n.split(".")[0] }
          }
        ],
        source: { type: "Literal", value: a }
      });
    }
    for (C of h.body)
      if (C.type === "ExportDefaultDeclaration")
        v && p.fail(
          "Unexpected duplicate layout, expected a single layout (previous: " + Zt(Zr(v)) + ")",
          {
            ancestors: [h, C],
            place: Zr(C),
            ruleId: "duplicate-layout",
            source: "recma-document"
          }
        ), v = C, m.push({
          type: "VariableDeclaration",
          kind: "const",
          declarations: [
            {
              type: "VariableDeclarator",
              id: { type: "Identifier", name: "MDXLayout" },
              init: P7(C.declaration) ? T7(C.declaration) : C.declaration
            }
          ]
        });
      else if (C.type === "ExportNamedDeclaration" && C.source) {
        let A = (
          /** @type {SimpleLiteral} */
          C.source
        );
        C.specifiers = C.specifiers.filter(function(T) {
          if (T.exported.name === "default") {
            v && p.fail(
              "Unexpected duplicate layout, expected a single layout (previous: " + Zt(Zr(v)) + ")",
              {
                ancestors: [h, C, T],
                place: Zr(C),
                ruleId: "duplicate-layout",
                source: "recma-document"
              }
            ), v = T;
            let B = [];
            if (T.local.name === "default")
              B.push({
                type: "ImportDefaultSpecifier",
                local: { type: "Identifier", name: "MDXLayout" }
              });
            else {
              let V = {
                type: "ImportSpecifier",
                imported: T.local,
                local: { type: "Identifier", name: "MDXLayout" }
              };
              Fi(T.local, V), B.push(V);
            }
            let $ = { type: "Literal", value: A.value };
            Fi(A, $);
            let L = {
              type: "ImportDeclaration",
              specifiers: B,
              source: $
            };
            return Fi(T, L), w(L), !1;
          }
          return !0;
        }), C.specifiers.length > 0 && j(C);
      } else C.type === "ExportNamedDeclaration" || C.type === "ExportAllDeclaration" ? j(C) : C.type === "ImportDeclaration" ? w(C) : C.type ===
      "ExpressionStatement" && (C.expression.type === "JSXElement" || // @ts-expect-error: `estree-jsx` does not register `JSXFragment` as an expression.
      C.expression.type === "JSXFragment") ? (x = !0, m.push(
        ...c(C.expression, i, !!v)
      )) : m.push(C);
    x || m.push(
      ...c(void 0, i, !!v)
    ), d.push(["MDXContent", "default"]), i === "function-body" && m.push({
      type: "ReturnStatement",
      argument: {
        type: "ObjectExpression",
        properties: [
          ...Array.from({ length: g }).map(
            /**
             * @param {undefined} _
             *   Nothing.
             * @param {number} index
             *   Index.
             * @returns {SpreadElement}
             *   Node.
             */
            function(A, T) {
              return {
                type: "SpreadElement",
                argument: {
                  type: "Identifier",
                  name: "_exportAll" + (T + 1)
                }
              };
            }
          ),
          ...d.map(function(A) {
            return {
              type: "Property",
              kind: "init",
              method: !1,
              computed: !1,
              shorthand: typeof A == "string",
              key: {
                type: "Identifier",
                name: typeof A == "string" ? A : A[1]
              },
              value: {
                type: "Identifier",
                name: typeof A == "string" ? A : A[0]
              }
            };
          })
        ]
      }
    }), h.body = m;
    let S = !1, k = !1;
    (r || i === "function-body") && Us(h, {
      enter(A) {
        if ((A.type === "ExportAllDeclaration" || A.type === "ExportNamedDeclaration" || A.type === "ImportDeclaration") && A.source) {
          let T = A.source.value;
          try {
            new URL(T);
          } catch {
            (T.startsWith("/") || T.startsWith("./") || T.startsWith("../")) && (T = new URL(T, r).href);
          }
          let B = { type: "Literal", value: T };
          Fi(A.source, B), A.source = B;
          return;
        }
        if (A.type === "ImportExpression") {
          k = !0;
          let T = {
            type: "CallExpression",
            callee: { type: "Identifier", name: "_resolveDynamicMdxSpecifier" },
            arguments: [A.source],
            optional: !1
          };
          A.source = T;
          return;
        }
        if (A.type === "MemberExpression" && "object" in A && A.object.type === "MetaProperty" && A.property.type === "Identifier" && A.object.
        meta.name === "import" && A.object.property.name === "meta" && A.property.name === "url") {
          S = !0;
          let T = { type: "Identifier", name: "_importMetaUrl" };
          Fi(A, T), this.replace(T);
        }
      }
    }), k && (r || (S = !0), h.body.push(
      O7(
        r ? { type: "Literal", value: r } : { type: "Identifier", name: "_importMetaUrl" }
      )
    )), S && h.body.unshift(...R7());
    function j(A) {
      if (A.type === "ExportNamedDeclaration") {
        A.declaration && d.push(
          ...Ab(A.declaration).scope.declarations.keys()
        );
        for (C of A.specifiers)
          d.push(C.exported.name);
      }
      w(A);
    }
    s(j, "handleExport");
    function w(A) {
      let T, B;
      if (i === "function-body")
        if (
          // Always have a source:
          A.type === "ImportDeclaration" || A.type === "ExportAllDeclaration" || // Source optional:
          A.type === "ExportNamedDeclaration" && A.source
        ) {
          A.source;
          let $ = { type: "ImportExpression", source: A.source };
          Fi(A, $), B = { type: "AwaitExpression", argument: $ }, (A.type === "ImportDeclaration" || A.type === "ExportNamedDeclaration") &&
          A.specifiers.length === 0 ? T = { type: "ExpressionStatement", expression: B } : T = {
            type: "VariableDeclaration",
            kind: "const",
            declarations: A.type === "ExportAllDeclaration" ? [
              {
                type: "VariableDeclarator",
                id: {
                  type: "Identifier",
                  name: "_exportAll" + ++g
                },
                init: B
              }
            ] : Kp(A.specifiers, B)
          };
        } else if (A.declaration)
          T = A.declaration;
        else {
          let $ = A.specifiers.filter(function(L) {
            return L.local.name !== L.exported.name;
          }).map(function(L) {
            return {
              type: "VariableDeclarator",
              id: L.exported,
              init: L.local
            };
          });
          $.length > 0 && (T = {
            type: "VariableDeclaration",
            kind: "const",
            declarations: $
          });
        }
      else
        T = A;
      T && m.push(T);
    }
    s(w, "handleEsm");
  };
  function c(h, p, d) {
    let D = {
      type: "JSXElement",
      openingElement: {
        type: "JSXOpeningElement",
        name: { type: "JSXIdentifier", name: "MDXLayout" },
        attributes: [
          {
            type: "JSXSpreadAttribute",
            argument: { type: "Identifier", name: "props" }
          }
        ],
        selfClosing: !1
      },
      closingElement: {
        type: "JSXClosingElement",
        name: { type: "JSXIdentifier", name: "MDXLayout" }
      },
      children: [
        {
          type: "JSXElement",
          openingElement: {
            type: "JSXOpeningElement",
            name: { type: "JSXIdentifier", name: "_createMdxContent" },
            attributes: [
              {
                type: "JSXSpreadAttribute",
                argument: { type: "Identifier", name: "props" }
              }
            ],
            selfClosing: !0
          },
          closingElement: null,
          children: []
        }
      ]
    };
    d || (D = {
      type: "ConditionalExpression",
      test: { type: "Identifier", name: "MDXLayout" },
      consequent: D,
      alternate: {
        type: "CallExpression",
        callee: { type: "Identifier", name: "_createMdxContent" },
        arguments: [{ type: "Identifier", name: "props" }],
        optional: !1
      }
    });
    let g = (
      // Cast because TS otherwise does not think `JSXFragment`s are expressions.
      /** @type {Readonly<Expression> | Readonly<JSXFragment>} */
      h || { type: "Identifier", name: "undefined" }
    );
    g.type === "JSXFragment" && g.children.length === 1 && g.children[0].type === "JSXElement" && (g = g.children[0]);
    let v = !1;
    Us(g, {
      enter(C) {
        if (C.type === "ArrowFunctionExpression" || C.type === "FunctionDeclaration" || C.type === "FunctionExpression")
          return this.skip();
        (C.type === "AwaitExpression" || /* c8 ignore next 2 -- can only occur in a function (which then can
        * only be async, so skipped it) */
        C.type === "ForOfStatement" && C.await) && (v = !0);
      }
    });
    let x = {
      type: "FunctionDeclaration",
      id: { type: "Identifier", name: "MDXContent" },
      params: [
        {
          type: "AssignmentPattern",
          left: { type: "Identifier", name: "props" },
          right: { type: "ObjectExpression", properties: [] }
        }
      ],
      body: {
        type: "BlockStatement",
        body: [{ type: "ReturnStatement", argument: D }]
      }
    };
    return [
      {
        type: "FunctionDeclaration",
        async: v,
        id: { type: "Identifier", name: "_createMdxContent" },
        params: [{ type: "Identifier", name: "props" }],
        body: {
          type: "BlockStatement",
          body: [
            {
              type: "ReturnStatement",
              // Cast because TS doesn’t think `JSXFragment` is an expression.
              // eslint-disable-next-line object-shorthand
              argument: (
                /** @type {Expression} */
                g
              )
            }
          ]
        }
      },
      p === "program" ? { type: "ExportDefaultDeclaration", declaration: x } : x
    ];
  }
}
function O7(e) {
  return {
    type: "FunctionDeclaration",
    id: { type: "Identifier", name: "_resolveDynamicMdxSpecifier" },
    generator: !1,
    async: !1,
    params: [{ type: "Identifier", name: "d" }],
    body: {
      type: "BlockStatement",
      body: [
        {
          type: "IfStatement",
          test: {
            type: "BinaryExpression",
            left: {
              type: "UnaryExpression",
              operator: "typeof",
              prefix: !0,
              argument: { type: "Identifier", name: "d" }
            },
            operator: "!==",
            right: { type: "Literal", value: "string" }
          },
          consequent: {
            type: "ReturnStatement",
            argument: { type: "Identifier", name: "d" }
          },
          alternate: null
        },
        // To do: use `URL.canParse` when widely supported (see commented
        // out code below).
        {
          type: "TryStatement",
          block: {
            type: "BlockStatement",
            body: [
              {
                type: "ExpressionStatement",
                expression: {
                  type: "NewExpression",
                  callee: { type: "Identifier", name: "URL" },
                  arguments: [{ type: "Identifier", name: "d" }]
                }
              },
              {
                type: "ReturnStatement",
                argument: { type: "Identifier", name: "d" }
              }
            ]
          },
          handler: {
            type: "CatchClause",
            param: null,
            body: { type: "BlockStatement", body: [] }
          },
          finalizer: null
        },
        // To do: use `URL.canParse` when widely supported.
        // {
        //   type: 'IfStatement',
        //   test: {
        //     type: 'CallExpression',
        //     callee: toIdOrMemberExpression(['URL', 'canParse']),
        //     arguments: [{type: 'Identifier', name: 'd'}],
        //     optional: false
        //   },
        //   consequent: {
        //     type: 'ReturnStatement',
        //     argument: {type: 'Identifier', name: 'd'}
        //   },
        //   alternate: null
        // },
        {
          type: "IfStatement",
          test: {
            type: "LogicalExpression",
            left: {
              type: "LogicalExpression",
              left: {
                type: "CallExpression",
                callee: Si(["d", "startsWith"]),
                arguments: [{ type: "Literal", value: "/" }],
                optional: !1
              },
              operator: "||",
              right: {
                type: "CallExpression",
                callee: Si(["d", "startsWith"]),
                arguments: [{ type: "Literal", value: "./" }],
                optional: !1
              }
            },
            operator: "||",
            right: {
              type: "CallExpression",
              callee: Si(["d", "startsWith"]),
              arguments: [{ type: "Literal", value: "../" }],
              optional: !1
            }
          },
          consequent: {
            type: "ReturnStatement",
            argument: {
              type: "MemberExpression",
              object: {
                type: "NewExpression",
                callee: { type: "Identifier", name: "URL" },
                arguments: [{ type: "Identifier", name: "d" }, e]
              },
              property: { type: "Identifier", name: "href" },
              computed: !1,
              optional: !1
            }
          },
          alternate: null
        },
        {
          type: "ReturnStatement",
          argument: { type: "Identifier", name: "d" }
        }
      ]
    }
  };
}
function R7() {
  return [
    {
      type: "VariableDeclaration",
      declarations: [
        {
          type: "VariableDeclarator",
          id: { type: "Identifier", name: "_importMetaUrl" },
          init: Si(["arguments", 0, "baseUrl"])
        }
      ],
      kind: "const"
    },
    {
      type: "IfStatement",
      test: {
        type: "UnaryExpression",
        operator: "!",
        prefix: !0,
        argument: { type: "Identifier", name: "_importMetaUrl" }
      },
      consequent: {
        type: "ThrowStatement",
        argument: {
          type: "NewExpression",
          callee: { type: "Identifier", name: "Error" },
          arguments: [
            {
              type: "Literal",
              value: "Unexpected missing `options.baseUrl` needed to support `export \u2026 from`, `import`, or `import.meta.url` when generating\
 `function-body`"
            }
          ]
        }
      },
      alternate: null
    }
  ];
}
function N7(e, t) {
  let r = t || {}, i = r.runtime === "automatic", n = {}, u = {};
  Us(e, {
    enter(a) {
      if (a.type === "Program") {
        let o = a.comments || [], l = -1;
        for (; ++l < o.length; ) {
          Op.lastIndex = 0;
          let c = Op.exec(o[l].value);
          for (; c; )
            n[c[1]] = c[2], c = Op.exec(o[l].value);
        }
        if (n.jsxRuntime)
          if (n.jsxRuntime === "automatic") {
            if (i = !0, n.jsx)
              throw new Error("Unexpected `@jsx` pragma w/ automatic runtime");
            if (n.jsxFrag)
              throw new Error(
                "Unexpected `@jsxFrag` pragma w/ automatic runtime"
              );
          } else if (n.jsxRuntime === "classic") {
            if (i = !1, n.jsxImportSource)
              throw new Error(
                "Unexpected `@jsxImportSource` w/ classic runtime"
              );
          } else
            throw new Error(
              "Unexpected `jsxRuntime` `" + n.jsxRuntime + "`, expected `automatic` or `classic`"
            );
      }
    },
    // eslint-disable-next-line complexity
    leave(a) {
      if (a.type === "Program") {
        let g = [];
        if (u.fragment && g.push({
          type: "ImportSpecifier",
          imported: { type: "Identifier", name: "Fragment" },
          local: { type: "Identifier", name: "_Fragment" }
        }), u.jsx && g.push({
          type: "ImportSpecifier",
          imported: { type: "Identifier", name: "jsx" },
          local: { type: "Identifier", name: "_jsx" }
        }), u.jsxs && g.push({
          type: "ImportSpecifier",
          imported: { type: "Identifier", name: "jsxs" },
          local: { type: "Identifier", name: "_jsxs" }
        }), u.jsxDEV && g.push({
          type: "ImportSpecifier",
          imported: { type: "Identifier", name: "jsxDEV" },
          local: { type: "Identifier", name: "_jsxDEV" }
        }), g.length > 0) {
          let v = 0;
          for (; v < a.body.length; ) {
            let x = a.body[v];
            if ("directive" in x && x.directive)
              v++;
            else
              break;
          }
          a.body.splice(v, 0, {
            type: "ImportDeclaration",
            specifiers: g,
            source: {
              type: "Literal",
              value: (n.jsxImportSource || r.importSource || "react") + (r.development ? "/jsx-dev-runtime" : "/jsx-runtime")
            }
          });
        }
      }
      if (a.type !== "JSXElement" && a.type !== "JSXFragment")
        return;
      let o = [], l = -1;
      for (; ++l < a.children.length; ) {
        let g = a.children[l];
        if (g.type === "JSXExpressionContainer")
          g.expression.type !== "JSXEmptyExpression" && o.push(g.expression);
        else if (g.type === "JSXText") {
          let v = g.value.replace(/\t/g, " ").replace(/ *(\r?\n|\r) */g, `
`).replace(/\n+/g, `
`).replace(/\n+$/, "").replace(/^\n+/, "").replace(/\n/g, " ");
          if (v) {
            let x = { type: "Literal", value: v };
            $s(g, x), o.push(x);
          }
        } else
          g.type !== "JSXElement" && g.type !== "JSXFragment" && g.type, o.push(g);
      }
      let c, h = [], p = [], d;
      if (a.type === "JSXElement") {
        if (c = Ja(a.openingElement.name), c.type === "Identifier" && /^[a-z]/.test(c.name)) {
          let C = { type: "Literal", value: c.name };
          $s(c, C), c = C;
        }
        let g, v = a.openingElement.attributes, x = -1;
        for (; ++x < v.length; ) {
          let C = v[x];
          if (C.type === "JSXSpreadAttribute")
            C.argument.type === "ObjectExpression" ? h.push(...C.argument.properties) : h.push({ type: "SpreadElement", argument: C.argument }),
            g = !0;
          else {
            let S = L7(C);
            if (i && S.key.type === "Identifier" && S.key.name === "key") {
              if (g)
                throw new Error(
                  "Expected `key` to come before any spread expressions"
                );
              let k = S.value;
              k.type !== "AssignmentPattern" && k.type !== "ArrayPattern" && k.type !== "ObjectPattern" && k.type, d = k;
            } else
              h.push(S);
          }
        }
      } else i ? (u.fragment = !0, c = { type: "Identifier", name: "_Fragment" }) : c = PE(
        n.jsxFrag || r.pragmaFrag || "React.Fragment"
      );
      i ? o.length > 0 && h.push({
        type: "Property",
        key: { type: "Identifier", name: "children" },
        value: o.length > 1 ? { type: "ArrayExpression", elements: o } : o[0],
        kind: "init",
        method: !1,
        shorthand: !1,
        computed: !1
      }) : p = o;
      let m;
      if (i) {
        p.push({ type: "ObjectExpression", properties: h }), d ? p.push(d) : r.development && p.push({ type: "Identifier", name: "undefined" });
        let g = o.length > 1;
        if (r.development) {
          u.jsxDEV = !0, m = {
            type: "Identifier",
            name: "_jsxDEV"
          }, p.push({ type: "Literal", value: g });
          let v = {
            type: "ObjectExpression",
            properties: [
              {
                type: "Property",
                method: !1,
                shorthand: !1,
                computed: !1,
                kind: "init",
                key: { type: "Identifier", name: "fileName" },
                value: {
                  type: "Literal",
                  value: r.filePath || "<source.js>"
                }
              }
            ]
          };
          a.loc && v.properties.push(
            {
              type: "Property",
              method: !1,
              shorthand: !1,
              computed: !1,
              kind: "init",
              key: { type: "Identifier", name: "lineNumber" },
              value: { type: "Literal", value: a.loc.start.line }
            },
            {
              type: "Property",
              method: !1,
              shorthand: !1,
              computed: !1,
              kind: "init",
              key: { type: "Identifier", name: "columnNumber" },
              value: { type: "Literal", value: a.loc.start.column + 1 }
            }
          ), p.push(v, { type: "ThisExpression" });
        } else g ? (u.jsxs = !0, m = { type: "Identifier", name: "_jsxs" }) : (u.jsx = !0, m = { type: "Identifier", name: "_jsx" });
      } else
        h.length > 0 ? p.unshift({ type: "ObjectExpression", properties: h }) : p.length > 0 && p.unshift({ type: "Literal", value: null }),
        m = PE(
          n.jsx || r.pragma || "React.createElement"
        );
      p.unshift(c);
      let D = {
        type: "CallExpression",
        callee: m,
        arguments: p,
        optional: !1
      };
      $s(a, D), this.replace(D);
    }
  });
}
function L7(e) {
  let t;
  if (e.value)
    if (e.value.type === "JSXExpressionContainer") {
      let i = e.value.expression;
      i.type, t = i;
    } else {
      let i = e.value;
      i.type !== "JSXElement" && i.type, t = i, delete t.raw;
    }
  else
    t = { type: "Literal", value: !0 };
  let r = {
    type: "Property",
    key: Ja(e.name),
    value: t,
    kind: "init",
    method: !1,
    shorthand: !1,
    computed: !1
  };
  return $s(e, r), r;
}
function Ja(e) {
  let t;
  if (e.type === "JSXMemberExpression") {
    let r = Ja(e.property);
    t = {
      type: "MemberExpression",
      object: Ja(e.object),
      property: r,
      computed: r.type === "Literal",
      optional: !1
    };
  } else e.type === "JSXNamespacedName" ? t = {
    type: "Literal",
    value: e.namespace.name + ":" + e.name.name
  } : t = cr(e.name) ? { type: "Identifier", name: e.name } : { type: "Literal", value: e.name };
  return $s(e, t), t;
}
function PE(e) {
  let t = e.split("."), r = -1, i;
  for (; ++r < t.length; ) {
    let n = cr(t[r]) ? { type: "Identifier", name: t[r] } : { type: "Literal", value: t[r] };
    i = i ? {
      type: "MemberExpression",
      object: i,
      property: n,
      computed: !!(r && n.type === "Literal"),
      optional: !1
    } : n;
  }
  return i;
}
function $s(e, t) {
  let r = ["start", "end", "loc", "range", "comments"], i = -1;
  for (; ++i < r.length; ) {
    let n = r[i];
    n in e && (t[n] = e[n]);
  }
}
function M7(e) {
  let { development: t, outputFormat: r } = e || {};
  return function(i, n) {
    if (N7(i, { development: t, filePath: n.history[0] }), i.comments && i.comments[0].type === "Block" && i.comments[0].data && i.comments[0].
    data._mdxIsPragmaComment && i.comments.shift(), r === "function-body") {
      let u = 0;
      for (; u < i.body.length; ) {
        let o = i.body[u];
        if ("directive" in o && o.directive)
          u++;
        else
          break;
      }
      let a = i.body[u];
      a && a.type === "ImportDeclaration" && typeof a.source.value == "string" && /\/jsx-(dev-)?runtime$/.test(a.source.value) && (i.body[u] =
      {
        type: "VariableDeclaration",
        kind: "const",
        declarations: Kp(
          a.specifiers,
          Si(["arguments", 0])
        )
      });
    }
  };
}
function IE(e) {
  let t = -1, r;
  for (; ++t < e.length; ) {
    let i = e[t];
    r = r ? { type: "BinaryExpression", left: r, operator: "+", right: i } : i;
  }
  return r;
}
function j7(e) {
  let { development: t, outputFormat: r, providerImportSource: i } = e;
  return function(n, u) {
    let a = Ab(n), o = [], l = !1, c = !1, h;
    if (Us(n, {
      enter(p) {
        let d = (
          /** @type {Scope | undefined} */
          a.map.get(p)
        );
        (p.type === "FunctionDeclaration" || p.type === "FunctionExpression" || p.type === "ArrowFunctionExpression") && (o.push({
          components: [],
          idToInvalidComponentName: /* @__PURE__ */ new Map(),
          node: p,
          objects: [],
          references: {},
          tags: []
        }), qn(p, "MDXContent") && d && !Rp(d, "MDXLayout") && o[0].components.push("MDXLayout"));
        let m = o[0];
        if (!(!m || !qn(m.node, "_createMdxContent") && !i) && (d && (d.node = p, h = d), h && p.type === "JSXElement")) {
          let D = p.openingElement.name;
          if (D.type === "JSXMemberExpression") {
            let g = [];
            for (; D.type === "JSXMemberExpression"; )
              g.unshift(D.property.name), D = D.object;
            g.unshift(D.name);
            let v = g.join("."), x = D.name, C = Rp(h, x);
            if (!Object.hasOwn(m.references, v)) {
              let S = (
                /** @type {Scope | undefined} */
                h.parent
              );
              (!C || // If the parent scope is `_createMdxContent`, then this
              // references a component we can add a check statement for.
              S && S.node.type === "FunctionDeclaration" && qn(S.node, "_createMdxContent")) && (m.references[v] = { component: !0, node: p });
            }
            !m.objects.includes(x) && !C && m.objects.push(x);
          } else if (D.type !== "JSXNamespacedName") {
            if (cr(D.name) && !/^[a-z]/.test(D.name)) {
              let g = D.name;
              Rp(h, g) || (g !== "MDXLayout" && !Object.hasOwn(m.references, g) && (m.references[g] = { component: !0, node: p }), m.components.
              includes(g) || m.components.push(g));
            } else if (!(p.data && p.data._mdxExplicitJsx)) {
              let g = D.name;
              m.tags.includes(g) || m.tags.push(g);
              let v = ["_components", g];
              if (cr(g) === !1) {
                let x = m.idToInvalidComponentName.get(g);
                x === void 0 && (x = `_component${m.idToInvalidComponentName.size}`, m.idToInvalidComponentName.set(g, x)), v = [x];
              }
              p.openingElement.name = TE(v), p.closingElement && (p.closingElement.name = TE(v));
            }
          }
        }
      },
      leave(p) {
        let d = [], m = [], D = [], g = [];
        if (h && h.node === p && (h = /** @type {Scope} */
        h.parent), p.type === "FunctionDeclaration" || p.type === "FunctionExpression" || p.type === "ArrowFunctionExpression") {
          let v = p, x = o[o.length - 1], C;
          for (C of x.tags.sort())
            d.push({
              type: "Property",
              kind: "init",
              key: cr(C) ? { type: "Identifier", name: C } : { type: "Literal", value: C },
              value: { type: "Literal", value: C },
              method: !1,
              shorthand: !1,
              computed: !1
            });
          m.push(...x.components);
          for (C of x.objects)
            m.includes(C) || m.push(C);
          m.sort();
          let S = [];
          if (d.length > 0 || m.length > 0 || x.idToInvalidComponentName.size > 0) {
            if (i && (l = !0, D.push({
              type: "CallExpression",
              callee: { type: "Identifier", name: "_provideComponents" },
              arguments: [],
              optional: !1
            })), (qn(x.node, "MDXContent") || qn(x.node, "_createMdxContent")) && D.push(Si(["props", "components"])), d.length > 0 || D.length >
            1)
              for (let B of D)
                d.push({ type: "SpreadElement", argument: B });
            let A = d.length > 0 ? { type: "ObjectExpression", properties: d } : (
              // If we’re only getting components from `props.components`,
              // make sure it’s defined.
              {
                type: "LogicalExpression",
                operator: "||",
                left: D[0],
                right: { type: "ObjectExpression", properties: [] }
              }
            ), T;
            if (m.length > 0 && (T = {
              type: "ObjectPattern",
              properties: m.map(function(B) {
                return {
                  type: "Property",
                  kind: "init",
                  key: {
                    type: "Identifier",
                    name: B === "MDXLayout" ? "wrapper" : B
                  },
                  value: { type: "Identifier", name: B },
                  method: !1,
                  shorthand: B !== "MDXLayout",
                  computed: !1
                };
              })
            }), x.tags.length > 0 && (g.push({
              type: "VariableDeclarator",
              id: { type: "Identifier", name: "_components" },
              init: A
            }), A = { type: "Identifier", name: "_components" }), qn(x.node, "_createMdxContent"))
              for (let [B, $] of [
                ...x.idToInvalidComponentName
              ].sort(function([L], [V]) {
                return L.localeCompare(V);
              }))
                g.push({
                  type: "VariableDeclarator",
                  id: {
                    type: "Identifier",
                    name: $
                  },
                  init: {
                    type: "MemberExpression",
                    object: { type: "Identifier", name: "_components" },
                    property: { type: "Literal", value: B },
                    computed: !0,
                    optional: !1
                  }
                });
            T && g.push({
              type: "VariableDeclarator",
              id: T,
              init: A
            }), g.length > 0 && S.push({
              type: "VariableDeclaration",
              kind: "const",
              declarations: g
            });
          }
          let k;
          for (k in x.references)
            if (Object.hasOwn(x.references, k)) {
              let A = k.split("."), T = 0;
              for (; ++T < A.length; ) {
                let B = A.slice(0, T).join(".");
                Object.hasOwn(x.references, B) || (x.references[B] = {
                  component: !1,
                  node: x.references[k].node
                });
              }
            }
          let j = Object.keys(x.references).sort(), w = -1;
          for (; ++w < j.length; ) {
            let A = j[w], T = x.references[A], B = Zt(Zr(T.node)), $ = [
              { type: "Literal", value: A },
              { type: "Literal", value: T.component }
            ];
            c = !0, t && B && $.push({ type: "Literal", value: B }), S.push({
              type: "IfStatement",
              test: {
                type: "UnaryExpression",
                operator: "!",
                prefix: !0,
                argument: Si(A.split("."))
              },
              consequent: {
                type: "ExpressionStatement",
                expression: {
                  type: "CallExpression",
                  callee: { type: "Identifier", name: "_missingMdxReference" },
                  arguments: $,
                  optional: !1
                }
              },
              alternate: void 0
            });
          }
          S.length > 0 && (v.body.type !== "BlockStatement" && (v.body = {
            type: "BlockStatement",
            body: [{ type: "ReturnStatement", argument: v.body }]
          }), v.body.body.unshift(...S)), o.pop();
        }
      }
    }), l && i && n.body.unshift(
      q7(i, r)
    ), c) {
      let p = [
        { type: "Literal", value: "Expected " },
        {
          type: "ConditionalExpression",
          test: { type: "Identifier", name: "component" },
          consequent: { type: "Literal", value: "component" },
          alternate: { type: "Literal", value: "object" }
        },
        { type: "Literal", value: " `" },
        { type: "Identifier", name: "id" },
        {
          type: "Literal",
          value: "` to be defined: you likely forgot to import, pass, or provide it."
        }
      ], d = [
        { type: "Identifier", name: "id" },
        { type: "Identifier", name: "component" }
      ];
      t && (p.push({
        type: "ConditionalExpression",
        test: { type: "Identifier", name: "place" },
        consequent: IE([
          { type: "Literal", value: "\nIt\u2019s referenced in your code at `" },
          { type: "Identifier", name: "place" },
          {
            type: "Literal",
            value: (u.path ? "` in `" + u.path : "") + "`"
          }
        ]),
        alternate: { type: "Literal", value: "" }
      }), d.push({ type: "Identifier", name: "place" })), n.body.push({
        type: "FunctionDeclaration",
        id: { type: "Identifier", name: "_missingMdxReference" },
        generator: !1,
        async: !1,
        params: d,
        body: {
          type: "BlockStatement",
          body: [
            {
              type: "ThrowStatement",
              argument: {
                type: "NewExpression",
                callee: { type: "Identifier", name: "Error" },
                arguments: [IE(p)]
              }
            }
          ]
        }
      });
    }
    r === "function-body" && n.body.unshift({
      type: "ExpressionStatement",
      expression: { type: "Literal", value: "use strict" },
      directive: "use strict"
    });
  };
}
function q7(e, t) {
  let r = [
    {
      type: "ImportSpecifier",
      imported: { type: "Identifier", name: "useMDXComponents" },
      local: { type: "Identifier", name: "_provideComponents" }
    }
  ];
  return t === "function-body" ? {
    type: "VariableDeclaration",
    kind: "const",
    declarations: Kp(
      r,
      Si(["arguments", 0])
    )
  } : {
    type: "ImportDeclaration",
    specifiers: r,
    source: { type: "Literal", value: e }
  };
}
function qn(e, t) {
  return !!(e && "id" in e && e.id && e.id.name === t);
}
function Rp(e, t) {
  let r = e;
  for (; r; ) {
    if (r.declarations.has(t))
      return !0;
    r = /** @type {Scope | undefined} */
    r.parent || void 0;
  }
  return !1;
}
function $n(e, t) {
  let { generator: r } = e;
  if (e.write("("), t != null && t.length > 0) {
    r[t[0].type](t[0], e);
    let { length: i } = t;
    for (let n = 1; n < i; n++) {
      let u = t[n];
      e.write(", "), r[u.type](u, e);
    }
  }
  e.write(")");
}
function Sb(e, t, r, i) {
  let n = e.expressionsPrecedence[t.type];
  if (n === fr)
    return !0;
  let u = e.expressionsPrecedence[r.type];
  return n !== u ? !i && n === 15 && u === 14 && r.operator === "**" || n < u : n !== 13 && n !== 14 ? !1 : t.operator === "**" && r.operator ===
  "**" ? !i : n === 13 && u === 13 && (t.operator === "??" || r.operator === "??") ? !0 : i ? qa[t.operator] <= qa[r.operator] : qa[t.operator] <
  qa[r.operator];
}
function $a(e, t, r, i) {
  let { generator: n } = e;
  Sb(e, t, r, i) ? (e.write("("), n[t.type](t, e), e.write(")")) : n[t.type](t, e);
}
function U7(e, t, r, i) {
  let n = t.split(`
`), u = n.length - 1;
  if (e.write(n[0].trim()), u > 0) {
    e.write(i);
    for (let a = 1; a < u; a++)
      e.write(r + n[a].trim() + i);
    e.write(r + n[u].trim());
  }
}
function xt(e, t, r, i) {
  let { length: n } = t;
  for (let u = 0; u < n; u++) {
    let a = t[u];
    e.write(r), a.type[0] === "L" ? e.write("// " + a.value.trim() + `
`, a) : (e.write("/*"), U7(e, a.value, r, i), e.write("*/" + i));
  }
}
function z7(e) {
  let t = e;
  for (; t != null; ) {
    let { type: r } = t;
    if (r[0] === "C" && r[1] === "a")
      return !0;
    if (r[0] === "M" && r[1] === "e" && r[2] === "m")
      t = t.object;
    else
      return !1;
  }
}
function Np(e, t) {
  let { generator: r } = e, { declarations: i } = t;
  e.write(t.kind + " ");
  let { length: n } = i;
  if (n > 0) {
    r.VariableDeclarator(i[0], e);
    for (let u = 1; u < n; u++)
      e.write(", "), r.VariableDeclarator(i[u], e);
  }
}
function J7(e, t) {
  let r = new W7(t);
  return r.generator[e.type](e, r), r.output;
}
function qE(e, t) {
  let { SourceMapGenerator: r, filePath: i, handlers: n } = t || G7, u = r ? new r({ file: i || "<unknown>.js" }) : void 0, a = J7(
    e,
    // @ts-expect-error: `sourceMap` can be undefined, `astring` types are buggy.
    {
      comments: !0,
      generator: { ..._b, ...n },
      sourceMap: u || void 0
    }
  ), o = u ? u.toJSON() : void 0;
  return { value: a, map: o };
}
function X7(e, t) {
  this[e.name.type](e.name, t), e.value !== null && e.value !== void 0 && (t.write("="), e.value.type === "Literal" ? t.write(
    '"' + kb(String(e.value.value)).replace(/"/g, "&quot;") + '"',
    e
  ) : this[e.value.type](e.value, t));
}
function Y7(e, t) {
  t.write("</"), this[e.name.type](e.name, t), t.write(">");
}
function K7(e, t) {
  t.write("</>", e);
}
function Q7(e, t) {
  let r = -1;
  if (this[e.openingElement.type](e.openingElement, t), e.children)
    for (; ++r < e.children.length; ) {
      let i = e.children[r];
      if (i.type === "JSXSpreadChild")
        throw new Error("JSX spread children are not supported");
      this[i.type](i, t);
    }
  e.closingElement && this[e.closingElement.type](e.closingElement, t);
}
function Z7() {
}
function eN(e, t) {
  t.write("{"), this[e.expression.type](e.expression, t), t.write("}");
}
function tN(e, t) {
  let r = -1;
  if (this[e.openingFragment.type](e.openingFragment, t), e.children)
    for (; ++r < e.children.length; ) {
      let i = e.children[r];
      if (i.type === "JSXSpreadChild")
        throw new Error("JSX spread children are not supported");
      this[i.type](i, t);
    }
  this[e.closingFragment.type](e.closingFragment, t);
}
function rN(e, t) {
  t.write(e.name, e);
}
function iN(e, t) {
  this[e.object.type](e.object, t), t.write("."), this[e.property.type](e.property, t);
}
function nN(e, t) {
  this[e.namespace.type](e.namespace, t), t.write(":"), this[e.name.type](e.name, t);
}
function sN(e, t) {
  let r = -1;
  if (t.write("<"), this[e.name.type](e.name, t), e.attributes)
    for (; ++r < e.attributes.length; )
      t.write(" "), this[e.attributes[r].type](e.attributes[r], t);
  t.write(e.selfClosing ? " />" : ">");
}
function uN(e, t) {
  t.write("<>", e);
}
function aN(e, t) {
  t.write("{"), this.SpreadElement(e, t), t.write("}");
}
function oN(e, t) {
  t.write(kb(e.value).replace(/[<>{}]/g, lN), e);
}
function kb(e) {
  return e.replace(/&(?=[#a-z])/gi, "&amp;");
}
function lN(e) {
  return e === "<" ? "&lt;" : e === ">" ? "&gt;" : e === "{" ? "&#123;" : "&#125;";
}
function cN(e) {
  let t = (
    /** @type {Processor} */
    this
  ), { SourceMapGenerator: r } = e;
  t.compiler = i;
  function i(n, u) {
    let a = r ? qE(n, {
      SourceMapGenerator: r,
      filePath: u.path || "unknown.mdx",
      handlers: $E
    }) : qE(n, { handlers: $E });
    return u.map = a.map, a.value;
  }
  s(i, "compiler2");
}
function hN(e) {
  return function(t) {
    return Sa(t, e);
  };
}
function pN() {
  return function(e) {
    Yp(e, "raw", function(t, r, i) {
      if (i && typeof r == "number")
        return i.children.splice(r, 1), r;
    });
  };
}
function mN(e, t) {
  t ? typeof t == "string" && (t = { style: t }) : t = {};
  let r = t.preserveLineEndings ? DN : gN;
  return String(e).replace(
    t.style === "html" ? dN : fN,
    t.trim ? xN(r) : r
  );
}
function DN(e) {
  let t = /\r?\n|\r/.exec(e);
  return t ? t[0] : " ";
}
function gN() {
  return " ";
}
function xN(e) {
  return t;
  function t(r, i, n) {
    return i === 0 || i + r.length === n.length ? "" : e(r);
  }
}
function yN() {
  return function(e) {
    Yp(e, function(t, r, i) {
      let n = -1, u = !0, a = !1;
      if (i && typeof r == "number" && t.type === "paragraph") {
        let o = t.children;
        for (; ++n < o.length; ) {
          let l = o[n];
          if (l.type === "mdxJsxTextElement" || l.type === "mdxTextExpression")
            a = !0;
          else if (!(l.type === "text" && mN(l.value, { style: "html", trim: !0 }) === "")) {
            u = !1;
            break;
          }
        }
        if (u && a) {
          n = -1;
          let l = [];
          for (; ++n < o.length; ) {
            let c = o[n];
            c.type === "mdxJsxTextElement" && (c.type = "mdxJsxFlowElement"), c.type === "mdxTextExpression" && (c.type = "mdxFlowExpression"),
            c.type === "text" && /^[\t\r\n ]+$/.test(String(c.value)) || l.push(c);
          }
          return i.children.splice(r, 1, ...l), r;
        }
      }
      if (t.type === "mdxJsxFlowElement" || t.type === "mdxJsxTextElement") {
        let o = t.data || (t.data = {});
        o._mdxExplicitJsx = !0;
      }
    });
  };
}
function Qp(e) {
  let t = e || {}, r = -1;
  for (; ++r < VE.length; ) {
    let u = VE[r];
    u in t && ("" + u, void 0);
  }
  t.format === "detect" && void 0, (t.jsxRuntime === "classic" || t.pragma || t.pragmaFrag || t.pragmaImportSource) && !UE && (UE = !0, console.
  warn(
    "Unexpected deprecated option `jsxRuntime: 'classic'`, `pragma`, `pragmaFrag`, or `pragmaImportSource`; see <https://mdxjs.com/migrating\
/v3/> on how to migrate"
  ));
  let i = A7().use(wR);
  t.format !== "md" && i.use(V5);
  let n = t.remarkRehypeOptions || {};
  return i.use(yN).use(t.remarkPlugins || []).use(E7, {
    ...n,
    allowDangerousHtml: !0,
    passThrough: [...n.passThrough || [], ...Bb]
  }).use(t.rehypePlugins || []), t.format === "md" && i.use(pN), i.use(hN, t).use(I7, t).use(j7, t), t.jsx || i.use(M7, t), i.use(cN, t).use(
  t.recmaPlugins || []), i;
}
function Tb(e, t) {
  let { file: r, options: i } = JE(e, t);
  return Qp(i).process(r);
}
function Pb(e, t) {
  let { file: r, options: i } = JE(e, t);
  return Qp(i).processSync(r);
}
function Ib(e) {
  let {
    Fragment: t,
    baseUrl: r,
    development: i,
    jsx: n,
    jsxDEV: u,
    jsxs: a,
    useMDXComponents: o,
    ...l
  } = e || {};
  if (!t)
    throw new Error("Expected `Fragment` given to `evaluate`");
  if (i) {
    if (!u)
      throw new Error("Expected `jsxDEV` given to `evaluate`");
  } else {
    if (!n)
      throw new Error("Expected `jsx` given to `evaluate`");
    if (!a)
      throw new Error("Expected `jsxs` given to `evaluate`");
  }
  return {
    compiletime: {
      ...l,
      development: i,
      outputFormat: "function-body",
      providerImportSource: o ? "#" : void 0
    },
    runtime: { Fragment: t, baseUrl: r, jsx: n, jsxDEV: u, jsxs: a, useMDXComponents: o }
  };
}
async function Zp(e, t) {
  return new EN(String(e))(t);
}
function Ob(e, t) {
  return new Function(String(e))(t);
}
async function bN(e, t) {
  let { compiletime: r, runtime: i } = Ib(t);
  return Zp(await Tb(e, r), i);
}
function vN(e, t) {
  let { compiletime: r, runtime: i } = Ib(t);
  return Ob(Pb(e, r), i);
}
var pr, zE, HE, dI, mI, DI, Se, vp, WE, xI, yI, EI, FI, Q1, eE, kI, Ln, BI, XE, YI, KI, dr, Nt, QI, jp, ZI, QE, Qr, rO, iO, Ap, nO, Un, lO, cO,
nE, hO, pO, sE, qp, vO, zs, tb, rb, ib, oE, lE, _p, PO, RO, qO, $O, HO, WO, XO, KO, e5, cE, t5, r5, i5, o5, Hp, c5, h5, p5, y5, b5, kp, Va, _t,
A5, F5, hE, O5, pE, R5, fE, $5, U5, W5, G5, mE, K5, Z5, eR, tR, fb, uR, aR, oR, lR, cR, hR, pR, fR, dR, DE, xR, db, xE, yE, YR, xb, Ga, za, Ha,
Wp, Jp, Gp, Xp, yb, Eb, bE, KR, vE, Mn, QR, ZR, js, Ma, e7, CE, Wa, bb, vb, c7, wE, h7, $p, d7, Bp, C7, w7, Cb, A7, k7, B7, jn, Op, $7, qa, fr,
V7, OE, RE, NE, LE, ME, jE, _b, H7, W7, G7, $E, fN, dN, Bb, VE, UE, EN, Nb = ht(() => {
  up();
  pr = Q(require("path"), 1), zE = Q(require("process"), 1), HE = require("url");
  U1();
  dI = Bn({
    "node_modules/micromark-extension-mdxjs/node_modules/acorn-jsx/xhtml.js"(e, t) {
      t.exports = {
        quot: '"',
        amp: "&",
        apos: "'",
        lt: "<",
        gt: ">",
        nbsp: "\xA0",
        iexcl: "\xA1",
        cent: "\xA2",
        pound: "\xA3",
        curren: "\xA4",
        yen: "\xA5",
        brvbar: "\xA6",
        sect: "\xA7",
        uml: "\xA8",
        copy: "\xA9",
        ordf: "\xAA",
        laquo: "\xAB",
        not: "\xAC",
        shy: "\xAD",
        reg: "\xAE",
        macr: "\xAF",
        deg: "\xB0",
        plusmn: "\xB1",
        sup2: "\xB2",
        sup3: "\xB3",
        acute: "\xB4",
        micro: "\xB5",
        para: "\xB6",
        middot: "\xB7",
        cedil: "\xB8",
        sup1: "\xB9",
        ordm: "\xBA",
        raquo: "\xBB",
        frac14: "\xBC",
        frac12: "\xBD",
        frac34: "\xBE",
        iquest: "\xBF",
        Agrave: "\xC0",
        Aacute: "\xC1",
        Acirc: "\xC2",
        Atilde: "\xC3",
        Auml: "\xC4",
        Aring: "\xC5",
        AElig: "\xC6",
        Ccedil: "\xC7",
        Egrave: "\xC8",
        Eacute: "\xC9",
        Ecirc: "\xCA",
        Euml: "\xCB",
        Igrave: "\xCC",
        Iacute: "\xCD",
        Icirc: "\xCE",
        Iuml: "\xCF",
        ETH: "\xD0",
        Ntilde: "\xD1",
        Ograve: "\xD2",
        Oacute: "\xD3",
        Ocirc: "\xD4",
        Otilde: "\xD5",
        Ouml: "\xD6",
        times: "\xD7",
        Oslash: "\xD8",
        Ugrave: "\xD9",
        Uacute: "\xDA",
        Ucirc: "\xDB",
        Uuml: "\xDC",
        Yacute: "\xDD",
        THORN: "\xDE",
        szlig: "\xDF",
        agrave: "\xE0",
        aacute: "\xE1",
        acirc: "\xE2",
        atilde: "\xE3",
        auml: "\xE4",
        aring: "\xE5",
        aelig: "\xE6",
        ccedil: "\xE7",
        egrave: "\xE8",
        eacute: "\xE9",
        ecirc: "\xEA",
        euml: "\xEB",
        igrave: "\xEC",
        iacute: "\xED",
        icirc: "\xEE",
        iuml: "\xEF",
        eth: "\xF0",
        ntilde: "\xF1",
        ograve: "\xF2",
        oacute: "\xF3",
        ocirc: "\xF4",
        otilde: "\xF5",
        ouml: "\xF6",
        divide: "\xF7",
        oslash: "\xF8",
        ugrave: "\xF9",
        uacute: "\xFA",
        ucirc: "\xFB",
        uuml: "\xFC",
        yacute: "\xFD",
        thorn: "\xFE",
        yuml: "\xFF",
        OElig: "\u0152",
        oelig: "\u0153",
        Scaron: "\u0160",
        scaron: "\u0161",
        Yuml: "\u0178",
        fnof: "\u0192",
        circ: "\u02C6",
        tilde: "\u02DC",
        Alpha: "\u0391",
        Beta: "\u0392",
        Gamma: "\u0393",
        Delta: "\u0394",
        Epsilon: "\u0395",
        Zeta: "\u0396",
        Eta: "\u0397",
        Theta: "\u0398",
        Iota: "\u0399",
        Kappa: "\u039A",
        Lambda: "\u039B",
        Mu: "\u039C",
        Nu: "\u039D",
        Xi: "\u039E",
        Omicron: "\u039F",
        Pi: "\u03A0",
        Rho: "\u03A1",
        Sigma: "\u03A3",
        Tau: "\u03A4",
        Upsilon: "\u03A5",
        Phi: "\u03A6",
        Chi: "\u03A7",
        Psi: "\u03A8",
        Omega: "\u03A9",
        alpha: "\u03B1",
        beta: "\u03B2",
        gamma: "\u03B3",
        delta: "\u03B4",
        epsilon: "\u03B5",
        zeta: "\u03B6",
        eta: "\u03B7",
        theta: "\u03B8",
        iota: "\u03B9",
        kappa: "\u03BA",
        lambda: "\u03BB",
        mu: "\u03BC",
        nu: "\u03BD",
        xi: "\u03BE",
        omicron: "\u03BF",
        pi: "\u03C0",
        rho: "\u03C1",
        sigmaf: "\u03C2",
        sigma: "\u03C3",
        tau: "\u03C4",
        upsilon: "\u03C5",
        phi: "\u03C6",
        chi: "\u03C7",
        psi: "\u03C8",
        omega: "\u03C9",
        thetasym: "\u03D1",
        upsih: "\u03D2",
        piv: "\u03D6",
        ensp: "\u2002",
        emsp: "\u2003",
        thinsp: "\u2009",
        zwnj: "\u200C",
        zwj: "\u200D",
        lrm: "\u200E",
        rlm: "\u200F",
        ndash: "\u2013",
        mdash: "\u2014",
        lsquo: "\u2018",
        rsquo: "\u2019",
        sbquo: "\u201A",
        ldquo: "\u201C",
        rdquo: "\u201D",
        bdquo: "\u201E",
        dagger: "\u2020",
        Dagger: "\u2021",
        bull: "\u2022",
        hellip: "\u2026",
        permil: "\u2030",
        prime: "\u2032",
        Prime: "\u2033",
        lsaquo: "\u2039",
        rsaquo: "\u203A",
        oline: "\u203E",
        frasl: "\u2044",
        euro: "\u20AC",
        image: "\u2111",
        weierp: "\u2118",
        real: "\u211C",
        trade: "\u2122",
        alefsym: "\u2135",
        larr: "\u2190",
        uarr: "\u2191",
        rarr: "\u2192",
        darr: "\u2193",
        harr: "\u2194",
        crarr: "\u21B5",
        lArr: "\u21D0",
        uArr: "\u21D1",
        rArr: "\u21D2",
        dArr: "\u21D3",
        hArr: "\u21D4",
        forall: "\u2200",
        part: "\u2202",
        exist: "\u2203",
        empty: "\u2205",
        nabla: "\u2207",
        isin: "\u2208",
        notin: "\u2209",
        ni: "\u220B",
        prod: "\u220F",
        sum: "\u2211",
        minus: "\u2212",
        lowast: "\u2217",
        radic: "\u221A",
        prop: "\u221D",
        infin: "\u221E",
        ang: "\u2220",
        and: "\u2227",
        or: "\u2228",
        cap: "\u2229",
        cup: "\u222A",
        int: "\u222B",
        there4: "\u2234",
        sim: "\u223C",
        cong: "\u2245",
        asymp: "\u2248",
        ne: "\u2260",
        equiv: "\u2261",
        le: "\u2264",
        ge: "\u2265",
        sub: "\u2282",
        sup: "\u2283",
        nsub: "\u2284",
        sube: "\u2286",
        supe: "\u2287",
        oplus: "\u2295",
        otimes: "\u2297",
        perp: "\u22A5",
        sdot: "\u22C5",
        lceil: "\u2308",
        rceil: "\u2309",
        lfloor: "\u230A",
        rfloor: "\u230B",
        lang: "\u2329",
        rang: "\u232A",
        loz: "\u25CA",
        spades: "\u2660",
        clubs: "\u2663",
        hearts: "\u2665",
        diams: "\u2666"
      };
    }
  }), mI = Bn({
    "node_modules/micromark-extension-mdxjs/node_modules/acorn-jsx/index.js"(e, t) {
      "use strict";
      var r = dI(), i = /^[\da-fA-F]+$/, n = /^\d+$/, u = /* @__PURE__ */ new WeakMap();
      function a(c) {
        c = c.Parser.acorn || c;
        let h = u.get(c);
        if (!h) {
          let p = c.tokTypes, d = c.TokContext, m = c.TokenType, D = new d("<tag", !1), g = new d("</tag", !1), v = new d("<tag>...</tag>", !0,
          !0), x = {
            tc_oTag: D,
            tc_cTag: g,
            tc_expr: v
          }, C = {
            jsxName: new m("jsxName"),
            jsxText: new m("jsxText", { beforeExpr: !0 }),
            jsxTagStart: new m("jsxTagStart", { startsExpr: !0 }),
            jsxTagEnd: new m("jsxTagEnd")
          };
          C.jsxTagStart.updateContext = function() {
            this.context.push(v), this.context.push(D), this.exprAllowed = !1;
          }, C.jsxTagEnd.updateContext = function(S) {
            let k = this.context.pop();
            k === D && S === p.slash || k === g ? (this.context.pop(), this.exprAllowed = this.curContext() === v) : this.exprAllowed = !0;
          }, h = { tokContexts: x, tokTypes: C }, u.set(c, h);
        }
        return h;
      }
      s(a, "getJsxTokens");
      function o(c) {
        if (!c)
          return c;
        if (c.type === "JSXIdentifier")
          return c.name;
        if (c.type === "JSXNamespacedName")
          return c.namespace.name + ":" + c.name.name;
        if (c.type === "JSXMemberExpression")
          return o(c.object) + "." + o(c.property);
      }
      s(o, "getQualifiedJSXName"), t.exports = function(c) {
        return c = c || {}, function(h) {
          return l({
            allowNamespaces: c.allowNamespaces !== !1,
            allowNamespacedObjects: !!c.allowNamespacedObjects
          }, h);
        };
      }, Object.defineProperty(t.exports, "tokTypes", {
        get: /* @__PURE__ */ s(function() {
          return a(Qh("acorn")).tokTypes;
        }, "get_tokTypes"),
        configurable: !0,
        enumerable: !0
      });
      function l(c, h) {
        let p = h.acorn || Qh("acorn"), d = a(p), m = p.tokTypes, D = d.tokTypes, g = p.tokContexts, v = d.tokContexts.tc_oTag, x = d.tokContexts.
        tc_cTag, C = d.tokContexts.tc_expr, S = p.isNewLine, k = p.isIdentifierStart, j = p.isIdentifierChar;
        return class extends h {
          // Expose actual `tokTypes` and `tokContexts` to other plugins.
          static get acornJsx() {
            return d;
          }
          // Reads inline JSX contents token.
          jsx_readToken() {
            let w = "", A = this.pos;
            for (; ; ) {
              this.pos >= this.input.length && this.raise(this.start, "Unterminated JSX contents");
              let T = this.input.charCodeAt(this.pos);
              switch (T) {
                case 60:
                case 123:
                  return this.pos === this.start ? T === 60 && this.exprAllowed ? (++this.pos, this.finishToken(D.jsxTagStart)) : this.getTokenFromCode(
                  T) : (w += this.input.slice(A, this.pos), this.finishToken(D.jsxText, w));
                case 38:
                  w += this.input.slice(A, this.pos), w += this.jsx_readEntity(), A = this.pos;
                  break;
                case 62:
                case 125:
                  this.raise(
                    this.pos,
                    "Unexpected token `" + this.input[this.pos] + "`. Did you mean `" + (T === 62 ? "&gt;" : "&rbrace;") + '` or `{"' + this.
                    input[this.pos] + '"}`?'
                  );
                default:
                  S(T) ? (w += this.input.slice(A, this.pos), w += this.jsx_readNewLine(!0), A = this.pos) : ++this.pos;
              }
            }
          }
          jsx_readNewLine(w) {
            let A = this.input.charCodeAt(this.pos), T;
            return ++this.pos, A === 13 && this.input.charCodeAt(this.pos) === 10 ? (++this.pos, T = w ? `
` : `\r
`) : T = String.fromCharCode(A), this.options.locations && (++this.curLine, this.lineStart = this.pos), T;
          }
          jsx_readString(w) {
            let A = "", T = ++this.pos;
            for (; ; ) {
              this.pos >= this.input.length && this.raise(this.start, "Unterminated string constant");
              let B = this.input.charCodeAt(this.pos);
              if (B === w)
                break;
              B === 38 ? (A += this.input.slice(T, this.pos), A += this.jsx_readEntity(), T = this.pos) : S(B) ? (A += this.input.slice(T, this.
              pos), A += this.jsx_readNewLine(!1), T = this.pos) : ++this.pos;
            }
            return A += this.input.slice(T, this.pos++), this.finishToken(m.string, A);
          }
          jsx_readEntity() {
            let w = "", A = 0, T, B = this.input[this.pos];
            B !== "&" && this.raise(this.pos, "Entity must start with an ampersand");
            let $ = ++this.pos;
            for (; this.pos < this.input.length && A++ < 10; ) {
              if (B = this.input[this.pos++], B === ";") {
                w[0] === "#" ? w[1] === "x" ? (w = w.substr(2), i.test(w) && (T = String.fromCharCode(parseInt(w, 16)))) : (w = w.substr(1),
                n.test(w) && (T = String.fromCharCode(parseInt(w, 10)))) : T = r[w];
                break;
              }
              w += B;
            }
            return T || (this.pos = $, "&");
          }
          // Read a JSX identifier (valid tag or attribute name).
          //
          // Optimized version since JSX identifiers can't contain
          // escape characters and so can be read as single slice.
          // Also assumes that first character was already checked
          // by isIdentifierStart in readToken.
          jsx_readWord() {
            let w, A = this.pos;
            do
              w = this.input.charCodeAt(++this.pos);
            while (j(w) || w === 45);
            return this.finishToken(D.jsxName, this.input.slice(A, this.pos));
          }
          // Parse next token as JSX identifier
          jsx_parseIdentifier() {
            let w = this.startNode();
            return this.type === D.jsxName ? w.name = this.value : this.type.keyword ? w.name = this.type.keyword : this.unexpected(), this.
            next(), this.finishNode(w, "JSXIdentifier");
          }
          // Parse namespaced identifier.
          jsx_parseNamespacedName() {
            let w = this.start, A = this.startLoc, T = this.jsx_parseIdentifier();
            if (!c.allowNamespaces || !this.eat(m.colon))
              return T;
            var B = this.startNodeAt(w, A);
            return B.namespace = T, B.name = this.jsx_parseIdentifier(), this.finishNode(B, "JSXNamespacedName");
          }
          // Parses element name in any form - namespaced, member
          // or single identifier.
          jsx_parseElementName() {
            if (this.type === D.jsxTagEnd)
              return "";
            let w = this.start, A = this.startLoc, T = this.jsx_parseNamespacedName();
            for (this.type === m.dot && T.type === "JSXNamespacedName" && !c.allowNamespacedObjects && this.unexpected(); this.eat(m.dot); ) {
              let B = this.startNodeAt(w, A);
              B.object = T, B.property = this.jsx_parseIdentifier(), T = this.finishNode(B, "JSXMemberExpression");
            }
            return T;
          }
          // Parses any type of JSX attribute value.
          jsx_parseAttributeValue() {
            switch (this.type) {
              case m.braceL:
                let w = this.jsx_parseExpressionContainer();
                return w.expression.type === "JSXEmptyExpression" && this.raise(w.start, "JSX attributes must only be assigned a non-empty e\
xpression"), w;
              case D.jsxTagStart:
              case m.string:
                return this.parseExprAtom();
              default:
                this.raise(this.start, "JSX value should be either an expression or a quoted JSX text");
            }
          }
          // JSXEmptyExpression is unique type since it doesn't actually parse anything,
          // and so it should start at the end of last read token (left brace) and finish
          // at the beginning of the next one (right brace).
          jsx_parseEmptyExpression() {
            let w = this.startNodeAt(this.lastTokEnd, this.lastTokEndLoc);
            return this.finishNodeAt(w, "JSXEmptyExpression", this.start, this.startLoc);
          }
          // Parses JSX expression enclosed into curly brackets.
          jsx_parseExpressionContainer() {
            let w = this.startNode();
            return this.next(), w.expression = this.type === m.braceR ? this.jsx_parseEmptyExpression() : this.parseExpression(), this.expect(
            m.braceR), this.finishNode(w, "JSXExpressionContainer");
          }
          // Parses following JSX attribute name-value pair.
          jsx_parseAttribute() {
            let w = this.startNode();
            return this.eat(m.braceL) ? (this.expect(m.ellipsis), w.argument = this.parseMaybeAssign(), this.expect(m.braceR), this.finishNode(
            w, "JSXSpreadAttribute")) : (w.name = this.jsx_parseNamespacedName(), w.value = this.eat(m.eq) ? this.jsx_parseAttributeValue() :
            null, this.finishNode(w, "JSXAttribute"));
          }
          // Parses JSX opening tag starting after '<'.
          jsx_parseOpeningElementAt(w, A) {
            let T = this.startNodeAt(w, A);
            T.attributes = [];
            let B = this.jsx_parseElementName();
            for (B && (T.name = B); this.type !== m.slash && this.type !== D.jsxTagEnd; )
              T.attributes.push(this.jsx_parseAttribute());
            return T.selfClosing = this.eat(m.slash), this.expect(D.jsxTagEnd), this.finishNode(T, B ? "JSXOpeningElement" : "JSXOpeningFrag\
ment");
          }
          // Parses JSX closing tag starting after '</'.
          jsx_parseClosingElementAt(w, A) {
            let T = this.startNodeAt(w, A), B = this.jsx_parseElementName();
            return B && (T.name = B), this.expect(D.jsxTagEnd), this.finishNode(T, B ? "JSXClosingElement" : "JSXClosingFragment");
          }
          // Parses entire JSX element, including it's opening tag
          // (starting after '<'), attributes, contents and closing tag.
          jsx_parseElementAt(w, A) {
            let T = this.startNodeAt(w, A), B = [], $ = this.jsx_parseOpeningElementAt(w, A), L = null;
            if (!$.selfClosing) {
              e:
                for (; ; )
                  switch (this.type) {
                    case D.jsxTagStart:
                      if (w = this.start, A = this.startLoc, this.next(), this.eat(m.slash)) {
                        L = this.jsx_parseClosingElementAt(w, A);
                        break e;
                      }
                      B.push(this.jsx_parseElementAt(w, A));
                      break;
                    case D.jsxText:
                      B.push(this.parseExprAtom());
                      break;
                    case m.braceL:
                      B.push(this.jsx_parseExpressionContainer());
                      break;
                    default:
                      this.unexpected();
                  }
              o(L.name) !== o($.name) && this.raise(
                L.start,
                "Expected corresponding JSX closing tag for <" + o($.name) + ">"
              );
            }
            let V = $.name ? "Element" : "Fragment";
            return T["opening" + V] = $, T["closing" + V] = L, T.children = B, this.type === m.relational && this.value === "<" && this.raise(
            this.start, "Adjacent JSX elements must be wrapped in an enclosing tag"), this.finishNode(T, "JSX" + V);
          }
          // Parse JSX text
          jsx_parseText() {
            let w = this.parseLiteral(this.value);
            return w.type = "JSXText", w;
          }
          // Parses entire JSX element from current position.
          jsx_parseElement() {
            let w = this.start, A = this.startLoc;
            return this.next(), this.jsx_parseElementAt(w, A);
          }
          parseExprAtom(w) {
            return this.type === D.jsxText ? this.jsx_parseText() : this.type === D.jsxTagStart ? this.jsx_parseElement() : super.parseExprAtom(
            w);
          }
          readToken(w) {
            let A = this.curContext();
            if (A === C)
              return this.jsx_readToken();
            if (A === v || A === x) {
              if (k(w))
                return this.jsx_readWord();
              if (w == 62)
                return ++this.pos, this.finishToken(D.jsxTagEnd);
              if ((w === 34 || w === 39) && A == v)
                return this.jsx_readString(w);
            }
            return w === 60 && this.exprAllowed && this.input.charCodeAt(this.pos + 1) !== 33 ? (++this.pos, this.finishToken(D.jsxTagStart)) :
            super.readToken(w);
          }
          updateContext(w) {
            if (this.type == m.braceL) {
              var A = this.curContext();
              A == v ? this.context.push(g.b_expr) : A == C ? this.context.push(g.b_tmpl) : super.updateContext(w), this.exprAllowed = !0;
            } else if (this.type === m.slash && w === D.jsxTagStart)
              this.context.length -= 2, this.context.push(x), this.exprAllowed = !1;
            else
              return super.updateContext(w);
          }
        };
      }
      s(l, "plugin");
    }
  }), DI = Bn({
    "node_modules/extend/index.js"(e, t) {
      "use strict";
      var r = Object.prototype.hasOwnProperty, i = Object.prototype.toString, n = Object.defineProperty, u = Object.getOwnPropertyDescriptor,
      a = /* @__PURE__ */ s(function(p) {
        return typeof Array.isArray == "function" ? Array.isArray(p) : i.call(p) === "[object Array]";
      }, "isArray2"), o = /* @__PURE__ */ s(function(p) {
        if (!p || i.call(p) !== "[object Object]")
          return !1;
        var d = r.call(p, "constructor"), m = p.constructor && p.constructor.prototype && r.call(p.constructor.prototype, "isPrototypeOf");
        if (p.constructor && !d && !m)
          return !1;
        var D;
        for (D in p)
          ;
        return typeof D > "u" || r.call(p, D);
      }, "isPlainObject3"), l = /* @__PURE__ */ s(function(p, d) {
        n && d.name === "__proto__" ? n(p, d.name, {
          enumerable: !0,
          configurable: !0,
          value: d.newValue,
          writable: !0
        }) : p[d.name] = d.newValue;
      }, "setProperty2"), c = /* @__PURE__ */ s(function(p, d) {
        if (d === "__proto__")
          if (r.call(p, d)) {
            if (u)
              return u(p, d).value;
          } else return;
        return p[d];
      }, "getProperty2");
      t.exports = /* @__PURE__ */ s(function h() {
        var p, d, m, D, g, v, x = arguments[0], C = 1, S = arguments.length, k = !1;
        for (typeof x == "boolean" && (k = x, x = arguments[1] || {}, C = 2), (x == null || typeof x != "object" && typeof x != "function") &&
        (x = {}); C < S; ++C)
          if (p = arguments[C], p != null)
            for (d in p)
              m = c(x, d), D = c(p, d), x !== D && (k && D && (o(D) || (g = a(D))) ? (g ? (g = !1, v = m && a(m) ? m : []) : v = m && o(m) ?
              m : {}, l(x, { name: d, newValue: h(k, v, D) })) : typeof D < "u" && l(x, { name: d, newValue: D }));
        return x;
      }, "extend2");
    }
  });
  s(Zt, "stringifyPosition");
  s(Lp, "point");
  s(z1, "position2");
  s(H1, "index");
  Se = class extends Error {
    static {
      s(this, "VFileMessage");
    }
    /**
     * Create a message for `reason`.
     *
     * > 🪦 **Note**: also has obsolete signatures.
     *
     * @overload
     * @param {string} reason
     * @param {Options | null | undefined} [options]
     * @returns
     *
     * @overload
     * @param {string} reason
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @overload
     * @param {string} reason
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @overload
     * @param {string} reason
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {string | null | undefined} [origin]
     * @returns
     *
     * @param {Error | VFileMessage | string} causeOrReason
     *   Reason for message, should use markdown.
     * @param {Node | NodeLike | Options | Point | Position | string | null | undefined} [optionsOrParentOrPlace]
     *   Configuration (optional).
     * @param {string | null | undefined} [origin]
     *   Place in code where the message originates (example:
     *   `'my-package:my-rule'` or `'my-rule'`).
     * @returns
     *   Instance of `VFileMessage`.
     */
    // eslint-disable-next-line complexity
    constructor(e, t, r) {
      super(), typeof t == "string" && (r = t, t = void 0);
      let i = "", n = {}, u = !1;
      if (t && ("line" in t && "column" in t ? n = { place: t } : "start" in t && "end" in t ? n = { place: t } : "type" in t ? n = {
        ancestors: [t],
        place: t.position
      } : n = { ...t }), typeof e == "string" ? i = e : !n.cause && e && (u = !0, i = e.message, n.cause = e), !n.ruleId && !n.source && typeof r ==
      "string") {
        let o = r.indexOf(":");
        o === -1 ? n.ruleId = r : (n.source = r.slice(0, o), n.ruleId = r.slice(o + 1));
      }
      if (!n.place && n.ancestors && n.ancestors) {
        let o = n.ancestors[n.ancestors.length - 1];
        o && (n.place = o.position);
      }
      let a = n.place && "start" in n.place ? n.place.start : n.place;
      this.ancestors = n.ancestors || void 0, this.cause = n.cause || void 0, this.column = a ? a.column : void 0, this.fatal = void 0, this.
      file, this.message = i, this.line = a ? a.line : void 0, this.name = Zt(n.place) || "1:1", this.place = n.place || void 0, this.reason =
      this.message, this.ruleId = n.ruleId || void 0, this.source = n.source || void 0, this.stack = u && n.cause && typeof n.cause.stack ==
      "string" ? n.cause.stack : "", this.actual, this.expected, this.note, this.url;
    }
  };
  Se.prototype.file = "";
  Se.prototype.name = "";
  Se.prototype.reason = "";
  Se.prototype.message = "";
  Se.prototype.stack = "";
  Se.prototype.column = void 0;
  Se.prototype.line = void 0;
  Se.prototype.ancestors = void 0;
  Se.prototype.cause = void 0;
  Se.prototype.fatal = void 0;
  Se.prototype.place = void 0;
  Se.prototype.ruleId = void 0;
  Se.prototype.source = void 0;
  s(W1, "isUrl");
  vp = /** @type {const} */
  [
    "history",
    "path",
    "basename",
    "stem",
    "extname",
    "dirname"
  ], WE = class {
    static {
      s(this, "VFile");
    }
    /**
     * Create a new virtual file.
     *
     * `options` is treated as:
     *
     * *   `string` or `Uint8Array` — `{value: options}`
     * *   `URL` — `{path: options}`
     * *   `VFile` — shallow copies its data over to the new file
     * *   `object` — all fields are shallow copied over to the new file
     *
     * Path related fields are set in the following order (least specific to
     * most specific): `history`, `path`, `basename`, `stem`, `extname`,
     * `dirname`.
     *
     * You cannot set `dirname` or `extname` without setting either `history`,
     * `path`, `basename`, or `stem` too.
     *
     * @param {Compatible | null | undefined} [value]
     *   File value.
     * @returns
     *   New instance.
     */
    constructor(e) {
      let t;
      e ? W1(e) ? t = { path: e } : typeof e == "string" || gI(e) ? t = { value: e } : t = e : t = {}, this.cwd = zE.default.cwd(), this.data =
      {}, this.history = [], this.messages = [], this.value, this.map, this.result, this.stored;
      let r = -1;
      for (; ++r < vp.length; ) {
        let n = vp[r];
        n in t && t[n] !== void 0 && t[n] !== null && (this[n] = n === "history" ? [...t[n]] : t[n]);
      }
      let i;
      for (i in t)
        vp.includes(i) || (this[i] = t[i]);
    }
    /**
     * Get the basename (including extname) (example: `'index.min.js'`).
     *
     * @returns {string | undefined}
     *   Basename.
     */
    get basename() {
      return typeof this.path == "string" ? pr.default.basename(this.path) : void 0;
    }
    /**
     * Set basename (including extname) (`'index.min.js'`).
     *
     * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\'`
     * on windows).
     * Cannot be nullified (use `file.path = file.dirname` instead).
     *
     * @param {string} basename
     *   Basename.
     * @returns {undefined}
     *   Nothing.
     */
    set basename(e) {
      wp(e, "basename"), Cp(e, "basename"), this.path = pr.default.join(this.dirname || "", e);
    }
    /**
     * Get the parent path (example: `'~'`).
     *
     * @returns {string | undefined}
     *   Dirname.
     */
    get dirname() {
      return typeof this.path == "string" ? pr.default.dirname(this.path) : void 0;
    }
    /**
     * Set the parent path (example: `'~'`).
     *
     * Cannot be set if there’s no `path` yet.
     *
     * @param {string | undefined} dirname
     *   Dirname.
     * @returns {undefined}
     *   Nothing.
     */
    set dirname(e) {
      J1(this.basename, "dirname"), this.path = pr.default.join(e || "", this.basename);
    }
    /**
     * Get the extname (including dot) (example: `'.js'`).
     *
     * @returns {string | undefined}
     *   Extname.
     */
    get extname() {
      return typeof this.path == "string" ? pr.default.extname(this.path) : void 0;
    }
    /**
     * Set the extname (including dot) (example: `'.js'`).
     *
     * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\'`
     * on windows).
     * Cannot be set if there’s no `path` yet.
     *
     * @param {string | undefined} extname
     *   Extname.
     * @returns {undefined}
     *   Nothing.
     */
    set extname(e) {
      if (Cp(e, "extname"), J1(this.dirname, "extname"), e) {
        if (e.codePointAt(0) !== 46)
          throw new Error("`extname` must start with `.`");
        if (e.includes(".", 1))
          throw new Error("`extname` cannot contain multiple dots");
      }
      this.path = pr.default.join(this.dirname, this.stem + (e || ""));
    }
    /**
     * Get the full path (example: `'~/index.min.js'`).
     *
     * @returns {string}
     *   Path.
     */
    get path() {
      return this.history[this.history.length - 1];
    }
    /**
     * Set the full path (example: `'~/index.min.js'`).
     *
     * Cannot be nullified.
     * You can set a file URL (a `URL` object with a `file:` protocol) which will
     * be turned into a path with `url.fileURLToPath`.
     *
     * @param {URL | string} path
     *   Path.
     * @returns {undefined}
     *   Nothing.
     */
    set path(e) {
      W1(e) && (e = (0, HE.fileURLToPath)(e)), wp(e, "path"), this.path !== e && this.history.push(e);
    }
    /**
     * Get the stem (basename w/o extname) (example: `'index.min'`).
     *
     * @returns {string | undefined}
     *   Stem.
     */
    get stem() {
      return typeof this.path == "string" ? pr.default.basename(this.path, this.extname) : void 0;
    }
    /**
     * Set the stem (basename w/o extname) (example: `'index.min'`).
     *
     * Cannot contain path separators (`'/'` on unix, macOS, and browsers, `'\'`
     * on windows).
     * Cannot be nullified (use `file.path = file.dirname` instead).
     *
     * @param {string} stem
     *   Stem.
     * @returns {undefined}
     *   Nothing.
     */
    set stem(e) {
      wp(e, "stem"), Cp(e, "stem"), this.path = pr.default.join(this.dirname || "", e + (this.extname || ""));
    }
    // Normal prototypal methods.
    /**
     * Create a fatal message for `reason` associated with the file.
     *
     * The `fatal` field of the message is set to `true` (error; file not usable)
     * and the `file` field is set to the current file path.
     * The message is added to the `messages` field on `file`.
     *
     * > 🪦 **Note**: also has obsolete signatures.
     *
     * @overload
     * @param {string} reason
     * @param {MessageOptions | null | undefined} [options]
     * @returns {never}
     *
     * @overload
     * @param {string} reason
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @overload
     * @param {string} reason
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @overload
     * @param {string} reason
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {string | null | undefined} [origin]
     * @returns {never}
     *
     * @param {Error | VFileMessage | string} causeOrReason
     *   Reason for message, should use markdown.
     * @param {Node | NodeLike | MessageOptions | Point | Position | string | null | undefined} [optionsOrParentOrPlace]
     *   Configuration (optional).
     * @param {string | null | undefined} [origin]
     *   Place in code where the message originates (example:
     *   `'my-package:my-rule'` or `'my-rule'`).
     * @returns {never}
     *   Never.
     * @throws {VFileMessage}
     *   Message.
     */
    fail(e, t, r) {
      let i = this.message(e, t, r);
      throw i.fatal = !0, i;
    }
    /**
     * Create an info message for `reason` associated with the file.
     *
     * The `fatal` field of the message is set to `undefined` (info; change
     * likely not needed) and the `file` field is set to the current file path.
     * The message is added to the `messages` field on `file`.
     *
     * > 🪦 **Note**: also has obsolete signatures.
     *
     * @overload
     * @param {string} reason
     * @param {MessageOptions | null | undefined} [options]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @param {Error | VFileMessage | string} causeOrReason
     *   Reason for message, should use markdown.
     * @param {Node | NodeLike | MessageOptions | Point | Position | string | null | undefined} [optionsOrParentOrPlace]
     *   Configuration (optional).
     * @param {string | null | undefined} [origin]
     *   Place in code where the message originates (example:
     *   `'my-package:my-rule'` or `'my-rule'`).
     * @returns {VFileMessage}
     *   Message.
     */
    info(e, t, r) {
      let i = this.message(e, t, r);
      return i.fatal = void 0, i;
    }
    /**
     * Create a message for `reason` associated with the file.
     *
     * The `fatal` field of the message is set to `false` (warning; change may be
     * needed) and the `file` field is set to the current file path.
     * The message is added to the `messages` field on `file`.
     *
     * > 🪦 **Note**: also has obsolete signatures.
     *
     * @overload
     * @param {string} reason
     * @param {MessageOptions | null | undefined} [options]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {string} reason
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Node | NodeLike | null | undefined} parent
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {Point | Position | null | undefined} place
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @overload
     * @param {Error | VFileMessage} cause
     * @param {string | null | undefined} [origin]
     * @returns {VFileMessage}
     *
     * @param {Error | VFileMessage | string} causeOrReason
     *   Reason for message, should use markdown.
     * @param {Node | NodeLike | MessageOptions | Point | Position | string | null | undefined} [optionsOrParentOrPlace]
     *   Configuration (optional).
     * @param {string | null | undefined} [origin]
     *   Place in code where the message originates (example:
     *   `'my-package:my-rule'` or `'my-rule'`).
     * @returns {VFileMessage}
     *   Message.
     */
    message(e, t, r) {
      let i = new Se(
        // @ts-expect-error: the overloads are fine.
        e,
        t,
        r
      );
      return this.path && (i.name = this.path + ":" + i.name, i.file = this.path), i.fatal = !1, this.messages.push(i), i;
    }
    /**
     * Serialize the file.
     *
     * > **Note**: which encodings are supported depends on the engine.
     * > For info on Node.js, see:
     * > <https://nodejs.org/api/util.html#whatwg-supported-encodings>.
     *
     * @param {string | null | undefined} [encoding='utf8']
     *   Character encoding to understand `value` as when it’s a `Uint8Array`
     *   (default: `'utf-8'`).
     * @returns {string}
     *   Serialized file.
     */
    toString(e) {
      return this.value === void 0 ? "" : typeof this.value == "string" ? this.value : new TextDecoder(e || void 0).decode(this.value);
    }
  };
  s(Cp, "assertPart");
  s(wp, "assertNonEmpty");
  s(J1, "assertPath");
  s(gI, "isUint8Array");
  xI = [
    "md",
    "markdown",
    "mdown",
    "mkdn",
    "mkd",
    "mdwn",
    "mkdown",
    "ron"
  ], yI = xI, EI = yI.map(function(e) {
    return "." + e;
  });
  s(JE, "resolveFileAndOptions");
  s(bI, "looksLikeAVFile");
  s(vI, "mdxExpressionFromMarkdown");
  s(CI, "mdxExpressionToMarkdown");
  s(wI, "enterMdxFlowExpression");
  s(AI, "enterMdxTextExpression");
  s(G1, "exitMdxExpression");
  s(X1, "exitMdxExpressionData");
  s(Y1, "handleMdxExpression");
  s(K1, "ccount");
  FI = [
    "AElig",
    "AMP",
    "Aacute",
    "Acirc",
    "Agrave",
    "Aring",
    "Atilde",
    "Auml",
    "COPY",
    "Ccedil",
    "ETH",
    "Eacute",
    "Ecirc",
    "Egrave",
    "Euml",
    "GT",
    "Iacute",
    "Icirc",
    "Igrave",
    "Iuml",
    "LT",
    "Ntilde",
    "Oacute",
    "Ocirc",
    "Ograve",
    "Oslash",
    "Otilde",
    "Ouml",
    "QUOT",
    "REG",
    "THORN",
    "Uacute",
    "Ucirc",
    "Ugrave",
    "Uuml",
    "Yacute",
    "aacute",
    "acirc",
    "acute",
    "aelig",
    "agrave",
    "amp",
    "aring",
    "atilde",
    "auml",
    "brvbar",
    "ccedil",
    "cedil",
    "cent",
    "copy",
    "curren",
    "deg",
    "divide",
    "eacute",
    "ecirc",
    "egrave",
    "eth",
    "euml",
    "frac12",
    "frac14",
    "frac34",
    "gt",
    "iacute",
    "icirc",
    "iexcl",
    "igrave",
    "iquest",
    "iuml",
    "laquo",
    "lt",
    "macr",
    "micro",
    "middot",
    "nbsp",
    "not",
    "ntilde",
    "oacute",
    "ocirc",
    "ograve",
    "ordf",
    "ordm",
    "oslash",
    "otilde",
    "ouml",
    "para",
    "plusmn",
    "pound",
    "quot",
    "raquo",
    "reg",
    "sect",
    "shy",
    "sup1",
    "sup2",
    "sup3",
    "szlig",
    "thorn",
    "times",
    "uacute",
    "ucirc",
    "ugrave",
    "uml",
    "uuml",
    "yacute",
    "yen",
    "yuml"
  ], Q1 = {
    0: "\uFFFD",
    128: "\u20AC",
    130: "\u201A",
    131: "\u0192",
    132: "\u201E",
    133: "\u2026",
    134: "\u2020",
    135: "\u2021",
    136: "\u02C6",
    137: "\u2030",
    138: "\u0160",
    139: "\u2039",
    140: "\u0152",
    142: "\u017D",
    145: "\u2018",
    146: "\u2019",
    147: "\u201C",
    148: "\u201D",
    149: "\u2022",
    150: "\u2013",
    151: "\u2014",
    152: "\u02DC",
    153: "\u2122",
    154: "\u0161",
    155: "\u203A",
    156: "\u0153",
    158: "\u017E",
    159: "\u0178"
  };
  s(GE, "isDecimal");
  s(SI, "isHexadecimal");
  s(_I, "isAlphabetical");
  s(Z1, "isAlphanumerical");
  eE = {
    AElig: "\xC6",
    AMP: "&",
    Aacute: "\xC1",
    Abreve: "\u0102",
    Acirc: "\xC2",
    Acy: "\u0410",
    Afr: "\u{1D504}",
    Agrave: "\xC0",
    Alpha: "\u0391",
    Amacr: "\u0100",
    And: "\u2A53",
    Aogon: "\u0104",
    Aopf: "\u{1D538}",
    ApplyFunction: "\u2061",
    Aring: "\xC5",
    Ascr: "\u{1D49C}",
    Assign: "\u2254",
    Atilde: "\xC3",
    Auml: "\xC4",
    Backslash: "\u2216",
    Barv: "\u2AE7",
    Barwed: "\u2306",
    Bcy: "\u0411",
    Because: "\u2235",
    Bernoullis: "\u212C",
    Beta: "\u0392",
    Bfr: "\u{1D505}",
    Bopf: "\u{1D539}",
    Breve: "\u02D8",
    Bscr: "\u212C",
    Bumpeq: "\u224E",
    CHcy: "\u0427",
    COPY: "\xA9",
    Cacute: "\u0106",
    Cap: "\u22D2",
    CapitalDifferentialD: "\u2145",
    Cayleys: "\u212D",
    Ccaron: "\u010C",
    Ccedil: "\xC7",
    Ccirc: "\u0108",
    Cconint: "\u2230",
    Cdot: "\u010A",
    Cedilla: "\xB8",
    CenterDot: "\xB7",
    Cfr: "\u212D",
    Chi: "\u03A7",
    CircleDot: "\u2299",
    CircleMinus: "\u2296",
    CirclePlus: "\u2295",
    CircleTimes: "\u2297",
    ClockwiseContourIntegral: "\u2232",
    CloseCurlyDoubleQuote: "\u201D",
    CloseCurlyQuote: "\u2019",
    Colon: "\u2237",
    Colone: "\u2A74",
    Congruent: "\u2261",
    Conint: "\u222F",
    ContourIntegral: "\u222E",
    Copf: "\u2102",
    Coproduct: "\u2210",
    CounterClockwiseContourIntegral: "\u2233",
    Cross: "\u2A2F",
    Cscr: "\u{1D49E}",
    Cup: "\u22D3",
    CupCap: "\u224D",
    DD: "\u2145",
    DDotrahd: "\u2911",
    DJcy: "\u0402",
    DScy: "\u0405",
    DZcy: "\u040F",
    Dagger: "\u2021",
    Darr: "\u21A1",
    Dashv: "\u2AE4",
    Dcaron: "\u010E",
    Dcy: "\u0414",
    Del: "\u2207",
    Delta: "\u0394",
    Dfr: "\u{1D507}",
    DiacriticalAcute: "\xB4",
    DiacriticalDot: "\u02D9",
    DiacriticalDoubleAcute: "\u02DD",
    DiacriticalGrave: "`",
    DiacriticalTilde: "\u02DC",
    Diamond: "\u22C4",
    DifferentialD: "\u2146",
    Dopf: "\u{1D53B}",
    Dot: "\xA8",
    DotDot: "\u20DC",
    DotEqual: "\u2250",
    DoubleContourIntegral: "\u222F",
    DoubleDot: "\xA8",
    DoubleDownArrow: "\u21D3",
    DoubleLeftArrow: "\u21D0",
    DoubleLeftRightArrow: "\u21D4",
    DoubleLeftTee: "\u2AE4",
    DoubleLongLeftArrow: "\u27F8",
    DoubleLongLeftRightArrow: "\u27FA",
    DoubleLongRightArrow: "\u27F9",
    DoubleRightArrow: "\u21D2",
    DoubleRightTee: "\u22A8",
    DoubleUpArrow: "\u21D1",
    DoubleUpDownArrow: "\u21D5",
    DoubleVerticalBar: "\u2225",
    DownArrow: "\u2193",
    DownArrowBar: "\u2913",
    DownArrowUpArrow: "\u21F5",
    DownBreve: "\u0311",
    DownLeftRightVector: "\u2950",
    DownLeftTeeVector: "\u295E",
    DownLeftVector: "\u21BD",
    DownLeftVectorBar: "\u2956",
    DownRightTeeVector: "\u295F",
    DownRightVector: "\u21C1",
    DownRightVectorBar: "\u2957",
    DownTee: "\u22A4",
    DownTeeArrow: "\u21A7",
    Downarrow: "\u21D3",
    Dscr: "\u{1D49F}",
    Dstrok: "\u0110",
    ENG: "\u014A",
    ETH: "\xD0",
    Eacute: "\xC9",
    Ecaron: "\u011A",
    Ecirc: "\xCA",
    Ecy: "\u042D",
    Edot: "\u0116",
    Efr: "\u{1D508}",
    Egrave: "\xC8",
    Element: "\u2208",
    Emacr: "\u0112",
    EmptySmallSquare: "\u25FB",
    EmptyVerySmallSquare: "\u25AB",
    Eogon: "\u0118",
    Eopf: "\u{1D53C}",
    Epsilon: "\u0395",
    Equal: "\u2A75",
    EqualTilde: "\u2242",
    Equilibrium: "\u21CC",
    Escr: "\u2130",
    Esim: "\u2A73",
    Eta: "\u0397",
    Euml: "\xCB",
    Exists: "\u2203",
    ExponentialE: "\u2147",
    Fcy: "\u0424",
    Ffr: "\u{1D509}",
    FilledSmallSquare: "\u25FC",
    FilledVerySmallSquare: "\u25AA",
    Fopf: "\u{1D53D}",
    ForAll: "\u2200",
    Fouriertrf: "\u2131",
    Fscr: "\u2131",
    GJcy: "\u0403",
    GT: ">",
    Gamma: "\u0393",
    Gammad: "\u03DC",
    Gbreve: "\u011E",
    Gcedil: "\u0122",
    Gcirc: "\u011C",
    Gcy: "\u0413",
    Gdot: "\u0120",
    Gfr: "\u{1D50A}",
    Gg: "\u22D9",
    Gopf: "\u{1D53E}",
    GreaterEqual: "\u2265",
    GreaterEqualLess: "\u22DB",
    GreaterFullEqual: "\u2267",
    GreaterGreater: "\u2AA2",
    GreaterLess: "\u2277",
    GreaterSlantEqual: "\u2A7E",
    GreaterTilde: "\u2273",
    Gscr: "\u{1D4A2}",
    Gt: "\u226B",
    HARDcy: "\u042A",
    Hacek: "\u02C7",
    Hat: "^",
    Hcirc: "\u0124",
    Hfr: "\u210C",
    HilbertSpace: "\u210B",
    Hopf: "\u210D",
    HorizontalLine: "\u2500",
    Hscr: "\u210B",
    Hstrok: "\u0126",
    HumpDownHump: "\u224E",
    HumpEqual: "\u224F",
    IEcy: "\u0415",
    IJlig: "\u0132",
    IOcy: "\u0401",
    Iacute: "\xCD",
    Icirc: "\xCE",
    Icy: "\u0418",
    Idot: "\u0130",
    Ifr: "\u2111",
    Igrave: "\xCC",
    Im: "\u2111",
    Imacr: "\u012A",
    ImaginaryI: "\u2148",
    Implies: "\u21D2",
    Int: "\u222C",
    Integral: "\u222B",
    Intersection: "\u22C2",
    InvisibleComma: "\u2063",
    InvisibleTimes: "\u2062",
    Iogon: "\u012E",
    Iopf: "\u{1D540}",
    Iota: "\u0399",
    Iscr: "\u2110",
    Itilde: "\u0128",
    Iukcy: "\u0406",
    Iuml: "\xCF",
    Jcirc: "\u0134",
    Jcy: "\u0419",
    Jfr: "\u{1D50D}",
    Jopf: "\u{1D541}",
    Jscr: "\u{1D4A5}",
    Jsercy: "\u0408",
    Jukcy: "\u0404",
    KHcy: "\u0425",
    KJcy: "\u040C",
    Kappa: "\u039A",
    Kcedil: "\u0136",
    Kcy: "\u041A",
    Kfr: "\u{1D50E}",
    Kopf: "\u{1D542}",
    Kscr: "\u{1D4A6}",
    LJcy: "\u0409",
    LT: "<",
    Lacute: "\u0139",
    Lambda: "\u039B",
    Lang: "\u27EA",
    Laplacetrf: "\u2112",
    Larr: "\u219E",
    Lcaron: "\u013D",
    Lcedil: "\u013B",
    Lcy: "\u041B",
    LeftAngleBracket: "\u27E8",
    LeftArrow: "\u2190",
    LeftArrowBar: "\u21E4",
    LeftArrowRightArrow: "\u21C6",
    LeftCeiling: "\u2308",
    LeftDoubleBracket: "\u27E6",
    LeftDownTeeVector: "\u2961",
    LeftDownVector: "\u21C3",
    LeftDownVectorBar: "\u2959",
    LeftFloor: "\u230A",
    LeftRightArrow: "\u2194",
    LeftRightVector: "\u294E",
    LeftTee: "\u22A3",
    LeftTeeArrow: "\u21A4",
    LeftTeeVector: "\u295A",
    LeftTriangle: "\u22B2",
    LeftTriangleBar: "\u29CF",
    LeftTriangleEqual: "\u22B4",
    LeftUpDownVector: "\u2951",
    LeftUpTeeVector: "\u2960",
    LeftUpVector: "\u21BF",
    LeftUpVectorBar: "\u2958",
    LeftVector: "\u21BC",
    LeftVectorBar: "\u2952",
    Leftarrow: "\u21D0",
    Leftrightarrow: "\u21D4",
    LessEqualGreater: "\u22DA",
    LessFullEqual: "\u2266",
    LessGreater: "\u2276",
    LessLess: "\u2AA1",
    LessSlantEqual: "\u2A7D",
    LessTilde: "\u2272",
    Lfr: "\u{1D50F}",
    Ll: "\u22D8",
    Lleftarrow: "\u21DA",
    Lmidot: "\u013F",
    LongLeftArrow: "\u27F5",
    LongLeftRightArrow: "\u27F7",
    LongRightArrow: "\u27F6",
    Longleftarrow: "\u27F8",
    Longleftrightarrow: "\u27FA",
    Longrightarrow: "\u27F9",
    Lopf: "\u{1D543}",
    LowerLeftArrow: "\u2199",
    LowerRightArrow: "\u2198",
    Lscr: "\u2112",
    Lsh: "\u21B0",
    Lstrok: "\u0141",
    Lt: "\u226A",
    Map: "\u2905",
    Mcy: "\u041C",
    MediumSpace: "\u205F",
    Mellintrf: "\u2133",
    Mfr: "\u{1D510}",
    MinusPlus: "\u2213",
    Mopf: "\u{1D544}",
    Mscr: "\u2133",
    Mu: "\u039C",
    NJcy: "\u040A",
    Nacute: "\u0143",
    Ncaron: "\u0147",
    Ncedil: "\u0145",
    Ncy: "\u041D",
    NegativeMediumSpace: "\u200B",
    NegativeThickSpace: "\u200B",
    NegativeThinSpace: "\u200B",
    NegativeVeryThinSpace: "\u200B",
    NestedGreaterGreater: "\u226B",
    NestedLessLess: "\u226A",
    NewLine: `
`,
    Nfr: "\u{1D511}",
    NoBreak: "\u2060",
    NonBreakingSpace: "\xA0",
    Nopf: "\u2115",
    Not: "\u2AEC",
    NotCongruent: "\u2262",
    NotCupCap: "\u226D",
    NotDoubleVerticalBar: "\u2226",
    NotElement: "\u2209",
    NotEqual: "\u2260",
    NotEqualTilde: "\u2242\u0338",
    NotExists: "\u2204",
    NotGreater: "\u226F",
    NotGreaterEqual: "\u2271",
    NotGreaterFullEqual: "\u2267\u0338",
    NotGreaterGreater: "\u226B\u0338",
    NotGreaterLess: "\u2279",
    NotGreaterSlantEqual: "\u2A7E\u0338",
    NotGreaterTilde: "\u2275",
    NotHumpDownHump: "\u224E\u0338",
    NotHumpEqual: "\u224F\u0338",
    NotLeftTriangle: "\u22EA",
    NotLeftTriangleBar: "\u29CF\u0338",
    NotLeftTriangleEqual: "\u22EC",
    NotLess: "\u226E",
    NotLessEqual: "\u2270",
    NotLessGreater: "\u2278",
    NotLessLess: "\u226A\u0338",
    NotLessSlantEqual: "\u2A7D\u0338",
    NotLessTilde: "\u2274",
    NotNestedGreaterGreater: "\u2AA2\u0338",
    NotNestedLessLess: "\u2AA1\u0338",
    NotPrecedes: "\u2280",
    NotPrecedesEqual: "\u2AAF\u0338",
    NotPrecedesSlantEqual: "\u22E0",
    NotReverseElement: "\u220C",
    NotRightTriangle: "\u22EB",
    NotRightTriangleBar: "\u29D0\u0338",
    NotRightTriangleEqual: "\u22ED",
    NotSquareSubset: "\u228F\u0338",
    NotSquareSubsetEqual: "\u22E2",
    NotSquareSuperset: "\u2290\u0338",
    NotSquareSupersetEqual: "\u22E3",
    NotSubset: "\u2282\u20D2",
    NotSubsetEqual: "\u2288",
    NotSucceeds: "\u2281",
    NotSucceedsEqual: "\u2AB0\u0338",
    NotSucceedsSlantEqual: "\u22E1",
    NotSucceedsTilde: "\u227F\u0338",
    NotSuperset: "\u2283\u20D2",
    NotSupersetEqual: "\u2289",
    NotTilde: "\u2241",
    NotTildeEqual: "\u2244",
    NotTildeFullEqual: "\u2247",
    NotTildeTilde: "\u2249",
    NotVerticalBar: "\u2224",
    Nscr: "\u{1D4A9}",
    Ntilde: "\xD1",
    Nu: "\u039D",
    OElig: "\u0152",
    Oacute: "\xD3",
    Ocirc: "\xD4",
    Ocy: "\u041E",
    Odblac: "\u0150",
    Ofr: "\u{1D512}",
    Ograve: "\xD2",
    Omacr: "\u014C",
    Omega: "\u03A9",
    Omicron: "\u039F",
    Oopf: "\u{1D546}",
    OpenCurlyDoubleQuote: "\u201C",
    OpenCurlyQuote: "\u2018",
    Or: "\u2A54",
    Oscr: "\u{1D4AA}",
    Oslash: "\xD8",
    Otilde: "\xD5",
    Otimes: "\u2A37",
    Ouml: "\xD6",
    OverBar: "\u203E",
    OverBrace: "\u23DE",
    OverBracket: "\u23B4",
    OverParenthesis: "\u23DC",
    PartialD: "\u2202",
    Pcy: "\u041F",
    Pfr: "\u{1D513}",
    Phi: "\u03A6",
    Pi: "\u03A0",
    PlusMinus: "\xB1",
    Poincareplane: "\u210C",
    Popf: "\u2119",
    Pr: "\u2ABB",
    Precedes: "\u227A",
    PrecedesEqual: "\u2AAF",
    PrecedesSlantEqual: "\u227C",
    PrecedesTilde: "\u227E",
    Prime: "\u2033",
    Product: "\u220F",
    Proportion: "\u2237",
    Proportional: "\u221D",
    Pscr: "\u{1D4AB}",
    Psi: "\u03A8",
    QUOT: '"',
    Qfr: "\u{1D514}",
    Qopf: "\u211A",
    Qscr: "\u{1D4AC}",
    RBarr: "\u2910",
    REG: "\xAE",
    Racute: "\u0154",
    Rang: "\u27EB",
    Rarr: "\u21A0",
    Rarrtl: "\u2916",
    Rcaron: "\u0158",
    Rcedil: "\u0156",
    Rcy: "\u0420",
    Re: "\u211C",
    ReverseElement: "\u220B",
    ReverseEquilibrium: "\u21CB",
    ReverseUpEquilibrium: "\u296F",
    Rfr: "\u211C",
    Rho: "\u03A1",
    RightAngleBracket: "\u27E9",
    RightArrow: "\u2192",
    RightArrowBar: "\u21E5",
    RightArrowLeftArrow: "\u21C4",
    RightCeiling: "\u2309",
    RightDoubleBracket: "\u27E7",
    RightDownTeeVector: "\u295D",
    RightDownVector: "\u21C2",
    RightDownVectorBar: "\u2955",
    RightFloor: "\u230B",
    RightTee: "\u22A2",
    RightTeeArrow: "\u21A6",
    RightTeeVector: "\u295B",
    RightTriangle: "\u22B3",
    RightTriangleBar: "\u29D0",
    RightTriangleEqual: "\u22B5",
    RightUpDownVector: "\u294F",
    RightUpTeeVector: "\u295C",
    RightUpVector: "\u21BE",
    RightUpVectorBar: "\u2954",
    RightVector: "\u21C0",
    RightVectorBar: "\u2953",
    Rightarrow: "\u21D2",
    Ropf: "\u211D",
    RoundImplies: "\u2970",
    Rrightarrow: "\u21DB",
    Rscr: "\u211B",
    Rsh: "\u21B1",
    RuleDelayed: "\u29F4",
    SHCHcy: "\u0429",
    SHcy: "\u0428",
    SOFTcy: "\u042C",
    Sacute: "\u015A",
    Sc: "\u2ABC",
    Scaron: "\u0160",
    Scedil: "\u015E",
    Scirc: "\u015C",
    Scy: "\u0421",
    Sfr: "\u{1D516}",
    ShortDownArrow: "\u2193",
    ShortLeftArrow: "\u2190",
    ShortRightArrow: "\u2192",
    ShortUpArrow: "\u2191",
    Sigma: "\u03A3",
    SmallCircle: "\u2218",
    Sopf: "\u{1D54A}",
    Sqrt: "\u221A",
    Square: "\u25A1",
    SquareIntersection: "\u2293",
    SquareSubset: "\u228F",
    SquareSubsetEqual: "\u2291",
    SquareSuperset: "\u2290",
    SquareSupersetEqual: "\u2292",
    SquareUnion: "\u2294",
    Sscr: "\u{1D4AE}",
    Star: "\u22C6",
    Sub: "\u22D0",
    Subset: "\u22D0",
    SubsetEqual: "\u2286",
    Succeeds: "\u227B",
    SucceedsEqual: "\u2AB0",
    SucceedsSlantEqual: "\u227D",
    SucceedsTilde: "\u227F",
    SuchThat: "\u220B",
    Sum: "\u2211",
    Sup: "\u22D1",
    Superset: "\u2283",
    SupersetEqual: "\u2287",
    Supset: "\u22D1",
    THORN: "\xDE",
    TRADE: "\u2122",
    TSHcy: "\u040B",
    TScy: "\u0426",
    Tab: "	",
    Tau: "\u03A4",
    Tcaron: "\u0164",
    Tcedil: "\u0162",
    Tcy: "\u0422",
    Tfr: "\u{1D517}",
    Therefore: "\u2234",
    Theta: "\u0398",
    ThickSpace: "\u205F\u200A",
    ThinSpace: "\u2009",
    Tilde: "\u223C",
    TildeEqual: "\u2243",
    TildeFullEqual: "\u2245",
    TildeTilde: "\u2248",
    Topf: "\u{1D54B}",
    TripleDot: "\u20DB",
    Tscr: "\u{1D4AF}",
    Tstrok: "\u0166",
    Uacute: "\xDA",
    Uarr: "\u219F",
    Uarrocir: "\u2949",
    Ubrcy: "\u040E",
    Ubreve: "\u016C",
    Ucirc: "\xDB",
    Ucy: "\u0423",
    Udblac: "\u0170",
    Ufr: "\u{1D518}",
    Ugrave: "\xD9",
    Umacr: "\u016A",
    UnderBar: "_",
    UnderBrace: "\u23DF",
    UnderBracket: "\u23B5",
    UnderParenthesis: "\u23DD",
    Union: "\u22C3",
    UnionPlus: "\u228E",
    Uogon: "\u0172",
    Uopf: "\u{1D54C}",
    UpArrow: "\u2191",
    UpArrowBar: "\u2912",
    UpArrowDownArrow: "\u21C5",
    UpDownArrow: "\u2195",
    UpEquilibrium: "\u296E",
    UpTee: "\u22A5",
    UpTeeArrow: "\u21A5",
    Uparrow: "\u21D1",
    Updownarrow: "\u21D5",
    UpperLeftArrow: "\u2196",
    UpperRightArrow: "\u2197",
    Upsi: "\u03D2",
    Upsilon: "\u03A5",
    Uring: "\u016E",
    Uscr: "\u{1D4B0}",
    Utilde: "\u0168",
    Uuml: "\xDC",
    VDash: "\u22AB",
    Vbar: "\u2AEB",
    Vcy: "\u0412",
    Vdash: "\u22A9",
    Vdashl: "\u2AE6",
    Vee: "\u22C1",
    Verbar: "\u2016",
    Vert: "\u2016",
    VerticalBar: "\u2223",
    VerticalLine: "|",
    VerticalSeparator: "\u2758",
    VerticalTilde: "\u2240",
    VeryThinSpace: "\u200A",
    Vfr: "\u{1D519}",
    Vopf: "\u{1D54D}",
    Vscr: "\u{1D4B1}",
    Vvdash: "\u22AA",
    Wcirc: "\u0174",
    Wedge: "\u22C0",
    Wfr: "\u{1D51A}",
    Wopf: "\u{1D54E}",
    Wscr: "\u{1D4B2}",
    Xfr: "\u{1D51B}",
    Xi: "\u039E",
    Xopf: "\u{1D54F}",
    Xscr: "\u{1D4B3}",
    YAcy: "\u042F",
    YIcy: "\u0407",
    YUcy: "\u042E",
    Yacute: "\xDD",
    Ycirc: "\u0176",
    Ycy: "\u042B",
    Yfr: "\u{1D51C}",
    Yopf: "\u{1D550}",
    Yscr: "\u{1D4B4}",
    Yuml: "\u0178",
    ZHcy: "\u0416",
    Zacute: "\u0179",
    Zcaron: "\u017D",
    Zcy: "\u0417",
    Zdot: "\u017B",
    ZeroWidthSpace: "\u200B",
    Zeta: "\u0396",
    Zfr: "\u2128",
    Zopf: "\u2124",
    Zscr: "\u{1D4B5}",
    aacute: "\xE1",
    abreve: "\u0103",
    ac: "\u223E",
    acE: "\u223E\u0333",
    acd: "\u223F",
    acirc: "\xE2",
    acute: "\xB4",
    acy: "\u0430",
    aelig: "\xE6",
    af: "\u2061",
    afr: "\u{1D51E}",
    agrave: "\xE0",
    alefsym: "\u2135",
    aleph: "\u2135",
    alpha: "\u03B1",
    amacr: "\u0101",
    amalg: "\u2A3F",
    amp: "&",
    and: "\u2227",
    andand: "\u2A55",
    andd: "\u2A5C",
    andslope: "\u2A58",
    andv: "\u2A5A",
    ang: "\u2220",
    ange: "\u29A4",
    angle: "\u2220",
    angmsd: "\u2221",
    angmsdaa: "\u29A8",
    angmsdab: "\u29A9",
    angmsdac: "\u29AA",
    angmsdad: "\u29AB",
    angmsdae: "\u29AC",
    angmsdaf: "\u29AD",
    angmsdag: "\u29AE",
    angmsdah: "\u29AF",
    angrt: "\u221F",
    angrtvb: "\u22BE",
    angrtvbd: "\u299D",
    angsph: "\u2222",
    angst: "\xC5",
    angzarr: "\u237C",
    aogon: "\u0105",
    aopf: "\u{1D552}",
    ap: "\u2248",
    apE: "\u2A70",
    apacir: "\u2A6F",
    ape: "\u224A",
    apid: "\u224B",
    apos: "'",
    approx: "\u2248",
    approxeq: "\u224A",
    aring: "\xE5",
    ascr: "\u{1D4B6}",
    ast: "*",
    asymp: "\u2248",
    asympeq: "\u224D",
    atilde: "\xE3",
    auml: "\xE4",
    awconint: "\u2233",
    awint: "\u2A11",
    bNot: "\u2AED",
    backcong: "\u224C",
    backepsilon: "\u03F6",
    backprime: "\u2035",
    backsim: "\u223D",
    backsimeq: "\u22CD",
    barvee: "\u22BD",
    barwed: "\u2305",
    barwedge: "\u2305",
    bbrk: "\u23B5",
    bbrktbrk: "\u23B6",
    bcong: "\u224C",
    bcy: "\u0431",
    bdquo: "\u201E",
    becaus: "\u2235",
    because: "\u2235",
    bemptyv: "\u29B0",
    bepsi: "\u03F6",
    bernou: "\u212C",
    beta: "\u03B2",
    beth: "\u2136",
    between: "\u226C",
    bfr: "\u{1D51F}",
    bigcap: "\u22C2",
    bigcirc: "\u25EF",
    bigcup: "\u22C3",
    bigodot: "\u2A00",
    bigoplus: "\u2A01",
    bigotimes: "\u2A02",
    bigsqcup: "\u2A06",
    bigstar: "\u2605",
    bigtriangledown: "\u25BD",
    bigtriangleup: "\u25B3",
    biguplus: "\u2A04",
    bigvee: "\u22C1",
    bigwedge: "\u22C0",
    bkarow: "\u290D",
    blacklozenge: "\u29EB",
    blacksquare: "\u25AA",
    blacktriangle: "\u25B4",
    blacktriangledown: "\u25BE",
    blacktriangleleft: "\u25C2",
    blacktriangleright: "\u25B8",
    blank: "\u2423",
    blk12: "\u2592",
    blk14: "\u2591",
    blk34: "\u2593",
    block: "\u2588",
    bne: "=\u20E5",
    bnequiv: "\u2261\u20E5",
    bnot: "\u2310",
    bopf: "\u{1D553}",
    bot: "\u22A5",
    bottom: "\u22A5",
    bowtie: "\u22C8",
    boxDL: "\u2557",
    boxDR: "\u2554",
    boxDl: "\u2556",
    boxDr: "\u2553",
    boxH: "\u2550",
    boxHD: "\u2566",
    boxHU: "\u2569",
    boxHd: "\u2564",
    boxHu: "\u2567",
    boxUL: "\u255D",
    boxUR: "\u255A",
    boxUl: "\u255C",
    boxUr: "\u2559",
    boxV: "\u2551",
    boxVH: "\u256C",
    boxVL: "\u2563",
    boxVR: "\u2560",
    boxVh: "\u256B",
    boxVl: "\u2562",
    boxVr: "\u255F",
    boxbox: "\u29C9",
    boxdL: "\u2555",
    boxdR: "\u2552",
    boxdl: "\u2510",
    boxdr: "\u250C",
    boxh: "\u2500",
    boxhD: "\u2565",
    boxhU: "\u2568",
    boxhd: "\u252C",
    boxhu: "\u2534",
    boxminus: "\u229F",
    boxplus: "\u229E",
    boxtimes: "\u22A0",
    boxuL: "\u255B",
    boxuR: "\u2558",
    boxul: "\u2518",
    boxur: "\u2514",
    boxv: "\u2502",
    boxvH: "\u256A",
    boxvL: "\u2561",
    boxvR: "\u255E",
    boxvh: "\u253C",
    boxvl: "\u2524",
    boxvr: "\u251C",
    bprime: "\u2035",
    breve: "\u02D8",
    brvbar: "\xA6",
    bscr: "\u{1D4B7}",
    bsemi: "\u204F",
    bsim: "\u223D",
    bsime: "\u22CD",
    bsol: "\\",
    bsolb: "\u29C5",
    bsolhsub: "\u27C8",
    bull: "\u2022",
    bullet: "\u2022",
    bump: "\u224E",
    bumpE: "\u2AAE",
    bumpe: "\u224F",
    bumpeq: "\u224F",
    cacute: "\u0107",
    cap: "\u2229",
    capand: "\u2A44",
    capbrcup: "\u2A49",
    capcap: "\u2A4B",
    capcup: "\u2A47",
    capdot: "\u2A40",
    caps: "\u2229\uFE00",
    caret: "\u2041",
    caron: "\u02C7",
    ccaps: "\u2A4D",
    ccaron: "\u010D",
    ccedil: "\xE7",
    ccirc: "\u0109",
    ccups: "\u2A4C",
    ccupssm: "\u2A50",
    cdot: "\u010B",
    cedil: "\xB8",
    cemptyv: "\u29B2",
    cent: "\xA2",
    centerdot: "\xB7",
    cfr: "\u{1D520}",
    chcy: "\u0447",
    check: "\u2713",
    checkmark: "\u2713",
    chi: "\u03C7",
    cir: "\u25CB",
    cirE: "\u29C3",
    circ: "\u02C6",
    circeq: "\u2257",
    circlearrowleft: "\u21BA",
    circlearrowright: "\u21BB",
    circledR: "\xAE",
    circledS: "\u24C8",
    circledast: "\u229B",
    circledcirc: "\u229A",
    circleddash: "\u229D",
    cire: "\u2257",
    cirfnint: "\u2A10",
    cirmid: "\u2AEF",
    cirscir: "\u29C2",
    clubs: "\u2663",
    clubsuit: "\u2663",
    colon: ":",
    colone: "\u2254",
    coloneq: "\u2254",
    comma: ",",
    commat: "@",
    comp: "\u2201",
    compfn: "\u2218",
    complement: "\u2201",
    complexes: "\u2102",
    cong: "\u2245",
    congdot: "\u2A6D",
    conint: "\u222E",
    copf: "\u{1D554}",
    coprod: "\u2210",
    copy: "\xA9",
    copysr: "\u2117",
    crarr: "\u21B5",
    cross: "\u2717",
    cscr: "\u{1D4B8}",
    csub: "\u2ACF",
    csube: "\u2AD1",
    csup: "\u2AD0",
    csupe: "\u2AD2",
    ctdot: "\u22EF",
    cudarrl: "\u2938",
    cudarrr: "\u2935",
    cuepr: "\u22DE",
    cuesc: "\u22DF",
    cularr: "\u21B6",
    cularrp: "\u293D",
    cup: "\u222A",
    cupbrcap: "\u2A48",
    cupcap: "\u2A46",
    cupcup: "\u2A4A",
    cupdot: "\u228D",
    cupor: "\u2A45",
    cups: "\u222A\uFE00",
    curarr: "\u21B7",
    curarrm: "\u293C",
    curlyeqprec: "\u22DE",
    curlyeqsucc: "\u22DF",
    curlyvee: "\u22CE",
    curlywedge: "\u22CF",
    curren: "\xA4",
    curvearrowleft: "\u21B6",
    curvearrowright: "\u21B7",
    cuvee: "\u22CE",
    cuwed: "\u22CF",
    cwconint: "\u2232",
    cwint: "\u2231",
    cylcty: "\u232D",
    dArr: "\u21D3",
    dHar: "\u2965",
    dagger: "\u2020",
    daleth: "\u2138",
    darr: "\u2193",
    dash: "\u2010",
    dashv: "\u22A3",
    dbkarow: "\u290F",
    dblac: "\u02DD",
    dcaron: "\u010F",
    dcy: "\u0434",
    dd: "\u2146",
    ddagger: "\u2021",
    ddarr: "\u21CA",
    ddotseq: "\u2A77",
    deg: "\xB0",
    delta: "\u03B4",
    demptyv: "\u29B1",
    dfisht: "\u297F",
    dfr: "\u{1D521}",
    dharl: "\u21C3",
    dharr: "\u21C2",
    diam: "\u22C4",
    diamond: "\u22C4",
    diamondsuit: "\u2666",
    diams: "\u2666",
    die: "\xA8",
    digamma: "\u03DD",
    disin: "\u22F2",
    div: "\xF7",
    divide: "\xF7",
    divideontimes: "\u22C7",
    divonx: "\u22C7",
    djcy: "\u0452",
    dlcorn: "\u231E",
    dlcrop: "\u230D",
    dollar: "$",
    dopf: "\u{1D555}",
    dot: "\u02D9",
    doteq: "\u2250",
    doteqdot: "\u2251",
    dotminus: "\u2238",
    dotplus: "\u2214",
    dotsquare: "\u22A1",
    doublebarwedge: "\u2306",
    downarrow: "\u2193",
    downdownarrows: "\u21CA",
    downharpoonleft: "\u21C3",
    downharpoonright: "\u21C2",
    drbkarow: "\u2910",
    drcorn: "\u231F",
    drcrop: "\u230C",
    dscr: "\u{1D4B9}",
    dscy: "\u0455",
    dsol: "\u29F6",
    dstrok: "\u0111",
    dtdot: "\u22F1",
    dtri: "\u25BF",
    dtrif: "\u25BE",
    duarr: "\u21F5",
    duhar: "\u296F",
    dwangle: "\u29A6",
    dzcy: "\u045F",
    dzigrarr: "\u27FF",
    eDDot: "\u2A77",
    eDot: "\u2251",
    eacute: "\xE9",
    easter: "\u2A6E",
    ecaron: "\u011B",
    ecir: "\u2256",
    ecirc: "\xEA",
    ecolon: "\u2255",
    ecy: "\u044D",
    edot: "\u0117",
    ee: "\u2147",
    efDot: "\u2252",
    efr: "\u{1D522}",
    eg: "\u2A9A",
    egrave: "\xE8",
    egs: "\u2A96",
    egsdot: "\u2A98",
    el: "\u2A99",
    elinters: "\u23E7",
    ell: "\u2113",
    els: "\u2A95",
    elsdot: "\u2A97",
    emacr: "\u0113",
    empty: "\u2205",
    emptyset: "\u2205",
    emptyv: "\u2205",
    emsp13: "\u2004",
    emsp14: "\u2005",
    emsp: "\u2003",
    eng: "\u014B",
    ensp: "\u2002",
    eogon: "\u0119",
    eopf: "\u{1D556}",
    epar: "\u22D5",
    eparsl: "\u29E3",
    eplus: "\u2A71",
    epsi: "\u03B5",
    epsilon: "\u03B5",
    epsiv: "\u03F5",
    eqcirc: "\u2256",
    eqcolon: "\u2255",
    eqsim: "\u2242",
    eqslantgtr: "\u2A96",
    eqslantless: "\u2A95",
    equals: "=",
    equest: "\u225F",
    equiv: "\u2261",
    equivDD: "\u2A78",
    eqvparsl: "\u29E5",
    erDot: "\u2253",
    erarr: "\u2971",
    escr: "\u212F",
    esdot: "\u2250",
    esim: "\u2242",
    eta: "\u03B7",
    eth: "\xF0",
    euml: "\xEB",
    euro: "\u20AC",
    excl: "!",
    exist: "\u2203",
    expectation: "\u2130",
    exponentiale: "\u2147",
    fallingdotseq: "\u2252",
    fcy: "\u0444",
    female: "\u2640",
    ffilig: "\uFB03",
    fflig: "\uFB00",
    ffllig: "\uFB04",
    ffr: "\u{1D523}",
    filig: "\uFB01",
    fjlig: "fj",
    flat: "\u266D",
    fllig: "\uFB02",
    fltns: "\u25B1",
    fnof: "\u0192",
    fopf: "\u{1D557}",
    forall: "\u2200",
    fork: "\u22D4",
    forkv: "\u2AD9",
    fpartint: "\u2A0D",
    frac12: "\xBD",
    frac13: "\u2153",
    frac14: "\xBC",
    frac15: "\u2155",
    frac16: "\u2159",
    frac18: "\u215B",
    frac23: "\u2154",
    frac25: "\u2156",
    frac34: "\xBE",
    frac35: "\u2157",
    frac38: "\u215C",
    frac45: "\u2158",
    frac56: "\u215A",
    frac58: "\u215D",
    frac78: "\u215E",
    frasl: "\u2044",
    frown: "\u2322",
    fscr: "\u{1D4BB}",
    gE: "\u2267",
    gEl: "\u2A8C",
    gacute: "\u01F5",
    gamma: "\u03B3",
    gammad: "\u03DD",
    gap: "\u2A86",
    gbreve: "\u011F",
    gcirc: "\u011D",
    gcy: "\u0433",
    gdot: "\u0121",
    ge: "\u2265",
    gel: "\u22DB",
    geq: "\u2265",
    geqq: "\u2267",
    geqslant: "\u2A7E",
    ges: "\u2A7E",
    gescc: "\u2AA9",
    gesdot: "\u2A80",
    gesdoto: "\u2A82",
    gesdotol: "\u2A84",
    gesl: "\u22DB\uFE00",
    gesles: "\u2A94",
    gfr: "\u{1D524}",
    gg: "\u226B",
    ggg: "\u22D9",
    gimel: "\u2137",
    gjcy: "\u0453",
    gl: "\u2277",
    glE: "\u2A92",
    gla: "\u2AA5",
    glj: "\u2AA4",
    gnE: "\u2269",
    gnap: "\u2A8A",
    gnapprox: "\u2A8A",
    gne: "\u2A88",
    gneq: "\u2A88",
    gneqq: "\u2269",
    gnsim: "\u22E7",
    gopf: "\u{1D558}",
    grave: "`",
    gscr: "\u210A",
    gsim: "\u2273",
    gsime: "\u2A8E",
    gsiml: "\u2A90",
    gt: ">",
    gtcc: "\u2AA7",
    gtcir: "\u2A7A",
    gtdot: "\u22D7",
    gtlPar: "\u2995",
    gtquest: "\u2A7C",
    gtrapprox: "\u2A86",
    gtrarr: "\u2978",
    gtrdot: "\u22D7",
    gtreqless: "\u22DB",
    gtreqqless: "\u2A8C",
    gtrless: "\u2277",
    gtrsim: "\u2273",
    gvertneqq: "\u2269\uFE00",
    gvnE: "\u2269\uFE00",
    hArr: "\u21D4",
    hairsp: "\u200A",
    half: "\xBD",
    hamilt: "\u210B",
    hardcy: "\u044A",
    harr: "\u2194",
    harrcir: "\u2948",
    harrw: "\u21AD",
    hbar: "\u210F",
    hcirc: "\u0125",
    hearts: "\u2665",
    heartsuit: "\u2665",
    hellip: "\u2026",
    hercon: "\u22B9",
    hfr: "\u{1D525}",
    hksearow: "\u2925",
    hkswarow: "\u2926",
    hoarr: "\u21FF",
    homtht: "\u223B",
    hookleftarrow: "\u21A9",
    hookrightarrow: "\u21AA",
    hopf: "\u{1D559}",
    horbar: "\u2015",
    hscr: "\u{1D4BD}",
    hslash: "\u210F",
    hstrok: "\u0127",
    hybull: "\u2043",
    hyphen: "\u2010",
    iacute: "\xED",
    ic: "\u2063",
    icirc: "\xEE",
    icy: "\u0438",
    iecy: "\u0435",
    iexcl: "\xA1",
    iff: "\u21D4",
    ifr: "\u{1D526}",
    igrave: "\xEC",
    ii: "\u2148",
    iiiint: "\u2A0C",
    iiint: "\u222D",
    iinfin: "\u29DC",
    iiota: "\u2129",
    ijlig: "\u0133",
    imacr: "\u012B",
    image: "\u2111",
    imagline: "\u2110",
    imagpart: "\u2111",
    imath: "\u0131",
    imof: "\u22B7",
    imped: "\u01B5",
    in: "\u2208",
    incare: "\u2105",
    infin: "\u221E",
    infintie: "\u29DD",
    inodot: "\u0131",
    int: "\u222B",
    intcal: "\u22BA",
    integers: "\u2124",
    intercal: "\u22BA",
    intlarhk: "\u2A17",
    intprod: "\u2A3C",
    iocy: "\u0451",
    iogon: "\u012F",
    iopf: "\u{1D55A}",
    iota: "\u03B9",
    iprod: "\u2A3C",
    iquest: "\xBF",
    iscr: "\u{1D4BE}",
    isin: "\u2208",
    isinE: "\u22F9",
    isindot: "\u22F5",
    isins: "\u22F4",
    isinsv: "\u22F3",
    isinv: "\u2208",
    it: "\u2062",
    itilde: "\u0129",
    iukcy: "\u0456",
    iuml: "\xEF",
    jcirc: "\u0135",
    jcy: "\u0439",
    jfr: "\u{1D527}",
    jmath: "\u0237",
    jopf: "\u{1D55B}",
    jscr: "\u{1D4BF}",
    jsercy: "\u0458",
    jukcy: "\u0454",
    kappa: "\u03BA",
    kappav: "\u03F0",
    kcedil: "\u0137",
    kcy: "\u043A",
    kfr: "\u{1D528}",
    kgreen: "\u0138",
    khcy: "\u0445",
    kjcy: "\u045C",
    kopf: "\u{1D55C}",
    kscr: "\u{1D4C0}",
    lAarr: "\u21DA",
    lArr: "\u21D0",
    lAtail: "\u291B",
    lBarr: "\u290E",
    lE: "\u2266",
    lEg: "\u2A8B",
    lHar: "\u2962",
    lacute: "\u013A",
    laemptyv: "\u29B4",
    lagran: "\u2112",
    lambda: "\u03BB",
    lang: "\u27E8",
    langd: "\u2991",
    langle: "\u27E8",
    lap: "\u2A85",
    laquo: "\xAB",
    larr: "\u2190",
    larrb: "\u21E4",
    larrbfs: "\u291F",
    larrfs: "\u291D",
    larrhk: "\u21A9",
    larrlp: "\u21AB",
    larrpl: "\u2939",
    larrsim: "\u2973",
    larrtl: "\u21A2",
    lat: "\u2AAB",
    latail: "\u2919",
    late: "\u2AAD",
    lates: "\u2AAD\uFE00",
    lbarr: "\u290C",
    lbbrk: "\u2772",
    lbrace: "{",
    lbrack: "[",
    lbrke: "\u298B",
    lbrksld: "\u298F",
    lbrkslu: "\u298D",
    lcaron: "\u013E",
    lcedil: "\u013C",
    lceil: "\u2308",
    lcub: "{",
    lcy: "\u043B",
    ldca: "\u2936",
    ldquo: "\u201C",
    ldquor: "\u201E",
    ldrdhar: "\u2967",
    ldrushar: "\u294B",
    ldsh: "\u21B2",
    le: "\u2264",
    leftarrow: "\u2190",
    leftarrowtail: "\u21A2",
    leftharpoondown: "\u21BD",
    leftharpoonup: "\u21BC",
    leftleftarrows: "\u21C7",
    leftrightarrow: "\u2194",
    leftrightarrows: "\u21C6",
    leftrightharpoons: "\u21CB",
    leftrightsquigarrow: "\u21AD",
    leftthreetimes: "\u22CB",
    leg: "\u22DA",
    leq: "\u2264",
    leqq: "\u2266",
    leqslant: "\u2A7D",
    les: "\u2A7D",
    lescc: "\u2AA8",
    lesdot: "\u2A7F",
    lesdoto: "\u2A81",
    lesdotor: "\u2A83",
    lesg: "\u22DA\uFE00",
    lesges: "\u2A93",
    lessapprox: "\u2A85",
    lessdot: "\u22D6",
    lesseqgtr: "\u22DA",
    lesseqqgtr: "\u2A8B",
    lessgtr: "\u2276",
    lesssim: "\u2272",
    lfisht: "\u297C",
    lfloor: "\u230A",
    lfr: "\u{1D529}",
    lg: "\u2276",
    lgE: "\u2A91",
    lhard: "\u21BD",
    lharu: "\u21BC",
    lharul: "\u296A",
    lhblk: "\u2584",
    ljcy: "\u0459",
    ll: "\u226A",
    llarr: "\u21C7",
    llcorner: "\u231E",
    llhard: "\u296B",
    lltri: "\u25FA",
    lmidot: "\u0140",
    lmoust: "\u23B0",
    lmoustache: "\u23B0",
    lnE: "\u2268",
    lnap: "\u2A89",
    lnapprox: "\u2A89",
    lne: "\u2A87",
    lneq: "\u2A87",
    lneqq: "\u2268",
    lnsim: "\u22E6",
    loang: "\u27EC",
    loarr: "\u21FD",
    lobrk: "\u27E6",
    longleftarrow: "\u27F5",
    longleftrightarrow: "\u27F7",
    longmapsto: "\u27FC",
    longrightarrow: "\u27F6",
    looparrowleft: "\u21AB",
    looparrowright: "\u21AC",
    lopar: "\u2985",
    lopf: "\u{1D55D}",
    loplus: "\u2A2D",
    lotimes: "\u2A34",
    lowast: "\u2217",
    lowbar: "_",
    loz: "\u25CA",
    lozenge: "\u25CA",
    lozf: "\u29EB",
    lpar: "(",
    lparlt: "\u2993",
    lrarr: "\u21C6",
    lrcorner: "\u231F",
    lrhar: "\u21CB",
    lrhard: "\u296D",
    lrm: "\u200E",
    lrtri: "\u22BF",
    lsaquo: "\u2039",
    lscr: "\u{1D4C1}",
    lsh: "\u21B0",
    lsim: "\u2272",
    lsime: "\u2A8D",
    lsimg: "\u2A8F",
    lsqb: "[",
    lsquo: "\u2018",
    lsquor: "\u201A",
    lstrok: "\u0142",
    lt: "<",
    ltcc: "\u2AA6",
    ltcir: "\u2A79",
    ltdot: "\u22D6",
    lthree: "\u22CB",
    ltimes: "\u22C9",
    ltlarr: "\u2976",
    ltquest: "\u2A7B",
    ltrPar: "\u2996",
    ltri: "\u25C3",
    ltrie: "\u22B4",
    ltrif: "\u25C2",
    lurdshar: "\u294A",
    luruhar: "\u2966",
    lvertneqq: "\u2268\uFE00",
    lvnE: "\u2268\uFE00",
    mDDot: "\u223A",
    macr: "\xAF",
    male: "\u2642",
    malt: "\u2720",
    maltese: "\u2720",
    map: "\u21A6",
    mapsto: "\u21A6",
    mapstodown: "\u21A7",
    mapstoleft: "\u21A4",
    mapstoup: "\u21A5",
    marker: "\u25AE",
    mcomma: "\u2A29",
    mcy: "\u043C",
    mdash: "\u2014",
    measuredangle: "\u2221",
    mfr: "\u{1D52A}",
    mho: "\u2127",
    micro: "\xB5",
    mid: "\u2223",
    midast: "*",
    midcir: "\u2AF0",
    middot: "\xB7",
    minus: "\u2212",
    minusb: "\u229F",
    minusd: "\u2238",
    minusdu: "\u2A2A",
    mlcp: "\u2ADB",
    mldr: "\u2026",
    mnplus: "\u2213",
    models: "\u22A7",
    mopf: "\u{1D55E}",
    mp: "\u2213",
    mscr: "\u{1D4C2}",
    mstpos: "\u223E",
    mu: "\u03BC",
    multimap: "\u22B8",
    mumap: "\u22B8",
    nGg: "\u22D9\u0338",
    nGt: "\u226B\u20D2",
    nGtv: "\u226B\u0338",
    nLeftarrow: "\u21CD",
    nLeftrightarrow: "\u21CE",
    nLl: "\u22D8\u0338",
    nLt: "\u226A\u20D2",
    nLtv: "\u226A\u0338",
    nRightarrow: "\u21CF",
    nVDash: "\u22AF",
    nVdash: "\u22AE",
    nabla: "\u2207",
    nacute: "\u0144",
    nang: "\u2220\u20D2",
    nap: "\u2249",
    napE: "\u2A70\u0338",
    napid: "\u224B\u0338",
    napos: "\u0149",
    napprox: "\u2249",
    natur: "\u266E",
    natural: "\u266E",
    naturals: "\u2115",
    nbsp: "\xA0",
    nbump: "\u224E\u0338",
    nbumpe: "\u224F\u0338",
    ncap: "\u2A43",
    ncaron: "\u0148",
    ncedil: "\u0146",
    ncong: "\u2247",
    ncongdot: "\u2A6D\u0338",
    ncup: "\u2A42",
    ncy: "\u043D",
    ndash: "\u2013",
    ne: "\u2260",
    neArr: "\u21D7",
    nearhk: "\u2924",
    nearr: "\u2197",
    nearrow: "\u2197",
    nedot: "\u2250\u0338",
    nequiv: "\u2262",
    nesear: "\u2928",
    nesim: "\u2242\u0338",
    nexist: "\u2204",
    nexists: "\u2204",
    nfr: "\u{1D52B}",
    ngE: "\u2267\u0338",
    nge: "\u2271",
    ngeq: "\u2271",
    ngeqq: "\u2267\u0338",
    ngeqslant: "\u2A7E\u0338",
    nges: "\u2A7E\u0338",
    ngsim: "\u2275",
    ngt: "\u226F",
    ngtr: "\u226F",
    nhArr: "\u21CE",
    nharr: "\u21AE",
    nhpar: "\u2AF2",
    ni: "\u220B",
    nis: "\u22FC",
    nisd: "\u22FA",
    niv: "\u220B",
    njcy: "\u045A",
    nlArr: "\u21CD",
    nlE: "\u2266\u0338",
    nlarr: "\u219A",
    nldr: "\u2025",
    nle: "\u2270",
    nleftarrow: "\u219A",
    nleftrightarrow: "\u21AE",
    nleq: "\u2270",
    nleqq: "\u2266\u0338",
    nleqslant: "\u2A7D\u0338",
    nles: "\u2A7D\u0338",
    nless: "\u226E",
    nlsim: "\u2274",
    nlt: "\u226E",
    nltri: "\u22EA",
    nltrie: "\u22EC",
    nmid: "\u2224",
    nopf: "\u{1D55F}",
    not: "\xAC",
    notin: "\u2209",
    notinE: "\u22F9\u0338",
    notindot: "\u22F5\u0338",
    notinva: "\u2209",
    notinvb: "\u22F7",
    notinvc: "\u22F6",
    notni: "\u220C",
    notniva: "\u220C",
    notnivb: "\u22FE",
    notnivc: "\u22FD",
    npar: "\u2226",
    nparallel: "\u2226",
    nparsl: "\u2AFD\u20E5",
    npart: "\u2202\u0338",
    npolint: "\u2A14",
    npr: "\u2280",
    nprcue: "\u22E0",
    npre: "\u2AAF\u0338",
    nprec: "\u2280",
    npreceq: "\u2AAF\u0338",
    nrArr: "\u21CF",
    nrarr: "\u219B",
    nrarrc: "\u2933\u0338",
    nrarrw: "\u219D\u0338",
    nrightarrow: "\u219B",
    nrtri: "\u22EB",
    nrtrie: "\u22ED",
    nsc: "\u2281",
    nsccue: "\u22E1",
    nsce: "\u2AB0\u0338",
    nscr: "\u{1D4C3}",
    nshortmid: "\u2224",
    nshortparallel: "\u2226",
    nsim: "\u2241",
    nsime: "\u2244",
    nsimeq: "\u2244",
    nsmid: "\u2224",
    nspar: "\u2226",
    nsqsube: "\u22E2",
    nsqsupe: "\u22E3",
    nsub: "\u2284",
    nsubE: "\u2AC5\u0338",
    nsube: "\u2288",
    nsubset: "\u2282\u20D2",
    nsubseteq: "\u2288",
    nsubseteqq: "\u2AC5\u0338",
    nsucc: "\u2281",
    nsucceq: "\u2AB0\u0338",
    nsup: "\u2285",
    nsupE: "\u2AC6\u0338",
    nsupe: "\u2289",
    nsupset: "\u2283\u20D2",
    nsupseteq: "\u2289",
    nsupseteqq: "\u2AC6\u0338",
    ntgl: "\u2279",
    ntilde: "\xF1",
    ntlg: "\u2278",
    ntriangleleft: "\u22EA",
    ntrianglelefteq: "\u22EC",
    ntriangleright: "\u22EB",
    ntrianglerighteq: "\u22ED",
    nu: "\u03BD",
    num: "#",
    numero: "\u2116",
    numsp: "\u2007",
    nvDash: "\u22AD",
    nvHarr: "\u2904",
    nvap: "\u224D\u20D2",
    nvdash: "\u22AC",
    nvge: "\u2265\u20D2",
    nvgt: ">\u20D2",
    nvinfin: "\u29DE",
    nvlArr: "\u2902",
    nvle: "\u2264\u20D2",
    nvlt: "<\u20D2",
    nvltrie: "\u22B4\u20D2",
    nvrArr: "\u2903",
    nvrtrie: "\u22B5\u20D2",
    nvsim: "\u223C\u20D2",
    nwArr: "\u21D6",
    nwarhk: "\u2923",
    nwarr: "\u2196",
    nwarrow: "\u2196",
    nwnear: "\u2927",
    oS: "\u24C8",
    oacute: "\xF3",
    oast: "\u229B",
    ocir: "\u229A",
    ocirc: "\xF4",
    ocy: "\u043E",
    odash: "\u229D",
    odblac: "\u0151",
    odiv: "\u2A38",
    odot: "\u2299",
    odsold: "\u29BC",
    oelig: "\u0153",
    ofcir: "\u29BF",
    ofr: "\u{1D52C}",
    ogon: "\u02DB",
    ograve: "\xF2",
    ogt: "\u29C1",
    ohbar: "\u29B5",
    ohm: "\u03A9",
    oint: "\u222E",
    olarr: "\u21BA",
    olcir: "\u29BE",
    olcross: "\u29BB",
    oline: "\u203E",
    olt: "\u29C0",
    omacr: "\u014D",
    omega: "\u03C9",
    omicron: "\u03BF",
    omid: "\u29B6",
    ominus: "\u2296",
    oopf: "\u{1D560}",
    opar: "\u29B7",
    operp: "\u29B9",
    oplus: "\u2295",
    or: "\u2228",
    orarr: "\u21BB",
    ord: "\u2A5D",
    order: "\u2134",
    orderof: "\u2134",
    ordf: "\xAA",
    ordm: "\xBA",
    origof: "\u22B6",
    oror: "\u2A56",
    orslope: "\u2A57",
    orv: "\u2A5B",
    oscr: "\u2134",
    oslash: "\xF8",
    osol: "\u2298",
    otilde: "\xF5",
    otimes: "\u2297",
    otimesas: "\u2A36",
    ouml: "\xF6",
    ovbar: "\u233D",
    par: "\u2225",
    para: "\xB6",
    parallel: "\u2225",
    parsim: "\u2AF3",
    parsl: "\u2AFD",
    part: "\u2202",
    pcy: "\u043F",
    percnt: "%",
    period: ".",
    permil: "\u2030",
    perp: "\u22A5",
    pertenk: "\u2031",
    pfr: "\u{1D52D}",
    phi: "\u03C6",
    phiv: "\u03D5",
    phmmat: "\u2133",
    phone: "\u260E",
    pi: "\u03C0",
    pitchfork: "\u22D4",
    piv: "\u03D6",
    planck: "\u210F",
    planckh: "\u210E",
    plankv: "\u210F",
    plus: "+",
    plusacir: "\u2A23",
    plusb: "\u229E",
    pluscir: "\u2A22",
    plusdo: "\u2214",
    plusdu: "\u2A25",
    pluse: "\u2A72",
    plusmn: "\xB1",
    plussim: "\u2A26",
    plustwo: "\u2A27",
    pm: "\xB1",
    pointint: "\u2A15",
    popf: "\u{1D561}",
    pound: "\xA3",
    pr: "\u227A",
    prE: "\u2AB3",
    prap: "\u2AB7",
    prcue: "\u227C",
    pre: "\u2AAF",
    prec: "\u227A",
    precapprox: "\u2AB7",
    preccurlyeq: "\u227C",
    preceq: "\u2AAF",
    precnapprox: "\u2AB9",
    precneqq: "\u2AB5",
    precnsim: "\u22E8",
    precsim: "\u227E",
    prime: "\u2032",
    primes: "\u2119",
    prnE: "\u2AB5",
    prnap: "\u2AB9",
    prnsim: "\u22E8",
    prod: "\u220F",
    profalar: "\u232E",
    profline: "\u2312",
    profsurf: "\u2313",
    prop: "\u221D",
    propto: "\u221D",
    prsim: "\u227E",
    prurel: "\u22B0",
    pscr: "\u{1D4C5}",
    psi: "\u03C8",
    puncsp: "\u2008",
    qfr: "\u{1D52E}",
    qint: "\u2A0C",
    qopf: "\u{1D562}",
    qprime: "\u2057",
    qscr: "\u{1D4C6}",
    quaternions: "\u210D",
    quatint: "\u2A16",
    quest: "?",
    questeq: "\u225F",
    quot: '"',
    rAarr: "\u21DB",
    rArr: "\u21D2",
    rAtail: "\u291C",
    rBarr: "\u290F",
    rHar: "\u2964",
    race: "\u223D\u0331",
    racute: "\u0155",
    radic: "\u221A",
    raemptyv: "\u29B3",
    rang: "\u27E9",
    rangd: "\u2992",
    range: "\u29A5",
    rangle: "\u27E9",
    raquo: "\xBB",
    rarr: "\u2192",
    rarrap: "\u2975",
    rarrb: "\u21E5",
    rarrbfs: "\u2920",
    rarrc: "\u2933",
    rarrfs: "\u291E",
    rarrhk: "\u21AA",
    rarrlp: "\u21AC",
    rarrpl: "\u2945",
    rarrsim: "\u2974",
    rarrtl: "\u21A3",
    rarrw: "\u219D",
    ratail: "\u291A",
    ratio: "\u2236",
    rationals: "\u211A",
    rbarr: "\u290D",
    rbbrk: "\u2773",
    rbrace: "}",
    rbrack: "]",
    rbrke: "\u298C",
    rbrksld: "\u298E",
    rbrkslu: "\u2990",
    rcaron: "\u0159",
    rcedil: "\u0157",
    rceil: "\u2309",
    rcub: "}",
    rcy: "\u0440",
    rdca: "\u2937",
    rdldhar: "\u2969",
    rdquo: "\u201D",
    rdquor: "\u201D",
    rdsh: "\u21B3",
    real: "\u211C",
    realine: "\u211B",
    realpart: "\u211C",
    reals: "\u211D",
    rect: "\u25AD",
    reg: "\xAE",
    rfisht: "\u297D",
    rfloor: "\u230B",
    rfr: "\u{1D52F}",
    rhard: "\u21C1",
    rharu: "\u21C0",
    rharul: "\u296C",
    rho: "\u03C1",
    rhov: "\u03F1",
    rightarrow: "\u2192",
    rightarrowtail: "\u21A3",
    rightharpoondown: "\u21C1",
    rightharpoonup: "\u21C0",
    rightleftarrows: "\u21C4",
    rightleftharpoons: "\u21CC",
    rightrightarrows: "\u21C9",
    rightsquigarrow: "\u219D",
    rightthreetimes: "\u22CC",
    ring: "\u02DA",
    risingdotseq: "\u2253",
    rlarr: "\u21C4",
    rlhar: "\u21CC",
    rlm: "\u200F",
    rmoust: "\u23B1",
    rmoustache: "\u23B1",
    rnmid: "\u2AEE",
    roang: "\u27ED",
    roarr: "\u21FE",
    robrk: "\u27E7",
    ropar: "\u2986",
    ropf: "\u{1D563}",
    roplus: "\u2A2E",
    rotimes: "\u2A35",
    rpar: ")",
    rpargt: "\u2994",
    rppolint: "\u2A12",
    rrarr: "\u21C9",
    rsaquo: "\u203A",
    rscr: "\u{1D4C7}",
    rsh: "\u21B1",
    rsqb: "]",
    rsquo: "\u2019",
    rsquor: "\u2019",
    rthree: "\u22CC",
    rtimes: "\u22CA",
    rtri: "\u25B9",
    rtrie: "\u22B5",
    rtrif: "\u25B8",
    rtriltri: "\u29CE",
    ruluhar: "\u2968",
    rx: "\u211E",
    sacute: "\u015B",
    sbquo: "\u201A",
    sc: "\u227B",
    scE: "\u2AB4",
    scap: "\u2AB8",
    scaron: "\u0161",
    sccue: "\u227D",
    sce: "\u2AB0",
    scedil: "\u015F",
    scirc: "\u015D",
    scnE: "\u2AB6",
    scnap: "\u2ABA",
    scnsim: "\u22E9",
    scpolint: "\u2A13",
    scsim: "\u227F",
    scy: "\u0441",
    sdot: "\u22C5",
    sdotb: "\u22A1",
    sdote: "\u2A66",
    seArr: "\u21D8",
    searhk: "\u2925",
    searr: "\u2198",
    searrow: "\u2198",
    sect: "\xA7",
    semi: ";",
    seswar: "\u2929",
    setminus: "\u2216",
    setmn: "\u2216",
    sext: "\u2736",
    sfr: "\u{1D530}",
    sfrown: "\u2322",
    sharp: "\u266F",
    shchcy: "\u0449",
    shcy: "\u0448",
    shortmid: "\u2223",
    shortparallel: "\u2225",
    shy: "\xAD",
    sigma: "\u03C3",
    sigmaf: "\u03C2",
    sigmav: "\u03C2",
    sim: "\u223C",
    simdot: "\u2A6A",
    sime: "\u2243",
    simeq: "\u2243",
    simg: "\u2A9E",
    simgE: "\u2AA0",
    siml: "\u2A9D",
    simlE: "\u2A9F",
    simne: "\u2246",
    simplus: "\u2A24",
    simrarr: "\u2972",
    slarr: "\u2190",
    smallsetminus: "\u2216",
    smashp: "\u2A33",
    smeparsl: "\u29E4",
    smid: "\u2223",
    smile: "\u2323",
    smt: "\u2AAA",
    smte: "\u2AAC",
    smtes: "\u2AAC\uFE00",
    softcy: "\u044C",
    sol: "/",
    solb: "\u29C4",
    solbar: "\u233F",
    sopf: "\u{1D564}",
    spades: "\u2660",
    spadesuit: "\u2660",
    spar: "\u2225",
    sqcap: "\u2293",
    sqcaps: "\u2293\uFE00",
    sqcup: "\u2294",
    sqcups: "\u2294\uFE00",
    sqsub: "\u228F",
    sqsube: "\u2291",
    sqsubset: "\u228F",
    sqsubseteq: "\u2291",
    sqsup: "\u2290",
    sqsupe: "\u2292",
    sqsupset: "\u2290",
    sqsupseteq: "\u2292",
    squ: "\u25A1",
    square: "\u25A1",
    squarf: "\u25AA",
    squf: "\u25AA",
    srarr: "\u2192",
    sscr: "\u{1D4C8}",
    ssetmn: "\u2216",
    ssmile: "\u2323",
    sstarf: "\u22C6",
    star: "\u2606",
    starf: "\u2605",
    straightepsilon: "\u03F5",
    straightphi: "\u03D5",
    strns: "\xAF",
    sub: "\u2282",
    subE: "\u2AC5",
    subdot: "\u2ABD",
    sube: "\u2286",
    subedot: "\u2AC3",
    submult: "\u2AC1",
    subnE: "\u2ACB",
    subne: "\u228A",
    subplus: "\u2ABF",
    subrarr: "\u2979",
    subset: "\u2282",
    subseteq: "\u2286",
    subseteqq: "\u2AC5",
    subsetneq: "\u228A",
    subsetneqq: "\u2ACB",
    subsim: "\u2AC7",
    subsub: "\u2AD5",
    subsup: "\u2AD3",
    succ: "\u227B",
    succapprox: "\u2AB8",
    succcurlyeq: "\u227D",
    succeq: "\u2AB0",
    succnapprox: "\u2ABA",
    succneqq: "\u2AB6",
    succnsim: "\u22E9",
    succsim: "\u227F",
    sum: "\u2211",
    sung: "\u266A",
    sup1: "\xB9",
    sup2: "\xB2",
    sup3: "\xB3",
    sup: "\u2283",
    supE: "\u2AC6",
    supdot: "\u2ABE",
    supdsub: "\u2AD8",
    supe: "\u2287",
    supedot: "\u2AC4",
    suphsol: "\u27C9",
    suphsub: "\u2AD7",
    suplarr: "\u297B",
    supmult: "\u2AC2",
    supnE: "\u2ACC",
    supne: "\u228B",
    supplus: "\u2AC0",
    supset: "\u2283",
    supseteq: "\u2287",
    supseteqq: "\u2AC6",
    supsetneq: "\u228B",
    supsetneqq: "\u2ACC",
    supsim: "\u2AC8",
    supsub: "\u2AD4",
    supsup: "\u2AD6",
    swArr: "\u21D9",
    swarhk: "\u2926",
    swarr: "\u2199",
    swarrow: "\u2199",
    swnwar: "\u292A",
    szlig: "\xDF",
    target: "\u2316",
    tau: "\u03C4",
    tbrk: "\u23B4",
    tcaron: "\u0165",
    tcedil: "\u0163",
    tcy: "\u0442",
    tdot: "\u20DB",
    telrec: "\u2315",
    tfr: "\u{1D531}",
    there4: "\u2234",
    therefore: "\u2234",
    theta: "\u03B8",
    thetasym: "\u03D1",
    thetav: "\u03D1",
    thickapprox: "\u2248",
    thicksim: "\u223C",
    thinsp: "\u2009",
    thkap: "\u2248",
    thksim: "\u223C",
    thorn: "\xFE",
    tilde: "\u02DC",
    times: "\xD7",
    timesb: "\u22A0",
    timesbar: "\u2A31",
    timesd: "\u2A30",
    tint: "\u222D",
    toea: "\u2928",
    top: "\u22A4",
    topbot: "\u2336",
    topcir: "\u2AF1",
    topf: "\u{1D565}",
    topfork: "\u2ADA",
    tosa: "\u2929",
    tprime: "\u2034",
    trade: "\u2122",
    triangle: "\u25B5",
    triangledown: "\u25BF",
    triangleleft: "\u25C3",
    trianglelefteq: "\u22B4",
    triangleq: "\u225C",
    triangleright: "\u25B9",
    trianglerighteq: "\u22B5",
    tridot: "\u25EC",
    trie: "\u225C",
    triminus: "\u2A3A",
    triplus: "\u2A39",
    trisb: "\u29CD",
    tritime: "\u2A3B",
    trpezium: "\u23E2",
    tscr: "\u{1D4C9}",
    tscy: "\u0446",
    tshcy: "\u045B",
    tstrok: "\u0167",
    twixt: "\u226C",
    twoheadleftarrow: "\u219E",
    twoheadrightarrow: "\u21A0",
    uArr: "\u21D1",
    uHar: "\u2963",
    uacute: "\xFA",
    uarr: "\u2191",
    ubrcy: "\u045E",
    ubreve: "\u016D",
    ucirc: "\xFB",
    ucy: "\u0443",
    udarr: "\u21C5",
    udblac: "\u0171",
    udhar: "\u296E",
    ufisht: "\u297E",
    ufr: "\u{1D532}",
    ugrave: "\xF9",
    uharl: "\u21BF",
    uharr: "\u21BE",
    uhblk: "\u2580",
    ulcorn: "\u231C",
    ulcorner: "\u231C",
    ulcrop: "\u230F",
    ultri: "\u25F8",
    umacr: "\u016B",
    uml: "\xA8",
    uogon: "\u0173",
    uopf: "\u{1D566}",
    uparrow: "\u2191",
    updownarrow: "\u2195",
    upharpoonleft: "\u21BF",
    upharpoonright: "\u21BE",
    uplus: "\u228E",
    upsi: "\u03C5",
    upsih: "\u03D2",
    upsilon: "\u03C5",
    upuparrows: "\u21C8",
    urcorn: "\u231D",
    urcorner: "\u231D",
    urcrop: "\u230E",
    uring: "\u016F",
    urtri: "\u25F9",
    uscr: "\u{1D4CA}",
    utdot: "\u22F0",
    utilde: "\u0169",
    utri: "\u25B5",
    utrif: "\u25B4",
    uuarr: "\u21C8",
    uuml: "\xFC",
    uwangle: "\u29A7",
    vArr: "\u21D5",
    vBar: "\u2AE8",
    vBarv: "\u2AE9",
    vDash: "\u22A8",
    vangrt: "\u299C",
    varepsilon: "\u03F5",
    varkappa: "\u03F0",
    varnothing: "\u2205",
    varphi: "\u03D5",
    varpi: "\u03D6",
    varpropto: "\u221D",
    varr: "\u2195",
    varrho: "\u03F1",
    varsigma: "\u03C2",
    varsubsetneq: "\u228A\uFE00",
    varsubsetneqq: "\u2ACB\uFE00",
    varsupsetneq: "\u228B\uFE00",
    varsupsetneqq: "\u2ACC\uFE00",
    vartheta: "\u03D1",
    vartriangleleft: "\u22B2",
    vartriangleright: "\u22B3",
    vcy: "\u0432",
    vdash: "\u22A2",
    vee: "\u2228",
    veebar: "\u22BB",
    veeeq: "\u225A",
    vellip: "\u22EE",
    verbar: "|",
    vert: "|",
    vfr: "\u{1D533}",
    vltri: "\u22B2",
    vnsub: "\u2282\u20D2",
    vnsup: "\u2283\u20D2",
    vopf: "\u{1D567}",
    vprop: "\u221D",
    vrtri: "\u22B3",
    vscr: "\u{1D4CB}",
    vsubnE: "\u2ACB\uFE00",
    vsubne: "\u228A\uFE00",
    vsupnE: "\u2ACC\uFE00",
    vsupne: "\u228B\uFE00",
    vzigzag: "\u299A",
    wcirc: "\u0175",
    wedbar: "\u2A5F",
    wedge: "\u2227",
    wedgeq: "\u2259",
    weierp: "\u2118",
    wfr: "\u{1D534}",
    wopf: "\u{1D568}",
    wp: "\u2118",
    wr: "\u2240",
    wreath: "\u2240",
    wscr: "\u{1D4CC}",
    xcap: "\u22C2",
    xcirc: "\u25EF",
    xcup: "\u22C3",
    xdtri: "\u25BD",
    xfr: "\u{1D535}",
    xhArr: "\u27FA",
    xharr: "\u27F7",
    xi: "\u03BE",
    xlArr: "\u27F8",
    xlarr: "\u27F5",
    xmap: "\u27FC",
    xnis: "\u22FB",
    xodot: "\u2A00",
    xopf: "\u{1D569}",
    xoplus: "\u2A01",
    xotime: "\u2A02",
    xrArr: "\u27F9",
    xrarr: "\u27F6",
    xscr: "\u{1D4CD}",
    xsqcup: "\u2A06",
    xuplus: "\u2A04",
    xutri: "\u25B3",
    xvee: "\u22C1",
    xwedge: "\u22C0",
    yacute: "\xFD",
    yacy: "\u044F",
    ycirc: "\u0177",
    ycy: "\u044B",
    yen: "\xA5",
    yfr: "\u{1D536}",
    yicy: "\u0457",
    yopf: "\u{1D56A}",
    yscr: "\u{1D4CE}",
    yucy: "\u044E",
    yuml: "\xFF",
    zacute: "\u017A",
    zcaron: "\u017E",
    zcy: "\u0437",
    zdot: "\u017C",
    zeetrf: "\u2128",
    zeta: "\u03B6",
    zfr: "\u{1D537}",
    zhcy: "\u0436",
    zigrarr: "\u21DD",
    zopf: "\u{1D56B}",
    zscr: "\u{1D4CF}",
    zwj: "\u200D",
    zwnj: "\u200C"
  }, kI = {}.hasOwnProperty;
  s(Vs, "decodeNamedCharacterReference");
  Ln = String.fromCharCode, BI = [
    "",
    /* 1: Non terminated (named) */
    "Named character references must be terminated by a semicolon",
    /* 2: Non terminated (numeric) */
    "Numeric character references must be terminated by a semicolon",
    /* 3: Empty (named) */
    "Named character references cannot be empty",
    /* 4: Empty (numeric) */
    "Numeric character references cannot be empty",
    /* 5: Unknown (named) */
    "Named character references must be known",
    /* 6: Disallowed (numeric) */
    "Numeric character references cannot be disallowed",
    /* 7: Prohibited (numeric) */
    "Numeric character references cannot be outside the permissible Unicode range"
  ];
  s(TI, "parseEntities");
  s(PI, "prohibited");
  s(II, "disallowed");
  s(OI, "core");
  s(RI, "charactersToExpression");
  s(NI, "formatBasic");
  s(LI, "stringifyEntitiesLight");
  XE = "  ";
  s(MI, "mdxJsxFromMarkdown");
  s(jI, "mdxJsxToMarkdown");
  s(qI, "containerFlow");
  s(YE, "inferDepth");
  s(KE, "createIndent");
  s($I, "peekElement");
  s(VI, "mdxjsEsmFromMarkdown");
  s(UI, "mdxjsEsmToMarkdown");
  s(zI, "enterMdxjsEsm");
  s(HI, "exitMdxjsEsm");
  s(WI, "exitMdxjsEsmData");
  s(JI, "handleMdxjsEsm");
  s(GI, "mdxFromMarkdown");
  s(XI, "mdxToMarkdown");
  YI = Fa(mI(), 1), KI = _i(new RegExp("\\p{P}", "u")), dr = _i(/[A-Za-z]/), Nt = _i(/[\dA-Za-z]/), QI = _i(/[#-'*+\--9=?A-Z^-~]/);
  s(Mp, "asciiControl");
  jp = _i(/\d/), ZI = _i(/[\dA-Fa-f]/), QE = _i(/[!-/:-@[-`{-~]/);
  s(ne, "markdownLineEnding");
  s(Ke, "markdownLineEndingOrSpace");
  s(Ce, "markdownSpace");
  s(eO, "unicodePunctuation");
  Qr = _i(/\s/);
  s(_i, "regexCheck");
  s(tO, "color");
  rO = {}.hasOwnProperty, iO = Symbol("continue"), Ap = Symbol("exit"), nO = Symbol("skip");
  s(sO, "visit");
  s(tE, "toResult");
  s(Fp, "nodelike");
  s(ZE, "eventsToAcorn");
  s(rE, "empty");
  s(uO, "collect");
  s(aO, "relativeToPoint");
  s(oO, "serializeChunks");
  s(Zr, "positionFromEstree");
  s(iE, "pointOrUndefined");
  s(Sp, "numberOrUndefined");
  Un = "https://github.com/micromark/micromark-extension-mdx-expression/tree/main/packages/micromark-extension-mdx-expression", lO = "#unexp\
ected-end-of-file-in-expression-expected-a-corresponding-closing-brace-for-", cO = "#unexpected-lazy-line-in-expression-in-container-expecte\
d-line-to-be-prefixed", nE = "#unexpected-type-in-code-expected-an-object-spread-spread", hO = "#unexpected-extra-content-in-spread-only-a-s\
ingle-spread-is-supported", pO = "#could-not-parse-expression-with-acorn";
  s(Ua, "factoryMdxExpression");
  s(fO, "mdxExpressionParse");
  s(Be, "factorySpace");
  s(dO, "mdxExpression");
  sE = "https://github.com/micromark/micromark-extension-mdx-jsx";
  s(eb, "factoryTag");
  s(mO, "serializeCharCode");
  s(DO, "jsxText");
  s(gO, "jsxFlow");
  s(xO, "mdxJsx");
  s(yO, "mdxMd");
  s(Ir, "splice");
  s(Qt, "push");
  s(uE, "classifyCharacter");
  s(zp, "resolveAll");
  qp = {
    name: "attention",
    tokenize: bO,
    resolveAll: EO
  };
  s(EO, "resolveAllAttention");
  s(bO, "tokenizeAttention");
  s(aE, "movePoint");
  vO = {
    name: "autolink",
    tokenize: CO
  };
  s(CO, "tokenizeAutolink");
  zs = {
    tokenize: wO,
    partial: !0
  };
  s(wO, "tokenizeBlankLine");
  tb = {
    name: "blockQuote",
    tokenize: AO,
    continuation: {
      tokenize: FO
    },
    exit: SO
  };
  s(AO, "tokenizeBlockQuoteStart");
  s(FO, "tokenizeBlockQuoteContinuation");
  s(SO, "exit");
  rb = {
    name: "characterEscape",
    tokenize: _O
  };
  s(_O, "tokenizeCharacterEscape");
  ib = {
    name: "characterReference",
    tokenize: kO
  };
  s(kO, "tokenizeCharacterReference");
  oE = {
    tokenize: TO,
    partial: !0
  }, lE = {
    name: "codeFenced",
    tokenize: BO,
    concrete: !0
  };
  s(BO, "tokenizeCodeFenced");
  s(TO, "tokenizeNonLazyContinuation");
  _p = {
    name: "codeIndented",
    tokenize: IO
  }, PO = {
    tokenize: OO,
    partial: !0
  };
  s(IO, "tokenizeCodeIndented");
  s(OO, "tokenizeFurtherStart");
  RO = {
    name: "codeText",
    tokenize: MO,
    resolve: NO,
    previous: LO
  };
  s(NO, "resolveCodeText");
  s(LO, "previous");
  s(MO, "tokenizeCodeText");
  s(nb, "subtokenize");
  s(jO, "subcontent");
  qO = {
    tokenize: UO,
    resolve: VO
  }, $O = {
    tokenize: zO,
    partial: !0
  };
  s(VO, "resolveContent");
  s(UO, "tokenizeContent");
  s(zO, "tokenizeContinuation");
  s(sb, "factoryDestination");
  s(ub, "factoryLabel");
  s(ab, "factoryTitle");
  s(qs, "factoryWhitespace");
  s(zn, "normalizeIdentifier");
  HO = {
    name: "definition",
    tokenize: JO
  }, WO = {
    tokenize: GO,
    partial: !0
  };
  s(JO, "tokenizeDefinition");
  s(GO, "tokenizeTitleBefore");
  XO = {
    name: "hardBreakEscape",
    tokenize: YO
  };
  s(YO, "tokenizeHardBreakEscape");
  KO = {
    name: "headingAtx",
    tokenize: ZO,
    resolve: QO
  };
  s(QO, "resolveHeadingAtx");
  s(ZO, "tokenizeHeadingAtx");
  e5 = [
    "address",
    "article",
    "aside",
    "base",
    "basefont",
    "blockquote",
    "body",
    "caption",
    "center",
    "col",
    "colgroup",
    "dd",
    "details",
    "dialog",
    "dir",
    "div",
    "dl",
    "dt",
    "fieldset",
    "figcaption",
    "figure",
    "footer",
    "form",
    "frame",
    "frameset",
    "h1",
    "h2",
    "h3",
    "h4",
    "h5",
    "h6",
    "head",
    "header",
    "hr",
    "html",
    "iframe",
    "legend",
    "li",
    "link",
    "main",
    "menu",
    "menuitem",
    "nav",
    "noframes",
    "ol",
    "optgroup",
    "option",
    "p",
    "param",
    "search",
    "section",
    "summary",
    "table",
    "tbody",
    "td",
    "tfoot",
    "th",
    "thead",
    "title",
    "tr",
    "track",
    "ul"
  ], cE = ["pre", "script", "style", "textarea"], t5 = {
    name: "htmlFlow",
    tokenize: s5,
    resolveTo: n5,
    concrete: !0
  }, r5 = {
    tokenize: a5,
    partial: !0
  }, i5 = {
    tokenize: u5,
    partial: !0
  };
  s(n5, "resolveToHtmlFlow");
  s(s5, "tokenizeHtmlFlow");
  s(u5, "tokenizeNonLazyContinuationStart");
  s(a5, "tokenizeBlankLineBefore");
  o5 = {
    name: "htmlText",
    tokenize: l5
  };
  s(l5, "tokenizeHtmlText");
  Hp = {
    name: "labelEnd",
    tokenize: m5,
    resolveTo: d5,
    resolveAll: f5
  }, c5 = {
    tokenize: D5
  }, h5 = {
    tokenize: g5
  }, p5 = {
    tokenize: x5
  };
  s(f5, "resolveAllLabelEnd");
  s(d5, "resolveToLabelEnd");
  s(m5, "tokenizeLabelEnd");
  s(D5, "tokenizeResource");
  s(g5, "tokenizeReferenceFull");
  s(x5, "tokenizeReferenceCollapsed");
  y5 = {
    name: "labelStartImage",
    tokenize: E5,
    resolveAll: Hp.resolveAll
  };
  s(E5, "tokenizeLabelStartImage");
  b5 = {
    name: "labelStartLink",
    tokenize: v5,
    resolveAll: Hp.resolveAll
  };
  s(v5, "tokenizeLabelStartLink");
  kp = {
    name: "lineEnding",
    tokenize: C5
  };
  s(C5, "tokenizeLineEnding");
  Va = {
    name: "thematicBreak",
    tokenize: w5
  };
  s(w5, "tokenizeThematicBreak");
  _t = {
    name: "list",
    tokenize: S5,
    continuation: {
      tokenize: _5
    },
    exit: B5
  }, A5 = {
    tokenize: T5,
    partial: !0
  }, F5 = {
    tokenize: k5,
    partial: !0
  };
  s(S5, "tokenizeListStart");
  s(_5, "tokenizeListContinuation");
  s(k5, "tokenizeIndent");
  s(B5, "tokenizeListEnd");
  s(T5, "tokenizeListItemPrefixWhitespace");
  hE = {
    name: "setextUnderline",
    tokenize: I5,
    resolveTo: P5
  };
  s(P5, "resolveToSetextUnderline");
  s(I5, "tokenizeSetextUnderline");
  O5 = {
    tokenize: L5,
    partial: !0
  }, pE = "https://github.com/micromark/micromark-extension-mdxjs-esm", R5 = /* @__PURE__ */ new Set(["ExportAllDeclaration", "ExportDefault\
Declaration", "ExportNamedDeclaration", "ImportDeclaration"]);
  s(N5, "mdxjsEsm");
  s(L5, "tokenizeNextBlank");
  fE = {}.hasOwnProperty;
  s(ob, "combineExtensions");
  s(M5, "syntaxExtension");
  s(j5, "constructs");
  s(q5, "mdxjs");
  $5 = {};
  s(V5, "remarkMdx");
  U5 = {};
  s(z5, "toString");
  s(lb, "one");
  s(dE, "all");
  s(H5, "node");
  s(cb, "decodeNumericCharacterReference");
  s(Hn, "normalizeUri");
  W5 = {
    tokenize: J5
  };
  s(J5, "initializeContent");
  G5 = {
    tokenize: X5
  }, mE = {
    tokenize: Y5
  };
  s(X5, "initializeDocument");
  s(Y5, "tokenizeContainer");
  K5 = {
    tokenize: Q5
  };
  s(Q5, "initializeFlow");
  Z5 = {
    resolveAll: pb()
  }, eR = hb("string"), tR = hb("text");
  s(hb, "initializeFactory");
  s(pb, "createResolver");
  s(rR, "resolveAllLineSuffixes");
  s(iR, "createTokenizer");
  s(nR, "sliceChunks");
  s(sR, "serializeChunks2");
  fb = {};
  Zh(fb, {
    attentionMarkers: /* @__PURE__ */ s(() => fR, "attentionMarkers"),
    contentInitial: /* @__PURE__ */ s(() => aR, "contentInitial"),
    disable: /* @__PURE__ */ s(() => dR, "disable"),
    document: /* @__PURE__ */ s(() => uR, "document"),
    flow: /* @__PURE__ */ s(() => lR, "flow"),
    flowInitial: /* @__PURE__ */ s(() => oR, "flowInitial"),
    insideSpan: /* @__PURE__ */ s(() => pR, "insideSpan"),
    string: /* @__PURE__ */ s(() => cR, "string"),
    text: /* @__PURE__ */ s(() => hR, "text")
  });
  uR = {
    42: _t,
    43: _t,
    45: _t,
    48: _t,
    49: _t,
    50: _t,
    51: _t,
    52: _t,
    53: _t,
    54: _t,
    55: _t,
    56: _t,
    57: _t,
    62: tb
  }, aR = {
    91: HO
  }, oR = {
    [-2]: _p,
    [-1]: _p,
    32: _p
  }, lR = {
    35: KO,
    42: Va,
    45: [hE, Va],
    60: t5,
    61: hE,
    95: Va,
    96: lE,
    126: lE
  }, cR = {
    38: ib,
    92: rb
  }, hR = {
    [-5]: kp,
    [-4]: kp,
    [-3]: kp,
    33: y5,
    38: ib,
    42: qp,
    60: [vO, o5],
    91: b5,
    92: [XO, rb],
    93: Hp,
    95: qp,
    96: RO
  }, pR = {
    null: [qp, Z5]
  }, fR = {
    null: [42, 95]
  }, dR = {
    null: []
  };
  s(mR, "parse");
  s(DR, "postprocess");
  DE = /[\0\t\n\r]/g;
  s(gR, "preprocess");
  xR = /\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;
  s(yR, "decodeString");
  s(ER, "decode");
  db = {}.hasOwnProperty;
  s(bR, "fromMarkdown");
  s(vR, "compiler");
  s(Ai, "point2");
  s(mb, "configure");
  s(CR, "extension");
  s(gE, "defaultOnError");
  s(wR, "remarkParse");
  s(AR, "blockquote");
  s(FR, "hardBreak");
  s(SR, "code");
  s(_R, "strikethrough");
  s(kR, "emphasis");
  s(BR, "footnoteReference");
  s(TR, "heading");
  s(PR, "html");
  s(Db, "revert");
  s(IR, "imageReference");
  s(OR, "image");
  s(RR, "inlineCode");
  s(NR, "linkReference");
  s(LR, "link");
  s(MR, "listItem");
  s(jR, "listLoose");
  s(gb, "listItemLoose");
  s(qR, "list2");
  s($R, "paragraph");
  s(VR, "root");
  s(UR, "strong");
  s(zR, "table");
  s(HR, "tableRow");
  s(WR, "tableCell");
  xE = 9, yE = 32;
  s(JR, "trimLines");
  s(EE, "trimLine");
  s(GR, "text3");
  s(XR, "thematicBreak2");
  YR = {
    blockquote: AR,
    break: FR,
    code: SR,
    delete: _R,
    emphasis: kR,
    footnoteReference: BR,
    heading: TR,
    html: PR,
    imageReference: IR,
    image: OR,
    inlineCode: RR,
    linkReference: NR,
    link: LR,
    listItem: MR,
    list: qR,
    paragraph: $R,
    // @ts-expect-error: root is different, but hard to type.
    root: VR,
    strong: UR,
    table: zR,
    tableCell: WR,
    tableRow: HR,
    text: GR,
    thematicBreak: XR,
    toml: La,
    yaml: La,
    definition: La,
    footnoteDefinition: La
  };
  s(La, "ignore");
  xb = -1, Ga = 0, za = 1, Ha = 2, Wp = 3, Jp = 4, Gp = 5, Xp = 6, yb = 7, Eb = 8, bE = typeof self == "object" ? self : globalThis, KR = /* @__PURE__ */ s(
  (e, t) => {
    let r = /* @__PURE__ */ s((n, u) => (e.set(u, n), n), "as"), i = /* @__PURE__ */ s((n) => {
      if (e.has(n))
        return e.get(n);
      let [u, a] = t[n];
      switch (u) {
        case Ga:
        case xb:
          return r(a, n);
        case za: {
          let o = r([], n);
          for (let l of a)
            o.push(i(l));
          return o;
        }
        case Ha: {
          let o = r({}, n);
          for (let [l, c] of a)
            o[i(l)] = i(c);
          return o;
        }
        case Wp:
          return r(new Date(a), n);
        case Jp: {
          let { source: o, flags: l } = a;
          return r(new RegExp(o, l), n);
        }
        case Gp: {
          let o = r(/* @__PURE__ */ new Map(), n);
          for (let [l, c] of a)
            o.set(i(l), i(c));
          return o;
        }
        case Xp: {
          let o = r(/* @__PURE__ */ new Set(), n);
          for (let l of a)
            o.add(i(l));
          return o;
        }
        case yb: {
          let { name: o, message: l } = a;
          return r(new bE[o](l), n);
        }
        case Eb:
          return r(BigInt(a), n);
        case "BigInt":
          return r(Object(BigInt(a)), n);
      }
      return r(new bE[u](a), n);
    }, "unpair");
    return i;
  }, "deserializer"), vE = /* @__PURE__ */ s((e) => KR(/* @__PURE__ */ new Map(), e)(0), "deserialize"), Mn = "", { toString: QR } = {}, { keys: ZR } =
  Object, js = /* @__PURE__ */ s((e) => {
    let t = typeof e;
    if (t !== "object" || !e)
      return [Ga, t];
    let r = QR.call(e).slice(8, -1);
    switch (r) {
      case "Array":
        return [za, Mn];
      case "Object":
        return [Ha, Mn];
      case "Date":
        return [Wp, Mn];
      case "RegExp":
        return [Jp, Mn];
      case "Map":
        return [Gp, Mn];
      case "Set":
        return [Xp, Mn];
    }
    return r.includes("Array") ? [za, r] : r.includes("Error") ? [yb, r] : [Ha, r];
  }, "typeOf"), Ma = /* @__PURE__ */ s(([e, t]) => e === Ga && (t === "function" || t === "symbol"), "shouldSkip"), e7 = /* @__PURE__ */ s((e, t, r, i) => {
    let n = /* @__PURE__ */ s((a, o) => {
      let l = i.push(a) - 1;
      return r.set(o, l), l;
    }, "as"), u = /* @__PURE__ */ s((a) => {
      if (r.has(a))
        return r.get(a);
      let [o, l] = js(a);
      switch (o) {
        case Ga: {
          let h = a;
          switch (l) {
            case "bigint":
              o = Eb, h = a.toString();
              break;
            case "function":
            case "symbol":
              if (e)
                throw new TypeError("unable to serialize " + l);
              h = null;
              break;
            case "undefined":
              return n([xb], a);
          }
          return n([o, h], a);
        }
        case za: {
          if (l)
            return n([l, [...a]], a);
          let h = [], p = n([o, h], a);
          for (let d of a)
            h.push(u(d));
          return p;
        }
        case Ha: {
          if (l)
            switch (l) {
              case "BigInt":
                return n([l, a.toString()], a);
              case "Boolean":
              case "Number":
              case "String":
                return n([l, a.valueOf()], a);
            }
          if (t && "toJSON" in a)
            return u(a.toJSON());
          let h = [], p = n([o, h], a);
          for (let d of ZR(a))
            (e || !Ma(js(a[d]))) && h.push([u(d), u(a[d])]);
          return p;
        }
        case Wp:
          return n([o, a.toISOString()], a);
        case Jp: {
          let { source: h, flags: p } = a;
          return n([o, { source: h, flags: p }], a);
        }
        case Gp: {
          let h = [], p = n([o, h], a);
          for (let [d, m] of a)
            (e || !(Ma(js(d)) || Ma(js(m)))) && h.push([u(d), u(m)]);
          return p;
        }
        case Xp: {
          let h = [], p = n([o, h], a);
          for (let d of a)
            (e || !Ma(js(d))) && h.push(u(d));
          return p;
        }
      }
      let { message: c } = a;
      return n([o, { name: l, message: c }], a);
    }, "pair");
    return u;
  }, "serializer"), CE = /* @__PURE__ */ s((e, { json: t, lossy: r } = {}) => {
    let i = [];
    return e7(!(t || r), !!t, /* @__PURE__ */ new Map(), i)(e), i;
  }, "serialize"), Wa = typeof structuredClone == "function" ? (
    /* c8 ignore start */
    (e, t) => t && ("json" in t || "lossy" in t) ? vE(CE(e, t)) : structuredClone(e)
  ) : (e, t) => vE(CE(e, t));
  s(t7, "defaultFootnoteBackContent");
  s(r7, "defaultFootnoteBackLabel");
  s(i7, "footer");
  bb = // Note: overloads in JSDoc can’t yet use different `@template`s.
  /**
   * @type {(
   *   (<Condition extends string>(test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & {type: Condition}) &
   *   (<Condition extends Props>(test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & Condition) &
   *   (<Condition extends TestFunction>(test: Condition) => (node: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node & Predicate<Condition, Node>) &
   *   ((test?: null | undefined) => (node?: unknown, index?: number | null | undefined, parent?: Parent | null | undefined, context?: unknown) => node is Node) &
   *   ((test?: Test) => Check)
   * )}
   */
  /**
   * @param {Test} [test]
   * @returns {Check}
   */
  /* @__PURE__ */ s(function(e) {
    if (e == null)
      return a7;
    if (typeof e == "function")
      return Xa(e);
    if (typeof e == "object")
      return Array.isArray(e) ? n7(e) : s7(e);
    if (typeof e == "string")
      return u7(e);
    throw new Error("Expected function, string, or object as test");
  }, "convert");
  s(n7, "anyFactory");
  s(s7, "propsFactory");
  s(u7, "typeFactory");
  s(Xa, "castFactory");
  s(a7, "ok2");
  s(o7, "looksLikeANode");
  s(l7, "color2");
  vb = [], c7 = !0, wE = !1, h7 = "skip";
  s(p7, "visitParents");
  s(f7, "toResult2");
  s(Yp, "visit2");
  $p = {}.hasOwnProperty, d7 = {};
  s(m7, "createState");
  s(D7, "patch");
  s(g7, "applyData");
  s(x7, "defaultUnknownHandler");
  s(y7, "wrap");
  s(AE, "trimMarkdownSpaceStart");
  s(FE, "toHast");
  s(E7, "remarkRehype");
  s(SE, "bail");
  Bp = Fa(DI(), 1);
  s(Vp, "isPlainObject");
  s(b7, "trough");
  s(v7, "wrap2");
  C7 = /**
   * @type {new <Parameters extends Array<unknown>, Result>(property: string | symbol) => (...parameters: Parameters) => Result}
   */
  /** @type {unknown} */
  /**
   * @this {Function}
   * @param {string | symbol} property
   * @returns {(...parameters: Array<unknown>) => unknown}
   */
  /* @__PURE__ */ s(function(e) {
    let i = (
      /** @type {Record<string | symbol, Function>} */
      // Prototypes do exist.
      // type-coverage:ignore-next-line
      this.constructor.prototype
    ), n = i[e], u = /* @__PURE__ */ s(function() {
      return n.apply(u, arguments);
    }, "apply");
    Object.setPrototypeOf(u, i);
    let a = Object.getOwnPropertyNames(n);
    for (let o of a) {
      let l = Object.getOwnPropertyDescriptor(n, o);
      l && Object.defineProperty(u, o, l);
    }
    return u;
  }, "CallableInstance"), w7 = {}.hasOwnProperty, Cb = class extends C7 {
    static {
      s(this, "Processor");
    }
    /**
     * Create a processor.
     */
    constructor() {
      super("copy"), this.Compiler = void 0, this.Parser = void 0, this.attachers = [], this.compiler = void 0, this.freezeIndex = -1, this.
      frozen = void 0, this.namespace = {}, this.parser = void 0, this.transformers = b7();
    }
    /**
     * Copy a processor.
     *
     * @deprecated
     *   This is a private internal method and should not be used.
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *   New *unfrozen* processor ({@link Processor `Processor`}) that is
     *   configured to work the same as its ancestor.
     *   When the descendant processor is configured in the future it does not
     *   affect the ancestral processor.
     */
    copy() {
      let e = (
        /** @type {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>} */
        new Cb()
      ), t = -1;
      for (; ++t < this.attachers.length; ) {
        let r = this.attachers[t];
        e.use(...r);
      }
      return e.data((0, Bp.default)(!0, {}, this.namespace)), e;
    }
    /**
     * Configure the processor with info available to all plugins.
     * Information is stored in an object.
     *
     * Typically, options can be given to a specific plugin, but sometimes it
     * makes sense to have information shared with several plugins.
     * For example, a list of HTML elements that are self-closing, which is
     * needed during all phases.
     *
     * > 👉 **Note**: setting information cannot occur on *frozen* processors.
     * > Call the processor first to create a new unfrozen processor.
     *
     * > 👉 **Note**: to register custom data in TypeScript, augment the
     * > {@link Data `Data`} interface.
     *
     * @example
     *   This example show how to get and set info:
     *
     *   ```js
     *   import {unified} from 'unified'
     *
     *   const processor = unified().data('alpha', 'bravo')
     *
     *   processor.data('alpha') // => 'bravo'
     *
     *   processor.data() // => {alpha: 'bravo'}
     *
     *   processor.data({charlie: 'delta'})
     *
     *   processor.data() // => {charlie: 'delta'}
     *   ```
     *
     * @template {keyof Data} Key
     *
     * @overload
     * @returns {Data}
     *
     * @overload
     * @param {Data} dataset
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *
     * @overload
     * @param {Key} key
     * @returns {Data[Key]}
     *
     * @overload
     * @param {Key} key
     * @param {Data[Key]} value
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *
     * @param {Data | Key} [key]
     *   Key to get or set, or entire dataset to set, or nothing to get the
     *   entire dataset (optional).
     * @param {Data[Key]} [value]
     *   Value to set (optional).
     * @returns {unknown}
     *   The current processor when setting, the value at `key` when getting, or
     *   the entire dataset when getting without key.
     */
    data(e, t) {
      return typeof e == "string" ? arguments.length === 2 ? (Ip("data", this.frozen), this.namespace[e] = t, this) : w7.call(this.namespace,
      e) && this.namespace[e] || void 0 : e ? (Ip("data", this.frozen), this.namespace = e, this) : this.namespace;
    }
    /**
     * Freeze a processor.
     *
     * Frozen processors are meant to be extended and not to be configured
     * directly.
     *
     * When a processor is frozen it cannot be unfrozen.
     * New processors working the same way can be created by calling the
     * processor.
     *
     * It’s possible to freeze processors explicitly by calling `.freeze()`.
     * Processors freeze automatically when `.parse()`, `.run()`, `.runSync()`,
     * `.stringify()`, `.process()`, or `.processSync()` are called.
     *
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *   The current processor.
     */
    freeze() {
      if (this.frozen)
        return this;
      let e = (
        /** @type {Processor} */
        /** @type {unknown} */
        this
      );
      for (; ++this.freezeIndex < this.attachers.length; ) {
        let [t, ...r] = this.attachers[this.freezeIndex];
        if (r[0] === !1)
          continue;
        r[0] === !0 && (r[0] = void 0);
        let i = t.call(e, ...r);
        typeof i == "function" && this.transformers.use(i);
      }
      return this.frozen = !0, this.freezeIndex = Number.POSITIVE_INFINITY, this;
    }
    /**
     * Parse text to a syntax tree.
     *
     * > 👉 **Note**: `parse` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `parse` performs the parse phase, not the run phase or other
     * > phases.
     *
     * @param {Compatible | undefined} [file]
     *   file to parse (optional); typically `string` or `VFile`; any value
     *   accepted as `x` in `new VFile(x)`.
     * @returns {ParseTree extends undefined ? Node : ParseTree}
     *   Syntax tree representing `file`.
     */
    parse(e) {
      this.freeze();
      let t = ja(e), r = this.parser || this.Parser;
      return Tp("parse", r), r(String(t), t);
    }
    /**
     * Process the given file as configured on the processor.
     *
     * > 👉 **Note**: `process` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `process` performs the parse, run, and stringify phases.
     *
     * @overload
     * @param {Compatible | undefined} file
     * @param {ProcessCallback<VFileWithOutput<CompileResult>>} done
     * @returns {undefined}
     *
     * @overload
     * @param {Compatible | undefined} [file]
     * @returns {Promise<VFileWithOutput<CompileResult>>}
     *
     * @param {Compatible | undefined} [file]
     *   File (optional); typically `string` or `VFile`]; any value accepted as
     *   `x` in `new VFile(x)`.
     * @param {ProcessCallback<VFileWithOutput<CompileResult>> | undefined} [done]
     *   Callback (optional).
     * @returns {Promise<VFile> | undefined}
     *   Nothing if `done` is given.
     *   Otherwise a promise, rejected with a fatal error or resolved with the
     *   processed file.
     *
     *   The parsed, transformed, and compiled value is available at
     *   `file.value` (see note).
     *
     *   > 👉 **Note**: unified typically compiles by serializing: most
     *   > compilers return `string` (or `Uint8Array`).
     *   > Some compilers, such as the one configured with
     *   > [`rehype-react`][rehype-react], return other values (in this case, a
     *   > React tree).
     *   > If you’re using a compiler that doesn’t serialize, expect different
     *   > result values.
     *   >
     *   > To register custom results in TypeScript, add them to
     *   > {@link CompileResultMap `CompileResultMap`}.
     *
     *   [rehype-react]: https://github.com/rehypejs/rehype-react
     */
    process(e, t) {
      let r = this;
      return this.freeze(), Tp("process", this.parser || this.Parser), Pp("process", this.compiler || this.Compiler), t ? i(void 0, t) : new Promise(
      i);
      function i(n, u) {
        let a = ja(e), o = (
          /** @type {HeadTree extends undefined ? Node : HeadTree} */
          /** @type {unknown} */
          r.parse(a)
        );
        r.run(o, a, function(c, h, p) {
          if (c || !h || !p)
            return l(c);
          let d = (
            /** @type {CompileTree extends undefined ? Node : CompileTree} */
            /** @type {unknown} */
            h
          ), m = r.stringify(d, p);
          S7(m) ? p.value = m : p.result = m, l(
            c,
            /** @type {VFileWithOutput<CompileResult>} */
            p
          );
        });
        function l(c, h) {
          c || !h ? u(c) : n ? n(h) : t(void 0, h);
        }
        s(l, "realDone");
      }
      s(i, "executor");
    }
    /**
     * Process the given file as configured on the processor.
     *
     * An error is thrown if asynchronous transforms are configured.
     *
     * > 👉 **Note**: `processSync` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `processSync` performs the parse, run, and stringify phases.
     *
     * @param {Compatible | undefined} [file]
     *   File (optional); typically `string` or `VFile`; any value accepted as
     *   `x` in `new VFile(x)`.
     * @returns {VFileWithOutput<CompileResult>}
     *   The processed file.
     *
     *   The parsed, transformed, and compiled value is available at
     *   `file.value` (see note).
     *
     *   > 👉 **Note**: unified typically compiles by serializing: most
     *   > compilers return `string` (or `Uint8Array`).
     *   > Some compilers, such as the one configured with
     *   > [`rehype-react`][rehype-react], return other values (in this case, a
     *   > React tree).
     *   > If you’re using a compiler that doesn’t serialize, expect different
     *   > result values.
     *   >
     *   > To register custom results in TypeScript, add them to
     *   > {@link CompileResultMap `CompileResultMap`}.
     *
     *   [rehype-react]: https://github.com/rehypejs/rehype-react
     */
    processSync(e) {
      let t = !1, r;
      return this.freeze(), Tp("processSync", this.parser || this.Parser), Pp("processSync", this.compiler || this.Compiler), this.process(e,
      i), kE("processSync", "process", t), r;
      function i(n, u) {
        t = !0, SE(n), r = u;
      }
      s(i, "realDone");
    }
    /**
     * Run *transformers* on a syntax tree.
     *
     * > 👉 **Note**: `run` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `run` performs the run phase, not other phases.
     *
     * @overload
     * @param {HeadTree extends undefined ? Node : HeadTree} tree
     * @param {RunCallback<TailTree extends undefined ? Node : TailTree>} done
     * @returns {undefined}
     *
     * @overload
     * @param {HeadTree extends undefined ? Node : HeadTree} tree
     * @param {Compatible | undefined} file
     * @param {RunCallback<TailTree extends undefined ? Node : TailTree>} done
     * @returns {undefined}
     *
     * @overload
     * @param {HeadTree extends undefined ? Node : HeadTree} tree
     * @param {Compatible | undefined} [file]
     * @returns {Promise<TailTree extends undefined ? Node : TailTree>}
     *
     * @param {HeadTree extends undefined ? Node : HeadTree} tree
     *   Tree to transform and inspect.
     * @param {(
     *   RunCallback<TailTree extends undefined ? Node : TailTree> |
     *   Compatible
     * )} [file]
     *   File associated with `node` (optional); any value accepted as `x` in
     *   `new VFile(x)`.
     * @param {RunCallback<TailTree extends undefined ? Node : TailTree>} [done]
     *   Callback (optional).
     * @returns {Promise<TailTree extends undefined ? Node : TailTree> | undefined}
     *   Nothing if `done` is given.
     *   Otherwise, a promise rejected with a fatal error or resolved with the
     *   transformed tree.
     */
    run(e, t, r) {
      _E(e), this.freeze();
      let i = this.transformers;
      return !r && typeof t == "function" && (r = t, t = void 0), r ? n(void 0, r) : new Promise(n);
      function n(u, a) {
        let o = ja(t);
        i.run(e, o, l);
        function l(c, h, p) {
          let d = (
            /** @type {TailTree extends undefined ? Node : TailTree} */
            h || e
          );
          c ? a(c) : u ? u(d) : r(void 0, d, p);
        }
        s(l, "realDone");
      }
      s(n, "executor");
    }
    /**
     * Run *transformers* on a syntax tree.
     *
     * An error is thrown if asynchronous transforms are configured.
     *
     * > 👉 **Note**: `runSync` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `runSync` performs the run phase, not other phases.
     *
     * @param {HeadTree extends undefined ? Node : HeadTree} tree
     *   Tree to transform and inspect.
     * @param {Compatible | undefined} [file]
     *   File associated with `node` (optional); any value accepted as `x` in
     *   `new VFile(x)`.
     * @returns {TailTree extends undefined ? Node : TailTree}
     *   Transformed tree.
     */
    runSync(e, t) {
      let r = !1, i;
      return this.run(e, t, n), kE("runSync", "run", r), i;
      function n(u, a) {
        SE(u), i = a, r = !0;
      }
      s(n, "realDone");
    }
    /**
     * Compile a syntax tree.
     *
     * > 👉 **Note**: `stringify` freezes the processor if not already *frozen*.
     *
     * > 👉 **Note**: `stringify` performs the stringify phase, not the run phase
     * > or other phases.
     *
     * @param {CompileTree extends undefined ? Node : CompileTree} tree
     *   Tree to compile.
     * @param {Compatible | undefined} [file]
     *   File associated with `node` (optional); any value accepted as `x` in
     *   `new VFile(x)`.
     * @returns {CompileResult extends undefined ? Value : CompileResult}
     *   Textual representation of the tree (see note).
     *
     *   > 👉 **Note**: unified typically compiles by serializing: most compilers
     *   > return `string` (or `Uint8Array`).
     *   > Some compilers, such as the one configured with
     *   > [`rehype-react`][rehype-react], return other values (in this case, a
     *   > React tree).
     *   > If you’re using a compiler that doesn’t serialize, expect different
     *   > result values.
     *   >
     *   > To register custom results in TypeScript, add them to
     *   > {@link CompileResultMap `CompileResultMap`}.
     *
     *   [rehype-react]: https://github.com/rehypejs/rehype-react
     */
    stringify(e, t) {
      this.freeze();
      let r = ja(t), i = this.compiler || this.Compiler;
      return Pp("stringify", i), _E(e), i(e, r);
    }
    /**
     * Configure the processor to use a plugin, a list of usable values, or a
     * preset.
     *
     * If the processor is already using a plugin, the previous plugin
     * configuration is changed based on the options that are passed in.
     * In other words, the plugin is not added a second time.
     *
     * > 👉 **Note**: `use` cannot be called on *frozen* processors.
     * > Call the processor first to create a new unfrozen processor.
     *
     * @example
     *   There are many ways to pass plugins to `.use()`.
     *   This example gives an overview:
     *
     *   ```js
     *   import {unified} from 'unified'
     *
     *   unified()
     *     // Plugin with options:
     *     .use(pluginA, {x: true, y: true})
     *     // Passing the same plugin again merges configuration (to `{x: true, y: false, z: true}`):
     *     .use(pluginA, {y: false, z: true})
     *     // Plugins:
     *     .use([pluginB, pluginC])
     *     // Two plugins, the second with options:
     *     .use([pluginD, [pluginE, {}]])
     *     // Preset with plugins and settings:
     *     .use({plugins: [pluginF, [pluginG, {}]], settings: {position: false}})
     *     // Settings only:
     *     .use({settings: {position: false}})
     *   ```
     *
     * @template {Array<unknown>} [Parameters=[]]
     * @template {Node | string | undefined} [Input=undefined]
     * @template [Output=Input]
     *
     * @overload
     * @param {Preset | null | undefined} [preset]
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *
     * @overload
     * @param {PluggableList} list
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *
     * @overload
     * @param {Plugin<Parameters, Input, Output>} plugin
     * @param {...(Parameters | [boolean])} parameters
     * @returns {UsePlugin<ParseTree, HeadTree, TailTree, CompileTree, CompileResult, Input, Output>}
     *
     * @param {PluggableList | Plugin | Preset | null | undefined} value
     *   Usable value.
     * @param {...unknown} parameters
     *   Parameters, when a plugin is given as a usable value.
     * @returns {Processor<ParseTree, HeadTree, TailTree, CompileTree, CompileResult>}
     *   Current processor.
     */
    use(e, ...t) {
      let r = this.attachers, i = this.namespace;
      if (Ip("use", this.frozen), e != null)
        if (typeof e == "function")
          o(e, t);
        else if (typeof e == "object")
          Array.isArray(e) ? a(e) : u(e);
        else
          throw new TypeError("Expected usable value, not `" + e + "`");
      return this;
      function n(l) {
        if (typeof l == "function")
          o(l, []);
        else if (typeof l == "object")
          if (Array.isArray(l)) {
            let [c, ...h] = (
              /** @type {PluginTuple<Array<unknown>>} */
              l
            );
            o(c, h);
          } else
            u(l);
        else
          throw new TypeError("Expected usable value, not `" + l + "`");
      }
      function u(l) {
        if (!("plugins" in l) && !("settings" in l))
          throw new Error(
            "Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and some\
times with `settings`, but this has neither"
          );
        a(l.plugins), l.settings && (i.settings = (0, Bp.default)(!0, i.settings, l.settings));
      }
      function a(l) {
        let c = -1;
        if (l != null)
          if (Array.isArray(l))
            for (; ++c < l.length; ) {
              let h = l[c];
              n(h);
            }
          else
            throw new TypeError("Expected a list of plugins, not `" + l + "`");
      }
      function o(l, c) {
        let h = -1, p = -1;
        for (; ++h < r.length; )
          if (r[h][0] === l) {
            p = h;
            break;
          }
        if (p === -1)
          r.push([l, ...c]);
        else if (c.length > 0) {
          let [d, ...m] = c, D = r[p][1];
          Vp(D) && Vp(d) && (d = (0, Bp.default)(!0, D, d)), r[p] = [l, d, ...m];
        }
      }
    }
  }, A7 = new Cb().freeze();
  s(Tp, "assertParser");
  s(Pp, "assertCompiler");
  s(Ip, "assertUnfrozen");
  s(_E, "assertNode");
  s(kE, "assertDone");
  s(ja, "vfile");
  s(F7, "looksLikeAVFile2");
  s(S7, "looksLikeAValue");
  s(_7, "isUint8Array2");
  k7 = class {
    static {
      s(this, "WalkerBase");
    }
    constructor() {
      this.should_skip = !1, this.should_remove = !1, this.replacement = null, this.context = {
        skip: /* @__PURE__ */ s(() => this.should_skip = !0, "skip"),
        remove: /* @__PURE__ */ s(() => this.should_remove = !0, "remove"),
        replace: /* @__PURE__ */ s((e) => this.replacement = e, "replace")
      };
    }
    /**
     * @template {Node} Parent
     * @param {Parent | null | undefined} parent
     * @param {keyof Parent | null | undefined} prop
     * @param {number | null | undefined} index
     * @param {Node} node
     */
    replace(e, t, r, i) {
      e && t && (r != null ? e[t][r] = i : e[t] = i);
    }
    /**
     * @template {Node} Parent
     * @param {Parent | null | undefined} parent
     * @param {keyof Parent | null | undefined} prop
     * @param {number | null | undefined} index
     */
    remove(e, t, r) {
      e && t && (r != null ? e[t].splice(r, 1) : delete e[t]);
    }
  }, B7 = class extends k7 {
    static {
      s(this, "SyncWalker");
    }
    /**
     *
     * @param {SyncHandler} [enter]
     * @param {SyncHandler} [leave]
     */
    constructor(e, t) {
      super(), this.should_skip = !1, this.should_remove = !1, this.replacement = null, this.context = {
        skip: /* @__PURE__ */ s(() => this.should_skip = !0, "skip"),
        remove: /* @__PURE__ */ s(() => this.should_remove = !0, "remove"),
        replace: /* @__PURE__ */ s((r) => this.replacement = r, "replace")
      }, this.enter = e, this.leave = t;
    }
    /**
     * @template {Node} Parent
     * @param {Node} node
     * @param {Parent | null} parent
     * @param {keyof Parent} [prop]
     * @param {number | null} [index]
     * @returns {Node | null}
     */
    visit(e, t, r, i) {
      if (e) {
        if (this.enter) {
          let u = this.should_skip, a = this.should_remove, o = this.replacement;
          this.should_skip = !1, this.should_remove = !1, this.replacement = null, this.enter.call(this.context, e, t, r, i), this.replacement &&
          (e = this.replacement, this.replace(t, r, i, e)), this.should_remove && this.remove(t, r, i);
          let l = this.should_skip, c = this.should_remove;
          if (this.should_skip = u, this.should_remove = a, this.replacement = o, l)
            return e;
          if (c)
            return null;
        }
        let n;
        for (n in e) {
          let u = e[n];
          if (u && typeof u == "object")
            if (Array.isArray(u)) {
              let a = (
                /** @type {Array<unknown>} */
                u
              );
              for (let o = 0; o < a.length; o += 1) {
                let l = a[o];
                BE(l) && (this.visit(l, e, n, o) || o--);
              }
            } else BE(u) && this.visit(u, e, n, null);
        }
        if (this.leave) {
          let u = this.replacement, a = this.should_remove;
          this.replacement = null, this.should_remove = !1, this.leave.call(this.context, e, t, r, i), this.replacement && (e = this.replacement,
          this.replace(t, r, i, e)), this.should_remove && this.remove(t, r, i);
          let o = this.should_remove;
          if (this.replacement = u, this.should_remove = a, o)
            return null;
        }
      }
      return e;
    }
  };
  s(BE, "isNode");
  s(Us, "walk");
  s(wb, "is_reference");
  s(Ab, "analyze");
  s(Fb, "add_reference");
  jn = class {
    static {
      s(this, "Scope");
    }
    /**
     * @param {Scope | null} parent 
     * @param {boolean} block 
     */
    constructor(e, t) {
      this.parent = e, this.block = t, this.declarations = /* @__PURE__ */ new Map(), this.initialised_declarations = /* @__PURE__ */ new Set(),
      this.references = /* @__PURE__ */ new Set();
    }
    /**
     * @param {import('estree').VariableDeclaration | import('estree').ClassDeclaration} node
     */
    add_declaration(e) {
      if (e.type === "VariableDeclaration")
        if (e.kind === "var" && this.block && this.parent)
          this.parent.add_declaration(e);
        else {
          let t = /* @__PURE__ */ s((r) => {
            Up(r.id).forEach((i) => {
              this.declarations.set(i, e), r.init && this.initialised_declarations.add(i);
            });
          }, "handle_declarator");
          e.declarations.forEach(t);
        }
      else e.id && this.declarations.set(e.id.name, e);
    }
    /**
     * @param {string} name
     * @returns {Scope | null}
     */
    find_owner(e) {
      return this.declarations.has(e) ? this : this.parent && this.parent.find_owner(e);
    }
    /**
     * @param {string} name
     * @returns {boolean}
     */
    has(e) {
      return this.declarations.has(e) || !!this.parent && this.parent.has(e);
    }
  };
  s(Up, "extract_names");
  s(Vn, "extract_identifiers");
  s(Fi, "create");
  s(T7, "declarationToExpression");
  s(P7, "isDeclaration");
  s(Kp, "specifiersToDeclarations");
  s(Si, "toIdOrMemberExpression");
  s(TE, "toJsxIdOrMemberExpression");
  s(I7, "recmaDocument");
  s(O7, "resolveDynamicMdxSpecifier");
  s(R7, "createImportMetaUrlVariable");
  Op = /@(jsx|jsxFrag|jsxImportSource|jsxRuntime)\s+(\S+)/g;
  s(N7, "buildJsx");
  s(L7, "toProperty");
  s(Ja, "toIdentifier");
  s(PE, "toMemberExpression");
  s($s, "create2");
  s(M7, "recmaJsxBuild");
  s(IE, "toBinaryAddition");
  s(j7, "recmaJsxRewrite");
  s(q7, "createImportProvider");
  s(qn, "isNamedFunction");
  s(Rp, "inScope");
  ({ stringify: $7 } = JSON);
  if (!String.prototype.repeat)
    throw new Error(
      "String.prototype.repeat is undefined, see https://github.com/davidbonnet/astring#installation"
    );
  if (!String.prototype.endsWith)
    throw new Error(
      "String.prototype.endsWith is undefined, see https://github.com/davidbonnet/astring#installation"
    );
  qa = {
    "||": 2,
    "??": 3,
    "&&": 4,
    "|": 5,
    "^": 6,
    "&": 7,
    "==": 8,
    "!=": 8,
    "===": 8,
    "!==": 8,
    "<": 9,
    ">": 9,
    "<=": 9,
    ">=": 9,
    in: 9,
    instanceof: 9,
    "<<": 10,
    ">>": 10,
    ">>>": 10,
    "+": 11,
    "-": 11,
    "*": 12,
    "%": 12,
    "/": 12,
    "**": 13
  }, fr = 17, V7 = {
    // Definitions
    ArrayExpression: 20,
    TaggedTemplateExpression: 20,
    ThisExpression: 20,
    Identifier: 20,
    PrivateIdentifier: 20,
    Literal: 18,
    TemplateLiteral: 20,
    Super: 20,
    SequenceExpression: 20,
    // Operations
    MemberExpression: 19,
    ChainExpression: 19,
    CallExpression: 19,
    NewExpression: 19,
    // Other definitions
    ArrowFunctionExpression: fr,
    ClassExpression: fr,
    FunctionExpression: fr,
    ObjectExpression: fr,
    // Other operations
    UpdateExpression: 16,
    UnaryExpression: 15,
    AwaitExpression: 15,
    BinaryExpression: 14,
    LogicalExpression: 13,
    ConditionalExpression: 4,
    AssignmentExpression: 3,
    YieldExpression: 2,
    RestElement: 1
  };
  s($n, "formatSequence");
  s(Sb, "expressionNeedsParenthesis");
  s($a, "formatExpression");
  s(U7, "reindent");
  s(xt, "formatComments");
  s(z7, "hasCallExpression");
  s(Np, "formatVariableDeclaration");
  _b = {
    /*
    Default generator.
    */
    Program(e, t) {
      let r = t.indent.repeat(t.indentLevel), { lineEnd: i, writeComments: n } = t;
      n && e.comments != null && xt(t, e.comments, r, i);
      let u = e.body, { length: a } = u;
      for (let o = 0; o < a; o++) {
        let l = u[o];
        n && l.comments != null && xt(t, l.comments, r, i), t.write(r), this[l.type](l, t), t.write(i);
      }
      n && e.trailingComments != null && xt(t, e.trailingComments, r, i);
    },
    BlockStatement: jE = /* @__PURE__ */ s(function(e, t) {
      let r = t.indent.repeat(t.indentLevel++), { lineEnd: i, writeComments: n } = t, u = r + t.indent;
      t.write("{");
      let a = e.body;
      if (a != null && a.length > 0) {
        t.write(i), n && e.comments != null && xt(t, e.comments, u, i);
        let { length: o } = a;
        for (let l = 0; l < o; l++) {
          let c = a[l];
          n && c.comments != null && xt(t, c.comments, u, i), t.write(u), this[c.type](c, t), t.write(i);
        }
        t.write(r);
      } else
        n && e.comments != null && (t.write(i), xt(t, e.comments, u, i), t.write(r));
      n && e.trailingComments != null && xt(t, e.trailingComments, u, i), t.write("}"), t.indentLevel--;
    }, "BlockStatement"),
    ClassBody: jE,
    StaticBlock(e, t) {
      t.write("static "), this.BlockStatement(e, t);
    },
    EmptyStatement(e, t) {
      t.write(";");
    },
    ExpressionStatement(e, t) {
      let r = t.expressionsPrecedence[e.expression.type];
      r === fr || r === 3 && e.expression.left.type[0] === "O" ? (t.write("("), this[e.expression.type](e.expression, t), t.write(")")) : this[e.
      expression.type](e.expression, t), t.write(";");
    },
    IfStatement(e, t) {
      t.write("if ("), this[e.test.type](e.test, t), t.write(") "), this[e.consequent.type](e.consequent, t), e.alternate != null && (t.write(
      " else "), this[e.alternate.type](e.alternate, t));
    },
    LabeledStatement(e, t) {
      this[e.label.type](e.label, t), t.write(": "), this[e.body.type](e.body, t);
    },
    BreakStatement(e, t) {
      t.write("break"), e.label != null && (t.write(" "), this[e.label.type](e.label, t)), t.write(";");
    },
    ContinueStatement(e, t) {
      t.write("continue"), e.label != null && (t.write(" "), this[e.label.type](e.label, t)), t.write(";");
    },
    WithStatement(e, t) {
      t.write("with ("), this[e.object.type](e.object, t), t.write(") "), this[e.body.type](e.body, t);
    },
    SwitchStatement(e, t) {
      let r = t.indent.repeat(t.indentLevel++), { lineEnd: i, writeComments: n } = t;
      t.indentLevel++;
      let u = r + t.indent, a = u + t.indent;
      t.write("switch ("), this[e.discriminant.type](e.discriminant, t), t.write(") {" + i);
      let { cases: o } = e, { length: l } = o;
      for (let c = 0; c < l; c++) {
        let h = o[c];
        n && h.comments != null && xt(t, h.comments, u, i), h.test ? (t.write(u + "case "), this[h.test.type](h.test, t), t.write(":" + i)) :
        t.write(u + "default:" + i);
        let { consequent: p } = h, { length: d } = p;
        for (let m = 0; m < d; m++) {
          let D = p[m];
          n && D.comments != null && xt(t, D.comments, a, i), t.write(a), this[D.type](D, t), t.write(i);
        }
      }
      t.indentLevel -= 2, t.write(r + "}");
    },
    ReturnStatement(e, t) {
      t.write("return"), e.argument && (t.write(" "), this[e.argument.type](e.argument, t)), t.write(";");
    },
    ThrowStatement(e, t) {
      t.write("throw "), this[e.argument.type](e.argument, t), t.write(";");
    },
    TryStatement(e, t) {
      if (t.write("try "), this[e.block.type](e.block, t), e.handler) {
        let { handler: r } = e;
        r.param == null ? t.write(" catch ") : (t.write(" catch ("), this[r.param.type](r.param, t), t.write(") ")), this[r.body.type](r.body,
        t);
      }
      e.finalizer && (t.write(" finally "), this[e.finalizer.type](e.finalizer, t));
    },
    WhileStatement(e, t) {
      t.write("while ("), this[e.test.type](e.test, t), t.write(") "), this[e.body.type](e.body, t);
    },
    DoWhileStatement(e, t) {
      t.write("do "), this[e.body.type](e.body, t), t.write(" while ("), this[e.test.type](e.test, t), t.write(");");
    },
    ForStatement(e, t) {
      if (t.write("for ("), e.init != null) {
        let { init: r } = e;
        r.type[0] === "V" ? Np(t, r) : this[r.type](r, t);
      }
      t.write("; "), e.test && this[e.test.type](e.test, t), t.write("; "), e.update && this[e.update.type](e.update, t), t.write(") "), this[e.
      body.type](e.body, t);
    },
    ForInStatement: OE = /* @__PURE__ */ s(function(e, t) {
      t.write(`for ${e.await ? "await " : ""}(`);
      let { left: r } = e;
      r.type[0] === "V" ? Np(t, r) : this[r.type](r, t), t.write(e.type[3] === "I" ? " in " : " of "), this[e.right.type](e.right, t), t.write(
      ") "), this[e.body.type](e.body, t);
    }, "ForInStatement"),
    ForOfStatement: OE,
    DebuggerStatement(e, t) {
      t.write("debugger;", e);
    },
    FunctionDeclaration: RE = /* @__PURE__ */ s(function(e, t) {
      t.write(
        (e.async ? "async " : "") + (e.generator ? "function* " : "function ") + (e.id ? e.id.name : ""),
        e
      ), $n(t, e.params), t.write(" "), this[e.body.type](e.body, t);
    }, "FunctionDeclaration"),
    FunctionExpression: RE,
    VariableDeclaration(e, t) {
      Np(t, e), t.write(";");
    },
    VariableDeclarator(e, t) {
      this[e.id.type](e.id, t), e.init != null && (t.write(" = "), this[e.init.type](e.init, t));
    },
    ClassDeclaration(e, t) {
      if (t.write("class " + (e.id ? `${e.id.name} ` : ""), e), e.superClass) {
        t.write("extends ");
        let { superClass: r } = e, { type: i } = r, n = t.expressionsPrecedence[i];
        (i[0] !== "C" || i[1] !== "l" || i[5] !== "E") && (n === fr || n < t.expressionsPrecedence.ClassExpression) ? (t.write("("), this[e.
        superClass.type](r, t), t.write(")")) : this[r.type](r, t), t.write(" ");
      }
      this.ClassBody(e.body, t);
    },
    ImportDeclaration(e, t) {
      t.write("import ");
      let { specifiers: r } = e, { length: i } = r, n = 0;
      if (i > 0) {
        for (; n < i; ) {
          n > 0 && t.write(", ");
          let u = r[n], a = u.type[6];
          if (a === "D")
            t.write(u.local.name, u), n++;
          else if (a === "N")
            t.write("* as " + u.local.name, u), n++;
          else
            break;
        }
        if (n < i) {
          for (t.write("{"); ; ) {
            let u = r[n], { name: a } = u.imported;
            if (t.write(a, u), a !== u.local.name && t.write(" as " + u.local.name), ++n < i)
              t.write(", ");
            else
              break;
          }
          t.write("}");
        }
        t.write(" from ");
      }
      this.Literal(e.source, t), t.write(";");
    },
    ImportExpression(e, t) {
      t.write("import("), this[e.source.type](e.source, t), t.write(")");
    },
    ExportDefaultDeclaration(e, t) {
      t.write("export default "), this[e.declaration.type](e.declaration, t), t.expressionsPrecedence[e.declaration.type] != null && e.declaration.
      type[0] !== "F" && t.write(";");
    },
    ExportNamedDeclaration(e, t) {
      if (t.write("export "), e.declaration)
        this[e.declaration.type](e.declaration, t);
      else {
        t.write("{");
        let { specifiers: r } = e, { length: i } = r;
        if (i > 0)
          for (let n = 0; ; ) {
            let u = r[n], { name: a } = u.local;
            if (t.write(a, u), a !== u.exported.name && t.write(" as " + u.exported.name), ++n < i)
              t.write(", ");
            else
              break;
          }
        t.write("}"), e.source && (t.write(" from "), this.Literal(e.source, t)), t.write(";");
      }
    },
    ExportAllDeclaration(e, t) {
      e.exported != null ? t.write("export * as " + e.exported.name + " from ") : t.write("export * from "), this.Literal(e.source, t), t.write(
      ";");
    },
    MethodDefinition(e, t) {
      e.static && t.write("static ");
      let r = e.kind[0];
      (r === "g" || r === "s") && t.write(e.kind + " "), e.value.async && t.write("async "), e.value.generator && t.write("*"), e.computed ?
      (t.write("["), this[e.key.type](e.key, t), t.write("]")) : this[e.key.type](e.key, t), $n(t, e.value.params), t.write(" "), this[e.value.
      body.type](e.value.body, t);
    },
    ClassExpression(e, t) {
      this.ClassDeclaration(e, t);
    },
    ArrowFunctionExpression(e, t) {
      t.write(e.async ? "async " : "", e);
      let { params: r } = e;
      r != null && (r.length === 1 && r[0].type[0] === "I" ? t.write(r[0].name, r[0]) : $n(t, e.params)), t.write(" => "), e.body.type[0] ===
      "O" ? (t.write("("), this.ObjectExpression(e.body, t), t.write(")")) : this[e.body.type](e.body, t);
    },
    ThisExpression(e, t) {
      t.write("this", e);
    },
    Super(e, t) {
      t.write("super", e);
    },
    RestElement: NE = /* @__PURE__ */ s(function(e, t) {
      t.write("..."), this[e.argument.type](e.argument, t);
    }, "RestElement"),
    SpreadElement: NE,
    YieldExpression(e, t) {
      t.write(e.delegate ? "yield*" : "yield"), e.argument && (t.write(" "), this[e.argument.type](e.argument, t));
    },
    AwaitExpression(e, t) {
      t.write("await ", e), $a(t, e.argument, e);
    },
    TemplateLiteral(e, t) {
      let { quasis: r, expressions: i } = e;
      t.write("`");
      let { length: n } = i;
      for (let a = 0; a < n; a++) {
        let o = i[a], l = r[a];
        t.write(l.value.raw, l), t.write("${"), this[o.type](o, t), t.write("}");
      }
      let u = r[r.length - 1];
      t.write(u.value.raw, u), t.write("`");
    },
    TemplateElement(e, t) {
      t.write(e.value.raw, e);
    },
    TaggedTemplateExpression(e, t) {
      $a(t, e.tag, e), this[e.quasi.type](e.quasi, t);
    },
    ArrayExpression: ME = /* @__PURE__ */ s(function(e, t) {
      if (t.write("["), e.elements.length > 0) {
        let { elements: r } = e, { length: i } = r;
        for (let n = 0; ; ) {
          let u = r[n];
          if (u != null && this[u.type](u, t), ++n < i)
            t.write(", ");
          else {
            u == null && t.write(", ");
            break;
          }
        }
      }
      t.write("]");
    }, "ArrayExpression"),
    ArrayPattern: ME,
    ObjectExpression(e, t) {
      let r = t.indent.repeat(t.indentLevel++), { lineEnd: i, writeComments: n } = t, u = r + t.indent;
      if (t.write("{"), e.properties.length > 0) {
        t.write(i), n && e.comments != null && xt(t, e.comments, u, i);
        let a = "," + i, { properties: o } = e, { length: l } = o;
        for (let c = 0; ; ) {
          let h = o[c];
          if (n && h.comments != null && xt(t, h.comments, u, i), t.write(u), this[h.type](h, t), ++c < l)
            t.write(a);
          else
            break;
        }
        t.write(i), n && e.trailingComments != null && xt(t, e.trailingComments, u, i), t.write(r + "}");
      } else n ? e.comments != null ? (t.write(i), xt(t, e.comments, u, i), e.trailingComments != null && xt(t, e.trailingComments, u, i), t.
      write(r + "}")) : e.trailingComments != null ? (t.write(i), xt(t, e.trailingComments, u, i), t.write(r + "}")) : t.write("}") : t.write(
      "}");
      t.indentLevel--;
    },
    Property(e, t) {
      e.method || e.kind[0] !== "i" ? this.MethodDefinition(e, t) : (e.shorthand || (e.computed ? (t.write("["), this[e.key.type](e.key, t),
      t.write("]")) : this[e.key.type](e.key, t), t.write(": ")), this[e.value.type](e.value, t));
    },
    PropertyDefinition(e, t) {
      if (e.static && t.write("static "), e.computed && t.write("["), this[e.key.type](e.key, t), e.computed && t.write("]"), e.value == null) {
        e.key.type[0] !== "F" && t.write(";");
        return;
      }
      t.write(" = "), this[e.value.type](e.value, t), t.write(";");
    },
    ObjectPattern(e, t) {
      if (t.write("{"), e.properties.length > 0) {
        let { properties: r } = e, { length: i } = r;
        for (let n = 0; this[r[n].type](r[n], t), ++n < i; )
          t.write(", ");
      }
      t.write("}");
    },
    SequenceExpression(e, t) {
      $n(t, e.expressions);
    },
    UnaryExpression(e, t) {
      if (e.prefix) {
        let {
          operator: r,
          argument: i,
          argument: { type: n }
        } = e;
        t.write(r);
        let u = Sb(t, i, e);
        !u && (r.length > 1 || n[0] === "U" && (n[1] === "n" || n[1] === "p") && i.prefix && i.operator[0] === r && (r === "+" || r === "-")) &&
        t.write(" "), u ? (t.write(r.length > 1 ? " (" : "("), this[n](i, t), t.write(")")) : this[n](i, t);
      } else
        this[e.argument.type](e.argument, t), t.write(e.operator);
    },
    UpdateExpression(e, t) {
      e.prefix ? (t.write(e.operator), this[e.argument.type](e.argument, t)) : (this[e.argument.type](e.argument, t), t.write(e.operator));
    },
    AssignmentExpression(e, t) {
      this[e.left.type](e.left, t), t.write(" " + e.operator + " "), this[e.right.type](e.right, t);
    },
    AssignmentPattern(e, t) {
      this[e.left.type](e.left, t), t.write(" = "), this[e.right.type](e.right, t);
    },
    BinaryExpression: LE = /* @__PURE__ */ s(function(e, t) {
      let r = e.operator === "in";
      r && t.write("("), $a(t, e.left, e, !1), t.write(" " + e.operator + " "), $a(t, e.right, e, !0), r && t.write(")");
    }, "BinaryExpression"),
    LogicalExpression: LE,
    ConditionalExpression(e, t) {
      let { test: r } = e, i = t.expressionsPrecedence[r.type];
      i === fr || i <= t.expressionsPrecedence.ConditionalExpression ? (t.write("("), this[r.type](r, t), t.write(")")) : this[r.type](r, t),
      t.write(" ? "), this[e.consequent.type](e.consequent, t), t.write(" : "), this[e.alternate.type](e.alternate, t);
    },
    NewExpression(e, t) {
      t.write("new ");
      let r = t.expressionsPrecedence[e.callee.type];
      r === fr || r < t.expressionsPrecedence.CallExpression || z7(e.callee) ? (t.write("("), this[e.callee.type](e.callee, t), t.write(")")) :
      this[e.callee.type](e.callee, t), $n(t, e.arguments);
    },
    CallExpression(e, t) {
      let r = t.expressionsPrecedence[e.callee.type];
      r === fr || r < t.expressionsPrecedence.CallExpression ? (t.write("("), this[e.callee.type](e.callee, t), t.write(")")) : this[e.callee.
      type](e.callee, t), e.optional && t.write("?."), $n(t, e.arguments);
    },
    ChainExpression(e, t) {
      this[e.expression.type](e.expression, t);
    },
    MemberExpression(e, t) {
      let r = t.expressionsPrecedence[e.object.type];
      r === fr || r < t.expressionsPrecedence.MemberExpression ? (t.write("("), this[e.object.type](e.object, t), t.write(")")) : this[e.object.
      type](e.object, t), e.computed ? (e.optional && t.write("?."), t.write("["), this[e.property.type](e.property, t), t.write("]")) : (e.
      optional ? t.write("?.") : t.write("."), this[e.property.type](e.property, t));
    },
    MetaProperty(e, t) {
      t.write(e.meta.name + "." + e.property.name, e);
    },
    Identifier(e, t) {
      t.write(e.name, e);
    },
    PrivateIdentifier(e, t) {
      t.write(`#${e.name}`, e);
    },
    Literal(e, t) {
      e.raw != null ? t.write(e.raw, e) : e.regex != null ? this.RegExpLiteral(e, t) : e.bigint != null ? t.write(e.bigint + "n", e) : t.write(
      $7(e.value), e);
    },
    RegExpLiteral(e, t) {
      let { regex: r } = e;
      t.write(`/${r.pattern}/${r.flags}`, e);
    }
  }, H7 = {}, W7 = class {
    static {
      s(this, "State");
    }
    constructor(e) {
      let t = e ?? H7;
      this.output = "", t.output != null ? (this.output = t.output, this.write = this.writeToStream) : this.output = "", this.generator = t.
      generator != null ? t.generator : _b, this.expressionsPrecedence = t.expressionsPrecedence != null ? t.expressionsPrecedence : V7, this.
      indent = t.indent != null ? t.indent : "  ", this.lineEnd = t.lineEnd != null ? t.lineEnd : `
`, this.indentLevel = t.startingIndentLevel != null ? t.startingIndentLevel : 0, this.writeComments = t.comments ? t.comments : !1, t.sourceMap !=
      null && (this.write = t.output == null ? this.writeAndMap : this.writeToStreamAndMap, this.sourceMap = t.sourceMap, this.line = 1, this.
      column = 0, this.lineEndSize = this.lineEnd.split(`
`).length - 1, this.mapping = {
        original: null,
        // Uses the entire state to avoid generating ephemeral objects
        generated: this,
        name: void 0,
        source: t.sourceMap.file || t.sourceMap._file
      });
    }
    write(e) {
      this.output += e;
    }
    writeToStream(e) {
      this.output.write(e);
    }
    writeAndMap(e, t) {
      this.output += e, this.map(e, t);
    }
    writeToStreamAndMap(e, t) {
      this.output.write(e), this.map(e, t);
    }
    map(e, t) {
      if (t != null) {
        let { type: n } = t;
        if (n[0] === "L" && n[2] === "n") {
          this.column = 0, this.line++;
          return;
        }
        if (t.loc != null) {
          let { mapping: u } = this;
          u.original = t.loc.start, u.name = t.name, this.sourceMap.addMapping(u);
        }
        if (n[0] === "T" && n[8] === "E" || n[0] === "L" && n[1] === "i" && typeof t.value == "string") {
          let { length: u } = e, { column: a, line: o } = this;
          for (let l = 0; l < u; l++)
            e[l] === `
` ? (a = 0, o++) : a++;
          this.column = a, this.line = o;
          return;
        }
      }
      let { length: r } = e, { lineEnd: i } = this;
      r > 0 && (this.lineEndSize > 0 && (i.length === 1 ? e[r - 1] === i : e.endsWith(i)) ? (this.line += this.lineEndSize, this.column = 0) :
      this.column += r);
    }
    toString() {
      return this.output;
    }
  };
  s(J7, "generate");
  G7 = {};
  s(qE, "toJs");
  $E = {
    JSXAttribute: X7,
    JSXClosingElement: Y7,
    JSXClosingFragment: K7,
    JSXElement: Q7,
    JSXEmptyExpression: Z7,
    JSXExpressionContainer: eN,
    JSXFragment: tN,
    JSXIdentifier: rN,
    JSXMemberExpression: iN,
    JSXNamespacedName: nN,
    JSXOpeningElement: sN,
    JSXOpeningFragment: uN,
    JSXSpreadAttribute: aN,
    JSXText: oN
  };
  s(X7, "jsxAttribute");
  s(Y7, "jsxClosingElement");
  s(K7, "jsxClosingFragment");
  s(Q7, "jsxElement");
  s(Z7, "jsxEmptyExpression");
  s(eN, "jsxExpressionContainer");
  s(tN, "jsxFragment");
  s(rN, "jsxIdentifier");
  s(iN, "jsxMemberExpression");
  s(nN, "jsxNamespacedName");
  s(sN, "jsxOpeningElement");
  s(uN, "jsxOpeningFragment");
  s(aN, "jsxSpreadAttribute");
  s(oN, "jsxText2");
  s(kb, "encodeJsx");
  s(lN, "replaceJsxChar");
  s(cN, "recmaStringify");
  s(hN, "rehypeRecma");
  s(pN, "rehypeRemoveRaw");
  fN = /\s+/g, dN = /[\t\n\v\f\r ]+/g;
  s(mN, "collapseWhiteSpace");
  s(DN, "replaceLineEnding");
  s(gN, "replaceSpace");
  s(xN, "trimFactory");
  s(yN, "remarkMarkAndUnravel");
  Bb = /** @type {const} */
  [
    "mdxFlowExpression",
    "mdxJsxFlowElement",
    "mdxJsxTextElement",
    "mdxTextExpression",
    "mdxjsEsm"
  ], VE = [
    "compilers",
    "filepath",
    "hastPlugins",
    "mdPlugins",
    "skipExport",
    "wrapExport"
  ], UE = !1;
  s(Qp, "createProcessor");
  s(Tb, "compile");
  s(Pb, "compileSync");
  s(Ib, "resolveEvaluateOptions");
  EN = Object.getPrototypeOf(Zp).constructor;
  s(Zp, "run");
  s(Ob, "runSync");
  s(bN, "evaluate");
  s(vN, "evaluateSync");
});

// ../node_modules/@storybook/docs-mdx/dist/index.js
var $b = {};
pi($b, {
  analyze: () => SN,
  extractImports: () => jb,
  plugin: () => qb
});
var ef, Mb, Lb, CN, wN, AN, FN, jb, qb, SN, Vb = ht(() => {
  up();
  ef = /* @__PURE__ */ s((e, t) => e.attributes.find((r) => r.type === "JSXAttribute" && r.name.name === t), "getAttr"), Mb = /* @__PURE__ */ s(
  (e, t) => ef(e, t)?.value, "getAttrValue"), Lb = /* @__PURE__ */ s((e, t) => {
    let r = Mb(e, t);
    if (r) {
      if (r.type === "Literal")
        return r.value;
      throw new Error(`Expected string literal ${t}, received ${r.type}`);
    }
  }, "getAttrLiteral"), CN = /* @__PURE__ */ s((e, t) => {
    let r = Mb(e, "of");
    if (r)
      if (r.type === "JSXExpressionContainer") {
        let i = r.expression;
        if (i?.type === "Identifier") {
          let n = t[i.name];
          if (n)
            return n;
          throw new Error(`Unknown identifier ${i.name}`);
        } else
          throw new Error(`Expected identifier, received ${i.type}`);
      } else
        throw new Error(`Expected JSX expression, received ${r.type}`);
  }, "getOf"), wN = /* @__PURE__ */ s((e) => {
    let t = ef(e, "tags");
    if (!t)
      return;
    let r = t.value;
    if (r.type === "JSXExpressionContainer") {
      let i = r.expression;
      if (i.type === "ArrayExpression")
        return i.elements.map((u) => {
          if (u.type === "Literal" && typeof u.value == "string")
            return u.value;
          throw new Error(`Expected string literal tag, received ${u.type}`);
        });
      throw new Error(`Expected tags array, received ${i.type}`);
    } else
      throw new Error(`Expected JSX expression tags, received ${r.type}`);
  }, "getTags"), AN = /* @__PURE__ */ s((e) => {
    let t = ef(e, "isTemplate");
    if (!t)
      return !1;
    let r = t.value;
    if (r == null)
      return !0;
    if (r.type === "JSXExpressionContainer") {
      let i = r.expression;
      if (i.type === "Literal" && typeof i.value == "boolean")
        return i.value;
      throw new Error(`Expected boolean isTemplate, received ${typeof i.value}`);
    } else
      throw new Error(`Expected expression isTemplate, received ${r.type}`);
  }, "getIsTemplate"), FN = /* @__PURE__ */ s((e, t) => {
    let r = { title: void 0, of: void 0, name: void 0, isTemplate: !1 }, i = e.body.filter(
      (u) => u.type === "ExpressionStatement" && u.expression.type === "JSXFragment"
    );
    if (i.length > 1)
      throw new Error("duplicate contents");
    return i.length === 0 || i[0].expression.children.forEach((u) => {
      if (u.type === "JSXElement") {
        let { openingElement: a } = u;
        if (a.name.name === "Meta") {
          if (r.title || r.name || r.of)
            throw new Error("Meta can only be declared once");
          r.title = Lb(a, "title"), r.name = Lb(a, "name"), r.of = CN(a, t), r.isTemplate = AN(a), r.metaTags = wN(a);
        }
      } else if (u.type !== "JSXExpressionContainer")
        throw new Error(`Unexpected JSX child: ${u.type}`);
    }), r;
  }, "extractTitle"), jb = /* @__PURE__ */ s((e) => {
    let t = {};
    return e.body.forEach((r) => {
      if (r.type === "ImportDeclaration") {
        let { source: i, specifiers: n } = r;
        if (i.type === "Literal")
          n.forEach((u) => {
            t[u.local.name] = i.value.toString();
          });
        else
          throw new Error("MDX: unexpected import source");
      }
    }), t;
  }, "extractImports"), qb = /* @__PURE__ */ s((e) => (t) => {
    let r = Sa(t), i = jb(r), { title: n, of: u, name: a, isTemplate: o, metaTags: l } = FN(r, i);
    return e.title = n, e.of = u, e.name = a, e.isTemplate = o, e.metaTags = l, e.imports = Array.from(new Set(Object.values(i))), t;
  }, "plugin"), SN = /* @__PURE__ */ s(async (e) => {
    let t = {
      title: void 0,
      of: void 0,
      name: void 0,
      isTemplate: !1,
      metaTags: void 0,
      imports: void 0
    }, { compile: r } = await Promise.resolve().then(() => (Nb(), Rb));
    await r(e, {
      rehypePlugins: [[qb, t]]
    });
    let { title: i, of: n, name: u, isTemplate: a, metaTags: o, imports: l = [] } = t;
    return { title: i, of: n, name: u, isTemplate: a, metaTags: o, imports: l };
  }, "analyze");
});

// ../node_modules/totalist/sync/index.mjs
var Gb = {};
pi(Gb, {
  totalist: () => Jb
});
function Jb(e, t, r = "") {
  e = (0, Wn.resolve)(".", e);
  let i = (0, Za.readdirSync)(e), n = 0, u, a;
  for (; n < i.length; n++)
    u = (0, Wn.join)(e, i[n]), a = (0, Za.statSync)(u), a.isDirectory() ? Jb(u, t, (0, Wn.join)(r, i[n])) : t((0, Wn.join)(r, i[n]), u, a);
}
var Wn, Za, Xb = ht(() => {
  Wn = require("path"), Za = require("fs");
  s(Jb, "totalist");
});

// ../node_modules/@polka/url/build.mjs
var Kb = {};
pi(Kb, {
  parse: () => uf
});
function uf(e) {
  let t = e.url;
  if (t == null) return;
  let r = e._parsedUrl;
  if (r && r.raw === t) return r;
  let i = t, n = "", u;
  if (t.length > 1) {
    let a = t.indexOf("?", 1);
    a !== -1 && (n = t.substring(a), i = t.substring(0, a), n.length > 1 && (u = Yb.parse(n.substring(1))));
  }
  return e._parsedUrl = { pathname: i, search: n, query: u, raw: t };
}
var Yb, af = ht(() => {
  Yb = Q(require("node:querystring"), 1);
  s(uf, "parse");
});

// ../node_modules/mrmime/index.mjs
var Zb = {};
pi(Zb, {
  lookup: () => BN,
  mimes: () => Qb
});
function BN(e) {
  let t = ("" + e).trim().toLowerCase(), r = t.lastIndexOf(".");
  return Qb[~r ? t.substring(++r) : t];
}
var Qb, ev = ht(() => {
  Qb = {
    "3g2": "video/3gpp2",
    "3gp": "video/3gpp",
    "3gpp": "video/3gpp",
    "3mf": "model/3mf",
    aac: "audio/aac",
    ac: "application/pkix-attr-cert",
    adp: "audio/adpcm",
    adts: "audio/aac",
    ai: "application/postscript",
    aml: "application/automationml-aml+xml",
    amlx: "application/automationml-amlx+zip",
    amr: "audio/amr",
    apng: "image/apng",
    appcache: "text/cache-manifest",
    appinstaller: "application/appinstaller",
    appx: "application/appx",
    appxbundle: "application/appxbundle",
    asc: "application/pgp-keys",
    atom: "application/atom+xml",
    atomcat: "application/atomcat+xml",
    atomdeleted: "application/atomdeleted+xml",
    atomsvc: "application/atomsvc+xml",
    au: "audio/basic",
    avci: "image/avci",
    avcs: "image/avcs",
    avif: "image/avif",
    aw: "application/applixware",
    bdoc: "application/bdoc",
    bin: "application/octet-stream",
    bmp: "image/bmp",
    bpk: "application/octet-stream",
    btf: "image/prs.btif",
    btif: "image/prs.btif",
    buffer: "application/octet-stream",
    ccxml: "application/ccxml+xml",
    cdfx: "application/cdfx+xml",
    cdmia: "application/cdmi-capability",
    cdmic: "application/cdmi-container",
    cdmid: "application/cdmi-domain",
    cdmio: "application/cdmi-object",
    cdmiq: "application/cdmi-queue",
    cer: "application/pkix-cert",
    cgm: "image/cgm",
    cjs: "application/node",
    class: "application/java-vm",
    coffee: "text/coffeescript",
    conf: "text/plain",
    cpl: "application/cpl+xml",
    cpt: "application/mac-compactpro",
    crl: "application/pkix-crl",
    css: "text/css",
    csv: "text/csv",
    cu: "application/cu-seeme",
    cwl: "application/cwl",
    cww: "application/prs.cww",
    davmount: "application/davmount+xml",
    dbk: "application/docbook+xml",
    deb: "application/octet-stream",
    def: "text/plain",
    deploy: "application/octet-stream",
    dib: "image/bmp",
    "disposition-notification": "message/disposition-notification",
    dist: "application/octet-stream",
    distz: "application/octet-stream",
    dll: "application/octet-stream",
    dmg: "application/octet-stream",
    dms: "application/octet-stream",
    doc: "application/msword",
    dot: "application/msword",
    dpx: "image/dpx",
    drle: "image/dicom-rle",
    dsc: "text/prs.lines.tag",
    dssc: "application/dssc+der",
    dtd: "application/xml-dtd",
    dump: "application/octet-stream",
    dwd: "application/atsc-dwd+xml",
    ear: "application/java-archive",
    ecma: "application/ecmascript",
    elc: "application/octet-stream",
    emf: "image/emf",
    eml: "message/rfc822",
    emma: "application/emma+xml",
    emotionml: "application/emotionml+xml",
    eps: "application/postscript",
    epub: "application/epub+zip",
    exe: "application/octet-stream",
    exi: "application/exi",
    exp: "application/express",
    exr: "image/aces",
    ez: "application/andrew-inset",
    fdf: "application/fdf",
    fdt: "application/fdt+xml",
    fits: "image/fits",
    g3: "image/g3fax",
    gbr: "application/rpki-ghostbusters",
    geojson: "application/geo+json",
    gif: "image/gif",
    glb: "model/gltf-binary",
    gltf: "model/gltf+json",
    gml: "application/gml+xml",
    gpx: "application/gpx+xml",
    gram: "application/srgs",
    grxml: "application/srgs+xml",
    gxf: "application/gxf",
    gz: "application/gzip",
    h261: "video/h261",
    h263: "video/h263",
    h264: "video/h264",
    heic: "image/heic",
    heics: "image/heic-sequence",
    heif: "image/heif",
    heifs: "image/heif-sequence",
    hej2: "image/hej2k",
    held: "application/atsc-held+xml",
    hjson: "application/hjson",
    hlp: "application/winhlp",
    hqx: "application/mac-binhex40",
    hsj2: "image/hsj2",
    htm: "text/html",
    html: "text/html",
    ics: "text/calendar",
    ief: "image/ief",
    ifb: "text/calendar",
    iges: "model/iges",
    igs: "model/iges",
    img: "application/octet-stream",
    in: "text/plain",
    ini: "text/plain",
    ink: "application/inkml+xml",
    inkml: "application/inkml+xml",
    ipfix: "application/ipfix",
    iso: "application/octet-stream",
    its: "application/its+xml",
    jade: "text/jade",
    jar: "application/java-archive",
    jhc: "image/jphc",
    jls: "image/jls",
    jp2: "image/jp2",
    jpe: "image/jpeg",
    jpeg: "image/jpeg",
    jpf: "image/jpx",
    jpg: "image/jpeg",
    jpg2: "image/jp2",
    jpgm: "image/jpm",
    jpgv: "video/jpeg",
    jph: "image/jph",
    jpm: "image/jpm",
    jpx: "image/jpx",
    js: "text/javascript",
    json: "application/json",
    json5: "application/json5",
    jsonld: "application/ld+json",
    jsonml: "application/jsonml+json",
    jsx: "text/jsx",
    jt: "model/jt",
    jxr: "image/jxr",
    jxra: "image/jxra",
    jxrs: "image/jxrs",
    jxs: "image/jxs",
    jxsc: "image/jxsc",
    jxsi: "image/jxsi",
    jxss: "image/jxss",
    kar: "audio/midi",
    ktx: "image/ktx",
    ktx2: "image/ktx2",
    less: "text/less",
    lgr: "application/lgr+xml",
    list: "text/plain",
    litcoffee: "text/coffeescript",
    log: "text/plain",
    lostxml: "application/lost+xml",
    lrf: "application/octet-stream",
    m1v: "video/mpeg",
    m21: "application/mp21",
    m2a: "audio/mpeg",
    m2v: "video/mpeg",
    m3a: "audio/mpeg",
    m4a: "audio/mp4",
    m4p: "application/mp4",
    m4s: "video/iso.segment",
    ma: "application/mathematica",
    mads: "application/mads+xml",
    maei: "application/mmt-aei+xml",
    man: "text/troff",
    manifest: "text/cache-manifest",
    map: "application/json",
    mar: "application/octet-stream",
    markdown: "text/markdown",
    mathml: "application/mathml+xml",
    mb: "application/mathematica",
    mbox: "application/mbox",
    md: "text/markdown",
    mdx: "text/mdx",
    me: "text/troff",
    mesh: "model/mesh",
    meta4: "application/metalink4+xml",
    metalink: "application/metalink+xml",
    mets: "application/mets+xml",
    mft: "application/rpki-manifest",
    mid: "audio/midi",
    midi: "audio/midi",
    mime: "message/rfc822",
    mj2: "video/mj2",
    mjp2: "video/mj2",
    mjs: "text/javascript",
    mml: "text/mathml",
    mods: "application/mods+xml",
    mov: "video/quicktime",
    mp2: "audio/mpeg",
    mp21: "application/mp21",
    mp2a: "audio/mpeg",
    mp3: "audio/mpeg",
    mp4: "video/mp4",
    mp4a: "audio/mp4",
    mp4s: "application/mp4",
    mp4v: "video/mp4",
    mpd: "application/dash+xml",
    mpe: "video/mpeg",
    mpeg: "video/mpeg",
    mpf: "application/media-policy-dataset+xml",
    mpg: "video/mpeg",
    mpg4: "video/mp4",
    mpga: "audio/mpeg",
    mpp: "application/dash-patch+xml",
    mrc: "application/marc",
    mrcx: "application/marcxml+xml",
    ms: "text/troff",
    mscml: "application/mediaservercontrol+xml",
    msh: "model/mesh",
    msi: "application/octet-stream",
    msix: "application/msix",
    msixbundle: "application/msixbundle",
    msm: "application/octet-stream",
    msp: "application/octet-stream",
    mtl: "model/mtl",
    musd: "application/mmt-usd+xml",
    mxf: "application/mxf",
    mxmf: "audio/mobile-xmf",
    mxml: "application/xv+xml",
    n3: "text/n3",
    nb: "application/mathematica",
    nq: "application/n-quads",
    nt: "application/n-triples",
    obj: "model/obj",
    oda: "application/oda",
    oga: "audio/ogg",
    ogg: "audio/ogg",
    ogv: "video/ogg",
    ogx: "application/ogg",
    omdoc: "application/omdoc+xml",
    onepkg: "application/onenote",
    onetmp: "application/onenote",
    onetoc: "application/onenote",
    onetoc2: "application/onenote",
    opf: "application/oebps-package+xml",
    opus: "audio/ogg",
    otf: "font/otf",
    owl: "application/rdf+xml",
    oxps: "application/oxps",
    p10: "application/pkcs10",
    p7c: "application/pkcs7-mime",
    p7m: "application/pkcs7-mime",
    p7s: "application/pkcs7-signature",
    p8: "application/pkcs8",
    pdf: "application/pdf",
    pfr: "application/font-tdpfr",
    pgp: "application/pgp-encrypted",
    pkg: "application/octet-stream",
    pki: "application/pkixcmp",
    pkipath: "application/pkix-pkipath",
    pls: "application/pls+xml",
    png: "image/png",
    prc: "model/prc",
    prf: "application/pics-rules",
    provx: "application/provenance+xml",
    ps: "application/postscript",
    pskcxml: "application/pskc+xml",
    pti: "image/prs.pti",
    qt: "video/quicktime",
    raml: "application/raml+yaml",
    rapd: "application/route-apd+xml",
    rdf: "application/rdf+xml",
    relo: "application/p2p-overlay+xml",
    rif: "application/reginfo+xml",
    rl: "application/resource-lists+xml",
    rld: "application/resource-lists-diff+xml",
    rmi: "audio/midi",
    rnc: "application/relax-ng-compact-syntax",
    rng: "application/xml",
    roa: "application/rpki-roa",
    roff: "text/troff",
    rq: "application/sparql-query",
    rs: "application/rls-services+xml",
    rsat: "application/atsc-rsat+xml",
    rsd: "application/rsd+xml",
    rsheet: "application/urc-ressheet+xml",
    rss: "application/rss+xml",
    rtf: "text/rtf",
    rtx: "text/richtext",
    rusd: "application/route-usd+xml",
    s3m: "audio/s3m",
    sbml: "application/sbml+xml",
    scq: "application/scvp-cv-request",
    scs: "application/scvp-cv-response",
    sdp: "application/sdp",
    senmlx: "application/senml+xml",
    sensmlx: "application/sensml+xml",
    ser: "application/java-serialized-object",
    setpay: "application/set-payment-initiation",
    setreg: "application/set-registration-initiation",
    sgi: "image/sgi",
    sgm: "text/sgml",
    sgml: "text/sgml",
    shex: "text/shex",
    shf: "application/shf+xml",
    shtml: "text/html",
    sieve: "application/sieve",
    sig: "application/pgp-signature",
    sil: "audio/silk",
    silo: "model/mesh",
    siv: "application/sieve",
    slim: "text/slim",
    slm: "text/slim",
    sls: "application/route-s-tsid+xml",
    smi: "application/smil+xml",
    smil: "application/smil+xml",
    snd: "audio/basic",
    so: "application/octet-stream",
    spdx: "text/spdx",
    spp: "application/scvp-vp-response",
    spq: "application/scvp-vp-request",
    spx: "audio/ogg",
    sql: "application/sql",
    sru: "application/sru+xml",
    srx: "application/sparql-results+xml",
    ssdl: "application/ssdl+xml",
    ssml: "application/ssml+xml",
    stk: "application/hyperstudio",
    stl: "model/stl",
    stpx: "model/step+xml",
    stpxz: "model/step-xml+zip",
    stpz: "model/step+zip",
    styl: "text/stylus",
    stylus: "text/stylus",
    svg: "image/svg+xml",
    svgz: "image/svg+xml",
    swidtag: "application/swid+xml",
    t: "text/troff",
    t38: "image/t38",
    td: "application/urc-targetdesc+xml",
    tei: "application/tei+xml",
    teicorpus: "application/tei+xml",
    text: "text/plain",
    tfi: "application/thraud+xml",
    tfx: "image/tiff-fx",
    tif: "image/tiff",
    tiff: "image/tiff",
    toml: "application/toml",
    tr: "text/troff",
    trig: "application/trig",
    ts: "video/mp2t",
    tsd: "application/timestamped-data",
    tsv: "text/tab-separated-values",
    ttc: "font/collection",
    ttf: "font/ttf",
    ttl: "text/turtle",
    ttml: "application/ttml+xml",
    txt: "text/plain",
    u3d: "model/u3d",
    u8dsn: "message/global-delivery-status",
    u8hdr: "message/global-headers",
    u8mdn: "message/global-disposition-notification",
    u8msg: "message/global",
    ubj: "application/ubjson",
    uri: "text/uri-list",
    uris: "text/uri-list",
    urls: "text/uri-list",
    vcard: "text/vcard",
    vrml: "model/vrml",
    vtt: "text/vtt",
    vxml: "application/voicexml+xml",
    war: "application/java-archive",
    wasm: "application/wasm",
    wav: "audio/wav",
    weba: "audio/webm",
    webm: "video/webm",
    webmanifest: "application/manifest+json",
    webp: "image/webp",
    wgsl: "text/wgsl",
    wgt: "application/widget",
    wif: "application/watcherinfo+xml",
    wmf: "image/wmf",
    woff: "font/woff",
    woff2: "font/woff2",
    wrl: "model/vrml",
    wsdl: "application/wsdl+xml",
    wspolicy: "application/wspolicy+xml",
    x3d: "model/x3d+xml",
    x3db: "model/x3d+fastinfoset",
    x3dbz: "model/x3d+binary",
    x3dv: "model/x3d-vrml",
    x3dvz: "model/x3d+vrml",
    x3dz: "model/x3d+xml",
    xaml: "application/xaml+xml",
    xav: "application/xcap-att+xml",
    xca: "application/xcap-caps+xml",
    xcs: "application/calendar+xml",
    xdf: "application/xcap-diff+xml",
    xdssc: "application/dssc+xml",
    xel: "application/xcap-el+xml",
    xenc: "application/xenc+xml",
    xer: "application/patch-ops-error+xml",
    xfdf: "application/xfdf",
    xht: "application/xhtml+xml",
    xhtml: "application/xhtml+xml",
    xhvml: "application/xv+xml",
    xlf: "application/xliff+xml",
    xm: "audio/xm",
    xml: "text/xml",
    xns: "application/xcap-ns+xml",
    xop: "application/xop+xml",
    xpl: "application/xproc+xml",
    xsd: "application/xml",
    xsf: "application/prs.xsf+xml",
    xsl: "application/xml",
    xslt: "application/xml",
    xspf: "application/xspf+xml",
    xvm: "application/xv+xml",
    xvml: "application/xv+xml",
    yaml: "text/yaml",
    yang: "application/yang",
    yin: "application/yin+xml",
    yml: "text/yaml",
    zip: "application/zip"
  };
  s(BN, "lookup");
});

// ../node_modules/sirv/build.js
var nv = I((dX, iv) => {
  var of = require("fs"), { join: TN, normalize: PN, resolve: IN } = require("path"), { totalist: ON } = (Xb(), _u(Gb)), { parse: RN } = (af(), _u(Kb)),
  { lookup: NN } = (ev(), _u(Zb)), LN = /* @__PURE__ */ s(() => {
  }, "noop");
  function MN(e, t) {
    for (let r = 0; r < t.length; r++)
      if (t[r].test(e)) return !0;
  }
  s(MN, "isMatch");
  function tv(e, t) {
    let r = 0, i, n = e.length - 1;
    e.charCodeAt(n) === 47 && (e = e.substring(0, n));
    let u = [], a = `${e}/index`;
    for (; r < t.length; r++)
      i = t[r] ? `.${t[r]}` : "", e && u.push(e + i), u.push(a + i);
    return u;
  }
  s(tv, "toAssume");
  function jN(e, t, r) {
    let i = 0, n, u = tv(t, r);
    for (; i < u.length; i++)
      if (n = e[u[i]]) return n;
  }
  s(jN, "viaCache");
  function qN(e, t, r, i) {
    let n = 0, u = tv(r, i), a, o, l, c;
    for (; n < u.length; n++)
      if (a = PN(TN(e, l = u[n])), a.startsWith(e) && of.existsSync(a)) {
        if (o = of.statSync(a), o.isDirectory()) continue;
        return c = rv(l, o, t), c["Cache-Control"] = t ? "no-cache" : "no-store", { abs: a, stats: o, headers: c };
      }
  }
  s(qN, "viaLocal");
  function $N(e, t) {
    return t.statusCode = 404, t.end();
  }
  s($N, "is404");
  function VN(e, t, r, i, n) {
    let u = 200, a, o = {};
    n = { ...n };
    for (let l in n)
      a = t.getHeader(l), a && (n[l] = a);
    if ((a = t.getHeader("content-type")) && (n["Content-Type"] = a), e.headers.range) {
      u = 206;
      let [l, c] = e.headers.range.replace("bytes=", "").split("-"), h = o.end = parseInt(c, 10) || i.size - 1, p = o.start = parseInt(l, 10) ||
      0;
      if (h >= i.size && (h = i.size - 1), p >= i.size)
        return t.setHeader("Content-Range", `bytes */${i.size}`), t.statusCode = 416, t.end();
      n["Content-Range"] = `bytes ${p}-${h}/${i.size}`, n["Content-Length"] = h - p + 1, n["Accept-Ranges"] = "bytes";
    }
    t.writeHead(u, n), of.createReadStream(r, o).pipe(t);
  }
  s(VN, "send");
  var UN = {
    ".br": "br",
    ".gz": "gzip"
  };
  function rv(e, t, r) {
    let i = UN[e.slice(-3)], n = NN(e.slice(0, i && -3)) || "";
    n === "text/html" && (n += ";charset=utf-8");
    let u = {
      "Content-Length": t.size,
      "Content-Type": n,
      "Last-Modified": t.mtime.toUTCString()
    };
    return i && (u["Content-Encoding"] = i), r && (u.ETag = `W/"${t.size}-${t.mtime.getTime()}"`), u;
  }
  s(rv, "toHeaders");
  iv.exports = function(e, t = {}) {
    e = IN(e || ".");
    let r = t.onNoMatch || $N, i = t.setHeaders || LN, n = t.extensions || ["html", "htm"], u = t.gzip && n.map((D) => `${D}.gz`).concat("gz"),
    a = t.brotli && n.map((D) => `${D}.br`).concat("br"), o = {}, l = "/", c = !!t.etag, h = !!t.single;
    if (typeof t.single == "string") {
      let D = t.single.lastIndexOf(".");
      l += ~D ? t.single.substring(0, D) : t.single;
    }
    let p = [];
    t.ignores !== !1 && (p.push(/[/]([A-Za-z\s\d~$._-]+\.\w+){1,}$/), t.dotfiles ? p.push(/\/\.\w/) : p.push(/\/\.well-known/), [].concat(t.
    ignores || []).forEach((D) => {
      p.push(new RegExp(D, "i"));
    }));
    let d = t.maxAge != null && `public,max-age=${t.maxAge}`;
    d && t.immutable ? d += ",immutable" : d && t.maxAge === 0 && (d += ",must-revalidate"), t.dev || ON(e, (D, g, v) => {
      if (!/\.well-known[\\+\/]/.test(D)) {
        if (!t.dotfiles && /(^\.|[\\+|\/+]\.)/.test(D)) return;
      }
      let x = rv(D, v, c);
      d && (x["Cache-Control"] = d), o["/" + D.normalize().replace(/\\+/g, "/")] = { abs: g, stats: v, headers: x };
    });
    let m = t.dev ? qN.bind(0, e, c) : jN.bind(0, o);
    return function(D, g, v) {
      let x = [""], C = RN(D).pathname, S = D.headers["accept-encoding"] || "";
      if (u && S.includes("gzip") && x.unshift(...u), a && /(br|brotli)/i.test(S) && x.unshift(...a), x.push(...n), C.indexOf("%") !== -1)
        try {
          C = decodeURI(C);
        } catch {
        }
      let k = m(C, x) || h && !MN(C, p) && m(l, x);
      if (!k) return v ? v() : r(D, g);
      if (c && D.headers["if-none-match"] === k.headers.ETag)
        return g.writeHead(304), g.end();
      (u || a) && g.setHeader("Vary", "Accept-Encoding"), i(g, C, k.stats), VN(D, g, k.abs, k.stats, k.headers);
    };
  };
});

// ../node_modules/@discoveryjs/json-ext/package.json
var Ev = I((AX, zN) => {
  zN.exports = {
    name: "@discoveryjs/json-ext",
    version: "0.5.7",
    description: "A set of utilities that extend the use of JSON",
    keywords: [
      "json",
      "utils",
      "stream",
      "async",
      "promise",
      "stringify",
      "info"
    ],
    author: "Roman Dvornov <rdvornov@gmail.com> (https://github.com/lahmatiy)",
    license: "MIT",
    repository: "discoveryjs/json-ext",
    main: "./src/index",
    browser: {
      "./src/stringify-stream.js": "./src/stringify-stream-browser.js",
      "./src/text-decoder.js": "./src/text-decoder-browser.js",
      "./src/version.js": "./dist/version.js"
    },
    types: "./index.d.ts",
    scripts: {
      test: "mocha --reporter progress",
      lint: "eslint src test",
      "lint-and-test": "npm run lint && npm test",
      build: "rollup --config",
      "test:all": "npm run test:src && npm run test:dist",
      "test:src": "npm test",
      "test:dist": "cross-env MODE=dist npm test && cross-env MODE=dist-min npm test",
      "build-and-test": "npm run build && npm run test:dist",
      coverage: "c8 --reporter=lcovonly npm test",
      prepublishOnly: "npm run lint && npm test && npm run build-and-test"
    },
    devDependencies: {
      "@rollup/plugin-commonjs": "^15.1.0",
      "@rollup/plugin-json": "^4.1.0",
      "@rollup/plugin-node-resolve": "^9.0.0",
      c8: "^7.10.0",
      chalk: "^4.1.0",
      "cross-env": "^7.0.3",
      eslint: "^8.10.0",
      mocha: "^8.4.0",
      rollup: "^2.28.2",
      "rollup-plugin-terser": "^7.0.2"
    },
    engines: {
      node: ">=10.0.0"
    },
    files: [
      "dist",
      "src",
      "index.d.ts"
    ]
  };
});

// ../node_modules/@discoveryjs/json-ext/src/version.js
var vv = I((FX, bv) => {
  bv.exports = Ev().version;
});

// ../node_modules/@discoveryjs/json-ext/src/utils.js
var to = I((SX, wv) => {
  var HN = {
    // JSON Single Character Escape Sequences
    8: "\\b",
    9: "\\t",
    10: "\\n",
    12: "\\f",
    13: "\\r",
    34: '\\"',
    92: "\\\\"
  };
  function WN(e) {
    return e >= 55296 && e <= 56319;
  }
  s(WN, "isLeadingSurrogate");
  function JN(e) {
    return e >= 56320 && e <= 57343;
  }
  s(JN, "isTrailingSurrogate");
  function Cv(e) {
    return typeof e.pipe == "function" && typeof e._read == "function" && typeof e._readableState == "object" && e._readableState !== null;
  }
  s(Cv, "isReadableStream");
  function GN(e, t, r, i) {
    switch (r && typeof r.toJSON == "function" && (r = r.toJSON()), i !== null && (r = i.call(e, String(t), r)), typeof r) {
      case "function":
      case "symbol":
        r = void 0;
        break;
      case "object":
        if (r !== null) {
          let n = r.constructor;
          (n === String || n === Number || n === Boolean) && (r = r.valueOf());
        }
        break;
    }
    return r;
  }
  s(GN, "replaceValue");
  function XN(e) {
    return e === null || typeof e != "object" ? 1 : Array.isArray(e) ? 3 : 2;
  }
  s(XN, "getTypeNative");
  function YN(e) {
    return e === null || typeof e != "object" ? 1 : typeof e.then == "function" ? 4 : Cv(e) ? e._readableState.objectMode ? 6 : 5 : Array.isArray(
    e) ? 3 : 2;
  }
  s(YN, "getTypeAsync");
  function KN(e) {
    return typeof e == "function" ? e : Array.isArray(e) ? [...new Set(
      e.map((r) => {
        let i = r && r.constructor;
        return i === String || i === Number ? String(r) : null;
      }).filter((r) => typeof r == "string")
    )] : null;
  }
  s(KN, "normalizeReplacer");
  function QN(e) {
    return typeof e == "number" ? !Number.isFinite(e) || e < 1 ? !1 : " ".repeat(Math.min(e, 10)) : typeof e == "string" && e.slice(0, 10) ||
    !1;
  }
  s(QN, "normalizeSpace");
  wv.exports = {
    escapableCharCodeSubstitution: HN,
    isLeadingSurrogate: WN,
    isTrailingSurrogate: JN,
    type: {
      PRIMITIVE: 1,
      PROMISE: 4,
      ARRAY: 3,
      OBJECT: 2,
      STRING_STREAM: 5,
      OBJECT_STREAM: 6
    },
    isReadableStream: Cv,
    replaceValue: GN,
    getTypeNative: XN,
    getTypeAsync: YN,
    normalizeReplacer: KN,
    normalizeSpace: QN
  };
});

// ../node_modules/@discoveryjs/json-ext/src/stringify-info.js
var _v = I((kX, Sv) => {
  var {
    normalizeReplacer: ZN,
    normalizeSpace: eL,
    replaceValue: tL,
    getTypeNative: rL,
    getTypeAsync: iL,
    isLeadingSurrogate: nL,
    isTrailingSurrogate: sL,
    escapableCharCodeSubstitution: uL,
    type: {
      PRIMITIVE: Av,
      OBJECT: aL,
      ARRAY: oL,
      PROMISE: lL,
      STRING_STREAM: cL,
      OBJECT_STREAM: hL
    }
  } = to(), pL = Array.from({ length: 2048 }).map((e, t) => uL.hasOwnProperty(t) ? 2 : t < 32 ? 6 : t < 128 ? 1 : 2);
  function Fv(e) {
    let t = 0, r = !1;
    for (let i = 0; i < e.length; i++) {
      let n = e.charCodeAt(i);
      if (n < 2048)
        t += pL[n];
      else if (nL(n)) {
        t += 6, r = !0;
        continue;
      } else sL(n) ? t = r ? t - 2 : t + 6 : t += 3;
      r = !1;
    }
    return t + 2;
  }
  s(Fv, "stringLength");
  function fL(e) {
    switch (typeof e) {
      case "string":
        return Fv(e);
      case "number":
        return Number.isFinite(e) ? String(e).length : 4;
      case "boolean":
        return e ? 4 : 5;
      case "undefined":
      case "object":
        return 4;
      /* null */
      default:
        return 0;
    }
  }
  s(fL, "primitiveLength");
  function dL(e) {
    return e = eL(e), typeof e == "string" ? e.length : 0;
  }
  s(dL, "spaceLength");
  Sv.exports = /* @__PURE__ */ s(function(t, r, i, n) {
    function u(v, x, C) {
      if (D)
        return;
      C = tL(v, x, C, r);
      let S = d(C);
      if (S !== Av && l.has(C)) {
        h.add(C), g += 4, n.continueOnCircular || (D = !0);
        return;
      }
      switch (S) {
        case Av:
          C !== void 0 || Array.isArray(v) ? g += fL(C) : v === m && (g += 9);
          break;
        case aL: {
          if (o.has(C)) {
            c.add(C), g += o.get(C);
            break;
          }
          let k = g, j = 0;
          g += 2, l.add(C);
          for (let w in C)
            if (hasOwnProperty.call(C, w) && (a === null || a.has(w))) {
              let A = g;
              u(C, w, C[w]), A !== g && (g += Fv(w) + 1, j++);
            }
          j > 1 && (g += j - 1), l.delete(C), i > 0 && j > 0 && (g += (1 + (l.size + 1) * i + 1) * j, g += 1 + l.size * i), o.set(C, g - k);
          break;
        }
        case oL: {
          if (o.has(C)) {
            c.add(C), g += o.get(C);
            break;
          }
          let k = g;
          g += 2, l.add(C);
          for (let j = 0; j < C.length; j++)
            u(C, j, C[j]);
          C.length > 1 && (g += C.length - 1), l.delete(C), i > 0 && C.length > 0 && (g += (1 + (l.size + 1) * i) * C.length, g += 1 + l.size *
          i), o.set(C, g - k);
          break;
        }
        case lL:
        case cL:
          p.add(C);
          break;
        case hL:
          g += 2, p.add(C);
          break;
      }
    }
    s(u, "walk");
    let a = null;
    r = ZN(r), Array.isArray(r) && (a = new Set(r), r = null), i = dL(i), n = n || {};
    let o = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Set(), c = /* @__PURE__ */ new Set(), h = /* @__PURE__ */ new Set(), p = /* @__PURE__ */ new Set(),
    d = n.async ? iL : rL, m = { "": t }, D = !1, g = 0;
    return u(m, "", t), {
      minLength: isNaN(g) ? 1 / 0 : g,
      circular: [...h],
      duplicate: [...c],
      async: [...p]
    };
  }, "jsonStringifyInfo");
});

// ../node_modules/@discoveryjs/json-ext/src/stringify-stream.js
var Lv = I((TX, Nv) => {
  var { Readable: mL } = require("stream"), {
    normalizeReplacer: DL,
    normalizeSpace: gL,
    replaceValue: xL,
    getTypeAsync: yL,
    type: {
      PRIMITIVE: EL,
      OBJECT: bL,
      ARRAY: vL,
      PROMISE: CL,
      STRING_STREAM: wL,
      OBJECT_STREAM: mf
    }
  } = to(), kv = /* @__PURE__ */ s(() => {
  }, "noop"), AL = Object.prototype.hasOwnProperty, FL = JSON.stringify("\uD800") === '"\\ud800"' ? JSON.stringify : (e) => JSON.stringify(e).
  replace(
    new RegExp("\\p{Surrogate}", "gu"),
    (t) => `\\u${t.charCodeAt(0).toString(16)}`
  );
  function SL() {
    this.push(this._stack.value), this.popStack();
  }
  s(SL, "push");
  function _L(e) {
    switch (typeof e) {
      case "string":
        this.push(this.encodeString(e));
        break;
      case "number":
        this.push(Number.isFinite(e) ? this.encodeNumber(e) : "null");
        break;
      case "boolean":
        this.push(e ? "true" : "false");
        break;
      case "undefined":
      case "object":
        this.push("null");
        break;
      default:
        this.destroy(new TypeError(`Do not know how to serialize a ${e.constructor && e.constructor.name || typeof e}`));
    }
  }
  s(_L, "pushPrimitive");
  function Iv(e) {
    let t = this._stack;
    t.first ? this.push(",") : t.first = !0, this.space ? this.push(`
${this.space.repeat(this._depth)}${this.encodeString(e)}: `) : this.push(this.encodeString(e) + ":");
  }
  s(Iv, "processObjectEntry");
  function Bv() {
    let e = this._stack;
    if (e.index === e.keys.length) {
      this.space && e.first ? this.push(`
${this.space.repeat(this._depth - 1)}}`) : this.push("}"), this.popStack();
      return;
    }
    let t = e.keys[e.index];
    this.processValue(e.value, t, e.value[t], Iv), e.index++;
  }
  s(Bv, "processObject");
  function Ov(e) {
    e !== 0 && this.push(","), this.space && this.push(`
${this.space.repeat(this._depth)}`);
  }
  s(Ov, "processArrayItem");
  function Tv() {
    let e = this._stack;
    if (e.index === e.value.length) {
      this.space && e.index > 0 ? this.push(`
${this.space.repeat(this._depth - 1)}]`) : this.push("]"), this.popStack();
      return;
    }
    this.processValue(e.value, e.index, e.value[e.index], Ov), e.index++;
  }
  s(Tv, "processArray");
  function Rv(e) {
    return function() {
      let t = this._stack, r = t.value.read(this._readSize);
      r !== null ? (t.first = !1, e.call(this, r, t)) : t.first && !t.value._readableState.reading || t.ended ? this.popStack() : (t.first =
      !0, t.awaiting = !0);
    };
  }
  s(Rv, "createStreamReader");
  var Pv = Rv(function(e, t) {
    this.processValue(t.value, t.index, e, Ov), t.index++;
  }), kL = Rv(function(e) {
    this.push(e);
  }), Df = class extends mL {
    static {
      s(this, "JsonStringifyStream");
    }
    constructor(t, r, i) {
      if (super({
        autoDestroy: !0
      }), this.getKeys = Object.keys, this.replacer = DL(r), Array.isArray(this.replacer)) {
        let n = this.replacer;
        this.getKeys = (u) => n.filter((a) => AL.call(u, a)), this.replacer = null;
      }
      this.space = gL(i), this._depth = 0, this.error = null, this._processing = !1, this._ended = !1, this._readSize = 0, this._buffer = "",
      this._stack = null, this._visited = /* @__PURE__ */ new WeakSet(), this.pushStack({
        handler: /* @__PURE__ */ s(() => {
          this.popStack(), this.processValue({ "": t }, "", t, kv);
        }, "handler")
      });
    }
    encodeString(t) {
      return /[^\x20-\uD799]|[\x22\x5c]/.test(t) ? FL(t) : '"' + t + '"';
    }
    encodeNumber(t) {
      return t;
    }
    processValue(t, r, i, n) {
      i = xL(t, r, i, this.replacer);
      let u = yL(i);
      switch (u) {
        case EL:
          (n !== Iv || i !== void 0) && (n.call(this, r), _L.call(this, i));
          break;
        case bL:
          if (n.call(this, r), this._visited.has(i))
            return this.destroy(new TypeError("Converting circular structure to JSON"));
          this._visited.add(i), this._depth++, this.push("{"), this.pushStack({
            handler: Bv,
            value: i,
            index: 0,
            first: !1,
            keys: this.getKeys(i)
          });
          break;
        case vL:
          if (n.call(this, r), this._visited.has(i))
            return this.destroy(new TypeError("Converting circular structure to JSON"));
          this._visited.add(i), this.push("["), this.pushStack({
            handler: Tv,
            value: i,
            index: 0
          }), this._depth++;
          break;
        case CL:
          this.pushStack({
            handler: kv,
            awaiting: !0
          }), Promise.resolve(i).then((l) => {
            this.popStack(), this.processValue(t, r, l, n), this.processStack();
          }).catch((l) => {
            this.destroy(l);
          });
          break;
        case wL:
        case mf:
          if (n.call(this, r), i.readableEnded || i._readableState.endEmitted)
            return this.destroy(new Error("Readable Stream has ended before it was serialized. All stream data have been lost"));
          if (i.readableFlowing)
            return this.destroy(new Error("Readable Stream is in flowing mode, data may have been lost. Trying to pause stream."));
          u === mf && (this.push("["), this.pushStack({
            handler: SL,
            value: this.space ? `
` + this.space.repeat(this._depth) + "]" : "]"
          }), this._depth++);
          let a = this.pushStack({
            handler: u === mf ? Pv : kL,
            value: i,
            index: 0,
            first: !1,
            ended: !1,
            awaiting: !i.readable || i.readableLength === 0
          }), o = /* @__PURE__ */ s(() => {
            a.awaiting && (a.awaiting = !1, this.processStack());
          }, "continueProcessing");
          i.once("error", (l) => this.destroy(l)), i.once("end", () => {
            a.ended = !0, o();
          }), i.on("readable", o);
          break;
      }
    }
    pushStack(t) {
      return t.prev = this._stack, this._stack = t;
    }
    popStack() {
      let { handler: t, value: r } = this._stack;
      (t === Bv || t === Tv || t === Pv) && (this._visited.delete(r), this._depth--), this._stack = this._stack.prev;
    }
    processStack() {
      if (!(this._processing || this._ended)) {
        try {
          for (this._processing = !0; this._stack !== null && !this._stack.awaiting; )
            if (this._stack.handler.call(this), !this._processing)
              return;
          this._processing = !1;
        } catch (t) {
          this.destroy(t);
          return;
        }
        this._stack === null && !this._ended && (this._finish(), this.push(null));
      }
    }
    push(t) {
      if (t !== null) {
        if (this._buffer += t, this._buffer.length < this._readSize)
          return;
        t = this._buffer, this._buffer = "", this._processing = !1;
      }
      super.push(t);
    }
    _read(t) {
      this._readSize = t || this.readableHighWaterMark, this.processStack();
    }
    _finish() {
      this._ended = !0, this._processing = !1, this._stack = null, this._visited = null, this._buffer && this._buffer.length && super.push(this.
      _buffer), this._buffer = "";
    }
    _destroy(t, r) {
      this.error = this.error || t, this._finish(), r(t);
    }
  };
  Nv.exports = /* @__PURE__ */ s(function(t, r, i) {
    return new Df(t, r, i);
  }, "createJsonStringifyStream");
});

// ../node_modules/@discoveryjs/json-ext/src/text-decoder.js
var jv = I((IX, Mv) => {
  Mv.exports = require("util").TextDecoder;
});

// ../node_modules/@discoveryjs/json-ext/src/parse-chunked.js
var Vv = I((OX, $v) => {
  var { isReadableStream: BL } = to(), TL = jv(), Ys = 1, PL = 2, IL = new TL();
  function qv(e) {
    return e !== null && typeof e == "object";
  }
  s(qv, "isObject");
  function gf(e, t) {
    return e.name === "SyntaxError" && t.jsonParseOffset && (e.message = e.message.replace(
      /at position (\d+)/,
      (r, i) => "at position " + (Number(i) + t.jsonParseOffset)
    )), e;
  }
  s(gf, "adjustPosition");
  function OL(e, t) {
    let r = e.length;
    e.length += t.length;
    for (let i = 0; i < t.length; i++)
      e[r + i] = t[i];
  }
  s(OL, "append");
  $v.exports = function(e) {
    let t = new xf();
    if (qv(e) && BL(e))
      return new Promise((r, i) => {
        e.on("data", (n) => {
          try {
            t.push(n);
          } catch (u) {
            i(gf(u, t)), t = null;
          }
        }).on("error", (n) => {
          t = null, i(n);
        }).on("end", () => {
          try {
            r(t.finish());
          } catch (n) {
            i(gf(n, t));
          } finally {
            t = null;
          }
        });
      });
    if (typeof e == "function") {
      let r = e();
      if (qv(r) && (Symbol.iterator in r || Symbol.asyncIterator in r))
        return new Promise(async (i, n) => {
          try {
            for await (let u of r)
              t.push(u);
            i(t.finish());
          } catch (u) {
            n(gf(u, t));
          } finally {
            t = null;
          }
        });
    }
    throw new Error(
      "Chunk emitter should be readable stream, generator, async generator or function returning an iterable object"
    );
  };
  var xf = class {
    static {
      s(this, "ChunkParser");
    }
    constructor() {
      this.value = void 0, this.valueStack = null, this.stack = new Array(100), this.lastFlushDepth = 0, this.flushDepth = 0, this.stateString =
      !1, this.stateStringEscape = !1, this.pendingByteSeq = null, this.pendingChunk = null, this.chunkOffset = 0, this.jsonParseOffset = 0;
    }
    parseAndAppend(t, r) {
      this.stack[this.lastFlushDepth - 1] === Ys ? (r && (this.jsonParseOffset--, t = "{" + t + "}"), Object.assign(this.valueStack.value, JSON.
      parse(t))) : (r && (this.jsonParseOffset--, t = "[" + t + "]"), OL(this.valueStack.value, JSON.parse(t)));
    }
    prepareAddition(t) {
      let { value: r } = this.valueStack;
      if (Array.isArray(r) ? r.length !== 0 : Object.keys(r).length !== 0) {
        if (t[0] === ",")
          return this.jsonParseOffset++, t.slice(1);
        if (t[0] !== "}" && t[0] !== "]")
          return this.jsonParseOffset -= 3, "[[]" + t;
      }
      return t;
    }
    flush(t, r, i) {
      let n = t.slice(r, i);
      if (this.jsonParseOffset = this.chunkOffset + r, this.pendingChunk !== null && (n = this.pendingChunk + n, this.jsonParseOffset -= this.
      pendingChunk.length, this.pendingChunk = null), this.flushDepth === this.lastFlushDepth)
        this.flushDepth > 0 ? this.parseAndAppend(this.prepareAddition(n), !0) : (this.value = JSON.parse(n), this.valueStack = {
          value: this.value,
          prev: null
        });
      else if (this.flushDepth > this.lastFlushDepth) {
        for (let u = this.flushDepth - 1; u >= this.lastFlushDepth; u--)
          n += this.stack[u] === Ys ? "}" : "]";
        this.lastFlushDepth === 0 ? (this.value = JSON.parse(n), this.valueStack = {
          value: this.value,
          prev: null
        }) : this.parseAndAppend(this.prepareAddition(n), !0);
        for (let u = this.lastFlushDepth || 1; u < this.flushDepth; u++) {
          let a = this.valueStack.value;
          if (this.stack[u - 1] === Ys) {
            let o;
            for (o in a) ;
            a = a[o];
          } else
            a = a[a.length - 1];
          this.valueStack = {
            value: a,
            prev: this.valueStack
          };
        }
      } else {
        n = this.prepareAddition(n);
        for (let u = this.lastFlushDepth - 1; u >= this.flushDepth; u--)
          this.jsonParseOffset--, n = (this.stack[u] === Ys ? "{" : "[") + n;
        this.parseAndAppend(n, !1);
        for (let u = this.lastFlushDepth - 1; u >= this.flushDepth; u--)
          this.valueStack = this.valueStack.prev;
      }
      this.lastFlushDepth = this.flushDepth;
    }
    push(t) {
      if (typeof t != "string") {
        if (this.pendingByteSeq !== null) {
          let u = t;
          t = new Uint8Array(this.pendingByteSeq.length + u.length), t.set(this.pendingByteSeq), t.set(u, this.pendingByteSeq.length), this.
          pendingByteSeq = null;
        }
        if (t[t.length - 1] > 127)
          for (let u = 0; u < t.length; u++) {
            let a = t[t.length - 1 - u];
            if (a >> 6 === 3) {
              u++, (u !== 4 && a >> 3 === 30 || u !== 3 && a >> 4 === 14 || u !== 2 && a >> 5 === 6) && (this.pendingByteSeq = t.slice(t.length -
              u), t = t.slice(0, -u));
              break;
            }
          }
        t = IL.decode(t);
      }
      let r = t.length, i = 0, n = 0;
      e: for (let u = 0; u < r; u++) {
        if (this.stateString) {
          for (; u < r; u++)
            if (this.stateStringEscape)
              this.stateStringEscape = !1;
            else
              switch (t.charCodeAt(u)) {
                case 34:
                  this.stateString = !1;
                  continue e;
                case 92:
                  this.stateStringEscape = !0;
              }
          break;
        }
        switch (t.charCodeAt(u)) {
          case 34:
            this.stateString = !0, this.stateStringEscape = !1;
            break;
          case 44:
            n = u;
            break;
          case 123:
            n = u + 1, this.stack[this.flushDepth++] = Ys;
            break;
          case 91:
            n = u + 1, this.stack[this.flushDepth++] = PL;
            break;
          case 93:
          /* ] */
          case 125:
            n = u + 1, this.flushDepth--, this.flushDepth < this.lastFlushDepth && (this.flush(t, i, n), i = n);
            break;
          case 9:
          /* \t */
          case 10:
          /* \n */
          case 13:
          /* \r */
          case 32:
            i === u && i++, n === u && n++;
            break;
        }
      }
      n > i && this.flush(t, i, n), n < r && (this.pendingChunk !== null ? this.pendingChunk += t : this.pendingChunk = t.slice(n, r)), this.
      chunkOffset += r;
    }
    finish() {
      return this.pendingChunk !== null && (this.flush("", 0, 0), this.pendingChunk = null), this.value;
    }
  };
});

// ../node_modules/@discoveryjs/json-ext/src/index.js
var zv = I((NX, Uv) => {
  Uv.exports = {
    version: vv(),
    stringifyInfo: _v(),
    stringifyStream: Lv(),
    parseChunked: Vv()
  };
});

// ../node_modules/graceful-fs/polyfills.js
var Kv = I((WX, Yv) => {
  var Bi = require("constants"), RL = process.cwd, io = null, NL = process.env.GRACEFUL_FS_PLATFORM || process.platform;
  process.cwd = function() {
    return io || (io = RL.call(process)), io;
  };
  try {
    process.cwd();
  } catch {
  }
  typeof process.chdir == "function" && (vf = process.chdir, process.chdir = function(e) {
    io = null, vf.call(process, e);
  }, Object.setPrototypeOf && Object.setPrototypeOf(process.chdir, vf));
  var vf;
  Yv.exports = LL;
  function LL(e) {
    Bi.hasOwnProperty("O_SYMLINK") && process.version.match(/^v0\.6\.[0-2]|^v0\.5\./) && t(e), e.lutimes || r(e), e.chown = u(e.chown), e.fchown =
    u(e.fchown), e.lchown = u(e.lchown), e.chmod = i(e.chmod), e.fchmod = i(e.fchmod), e.lchmod = i(e.lchmod), e.chownSync = a(e.chownSync),
    e.fchownSync = a(e.fchownSync), e.lchownSync = a(e.lchownSync), e.chmodSync = n(e.chmodSync), e.fchmodSync = n(e.fchmodSync), e.lchmodSync =
    n(e.lchmodSync), e.stat = o(e.stat), e.fstat = o(e.fstat), e.lstat = o(e.lstat), e.statSync = l(e.statSync), e.fstatSync = l(e.fstatSync),
    e.lstatSync = l(e.lstatSync), e.chmod && !e.lchmod && (e.lchmod = function(h, p, d) {
      d && process.nextTick(d);
    }, e.lchmodSync = function() {
    }), e.chown && !e.lchown && (e.lchown = function(h, p, d, m) {
      m && process.nextTick(m);
    }, e.lchownSync = function() {
    }), NL === "win32" && (e.rename = typeof e.rename != "function" ? e.rename : function(h) {
      function p(d, m, D) {
        var g = Date.now(), v = 0;
        h(d, m, /* @__PURE__ */ s(function x(C) {
          if (C && (C.code === "EACCES" || C.code === "EPERM" || C.code === "EBUSY") && Date.now() - g < 6e4) {
            setTimeout(function() {
              e.stat(m, function(S, k) {
                S && S.code === "ENOENT" ? h(d, m, x) : D(C);
              });
            }, v), v < 100 && (v += 10);
            return;
          }
          D && D(C);
        }, "CB"));
      }
      return s(p, "rename"), Object.setPrototypeOf && Object.setPrototypeOf(p, h), p;
    }(e.rename)), e.read = typeof e.read != "function" ? e.read : function(h) {
      function p(d, m, D, g, v, x) {
        var C;
        if (x && typeof x == "function") {
          var S = 0;
          C = /* @__PURE__ */ s(function(k, j, w) {
            if (k && k.code === "EAGAIN" && S < 10)
              return S++, h.call(e, d, m, D, g, v, C);
            x.apply(this, arguments);
          }, "callback");
        }
        return h.call(e, d, m, D, g, v, C);
      }
      return s(p, "read"), Object.setPrototypeOf && Object.setPrototypeOf(p, h), p;
    }(e.read), e.readSync = typeof e.readSync != "function" ? e.readSync : /* @__PURE__ */ function(h) {
      return function(p, d, m, D, g) {
        for (var v = 0; ; )
          try {
            return h.call(e, p, d, m, D, g);
          } catch (x) {
            if (x.code === "EAGAIN" && v < 10) {
              v++;
              continue;
            }
            throw x;
          }
      };
    }(e.readSync);
    function t(h) {
      h.lchmod = function(p, d, m) {
        h.open(
          p,
          Bi.O_WRONLY | Bi.O_SYMLINK,
          d,
          function(D, g) {
            if (D) {
              m && m(D);
              return;
            }
            h.fchmod(g, d, function(v) {
              h.close(g, function(x) {
                m && m(v || x);
              });
            });
          }
        );
      }, h.lchmodSync = function(p, d) {
        var m = h.openSync(p, Bi.O_WRONLY | Bi.O_SYMLINK, d), D = !0, g;
        try {
          g = h.fchmodSync(m, d), D = !1;
        } finally {
          if (D)
            try {
              h.closeSync(m);
            } catch {
            }
          else
            h.closeSync(m);
        }
        return g;
      };
    }
    s(t, "patchLchmod");
    function r(h) {
      Bi.hasOwnProperty("O_SYMLINK") && h.futimes ? (h.lutimes = function(p, d, m, D) {
        h.open(p, Bi.O_SYMLINK, function(g, v) {
          if (g) {
            D && D(g);
            return;
          }
          h.futimes(v, d, m, function(x) {
            h.close(v, function(C) {
              D && D(x || C);
            });
          });
        });
      }, h.lutimesSync = function(p, d, m) {
        var D = h.openSync(p, Bi.O_SYMLINK), g, v = !0;
        try {
          g = h.futimesSync(D, d, m), v = !1;
        } finally {
          if (v)
            try {
              h.closeSync(D);
            } catch {
            }
          else
            h.closeSync(D);
        }
        return g;
      }) : h.futimes && (h.lutimes = function(p, d, m, D) {
        D && process.nextTick(D);
      }, h.lutimesSync = function() {
      });
    }
    s(r, "patchLutimes");
    function i(h) {
      return h && function(p, d, m) {
        return h.call(e, p, d, function(D) {
          c(D) && (D = null), m && m.apply(this, arguments);
        });
      };
    }
    s(i, "chmodFix");
    function n(h) {
      return h && function(p, d) {
        try {
          return h.call(e, p, d);
        } catch (m) {
          if (!c(m)) throw m;
        }
      };
    }
    s(n, "chmodFixSync");
    function u(h) {
      return h && function(p, d, m, D) {
        return h.call(e, p, d, m, function(g) {
          c(g) && (g = null), D && D.apply(this, arguments);
        });
      };
    }
    s(u, "chownFix");
    function a(h) {
      return h && function(p, d, m) {
        try {
          return h.call(e, p, d, m);
        } catch (D) {
          if (!c(D)) throw D;
        }
      };
    }
    s(a, "chownFixSync");
    function o(h) {
      return h && function(p, d, m) {
        typeof d == "function" && (m = d, d = null);
        function D(g, v) {
          v && (v.uid < 0 && (v.uid += 4294967296), v.gid < 0 && (v.gid += 4294967296)), m && m.apply(this, arguments);
        }
        return s(D, "callback"), d ? h.call(e, p, d, D) : h.call(e, p, D);
      };
    }
    s(o, "statFix");
    function l(h) {
      return h && function(p, d) {
        var m = d ? h.call(e, p, d) : h.call(e, p);
        return m && (m.uid < 0 && (m.uid += 4294967296), m.gid < 0 && (m.gid += 4294967296)), m;
      };
    }
    s(l, "statFixSync");
    function c(h) {
      if (!h || h.code === "ENOSYS")
        return !0;
      var p = !process.getuid || process.getuid() !== 0;
      return !!(p && (h.code === "EINVAL" || h.code === "EPERM"));
    }
    s(c, "chownErOk");
  }
  s(LL, "patch");
});

// ../node_modules/graceful-fs/legacy-streams.js
var eC = I((GX, Zv) => {
  var Qv = require("stream").Stream;
  Zv.exports = ML;
  function ML(e) {
    return {
      ReadStream: t,
      WriteStream: r
    };
    function t(i, n) {
      if (!(this instanceof t)) return new t(i, n);
      Qv.call(this);
      var u = this;
      this.path = i, this.fd = null, this.readable = !0, this.paused = !1, this.flags = "r", this.mode = 438, this.bufferSize = 64 * 1024, n =
      n || {};
      for (var a = Object.keys(n), o = 0, l = a.length; o < l; o++) {
        var c = a[o];
        this[c] = n[c];
      }
      if (this.encoding && this.setEncoding(this.encoding), this.start !== void 0) {
        if (typeof this.start != "number")
          throw TypeError("start must be a Number");
        if (this.end === void 0)
          this.end = 1 / 0;
        else if (typeof this.end != "number")
          throw TypeError("end must be a Number");
        if (this.start > this.end)
          throw new Error("start must be <= end");
        this.pos = this.start;
      }
      if (this.fd !== null) {
        process.nextTick(function() {
          u._read();
        });
        return;
      }
      e.open(this.path, this.flags, this.mode, function(h, p) {
        if (h) {
          u.emit("error", h), u.readable = !1;
          return;
        }
        u.fd = p, u.emit("open", p), u._read();
      });
    }
    function r(i, n) {
      if (!(this instanceof r)) return new r(i, n);
      Qv.call(this), this.path = i, this.fd = null, this.writable = !0, this.flags = "w", this.encoding = "binary", this.mode = 438, this.bytesWritten =
      0, n = n || {};
      for (var u = Object.keys(n), a = 0, o = u.length; a < o; a++) {
        var l = u[a];
        this[l] = n[l];
      }
      if (this.start !== void 0) {
        if (typeof this.start != "number")
          throw TypeError("start must be a Number");
        if (this.start < 0)
          throw new Error("start must be >= zero");
        this.pos = this.start;
      }
      this.busy = !1, this._queue = [], this.fd === null && (this._open = e.open, this._queue.push([this._open, this.path, this.flags, this.
      mode, void 0]), this.flush());
    }
  }
  s(ML, "legacy");
});

// ../node_modules/graceful-fs/clone.js
var rC = I((YX, tC) => {
  "use strict";
  tC.exports = qL;
  var jL = Object.getPrototypeOf || function(e) {
    return e.__proto__;
  };
  function qL(e) {
    if (e === null || typeof e != "object")
      return e;
    if (e instanceof Object)
      var t = { __proto__: jL(e) };
    else
      var t = /* @__PURE__ */ Object.create(null);
    return Object.getOwnPropertyNames(e).forEach(function(r) {
      Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));
    }), t;
  }
  s(qL, "clone");
});

// ../node_modules/graceful-fs/graceful-fs.js
var uC = I((QX, Af) => {
  var ze = require("fs"), $L = Kv(), VL = eC(), UL = rC(), no = require("util"), ct, uo;
  typeof Symbol == "function" && typeof Symbol.for == "function" ? (ct = Symbol.for("graceful-fs.queue"), uo = Symbol.for("graceful-fs.previ\
ous")) : (ct = "___graceful-fs.queue", uo = "___graceful-fs.previous");
  function zL() {
  }
  s(zL, "noop");
  function sC(e, t) {
    Object.defineProperty(e, ct, {
      get: /* @__PURE__ */ s(function() {
        return t;
      }, "get")
    });
  }
  s(sC, "publishQueue");
  var sn = zL;
  no.debuglog ? sn = no.debuglog("gfs4") : /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && (sn = /* @__PURE__ */ s(function() {
    var e = no.format.apply(no, arguments);
    e = "GFS4: " + e.split(/\n/).join(`
GFS4: `), console.error(e);
  }, "debug"));
  ze[ct] || (iC = global[ct] || [], sC(ze, iC), ze.close = function(e) {
    function t(r, i) {
      return e.call(ze, r, function(n) {
        n || nC(), typeof i == "function" && i.apply(this, arguments);
      });
    }
    return s(t, "close"), Object.defineProperty(t, uo, {
      value: e
    }), t;
  }(ze.close), ze.closeSync = function(e) {
    function t(r) {
      e.apply(ze, arguments), nC();
    }
    return s(t, "closeSync"), Object.defineProperty(t, uo, {
      value: e
    }), t;
  }(ze.closeSync), /\bgfs4\b/i.test(process.env.NODE_DEBUG || "") && process.on("exit", function() {
    sn(ze[ct]), require("assert").equal(ze[ct].length, 0);
  }));
  var iC;
  global[ct] || sC(global, ze[ct]);
  Af.exports = Cf(UL(ze));
  process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH && !ze.__patched && (Af.exports = Cf(ze), ze.__patched = !0);
  function Cf(e) {
    $L(e), e.gracefulify = Cf, e.createReadStream = j, e.createWriteStream = w;
    var t = e.readFile;
    e.readFile = r;
    function r(B, $, L) {
      return typeof $ == "function" && (L = $, $ = null), V(B, $, L);
      function V(U, X, R, N) {
        return t(U, X, function(z) {
          z && (z.code === "EMFILE" || z.code === "ENFILE") ? Jn([V, [U, X, R], z, N || Date.now(), Date.now()]) : typeof R == "function" &&
          R.apply(this, arguments);
        });
      }
      s(V, "go$readFile");
    }
    s(r, "readFile");
    var i = e.writeFile;
    e.writeFile = n;
    function n(B, $, L, V) {
      return typeof L == "function" && (V = L, L = null), U(B, $, L, V);
      function U(X, R, N, z, Y) {
        return i(X, R, N, function(ee) {
          ee && (ee.code === "EMFILE" || ee.code === "ENFILE") ? Jn([U, [X, R, N, z], ee, Y || Date.now(), Date.now()]) : typeof z == "funct\
ion" && z.apply(this, arguments);
        });
      }
      s(U, "go$writeFile");
    }
    s(n, "writeFile");
    var u = e.appendFile;
    u && (e.appendFile = a);
    function a(B, $, L, V) {
      return typeof L == "function" && (V = L, L = null), U(B, $, L, V);
      function U(X, R, N, z, Y) {
        return u(X, R, N, function(ee) {
          ee && (ee.code === "EMFILE" || ee.code === "ENFILE") ? Jn([U, [X, R, N, z], ee, Y || Date.now(), Date.now()]) : typeof z == "funct\
ion" && z.apply(this, arguments);
        });
      }
      s(U, "go$appendFile");
    }
    s(a, "appendFile");
    var o = e.copyFile;
    o && (e.copyFile = l);
    function l(B, $, L, V) {
      return typeof L == "function" && (V = L, L = 0), U(B, $, L, V);
      function U(X, R, N, z, Y) {
        return o(X, R, N, function(ee) {
          ee && (ee.code === "EMFILE" || ee.code === "ENFILE") ? Jn([U, [X, R, N, z], ee, Y || Date.now(), Date.now()]) : typeof z == "funct\
ion" && z.apply(this, arguments);
        });
      }
      s(U, "go$copyFile");
    }
    s(l, "copyFile");
    var c = e.readdir;
    e.readdir = p;
    var h = /^v[0-5]\./;
    function p(B, $, L) {
      typeof $ == "function" && (L = $, $ = null);
      var V = h.test(process.version) ? /* @__PURE__ */ s(function(R, N, z, Y) {
        return c(R, U(
          R,
          N,
          z,
          Y
        ));
      }, "go$readdir") : /* @__PURE__ */ s(function(R, N, z, Y) {
        return c(R, N, U(
          R,
          N,
          z,
          Y
        ));
      }, "go$readdir");
      return V(B, $, L);
      function U(X, R, N, z) {
        return function(Y, ee) {
          Y && (Y.code === "EMFILE" || Y.code === "ENFILE") ? Jn([
            V,
            [X, R, N],
            Y,
            z || Date.now(),
            Date.now()
          ]) : (ee && ee.sort && ee.sort(), typeof N == "function" && N.call(this, Y, ee));
        };
      }
    }
    if (s(p, "readdir"), process.version.substr(0, 4) === "v0.8") {
      var d = VL(e);
      x = d.ReadStream, S = d.WriteStream;
    }
    var m = e.ReadStream;
    m && (x.prototype = Object.create(m.prototype), x.prototype.open = C);
    var D = e.WriteStream;
    D && (S.prototype = Object.create(D.prototype), S.prototype.open = k), Object.defineProperty(e, "ReadStream", {
      get: /* @__PURE__ */ s(function() {
        return x;
      }, "get"),
      set: /* @__PURE__ */ s(function(B) {
        x = B;
      }, "set"),
      enumerable: !0,
      configurable: !0
    }), Object.defineProperty(e, "WriteStream", {
      get: /* @__PURE__ */ s(function() {
        return S;
      }, "get"),
      set: /* @__PURE__ */ s(function(B) {
        S = B;
      }, "set"),
      enumerable: !0,
      configurable: !0
    });
    var g = x;
    Object.defineProperty(e, "FileReadStream", {
      get: /* @__PURE__ */ s(function() {
        return g;
      }, "get"),
      set: /* @__PURE__ */ s(function(B) {
        g = B;
      }, "set"),
      enumerable: !0,
      configurable: !0
    });
    var v = S;
    Object.defineProperty(e, "FileWriteStream", {
      get: /* @__PURE__ */ s(function() {
        return v;
      }, "get"),
      set: /* @__PURE__ */ s(function(B) {
        v = B;
      }, "set"),
      enumerable: !0,
      configurable: !0
    });
    function x(B, $) {
      return this instanceof x ? (m.apply(this, arguments), this) : x.apply(Object.create(x.prototype), arguments);
    }
    s(x, "ReadStream");
    function C() {
      var B = this;
      T(B.path, B.flags, B.mode, function($, L) {
        $ ? (B.autoClose && B.destroy(), B.emit("error", $)) : (B.fd = L, B.emit("open", L), B.read());
      });
    }
    s(C, "ReadStream$open");
    function S(B, $) {
      return this instanceof S ? (D.apply(this, arguments), this) : S.apply(Object.create(S.prototype), arguments);
    }
    s(S, "WriteStream");
    function k() {
      var B = this;
      T(B.path, B.flags, B.mode, function($, L) {
        $ ? (B.destroy(), B.emit("error", $)) : (B.fd = L, B.emit("open", L));
      });
    }
    s(k, "WriteStream$open");
    function j(B, $) {
      return new e.ReadStream(B, $);
    }
    s(j, "createReadStream");
    function w(B, $) {
      return new e.WriteStream(B, $);
    }
    s(w, "createWriteStream");
    var A = e.open;
    e.open = T;
    function T(B, $, L, V) {
      return typeof L == "function" && (V = L, L = null), U(B, $, L, V);
      function U(X, R, N, z, Y) {
        return A(X, R, N, function(ee, O) {
          ee && (ee.code === "EMFILE" || ee.code === "ENFILE") ? Jn([U, [X, R, N, z], ee, Y || Date.now(), Date.now()]) : typeof z == "funct\
ion" && z.apply(this, arguments);
        });
      }
      s(U, "go$open");
    }
    return s(T, "open"), e;
  }
  s(Cf, "patch");
  function Jn(e) {
    sn("ENQUEUE", e[0].name, e[1]), ze[ct].push(e), wf();
  }
  s(Jn, "enqueue");
  var so;
  function nC() {
    for (var e = Date.now(), t = 0; t < ze[ct].length; ++t)
      ze[ct][t].length > 2 && (ze[ct][t][3] = e, ze[ct][t][4] = e);
    wf();
  }
  s(nC, "resetQueue");
  function wf() {
    if (clearTimeout(so), so = void 0, ze[ct].length !== 0) {
      var e = ze[ct].shift(), t = e[0], r = e[1], i = e[2], n = e[3], u = e[4];
      if (n === void 0)
        sn("RETRY", t.name, r), t.apply(null, r);
      else if (Date.now() - n >= 6e4) {
        sn("TIMEOUT", t.name, r);
        var a = r.pop();
        typeof a == "function" && a.call(null, i);
      } else {
        var o = Date.now() - u, l = Math.max(u - n, 1), c = Math.min(l * 1.2, 100);
        o >= c ? (sn("RETRY", t.name, r), t.apply(null, r.concat([n]))) : ze[ct].push(e);
      }
      so === void 0 && (so = setTimeout(wf, 0));
    }
  }
  s(wf, "retry");
});

// ../node_modules/watchpack/lib/reducePlan.js
var oC = I((eY, aC) => {
  "use strict";
  var HL = require("path");
  aC.exports = (e, t) => {
    let r = /* @__PURE__ */ new Map();
    for (let [u, a] of e)
      r.set(u, {
        filePath: u,
        parent: void 0,
        children: void 0,
        entries: 1,
        active: !0,
        value: a
      });
    let i = r.size;
    for (let u of r.values()) {
      let a = HL.dirname(u.filePath);
      if (a !== u.filePath) {
        let o = r.get(a);
        if (o === void 0)
          o = {
            filePath: a,
            parent: void 0,
            children: [u],
            entries: u.entries,
            active: !1,
            value: void 0
          }, r.set(a, o), u.parent = o;
        else {
          u.parent = o, o.children === void 0 ? o.children = [u] : o.children.push(u);
          do
            o.entries += u.entries, o = o.parent;
          while (o);
        }
      }
    }
    for (; i > t; ) {
      let u = i - t, a, o = 1 / 0;
      for (let p of r.values()) {
        if (p.entries <= 1 || !p.children || !p.parent || p.children.length === 0 || p.children.length === 1 && !p.value) continue;
        let d = p.entries - 1 >= u ? p.entries - 1 - u : u - p.entries + 1 + t * 0.3;
        d < o && (a = p, o = d);
      }
      if (!a) break;
      let l = a.entries - 1;
      a.active = !0, a.entries = 1, i -= l;
      let c = a.parent;
      for (; c; )
        c.entries -= l, c = c.parent;
      let h = new Set(a.children);
      for (let p of h)
        if (p.active = !1, p.entries = 0, p.children)
          for (let d of p.children) h.add(d);
    }
    let n = /* @__PURE__ */ new Map();
    for (let u of r.values()) {
      if (!u.active) continue;
      let a = /* @__PURE__ */ new Map(), o = /* @__PURE__ */ new Set([u]);
      for (let l of o)
        if (!(l.active && l !== u)) {
          if (l.value)
            if (Array.isArray(l.value))
              for (let c of l.value)
                a.set(c, l.filePath);
            else
              a.set(l.value, l.filePath);
          if (l.children)
            for (let c of l.children)
              o.add(c);
        }
      n.set(u.filePath, a);
    }
    return n;
  };
});

// ../node_modules/watchpack/lib/watchEventSource.js
var Tf = I((lo) => {
  "use strict";
  var cC = require("fs"), oo = require("path"), { EventEmitter: WL } = require("events"), JL = oC(), hC = require("os").platform() === "darw\
in", GL = require("os").platform() === "win32", XL = hC || GL, lC = +process.env.WATCHPACK_WATCHER_LIMIT || (hC ? 2e3 : 1e4), ao = !!process.
  env.WATCHPACK_RECURSIVE_WATCHER_LOGGING, Sf = !1, Gn = 0, Ks = /* @__PURE__ */ new Map(), Qs = /* @__PURE__ */ new Map(), Zs = /* @__PURE__ */ new Map(),
  un = /* @__PURE__ */ new Map(), _f = class {
    static {
      s(this, "DirectWatcher");
    }
    constructor(t) {
      this.filePath = t, this.watchers = /* @__PURE__ */ new Set(), this.watcher = void 0;
      try {
        let r = cC.watch(t);
        this.watcher = r, r.on("change", (i, n) => {
          for (let u of this.watchers)
            u.emit("change", i, n);
        }), r.on("error", (i) => {
          for (let n of this.watchers)
            n.emit("error", i);
        });
      } catch (r) {
        process.nextTick(() => {
          for (let i of this.watchers)
            i.emit("error", r);
        });
      }
      Gn++;
    }
    add(t) {
      un.set(t, this), this.watchers.add(t);
    }
    remove(t) {
      this.watchers.delete(t), this.watchers.size === 0 && (Zs.delete(this.filePath), Gn--, this.watcher && this.watcher.close());
    }
    getWatchers() {
      return this.watchers;
    }
  }, kf = class {
    static {
      s(this, "RecursiveWatcher");
    }
    constructor(t) {
      this.rootPath = t, this.mapWatcherToPath = /* @__PURE__ */ new Map(), this.mapPathToWatchers = /* @__PURE__ */ new Map(), this.watcher =
      void 0;
      try {
        let r = cC.watch(t, {
          recursive: !0
        });
        this.watcher = r, r.on("change", (i, n) => {
          if (n) {
            let u = oo.dirname(n), a = this.mapPathToWatchers.get(u);
            if (ao && process.stderr.write(
              `[watchpack] dispatch ${i} event in recursive watcher (${this.rootPath}) for '${n}' to ${a ? a.size : 0} watchers
`
            ), a === void 0) return;
            for (let o of a)
              o.emit("change", i, oo.basename(n));
          } else {
            ao && process.stderr.write(
              `[watchpack] dispatch ${i} event in recursive watcher (${this.rootPath}) to all watchers
`
            );
            for (let u of this.mapWatcherToPath.keys())
              u.emit("change", i);
          }
        }), r.on("error", (i) => {
          for (let n of this.mapWatcherToPath.keys())
            n.emit("error", i);
        });
      } catch (r) {
        process.nextTick(() => {
          for (let i of this.mapWatcherToPath.keys())
            i.emit("error", r);
        });
      }
      Gn++, ao && process.stderr.write(
        `[watchpack] created recursive watcher at ${t}
`
      );
    }
    add(t, r) {
      un.set(r, this);
      let i = t.slice(this.rootPath.length + 1) || ".";
      this.mapWatcherToPath.set(r, i);
      let n = this.mapPathToWatchers.get(i);
      if (n === void 0) {
        let u = /* @__PURE__ */ new Set();
        u.add(r), this.mapPathToWatchers.set(i, u);
      } else
        n.add(r);
    }
    remove(t) {
      let r = this.mapWatcherToPath.get(t);
      if (!r) return;
      this.mapWatcherToPath.delete(t);
      let i = this.mapPathToWatchers.get(r);
      i.delete(t), i.size === 0 && this.mapPathToWatchers.delete(r), this.mapWatcherToPath.size === 0 && (Qs.delete(this.rootPath), Gn--, this.
      watcher && this.watcher.close(), ao && process.stderr.write(
        `[watchpack] closed recursive watcher at ${this.rootPath}
`
      ));
    }
    getWatchers() {
      return this.mapWatcherToPath;
    }
  }, Bf = class extends WL {
    static {
      s(this, "Watcher");
    }
    close() {
      if (Ks.has(this)) {
        Ks.delete(this);
        return;
      }
      un.get(this).remove(this), un.delete(this);
    }
  }, Ff = /* @__PURE__ */ s((e) => {
    let t = Zs.get(e);
    if (t !== void 0) return t;
    let r = new _f(e);
    return Zs.set(e, r), r;
  }, "createDirectWatcher"), YL = /* @__PURE__ */ s((e) => {
    let t = Qs.get(e);
    if (t !== void 0) return t;
    let r = new kf(e);
    return Qs.set(e, r), r;
  }, "createRecursiveWatcher"), pC = /* @__PURE__ */ s(() => {
    let e = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ s((i, n) => {
      let u = e.get(n);
      u === void 0 ? e.set(n, i) : Array.isArray(u) ? u.push(i) : e.set(n, [u, i]);
    }, "addWatcher");
    for (let [i, n] of Ks)
      t(i, n);
    if (Ks.clear(), !XL || lC - Gn >= e.size) {
      for (let [i, n] of e) {
        let u = Ff(i);
        if (Array.isArray(n))
          for (let a of n) u.add(a);
        else
          u.add(n);
      }
      return;
    }
    for (let i of Qs.values())
      for (let [n, u] of i.getWatchers())
        t(n, oo.join(i.rootPath, u));
    for (let i of Zs.values())
      for (let n of i.getWatchers())
        t(n, i.filePath);
    let r = JL(e, lC * 0.9);
    for (let [i, n] of r)
      if (n.size === 1)
        for (let [u, a] of n) {
          let o = Ff(a), l = un.get(u);
          l !== o && (o.add(u), l !== void 0 && l.remove(u));
        }
      else {
        let u = new Set(n.values());
        if (u.size > 1) {
          let a = YL(i);
          for (let [o, l] of n) {
            let c = un.get(o);
            c !== a && (a.add(l, o), c !== void 0 && c.remove(o));
          }
        } else
          for (let a of u) {
            let o = Ff(a);
            for (let l of n.keys()) {
              let c = un.get(l);
              c !== o && (o.add(l), c !== void 0 && c.remove(l));
            }
          }
      }
  }, "execute");
  lo.watch = (e) => {
    let t = new Bf(), r = Zs.get(e);
    if (r !== void 0)
      return r.add(t), t;
    let i = e;
    for (; ; ) {
      let n = Qs.get(i);
      if (n !== void 0)
        return n.add(e, t), t;
      let u = oo.dirname(i);
      if (u === i) break;
      i = u;
    }
    return Ks.set(t, e), Sf || pC(), t;
  };
  lo.batch = (e) => {
    Sf = !0;
    try {
      e();
    } finally {
      Sf = !1, pC();
    }
  };
  lo.getNumberOfWatchers = () => Gn;
});

// ../node_modules/watchpack/lib/DirectoryWatcher.js
var gC = I((iY, Of) => {
  "use strict";
  var DC = require("events").EventEmitter, co = uC(), eu = require("path"), KL = Tf(), Yn = Object.freeze({}), Et = 2e3, fC = require("os").
  platform() === "darwin", tu = process.env.WATCHPACK_POLLING, dC = `${+tu}` === tu ? +tu : !!tu && tu !== "false";
  function Xn(e) {
    return e.toLowerCase();
  }
  s(Xn, "withoutCase");
  function QL(e, t) {
    return function() {
      if (--e === 0)
        return t();
    };
  }
  s(QL, "needCalls");
  var Pf = class extends DC {
    static {
      s(this, "Watcher");
    }
    constructor(t, r, i) {
      super(), this.directoryWatcher = t, this.path = r, this.startTime = i && +i;
    }
    checkStartTime(t, r) {
      let i = this.startTime;
      return typeof i != "number" ? !r : i <= t;
    }
    close() {
      this.emit("closed");
    }
  }, If = class extends DC {
    static {
      s(this, "DirectoryWatcher");
    }
    constructor(t, r, i) {
      super(), dC && (i.poll = dC), this.watcherManager = t, this.options = i, this.path = r, this.files = /* @__PURE__ */ new Map(), this.filesWithoutCase =
      /* @__PURE__ */ new Map(), this.directories = /* @__PURE__ */ new Map(), this.lastWatchEvent = 0, this.initialScan = !0, this.ignored =
      i.ignored || (() => !1), this.nestedWatching = !1, this.polledWatching = typeof i.poll == "number" ? i.poll : i.poll ? 5007 : !1, this.
      timeout = void 0, this.initialScanRemoved = /* @__PURE__ */ new Set(), this.initialScanFinished = void 0, this.watchers = /* @__PURE__ */ new Map(),
      this.parentWatcher = null, this.refs = 0, this._activeEvents = /* @__PURE__ */ new Map(), this.closed = !1, this.scanning = !1, this.scanAgain =
      !1, this.scanAgainInitial = !1, this.createWatcher(), this.doScan(!0);
    }
    createWatcher() {
      try {
        this.polledWatching ? this.watcher = {
          close: /* @__PURE__ */ s(() => {
            this.timeout && (clearTimeout(this.timeout), this.timeout = void 0);
          }, "close")
        } : (fC && this.watchInParentDirectory(), this.watcher = KL.watch(this.path), this.watcher.on("change", this.onWatchEvent.bind(this)),
        this.watcher.on("error", this.onWatcherError.bind(this)));
      } catch (t) {
        this.onWatcherError(t);
      }
    }
    forEachWatcher(t, r) {
      let i = this.watchers.get(Xn(t));
      if (i !== void 0)
        for (let n of i)
          r(n);
    }
    setMissing(t, r, i) {
      this.initialScan && this.initialScanRemoved.add(t);
      let n = this.directories.get(t);
      if (n && (this.nestedWatching && n.close(), this.directories.delete(t), this.forEachWatcher(t, (a) => a.emit("remove", i)), r || this.
      forEachWatcher(
        this.path,
        (a) => a.emit("change", t, null, i, r)
      )), this.files.get(t)) {
        this.files.delete(t);
        let a = Xn(t), o = this.filesWithoutCase.get(a) - 1;
        o <= 0 ? (this.filesWithoutCase.delete(a), this.forEachWatcher(t, (l) => l.emit("remove", i))) : this.filesWithoutCase.set(a, o), r ||
        this.forEachWatcher(
          this.path,
          (l) => l.emit("change", t, null, i, r)
        );
      }
    }
    setFileTime(t, r, i, n, u) {
      let a = Date.now();
      if (this.ignored(t)) return;
      let o = this.files.get(t), l, c;
      if (i)
        l = Math.min(a, r) + Et, c = Et;
      else if (l = a, c = 0, o && o.timestamp === r && r + Et < a)
        return;
      if (!(n && o && o.timestamp === r)) {
        if (this.files.set(t, {
          safeTime: l,
          accuracy: c,
          timestamp: r
        }), o)
          i || this.forEachWatcher(t, (h) => h.emit("change", r, u));
        else {
          let h = Xn(t), p = this.filesWithoutCase.get(h);
          this.filesWithoutCase.set(h, (p || 0) + 1), p !== void 0 && this.doScan(!1), this.forEachWatcher(t, (d) => {
            (!i || d.checkStartTime(l, i)) && d.emit("change", r, u);
          });
        }
        this.forEachWatcher(this.path, (h) => {
          (!i || h.checkStartTime(l, i)) && h.emit("change", t, l, u, i);
        });
      }
    }
    setDirectory(t, r, i, n) {
      if (!this.ignored(t)) {
        if (t === this.path)
          i || this.forEachWatcher(
            this.path,
            (u) => u.emit("change", t, r, n, i)
          );
        else if (!this.directories.get(t)) {
          let a = Date.now();
          this.nestedWatching ? this.createNestedWatcher(t) : this.directories.set(t, !0);
          let o;
          i ? o = Math.min(a, r) + Et : o = a, this.forEachWatcher(t, (l) => {
            (!i || l.checkStartTime(o, !1)) && l.emit("change", r, n);
          }), this.forEachWatcher(this.path, (l) => {
            (!i || l.checkStartTime(o, i)) && l.emit("change", t, o, n, i);
          });
        }
      }
    }
    createNestedWatcher(t) {
      let r = this.watcherManager.watchDirectory(t, 1);
      r.on("change", (i, n, u, a) => {
        this.forEachWatcher(this.path, (o) => {
          (!a || o.checkStartTime(n, a)) && o.emit("change", i, n, u, a);
        });
      }), this.directories.set(t, r);
    }
    setNestedWatching(t) {
      if (this.nestedWatching !== !!t)
        if (this.nestedWatching = !!t, this.nestedWatching)
          for (let r of this.directories.keys())
            this.createNestedWatcher(r);
        else
          for (let [r, i] of this.directories)
            i.close(), this.directories.set(r, !0);
    }
    watch(t, r) {
      let i = Xn(t), n = this.watchers.get(i);
      n === void 0 && (n = /* @__PURE__ */ new Set(), this.watchers.set(i, n)), this.refs++;
      let u = new Pf(this, t, r);
      u.on("closed", () => {
        if (--this.refs <= 0) {
          this.close();
          return;
        }
        n.delete(u), n.size === 0 && (this.watchers.delete(i), this.path === t && this.setNestedWatching(!1));
      }), n.add(u);
      let a;
      if (t === this.path) {
        this.setNestedWatching(!0), a = this.lastWatchEvent;
        for (let o of this.files.values())
          ho(o), a = Math.max(a, o.safeTime);
      } else {
        let o = this.files.get(t);
        o ? (ho(o), a = o.safeTime) : a = 0;
      }
      return a ? a >= r && process.nextTick(() => {
        this.closed || (t === this.path ? u.emit(
          "change",
          t,
          a,
          "watch (outdated on attach)",
          !0
        ) : u.emit(
          "change",
          a,
          "watch (outdated on attach)",
          !0
        ));
      }) : this.initialScan ? this.initialScanRemoved.has(t) && process.nextTick(() => {
        this.closed || u.emit("remove");
      }) : !this.directories.has(t) && u.checkStartTime(this.initialScanFinished, !1) && process.nextTick(() => {
        this.closed || u.emit("initial-missing", "watch (missing on attach)");
      }), u;
    }
    onWatchEvent(t, r) {
      if (this.closed) return;
      if (!r) {
        this.doScan(!1);
        return;
      }
      let i = eu.join(this.path, r);
      if (!this.ignored(i))
        if (this._activeEvents.get(r) === void 0) {
          this._activeEvents.set(r, !1);
          let n = /* @__PURE__ */ s(() => {
            this.closed || (this._activeEvents.set(r, !1), co.lstat(i, (u, a) => {
              if (!this.closed) {
                if (this._activeEvents.get(r) === !0) {
                  process.nextTick(n);
                  return;
                }
                this._activeEvents.delete(r), u && (u.code !== "ENOENT" && u.code !== "EPERM" && u.code !== "EBUSY" ? this.onStatsError(u) :
                r === eu.basename(this.path) && (co.existsSync(this.path) || this.onDirectoryRemoved("stat failed"))), this.lastWatchEvent =
                Date.now(), a ? a.isDirectory() ? this.setDirectory(
                  i,
                  +a.birthtime || 1,
                  !1,
                  t
                ) : (a.isFile() || a.isSymbolicLink()) && (a.mtime && mC(a.mtime), this.setFileTime(
                  i,
                  +a.mtime || +a.ctime || 1,
                  !1,
                  !1,
                  t
                )) : this.setMissing(i, !1, t);
              }
            }));
          }, "checkStats");
          process.nextTick(n);
        } else
          this._activeEvents.set(r, !0);
    }
    onWatcherError(t) {
      this.closed || t && (t.code !== "EPERM" && t.code !== "ENOENT" && console.error("Watchpack Error (watcher): " + t), this.onDirectoryRemoved(
      "watch error"));
    }
    onStatsError(t) {
      t && console.error("Watchpack Error (stats): " + t);
    }
    onScanError(t) {
      t && console.error("Watchpack Error (initial scan): " + t), this.onScanFinished();
    }
    onScanFinished() {
      this.polledWatching && (this.timeout = setTimeout(() => {
        this.closed || this.doScan(!1);
      }, this.polledWatching));
    }
    onDirectoryRemoved(t) {
      this.watcher && (this.watcher.close(), this.watcher = null), this.watchInParentDirectory();
      let r = `directory-removed (${t})`;
      for (let i of this.directories.keys())
        this.setMissing(i, null, r);
      for (let i of this.files.keys())
        this.setMissing(i, null, r);
    }
    watchInParentDirectory() {
      if (!this.parentWatcher) {
        let t = eu.dirname(this.path);
        if (eu.dirname(t) === t) return;
        this.parentWatcher = this.watcherManager.watchFile(this.path, 1), this.parentWatcher.on("change", (r, i) => {
          this.closed || ((!fC || this.polledWatching) && this.parentWatcher && (this.parentWatcher.close(), this.parentWatcher = null), this.
          watcher || (this.createWatcher(), this.doScan(!1), this.forEachWatcher(
            this.path,
            (n) => n.emit("change", this.path, r, i, !1)
          )));
        }), this.parentWatcher.on("remove", () => {
          this.onDirectoryRemoved("parent directory removed");
        });
      }
    }
    doScan(t) {
      if (this.scanning) {
        this.scanAgain ? t || (this.scanAgainInitial = !1) : (this.scanAgain = !0, this.scanAgainInitial = t);
        return;
      }
      this.scanning = !0, this.timeout && (clearTimeout(this.timeout), this.timeout = void 0), process.nextTick(() => {
        this.closed || co.readdir(this.path, (r, i) => {
          if (this.closed) return;
          if (r) {
            if (r.code === "ENOENT" || r.code === "EPERM" ? this.onDirectoryRemoved("scan readdir failed") : this.onScanError(r), this.initialScan =
            !1, this.initialScanFinished = Date.now(), t)
              for (let a of this.watchers.values())
                for (let o of a)
                  o.checkStartTime(this.initialScanFinished, !1) && o.emit(
                    "initial-missing",
                    "scan (parent directory missing in initial scan)"
                  );
            this.scanAgain ? (this.scanAgain = !1, this.doScan(this.scanAgainInitial)) : this.scanning = !1;
            return;
          }
          let n = new Set(
            i.map((a) => eu.join(this.path, a.normalize("NFC")))
          );
          for (let a of this.files.keys())
            n.has(a) || this.setMissing(a, t, "scan (missing)");
          for (let a of this.directories.keys())
            n.has(a) || this.setMissing(a, t, "scan (missing)");
          if (this.scanAgain) {
            this.scanAgain = !1, this.doScan(t);
            return;
          }
          let u = QL(n.size + 1, () => {
            if (!this.closed) {
              if (this.initialScan = !1, this.initialScanRemoved = null, this.initialScanFinished = Date.now(), t) {
                let a = new Map(this.watchers);
                a.delete(Xn(this.path));
                for (let o of n)
                  a.delete(Xn(o));
                for (let o of a.values())
                  for (let l of o)
                    l.checkStartTime(this.initialScanFinished, !1) && l.emit(
                      "initial-missing",
                      "scan (missing in initial scan)"
                    );
              }
              this.scanAgain ? (this.scanAgain = !1, this.doScan(this.scanAgainInitial)) : (this.scanning = !1, this.onScanFinished());
            }
          });
          for (let a of n)
            co.lstat(a, (o, l) => {
              if (!this.closed) {
                if (o) {
                  o.code === "ENOENT" || o.code === "EPERM" || o.code === "EACCES" || o.code === "EBUSY" ? this.setMissing(a, t, "scan (" + o.
                  code + ")") : this.onScanError(o), u();
                  return;
                }
                l.isFile() || l.isSymbolicLink() ? (l.mtime && mC(l.mtime), this.setFileTime(
                  a,
                  +l.mtime || +l.ctime || 1,
                  t,
                  !0,
                  "scan (file)"
                )) : l.isDirectory() && (!t || !this.directories.has(a)) && this.setDirectory(
                  a,
                  +l.birthtime || 1,
                  t,
                  "scan (dir)"
                ), u();
              }
            });
          u();
        });
      });
    }
    getTimes() {
      let t = /* @__PURE__ */ Object.create(null), r = this.lastWatchEvent;
      for (let [i, n] of this.files)
        ho(n), r = Math.max(r, n.safeTime), t[i] = Math.max(n.safeTime, n.timestamp);
      if (this.nestedWatching) {
        for (let i of this.directories.values()) {
          let n = i.directoryWatcher.getTimes();
          for (let u of Object.keys(n)) {
            let a = n[u];
            r = Math.max(r, a), t[u] = a;
          }
        }
        t[this.path] = r;
      }
      if (!this.initialScan)
        for (let i of this.watchers.values())
          for (let n of i) {
            let u = n.path;
            Object.prototype.hasOwnProperty.call(t, u) || (t[u] = null);
          }
      return t;
    }
    collectTimeInfoEntries(t, r) {
      let i = this.lastWatchEvent;
      for (let [n, u] of this.files)
        ho(u), i = Math.max(i, u.safeTime), t.set(n, u);
      if (this.nestedWatching) {
        for (let n of this.directories.values())
          i = Math.max(
            i,
            n.directoryWatcher.collectTimeInfoEntries(
              t,
              r
            )
          );
        t.set(this.path, Yn), r.set(this.path, {
          safeTime: i
        });
      } else {
        for (let n of this.directories.keys())
          t.set(n, Yn), r.has(n) || r.set(n, Yn);
        t.set(this.path, Yn), r.set(this.path, Yn);
      }
      if (!this.initialScan)
        for (let n of this.watchers.values())
          for (let u of n) {
            let a = u.path;
            t.has(a) || t.set(a, null);
          }
      return i;
    }
    close() {
      if (this.closed = !0, this.initialScan = !1, this.watcher && (this.watcher.close(), this.watcher = null), this.nestedWatching) {
        for (let t of this.directories.values())
          t.close();
        this.directories.clear();
      }
      this.parentWatcher && (this.parentWatcher.close(), this.parentWatcher = null), this.emit("closed");
    }
  };
  Of.exports = If;
  Of.exports.EXISTANCE_ONLY_TIME_ENTRY = Yn;
  function ho(e) {
    e.accuracy > Et && (e.safeTime = e.safeTime - e.accuracy + Et, e.accuracy = Et);
  }
  s(ho, "fixupEntryAccuracy");
  function mC(e) {
    e && (Et > 1 && e % 1 !== 0 ? Et = 1 : Et > 10 && e % 10 !== 0 ? Et = 10 : Et > 100 && e % 100 !== 0 ? Et = 100 : Et > 1e3 && e % 1e3 !==
    0 && (Et = 1e3));
  }
  s(mC, "ensureFsAccuracy");
});

// ../node_modules/watchpack/lib/getWatcherManager.js
var yC = I((sY, Rf) => {
  "use strict";
  var ZL = require("path"), eM = gC(), po = class {
    static {
      s(this, "WatcherManager");
    }
    constructor(t) {
      this.options = t, this.directoryWatchers = /* @__PURE__ */ new Map();
    }
    getDirectoryWatcher(t) {
      let r = this.directoryWatchers.get(t);
      if (r === void 0) {
        let i = new eM(this, t, this.options);
        return this.directoryWatchers.set(t, i), i.on("closed", () => {
          this.directoryWatchers.delete(t);
        }), i;
      }
      return r;
    }
    watchFile(t, r) {
      let i = ZL.dirname(t);
      return i === t ? null : this.getDirectoryWatcher(i).watch(t, r);
    }
    watchDirectory(t, r) {
      return this.getDirectoryWatcher(t).watch(t, r);
    }
  }, xC = /* @__PURE__ */ new WeakMap();
  Rf.exports = (e) => {
    let t = xC.get(e);
    if (t !== void 0) return t;
    let r = new po(e);
    return xC.set(e, r), r;
  };
  Rf.exports.WatcherManager = po;
});

// ../node_modules/watchpack/lib/LinkResolver.js
var vC = I((aY, bC) => {
  "use strict";
  var tM = require("fs"), fo = require("path"), EC = /* @__PURE__ */ new Set(["EINVAL", "ENOENT"]);
  process.platform === "win32" && EC.add("UNKNOWN");
  var Nf = class {
    static {
      s(this, "LinkResolver");
    }
    constructor() {
      this.cache = /* @__PURE__ */ new Map();
    }
    /**
     * @param {string} file path to file or directory
     * @returns {string[]} array of file and all symlinks contributed in the resolving process (first item is the resolved file)
     */
    resolve(t) {
      let r = this.cache.get(t);
      if (r !== void 0)
        return r;
      let i = fo.dirname(t);
      if (i === t) {
        let a = Object.freeze([t]);
        return this.cache.set(t, a), a;
      }
      let n = this.resolve(i), u = t;
      if (n[0] !== i) {
        let a = fo.basename(t);
        u = fo.resolve(n[0], a);
      }
      try {
        let a = tM.readlinkSync(u), o = fo.resolve(n[0], a), l = this.resolve(o), c;
        if (l.length > 1 && n.length > 1) {
          let h = new Set(l);
          h.add(u);
          for (let p = 1; p < n.length; p++)
            h.add(n[p]);
          c = Object.freeze(Array.from(h));
        } else n.length > 1 ? (c = n.slice(), c[0] = l[0], c.push(u), Object.freeze(c)) : l.length > 1 ? (c = l.slice(), c.push(u), Object.freeze(
        c)) : c = Object.freeze([
          // the resolve real location
          l[0],
          // add the link
          u
        ]);
        return this.cache.set(t, c), c;
      } catch (a) {
        if (!EC.has(a.code))
          throw a;
        let o = n.slice();
        return o[0] = u, Object.freeze(o), this.cache.set(t, o), o;
      }
    }
  };
  bC.exports = Nf;
});

// ../node_modules/glob-to-regexp/index.js
var wC = I((lY, CC) => {
  CC.exports = function(e, t) {
    if (typeof e != "string")
      throw new TypeError("Expected a string");
    for (var r = String(e), i = "", n = t ? !!t.extended : !1, u = t ? !!t.globstar : !1, a = !1, o = t && typeof t.flags == "string" ? t.flags :
    "", l, c = 0, h = r.length; c < h; c++)
      switch (l = r[c], l) {
        case "/":
        case "$":
        case "^":
        case "+":
        case ".":
        case "(":
        case ")":
        case "=":
        case "!":
        case "|":
          i += "\\" + l;
          break;
        case "?":
          if (n) {
            i += ".";
            break;
          }
        case "[":
        case "]":
          if (n) {
            i += l;
            break;
          }
        case "{":
          if (n) {
            a = !0, i += "(";
            break;
          }
        case "}":
          if (n) {
            a = !1, i += ")";
            break;
          }
        case ",":
          if (a) {
            i += "|";
            break;
          }
          i += "\\" + l;
          break;
        case "*":
          for (var p = r[c - 1], d = 1; r[c + 1] === "*"; )
            d++, c++;
          var m = r[c + 1];
          if (!u)
            i += ".*";
          else {
            var D = d > 1 && (p === "/" || p === void 0) && (m === "/" || m === void 0);
            D ? (i += "((?:[^/]*(?:/|$))*)", c++) : i += "([^/]*)";
          }
          break;
        default:
          i += l;
      }
    return (!o || !~o.indexOf("g")) && (i = "^" + i + "$"), new RegExp(i, o);
  };
});

// ../node_modules/watchpack/lib/watchpack.js
var qf = I((cY, SC) => {
  "use strict";
  var rM = yC(), iM = vC(), nM = require("events").EventEmitter, sM = wC(), uM = Tf(), mo = [], aM = {};
  function Do(e, t) {
    for (let r of e) {
      let i = r.watcher;
      t.has(i.directoryWatcher) || t.add(i.directoryWatcher);
    }
  }
  s(Do, "addWatchersToSet");
  var AC = /* @__PURE__ */ s((e) => {
    let t = sM(e, { globstar: !0, extended: !0 }).source;
    return t.slice(0, t.length - 1) + "(?:$|\\/)";
  }, "stringToRegexp"), oM = /* @__PURE__ */ s((e) => {
    if (Array.isArray(e)) {
      let t = new RegExp(e.map((r) => AC(r)).join("|"));
      return (r) => t.test(r.replace(/\\/g, "/"));
    } else if (typeof e == "string") {
      let t = new RegExp(AC(e));
      return (r) => t.test(r.replace(/\\/g, "/"));
    } else {
      if (e instanceof RegExp)
        return (t) => e.test(t.replace(/\\/g, "/"));
      if (e instanceof Function)
        return e;
      if (e)
        throw new Error(`Invalid option for 'ignored': ${e}`);
      return () => !1;
    }
  }, "ignoredToFunction"), lM = /* @__PURE__ */ s((e) => ({
    followSymlinks: !!e.followSymlinks,
    ignored: oM(e.ignored),
    poll: e.poll
  }), "normalizeOptions"), FC = /* @__PURE__ */ new WeakMap(), cM = /* @__PURE__ */ s((e) => {
    let t = FC.get(e);
    if (t !== void 0) return t;
    let r = lM(e);
    return FC.set(e, r), r;
  }, "cachedNormalizeOptions"), Lf = class {
    static {
      s(this, "WatchpackFileWatcher");
    }
    constructor(t, r, i) {
      this.files = Array.isArray(i) ? i : [i], this.watcher = r, r.on("initial-missing", (n) => {
        for (let u of this.files)
          t._missing.has(u) || t._onRemove(u, u, n);
      }), r.on("change", (n, u) => {
        for (let a of this.files)
          t._onChange(a, n, a, u);
      }), r.on("remove", (n) => {
        for (let u of this.files)
          t._onRemove(u, u, n);
      });
    }
    update(t) {
      Array.isArray(t) ? this.files = t : this.files.length !== 1 ? this.files = [t] : this.files[0] !== t && (this.files[0] = t);
    }
    close() {
      this.watcher.close();
    }
  }, Mf = class {
    static {
      s(this, "WatchpackDirectoryWatcher");
    }
    constructor(t, r, i) {
      this.directories = Array.isArray(i) ? i : [i], this.watcher = r, r.on("initial-missing", (n) => {
        for (let u of this.directories)
          t._onRemove(u, u, n);
      }), r.on("change", (n, u, a) => {
        for (let o of this.directories)
          t._onChange(o, u, n, a);
      }), r.on("remove", (n) => {
        for (let u of this.directories)
          t._onRemove(u, u, n);
      });
    }
    update(t) {
      Array.isArray(t) ? this.directories = t : this.directories.length !== 1 ? this.directories = [t] : this.directories[0] !== t && (this.
      directories[0] = t);
    }
    close() {
      this.watcher.close();
    }
  }, jf = class extends nM {
    static {
      s(this, "Watchpack");
    }
    constructor(t) {
      super(), t || (t = aM), this.options = t, this.aggregateTimeout = typeof t.aggregateTimeout == "number" ? t.aggregateTimeout : 200, this.
      watcherOptions = cM(t), this.watcherManager = rM(this.watcherOptions), this.fileWatchers = /* @__PURE__ */ new Map(), this.directoryWatchers =
      /* @__PURE__ */ new Map(), this._missing = /* @__PURE__ */ new Set(), this.startTime = void 0, this.paused = !1, this.aggregatedChanges =
      /* @__PURE__ */ new Set(), this.aggregatedRemovals = /* @__PURE__ */ new Set(), this.aggregateTimer = void 0, this._onTimeout = this._onTimeout.
      bind(this);
    }
    watch(t, r, i) {
      let n, u, a, o;
      r ? (n = t, u = r, a = mo, o = i) : {
        files: n = mo,
        directories: u = mo,
        missing: a = mo,
        startTime: o
      } = t, this.paused = !1;
      let l = this.fileWatchers, c = this.directoryWatchers, h = this.watcherOptions.ignored, p = /* @__PURE__ */ s((v) => !h(v), "filter"),
      d = /* @__PURE__ */ s((v, x, C) => {
        let S = v.get(x);
        S === void 0 ? v.set(x, C) : Array.isArray(S) ? S.push(C) : v.set(x, [S, C]);
      }, "addToMap"), m = /* @__PURE__ */ new Map(), D = /* @__PURE__ */ new Map(), g = /* @__PURE__ */ new Set();
      if (this.watcherOptions.followSymlinks) {
        let v = new iM();
        for (let x of n)
          if (p(x))
            for (let C of v.resolve(x))
              (x === C || p(C)) && d(m, C, x);
        for (let x of a)
          if (p(x))
            for (let C of v.resolve(x))
              (x === C || p(C)) && (g.add(x), d(m, C, x));
        for (let x of u)
          if (p(x)) {
            let C = !0;
            for (let S of v.resolve(x))
              p(S) && d(
                C ? D : m,
                S,
                x
              ), C = !1;
          }
      } else {
        for (let v of n)
          p(v) && d(m, v, v);
        for (let v of a)
          p(v) && (g.add(v), d(m, v, v));
        for (let v of u)
          p(v) && d(D, v, v);
      }
      for (let [v, x] of l) {
        let C = m.get(v);
        C === void 0 ? (x.close(), l.delete(v)) : (x.update(C), m.delete(v));
      }
      for (let [v, x] of c) {
        let C = D.get(v);
        C === void 0 ? (x.close(), c.delete(v)) : (x.update(C), D.delete(v));
      }
      uM.batch(() => {
        for (let [v, x] of m) {
          let C = this.watcherManager.watchFile(v, o);
          C && l.set(v, new Lf(this, C, x));
        }
        for (let [v, x] of D) {
          let C = this.watcherManager.watchDirectory(v, o);
          C && c.set(
            v,
            new Mf(this, C, x)
          );
        }
      }), this._missing = g, this.startTime = o;
    }
    close() {
      this.paused = !0, this.aggregateTimer && clearTimeout(this.aggregateTimer);
      for (let t of this.fileWatchers.values()) t.close();
      for (let t of this.directoryWatchers.values()) t.close();
      this.fileWatchers.clear(), this.directoryWatchers.clear();
    }
    pause() {
      this.paused = !0, this.aggregateTimer && clearTimeout(this.aggregateTimer);
    }
    getTimes() {
      let t = /* @__PURE__ */ new Set();
      Do(this.fileWatchers.values(), t), Do(this.directoryWatchers.values(), t);
      let r = /* @__PURE__ */ Object.create(null);
      for (let i of t) {
        let n = i.getTimes();
        for (let u of Object.keys(n)) r[u] = n[u];
      }
      return r;
    }
    getTimeInfoEntries() {
      let t = /* @__PURE__ */ new Map();
      return this.collectTimeInfoEntries(t, t), t;
    }
    collectTimeInfoEntries(t, r) {
      let i = /* @__PURE__ */ new Set();
      Do(this.fileWatchers.values(), i), Do(this.directoryWatchers.values(), i);
      let n = { value: 0 };
      for (let u of i)
        u.collectTimeInfoEntries(t, r, n);
    }
    getAggregated() {
      this.aggregateTimer && (clearTimeout(this.aggregateTimer), this.aggregateTimer = void 0);
      let t = this.aggregatedChanges, r = this.aggregatedRemovals;
      return this.aggregatedChanges = /* @__PURE__ */ new Set(), this.aggregatedRemovals = /* @__PURE__ */ new Set(), { changes: t, removals: r };
    }
    _onChange(t, r, i, n) {
      i = i || t, this.paused || (this.emit("change", i, r, n), this.aggregateTimer && clearTimeout(this.aggregateTimer), this.aggregateTimer =
      setTimeout(this._onTimeout, this.aggregateTimeout)), this.aggregatedRemovals.delete(t), this.aggregatedChanges.add(t);
    }
    _onRemove(t, r, i) {
      r = r || t, this.paused || (this.emit("remove", r, i), this.aggregateTimer && clearTimeout(this.aggregateTimer), this.aggregateTimer =
      setTimeout(this._onTimeout, this.aggregateTimeout)), this.aggregatedChanges.delete(t), this.aggregatedRemovals.add(t);
    }
    _onTimeout() {
      this.aggregateTimer = void 0;
      let t = this.aggregatedChanges, r = this.aggregatedRemovals;
      this.aggregatedChanges = /* @__PURE__ */ new Set(), this.aggregatedRemovals = /* @__PURE__ */ new Set(), this.emit("aggregated", t, r);
    }
  };
  SC.exports = jf;
});

// ../node_modules/prompts/node_modules/kleur/index.js
var He = I((NY, zC) => {
  "use strict";
  var { FORCE_COLOR: DM, NODE_DISABLE_COLORS: gM, TERM: xM } = process.env, _e = {
    enabled: !gM && xM !== "dumb" && DM !== "0",
    // modifiers
    reset: Ne(0, 0),
    bold: Ne(1, 22),
    dim: Ne(2, 22),
    italic: Ne(3, 23),
    underline: Ne(4, 24),
    inverse: Ne(7, 27),
    hidden: Ne(8, 28),
    strikethrough: Ne(9, 29),
    // colors
    black: Ne(30, 39),
    red: Ne(31, 39),
    green: Ne(32, 39),
    yellow: Ne(33, 39),
    blue: Ne(34, 39),
    magenta: Ne(35, 39),
    cyan: Ne(36, 39),
    white: Ne(37, 39),
    gray: Ne(90, 39),
    grey: Ne(90, 39),
    // background colors
    bgBlack: Ne(40, 49),
    bgRed: Ne(41, 49),
    bgGreen: Ne(42, 49),
    bgYellow: Ne(43, 49),
    bgBlue: Ne(44, 49),
    bgMagenta: Ne(45, 49),
    bgCyan: Ne(46, 49),
    bgWhite: Ne(47, 49)
  };
  function UC(e, t) {
    let r = 0, i, n = "", u = "";
    for (; r < e.length; r++)
      i = e[r], n += i.open, u += i.close, t.includes(i.close) && (t = t.replace(i.rgx, i.close + i.open));
    return n + t + u;
  }
  s(UC, "run");
  function yM(e, t) {
    let r = { has: e, keys: t };
    return r.reset = _e.reset.bind(r), r.bold = _e.bold.bind(r), r.dim = _e.dim.bind(r), r.italic = _e.italic.bind(r), r.underline = _e.underline.
    bind(r), r.inverse = _e.inverse.bind(r), r.hidden = _e.hidden.bind(r), r.strikethrough = _e.strikethrough.bind(r), r.black = _e.black.bind(
    r), r.red = _e.red.bind(r), r.green = _e.green.bind(r), r.yellow = _e.yellow.bind(r), r.blue = _e.blue.bind(r), r.magenta = _e.magenta.bind(
    r), r.cyan = _e.cyan.bind(r), r.white = _e.white.bind(r), r.gray = _e.gray.bind(r), r.grey = _e.grey.bind(r), r.bgBlack = _e.bgBlack.bind(
    r), r.bgRed = _e.bgRed.bind(r), r.bgGreen = _e.bgGreen.bind(r), r.bgYellow = _e.bgYellow.bind(r), r.bgBlue = _e.bgBlue.bind(r), r.bgMagenta =
    _e.bgMagenta.bind(r), r.bgCyan = _e.bgCyan.bind(r), r.bgWhite = _e.bgWhite.bind(r), r;
  }
  s(yM, "chain");
  function Ne(e, t) {
    let r = {
      open: `\x1B[${e}m`,
      close: `\x1B[${t}m`,
      rgx: new RegExp(`\\x1b\\[${t}m`, "g")
    };
    return function(i) {
      return this !== void 0 && this.has !== void 0 ? (this.has.includes(e) || (this.has.push(e), this.keys.push(r)), i === void 0 ? this : _e.
      enabled ? UC(this.keys, i + "") : i + "") : i === void 0 ? yM([e], [r]) : _e.enabled ? UC([r], i + "") : i + "";
    };
  }
  s(Ne, "init");
  zC.exports = _e;
});

// ../node_modules/prompts/dist/util/action.js
var WC = I((MY, HC) => {
  "use strict";
  HC.exports = (e, t) => {
    if (!(e.meta && e.name !== "escape")) {
      if (e.ctrl) {
        if (e.name === "a") return "first";
        if (e.name === "c" || e.name === "d") return "abort";
        if (e.name === "e") return "last";
        if (e.name === "g") return "reset";
      }
      if (t) {
        if (e.name === "j") return "down";
        if (e.name === "k") return "up";
      }
      return e.name === "return" || e.name === "enter" ? "submit" : e.name === "backspace" ? "delete" : e.name === "delete" ? "deleteForward" :
      e.name === "abort" ? "abort" : e.name === "escape" ? "exit" : e.name === "tab" ? "next" : e.name === "pagedown" ? "nextPage" : e.name ===
      "pageup" ? "prevPage" : e.name === "home" ? "home" : e.name === "end" ? "end" : e.name === "up" ? "up" : e.name === "down" ? "down" : e.
      name === "right" ? "right" : e.name === "left" ? "left" : !1;
    }
  };
});

// ../node_modules/prompts/dist/util/strip.js
var bo = I((jY, JC) => {
  "use strict";
  JC.exports = (e) => {
    let t = ["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"].join("|"), r = new RegExp(t, "g");
    return typeof e == "string" ? e.replace(r, "") : e;
  };
});

// ../node_modules/sisteransi/src/index.js
var Je = I((qY, GC) => {
  "use strict";
  var Vf = "\x1B", We = `${Vf}[`, EM = "\x07", Uf = {
    to(e, t) {
      return t ? `${We}${t + 1};${e + 1}H` : `${We}${e + 1}G`;
    },
    move(e, t) {
      let r = "";
      return e < 0 ? r += `${We}${-e}D` : e > 0 && (r += `${We}${e}C`), t < 0 ? r += `${We}${-t}A` : t > 0 && (r += `${We}${t}B`), r;
    },
    up: /* @__PURE__ */ s((e = 1) => `${We}${e}A`, "up"),
    down: /* @__PURE__ */ s((e = 1) => `${We}${e}B`, "down"),
    forward: /* @__PURE__ */ s((e = 1) => `${We}${e}C`, "forward"),
    backward: /* @__PURE__ */ s((e = 1) => `${We}${e}D`, "backward"),
    nextLine: /* @__PURE__ */ s((e = 1) => `${We}E`.repeat(e), "nextLine"),
    prevLine: /* @__PURE__ */ s((e = 1) => `${We}F`.repeat(e), "prevLine"),
    left: `${We}G`,
    hide: `${We}?25l`,
    show: `${We}?25h`,
    save: `${Vf}7`,
    restore: `${Vf}8`
  }, bM = {
    up: /* @__PURE__ */ s((e = 1) => `${We}S`.repeat(e), "up"),
    down: /* @__PURE__ */ s((e = 1) => `${We}T`.repeat(e), "down")
  }, vM = {
    screen: `${We}2J`,
    up: /* @__PURE__ */ s((e = 1) => `${We}1J`.repeat(e), "up"),
    down: /* @__PURE__ */ s((e = 1) => `${We}J`.repeat(e), "down"),
    line: `${We}2K`,
    lineEnd: `${We}K`,
    lineStart: `${We}1K`,
    lines(e) {
      let t = "";
      for (let r = 0; r < e; r++)
        t += this.line + (r < e - 1 ? Uf.up() : "");
      return e && (t += Uf.left), t;
    }
  };
  GC.exports = { cursor: Uf, scroll: bM, erase: vM, beep: EM };
});

// ../node_modules/prompts/dist/util/clear.js
var ZC = I((VY, QC) => {
  "use strict";
  function CM(e, t) {
    var r = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
    if (!r) {
      if (Array.isArray(e) || (r = wM(e)) || t && e && typeof e.length == "number") {
        r && (e = r);
        var i = 0, n = /* @__PURE__ */ s(function() {
        }, "F");
        return { s: n, n: /* @__PURE__ */ s(function() {
          return i >= e.length ? { done: !0 } : { done: !1, value: e[i++] };
        }, "n"), e: /* @__PURE__ */ s(function(c) {
          throw c;
        }, "e"), f: n };
      }
      throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
    }
    var u = !0, a = !1, o;
    return { s: /* @__PURE__ */ s(function() {
      r = r.call(e);
    }, "s"), n: /* @__PURE__ */ s(function() {
      var c = r.next();
      return u = c.done, c;
    }, "n"), e: /* @__PURE__ */ s(function(c) {
      a = !0, o = c;
    }, "e"), f: /* @__PURE__ */ s(function() {
      try {
        !u && r.return != null && r.return();
      } finally {
        if (a) throw o;
      }
    }, "f") };
  }
  s(CM, "_createForOfIteratorHelper");
  function wM(e, t) {
    if (e) {
      if (typeof e == "string") return XC(e, t);
      var r = Object.prototype.toString.call(e).slice(8, -1);
      if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
      if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return XC(e, t);
    }
  }
  s(wM, "_unsupportedIterableToArray");
  function XC(e, t) {
    (t == null || t > e.length) && (t = e.length);
    for (var r = 0, i = new Array(t); r < t; r++) i[r] = e[r];
    return i;
  }
  s(XC, "_arrayLikeToArray");
  var AM = bo(), KC = Je(), YC = KC.erase, FM = KC.cursor, SM = /* @__PURE__ */ s((e) => [...AM(e)].length, "width");
  QC.exports = function(e, t) {
    if (!t) return YC.line + FM.to(0);
    let r = 0, i = e.split(/\r?\n/);
    var n = CM(i), u;
    try {
      for (n.s(); !(u = n.n()).done; ) {
        let a = u.value;
        r += 1 + Math.floor(Math.max(SM(a) - 1, 0) / t);
      }
    } catch (a) {
      n.e(a);
    } finally {
      n.f();
    }
    return YC.lines(r);
  };
});

// ../node_modules/prompts/dist/util/figures.js
var zf = I((zY, e2) => {
  "use strict";
  var ru = {
    arrowUp: "\u2191",
    arrowDown: "\u2193",
    arrowLeft: "\u2190",
    arrowRight: "\u2192",
    radioOn: "\u25C9",
    radioOff: "\u25EF",
    tick: "\u2714",
    cross: "\u2716",
    ellipsis: "\u2026",
    pointerSmall: "\u203A",
    line: "\u2500",
    pointer: "\u276F"
  }, _M = {
    arrowUp: ru.arrowUp,
    arrowDown: ru.arrowDown,
    arrowLeft: ru.arrowLeft,
    arrowRight: ru.arrowRight,
    radioOn: "(*)",
    radioOff: "( )",
    tick: "\u221A",
    cross: "\xD7",
    ellipsis: "...",
    pointerSmall: "\xBB",
    line: "\u2500",
    pointer: ">"
  }, kM = process.platform === "win32" ? _M : ru;
  e2.exports = kM;
});

// ../node_modules/prompts/dist/util/style.js
var r2 = I((HY, t2) => {
  "use strict";
  var Kn = He(), an = zf(), Hf = Object.freeze({
    password: {
      scale: 1,
      render: /* @__PURE__ */ s((e) => "*".repeat(e.length), "render")
    },
    emoji: {
      scale: 2,
      render: /* @__PURE__ */ s((e) => "\u{1F603}".repeat(e.length), "render")
    },
    invisible: {
      scale: 0,
      render: /* @__PURE__ */ s((e) => "", "render")
    },
    default: {
      scale: 1,
      render: /* @__PURE__ */ s((e) => `${e}`, "render")
    }
  }), BM = /* @__PURE__ */ s((e) => Hf[e] || Hf.default, "render"), iu = Object.freeze({
    aborted: Kn.red(an.cross),
    done: Kn.green(an.tick),
    exited: Kn.yellow(an.cross),
    default: Kn.cyan("?")
  }), TM = /* @__PURE__ */ s((e, t, r) => t ? iu.aborted : r ? iu.exited : e ? iu.done : iu.default, "symbol"), PM = /* @__PURE__ */ s((e) => Kn.
  gray(e ? an.ellipsis : an.pointerSmall), "delimiter"), IM = /* @__PURE__ */ s((e, t) => Kn.gray(e ? t ? an.pointerSmall : "+" : an.line), "\
item");
  t2.exports = {
    styles: Hf,
    render: BM,
    symbols: iu,
    symbol: TM,
    delimiter: PM,
    item: IM
  };
});

// ../node_modules/prompts/dist/util/lines.js
var n2 = I((JY, i2) => {
  "use strict";
  var OM = bo();
  i2.exports = function(e, t) {
    let r = String(OM(e) || "").split(/\r?\n/);
    return t ? r.map((i) => Math.ceil(i.length / t)).reduce((i, n) => i + n) : r.length;
  };
});

// ../node_modules/prompts/dist/util/wrap.js
var u2 = I((GY, s2) => {
  "use strict";
  s2.exports = (e, t = {}) => {
    let r = Number.isSafeInteger(parseInt(t.margin)) ? new Array(parseInt(t.margin)).fill(" ").join("") : t.margin || "", i = t.width;
    return (e || "").split(/\r?\n/g).map((n) => n.split(/\s+/g).reduce((u, a) => (a.length + r.length >= i || u[u.length - 1].length + a.length +
    1 < i ? u[u.length - 1] += ` ${a}` : u.push(`${r}${a}`), u), [r]).join(`
`)).join(`
`);
  };
});

// ../node_modules/prompts/dist/util/entriesToDisplay.js
var o2 = I((XY, a2) => {
  "use strict";
  a2.exports = (e, t, r) => {
    r = r || t;
    let i = Math.min(t - r, e - Math.floor(r / 2));
    i < 0 && (i = 0);
    let n = Math.min(i + r, t);
    return {
      startIndex: i,
      endIndex: n
    };
  };
});

// ../node_modules/prompts/dist/util/index.js
var gr = I((YY, l2) => {
  "use strict";
  l2.exports = {
    action: WC(),
    clear: ZC(),
    style: r2(),
    strip: bo(),
    figures: zf(),
    lines: n2(),
    wrap: u2(),
    entriesToDisplay: o2()
  };
});

// ../node_modules/prompts/dist/elements/prompt.js
var ti = I((KY, p2) => {
  "use strict";
  var c2 = require("readline"), RM = gr(), NM = RM.action, LM = require("events"), h2 = Je(), MM = h2.beep, jM = h2.cursor, qM = He(), Wf = class extends LM {
    static {
      s(this, "Prompt");
    }
    constructor(t = {}) {
      super(), this.firstRender = !0, this.in = t.stdin || process.stdin, this.out = t.stdout || process.stdout, this.onRender = (t.onRender ||
      (() => {
      })).bind(this);
      let r = c2.createInterface({
        input: this.in,
        escapeCodeTimeout: 50
      });
      c2.emitKeypressEvents(this.in, r), this.in.isTTY && this.in.setRawMode(!0);
      let i = ["SelectPrompt", "MultiselectPrompt"].indexOf(this.constructor.name) > -1, n = /* @__PURE__ */ s((u, a) => {
        let o = NM(a, i);
        o === !1 ? this._ && this._(u, a) : typeof this[o] == "function" ? this[o](a) : this.bell();
      }, "keypress");
      this.close = () => {
        this.out.write(jM.show), this.in.removeListener("keypress", n), this.in.isTTY && this.in.setRawMode(!1), r.close(), this.emit(this.aborted ?
        "abort" : this.exited ? "exit" : "submit", this.value), this.closed = !0;
      }, this.in.on("keypress", n);
    }
    fire() {
      this.emit("state", {
        value: this.value,
        aborted: !!this.aborted,
        exited: !!this.exited
      });
    }
    bell() {
      this.out.write(MM);
    }
    render() {
      this.onRender(qM), this.firstRender && (this.firstRender = !1);
    }
  };
  p2.exports = Wf;
});

// ../node_modules/prompts/dist/elements/text.js
var g2 = I((ZY, D2) => {
  "use strict";
  function f2(e, t, r, i, n, u, a) {
    try {
      var o = e[u](a), l = o.value;
    } catch (c) {
      r(c);
      return;
    }
    o.done ? t(l) : Promise.resolve(l).then(i, n);
  }
  s(f2, "asyncGeneratorStep");
  function d2(e) {
    return function() {
      var t = this, r = arguments;
      return new Promise(function(i, n) {
        var u = e.apply(t, r);
        function a(l) {
          f2(u, i, n, a, o, "next", l);
        }
        s(a, "_next");
        function o(l) {
          f2(u, i, n, a, o, "throw", l);
        }
        s(o, "_throw"), a(void 0);
      });
    };
  }
  s(d2, "_asyncToGenerator");
  var vo = He(), $M = ti(), m2 = Je(), VM = m2.erase, nu = m2.cursor, Co = gr(), Jf = Co.style, Gf = Co.clear, UM = Co.lines, zM = Co.figures,
  Xf = class extends $M {
    static {
      s(this, "TextPrompt");
    }
    constructor(t = {}) {
      super(t), this.transform = Jf.render(t.style), this.scale = this.transform.scale, this.msg = t.message, this.initial = t.initial || "",
      this.validator = t.validate || (() => !0), this.value = "", this.errorMsg = t.error || "Please Enter A Valid Value", this.cursor = +!!this.
      initial, this.cursorOffset = 0, this.clear = Gf("", this.out.columns), this.render();
    }
    set value(t) {
      !t && this.initial ? (this.placeholder = !0, this.rendered = vo.gray(this.transform.render(this.initial))) : (this.placeholder = !1, this.
      rendered = this.transform.render(t)), this._value = t, this.fire();
    }
    get value() {
      return this._value;
    }
    reset() {
      this.value = "", this.cursor = +!!this.initial, this.cursorOffset = 0, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.value = this.value || this.initial, this.done = this.aborted = !0, this.error = !1, this.red = !1, this.fire(), this.render(), this.
      out.write(`
`), this.close();
    }
    validate() {
      var t = this;
      return d2(function* () {
        let r = yield t.validator(t.value);
        typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r;
      })();
    }
    submit() {
      var t = this;
      return d2(function* () {
        if (t.value = t.value || t.initial, t.cursorOffset = 0, t.cursor = t.rendered.length, yield t.validate(), t.error) {
          t.red = !0, t.fire(), t.render();
          return;
        }
        t.done = !0, t.aborted = !1, t.fire(), t.render(), t.out.write(`
`), t.close();
      })();
    }
    next() {
      if (!this.placeholder) return this.bell();
      this.value = this.initial, this.cursor = this.rendered.length, this.fire(), this.render();
    }
    moveCursor(t) {
      this.placeholder || (this.cursor = this.cursor + t, this.cursorOffset += t);
    }
    _(t, r) {
      let i = this.value.slice(0, this.cursor), n = this.value.slice(this.cursor);
      this.value = `${i}${t}${n}`, this.red = !1, this.cursor = this.placeholder ? 0 : i.length + 1, this.render();
    }
    delete() {
      if (this.isCursorAtStart()) return this.bell();
      let t = this.value.slice(0, this.cursor - 1), r = this.value.slice(this.cursor);
      this.value = `${t}${r}`, this.red = !1, this.isCursorAtStart() ? this.cursorOffset = 0 : (this.cursorOffset++, this.moveCursor(-1)), this.
      render();
    }
    deleteForward() {
      if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
      let t = this.value.slice(0, this.cursor), r = this.value.slice(this.cursor + 1);
      this.value = `${t}${r}`, this.red = !1, this.isCursorAtEnd() ? this.cursorOffset = 0 : this.cursorOffset++, this.render();
    }
    first() {
      this.cursor = 0, this.render();
    }
    last() {
      this.cursor = this.value.length, this.render();
    }
    left() {
      if (this.cursor <= 0 || this.placeholder) return this.bell();
      this.moveCursor(-1), this.render();
    }
    right() {
      if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
      this.moveCursor(1), this.render();
    }
    isCursorAtStart() {
      return this.cursor === 0 || this.placeholder && this.cursor === 1;
    }
    isCursorAtEnd() {
      return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1;
    }
    render() {
      this.closed || (this.firstRender || (this.outputError && this.out.write(nu.down(UM(this.outputError, this.out.columns) - 1) + Gf(this.
      outputError, this.out.columns)), this.out.write(Gf(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
      [Jf.symbol(this.done, this.aborted), vo.bold(this.msg), Jf.delimiter(this.done), this.red ? vo.red(this.rendered) : this.rendered].join(
      " "), this.error && (this.outputError += this.errorMsg.split(`
`).reduce((t, r, i) => t + `
${i ? " " : zM.pointerSmall} ${vo.red().italic(r)}`, "")), this.out.write(VM.line + nu.to(0) + this.outputText + nu.save + this.outputError +
      nu.restore + nu.move(this.cursorOffset, 0)));
    }
  };
  D2.exports = Xf;
});

// ../node_modules/prompts/dist/elements/select.js
var b2 = I((tK, E2) => {
  "use strict";
  var ri = He(), HM = ti(), su = gr(), x2 = su.style, y2 = su.clear, wo = su.figures, WM = su.wrap, JM = su.entriesToDisplay, GM = Je(), XM = GM.
  cursor, Yf = class extends HM {
    static {
      s(this, "SelectPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.hint = t.hint || "- Use arrow-keys. Return to submit.", this.warn = t.warn || "- This option is d\
isabled", this.cursor = t.initial || 0, this.choices = t.choices.map((r, i) => (typeof r == "string" && (r = {
        title: r,
        value: i
      }), {
        title: r && (r.title || r.value || r),
        value: r && (r.value === void 0 ? i : r.value),
        description: r && r.description,
        selected: r && r.selected,
        disabled: r && r.disabled
      })), this.optionsPerPage = t.optionsPerPage || 10, this.value = (this.choices[this.cursor] || {}).value, this.clear = y2("", this.out.
      columns), this.render();
    }
    moveCursor(t) {
      this.cursor = t, this.value = this.choices[t].value, this.fire();
    }
    reset() {
      this.moveCursor(0), this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.selection.disabled ? this.bell() : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close());
    }
    first() {
      this.moveCursor(0), this.render();
    }
    last() {
      this.moveCursor(this.choices.length - 1), this.render();
    }
    up() {
      this.cursor === 0 ? this.moveCursor(this.choices.length - 1) : this.moveCursor(this.cursor - 1), this.render();
    }
    down() {
      this.cursor === this.choices.length - 1 ? this.moveCursor(0) : this.moveCursor(this.cursor + 1), this.render();
    }
    next() {
      this.moveCursor((this.cursor + 1) % this.choices.length), this.render();
    }
    _(t, r) {
      if (t === " ") return this.submit();
    }
    get selection() {
      return this.choices[this.cursor];
    }
    render() {
      if (this.closed) return;
      this.firstRender ? this.out.write(XM.hide) : this.out.write(y2(this.outputText, this.out.columns)), super.render();
      let t = JM(this.cursor, this.choices.length, this.optionsPerPage), r = t.startIndex, i = t.endIndex;
      if (this.outputText = [x2.symbol(this.done, this.aborted), ri.bold(this.msg), x2.delimiter(!1), this.done ? this.selection.title : this.
      selection.disabled ? ri.yellow(this.warn) : ri.gray(this.hint)].join(" "), !this.done) {
        this.outputText += `
`;
        for (let n = r; n < i; n++) {
          let u, a, o = "", l = this.choices[n];
          n === r && r > 0 ? a = wo.arrowUp : n === i - 1 && i < this.choices.length ? a = wo.arrowDown : a = " ", l.disabled ? (u = this.cursor ===
          n ? ri.gray().underline(l.title) : ri.strikethrough().gray(l.title), a = (this.cursor === n ? ri.bold().gray(wo.pointer) + " " : "\
  ") + a) : (u = this.cursor === n ? ri.cyan().underline(l.title) : l.title, a = (this.cursor === n ? ri.cyan(wo.pointer) + " " : "  ") + a,
          l.description && this.cursor === n && (o = ` - ${l.description}`, (a.length + u.length + o.length >= this.out.columns || l.description.
          split(/\r?\n/).length > 1) && (o = `
` + WM(l.description, {
            margin: 3,
            width: this.out.columns
          })))), this.outputText += `${a} ${u}${ri.gray(o)}
`;
        }
      }
      this.out.write(this.outputText);
    }
  };
  E2.exports = Yf;
});

// ../node_modules/prompts/dist/elements/toggle.js
var S2 = I((iK, F2) => {
  "use strict";
  var Ao = He(), YM = ti(), w2 = gr(), v2 = w2.style, KM = w2.clear, A2 = Je(), C2 = A2.cursor, QM = A2.erase, Kf = class extends YM {
    static {
      s(this, "TogglePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.value = !!t.initial, this.active = t.active || "on", this.inactive = t.inactive || "off", this.initialValue =
      this.value, this.render();
    }
    reset() {
      this.value = this.initialValue, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    deactivate() {
      if (this.value === !1) return this.bell();
      this.value = !1, this.render();
    }
    activate() {
      if (this.value === !0) return this.bell();
      this.value = !0, this.render();
    }
    delete() {
      this.deactivate();
    }
    left() {
      this.deactivate();
    }
    right() {
      this.activate();
    }
    down() {
      this.deactivate();
    }
    up() {
      this.activate();
    }
    next() {
      this.value = !this.value, this.fire(), this.render();
    }
    _(t, r) {
      if (t === " ")
        this.value = !this.value;
      else if (t === "1")
        this.value = !0;
      else if (t === "0")
        this.value = !1;
      else return this.bell();
      this.render();
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(C2.hide) : this.out.write(KM(this.outputText, this.out.columns)), super.render(), this.
      outputText = [v2.symbol(this.done, this.aborted), Ao.bold(this.msg), v2.delimiter(this.done), this.value ? this.inactive : Ao.cyan().underline(
      this.inactive), Ao.gray("/"), this.value ? Ao.cyan().underline(this.active) : this.active].join(" "), this.out.write(QM.line + C2.to(0) +
      this.outputText));
    }
  };
  F2.exports = Kf;
});

// ../node_modules/prompts/dist/dateparts/datepart.js
var Rr = I((sK, _2) => {
  "use strict";
  var Qf = class e {
    static {
      s(this, "DatePart");
    }
    constructor({
      token: t,
      date: r,
      parts: i,
      locales: n
    }) {
      this.token = t, this.date = r || /* @__PURE__ */ new Date(), this.parts = i || [this], this.locales = n || {};
    }
    up() {
    }
    down() {
    }
    next() {
      let t = this.parts.indexOf(this);
      return this.parts.find((r, i) => i > t && r instanceof e);
    }
    setTo(t) {
    }
    prev() {
      let t = [].concat(this.parts).reverse(), r = t.indexOf(this);
      return t.find((i, n) => n > r && i instanceof e);
    }
    toString() {
      return String(this.date);
    }
  };
  _2.exports = Qf;
});

// ../node_modules/prompts/dist/dateparts/meridiem.js
var B2 = I((aK, k2) => {
  "use strict";
  var ZM = Rr(), Zf = class extends ZM {
    static {
      s(this, "Meridiem");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setHours((this.date.getHours() + 12) % 24);
    }
    down() {
      this.up();
    }
    toString() {
      let t = this.date.getHours() > 12 ? "pm" : "am";
      return /\A/.test(this.token) ? t.toUpperCase() : t;
    }
  };
  k2.exports = Zf;
});

// ../node_modules/prompts/dist/dateparts/day.js
var P2 = I((lK, T2) => {
  "use strict";
  var ej = Rr(), tj = /* @__PURE__ */ s((e) => (e = e % 10, e === 1 ? "st" : e === 2 ? "nd" : e === 3 ? "rd" : "th"), "pos"), ed = class extends ej {
    static {
      s(this, "Day");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setDate(this.date.getDate() + 1);
    }
    down() {
      this.date.setDate(this.date.getDate() - 1);
    }
    setTo(t) {
      this.date.setDate(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getDate(), r = this.date.getDay();
      return this.token === "DD" ? String(t).padStart(2, "0") : this.token === "Do" ? t + tj(t) : this.token === "d" ? r + 1 : this.token ===
      "ddd" ? this.locales.weekdaysShort[r] : this.token === "dddd" ? this.locales.weekdays[r] : t;
    }
  };
  T2.exports = ed;
});

// ../node_modules/prompts/dist/dateparts/hours.js
var O2 = I((hK, I2) => {
  "use strict";
  var rj = Rr(), td = class extends rj {
    static {
      s(this, "Hours");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setHours(this.date.getHours() + 1);
    }
    down() {
      this.date.setHours(this.date.getHours() - 1);
    }
    setTo(t) {
      this.date.setHours(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getHours();
      return /h/.test(this.token) && (t = t % 12 || 12), this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  I2.exports = td;
});

// ../node_modules/prompts/dist/dateparts/milliseconds.js
var N2 = I((fK, R2) => {
  "use strict";
  var ij = Rr(), rd = class extends ij {
    static {
      s(this, "Milliseconds");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMilliseconds(this.date.getMilliseconds() + 1);
    }
    down() {
      this.date.setMilliseconds(this.date.getMilliseconds() - 1);
    }
    setTo(t) {
      this.date.setMilliseconds(parseInt(t.substr(-this.token.length)));
    }
    toString() {
      return String(this.date.getMilliseconds()).padStart(4, "0").substr(0, this.token.length);
    }
  };
  R2.exports = rd;
});

// ../node_modules/prompts/dist/dateparts/minutes.js
var M2 = I((mK, L2) => {
  "use strict";
  var nj = Rr(), id = class extends nj {
    static {
      s(this, "Minutes");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMinutes(this.date.getMinutes() + 1);
    }
    down() {
      this.date.setMinutes(this.date.getMinutes() - 1);
    }
    setTo(t) {
      this.date.setMinutes(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getMinutes();
      return this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  L2.exports = id;
});

// ../node_modules/prompts/dist/dateparts/month.js
var q2 = I((gK, j2) => {
  "use strict";
  var sj = Rr(), nd = class extends sj {
    static {
      s(this, "Month");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMonth(this.date.getMonth() + 1);
    }
    down() {
      this.date.setMonth(this.date.getMonth() - 1);
    }
    setTo(t) {
      t = parseInt(t.substr(-2)) - 1, this.date.setMonth(t < 0 ? 0 : t);
    }
    toString() {
      let t = this.date.getMonth(), r = this.token.length;
      return r === 2 ? String(t + 1).padStart(2, "0") : r === 3 ? this.locales.monthsShort[t] : r === 4 ? this.locales.months[t] : String(t +
      1);
    }
  };
  j2.exports = nd;
});

// ../node_modules/prompts/dist/dateparts/seconds.js
var V2 = I((yK, $2) => {
  "use strict";
  var uj = Rr(), sd = class extends uj {
    static {
      s(this, "Seconds");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setSeconds(this.date.getSeconds() + 1);
    }
    down() {
      this.date.setSeconds(this.date.getSeconds() - 1);
    }
    setTo(t) {
      this.date.setSeconds(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getSeconds();
      return this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  $2.exports = sd;
});

// ../node_modules/prompts/dist/dateparts/year.js
var z2 = I((bK, U2) => {
  "use strict";
  var aj = Rr(), ud = class extends aj {
    static {
      s(this, "Year");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setFullYear(this.date.getFullYear() + 1);
    }
    down() {
      this.date.setFullYear(this.date.getFullYear() - 1);
    }
    setTo(t) {
      this.date.setFullYear(t.substr(-4));
    }
    toString() {
      let t = String(this.date.getFullYear()).padStart(4, "0");
      return this.token.length === 2 ? t.substr(-2) : t;
    }
  };
  U2.exports = ud;
});

// ../node_modules/prompts/dist/dateparts/index.js
var W2 = I((CK, H2) => {
  "use strict";
  H2.exports = {
    DatePart: Rr(),
    Meridiem: B2(),
    Day: P2(),
    Hours: O2(),
    Milliseconds: N2(),
    Minutes: M2(),
    Month: q2(),
    Seconds: V2(),
    Year: z2()
  };
});

// ../node_modules/prompts/dist/elements/date.js
var rw = I((wK, tw) => {
  "use strict";
  function J2(e, t, r, i, n, u, a) {
    try {
      var o = e[u](a), l = o.value;
    } catch (c) {
      r(c);
      return;
    }
    o.done ? t(l) : Promise.resolve(l).then(i, n);
  }
  s(J2, "asyncGeneratorStep");
  function G2(e) {
    return function() {
      var t = this, r = arguments;
      return new Promise(function(i, n) {
        var u = e.apply(t, r);
        function a(l) {
          J2(u, i, n, a, o, "next", l);
        }
        s(a, "_next");
        function o(l) {
          J2(u, i, n, a, o, "throw", l);
        }
        s(o, "_throw"), a(void 0);
      });
    };
  }
  s(G2, "_asyncToGenerator");
  var ad = He(), oj = ti(), ld = gr(), X2 = ld.style, Y2 = ld.clear, lj = ld.figures, ew = Je(), cj = ew.erase, K2 = ew.cursor, ii = W2(), Q2 = ii.
  DatePart, hj = ii.Meridiem, pj = ii.Day, fj = ii.Hours, dj = ii.Milliseconds, mj = ii.Minutes, Dj = ii.Month, gj = ii.Seconds, xj = ii.Year,
  yj = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g, Z2 = {
    1: ({
      token: e
    }) => e.replace(/\\(.)/g, "$1"),
    2: (e) => new pj(e),
    // Day // TODO
    3: (e) => new Dj(e),
    // Month
    4: (e) => new xj(e),
    // Year
    5: (e) => new hj(e),
    // AM/PM // TODO (special)
    6: (e) => new fj(e),
    // Hours
    7: (e) => new mj(e),
    // Minutes
    8: (e) => new gj(e),
    // Seconds
    9: (e) => new dj(e)
    // Fractional seconds
  }, Ej = {
    months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","),
    monthsShort: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
    weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
    weekdaysShort: "Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")
  }, od = class extends oj {
    static {
      s(this, "DatePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.cursor = 0, this.typed = "", this.locales = Object.assign(Ej, t.locales), this._date = t.initial ||
      /* @__PURE__ */ new Date(), this.errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.mask =
      t.mask || "YYYY-MM-DD HH:mm:ss", this.clear = Y2("", this.out.columns), this.render();
    }
    get value() {
      return this.date;
    }
    get date() {
      return this._date;
    }
    set date(t) {
      t && this._date.setTime(t.getTime());
    }
    set mask(t) {
      let r;
      for (this.parts = []; r = yj.exec(t); ) {
        let n = r.shift(), u = r.findIndex((a) => a != null);
        this.parts.push(u in Z2 ? Z2[u]({
          token: r[u] || n,
          date: this.date,
          parts: this.parts,
          locales: this.locales
        }) : r[u] || n);
      }
      let i = this.parts.reduce((n, u) => (typeof u == "string" && typeof n[n.length - 1] == "string" ? n[n.length - 1] += u : n.push(u), n),
      []);
      this.parts.splice(0), this.parts.push(...i), this.reset();
    }
    moveCursor(t) {
      this.typed = "", this.cursor = t, this.fire();
    }
    reset() {
      this.moveCursor(this.parts.findIndex((t) => t instanceof Q2)), this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    validate() {
      var t = this;
      return G2(function* () {
        let r = yield t.validator(t.value);
        typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r;
      })();
    }
    submit() {
      var t = this;
      return G2(function* () {
        if (yield t.validate(), t.error) {
          t.color = "red", t.fire(), t.render();
          return;
        }
        t.done = !0, t.aborted = !1, t.fire(), t.render(), t.out.write(`
`), t.close();
      })();
    }
    up() {
      this.typed = "", this.parts[this.cursor].up(), this.render();
    }
    down() {
      this.typed = "", this.parts[this.cursor].down(), this.render();
    }
    left() {
      let t = this.parts[this.cursor].prev();
      if (t == null) return this.bell();
      this.moveCursor(this.parts.indexOf(t)), this.render();
    }
    right() {
      let t = this.parts[this.cursor].next();
      if (t == null) return this.bell();
      this.moveCursor(this.parts.indexOf(t)), this.render();
    }
    next() {
      let t = this.parts[this.cursor].next();
      this.moveCursor(t ? this.parts.indexOf(t) : this.parts.findIndex((r) => r instanceof Q2)), this.render();
    }
    _(t) {
      /\d/.test(t) && (this.typed += t, this.parts[this.cursor].setTo(this.typed), this.render());
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(K2.hide) : this.out.write(Y2(this.outputText, this.out.columns)), super.render(), this.
      outputText = [X2.symbol(this.done, this.aborted), ad.bold(this.msg), X2.delimiter(!1), this.parts.reduce((t, r, i) => t.concat(i === this.
      cursor && !this.done ? ad.cyan().underline(r.toString()) : r), []).join("")].join(" "), this.error && (this.outputText += this.errorMsg.
      split(`
`).reduce((t, r, i) => t + `
${i ? " " : lj.pointerSmall} ${ad.red().italic(r)}`, "")), this.out.write(cj.line + K2.to(0) + this.outputText));
    }
  };
  tw.exports = od;
});

// ../node_modules/prompts/dist/elements/number.js
var lw = I((FK, ow) => {
  "use strict";
  function iw(e, t, r, i, n, u, a) {
    try {
      var o = e[u](a), l = o.value;
    } catch (c) {
      r(c);
      return;
    }
    o.done ? t(l) : Promise.resolve(l).then(i, n);
  }
  s(iw, "asyncGeneratorStep");
  function nw(e) {
    return function() {
      var t = this, r = arguments;
      return new Promise(function(i, n) {
        var u = e.apply(t, r);
        function a(l) {
          iw(u, i, n, a, o, "next", l);
        }
        s(a, "_next");
        function o(l) {
          iw(u, i, n, a, o, "throw", l);
        }
        s(o, "_throw"), a(void 0);
      });
    };
  }
  s(nw, "_asyncToGenerator");
  var Fo = He(), bj = ti(), aw = Je(), So = aw.cursor, vj = aw.erase, _o = gr(), cd = _o.style, Cj = _o.figures, sw = _o.clear, wj = _o.lines,
  Aj = /[0-9]/, hd = /* @__PURE__ */ s((e) => e !== void 0, "isDef"), uw = /* @__PURE__ */ s((e, t) => {
    let r = Math.pow(10, t);
    return Math.round(e * r) / r;
  }, "round"), pd = class extends bj {
    static {
      s(this, "NumberPrompt");
    }
    constructor(t = {}) {
      super(t), this.transform = cd.render(t.style), this.msg = t.message, this.initial = hd(t.initial) ? t.initial : "", this.float = !!t.float,
      this.round = t.round || 2, this.inc = t.increment || 1, this.min = hd(t.min) ? t.min : -1 / 0, this.max = hd(t.max) ? t.max : 1 / 0, this.
      errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.color = "cyan", this.value = "", this.
      typed = "", this.lastHit = 0, this.render();
    }
    set value(t) {
      !t && t !== 0 ? (this.placeholder = !0, this.rendered = Fo.gray(this.transform.render(`${this.initial}`)), this._value = "") : (this.placeholder =
      !1, this.rendered = this.transform.render(`${uw(t, this.round)}`), this._value = uw(t, this.round)), this.fire();
    }
    get value() {
      return this._value;
    }
    parse(t) {
      return this.float ? parseFloat(t) : parseInt(t);
    }
    valid(t) {
      return t === "-" || t === "." && this.float || Aj.test(t);
    }
    reset() {
      this.typed = "", this.value = "", this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      let t = this.value;
      this.value = t !== "" ? t : this.initial, this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`\

`), this.close();
    }
    validate() {
      var t = this;
      return nw(function* () {
        let r = yield t.validator(t.value);
        typeof r == "string" && (t.errorMsg = r, r = !1), t.error = !r;
      })();
    }
    submit() {
      var t = this;
      return nw(function* () {
        if (yield t.validate(), t.error) {
          t.color = "red", t.fire(), t.render();
          return;
        }
        let r = t.value;
        t.value = r !== "" ? r : t.initial, t.done = !0, t.aborted = !1, t.error = !1, t.fire(), t.render(), t.out.write(`
`), t.close();
      })();
    }
    up() {
      if (this.typed = "", this.value === "" && (this.value = this.min - this.inc), this.value >= this.max) return this.bell();
      this.value += this.inc, this.color = "cyan", this.fire(), this.render();
    }
    down() {
      if (this.typed = "", this.value === "" && (this.value = this.min + this.inc), this.value <= this.min) return this.bell();
      this.value -= this.inc, this.color = "cyan", this.fire(), this.render();
    }
    delete() {
      let t = this.value.toString();
      if (t.length === 0) return this.bell();
      this.value = this.parse(t = t.slice(0, -1)) || "", this.value !== "" && this.value < this.min && (this.value = this.min), this.color =
      "cyan", this.fire(), this.render();
    }
    next() {
      this.value = this.initial, this.fire(), this.render();
    }
    _(t, r) {
      if (!this.valid(t)) return this.bell();
      let i = Date.now();
      if (i - this.lastHit > 1e3 && (this.typed = ""), this.typed += t, this.lastHit = i, this.color = "cyan", t === ".") return this.fire();
      this.value = Math.min(this.parse(this.typed), this.max), this.value > this.max && (this.value = this.max), this.value < this.min && (this.
      value = this.min), this.fire(), this.render();
    }
    render() {
      this.closed || (this.firstRender || (this.outputError && this.out.write(So.down(wj(this.outputError, this.out.columns) - 1) + sw(this.
      outputError, this.out.columns)), this.out.write(sw(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
      [cd.symbol(this.done, this.aborted), Fo.bold(this.msg), cd.delimiter(this.done), !this.done || !this.done && !this.placeholder ? Fo[this.
      color]().underline(this.rendered) : this.rendered].join(" "), this.error && (this.outputError += this.errorMsg.split(`
`).reduce((t, r, i) => t + `
${i ? " " : Cj.pointerSmall} ${Fo.red().italic(r)}`, "")), this.out.write(vj.line + So.to(0) + this.outputText + So.save + this.outputError +
      So.restore));
    }
  };
  ow.exports = pd;
});

// ../node_modules/prompts/dist/elements/multiselect.js
var dd = I((_K, pw) => {
  "use strict";
  var Nr = He(), Fj = Je(), Sj = Fj.cursor, _j = ti(), uu = gr(), cw = uu.clear, Ti = uu.figures, hw = uu.style, kj = uu.wrap, Bj = uu.entriesToDisplay,
  fd = class extends _j {
    static {
      s(this, "MultiselectPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.cursor = t.cursor || 0, this.scrollIndex = t.cursor || 0, this.hint = t.hint || "", this.warn = t.
      warn || "- This option is disabled -", this.minSelected = t.min, this.showMinError = !1, this.maxChoices = t.max, this.instructions = t.
      instructions, this.optionsPerPage = t.optionsPerPage || 10, this.value = t.choices.map((r, i) => (typeof r == "string" && (r = {
        title: r,
        value: i
      }), {
        title: r && (r.title || r.value || r),
        description: r && r.description,
        value: r && (r.value === void 0 ? i : r.value),
        selected: r && r.selected,
        disabled: r && r.disabled
      })), this.clear = cw("", this.out.columns), t.overrideRender || this.render();
    }
    reset() {
      this.value.map((t) => !t.selected), this.cursor = 0, this.fire(), this.render();
    }
    selected() {
      return this.value.filter((t) => t.selected);
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      let t = this.value.filter((r) => r.selected);
      this.minSelected && t.length < this.minSelected ? (this.showMinError = !0, this.render()) : (this.done = !0, this.aborted = !1, this.fire(),
      this.render(), this.out.write(`
`), this.close());
    }
    first() {
      this.cursor = 0, this.render();
    }
    last() {
      this.cursor = this.value.length - 1, this.render();
    }
    next() {
      this.cursor = (this.cursor + 1) % this.value.length, this.render();
    }
    up() {
      this.cursor === 0 ? this.cursor = this.value.length - 1 : this.cursor--, this.render();
    }
    down() {
      this.cursor === this.value.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
    }
    left() {
      this.value[this.cursor].selected = !1, this.render();
    }
    right() {
      if (this.value.filter((t) => t.selected).length >= this.maxChoices) return this.bell();
      this.value[this.cursor].selected = !0, this.render();
    }
    handleSpaceToggle() {
      let t = this.value[this.cursor];
      if (t.selected)
        t.selected = !1, this.render();
      else {
        if (t.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
          return this.bell();
        t.selected = !0, this.render();
      }
    }
    toggleAll() {
      if (this.maxChoices !== void 0 || this.value[this.cursor].disabled)
        return this.bell();
      let t = !this.value[this.cursor].selected;
      this.value.filter((r) => !r.disabled).forEach((r) => r.selected = t), this.render();
    }
    _(t, r) {
      if (t === " ")
        this.handleSpaceToggle();
      else if (t === "a")
        this.toggleAll();
      else
        return this.bell();
    }
    renderInstructions() {
      return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
Instructions:
    ${Ti.arrowUp}/${Ti.arrowDown}: Highlight option
    ${Ti.arrowLeft}/${Ti.arrowRight}/[space]: Toggle selection
` + (this.maxChoices === void 0 ? `    a: Toggle all
` : "") + "    enter/return: Complete answer" : "";
    }
    renderOption(t, r, i, n) {
      let u = (r.selected ? Nr.green(Ti.radioOn) : Ti.radioOff) + " " + n + " ", a, o;
      return r.disabled ? a = t === i ? Nr.gray().underline(r.title) : Nr.strikethrough().gray(r.title) : (a = t === i ? Nr.cyan().underline(
      r.title) : r.title, t === i && r.description && (o = ` - ${r.description}`, (u.length + a.length + o.length >= this.out.columns || r.description.
      split(/\r?\n/).length > 1) && (o = `
` + kj(r.description, {
        margin: u.length,
        width: this.out.columns
      })))), u + a + Nr.gray(o || "");
    }
    // shared with autocompleteMultiselect
    paginateOptions(t) {
      if (t.length === 0)
        return Nr.red("No matches for this query.");
      let r = Bj(this.cursor, t.length, this.optionsPerPage), i = r.startIndex, n = r.endIndex, u, a = [];
      for (let o = i; o < n; o++)
        o === i && i > 0 ? u = Ti.arrowUp : o === n - 1 && n < t.length ? u = Ti.arrowDown : u = " ", a.push(this.renderOption(this.cursor, t[o],
        o, u));
      return `
` + a.join(`
`);
    }
    // shared with autocomleteMultiselect
    renderOptions(t) {
      return this.done ? "" : this.paginateOptions(t);
    }
    renderDoneOrInstructions() {
      if (this.done)
        return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
      let t = [Nr.gray(this.hint), this.renderInstructions()];
      return this.value[this.cursor].disabled && t.push(Nr.yellow(this.warn)), t.join(" ");
    }
    render() {
      if (this.closed) return;
      this.firstRender && this.out.write(Sj.hide), super.render();
      let t = [hw.symbol(this.done, this.aborted), Nr.bold(this.msg), hw.delimiter(!1), this.renderDoneOrInstructions()].join(" ");
      this.showMinError && (t += Nr.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), t += this.renderOptions(
      this.value), this.out.write(this.clear + t), this.clear = cw(t, this.out.columns);
    }
  };
  pw.exports = fd;
});

// ../node_modules/prompts/dist/elements/autocomplete.js
var yw = I((BK, xw) => {
  "use strict";
  function fw(e, t, r, i, n, u, a) {
    try {
      var o = e[u](a), l = o.value;
    } catch (c) {
      r(c);
      return;
    }
    o.done ? t(l) : Promise.resolve(l).then(i, n);
  }
  s(fw, "asyncGeneratorStep");
  function Tj(e) {
    return function() {
      var t = this, r = arguments;
      return new Promise(function(i, n) {
        var u = e.apply(t, r);
        function a(l) {
          fw(u, i, n, a, o, "next", l);
        }
        s(a, "_next");
        function o(l) {
          fw(u, i, n, a, o, "throw", l);
        }
        s(o, "_throw"), a(void 0);
      });
    };
  }
  s(Tj, "_asyncToGenerator");
  var au = He(), Pj = ti(), gw = Je(), Ij = gw.erase, dw = gw.cursor, ou = gr(), md = ou.style, mw = ou.clear, Dd = ou.figures, Oj = ou.wrap,
  Rj = ou.entriesToDisplay, Dw = /* @__PURE__ */ s((e, t) => e[t] && (e[t].value || e[t].title || e[t]), "getVal"), Nj = /* @__PURE__ */ s((e, t) => e[t] &&
  (e[t].title || e[t].value || e[t]), "getTitle"), Lj = /* @__PURE__ */ s((e, t) => {
    let r = e.findIndex((i) => i.value === t || i.title === t);
    return r > -1 ? r : void 0;
  }, "getIndex"), gd = class extends Pj {
    static {
      s(this, "AutocompletePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.suggest = t.suggest, this.choices = t.choices, this.initial = typeof t.initial == "number" ? t.initial :
      Lj(t.choices, t.initial), this.select = this.initial || t.cursor || 0, this.i18n = {
        noMatches: t.noMatches || "no matches found"
      }, this.fallback = t.fallback || this.initial, this.clearFirst = t.clearFirst || !1, this.suggestions = [], this.input = "", this.limit =
      t.limit || 10, this.cursor = 0, this.transform = md.render(t.style), this.scale = this.transform.scale, this.render = this.render.bind(
      this), this.complete = this.complete.bind(this), this.clear = mw("", this.out.columns), this.complete(this.render), this.render();
    }
    set fallback(t) {
      this._fb = Number.isSafeInteger(parseInt(t)) ? parseInt(t) : t;
    }
    get fallback() {
      let t;
      return typeof this._fb == "number" ? t = this.choices[this._fb] : typeof this._fb == "string" && (t = {
        title: this._fb
      }), t || this._fb || {
        title: this.i18n.noMatches
      };
    }
    moveSelect(t) {
      this.select = t, this.suggestions.length > 0 ? this.value = Dw(this.suggestions, t) : this.value = this.fallback.value, this.fire();
    }
    complete(t) {
      var r = this;
      return Tj(function* () {
        let i = r.completing = r.suggest(r.input, r.choices), n = yield i;
        if (r.completing !== i) return;
        r.suggestions = n.map((a, o, l) => ({
          title: Nj(l, o),
          value: Dw(l, o),
          description: a.description
        })), r.completing = !1;
        let u = Math.max(n.length - 1, 0);
        r.moveSelect(Math.min(u, r.select)), t && t();
      })();
    }
    reset() {
      this.input = "", this.complete(() => {
        this.moveSelect(this.initial !== void 0 ? this.initial : 0), this.render();
      }), this.render();
    }
    exit() {
      this.clearFirst && this.input.length > 0 ? this.reset() : (this.done = this.exited = !0, this.aborted = !1, this.fire(), this.render(),
      this.out.write(`
`), this.close());
    }
    abort() {
      this.done = this.aborted = !0, this.exited = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.done = !0, this.aborted = this.exited = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    _(t, r) {
      let i = this.input.slice(0, this.cursor), n = this.input.slice(this.cursor);
      this.input = `${i}${t}${n}`, this.cursor = i.length + 1, this.complete(this.render), this.render();
    }
    delete() {
      if (this.cursor === 0) return this.bell();
      let t = this.input.slice(0, this.cursor - 1), r = this.input.slice(this.cursor);
      this.input = `${t}${r}`, this.complete(this.render), this.cursor = this.cursor - 1, this.render();
    }
    deleteForward() {
      if (this.cursor * this.scale >= this.rendered.length) return this.bell();
      let t = this.input.slice(0, this.cursor), r = this.input.slice(this.cursor + 1);
      this.input = `${t}${r}`, this.complete(this.render), this.render();
    }
    first() {
      this.moveSelect(0), this.render();
    }
    last() {
      this.moveSelect(this.suggestions.length - 1), this.render();
    }
    up() {
      this.select === 0 ? this.moveSelect(this.suggestions.length - 1) : this.moveSelect(this.select - 1), this.render();
    }
    down() {
      this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
    }
    next() {
      this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
    }
    nextPage() {
      this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1)), this.render();
    }
    prevPage() {
      this.moveSelect(Math.max(this.select - this.limit, 0)), this.render();
    }
    left() {
      if (this.cursor <= 0) return this.bell();
      this.cursor = this.cursor - 1, this.render();
    }
    right() {
      if (this.cursor * this.scale >= this.rendered.length) return this.bell();
      this.cursor = this.cursor + 1, this.render();
    }
    renderOption(t, r, i, n) {
      let u, a = i ? Dd.arrowUp : n ? Dd.arrowDown : " ", o = r ? au.cyan().underline(t.title) : t.title;
      return a = (r ? au.cyan(Dd.pointer) + " " : "  ") + a, t.description && (u = ` - ${t.description}`, (a.length + o.length + u.length >=
      this.out.columns || t.description.split(/\r?\n/).length > 1) && (u = `
` + Oj(t.description, {
        margin: 3,
        width: this.out.columns
      }))), a + " " + o + au.gray(u || "");
    }
    render() {
      if (this.closed) return;
      this.firstRender ? this.out.write(dw.hide) : this.out.write(mw(this.outputText, this.out.columns)), super.render();
      let t = Rj(this.select, this.choices.length, this.limit), r = t.startIndex, i = t.endIndex;
      if (this.outputText = [md.symbol(this.done, this.aborted, this.exited), au.bold(this.msg), md.delimiter(this.completing), this.done &&
      this.suggestions[this.select] ? this.suggestions[this.select].title : this.rendered = this.transform.render(this.input)].join(" "), !this.
      done) {
        let n = this.suggestions.slice(r, i).map((u, a) => this.renderOption(u, this.select === a + r, a === 0 && r > 0, a + r === i - 1 && i <
        this.choices.length)).join(`
`);
        this.outputText += `
` + (n || au.gray(this.fallback.title));
      }
      this.out.write(Ij.line + dw.to(0) + this.outputText);
    }
  };
  xw.exports = gd;
});

// ../node_modules/prompts/dist/elements/autocompleteMultiselect.js
var Cw = I((PK, vw) => {
  "use strict";
  var ni = He(), Mj = Je(), jj = Mj.cursor, qj = dd(), yd = gr(), Ew = yd.clear, bw = yd.style, Qn = yd.figures, xd = class extends qj {
    static {
      s(this, "AutocompleteMultiselectPrompt");
    }
    constructor(t = {}) {
      t.overrideRender = !0, super(t), this.inputValue = "", this.clear = Ew("", this.out.columns), this.filteredOptions = this.value, this.
      render();
    }
    last() {
      this.cursor = this.filteredOptions.length - 1, this.render();
    }
    next() {
      this.cursor = (this.cursor + 1) % this.filteredOptions.length, this.render();
    }
    up() {
      this.cursor === 0 ? this.cursor = this.filteredOptions.length - 1 : this.cursor--, this.render();
    }
    down() {
      this.cursor === this.filteredOptions.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
    }
    left() {
      this.filteredOptions[this.cursor].selected = !1, this.render();
    }
    right() {
      if (this.value.filter((t) => t.selected).length >= this.maxChoices) return this.bell();
      this.filteredOptions[this.cursor].selected = !0, this.render();
    }
    delete() {
      this.inputValue.length && (this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1), this.updateFilteredOptions());
    }
    updateFilteredOptions() {
      let t = this.filteredOptions[this.cursor];
      this.filteredOptions = this.value.filter((i) => this.inputValue ? !!(typeof i.title == "string" && i.title.toLowerCase().includes(this.
      inputValue.toLowerCase()) || typeof i.value == "string" && i.value.toLowerCase().includes(this.inputValue.toLowerCase())) : !0);
      let r = this.filteredOptions.findIndex((i) => i === t);
      this.cursor = r < 0 ? 0 : r, this.render();
    }
    handleSpaceToggle() {
      let t = this.filteredOptions[this.cursor];
      if (t.selected)
        t.selected = !1, this.render();
      else {
        if (t.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
          return this.bell();
        t.selected = !0, this.render();
      }
    }
    handleInputChange(t) {
      this.inputValue = this.inputValue + t, this.updateFilteredOptions();
    }
    _(t, r) {
      t === " " ? this.handleSpaceToggle() : this.handleInputChange(t);
    }
    renderInstructions() {
      return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
Instructions:
    ${Qn.arrowUp}/${Qn.arrowDown}: Highlight option
    ${Qn.arrowLeft}/${Qn.arrowRight}/[space]: Toggle selection
    [a,b,c]/delete: Filter choices
    enter/return: Complete answer
` : "";
    }
    renderCurrentInput() {
      return `
Filtered results for: ${this.inputValue ? this.inputValue : ni.gray("Enter something to filter")}
`;
    }
    renderOption(t, r, i) {
      let n;
      return r.disabled ? n = t === i ? ni.gray().underline(r.title) : ni.strikethrough().gray(r.title) : n = t === i ? ni.cyan().underline(
      r.title) : r.title, (r.selected ? ni.green(Qn.radioOn) : Qn.radioOff) + "  " + n;
    }
    renderDoneOrInstructions() {
      if (this.done)
        return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
      let t = [ni.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
      return this.filteredOptions.length && this.filteredOptions[this.cursor].disabled && t.push(ni.yellow(this.warn)), t.join(" ");
    }
    render() {
      if (this.closed) return;
      this.firstRender && this.out.write(jj.hide), super.render();
      let t = [bw.symbol(this.done, this.aborted), ni.bold(this.msg), bw.delimiter(!1), this.renderDoneOrInstructions()].join(" ");
      this.showMinError && (t += ni.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), t += this.renderOptions(
      this.filteredOptions), this.out.write(this.clear + t), this.clear = Ew(t, this.out.columns);
    }
  };
  vw.exports = xd;
});

// ../node_modules/prompts/dist/elements/confirm.js
var Bw = I((OK, kw) => {
  "use strict";
  var ww = He(), $j = ti(), Sw = gr(), Aw = Sw.style, Vj = Sw.clear, _w = Je(), Uj = _w.erase, Fw = _w.cursor, Ed = class extends $j {
    static {
      s(this, "ConfirmPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.value = t.initial, this.initialValue = !!t.initial, this.yesMsg = t.yes || "yes", this.yesOption =
      t.yesOption || "(Y/n)", this.noMsg = t.no || "no", this.noOption = t.noOption || "(y/N)", this.render();
    }
    reset() {
      this.value = this.initialValue, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.value = this.value || !1, this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    _(t, r) {
      return t.toLowerCase() === "y" ? (this.value = !0, this.submit()) : t.toLowerCase() === "n" ? (this.value = !1, this.submit()) : this.
      bell();
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(Fw.hide) : this.out.write(Vj(this.outputText, this.out.columns)), super.render(), this.
      outputText = [Aw.symbol(this.done, this.aborted), ww.bold(this.msg), Aw.delimiter(this.done), this.done ? this.value ? this.yesMsg : this.
      noMsg : ww.gray(this.initialValue ? this.yesOption : this.noOption)].join(" "), this.out.write(Uj.line + Fw.to(0) + this.outputText));
    }
  };
  kw.exports = Ed;
});

// ../node_modules/prompts/dist/elements/index.js
var Pw = I((NK, Tw) => {
  "use strict";
  Tw.exports = {
    TextPrompt: g2(),
    SelectPrompt: b2(),
    TogglePrompt: S2(),
    DatePrompt: rw(),
    NumberPrompt: lw(),
    MultiselectPrompt: dd(),
    AutocompletePrompt: yw(),
    AutocompleteMultiselectPrompt: Cw(),
    ConfirmPrompt: Bw()
  };
});

// ../node_modules/prompts/dist/prompts.js
var Ow = I((Iw) => {
  "use strict";
  var kt = Iw, zj = Pw(), ko = /* @__PURE__ */ s((e) => e, "noop");
  function Lr(e, t, r = {}) {
    return new Promise((i, n) => {
      let u = new zj[e](t), a = r.onAbort || ko, o = r.onSubmit || ko, l = r.onExit || ko;
      u.on("state", t.onState || ko), u.on("submit", (c) => i(o(c))), u.on("exit", (c) => i(l(c))), u.on("abort", (c) => n(a(c)));
    });
  }
  s(Lr, "toPrompt");
  kt.text = (e) => Lr("TextPrompt", e);
  kt.password = (e) => (e.style = "password", kt.text(e));
  kt.invisible = (e) => (e.style = "invisible", kt.text(e));
  kt.number = (e) => Lr("NumberPrompt", e);
  kt.date = (e) => Lr("DatePrompt", e);
  kt.confirm = (e) => Lr("ConfirmPrompt", e);
  kt.list = (e) => {
    let t = e.separator || ",";
    return Lr("TextPrompt", e, {
      onSubmit: /* @__PURE__ */ s((r) => r.split(t).map((i) => i.trim()), "onSubmit")
    });
  };
  kt.toggle = (e) => Lr("TogglePrompt", e);
  kt.select = (e) => Lr("SelectPrompt", e);
  kt.multiselect = (e) => {
    e.choices = [].concat(e.choices || []);
    let t = /* @__PURE__ */ s((r) => r.filter((i) => i.selected).map((i) => i.value), "toSelected");
    return Lr("MultiselectPrompt", e, {
      onAbort: t,
      onSubmit: t
    });
  };
  kt.autocompleteMultiselect = (e) => {
    e.choices = [].concat(e.choices || []);
    let t = /* @__PURE__ */ s((r) => r.filter((i) => i.selected).map((i) => i.value), "toSelected");
    return Lr("AutocompleteMultiselectPrompt", e, {
      onAbort: t,
      onSubmit: t
    });
  };
  var Hj = /* @__PURE__ */ s((e, t) => Promise.resolve(t.filter((r) => r.title.slice(0, e.length).toLowerCase() === e.toLowerCase())), "byTi\
tle");
  kt.autocomplete = (e) => (e.suggest = e.suggest || Hj, e.choices = [].concat(e.choices || []), Lr("AutocompletePrompt", e));
});

// ../node_modules/prompts/dist/index.js
var Vw = I((jK, $w) => {
  "use strict";
  function Rw(e, t) {
    var r = Object.keys(e);
    if (Object.getOwnPropertySymbols) {
      var i = Object.getOwnPropertySymbols(e);
      t && (i = i.filter(function(n) {
        return Object.getOwnPropertyDescriptor(e, n).enumerable;
      })), r.push.apply(r, i);
    }
    return r;
  }
  s(Rw, "ownKeys");
  function Nw(e) {
    for (var t = 1; t < arguments.length; t++) {
      var r = arguments[t] != null ? arguments[t] : {};
      t % 2 ? Rw(Object(r), !0).forEach(function(i) {
        Wj(e, i, r[i]);
      }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(r)) : Rw(Object(r)).forEach(function(i) {
        Object.defineProperty(e, i, Object.getOwnPropertyDescriptor(r, i));
      });
    }
    return e;
  }
  s(Nw, "_objectSpread");
  function Wj(e, t, r) {
    return t in e ? Object.defineProperty(e, t, { value: r, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = r, e;
  }
  s(Wj, "_defineProperty");
  function Jj(e, t) {
    var r = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
    if (!r) {
      if (Array.isArray(e) || (r = Gj(e)) || t && e && typeof e.length == "number") {
        r && (e = r);
        var i = 0, n = /* @__PURE__ */ s(function() {
        }, "F");
        return { s: n, n: /* @__PURE__ */ s(function() {
          return i >= e.length ? { done: !0 } : { done: !1, value: e[i++] };
        }, "n"), e: /* @__PURE__ */ s(function(c) {
          throw c;
        }, "e"), f: n };
      }
      throw new TypeError(`Invalid attempt to iterate non-iterable instance.
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
    }
    var u = !0, a = !1, o;
    return { s: /* @__PURE__ */ s(function() {
      r = r.call(e);
    }, "s"), n: /* @__PURE__ */ s(function() {
      var c = r.next();
      return u = c.done, c;
    }, "n"), e: /* @__PURE__ */ s(function(c) {
      a = !0, o = c;
    }, "e"), f: /* @__PURE__ */ s(function() {
      try {
        !u && r.return != null && r.return();
      } finally {
        if (a) throw o;
      }
    }, "f") };
  }
  s(Jj, "_createForOfIteratorHelper");
  function Gj(e, t) {
    if (e) {
      if (typeof e == "string") return Lw(e, t);
      var r = Object.prototype.toString.call(e).slice(8, -1);
      if (r === "Object" && e.constructor && (r = e.constructor.name), r === "Map" || r === "Set") return Array.from(e);
      if (r === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)) return Lw(e, t);
    }
  }
  s(Gj, "_unsupportedIterableToArray");
  function Lw(e, t) {
    (t == null || t > e.length) && (t = e.length);
    for (var r = 0, i = new Array(t); r < t; r++) i[r] = e[r];
    return i;
  }
  s(Lw, "_arrayLikeToArray");
  function Mw(e, t, r, i, n, u, a) {
    try {
      var o = e[u](a), l = o.value;
    } catch (c) {
      r(c);
      return;
    }
    o.done ? t(l) : Promise.resolve(l).then(i, n);
  }
  s(Mw, "asyncGeneratorStep");
  function jw(e) {
    return function() {
      var t = this, r = arguments;
      return new Promise(function(i, n) {
        var u = e.apply(t, r);
        function a(l) {
          Mw(u, i, n, a, o, "next", l);
        }
        s(a, "_next");
        function o(l) {
          Mw(u, i, n, a, o, "throw", l);
        }
        s(o, "_throw"), a(void 0);
      });
    };
  }
  s(jw, "_asyncToGenerator");
  var bd = Ow(), Xj = ["suggest", "format", "onState", "validate", "onRender", "type"], qw = /* @__PURE__ */ s(() => {
  }, "noop");
  function Pi() {
    return vd.apply(this, arguments);
  }
  s(Pi, "prompt");
  function vd() {
    return vd = jw(function* (e = [], {
      onSubmit: t = qw,
      onCancel: r = qw
    } = {}) {
      let i = {}, n = Pi._override || {};
      e = [].concat(e);
      let u, a, o, l, c, h, p = /* @__PURE__ */ function() {
        var v = jw(function* (x, C, S = !1) {
          if (!(!S && x.validate && x.validate(C) !== !0))
            return x.format ? yield x.format(C, i) : C;
        });
        return /* @__PURE__ */ s(function(C, S) {
          return v.apply(this, arguments);
        }, "getFormattedAnswer");
      }();
      var d = Jj(e), m;
      try {
        for (d.s(); !(m = d.n()).done; ) {
          a = m.value;
          var D = a;
          if (l = D.name, c = D.type, typeof c == "function" && (c = yield c(u, Nw({}, i), a), a.type = c), !!c) {
            for (let v in a) {
              if (Xj.includes(v)) continue;
              let x = a[v];
              a[v] = typeof x == "function" ? yield x(u, Nw({}, i), h) : x;
            }
            if (h = a, typeof a.message != "string")
              throw new Error("prompt message is required");
            var g = a;
            if (l = g.name, c = g.type, bd[c] === void 0)
              throw new Error(`prompt type (${c}) is not defined`);
            if (n[a.name] !== void 0 && (u = yield p(a, n[a.name]), u !== void 0)) {
              i[l] = u;
              continue;
            }
            try {
              u = Pi._injected ? Yj(Pi._injected, a.initial) : yield bd[c](a), i[l] = u = yield p(a, u, !0), o = yield t(a, u, i);
            } catch {
              o = !(yield r(a, i));
            }
            if (o) return i;
          }
        }
      } catch (v) {
        d.e(v);
      } finally {
        d.f();
      }
      return i;
    }), vd.apply(this, arguments);
  }
  s(vd, "_prompt");
  function Yj(e, t) {
    let r = e.shift();
    if (r instanceof Error)
      throw r;
    return r === void 0 ? t : r;
  }
  s(Yj, "getInjectedAnswer");
  function Kj(e) {
    Pi._injected = (Pi._injected || []).concat(e);
  }
  s(Kj, "inject");
  function Qj(e) {
    Pi._override = Object.assign({}, e);
  }
  s(Qj, "override");
  $w.exports = Object.assign(Pi, {
    prompt: Pi,
    prompts: bd,
    inject: Kj,
    override: Qj
  });
});

// ../node_modules/prompts/lib/util/action.js
var zw = I(($K, Uw) => {
  "use strict";
  Uw.exports = (e, t) => {
    if (!(e.meta && e.name !== "escape")) {
      if (e.ctrl) {
        if (e.name === "a") return "first";
        if (e.name === "c" || e.name === "d") return "abort";
        if (e.name === "e") return "last";
        if (e.name === "g") return "reset";
      }
      if (t) {
        if (e.name === "j") return "down";
        if (e.name === "k") return "up";
      }
      return e.name === "return" || e.name === "enter" ? "submit" : e.name === "backspace" ? "delete" : e.name === "delete" ? "deleteForward" :
      e.name === "abort" ? "abort" : e.name === "escape" ? "exit" : e.name === "tab" ? "next" : e.name === "pagedown" ? "nextPage" : e.name ===
      "pageup" ? "prevPage" : e.name === "home" ? "home" : e.name === "end" ? "end" : e.name === "up" ? "up" : e.name === "down" ? "down" : e.
      name === "right" ? "right" : e.name === "left" ? "left" : !1;
    }
  };
});

// ../node_modules/prompts/lib/util/strip.js
var Bo = I((VK, Hw) => {
  "use strict";
  Hw.exports = (e) => {
    let t = [
      "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
      "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PRZcf-ntqry=><~]))"
    ].join("|"), r = new RegExp(t, "g");
    return typeof e == "string" ? e.replace(r, "") : e;
  };
});

// ../node_modules/prompts/lib/util/clear.js
var Gw = I((UK, Jw) => {
  "use strict";
  var Zj = Bo(), { erase: Ww, cursor: tq } = Je(), rq = /* @__PURE__ */ s((e) => [...Zj(e)].length, "width");
  Jw.exports = function(e, t) {
    if (!t) return Ww.line + tq.to(0);
    let r = 0, i = e.split(/\r?\n/);
    for (let n of i)
      r += 1 + Math.floor(Math.max(rq(n) - 1, 0) / t);
    return Ww.lines(r);
  };
});

// ../node_modules/prompts/lib/util/figures.js
var Cd = I((HK, Xw) => {
  "use strict";
  var lu = {
    arrowUp: "\u2191",
    arrowDown: "\u2193",
    arrowLeft: "\u2190",
    arrowRight: "\u2192",
    radioOn: "\u25C9",
    radioOff: "\u25EF",
    tick: "\u2714",
    cross: "\u2716",
    ellipsis: "\u2026",
    pointerSmall: "\u203A",
    line: "\u2500",
    pointer: "\u276F"
  }, iq = {
    arrowUp: lu.arrowUp,
    arrowDown: lu.arrowDown,
    arrowLeft: lu.arrowLeft,
    arrowRight: lu.arrowRight,
    radioOn: "(*)",
    radioOff: "( )",
    tick: "\u221A",
    cross: "\xD7",
    ellipsis: "...",
    pointerSmall: "\xBB",
    line: "\u2500",
    pointer: ">"
  }, nq = process.platform === "win32" ? iq : lu;
  Xw.exports = nq;
});

// ../node_modules/prompts/lib/util/style.js
var Kw = I((WK, Yw) => {
  "use strict";
  var Zn = He(), on = Cd(), wd = Object.freeze({
    password: { scale: 1, render: /* @__PURE__ */ s((e) => "*".repeat(e.length), "render") },
    emoji: { scale: 2, render: /* @__PURE__ */ s((e) => "\u{1F603}".repeat(e.length), "render") },
    invisible: { scale: 0, render: /* @__PURE__ */ s((e) => "", "render") },
    default: { scale: 1, render: /* @__PURE__ */ s((e) => `${e}`, "render") }
  }), sq = /* @__PURE__ */ s((e) => wd[e] || wd.default, "render"), cu = Object.freeze({
    aborted: Zn.red(on.cross),
    done: Zn.green(on.tick),
    exited: Zn.yellow(on.cross),
    default: Zn.cyan("?")
  }), uq = /* @__PURE__ */ s((e, t, r) => t ? cu.aborted : r ? cu.exited : e ? cu.done : cu.default, "symbol"), aq = /* @__PURE__ */ s((e) => Zn.
  gray(e ? on.ellipsis : on.pointerSmall), "delimiter"), oq = /* @__PURE__ */ s((e, t) => Zn.gray(e ? t ? on.pointerSmall : "+" : on.line), "\
item");
  Yw.exports = {
    styles: wd,
    render: sq,
    symbols: cu,
    symbol: uq,
    delimiter: aq,
    item: oq
  };
});

// ../node_modules/prompts/lib/util/lines.js
var Zw = I((GK, Qw) => {
  "use strict";
  var lq = Bo();
  Qw.exports = function(e, t) {
    let r = String(lq(e) || "").split(/\r?\n/);
    return t ? r.map((i) => Math.ceil(i.length / t)).reduce((i, n) => i + n) : r.length;
  };
});

// ../node_modules/prompts/lib/util/wrap.js
var tA = I((XK, eA) => {
  "use strict";
  eA.exports = (e, t = {}) => {
    let r = Number.isSafeInteger(parseInt(t.margin)) ? new Array(parseInt(t.margin)).fill(" ").join("") : t.margin || "", i = t.width;
    return (e || "").split(/\r?\n/g).map((n) => n.split(/\s+/g).reduce((u, a) => (a.length + r.length >= i || u[u.length - 1].length + a.length +
    1 < i ? u[u.length - 1] += ` ${a}` : u.push(`${r}${a}`), u), [r]).join(`
`)).join(`
`);
  };
});

// ../node_modules/prompts/lib/util/entriesToDisplay.js
var iA = I((YK, rA) => {
  "use strict";
  rA.exports = (e, t, r) => {
    r = r || t;
    let i = Math.min(t - r, e - Math.floor(r / 2));
    i < 0 && (i = 0);
    let n = Math.min(i + r, t);
    return { startIndex: i, endIndex: n };
  };
});

// ../node_modules/prompts/lib/util/index.js
var xr = I((KK, nA) => {
  "use strict";
  nA.exports = {
    action: zw(),
    clear: Gw(),
    style: Kw(),
    strip: Bo(),
    figures: Cd(),
    lines: Zw(),
    wrap: tA(),
    entriesToDisplay: iA()
  };
});

// ../node_modules/prompts/lib/elements/prompt.js
var si = I((QK, uA) => {
  "use strict";
  var sA = require("readline"), { action: cq } = xr(), hq = require("events"), { beep: pq, cursor: fq } = Je(), dq = He(), Ad = class extends hq {
    static {
      s(this, "Prompt");
    }
    constructor(t = {}) {
      super(), this.firstRender = !0, this.in = t.stdin || process.stdin, this.out = t.stdout || process.stdout, this.onRender = (t.onRender ||
      (() => {
      })).bind(this);
      let r = sA.createInterface({ input: this.in, escapeCodeTimeout: 50 });
      sA.emitKeypressEvents(this.in, r), this.in.isTTY && this.in.setRawMode(!0);
      let i = ["SelectPrompt", "MultiselectPrompt"].indexOf(this.constructor.name) > -1, n = /* @__PURE__ */ s((u, a) => {
        let o = cq(a, i);
        o === !1 ? this._ && this._(u, a) : typeof this[o] == "function" ? this[o](a) : this.bell();
      }, "keypress");
      this.close = () => {
        this.out.write(fq.show), this.in.removeListener("keypress", n), this.in.isTTY && this.in.setRawMode(!1), r.close(), this.emit(this.aborted ?
        "abort" : this.exited ? "exit" : "submit", this.value), this.closed = !0;
      }, this.in.on("keypress", n);
    }
    fire() {
      this.emit("state", {
        value: this.value,
        aborted: !!this.aborted,
        exited: !!this.exited
      });
    }
    bell() {
      this.out.write(pq);
    }
    render() {
      this.onRender(dq), this.firstRender && (this.firstRender = !1);
    }
  };
  uA.exports = Ad;
});

// ../node_modules/prompts/lib/elements/text.js
var oA = I((eQ, aA) => {
  var To = He(), mq = si(), { erase: Dq, cursor: hu } = Je(), { style: Fd, clear: Sd, lines: gq, figures: xq } = xr(), _d = class extends mq {
    static {
      s(this, "TextPrompt");
    }
    constructor(t = {}) {
      super(t), this.transform = Fd.render(t.style), this.scale = this.transform.scale, this.msg = t.message, this.initial = t.initial || "",
      this.validator = t.validate || (() => !0), this.value = "", this.errorMsg = t.error || "Please Enter A Valid Value", this.cursor = +!!this.
      initial, this.cursorOffset = 0, this.clear = Sd("", this.out.columns), this.render();
    }
    set value(t) {
      !t && this.initial ? (this.placeholder = !0, this.rendered = To.gray(this.transform.render(this.initial))) : (this.placeholder = !1, this.
      rendered = this.transform.render(t)), this._value = t, this.fire();
    }
    get value() {
      return this._value;
    }
    reset() {
      this.value = "", this.cursor = +!!this.initial, this.cursorOffset = 0, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.value = this.value || this.initial, this.done = this.aborted = !0, this.error = !1, this.red = !1, this.fire(), this.render(), this.
      out.write(`
`), this.close();
    }
    async validate() {
      let t = await this.validator(this.value);
      typeof t == "string" && (this.errorMsg = t, t = !1), this.error = !t;
    }
    async submit() {
      if (this.value = this.value || this.initial, this.cursorOffset = 0, this.cursor = this.rendered.length, await this.validate(), this.error) {
        this.red = !0, this.fire(), this.render();
        return;
      }
      this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    next() {
      if (!this.placeholder) return this.bell();
      this.value = this.initial, this.cursor = this.rendered.length, this.fire(), this.render();
    }
    moveCursor(t) {
      this.placeholder || (this.cursor = this.cursor + t, this.cursorOffset += t);
    }
    _(t, r) {
      let i = this.value.slice(0, this.cursor), n = this.value.slice(this.cursor);
      this.value = `${i}${t}${n}`, this.red = !1, this.cursor = this.placeholder ? 0 : i.length + 1, this.render();
    }
    delete() {
      if (this.isCursorAtStart()) return this.bell();
      let t = this.value.slice(0, this.cursor - 1), r = this.value.slice(this.cursor);
      this.value = `${t}${r}`, this.red = !1, this.isCursorAtStart() ? this.cursorOffset = 0 : (this.cursorOffset++, this.moveCursor(-1)), this.
      render();
    }
    deleteForward() {
      if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
      let t = this.value.slice(0, this.cursor), r = this.value.slice(this.cursor + 1);
      this.value = `${t}${r}`, this.red = !1, this.isCursorAtEnd() ? this.cursorOffset = 0 : this.cursorOffset++, this.render();
    }
    first() {
      this.cursor = 0, this.render();
    }
    last() {
      this.cursor = this.value.length, this.render();
    }
    left() {
      if (this.cursor <= 0 || this.placeholder) return this.bell();
      this.moveCursor(-1), this.render();
    }
    right() {
      if (this.cursor * this.scale >= this.rendered.length || this.placeholder) return this.bell();
      this.moveCursor(1), this.render();
    }
    isCursorAtStart() {
      return this.cursor === 0 || this.placeholder && this.cursor === 1;
    }
    isCursorAtEnd() {
      return this.cursor === this.rendered.length || this.placeholder && this.cursor === this.rendered.length + 1;
    }
    render() {
      this.closed || (this.firstRender || (this.outputError && this.out.write(hu.down(gq(this.outputError, this.out.columns) - 1) + Sd(this.
      outputError, this.out.columns)), this.out.write(Sd(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
      [
        Fd.symbol(this.done, this.aborted),
        To.bold(this.msg),
        Fd.delimiter(this.done),
        this.red ? To.red(this.rendered) : this.rendered
      ].join(" "), this.error && (this.outputError += this.errorMsg.split(`
`).reduce((t, r, i) => t + `
${i ? " " : xq.pointerSmall} ${To.red().italic(r)}`, "")), this.out.write(Dq.line + hu.to(0) + this.outputText + hu.save + this.outputError +
      hu.restore + hu.move(this.cursorOffset, 0)));
    }
  };
  aA.exports = _d;
});

// ../node_modules/prompts/lib/elements/select.js
var pA = I((rQ, hA) => {
  "use strict";
  var ui = He(), yq = si(), { style: lA, clear: cA, figures: Po, wrap: Eq, entriesToDisplay: bq } = xr(), { cursor: vq } = Je(), kd = class extends yq {
    static {
      s(this, "SelectPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.hint = t.hint || "- Use arrow-keys. Return to submit.", this.warn = t.warn || "- This option is d\
isabled", this.cursor = t.initial || 0, this.choices = t.choices.map((r, i) => (typeof r == "string" && (r = { title: r, value: i }), {
        title: r && (r.title || r.value || r),
        value: r && (r.value === void 0 ? i : r.value),
        description: r && r.description,
        selected: r && r.selected,
        disabled: r && r.disabled
      })), this.optionsPerPage = t.optionsPerPage || 10, this.value = (this.choices[this.cursor] || {}).value, this.clear = cA("", this.out.
      columns), this.render();
    }
    moveCursor(t) {
      this.cursor = t, this.value = this.choices[t].value, this.fire();
    }
    reset() {
      this.moveCursor(0), this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.selection.disabled ? this.bell() : (this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close());
    }
    first() {
      this.moveCursor(0), this.render();
    }
    last() {
      this.moveCursor(this.choices.length - 1), this.render();
    }
    up() {
      this.cursor === 0 ? this.moveCursor(this.choices.length - 1) : this.moveCursor(this.cursor - 1), this.render();
    }
    down() {
      this.cursor === this.choices.length - 1 ? this.moveCursor(0) : this.moveCursor(this.cursor + 1), this.render();
    }
    next() {
      this.moveCursor((this.cursor + 1) % this.choices.length), this.render();
    }
    _(t, r) {
      if (t === " ") return this.submit();
    }
    get selection() {
      return this.choices[this.cursor];
    }
    render() {
      if (this.closed) return;
      this.firstRender ? this.out.write(vq.hide) : this.out.write(cA(this.outputText, this.out.columns)), super.render();
      let { startIndex: t, endIndex: r } = bq(this.cursor, this.choices.length, this.optionsPerPage);
      if (this.outputText = [
        lA.symbol(this.done, this.aborted),
        ui.bold(this.msg),
        lA.delimiter(!1),
        this.done ? this.selection.title : this.selection.disabled ? ui.yellow(this.warn) : ui.gray(this.hint)
      ].join(" "), !this.done) {
        this.outputText += `
`;
        for (let i = t; i < r; i++) {
          let n, u, a = "", o = this.choices[i];
          i === t && t > 0 ? u = Po.arrowUp : i === r - 1 && r < this.choices.length ? u = Po.arrowDown : u = " ", o.disabled ? (n = this.cursor ===
          i ? ui.gray().underline(o.title) : ui.strikethrough().gray(o.title), u = (this.cursor === i ? ui.bold().gray(Po.pointer) + " " : "\
  ") + u) : (n = this.cursor === i ? ui.cyan().underline(o.title) : o.title, u = (this.cursor === i ? ui.cyan(Po.pointer) + " " : "  ") + u,
          o.description && this.cursor === i && (a = ` - ${o.description}`, (u.length + n.length + a.length >= this.out.columns || o.description.
          split(/\r?\n/).length > 1) && (a = `
` + Eq(o.description, { margin: 3, width: this.out.columns })))), this.outputText += `${u} ${n}${ui.gray(a)}
`;
        }
      }
      this.out.write(this.outputText);
    }
  };
  hA.exports = kd;
});

// ../node_modules/prompts/lib/elements/toggle.js
var DA = I((nQ, mA) => {
  var Io = He(), Cq = si(), { style: fA, clear: wq } = xr(), { cursor: dA, erase: Aq } = Je(), Bd = class extends Cq {
    static {
      s(this, "TogglePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.value = !!t.initial, this.active = t.active || "on", this.inactive = t.inactive || "off", this.initialValue =
      this.value, this.render();
    }
    reset() {
      this.value = this.initialValue, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    deactivate() {
      if (this.value === !1) return this.bell();
      this.value = !1, this.render();
    }
    activate() {
      if (this.value === !0) return this.bell();
      this.value = !0, this.render();
    }
    delete() {
      this.deactivate();
    }
    left() {
      this.deactivate();
    }
    right() {
      this.activate();
    }
    down() {
      this.deactivate();
    }
    up() {
      this.activate();
    }
    next() {
      this.value = !this.value, this.fire(), this.render();
    }
    _(t, r) {
      if (t === " ")
        this.value = !this.value;
      else if (t === "1")
        this.value = !0;
      else if (t === "0")
        this.value = !1;
      else return this.bell();
      this.render();
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(dA.hide) : this.out.write(wq(this.outputText, this.out.columns)), super.render(), this.
      outputText = [
        fA.symbol(this.done, this.aborted),
        Io.bold(this.msg),
        fA.delimiter(this.done),
        this.value ? this.inactive : Io.cyan().underline(this.inactive),
        Io.gray("/"),
        this.value ? Io.cyan().underline(this.active) : this.active
      ].join(" "), this.out.write(Aq.line + dA.to(0) + this.outputText));
    }
  };
  mA.exports = Bd;
});

// ../node_modules/prompts/lib/dateparts/datepart.js
var Mr = I((uQ, gA) => {
  "use strict";
  var Td = class e {
    static {
      s(this, "DatePart");
    }
    constructor({ token: t, date: r, parts: i, locales: n }) {
      this.token = t, this.date = r || /* @__PURE__ */ new Date(), this.parts = i || [this], this.locales = n || {};
    }
    up() {
    }
    down() {
    }
    next() {
      let t = this.parts.indexOf(this);
      return this.parts.find((r, i) => i > t && r instanceof e);
    }
    setTo(t) {
    }
    prev() {
      let t = [].concat(this.parts).reverse(), r = t.indexOf(this);
      return t.find((i, n) => n > r && i instanceof e);
    }
    toString() {
      return String(this.date);
    }
  };
  gA.exports = Td;
});

// ../node_modules/prompts/lib/dateparts/meridiem.js
var yA = I((oQ, xA) => {
  "use strict";
  var Fq = Mr(), Pd = class extends Fq {
    static {
      s(this, "Meridiem");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setHours((this.date.getHours() + 12) % 24);
    }
    down() {
      this.up();
    }
    toString() {
      let t = this.date.getHours() > 12 ? "pm" : "am";
      return /\A/.test(this.token) ? t.toUpperCase() : t;
    }
  };
  xA.exports = Pd;
});

// ../node_modules/prompts/lib/dateparts/day.js
var bA = I((cQ, EA) => {
  "use strict";
  var Sq = Mr(), _q = /* @__PURE__ */ s((e) => (e = e % 10, e === 1 ? "st" : e === 2 ? "nd" : e === 3 ? "rd" : "th"), "pos"), Id = class extends Sq {
    static {
      s(this, "Day");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setDate(this.date.getDate() + 1);
    }
    down() {
      this.date.setDate(this.date.getDate() - 1);
    }
    setTo(t) {
      this.date.setDate(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getDate(), r = this.date.getDay();
      return this.token === "DD" ? String(t).padStart(2, "0") : this.token === "Do" ? t + _q(t) : this.token === "d" ? r + 1 : this.token ===
      "ddd" ? this.locales.weekdaysShort[r] : this.token === "dddd" ? this.locales.weekdays[r] : t;
    }
  };
  EA.exports = Id;
});

// ../node_modules/prompts/lib/dateparts/hours.js
var CA = I((pQ, vA) => {
  "use strict";
  var kq = Mr(), Od = class extends kq {
    static {
      s(this, "Hours");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setHours(this.date.getHours() + 1);
    }
    down() {
      this.date.setHours(this.date.getHours() - 1);
    }
    setTo(t) {
      this.date.setHours(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getHours();
      return /h/.test(this.token) && (t = t % 12 || 12), this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  vA.exports = Od;
});

// ../node_modules/prompts/lib/dateparts/milliseconds.js
var AA = I((dQ, wA) => {
  "use strict";
  var Bq = Mr(), Rd = class extends Bq {
    static {
      s(this, "Milliseconds");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMilliseconds(this.date.getMilliseconds() + 1);
    }
    down() {
      this.date.setMilliseconds(this.date.getMilliseconds() - 1);
    }
    setTo(t) {
      this.date.setMilliseconds(parseInt(t.substr(-this.token.length)));
    }
    toString() {
      return String(this.date.getMilliseconds()).padStart(4, "0").substr(0, this.token.length);
    }
  };
  wA.exports = Rd;
});

// ../node_modules/prompts/lib/dateparts/minutes.js
var SA = I((DQ, FA) => {
  "use strict";
  var Tq = Mr(), Nd = class extends Tq {
    static {
      s(this, "Minutes");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMinutes(this.date.getMinutes() + 1);
    }
    down() {
      this.date.setMinutes(this.date.getMinutes() - 1);
    }
    setTo(t) {
      this.date.setMinutes(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getMinutes();
      return this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  FA.exports = Nd;
});

// ../node_modules/prompts/lib/dateparts/month.js
var kA = I((xQ, _A) => {
  "use strict";
  var Pq = Mr(), Ld = class extends Pq {
    static {
      s(this, "Month");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setMonth(this.date.getMonth() + 1);
    }
    down() {
      this.date.setMonth(this.date.getMonth() - 1);
    }
    setTo(t) {
      t = parseInt(t.substr(-2)) - 1, this.date.setMonth(t < 0 ? 0 : t);
    }
    toString() {
      let t = this.date.getMonth(), r = this.token.length;
      return r === 2 ? String(t + 1).padStart(2, "0") : r === 3 ? this.locales.monthsShort[t] : r === 4 ? this.locales.months[t] : String(t +
      1);
    }
  };
  _A.exports = Ld;
});

// ../node_modules/prompts/lib/dateparts/seconds.js
var TA = I((EQ, BA) => {
  "use strict";
  var Iq = Mr(), Md = class extends Iq {
    static {
      s(this, "Seconds");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setSeconds(this.date.getSeconds() + 1);
    }
    down() {
      this.date.setSeconds(this.date.getSeconds() - 1);
    }
    setTo(t) {
      this.date.setSeconds(parseInt(t.substr(-2)));
    }
    toString() {
      let t = this.date.getSeconds();
      return this.token.length > 1 ? String(t).padStart(2, "0") : t;
    }
  };
  BA.exports = Md;
});

// ../node_modules/prompts/lib/dateparts/year.js
var IA = I((vQ, PA) => {
  "use strict";
  var Oq = Mr(), jd = class extends Oq {
    static {
      s(this, "Year");
    }
    constructor(t = {}) {
      super(t);
    }
    up() {
      this.date.setFullYear(this.date.getFullYear() + 1);
    }
    down() {
      this.date.setFullYear(this.date.getFullYear() - 1);
    }
    setTo(t) {
      this.date.setFullYear(t.substr(-4));
    }
    toString() {
      let t = String(this.date.getFullYear()).padStart(4, "0");
      return this.token.length === 2 ? t.substr(-2) : t;
    }
  };
  PA.exports = jd;
});

// ../node_modules/prompts/lib/dateparts/index.js
var RA = I((wQ, OA) => {
  "use strict";
  OA.exports = {
    DatePart: Mr(),
    Meridiem: yA(),
    Day: bA(),
    Hours: CA(),
    Milliseconds: AA(),
    Minutes: SA(),
    Month: kA(),
    Seconds: TA(),
    Year: IA()
  };
});

// ../node_modules/prompts/lib/elements/date.js
var VA = I((AQ, $A) => {
  "use strict";
  var qd = He(), Rq = si(), { style: NA, clear: LA, figures: Nq } = xr(), { erase: Lq, cursor: MA } = Je(), { DatePart: jA, Meridiem: Mq, Day: jq,
  Hours: qq, Milliseconds: $q, Minutes: Vq, Month: Uq, Seconds: zq, Year: Hq } = RA(), Wq = /\\(.)|"((?:\\["\\]|[^"])+)"|(D[Do]?|d{3,4}|d)|(M{1,4})|(YY(?:YY)?)|([aA])|([Hh]{1,2})|(m{1,2})|(s{1,2})|(S{1,4})|./g,
  qA = {
    1: ({ token: e }) => e.replace(/\\(.)/g, "$1"),
    2: (e) => new jq(e),
    // Day // TODO
    3: (e) => new Uq(e),
    // Month
    4: (e) => new Hq(e),
    // Year
    5: (e) => new Mq(e),
    // AM/PM // TODO (special)
    6: (e) => new qq(e),
    // Hours
    7: (e) => new Vq(e),
    // Minutes
    8: (e) => new zq(e),
    // Seconds
    9: (e) => new $q(e)
    // Fractional seconds
  }, Jq = {
    months: "January,February,March,April,May,June,July,August,September,October,November,December".split(","),
    monthsShort: "Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec".split(","),
    weekdays: "Sunday,Monday,Tuesday,Wednesday,Thursday,Friday,Saturday".split(","),
    weekdaysShort: "Sun,Mon,Tue,Wed,Thu,Fri,Sat".split(",")
  }, $d = class extends Rq {
    static {
      s(this, "DatePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.cursor = 0, this.typed = "", this.locales = Object.assign(Jq, t.locales), this._date = t.initial ||
      /* @__PURE__ */ new Date(), this.errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.mask =
      t.mask || "YYYY-MM-DD HH:mm:ss", this.clear = LA("", this.out.columns), this.render();
    }
    get value() {
      return this.date;
    }
    get date() {
      return this._date;
    }
    set date(t) {
      t && this._date.setTime(t.getTime());
    }
    set mask(t) {
      let r;
      for (this.parts = []; r = Wq.exec(t); ) {
        let n = r.shift(), u = r.findIndex((a) => a != null);
        this.parts.push(u in qA ? qA[u]({ token: r[u] || n, date: this.date, parts: this.parts, locales: this.locales }) : r[u] || n);
      }
      let i = this.parts.reduce((n, u) => (typeof u == "string" && typeof n[n.length - 1] == "string" ? n[n.length - 1] += u : n.push(u), n),
      []);
      this.parts.splice(0), this.parts.push(...i), this.reset();
    }
    moveCursor(t) {
      this.typed = "", this.cursor = t, this.fire();
    }
    reset() {
      this.moveCursor(this.parts.findIndex((t) => t instanceof jA)), this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    async validate() {
      let t = await this.validator(this.value);
      typeof t == "string" && (this.errorMsg = t, t = !1), this.error = !t;
    }
    async submit() {
      if (await this.validate(), this.error) {
        this.color = "red", this.fire(), this.render();
        return;
      }
      this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    up() {
      this.typed = "", this.parts[this.cursor].up(), this.render();
    }
    down() {
      this.typed = "", this.parts[this.cursor].down(), this.render();
    }
    left() {
      let t = this.parts[this.cursor].prev();
      if (t == null) return this.bell();
      this.moveCursor(this.parts.indexOf(t)), this.render();
    }
    right() {
      let t = this.parts[this.cursor].next();
      if (t == null) return this.bell();
      this.moveCursor(this.parts.indexOf(t)), this.render();
    }
    next() {
      let t = this.parts[this.cursor].next();
      this.moveCursor(t ? this.parts.indexOf(t) : this.parts.findIndex((r) => r instanceof jA)), this.render();
    }
    _(t) {
      /\d/.test(t) && (this.typed += t, this.parts[this.cursor].setTo(this.typed), this.render());
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(MA.hide) : this.out.write(LA(this.outputText, this.out.columns)), super.render(), this.
      outputText = [
        NA.symbol(this.done, this.aborted),
        qd.bold(this.msg),
        NA.delimiter(!1),
        this.parts.reduce((t, r, i) => t.concat(i === this.cursor && !this.done ? qd.cyan().underline(r.toString()) : r), []).join("")
      ].join(" "), this.error && (this.outputText += this.errorMsg.split(`
`).reduce(
        (t, r, i) => t + `
${i ? " " : Nq.pointerSmall} ${qd.red().italic(r)}`,
        ""
      )), this.out.write(Lq.line + MA.to(0) + this.outputText));
    }
  };
  $A.exports = $d;
});

// ../node_modules/prompts/lib/elements/number.js
var WA = I((SQ, HA) => {
  var Oo = He(), Gq = si(), { cursor: Ro, erase: Xq } = Je(), { style: Vd, figures: Yq, clear: UA, lines: Kq } = xr(), Qq = /[0-9]/, Ud = /* @__PURE__ */ s(
  (e) => e !== void 0, "isDef"), zA = /* @__PURE__ */ s((e, t) => {
    let r = Math.pow(10, t);
    return Math.round(e * r) / r;
  }, "round"), zd = class extends Gq {
    static {
      s(this, "NumberPrompt");
    }
    constructor(t = {}) {
      super(t), this.transform = Vd.render(t.style), this.msg = t.message, this.initial = Ud(t.initial) ? t.initial : "", this.float = !!t.float,
      this.round = t.round || 2, this.inc = t.increment || 1, this.min = Ud(t.min) ? t.min : -1 / 0, this.max = Ud(t.max) ? t.max : 1 / 0, this.
      errorMsg = t.error || "Please Enter A Valid Value", this.validator = t.validate || (() => !0), this.color = "cyan", this.value = "", this.
      typed = "", this.lastHit = 0, this.render();
    }
    set value(t) {
      !t && t !== 0 ? (this.placeholder = !0, this.rendered = Oo.gray(this.transform.render(`${this.initial}`)), this._value = "") : (this.placeholder =
      !1, this.rendered = this.transform.render(`${zA(t, this.round)}`), this._value = zA(t, this.round)), this.fire();
    }
    get value() {
      return this._value;
    }
    parse(t) {
      return this.float ? parseFloat(t) : parseInt(t);
    }
    valid(t) {
      return t === "-" || t === "." && this.float || Qq.test(t);
    }
    reset() {
      this.typed = "", this.value = "", this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      let t = this.value;
      this.value = t !== "" ? t : this.initial, this.done = this.aborted = !0, this.error = !1, this.fire(), this.render(), this.out.write(`\

`), this.close();
    }
    async validate() {
      let t = await this.validator(this.value);
      typeof t == "string" && (this.errorMsg = t, t = !1), this.error = !t;
    }
    async submit() {
      if (await this.validate(), this.error) {
        this.color = "red", this.fire(), this.render();
        return;
      }
      let t = this.value;
      this.value = t !== "" ? t : this.initial, this.done = !0, this.aborted = !1, this.error = !1, this.fire(), this.render(), this.out.write(
      `
`), this.close();
    }
    up() {
      if (this.typed = "", this.value === "" && (this.value = this.min - this.inc), this.value >= this.max) return this.bell();
      this.value += this.inc, this.color = "cyan", this.fire(), this.render();
    }
    down() {
      if (this.typed = "", this.value === "" && (this.value = this.min + this.inc), this.value <= this.min) return this.bell();
      this.value -= this.inc, this.color = "cyan", this.fire(), this.render();
    }
    delete() {
      let t = this.value.toString();
      if (t.length === 0) return this.bell();
      this.value = this.parse(t = t.slice(0, -1)) || "", this.value !== "" && this.value < this.min && (this.value = this.min), this.color =
      "cyan", this.fire(), this.render();
    }
    next() {
      this.value = this.initial, this.fire(), this.render();
    }
    _(t, r) {
      if (!this.valid(t)) return this.bell();
      let i = Date.now();
      if (i - this.lastHit > 1e3 && (this.typed = ""), this.typed += t, this.lastHit = i, this.color = "cyan", t === ".") return this.fire();
      this.value = Math.min(this.parse(this.typed), this.max), this.value > this.max && (this.value = this.max), this.value < this.min && (this.
      value = this.min), this.fire(), this.render();
    }
    render() {
      this.closed || (this.firstRender || (this.outputError && this.out.write(Ro.down(Kq(this.outputError, this.out.columns) - 1) + UA(this.
      outputError, this.out.columns)), this.out.write(UA(this.outputText, this.out.columns))), super.render(), this.outputError = "", this.outputText =
      [
        Vd.symbol(this.done, this.aborted),
        Oo.bold(this.msg),
        Vd.delimiter(this.done),
        !this.done || !this.done && !this.placeholder ? Oo[this.color]().underline(this.rendered) : this.rendered
      ].join(" "), this.error && (this.outputError += this.errorMsg.split(`
`).reduce((t, r, i) => t + `
${i ? " " : Yq.pointerSmall} ${Oo.red().italic(r)}`, "")), this.out.write(Xq.line + Ro.to(0) + this.outputText + Ro.save + this.outputError +
      Ro.restore));
    }
  };
  HA.exports = zd;
});

// ../node_modules/prompts/lib/elements/multiselect.js
var Wd = I((kQ, XA) => {
  "use strict";
  var jr = He(), { cursor: Zq } = Je(), e$ = si(), { clear: JA, figures: Ii, style: GA, wrap: t$, entriesToDisplay: r$ } = xr(), Hd = class extends e$ {
    static {
      s(this, "MultiselectPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.cursor = t.cursor || 0, this.scrollIndex = t.cursor || 0, this.hint = t.hint || "", this.warn = t.
      warn || "- This option is disabled -", this.minSelected = t.min, this.showMinError = !1, this.maxChoices = t.max, this.instructions = t.
      instructions, this.optionsPerPage = t.optionsPerPage || 10, this.value = t.choices.map((r, i) => (typeof r == "string" && (r = { title: r,
      value: i }), {
        title: r && (r.title || r.value || r),
        description: r && r.description,
        value: r && (r.value === void 0 ? i : r.value),
        selected: r && r.selected,
        disabled: r && r.disabled
      })), this.clear = JA("", this.out.columns), t.overrideRender || this.render();
    }
    reset() {
      this.value.map((t) => !t.selected), this.cursor = 0, this.fire(), this.render();
    }
    selected() {
      return this.value.filter((t) => t.selected);
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      let t = this.value.filter((r) => r.selected);
      this.minSelected && t.length < this.minSelected ? (this.showMinError = !0, this.render()) : (this.done = !0, this.aborted = !1, this.fire(),
      this.render(), this.out.write(`
`), this.close());
    }
    first() {
      this.cursor = 0, this.render();
    }
    last() {
      this.cursor = this.value.length - 1, this.render();
    }
    next() {
      this.cursor = (this.cursor + 1) % this.value.length, this.render();
    }
    up() {
      this.cursor === 0 ? this.cursor = this.value.length - 1 : this.cursor--, this.render();
    }
    down() {
      this.cursor === this.value.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
    }
    left() {
      this.value[this.cursor].selected = !1, this.render();
    }
    right() {
      if (this.value.filter((t) => t.selected).length >= this.maxChoices) return this.bell();
      this.value[this.cursor].selected = !0, this.render();
    }
    handleSpaceToggle() {
      let t = this.value[this.cursor];
      if (t.selected)
        t.selected = !1, this.render();
      else {
        if (t.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
          return this.bell();
        t.selected = !0, this.render();
      }
    }
    toggleAll() {
      if (this.maxChoices !== void 0 || this.value[this.cursor].disabled)
        return this.bell();
      let t = !this.value[this.cursor].selected;
      this.value.filter((r) => !r.disabled).forEach((r) => r.selected = t), this.render();
    }
    _(t, r) {
      if (t === " ")
        this.handleSpaceToggle();
      else if (t === "a")
        this.toggleAll();
      else
        return this.bell();
    }
    renderInstructions() {
      return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
Instructions:
    ${Ii.arrowUp}/${Ii.arrowDown}: Highlight option
    ${Ii.arrowLeft}/${Ii.arrowRight}/[space]: Toggle selection
` + (this.maxChoices === void 0 ? `    a: Toggle all
` : "") + "    enter/return: Complete answer" : "";
    }
    renderOption(t, r, i, n) {
      let u = (r.selected ? jr.green(Ii.radioOn) : Ii.radioOff) + " " + n + " ", a, o;
      return r.disabled ? a = t === i ? jr.gray().underline(r.title) : jr.strikethrough().gray(r.title) : (a = t === i ? jr.cyan().underline(
      r.title) : r.title, t === i && r.description && (o = ` - ${r.description}`, (u.length + a.length + o.length >= this.out.columns || r.description.
      split(/\r?\n/).length > 1) && (o = `
` + t$(r.description, { margin: u.length, width: this.out.columns })))), u + a + jr.gray(o || "");
    }
    // shared with autocompleteMultiselect
    paginateOptions(t) {
      if (t.length === 0)
        return jr.red("No matches for this query.");
      let { startIndex: r, endIndex: i } = r$(this.cursor, t.length, this.optionsPerPage), n, u = [];
      for (let a = r; a < i; a++)
        a === r && r > 0 ? n = Ii.arrowUp : a === i - 1 && i < t.length ? n = Ii.arrowDown : n = " ", u.push(this.renderOption(this.cursor, t[a],
        a, n));
      return `
` + u.join(`
`);
    }
    // shared with autocomleteMultiselect
    renderOptions(t) {
      return this.done ? "" : this.paginateOptions(t);
    }
    renderDoneOrInstructions() {
      if (this.done)
        return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
      let t = [jr.gray(this.hint), this.renderInstructions()];
      return this.value[this.cursor].disabled && t.push(jr.yellow(this.warn)), t.join(" ");
    }
    render() {
      if (this.closed) return;
      this.firstRender && this.out.write(Zq.hide), super.render();
      let t = [
        GA.symbol(this.done, this.aborted),
        jr.bold(this.msg),
        GA.delimiter(!1),
        this.renderDoneOrInstructions()
      ].join(" ");
      this.showMinError && (t += jr.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), t += this.renderOptions(
      this.value), this.out.write(this.clear + t), this.clear = JA(t, this.out.columns);
    }
  };
  XA.exports = Hd;
});

// ../node_modules/prompts/lib/elements/autocomplete.js
var eF = I((TQ, ZA) => {
  "use strict";
  var pu = He(), i$ = si(), { erase: n$, cursor: YA } = Je(), { style: Jd, clear: KA, figures: Gd, wrap: s$, entriesToDisplay: u$ } = xr(), QA = /* @__PURE__ */ s(
  (e, t) => e[t] && (e[t].value || e[t].title || e[t]), "getVal"), a$ = /* @__PURE__ */ s((e, t) => e[t] && (e[t].title || e[t].value || e[t]),
  "getTitle"), o$ = /* @__PURE__ */ s((e, t) => {
    let r = e.findIndex((i) => i.value === t || i.title === t);
    return r > -1 ? r : void 0;
  }, "getIndex"), Xd = class extends i$ {
    static {
      s(this, "AutocompletePrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.suggest = t.suggest, this.choices = t.choices, this.initial = typeof t.initial == "number" ? t.initial :
      o$(t.choices, t.initial), this.select = this.initial || t.cursor || 0, this.i18n = { noMatches: t.noMatches || "no matches found" }, this.
      fallback = t.fallback || this.initial, this.clearFirst = t.clearFirst || !1, this.suggestions = [], this.input = "", this.limit = t.limit ||
      10, this.cursor = 0, this.transform = Jd.render(t.style), this.scale = this.transform.scale, this.render = this.render.bind(this), this.
      complete = this.complete.bind(this), this.clear = KA("", this.out.columns), this.complete(this.render), this.render();
    }
    set fallback(t) {
      this._fb = Number.isSafeInteger(parseInt(t)) ? parseInt(t) : t;
    }
    get fallback() {
      let t;
      return typeof this._fb == "number" ? t = this.choices[this._fb] : typeof this._fb == "string" && (t = { title: this._fb }), t || this.
      _fb || { title: this.i18n.noMatches };
    }
    moveSelect(t) {
      this.select = t, this.suggestions.length > 0 ? this.value = QA(this.suggestions, t) : this.value = this.fallback.value, this.fire();
    }
    async complete(t) {
      let r = this.completing = this.suggest(this.input, this.choices), i = await r;
      if (this.completing !== r) return;
      this.suggestions = i.map((u, a, o) => ({ title: a$(o, a), value: QA(o, a), description: u.description })), this.completing = !1;
      let n = Math.max(i.length - 1, 0);
      this.moveSelect(Math.min(n, this.select)), t && t();
    }
    reset() {
      this.input = "", this.complete(() => {
        this.moveSelect(this.initial !== void 0 ? this.initial : 0), this.render();
      }), this.render();
    }
    exit() {
      this.clearFirst && this.input.length > 0 ? this.reset() : (this.done = this.exited = !0, this.aborted = !1, this.fire(), this.render(),
      this.out.write(`
`), this.close());
    }
    abort() {
      this.done = this.aborted = !0, this.exited = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.done = !0, this.aborted = this.exited = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    _(t, r) {
      let i = this.input.slice(0, this.cursor), n = this.input.slice(this.cursor);
      this.input = `${i}${t}${n}`, this.cursor = i.length + 1, this.complete(this.render), this.render();
    }
    delete() {
      if (this.cursor === 0) return this.bell();
      let t = this.input.slice(0, this.cursor - 1), r = this.input.slice(this.cursor);
      this.input = `${t}${r}`, this.complete(this.render), this.cursor = this.cursor - 1, this.render();
    }
    deleteForward() {
      if (this.cursor * this.scale >= this.rendered.length) return this.bell();
      let t = this.input.slice(0, this.cursor), r = this.input.slice(this.cursor + 1);
      this.input = `${t}${r}`, this.complete(this.render), this.render();
    }
    first() {
      this.moveSelect(0), this.render();
    }
    last() {
      this.moveSelect(this.suggestions.length - 1), this.render();
    }
    up() {
      this.select === 0 ? this.moveSelect(this.suggestions.length - 1) : this.moveSelect(this.select - 1), this.render();
    }
    down() {
      this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
    }
    next() {
      this.select === this.suggestions.length - 1 ? this.moveSelect(0) : this.moveSelect(this.select + 1), this.render();
    }
    nextPage() {
      this.moveSelect(Math.min(this.select + this.limit, this.suggestions.length - 1)), this.render();
    }
    prevPage() {
      this.moveSelect(Math.max(this.select - this.limit, 0)), this.render();
    }
    left() {
      if (this.cursor <= 0) return this.bell();
      this.cursor = this.cursor - 1, this.render();
    }
    right() {
      if (this.cursor * this.scale >= this.rendered.length) return this.bell();
      this.cursor = this.cursor + 1, this.render();
    }
    renderOption(t, r, i, n) {
      let u, a = i ? Gd.arrowUp : n ? Gd.arrowDown : " ", o = r ? pu.cyan().underline(t.title) : t.title;
      return a = (r ? pu.cyan(Gd.pointer) + " " : "  ") + a, t.description && (u = ` - ${t.description}`, (a.length + o.length + u.length >=
      this.out.columns || t.description.split(/\r?\n/).length > 1) && (u = `
` + s$(t.description, { margin: 3, width: this.out.columns }))), a + " " + o + pu.gray(u || "");
    }
    render() {
      if (this.closed) return;
      this.firstRender ? this.out.write(YA.hide) : this.out.write(KA(this.outputText, this.out.columns)), super.render();
      let { startIndex: t, endIndex: r } = u$(this.select, this.choices.length, this.limit);
      if (this.outputText = [
        Jd.symbol(this.done, this.aborted, this.exited),
        pu.bold(this.msg),
        Jd.delimiter(this.completing),
        this.done && this.suggestions[this.select] ? this.suggestions[this.select].title : this.rendered = this.transform.render(this.input)
      ].join(" "), !this.done) {
        let i = this.suggestions.slice(t, r).map((n, u) => this.renderOption(
          n,
          this.select === u + t,
          u === 0 && t > 0,
          u + t === r - 1 && r < this.choices.length
        )).join(`
`);
        this.outputText += `
` + (i || pu.gray(this.fallback.title));
      }
      this.out.write(n$.line + YA.to(0) + this.outputText);
    }
  };
  ZA.exports = Xd;
});

// ../node_modules/prompts/lib/elements/autocompleteMultiselect.js
var nF = I((IQ, iF) => {
  "use strict";
  var ai = He(), { cursor: l$ } = Je(), c$ = Wd(), { clear: tF, style: rF, figures: es } = xr(), Yd = class extends c$ {
    static {
      s(this, "AutocompleteMultiselectPrompt");
    }
    constructor(t = {}) {
      t.overrideRender = !0, super(t), this.inputValue = "", this.clear = tF("", this.out.columns), this.filteredOptions = this.value, this.
      render();
    }
    last() {
      this.cursor = this.filteredOptions.length - 1, this.render();
    }
    next() {
      this.cursor = (this.cursor + 1) % this.filteredOptions.length, this.render();
    }
    up() {
      this.cursor === 0 ? this.cursor = this.filteredOptions.length - 1 : this.cursor--, this.render();
    }
    down() {
      this.cursor === this.filteredOptions.length - 1 ? this.cursor = 0 : this.cursor++, this.render();
    }
    left() {
      this.filteredOptions[this.cursor].selected = !1, this.render();
    }
    right() {
      if (this.value.filter((t) => t.selected).length >= this.maxChoices) return this.bell();
      this.filteredOptions[this.cursor].selected = !0, this.render();
    }
    delete() {
      this.inputValue.length && (this.inputValue = this.inputValue.substr(0, this.inputValue.length - 1), this.updateFilteredOptions());
    }
    updateFilteredOptions() {
      let t = this.filteredOptions[this.cursor];
      this.filteredOptions = this.value.filter((i) => this.inputValue ? !!(typeof i.title == "string" && i.title.toLowerCase().includes(this.
      inputValue.toLowerCase()) || typeof i.value == "string" && i.value.toLowerCase().includes(this.inputValue.toLowerCase())) : !0);
      let r = this.filteredOptions.findIndex((i) => i === t);
      this.cursor = r < 0 ? 0 : r, this.render();
    }
    handleSpaceToggle() {
      let t = this.filteredOptions[this.cursor];
      if (t.selected)
        t.selected = !1, this.render();
      else {
        if (t.disabled || this.value.filter((r) => r.selected).length >= this.maxChoices)
          return this.bell();
        t.selected = !0, this.render();
      }
    }
    handleInputChange(t) {
      this.inputValue = this.inputValue + t, this.updateFilteredOptions();
    }
    _(t, r) {
      t === " " ? this.handleSpaceToggle() : this.handleInputChange(t);
    }
    renderInstructions() {
      return this.instructions === void 0 || this.instructions ? typeof this.instructions == "string" ? this.instructions : `
Instructions:
    ${es.arrowUp}/${es.arrowDown}: Highlight option
    ${es.arrowLeft}/${es.arrowRight}/[space]: Toggle selection
    [a,b,c]/delete: Filter choices
    enter/return: Complete answer
` : "";
    }
    renderCurrentInput() {
      return `
Filtered results for: ${this.inputValue ? this.inputValue : ai.gray("Enter something to filter")}
`;
    }
    renderOption(t, r, i) {
      let n;
      return r.disabled ? n = t === i ? ai.gray().underline(r.title) : ai.strikethrough().gray(r.title) : n = t === i ? ai.cyan().underline(
      r.title) : r.title, (r.selected ? ai.green(es.radioOn) : es.radioOff) + "  " + n;
    }
    renderDoneOrInstructions() {
      if (this.done)
        return this.value.filter((r) => r.selected).map((r) => r.title).join(", ");
      let t = [ai.gray(this.hint), this.renderInstructions(), this.renderCurrentInput()];
      return this.filteredOptions.length && this.filteredOptions[this.cursor].disabled && t.push(ai.yellow(this.warn)), t.join(" ");
    }
    render() {
      if (this.closed) return;
      this.firstRender && this.out.write(l$.hide), super.render();
      let t = [
        rF.symbol(this.done, this.aborted),
        ai.bold(this.msg),
        rF.delimiter(!1),
        this.renderDoneOrInstructions()
      ].join(" ");
      this.showMinError && (t += ai.red(`You must select a minimum of ${this.minSelected} choices.`), this.showMinError = !1), t += this.renderOptions(
      this.filteredOptions), this.out.write(this.clear + t), this.clear = tF(t, this.out.columns);
    }
  };
  iF.exports = Yd;
});

// ../node_modules/prompts/lib/elements/confirm.js
var lF = I((RQ, oF) => {
  var sF = He(), h$ = si(), { style: uF, clear: p$ } = xr(), { erase: f$, cursor: aF } = Je(), Kd = class extends h$ {
    static {
      s(this, "ConfirmPrompt");
    }
    constructor(t = {}) {
      super(t), this.msg = t.message, this.value = t.initial, this.initialValue = !!t.initial, this.yesMsg = t.yes || "yes", this.yesOption =
      t.yesOption || "(Y/n)", this.noMsg = t.no || "no", this.noOption = t.noOption || "(y/N)", this.render();
    }
    reset() {
      this.value = this.initialValue, this.fire(), this.render();
    }
    exit() {
      this.abort();
    }
    abort() {
      this.done = this.aborted = !0, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    submit() {
      this.value = this.value || !1, this.done = !0, this.aborted = !1, this.fire(), this.render(), this.out.write(`
`), this.close();
    }
    _(t, r) {
      return t.toLowerCase() === "y" ? (this.value = !0, this.submit()) : t.toLowerCase() === "n" ? (this.value = !1, this.submit()) : this.
      bell();
    }
    render() {
      this.closed || (this.firstRender ? this.out.write(aF.hide) : this.out.write(p$(this.outputText, this.out.columns)), super.render(), this.
      outputText = [
        uF.symbol(this.done, this.aborted),
        sF.bold(this.msg),
        uF.delimiter(this.done),
        this.done ? this.value ? this.yesMsg : this.noMsg : sF.gray(this.initialValue ? this.yesOption : this.noOption)
      ].join(" "), this.out.write(f$.line + aF.to(0) + this.outputText));
    }
  };
  oF.exports = Kd;
});

// ../node_modules/prompts/lib/elements/index.js
var hF = I((LQ, cF) => {
  "use strict";
  cF.exports = {
    TextPrompt: oA(),
    SelectPrompt: pA(),
    TogglePrompt: DA(),
    DatePrompt: VA(),
    NumberPrompt: WA(),
    MultiselectPrompt: Wd(),
    AutocompletePrompt: eF(),
    AutocompleteMultiselectPrompt: nF(),
    ConfirmPrompt: lF()
  };
});

// ../node_modules/prompts/lib/prompts.js
var fF = I((pF) => {
  "use strict";
  var Bt = pF, d$ = hF(), No = /* @__PURE__ */ s((e) => e, "noop");
  function qr(e, t, r = {}) {
    return new Promise((i, n) => {
      let u = new d$[e](t), a = r.onAbort || No, o = r.onSubmit || No, l = r.onExit || No;
      u.on("state", t.onState || No), u.on("submit", (c) => i(o(c))), u.on("exit", (c) => i(l(c))), u.on("abort", (c) => n(a(c)));
    });
  }
  s(qr, "toPrompt");
  Bt.text = (e) => qr("TextPrompt", e);
  Bt.password = (e) => (e.style = "password", Bt.text(e));
  Bt.invisible = (e) => (e.style = "invisible", Bt.text(e));
  Bt.number = (e) => qr("NumberPrompt", e);
  Bt.date = (e) => qr("DatePrompt", e);
  Bt.confirm = (e) => qr("ConfirmPrompt", e);
  Bt.list = (e) => {
    let t = e.separator || ",";
    return qr("TextPrompt", e, {
      onSubmit: /* @__PURE__ */ s((r) => r.split(t).map((i) => i.trim()), "onSubmit")
    });
  };
  Bt.toggle = (e) => qr("TogglePrompt", e);
  Bt.select = (e) => qr("SelectPrompt", e);
  Bt.multiselect = (e) => {
    e.choices = [].concat(e.choices || []);
    let t = /* @__PURE__ */ s((r) => r.filter((i) => i.selected).map((i) => i.value), "toSelected");
    return qr("MultiselectPrompt", e, {
      onAbort: t,
      onSubmit: t
    });
  };
  Bt.autocompleteMultiselect = (e) => {
    e.choices = [].concat(e.choices || []);
    let t = /* @__PURE__ */ s((r) => r.filter((i) => i.selected).map((i) => i.value), "toSelected");
    return qr("AutocompleteMultiselectPrompt", e, {
      onAbort: t,
      onSubmit: t
    });
  };
  var m$ = /* @__PURE__ */ s((e, t) => Promise.resolve(
    t.filter((r) => r.title.slice(0, e.length).toLowerCase() === e.toLowerCase())
  ), "byTitle");
  Bt.autocomplete = (e) => (e.suggest = e.suggest || m$, e.choices = [].concat(e.choices || []), qr("AutocompletePrompt", e));
});

// ../node_modules/prompts/lib/index.js
var DF = I((qQ, mF) => {
  "use strict";
  var Qd = fF(), D$ = ["suggest", "format", "onState", "validate", "onRender", "type"], dF = /* @__PURE__ */ s(() => {
  }, "noop");
  async function Oi(e = [], { onSubmit: t = dF, onCancel: r = dF } = {}) {
    let i = {}, n = Oi._override || {};
    e = [].concat(e);
    let u, a, o, l, c, h, p = /* @__PURE__ */ s(async (d, m, D = !1) => {
      if (!(!D && d.validate && d.validate(m) !== !0))
        return d.format ? await d.format(m, i) : m;
    }, "getFormattedAnswer");
    for (a of e)
      if ({ name: l, type: c } = a, typeof c == "function" && (c = await c(u, { ...i }, a), a.type = c), !!c) {
        for (let d in a) {
          if (D$.includes(d)) continue;
          let m = a[d];
          a[d] = typeof m == "function" ? await m(u, { ...i }, h) : m;
        }
        if (h = a, typeof a.message != "string")
          throw new Error("prompt message is required");
        if ({ name: l, type: c } = a, Qd[c] === void 0)
          throw new Error(`prompt type (${c}) is not defined`);
        if (n[a.name] !== void 0 && (u = await p(a, n[a.name]), u !== void 0)) {
          i[l] = u;
          continue;
        }
        try {
          u = Oi._injected ? g$(Oi._injected, a.initial) : await Qd[c](a), i[l] = u = await p(a, u, !0), o = await t(a, u, i);
        } catch {
          o = !await r(a, i);
        }
        if (o) return i;
      }
    return i;
  }
  s(Oi, "prompt");
  function g$(e, t) {
    let r = e.shift();
    if (r instanceof Error)
      throw r;
    return r === void 0 ? t : r;
  }
  s(g$, "getInjectedAnswer");
  function x$(e) {
    Oi._injected = (Oi._injected || []).concat(e);
  }
  s(x$, "inject");
  function y$(e) {
    Oi._override = Object.assign({}, e);
  }
  s(y$, "override");
  mF.exports = Object.assign(Oi, { prompt: Oi, prompts: Qd, inject: x$, override: y$ });
});

// ../node_modules/prompts/index.js
var Zd = I((VQ, gF) => {
  function E$(e) {
    e = (Array.isArray(e) ? e : e.split(".")).map(Number);
    let t = 0, r = process.versions.node.split(".").map(Number);
    for (; t < e.length; t++) {
      if (r[t] > e[t]) return !1;
      if (e[t] > r[t]) return !0;
    }
    return !1;
  }
  s(E$, "isNodeLT");
  gF.exports = E$("8.6.0") ? Vw() : DF();
});

// ../node_modules/map-or-similar/src/similar.js
var SF = I((dZ, FF) => {
  function Ni() {
    return this.list = [], this.lastItem = void 0, this.size = 0, this;
  }
  s(Ni, "Similar");
  Ni.prototype.get = function(e) {
    var t;
    if (this.lastItem && this.isEqual(this.lastItem.key, e))
      return this.lastItem.val;
    if (t = this.indexOf(e), t >= 0)
      return this.lastItem = this.list[t], this.list[t].val;
  };
  Ni.prototype.set = function(e, t) {
    var r;
    return this.lastItem && this.isEqual(this.lastItem.key, e) ? (this.lastItem.val = t, this) : (r = this.indexOf(e), r >= 0 ? (this.lastItem =
    this.list[r], this.list[r].val = t, this) : (this.lastItem = { key: e, val: t }, this.list.push(this.lastItem), this.size++, this));
  };
  Ni.prototype.delete = function(e) {
    var t;
    if (this.lastItem && this.isEqual(this.lastItem.key, e) && (this.lastItem = void 0), t = this.indexOf(e), t >= 0)
      return this.size--, this.list.splice(t, 1)[0];
  };
  Ni.prototype.has = function(e) {
    var t;
    return this.lastItem && this.isEqual(this.lastItem.key, e) ? !0 : (t = this.indexOf(e), t >= 0 ? (this.lastItem = this.list[t], !0) : !1);
  };
  Ni.prototype.forEach = function(e, t) {
    var r;
    for (r = 0; r < this.size; r++)
      e.call(t || this, this.list[r].val, this.list[r].key, this);
  };
  Ni.prototype.indexOf = function(e) {
    var t;
    for (t = 0; t < this.size; t++)
      if (this.isEqual(this.list[t].key, e))
        return t;
    return -1;
  };
  Ni.prototype.isEqual = function(e, t) {
    return e === t || e !== e && t !== t;
  };
  FF.exports = Ni;
});

// ../node_modules/map-or-similar/src/map-or-similar.js
var kF = I((DZ, _F) => {
  _F.exports = function(e) {
    if (typeof Map != "function" || e) {
      var t = SF();
      return new t();
    } else
      return /* @__PURE__ */ new Map();
  };
});

// ../node_modules/memoizerific/src/memoizerific.js
var PF = I((gZ, TF) => {
  var BF = kF();
  TF.exports = function(e) {
    var t = new BF(process.env.FORCE_SIMILAR_INSTEAD_OF_MAP === "true"), r = [];
    return function(i) {
      var n = /* @__PURE__ */ s(function() {
        var u = t, a, o, l = arguments.length - 1, c = Array(l + 1), h = !0, p;
        if ((n.numArgs || n.numArgs === 0) && n.numArgs !== l + 1)
          throw new Error("Memoizerific functions should always be called with the same number of arguments");
        for (p = 0; p < l; p++) {
          if (c[p] = {
            cacheItem: u,
            arg: arguments[p]
          }, u.has(arguments[p])) {
            u = u.get(arguments[p]);
            continue;
          }
          h = !1, a = new BF(process.env.FORCE_SIMILAR_INSTEAD_OF_MAP === "true"), u.set(arguments[p], a), u = a;
        }
        return h && (u.has(arguments[l]) ? o = u.get(arguments[l]) : h = !1), h || (o = i.apply(null, arguments), u.set(arguments[l], o)), e >
        0 && (c[l] = {
          cacheItem: u,
          arg: arguments[l]
        }, h ? F$(r, c) : r.push(c), r.length > e && S$(r.shift())), n.wasMemoized = h, n.numArgs = l + 1, o;
      }, "memoizerific");
      return n.limit = e, n.wasMemoized = !1, n.cache = t, n.lru = r, n;
    };
  };
  function F$(e, t) {
    var r = e.length, i = t.length, n, u, a;
    for (u = 0; u < r; u++) {
      for (n = !0, a = 0; a < i; a++)
        if (!_$(e[u][a].arg, t[a].arg)) {
          n = !1;
          break;
        }
      if (n)
        break;
    }
    e.push(e.splice(u, 1)[0]);
  }
  s(F$, "moveToMostRecentLru");
  function S$(e) {
    var t = e.length, r = e[t - 1], i, n;
    for (r.cacheItem.delete(r.arg), n = t - 2; n >= 0 && (r = e[n], i = r.cacheItem.get(r.arg), !i || !i.size); n--)
      r.cacheItem.delete(r.arg);
  }
  s(S$, "removeCachedResult");
  function _$(e, t) {
    return e === t || e !== e && t !== t;
  }
  s(_$, "isEqual");
});

// ../node_modules/telejson/dist/index.js
var IF = I((exports, module) => {
  "use strict";
  var __create = Object.create, __defProp = Object.defineProperty, __getOwnPropDesc = Object.getOwnPropertyDescriptor, __getOwnPropNames = Object.
  getOwnPropertyNames, __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty, __commonJS = /* @__PURE__ */ s(
  (e, t) => /* @__PURE__ */ s(function() {
    return t || (0, e[__getOwnPropNames(e)[0]])((t = { exports: {} }).exports, t), t.exports;
  }, "__require"), "__commonJS"), __export = /* @__PURE__ */ s((e, t) => {
    for (var r in t)
      __defProp(e, r, { get: t[r], enumerable: !0 });
  }, "__export"), __copyProps = /* @__PURE__ */ s((e, t, r, i) => {
    if (t && typeof t == "object" || typeof t == "function")
      for (let n of __getOwnPropNames(t))
        !__hasOwnProp.call(e, n) && n !== r && __defProp(e, n, { get: /* @__PURE__ */ s(() => t[n], "get"), enumerable: !(i = __getOwnPropDesc(
        t, n)) || i.enumerable });
    return e;
  }, "__copyProps"), __toESM = /* @__PURE__ */ s((e, t, r) => (r = e != null ? __create(__getProtoOf(e)) : {}, __copyProps(
    t || !e || !e.__esModule ? __defProp(r, "default", { value: e, enumerable: !0 }) : r,
    e
  )), "__toESM"), __toCommonJS = /* @__PURE__ */ s((e) => __copyProps(__defProp({}, "__esModule", { value: !0 }), e), "__toCommonJS"), require_shams = __commonJS(
  {
    "node_modules/has-symbols/shams.js"(e, t) {
      "use strict";
      t.exports = /* @__PURE__ */ s(function() {
        if (typeof Symbol != "function" || typeof Object.getOwnPropertySymbols != "function")
          return !1;
        if (typeof Symbol.iterator == "symbol")
          return !0;
        var i = {}, n = Symbol("test"), u = Object(n);
        if (typeof n == "string" || Object.prototype.toString.call(n) !== "[object Symbol]" || Object.prototype.toString.call(u) !== "[objec\
t Symbol]")
          return !1;
        var a = 42;
        i[n] = a;
        for (n in i)
          return !1;
        if (typeof Object.keys == "function" && Object.keys(i).length !== 0 || typeof Object.getOwnPropertyNames == "function" && Object.getOwnPropertyNames(
        i).length !== 0)
          return !1;
        var o = Object.getOwnPropertySymbols(i);
        if (o.length !== 1 || o[0] !== n || !Object.prototype.propertyIsEnumerable.call(i, n))
          return !1;
        if (typeof Object.getOwnPropertyDescriptor == "function") {
          var l = Object.getOwnPropertyDescriptor(i, n);
          if (l.value !== a || l.enumerable !== !0)
            return !1;
        }
        return !0;
      }, "hasSymbols");
    }
  }), require_has_symbols = __commonJS({
    "node_modules/has-symbols/index.js"(e, t) {
      "use strict";
      var r = typeof Symbol < "u" && Symbol, i = require_shams();
      t.exports = /* @__PURE__ */ s(function() {
        return typeof r != "function" || typeof Symbol != "function" || typeof r("foo") != "symbol" || typeof Symbol("bar") != "symbol" ? !1 :
        i();
      }, "hasNativeSymbols");
    }
  }), require_implementation = __commonJS({
    "node_modules/function-bind/implementation.js"(e, t) {
      "use strict";
      var r = "Function.prototype.bind called on incompatible ", i = Array.prototype.slice, n = Object.prototype.toString, u = "[object Func\
tion]";
      t.exports = /* @__PURE__ */ s(function(o) {
        var l = this;
        if (typeof l != "function" || n.call(l) !== u)
          throw new TypeError(r + l);
        for (var c = i.call(arguments, 1), h, p = /* @__PURE__ */ s(function() {
          if (this instanceof h) {
            var v = l.apply(
              this,
              c.concat(i.call(arguments))
            );
            return Object(v) === v ? v : this;
          } else
            return l.apply(
              o,
              c.concat(i.call(arguments))
            );
        }, "binder"), d = Math.max(0, l.length - c.length), m = [], D = 0; D < d; D++)
          m.push("$" + D);
        if (h = Function("binder", "return function (" + m.join(",") + "){ return binder.apply(this,arguments); }")(p), l.prototype) {
          var g = /* @__PURE__ */ s(function() {
          }, "Empty2");
          g.prototype = l.prototype, h.prototype = new g(), g.prototype = null;
        }
        return h;
      }, "bind");
    }
  }), require_function_bind = __commonJS({
    "node_modules/function-bind/index.js"(e, t) {
      "use strict";
      var r = require_implementation();
      t.exports = Function.prototype.bind || r;
    }
  }), require_src = __commonJS({
    "node_modules/has/src/index.js"(e, t) {
      "use strict";
      var r = require_function_bind();
      t.exports = r.call(Function.call, Object.prototype.hasOwnProperty);
    }
  }), require_get_intrinsic = __commonJS({
    "node_modules/get-intrinsic/index.js"(e, t) {
      "use strict";
      var r, i = SyntaxError, n = Function, u = TypeError, a = /* @__PURE__ */ s(function(V) {
        try {
          return n('"use strict"; return (' + V + ").constructor;")();
        } catch {
        }
      }, "getEvalledConstructor"), o = Object.getOwnPropertyDescriptor;
      if (o)
        try {
          o({}, "");
        } catch {
          o = null;
        }
      var l = /* @__PURE__ */ s(function() {
        throw new u();
      }, "throwTypeError"), c = o ? function() {
        try {
          return arguments.callee, l;
        } catch {
          try {
            return o(arguments, "callee").get;
          } catch {
            return l;
          }
        }
      }() : l, h = require_has_symbols()(), p = Object.getPrototypeOf || function(V) {
        return V.__proto__;
      }, d = {}, m = typeof Uint8Array > "u" ? r : p(Uint8Array), D = {
        "%AggregateError%": typeof AggregateError > "u" ? r : AggregateError,
        "%Array%": Array,
        "%ArrayBuffer%": typeof ArrayBuffer > "u" ? r : ArrayBuffer,
        "%ArrayIteratorPrototype%": h ? p([][Symbol.iterator]()) : r,
        "%AsyncFromSyncIteratorPrototype%": r,
        "%AsyncFunction%": d,
        "%AsyncGenerator%": d,
        "%AsyncGeneratorFunction%": d,
        "%AsyncIteratorPrototype%": d,
        "%Atomics%": typeof Atomics > "u" ? r : Atomics,
        "%BigInt%": typeof BigInt > "u" ? r : BigInt,
        "%Boolean%": Boolean,
        "%DataView%": typeof DataView > "u" ? r : DataView,
        "%Date%": Date,
        "%decodeURI%": decodeURI,
        "%decodeURIComponent%": decodeURIComponent,
        "%encodeURI%": encodeURI,
        "%encodeURIComponent%": encodeURIComponent,
        "%Error%": Error,
        "%eval%": eval,
        "%EvalError%": EvalError,
        "%Float32Array%": typeof Float32Array > "u" ? r : Float32Array,
        "%Float64Array%": typeof Float64Array > "u" ? r : Float64Array,
        "%FinalizationRegistry%": typeof FinalizationRegistry > "u" ? r : FinalizationRegistry,
        "%Function%": n,
        "%GeneratorFunction%": d,
        "%Int8Array%": typeof Int8Array > "u" ? r : Int8Array,
        "%Int16Array%": typeof Int16Array > "u" ? r : Int16Array,
        "%Int32Array%": typeof Int32Array > "u" ? r : Int32Array,
        "%isFinite%": isFinite,
        "%isNaN%": isNaN,
        "%IteratorPrototype%": h ? p(p([][Symbol.iterator]())) : r,
        "%JSON%": typeof JSON == "object" ? JSON : r,
        "%Map%": typeof Map > "u" ? r : Map,
        "%MapIteratorPrototype%": typeof Map > "u" || !h ? r : p((/* @__PURE__ */ new Map())[Symbol.iterator]()),
        "%Math%": Math,
        "%Number%": Number,
        "%Object%": Object,
        "%parseFloat%": parseFloat,
        "%parseInt%": parseInt,
        "%Promise%": typeof Promise > "u" ? r : Promise,
        "%Proxy%": typeof Proxy > "u" ? r : Proxy,
        "%RangeError%": RangeError,
        "%ReferenceError%": ReferenceError,
        "%Reflect%": typeof Reflect > "u" ? r : Reflect,
        "%RegExp%": RegExp,
        "%Set%": typeof Set > "u" ? r : Set,
        "%SetIteratorPrototype%": typeof Set > "u" || !h ? r : p((/* @__PURE__ */ new Set())[Symbol.iterator]()),
        "%SharedArrayBuffer%": typeof SharedArrayBuffer > "u" ? r : SharedArrayBuffer,
        "%String%": String,
        "%StringIteratorPrototype%": h ? p(""[Symbol.iterator]()) : r,
        "%Symbol%": h ? Symbol : r,
        "%SyntaxError%": i,
        "%ThrowTypeError%": c,
        "%TypedArray%": m,
        "%TypeError%": u,
        "%Uint8Array%": typeof Uint8Array > "u" ? r : Uint8Array,
        "%Uint8ClampedArray%": typeof Uint8ClampedArray > "u" ? r : Uint8ClampedArray,
        "%Uint16Array%": typeof Uint16Array > "u" ? r : Uint16Array,
        "%Uint32Array%": typeof Uint32Array > "u" ? r : Uint32Array,
        "%URIError%": URIError,
        "%WeakMap%": typeof WeakMap > "u" ? r : WeakMap,
        "%WeakRef%": typeof WeakRef > "u" ? r : WeakRef,
        "%WeakSet%": typeof WeakSet > "u" ? r : WeakSet
      }, g = /* @__PURE__ */ s(function V(U) {
        var X;
        if (U === "%AsyncFunction%")
          X = a("async function () {}");
        else if (U === "%GeneratorFunction%")
          X = a("function* () {}");
        else if (U === "%AsyncGeneratorFunction%")
          X = a("async function* () {}");
        else if (U === "%AsyncGenerator%") {
          var R = V("%AsyncGeneratorFunction%");
          R && (X = R.prototype);
        } else if (U === "%AsyncIteratorPrototype%") {
          var N = V("%AsyncGenerator%");
          N && (X = p(N.prototype));
        }
        return D[U] = X, X;
      }, "doEval2"), v = {
        "%ArrayBufferPrototype%": ["ArrayBuffer", "prototype"],
        "%ArrayPrototype%": ["Array", "prototype"],
        "%ArrayProto_entries%": ["Array", "prototype", "entries"],
        "%ArrayProto_forEach%": ["Array", "prototype", "forEach"],
        "%ArrayProto_keys%": ["Array", "prototype", "keys"],
        "%ArrayProto_values%": ["Array", "prototype", "values"],
        "%AsyncFunctionPrototype%": ["AsyncFunction", "prototype"],
        "%AsyncGenerator%": ["AsyncGeneratorFunction", "prototype"],
        "%AsyncGeneratorPrototype%": ["AsyncGeneratorFunction", "prototype", "prototype"],
        "%BooleanPrototype%": ["Boolean", "prototype"],
        "%DataViewPrototype%": ["DataView", "prototype"],
        "%DatePrototype%": ["Date", "prototype"],
        "%ErrorPrototype%": ["Error", "prototype"],
        "%EvalErrorPrototype%": ["EvalError", "prototype"],
        "%Float32ArrayPrototype%": ["Float32Array", "prototype"],
        "%Float64ArrayPrototype%": ["Float64Array", "prototype"],
        "%FunctionPrototype%": ["Function", "prototype"],
        "%Generator%": ["GeneratorFunction", "prototype"],
        "%GeneratorPrototype%": ["GeneratorFunction", "prototype", "prototype"],
        "%Int8ArrayPrototype%": ["Int8Array", "prototype"],
        "%Int16ArrayPrototype%": ["Int16Array", "prototype"],
        "%Int32ArrayPrototype%": ["Int32Array", "prototype"],
        "%JSONParse%": ["JSON", "parse"],
        "%JSONStringify%": ["JSON", "stringify"],
        "%MapPrototype%": ["Map", "prototype"],
        "%NumberPrototype%": ["Number", "prototype"],
        "%ObjectPrototype%": ["Object", "prototype"],
        "%ObjProto_toString%": ["Object", "prototype", "toString"],
        "%ObjProto_valueOf%": ["Object", "prototype", "valueOf"],
        "%PromisePrototype%": ["Promise", "prototype"],
        "%PromiseProto_then%": ["Promise", "prototype", "then"],
        "%Promise_all%": ["Promise", "all"],
        "%Promise_reject%": ["Promise", "reject"],
        "%Promise_resolve%": ["Promise", "resolve"],
        "%RangeErrorPrototype%": ["RangeError", "prototype"],
        "%ReferenceErrorPrototype%": ["ReferenceError", "prototype"],
        "%RegExpPrototype%": ["RegExp", "prototype"],
        "%SetPrototype%": ["Set", "prototype"],
        "%SharedArrayBufferPrototype%": ["SharedArrayBuffer", "prototype"],
        "%StringPrototype%": ["String", "prototype"],
        "%SymbolPrototype%": ["Symbol", "prototype"],
        "%SyntaxErrorPrototype%": ["SyntaxError", "prototype"],
        "%TypedArrayPrototype%": ["TypedArray", "prototype"],
        "%TypeErrorPrototype%": ["TypeError", "prototype"],
        "%Uint8ArrayPrototype%": ["Uint8Array", "prototype"],
        "%Uint8ClampedArrayPrototype%": ["Uint8ClampedArray", "prototype"],
        "%Uint16ArrayPrototype%": ["Uint16Array", "prototype"],
        "%Uint32ArrayPrototype%": ["Uint32Array", "prototype"],
        "%URIErrorPrototype%": ["URIError", "prototype"],
        "%WeakMapPrototype%": ["WeakMap", "prototype"],
        "%WeakSetPrototype%": ["WeakSet", "prototype"]
      }, x = require_function_bind(), C = require_src(), S = x.call(Function.call, Array.prototype.concat), k = x.call(Function.apply, Array.
      prototype.splice), j = x.call(Function.call, String.prototype.replace), w = x.call(Function.call, String.prototype.slice), A = x.call(
      Function.call, RegExp.prototype.exec), T = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g,
      B = /\\(\\)?/g, $ = /* @__PURE__ */ s(function(U) {
        var X = w(U, 0, 1), R = w(U, -1);
        if (X === "%" && R !== "%")
          throw new i("invalid intrinsic syntax, expected closing `%`");
        if (R === "%" && X !== "%")
          throw new i("invalid intrinsic syntax, expected opening `%`");
        var N = [];
        return j(U, T, function(z, Y, ee, O) {
          N[N.length] = ee ? j(O, B, "$1") : Y || z;
        }), N;
      }, "stringToPath3"), L = /* @__PURE__ */ s(function(U, X) {
        var R = U, N;
        if (C(v, R) && (N = v[R], R = "%" + N[0] + "%"), C(D, R)) {
          var z = D[R];
          if (z === d && (z = g(R)), typeof z > "u" && !X)
            throw new u("intrinsic " + U + " exists, but is not available. Please file an issue!");
          return {
            alias: N,
            name: R,
            value: z
          };
        }
        throw new i("intrinsic " + U + " does not exist!");
      }, "getBaseIntrinsic2");
      t.exports = /* @__PURE__ */ s(function(U, X) {
        if (typeof U != "string" || U.length === 0)
          throw new u("intrinsic name must be a non-empty string");
        if (arguments.length > 1 && typeof X != "boolean")
          throw new u('"allowMissing" argument must be a boolean');
        if (A(/^%?[^%]*%?$/, U) === null)
          throw new i("`%` may not be present anywhere but at the beginning and end of the intrinsic name");
        var R = $(U), N = R.length > 0 ? R[0] : "", z = L("%" + N + "%", X), Y = z.name, ee = z.value, O = !1, ue = z.alias;
        ue && (N = ue[0], k(R, S([0, 1], ue)));
        for (var ke = 1, M = !0; ke < R.length; ke += 1) {
          var we = R[ke], Te = w(we, 0, 1), ae = w(we, -1);
          if ((Te === '"' || Te === "'" || Te === "`" || ae === '"' || ae === "'" || ae === "`") && Te !== ae)
            throw new i("property names with quotes must have matching quotes");
          if ((we === "constructor" || !M) && (O = !0), N += "." + we, Y = "%" + N + "%", C(D, Y))
            ee = D[Y];
          else if (ee != null) {
            if (!(we in ee)) {
              if (!X)
                throw new u("base intrinsic for " + U + " exists, but the property is not available.");
              return;
            }
            if (o && ke + 1 >= R.length) {
              var st = o(ee, we);
              M = !!st, M && "get" in st && !("originalValue" in st.get) ? ee = st.get : ee = ee[we];
            } else
              M = C(ee, we), ee = ee[we];
            M && !O && (D[Y] = ee);
          }
        }
        return ee;
      }, "GetIntrinsic");
    }
  }), require_call_bind = __commonJS({
    "node_modules/call-bind/index.js"(e, t) {
      "use strict";
      var r = require_function_bind(), i = require_get_intrinsic(), n = i("%Function.prototype.apply%"), u = i("%Function.prototype.call%"),
      a = i("%Reflect.apply%", !0) || r.call(u, n), o = i("%Object.getOwnPropertyDescriptor%", !0), l = i("%Object.defineProperty%", !0), c = i(
      "%Math.max%");
      if (l)
        try {
          l({}, "a", { value: 1 });
        } catch {
          l = null;
        }
      t.exports = /* @__PURE__ */ s(function(d) {
        var m = a(r, u, arguments);
        if (o && l) {
          var D = o(m, "length");
          D.configurable && l(
            m,
            "length",
            { value: 1 + c(0, d.length - (arguments.length - 1)) }
          );
        }
        return m;
      }, "callBind");
      var h = /* @__PURE__ */ s(function() {
        return a(r, n, arguments);
      }, "applyBind2");
      l ? l(t.exports, "apply", { value: h }) : t.exports.apply = h;
    }
  }), require_callBound = __commonJS({
    "node_modules/call-bind/callBound.js"(e, t) {
      "use strict";
      var r = require_get_intrinsic(), i = require_call_bind(), n = i(r("String.prototype.indexOf"));
      t.exports = /* @__PURE__ */ s(function(a, o) {
        var l = r(a, !!o);
        return typeof l == "function" && n(a, ".prototype.") > -1 ? i(l) : l;
      }, "callBoundIntrinsic");
    }
  }), require_shams2 = __commonJS({
    "node_modules/has-tostringtag/shams.js"(e, t) {
      "use strict";
      var r = require_shams();
      t.exports = /* @__PURE__ */ s(function() {
        return r() && !!Symbol.toStringTag;
      }, "hasToStringTagShams");
    }
  }), require_is_regex = __commonJS({
    "node_modules/is-regex/index.js"(e, t) {
      "use strict";
      var r = require_callBound(), i = require_shams2()(), n, u, a, o;
      i && (n = r("Object.prototype.hasOwnProperty"), u = r("RegExp.prototype.exec"), a = {}, l = /* @__PURE__ */ s(function() {
        throw a;
      }, "throwRegexMarker"), o = {
        toString: l,
        valueOf: l
      }, typeof Symbol.toPrimitive == "symbol" && (o[Symbol.toPrimitive] = l));
      var l, c = r("Object.prototype.toString"), h = Object.getOwnPropertyDescriptor, p = "[object RegExp]";
      t.exports = /* @__PURE__ */ s(i ? function(m) {
        if (!m || typeof m != "object")
          return !1;
        var D = h(m, "lastIndex"), g = D && n(D, "value");
        if (!g)
          return !1;
        try {
          u(m, o);
        } catch (v) {
          return v === a;
        }
      } : function(m) {
        return !m || typeof m != "object" && typeof m != "function" ? !1 : c(m) === p;
      }, "isRegex");
    }
  }), require_is_function = __commonJS({
    "node_modules/is-function/index.js"(e, t) {
      t.exports = i;
      var r = Object.prototype.toString;
      function i(n) {
        if (!n)
          return !1;
        var u = r.call(n);
        return u === "[object Function]" || typeof n == "function" && u !== "[object RegExp]" || typeof window < "u" && (n === window.setTimeout ||
        n === window.alert || n === window.confirm || n === window.prompt);
      }
      s(i, "isFunction3");
    }
  }), require_is_symbol = __commonJS({
    "node_modules/is-symbol/index.js"(e, t) {
      "use strict";
      var r = Object.prototype.toString, i = require_has_symbols()();
      i ? (n = Symbol.prototype.toString, u = /^Symbol\(.*\)$/, a = /* @__PURE__ */ s(function(l) {
        return typeof l.valueOf() != "symbol" ? !1 : u.test(n.call(l));
      }, "isRealSymbolObject"), t.exports = /* @__PURE__ */ s(function(l) {
        if (typeof l == "symbol")
          return !0;
        if (r.call(l) !== "[object Symbol]")
          return !1;
        try {
          return a(l);
        } catch {
          return !1;
        }
      }, "isSymbol3")) : t.exports = /* @__PURE__ */ s(function(l) {
        return !1;
      }, "isSymbol3");
      var n, u, a;
    }
  }), src_exports = {};
  __export(src_exports, {
    isJSON: /* @__PURE__ */ s(() => isJSON, "isJSON"),
    parse: /* @__PURE__ */ s(() => parse, "parse"),
    replacer: /* @__PURE__ */ s(() => replacer, "replacer"),
    reviver: /* @__PURE__ */ s(() => reviver2, "reviver"),
    stringify: /* @__PURE__ */ s(() => stringify, "stringify")
  });
  module.exports = __toCommonJS(src_exports);
  var import_is_regex = __toESM(require_is_regex()), import_is_function = __toESM(require_is_function()), import_is_symbol = __toESM(require_is_symbol());
  function isObject(e) {
    return e != null && typeof e == "object" && Array.isArray(e) === !1;
  }
  s(isObject, "isObject");
  var freeGlobal = typeof global == "object" && global && global.Object === Object && global, freeGlobal_default = freeGlobal, freeSelf = typeof self ==
  "object" && self && self.Object === Object && self, root2 = freeGlobal_default || freeSelf || Function("return this")(), root_default = root2,
  Symbol2 = root_default.Symbol, Symbol_default = Symbol2, objectProto = Object.prototype, hasOwnProperty = objectProto.hasOwnProperty, nativeObjectToString = objectProto.
  toString, symToStringTag = Symbol_default ? Symbol_default.toStringTag : void 0;
  function getRawTag(e) {
    var t = hasOwnProperty.call(e, symToStringTag), r = e[symToStringTag];
    try {
      e[symToStringTag] = void 0;
      var i = !0;
    } catch {
    }
    var n = nativeObjectToString.call(e);
    return i && (t ? e[symToStringTag] = r : delete e[symToStringTag]), n;
  }
  s(getRawTag, "getRawTag");
  var getRawTag_default = getRawTag, objectProto2 = Object.prototype, nativeObjectToString2 = objectProto2.toString;
  function objectToString(e) {
    return nativeObjectToString2.call(e);
  }
  s(objectToString, "objectToString");
  var objectToString_default = objectToString, nullTag = "[object Null]", undefinedTag = "[object Undefined]", symToStringTag2 = Symbol_default ?
  Symbol_default.toStringTag : void 0;
  function baseGetTag(e) {
    return e == null ? e === void 0 ? undefinedTag : nullTag : symToStringTag2 && symToStringTag2 in Object(e) ? getRawTag_default(e) : objectToString_default(
    e);
  }
  s(baseGetTag, "baseGetTag");
  var baseGetTag_default = baseGetTag;
  function isObjectLike(e) {
    return e != null && typeof e == "object";
  }
  s(isObjectLike, "isObjectLike");
  var isObjectLike_default = isObjectLike, symbolTag = "[object Symbol]";
  function isSymbol(e) {
    return typeof e == "symbol" || isObjectLike_default(e) && baseGetTag_default(e) == symbolTag;
  }
  s(isSymbol, "isSymbol");
  var isSymbol_default = isSymbol;
  function arrayMap(e, t) {
    for (var r = -1, i = e == null ? 0 : e.length, n = Array(i); ++r < i; )
      n[r] = t(e[r], r, e);
    return n;
  }
  s(arrayMap, "arrayMap");
  var arrayMap_default = arrayMap, isArray = Array.isArray, isArray_default = isArray, INFINITY = 1 / 0, symbolProto = Symbol_default ? Symbol_default.
  prototype : void 0, symbolToString = symbolProto ? symbolProto.toString : void 0;
  function baseToString(e) {
    if (typeof e == "string")
      return e;
    if (isArray_default(e))
      return arrayMap_default(e, baseToString) + "";
    if (isSymbol_default(e))
      return symbolToString ? symbolToString.call(e) : "";
    var t = e + "";
    return t == "0" && 1 / e == -INFINITY ? "-0" : t;
  }
  s(baseToString, "baseToString");
  var baseToString_default = baseToString;
  function isObject2(e) {
    var t = typeof e;
    return e != null && (t == "object" || t == "function");
  }
  s(isObject2, "isObject2");
  var isObject_default = isObject2, asyncTag = "[object AsyncFunction]", funcTag = "[object Function]", genTag = "[object GeneratorFunction]",
  proxyTag = "[object Proxy]";
  function isFunction(e) {
    if (!isObject_default(e))
      return !1;
    var t = baseGetTag_default(e);
    return t == funcTag || t == genTag || t == asyncTag || t == proxyTag;
  }
  s(isFunction, "isFunction");
  var isFunction_default = isFunction, coreJsData = root_default["__core-js_shared__"], coreJsData_default = coreJsData, maskSrcKey = function() {
    var e = /[^.]+$/.exec(coreJsData_default && coreJsData_default.keys && coreJsData_default.keys.IE_PROTO || "");
    return e ? "Symbol(src)_1." + e : "";
  }();
  function isMasked(e) {
    return !!maskSrcKey && maskSrcKey in e;
  }
  s(isMasked, "isMasked");
  var isMasked_default = isMasked, funcProto = Function.prototype, funcToString = funcProto.toString;
  function toSource(e) {
    if (e != null) {
      try {
        return funcToString.call(e);
      } catch {
      }
      try {
        return e + "";
      } catch {
      }
    }
    return "";
  }
  s(toSource, "toSource");
  var toSource_default = toSource, reRegExpChar = /[\\^$.*+?()[\]{}|]/g, reIsHostCtor = /^\[object .+?Constructor\]$/, funcProto2 = Function.
  prototype, objectProto3 = Object.prototype, funcToString2 = funcProto2.toString, hasOwnProperty2 = objectProto3.hasOwnProperty, reIsNative = RegExp(
    "^" + funcToString2.call(hasOwnProperty2).replace(reRegExpChar, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,
    "$1.*?") + "$"
  );
  function baseIsNative(e) {
    if (!isObject_default(e) || isMasked_default(e))
      return !1;
    var t = isFunction_default(e) ? reIsNative : reIsHostCtor;
    return t.test(toSource_default(e));
  }
  s(baseIsNative, "baseIsNative");
  var baseIsNative_default = baseIsNative;
  function getValue(e, t) {
    return e?.[t];
  }
  s(getValue, "getValue");
  var getValue_default = getValue;
  function getNative(e, t) {
    var r = getValue_default(e, t);
    return baseIsNative_default(r) ? r : void 0;
  }
  s(getNative, "getNative");
  var getNative_default = getNative;
  function eq(e, t) {
    return e === t || e !== e && t !== t;
  }
  s(eq, "eq");
  var eq_default = eq, reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, reIsPlainProp = /^\w*$/;
  function isKey(e, t) {
    if (isArray_default(e))
      return !1;
    var r = typeof e;
    return r == "number" || r == "symbol" || r == "boolean" || e == null || isSymbol_default(e) ? !0 : reIsPlainProp.test(e) || !reIsDeepProp.
    test(e) || t != null && e in Object(t);
  }
  s(isKey, "isKey");
  var isKey_default = isKey, nativeCreate = getNative_default(Object, "create"), nativeCreate_default = nativeCreate;
  function hashClear() {
    this.__data__ = nativeCreate_default ? nativeCreate_default(null) : {}, this.size = 0;
  }
  s(hashClear, "hashClear");
  var hashClear_default = hashClear;
  function hashDelete(e) {
    var t = this.has(e) && delete this.__data__[e];
    return this.size -= t ? 1 : 0, t;
  }
  s(hashDelete, "hashDelete");
  var hashDelete_default = hashDelete, HASH_UNDEFINED = "__lodash_hash_undefined__", objectProto4 = Object.prototype, hasOwnProperty3 = objectProto4.
  hasOwnProperty;
  function hashGet(e) {
    var t = this.__data__;
    if (nativeCreate_default) {
      var r = t[e];
      return r === HASH_UNDEFINED ? void 0 : r;
    }
    return hasOwnProperty3.call(t, e) ? t[e] : void 0;
  }
  s(hashGet, "hashGet");
  var hashGet_default = hashGet, objectProto5 = Object.prototype, hasOwnProperty4 = objectProto5.hasOwnProperty;
  function hashHas(e) {
    var t = this.__data__;
    return nativeCreate_default ? t[e] !== void 0 : hasOwnProperty4.call(t, e);
  }
  s(hashHas, "hashHas");
  var hashHas_default = hashHas, HASH_UNDEFINED2 = "__lodash_hash_undefined__";
  function hashSet(e, t) {
    var r = this.__data__;
    return this.size += this.has(e) ? 0 : 1, r[e] = nativeCreate_default && t === void 0 ? HASH_UNDEFINED2 : t, this;
  }
  s(hashSet, "hashSet");
  var hashSet_default = hashSet;
  function Hash(e) {
    var t = -1, r = e == null ? 0 : e.length;
    for (this.clear(); ++t < r; ) {
      var i = e[t];
      this.set(i[0], i[1]);
    }
  }
  s(Hash, "Hash");
  Hash.prototype.clear = hashClear_default;
  Hash.prototype.delete = hashDelete_default;
  Hash.prototype.get = hashGet_default;
  Hash.prototype.has = hashHas_default;
  Hash.prototype.set = hashSet_default;
  var Hash_default = Hash;
  function listCacheClear() {
    this.__data__ = [], this.size = 0;
  }
  s(listCacheClear, "listCacheClear");
  var listCacheClear_default = listCacheClear;
  function assocIndexOf(e, t) {
    for (var r = e.length; r--; )
      if (eq_default(e[r][0], t))
        return r;
    return -1;
  }
  s(assocIndexOf, "assocIndexOf");
  var assocIndexOf_default = assocIndexOf, arrayProto = Array.prototype, splice = arrayProto.splice;
  function listCacheDelete(e) {
    var t = this.__data__, r = assocIndexOf_default(t, e);
    if (r < 0)
      return !1;
    var i = t.length - 1;
    return r == i ? t.pop() : splice.call(t, r, 1), --this.size, !0;
  }
  s(listCacheDelete, "listCacheDelete");
  var listCacheDelete_default = listCacheDelete;
  function listCacheGet(e) {
    var t = this.__data__, r = assocIndexOf_default(t, e);
    return r < 0 ? void 0 : t[r][1];
  }
  s(listCacheGet, "listCacheGet");
  var listCacheGet_default = listCacheGet;
  function listCacheHas(e) {
    return assocIndexOf_default(this.__data__, e) > -1;
  }
  s(listCacheHas, "listCacheHas");
  var listCacheHas_default = listCacheHas;
  function listCacheSet(e, t) {
    var r = this.__data__, i = assocIndexOf_default(r, e);
    return i < 0 ? (++this.size, r.push([e, t])) : r[i][1] = t, this;
  }
  s(listCacheSet, "listCacheSet");
  var listCacheSet_default = listCacheSet;
  function ListCache(e) {
    var t = -1, r = e == null ? 0 : e.length;
    for (this.clear(); ++t < r; ) {
      var i = e[t];
      this.set(i[0], i[1]);
    }
  }
  s(ListCache, "ListCache");
  ListCache.prototype.clear = listCacheClear_default;
  ListCache.prototype.delete = listCacheDelete_default;
  ListCache.prototype.get = listCacheGet_default;
  ListCache.prototype.has = listCacheHas_default;
  ListCache.prototype.set = listCacheSet_default;
  var ListCache_default = ListCache, Map2 = getNative_default(root_default, "Map"), Map_default = Map2;
  function mapCacheClear() {
    this.size = 0, this.__data__ = {
      hash: new Hash_default(),
      map: new (Map_default || ListCache_default)(),
      string: new Hash_default()
    };
  }
  s(mapCacheClear, "mapCacheClear");
  var mapCacheClear_default = mapCacheClear;
  function isKeyable(e) {
    var t = typeof e;
    return t == "string" || t == "number" || t == "symbol" || t == "boolean" ? e !== "__proto__" : e === null;
  }
  s(isKeyable, "isKeyable");
  var isKeyable_default = isKeyable;
  function getMapData(e, t) {
    var r = e.__data__;
    return isKeyable_default(t) ? r[typeof t == "string" ? "string" : "hash"] : r.map;
  }
  s(getMapData, "getMapData");
  var getMapData_default = getMapData;
  function mapCacheDelete(e) {
    var t = getMapData_default(this, e).delete(e);
    return this.size -= t ? 1 : 0, t;
  }
  s(mapCacheDelete, "mapCacheDelete");
  var mapCacheDelete_default = mapCacheDelete;
  function mapCacheGet(e) {
    return getMapData_default(this, e).get(e);
  }
  s(mapCacheGet, "mapCacheGet");
  var mapCacheGet_default = mapCacheGet;
  function mapCacheHas(e) {
    return getMapData_default(this, e).has(e);
  }
  s(mapCacheHas, "mapCacheHas");
  var mapCacheHas_default = mapCacheHas;
  function mapCacheSet(e, t) {
    var r = getMapData_default(this, e), i = r.size;
    return r.set(e, t), this.size += r.size == i ? 0 : 1, this;
  }
  s(mapCacheSet, "mapCacheSet");
  var mapCacheSet_default = mapCacheSet;
  function MapCache(e) {
    var t = -1, r = e == null ? 0 : e.length;
    for (this.clear(); ++t < r; ) {
      var i = e[t];
      this.set(i[0], i[1]);
    }
  }
  s(MapCache, "MapCache");
  MapCache.prototype.clear = mapCacheClear_default;
  MapCache.prototype.delete = mapCacheDelete_default;
  MapCache.prototype.get = mapCacheGet_default;
  MapCache.prototype.has = mapCacheHas_default;
  MapCache.prototype.set = mapCacheSet_default;
  var MapCache_default = MapCache, FUNC_ERROR_TEXT = "Expected a function";
  function memoize(e, t) {
    if (typeof e != "function" || t != null && typeof t != "function")
      throw new TypeError(FUNC_ERROR_TEXT);
    var r = /* @__PURE__ */ s(function() {
      var i = arguments, n = t ? t.apply(this, i) : i[0], u = r.cache;
      if (u.has(n))
        return u.get(n);
      var a = e.apply(this, i);
      return r.cache = u.set(n, a) || u, a;
    }, "memoized");
    return r.cache = new (memoize.Cache || MapCache_default)(), r;
  }
  s(memoize, "memoize");
  memoize.Cache = MapCache_default;
  var memoize_default = memoize, MAX_MEMOIZE_SIZE = 500;
  function memoizeCapped(e) {
    var t = memoize_default(e, function(i) {
      return r.size === MAX_MEMOIZE_SIZE && r.clear(), i;
    }), r = t.cache;
    return t;
  }
  s(memoizeCapped, "memoizeCapped");
  var memoizeCapped_default = memoizeCapped, rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,
  reEscapeChar = /\\(\\)?/g, stringToPath = memoizeCapped_default(function(e) {
    var t = [];
    return e.charCodeAt(0) === 46 && t.push(""), e.replace(rePropName, function(r, i, n, u) {
      t.push(n ? u.replace(reEscapeChar, "$1") : i || r);
    }), t;
  }), stringToPath_default = stringToPath;
  function toString(e) {
    return e == null ? "" : baseToString_default(e);
  }
  s(toString, "toString");
  var toString_default = toString;
  function castPath(e, t) {
    return isArray_default(e) ? e : isKey_default(e, t) ? [e] : stringToPath_default(toString_default(e));
  }
  s(castPath, "castPath");
  var castPath_default = castPath, INFINITY2 = 1 / 0;
  function toKey(e) {
    if (typeof e == "string" || isSymbol_default(e))
      return e;
    var t = e + "";
    return t == "0" && 1 / e == -INFINITY2 ? "-0" : t;
  }
  s(toKey, "toKey");
  var toKey_default = toKey;
  function baseGet(e, t) {
    t = castPath_default(t, e);
    for (var r = 0, i = t.length; e != null && r < i; )
      e = e[toKey_default(t[r++])];
    return r && r == i ? e : void 0;
  }
  s(baseGet, "baseGet");
  var baseGet_default = baseGet;
  function get(e, t, r) {
    var i = e == null ? void 0 : baseGet_default(e, t);
    return i === void 0 ? r : i;
  }
  s(get, "get");
  var get_default = get, import_memoizerific = __toESM(PF()), eventProperties = [
    "bubbles",
    "cancelBubble",
    "cancelable",
    "composed",
    "currentTarget",
    "defaultPrevented",
    "eventPhase",
    "isTrusted",
    "returnValue",
    "srcElement",
    "target",
    "timeStamp",
    "type"
  ], customEventSpecificProperties = ["detail"];
  function extractEventHiddenProperties(e) {
    let t = eventProperties.filter((r) => e[r] !== void 0).reduce((r, i) => ({ ...r, [i]: e[i] }), {});
    return e instanceof CustomEvent && customEventSpecificProperties.filter((r) => e[r] !== void 0).forEach((r) => {
      t[r] = e[r];
    }), t;
  }
  s(extractEventHiddenProperties, "extractEventHiddenProperties");
  var isObject3 = isObject, removeCodeComments = /* @__PURE__ */ s((e) => {
    let t = null, r = !1, i = !1, n = !1, u = "";
    if (e.indexOf("//") >= 0 || e.indexOf("/*") >= 0)
      for (let a = 0; a < e.length; a += 1)
        !t && !r && !i && !n ? e[a] === '"' || e[a] === "'" || e[a] === "`" ? t = e[a] : e[a] === "/" && e[a + 1] === "*" ? r = !0 : e[a] ===
        "/" && e[a + 1] === "/" ? i = !0 : e[a] === "/" && e[a + 1] !== "/" && (n = !0) : (t && (e[a] === t && e[a - 1] !== "\\" || e[a] ===
        `
` && t !== "`") && (t = null), n && (e[a] === "/" && e[a - 1] !== "\\" || e[a] === `
`) && (n = !1), r && e[a - 1] === "/" && e[a - 2] === "*" && (r = !1), i && e[a] === `
` && (i = !1)), !r && !i && (u += e[a]);
    else
      u = e;
    return u;
  }, "removeCodeComments"), cleanCode = (0, import_memoizerific.default)(1e4)(
    (e) => removeCodeComments(e).replace(/\n\s*/g, "").trim()
  ), convertShorthandMethods = /* @__PURE__ */ s(function(t, r) {
    let i = r.slice(0, r.indexOf("{")), n = r.slice(r.indexOf("{"));
    if (i.includes("=>") || i.includes("function"))
      return r;
    let u = i;
    return u = u.replace(t, "function"), u + n;
  }, "convertShorthandMethods2"), dateFormat = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{3})?Z$/, isJSON = /* @__PURE__ */ s((e) => e.match(
  /^[\[\{\"\}].*[\]\}\"]$/), "isJSON");
  function convertUnconventionalData(e) {
    if (!isObject3(e))
      return e;
    let t = e, r = !1;
    return typeof Event < "u" && e instanceof Event && (t = extractEventHiddenProperties(t), r = !0), t = Object.keys(t).reduce((i, n) => {
      try {
        t[n] && t[n].toJSON, i[n] = t[n];
      } catch {
        r = !0;
      }
      return i;
    }, {}), r ? t : e;
  }
  s(convertUnconventionalData, "convertUnconventionalData");
  var replacer = /* @__PURE__ */ s(function(t) {
    let r, i, n, u;
    return /* @__PURE__ */ s(function(o, l) {
      try {
        if (o === "")
          return u = [], r = /* @__PURE__ */ new Map([[l, "[]"]]), i = /* @__PURE__ */ new Map(), n = [], l;
        let c = i.get(this) || this;
        for (; n.length && c !== n[0]; )
          n.shift(), u.pop();
        if (typeof l == "boolean")
          return l;
        if (l === void 0)
          return t.allowUndefined ? "_undefined_" : void 0;
        if (l === null)
          return null;
        if (typeof l == "number")
          return l === -1 / 0 ? "_-Infinity_" : l === 1 / 0 ? "_Infinity_" : Number.isNaN(l) ? "_NaN_" : l;
        if (typeof l == "bigint")
          return `_bigint_${l.toString()}`;
        if (typeof l == "string")
          return dateFormat.test(l) ? t.allowDate ? `_date_${l}` : void 0 : l;
        if ((0, import_is_regex.default)(l))
          return t.allowRegExp ? `_regexp_${l.flags}|${l.source}` : void 0;
        if ((0, import_is_function.default)(l)) {
          if (!t.allowFunction)
            return;
          let { name: p } = l, d = l.toString();
          return d.match(
            /(\[native code\]|WEBPACK_IMPORTED_MODULE|__webpack_exports__|__webpack_require__)/
          ) ? `_function_${p}|${(() => {
          }).toString()}` : `_function_${p}|${cleanCode(convertShorthandMethods(o, d))}`;
        }
        if ((0, import_is_symbol.default)(l)) {
          if (!t.allowSymbol)
            return;
          let p = Symbol.keyFor(l);
          return p !== void 0 ? `_gsymbol_${p}` : `_symbol_${l.toString().slice(7, -1)}`;
        }
        if (n.length >= t.maxDepth)
          return Array.isArray(l) ? `[Array(${l.length})]` : "[Object]";
        if (l === this)
          return `_duplicate_${JSON.stringify(u)}`;
        if (l instanceof Error && t.allowError)
          return {
            __isConvertedError__: !0,
            errorProperties: {
              ...l.cause ? { cause: l.cause } : {},
              ...l,
              name: l.name,
              message: l.message,
              stack: l.stack,
              "_constructor-name_": l.constructor.name
            }
          };
        if (l.constructor && l.constructor.name && l.constructor.name !== "Object" && !Array.isArray(l) && !t.allowClass)
          return;
        let h = r.get(l);
        if (!h) {
          let p = Array.isArray(l) ? l : convertUnconventionalData(l);
          if (l.constructor && l.constructor.name && l.constructor.name !== "Object" && !Array.isArray(l) && t.allowClass)
            try {
              Object.assign(p, { "_constructor-name_": l.constructor.name });
            } catch {
            }
          return u.push(o), n.unshift(p), r.set(l, JSON.stringify(u)), l !== p && i.set(l, p), p;
        }
        return `_duplicate_${h}`;
      } catch {
        return;
      }
    }, "replace");
  }, "replacer2"), reviver2 = /* @__PURE__ */ s(function reviver(options) {
    let refs = [], root;
    return /* @__PURE__ */ s(function revive(key, value) {
      if (key === "" && (root = value, refs.forEach(({ target: e, container: t, replacement: r }) => {
        let i = isJSON(r) ? JSON.parse(r) : r.split(".");
        i.length === 0 ? t[e] = root : t[e] = get_default(root, i);
      })), key === "_constructor-name_")
        return value;
      if (isObject3(value) && value.__isConvertedError__) {
        let { message: e, ...t } = value.errorProperties, r = new Error(e);
        return Object.assign(r, t), r;
      }
      if (isObject3(value) && value["_constructor-name_"] && options.allowFunction) {
        let e = value["_constructor-name_"];
        if (e !== "Object") {
          let t = new Function(`return function ${e.replace(/[^a-zA-Z0-9$_]+/g, "")}(){}`)();
          Object.setPrototypeOf(value, new t());
        }
        return delete value["_constructor-name_"], value;
      }
      if (typeof value == "string" && value.startsWith("_function_") && options.allowFunction) {
        let [, name, source] = value.match(/_function_([^|]*)\|(.*)/) || [], sourceSanitized = source.replace(/[(\(\))|\\| |\]|`]*$/, "");
        if (!options.lazyEval)
          return eval(`(${sourceSanitized})`);
        let result = /* @__PURE__ */ s((...args) => {
          let f = eval(`(${sourceSanitized})`);
          return f(...args);
        }, "result");
        return Object.defineProperty(result, "toString", {
          value: /* @__PURE__ */ s(() => sourceSanitized, "value")
        }), Object.defineProperty(result, "name", {
          value: name
        }), result;
      }
      if (typeof value == "string" && value.startsWith("_regexp_") && options.allowRegExp) {
        let [, e, t] = value.match(/_regexp_([^|]*)\|(.*)/) || [];
        return new RegExp(t, e);
      }
      return typeof value == "string" && value.startsWith("_date_") && options.allowDate ? new Date(value.replace("_date_", "")) : typeof value ==
      "string" && value.startsWith("_duplicate_") ? (refs.push({ target: key, container: this, replacement: value.replace(/^_duplicate_/, "") }),
      null) : typeof value == "string" && value.startsWith("_symbol_") && options.allowSymbol ? Symbol(value.replace("_symbol_", "")) : typeof value ==
      "string" && value.startsWith("_gsymbol_") && options.allowSymbol ? Symbol.for(value.replace("_gsymbol_", "")) : typeof value == "strin\
g" && value === "_-Infinity_" ? -1 / 0 : typeof value == "string" && value === "_Infinity_" ? 1 / 0 : typeof value == "string" && value === "\
_NaN_" ? NaN : typeof value == "string" && value.startsWith("_bigint_") && typeof BigInt == "function" ? BigInt(value.replace("_bigint_", "")) :
      value;
    }, "revive");
  }, "reviver"), defaultOptions = {
    maxDepth: 10,
    space: void 0,
    allowFunction: !0,
    allowRegExp: !0,
    allowDate: !0,
    allowClass: !0,
    allowError: !0,
    allowUndefined: !0,
    allowSymbol: !0,
    lazyEval: !0
  }, stringify = /* @__PURE__ */ s((e, t = {}) => {
    let r = { ...defaultOptions, ...t };
    return JSON.stringify(convertUnconventionalData(e), replacer(r), t.space);
  }, "stringify"), mutator = /* @__PURE__ */ s(() => {
    let e = /* @__PURE__ */ new Map();
    return /* @__PURE__ */ s(function t(r) {
      isObject3(r) && Object.entries(r).forEach(([i, n]) => {
        n === "_undefined_" ? r[i] = void 0 : e.get(n) || (e.set(n, !0), t(n));
      }), Array.isArray(r) && r.forEach((i, n) => {
        i === "_undefined_" ? (e.set(i, !0), r[n] = void 0) : e.get(i) || (e.set(i, !0), t(i));
      });
    }, "mutateUndefined");
  }, "mutator"), parse = /* @__PURE__ */ s((e, t = {}) => {
    let r = { ...defaultOptions, ...t }, i = JSON.parse(e, reviver2(r));
    return mutator()(i), i;
  }, "parse");
});

// ../node_modules/@aw-web-design/x-default-browser/src/common-name.js
var du = I((RZ, $F) => {
  $F.exports = function(e) {
    return e.isEdge ? "edge" : e.isIE ? "ie" : e.isFirefox ? "firefox" : e.isChrome ? "chrome" : e.isChromium ? "chromium" : e.isOpera ? "op\
era" : e.isSafari ? "safari" : "unknown";
  };
});

// ../node_modules/@aw-web-design/x-default-browser/src/detect-windows10.js
var UF = I((NZ, VF) => {
  var T$ = require("child_process").exec;
  VF.exports = function(e) {
    var t = "HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Windows\\Shell\\Associations\\URLAssociations\\http\\UserChoice", r = "reg query " + t +
    ' | findstr "ProgId"';
    T$(r, function(i, n, u) {
      var a;
      if (i) {
        if (u.length > 0)
          return e("Unable to execute the query: " + i);
        a = "iexplore.exe";
      }
      if (!a) {
        n = n.trim().replace(/\s\s+/g, " ");
        var o = n.split(" ");
        a = o[2].toLowerCase();
      }
      var l = {
        isEdge: a.indexOf("app") > -1,
        // AppXq0fevzme2pys62n3e0fbqa7peapykr8v
        isIE: a.indexOf("ie.http") > -1,
        // IE.HTTP
        isSafari: a.indexOf("safari") > -1,
        // SafariURL
        isFirefox: a.indexOf("firefox") > -1,
        // FirefoxURL
        isChrome: a.indexOf("chrome") > -1,
        // ChromeHTML
        isChromium: a.indexOf("chromium") > -1,
        isOpera: a.indexOf("opera") > -1,
        // OperaHTML
        identity: a
      };
      l.isBlink = l.isChrome || l.isChromium || l.isOpera, l.isWebkit = l.isSafari || l.isBlink, l.commonName = du()(l), e(null, l);
    });
  };
});

// ../node_modules/@aw-web-design/x-default-browser/src/detect-windows.js
var HF = I((LZ, zF) => {
  var P$ = require("child_process").exec;
  zF.exports = function(e) {
    var t = "HKCU\\Software\\Clients\\StartMenuInternet", r = "reg query " + t + ' | findstr "REG_SZ"';
    P$(r, function(i, n, u) {
      var a;
      if (i) {
        if (u.length > 0)
          return e("Unable to execute the query: " + i);
        a = "iexplore.exe";
      }
      if (!a) {
        n = n.replace("NO NAME", "NONAME");
        var o = n.trim().split(/(\t| +)/);
        a = (o[4] + (o[5] || "") + (o[6] || "")).toLowerCase();
      }
      var l = {
        isIE: a.indexOf("iexplore") > -1,
        // IEXPLORE.EXE             / -
        isSafari: a.indexOf("safari") > -1,
        // Safari.exe
        // works also for nightly
        isFirefox: a.indexOf("firefox") > -1,
        // FIREFOX.EXE              / "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -osint -url "%1"
        // note that both chrome and chromium are chrome.exe! we can't look for 'chrome' hence
        isChrome: a.indexOf("google") > -1,
        // Google Chrome            / "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -- "%1"
        isChromium: a.indexOf("chromium") > -1,
        // Chromium.<randomstring>  / "C:\Users\<username>\AppData\Local\Chromium\Application\chrome.exe" -- "%1"
        isOpera: a.indexOf("opera") > -1,
        // OperaStable              / "C:\Program Files (x86)\Opera\launcher.exe" -noautoupdate -- "%1"
        identity: a
      };
      l.isBlink = l.isChrome || l.isChromium || l.isOpera, l.isWebkit = l.isSafari || l.isBlink, l.commonName = du()(l), e(null, l);
    });
  };
});

// ../node_modules/big-integer/BigInteger.js
var WF = I((MZ, Vo) => {
  var rt = function(e) {
    "use strict";
    var t = 1e7, r = 7, i = 9007199254740992, n = d(i), u = "0123456789abcdefghijklmnopqrstuvwxyz", a = typeof BigInt == "function";
    function o(E, y, _, P) {
      return typeof E > "u" ? o[0] : typeof y < "u" ? +y == 10 && !_ ? ce(E) : Oe(E, y, _, P) : ce(E);
    }
    s(o, "Integer");
    function l(E, y) {
      this.value = E, this.sign = y, this.isSmall = !1;
    }
    s(l, "BigInteger"), l.prototype = Object.create(o.prototype);
    function c(E) {
      this.value = E, this.sign = E < 0, this.isSmall = !0;
    }
    s(c, "SmallInteger"), c.prototype = Object.create(o.prototype);
    function h(E) {
      this.value = E;
    }
    s(h, "NativeBigInt"), h.prototype = Object.create(o.prototype);
    function p(E) {
      return -i < E && E < i;
    }
    s(p, "isPrecise");
    function d(E) {
      return E < 1e7 ? [E] : E < 1e14 ? [E % 1e7, Math.floor(E / 1e7)] : [E % 1e7, Math.floor(E / 1e7) % 1e7, Math.floor(E / 1e14)];
    }
    s(d, "smallToArray");
    function m(E) {
      D(E);
      var y = E.length;
      if (y < 4 && Y(E, n) < 0)
        switch (y) {
          case 0:
            return 0;
          case 1:
            return E[0];
          case 2:
            return E[0] + E[1] * t;
          default:
            return E[0] + (E[1] + E[2] * t) * t;
        }
      return E;
    }
    s(m, "arrayToSmall");
    function D(E) {
      for (var y = E.length; E[--y] === 0; ) ;
      E.length = y + 1;
    }
    s(D, "trim");
    function g(E) {
      for (var y = new Array(E), _ = -1; ++_ < E; )
        y[_] = 0;
      return y;
    }
    s(g, "createArray");
    function v(E) {
      return E > 0 ? Math.floor(E) : Math.ceil(E);
    }
    s(v, "truncate");
    function x(E, y) {
      var _ = E.length, P = y.length, b = new Array(_), q = 0, H = t, W, J;
      for (J = 0; J < P; J++)
        W = E[J] + y[J] + q, q = W >= H ? 1 : 0, b[J] = W - q * H;
      for (; J < _; )
        W = E[J] + q, q = W === H ? 1 : 0, b[J++] = W - q * H;
      return q > 0 && b.push(q), b;
    }
    s(x, "add");
    function C(E, y) {
      return E.length >= y.length ? x(E, y) : x(y, E);
    }
    s(C, "addAny");
    function S(E, y) {
      var _ = E.length, P = new Array(_), b = t, q, H;
      for (H = 0; H < _; H++)
        q = E[H] - b + y, y = Math.floor(q / b), P[H] = q - y * b, y += 1;
      for (; y > 0; )
        P[H++] = y % b, y = Math.floor(y / b);
      return P;
    }
    s(S, "addSmall"), l.prototype.add = function(E) {
      var y = ce(E);
      if (this.sign !== y.sign)
        return this.subtract(y.negate());
      var _ = this.value, P = y.value;
      return y.isSmall ? new l(S(_, Math.abs(P)), this.sign) : new l(C(_, P), this.sign);
    }, l.prototype.plus = l.prototype.add, c.prototype.add = function(E) {
      var y = ce(E), _ = this.value;
      if (_ < 0 !== y.sign)
        return this.subtract(y.negate());
      var P = y.value;
      if (y.isSmall) {
        if (p(_ + P)) return new c(_ + P);
        P = d(Math.abs(P));
      }
      return new l(S(P, Math.abs(_)), _ < 0);
    }, c.prototype.plus = c.prototype.add, h.prototype.add = function(E) {
      return new h(this.value + ce(E).value);
    }, h.prototype.plus = h.prototype.add;
    function k(E, y) {
      var _ = E.length, P = y.length, b = new Array(_), q = 0, H = t, W, J;
      for (W = 0; W < P; W++)
        J = E[W] - q - y[W], J < 0 ? (J += H, q = 1) : q = 0, b[W] = J;
      for (W = P; W < _; W++) {
        if (J = E[W] - q, J < 0) J += H;
        else {
          b[W++] = J;
          break;
        }
        b[W] = J;
      }
      for (; W < _; W++)
        b[W] = E[W];
      return D(b), b;
    }
    s(k, "subtract");
    function j(E, y, _) {
      var P;
      return Y(E, y) >= 0 ? P = k(E, y) : (P = k(y, E), _ = !_), P = m(P), typeof P == "number" ? (_ && (P = -P), new c(P)) : new l(P, _);
    }
    s(j, "subtractAny");
    function w(E, y, _) {
      var P = E.length, b = new Array(P), q = -y, H = t, W, J;
      for (W = 0; W < P; W++)
        J = E[W] + q, q = Math.floor(J / H), J %= H, b[W] = J < 0 ? J + H : J;
      return b = m(b), typeof b == "number" ? (_ && (b = -b), new c(b)) : new l(b, _);
    }
    s(w, "subtractSmall"), l.prototype.subtract = function(E) {
      var y = ce(E);
      if (this.sign !== y.sign)
        return this.add(y.negate());
      var _ = this.value, P = y.value;
      return y.isSmall ? w(_, Math.abs(P), this.sign) : j(_, P, this.sign);
    }, l.prototype.minus = l.prototype.subtract, c.prototype.subtract = function(E) {
      var y = ce(E), _ = this.value;
      if (_ < 0 !== y.sign)
        return this.add(y.negate());
      var P = y.value;
      return y.isSmall ? new c(_ - P) : w(P, Math.abs(_), _ >= 0);
    }, c.prototype.minus = c.prototype.subtract, h.prototype.subtract = function(E) {
      return new h(this.value - ce(E).value);
    }, h.prototype.minus = h.prototype.subtract, l.prototype.negate = function() {
      return new l(this.value, !this.sign);
    }, c.prototype.negate = function() {
      var E = this.sign, y = new c(-this.value);
      return y.sign = !E, y;
    }, h.prototype.negate = function() {
      return new h(-this.value);
    }, l.prototype.abs = function() {
      return new l(this.value, !1);
    }, c.prototype.abs = function() {
      return new c(Math.abs(this.value));
    }, h.prototype.abs = function() {
      return new h(this.value >= 0 ? this.value : -this.value);
    };
    function A(E, y) {
      var _ = E.length, P = y.length, b = _ + P, q = g(b), H = t, W, J, oe, De, se;
      for (oe = 0; oe < _; ++oe) {
        De = E[oe];
        for (var xe = 0; xe < P; ++xe)
          se = y[xe], W = De * se + q[oe + xe], J = Math.floor(W / H), q[oe + xe] = W - J * H, q[oe + xe + 1] += J;
      }
      return D(q), q;
    }
    s(A, "multiplyLong");
    function T(E, y) {
      var _ = E.length, P = new Array(_), b = t, q = 0, H, W;
      for (W = 0; W < _; W++)
        H = E[W] * y + q, q = Math.floor(H / b), P[W] = H - q * b;
      for (; q > 0; )
        P[W++] = q % b, q = Math.floor(q / b);
      return P;
    }
    s(T, "multiplySmall");
    function B(E, y) {
      for (var _ = []; y-- > 0; ) _.push(0);
      return _.concat(E);
    }
    s(B, "shiftLeft");
    function $(E, y) {
      var _ = Math.max(E.length, y.length);
      if (_ <= 30) return A(E, y);
      _ = Math.ceil(_ / 2);
      var P = E.slice(_), b = E.slice(0, _), q = y.slice(_), H = y.slice(0, _), W = $(b, H), J = $(P, q), oe = $(C(b, P), C(H, q)), De = C(C(
      W, B(k(k(oe, W), J), _)), B(J, 2 * _));
      return D(De), De;
    }
    s($, "multiplyKaratsuba");
    function L(E, y) {
      return -0.012 * E - 0.012 * y + 15e-6 * E * y > 0;
    }
    s(L, "useKaratsuba"), l.prototype.multiply = function(E) {
      var y = ce(E), _ = this.value, P = y.value, b = this.sign !== y.sign, q;
      if (y.isSmall) {
        if (P === 0) return o[0];
        if (P === 1) return this;
        if (P === -1) return this.negate();
        if (q = Math.abs(P), q < t)
          return new l(T(_, q), b);
        P = d(q);
      }
      return L(_.length, P.length) ? new l($(_, P), b) : new l(A(_, P), b);
    }, l.prototype.times = l.prototype.multiply;
    function V(E, y, _) {
      return E < t ? new l(T(y, E), _) : new l(A(y, d(E)), _);
    }
    s(V, "multiplySmallAndArray"), c.prototype._multiplyBySmall = function(E) {
      return p(E.value * this.value) ? new c(E.value * this.value) : V(Math.abs(E.value), d(Math.abs(this.value)), this.sign !== E.sign);
    }, l.prototype._multiplyBySmall = function(E) {
      return E.value === 0 ? o[0] : E.value === 1 ? this : E.value === -1 ? this.negate() : V(Math.abs(E.value), this.value, this.sign !== E.
      sign);
    }, c.prototype.multiply = function(E) {
      return ce(E)._multiplyBySmall(this);
    }, c.prototype.times = c.prototype.multiply, h.prototype.multiply = function(E) {
      return new h(this.value * ce(E).value);
    }, h.prototype.times = h.prototype.multiply;
    function U(E) {
      var y = E.length, _ = g(y + y), P = t, b, q, H, W, J;
      for (H = 0; H < y; H++) {
        W = E[H], q = 0 - W * W;
        for (var oe = H; oe < y; oe++)
          J = E[oe], b = 2 * (W * J) + _[H + oe] + q, q = Math.floor(b / P), _[H + oe] = b - q * P;
        _[H + y] = q;
      }
      return D(_), _;
    }
    s(U, "square"), l.prototype.square = function() {
      return new l(U(this.value), !1);
    }, c.prototype.square = function() {
      var E = this.value * this.value;
      return p(E) ? new c(E) : new l(U(d(Math.abs(this.value))), !1);
    }, h.prototype.square = function(E) {
      return new h(this.value * this.value);
    };
    function X(E, y) {
      var _ = E.length, P = y.length, b = t, q = g(y.length), H = y[P - 1], W = Math.ceil(b / (2 * H)), J = T(E, W), oe = T(y, W), De, se, xe,
      Ue, wt, ml, Dl;
      for (J.length <= _ && J.push(0), oe.push(0), H = oe[P - 1], se = _ - P; se >= 0; se--) {
        for (De = b - 1, J[se + P] !== H && (De = Math.floor((J[se + P] * b + J[se + P - 1]) / H)), xe = 0, Ue = 0, ml = oe.length, wt = 0; wt <
        ml; wt++)
          xe += De * oe[wt], Dl = Math.floor(xe / b), Ue += J[se + wt] - (xe - Dl * b), xe = Dl, Ue < 0 ? (J[se + wt] = Ue + b, Ue = -1) : (J[se +
          wt] = Ue, Ue = 0);
        for (; Ue !== 0; ) {
          for (De -= 1, xe = 0, wt = 0; wt < ml; wt++)
            xe += J[se + wt] - b + oe[wt], xe < 0 ? (J[se + wt] = xe + b, xe = 0) : (J[se + wt] = xe, xe = 1);
          Ue += xe;
        }
        q[se] = De;
      }
      return J = N(J, W)[0], [m(q), m(J)];
    }
    s(X, "divMod1");
    function R(E, y) {
      for (var _ = E.length, P = y.length, b = [], q = [], H = t, W, J, oe, De, se; _; ) {
        if (q.unshift(E[--_]), D(q), Y(q, y) < 0) {
          b.push(0);
          continue;
        }
        J = q.length, oe = q[J - 1] * H + q[J - 2], De = y[P - 1] * H + y[P - 2], J > P && (oe = (oe + 1) * H), W = Math.ceil(oe / De);
        do {
          if (se = T(y, W), Y(se, q) <= 0) break;
          W--;
        } while (W);
        b.push(W), q = k(q, se);
      }
      return b.reverse(), [m(b), m(q)];
    }
    s(R, "divMod2");
    function N(E, y) {
      var _ = E.length, P = g(_), b = t, q, H, W, J;
      for (W = 0, q = _ - 1; q >= 0; --q)
        J = W * b + E[q], H = v(J / y), W = J - H * y, P[q] = H | 0;
      return [P, W | 0];
    }
    s(N, "divModSmall");
    function z(E, y) {
      var _, P = ce(y);
      if (a)
        return [new h(E.value / P.value), new h(E.value % P.value)];
      var b = E.value, q = P.value, H;
      if (q === 0) throw new Error("Cannot divide by zero");
      if (E.isSmall)
        return P.isSmall ? [new c(v(b / q)), new c(b % q)] : [o[0], E];
      if (P.isSmall) {
        if (q === 1) return [E, o[0]];
        if (q == -1) return [E.negate(), o[0]];
        var W = Math.abs(q);
        if (W < t) {
          _ = N(b, W), H = m(_[0]);
          var J = _[1];
          return E.sign && (J = -J), typeof H == "number" ? (E.sign !== P.sign && (H = -H), [new c(H), new c(J)]) : [new l(H, E.sign !== P.sign),
          new c(J)];
        }
        q = d(W);
      }
      var oe = Y(b, q);
      if (oe === -1) return [o[0], E];
      if (oe === 0) return [o[E.sign === P.sign ? 1 : -1], o[0]];
      b.length + q.length <= 200 ? _ = X(b, q) : _ = R(b, q), H = _[0];
      var De = E.sign !== P.sign, se = _[1], xe = E.sign;
      return typeof H == "number" ? (De && (H = -H), H = new c(H)) : H = new l(H, De), typeof se == "number" ? (xe && (se = -se), se = new c(
      se)) : se = new l(se, xe), [H, se];
    }
    s(z, "divModAny"), l.prototype.divmod = function(E) {
      var y = z(this, E);
      return {
        quotient: y[0],
        remainder: y[1]
      };
    }, h.prototype.divmod = c.prototype.divmod = l.prototype.divmod, l.prototype.divide = function(E) {
      return z(this, E)[0];
    }, h.prototype.over = h.prototype.divide = function(E) {
      return new h(this.value / ce(E).value);
    }, c.prototype.over = c.prototype.divide = l.prototype.over = l.prototype.divide, l.prototype.mod = function(E) {
      return z(this, E)[1];
    }, h.prototype.mod = h.prototype.remainder = function(E) {
      return new h(this.value % ce(E).value);
    }, c.prototype.remainder = c.prototype.mod = l.prototype.remainder = l.prototype.mod, l.prototype.pow = function(E) {
      var y = ce(E), _ = this.value, P = y.value, b, q, H;
      if (P === 0) return o[1];
      if (_ === 0) return o[0];
      if (_ === 1) return o[1];
      if (_ === -1) return y.isEven() ? o[1] : o[-1];
      if (y.sign)
        return o[0];
      if (!y.isSmall) throw new Error("The exponent " + y.toString() + " is too large.");
      if (this.isSmall && p(b = Math.pow(_, P)))
        return new c(v(b));
      for (q = this, H = o[1]; P & !0 && (H = H.times(q), --P), P !== 0; )
        P /= 2, q = q.square();
      return H;
    }, c.prototype.pow = l.prototype.pow, h.prototype.pow = function(E) {
      var y = ce(E), _ = this.value, P = y.value, b = BigInt(0), q = BigInt(1), H = BigInt(2);
      if (P === b) return o[1];
      if (_ === b) return o[0];
      if (_ === q) return o[1];
      if (_ === BigInt(-1)) return y.isEven() ? o[1] : o[-1];
      if (y.isNegative()) return new h(b);
      for (var W = this, J = o[1]; (P & q) === q && (J = J.times(W), --P), P !== b; )
        P /= H, W = W.square();
      return J;
    }, l.prototype.modPow = function(E, y) {
      if (E = ce(E), y = ce(y), y.isZero()) throw new Error("Cannot take modPow with modulus 0");
      var _ = o[1], P = this.mod(y);
      for (E.isNegative() && (E = E.multiply(o[-1]), P = P.modInv(y)); E.isPositive(); ) {
        if (P.isZero()) return o[0];
        E.isOdd() && (_ = _.multiply(P).mod(y)), E = E.divide(2), P = P.square().mod(y);
      }
      return _;
    }, h.prototype.modPow = c.prototype.modPow = l.prototype.modPow;
    function Y(E, y) {
      if (E.length !== y.length)
        return E.length > y.length ? 1 : -1;
      for (var _ = E.length - 1; _ >= 0; _--)
        if (E[_] !== y[_]) return E[_] > y[_] ? 1 : -1;
      return 0;
    }
    s(Y, "compareAbs"), l.prototype.compareAbs = function(E) {
      var y = ce(E), _ = this.value, P = y.value;
      return y.isSmall ? 1 : Y(_, P);
    }, c.prototype.compareAbs = function(E) {
      var y = ce(E), _ = Math.abs(this.value), P = y.value;
      return y.isSmall ? (P = Math.abs(P), _ === P ? 0 : _ > P ? 1 : -1) : -1;
    }, h.prototype.compareAbs = function(E) {
      var y = this.value, _ = ce(E).value;
      return y = y >= 0 ? y : -y, _ = _ >= 0 ? _ : -_, y === _ ? 0 : y > _ ? 1 : -1;
    }, l.prototype.compare = function(E) {
      if (E === 1 / 0)
        return -1;
      if (E === -1 / 0)
        return 1;
      var y = ce(E), _ = this.value, P = y.value;
      return this.sign !== y.sign ? y.sign ? 1 : -1 : y.isSmall ? this.sign ? -1 : 1 : Y(_, P) * (this.sign ? -1 : 1);
    }, l.prototype.compareTo = l.prototype.compare, c.prototype.compare = function(E) {
      if (E === 1 / 0)
        return -1;
      if (E === -1 / 0)
        return 1;
      var y = ce(E), _ = this.value, P = y.value;
      return y.isSmall ? _ == P ? 0 : _ > P ? 1 : -1 : _ < 0 !== y.sign ? _ < 0 ? -1 : 1 : _ < 0 ? 1 : -1;
    }, c.prototype.compareTo = c.prototype.compare, h.prototype.compare = function(E) {
      if (E === 1 / 0)
        return -1;
      if (E === -1 / 0)
        return 1;
      var y = this.value, _ = ce(E).value;
      return y === _ ? 0 : y > _ ? 1 : -1;
    }, h.prototype.compareTo = h.prototype.compare, l.prototype.equals = function(E) {
      return this.compare(E) === 0;
    }, h.prototype.eq = h.prototype.equals = c.prototype.eq = c.prototype.equals = l.prototype.eq = l.prototype.equals, l.prototype.notEquals =
    function(E) {
      return this.compare(E) !== 0;
    }, h.prototype.neq = h.prototype.notEquals = c.prototype.neq = c.prototype.notEquals = l.prototype.neq = l.prototype.notEquals, l.prototype.
    greater = function(E) {
      return this.compare(E) > 0;
    }, h.prototype.gt = h.prototype.greater = c.prototype.gt = c.prototype.greater = l.prototype.gt = l.prototype.greater, l.prototype.lesser =
    function(E) {
      return this.compare(E) < 0;
    }, h.prototype.lt = h.prototype.lesser = c.prototype.lt = c.prototype.lesser = l.prototype.lt = l.prototype.lesser, l.prototype.greaterOrEquals =
    function(E) {
      return this.compare(E) >= 0;
    }, h.prototype.geq = h.prototype.greaterOrEquals = c.prototype.geq = c.prototype.greaterOrEquals = l.prototype.geq = l.prototype.greaterOrEquals,
    l.prototype.lesserOrEquals = function(E) {
      return this.compare(E) <= 0;
    }, h.prototype.leq = h.prototype.lesserOrEquals = c.prototype.leq = c.prototype.lesserOrEquals = l.prototype.leq = l.prototype.lesserOrEquals,
    l.prototype.isEven = function() {
      return (this.value[0] & 1) === 0;
    }, c.prototype.isEven = function() {
      return (this.value & 1) === 0;
    }, h.prototype.isEven = function() {
      return (this.value & BigInt(1)) === BigInt(0);
    }, l.prototype.isOdd = function() {
      return (this.value[0] & 1) === 1;
    }, c.prototype.isOdd = function() {
      return (this.value & 1) === 1;
    }, h.prototype.isOdd = function() {
      return (this.value & BigInt(1)) === BigInt(1);
    }, l.prototype.isPositive = function() {
      return !this.sign;
    }, c.prototype.isPositive = function() {
      return this.value > 0;
    }, h.prototype.isPositive = c.prototype.isPositive, l.prototype.isNegative = function() {
      return this.sign;
    }, c.prototype.isNegative = function() {
      return this.value < 0;
    }, h.prototype.isNegative = c.prototype.isNegative, l.prototype.isUnit = function() {
      return !1;
    }, c.prototype.isUnit = function() {
      return Math.abs(this.value) === 1;
    }, h.prototype.isUnit = function() {
      return this.abs().value === BigInt(1);
    }, l.prototype.isZero = function() {
      return !1;
    }, c.prototype.isZero = function() {
      return this.value === 0;
    }, h.prototype.isZero = function() {
      return this.value === BigInt(0);
    }, l.prototype.isDivisibleBy = function(E) {
      var y = ce(E);
      return y.isZero() ? !1 : y.isUnit() ? !0 : y.compareAbs(2) === 0 ? this.isEven() : this.mod(y).isZero();
    }, h.prototype.isDivisibleBy = c.prototype.isDivisibleBy = l.prototype.isDivisibleBy;
    function ee(E) {
      var y = E.abs();
      if (y.isUnit()) return !1;
      if (y.equals(2) || y.equals(3) || y.equals(5)) return !0;
      if (y.isEven() || y.isDivisibleBy(3) || y.isDivisibleBy(5)) return !1;
      if (y.lesser(49)) return !0;
    }
    s(ee, "isBasicPrime");
    function O(E, y) {
      for (var _ = E.prev(), P = _, b = 0, q, H, W, J; P.isEven(); ) P = P.divide(2), b++;
      e: for (W = 0; W < y.length; W++)
        if (!E.lesser(y[W]) && (J = rt(y[W]).modPow(P, E), !(J.isUnit() || J.equals(_)))) {
          for (q = b - 1; q != 0; q--) {
            if (J = J.square().mod(E), J.isUnit()) return !1;
            if (J.equals(_)) continue e;
          }
          return !1;
        }
      return !0;
    }
    s(O, "millerRabinTest"), l.prototype.isPrime = function(E) {
      var y = ee(this);
      if (y !== e) return y;
      var _ = this.abs(), P = _.bitLength();
      if (P <= 64)
        return O(_, [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37]);
      for (var b = Math.log(2) * P.toJSNumber(), q = Math.ceil(E === !0 ? 2 * Math.pow(b, 2) : b), H = [], W = 0; W < q; W++)
        H.push(rt(W + 2));
      return O(_, H);
    }, h.prototype.isPrime = c.prototype.isPrime = l.prototype.isPrime, l.prototype.isProbablePrime = function(E, y) {
      var _ = ee(this);
      if (_ !== e) return _;
      for (var P = this.abs(), b = E === e ? 5 : E, q = [], H = 0; H < b; H++)
        q.push(rt.randBetween(2, P.minus(2), y));
      return O(P, q);
    }, h.prototype.isProbablePrime = c.prototype.isProbablePrime = l.prototype.isProbablePrime, l.prototype.modInv = function(E) {
      for (var y = rt.zero, _ = rt.one, P = ce(E), b = this.abs(), q, H, W; !b.isZero(); )
        q = P.divide(b), H = y, W = P, y = _, P = b, _ = H.subtract(q.multiply(_)), b = W.subtract(q.multiply(b));
      if (!P.isUnit()) throw new Error(this.toString() + " and " + E.toString() + " are not co-prime");
      return y.compare(0) === -1 && (y = y.add(E)), this.isNegative() ? y.negate() : y;
    }, h.prototype.modInv = c.prototype.modInv = l.prototype.modInv, l.prototype.next = function() {
      var E = this.value;
      return this.sign ? w(E, 1, this.sign) : new l(S(E, 1), this.sign);
    }, c.prototype.next = function() {
      var E = this.value;
      return E + 1 < i ? new c(E + 1) : new l(n, !1);
    }, h.prototype.next = function() {
      return new h(this.value + BigInt(1));
    }, l.prototype.prev = function() {
      var E = this.value;
      return this.sign ? new l(S(E, 1), !0) : w(E, 1, this.sign);
    }, c.prototype.prev = function() {
      var E = this.value;
      return E - 1 > -i ? new c(E - 1) : new l(n, !0);
    }, h.prototype.prev = function() {
      return new h(this.value - BigInt(1));
    };
    for (var ue = [1]; 2 * ue[ue.length - 1] <= t; ) ue.push(2 * ue[ue.length - 1]);
    var ke = ue.length, M = ue[ke - 1];
    function we(E) {
      return Math.abs(E) <= t;
    }
    s(we, "shift_isSmall"), l.prototype.shiftLeft = function(E) {
      var y = ce(E).toJSNumber();
      if (!we(y))
        throw new Error(String(y) + " is too large for shifting.");
      if (y < 0) return this.shiftRight(-y);
      var _ = this;
      if (_.isZero()) return _;
      for (; y >= ke; )
        _ = _.multiply(M), y -= ke - 1;
      return _.multiply(ue[y]);
    }, h.prototype.shiftLeft = c.prototype.shiftLeft = l.prototype.shiftLeft, l.prototype.shiftRight = function(E) {
      var y, _ = ce(E).toJSNumber();
      if (!we(_))
        throw new Error(String(_) + " is too large for shifting.");
      if (_ < 0) return this.shiftLeft(-_);
      for (var P = this; _ >= ke; ) {
        if (P.isZero() || P.isNegative() && P.isUnit()) return P;
        y = z(P, M), P = y[1].isNegative() ? y[0].prev() : y[0], _ -= ke - 1;
      }
      return y = z(P, ue[_]), y[1].isNegative() ? y[0].prev() : y[0];
    }, h.prototype.shiftRight = c.prototype.shiftRight = l.prototype.shiftRight;
    function Te(E, y, _) {
      y = ce(y);
      for (var P = E.isNegative(), b = y.isNegative(), q = P ? E.not() : E, H = b ? y.not() : y, W = 0, J = 0, oe = null, De = null, se = []; !q.
      isZero() || !H.isZero(); )
        oe = z(q, M), W = oe[1].toJSNumber(), P && (W = M - 1 - W), De = z(H, M), J = De[1].toJSNumber(), b && (J = M - 1 - J), q = oe[0], H =
        De[0], se.push(_(W, J));
      for (var xe = _(P ? 1 : 0, b ? 1 : 0) !== 0 ? rt(-1) : rt(0), Ue = se.length - 1; Ue >= 0; Ue -= 1)
        xe = xe.multiply(M).add(rt(se[Ue]));
      return xe;
    }
    s(Te, "bitwise"), l.prototype.not = function() {
      return this.negate().prev();
    }, h.prototype.not = c.prototype.not = l.prototype.not, l.prototype.and = function(E) {
      return Te(this, E, function(y, _) {
        return y & _;
      });
    }, h.prototype.and = c.prototype.and = l.prototype.and, l.prototype.or = function(E) {
      return Te(this, E, function(y, _) {
        return y | _;
      });
    }, h.prototype.or = c.prototype.or = l.prototype.or, l.prototype.xor = function(E) {
      return Te(this, E, function(y, _) {
        return y ^ _;
      });
    }, h.prototype.xor = c.prototype.xor = l.prototype.xor;
    var ae = 1 << 30, st = (t & -t) * (t & -t) | ae;
    function Ie(E) {
      var y = E.value, _ = typeof y == "number" ? y | ae : typeof y == "bigint" ? y | BigInt(ae) : y[0] + y[1] * t | st;
      return _ & -_;
    }
    s(Ie, "roughLOB");
    function te(E, y) {
      if (y.compareTo(E) <= 0) {
        var _ = te(E, y.square(y)), P = _.p, b = _.e, q = P.multiply(y);
        return q.compareTo(E) <= 0 ? { p: q, e: b * 2 + 1 } : { p: P, e: b * 2 };
      }
      return { p: rt(1), e: 0 };
    }
    s(te, "integerLogarithm"), l.prototype.bitLength = function() {
      var E = this;
      return E.compareTo(rt(0)) < 0 && (E = E.negate().subtract(rt(1))), E.compareTo(rt(0)) === 0 ? rt(0) : rt(te(E, rt(2)).e).add(rt(1));
    }, h.prototype.bitLength = c.prototype.bitLength = l.prototype.bitLength;
    function me(E, y) {
      return E = ce(E), y = ce(y), E.greater(y) ? E : y;
    }
    s(me, "max");
    function K(E, y) {
      return E = ce(E), y = ce(y), E.lesser(y) ? E : y;
    }
    s(K, "min");
    function le(E, y) {
      if (E = ce(E).abs(), y = ce(y).abs(), E.equals(y)) return E;
      if (E.isZero()) return y;
      if (y.isZero()) return E;
      for (var _ = o[1], P, b; E.isEven() && y.isEven(); )
        P = K(Ie(E), Ie(y)), E = E.divide(P), y = y.divide(P), _ = _.multiply(P);
      for (; E.isEven(); )
        E = E.divide(Ie(E));
      do {
        for (; y.isEven(); )
          y = y.divide(Ie(y));
        E.greater(y) && (b = y, y = E, E = b), y = y.subtract(E);
      } while (!y.isZero());
      return _.isUnit() ? E : E.multiply(_);
    }
    s(le, "gcd");
    function Fe(E, y) {
      return E = ce(E).abs(), y = ce(y).abs(), E.divide(le(E, y)).multiply(y);
    }
    s(Fe, "lcm");
    function Ge(E, y, _) {
      E = ce(E), y = ce(y);
      var P = _ || Math.random, b = K(E, y), q = me(E, y), H = q.subtract(b).add(1);
      if (H.isSmall) return b.add(Math.floor(P() * H));
      for (var W = sr(H, t).value, J = [], oe = !0, De = 0; De < W.length; De++) {
        var se = oe ? W[De] + (De + 1 < W.length ? W[De + 1] / t : 0) : t, xe = v(P() * se);
        J.push(xe), xe < W[De] && (oe = !1);
      }
      return b.add(o.fromArray(J, t, !1));
    }
    s(Ge, "randBetween");
    var Oe = /* @__PURE__ */ s(function(E, y, _, P) {
      _ = _ || u, E = String(E), P || (E = E.toLowerCase(), _ = _.toLowerCase());
      var b = E.length, q, H = Math.abs(y), W = {};
      for (q = 0; q < _.length; q++)
        W[_[q]] = q;
      for (q = 0; q < b; q++) {
        var J = E[q];
        if (J !== "-" && J in W && W[J] >= H) {
          if (J === "1" && H === 1) continue;
          throw new Error(J + " is not a valid digit in base " + y + ".");
        }
      }
      y = ce(y);
      var oe = [], De = E[0] === "-";
      for (q = De ? 1 : 0; q < E.length; q++) {
        var J = E[q];
        if (J in W) oe.push(ce(W[J]));
        else if (J === "<") {
          var se = q;
          do
            q++;
          while (E[q] !== ">" && q < E.length);
          oe.push(ce(E.slice(se + 1, q)));
        } else throw new Error(J + " is not a valid character");
      }
      return jt(oe, y, De);
    }, "parseBase");
    function jt(E, y, _) {
      var P = o[0], b = o[1], q;
      for (q = E.length - 1; q >= 0; q--)
        P = P.add(E[q].times(b)), b = b.times(y);
      return _ ? P.negate() : P;
    }
    s(jt, "parseBaseFromArray");
    function vr(E, y) {
      return y = y || u, E < y.length ? y[E] : "<" + E + ">";
    }
    s(vr, "stringify");
    function sr(E, y) {
      if (y = rt(y), y.isZero()) {
        if (E.isZero()) return { value: [0], isNegative: !1 };
        throw new Error("Cannot convert nonzero numbers to base 0.");
      }
      if (y.equals(-1)) {
        if (E.isZero()) return { value: [0], isNegative: !1 };
        if (E.isNegative())
          return {
            value: [].concat.apply(
              [],
              Array.apply(null, Array(-E.toJSNumber())).map(Array.prototype.valueOf, [1, 0])
            ),
            isNegative: !1
          };
        var _ = Array.apply(null, Array(E.toJSNumber() - 1)).map(Array.prototype.valueOf, [0, 1]);
        return _.unshift([1]), {
          value: [].concat.apply([], _),
          isNegative: !1
        };
      }
      var P = !1;
      if (E.isNegative() && y.isPositive() && (P = !0, E = E.abs()), y.isUnit())
        return E.isZero() ? { value: [0], isNegative: !1 } : {
          value: Array.apply(null, Array(E.toJSNumber())).map(Number.prototype.valueOf, 1),
          isNegative: P
        };
      for (var b = [], q = E, H; q.isNegative() || q.compareAbs(y) >= 0; ) {
        H = q.divmod(y), q = H.quotient;
        var W = H.remainder;
        W.isNegative() && (W = y.minus(W).abs(), q = q.next()), b.push(W.toJSNumber());
      }
      return b.push(q.toJSNumber()), { value: b.reverse(), isNegative: P };
    }
    s(sr, "toBase");
    function Ui(E, y, _) {
      var P = sr(E, y);
      return (P.isNegative ? "-" : "") + P.value.map(function(b) {
        return vr(b, _);
      }).join("");
    }
    s(Ui, "toBaseString"), l.prototype.toArray = function(E) {
      return sr(this, E);
    }, c.prototype.toArray = function(E) {
      return sr(this, E);
    }, h.prototype.toArray = function(E) {
      return sr(this, E);
    }, l.prototype.toString = function(E, y) {
      if (E === e && (E = 10), E !== 10) return Ui(this, E, y);
      for (var _ = this.value, P = _.length, b = String(_[--P]), q = "0000000", H; --P >= 0; )
        H = String(_[P]), b += q.slice(H.length) + H;
      var W = this.sign ? "-" : "";
      return W + b;
    }, c.prototype.toString = function(E, y) {
      return E === e && (E = 10), E != 10 ? Ui(this, E, y) : String(this.value);
    }, h.prototype.toString = c.prototype.toString, h.prototype.toJSON = l.prototype.toJSON = c.prototype.toJSON = function() {
      return this.toString();
    }, l.prototype.valueOf = function() {
      return parseInt(this.toString(), 10);
    }, l.prototype.toJSNumber = l.prototype.valueOf, c.prototype.valueOf = function() {
      return this.value;
    }, c.prototype.toJSNumber = c.prototype.valueOf, h.prototype.valueOf = h.prototype.toJSNumber = function() {
      return parseInt(this.toString(), 10);
    };
    function hi(E) {
      if (p(+E)) {
        var y = +E;
        if (y === v(y))
          return a ? new h(BigInt(y)) : new c(y);
        throw new Error("Invalid integer: " + E);
      }
      var _ = E[0] === "-";
      _ && (E = E.slice(1));
      var P = E.split(/e/i);
      if (P.length > 2) throw new Error("Invalid integer: " + P.join("e"));
      if (P.length === 2) {
        var b = P[1];
        if (b[0] === "+" && (b = b.slice(1)), b = +b, b !== v(b) || !p(b)) throw new Error("Invalid integer: " + b + " is not a valid expone\
nt.");
        var q = P[0], H = q.indexOf(".");
        if (H >= 0 && (b -= q.length - H - 1, q = q.slice(0, H) + q.slice(H + 1)), b < 0) throw new Error("Cannot include negative exponent \
part for integers");
        q += new Array(b + 1).join("0"), E = q;
      }
      var W = /^([0-9][0-9]*)$/.test(E);
      if (!W) throw new Error("Invalid integer: " + E);
      if (a)
        return new h(BigInt(_ ? "-" + E : E));
      for (var J = [], oe = E.length, De = r, se = oe - De; oe > 0; )
        J.push(+E.slice(se, oe)), se -= De, se < 0 && (se = 0), oe -= De;
      return D(J), new l(J, _);
    }
    s(hi, "parseStringValue");
    function mn(E) {
      if (a)
        return new h(BigInt(E));
      if (p(E)) {
        if (E !== v(E)) throw new Error(E + " is not an integer.");
        return new c(E);
      }
      return hi(E.toString());
    }
    s(mn, "parseNumberValue");
    function ce(E) {
      return typeof E == "number" ? mn(E) : typeof E == "string" ? hi(E) : typeof E == "bigint" ? new h(E) : E;
    }
    s(ce, "parseValue");
    for (var Ct = 0; Ct < 1e3; Ct++)
      o[Ct] = ce(Ct), Ct > 0 && (o[-Ct] = ce(-Ct));
    return o.one = o[1], o.zero = o[0], o.minusOne = o[-1], o.max = me, o.min = K, o.gcd = le, o.lcm = Fe, o.isInstance = function(E) {
      return E instanceof l || E instanceof c || E instanceof h;
    }, o.randBetween = Ge, o.fromArray = function(E, y, _) {
      return jt(E.map(ce), ce(y || 10), _);
    }, o;
  }();
  typeof Vo < "u" && Vo.hasOwnProperty("exports") && (Vo.exports = rt);
  typeof define == "function" && define.amd && define(function() {
    return rt;
  });
});

// ../node_modules/bplist-parser/bplistParser.js
var JF = I((it) => {
  "use strict";
  var I$ = require("fs"), O$ = WF(), Li = !1;
  it.maxObjectSize = 100 * 1e3 * 1e3;
  it.maxObjectCount = 32768;
  var R$ = 9783072e5, N$ = it.UID = function(e) {
    this.UID = e;
  }, qZ = it.parseFile = function(e, t) {
    return new Promise(function(r, i) {
      function n(u) {
        let a = null, o;
        try {
          o = L$(u), r(o);
        } catch (l) {
          a = l, i(a);
        } finally {
          t && t(a, o);
        }
      }
      if (s(n, "tryParseBuffer"), Buffer.isBuffer(e))
        return n(e);
      I$.readFile(e, function(u, a) {
        if (u)
          return i(u), t(u);
        n(a);
      });
    });
  }, L$ = it.parseBuffer = function(e) {
    if (e.slice(0, 6).toString("utf8") !== "bplist")
      throw new Error("Invalid binary plist. Expected 'bplist' at offset 0.");
    let r = e.slice(e.length - 32, e.length), i = r.readUInt8(6);
    Li && console.log("offsetSize: " + i);
    let n = r.readUInt8(7);
    Li && console.log("objectRefSize: " + n);
    let u = om(r, 8);
    Li && console.log("numObjects: " + u);
    let a = om(r, 16);
    Li && console.log("topObject: " + a);
    let o = om(r, 24);
    if (Li && console.log("offsetTableOffset: " + o), u > it.maxObjectCount)
      throw new Error("maxObjectCount exceeded");
    let l = [];
    for (let h = 0; h < u; h++) {
      let p = e.slice(o + h * i, o + (h + 1) * i);
      l[h] = Tt(p, 0), Li && console.log("Offset for Object #" + h + " is " + l[h] + " [" + l[h].toString(16) + "]");
    }
    function c(h) {
      let p = l[h], d = e[p], m = (d & 240) >> 4, D = d & 15;
      switch (m) {
        case 0:
          return g();
        case 1:
          return x();
        case 8:
          return C();
        case 2:
          return S();
        case 3:
          return k();
        case 4:
          return j();
        case 5:
          return w();
        case 6:
          return w(!0);
        case 10:
          return A();
        case 13:
          return T();
        default:
          throw new Error("Unhandled type 0x" + m.toString(16));
      }
      function g() {
        switch (D) {
          case 0:
            return null;
          case 8:
            return !1;
          case 9:
            return !0;
          case 15:
            return null;
          default:
            throw new Error("Unhandled simple type 0x" + m.toString(16));
        }
      }
      s(g, "parseSimple");
      function v(B) {
        let $ = "", L;
        for (L = 0; L < B.length && B[L] == 0; L++)
          ;
        for (; L < B.length; L++) {
          let V = "00" + B[L].toString(16);
          $ += V.substr(V.length - 2);
        }
        return $;
      }
      s(v, "bufferToHexString");
      function x() {
        let B = Math.pow(2, D);
        if (D == 4) {
          let $ = e.slice(p + 1, p + 1 + B), L = v($);
          return O$(L, 16);
        }
        if (D == 3)
          return e.readInt32BE(p + 1);
        if (B < it.maxObjectSize)
          return Tt(e.slice(p + 1, p + 1 + B));
        throw new Error("To little heap space available! Wanted to read " + B + " bytes, but only " + it.maxObjectSize + " are available.");
      }
      s(x, "parseInteger");
      function C() {
        let B = D + 1;
        if (B < it.maxObjectSize)
          return new N$(Tt(e.slice(p + 1, p + 1 + B)));
        throw new Error("To little heap space available! Wanted to read " + B + " bytes, but only " + it.maxObjectSize + " are available.");
      }
      s(C, "parseUID");
      function S() {
        let B = Math.pow(2, D);
        if (B < it.maxObjectSize) {
          let $ = e.slice(p + 1, p + 1 + B);
          if (B === 4)
            return $.readFloatBE(0);
          if (B === 8)
            return $.readDoubleBE(0);
        } else
          throw new Error("To little heap space available! Wanted to read " + B + " bytes, but only " + it.maxObjectSize + " are available.");
      }
      s(S, "parseReal");
      function k() {
        D != 3 && console.error("Unknown date type :" + D + ". Parsing anyway...");
        let B = e.slice(p + 1, p + 9);
        return new Date(R$ + 1e3 * B.readDoubleBE(0));
      }
      s(k, "parseDate");
      function j() {
        let B = 1, $ = D;
        if (D == 15) {
          let L = e[p + 1], V = (L & 240) / 16;
          V != 1 && console.error("0x4: UNEXPECTED LENGTH-INT TYPE! " + V);
          let U = L & 15, X = Math.pow(2, U);
          B = 2 + X, X < 3, $ = Tt(e.slice(p + 2, p + 2 + X));
        }
        if ($ < it.maxObjectSize)
          return e.slice(p + B, p + B + $);
        throw new Error("To little heap space available! Wanted to read " + $ + " bytes, but only " + it.maxObjectSize + " are available.");
      }
      s(j, "parseData");
      function w(B) {
        B = B || 0;
        let $ = "utf8", L = D, V = 1;
        if (D == 15) {
          let U = e[p + 1], X = (U & 240) / 16;
          X != 1 && console.err("UNEXPECTED LENGTH-INT TYPE! " + X);
          let R = U & 15, N = Math.pow(2, R);
          V = 2 + N, N < 3, L = Tt(e.slice(p + 2, p + 2 + N));
        }
        if (L *= B + 1, L < it.maxObjectSize) {
          let U = Buffer.from(e.slice(p + V, p + V + L));
          return B && (U = M$(U), $ = "ucs2"), U.toString($);
        }
        throw new Error("To little heap space available! Wanted to read " + L + " bytes, but only " + it.maxObjectSize + " are available.");
      }
      s(w, "parsePlistString");
      function A() {
        let B = D, $ = 1;
        if (D == 15) {
          let V = e[p + 1], U = (V & 240) / 16;
          U != 1 && console.error("0xa: UNEXPECTED LENGTH-INT TYPE! " + U);
          let X = V & 15, R = Math.pow(2, X);
          $ = 2 + R, R < 3, B = Tt(e.slice(p + 2, p + 2 + R));
        }
        if (B * n > it.maxObjectSize)
          throw new Error("To little heap space available!");
        let L = [];
        for (let V = 0; V < B; V++) {
          let U = Tt(e.slice(p + $ + V * n, p + $ + (V + 1) * n));
          L[V] = c(U);
        }
        return L;
      }
      s(A, "parseArray");
      function T() {
        let B = D, $ = 1;
        if (D == 15) {
          let V = e[p + 1], U = (V & 240) / 16;
          U != 1 && console.error("0xD: UNEXPECTED LENGTH-INT TYPE! " + U);
          let X = V & 15, R = Math.pow(2, X);
          $ = 2 + R, R < 3, B = Tt(e.slice(p + 2, p + 2 + R));
        }
        if (B * 2 * n > it.maxObjectSize)
          throw new Error("To little heap space available!");
        Li && console.log("Parsing dictionary #" + h);
        let L = {};
        for (let V = 0; V < B; V++) {
          let U = Tt(e.slice(p + $ + V * n, p + $ + (V + 1) * n)), X = Tt(e.slice(p + $ + B * n + V * n, p + $ + B * n + (V + 1) * n)), R = c(
          U), N = c(X);
          Li && console.log("  DICT #" + h + ": Mapped " + R + " to " + N), L[R] = N;
        }
        return L;
      }
      s(T, "parseDictionary");
    }
    return s(c, "parseObject"), [c(a)];
  };
  function Tt(e, t) {
    t = t || 0;
    let r = 0;
    for (let i = t; i < e.length; i++)
      r <<= 8, r |= e[i] & 255;
    return r;
  }
  s(Tt, "readUInt");
  function om(e, t) {
    return e.slice(t, t + 8).readUInt32BE(4, 8);
  }
  s(om, "readUInt64BE");
  function M$(e) {
    let t = e.length;
    for (let r = 0; r < t; r += 2) {
      let i = e[r];
      e[r] = e[r + 1], e[r + 1] = i;
    }
    return e;
  }
  s(M$, "swapBytes");
});

// ../node_modules/untildify/index.js
var YF = I((UZ, XF) => {
  "use strict";
  var j$ = require("os"), GF = j$.homedir();
  XF.exports = (e) => {
    if (typeof e != "string")
      throw new TypeError(`Expected a string, got ${typeof e}`);
    return GF ? e.replace(/^~(?=$|\/|\\)/, GF) : e;
  };
});

// ../node_modules/@aw-web-design/x-default-browser/node_modules/default-browser-id/index.js
var rS = {};
pi(rS, {
  default: () => tS
});
async function tS() {
  if (process.platform !== "darwin")
    throw new Error("macOS only");
  let e = "com.apple.Safari", t;
  try {
    t = await QF.promises.readFile($$);
  } catch (n) {
    if (n.code === "ENOENT")
      return e;
    throw n;
  }
  let r = ZF.default.parseBuffer(t), i = r && r[0].LSHandlers;
  if (!i || i.length === 0)
    return e;
  for (let n of i)
    if (n.LSHandlerURLScheme === "http" && n.LSHandlerRoleAll) {
      e = n.LSHandlerRoleAll;
      break;
    }
  return e;
}
var KF, QF, ZF, eS, q$, $$, iS = ht(() => {
  KF = Q(require("os"), 1), QF = require("fs"), ZF = Q(JF(), 1), eS = Q(YF(), 1), q$ = Number(KF.default.release().split(".")[0]), $$ = (0, eS.default)(
  q$ >= 14 ? "~/Library/Preferences/com.apple.LaunchServices/com.apple.launchservices.secure.plist" : "~/Library/Preferences/com.apple.Launc\
hServices.plist");
  s(tS, "defaultBrowserId");
});

// ../node_modules/@aw-web-design/x-default-browser/src/detect-mac.js
var sS = I((HZ, nS) => {
  var V$ = Promise.resolve().then(() => (iS(), rS));
  nS.exports = async function(e) {
    let t = await V$.then((r) => r.default());
    if (t) {
      let r = t.toLowerCase(), i = {
        isIE: !1,
        isSafari: r.indexOf("safari") > -1,
        isFirefox: r.indexOf("firefox") > -1,
        isChrome: r.indexOf("google") > -1,
        isChromium: r.indexOf("chromium") > -1,
        // untested
        isOpera: r.indexOf("opera") > -1,
        identity: t
      };
      i.isBlink = i.isChrome || i.isChromium || i.isOpera, i.isWebkit = i.isSafari || i.isBlink, i.commonName = du()(i), e(null, i);
    } else
      e("Unable to retrieve default browser");
  };
});

// ../node_modules/@aw-web-design/x-default-browser/src/detect-linux.js
var aS = I((WZ, uS) => {
  var U$ = require("child_process").exec;
  uS.exports = function(e) {
    var t = "xdg-mime query default x-scheme-handler/http";
    U$(t, function(r, i, n) {
      if (r) {
        e("Unable to execute the query: " + r + `
` + n);
        return;
      }
      var u = i, a = {
        isIE: !1,
        isSafari: !1,
        isFirefox: u.indexOf("firefox") > -1,
        isChrome: u.indexOf("google") > -1,
        isChromium: u.indexOf("chromium") > -1,
        isOpera: u.indexOf("opera") > -1,
        identity: u
      };
      a.isWebkit = a.isBlink = a.isChrome || a.isChromium || a.isOpera, a.commonName = du()(a), e(null, a);
    });
  };
});

// ../node_modules/@aw-web-design/x-default-browser/src/detect-stub.js
var lS = I((JZ, oS) => {
  oS.exports = function(e) {
    e("Your platform is not supported, sorry. Patches welcome.");
  };
});

// ../node_modules/@aw-web-design/x-default-browser/index.js
var hS = I((GZ, cS) => {
  var ns, mu = require("os");
  mu.platform() == "win32" ? mu.release().indexOf("10.") == 0 ? ns = UF() : ns = HF() : mu.platform() == "darwin" ? ns = sS() : mu.platform() ==
  "linux" || mu.platform() == "freebsd" ? ns = aS() : ns = lS();
  cS.exports = ns;
});

// ../node_modules/is-docker/index.js
var cm = I((XZ, fS) => {
  "use strict";
  var pS = require("fs"), lm;
  function z$() {
    try {
      return pS.statSync("/.dockerenv"), !0;
    } catch {
      return !1;
    }
  }
  s(z$, "hasDockerEnv");
  function H$() {
    try {
      return pS.readFileSync("/proc/self/cgroup", "utf8").includes("docker");
    } catch {
      return !1;
    }
  }
  s(H$, "hasDockerCGroup");
  fS.exports = () => (lm === void 0 && (lm = z$() || H$()), lm);
});

// ../node_modules/is-wsl/index.js
var DS = I((KZ, hm) => {
  "use strict";
  var W$ = require("os"), J$ = require("fs"), dS = cm(), mS = /* @__PURE__ */ s(() => {
    if (process.platform !== "linux")
      return !1;
    if (W$.release().toLowerCase().includes("microsoft"))
      return !dS();
    try {
      return J$.readFileSync("/proc/version", "utf8").toLowerCase().includes("microsoft") ? !dS() : !1;
    } catch {
      return !1;
    }
  }, "isWsl");
  process.env.__IS_WSL_TEST__ ? hm.exports = mS : hm.exports = mS();
});

// ../node_modules/define-lazy-prop/index.js
var xS = I((ZZ, gS) => {
  "use strict";
  gS.exports = (e, t, r) => {
    let i = /* @__PURE__ */ s((n) => Object.defineProperty(e, t, { value: n, enumerable: !0, writable: !0 }), "define");
    return Object.defineProperty(e, t, {
      configurable: !0,
      enumerable: !0,
      get() {
        let n = r();
        return i(n), n;
      },
      set(n) {
        i(n);
      }
    }), e;
  };
});

// ../node_modules/open/index.js
var AS = I((tee, wS) => {
  var G$ = require("path"), X$ = require("child_process"), { promises: zo, constants: CS } = require("fs"), Uo = DS(), Y$ = cm(), fm = xS(),
  yS = G$.join(__dirname, "xdg-open"), { platform: ss, arch: ES } = process, K$ = /* @__PURE__ */ s(() => {
    try {
      return zo.statSync("/run/.containerenv"), !0;
    } catch {
      return !1;
    }
  }, "hasContainerEnv"), pm;
  function Q$() {
    return pm === void 0 && (pm = K$() || Y$()), pm;
  }
  s(Q$, "isInsideContainer");
  var Z$ = /* @__PURE__ */ (() => {
    let e = "/mnt/", t;
    return async function() {
      if (t)
        return t;
      let r = "/etc/wsl.conf", i = !1;
      try {
        await zo.access(r, CS.F_OK), i = !0;
      } catch {
      }
      if (!i)
        return e;
      let n = await zo.readFile(r, { encoding: "utf8" }), u = /(?<!#.*)root\s*=\s*(?<mountPoint>.*)/g.exec(n);
      return u ? (t = u.groups.mountPoint.trim(), t = t.endsWith("/") ? t : `${t}/`, t) : e;
    };
  })(), bS = /* @__PURE__ */ s(async (e, t) => {
    let r;
    for (let i of e)
      try {
        return await t(i);
      } catch (n) {
        r = n;
      }
    throw r;
  }, "pTryEach"), Ho = /* @__PURE__ */ s(async (e) => {
    if (e = {
      wait: !1,
      background: !1,
      newInstance: !1,
      allowNonzeroExitCode: !1,
      ...e
    }, Array.isArray(e.app))
      return bS(e.app, (o) => Ho({
        ...e,
        app: o
      }));
    let { name: t, arguments: r = [] } = e.app || {};
    if (r = [...r], Array.isArray(t))
      return bS(t, (o) => Ho({
        ...e,
        app: {
          name: o,
          arguments: r
        }
      }));
    let i, n = [], u = {};
    if (ss === "darwin")
      i = "open", e.wait && n.push("--wait-apps"), e.background && n.push("--background"), e.newInstance && n.push("--new"), t && n.push("-a",
      t);
    else if (ss === "win32" || Uo && !Q$() && !t) {
      let o = await Z$();
      i = Uo ? `${o}c/Windows/System32/WindowsPowerShell/v1.0/powershell.exe` : `${process.env.SYSTEMROOT}\\System32\\WindowsPowerShell\\v1.0\\p\
owershell`, n.push(
        "-NoProfile",
        "-NonInteractive",
        "\u2013ExecutionPolicy",
        "Bypass",
        "-EncodedCommand"
      ), Uo || (u.windowsVerbatimArguments = !0);
      let l = ["Start"];
      e.wait && l.push("-Wait"), t ? (l.push(`"\`"${t}\`""`, "-ArgumentList"), e.target && r.unshift(e.target)) : e.target && l.push(`"${e.target}\
"`), r.length > 0 && (r = r.map((c) => `"\`"${c}\`""`), l.push(r.join(","))), e.target = Buffer.from(l.join(" "), "utf16le").toString("base6\
4");
    } else {
      if (t)
        i = t;
      else {
        let o = !__dirname || __dirname === "/", l = !1;
        try {
          await zo.access(yS, CS.X_OK), l = !0;
        } catch {
        }
        i = process.versions.electron || ss === "android" || o || !l ? "xdg-open" : yS;
      }
      r.length > 0 && n.push(...r), e.wait || (u.stdio = "ignore", u.detached = !0);
    }
    e.target && n.push(e.target), ss === "darwin" && r.length > 0 && n.push("--args", ...r);
    let a = X$.spawn(i, n, u);
    return e.wait ? new Promise((o, l) => {
      a.once("error", l), a.once("close", (c) => {
        if (!e.allowNonzeroExitCode && c > 0) {
          l(new Error(`Exited with code ${c}`));
          return;
        }
        o(a);
      });
    }) : (a.unref(), a);
  }, "baseOpen"), dm = /* @__PURE__ */ s((e, t) => {
    if (typeof e != "string")
      throw new TypeError("Expected a `target`");
    return Ho({
      ...t,
      target: e
    });
  }, "open"), eV = /* @__PURE__ */ s((e, t) => {
    if (typeof e != "string")
      throw new TypeError("Expected a `name`");
    let { arguments: r = [] } = t || {};
    if (r != null && !Array.isArray(r))
      throw new TypeError("Expected `appArguments` as Array type");
    return Ho({
      ...t,
      app: {
        name: e,
        arguments: r
      }
    });
  }, "openApp");
  function vS(e) {
    if (typeof e == "string" || Array.isArray(e))
      return e;
    let { [ES]: t } = e;
    if (!t)
      throw new Error(`${ES} is not supported`);
    return t;
  }
  s(vS, "detectArchBinary");
  function mm({ [ss]: e }, { wsl: t }) {
    if (t && Uo)
      return vS(t);
    if (!e)
      throw new Error(`${ss} is not supported`);
    return vS(e);
  }
  s(mm, "detectPlatformBinary");
  var Wo = {};
  fm(Wo, "chrome", () => mm({
    darwin: "google chrome",
    win32: "chrome",
    linux: ["google-chrome", "google-chrome-stable", "chromium"]
  }, {
    wsl: {
      ia32: "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe",
      x64: ["/mnt/c/Program Files/Google/Chrome/Application/chrome.exe", "/mnt/c/Program Files (x86)/Google/Chrome/Application/chrome.exe"]
    }
  }));
  fm(Wo, "firefox", () => mm({
    darwin: "firefox",
    win32: "C:\\Program Files\\Mozilla Firefox\\firefox.exe",
    linux: "firefox"
  }, {
    wsl: "/mnt/c/Program Files/Mozilla Firefox/firefox.exe"
  }));
  fm(Wo, "edge", () => mm({
    darwin: "microsoft edge",
    win32: "msedge",
    linux: ["microsoft-edge", "microsoft-edge-dev"]
  }, {
    wsl: "/mnt/c/Program Files (x86)/Microsoft/Edge/Application/msedge.exe"
  }));
  dm.apps = Wo;
  dm.openApp = eV;
  wS.exports = dm;
});

// ../node_modules/address/lib/address.js
var MS = I((see, LS) => {
  "use strict";
  var Dm = require("os"), tV = require("fs"), rV = require("child_process"), iV = "/etc/resolv.conf";
  function NS() {
    var e = "eth", t = Dm.platform();
    return t === "darwin" ? e = "en" : t === "win32" && (e = null), e;
  }
  s(NS, "getInterfaceName");
  function nV() {
    return Dm.platform() === "win32" ? "ipconfig/all" : "/sbin/ifconfig";
  }
  s(nV, "getIfconfigCMD");
  function PS(e, t) {
    return t === "IPv4" ? e === "IPv4" || e === 4 : t === "IPv6" ? e === "IPv6" || e === 6 : e === t;
  }
  s(PS, "matchName");
  function Pt(e, t) {
    typeof e == "function" && (t = e, e = null);
    var r = {
      ip: Pt.ip(e),
      ipv6: Pt.ipv6(e),
      mac: null
    };
    Pt.mac(e, function(i, n) {
      n && (r.mac = n), t(i, r);
    });
  }
  s(Pt, "address");
  Pt.interface = function(e, t) {
    var r = Dm.networkInterfaces(), i = !t;
    t = t || NS(), e = e || "IPv4";
    for (var n = -1; n < 8; n++) {
      var u = t + (n >= 0 ? n : ""), a = r[u];
      if (a)
        for (var o = 0; o < a.length; o++) {
          var l = a[o];
          if (PS(l.family, e))
            return l;
        }
    }
    if (i)
      for (var c in r)
        for (var a = r[c], n = 0; n < a.length; n++) {
          var l = a[n];
          if (PS(l.family, e) && !l.address.startsWith("127."))
            return l;
        }
  };
  Pt.ip = function(e) {
    var t = Pt.interface("IPv4", e);
    return t && t.address;
  };
  Pt.ipv6 = function(e) {
    var t = Pt.interface("IPv6", e);
    return t && t.address;
  };
  var IS = /^(\w+)\:\s+flags=/, OS = /^(\w+)\s{2,}link encap:\w+/i, RS = Pt.MAC_RE = /(?:ether|HWaddr)\s+((?:[a-z0-9]{2}\:){5}[a-z0-9]{2})/i,
  sV = Pt.MAC_IP_RE = /inet\s(?:addr\:)?(\d+\.\d+\.\d+\.\d+)/;
  function uV(e, t, r) {
    for (var i = e.split(`
`), n = 0; n < i.length; n++) {
      var u = i[n].trimRight(), a = IS.exec(u) || OS.exec(u);
      if (a) {
        var o = a[1];
        if (o.indexOf(t) === 0) {
          var l = null, c = null, h = RS.exec(u);
          for (h && (c = h[1]), n++; ; ) {
            if (u = i[n], !u || IS.exec(u) || OS.exec(u)) {
              n--;
              break;
            }
            c || (h = RS.exec(u), h && (c = h[1])), l || (h = sV.exec(u), h && (l = h[1])), n++;
          }
          if (l === r)
            return c;
        }
      }
    }
  }
  s(uV, "getMAC");
  Pt.mac = function(e, t) {
    typeof e == "function" && (t = e, e = null), e = e || NS();
    var r = Pt.interface("IPv4", e);
    if (!r)
      return t();
    if (!process.env.CI && (r.mac === "ff:00:00:00:00:00" || r.mac === "00:00:00:00:00:00") && (r.mac = ""), r.mac)
      return t(null, r.mac);
    rV.exec(nV(), { timeout: 5e3 }, function(i, n, u) {
      if (i || !n)
        return t(i);
      var a = uV(n || "", e, r.address);
      t(null, a);
    });
  };
  var aV = /^nameserver\s+(\d+\.\d+\.\d+\.\d+)$/i;
  Pt.dns = function(e, t) {
    typeof e == "function" && (t = e, e = null), e = e || iV, tV.readFile(e, "utf8", function(r, i) {
      if (r)
        return t(r);
      var n = [];
      i = i || "";
      for (var u = i.split(`
`), a = 0; a < u.length; a++) {
        var o = u[a].trim(), l = aV.exec(o);
        l && n.push(l[1]);
      }
      t(null, n);
    });
  };
  LS.exports = Pt;
});

// ../node_modules/ms/index.js
var qS = I((aee, jS) => {
  var us = 1e3, as = us * 60, os = as * 60, cn = os * 24, oV = cn * 7, lV = cn * 365.25;
  jS.exports = function(e, t) {
    t = t || {};
    var r = typeof e;
    if (r === "string" && e.length > 0)
      return cV(e);
    if (r === "number" && isFinite(e))
      return t.long ? pV(e) : hV(e);
    throw new Error(
      "val is not a non-empty string or a valid number. val=" + JSON.stringify(e)
    );
  };
  function cV(e) {
    if (e = String(e), !(e.length > 100)) {
      var t = /^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.
      exec(
        e
      );
      if (t) {
        var r = parseFloat(t[1]), i = (t[2] || "ms").toLowerCase();
        switch (i) {
          case "years":
          case "year":
          case "yrs":
          case "yr":
          case "y":
            return r * lV;
          case "weeks":
          case "week":
          case "w":
            return r * oV;
          case "days":
          case "day":
          case "d":
            return r * cn;
          case "hours":
          case "hour":
          case "hrs":
          case "hr":
          case "h":
            return r * os;
          case "minutes":
          case "minute":
          case "mins":
          case "min":
          case "m":
            return r * as;
          case "seconds":
          case "second":
          case "secs":
          case "sec":
          case "s":
            return r * us;
          case "milliseconds":
          case "millisecond":
          case "msecs":
          case "msec":
          case "ms":
            return r;
          default:
            return;
        }
      }
    }
  }
  s(cV, "parse");
  function hV(e) {
    var t = Math.abs(e);
    return t >= cn ? Math.round(e / cn) + "d" : t >= os ? Math.round(e / os) + "h" : t >= as ? Math.round(e / as) + "m" : t >= us ? Math.round(
    e / us) + "s" : e + "ms";
  }
  s(hV, "fmtShort");
  function pV(e) {
    var t = Math.abs(e);
    return t >= cn ? Jo(e, t, cn, "day") : t >= os ? Jo(e, t, os, "hour") : t >= as ? Jo(e, t, as, "minute") : t >= us ? Jo(e, t, us, "secon\
d") : e + " ms";
  }
  s(pV, "fmtLong");
  function Jo(e, t, r, i) {
    var n = t >= r * 1.5;
    return Math.round(e / r) + " " + i + (n ? "s" : "");
  }
  s(Jo, "plural");
});

// ../node_modules/debug/src/common.js
var gm = I((lee, $S) => {
  function fV(e) {
    r.debug = r, r.default = r, r.coerce = l, r.disable = u, r.enable = n, r.enabled = a, r.humanize = qS(), r.destroy = c, Object.keys(e).forEach(
    (h) => {
      r[h] = e[h];
    }), r.names = [], r.skips = [], r.formatters = {};
    function t(h) {
      let p = 0;
      for (let d = 0; d < h.length; d++)
        p = (p << 5) - p + h.charCodeAt(d), p |= 0;
      return r.colors[Math.abs(p) % r.colors.length];
    }
    s(t, "selectColor"), r.selectColor = t;
    function r(h) {
      let p, d = null, m, D;
      function g(...v) {
        if (!g.enabled)
          return;
        let x = g, C = Number(/* @__PURE__ */ new Date()), S = C - (p || C);
        x.diff = S, x.prev = p, x.curr = C, p = C, v[0] = r.coerce(v[0]), typeof v[0] != "string" && v.unshift("%O");
        let k = 0;
        v[0] = v[0].replace(/%([a-zA-Z%])/g, (w, A) => {
          if (w === "%%")
            return "%";
          k++;
          let T = r.formatters[A];
          if (typeof T == "function") {
            let B = v[k];
            w = T.call(x, B), v.splice(k, 1), k--;
          }
          return w;
        }), r.formatArgs.call(x, v), (x.log || r.log).apply(x, v);
      }
      return s(g, "debug"), g.namespace = h, g.useColors = r.useColors(), g.color = r.selectColor(h), g.extend = i, g.destroy = r.destroy, Object.
      defineProperty(g, "enabled", {
        enumerable: !0,
        configurable: !1,
        get: /* @__PURE__ */ s(() => d !== null ? d : (m !== r.namespaces && (m = r.namespaces, D = r.enabled(h)), D), "get"),
        set: /* @__PURE__ */ s((v) => {
          d = v;
        }, "set")
      }), typeof r.init == "function" && r.init(g), g;
    }
    s(r, "createDebug");
    function i(h, p) {
      let d = r(this.namespace + (typeof p > "u" ? ":" : p) + h);
      return d.log = this.log, d;
    }
    s(i, "extend");
    function n(h) {
      r.save(h), r.namespaces = h, r.names = [], r.skips = [];
      let p, d = (typeof h == "string" ? h : "").split(/[\s,]+/), m = d.length;
      for (p = 0; p < m; p++)
        d[p] && (h = d[p].replace(/\*/g, ".*?"), h[0] === "-" ? r.skips.push(new RegExp("^" + h.slice(1) + "$")) : r.names.push(new RegExp("\
^" + h + "$")));
    }
    s(n, "enable");
    function u() {
      let h = [
        ...r.names.map(o),
        ...r.skips.map(o).map((p) => "-" + p)
      ].join(",");
      return r.enable(""), h;
    }
    s(u, "disable");
    function a(h) {
      if (h[h.length - 1] === "*")
        return !0;
      let p, d;
      for (p = 0, d = r.skips.length; p < d; p++)
        if (r.skips[p].test(h))
          return !1;
      for (p = 0, d = r.names.length; p < d; p++)
        if (r.names[p].test(h))
          return !0;
      return !1;
    }
    s(a, "enabled");
    function o(h) {
      return h.toString().substring(2, h.toString().length - 2).replace(/\.\*\?$/, "*");
    }
    s(o, "toNamespace");
    function l(h) {
      return h instanceof Error ? h.stack || h.message : h;
    }
    s(l, "coerce");
    function c() {
      console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major versio\
n of `debug`.");
    }
    return s(c, "destroy"), r.enable(r.load()), r;
  }
  s(fV, "setup");
  $S.exports = fV;
});

// ../node_modules/debug/src/browser.js
var VS = I((Lt, Go) => {
  Lt.formatArgs = mV;
  Lt.save = DV;
  Lt.load = gV;
  Lt.useColors = dV;
  Lt.storage = xV();
  Lt.destroy = /* @__PURE__ */ (() => {
    let e = !1;
    return () => {
      e || (e = !0, console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the nex\
t major version of `debug`."));
    };
  })();
  Lt.colors = [
    "#0000CC",
    "#0000FF",
    "#0033CC",
    "#0033FF",
    "#0066CC",
    "#0066FF",
    "#0099CC",
    "#0099FF",
    "#00CC00",
    "#00CC33",
    "#00CC66",
    "#00CC99",
    "#00CCCC",
    "#00CCFF",
    "#3300CC",
    "#3300FF",
    "#3333CC",
    "#3333FF",
    "#3366CC",
    "#3366FF",
    "#3399CC",
    "#3399FF",
    "#33CC00",
    "#33CC33",
    "#33CC66",
    "#33CC99",
    "#33CCCC",
    "#33CCFF",
    "#6600CC",
    "#6600FF",
    "#6633CC",
    "#6633FF",
    "#66CC00",
    "#66CC33",
    "#9900CC",
    "#9900FF",
    "#9933CC",
    "#9933FF",
    "#99CC00",
    "#99CC33",
    "#CC0000",
    "#CC0033",
    "#CC0066",
    "#CC0099",
    "#CC00CC",
    "#CC00FF",
    "#CC3300",
    "#CC3333",
    "#CC3366",
    "#CC3399",
    "#CC33CC",
    "#CC33FF",
    "#CC6600",
    "#CC6633",
    "#CC9900",
    "#CC9933",
    "#CCCC00",
    "#CCCC33",
    "#FF0000",
    "#FF0033",
    "#FF0066",
    "#FF0099",
    "#FF00CC",
    "#FF00FF",
    "#FF3300",
    "#FF3333",
    "#FF3366",
    "#FF3399",
    "#FF33CC",
    "#FF33FF",
    "#FF6600",
    "#FF6633",
    "#FF9900",
    "#FF9933",
    "#FFCC00",
    "#FFCC33"
  ];
  function dV() {
    if (typeof window < "u" && window.process && (window.process.type === "renderer" || window.process.__nwjs))
      return !0;
    if (typeof navigator < "u" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))
      return !1;
    let e;
    return typeof document < "u" && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance ||
    // Is firebug? http://stackoverflow.com/a/398120/376773
    typeof window < "u" && window.console && (window.console.firebug || window.console.exception && window.console.table) || // Is firefox >= v31?
    // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
    typeof navigator < "u" && navigator.userAgent && (e = navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)) && parseInt(e[1], 10) >=
    31 || // Double check webkit in userAgent just in case we are in a worker
    typeof navigator < "u" && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/);
  }
  s(dV, "useColors");
  function mV(e) {
    if (e[0] = (this.useColors ? "%c" : "") + this.namespace + (this.useColors ? " %c" : " ") + e[0] + (this.useColors ? "%c " : " ") + "+" +
    Go.exports.humanize(this.diff), !this.useColors)
      return;
    let t = "color: " + this.color;
    e.splice(1, 0, t, "color: inherit");
    let r = 0, i = 0;
    e[0].replace(/%[a-zA-Z%]/g, (n) => {
      n !== "%%" && (r++, n === "%c" && (i = r));
    }), e.splice(i, 0, t);
  }
  s(mV, "formatArgs");
  Lt.log = console.debug || console.log || (() => {
  });
  function DV(e) {
    try {
      e ? Lt.storage.setItem("debug", e) : Lt.storage.removeItem("debug");
    } catch {
    }
  }
  s(DV, "save");
  function gV() {
    let e;
    try {
      e = Lt.storage.getItem("debug");
    } catch {
    }
    return !e && typeof process < "u" && "env" in process && (e = process.env.DEBUG), e;
  }
  s(gV, "load");
  function xV() {
    try {
      return localStorage;
    } catch {
    }
  }
  s(xV, "localstorage");
  Go.exports = gm()(Lt);
  var { formatters: yV } = Go.exports;
  yV.j = function(e) {
    try {
      return JSON.stringify(e);
    } catch (t) {
      return "[UnexpectedJSONParseError]: " + t.message;
    }
  };
});

// ../node_modules/has-flag/index.js
var zS = I((pee, US) => {
  "use strict";
  US.exports = (e, t = process.argv) => {
    let r = e.startsWith("-") ? "" : e.length === 1 ? "-" : "--", i = t.indexOf(r + e), n = t.indexOf("--");
    return i !== -1 && (n === -1 || i < n);
  };
});

// ../node_modules/supports-color/index.js
var JS = I((fee, WS) => {
  "use strict";
  var EV = require("os"), HS = require("tty"), ir = zS(), { env: ot } = process, Mi;
  ir("no-color") || ir("no-colors") || ir("color=false") || ir("color=never") ? Mi = 0 : (ir("color") || ir("colors") || ir("color=true") ||
  ir("color=always")) && (Mi = 1);
  "FORCE_COLOR" in ot && (ot.FORCE_COLOR === "true" ? Mi = 1 : ot.FORCE_COLOR === "false" ? Mi = 0 : Mi = ot.FORCE_COLOR.length === 0 ? 1 : Math.
  min(parseInt(ot.FORCE_COLOR, 10), 3));
  function xm(e) {
    return e === 0 ? !1 : {
      level: e,
      hasBasic: !0,
      has256: e >= 2,
      has16m: e >= 3
    };
  }
  s(xm, "translateLevel");
  function ym(e, t) {
    if (Mi === 0)
      return 0;
    if (ir("color=16m") || ir("color=full") || ir("color=truecolor"))
      return 3;
    if (ir("color=256"))
      return 2;
    if (e && !t && Mi === void 0)
      return 0;
    let r = Mi || 0;
    if (ot.TERM === "dumb")
      return r;
    if (process.platform === "win32") {
      let i = EV.release().split(".");
      return Number(i[0]) >= 10 && Number(i[2]) >= 10586 ? Number(i[2]) >= 14931 ? 3 : 2 : 1;
    }
    if ("CI" in ot)
      return ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI", "GITHUB_ACTIONS", "BUILDKITE"].some((i) => i in ot) || ot.CI_NAME === "codeship" ?
      1 : r;
    if ("TEAMCITY_VERSION" in ot)
      return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(ot.TEAMCITY_VERSION) ? 1 : 0;
    if (ot.COLORTERM === "truecolor")
      return 3;
    if ("TERM_PROGRAM" in ot) {
      let i = parseInt((ot.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
      switch (ot.TERM_PROGRAM) {
        case "iTerm.app":
          return i >= 3 ? 3 : 2;
        case "Apple_Terminal":
          return 2;
      }
    }
    return /-256(color)?$/i.test(ot.TERM) ? 2 : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(ot.TERM) || "COLORTERM" in
    ot ? 1 : r;
  }
  s(ym, "supportsColor");
  function bV(e) {
    let t = ym(e, e && e.isTTY);
    return xm(t);
  }
  s(bV, "getSupportLevel");
  WS.exports = {
    supportsColor: bV,
    stdout: xm(ym(!0, HS.isatty(1))),
    stderr: xm(ym(!0, HS.isatty(2)))
  };
});

// ../node_modules/debug/src/node.js
var XS = I((lt, Yo) => {
  var vV = require("tty"), Xo = require("util");
  lt.init = kV;
  lt.log = FV;
  lt.formatArgs = wV;
  lt.save = SV;
  lt.load = _V;
  lt.useColors = CV;
  lt.destroy = Xo.deprecate(
    () => {
    },
    "Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."
  );
  lt.colors = [6, 2, 3, 4, 5, 1];
  try {
    let e = JS();
    e && (e.stderr || e).level >= 2 && (lt.colors = [
      20,
      21,
      26,
      27,
      32,
      33,
      38,
      39,
      40,
      41,
      42,
      43,
      44,
      45,
      56,
      57,
      62,
      63,
      68,
      69,
      74,
      75,
      76,
      77,
      78,
      79,
      80,
      81,
      92,
      93,
      98,
      99,
      112,
      113,
      128,
      129,
      134,
      135,
      148,
      149,
      160,
      161,
      162,
      163,
      164,
      165,
      166,
      167,
      168,
      169,
      170,
      171,
      172,
      173,
      178,
      179,
      184,
      185,
      196,
      197,
      198,
      199,
      200,
      201,
      202,
      203,
      204,
      205,
      206,
      207,
      208,
      209,
      214,
      215,
      220,
      221
    ]);
  } catch {
  }
  lt.inspectOpts = Object.keys(process.env).filter((e) => /^debug_/i.test(e)).reduce((e, t) => {
    let r = t.substring(6).toLowerCase().replace(/_([a-z])/g, (n, u) => u.toUpperCase()), i = process.env[t];
    return /^(yes|on|true|enabled)$/i.test(i) ? i = !0 : /^(no|off|false|disabled)$/i.test(i) ? i = !1 : i === "null" ? i = null : i = Number(
    i), e[r] = i, e;
  }, {});
  function CV() {
    return "colors" in lt.inspectOpts ? !!lt.inspectOpts.colors : vV.isatty(process.stderr.fd);
  }
  s(CV, "useColors");
  function wV(e) {
    let { namespace: t, useColors: r } = this;
    if (r) {
      let i = this.color, n = "\x1B[3" + (i < 8 ? i : "8;5;" + i), u = `  ${n};1m${t} \x1B[0m`;
      e[0] = u + e[0].split(`
`).join(`
` + u), e.push(n + "m+" + Yo.exports.humanize(this.diff) + "\x1B[0m");
    } else
      e[0] = AV() + t + " " + e[0];
  }
  s(wV, "formatArgs");
  function AV() {
    return lt.inspectOpts.hideDate ? "" : (/* @__PURE__ */ new Date()).toISOString() + " ";
  }
  s(AV, "getDate");
  function FV(...e) {
    return process.stderr.write(Xo.formatWithOptions(lt.inspectOpts, ...e) + `
`);
  }
  s(FV, "log");
  function SV(e) {
    e ? process.env.DEBUG = e : delete process.env.DEBUG;
  }
  s(SV, "save");
  function _V() {
    return process.env.DEBUG;
  }
  s(_V, "load");
  function kV(e) {
    e.inspectOpts = {};
    let t = Object.keys(lt.inspectOpts);
    for (let r = 0; r < t.length; r++)
      e.inspectOpts[t[r]] = lt.inspectOpts[t[r]];
  }
  s(kV, "init");
  Yo.exports = gm()(lt);
  var { formatters: GS } = Yo.exports;
  GS.o = function(e) {
    return this.inspectOpts.colors = this.useColors, Xo.inspect(e, this.inspectOpts).split(`
`).map((t) => t.trim()).join(" ");
  };
  GS.O = function(e) {
    return this.inspectOpts.colors = this.useColors, Xo.inspect(e, this.inspectOpts);
  };
});

// ../node_modules/debug/src/index.js
var bm = I((Dee, Em) => {
  typeof process > "u" || process.type === "renderer" || process.browser === !0 || process.__nwjs ? Em.exports = VS() : Em.exports = XS();
});

// ../node_modules/detect-port/lib/detect-port.js
var Cm = I((gee, YS) => {
  "use strict";
  var BV = require("net"), TV = MS(), gu = bm()("detect-port");
  YS.exports = (e, t) => {
    let r = "";
    typeof e == "object" && e ? (r = e.hostname, t = e.callback, e = e.port) : typeof e == "function" && (t = e, e = null), e = parseInt(e) ||
    0;
    let i = e + 10;
    return i > 65535 && (i = 65535), gu("detect free port between [%s, %s)", e, i), typeof t == "function" ? vm(e, i, r, t) : new Promise((n) => {
      vm(e, i, r, (u, a) => {
        n(a);
      });
    });
  };
  function vm(e, t, r, i) {
    function n() {
      e++, e >= t && (gu("port: %s >= maxPort: %s, give up and use random port", e, t), e = 0, t = 0), vm(e, t, r, i);
    }
    s(n, "handleError"), r ? Du(e, r, (u, a) => {
      if (u)
        return u.code === "EADDRNOTAVAIL" ? i(new Error("the ip that is not unknown on the machine")) : n();
      i(null, a);
    }) : Du(e, null, (u, a) => {
      if (e === 0)
        return i(u, a);
      if (u)
        return n(u);
      Du(e, "0.0.0.0", (o) => {
        if (o)
          return n(o);
        Du(e, "localhost", (l) => {
          if (l && l.code !== "EADDRNOTAVAIL")
            return n(l);
          Du(e, TV.ip(), (c, h) => {
            if (c)
              return n(c);
            i(null, h);
          });
        });
      });
    });
  }
  s(vm, "tryListen");
  function Du(e, t, r) {
    let i = new BV.Server();
    i.on("error", (n) => (gu("listen %s:%s error: %s", t, e, n), i.close(), n.code === "ENOTFOUND" ? (gu("ignore dns ENOTFOUND error, get fr\
ee %s:%s", t, e), r(null, e)) : r(n))), i.listen(e, t, () => (e = i.address().port, i.close(), gu("get free %s:%s", t, e), r(null, e)));
  }
  s(Du, "listen");
});

// ../node_modules/detect-port/lib/wait-port.js
var QS = I((yee, KS) => {
  "use strict";
  var PV = bm()("wait-port"), IV = Cm(), OV = /* @__PURE__ */ s((e) => new Promise((t) => setTimeout(t, e)), "sleep");
  async function RV(e, t = {}) {
    let { retryInterval: r = 1e3, retries: i = 1 / 0 } = t, n = 1;
    async function u() {
      if (PV("retries", i, "count", n), n > i) {
        let o = new Error("retries exceeded");
        throw o.retries = i, o.count = n, o;
      }
      return n++, await IV(e) === e ? (await OV(r), u()) : !0;
    }
    return s(u, "loop"), await u();
  }
  s(RV, "waitPort");
  KS.exports = RV;
});

// ../node_modules/detect-port/index.js
var ZS = I((bee, wm) => {
  "use strict";
  wm.exports = Cm();
  wm.exports.waitPort = QS();
});

// ../node_modules/eastasianwidth/eastasianwidth.js
var Qo = I((Jee, _m) => {
  var ji = {};
  typeof _m > "u" ? window.eastasianwidth = ji : _m.exports = ji;
  ji.eastAsianWidth = function(e) {
    var t = e.charCodeAt(0), r = e.length == 2 ? e.charCodeAt(1) : 0, i = t;
    return 55296 <= t && t <= 56319 && 56320 <= r && r <= 57343 && (t &= 1023, r &= 1023, i = t << 10 | r, i += 65536), i == 12288 || 65281 <=
    i && i <= 65376 || 65504 <= i && i <= 65510 ? "F" : i == 8361 || 65377 <= i && i <= 65470 || 65474 <= i && i <= 65479 || 65482 <= i && i <=
    65487 || 65490 <= i && i <= 65495 || 65498 <= i && i <= 65500 || 65512 <= i && i <= 65518 ? "H" : 4352 <= i && i <= 4447 || 4515 <= i &&
    i <= 4519 || 4602 <= i && i <= 4607 || 9001 <= i && i <= 9002 || 11904 <= i && i <= 11929 || 11931 <= i && i <= 12019 || 12032 <= i && i <=
    12245 || 12272 <= i && i <= 12283 || 12289 <= i && i <= 12350 || 12353 <= i && i <= 12438 || 12441 <= i && i <= 12543 || 12549 <= i && i <=
    12589 || 12593 <= i && i <= 12686 || 12688 <= i && i <= 12730 || 12736 <= i && i <= 12771 || 12784 <= i && i <= 12830 || 12832 <= i && i <=
    12871 || 12880 <= i && i <= 13054 || 13056 <= i && i <= 19903 || 19968 <= i && i <= 42124 || 42128 <= i && i <= 42182 || 43360 <= i && i <=
    43388 || 44032 <= i && i <= 55203 || 55216 <= i && i <= 55238 || 55243 <= i && i <= 55291 || 63744 <= i && i <= 64255 || 65040 <= i && i <=
    65049 || 65072 <= i && i <= 65106 || 65108 <= i && i <= 65126 || 65128 <= i && i <= 65131 || 110592 <= i && i <= 110593 || 127488 <= i &&
    i <= 127490 || 127504 <= i && i <= 127546 || 127552 <= i && i <= 127560 || 127568 <= i && i <= 127569 || 131072 <= i && i <= 194367 || 177984 <=
    i && i <= 196605 || 196608 <= i && i <= 262141 ? "W" : 32 <= i && i <= 126 || 162 <= i && i <= 163 || 165 <= i && i <= 166 || i == 172 ||
    i == 175 || 10214 <= i && i <= 10221 || 10629 <= i && i <= 10630 ? "Na" : i == 161 || i == 164 || 167 <= i && i <= 168 || i == 170 || 173 <=
    i && i <= 174 || 176 <= i && i <= 180 || 182 <= i && i <= 186 || 188 <= i && i <= 191 || i == 198 || i == 208 || 215 <= i && i <= 216 ||
    222 <= i && i <= 225 || i == 230 || 232 <= i && i <= 234 || 236 <= i && i <= 237 || i == 240 || 242 <= i && i <= 243 || 247 <= i && i <=
    250 || i == 252 || i == 254 || i == 257 || i == 273 || i == 275 || i == 283 || 294 <= i && i <= 295 || i == 299 || 305 <= i && i <= 307 ||
    i == 312 || 319 <= i && i <= 322 || i == 324 || 328 <= i && i <= 331 || i == 333 || 338 <= i && i <= 339 || 358 <= i && i <= 359 || i ==
    363 || i == 462 || i == 464 || i == 466 || i == 468 || i == 470 || i == 472 || i == 474 || i == 476 || i == 593 || i == 609 || i == 708 ||
    i == 711 || 713 <= i && i <= 715 || i == 717 || i == 720 || 728 <= i && i <= 731 || i == 733 || i == 735 || 768 <= i && i <= 879 || 913 <=
    i && i <= 929 || 931 <= i && i <= 937 || 945 <= i && i <= 961 || 963 <= i && i <= 969 || i == 1025 || 1040 <= i && i <= 1103 || i == 1105 ||
    i == 8208 || 8211 <= i && i <= 8214 || 8216 <= i && i <= 8217 || 8220 <= i && i <= 8221 || 8224 <= i && i <= 8226 || 8228 <= i && i <= 8231 ||
    i == 8240 || 8242 <= i && i <= 8243 || i == 8245 || i == 8251 || i == 8254 || i == 8308 || i == 8319 || 8321 <= i && i <= 8324 || i == 8364 ||
    i == 8451 || i == 8453 || i == 8457 || i == 8467 || i == 8470 || 8481 <= i && i <= 8482 || i == 8486 || i == 8491 || 8531 <= i && i <= 8532 ||
    8539 <= i && i <= 8542 || 8544 <= i && i <= 8555 || 8560 <= i && i <= 8569 || i == 8585 || 8592 <= i && i <= 8601 || 8632 <= i && i <= 8633 ||
    i == 8658 || i == 8660 || i == 8679 || i == 8704 || 8706 <= i && i <= 8707 || 8711 <= i && i <= 8712 || i == 8715 || i == 8719 || i == 8721 ||
    i == 8725 || i == 8730 || 8733 <= i && i <= 8736 || i == 8739 || i == 8741 || 8743 <= i && i <= 8748 || i == 8750 || 8756 <= i && i <= 8759 ||
    8764 <= i && i <= 8765 || i == 8776 || i == 8780 || i == 8786 || 8800 <= i && i <= 8801 || 8804 <= i && i <= 8807 || 8810 <= i && i <= 8811 ||
    8814 <= i && i <= 8815 || 8834 <= i && i <= 8835 || 8838 <= i && i <= 8839 || i == 8853 || i == 8857 || i == 8869 || i == 8895 || i == 8978 ||
    9312 <= i && i <= 9449 || 9451 <= i && i <= 9547 || 9552 <= i && i <= 9587 || 9600 <= i && i <= 9615 || 9618 <= i && i <= 9621 || 9632 <=
    i && i <= 9633 || 9635 <= i && i <= 9641 || 9650 <= i && i <= 9651 || 9654 <= i && i <= 9655 || 9660 <= i && i <= 9661 || 9664 <= i && i <=
    9665 || 9670 <= i && i <= 9672 || i == 9675 || 9678 <= i && i <= 9681 || 9698 <= i && i <= 9701 || i == 9711 || 9733 <= i && i <= 9734 ||
    i == 9737 || 9742 <= i && i <= 9743 || 9748 <= i && i <= 9749 || i == 9756 || i == 9758 || i == 9792 || i == 9794 || 9824 <= i && i <= 9825 ||
    9827 <= i && i <= 9829 || 9831 <= i && i <= 9834 || 9836 <= i && i <= 9837 || i == 9839 || 9886 <= i && i <= 9887 || 9918 <= i && i <= 9919 ||
    9924 <= i && i <= 9933 || 9935 <= i && i <= 9953 || i == 9955 || 9960 <= i && i <= 9983 || i == 10045 || i == 10071 || 10102 <= i && i <=
    10111 || 11093 <= i && i <= 11097 || 12872 <= i && i <= 12879 || 57344 <= i && i <= 63743 || 65024 <= i && i <= 65039 || i == 65533 || 127232 <=
    i && i <= 127242 || 127248 <= i && i <= 127277 || 127280 <= i && i <= 127337 || 127344 <= i && i <= 127386 || 917760 <= i && i <= 917999 ||
    983040 <= i && i <= 1048573 || 1048576 <= i && i <= 1114109 ? "A" : "N";
  };
  ji.characterLength = function(e) {
    var t = this.eastAsianWidth(e);
    return t == "F" || t == "W" || t == "A" ? 2 : 1;
  };
  function p3(e) {
    return e.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g) || [];
  }
  s(p3, "stringToArray");
  ji.length = function(e) {
    for (var t = p3(e), r = 0, i = 0; i < t.length; i++)
      r = r + this.characterLength(t[i]);
    return r;
  };
  ji.slice = function(e, t, r) {
    textLen = ji.length(e), t = t || 0, r = r || 1, t < 0 && (t = textLen + t), r < 0 && (r = textLen + r);
    for (var i = "", n = 0, u = p3(e), a = 0; a < u.length; a++) {
      var o = u[a], l = ji.length(o);
      if (n >= t - (l == 2 ? 1 : 0))
        if (n + l <= r)
          i += o;
        else
          break;
      n += l;
    }
    return i;
  };
});

// ../node_modules/emoji-regex/index.js
var Zo = I((Xee, f3) => {
  "use strict";
  f3.exports = function() {
    return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
  };
});

// ../node_modules/cli-boxes/boxes.json
var k3 = I((yte, QV) => {
  QV.exports = {
    single: {
      topLeft: "\u250C",
      top: "\u2500",
      topRight: "\u2510",
      right: "\u2502",
      bottomRight: "\u2518",
      bottom: "\u2500",
      bottomLeft: "\u2514",
      left: "\u2502"
    },
    double: {
      topLeft: "\u2554",
      top: "\u2550",
      topRight: "\u2557",
      right: "\u2551",
      bottomRight: "\u255D",
      bottom: "\u2550",
      bottomLeft: "\u255A",
      left: "\u2551"
    },
    round: {
      topLeft: "\u256D",
      top: "\u2500",
      topRight: "\u256E",
      right: "\u2502",
      bottomRight: "\u256F",
      bottom: "\u2500",
      bottomLeft: "\u2570",
      left: "\u2502"
    },
    bold: {
      topLeft: "\u250F",
      top: "\u2501",
      topRight: "\u2513",
      right: "\u2503",
      bottomRight: "\u251B",
      bottom: "\u2501",
      bottomLeft: "\u2517",
      left: "\u2503"
    },
    singleDouble: {
      topLeft: "\u2553",
      top: "\u2500",
      topRight: "\u2556",
      right: "\u2551",
      bottomRight: "\u255C",
      bottom: "\u2500",
      bottomLeft: "\u2559",
      left: "\u2551"
    },
    doubleSingle: {
      topLeft: "\u2552",
      top: "\u2550",
      topRight: "\u2555",
      right: "\u2502",
      bottomRight: "\u255B",
      bottom: "\u2550",
      bottomLeft: "\u2558",
      left: "\u2502"
    },
    classic: {
      topLeft: "+",
      top: "-",
      topRight: "+",
      right: "|",
      bottomRight: "+",
      bottom: "-",
      bottomLeft: "+",
      left: "|"
    },
    arrow: {
      topLeft: "\u2198",
      top: "\u2193",
      topRight: "\u2199",
      right: "\u2190",
      bottomRight: "\u2196",
      bottom: "\u2191",
      bottomLeft: "\u2197",
      left: "\u2192"
    }
  };
});

// ../node_modules/cli-boxes/index.js
var Rm = I((Ete, Om) => {
  "use strict";
  var B3 = k3();
  Om.exports = B3;
  Om.exports.default = B3;
});

// ../node_modules/string-width/node_modules/ansi-regex/index.js
var N3 = I((Cte, R3) => {
  "use strict";
  R3.exports = ({ onlyFirst: e = !1 } = {}) => {
    let t = [
      "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
      "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
    ].join("|");
    return new RegExp(t, e ? void 0 : "g");
  };
});

// ../node_modules/string-width/node_modules/strip-ansi/index.js
var M3 = I((wte, L3) => {
  "use strict";
  var sU = N3();
  L3.exports = (e) => typeof e == "string" ? e.replace(sU(), "") : e;
});

// ../node_modules/is-fullwidth-code-point/index.js
var q3 = I((Ate, Mm) => {
  "use strict";
  var j3 = /* @__PURE__ */ s((e) => Number.isNaN(e) ? !1 : e >= 4352 && (e <= 4447 || // Hangul Jamo
  e === 9001 || // LEFT-POINTING ANGLE BRACKET
  e === 9002 || // RIGHT-POINTING ANGLE BRACKET
  // CJK Radicals Supplement .. Enclosed CJK Letters and Months
  11904 <= e && e <= 12871 && e !== 12351 || // Enclosed CJK Letters and Months .. CJK Unified Ideographs Extension A
  12880 <= e && e <= 19903 || // CJK Unified Ideographs .. Yi Radicals
  19968 <= e && e <= 42182 || // Hangul Jamo Extended-A
  43360 <= e && e <= 43388 || // Hangul Syllables
  44032 <= e && e <= 55203 || // CJK Compatibility Ideographs
  63744 <= e && e <= 64255 || // Vertical Forms
  65040 <= e && e <= 65049 || // CJK Compatibility Forms .. Small Form Variants
  65072 <= e && e <= 65131 || // Halfwidth and Fullwidth Forms
  65281 <= e && e <= 65376 || 65504 <= e && e <= 65510 || // Kana Supplement
  110592 <= e && e <= 110593 || // Enclosed Ideographic Supplement
  127488 <= e && e <= 127569 || // CJK Unified Ideographs Extension B .. Tertiary Ideographic Plane
  131072 <= e && e <= 262141), "isFullwidthCodePoint");
  Mm.exports = j3;
  Mm.exports.default = j3;
});

// ../node_modules/string-width/node_modules/emoji-regex/index.js
var V3 = I((Ste, $3) => {
  "use strict";
  $3.exports = function() {
    return /\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F|\uD83D\uDC68(?:\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68\uD83C\uDFFB|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|[\u2695\u2696\u2708]\uFE0F|\uD83D[\uDC66\uDC67]|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708])\uFE0F|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C[\uDFFB-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)\uD83C\uDFFB|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB\uDFFC])|\uD83D\uDC69(?:\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D\uD83D\uDC69)(?:\uD83C[\uDFFB-\uDFFD])|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|(?:(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)\uFE0F|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:(?:\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\u200D[\u2640\u2642])|\uD83C\uDFF4\u200D\u2620)\uFE0F|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF4\uD83C\uDDF2|\uD83C\uDDF6\uD83C\uDDE6|[#\*0-9]\uFE0F\u20E3|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83D\uDC69(?:\uD83C[\uDFFB-\uDFFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270A-\u270D]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC70\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDCAA\uDD74\uDD7A\uDD90\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD36\uDDB5\uDDB6\uDDBB\uDDD2-\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5\uDEEB\uDEEC\uDEF4-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFA\uDFE0-\uDFEB]|\uD83E[\uDD0D-\uDD3A\uDD3C-\uDD45\uDD47-\uDD71\uDD73-\uDD76\uDD7A-\uDDA2\uDDA5-\uDDAA\uDDAE-\uDDCA\uDDCD-\uDDFF\uDE70-\uDE73\uDE78-\uDE7A\uDE80-\uDE82\uDE90-\uDE95])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g;
  };
});

// ../node_modules/string-width/index.js
var qm = I((_te, jm) => {
  "use strict";
  var uU = M3(), aU = q3(), oU = V3(), U3 = /* @__PURE__ */ s((e) => {
    if (typeof e != "string" || e.length === 0 || (e = uU(e), e.length === 0))
      return 0;
    e = e.replace(oU(), "  ");
    let t = 0;
    for (let r = 0; r < e.length; r++) {
      let i = e.codePointAt(r);
      i <= 31 || i >= 127 && i <= 159 || i >= 768 && i <= 879 || (i > 65535 && r++, t += aU(i) ? 2 : 1);
    }
    return t;
  }, "stringWidth");
  jm.exports = U3;
  jm.exports.default = U3;
});

// ../node_modules/ansi-align/index.js
var H3 = I((Bte, z3) => {
  "use strict";
  var lU = qm();
  function pn(e, t) {
    if (!e) return e;
    t = t || {};
    let r = t.align || "center";
    if (r === "left") return e;
    let i = t.split || `
`, n = t.pad || " ", u = r !== "right" ? cU : hU, a = !1;
    Array.isArray(e) || (a = !0, e = String(e).split(i));
    let o, l = 0;
    return e = e.map(function(c) {
      return c = String(c), o = lU(c), l = Math.max(o, l), {
        str: c,
        width: o
      };
    }).map(function(c) {
      return new Array(u(l, c.width) + 1).join(n) + c.str;
    }), a ? e.join(i) : e;
  }
  s(pn, "ansiAlign");
  pn.left = /* @__PURE__ */ s(function(t) {
    return pn(t, { align: "left" });
  }, "left");
  pn.center = /* @__PURE__ */ s(function(t) {
    return pn(t, { align: "center" });
  }, "center");
  pn.right = /* @__PURE__ */ s(function(t) {
    return pn(t, { align: "right" });
  }, "right");
  z3.exports = pn;
  function cU(e, t) {
    return Math.floor((e - t) / 2);
  }
  s(cU, "halfDiff");
  function hU(e, t) {
    return e - t;
  }
  s(hU, "fullDiff");
});

// ../node_modules/cli-table3/src/debug.js
var ul = I((Kte, o_) => {
  var Jm = [], a_ = 0, dt = /* @__PURE__ */ s((e, t) => {
    a_ >= t && Jm.push(e);
  }, "debug");
  dt.WARN = 1;
  dt.INFO = 2;
  dt.DEBUG = 3;
  dt.reset = () => {
    Jm = [];
  };
  dt.setDebugLevel = (e) => {
    a_ = e;
  };
  dt.warn = (e) => dt(e, dt.WARN);
  dt.info = (e) => dt(e, dt.INFO);
  dt.debug = (e) => dt(e, dt.DEBUG);
  dt.debugMessages = () => Jm;
  o_.exports = dt;
});

// ../node_modules/cli-table3/src/utils.js
var Gm = I((Zte, p_) => {
  var l_ = qm();
  function al(e) {
    return e ? /\u001b\[((?:\d*;){0,5}\d*)m/g : /\u001b\[(?:\d*;){0,5}\d*m/g;
  }
  s(al, "codeRegex");
  function Vr(e) {
    let t = al();
    return ("" + e).replace(t, "").split(`
`).reduce(function(n, u) {
      return l_(u) > n ? l_(u) : n;
    }, 0);
  }
  s(Vr, "strlen");
  function Cu(e, t) {
    return Array(t + 1).join(e);
  }
  s(Cu, "repeat");
  function BU(e, t, r, i) {
    let n = Vr(e);
    if (t + 1 >= n) {
      let u = t - n;
      switch (i) {
        case "right": {
          e = Cu(r, u) + e;
          break;
        }
        case "center": {
          let a = Math.ceil(u / 2), o = u - a;
          e = Cu(r, o) + e + Cu(r, a);
          break;
        }
        default: {
          e = e + Cu(r, u);
          break;
        }
      }
    }
    return e;
  }
  s(BU, "pad");
  var hs = {};
  function wu(e, t, r) {
    t = "\x1B[" + t + "m", r = "\x1B[" + r + "m", hs[t] = { set: e, to: !0 }, hs[r] = { set: e, to: !1 }, hs[e] = { on: t, off: r };
  }
  s(wu, "addToCodeCache");
  wu("bold", 1, 22);
  wu("italics", 3, 23);
  wu("underline", 4, 24);
  wu("inverse", 7, 27);
  wu("strikethrough", 9, 29);
  function c_(e, t) {
    let r = t[1] ? parseInt(t[1].split(";")[0]) : 0;
    if (r >= 30 && r <= 39 || r >= 90 && r <= 97) {
      e.lastForegroundAdded = t[0];
      return;
    }
    if (r >= 40 && r <= 49 || r >= 100 && r <= 107) {
      e.lastBackgroundAdded = t[0];
      return;
    }
    if (r === 0) {
      for (let n in e)
        Object.prototype.hasOwnProperty.call(e, n) && delete e[n];
      return;
    }
    let i = hs[t[0]];
    i && (e[i.set] = i.to);
  }
  s(c_, "updateState");
  function TU(e) {
    let t = al(!0), r = t.exec(e), i = {};
    for (; r !== null; )
      c_(i, r), r = t.exec(e);
    return i;
  }
  s(TU, "readState");
  function h_(e, t) {
    let r = e.lastBackgroundAdded, i = e.lastForegroundAdded;
    return delete e.lastBackgroundAdded, delete e.lastForegroundAdded, Object.keys(e).forEach(function(n) {
      e[n] && (t += hs[n].off);
    }), r && r != "\x1B[49m" && (t += "\x1B[49m"), i && i != "\x1B[39m" && (t += "\x1B[39m"), t;
  }
  s(h_, "unwindState");
  function PU(e, t) {
    let r = e.lastBackgroundAdded, i = e.lastForegroundAdded;
    return delete e.lastBackgroundAdded, delete e.lastForegroundAdded, Object.keys(e).forEach(function(n) {
      e[n] && (t = hs[n].on + t);
    }), r && r != "\x1B[49m" && (t = r + t), i && i != "\x1B[39m" && (t = i + t), t;
  }
  s(PU, "rewindState");
  function IU(e, t) {
    if (e.length === Vr(e))
      return e.substr(0, t);
    for (; Vr(e) > t; )
      e = e.slice(0, -1);
    return e;
  }
  s(IU, "truncateWidth");
  function OU(e, t) {
    let r = al(!0), i = e.split(al()), n = 0, u = 0, a = "", o, l = {};
    for (; u < t; ) {
      o = r.exec(e);
      let c = i[n];
      if (n++, u + Vr(c) > t && (c = IU(c, t - u)), a += c, u += Vr(c), u < t) {
        if (!o)
          break;
        a += o[0], c_(l, o);
      }
    }
    return h_(l, a);
  }
  s(OU, "truncateWidthWithAnsi");
  function RU(e, t, r) {
    return r = r || "\u2026", Vr(e) <= t ? e : (t -= Vr(r), OU(e, t) + r);
  }
  s(RU, "truncate");
  function NU() {
    return {
      chars: {
        top: "\u2500",
        "top-mid": "\u252C",
        "top-left": "\u250C",
        "top-right": "\u2510",
        bottom: "\u2500",
        "bottom-mid": "\u2534",
        "bottom-left": "\u2514",
        "bottom-right": "\u2518",
        left: "\u2502",
        "left-mid": "\u251C",
        mid: "\u2500",
        "mid-mid": "\u253C",
        right: "\u2502",
        "right-mid": "\u2524",
        middle: "\u2502"
      },
      truncate: "\u2026",
      colWidths: [],
      rowHeights: [],
      colAligns: [],
      rowAligns: [],
      style: {
        "padding-left": 1,
        "padding-right": 1,
        head: ["red"],
        border: ["grey"],
        compact: !1
      },
      head: []
    };
  }
  s(NU, "defaultOptions");
  function LU(e, t) {
    e = e || {}, t = t || NU();
    let r = Object.assign({}, t, e);
    return r.chars = Object.assign({}, t.chars, e.chars), r.style = Object.assign({}, t.style, e.style), r;
  }
  s(LU, "mergeOptions");
  function MU(e, t) {
    let r = [], i = t.split(/(\s+)/g), n = [], u = 0, a;
    for (let o = 0; o < i.length; o += 2) {
      let l = i[o], c = u + Vr(l);
      u > 0 && a && (c += a.length), c > e ? (u !== 0 && r.push(n.join("")), n = [l], u = Vr(l)) : (n.push(a || "", l), u = c), a = i[o + 1];
    }
    return u && r.push(n.join("")), r;
  }
  s(MU, "wordWrap");
  function jU(e, t) {
    let r = [], i = "";
    function n(a, o) {
      for (i.length && o && (i += o), i += a; i.length > e; )
        r.push(i.slice(0, e)), i = i.slice(e);
    }
    s(n, "pushLine");
    let u = t.split(/(\s+)/g);
    for (let a = 0; a < u.length; a += 2)
      n(u[a], a && u[a - 1]);
    return i.length && r.push(i), r;
  }
  s(jU, "textWrap");
  function qU(e, t, r = !0) {
    let i = [];
    t = t.split(`
`);
    let n = r ? MU : jU;
    for (let u = 0; u < t.length; u++)
      i.push.apply(i, n(e, t[u]));
    return i;
  }
  s(qU, "multiLineWordWrap");
  function $U(e) {
    let t = {}, r = [];
    for (let i = 0; i < e.length; i++) {
      let n = PU(t, e[i]);
      t = TU(n);
      let u = Object.assign({}, t);
      r.push(h_(u, n));
    }
    return r;
  }
  s($U, "colorizeLines");
  function VU(e, t) {
    let r = "\x1B]", i = "\x07", n = ";";
    return [r, "8", n, n, e || t, i, t, r, "8", n, n, i].join("");
  }
  s(VU, "hyperlink");
  p_.exports = {
    strlen: Vr,
    repeat: Cu,
    pad: BU,
    truncate: RU,
    mergeOptions: LU,
    wordWrap: qU,
    colorizeLines: $U,
    hyperlink: VU
  };
});

// ../node_modules/@colors/colors/lib/styles.js
var D_ = I((tre, m_) => {
  var d_ = {};
  m_.exports = d_;
  var f_ = {
    reset: [0, 0],
    bold: [1, 22],
    dim: [2, 22],
    italic: [3, 23],
    underline: [4, 24],
    inverse: [7, 27],
    hidden: [8, 28],
    strikethrough: [9, 29],
    black: [30, 39],
    red: [31, 39],
    green: [32, 39],
    yellow: [33, 39],
    blue: [34, 39],
    magenta: [35, 39],
    cyan: [36, 39],
    white: [37, 39],
    gray: [90, 39],
    grey: [90, 39],
    brightRed: [91, 39],
    brightGreen: [92, 39],
    brightYellow: [93, 39],
    brightBlue: [94, 39],
    brightMagenta: [95, 39],
    brightCyan: [96, 39],
    brightWhite: [97, 39],
    bgBlack: [40, 49],
    bgRed: [41, 49],
    bgGreen: [42, 49],
    bgYellow: [43, 49],
    bgBlue: [44, 49],
    bgMagenta: [45, 49],
    bgCyan: [46, 49],
    bgWhite: [47, 49],
    bgGray: [100, 49],
    bgGrey: [100, 49],
    bgBrightRed: [101, 49],
    bgBrightGreen: [102, 49],
    bgBrightYellow: [103, 49],
    bgBrightBlue: [104, 49],
    bgBrightMagenta: [105, 49],
    bgBrightCyan: [106, 49],
    bgBrightWhite: [107, 49],
    // legacy styles for colors pre v1.0.0
    blackBG: [40, 49],
    redBG: [41, 49],
    greenBG: [42, 49],
    yellowBG: [43, 49],
    blueBG: [44, 49],
    magentaBG: [45, 49],
    cyanBG: [46, 49],
    whiteBG: [47, 49]
  };
  Object.keys(f_).forEach(function(e) {
    var t = f_[e], r = d_[e] = [];
    r.open = "\x1B[" + t[0] + "m", r.close = "\x1B[" + t[1] + "m";
  });
});

// ../node_modules/@colors/colors/lib/system/has-flag.js
var x_ = I((rre, g_) => {
  "use strict";
  g_.exports = function(e, t) {
    t = t || process.argv;
    var r = t.indexOf("--"), i = /^-{1,2}/.test(e) ? "" : "--", n = t.indexOf(i + e);
    return n !== -1 && (r === -1 ? !0 : n < r);
  };
});

// ../node_modules/@colors/colors/lib/system/supports-colors.js
var E_ = I((ire, y_) => {
  "use strict";
  var UU = require("os"), Er = x_(), vt = process.env, ps = void 0;
  Er("no-color") || Er("no-colors") || Er("color=false") ? ps = !1 : (Er("color") || Er("colors") || Er("color=true") || Er("color=always")) &&
  (ps = !0);
  "FORCE_COLOR" in vt && (ps = vt.FORCE_COLOR.length === 0 || parseInt(vt.FORCE_COLOR, 10) !== 0);
  function zU(e) {
    return e === 0 ? !1 : {
      level: e,
      hasBasic: !0,
      has256: e >= 2,
      has16m: e >= 3
    };
  }
  s(zU, "translateLevel");
  function HU(e) {
    if (ps === !1)
      return 0;
    if (Er("color=16m") || Er("color=full") || Er("color=truecolor"))
      return 3;
    if (Er("color=256"))
      return 2;
    if (e && !e.isTTY && ps !== !0)
      return 0;
    var t = ps ? 1 : 0;
    if (process.platform === "win32") {
      var r = UU.release().split(".");
      return Number(process.versions.node.split(".")[0]) >= 8 && Number(r[0]) >= 10 && Number(r[2]) >= 10586 ? Number(r[2]) >= 14931 ? 3 : 2 :
      1;
    }
    if ("CI" in vt)
      return ["TRAVIS", "CIRCLECI", "APPVEYOR", "GITLAB_CI"].some(function(n) {
        return n in vt;
      }) || vt.CI_NAME === "codeship" ? 1 : t;
    if ("TEAMCITY_VERSION" in vt)
      return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(vt.TEAMCITY_VERSION) ? 1 : 0;
    if ("TERM_PROGRAM" in vt) {
      var i = parseInt((vt.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
      switch (vt.TERM_PROGRAM) {
        case "iTerm.app":
          return i >= 3 ? 3 : 2;
        case "Hyper":
          return 3;
        case "Apple_Terminal":
          return 2;
      }
    }
    return /-256(color)?$/i.test(vt.TERM) ? 2 : /^screen|^xterm|^vt100|^rxvt|color|ansi|cygwin|linux/i.test(vt.TERM) || "COLORTERM" in vt ? 1 :
    (vt.TERM === "dumb", t);
  }
  s(HU, "supportsColor");
  function Xm(e) {
    var t = HU(e);
    return zU(t);
  }
  s(Xm, "getSupportLevel");
  y_.exports = {
    supportsColor: Xm,
    stdout: Xm(process.stdout),
    stderr: Xm(process.stderr)
  };
});

// ../node_modules/@colors/colors/lib/custom/trap.js
var v_ = I((sre, b_) => {
  b_.exports = /* @__PURE__ */ s(function(t, r) {
    var i = "";
    t = t || "Run the trap, drop the bass", t = t.split("");
    var n = {
      a: ["@", "\u0104", "\u023A", "\u0245", "\u0394", "\u039B", "\u0414"],
      b: ["\xDF", "\u0181", "\u0243", "\u026E", "\u03B2", "\u0E3F"],
      c: ["\xA9", "\u023B", "\u03FE"],
      d: ["\xD0", "\u018A", "\u0500", "\u0501", "\u0502", "\u0503"],
      e: [
        "\xCB",
        "\u0115",
        "\u018E",
        "\u0258",
        "\u03A3",
        "\u03BE",
        "\u04BC",
        "\u0A6C"
      ],
      f: ["\u04FA"],
      g: ["\u0262"],
      h: ["\u0126", "\u0195", "\u04A2", "\u04BA", "\u04C7", "\u050A"],
      i: ["\u0F0F"],
      j: ["\u0134"],
      k: ["\u0138", "\u04A0", "\u04C3", "\u051E"],
      l: ["\u0139"],
      m: ["\u028D", "\u04CD", "\u04CE", "\u0520", "\u0521", "\u0D69"],
      n: ["\xD1", "\u014B", "\u019D", "\u0376", "\u03A0", "\u048A"],
      o: [
        "\xD8",
        "\xF5",
        "\xF8",
        "\u01FE",
        "\u0298",
        "\u047A",
        "\u05DD",
        "\u06DD",
        "\u0E4F"
      ],
      p: ["\u01F7", "\u048E"],
      q: ["\u09CD"],
      r: ["\xAE", "\u01A6", "\u0210", "\u024C", "\u0280", "\u042F"],
      s: ["\xA7", "\u03DE", "\u03DF", "\u03E8"],
      t: ["\u0141", "\u0166", "\u0373"],
      u: ["\u01B1", "\u054D"],
      v: ["\u05D8"],
      w: ["\u0428", "\u0460", "\u047C", "\u0D70"],
      x: ["\u04B2", "\u04FE", "\u04FC", "\u04FD"],
      y: ["\xA5", "\u04B0", "\u04CB"],
      z: ["\u01B5", "\u0240"]
    };
    return t.forEach(function(u) {
      u = u.toLowerCase();
      var a = n[u] || [" "], o = Math.floor(Math.random() * a.length);
      typeof n[u] < "u" ? i += n[u][o] : i += u;
    }), i;
  }, "runTheTrap");
});

// ../node_modules/@colors/colors/lib/custom/zalgo.js
var w_ = I((are, C_) => {
  C_.exports = /* @__PURE__ */ s(function(t, r) {
    t = t || "   he is here   ";
    var i = {
      up: [
        "\u030D",
        "\u030E",
        "\u0304",
        "\u0305",
        "\u033F",
        "\u0311",
        "\u0306",
        "\u0310",
        "\u0352",
        "\u0357",
        "\u0351",
        "\u0307",
        "\u0308",
        "\u030A",
        "\u0342",
        "\u0313",
        "\u0308",
        "\u034A",
        "\u034B",
        "\u034C",
        "\u0303",
        "\u0302",
        "\u030C",
        "\u0350",
        "\u0300",
        "\u0301",
        "\u030B",
        "\u030F",
        "\u0312",
        "\u0313",
        "\u0314",
        "\u033D",
        "\u0309",
        "\u0363",
        "\u0364",
        "\u0365",
        "\u0366",
        "\u0367",
        "\u0368",
        "\u0369",
        "\u036A",
        "\u036B",
        "\u036C",
        "\u036D",
        "\u036E",
        "\u036F",
        "\u033E",
        "\u035B",
        "\u0346",
        "\u031A"
      ],
      down: [
        "\u0316",
        "\u0317",
        "\u0318",
        "\u0319",
        "\u031C",
        "\u031D",
        "\u031E",
        "\u031F",
        "\u0320",
        "\u0324",
        "\u0325",
        "\u0326",
        "\u0329",
        "\u032A",
        "\u032B",
        "\u032C",
        "\u032D",
        "\u032E",
        "\u032F",
        "\u0330",
        "\u0331",
        "\u0332",
        "\u0333",
        "\u0339",
        "\u033A",
        "\u033B",
        "\u033C",
        "\u0345",
        "\u0347",
        "\u0348",
        "\u0349",
        "\u034D",
        "\u034E",
        "\u0353",
        "\u0354",
        "\u0355",
        "\u0356",
        "\u0359",
        "\u035A",
        "\u0323"
      ],
      mid: [
        "\u0315",
        "\u031B",
        "\u0300",
        "\u0301",
        "\u0358",
        "\u0321",
        "\u0322",
        "\u0327",
        "\u0328",
        "\u0334",
        "\u0335",
        "\u0336",
        "\u035C",
        "\u035D",
        "\u035E",
        "\u035F",
        "\u0360",
        "\u0362",
        "\u0338",
        "\u0337",
        "\u0361",
        " \u0489"
      ]
    }, n = [].concat(i.up, i.down, i.mid);
    function u(l) {
      var c = Math.floor(Math.random() * l);
      return c;
    }
    s(u, "randomNumber");
    function a(l) {
      var c = !1;
      return n.filter(function(h) {
        c = h === l;
      }), c;
    }
    s(a, "isChar");
    function o(l, c) {
      var h = "", p, d;
      c = c || {}, c.up = typeof c.up < "u" ? c.up : !0, c.mid = typeof c.mid < "u" ? c.mid : !0, c.down = typeof c.down < "u" ? c.down : !0,
      c.size = typeof c.size < "u" ? c.size : "maxi", l = l.split("");
      for (d in l)
        if (!a(d)) {
          switch (h = h + l[d], p = { up: 0, down: 0, mid: 0 }, c.size) {
            case "mini":
              p.up = u(8), p.mid = u(2), p.down = u(8);
              break;
            case "maxi":
              p.up = u(16) + 3, p.mid = u(4) + 1, p.down = u(64) + 3;
              break;
            default:
              p.up = u(8) + 1, p.mid = u(6) / 2, p.down = u(8) + 1;
              break;
          }
          var m = ["up", "mid", "down"];
          for (var D in m)
            for (var g = m[D], v = 0; v <= p[g]; v++)
              c[g] && (h = h + i[g][u(i[g].length)]);
        }
      return h;
    }
    return s(o, "heComes"), o(t, r);
  }, "zalgo");
});

// ../node_modules/@colors/colors/lib/maps/america.js
var F_ = I((lre, A_) => {
  A_.exports = function(e) {
    return function(t, r, i) {
      if (t === " ") return t;
      switch (r % 3) {
        case 0:
          return e.red(t);
        case 1:
          return e.white(t);
        case 2:
          return e.blue(t);
      }
    };
  };
});

// ../node_modules/@colors/colors/lib/maps/zebra.js
var __ = I((cre, S_) => {
  S_.exports = function(e) {
    return function(t, r, i) {
      return r % 2 === 0 ? t : e.inverse(t);
    };
  };
});

// ../node_modules/@colors/colors/lib/maps/rainbow.js
var B_ = I((hre, k_) => {
  k_.exports = function(e) {
    var t = ["red", "yellow", "green", "blue", "magenta"];
    return function(r, i, n) {
      return r === " " ? r : e[t[i++ % t.length]](r);
    };
  };
});

// ../node_modules/@colors/colors/lib/maps/random.js
var P_ = I((pre, T_) => {
  T_.exports = function(e) {
    var t = [
      "underline",
      "inverse",
      "grey",
      "yellow",
      "red",
      "green",
      "blue",
      "white",
      "cyan",
      "magenta",
      "brightYellow",
      "brightRed",
      "brightGreen",
      "brightBlue",
      "brightWhite",
      "brightCyan",
      "brightMagenta"
    ];
    return function(r, i, n) {
      return r === " " ? r : e[t[Math.round(Math.random() * (t.length - 2))]](r);
    };
  };
});

// ../node_modules/@colors/colors/lib/colors.js
var M_ = I((dre, L_) => {
  var ye = {};
  L_.exports = ye;
  ye.themes = {};
  var WU = require("util"), dn = ye.styles = D_(), O_ = Object.defineProperties, JU = new RegExp(/[\r\n]+/g);
  ye.supportsColor = E_().supportsColor;
  typeof ye.enabled > "u" && (ye.enabled = ye.supportsColor() !== !1);
  ye.enable = function() {
    ye.enabled = !0;
  };
  ye.disable = function() {
    ye.enabled = !1;
  };
  ye.stripColors = ye.strip = function(e) {
    return ("" + e).replace(/\x1B\[\d+m/g, "");
  };
  var fre = ye.stylize = /* @__PURE__ */ s(function(t, r) {
    if (!ye.enabled)
      return t + "";
    var i = dn[r];
    return !i && r in ye ? ye[r](t) : i.open + t + i.close;
  }, "stylize"), GU = /[|\\{}()[\]^$+*?.]/g, XU = /* @__PURE__ */ s(function(e) {
    if (typeof e != "string")
      throw new TypeError("Expected a string");
    return e.replace(GU, "\\$&");
  }, "escapeStringRegexp");
  function R_(e) {
    var t = /* @__PURE__ */ s(function r() {
      return KU.apply(r, arguments);
    }, "builder");
    return t._styles = e, t.__proto__ = YU, t;
  }
  s(R_, "build");
  var N_ = function() {
    var e = {};
    return dn.grey = dn.gray, Object.keys(dn).forEach(function(t) {
      dn[t].closeRe = new RegExp(XU(dn[t].close), "g"), e[t] = {
        get: /* @__PURE__ */ s(function() {
          return R_(this._styles.concat(t));
        }, "get")
      };
    }), e;
  }(), YU = O_(/* @__PURE__ */ s(function() {
  }, "colors"), N_);
  function KU() {
    var e = Array.prototype.slice.call(arguments), t = e.map(function(a) {
      return a != null && a.constructor === String ? a : WU.inspect(a);
    }).join(" ");
    if (!ye.enabled || !t)
      return t;
    for (var r = t.indexOf(`
`) != -1, i = this._styles, n = i.length; n--; ) {
      var u = dn[i[n]];
      t = u.open + t.replace(u.closeRe, u.open) + u.close, r && (t = t.replace(JU, function(a) {
        return u.close + a + u.open;
      }));
    }
    return t;
  }
  s(KU, "applyStyle");
  ye.setTheme = function(e) {
    if (typeof e == "string") {
      console.log("colors.setTheme now only accepts an object, not a string.  If you are trying to set a theme from a file, it is now your (\
the caller's) responsibility to require the file.  The old syntax looked like colors.setTheme(__dirname + '/../themes/generic-logging.js'); \
The new syntax looks like colors.setTheme(require(__dirname + '/../themes/generic-logging.js'));");
      return;
    }
    for (var t in e)
      (function(r) {
        ye[r] = function(i) {
          if (typeof e[r] == "object") {
            var n = i;
            for (var u in e[r])
              n = ye[e[r][u]](n);
            return n;
          }
          return ye[e[r]](i);
        };
      })(t);
  };
  function QU() {
    var e = {};
    return Object.keys(N_).forEach(function(t) {
      e[t] = {
        get: /* @__PURE__ */ s(function() {
          return R_([t]);
        }, "get")
      };
    }), e;
  }
  s(QU, "init");
  var ZU = /* @__PURE__ */ s(function(t, r) {
    var i = r.split("");
    return i = i.map(t), i.join("");
  }, "sequencer");
  ye.trap = v_();
  ye.zalgo = w_();
  ye.maps = {};
  ye.maps.america = F_()(ye);
  ye.maps.zebra = __()(ye);
  ye.maps.rainbow = B_()(ye);
  ye.maps.random = P_()(ye);
  for (I_ in ye.maps)
    (function(e) {
      ye[e] = function(t) {
        return ZU(ye.maps[e], t);
      };
    })(I_);
  var I_;
  O_(ye, QU());
});

// ../node_modules/@colors/colors/safe.js
var q_ = I((Dre, j_) => {
  var ez = M_();
  j_.exports = ez;
});

// ../node_modules/cli-table3/src/cell.js
var z_ = I((gre, ol) => {
  var { info: tz, debug: U_ } = ul(), Mt = Gm(), Km = class e {
    static {
      s(this, "Cell");
    }
    /**
     * A representation of a cell within the table.
     * Implementations must have `init` and `draw` methods,
     * as well as `colSpan`, `rowSpan`, `desiredHeight` and `desiredWidth` properties.
     * @param options
     * @constructor
     */
    constructor(t) {
      this.setOptions(t), this.x = null, this.y = null;
    }
    setOptions(t) {
      ["boolean", "number", "string"].indexOf(typeof t) !== -1 && (t = { content: "" + t }), t = t || {}, this.options = t;
      let r = t.content;
      if (["boolean", "number", "string"].indexOf(typeof r) !== -1)
        this.content = String(r);
      else if (!r)
        this.content = this.options.href || "";
      else
        throw new Error("Content needs to be a primitive, got: " + typeof r);
      this.colSpan = t.colSpan || 1, this.rowSpan = t.rowSpan || 1, this.options.href && Object.defineProperty(this, "href", {
        get() {
          return this.options.href;
        }
      });
    }
    mergeTableOptions(t, r) {
      this.cells = r;
      let i = this.options.chars || {}, n = t.chars, u = this.chars = {};
      iz.forEach(function(l) {
        Ym(i, n, l, u);
      }), this.truncate = this.options.truncate || t.truncate;
      let a = this.options.style = this.options.style || {}, o = t.style;
      Ym(a, o, "padding-left", this), Ym(a, o, "padding-right", this), this.head = a.head || o.head, this.border = a.border || o.border, this.
      fixedWidth = t.colWidths[this.x], this.lines = this.computeLines(t), this.desiredWidth = Mt.strlen(this.content) + this.paddingLeft + this.
      paddingRight, this.desiredHeight = this.lines.length;
    }
    computeLines(t) {
      let r = t.wordWrap || t.textWrap, { wordWrap: i = r } = this.options;
      if (this.fixedWidth && i) {
        if (this.fixedWidth -= this.paddingLeft + this.paddingRight, this.colSpan) {
          let a = 1;
          for (; a < this.colSpan; )
            this.fixedWidth += t.colWidths[this.x + a], a++;
        }
        let { wrapOnWordBoundary: n = !0 } = t, { wrapOnWordBoundary: u = n } = this.options;
        return this.wrapLines(Mt.wordWrap(this.fixedWidth, this.content, u));
      }
      return this.wrapLines(this.content.split(`
`));
    }
    wrapLines(t) {
      let r = Mt.colorizeLines(t);
      return this.href ? r.map((i) => Mt.hyperlink(this.href, i)) : r;
    }
    /**
     * Initializes the Cells data structure.
     *
     * @param tableOptions - A fully populated set of tableOptions.
     * In addition to the standard default values, tableOptions must have fully populated the
     * `colWidths` and `rowWidths` arrays. Those arrays must have lengths equal to the number
     * of columns or rows (respectively) in this table, and each array item must be a Number.
     *
     */
    init(t) {
      let r = this.x, i = this.y;
      this.widths = t.colWidths.slice(r, r + this.colSpan), this.heights = t.rowHeights.slice(i, i + this.rowSpan), this.width = this.widths.
      reduce(V_, -1), this.height = this.heights.reduce(V_, -1), this.hAlign = this.options.hAlign || t.colAligns[r], this.vAlign = this.options.
      vAlign || t.rowAligns[i], this.drawRight = r + this.colSpan == t.colWidths.length;
    }
    /**
     * Draws the given line of the cell.
     * This default implementation defers to methods `drawTop`, `drawBottom`, `drawLine` and `drawEmpty`.
     * @param lineNum - can be `top`, `bottom` or a numerical line number.
     * @param spanningCell - will be a number if being called from a RowSpanCell, and will represent how
     * many rows below it's being called from. Otherwise it's undefined.
     * @returns {String} The representation of this line.
     */
    draw(t, r) {
      if (t == "top") return this.drawTop(this.drawRight);
      if (t == "bottom") return this.drawBottom(this.drawRight);
      let i = Mt.truncate(this.content, 10, this.truncate);
      t || tz(`${this.y}-${this.x}: ${this.rowSpan - t}x${this.colSpan} Cell ${i}`);
      let n = Math.max(this.height - this.lines.length, 0), u;
      switch (this.vAlign) {
        case "center":
          u = Math.ceil(n / 2);
          break;
        case "bottom":
          u = n;
          break;
        default:
          u = 0;
      }
      if (t < u || t >= u + this.lines.length)
        return this.drawEmpty(this.drawRight, r);
      let a = this.lines.length > this.height && t + 1 >= this.height;
      return this.drawLine(t - u, this.drawRight, a, r);
    }
    /**
     * Renders the top line of the cell.
     * @param drawRight - true if this method should render the right edge of the cell.
     * @returns {String}
     */
    drawTop(t) {
      let r = [];
      return this.cells ? this.widths.forEach(function(i, n) {
        r.push(this._topLeftChar(n)), r.push(Mt.repeat(this.chars[this.y == 0 ? "top" : "mid"], i));
      }, this) : (r.push(this._topLeftChar(0)), r.push(Mt.repeat(this.chars[this.y == 0 ? "top" : "mid"], this.width))), t && r.push(this.chars[this.
      y == 0 ? "topRight" : "rightMid"]), this.wrapWithStyleColors("border", r.join(""));
    }
    _topLeftChar(t) {
      let r = this.x + t, i;
      if (this.y == 0)
        i = r == 0 ? "topLeft" : t == 0 ? "topMid" : "top";
      else if (r == 0)
        i = "leftMid";
      else if (i = t == 0 ? "midMid" : "bottomMid", this.cells && (this.cells[this.y - 1][r] instanceof e.ColSpanCell && (i = t == 0 ? "topM\
id" : "mid"), t == 0)) {
        let u = 1;
        for (; this.cells[this.y][r - u] instanceof e.ColSpanCell; )
          u++;
        this.cells[this.y][r - u] instanceof e.RowSpanCell && (i = "leftMid");
      }
      return this.chars[i];
    }
    wrapWithStyleColors(t, r) {
      if (this[t] && this[t].length)
        try {
          let i = q_();
          for (let n = this[t].length - 1; n >= 0; n--)
            i = i[this[t][n]];
          return i(r);
        } catch {
          return r;
        }
      else
        return r;
    }
    /**
     * Renders a line of text.
     * @param lineNum - Which line of text to render. This is not necessarily the line within the cell.
     * There may be top-padding above the first line of text.
     * @param drawRight - true if this method should render the right edge of the cell.
     * @param forceTruncationSymbol - `true` if the rendered text should end with the truncation symbol even
     * if the text fits. This is used when the cell is vertically truncated. If `false` the text should
     * only include the truncation symbol if the text will not fit horizontally within the cell width.
     * @param spanningCell - a number of if being called from a RowSpanCell. (how many rows below). otherwise undefined.
     * @returns {String}
     */
    drawLine(t, r, i, n) {
      let u = this.chars[this.x == 0 ? "left" : "middle"];
      if (this.x && n && this.cells) {
        let d = this.cells[this.y + n][this.x - 1];
        for (; d instanceof Au; )
          d = this.cells[d.y][d.x - 1];
        d instanceof Fu || (u = this.chars.rightMid);
      }
      let a = Mt.repeat(" ", this.paddingLeft), o = r ? this.chars.right : "", l = Mt.repeat(" ", this.paddingRight), c = this.lines[t], h = this.
      width - (this.paddingLeft + this.paddingRight);
      i && (c += this.truncate || "\u2026");
      let p = Mt.truncate(c, h, this.truncate);
      return p = Mt.pad(p, h, " ", this.hAlign), p = a + p + l, this.stylizeLine(u, p, o);
    }
    stylizeLine(t, r, i) {
      return t = this.wrapWithStyleColors("border", t), i = this.wrapWithStyleColors("border", i), this.y === 0 && (r = this.wrapWithStyleColors(
      "head", r)), t + r + i;
    }
    /**
     * Renders the bottom line of the cell.
     * @param drawRight - true if this method should render the right edge of the cell.
     * @returns {String}
     */
    drawBottom(t) {
      let r = this.chars[this.x == 0 ? "bottomLeft" : "bottomMid"], i = Mt.repeat(this.chars.bottom, this.width), n = t ? this.chars.bottomRight :
      "";
      return this.wrapWithStyleColors("border", r + i + n);
    }
    /**
     * Renders a blank line of text within the cell. Used for top and/or bottom padding.
     * @param drawRight - true if this method should render the right edge of the cell.
     * @param spanningCell - a number of if being called from a RowSpanCell. (how many rows below). otherwise undefined.
     * @returns {String}
     */
    drawEmpty(t, r) {
      let i = this.chars[this.x == 0 ? "left" : "middle"];
      if (this.x && r && this.cells) {
        let a = this.cells[this.y + r][this.x - 1];
        for (; a instanceof Au; )
          a = this.cells[a.y][a.x - 1];
        a instanceof Fu || (i = this.chars.rightMid);
      }
      let n = t ? this.chars.right : "", u = Mt.repeat(" ", this.width);
      return this.stylizeLine(i, u, n);
    }
  }, Au = class {
    static {
      s(this, "ColSpanCell");
    }
    /**
     * A Cell that doesn't do anything. It just draws empty lines.
     * Used as a placeholder in column spanning.
     * @constructor
     */
    constructor() {
    }
    draw(t) {
      return typeof t == "number" && U_(`${this.y}-${this.x}: 1x1 ColSpanCell`), "";
    }
    init() {
    }
    mergeTableOptions() {
    }
  }, Fu = class {
    static {
      s(this, "RowSpanCell");
    }
    /**
     * A placeholder Cell for a Cell that spans multiple rows.
     * It delegates rendering to the original cell, but adds the appropriate offset.
     * @param originalCell
     * @constructor
     */
    constructor(t) {
      this.originalCell = t;
    }
    init(t) {
      let r = this.y, i = this.originalCell.y;
      this.cellOffset = r - i, this.offset = rz(t.rowHeights, i, this.cellOffset);
    }
    draw(t) {
      return t == "top" ? this.originalCell.draw(this.offset, this.cellOffset) : t == "bottom" ? this.originalCell.draw("bottom") : (U_(`${this.
      y}-${this.x}: 1x${this.colSpan} RowSpanCell for ${this.originalCell.content}`), this.originalCell.draw(this.offset + 1 + t));
    }
    mergeTableOptions() {
    }
  };
  function $_(...e) {
    return e.filter((t) => t != null).shift();
  }
  s($_, "firstDefined");
  function Ym(e, t, r, i) {
    let n = r.split("-");
    n.length > 1 ? (n[1] = n[1].charAt(0).toUpperCase() + n[1].substr(1), n = n.join(""), i[n] = $_(e[n], e[r], t[n], t[r])) : i[r] = $_(e[r],
    t[r]);
  }
  s(Ym, "setOption");
  function rz(e, t, r) {
    let i = e[t];
    for (let n = 1; n < r; n++)
      i += 1 + e[t + n];
    return i;
  }
  s(rz, "findDimension");
  function V_(e, t) {
    return e + t + 1;
  }
  s(V_, "sumPlusOne");
  var iz = [
    "top",
    "top-mid",
    "top-left",
    "top-right",
    "bottom",
    "bottom-mid",
    "bottom-left",
    "bottom-right",
    "left",
    "left-mid",
    "mid",
    "mid-mid",
    "right",
    "right-mid",
    "middle"
  ];
  ol.exports = Km;
  ol.exports.ColSpanCell = Au;
  ol.exports.RowSpanCell = Fu;
});

// ../node_modules/cli-table3/src/layout-manager.js
var J_ = I((yre, W_) => {
  var { warn: nz, debug: sz } = ul(), Qm = z_(), { ColSpanCell: uz, RowSpanCell: az } = Qm;
  (function() {
    function e(m, D) {
      return m[D] > 0 ? e(m, D + 1) : D;
    }
    s(e, "next");
    function t(m) {
      let D = {};
      m.forEach(function(g, v) {
        let x = 0;
        g.forEach(function(C) {
          C.y = v, C.x = v ? e(D, x) : x;
          let S = C.rowSpan || 1, k = C.colSpan || 1;
          if (S > 1)
            for (let j = 0; j < k; j++)
              D[C.x + j] = S;
          x = C.x + k;
        }), Object.keys(D).forEach((C) => {
          D[C]--, D[C] < 1 && delete D[C];
        });
      });
    }
    s(t, "layoutTable");
    function r(m) {
      let D = 0;
      return m.forEach(function(g) {
        g.forEach(function(v) {
          D = Math.max(D, v.x + (v.colSpan || 1));
        });
      }), D;
    }
    s(r, "maxWidth");
    function i(m) {
      return m.length;
    }
    s(i, "maxHeight");
    function n(m, D) {
      let g = m.y, v = m.y - 1 + (m.rowSpan || 1), x = D.y, C = D.y - 1 + (D.rowSpan || 1), S = !(g > C || x > v), k = m.x, j = m.x - 1 + (m.
      colSpan || 1), w = D.x, A = D.x - 1 + (D.colSpan || 1), T = !(k > A || w > j);
      return S && T;
    }
    s(n, "cellsConflict");
    function u(m, D, g) {
      let v = Math.min(m.length - 1, g), x = { x: D, y: g };
      for (let C = 0; C <= v; C++) {
        let S = m[C];
        for (let k = 0; k < S.length; k++)
          if (n(x, S[k]))
            return !0;
      }
      return !1;
    }
    s(u, "conflictExists");
    function a(m, D, g, v) {
      for (let x = g; x < v; x++)
        if (u(m, x, D))
          return !1;
      return !0;
    }
    s(a, "allBlank");
    function o(m) {
      m.forEach(function(D, g) {
        D.forEach(function(v) {
          for (let x = 1; x < v.rowSpan; x++) {
            let C = new az(v);
            C.x = v.x, C.y = v.y + x, C.colSpan = v.colSpan, c(C, m[g + x]);
          }
        });
      });
    }
    s(o, "addRowSpanCells");
    function l(m) {
      for (let D = m.length - 1; D >= 0; D--) {
        let g = m[D];
        for (let v = 0; v < g.length; v++) {
          let x = g[v];
          for (let C = 1; C < x.colSpan; C++) {
            let S = new uz();
            S.x = x.x + C, S.y = x.y, g.splice(v + 1, 0, S);
          }
        }
      }
    }
    s(l, "addColSpanCells");
    function c(m, D) {
      let g = 0;
      for (; g < D.length && D[g].x < m.x; )
        g++;
      D.splice(g, 0, m);
    }
    s(c, "insertCell");
    function h(m) {
      let D = i(m), g = r(m);
      sz(`Max rows: ${D}; Max cols: ${g}`);
      for (let v = 0; v < D; v++)
        for (let x = 0; x < g; x++)
          if (!u(m, x, v)) {
            let C = { x, y: v, colSpan: 1, rowSpan: 1 };
            for (x++; x < g && !u(m, x, v); )
              C.colSpan++, x++;
            let S = v + 1;
            for (; S < D && a(m, S, C.x, C.x + C.colSpan); )
              C.rowSpan++, S++;
            let k = new Qm(C);
            k.x = C.x, k.y = C.y, nz(`Missing cell at ${k.y}-${k.x}.`), c(k, m[v]);
          }
    }
    s(h, "fillInTable");
    function p(m) {
      return m.map(function(D) {
        if (!Array.isArray(D)) {
          let g = Object.keys(D)[0];
          D = D[g], Array.isArray(D) ? (D = D.slice(), D.unshift(g)) : D = [g, D];
        }
        return D.map(function(g) {
          return new Qm(g);
        });
      });
    }
    s(p, "generateCells");
    function d(m) {
      let D = p(m);
      return t(D), h(D), o(D), l(D), D;
    }
    s(d, "makeTableLayout"), W_.exports = {
      makeTableLayout: d,
      layoutTable: t,
      addRowSpanCells: o,
      maxWidth: r,
      fillInTable: h,
      computeWidths: H_("colSpan", "desiredWidth", "x", 1),
      computeHeights: H_("rowSpan", "desiredHeight", "y", 1)
    };
  })();
  function H_(e, t, r, i) {
    return function(n, u) {
      let a = [], o = [], l = {};
      u.forEach(function(c) {
        c.forEach(function(h) {
          (h[e] || 1) > 1 ? o.push(h) : a[h[r]] = Math.max(a[h[r]] || 0, h[t] || 0, i);
        });
      }), n.forEach(function(c, h) {
        typeof c == "number" && (a[h] = c);
      });
      for (let c = o.length - 1; c >= 0; c--) {
        let h = o[c], p = h[e], d = h[r], m = a[d], D = typeof n[d] == "number" ? 0 : 1;
        if (typeof m == "number")
          for (let g = 1; g < p; g++)
            m += 1 + a[d + g], typeof n[d + g] != "number" && D++;
        else
          m = t === "desiredWidth" ? h.desiredWidth - 1 : 1, (!l[d] || l[d] < m) && (l[d] = m);
        if (h[t] > m) {
          let g = 0;
          for (; D > 0 && h[t] > m; ) {
            if (typeof n[d + g] != "number") {
              let v = Math.round((h[t] - m) / D);
              m += v, a[d + g] += v, D--;
            }
            g++;
          }
        }
      }
      Object.assign(n, a, l);
      for (let c = 0; c < n.length; c++)
        n[c] = Math.max(i, n[c] || 0);
    };
  }
  s(H_, "makeComputeWidths");
});

// ../node_modules/cli-table3/src/table.js
var X_ = I((bre, G_) => {
  var li = ul(), oz = Gm(), Zm = J_(), ll = class extends Array {
    static {
      s(this, "Table");
    }
    constructor(t) {
      super();
      let r = oz.mergeOptions(t);
      if (Object.defineProperty(this, "options", {
        value: r,
        enumerable: r.debug
      }), r.debug) {
        switch (typeof r.debug) {
          case "boolean":
            li.setDebugLevel(li.WARN);
            break;
          case "number":
            li.setDebugLevel(r.debug);
            break;
          case "string":
            li.setDebugLevel(parseInt(r.debug, 10));
            break;
          default:
            li.setDebugLevel(li.WARN), li.warn(`Debug option is expected to be boolean, number, or string. Received a ${typeof r.debug}`);
        }
        Object.defineProperty(this, "messages", {
          get() {
            return li.debugMessages();
          }
        });
      }
    }
    toString() {
      let t = this, r = this.options.head && this.options.head.length;
      r ? (t = [this.options.head], this.length && t.push.apply(t, this)) : this.options.style.head = [];
      let i = Zm.makeTableLayout(t);
      i.forEach(function(u) {
        u.forEach(function(a) {
          a.mergeTableOptions(this.options, i);
        }, this);
      }, this), Zm.computeWidths(this.options.colWidths, i), Zm.computeHeights(this.options.rowHeights, i), i.forEach(function(u) {
        u.forEach(function(a) {
          a.init(this.options);
        }, this);
      }, this);
      let n = [];
      for (let u = 0; u < i.length; u++) {
        let a = i[u], o = this.options.rowHeights[u];
        (u === 0 || !this.options.style.compact || u == 1 && r) && e0(a, "top", n);
        for (let l = 0; l < o; l++)
          e0(a, l, n);
        u + 1 == i.length && e0(a, "bottom", n);
      }
      return n.join(`
`);
    }
    get width() {
      return this.toString().split(`
`)[0].length;
    }
  };
  ll.reset = () => li.reset();
  function e0(e, t, r) {
    let i = [];
    e.forEach(function(u) {
      i.push(u.draw(t));
    });
    let n = i.join("");
    n.length && r.push(n);
  }
  s(e0, "doDraw");
  G_.exports = ll;
});

// ../node_modules/cli-table3/index.js
var K_ = I((Cre, Y_) => {
  Y_.exports = X_();
});

// ../node_modules/pretty-hrtime/index.js
var ek = I((wre, Z_) => {
  "use strict";
  var lz = ["h", "min", "s", "ms", "\u03BCs", "ns"], cz = ["hour", "minute", "second", "millisecond", "microsecond", "nanosecond"], Q_ = [3600,
  60, 1, 1e6, 1e3, 1];
  Z_.exports = function(e, t) {
    var r, i, n, u, a, o, l, c, h, p;
    if (r = !1, i = !1, t && (r = t.verbose || !1, i = t.precise || !1), !Array.isArray(e) || e.length !== 2 || typeof e[0] != "number" || typeof e[1] !=
    "number")
      return "";
    for (e[1] < 0 && (p = e[0] + e[1] / 1e9, e[0] = parseInt(p), e[1] = parseFloat((p % 1).toPrecision(9)) * 1e9), h = "", n = 0; n < 6 && (u =
    n < 3 ? 0 : 1, a = e[u], n !== 3 && n !== 0 && (a = a % Q_[n - 1]), n === 2 && (a += e[1] / 1e9), o = a / Q_[n], !(o >= 1 && (r && (o = Math.
    floor(o)), i ? c = o.toString() : (l = o >= 10 ? 0 : 2, c = o.toFixed(l)), c.indexOf(".") > -1 && c[c.length - 1] === "0" && (c = c.replace(
    /\.?0+$/, "")), h && (h += " "), h += c, r ? (h += " " + cz[n], c !== "1" && (h += "s")) : h += " " + lz[n], !r))); n++)
      ;
    return h;
  };
});

// src/core-server/index.ts
var mz = {};
pi(mz, {
  StoryIndexGenerator: () => ki,
  build: () => vk,
  buildDevStandalone: () => u0,
  buildStaticStandalone: () => $f,
  experimental_MockUniversalStore: () => fl,
  experimental_UniversalStore: () => rr,
  experimental_loadStorybook: () => Ak,
  getErrorLevel: () => vF,
  getPreviewBodyTemplate: () => dl.getPreviewBodyTemplate,
  getPreviewHeadTemplate: () => dl.getPreviewHeadTemplate,
  mapStaticDir: () => pf,
  sendTelemetryError: () => jo,
  withTelemetry: () => A$
});
module.exports = _u(mz);
var dl = require("@storybook/core/common");

// src/core-server/build-static.ts
var yo = require("node:fs/promises"), qC = require("node:fs/promises"), er = require("node:path"), Dr = require("@storybook/core/common"), Eo = require("@storybook/core/telemetry"),
$C = Q(ku(), 1), ei = require("@storybook/core/node-logger"), VC = Q(Cr(), 1);

// src/core-server/utils/StoryIndexGenerator.ts
var tf = require("node:fs"), rf = require("node:fs/promises"), Pe = require("node:path"), rn = require("@storybook/core/common"), mr = require("@storybook/core/csf"),
zb = require("@storybook/core/telemetry"), Ya = require("@storybook/core/csf-tools"), nn = require("@storybook/core/node-logger"), Hs = require("@storybook/core/preview-api");

// node_modules/find-up/index.js
var Dn = Q(require("node:path"), 1);

// ../node_modules/locate-path/index.js
var p0 = Q(require("node:process"), 1), f0 = Q(require("node:path"), 1), Iu = Q(require("node:fs"), 1), d0 = require("node:url");

// ../node_modules/yocto-queue/index.js
var yl = class {
  static {
    s(this, "Node");
  }
  value;
  next;
  constructor(t) {
    this.value = t;
  }
}, xs = class {
  static {
    s(this, "Queue");
  }
  #e;
  #t;
  #r;
  constructor() {
    this.clear();
  }
  enqueue(t) {
    let r = new yl(t);
    this.#e ? (this.#t.next = r, this.#t = r) : (this.#e = r, this.#t = r), this.#r++;
  }
  dequeue() {
    let t = this.#e;
    if (t)
      return this.#e = this.#e.next, this.#r--, t.value;
  }
  peek() {
    if (this.#e)
      return this.#e.value;
  }
  clear() {
    this.#e = void 0, this.#t = void 0, this.#r = 0;
  }
  get size() {
    return this.#r;
  }
  *[Symbol.iterator]() {
    let t = this.#e;
    for (; t; )
      yield t.value, t = t.next;
  }
};

// ../node_modules/locate-path/node_modules/p-limit/index.js
function Tu(e) {
  if (!((Number.isInteger(e) || e === Number.POSITIVE_INFINITY) && e > 0))
    throw new TypeError("Expected `concurrency` to be a number from 1 and up");
  let t = new xs(), r = 0, i = /* @__PURE__ */ s(() => {
    r--, t.size > 0 && t.dequeue()();
  }, "next"), n = /* @__PURE__ */ s(async (o, l, c) => {
    r++;
    let h = (async () => o(...c))();
    l(h);
    try {
      await h;
    } catch {
    }
    i();
  }, "run"), u = /* @__PURE__ */ s((o, l, c) => {
    t.enqueue(n.bind(void 0, o, l, c)), (async () => (await Promise.resolve(), r < e && t.size > 0 && t.dequeue()()))();
  }, "enqueue"), a = /* @__PURE__ */ s((o, ...l) => new Promise((c) => {
    u(o, c, l);
  }), "generator");
  return Object.defineProperties(a, {
    activeCount: {
      get: /* @__PURE__ */ s(() => r, "get")
    },
    pendingCount: {
      get: /* @__PURE__ */ s(() => t.size, "get")
    },
    clearQueue: {
      value: /* @__PURE__ */ s(() => {
        t.clear();
      }, "value")
    }
  }), a;
}
s(Tu, "pLimit");

// ../node_modules/locate-path/node_modules/p-locate/index.js
var Pu = class extends Error {
  static {
    s(this, "EndError");
  }
  constructor(t) {
    super(), this.value = t;
  }
}, Uk = /* @__PURE__ */ s(async (e, t) => t(await e), "testElement"), zk = /* @__PURE__ */ s(async (e) => {
  let t = await Promise.all(e);
  if (t[1] === !0)
    throw new Pu(t[0]);
  return !1;
}, "finder");
async function El(e, t, {
  concurrency: r = Number.POSITIVE_INFINITY,
  preserveOrder: i = !0
} = {}) {
  let n = Tu(r), u = [...e].map((o) => [o, n(Uk, o, t)]), a = Tu(i ? 1 : Number.POSITIVE_INFINITY);
  try {
    await Promise.all(u.map((o) => a(zk, o)));
  } catch (o) {
    if (o instanceof Pu)
      return o.value;
    throw o;
  }
}
s(El, "pLocate");

// ../node_modules/locate-path/index.js
var m0 = {
  directory: "isDirectory",
  file: "isFile"
};
function Hk(e) {
  if (!Object.hasOwnProperty.call(m0, e))
    throw new Error(`Invalid type specified: ${e}`);
}
s(Hk, "checkType");
var Wk = /* @__PURE__ */ s((e, t) => t[m0[e]](), "matchType"), Jk = /* @__PURE__ */ s((e) => e instanceof URL ? (0, d0.fileURLToPath)(e) : e,
"toPath");
async function bl(e, {
  cwd: t = p0.default.cwd(),
  type: r = "file",
  allowSymlinks: i = !0,
  concurrency: n,
  preserveOrder: u
} = {}) {
  Hk(r), t = Jk(t);
  let a = i ? Iu.promises.stat : Iu.promises.lstat;
  return El(e, async (o) => {
    try {
      let l = await a(f0.default.resolve(t, o));
      return Wk(r, l);
    } catch {
      return !1;
    }
  }, { concurrency: n, preserveOrder: u });
}
s(bl, "locatePath");

// node_modules/find-up/index.js
Ou();

// node_modules/path-exists/index.js
var x0 = Q(require("node:fs"), 1);

// node_modules/find-up/index.js
var Gk = Symbol("findUpStop");
async function Xk(e, t = {}) {
  let r = Dn.default.resolve(fi(t.cwd) ?? ""), { root: i } = Dn.default.parse(r), n = Dn.default.resolve(r, fi(t.stopAt ?? i)), u = t.limit ??
  Number.POSITIVE_INFINITY, a = [e].flat(), o = /* @__PURE__ */ s(async (c) => {
    if (typeof e != "function")
      return bl(a, c);
    let h = await e(c.cwd);
    return typeof h == "string" ? bl([h], c) : h;
  }, "runMatcher"), l = [];
  for (; ; ) {
    let c = await o({ ...t, cwd: r });
    if (c === Gk || (c && l.push(Dn.default.resolve(r, c)), r === n || l.length >= u))
      break;
    r = Dn.default.dirname(r);
  }
  return l;
}
s(Xk, "findUpMultiple");
async function y0(e, t = {}) {
  return (await Xk(e, { ...t, limit: 1 }))[0];
}
s(y0, "findUp");

// src/core-server/utils/StoryIndexGenerator.ts
var nf = Q(Cr(), 1);
ys();

// ../node_modules/tiny-invariant/dist/esm/tiny-invariant.js
var Yk = process.env.NODE_ENV === "production", vl = "Invariant failed";
function mt(e, t) {
  if (!e) {
    if (Yk)
      throw new Error(vl);
    var r = typeof t == "function" ? t() : t, i = r ? "".concat(vl, ": ").concat(r) : vl;
    throw new Error(i);
  }
}
s(mt, "invariant");

// src/core-server/utils/StoryIndexGenerator.ts
var sf = Q(wr(), 1), Ka = Q(tD(), 1);

// src/core-server/utils/IndexingError.ts
ys();
var Fr = class extends Error {
  static {
    s(this, "IndexingError");
  }
  constructor(t, r, i) {
    super(), this.message = t, this.importPaths = r, i && (this.stack = i);
  }
  pathsString() {
    return this.importPaths.length === 1 ? `${tt(this.importPaths[0])}` : `${this.importPaths.map(tt).join(",")}`;
  }
  toString() {
    return `${this.pathsString()}: ${this.message}`;
  }
}, As = class extends Error {
  constructor(r) {
    super();
    this.indexingErrors = r;
    if (this.indexingErrors.length === 0)
      throw new Error("Unexpected empty error list");
    if (this.indexingErrors.length === 1) {
      let [i] = this.indexingErrors;
      this.message = `Unable to index ${i.pathsString()}`;
    } else
      this.message = `Unable to index files:
${this.indexingErrors.map((i) => `- ${i}`).join(`
`)}`;
  }
  static {
    s(this, "MultipleIndexingError");
  }
  toString() {
    return this.indexingErrors.length === 1 ? `${this.message}:
  ${this.indexingErrors[0].stack}` : this.message;
  }
};

// src/core-server/utils/autoName.ts
var ql = require("node:path");
function rD(e, t, r) {
  let i = (0, ql.basename)(e), n = (0, ql.basename)(t), [u] = i.split("."), [a] = n.split(".");
  return u === a ? r : u;
}
s(rD, "autoName");

// src/core-server/utils/summarizeStats.ts
var iD = /* @__PURE__ */ s((e, t) => {
  Object.entries(e).forEach(([r, i]) => {
    let n = r;
    t[n] || (t[n] = 0), t[n] += i ? 1 : 0;
  });
}, "addStats");

// src/core-server/utils/StoryIndexGenerator.ts
var en = "autodocs", _N = "attached-mdx", kN = "unattached-mdx", Hb = "play-fn";
function tn({ tags: e }) {
  return e?.includes(kN) || e?.includes(_N);
}
s(tn, "isMdxEntry");
var Ub = /* @__PURE__ */ s((e, t, r) => e.startsWith(".") ? tt((0, Pe.resolve)(r, (0, rn.normalizeStoryPath)((0, Pe.join)((0, Pe.dirname)(t),
e)))) : e, "makeAbsolute"), ki = class {
  constructor(t, r) {
    this.specifiers = t;
    this.options = r;
    this.specifierToCache = /* @__PURE__ */ new Map();
  }
  static {
    s(this, "StoryIndexGenerator");
  }
  async initialize() {
    (await Promise.all(
      this.specifiers.map(async (n) => {
        let u = {}, a = tt((0, Pe.join)(n.directory, n.files)), { globby: o } = await Promise.resolve().then(() => (Jh(), Wh)), l = await o(
        a, {
          absolute: !0,
          cwd: this.options.workingDir,
          ...(0, rn.commonGlobOptions)(a)
        });
        return l.length === 0 && nn.once.warn(
          `No story files found for the specified pattern: ${nf.default.blue(
            (0, Pe.join)(n.directory, n.files)
          )}`
        ), l.sort().forEach((c) => {
          let h = (0, Pe.extname)(c);
          if (h === ".storyshot") {
            let p = (0, Pe.relative)(this.options.workingDir, c);
            nn.logger.info(`Skipping ${h} file ${p}`);
            return;
          }
          u[c] = !1;
        }), [n, u];
      })
    )).forEach(
      ([n, u]) => this.specifierToCache.set(n, u)
    );
    let r = await this.getPreviewCode(), i = this.getProjectTags(r);
    await this.ensureExtracted({ projectTags: i });
  }
  /** Run the updater function over all the empty cache entries */
  async updateExtracted(t, r = !1) {
    await Promise.all(
      this.specifiers.map(async (i) => {
        let n = this.specifierToCache.get(i);
        return mt(
          n,
          `specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(
            i
          )}`
        ), Promise.all(
          Object.keys(n).map(async (u) => {
            if (!(n[u] && !r))
              try {
                n[u] = await t(i, u, n[u]);
              } catch (a) {
                let o = `.${Pe.sep}${(0, Pe.relative)(this.options.workingDir, u)}`;
                n[u] = {
                  type: "error",
                  err: new Fr(
                    a instanceof Error ? a.message : String(a),
                    [o],
                    a instanceof Error ? a.stack : void 0
                  )
                };
              }
          })
        );
      })
    );
  }
  isDocsMdx(t) {
    return /(?<!\.stories)\.mdx$/i.test(t);
  }
  async ensureExtracted({
    projectTags: t
  }) {
    await this.updateExtracted(
      async (n, u) => this.isDocsMdx(u) ? !1 : this.extractStories(n, u, t)
    ), await this.updateExtracted(
      async (n, u) => this.extractDocs(n, u, t)
    );
    let r = {};
    return { entries: this.specifiers.flatMap((n) => {
      let u = this.specifierToCache.get(n);
      return mt(
        u,
        `specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(
          n
        )}`
      ), Object.values(u).flatMap((a) => a ? a.type === "docs" ? [a] : a.type === "error" ? [a] : a.entries.map((o) => {
        if (o.type === "docs")
          return o;
        (0, zb.isExampleStoryId)(o.id) || iD(o.extra.stats, r);
        let { extra: l, ...c } = o;
        return c;
      }) : []);
    }), stats: r };
  }
  findDependencies(t) {
    return [...this.specifierToCache.values()].flatMap(
      (r) => Object.entries(r).filter(([i, n]) => !n || n.type !== "stories" ? !1 : !!t.find(
        (u) => i.match(
          new RegExp(`^${u.replace(/[.*+?^${}()|[\]\\]/g, "\\$&")}(\\.[^.]+)?$`)
        )
      )).map(([i, n]) => n)
    );
  }
  /**
   * Try to find the component path from a raw import string and return it in the same format as
   * `importPath`. Respect tsconfig paths if available.
   *
   * If no such file exists, assume that the import is from a package and return the raw
   */
  resolveComponentPath(t, r, i) {
    let n = t;
    i && (n = i(n) ?? n);
    let u = (0, Pe.resolve)((0, Pe.dirname)(r), n), a = ["", ".js", ".ts", ".jsx", ".tsx", ".mjs", ".mts"].map((o) => `${u}${o}`).find((o) => (0, tf.existsSync)(
    o));
    if (a) {
      let o = (0, Pe.relative)(this.options.workingDir, a);
      return tt((0, rn.normalizeStoryPath)(o));
    }
    return t;
  }
  async extractStories(t, r, i = []) {
    let n = (0, Pe.relative)(this.options.workingDir, r), u = tt((0, rn.normalizeStoryPath)(n)), a = /* @__PURE__ */ s((g) => {
      let v = (0, Hs.userOrAutoTitleFromSpecifier)(u, t, g);
      return mt(
        v,
        "makeTitle created an undefined title. This happens when the fileName doesn't match any specifier from main.js"
      ), v;
    }, "defaultMakeTitle"), o = this.options.indexers.find((g) => g.test.exec(r));
    mt(o, `No matching indexer found for ${r}`);
    let l = await o.createIndex(r, { makeTitle: a }), c = await y0("tsconfig.json", { cwd: this.options.workingDir }), h = Ka.loadConfig(c),
    p;
    h.resultType === "success" && (p = Ka.createMatchPath(h.absoluteBaseUrl, h.paths, [
      "browser",
      "module",
      "main"
    ]));
    let d = l.map((g) => {
      let v = g.name ?? (0, mr.storyNameFromExport)(g.exportName), x = g.rawComponentPath && this.resolveComponentPath(g.rawComponentPath, r,
      p), C = g.title ?? a(), S = g.__id ?? (0, mr.toId)(g.metaId ?? C, (0, mr.storyNameFromExport)(g.exportName)), k = (0, mr.combineTags)(
      ...i, ...g.tags ?? []);
      return {
        type: "story",
        id: S,
        extra: {
          metaId: g.metaId,
          stats: g.__stats ?? {}
        },
        name: v,
        title: C,
        importPath: u,
        componentPath: x,
        tags: k
      };
    });
    if (d.some((g) => g.tags.includes(en)) && !!this.options.docs.autodocs && this.options.build?.test?.disableAutoDocs !== !0) {
      let g = this.options.docs.defaultName ?? "Docs", { metaId: v } = l[0], { title: x } = d[0], C = (0, mr.toId)(v ?? x, g), S = (0, mr.combineTags)(
      ...i, ...l[0].tags ?? []);
      d.unshift({
        id: C,
        title: x,
        name: g,
        importPath: u,
        type: "docs",
        tags: S,
        storiesImports: []
      });
    }
    return {
      entries: d,
      dependents: [],
      type: "stories"
    };
  }
  async extractDocs(t, r, i = []) {
    let n = (0, Pe.relative)(this.options.workingDir, r);
    try {
      let u = (0, rn.normalizeStoryPath)(n), a = tt(u), o = await (0, rf.readFile)(r, { encoding: "utf8" }), { analyze: l } = await Promise.resolve().then(() => (Vb(), $b)),
      c = await l(o);
      if (c.isTemplate)
        return !1;
      let h = c.imports.map(
        (k) => Ub(k, u, this.options.workingDir)
      ), p = this.findDependencies(h), d = p, m;
      if (c.of) {
        let k = Ub(c.of, u, this.options.workingDir);
        p.forEach((j) => {
          if (j.entries.length > 0) {
            let w = j.entries.find((A) => A.type !== "docs");
            (0, Pe.normalize)((0, Pe.resolve)(this.options.workingDir, w.importPath)).startsWith(
              (0, Pe.normalize)(k)
            ) && (m = w);
          }
          d = [j, ...p.filter((w) => w !== j)];
        }), mt(
          m,
          sf.dedent`
            Could not find or load CSF file at path "${c.of}" referenced by \`of={}\` in docs file "${n}".

            - Does that file exist?
            - If so, is it a CSF file (\`.stories.*\`)?
            - If so, is it matched by the \`stories\` glob in \`main.js\`?
            - If so, has the file successfully loaded in Storybook and are its stories visible?
          `
        );
      }
      p.forEach((k) => {
        k.dependents.push(r);
      });
      let D = m?.title || (0, Hs.userOrAutoTitleFromSpecifier)(a, t, c.title);
      mt(
        D,
        "makeTitle created an undefined title. This happens when a specifier's doesn't have any matches in its fileName"
      );
      let g = this.options.docs.defaultName ?? "Docs", v = c.name || (m ? rD(a, m.importPath, g) : g), x = (0, mr.toId)(m?.extra.metaId || D,
      v), C = (0, mr.combineTags)(
        ...i,
        ...m?.tags ?? [],
        ...c.metaTags ?? [],
        m ? "attached-mdx" : "unattached-mdx"
      );
      return {
        id: x,
        title: D,
        name: v,
        importPath: a,
        storiesImports: d.map((k) => k.entries[0].importPath),
        type: "docs",
        tags: C
      };
    } catch (u) {
      throw u && u.source?.match(/mdast-util-mdx-jsx/g) && nn.logger.warn(
        `\u{1F4A1} This seems to be an MDX2 syntax error. Please refer to the MDX section in the following resource for assistance on how to fix th\
is: ${nf.default.yellow(
          "https://storybook.js.org/migration-guides/7.0"
        )}`
      ), u;
    }
  }
  chooseDuplicate(t, r, i) {
    if (t.importPath === r.importPath)
      return t;
    let n = !0;
    (r.type === "story" || tn(r) && t.type === "docs" && !tn(t)) && (n = !1);
    let u = n ? t : r, a = n ? r : t, o = 'Use `<Meta of={} name="Other Name">` to distinguish them.';
    if (a.type === "story")
      throw new Fr(`Duplicate stories with id: ${t.id}`, [
        t.importPath,
        r.importPath
      ]);
    if (u.type === "story") {
      let l = tn(a) ? "component docs page" : "automatically generated docs page";
      throw u.name === this.options.docs.defaultName ? new Fr(
        `You have a story for ${u.title} with the same name as your default docs entry name (${u.name}), so the docs page is being dropped. \
Consider changing the story name.`,
        [t.importPath, r.importPath]
      ) : new Fr(
        `You have a story for ${u.title} with the same name as your ${l} (${a.name}), so the docs page is being dropped. ${o}`,
        [t.importPath, r.importPath]
      );
    } else if (tn(u)) {
      if (tn(a))
        throw new Fr(
          `You have two component docs pages with the same name ${u.title}:${u.name}. ${o}`,
          [t.importPath, r.importPath]
        );
      if (a.tags?.includes(en) && !(this.options.docs.autodocs === !0 || i?.includes(en)))
        throw new Fr(
          `You created a component docs page for '${a.title}', but also tagged the CSF file with '${en}'. This is probably a mistake.`,
          [u.importPath, a.importPath]
        );
    } else
      return {
        ...u,
        storiesImports: [
          ...u.storiesImports,
          a.importPath,
          ...a.storiesImports
        ]
      };
    return u;
  }
  async sortStories(t, r) {
    let i = Object.values(t), n = this.storyFileNames();
    return (0, Hs.sortStoriesV7)(i, r, n), i.reduce(
      (u, a) => (u[a.id] = a, u),
      {}
    );
  }
  async getIndex() {
    return (await this.getIndexAndStats()).storyIndex;
  }
  async getIndexAndStats() {
    if (this.lastIndex && this.lastStats)
      return { storyIndex: this.lastIndex, stats: this.lastStats };
    if (this.lastError)
      throw this.lastError;
    let t = await this.getPreviewCode(), r = this.getProjectTags(t), { entries: i, stats: n } = await this.ensureExtracted({ projectTags: r });
    try {
      let u = i.filter((c) => c.type === "error");
      if (u.length)
        throw new As(u.map((c) => c.err));
      let a = [], o = {};
      if (i.forEach((c) => {
        try {
          let h = o[c.id];
          h ? o[c.id] = this.chooseDuplicate(h, c, r) : o[c.id] = c;
        } catch (h) {
          h instanceof Fr && a.push(h);
        }
      }), a.length)
        throw new As(a);
      let l = await this.sortStories(
        o,
        t && (0, Ya.getStorySortParameter)(t)
      );
      return this.lastStats = n, this.lastIndex = {
        v: 5,
        entries: l
      }, { storyIndex: this.lastIndex, stats: this.lastStats };
    } catch (u) {
      throw this.lastError = u == null || u instanceof Error ? u : void 0, mt(this.lastError), nn.logger.warn(`\u{1F6A8} ${this.lastError.toString()}`),
      this.lastError;
    }
  }
  invalidateAll() {
    this.specifierToCache.forEach((t) => {
      Object.keys(t).forEach((r) => {
        t[r] = !1;
      });
    }), this.lastIndex = null, this.lastError = null;
  }
  invalidate(t, r, i) {
    let n = tt((0, Pe.resolve)(this.options.workingDir, r)), u = this.specifierToCache.get(t);
    mt(
      u,
      `specifier does not have a matching cache entry in specifierToCache: ${JSON.stringify(
        t
      )}`
    );
    let a = u[n];
    if (a && a.type === "stories") {
      let { dependents: o } = a, l = /* @__PURE__ */ new Set();
      this.specifierToCache.forEach((c) => {
        o.forEach((h) => {
          c[h] && (l.add(h), c[h] = !1);
        });
      });
    }
    if (i) {
      if (a && a.type === "docs") {
        let o = a.storiesImports.map(
          (c) => (0, Pe.resolve)(this.options.workingDir, c)
        );
        this.findDependencies(o).forEach(
          (c) => c.dependents.splice(c.dependents.indexOf(n), 1)
        );
      }
      delete u[n];
    } else
      u[n] = !1;
    this.lastIndex = null, this.lastError = null;
  }
  async getPreviewCode() {
    let t = ["js", "jsx", "ts", "tsx", "mjs", "cjs", "mts"].map((r) => (0, Pe.join)(this.options.configDir, `preview.${r}`)).find((r) => (0, tf.existsSync)(
    r));
    return t && (await (0, rf.readFile)(t, { encoding: "utf8" })).toString();
  }
  getProjectTags(t) {
    let r = [], i = ["dev", "test"], n = this.options.docs.autodocs === !0 ? [en] : [];
    if (t)
      try {
        r = (0, Ya.loadConfig)(t).parse().getFieldValue(["tags"]) ?? [];
      } catch {
        nn.once.warn(sf.dedent`
          Unable to parse tags from project configuration. If defined, tags should be specified inline, e.g.

          export default {
            tags: ['foo'],
          }

          ---

          Received:

          ${t}
        `);
      }
    return [...i, ...r, ...n];
  }
  // Get the story file names in "imported order"
  storyFileNames() {
    return Array.from(this.specifierToCache.values()).flatMap((t) => Object.keys(t));
  }
};

// src/core-server/utils/build-or-throw.ts
var Wb = require("@storybook/core/server-errors");
async function Qa(e) {
  try {
    return await e();
  } catch (t) {
    let r = t.errors;
    throw r && r.find(
      (n) => n.text?.includes("No matching export")
    ) ? new Wb.NoMatchingExportError(t) : t;
  }
}
s(Qa, "buildOrThrow");

// src/core-server/utils/copy-all-static-files.ts
var cv = require("node:fs/promises"), Js = require("node:path"), hv = require("@storybook/core/common"), pv = require("@storybook/core/node-logger"),
ff = Q(Cr(), 1);

// src/core-server/utils/server-statics.ts
var Ws = require("node:fs"), yt = require("node:path"), sv = require("@storybook/core/common"), cf = require("@storybook/core/node-logger"),
eo = Q(Cr(), 1), uv = Q(nv(), 1), av = Q(wr(), 1);
async function ov(e, t) {
  let r = await t.presets.apply("staticDirs") ?? [], i = await t.presets.apply("favicon");
  r.map((n) => {
    try {
      let { staticDir: u, staticPath: a, targetEndpoint: o } = pf(n, t.configDir);
      if (o.startsWith("/sb-") || cf.logger.info(
        `=> Serving static files from ${eo.default.cyan(u)} at ${eo.default.cyan(o)}`
      ), (0, Ws.existsSync)(a) && (0, Ws.statSync)(a).isFile()) {
        let l = (0, yt.resolve)(a, ".."), c = (0, yt.basename)(a);
        e.use(o, (h, p, d) => {
          h.url = `/${c}`, lf(l, {
            dev: !0,
            etag: !0,
            extensions: []
          })(h, p, d);
        });
        return;
      }
      e.use(
        o,
        lf(a, {
          dev: !0,
          etag: !0,
          extensions: []
        })
      );
    } catch (u) {
      u instanceof Error && cf.logger.warn(u.message);
    }
  }), e.get(
    `/${(0, yt.basename)(i)}`,
    lf(i, {
      dev: !0,
      etag: !0,
      extensions: []
    })
  );
}
s(ov, "useStatics");
var lf = /* @__PURE__ */ s((...e) => (t, r, i) => {
  let n = t._parsedUrl, u = i ? () => {
    t._parsedUrl = n, i();
  } : void 0;
  (0, uv.default)(...e)(t, r, u);
}, "sirvWorkaround"), hf = /* @__PURE__ */ s((e) => {
  let t = e.lastIndexOf(":"), i = yt.win32.isAbsolute(e) && t === 1, n = t !== -1 && !i ? t : e.length, a = (e.substring(n + 1) || "/").split(
  yt.sep).join(yt.posix.sep), o = e.substring(0, n), l = (0, yt.isAbsolute)(o) ? o : `./${o}`, c = (0, yt.resolve)(l), h = a.replace(/^\/?/,
  "./"), p = h.substring(1);
  if (!(0, Ws.existsSync)(c))
    throw new Error(
      av.dedent`
        Failed to load static files, no such directory: ${eo.default.cyan(c)}
        Make sure this directory exists.
      `
    );
  return { staticDir: l, staticPath: c, targetDir: h, targetEndpoint: p };
}, "parseStaticDir"), pf = /* @__PURE__ */ s((e, t) => {
  let r = typeof e == "string" ? e : `${e.from}:${e.to}`, i = (0, yt.isAbsolute)(r) ? r : (0, sv.getDirectoryFromWorkingDir)({ configDir: t,
  workingDir: process.cwd(), directory: r });
  return hf(i);
}, "mapStaticDir");

// src/core-server/utils/copy-all-static-files.ts
async function fv(e, t, r) {
  let i = process.cwd();
  return e?.reduce(async (n, u) => {
    await n;
    let a = typeof u == "string" ? u : `${u.from}:${u.to}`, { staticPath: o, targetEndpoint: l } = hf(
      (0, hv.getDirectoryFromWorkingDir)({
        configDir: r,
        workingDir: i,
        directory: a
      })
    ), c = (0, Js.join)(t, l), h = ["index.html", "iframe.html"].map((p) => (0, Js.join)(c, p));
    o.includes("node_modules") || pv.logger.info(
      `=> Copying static files: ${ff.default.cyan(lv(o))} at ${ff.default.cyan(lv(c))}`
    ), await (0, cv.cp)(o, c, {
      dereference: !0,
      preserveTimestamps: !0,
      filter: /* @__PURE__ */ s((p, d) => !h.includes(d), "filter"),
      recursive: !0
    });
  }, Promise.resolve());
}
s(fv, "copyAllStaticFilesRelativeToMain");
function lv(e) {
  return (0, Js.relative)(process.cwd(), e);
}
s(lv, "print");

// src/core-server/utils/get-builders.ts
var dv = require("node:url"), mv = require("@storybook/core/server-errors");
async function Gs() {
  return import("@storybook/core/builder-manager");
}
s(Gs, "getManagerBuilder");
async function Xs(e, t) {
  let r = require.resolve(
    ["webpack5"].includes(e) ? `@storybook/builder-${e}` : e,
    { paths: [t] }
  );
  return await import((0, dv.pathToFileURL)(r).href);
}
s(Xs, "getPreviewBuilder");
async function Dv({ presets: e, configDir: t }) {
  let { builder: r } = await e.apply("core", {});
  if (!r)
    throw new mv.MissingBuilderError();
  let i = typeof r == "string" ? r : r.name;
  return Promise.all([Xs(i, t), Gs()]);
}
s(Dv, "getBuilders");

// src/core-server/utils/metadata.ts
var gv = require("node:fs/promises"), df = require("@storybook/core/telemetry");
async function xv(e, t) {
  let r = await (0, df.getStorybookMetadata)(t);
  await (0, gv.writeFile)(e, JSON.stringify(r));
}
s(xv, "extractStorybookMetadata");
function yv(e, t) {
  e.use("/project.json", async (r, i) => {
    let n = await (0, df.getStorybookMetadata)(t);
    i.setHeader("Content-Type", "application/json"), i.write(JSON.stringify(n)), i.end();
  });
}
s(yv, "useStorybookMetadata");

// src/core-server/utils/output-stats.ts
var Wv = require("node:fs"), Jv = require("node:path"), yf = require("@storybook/core/node-logger"), Gv = Q(zv(), 1), Ef = Q(Cr(), 1);
async function ro(e, t, r) {
  if (t) {
    let i = await Hv(e, "preview", t);
    yf.logger.info(`=> preview stats written to ${Ef.default.cyan(i)}`);
  }
  if (r) {
    let i = await Hv(e, "manager", r);
    yf.logger.info(`=> manager stats written to ${Ef.default.cyan(i)}`);
  }
}
s(ro, "outputStats");
var Hv = /* @__PURE__ */ s(async (e, t, r) => {
  let i = (0, Jv.join)(e, `${t}-stats.json`), { chunks: n, ...u } = r.toJson();
  return await new Promise((a, o) => {
    (0, Gv.stringifyStream)(u, null, 2).on("error", o).pipe((0, Wv.createWriteStream)(i)).on("error", o).on("finish", a);
  }), i;
}, "writeStats");

// src/core-server/utils/stories-json.ts
var OC = require("node:fs/promises"), RC = require("node:path"), NC = require("@storybook/core/core-events");

// ../node_modules/es-toolkit/dist/function/debounce.mjs
function Xv(e, t, { signal: r, edges: i } = {}) {
  let n, u = null, a = i != null && i.includes("leading"), o = i == null || i.includes("trailing"), l = /* @__PURE__ */ s(() => {
    u !== null && (e.apply(n, u), n = void 0, u = null);
  }, "invoke"), c = /* @__PURE__ */ s(() => {
    o && l(), m();
  }, "onTimerEnd"), h = null, p = /* @__PURE__ */ s(() => {
    h != null && clearTimeout(h), h = setTimeout(() => {
      h = null, c();
    }, t);
  }, "schedule"), d = /* @__PURE__ */ s(() => {
    h !== null && (clearTimeout(h), h = null);
  }, "cancelTimer"), m = /* @__PURE__ */ s(() => {
    d(), n = void 0, u = null;
  }, "cancel"), D = /* @__PURE__ */ s(() => {
    d(), l();
  }, "flush"), g = /* @__PURE__ */ s(function(...v) {
    if (r?.aborted)
      return;
    n = this, u = v;
    let x = h == null;
    p(), a && x && l();
  }, "debounced");
  return g.schedule = p, g.cancel = m, g.flush = D, r?.addEventListener("abort", m, { once: !0 }), g;
}
s(Xv, "debounce");

// ../node_modules/es-toolkit/dist/compat/function/debounce.mjs
function bf(e, t = 0, r = {}) {
  typeof r != "object" && (r = {});
  let { signal: i, leading: n = !1, trailing: u = !0, maxWait: a } = r, o = Array(2);
  n && (o[0] = "leading"), u && (o[1] = "trailing");
  let l, c = null, h = Xv(function(...m) {
    l = e.apply(this, m), c = null;
  }, t, { signal: i, edges: o }), p = /* @__PURE__ */ s(function(...m) {
    if (a != null) {
      if (c === null)
        c = Date.now();
      else if (Date.now() - c >= a)
        return l = e.apply(this, m), c = Date.now(), h.cancel(), h.schedule(), l;
    }
    return h.apply(this, m), l;
  }, "debounced"), d = /* @__PURE__ */ s(() => (h.flush(), l), "flush");
  return p.cancel = h.cancel, p.flush = d, p;
}
s(bf, "debounce");

// src/core-server/utils/watch-story-specifiers.ts
var go = require("node:fs"), Or = require("node:path"), _C = require("@storybook/core/common");
ys();
var kC = Q(qf(), 1);
var BC = /* @__PURE__ */ s((e) => {
  try {
    return (0, go.lstatSync)(e).isDirectory();
  } catch {
    return !1;
  }
}, "isDirectory");
function hM(e) {
  let t = /* @__PURE__ */ new Set(), r = /* @__PURE__ */ new Set(), i = /* @__PURE__ */ s((n) => {
    t.has(n) || ((0, go.readdirSync)(n, { withFileTypes: !0 }).forEach((u) => {
      u.isDirectory() ? i((0, Or.join)(n, u.name)) : u.isFile() && r.add((0, Or.join)(n, u.name));
    }), t.add(n));
  }, "traverse");
  return e.filter(BC).forEach(i), { files: Array.from(r), directories: Array.from(t) };
}
s(hM, "getNestedFilesAndDirectories");
function TC(e, t, r) {
  let { files: i, directories: n } = hM(
    e.map((l) => (0, Or.resolve)(t.workingDir, l.directory))
  ), u = new kC.default({
    // poll: true, // Slow!!! Enable only in special cases
    followSymlinks: !1,
    ignored: ["**/.git", "**/node_modules"]
  });
  u.watch({ files: i, directories: n });
  let a = /* @__PURE__ */ s((l) => {
    let c = (0, Or.relative)(t.workingDir, l);
    return tt(c.startsWith(".") ? c : `./${c}`);
  }, "toImportPath");
  async function o(l, c) {
    let h = a(l), p = e.find((d) => d.importPathMatcher.exec(h));
    if (p) {
      r(p, h, c);
      return;
    }
    !c && BC(l) && await Promise.all(
      e.filter((d) => h.startsWith(d.directory)).map(async (d) => {
        let m = (0, Or.join)(
          l,
          "**",
          // files can be e.g. '**/foo/*/*.js' so we just want the last bit,
          // because the directory could already be within the files part (e.g. './x/foo/bar')
          (0, Or.basename)(d.files)
        ), { globby: D } = await Promise.resolve().then(() => (Jh(), Wh));
        (await D(tt(m), (0, _C.commonGlobOptions)(m))).forEach((v) => {
          let x = a(v);
          d.importPathMatcher.exec(x) && r(d, x, c);
        });
      })
    );
  }
  return s(o, "onChangeOrRemove"), u.on("change", async (l, c, h) => {
    await o(l, !c);
  }), u.on("remove", async (l, c) => {
    await o(l, !0);
  }), () => u.close();
}
s(TC, "watchStorySpecifiers");

// src/core-server/utils/watchConfig.ts
var PC = Q(qf(), 1);
function IC(e, t) {
  let r = new PC.default({
    followSymlinks: !1,
    ignored: ["**/.git", "**/node_modules"]
  });
  return r.watch({
    directories: [e]
  }), r.on("change", async (i, n, u) => {
    await t(i, !n);
  }), r.on("remove", async (i, n) => {
    await t(i, !0);
  }), () => r.close();
}
s(IC, "watchConfig");

// src/core-server/utils/stories-json.ts
var pM = 100;
async function LC(e, t, r) {
  let n = await (await t).getIndex();
  await (0, OC.writeFile)(e, JSON.stringify(r ? r(n) : n));
}
s(LC, "extractStoriesJson");
function MC({
  app: e,
  initializedStoryIndexGenerator: t,
  workingDir: r = process.cwd(),
  configDir: i,
  serverChannel: n,
  normalizedStories: u
}) {
  let a = bf(() => n.emit(NC.STORY_INDEX_INVALIDATED), pM, {
    leading: !0
  });
  TC(u, { workingDir: r }, async (o, l, c) => {
    (await t).invalidate(o, l, c), a();
  }), i && IC(i, async (o) => {
    (0, RC.basename)(o).startsWith("preview") && ((await t).invalidateAll(), a());
  }), e.use("/index.json", async (o, l) => {
    try {
      let h = await (await t).getIndex();
      l.setHeader("Content-Type", "application/json"), l.end(JSON.stringify(h));
    } catch (c) {
      l.statusCode = 500, l.end(c instanceof Error ? c.toString() : String(c));
    }
  });
}
s(MC, "useStoriesJson");

// src/core-server/utils/summarizeIndex.ts
var jC = require("@storybook/core/telemetry");
var fM = /(page|screen)/i, dM = /* @__PURE__ */ s((e) => fM.test(e), "isPageStory"), mM = /* @__PURE__ */ s((e) => [
  "example-introduction--docs",
  "configure-your-project--docs",
  "example-button--docs",
  "example-button--primary",
  "example-button--secondary",
  "example-button--large",
  "example-button--small",
  "example-header--docs",
  "example-header--logged-in",
  "example-header--logged-out",
  "example-page--logged-in",
  "example-page--logged-out"
].includes(e.id), "isCLIExampleEntry");
function xo(e) {
  let t = 0, r = /* @__PURE__ */ new Set(), i = 0, n = 0, u = 0, a = 0, o = 0, l = 0, c = 0, h = 0;
  Object.values(e.entries).forEach((d) => {
    mM(d) ? (d.type === "story" && (i += 1), d.type === "docs" && (a += 1)) : (0, jC.isExampleStoryId)(d.id) ? (d.type === "story" && (n += 1),
    d.type === "docs" && (u += 1)) : d.type === "story" ? (t += 1, r.add(d.title), dM(d.title) && (o += 1), d.tags?.includes(Hb) && (l += 1)) :
    d.type === "docs" && (tn(d) ? h += 1 : d.tags?.includes(en) && (c += 1));
  });
  let p = r.size;
  return {
    storyCount: t,
    componentCount: p,
    pageStoryCount: o,
    playStoryCount: l,
    autodocsCount: c,
    mdxCount: h,
    exampleStoryCount: i,
    exampleDocsCount: a,
    onboardingStoryCount: n,
    onboardingDocsCount: u,
    version: e.v
  };
}
s(xo, "summarizeIndex");

// src/core-server/build-static.ts
async function $f(e) {
  if (e.configType = "PRODUCTION", e.outputDir === "")
    throw new Error("Won't remove current directory. Check your outputDir!");
  if (e.outputDir = (0, er.resolve)(e.outputDir), e.configDir = (0, er.resolve)(e.configDir), ei.logger.info(
    `=> Cleaning outputDir: ${VC.default.cyan((0, er.relative)(process.cwd(), e.outputDir))}`
  ), e.outputDir === "/")
    throw new Error("Won't remove directory '/'. Check your outputDir!");
  await (0, qC.rm)(e.outputDir, { recursive: !0, force: !0 }).catch(() => {
  }), await (0, yo.mkdir)(e.outputDir, { recursive: !0 });
  let t = await (0, Dr.loadMainConfig)(e), { framework: r } = t, i = [], n = typeof r == "string" ? r : r?.name;
  n ? i.push((0, er.join)(n, "preset")) : e.ignorePreview || ei.logger.warn(`you have not specified a framework in your ${e.configDir}/main.\
js`), ei.logger.info("=> Loading presets");
  let u = await (0, Dr.loadAllPresets)({
    corePresets: [
      require.resolve("@storybook/core/core-server/presets/common-preset"),
      ...i
    ],
    overridePresets: [
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    isCritical: !0,
    ...e
  }), { renderer: a } = await u.apply("core", {}), o = await u.apply("build", {}), [l, c] = await Dv({ ...e, presets: u, build: o }), h = a ?
  (0, Dr.resolveAddonName)(e.configDir, a, e) : void 0;
  u = await (0, Dr.loadAllPresets)({
    corePresets: [
      require.resolve("@storybook/core/core-server/presets/common-preset"),
      ...c.corePresets || [],
      ...l.corePresets || [],
      ...h ? [h] : [],
      ...i
    ],
    overridePresets: [
      ...l.overridePresets || [],
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    ...e,
    build: o
  });
  let [p, d, m, D, g, v] = await Promise.all([
    u.apply("features"),
    u.apply("core"),
    u.apply("staticDirs"),
    u.apply("experimental_indexers", []),
    u.apply("stories"),
    u.apply("docs", {})
  ]), x = {
    ...e,
    presets: u,
    features: p,
    build: o
  }, C = [];
  $C.global.FEATURES = p, await Qa(
    async () => c.build({ startTime: process.hrtime(), options: x })
  ), m && C.push(
    fv(m, e.outputDir, e.configDir)
  );
  let S = (0, er.join)(
    (0, er.dirname)(require.resolve("@storybook/core/package.json")),
    "assets/browser"
  );
  C.push((0, yo.cp)(S, e.outputDir, { recursive: !0 }));
  let k = Promise.resolve(void 0);
  if (!e.ignorePreview) {
    let w = process.cwd(), A = {
      configDir: e.configDir,
      workingDir: w
    }, T = (0, Dr.normalizeStories)(g, A), B = new ki(T, {
      ...A,
      indexers: D,
      docs: v,
      build: o
    });
    k = B.initialize().then(() => B), C.push(
      LC(
        (0, er.join)(e.outputDir, "index.json"),
        k
      )
    );
  }
  d?.disableProjectJson || C.push(
    xv((0, er.join)(e.outputDir, "project.json"), e.configDir)
  ), e.debugWebpack && (0, Dr.logConfig)("Preview webpack config", await l.getConfig(x)), e.ignorePreview ? ei.logger.info("=> Not building \
preview") : ei.logger.info("=> Building preview..");
  let j = process.hrtime();
  await Promise.all([
    ...e.ignorePreview ? [] : [
      l.build({
        startTime: j,
        options: x
      }).then(async (w) => {
        ei.logger.trace({ message: "=> Preview built", time: process.hrtime(j) });
        let A = e.webpackStatsJson || e.statsJson;
        if (A) {
          let T = A === !0 ? e.outputDir : A;
          await ro(T, w);
        }
      }).catch((w) => {
        throw ei.logger.error("=> Failed to build the preview"), process.exitCode = 1, w;
      })
    ],
    ...C
  ]), d?.disableTelemetry || C.push(
    k.then(async (w) => {
      let A = await w?.getIndex(), T = {
        precedingUpgrade: await (0, Eo.getPrecedingUpgrade)()
      };
      A && Object.assign(T, {
        storyIndex: xo(A)
      }), await (0, Eo.telemetry)("build", T, { configDir: e.configDir });
    })
  ), ei.logger.info(`=> Output directory: ${e.outputDir}`);
}
s($f, "buildStaticStandalone");

// src/core-server/build-dev.ts
var gk = require("node:fs/promises"), Vi = require("node:path"), nt = require("@storybook/core/common"), hl = require("@storybook/core/telemetry"),
xk = Q(ku(), 1), s0 = require("@storybook/core/node-logger"), pl = require("@storybook/core/server-errors"), yk = Q(Zd(), 1);
var Ek = Q(wr(), 1);

// src/core-server/dev-server.ts
var l3 = require("@storybook/core/common"), Fm = require("@storybook/core/node-logger"), c3 = require("@storybook/core/server-errors");

// ../node_modules/@polka/compression/build.mjs
var ts = Q(require("node:zlib"), 1);
var b$ = /* @__PURE__ */ s(() => {
}, "NOOP"), v$ = /text|javascript|\/json|xml/i;
function xF(e, t) {
  return e ? Buffer.byteLength(e, t) : 0;
}
s(xF, "getChunkSize");
function em({ threshold: e = 1024, level: t = -1, brotli: r = !1, gzip: i = !0, mimes: n = v$ } = {}) {
  let u = typeof r == "object" && r || {}, a = typeof i == "object" && i || {};
  return ts.default.createBrotliCompress || (r = !1), (o, l, c = b$) => {
    let h = o.headers["accept-encoding"] + "", p = (r && /\bbr\b/.exec(h) || i && /\bgzip\b/.exec(h) || [])[0];
    if (o.method === "HEAD" || !p) return c();
    let d, m = [], D = 0, g = !1, v = 0;
    function x() {
      g = !0, v = l.getHeader("Content-Length") | 0 || v;
      let w = n.test(
        String(l.getHeader("Content-Type") || "text/plain")
      ), A = !l.getHeader("Content-Encoding"), T = m || [];
      w && A && v >= e ? (l.setHeader("Content-Encoding", p), l.removeHeader("Content-Length"), p === "br" ? d = ts.default.createBrotliCompress(
      {
        params: Object.assign({
          [ts.default.constants.BROTLI_PARAM_QUALITY]: t,
          [ts.default.constants.BROTLI_PARAM_SIZE_HINT]: v
        }, u)
      }) : d = ts.default.createGzip(
        Object.assign({ level: t }, a)
      ), d.on("data", (B) => S.call(l, B) || d.pause()), k.call(l, "drain", () => d.resume()), d.on("end", () => C.call(l)), T.forEach((B) => d.
      on.apply(d, B))) : (m = null, T.forEach((B) => k.apply(l, B))), j.call(l, D || l.statusCode);
    }
    s(x, "start");
    let { end: C, write: S, on: k, writeHead: j } = l;
    l.writeHead = function(w, A, T) {
      if (typeof A != "string" && ([T, A] = [A, T]), T) for (let B in T) l.setHeader(B, T[B]);
      return D = w, this;
    }, l.write = function(w, A) {
      return v += xF(w, A), g || x(), d ? d.write.apply(d, arguments) : S.apply(this, arguments);
    }, l.end = function(w, A) {
      return arguments.length > 0 && typeof w != "function" && (v += xF(w, A)), g || x(), d ? d.end.apply(d, arguments) : C.apply(this, arguments);
    }, l.on = function(w, A) {
      return m ? d ? d.on(w, A) : m.push([w, A]) : k.call(this, w, A), this;
    }, c();
  };
}
s(em, "default");

// ../node_modules/polka/build.mjs
var nm = Q(require("node:http"), 1), yF = require("node:timers");

// ../node_modules/regexparam/dist/index.mjs
function tm(e, t) {
  if (e instanceof RegExp) return { keys: !1, pattern: e };
  var r, i, n, u, a = [], o = "", l = e.split("/");
  for (l[0] || l.shift(); n = l.shift(); )
    r = n[0], r === "*" ? (a.push(r), o += n[1] === "?" ? "(?:/(.*))?" : "/(.*)") : r === ":" ? (i = n.indexOf("?", 1), u = n.indexOf(".", 1),
    a.push(n.substring(1, ~i ? i : ~u ? u : n.length)), o += ~i && !~u ? "(?:/([^/]+?))?" : "/([^/]+?)", ~u && (o += (~i ? "?" : "") + "\\" +
    n.substring(u))) : o += "/" + n;
  return {
    keys: a,
    pattern: new RegExp("^" + o + (t ? "(?=$|/)" : "/?$"), "i")
  };
}
s(tm, "parse");

// ../node_modules/trouter/index.mjs
var rm = {
  "": 0,
  GET: 1,
  HEAD: 2,
  PATCH: 3,
  OPTIONS: 4,
  CONNECT: 5,
  DELETE: 6,
  TRACE: 7,
  POST: 8,
  PUT: 9
}, Lo = class {
  static {
    s(this, "Trouter");
  }
  constructor() {
    this.routes = [], this.all = this.add.bind(this, ""), this.get = this.add.bind(this, "GET"), this.head = this.add.bind(this, "HEAD"), this.
    patch = this.add.bind(this, "PATCH"), this.options = this.add.bind(this, "OPTIONS"), this.connect = this.add.bind(this, "CONNECT"), this.
    delete = this.add.bind(this, "DELETE"), this.trace = this.add.bind(this, "TRACE"), this.post = this.add.bind(this, "POST"), this.put = this.
    add.bind(this, "PUT");
  }
  use(t, ...r) {
    let i = [].concat.apply([], r), { keys: n, pattern: u } = tm(t, !0);
    return this.routes.push({ keys: n, pattern: u, method: "", handlers: i, midx: rm[""] }), this;
  }
  add(t, r, ...i) {
    let { keys: n, pattern: u } = tm(r), a = [].concat.apply([], i);
    return this.routes.push({ keys: n, pattern: u, method: t, handlers: a, midx: rm[t] }), this;
  }
  find(t, r) {
    let i = rm[t], n = i === 2, u = 0, a = 0, o, l, c = this.routes, h = [], p = {}, d = [];
    for (; u < c.length; u++)
      if (l = c[u], l.midx === i || l.midx === 0 || n && l.midx === 1)
        if (l.keys === !1) {
          if (h = l.pattern.exec(r), h === null) continue;
          if (h.groups !== void 0) for (o in h.groups) p[o] = h.groups[o];
          l.handlers.length > 1 ? d = d.concat(l.handlers) : d.push(l.handlers[0]);
        } else if (l.keys.length > 0) {
          if (h = l.pattern.exec(r), h === null) continue;
          for (a = 0; a < l.keys.length; ) p[l.keys[a]] = h[++a];
          l.handlers.length > 1 ? d = d.concat(l.handlers) : d.push(l.handlers[0]);
        } else l.pattern.test(r) && (l.handlers.length > 1 ? d = d.concat(l.handlers) : d.push(l.handlers[0]));
    return { params: p, handlers: d };
  }
};

// ../node_modules/polka/build.mjs
af();
function C$(e, t, r) {
  let i = typeof e.status == "number" && e.status;
  i = r.statusCode = i && i >= 100 ? i : 500, typeof e == "string" || Buffer.isBuffer(e) ? r.end(e) : r.end(e.message || nm.default.STATUS_CODES[i]);
}
s(C$, "onError");
var im = /* @__PURE__ */ s((e) => e instanceof Mo ? e.attach : e, "mount"), Mo = class e extends Lo {
  static {
    s(this, "Polka");
  }
  constructor(t = {}) {
    super(), this.parse = uf, this.server = t.server, this.handler = this.handler.bind(this), this.onError = t.onError || C$, this.onNoMatch =
    t.onNoMatch || this.onError.bind(null, { status: 404 }), this.attach = (r, i) => (0, yF.setImmediate)(this.handler, r, i);
  }
  use(t, ...r) {
    return t === "/" ? super.use(t, r.map(im)) : typeof t == "function" || t instanceof e ? super.use("/", [t, ...r].map(im)) : super.use(
      t,
      (i, n, u) => {
        if (typeof t == "string") {
          let a = t.length;
          t.startsWith("/") || a++, i.url = i.url.substring(a) || "/", i.path = i.path.substring(a) || "/";
        } else
          i.url = i.url.replace(t, "") || "/", i.path = i.path.replace(t, "") || "/";
        i.url.charAt(0) !== "/" && (i.url = "/" + i.url), u();
      },
      r.map(im),
      (i, n, u) => {
        i.path = i._parsedUrl.pathname, i.url = i.path + i._parsedUrl.search, u();
      }
    ), this;
  }
  listen() {
    return (this.server = this.server || nm.default.createServer()).on("request", this.attach), this.server.listen.apply(this.server, arguments),
    this;
  }
  handler(t, r, i) {
    let n = this.parse(t), u = n.pathname, a = this.find(t.method, t.path = u);
    if (t.url = u + n.search, t.originalUrl = t.originalUrl || t.url, t.query = n.query || {}, t.search = n.search, t.params = a.params, u.length >
    1 && u.indexOf("%", 1) !== -1)
      for (let p in t.params)
        try {
          t.params[p] = decodeURIComponent(t.params[p]);
        } catch {
        }
    let o = 0, l = a.handlers.concat(this.onNoMatch), c = l.length, h = /* @__PURE__ */ s(async () => r.finished || o < c && l[o++](t, r, i),
    "loop");
    (i = i || ((p) => p ? this.onError(p, t, r, i) : h().catch(i)))();
  }
};
function sm(e) {
  return new Mo(e);
}
s(sm, "default");

// src/core-server/utils/doTelemetry.ts
var qo = require("@storybook/core/telemetry");

// src/core-server/withTelemetry.ts
var rs = require("@storybook/core/common"), Ri = require("@storybook/core/telemetry"), EF = require("@storybook/core/node-logger"), bF = Q(Zd(), 1);
var w$ = /* @__PURE__ */ s(async () => {
  if (process.env.CI)
    return;
  let { enableCrashReports: e } = await (0, bF.default)({
    type: "confirm",
    name: "enableCrashReports",
    message: "Would you like to help improve Storybook by sending anonymous crash reports?",
    initial: !0
  });
  return await rs.cache.set("enableCrashReports", e), e;
}, "promptCrashReports");
async function vF({
  cliOptions: e,
  presetOptions: t,
  skipPrompt: r
}) {
  if (e.disableTelemetry)
    return "none";
  if (!t)
    return "full";
  let n = await (await (0, rs.loadAllPresets)(t)).apply("core");
  if (n?.enableCrashReports !== void 0)
    return n.enableCrashReports ? "full" : "error";
  if (n?.disableTelemetry)
    return "none";
  let u = await rs.cache.get("enableCrashReports") ?? await rs.cache.get("enableCrashreports");
  if (u !== void 0)
    return u ? "full" : "error";
  if (r)
    return "error";
  let a = await w$();
  return a !== void 0 ? a ? "full" : "error" : "full";
}
s(vF, "getErrorLevel");
async function jo(e, t, r) {
  try {
    let i = "error";
    try {
      i = await vF(r);
    } catch {
    }
    if (i !== "none") {
      let n = await (0, Ri.getPrecedingUpgrade)(), u = e, a;
      "message" in u ? a = u.message ? (0, Ri.oneWayHash)(u.message) : "EMPTY_MESSAGE" : a = "NO_MESSAGE";
      let { code: o, name: l, category: c } = u;
      await (0, Ri.telemetry)(
        "error",
        {
          code: o,
          name: l,
          category: c,
          eventType: t,
          precedingUpgrade: n,
          error: i === "full" ? u : void 0,
          errorHash: a,
          // if we ever end up sending a non-error instance, we'd like to know
          isErrorInstance: u instanceof Error
        },
        {
          immediate: !0,
          configDir: r.cliOptions.configDir || r.presetOptions?.configDir,
          enableCrashReports: i === "full"
        }
      );
    }
  } catch {
  }
}
s(jo, "sendTelemetryError");
async function A$(e, t, r) {
  let i = !(t.cliOptions.disableTelemetry || t.cliOptions.test === !0), n = !1;
  async function u() {
    n = !0, i && await (0, Ri.telemetry)("canceled", { eventType: e }, { stripMetadata: !0, immediate: !0 }), process.exit(0);
  }
  s(u, "cancelTelemetry"), e === "init" && process.on("SIGINT", u), i && (0, Ri.telemetry)("boot", { eventType: e }, { stripMetadata: !0 });
  try {
    return await r();
  } catch (a) {
    if (n)
      return;
    let { printError: o = EF.logger.error } = t;
    throw o(a), i && await jo(a, e, t), a;
  } finally {
    process.off("SIGINIT", u);
  }
}
s(A$, "withTelemetry");

// src/core-server/utils/versionStatus.ts
var CF = /* @__PURE__ */ s((e) => e.error ? "error" : e.cached ? "cached" : "success", "versionStatus");

// src/core-server/utils/doTelemetry.ts
async function wF(e, t, r, i) {
  t?.disableTelemetry || r.then(async (n) => {
    let u;
    try {
      u = await n?.getIndexAndStats();
    } catch (c) {
      if (!(c instanceof Error))
        throw new Error("encountered a non-recoverable error");
      jo(c, "dev", {
        cliOptions: i,
        presetOptions: { ...i, corePresets: [], overridePresets: [] }
      });
      return;
    }
    let { versionCheck: a, versionUpdates: o } = i;
    mt(
      !o || o && a,
      "versionCheck should be defined when versionUpdates is true"
    );
    let l = {
      precedingUpgrade: await (0, qo.getPrecedingUpgrade)()
    };
    u && Object.assign(l, {
      versionStatus: o && a ? CF(a) : "disabled",
      storyIndex: xo(u.storyIndex),
      storyStats: u.stats
    }), (0, qo.telemetry)("dev", l, { configDir: i.configDir });
  }), t?.disableProjectJson || yv(e, i.configDir);
}
s(wF, "doTelemetry");

// src/core-server/utils/get-caching-middleware.ts
function AF() {
  return (e, t, r) => {
    t.setHeader("Cache-Control", "no-store"), r();
  };
}
s(AF, "getCachingMiddleware");

// src/core-server/utils/get-server-channel.ts
var $o = require("@storybook/core/channels"), is = Q(IF(), 1), fu = Q(require("ws"), 1);

// src/shared/universal-store/index.ts
var ln = Q(wr(), 1);

// src/shared/universal-store/instances.ts
var um = /* @__PURE__ */ new Map();

// src/shared/universal-store/index.ts
var k$ = "UNIVERSAL_STORE:", tr = {
  PENDING: "PENDING",
  RESOLVED: "RESOLVED",
  REJECTED: "REJECTED"
}, rr = class e {
  constructor(t, r) {
    /** Enable debug logs for this store */
    this.debugging = !1;
    // TODO: narrow type of listeners based on event type
    this.listeners = /* @__PURE__ */ new Map([["*", /* @__PURE__ */ new Set()]]);
    /** Gets the current state */
    this.getState = /* @__PURE__ */ s(() => (this.debug("getState", { state: this.state }), this.state), "getState");
    /**
     * Subscribes to store events
     *
     * @returns A function to unsubscribe
     */
    this.subscribe = /* @__PURE__ */ s((t, r) => {
      let i = typeof t == "function", n = i ? "*" : t, u = i ? t : r;
      if (this.debug("subscribe", { eventType: n, listener: u }), !u)
        throw new TypeError(
          `Missing first subscribe argument, or second if first is the event type, when subscribing to a UniversalStore with id '${this.id}'`
        );
      return this.listeners.has(n) || this.listeners.set(n, /* @__PURE__ */ new Set()), this.listeners.get(n).add(u), () => {
        this.debug("unsubscribe", { eventType: n, listener: u }), this.listeners.has(n) && (this.listeners.get(n).delete(u), this.listeners.
        get(n)?.size === 0 && this.listeners.delete(n));
      };
    }, "subscribe");
    /** Sends a custom event to the other stores */
    this.send = /* @__PURE__ */ s((t) => {
      if (this.debug("send", { event: t }), this.status !== e.Status.READY)
        throw new TypeError(
          ln.dedent`Cannot send event before store is ready. You can get the current status with store.status,
        or await store.readyPromise to wait for the store to be ready before sending events.
        ${JSON.stringify(
            {
              event: t,
              id: this.id,
              actor: this.actor,
              environment: this.environment
            },
            null,
            2
          )}`
        );
      this.emitToListeners(t, { actor: this.actor }), this.emitToChannel(t, { actor: this.actor });
    }, "send");
    if (this.debugging = t.debug ?? !1, !e.isInternalConstructing)
      throw new TypeError(
        "UniversalStore is not constructable - use UniversalStore.create() instead"
      );
    if (e.isInternalConstructing = !1, this.id = t.id, this.actorId = Date.now().toString(36) + Math.random().toString(36).substring(2), this.
    actorType = t.leader ? e.ActorType.LEADER : e.ActorType.FOLLOWER, this.state = t.initialState, this.channelEventName = `${k$}${this.id}`,
    this.debug("constructor", {
      options: t,
      environmentOverrides: r,
      channelEventName: this.channelEventName
    }), this.actor.type === e.ActorType.LEADER)
      this.syncing = {
        state: tr.RESOLVED,
        promise: Promise.resolve()
      };
    else {
      let i, n, u = new Promise((a, o) => {
        i = /* @__PURE__ */ s(() => {
          this.syncing.state === tr.PENDING && (this.syncing.state = tr.RESOLVED, a());
        }, "syncingResolve"), n = /* @__PURE__ */ s((l) => {
          this.syncing.state === tr.PENDING && (this.syncing.state = tr.REJECTED, o(l));
        }, "syncingReject");
      });
      this.syncing = {
        state: tr.PENDING,
        promise: u,
        resolve: i,
        reject: n
      };
    }
    this.getState = this.getState.bind(this), this.setState = this.setState.bind(this), this.subscribe = this.subscribe.bind(this), this.onStateChange =
    this.onStateChange.bind(this), this.send = this.send.bind(this), this.emitToChannel = this.emitToChannel.bind(this), this.prepareThis = this.
    prepareThis.bind(this), this.emitToListeners = this.emitToListeners.bind(this), this.handleChannelEvents = this.handleChannelEvents.bind(
    this), this.debug = this.debug.bind(this), this.channel = r?.channel ?? e.preparation.channel, this.environment = r?.environment ?? e.preparation.
    environment, this.channel && this.environment ? this.prepareThis({ channel: this.channel, environment: this.environment }) : e.preparation.
    promise.then(this.prepareThis);
  }
  static {
    s(this, "UniversalStore");
  }
  static {
    /**
     * Defines the possible actor types in the store system
     *
     * @readonly
     */
    this.ActorType = {
      LEADER: "LEADER",
      FOLLOWER: "FOLLOWER"
    };
  }
  static {
    /**
     * Defines the possible environments the store can run in
     *
     * @readonly
     */
    this.Environment = {
      SERVER: "SERVER",
      MANAGER: "MANAGER",
      PREVIEW: "PREVIEW",
      UNKNOWN: "UNKNOWN",
      MOCK: "MOCK"
    };
  }
  static {
    /**
     * Internal event types used for store synchronization
     *
     * @readonly
     */
    this.InternalEventType = {
      EXISTING_STATE_REQUEST: "__EXISTING_STATE_REQUEST",
      EXISTING_STATE_RESPONSE: "__EXISTING_STATE_RESPONSE",
      SET_STATE: "__SET_STATE",
      LEADER_CREATED: "__LEADER_CREATED",
      FOLLOWER_CREATED: "__FOLLOWER_CREATED"
    };
  }
  static {
    this.Status = {
      UNPREPARED: "UNPREPARED",
      SYNCING: "SYNCING",
      READY: "READY",
      ERROR: "ERROR"
    };
  }
  static {
    // This is used to check if constructor was called from the static factory create()
    this.isInternalConstructing = !1;
  }
  static {
    e.setupPreparationPromise();
  }
  static setupPreparationPromise() {
    let t, r, i = new Promise(
      (n, u) => {
        t = /* @__PURE__ */ s((a) => {
          n(a);
        }, "resolveRef"), r = /* @__PURE__ */ s((...a) => {
          u(a);
        }, "rejectRef");
      }
    );
    e.preparation = {
      resolve: t,
      reject: r,
      promise: i
    };
  }
  /** The actor object representing the store instance with a unique ID and a type */
  get actor() {
    return Object.freeze({
      id: this.actorId,
      type: this.actorType,
      environment: this.environment ?? e.Environment.UNKNOWN
    });
  }
  /**
   * The current state of the store, that signals both if the store is prepared by Storybook and
   * also - in the case of a follower - if the state has been synced with the leader's state.
   */
  get status() {
    if (!this.channel || !this.environment)
      return e.Status.UNPREPARED;
    switch (this.syncing?.state) {
      case tr.PENDING:
      case void 0:
        return e.Status.SYNCING;
      case tr.REJECTED:
        return e.Status.ERROR;
      case tr.RESOLVED:
      default:
        return e.Status.READY;
    }
  }
  /**
   * A promise that resolves when the store is fully ready. A leader will be ready when the store
   * has been prepared by Storybook, which is almost instantly.
   *
   * A follower will be ready when the state has been synced with the leader's state, within a few
   * hundred milliseconds.
   */
  untilReady() {
    return Promise.all([e.preparation.promise, this.syncing?.promise]);
  }
  /** Creates a new instance of UniversalStore */
  static create(t) {
    if (!t || typeof t?.id != "string")
      throw new TypeError("id is required and must be a string, when creating a UniversalStore");
    t.debug && console.debug(
      ln.dedent`[UniversalStore]
        create`,
      { options: t }
    );
    let r = um.get(t.id);
    if (r)
      return console.warn(ln.dedent`UniversalStore with id "${t.id}" already exists in this environment, re-using existing.
        You should reuse the existing instance instead of trying to create a new one.`), r;
    e.isInternalConstructing = !0;
    let i = new e(t);
    return um.set(t.id, i), i;
  }
  /**
   * Used by Storybook to set the channel for all instances of UniversalStore in the given
   * environment.
   *
   * @internal
   */
  static __prepare(t, r) {
    e.preparation.channel = t, e.preparation.environment = r, e.preparation.resolve({ channel: t, environment: r });
  }
  /**
   * Updates the store's state
   *
   * Either a new state or a state updater function can be passed to the method.
   */
  setState(t) {
    let r = this.state, i = typeof t == "function" ? t(r) : t;
    if (this.debug("setState", { newState: i, previousState: r, updater: t }), this.status !== e.Status.READY)
      throw new TypeError(
        ln.dedent`Cannot set state before store is ready. You can get the current status with store.status,
        or await store.readyPromise to wait for the store to be ready before sending events.
        ${JSON.stringify(
          {
            newState: i,
            id: this.id,
            actor: this.actor,
            environment: this.environment
          },
          null,
          2
        )}`
      );
    this.state = i;
    let n = {
      type: e.InternalEventType.SET_STATE,
      payload: {
        state: i,
        previousState: r
      }
    };
    this.emitToChannel(n, { actor: this.actor }), this.emitToListeners(n, { actor: this.actor });
  }
  /**
   * Subscribes to state changes
   *
   * @returns Unsubscribe function
   */
  onStateChange(t) {
    return this.debug("onStateChange", { listener: t }), this.subscribe(
      e.InternalEventType.SET_STATE,
      ({ payload: r }, i) => {
        t(r.state, r.previousState, i);
      }
    );
  }
  emitToChannel(t, r) {
    this.debug("emitToChannel", { event: t, eventInfo: r, channel: this.channel }), this.channel?.emit(this.channelEventName, {
      event: t,
      eventInfo: r
    });
  }
  prepareThis({
    channel: t,
    environment: r
  }) {
    this.channel = t, this.environment = r, this.debug("prepared", { channel: t, environment: r }), this.channel.on(this.channelEventName, this.
    handleChannelEvents), this.actor.type === e.ActorType.LEADER ? this.emitToChannel(
      { type: e.InternalEventType.LEADER_CREATED },
      { actor: this.actor }
    ) : (this.emitToChannel(
      { type: e.InternalEventType.FOLLOWER_CREATED },
      { actor: this.actor }
    ), this.emitToChannel(
      { type: e.InternalEventType.EXISTING_STATE_REQUEST },
      { actor: this.actor }
    ), setTimeout(() => {
      this.syncing.reject(
        new TypeError(
          `No existing state found for follower with id: '${this.id}'. Make sure a leader with the same id exists before creating a follower\
.`
        )
      );
    }, 1e3));
  }
  emitToListeners(t, r) {
    let i = this.listeners.get(t.type), n = this.listeners.get("*");
    this.debug("emitToListeners", {
      event: t,
      eventInfo: r,
      eventTypeListeners: i,
      everythingListeners: n
    }), [...i ?? [], ...n ?? []].forEach(
      (u) => u(t, r)
    );
  }
  handleChannelEvents(t) {
    let { event: r, eventInfo: i } = t;
    if ([i.actor.id, i.forwardingActor?.id].includes(this.actor.id)) {
      this.debug("handleChannelEvents: Ignoring event from self", { channelEvent: t });
      return;
    } else if (this.syncing?.state === tr.PENDING && r.type !== e.InternalEventType.EXISTING_STATE_RESPONSE) {
      this.debug("handleChannelEvents: Ignoring event while syncing", { channelEvent: t });
      return;
    }
    if (this.debug("handleChannelEvents", { channelEvent: t }), this.actor.type === e.ActorType.LEADER) {
      let n = !0;
      switch (r.type) {
        case e.InternalEventType.EXISTING_STATE_REQUEST:
          n = !1;
          let u = {
            type: e.InternalEventType.EXISTING_STATE_RESPONSE,
            payload: this.state
          };
          this.debug("handleChannelEvents: responding to existing state request", {
            responseEvent: u
          }), this.emitToChannel(u, { actor: this.actor });
          break;
        case e.InternalEventType.LEADER_CREATED:
          n = !1, this.syncing.state = tr.REJECTED, this.debug("handleChannelEvents: erroring due to second leader being created", {
            event: r
          }), console.error(
            ln.dedent`Detected multiple UniversalStore leaders created with the same id "${this.id}".
            Only one leader can exists at a time, your stores are now in an invalid state.
            Leaders detected:
            this: ${JSON.stringify(this.actor, null, 2)}
            other: ${JSON.stringify(i.actor, null, 2)}`
          );
          break;
      }
      n && (this.debug("handleChannelEvents: forwarding event", { channelEvent: t }), this.emitToChannel(r, { actor: i.actor, forwardingActor: this.
      actor }));
    }
    if (this.actor.type === e.ActorType.FOLLOWER)
      switch (r.type) {
        case e.InternalEventType.EXISTING_STATE_RESPONSE:
          if (this.debug("handleChannelEvents: Setting state from leader's existing state response", {
            event: r
          }), this.syncing?.state !== tr.PENDING)
            break;
          this.syncing.resolve?.();
          let n = {
            type: e.InternalEventType.SET_STATE,
            payload: {
              state: r.payload,
              previousState: this.state
            }
          };
          this.state = r.payload, this.emitToListeners(n, i);
          break;
      }
    switch (r.type) {
      case e.InternalEventType.SET_STATE:
        this.debug("handleChannelEvents: Setting state", { event: r }), this.state = r.payload.state;
        break;
    }
    this.emitToListeners(r, { actor: i.actor });
  }
  debug(t, r) {
    this.debugging && console.debug(
      ln.dedent`[UniversalStore::${this.id}::${this.environment ?? e.Environment.UNKNOWN}]
        ${t}`,
      JSON.stringify(
        {
          data: r,
          actor: this.actor,
          state: this.state,
          status: this.status
        },
        null,
        2
      )
    );
  }
  /**
   * Used to reset the static fields of the UniversalStore class when cleaning up tests
   *
   * @internal
   */
  static __reset() {
    e.preparation.reject(new Error("reset")), e.setupPreparationPromise(), e.isInternalConstructing = !1;
  }
};

// src/core-server/utils/get-server-channel.ts
var am = class {
  static {
    s(this, "ServerChannelTransport");
  }
  constructor(t) {
    this.socket = new fu.WebSocketServer({ noServer: !0 }), t.on("upgrade", (i, n, u) => {
      i.url === "/storybook-server-channel" && this.socket.handleUpgrade(i, n, u, (a) => {
        this.socket.emit("connection", a, i);
      });
    }), this.socket.on("connection", (i) => {
      i.on("message", (n) => {
        let u = n.toString(), a = typeof u == "string" && (0, is.isJSON)(u) ? (0, is.parse)(u, { allowFunction: !1, allowClass: !1 }) : u;
        this.handler?.(a);
      });
    });
    let r = setInterval(() => {
      this.send({ type: "ping" });
    }, $o.HEARTBEAT_INTERVAL);
    this.socket.on("close", /* @__PURE__ */ s(function() {
      clearInterval(r);
    }, "close")), process.on("SIGTERM", () => {
      this.socket.clients.forEach((i) => {
        i.readyState === fu.default.OPEN && i.close(1001, "Server is shutting down");
      }), this.socket.close(() => process.exit(0));
    });
  }
  setHandler(t) {
    this.handler = t;
  }
  send(t) {
    let r = (0, is.stringify)(t, { maxDepth: 15, allowFunction: !1, allowClass: !1 });
    Array.from(this.socket.clients).filter((i) => i.readyState === fu.default.OPEN).forEach((i) => i.send(r));
  }
};
function OF(e) {
  let t = [new am(e)], r = new $o.Channel({ transports: t, async: !0 });
  return rr.__prepare(r, rr.Environment.SERVER), r;
}
s(OF, "getServerChannel");

// src/core-server/utils/getAccessControlMiddleware.ts
function RF(e) {
  return (t, r, i) => {
    r.setHeader("Access-Control-Allow-Origin", "*"), r.setHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Ac\
cept"), e && (r.setHeader("Cross-Origin-Opener-Policy", "same-origin"), r.setHeader("Cross-Origin-Embedder-Policy", "require-corp")), i();
  };
}
s(RF, "getAccessControlMiddleware");

// src/core-server/utils/getStoryIndexGenerator.ts
var NF = require("@storybook/core/common");
async function LF(e, t, r) {
  let i = process.cwd(), n = t.configDir, u = {
    configDir: n,
    workingDir: i
  }, a = t.presets.apply("stories"), o = t.presets.apply("experimental_indexers", []), l = t.presets.apply("docs", {}), c = (0, NF.normalizeStories)(
  await a, u), h = new ki(c, {
    ...u,
    indexers: await o,
    docs: await l,
    workingDir: i
  }), p = h.initialize().then(() => h);
  return MC({
    app: e,
    initializedStoryIndexGenerator: p,
    normalizedStories: c,
    serverChannel: r,
    workingDir: i,
    configDir: n
  }), p;
}
s(LF, "getStoryIndexGenerator");

// src/core-server/utils/middleware.ts
var MF = require("node:fs"), jF = require("node:path");
var B$ = /* @__PURE__ */ s((e) => [".js", ".cjs"].reduce((t, r) => {
  let i = `${e}${r}`;
  return !t && (0, MF.existsSync)(i) ? i : t;
}, ""), "fileExists");
function qF(e) {
  let t = B$((0, jF.resolve)(e, "middleware"));
  if (t) {
    let r = require(t);
    return r.__esModule && (r = r.default), r;
  }
  return () => {
  };
}
s(qF, "getMiddleware");

// src/core-server/utils/open-in-browser.ts
var FS = require("@storybook/core/node-logger"), SS = Q(hS(), 1), _S = Q(require("better-opn"), 1), kS = Q(AS(), 1), BS = Q(wr(), 1);
function TS(e) {
  let t = process.env.BROWSER, r = t === "chrome" || t === "chromium" || t === "brave" || t === "com.brave.browser", i = t ? { app: { name: t } } :
  {};
  (0, SS.default)(async (n, u) => {
    try {
      u && (u.isChrome || u.isChromium || u.identity === "com.brave.browser" || r) ? await (0, _S.default)(e) : await (0, kS.default)(e, i);
    } catch {
      FS.logger.error(BS.dedent`
        Could not open ${e} inside a browser. If you're running this command inside a
        docker container or on a CI, you need to pass the '--ci' flag to prevent opening a
        browser by default.
      `);
    }
  });
}
s(TS, "openInBrowser");

// src/core-server/utils/server-address.ts
var e3 = Q(require("node:os"), 1), t3 = require("@storybook/core/node-logger"), r3 = Q(ZS(), 1);
function i3(e, t, r, i) {
  let n = new URL(`${r}://localhost:${e}/`), u = new URL(`${r}://${t || NV()}:${e}/`);
  if (i) {
    let a = `?path=${decodeURIComponent(
      i.startsWith("/") ? i : `/${i}`
    )}`;
    n.search = a, u.search = a;
  }
  return {
    address: n.href,
    networkAddress: u.href
  };
}
s(i3, "getServerAddresses");
var n3 = /* @__PURE__ */ s((e, { exactPort: t } = {}) => (0, r3.default)(e).then((r) => (r !== e && t && process.exit(-1), r)).catch((r) => {
  t3.logger.error(r), process.exit(-1);
}), "getServerPort"), s3 = /* @__PURE__ */ s((e, { https: t }) => `${t ? "wss" : "ws"}://localhost:${e}/storybook-server-channel`, "getServe\
rChannelUrl"), NV = /* @__PURE__ */ s(() => {
  let t = Object.values(e3.default.networkInterfaces()).flat().filter((r) => r && r.family === "IPv4" && !r.internal);
  return t.length ? t[0]?.address : "0.0.0.0";
}, "getLocalIp");

// src/core-server/utils/server-init.ts
var Ko = require("node:fs/promises"), Am = require("@storybook/core/node-logger"), u3 = Q(require("http"), 1), a3 = Q(require("https"), 1);
async function o3(e) {
  if (!e.https)
    return u3.default.createServer();
  e.sslCert || (Am.logger.error("Error: --ssl-cert is required with --https"), process.exit(-1)), e.sslKey || (Am.logger.error("Error: --ssl\
-key is required with --https"), process.exit(-1));
  let t = {
    ca: await Promise.all((e.sslCa || []).map((r) => (0, Ko.readFile)(r, { encoding: "utf8" }))),
    cert: await (0, Ko.readFile)(e.sslCert, { encoding: "utf8" }),
    key: await (0, Ko.readFile)(e.sslKey, { encoding: "utf8" })
  };
  return a3.default.createServer(t);
}
s(o3, "getServer");

// src/core-server/dev-server.ts
async function h3(e) {
  let [t, r] = await Promise.all([o3(e), e.presets.apply("core")]), i = sm({ server: t }), n = await e.presets.apply(
    "experimental_serverChannel",
    OF(t)
  ), u, a = LF(i, e, n).catch((S) => {
    u = S;
  });
  i.use(em({ level: 1 })), typeof e.extendServer == "function" && e.extendServer(t), i.use(RF(r?.crossOriginIsolated ?? !1)), i.use(AF()), qF(
  e.configDir)(i);
  let { port: o, host: l, initialPath: c } = e;
  mt(o, "expected options to have a port");
  let h = e.https ? "https" : "http", { address: p, networkAddress: d } = i3(o, l, h, c);
  if (!r?.builder)
    throw new c3.MissingBuilderError();
  let m = typeof r?.builder == "string" ? r.builder : r?.builder?.name, [D, g] = await Promise.all([
    Xs(m, e.configDir),
    Gs(),
    ov(i, e)
  ]);
  e.debugWebpack && (0, l3.logConfig)("Preview webpack config", await D.getConfig(e));
  let v = await g.start({
    startTime: process.hrtime(),
    options: e,
    router: i,
    server: t,
    channel: n
  }), x = await Promise.resolve();
  e.ignorePreview || (e.quiet || Fm.logger.info("=> Starting preview.."), x = await D.start({
    startTime: process.hrtime(),
    options: e,
    router: i,
    server: t,
    channel: n
  }).catch(async (S) => {
    throw Fm.logger.error("=> Failed to build the preview"), process.exitCode = 1, await g?.bail().catch(), await D?.bail().catch(), S;
  }));
  let C = new Promise((S, k) => {
    t.once("error", k), i.listen({ port: o, host: l }, S);
  });
  if (await Promise.all([a, C]).then(async ([S]) => {
    S && !e.ci && !e.smokeTest && e.open && TS(l ? d : p);
  }), u)
    throw await g?.bail().catch(), await D?.bail().catch(), u;
  return wF(i, r, a, e), { previewResult: x, managerResult: v, address: p, networkAddress: d };
}
s(h3, "storybookDevServer");

// src/core-server/utils/output-startup-information.ts
var nk = require("@storybook/core/node-logger");

// ../node_modules/boxen/index.js
var Eu = Q(require("node:process"), 1);

// ../node_modules/ansi-regex/index.js
function Sm({ onlyFirst: e = !1 } = {}) {
  let t = [
    "[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)",
    "(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))"
  ].join("|");
  return new RegExp(t, e ? void 0 : "g");
}
s(Sm, "ansiRegex");

// ../node_modules/strip-ansi/index.js
var LV = Sm();
function oi(e) {
  if (typeof e != "string")
    throw new TypeError(`Expected a \`string\`, got \`${typeof e}\``);
  return e.replace(LV, "");
}
s(oi, "stripAnsi");

// ../node_modules/boxen/node_modules/string-width/index.js
var d3 = Q(Qo(), 1), m3 = Q(Zo(), 1);
function $r(e, t = {}) {
  if (typeof e != "string" || e.length === 0 || (t = {
    ambiguousIsNarrow: !0,
    ...t
  }, e = oi(e), e.length === 0))
    return 0;
  e = e.replace((0, m3.default)(), "  ");
  let r = t.ambiguousIsNarrow ? 1 : 2, i = 0;
  for (let n of e) {
    let u = n.codePointAt(0);
    if (u <= 31 || u >= 127 && u <= 159 || u >= 768 && u <= 879)
      continue;
    switch (d3.default.eastAsianWidth(n)) {
      case "F":
      case "W":
        i += 2;
        break;
      case "A":
        i += r;
        break;
      default:
        i += 1;
    }
  }
  return i;
}
s($r, "stringWidth");

// ../node_modules/boxen/node_modules/chalk/source/vendor/ansi-styles/index.js
var D3 = /* @__PURE__ */ s((e = 0) => (t) => `\x1B[${t + e}m`, "wrapAnsi16"), g3 = /* @__PURE__ */ s((e = 0) => (t) => `\x1B[${38 + e};5;${t}\
m`, "wrapAnsi256"), x3 = /* @__PURE__ */ s((e = 0) => (t, r, i) => `\x1B[${38 + e};2;${t};${r};${i}m`, "wrapAnsi16m"), $e = {
  modifier: {
    reset: [0, 0],
    // 21 isn't widely supported and 22 does the same thing
    bold: [1, 22],
    dim: [2, 22],
    italic: [3, 23],
    underline: [4, 24],
    overline: [53, 55],
    inverse: [7, 27],
    hidden: [8, 28],
    strikethrough: [9, 29]
  },
  color: {
    black: [30, 39],
    red: [31, 39],
    green: [32, 39],
    yellow: [33, 39],
    blue: [34, 39],
    magenta: [35, 39],
    cyan: [36, 39],
    white: [37, 39],
    // Bright color
    blackBright: [90, 39],
    gray: [90, 39],
    // Alias of `blackBright`
    grey: [90, 39],
    // Alias of `blackBright`
    redBright: [91, 39],
    greenBright: [92, 39],
    yellowBright: [93, 39],
    blueBright: [94, 39],
    magentaBright: [95, 39],
    cyanBright: [96, 39],
    whiteBright: [97, 39]
  },
  bgColor: {
    bgBlack: [40, 49],
    bgRed: [41, 49],
    bgGreen: [42, 49],
    bgYellow: [43, 49],
    bgBlue: [44, 49],
    bgMagenta: [45, 49],
    bgCyan: [46, 49],
    bgWhite: [47, 49],
    // Bright color
    bgBlackBright: [100, 49],
    bgGray: [100, 49],
    // Alias of `bgBlackBright`
    bgGrey: [100, 49],
    // Alias of `bgBlackBright`
    bgRedBright: [101, 49],
    bgGreenBright: [102, 49],
    bgYellowBright: [103, 49],
    bgBlueBright: [104, 49],
    bgMagentaBright: [105, 49],
    bgCyanBright: [106, 49],
    bgWhiteBright: [107, 49]
  }
}, Zee = Object.keys($e.modifier), MV = Object.keys($e.color), jV = Object.keys($e.bgColor), ete = [...MV, ...jV];
function qV() {
  let e = /* @__PURE__ */ new Map();
  for (let [t, r] of Object.entries($e)) {
    for (let [i, n] of Object.entries(r))
      $e[i] = {
        open: `\x1B[${n[0]}m`,
        close: `\x1B[${n[1]}m`
      }, r[i] = $e[i], e.set(n[0], n[1]);
    Object.defineProperty($e, t, {
      value: r,
      enumerable: !1
    });
  }
  return Object.defineProperty($e, "codes", {
    value: e,
    enumerable: !1
  }), $e.color.close = "\x1B[39m", $e.bgColor.close = "\x1B[49m", $e.color.ansi = D3(), $e.color.ansi256 = g3(), $e.color.ansi16m = x3(), $e.
  bgColor.ansi = D3(10), $e.bgColor.ansi256 = g3(10), $e.bgColor.ansi16m = x3(10), Object.defineProperties($e, {
    rgbToAnsi256: {
      value(t, r, i) {
        return t === r && r === i ? t < 8 ? 16 : t > 248 ? 231 : Math.round((t - 8) / 247 * 24) + 232 : 16 + 36 * Math.round(t / 255 * 5) + 6 *
        Math.round(r / 255 * 5) + Math.round(i / 255 * 5);
      },
      enumerable: !1
    },
    hexToRgb: {
      value(t) {
        let r = /[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));
        if (!r)
          return [0, 0, 0];
        let [i] = r;
        i.length === 3 && (i = [...i].map((u) => u + u).join(""));
        let n = Number.parseInt(i, 16);
        return [
          /* eslint-disable no-bitwise */
          n >> 16 & 255,
          n >> 8 & 255,
          n & 255
          /* eslint-enable no-bitwise */
        ];
      },
      enumerable: !1
    },
    hexToAnsi256: {
      value: /* @__PURE__ */ s((t) => $e.rgbToAnsi256(...$e.hexToRgb(t)), "value"),
      enumerable: !1
    },
    ansi256ToAnsi: {
      value(t) {
        if (t < 8)
          return 30 + t;
        if (t < 16)
          return 90 + (t - 8);
        let r, i, n;
        if (t >= 232)
          r = ((t - 232) * 10 + 8) / 255, i = r, n = r;
        else {
          t -= 16;
          let o = t % 36;
          r = Math.floor(t / 36) / 5, i = Math.floor(o / 6) / 5, n = o % 6 / 5;
        }
        let u = Math.max(r, i, n) * 2;
        if (u === 0)
          return 30;
        let a = 30 + (Math.round(n) << 2 | Math.round(i) << 1 | Math.round(r));
        return u === 2 && (a += 60), a;
      },
      enumerable: !1
    },
    rgbToAnsi: {
      value: /* @__PURE__ */ s((t, r, i) => $e.ansi256ToAnsi($e.rgbToAnsi256(t, r, i)), "value"),
      enumerable: !1
    },
    hexToAnsi: {
      value: /* @__PURE__ */ s((t) => $e.ansi256ToAnsi($e.hexToAnsi256(t)), "value"),
      enumerable: !1
    }
  }), $e;
}
s(qV, "assembleStyles");
var $V = qV(), yr = $V;

// ../node_modules/boxen/node_modules/chalk/source/vendor/supports-color/index.js
var tl = Q(require("node:process"), 1), E3 = Q(require("node:os"), 1), km = Q(require("node:tty"), 1);
function nr(e, t = globalThis.Deno ? globalThis.Deno.args : tl.default.argv) {
  let r = e.startsWith("-") ? "" : e.length === 1 ? "-" : "--", i = t.indexOf(r + e), n = t.indexOf("--");
  return i !== -1 && (n === -1 || i < n);
}
s(nr, "hasFlag");
var { env: Xe } = tl.default, el;
nr("no-color") || nr("no-colors") || nr("color=false") || nr("color=never") ? el = 0 : (nr("color") || nr("colors") || nr("color=true") || nr(
"color=always")) && (el = 1);
function VV() {
  if ("FORCE_COLOR" in Xe)
    return Xe.FORCE_COLOR === "true" ? 1 : Xe.FORCE_COLOR === "false" ? 0 : Xe.FORCE_COLOR.length === 0 ? 1 : Math.min(Number.parseInt(Xe.FORCE_COLOR,
    10), 3);
}
s(VV, "envForceColor");
function UV(e) {
  return e === 0 ? !1 : {
    level: e,
    hasBasic: !0,
    has256: e >= 2,
    has16m: e >= 3
  };
}
s(UV, "translateLevel");
function zV(e, { streamIsTTY: t, sniffFlags: r = !0 } = {}) {
  let i = VV();
  i !== void 0 && (el = i);
  let n = r ? el : i;
  if (n === 0)
    return 0;
  if (r) {
    if (nr("color=16m") || nr("color=full") || nr("color=truecolor"))
      return 3;
    if (nr("color=256"))
      return 2;
  }
  if ("TF_BUILD" in Xe && "AGENT_NAME" in Xe)
    return 1;
  if (e && !t && n === void 0)
    return 0;
  let u = n || 0;
  if (Xe.TERM === "dumb")
    return u;
  if (tl.default.platform === "win32") {
    let a = E3.default.release().split(".");
    return Number(a[0]) >= 10 && Number(a[2]) >= 10586 ? Number(a[2]) >= 14931 ? 3 : 2 : 1;
  }
  if ("CI" in Xe)
    return ["GITHUB_ACTIONS", "GITEA_ACTIONS", "CIRCLECI"].some((a) => a in Xe) ? 3 : ["TRAVIS", "APPVEYOR", "GITLAB_CI", "BUILDKITE", "DRON\
E"].some((a) => a in Xe) || Xe.CI_NAME === "codeship" ? 1 : u;
  if ("TEAMCITY_VERSION" in Xe)
    return /^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Xe.TEAMCITY_VERSION) ? 1 : 0;
  if (Xe.COLORTERM === "truecolor" || Xe.TERM === "xterm-kitty")
    return 3;
  if ("TERM_PROGRAM" in Xe) {
    let a = Number.parseInt((Xe.TERM_PROGRAM_VERSION || "").split(".")[0], 10);
    switch (Xe.TERM_PROGRAM) {
      case "iTerm.app":
        return a >= 3 ? 3 : 2;
      case "Apple_Terminal":
        return 2;
    }
  }
  return /-256(color)?$/i.test(Xe.TERM) ? 2 : /^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Xe.TERM) || "COLORTERM" in Xe ?
  1 : u;
}
s(zV, "_supportsColor");
function y3(e, t = {}) {
  let r = zV(e, {
    streamIsTTY: e && e.isTTY,
    ...t
  });
  return UV(r);
}
s(y3, "createSupportsColor");
var HV = {
  stdout: y3({ isTTY: km.default.isatty(1) }),
  stderr: y3({ isTTY: km.default.isatty(2) })
}, b3 = HV;

// ../node_modules/boxen/node_modules/chalk/source/utilities.js
function v3(e, t, r) {
  let i = e.indexOf(t);
  if (i === -1)
    return e;
  let n = t.length, u = 0, a = "";
  do
    a += e.slice(u, i) + t + r, u = i + n, i = e.indexOf(t, u);
  while (i !== -1);
  return a += e.slice(u), a;
}
s(v3, "stringReplaceAll");
function C3(e, t, r, i) {
  let n = 0, u = "";
  do {
    let a = e[i - 1] === "\r";
    u += e.slice(n, a ? i - 1 : i) + t + (a ? `\r
` : `
`) + r, n = i + 1, i = e.indexOf(`
`, n);
  } while (i !== -1);
  return u += e.slice(n), u;
}
s(C3, "stringEncaseCRLFWithFirstIndex");

// ../node_modules/boxen/node_modules/chalk/source/index.js
var { stdout: w3, stderr: A3 } = b3, Bm = Symbol("GENERATOR"), ls = Symbol("STYLER"), xu = Symbol("IS_EMPTY"), F3 = [
  "ansi",
  "ansi",
  "ansi256",
  "ansi16m"
], cs = /* @__PURE__ */ Object.create(null), WV = /* @__PURE__ */ s((e, t = {}) => {
  if (t.level && !(Number.isInteger(t.level) && t.level >= 0 && t.level <= 3))
    throw new Error("The `level` option should be an integer from 0 to 3");
  let r = w3 ? w3.level : 0;
  e.level = t.level === void 0 ? r : t.level;
}, "applyOptions");
var JV = /* @__PURE__ */ s((e) => {
  let t = /* @__PURE__ */ s((...r) => r.join(" "), "chalk");
  return WV(t, e), Object.setPrototypeOf(t, yu.prototype), t;
}, "chalkFactory");
function yu(e) {
  return JV(e);
}
s(yu, "createChalk");
Object.setPrototypeOf(yu.prototype, Function.prototype);
for (let [e, t] of Object.entries(yr))
  cs[e] = {
    get() {
      let r = rl(this, Pm(t.open, t.close, this[ls]), this[xu]);
      return Object.defineProperty(this, e, { value: r }), r;
    }
  };
cs.visible = {
  get() {
    let e = rl(this, this[ls], !0);
    return Object.defineProperty(this, "visible", { value: e }), e;
  }
};
var Tm = /* @__PURE__ */ s((e, t, r, ...i) => e === "rgb" ? t === "ansi16m" ? yr[r].ansi16m(...i) : t === "ansi256" ? yr[r].ansi256(yr.rgbToAnsi256(
...i)) : yr[r].ansi(yr.rgbToAnsi(...i)) : e === "hex" ? Tm("rgb", t, r, ...yr.hexToRgb(...i)) : yr[r][e](...i), "getModelAnsi"), GV = ["rgb",
"hex", "ansi256"];
for (let e of GV) {
  cs[e] = {
    get() {
      let { level: r } = this;
      return function(...i) {
        let n = Pm(Tm(e, F3[r], "color", ...i), yr.color.close, this[ls]);
        return rl(this, n, this[xu]);
      };
    }
  };
  let t = "bg" + e[0].toUpperCase() + e.slice(1);
  cs[t] = {
    get() {
      let { level: r } = this;
      return function(...i) {
        let n = Pm(Tm(e, F3[r], "bgColor", ...i), yr.bgColor.close, this[ls]);
        return rl(this, n, this[xu]);
      };
    }
  };
}
var XV = Object.defineProperties(() => {
}, {
  ...cs,
  level: {
    enumerable: !0,
    get() {
      return this[Bm].level;
    },
    set(e) {
      this[Bm].level = e;
    }
  }
}), Pm = /* @__PURE__ */ s((e, t, r) => {
  let i, n;
  return r === void 0 ? (i = e, n = t) : (i = r.openAll + e, n = t + r.closeAll), {
    open: e,
    close: t,
    openAll: i,
    closeAll: n,
    parent: r
  };
}, "createStyler"), rl = /* @__PURE__ */ s((e, t, r) => {
  let i = /* @__PURE__ */ s((...n) => YV(i, n.length === 1 ? "" + n[0] : n.join(" ")), "builder");
  return Object.setPrototypeOf(i, XV), i[Bm] = e, i[ls] = t, i[xu] = r, i;
}, "createBuilder"), YV = /* @__PURE__ */ s((e, t) => {
  if (e.level <= 0 || !t)
    return e[xu] ? "" : t;
  let r = e[ls];
  if (r === void 0)
    return t;
  let { openAll: i, closeAll: n } = r;
  if (t.includes("\x1B"))
    for (; r !== void 0; )
      t = v3(t, r.close, r.open), r = r.parent;
  let u = t.indexOf(`
`);
  return u !== -1 && (t = C3(t, n, i, u)), i + t + n;
}, "applyStyle");
Object.defineProperties(yu.prototype, cs);
var KV = yu(), cte = yu({ level: A3 ? A3.level : 0 });
var hn = KV;

// ../node_modules/widest-line/node_modules/string-width/index.js
var S3 = Q(Qo(), 1), _3 = Q(Zo(), 1);
function Im(e, t = {}) {
  if (typeof e != "string" || e.length === 0 || (t = {
    ambiguousIsNarrow: !0,
    ...t
  }, e = oi(e), e.length === 0))
    return 0;
  e = e.replace((0, _3.default)(), "  ");
  let r = t.ambiguousIsNarrow ? 1 : 2, i = 0;
  for (let n of e) {
    let u = n.codePointAt(0);
    if (u <= 31 || u >= 127 && u <= 159 || u >= 768 && u <= 879)
      continue;
    switch (S3.default.eastAsianWidth(n)) {
      case "F":
      case "W":
        i += 2;
        break;
      case "A":
        i += r;
        break;
      default:
        i += 1;
    }
  }
  return i;
}
s(Im, "stringWidth");

// ../node_modules/widest-line/index.js
function il(e) {
  let t = 0;
  for (let r of e.split(`
`))
    t = Math.max(t, Im(r));
  return t;
}
s(il, "widestLine");

// ../node_modules/boxen/index.js
var s_ = Q(Rm(), 1);

// ../node_modules/boxen/node_modules/camelcase/index.js
var ZV = /[\p{Lu}]/u, eU = /[\p{Ll}]/u, T3 = /^[\p{Lu}](?![\p{Lu}])/gu, O3 = /([\p{Alpha}\p{N}_]|$)/u, Nm = /[_.\- ]+/, tU = new RegExp("^" +
Nm.source), P3 = new RegExp(Nm.source + O3.source, "gu"), I3 = new RegExp("\\d+" + O3.source, "gu"), rU = /* @__PURE__ */ s((e, t, r, i) => {
  let n = !1, u = !1, a = !1, o = !1;
  for (let l = 0; l < e.length; l++) {
    let c = e[l];
    o = l > 2 ? e[l - 3] === "-" : !0, n && ZV.test(c) ? (e = e.slice(0, l) + "-" + e.slice(l), n = !1, a = u, u = !0, l++) : u && a && eU.test(
    c) && (!o || i) ? (e = e.slice(0, l - 1) + "-" + e.slice(l - 1), a = u, u = !1, n = !0) : (n = t(c) === c && r(c) !== c, a = u, u = r(c) ===
    c && t(c) !== c);
  }
  return e;
}, "preserveCamelCase"), iU = /* @__PURE__ */ s((e, t) => (T3.lastIndex = 0, e.replace(T3, (r) => t(r))), "preserveConsecutiveUppercase"), nU = /* @__PURE__ */ s(
(e, t) => (P3.lastIndex = 0, I3.lastIndex = 0, e.replace(P3, (r, i) => t(i)).replace(I3, (r) => t(r))), "postProcess");
function Lm(e, t) {
  if (!(typeof e == "string" || Array.isArray(e)))
    throw new TypeError("Expected the input to be `string | string[]`");
  if (t = {
    pascalCase: !1,
    preserveConsecutiveUppercase: !1,
    ...t
  }, Array.isArray(e) ? e = e.map((u) => u.trim()).filter((u) => u.length).join("-") : e = e.trim(), e.length === 0)
    return "";
  let r = t.locale === !1 ? (u) => u.toLowerCase() : (u) => u.toLocaleLowerCase(t.locale), i = t.locale === !1 ? (u) => u.toUpperCase() : (u) => u.
  toLocaleUpperCase(t.locale);
  return e.length === 1 ? Nm.test(e) ? "" : t.pascalCase ? i(e) : r(e) : (e !== r(e) && (e = rU(e, r, i, t.preserveConsecutiveUppercase)), e =
  e.replace(tU, ""), e = t.preserveConsecutiveUppercase ? iU(e, r) : r(e), t.pascalCase && (e = i(e.charAt(0)) + e.slice(1)), nU(e, i));
}
s(Lm, "camelCase");

// ../node_modules/boxen/index.js
var zm = Q(H3(), 1);

// ../node_modules/wrap-ansi/node_modules/string-width/index.js
var W3 = Q(Qo(), 1), J3 = Q(Zo(), 1);
function fn(e, t = {}) {
  if (typeof e != "string" || e.length === 0 || (t = {
    ambiguousIsNarrow: !0,
    ...t
  }, e = oi(e), e.length === 0))
    return 0;
  e = e.replace((0, J3.default)(), "  ");
  let r = t.ambiguousIsNarrow ? 1 : 2, i = 0;
  for (let n of e) {
    let u = n.codePointAt(0);
    if (u <= 31 || u >= 127 && u <= 159 || u >= 768 && u <= 879)
      continue;
    switch (W3.default.eastAsianWidth(n)) {
      case "F":
      case "W":
        i += 2;
        break;
      case "A":
        i += r;
        break;
      default:
        i += 1;
    }
  }
  return i;
}
s(fn, "stringWidth");

// ../node_modules/wrap-ansi/node_modules/ansi-styles/index.js
var G3 = /* @__PURE__ */ s((e = 0) => (t) => `\x1B[${t + e}m`, "wrapAnsi16"), X3 = /* @__PURE__ */ s((e = 0) => (t) => `\x1B[${38 + e};5;${t}\
m`, "wrapAnsi256"), Y3 = /* @__PURE__ */ s((e = 0) => (t, r, i) => `\x1B[${38 + e};2;${t};${r};${i}m`, "wrapAnsi16m"), Ve = {
  modifier: {
    reset: [0, 0],
    // 21 isn't widely supported and 22 does the same thing
    bold: [1, 22],
    dim: [2, 22],
    italic: [3, 23],
    underline: [4, 24],
    overline: [53, 55],
    inverse: [7, 27],
    hidden: [8, 28],
    strikethrough: [9, 29]
  },
  color: {
    black: [30, 39],
    red: [31, 39],
    green: [32, 39],
    yellow: [33, 39],
    blue: [34, 39],
    magenta: [35, 39],
    cyan: [36, 39],
    white: [37, 39],
    // Bright color
    blackBright: [90, 39],
    gray: [90, 39],
    // Alias of `blackBright`
    grey: [90, 39],
    // Alias of `blackBright`
    redBright: [91, 39],
    greenBright: [92, 39],
    yellowBright: [93, 39],
    blueBright: [94, 39],
    magentaBright: [95, 39],
    cyanBright: [96, 39],
    whiteBright: [97, 39]
  },
  bgColor: {
    bgBlack: [40, 49],
    bgRed: [41, 49],
    bgGreen: [42, 49],
    bgYellow: [43, 49],
    bgBlue: [44, 49],
    bgMagenta: [45, 49],
    bgCyan: [46, 49],
    bgWhite: [47, 49],
    // Bright color
    bgBlackBright: [100, 49],
    bgGray: [100, 49],
    // Alias of `bgBlackBright`
    bgGrey: [100, 49],
    // Alias of `bgBlackBright`
    bgRedBright: [101, 49],
    bgGreenBright: [102, 49],
    bgYellowBright: [103, 49],
    bgBlueBright: [104, 49],
    bgMagentaBright: [105, 49],
    bgCyanBright: [106, 49],
    bgWhiteBright: [107, 49]
  }
}, Rte = Object.keys(Ve.modifier), pU = Object.keys(Ve.color), fU = Object.keys(Ve.bgColor), Nte = [...pU, ...fU];
function dU() {
  let e = /* @__PURE__ */ new Map();
  for (let [t, r] of Object.entries(Ve)) {
    for (let [i, n] of Object.entries(r))
      Ve[i] = {
        open: `\x1B[${n[0]}m`,
        close: `\x1B[${n[1]}m`
      }, r[i] = Ve[i], e.set(n[0], n[1]);
    Object.defineProperty(Ve, t, {
      value: r,
      enumerable: !1
    });
  }
  return Object.defineProperty(Ve, "codes", {
    value: e,
    enumerable: !1
  }), Ve.color.close = "\x1B[39m", Ve.bgColor.close = "\x1B[49m", Ve.color.ansi = G3(), Ve.color.ansi256 = X3(), Ve.color.ansi16m = Y3(), Ve.
  bgColor.ansi = G3(10), Ve.bgColor.ansi256 = X3(10), Ve.bgColor.ansi16m = Y3(10), Object.defineProperties(Ve, {
    rgbToAnsi256: {
      value: /* @__PURE__ */ s((t, r, i) => t === r && r === i ? t < 8 ? 16 : t > 248 ? 231 : Math.round((t - 8) / 247 * 24) + 232 : 16 + 36 *
      Math.round(t / 255 * 5) + 6 * Math.round(r / 255 * 5) + Math.round(i / 255 * 5), "value"),
      enumerable: !1
    },
    hexToRgb: {
      value: /* @__PURE__ */ s((t) => {
        let r = /[a-f\d]{6}|[a-f\d]{3}/i.exec(t.toString(16));
        if (!r)
          return [0, 0, 0];
        let [i] = r;
        i.length === 3 && (i = [...i].map((u) => u + u).join(""));
        let n = Number.parseInt(i, 16);
        return [
          /* eslint-disable no-bitwise */
          n >> 16 & 255,
          n >> 8 & 255,
          n & 255
          /* eslint-enable no-bitwise */
        ];
      }, "value"),
      enumerable: !1
    },
    hexToAnsi256: {
      value: /* @__PURE__ */ s((t) => Ve.rgbToAnsi256(...Ve.hexToRgb(t)), "value"),
      enumerable: !1
    },
    ansi256ToAnsi: {
      value: /* @__PURE__ */ s((t) => {
        if (t < 8)
          return 30 + t;
        if (t < 16)
          return 90 + (t - 8);
        let r, i, n;
        if (t >= 232)
          r = ((t - 232) * 10 + 8) / 255, i = r, n = r;
        else {
          t -= 16;
          let o = t % 36;
          r = Math.floor(t / 36) / 5, i = Math.floor(o / 6) / 5, n = o % 6 / 5;
        }
        let u = Math.max(r, i, n) * 2;
        if (u === 0)
          return 30;
        let a = 30 + (Math.round(n) << 2 | Math.round(i) << 1 | Math.round(r));
        return u === 2 && (a += 60), a;
      }, "value"),
      enumerable: !1
    },
    rgbToAnsi: {
      value: /* @__PURE__ */ s((t, r, i) => Ve.ansi256ToAnsi(Ve.rgbToAnsi256(t, r, i)), "value"),
      enumerable: !1
    },
    hexToAnsi: {
      value: /* @__PURE__ */ s((t) => Ve.ansi256ToAnsi(Ve.hexToAnsi256(t)), "value"),
      enumerable: !1
    }
  }), Ve;
}
s(dU, "assembleStyles");
var mU = dU(), K3 = mU;

// ../node_modules/wrap-ansi/index.js
var nl = /* @__PURE__ */ new Set([
  "\x1B",
  "\x9B"
]), DU = 39, Vm = "\x07", e_ = "[", gU = "]", t_ = "m", Um = `${gU}8;;`, Q3 = /* @__PURE__ */ s((e) => `${nl.values().next().value}${e_}${e}${t_}`,
"wrapAnsiCode"), Z3 = /* @__PURE__ */ s((e) => `${nl.values().next().value}${Um}${e}${Vm}`, "wrapAnsiHyperlink"), xU = /* @__PURE__ */ s((e) => e.
split(" ").map((t) => fn(t)), "wordLengths"), $m = /* @__PURE__ */ s((e, t, r) => {
  let i = [...t], n = !1, u = !1, a = fn(oi(e[e.length - 1]));
  for (let [o, l] of i.entries()) {
    let c = fn(l);
    if (a + c <= r ? e[e.length - 1] += l : (e.push(l), a = 0), nl.has(l) && (n = !0, u = i.slice(o + 1).join("").startsWith(Um)), n) {
      u ? l === Vm && (n = !1, u = !1) : l === t_ && (n = !1);
      continue;
    }
    a += c, a === r && o < i.length - 1 && (e.push(""), a = 0);
  }
  !a && e[e.length - 1].length > 0 && e.length > 1 && (e[e.length - 2] += e.pop());
}, "wrapWord"), yU = /* @__PURE__ */ s((e) => {
  let t = e.split(" "), r = t.length;
  for (; r > 0 && !(fn(t[r - 1]) > 0); )
    r--;
  return r === t.length ? e : t.slice(0, r).join(" ") + t.slice(r).join("");
}, "stringVisibleTrimSpacesRight"), EU = /* @__PURE__ */ s((e, t, r = {}) => {
  if (r.trim !== !1 && e.trim() === "")
    return "";
  let i = "", n, u, a = xU(e), o = [""];
  for (let [c, h] of e.split(" ").entries()) {
    r.trim !== !1 && (o[o.length - 1] = o[o.length - 1].trimStart());
    let p = fn(o[o.length - 1]);
    if (c !== 0 && (p >= t && (r.wordWrap === !1 || r.trim === !1) && (o.push(""), p = 0), (p > 0 || r.trim === !1) && (o[o.length - 1] += "\
 ", p++)), r.hard && a[c] > t) {
      let d = t - p, m = 1 + Math.floor((a[c] - d - 1) / t);
      Math.floor((a[c] - 1) / t) < m && o.push(""), $m(o, h, t);
      continue;
    }
    if (p + a[c] > t && p > 0 && a[c] > 0) {
      if (r.wordWrap === !1 && p < t) {
        $m(o, h, t);
        continue;
      }
      o.push("");
    }
    if (p + a[c] > t && r.wordWrap === !1) {
      $m(o, h, t);
      continue;
    }
    o[o.length - 1] += h;
  }
  r.trim !== !1 && (o = o.map((c) => yU(c)));
  let l = [...o.join(`
`)];
  for (let [c, h] of l.entries()) {
    if (i += h, nl.has(h)) {
      let { groups: d } = new RegExp(`(?:\\${e_}(?<code>\\d+)m|\\${Um}(?<uri>.*)${Vm})`).exec(l.slice(c).join("")) || { groups: {} };
      if (d.code !== void 0) {
        let m = Number.parseFloat(d.code);
        n = m === DU ? void 0 : m;
      } else d.uri !== void 0 && (u = d.uri.length === 0 ? void 0 : d.uri);
    }
    let p = K3.codes.get(Number(n));
    l[c + 1] === `
` ? (u && (i += Z3("")), n && p && (i += Q3(p))) : h === `
` && (n && p && (i += Q3(n)), u && (i += Z3(u)));
  }
  return i;
}, "exec");
function sl(e, t, r) {
  return String(e).normalize().replace(/\r\n/g, `
`).split(`
`).map((i) => EU(i, t, r)).join(`
`);
}
s(sl, "wrapAnsi");

// ../node_modules/boxen/index.js
var kU = Q(Rm(), 1);
var qi = `
`, bt = " ", bu = "none", u_ = /* @__PURE__ */ s(() => {
  let { env: e, stdout: t, stderr: r } = Eu.default;
  return t?.columns ? t.columns : r?.columns ? r.columns : e.COLUMNS ? Number.parseInt(e.COLUMNS, 10) : 80;
}, "terminalColumns"), r_ = /* @__PURE__ */ s((e) => typeof e == "number" ? {
  top: e,
  right: e * 3,
  bottom: e,
  left: e * 3
} : {
  top: 0,
  right: 0,
  bottom: 0,
  left: 0,
  ...e
}, "getObject"), vu = /* @__PURE__ */ s((e) => e === bu ? 0 : 2, "getBorderWidth"), bU = /* @__PURE__ */ s((e) => {
  let t = [
    "topLeft",
    "topRight",
    "bottomRight",
    "bottomLeft",
    "left",
    "right",
    "top",
    "bottom"
  ], r;
  if (e === bu) {
    e = {};
    for (let i of t)
      e[i] = "";
  }
  if (typeof e == "string") {
    if (r = s_.default[e], !r)
      throw new TypeError(`Invalid border style: ${e}`);
  } else {
    typeof e?.vertical == "string" && (e.left = e.vertical, e.right = e.vertical), typeof e?.horizontal == "string" && (e.top = e.horizontal,
    e.bottom = e.horizontal);
    for (let i of t)
      if (e[i] === null || typeof e[i] != "string")
        throw new TypeError(`Invalid border style: ${i}`);
    r = e;
  }
  return r;
}, "getBorderChars"), vU = /* @__PURE__ */ s((e, t, r) => {
  let i = "", n = $r(e);
  switch (r) {
    case "left": {
      i = e + t.slice(n);
      break;
    }
    case "right": {
      i = t.slice(n) + e;
      break;
    }
    default: {
      t = t.slice(n), t.length % 2 === 1 ? (t = t.slice(Math.floor(t.length / 2)), i = t.slice(1) + e + t) : (t = t.slice(t.length / 2), i =
      t + e + t);
      break;
    }
  }
  return i;
}, "makeTitle"), CU = /* @__PURE__ */ s((e, { padding: t, width: r, textAlignment: i, height: n }) => {
  e = (0, zm.default)(e, { align: i });
  let u = e.split(qi), a = il(e), o = r - t.left - t.right;
  if (a > o) {
    let h = [];
    for (let p of u) {
      let d = sl(p, o, { hard: !0 }), D = (0, zm.default)(d, { align: i }).split(`
`), g = Math.max(...D.map((v) => $r(v)));
      for (let v of D) {
        let x;
        switch (i) {
          case "center": {
            x = bt.repeat((o - g) / 2) + v;
            break;
          }
          case "right": {
            x = bt.repeat(o - g) + v;
            break;
          }
          default: {
            x = v;
            break;
          }
        }
        h.push(x);
      }
    }
    u = h;
  }
  i === "center" && a < o ? u = u.map((h) => bt.repeat((o - a) / 2) + h) : i === "right" && a < o && (u = u.map((h) => bt.repeat(o - a) + h));
  let l = bt.repeat(t.left), c = bt.repeat(t.right);
  return u = u.map((h) => l + h + c), u = u.map((h) => {
    if (r - $r(h) > 0)
      switch (i) {
        case "center":
          return h + bt.repeat(r - $r(h));
        case "right":
          return h + bt.repeat(r - $r(h));
        default:
          return h + bt.repeat(r - $r(h));
      }
    return h;
  }), t.top > 0 && (u = [...Array.from({ length: t.top }).fill(bt.repeat(r)), ...u]), t.bottom > 0 && (u = [...u, ...Array.from({ length: t.
  bottom }).fill(bt.repeat(r))]), n && u.length > n ? u = u.slice(0, n) : n && u.length < n && (u = [...u, ...Array.from({ length: n - u.length }).
  fill(bt.repeat(r))]), u.join(qi);
}, "makeContentText"), wU = /* @__PURE__ */ s((e, t, r) => {
  let i = /* @__PURE__ */ s((h) => {
    let p = r.borderColor ? SU(r.borderColor)(h) : h;
    return r.dimBorder ? hn.dim(p) : p;
  }, "colorizeBorder"), n = /* @__PURE__ */ s((h) => r.backgroundColor ? _U(r.backgroundColor)(h) : h, "colorizeContent"), u = bU(r.borderStyle),
  a = u_(), o = bt.repeat(r.margin.left);
  if (r.float === "center") {
    let h = Math.max((a - t - vu(r.borderStyle)) / 2, 0);
    o = bt.repeat(h);
  } else if (r.float === "right") {
    let h = Math.max(a - t - r.margin.right - vu(r.borderStyle), 0);
    o = bt.repeat(h);
  }
  let l = "";
  r.margin.top && (l += qi.repeat(r.margin.top)), (r.borderStyle !== bu || r.title) && (l += i(o + u.topLeft + (r.title ? vU(r.title, u.top.
  repeat(t), r.titleAlignment) : u.top.repeat(t)) + u.topRight) + qi);
  let c = e.split(qi);
  return l += c.map((h) => o + i(u.left) + n(h) + i(u.right)).join(qi), r.borderStyle !== bu && (l += qi + i(o + u.bottomLeft + u.bottom.repeat(
  t) + u.bottomRight)), r.margin.bottom && (l += qi.repeat(r.margin.bottom)), l;
}, "boxContent"), AU = /* @__PURE__ */ s((e) => {
  if (e.fullscreen && Eu.default?.stdout) {
    let t = [Eu.default.stdout.columns, Eu.default.stdout.rows];
    typeof e.fullscreen == "function" && (t = e.fullscreen(...t)), e.width || (e.width = t[0]), e.height || (e.height = t[1]);
  }
  return e.width && (e.width = Math.max(1, e.width - vu(e.borderStyle))), e.height && (e.height = Math.max(1, e.height - vu(e.borderStyle))),
  e;
}, "sanitizeOptions"), i_ = /* @__PURE__ */ s((e, t) => t === bu ? e : ` ${e} `, "formatTitle"), FU = /* @__PURE__ */ s((e, t) => {
  t = AU(t);
  let r = t.width !== void 0, i = u_(), n = vu(t.borderStyle), u = i - t.margin.left - t.margin.right - n, a = il(sl(e, i - n, { hard: !0, trim: !1 })) +
  t.padding.left + t.padding.right;
  if (t.title && r ? (t.title = t.title.slice(0, Math.max(0, t.width - 2)), t.title && (t.title = i_(t.title, t.borderStyle))) : t.title && (t.
  title = t.title.slice(0, Math.max(0, u - 2)), t.title && (t.title = i_(t.title, t.borderStyle), $r(t.title) > a && (t.width = $r(t.title)))),
  t.width = t.width ? t.width : a, !r) {
    if (t.margin.left && t.margin.right && t.width > u) {
      let l = (i - t.width - n) / (t.margin.left + t.margin.right);
      t.margin.left = Math.max(0, Math.floor(t.margin.left * l)), t.margin.right = Math.max(0, Math.floor(t.margin.right * l));
    }
    t.width = Math.min(t.width, i - n - t.margin.left - t.margin.right);
  }
  return t.width - (t.padding.left + t.padding.right) <= 0 && (t.padding.left = 0, t.padding.right = 0), t.height && t.height - (t.padding.top +
  t.padding.bottom) <= 0 && (t.padding.top = 0, t.padding.bottom = 0), t;
}, "determineDimensions"), Hm = /* @__PURE__ */ s((e) => e.match(/^#(?:[0-f]{3}){1,2}$/i), "isHex"), n_ = /* @__PURE__ */ s((e) => typeof e ==
"string" && (hn[e] ?? Hm(e)), "isColorValid"), SU = /* @__PURE__ */ s((e) => Hm(e) ? hn.hex(e) : hn[e], "getColorFn"), _U = /* @__PURE__ */ s(
(e) => Hm(e) ? hn.bgHex(e) : hn[Lm(["bg", e])], "getBGColorFn");
function Wm(e, t) {
  if (t = {
    padding: 0,
    borderStyle: "single",
    dimBorder: !1,
    textAlignment: "left",
    float: "left",
    titleAlignment: "left",
    ...t
  }, t.align && (t.textAlignment = t.align), t.borderColor && !n_(t.borderColor))
    throw new Error(`${t.borderColor} is not a valid borderColor`);
  if (t.backgroundColor && !n_(t.backgroundColor))
    throw new Error(`${t.backgroundColor} is not a valid backgroundColor`);
  return t.padding = r_(t.padding), t.margin = r_(t.margin), t = FU(e, t), e = CU(e, t), wU(e, t.width, t);
}
s(Wm, "boxen");

// src/core-server/utils/output-startup-information.ts
var sk = Q(K_(), 1), $i = Q(Cr(), 1), n0 = Q(ek(), 1), uk = Q(wr(), 1);

// src/core-server/utils/update-check.ts
var t0 = require("@storybook/core/common"), r0 = require("@storybook/core/node-logger"), fs = Q(Cr(), 1), i0 = Q(require("semver"), 1), tk = Q(wr(), 1);
var { STORYBOOK_VERSION_BASE: hz = "https://storybook.js.org", CI: pz } = process.env, rk = /* @__PURE__ */ s(async (e) => {
  let t, r = Date.now();
  try {
    let i = await t0.cache.get("lastUpdateCheck", { success: !1, time: 0 });
    r - 864e5 > i.time && !pz ? (t = { success: !0, cached: !1, data: await (await Promise.race([
      fetch(`${hz}/versions.json?current=${e}`),
      // if fetch is too slow, we won't wait for it
      new Promise((a, o) => global.setTimeout(o, 1500))
    ])).json(), time: r }, await t0.cache.set("lastUpdateCheck", t)) : t = { ...i, cached: !0 };
  } catch (i) {
    t = { success: !1, cached: !1, error: i, time: r };
  }
  return t;
}, "updateCheck");
function ik(e, t) {
  let r;
  try {
    let n = `npx storybook@${i0.default.prerelease(e.data.latest.version) ? "next" : "latest"} upgrade`;
    r = e.success && i0.default.lt(t, e.data.latest.version) ? tk.dedent`
          ${r0.colors.orange(
      `A new version (${fs.default.bold(e.data.latest.version)}) is available!`
    )}

          ${fs.default.gray("Upgrade now:")} ${r0.colors.green(n)}

          ${fs.default.gray("Read full changelog:")} ${fs.default.gray(
      fs.default.underline("https://github.com/storybookjs/storybook/blob/main/CHANGELOG.md")
    )}
        ` : "";
  } catch {
    r = "";
  }
  return r;
}
s(ik, "createUpdateMessage");

// src/core-server/utils/output-startup-information.ts
function ak(e) {
  let { updateInfo: t, version: r, name: i, address: n, networkAddress: u, managerTotalTime: a, previewTotalTime: o } = e, l = ik(t, r), c = new sk.default(
  {
    chars: {
      top: "",
      "top-mid": "",
      "top-left": "",
      "top-right": "",
      bottom: "",
      "bottom-mid": "",
      "bottom-left": "",
      "bottom-right": "",
      left: "",
      "left-mid": "",
      mid: "",
      "mid-mid": "",
      right: "",
      "right-mid": "",
      middle: ""
    },
    // @ts-expect-error (Converted from ts-ignore)
    paddingLeft: 0,
    paddingRight: 0,
    paddingTop: 0,
    paddingBottom: 0
  });
  c.push(
    ["Local:", $i.default.cyan(n)],
    ["On your network:", $i.default.cyan(u)]
  );
  let h = [
    a && `${$i.default.underline((0, n0.default)(a))} for manager`,
    o && `${$i.default.underline((0, n0.default)(o))} for preview`
  ].filter(Boolean).join(" and ");
  console.log(
    Wm(
      uk.dedent`
          ${nk.colors.green(
        `Storybook ${$i.default.bold(r)} for ${$i.default.bold(i)} started`
      )}
          ${$i.default.gray(h)}

          ${c.toString()}${l ? `

${l}` : ""}
        `,
      { borderStyle: "round", padding: 1, borderColor: "#F1618C" }
    )
  );
}
s(ak, "outputStartupInformation");

// src/core-server/utils/warnOnIncompatibleAddons.ts
var ck = require("@storybook/core/node-logger");

// ../lib/cli/core/common/index.js
var ci = {};
a0(ci, require("@storybook/core/common"));

// ../lib/cli-storybook/src/doctor/getIncompatibleStorybookPackages.ts
var ds = Q(Cr(), 1), cl = Q(require("semver"), 1);
var fz = /* @__PURE__ */ s(async (e, t) => {
  let { currentStorybookVersion: r, skipErrors: i, packageManager: n } = t;
  try {
    let u = await n.getPackageJSON(e);
    if (u === null)
      return { packageName: e };
    let {
      version: a,
      name: o = e,
      dependencies: l,
      peerDependencies: c,
      homepage: h
    } = u, p = !!Object.entries({
      ...l,
      ...c
    }).filter(([D]) => ci.versions[D]).find(([D, g]) => g && cl.default.validRange(g) && !cl.default.satisfies(r, g)), d = ci.versions[o], m;
    return d && cl.default.gt(r, a) && (m = r), {
      packageName: o,
      packageVersion: a,
      homepage: h,
      hasIncompatibleDependencies: p,
      availableUpdate: m
    };
  } catch (u) {
    return i || console.log(`Error checking compatibility for ${e}, please report an issue:
`, u), { packageName: e };
  }
}, "checkPackageCompatibility"), ok = /* @__PURE__ */ s(async (e) => {
  let t = e.packageManager ?? ci.JsPackageManagerFactory.getPackageManager(), r = await t.getAllDependencies(), i = Object.keys(r).filter((n) => n.
  includes("storybook"));
  if (i.length === 0 && !e.skipErrors)
    throw new Error("No Storybook dependencies found in the package.json");
  return Promise.all(
    i.map((n) => fz(n, { ...e, packageManager: t }))
  );
}, "getIncompatibleStorybookPackages"), lk = /* @__PURE__ */ s((e, t) => {
  let r = [], i = e.filter(
    (n) => n.hasIncompatibleDependencies
  );
  return i.length > 0 && (r.push(
    `The following packages are incompatible with Storybook ${ds.default.bold(
      t
    )} as they depend on different major versions of Storybook packages:`
  ), i.forEach(
    ({ packageName: n, packageVersion: u, homepage: a, availableUpdate: o }) => {
      let l = `${ds.default.cyan(n)}@${ds.default.cyan(u)}`, c = o ? ` (${o} available!)` : "", h = a ? `
 Repo: ${ds.default.yellow(a)}` : "";
      r.push(`- ${l}${c}${h}`);
    }
  ), r.push(
    `
`,
    "Please consider updating your packages or contacting the maintainers for compatibility details.",
    "For more on Storybook 8 compatibility, see the linked GitHub issue:",
    ds.default.yellow("https://github.com/storybookjs/storybook/issues/26031")
  )), r.join(`
`);
}, "getIncompatiblePackagesSummary");

// src/core-server/utils/warnOnIncompatibleAddons.ts
var hk = /* @__PURE__ */ s(async (e) => {
  let t = await ok({
    skipUpgradeCheck: !0,
    skipErrors: !0,
    currentStorybookVersion: e
  }), r = await lk(
    t,
    e
  );
  r && ck.logger.warn(r);
}, "warnOnIncompatibleAddons");

// src/core-server/utils/warnWhenUsingArgTypesRegex.ts
var pk = require("node:fs/promises"), fk = require("@storybook/core/babel"), dk = require("@storybook/core/csf-tools"), ms = Q(Cr(), 1), mk = Q(wr(), 1);
async function Dk(e, t) {
  let r = e ? await (0, pk.readFile)(e, { encoding: "utf8" }) : "";
  (t?.addons?.some(
    (n) => typeof n == "string" ? n === "@chromatic-com/storybook" : n.name === "@chromatic-com/storybook"
  ) ?? !1) && e && r.includes("argTypesRegex") && new fk.core.File(
    { filename: e },
    { code: r, ast: (0, dk.babelParse)(r) }
  ).path.traverse({
    Identifier: /* @__PURE__ */ s((u) => {
      if (u.node.name === "argTypesRegex") {
        let a = mk.dedent`
            ${ms.default.bold("Attention")}: We've detected that you're using ${ms.default.cyan(
          "actions.argTypesRegex"
        )} together with the visual test addon:
            
            ${u.buildCodeFrameError(e).message}
            
            We recommend removing the ${ms.default.cyan(
          "argTypesRegex"
        )} and assigning explicit action with the ${ms.default.cyan(
          "fn"
        )} function from ${ms.default.cyan("@storybook/test")} instead:
            https://storybook.js.org/docs/essentials/actions#via-storybooktest-fn-spy-function
            
            The build used by the addon for snapshot testing doesn't take the regex into account, which can cause hard to debug problems when a snapshot depends on the presence of action props.
          `;
        console.warn(a);
      }
    }, "Identifier")
  });
}
s(Dk, "warnWhenUsingArgTypesRegex");

// src/core-server/build-dev.ts
async function u0(e) {
  let { packageJson: t, versionUpdates: r } = e, { storybookVersion: i, previewConfigPath: n } = e, u = (0, Vi.resolve)(e.configDir);
  t ? (mt(
    t.version !== void 0,
    `Expected package.json#version to be defined in the "${t.name}" package}`
  ), i = t.version, n = (0, nt.getConfigInfo)(t, u).previewConfig ?? void 0) : i || (i = nt.versions.storybook);
  let [a, o] = await Promise.all([
    n3(e.port, { exactPort: e.exactPort }),
    r ? rk(i) : Promise.resolve({ success: !1, cached: !1, data: {}, time: Date.now() })
  ]);
  if (!e.ci && !e.smokeTest && e.port != null && a !== e.port) {
    let { shouldChangePort: ee } = await (0, yk.default)({
      type: "confirm",
      initial: !0,
      name: "shouldChangePort",
      message: `Port ${e.port} is not available. Would you like to run Storybook on port ${a} instead?`
    });
    ee || process.exit(1);
  }
  let l = (0, nt.getProjectRoot)(), c = (0, hl.oneWayHash)((0, Vi.relative)(l, u)), h = (0, nt.resolvePathInStorybookCache)("public", c), p = (0, Vi.resolve)(
  e.outputDir || h);
  e.smokeTest && (p = h), e.port = a, e.versionCheck = o, e.configType = "DEVELOPMENT", e.configDir = u, e.cacheKey = c, e.outputDir = p, e.
  serverChannelUrl = s3(a, e);
  let d = await (0, nt.loadMainConfig)(e), { framework: m } = d, D = [], g = typeof m == "string" ? m : m?.name;
  e.ignorePreview || (0, nt.validateFrameworkName)(g), g && D.push((0, Vi.join)(g, "preset")), g = g || "custom";
  try {
    await hk(i);
  } catch (ee) {
    console.warn("Storybook failed to check addon compatibility", ee);
  }
  try {
    await Dk(n, d);
  } catch {
  }
  let v = await (0, nt.loadAllPresets)({
    corePresets: D,
    overridePresets: [
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    ...e,
    isCritical: !0
  }), { renderer: x, builder: C, disableTelemetry: S } = await v.apply("core", {});
  if (!C)
    throw new pl.MissingBuilderError();
  !e.disableTelemetry && !S && o.success && !o.cached && (0, hl.telemetry)("version-update");
  let k = typeof C == "string" ? C : C.name, [j, w] = await Promise.all([
    Xs(k, e.configDir),
    Gs()
  ]);
  if (k.includes("builder-vite")) {
    let ee = (0, Ek.dedent)(`Using CommonJS in your main configuration file is deprecated with Vite.
              - Refer to the migration guide at https://github.com/storybookjs/storybook/blob/next/MIGRATION.md#commonjs-with-vite-is-deprec\
ated`), O = (0, nt.serverResolve)((0, Vi.resolve)(e.configDir || ".storybook", "main"));
    /\.c[jt]s$/.test(O) && (0, s0.deprecate)(ee);
    let ue = await (0, gk.readFile)(O, { encoding: "utf8" });
    /\bmodule\.exports\b|\bexports[.[]|\brequire\s*\(|\bObject\.(?:defineProperty|defineProperties|assign)\s*\(\s*exports\b/.test(ue) && (0, s0.deprecate)(
    ee);
  }
  let A = x && (0, nt.resolveAddonName)(e.configDir, x, e);
  v = await (0, nt.loadAllPresets)({
    corePresets: [
      require.resolve("@storybook/core/core-server/presets/common-preset"),
      ...w.corePresets || [],
      ...j.corePresets || [],
      ...A ? [A] : [],
      ...D
    ],
    overridePresets: [
      ...j.overridePresets || [],
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    ...e
  });
  let T = await v.apply("features");
  xk.global.FEATURES = T;
  let B = {
    ...e,
    presets: v,
    features: T
  }, { address: $, networkAddress: L, managerResult: V, previewResult: U } = await Qa(
    async () => h3(B)
  ), X = U?.totalTime, R = V?.totalTime, N = U?.stats, z = V?.stats, Y = e.webpackStatsJson || e.statsJson;
  if (Y) {
    let ee = Y === !0 ? e.outputDir : Y;
    await ro(ee, N);
  }
  if (e.smokeTest) {
    let ee = [];
    ee.push(...z?.toJson()?.warnings || []);
    try {
      ee.push(...N?.toJson()?.warnings || []);
    } catch (ue) {
      if (!(ue instanceof pl.NoStatsForViteDevError))
        throw ue;
    }
    let O = ee.filter((ue) => !ue.message.includes("export 'useInsertionEffect'")).filter((ue) => !ue.message.includes("compilation but it's\
 unused")).filter(
      (ue) => !ue.message.includes("Conflicting values for 'process.env.NODE_ENV'")
    );
    console.log(O.map((ue) => ue.stack)), process.exit(O.length > 0 ? 1 : 0);
  } else {
    let ee = g.split("@storybook/").length > 1 ? g.split("@storybook/")[1] : g;
    e.quiet || ak({
      updateInfo: o,
      version: i,
      name: ee,
      address: $,
      networkAddress: L,
      managerTotalTime: R,
      previewTotalTime: X
    });
  }
  return { port: a, address: $, networkAddress: L };
}
s(u0, "buildDevStandalone");

// src/core-server/standalone.ts
var bk = require("node:path");
async function dz(e = {}, t = {}) {
  let { mode: r = "dev" } = e, i = (0, bk.dirname)(require.resolve("@storybook/core/package.json")), n = JSON.parse(require("fs").readFileSync(
  `${i}/package.json`)), u = {
    ...e,
    ...t,
    frameworkPresets: [
      ...e.frameworkPresets || [],
      ...t.frameworkPresets || []
    ],
    packageJson: n
  };
  if (r === "dev")
    return u0(u);
  if (r === "static")
    return $f(u);
  throw new Error("'mode' parameter should be either 'dev' or 'static'");
}
s(dz, "build");
var vk = dz;

// src/core-server/load.ts
var Ds = require("node:path"), br = require("@storybook/core/common"), Ck = require("@storybook/core/telemetry"), wk = Q(ku(), 1);
async function Ak(e) {
  let t = (0, Ds.resolve)(e.configDir), r = (0, br.getProjectRoot)(), i = (0, Ck.oneWayHash)((0, Ds.relative)(r, t));
  e.configType = "DEVELOPMENT", e.configDir = t, e.cacheKey = i;
  let n = await (0, br.loadMainConfig)(e), { framework: u } = n, a = [], o = typeof u == "string" ? u : u?.name;
  e.ignorePreview || (0, br.validateFrameworkName)(o), o && a.push((0, Ds.join)(o, "preset")), o = o || "custom";
  let l = await (0, br.loadAllPresets)({
    corePresets: a,
    overridePresets: [
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    ...e,
    isCritical: !0
  }), { renderer: c } = await l.apply("core", {}), h = c && (0, br.resolveAddonName)(e.configDir, c, e);
  l = await (0, br.loadAllPresets)({
    corePresets: [
      require.resolve("@storybook/core/core-server/presets/common-preset"),
      ...h ? [h] : [],
      ...a
    ],
    overridePresets: [
      require.resolve("@storybook/core/core-server/presets/common-override-preset")
    ],
    ...e
  });
  let p = await l.apply("features");
  return wk.global.FEATURES = p, {
    ...e,
    presets: l,
    features: p
  };
}
s(Ak, "loadStorybook");

// src/shared/universal-store/mock.ts
var Fk = require("@storybook/core/channels"), Sk = Q(wr(), 1);
var fl = class e extends rr {
  static {
    s(this, "MockUniversalStore");
  }
  constructor(t, r) {
    rr.isInternalConstructing = !0, super(
      { ...t, leader: !0 },
      { channel: new Fk.Channel({}), environment: rr.Environment.MOCK }
    ), rr.isInternalConstructing = !1, typeof r?.fn == "function" && (this.testUtils = r, this.getState = r.fn(this.getState), this.setState =
    r.fn(this.setState), this.subscribe = r.fn(this.subscribe), this.onStateChange = r.fn(this.onStateChange), this.send = r.fn(this.send));
  }
  /** Create a mock universal store. This is just an alias for the constructor */
  static create(t, r) {
    return new e(t, r);
  }
  unsubscribeAll() {
    if (!this.testUtils)
      throw new Error(
        Sk.default`Cannot call unsubscribeAll on a store that does not have testUtils.
        Please provide testUtils as the second argument when creating the store.`
      );
    let t = /* @__PURE__ */ s((r) => {
      try {
        r.value();
      } catch {
      }
    }, "callReturnedUnsubscribeFn");
    this.subscribe.mock?.results.forEach(t), this.onStateChange.mock?.results.forEach(t);
  }
};
