import {
  __name
} from "./chunk-FRNSN3NF.mjs";

// ../../node_modules/.pnpm/@zenuml+core@3.17.2_ts-node@10.9.2_typescript@5.3.3/node_modules/@zenuml/core/dist/core.0767a1be.js
var C6 = Object.defineProperty;
var v6 = /* @__PURE__ */ __name((t, e, n) => e in t ? C6(t, e, { enumerable: true, configurable: true, writable: true, value: n }) : t[e] = n, "v6");
var Z = /* @__PURE__ */ __name((t, e, n) => (v6(t, typeof e != "symbol" ? e + "" : e, n), n), "Z");
var Y0 = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
function b6(t) {
  try {
    return JSON.stringify(t);
  } catch {
    return '"[Circular]"';
  }
}
__name(b6, "b6");
var w6 = E6;
function E6(t, e, n) {
  var r = n && n.stringify || b6, s = 1;
  if (typeof t == "object" && t !== null) {
    var i = e.length + s;
    if (i === 1)
      return t;
    var o = new Array(i);
    o[0] = r(t);
    for (var l = 1; l < i; l++)
      o[l] = r(e[l]);
    return o.join(" ");
  }
  if (typeof t != "string")
    return t;
  var a = e.length;
  if (a === 0)
    return t;
  for (var c = "", u = 1 - s, h = -1, f = t && t.length || 0, p = 0; p < f; ) {
    if (t.charCodeAt(p) === 37 && p + 1 < f) {
      switch (h = h > -1 ? h : 0, t.charCodeAt(p + 1)) {
        case 100:
        case 102:
          if (u >= a || e[u] == null)
            break;
          h < p && (c += t.slice(h, p)), c += Number(e[u]), h = p + 2, p++;
          break;
        case 105:
          if (u >= a || e[u] == null)
            break;
          h < p && (c += t.slice(h, p)), c += Math.floor(Number(e[u])), h = p + 2, p++;
          break;
        case 79:
        case 111:
        case 106:
          if (u >= a || e[u] === void 0)
            break;
          h < p && (c += t.slice(h, p));
          var x = typeof e[u];
          if (x === "string") {
            c += "'" + e[u] + "'", h = p + 2, p++;
            break;
          }
          if (x === "function") {
            c += e[u].name || "<anonymous>", h = p + 2, p++;
            break;
          }
          c += r(e[u]), h = p + 2, p++;
          break;
        case 115:
          if (u >= a)
            break;
          h < p && (c += t.slice(h, p)), c += String(e[u]), h = p + 2, p++;
          break;
        case 37:
          h < p && (c += t.slice(h, p)), c += "%", h = p + 2, p++, u--;
          break;
      }
      ++u;
    }
    ++p;
  }
  return h === -1 ? t : (h < f && (c += t.slice(h)), c);
}
__name(E6, "E6");
var Rc = w6;
var T6 = wn;
var a0 = F6().console || {};
var S6 = {
  mapHttpRequest: X0,
  mapHttpResponse: X0,
  wrapRequestSerializer: z1,
  wrapResponseSerializer: z1,
  wrapErrorSerializer: z1,
  req: X0,
  res: X0,
  err: I6
};
function A6(t, e) {
  return Array.isArray(t) ? t.filter(function(r) {
    return r !== "!stdSerializers.err";
  }) : t === true ? Object.keys(e) : false;
}
__name(A6, "A6");
function wn(t) {
  t = t || {}, t.browser = t.browser || {};
  const e = t.browser.transmit;
  if (e && typeof e.send != "function")
    throw Error("pino: transmit option must have a send function");
  const n = t.browser.write || a0;
  t.browser.write && (t.browser.asObject = true);
  const r = t.serializers || {}, s = A6(t.browser.serialize, r);
  let i = t.browser.serialize;
  Array.isArray(t.browser.serialize) && t.browser.serialize.indexOf("!stdSerializers.err") > -1 && (i = false);
  const o = ["error", "fatal", "warn", "info", "debug", "trace"];
  typeof n == "function" && (n.error = n.fatal = n.warn = n.info = n.debug = n.trace = n), (t.enabled === false || t.browser.disabled) && (t.level = "silent");
  const l = t.level || "info", a = Object.create(n);
  a.log || (a.log = c0), Object.defineProperty(a, "levelVal", {
    get: u
  }), Object.defineProperty(a, "level", {
    get: h,
    set: f
  });
  const c = {
    transmit: e,
    serialize: s,
    asObject: t.browser.asObject,
    levels: o,
    timestamp: M6(t)
  };
  a.levels = wn.levels, a.level = l, a.setMaxListeners = a.getMaxListeners = a.emit = a.addListener = a.on = a.prependListener = a.once = a.prependOnceListener = a.removeListener = a.removeAllListeners = a.listeners = a.listenerCount = a.eventNames = a.write = a.flush = c0, a.serializers = r, a._serialize = s, a._stdErrSerialize = i, a.child = p, e && (a._logEvent = _o());
  function u() {
    return this.level === "silent" ? 1 / 0 : this.levels.values[this.level];
  }
  __name(u, "u");
  function h() {
    return this._level;
  }
  __name(h, "h");
  function f(x) {
    if (x !== "silent" && !this.levels.values[x])
      throw Error("unknown level " + x);
    this._level = x, Kr(c, a, "error", "log"), Kr(c, a, "fatal", "error"), Kr(c, a, "warn", "error"), Kr(c, a, "info", "log"), Kr(c, a, "debug", "log"), Kr(c, a, "trace", "log");
  }
  __name(f, "f");
  function p(x, y) {
    if (!x)
      throw new Error("missing bindings for child Pino");
    y = y || {}, s && x.serializers && (y.serializers = x.serializers);
    const A = y.serializers;
    if (s && A) {
      var _ = Object.assign({}, r, A), m = t.browser.serialize === true ? Object.keys(_) : s;
      delete x.serializers, qi([x], m, _, this._stdErrSerialize);
    }
    function C(E) {
      this._childLevel = (E._childLevel | 0) + 1, this.error = Yr(E, x, "error"), this.fatal = Yr(E, x, "fatal"), this.warn = Yr(E, x, "warn"), this.info = Yr(E, x, "info"), this.debug = Yr(E, x, "debug"), this.trace = Yr(E, x, "trace"), _ && (this.serializers = _, this._serialize = m), e && (this._logEvent = _o(
        [].concat(E._logEvent.bindings, x)
      ));
    }
    __name(C, "C");
    return C.prototype = this, new C(this);
  }
  __name(p, "p");
  return a;
}
__name(wn, "wn");
wn.levels = {
  values: {
    fatal: 60,
    error: 50,
    warn: 40,
    info: 30,
    debug: 20,
    trace: 10
  },
  labels: {
    10: "trace",
    20: "debug",
    30: "info",
    40: "warn",
    50: "error",
    60: "fatal"
  }
};
wn.stdSerializers = S6;
wn.stdTimeFunctions = Object.assign({}, { nullTime: Mu, epochTime: Nu, unixTime: N6, isoTime: P6 });
function Kr(t, e, n, r) {
  const s = Object.getPrototypeOf(e);
  e[n] = e.levelVal > e.levels.values[n] ? c0 : s[n] ? s[n] : a0[n] || a0[r] || c0, R6(t, e, n);
}
__name(Kr, "Kr");
function R6(t, e, n) {
  !t.transmit && e[n] === c0 || (e[n] = /* @__PURE__ */ function(r) {
    return function() {
      const i = t.timestamp(), o = new Array(arguments.length), l = Object.getPrototypeOf && Object.getPrototypeOf(this) === a0 ? a0 : this;
      for (var a = 0; a < o.length; a++)
        o[a] = arguments[a];
      if (t.serialize && !t.asObject && qi(o, this._serialize, this.serializers, this._stdErrSerialize), t.asObject ? r.call(l, k6(this, n, o, i)) : r.apply(l, o), t.transmit) {
        const c = t.transmit.level || e.level, u = wn.levels.values[c], h = wn.levels.values[n];
        if (h < u)
          return;
        O6(this, {
          ts: i,
          methodLevel: n,
          methodValue: h,
          transmitLevel: c,
          transmitValue: wn.levels.values[t.transmit.level || e.level],
          send: t.transmit.send,
          val: e.levelVal
        }, o);
      }
    };
  }(e[n]));
}
__name(R6, "R6");
function k6(t, e, n, r) {
  t._serialize && qi(n, t._serialize, t.serializers, t._stdErrSerialize);
  const s = n.slice();
  let i = s[0];
  const o = {};
  r && (o.time = r), o.level = wn.levels.values[e];
  let l = (t._childLevel | 0) + 1;
  if (l < 1 && (l = 1), i !== null && typeof i == "object") {
    for (; l-- && typeof s[0] == "object"; )
      Object.assign(o, s.shift());
    i = s.length ? Rc(s.shift(), s) : void 0;
  } else
    typeof i == "string" && (i = Rc(s.shift(), s));
  return i !== void 0 && (o.msg = i), o;
}
__name(k6, "k6");
function qi(t, e, n, r) {
  for (const s in t)
    if (r && t[s] instanceof Error)
      t[s] = wn.stdSerializers.err(t[s]);
    else if (typeof t[s] == "object" && !Array.isArray(t[s]))
      for (const i in t[s])
        e && e.indexOf(i) > -1 && i in n && (t[s][i] = n[i](t[s][i]));
}
__name(qi, "qi");
function Yr(t, e, n) {
  return function() {
    const r = new Array(1 + arguments.length);
    r[0] = e;
    for (var s = 1; s < r.length; s++)
      r[s] = arguments[s - 1];
    return t[n].apply(this, r);
  };
}
__name(Yr, "Yr");
function O6(t, e, n) {
  const r = e.send, s = e.ts, i = e.methodLevel, o = e.methodValue, l = e.val, a = t._logEvent.bindings;
  qi(
    n,
    t._serialize || Object.keys(t.serializers),
    t.serializers,
    t._stdErrSerialize === void 0 ? true : t._stdErrSerialize
  ), t._logEvent.ts = s, t._logEvent.messages = n.filter(function(c) {
    return a.indexOf(c) === -1;
  }), t._logEvent.level.label = i, t._logEvent.level.value = o, r(i, t._logEvent, l), t._logEvent = _o(a);
}
__name(O6, "O6");
function _o(t) {
  return {
    ts: 0,
    messages: [],
    bindings: t || [],
    level: { label: "", value: 0 }
  };
}
__name(_o, "_o");
function I6(t) {
  const e = {
    type: t.constructor.name,
    msg: t.message,
    stack: t.stack
  };
  for (const n in t)
    e[n] === void 0 && (e[n] = t[n]);
  return e;
}
__name(I6, "I6");
function M6(t) {
  return typeof t.timestamp == "function" ? t.timestamp : t.timestamp === false ? Mu : Nu;
}
__name(M6, "M6");
function X0() {
  return {};
}
__name(X0, "X0");
function z1(t) {
  return t;
}
__name(z1, "z1");
function c0() {
}
__name(c0, "c0");
function Mu() {
  return false;
}
__name(Mu, "Mu");
function Nu() {
  return Date.now();
}
__name(Nu, "Nu");
function N6() {
  return Math.round(Date.now() / 1e3);
}
__name(N6, "N6");
function P6() {
  return new Date(Date.now()).toISOString();
}
__name(P6, "P6");
function F6() {
  function t(e) {
    return typeof e < "u" && e;
  }
  __name(t, "t");
  try {
    return typeof globalThis < "u" || Object.defineProperty(Object.prototype, "globalThis", {
      get: function() {
        return delete Object.prototype.globalThis, this.globalThis = this;
      },
      configurable: true
    }), globalThis;
  } catch {
    return t(self) || t(window) || t(this) || {};
  }
}
__name(F6, "F6");
var D6 = T6({
  level: "warn"
});
var kc = ["log", "trace", "debug", "info", "warn", "error"];
function B6(t, e) {
  t[e] = (console[e] || console.log).bind(console);
}
__name(B6, "B6");
function $6(t, e, n) {
  t[e] = (console[e] || console.log).bind(
    console,
    n[0],
    n[1]
  );
}
__name($6, "$6");
function H6(t) {
  kc.forEach((n) => B6(t, n));
  const e = t.child;
  return t.child = function(n) {
    const r = e.call(t, n);
    return kc.forEach(
      (s) => $6(r, s, ["%c" + n.name || "", "color: #00f"])
    ), r;
  }, t;
}
__name(H6, "H6");
var b0 = H6(D6);
function bs(t, e) {
  const n = /* @__PURE__ */ Object.create(null), r = t.split(",");
  for (let s = 0; s < r.length; s++)
    n[r[s]] = true;
  return e ? (s) => !!n[s.toLowerCase()] : (s) => !!n[s];
}
__name(bs, "bs");
var U6 = "Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt";
var V6 = /* @__PURE__ */ bs(U6);
function Ce(t) {
  if (W(t)) {
    const e = {};
    for (let n = 0; n < t.length; n++) {
      const r = t[n], s = Ke(r) ? Z6(r) : Ce(r);
      if (s)
        for (const i in s)
          e[i] = s[i];
    }
    return e;
  } else {
    if (Ke(t))
      return t;
    if (Se(t))
      return t;
  }
}
__name(Ce, "Ce");
var z6 = /;(?![^(]*\))/g;
var G6 = /:([^]+)/;
var j6 = /\/\*.*?\*\//gs;
function Z6(t) {
  const e = {};
  return t.replace(j6, "").split(z6).forEach((n) => {
    if (n) {
      const r = n.split(G6);
      r.length > 1 && (e[r[0].trim()] = r[1].trim());
    }
  }), e;
}
__name(Z6, "Z6");
function we(t) {
  let e = "";
  if (Ke(t))
    e = t;
  else if (W(t))
    for (let n = 0; n < t.length; n++) {
      const r = we(t[n]);
      r && (e += r + " ");
    }
  else if (Se(t))
    for (const n in t)
      t[n] && (e += n + " ");
  return e.trim();
}
__name(we, "we");
function W6(t) {
  if (!t)
    return null;
  let { class: e, style: n } = t;
  return e && !Ke(e) && (t.class = we(e)), n && (t.style = Ce(n)), t;
}
__name(W6, "W6");
var q6 = "itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly";
var Pu = /* @__PURE__ */ bs(q6);
function Fu(t) {
  return !!t || t === "";
}
__name(Fu, "Fu");
function K6(t, e) {
  if (t.length !== e.length)
    return false;
  let n = true;
  for (let r = 0; n && r < t.length; r++)
    n = jn(t[r], e[r]);
  return n;
}
__name(K6, "K6");
function jn(t, e) {
  if (t === e)
    return true;
  let n = Oc(t), r = Oc(e);
  if (n || r)
    return n && r ? t.getTime() === e.getTime() : false;
  if (n = u0(t), r = u0(e), n || r)
    return t === e;
  if (n = W(t), r = W(e), n || r)
    return n && r ? K6(t, e) : false;
  if (n = Se(t), r = Se(e), n || r) {
    if (!n || !r)
      return false;
    const s = Object.keys(t).length, i = Object.keys(e).length;
    if (s !== i)
      return false;
    for (const o in t) {
      const l = t.hasOwnProperty(o), a = e.hasOwnProperty(o);
      if (l && !a || !l && a || !jn(t[o], e[o]))
        return false;
    }
  }
  return String(t) === String(e);
}
__name(jn, "jn");
function w0(t, e) {
  return t.findIndex((n) => jn(n, e));
}
__name(w0, "w0");
var He = /* @__PURE__ */ __name((t) => Ke(t) ? t : t == null ? "" : W(t) || Se(t) && (t.toString === Bu || !ue(t.toString)) ? JSON.stringify(t, Du, 2) : String(t), "He");
var Du = /* @__PURE__ */ __name((t, e) => e && e.__v_isRef ? Du(t, e.value) : ss(e) ? {
  [`Map(${e.size})`]: [...e.entries()].reduce((n, [r, s]) => (n[`${r} =>`] = s, n), {})
} : Vr(e) ? {
  [`Set(${e.size})`]: [...e.values()]
} : Se(e) && !W(e) && !Ei(e) ? String(e) : e, "Du");
var ze = {};
var rs = [];
var Bt = /* @__PURE__ */ __name(() => {
}, "Bt");
var Y6 = /* @__PURE__ */ __name(() => false, "Y6");
var X6 = /^on[^a-z]/;
var Yn = /* @__PURE__ */ __name((t) => X6.test(t), "Yn");
var Ll = /* @__PURE__ */ __name((t) => t.startsWith("onUpdate:"), "Ll");
var Oe = Object.assign;
var _l = /* @__PURE__ */ __name((t, e) => {
  const n = t.indexOf(e);
  n > -1 && t.splice(n, 1);
}, "_l");
var Q6 = Object.prototype.hasOwnProperty;
var Me = /* @__PURE__ */ __name((t, e) => Q6.call(t, e), "Me");
var W = Array.isArray;
var ss = /* @__PURE__ */ __name((t) => E0(t) === "[object Map]", "ss");
var Vr = /* @__PURE__ */ __name((t) => E0(t) === "[object Set]", "Vr");
var Oc = /* @__PURE__ */ __name((t) => E0(t) === "[object Date]", "Oc");
var ue = /* @__PURE__ */ __name((t) => typeof t == "function", "ue");
var Ke = /* @__PURE__ */ __name((t) => typeof t == "string", "Ke");
var u0 = /* @__PURE__ */ __name((t) => typeof t == "symbol", "u0");
var Se = /* @__PURE__ */ __name((t) => t !== null && typeof t == "object", "Se");
var Ki = /* @__PURE__ */ __name((t) => Se(t) && ue(t.then) && ue(t.catch), "Ki");
var Bu = Object.prototype.toString;
var E0 = /* @__PURE__ */ __name((t) => Bu.call(t), "E0");
var J6 = /* @__PURE__ */ __name((t) => E0(t).slice(8, -1), "J6");
var Ei = /* @__PURE__ */ __name((t) => E0(t) === "[object Object]", "Ei");
var yl = /* @__PURE__ */ __name((t) => Ke(t) && t !== "NaN" && t[0] !== "-" && "" + parseInt(t, 10) === t, "yl");
var is = /* @__PURE__ */ bs(
  ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"
);
var Yi = /* @__PURE__ */ __name((t) => {
  const e = /* @__PURE__ */ Object.create(null);
  return (n) => e[n] || (e[n] = t(n));
}, "Yi");
var e8 = /-(\w)/g;
var kt = Yi((t) => t.replace(e8, (e, n) => n ? n.toUpperCase() : ""));
var t8 = /\B([A-Z])/g;
var St = Yi((t) => t.replace(t8, "-$1").toLowerCase());
var T0 = Yi((t) => t.charAt(0).toUpperCase() + t.slice(1));
var os = Yi((t) => t ? `on${T0(t)}` : "");
var gs = /* @__PURE__ */ __name((t, e) => !Object.is(t, e), "gs");
var cr = /* @__PURE__ */ __name((t, e) => {
  for (let n = 0; n < t.length; n++)
    t[n](e);
}, "cr");
var Ti = /* @__PURE__ */ __name((t, e, n) => {
  Object.defineProperty(t, e, {
    configurable: true,
    enumerable: false,
    value: n
  });
}, "Ti");
var An = /* @__PURE__ */ __name((t) => {
  const e = parseFloat(t);
  return isNaN(e) ? t : e;
}, "An");
var Ic;
var n8 = /* @__PURE__ */ __name(() => Ic || (Ic = typeof globalThis < "u" ? globalThis : typeof self < "u" ? self : typeof window < "u" ? window : typeof global < "u" ? global : {}), "n8");
var Zt;
var Cl = class {
  static {
    __name(this, "Cl");
  }
  constructor(e = false) {
    this.detached = e, this.active = true, this.effects = [], this.cleanups = [], this.parent = Zt, !e && Zt && (this.index = (Zt.scopes || (Zt.scopes = [])).push(this) - 1);
  }
  run(e) {
    if (this.active) {
      const n = Zt;
      try {
        return Zt = this, e();
      } finally {
        Zt = n;
      }
    }
  }
  on() {
    Zt = this;
  }
  off() {
    Zt = this.parent;
  }
  stop(e) {
    if (this.active) {
      let n, r;
      for (n = 0, r = this.effects.length; n < r; n++)
        this.effects[n].stop();
      for (n = 0, r = this.cleanups.length; n < r; n++)
        this.cleanups[n]();
      if (this.scopes)
        for (n = 0, r = this.scopes.length; n < r; n++)
          this.scopes[n].stop(true);
      if (!this.detached && this.parent && !e) {
        const s = this.parent.scopes.pop();
        s && s !== this && (this.parent.scopes[this.index] = s, s.index = this.index);
      }
      this.parent = void 0, this.active = false;
    }
  }
};
function $u(t) {
  return new Cl(t);
}
__name($u, "$u");
function Hu(t, e = Zt) {
  e && e.active && e.effects.push(t);
}
__name(Hu, "Hu");
function r8() {
  return Zt;
}
__name(r8, "r8");
function s8(t) {
  Zt && Zt.cleanups.push(t);
}
__name(s8, "s8");
var vl = /* @__PURE__ */ __name((t) => {
  const e = new Set(t);
  return e.w = 0, e.n = 0, e;
}, "vl");
var Uu = /* @__PURE__ */ __name((t) => (t.w & pr) > 0, "Uu");
var Vu = /* @__PURE__ */ __name((t) => (t.n & pr) > 0, "Vu");
var i8 = /* @__PURE__ */ __name(({ deps: t }) => {
  if (t.length)
    for (let e = 0; e < t.length; e++)
      t[e].w |= pr;
}, "i8");
var o8 = /* @__PURE__ */ __name((t) => {
  const { deps: e } = t;
  if (e.length) {
    let n = 0;
    for (let r = 0; r < e.length; r++) {
      const s = e[r];
      Uu(s) && !Vu(s) ? s.delete(t) : e[n++] = s, s.w &= ~pr, s.n &= ~pr;
    }
    e.length = n;
  }
}, "o8");
var yo = /* @__PURE__ */ new WeakMap();
var Ks = 0;
var pr = 1;
var Co = 30;
var hn;
var kr = Symbol("");
var vo = Symbol("");
var S0 = class {
  static {
    __name(this, "S0");
  }
  constructor(e, n = null, r) {
    this.fn = e, this.scheduler = n, this.active = true, this.deps = [], this.parent = void 0, Hu(this, r);
  }
  run() {
    if (!this.active)
      return this.fn();
    let e = hn, n = ur;
    for (; e; ) {
      if (e === this)
        return;
      e = e.parent;
    }
    try {
      return this.parent = hn, hn = this, ur = true, pr = 1 << ++Ks, Ks <= Co ? i8(this) : Mc(this), this.fn();
    } finally {
      Ks <= Co && o8(this), pr = 1 << --Ks, hn = this.parent, ur = n, this.parent = void 0, this.deferStop && this.stop();
    }
  }
  stop() {
    hn === this ? this.deferStop = true : this.active && (Mc(this), this.onStop && this.onStop(), this.active = false);
  }
};
function Mc(t) {
  const { deps: e } = t;
  if (e.length) {
    for (let n = 0; n < e.length; n++)
      e[n].delete(t);
    e.length = 0;
  }
}
__name(Mc, "Mc");
function l8(t, e) {
  t.effect && (t = t.effect.fn);
  const n = new S0(t);
  e && (Oe(n, e), e.scope && Hu(n, e.scope)), (!e || !e.lazy) && n.run();
  const r = n.run.bind(n);
  return r.effect = n, r;
}
__name(l8, "l8");
function a8(t) {
  t.effect.stop();
}
__name(a8, "a8");
var ur = true;
var zu = [];
function ws() {
  zu.push(ur), ur = false;
}
__name(ws, "ws");
function Es() {
  const t = zu.pop();
  ur = t === void 0 ? true : t;
}
__name(Es, "Es");
function Ht(t, e, n) {
  if (ur && hn) {
    let r = yo.get(t);
    r || yo.set(t, r = /* @__PURE__ */ new Map());
    let s = r.get(n);
    s || r.set(n, s = vl()), Gu(s);
  }
}
__name(Ht, "Ht");
function Gu(t, e) {
  let n = false;
  Ks <= Co ? Vu(t) || (t.n |= pr, n = !Uu(t)) : n = !t.has(hn), n && (t.add(hn), hn.deps.push(t));
}
__name(Gu, "Gu");
function Rn(t, e, n, r, s, i) {
  const o = yo.get(t);
  if (!o)
    return;
  let l = [];
  if (e === "clear")
    l = [...o.values()];
  else if (n === "length" && W(t)) {
    const a = An(r);
    o.forEach((c, u) => {
      (u === "length" || u >= a) && l.push(c);
    });
  } else
    switch (n !== void 0 && l.push(o.get(n)), e) {
      case "add":
        W(t) ? yl(n) && l.push(o.get("length")) : (l.push(o.get(kr)), ss(t) && l.push(o.get(vo)));
        break;
      case "delete":
        W(t) || (l.push(o.get(kr)), ss(t) && l.push(o.get(vo)));
        break;
      case "set":
        ss(t) && l.push(o.get(kr));
        break;
    }
  if (l.length === 1)
    l[0] && bo(l[0]);
  else {
    const a = [];
    for (const c of l)
      c && a.push(...c);
    bo(vl(a));
  }
}
__name(Rn, "Rn");
function bo(t, e) {
  const n = W(t) ? t : [...t];
  for (const r of n)
    r.computed && Nc(r);
  for (const r of n)
    r.computed || Nc(r);
}
__name(bo, "bo");
function Nc(t, e) {
  (t !== hn || t.allowRecurse) && (t.scheduler ? t.scheduler() : t.run());
}
__name(Nc, "Nc");
var c8 = /* @__PURE__ */ bs("__proto__,__v_isRef,__isVue");
var ju = new Set(
  /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((t) => t !== "arguments" && t !== "caller").map((t) => Symbol[t]).filter(u0)
);
var u8 = /* @__PURE__ */ Xi();
var h8 = /* @__PURE__ */ Xi(false, true);
var d8 = /* @__PURE__ */ Xi(true);
var f8 = /* @__PURE__ */ Xi(true, true);
var Pc = /* @__PURE__ */ p8();
function p8() {
  const t = {};
  return ["includes", "indexOf", "lastIndexOf"].forEach((e) => {
    t[e] = function(...n) {
      const r = be(this);
      for (let i = 0, o = this.length; i < o; i++)
        Ht(r, "get", i + "");
      const s = r[e](...n);
      return s === -1 || s === false ? r[e](...n.map(be)) : s;
    };
  }), ["push", "pop", "shift", "unshift", "splice"].forEach((e) => {
    t[e] = function(...n) {
      ws();
      const r = be(this)[e].apply(this, n);
      return Es(), r;
    };
  }), t;
}
__name(p8, "p8");
function Xi(t = false, e = false) {
  return function(r, s, i) {
    if (s === "__v_isReactive")
      return !t;
    if (s === "__v_isReadonly")
      return t;
    if (s === "__v_isShallow")
      return e;
    if (s === "__v_raw" && i === (t ? e ? Qu : Xu : e ? Yu : Ku).get(r))
      return r;
    const o = W(r);
    if (!t && o && Me(Pc, s))
      return Reflect.get(Pc, s, i);
    const l = Reflect.get(r, s, i);
    return (u0(s) ? ju.has(s) : c8(s)) || (t || Ht(r, "get", s), e) ? l : gt(l) ? o && yl(s) ? l : l.value : Se(l) ? t ? wl(l) : kn(l) : l;
  };
}
__name(Xi, "Xi");
var g8 = /* @__PURE__ */ Zu();
var m8 = /* @__PURE__ */ Zu(true);
function Zu(t = false) {
  return function(n, r, s, i) {
    let o = n[r];
    if (Dr(o) && gt(o) && !gt(s))
      return false;
    if (!t && (!h0(s) && !Dr(s) && (o = be(o), s = be(s)), !W(n) && gt(o) && !gt(s)))
      return o.value = s, true;
    const l = W(n) && yl(r) ? Number(r) < n.length : Me(n, r), a = Reflect.set(n, r, s, i);
    return n === be(i) && (l ? gs(s, o) && Rn(n, "set", r, s) : Rn(n, "add", r, s)), a;
  };
}
__name(Zu, "Zu");
function x8(t, e) {
  const n = Me(t, e);
  t[e];
  const r = Reflect.deleteProperty(t, e);
  return r && n && Rn(t, "delete", e, void 0), r;
}
__name(x8, "x8");
function L8(t, e) {
  const n = Reflect.has(t, e);
  return (!u0(e) || !ju.has(e)) && Ht(t, "has", e), n;
}
__name(L8, "L8");
function _8(t) {
  return Ht(t, "iterate", W(t) ? "length" : kr), Reflect.ownKeys(t);
}
__name(_8, "_8");
var Wu = {
  get: u8,
  set: g8,
  deleteProperty: x8,
  has: L8,
  ownKeys: _8
};
var qu = {
  get: d8,
  set(t, e) {
    return true;
  },
  deleteProperty(t, e) {
    return true;
  }
};
var y8 = /* @__PURE__ */ Oe({}, Wu, {
  get: h8,
  set: m8
});
var C8 = /* @__PURE__ */ Oe({}, qu, {
  get: f8
});
var bl = /* @__PURE__ */ __name((t) => t, "bl");
var Qi = /* @__PURE__ */ __name((t) => Reflect.getPrototypeOf(t), "Qi");
function Q0(t, e, n = false, r = false) {
  t = t.__v_raw;
  const s = be(t), i = be(e);
  n || (e !== i && Ht(s, "get", e), Ht(s, "get", i));
  const { has: o } = Qi(s), l = r ? bl : n ? Sl : d0;
  if (o.call(s, e))
    return l(t.get(e));
  if (o.call(s, i))
    return l(t.get(i));
  t !== s && t.get(e);
}
__name(Q0, "Q0");
function J0(t, e = false) {
  const n = this.__v_raw, r = be(n), s = be(t);
  return e || (t !== s && Ht(r, "has", t), Ht(r, "has", s)), t === s ? n.has(t) : n.has(t) || n.has(s);
}
__name(J0, "J0");
function ei(t, e = false) {
  return t = t.__v_raw, !e && Ht(be(t), "iterate", kr), Reflect.get(t, "size", t);
}
__name(ei, "ei");
function Fc(t) {
  t = be(t);
  const e = be(this);
  return Qi(e).has.call(e, t) || (e.add(t), Rn(e, "add", t, t)), this;
}
__name(Fc, "Fc");
function Dc(t, e) {
  e = be(e);
  const n = be(this), { has: r, get: s } = Qi(n);
  let i = r.call(n, t);
  i || (t = be(t), i = r.call(n, t));
  const o = s.call(n, t);
  return n.set(t, e), i ? gs(e, o) && Rn(n, "set", t, e) : Rn(n, "add", t, e), this;
}
__name(Dc, "Dc");
function Bc(t) {
  const e = be(this), { has: n, get: r } = Qi(e);
  let s = n.call(e, t);
  s || (t = be(t), s = n.call(e, t)), r && r.call(e, t);
  const i = e.delete(t);
  return s && Rn(e, "delete", t, void 0), i;
}
__name(Bc, "Bc");
function $c() {
  const t = be(this), e = t.size !== 0, n = t.clear();
  return e && Rn(t, "clear", void 0, void 0), n;
}
__name($c, "$c");
function ti(t, e) {
  return function(r, s) {
    const i = this, o = i.__v_raw, l = be(o), a = e ? bl : t ? Sl : d0;
    return !t && Ht(l, "iterate", kr), o.forEach((c, u) => r.call(s, a(c), a(u), i));
  };
}
__name(ti, "ti");
function ni(t, e, n) {
  return function(...r) {
    const s = this.__v_raw, i = be(s), o = ss(i), l = t === "entries" || t === Symbol.iterator && o, a = t === "keys" && o, c = s[t](...r), u = n ? bl : e ? Sl : d0;
    return !e && Ht(i, "iterate", a ? vo : kr), {
      next() {
        const { value: h, done: f } = c.next();
        return f ? { value: h, done: f } : {
          value: l ? [u(h[0]), u(h[1])] : u(h),
          done: f
        };
      },
      [Symbol.iterator]() {
        return this;
      }
    };
  };
}
__name(ni, "ni");
function Jn(t) {
  return function(...e) {
    return t === "delete" ? false : this;
  };
}
__name(Jn, "Jn");
function v8() {
  const t = {
    get(i) {
      return Q0(this, i);
    },
    get size() {
      return ei(this);
    },
    has: J0,
    add: Fc,
    set: Dc,
    delete: Bc,
    clear: $c,
    forEach: ti(false, false)
  }, e = {
    get(i) {
      return Q0(this, i, false, true);
    },
    get size() {
      return ei(this);
    },
    has: J0,
    add: Fc,
    set: Dc,
    delete: Bc,
    clear: $c,
    forEach: ti(false, true)
  }, n = {
    get(i) {
      return Q0(this, i, true);
    },
    get size() {
      return ei(this, true);
    },
    has(i) {
      return J0.call(this, i, true);
    },
    add: Jn("add"),
    set: Jn("set"),
    delete: Jn("delete"),
    clear: Jn("clear"),
    forEach: ti(true, false)
  }, r = {
    get(i) {
      return Q0(this, i, true, true);
    },
    get size() {
      return ei(this, true);
    },
    has(i) {
      return J0.call(this, i, true);
    },
    add: Jn("add"),
    set: Jn("set"),
    delete: Jn("delete"),
    clear: Jn("clear"),
    forEach: ti(true, true)
  };
  return ["keys", "values", "entries", Symbol.iterator].forEach((i) => {
    t[i] = ni(i, false, false), n[i] = ni(i, true, false), e[i] = ni(i, false, true), r[i] = ni(i, true, true);
  }), [
    t,
    n,
    e,
    r
  ];
}
__name(v8, "v8");
var [b8, w8, E8, T8] = /* @__PURE__ */ v8();
function Ji(t, e) {
  const n = e ? t ? T8 : E8 : t ? w8 : b8;
  return (r, s, i) => s === "__v_isReactive" ? !t : s === "__v_isReadonly" ? t : s === "__v_raw" ? r : Reflect.get(Me(n, s) && s in r ? n : r, s, i);
}
__name(Ji, "Ji");
var S8 = {
  get: /* @__PURE__ */ Ji(false, false)
};
var A8 = {
  get: /* @__PURE__ */ Ji(false, true)
};
var R8 = {
  get: /* @__PURE__ */ Ji(true, false)
};
var k8 = {
  get: /* @__PURE__ */ Ji(true, true)
};
var Ku = /* @__PURE__ */ new WeakMap();
var Yu = /* @__PURE__ */ new WeakMap();
var Xu = /* @__PURE__ */ new WeakMap();
var Qu = /* @__PURE__ */ new WeakMap();
function O8(t) {
  switch (t) {
    case "Object":
    case "Array":
      return 1;
    case "Map":
    case "Set":
    case "WeakMap":
    case "WeakSet":
      return 2;
    default:
      return 0;
  }
}
__name(O8, "O8");
function I8(t) {
  return t.__v_skip || !Object.isExtensible(t) ? 0 : O8(J6(t));
}
__name(I8, "I8");
function kn(t) {
  return Dr(t) ? t : e1(t, false, Wu, S8, Ku);
}
__name(kn, "kn");
function Ju(t) {
  return e1(t, false, y8, A8, Yu);
}
__name(Ju, "Ju");
function wl(t) {
  return e1(t, true, qu, R8, Xu);
}
__name(wl, "wl");
function M8(t) {
  return e1(t, true, C8, k8, Qu);
}
__name(M8, "M8");
function e1(t, e, n, r, s) {
  if (!Se(t) || t.__v_raw && !(e && t.__v_isReactive))
    return t;
  const i = s.get(t);
  if (i)
    return i;
  const o = I8(t);
  if (o === 0)
    return t;
  const l = new Proxy(t, o === 2 ? r : n);
  return s.set(t, l), l;
}
__name(e1, "e1");
function Un(t) {
  return Dr(t) ? Un(t.__v_raw) : !!(t && t.__v_isReactive);
}
__name(Un, "Un");
function Dr(t) {
  return !!(t && t.__v_isReadonly);
}
__name(Dr, "Dr");
function h0(t) {
  return !!(t && t.__v_isShallow);
}
__name(h0, "h0");
function El(t) {
  return Un(t) || Dr(t);
}
__name(El, "El");
function be(t) {
  const e = t && t.__v_raw;
  return e ? be(e) : t;
}
__name(be, "be");
function Tl(t) {
  return Ti(t, "__v_skip", true), t;
}
__name(Tl, "Tl");
var d0 = /* @__PURE__ */ __name((t) => Se(t) ? kn(t) : t, "d0");
var Sl = /* @__PURE__ */ __name((t) => Se(t) ? wl(t) : t, "Sl");
function Al(t) {
  ur && hn && (t = be(t), Gu(t.dep || (t.dep = vl())));
}
__name(Al, "Al");
function t1(t, e) {
  t = be(t), t.dep && bo(t.dep);
}
__name(t1, "t1");
function gt(t) {
  return !!(t && t.__v_isRef === true);
}
__name(gt, "gt");
function ge(t) {
  return t3(t, false);
}
__name(ge, "ge");
function e3(t) {
  return t3(t, true);
}
__name(e3, "e3");
function t3(t, e) {
  return gt(t) ? t : new N8(t, e);
}
__name(t3, "t3");
var N8 = class {
  static {
    __name(this, "N8");
  }
  constructor(e, n) {
    this.__v_isShallow = n, this.dep = void 0, this.__v_isRef = true, this._rawValue = n ? e : be(e), this._value = n ? e : d0(e);
  }
  get value() {
    return Al(this), this._value;
  }
  set value(e) {
    const n = this.__v_isShallow || h0(e) || Dr(e);
    e = n ? e : be(e), gs(e, this._rawValue) && (this._rawValue = e, this._value = n ? e : d0(e), t1(this));
  }
};
function P8(t) {
  t1(t);
}
__name(P8, "P8");
function Le(t) {
  return gt(t) ? t.value : t;
}
__name(Le, "Le");
var F8 = {
  get: (t, e, n) => Le(Reflect.get(t, e, n)),
  set: (t, e, n, r) => {
    const s = t[e];
    return gt(s) && !gt(n) ? (s.value = n, true) : Reflect.set(t, e, n, r);
  }
};
function Rl(t) {
  return Un(t) ? t : new Proxy(t, F8);
}
__name(Rl, "Rl");
var D8 = class {
  static {
    __name(this, "D8");
  }
  constructor(e) {
    this.dep = void 0, this.__v_isRef = true;
    const { get: n, set: r } = e(() => Al(this), () => t1(this));
    this._get = n, this._set = r;
  }
  get value() {
    return this._get();
  }
  set value(e) {
    this._set(e);
  }
};
function B8(t) {
  return new D8(t);
}
__name(B8, "B8");
function kl(t) {
  const e = W(t) ? new Array(t.length) : {};
  for (const n in t)
    e[n] = n3(t, n);
  return e;
}
__name(kl, "kl");
var $8 = class {
  static {
    __name(this, "$8");
  }
  constructor(e, n, r) {
    this._object = e, this._key = n, this._defaultValue = r, this.__v_isRef = true;
  }
  get value() {
    const e = this._object[this._key];
    return e === void 0 ? this._defaultValue : e;
  }
  set value(e) {
    this._object[this._key] = e;
  }
};
function n3(t, e, n) {
  const r = t[e];
  return gt(r) ? r : new $8(t, e, n);
}
__name(n3, "n3");
var r3;
var H8 = class {
  static {
    __name(this, "H8");
  }
  constructor(e, n, r, s) {
    this._setter = n, this.dep = void 0, this.__v_isRef = true, this[r3] = false, this._dirty = true, this.effect = new S0(e, () => {
      this._dirty || (this._dirty = true, t1(this));
    }), this.effect.computed = this, this.effect.active = this._cacheable = !s, this.__v_isReadonly = r;
  }
  get value() {
    const e = be(this);
    return Al(e), (e._dirty || !e._cacheable) && (e._dirty = false, e._value = e.effect.run()), e._value;
  }
  set value(e) {
    this._setter(e);
  }
};
r3 = "__v_isReadonly";
function U8(t, e, n = false) {
  let r, s;
  const i = ue(t);
  return i ? (r = t, s = Bt) : (r = t.get, s = t.set), new H8(r, s, i || !s, n);
}
__name(U8, "U8");
function V8(t, ...e) {
}
__name(V8, "V8");
function En(t, e, n, r) {
  let s;
  try {
    s = r ? t(...r) : t();
  } catch (i) {
    zr(i, e, n);
  }
  return s;
}
__name(En, "En");
function $t(t, e, n, r) {
  if (ue(t)) {
    const i = En(t, e, n, r);
    return i && Ki(i) && i.catch((o) => {
      zr(o, e, n);
    }), i;
  }
  const s = [];
  for (let i = 0; i < t.length; i++)
    s.push($t(t[i], e, n, r));
  return s;
}
__name($t, "$t");
function zr(t, e, n, r = true) {
  const s = e ? e.vnode : null;
  if (e) {
    let i = e.parent;
    const o = e.proxy, l = n;
    for (; i; ) {
      const c = i.ec;
      if (c) {
        for (let u = 0; u < c.length; u++)
          if (c[u](t, o, l) === false)
            return;
      }
      i = i.parent;
    }
    const a = e.appContext.config.errorHandler;
    if (a) {
      En(a, null, 10, [t, o, l]);
      return;
    }
  }
  z8(t, n, s, r);
}
__name(zr, "zr");
function z8(t, e, n, r = true) {
  console.error(t);
}
__name(z8, "z8");
var f0 = false;
var wo = false;
var vt = [];
var Cn = 0;
var ls = [];
var $n = null;
var wr = 0;
var s3 = /* @__PURE__ */ Promise.resolve();
var Ol = null;
function Ts(t) {
  const e = Ol || s3;
  return t ? e.then(this ? t.bind(this) : t) : e;
}
__name(Ts, "Ts");
function G8(t) {
  let e = Cn + 1, n = vt.length;
  for (; e < n; ) {
    const r = e + n >>> 1;
    p0(vt[r]) < t ? e = r + 1 : n = r;
  }
  return e;
}
__name(G8, "G8");
function n1(t) {
  (!vt.length || !vt.includes(t, f0 && t.allowRecurse ? Cn + 1 : Cn)) && (t.id == null ? vt.push(t) : vt.splice(G8(t.id), 0, t), i3());
}
__name(n1, "n1");
function i3() {
  !f0 && !wo && (wo = true, Ol = s3.then(o3));
}
__name(i3, "i3");
function j8(t) {
  const e = vt.indexOf(t);
  e > Cn && vt.splice(e, 1);
}
__name(j8, "j8");
function Il(t) {
  W(t) ? ls.push(...t) : (!$n || !$n.includes(t, t.allowRecurse ? wr + 1 : wr)) && ls.push(t), i3();
}
__name(Il, "Il");
function Hc(t, e = f0 ? Cn + 1 : 0) {
  for (; e < vt.length; e++) {
    const n = vt[e];
    n && n.pre && (vt.splice(e, 1), e--, n());
  }
}
__name(Hc, "Hc");
function Si(t) {
  if (ls.length) {
    const e = [...new Set(ls)];
    if (ls.length = 0, $n) {
      $n.push(...e);
      return;
    }
    for ($n = e, $n.sort((n, r) => p0(n) - p0(r)), wr = 0; wr < $n.length; wr++)
      $n[wr]();
    $n = null, wr = 0;
  }
}
__name(Si, "Si");
var p0 = /* @__PURE__ */ __name((t) => t.id == null ? 1 / 0 : t.id, "p0");
var Z8 = /* @__PURE__ */ __name((t, e) => {
  const n = p0(t) - p0(e);
  if (n === 0) {
    if (t.pre && !e.pre)
      return -1;
    if (e.pre && !t.pre)
      return 1;
  }
  return n;
}, "Z8");
function o3(t) {
  wo = false, f0 = true, vt.sort(Z8);
  const e = Bt;
  try {
    for (Cn = 0; Cn < vt.length; Cn++) {
      const n = vt[Cn];
      n && n.active !== false && En(n, null, 14);
    }
  } finally {
    Cn = 0, vt.length = 0, Si(), f0 = false, Ol = null, (vt.length || ls.length) && o3();
  }
}
__name(o3, "o3");
var ts;
var ri = [];
function l3(t, e) {
  var n, r;
  ts = t, ts ? (ts.enabled = true, ri.forEach(({ event: s, args: i }) => ts.emit(s, ...i)), ri = []) : typeof window < "u" && window.HTMLElement && !(!((r = (n = window.navigator) === null || n === void 0 ? void 0 : n.userAgent) === null || r === void 0) && r.includes("jsdom")) ? ((e.__VUE_DEVTOOLS_HOOK_REPLAY__ = e.__VUE_DEVTOOLS_HOOK_REPLAY__ || []).push((i) => {
    l3(i, e);
  }), setTimeout(() => {
    ts || (e.__VUE_DEVTOOLS_HOOK_REPLAY__ = null, ri = []);
  }, 3e3)) : ri = [];
}
__name(l3, "l3");
function W8(t, e, ...n) {
}
__name(W8, "W8");
var Ml = {
  MODE: 2
};
function q8(t) {
  Oe(Ml, t);
}
__name(q8, "q8");
function Uc(t, e) {
  const n = e && e.type.compatConfig;
  return n && t in n ? n[t] : Ml[t];
}
__name(Uc, "Uc");
function Ve(t, e, n = false) {
  if (!n && e && e.type.__isBuiltIn)
    return false;
  const r = Uc("MODE", e) || 2, s = Uc(t, e);
  return (ue(r) ? r(e && e.type) : r) === 2 ? s !== false : s === true || s === "suppress-warning";
}
__name(Ve, "Ve");
function _t(t, e, ...n) {
  if (!Ve(t, e))
    throw new Error(`${t} compat has been disabled.`);
}
__name(_t, "_t");
function Zn(t, e, ...n) {
  return Ve(t, e);
}
__name(Zn, "Zn");
function r1(t, e, ...n) {
  return Ve(t, e);
}
__name(r1, "r1");
var Eo = /* @__PURE__ */ new WeakMap();
function Nl(t) {
  let e = Eo.get(t);
  return e || Eo.set(t, e = /* @__PURE__ */ Object.create(null)), e;
}
__name(Nl, "Nl");
function Pl(t, e, n) {
  if (W(e))
    e.forEach((r) => Pl(t, r, n));
  else {
    e.startsWith("hook:") ? _t("INSTANCE_EVENT_HOOKS", t, e) : _t("INSTANCE_EVENT_EMITTER", t);
    const r = Nl(t);
    (r[e] || (r[e] = [])).push(n);
  }
  return t.proxy;
}
__name(Pl, "Pl");
function K8(t, e, n) {
  const r = /* @__PURE__ */ __name((...s) => {
    Fl(t, e, r), n.call(t.proxy, ...s);
  }, "r");
  return r.fn = n, Pl(t, e, r), t.proxy;
}
__name(K8, "K8");
function Fl(t, e, n) {
  _t("INSTANCE_EVENT_EMITTER", t);
  const r = t.proxy;
  if (!e)
    return Eo.set(t, /* @__PURE__ */ Object.create(null)), r;
  if (W(e))
    return e.forEach((o) => Fl(t, o, n)), r;
  const s = Nl(t), i = s[e];
  return i ? n ? (s[e] = i.filter((o) => !(o === n || o.fn === n)), r) : (s[e] = void 0, r) : r;
}
__name(Fl, "Fl");
function Y8(t, e, n) {
  const r = Nl(t)[e];
  return r && $t(r.map((s) => s.bind(t.proxy)), t, 6, n), t.proxy;
}
__name(Y8, "Y8");
var s1 = "onModelCompat:";
function X8(t) {
  const { type: e, shapeFlag: n, props: r, dynamicProps: s } = t, i = e;
  if (n & 6 && r && "modelValue" in r) {
    if (!Ve(
      "COMPONENT_V_MODEL",
      { type: e }
    ))
      return;
    const o = i.model || {};
    a3(o, i.mixins);
    const { prop: l = "value", event: a = "input" } = o;
    l !== "modelValue" && (r[l] = r.modelValue, delete r.modelValue), s && (s[s.indexOf("modelValue")] = l), r[s1 + a] = r["onUpdate:modelValue"], delete r["onUpdate:modelValue"];
  }
}
__name(X8, "X8");
function a3(t, e) {
  e && e.forEach((n) => {
    n.model && Oe(t, n.model), n.mixins && a3(t, n.mixins);
  });
}
__name(a3, "a3");
function Q8(t, e, n) {
  if (!Ve("COMPONENT_V_MODEL", t))
    return;
  const r = t.vnode.props, s = r && r[s1 + e];
  s && En(s, t, 6, n);
}
__name(Q8, "Q8");
function J8(t, e, ...n) {
  if (t.isUnmounted)
    return;
  const r = t.vnode.props || ze;
  let s = n;
  const i = e.startsWith("update:"), o = i && e.slice(7);
  if (o && o in r) {
    const u = `${o === "modelValue" ? "model" : o}Modifiers`, { number: h, trim: f } = r[u] || ze;
    f && (s = n.map((p) => Ke(p) ? p.trim() : p)), h && (s = n.map(An));
  }
  let l, a = r[l = os(e)] || r[l = os(kt(e))];
  !a && i && (a = r[l = os(St(e))]), a && $t(a, t, 6, s);
  const c = r[l + "Once"];
  if (c) {
    if (!t.emitted)
      t.emitted = {};
    else if (t.emitted[l])
      return;
    t.emitted[l] = true, $t(c, t, 6, s);
  }
  return Q8(t, e, s), Y8(t, e, s);
}
__name(J8, "J8");
function c3(t, e, n = false) {
  const r = e.emitsCache, s = r.get(t);
  if (s !== void 0)
    return s;
  const i = t.emits;
  let o = {}, l = false;
  if (!ue(t)) {
    const a = /* @__PURE__ */ __name((c) => {
      const u = c3(c, e, true);
      u && (l = true, Oe(o, u));
    }, "a");
    !n && e.mixins.length && e.mixins.forEach(a), t.extends && a(t.extends), t.mixins && t.mixins.forEach(a);
  }
  return !i && !l ? (Se(t) && r.set(t, null), null) : (W(i) ? i.forEach((a) => o[a] = null) : Oe(o, i), Se(t) && r.set(t, o), o);
}
__name(c3, "c3");
function i1(t, e) {
  return !t || !Yn(e) ? false : e.startsWith(s1) ? true : (e = e.slice(2).replace(/Once$/, ""), Me(t, e[0].toLowerCase() + e.slice(1)) || Me(t, St(e)) || Me(t, e));
}
__name(i1, "i1");
var ut = null;
var as = null;
function g0(t) {
  const e = ut;
  return ut = t, as = t && t.type.__scopeId || null, as || (as = t && t.type._scopeId || null), e;
}
__name(g0, "g0");
function Ss(t) {
  as = t;
}
__name(Ss, "Ss");
function As() {
  as = null;
}
__name(As, "As");
var ed = /* @__PURE__ */ __name((t) => jt, "ed");
function jt(t, e = ut, n) {
  if (!e || t._n)
    return t;
  const r = /* @__PURE__ */ __name((...s) => {
    r._d && Io(-1);
    const i = g0(e);
    let o;
    try {
      o = t(...s);
    } finally {
      g0(i), r._d && Io(1);
    }
    return o;
  }, "r");
  return r._n = true, r._c = true, r._d = true, n && (r._ns = true), r;
}
__name(jt, "jt");
function yi(t) {
  const { type: e, vnode: n, proxy: r, withProxy: s, props: i, propsOptions: [o], slots: l, attrs: a, emit: c, render: u, renderCache: h, data: f, setupState: p, ctx: x, inheritAttrs: y } = t;
  let A, _;
  const m = g0(t);
  try {
    if (n.shapeFlag & 4) {
      const E = s || r;
      A = Wt(u.call(E, E, h, i, p, f, x)), _ = a;
    } else {
      const E = e;
      A = Wt(E.length > 1 ? E(i, { attrs: a, slots: l, emit: c }) : E(i, null)), _ = e.props ? a : nd(a);
    }
  } catch (E) {
    Js.length = 0, zr(E, t, 1), A = z(yt);
  }
  let C = A;
  if (_ && y !== false) {
    const E = Object.keys(_), { shapeFlag: P } = C;
    E.length && P & 7 && (o && E.some(Ll) && (_ = rd(_, o)), C = an(C, _));
  }
  if (Ve("INSTANCE_ATTRS_CLASS_STYLE", t) && n.shapeFlag & 4 && C.shapeFlag & 7) {
    const { class: E, style: P } = n.props || {};
    (E || P) && (C = an(C, {
      class: E,
      style: P
    }));
  }
  return n.dirs && (C = an(C), C.dirs = C.dirs ? C.dirs.concat(n.dirs) : n.dirs), n.transition && (C.transition = n.transition), A = C, g0(m), A;
}
__name(yi, "yi");
function td(t) {
  let e;
  for (let n = 0; n < t.length; n++) {
    const r = t[n];
    if (Jt(r)) {
      if (r.type !== yt || r.children === "v-if") {
        if (e)
          return;
        e = r;
      }
    } else
      return;
  }
  return e;
}
__name(td, "td");
var nd = /* @__PURE__ */ __name((t) => {
  let e;
  for (const n in t)
    (n === "class" || n === "style" || Yn(n)) && ((e || (e = {}))[n] = t[n]);
  return e;
}, "nd");
var rd = /* @__PURE__ */ __name((t, e) => {
  const n = {};
  for (const r in t)
    (!Ll(r) || !(r.slice(9) in e)) && (n[r] = t[r]);
  return n;
}, "rd");
function sd(t, e, n) {
  const { props: r, children: s, component: i } = t, { props: o, children: l, patchFlag: a } = e, c = i.emitsOptions;
  if (e.dirs || e.transition)
    return true;
  if (n && a >= 0) {
    if (a & 1024)
      return true;
    if (a & 16)
      return r ? Vc(r, o, c) : !!o;
    if (a & 8) {
      const u = e.dynamicProps;
      for (let h = 0; h < u.length; h++) {
        const f = u[h];
        if (o[f] !== r[f] && !i1(c, f))
          return true;
      }
    }
  } else
    return (s || l) && (!l || !l.$stable) ? true : r === o ? false : r ? o ? Vc(r, o, c) : true : !!o;
  return false;
}
__name(sd, "sd");
function Vc(t, e, n) {
  const r = Object.keys(e);
  if (r.length !== Object.keys(t).length)
    return true;
  for (let s = 0; s < r.length; s++) {
    const i = r[s];
    if (e[i] !== t[i] && !i1(n, i))
      return true;
  }
  return false;
}
__name(Vc, "Vc");
function Dl({ vnode: t, parent: e }, n) {
  for (; e && e.subTree === t; )
    (t = e.vnode).el = n, e = e.parent;
}
__name(Dl, "Dl");
var u3 = /* @__PURE__ */ __name((t) => t.__isSuspense, "u3");
var id = {
  name: "Suspense",
  __isSuspense: true,
  process(t, e, n, r, s, i, o, l, a, c) {
    t == null ? ld(e, n, r, s, i, o, l, a, c) : ad(t, e, n, r, s, o, l, a, c);
  },
  hydrate: cd,
  create: Bl,
  normalize: ud
};
var od = id;
function m0(t, e) {
  const n = t.props && t.props[e];
  ue(n) && n();
}
__name(m0, "m0");
function ld(t, e, n, r, s, i, o, l, a) {
  const { p: c, o: { createElement: u } } = a, h = u("div"), f = t.suspense = Bl(t, s, r, e, h, n, i, o, l, a);
  c(null, f.pendingBranch = t.ssContent, h, null, r, f, i, o), f.deps > 0 ? (m0(t, "onPending"), m0(t, "onFallback"), c(
    null,
    t.ssFallback,
    e,
    n,
    r,
    null,
    i,
    o
  ), cs(f, t.ssFallback)) : f.resolve();
}
__name(ld, "ld");
function ad(t, e, n, r, s, i, o, l, { p: a, um: c, o: { createElement: u } }) {
  const h = e.suspense = t.suspense;
  h.vnode = e, e.el = t.el;
  const f = e.ssContent, p = e.ssFallback, { activeBranch: x, pendingBranch: y, isInFallback: A, isHydrating: _ } = h;
  if (y)
    h.pendingBranch = f, vn(f, y) ? (a(y, f, h.hiddenContainer, null, s, h, i, o, l), h.deps <= 0 ? h.resolve() : A && (a(
      x,
      p,
      n,
      r,
      s,
      null,
      i,
      o,
      l
    ), cs(h, p))) : (h.pendingId++, _ ? (h.isHydrating = false, h.activeBranch = y) : c(y, s, h), h.deps = 0, h.effects.length = 0, h.hiddenContainer = u("div"), A ? (a(null, f, h.hiddenContainer, null, s, h, i, o, l), h.deps <= 0 ? h.resolve() : (a(
      x,
      p,
      n,
      r,
      s,
      null,
      i,
      o,
      l
    ), cs(h, p))) : x && vn(f, x) ? (a(x, f, n, r, s, h, i, o, l), h.resolve(true)) : (a(null, f, h.hiddenContainer, null, s, h, i, o, l), h.deps <= 0 && h.resolve()));
  else if (x && vn(f, x))
    a(x, f, n, r, s, h, i, o, l), cs(h, f);
  else if (m0(e, "onPending"), h.pendingBranch = f, h.pendingId++, a(null, f, h.hiddenContainer, null, s, h, i, o, l), h.deps <= 0)
    h.resolve();
  else {
    const { timeout: m, pendingId: C } = h;
    m > 0 ? setTimeout(() => {
      h.pendingId === C && h.fallback(p);
    }, m) : m === 0 && h.fallback(p);
  }
}
__name(ad, "ad");
function Bl(t, e, n, r, s, i, o, l, a, c, u = false) {
  const { p: h, m: f, um: p, n: x, o: { parentNode: y, remove: A } } = c, _ = An(t.props && t.props.timeout), m = {
    vnode: t,
    parent: e,
    parentComponent: n,
    isSVG: o,
    container: r,
    hiddenContainer: s,
    anchor: i,
    deps: 0,
    pendingId: 0,
    timeout: typeof _ == "number" ? _ : -1,
    activeBranch: null,
    pendingBranch: null,
    isInFallback: true,
    isHydrating: u,
    isUnmounted: false,
    effects: [],
    resolve(C = false) {
      const { vnode: E, activeBranch: P, pendingBranch: U, pendingId: j, effects: k, parentComponent: ae, container: le } = m;
      if (m.isHydrating)
        m.isHydrating = false;
      else if (!C) {
        const xe = P && U.transition && U.transition.mode === "out-in";
        xe && (P.transition.afterLeave = () => {
          j === m.pendingId && f(U, le, re, 0);
        });
        let { anchor: re } = m;
        P && (re = x(P), p(P, ae, m, true)), xe || f(U, le, re, 0);
      }
      cs(m, U), m.pendingBranch = null, m.isInFallback = false;
      let he = m.parent, Ue = false;
      for (; he; ) {
        if (he.pendingBranch) {
          he.effects.push(...k), Ue = true;
          break;
        }
        he = he.parent;
      }
      Ue || Il(k), m.effects = [], m0(E, "onResolve");
    },
    fallback(C) {
      if (!m.pendingBranch)
        return;
      const { vnode: E, activeBranch: P, parentComponent: U, container: j, isSVG: k } = m;
      m0(E, "onFallback");
      const ae = x(P), le = /* @__PURE__ */ __name(() => {
        !m.isInFallback || (h(
          null,
          C,
          j,
          ae,
          U,
          null,
          k,
          l,
          a
        ), cs(m, C));
      }, "le"), he = C.transition && C.transition.mode === "out-in";
      he && (P.transition.afterLeave = le), m.isInFallback = true, p(
        P,
        U,
        null,
        true
      ), he || le();
    },
    move(C, E, P) {
      m.activeBranch && f(m.activeBranch, C, E, P), m.container = C;
    },
    next() {
      return m.activeBranch && x(m.activeBranch);
    },
    registerDep(C, E) {
      const P = !!m.pendingBranch;
      P && m.deps++;
      const U = C.vnode.el;
      C.asyncDep.catch((j) => {
        zr(j, C, 0);
      }).then((j) => {
        if (C.isUnmounted || m.isUnmounted || m.pendingId !== C.suspenseId)
          return;
        C.asyncResolved = true;
        const { vnode: k } = C;
        Mo(C, j, false), U && (k.el = U);
        const ae = !U && C.subTree.el;
        E(
          C,
          k,
          y(U || C.subTree.el),
          U ? null : x(C.subTree),
          m,
          o,
          a
        ), ae && A(ae), Dl(C, k.el), P && --m.deps === 0 && m.resolve();
      });
    },
    unmount(C, E) {
      m.isUnmounted = true, m.activeBranch && p(m.activeBranch, n, C, E), m.pendingBranch && p(m.pendingBranch, n, C, E);
    }
  };
  return m;
}
__name(Bl, "Bl");
function cd(t, e, n, r, s, i, o, l, a) {
  const c = e.suspense = Bl(e, r, n, t.parentNode, document.createElement("div"), null, s, i, o, l, true), u = a(t, c.pendingBranch = e.ssContent, n, c, i, o);
  return c.deps === 0 && c.resolve(), u;
}
__name(cd, "cd");
function ud(t) {
  const { shapeFlag: e, children: n } = t, r = e & 32;
  t.ssContent = zc(r ? n.default : n), t.ssFallback = r ? zc(n.fallback) : z(yt);
}
__name(ud, "ud");
function zc(t) {
  let e;
  if (ue(t)) {
    const n = Hr && t._c;
    n && (t._d = false, R()), t = t(), n && (t._d = true, e = Dt, e5());
  }
  return W(t) && (t = td(t)), t = Wt(t), e && !t.dynamicChildren && (t.dynamicChildren = e.filter((n) => n !== t)), t;
}
__name(zc, "zc");
function h3(t, e) {
  e && e.pendingBranch ? W(t) ? e.effects.push(...t) : e.effects.push(t) : Il(t);
}
__name(h3, "h3");
function cs(t, e) {
  t.activeBranch = e;
  const { vnode: n, parentComponent: r } = t, s = n.el = e.el;
  r && r.subTree === n && (r.vnode.el = s, Dl(r, s));
}
__name(cs, "cs");
function Ut(t, e) {
  if (dt) {
    let n = dt.provides;
    const r = dt.parent && dt.parent.provides;
    r === n && (n = dt.provides = Object.create(r)), n[t] = e;
  }
}
__name(Ut, "Ut");
function lt(t, e, n = false) {
  const r = dt || ut;
  if (r) {
    const s = r.parent == null ? r.vnode.appContext && r.vnode.appContext.provides : r.parent.provides;
    if (s && t in s)
      return s[t];
    if (arguments.length > 1)
      return n && ue(e) ? e.call(r.proxy) : e;
  }
}
__name(lt, "lt");
function Qt(t, e) {
  return A0(t, null, e);
}
__name(Qt, "Qt");
function d3(t, e) {
  return A0(t, null, { flush: "post" });
}
__name(d3, "d3");
function hd(t, e) {
  return A0(t, null, { flush: "sync" });
}
__name(hd, "hd");
var si = {};
function Yt(t, e, n) {
  return A0(t, e, n);
}
__name(Yt, "Yt");
function A0(t, e, { immediate: n, deep: r, flush: s, onTrack: i, onTrigger: o } = ze) {
  const l = dt;
  let a, c = false, u = false;
  if (gt(t) ? (a = /* @__PURE__ */ __name(() => t.value, "a"), c = h0(t)) : Un(t) ? (a = /* @__PURE__ */ __name(() => t, "a"), r = true) : W(t) ? (u = true, c = t.some((C) => Un(C) || h0(C)), a = /* @__PURE__ */ __name(() => t.map((C) => {
    if (gt(C))
      return C.value;
    if (Un(C))
      return ir(C);
    if (ue(C))
      return En(C, l, 2);
  }), "a")) : ue(t) ? e ? a = /* @__PURE__ */ __name(() => En(t, l, 2), "a") : a = /* @__PURE__ */ __name(() => {
    if (!(l && l.isUnmounted))
      return h && h(), $t(t, l, 3, [f]);
  }, "a") : a = Bt, e && !r) {
    const C = a;
    a = /* @__PURE__ */ __name(() => {
      const E = C();
      return W(E) && r1("WATCH_ARRAY", l) && ir(E), E;
    }, "a");
  }
  if (e && r) {
    const C = a;
    a = /* @__PURE__ */ __name(() => ir(C()), "a");
  }
  let h, f = /* @__PURE__ */ __name((C) => {
    h = _.onStop = () => {
      En(C, l, 4);
    };
  }, "f"), p;
  if (xs)
    if (f = Bt, e ? n && $t(e, l, 3, [
      a(),
      u ? [] : void 0,
      f
    ]) : a(), s === "sync") {
      const C = a5();
      p = C.__watcherHandles || (C.__watcherHandles = []);
    } else
      return Bt;
  let x = u ? new Array(t.length).fill(si) : si;
  const y = /* @__PURE__ */ __name(() => {
    if (!!_.active)
      if (e) {
        const C = _.run();
        (r || c || (u ? C.some((E, P) => gs(E, x[P])) : gs(C, x)) || W(C) && Ve("WATCH_ARRAY", l)) && (h && h(), $t(e, l, 3, [
          C,
          x === si ? void 0 : u && x[0] === si ? [] : x,
          f
        ]), x = C);
      } else
        _.run();
  }, "y");
  y.allowRecurse = !!e;
  let A;
  s === "sync" ? A = y : s === "post" ? A = /* @__PURE__ */ __name(() => at(y, l && l.suspense), "A") : (y.pre = true, l && (y.id = l.uid), A = /* @__PURE__ */ __name(() => n1(y), "A"));
  const _ = new S0(a, A);
  e ? n ? y() : x = _.run() : s === "post" ? at(_.run.bind(_), l && l.suspense) : _.run();
  const m = /* @__PURE__ */ __name(() => {
    _.stop(), l && l.scope && _l(l.scope.effects, _);
  }, "m");
  return p && p.push(m), m;
}
__name(A0, "A0");
function dd(t, e, n) {
  const r = this.proxy, s = Ke(t) ? t.includes(".") ? f3(r, t) : () => r[t] : t.bind(r, r);
  let i;
  ue(e) ? i = e : (i = e.handler, n = e);
  const o = dt;
  gr(this);
  const l = A0(s, i.bind(r), n);
  return o ? gr(o) : hr(), l;
}
__name(dd, "dd");
function f3(t, e) {
  const n = e.split(".");
  return () => {
    let r = t;
    for (let s = 0; s < n.length && r; s++)
      r = r[n[s]];
    return r;
  };
}
__name(f3, "f3");
function ir(t, e) {
  if (!Se(t) || t.__v_skip || (e = e || /* @__PURE__ */ new Set(), e.has(t)))
    return t;
  if (e.add(t), gt(t))
    ir(t.value, e);
  else if (W(t))
    for (let n = 0; n < t.length; n++)
      ir(t[n], e);
  else if (Vr(t) || ss(t))
    t.forEach((n) => {
      ir(n, e);
    });
  else if (Ei(t))
    for (const n in t)
      ir(t[n], e);
  return t;
}
__name(ir, "ir");
function $l() {
  const t = {
    isMounted: false,
    isLeaving: false,
    isUnmounting: false,
    leavingVNodes: /* @__PURE__ */ new Map()
  };
  return We(() => {
    t.isMounted = true;
  }), x0(() => {
    t.isUnmounting = true;
  }), t;
}
__name($l, "$l");
var rn = [Function, Array];
var p3 = {
  name: "BaseTransition",
  props: {
    mode: String,
    appear: Boolean,
    persisted: Boolean,
    onBeforeEnter: rn,
    onEnter: rn,
    onAfterEnter: rn,
    onEnterCancelled: rn,
    onBeforeLeave: rn,
    onLeave: rn,
    onAfterLeave: rn,
    onLeaveCancelled: rn,
    onBeforeAppear: rn,
    onAppear: rn,
    onAfterAppear: rn,
    onAppearCancelled: rn
  },
  setup(t, { slots: e }) {
    const n = Pn(), r = $l();
    let s;
    return () => {
      const i = e.default && o1(e.default(), true);
      if (!i || !i.length)
        return;
      let o = i[0];
      if (i.length > 1) {
        for (const y of i)
          if (y.type !== yt) {
            o = y;
            break;
          }
      }
      const l = be(t), { mode: a } = l;
      if (r.isLeaving)
        return G1(o);
      const c = Gc(o);
      if (!c)
        return G1(o);
      const u = ms(c, l, r, n);
      Br(c, u);
      const h = n.subTree, f = h && Gc(h);
      let p = false;
      const { getTransitionKey: x } = c.type;
      if (x) {
        const y = x();
        s === void 0 ? s = y : y !== s && (s = y, p = true);
      }
      if (f && f.type !== yt && (!vn(c, f) || p)) {
        const y = ms(f, l, r, n);
        if (Br(f, y), a === "out-in")
          return r.isLeaving = true, y.afterLeave = () => {
            r.isLeaving = false, n.update.active !== false && n.update();
          }, G1(o);
        a === "in-out" && c.type !== yt && (y.delayLeave = (A, _, m) => {
          const C = g3(r, f);
          C[String(f.key)] = f, A._leaveCb = () => {
            _(), A._leaveCb = void 0, delete u.delayedLeave;
          }, u.delayedLeave = m;
        });
      }
      return o;
    };
  }
};
p3.__isBuiltIn = true;
var Hl = p3;
function g3(t, e) {
  const { leavingVNodes: n } = t;
  let r = n.get(e.type);
  return r || (r = /* @__PURE__ */ Object.create(null), n.set(e.type, r)), r;
}
__name(g3, "g3");
function ms(t, e, n, r) {
  const { appear: s, mode: i, persisted: o = false, onBeforeEnter: l, onEnter: a, onAfterEnter: c, onEnterCancelled: u, onBeforeLeave: h, onLeave: f, onAfterLeave: p, onLeaveCancelled: x, onBeforeAppear: y, onAppear: A, onAfterAppear: _, onAppearCancelled: m } = e, C = String(t.key), E = g3(n, t), P = /* @__PURE__ */ __name((k, ae) => {
    k && $t(k, r, 9, ae);
  }, "P"), U = /* @__PURE__ */ __name((k, ae) => {
    const le = ae[1];
    P(k, ae), W(k) ? k.every((he) => he.length <= 1) && le() : k.length <= 1 && le();
  }, "U"), j = {
    mode: i,
    persisted: o,
    beforeEnter(k) {
      let ae = l;
      if (!n.isMounted)
        if (s)
          ae = y || l;
        else
          return;
      k._leaveCb && k._leaveCb(true);
      const le = E[C];
      le && vn(t, le) && le.el._leaveCb && le.el._leaveCb(), P(ae, [k]);
    },
    enter(k) {
      let ae = a, le = c, he = u;
      if (!n.isMounted)
        if (s)
          ae = A || a, le = _ || c, he = m || u;
        else
          return;
      let Ue = false;
      const xe = k._enterCb = (re) => {
        Ue || (Ue = true, re ? P(he, [k]) : P(le, [k]), j.delayedLeave && j.delayedLeave(), k._enterCb = void 0);
      };
      ae ? U(ae, [k, xe]) : xe();
    },
    leave(k, ae) {
      const le = String(t.key);
      if (k._enterCb && k._enterCb(true), n.isUnmounting)
        return ae();
      P(h, [k]);
      let he = false;
      const Ue = k._leaveCb = (xe) => {
        he || (he = true, ae(), xe ? P(x, [k]) : P(p, [k]), k._leaveCb = void 0, E[le] === t && delete E[le]);
      };
      E[le] = t, f ? U(f, [k, Ue]) : Ue();
    },
    clone(k) {
      return ms(k, e, n, r);
    }
  };
  return j;
}
__name(ms, "ms");
function G1(t) {
  if (R0(t))
    return t = an(t), t.children = null, t;
}
__name(G1, "G1");
function Gc(t) {
  return R0(t) ? t.children ? t.children[0] : void 0 : t;
}
__name(Gc, "Gc");
function Br(t, e) {
  t.shapeFlag & 6 && t.component ? Br(t.component.subTree, e) : t.shapeFlag & 128 ? (t.ssContent.transition = e.clone(t.ssContent), t.ssFallback.transition = e.clone(t.ssFallback)) : t.transition = e;
}
__name(Br, "Br");
function o1(t, e = false, n) {
  let r = [], s = 0;
  for (let i = 0; i < t.length; i++) {
    let o = t[i];
    const l = n == null ? o.key : String(n) + String(o.key != null ? o.key : i);
    o.type === Fe ? (o.patchFlag & 128 && s++, r = r.concat(o1(o.children, e, l))) : (e || o.type !== yt) && r.push(l != null ? an(o, { key: l }) : o);
  }
  if (s > 1)
    for (let i = 0; i < r.length; i++)
      r[i].patchFlag = -2;
  return r;
}
__name(o1, "o1");
function Ye(t) {
  return ue(t) ? { setup: t, name: t.name } : t;
}
__name(Ye, "Ye");
var Or = /* @__PURE__ */ __name((t) => !!t.type.__asyncLoader, "Or");
function us(t) {
  ue(t) && (t = { loader: t });
  const {
    loader: e,
    loadingComponent: n,
    errorComponent: r,
    delay: s = 200,
    timeout: i,
    suspensible: o = true,
    onError: l
  } = t;
  let a = null, c, u = 0;
  const h = /* @__PURE__ */ __name(() => (u++, a = null, f()), "h"), f = /* @__PURE__ */ __name(() => {
    let p;
    return a || (p = a = e().catch((x) => {
      if (x = x instanceof Error ? x : new Error(String(x)), l)
        return new Promise((y, A) => {
          l(x, () => y(h()), () => A(x), u + 1);
        });
      throw x;
    }).then((x) => p !== a && a ? a : (x && (x.__esModule || x[Symbol.toStringTag] === "Module") && (x = x.default), c = x, x)));
  }, "f");
  return Ye({
    name: "AsyncComponentWrapper",
    __asyncLoader: f,
    get __asyncResolved() {
      return c;
    },
    setup() {
      const p = dt;
      if (c)
        return () => j1(c, p);
      const x = /* @__PURE__ */ __name((m) => {
        a = null, zr(m, p, 13, !r);
      }, "x");
      if (o && p.suspense || xs)
        return f().then((m) => () => j1(m, p)).catch((m) => (x(m), () => r ? z(r, {
          error: m
        }) : null));
      const y = ge(false), A = ge(), _ = ge(!!s);
      return s && setTimeout(() => {
        _.value = false;
      }, s), i != null && setTimeout(() => {
        if (!y.value && !A.value) {
          const m = new Error(`Async component timed out after ${i}ms.`);
          x(m), A.value = m;
        }
      }, i), f().then(() => {
        y.value = true, p.parent && R0(p.parent.vnode) && n1(p.parent.update);
      }).catch((m) => {
        x(m), A.value = m;
      }), () => {
        if (y.value && c)
          return j1(c, p);
        if (A.value && r)
          return z(r, {
            error: A.value
          });
        if (n && !_.value)
          return z(n);
      };
    }
  });
}
__name(us, "us");
function j1(t, e) {
  const { ref: n, props: r, children: s, ce: i } = e.vnode, o = z(t, r, s);
  return o.ref = n, o.ce = i, delete e.vnode.ce, o;
}
__name(j1, "j1");
var R0 = /* @__PURE__ */ __name((t) => t.type.__isKeepAlive, "R0");
var m3 = {
  name: "KeepAlive",
  __isKeepAlive: true,
  props: {
    include: [String, RegExp, Array],
    exclude: [String, RegExp, Array],
    max: [String, Number]
  },
  setup(t, { slots: e }) {
    const n = Pn(), r = n.ctx;
    if (!r.renderer)
      return () => {
        const m = e.default && e.default();
        return m && m.length === 1 ? m[0] : m;
      };
    const s = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set();
    let o = null;
    const l = n.suspense, { renderer: { p: a, m: c, um: u, o: { createElement: h } } } = r, f = h("div");
    r.activate = (m, C, E, P, U) => {
      const j = m.component;
      c(m, C, E, 0, l), a(j.vnode, m, C, E, j, l, P, m.slotScopeIds, U), at(() => {
        j.isDeactivated = false, j.a && cr(j.a);
        const k = m.props && m.props.onVnodeMounted;
        k && Nt(k, j.parent, m);
      }, l);
    }, r.deactivate = (m) => {
      const C = m.component;
      c(m, f, null, 1, l), at(() => {
        C.da && cr(C.da);
        const E = m.props && m.props.onVnodeUnmounted;
        E && Nt(E, C.parent, m), C.isDeactivated = true;
      }, l);
    };
    function p(m) {
      Z1(m), u(m, n, l, true);
    }
    __name(p, "p");
    function x(m) {
      s.forEach((C, E) => {
        const P = Fo(C.type);
        P && (!m || !m(P)) && y(E);
      });
    }
    __name(x, "x");
    function y(m) {
      const C = s.get(m);
      !o || C.type !== o.type ? p(C) : o && Z1(o), s.delete(m), i.delete(m);
    }
    __name(y, "y");
    Yt(
      () => [t.include, t.exclude],
      ([m, C]) => {
        m && x((E) => Ys(m, E)), C && x((E) => !Ys(C, E));
      },
      { flush: "post", deep: true }
    );
    let A = null;
    const _ = /* @__PURE__ */ __name(() => {
      A != null && s.set(A, W1(n.subTree));
    }, "_");
    return We(_), k0(_), x0(() => {
      s.forEach((m) => {
        const { subTree: C, suspense: E } = n, P = W1(C);
        if (m.type === P.type) {
          Z1(P);
          const U = P.component.da;
          U && at(U, E);
          return;
        }
        p(m);
      });
    }), () => {
      if (A = null, !e.default)
        return null;
      const m = e.default(), C = m[0];
      if (m.length > 1)
        return o = null, m;
      if (!Jt(C) || !(C.shapeFlag & 4) && !(C.shapeFlag & 128))
        return o = null, C;
      let E = W1(C);
      const P = E.type, U = Fo(Or(E) ? E.type.__asyncResolved || {} : P), { include: j, exclude: k, max: ae } = t;
      if (j && (!U || !Ys(j, U)) || k && U && Ys(k, U))
        return o = E, C;
      const le = E.key == null ? P : E.key, he = s.get(le);
      return E.el && (E = an(E), C.shapeFlag & 128 && (C.ssContent = E)), A = le, he ? (E.el = he.el, E.component = he.component, E.transition && Br(E, E.transition), E.shapeFlag |= 512, i.delete(le), i.add(le)) : (i.add(le), ae && i.size > parseInt(ae, 10) && y(i.values().next().value)), E.shapeFlag |= 256, o = E, u3(C.type) ? C : E;
    };
  }
};
m3.__isBuildIn = true;
var x3 = m3;
function Ys(t, e) {
  return W(t) ? t.some((n) => Ys(n, e)) : Ke(t) ? t.split(",").includes(e) : t.test ? t.test(e) : false;
}
__name(Ys, "Ys");
function L3(t, e) {
  y3(t, "a", e);
}
__name(L3, "L3");
function _3(t, e) {
  y3(t, "da", e);
}
__name(_3, "_3");
function y3(t, e, n = dt) {
  const r = t.__wdc || (t.__wdc = () => {
    let s = n;
    for (; s; ) {
      if (s.isDeactivated)
        return;
      s = s.parent;
    }
    return t();
  });
  if (l1(e, r, n), n) {
    let s = n.parent;
    for (; s && s.parent; )
      R0(s.parent.vnode) && fd(r, e, n, s), s = s.parent;
  }
}
__name(y3, "y3");
function fd(t, e, n, r) {
  const s = l1(e, t, r, true);
  ht(() => {
    _l(r[e], s);
  }, n);
}
__name(fd, "fd");
function Z1(t) {
  t.shapeFlag &= -257, t.shapeFlag &= -513;
}
__name(Z1, "Z1");
function W1(t) {
  return t.shapeFlag & 128 ? t.ssContent : t;
}
__name(W1, "W1");
function l1(t, e, n = dt, r = false) {
  if (n) {
    const s = n[t] || (n[t] = []), i = e.__weh || (e.__weh = (...o) => {
      if (n.isUnmounted)
        return;
      ws(), gr(n);
      const l = $t(e, n, t, o);
      return hr(), Es(), l;
    });
    return r ? s.unshift(i) : s.push(i), i;
  }
}
__name(l1, "l1");
var Xn = /* @__PURE__ */ __name((t) => (e, n = dt) => (!xs || t === "sp") && l1(t, (...r) => e(...r), n), "Xn");
var C3 = Xn("bm");
var We = Xn("m");
var v3 = Xn("bu");
var k0 = Xn("u");
var x0 = Xn("bum");
var ht = Xn("um");
var b3 = Xn("sp");
var w3 = Xn("rtg");
var E3 = Xn("rtc");
function T3(t, e = dt) {
  l1("ec", t, e);
}
__name(T3, "T3");
function pd(t) {
  _t("INSTANCE_CHILDREN", t);
  const e = t.subTree, n = [];
  return e && S3(e, n), n;
}
__name(pd, "pd");
function S3(t, e) {
  if (t.component)
    e.push(t.component.proxy);
  else if (t.shapeFlag & 16) {
    const n = t.children;
    for (let r = 0; r < n.length; r++)
      S3(n[r], e);
  }
}
__name(S3, "S3");
function A3(t) {
  _t("INSTANCE_LISTENERS", t);
  const e = {}, n = t.vnode.props;
  if (!n)
    return e;
  for (const r in n)
    Yn(r) && (e[r[2].toLowerCase() + r.slice(3)] = n[r]);
  return e;
}
__name(A3, "A3");
var gd = {
  beforeMount: "bind",
  mounted: "inserted",
  updated: ["update", "componentUpdated"],
  unmounted: "unbind"
};
function md(t, e, n) {
  const r = gd[t];
  if (r)
    if (W(r)) {
      const s = [];
      return r.forEach((i) => {
        const o = e[i];
        o && (Zn("CUSTOM_DIR", n, i, t), s.push(o));
      }), s.length ? s : void 0;
    } else
      return e[r] && Zn("CUSTOM_DIR", n, r, t), e[r];
}
__name(md, "md");
function a1(t, e) {
  const n = ut;
  if (n === null)
    return t;
  const r = p1(n) || n.proxy, s = t.dirs || (t.dirs = []);
  for (let i = 0; i < e.length; i++) {
    let [o, l, a, c = ze] = e[i];
    o && (ue(o) && (o = {
      mounted: o,
      updated: o
    }), o.deep && ir(l), s.push({
      dir: o,
      instance: r,
      value: l,
      oldValue: void 0,
      arg: a,
      modifiers: c
    }));
  }
  return t;
}
__name(a1, "a1");
function yn(t, e, n, r) {
  const s = t.dirs, i = e && e.dirs;
  for (let o = 0; o < s.length; o++) {
    const l = s[o];
    i && (l.oldValue = i[o].value);
    let a = l.dir[r];
    a || (a = md(r, l.dir, n)), a && (ws(), $t(a, n, 8, [
      t.el,
      l,
      t,
      e
    ]), Es());
  }
}
__name(yn, "yn");
var Ul = "components";
var xd = "directives";
var Ld = "filters";
function _e(t, e) {
  return c1(Ul, t, true, e) || t;
}
__name(_e, "_e");
var R3 = Symbol();
function Rs(t) {
  return Ke(t) ? c1(Ul, t, false) || t : t || R3;
}
__name(Rs, "Rs");
function k3(t) {
  return c1(xd, t);
}
__name(k3, "k3");
function O3(t) {
  return c1(Ld, t);
}
__name(O3, "O3");
function c1(t, e, n = true, r = false) {
  const s = ut || dt;
  if (s) {
    const i = s.type;
    if (t === Ul) {
      const l = Fo(i, false);
      if (l && (l === e || l === kt(e) || l === T0(kt(e))))
        return i;
    }
    const o = jc(s[t] || i[t], e) || jc(s.appContext[t], e);
    return !o && r ? i : o;
  }
}
__name(c1, "c1");
function jc(t, e) {
  return t && (t[e] || t[kt(e)] || t[T0(kt(e))]);
}
__name(jc, "jc");
function _d(t) {
  const e = t.type, n = e.render;
  if (!(!n || n._rc || n._compatChecked || n._compatWrapped)) {
    if (n.length >= 2) {
      n._compatChecked = true;
      return;
    }
    if (r1("RENDER_FUNCTION", t)) {
      const r = e.render = function() {
        return n.call(this, Ai);
      };
      r._compatWrapped = true;
    }
  }
}
__name(_d, "_d");
function Ai(t, e, n) {
  if (t || (t = yt), typeof t == "string") {
    const i = St(t);
    (i === "transition" || i === "transition-group" || i === "keep-alive") && (t = `__compat__${i}`), t = Rs(t);
  }
  const r = arguments.length, s = W(e);
  return r === 2 || s ? Se(e) && !s ? Jt(e) ? ii(z(t, null, [e])) : ii(Wc(z(t, Zc(e, t)), e)) : ii(z(t, null, e)) : (Jt(n) && (n = [n]), ii(Wc(z(t, Zc(e, t), n), e)));
}
__name(Ai, "Ai");
var yd = /* @__PURE__ */ bs("staticStyle,staticClass,directives,model,hook");
function Zc(t, e) {
  if (!t)
    return null;
  const n = {};
  for (const r in t)
    if (r === "attrs" || r === "domProps" || r === "props")
      Oe(n, t[r]);
    else if (r === "on" || r === "nativeOn") {
      const s = t[r];
      for (const i in s) {
        let o = Cd(i);
        r === "nativeOn" && (o += "Native");
        const l = n[o], a = s[i];
        l !== a && (l ? n[o] = [].concat(l, a) : n[o] = a);
      }
    } else
      yd(r) || (n[r] = t[r]);
  if (t.staticClass && (n.class = we([t.staticClass, n.class])), t.staticStyle && (n.style = Ce([t.staticStyle, n.style])), t.model && Se(e)) {
    const { prop: r = "value", event: s = "input" } = e.model || {};
    n[r] = t.model.value, n[s1 + s] = t.model.callback;
  }
  return n;
}
__name(Zc, "Zc");
function Cd(t) {
  return t[0] === "&" && (t = t.slice(1) + "Passive"), t[0] === "~" && (t = t.slice(1) + "Once"), t[0] === "!" && (t = t.slice(1) + "Capture"), os(t);
}
__name(Cd, "Cd");
function Wc(t, e) {
  return e && e.directives ? a1(t, e.directives.map(({ name: n, value: r, arg: s, modifiers: i }) => [
    k3(n),
    r,
    s,
    i
  ])) : t;
}
__name(Wc, "Wc");
function ii(t) {
  const { props: e, children: n } = t;
  let r;
  if (t.shapeFlag & 6 && W(n)) {
    r = {};
    for (let i = 0; i < n.length; i++) {
      const o = n[i], l = Jt(o) && o.props && o.props.slot || "default", a = r[l] || (r[l] = []);
      Jt(o) && o.type === "template" ? a.push(o.children) : a.push(o);
    }
    if (r)
      for (const i in r) {
        const o = r[i];
        r[i] = () => o, r[i]._ns = true;
      }
  }
  const s = e && e.scopedSlots;
  return s && (delete e.scopedSlots, r ? Oe(r, s) : r = s), r && d1(t, r), t;
}
__name(ii, "ii");
function I3(t) {
  if (Ve("RENDER_FUNCTION", ut, true) && Ve("PRIVATE_APIS", ut, true)) {
    const e = ut, n = /* @__PURE__ */ __name(() => t.component && t.component.proxy, "n");
    let r;
    Object.defineProperties(t, {
      tag: { get: () => t.type },
      data: { get: () => t.props || {}, set: (s) => t.props = s },
      elm: { get: () => t.el },
      componentInstance: { get: n },
      child: { get: n },
      text: { get: () => Ke(t.children) ? t.children : null },
      context: { get: () => e && e.proxy },
      componentOptions: {
        get: () => {
          if (t.shapeFlag & 4)
            return r || (r = {
              Ctor: t.type,
              propsData: t.props,
              children: t.children
            });
        }
      }
    });
  }
}
__name(I3, "I3");
var q1 = /* @__PURE__ */ new Map();
var M3 = {
  get(t, e) {
    const n = t[e];
    return n && n();
  }
};
function vd(t) {
  if (q1.has(t))
    return q1.get(t);
  const e = t.render, n = /* @__PURE__ */ __name((r, s) => {
    const i = Pn(), o = {
      props: r,
      children: i.vnode.children || [],
      data: i.vnode.props || {},
      scopedSlots: s.slots,
      parent: i.parent && i.parent.proxy,
      slots() {
        return new Proxy(s.slots, M3);
      },
      get listeners() {
        return A3(i);
      },
      get injections() {
        if (t.inject) {
          const l = {};
          return $3(t.inject, l), l;
        }
        return {};
      }
    };
    return e(Ai, o);
  }, "n");
  return n.props = t.props, n.displayName = t.name, n.compatConfig = t.compatConfig, n.inheritAttrs = false, q1.set(t, n), n;
}
__name(vd, "vd");
function On(t, e, n, r) {
  let s;
  const i = n && n[r];
  if (W(t) || Ke(t)) {
    s = new Array(t.length);
    for (let o = 0, l = t.length; o < l; o++)
      s[o] = e(t[o], o, void 0, i && i[o]);
  } else if (typeof t == "number") {
    s = new Array(t);
    for (let o = 0; o < t; o++)
      s[o] = e(o + 1, o, void 0, i && i[o]);
  } else if (Se(t))
    if (t[Symbol.iterator])
      s = Array.from(t, (o, l) => e(o, l, void 0, i && i[l]));
    else {
      const o = Object.keys(t);
      s = new Array(o.length);
      for (let l = 0, a = o.length; l < a; l++) {
        const c = o[l];
        s[l] = e(t[c], c, l, i && i[l]);
      }
    }
  else
    s = [];
  return n && (n[r] = s), s;
}
__name(On, "On");
function N3(t, e) {
  for (let n = 0; n < e.length; n++) {
    const r = e[n];
    if (W(r))
      for (let s = 0; s < r.length; s++)
        t[r[s].name] = r[s].fn;
    else
      r && (t[r.name] = r.key ? (...s) => {
        const i = r.fn(...s);
        return i && (i.key = r.key), i;
      } : r.fn);
  }
  return t;
}
__name(N3, "N3");
function Vl(t, e, n = {}, r, s) {
  if (ut.isCE || ut.parent && Or(ut.parent) && ut.parent.isCE)
    return e !== "default" && (n.name = e), z("slot", n, r && r());
  let i = t[e];
  i && i._c && (i._d = false), R();
  const o = i && P3(i(n)), l = ke(Fe, {
    key: n.key || o && o.key || `_${e}`
  }, o || (r ? r() : []), o && t._ === 1 ? 64 : -2);
  return !s && l.scopeId && (l.slotScopeIds = [l.scopeId + "-s"]), i && i._c && (i._d = true), l;
}
__name(Vl, "Vl");
function P3(t) {
  return t.some((e) => Jt(e) ? !(e.type === yt || e.type === Fe && !P3(e.children)) : true) ? t : null;
}
__name(P3, "P3");
function F3(t, e) {
  const n = {};
  for (const r in t)
    n[e && /[A-Z]/.test(r) ? `on:${r}` : os(r)] = t[r];
  return n;
}
__name(F3, "F3");
function bd(t) {
  const e = {};
  for (let n = 0; n < t.length; n++)
    t[n] && Oe(e, t[n]);
  return e;
}
__name(bd, "bd");
function wd(t, e, n, r, s) {
  if (n && Se(n)) {
    W(n) && (n = bd(n));
    for (const i in n)
      if (is(i))
        t[i] = n[i];
      else if (i === "class")
        t.class = we([t.class, n.class]);
      else if (i === "style")
        t.style = we([t.style, n.style]);
      else {
        const o = t.attrs || (t.attrs = {}), l = kt(i), a = St(i);
        if (!(l in o) && !(a in o) && (o[i] = n[i], s)) {
          const c = t.on || (t.on = {});
          c[`update:${i}`] = function(u) {
            n[i] = u;
          };
        }
      }
  }
  return t;
}
__name(wd, "wd");
function Ed(t, e) {
  return f1(t, F3(e));
}
__name(Ed, "Ed");
function Td(t, e, n, r, s) {
  return s && (r = f1(r, s)), Vl(t.slots, e, r, n && (() => n));
}
__name(Td, "Td");
function Sd(t, e, n) {
  return N3(e || { $stable: !n }, D3(t));
}
__name(Sd, "Sd");
function D3(t) {
  for (let e = 0; e < t.length; e++) {
    const n = t[e];
    n && (W(n) ? D3(n) : n.name = n.key || "default");
  }
  return t;
}
__name(D3, "D3");
var qc = /* @__PURE__ */ new WeakMap();
function Ad(t, e) {
  let n = qc.get(t);
  if (n || qc.set(t, n = []), n[e])
    return n[e];
  const r = t.type.staticRenderFns[e], s = t.proxy;
  return n[e] = r.call(s, null, s);
}
__name(Ad, "Ad");
function Rd(t, e, n, r, s, i) {
  const l = t.appContext.config.keyCodes || {}, a = l[n] || r;
  if (i && s && !l[n])
    return Kc(i, s);
  if (a)
    return Kc(a, e);
  if (s)
    return St(s) !== n;
}
__name(Rd, "Rd");
function Kc(t, e) {
  return W(t) ? !t.includes(e) : t !== e;
}
__name(Kc, "Kc");
function kd(t) {
  return t;
}
__name(kd, "kd");
function Od(t, e) {
  for (let n = 0; n < e.length; n += 2) {
    const r = e[n];
    typeof r == "string" && r && (t[e[n]] = e[n + 1]);
  }
  return t;
}
__name(Od, "Od");
function Id(t, e) {
  return typeof t == "string" ? e + t : t;
}
__name(Id, "Id");
function Md(t) {
  const e = /* @__PURE__ */ __name((r, s, i) => {
    r[s] = i;
  }, "e"), n = /* @__PURE__ */ __name((r, s) => {
    delete r[s];
  }, "n");
  Oe(t, {
    $set: (r) => (_t("INSTANCE_SET", r), e),
    $delete: (r) => (_t("INSTANCE_DELETE", r), n),
    $mount: (r) => (_t("GLOBAL_MOUNT", null), r.ctx._compat_mount || Bt),
    $destroy: (r) => (_t("INSTANCE_DESTROY", r), r.ctx._compat_destroy || Bt),
    $slots: (r) => Ve("RENDER_FUNCTION", r) && r.render && r.render._compatWrapped ? new Proxy(r.slots, M3) : r.slots,
    $scopedSlots: (r) => {
      _t("INSTANCE_SCOPED_SLOTS", r);
      const s = {};
      for (const i in r.slots) {
        const o = r.slots[i];
        o._ns || (s[i] = o);
      }
      return s;
    },
    $on: (r) => Pl.bind(null, r),
    $once: (r) => K8.bind(null, r),
    $off: (r) => Fl.bind(null, r),
    $children: pd,
    $listeners: A3
  }), Ve("PRIVATE_APIS", null) && Oe(t, {
    $vnode: (r) => r.vnode,
    $options: (r) => {
      const s = Oe({}, O0(r));
      return s.parent = r.proxy.$parent, s.propsData = r.vnode.props, s;
    },
    _self: (r) => r.proxy,
    _uid: (r) => r.uid,
    _data: (r) => r.data,
    _isMounted: (r) => r.isMounted,
    _isDestroyed: (r) => r.isUnmounted,
    $createElement: () => Ai,
    _c: () => Ai,
    _o: () => kd,
    _n: () => An,
    _s: () => He,
    _l: () => On,
    _t: (r) => Td.bind(null, r),
    _q: () => jn,
    _i: () => w0,
    _m: (r) => Ad.bind(null, r),
    _f: () => O3,
    _k: (r) => Rd.bind(null, r),
    _b: () => wd,
    _v: () => dn,
    _e: () => me,
    _u: () => Sd,
    _g: () => Ed,
    _d: () => Od,
    _p: () => Id
  });
}
__name(Md, "Md");
var To = /* @__PURE__ */ __name((t) => t ? s5(t) ? p1(t) || t.proxy : To(t.parent) : null, "To");
var hs = /* @__PURE__ */ Oe(/* @__PURE__ */ Object.create(null), {
  $: (t) => t,
  $el: (t) => t.vnode.el,
  $data: (t) => t.data,
  $props: (t) => t.props,
  $attrs: (t) => t.attrs,
  $slots: (t) => t.slots,
  $refs: (t) => t.refs,
  $parent: (t) => To(t.parent),
  $root: (t) => To(t.root),
  $emit: (t) => t.emit,
  $options: (t) => O0(t),
  $forceUpdate: (t) => t.f || (t.f = () => n1(t.update)),
  $nextTick: (t) => t.n || (t.n = Ts.bind(t.proxy)),
  $watch: (t) => dd.bind(t)
});
Md(hs);
var K1 = /* @__PURE__ */ __name((t, e) => t !== ze && !t.__isScriptSetup && Me(t, e), "K1");
var So = {
  get({ _: t }, e) {
    const { ctx: n, setupState: r, data: s, props: i, accessCache: o, type: l, appContext: a } = t;
    let c;
    if (e[0] !== "$") {
      const p = o[e];
      if (p !== void 0)
        switch (p) {
          case 1:
            return r[e];
          case 2:
            return s[e];
          case 4:
            return n[e];
          case 3:
            return i[e];
        }
      else {
        if (K1(r, e))
          return o[e] = 1, r[e];
        if (s !== ze && Me(s, e))
          return o[e] = 2, s[e];
        if ((c = t.propsOptions[0]) && Me(c, e))
          return o[e] = 3, i[e];
        if (n !== ze && Me(n, e))
          return o[e] = 4, n[e];
        Ao && (o[e] = 0);
      }
    }
    const u = hs[e];
    let h, f;
    if (u)
      return e === "$attrs" && Ht(t, "get", e), u(t);
    if ((h = l.__cssModules) && (h = h[e]))
      return h;
    if (n !== ze && Me(n, e))
      return o[e] = 4, n[e];
    if (f = a.config.globalProperties, Me(f, e)) {
      const p = Object.getOwnPropertyDescriptor(f, e);
      if (p.get)
        return p.get.call(t.proxy);
      {
        const x = f[e];
        return ue(x) ? Object.assign(x.bind(t.proxy), x) : x;
      }
    }
  },
  set({ _: t }, e, n) {
    const { data: r, setupState: s, ctx: i } = t;
    return K1(s, e) ? (s[e] = n, true) : r !== ze && Me(r, e) ? (r[e] = n, true) : Me(t.props, e) || e[0] === "$" && e.slice(1) in t ? false : (i[e] = n, true);
  },
  has({ _: { data: t, setupState: e, accessCache: n, ctx: r, appContext: s, propsOptions: i } }, o) {
    let l;
    return !!n[o] || t !== ze && Me(t, o) || K1(e, o) || (l = i[0]) && Me(l, o) || Me(r, o) || Me(hs, o) || Me(s.config.globalProperties, o);
  },
  defineProperty(t, e, n) {
    return n.get != null ? t._.accessCache[e] = 0 : Me(n, "value") && this.set(t, e, n.value, null), Reflect.defineProperty(t, e, n);
  }
};
var Nd = /* @__PURE__ */ Oe({}, So, {
  get(t, e) {
    if (e !== Symbol.unscopables)
      return So.get(t, e, t);
  },
  has(t, e) {
    return e[0] !== "_" && !V6(e);
  }
});
function B3(t, e) {
  for (const n in e) {
    const r = t[n], s = e[n];
    n in t && Ei(r) && Ei(s) ? B3(r, s) : t[n] = s;
  }
  return t;
}
__name(B3, "B3");
var Ao = true;
function Pd(t) {
  const e = O0(t), n = t.proxy, r = t.ctx;
  Ao = false, e.beforeCreate && Yc(e.beforeCreate, t, "bc");
  const {
    data: s,
    computed: i,
    methods: o,
    watch: l,
    provide: a,
    inject: c,
    created: u,
    beforeMount: h,
    mounted: f,
    beforeUpdate: p,
    updated: x,
    activated: y,
    deactivated: A,
    beforeDestroy: _,
    beforeUnmount: m,
    destroyed: C,
    unmounted: E,
    render: P,
    renderTracked: U,
    renderTriggered: j,
    errorCaptured: k,
    serverPrefetch: ae,
    expose: le,
    inheritAttrs: he,
    components: Ue,
    directives: xe,
    filters: re
  } = e;
  if (c && $3(c, r, null, t.appContext.config.unwrapInjectedRef), o)
    for (const Y in o) {
      const de = o[Y];
      ue(de) && (r[Y] = de.bind(n));
    }
  if (s) {
    const Y = s.call(n, n);
    Se(Y) && (t.data = kn(Y));
  }
  if (Ao = true, i)
    for (const Y in i) {
      const de = i[Y], Xe = ue(de) ? de.bind(n, n) : ue(de.get) ? de.get.bind(n, n) : Bt, Qe = !ue(de) && ue(de.set) ? de.set.bind(n) : Bt, Ot = J({
        get: Xe,
        set: Qe
      });
      Object.defineProperty(r, Y, {
        enumerable: true,
        configurable: true,
        get: () => Ot.value,
        set: (it) => Ot.value = it
      });
    }
  if (l)
    for (const Y in l)
      H3(l[Y], r, n, Y);
  if (a) {
    const Y = ue(a) ? a.call(n) : a;
    Reflect.ownKeys(Y).forEach((de) => {
      Ut(de, Y[de]);
    });
  }
  u && Yc(u, t, "c");
  function D(Y, de) {
    W(de) ? de.forEach((Xe) => Y(Xe.bind(n))) : de && Y(de.bind(n));
  }
  __name(D, "D");
  if (D(C3, h), D(We, f), D(v3, p), D(k0, x), D(L3, y), D(_3, A), D(T3, k), D(E3, U), D(w3, j), D(x0, m), D(ht, E), D(b3, ae), _ && Zn("OPTIONS_BEFORE_DESTROY", t) && D(x0, _), C && Zn("OPTIONS_DESTROYED", t) && D(ht, C), W(le))
    if (le.length) {
      const Y = t.exposed || (t.exposed = {});
      le.forEach((de) => {
        Object.defineProperty(Y, de, {
          get: () => n[de],
          set: (Xe) => n[de] = Xe
        });
      });
    } else
      t.exposed || (t.exposed = {});
  P && t.render === Bt && (t.render = P), he != null && (t.inheritAttrs = he), Ue && (t.components = Ue), xe && (t.directives = xe), re && Ve("FILTERS", t) && (t.filters = re);
}
__name(Pd, "Pd");
function $3(t, e, n = Bt, r = false) {
  W(t) && (t = Ro(t));
  for (const s in t) {
    const i = t[s];
    let o;
    Se(i) ? "default" in i ? o = lt(i.from || s, i.default, true) : o = lt(i.from || s) : o = lt(i), gt(o) && r ? Object.defineProperty(e, s, {
      enumerable: true,
      configurable: true,
      get: () => o.value,
      set: (l) => o.value = l
    }) : e[s] = o;
  }
}
__name($3, "$3");
function Yc(t, e, n) {
  $t(W(t) ? t.map((r) => r.bind(e.proxy)) : t.bind(e.proxy), e, n);
}
__name(Yc, "Yc");
function H3(t, e, n, r) {
  const s = r.includes(".") ? f3(n, r) : () => n[r];
  if (Ke(t)) {
    const i = e[t];
    ue(i) && Yt(s, i);
  } else if (ue(t))
    Yt(s, t.bind(n));
  else if (Se(t))
    if (W(t))
      t.forEach((i) => H3(i, e, n, r));
    else {
      const i = ue(t.handler) ? t.handler.bind(n) : e[t.handler];
      ue(i) && Yt(s, i, t);
    }
}
__name(H3, "H3");
function O0(t) {
  const e = t.type, { mixins: n, extends: r } = e, { mixins: s, optionsCache: i, config: { optionMergeStrategies: o } } = t.appContext, l = i.get(e);
  let a;
  return l ? a = l : !s.length && !n && !r ? Ve("PRIVATE_APIS", t) ? (a = Oe({}, e), a.parent = t.parent && t.parent.proxy, a.propsData = t.vnode.props) : a = e : (a = {}, s.length && s.forEach((c) => Ir(a, c, o, true)), Ir(a, e, o)), Se(e) && i.set(e, a), a;
}
__name(O0, "O0");
function Ir(t, e, n, r = false) {
  ue(e) && (e = e.options);
  const { mixins: s, extends: i } = e;
  i && Ir(t, i, n, true), s && s.forEach((o) => Ir(t, o, n, true));
  for (const o in e)
    if (!(r && o === "expose")) {
      const l = Mr[o] || n && n[o];
      t[o] = l ? l(t[o], e[o]) : e[o];
    }
  return t;
}
__name(Ir, "Ir");
var Mr = {
  data: Xc,
  props: nr,
  emits: nr,
  methods: nr,
  computed: nr,
  beforeCreate: Et,
  created: Et,
  beforeMount: Et,
  mounted: Et,
  beforeUpdate: Et,
  updated: Et,
  beforeDestroy: Et,
  beforeUnmount: Et,
  destroyed: Et,
  unmounted: Et,
  activated: Et,
  deactivated: Et,
  errorCaptured: Et,
  serverPrefetch: Et,
  components: nr,
  directives: nr,
  watch: Dd,
  provide: Xc,
  inject: Fd
};
Mr.filters = nr;
function Xc(t, e) {
  return e ? t ? function() {
    return (Ve("OPTIONS_DATA_MERGE", null) ? B3 : Oe)(ue(t) ? t.call(this, this) : t, ue(e) ? e.call(this, this) : e);
  } : e : t;
}
__name(Xc, "Xc");
function Fd(t, e) {
  return nr(Ro(t), Ro(e));
}
__name(Fd, "Fd");
function Ro(t) {
  if (W(t)) {
    const e = {};
    for (let n = 0; n < t.length; n++)
      e[t[n]] = t[n];
    return e;
  }
  return t;
}
__name(Ro, "Ro");
function Et(t, e) {
  return t ? [...new Set([].concat(t, e))] : e;
}
__name(Et, "Et");
function nr(t, e) {
  return t ? Oe(Oe(/* @__PURE__ */ Object.create(null), t), e) : e;
}
__name(nr, "nr");
function Dd(t, e) {
  if (!t)
    return e;
  if (!e)
    return t;
  const n = Oe(/* @__PURE__ */ Object.create(null), t);
  for (const r in e)
    n[r] = Et(t[r], e[r]);
  return n;
}
__name(Dd, "Dd");
function Bd(t, e, n) {
  return new Proxy({}, {
    get(r, s) {
      if (s === "$options")
        return O0(t);
      if (s in e)
        return e[s];
      const i = t.type.inject;
      if (i) {
        if (W(i)) {
          if (i.includes(s))
            return lt(s);
        } else if (s in i)
          return lt(s);
      }
    }
  });
}
__name(Bd, "Bd");
function U3(t, e) {
  return !!(t === "is" || (t === "class" || t === "style") && Ve("INSTANCE_ATTRS_CLASS_STYLE", e) || Yn(t) && Ve("INSTANCE_LISTENERS", e) || t.startsWith("routerView") || t === "registerRouteInstance");
}
__name(U3, "U3");
function $d(t, e, n, r = false) {
  const s = {}, i = {};
  Ti(i, u1, 1), t.propsDefaults = /* @__PURE__ */ Object.create(null), V3(t, e, s, i);
  for (const o in t.propsOptions[0])
    o in s || (s[o] = void 0);
  n ? t.props = r ? s : Ju(s) : t.type.props ? t.props = s : t.props = i, t.attrs = i;
}
__name($d, "$d");
function Hd(t, e, n, r) {
  const { props: s, attrs: i, vnode: { patchFlag: o } } = t, l = be(s), [a] = t.propsOptions;
  let c = false;
  if ((r || o > 0) && !(o & 16)) {
    if (o & 8) {
      const u = t.vnode.dynamicProps;
      for (let h = 0; h < u.length; h++) {
        let f = u[h];
        if (i1(t.emitsOptions, f))
          continue;
        const p = e[f];
        if (a)
          if (Me(i, f))
            p !== i[f] && (i[f] = p, c = true);
          else {
            const x = kt(f);
            s[x] = ko(a, l, x, p, t, false);
          }
        else {
          if (Yn(f) && f.endsWith("Native"))
            f = f.slice(0, -6);
          else if (U3(f, t))
            continue;
          p !== i[f] && (i[f] = p, c = true);
        }
      }
    }
  } else {
    V3(t, e, s, i) && (c = true);
    let u;
    for (const h in l)
      (!e || !Me(e, h) && ((u = St(h)) === h || !Me(e, u))) && (a ? n && (n[h] !== void 0 || n[u] !== void 0) && (s[h] = ko(a, l, h, void 0, t, true)) : delete s[h]);
    if (i !== l)
      for (const h in i)
        (!e || !Me(e, h) && !Me(e, h + "Native")) && (delete i[h], c = true);
  }
  c && Rn(t, "set", "$attrs");
}
__name(Hd, "Hd");
function V3(t, e, n, r) {
  const [s, i] = t.propsOptions;
  let o = false, l;
  if (e)
    for (let a in e) {
      if (is(a) || (a.startsWith("onHook:") && Zn("INSTANCE_EVENT_HOOKS", t, a.slice(2).toLowerCase()), a === "inline-template"))
        continue;
      const c = e[a];
      let u;
      if (s && Me(s, u = kt(a)))
        !i || !i.includes(u) ? n[u] = c : (l || (l = {}))[u] = c;
      else if (!i1(t.emitsOptions, a)) {
        if (Yn(a) && a.endsWith("Native"))
          a = a.slice(0, -6);
        else if (U3(a, t))
          continue;
        (!(a in r) || c !== r[a]) && (r[a] = c, o = true);
      }
    }
  if (i) {
    const a = be(n), c = l || ze;
    for (let u = 0; u < i.length; u++) {
      const h = i[u];
      n[h] = ko(s, a, h, c[h], t, !Me(c, h));
    }
  }
  return o;
}
__name(V3, "V3");
function ko(t, e, n, r, s, i) {
  const o = t[n];
  if (o != null) {
    const l = Me(o, "default");
    if (l && r === void 0) {
      const a = o.default;
      if (o.type !== Function && ue(a)) {
        const { propsDefaults: c } = s;
        n in c ? r = c[n] : (gr(s), r = c[n] = a.call(Ve("PROPS_DEFAULT_THIS", s) ? Bd(s, e) : null, e), hr());
      } else
        r = a;
    }
    o[0] && (i && !l ? r = false : o[1] && (r === "" || r === St(n)) && (r = true));
  }
  return r;
}
__name(ko, "ko");
function z3(t, e, n = false) {
  const r = e.propsCache, s = r.get(t);
  if (s)
    return s;
  const i = t.props, o = {}, l = [];
  let a = false;
  if (!ue(t)) {
    const u = /* @__PURE__ */ __name((h) => {
      ue(h) && (h = h.options), a = true;
      const [f, p] = z3(h, e, true);
      Oe(o, f), p && l.push(...p);
    }, "u");
    !n && e.mixins.length && e.mixins.forEach(u), t.extends && u(t.extends), t.mixins && t.mixins.forEach(u);
  }
  if (!i && !a)
    return Se(t) && r.set(t, rs), rs;
  if (W(i))
    for (let u = 0; u < i.length; u++) {
      const h = kt(i[u]);
      Qc(h) && (o[h] = ze);
    }
  else if (i)
    for (const u in i) {
      const h = kt(u);
      if (Qc(h)) {
        const f = i[u], p = o[h] = W(f) || ue(f) ? { type: f } : Object.assign({}, f);
        if (p) {
          const x = t2(Boolean, p.type), y = t2(String, p.type);
          p[0] = x > -1, p[1] = y < 0 || x < y, (x > -1 || Me(p, "default")) && l.push(h);
        }
      }
    }
  const c = [o, l];
  return Se(t) && r.set(t, c), c;
}
__name(z3, "z3");
function Qc(t) {
  return t[0] !== "$";
}
__name(Qc, "Qc");
function Jc(t) {
  const e = t && t.toString().match(/^\s*function (\w+)/);
  return e ? e[1] : t === null ? "null" : "";
}
__name(Jc, "Jc");
function e2(t, e) {
  return Jc(t) === Jc(e);
}
__name(e2, "e2");
function t2(t, e) {
  return W(e) ? e.findIndex((n) => e2(n, t)) : ue(e) && e2(e, t) ? 0 : -1;
}
__name(t2, "t2");
var G3 = /* @__PURE__ */ __name((t) => t[0] === "_" || t === "$stable", "G3");
var zl = /* @__PURE__ */ __name((t) => W(t) ? t.map(Wt) : [Wt(t)], "zl");
var Ud = /* @__PURE__ */ __name((t, e, n) => {
  if (e._n)
    return e;
  const r = jt((...s) => zl(e(...s)), n);
  return r._c = false, r;
}, "Ud");
var j3 = /* @__PURE__ */ __name((t, e, n) => {
  const r = t._ctx;
  for (const s in t) {
    if (G3(s))
      continue;
    const i = t[s];
    if (ue(i))
      e[s] = Ud(s, i, r);
    else if (i != null) {
      const o = zl(i);
      e[s] = () => o;
    }
  }
}, "j3");
var Z3 = /* @__PURE__ */ __name((t, e) => {
  const n = zl(e);
  t.slots.default = () => n;
}, "Z3");
var Vd = /* @__PURE__ */ __name((t, e) => {
  if (t.vnode.shapeFlag & 32) {
    const n = e._;
    n ? (t.slots = be(e), Ti(e, "_", n)) : j3(e, t.slots = {});
  } else
    t.slots = {}, e && Z3(t, e);
  Ti(t.slots, u1, 1);
}, "Vd");
var zd = /* @__PURE__ */ __name((t, e, n) => {
  const { vnode: r, slots: s } = t;
  let i = true, o = ze;
  if (r.shapeFlag & 32) {
    const l = e._;
    l ? n && l === 1 ? i = false : (Oe(s, e), !n && l === 1 && delete s._) : (i = !e.$stable, j3(e, s)), o = e;
  } else
    e && (Z3(t, e), o = { default: 1 });
  if (i)
    for (const l in s)
      !G3(l) && !(l in o) && delete s[l];
}, "zd");
function Gd(t) {
  t.optionMergeStrategies = new Proxy({}, {
    get(e, n) {
      if (n in e)
        return e[n];
      if (n in Mr && Zn("CONFIG_OPTION_MERGE_STRATS", null))
        return Mr[n];
    }
  });
}
__name(Gd, "Gd");
var Ft;
var Er;
function jd(t, e) {
  Ft = e({});
  const n = Er = /* @__PURE__ */ __name(function a(c = {}) {
    return r(c, a);
  }, "a");
  function r(a = {}, c) {
    _t("GLOBAL_MOUNT", null);
    const { data: u } = a;
    u && !ue(u) && Zn("OPTIONS_DATA_FN", null) && (a.data = () => u);
    const h = t(a);
    c !== n && W3(h, c);
    const f = h._createRoot(a);
    return a.el ? f.$mount(a.el) : f;
  }
  __name(r, "r");
  n.version = "2.6.14-compat:3.2.45", n.config = Ft.config, n.use = (a, ...c) => (a && ue(a.install) ? a.install(n, ...c) : ue(a) && a(n, ...c), n), n.mixin = (a) => (Ft.mixin(a), n), n.component = (a, c) => c ? (Ft.component(a, c), n) : Ft.component(a), n.directive = (a, c) => c ? (Ft.directive(a, c), n) : Ft.directive(a), n.options = { _base: n };
  let s = 1;
  n.cid = s, n.nextTick = Ts;
  const i = /* @__PURE__ */ new WeakMap();
  function o(a = {}) {
    if (_t("GLOBAL_EXTEND", null), ue(a) && (a = a.options), i.has(a))
      return i.get(a);
    const c = this;
    function u(f) {
      return r(f ? Ir(Oe({}, u.options), f, Mr) : u.options, u);
    }
    __name(u, "u");
    u.super = c, u.prototype = Object.create(n.prototype), u.prototype.constructor = u;
    const h = {};
    for (const f in c.options) {
      const p = c.options[f];
      h[f] = W(p) ? p.slice() : Se(p) ? Oe(/* @__PURE__ */ Object.create(null), p) : p;
    }
    return u.options = Ir(h, a, Mr), u.options._base = u, u.extend = o.bind(u), u.mixin = c.mixin, u.use = c.use, u.cid = ++s, i.set(a, u), u;
  }
  __name(o, "o");
  n.extend = o.bind(n), n.set = (a, c, u) => {
    _t("GLOBAL_SET", null), a[c] = u;
  }, n.delete = (a, c) => {
    _t("GLOBAL_DELETE", null), delete a[c];
  }, n.observable = (a) => (_t("GLOBAL_OBSERVABLE", null), kn(a)), n.filter = (a, c) => c ? (Ft.filter(a, c), n) : Ft.filter(a);
  const l = {
    warn: Bt,
    extend: Oe,
    mergeOptions: (a, c, u) => Ir(a, c, u ? void 0 : Mr),
    defineReactive: Jd
  };
  return Object.defineProperty(n, "util", {
    get() {
      return _t("GLOBAL_PRIVATE_UTIL", null), l;
    }
  }), n.configureCompat = q8, n;
}
__name(jd, "jd");
function Zd(t, e, n) {
  Wd(t, e), Gd(t.config), Ft && (Yd(t, e, n), qd(t), Kd(t));
}
__name(Zd, "Zd");
function Wd(t, e) {
  e.filters = {}, t.filter = (n, r) => (_t("FILTERS", null), r ? (e.filters[n] = r, t) : e.filters[n]);
}
__name(Wd, "Wd");
function qd(t) {
  Object.defineProperties(t, {
    prototype: {
      get() {
        return t.config.globalProperties;
      }
    },
    nextTick: { value: Ts },
    extend: { value: Er.extend },
    set: { value: Er.set },
    delete: { value: Er.delete },
    observable: { value: Er.observable },
    util: {
      get() {
        return Er.util;
      }
    }
  });
}
__name(qd, "qd");
function Kd(t) {
  t._context.mixins = [...Ft._context.mixins], ["components", "directives", "filters"].forEach((e) => {
    t._context[e] = Object.create(Ft._context[e]);
  });
  for (const e in Ft.config) {
    if (e === "isNativeTag" || Po() && (e === "isCustomElement" || e === "compilerOptions"))
      continue;
    const n = Ft.config[e];
    t.config[e] = Se(n) ? Object.create(n) : n, e === "ignoredElements" && Ve("CONFIG_IGNORED_ELEMENTS", null) && !Po() && W(n) && (t.config.compilerOptions.isCustomElement = (r) => n.some((s) => Ke(s) ? s === r : s.test(r)));
  }
  W3(t, Er);
}
__name(Kd, "Kd");
function W3(t, e) {
  const n = Ve("GLOBAL_PROTOTYPE", null);
  n && (t.config.globalProperties = Object.create(e.prototype));
  const r = Object.getOwnPropertyDescriptors(e.prototype);
  for (const s in r)
    s !== "constructor" && n && Object.defineProperty(t.config.globalProperties, s, r[s]);
}
__name(W3, "W3");
function Yd(t, e, n) {
  let r = false;
  t._createRoot = (s) => {
    const i = t._component, o = z(i, s.propsData || null);
    o.appContext = e;
    const l = !ue(i) && !i.render && !i.template, a = /* @__PURE__ */ __name(() => {
    }, "a"), c = jl(o, null, null);
    return l && (c.render = a), Zl(c), o.component = c, o.isCompatRoot = true, c.ctx._compat_mount = (u) => {
      if (r)
        return;
      let h;
      if (typeof u == "string") {
        const p = document.querySelector(u);
        if (!p)
          return;
        h = p;
      } else
        h = u || document.createElement("div");
      const f = h instanceof SVGElement;
      return l && c.render === a && (c.render = null, i.template = h.innerHTML, Wl(c, false, true)), h.innerHTML = "", n(o, h, f), h instanceof Element && (h.removeAttribute("v-cloak"), h.setAttribute("data-v-app", "")), r = true, t._container = h, h.__vue_app__ = t, c.proxy;
    }, c.ctx._compat_destroy = () => {
      if (r)
        n(null, t._container), delete t._container.__vue_app__;
      else {
        const { bum: u, scope: h, um: f } = c;
        u && cr(u), Ve("INSTANCE_EVENT_HOOKS", c) && c.emit("hook:beforeDestroy"), h && h.stop(), f && cr(f), Ve("INSTANCE_EVENT_HOOKS", c) && c.emit("hook:destroyed");
      }
    }, c.proxy;
  };
}
__name(Yd, "Yd");
var Xd = [
  "push",
  "pop",
  "shift",
  "unshift",
  "splice",
  "sort",
  "reverse"
];
var Qd = /* @__PURE__ */ new WeakSet();
function Jd(t, e, n) {
  if (Se(n) && !Un(n) && !Qd.has(n)) {
    const s = kn(n);
    W(n) ? Xd.forEach((i) => {
      n[i] = (...o) => {
        Array.prototype[i].call(s, ...o);
      };
    }) : Object.keys(n).forEach((i) => {
      try {
        Y1(n, i, n[i]);
      } catch {
      }
    });
  }
  const r = t.$;
  r && t === r.proxy ? (Y1(r.ctx, e, n), r.accessCache = /* @__PURE__ */ Object.create(null)) : Un(t) ? t[e] = n : Y1(t, e, n);
}
__name(Jd, "Jd");
function Y1(t, e, n) {
  n = Se(n) ? kn(n) : n, Object.defineProperty(t, e, {
    enumerable: true,
    configurable: true,
    get() {
      return Ht(t, "get", e), n;
    },
    set(r) {
      n = Se(r) ? kn(r) : r, Rn(t, "set", e, r);
    }
  });
}
__name(Y1, "Y1");
function q3() {
  return {
    app: null,
    config: {
      isNativeTag: Y6,
      performance: false,
      globalProperties: {},
      optionMergeStrategies: {},
      errorHandler: void 0,
      warnHandler: void 0,
      compilerOptions: {}
    },
    mixins: [],
    components: {},
    directives: {},
    provides: /* @__PURE__ */ Object.create(null),
    optionsCache: /* @__PURE__ */ new WeakMap(),
    propsCache: /* @__PURE__ */ new WeakMap(),
    emitsCache: /* @__PURE__ */ new WeakMap()
  };
}
__name(q3, "q3");
var ef = 0;
function tf(t, e) {
  return function(r, s = null) {
    ue(r) || (r = Object.assign({}, r)), s != null && !Se(s) && (s = null);
    const i = q3(), o = /* @__PURE__ */ new Set();
    let l = false;
    const a = i.app = {
      _uid: ef++,
      _component: r,
      _props: s,
      _container: null,
      _context: i,
      _instance: null,
      version: u5,
      get config() {
        return i.config;
      },
      set config(c) {
      },
      use(c, ...u) {
        return o.has(c) || (c && ue(c.install) ? (o.add(c), c.install(a, ...u)) : ue(c) && (o.add(c), c(a, ...u))), a;
      },
      mixin(c) {
        return i.mixins.includes(c) || i.mixins.push(c), a;
      },
      component(c, u) {
        return u ? (i.components[c] = u, a) : i.components[c];
      },
      directive(c, u) {
        return u ? (i.directives[c] = u, a) : i.directives[c];
      },
      mount(c, u, h) {
        if (!l) {
          const f = z(r, s);
          return f.appContext = i, u && e ? e(f, c) : t(f, c, h), l = true, a._container = c, c.__vue_app__ = a, p1(f.component) || f.component.proxy;
        }
      },
      unmount() {
        l && (t(null, a._container), delete a._container.__vue_app__);
      },
      provide(c, u) {
        return i.provides[c] = u, a;
      }
    };
    return Zd(a, i, t), a;
  };
}
__name(tf, "tf");
function Ri(t, e, n, r, s = false) {
  if (W(t)) {
    t.forEach((f, p) => Ri(f, e && (W(e) ? e[p] : e), n, r, s));
    return;
  }
  if (Or(r) && !s)
    return;
  const i = r.shapeFlag & 4 ? p1(r.component) || r.component.proxy : r.el, o = s ? null : i, { i: l, r: a } = t, c = e && e.r, u = l.refs === ze ? l.refs = {} : l.refs, h = l.setupState;
  if (c != null && c !== a && (Ke(c) ? (u[c] = null, Me(h, c) && (h[c] = null)) : gt(c) && (c.value = null)), ue(a))
    En(a, l, 12, [o, u]);
  else {
    const f = Ke(a), p = gt(a);
    if (f || p) {
      const x = /* @__PURE__ */ __name(() => {
        if (t.f) {
          const y = f ? Me(h, a) ? h[a] : u[a] : a.value;
          s ? W(y) && _l(y, i) : W(y) ? y.includes(i) || y.push(i) : f ? (u[a] = [i], Me(h, a) && (h[a] = u[a])) : (a.value = [i], t.k && (u[t.k] = a.value));
        } else
          f ? (u[a] = o, Me(h, a) && (h[a] = o)) : p && (a.value = o, t.k && (u[t.k] = o));
      }, "x");
      o ? (x.id = -1, at(x, n)) : x();
    }
  }
}
__name(Ri, "Ri");
var er = false;
var oi = /* @__PURE__ */ __name((t) => /svg/.test(t.namespaceURI) && t.tagName !== "foreignObject", "oi");
var li = /* @__PURE__ */ __name((t) => t.nodeType === 8, "li");
function nf(t) {
  const { mt: e, p: n, o: { patchProp: r, createText: s, nextSibling: i, parentNode: o, remove: l, insert: a, createComment: c } } = t, u = /* @__PURE__ */ __name((_, m) => {
    if (!m.hasChildNodes()) {
      n(null, _, m), Si(), m._vnode = _;
      return;
    }
    er = false, h(m.firstChild, _, null, null, null), Si(), m._vnode = _, er && console.error("Hydration completed but contains mismatches.");
  }, "u"), h = /* @__PURE__ */ __name((_, m, C, E, P, U = false) => {
    const j = li(_) && _.data === "[", k = /* @__PURE__ */ __name(() => y(_, m, C, E, P, j), "k"), { type: ae, ref: le, shapeFlag: he, patchFlag: Ue } = m;
    let xe = _.nodeType;
    m.el = _, Ue === -2 && (U = false, m.dynamicChildren = null);
    let re = null;
    switch (ae) {
      case $r:
        xe !== 3 ? m.children === "" ? (a(m.el = s(""), o(_), _), re = _) : re = k() : (_.data !== m.children && (er = true, _.data = m.children), re = i(_));
        break;
      case yt:
        xe !== 8 || j ? re = k() : re = i(_);
        break;
      case Nr:
        if (j && (_ = i(_), xe = _.nodeType), xe === 1 || xe === 3) {
          re = _;
          const Ne = !m.children.length;
          for (let D = 0; D < m.staticCount; D++)
            Ne && (m.children += re.nodeType === 1 ? re.outerHTML : re.data), D === m.staticCount - 1 && (m.anchor = re), re = i(re);
          return j ? i(re) : re;
        } else
          k();
        break;
      case Fe:
        j ? re = x(_, m, C, E, P, U) : re = k();
        break;
      default:
        if (he & 1)
          xe !== 1 || m.type.toLowerCase() !== _.tagName.toLowerCase() ? re = k() : re = f(_, m, C, E, P, U);
        else if (he & 6) {
          m.slotScopeIds = P;
          const Ne = o(_);
          if (e(m, Ne, null, C, E, oi(Ne), U), re = j ? A(_) : i(_), re && li(re) && re.data === "teleport end" && (re = i(re)), Or(m)) {
            let D;
            j ? (D = z(Fe), D.anchor = re ? re.previousSibling : Ne.lastChild) : D = _.nodeType === 3 ? dn("") : z("div"), D.el = _, m.component.subTree = D;
          }
        } else
          he & 64 ? xe !== 8 ? re = k() : re = m.type.hydrate(_, m, C, E, P, U, t, p) : he & 128 && (re = m.type.hydrate(_, m, C, E, oi(o(_)), P, U, t, h));
    }
    return le != null && Ri(le, null, E, m), re;
  }, "h"), f = /* @__PURE__ */ __name((_, m, C, E, P, U) => {
    U = U || !!m.dynamicChildren;
    const { type: j, props: k, patchFlag: ae, shapeFlag: le, dirs: he } = m, Ue = j === "input" && he || j === "option";
    if (Ue || ae !== -1) {
      if (he && yn(m, null, C, "created"), k)
        if (Ue || !U || ae & 48)
          for (const re in k)
            (Ue && re.endsWith("value") || Yn(re) && !is(re)) && r(_, re, null, k[re], false, void 0, C);
        else
          k.onClick && r(_, "onClick", null, k.onClick, false, void 0, C);
      let xe;
      if ((xe = k && k.onVnodeBeforeMount) && Nt(xe, C, m), he && yn(m, null, C, "beforeMount"), ((xe = k && k.onVnodeMounted) || he) && h3(() => {
        xe && Nt(xe, C, m), he && yn(m, null, C, "mounted");
      }, E), le & 16 && !(k && (k.innerHTML || k.textContent))) {
        let re = p(_.firstChild, m, _, C, E, P, U);
        for (; re; ) {
          er = true;
          const Ne = re;
          re = re.nextSibling, l(Ne);
        }
      } else
        le & 8 && _.textContent !== m.children && (er = true, _.textContent = m.children);
    }
    return _.nextSibling;
  }, "f"), p = /* @__PURE__ */ __name((_, m, C, E, P, U, j) => {
    j = j || !!m.dynamicChildren;
    const k = m.children, ae = k.length;
    for (let le = 0; le < ae; le++) {
      const he = j ? k[le] : k[le] = Wt(k[le]);
      if (_)
        _ = h(_, he, E, P, U, j);
      else {
        if (he.type === $r && !he.children)
          continue;
        er = true, n(null, he, C, null, E, P, oi(C), U);
      }
    }
    return _;
  }, "p"), x = /* @__PURE__ */ __name((_, m, C, E, P, U) => {
    const { slotScopeIds: j } = m;
    j && (P = P ? P.concat(j) : j);
    const k = o(_), ae = p(i(_), m, k, C, E, P, U);
    return ae && li(ae) && ae.data === "]" ? i(m.anchor = ae) : (er = true, a(m.anchor = c("]"), k, ae), ae);
  }, "x"), y = /* @__PURE__ */ __name((_, m, C, E, P, U) => {
    if (er = true, m.el = null, U) {
      const ae = A(_);
      for (; ; ) {
        const le = i(_);
        if (le && le !== ae)
          l(le);
        else
          break;
      }
    }
    const j = i(_), k = o(_);
    return l(_), n(null, m, k, j, C, E, oi(k), P), j;
  }, "y"), A = /* @__PURE__ */ __name((_) => {
    let m = 0;
    for (; _; )
      if (_ = i(_), _ && li(_) && (_.data === "[" && m++, _.data === "]")) {
        if (m === 0)
          return i(_);
        m--;
      }
    return _;
  }, "A");
  return [u, h];
}
__name(nf, "nf");
var at = h3;
function K3(t) {
  return X3(t);
}
__name(K3, "K3");
function Y3(t) {
  return X3(t, nf);
}
__name(Y3, "Y3");
function X3(t, e) {
  const n = n8();
  n.__VUE__ = true;
  const { insert: r, remove: s, patchProp: i, createElement: o, createText: l, createComment: a, setText: c, setElementText: u, parentNode: h, nextSibling: f, setScopeId: p = Bt, insertStaticContent: x } = t, y = /* @__PURE__ */ __name((g, L, T, I = null, O = null, $ = null, K = false, H = null, V = !!L.dynamicChildren) => {
    if (g === L)
      return;
    g && !vn(g, L) && (I = tt(g), it(g, O, $, true), g = null), L.patchFlag === -2 && (V = false, L.dynamicChildren = null);
    const { type: N, ref: F, shapeFlag: ie } = L;
    switch (N) {
      case $r:
        A(g, L, T, I);
        break;
      case yt:
        _(g, L, T, I);
        break;
      case Nr:
        g == null && m(L, T, I, K);
        break;
      case Fe:
        Ue(g, L, T, I, O, $, K, H, V);
        break;
      default:
        ie & 1 ? P(g, L, T, I, O, $, K, H, V) : ie & 6 ? xe(g, L, T, I, O, $, K, H, V) : (ie & 64 || ie & 128) && N.process(g, L, T, I, O, $, K, H, V, mt);
    }
    F != null && O && Ri(F, g && g.ref, $, L || g, !L);
  }, "y"), A = /* @__PURE__ */ __name((g, L, T, I) => {
    if (g == null)
      r(L.el = l(L.children), T, I);
    else {
      const O = L.el = g.el;
      L.children !== g.children && c(O, L.children);
    }
  }, "A"), _ = /* @__PURE__ */ __name((g, L, T, I) => {
    g == null ? r(L.el = a(L.children || ""), T, I) : L.el = g.el;
  }, "_"), m = /* @__PURE__ */ __name((g, L, T, I) => {
    [g.el, g.anchor] = x(g.children, L, T, I, g.el, g.anchor);
  }, "m"), C = /* @__PURE__ */ __name(({ el: g, anchor: L }, T, I) => {
    let O;
    for (; g && g !== L; )
      O = f(g), r(g, T, I), g = O;
    r(L, T, I);
  }, "C"), E = /* @__PURE__ */ __name(({ el: g, anchor: L }) => {
    let T;
    for (; g && g !== L; )
      T = f(g), s(g), g = T;
    s(L);
  }, "E"), P = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V) => {
    K = K || L.type === "svg", g == null ? U(L, T, I, O, $, K, H, V) : ae(g, L, O, $, K, H, V);
  }, "P"), U = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H) => {
    let V, N;
    const { type: F, props: ie, shapeFlag: X, transition: ne, dirs: ve } = g;
    if (V = g.el = o(g.type, $, ie && ie.is, ie), X & 8 ? u(V, g.children) : X & 16 && k(g.children, V, null, I, O, $ && F !== "foreignObject", K, H), ve && yn(g, null, I, "created"), ie) {
      for (const De in ie)
        De !== "value" && !is(De) && i(V, De, null, ie[De], $, g.children, I, O, Re);
      "value" in ie && i(V, "value", null, ie.value), (N = ie.onVnodeBeforeMount) && Nt(N, I, g);
    }
    j(V, g, g.scopeId, K, I), ve && yn(g, null, I, "beforeMount");
    const Pe = (!O || O && !O.pendingBranch) && ne && !ne.persisted;
    Pe && ne.beforeEnter(V), r(V, L, T), ((N = ie && ie.onVnodeMounted) || Pe || ve) && at(() => {
      N && Nt(N, I, g), Pe && ne.enter(V), ve && yn(g, null, I, "mounted");
    }, O);
  }, "U"), j = /* @__PURE__ */ __name((g, L, T, I, O) => {
    if (T && p(g, T), I)
      for (let $ = 0; $ < I.length; $++)
        p(g, I[$]);
    if (O) {
      let $ = O.subTree;
      if (L === $) {
        const K = O.vnode;
        j(g, K, K.scopeId, K.slotScopeIds, O.parent);
      }
    }
  }, "j"), k = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V = 0) => {
    for (let N = V; N < g.length; N++) {
      const F = g[N] = H ? rr(g[N]) : Wt(g[N]);
      y(null, F, L, T, I, O, $, K, H);
    }
  }, "k"), ae = /* @__PURE__ */ __name((g, L, T, I, O, $, K) => {
    const H = L.el = g.el;
    let { patchFlag: V, dynamicChildren: N, dirs: F } = L;
    V |= g.patchFlag & 16;
    const ie = g.props || ze, X = L.props || ze;
    let ne;
    T && yr(T, false), (ne = X.onVnodeBeforeUpdate) && Nt(ne, T, L, g), F && yn(L, g, T, "beforeUpdate"), T && yr(T, true);
    const ve = O && L.type !== "foreignObject";
    if (N ? le(g.dynamicChildren, N, H, T, I, ve, $) : K || de(g, L, H, null, T, I, ve, $, false), V > 0) {
      if (V & 16)
        he(H, L, ie, X, T, I, O);
      else if (V & 2 && ie.class !== X.class && i(H, "class", null, X.class, O), V & 4 && i(H, "style", ie.style, X.style, O), V & 8) {
        const Pe = L.dynamicProps;
        for (let De = 0; De < Pe.length; De++) {
          const Je = Pe[De], Q = ie[Je], ce = X[Je];
          (ce !== Q || Je === "value") && i(H, Je, Q, ce, O, g.children, T, I, Re);
        }
      }
      V & 1 && g.children !== L.children && u(H, L.children);
    } else
      !K && N == null && he(H, L, ie, X, T, I, O);
    ((ne = X.onVnodeUpdated) || F) && at(() => {
      ne && Nt(ne, T, L, g), F && yn(L, g, T, "updated");
    }, I);
  }, "ae"), le = /* @__PURE__ */ __name((g, L, T, I, O, $, K) => {
    for (let H = 0; H < L.length; H++) {
      const V = g[H], N = L[H], F = V.el && (V.type === Fe || !vn(V, N) || V.shapeFlag & 70) ? h(V.el) : T;
      y(V, N, F, null, I, O, $, K, true);
    }
  }, "le"), he = /* @__PURE__ */ __name((g, L, T, I, O, $, K) => {
    if (T !== I) {
      if (T !== ze)
        for (const H in T)
          !is(H) && !(H in I) && i(g, H, T[H], null, K, L.children, O, $, Re);
      for (const H in I) {
        if (is(H))
          continue;
        const V = I[H], N = T[H];
        V !== N && H !== "value" && i(g, H, N, V, K, L.children, O, $, Re);
      }
      "value" in I && i(g, "value", T.value, I.value);
    }
  }, "he"), Ue = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V) => {
    const N = L.el = g ? g.el : l(""), F = L.anchor = g ? g.anchor : l("");
    let { patchFlag: ie, dynamicChildren: X, slotScopeIds: ne } = L;
    ne && (H = H ? H.concat(ne) : ne), g == null ? (r(N, T, I), r(F, T, I), k(L.children, T, F, O, $, K, H, V)) : ie > 0 && ie & 64 && X && g.dynamicChildren ? (le(g.dynamicChildren, X, T, O, $, K, H), (L.key != null || O && L === O.subTree) && Gl(g, L, true)) : de(g, L, T, F, O, $, K, H, V);
  }, "Ue"), xe = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V) => {
    L.slotScopeIds = H, g == null ? L.shapeFlag & 512 ? O.ctx.activate(L, T, I, K, V) : re(L, T, I, O, $, K, V) : Ne(g, L, V);
  }, "xe"), re = /* @__PURE__ */ __name((g, L, T, I, O, $, K) => {
    const H = g.isCompatRoot && g.component, V = H || (g.component = jl(g, I, O));
    if (R0(g) && (V.ctx.renderer = mt), H || Zl(V), V.asyncDep) {
      if (O && O.registerDep(V, D), !g.el) {
        const N = V.subTree = z(yt);
        _(null, N, L, T);
      }
      return;
    }
    D(V, g, L, T, O, $, K);
  }, "re"), Ne = /* @__PURE__ */ __name((g, L, T) => {
    const I = L.component = g.component;
    if (sd(g, L, T))
      if (I.asyncDep && !I.asyncResolved) {
        Y(I, L, T);
        return;
      } else
        I.next = L, j8(I.update), I.update();
    else
      L.el = g.el, I.vnode = L;
  }, "Ne"), D = /* @__PURE__ */ __name((g, L, T, I, O, $, K) => {
    const H = /* @__PURE__ */ __name(() => {
      if (g.isMounted) {
        let { next: F, bu: ie, u: X, parent: ne, vnode: ve } = g, Pe = F, De;
        yr(g, false), F ? (F.el = ve.el, Y(g, F, K)) : F = ve, ie && cr(ie), (De = F.props && F.props.onVnodeBeforeUpdate) && Nt(De, ne, F, ve), Ve("INSTANCE_EVENT_HOOKS", g) && g.emit("hook:beforeUpdate"), yr(g, true);
        const Je = yi(g), Q = g.subTree;
        g.subTree = Je, y(
          Q,
          Je,
          h(Q.el),
          tt(Q),
          g,
          O,
          $
        ), F.el = Je.el, Pe === null && Dl(g, Je.el), X && at(X, O), (De = F.props && F.props.onVnodeUpdated) && at(() => Nt(De, ne, F, ve), O), Ve("INSTANCE_EVENT_HOOKS", g) && at(() => g.emit("hook:updated"), O);
      } else {
        let F;
        const { el: ie, props: X } = L, { bm: ne, m: ve, parent: Pe } = g, De = Or(L);
        if (yr(g, false), ne && cr(ne), !De && (F = X && X.onVnodeBeforeMount) && Nt(F, Pe, L), Ve("INSTANCE_EVENT_HOOKS", g) && g.emit("hook:beforeMount"), yr(g, true), ie && Mt) {
          const Je = /* @__PURE__ */ __name(() => {
            g.subTree = yi(g), Mt(ie, g.subTree, g, O, null);
          }, "Je");
          De ? L.type.__asyncLoader().then(
            () => !g.isUnmounted && Je()
          ) : Je();
        } else {
          const Je = g.subTree = yi(g);
          y(null, Je, T, I, g, O, $), L.el = Je.el;
        }
        if (ve && at(ve, O), !De && (F = X && X.onVnodeMounted)) {
          const Je = L;
          at(() => Nt(F, Pe, Je), O);
        }
        Ve("INSTANCE_EVENT_HOOKS", g) && at(() => g.emit("hook:mounted"), O), (L.shapeFlag & 256 || Pe && Or(Pe.vnode) && Pe.vnode.shapeFlag & 256) && (g.a && at(g.a, O), Ve("INSTANCE_EVENT_HOOKS", g) && at(() => g.emit("hook:activated"), O)), g.isMounted = true, L = T = I = null;
      }
    }, "H"), V = g.effect = new S0(
      H,
      () => n1(N),
      g.scope
    ), N = g.update = () => V.run();
    N.id = g.uid, yr(g, true), N();
  }, "D"), Y = /* @__PURE__ */ __name((g, L, T) => {
    L.component = g;
    const I = g.vnode.props;
    g.vnode = L, g.next = null, Hd(g, L.props, I, T), zd(g, L.children, T), ws(), Hc(), Es();
  }, "Y"), de = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V = false) => {
    const N = g && g.children, F = g ? g.shapeFlag : 0, ie = L.children, { patchFlag: X, shapeFlag: ne } = L;
    if (X > 0) {
      if (X & 128) {
        Qe(N, ie, T, I, O, $, K, H, V);
        return;
      } else if (X & 256) {
        Xe(N, ie, T, I, O, $, K, H, V);
        return;
      }
    }
    ne & 8 ? (F & 16 && Re(N, O, $), ie !== N && u(T, ie)) : F & 16 ? ne & 16 ? Qe(N, ie, T, I, O, $, K, H, V) : Re(N, O, $, true) : (F & 8 && u(T, ""), ne & 16 && k(ie, T, I, O, $, K, H, V));
  }, "de"), Xe = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V) => {
    g = g || rs, L = L || rs;
    const N = g.length, F = L.length, ie = Math.min(N, F);
    let X;
    for (X = 0; X < ie; X++) {
      const ne = L[X] = V ? rr(L[X]) : Wt(L[X]);
      y(g[X], ne, T, null, O, $, K, H, V);
    }
    N > F ? Re(g, O, $, true, false, ie) : k(L, T, I, O, $, K, H, V, ie);
  }, "Xe"), Qe = /* @__PURE__ */ __name((g, L, T, I, O, $, K, H, V) => {
    let N = 0;
    const F = L.length;
    let ie = g.length - 1, X = F - 1;
    for (; N <= ie && N <= X; ) {
      const ne = g[N], ve = L[N] = V ? rr(L[N]) : Wt(L[N]);
      if (vn(ne, ve))
        y(ne, ve, T, null, O, $, K, H, V);
      else
        break;
      N++;
    }
    for (; N <= ie && N <= X; ) {
      const ne = g[ie], ve = L[X] = V ? rr(L[X]) : Wt(L[X]);
      if (vn(ne, ve))
        y(ne, ve, T, null, O, $, K, H, V);
      else
        break;
      ie--, X--;
    }
    if (N > ie) {
      if (N <= X) {
        const ne = X + 1, ve = ne < F ? L[ne].el : I;
        for (; N <= X; )
          y(null, L[N] = V ? rr(L[N]) : Wt(L[N]), T, ve, O, $, K, H, V), N++;
      }
    } else if (N > X)
      for (; N <= ie; )
        it(g[N], O, $, true), N++;
    else {
      const ne = N, ve = N, Pe = /* @__PURE__ */ new Map();
      for (N = ve; N <= X; N++) {
        const ft = L[N] = V ? rr(L[N]) : Wt(L[N]);
        ft.key != null && Pe.set(ft.key, N);
      }
      let De, Je = 0;
      const Q = X - ve + 1;
      let ce = false, Ee = 0;
      const Ie = new Array(Q);
      for (N = 0; N < Q; N++)
        Ie[N] = 0;
      for (N = ne; N <= ie; N++) {
        const ft = g[N];
        if (Je >= Q) {
          it(ft, O, $, true);
          continue;
        }
        let nn;
        if (ft.key != null)
          nn = Pe.get(ft.key);
        else
          for (De = ve; De <= X; De++)
            if (Ie[De - ve] === 0 && vn(ft, L[De])) {
              nn = De;
              break;
            }
        nn === void 0 ? it(ft, O, $, true) : (Ie[nn - ve] = N + 1, nn >= Ee ? Ee = nn : ce = true, y(ft, L[nn], T, null, O, $, K, H, V), Je++);
      }
      const xt = ce ? rf(Ie) : rs;
      for (De = xt.length - 1, N = Q - 1; N >= 0; N--) {
        const ft = ve + N, nn = L[ft], Ac = ft + 1 < F ? L[ft + 1].el : I;
        Ie[N] === 0 ? y(null, nn, T, Ac, O, $, K, H, V) : ce && (De < 0 || N !== xt[De] ? Ot(nn, T, Ac, 2) : De--);
      }
    }
  }, "Qe"), Ot = /* @__PURE__ */ __name((g, L, T, I, O = null) => {
    const { el: $, type: K, transition: H, children: V, shapeFlag: N } = g;
    if (N & 6) {
      Ot(g.component.subTree, L, T, I);
      return;
    }
    if (N & 128) {
      g.suspense.move(L, T, I);
      return;
    }
    if (N & 64) {
      K.move(g, L, T, mt);
      return;
    }
    if (K === Fe) {
      r($, L, T);
      for (let ie = 0; ie < V.length; ie++)
        Ot(V[ie], L, T, I);
      r(g.anchor, L, T);
      return;
    }
    if (K === Nr) {
      C(g, L, T);
      return;
    }
    if (I !== 2 && N & 1 && H)
      if (I === 0)
        H.beforeEnter($), r($, L, T), at(() => H.enter($), O);
      else {
        const { leave: ie, delayLeave: X, afterLeave: ne } = H, ve = /* @__PURE__ */ __name(() => r($, L, T), "ve"), Pe = /* @__PURE__ */ __name(() => {
          ie($, () => {
            ve(), ne && ne();
          });
        }, "Pe");
        X ? X($, ve, Pe) : Pe();
      }
    else
      r($, L, T);
  }, "Ot"), it = /* @__PURE__ */ __name((g, L, T, I = false, O = false) => {
    const { type: $, props: K, ref: H, children: V, dynamicChildren: N, shapeFlag: F, patchFlag: ie, dirs: X } = g;
    if (H != null && Ri(H, null, T, g, true), F & 256) {
      L.ctx.deactivate(g);
      return;
    }
    const ne = F & 1 && X, ve = !Or(g);
    let Pe;
    if (ve && (Pe = K && K.onVnodeBeforeUnmount) && Nt(Pe, L, g), F & 6)
      Ae(g.component, T, I);
    else {
      if (F & 128) {
        g.suspense.unmount(T, I);
        return;
      }
      ne && yn(g, null, L, "beforeUnmount"), F & 64 ? g.type.remove(g, L, T, O, mt, I) : N && ($ !== Fe || ie > 0 && ie & 64) ? Re(N, L, T, false, true) : ($ === Fe && ie & 384 || !O && F & 16) && Re(V, L, T), I && M(g);
    }
    (ve && (Pe = K && K.onVnodeUnmounted) || ne) && at(() => {
      Pe && Nt(Pe, L, g), ne && yn(g, null, L, "unmounted");
    }, T);
  }, "it"), M = /* @__PURE__ */ __name((g) => {
    const { type: L, el: T, anchor: I, transition: O } = g;
    if (L === Fe) {
      se(T, I);
      return;
    }
    if (L === Nr) {
      E(g);
      return;
    }
    const $ = /* @__PURE__ */ __name(() => {
      s(T), O && !O.persisted && O.afterLeave && O.afterLeave();
    }, "$");
    if (g.shapeFlag & 1 && O && !O.persisted) {
      const { leave: K, delayLeave: H } = O, V = /* @__PURE__ */ __name(() => K(T, $), "V");
      H ? H(g.el, $, V) : V();
    } else
      $();
  }, "M"), se = /* @__PURE__ */ __name((g, L) => {
    let T;
    for (; g !== L; )
      T = f(g), s(g), g = T;
    s(L);
  }, "se"), Ae = /* @__PURE__ */ __name((g, L, T) => {
    const { bum: I, scope: O, update: $, subTree: K, um: H } = g;
    I && cr(I), Ve("INSTANCE_EVENT_HOOKS", g) && g.emit("hook:beforeDestroy"), O.stop(), $ && ($.active = false, it(K, g, L, T)), H && at(H, L), Ve("INSTANCE_EVENT_HOOKS", g) && at(() => g.emit("hook:destroyed"), L), at(() => {
      g.isUnmounted = true;
    }, L), L && L.pendingBranch && !L.isUnmounted && g.asyncDep && !g.asyncResolved && g.suspenseId === L.pendingId && (L.deps--, L.deps === 0 && L.resolve());
  }, "Ae"), Re = /* @__PURE__ */ __name((g, L, T, I = false, O = false, $ = 0) => {
    for (let K = $; K < g.length; K++)
      it(g[K], L, T, I, O);
  }, "Re"), tt = /* @__PURE__ */ __name((g) => g.shapeFlag & 6 ? tt(g.component.subTree) : g.shapeFlag & 128 ? g.suspense.next() : f(g.anchor || g.el), "tt"), xn = /* @__PURE__ */ __name((g, L, T) => {
    g == null ? L._vnode && it(L._vnode, null, null, true) : y(L._vnode || null, g, L, null, null, null, T), Hc(), Si(), L._vnode = g;
  }, "xn"), mt = {
    p: y,
    um: it,
    m: Ot,
    r: M,
    mt: re,
    mc: k,
    pc: de,
    pbc: le,
    n: tt,
    o: t
  };
  let It, Mt;
  return e && ([It, Mt] = e(mt)), {
    render: xn,
    hydrate: It,
    createApp: tf(xn, It)
  };
}
__name(X3, "X3");
function yr({ effect: t, update: e }, n) {
  t.allowRecurse = e.allowRecurse = n;
}
__name(yr, "yr");
function Gl(t, e, n = false) {
  const r = t.children, s = e.children;
  if (W(r) && W(s))
    for (let i = 0; i < r.length; i++) {
      const o = r[i];
      let l = s[i];
      l.shapeFlag & 1 && !l.dynamicChildren && ((l.patchFlag <= 0 || l.patchFlag === 32) && (l = s[i] = rr(s[i]), l.el = o.el), n || Gl(o, l)), l.type === $r && (l.el = o.el);
    }
}
__name(Gl, "Gl");
function rf(t) {
  const e = t.slice(), n = [0];
  let r, s, i, o, l;
  const a = t.length;
  for (r = 0; r < a; r++) {
    const c = t[r];
    if (c !== 0) {
      if (s = n[n.length - 1], t[s] < c) {
        e[r] = s, n.push(r);
        continue;
      }
      for (i = 0, o = n.length - 1; i < o; )
        l = i + o >> 1, t[n[l]] < c ? i = l + 1 : o = l;
      c < t[n[i]] && (i > 0 && (e[r] = n[i - 1]), n[i] = r);
    }
  }
  for (i = n.length, o = n[i - 1]; i-- > 0; )
    n[i] = o, o = e[o];
  return n;
}
__name(rf, "rf");
var sf = /* @__PURE__ */ __name((t) => t.__isTeleport, "sf");
var Qs = /* @__PURE__ */ __name((t) => t && (t.disabled || t.disabled === ""), "Qs");
var n2 = /* @__PURE__ */ __name((t) => typeof SVGElement < "u" && t instanceof SVGElement, "n2");
var Oo = /* @__PURE__ */ __name((t, e) => {
  const n = t && t.to;
  return Ke(n) ? e ? e(n) : null : n;
}, "Oo");
var of = {
  __isTeleport: true,
  process(t, e, n, r, s, i, o, l, a, c) {
    const { mc: u, pc: h, pbc: f, o: { insert: p, querySelector: x, createText: y, createComment: A } } = c, _ = Qs(e.props);
    let { shapeFlag: m, children: C, dynamicChildren: E } = e;
    if (t == null) {
      const P = e.el = y(""), U = e.anchor = y("");
      p(P, n, r), p(U, n, r);
      const j = e.target = Oo(e.props, x), k = e.targetAnchor = y("");
      j && (p(k, j), o = o || n2(j));
      const ae = /* @__PURE__ */ __name((le, he) => {
        m & 16 && u(C, le, he, s, i, o, l, a);
      }, "ae");
      _ ? ae(n, U) : j && ae(j, k);
    } else {
      e.el = t.el;
      const P = e.anchor = t.anchor, U = e.target = t.target, j = e.targetAnchor = t.targetAnchor, k = Qs(t.props), ae = k ? n : U, le = k ? P : j;
      if (o = o || n2(U), E ? (f(t.dynamicChildren, E, ae, s, i, o, l), Gl(t, e, true)) : a || h(t, e, ae, le, s, i, o, l, false), _)
        k || ai(e, n, P, c, 1);
      else if ((e.props && e.props.to) !== (t.props && t.props.to)) {
        const he = e.target = Oo(e.props, x);
        he && ai(e, he, null, c, 0);
      } else
        k && ai(e, U, j, c, 1);
    }
    J3(e);
  },
  remove(t, e, n, r, { um: s, o: { remove: i } }, o) {
    const { shapeFlag: l, children: a, anchor: c, targetAnchor: u, target: h, props: f } = t;
    if (h && i(u), (o || !Qs(f)) && (i(c), l & 16))
      for (let p = 0; p < a.length; p++) {
        const x = a[p];
        s(x, e, n, true, !!x.dynamicChildren);
      }
  },
  move: ai,
  hydrate: lf
};
function ai(t, e, n, { o: { insert: r }, m: s }, i = 2) {
  i === 0 && r(t.targetAnchor, e, n);
  const { el: o, anchor: l, shapeFlag: a, children: c, props: u } = t, h = i === 2;
  if (h && r(o, e, n), (!h || Qs(u)) && a & 16)
    for (let f = 0; f < c.length; f++)
      s(c[f], e, n, 2);
  h && r(l, e, n);
}
__name(ai, "ai");
function lf(t, e, n, r, s, i, { o: { nextSibling: o, parentNode: l, querySelector: a } }, c) {
  const u = e.target = Oo(e.props, a);
  if (u) {
    const h = u._lpa || u.firstChild;
    if (e.shapeFlag & 16)
      if (Qs(e.props))
        e.anchor = c(o(t), e, l(t), n, r, s, i), e.targetAnchor = h;
      else {
        e.anchor = o(t);
        let f = h;
        for (; f; )
          if (f = o(f), f && f.nodeType === 8 && f.data === "teleport anchor") {
            e.targetAnchor = f, u._lpa = e.targetAnchor && o(e.targetAnchor);
            break;
          }
        c(h, e, u, n, r, s, i);
      }
    J3(e);
  }
  return e.anchor && o(e.anchor);
}
__name(lf, "lf");
var Q3 = of;
function J3(t) {
  const e = t.ctx;
  if (e && e.ut) {
    let n = t.children[0].el;
    for (; n !== t.targetAnchor; )
      n.nodeType === 1 && n.setAttribute("data-v-owner", e.uid), n = n.nextSibling;
    e.ut();
  }
}
__name(J3, "J3");
var X1 = /* @__PURE__ */ new Map();
function af(t) {
  if (X1.has(t))
    return X1.get(t);
  let e, n;
  const r = new Promise((o, l) => {
    e = o, n = l;
  }), s = t(e, n);
  let i;
  return Ki(s) ? i = us(() => s) : Se(s) && !Jt(s) && !W(s) ? i = us({
    loader: () => s.component,
    loadingComponent: s.loading,
    errorComponent: s.error,
    delay: s.delay,
    timeout: s.timeout
  }) : s == null ? i = us(() => r) : i = t, X1.set(t, i), i;
}
__name(af, "af");
function cf(t, e) {
  return t.__isBuiltIn ? t : (ue(t) && t.cid && (t = t.options), ue(t) && r1("COMPONENT_ASYNC", e, t) ? af(t) : Se(t) && t.functional && Zn("COMPONENT_FUNCTIONAL", e, t) ? vd(t) : t);
}
__name(cf, "cf");
var Fe = Symbol(void 0);
var $r = Symbol(void 0);
var yt = Symbol(void 0);
var Nr = Symbol(void 0);
var Js = [];
var Dt = null;
function R(t = false) {
  Js.push(Dt = t ? null : []);
}
__name(R, "R");
function e5() {
  Js.pop(), Dt = Js[Js.length - 1] || null;
}
__name(e5, "e5");
var Hr = 1;
function Io(t) {
  Hr += t;
}
__name(Io, "Io");
function t5(t) {
  return t.dynamicChildren = Hr > 0 ? Dt || rs : null, e5(), Hr > 0 && Dt && Dt.push(t), t;
}
__name(t5, "t5");
function q(t, e, n, r, s, i) {
  return t5(S(t, e, n, r, s, i, true));
}
__name(q, "q");
function ke(t, e, n, r, s) {
  return t5(z(t, e, n, r, s, true));
}
__name(ke, "ke");
function Jt(t) {
  return t ? t.__v_isVNode === true : false;
}
__name(Jt, "Jt");
function vn(t, e) {
  return t.type === e.type && t.key === e.key;
}
__name(vn, "vn");
function uf(t) {
}
__name(uf, "uf");
var u1 = "__vInternal";
var n5 = /* @__PURE__ */ __name(({ key: t }) => t != null ? t : null, "n5");
var Ci = /* @__PURE__ */ __name(({ ref: t, ref_key: e, ref_for: n }) => t != null ? Ke(t) || gt(t) || ue(t) ? { i: ut, r: t, k: e, f: !!n } : t : null, "Ci");
function S(t, e = null, n = null, r = 0, s = null, i = t === Fe ? 0 : 1, o = false, l = false) {
  const a = {
    __v_isVNode: true,
    __v_skip: true,
    type: t,
    props: e,
    key: e && n5(e),
    ref: e && Ci(e),
    scopeId: as,
    slotScopeIds: null,
    children: n,
    component: null,
    suspense: null,
    ssContent: null,
    ssFallback: null,
    dirs: null,
    transition: null,
    el: null,
    anchor: null,
    target: null,
    targetAnchor: null,
    staticCount: 0,
    shapeFlag: i,
    patchFlag: r,
    dynamicProps: s,
    dynamicChildren: null,
    appContext: null,
    ctx: ut
  };
  return l ? (d1(a, n), i & 128 && t.normalize(a)) : n && (a.shapeFlag |= Ke(n) ? 8 : 16), Hr > 0 && !o && Dt && (a.patchFlag > 0 || i & 6) && a.patchFlag !== 32 && Dt.push(a), X8(a), I3(a), a;
}
__name(S, "S");
var z = hf;
function hf(t, e = null, n = null, r = 0, s = null, i = false) {
  if ((!t || t === R3) && (t = yt), Jt(t)) {
    const l = an(t, e, true);
    return n && d1(l, n), Hr > 0 && !i && Dt && (l.shapeFlag & 6 ? Dt[Dt.indexOf(t)] = l : Dt.push(l)), l.patchFlag |= -2, l;
  }
  if (xf(t) && (t = t.__vccOpts), t = cf(t, ut), e) {
    e = r5(e);
    let { class: l, style: a } = e;
    l && !Ke(l) && (e.class = we(l)), Se(a) && (El(a) && !W(a) && (a = Oe({}, a)), e.style = Ce(a));
  }
  const o = Ke(t) ? 1 : u3(t) ? 128 : sf(t) ? 64 : Se(t) ? 4 : ue(t) ? 2 : 0;
  return S(t, e, n, r, s, o, i, true);
}
__name(hf, "hf");
function r5(t) {
  return t ? El(t) || u1 in t ? Oe({}, t) : t : null;
}
__name(r5, "r5");
function an(t, e, n = false) {
  const { props: r, ref: s, patchFlag: i, children: o } = t, l = e ? f1(r || {}, e) : r, a = {
    __v_isVNode: true,
    __v_skip: true,
    type: t.type,
    props: l,
    key: l && n5(l),
    ref: e && e.ref ? n && s ? W(s) ? s.concat(Ci(e)) : [s, Ci(e)] : Ci(e) : s,
    scopeId: t.scopeId,
    slotScopeIds: t.slotScopeIds,
    children: o,
    target: t.target,
    targetAnchor: t.targetAnchor,
    staticCount: t.staticCount,
    shapeFlag: t.shapeFlag,
    patchFlag: e && t.type !== Fe ? i === -1 ? 16 : i | 16 : i,
    dynamicProps: t.dynamicProps,
    dynamicChildren: t.dynamicChildren,
    appContext: t.appContext,
    dirs: t.dirs,
    transition: t.transition,
    component: t.component,
    suspense: t.suspense,
    ssContent: t.ssContent && an(t.ssContent),
    ssFallback: t.ssFallback && an(t.ssFallback),
    el: t.el,
    anchor: t.anchor,
    ctx: t.ctx
  };
  return I3(a), a;
}
__name(an, "an");
function dn(t = " ", e = 0) {
  return z($r, null, t, e);
}
__name(dn, "dn");
function h1(t, e) {
  const n = z(Nr, null, t);
  return n.staticCount = e, n;
}
__name(h1, "h1");
function me(t = "", e = false) {
  return e ? (R(), ke(yt, null, t)) : z(yt, null, t);
}
__name(me, "me");
function Wt(t) {
  return t == null || typeof t == "boolean" ? z(yt) : W(t) ? z(
    Fe,
    null,
    t.slice()
  ) : typeof t == "object" ? rr(t) : z($r, null, String(t));
}
__name(Wt, "Wt");
function rr(t) {
  return t.el === null && t.patchFlag !== -1 || t.memo ? t : an(t);
}
__name(rr, "rr");
function d1(t, e) {
  let n = 0;
  const { shapeFlag: r } = t;
  if (e == null)
    e = null;
  else if (W(e))
    n = 16;
  else if (typeof e == "object")
    if (r & 65) {
      const s = e.default;
      s && (s._c && (s._d = false), d1(t, s()), s._c && (s._d = true));
      return;
    } else {
      n = 32;
      const s = e._;
      !s && !(u1 in e) ? e._ctx = ut : s === 3 && ut && (ut.slots._ === 1 ? e._ = 1 : (e._ = 2, t.patchFlag |= 1024));
    }
  else
    ue(e) ? (e = { default: e, _ctx: ut }, n = 32) : (e = String(e), r & 64 ? (n = 16, e = [dn(e)]) : n = 8);
  t.children = e, t.shapeFlag |= n;
}
__name(d1, "d1");
function f1(...t) {
  const e = {};
  for (let n = 0; n < t.length; n++) {
    const r = t[n];
    for (const s in r)
      if (s === "class")
        e.class !== r.class && (e.class = we([e.class, r.class]));
      else if (s === "style")
        e.style = Ce([e.style, r.style]);
      else if (Yn(s)) {
        const i = e[s], o = r[s];
        o && i !== o && !(W(i) && i.includes(o)) && (e[s] = i ? [].concat(i, o) : o);
      } else
        s !== "" && (e[s] = r[s]);
  }
  return e;
}
__name(f1, "f1");
function Nt(t, e, n, r = null) {
  $t(t, e, 7, [
    n,
    r
  ]);
}
__name(Nt, "Nt");
var df = q3();
var ff = 0;
function jl(t, e, n) {
  const r = t.type, s = (e ? e.appContext : t.appContext) || df, i = {
    uid: ff++,
    vnode: t,
    type: r,
    parent: e,
    appContext: s,
    root: null,
    next: null,
    subTree: null,
    effect: null,
    update: null,
    scope: new Cl(true),
    render: null,
    proxy: null,
    exposed: null,
    exposeProxy: null,
    withProxy: null,
    provides: e ? e.provides : Object.create(s.provides),
    accessCache: null,
    renderCache: [],
    components: null,
    directives: null,
    propsOptions: z3(r, s),
    emitsOptions: c3(r, s),
    emit: null,
    emitted: null,
    propsDefaults: ze,
    inheritAttrs: r.inheritAttrs,
    ctx: ze,
    data: ze,
    props: ze,
    attrs: ze,
    slots: ze,
    refs: ze,
    setupState: ze,
    setupContext: null,
    suspense: n,
    suspenseId: n ? n.pendingId : 0,
    asyncDep: null,
    asyncResolved: false,
    isMounted: false,
    isUnmounted: false,
    isDeactivated: false,
    bc: null,
    c: null,
    bm: null,
    m: null,
    bu: null,
    u: null,
    um: null,
    bum: null,
    da: null,
    a: null,
    rtg: null,
    rtc: null,
    ec: null,
    sp: null
  };
  return i.ctx = { _: i }, i.root = e ? e.root : i, i.emit = J8.bind(null, i), t.ce && t.ce(i), i;
}
__name(jl, "jl");
var dt = null;
var Pn = /* @__PURE__ */ __name(() => dt || ut, "Pn");
var gr = /* @__PURE__ */ __name((t) => {
  dt = t, t.scope.on();
}, "gr");
var hr = /* @__PURE__ */ __name(() => {
  dt && dt.scope.off(), dt = null;
}, "hr");
function s5(t) {
  return t.vnode.shapeFlag & 4;
}
__name(s5, "s5");
var xs = false;
function Zl(t, e = false) {
  xs = e;
  const { props: n, children: r } = t.vnode, s = s5(t);
  $d(t, n, s, e), Vd(t, r);
  const i = s ? pf(t, e) : void 0;
  return xs = false, i;
}
__name(Zl, "Zl");
function pf(t, e) {
  const n = t.type;
  t.accessCache = /* @__PURE__ */ Object.create(null), t.proxy = Tl(new Proxy(t.ctx, So));
  const { setup: r } = n;
  if (r) {
    const s = t.setupContext = r.length > 1 ? i5(t) : null;
    gr(t), ws();
    const i = En(r, t, 0, [t.props, s]);
    if (Es(), hr(), Ki(i)) {
      if (i.then(hr, hr), e)
        return i.then((o) => {
          Mo(t, o, e);
        }).catch((o) => {
          zr(o, t, 0);
        });
      t.asyncDep = i;
    } else
      Mo(t, i, e);
  } else
    Wl(t, e);
}
__name(pf, "pf");
function Mo(t, e, n) {
  ue(e) ? t.type.__ssrInlineRender ? t.ssrRender = e : t.render = e : Se(e) && (t.setupState = Rl(e)), Wl(t, n);
}
__name(Mo, "Mo");
var ki;
var No;
function gf(t) {
  ki = t, No = /* @__PURE__ */ __name((e) => {
    e.render._rc && (e.withProxy = new Proxy(e.ctx, Nd));
  }, "No");
}
__name(gf, "gf");
var Po = /* @__PURE__ */ __name(() => !ki, "Po");
function Wl(t, e, n) {
  const r = t.type;
  if (_d(t), !t.render) {
    if (!e && ki && !r.render) {
      const s = t.vnode.props && t.vnode.props["inline-template"] || r.template || O0(t).template;
      if (s) {
        const { isCustomElement: i, compilerOptions: o } = t.appContext.config, { delimiters: l, compilerOptions: a } = r, c = Oe(Oe({
          isCustomElement: i,
          delimiters: l
        }, o), a);
        c.compatConfig = Object.create(Ml), r.compatConfig && Oe(c.compatConfig, r.compatConfig), r.render = ki(s, c);
      }
    }
    t.render = r.render || Bt, No && No(t);
  }
  n || (gr(t), ws(), Pd(t), Es(), hr());
}
__name(Wl, "Wl");
function mf(t) {
  return new Proxy(t.attrs, {
    get(e, n) {
      return Ht(t, "get", "$attrs"), e[n];
    }
  });
}
__name(mf, "mf");
function i5(t) {
  const e = /* @__PURE__ */ __name((r) => {
    t.exposed = r || {};
  }, "e");
  let n;
  return {
    get attrs() {
      return n || (n = mf(t));
    },
    slots: t.slots,
    emit: t.emit,
    expose: e
  };
}
__name(i5, "i5");
function p1(t) {
  if (t.exposed)
    return t.exposeProxy || (t.exposeProxy = new Proxy(Rl(Tl(t.exposed)), {
      get(e, n) {
        if (n in e)
          return e[n];
        if (n in hs)
          return hs[n](t);
      },
      has(e, n) {
        return n in e || n in hs;
      }
    }));
}
__name(p1, "p1");
function Fo(t, e = true) {
  return ue(t) ? t.displayName || t.name : t.name || e && t.__name;
}
__name(Fo, "Fo");
function xf(t) {
  return ue(t) && "__vccOpts" in t;
}
__name(xf, "xf");
var J = /* @__PURE__ */ __name((t, e) => U8(t, e, xs), "J");
function Lf() {
  return null;
}
__name(Lf, "Lf");
function _f() {
  return null;
}
__name(_f, "_f");
function yf(t) {
}
__name(yf, "yf");
function Cf(t, e) {
  return null;
}
__name(Cf, "Cf");
function vf() {
  return o5().slots;
}
__name(vf, "vf");
function bf() {
  return o5().attrs;
}
__name(bf, "bf");
function o5() {
  const t = Pn();
  return t.setupContext || (t.setupContext = i5(t));
}
__name(o5, "o5");
function wf(t, e) {
  const n = W(t) ? t.reduce((r, s) => (r[s] = {}, r), {}) : t;
  for (const r in e) {
    const s = n[r];
    s ? W(s) || ue(s) ? n[r] = { type: s, default: e[r] } : s.default = e[r] : s === null && (n[r] = { default: e[r] });
  }
  return n;
}
__name(wf, "wf");
function Ef(t, e) {
  const n = {};
  for (const r in t)
    e.includes(r) || Object.defineProperty(n, r, {
      enumerable: true,
      get: () => t[r]
    });
  return n;
}
__name(Ef, "Ef");
function Tf(t) {
  const e = Pn();
  let n = t();
  return hr(), Ki(n) && (n = n.catch((r) => {
    throw gr(e), r;
  })), [n, () => gr(e)];
}
__name(Tf, "Tf");
function ct(t, e, n) {
  const r = arguments.length;
  return r === 2 ? Se(e) && !W(e) ? Jt(e) ? z(t, null, [e]) : z(t, e) : z(t, null, e) : (r > 3 ? n = Array.prototype.slice.call(arguments, 2) : r === 3 && Jt(n) && (n = [n]), z(t, e, n));
}
__name(ct, "ct");
var l5 = Symbol("");
var a5 = /* @__PURE__ */ __name(() => lt(l5), "a5");
function Sf() {
}
__name(Sf, "Sf");
function Af(t, e, n, r) {
  const s = n[r];
  if (s && c5(s, t))
    return s;
  const i = e();
  return i.memo = t.slice(), n[r] = i;
}
__name(Af, "Af");
function c5(t, e) {
  const n = t.memo;
  if (n.length != e.length)
    return false;
  for (let r = 0; r < n.length; r++)
    if (gs(n[r], e[r]))
      return false;
  return Hr > 0 && Dt && Dt.push(t), true;
}
__name(c5, "c5");
var u5 = "3.2.45";
var Rf = {
  createComponentInstance: jl,
  setupComponent: Zl,
  renderComponentRoot: yi,
  setCurrentRenderingInstance: g0,
  isVNode: Jt,
  normalizeVNode: Wt
};
var kf = Rf;
var Of = O3;
var If = {
  warnDeprecation: W8,
  createCompatVue: jd,
  isCompatEnabled: Ve,
  checkCompatEnabled: r1,
  softAssertCompatEnabled: Zn
};
var In = If;
var Mf = "http://www.w3.org/2000/svg";
var Tr = typeof document < "u" ? document : null;
var r2 = Tr && /* @__PURE__ */ Tr.createElement("template");
var Nf = {
  insert: (t, e, n) => {
    e.insertBefore(t, n || null);
  },
  remove: (t) => {
    const e = t.parentNode;
    e && e.removeChild(t);
  },
  createElement: (t, e, n, r) => {
    const s = e ? Tr.createElementNS(Mf, t) : Tr.createElement(t, n ? { is: n } : void 0);
    return t === "select" && r && r.multiple != null && s.setAttribute("multiple", r.multiple), s;
  },
  createText: (t) => Tr.createTextNode(t),
  createComment: (t) => Tr.createComment(t),
  setText: (t, e) => {
    t.nodeValue = e;
  },
  setElementText: (t, e) => {
    t.textContent = e;
  },
  parentNode: (t) => t.parentNode,
  nextSibling: (t) => t.nextSibling,
  querySelector: (t) => Tr.querySelector(t),
  setScopeId(t, e) {
    t.setAttribute(e, "");
  },
  insertStaticContent(t, e, n, r, s, i) {
    const o = n ? n.previousSibling : e.lastChild;
    if (s && (s === i || s.nextSibling))
      for (; e.insertBefore(s.cloneNode(true), n), !(s === i || !(s = s.nextSibling)); )
        ;
    else {
      r2.innerHTML = r ? `<svg>${t}</svg>` : t;
      const l = r2.content;
      if (r) {
        const a = l.firstChild;
        for (; a.firstChild; )
          l.appendChild(a.firstChild);
        l.removeChild(a);
      }
      e.insertBefore(l, n);
    }
    return [
      o ? o.nextSibling : e.firstChild,
      n ? n.previousSibling : e.lastChild
    ];
  }
};
function Pf(t, e, n) {
  const r = t._vtc;
  r && (e = (e ? [e, ...r] : [...r]).join(" ")), e == null ? t.removeAttribute("class") : n ? t.setAttribute("class", e) : t.className = e;
}
__name(Pf, "Pf");
function Ff(t, e, n) {
  const r = t.style, s = Ke(n);
  if (n && !s) {
    for (const i in n)
      Do(r, i, n[i]);
    if (e && !Ke(e))
      for (const i in e)
        n[i] == null && Do(r, i, "");
  } else {
    const i = r.display;
    s ? e !== n && (r.cssText = n) : e && t.removeAttribute("style"), "_vod" in t && (r.display = i);
  }
}
__name(Ff, "Ff");
var s2 = /\s*!important$/;
function Do(t, e, n) {
  if (W(n))
    n.forEach((r) => Do(t, e, r));
  else if (n == null && (n = ""), e.startsWith("--"))
    t.setProperty(e, n);
  else {
    const r = Df(t, e);
    s2.test(n) ? t.setProperty(St(r), n.replace(s2, ""), "important") : t[r] = n;
  }
}
__name(Do, "Do");
var i2 = ["Webkit", "Moz", "ms"];
var Q1 = {};
function Df(t, e) {
  const n = Q1[e];
  if (n)
    return n;
  let r = kt(e);
  if (r !== "filter" && r in t)
    return Q1[e] = r;
  r = T0(r);
  for (let s = 0; s < i2.length; s++) {
    const i = i2[s] + r;
    if (i in t)
      return Q1[e] = i;
  }
  return e;
}
__name(Df, "Df");
var o2 = "http://www.w3.org/1999/xlink";
function Bf(t, e, n, r, s) {
  if (r && e.startsWith("xlink:"))
    n == null ? t.removeAttributeNS(o2, e.slice(6, e.length)) : t.setAttributeNS(o2, e, n);
  else {
    if (Hf(t, e, n, s))
      return;
    const i = Pu(e);
    n == null || i && !Fu(n) ? t.removeAttribute(e) : t.setAttribute(e, i ? "" : n);
  }
}
__name(Bf, "Bf");
var $f = /* @__PURE__ */ bs("contenteditable,draggable,spellcheck");
function Hf(t, e, n, r = null) {
  if ($f(e)) {
    const s = n === null ? "false" : typeof n != "boolean" && n !== void 0 ? "true" : null;
    if (s && In.softAssertCompatEnabled("ATTR_ENUMERATED_COERCION", r, e, n, s))
      return t.setAttribute(e, s), true;
  } else if (n === false && !Pu(e) && In.softAssertCompatEnabled("ATTR_FALSE_VALUE", r, e))
    return t.removeAttribute(e), true;
  return false;
}
__name(Hf, "Hf");
function Uf(t, e, n, r, s, i, o) {
  if (e === "innerHTML" || e === "textContent") {
    r && o(r, s, i), t[e] = n == null ? "" : n;
    return;
  }
  if (e === "value" && t.tagName !== "PROGRESS" && !t.tagName.includes("-")) {
    t._value = n;
    const a = n == null ? "" : n;
    (t.value !== a || t.tagName === "OPTION") && (t.value = a), n == null && t.removeAttribute(e);
    return;
  }
  let l = false;
  if (n === "" || n == null) {
    const a = typeof t[e];
    a === "boolean" ? n = Fu(n) : n == null && a === "string" ? (n = "", l = true) : a === "number" && (n = 0, l = true);
  } else if (n === false && In.isCompatEnabled("ATTR_FALSE_VALUE", s)) {
    const a = typeof t[e];
    (a === "string" || a === "number") && (n = a === "number" ? 0 : "", l = true);
  }
  try {
    t[e] = n;
  } catch {
  }
  l && t.removeAttribute(e);
}
__name(Uf, "Uf");
function Hn(t, e, n, r) {
  t.addEventListener(e, n, r);
}
__name(Hn, "Hn");
function Vf(t, e, n, r) {
  t.removeEventListener(e, n, r);
}
__name(Vf, "Vf");
function zf(t, e, n, r, s = null) {
  const i = t._vei || (t._vei = {}), o = i[e];
  if (r && o)
    o.value = r;
  else {
    const [l, a] = Gf(e);
    if (r) {
      const c = i[e] = Wf(r, s);
      Hn(t, l, c, a);
    } else
      o && (Vf(t, l, o, a), i[e] = void 0);
  }
}
__name(zf, "zf");
var l2 = /(?:Once|Passive|Capture)$/;
function Gf(t) {
  let e;
  if (l2.test(t)) {
    e = {};
    let r;
    for (; r = t.match(l2); )
      t = t.slice(0, t.length - r[0].length), e[r[0].toLowerCase()] = true;
  }
  return [t[2] === ":" ? t.slice(3) : St(t.slice(2)), e];
}
__name(Gf, "Gf");
var J1 = 0;
var jf = /* @__PURE__ */ Promise.resolve();
var Zf = /* @__PURE__ */ __name(() => J1 || (jf.then(() => J1 = 0), J1 = Date.now()), "Zf");
function Wf(t, e) {
  const n = /* @__PURE__ */ __name((r) => {
    if (!r._vts)
      r._vts = Date.now();
    else if (r._vts <= n.attached)
      return;
    $t(qf(r, n.value), e, 5, [r]);
  }, "n");
  return n.value = t, n.attached = Zf(), n;
}
__name(Wf, "Wf");
function qf(t, e) {
  if (W(e)) {
    const n = t.stopImmediatePropagation;
    return t.stopImmediatePropagation = () => {
      n.call(t), t._stopped = true;
    }, e.map((r) => (s) => !s._stopped && r && r(s));
  } else
    return e;
}
__name(qf, "qf");
var a2 = /^on[a-z]/;
var Kf = /* @__PURE__ */ __name((t, e, n, r, s = false, i, o, l, a) => {
  e === "class" ? Pf(t, r, s) : e === "style" ? Ff(t, n, r) : Yn(e) ? Ll(e) || zf(t, e, n, r, o) : (e[0] === "." ? (e = e.slice(1), true) : e[0] === "^" ? (e = e.slice(1), false) : Yf(t, e, r, s)) ? Uf(t, e, r, i, o, l, a) : (e === "true-value" ? t._trueValue = r : e === "false-value" && (t._falseValue = r), Bf(t, e, r, s, o));
}, "Kf");
function Yf(t, e, n, r) {
  return r ? !!(e === "innerHTML" || e === "textContent" || e in t && a2.test(e) && ue(n)) : e === "spellcheck" || e === "draggable" || e === "translate" || e === "form" || e === "list" && t.tagName === "INPUT" || e === "type" && t.tagName === "TEXTAREA" || a2.test(e) && Ke(n) ? false : e in t;
}
__name(Yf, "Yf");
function h5(t, e) {
  const n = Ye(t);
  class r extends g1 {
    static {
      __name(this, "r");
    }
    constructor(i) {
      super(n, i, e);
    }
  }
  return r.def = n, r;
}
__name(h5, "h5");
var Xf = /* @__PURE__ */ __name((t) => h5(t, T5), "Xf");
var Qf = typeof HTMLElement < "u" ? HTMLElement : class {
};
var g1 = class _g1 extends Qf {
  static {
    __name(this, "g1");
  }
  constructor(e, n = {}, r) {
    super(), this._def = e, this._props = n, this._instance = null, this._connected = false, this._resolved = false, this._numberProps = null, this.shadowRoot && r ? r(this._createVNode(), this.shadowRoot) : (this.attachShadow({ mode: "open" }), this._def.__asyncLoader || this._resolveProps(this._def));
  }
  connectedCallback() {
    this._connected = true, this._instance || (this._resolved ? this._update() : this._resolveDef());
  }
  disconnectedCallback() {
    this._connected = false, Ts(() => {
      this._connected || (Ho(null, this.shadowRoot), this._instance = null);
    });
  }
  _resolveDef() {
    this._resolved = true;
    for (let r = 0; r < this.attributes.length; r++)
      this._setAttr(this.attributes[r].name);
    new MutationObserver((r) => {
      for (const s of r)
        this._setAttr(s.attributeName);
    }).observe(this, { attributes: true });
    const e = /* @__PURE__ */ __name((r, s = false) => {
      const { props: i, styles: o } = r;
      let l;
      if (i && !W(i))
        for (const a in i) {
          const c = i[a];
          (c === Number || c && c.type === Number) && (a in this._props && (this._props[a] = An(this._props[a])), (l || (l = /* @__PURE__ */ Object.create(null)))[kt(a)] = true);
        }
      this._numberProps = l, s && this._resolveProps(r), this._applyStyles(o), this._update();
    }, "e"), n = this._def.__asyncLoader;
    n ? n().then((r) => e(r, true)) : e(this._def);
  }
  _resolveProps(e) {
    const { props: n } = e, r = W(n) ? n : Object.keys(n || {});
    for (const s of Object.keys(this))
      s[0] !== "_" && r.includes(s) && this._setProp(s, this[s], true, false);
    for (const s of r.map(kt))
      Object.defineProperty(this, s, {
        get() {
          return this._getProp(s);
        },
        set(i) {
          this._setProp(s, i);
        }
      });
  }
  _setAttr(e) {
    let n = this.getAttribute(e);
    const r = kt(e);
    this._numberProps && this._numberProps[r] && (n = An(n)), this._setProp(r, n, false);
  }
  _getProp(e) {
    return this._props[e];
  }
  _setProp(e, n, r = true, s = true) {
    n !== this._props[e] && (this._props[e] = n, s && this._instance && this._update(), r && (n === true ? this.setAttribute(St(e), "") : typeof n == "string" || typeof n == "number" ? this.setAttribute(St(e), n + "") : n || this.removeAttribute(St(e))));
  }
  _update() {
    Ho(this._createVNode(), this.shadowRoot);
  }
  _createVNode() {
    const e = z(this._def, Oe({}, this._props));
    return this._instance || (e.ce = (n) => {
      this._instance = n, n.isCE = true;
      const r = /* @__PURE__ */ __name((i, o) => {
        this.dispatchEvent(new CustomEvent(i, {
          detail: o
        }));
      }, "r");
      n.emit = (i, ...o) => {
        r(i, o), St(i) !== i && r(St(i), o);
      };
      let s = this;
      for (; s = s && (s.parentNode || s.host); )
        if (s instanceof _g1) {
          n.parent = s._instance, n.provides = s._instance.provides;
          break;
        }
    }), e;
  }
  _applyStyles(e) {
    e && e.forEach((n) => {
      const r = document.createElement("style");
      r.textContent = n, this.shadowRoot.appendChild(r);
    });
  }
};
function Jf(t = "$style") {
  {
    const e = Pn();
    if (!e)
      return ze;
    const n = e.type.__cssModules;
    if (!n)
      return ze;
    const r = n[t];
    return r || ze;
  }
}
__name(Jf, "Jf");
function e9(t) {
  const e = Pn();
  if (!e)
    return;
  const n = e.ut = (s = t(e.proxy)) => {
    Array.from(document.querySelectorAll(`[data-v-owner="${e.uid}"]`)).forEach((i) => $o(i, s));
  }, r = /* @__PURE__ */ __name(() => {
    const s = t(e.proxy);
    Bo(e.subTree, s), n(s);
  }, "r");
  d3(r), We(() => {
    const s = new MutationObserver(r);
    s.observe(e.subTree.el.parentNode, { childList: true }), ht(() => s.disconnect());
  });
}
__name(e9, "e9");
function Bo(t, e) {
  if (t.shapeFlag & 128) {
    const n = t.suspense;
    t = n.activeBranch, n.pendingBranch && !n.isHydrating && n.effects.push(() => {
      Bo(n.activeBranch, e);
    });
  }
  for (; t.component; )
    t = t.component.subTree;
  if (t.shapeFlag & 1 && t.el)
    $o(t.el, e);
  else if (t.type === Fe)
    t.children.forEach((n) => Bo(n, e));
  else if (t.type === Nr) {
    let { el: n, anchor: r } = t;
    for (; n && ($o(n, e), n !== r); )
      n = n.nextSibling;
  }
}
__name(Bo, "Bo");
function $o(t, e) {
  if (t.nodeType === 1) {
    const n = t.style;
    for (const r in e)
      n.setProperty(`--${r}`, e[r]);
  }
}
__name($o, "$o");
var tr = "transition";
var Hs = "animation";
var I0 = /* @__PURE__ */ __name((t, { slots: e }) => ct(Hl, f5(t), e), "I0");
I0.displayName = "Transition";
I0.__isBuiltIn = true;
var d5 = {
  name: String,
  type: String,
  css: {
    type: Boolean,
    default: true
  },
  duration: [String, Number, Object],
  enterFromClass: String,
  enterActiveClass: String,
  enterToClass: String,
  appearFromClass: String,
  appearActiveClass: String,
  appearToClass: String,
  leaveFromClass: String,
  leaveActiveClass: String,
  leaveToClass: String
};
var t9 = I0.props = /* @__PURE__ */ Oe({}, Hl.props, d5);
var Cr = /* @__PURE__ */ __name((t, e = []) => {
  W(t) ? t.forEach((n) => n(...e)) : t && t(...e);
}, "Cr");
var c2 = /* @__PURE__ */ __name((t) => t ? W(t) ? t.some((e) => e.length > 1) : t.length > 1 : false, "c2");
function f5(t) {
  const e = {};
  for (const D in t)
    D in d5 || (e[D] = t[D]);
  if (t.css === false)
    return e;
  const { name: n = "v", type: r, duration: s, enterFromClass: i = `${n}-enter-from`, enterActiveClass: o = `${n}-enter-active`, enterToClass: l = `${n}-enter-to`, appearFromClass: a = i, appearActiveClass: c = o, appearToClass: u = l, leaveFromClass: h = `${n}-leave-from`, leaveActiveClass: f = `${n}-leave-active`, leaveToClass: p = `${n}-leave-to` } = t, x = In.isCompatEnabled("TRANSITION_CLASSES", null);
  let y, A, _;
  if (x) {
    const D = /* @__PURE__ */ __name((Y) => Y.replace(/-from$/, ""), "D");
    t.enterFromClass || (y = D(i)), t.appearFromClass || (A = D(a)), t.leaveFromClass || (_ = D(h));
  }
  const m = n9(s), C = m && m[0], E = m && m[1], { onBeforeEnter: P, onEnter: U, onEnterCancelled: j, onLeave: k, onLeaveCancelled: ae, onBeforeAppear: le = P, onAppear: he = U, onAppearCancelled: Ue = j } = e, xe = /* @__PURE__ */ __name((D, Y, de) => {
    Ln(D, Y ? u : l), Ln(D, Y ? c : o), de && de();
  }, "xe"), re = /* @__PURE__ */ __name((D, Y) => {
    D._isLeaving = false, Ln(D, h), Ln(D, p), Ln(D, f), Y && Y();
  }, "re"), Ne = /* @__PURE__ */ __name((D) => (Y, de) => {
    const Xe = D ? he : U, Qe = /* @__PURE__ */ __name(() => xe(Y, D, de), "Qe");
    Cr(Xe, [Y, Qe]), u2(() => {
      Ln(Y, D ? a : i), x && Ln(Y, D ? A : y), on(Y, D ? u : l), c2(Xe) || h2(Y, r, C, Qe);
    });
  }, "Ne");
  return Oe(e, {
    onBeforeEnter(D) {
      Cr(P, [D]), on(D, i), x && on(D, y), on(D, o);
    },
    onBeforeAppear(D) {
      Cr(le, [D]), on(D, a), x && on(D, A), on(D, c);
    },
    onEnter: Ne(false),
    onAppear: Ne(true),
    onLeave(D, Y) {
      D._isLeaving = true;
      const de = /* @__PURE__ */ __name(() => re(D, Y), "de");
      on(D, h), x && on(D, _), g5(), on(D, f), u2(() => {
        !D._isLeaving || (Ln(D, h), x && Ln(D, _), on(D, p), c2(k) || h2(D, r, E, de));
      }), Cr(k, [D, de]);
    },
    onEnterCancelled(D) {
      xe(D, false), Cr(j, [D]);
    },
    onAppearCancelled(D) {
      xe(D, true), Cr(Ue, [D]);
    },
    onLeaveCancelled(D) {
      re(D), Cr(ae, [D]);
    }
  });
}
__name(f5, "f5");
function n9(t) {
  if (t == null)
    return null;
  if (Se(t))
    return [eo(t.enter), eo(t.leave)];
  {
    const e = eo(t);
    return [e, e];
  }
}
__name(n9, "n9");
function eo(t) {
  return An(t);
}
__name(eo, "eo");
function on(t, e) {
  e.split(/\s+/).forEach((n) => n && t.classList.add(n)), (t._vtc || (t._vtc = /* @__PURE__ */ new Set())).add(e);
}
__name(on, "on");
function Ln(t, e) {
  e.split(/\s+/).forEach((r) => r && t.classList.remove(r));
  const { _vtc: n } = t;
  n && (n.delete(e), n.size || (t._vtc = void 0));
}
__name(Ln, "Ln");
function u2(t) {
  requestAnimationFrame(() => {
    requestAnimationFrame(t);
  });
}
__name(u2, "u2");
var r9 = 0;
function h2(t, e, n, r) {
  const s = t._endId = ++r9, i = /* @__PURE__ */ __name(() => {
    s === t._endId && r();
  }, "i");
  if (n)
    return setTimeout(i, n);
  const { type: o, timeout: l, propCount: a } = p5(t, e);
  if (!o)
    return r();
  const c = o + "end";
  let u = 0;
  const h = /* @__PURE__ */ __name(() => {
    t.removeEventListener(c, f), i();
  }, "h"), f = /* @__PURE__ */ __name((p) => {
    p.target === t && ++u >= a && h();
  }, "f");
  setTimeout(() => {
    u < a && h();
  }, l + 1), t.addEventListener(c, f);
}
__name(h2, "h2");
function p5(t, e) {
  const n = window.getComputedStyle(t), r = /* @__PURE__ */ __name((x) => (n[x] || "").split(", "), "r"), s = r(`${tr}Delay`), i = r(`${tr}Duration`), o = d2(s, i), l = r(`${Hs}Delay`), a = r(`${Hs}Duration`), c = d2(l, a);
  let u = null, h = 0, f = 0;
  e === tr ? o > 0 && (u = tr, h = o, f = i.length) : e === Hs ? c > 0 && (u = Hs, h = c, f = a.length) : (h = Math.max(o, c), u = h > 0 ? o > c ? tr : Hs : null, f = u ? u === tr ? i.length : a.length : 0);
  const p = u === tr && /\b(transform|all)(,|$)/.test(r(`${tr}Property`).toString());
  return {
    type: u,
    timeout: h,
    propCount: f,
    hasTransform: p
  };
}
__name(p5, "p5");
function d2(t, e) {
  for (; t.length < e.length; )
    t = t.concat(t);
  return Math.max(...e.map((n, r) => f2(n) + f2(t[r])));
}
__name(d2, "d2");
function f2(t) {
  return Number(t.slice(0, -1).replace(",", ".")) * 1e3;
}
__name(f2, "f2");
function g5() {
  return document.body.offsetHeight;
}
__name(g5, "g5");
var m5 = /* @__PURE__ */ new WeakMap();
var x5 = /* @__PURE__ */ new WeakMap();
var L5 = {
  name: "TransitionGroup",
  props: /* @__PURE__ */ Oe({}, t9, {
    tag: String,
    moveClass: String
  }),
  setup(t, { slots: e }) {
    const n = Pn(), r = $l();
    let s, i;
    return k0(() => {
      if (!s.length)
        return;
      const o = t.moveClass || `${t.name || "v"}-move`;
      if (!l9(s[0].el, n.vnode.el, o))
        return;
      s.forEach(s9), s.forEach(i9);
      const l = s.filter(o9);
      g5(), l.forEach((a) => {
        const c = a.el, u = c.style;
        on(c, o), u.transform = u.webkitTransform = u.transitionDuration = "";
        const h = c._moveCb = (f) => {
          f && f.target !== c || (!f || /transform$/.test(f.propertyName)) && (c.removeEventListener("transitionend", h), c._moveCb = null, Ln(c, o));
        };
        c.addEventListener("transitionend", h);
      });
    }), () => {
      const o = be(t), l = f5(o);
      let a = o.tag || Fe;
      !o.tag && In.checkCompatEnabled("TRANSITION_GROUP_ROOT", n.parent) && (a = "span"), s = i, i = e.default ? o1(e.default()) : [];
      for (let c = 0; c < i.length; c++) {
        const u = i[c];
        u.key != null && Br(u, ms(u, l, r, n));
      }
      if (s)
        for (let c = 0; c < s.length; c++) {
          const u = s[c];
          Br(u, ms(u, l, r, n)), m5.set(u, u.el.getBoundingClientRect());
        }
      return z(a, null, i);
    };
  }
};
L5.__isBuiltIn = true;
var _5 = L5;
function s9(t) {
  const e = t.el;
  e._moveCb && e._moveCb(), e._enterCb && e._enterCb();
}
__name(s9, "s9");
function i9(t) {
  x5.set(t, t.el.getBoundingClientRect());
}
__name(i9, "i9");
function o9(t) {
  const e = m5.get(t), n = x5.get(t), r = e.left - n.left, s = e.top - n.top;
  if (r || s) {
    const i = t.el.style;
    return i.transform = i.webkitTransform = `translate(${r}px,${s}px)`, i.transitionDuration = "0s", t;
  }
}
__name(o9, "o9");
function l9(t, e, n) {
  const r = t.cloneNode();
  t._vtc && t._vtc.forEach((o) => {
    o.split(/\s+/).forEach((l) => l && r.classList.remove(l));
  }), n.split(/\s+/).forEach((o) => o && r.classList.add(o)), r.style.display = "none";
  const s = e.nodeType === 1 ? e : e.parentNode;
  s.appendChild(r);
  const { hasTransform: i } = p5(r);
  return s.removeChild(r), i;
}
__name(l9, "l9");
var mr = /* @__PURE__ */ __name((t) => {
  const e = t.props["onUpdate:modelValue"] || t.props["onModelCompat:input"];
  return W(e) ? (n) => cr(e, n) : e;
}, "mr");
function a9(t) {
  t.target.composing = true;
}
__name(a9, "a9");
function p2(t) {
  const e = t.target;
  e.composing && (e.composing = false, e.dispatchEvent(new Event("input")));
}
__name(p2, "p2");
var Oi = {
  created(t, { modifiers: { lazy: e, trim: n, number: r } }, s) {
    t._assign = mr(s);
    const i = r || s.props && s.props.type === "number";
    Hn(t, e ? "change" : "input", (o) => {
      if (o.target.composing)
        return;
      let l = t.value;
      n && (l = l.trim()), i && (l = An(l)), t._assign(l);
    }), n && Hn(t, "change", () => {
      t.value = t.value.trim();
    }), e || (Hn(t, "compositionstart", a9), Hn(t, "compositionend", p2), Hn(t, "change", p2));
  },
  mounted(t, { value: e }) {
    t.value = e == null ? "" : e;
  },
  beforeUpdate(t, { value: e, modifiers: { lazy: n, trim: r, number: s } }, i) {
    if (t._assign = mr(i), t.composing || document.activeElement === t && t.type !== "range" && (n || r && t.value.trim() === e || (s || t.type === "number") && An(t.value) === e))
      return;
    const o = e == null ? "" : e;
    t.value !== o && (t.value = o);
  }
};
var ql = {
  deep: true,
  created(t, e, n) {
    t._assign = mr(n), Hn(t, "change", () => {
      const r = t._modelValue, s = Ls(t), i = t.checked, o = t._assign;
      if (W(r)) {
        const l = w0(r, s), a = l !== -1;
        if (i && !a)
          o(r.concat(s));
        else if (!i && a) {
          const c = [...r];
          c.splice(l, 1), o(c);
        }
      } else if (Vr(r)) {
        const l = new Set(r);
        i ? l.add(s) : l.delete(s), o(l);
      } else
        o(C5(t, i));
    });
  },
  mounted: g2,
  beforeUpdate(t, e, n) {
    t._assign = mr(n), g2(t, e, n);
  }
};
function g2(t, { value: e, oldValue: n }, r) {
  t._modelValue = e, W(e) ? t.checked = w0(e, r.props.value) > -1 : Vr(e) ? t.checked = e.has(r.props.value) : e !== n && (t.checked = jn(e, C5(t, true)));
}
__name(g2, "g2");
var Kl = {
  created(t, { value: e }, n) {
    t.checked = jn(e, n.props.value), t._assign = mr(n), Hn(t, "change", () => {
      t._assign(Ls(t));
    });
  },
  beforeUpdate(t, { value: e, oldValue: n }, r) {
    t._assign = mr(r), e !== n && (t.checked = jn(e, r.props.value));
  }
};
var y5 = {
  deep: true,
  created(t, { value: e, modifiers: { number: n } }, r) {
    const s = Vr(e);
    Hn(t, "change", () => {
      const i = Array.prototype.filter.call(t.options, (o) => o.selected).map((o) => n ? An(Ls(o)) : Ls(o));
      t._assign(t.multiple ? s ? new Set(i) : i : i[0]);
    }), t._assign = mr(r);
  },
  mounted(t, { value: e }) {
    m2(t, e);
  },
  beforeUpdate(t, e, n) {
    t._assign = mr(n);
  },
  updated(t, { value: e }) {
    m2(t, e);
  }
};
function m2(t, e) {
  const n = t.multiple;
  if (!(n && !W(e) && !Vr(e))) {
    for (let r = 0, s = t.options.length; r < s; r++) {
      const i = t.options[r], o = Ls(i);
      if (n)
        W(e) ? i.selected = w0(e, o) > -1 : i.selected = e.has(o);
      else if (jn(Ls(i), e)) {
        t.selectedIndex !== r && (t.selectedIndex = r);
        return;
      }
    }
    !n && t.selectedIndex !== -1 && (t.selectedIndex = -1);
  }
}
__name(m2, "m2");
function Ls(t) {
  return "_value" in t ? t._value : t.value;
}
__name(Ls, "Ls");
function C5(t, e) {
  const n = e ? "_trueValue" : "_falseValue";
  return n in t ? t[n] : e;
}
__name(C5, "C5");
var Yl = {
  created(t, e, n) {
    ci(t, e, n, null, "created");
  },
  mounted(t, e, n) {
    ci(t, e, n, null, "mounted");
  },
  beforeUpdate(t, e, n, r) {
    ci(t, e, n, r, "beforeUpdate");
  },
  updated(t, e, n, r) {
    ci(t, e, n, r, "updated");
  }
};
function v5(t, e) {
  switch (t) {
    case "SELECT":
      return y5;
    case "TEXTAREA":
      return Oi;
    default:
      switch (e) {
        case "checkbox":
          return ql;
        case "radio":
          return Kl;
        default:
          return Oi;
      }
  }
}
__name(v5, "v5");
function ci(t, e, n, r, s) {
  const o = v5(t.tagName, n.props && n.props.type)[s];
  o && o(t, e, n, r);
}
__name(ci, "ci");
function c9() {
  Oi.getSSRProps = ({ value: t }) => ({ value: t }), Kl.getSSRProps = ({ value: t }, e) => {
    if (e.props && jn(e.props.value, t))
      return { checked: true };
  }, ql.getSSRProps = ({ value: t }, e) => {
    if (W(t)) {
      if (e.props && w0(t, e.props.value) > -1)
        return { checked: true };
    } else if (Vr(t)) {
      if (e.props && t.has(e.props.value))
        return { checked: true };
    } else if (t)
      return { checked: true };
  }, Yl.getSSRProps = (t, e) => {
    if (typeof e.type != "string")
      return;
    const n = v5(
      e.type.toUpperCase(),
      e.props && e.props.type
    );
    if (n.getSSRProps)
      return n.getSSRProps(t, e);
  };
}
__name(c9, "c9");
var u9 = ["ctrl", "shift", "alt", "meta"];
var h9 = {
  stop: (t) => t.stopPropagation(),
  prevent: (t) => t.preventDefault(),
  self: (t) => t.target !== t.currentTarget,
  ctrl: (t) => !t.ctrlKey,
  shift: (t) => !t.shiftKey,
  alt: (t) => !t.altKey,
  meta: (t) => !t.metaKey,
  left: (t) => "button" in t && t.button !== 0,
  middle: (t) => "button" in t && t.button !== 1,
  right: (t) => "button" in t && t.button !== 2,
  exact: (t, e) => u9.some((n) => t[`${n}Key`] && !e.includes(n))
};
var M0 = /* @__PURE__ */ __name((t, e) => (n, ...r) => {
  for (let s = 0; s < e.length; s++) {
    const i = h9[e[s]];
    if (i && i(n, e))
      return;
  }
  return t(n, ...r);
}, "M0");
var d9 = {
  esc: "escape",
  space: " ",
  up: "arrow-up",
  left: "arrow-left",
  right: "arrow-right",
  down: "arrow-down",
  delete: "backspace"
};
var f9 = /* @__PURE__ */ __name((t, e) => {
  let n, r = null;
  return r = Pn(), In.isCompatEnabled("CONFIG_KEY_CODES", r) && r && (n = r.appContext.config.keyCodes), (s) => {
    if (!("key" in s))
      return;
    const i = St(s.key);
    if (e.some((o) => o === i || d9[o] === i))
      return t(s);
    {
      const o = String(s.keyCode);
      if (In.isCompatEnabled("V_ON_KEYCODE_MODIFIER", r) && e.some((l) => l == o))
        return t(s);
      if (n)
        for (const l of e) {
          const a = n[l];
          if (a && (W(a) ? a.some((u) => String(u) === o) : String(a) === o))
            return t(s);
        }
    }
  };
}, "f9");
var N0 = {
  beforeMount(t, { value: e }, { transition: n }) {
    t._vod = t.style.display === "none" ? "" : t.style.display, n && e ? n.beforeEnter(t) : Us(t, e);
  },
  mounted(t, { value: e }, { transition: n }) {
    n && e && n.enter(t);
  },
  updated(t, { value: e, oldValue: n }, { transition: r }) {
    !e != !n && (r ? e ? (r.beforeEnter(t), Us(t, true), r.enter(t)) : r.leave(t, () => {
      Us(t, false);
    }) : Us(t, e));
  },
  beforeUnmount(t, { value: e }) {
    Us(t, e);
  }
};
function Us(t, e) {
  t.style.display = e ? t._vod : "none";
}
__name(Us, "Us");
function p9() {
  N0.getSSRProps = ({ value: t }) => {
    if (!t)
      return { style: { display: "none" } };
  };
}
__name(p9, "p9");
var b5 = /* @__PURE__ */ Oe({ patchProp: Kf }, Nf);
var e0;
var x2 = false;
function w5() {
  return e0 || (e0 = K3(b5));
}
__name(w5, "w5");
function E5() {
  return e0 = x2 ? e0 : Y3(b5), x2 = true, e0;
}
__name(E5, "E5");
var Ho = /* @__PURE__ */ __name((...t) => {
  w5().render(...t);
}, "Ho");
var T5 = /* @__PURE__ */ __name((...t) => {
  E5().hydrate(...t);
}, "T5");
var P0 = /* @__PURE__ */ __name((...t) => {
  const e = w5().createApp(...t), { mount: n } = e;
  return e.mount = (r) => {
    const s = S5(r);
    if (!s)
      return;
    const i = e._component;
    !ue(i) && !i.render && !i.template && (i.template = s.innerHTML), s.innerHTML = "";
    const o = n(s, false, s instanceof SVGElement);
    return s instanceof Element && (s.removeAttribute("v-cloak"), s.setAttribute("data-v-app", "")), o;
  }, e;
}, "P0");
var g9 = /* @__PURE__ */ __name((...t) => {
  const e = E5().createApp(...t), { mount: n } = e;
  return e.mount = (r) => {
    const s = S5(r);
    if (s)
      return n(s, true, s instanceof SVGElement);
  }, e;
}, "g9");
function S5(t) {
  return Ke(t) ? document.querySelector(t) : t;
}
__name(S5, "S5");
var L2 = false;
var m9 = /* @__PURE__ */ __name(() => {
  L2 || (L2 = true, c9(), p9());
}, "m9");
var x9 = /* @__PURE__ */ Object.freeze({
  __proto__: null,
  render: Ho,
  hydrate: T5,
  createApp: P0,
  createSSRApp: g9,
  initDirectivesForSSR: m9,
  defineCustomElement: h5,
  defineSSRCustomElement: Xf,
  VueElement: g1,
  useCssModule: Jf,
  useCssVars: e9,
  Transition: I0,
  TransitionGroup: _5,
  vModelText: Oi,
  vModelCheckbox: ql,
  vModelRadio: Kl,
  vModelSelect: y5,
  vModelDynamic: Yl,
  withModifiers: M0,
  withKeys: f9,
  vShow: N0,
  reactive: kn,
  ref: ge,
  readonly: wl,
  unref: Le,
  proxyRefs: Rl,
  isRef: gt,
  toRef: n3,
  toRefs: kl,
  isProxy: El,
  isReactive: Un,
  isReadonly: Dr,
  isShallow: h0,
  customRef: B8,
  triggerRef: P8,
  shallowRef: e3,
  shallowReactive: Ju,
  shallowReadonly: M8,
  markRaw: Tl,
  toRaw: be,
  effect: l8,
  stop: a8,
  ReactiveEffect: S0,
  effectScope: $u,
  EffectScope: Cl,
  getCurrentScope: r8,
  onScopeDispose: s8,
  computed: J,
  watch: Yt,
  watchEffect: Qt,
  watchPostEffect: d3,
  watchSyncEffect: hd,
  onBeforeMount: C3,
  onMounted: We,
  onBeforeUpdate: v3,
  onUpdated: k0,
  onBeforeUnmount: x0,
  onUnmounted: ht,
  onActivated: L3,
  onDeactivated: _3,
  onRenderTracked: E3,
  onRenderTriggered: w3,
  onErrorCaptured: T3,
  onServerPrefetch: b3,
  provide: Ut,
  inject: lt,
  nextTick: Ts,
  defineComponent: Ye,
  defineAsyncComponent: us,
  useAttrs: bf,
  useSlots: vf,
  defineProps: Lf,
  defineEmits: _f,
  defineExpose: yf,
  withDefaults: Cf,
  mergeDefaults: wf,
  createPropsRestProxy: Ef,
  withAsyncContext: Tf,
  getCurrentInstance: Pn,
  h: ct,
  createVNode: z,
  cloneVNode: an,
  mergeProps: f1,
  isVNode: Jt,
  Fragment: Fe,
  Text: $r,
  Comment: yt,
  Static: Nr,
  Teleport: Q3,
  Suspense: od,
  KeepAlive: x3,
  BaseTransition: Hl,
  withDirectives: a1,
  useSSRContext: a5,
  ssrContextKey: l5,
  createRenderer: K3,
  createHydrationRenderer: Y3,
  queuePostFlushCb: Il,
  warn: V8,
  handleError: zr,
  callWithErrorHandling: En,
  callWithAsyncErrorHandling: $t,
  resolveComponent: _e,
  resolveDirective: k3,
  resolveDynamicComponent: Rs,
  registerRuntimeCompiler: gf,
  isRuntimeOnly: Po,
  useTransitionState: $l,
  resolveTransitionHooks: ms,
  setTransitionHooks: Br,
  getTransitionRawChildren: o1,
  initCustomFormatter: Sf,
  get devtools() {
    return ts;
  },
  setDevtoolsHook: l3,
  withCtx: jt,
  pushScopeId: Ss,
  popScopeId: As,
  withScopeId: ed,
  renderList: On,
  toHandlers: F3,
  renderSlot: Vl,
  createSlots: N3,
  withMemo: Af,
  isMemoSame: c5,
  openBlock: R,
  createBlock: ke,
  setBlockTracking: Io,
  createTextVNode: dn,
  createCommentVNode: me,
  createStaticVNode: h1,
  createElementVNode: S,
  createElementBlock: q,
  guardReactiveProps: r5,
  toDisplayString: He,
  camelize: kt,
  capitalize: T0,
  toHandlerKey: os,
  normalizeProps: W6,
  normalizeClass: we,
  normalizeStyle: Ce,
  transformVNodeArgs: uf,
  version: u5,
  ssrUtils: kf,
  resolveFilter: Of,
  compatUtils: In
});
function L9(...t) {
  const e = P0(...t);
  return In.isCompatEnabled("RENDER_FUNCTION", null) && (e.component("__compat__transition", I0), e.component("__compat__transition-group", _5), e.component("__compat__keep-alive", x3), e._context.directives.show = N0, e._context.directives.model = Yl), e;
}
__name(L9, "L9");
function _9() {
  const t = In.createCompatVue(P0, L9);
  return Oe(t, x9), t;
}
__name(_9, "_9");
var A5 = _9();
A5.compile = () => {
};
function y9() {
  return R5().__VUE_DEVTOOLS_GLOBAL_HOOK__;
}
__name(y9, "y9");
function R5() {
  return typeof navigator < "u" && typeof window < "u" ? window : typeof global < "u" ? global : {};
}
__name(R5, "R5");
var C9 = typeof Proxy == "function";
var v9 = "devtools-plugin:setup";
var b9 = "plugin:settings:set";
var Xr;
var Uo;
function w9() {
  var t;
  return Xr !== void 0 || (typeof window < "u" && window.performance ? (Xr = true, Uo = window.performance) : typeof global < "u" && ((t = global.perf_hooks) === null || t === void 0 ? void 0 : t.performance) ? (Xr = true, Uo = global.perf_hooks.performance) : Xr = false), Xr;
}
__name(w9, "w9");
function E9() {
  return w9() ? Uo.now() : Date.now();
}
__name(E9, "E9");
var T9 = class {
  static {
    __name(this, "T9");
  }
  constructor(e, n) {
    this.target = null, this.targetQueue = [], this.onQueue = [], this.plugin = e, this.hook = n;
    const r = {};
    if (e.settings)
      for (const o in e.settings) {
        const l = e.settings[o];
        r[o] = l.defaultValue;
      }
    const s = `__vue-devtools-plugin-settings__${e.id}`;
    let i = Object.assign({}, r);
    try {
      const o = localStorage.getItem(s), l = JSON.parse(o);
      Object.assign(i, l);
    } catch {
    }
    this.fallbacks = {
      getSettings() {
        return i;
      },
      setSettings(o) {
        try {
          localStorage.setItem(s, JSON.stringify(o));
        } catch {
        }
        i = o;
      },
      now() {
        return E9();
      }
    }, n && n.on(b9, (o, l) => {
      o === this.plugin.id && this.fallbacks.setSettings(l);
    }), this.proxiedOn = new Proxy({}, {
      get: (o, l) => this.target ? this.target.on[l] : (...a) => {
        this.onQueue.push({
          method: l,
          args: a
        });
      }
    }), this.proxiedTarget = new Proxy({}, {
      get: (o, l) => this.target ? this.target[l] : l === "on" ? this.proxiedOn : Object.keys(this.fallbacks).includes(l) ? (...a) => (this.targetQueue.push({
        method: l,
        args: a,
        resolve: () => {
        }
      }), this.fallbacks[l](...a)) : (...a) => new Promise((c) => {
        this.targetQueue.push({
          method: l,
          args: a,
          resolve: c
        });
      })
    });
  }
  async setRealTarget(e) {
    this.target = e;
    for (const n of this.onQueue)
      this.target.on[n.method](...n.args);
    for (const n of this.targetQueue)
      n.resolve(await this.target[n.method](...n.args));
  }
};
function S9(t, e) {
  const n = t, r = R5(), s = y9(), i = C9 && n.enableEarlyProxy;
  if (s && (r.__VUE_DEVTOOLS_PLUGIN_API_AVAILABLE__ || !i))
    s.emit(v9, t, e);
  else {
    const o = i ? new T9(n, s) : null;
    (r.__VUE_DEVTOOLS_PLUGINS__ = r.__VUE_DEVTOOLS_PLUGINS__ || []).push({
      pluginDescriptor: n,
      setupFn: e,
      proxy: o
    }), o && e(o.proxiedTarget);
  }
}
__name(S9, "S9");
var k5 = "store";
function Gr(t) {
  return t === void 0 && (t = null), lt(t !== null ? t : k5);
}
__name(Gr, "Gr");
function ks(t, e) {
  Object.keys(t).forEach(function(n) {
    return e(t[n], n);
  });
}
__name(ks, "ks");
function O5(t) {
  return t !== null && typeof t == "object";
}
__name(O5, "O5");
function A9(t) {
  return t && typeof t.then == "function";
}
__name(A9, "A9");
function R9(t, e) {
  return function() {
    return t(e);
  };
}
__name(R9, "R9");
function I5(t, e, n) {
  return e.indexOf(t) < 0 && (n && n.prepend ? e.unshift(t) : e.push(t)), function() {
    var r = e.indexOf(t);
    r > -1 && e.splice(r, 1);
  };
}
__name(I5, "I5");
function M5(t, e) {
  t._actions = /* @__PURE__ */ Object.create(null), t._mutations = /* @__PURE__ */ Object.create(null), t._wrappedGetters = /* @__PURE__ */ Object.create(null), t._modulesNamespaceMap = /* @__PURE__ */ Object.create(null);
  var n = t.state;
  m1(t, n, [], t._modules.root, true), Xl(t, n, e);
}
__name(M5, "M5");
function Xl(t, e, n) {
  var r = t._state, s = t._scope;
  t.getters = {}, t._makeLocalGettersCache = /* @__PURE__ */ Object.create(null);
  var i = t._wrappedGetters, o = {}, l = {}, a = $u(true);
  a.run(function() {
    ks(i, function(c, u) {
      o[u] = R9(c, t), l[u] = J(function() {
        return o[u]();
      }), Object.defineProperty(t.getters, u, {
        get: function() {
          return l[u].value;
        },
        enumerable: true
      });
    });
  }), t._state = kn({
    data: e
  }), t._scope = a, t.strict && N9(t), r && n && t._withCommit(function() {
    r.data = null;
  }), s && s.stop();
}
__name(Xl, "Xl");
function m1(t, e, n, r, s) {
  var i = !n.length, o = t._modules.getNamespace(n);
  if (r.namespaced && (t._modulesNamespaceMap[o], t._modulesNamespaceMap[o] = r), !i && !s) {
    var l = Ql(e, n.slice(0, -1)), a = n[n.length - 1];
    t._withCommit(function() {
      l[a] = r.state;
    });
  }
  var c = r.context = k9(t, o, n);
  r.forEachMutation(function(u, h) {
    var f = o + h;
    O9(t, f, u, c);
  }), r.forEachAction(function(u, h) {
    var f = u.root ? h : o + h, p = u.handler || u;
    I9(t, f, p, c);
  }), r.forEachGetter(function(u, h) {
    var f = o + h;
    M9(t, f, u, c);
  }), r.forEachChild(function(u, h) {
    m1(t, e, n.concat(h), u, s);
  });
}
__name(m1, "m1");
function k9(t, e, n) {
  var r = e === "", s = {
    dispatch: r ? t.dispatch : function(i, o, l) {
      var a = Ii(i, o, l), c = a.payload, u = a.options, h = a.type;
      return (!u || !u.root) && (h = e + h), t.dispatch(h, c);
    },
    commit: r ? t.commit : function(i, o, l) {
      var a = Ii(i, o, l), c = a.payload, u = a.options, h = a.type;
      (!u || !u.root) && (h = e + h), t.commit(h, c, u);
    }
  };
  return Object.defineProperties(s, {
    getters: {
      get: r ? function() {
        return t.getters;
      } : function() {
        return N5(t, e);
      }
    },
    state: {
      get: function() {
        return Ql(t.state, n);
      }
    }
  }), s;
}
__name(k9, "k9");
function N5(t, e) {
  if (!t._makeLocalGettersCache[e]) {
    var n = {}, r = e.length;
    Object.keys(t.getters).forEach(function(s) {
      if (s.slice(0, r) === e) {
        var i = s.slice(r);
        Object.defineProperty(n, i, {
          get: function() {
            return t.getters[s];
          },
          enumerable: true
        });
      }
    }), t._makeLocalGettersCache[e] = n;
  }
  return t._makeLocalGettersCache[e];
}
__name(N5, "N5");
function O9(t, e, n, r) {
  var s = t._mutations[e] || (t._mutations[e] = []);
  s.push(function(o) {
    n.call(t, r.state, o);
  });
}
__name(O9, "O9");
function I9(t, e, n, r) {
  var s = t._actions[e] || (t._actions[e] = []);
  s.push(function(o) {
    var l = n.call(t, {
      dispatch: r.dispatch,
      commit: r.commit,
      getters: r.getters,
      state: r.state,
      rootGetters: t.getters,
      rootState: t.state
    }, o);
    return A9(l) || (l = Promise.resolve(l)), t._devtoolHook ? l.catch(function(a) {
      throw t._devtoolHook.emit("vuex:error", a), a;
    }) : l;
  });
}
__name(I9, "I9");
function M9(t, e, n, r) {
  t._wrappedGetters[e] || (t._wrappedGetters[e] = function(i) {
    return n(
      r.state,
      r.getters,
      i.state,
      i.getters
    );
  });
}
__name(M9, "M9");
function N9(t) {
  Yt(function() {
    return t._state.data;
  }, function() {
  }, { deep: true, flush: "sync" });
}
__name(N9, "N9");
function Ql(t, e) {
  return e.reduce(function(n, r) {
    return n[r];
  }, t);
}
__name(Ql, "Ql");
function Ii(t, e, n) {
  return O5(t) && t.type && (n = e, e = t, t = t.type), { type: t, payload: e, options: n };
}
__name(Ii, "Ii");
var P9 = "vuex bindings";
var _2 = "vuex:mutations";
var to = "vuex:actions";
var Qr = "vuex";
var F9 = 0;
function D9(t, e) {
  S9(
    {
      id: "org.vuejs.vuex",
      app: t,
      label: "Vuex",
      homepage: "https://next.vuex.vuejs.org/",
      logo: "https://vuejs.org/images/icons/favicon-96x96.png",
      packageName: "vuex",
      componentStateTypes: [P9]
    },
    function(n) {
      n.addTimelineLayer({
        id: _2,
        label: "Vuex Mutations",
        color: y2
      }), n.addTimelineLayer({
        id: to,
        label: "Vuex Actions",
        color: y2
      }), n.addInspector({
        id: Qr,
        label: "Vuex",
        icon: "storage",
        treeFilterPlaceholder: "Filter stores..."
      }), n.on.getInspectorTree(function(r) {
        if (r.app === t && r.inspectorId === Qr)
          if (r.filter) {
            var s = [];
            B5(s, e._modules.root, r.filter, ""), r.rootNodes = s;
          } else
            r.rootNodes = [
              D5(e._modules.root, "")
            ];
      }), n.on.getInspectorState(function(r) {
        if (r.app === t && r.inspectorId === Qr) {
          var s = r.nodeId;
          N5(e, s), r.state = H9(
            V9(e._modules, s),
            s === "root" ? e.getters : e._makeLocalGettersCache,
            s
          );
        }
      }), n.on.editInspectorState(function(r) {
        if (r.app === t && r.inspectorId === Qr) {
          var s = r.nodeId, i = r.path;
          s !== "root" && (i = s.split("/").filter(Boolean).concat(i)), e._withCommit(function() {
            r.set(e._state.data, i, r.state.value);
          });
        }
      }), e.subscribe(function(r, s) {
        var i = {};
        r.payload && (i.payload = r.payload), i.state = s, n.notifyComponentUpdate(), n.sendInspectorTree(Qr), n.sendInspectorState(Qr), n.addTimelineEvent({
          layerId: _2,
          event: {
            time: Date.now(),
            title: r.type,
            data: i
          }
        });
      }), e.subscribeAction({
        before: function(r, s) {
          var i = {};
          r.payload && (i.payload = r.payload), r._id = F9++, r._time = Date.now(), i.state = s, n.addTimelineEvent({
            layerId: to,
            event: {
              time: r._time,
              title: r.type,
              groupId: r._id,
              subtitle: "start",
              data: i
            }
          });
        },
        after: function(r, s) {
          var i = {}, o = Date.now() - r._time;
          i.duration = {
            _custom: {
              type: "duration",
              display: o + "ms",
              tooltip: "Action duration",
              value: o
            }
          }, r.payload && (i.payload = r.payload), i.state = s, n.addTimelineEvent({
            layerId: to,
            event: {
              time: Date.now(),
              title: r.type,
              groupId: r._id,
              subtitle: "end",
              data: i
            }
          });
        }
      });
    }
  );
}
__name(D9, "D9");
var y2 = 8702998;
var B9 = 6710886;
var $9 = 16777215;
var P5 = {
  label: "namespaced",
  textColor: $9,
  backgroundColor: B9
};
function F5(t) {
  return t && t !== "root" ? t.split("/").slice(-2, -1)[0] : "Root";
}
__name(F5, "F5");
function D5(t, e) {
  return {
    id: e || "root",
    label: F5(e),
    tags: t.namespaced ? [P5] : [],
    children: Object.keys(t._children).map(
      function(n) {
        return D5(
          t._children[n],
          e + n + "/"
        );
      }
    )
  };
}
__name(D5, "D5");
function B5(t, e, n, r) {
  r.includes(n) && t.push({
    id: r || "root",
    label: r.endsWith("/") ? r.slice(0, r.length - 1) : r || "Root",
    tags: e.namespaced ? [P5] : []
  }), Object.keys(e._children).forEach(function(s) {
    B5(t, e._children[s], n, r + s + "/");
  });
}
__name(B5, "B5");
function H9(t, e, n) {
  e = n === "root" ? e : e[n];
  var r = Object.keys(e), s = {
    state: Object.keys(t.state).map(function(o) {
      return {
        key: o,
        editable: true,
        value: t.state[o]
      };
    })
  };
  if (r.length) {
    var i = U9(e);
    s.getters = Object.keys(i).map(function(o) {
      return {
        key: o.endsWith("/") ? F5(o) : o,
        editable: false,
        value: Vo(function() {
          return i[o];
        })
      };
    });
  }
  return s;
}
__name(H9, "H9");
function U9(t) {
  var e = {};
  return Object.keys(t).forEach(function(n) {
    var r = n.split("/");
    if (r.length > 1) {
      var s = e, i = r.pop();
      r.forEach(function(o) {
        s[o] || (s[o] = {
          _custom: {
            value: {},
            display: o,
            tooltip: "Module",
            abstract: true
          }
        }), s = s[o]._custom.value;
      }), s[i] = Vo(function() {
        return t[n];
      });
    } else
      e[n] = Vo(function() {
        return t[n];
      });
  }), e;
}
__name(U9, "U9");
function V9(t, e) {
  var n = e.split("/").filter(function(r) {
    return r;
  });
  return n.reduce(
    function(r, s, i) {
      var o = r[s];
      if (!o)
        throw new Error('Missing module "' + s + '" for path "' + e + '".');
      return i === n.length - 1 ? o : o._children;
    },
    e === "root" ? t : t.root._children
  );
}
__name(V9, "V9");
function Vo(t) {
  try {
    return t();
  } catch (e) {
    return e;
  }
}
__name(Vo, "Vo");
var fn = /* @__PURE__ */ __name(function(e, n) {
  this.runtime = n, this._children = /* @__PURE__ */ Object.create(null), this._rawModule = e;
  var r = e.state;
  this.state = (typeof r == "function" ? r() : r) || {};
}, "fn");
var $5 = { namespaced: { configurable: true } };
$5.namespaced.get = function() {
  return !!this._rawModule.namespaced;
};
fn.prototype.addChild = function(e, n) {
  this._children[e] = n;
};
fn.prototype.removeChild = function(e) {
  delete this._children[e];
};
fn.prototype.getChild = function(e) {
  return this._children[e];
};
fn.prototype.hasChild = function(e) {
  return e in this._children;
};
fn.prototype.update = function(e) {
  this._rawModule.namespaced = e.namespaced, e.actions && (this._rawModule.actions = e.actions), e.mutations && (this._rawModule.mutations = e.mutations), e.getters && (this._rawModule.getters = e.getters);
};
fn.prototype.forEachChild = function(e) {
  ks(this._children, e);
};
fn.prototype.forEachGetter = function(e) {
  this._rawModule.getters && ks(this._rawModule.getters, e);
};
fn.prototype.forEachAction = function(e) {
  this._rawModule.actions && ks(this._rawModule.actions, e);
};
fn.prototype.forEachMutation = function(e) {
  this._rawModule.mutations && ks(this._rawModule.mutations, e);
};
Object.defineProperties(fn.prototype, $5);
var jr = /* @__PURE__ */ __name(function(e) {
  this.register([], e, false);
}, "jr");
jr.prototype.get = function(e) {
  return e.reduce(function(n, r) {
    return n.getChild(r);
  }, this.root);
};
jr.prototype.getNamespace = function(e) {
  var n = this.root;
  return e.reduce(function(r, s) {
    return n = n.getChild(s), r + (n.namespaced ? s + "/" : "");
  }, "");
};
jr.prototype.update = function(e) {
  H5([], this.root, e);
};
jr.prototype.register = function(e, n, r) {
  var s = this;
  r === void 0 && (r = true);
  var i = new fn(n, r);
  if (e.length === 0)
    this.root = i;
  else {
    var o = this.get(e.slice(0, -1));
    o.addChild(e[e.length - 1], i);
  }
  n.modules && ks(n.modules, function(l, a) {
    s.register(e.concat(a), l, r);
  });
};
jr.prototype.unregister = function(e) {
  var n = this.get(e.slice(0, -1)), r = e[e.length - 1], s = n.getChild(r);
  !s || !s.runtime || n.removeChild(r);
};
jr.prototype.isRegistered = function(e) {
  var n = this.get(e.slice(0, -1)), r = e[e.length - 1];
  return n ? n.hasChild(r) : false;
};
function H5(t, e, n) {
  if (e.update(n), n.modules)
    for (var r in n.modules) {
      if (!e.getChild(r))
        return;
      H5(
        t.concat(r),
        e.getChild(r),
        n.modules[r]
      );
    }
}
__name(H5, "H5");
function U5(t) {
  return new Vt(t);
}
__name(U5, "U5");
var Vt = /* @__PURE__ */ __name(function(e) {
  var n = this;
  e === void 0 && (e = {});
  var r = e.plugins;
  r === void 0 && (r = []);
  var s = e.strict;
  s === void 0 && (s = false);
  var i = e.devtools;
  this._committing = false, this._actions = /* @__PURE__ */ Object.create(null), this._actionSubscribers = [], this._mutations = /* @__PURE__ */ Object.create(null), this._wrappedGetters = /* @__PURE__ */ Object.create(null), this._modules = new jr(e), this._modulesNamespaceMap = /* @__PURE__ */ Object.create(null), this._subscribers = [], this._makeLocalGettersCache = /* @__PURE__ */ Object.create(null), this._scope = null, this._devtools = i;
  var o = this, l = this, a = l.dispatch, c = l.commit;
  this.dispatch = function(f, p) {
    return a.call(o, f, p);
  }, this.commit = function(f, p, x) {
    return c.call(o, f, p, x);
  }, this.strict = s;
  var u = this._modules.root.state;
  m1(this, u, [], this._modules.root), Xl(this, u), r.forEach(function(h) {
    return h(n);
  });
}, "Vt");
var Jl = { state: { configurable: true } };
Vt.prototype.install = function(e, n) {
  e.provide(n || k5, this), e.config.globalProperties.$store = this;
  var r = this._devtools !== void 0 ? this._devtools : false;
  r && D9(e, this);
};
Jl.state.get = function() {
  return this._state.data;
};
Jl.state.set = function(t) {
};
Vt.prototype.commit = function(e, n, r) {
  var s = this, i = Ii(e, n, r), o = i.type, l = i.payload, a = { type: o, payload: l }, c = this._mutations[o];
  !c || (this._withCommit(function() {
    c.forEach(function(h) {
      h(l);
    });
  }), this._subscribers.slice().forEach(function(u) {
    return u(a, s.state);
  }));
};
Vt.prototype.dispatch = function(e, n) {
  var r = this, s = Ii(e, n), i = s.type, o = s.payload, l = { type: i, payload: o }, a = this._actions[i];
  if (!!a) {
    try {
      this._actionSubscribers.slice().filter(function(u) {
        return u.before;
      }).forEach(function(u) {
        return u.before(l, r.state);
      });
    } catch {
    }
    var c = a.length > 1 ? Promise.all(a.map(function(u) {
      return u(o);
    })) : a[0](o);
    return new Promise(function(u, h) {
      c.then(function(f) {
        try {
          r._actionSubscribers.filter(function(p) {
            return p.after;
          }).forEach(function(p) {
            return p.after(l, r.state);
          });
        } catch {
        }
        u(f);
      }, function(f) {
        try {
          r._actionSubscribers.filter(function(p) {
            return p.error;
          }).forEach(function(p) {
            return p.error(l, r.state, f);
          });
        } catch {
        }
        h(f);
      });
    });
  }
};
Vt.prototype.subscribe = function(e, n) {
  return I5(e, this._subscribers, n);
};
Vt.prototype.subscribeAction = function(e, n) {
  var r = typeof e == "function" ? { before: e } : e;
  return I5(r, this._actionSubscribers, n);
};
Vt.prototype.watch = function(e, n, r) {
  var s = this;
  return Yt(function() {
    return e(s.state, s.getters);
  }, n, Object.assign({}, r));
};
Vt.prototype.replaceState = function(e) {
  var n = this;
  this._withCommit(function() {
    n._state.data = e;
  });
};
Vt.prototype.registerModule = function(e, n, r) {
  r === void 0 && (r = {}), typeof e == "string" && (e = [e]), this._modules.register(e, n), m1(this, this.state, e, this._modules.get(e), r.preserveState), Xl(this, this.state);
};
Vt.prototype.unregisterModule = function(e) {
  var n = this;
  typeof e == "string" && (e = [e]), this._modules.unregister(e), this._withCommit(function() {
    var r = Ql(n.state, e.slice(0, -1));
    delete r[e[e.length - 1]];
  }), M5(this);
};
Vt.prototype.hasModule = function(e) {
  return typeof e == "string" && (e = [e]), this._modules.isRegistered(e);
};
Vt.prototype.hotUpdate = function(e) {
  this._modules.update(e), M5(this, true);
};
Vt.prototype._withCommit = function(e) {
  var n = this._committing;
  this._committing = true, e(), this._committing = n;
};
Object.defineProperties(Vt.prototype, Jl);
var Fn = ta(function(t, e) {
  var n = {};
  return ea(e).forEach(function(r) {
    var s = r.key, i = r.val;
    n[s] = function() {
      var l = this.$store.state, a = this.$store.getters;
      if (t) {
        var c = na(this.$store, "mapState", t);
        if (!c)
          return;
        l = c.context.state, a = c.context.getters;
      }
      return typeof i == "function" ? i.call(this, l, a) : l[i];
    }, n[s].vuex = true;
  }), n;
});
var V5 = ta(function(t, e) {
  var n = {};
  return ea(e).forEach(function(r) {
    var s = r.key, i = r.val;
    n[s] = function() {
      for (var l = [], a = arguments.length; a--; )
        l[a] = arguments[a];
      var c = this.$store.commit;
      if (t) {
        var u = na(this.$store, "mapMutations", t);
        if (!u)
          return;
        c = u.context.commit;
      }
      return typeof i == "function" ? i.apply(this, [c].concat(l)) : c.apply(this.$store, [i].concat(l));
    };
  }), n;
});
var pn = ta(function(t, e) {
  var n = {};
  return ea(e).forEach(function(r) {
    var s = r.key, i = r.val;
    i = t + i, n[s] = function() {
      if (!(t && !na(this.$store, "mapGetters", t)))
        return this.$store.getters[i];
    }, n[s].vuex = true;
  }), n;
});
function ea(t) {
  return z9(t) ? Array.isArray(t) ? t.map(function(e) {
    return { key: e, val: e };
  }) : Object.keys(t).map(function(e) {
    return { key: e, val: t[e] };
  }) : [];
}
__name(ea, "ea");
function z9(t) {
  return Array.isArray(t) || O5(t);
}
__name(z9, "z9");
function ta(t) {
  return function(e, n) {
    return typeof e != "string" ? (n = e, e = "") : e.charAt(e.length - 1) !== "/" && (e += "/"), t(e, n);
  };
}
__name(ta, "ta");
function na(t, e, n) {
  var r = t._modulesNamespaceMap[n];
  return r;
}
__name(na, "na");
var G9 = typeof Y0 == "object" && Y0 && Y0.Object === Object && Y0;
var z5 = G9;
var j9 = z5;
var Z9 = typeof self == "object" && self && self.Object === Object && self;
var W9 = j9 || Z9 || Function("return this")();
var Zr = W9;
var q9 = Zr;
var K9 = /* @__PURE__ */ __name(function() {
  return q9.Date.now();
}, "K9");
var Y9 = K9;
String.prototype.seed = String.prototype.seed || Math.round(Math.random() * Math.pow(2, 32));
String.prototype.hashCode = function() {
  const t = this.toString();
  let e, n;
  const r = t.length & 3, s = t.length - r;
  let i = String.prototype.seed;
  const o = 3432918353, l = 461845907;
  let a = 0;
  for (; a < s; )
    n = t.charCodeAt(a) & 255 | (t.charCodeAt(++a) & 255) << 8 | (t.charCodeAt(++a) & 255) << 16 | (t.charCodeAt(++a) & 255) << 24, ++a, n = (n & 65535) * o + (((n >>> 16) * o & 65535) << 16) & 4294967295, n = n << 15 | n >>> 17, n = (n & 65535) * l + (((n >>> 16) * l & 65535) << 16) & 4294967295, i ^= n, i = i << 13 | i >>> 19, e = (i & 65535) * 5 + (((i >>> 16) * 5 & 65535) << 16) & 4294967295, i = (e & 65535) + 27492 + (((e >>> 16) + 58964 & 65535) << 16);
  switch (n = 0, r) {
    case 3:
      n ^= (t.charCodeAt(a + 2) & 255) << 16;
    case 2:
      n ^= (t.charCodeAt(a + 1) & 255) << 8;
    case 1:
      n ^= t.charCodeAt(a) & 255, n = (n & 65535) * o + (((n >>> 16) * o & 65535) << 16) & 4294967295, n = n << 15 | n >>> 17, n = (n & 65535) * l + (((n >>> 16) * l & 65535) << 16) & 4294967295, i ^= n;
  }
  return i ^= t.length, i ^= i >>> 16, i = (i & 65535) * 2246822507 + (((i >>> 16) * 2246822507 & 65535) << 16) & 4294967295, i ^= i >>> 13, i = (i & 65535) * 3266489909 + (((i >>> 16) * 3266489909 & 65535) << 16) & 4294967295, i ^= i >>> 16, i >>> 0;
};
String.prototype.codePointAt || function() {
  var t = function() {
    let n;
    try {
      const r = {}, s = Object.defineProperty;
      n = s(r, r, r) && s;
    } catch {
    }
    return n;
  }();
  const e = /* @__PURE__ */ __name(function(n) {
    if (this == null)
      throw TypeError();
    const r = String(this), s = r.length;
    let i = n ? Number(n) : 0;
    if (i !== i && (i = 0), i < 0 || i >= s)
      return;
    const o = r.charCodeAt(i);
    let l;
    return o >= 55296 && o <= 56319 && s > i + 1 && (l = r.charCodeAt(i + 1), l >= 56320 && l <= 57343) ? (o - 55296) * 1024 + l - 56320 + 65536 : o;
  }, "e");
  t ? t(String.prototype, "codePointAt", {
    value: e,
    configurable: true,
    writable: true
  }) : String.prototype.codePointAt = e;
}();
String.fromCodePoint || function() {
  const t = function() {
    let s;
    try {
      const i = {}, o = Object.defineProperty;
      s = o(i, i, i) && o;
    } catch {
    }
    return s;
  }(), e = String.fromCharCode, n = Math.floor, r = /* @__PURE__ */ __name(function(s) {
    const o = [];
    let l, a, c = -1;
    const u = arguments.length;
    if (!u)
      return "";
    let h = "";
    for (; ++c < u; ) {
      let f = Number(arguments[c]);
      if (!isFinite(f) || f < 0 || f > 1114111 || n(f) !== f)
        throw RangeError("Invalid code point: " + f);
      f <= 65535 ? o.push(f) : (f -= 65536, l = (f >> 10) + 55296, a = f % 1024 + 56320, o.push(l, a)), (c + 1 === u || o.length > 16384) && (h += e.apply(null, o), o.length = 0);
    }
    return h;
  }, "r");
  t ? t(String, "fromCodePoint", {
    value: r,
    configurable: true,
    writable: true
  }) : String.fromCodePoint = r;
}();
var B = class {
  static {
    __name(this, "B");
  }
  constructor() {
    this.source = null, this.type = null, this.channel = null, this.start = null, this.stop = null, this.tokenIndex = null, this.line = null, this.column = null, this._text = null;
  }
  getTokenSource() {
    return this.source[0];
  }
  getInputStream() {
    return this.source[1];
  }
  get text() {
    return this._text;
  }
  set text(e) {
    this._text = e;
  }
};
B.INVALID_TYPE = 0;
B.EPSILON = -2;
B.MIN_USER_TOKEN_TYPE = 1;
B.EOF = -1;
B.DEFAULT_CHANNEL = 0;
B.HIDDEN_CHANNEL = 1;
function _s(t, e) {
  if (!Array.isArray(t) || !Array.isArray(e))
    return false;
  if (t === e)
    return true;
  if (t.length !== e.length)
    return false;
  for (let n = 0; n < t.length; n++)
    if (t[n] !== e[n] && (!t[n].equals || !t[n].equals(e[n])))
      return false;
  return true;
}
__name(_s, "_s");
var en = class _en {
  static {
    __name(this, "en");
  }
  constructor() {
    this.count = 0, this.hash = 0;
  }
  update() {
    for (let e = 0; e < arguments.length; e++) {
      const n = arguments[e];
      if (n != null)
        if (Array.isArray(n))
          this.update.apply(this, n);
        else {
          let r = 0;
          switch (typeof n) {
            case "undefined":
            case "function":
              continue;
            case "number":
            case "boolean":
              r = n;
              break;
            case "string":
              r = n.hashCode();
              break;
            default:
              n.updateHashCode ? n.updateHashCode(this) : console.log("No updateHashCode for " + n.toString());
              continue;
          }
          r = r * 3432918353, r = r << 15 | r >>> 32 - 15, r = r * 461845907, this.count = this.count + 1;
          let s = this.hash ^ r;
          s = s << 13 | s >>> 32 - 13, s = s * 5 + 3864292196, this.hash = s;
        }
    }
  }
  finish() {
    let e = this.hash ^ this.count * 4;
    return e = e ^ e >>> 16, e = e * 2246822507, e = e ^ e >>> 13, e = e * 3266489909, e = e ^ e >>> 16, e;
  }
  static hashStuff() {
    const e = new _en();
    return e.update.apply(e, arguments), e.finish();
  }
};
function G5(t) {
  return t ? t.hashCode() : -1;
}
__name(G5, "G5");
function j5(t, e) {
  return t ? t.equals(e) : t === e;
}
__name(j5, "j5");
function X9(t) {
  return t === null ? "null" : t;
}
__name(X9, "X9");
function or(t) {
  return Array.isArray(t) ? "[" + t.map(X9).join(", ") + "]" : "null";
}
__name(or, "or");
var ui = "h-";
var Xt = class {
  static {
    __name(this, "Xt");
  }
  constructor(e, n) {
    this.data = {}, this.hashFunction = e || G5, this.equalsFunction = n || j5;
  }
  add(e) {
    const n = ui + this.hashFunction(e);
    if (n in this.data) {
      const r = this.data[n];
      for (let s = 0; s < r.length; s++)
        if (this.equalsFunction(e, r[s]))
          return r[s];
      return r.push(e), e;
    } else
      return this.data[n] = [e], e;
  }
  has(e) {
    return this.get(e) != null;
  }
  get(e) {
    const n = ui + this.hashFunction(e);
    if (n in this.data) {
      const r = this.data[n];
      for (let s = 0; s < r.length; s++)
        if (this.equalsFunction(e, r[s]))
          return r[s];
    }
    return null;
  }
  values() {
    return Object.keys(this.data).filter((e) => e.startsWith(ui)).flatMap((e) => this.data[e], this);
  }
  toString() {
    return or(this.values());
  }
  get length() {
    return Object.keys(this.data).filter((e) => e.startsWith(ui)).map((e) => this.data[e].length, this).reduce((e, n) => e + n, 0);
  }
};
var $e = class _$e {
  static {
    __name(this, "$e");
  }
  hashCode() {
    const e = new en();
    return this.updateHashCode(e), e.finish();
  }
  evaluate(e, n) {
  }
  evalPrecedence(e, n) {
    return this;
  }
  static andContext(e, n) {
    if (e === null || e === _$e.NONE)
      return n;
    if (n === null || n === _$e.NONE)
      return e;
    const r = new t0(e, n);
    return r.opnds.length === 1 ? r.opnds[0] : r;
  }
  static orContext(e, n) {
    if (e === null)
      return n;
    if (n === null)
      return e;
    if (e === _$e.NONE || n === _$e.NONE)
      return _$e.NONE;
    const r = new n0(e, n);
    return r.opnds.length === 1 ? r.opnds[0] : r;
  }
};
var t0 = class _t0 extends $e {
  static {
    __name(this, "t0");
  }
  constructor(e, n) {
    super();
    const r = new Xt();
    e instanceof _t0 ? e.opnds.map(function(i) {
      r.add(i);
    }) : r.add(e), n instanceof _t0 ? n.opnds.map(function(i) {
      r.add(i);
    }) : r.add(n);
    const s = Z5(r);
    if (s.length > 0) {
      let i = null;
      s.map(function(o) {
        (i === null || o.precedence < i.precedence) && (i = o);
      }), r.add(i);
    }
    this.opnds = Array.from(r.values());
  }
  equals(e) {
    return this === e ? true : e instanceof _t0 ? _s(this.opnds, e.opnds) : false;
  }
  updateHashCode(e) {
    e.update(this.opnds, "AND");
  }
  evaluate(e, n) {
    for (let r = 0; r < this.opnds.length; r++)
      if (!this.opnds[r].evaluate(e, n))
        return false;
    return true;
  }
  evalPrecedence(e, n) {
    let r = false;
    const s = [];
    for (let o = 0; o < this.opnds.length; o++) {
      const l = this.opnds[o], a = l.evalPrecedence(e, n);
      if (r |= a !== l, a === null)
        return null;
      a !== $e.NONE && s.push(a);
    }
    if (!r)
      return this;
    if (s.length === 0)
      return $e.NONE;
    let i = null;
    return s.map(function(o) {
      i = i === null ? o : $e.andContext(i, o);
    }), i;
  }
  toString() {
    const e = this.opnds.map((n) => n.toString());
    return (e.length > 3 ? e.slice(3) : e).join("&&");
  }
};
var n0 = class _n0 extends $e {
  static {
    __name(this, "n0");
  }
  constructor(e, n) {
    super();
    const r = new Xt();
    e instanceof _n0 ? e.opnds.map(function(i) {
      r.add(i);
    }) : r.add(e), n instanceof _n0 ? n.opnds.map(function(i) {
      r.add(i);
    }) : r.add(n);
    const s = Z5(r);
    if (s.length > 0) {
      const i = s.sort(function(l, a) {
        return l.compareTo(a);
      }), o = i[i.length - 1];
      r.add(o);
    }
    this.opnds = Array.from(r.values());
  }
  equals(e) {
    return this === e ? true : e instanceof _n0 ? _s(this.opnds, e.opnds) : false;
  }
  updateHashCode(e) {
    e.update(this.opnds, "OR");
  }
  evaluate(e, n) {
    for (let r = 0; r < this.opnds.length; r++)
      if (this.opnds[r].evaluate(e, n))
        return true;
    return false;
  }
  evalPrecedence(e, n) {
    let r = false;
    const s = [];
    for (let o = 0; o < this.opnds.length; o++) {
      const l = this.opnds[o], a = l.evalPrecedence(e, n);
      if (r |= a !== l, a === $e.NONE)
        return $e.NONE;
      a !== null && s.push(a);
    }
    return r ? (s.length === 0, null) : this;
  }
  toString() {
    const e = this.opnds.map((n) => n.toString());
    return (e.length > 3 ? e.slice(3) : e).join("||");
  }
};
function Z5(t) {
  const e = [];
  return t.values().map(function(n) {
    n instanceof $e.PrecedencePredicate && e.push(n);
  }), e;
}
__name(Z5, "Z5");
function C2(t, e) {
  if (t === null) {
    const n = { state: null, alt: null, context: null, semanticContext: null };
    return e && (n.reachesIntoOuterContext = 0), n;
  } else {
    const n = {};
    return n.state = t.state || null, n.alt = t.alt === void 0 ? null : t.alt, n.context = t.context || null, n.semanticContext = t.semanticContext || null, e && (n.reachesIntoOuterContext = t.reachesIntoOuterContext || 0, n.precedenceFilterSuppressed = t.precedenceFilterSuppressed || false), n;
  }
}
__name(C2, "C2");
var ot = class _ot {
  static {
    __name(this, "ot");
  }
  constructor(e, n) {
    this.checkContext(e, n), e = C2(e), n = C2(n, true), this.state = e.state !== null ? e.state : n.state, this.alt = e.alt !== null ? e.alt : n.alt, this.context = e.context !== null ? e.context : n.context, this.semanticContext = e.semanticContext !== null ? e.semanticContext : n.semanticContext !== null ? n.semanticContext : $e.NONE, this.reachesIntoOuterContext = n.reachesIntoOuterContext, this.precedenceFilterSuppressed = n.precedenceFilterSuppressed;
  }
  checkContext(e, n) {
    (e.context === null || e.context === void 0) && (n === null || n.context === null || n.context === void 0) && (this.context = null);
  }
  hashCode() {
    const e = new en();
    return this.updateHashCode(e), e.finish();
  }
  updateHashCode(e) {
    e.update(this.state.stateNumber, this.alt, this.context, this.semanticContext);
  }
  equals(e) {
    return this === e ? true : e instanceof _ot ? this.state.stateNumber === e.state.stateNumber && this.alt === e.alt && (this.context === null ? e.context === null : this.context.equals(e.context)) && this.semanticContext.equals(e.semanticContext) && this.precedenceFilterSuppressed === e.precedenceFilterSuppressed : false;
  }
  hashCodeForConfigSet() {
    const e = new en();
    return e.update(this.state.stateNumber, this.alt, this.semanticContext), e.finish();
  }
  equalsForConfigSet(e) {
    return this === e ? true : e instanceof _ot ? this.state.stateNumber === e.state.stateNumber && this.alt === e.alt && this.semanticContext.equals(e.semanticContext) : false;
  }
  toString() {
    return "(" + this.state + "," + this.alt + (this.context !== null ? ",[" + this.context.toString() + "]" : "") + (this.semanticContext !== $e.NONE ? "," + this.semanticContext.toString() : "") + (this.reachesIntoOuterContext > 0 ? ",up=" + this.reachesIntoOuterContext : "") + ")";
  }
};
var Be = class _Be {
  static {
    __name(this, "Be");
  }
  constructor(e, n) {
    this.start = e, this.stop = n;
  }
  clone() {
    return new _Be(this.start, this.stop);
  }
  contains(e) {
    return e >= this.start && e < this.stop;
  }
  toString() {
    return this.start === this.stop - 1 ? this.start.toString() : this.start.toString() + ".." + (this.stop - 1).toString();
  }
  get length() {
    return this.stop - this.start;
  }
};
Be.INVALID_INTERVAL = new Be(-1, -2);
var cn = class _cn {
  static {
    __name(this, "cn");
  }
  constructor() {
    this.intervals = null, this.readOnly = false;
  }
  first(e) {
    return this.intervals === null || this.intervals.length === 0 ? B.INVALID_TYPE : this.intervals[0].start;
  }
  addOne(e) {
    this.addInterval(new Be(e, e + 1));
  }
  addRange(e, n) {
    this.addInterval(new Be(e, n + 1));
  }
  addInterval(e) {
    if (this.intervals === null)
      this.intervals = [], this.intervals.push(e.clone());
    else {
      for (let n = 0; n < this.intervals.length; n++) {
        const r = this.intervals[n];
        if (e.stop < r.start) {
          this.intervals.splice(n, 0, e);
          return;
        } else if (e.stop === r.start) {
          this.intervals[n] = new Be(e.start, r.stop);
          return;
        } else if (e.start <= r.stop) {
          this.intervals[n] = new Be(Math.min(r.start, e.start), Math.max(r.stop, e.stop)), this.reduce(n);
          return;
        }
      }
      this.intervals.push(e.clone());
    }
  }
  addSet(e) {
    return e.intervals !== null && e.intervals.forEach((n) => this.addInterval(n), this), this;
  }
  reduce(e) {
    if (e < this.intervals.length - 1) {
      const n = this.intervals[e], r = this.intervals[e + 1];
      n.stop >= r.stop ? (this.intervals.splice(e + 1, 1), this.reduce(e)) : n.stop >= r.start && (this.intervals[e] = new Be(n.start, r.stop), this.intervals.splice(e + 1, 1));
    }
  }
  complement(e, n) {
    const r = new _cn();
    return r.addInterval(new Be(e, n + 1)), this.intervals !== null && this.intervals.forEach((s) => r.removeRange(s)), r;
  }
  contains(e) {
    if (this.intervals === null)
      return false;
    for (let n = 0; n < this.intervals.length; n++)
      if (this.intervals[n].contains(e))
        return true;
    return false;
  }
  removeRange(e) {
    if (e.start === e.stop - 1)
      this.removeOne(e.start);
    else if (this.intervals !== null) {
      let n = 0;
      for (let r = 0; r < this.intervals.length; r++) {
        const s = this.intervals[n];
        if (e.stop <= s.start)
          return;
        if (e.start > s.start && e.stop < s.stop) {
          this.intervals[n] = new Be(s.start, e.start);
          const i = new Be(e.stop, s.stop);
          this.intervals.splice(n, 0, i);
          return;
        } else
          e.start <= s.start && e.stop >= s.stop ? (this.intervals.splice(n, 1), n = n - 1) : e.start < s.stop ? this.intervals[n] = new Be(s.start, e.start) : e.stop < s.stop && (this.intervals[n] = new Be(e.stop, s.stop));
        n += 1;
      }
    }
  }
  removeOne(e) {
    if (this.intervals !== null)
      for (let n = 0; n < this.intervals.length; n++) {
        const r = this.intervals[n];
        if (e < r.start)
          return;
        if (e === r.start && e === r.stop - 1) {
          this.intervals.splice(n, 1);
          return;
        } else if (e === r.start) {
          this.intervals[n] = new Be(r.start + 1, r.stop);
          return;
        } else if (e === r.stop - 1) {
          this.intervals[n] = new Be(r.start, r.stop - 1);
          return;
        } else if (e < r.stop - 1) {
          const s = new Be(r.start, e);
          r.start = e + 1, this.intervals.splice(n, 0, s);
          return;
        }
      }
  }
  toString(e, n, r) {
    return e = e || null, n = n || null, r = r || false, this.intervals === null ? "{}" : e !== null || n !== null ? this.toTokenString(e, n) : r ? this.toCharString() : this.toIndexString();
  }
  toCharString() {
    const e = [];
    for (let n = 0; n < this.intervals.length; n++) {
      const r = this.intervals[n];
      r.stop === r.start + 1 ? r.start === B.EOF ? e.push("<EOF>") : e.push("'" + String.fromCharCode(r.start) + "'") : e.push("'" + String.fromCharCode(r.start) + "'..'" + String.fromCharCode(r.stop - 1) + "'");
    }
    return e.length > 1 ? "{" + e.join(", ") + "}" : e[0];
  }
  toIndexString() {
    const e = [];
    for (let n = 0; n < this.intervals.length; n++) {
      const r = this.intervals[n];
      r.stop === r.start + 1 ? r.start === B.EOF ? e.push("<EOF>") : e.push(r.start.toString()) : e.push(r.start.toString() + ".." + (r.stop - 1).toString());
    }
    return e.length > 1 ? "{" + e.join(", ") + "}" : e[0];
  }
  toTokenString(e, n) {
    const r = [];
    for (let s = 0; s < this.intervals.length; s++) {
      const i = this.intervals[s];
      for (let o = i.start; o < i.stop; o++)
        r.push(this.elementName(e, n, o));
    }
    return r.length > 1 ? "{" + r.join(", ") + "}" : r[0];
  }
  elementName(e, n, r) {
    return r === B.EOF ? "<EOF>" : r === B.EPSILON ? "<EPSILON>" : e[r] || n[r];
  }
  get length() {
    return this.intervals.map((e) => e.length).reduce((e, n) => e + n);
  }
};
var oe = class _oe {
  static {
    __name(this, "oe");
  }
  constructor() {
    this.atn = null, this.stateNumber = _oe.INVALID_STATE_NUMBER, this.stateType = null, this.ruleIndex = 0, this.epsilonOnlyTransitions = false, this.transitions = [], this.nextTokenWithinRule = null;
  }
  toString() {
    return this.stateNumber;
  }
  equals(e) {
    return e instanceof _oe ? this.stateNumber === e.stateNumber : false;
  }
  isNonGreedyExitState() {
    return false;
  }
  addTransition(e, n) {
    n === void 0 && (n = -1), this.transitions.length === 0 ? this.epsilonOnlyTransitions = e.isEpsilon : this.epsilonOnlyTransitions !== e.isEpsilon && (this.epsilonOnlyTransitions = false), n === -1 ? this.transitions.push(e) : this.transitions.splice(n, 1, e);
  }
};
oe.INVALID_TYPE = 0;
oe.BASIC = 1;
oe.RULE_START = 2;
oe.BLOCK_START = 3;
oe.PLUS_BLOCK_START = 4;
oe.STAR_BLOCK_START = 5;
oe.TOKEN_START = 6;
oe.RULE_STOP = 7;
oe.BLOCK_END = 8;
oe.STAR_LOOP_BACK = 9;
oe.STAR_LOOP_ENTRY = 10;
oe.PLUS_LOOP_BACK = 11;
oe.LOOP_END = 12;
oe.serializationNames = [
  "INVALID",
  "BASIC",
  "RULE_START",
  "BLOCK_START",
  "PLUS_BLOCK_START",
  "STAR_BLOCK_START",
  "TOKEN_START",
  "RULE_STOP",
  "BLOCK_END",
  "STAR_LOOP_BACK",
  "STAR_LOOP_ENTRY",
  "PLUS_LOOP_BACK",
  "LOOP_END"
];
oe.INVALID_STATE_NUMBER = -1;
var At = class extends oe {
  static {
    __name(this, "At");
  }
  constructor() {
    return super(), this.stateType = oe.RULE_STOP, this;
  }
};
var ee = class {
  static {
    __name(this, "ee");
  }
  constructor(e) {
    if (e == null)
      throw "target cannot be null.";
    this.target = e, this.isEpsilon = false, this.label = null;
  }
};
ee.EPSILON = 1;
ee.RANGE = 2;
ee.RULE = 3;
ee.PREDICATE = 4;
ee.ATOM = 5;
ee.ACTION = 6;
ee.SET = 7;
ee.NOT_SET = 8;
ee.WILDCARD = 9;
ee.PRECEDENCE = 10;
ee.serializationNames = [
  "INVALID",
  "EPSILON",
  "RANGE",
  "RULE",
  "PREDICATE",
  "ATOM",
  "ACTION",
  "SET",
  "NOT_SET",
  "WILDCARD",
  "PRECEDENCE"
];
ee.serializationTypes = {
  EpsilonTransition: ee.EPSILON,
  RangeTransition: ee.RANGE,
  RuleTransition: ee.RULE,
  PredicateTransition: ee.PREDICATE,
  AtomTransition: ee.ATOM,
  ActionTransition: ee.ACTION,
  SetTransition: ee.SET,
  NotSetTransition: ee.NOT_SET,
  WildcardTransition: ee.WILDCARD,
  PrecedencePredicateTransition: ee.PRECEDENCE
};
var Mi = class extends ee {
  static {
    __name(this, "Mi");
  }
  constructor(e, n, r, s) {
    super(e), this.ruleIndex = n, this.precedence = r, this.followState = s, this.serializationType = ee.RULE, this.isEpsilon = true;
  }
  matches(e, n, r) {
    return false;
  }
};
var ra = class extends ee {
  static {
    __name(this, "ra");
  }
  constructor(e, n) {
    super(e), this.serializationType = ee.SET, n != null ? this.label = n : (this.label = new cn(), this.label.addOne(B.INVALID_TYPE));
  }
  matches(e, n, r) {
    return this.label.contains(e);
  }
  toString() {
    return this.label.toString();
  }
};
var sa = class extends ra {
  static {
    __name(this, "sa");
  }
  constructor(e, n) {
    super(e, n), this.serializationType = ee.NOT_SET;
  }
  matches(e, n, r) {
    return e >= n && e <= r && !super.matches(e, n, r);
  }
  toString() {
    return "~" + super.toString();
  }
};
var W5 = class extends ee {
  static {
    __name(this, "W5");
  }
  constructor(e) {
    super(e), this.serializationType = ee.WILDCARD;
  }
  matches(e, n, r) {
    return e >= n && e <= r;
  }
  toString() {
    return ".";
  }
};
var ia = class extends ee {
  static {
    __name(this, "ia");
  }
  constructor(e) {
    super(e);
  }
};
var Q9 = class {
  static {
    __name(this, "Q9");
  }
};
var J9 = class extends Q9 {
  static {
    __name(this, "J9");
  }
};
var q5 = class extends J9 {
  static {
    __name(this, "q5");
  }
};
var Ni = class extends q5 {
  static {
    __name(this, "Ni");
  }
  getRuleContext() {
    throw new Error("missing interface implementation");
  }
};
var Wn = class extends q5 {
  static {
    __name(this, "Wn");
  }
};
var x1 = class extends Wn {
  static {
    __name(this, "x1");
  }
};
function e7(t, e) {
  return t = t.replace(/\t/g, "\\t").replace(/\n/g, "\\n").replace(/\r/g, "\\r"), e && (t = t.replace(/ /g, "\xB7")), t;
}
__name(e7, "e7");
var _n = {
  toStringTree: function(t, e, n) {
    e = e || null, n = n || null, n !== null && (e = n.ruleNames);
    let r = _n.getNodeText(t, e);
    r = e7(r, false);
    const s = t.getChildCount();
    if (s === 0)
      return r;
    let i = "(" + r + " ";
    s > 0 && (r = _n.toStringTree(t.getChild(0), e), i = i.concat(r));
    for (let o = 1; o < s; o++)
      r = _n.toStringTree(t.getChild(o), e), i = i.concat(" " + r);
    return i = i.concat(")"), i;
  },
  getNodeText: function(t, e, n) {
    if (e = e || null, n = n || null, n !== null && (e = n.ruleNames), e !== null)
      if (t instanceof Ni) {
        const i = t.getRuleContext().getAltNumber();
        return i != 0 ? e[t.ruleIndex] + ":" + i : e[t.ruleIndex];
      } else {
        if (t instanceof x1)
          return t.toString();
        if (t instanceof Wn && t.symbol !== null)
          return t.symbol.text;
      }
    const r = t.getPayload();
    return r instanceof B ? r.text : t.getPayload().toString();
  },
  getChildren: function(t) {
    const e = [];
    for (let n = 0; n < t.getChildCount(); n++)
      e.push(t.getChild(n));
    return e;
  },
  getAncestors: function(t) {
    let e = [];
    for (t = t.getParent(); t !== null; )
      e = [t].concat(e), t = t.getParent();
    return e;
  },
  findAllTokenNodes: function(t, e) {
    return _n.findAllNodes(t, e, true);
  },
  findAllRuleNodes: function(t, e) {
    return _n.findAllNodes(t, e, false);
  },
  findAllNodes: function(t, e, n) {
    const r = [];
    return _n._findAllNodes(t, e, n, r), r;
  },
  _findAllNodes: function(t, e, n, r) {
    n && t instanceof Wn ? t.symbol.type === e && r.push(t) : !n && t instanceof Ni && t.ruleIndex === e && r.push(t);
    for (let s = 0; s < t.getChildCount(); s++)
      _n._findAllNodes(t.getChild(s), e, n, r);
  },
  descendants: function(t) {
    let e = [t];
    for (let n = 0; n < t.getChildCount(); n++)
      e = e.concat(_n.descendants(t.getChild(n)));
    return e;
  }
};
var ys = class extends Ni {
  static {
    __name(this, "ys");
  }
  constructor(e, n) {
    super(), this.parentCtx = e || null, this.invokingState = n || -1;
  }
  depth() {
    let e = 0, n = this;
    for (; n !== null; )
      n = n.parentCtx, e += 1;
    return e;
  }
  isEmpty() {
    return this.invokingState === -1;
  }
  getSourceInterval() {
    return Be.INVALID_INTERVAL;
  }
  getRuleContext() {
    return this;
  }
  getPayload() {
    return this;
  }
  getText() {
    return this.getChildCount() === 0 ? "" : this.children.map(function(e) {
      return e.getText();
    }).join("");
  }
  getAltNumber() {
    return 0;
  }
  setAltNumber(e) {
  }
  getChild(e) {
    return null;
  }
  getChildCount() {
    return 0;
  }
  accept(e) {
    return e.visitChildren(this);
  }
  toStringTree(e, n) {
    return _n.toStringTree(this, e, n);
  }
  toString(e, n) {
    e = e || null, n = n || null;
    let r = this, s = "[";
    for (; r !== null && r !== n; ) {
      if (e === null)
        r.isEmpty() || (s += r.invokingState);
      else {
        const i = r.ruleIndex, o = i >= 0 && i < e.length ? e[i] : "" + i;
        s += o;
      }
      r.parentCtx !== null && (e !== null || !r.parentCtx.isEmpty()) && (s += " "), r = r.parentCtx;
    }
    return s += "]", s;
  }
};
var Te = class _Te {
  static {
    __name(this, "Te");
  }
  constructor(e) {
    this.cachedHashCode = e;
  }
  isEmpty() {
    return this === _Te.EMPTY;
  }
  hasEmptyPath() {
    return this.getReturnState(this.length - 1) === _Te.EMPTY_RETURN_STATE;
  }
  hashCode() {
    return this.cachedHashCode;
  }
  updateHashCode(e) {
    e.update(this.cachedHashCode);
  }
};
Te.EMPTY = null;
Te.EMPTY_RETURN_STATE = 2147483647;
Te.globalNodeCount = 1;
Te.id = Te.globalNodeCount;
var Mn = class _Mn extends Te {
  static {
    __name(this, "Mn");
  }
  constructor(e, n) {
    const r = new en();
    r.update(e, n);
    const s = r.finish();
    return super(s), this.parents = e, this.returnStates = n, this;
  }
  isEmpty() {
    return this.returnStates[0] === Te.EMPTY_RETURN_STATE;
  }
  getParent(e) {
    return this.parents[e];
  }
  getReturnState(e) {
    return this.returnStates[e];
  }
  equals(e) {
    return this === e ? true : e instanceof _Mn ? this.hashCode() !== e.hashCode() ? false : _s(this.returnStates, e.returnStates) && _s(this.parents, e.parents) : false;
  }
  toString() {
    if (this.isEmpty())
      return "[]";
    {
      let e = "[";
      for (let n = 0; n < this.returnStates.length; n++) {
        if (n > 0 && (e = e + ", "), this.returnStates[n] === Te.EMPTY_RETURN_STATE) {
          e = e + "$";
          continue;
        }
        e = e + this.returnStates[n], this.parents[n] !== null ? e = e + " " + this.parents[n] : e = e + "null";
      }
      return e + "]";
    }
  }
  get length() {
    return this.returnStates.length;
  }
};
var Rt = class _Rt extends Te {
  static {
    __name(this, "Rt");
  }
  constructor(e, n) {
    let r = 0;
    const s = new en();
    e !== null ? s.update(e, n) : s.update(1), r = s.finish(), super(r), this.parentCtx = e, this.returnState = n;
  }
  getParent(e) {
    return this.parentCtx;
  }
  getReturnState(e) {
    return this.returnState;
  }
  equals(e) {
    return this === e ? true : e instanceof _Rt ? this.hashCode() !== e.hashCode() || this.returnState !== e.returnState ? false : this.parentCtx == null ? e.parentCtx == null : this.parentCtx.equals(e.parentCtx) : false;
  }
  toString() {
    const e = this.parentCtx === null ? "" : this.parentCtx.toString();
    return e.length === 0 ? this.returnState === Te.EMPTY_RETURN_STATE ? "$" : "" + this.returnState : "" + this.returnState + " " + e;
  }
  get length() {
    return 1;
  }
  static create(e, n) {
    return n === Te.EMPTY_RETURN_STATE && e === null ? Te.EMPTY : new _Rt(e, n);
  }
};
var zo = class extends Rt {
  static {
    __name(this, "zo");
  }
  constructor() {
    super(null, Te.EMPTY_RETURN_STATE);
  }
  isEmpty() {
    return true;
  }
  getParent(e) {
    return null;
  }
  getReturnState(e) {
    return this.returnState;
  }
  equals(e) {
    return this === e;
  }
  toString() {
    return "$";
  }
};
Te.EMPTY = new zo();
var Vs = "h-";
var F0 = class {
  static {
    __name(this, "F0");
  }
  constructor(e, n) {
    this.data = {}, this.hashFunction = e || G5, this.equalsFunction = n || j5;
  }
  set(e, n) {
    const r = Vs + this.hashFunction(e);
    if (r in this.data) {
      const s = this.data[r];
      for (let i = 0; i < s.length; i++) {
        const o = s[i];
        if (this.equalsFunction(e, o.key)) {
          const l = o.value;
          return o.value = n, l;
        }
      }
      return s.push({ key: e, value: n }), n;
    } else
      return this.data[r] = [{ key: e, value: n }], n;
  }
  containsKey(e) {
    const n = Vs + this.hashFunction(e);
    if (n in this.data) {
      const r = this.data[n];
      for (let s = 0; s < r.length; s++) {
        const i = r[s];
        if (this.equalsFunction(e, i.key))
          return true;
      }
    }
    return false;
  }
  get(e) {
    const n = Vs + this.hashFunction(e);
    if (n in this.data) {
      const r = this.data[n];
      for (let s = 0; s < r.length; s++) {
        const i = r[s];
        if (this.equalsFunction(e, i.key))
          return i.value;
      }
    }
    return null;
  }
  entries() {
    return Object.keys(this.data).filter((e) => e.startsWith(Vs)).flatMap((e) => this.data[e], this);
  }
  getKeys() {
    return this.entries().map((e) => e.key);
  }
  getValues() {
    return this.entries().map((e) => e.value);
  }
  toString() {
    return "[" + this.entries().map((n) => "{" + n.key + ":" + n.value + "}").join(", ") + "]";
  }
  get length() {
    return Object.keys(this.data).filter((e) => e.startsWith(Vs)).map((e) => this.data[e].length, this).reduce((e, n) => e + n, 0);
  }
};
function oa(t, e) {
  if (e == null && (e = ys.EMPTY), e.parentCtx === null || e === ys.EMPTY)
    return Te.EMPTY;
  const n = oa(t, e.parentCtx), s = t.states[e.invokingState].transitions[0];
  return Rt.create(n, s.followState.stateNumber);
}
__name(oa, "oa");
function K5(t, e, n) {
  if (t.isEmpty())
    return t;
  let r = n.get(t) || null;
  if (r !== null)
    return r;
  if (r = e.get(t), r !== null)
    return n.set(t, r), r;
  let s = false, i = [];
  for (let l = 0; l < i.length; l++) {
    const a = K5(t.getParent(l), e, n);
    if (s || a !== t.getParent(l)) {
      if (!s) {
        i = [];
        for (let c = 0; c < t.length; c++)
          i[c] = t.getParent(c);
        s = true;
      }
      i[l] = a;
    }
  }
  if (!s)
    return e.add(t), n.set(t, t), t;
  let o = null;
  return i.length === 0 ? o = Te.EMPTY : i.length === 1 ? o = Rt.create(i[0], t.getReturnState(0)) : o = new Mn(i, t.returnStates), e.add(o), n.set(o, o), n.set(t, o), o;
}
__name(K5, "K5");
function la(t, e, n, r) {
  if (t === e)
    return t;
  if (t instanceof Rt && e instanceof Rt)
    return r7(t, e, n, r);
  if (n) {
    if (t instanceof zo)
      return t;
    if (e instanceof zo)
      return e;
  }
  return t instanceof Rt && (t = new Mn([t.getParent()], [t.returnState])), e instanceof Rt && (e = new Mn([e.getParent()], [e.returnState])), t7(t, e, n, r);
}
__name(la, "la");
function t7(t, e, n, r) {
  if (r !== null) {
    let u = r.get(t, e);
    if (u !== null || (u = r.get(e, t), u !== null))
      return u;
  }
  let s = 0, i = 0, o = 0, l = [], a = [];
  for (; s < t.returnStates.length && i < e.returnStates.length; ) {
    const u = t.parents[s], h = e.parents[i];
    if (t.returnStates[s] === e.returnStates[i]) {
      const f = t.returnStates[s];
      f === Te.EMPTY_RETURN_STATE && u === null && h === null || u !== null && h !== null && u === h ? (a[o] = u, l[o] = f) : (a[o] = la(u, h, n, r), l[o] = f), s += 1, i += 1;
    } else
      t.returnStates[s] < e.returnStates[i] ? (a[o] = u, l[o] = t.returnStates[s], s += 1) : (a[o] = h, l[o] = e.returnStates[i], i += 1);
    o += 1;
  }
  if (s < t.returnStates.length)
    for (let u = s; u < t.returnStates.length; u++)
      a[o] = t.parents[u], l[o] = t.returnStates[u], o += 1;
  else
    for (let u = i; u < e.returnStates.length; u++)
      a[o] = e.parents[u], l[o] = e.returnStates[u], o += 1;
  if (o < a.length) {
    if (o === 1) {
      const u = Rt.create(
        a[0],
        l[0]
      );
      return r !== null && r.set(t, e, u), u;
    }
    a = a.slice(0, o), l = l.slice(0, o);
  }
  const c = new Mn(a, l);
  return c === t ? (r !== null && r.set(t, e, t), t) : c === e ? (r !== null && r.set(t, e, e), e) : (n7(a), r !== null && r.set(t, e, c), c);
}
__name(t7, "t7");
function n7(t) {
  const e = new F0();
  for (let n = 0; n < t.length; n++) {
    const r = t[n];
    e.containsKey(r) || e.set(r, r);
  }
  for (let n = 0; n < t.length; n++)
    t[n] = e.get(t[n]);
}
__name(n7, "n7");
function r7(t, e, n, r) {
  if (r !== null) {
    let i = r.get(t, e);
    if (i !== null || (i = r.get(e, t), i !== null))
      return i;
  }
  const s = s7(t, e, n);
  if (s !== null)
    return r !== null && r.set(t, e, s), s;
  if (t.returnState === e.returnState) {
    const i = la(t.parentCtx, e.parentCtx, n, r);
    if (i === t.parentCtx)
      return t;
    if (i === e.parentCtx)
      return e;
    const o = Rt.create(i, t.returnState);
    return r !== null && r.set(t, e, o), o;
  } else {
    let i = null;
    if ((t === e || t.parentCtx !== null && t.parentCtx === e.parentCtx) && (i = t.parentCtx), i !== null) {
      const c = [t.returnState, e.returnState];
      t.returnState > e.returnState && (c[0] = e.returnState, c[1] = t.returnState);
      const u = [i, i], h = new Mn(u, c);
      return r !== null && r.set(t, e, h), h;
    }
    const o = [t.returnState, e.returnState];
    let l = [t.parentCtx, e.parentCtx];
    t.returnState > e.returnState && (o[0] = e.returnState, o[1] = t.returnState, l = [e.parentCtx, t.parentCtx]);
    const a = new Mn(l, o);
    return r !== null && r.set(t, e, a), a;
  }
}
__name(r7, "r7");
function s7(t, e, n) {
  if (n) {
    if (t === Te.EMPTY || e === Te.EMPTY)
      return Te.EMPTY;
  } else {
    if (t === Te.EMPTY && e === Te.EMPTY)
      return Te.EMPTY;
    if (t === Te.EMPTY) {
      const r = [
        e.returnState,
        Te.EMPTY_RETURN_STATE
      ], s = [e.parentCtx, null];
      return new Mn(s, r);
    } else if (e === Te.EMPTY) {
      const r = [t.returnState, Te.EMPTY_RETURN_STATE], s = [t.parentCtx, null];
      return new Mn(s, r);
    }
  }
  return null;
}
__name(s7, "s7");
var Tn = class _Tn {
  static {
    __name(this, "Tn");
  }
  constructor() {
    this.data = [];
  }
  add(e) {
    this.data[e] = true;
  }
  or(e) {
    Object.keys(e.data).map((n) => this.add(n), this);
  }
  remove(e) {
    delete this.data[e];
  }
  has(e) {
    return this.data[e] === true;
  }
  values() {
    return Object.keys(this.data);
  }
  minValue() {
    return Math.min.apply(null, this.values());
  }
  hashCode() {
    return en.hashStuff(this.values());
  }
  equals(e) {
    return e instanceof _Tn && _s(this.data, e.data);
  }
  toString() {
    return "{" + this.values().join(", ") + "}";
  }
  get length() {
    return this.values().length;
  }
};
var Cs = class _Cs {
  static {
    __name(this, "Cs");
  }
  constructor(e) {
    this.atn = e;
  }
  getDecisionLookahead(e) {
    if (e === null)
      return null;
    const n = e.transitions.length, r = [];
    for (let s = 0; s < n; s++) {
      r[s] = new cn();
      const i = new Xt(), o = false;
      this._LOOK(
        e.transition(s).target,
        null,
        Te.EMPTY,
        r[s],
        i,
        new Tn(),
        o,
        false
      ), (r[s].length === 0 || r[s].contains(_Cs.HIT_PRED)) && (r[s] = null);
    }
    return r;
  }
  LOOK(e, n, r) {
    const s = new cn(), i = true;
    r = r || null;
    const o = r !== null ? oa(e.atn, r) : null;
    return this._LOOK(e, n, o, s, new Xt(), new Tn(), i, true), s;
  }
  _LOOK(e, n, r, s, i, o, l, a) {
    const c = new ot({ state: e, alt: 0, context: r }, null);
    if (!i.has(c)) {
      if (i.add(c), e === n) {
        if (r === null) {
          s.addOne(B.EPSILON);
          return;
        } else if (r.isEmpty() && a) {
          s.addOne(B.EOF);
          return;
        }
      }
      if (e instanceof At) {
        if (r === null) {
          s.addOne(B.EPSILON);
          return;
        } else if (r.isEmpty() && a) {
          s.addOne(B.EOF);
          return;
        }
        if (r !== Te.EMPTY) {
          const u = o.has(e.ruleIndex);
          try {
            o.remove(e.ruleIndex);
            for (let h = 0; h < r.length; h++) {
              const f = this.atn.states[r.getReturnState(h)];
              this._LOOK(f, n, r.getParent(h), s, i, o, l, a);
            }
          } finally {
            u && o.add(e.ruleIndex);
          }
          return;
        }
      }
      for (let u = 0; u < e.transitions.length; u++) {
        const h = e.transitions[u];
        if (h.constructor === Mi) {
          if (o.has(h.target.ruleIndex))
            continue;
          const f = Rt.create(r, h.followState.stateNumber);
          try {
            o.add(h.target.ruleIndex), this._LOOK(h.target, n, f, s, i, o, l, a);
          } finally {
            o.remove(h.target.ruleIndex);
          }
        } else if (h instanceof ia)
          l ? this._LOOK(h.target, n, r, s, i, o, l, a) : s.addOne(_Cs.HIT_PRED);
        else if (h.isEpsilon)
          this._LOOK(h.target, n, r, s, i, o, l, a);
        else if (h.constructor === W5)
          s.addRange(B.MIN_USER_TOKEN_TYPE, this.atn.maxTokenType);
        else {
          let f = h.label;
          f !== null && (h instanceof sa && (f = f.complement(B.MIN_USER_TOKEN_TYPE, this.atn.maxTokenType)), s.addSet(f));
        }
      }
    }
  }
};
Cs.HIT_PRED = B.INVALID_TYPE;
var et = class {
  static {
    __name(this, "et");
  }
  constructor(e, n) {
    this.grammarType = e, this.maxTokenType = n, this.states = [], this.decisionToState = [], this.ruleToStartState = [], this.ruleToStopState = null, this.modeNameToStartState = {}, this.ruleToTokenType = null, this.lexerActions = null, this.modeToStartState = [];
  }
  nextTokensInContext(e, n) {
    return new Cs(this).LOOK(e, null, n);
  }
  nextTokensNoContext(e) {
    return e.nextTokenWithinRule !== null || (e.nextTokenWithinRule = this.nextTokensInContext(e, null), e.nextTokenWithinRule.readOnly = true), e.nextTokenWithinRule;
  }
  nextTokens(e, n) {
    return n === void 0 ? this.nextTokensNoContext(e) : this.nextTokensInContext(e, n);
  }
  addState(e) {
    e !== null && (e.atn = this, e.stateNumber = this.states.length), this.states.push(e);
  }
  removeState(e) {
    this.states[e.stateNumber] = null;
  }
  defineDecisionState(e) {
    return this.decisionToState.push(e), e.decision = this.decisionToState.length - 1, e.decision;
  }
  getDecisionState(e) {
    return this.decisionToState.length === 0 ? null : this.decisionToState[e];
  }
  getExpectedTokens(e, n) {
    if (e < 0 || e >= this.states.length)
      throw "Invalid state number.";
    const r = this.states[e];
    let s = this.nextTokens(r);
    if (!s.contains(B.EPSILON))
      return s;
    const i = new cn();
    for (i.addSet(s), i.removeOne(B.EPSILON); n !== null && n.invokingState >= 0 && s.contains(B.EPSILON); ) {
      const l = this.states[n.invokingState].transitions[0];
      s = this.nextTokens(l.followState), i.addSet(s), i.removeOne(B.EPSILON), n = n.parentCtx;
    }
    return s.contains(B.EPSILON) && i.addOne(B.EOF), i;
  }
};
et.INVALID_ALT_NUMBER = 0;
var hi = {
  LEXER: 0,
  PARSER: 1
};
var v2 = class extends oe {
  static {
    __name(this, "v2");
  }
  constructor() {
    super(), this.stateType = oe.BASIC;
  }
};
var Os = class extends oe {
  static {
    __name(this, "Os");
  }
  constructor() {
    return super(), this.decision = -1, this.nonGreedy = false, this;
  }
};
var ds = class extends Os {
  static {
    __name(this, "ds");
  }
  constructor() {
    return super(), this.endState = null, this;
  }
};
var no = class extends oe {
  static {
    __name(this, "no");
  }
  constructor() {
    return super(), this.stateType = oe.BLOCK_END, this.startState = null, this;
  }
};
var Jr = class extends oe {
  static {
    __name(this, "Jr");
  }
  constructor() {
    return super(), this.stateType = oe.LOOP_END, this.loopBackState = null, this;
  }
};
var b2 = class extends oe {
  static {
    __name(this, "b2");
  }
  constructor() {
    return super(), this.stateType = oe.RULE_START, this.stopState = null, this.isPrecedenceRule = false, this;
  }
};
var i7 = class extends Os {
  static {
    __name(this, "i7");
  }
  constructor() {
    return super(), this.stateType = oe.TOKEN_START, this;
  }
};
var w2 = class extends Os {
  static {
    __name(this, "w2");
  }
  constructor() {
    return super(), this.stateType = oe.PLUS_LOOP_BACK, this;
  }
};
var ro = class extends oe {
  static {
    __name(this, "ro");
  }
  constructor() {
    return super(), this.stateType = oe.STAR_LOOP_BACK, this;
  }
};
var br = class extends Os {
  static {
    __name(this, "br");
  }
  constructor() {
    return super(), this.stateType = oe.STAR_LOOP_ENTRY, this.loopBackState = null, this.isPrecedenceDecision = null, this;
  }
};
var so = class extends ds {
  static {
    __name(this, "so");
  }
  constructor() {
    return super(), this.stateType = oe.PLUS_BLOCK_START, this.loopBackState = null, this;
  }
};
var io = class extends ds {
  static {
    __name(this, "io");
  }
  constructor() {
    return super(), this.stateType = oe.STAR_BLOCK_START, this;
  }
};
var E2 = class extends ds {
  static {
    __name(this, "E2");
  }
  constructor() {
    return super(), this.stateType = oe.BLOCK_START, this;
  }
};
var vi = class extends ee {
  static {
    __name(this, "vi");
  }
  constructor(e, n) {
    super(e), this.label_ = n, this.label = this.makeLabel(), this.serializationType = ee.ATOM;
  }
  makeLabel() {
    const e = new cn();
    return e.addOne(this.label_), e;
  }
  matches(e, n, r) {
    return this.label_ === e;
  }
  toString() {
    return this.label_;
  }
};
var T2 = class extends ee {
  static {
    __name(this, "T2");
  }
  constructor(e, n, r) {
    super(e), this.serializationType = ee.RANGE, this.start = n, this.stop = r, this.label = this.makeLabel();
  }
  makeLabel() {
    const e = new cn();
    return e.addRange(this.start, this.stop), e;
  }
  matches(e, n, r) {
    return e >= this.start && e <= this.stop;
  }
  toString() {
    return "'" + String.fromCharCode(this.start) + "'..'" + String.fromCharCode(this.stop) + "'";
  }
};
var Y5 = class extends ee {
  static {
    __name(this, "Y5");
  }
  constructor(e, n, r, s) {
    super(e), this.serializationType = ee.ACTION, this.ruleIndex = n, this.actionIndex = r === void 0 ? -1 : r, this.isCtxDependent = s === void 0 ? false : s, this.isEpsilon = true;
  }
  matches(e, n, r) {
    return false;
  }
  toString() {
    return "action_" + this.ruleIndex + ":" + this.actionIndex;
  }
};
var zs = class extends ee {
  static {
    __name(this, "zs");
  }
  constructor(e, n) {
    super(e), this.serializationType = ee.EPSILON, this.isEpsilon = true, this.outermostPrecedenceReturn = n;
  }
  matches(e, n, r) {
    return false;
  }
  toString() {
    return "epsilon";
  }
};
var L1 = class _L1 extends $e {
  static {
    __name(this, "L1");
  }
  constructor(e, n, r) {
    super(), this.ruleIndex = e === void 0 ? -1 : e, this.predIndex = n === void 0 ? -1 : n, this.isCtxDependent = r === void 0 ? false : r;
  }
  evaluate(e, n) {
    const r = this.isCtxDependent ? n : null;
    return e.sempred(r, this.ruleIndex, this.predIndex);
  }
  updateHashCode(e) {
    e.update(this.ruleIndex, this.predIndex, this.isCtxDependent);
  }
  equals(e) {
    return this === e ? true : e instanceof _L1 ? this.ruleIndex === e.ruleIndex && this.predIndex === e.predIndex && this.isCtxDependent === e.isCtxDependent : false;
  }
  toString() {
    return "{" + this.ruleIndex + ":" + this.predIndex + "}?";
  }
};
$e.NONE = new L1();
var X5 = class extends ia {
  static {
    __name(this, "X5");
  }
  constructor(e, n, r, s) {
    super(e), this.serializationType = ee.PREDICATE, this.ruleIndex = n, this.predIndex = r, this.isCtxDependent = s, this.isEpsilon = true;
  }
  matches(e, n, r) {
    return false;
  }
  getPredicate() {
    return new L1(this.ruleIndex, this.predIndex, this.isCtxDependent);
  }
  toString() {
    return "pred_" + this.ruleIndex + ":" + this.predIndex;
  }
};
var _1 = class __1 extends $e {
  static {
    __name(this, "_1");
  }
  constructor(e) {
    super(), this.precedence = e === void 0 ? 0 : e;
  }
  evaluate(e, n) {
    return e.precpred(n, this.precedence);
  }
  evalPrecedence(e, n) {
    return e.precpred(n, this.precedence) ? $e.NONE : null;
  }
  compareTo(e) {
    return this.precedence - e.precedence;
  }
  updateHashCode(e) {
    e.update(this.precedence);
  }
  equals(e) {
    return this === e ? true : e instanceof __1 ? this.precedence === e.precedence : false;
  }
  toString() {
    return "{" + this.precedence + ">=prec}?";
  }
};
$e.PrecedencePredicate = _1;
var o7 = class extends ia {
  static {
    __name(this, "o7");
  }
  constructor(e, n) {
    super(e), this.serializationType = ee.PRECEDENCE, this.precedence = n, this.isEpsilon = true;
  }
  matches(e, n, r) {
    return false;
  }
  getPredicate() {
    return new _1(this.precedence);
  }
  toString() {
    return this.precedence + " >= _p";
  }
};
var L0 = class {
  static {
    __name(this, "L0");
  }
  constructor(e) {
    e === void 0 && (e = null), this.readOnly = false, this.verifyATN = e === null ? true : e.verifyATN, this.generateRuleBypassTransitions = e === null ? false : e.generateRuleBypassTransitions;
  }
};
L0.defaultOptions = new L0();
L0.defaultOptions.readOnly = true;
var Ct = {
  CHANNEL: 0,
  CUSTOM: 1,
  MODE: 2,
  MORE: 3,
  POP_MODE: 4,
  PUSH_MODE: 5,
  SKIP: 6,
  TYPE: 7
};
var Qn = class {
  static {
    __name(this, "Qn");
  }
  constructor(e) {
    this.actionType = e, this.isPositionDependent = false;
  }
  hashCode() {
    const e = new en();
    return this.updateHashCode(e), e.finish();
  }
  updateHashCode(e) {
    e.update(this.actionType);
  }
  equals(e) {
    return this === e;
  }
};
var Go = class extends Qn {
  static {
    __name(this, "Go");
  }
  constructor() {
    super(Ct.SKIP);
  }
  execute(e) {
    e.skip();
  }
  toString() {
    return "skip";
  }
};
Go.INSTANCE = new Go();
var aa = class _aa extends Qn {
  static {
    __name(this, "aa");
  }
  constructor(e) {
    super(Ct.CHANNEL), this.channel = e;
  }
  execute(e) {
    e._channel = this.channel;
  }
  updateHashCode(e) {
    e.update(this.actionType, this.channel);
  }
  equals(e) {
    return this === e ? true : e instanceof _aa ? this.channel === e.channel : false;
  }
  toString() {
    return "channel(" + this.channel + ")";
  }
};
var ca = class _ca extends Qn {
  static {
    __name(this, "ca");
  }
  constructor(e, n) {
    super(Ct.CUSTOM), this.ruleIndex = e, this.actionIndex = n, this.isPositionDependent = true;
  }
  execute(e) {
    e.action(null, this.ruleIndex, this.actionIndex);
  }
  updateHashCode(e) {
    e.update(this.actionType, this.ruleIndex, this.actionIndex);
  }
  equals(e) {
    return this === e ? true : e instanceof _ca ? this.ruleIndex === e.ruleIndex && this.actionIndex === e.actionIndex : false;
  }
};
var jo = class extends Qn {
  static {
    __name(this, "jo");
  }
  constructor() {
    super(Ct.MORE);
  }
  execute(e) {
    e.more();
  }
  toString() {
    return "more";
  }
};
jo.INSTANCE = new jo();
var ua = class _ua extends Qn {
  static {
    __name(this, "ua");
  }
  constructor(e) {
    super(Ct.TYPE), this.type = e;
  }
  execute(e) {
    e.type = this.type;
  }
  updateHashCode(e) {
    e.update(this.actionType, this.type);
  }
  equals(e) {
    return this === e ? true : e instanceof _ua ? this.type === e.type : false;
  }
  toString() {
    return "type(" + this.type + ")";
  }
};
var ha = class _ha extends Qn {
  static {
    __name(this, "ha");
  }
  constructor(e) {
    super(Ct.PUSH_MODE), this.mode = e;
  }
  execute(e) {
    e.pushMode(this.mode);
  }
  updateHashCode(e) {
    e.update(this.actionType, this.mode);
  }
  equals(e) {
    return this === e ? true : e instanceof _ha ? this.mode === e.mode : false;
  }
  toString() {
    return "pushMode(" + this.mode + ")";
  }
};
var Zo = class extends Qn {
  static {
    __name(this, "Zo");
  }
  constructor() {
    super(Ct.POP_MODE);
  }
  execute(e) {
    e.popMode();
  }
  toString() {
    return "popMode";
  }
};
Zo.INSTANCE = new Zo();
var da = class _da extends Qn {
  static {
    __name(this, "da");
  }
  constructor(e) {
    super(Ct.MODE), this.mode = e;
  }
  execute(e) {
    e.mode(this.mode);
  }
  updateHashCode(e) {
    e.update(this.actionType, this.mode);
  }
  equals(e) {
    return this === e ? true : e instanceof _da ? this.mode === e.mode : false;
  }
  toString() {
    return "mode(" + this.mode + ")";
  }
};
var oo = 4;
function di(t, e) {
  const n = [];
  return n[t - 1] = e, n.map(function(r) {
    return e;
  });
}
__name(di, "di");
var Q5 = class {
  static {
    __name(this, "Q5");
  }
  constructor(e) {
    e == null && (e = L0.defaultOptions), this.deserializationOptions = e, this.stateFactories = null, this.actionFactories = null;
  }
  deserialize(e) {
    const n = this.reset(e);
    this.checkVersion(n), n && this.skipUUID();
    const r = this.readATN();
    this.readStates(r, n), this.readRules(r, n), this.readModes(r);
    const s = [];
    return this.readSets(r, s, this.readInt.bind(this)), n && this.readSets(r, s, this.readInt32.bind(this)), this.readEdges(r, s), this.readDecisions(r), this.readLexerActions(r, n), this.markPrecedenceDecisions(r), this.verifyATN(r), this.deserializationOptions.generateRuleBypassTransitions && r.grammarType === hi.PARSER && (this.generateRuleBypassTransitions(r), this.verifyATN(r)), r;
  }
  reset(e) {
    if ((e.charCodeAt ? e.charCodeAt(0) : e[0]) === oo - 1) {
      const r = /* @__PURE__ */ __name(function(i) {
        const o = i.charCodeAt(0);
        return o > 1 ? o - 2 : o + 65534;
      }, "r"), s = e.split("").map(r);
      return s[0] = e.charCodeAt(0), this.data = s, this.pos = 0, true;
    } else
      return this.data = e, this.pos = 0, false;
  }
  skipUUID() {
    let e = 0;
    for (; e++ < 8; )
      this.readInt();
  }
  checkVersion(e) {
    const n = this.readInt();
    if (!e && n !== oo)
      throw "Could not deserialize ATN with version " + n + " (expected " + oo + ").";
  }
  readATN() {
    const e = this.readInt(), n = this.readInt();
    return new et(e, n);
  }
  readStates(e, n) {
    let r, s, i;
    const o = [], l = [], a = this.readInt();
    for (let h = 0; h < a; h++) {
      const f = this.readInt();
      if (f === oe.INVALID_TYPE) {
        e.addState(null);
        continue;
      }
      let p = this.readInt();
      n && p === 65535 && (p = -1);
      const x = this.stateFactory(f, p);
      if (f === oe.LOOP_END) {
        const y = this.readInt();
        o.push([x, y]);
      } else if (x instanceof ds) {
        const y = this.readInt();
        l.push([x, y]);
      }
      e.addState(x);
    }
    for (r = 0; r < o.length; r++)
      s = o[r], s[0].loopBackState = e.states[s[1]];
    for (r = 0; r < l.length; r++)
      s = l[r], s[0].endState = e.states[s[1]];
    let c = this.readInt();
    for (r = 0; r < c; r++)
      i = this.readInt(), e.states[i].nonGreedy = true;
    let u = this.readInt();
    for (r = 0; r < u; r++)
      i = this.readInt(), e.states[i].isPrecedenceRule = true;
  }
  readRules(e, n) {
    let r;
    const s = this.readInt();
    for (e.grammarType === hi.LEXER && (e.ruleToTokenType = di(s, 0)), e.ruleToStartState = di(s, 0), r = 0; r < s; r++) {
      const i = this.readInt();
      if (e.ruleToStartState[r] = e.states[i], e.grammarType === hi.LEXER) {
        let o = this.readInt();
        n && o === 65535 && (o = B.EOF), e.ruleToTokenType[r] = o;
      }
    }
    for (e.ruleToStopState = di(s, 0), r = 0; r < e.states.length; r++) {
      const i = e.states[r];
      i instanceof At && (e.ruleToStopState[i.ruleIndex] = i, e.ruleToStartState[i.ruleIndex].stopState = i);
    }
  }
  readModes(e) {
    const n = this.readInt();
    for (let r = 0; r < n; r++) {
      let s = this.readInt();
      e.modeToStartState.push(e.states[s]);
    }
  }
  readSets(e, n, r) {
    const s = this.readInt();
    for (let i = 0; i < s; i++) {
      const o = new cn();
      n.push(o);
      const l = this.readInt();
      this.readInt() !== 0 && o.addOne(-1);
      for (let c = 0; c < l; c++) {
        const u = r(), h = r();
        o.addRange(u, h);
      }
    }
  }
  readEdges(e, n) {
    let r, s, i, o, l;
    const a = this.readInt();
    for (r = 0; r < a; r++) {
      const c = this.readInt(), u = this.readInt(), h = this.readInt(), f = this.readInt(), p = this.readInt(), x = this.readInt();
      o = this.edgeFactory(e, h, c, u, f, p, x, n), e.states[c].addTransition(o);
    }
    for (r = 0; r < e.states.length; r++)
      for (i = e.states[r], s = 0; s < i.transitions.length; s++) {
        const c = i.transitions[s];
        if (!(c instanceof Mi))
          continue;
        let u = -1;
        e.ruleToStartState[c.target.ruleIndex].isPrecedenceRule && c.precedence === 0 && (u = c.target.ruleIndex), o = new zs(c.followState, u), e.ruleToStopState[c.target.ruleIndex].addTransition(o);
      }
    for (r = 0; r < e.states.length; r++) {
      if (i = e.states[r], i instanceof ds) {
        if (i.endState === null || i.endState.startState !== null)
          throw "IllegalState";
        i.endState.startState = i;
      }
      if (i instanceof w2)
        for (s = 0; s < i.transitions.length; s++)
          l = i.transitions[s].target, l instanceof so && (l.loopBackState = i);
      else if (i instanceof ro)
        for (s = 0; s < i.transitions.length; s++)
          l = i.transitions[s].target, l instanceof br && (l.loopBackState = i);
    }
  }
  readDecisions(e) {
    const n = this.readInt();
    for (let r = 0; r < n; r++) {
      const s = this.readInt(), i = e.states[s];
      e.decisionToState.push(i), i.decision = r;
    }
  }
  readLexerActions(e, n) {
    if (e.grammarType === hi.LEXER) {
      const r = this.readInt();
      e.lexerActions = di(r, null);
      for (let s = 0; s < r; s++) {
        const i = this.readInt();
        let o = this.readInt();
        n && o === 65535 && (o = -1);
        let l = this.readInt();
        n && l === 65535 && (l = -1), e.lexerActions[s] = this.lexerActionFactory(i, o, l);
      }
    }
  }
  generateRuleBypassTransitions(e) {
    let n;
    const r = e.ruleToStartState.length;
    for (n = 0; n < r; n++)
      e.ruleToTokenType[n] = e.maxTokenType + n + 1;
    for (n = 0; n < r; n++)
      this.generateRuleBypassTransition(e, n);
  }
  generateRuleBypassTransition(e, n) {
    let r, s;
    const i = new E2();
    i.ruleIndex = n, e.addState(i);
    const o = new no();
    o.ruleIndex = n, e.addState(o), i.endState = o, e.defineDecisionState(i), o.startState = i;
    let l = null, a = null;
    if (e.ruleToStartState[n].isPrecedenceRule) {
      for (a = null, r = 0; r < e.states.length; r++)
        if (s = e.states[r], this.stateIsEndStateFor(s, n)) {
          a = s, l = s.loopBackState.transitions[0];
          break;
        }
      if (l === null)
        throw "Couldn't identify final state of the precedence rule prefix section.";
    } else
      a = e.ruleToStopState[n];
    for (r = 0; r < e.states.length; r++) {
      s = e.states[r];
      for (let f = 0; f < s.transitions.length; f++) {
        const p = s.transitions[f];
        p !== l && p.target === a && (p.target = o);
      }
    }
    const c = e.ruleToStartState[n], u = c.transitions.length;
    for (; u > 0; )
      i.addTransition(c.transitions[u - 1]), c.transitions = c.transitions.slice(-1);
    e.ruleToStartState[n].addTransition(new zs(i)), o.addTransition(new zs(a));
    const h = new v2();
    e.addState(h), h.addTransition(new vi(o, e.ruleToTokenType[n])), i.addTransition(new zs(h));
  }
  stateIsEndStateFor(e, n) {
    if (e.ruleIndex !== n || !(e instanceof br))
      return null;
    const r = e.transitions[e.transitions.length - 1].target;
    return r instanceof Jr && r.epsilonOnlyTransitions && r.transitions[0].target instanceof At ? e : null;
  }
  markPrecedenceDecisions(e) {
    for (let n = 0; n < e.states.length; n++) {
      const r = e.states[n];
      if (r instanceof br && e.ruleToStartState[r.ruleIndex].isPrecedenceRule) {
        const s = r.transitions[r.transitions.length - 1].target;
        s instanceof Jr && s.epsilonOnlyTransitions && s.transitions[0].target instanceof At && (r.isPrecedenceDecision = true);
      }
    }
  }
  verifyATN(e) {
    if (!!this.deserializationOptions.verifyATN)
      for (let n = 0; n < e.states.length; n++) {
        const r = e.states[n];
        if (r !== null)
          if (this.checkCondition(r.epsilonOnlyTransitions || r.transitions.length <= 1), r instanceof so)
            this.checkCondition(r.loopBackState !== null);
          else if (r instanceof br)
            if (this.checkCondition(r.loopBackState !== null), this.checkCondition(r.transitions.length === 2), r.transitions[0].target instanceof io)
              this.checkCondition(r.transitions[1].target instanceof Jr), this.checkCondition(!r.nonGreedy);
            else if (r.transitions[0].target instanceof Jr)
              this.checkCondition(r.transitions[1].target instanceof io), this.checkCondition(r.nonGreedy);
            else
              throw "IllegalState";
          else
            r instanceof ro ? (this.checkCondition(r.transitions.length === 1), this.checkCondition(r.transitions[0].target instanceof br)) : r instanceof Jr ? this.checkCondition(r.loopBackState !== null) : r instanceof b2 ? this.checkCondition(r.stopState !== null) : r instanceof ds ? this.checkCondition(r.endState !== null) : r instanceof no ? this.checkCondition(r.startState !== null) : r instanceof Os ? this.checkCondition(r.transitions.length <= 1 || r.decision >= 0) : this.checkCondition(r.transitions.length <= 1 || r instanceof At);
      }
  }
  checkCondition(e, n) {
    if (!e)
      throw n == null && (n = "IllegalState"), n;
  }
  readInt() {
    return this.data[this.pos++];
  }
  readInt32() {
    const e = this.readInt(), n = this.readInt();
    return e | n << 16;
  }
  edgeFactory(e, n, r, s, i, o, l, a) {
    const c = e.states[s];
    switch (n) {
      case ee.EPSILON:
        return new zs(c);
      case ee.RANGE:
        return l !== 0 ? new T2(c, B.EOF, o) : new T2(c, i, o);
      case ee.RULE:
        return new Mi(e.states[i], o, l, c);
      case ee.PREDICATE:
        return new X5(c, i, o, l !== 0);
      case ee.PRECEDENCE:
        return new o7(c, i);
      case ee.ATOM:
        return l !== 0 ? new vi(c, B.EOF) : new vi(c, i);
      case ee.ACTION:
        return new Y5(c, i, o, l !== 0);
      case ee.SET:
        return new ra(c, a[i]);
      case ee.NOT_SET:
        return new sa(c, a[i]);
      case ee.WILDCARD:
        return new W5(c);
      default:
        throw "The specified transition type: " + n + " is not valid.";
    }
  }
  stateFactory(e, n) {
    if (this.stateFactories === null) {
      const r = [];
      r[oe.INVALID_TYPE] = null, r[oe.BASIC] = () => new v2(), r[oe.RULE_START] = () => new b2(), r[oe.BLOCK_START] = () => new E2(), r[oe.PLUS_BLOCK_START] = () => new so(), r[oe.STAR_BLOCK_START] = () => new io(), r[oe.TOKEN_START] = () => new i7(), r[oe.RULE_STOP] = () => new At(), r[oe.BLOCK_END] = () => new no(), r[oe.STAR_LOOP_BACK] = () => new ro(), r[oe.STAR_LOOP_ENTRY] = () => new br(), r[oe.PLUS_LOOP_BACK] = () => new w2(), r[oe.LOOP_END] = () => new Jr(), this.stateFactories = r;
    }
    if (e > this.stateFactories.length || this.stateFactories[e] === null)
      throw "The specified state type " + e + " is not valid.";
    {
      const r = this.stateFactories[e]();
      if (r !== null)
        return r.ruleIndex = n, r;
    }
  }
  lexerActionFactory(e, n, r) {
    if (this.actionFactories === null) {
      const s = [];
      s[Ct.CHANNEL] = (i, o) => new aa(i), s[Ct.CUSTOM] = (i, o) => new ca(i, o), s[Ct.MODE] = (i, o) => new da(i), s[Ct.MORE] = (i, o) => jo.INSTANCE, s[Ct.POP_MODE] = (i, o) => Zo.INSTANCE, s[Ct.PUSH_MODE] = (i, o) => new ha(i), s[Ct.SKIP] = (i, o) => Go.INSTANCE, s[Ct.TYPE] = (i, o) => new ua(i), this.actionFactories = s;
    }
    if (e > this.actionFactories.length || this.actionFactories[e] === null)
      throw "The specified lexer action type " + e + " is not valid.";
    return this.actionFactories[e](n, r);
  }
};
var y1 = class {
  static {
    __name(this, "y1");
  }
  syntaxError(e, n, r, s, i, o) {
  }
  reportAmbiguity(e, n, r, s, i, o, l) {
  }
  reportAttemptingFullContext(e, n, r, s, i, o) {
  }
  reportContextSensitivity(e, n, r, s, i, o) {
  }
};
var Wo = class extends y1 {
  static {
    __name(this, "Wo");
  }
  constructor() {
    super();
  }
  syntaxError(e, n, r, s, i, o) {
    console.error("line " + r + ":" + s + " " + i);
  }
};
Wo.INSTANCE = new Wo();
var l7 = class extends y1 {
  static {
    __name(this, "l7");
  }
  constructor(e) {
    if (super(), e === null)
      throw "delegates";
    return this.delegates = e, this;
  }
  syntaxError(e, n, r, s, i, o) {
    this.delegates.map((l) => l.syntaxError(e, n, r, s, i, o));
  }
  reportAmbiguity(e, n, r, s, i, o, l) {
    this.delegates.map((a) => a.reportAmbiguity(e, n, r, s, i, o, l));
  }
  reportAttemptingFullContext(e, n, r, s, i, o) {
    this.delegates.map((l) => l.reportAttemptingFullContext(e, n, r, s, i, o));
  }
  reportContextSensitivity(e, n, r, s, i, o) {
    this.delegates.map((l) => l.reportContextSensitivity(e, n, r, s, i, o));
  }
};
var C1 = class {
  static {
    __name(this, "C1");
  }
  constructor() {
    this._listeners = [Wo.INSTANCE], this._interp = null, this._stateNumber = -1;
  }
  checkVersion(e) {
    const n = "4.11.0";
    n !== e && console.log("ANTLR runtime and generated code versions disagree: " + n + "!=" + e);
  }
  addErrorListener(e) {
    this._listeners.push(e);
  }
  removeErrorListeners() {
    this._listeners = [];
  }
  getLiteralNames() {
    return Object.getPrototypeOf(this).constructor.literalNames || [];
  }
  getSymbolicNames() {
    return Object.getPrototypeOf(this).constructor.symbolicNames || [];
  }
  getTokenNames() {
    if (!this.tokenNames) {
      const e = this.getLiteralNames(), n = this.getSymbolicNames(), r = e.length > n.length ? e.length : n.length;
      this.tokenNames = [];
      for (let s = 0; s < r; s++)
        this.tokenNames[s] = e[s] || n[s] || "<INVALID";
    }
    return this.tokenNames;
  }
  getTokenTypeMap() {
    const e = this.getTokenNames();
    if (e === null)
      throw "The current recognizer does not provide a list of token names.";
    let n = this.tokenTypeMapCache[e];
    return n === void 0 && (n = e.reduce(function(r, s, i) {
      r[s] = i;
    }), n.EOF = B.EOF, this.tokenTypeMapCache[e] = n), n;
  }
  getRuleIndexMap() {
    const e = this.ruleNames;
    if (e === null)
      throw "The current recognizer does not provide a list of rule names.";
    let n = this.ruleIndexMapCache[e];
    return n === void 0 && (n = e.reduce(function(r, s, i) {
      r[s] = i;
    }), this.ruleIndexMapCache[e] = n), n;
  }
  getTokenType(e) {
    const n = this.getTokenTypeMap()[e];
    return n !== void 0 ? n : B.INVALID_TYPE;
  }
  getErrorHeader(e) {
    const n = e.getOffendingToken().line, r = e.getOffendingToken().column;
    return "line " + n + ":" + r;
  }
  getTokenErrorDisplay(e) {
    if (e === null)
      return "<no token>";
    let n = e.text;
    return n === null && (e.type === B.EOF ? n = "<EOF>" : n = "<" + e.type + ">"), n = n.replace(`
`, "\\n").replace("\r", "\\r").replace("	", "\\t"), "'" + n + "'";
  }
  getErrorListenerDispatch() {
    return new l7(this._listeners);
  }
  sempred(e, n, r) {
    return true;
  }
  precpred(e, n) {
    return true;
  }
  get state() {
    return this._stateNumber;
  }
  set state(e) {
    this._stateNumber = e;
  }
};
C1.tokenTypeMapCache = {};
C1.ruleIndexMapCache = {};
var Ur = class _Ur extends B {
  static {
    __name(this, "Ur");
  }
  constructor(e, n, r, s, i) {
    super(), this.source = e !== void 0 ? e : _Ur.EMPTY_SOURCE, this.type = n !== void 0 ? n : null, this.channel = r !== void 0 ? r : B.DEFAULT_CHANNEL, this.start = s !== void 0 ? s : -1, this.stop = i !== void 0 ? i : -1, this.tokenIndex = -1, this.source[0] !== null ? (this.line = e[0].line, this.column = e[0].column) : this.column = -1;
  }
  clone() {
    const e = new _Ur(this.source, this.type, this.channel, this.start, this.stop);
    return e.tokenIndex = this.tokenIndex, e.line = this.line, e.column = this.column, e.text = this.text, e;
  }
  toString() {
    let e = this.text;
    return e !== null ? e = e.replace(/\n/g, "\\n").replace(/\r/g, "\\r").replace(/\t/g, "\\t") : e = "<no text>", "[@" + this.tokenIndex + "," + this.start + ":" + this.stop + "='" + e + "',<" + this.type + ">" + (this.channel > 0 ? ",channel=" + this.channel : "") + "," + this.line + ":" + this.column + "]";
  }
  get text() {
    if (this._text !== null)
      return this._text;
    const e = this.getInputStream();
    if (e === null)
      return null;
    const n = e.size;
    return this.start < n && this.stop < n ? e.getText(this.start, this.stop) : "<EOF>";
  }
  set text(e) {
    this._text = e;
  }
};
Ur.EMPTY_SOURCE = [null, null];
var a7 = class {
  static {
    __name(this, "a7");
  }
};
var qo = class extends a7 {
  static {
    __name(this, "qo");
  }
  constructor(e) {
    super(), this.copyText = e === void 0 ? false : e;
  }
  create(e, n, r, s, i, o, l, a) {
    const c = new Ur(e, n, s, i, o);
    return c.line = l, c.column = a, r !== null ? c.text = r : this.copyText && e[1] !== null && (c.text = e[1].getText(i, o)), c;
  }
  createThin(e, n) {
    const r = new Ur(null, e);
    return r.text = n, r;
  }
};
qo.DEFAULT = new qo();
var _r = class __r extends Error {
  static {
    __name(this, "_r");
  }
  constructor(e) {
    super(e.message), Error.captureStackTrace && Error.captureStackTrace(this, __r), this.message = e.message, this.recognizer = e.recognizer, this.input = e.input, this.ctx = e.ctx, this.offendingToken = null, this.offendingState = -1, this.recognizer !== null && (this.offendingState = this.recognizer.state);
  }
  getExpectedTokens() {
    return this.recognizer !== null ? this.recognizer.atn.getExpectedTokens(this.offendingState, this.ctx) : null;
  }
  toString() {
    return this.message;
  }
};
var fa = class extends _r {
  static {
    __name(this, "fa");
  }
  constructor(e, n, r, s) {
    super({ message: "", recognizer: e, input: n, ctx: null }), this.startIndex = r, this.deadEndConfigs = s;
  }
  toString() {
    let e = "";
    return this.startIndex >= 0 && this.startIndex < this.input.size && (e = this.input.getText(new Be(this.startIndex, this.startIndex))), "LexerNoViableAltException" + e;
  }
};
var rt = class _rt extends C1 {
  static {
    __name(this, "rt");
  }
  constructor(e) {
    super(), this._input = e, this._factory = qo.DEFAULT, this._tokenFactorySourcePair = [this, e], this._interp = null, this._token = null, this._tokenStartCharIndex = -1, this._tokenStartLine = -1, this._tokenStartColumn = -1, this._hitEOF = false, this._channel = B.DEFAULT_CHANNEL, this._type = B.INVALID_TYPE, this._modeStack = [], this._mode = _rt.DEFAULT_MODE, this._text = null;
  }
  reset() {
    this._input !== null && this._input.seek(0), this._token = null, this._type = B.INVALID_TYPE, this._channel = B.DEFAULT_CHANNEL, this._tokenStartCharIndex = -1, this._tokenStartColumn = -1, this._tokenStartLine = -1, this._text = null, this._hitEOF = false, this._mode = _rt.DEFAULT_MODE, this._modeStack = [], this._interp.reset();
  }
  nextToken() {
    if (this._input === null)
      throw "nextToken requires a non-null input stream.";
    const e = this._input.mark();
    try {
      for (; ; ) {
        if (this._hitEOF)
          return this.emitEOF(), this._token;
        this._token = null, this._channel = B.DEFAULT_CHANNEL, this._tokenStartCharIndex = this._input.index, this._tokenStartColumn = this._interp.column, this._tokenStartLine = this._interp.line, this._text = null;
        let n = false;
        for (; ; ) {
          this._type = B.INVALID_TYPE;
          let r = _rt.SKIP;
          try {
            r = this._interp.match(this._input, this._mode);
          } catch (s) {
            if (s instanceof _r)
              this.notifyListeners(s), this.recover(s);
            else
              throw console.log(s.stack), s;
          }
          if (this._input.LA(1) === B.EOF && (this._hitEOF = true), this._type === B.INVALID_TYPE && (this._type = r), this._type === _rt.SKIP) {
            n = true;
            break;
          }
          if (this._type !== _rt.MORE)
            break;
        }
        if (!n)
          return this._token === null && this.emit(), this._token;
      }
    } finally {
      this._input.release(e);
    }
  }
  skip() {
    this._type = _rt.SKIP;
  }
  more() {
    this._type = _rt.MORE;
  }
  mode(e) {
    this._mode = e;
  }
  pushMode(e) {
    this._interp.debug && console.log("pushMode " + e), this._modeStack.push(this._mode), this.mode(e);
  }
  popMode() {
    if (this._modeStack.length === 0)
      throw "Empty Stack";
    return this._interp.debug && console.log("popMode back to " + this._modeStack.slice(0, -1)), this.mode(this._modeStack.pop()), this._mode;
  }
  emitToken(e) {
    this._token = e;
  }
  emit() {
    const e = this._factory.create(
      this._tokenFactorySourcePair,
      this._type,
      this._text,
      this._channel,
      this._tokenStartCharIndex,
      this.getCharIndex() - 1,
      this._tokenStartLine,
      this._tokenStartColumn
    );
    return this.emitToken(e), e;
  }
  emitEOF() {
    const e = this.column, n = this.line, r = this._factory.create(
      this._tokenFactorySourcePair,
      B.EOF,
      null,
      B.DEFAULT_CHANNEL,
      this._input.index,
      this._input.index - 1,
      n,
      e
    );
    return this.emitToken(r), r;
  }
  getCharIndex() {
    return this._input.index;
  }
  getAllTokens() {
    const e = [];
    let n = this.nextToken();
    for (; n.type !== B.EOF; )
      e.push(n), n = this.nextToken();
    return e;
  }
  notifyListeners(e) {
    const n = this._tokenStartCharIndex, r = this._input.index, s = this._input.getText(n, r), i = "token recognition error at: '" + this.getErrorDisplay(s) + "'";
    this.getErrorListenerDispatch().syntaxError(
      this,
      null,
      this._tokenStartLine,
      this._tokenStartColumn,
      i,
      e
    );
  }
  getErrorDisplay(e) {
    const n = [];
    for (let r = 0; r < e.length; r++)
      n.push(e[r]);
    return n.join("");
  }
  getErrorDisplayForChar(e) {
    return e.charCodeAt(0) === B.EOF ? "<EOF>" : e === `
` ? "\\n" : e === "	" ? "\\t" : e === "\r" ? "\\r" : e;
  }
  getCharErrorDisplay(e) {
    return "'" + this.getErrorDisplayForChar(e) + "'";
  }
  recover(e) {
    this._input.LA(1) !== B.EOF && (e instanceof fa ? this._interp.consume(this._input) : this._input.consume());
  }
  get inputStream() {
    return this._input;
  }
  set inputStream(e) {
    this._input = null, this._tokenFactorySourcePair = [this, this._input], this.reset(), this._input = e, this._tokenFactorySourcePair = [this, this._input];
  }
  get sourceName() {
    return this._input.sourceName;
  }
  get type() {
    return this._type;
  }
  set type(e) {
    this._type = e;
  }
  get line() {
    return this._interp.line;
  }
  set line(e) {
    this._interp.line = e;
  }
  get column() {
    return this._interp.column;
  }
  set column(e) {
    this._interp.column = e;
  }
  get text() {
    return this._text !== null ? this._text : this._interp.getText(this._input);
  }
  set text(e) {
    this._text = e;
  }
};
rt.DEFAULT_MODE = 0;
rt.MORE = -2;
rt.SKIP = -3;
rt.DEFAULT_TOKEN_CHANNEL = B.DEFAULT_CHANNEL;
rt.HIDDEN = B.HIDDEN_CHANNEL;
rt.MIN_CHAR_VALUE = 0;
rt.MAX_CHAR_VALUE = 1114111;
function c7(t) {
  return t.hashCodeForConfigSet();
}
__name(c7, "c7");
function u7(t, e) {
  return t === e ? true : t === null || e === null ? false : t.equalsForConfigSet(e);
}
__name(u7, "u7");
var Tt = class _Tt {
  static {
    __name(this, "Tt");
  }
  constructor(e) {
    this.configLookup = new Xt(c7, u7), this.fullCtx = e === void 0 ? true : e, this.readOnly = false, this.configs = [], this.uniqueAlt = 0, this.conflictingAlts = null, this.hasSemanticContext = false, this.dipsIntoOuterContext = false, this.cachedHashCode = -1;
  }
  add(e, n) {
    if (n === void 0 && (n = null), this.readOnly)
      throw "This set is readonly";
    e.semanticContext !== $e.NONE && (this.hasSemanticContext = true), e.reachesIntoOuterContext > 0 && (this.dipsIntoOuterContext = true);
    const r = this.configLookup.add(e);
    if (r === e)
      return this.cachedHashCode = -1, this.configs.push(e), true;
    const s = !this.fullCtx, i = la(r.context, e.context, s, n);
    return r.reachesIntoOuterContext = Math.max(r.reachesIntoOuterContext, e.reachesIntoOuterContext), e.precedenceFilterSuppressed && (r.precedenceFilterSuppressed = true), r.context = i, true;
  }
  getStates() {
    const e = new Xt();
    for (let n = 0; n < this.configs.length; n++)
      e.add(this.configs[n].state);
    return e;
  }
  getPredicates() {
    const e = [];
    for (let n = 0; n < this.configs.length; n++) {
      const r = this.configs[n].semanticContext;
      r !== $e.NONE && e.push(r.semanticContext);
    }
    return e;
  }
  optimizeConfigs(e) {
    if (this.readOnly)
      throw "This set is readonly";
    if (this.configLookup.length !== 0)
      for (let n = 0; n < this.configs.length; n++) {
        const r = this.configs[n];
        r.context = e.getCachedContext(r.context);
      }
  }
  addAll(e) {
    for (let n = 0; n < e.length; n++)
      this.add(e[n]);
    return false;
  }
  equals(e) {
    return this === e || e instanceof _Tt && _s(this.configs, e.configs) && this.fullCtx === e.fullCtx && this.uniqueAlt === e.uniqueAlt && this.conflictingAlts === e.conflictingAlts && this.hasSemanticContext === e.hasSemanticContext && this.dipsIntoOuterContext === e.dipsIntoOuterContext;
  }
  hashCode() {
    const e = new en();
    return e.update(this.configs), e.finish();
  }
  updateHashCode(e) {
    this.readOnly ? (this.cachedHashCode === -1 && (this.cachedHashCode = this.hashCode()), e.update(this.cachedHashCode)) : e.update(this.hashCode());
  }
  isEmpty() {
    return this.configs.length === 0;
  }
  contains(e) {
    if (this.configLookup === null)
      throw "This method is not implemented for readonly sets.";
    return this.configLookup.contains(e);
  }
  containsFast(e) {
    if (this.configLookup === null)
      throw "This method is not implemented for readonly sets.";
    return this.configLookup.containsFast(e);
  }
  clear() {
    if (this.readOnly)
      throw "This set is readonly";
    this.configs = [], this.cachedHashCode = -1, this.configLookup = new Xt();
  }
  setReadonly(e) {
    this.readOnly = e, e && (this.configLookup = null);
  }
  toString() {
    return or(this.configs) + (this.hasSemanticContext ? ",hasSemanticContext=" + this.hasSemanticContext : "") + (this.uniqueAlt !== et.INVALID_ALT_NUMBER ? ",uniqueAlt=" + this.uniqueAlt : "") + (this.conflictingAlts !== null ? ",conflictingAlts=" + this.conflictingAlts : "") + (this.dipsIntoOuterContext ? ",dipsIntoOuterContext" : "");
  }
  get items() {
    return this.configs;
  }
  get length() {
    return this.configs.length;
  }
};
var Vn = class _Vn {
  static {
    __name(this, "Vn");
  }
  constructor(e, n) {
    return e === null && (e = -1), n === null && (n = new Tt()), this.stateNumber = e, this.configs = n, this.edges = null, this.isAcceptState = false, this.prediction = 0, this.lexerActionExecutor = null, this.requiresFullContext = false, this.predicates = null, this;
  }
  getAltSet() {
    const e = new Xt();
    if (this.configs !== null)
      for (let n = 0; n < this.configs.length; n++) {
        const r = this.configs[n];
        e.add(r.alt);
      }
    return e.length === 0 ? null : e;
  }
  equals(e) {
    return this === e || e instanceof _Vn && this.configs.equals(e.configs);
  }
  toString() {
    let e = "" + this.stateNumber + ":" + this.configs;
    return this.isAcceptState && (e = e + "=>", this.predicates !== null ? e = e + this.predicates : e = e + this.prediction), e;
  }
  hashCode() {
    const e = new en();
    return e.update(this.configs), e.finish();
  }
};
var bn = class {
  static {
    __name(this, "bn");
  }
  constructor(e, n) {
    return this.atn = e, this.sharedContextCache = n, this;
  }
  getCachedContext(e) {
    if (this.sharedContextCache === null)
      return e;
    const n = new F0();
    return K5(e, this.sharedContextCache, n);
  }
};
bn.ERROR = new Vn(2147483647, new Tt());
var S2 = class extends Tt {
  static {
    __name(this, "S2");
  }
  constructor() {
    super(), this.configLookup = new Xt();
  }
};
var Pt = class _Pt extends ot {
  static {
    __name(this, "Pt");
  }
  constructor(e, n) {
    super(e, n);
    const r = e.lexerActionExecutor || null;
    return this.lexerActionExecutor = r || (n !== null ? n.lexerActionExecutor : null), this.passedThroughNonGreedyDecision = n !== null ? this.checkNonGreedyDecision(n, this.state) : false, this.hashCodeForConfigSet = _Pt.prototype.hashCode, this.equalsForConfigSet = _Pt.prototype.equals, this;
  }
  updateHashCode(e) {
    e.update(this.state.stateNumber, this.alt, this.context, this.semanticContext, this.passedThroughNonGreedyDecision, this.lexerActionExecutor);
  }
  equals(e) {
    return this === e || e instanceof _Pt && this.passedThroughNonGreedyDecision === e.passedThroughNonGreedyDecision && (this.lexerActionExecutor ? this.lexerActionExecutor.equals(e.lexerActionExecutor) : !e.lexerActionExecutor) && super.equals(e);
  }
  checkNonGreedyDecision(e, n) {
    return e.passedThroughNonGreedyDecision || n instanceof Os && n.nonGreedy;
  }
};
var r0 = class _r0 extends Qn {
  static {
    __name(this, "r0");
  }
  constructor(e, n) {
    super(n.actionType), this.offset = e, this.action = n, this.isPositionDependent = true;
  }
  execute(e) {
    this.action.execute(e);
  }
  updateHashCode(e) {
    e.update(this.actionType, this.offset, this.action);
  }
  equals(e) {
    return this === e ? true : e instanceof _r0 ? this.offset === e.offset && this.action === e.action : false;
  }
};
var ns = class _ns {
  static {
    __name(this, "ns");
  }
  constructor(e) {
    return this.lexerActions = e === null ? [] : e, this.cachedHashCode = en.hashStuff(e), this;
  }
  fixOffsetBeforeMatch(e) {
    let n = null;
    for (let r = 0; r < this.lexerActions.length; r++)
      this.lexerActions[r].isPositionDependent && !(this.lexerActions[r] instanceof r0) && (n === null && (n = this.lexerActions.concat([])), n[r] = new r0(
        e,
        this.lexerActions[r]
      ));
    return n === null ? this : new _ns(n);
  }
  execute(e, n, r) {
    let s = false;
    const i = n.index;
    try {
      for (let o = 0; o < this.lexerActions.length; o++) {
        let l = this.lexerActions[o];
        if (l instanceof r0) {
          const a = l.offset;
          n.seek(r + a), l = l.action, s = r + a !== i;
        } else
          l.isPositionDependent && (n.seek(i), s = false);
        l.execute(e);
      }
    } finally {
      s && n.seek(i);
    }
  }
  hashCode() {
    return this.cachedHashCode;
  }
  updateHashCode(e) {
    e.update(this.cachedHashCode);
  }
  equals(e) {
    if (this === e)
      return true;
    if (e instanceof _ns) {
      if (this.cachedHashCode != e.cachedHashCode)
        return false;
      if (this.lexerActions.length != e.lexerActions.length)
        return false;
      {
        const n = this.lexerActions.length;
        for (let r = 0; r < n; ++r)
          if (!this.lexerActions[r].equals(e.lexerActions[r]))
            return false;
        return true;
      }
    } else
      return false;
  }
  static append(e, n) {
    if (e === null)
      return new _ns([n]);
    const r = e.lexerActions.concat([n]);
    return new _ns(r);
  }
};
function A2(t) {
  t.index = -1, t.line = 0, t.column = -1, t.dfaState = null;
}
__name(A2, "A2");
var h7 = class {
  static {
    __name(this, "h7");
  }
  constructor() {
    A2(this);
  }
  reset() {
    A2(this);
  }
};
var nt = class _nt extends bn {
  static {
    __name(this, "nt");
  }
  constructor(e, n, r, s) {
    super(n, s), this.decisionToDFA = r, this.recog = e, this.startIndex = -1, this.line = 1, this.column = 0, this.mode = rt.DEFAULT_MODE, this.prevAccept = new h7();
  }
  copyState(e) {
    this.column = e.column, this.line = e.line, this.mode = e.mode, this.startIndex = e.startIndex;
  }
  match(e, n) {
    this.mode = n;
    const r = e.mark();
    try {
      this.startIndex = e.index, this.prevAccept.reset();
      const s = this.decisionToDFA[n];
      return s.s0 === null ? this.matchATN(e) : this.execATN(e, s.s0);
    } finally {
      e.release(r);
    }
  }
  reset() {
    this.prevAccept.reset(), this.startIndex = -1, this.line = 1, this.column = 0, this.mode = rt.DEFAULT_MODE;
  }
  matchATN(e) {
    const n = this.atn.modeToStartState[this.mode];
    _nt.debug && console.log("matchATN mode " + this.mode + " start: " + n);
    const r = this.mode, s = this.computeStartState(e, n), i = s.hasSemanticContext;
    s.hasSemanticContext = false;
    const o = this.addDFAState(s);
    i || (this.decisionToDFA[this.mode].s0 = o);
    const l = this.execATN(e, o);
    return _nt.debug && console.log("DFA after matchATN: " + this.decisionToDFA[r].toLexerString()), l;
  }
  execATN(e, n) {
    _nt.debug && console.log("start state closure=" + n.configs), n.isAcceptState && this.captureSimState(this.prevAccept, e, n);
    let r = e.LA(1), s = n;
    for (; ; ) {
      _nt.debug && console.log("execATN loop starting closure: " + s.configs);
      let i = this.getExistingTargetState(s, r);
      if (i === null && (i = this.computeTargetState(e, s, r)), i === bn.ERROR || (r !== B.EOF && this.consume(e), i.isAcceptState && (this.captureSimState(this.prevAccept, e, i), r === B.EOF)))
        break;
      r = e.LA(1), s = i;
    }
    return this.failOrAccept(this.prevAccept, e, s.configs, r);
  }
  getExistingTargetState(e, n) {
    if (e.edges === null || n < _nt.MIN_DFA_EDGE || n > _nt.MAX_DFA_EDGE)
      return null;
    let r = e.edges[n - _nt.MIN_DFA_EDGE];
    return r === void 0 && (r = null), _nt.debug && r !== null && console.log("reuse state " + e.stateNumber + " edge to " + r.stateNumber), r;
  }
  computeTargetState(e, n, r) {
    const s = new S2();
    return this.getReachableConfigSet(e, n.configs, s, r), s.items.length === 0 ? (s.hasSemanticContext || this.addDFAEdge(n, r, bn.ERROR), bn.ERROR) : this.addDFAEdge(n, r, null, s);
  }
  failOrAccept(e, n, r, s) {
    if (this.prevAccept.dfaState !== null) {
      const i = e.dfaState.lexerActionExecutor;
      return this.accept(
        n,
        i,
        this.startIndex,
        e.index,
        e.line,
        e.column
      ), e.dfaState.prediction;
    } else {
      if (s === B.EOF && n.index === this.startIndex)
        return B.EOF;
      throw new fa(this.recog, n, this.startIndex, r);
    }
  }
  getReachableConfigSet(e, n, r, s) {
    let i = et.INVALID_ALT_NUMBER;
    for (let o = 0; o < n.items.length; o++) {
      const l = n.items[o], a = l.alt === i;
      if (!(a && l.passedThroughNonGreedyDecision)) {
        _nt.debug && console.log(`testing %s at %s
`, this.getTokenName(s), l.toString(this.recog, true));
        for (let c = 0; c < l.state.transitions.length; c++) {
          const u = l.state.transitions[c], h = this.getReachableTarget(u, s);
          if (h !== null) {
            let f = l.lexerActionExecutor;
            f !== null && (f = f.fixOffsetBeforeMatch(e.index - this.startIndex));
            const p = s === B.EOF, x = new Pt({ state: h, lexerActionExecutor: f }, l);
            this.closure(
              e,
              x,
              r,
              a,
              true,
              p
            ) && (i = l.alt);
          }
        }
      }
    }
  }
  accept(e, n, r, s, i, o) {
    _nt.debug && console.log(`ACTION %s
`, n), e.seek(s), this.line = i, this.column = o, n !== null && this.recog !== null && n.execute(this.recog, e, r);
  }
  getReachableTarget(e, n) {
    return e.matches(n, 0, rt.MAX_CHAR_VALUE) ? e.target : null;
  }
  computeStartState(e, n) {
    const r = Te.EMPTY, s = new S2();
    for (let i = 0; i < n.transitions.length; i++) {
      const o = n.transitions[i].target, l = new Pt({ state: o, alt: i + 1, context: r }, null);
      this.closure(e, l, s, false, false, false);
    }
    return s;
  }
  closure(e, n, r, s, i, o) {
    let l = null;
    if (_nt.debug && console.log("closure(" + n.toString(this.recog, true) + ")"), n.state instanceof At) {
      if (_nt.debug && (this.recog !== null ? console.log(`closure at %s rule stop %s
`, this.recog.ruleNames[n.state.ruleIndex], n) : console.log(`closure at rule stop %s
`, n)), n.context === null || n.context.hasEmptyPath()) {
        if (n.context === null || n.context.isEmpty())
          return r.add(n), true;
        r.add(new Pt({ state: n.state, context: Te.EMPTY }, n)), s = true;
      }
      if (n.context !== null && !n.context.isEmpty()) {
        for (let a = 0; a < n.context.length; a++)
          if (n.context.getReturnState(a) !== Te.EMPTY_RETURN_STATE) {
            const c = n.context.getParent(a), u = this.atn.states[n.context.getReturnState(a)];
            l = new Pt({ state: u, context: c }, n), s = this.closure(
              e,
              l,
              r,
              s,
              i,
              o
            );
          }
      }
      return s;
    }
    n.state.epsilonOnlyTransitions || (!s || !n.passedThroughNonGreedyDecision) && r.add(n);
    for (let a = 0; a < n.state.transitions.length; a++) {
      const c = n.state.transitions[a];
      l = this.getEpsilonTarget(e, n, c, r, i, o), l !== null && (s = this.closure(
        e,
        l,
        r,
        s,
        i,
        o
      ));
    }
    return s;
  }
  getEpsilonTarget(e, n, r, s, i, o) {
    let l = null;
    if (r.serializationType === ee.RULE) {
      const a = Rt.create(n.context, r.followState.stateNumber);
      l = new Pt({ state: r.target, context: a }, n);
    } else {
      if (r.serializationType === ee.PRECEDENCE)
        throw "Precedence predicates are not supported in lexers.";
      if (r.serializationType === ee.PREDICATE)
        _nt.debug && console.log("EVAL rule " + r.ruleIndex + ":" + r.predIndex), s.hasSemanticContext = true, this.evaluatePredicate(e, r.ruleIndex, r.predIndex, i) && (l = new Pt({ state: r.target }, n));
      else if (r.serializationType === ee.ACTION)
        if (n.context === null || n.context.hasEmptyPath()) {
          const a = ns.append(
            n.lexerActionExecutor,
            this.atn.lexerActions[r.actionIndex]
          );
          l = new Pt({ state: r.target, lexerActionExecutor: a }, n);
        } else
          l = new Pt({ state: r.target }, n);
      else
        r.serializationType === ee.EPSILON ? l = new Pt({ state: r.target }, n) : (r.serializationType === ee.ATOM || r.serializationType === ee.RANGE || r.serializationType === ee.SET) && o && r.matches(B.EOF, 0, rt.MAX_CHAR_VALUE) && (l = new Pt({ state: r.target }, n));
    }
    return l;
  }
  evaluatePredicate(e, n, r, s) {
    if (this.recog === null)
      return true;
    if (!s)
      return this.recog.sempred(null, n, r);
    const i = this.column, o = this.line, l = e.index, a = e.mark();
    try {
      return this.consume(e), this.recog.sempred(null, n, r);
    } finally {
      this.column = i, this.line = o, e.seek(l), e.release(a);
    }
  }
  captureSimState(e, n, r) {
    e.index = n.index, e.line = this.line, e.column = this.column, e.dfaState = r;
  }
  addDFAEdge(e, n, r, s) {
    if (r === void 0 && (r = null), s === void 0 && (s = null), r === null && s !== null) {
      const i = s.hasSemanticContext;
      if (s.hasSemanticContext = false, r = this.addDFAState(s), i)
        return r;
    }
    return n < _nt.MIN_DFA_EDGE || n > _nt.MAX_DFA_EDGE || (_nt.debug && console.log("EDGE " + e + " -> " + r + " upon " + n), e.edges === null && (e.edges = []), e.edges[n - _nt.MIN_DFA_EDGE] = r), r;
  }
  addDFAState(e) {
    const n = new Vn(null, e);
    let r = null;
    for (let l = 0; l < e.items.length; l++) {
      const a = e.items[l];
      if (a.state instanceof At) {
        r = a;
        break;
      }
    }
    r !== null && (n.isAcceptState = true, n.lexerActionExecutor = r.lexerActionExecutor, n.prediction = this.atn.ruleToTokenType[r.state.ruleIndex]);
    const s = this.decisionToDFA[this.mode], i = s.states.get(n);
    if (i !== null)
      return i;
    const o = n;
    return o.stateNumber = s.states.length, e.setReadonly(true), o.configs = e, s.states.add(o), o;
  }
  getDFA(e) {
    return this.decisionToDFA[e];
  }
  getText(e) {
    return e.getText(this.startIndex, e.index - 1);
  }
  consume(e) {
    e.LA(1) === `
`.charCodeAt(0) ? (this.line += 1, this.column = 0) : this.column += 1, e.consume();
  }
  getTokenName(e) {
    return e === -1 ? "EOF" : "'" + String.fromCharCode(e) + "'";
  }
};
nt.debug = false;
nt.dfa_debug = false;
nt.MIN_DFA_EDGE = 0;
nt.MAX_DFA_EDGE = 127;
var J5 = class {
  static {
    __name(this, "J5");
  }
  constructor(e, n) {
    this.alt = n, this.pred = e;
  }
  toString() {
    return "(" + this.pred + ", " + this.alt + ")";
  }
};
var d7 = class {
  static {
    __name(this, "d7");
  }
  constructor() {
    this.data = {};
  }
  get(e) {
    return this.data["k-" + e] || null;
  }
  set(e, n) {
    this.data["k-" + e] = n;
  }
  values() {
    return Object.keys(this.data).filter((e) => e.startsWith("k-")).map((e) => this.data[e], this);
  }
};
var je = {
  SLL: 0,
  LL: 1,
  LL_EXACT_AMBIG_DETECTION: 2,
  hasSLLConflictTerminatingPrediction: function(t, e) {
    if (je.allConfigsInRuleStopStates(e))
      return true;
    if (t === je.SLL && e.hasSemanticContext) {
      const r = new Tt();
      for (let s = 0; s < e.items.length; s++) {
        let i = e.items[s];
        i = new ot({ semanticContext: $e.NONE }, i), r.add(i);
      }
      e = r;
    }
    const n = je.getConflictingAltSubsets(e);
    return je.hasConflictingAltSet(n) && !je.hasStateAssociatedWithOneAlt(e);
  },
  hasConfigInRuleStopState: function(t) {
    for (let e = 0; e < t.items.length; e++)
      if (t.items[e].state instanceof At)
        return true;
    return false;
  },
  allConfigsInRuleStopStates: function(t) {
    for (let e = 0; e < t.items.length; e++)
      if (!(t.items[e].state instanceof At))
        return false;
    return true;
  },
  resolvesToJustOneViableAlt: function(t) {
    return je.getSingleViableAlt(t);
  },
  allSubsetsConflict: function(t) {
    return !je.hasNonConflictingAltSet(t);
  },
  hasNonConflictingAltSet: function(t) {
    for (let e = 0; e < t.length; e++)
      if (t[e].length === 1)
        return true;
    return false;
  },
  hasConflictingAltSet: function(t) {
    for (let e = 0; e < t.length; e++)
      if (t[e].length > 1)
        return true;
    return false;
  },
  allSubsetsEqual: function(t) {
    let e = null;
    for (let n = 0; n < t.length; n++) {
      const r = t[n];
      if (e === null)
        e = r;
      else if (r !== e)
        return false;
    }
    return true;
  },
  getUniqueAlt: function(t) {
    const e = je.getAlts(t);
    return e.length === 1 ? e.minValue() : et.INVALID_ALT_NUMBER;
  },
  getAlts: function(t) {
    const e = new Tn();
    return t.map(function(n) {
      e.or(n);
    }), e;
  },
  getConflictingAltSubsets: function(t) {
    const e = new F0();
    return e.hashFunction = function(n) {
      en.hashStuff(n.state.stateNumber, n.context);
    }, e.equalsFunction = function(n, r) {
      return n.state.stateNumber === r.state.stateNumber && n.context.equals(r.context);
    }, t.items.map(function(n) {
      let r = e.get(n);
      r === null && (r = new Tn(), e.set(n, r)), r.add(n.alt);
    }), e.getValues();
  },
  getStateToAltMap: function(t) {
    const e = new d7();
    return t.items.map(function(n) {
      let r = e.get(n.state);
      r === null && (r = new Tn(), e.set(n.state, r)), r.add(n.alt);
    }), e;
  },
  hasStateAssociatedWithOneAlt: function(t) {
    const e = je.getStateToAltMap(t).values();
    for (let n = 0; n < e.length; n++)
      if (e[n].length === 1)
        return true;
    return false;
  },
  getSingleViableAlt: function(t) {
    let e = null;
    for (let n = 0; n < t.length; n++) {
      const s = t[n].minValue();
      if (e === null)
        e = s;
      else if (e !== s)
        return et.INVALID_ALT_NUMBER;
    }
    return e;
  }
};
var pa = class extends _r {
  static {
    __name(this, "pa");
  }
  constructor(e, n, r, s, i, o) {
    o = o || e._ctx, s = s || e.getCurrentToken(), r = r || e.getCurrentToken(), n = n || e.getInputStream(), super({ message: "", recognizer: e, input: n, ctx: o }), this.deadEndConfigs = i, this.startToken = r, this.offendingToken = s;
  }
};
var f7 = class {
  static {
    __name(this, "f7");
  }
  constructor(e) {
    this.defaultMapCtor = e || F0, this.cacheMap = new this.defaultMapCtor();
  }
  get(e, n) {
    const r = this.cacheMap.get(e) || null;
    return r === null ? null : r.get(n) || null;
  }
  set(e, n, r) {
    let s = this.cacheMap.get(e) || null;
    s === null && (s = new this.defaultMapCtor(), this.cacheMap.set(e, s)), s.set(n, r);
  }
};
var p7 = class extends bn {
  static {
    __name(this, "p7");
  }
  constructor(e, n, r, s) {
    super(n, s), this.parser = e, this.decisionToDFA = r, this.predictionMode = je.LL, this._input = null, this._startIndex = 0, this._outerContext = null, this._dfa = null, this.mergeCache = null, this.debug = false, this.debug_closure = false, this.debug_add = false, this.debug_list_atn_decisions = false, this.dfa_debug = false, this.retry_debug = false;
  }
  reset() {
  }
  adaptivePredict(e, n, r) {
    (this.debug || this.debug_list_atn_decisions) && console.log("adaptivePredict decision " + n + " exec LA(1)==" + this.getLookaheadName(e) + " line " + e.LT(1).line + ":" + e.LT(1).column), this._input = e, this._startIndex = e.index, this._outerContext = r;
    const s = this.decisionToDFA[n];
    this._dfa = s;
    const i = e.mark(), o = e.index;
    try {
      let l;
      if (s.precedenceDfa ? l = s.getPrecedenceStartState(this.parser.getPrecedence()) : l = s.s0, l === null) {
        r === null && (r = ys.EMPTY), (this.debug || this.debug_list_atn_decisions) && console.log("predictATN decision " + s.decision + " exec LA(1)==" + this.getLookaheadName(e) + ", outerContext=" + r.toString(this.parser.ruleNames));
        const c = false;
        let u = this.computeStartState(s.atnStartState, ys.EMPTY, c);
        s.precedenceDfa ? (s.s0.configs = u, u = this.applyPrecedenceFilter(u), l = this.addDFAState(s, new Vn(null, u)), s.setPrecedenceStartState(this.parser.getPrecedence(), l)) : (l = this.addDFAState(s, new Vn(null, u)), s.s0 = l);
      }
      const a = this.execATN(s, l, e, o, r);
      return this.debug && console.log("DFA after predictATN: " + s.toString(this.parser.literalNames, this.parser.symbolicNames)), a;
    } finally {
      this._dfa = null, this.mergeCache = null, e.seek(o), e.release(i);
    }
  }
  execATN(e, n, r, s, i) {
    (this.debug || this.debug_list_atn_decisions) && console.log("execATN decision " + e.decision + " exec LA(1)==" + this.getLookaheadName(r) + " line " + r.LT(1).line + ":" + r.LT(1).column);
    let o, l = n;
    this.debug && console.log("s0 = " + n);
    let a = r.LA(1);
    for (; ; ) {
      let c = this.getExistingTargetState(l, a);
      if (c === null && (c = this.computeTargetState(e, l, a)), c === bn.ERROR) {
        const u = this.noViableAlt(r, i, l.configs, s);
        if (r.seek(s), o = this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(l.configs, i), o !== et.INVALID_ALT_NUMBER)
          return o;
        throw u;
      }
      if (c.requiresFullContext && this.predictionMode !== je.SLL) {
        let u = null;
        if (c.predicates !== null) {
          this.debug && console.log("DFA state has preds in DFA sim LL failover");
          const p = r.index;
          if (p !== s && r.seek(s), u = this.evalSemanticContext(c.predicates, i, true), u.length === 1)
            return this.debug && console.log("Full LL avoided"), u.minValue();
          p !== s && r.seek(p);
        }
        this.dfa_debug && console.log("ctx sensitive state " + i + " in " + c);
        const h = true, f = this.computeStartState(e.atnStartState, i, h);
        return this.reportAttemptingFullContext(e, u, c.configs, s, r.index), o = this.execATNWithFullContext(e, c, f, r, s, i), o;
      }
      if (c.isAcceptState) {
        if (c.predicates === null)
          return c.prediction;
        const u = r.index;
        r.seek(s);
        const h = this.evalSemanticContext(c.predicates, i, true);
        if (h.length === 0)
          throw this.noViableAlt(r, i, c.configs, s);
        return h.length === 1 || this.reportAmbiguity(e, c, s, u, false, h, c.configs), h.minValue();
      }
      l = c, a !== B.EOF && (r.consume(), a = r.LA(1));
    }
  }
  getExistingTargetState(e, n) {
    const r = e.edges;
    return r === null ? null : r[n + 1] || null;
  }
  computeTargetState(e, n, r) {
    const s = this.computeReachSet(n.configs, r, false);
    if (s === null)
      return this.addDFAEdge(e, n, r, bn.ERROR), bn.ERROR;
    let i = new Vn(null, s);
    const o = this.getUniqueAlt(s);
    if (this.debug) {
      const l = je.getConflictingAltSubsets(s);
      console.log("SLL altSubSets=" + or(l) + ", configs=" + s + ", predict=" + o + ", allSubsetsConflict=" + je.allSubsetsConflict(l) + ", conflictingAlts=" + this.getConflictingAlts(s));
    }
    return o !== et.INVALID_ALT_NUMBER ? (i.isAcceptState = true, i.configs.uniqueAlt = o, i.prediction = o) : je.hasSLLConflictTerminatingPrediction(this.predictionMode, s) && (i.configs.conflictingAlts = this.getConflictingAlts(s), i.requiresFullContext = true, i.isAcceptState = true, i.prediction = i.configs.conflictingAlts.minValue()), i.isAcceptState && i.configs.hasSemanticContext && (this.predicateDFAState(i, this.atn.getDecisionState(e.decision)), i.predicates !== null && (i.prediction = et.INVALID_ALT_NUMBER)), i = this.addDFAEdge(e, n, r, i), i;
  }
  predicateDFAState(e, n) {
    const r = n.transitions.length, s = this.getConflictingAltsOrUniqueAlt(e.configs), i = this.getPredsForAmbigAlts(s, e.configs, r);
    i !== null ? (e.predicates = this.getPredicatePredictions(s, i), e.prediction = et.INVALID_ALT_NUMBER) : e.prediction = s.minValue();
  }
  execATNWithFullContext(e, n, r, s, i, o) {
    (this.debug || this.debug_list_atn_decisions) && console.log("execATNWithFullContext " + r);
    const l = true;
    let a = false, c, u = r;
    s.seek(i);
    let h = s.LA(1), f = -1;
    for (; ; ) {
      if (c = this.computeReachSet(u, h, l), c === null) {
        const x = this.noViableAlt(s, o, u, i);
        s.seek(i);
        const y = this.getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(u, o);
        if (y !== et.INVALID_ALT_NUMBER)
          return y;
        throw x;
      }
      const p = je.getConflictingAltSubsets(c);
      if (this.debug && console.log("LL altSubSets=" + p + ", predict=" + je.getUniqueAlt(p) + ", resolvesToJustOneViableAlt=" + je.resolvesToJustOneViableAlt(p)), c.uniqueAlt = this.getUniqueAlt(c), c.uniqueAlt !== et.INVALID_ALT_NUMBER) {
        f = c.uniqueAlt;
        break;
      } else if (this.predictionMode !== je.LL_EXACT_AMBIG_DETECTION) {
        if (f = je.resolvesToJustOneViableAlt(p), f !== et.INVALID_ALT_NUMBER)
          break;
      } else if (je.allSubsetsConflict(p) && je.allSubsetsEqual(p)) {
        a = true, f = je.getSingleViableAlt(p);
        break;
      }
      u = c, h !== B.EOF && (s.consume(), h = s.LA(1));
    }
    return c.uniqueAlt !== et.INVALID_ALT_NUMBER ? (this.reportContextSensitivity(e, f, c, i, s.index), f) : (this.reportAmbiguity(e, n, i, s.index, a, null, c), f);
  }
  computeReachSet(e, n, r) {
    this.debug && console.log("in computeReachSet, starting closure: " + e), this.mergeCache === null && (this.mergeCache = new f7());
    const s = new Tt(r);
    let i = null;
    for (let l = 0; l < e.items.length; l++) {
      const a = e.items[l];
      if (this.debug && console.log("testing " + this.getTokenName(n) + " at " + a), a.state instanceof At) {
        (r || n === B.EOF) && (i === null && (i = []), i.push(a), this.debug_add && console.log("added " + a + " to skippedStopStates"));
        continue;
      }
      for (let c = 0; c < a.state.transitions.length; c++) {
        const u = a.state.transitions[c], h = this.getReachableTarget(u, n);
        if (h !== null) {
          const f = new ot({ state: h }, a);
          s.add(f, this.mergeCache), this.debug_add && console.log("added " + f + " to intermediate");
        }
      }
    }
    let o = null;
    if (i === null && n !== B.EOF && (s.items.length === 1 || this.getUniqueAlt(s) !== et.INVALID_ALT_NUMBER) && (o = s), o === null) {
      o = new Tt(r);
      const l = new Xt(), a = n === B.EOF;
      for (let c = 0; c < s.items.length; c++)
        this.closure(s.items[c], o, l, false, r, a);
    }
    if (n === B.EOF && (o = this.removeAllConfigsNotInRuleStopState(o, o === s)), i !== null && (!r || !je.hasConfigInRuleStopState(o)))
      for (let l = 0; l < i.length; l++)
        o.add(i[l], this.mergeCache);
    return o.items.length === 0 ? null : o;
  }
  removeAllConfigsNotInRuleStopState(e, n) {
    if (je.allConfigsInRuleStopStates(e))
      return e;
    const r = new Tt(e.fullCtx);
    for (let s = 0; s < e.items.length; s++) {
      const i = e.items[s];
      if (i.state instanceof At) {
        r.add(i, this.mergeCache);
        continue;
      }
      if (n && i.state.epsilonOnlyTransitions && this.atn.nextTokens(i.state).contains(B.EPSILON)) {
        const l = this.atn.ruleToStopState[i.state.ruleIndex];
        r.add(new ot({ state: l }, i), this.mergeCache);
      }
    }
    return r;
  }
  computeStartState(e, n, r) {
    const s = oa(this.atn, n), i = new Tt(r);
    for (let o = 0; o < e.transitions.length; o++) {
      const l = e.transitions[o].target, a = new ot({ state: l, alt: o + 1, context: s }, null), c = new Xt();
      this.closure(a, i, c, true, r, false);
    }
    return i;
  }
  applyPrecedenceFilter(e) {
    let n;
    const r = [], s = new Tt(e.fullCtx);
    for (let i = 0; i < e.items.length; i++) {
      if (n = e.items[i], n.alt !== 1)
        continue;
      const o = n.semanticContext.evalPrecedence(this.parser, this._outerContext);
      o !== null && (r[n.state.stateNumber] = n.context, o !== n.semanticContext ? s.add(new ot({ semanticContext: o }, n), this.mergeCache) : s.add(n, this.mergeCache));
    }
    for (let i = 0; i < e.items.length; i++)
      if (n = e.items[i], n.alt !== 1) {
        if (!n.precedenceFilterSuppressed) {
          const o = r[n.state.stateNumber] || null;
          if (o !== null && o.equals(n.context))
            continue;
        }
        s.add(n, this.mergeCache);
      }
    return s;
  }
  getReachableTarget(e, n) {
    return e.matches(n, 0, this.atn.maxTokenType) ? e.target : null;
  }
  getPredsForAmbigAlts(e, n, r) {
    let s = [];
    for (let o = 0; o < n.items.length; o++) {
      const l = n.items[o];
      e.has(l.alt) && (s[l.alt] = $e.orContext(s[l.alt] || null, l.semanticContext));
    }
    let i = 0;
    for (let o = 1; o < r + 1; o++) {
      const l = s[o] || null;
      l === null ? s[o] = $e.NONE : l !== $e.NONE && (i += 1);
    }
    return i === 0 && (s = null), this.debug && console.log("getPredsForAmbigAlts result " + or(s)), s;
  }
  getPredicatePredictions(e, n) {
    const r = [];
    let s = false;
    for (let i = 1; i < n.length; i++) {
      const o = n[i];
      e !== null && e.has(i) && r.push(new J5(o, i)), o !== $e.NONE && (s = true);
    }
    return s ? r : null;
  }
  getSynValidOrSemInvalidAltThatFinishedDecisionEntryRule(e, n) {
    const r = this.splitAccordingToSemanticValidity(e, n), s = r[0], i = r[1];
    let o = this.getAltThatFinishedDecisionEntryRule(s);
    return o !== et.INVALID_ALT_NUMBER || i.items.length > 0 && (o = this.getAltThatFinishedDecisionEntryRule(i), o !== et.INVALID_ALT_NUMBER) ? o : et.INVALID_ALT_NUMBER;
  }
  getAltThatFinishedDecisionEntryRule(e) {
    const n = [];
    for (let r = 0; r < e.items.length; r++) {
      const s = e.items[r];
      (s.reachesIntoOuterContext > 0 || s.state instanceof At && s.context.hasEmptyPath()) && n.indexOf(s.alt) < 0 && n.push(s.alt);
    }
    return n.length === 0 ? et.INVALID_ALT_NUMBER : Math.min.apply(null, n);
  }
  splitAccordingToSemanticValidity(e, n) {
    const r = new Tt(e.fullCtx), s = new Tt(e.fullCtx);
    for (let i = 0; i < e.items.length; i++) {
      const o = e.items[i];
      o.semanticContext !== $e.NONE ? o.semanticContext.evaluate(this.parser, n) ? r.add(o) : s.add(o) : r.add(o);
    }
    return [r, s];
  }
  evalSemanticContext(e, n, r) {
    const s = new Tn();
    for (let i = 0; i < e.length; i++) {
      const o = e[i];
      if (o.pred === $e.NONE) {
        if (s.add(o.alt), !r)
          break;
        continue;
      }
      const l = o.pred.evaluate(this.parser, n);
      if ((this.debug || this.dfa_debug) && console.log("eval pred " + o + "=" + l), l && ((this.debug || this.dfa_debug) && console.log("PREDICT " + o.alt), s.add(o.alt), !r))
        break;
    }
    return s;
  }
  closure(e, n, r, s, i, o) {
    this.closureCheckingStopState(
      e,
      n,
      r,
      s,
      i,
      0,
      o
    );
  }
  closureCheckingStopState(e, n, r, s, i, o, l) {
    if ((this.debug || this.debug_closure) && (console.log("closure(" + e.toString(this.parser, true) + ")"), e.reachesIntoOuterContext > 50))
      throw "problem";
    if (e.state instanceof At)
      if (e.context.isEmpty())
        if (i) {
          n.add(e, this.mergeCache);
          return;
        } else
          this.debug && console.log("FALLING off rule " + this.getRuleName(e.state.ruleIndex));
      else {
        for (let a = 0; a < e.context.length; a++) {
          if (e.context.getReturnState(a) === Te.EMPTY_RETURN_STATE) {
            if (i) {
              n.add(new ot({ state: e.state, context: Te.EMPTY }, e), this.mergeCache);
              continue;
            } else
              this.debug && console.log("FALLING off rule " + this.getRuleName(e.state.ruleIndex)), this.closure_(
                e,
                n,
                r,
                s,
                i,
                o,
                l
              );
            continue;
          }
          const c = this.atn.states[e.context.getReturnState(a)], u = e.context.getParent(a), h = { state: c, alt: e.alt, context: u, semanticContext: e.semanticContext }, f = new ot(h, null);
          f.reachesIntoOuterContext = e.reachesIntoOuterContext, this.closureCheckingStopState(f, n, r, s, i, o - 1, l);
        }
        return;
      }
    this.closure_(e, n, r, s, i, o, l);
  }
  closure_(e, n, r, s, i, o, l) {
    const a = e.state;
    a.epsilonOnlyTransitions || n.add(e, this.mergeCache);
    for (let c = 0; c < a.transitions.length; c++) {
      if (c === 0 && this.canDropLoopEntryEdgeInLeftRecursiveRule(e))
        continue;
      const u = a.transitions[c], h = s && !(u instanceof Y5), f = this.getEpsilonTarget(e, u, h, o === 0, i, l);
      if (f !== null) {
        let p = o;
        if (e.state instanceof At) {
          if (this._dfa !== null && this._dfa.precedenceDfa && u.outermostPrecedenceReturn === this._dfa.atnStartState.ruleIndex && (f.precedenceFilterSuppressed = true), f.reachesIntoOuterContext += 1, r.add(f) !== f)
            continue;
          n.dipsIntoOuterContext = true, p -= 1, this.debug && console.log("dips into outer ctx: " + f);
        } else {
          if (!u.isEpsilon && r.add(f) !== f)
            continue;
          u instanceof Mi && p >= 0 && (p += 1);
        }
        this.closureCheckingStopState(f, n, r, h, i, p, l);
      }
    }
  }
  canDropLoopEntryEdgeInLeftRecursiveRule(e) {
    const n = e.state;
    if (n.stateType !== oe.STAR_LOOP_ENTRY || n.stateType !== oe.STAR_LOOP_ENTRY || !n.isPrecedenceDecision || e.context.isEmpty() || e.context.hasEmptyPath())
      return false;
    const r = e.context.length;
    for (let l = 0; l < r; l++)
      if (this.atn.states[e.context.getReturnState(l)].ruleIndex !== n.ruleIndex)
        return false;
    const i = n.transitions[0].target.endState.stateNumber, o = this.atn.states[i];
    for (let l = 0; l < r; l++) {
      const a = e.context.getReturnState(l), c = this.atn.states[a];
      if (c.transitions.length !== 1 || !c.transitions[0].isEpsilon)
        return false;
      const u = c.transitions[0].target;
      if (!(c.stateType === oe.BLOCK_END && u === n) && c !== o && u !== o && !(u.stateType === oe.BLOCK_END && u.transitions.length === 1 && u.transitions[0].isEpsilon && u.transitions[0].target === n))
        return false;
    }
    return true;
  }
  getRuleName(e) {
    return this.parser !== null && e >= 0 ? this.parser.ruleNames[e] : "<rule " + e + ">";
  }
  getEpsilonTarget(e, n, r, s, i, o) {
    switch (n.serializationType) {
      case ee.RULE:
        return this.ruleTransition(e, n);
      case ee.PRECEDENCE:
        return this.precedenceTransition(e, n, r, s, i);
      case ee.PREDICATE:
        return this.predTransition(e, n, r, s, i);
      case ee.ACTION:
        return this.actionTransition(e, n);
      case ee.EPSILON:
        return new ot({ state: n.target }, e);
      case ee.ATOM:
      case ee.RANGE:
      case ee.SET:
        return o && n.matches(B.EOF, 0, 1) ? new ot({ state: n.target }, e) : null;
      default:
        return null;
    }
  }
  actionTransition(e, n) {
    if (this.debug) {
      const r = n.actionIndex === -1 ? 65535 : n.actionIndex;
      console.log("ACTION edge " + n.ruleIndex + ":" + r);
    }
    return new ot({ state: n.target }, e);
  }
  precedenceTransition(e, n, r, s, i) {
    this.debug && (console.log("PRED (collectPredicates=" + r + ") " + n.precedence + ">=_p, ctx dependent=true"), this.parser !== null && console.log("context surrounding pred is " + or(this.parser.getRuleInvocationStack())));
    let o = null;
    if (r && s)
      if (i) {
        const l = this._input.index;
        this._input.seek(this._startIndex);
        const a = n.getPredicate().evaluate(this.parser, this._outerContext);
        this._input.seek(l), a && (o = new ot({ state: n.target }, e));
      } else {
        const l = $e.andContext(e.semanticContext, n.getPredicate());
        o = new ot({ state: n.target, semanticContext: l }, e);
      }
    else
      o = new ot({ state: n.target }, e);
    return this.debug && console.log("config from pred transition=" + o), o;
  }
  predTransition(e, n, r, s, i) {
    this.debug && (console.log("PRED (collectPredicates=" + r + ") " + n.ruleIndex + ":" + n.predIndex + ", ctx dependent=" + n.isCtxDependent), this.parser !== null && console.log("context surrounding pred is " + or(this.parser.getRuleInvocationStack())));
    let o = null;
    if (r && (n.isCtxDependent && s || !n.isCtxDependent))
      if (i) {
        const l = this._input.index;
        this._input.seek(this._startIndex);
        const a = n.getPredicate().evaluate(this.parser, this._outerContext);
        this._input.seek(l), a && (o = new ot({ state: n.target }, e));
      } else {
        const l = $e.andContext(e.semanticContext, n.getPredicate());
        o = new ot({ state: n.target, semanticContext: l }, e);
      }
    else
      o = new ot({ state: n.target }, e);
    return this.debug && console.log("config from pred transition=" + o), o;
  }
  ruleTransition(e, n) {
    this.debug && console.log("CALL rule " + this.getRuleName(n.target.ruleIndex) + ", ctx=" + e.context);
    const r = n.followState, s = Rt.create(e.context, r.stateNumber);
    return new ot({ state: n.target, context: s }, e);
  }
  getConflictingAlts(e) {
    const n = je.getConflictingAltSubsets(e);
    return je.getAlts(n);
  }
  getConflictingAltsOrUniqueAlt(e) {
    let n = null;
    return e.uniqueAlt !== et.INVALID_ALT_NUMBER ? (n = new Tn(), n.add(e.uniqueAlt)) : n = e.conflictingAlts, n;
  }
  getTokenName(e) {
    if (e === B.EOF)
      return "EOF";
    if (this.parser !== null && this.parser.literalNames !== null)
      if (e >= this.parser.literalNames.length && e >= this.parser.symbolicNames.length)
        console.log("" + e + " ttype out of range: " + this.parser.literalNames), console.log("" + this.parser.getInputStream().getTokens());
      else
        return (this.parser.literalNames[e] || this.parser.symbolicNames[e]) + "<" + e + ">";
    return "" + e;
  }
  getLookaheadName(e) {
    return this.getTokenName(e.LA(1));
  }
  dumpDeadEndConfigs(e) {
    console.log("dead end configs: ");
    const n = e.getDeadEndConfigs();
    for (let r = 0; r < n.length; r++) {
      const s = n[r];
      let i = "no edges";
      if (s.state.transitions.length > 0) {
        const o = s.state.transitions[0];
        o instanceof vi ? i = "Atom " + this.getTokenName(o.label) : o instanceof ra && (i = (o instanceof sa ? "~" : "") + "Set " + o.set);
      }
      console.error(s.toString(this.parser, true) + ":" + i);
    }
  }
  noViableAlt(e, n, r, s) {
    return new pa(this.parser, e, e.get(s), e.LT(1), r, n);
  }
  getUniqueAlt(e) {
    let n = et.INVALID_ALT_NUMBER;
    for (let r = 0; r < e.items.length; r++) {
      const s = e.items[r];
      if (n === et.INVALID_ALT_NUMBER)
        n = s.alt;
      else if (s.alt !== n)
        return et.INVALID_ALT_NUMBER;
    }
    return n;
  }
  addDFAEdge(e, n, r, s) {
    if (this.debug && console.log("EDGE " + n + " -> " + s + " upon " + this.getTokenName(r)), s === null)
      return null;
    if (s = this.addDFAState(e, s), n === null || r < -1 || r > this.atn.maxTokenType)
      return s;
    if (n.edges === null && (n.edges = []), n.edges[r + 1] = s, this.debug) {
      const i = this.parser === null ? null : this.parser.literalNames, o = this.parser === null ? null : this.parser.symbolicNames;
      console.log(`DFA=
` + e.toString(i, o));
    }
    return s;
  }
  addDFAState(e, n) {
    if (n === bn.ERROR)
      return n;
    const r = e.states.get(n);
    return r !== null ? r : (n.stateNumber = e.states.length, n.configs.readOnly || (n.configs.optimizeConfigs(this), n.configs.setReadonly(true)), e.states.add(n), this.debug && console.log("adding new DFA state: " + n), n);
  }
  reportAttemptingFullContext(e, n, r, s, i) {
    if (this.debug || this.retry_debug) {
      const o = new Be(s, i + 1);
      console.log("reportAttemptingFullContext decision=" + e.decision + ":" + r + ", input=" + this.parser.getTokenStream().getText(o));
    }
    this.parser !== null && this.parser.getErrorListenerDispatch().reportAttemptingFullContext(this.parser, e, s, i, n, r);
  }
  reportContextSensitivity(e, n, r, s, i) {
    if (this.debug || this.retry_debug) {
      const o = new Be(s, i + 1);
      console.log("reportContextSensitivity decision=" + e.decision + ":" + r + ", input=" + this.parser.getTokenStream().getText(o));
    }
    this.parser !== null && this.parser.getErrorListenerDispatch().reportContextSensitivity(this.parser, e, s, i, n, r);
  }
  reportAmbiguity(e, n, r, s, i, o, l) {
    if (this.debug || this.retry_debug) {
      const a = new Be(r, s + 1);
      console.log("reportAmbiguity " + o + ":" + l + ", input=" + this.parser.getTokenStream().getText(a));
    }
    this.parser !== null && this.parser.getErrorListenerDispatch().reportAmbiguity(this.parser, e, r, s, i, o, l);
  }
};
var g7 = { ATN: et, ATNDeserializer: Q5, LexerATNSimulator: nt, ParserATNSimulator: p7, PredictionMode: je };
var ga = class {
  static {
    __name(this, "ga");
  }
  constructor(e, n, r) {
    this.dfa = e, this.literalNames = n || [], this.symbolicNames = r || [];
  }
  toString() {
    if (this.dfa.s0 === null)
      return null;
    let e = "";
    const n = this.dfa.sortedStates();
    for (let r = 0; r < n.length; r++) {
      const s = n[r];
      if (s.edges !== null) {
        const i = s.edges.length;
        for (let o = 0; o < i; o++) {
          const l = s.edges[o] || null;
          l !== null && l.stateNumber !== 2147483647 && (e = e.concat(this.getStateString(s)), e = e.concat("-"), e = e.concat(this.getEdgeLabel(o)), e = e.concat("->"), e = e.concat(this.getStateString(l)), e = e.concat(`
`));
        }
      }
    }
    return e.length === 0 ? null : e;
  }
  getEdgeLabel(e) {
    return e === 0 ? "EOF" : this.literalNames !== null || this.symbolicNames !== null ? this.literalNames[e - 1] || this.symbolicNames[e - 1] : String.fromCharCode(e - 1);
  }
  getStateString(e) {
    const n = (e.isAcceptState ? ":" : "") + "s" + e.stateNumber + (e.requiresFullContext ? "^" : "");
    return e.isAcceptState ? e.predicates !== null ? n + "=>" + or(e.predicates) : n + "=>" + e.prediction.toString() : n;
  }
};
var e4 = class extends ga {
  static {
    __name(this, "e4");
  }
  constructor(e) {
    super(e, null);
  }
  getEdgeLabel(e) {
    return "'" + String.fromCharCode(e) + "'";
  }
};
var m7 = class {
  static {
    __name(this, "m7");
  }
  constructor(e, n) {
    if (n === void 0 && (n = 0), this.atnStartState = e, this.decision = n, this._states = new Xt(), this.s0 = null, this.precedenceDfa = false, e instanceof br && e.isPrecedenceDecision) {
      this.precedenceDfa = true;
      const r = new Vn(null, new Tt());
      r.edges = [], r.isAcceptState = false, r.requiresFullContext = false, this.s0 = r;
    }
  }
  getPrecedenceStartState(e) {
    if (!this.precedenceDfa)
      throw "Only precedence DFAs may contain a precedence start state.";
    return e < 0 || e >= this.s0.edges.length ? null : this.s0.edges[e] || null;
  }
  setPrecedenceStartState(e, n) {
    if (!this.precedenceDfa)
      throw "Only precedence DFAs may contain a precedence start state.";
    e < 0 || (this.s0.edges[e] = n);
  }
  setPrecedenceDfa(e) {
    if (this.precedenceDfa !== e) {
      if (this._states = new Xt(), e) {
        const n = new Vn(null, new Tt());
        n.edges = [], n.isAcceptState = false, n.requiresFullContext = false, this.s0 = n;
      } else
        this.s0 = null;
      this.precedenceDfa = e;
    }
  }
  sortedStates() {
    return this._states.values().sort(function(n, r) {
      return n.stateNumber - r.stateNumber;
    });
  }
  toString(e, n) {
    return e = e || null, n = n || null, this.s0 === null ? "" : new ga(this, e, n).toString();
  }
  toLexerString() {
    return this.s0 === null ? "" : new e4(this).toString();
  }
  get states() {
    return this._states;
  }
};
var x7 = { DFA: m7, DFASerializer: ga, LexerDFASerializer: e4, PredPrediction: J5 };
var t4 = class {
  static {
    __name(this, "t4");
  }
  visitTerminal(e) {
  }
  visitErrorNode(e) {
  }
  enterEveryRule(e) {
  }
  exitEveryRule(e) {
  }
};
var L7 = class {
  static {
    __name(this, "L7");
  }
  visit(e) {
    return Array.isArray(e) ? e.map(function(n) {
      return n.accept(this);
    }, this) : e.accept(this);
  }
  visitChildren(e) {
    return e.children ? this.visit(e.children) : null;
  }
  visitTerminal(e) {
  }
  visitErrorNode(e) {
  }
};
var Ko = class {
  static {
    __name(this, "Ko");
  }
  walk(e, n) {
    if (n instanceof x1 || n.isErrorNode !== void 0 && n.isErrorNode())
      e.visitErrorNode(n);
    else if (n instanceof Wn)
      e.visitTerminal(n);
    else {
      this.enterRule(e, n);
      for (let s = 0; s < n.getChildCount(); s++) {
        const i = n.getChild(s);
        this.walk(e, i);
      }
      this.exitRule(e, n);
    }
  }
  enterRule(e, n) {
    const r = n.getRuleContext();
    e.enterEveryRule(r), r.enterRule(e);
  }
  exitRule(e, n) {
    const r = n.getRuleContext();
    r.exitRule(e), e.exitEveryRule(r);
  }
};
Ko.DEFAULT = new Ko();
var _7 = { Trees: _n, RuleNode: Ni, ErrorNode: x1, TerminalNode: Wn, ParseTreeListener: t4, ParseTreeVisitor: L7, ParseTreeWalker: Ko };
var s0 = class extends _r {
  static {
    __name(this, "s0");
  }
  constructor(e) {
    super({ message: "", recognizer: e, input: e.getInputStream(), ctx: e._ctx }), this.offendingToken = e.getCurrentToken();
  }
};
var n4 = class extends _r {
  static {
    __name(this, "n4");
  }
  constructor(e, n, r) {
    super({
      message: y7(n, r || null),
      recognizer: e,
      input: e.getInputStream(),
      ctx: e._ctx
    });
    const i = e._interp.atn.states[e.state].transitions[0];
    i instanceof X5 ? (this.ruleIndex = i.ruleIndex, this.predicateIndex = i.predIndex) : (this.ruleIndex = 0, this.predicateIndex = 0), this.predicate = n, this.offendingToken = e.getCurrentToken();
  }
};
function y7(t, e) {
  return e !== null ? e : "failed predicate: {" + t + "}?";
}
__name(y7, "y7");
var C7 = class extends y1 {
  static {
    __name(this, "C7");
  }
  constructor(e) {
    super(), e = e || true, this.exactOnly = e;
  }
  reportAmbiguity(e, n, r, s, i, o, l) {
    if (this.exactOnly && !i)
      return;
    const a = "reportAmbiguity d=" + this.getDecisionDescription(e, n) + ": ambigAlts=" + this.getConflictingAlts(o, l) + ", input='" + e.getTokenStream().getText(new Be(r, s)) + "'";
    e.notifyErrorListeners(a);
  }
  reportAttemptingFullContext(e, n, r, s, i, o) {
    const l = "reportAttemptingFullContext d=" + this.getDecisionDescription(e, n) + ", input='" + e.getTokenStream().getText(new Be(r, s)) + "'";
    e.notifyErrorListeners(l);
  }
  reportContextSensitivity(e, n, r, s, i, o) {
    const l = "reportContextSensitivity d=" + this.getDecisionDescription(e, n) + ", input='" + e.getTokenStream().getText(new Be(r, s)) + "'";
    e.notifyErrorListeners(l);
  }
  getDecisionDescription(e, n) {
    const r = n.decision, s = n.atnStartState.ruleIndex, i = e.ruleNames;
    if (s < 0 || s >= i.length)
      return "" + r;
    const o = i[s] || null;
    return o === null || o.length === 0 ? "" + r : `${r} (${o})`;
  }
  getConflictingAlts(e, n) {
    if (e !== null)
      return e;
    const r = new Tn();
    for (let s = 0; s < n.items.length; s++)
      r.add(n.items[s].alt);
    return `{${r.values().join(", ")}}`;
  }
};
var ma = class _ma extends Error {
  static {
    __name(this, "ma");
  }
  constructor() {
    super(), Error.captureStackTrace(this, _ma);
  }
};
var v7 = class {
  static {
    __name(this, "v7");
  }
  reset(e) {
  }
  recoverInline(e) {
  }
  recover(e, n) {
  }
  sync(e) {
  }
  inErrorRecoveryMode(e) {
  }
  reportError(e) {
  }
};
var xa = class extends v7 {
  static {
    __name(this, "xa");
  }
  constructor() {
    super(), this.errorRecoveryMode = false, this.lastErrorIndex = -1, this.lastErrorStates = null, this.nextTokensContext = null, this.nextTokenState = 0;
  }
  reset(e) {
    this.endErrorCondition(e);
  }
  beginErrorCondition(e) {
    this.errorRecoveryMode = true;
  }
  inErrorRecoveryMode(e) {
    return this.errorRecoveryMode;
  }
  endErrorCondition(e) {
    this.errorRecoveryMode = false, this.lastErrorStates = null, this.lastErrorIndex = -1;
  }
  reportMatch(e) {
    this.endErrorCondition(e);
  }
  reportError(e, n) {
    this.inErrorRecoveryMode(e) || (this.beginErrorCondition(e), n instanceof pa ? this.reportNoViableAlternative(e, n) : n instanceof s0 ? this.reportInputMismatch(e, n) : n instanceof n4 ? this.reportFailedPredicate(e, n) : (console.log("unknown recognition error type: " + n.constructor.name), console.log(n.stack), e.notifyErrorListeners(n.getOffendingToken(), n.getMessage(), n)));
  }
  recover(e, n) {
    this.lastErrorIndex === e.getInputStream().index && this.lastErrorStates !== null && this.lastErrorStates.indexOf(e.state) >= 0 && e.consume(), this.lastErrorIndex = e._input.index, this.lastErrorStates === null && (this.lastErrorStates = []), this.lastErrorStates.push(e.state);
    const r = this.getErrorRecoverySet(e);
    this.consumeUntil(e, r);
  }
  sync(e) {
    if (this.inErrorRecoveryMode(e))
      return;
    const n = e._interp.atn.states[e.state], r = e.getTokenStream().LA(1), s = e.atn.nextTokens(n);
    if (s.contains(r)) {
      this.nextTokensContext = null, this.nextTokenState = oe.INVALID_STATE_NUMBER;
      return;
    } else if (s.contains(B.EPSILON)) {
      this.nextTokensContext === null && (this.nextTokensContext = e._ctx, this.nextTokensState = e._stateNumber);
      return;
    }
    switch (n.stateType) {
      case oe.BLOCK_START:
      case oe.STAR_BLOCK_START:
      case oe.PLUS_BLOCK_START:
      case oe.STAR_LOOP_ENTRY:
        if (this.singleTokenDeletion(e) !== null)
          return;
        throw new s0(e);
      case oe.PLUS_LOOP_BACK:
      case oe.STAR_LOOP_BACK:
        {
          this.reportUnwantedToken(e);
          const i = new cn();
          i.addSet(e.getExpectedTokens());
          const o = i.addSet(this.getErrorRecoverySet(e));
          this.consumeUntil(e, o);
        }
        break;
    }
  }
  reportNoViableAlternative(e, n) {
    const r = e.getTokenStream();
    let s;
    r !== null ? n.startToken.type === B.EOF ? s = "<EOF>" : s = r.getText(new Be(n.startToken.tokenIndex, n.offendingToken.tokenIndex)) : s = "<unknown input>";
    const i = "no viable alternative at input " + this.escapeWSAndQuote(s);
    e.notifyErrorListeners(i, n.offendingToken, n);
  }
  reportInputMismatch(e, n) {
    const r = "mismatched input " + this.getTokenErrorDisplay(n.offendingToken) + " expecting " + n.getExpectedTokens().toString(e.literalNames, e.symbolicNames);
    e.notifyErrorListeners(r, n.offendingToken, n);
  }
  reportFailedPredicate(e, n) {
    const s = "rule " + e.ruleNames[e._ctx.ruleIndex] + " " + n.message;
    e.notifyErrorListeners(s, n.offendingToken, n);
  }
  reportUnwantedToken(e) {
    if (this.inErrorRecoveryMode(e))
      return;
    this.beginErrorCondition(e);
    const n = e.getCurrentToken(), r = this.getTokenErrorDisplay(n), s = this.getExpectedTokens(e), i = "extraneous input " + r + " expecting " + s.toString(e.literalNames, e.symbolicNames);
    e.notifyErrorListeners(i, n, null);
  }
  reportMissingToken(e) {
    if (this.inErrorRecoveryMode(e))
      return;
    this.beginErrorCondition(e);
    const n = e.getCurrentToken(), s = "missing " + this.getExpectedTokens(e).toString(e.literalNames, e.symbolicNames) + " at " + this.getTokenErrorDisplay(n);
    e.notifyErrorListeners(s, n, null);
  }
  recoverInline(e) {
    const n = this.singleTokenDeletion(e);
    if (n !== null)
      return e.consume(), n;
    if (this.singleTokenInsertion(e))
      return this.getMissingSymbol(e);
    throw new s0(e);
  }
  singleTokenInsertion(e) {
    const n = e.getTokenStream().LA(1), r = e._interp.atn, i = r.states[e.state].transitions[0].target;
    return r.nextTokens(i, e._ctx).contains(n) ? (this.reportMissingToken(e), true) : false;
  }
  singleTokenDeletion(e) {
    const n = e.getTokenStream().LA(2);
    if (this.getExpectedTokens(e).contains(n)) {
      this.reportUnwantedToken(e), e.consume();
      const s = e.getCurrentToken();
      return this.reportMatch(e), s;
    } else
      return null;
  }
  getMissingSymbol(e) {
    const n = e.getCurrentToken(), s = this.getExpectedTokens(e).first();
    let i;
    s === B.EOF ? i = "<missing EOF>" : i = "<missing " + e.literalNames[s] + ">";
    let o = n;
    const l = e.getTokenStream().LT(-1);
    return o.type === B.EOF && l !== null && (o = l), e.getTokenFactory().create(
      o.source,
      s,
      i,
      B.DEFAULT_CHANNEL,
      -1,
      -1,
      o.line,
      o.column
    );
  }
  getExpectedTokens(e) {
    return e.getExpectedTokens();
  }
  getTokenErrorDisplay(e) {
    if (e === null)
      return "<no token>";
    let n = e.text;
    return n === null && (e.type === B.EOF ? n = "<EOF>" : n = "<" + e.type + ">"), this.escapeWSAndQuote(n);
  }
  escapeWSAndQuote(e) {
    return e = e.replace(/\n/g, "\\n"), e = e.replace(/\r/g, "\\r"), e = e.replace(/\t/g, "\\t"), "'" + e + "'";
  }
  getErrorRecoverySet(e) {
    const n = e._interp.atn;
    let r = e._ctx;
    const s = new cn();
    for (; r !== null && r.invokingState >= 0; ) {
      const o = n.states[r.invokingState].transitions[0], l = n.nextTokens(o.followState);
      s.addSet(l), r = r.parentCtx;
    }
    return s.removeOne(B.EPSILON), s;
  }
  consumeUntil(e, n) {
    let r = e.getTokenStream().LA(1);
    for (; r !== B.EOF && !n.contains(r); )
      e.consume(), r = e.getTokenStream().LA(1);
  }
};
var b7 = class extends xa {
  static {
    __name(this, "b7");
  }
  constructor() {
    super();
  }
  recover(e, n) {
    let r = e._ctx;
    for (; r !== null; )
      r.exception = n, r = r.parentCtx;
    throw new ma(n);
  }
  recoverInline(e) {
    this.recover(e, new s0(e));
  }
  sync(e) {
  }
};
var w7 = {
  RecognitionException: _r,
  NoViableAltException: pa,
  LexerNoViableAltException: fa,
  InputMismatchException: s0,
  FailedPredicateException: n4,
  DiagnosticErrorListener: C7,
  BailErrorStrategy: b7,
  DefaultErrorStrategy: xa,
  ErrorListener: y1
};
var Sr = class {
  static {
    __name(this, "Sr");
  }
  constructor(e, n) {
    if (this.name = "<empty>", this.strdata = e, this.decodeToUnicodeCodePoints = n || false, this._index = 0, this.data = [], this.decodeToUnicodeCodePoints)
      for (let r = 0; r < this.strdata.length; ) {
        const s = this.strdata.codePointAt(r);
        this.data.push(s), r += s <= 65535 ? 1 : 2;
      }
    else {
      this.data = new Array(this.strdata.length);
      for (let r = 0; r < this.strdata.length; r++) {
        const s = this.strdata.charCodeAt(r);
        this.data[r] = s;
      }
    }
    this._size = this.data.length;
  }
  reset() {
    this._index = 0;
  }
  consume() {
    if (this._index >= this._size)
      throw "cannot consume EOF";
    this._index += 1;
  }
  LA(e) {
    if (e === 0)
      return 0;
    e < 0 && (e += 1);
    const n = this._index + e - 1;
    return n < 0 || n >= this._size ? B.EOF : this.data[n];
  }
  LT(e) {
    return this.LA(e);
  }
  mark() {
    return -1;
  }
  release(e) {
  }
  seek(e) {
    if (e <= this._index) {
      this._index = e;
      return;
    }
    this._index = Math.min(e, this._size);
  }
  getText(e, n) {
    if (n >= this._size && (n = this._size - 1), e >= this._size)
      return "";
    if (this.decodeToUnicodeCodePoints) {
      let r = "";
      for (let s = e; s <= n; s++)
        r += String.fromCodePoint(this.data[s]);
      return r;
    } else
      return this.strdata.slice(e, n + 1);
  }
  toString() {
    return this.strdata;
  }
  get index() {
    return this._index;
  }
  get size() {
    return this._size;
  }
};
var Yo = {};
var E7 = {
  fromString: function(t) {
    return new Sr(t, true);
  },
  fromBlob: function(t, e, n, r) {
    const s = new window.FileReader();
    s.onload = function(i) {
      const o = new Sr(i.target.result, true);
      n(o);
    }, s.onerror = r, s.readAsText(t, e);
  },
  fromBuffer: function(t, e) {
    return new Sr(t.toString(e), true);
  },
  fromPath: function(t, e, n) {
    Yo.readFile(t, e, function(r, s) {
      let i = null;
      s !== null && (i = new Sr(s, true)), n(r, i);
    });
  },
  fromPathSync: function(t, e) {
    const n = Yo.readFileSync(t, e);
    return new Sr(n, true);
  }
};
var T7 = class extends Sr {
  static {
    __name(this, "T7");
  }
  constructor(e, n) {
    const r = Yo.readFileSync(e, "utf8");
    super(r, n), this.fileName = e;
  }
};
var S7 = class {
  static {
    __name(this, "S7");
  }
};
var A7 = class extends S7 {
  static {
    __name(this, "A7");
  }
  constructor(e) {
    super(), this.tokenSource = e, this.tokens = [], this.index = -1, this.fetchedEOF = false;
  }
  mark() {
    return 0;
  }
  release(e) {
  }
  reset() {
    this.seek(0);
  }
  seek(e) {
    this.lazyInit(), this.index = this.adjustSeekIndex(e);
  }
  get(e) {
    return this.lazyInit(), this.tokens[e];
  }
  consume() {
    let e = false;
    if (this.index >= 0 ? this.fetchedEOF ? e = this.index < this.tokens.length - 1 : e = this.index < this.tokens.length : e = false, !e && this.LA(1) === B.EOF)
      throw "cannot consume EOF";
    this.sync(this.index + 1) && (this.index = this.adjustSeekIndex(this.index + 1));
  }
  sync(e) {
    const n = e - this.tokens.length + 1;
    return n > 0 ? this.fetch(n) >= n : true;
  }
  fetch(e) {
    if (this.fetchedEOF)
      return 0;
    for (let n = 0; n < e; n++) {
      const r = this.tokenSource.nextToken();
      if (r.tokenIndex = this.tokens.length, this.tokens.push(r), r.type === B.EOF)
        return this.fetchedEOF = true, n + 1;
    }
    return e;
  }
  getTokens(e, n, r) {
    if (r === void 0 && (r = null), e < 0 || n < 0)
      return null;
    this.lazyInit();
    const s = [];
    n >= this.tokens.length && (n = this.tokens.length - 1);
    for (let i = e; i < n; i++) {
      const o = this.tokens[i];
      if (o.type === B.EOF)
        break;
      (r === null || r.contains(o.type)) && s.push(o);
    }
    return s;
  }
  LA(e) {
    return this.LT(e).type;
  }
  LB(e) {
    return this.index - e < 0 ? null : this.tokens[this.index - e];
  }
  LT(e) {
    if (this.lazyInit(), e === 0)
      return null;
    if (e < 0)
      return this.LB(-e);
    const n = this.index + e - 1;
    return this.sync(n), n >= this.tokens.length ? this.tokens[this.tokens.length - 1] : this.tokens[n];
  }
  adjustSeekIndex(e) {
    return e;
  }
  lazyInit() {
    this.index === -1 && this.setup();
  }
  setup() {
    this.sync(0), this.index = this.adjustSeekIndex(0);
  }
  setTokenSource(e) {
    this.tokenSource = e, this.tokens = [], this.index = -1, this.fetchedEOF = false;
  }
  nextTokenOnChannel(e, n) {
    if (this.sync(e), e >= this.tokens.length)
      return -1;
    let r = this.tokens[e];
    for (; r.channel !== this.channel; ) {
      if (r.type === B.EOF)
        return -1;
      e += 1, this.sync(e), r = this.tokens[e];
    }
    return e;
  }
  previousTokenOnChannel(e, n) {
    for (; e >= 0 && this.tokens[e].channel !== n; )
      e -= 1;
    return e;
  }
  getHiddenTokensToRight(e, n) {
    if (n === void 0 && (n = -1), this.lazyInit(), e < 0 || e >= this.tokens.length)
      throw "" + e + " not in 0.." + this.tokens.length - 1;
    const r = this.nextTokenOnChannel(e + 1, rt.DEFAULT_TOKEN_CHANNEL), s = e + 1, i = r === -1 ? this.tokens.length - 1 : r;
    return this.filterForChannel(s, i, n);
  }
  getHiddenTokensToLeft(e, n) {
    if (n === void 0 && (n = -1), this.lazyInit(), e < 0 || e >= this.tokens.length)
      throw "" + e + " not in 0.." + this.tokens.length - 1;
    const r = this.previousTokenOnChannel(e - 1, rt.DEFAULT_TOKEN_CHANNEL);
    if (r === e - 1)
      return null;
    const s = r + 1, i = e - 1;
    return this.filterForChannel(s, i, n);
  }
  filterForChannel(e, n, r) {
    const s = [];
    for (let i = e; i < n + 1; i++) {
      const o = this.tokens[i];
      r === -1 ? o.channel !== rt.DEFAULT_TOKEN_CHANNEL && s.push(o) : o.channel === r && s.push(o);
    }
    return s.length === 0 ? null : s;
  }
  getSourceName() {
    return this.tokenSource.getSourceName();
  }
  getText(e) {
    this.lazyInit(), this.fill(), e == null && (e = new Be(0, this.tokens.length - 1));
    let n = e.start;
    n instanceof B && (n = n.tokenIndex);
    let r = e.stop;
    if (r instanceof B && (r = r.tokenIndex), n === null || r === null || n < 0 || r < 0)
      return "";
    r >= this.tokens.length && (r = this.tokens.length - 1);
    let s = "";
    for (let i = n; i < r + 1; i++) {
      const o = this.tokens[i];
      if (o.type === B.EOF)
        break;
      s = s + o.text;
    }
    return s;
  }
  fill() {
    for (this.lazyInit(); this.fetch(1e3) === 1e3; )
      ;
  }
};
var R7 = class extends A7 {
  static {
    __name(this, "R7");
  }
  constructor(e, n) {
    super(e), this.channel = n === void 0 ? B.DEFAULT_CHANNEL : n;
  }
  adjustSeekIndex(e) {
    return this.nextTokenOnChannel(e, this.channel);
  }
  LB(e) {
    if (e === 0 || this.index - e < 0)
      return null;
    let n = this.index, r = 1;
    for (; r <= e; )
      n = this.previousTokenOnChannel(n - 1, this.channel), r += 1;
    return n < 0 ? null : this.tokens[n];
  }
  LT(e) {
    if (this.lazyInit(), e === 0)
      return null;
    if (e < 0)
      return this.LB(-e);
    let n = this.index, r = 1;
    for (; r < e; )
      this.sync(n + 1) && (n = this.nextTokenOnChannel(n + 1, this.channel)), r += 1;
    return this.tokens[n];
  }
  getNumberOfOnChannelTokens() {
    let e = 0;
    this.fill();
    for (let n = 0; n < this.tokens.length; n++) {
      const r = this.tokens[n];
      if (r.channel === this.channel && (e += 1), r.type === B.EOF)
        break;
    }
    return e;
  }
};
var k7 = class extends t4 {
  static {
    __name(this, "k7");
  }
  constructor(e) {
    super(), this.parser = e;
  }
  enterEveryRule(e) {
    console.log("enter   " + this.parser.ruleNames[e.ruleIndex] + ", LT(1)=" + this.parser._input.LT(1).text);
  }
  visitTerminal(e) {
    console.log("consume " + e.symbol + " rule " + this.parser.ruleNames[this.parser._ctx.ruleIndex]);
  }
  exitEveryRule(e) {
    console.log("exit    " + this.parser.ruleNames[e.ruleIndex] + ", LT(1)=" + this.parser._input.LT(1).text);
  }
};
var r4 = class extends C1 {
  static {
    __name(this, "r4");
  }
  constructor(e) {
    super(), this._input = null, this._errHandler = new xa(), this._precedenceStack = [], this._precedenceStack.push(0), this._ctx = null, this.buildParseTrees = true, this._tracer = null, this._parseListeners = null, this._syntaxErrors = 0, this.setInputStream(e);
  }
  reset() {
    this._input !== null && this._input.seek(0), this._errHandler.reset(this), this._ctx = null, this._syntaxErrors = 0, this.setTrace(false), this._precedenceStack = [], this._precedenceStack.push(0), this._interp !== null && this._interp.reset();
  }
  match(e) {
    let n = this.getCurrentToken();
    return n.type === e ? (this._errHandler.reportMatch(this), this.consume()) : (n = this._errHandler.recoverInline(this), this.buildParseTrees && n.tokenIndex === -1 && this._ctx.addErrorNode(n)), n;
  }
  matchWildcard() {
    let e = this.getCurrentToken();
    return e.type > 0 ? (this._errHandler.reportMatch(this), this.consume()) : (e = this._errHandler.recoverInline(this), this._buildParseTrees && e.tokenIndex === -1 && this._ctx.addErrorNode(e)), e;
  }
  getParseListeners() {
    return this._parseListeners || [];
  }
  addParseListener(e) {
    if (e === null)
      throw "listener";
    this._parseListeners === null && (this._parseListeners = []), this._parseListeners.push(e);
  }
  removeParseListener(e) {
    if (this._parseListeners !== null) {
      const n = this._parseListeners.indexOf(e);
      n >= 0 && this._parseListeners.splice(n, 1), this._parseListeners.length === 0 && (this._parseListeners = null);
    }
  }
  removeParseListeners() {
    this._parseListeners = null;
  }
  triggerEnterRuleEvent() {
    if (this._parseListeners !== null) {
      const e = this._ctx;
      this._parseListeners.forEach(function(n) {
        n.enterEveryRule(e), e.enterRule(n);
      });
    }
  }
  triggerExitRuleEvent() {
    if (this._parseListeners !== null) {
      const e = this._ctx;
      this._parseListeners.slice(0).reverse().forEach(function(n) {
        e.exitRule(n), n.exitEveryRule(e);
      });
    }
  }
  getTokenFactory() {
    return this._input.tokenSource._factory;
  }
  setTokenFactory(e) {
    this._input.tokenSource._factory = e;
  }
  getATNWithBypassAlts() {
    const e = this.getSerializedATN();
    if (e === null)
      throw "The current parser does not support an ATN with bypass alternatives.";
    let n = this.bypassAltsAtnCache[e];
    if (n === null) {
      const r = new L0();
      r.generateRuleBypassTransitions = true, n = new Q5(r).deserialize(e), this.bypassAltsAtnCache[e] = n;
    }
    return n;
  }
  getInputStream() {
    return this.getTokenStream();
  }
  setInputStream(e) {
    this.setTokenStream(e);
  }
  getTokenStream() {
    return this._input;
  }
  setTokenStream(e) {
    this._input = null, this.reset(), this._input = e;
  }
  getCurrentToken() {
    return this._input.LT(1);
  }
  notifyErrorListeners(e, n, r) {
    n = n || null, r = r || null, n === null && (n = this.getCurrentToken()), this._syntaxErrors += 1;
    const s = n.line, i = n.column;
    this.getErrorListenerDispatch().syntaxError(this, n, s, i, e, r);
  }
  consume() {
    const e = this.getCurrentToken();
    e.type !== B.EOF && this.getInputStream().consume();
    const n = this._parseListeners !== null && this._parseListeners.length > 0;
    if (this.buildParseTrees || n) {
      let r;
      this._errHandler.inErrorRecoveryMode(this) ? r = this._ctx.addErrorNode(e) : r = this._ctx.addTokenNode(e), r.invokingState = this.state, n && this._parseListeners.forEach(function(s) {
        r instanceof x1 || r.isErrorNode !== void 0 && r.isErrorNode() ? s.visitErrorNode(r) : r instanceof Wn && s.visitTerminal(r);
      });
    }
    return e;
  }
  addContextToParseTree() {
    this._ctx.parentCtx !== null && this._ctx.parentCtx.addChild(this._ctx);
  }
  enterRule(e, n, r) {
    this.state = n, this._ctx = e, this._ctx.start = this._input.LT(1), this.buildParseTrees && this.addContextToParseTree(), this.triggerEnterRuleEvent();
  }
  exitRule() {
    this._ctx.stop = this._input.LT(-1), this.triggerExitRuleEvent(), this.state = this._ctx.invokingState, this._ctx = this._ctx.parentCtx;
  }
  enterOuterAlt(e, n) {
    e.setAltNumber(n), this.buildParseTrees && this._ctx !== e && this._ctx.parentCtx !== null && (this._ctx.parentCtx.removeLastChild(), this._ctx.parentCtx.addChild(e)), this._ctx = e;
  }
  getPrecedence() {
    return this._precedenceStack.length === 0 ? -1 : this._precedenceStack[this._precedenceStack.length - 1];
  }
  enterRecursionRule(e, n, r, s) {
    this.state = n, this._precedenceStack.push(s), this._ctx = e, this._ctx.start = this._input.LT(1), this.triggerEnterRuleEvent();
  }
  pushNewRecursionContext(e, n, r) {
    const s = this._ctx;
    s.parentCtx = e, s.invokingState = n, s.stop = this._input.LT(-1), this._ctx = e, this._ctx.start = s.start, this.buildParseTrees && this._ctx.addChild(s), this.triggerEnterRuleEvent();
  }
  unrollRecursionContexts(e) {
    this._precedenceStack.pop(), this._ctx.stop = this._input.LT(-1);
    const n = this._ctx, r = this.getParseListeners();
    if (r !== null && r.length > 0)
      for (; this._ctx !== e; )
        this.triggerExitRuleEvent(), this._ctx = this._ctx.parentCtx;
    else
      this._ctx = e;
    n.parentCtx = e, this.buildParseTrees && e !== null && e.addChild(n);
  }
  getInvokingContext(e) {
    let n = this._ctx;
    for (; n !== null; ) {
      if (n.ruleIndex === e)
        return n;
      n = n.parentCtx;
    }
    return null;
  }
  precpred(e, n) {
    return n >= this._precedenceStack[this._precedenceStack.length - 1];
  }
  inContext(e) {
    return false;
  }
  isExpectedToken(e) {
    const n = this._interp.atn;
    let r = this._ctx;
    const s = n.states[this.state];
    let i = n.nextTokens(s);
    if (i.contains(e))
      return true;
    if (!i.contains(B.EPSILON))
      return false;
    for (; r !== null && r.invokingState >= 0 && i.contains(B.EPSILON); ) {
      const l = n.states[r.invokingState].transitions[0];
      if (i = n.nextTokens(l.followState), i.contains(e))
        return true;
      r = r.parentCtx;
    }
    return !!(i.contains(B.EPSILON) && e === B.EOF);
  }
  getExpectedTokens() {
    return this._interp.atn.getExpectedTokens(this.state, this._ctx);
  }
  getExpectedTokensWithinCurrentRule() {
    const e = this._interp.atn, n = e.states[this.state];
    return e.nextTokens(n);
  }
  getRuleIndex(e) {
    const n = this.getRuleIndexMap()[e];
    return n !== null ? n : -1;
  }
  getRuleInvocationStack(e) {
    e = e || null, e === null && (e = this._ctx);
    const n = [];
    for (; e !== null; ) {
      const r = e.ruleIndex;
      r < 0 ? n.push("n/a") : n.push(this.ruleNames[r]), e = e.parentCtx;
    }
    return n;
  }
  getDFAStrings() {
    return this._interp.decisionToDFA.toString();
  }
  dumpDFA() {
    let e = false;
    for (let n = 0; n < this._interp.decisionToDFA.length; n++) {
      const r = this._interp.decisionToDFA[n];
      r.states.length > 0 && (e && console.log(), this.printer.println("Decision " + r.decision + ":"), this.printer.print(r.toString(this.literalNames, this.symbolicNames)), e = true);
    }
  }
  getSourceName() {
    return this._input.sourceName;
  }
  setTrace(e) {
    e ? (this._tracer !== null && this.removeParseListener(this._tracer), this._tracer = new k7(this), this.addParseListener(this._tracer)) : (this.removeParseListener(this._tracer), this._tracer = null);
  }
};
r4.bypassAltsAtnCache = {};
var O7 = class {
  static {
    __name(this, "O7");
  }
  constructor() {
    this.cache = new F0();
  }
  add(e) {
    if (e === Te.EMPTY)
      return Te.EMPTY;
    const n = this.cache.get(e) || null;
    return n !== null ? n : (this.cache.set(e, e), e);
  }
  get(e) {
    return this.cache.get(e) || null;
  }
  get length() {
    return this.cache.length;
  }
};
var s4 = class extends Wn {
  static {
    __name(this, "s4");
  }
  constructor(e) {
    super(), this.parentCtx = null, this.symbol = e;
  }
  getChild(e) {
    return null;
  }
  getSymbol() {
    return this.symbol;
  }
  getParent() {
    return this.parentCtx;
  }
  getPayload() {
    return this.symbol;
  }
  getSourceInterval() {
    if (this.symbol === null)
      return Be.INVALID_INTERVAL;
    const e = this.symbol.tokenIndex;
    return new Be(e, e);
  }
  getChildCount() {
    return 0;
  }
  accept(e) {
    return e.visitTerminal(this);
  }
  getText() {
    return this.symbol.text;
  }
  toString() {
    return this.symbol.type === B.EOF ? "<EOF>" : this.symbol.text;
  }
};
var R2 = class extends s4 {
  static {
    __name(this, "R2");
  }
  constructor(e) {
    super(e);
  }
  isErrorNode() {
    return true;
  }
  accept(e) {
    return e.visitErrorNode(this);
  }
};
var i4 = class extends ys {
  static {
    __name(this, "i4");
  }
  constructor(e, n) {
    e = e || null, n = n || null, super(e, n), this.ruleIndex = -1, this.children = null, this.start = null, this.stop = null, this.exception = null;
  }
  copyFrom(e) {
    this.parentCtx = e.parentCtx, this.invokingState = e.invokingState, this.children = null, this.start = e.start, this.stop = e.stop, e.children && (this.children = [], e.children.map(function(n) {
      n instanceof R2 && (this.children.push(n), n.parentCtx = this);
    }, this));
  }
  enterRule(e) {
  }
  exitRule(e) {
  }
  addChild(e) {
    return this.children === null && (this.children = []), this.children.push(e), e;
  }
  removeLastChild() {
    this.children !== null && this.children.pop();
  }
  addTokenNode(e) {
    const n = new s4(e);
    return this.addChild(n), n.parentCtx = this, n;
  }
  addErrorNode(e) {
    const n = new R2(e);
    return this.addChild(n), n.parentCtx = this, n;
  }
  getChild(e, n) {
    if (n = n || null, this.children === null || e < 0 || e >= this.children.length)
      return null;
    if (n === null)
      return this.children[e];
    for (let r = 0; r < this.children.length; r++) {
      const s = this.children[r];
      if (s instanceof n) {
        if (e === 0)
          return s;
        e -= 1;
      }
    }
    return null;
  }
  getToken(e, n) {
    if (this.children === null || n < 0 || n >= this.children.length)
      return null;
    for (let r = 0; r < this.children.length; r++) {
      const s = this.children[r];
      if (s instanceof Wn && s.symbol.type === e) {
        if (n === 0)
          return s;
        n -= 1;
      }
    }
    return null;
  }
  getTokens(e) {
    if (this.children === null)
      return [];
    {
      const n = [];
      for (let r = 0; r < this.children.length; r++) {
        const s = this.children[r];
        s instanceof Wn && s.symbol.type === e && n.push(s);
      }
      return n;
    }
  }
  getTypedRuleContext(e, n) {
    return this.getChild(n, e);
  }
  getTypedRuleContexts(e) {
    if (this.children === null)
      return [];
    {
      const n = [];
      for (let r = 0; r < this.children.length; r++) {
        const s = this.children[r];
        s instanceof e && n.push(s);
      }
      return n;
    }
  }
  getChildCount() {
    return this.children === null ? 0 : this.children.length;
  }
  getSourceInterval() {
    return this.start === null || this.stop === null ? Be.INVALID_INTERVAL : new Be(this.start.tokenIndex, this.stop.tokenIndex);
  }
};
ys.EMPTY = new i4();
var I7 = { arrayToString: or };
var b = {
  atn: g7,
  dfa: x7,
  tree: _7,
  error: w7,
  Token: B,
  CommonToken: Ur,
  CharStreams: E7,
  InputStream: Sr,
  FileStream: T7,
  CommonTokenStream: R7,
  Lexer: rt,
  Parser: r4,
  PredictionContextCache: O7,
  ParserRuleContext: i4,
  Interval: Be,
  IntervalSet: cn,
  LL1Analyzer: Cs,
  Utils: I7
};
var M7 = [
  4,
  0,
  65,
  511,
  6,
  -1,
  6,
  -1,
  6,
  -1,
  2,
  0,
  7,
  0,
  2,
  1,
  7,
  1,
  2,
  2,
  7,
  2,
  2,
  3,
  7,
  3,
  2,
  4,
  7,
  4,
  2,
  5,
  7,
  5,
  2,
  6,
  7,
  6,
  2,
  7,
  7,
  7,
  2,
  8,
  7,
  8,
  2,
  9,
  7,
  9,
  2,
  10,
  7,
  10,
  2,
  11,
  7,
  11,
  2,
  12,
  7,
  12,
  2,
  13,
  7,
  13,
  2,
  14,
  7,
  14,
  2,
  15,
  7,
  15,
  2,
  16,
  7,
  16,
  2,
  17,
  7,
  17,
  2,
  18,
  7,
  18,
  2,
  19,
  7,
  19,
  2,
  20,
  7,
  20,
  2,
  21,
  7,
  21,
  2,
  22,
  7,
  22,
  2,
  23,
  7,
  23,
  2,
  24,
  7,
  24,
  2,
  25,
  7,
  25,
  2,
  26,
  7,
  26,
  2,
  27,
  7,
  27,
  2,
  28,
  7,
  28,
  2,
  29,
  7,
  29,
  2,
  30,
  7,
  30,
  2,
  31,
  7,
  31,
  2,
  32,
  7,
  32,
  2,
  33,
  7,
  33,
  2,
  34,
  7,
  34,
  2,
  35,
  7,
  35,
  2,
  36,
  7,
  36,
  2,
  37,
  7,
  37,
  2,
  38,
  7,
  38,
  2,
  39,
  7,
  39,
  2,
  40,
  7,
  40,
  2,
  41,
  7,
  41,
  2,
  42,
  7,
  42,
  2,
  43,
  7,
  43,
  2,
  44,
  7,
  44,
  2,
  45,
  7,
  45,
  2,
  46,
  7,
  46,
  2,
  47,
  7,
  47,
  2,
  48,
  7,
  48,
  2,
  49,
  7,
  49,
  2,
  50,
  7,
  50,
  2,
  51,
  7,
  51,
  2,
  52,
  7,
  52,
  2,
  53,
  7,
  53,
  2,
  54,
  7,
  54,
  2,
  55,
  7,
  55,
  2,
  56,
  7,
  56,
  2,
  57,
  7,
  57,
  2,
  58,
  7,
  58,
  2,
  59,
  7,
  59,
  2,
  60,
  7,
  60,
  2,
  61,
  7,
  61,
  2,
  62,
  7,
  62,
  2,
  63,
  7,
  63,
  2,
  64,
  7,
  64,
  2,
  65,
  7,
  65,
  1,
  0,
  1,
  0,
  1,
  0,
  1,
  0,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  2,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  4,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  5,
  1,
  6,
  1,
  6,
  1,
  6,
  1,
  6,
  1,
  7,
  1,
  7,
  1,
  7,
  1,
  8,
  1,
  8,
  1,
  8,
  1,
  9,
  1,
  9,
  1,
  9,
  1,
  10,
  1,
  10,
  1,
  11,
  1,
  11,
  4,
  11,
  201,
  8,
  11,
  11,
  11,
  12,
  11,
  202,
  1,
  12,
  1,
  12,
  1,
  12,
  1,
  13,
  1,
  13,
  1,
  13,
  1,
  14,
  1,
  14,
  1,
  14,
  1,
  15,
  1,
  15,
  1,
  15,
  1,
  16,
  1,
  16,
  1,
  17,
  1,
  17,
  1,
  18,
  1,
  18,
  1,
  18,
  1,
  19,
  1,
  19,
  1,
  19,
  1,
  20,
  1,
  20,
  1,
  21,
  1,
  21,
  1,
  22,
  1,
  22,
  1,
  23,
  1,
  23,
  1,
  24,
  1,
  24,
  1,
  25,
  1,
  25,
  1,
  26,
  1,
  26,
  1,
  27,
  1,
  27,
  1,
  28,
  1,
  28,
  1,
  29,
  1,
  29,
  1,
  30,
  1,
  30,
  1,
  31,
  1,
  31,
  1,
  32,
  1,
  32,
  1,
  33,
  1,
  33,
  1,
  34,
  1,
  34,
  1,
  34,
  1,
  34,
  1,
  34,
  1,
  35,
  1,
  35,
  1,
  35,
  1,
  35,
  1,
  35,
  1,
  35,
  1,
  36,
  1,
  36,
  1,
  36,
  1,
  36,
  1,
  36,
  1,
  36,
  1,
  36,
  3,
  36,
  273,
  8,
  36,
  1,
  37,
  1,
  37,
  1,
  37,
  1,
  38,
  1,
  38,
  1,
  38,
  1,
  38,
  1,
  38,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  39,
  3,
  39,
  309,
  8,
  39,
  1,
  40,
  1,
  40,
  1,
  40,
  1,
  40,
  1,
  40,
  1,
  40,
  1,
  40,
  1,
  41,
  1,
  41,
  1,
  41,
  1,
  41,
  1,
  42,
  1,
  42,
  1,
  42,
  1,
  42,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  44,
  1,
  44,
  1,
  44,
  1,
  44,
  1,
  45,
  1,
  45,
  1,
  45,
  1,
  46,
  1,
  46,
  1,
  46,
  1,
  46,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  49,
  1,
  49,
  1,
  49,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  3,
  50,
  376,
  8,
  50,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  1,
  51,
  3,
  51,
  404,
  8,
  51,
  1,
  52,
  1,
  52,
  5,
  52,
  408,
  8,
  52,
  10,
  52,
  12,
  52,
  411,
  9,
  52,
  1,
  53,
  1,
  53,
  1,
  54,
  1,
  54,
  5,
  54,
  417,
  8,
  54,
  10,
  54,
  12,
  54,
  420,
  9,
  54,
  1,
  55,
  4,
  55,
  423,
  8,
  55,
  11,
  55,
  12,
  55,
  424,
  1,
  56,
  4,
  56,
  428,
  8,
  56,
  11,
  56,
  12,
  56,
  429,
  1,
  56,
  1,
  56,
  5,
  56,
  434,
  8,
  56,
  10,
  56,
  12,
  56,
  437,
  9,
  56,
  1,
  56,
  1,
  56,
  4,
  56,
  441,
  8,
  56,
  11,
  56,
  12,
  56,
  442,
  3,
  56,
  445,
  8,
  56,
  1,
  57,
  1,
  57,
  1,
  57,
  1,
  57,
  5,
  57,
  451,
  8,
  57,
  10,
  57,
  12,
  57,
  454,
  9,
  57,
  1,
  57,
  3,
  57,
  457,
  8,
  57,
  1,
  58,
  1,
  58,
  1,
  58,
  1,
  58,
  1,
  59,
  1,
  59,
  1,
  59,
  1,
  59,
  5,
  59,
  467,
  8,
  59,
  10,
  59,
  12,
  59,
  470,
  9,
  59,
  1,
  59,
  1,
  59,
  1,
  59,
  1,
  59,
  1,
  60,
  1,
  60,
  1,
  61,
  1,
  61,
  5,
  61,
  480,
  8,
  61,
  10,
  61,
  12,
  61,
  483,
  9,
  61,
  1,
  61,
  1,
  61,
  1,
  61,
  1,
  61,
  5,
  61,
  489,
  8,
  61,
  10,
  61,
  12,
  61,
  492,
  9,
  61,
  1,
  62,
  4,
  62,
  495,
  8,
  62,
  11,
  62,
  12,
  62,
  496,
  1,
  63,
  1,
  63,
  1,
  63,
  1,
  63,
  1,
  64,
  4,
  64,
  504,
  8,
  64,
  11,
  64,
  12,
  64,
  505,
  1,
  65,
  1,
  65,
  1,
  65,
  1,
  65,
  1,
  468,
  0,
  66,
  3,
  1,
  5,
  2,
  7,
  3,
  9,
  4,
  11,
  5,
  13,
  6,
  15,
  7,
  17,
  8,
  19,
  9,
  21,
  10,
  23,
  0,
  25,
  11,
  27,
  12,
  29,
  13,
  31,
  14,
  33,
  15,
  35,
  16,
  37,
  17,
  39,
  18,
  41,
  19,
  43,
  20,
  45,
  21,
  47,
  22,
  49,
  23,
  51,
  24,
  53,
  25,
  55,
  26,
  57,
  27,
  59,
  28,
  61,
  29,
  63,
  30,
  65,
  31,
  67,
  32,
  69,
  33,
  71,
  34,
  73,
  35,
  75,
  36,
  77,
  37,
  79,
  38,
  81,
  39,
  83,
  40,
  85,
  41,
  87,
  42,
  89,
  43,
  91,
  44,
  93,
  45,
  95,
  46,
  97,
  47,
  99,
  48,
  101,
  49,
  103,
  50,
  105,
  51,
  107,
  52,
  109,
  53,
  111,
  54,
  113,
  55,
  115,
  56,
  117,
  57,
  119,
  58,
  121,
  59,
  123,
  60,
  125,
  61,
  127,
  62,
  129,
  63,
  131,
  64,
  133,
  65,
  3,
  0,
  1,
  2,
  7,
  2,
  0,
  9,
  9,
  32,
  32,
  3,
  0,
  48,
  57,
  65,
  70,
  97,
  102,
  4,
  0,
  48,
  57,
  65,
  90,
  95,
  95,
  97,
  122,
  3,
  0,
  65,
  90,
  95,
  95,
  97,
  122,
  1,
  0,
  48,
  57,
  3,
  0,
  10,
  10,
  13,
  13,
  34,
  34,
  2,
  0,
  10,
  10,
  13,
  13,
  532,
  0,
  3,
  1,
  0,
  0,
  0,
  0,
  5,
  1,
  0,
  0,
  0,
  0,
  7,
  1,
  0,
  0,
  0,
  0,
  9,
  1,
  0,
  0,
  0,
  0,
  11,
  1,
  0,
  0,
  0,
  0,
  13,
  1,
  0,
  0,
  0,
  0,
  15,
  1,
  0,
  0,
  0,
  0,
  17,
  1,
  0,
  0,
  0,
  0,
  19,
  1,
  0,
  0,
  0,
  0,
  21,
  1,
  0,
  0,
  0,
  0,
  25,
  1,
  0,
  0,
  0,
  0,
  27,
  1,
  0,
  0,
  0,
  0,
  29,
  1,
  0,
  0,
  0,
  0,
  31,
  1,
  0,
  0,
  0,
  0,
  33,
  1,
  0,
  0,
  0,
  0,
  35,
  1,
  0,
  0,
  0,
  0,
  37,
  1,
  0,
  0,
  0,
  0,
  39,
  1,
  0,
  0,
  0,
  0,
  41,
  1,
  0,
  0,
  0,
  0,
  43,
  1,
  0,
  0,
  0,
  0,
  45,
  1,
  0,
  0,
  0,
  0,
  47,
  1,
  0,
  0,
  0,
  0,
  49,
  1,
  0,
  0,
  0,
  0,
  51,
  1,
  0,
  0,
  0,
  0,
  53,
  1,
  0,
  0,
  0,
  0,
  55,
  1,
  0,
  0,
  0,
  0,
  57,
  1,
  0,
  0,
  0,
  0,
  59,
  1,
  0,
  0,
  0,
  0,
  61,
  1,
  0,
  0,
  0,
  0,
  63,
  1,
  0,
  0,
  0,
  0,
  65,
  1,
  0,
  0,
  0,
  0,
  67,
  1,
  0,
  0,
  0,
  0,
  69,
  1,
  0,
  0,
  0,
  0,
  71,
  1,
  0,
  0,
  0,
  0,
  73,
  1,
  0,
  0,
  0,
  0,
  75,
  1,
  0,
  0,
  0,
  0,
  77,
  1,
  0,
  0,
  0,
  0,
  79,
  1,
  0,
  0,
  0,
  0,
  81,
  1,
  0,
  0,
  0,
  0,
  83,
  1,
  0,
  0,
  0,
  0,
  85,
  1,
  0,
  0,
  0,
  0,
  87,
  1,
  0,
  0,
  0,
  0,
  89,
  1,
  0,
  0,
  0,
  0,
  91,
  1,
  0,
  0,
  0,
  0,
  93,
  1,
  0,
  0,
  0,
  0,
  95,
  1,
  0,
  0,
  0,
  0,
  97,
  1,
  0,
  0,
  0,
  0,
  99,
  1,
  0,
  0,
  0,
  0,
  101,
  1,
  0,
  0,
  0,
  0,
  103,
  1,
  0,
  0,
  0,
  0,
  105,
  1,
  0,
  0,
  0,
  0,
  107,
  1,
  0,
  0,
  0,
  0,
  109,
  1,
  0,
  0,
  0,
  0,
  111,
  1,
  0,
  0,
  0,
  0,
  113,
  1,
  0,
  0,
  0,
  0,
  115,
  1,
  0,
  0,
  0,
  0,
  117,
  1,
  0,
  0,
  0,
  0,
  119,
  1,
  0,
  0,
  0,
  0,
  121,
  1,
  0,
  0,
  0,
  0,
  123,
  1,
  0,
  0,
  0,
  0,
  125,
  1,
  0,
  0,
  0,
  1,
  127,
  1,
  0,
  0,
  0,
  1,
  129,
  1,
  0,
  0,
  0,
  2,
  131,
  1,
  0,
  0,
  0,
  2,
  133,
  1,
  0,
  0,
  0,
  3,
  135,
  1,
  0,
  0,
  0,
  5,
  139,
  1,
  0,
  0,
  0,
  7,
  147,
  1,
  0,
  0,
  0,
  9,
  158,
  1,
  0,
  0,
  0,
  11,
  167,
  1,
  0,
  0,
  0,
  13,
  175,
  1,
  0,
  0,
  0,
  15,
  183,
  1,
  0,
  0,
  0,
  17,
  187,
  1,
  0,
  0,
  0,
  19,
  190,
  1,
  0,
  0,
  0,
  21,
  193,
  1,
  0,
  0,
  0,
  23,
  196,
  1,
  0,
  0,
  0,
  25,
  198,
  1,
  0,
  0,
  0,
  27,
  204,
  1,
  0,
  0,
  0,
  29,
  207,
  1,
  0,
  0,
  0,
  31,
  210,
  1,
  0,
  0,
  0,
  33,
  213,
  1,
  0,
  0,
  0,
  35,
  216,
  1,
  0,
  0,
  0,
  37,
  218,
  1,
  0,
  0,
  0,
  39,
  220,
  1,
  0,
  0,
  0,
  41,
  223,
  1,
  0,
  0,
  0,
  43,
  226,
  1,
  0,
  0,
  0,
  45,
  228,
  1,
  0,
  0,
  0,
  47,
  230,
  1,
  0,
  0,
  0,
  49,
  232,
  1,
  0,
  0,
  0,
  51,
  234,
  1,
  0,
  0,
  0,
  53,
  236,
  1,
  0,
  0,
  0,
  55,
  238,
  1,
  0,
  0,
  0,
  57,
  240,
  1,
  0,
  0,
  0,
  59,
  242,
  1,
  0,
  0,
  0,
  61,
  244,
  1,
  0,
  0,
  0,
  63,
  246,
  1,
  0,
  0,
  0,
  65,
  248,
  1,
  0,
  0,
  0,
  67,
  250,
  1,
  0,
  0,
  0,
  69,
  252,
  1,
  0,
  0,
  0,
  71,
  254,
  1,
  0,
  0,
  0,
  73,
  259,
  1,
  0,
  0,
  0,
  75,
  272,
  1,
  0,
  0,
  0,
  77,
  274,
  1,
  0,
  0,
  0,
  79,
  277,
  1,
  0,
  0,
  0,
  81,
  308,
  1,
  0,
  0,
  0,
  83,
  310,
  1,
  0,
  0,
  0,
  85,
  317,
  1,
  0,
  0,
  0,
  87,
  321,
  1,
  0,
  0,
  0,
  89,
  325,
  1,
  0,
  0,
  0,
  91,
  331,
  1,
  0,
  0,
  0,
  93,
  335,
  1,
  0,
  0,
  0,
  95,
  338,
  1,
  0,
  0,
  0,
  97,
  342,
  1,
  0,
  0,
  0,
  99,
  348,
  1,
  0,
  0,
  0,
  101,
  356,
  1,
  0,
  0,
  0,
  103,
  375,
  1,
  0,
  0,
  0,
  105,
  403,
  1,
  0,
  0,
  0,
  107,
  405,
  1,
  0,
  0,
  0,
  109,
  412,
  1,
  0,
  0,
  0,
  111,
  414,
  1,
  0,
  0,
  0,
  113,
  422,
  1,
  0,
  0,
  0,
  115,
  444,
  1,
  0,
  0,
  0,
  117,
  446,
  1,
  0,
  0,
  0,
  119,
  458,
  1,
  0,
  0,
  0,
  121,
  462,
  1,
  0,
  0,
  0,
  123,
  475,
  1,
  0,
  0,
  0,
  125,
  477,
  1,
  0,
  0,
  0,
  127,
  494,
  1,
  0,
  0,
  0,
  129,
  498,
  1,
  0,
  0,
  0,
  131,
  503,
  1,
  0,
  0,
  0,
  133,
  507,
  1,
  0,
  0,
  0,
  135,
  136,
  7,
  0,
  0,
  0,
  136,
  137,
  1,
  0,
  0,
  0,
  137,
  138,
  6,
  0,
  0,
  0,
  138,
  4,
  1,
  0,
  0,
  0,
  139,
  140,
  5,
  99,
  0,
  0,
  140,
  141,
  5,
  111,
  0,
  0,
  141,
  142,
  5,
  110,
  0,
  0,
  142,
  143,
  5,
  115,
  0,
  0,
  143,
  144,
  5,
  116,
  0,
  0,
  144,
  145,
  1,
  0,
  0,
  0,
  145,
  146,
  6,
  1,
  1,
  0,
  146,
  6,
  1,
  0,
  0,
  0,
  147,
  148,
  5,
  114,
  0,
  0,
  148,
  149,
  5,
  101,
  0,
  0,
  149,
  150,
  5,
  97,
  0,
  0,
  150,
  151,
  5,
  100,
  0,
  0,
  151,
  152,
  5,
  111,
  0,
  0,
  152,
  153,
  5,
  110,
  0,
  0,
  153,
  154,
  5,
  108,
  0,
  0,
  154,
  155,
  5,
  121,
  0,
  0,
  155,
  156,
  1,
  0,
  0,
  0,
  156,
  157,
  6,
  2,
  1,
  0,
  157,
  8,
  1,
  0,
  0,
  0,
  158,
  159,
  5,
  115,
  0,
  0,
  159,
  160,
  5,
  116,
  0,
  0,
  160,
  161,
  5,
  97,
  0,
  0,
  161,
  162,
  5,
  116,
  0,
  0,
  162,
  163,
  5,
  105,
  0,
  0,
  163,
  164,
  5,
  99,
  0,
  0,
  164,
  165,
  1,
  0,
  0,
  0,
  165,
  166,
  6,
  3,
  1,
  0,
  166,
  10,
  1,
  0,
  0,
  0,
  167,
  168,
  5,
  97,
  0,
  0,
  168,
  169,
  5,
  119,
  0,
  0,
  169,
  170,
  5,
  97,
  0,
  0,
  170,
  171,
  5,
  105,
  0,
  0,
  171,
  172,
  5,
  116,
  0,
  0,
  172,
  173,
  1,
  0,
  0,
  0,
  173,
  174,
  6,
  4,
  1,
  0,
  174,
  12,
  1,
  0,
  0,
  0,
  175,
  176,
  5,
  116,
  0,
  0,
  176,
  177,
  5,
  105,
  0,
  0,
  177,
  178,
  5,
  116,
  0,
  0,
  178,
  179,
  5,
  108,
  0,
  0,
  179,
  180,
  5,
  101,
  0,
  0,
  180,
  181,
  1,
  0,
  0,
  0,
  181,
  182,
  6,
  5,
  2,
  0,
  182,
  14,
  1,
  0,
  0,
  0,
  183,
  184,
  5,
  58,
  0,
  0,
  184,
  185,
  1,
  0,
  0,
  0,
  185,
  186,
  6,
  6,
  3,
  0,
  186,
  16,
  1,
  0,
  0,
  0,
  187,
  188,
  5,
  60,
  0,
  0,
  188,
  189,
  5,
  60,
  0,
  0,
  189,
  18,
  1,
  0,
  0,
  0,
  190,
  191,
  5,
  62,
  0,
  0,
  191,
  192,
  5,
  62,
  0,
  0,
  192,
  20,
  1,
  0,
  0,
  0,
  193,
  194,
  5,
  45,
  0,
  0,
  194,
  195,
  5,
  62,
  0,
  0,
  195,
  22,
  1,
  0,
  0,
  0,
  196,
  197,
  7,
  1,
  0,
  0,
  197,
  24,
  1,
  0,
  0,
  0,
  198,
  200,
  5,
  35,
  0,
  0,
  199,
  201,
  3,
  23,
  10,
  0,
  200,
  199,
  1,
  0,
  0,
  0,
  201,
  202,
  1,
  0,
  0,
  0,
  202,
  200,
  1,
  0,
  0,
  0,
  202,
  203,
  1,
  0,
  0,
  0,
  203,
  26,
  1,
  0,
  0,
  0,
  204,
  205,
  5,
  124,
  0,
  0,
  205,
  206,
  5,
  124,
  0,
  0,
  206,
  28,
  1,
  0,
  0,
  0,
  207,
  208,
  5,
  38,
  0,
  0,
  208,
  209,
  5,
  38,
  0,
  0,
  209,
  30,
  1,
  0,
  0,
  0,
  210,
  211,
  5,
  61,
  0,
  0,
  211,
  212,
  5,
  61,
  0,
  0,
  212,
  32,
  1,
  0,
  0,
  0,
  213,
  214,
  5,
  33,
  0,
  0,
  214,
  215,
  5,
  61,
  0,
  0,
  215,
  34,
  1,
  0,
  0,
  0,
  216,
  217,
  5,
  62,
  0,
  0,
  217,
  36,
  1,
  0,
  0,
  0,
  218,
  219,
  5,
  60,
  0,
  0,
  219,
  38,
  1,
  0,
  0,
  0,
  220,
  221,
  5,
  62,
  0,
  0,
  221,
  222,
  5,
  61,
  0,
  0,
  222,
  40,
  1,
  0,
  0,
  0,
  223,
  224,
  5,
  60,
  0,
  0,
  224,
  225,
  5,
  61,
  0,
  0,
  225,
  42,
  1,
  0,
  0,
  0,
  226,
  227,
  5,
  43,
  0,
  0,
  227,
  44,
  1,
  0,
  0,
  0,
  228,
  229,
  5,
  45,
  0,
  0,
  229,
  46,
  1,
  0,
  0,
  0,
  230,
  231,
  5,
  42,
  0,
  0,
  231,
  48,
  1,
  0,
  0,
  0,
  232,
  233,
  5,
  47,
  0,
  0,
  233,
  50,
  1,
  0,
  0,
  0,
  234,
  235,
  5,
  37,
  0,
  0,
  235,
  52,
  1,
  0,
  0,
  0,
  236,
  237,
  5,
  94,
  0,
  0,
  237,
  54,
  1,
  0,
  0,
  0,
  238,
  239,
  5,
  33,
  0,
  0,
  239,
  56,
  1,
  0,
  0,
  0,
  240,
  241,
  5,
  59,
  0,
  0,
  241,
  58,
  1,
  0,
  0,
  0,
  242,
  243,
  5,
  44,
  0,
  0,
  243,
  60,
  1,
  0,
  0,
  0,
  244,
  245,
  5,
  61,
  0,
  0,
  245,
  62,
  1,
  0,
  0,
  0,
  246,
  247,
  5,
  40,
  0,
  0,
  247,
  64,
  1,
  0,
  0,
  0,
  248,
  249,
  5,
  41,
  0,
  0,
  249,
  66,
  1,
  0,
  0,
  0,
  250,
  251,
  5,
  123,
  0,
  0,
  251,
  68,
  1,
  0,
  0,
  0,
  252,
  253,
  5,
  125,
  0,
  0,
  253,
  70,
  1,
  0,
  0,
  0,
  254,
  255,
  5,
  116,
  0,
  0,
  255,
  256,
  5,
  114,
  0,
  0,
  256,
  257,
  5,
  117,
  0,
  0,
  257,
  258,
  5,
  101,
  0,
  0,
  258,
  72,
  1,
  0,
  0,
  0,
  259,
  260,
  5,
  102,
  0,
  0,
  260,
  261,
  5,
  97,
  0,
  0,
  261,
  262,
  5,
  108,
  0,
  0,
  262,
  263,
  5,
  115,
  0,
  0,
  263,
  264,
  5,
  101,
  0,
  0,
  264,
  74,
  1,
  0,
  0,
  0,
  265,
  266,
  5,
  110,
  0,
  0,
  266,
  267,
  5,
  105,
  0,
  0,
  267,
  273,
  5,
  108,
  0,
  0,
  268,
  269,
  5,
  110,
  0,
  0,
  269,
  270,
  5,
  117,
  0,
  0,
  270,
  271,
  5,
  108,
  0,
  0,
  271,
  273,
  5,
  108,
  0,
  0,
  272,
  265,
  1,
  0,
  0,
  0,
  272,
  268,
  1,
  0,
  0,
  0,
  273,
  76,
  1,
  0,
  0,
  0,
  274,
  275,
  5,
  105,
  0,
  0,
  275,
  276,
  5,
  102,
  0,
  0,
  276,
  78,
  1,
  0,
  0,
  0,
  277,
  278,
  5,
  101,
  0,
  0,
  278,
  279,
  5,
  108,
  0,
  0,
  279,
  280,
  5,
  115,
  0,
  0,
  280,
  281,
  5,
  101,
  0,
  0,
  281,
  80,
  1,
  0,
  0,
  0,
  282,
  283,
  5,
  119,
  0,
  0,
  283,
  284,
  5,
  104,
  0,
  0,
  284,
  285,
  5,
  105,
  0,
  0,
  285,
  286,
  5,
  108,
  0,
  0,
  286,
  309,
  5,
  101,
  0,
  0,
  287,
  288,
  5,
  102,
  0,
  0,
  288,
  289,
  5,
  111,
  0,
  0,
  289,
  309,
  5,
  114,
  0,
  0,
  290,
  291,
  5,
  102,
  0,
  0,
  291,
  292,
  5,
  111,
  0,
  0,
  292,
  293,
  5,
  114,
  0,
  0,
  293,
  294,
  5,
  101,
  0,
  0,
  294,
  295,
  5,
  97,
  0,
  0,
  295,
  296,
  5,
  99,
  0,
  0,
  296,
  309,
  5,
  104,
  0,
  0,
  297,
  298,
  5,
  102,
  0,
  0,
  298,
  299,
  5,
  111,
  0,
  0,
  299,
  300,
  5,
  114,
  0,
  0,
  300,
  301,
  5,
  69,
  0,
  0,
  301,
  302,
  5,
  97,
  0,
  0,
  302,
  303,
  5,
  99,
  0,
  0,
  303,
  309,
  5,
  104,
  0,
  0,
  304,
  305,
  5,
  108,
  0,
  0,
  305,
  306,
  5,
  111,
  0,
  0,
  306,
  307,
  5,
  111,
  0,
  0,
  307,
  309,
  5,
  112,
  0,
  0,
  308,
  282,
  1,
  0,
  0,
  0,
  308,
  287,
  1,
  0,
  0,
  0,
  308,
  290,
  1,
  0,
  0,
  0,
  308,
  297,
  1,
  0,
  0,
  0,
  308,
  304,
  1,
  0,
  0,
  0,
  309,
  82,
  1,
  0,
  0,
  0,
  310,
  311,
  5,
  114,
  0,
  0,
  311,
  312,
  5,
  101,
  0,
  0,
  312,
  313,
  5,
  116,
  0,
  0,
  313,
  314,
  5,
  117,
  0,
  0,
  314,
  315,
  5,
  114,
  0,
  0,
  315,
  316,
  5,
  110,
  0,
  0,
  316,
  84,
  1,
  0,
  0,
  0,
  317,
  318,
  5,
  110,
  0,
  0,
  318,
  319,
  5,
  101,
  0,
  0,
  319,
  320,
  5,
  119,
  0,
  0,
  320,
  86,
  1,
  0,
  0,
  0,
  321,
  322,
  5,
  112,
  0,
  0,
  322,
  323,
  5,
  97,
  0,
  0,
  323,
  324,
  5,
  114,
  0,
  0,
  324,
  88,
  1,
  0,
  0,
  0,
  325,
  326,
  5,
  103,
  0,
  0,
  326,
  327,
  5,
  114,
  0,
  0,
  327,
  328,
  5,
  111,
  0,
  0,
  328,
  329,
  5,
  117,
  0,
  0,
  329,
  330,
  5,
  112,
  0,
  0,
  330,
  90,
  1,
  0,
  0,
  0,
  331,
  332,
  5,
  111,
  0,
  0,
  332,
  333,
  5,
  112,
  0,
  0,
  333,
  334,
  5,
  116,
  0,
  0,
  334,
  92,
  1,
  0,
  0,
  0,
  335,
  336,
  5,
  97,
  0,
  0,
  336,
  337,
  5,
  115,
  0,
  0,
  337,
  94,
  1,
  0,
  0,
  0,
  338,
  339,
  5,
  116,
  0,
  0,
  339,
  340,
  5,
  114,
  0,
  0,
  340,
  341,
  5,
  121,
  0,
  0,
  341,
  96,
  1,
  0,
  0,
  0,
  342,
  343,
  5,
  99,
  0,
  0,
  343,
  344,
  5,
  97,
  0,
  0,
  344,
  345,
  5,
  116,
  0,
  0,
  345,
  346,
  5,
  99,
  0,
  0,
  346,
  347,
  5,
  104,
  0,
  0,
  347,
  98,
  1,
  0,
  0,
  0,
  348,
  349,
  5,
  102,
  0,
  0,
  349,
  350,
  5,
  105,
  0,
  0,
  350,
  351,
  5,
  110,
  0,
  0,
  351,
  352,
  5,
  97,
  0,
  0,
  352,
  353,
  5,
  108,
  0,
  0,
  353,
  354,
  5,
  108,
  0,
  0,
  354,
  355,
  5,
  121,
  0,
  0,
  355,
  100,
  1,
  0,
  0,
  0,
  356,
  357,
  5,
  105,
  0,
  0,
  357,
  358,
  5,
  110,
  0,
  0,
  358,
  102,
  1,
  0,
  0,
  0,
  359,
  360,
  5,
  64,
  0,
  0,
  360,
  361,
  5,
  83,
  0,
  0,
  361,
  362,
  5,
  116,
  0,
  0,
  362,
  363,
  5,
  97,
  0,
  0,
  363,
  364,
  5,
  114,
  0,
  0,
  364,
  365,
  5,
  116,
  0,
  0,
  365,
  366,
  5,
  101,
  0,
  0,
  366,
  376,
  5,
  114,
  0,
  0,
  367,
  368,
  5,
  64,
  0,
  0,
  368,
  369,
  5,
  115,
  0,
  0,
  369,
  370,
  5,
  116,
  0,
  0,
  370,
  371,
  5,
  97,
  0,
  0,
  371,
  372,
  5,
  114,
  0,
  0,
  372,
  373,
  5,
  116,
  0,
  0,
  373,
  374,
  5,
  101,
  0,
  0,
  374,
  376,
  5,
  114,
  0,
  0,
  375,
  359,
  1,
  0,
  0,
  0,
  375,
  367,
  1,
  0,
  0,
  0,
  376,
  104,
  1,
  0,
  0,
  0,
  377,
  378,
  5,
  64,
  0,
  0,
  378,
  379,
  5,
  82,
  0,
  0,
  379,
  380,
  5,
  101,
  0,
  0,
  380,
  381,
  5,
  116,
  0,
  0,
  381,
  382,
  5,
  117,
  0,
  0,
  382,
  383,
  5,
  114,
  0,
  0,
  383,
  404,
  5,
  110,
  0,
  0,
  384,
  385,
  5,
  64,
  0,
  0,
  385,
  386,
  5,
  114,
  0,
  0,
  386,
  387,
  5,
  101,
  0,
  0,
  387,
  388,
  5,
  116,
  0,
  0,
  388,
  389,
  5,
  117,
  0,
  0,
  389,
  390,
  5,
  114,
  0,
  0,
  390,
  404,
  5,
  110,
  0,
  0,
  391,
  392,
  5,
  64,
  0,
  0,
  392,
  393,
  5,
  82,
  0,
  0,
  393,
  394,
  5,
  101,
  0,
  0,
  394,
  395,
  5,
  112,
  0,
  0,
  395,
  396,
  5,
  108,
  0,
  0,
  396,
  404,
  5,
  121,
  0,
  0,
  397,
  398,
  5,
  64,
  0,
  0,
  398,
  399,
  5,
  114,
  0,
  0,
  399,
  400,
  5,
  101,
  0,
  0,
  400,
  401,
  5,
  112,
  0,
  0,
  401,
  402,
  5,
  108,
  0,
  0,
  402,
  404,
  5,
  121,
  0,
  0,
  403,
  377,
  1,
  0,
  0,
  0,
  403,
  384,
  1,
  0,
  0,
  0,
  403,
  391,
  1,
  0,
  0,
  0,
  403,
  397,
  1,
  0,
  0,
  0,
  404,
  106,
  1,
  0,
  0,
  0,
  405,
  409,
  5,
  64,
  0,
  0,
  406,
  408,
  7,
  2,
  0,
  0,
  407,
  406,
  1,
  0,
  0,
  0,
  408,
  411,
  1,
  0,
  0,
  0,
  409,
  407,
  1,
  0,
  0,
  0,
  409,
  410,
  1,
  0,
  0,
  0,
  410,
  108,
  1,
  0,
  0,
  0,
  411,
  409,
  1,
  0,
  0,
  0,
  412,
  413,
  5,
  46,
  0,
  0,
  413,
  110,
  1,
  0,
  0,
  0,
  414,
  418,
  7,
  3,
  0,
  0,
  415,
  417,
  7,
  2,
  0,
  0,
  416,
  415,
  1,
  0,
  0,
  0,
  417,
  420,
  1,
  0,
  0,
  0,
  418,
  416,
  1,
  0,
  0,
  0,
  418,
  419,
  1,
  0,
  0,
  0,
  419,
  112,
  1,
  0,
  0,
  0,
  420,
  418,
  1,
  0,
  0,
  0,
  421,
  423,
  7,
  4,
  0,
  0,
  422,
  421,
  1,
  0,
  0,
  0,
  423,
  424,
  1,
  0,
  0,
  0,
  424,
  422,
  1,
  0,
  0,
  0,
  424,
  425,
  1,
  0,
  0,
  0,
  425,
  114,
  1,
  0,
  0,
  0,
  426,
  428,
  7,
  4,
  0,
  0,
  427,
  426,
  1,
  0,
  0,
  0,
  428,
  429,
  1,
  0,
  0,
  0,
  429,
  427,
  1,
  0,
  0,
  0,
  429,
  430,
  1,
  0,
  0,
  0,
  430,
  431,
  1,
  0,
  0,
  0,
  431,
  435,
  5,
  46,
  0,
  0,
  432,
  434,
  7,
  4,
  0,
  0,
  433,
  432,
  1,
  0,
  0,
  0,
  434,
  437,
  1,
  0,
  0,
  0,
  435,
  433,
  1,
  0,
  0,
  0,
  435,
  436,
  1,
  0,
  0,
  0,
  436,
  445,
  1,
  0,
  0,
  0,
  437,
  435,
  1,
  0,
  0,
  0,
  438,
  440,
  5,
  46,
  0,
  0,
  439,
  441,
  7,
  4,
  0,
  0,
  440,
  439,
  1,
  0,
  0,
  0,
  441,
  442,
  1,
  0,
  0,
  0,
  442,
  440,
  1,
  0,
  0,
  0,
  442,
  443,
  1,
  0,
  0,
  0,
  443,
  445,
  1,
  0,
  0,
  0,
  444,
  427,
  1,
  0,
  0,
  0,
  444,
  438,
  1,
  0,
  0,
  0,
  445,
  116,
  1,
  0,
  0,
  0,
  446,
  452,
  5,
  34,
  0,
  0,
  447,
  451,
  8,
  5,
  0,
  0,
  448,
  449,
  5,
  34,
  0,
  0,
  449,
  451,
  5,
  34,
  0,
  0,
  450,
  447,
  1,
  0,
  0,
  0,
  450,
  448,
  1,
  0,
  0,
  0,
  451,
  454,
  1,
  0,
  0,
  0,
  452,
  450,
  1,
  0,
  0,
  0,
  452,
  453,
  1,
  0,
  0,
  0,
  453,
  456,
  1,
  0,
  0,
  0,
  454,
  452,
  1,
  0,
  0,
  0,
  455,
  457,
  7,
  5,
  0,
  0,
  456,
  455,
  1,
  0,
  0,
  0,
  456,
  457,
  1,
  0,
  0,
  0,
  457,
  118,
  1,
  0,
  0,
  0,
  458,
  459,
  7,
  6,
  0,
  0,
  459,
  460,
  1,
  0,
  0,
  0,
  460,
  461,
  6,
  58,
  0,
  0,
  461,
  120,
  1,
  0,
  0,
  0,
  462,
  463,
  5,
  47,
  0,
  0,
  463,
  464,
  5,
  47,
  0,
  0,
  464,
  468,
  1,
  0,
  0,
  0,
  465,
  467,
  9,
  0,
  0,
  0,
  466,
  465,
  1,
  0,
  0,
  0,
  467,
  470,
  1,
  0,
  0,
  0,
  468,
  469,
  1,
  0,
  0,
  0,
  468,
  466,
  1,
  0,
  0,
  0,
  469,
  471,
  1,
  0,
  0,
  0,
  470,
  468,
  1,
  0,
  0,
  0,
  471,
  472,
  5,
  10,
  0,
  0,
  472,
  473,
  1,
  0,
  0,
  0,
  473,
  474,
  6,
  59,
  4,
  0,
  474,
  122,
  1,
  0,
  0,
  0,
  475,
  476,
  9,
  0,
  0,
  0,
  476,
  124,
  1,
  0,
  0,
  0,
  477,
  481,
  4,
  61,
  0,
  0,
  478,
  480,
  3,
  3,
  0,
  0,
  479,
  478,
  1,
  0,
  0,
  0,
  480,
  483,
  1,
  0,
  0,
  0,
  481,
  479,
  1,
  0,
  0,
  0,
  481,
  482,
  1,
  0,
  0,
  0,
  482,
  484,
  1,
  0,
  0,
  0,
  483,
  481,
  1,
  0,
  0,
  0,
  484,
  485,
  5,
  61,
  0,
  0,
  485,
  486,
  5,
  61,
  0,
  0,
  486,
  490,
  1,
  0,
  0,
  0,
  487,
  489,
  8,
  6,
  0,
  0,
  488,
  487,
  1,
  0,
  0,
  0,
  489,
  492,
  1,
  0,
  0,
  0,
  490,
  488,
  1,
  0,
  0,
  0,
  490,
  491,
  1,
  0,
  0,
  0,
  491,
  126,
  1,
  0,
  0,
  0,
  492,
  490,
  1,
  0,
  0,
  0,
  493,
  495,
  8,
  6,
  0,
  0,
  494,
  493,
  1,
  0,
  0,
  0,
  495,
  496,
  1,
  0,
  0,
  0,
  496,
  494,
  1,
  0,
  0,
  0,
  496,
  497,
  1,
  0,
  0,
  0,
  497,
  128,
  1,
  0,
  0,
  0,
  498,
  499,
  7,
  6,
  0,
  0,
  499,
  500,
  1,
  0,
  0,
  0,
  500,
  501,
  6,
  63,
  5,
  0,
  501,
  130,
  1,
  0,
  0,
  0,
  502,
  504,
  8,
  6,
  0,
  0,
  503,
  502,
  1,
  0,
  0,
  0,
  504,
  505,
  1,
  0,
  0,
  0,
  505,
  503,
  1,
  0,
  0,
  0,
  505,
  506,
  1,
  0,
  0,
  0,
  506,
  132,
  1,
  0,
  0,
  0,
  507,
  508,
  7,
  6,
  0,
  0,
  508,
  509,
  1,
  0,
  0,
  0,
  509,
  510,
  6,
  65,
  5,
  0,
  510,
  134,
  1,
  0,
  0,
  0,
  23,
  0,
  1,
  2,
  202,
  272,
  308,
  375,
  403,
  409,
  418,
  424,
  429,
  435,
  442,
  444,
  450,
  452,
  456,
  468,
  481,
  490,
  496,
  505,
  6,
  0,
  1,
  0,
  0,
  3,
  0,
  5,
  2,
  0,
  5,
  1,
  0,
  0,
  2,
  0,
  4,
  0,
  0
];
var Xo = new b.atn.ATNDeserializer().deserialize(M7);
var N7 = Xo.decisionToState.map((t, e) => new b.dfa.DFA(t, e));
var G = class extends b.Lexer {
  static {
    __name(this, "G");
  }
  constructor(e) {
    super(e), this._interp = new b.atn.LexerATNSimulator(this, Xo, N7, new b.PredictionContextCache());
  }
  get atn() {
    return Xo;
  }
};
Z(G, "grammarFileName", "sequenceLexer.g4"), Z(G, "channelNames", [
  "DEFAULT_TOKEN_CHANNEL",
  "HIDDEN",
  "COMMENT_CHANNEL",
  "MODIFIER_CHANNEL"
]), Z(G, "modeNames", ["DEFAULT_MODE", "EVENT", "TITLE_MODE"]), Z(G, "literalNames", [
  null,
  null,
  "'const'",
  "'readonly'",
  "'static'",
  "'await'",
  "'title'",
  "':'",
  "'<<'",
  "'>>'",
  "'->'",
  null,
  "'||'",
  "'&&'",
  "'=='",
  "'!='",
  "'>'",
  "'<'",
  "'>='",
  "'<='",
  "'+'",
  "'-'",
  "'*'",
  "'/'",
  "'%'",
  "'^'",
  "'!'",
  "';'",
  "','",
  "'='",
  "'('",
  "')'",
  "'{'",
  "'}'",
  "'true'",
  "'false'",
  null,
  "'if'",
  "'else'",
  null,
  "'return'",
  "'new'",
  "'par'",
  "'group'",
  "'opt'",
  "'as'",
  "'try'",
  "'catch'",
  "'finally'",
  "'in'",
  null,
  null,
  null,
  "'.'"
]), Z(G, "symbolicNames", [
  null,
  "WS",
  "CONSTANT",
  "READONLY",
  "STATIC",
  "AWAIT",
  "TITLE",
  "COL",
  "SOPEN",
  "SCLOSE",
  "ARROW",
  "COLOR",
  "OR",
  "AND",
  "EQ",
  "NEQ",
  "GT",
  "LT",
  "GTEQ",
  "LTEQ",
  "PLUS",
  "MINUS",
  "MULT",
  "DIV",
  "MOD",
  "POW",
  "NOT",
  "SCOL",
  "COMMA",
  "ASSIGN",
  "OPAR",
  "CPAR",
  "OBRACE",
  "CBRACE",
  "TRUE",
  "FALSE",
  "NIL",
  "IF",
  "ELSE",
  "WHILE",
  "RETURN",
  "NEW",
  "PAR",
  "GROUP",
  "OPT",
  "AS",
  "TRY",
  "CATCH",
  "FINALLY",
  "IN",
  "STARTER_LXR",
  "ANNOTATION_RET",
  "ANNOTATION",
  "DOT",
  "ID",
  "INT",
  "FLOAT",
  "STRING",
  "CR",
  "COMMENT",
  "OTHER",
  "DIVIDER",
  "EVENT_PAYLOAD_LXR",
  "EVENT_END",
  "TITLE_CONTENT",
  "TITLE_END"
]), Z(G, "ruleNames", [
  "WS",
  "CONSTANT",
  "READONLY",
  "STATIC",
  "AWAIT",
  "TITLE",
  "COL",
  "SOPEN",
  "SCLOSE",
  "ARROW",
  "HEX",
  "COLOR",
  "OR",
  "AND",
  "EQ",
  "NEQ",
  "GT",
  "LT",
  "GTEQ",
  "LTEQ",
  "PLUS",
  "MINUS",
  "MULT",
  "DIV",
  "MOD",
  "POW",
  "NOT",
  "SCOL",
  "COMMA",
  "ASSIGN",
  "OPAR",
  "CPAR",
  "OBRACE",
  "CBRACE",
  "TRUE",
  "FALSE",
  "NIL",
  "IF",
  "ELSE",
  "WHILE",
  "RETURN",
  "NEW",
  "PAR",
  "GROUP",
  "OPT",
  "AS",
  "TRY",
  "CATCH",
  "FINALLY",
  "IN",
  "STARTER_LXR",
  "ANNOTATION_RET",
  "ANNOTATION",
  "DOT",
  "ID",
  "INT",
  "FLOAT",
  "STRING",
  "CR",
  "COMMENT",
  "OTHER",
  "DIVIDER",
  "EVENT_PAYLOAD_LXR",
  "EVENT_END",
  "TITLE_CONTENT",
  "TITLE_END"
]);
G.EOF = b.Token.EOF;
G.WS = 1;
G.CONSTANT = 2;
G.READONLY = 3;
G.STATIC = 4;
G.AWAIT = 5;
G.TITLE = 6;
G.COL = 7;
G.SOPEN = 8;
G.SCLOSE = 9;
G.ARROW = 10;
G.COLOR = 11;
G.OR = 12;
G.AND = 13;
G.EQ = 14;
G.NEQ = 15;
G.GT = 16;
G.LT = 17;
G.GTEQ = 18;
G.LTEQ = 19;
G.PLUS = 20;
G.MINUS = 21;
G.MULT = 22;
G.DIV = 23;
G.MOD = 24;
G.POW = 25;
G.NOT = 26;
G.SCOL = 27;
G.COMMA = 28;
G.ASSIGN = 29;
G.OPAR = 30;
G.CPAR = 31;
G.OBRACE = 32;
G.CBRACE = 33;
G.TRUE = 34;
G.FALSE = 35;
G.NIL = 36;
G.IF = 37;
G.ELSE = 38;
G.WHILE = 39;
G.RETURN = 40;
G.NEW = 41;
G.PAR = 42;
G.GROUP = 43;
G.OPT = 44;
G.AS = 45;
G.TRY = 46;
G.CATCH = 47;
G.FINALLY = 48;
G.IN = 49;
G.STARTER_LXR = 50;
G.ANNOTATION_RET = 51;
G.ANNOTATION = 52;
G.DOT = 53;
G.ID = 54;
G.INT = 55;
G.FLOAT = 56;
G.STRING = 57;
G.CR = 58;
G.COMMENT = 59;
G.OTHER = 60;
G.DIVIDER = 61;
G.EVENT_PAYLOAD_LXR = 62;
G.EVENT_END = 63;
G.TITLE_CONTENT = 64;
G.TITLE_END = 65;
G.COMMENT_CHANNEL = 2;
G.MODIFIER_CHANNEL = 3;
G.EVENT = 1;
G.TITLE_MODE = 2;
G.prototype.sempred = function(t, e, n) {
  switch (e) {
    case 61:
      return this.DIVIDER_sempred(t, n);
    default:
      throw "No registered predicate for:" + e;
  }
};
G.prototype.DIVIDER_sempred = function(t, e) {
  switch (e) {
    case 0:
      return this.column === 0;
    default:
      throw "No predicate with index:" + e;
  }
};
var w = class extends b.tree.ParseTreeListener {
  static {
    __name(this, "w");
  }
  enterProg(e) {
  }
  exitProg(e) {
  }
  enterTitle(e) {
  }
  exitTitle(e) {
  }
  enterHead(e) {
  }
  exitHead(e) {
  }
  enterGroup(e) {
  }
  exitGroup(e) {
  }
  enterStarterExp(e) {
  }
  exitStarterExp(e) {
  }
  enterStarter(e) {
  }
  exitStarter(e) {
  }
  enterParticipant(e) {
  }
  exitParticipant(e) {
  }
  enterStereotype(e) {
  }
  exitStereotype(e) {
  }
  enterLabel(e) {
  }
  exitLabel(e) {
  }
  enterParticipantType(e) {
  }
  exitParticipantType(e) {
  }
  enterName(e) {
  }
  exitName(e) {
  }
  enterWidth(e) {
  }
  exitWidth(e) {
  }
  enterBlock(e) {
  }
  exitBlock(e) {
  }
  enterRet(e) {
  }
  exitRet(e) {
  }
  enterDivider(e) {
  }
  exitDivider(e) {
  }
  enterDividerNote(e) {
  }
  exitDividerNote(e) {
  }
  enterStat(e) {
  }
  exitStat(e) {
  }
  enterPar(e) {
  }
  exitPar(e) {
  }
  enterOpt(e) {
  }
  exitOpt(e) {
  }
  enterCreation(e) {
  }
  exitCreation(e) {
  }
  enterCreationBody(e) {
  }
  exitCreationBody(e) {
  }
  enterMessage(e) {
  }
  exitMessage(e) {
  }
  enterMessageBody(e) {
  }
  exitMessageBody(e) {
  }
  enterFunc(e) {
  }
  exitFunc(e) {
  }
  enterFrom(e) {
  }
  exitFrom(e) {
  }
  enterTo(e) {
  }
  exitTo(e) {
  }
  enterSignature(e) {
  }
  exitSignature(e) {
  }
  enterInvocation(e) {
  }
  exitInvocation(e) {
  }
  enterAssignment(e) {
  }
  exitAssignment(e) {
  }
  enterAsyncMessage(e) {
  }
  exitAsyncMessage(e) {
  }
  enterContent(e) {
  }
  exitContent(e) {
  }
  enterConstruct(e) {
  }
  exitConstruct(e) {
  }
  enterType(e) {
  }
  exitType(e) {
  }
  enterAssignee(e) {
  }
  exitAssignee(e) {
  }
  enterMethodName(e) {
  }
  exitMethodName(e) {
  }
  enterParameters(e) {
  }
  exitParameters(e) {
  }
  enterParameter(e) {
  }
  exitParameter(e) {
  }
  enterDeclaration(e) {
  }
  exitDeclaration(e) {
  }
  enterTcf(e) {
  }
  exitTcf(e) {
  }
  enterTryBlock(e) {
  }
  exitTryBlock(e) {
  }
  enterCatchBlock(e) {
  }
  exitCatchBlock(e) {
  }
  enterFinallyBlock(e) {
  }
  exitFinallyBlock(e) {
  }
  enterAlt(e) {
  }
  exitAlt(e) {
  }
  enterIfBlock(e) {
  }
  exitIfBlock(e) {
  }
  enterElseIfBlock(e) {
  }
  exitElseIfBlock(e) {
  }
  enterElseBlock(e) {
  }
  exitElseBlock(e) {
  }
  enterBraceBlock(e) {
  }
  exitBraceBlock(e) {
  }
  enterLoop(e) {
  }
  exitLoop(e) {
  }
  enterAssignmentExpr(e) {
  }
  exitAssignmentExpr(e) {
  }
  enterFuncExpr(e) {
  }
  exitFuncExpr(e) {
  }
  enterAtomExpr(e) {
  }
  exitAtomExpr(e) {
  }
  enterOrExpr(e) {
  }
  exitOrExpr(e) {
  }
  enterAdditiveExpr(e) {
  }
  exitAdditiveExpr(e) {
  }
  enterRelationalExpr(e) {
  }
  exitRelationalExpr(e) {
  }
  enterPlusExpr(e) {
  }
  exitPlusExpr(e) {
  }
  enterNotExpr(e) {
  }
  exitNotExpr(e) {
  }
  enterUnaryMinusExpr(e) {
  }
  exitUnaryMinusExpr(e) {
  }
  enterCreationExpr(e) {
  }
  exitCreationExpr(e) {
  }
  enterParenthesizedExpr(e) {
  }
  exitParenthesizedExpr(e) {
  }
  enterMultiplicationExpr(e) {
  }
  exitMultiplicationExpr(e) {
  }
  enterEqualityExpr(e) {
  }
  exitEqualityExpr(e) {
  }
  enterAndExpr(e) {
  }
  exitAndExpr(e) {
  }
  enterNumberAtom(e) {
  }
  exitNumberAtom(e) {
  }
  enterBooleanAtom(e) {
  }
  exitBooleanAtom(e) {
  }
  enterIdAtom(e) {
  }
  exitIdAtom(e) {
  }
  enterStringAtom(e) {
  }
  exitStringAtom(e) {
  }
  enterNilAtom(e) {
  }
  exitNilAtom(e) {
  }
  enterParExpr(e) {
  }
  exitParExpr(e) {
  }
  enterCondition(e) {
  }
  exitCondition(e) {
  }
  enterInExpr(e) {
  }
  exitInExpr(e) {
  }
};
var P7 = [
  4,
  1,
  65,
  552,
  2,
  0,
  7,
  0,
  2,
  1,
  7,
  1,
  2,
  2,
  7,
  2,
  2,
  3,
  7,
  3,
  2,
  4,
  7,
  4,
  2,
  5,
  7,
  5,
  2,
  6,
  7,
  6,
  2,
  7,
  7,
  7,
  2,
  8,
  7,
  8,
  2,
  9,
  7,
  9,
  2,
  10,
  7,
  10,
  2,
  11,
  7,
  11,
  2,
  12,
  7,
  12,
  2,
  13,
  7,
  13,
  2,
  14,
  7,
  14,
  2,
  15,
  7,
  15,
  2,
  16,
  7,
  16,
  2,
  17,
  7,
  17,
  2,
  18,
  7,
  18,
  2,
  19,
  7,
  19,
  2,
  20,
  7,
  20,
  2,
  21,
  7,
  21,
  2,
  22,
  7,
  22,
  2,
  23,
  7,
  23,
  2,
  24,
  7,
  24,
  2,
  25,
  7,
  25,
  2,
  26,
  7,
  26,
  2,
  27,
  7,
  27,
  2,
  28,
  7,
  28,
  2,
  29,
  7,
  29,
  2,
  30,
  7,
  30,
  2,
  31,
  7,
  31,
  2,
  32,
  7,
  32,
  2,
  33,
  7,
  33,
  2,
  34,
  7,
  34,
  2,
  35,
  7,
  35,
  2,
  36,
  7,
  36,
  2,
  37,
  7,
  37,
  2,
  38,
  7,
  38,
  2,
  39,
  7,
  39,
  2,
  40,
  7,
  40,
  2,
  41,
  7,
  41,
  2,
  42,
  7,
  42,
  2,
  43,
  7,
  43,
  2,
  44,
  7,
  44,
  2,
  45,
  7,
  45,
  2,
  46,
  7,
  46,
  2,
  47,
  7,
  47,
  2,
  48,
  7,
  48,
  2,
  49,
  7,
  49,
  2,
  50,
  7,
  50,
  2,
  51,
  7,
  51,
  2,
  52,
  7,
  52,
  1,
  0,
  3,
  0,
  108,
  8,
  0,
  1,
  0,
  1,
  0,
  3,
  0,
  112,
  8,
  0,
  1,
  0,
  1,
  0,
  1,
  0,
  1,
  0,
  3,
  0,
  118,
  8,
  0,
  1,
  0,
  3,
  0,
  121,
  8,
  0,
  1,
  0,
  1,
  0,
  1,
  0,
  3,
  0,
  126,
  8,
  0,
  1,
  1,
  1,
  1,
  3,
  1,
  130,
  8,
  1,
  1,
  1,
  3,
  1,
  133,
  8,
  1,
  1,
  2,
  1,
  2,
  4,
  2,
  137,
  8,
  2,
  11,
  2,
  12,
  2,
  138,
  1,
  2,
  1,
  2,
  5,
  2,
  143,
  8,
  2,
  10,
  2,
  12,
  2,
  146,
  9,
  2,
  1,
  2,
  3,
  2,
  149,
  8,
  2,
  1,
  3,
  1,
  3,
  3,
  3,
  153,
  8,
  3,
  1,
  3,
  1,
  3,
  5,
  3,
  157,
  8,
  3,
  10,
  3,
  12,
  3,
  160,
  9,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  3,
  3,
  165,
  8,
  3,
  1,
  3,
  1,
  3,
  1,
  3,
  3,
  3,
  170,
  8,
  3,
  3,
  3,
  172,
  8,
  3,
  1,
  4,
  1,
  4,
  1,
  4,
  3,
  4,
  177,
  8,
  4,
  1,
  4,
  3,
  4,
  180,
  8,
  4,
  1,
  4,
  3,
  4,
  183,
  8,
  4,
  1,
  5,
  1,
  5,
  1,
  6,
  3,
  6,
  188,
  8,
  6,
  1,
  6,
  3,
  6,
  191,
  8,
  6,
  1,
  6,
  1,
  6,
  3,
  6,
  195,
  8,
  6,
  1,
  6,
  3,
  6,
  198,
  8,
  6,
  1,
  6,
  3,
  6,
  201,
  8,
  6,
  1,
  6,
  1,
  6,
  3,
  6,
  205,
  8,
  6,
  1,
  7,
  1,
  7,
  1,
  7,
  1,
  7,
  1,
  7,
  1,
  7,
  1,
  7,
  3,
  7,
  214,
  8,
  7,
  1,
  7,
  1,
  7,
  3,
  7,
  218,
  8,
  7,
  3,
  7,
  220,
  8,
  7,
  1,
  8,
  1,
  8,
  1,
  8,
  3,
  8,
  225,
  8,
  8,
  1,
  9,
  1,
  9,
  1,
  10,
  1,
  10,
  1,
  11,
  1,
  11,
  1,
  12,
  4,
  12,
  234,
  8,
  12,
  11,
  12,
  12,
  12,
  235,
  1,
  13,
  1,
  13,
  3,
  13,
  240,
  8,
  13,
  1,
  13,
  3,
  13,
  243,
  8,
  13,
  1,
  13,
  1,
  13,
  1,
  13,
  3,
  13,
  248,
  8,
  13,
  3,
  13,
  250,
  8,
  13,
  1,
  14,
  1,
  14,
  1,
  15,
  1,
  15,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  3,
  16,
  264,
  8,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  1,
  16,
  3,
  16,
  271,
  8,
  16,
  1,
  17,
  1,
  17,
  1,
  17,
  3,
  17,
  276,
  8,
  17,
  1,
  18,
  1,
  18,
  1,
  18,
  3,
  18,
  281,
  8,
  18,
  1,
  19,
  1,
  19,
  1,
  19,
  3,
  19,
  286,
  8,
  19,
  1,
  20,
  3,
  20,
  289,
  8,
  20,
  1,
  20,
  1,
  20,
  1,
  20,
  1,
  20,
  3,
  20,
  295,
  8,
  20,
  1,
  20,
  3,
  20,
  298,
  8,
  20,
  1,
  20,
  3,
  20,
  301,
  8,
  20,
  1,
  20,
  3,
  20,
  304,
  8,
  20,
  1,
  21,
  1,
  21,
  1,
  21,
  3,
  21,
  309,
  8,
  21,
  1,
  22,
  3,
  22,
  312,
  8,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  3,
  22,
  317,
  8,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  3,
  22,
  322,
  8,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  3,
  22,
  329,
  8,
  22,
  1,
  22,
  1,
  22,
  1,
  22,
  3,
  22,
  334,
  8,
  22,
  1,
  23,
  1,
  23,
  1,
  23,
  5,
  23,
  339,
  8,
  23,
  10,
  23,
  12,
  23,
  342,
  9,
  23,
  1,
  24,
  1,
  24,
  1,
  25,
  1,
  25,
  1,
  26,
  1,
  26,
  3,
  26,
  350,
  8,
  26,
  1,
  27,
  1,
  27,
  3,
  27,
  354,
  8,
  27,
  1,
  27,
  1,
  27,
  1,
  28,
  3,
  28,
  359,
  8,
  28,
  1,
  28,
  1,
  28,
  1,
  28,
  1,
  29,
  1,
  29,
  1,
  29,
  3,
  29,
  367,
  8,
  29,
  1,
  29,
  1,
  29,
  1,
  29,
  1,
  29,
  1,
  29,
  1,
  29,
  1,
  29,
  3,
  29,
  376,
  8,
  29,
  3,
  29,
  378,
  8,
  29,
  1,
  30,
  1,
  30,
  1,
  31,
  1,
  31,
  1,
  32,
  1,
  32,
  1,
  33,
  1,
  33,
  1,
  33,
  1,
  33,
  5,
  33,
  390,
  8,
  33,
  10,
  33,
  12,
  33,
  393,
  9,
  33,
  1,
  33,
  3,
  33,
  396,
  8,
  33,
  1,
  34,
  1,
  34,
  1,
  35,
  1,
  35,
  1,
  35,
  5,
  35,
  403,
  8,
  35,
  10,
  35,
  12,
  35,
  406,
  9,
  35,
  1,
  35,
  3,
  35,
  409,
  8,
  35,
  1,
  36,
  1,
  36,
  3,
  36,
  413,
  8,
  36,
  1,
  37,
  1,
  37,
  1,
  37,
  1,
  38,
  1,
  38,
  5,
  38,
  420,
  8,
  38,
  10,
  38,
  12,
  38,
  423,
  9,
  38,
  1,
  38,
  3,
  38,
  426,
  8,
  38,
  1,
  39,
  1,
  39,
  1,
  39,
  1,
  40,
  1,
  40,
  3,
  40,
  433,
  8,
  40,
  1,
  40,
  1,
  40,
  1,
  41,
  1,
  41,
  1,
  41,
  1,
  42,
  1,
  42,
  5,
  42,
  442,
  8,
  42,
  10,
  42,
  12,
  42,
  445,
  9,
  42,
  1,
  42,
  3,
  42,
  448,
  8,
  42,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  43,
  1,
  44,
  1,
  44,
  1,
  44,
  1,
  44,
  1,
  44,
  1,
  45,
  1,
  45,
  1,
  45,
  1,
  46,
  1,
  46,
  3,
  46,
  464,
  8,
  46,
  1,
  46,
  1,
  46,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  1,
  47,
  3,
  47,
  475,
  8,
  47,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  3,
  48,
  486,
  8,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  3,
  48,
  497,
  8,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  1,
  48,
  5,
  48,
  520,
  8,
  48,
  10,
  48,
  12,
  48,
  523,
  9,
  48,
  1,
  49,
  1,
  49,
  1,
  49,
  1,
  49,
  1,
  49,
  3,
  49,
  530,
  8,
  49,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  1,
  50,
  3,
  50,
  541,
  8,
  50,
  1,
  51,
  1,
  51,
  1,
  51,
  3,
  51,
  546,
  8,
  51,
  1,
  52,
  1,
  52,
  1,
  52,
  1,
  52,
  1,
  52,
  0,
  1,
  96,
  53,
  0,
  2,
  4,
  6,
  8,
  10,
  12,
  14,
  16,
  18,
  20,
  22,
  24,
  26,
  28,
  30,
  32,
  34,
  36,
  38,
  40,
  42,
  44,
  46,
  48,
  50,
  52,
  54,
  56,
  58,
  60,
  62,
  64,
  66,
  68,
  70,
  72,
  74,
  76,
  78,
  80,
  82,
  84,
  86,
  88,
  90,
  92,
  94,
  96,
  98,
  100,
  102,
  104,
  0,
  10,
  2,
  0,
  54,
  54,
  57,
  57,
  2,
  0,
  8,
  8,
  17,
  17,
  2,
  0,
  9,
  9,
  16,
  16,
  2,
  0,
  10,
  10,
  21,
  21,
  1,
  0,
  22,
  24,
  1,
  0,
  20,
  21,
  1,
  0,
  16,
  19,
  1,
  0,
  14,
  15,
  1,
  0,
  55,
  56,
  1,
  0,
  34,
  35,
  609,
  0,
  125,
  1,
  0,
  0,
  0,
  2,
  127,
  1,
  0,
  0,
  0,
  4,
  148,
  1,
  0,
  0,
  0,
  6,
  171,
  1,
  0,
  0,
  0,
  8,
  182,
  1,
  0,
  0,
  0,
  10,
  184,
  1,
  0,
  0,
  0,
  12,
  204,
  1,
  0,
  0,
  0,
  14,
  219,
  1,
  0,
  0,
  0,
  16,
  224,
  1,
  0,
  0,
  0,
  18,
  226,
  1,
  0,
  0,
  0,
  20,
  228,
  1,
  0,
  0,
  0,
  22,
  230,
  1,
  0,
  0,
  0,
  24,
  233,
  1,
  0,
  0,
  0,
  26,
  249,
  1,
  0,
  0,
  0,
  28,
  251,
  1,
  0,
  0,
  0,
  30,
  253,
  1,
  0,
  0,
  0,
  32,
  270,
  1,
  0,
  0,
  0,
  34,
  275,
  1,
  0,
  0,
  0,
  36,
  280,
  1,
  0,
  0,
  0,
  38,
  282,
  1,
  0,
  0,
  0,
  40,
  303,
  1,
  0,
  0,
  0,
  42,
  305,
  1,
  0,
  0,
  0,
  44,
  333,
  1,
  0,
  0,
  0,
  46,
  335,
  1,
  0,
  0,
  0,
  48,
  343,
  1,
  0,
  0,
  0,
  50,
  345,
  1,
  0,
  0,
  0,
  52,
  347,
  1,
  0,
  0,
  0,
  54,
  351,
  1,
  0,
  0,
  0,
  56,
  358,
  1,
  0,
  0,
  0,
  58,
  377,
  1,
  0,
  0,
  0,
  60,
  379,
  1,
  0,
  0,
  0,
  62,
  381,
  1,
  0,
  0,
  0,
  64,
  383,
  1,
  0,
  0,
  0,
  66,
  395,
  1,
  0,
  0,
  0,
  68,
  397,
  1,
  0,
  0,
  0,
  70,
  399,
  1,
  0,
  0,
  0,
  72,
  412,
  1,
  0,
  0,
  0,
  74,
  414,
  1,
  0,
  0,
  0,
  76,
  417,
  1,
  0,
  0,
  0,
  78,
  427,
  1,
  0,
  0,
  0,
  80,
  430,
  1,
  0,
  0,
  0,
  82,
  436,
  1,
  0,
  0,
  0,
  84,
  439,
  1,
  0,
  0,
  0,
  86,
  449,
  1,
  0,
  0,
  0,
  88,
  453,
  1,
  0,
  0,
  0,
  90,
  458,
  1,
  0,
  0,
  0,
  92,
  461,
  1,
  0,
  0,
  0,
  94,
  474,
  1,
  0,
  0,
  0,
  96,
  496,
  1,
  0,
  0,
  0,
  98,
  529,
  1,
  0,
  0,
  0,
  100,
  540,
  1,
  0,
  0,
  0,
  102,
  545,
  1,
  0,
  0,
  0,
  104,
  547,
  1,
  0,
  0,
  0,
  106,
  108,
  3,
  2,
  1,
  0,
  107,
  106,
  1,
  0,
  0,
  0,
  107,
  108,
  1,
  0,
  0,
  0,
  108,
  109,
  1,
  0,
  0,
  0,
  109,
  126,
  5,
  0,
  0,
  1,
  110,
  112,
  3,
  2,
  1,
  0,
  111,
  110,
  1,
  0,
  0,
  0,
  111,
  112,
  1,
  0,
  0,
  0,
  112,
  113,
  1,
  0,
  0,
  0,
  113,
  114,
  3,
  4,
  2,
  0,
  114,
  115,
  5,
  0,
  0,
  1,
  115,
  126,
  1,
  0,
  0,
  0,
  116,
  118,
  3,
  2,
  1,
  0,
  117,
  116,
  1,
  0,
  0,
  0,
  117,
  118,
  1,
  0,
  0,
  0,
  118,
  120,
  1,
  0,
  0,
  0,
  119,
  121,
  3,
  4,
  2,
  0,
  120,
  119,
  1,
  0,
  0,
  0,
  120,
  121,
  1,
  0,
  0,
  0,
  121,
  122,
  1,
  0,
  0,
  0,
  122,
  123,
  3,
  24,
  12,
  0,
  123,
  124,
  5,
  0,
  0,
  1,
  124,
  126,
  1,
  0,
  0,
  0,
  125,
  107,
  1,
  0,
  0,
  0,
  125,
  111,
  1,
  0,
  0,
  0,
  125,
  117,
  1,
  0,
  0,
  0,
  126,
  1,
  1,
  0,
  0,
  0,
  127,
  129,
  5,
  6,
  0,
  0,
  128,
  130,
  5,
  64,
  0,
  0,
  129,
  128,
  1,
  0,
  0,
  0,
  129,
  130,
  1,
  0,
  0,
  0,
  130,
  132,
  1,
  0,
  0,
  0,
  131,
  133,
  5,
  65,
  0,
  0,
  132,
  131,
  1,
  0,
  0,
  0,
  132,
  133,
  1,
  0,
  0,
  0,
  133,
  3,
  1,
  0,
  0,
  0,
  134,
  137,
  3,
  6,
  3,
  0,
  135,
  137,
  3,
  12,
  6,
  0,
  136,
  134,
  1,
  0,
  0,
  0,
  136,
  135,
  1,
  0,
  0,
  0,
  137,
  138,
  1,
  0,
  0,
  0,
  138,
  136,
  1,
  0,
  0,
  0,
  138,
  139,
  1,
  0,
  0,
  0,
  139,
  149,
  1,
  0,
  0,
  0,
  140,
  143,
  3,
  6,
  3,
  0,
  141,
  143,
  3,
  12,
  6,
  0,
  142,
  140,
  1,
  0,
  0,
  0,
  142,
  141,
  1,
  0,
  0,
  0,
  143,
  146,
  1,
  0,
  0,
  0,
  144,
  142,
  1,
  0,
  0,
  0,
  144,
  145,
  1,
  0,
  0,
  0,
  145,
  147,
  1,
  0,
  0,
  0,
  146,
  144,
  1,
  0,
  0,
  0,
  147,
  149,
  3,
  8,
  4,
  0,
  148,
  136,
  1,
  0,
  0,
  0,
  148,
  144,
  1,
  0,
  0,
  0,
  149,
  5,
  1,
  0,
  0,
  0,
  150,
  152,
  5,
  43,
  0,
  0,
  151,
  153,
  3,
  20,
  10,
  0,
  152,
  151,
  1,
  0,
  0,
  0,
  152,
  153,
  1,
  0,
  0,
  0,
  153,
  154,
  1,
  0,
  0,
  0,
  154,
  158,
  5,
  32,
  0,
  0,
  155,
  157,
  3,
  12,
  6,
  0,
  156,
  155,
  1,
  0,
  0,
  0,
  157,
  160,
  1,
  0,
  0,
  0,
  158,
  156,
  1,
  0,
  0,
  0,
  158,
  159,
  1,
  0,
  0,
  0,
  159,
  161,
  1,
  0,
  0,
  0,
  160,
  158,
  1,
  0,
  0,
  0,
  161,
  172,
  5,
  33,
  0,
  0,
  162,
  164,
  5,
  43,
  0,
  0,
  163,
  165,
  3,
  20,
  10,
  0,
  164,
  163,
  1,
  0,
  0,
  0,
  164,
  165,
  1,
  0,
  0,
  0,
  165,
  166,
  1,
  0,
  0,
  0,
  166,
  172,
  5,
  32,
  0,
  0,
  167,
  169,
  5,
  43,
  0,
  0,
  168,
  170,
  3,
  20,
  10,
  0,
  169,
  168,
  1,
  0,
  0,
  0,
  169,
  170,
  1,
  0,
  0,
  0,
  170,
  172,
  1,
  0,
  0,
  0,
  171,
  150,
  1,
  0,
  0,
  0,
  171,
  162,
  1,
  0,
  0,
  0,
  171,
  167,
  1,
  0,
  0,
  0,
  172,
  7,
  1,
  0,
  0,
  0,
  173,
  179,
  5,
  50,
  0,
  0,
  174,
  176,
  5,
  30,
  0,
  0,
  175,
  177,
  3,
  10,
  5,
  0,
  176,
  175,
  1,
  0,
  0,
  0,
  176,
  177,
  1,
  0,
  0,
  0,
  177,
  178,
  1,
  0,
  0,
  0,
  178,
  180,
  5,
  31,
  0,
  0,
  179,
  174,
  1,
  0,
  0,
  0,
  179,
  180,
  1,
  0,
  0,
  0,
  180,
  183,
  1,
  0,
  0,
  0,
  181,
  183,
  5,
  52,
  0,
  0,
  182,
  173,
  1,
  0,
  0,
  0,
  182,
  181,
  1,
  0,
  0,
  0,
  183,
  9,
  1,
  0,
  0,
  0,
  184,
  185,
  7,
  0,
  0,
  0,
  185,
  11,
  1,
  0,
  0,
  0,
  186,
  188,
  3,
  18,
  9,
  0,
  187,
  186,
  1,
  0,
  0,
  0,
  187,
  188,
  1,
  0,
  0,
  0,
  188,
  190,
  1,
  0,
  0,
  0,
  189,
  191,
  3,
  14,
  7,
  0,
  190,
  189,
  1,
  0,
  0,
  0,
  190,
  191,
  1,
  0,
  0,
  0,
  191,
  192,
  1,
  0,
  0,
  0,
  192,
  194,
  3,
  20,
  10,
  0,
  193,
  195,
  3,
  22,
  11,
  0,
  194,
  193,
  1,
  0,
  0,
  0,
  194,
  195,
  1,
  0,
  0,
  0,
  195,
  197,
  1,
  0,
  0,
  0,
  196,
  198,
  3,
  16,
  8,
  0,
  197,
  196,
  1,
  0,
  0,
  0,
  197,
  198,
  1,
  0,
  0,
  0,
  198,
  200,
  1,
  0,
  0,
  0,
  199,
  201,
  5,
  11,
  0,
  0,
  200,
  199,
  1,
  0,
  0,
  0,
  200,
  201,
  1,
  0,
  0,
  0,
  201,
  205,
  1,
  0,
  0,
  0,
  202,
  205,
  3,
  14,
  7,
  0,
  203,
  205,
  3,
  18,
  9,
  0,
  204,
  187,
  1,
  0,
  0,
  0,
  204,
  202,
  1,
  0,
  0,
  0,
  204,
  203,
  1,
  0,
  0,
  0,
  205,
  13,
  1,
  0,
  0,
  0,
  206,
  207,
  5,
  8,
  0,
  0,
  207,
  208,
  3,
  20,
  10,
  0,
  208,
  209,
  5,
  9,
  0,
  0,
  209,
  220,
  1,
  0,
  0,
  0,
  210,
  211,
  5,
  8,
  0,
  0,
  211,
  213,
  3,
  20,
  10,
  0,
  212,
  214,
  5,
  16,
  0,
  0,
  213,
  212,
  1,
  0,
  0,
  0,
  213,
  214,
  1,
  0,
  0,
  0,
  214,
  220,
  1,
  0,
  0,
  0,
  215,
  217,
  7,
  1,
  0,
  0,
  216,
  218,
  7,
  2,
  0,
  0,
  217,
  216,
  1,
  0,
  0,
  0,
  217,
  218,
  1,
  0,
  0,
  0,
  218,
  220,
  1,
  0,
  0,
  0,
  219,
  206,
  1,
  0,
  0,
  0,
  219,
  210,
  1,
  0,
  0,
  0,
  219,
  215,
  1,
  0,
  0,
  0,
  220,
  15,
  1,
  0,
  0,
  0,
  221,
  222,
  5,
  45,
  0,
  0,
  222,
  225,
  3,
  20,
  10,
  0,
  223,
  225,
  5,
  45,
  0,
  0,
  224,
  221,
  1,
  0,
  0,
  0,
  224,
  223,
  1,
  0,
  0,
  0,
  225,
  17,
  1,
  0,
  0,
  0,
  226,
  227,
  5,
  52,
  0,
  0,
  227,
  19,
  1,
  0,
  0,
  0,
  228,
  229,
  7,
  0,
  0,
  0,
  229,
  21,
  1,
  0,
  0,
  0,
  230,
  231,
  5,
  55,
  0,
  0,
  231,
  23,
  1,
  0,
  0,
  0,
  232,
  234,
  3,
  32,
  16,
  0,
  233,
  232,
  1,
  0,
  0,
  0,
  234,
  235,
  1,
  0,
  0,
  0,
  235,
  233,
  1,
  0,
  0,
  0,
  235,
  236,
  1,
  0,
  0,
  0,
  236,
  25,
  1,
  0,
  0,
  0,
  237,
  239,
  5,
  40,
  0,
  0,
  238,
  240,
  3,
  96,
  48,
  0,
  239,
  238,
  1,
  0,
  0,
  0,
  239,
  240,
  1,
  0,
  0,
  0,
  240,
  242,
  1,
  0,
  0,
  0,
  241,
  243,
  5,
  27,
  0,
  0,
  242,
  241,
  1,
  0,
  0,
  0,
  242,
  243,
  1,
  0,
  0,
  0,
  243,
  250,
  1,
  0,
  0,
  0,
  244,
  245,
  5,
  51,
  0,
  0,
  245,
  247,
  3,
  58,
  29,
  0,
  246,
  248,
  5,
  63,
  0,
  0,
  247,
  246,
  1,
  0,
  0,
  0,
  247,
  248,
  1,
  0,
  0,
  0,
  248,
  250,
  1,
  0,
  0,
  0,
  249,
  237,
  1,
  0,
  0,
  0,
  249,
  244,
  1,
  0,
  0,
  0,
  250,
  27,
  1,
  0,
  0,
  0,
  251,
  252,
  3,
  30,
  15,
  0,
  252,
  29,
  1,
  0,
  0,
  0,
  253,
  254,
  5,
  61,
  0,
  0,
  254,
  31,
  1,
  0,
  0,
  0,
  255,
  271,
  3,
  84,
  42,
  0,
  256,
  271,
  3,
  34,
  17,
  0,
  257,
  271,
  3,
  36,
  18,
  0,
  258,
  271,
  3,
  94,
  47,
  0,
  259,
  271,
  3,
  38,
  19,
  0,
  260,
  271,
  3,
  42,
  21,
  0,
  261,
  263,
  3,
  58,
  29,
  0,
  262,
  264,
  5,
  63,
  0,
  0,
  263,
  262,
  1,
  0,
  0,
  0,
  263,
  264,
  1,
  0,
  0,
  0,
  264,
  271,
  1,
  0,
  0,
  0,
  265,
  271,
  3,
  26,
  13,
  0,
  266,
  271,
  3,
  28,
  14,
  0,
  267,
  271,
  3,
  76,
  38,
  0,
  268,
  269,
  5,
  60,
  0,
  0,
  269,
  271,
  6,
  16,
  -1,
  0,
  270,
  255,
  1,
  0,
  0,
  0,
  270,
  256,
  1,
  0,
  0,
  0,
  270,
  257,
  1,
  0,
  0,
  0,
  270,
  258,
  1,
  0,
  0,
  0,
  270,
  259,
  1,
  0,
  0,
  0,
  270,
  260,
  1,
  0,
  0,
  0,
  270,
  261,
  1,
  0,
  0,
  0,
  270,
  265,
  1,
  0,
  0,
  0,
  270,
  266,
  1,
  0,
  0,
  0,
  270,
  267,
  1,
  0,
  0,
  0,
  270,
  268,
  1,
  0,
  0,
  0,
  271,
  33,
  1,
  0,
  0,
  0,
  272,
  273,
  5,
  42,
  0,
  0,
  273,
  276,
  3,
  92,
  46,
  0,
  274,
  276,
  5,
  42,
  0,
  0,
  275,
  272,
  1,
  0,
  0,
  0,
  275,
  274,
  1,
  0,
  0,
  0,
  276,
  35,
  1,
  0,
  0,
  0,
  277,
  278,
  5,
  44,
  0,
  0,
  278,
  281,
  3,
  92,
  46,
  0,
  279,
  281,
  5,
  44,
  0,
  0,
  280,
  277,
  1,
  0,
  0,
  0,
  280,
  279,
  1,
  0,
  0,
  0,
  281,
  37,
  1,
  0,
  0,
  0,
  282,
  285,
  3,
  40,
  20,
  0,
  283,
  286,
  5,
  27,
  0,
  0,
  284,
  286,
  3,
  92,
  46,
  0,
  285,
  283,
  1,
  0,
  0,
  0,
  285,
  284,
  1,
  0,
  0,
  0,
  285,
  286,
  1,
  0,
  0,
  0,
  286,
  39,
  1,
  0,
  0,
  0,
  287,
  289,
  3,
  56,
  28,
  0,
  288,
  287,
  1,
  0,
  0,
  0,
  288,
  289,
  1,
  0,
  0,
  0,
  289,
  290,
  1,
  0,
  0,
  0,
  290,
  291,
  5,
  41,
  0,
  0,
  291,
  297,
  3,
  62,
  31,
  0,
  292,
  294,
  5,
  30,
  0,
  0,
  293,
  295,
  3,
  70,
  35,
  0,
  294,
  293,
  1,
  0,
  0,
  0,
  294,
  295,
  1,
  0,
  0,
  0,
  295,
  296,
  1,
  0,
  0,
  0,
  296,
  298,
  5,
  31,
  0,
  0,
  297,
  292,
  1,
  0,
  0,
  0,
  297,
  298,
  1,
  0,
  0,
  0,
  298,
  304,
  1,
  0,
  0,
  0,
  299,
  301,
  3,
  56,
  28,
  0,
  300,
  299,
  1,
  0,
  0,
  0,
  300,
  301,
  1,
  0,
  0,
  0,
  301,
  302,
  1,
  0,
  0,
  0,
  302,
  304,
  5,
  41,
  0,
  0,
  303,
  288,
  1,
  0,
  0,
  0,
  303,
  300,
  1,
  0,
  0,
  0,
  304,
  41,
  1,
  0,
  0,
  0,
  305,
  308,
  3,
  44,
  22,
  0,
  306,
  309,
  5,
  27,
  0,
  0,
  307,
  309,
  3,
  92,
  46,
  0,
  308,
  306,
  1,
  0,
  0,
  0,
  308,
  307,
  1,
  0,
  0,
  0,
  308,
  309,
  1,
  0,
  0,
  0,
  309,
  43,
  1,
  0,
  0,
  0,
  310,
  312,
  3,
  56,
  28,
  0,
  311,
  310,
  1,
  0,
  0,
  0,
  311,
  312,
  1,
  0,
  0,
  0,
  312,
  321,
  1,
  0,
  0,
  0,
  313,
  314,
  3,
  48,
  24,
  0,
  314,
  315,
  5,
  10,
  0,
  0,
  315,
  317,
  1,
  0,
  0,
  0,
  316,
  313,
  1,
  0,
  0,
  0,
  316,
  317,
  1,
  0,
  0,
  0,
  317,
  318,
  1,
  0,
  0,
  0,
  318,
  319,
  3,
  50,
  25,
  0,
  319,
  320,
  5,
  53,
  0,
  0,
  320,
  322,
  1,
  0,
  0,
  0,
  321,
  316,
  1,
  0,
  0,
  0,
  321,
  322,
  1,
  0,
  0,
  0,
  322,
  323,
  1,
  0,
  0,
  0,
  323,
  334,
  3,
  46,
  23,
  0,
  324,
  334,
  3,
  56,
  28,
  0,
  325,
  326,
  3,
  48,
  24,
  0,
  326,
  327,
  5,
  10,
  0,
  0,
  327,
  329,
  1,
  0,
  0,
  0,
  328,
  325,
  1,
  0,
  0,
  0,
  328,
  329,
  1,
  0,
  0,
  0,
  329,
  330,
  1,
  0,
  0,
  0,
  330,
  331,
  3,
  50,
  25,
  0,
  331,
  332,
  5,
  53,
  0,
  0,
  332,
  334,
  1,
  0,
  0,
  0,
  333,
  311,
  1,
  0,
  0,
  0,
  333,
  324,
  1,
  0,
  0,
  0,
  333,
  328,
  1,
  0,
  0,
  0,
  334,
  45,
  1,
  0,
  0,
  0,
  335,
  340,
  3,
  52,
  26,
  0,
  336,
  337,
  5,
  53,
  0,
  0,
  337,
  339,
  3,
  52,
  26,
  0,
  338,
  336,
  1,
  0,
  0,
  0,
  339,
  342,
  1,
  0,
  0,
  0,
  340,
  338,
  1,
  0,
  0,
  0,
  340,
  341,
  1,
  0,
  0,
  0,
  341,
  47,
  1,
  0,
  0,
  0,
  342,
  340,
  1,
  0,
  0,
  0,
  343,
  344,
  7,
  0,
  0,
  0,
  344,
  49,
  1,
  0,
  0,
  0,
  345,
  346,
  7,
  0,
  0,
  0,
  346,
  51,
  1,
  0,
  0,
  0,
  347,
  349,
  3,
  68,
  34,
  0,
  348,
  350,
  3,
  54,
  27,
  0,
  349,
  348,
  1,
  0,
  0,
  0,
  349,
  350,
  1,
  0,
  0,
  0,
  350,
  53,
  1,
  0,
  0,
  0,
  351,
  353,
  5,
  30,
  0,
  0,
  352,
  354,
  3,
  70,
  35,
  0,
  353,
  352,
  1,
  0,
  0,
  0,
  353,
  354,
  1,
  0,
  0,
  0,
  354,
  355,
  1,
  0,
  0,
  0,
  355,
  356,
  5,
  31,
  0,
  0,
  356,
  55,
  1,
  0,
  0,
  0,
  357,
  359,
  3,
  64,
  32,
  0,
  358,
  357,
  1,
  0,
  0,
  0,
  358,
  359,
  1,
  0,
  0,
  0,
  359,
  360,
  1,
  0,
  0,
  0,
  360,
  361,
  3,
  66,
  33,
  0,
  361,
  362,
  5,
  29,
  0,
  0,
  362,
  57,
  1,
  0,
  0,
  0,
  363,
  364,
  3,
  48,
  24,
  0,
  364,
  365,
  5,
  10,
  0,
  0,
  365,
  367,
  1,
  0,
  0,
  0,
  366,
  363,
  1,
  0,
  0,
  0,
  366,
  367,
  1,
  0,
  0,
  0,
  367,
  368,
  1,
  0,
  0,
  0,
  368,
  369,
  3,
  50,
  25,
  0,
  369,
  370,
  5,
  7,
  0,
  0,
  370,
  371,
  3,
  60,
  30,
  0,
  371,
  378,
  1,
  0,
  0,
  0,
  372,
  373,
  3,
  48,
  24,
  0,
  373,
  375,
  7,
  3,
  0,
  0,
  374,
  376,
  3,
  50,
  25,
  0,
  375,
  374,
  1,
  0,
  0,
  0,
  375,
  376,
  1,
  0,
  0,
  0,
  376,
  378,
  1,
  0,
  0,
  0,
  377,
  366,
  1,
  0,
  0,
  0,
  377,
  372,
  1,
  0,
  0,
  0,
  378,
  59,
  1,
  0,
  0,
  0,
  379,
  380,
  5,
  62,
  0,
  0,
  380,
  61,
  1,
  0,
  0,
  0,
  381,
  382,
  7,
  0,
  0,
  0,
  382,
  63,
  1,
  0,
  0,
  0,
  383,
  384,
  7,
  0,
  0,
  0,
  384,
  65,
  1,
  0,
  0,
  0,
  385,
  396,
  3,
  98,
  49,
  0,
  386,
  391,
  5,
  54,
  0,
  0,
  387,
  388,
  5,
  28,
  0,
  0,
  388,
  390,
  5,
  54,
  0,
  0,
  389,
  387,
  1,
  0,
  0,
  0,
  390,
  393,
  1,
  0,
  0,
  0,
  391,
  389,
  1,
  0,
  0,
  0,
  391,
  392,
  1,
  0,
  0,
  0,
  392,
  396,
  1,
  0,
  0,
  0,
  393,
  391,
  1,
  0,
  0,
  0,
  394,
  396,
  5,
  57,
  0,
  0,
  395,
  385,
  1,
  0,
  0,
  0,
  395,
  386,
  1,
  0,
  0,
  0,
  395,
  394,
  1,
  0,
  0,
  0,
  396,
  67,
  1,
  0,
  0,
  0,
  397,
  398,
  7,
  0,
  0,
  0,
  398,
  69,
  1,
  0,
  0,
  0,
  399,
  404,
  3,
  72,
  36,
  0,
  400,
  401,
  5,
  28,
  0,
  0,
  401,
  403,
  3,
  72,
  36,
  0,
  402,
  400,
  1,
  0,
  0,
  0,
  403,
  406,
  1,
  0,
  0,
  0,
  404,
  402,
  1,
  0,
  0,
  0,
  404,
  405,
  1,
  0,
  0,
  0,
  405,
  408,
  1,
  0,
  0,
  0,
  406,
  404,
  1,
  0,
  0,
  0,
  407,
  409,
  5,
  28,
  0,
  0,
  408,
  407,
  1,
  0,
  0,
  0,
  408,
  409,
  1,
  0,
  0,
  0,
  409,
  71,
  1,
  0,
  0,
  0,
  410,
  413,
  3,
  74,
  37,
  0,
  411,
  413,
  3,
  96,
  48,
  0,
  412,
  410,
  1,
  0,
  0,
  0,
  412,
  411,
  1,
  0,
  0,
  0,
  413,
  73,
  1,
  0,
  0,
  0,
  414,
  415,
  3,
  64,
  32,
  0,
  415,
  416,
  5,
  54,
  0,
  0,
  416,
  75,
  1,
  0,
  0,
  0,
  417,
  421,
  3,
  78,
  39,
  0,
  418,
  420,
  3,
  80,
  40,
  0,
  419,
  418,
  1,
  0,
  0,
  0,
  420,
  423,
  1,
  0,
  0,
  0,
  421,
  419,
  1,
  0,
  0,
  0,
  421,
  422,
  1,
  0,
  0,
  0,
  422,
  425,
  1,
  0,
  0,
  0,
  423,
  421,
  1,
  0,
  0,
  0,
  424,
  426,
  3,
  82,
  41,
  0,
  425,
  424,
  1,
  0,
  0,
  0,
  425,
  426,
  1,
  0,
  0,
  0,
  426,
  77,
  1,
  0,
  0,
  0,
  427,
  428,
  5,
  46,
  0,
  0,
  428,
  429,
  3,
  92,
  46,
  0,
  429,
  79,
  1,
  0,
  0,
  0,
  430,
  432,
  5,
  47,
  0,
  0,
  431,
  433,
  3,
  54,
  27,
  0,
  432,
  431,
  1,
  0,
  0,
  0,
  432,
  433,
  1,
  0,
  0,
  0,
  433,
  434,
  1,
  0,
  0,
  0,
  434,
  435,
  3,
  92,
  46,
  0,
  435,
  81,
  1,
  0,
  0,
  0,
  436,
  437,
  5,
  48,
  0,
  0,
  437,
  438,
  3,
  92,
  46,
  0,
  438,
  83,
  1,
  0,
  0,
  0,
  439,
  443,
  3,
  86,
  43,
  0,
  440,
  442,
  3,
  88,
  44,
  0,
  441,
  440,
  1,
  0,
  0,
  0,
  442,
  445,
  1,
  0,
  0,
  0,
  443,
  441,
  1,
  0,
  0,
  0,
  443,
  444,
  1,
  0,
  0,
  0,
  444,
  447,
  1,
  0,
  0,
  0,
  445,
  443,
  1,
  0,
  0,
  0,
  446,
  448,
  3,
  90,
  45,
  0,
  447,
  446,
  1,
  0,
  0,
  0,
  447,
  448,
  1,
  0,
  0,
  0,
  448,
  85,
  1,
  0,
  0,
  0,
  449,
  450,
  5,
  37,
  0,
  0,
  450,
  451,
  3,
  100,
  50,
  0,
  451,
  452,
  3,
  92,
  46,
  0,
  452,
  87,
  1,
  0,
  0,
  0,
  453,
  454,
  5,
  38,
  0,
  0,
  454,
  455,
  5,
  37,
  0,
  0,
  455,
  456,
  3,
  100,
  50,
  0,
  456,
  457,
  3,
  92,
  46,
  0,
  457,
  89,
  1,
  0,
  0,
  0,
  458,
  459,
  5,
  38,
  0,
  0,
  459,
  460,
  3,
  92,
  46,
  0,
  460,
  91,
  1,
  0,
  0,
  0,
  461,
  463,
  5,
  32,
  0,
  0,
  462,
  464,
  3,
  24,
  12,
  0,
  463,
  462,
  1,
  0,
  0,
  0,
  463,
  464,
  1,
  0,
  0,
  0,
  464,
  465,
  1,
  0,
  0,
  0,
  465,
  466,
  5,
  33,
  0,
  0,
  466,
  93,
  1,
  0,
  0,
  0,
  467,
  468,
  5,
  39,
  0,
  0,
  468,
  469,
  3,
  100,
  50,
  0,
  469,
  470,
  3,
  92,
  46,
  0,
  470,
  475,
  1,
  0,
  0,
  0,
  471,
  472,
  5,
  39,
  0,
  0,
  472,
  475,
  3,
  100,
  50,
  0,
  473,
  475,
  5,
  39,
  0,
  0,
  474,
  467,
  1,
  0,
  0,
  0,
  474,
  471,
  1,
  0,
  0,
  0,
  474,
  473,
  1,
  0,
  0,
  0,
  475,
  95,
  1,
  0,
  0,
  0,
  476,
  477,
  6,
  48,
  -1,
  0,
  477,
  497,
  3,
  98,
  49,
  0,
  478,
  479,
  5,
  21,
  0,
  0,
  479,
  497,
  3,
  96,
  48,
  13,
  480,
  481,
  5,
  26,
  0,
  0,
  481,
  497,
  3,
  96,
  48,
  12,
  482,
  483,
  3,
  50,
  25,
  0,
  483,
  484,
  5,
  53,
  0,
  0,
  484,
  486,
  1,
  0,
  0,
  0,
  485,
  482,
  1,
  0,
  0,
  0,
  485,
  486,
  1,
  0,
  0,
  0,
  486,
  487,
  1,
  0,
  0,
  0,
  487,
  497,
  3,
  46,
  23,
  0,
  488,
  497,
  3,
  38,
  19,
  0,
  489,
  490,
  5,
  30,
  0,
  0,
  490,
  491,
  3,
  96,
  48,
  0,
  491,
  492,
  5,
  31,
  0,
  0,
  492,
  497,
  1,
  0,
  0,
  0,
  493,
  494,
  3,
  56,
  28,
  0,
  494,
  495,
  3,
  96,
  48,
  1,
  495,
  497,
  1,
  0,
  0,
  0,
  496,
  476,
  1,
  0,
  0,
  0,
  496,
  478,
  1,
  0,
  0,
  0,
  496,
  480,
  1,
  0,
  0,
  0,
  496,
  485,
  1,
  0,
  0,
  0,
  496,
  488,
  1,
  0,
  0,
  0,
  496,
  489,
  1,
  0,
  0,
  0,
  496,
  493,
  1,
  0,
  0,
  0,
  497,
  521,
  1,
  0,
  0,
  0,
  498,
  499,
  10,
  11,
  0,
  0,
  499,
  500,
  7,
  4,
  0,
  0,
  500,
  520,
  3,
  96,
  48,
  12,
  501,
  502,
  10,
  10,
  0,
  0,
  502,
  503,
  7,
  5,
  0,
  0,
  503,
  520,
  3,
  96,
  48,
  11,
  504,
  505,
  10,
  9,
  0,
  0,
  505,
  506,
  7,
  6,
  0,
  0,
  506,
  520,
  3,
  96,
  48,
  10,
  507,
  508,
  10,
  8,
  0,
  0,
  508,
  509,
  7,
  7,
  0,
  0,
  509,
  520,
  3,
  96,
  48,
  9,
  510,
  511,
  10,
  7,
  0,
  0,
  511,
  512,
  5,
  13,
  0,
  0,
  512,
  520,
  3,
  96,
  48,
  8,
  513,
  514,
  10,
  6,
  0,
  0,
  514,
  515,
  5,
  12,
  0,
  0,
  515,
  520,
  3,
  96,
  48,
  7,
  516,
  517,
  10,
  5,
  0,
  0,
  517,
  518,
  5,
  20,
  0,
  0,
  518,
  520,
  3,
  96,
  48,
  6,
  519,
  498,
  1,
  0,
  0,
  0,
  519,
  501,
  1,
  0,
  0,
  0,
  519,
  504,
  1,
  0,
  0,
  0,
  519,
  507,
  1,
  0,
  0,
  0,
  519,
  510,
  1,
  0,
  0,
  0,
  519,
  513,
  1,
  0,
  0,
  0,
  519,
  516,
  1,
  0,
  0,
  0,
  520,
  523,
  1,
  0,
  0,
  0,
  521,
  519,
  1,
  0,
  0,
  0,
  521,
  522,
  1,
  0,
  0,
  0,
  522,
  97,
  1,
  0,
  0,
  0,
  523,
  521,
  1,
  0,
  0,
  0,
  524,
  530,
  7,
  8,
  0,
  0,
  525,
  530,
  7,
  9,
  0,
  0,
  526,
  530,
  5,
  54,
  0,
  0,
  527,
  530,
  5,
  57,
  0,
  0,
  528,
  530,
  5,
  36,
  0,
  0,
  529,
  524,
  1,
  0,
  0,
  0,
  529,
  525,
  1,
  0,
  0,
  0,
  529,
  526,
  1,
  0,
  0,
  0,
  529,
  527,
  1,
  0,
  0,
  0,
  529,
  528,
  1,
  0,
  0,
  0,
  530,
  99,
  1,
  0,
  0,
  0,
  531,
  532,
  5,
  30,
  0,
  0,
  532,
  533,
  3,
  102,
  51,
  0,
  533,
  534,
  5,
  31,
  0,
  0,
  534,
  541,
  1,
  0,
  0,
  0,
  535,
  536,
  5,
  30,
  0,
  0,
  536,
  541,
  3,
  102,
  51,
  0,
  537,
  538,
  5,
  30,
  0,
  0,
  538,
  541,
  5,
  31,
  0,
  0,
  539,
  541,
  5,
  30,
  0,
  0,
  540,
  531,
  1,
  0,
  0,
  0,
  540,
  535,
  1,
  0,
  0,
  0,
  540,
  537,
  1,
  0,
  0,
  0,
  540,
  539,
  1,
  0,
  0,
  0,
  541,
  101,
  1,
  0,
  0,
  0,
  542,
  546,
  3,
  98,
  49,
  0,
  543,
  546,
  3,
  96,
  48,
  0,
  544,
  546,
  3,
  104,
  52,
  0,
  545,
  542,
  1,
  0,
  0,
  0,
  545,
  543,
  1,
  0,
  0,
  0,
  545,
  544,
  1,
  0,
  0,
  0,
  546,
  103,
  1,
  0,
  0,
  0,
  547,
  548,
  5,
  54,
  0,
  0,
  548,
  549,
  5,
  49,
  0,
  0,
  549,
  550,
  5,
  54,
  0,
  0,
  550,
  105,
  1,
  0,
  0,
  0,
  77,
  107,
  111,
  117,
  120,
  125,
  129,
  132,
  136,
  138,
  142,
  144,
  148,
  152,
  158,
  164,
  169,
  171,
  176,
  179,
  182,
  187,
  190,
  194,
  197,
  200,
  204,
  213,
  217,
  219,
  224,
  235,
  239,
  242,
  247,
  249,
  263,
  270,
  275,
  280,
  285,
  288,
  294,
  297,
  300,
  303,
  308,
  311,
  316,
  321,
  328,
  333,
  340,
  349,
  353,
  358,
  366,
  375,
  377,
  391,
  395,
  404,
  408,
  412,
  421,
  425,
  432,
  443,
  447,
  463,
  474,
  485,
  496,
  519,
  521,
  529,
  540,
  545
];
var Qo = new b.atn.ATNDeserializer().deserialize(P7);
var F7 = Qo.decisionToState.map((t, e) => new b.dfa.DFA(t, e));
var D7 = new b.PredictionContextCache();
var v = class extends b.Parser {
  static {
    __name(this, "v");
  }
  constructor(e) {
    super(e), this._interp = new b.atn.ParserATNSimulator(this, Qo, F7, D7), this.ruleNames = v.ruleNames, this.literalNames = v.literalNames, this.symbolicNames = v.symbolicNames;
  }
  get atn() {
    return Qo;
  }
  sempred(e, n, r) {
    switch (n) {
      case 48:
        return this.expr_sempred(e, r);
      default:
        throw "No predicate with index:" + n;
    }
  }
  expr_sempred(e, n) {
    switch (n) {
      case 0:
        return this.precpred(this._ctx, 11);
      case 1:
        return this.precpred(this._ctx, 10);
      case 2:
        return this.precpred(this._ctx, 9);
      case 3:
        return this.precpred(this._ctx, 8);
      case 4:
        return this.precpred(this._ctx, 7);
      case 5:
        return this.precpred(this._ctx, 6);
      case 6:
        return this.precpred(this._ctx, 5);
      default:
        throw "No predicate with index:" + n;
    }
  }
  prog() {
    let e = new o4(this, this._ctx, this.state);
    this.enterRule(e, 0, v.RULE_prog);
    var n = 0;
    try {
      this.state = 125, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 4, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 107, this._errHandler.sync(this), n = this._input.LA(1), n === 6 && (this.state = 106, this.title()), this.state = 109, this.match(v.EOF);
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 111, this._errHandler.sync(this), n = this._input.LA(1), n === 6 && (this.state = 110, this.title()), this.state = 113, this.head(), this.state = 114, this.match(v.EOF);
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 117, this._errHandler.sync(this), n = this._input.LA(1), n === 6 && (this.state = 116, this.title()), this.state = 120, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 3, this._ctx);
          r === 1 && (this.state = 119, this.head()), this.state = 122, this.block(), this.state = 123, this.match(v.EOF);
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  title() {
    let e = new La(this, this._ctx, this.state);
    this.enterRule(e, 2, v.RULE_title);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 127, this.match(v.TITLE), this.state = 129, this._errHandler.sync(this), n = this._input.LA(1), n === 64 && (this.state = 128, this.match(v.TITLE_CONTENT)), this.state = 132, this._errHandler.sync(this), n = this._input.LA(1), n === 65 && (this.state = 131, this.match(v.TITLE_END));
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  head() {
    let e = new _a(this, this._ctx, this.state);
    this.enterRule(e, 4, v.RULE_head);
    try {
      this.state = 148, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 11, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 136, this._errHandler.sync(this);
          var r = 1;
          do {
            switch (r) {
              case 1:
                switch (this.state = 136, this._errHandler.sync(this), this._input.LA(1)) {
                  case 43:
                    this.state = 134, this.group();
                    break;
                  case 8:
                  case 17:
                  case 52:
                  case 54:
                  case 57:
                    this.state = 135, this.participant();
                    break;
                  default:
                    throw new b.error.NoViableAltException(this);
                }
                break;
              default:
                throw new b.error.NoViableAltException(this);
            }
            this.state = 138, this._errHandler.sync(this), r = this._interp.adaptivePredict(this._input, 8, this._ctx);
          } while (r != 2 && r != b.atn.ATN.INVALID_ALT_NUMBER);
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 144, this._errHandler.sync(this);
          for (var r = this._interp.adaptivePredict(this._input, 10, this._ctx); r != 2 && r != b.atn.ATN.INVALID_ALT_NUMBER; ) {
            if (r === 1)
              switch (this.state = 142, this._errHandler.sync(this), this._input.LA(1)) {
                case 43:
                  this.state = 140, this.group();
                  break;
                case 8:
                case 17:
                case 52:
                case 54:
                case 57:
                  this.state = 141, this.participant();
                  break;
                default:
                  throw new b.error.NoViableAltException(this);
              }
            this.state = 146, this._errHandler.sync(this), r = this._interp.adaptivePredict(this._input, 10, this._ctx);
          }
          this.state = 147, this.starterExp();
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  group() {
    let e = new Pi(this, this._ctx, this.state);
    this.enterRule(e, 6, v.RULE_group);
    var n = 0;
    try {
      this.state = 171, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 16, this._ctx);
      switch (r) {
        case 1:
          for (this.enterOuterAlt(e, 1), this.state = 150, this.match(v.GROUP), this.state = 152, this._errHandler.sync(this), n = this._input.LA(1), (n === 54 || n === 57) && (this.state = 151, this.name()), this.state = 154, this.match(v.OBRACE), this.state = 158, this._errHandler.sync(this), n = this._input.LA(1); n === 8 || n === 17 || (n - 52 & -32) == 0 && (1 << n - 52 & 37) !== 0; )
            this.state = 155, this.participant(), this.state = 160, this._errHandler.sync(this), n = this._input.LA(1);
          this.state = 161, this.match(v.CBRACE);
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 162, this.match(v.GROUP), this.state = 164, this._errHandler.sync(this), n = this._input.LA(1), (n === 54 || n === 57) && (this.state = 163, this.name()), this.state = 166, this.match(v.OBRACE);
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 167, this.match(v.GROUP), this.state = 169, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 15, this._ctx);
          r === 1 && (this.state = 168, this.name());
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  starterExp() {
    let e = new ya(this, this._ctx, this.state);
    this.enterRule(e, 8, v.RULE_starterExp);
    var n = 0;
    try {
      switch (this.state = 182, this._errHandler.sync(this), this._input.LA(1)) {
        case 50:
          this.enterOuterAlt(e, 1), this.state = 173, this.match(v.STARTER_LXR), this.state = 179, this._errHandler.sync(this), n = this._input.LA(1), n === 30 && (this.state = 174, this.match(v.OPAR), this.state = 176, this._errHandler.sync(this), n = this._input.LA(1), (n === 54 || n === 57) && (this.state = 175, this.starter()), this.state = 178, this.match(v.CPAR));
          break;
        case 52:
          this.enterOuterAlt(e, 2), this.state = 181, this.match(v.ANNOTATION);
          break;
        default:
          throw new b.error.NoViableAltException(this);
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  starter() {
    let e = new Ca(this, this._ctx, this.state);
    this.enterRule(e, 10, v.RULE_starter);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 184, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  participant() {
    let e = new vs(this, this._ctx, this.state);
    this.enterRule(e, 12, v.RULE_participant);
    var n = 0;
    try {
      this.state = 204, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 25, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 187, this._errHandler.sync(this), n = this._input.LA(1), n === 52 && (this.state = 186, this.participantType()), this.state = 190, this._errHandler.sync(this), n = this._input.LA(1), (n === 8 || n === 17) && (this.state = 189, this.stereotype()), this.state = 192, this.name(), this.state = 194, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 22, this._ctx);
          r === 1 && (this.state = 193, this.width()), this.state = 197, this._errHandler.sync(this), n = this._input.LA(1), n === 45 && (this.state = 196, this.label()), this.state = 200, this._errHandler.sync(this), n = this._input.LA(1), n === 11 && (this.state = 199, this.match(v.COLOR));
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 202, this.stereotype();
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 203, this.participantType();
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  stereotype() {
    let e = new va(this, this._ctx, this.state);
    this.enterRule(e, 14, v.RULE_stereotype);
    var n = 0;
    try {
      this.state = 219, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 28, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 206, this.match(v.SOPEN), this.state = 207, this.name(), this.state = 208, this.match(v.SCLOSE);
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 210, this.match(v.SOPEN), this.state = 211, this.name(), this.state = 213, this._errHandler.sync(this), n = this._input.LA(1), n === 16 && (this.state = 212, this.match(v.GT));
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 215, n = this._input.LA(1), n === 8 || n === 17 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this), this.state = 217, this._errHandler.sync(this), n = this._input.LA(1), (n === 9 || n === 16) && (this.state = 216, n = this._input.LA(1), n === 9 || n === 16 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this));
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  label() {
    let e = new ba(this, this._ctx, this.state);
    this.enterRule(e, 16, v.RULE_label);
    try {
      this.state = 224, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 29, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 221, this.match(v.AS), this.state = 222, this.name();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 223, this.match(v.AS);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  participantType() {
    let e = new wa(this, this._ctx, this.state);
    this.enterRule(e, 18, v.RULE_participantType);
    try {
      this.enterOuterAlt(e, 1), this.state = 226, this.match(v.ANNOTATION);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  name() {
    let e = new Is(this, this._ctx, this.state);
    this.enterRule(e, 20, v.RULE_name);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 228, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  width() {
    let e = new Ea(this, this._ctx, this.state);
    this.enterRule(e, 22, v.RULE_width);
    try {
      this.enterOuterAlt(e, 1), this.state = 230, this.match(v.INT);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  block() {
    let e = new v1(this, this._ctx, this.state);
    this.enterRule(e, 24, v.RULE_block);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 233, this._errHandler.sync(this), n = this._input.LA(1);
      do
        this.state = 232, this.stat(), this.state = 235, this._errHandler.sync(this), n = this._input.LA(1);
      while ((n - 34 & -32) == 0 && (1 << n - 34 & 217191919) !== 0);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  ret() {
    let e = new Ta(this, this._ctx, this.state);
    this.enterRule(e, 26, v.RULE_ret);
    var n = 0;
    try {
      switch (this.state = 249, this._errHandler.sync(this), this._input.LA(1)) {
        case 40:
          this.enterOuterAlt(e, 1), this.state = 237, this.match(v.RETURN), this.state = 239, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 31, this._ctx);
          r === 1 && (this.state = 238, this.expr(0)), this.state = 242, this._errHandler.sync(this), n = this._input.LA(1), n === 27 && (this.state = 241, this.match(v.SCOL));
          break;
        case 51:
          this.enterOuterAlt(e, 2), this.state = 244, this.match(v.ANNOTATION_RET), this.state = 245, this.asyncMessage(), this.state = 247, this._errHandler.sync(this), n = this._input.LA(1), n === 63 && (this.state = 246, this.match(v.EVENT_END));
          break;
        default:
          throw new b.error.NoViableAltException(this);
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  divider() {
    let e = new Sa(this, this._ctx, this.state);
    this.enterRule(e, 28, v.RULE_divider);
    try {
      this.enterOuterAlt(e, 1), this.state = 251, this.dividerNote();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  dividerNote() {
    let e = new Aa(this, this._ctx, this.state);
    this.enterRule(e, 30, v.RULE_dividerNote);
    try {
      this.enterOuterAlt(e, 1), this.state = 253, this.match(v.DIVIDER);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  stat() {
    let e = new Fi(this, this._ctx, this.state);
    this.enterRule(e, 32, v.RULE_stat);
    var n = 0;
    try {
      this.state = 270, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 36, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 255, this.alt();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 256, this.par();
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 257, this.opt();
          break;
        case 4:
          this.enterOuterAlt(e, 4), this.state = 258, this.loop();
          break;
        case 5:
          this.enterOuterAlt(e, 5), this.state = 259, this.creation();
          break;
        case 6:
          this.enterOuterAlt(e, 6), this.state = 260, this.message();
          break;
        case 7:
          this.enterOuterAlt(e, 7), this.state = 261, this.asyncMessage(), this.state = 263, this._errHandler.sync(this), n = this._input.LA(1), n === 63 && (this.state = 262, this.match(v.EVENT_END));
          break;
        case 8:
          this.enterOuterAlt(e, 8), this.state = 265, this.ret();
          break;
        case 9:
          this.enterOuterAlt(e, 9), this.state = 266, this.divider();
          break;
        case 10:
          this.enterOuterAlt(e, 10), this.state = 267, this.tcf();
          break;
        case 11:
          this.enterOuterAlt(e, 11), this.state = 268, e._OTHER = this.match(v.OTHER), console.log("unknown char: " + (e._OTHER === null ? null : e._OTHER.text));
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  par() {
    let e = new Ra(this, this._ctx, this.state);
    this.enterRule(e, 34, v.RULE_par);
    try {
      this.state = 275, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 37, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 272, this.match(v.PAR), this.state = 273, this.braceBlock();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 274, this.match(v.PAR);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  opt() {
    let e = new ka(this, this._ctx, this.state);
    this.enterRule(e, 36, v.RULE_opt);
    try {
      this.state = 280, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 38, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 277, this.match(v.OPT), this.state = 278, this.braceBlock();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 279, this.match(v.OPT);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  creation() {
    let e = new b1(this, this._ctx, this.state);
    this.enterRule(e, 38, v.RULE_creation);
    try {
      this.enterOuterAlt(e, 1), this.state = 282, this.creationBody(), this.state = 285, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 39, this._ctx);
      n === 1 ? (this.state = 283, this.match(v.SCOL)) : n === 2 && (this.state = 284, this.braceBlock());
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  creationBody() {
    let e = new Oa(this, this._ctx, this.state);
    this.enterRule(e, 40, v.RULE_creationBody);
    var n = 0;
    try {
      this.state = 303, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 44, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 288, this._errHandler.sync(this), n = this._input.LA(1), (n - 34 & -32) == 0 && (1 << n - 34 & 15728647) !== 0 && (this.state = 287, this.assignment()), this.state = 290, this.match(v.NEW), this.state = 291, this.construct(), this.state = 297, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 42, this._ctx);
          r === 1 && (this.state = 292, this.match(v.OPAR), this.state = 294, this._errHandler.sync(this), n = this._input.LA(1), ((n & -32) == 0 && (1 << n & 1142947840) !== 0 || (n - 34 & -32) == 0 && (1 << n - 34 & 15728775) !== 0) && (this.state = 293, this.parameters()), this.state = 296, this.match(v.CPAR));
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 300, this._errHandler.sync(this), n = this._input.LA(1), (n - 34 & -32) == 0 && (1 << n - 34 & 15728647) !== 0 && (this.state = 299, this.assignment()), this.state = 302, this.match(v.NEW);
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  message() {
    let e = new Ia(this, this._ctx, this.state);
    this.enterRule(e, 42, v.RULE_message);
    try {
      switch (this.enterOuterAlt(e, 1), this.state = 305, this.messageBody(), this.state = 308, this._errHandler.sync(this), this._input.LA(1)) {
        case 27:
          this.state = 306, this.match(v.SCOL);
          break;
        case 32:
          this.state = 307, this.braceBlock();
          break;
        case -1:
        case 33:
        case 34:
        case 35:
        case 36:
        case 37:
        case 39:
        case 40:
        case 41:
        case 42:
        case 44:
        case 46:
        case 51:
        case 54:
        case 55:
        case 56:
        case 57:
        case 60:
        case 61:
          break;
        default:
          break;
      }
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  messageBody() {
    let e = new Ma(this, this._ctx, this.state);
    this.enterRule(e, 44, v.RULE_messageBody);
    try {
      this.state = 333, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 50, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 311, this._errHandler.sync(this);
          var n = this._interp.adaptivePredict(this._input, 46, this._ctx);
          n === 1 && (this.state = 310, this.assignment()), this.state = 321, this._errHandler.sync(this);
          var n = this._interp.adaptivePredict(this._input, 48, this._ctx);
          if (n === 1) {
            this.state = 316, this._errHandler.sync(this);
            var n = this._interp.adaptivePredict(this._input, 47, this._ctx);
            n === 1 && (this.state = 313, this.from(), this.state = 314, this.match(v.ARROW)), this.state = 318, this.to(), this.state = 319, this.match(v.DOT);
          }
          this.state = 323, this.func();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 324, this.assignment();
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 328, this._errHandler.sync(this);
          var n = this._interp.adaptivePredict(this._input, 49, this._ctx);
          n === 1 && (this.state = 325, this.from(), this.state = 326, this.match(v.ARROW)), this.state = 330, this.to(), this.state = 331, this.match(v.DOT);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  func() {
    let e = new w1(this, this._ctx, this.state);
    this.enterRule(e, 46, v.RULE_func);
    try {
      this.enterOuterAlt(e, 1), this.state = 335, this.signature(), this.state = 340, this._errHandler.sync(this);
      for (var n = this._interp.adaptivePredict(this._input, 51, this._ctx); n != 2 && n != b.atn.ATN.INVALID_ALT_NUMBER; )
        n === 1 && (this.state = 336, this.match(v.DOT), this.state = 337, this.signature()), this.state = 342, this._errHandler.sync(this), n = this._interp.adaptivePredict(this._input, 51, this._ctx);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  from() {
    let e = new E1(this, this._ctx, this.state);
    this.enterRule(e, 48, v.RULE_from);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 343, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  to() {
    let e = new D0(this, this._ctx, this.state);
    this.enterRule(e, 50, v.RULE_to);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 345, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  signature() {
    let e = new Di(this, this._ctx, this.state);
    this.enterRule(e, 52, v.RULE_signature);
    try {
      this.enterOuterAlt(e, 1), this.state = 347, this.methodName(), this.state = 349, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 52, this._ctx);
      n === 1 && (this.state = 348, this.invocation());
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  invocation() {
    let e = new T1(this, this._ctx, this.state);
    this.enterRule(e, 54, v.RULE_invocation);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 351, this.match(v.OPAR), this.state = 353, this._errHandler.sync(this), n = this._input.LA(1), ((n & -32) == 0 && (1 << n & 1142947840) !== 0 || (n - 34 & -32) == 0 && (1 << n - 34 & 15728775) !== 0) && (this.state = 352, this.parameters()), this.state = 355, this.match(v.CPAR);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  assignment() {
    let e = new B0(this, this._ctx, this.state);
    this.enterRule(e, 56, v.RULE_assignment);
    try {
      this.enterOuterAlt(e, 1), this.state = 358, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 54, this._ctx);
      n === 1 && (this.state = 357, this.type()), this.state = 360, this.assignee(), this.state = 361, this.match(v.ASSIGN);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  asyncMessage() {
    let e = new S1(this, this._ctx, this.state);
    this.enterRule(e, 58, v.RULE_asyncMessage);
    var n = 0;
    try {
      this.state = 377, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 57, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 366, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 55, this._ctx);
          r === 1 && (this.state = 363, this.from(), this.state = 364, this.match(v.ARROW)), this.state = 368, this.to(), this.state = 369, this.match(v.COL), this.state = 370, this.content();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 372, this.from(), this.state = 373, n = this._input.LA(1), n === 10 || n === 21 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this), this.state = 375, this._errHandler.sync(this);
          var r = this._interp.adaptivePredict(this._input, 56, this._ctx);
          r === 1 && (this.state = 374, this.to());
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  content() {
    let e = new Na(this, this._ctx, this.state);
    this.enterRule(e, 60, v.RULE_content);
    try {
      this.enterOuterAlt(e, 1), this.state = 379, this.match(v.EVENT_PAYLOAD_LXR);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  construct() {
    let e = new Pa(this, this._ctx, this.state);
    this.enterRule(e, 62, v.RULE_construct);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 381, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  type() {
    let e = new A1(this, this._ctx, this.state);
    this.enterRule(e, 64, v.RULE_type);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 383, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  assignee() {
    let e = new Fa(this, this._ctx, this.state);
    this.enterRule(e, 66, v.RULE_assignee);
    var n = 0;
    try {
      this.state = 395, this._errHandler.sync(this);
      var r = this._interp.adaptivePredict(this._input, 59, this._ctx);
      switch (r) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 385, this.atom();
          break;
        case 2:
          for (this.enterOuterAlt(e, 2), this.state = 386, this.match(v.ID), this.state = 391, this._errHandler.sync(this), n = this._input.LA(1); n === 28; )
            this.state = 387, this.match(v.COMMA), this.state = 388, this.match(v.ID), this.state = 393, this._errHandler.sync(this), n = this._input.LA(1);
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 394, this.match(v.STRING);
          break;
      }
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  methodName() {
    let e = new Da(this, this._ctx, this.state);
    this.enterRule(e, 68, v.RULE_methodName);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 397, n = this._input.LA(1), n === 54 || n === 57 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  parameters() {
    let e = new R1(this, this._ctx, this.state);
    this.enterRule(e, 70, v.RULE_parameters);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 399, this.parameter(), this.state = 404, this._errHandler.sync(this);
      for (var r = this._interp.adaptivePredict(this._input, 60, this._ctx); r != 2 && r != b.atn.ATN.INVALID_ALT_NUMBER; )
        r === 1 && (this.state = 400, this.match(v.COMMA), this.state = 401, this.parameter()), this.state = 406, this._errHandler.sync(this), r = this._interp.adaptivePredict(this._input, 60, this._ctx);
      this.state = 408, this._errHandler.sync(this), n = this._input.LA(1), n === 28 && (this.state = 407, this.match(v.COMMA));
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  parameter() {
    let e = new Bi(this, this._ctx, this.state);
    this.enterRule(e, 72, v.RULE_parameter);
    try {
      this.state = 412, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 62, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 410, this.declaration();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 411, this.expr(0);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  declaration() {
    let e = new Ba(this, this._ctx, this.state);
    this.enterRule(e, 74, v.RULE_declaration);
    try {
      this.enterOuterAlt(e, 1), this.state = 414, this.type(), this.state = 415, this.match(v.ID);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  tcf() {
    let e = new $a(this, this._ctx, this.state);
    this.enterRule(e, 76, v.RULE_tcf);
    var n = 0;
    try {
      for (this.enterOuterAlt(e, 1), this.state = 417, this.tryBlock(), this.state = 421, this._errHandler.sync(this), n = this._input.LA(1); n === 47; )
        this.state = 418, this.catchBlock(), this.state = 423, this._errHandler.sync(this), n = this._input.LA(1);
      this.state = 425, this._errHandler.sync(this), n = this._input.LA(1), n === 48 && (this.state = 424, this.finallyBlock());
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  tryBlock() {
    let e = new Ha(this, this._ctx, this.state);
    this.enterRule(e, 78, v.RULE_tryBlock);
    try {
      this.enterOuterAlt(e, 1), this.state = 427, this.match(v.TRY), this.state = 428, this.braceBlock();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  catchBlock() {
    let e = new $i(this, this._ctx, this.state);
    this.enterRule(e, 80, v.RULE_catchBlock);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 430, this.match(v.CATCH), this.state = 432, this._errHandler.sync(this), n = this._input.LA(1), n === 30 && (this.state = 431, this.invocation()), this.state = 434, this.braceBlock();
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  finallyBlock() {
    let e = new Ua(this, this._ctx, this.state);
    this.enterRule(e, 82, v.RULE_finallyBlock);
    try {
      this.enterOuterAlt(e, 1), this.state = 436, this.match(v.FINALLY), this.state = 437, this.braceBlock();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  alt() {
    let e = new Va(this, this._ctx, this.state);
    this.enterRule(e, 84, v.RULE_alt);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 439, this.ifBlock(), this.state = 443, this._errHandler.sync(this);
      for (var r = this._interp.adaptivePredict(this._input, 66, this._ctx); r != 2 && r != b.atn.ATN.INVALID_ALT_NUMBER; )
        r === 1 && (this.state = 440, this.elseIfBlock()), this.state = 445, this._errHandler.sync(this), r = this._interp.adaptivePredict(this._input, 66, this._ctx);
      this.state = 447, this._errHandler.sync(this), n = this._input.LA(1), n === 38 && (this.state = 446, this.elseBlock());
    } catch (s) {
      if (s instanceof b.error.RecognitionException)
        e.exception = s, this._errHandler.reportError(this, s), this._errHandler.recover(this, s);
      else
        throw s;
    } finally {
      this.exitRule();
    }
    return e;
  }
  ifBlock() {
    let e = new za(this, this._ctx, this.state);
    this.enterRule(e, 86, v.RULE_ifBlock);
    try {
      this.enterOuterAlt(e, 1), this.state = 449, this.match(v.IF), this.state = 450, this.parExpr(), this.state = 451, this.braceBlock();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  elseIfBlock() {
    let e = new Hi(this, this._ctx, this.state);
    this.enterRule(e, 88, v.RULE_elseIfBlock);
    try {
      this.enterOuterAlt(e, 1), this.state = 453, this.match(v.ELSE), this.state = 454, this.match(v.IF), this.state = 455, this.parExpr(), this.state = 456, this.braceBlock();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  elseBlock() {
    let e = new Ga(this, this._ctx, this.state);
    this.enterRule(e, 90, v.RULE_elseBlock);
    try {
      this.enterOuterAlt(e, 1), this.state = 458, this.match(v.ELSE), this.state = 459, this.braceBlock();
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
  braceBlock() {
    let e = new tn(this, this._ctx, this.state);
    this.enterRule(e, 92, v.RULE_braceBlock);
    var n = 0;
    try {
      this.enterOuterAlt(e, 1), this.state = 461, this.match(v.OBRACE), this.state = 463, this._errHandler.sync(this), n = this._input.LA(1), (n - 34 & -32) == 0 && (1 << n - 34 & 217191919) !== 0 && (this.state = 462, this.block()), this.state = 465, this.match(v.CBRACE);
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  loop() {
    let e = new ja(this, this._ctx, this.state);
    this.enterRule(e, 94, v.RULE_loop);
    try {
      this.state = 474, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 69, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 467, this.match(v.WHILE), this.state = 468, this.parExpr(), this.state = 469, this.braceBlock();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 471, this.match(v.WHILE), this.state = 472, this.parExpr();
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 473, this.match(v.WHILE);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  expr(e) {
    e === void 0 && (e = 0);
    const n = this._ctx, r = this.state;
    let s = new ye(this, this._ctx, r), i = s;
    const o = 96;
    this.enterRecursionRule(s, 96, v.RULE_expr, e);
    var l = 0;
    try {
      this.enterOuterAlt(s, 1), this.state = 496, this._errHandler.sync(this);
      var a = this._interp.adaptivePredict(this._input, 71, this._ctx);
      switch (a) {
        case 1:
          s = new c4(this, s), this._ctx = s, i = s, this.state = 477, this.atom();
          break;
        case 2:
          s = new g4(this, s), this._ctx = s, i = s, this.state = 478, this.match(v.MINUS), this.state = 479, this.expr(13);
          break;
        case 3:
          s = new p4(this, s), this._ctx = s, i = s, this.state = 480, this.match(v.NOT), this.state = 481, this.expr(12);
          break;
        case 4:
          s = new a4(this, s), this._ctx = s, i = s, this.state = 485, this._errHandler.sync(this);
          var a = this._interp.adaptivePredict(this._input, 70, this._ctx);
          a === 1 && (this.state = 482, this.to(), this.state = 483, this.match(v.DOT)), this.state = 487, this.func();
          break;
        case 5:
          s = new m4(this, s), this._ctx = s, i = s, this.state = 488, this.creation();
          break;
        case 6:
          s = new x4(this, s), this._ctx = s, i = s, this.state = 489, this.match(v.OPAR), this.state = 490, this.expr(0), this.state = 491, this.match(v.CPAR);
          break;
        case 7:
          s = new l4(this, s), this._ctx = s, i = s, this.state = 493, this.assignment(), this.state = 494, this.expr(1);
          break;
      }
      this._ctx.stop = this._input.LT(-1), this.state = 521, this._errHandler.sync(this);
      for (var c = this._interp.adaptivePredict(this._input, 73, this._ctx); c != 2 && c != b.atn.ATN.INVALID_ALT_NUMBER; ) {
        if (c === 1) {
          this._parseListeners !== null && this.triggerExitRuleEvent(), i = s, this.state = 519, this._errHandler.sync(this);
          var a = this._interp.adaptivePredict(this._input, 72, this._ctx);
          switch (a) {
            case 1:
              if (s = new L4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 498, !this.precpred(this._ctx, 11))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 11)");
              this.state = 499, s.op = this._input.LT(1), l = this._input.LA(1), (l & -32) == 0 && (1 << l & 29360128) !== 0 ? (this._errHandler.reportMatch(this), this.consume()) : s.op = this._errHandler.recoverInline(this), this.state = 500, this.expr(12);
              break;
            case 2:
              if (s = new h4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 501, !this.precpred(this._ctx, 10))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 10)");
              this.state = 502, s.op = this._input.LT(1), l = this._input.LA(1), l === 20 || l === 21 ? (this._errHandler.reportMatch(this), this.consume()) : s.op = this._errHandler.recoverInline(this), this.state = 503, this.expr(11);
              break;
            case 3:
              if (s = new d4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 504, !this.precpred(this._ctx, 9))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 9)");
              this.state = 505, s.op = this._input.LT(1), l = this._input.LA(1), (l & -32) == 0 && (1 << l & 983040) !== 0 ? (this._errHandler.reportMatch(this), this.consume()) : s.op = this._errHandler.recoverInline(this), this.state = 506, this.expr(10);
              break;
            case 4:
              if (s = new _4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 507, !this.precpred(this._ctx, 8))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 8)");
              this.state = 508, s.op = this._input.LT(1), l = this._input.LA(1), l === 14 || l === 15 ? (this._errHandler.reportMatch(this), this.consume()) : s.op = this._errHandler.recoverInline(this), this.state = 509, this.expr(9);
              break;
            case 5:
              if (s = new y4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 510, !this.precpred(this._ctx, 7))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 7)");
              this.state = 511, this.match(v.AND), this.state = 512, this.expr(8);
              break;
            case 6:
              if (s = new u4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 513, !this.precpred(this._ctx, 6))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 6)");
              this.state = 514, this.match(v.OR), this.state = 515, this.expr(7);
              break;
            case 7:
              if (s = new f4(this, new ye(this, n, r)), this.pushNewRecursionContext(s, o, v.RULE_expr), this.state = 516, !this.precpred(this._ctx, 5))
                throw new b.error.FailedPredicateException(this, "this.precpred(this._ctx, 5)");
              this.state = 517, this.match(v.PLUS), this.state = 518, this.expr(6);
              break;
          }
        }
        this.state = 523, this._errHandler.sync(this), c = this._interp.adaptivePredict(this._input, 73, this._ctx);
      }
    } catch (u) {
      if (u instanceof b.error.RecognitionException)
        s.exception = u, this._errHandler.reportError(this, u), this._errHandler.recover(this, u);
      else
        throw u;
    } finally {
      this.unrollRecursionContexts(n);
    }
    return s;
  }
  atom() {
    let e = new Dn(this, this._ctx, this.state);
    this.enterRule(e, 98, v.RULE_atom);
    var n = 0;
    try {
      switch (this.state = 529, this._errHandler.sync(this), this._input.LA(1)) {
        case 55:
        case 56:
          e = new E4(this, e), this.enterOuterAlt(e, 1), this.state = 524, n = this._input.LA(1), n === 55 || n === 56 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
          break;
        case 34:
        case 35:
          e = new C4(this, e), this.enterOuterAlt(e, 2), this.state = 525, n = this._input.LA(1), n === 34 || n === 35 ? (this._errHandler.reportMatch(this), this.consume()) : this._errHandler.recoverInline(this);
          break;
        case 54:
          e = new v4(this, e), this.enterOuterAlt(e, 3), this.state = 526, this.match(v.ID);
          break;
        case 57:
          e = new b4(this, e), this.enterOuterAlt(e, 4), this.state = 527, this.match(v.STRING);
          break;
        case 36:
          e = new w4(this, e), this.enterOuterAlt(e, 5), this.state = 528, this.match(v.NIL);
          break;
        default:
          throw new b.error.NoViableAltException(this);
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  parExpr() {
    let e = new $0(this, this._ctx, this.state);
    this.enterRule(e, 100, v.RULE_parExpr);
    try {
      this.state = 540, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 75, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 531, this.match(v.OPAR), this.state = 532, this.condition(), this.state = 533, this.match(v.CPAR);
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 535, this.match(v.OPAR), this.state = 536, this.condition();
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 537, this.match(v.OPAR), this.state = 538, this.match(v.CPAR);
          break;
        case 4:
          this.enterOuterAlt(e, 4), this.state = 539, this.match(v.OPAR);
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  condition() {
    let e = new Za(this, this._ctx, this.state);
    this.enterRule(e, 102, v.RULE_condition);
    try {
      this.state = 545, this._errHandler.sync(this);
      var n = this._interp.adaptivePredict(this._input, 76, this._ctx);
      switch (n) {
        case 1:
          this.enterOuterAlt(e, 1), this.state = 542, this.atom();
          break;
        case 2:
          this.enterOuterAlt(e, 2), this.state = 543, this.expr(0);
          break;
        case 3:
          this.enterOuterAlt(e, 3), this.state = 544, this.inExpr();
          break;
      }
    } catch (r) {
      if (r instanceof b.error.RecognitionException)
        e.exception = r, this._errHandler.reportError(this, r), this._errHandler.recover(this, r);
      else
        throw r;
    } finally {
      this.exitRule();
    }
    return e;
  }
  inExpr() {
    let e = new Wa(this, this._ctx, this.state);
    this.enterRule(e, 104, v.RULE_inExpr);
    try {
      this.enterOuterAlt(e, 1), this.state = 547, this.match(v.ID), this.state = 548, this.match(v.IN), this.state = 549, this.match(v.ID);
    } catch (n) {
      if (n instanceof b.error.RecognitionException)
        e.exception = n, this._errHandler.reportError(this, n), this._errHandler.recover(this, n);
      else
        throw n;
    } finally {
      this.exitRule();
    }
    return e;
  }
};
var d = v;
Z(d, "grammarFileName", "java-escape"), Z(d, "literalNames", [
  null,
  null,
  "'const'",
  "'readonly'",
  "'static'",
  "'await'",
  "'title'",
  "':'",
  "'<<'",
  "'>>'",
  "'->'",
  null,
  "'||'",
  "'&&'",
  "'=='",
  "'!='",
  "'>'",
  "'<'",
  "'>='",
  "'<='",
  "'+'",
  "'-'",
  "'*'",
  "'/'",
  "'%'",
  "'^'",
  "'!'",
  "';'",
  "','",
  "'='",
  "'('",
  "')'",
  "'{'",
  "'}'",
  "'true'",
  "'false'",
  null,
  "'if'",
  "'else'",
  null,
  "'return'",
  "'new'",
  "'par'",
  "'group'",
  "'opt'",
  "'as'",
  "'try'",
  "'catch'",
  "'finally'",
  "'in'",
  null,
  null,
  null,
  "'.'"
]), Z(d, "symbolicNames", [
  null,
  "WS",
  "CONSTANT",
  "READONLY",
  "STATIC",
  "AWAIT",
  "TITLE",
  "COL",
  "SOPEN",
  "SCLOSE",
  "ARROW",
  "COLOR",
  "OR",
  "AND",
  "EQ",
  "NEQ",
  "GT",
  "LT",
  "GTEQ",
  "LTEQ",
  "PLUS",
  "MINUS",
  "MULT",
  "DIV",
  "MOD",
  "POW",
  "NOT",
  "SCOL",
  "COMMA",
  "ASSIGN",
  "OPAR",
  "CPAR",
  "OBRACE",
  "CBRACE",
  "TRUE",
  "FALSE",
  "NIL",
  "IF",
  "ELSE",
  "WHILE",
  "RETURN",
  "NEW",
  "PAR",
  "GROUP",
  "OPT",
  "AS",
  "TRY",
  "CATCH",
  "FINALLY",
  "IN",
  "STARTER_LXR",
  "ANNOTATION_RET",
  "ANNOTATION",
  "DOT",
  "ID",
  "INT",
  "FLOAT",
  "STRING",
  "CR",
  "COMMENT",
  "OTHER",
  "DIVIDER",
  "EVENT_PAYLOAD_LXR",
  "EVENT_END",
  "TITLE_CONTENT",
  "TITLE_END"
]), Z(d, "ruleNames", [
  "prog",
  "title",
  "head",
  "group",
  "starterExp",
  "starter",
  "participant",
  "stereotype",
  "label",
  "participantType",
  "name",
  "width",
  "block",
  "ret",
  "divider",
  "dividerNote",
  "stat",
  "par",
  "opt",
  "creation",
  "creationBody",
  "message",
  "messageBody",
  "func",
  "from",
  "to",
  "signature",
  "invocation",
  "assignment",
  "asyncMessage",
  "content",
  "construct",
  "type",
  "assignee",
  "methodName",
  "parameters",
  "parameter",
  "declaration",
  "tcf",
  "tryBlock",
  "catchBlock",
  "finallyBlock",
  "alt",
  "ifBlock",
  "elseIfBlock",
  "elseBlock",
  "braceBlock",
  "loop",
  "expr",
  "atom",
  "parExpr",
  "condition",
  "inExpr"
]);
d.EOF = b.Token.EOF;
d.WS = 1;
d.CONSTANT = 2;
d.READONLY = 3;
d.STATIC = 4;
d.AWAIT = 5;
d.TITLE = 6;
d.COL = 7;
d.SOPEN = 8;
d.SCLOSE = 9;
d.ARROW = 10;
d.COLOR = 11;
d.OR = 12;
d.AND = 13;
d.EQ = 14;
d.NEQ = 15;
d.GT = 16;
d.LT = 17;
d.GTEQ = 18;
d.LTEQ = 19;
d.PLUS = 20;
d.MINUS = 21;
d.MULT = 22;
d.DIV = 23;
d.MOD = 24;
d.POW = 25;
d.NOT = 26;
d.SCOL = 27;
d.COMMA = 28;
d.ASSIGN = 29;
d.OPAR = 30;
d.CPAR = 31;
d.OBRACE = 32;
d.CBRACE = 33;
d.TRUE = 34;
d.FALSE = 35;
d.NIL = 36;
d.IF = 37;
d.ELSE = 38;
d.WHILE = 39;
d.RETURN = 40;
d.NEW = 41;
d.PAR = 42;
d.GROUP = 43;
d.OPT = 44;
d.AS = 45;
d.TRY = 46;
d.CATCH = 47;
d.FINALLY = 48;
d.IN = 49;
d.STARTER_LXR = 50;
d.ANNOTATION_RET = 51;
d.ANNOTATION = 52;
d.DOT = 53;
d.ID = 54;
d.INT = 55;
d.FLOAT = 56;
d.STRING = 57;
d.CR = 58;
d.COMMENT = 59;
d.OTHER = 60;
d.DIVIDER = 61;
d.EVENT_PAYLOAD_LXR = 62;
d.EVENT_END = 63;
d.TITLE_CONTENT = 64;
d.TITLE_END = 65;
d.RULE_prog = 0;
d.RULE_title = 1;
d.RULE_head = 2;
d.RULE_group = 3;
d.RULE_starterExp = 4;
d.RULE_starter = 5;
d.RULE_participant = 6;
d.RULE_stereotype = 7;
d.RULE_label = 8;
d.RULE_participantType = 9;
d.RULE_name = 10;
d.RULE_width = 11;
d.RULE_block = 12;
d.RULE_ret = 13;
d.RULE_divider = 14;
d.RULE_dividerNote = 15;
d.RULE_stat = 16;
d.RULE_par = 17;
d.RULE_opt = 18;
d.RULE_creation = 19;
d.RULE_creationBody = 20;
d.RULE_message = 21;
d.RULE_messageBody = 22;
d.RULE_func = 23;
d.RULE_from = 24;
d.RULE_to = 25;
d.RULE_signature = 26;
d.RULE_invocation = 27;
d.RULE_assignment = 28;
d.RULE_asyncMessage = 29;
d.RULE_content = 30;
d.RULE_construct = 31;
d.RULE_type = 32;
d.RULE_assignee = 33;
d.RULE_methodName = 34;
d.RULE_parameters = 35;
d.RULE_parameter = 36;
d.RULE_declaration = 37;
d.RULE_tcf = 38;
d.RULE_tryBlock = 39;
d.RULE_catchBlock = 40;
d.RULE_finallyBlock = 41;
d.RULE_alt = 42;
d.RULE_ifBlock = 43;
d.RULE_elseIfBlock = 44;
d.RULE_elseBlock = 45;
d.RULE_braceBlock = 46;
d.RULE_loop = 47;
d.RULE_expr = 48;
d.RULE_atom = 49;
d.RULE_parExpr = 50;
d.RULE_condition = 51;
d.RULE_inExpr = 52;
var o4 = class extends b.ParserRuleContext {
  static {
    __name(this, "o4");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_prog;
  }
  EOF() {
    return this.getToken(d.EOF, 0);
  }
  title() {
    return this.getTypedRuleContext(La, 0);
  }
  head() {
    return this.getTypedRuleContext(_a, 0);
  }
  block() {
    return this.getTypedRuleContext(v1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterProg(this);
  }
  exitRule(e) {
    e instanceof w && e.exitProg(this);
  }
};
var La = class extends b.ParserRuleContext {
  static {
    __name(this, "La");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_title;
  }
  TITLE() {
    return this.getToken(d.TITLE, 0);
  }
  TITLE_CONTENT() {
    return this.getToken(d.TITLE_CONTENT, 0);
  }
  TITLE_END() {
    return this.getToken(d.TITLE_END, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterTitle(this);
  }
  exitRule(e) {
    e instanceof w && e.exitTitle(this);
  }
};
var _a = class extends b.ParserRuleContext {
  static {
    __name(this, "_a");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "group", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(Pi) : this.getTypedRuleContext(Pi, n10);
    });
    Z(this, "participant", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(vs) : this.getTypedRuleContext(vs, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_head;
  }
  starterExp() {
    return this.getTypedRuleContext(ya, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterHead(this);
  }
  exitRule(n) {
    n instanceof w && n.exitHead(this);
  }
};
var Pi = class extends b.ParserRuleContext {
  static {
    __name(this, "Pi");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "participant", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(vs) : this.getTypedRuleContext(vs, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_group;
  }
  GROUP() {
    return this.getToken(d.GROUP, 0);
  }
  OBRACE() {
    return this.getToken(d.OBRACE, 0);
  }
  CBRACE() {
    return this.getToken(d.CBRACE, 0);
  }
  name() {
    return this.getTypedRuleContext(Is, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterGroup(this);
  }
  exitRule(n) {
    n instanceof w && n.exitGroup(this);
  }
};
var ya = class extends b.ParserRuleContext {
  static {
    __name(this, "ya");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_starterExp;
  }
  STARTER_LXR() {
    return this.getToken(d.STARTER_LXR, 0);
  }
  OPAR() {
    return this.getToken(d.OPAR, 0);
  }
  CPAR() {
    return this.getToken(d.CPAR, 0);
  }
  starter() {
    return this.getTypedRuleContext(Ca, 0);
  }
  ANNOTATION() {
    return this.getToken(d.ANNOTATION, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterStarterExp(this);
  }
  exitRule(e) {
    e instanceof w && e.exitStarterExp(this);
  }
};
var Ca = class extends b.ParserRuleContext {
  static {
    __name(this, "Ca");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_starter;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterStarter(this);
  }
  exitRule(e) {
    e instanceof w && e.exitStarter(this);
  }
};
var vs = class extends b.ParserRuleContext {
  static {
    __name(this, "vs");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_participant;
  }
  name() {
    return this.getTypedRuleContext(Is, 0);
  }
  participantType() {
    return this.getTypedRuleContext(wa, 0);
  }
  stereotype() {
    return this.getTypedRuleContext(va, 0);
  }
  width() {
    return this.getTypedRuleContext(Ea, 0);
  }
  label() {
    return this.getTypedRuleContext(ba, 0);
  }
  COLOR() {
    return this.getToken(d.COLOR, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterParticipant(this);
  }
  exitRule(e) {
    e instanceof w && e.exitParticipant(this);
  }
};
var va = class extends b.ParserRuleContext {
  static {
    __name(this, "va");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_stereotype;
  }
  SOPEN() {
    return this.getToken(d.SOPEN, 0);
  }
  name() {
    return this.getTypedRuleContext(Is, 0);
  }
  SCLOSE() {
    return this.getToken(d.SCLOSE, 0);
  }
  GT() {
    return this.getToken(d.GT, 0);
  }
  LT() {
    return this.getToken(d.LT, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterStereotype(this);
  }
  exitRule(e) {
    e instanceof w && e.exitStereotype(this);
  }
};
var ba = class extends b.ParserRuleContext {
  static {
    __name(this, "ba");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_label;
  }
  AS() {
    return this.getToken(d.AS, 0);
  }
  name() {
    return this.getTypedRuleContext(Is, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterLabel(this);
  }
  exitRule(e) {
    e instanceof w && e.exitLabel(this);
  }
};
var wa = class extends b.ParserRuleContext {
  static {
    __name(this, "wa");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_participantType;
  }
  ANNOTATION() {
    return this.getToken(d.ANNOTATION, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterParticipantType(this);
  }
  exitRule(e) {
    e instanceof w && e.exitParticipantType(this);
  }
};
var Is = class extends b.ParserRuleContext {
  static {
    __name(this, "Is");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_name;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterName(this);
  }
  exitRule(e) {
    e instanceof w && e.exitName(this);
  }
};
var Ea = class extends b.ParserRuleContext {
  static {
    __name(this, "Ea");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_width;
  }
  INT() {
    return this.getToken(d.INT, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterWidth(this);
  }
  exitRule(e) {
    e instanceof w && e.exitWidth(this);
  }
};
var v1 = class extends b.ParserRuleContext {
  static {
    __name(this, "v1");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "stat", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(Fi) : this.getTypedRuleContext(Fi, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_block;
  }
  enterRule(n) {
    n instanceof w && n.enterBlock(this);
  }
  exitRule(n) {
    n instanceof w && n.exitBlock(this);
  }
};
var Ta = class extends b.ParserRuleContext {
  static {
    __name(this, "Ta");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_ret;
  }
  RETURN() {
    return this.getToken(d.RETURN, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  SCOL() {
    return this.getToken(d.SCOL, 0);
  }
  ANNOTATION_RET() {
    return this.getToken(d.ANNOTATION_RET, 0);
  }
  asyncMessage() {
    return this.getTypedRuleContext(S1, 0);
  }
  EVENT_END() {
    return this.getToken(d.EVENT_END, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterRet(this);
  }
  exitRule(e) {
    e instanceof w && e.exitRet(this);
  }
};
var Sa = class extends b.ParserRuleContext {
  static {
    __name(this, "Sa");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_divider;
  }
  dividerNote() {
    return this.getTypedRuleContext(Aa, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterDivider(this);
  }
  exitRule(e) {
    e instanceof w && e.exitDivider(this);
  }
};
var Aa = class extends b.ParserRuleContext {
  static {
    __name(this, "Aa");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_dividerNote;
  }
  DIVIDER() {
    return this.getToken(d.DIVIDER, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterDividerNote(this);
  }
  exitRule(e) {
    e instanceof w && e.exitDividerNote(this);
  }
};
var Fi = class extends b.ParserRuleContext {
  static {
    __name(this, "Fi");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_stat, this._OTHER = null;
  }
  alt() {
    return this.getTypedRuleContext(Va, 0);
  }
  par() {
    return this.getTypedRuleContext(Ra, 0);
  }
  opt() {
    return this.getTypedRuleContext(ka, 0);
  }
  loop() {
    return this.getTypedRuleContext(ja, 0);
  }
  creation() {
    return this.getTypedRuleContext(b1, 0);
  }
  message() {
    return this.getTypedRuleContext(Ia, 0);
  }
  asyncMessage() {
    return this.getTypedRuleContext(S1, 0);
  }
  EVENT_END() {
    return this.getToken(d.EVENT_END, 0);
  }
  ret() {
    return this.getTypedRuleContext(Ta, 0);
  }
  divider() {
    return this.getTypedRuleContext(Sa, 0);
  }
  tcf() {
    return this.getTypedRuleContext($a, 0);
  }
  OTHER() {
    return this.getToken(d.OTHER, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterStat(this);
  }
  exitRule(e) {
    e instanceof w && e.exitStat(this);
  }
};
var Ra = class extends b.ParserRuleContext {
  static {
    __name(this, "Ra");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_par;
  }
  PAR() {
    return this.getToken(d.PAR, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterPar(this);
  }
  exitRule(e) {
    e instanceof w && e.exitPar(this);
  }
};
var ka = class extends b.ParserRuleContext {
  static {
    __name(this, "ka");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_opt;
  }
  OPT() {
    return this.getToken(d.OPT, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterOpt(this);
  }
  exitRule(e) {
    e instanceof w && e.exitOpt(this);
  }
};
var b1 = class extends b.ParserRuleContext {
  static {
    __name(this, "b1");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_creation;
  }
  creationBody() {
    return this.getTypedRuleContext(Oa, 0);
  }
  SCOL() {
    return this.getToken(d.SCOL, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterCreation(this);
  }
  exitRule(e) {
    e instanceof w && e.exitCreation(this);
  }
};
var Oa = class extends b.ParserRuleContext {
  static {
    __name(this, "Oa");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_creationBody;
  }
  NEW() {
    return this.getToken(d.NEW, 0);
  }
  construct() {
    return this.getTypedRuleContext(Pa, 0);
  }
  assignment() {
    return this.getTypedRuleContext(B0, 0);
  }
  OPAR() {
    return this.getToken(d.OPAR, 0);
  }
  CPAR() {
    return this.getToken(d.CPAR, 0);
  }
  parameters() {
    return this.getTypedRuleContext(R1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterCreationBody(this);
  }
  exitRule(e) {
    e instanceof w && e.exitCreationBody(this);
  }
};
var Ia = class extends b.ParserRuleContext {
  static {
    __name(this, "Ia");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_message;
  }
  messageBody() {
    return this.getTypedRuleContext(Ma, 0);
  }
  SCOL() {
    return this.getToken(d.SCOL, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterMessage(this);
  }
  exitRule(e) {
    e instanceof w && e.exitMessage(this);
  }
};
var Ma = class extends b.ParserRuleContext {
  static {
    __name(this, "Ma");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_messageBody;
  }
  func() {
    return this.getTypedRuleContext(w1, 0);
  }
  assignment() {
    return this.getTypedRuleContext(B0, 0);
  }
  to() {
    return this.getTypedRuleContext(D0, 0);
  }
  DOT() {
    return this.getToken(d.DOT, 0);
  }
  from() {
    return this.getTypedRuleContext(E1, 0);
  }
  ARROW() {
    return this.getToken(d.ARROW, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterMessageBody(this);
  }
  exitRule(e) {
    e instanceof w && e.exitMessageBody(this);
  }
};
var w1 = class extends b.ParserRuleContext {
  static {
    __name(this, "w1");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "signature", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(Di) : this.getTypedRuleContext(Di, n10);
    });
    Z(this, "DOT", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTokens(d.DOT) : this.getToken(d.DOT, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_func;
  }
  enterRule(n) {
    n instanceof w && n.enterFunc(this);
  }
  exitRule(n) {
    n instanceof w && n.exitFunc(this);
  }
};
var E1 = class extends b.ParserRuleContext {
  static {
    __name(this, "E1");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_from;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterFrom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitFrom(this);
  }
};
var D0 = class extends b.ParserRuleContext {
  static {
    __name(this, "D0");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_to;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterTo(this);
  }
  exitRule(e) {
    e instanceof w && e.exitTo(this);
  }
};
var Di = class extends b.ParserRuleContext {
  static {
    __name(this, "Di");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_signature;
  }
  methodName() {
    return this.getTypedRuleContext(Da, 0);
  }
  invocation() {
    return this.getTypedRuleContext(T1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterSignature(this);
  }
  exitRule(e) {
    e instanceof w && e.exitSignature(this);
  }
};
var T1 = class extends b.ParserRuleContext {
  static {
    __name(this, "T1");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_invocation;
  }
  OPAR() {
    return this.getToken(d.OPAR, 0);
  }
  CPAR() {
    return this.getToken(d.CPAR, 0);
  }
  parameters() {
    return this.getTypedRuleContext(R1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterInvocation(this);
  }
  exitRule(e) {
    e instanceof w && e.exitInvocation(this);
  }
};
var B0 = class extends b.ParserRuleContext {
  static {
    __name(this, "B0");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_assignment;
  }
  assignee() {
    return this.getTypedRuleContext(Fa, 0);
  }
  ASSIGN() {
    return this.getToken(d.ASSIGN, 0);
  }
  type() {
    return this.getTypedRuleContext(A1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterAssignment(this);
  }
  exitRule(e) {
    e instanceof w && e.exitAssignment(this);
  }
};
var S1 = class extends b.ParserRuleContext {
  static {
    __name(this, "S1");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_asyncMessage;
  }
  to() {
    return this.getTypedRuleContext(D0, 0);
  }
  COL() {
    return this.getToken(d.COL, 0);
  }
  content() {
    return this.getTypedRuleContext(Na, 0);
  }
  from() {
    return this.getTypedRuleContext(E1, 0);
  }
  ARROW() {
    return this.getToken(d.ARROW, 0);
  }
  MINUS() {
    return this.getToken(d.MINUS, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterAsyncMessage(this);
  }
  exitRule(e) {
    e instanceof w && e.exitAsyncMessage(this);
  }
};
var Na = class extends b.ParserRuleContext {
  static {
    __name(this, "Na");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_content;
  }
  EVENT_PAYLOAD_LXR() {
    return this.getToken(d.EVENT_PAYLOAD_LXR, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterContent(this);
  }
  exitRule(e) {
    e instanceof w && e.exitContent(this);
  }
};
var Pa = class extends b.ParserRuleContext {
  static {
    __name(this, "Pa");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_construct;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterConstruct(this);
  }
  exitRule(e) {
    e instanceof w && e.exitConstruct(this);
  }
};
var A1 = class extends b.ParserRuleContext {
  static {
    __name(this, "A1");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_type;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterType(this);
  }
  exitRule(e) {
    e instanceof w && e.exitType(this);
  }
};
var Fa = class extends b.ParserRuleContext {
  static {
    __name(this, "Fa");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "ID", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTokens(d.ID) : this.getToken(d.ID, n10);
    });
    Z(this, "COMMA", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTokens(d.COMMA) : this.getToken(d.COMMA, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_assignee;
  }
  atom() {
    return this.getTypedRuleContext(Dn, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterAssignee(this);
  }
  exitRule(n) {
    n instanceof w && n.exitAssignee(this);
  }
};
var Da = class extends b.ParserRuleContext {
  static {
    __name(this, "Da");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_methodName;
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterMethodName(this);
  }
  exitRule(e) {
    e instanceof w && e.exitMethodName(this);
  }
};
var R1 = class extends b.ParserRuleContext {
  static {
    __name(this, "R1");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "parameter", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(Bi) : this.getTypedRuleContext(Bi, n10);
    });
    Z(this, "COMMA", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTokens(d.COMMA) : this.getToken(d.COMMA, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_parameters;
  }
  enterRule(n) {
    n instanceof w && n.enterParameters(this);
  }
  exitRule(n) {
    n instanceof w && n.exitParameters(this);
  }
};
var Bi = class extends b.ParserRuleContext {
  static {
    __name(this, "Bi");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_parameter;
  }
  declaration() {
    return this.getTypedRuleContext(Ba, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterParameter(this);
  }
  exitRule(e) {
    e instanceof w && e.exitParameter(this);
  }
};
var Ba = class extends b.ParserRuleContext {
  static {
    __name(this, "Ba");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_declaration;
  }
  type() {
    return this.getTypedRuleContext(A1, 0);
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterDeclaration(this);
  }
  exitRule(e) {
    e instanceof w && e.exitDeclaration(this);
  }
};
var $a = class extends b.ParserRuleContext {
  static {
    __name(this, "$a");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "catchBlock", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts($i) : this.getTypedRuleContext($i, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_tcf;
  }
  tryBlock() {
    return this.getTypedRuleContext(Ha, 0);
  }
  finallyBlock() {
    return this.getTypedRuleContext(Ua, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterTcf(this);
  }
  exitRule(n) {
    n instanceof w && n.exitTcf(this);
  }
};
var Ha = class extends b.ParserRuleContext {
  static {
    __name(this, "Ha");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_tryBlock;
  }
  TRY() {
    return this.getToken(d.TRY, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterTryBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitTryBlock(this);
  }
};
var $i = class extends b.ParserRuleContext {
  static {
    __name(this, "$i");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_catchBlock;
  }
  CATCH() {
    return this.getToken(d.CATCH, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  invocation() {
    return this.getTypedRuleContext(T1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterCatchBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitCatchBlock(this);
  }
};
var Ua = class extends b.ParserRuleContext {
  static {
    __name(this, "Ua");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_finallyBlock;
  }
  FINALLY() {
    return this.getToken(d.FINALLY, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterFinallyBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitFinallyBlock(this);
  }
};
var Va = class extends b.ParserRuleContext {
  static {
    __name(this, "Va");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "elseIfBlock", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(Hi) : this.getTypedRuleContext(Hi, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_alt;
  }
  ifBlock() {
    return this.getTypedRuleContext(za, 0);
  }
  elseBlock() {
    return this.getTypedRuleContext(Ga, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterAlt(this);
  }
  exitRule(n) {
    n instanceof w && n.exitAlt(this);
  }
};
var za = class extends b.ParserRuleContext {
  static {
    __name(this, "za");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_ifBlock;
  }
  IF() {
    return this.getToken(d.IF, 0);
  }
  parExpr() {
    return this.getTypedRuleContext($0, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterIfBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitIfBlock(this);
  }
};
var Hi = class extends b.ParserRuleContext {
  static {
    __name(this, "Hi");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_elseIfBlock;
  }
  ELSE() {
    return this.getToken(d.ELSE, 0);
  }
  IF() {
    return this.getToken(d.IF, 0);
  }
  parExpr() {
    return this.getTypedRuleContext($0, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterElseIfBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitElseIfBlock(this);
  }
};
var Ga = class extends b.ParserRuleContext {
  static {
    __name(this, "Ga");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_elseBlock;
  }
  ELSE() {
    return this.getToken(d.ELSE, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterElseBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitElseBlock(this);
  }
};
var tn = class extends b.ParserRuleContext {
  static {
    __name(this, "tn");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_braceBlock;
  }
  OBRACE() {
    return this.getToken(d.OBRACE, 0);
  }
  CBRACE() {
    return this.getToken(d.CBRACE, 0);
  }
  block() {
    return this.getTypedRuleContext(v1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterBraceBlock(this);
  }
  exitRule(e) {
    e instanceof w && e.exitBraceBlock(this);
  }
};
var ja = class extends b.ParserRuleContext {
  static {
    __name(this, "ja");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_loop;
  }
  WHILE() {
    return this.getToken(d.WHILE, 0);
  }
  parExpr() {
    return this.getTypedRuleContext($0, 0);
  }
  braceBlock() {
    return this.getTypedRuleContext(tn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterLoop(this);
  }
  exitRule(e) {
    e instanceof w && e.exitLoop(this);
  }
};
var ye = class extends b.ParserRuleContext {
  static {
    __name(this, "ye");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_expr;
  }
  copyFrom(e) {
    super.copyFrom(e);
  }
};
var l4 = class extends ye {
  static {
    __name(this, "l4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  assignment() {
    return this.getTypedRuleContext(B0, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterAssignmentExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitAssignmentExpr(this);
  }
};
d.AssignmentExprContext = l4;
var a4 = class extends ye {
  static {
    __name(this, "a4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  func() {
    return this.getTypedRuleContext(w1, 0);
  }
  to() {
    return this.getTypedRuleContext(D0, 0);
  }
  DOT() {
    return this.getToken(d.DOT, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterFuncExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitFuncExpr(this);
  }
};
d.FuncExprContext = a4;
var c4 = class extends ye {
  static {
    __name(this, "c4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  atom() {
    return this.getTypedRuleContext(Dn, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterAtomExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitAtomExpr(this);
  }
};
d.AtomExprContext = c4;
var u4 = class extends ye {
  static {
    __name(this, "u4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    super.copyFrom(r);
  }
  OR() {
    return this.getToken(d.OR, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterOrExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitOrExpr(this);
  }
};
d.OrExprContext = u4;
var h4 = class extends ye {
  static {
    __name(this, "h4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    this.op = null, super.copyFrom(r);
  }
  PLUS() {
    return this.getToken(d.PLUS, 0);
  }
  MINUS() {
    return this.getToken(d.MINUS, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterAdditiveExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitAdditiveExpr(this);
  }
};
d.AdditiveExprContext = h4;
var d4 = class extends ye {
  static {
    __name(this, "d4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    this.op = null, super.copyFrom(r);
  }
  LTEQ() {
    return this.getToken(d.LTEQ, 0);
  }
  GTEQ() {
    return this.getToken(d.GTEQ, 0);
  }
  LT() {
    return this.getToken(d.LT, 0);
  }
  GT() {
    return this.getToken(d.GT, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterRelationalExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitRelationalExpr(this);
  }
};
d.RelationalExprContext = d4;
var f4 = class extends ye {
  static {
    __name(this, "f4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    super.copyFrom(r);
  }
  PLUS() {
    return this.getToken(d.PLUS, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterPlusExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitPlusExpr(this);
  }
};
d.PlusExprContext = f4;
var p4 = class extends ye {
  static {
    __name(this, "p4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  NOT() {
    return this.getToken(d.NOT, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterNotExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitNotExpr(this);
  }
};
d.NotExprContext = p4;
var g4 = class extends ye {
  static {
    __name(this, "g4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  MINUS() {
    return this.getToken(d.MINUS, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterUnaryMinusExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitUnaryMinusExpr(this);
  }
};
d.UnaryMinusExprContext = g4;
var m4 = class extends ye {
  static {
    __name(this, "m4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  creation() {
    return this.getTypedRuleContext(b1, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterCreationExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitCreationExpr(this);
  }
};
d.CreationExprContext = m4;
var x4 = class extends ye {
  static {
    __name(this, "x4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  OPAR() {
    return this.getToken(d.OPAR, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  CPAR() {
    return this.getToken(d.CPAR, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterParenthesizedExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitParenthesizedExpr(this);
  }
};
d.ParenthesizedExprContext = x4;
var L4 = class extends ye {
  static {
    __name(this, "L4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    this.op = null, super.copyFrom(r);
  }
  MULT() {
    return this.getToken(d.MULT, 0);
  }
  DIV() {
    return this.getToken(d.DIV, 0);
  }
  MOD() {
    return this.getToken(d.MOD, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterMultiplicationExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitMultiplicationExpr(this);
  }
};
d.MultiplicationExprContext = L4;
var _4 = class extends ye {
  static {
    __name(this, "_4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    this.op = null, super.copyFrom(r);
  }
  EQ() {
    return this.getToken(d.EQ, 0);
  }
  NEQ() {
    return this.getToken(d.NEQ, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterEqualityExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitEqualityExpr(this);
  }
};
d.EqualityExprContext = _4;
var y4 = class extends ye {
  static {
    __name(this, "y4");
  }
  constructor(n, r) {
    super(n);
    Z(this, "expr", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTypedRuleContexts(ye) : this.getTypedRuleContext(ye, n10);
    });
    super.copyFrom(r);
  }
  AND() {
    return this.getToken(d.AND, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterAndExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitAndExpr(this);
  }
};
d.AndExprContext = y4;
var Dn = class extends b.ParserRuleContext {
  static {
    __name(this, "Dn");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_atom;
  }
  copyFrom(e) {
    super.copyFrom(e);
  }
};
var C4 = class extends Dn {
  static {
    __name(this, "C4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  TRUE() {
    return this.getToken(d.TRUE, 0);
  }
  FALSE() {
    return this.getToken(d.FALSE, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterBooleanAtom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitBooleanAtom(this);
  }
};
d.BooleanAtomContext = C4;
var v4 = class extends Dn {
  static {
    __name(this, "v4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  ID() {
    return this.getToken(d.ID, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterIdAtom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitIdAtom(this);
  }
};
d.IdAtomContext = v4;
var b4 = class extends Dn {
  static {
    __name(this, "b4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  STRING() {
    return this.getToken(d.STRING, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterStringAtom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitStringAtom(this);
  }
};
d.StringAtomContext = b4;
var w4 = class extends Dn {
  static {
    __name(this, "w4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  NIL() {
    return this.getToken(d.NIL, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterNilAtom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitNilAtom(this);
  }
};
d.NilAtomContext = w4;
var E4 = class extends Dn {
  static {
    __name(this, "E4");
  }
  constructor(e, n) {
    super(e), super.copyFrom(n);
  }
  INT() {
    return this.getToken(d.INT, 0);
  }
  FLOAT() {
    return this.getToken(d.FLOAT, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterNumberAtom(this);
  }
  exitRule(e) {
    e instanceof w && e.exitNumberAtom(this);
  }
};
d.NumberAtomContext = E4;
var $0 = class extends b.ParserRuleContext {
  static {
    __name(this, "$0");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_parExpr;
  }
  OPAR() {
    return this.getToken(d.OPAR, 0);
  }
  condition() {
    return this.getTypedRuleContext(Za, 0);
  }
  CPAR() {
    return this.getToken(d.CPAR, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterParExpr(this);
  }
  exitRule(e) {
    e instanceof w && e.exitParExpr(this);
  }
};
var Za = class extends b.ParserRuleContext {
  static {
    __name(this, "Za");
  }
  constructor(e, n, r) {
    n === void 0 && (n = null), r == null && (r = -1), super(n, r), this.parser = e, this.ruleIndex = d.RULE_condition;
  }
  atom() {
    return this.getTypedRuleContext(Dn, 0);
  }
  expr() {
    return this.getTypedRuleContext(ye, 0);
  }
  inExpr() {
    return this.getTypedRuleContext(Wa, 0);
  }
  enterRule(e) {
    e instanceof w && e.enterCondition(this);
  }
  exitRule(e) {
    e instanceof w && e.exitCondition(this);
  }
};
var Wa = class extends b.ParserRuleContext {
  static {
    __name(this, "Wa");
  }
  constructor(n, r, s) {
    r === void 0 && (r = null), s == null && (s = -1);
    super(r, s);
    Z(this, "ID", function(n10) {
      return n10 === void 0 && (n10 = null), n10 === null ? this.getTokens(d.ID) : this.getToken(d.ID, n10);
    });
    this.parser = n, this.ruleIndex = d.RULE_inExpr;
  }
  IN() {
    return this.getToken(d.IN, 0);
  }
  enterRule(n) {
    n instanceof w && n.enterInExpr(this);
  }
  exitRule(n) {
    n instanceof w && n.exitInExpr(this);
  }
};
d.ProgContext = o4;
d.TitleContext = La;
d.HeadContext = _a;
d.GroupContext = Pi;
d.StarterExpContext = ya;
d.StarterContext = Ca;
d.ParticipantContext = vs;
d.StereotypeContext = va;
d.LabelContext = ba;
d.ParticipantTypeContext = wa;
d.NameContext = Is;
d.WidthContext = Ea;
d.BlockContext = v1;
d.RetContext = Ta;
d.DividerContext = Sa;
d.DividerNoteContext = Aa;
d.StatContext = Fi;
d.ParContext = Ra;
d.OptContext = ka;
d.CreationContext = b1;
d.CreationBodyContext = Oa;
d.MessageContext = Ia;
d.MessageBodyContext = Ma;
d.FuncContext = w1;
d.FromContext = E1;
d.ToContext = D0;
d.SignatureContext = Di;
d.InvocationContext = T1;
d.AssignmentContext = B0;
d.AsyncMessageContext = S1;
d.ContentContext = Na;
d.ConstructContext = Pa;
d.TypeContext = A1;
d.AssigneeContext = Fa;
d.MethodNameContext = Da;
d.ParametersContext = R1;
d.ParameterContext = Bi;
d.DeclarationContext = Ba;
d.TcfContext = $a;
d.TryBlockContext = Ha;
d.CatchBlockContext = $i;
d.FinallyBlockContext = Ua;
d.AltContext = Va;
d.IfBlockContext = za;
d.ElseIfBlockContext = Hi;
d.ElseBlockContext = Ga;
d.BraceBlockContext = tn;
d.LoopContext = ja;
d.ExprContext = ye;
d.AtomContext = Dn;
d.ParExprContext = $0;
d.ConditionContext = Za;
d.InExprContext = Wa;
function B7() {
  this.__data__ = [], this.size = 0;
}
__name(B7, "B7");
var $7 = B7;
function H7(t, e) {
  return t === e || t !== t && e !== e;
}
__name(H7, "H7");
var k1 = H7;
var U7 = k1;
function V7(t, e) {
  for (var n = t.length; n--; )
    if (U7(t[n][0], e))
      return n;
  return -1;
}
__name(V7, "V7");
var O1 = V7;
var z7 = O1;
var G7 = Array.prototype;
var j7 = G7.splice;
function Z7(t) {
  var e = this.__data__, n = z7(e, t);
  if (n < 0)
    return false;
  var r = e.length - 1;
  return n == r ? e.pop() : j7.call(e, n, 1), --this.size, true;
}
__name(Z7, "Z7");
var W7 = Z7;
var q7 = O1;
function K7(t) {
  var e = this.__data__, n = q7(e, t);
  return n < 0 ? void 0 : e[n][1];
}
__name(K7, "K7");
var Y7 = K7;
var X7 = O1;
function Q7(t) {
  return X7(this.__data__, t) > -1;
}
__name(Q7, "Q7");
var J7 = Q7;
var ep = O1;
function tp(t, e) {
  var n = this.__data__, r = ep(n, t);
  return r < 0 ? (++this.size, n.push([t, e])) : n[r][1] = e, this;
}
__name(tp, "tp");
var np = tp;
var rp = $7;
var sp = W7;
var ip = Y7;
var op = J7;
var lp = np;
function Ms(t) {
  var e = -1, n = t == null ? 0 : t.length;
  for (this.clear(); ++e < n; ) {
    var r = t[e];
    this.set(r[0], r[1]);
  }
}
__name(Ms, "Ms");
Ms.prototype.clear = rp;
Ms.prototype.delete = sp;
Ms.prototype.get = ip;
Ms.prototype.has = op;
Ms.prototype.set = lp;
var I1 = Ms;
var ap = I1;
function cp() {
  this.__data__ = new ap(), this.size = 0;
}
__name(cp, "cp");
var up = cp;
function hp(t) {
  var e = this.__data__, n = e.delete(t);
  return this.size = e.size, n;
}
__name(hp, "hp");
var dp = hp;
function fp(t) {
  return this.__data__.get(t);
}
__name(fp, "fp");
var pp = fp;
function gp(t) {
  return this.__data__.has(t);
}
__name(gp, "gp");
var mp = gp;
var xp = Zr;
var Lp = xp.Symbol;
var T4 = Lp;
var k2 = T4;
var S4 = Object.prototype;
var _p = S4.hasOwnProperty;
var yp = S4.toString;
var Gs = k2 ? k2.toStringTag : void 0;
function Cp(t) {
  var e = _p.call(t, Gs), n = t[Gs];
  try {
    t[Gs] = void 0;
    var r = true;
  } catch {
  }
  var s = yp.call(t);
  return r && (e ? t[Gs] = n : delete t[Gs]), s;
}
__name(Cp, "Cp");
var vp = Cp;
var bp = Object.prototype;
var wp = bp.toString;
function Ep(t) {
  return wp.call(t);
}
__name(Ep, "Ep");
var Tp = Ep;
var O2 = T4;
var Sp = vp;
var Ap = Tp;
var Rp = "[object Null]";
var kp = "[object Undefined]";
var I2 = O2 ? O2.toStringTag : void 0;
function Op(t) {
  return t == null ? t === void 0 ? kp : Rp : I2 && I2 in Object(t) ? Sp(t) : Ap(t);
}
__name(Op, "Op");
var M1 = Op;
function Ip(t) {
  var e = typeof t;
  return t != null && (e == "object" || e == "function");
}
__name(Ip, "Ip");
var Wr = Ip;
var Mp = M1;
var Np = Wr;
var Pp = "[object AsyncFunction]";
var Fp = "[object Function]";
var Dp = "[object GeneratorFunction]";
var Bp = "[object Proxy]";
function $p(t) {
  if (!Np(t))
    return false;
  var e = Mp(t);
  return e == Fp || e == Dp || e == Pp || e == Bp;
}
__name($p, "$p");
var qa = $p;
var Hp = Zr;
var Up = Hp["__core-js_shared__"];
var Vp = Up;
var lo = Vp;
var M2 = function() {
  var t = /[^.]+$/.exec(lo && lo.keys && lo.keys.IE_PROTO || "");
  return t ? "Symbol(src)_1." + t : "";
}();
function zp(t) {
  return !!M2 && M2 in t;
}
__name(zp, "zp");
var Gp = zp;
var jp = Function.prototype;
var Zp = jp.toString;
function Wp(t) {
  if (t != null) {
    try {
      return Zp.call(t);
    } catch {
    }
    try {
      return t + "";
    } catch {
    }
  }
  return "";
}
__name(Wp, "Wp");
var qp = Wp;
var Kp = qa;
var Yp = Gp;
var Xp = Wr;
var Qp = qp;
var Jp = /[\\^$.*+?()[\]{}|]/g;
var eg = /^\[object .+?Constructor\]$/;
var tg = Function.prototype;
var ng = Object.prototype;
var rg = tg.toString;
var sg = ng.hasOwnProperty;
var ig = RegExp(
  "^" + rg.call(sg).replace(Jp, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"
);
function og(t) {
  if (!Xp(t) || Yp(t))
    return false;
  var e = Kp(t) ? ig : eg;
  return e.test(Qp(t));
}
__name(og, "og");
var lg = og;
function ag(t, e) {
  return t == null ? void 0 : t[e];
}
__name(ag, "ag");
var cg = ag;
var ug = lg;
var hg = cg;
function dg(t, e) {
  var n = hg(t, e);
  return ug(n) ? n : void 0;
}
__name(dg, "dg");
var Ka = dg;
var fg = Ka;
var pg = Zr;
var gg = fg(pg, "Map");
var A4 = gg;
var mg = Ka;
var xg = mg(Object, "create");
var N1 = xg;
var N2 = N1;
function Lg() {
  this.__data__ = N2 ? N2(null) : {}, this.size = 0;
}
__name(Lg, "Lg");
var _g = Lg;
function yg(t) {
  var e = this.has(t) && delete this.__data__[t];
  return this.size -= e ? 1 : 0, e;
}
__name(yg, "yg");
var Cg = yg;
var vg = N1;
var bg = "__lodash_hash_undefined__";
var wg = Object.prototype;
var Eg = wg.hasOwnProperty;
function Tg(t) {
  var e = this.__data__;
  if (vg) {
    var n = e[t];
    return n === bg ? void 0 : n;
  }
  return Eg.call(e, t) ? e[t] : void 0;
}
__name(Tg, "Tg");
var Sg = Tg;
var Ag = N1;
var Rg = Object.prototype;
var kg = Rg.hasOwnProperty;
function Og(t) {
  var e = this.__data__;
  return Ag ? e[t] !== void 0 : kg.call(e, t);
}
__name(Og, "Og");
var Ig = Og;
var Mg = N1;
var Ng = "__lodash_hash_undefined__";
function Pg(t, e) {
  var n = this.__data__;
  return this.size += this.has(t) ? 0 : 1, n[t] = Mg && e === void 0 ? Ng : e, this;
}
__name(Pg, "Pg");
var Fg = Pg;
var Dg = _g;
var Bg = Cg;
var $g = Sg;
var Hg = Ig;
var Ug = Fg;
function Ns(t) {
  var e = -1, n = t == null ? 0 : t.length;
  for (this.clear(); ++e < n; ) {
    var r = t[e];
    this.set(r[0], r[1]);
  }
}
__name(Ns, "Ns");
Ns.prototype.clear = Dg;
Ns.prototype.delete = Bg;
Ns.prototype.get = $g;
Ns.prototype.has = Hg;
Ns.prototype.set = Ug;
var Vg = Ns;
var P2 = Vg;
var zg = I1;
var Gg = A4;
function jg() {
  this.size = 0, this.__data__ = {
    hash: new P2(),
    map: new (Gg || zg)(),
    string: new P2()
  };
}
__name(jg, "jg");
var Zg = jg;
function Wg(t) {
  var e = typeof t;
  return e == "string" || e == "number" || e == "symbol" || e == "boolean" ? t !== "__proto__" : t === null;
}
__name(Wg, "Wg");
var qg = Wg;
var Kg = qg;
function Yg(t, e) {
  var n = t.__data__;
  return Kg(e) ? n[typeof e == "string" ? "string" : "hash"] : n.map;
}
__name(Yg, "Yg");
var P1 = Yg;
var Xg = P1;
function Qg(t) {
  var e = Xg(this, t).delete(t);
  return this.size -= e ? 1 : 0, e;
}
__name(Qg, "Qg");
var Jg = Qg;
var em = P1;
function tm(t) {
  return em(this, t).get(t);
}
__name(tm, "tm");
var nm = tm;
var rm = P1;
function sm(t) {
  return rm(this, t).has(t);
}
__name(sm, "sm");
var im = sm;
var om = P1;
function lm(t, e) {
  var n = om(this, t), r = n.size;
  return n.set(t, e), this.size += n.size == r ? 0 : 1, this;
}
__name(lm, "lm");
var am = lm;
var cm = Zg;
var um = Jg;
var hm = nm;
var dm = im;
var fm = am;
function Ps(t) {
  var e = -1, n = t == null ? 0 : t.length;
  for (this.clear(); ++e < n; ) {
    var r = t[e];
    this.set(r[0], r[1]);
  }
}
__name(Ps, "Ps");
Ps.prototype.clear = cm;
Ps.prototype.delete = um;
Ps.prototype.get = hm;
Ps.prototype.has = dm;
Ps.prototype.set = fm;
var pm = Ps;
var gm = I1;
var mm = A4;
var xm = pm;
var Lm = 200;
function _m(t, e) {
  var n = this.__data__;
  if (n instanceof gm) {
    var r = n.__data__;
    if (!mm || r.length < Lm - 1)
      return r.push([t, e]), this.size = ++n.size, this;
    n = this.__data__ = new xm(r);
  }
  return n.set(t, e), this.size = n.size, this;
}
__name(_m, "_m");
var ym = _m;
var Cm = I1;
var vm = up;
var bm = dp;
var wm = pp;
var Em = mp;
var Tm = ym;
function Fs(t) {
  var e = this.__data__ = new Cm(t);
  this.size = e.size;
}
__name(Fs, "Fs");
Fs.prototype.clear = vm;
Fs.prototype.delete = bm;
Fs.prototype.get = wm;
Fs.prototype.has = Em;
Fs.prototype.set = Tm;
var Sm = Fs;
var Am = Ka;
var Rm = function() {
  try {
    var t = Am(Object, "defineProperty");
    return t({}, "", {}), t;
  } catch {
  }
}();
var R4 = Rm;
var F2 = R4;
function km(t, e, n) {
  e == "__proto__" && F2 ? F2(t, e, {
    configurable: true,
    enumerable: true,
    value: n,
    writable: true
  }) : t[e] = n;
}
__name(km, "km");
var Ya = km;
var Om = Ya;
var Im = k1;
function Mm(t, e, n) {
  (n !== void 0 && !Im(t[e], n) || n === void 0 && !(e in t)) && Om(t, e, n);
}
__name(Mm, "Mm");
var k4 = Mm;
function Nm(t) {
  return function(e, n, r) {
    for (var s = -1, i = Object(e), o = r(e), l = o.length; l--; ) {
      var a = o[t ? l : ++s];
      if (n(i[a], a, i) === false)
        break;
    }
    return e;
  };
}
__name(Nm, "Nm");
var Pm = Nm;
var Fm = Pm;
var Dm = Fm();
var Bm = Dm;
var Jo = { exports: {} };
(function(t, e) {
  var n = Zr, r = e && !e.nodeType && e, s = r && true && t && !t.nodeType && t, i = s && s.exports === r, o = i ? n.Buffer : void 0, l = o ? o.allocUnsafe : void 0;
  function a(c, u) {
    if (u)
      return c.slice();
    var h = c.length, f = l ? l(h) : new c.constructor(h);
    return c.copy(f), f;
  }
  __name(a, "a");
  t.exports = a;
})(Jo, Jo.exports);
var $m = Zr;
var Hm = $m.Uint8Array;
var Um = Hm;
var D2 = Um;
function Vm(t) {
  var e = new t.constructor(t.byteLength);
  return new D2(e).set(new D2(t)), e;
}
__name(Vm, "Vm");
var zm = Vm;
var Gm = zm;
function jm(t, e) {
  var n = e ? Gm(t.buffer) : t.buffer;
  return new t.constructor(n, t.byteOffset, t.length);
}
__name(jm, "jm");
var Zm = jm;
function Wm(t, e) {
  var n = -1, r = t.length;
  for (e || (e = Array(r)); ++n < r; )
    e[n] = t[n];
  return e;
}
__name(Wm, "Wm");
var qm = Wm;
var Km = Wr;
var B2 = Object.create;
var Ym = /* @__PURE__ */ function() {
  function t() {
  }
  __name(t, "t");
  return function(e) {
    if (!Km(e))
      return {};
    if (B2)
      return B2(e);
    t.prototype = e;
    var n = new t();
    return t.prototype = void 0, n;
  };
}();
var Xm = Ym;
function Qm(t, e) {
  return function(n) {
    return t(e(n));
  };
}
__name(Qm, "Qm");
var Jm = Qm;
var ex = Jm;
var tx = ex(Object.getPrototypeOf, Object);
var O4 = tx;
var nx = Object.prototype;
function rx(t) {
  var e = t && t.constructor, n = typeof e == "function" && e.prototype || nx;
  return t === n;
}
__name(rx, "rx");
var I4 = rx;
var sx = Xm;
var ix = O4;
var ox = I4;
function lx(t) {
  return typeof t.constructor == "function" && !ox(t) ? sx(ix(t)) : {};
}
__name(lx, "lx");
var ax = lx;
function cx(t) {
  return t != null && typeof t == "object";
}
__name(cx, "cx");
var H0 = cx;
var ux = M1;
var hx = H0;
var dx = "[object Arguments]";
function fx(t) {
  return hx(t) && ux(t) == dx;
}
__name(fx, "fx");
var px = fx;
var $2 = px;
var gx = H0;
var M4 = Object.prototype;
var mx = M4.hasOwnProperty;
var xx = M4.propertyIsEnumerable;
var Lx = $2(/* @__PURE__ */ function() {
  return arguments;
}()) ? $2 : function(t) {
  return gx(t) && mx.call(t, "callee") && !xx.call(t, "callee");
};
var N4 = Lx;
var _x = Array.isArray;
var P4 = _x;
var yx = 9007199254740991;
function Cx(t) {
  return typeof t == "number" && t > -1 && t % 1 == 0 && t <= yx;
}
__name(Cx, "Cx");
var F4 = Cx;
var vx = qa;
var bx = F4;
function wx(t) {
  return t != null && bx(t.length) && !vx(t);
}
__name(wx, "wx");
var Xa = wx;
var Ex = Xa;
var Tx = H0;
function Sx(t) {
  return Tx(t) && Ex(t);
}
__name(Sx, "Sx");
var Ax = Sx;
var Ui = { exports: {} };
function Rx() {
  return false;
}
__name(Rx, "Rx");
var kx = Rx;
(function(t, e) {
  var n = Zr, r = kx, s = e && !e.nodeType && e, i = s && true && t && !t.nodeType && t, o = i && i.exports === s, l = o ? n.Buffer : void 0, a = l ? l.isBuffer : void 0, c = a || r;
  t.exports = c;
})(Ui, Ui.exports);
var Ox = M1;
var Ix = O4;
var Mx = H0;
var Nx = "[object Object]";
var Px = Function.prototype;
var Fx = Object.prototype;
var D4 = Px.toString;
var Dx = Fx.hasOwnProperty;
var Bx = D4.call(Object);
function $x(t) {
  if (!Mx(t) || Ox(t) != Nx)
    return false;
  var e = Ix(t);
  if (e === null)
    return true;
  var n = Dx.call(e, "constructor") && e.constructor;
  return typeof n == "function" && n instanceof n && D4.call(n) == Bx;
}
__name($x, "$x");
var Hx = $x;
var Ux = M1;
var Vx = F4;
var zx = H0;
var Gx = "[object Arguments]";
var jx = "[object Array]";
var Zx = "[object Boolean]";
var Wx = "[object Date]";
var qx = "[object Error]";
var Kx = "[object Function]";
var Yx = "[object Map]";
var Xx = "[object Number]";
var Qx = "[object Object]";
var Jx = "[object RegExp]";
var eL = "[object Set]";
var tL = "[object String]";
var nL = "[object WeakMap]";
var rL = "[object ArrayBuffer]";
var sL = "[object DataView]";
var iL = "[object Float32Array]";
var oL = "[object Float64Array]";
var lL = "[object Int8Array]";
var aL = "[object Int16Array]";
var cL = "[object Int32Array]";
var uL = "[object Uint8Array]";
var hL = "[object Uint8ClampedArray]";
var dL = "[object Uint16Array]";
var fL = "[object Uint32Array]";
var qe = {};
qe[iL] = qe[oL] = qe[lL] = qe[aL] = qe[cL] = qe[uL] = qe[hL] = qe[dL] = qe[fL] = true;
qe[Gx] = qe[jx] = qe[rL] = qe[Zx] = qe[sL] = qe[Wx] = qe[qx] = qe[Kx] = qe[Yx] = qe[Xx] = qe[Qx] = qe[Jx] = qe[eL] = qe[tL] = qe[nL] = false;
function pL(t) {
  return zx(t) && Vx(t.length) && !!qe[Ux(t)];
}
__name(pL, "pL");
var gL = pL;
function mL(t) {
  return function(e) {
    return t(e);
  };
}
__name(mL, "mL");
var xL = mL;
var el = { exports: {} };
(function(t, e) {
  var n = z5, r = e && !e.nodeType && e, s = r && true && t && !t.nodeType && t, i = s && s.exports === r, o = i && n.process, l = function() {
    try {
      var a = s && s.require && s.require("util").types;
      return a || o && o.binding && o.binding("util");
    } catch {
    }
  }();
  t.exports = l;
})(el, el.exports);
var LL = gL;
var _L = xL;
var H2 = el.exports;
var U2 = H2 && H2.isTypedArray;
var yL = U2 ? _L(U2) : LL;
var B4 = yL;
function CL(t, e) {
  if (!(e === "constructor" && typeof t[e] == "function") && e != "__proto__")
    return t[e];
}
__name(CL, "CL");
var $4 = CL;
var vL = Ya;
var bL = k1;
var wL = Object.prototype;
var EL = wL.hasOwnProperty;
function TL(t, e, n) {
  var r = t[e];
  (!(EL.call(t, e) && bL(r, n)) || n === void 0 && !(e in t)) && vL(t, e, n);
}
__name(TL, "TL");
var SL = TL;
var AL = SL;
var RL = Ya;
function kL(t, e, n, r) {
  var s = !n;
  n || (n = {});
  for (var i = -1, o = e.length; ++i < o; ) {
    var l = e[i], a = r ? r(n[l], t[l], l, n, t) : void 0;
    a === void 0 && (a = t[l]), s ? RL(n, l, a) : AL(n, l, a);
  }
  return n;
}
__name(kL, "kL");
var OL = kL;
function IL(t, e) {
  for (var n = -1, r = Array(t); ++n < t; )
    r[n] = e(n);
  return r;
}
__name(IL, "IL");
var ML = IL;
var NL = 9007199254740991;
var PL = /^(?:0|[1-9]\d*)$/;
function FL(t, e) {
  var n = typeof t;
  return e = e == null ? NL : e, !!e && (n == "number" || n != "symbol" && PL.test(t)) && t > -1 && t % 1 == 0 && t < e;
}
__name(FL, "FL");
var H4 = FL;
var DL = ML;
var BL = N4;
var $L = P4;
var HL = Ui.exports;
var UL = H4;
var VL = B4;
var zL = Object.prototype;
var GL = zL.hasOwnProperty;
function jL(t, e) {
  var n = $L(t), r = !n && BL(t), s = !n && !r && HL(t), i = !n && !r && !s && VL(t), o = n || r || s || i, l = o ? DL(t.length, String) : [], a = l.length;
  for (var c in t)
    (e || GL.call(t, c)) && !(o && (c == "length" || s && (c == "offset" || c == "parent") || i && (c == "buffer" || c == "byteLength" || c == "byteOffset") || UL(c, a))) && l.push(c);
  return l;
}
__name(jL, "jL");
var ZL = jL;
function WL(t) {
  var e = [];
  if (t != null)
    for (var n in Object(t))
      e.push(n);
  return e;
}
__name(WL, "WL");
var qL = WL;
var KL = Wr;
var YL = I4;
var XL = qL;
var QL = Object.prototype;
var JL = QL.hasOwnProperty;
function e_(t) {
  if (!KL(t))
    return XL(t);
  var e = YL(t), n = [];
  for (var r in t)
    r == "constructor" && (e || !JL.call(t, r)) || n.push(r);
  return n;
}
__name(e_, "e_");
var t_ = e_;
var n_ = ZL;
var r_ = t_;
var s_ = Xa;
function i_(t) {
  return s_(t) ? n_(t, true) : r_(t);
}
__name(i_, "i_");
var U4 = i_;
var o_ = OL;
var l_ = U4;
function a_(t) {
  return o_(t, l_(t));
}
__name(a_, "a_");
var c_ = a_;
var V2 = k4;
var u_ = Jo.exports;
var h_ = Zm;
var d_ = qm;
var f_ = ax;
var z2 = N4;
var G2 = P4;
var p_ = Ax;
var g_ = Ui.exports;
var m_ = qa;
var x_ = Wr;
var L_ = Hx;
var __ = B4;
var j2 = $4;
var y_ = c_;
function C_(t, e, n, r, s, i, o) {
  var l = j2(t, n), a = j2(e, n), c = o.get(a);
  if (c) {
    V2(t, n, c);
    return;
  }
  var u = i ? i(l, a, n + "", t, e, o) : void 0, h = u === void 0;
  if (h) {
    var f = G2(a), p = !f && g_(a), x = !f && !p && __(a);
    u = a, f || p || x ? G2(l) ? u = l : p_(l) ? u = d_(l) : p ? (h = false, u = u_(a, true)) : x ? (h = false, u = h_(a, true)) : u = [] : L_(a) || z2(a) ? (u = l, z2(l) ? u = y_(l) : (!x_(l) || m_(l)) && (u = f_(a))) : h = false;
  }
  h && (o.set(a, u), s(u, a, r, i, o), o.delete(a)), V2(t, n, u);
}
__name(C_, "C_");
var v_ = C_;
var b_ = Sm;
var w_ = k4;
var E_ = Bm;
var T_ = v_;
var S_ = Wr;
var A_ = U4;
var R_ = $4;
function V4(t, e, n, r, s) {
  t !== e && E_(e, function(i, o) {
    if (s || (s = new b_()), S_(i))
      T_(t, e, o, n, V4, r, s);
    else {
      var l = r ? r(R_(t, o), i, o + "", t, e, s) : void 0;
      l === void 0 && (l = i), w_(t, o, l);
    }
  }, A_);
}
__name(V4, "V4");
var k_ = V4;
function O_(t) {
  return t;
}
__name(O_, "O_");
var z4 = O_;
function I_(t, e, n) {
  switch (n.length) {
    case 0:
      return t.call(e);
    case 1:
      return t.call(e, n[0]);
    case 2:
      return t.call(e, n[0], n[1]);
    case 3:
      return t.call(e, n[0], n[1], n[2]);
  }
  return t.apply(e, n);
}
__name(I_, "I_");
var M_ = I_;
var N_ = M_;
var Z2 = Math.max;
function P_(t, e, n) {
  return e = Z2(e === void 0 ? t.length - 1 : e, 0), function() {
    for (var r = arguments, s = -1, i = Z2(r.length - e, 0), o = Array(i); ++s < i; )
      o[s] = r[e + s];
    s = -1;
    for (var l = Array(e + 1); ++s < e; )
      l[s] = r[s];
    return l[e] = n(o), N_(t, this, l);
  };
}
__name(P_, "P_");
var F_ = P_;
function D_(t) {
  return function() {
    return t;
  };
}
__name(D_, "D_");
var B_ = D_;
var $_ = B_;
var W2 = R4;
var H_ = z4;
var U_ = W2 ? function(t, e) {
  return W2(t, "toString", {
    configurable: true,
    enumerable: false,
    value: $_(e),
    writable: true
  });
} : H_;
var V_ = U_;
var z_ = 800;
var G_ = 16;
var j_ = Date.now;
function Z_(t) {
  var e = 0, n = 0;
  return function() {
    var r = j_(), s = G_ - (r - n);
    if (n = r, s > 0) {
      if (++e >= z_)
        return arguments[0];
    } else
      e = 0;
    return t.apply(void 0, arguments);
  };
}
__name(Z_, "Z_");
var W_ = Z_;
var q_ = V_;
var K_ = W_;
var Y_ = K_(q_);
var X_ = Y_;
var Q_ = z4;
var J_ = F_;
var ey = X_;
function ty(t, e) {
  return ey(J_(t, e, Q_), t + "");
}
__name(ty, "ty");
var ny = ty;
var ry = k1;
var sy = Xa;
var iy = H4;
var oy = Wr;
function ly(t, e, n) {
  if (!oy(n))
    return false;
  var r = typeof e;
  return (r == "number" ? sy(n) && iy(e, n.length) : r == "string" && e in n) ? ry(n[e], t) : false;
}
__name(ly, "ly");
var ay = ly;
var cy = ny;
var uy = ay;
function hy(t) {
  return cy(function(e, n) {
    var r = -1, s = n.length, i = s > 1 ? n[s - 1] : void 0, o = s > 2 ? n[2] : void 0;
    for (i = t.length > 3 && typeof i == "function" ? (s--, i) : void 0, o && uy(n[0], n[1], o) && (i = s < 3 ? void 0 : i, s = 1), e = Object(e); ++r < s; ) {
      var l = n[r];
      l && t(e, l, r, i);
    }
    return e;
  });
}
__name(hy, "hy");
var dy = hy;
var fy = k_;
var py = dy;
var gy = py(function(t, e, n, r) {
  fy(t, e, n, r);
});
var my = gy;
var xy = class {
  static {
    __name(this, "xy");
  }
  constructor(e, n, r, s, i, o, l, a, c, u) {
    Z(this, "name");
    Z(this, "stereotype");
    Z(this, "width");
    Z(this, "groupId");
    Z(this, "explicit");
    Z(this, "isStarter");
    Z(this, "label");
    Z(this, "type");
    Z(this, "color");
    Z(this, "comment");
    this.name = e, this.stereotype = r, this.width = s, this.groupId = i, this.explicit = l, this.isStarter = n, this.label = o, this.type = a, this.color = c, this.comment = u;
  }
  Type() {
    var e;
    switch ((e = this.type) == null ? void 0 : e.toLowerCase()) {
      case "@actor":
        return 1;
      case "@boundary":
        return 2;
      case "@collection":
        return 3;
      case "@control":
        return 4;
      case "@database":
        return 5;
      case "@entity":
        return 6;
      case "@queue":
        return 7;
      case "@ec2":
        return 8;
      case "@ecs":
        return 9;
      case "@iam":
        return 10;
      case "@lambda":
        return 11;
      case "@rds":
        return 12;
      case "@s3":
        return 13;
    }
    return 14;
  }
};
var Ly = class {
  static {
    __name(this, "Ly");
  }
  constructor() {
    Z(this, "participants", /* @__PURE__ */ new Map());
  }
  Add(e, n, r, s, i, o, l, a, c, u) {
    const h = new xy(
      e,
      n,
      r,
      s,
      i,
      o,
      l,
      a,
      c,
      u
    );
    this.participants.set(
      e,
      my({}, this.Get(e), h, (f, p) => f || p)
    );
  }
  ImplicitArray() {
    return this.Array().filter((e) => !e.explicit && !e.isStarter);
  }
  Array() {
    return Array.from(this.participants.entries()).map((e) => e[1]);
  }
  Names() {
    return Array.from(this.participants.keys());
  }
  First() {
    return this.participants.values().next().value;
  }
  Get(e) {
    return this.participants.get(e);
  }
  Size() {
    return this.participants.size;
  }
  Starter() {
    const e = this.First();
    return e.isStarter ? e : void 0;
  }
};
var _y = d;
var yy = _y.ProgContext;
var zn;
var qr = false;
var Qa;
var zt = new w();
var Cy = /* @__PURE__ */ __name(function(t) {
  var c, u, h, f, p, x, y;
  if (qr)
    return;
  const e = (c = t == null ? void 0 : t.participantType()) == null ? void 0 : c.getFormattedText().replace("@", ""), n = ((u = t == null ? void 0 : t.name()) == null ? void 0 : u.getFormattedText()) || "Missing `Participant`", r = (f = (h = t.stereotype()) == null ? void 0 : h.name()) == null ? void 0 : f.getFormattedText(), s = t.width && t.width() && Number.parseInt(t.width().getText()) || void 0, i = t.label && ((x = (p = t.label()) == null ? void 0 : p.name()) == null ? void 0 : x.getFormattedText()), o = true, l = (y = t.COLOR()) == null ? void 0 : y.getText(), a = t.getComment();
  zn.Add(
    n,
    false,
    r,
    s,
    Qa,
    i,
    o,
    e,
    l,
    a
  );
}, "Cy");
zt.enterParticipant = Cy;
var G4 = /* @__PURE__ */ __name(function(t) {
  if (qr)
    return;
  let e = t.getFormattedText();
  zn.Add(e);
}, "G4");
zt.enterFrom = G4;
zt.enterTo = G4;
zt.enterStarter = function(t) {
  let e = t.getFormattedText();
  zn.Add(e, true);
};
zt.enterCreation = function(t) {
  if (qr)
    return;
  const e = t.Owner();
  zn.Add(e);
};
zt.enterParameters = function() {
  qr = true;
};
zt.exitParameters = function() {
  qr = false;
};
zt.enterCondition = function() {
  qr = true;
};
zt.exitCondition = function() {
  qr = false;
};
zt.enterGroup = function(t) {
  var e;
  Qa = (e = t.name()) == null ? void 0 : e.getFormattedText();
};
zt.exitGroup = function() {
  Qa = void 0;
};
zt.enterRet = function(t) {
  t.asyncMessage() || (zn.Add(t.From()), zn.Add(t.ReturnTo()));
};
var vy = b.tree.ParseTreeWalker.DEFAULT;
zt.getParticipants = function(t, e) {
  return zn = new Ly(), e && t instanceof yy && zn.Add(t.Starter(), true), vy.walk(this, t), zn;
};
var by = b.tree.ParseTreeWalker.DEFAULT;
var gn = new w();
var bt = 0;
var un = 0;
gn.enterTcf = function() {
  bt++;
};
gn.enterOpt = function() {
  bt++;
};
gn.enterPar = function() {
  bt++;
};
gn.enterAlt = function() {
  bt++;
};
gn.enterLoop = function() {
  bt++;
};
gn.exitTcf = function() {
  un = Math.max(un, bt), bt--;
};
gn.exitOpt = function() {
  un = Math.max(un, bt), bt--;
};
gn.exitPar = function() {
  un = Math.max(un, bt), bt--;
};
gn.exitAlt = function() {
  un = Math.max(un, bt), bt--;
};
gn.exitLoop = function() {
  un = Math.max(un, bt), bt--;
};
gn.depth = function(t) {
  return function(e) {
    return bt = 0, un = 0, e.children.map(function(n) {
      by.walk(t, n);
    }), un;
  };
};
var wy = d;
var Ey = wy.TitleContext;
Ey.prototype.content = function() {
  return this.children.length < 2 ? "" : this.children[1].getText().trim();
};
var j4 = d;
var tl = j4.CreationContext;
tl.prototype.Body = tl.prototype.creationBody;
tl.prototype.isCurrent = function(t) {
  return Z4.bind(this)(t);
};
var nl = j4.MessageContext;
nl.prototype.Body = nl.prototype.messageBody;
nl.prototype.isCurrent = function(t) {
  return Z4.bind(this)(t);
};
function Z4(t) {
  try {
    if (t == null)
      return false;
    const e = this.start.start, n = this.Body().stop.stop + 1;
    return t >= e && t <= n;
  } catch {
    return false;
  }
}
__name(Z4, "Z4");
var Ja = d;
var F1 = Ja.CreationContext;
var ec = Ja.MessageContext;
var W4 = Ja.AsyncMessageContext;
F1.prototype.Assignee = function() {
  var t, e, n;
  return (n = (e = (t = this.creationBody()) == null ? void 0 : t.assignment()) == null ? void 0 : e.assignee()) == null ? void 0 : n.getFormattedText();
};
F1.prototype.Constructor = function() {
  var t, e;
  return (e = (t = this.creationBody()) == null ? void 0 : t.construct()) == null ? void 0 : e.getFormattedText();
};
F1.prototype.Owner = function() {
  if (!this.Constructor())
    return "Missing Constructor";
  const t = this.Assignee(), e = this.Constructor();
  return t ? `${t}:${e}` : e;
};
ec.prototype.To = function() {
  var t, e;
  return (e = (t = this.messageBody()) == null ? void 0 : t.to()) == null ? void 0 : e.getFormattedText();
};
ec.prototype.Owner = function() {
  return this.To() || q4(this.parentCtx);
};
function q4(t) {
  for (; t; ) {
    if (t instanceof F1 || t instanceof ec)
      return t.Owner();
    t = t.parentCtx;
  }
}
__name(q4, "q4");
W4.prototype.To = function() {
  var t;
  return (t = this.to()) == null ? void 0 : t.getFormattedText();
};
W4.prototype.Owner = function() {
  return this.To() || q4(this.parentCtx);
};
var Ty = d.ProgContext;
Ty.prototype.Starter = function() {
  var i, o, l, a, c, u, h, f, p, x, y, A;
  const t = (l = (o = (i = this.head()) == null ? void 0 : i.starterExp()) == null ? void 0 : o.starter()) == null ? void 0 : l.getFormattedText();
  let e, n, r;
  const s = (a = this.block()) == null ? void 0 : a.stat();
  if (s && s[0]) {
    const _ = (h = (u = (c = s[0].message()) == null ? void 0 : c.messageBody()) == null ? void 0 : u.from()) == null ? void 0 : h.getFormattedText(), m = (p = (f = s[0].asyncMessage()) == null ? void 0 : f.from()) == null ? void 0 : p.getFormattedText();
    e = _ || m;
  } else {
    const _ = (x = this.head()) == null ? void 0 : x.children;
    if (_ && _[0]) {
      const m = _[0];
      if (m instanceof d.ParticipantContext && (n = (y = m.name()) == null ? void 0 : y.getFormattedText()), m instanceof d.GroupContext) {
        const C = m.participant();
        C && C[0] && (r = (A = C[0].name()) == null ? void 0 : A.getFormattedText());
      }
    }
  }
  return t || e || n || r || "_STARTER_";
};
var D1 = d;
var Sy = D1.RetContext;
var q2 = D1.ProgContext;
var K2 = D1.MessageContext;
var Ay = D1.CreationContext;
Sy.prototype.ReturnTo = function() {
  var r, s;
  const n = this.parentCtx.parentCtx.parentCtx;
  if (n instanceof q2)
    return n.Starter();
  {
    let i = n;
    for (; i && !(i instanceof K2) && !(i instanceof Ay); ) {
      if (i instanceof q2)
        return i.Starter();
      i = i.parentCtx;
    }
    return i instanceof K2 && ((s = (r = i.messageBody()) == null ? void 0 : r.from()) == null ? void 0 : s.getFormattedText()) || i.ClosestAncestorStat().Origin();
  }
};
var Ry = b.ParserRuleContext;
var K4 = d.StatContext;
var tc = d.ProgContext;
var ky = d.MessageContext;
var Oy = d.CreationContext;
Ry.prototype.Origin = function() {
  let t = this.parentCtx;
  for (; t && !(t instanceof K4 || t instanceof tc); )
    t = this.parentCtx;
  return t.Origin();
};
K4.prototype.Origin = function() {
  let t = this.parentCtx;
  for (; t; ) {
    if (t instanceof tc)
      return t.Starter();
    if (t instanceof ky || t instanceof Oy) {
      const e = t.Owner();
      if (e)
        return e;
    }
    t = t.parentCtx;
  }
};
tc.prototype.Origin = function() {
  return this.Starter();
};
var Iy = d;
var My = Iy.DividerContext;
My.prototype.Note = function() {
  var e;
  const t = (e = this.dividerNote()) == null ? void 0 : e.getFormattedText().trim();
  if (!t.startsWith("=="))
    throw new Error("Divider note must start with ==");
  return t == null ? void 0 : t.replace(/^=+|=+$/g, "");
};
var nc = d;
var Ny = nc.MessageContext;
var Py = nc.AsyncMessageContext;
var Fy = nc.CreationContext;
Ny.prototype.SignatureText = function() {
  var t, e, n;
  return (n = (e = (t = this.messageBody()) == null ? void 0 : t.func()) == null ? void 0 : e.signature()) == null ? void 0 : n.map((r) => r == null ? void 0 : r.getFormattedText()).join(".");
};
Py.prototype.SignatureText = function() {
  var t;
  return (t = this.content()) == null ? void 0 : t.getFormattedText();
};
Fy.prototype.SignatureText = function() {
  var n;
  const t = this.creationBody().parameters();
  return "\xAB" + (((n = t == null ? void 0 : t.parameter()) == null ? void 0 : n.length) > 0 ? t.getFormattedText() : "create") + "\xBB";
};
var Dy = d;
var By = Dy.MessageContext;
var $y = class {
  static {
    __name(this, "$y");
  }
  constructor(e, n) {
    Z(this, "assignee");
    Z(this, "type");
    if (n && !e)
      throw new Error("assignee must be defined if type is defined");
    this.assignee = e || "", this.type = n || "";
  }
  getText() {
    return [this.assignee, this.type].filter(Boolean).join(":");
  }
};
By.prototype.Assignment = function() {
  var r, s;
  const t = this.messageBody().assignment(), e = (r = t == null ? void 0 : t.assignee()) == null ? void 0 : r.getFormattedText(), n = (s = t == null ? void 0 : t.type()) == null ? void 0 : s.getFormattedText();
  if (e)
    return new $y(e, n);
};
var U0 = d;
var Hy = U0.CreationContext;
var Uy = U0.StatContext;
var Y4 = U0.MessageContext;
var Vy = U0.AsyncMessageContext;
var zy = U0.RetContext;
Hy.prototype.From = function() {
  if (this.parentCtx instanceof Uy)
    return this.ClosestAncestorStat().Origin();
};
Y4.prototype.ProvidedFrom = function() {
  var t, e;
  return (e = (t = this.messageBody()) == null ? void 0 : t.from()) == null ? void 0 : e.getFormattedText();
};
Y4.prototype.From = function() {
  return this.ProvidedFrom() || this.ClosestAncestorStat().Origin();
};
Vy.prototype.From = function() {
  return this.from() ? this.from().getFormattedText() : this.ClosestAncestorStat().Origin();
};
zy.prototype.From = function() {
  return this.ClosestAncestorStat().Origin();
};
b.ParserRuleContext.prototype.Key = function() {
  return `${this.start.start}:${this.stop.stop}`;
};
var rc = d;
var rl = rc.CreationContext;
rl.prototype.Body = rl.prototype.creationBody;
rl.prototype.isInitedFromOccurrence = function(t) {
  return X4.bind(this)(t);
};
var sl = rc.MessageContext;
sl.prototype.Body = sl.prototype.messageBody;
sl.prototype.isInitedFromOccurrence = function(t) {
  return X4.bind(this)(t);
};
function X4(t) {
  let e = this;
  for (; e != null; ) {
    if (e instanceof rc.StatContext) {
      let n;
      if (e.message && e.message() ? n = e.message().Owner() : e.creation && e.creation() ? n = e.creation().Owner() : e.asyncMessage && e.asyncMessage() && (n = e.asyncMessage().to().getFormattedText()), n === t)
        return true;
    }
    e = e.parentCtx;
  }
  return false;
}
__name(X4, "X4");
var Q4 = d;
var Y2 = Q4.StatContext;
b.ParserRuleContext.prototype.ClosestAncestorStat = function() {
  let t = this;
  for (; !(t instanceof Y2); )
    t = t.parentCtx;
  if (t instanceof Y2)
    return t;
};
b.ParserRuleContext.prototype.ClosestAncestorBlock = function() {
  var e;
  const t = (e = this.ClosestAncestorStat()) == null ? void 0 : e.parentCtx;
  if (t instanceof Q4.BlockContext)
    return t;
  console.warn("Cannot find closest ancestor block for context:", this);
};
function Gy(t, e) {
  switch (t) {
    case 0:
      return function() {
        return e.apply(this, arguments);
      };
    case 1:
      return function(n) {
        return e.apply(this, arguments);
      };
    case 2:
      return function(n, r) {
        return e.apply(this, arguments);
      };
    case 3:
      return function(n, r, s) {
        return e.apply(this, arguments);
      };
    case 4:
      return function(n, r, s, i) {
        return e.apply(this, arguments);
      };
    case 5:
      return function(n, r, s, i, o) {
        return e.apply(this, arguments);
      };
    case 6:
      return function(n, r, s, i, o, l) {
        return e.apply(this, arguments);
      };
    case 7:
      return function(n, r, s, i, o, l, a) {
        return e.apply(this, arguments);
      };
    case 8:
      return function(n, r, s, i, o, l, a, c) {
        return e.apply(this, arguments);
      };
    case 9:
      return function(n, r, s, i, o, l, a, c, u) {
        return e.apply(this, arguments);
      };
    case 10:
      return function(n, r, s, i, o, l, a, c, u, h) {
        return e.apply(this, arguments);
      };
    default:
      throw new Error("First argument to _arity must be a non-negative integer no greater than ten");
  }
}
__name(Gy, "Gy");
var J4 = Gy;
function jy(t, e) {
  return function() {
    return e.call(this, t.apply(this, arguments));
  };
}
__name(jy, "jy");
var Zy = jy;
function Wy(t) {
  return t != null && typeof t == "object" && t["@@functional/placeholder"] === true;
}
__name(Wy, "Wy");
var sc = Wy;
var qy = sc;
function Ky(t) {
  return /* @__PURE__ */ __name(function e(n) {
    return arguments.length === 0 || qy(n) ? e : t.apply(this, arguments);
  }, "e");
}
__name(Ky, "Ky");
var B1 = Ky;
var ao = B1;
var js = sc;
function Yy(t) {
  return /* @__PURE__ */ __name(function e(n, r) {
    switch (arguments.length) {
      case 0:
        return e;
      case 1:
        return js(n) ? e : ao(function(s) {
          return t(n, s);
        });
      default:
        return js(n) && js(r) ? e : js(n) ? ao(function(s) {
          return t(s, r);
        }) : js(r) ? ao(function(s) {
          return t(n, s);
        }) : t(n, r);
    }
  }, "e");
}
__name(Yy, "Yy");
var eh = Yy;
var fi = B1;
var es = eh;
var Lt = sc;
function Xy(t) {
  return /* @__PURE__ */ __name(function e(n, r, s) {
    switch (arguments.length) {
      case 0:
        return e;
      case 1:
        return Lt(n) ? e : es(function(i, o) {
          return t(n, i, o);
        });
      case 2:
        return Lt(n) && Lt(r) ? e : Lt(n) ? es(function(i, o) {
          return t(i, r, o);
        }) : Lt(r) ? es(function(i, o) {
          return t(n, i, o);
        }) : fi(function(i) {
          return t(n, r, i);
        });
      default:
        return Lt(n) && Lt(r) && Lt(s) ? e : Lt(n) && Lt(r) ? es(function(i, o) {
          return t(i, o, s);
        }) : Lt(n) && Lt(s) ? es(function(i, o) {
          return t(i, r, o);
        }) : Lt(r) && Lt(s) ? es(function(i, o) {
          return t(n, i, o);
        }) : Lt(n) ? fi(function(i) {
          return t(i, r, s);
        }) : Lt(r) ? fi(function(i) {
          return t(n, i, s);
        }) : Lt(s) ? fi(function(i) {
          return t(n, r, i);
        }) : t(n, r, s);
    }
  }, "e");
}
__name(Xy, "Xy");
var ic = Xy;
var th = Array.isArray || function(e) {
  return e != null && e.length >= 0 && Object.prototype.toString.call(e) === "[object Array]";
};
function Qy(t) {
  return Object.prototype.toString.call(t) === "[object String]";
}
__name(Qy, "Qy");
var Jy = Qy;
var eC = B1;
var tC = th;
var nC = Jy;
var rC = /* @__PURE__ */ eC(function(e) {
  return tC(e) ? true : !e || typeof e != "object" || nC(e) ? false : e.length === 0 ? true : e.length > 0 ? e.hasOwnProperty(0) && e.hasOwnProperty(e.length - 1) : false;
});
var sC = rC;
var iC = /* @__PURE__ */ function() {
  function t(e) {
    this.f = e;
  }
  __name(t, "t");
  return t.prototype["@@transducer/init"] = function() {
    throw new Error("init not implemented on XWrap");
  }, t.prototype["@@transducer/result"] = function(e) {
    return e;
  }, t.prototype["@@transducer/step"] = function(e, n) {
    return this.f(e, n);
  }, t;
}();
function oC(t) {
  return new iC(t);
}
__name(oC, "oC");
var lC = oC;
var aC = J4;
var cC = eh;
var uC = /* @__PURE__ */ cC(function(e, n) {
  return aC(e.length, function() {
    return e.apply(n, arguments);
  });
});
var hC = uC;
var dC = sC;
var fC = lC;
var pC = hC;
function gC(t, e, n) {
  for (var r = 0, s = n.length; r < s; ) {
    if (e = t["@@transducer/step"](e, n[r]), e && e["@@transducer/reduced"]) {
      e = e["@@transducer/value"];
      break;
    }
    r += 1;
  }
  return t["@@transducer/result"](e);
}
__name(gC, "gC");
function X2(t, e, n) {
  for (var r = n.next(); !r.done; ) {
    if (e = t["@@transducer/step"](e, r.value), e && e["@@transducer/reduced"]) {
      e = e["@@transducer/value"];
      break;
    }
    r = n.next();
  }
  return t["@@transducer/result"](e);
}
__name(X2, "X2");
function Q2(t, e, n, r) {
  return t["@@transducer/result"](n[r](pC(t["@@transducer/step"], t), e));
}
__name(Q2, "Q2");
var J2 = typeof Symbol < "u" ? Symbol.iterator : "@@iterator";
function mC(t, e, n) {
  if (typeof t == "function" && (t = fC(t)), dC(n))
    return gC(t, e, n);
  if (typeof n["fantasy-land/reduce"] == "function")
    return Q2(t, e, n, "fantasy-land/reduce");
  if (n[J2] != null)
    return X2(t, e, n[J2]());
  if (typeof n.next == "function")
    return X2(t, e, n);
  if (typeof n.reduce == "function")
    return Q2(t, e, n, "reduce");
  throw new TypeError("reduce: list must be array or iterable");
}
__name(mC, "mC");
var xC = mC;
var LC = ic;
var _C = xC;
var yC = /* @__PURE__ */ LC(_C);
var CC = yC;
var vC = th;
function bC(t, e) {
  return function() {
    var n = arguments.length;
    if (n === 0)
      return e();
    var r = arguments[n - 1];
    return vC(r) || typeof r[t] != "function" ? e.apply(this, arguments) : r[t].apply(r, Array.prototype.slice.call(arguments, 0, n - 1));
  };
}
__name(bC, "bC");
var nh = bC;
var wC = nh;
var EC = ic;
var TC = /* @__PURE__ */ EC(
  /* @__PURE__ */ wC("slice", function(e, n, r) {
    return Array.prototype.slice.call(r, e, n);
  })
);
var SC = TC;
var AC = nh;
var RC = B1;
var kC = SC;
var OC = /* @__PURE__ */ RC(
  /* @__PURE__ */ AC(
    "tail",
    /* @__PURE__ */ kC(1, 1 / 0)
  )
);
var IC = OC;
var MC = J4;
var NC = Zy;
var PC = CC;
var FC = IC;
function DC() {
  if (arguments.length === 0)
    throw new Error("pipe requires at least one argument");
  return MC(arguments[0].length, PC(NC, arguments[0], FC(arguments)));
}
__name(DC, "DC");
var BC = DC;
var $C = BC;
var HC = ic;
var UC = /* @__PURE__ */ HC(function(e, n, r) {
  return r.replace(e, n);
});
var VC = UC;
var V0 = VC;
var zC = V0(/[\n\r]/g, " ");
var GC = V0(/\s+/g, " ");
var jC = V0(/\s*([,;.()])\s*/g, "$1");
var ZC = V0(/\s+$/g, "");
var WC = V0(/^"(.*)"$/, "$1");
var qC = $C(
  zC,
  GC,
  jC,
  ZC,
  WC
);
var rh = /* @__PURE__ */ __name((t, e) => {
  let n = e;
  for (t[n] === `
` && n--; n >= 0; ) {
    if (t[n] === `
`)
      return n + 1;
    n--;
  }
  return 0;
}, "rh");
var KC = /* @__PURE__ */ __name((t, e) => {
  const n = rh(t, e);
  if (n === 0)
    return 0;
  let r = n - 2;
  for (; r >= 0; ) {
    if (t[r] === `
`)
      return r + 1;
    r--;
  }
  return 0;
}, "KC");
var qO = /* @__PURE__ */ __name((t, e) => {
  const n = rh(t, e);
  if (n === 0)
    return "";
  const r = KC(t, e);
  return t.slice(r, n);
}, "qO");
var YC = class extends b.error.ErrorListener {
  static {
    __name(this, "YC");
  }
  syntaxError(e, n, r, s, i) {
  }
};
function XC(t) {
  const e = new b.InputStream(t), n = new G(e), r = new b.CommonTokenStream(n), s = new d(r);
  return s.addErrorListener(new YC()), s._syntaxErrors ? null : s.prog();
}
__name(XC, "XC");
b.ParserRuleContext.prototype.getFormattedText = function() {
  const t = this.parser.getTokenStream().getText(this.getSourceInterval());
  return qC(t);
};
b.ParserRuleContext.prototype.getComment = function() {
  let t = this.start.tokenIndex, e = G.channelNames.indexOf("COMMENT_CHANNEL");
  this.constructor.name === "BraceBlockContext" && (t = this.stop.tokenIndex);
  let n = this.parser.getTokenStream().getHiddenTokensToLeft(t, e);
  return n && n.map((r) => r.text.substring(2)).join("");
};
b.ParserRuleContext.prototype.returnedValue = function() {
  return this.braceBlock().block().ret().value();
};
var QC = d.ProgContext;
var JC = XC;
var sh = d.GroupContext;
var ih = d.ParticipantContext;
var Ds = /* @__PURE__ */ __name(function(t, e) {
  return zt.getParticipants(t, e);
}, "Ds");
var xr = /* @__PURE__ */ ((t) => (t[t.MessageContent = 0] = "MessageContent", t[t.ParticipantName = 1] = "ParticipantName", t))(xr || {});
var oc = {};
var oh = {};
var lh = /* @__PURE__ */ __name((t) => {
  var e;
  if (t != null) {
    const n = (e = oc[t]) != null ? e : oh[t];
    return n !== void 0 ? n : null;
  }
  return null;
}, "lh");
var ah = /* @__PURE__ */ __name((t, e, n = false) => {
  oc[t] = e, n && (oh[t] = e);
}, "ah");
var ev = /* @__PURE__ */ __name(() => {
  oc = {};
}, "ev");
function _0(t, e) {
  const n = `WidthProviderOnBrowser_${t}_${e}`, r = lh(n);
  if (r != null)
    return r;
  let s = document.querySelector(
    ".textarea-hidden-div"
  );
  if (!s) {
    const o = document.createElement("div");
    o.className = "textarea-hidden-div ", o.style.fontSize = e === xr.MessageContent ? "0.875rem" : "1rem", o.style.fontFamily = "Helvetica, Verdana, serif", o.style.display = "inline", o.style.whiteSpace = "nowrap", o.style.visibility = "hidden", o.style.position = "absolute", o.style.top = "0", o.style.left = "0", o.style.overflow = "hidden", o.style.width = "0px", o.style.paddingLeft = "0px", o.style.paddingRight = "0px", o.style.margin = "0px", o.style.border = "0px", document.body.appendChild(o), s = o;
  }
  s.textContent = t;
  const i = s.scrollWidth;
  return ah(n, i, true), i;
}
__name(_0, "_0");
var tv = 110;
var il = 20;
var nv = 10;
var rv = 14;
var sv = 100;
var iv = 70;
var ov = d;
var lc = class _lc extends w {
  static {
    __name(this, "lc");
  }
  constructor() {
    super(...arguments);
    Z(this, "explicitParticipants", []);
    Z(this, "starter", "");
    Z(this, "implicitParticipants", []);
    Z(this, "isBlind", false);
  }
  enterCondition() {
    this.isBlind = true;
  }
  exitCondition() {
    this.isBlind = false;
  }
  enterParameters() {
    this.isBlind = true;
  }
  exitParameters() {
    this.isBlind = false;
  }
  enterStarter(n) {
    this.starter = n.getFormattedText();
  }
  enterParticipant(n) {
    var o, l, a;
    const r = ((o = n == null ? void 0 : n.name()) == null ? void 0 : o.getFormattedText()) || "Missing `Participant` name", s = (a = (l = n.label()) == null ? void 0 : l.name()) == null ? void 0 : a.getFormattedText(), i = { name: r, label: s, left: "" };
    this.explicitParticipants.push(i);
  }
  enterFrom(n) {
    if (this.isBlind)
      return;
    const r = n == null ? void 0 : n.getFormattedText();
    if (n.ClosestAncestorBlock().parentCtx instanceof ov.ProgContext && n.ClosestAncestorStat() === n.ClosestAncestorBlock().children[0]) {
      this.starter = r;
      return;
    }
    this.enterTo(n);
  }
  enterTo(n) {
    if (this.isBlind)
      return;
    const r = n == null ? void 0 : n.getFormattedText();
    if (r === this.starter || this.explicitParticipants.some((i) => i.name === r))
      return;
    const s = { name: r, left: "" };
    this.implicitParticipants.push(s);
  }
  enterCreation(n) {
    if (this.isBlind)
      return;
    const r = n == null ? void 0 : n.Owner();
    if (r === this.starter || this.explicitParticipants.some((i) => i.name === r))
      return;
    const s = { name: r, left: "" };
    this.implicitParticipants.push(s);
  }
  result() {
    let n = [...this.explicitParticipants, ...this.implicitParticipants];
    return this._isStarterExplicitlyPositioned() || n.unshift(this._getStarter()), n = this._dedup(n), _lc._assignLeft(n), n;
  }
  _isStarterExplicitlyPositioned() {
    return this.starter && this.explicitParticipants.find((n) => n.name === this.starter);
  }
  _getStarter() {
    return { name: this.starter || "_STARTER_", left: "" };
  }
  _dedup(n) {
    return n.filter((r, s) => n.findIndex((i) => i.name === r.name) === s);
  }
  static _assignLeft(n) {
    n.reduce(
      (r, s) => (s.left = r.name || "", s),
      { name: "", left: "" }
    );
  }
};
function lv(t) {
  const e = new lc();
  return b.tree.ParseTreeWalker.DEFAULT.walk(e, t), e.result();
}
__name(lv, "lv");
function $1(t, e) {
  return { position: t, velocity: e };
}
__name($1, "$1");
function eu(t, e) {
  return $1(t.position + e.position, t.velocity + e.velocity);
}
__name(eu, "eu");
var tu = Math.sqrt(Number.EPSILON);
function av(t, e) {
  const n = t.position - e.position;
  return n < -tu || Math.abs(n) <= tu && t.velocity < e.velocity;
}
__name(av, "av");
function cv() {
  return {
    delta: 1 / 0,
    dualLessThan: function(t, e) {
      const n = av(t, e);
      return n && ([t, e] = [e, t]), t.velocity < e.velocity && (this.delta = Math.min(
        this.delta,
        (t.position - e.position) / (e.velocity - t.velocity)
      )), n;
    }
  };
}
__name(cv, "cv");
function uv(t, e) {
  const n = Array();
  for (let r = 0; r < t; r++) {
    n.push([]);
    for (let s = 0; s < r; s++)
      e[s][r] > 0 && n[r].push({ i: s, length: $1(e[s][r], 0) });
  }
  return n;
}
__name(uv, "uv");
function hv(t, e) {
  const n = cv();
  let r = $1(0, 0);
  const s = [];
  for (let i = 0; i < t.length; i++) {
    let o = null;
    i > 0 && (r = eu(r, e[i - 1]));
    for (const l of t[i]) {
      const a = eu(s[l.i].maximum, l.length);
      n.dualLessThan(r, a) && (o = l.i, r = a);
    }
    s.push({ argument: o, maximum: r });
  }
  return [n.delta, s];
}
__name(hv, "hv");
function dv(t, e, n) {
  let r = t.length - 1;
  for (; r > 0; ) {
    const s = t[r].argument;
    s !== null ? r = s : (r--, n[r].velocity = 0);
  }
}
__name(dv, "dv");
function fv(t, e) {
  for (let n = 0; n < t.length; n++)
    t[n].position += t[n].velocity * e;
}
__name(fv, "fv");
function pv(t) {
  const e = [];
  for (const n of t)
    e.push(n.maximum.position);
  return e;
}
__name(pv, "pv");
function gv(t) {
  const e = t.length, n = uv(e, t), r = [];
  for (let s = 1; s < e; s++)
    r.push($1(0, 1));
  for (; ; ) {
    const [s, i] = hv(n, r);
    if (s == 1 / 0)
      return pv(i);
    i[e - 1].maximum.velocity > 0 ? dv(i, n, r) : fv(r, s);
  }
}
__name(gv, "gv");
var i0 = /* @__PURE__ */ ((t) => (t[t.SyncMessage = 0] = "SyncMessage", t[t.AsyncMessage = 1] = "AsyncMessage", t[t.CreationMessage = 2] = "CreationMessage", t))(i0 || {});
var mv = class extends w {
  static {
    __name(this, "mv");
  }
  constructor() {
    super(...arguments);
    Z(this, "isBlind", false);
    Z(this, "ownableMessages", []);
    Z(this, "enterMessage", (n) => this._addOwnedMessage(i0.SyncMessage)(n));
    Z(this, "enterAsyncMessage", (n) => this._addOwnedMessage(i0.AsyncMessage)(n));
    Z(this, "enterCreation", (n) => this._addOwnedMessage(i0.CreationMessage)(n));
    Z(this, "_addOwnedMessage", (n) => (r) => {
      if (this.isBlind)
        return;
      const s = r.From(), i = r == null ? void 0 : r.Owner(), o = r == null ? void 0 : r.SignatureText();
      this.ownableMessages.push({
        from: s,
        signature: o,
        type: n,
        to: i
      });
    });
  }
  enterParameters() {
    this.isBlind = true;
  }
  exitParameters() {
    this.isBlind = false;
  }
  result() {
    return this.ownableMessages;
  }
};
function ch(t) {
  const e = b.tree.ParseTreeWalker.DEFAULT, n = new mv();
  return e.walk(n, t), n.result();
}
__name(ch, "ch");
var xv = class {
  static {
    __name(this, "xv");
  }
  constructor(e, n) {
    Z(this, "m", []);
    Z(this, "widthProvider");
    Z(this, "participantModels");
    Z(this, "ownableMessages");
    this.participantModels = lv(e), this.ownableMessages = ch(e), this.widthProvider = n, this.walkThrough();
  }
  orderedParticipantNames() {
    return this.participantModels.map((e) => e.name);
  }
  getPosition(e) {
    const n = this.participantModels.findIndex(
      (l) => l.name === e
    );
    if (n === -1)
      throw Error(`Participant ${e} not found`);
    const r = `getPosition_${e}`, s = lh(r);
    if (s != null)
      return s;
    const o = this.getParticipantGap(this.participantModels[0]) + gv(this.m)[n];
    return ah(r, o), console.debug(`Position of ${e} is ${o}`), o;
  }
  walkThrough() {
    this.withParticipantGaps(this.participantModels), this.withMessageGaps(this.ownableMessages, this.participantModels);
  }
  half(e) {
    if (e === "_STARTER_")
      return il / 2;
    const n = this.halfWithMargin(
      this.labelOrName(e)
    );
    return Math.max(n, tv / 2);
  }
  getWidth() {
    const e = this.participantModels[this.participantModels.length - 1].name, n = this.getPosition(e) + this.half(e);
    return Math.max(n, 200);
  }
  distance(e, n) {
    return this.getPosition(n) - this.getPosition(e);
  }
  withMessageGaps(e, n) {
    e.forEach((r) => {
      const s = n.findIndex(
        (a) => a.name === r.from
      ), i = n.findIndex((a) => a.name === r.to);
      if (s === -1 || i === -1) {
        console.warn(`Participant ${r.from} or ${r.to} not found`);
        return;
      }
      const o = Math.min(s, i), l = Math.max(s, i);
      try {
        const a = this.getMessageWidth(r);
        this.m[o][l] = Math.max(
          a + nv + rv,
          this.m[o][l]
        );
      } catch {
        console.warn(
          `Could not set message gap between ${r.from} and ${r.to}`
        );
      }
    });
  }
  getMessageWidth(e) {
    const n = this.half(e.to);
    let r = this.widthProvider(
      e.signature,
      xr.MessageContent
    );
    return e.type === i0.CreationMessage && (r += n), r;
  }
  withParticipantGaps(e) {
    this.m = e.map((n, r) => e.map((s, i) => i - r === 1 ? this.getParticipantGap(s) : 0));
  }
  getParticipantGap(e) {
    const n = this.half(e.left), r = this.half(e.name), s = e.left && e.left !== "_STARTER_", i = e.name && e.name !== "_STARTER_";
    return (s && n || 0) + (i && r || 0);
  }
  labelOrName(e) {
    const n = this.participantModels.findIndex((r) => r.name === e);
    return n === -1 ? "" : this.participantModels[n].label || this.participantModels[n].name;
  }
  halfWithMargin(e) {
    return this._getParticipantWidth(e) / 2 + il / 2;
  }
  _getParticipantWidth(e) {
    return Math.max(
      this.widthProvider(e || "", xr.ParticipantName),
      sv
    );
  }
};
var uh = 0;
setTimeout(function() {
  uh || console.warn(
    "[@zenuml/core] Store is a function and is not initiated in 1 second."
  );
}, 1e3);
var Gn = /* @__PURE__ */ ((t) => (t.Static = "static", t.Dynamic = "dynamic", t))(Gn || {});
var hh = /* @__PURE__ */ __name(() => (uh = Y9(), {
  state: {
    warning: void 0,
    code: "",
    theme: localStorage.getItem(`${location.hostname}-zenuml-theme`) || "theme-default",
    enableMultiTheme: true,
    scale: 1,
    selected: [],
    cursor: null,
    showTips: false,
    mode: "dynamic",
    numbering: Boolean(
      localStorage.getItem(`${location.hostname}-zenuml-numbering`)
    ),
    stickyOffset: 0,
    diagramElement: null,
    onElementClick: (t) => {
      console.log("Element clicked", t);
    },
    onMessageClick: () => {
    },
    onContentChange: () => {
    }
  },
  getters: {
    code: (t) => t.code,
    rootContext: (t) => JC(t.code),
    title: (t, e) => {
      var n, r;
      return (r = (n = e.rootContext) == null ? void 0 : n.title()) == null ? void 0 : r.content();
    },
    participants: (t, e) => Ds(e.rootContext, true),
    coordinates: (t, e) => new xv(e.rootContext, _0),
    centerOf: (t, e) => (n) => {
      if (!n)
        return console.error("[@zenuml/core] centerOf: entity is undefined"), 0;
      try {
        return e.coordinates.getPosition(n) || 0;
      } catch (r) {
        return console.error(r), 0;
      }
    },
    GroupContext: () => sh,
    ParticipantContext: () => ih,
    cursor: (t) => t.cursor,
    distance: (t, e) => (n, r) => e.centerOf(n) - e.centerOf(r),
    distance2: (t, e) => (n, r) => !n || !r ? 0 : e.centerOf(r) - e.centerOf(n),
    onElementClick: (t) => t.onElementClick,
    onMessageClick: (t) => t.onMessageClick,
    diagramElement: (t) => t.diagramElement,
    onContentChange: (t) => t.onContentChange
  },
  mutations: {
    code: function(t, e) {
      t.code = e;
    },
    setScale: function(t, e) {
      t.scale = e;
    },
    onSelect: function(t, e) {
      t.selected.includes(e) ? t.selected = t.selected.filter((n) => n !== e) : t.selected.push(e);
    },
    cursor: function(t, e) {
      t.cursor = e;
    },
    toggleNumbering(t, e) {
      e ? localStorage.setItem(`${location.hostname}-zenuml-numbering`, "1") : localStorage.setItem(`${location.hostname}-zenuml-numbering`, ""), t.numbering = e;
    },
    setTheme: function(t, e) {
      e ? localStorage.setItem(`${location.hostname}-zenuml-theme`, e) : localStorage.setItem(
        `${location.hostname}-zenuml-theme`,
        "theme-default"
      ), t.theme = e;
    },
    onMessageClick: function(t, e) {
      t.onMessageClick = e;
    },
    onContentChange: function(t, e) {
      t.onContentChange = e;
    },
    diagramElement: function(t, e) {
      t.diagramElement = e;
    }
  },
  actions: {
    updateCode: function({ commit: t }, e) {
      if (typeof e == "string")
        throw Error(
          "You are using a old version of vue-sequence. New version requires {code, cursor}."
        );
      e.code !== this.state.code && t("code", e.code);
    }
  },
  strict: false
}), "hh");
var Lv = /* @__PURE__ */ __name((t, e) => {
  const n = t[e];
  return n ? typeof n == "function" ? n() : Promise.resolve(n) : new Promise((r, s) => {
    (typeof queueMicrotask == "function" ? queueMicrotask : setTimeout)(s.bind(null, new Error("Unknown variable dynamic import: " + e)));
  });
}, "Lv");
var dr = {
  __name: "Icon",
  props: {
    name: {
      type: String,
      required: true
    },
    iconClass: {
      type: String,
      required: false
    }
  },
  setup(t) {
    const e = t, n = us(() => Lv(/* @__PURE__ */ Object.assign({ "./icons/close.svg": () => import("./close.713329b8-WSBL4C22.mjs"), "./icons/collapse-expanded.svg": () => import("./collapse-expanded.920ad56a-ERTHZM2T.mjs"), "./icons/collapse-unexpanded.svg": () => import("./collapse-unexpanded.f930b5bd-K7MDEWNZ.mjs"), "./icons/debug.svg": () => import("./debug.63986d15-4HBNDCQM.mjs"), "./icons/message-arrow.svg": () => import("./message-arrow.305e6afc-IYIPRFGI.mjs"), "./icons/non-selected-cycle.svg": () => import("./non-selected-cycle.80181d02-DG244QWV.mjs"), "./icons/numbering.svg": () => import("./numbering.a7a69404-C2VDYUFR.mjs"), "./icons/privacy.svg": () => import("./privacy.8f8cd906-6TYB22W4.mjs"), "./icons/selected-cycle.svg": () => import("./selected-cycle.50d96847-RHMOAYSN.mjs"), "./icons/theme.svg": () => import("./theme.298aae41-PCTYXM2R.mjs"), "./icons/tip.svg": () => import("./tip.f5226685-T5RNLWI6.mjs"), "./icons/zoom-in.svg": () => import("./zoom-in.aba10c2c-4XN7KRP7.mjs"), "./icons/zoom-out.svg": () => import("./zoom-out.b73582c2-2D3Z2MQU.mjs") }), `./icons/${e.name}.svg`));
    return (r, s) => (R(), q("span", {
      class: we(["flex items-center justify-center", t.iconClass]),
      onClick: s[0] || (s[0] = (i) => r.$emit("icon-click"))
    }, [
      (R(), ke(Rs(Le(n)), { class: "w-full h-full" }))
    ], 2));
  }
};
var Ge = /* @__PURE__ */ __name((t, e) => {
  const n = t.__vccOpts || t;
  for (const [r, s] of e)
    n[r] = s;
  return n;
}, "Ge");
var _v = {
  name: "Privacy",
  components: { Icon: dr }
};
var yv = {
  class: "privacy tooltip bottom whitespace-normal flex items-center",
  "data-tooltip": "We (the vendor) do not have access to your data. The diagram is generated in this browser."
};
function Cv(t, e, n, r, s, i) {
  const o = _e("Icon");
  return R(), q("div", null, [
    S("div", yv, [
      z(o, {
        name: "privacy",
        "icon-class": "fill-current h-6 w-6 m-auto"
      })
    ])
  ]);
}
__name(Cv, "Cv");
var vv = /* @__PURE__ */ Ge(_v, [["render", Cv], ["__scopeId", "data-v-3e7c8bd7"]]);
var bv = {
  name: "DiagramTitle",
  props: ["context"],
  computed: {
    title: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.content();
    }
  }
};
var wv = { class: "title text-skin-title text-base font-semibold" };
function Ev(t, e, n, r, s, i) {
  return R(), q("div", wv, He(i.title), 1);
}
__name(Ev, "Ev");
var Tv = /* @__PURE__ */ Ge(bv, [["render", Ev]]);
var ac = new A5();
var cc = { exports: {} };
var Sv = {
  aliceblue: [240, 248, 255],
  antiquewhite: [250, 235, 215],
  aqua: [0, 255, 255],
  aquamarine: [127, 255, 212],
  azure: [240, 255, 255],
  beige: [245, 245, 220],
  bisque: [255, 228, 196],
  black: [0, 0, 0],
  blanchedalmond: [255, 235, 205],
  blue: [0, 0, 255],
  blueviolet: [138, 43, 226],
  brown: [165, 42, 42],
  burlywood: [222, 184, 135],
  cadetblue: [95, 158, 160],
  chartreuse: [127, 255, 0],
  chocolate: [210, 105, 30],
  coral: [255, 127, 80],
  cornflowerblue: [100, 149, 237],
  cornsilk: [255, 248, 220],
  crimson: [220, 20, 60],
  cyan: [0, 255, 255],
  darkblue: [0, 0, 139],
  darkcyan: [0, 139, 139],
  darkgoldenrod: [184, 134, 11],
  darkgray: [169, 169, 169],
  darkgreen: [0, 100, 0],
  darkgrey: [169, 169, 169],
  darkkhaki: [189, 183, 107],
  darkmagenta: [139, 0, 139],
  darkolivegreen: [85, 107, 47],
  darkorange: [255, 140, 0],
  darkorchid: [153, 50, 204],
  darkred: [139, 0, 0],
  darksalmon: [233, 150, 122],
  darkseagreen: [143, 188, 143],
  darkslateblue: [72, 61, 139],
  darkslategray: [47, 79, 79],
  darkslategrey: [47, 79, 79],
  darkturquoise: [0, 206, 209],
  darkviolet: [148, 0, 211],
  deeppink: [255, 20, 147],
  deepskyblue: [0, 191, 255],
  dimgray: [105, 105, 105],
  dimgrey: [105, 105, 105],
  dodgerblue: [30, 144, 255],
  firebrick: [178, 34, 34],
  floralwhite: [255, 250, 240],
  forestgreen: [34, 139, 34],
  fuchsia: [255, 0, 255],
  gainsboro: [220, 220, 220],
  ghostwhite: [248, 248, 255],
  gold: [255, 215, 0],
  goldenrod: [218, 165, 32],
  gray: [128, 128, 128],
  green: [0, 128, 0],
  greenyellow: [173, 255, 47],
  grey: [128, 128, 128],
  honeydew: [240, 255, 240],
  hotpink: [255, 105, 180],
  indianred: [205, 92, 92],
  indigo: [75, 0, 130],
  ivory: [255, 255, 240],
  khaki: [240, 230, 140],
  lavender: [230, 230, 250],
  lavenderblush: [255, 240, 245],
  lawngreen: [124, 252, 0],
  lemonchiffon: [255, 250, 205],
  lightblue: [173, 216, 230],
  lightcoral: [240, 128, 128],
  lightcyan: [224, 255, 255],
  lightgoldenrodyellow: [250, 250, 210],
  lightgray: [211, 211, 211],
  lightgreen: [144, 238, 144],
  lightgrey: [211, 211, 211],
  lightpink: [255, 182, 193],
  lightsalmon: [255, 160, 122],
  lightseagreen: [32, 178, 170],
  lightskyblue: [135, 206, 250],
  lightslategray: [119, 136, 153],
  lightslategrey: [119, 136, 153],
  lightsteelblue: [176, 196, 222],
  lightyellow: [255, 255, 224],
  lime: [0, 255, 0],
  limegreen: [50, 205, 50],
  linen: [250, 240, 230],
  magenta: [255, 0, 255],
  maroon: [128, 0, 0],
  mediumaquamarine: [102, 205, 170],
  mediumblue: [0, 0, 205],
  mediumorchid: [186, 85, 211],
  mediumpurple: [147, 112, 219],
  mediumseagreen: [60, 179, 113],
  mediumslateblue: [123, 104, 238],
  mediumspringgreen: [0, 250, 154],
  mediumturquoise: [72, 209, 204],
  mediumvioletred: [199, 21, 133],
  midnightblue: [25, 25, 112],
  mintcream: [245, 255, 250],
  mistyrose: [255, 228, 225],
  moccasin: [255, 228, 181],
  navajowhite: [255, 222, 173],
  navy: [0, 0, 128],
  oldlace: [253, 245, 230],
  olive: [128, 128, 0],
  olivedrab: [107, 142, 35],
  orange: [255, 165, 0],
  orangered: [255, 69, 0],
  orchid: [218, 112, 214],
  palegoldenrod: [238, 232, 170],
  palegreen: [152, 251, 152],
  paleturquoise: [175, 238, 238],
  palevioletred: [219, 112, 147],
  papayawhip: [255, 239, 213],
  peachpuff: [255, 218, 185],
  peru: [205, 133, 63],
  pink: [255, 192, 203],
  plum: [221, 160, 221],
  powderblue: [176, 224, 230],
  purple: [128, 0, 128],
  rebeccapurple: [102, 51, 153],
  red: [255, 0, 0],
  rosybrown: [188, 143, 143],
  royalblue: [65, 105, 225],
  saddlebrown: [139, 69, 19],
  salmon: [250, 128, 114],
  sandybrown: [244, 164, 96],
  seagreen: [46, 139, 87],
  seashell: [255, 245, 238],
  sienna: [160, 82, 45],
  silver: [192, 192, 192],
  skyblue: [135, 206, 235],
  slateblue: [106, 90, 205],
  slategray: [112, 128, 144],
  slategrey: [112, 128, 144],
  snow: [255, 250, 250],
  springgreen: [0, 255, 127],
  steelblue: [70, 130, 180],
  tan: [210, 180, 140],
  teal: [0, 128, 128],
  thistle: [216, 191, 216],
  tomato: [255, 99, 71],
  turquoise: [64, 224, 208],
  violet: [238, 130, 238],
  wheat: [245, 222, 179],
  white: [255, 255, 255],
  whitesmoke: [245, 245, 245],
  yellow: [255, 255, 0],
  yellowgreen: [154, 205, 50]
};
var dh = { exports: {} };
var Av = /* @__PURE__ */ __name(function(e) {
  return !e || typeof e == "string" ? false : e instanceof Array || Array.isArray(e) || e.length >= 0 && (e.splice instanceof Function || Object.getOwnPropertyDescriptor(e, e.length - 1) && e.constructor.name !== "String");
}, "Av");
var Rv = Av;
var kv = Array.prototype.concat;
var Ov = Array.prototype.slice;
var nu = dh.exports = function(e) {
  for (var n = [], r = 0, s = e.length; r < s; r++) {
    var i = e[r];
    Rv(i) ? n = kv.call(n, Ov.call(i)) : n.push(i);
  }
  return n;
};
nu.wrap = function(t) {
  return function() {
    return t(nu(arguments));
  };
};
var bi = Sv;
var z0 = dh.exports;
var fh = {};
for (co in bi)
  bi.hasOwnProperty(co) && (fh[bi[co]] = co);
var co;
var Kt = cc.exports = {
  to: {},
  get: {}
};
Kt.get = function(t) {
  var e = t.substring(0, 3).toLowerCase(), n, r;
  switch (e) {
    case "hsl":
      n = Kt.get.hsl(t), r = "hsl";
      break;
    case "hwb":
      n = Kt.get.hwb(t), r = "hwb";
      break;
    default:
      n = Kt.get.rgb(t), r = "rgb";
      break;
  }
  return n ? { model: r, value: n } : null;
};
Kt.get.rgb = function(t) {
  if (!t)
    return null;
  var e = /^#([a-f0-9]{3,4})$/i, n = /^#([a-f0-9]{6})([a-f0-9]{2})?$/i, r = /^rgba?\(\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*,\s*([+-]?\d+)\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/, s = /^rgba?\(\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*,\s*([+-]?[\d\.]+)\%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/, i = /(\D+)/, o = [0, 0, 0, 1], l, a, c;
  if (l = t.match(n)) {
    for (c = l[2], l = l[1], a = 0; a < 3; a++) {
      var u = a * 2;
      o[a] = parseInt(l.slice(u, u + 2), 16);
    }
    c && (o[3] = parseInt(c, 16) / 255);
  } else if (l = t.match(e)) {
    for (l = l[1], c = l[3], a = 0; a < 3; a++)
      o[a] = parseInt(l[a] + l[a], 16);
    c && (o[3] = parseInt(c + c, 16) / 255);
  } else if (l = t.match(r)) {
    for (a = 0; a < 3; a++)
      o[a] = parseInt(l[a + 1], 0);
    l[4] && (o[3] = parseFloat(l[4]));
  } else if (l = t.match(s)) {
    for (a = 0; a < 3; a++)
      o[a] = Math.round(parseFloat(l[a + 1]) * 2.55);
    l[4] && (o[3] = parseFloat(l[4]));
  } else
    return (l = t.match(i)) ? l[1] === "transparent" ? [0, 0, 0, 0] : (o = bi[l[1]], o ? (o[3] = 1, o) : null) : null;
  for (a = 0; a < 3; a++)
    o[a] = fr(o[a], 0, 255);
  return o[3] = fr(o[3], 0, 1), o;
};
Kt.get.hsl = function(t) {
  if (!t)
    return null;
  var e = /^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/, n = t.match(e);
  if (n) {
    var r = parseFloat(n[4]), s = (parseFloat(n[1]) + 360) % 360, i = fr(parseFloat(n[2]), 0, 100), o = fr(parseFloat(n[3]), 0, 100), l = fr(isNaN(r) ? 1 : r, 0, 1);
    return [s, i, o, l];
  }
  return null;
};
Kt.get.hwb = function(t) {
  if (!t)
    return null;
  var e = /^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?[\d\.]+)\s*)?\)$/, n = t.match(e);
  if (n) {
    var r = parseFloat(n[4]), s = (parseFloat(n[1]) % 360 + 360) % 360, i = fr(parseFloat(n[2]), 0, 100), o = fr(parseFloat(n[3]), 0, 100), l = fr(isNaN(r) ? 1 : r, 0, 1);
    return [s, i, o, l];
  }
  return null;
};
Kt.to.hex = function() {
  var t = z0(arguments);
  return "#" + pi(t[0]) + pi(t[1]) + pi(t[2]) + (t[3] < 1 ? pi(Math.round(t[3] * 255)) : "");
};
Kt.to.rgb = function() {
  var t = z0(arguments);
  return t.length < 4 || t[3] === 1 ? "rgb(" + Math.round(t[0]) + ", " + Math.round(t[1]) + ", " + Math.round(t[2]) + ")" : "rgba(" + Math.round(t[0]) + ", " + Math.round(t[1]) + ", " + Math.round(t[2]) + ", " + t[3] + ")";
};
Kt.to.rgb.percent = function() {
  var t = z0(arguments), e = Math.round(t[0] / 255 * 100), n = Math.round(t[1] / 255 * 100), r = Math.round(t[2] / 255 * 100);
  return t.length < 4 || t[3] === 1 ? "rgb(" + e + "%, " + n + "%, " + r + "%)" : "rgba(" + e + "%, " + n + "%, " + r + "%, " + t[3] + ")";
};
Kt.to.hsl = function() {
  var t = z0(arguments);
  return t.length < 4 || t[3] === 1 ? "hsl(" + t[0] + ", " + t[1] + "%, " + t[2] + "%)" : "hsla(" + t[0] + ", " + t[1] + "%, " + t[2] + "%, " + t[3] + ")";
};
Kt.to.hwb = function() {
  var t = z0(arguments), e = "";
  return t.length >= 4 && t[3] !== 1 && (e = ", " + t[3]), "hwb(" + t[0] + ", " + t[1] + "%, " + t[2] + "%" + e + ")";
};
Kt.to.keyword = function(t) {
  return fh[t.slice(0, 3)];
};
function fr(t, e, n) {
  return Math.min(Math.max(e, t), n);
}
__name(fr, "fr");
function pi(t) {
  var e = t.toString(16).toUpperCase();
  return e.length < 2 ? "0" + e : e;
}
__name(pi, "pi");
function Iv(t) {
  const e = cc.exports.get.rgb(t), [n, r, s] = e;
  return (n * 299 + r * 587 + s * 114) / 1e3;
}
__name(Iv, "Iv");
function Mv(t) {
  const e = cc.exports.get.rgb(t), [n, r, s] = e;
  return `rgb(${n}, ${r}, ${s})`;
}
__name(Mv, "Mv");
var Nv = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
  <g clip-path="url(#clip0_544_54)">
    <path d="M15.5489 4.19771C15.5489 5.18773 15.1485 6.13721 14.4358 6.83726C13.7231 7.53731 12.7565 7.93058 11.7486 7.93058C10.7407 7.93058 9.77403 7.53731 9.06133 6.83726C8.34863 6.13721 7.94824 5.18773 7.94824 4.19771C7.94824 3.20768 8.34863 2.25822 9.06133 1.55818C9.77403 0.858126 10.7407 0.464844 11.7486 0.464844C12.7565 0.464844 13.7231 0.858126 14.4358 1.55818C15.1485 2.25822 15.5489 3.20768 15.5489 4.19771Z" stroke="black"/>
    <path d="M6.54883 11.2152L17.2025 11.2073M11.7471 8.06641V19.5806V8.06641ZM11.7471 19.4385L6.79789 23.5738L11.7471 19.4385ZM11.7551 19.4385L17.1864 23.3055L11.7551 19.4385Z" stroke="black"/>
  </g>
  <defs>
    <clipPath id="clip0_544_54">
      <rect width="24" height="24" fill="white"/>
    </clipPath>
  </defs>
</svg>
`;
var Pv = `<svg width="101" height="78" viewBox="0 0 101 78" fill="none" xmlns="http://www.w3.org/2000/svg">
	<path d="M96.3563 39.4479C96.3563 48.4904 92.6755 57.1625 86.1237 63.5566C79.5718 69.9506 70.6856 73.5427 61.4199 73.5427C52.1541 73.5427 43.2679 69.9506 36.7161 63.5566C30.1642 57.1625 26.4834 48.4904 26.4834 39.4479C26.4834 30.147 30.1642 21.2271 36.7161 14.6504C43.2679 8.07366 52.1541 4.37891 61.4199 4.37891C70.6856 4.37891 79.5718 8.07366 86.1237 14.6504C92.6755 21.2271 96.3563 30.147 96.3563 39.4479V39.4479Z" stroke="black" stroke-width="7.56826"/>
	<path d="M27.3611 39.4482H3.93945" stroke="black" stroke-width="8"/>
	<path d="M4.91504 4.37891V74.5168" stroke="black" stroke-width="8"/>
</svg>
`;
var Fv = `<svg width="77" height="86" viewBox="0 0 77 86" fill="none" xmlns="http://www.w3.org/2000/svg">
	<g clip-path="url(#clip0_544_57)">
		<path d="M74.0149 46.8888C74.0149 51.5755 73.0918 56.2163 71.2983 60.5463C69.5048 64.8762 66.876 68.8105 63.562 72.1245C60.248 75.4385 56.3137 78.0673 51.9838 79.8608C47.6538 81.6543 43.013 82.5774 38.3263 82.5774C33.6396 82.5774 28.9988 81.6543 24.6689 79.8608C20.3389 78.0673 16.4046 75.4385 13.0907 72.1245C9.77666 68.8105 7.14785 64.8762 5.35433 60.5463C3.56081 56.2163 2.6377 51.5755 2.6377 46.8888C2.6377 42.2021 3.56081 37.5613 5.35433 33.2314C7.14785 28.9014 9.77666 24.9671 13.0907 21.6532C16.4046 18.3392 20.3389 15.7104 24.6689 13.9168C28.9988 12.1233 33.6396 11.2002 38.3263 11.2002C43.013 11.2002 47.6538 12.1233 51.9838 13.9168C56.3137 15.7104 60.248 18.3392 63.562 21.6532C66.876 24.9671 69.5048 28.9014 71.2983 33.2314C73.0918 37.5613 74.0149 42.2021 74.0149 46.8888V46.8888Z" stroke="black" stroke-width="4.98203"/>
		<path d="M47.5352 2.30371L37.5352 11.5001L47.5352 20.6966" stroke="black" stroke-width="6"/>
	</g>
	<defs>
		<clipPath id="clip0_544_57">
			<rect width="77" height="86" fill="white"/>
		</clipPath>
	</defs>
</svg>
`;
var Dv = `<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
  <path fill-rule="evenodd" clip-rule="evenodd" d="M12.258 0.001L12.514 0.005L12.769 0.01L13.022 0.018L13.273 0.028L13.522 0.04L13.769 0.055L14.015 0.071L14.257 0.09L14.498 0.11L14.737 0.133L14.973 0.157L15.206 0.184L15.437 0.212L15.666 0.243L15.891 0.275L16.114 0.309L16.334 0.345L16.551 0.383L16.765 0.423L16.976 0.464L17.184 0.507L17.389 0.552L17.59 0.598L17.788 0.646L17.982 0.696L18.173 0.747L18.36 0.8L18.543 0.854L18.723 0.91L18.898 0.967L19.07 1.026L19.238 1.086L19.401 1.147L19.561 1.21L19.716 1.274L19.866 1.34L19.94 1.373L20.013 1.406L20.084 1.44L20.154 1.474L20.223 1.509L20.291 1.544L20.358 1.579L20.424 1.614L20.488 1.65L20.552 1.686L20.614 1.722L20.674 1.758L20.734 1.795L20.792 1.832L20.85 1.869L20.905 1.907L20.96 1.945L21.013 1.983L21.065 2.021L21.116 2.06L21.166 2.099L21.214 2.138L21.261 2.177L21.306 2.217L21.35 2.257L21.393 2.297L21.434 2.337L21.474 2.378L21.513 2.419L21.55 2.46L21.586 2.501L21.62 2.542L21.653 2.584L21.685 2.626L21.715 2.668L21.744 2.71L21.771 2.752L21.797 2.795L21.821 2.838L21.844 2.881L21.865 2.924L21.885 2.967L21.903 3.011L21.92 3.054L21.935 3.098L21.948 3.142L21.96 3.186L21.971 3.231L21.98 3.275L21.987 3.32L21.993 3.365L21.997 3.41L21.999 3.455L22 3.5V20.5L21.999 20.545L21.997 20.59L21.993 20.635L21.987 20.68L21.98 20.725L21.971 20.769L21.96 20.814L21.948 20.858L21.935 20.902L21.92 20.946L21.903 20.989L21.885 21.033L21.865 21.076L21.844 21.119L21.821 21.162L21.797 21.205L21.771 21.248L21.744 21.29L21.715 21.332L21.685 21.374L21.653 21.416L21.62 21.458L21.586 21.499L21.55 21.54L21.513 21.581L21.474 21.622L21.434 21.663L21.393 21.703L21.35 21.743L21.306 21.783L21.261 21.823L21.214 21.862L21.166 21.901L21.116 21.94L21.065 21.979L21.013 22.017L20.96 22.055L20.905 22.093L20.85 22.131L20.792 22.168L20.734 22.205L20.674 22.242L20.614 22.278L20.552 22.314L20.488 22.35L20.424 22.386L20.358 22.421L20.291 22.456L20.223 22.491L20.154 22.526L20.084 22.56L20.013 22.594L19.94 22.627L19.866 22.66L19.716 22.726L19.561 22.79L19.401 22.853L19.238 22.914L19.07 22.974L18.898 23.033L18.723 23.09L18.543 23.146L18.36 23.2L18.173 23.253L17.982 23.304L17.788 23.354L17.59 23.402L17.389 23.448L17.184 23.493L16.976 23.536L16.765 23.577L16.551 23.617L16.334 23.655L16.114 23.691L15.891 23.725L15.666 23.757L15.437 23.788L15.206 23.816L14.973 23.843L14.737 23.867L14.498 23.89L14.257 23.91L14.015 23.929L13.769 23.945L13.522 23.96L13.273 23.972L13.022 23.982L12.769 23.99L12.514 23.995L12.258 23.999L12 24L11.742 23.999L11.486 23.995L11.231 23.99L10.978 23.982L10.727 23.972L10.478 23.96L10.231 23.945L9.986 23.929L9.743 23.91L9.502 23.89L9.264 23.867L9.028 23.843L8.794 23.816L8.563 23.788L8.335 23.757L8.109 23.725L7.886 23.691L7.666 23.655L7.449 23.617L7.235 23.577L7.024 23.536L6.816 23.493L6.612 23.448L6.411 23.402L6.213 23.354L6.018 23.304L5.828 23.253L5.641 23.2L5.457 23.146L5.278 23.09L5.102 23.033L4.93 22.974L4.763 22.914L4.599 22.853L4.44 22.79L4.285 22.726L4.134 22.66L4.06 22.627L3.988 22.594L3.916 22.56L3.846 22.526L3.777 22.491L3.709 22.456L3.642 22.421L3.576 22.386L3.512 22.35L3.449 22.314L3.387 22.278L3.326 22.242L3.266 22.205L3.208 22.168L3.151 22.131L3.095 22.093L3.04 22.055L2.987 22.017L2.935 21.979L2.884 21.94L2.835 21.901L2.786 21.862L2.74 21.823L2.694 21.783L2.65 21.743L2.607 21.703L2.566 21.663L2.526 21.622L2.487 21.581L2.45 21.54L2.414 21.499L2.38 21.458L2.347 21.416L2.315 21.374L2.285 21.332L2.256 21.29L2.229 21.248L2.203 21.205L2.179 21.162L2.156 21.119L2.135 21.076L2.115 21.033L2.097 20.989L2.08 20.946L2.065 20.902L2.052 20.858L2.04 20.814L2.029 20.769L2.02 20.725L2.013 20.68L2.007 20.635L2.003 20.59L2.001 20.545L2 20.5V3.5L2.001 3.455L2.003 3.41L2.007 3.365L2.013 3.32L2.02 3.275L2.029 3.231L2.04 3.186L2.052 3.142L2.065 3.098L2.08 3.054L2.097 3.011L2.115 2.967L2.135 2.924L2.156 2.881L2.179 2.838L2.203 2.795L2.229 2.752L2.256 2.71L2.285 2.668L2.315 2.626L2.347 2.584L2.38 2.542L2.414 2.501L2.45 2.46L2.487 2.419L2.526 2.378L2.566 2.337L2.607 2.297L2.65 2.257L2.694 2.217L2.74 2.177L2.786 2.138L2.835 2.099L2.884 2.06L2.935 2.021L2.987 1.983L3.04 1.945L3.095 1.907L3.151 1.869L3.208 1.832L3.266 1.795L3.326 1.758L3.387 1.722L3.449 1.686L3.512 1.65L3.576 1.614L3.642 1.579L3.709 1.544L3.777 1.509L3.846 1.474L3.916 1.44L3.988 1.406L4.06 1.373L4.134 1.34L4.285 1.274L4.44 1.21L4.599 1.147L4.763 1.086L4.93 1.026L5.102 0.967L5.278 0.91L5.457 0.854L5.641 0.8L5.828 0.747L6.018 0.696L6.213 0.646L6.411 0.598L6.612 0.552L6.816 0.507L7.024 0.464L7.235 0.423L7.449 0.383L7.666 0.345L7.886 0.309L8.109 0.275L8.335 0.243L8.563 0.212L8.794 0.184L9.028 0.157L9.264 0.133L9.502 0.11L9.743 0.09L9.986 0.071L10.231 0.055L10.478 0.04L10.727 0.028L10.978 0.018L11.231 0.01L11.486 0.005L11.742 0.001L12 0L12.258 0.001V0.001ZM3 20.5V20.51L3.001 20.531L3.004 20.552L3.008 20.574L3.013 20.595L3.019 20.617L3.026 20.639L3.035 20.662L3.045 20.684L3.056 20.707L3.068 20.73L3.081 20.753L3.096 20.776L3.112 20.8L3.129 20.823L3.147 20.847L3.166 20.871L3.187 20.895L3.209 20.92L3.232 20.944L3.256 20.969L3.308 21.018L3.364 21.068L3.425 21.119L3.491 21.17L3.561 21.221L3.636 21.272L3.715 21.324L3.799 21.376L3.887 21.428L3.979 21.48L4.076 21.532L4.178 21.583L4.283 21.635L4.393 21.687L4.507 21.738L4.626 21.789L4.749 21.84L4.876 21.89L5.007 21.94L5.142 21.99L5.281 22.038L5.425 22.087L5.572 22.134L5.724 22.181L5.879 22.228L6.039 22.273L6.202 22.318L6.369 22.361L6.54 22.404L6.716 22.445L6.894 22.486L7.077 22.525L7.264 22.564L7.454 22.601L7.648 22.636L7.845 22.671L8.047 22.704L8.251 22.735L8.46 22.765L8.672 22.794L8.888 22.821L9.107 22.846L9.329 22.87L9.555 22.891L9.785 22.911L10.018 22.929L10.254 22.945L10.494 22.96L10.737 22.972L10.983 22.982L11.232 22.99L11.485 22.995L11.741 22.999L12 23L12.26 22.999L12.517 22.995L12.771 22.99L13.021 22.982L13.268 22.971L13.512 22.959L13.753 22.945L13.99 22.929L14.223 22.911L14.454 22.89L14.68 22.869L14.904 22.845L15.124 22.819L15.34 22.792L15.552 22.764L15.762 22.733L15.967 22.702L16.169 22.668L16.367 22.634L16.561 22.598L16.752 22.561L16.939 22.522L17.122 22.482L17.301 22.442L17.476 22.4L17.648 22.357L17.816 22.313L17.979 22.268L18.139 22.222L18.294 22.176L18.446 22.129L18.594 22.081L18.737 22.032L18.876 21.983L19.012 21.933L19.143 21.883L19.269 21.833L19.392 21.782L19.51 21.73L19.624 21.679L19.734 21.627L19.84 21.575L19.941 21.523L20.037 21.471L20.129 21.419L20.217 21.366L20.3 21.315L20.379 21.263L20.453 21.211L20.523 21.16L20.588 21.109L20.648 21.058L20.704 21.008L20.755 20.958L20.778 20.934L20.801 20.909L20.822 20.885L20.842 20.861L20.861 20.837L20.879 20.813L20.896 20.789L20.911 20.766L20.925 20.742L20.938 20.719L20.95 20.696L20.96 20.673L20.97 20.651L20.978 20.629L20.984 20.607L20.99 20.585L20.994 20.563L20.998 20.542L20.999 20.521L21 20.5V16.373L20.923 16.428L20.843 16.481L20.76 16.535L20.675 16.588L20.588 16.64L20.498 16.692L20.405 16.743L20.31 16.793L20.213 16.843L20.113 16.892L20.011 16.941L19.906 16.989L19.8 17.036L19.691 17.083L19.58 17.129L19.466 17.174L19.351 17.219L19.233 17.263L19.113 17.306L18.991 17.348L18.867 17.39L18.741 17.431L18.613 17.471L18.483 17.511L18.351 17.549L18.217 17.587L18.082 17.624L17.944 17.661L17.805 17.696L17.663 17.731L17.52 17.765L17.376 17.798L17.229 17.83L17.081 17.861L16.931 17.891L16.78 17.921L16.627 17.95L16.473 17.977L16.317 18.004L16.159 18.03L16 18.055L15.839 18.079L15.677 18.102L15.514 18.124L15.349 18.145L15.183 18.165L15.016 18.184L14.847 18.202L14.678 18.219L14.507 18.235L14.334 18.25L14.161 18.264L13.986 18.277L13.811 18.289L13.634 18.3L13.456 18.31L13.277 18.318L13.098 18.326L12.917 18.332L12.735 18.337L12.553 18.341L12.369 18.344L12.185 18.346H11.815L11.631 18.344L11.447 18.341L11.265 18.337L11.083 18.332L10.902 18.326L10.723 18.318L10.544 18.31L10.366 18.3L10.19 18.289L10.014 18.277L9.839 18.264L9.666 18.25L9.494 18.235L9.323 18.219L9.153 18.202L8.984 18.184L8.817 18.165L8.651 18.145L8.486 18.124L8.323 18.102L8.161 18.079L8 18.055L7.841 18.03L7.684 18.004L7.528 17.977L7.373 17.95L7.22 17.921L7.069 17.891L6.919 17.861L6.771 17.83L6.625 17.798L6.48 17.765L6.337 17.731L6.196 17.696L6.056 17.661L5.919 17.624L5.783 17.587L5.649 17.549L5.517 17.511L5.387 17.471L5.259 17.431L5.133 17.39L5.009 17.348L4.887 17.306L4.767 17.262L4.65 17.219L4.534 17.174L4.421 17.129L4.309 17.083L4.2 17.036L4.094 16.989L3.989 16.941L3.887 16.892L3.787 16.843L3.69 16.793L3.595 16.743L3.502 16.691L3.412 16.64L3.325 16.588L3.24 16.535L3.157 16.481L3.077 16.427L3 16.373V20.5V20.5ZM3 14.846V14.857L3.001 14.878L3.004 14.899L3.008 14.92L3.013 14.942L3.019 14.964L3.026 14.986L3.035 15.008L3.045 15.03L3.056 15.053L3.068 15.076L3.081 15.099L3.096 15.123L3.112 15.146L3.129 15.17L3.147 15.194L3.166 15.218L3.187 15.242L3.209 15.266L3.232 15.291L3.256 15.315L3.308 15.365L3.364 15.415L3.425 15.465L3.491 15.516L3.561 15.567L3.636 15.619L3.715 15.67L3.799 15.722L3.887 15.774L3.979 15.826L4.076 15.878L4.178 15.93L4.283 15.982L4.393 16.033L4.507 16.084L4.626 16.136L4.749 16.186L4.876 16.237L5.007 16.287L5.142 16.336L5.281 16.385L5.425 16.433L5.572 16.481L5.724 16.528L5.879 16.574L6.039 16.619L6.202 16.664L6.369 16.708L6.54 16.75L6.716 16.792L6.894 16.832L7.077 16.872L7.264 16.91L7.454 16.947L7.648 16.983L7.845 17.017L8.047 17.05L8.251 17.082L8.46 17.112L8.672 17.14L8.888 17.167L9.107 17.192L9.329 17.216L9.555 17.238L9.785 17.258L10.018 17.276L10.254 17.292L10.494 17.306L10.737 17.318L10.983 17.328L11.232 17.336L11.485 17.342L11.741 17.345L12 17.346L12.26 17.345L12.517 17.342L12.771 17.336L13.021 17.328L13.268 17.318L13.512 17.306L13.753 17.291L13.99 17.275L14.223 17.257L14.454 17.237L14.68 17.215L14.904 17.191L15.124 17.166L15.34 17.139L15.552 17.11L15.762 17.08L15.967 17.048L16.169 17.015L16.367 16.98L16.561 16.944L16.752 16.907L16.939 16.868L17.122 16.829L17.301 16.788L17.476 16.746L17.648 16.703L17.816 16.659L17.979 16.614L18.139 16.569L18.294 16.522L18.446 16.475L18.594 16.427L18.737 16.379L18.876 16.329L19.012 16.28L19.143 16.23L19.269 16.179L19.392 16.128L19.51 16.077L19.624 16.025L19.734 15.973L19.84 15.921L19.941 15.869L20.037 15.817L20.129 15.765L20.217 15.713L20.3 15.661L20.379 15.609L20.453 15.558L20.523 15.506L20.588 15.455L20.648 15.405L20.704 15.354L20.755 15.305L20.778 15.28L20.801 15.256L20.822 15.231L20.842 15.207L20.861 15.183L20.879 15.159L20.896 15.135L20.911 15.112L20.925 15.089L20.938 15.065L20.95 15.043L20.96 15.02L20.97 14.997L20.978 14.975L20.984 14.953L20.99 14.931L20.994 14.91L20.998 14.888L20.999 14.867L21 14.846V10.707L20.923 10.761L20.843 10.815L20.76 10.869L20.675 10.921L20.588 10.974L20.498 11.025L20.405 11.076L20.31 11.127L20.213 11.177L20.113 11.226L20.011 11.275L19.906 11.323L19.8 11.37L19.691 11.417L19.58 11.463L19.466 11.508L19.351 11.552L19.233 11.596L19.113 11.64L18.991 11.682L18.867 11.724L18.741 11.765L18.613 11.805L18.483 11.844L18.351 11.883L18.217 11.921L18.082 11.958L17.944 11.994L17.805 12.03L17.663 12.065L17.52 12.098L17.376 12.131L17.229 12.164L17.081 12.195L16.931 12.225L16.78 12.255L16.627 12.283L16.473 12.311L16.317 12.338L16.159 12.364L16 12.389L15.839 12.413L15.677 12.436L15.514 12.458L15.349 12.479L15.183 12.499L15.016 12.518L14.847 12.536L14.678 12.553L14.507 12.569L14.334 12.584L14.161 12.598L13.986 12.611L13.811 12.623L13.634 12.634L13.456 12.643L13.277 12.652L13.098 12.659L12.917 12.666L12.735 12.671L12.553 12.675L12.369 12.678L12.185 12.68H11.815L11.631 12.678L11.447 12.675L11.265 12.671L11.083 12.666L10.902 12.659L10.723 12.652L10.544 12.643L10.366 12.634L10.19 12.623L10.014 12.611L9.839 12.598L9.666 12.584L9.494 12.569L9.323 12.553L9.153 12.536L8.984 12.518L8.817 12.499L8.651 12.479L8.486 12.458L8.323 12.436L8.161 12.413L8 12.389L7.841 12.364L7.684 12.338L7.528 12.311L7.373 12.283L7.22 12.255L7.069 12.225L6.919 12.195L6.771 12.164L6.625 12.131L6.48 12.098L6.337 12.065L6.196 12.03L6.056 11.994L5.919 11.958L5.783 11.921L5.649 11.883L5.517 11.844L5.387 11.805L5.259 11.765L5.133 11.724L5.009 11.682L4.887 11.639L4.767 11.596L4.65 11.552L4.534 11.508L4.421 11.462L4.309 11.416L4.2 11.37L4.094 11.323L3.989 11.275L3.887 11.226L3.787 11.177L3.69 11.127L3.595 11.076L3.502 11.025L3.412 10.974L3.325 10.921L3.24 10.869L3.157 10.815L3.077 10.761L3 10.707V14.846V14.846ZM3 9.18V9.191L3.001 9.211L3.004 9.233L3.008 9.254L3.013 9.276L3.019 9.297L3.026 9.319L3.035 9.342L3.045 9.364L3.056 9.387L3.068 9.41L3.081 9.433L3.096 9.456L3.112 9.48L3.129 9.504L3.147 9.527L3.166 9.551L3.187 9.576L3.209 9.6L3.232 9.624L3.256 9.649L3.308 9.699L3.364 9.749L3.425 9.799L3.491 9.85L3.561 9.901L3.636 9.953L3.715 10.004L3.799 10.056L3.887 10.108L3.979 10.16L4.076 10.212L4.178 10.264L4.283 10.315L4.393 10.367L4.507 10.418L4.626 10.469L4.749 10.52L4.876 10.57L5.007 10.62L5.142 10.67L5.281 10.719L5.425 10.767L5.572 10.815L5.724 10.862L5.879 10.908L6.039 10.953L6.202 10.998L6.369 11.041L6.54 11.084L6.716 11.126L6.894 11.166L7.077 11.206L7.264 11.244L7.454 11.281L7.648 11.317L7.845 11.351L8.047 11.384L8.251 11.416L8.46 11.446L8.672 11.474L8.888 11.501L9.107 11.526L9.329 11.55L9.555 11.571L9.785 11.591L10.018 11.609L10.254 11.626L10.494 11.64L10.737 11.652L10.983 11.662L11.232 11.67L11.485 11.676L11.741 11.679L12 11.68L12.26 11.679L12.517 11.676L12.771 11.67L13.021 11.662L13.268 11.652L13.512 11.639L13.753 11.625L13.99 11.609L14.223 11.591L14.454 11.571L14.68 11.549L14.904 11.525L15.124 11.5L15.34 11.473L15.552 11.444L15.762 11.414L15.967 11.382L16.169 11.349L16.367 11.314L16.561 11.278L16.752 11.241L16.939 11.202L17.122 11.163L17.301 11.122L17.476 11.08L17.648 11.037L17.816 10.993L17.979 10.948L18.139 10.903L18.294 10.856L18.446 10.809L18.594 10.761L18.737 10.712L18.876 10.663L19.012 10.614L19.143 10.563L19.269 10.513L19.392 10.462L19.51 10.41L19.624 10.359L19.734 10.307L19.84 10.255L19.941 10.203L20.037 10.151L20.129 10.099L20.217 10.047L20.3 9.995L20.379 9.943L20.453 9.891L20.523 9.84L20.588 9.789L20.648 9.738L20.704 9.688L20.755 9.639L20.778 9.614L20.801 9.589L20.822 9.565L20.842 9.541L20.861 9.517L20.879 9.493L20.896 9.469L20.911 9.446L20.925 9.422L20.938 9.399L20.95 9.376L20.96 9.354L20.97 9.331L20.978 9.309L20.984 9.287L20.99 9.265L20.994 9.243L20.998 9.222L20.999 9.201L21 9.18V5.027L20.923 5.081L20.843 5.135L20.76 5.188L20.675 5.241L20.588 5.294L20.498 5.345L20.405 5.396L20.31 5.447L20.213 5.497L20.113 5.546L20.011 5.594L19.906 5.642L19.8 5.69L19.691 5.736L19.58 5.782L19.466 5.828L19.351 5.872L19.233 5.916L19.113 5.959L18.991 6.002L18.867 6.044L18.741 6.085L18.613 6.125L18.483 6.164L18.351 6.203L18.217 6.241L18.082 6.278L17.944 6.314L17.805 6.35L17.663 6.384L17.52 6.418L17.376 6.451L17.229 6.483L17.081 6.515L16.931 6.545L16.78 6.575L16.627 6.603L16.473 6.631L16.317 6.658L16.159 6.684L16 6.708L15.839 6.732L15.677 6.755L15.514 6.778L15.349 6.799L15.183 6.819L15.016 6.838L14.847 6.856L14.678 6.873L14.507 6.889L14.334 6.904L14.161 6.918L13.986 6.931L13.811 6.943L13.634 6.953L13.456 6.963L13.277 6.972L13.098 6.979L12.917 6.985L12.735 6.991L12.553 6.995L12.369 6.998L12.185 6.999L12 7L11.815 6.999L11.631 6.998L11.447 6.995L11.265 6.991L11.083 6.985L10.902 6.979L10.723 6.972L10.544 6.963L10.366 6.953L10.19 6.943L10.014 6.931L9.839 6.918L9.666 6.904L9.494 6.889L9.323 6.873L9.153 6.856L8.984 6.838L8.817 6.819L8.651 6.799L8.486 6.778L8.323 6.755L8.161 6.732L8 6.708L7.841 6.684L7.684 6.658L7.528 6.631L7.373 6.603L7.22 6.575L7.069 6.545L6.919 6.515L6.771 6.483L6.625 6.451L6.48 6.418L6.337 6.384L6.196 6.35L6.056 6.314L5.919 6.278L5.783 6.241L5.649 6.203L5.517 6.164L5.387 6.125L5.259 6.084L5.133 6.043L5.009 6.002L4.887 5.959L4.767 5.916L4.65 5.872L4.534 5.828L4.421 5.782L4.309 5.736L4.2 5.69L4.094 5.642L3.989 5.594L3.887 5.546L3.787 5.496L3.69 5.447L3.595 5.396L3.502 5.345L3.412 5.293L3.325 5.241L3.24 5.188L3.157 5.135L3.077 5.081L3 5.027V9.18V9.18ZM11.74 1.001L11.483 1.005L11.229 1.01L10.979 1.018L10.732 1.029L10.488 1.041L10.247 1.055L10.01 1.071L9.777 1.089L9.546 1.11L9.32 1.132L9.096 1.155L8.876 1.181L8.66 1.208L8.448 1.236L8.238 1.267L8.033 1.299L7.831 1.332L7.633 1.366L7.439 1.402L7.248 1.44L7.061 1.478L6.878 1.518L6.699 1.559L6.524 1.601L6.352 1.644L6.184 1.687L6.021 1.732L5.861 1.778L5.706 1.824L5.554 1.872L5.406 1.92L5.263 1.968L5.124 2.017L4.988 2.067L4.857 2.117L4.731 2.168L4.608 2.219L4.49 2.27L4.376 2.322L4.266 2.374L4.16 2.426L4.059 2.478L3.963 2.53L3.871 2.582L3.783 2.634L3.7 2.686L3.621 2.738L3.547 2.789L3.477 2.841L3.412 2.892L3.352 2.942L3.296 2.992L3.245 3.042L3.222 3.067L3.199 3.091L3.178 3.115L3.158 3.14L3.139 3.164L3.121 3.188L3.104 3.211L3.089 3.235L3.075 3.258L3.062 3.281L3.05 3.304L3.04 3.327L3.03 3.349L3.022 3.371L3.016 3.394L3.01 3.415L3.006 3.437L3.002 3.458L3.001 3.479L3 3.5L3.001 3.521L3.002 3.542L3.006 3.563L3.01 3.585L3.016 3.606L3.022 3.629L3.03 3.651L3.04 3.673L3.05 3.696L3.062 3.719L3.075 3.742L3.089 3.765L3.104 3.789L3.121 3.812L3.139 3.836L3.158 3.86L3.178 3.885L3.199 3.909L3.222 3.933L3.245 3.958L3.296 4.008L3.352 4.058L3.412 4.108L3.477 4.159L3.547 4.211L3.621 4.262L3.7 4.314L3.783 4.366L3.871 4.418L3.963 4.47L4.059 4.522L4.16 4.574L4.266 4.626L4.376 4.678L4.49 4.73L4.608 4.781L4.731 4.832L4.857 4.883L4.988 4.933L5.124 4.983L5.263 5.032L5.406 5.08L5.554 5.128L5.706 5.176L5.861 5.222L6.021 5.268L6.184 5.313L6.352 5.356L6.524 5.399L6.699 5.441L6.878 5.482L7.061 5.522L7.248 5.56L7.439 5.598L7.633 5.634L7.831 5.668L8.033 5.701L8.238 5.733L8.448 5.764L8.66 5.792L8.876 5.819L9.096 5.845L9.32 5.868L9.546 5.89L9.777 5.911L10.01 5.929L10.247 5.945L10.488 5.959L10.732 5.971L10.979 5.982L11.229 5.99L11.483 5.995L11.74 5.999L12 6L12.26 5.999L12.517 5.995L12.771 5.99L13.021 5.982L13.268 5.971L13.512 5.959L13.753 5.945L13.99 5.929L14.223 5.911L14.454 5.89L14.68 5.868L14.904 5.845L15.124 5.819L15.34 5.792L15.552 5.764L15.762 5.733L15.967 5.701L16.169 5.668L16.367 5.634L16.561 5.598L16.752 5.56L16.939 5.522L17.122 5.482L17.301 5.441L17.476 5.399L17.648 5.356L17.816 5.313L17.979 5.268L18.139 5.222L18.294 5.176L18.446 5.128L18.594 5.08L18.737 5.032L18.876 4.983L19.012 4.933L19.143 4.883L19.269 4.832L19.392 4.781L19.51 4.73L19.624 4.678L19.734 4.626L19.84 4.574L19.941 4.522L20.037 4.47L20.129 4.418L20.217 4.366L20.3 4.314L20.379 4.262L20.453 4.211L20.523 4.159L20.588 4.108L20.648 4.058L20.704 4.008L20.755 3.958L20.778 3.933L20.801 3.909L20.822 3.885L20.842 3.86L20.861 3.836L20.879 3.812L20.896 3.789L20.911 3.765L20.925 3.742L20.938 3.719L20.95 3.696L20.96 3.673L20.97 3.651L20.978 3.629L20.984 3.606L20.99 3.585L20.994 3.563L20.998 3.542L20.999 3.521L21 3.5L20.999 3.479L20.998 3.458L20.994 3.437L20.99 3.415L20.984 3.394L20.978 3.371L20.97 3.349L20.96 3.327L20.95 3.304L20.938 3.281L20.925 3.258L20.911 3.235L20.896 3.211L20.879 3.188L20.861 3.164L20.842 3.14L20.822 3.115L20.801 3.091L20.778 3.067L20.755 3.042L20.704 2.992L20.648 2.942L20.588 2.892L20.523 2.841L20.453 2.789L20.379 2.738L20.3 2.686L20.217 2.634L20.129 2.582L20.037 2.53L19.941 2.478L19.84 2.426L19.734 2.374L19.624 2.322L19.51 2.27L19.392 2.219L19.269 2.168L19.143 2.117L19.012 2.067L18.876 2.017L18.737 1.968L18.594 1.92L18.446 1.872L18.294 1.824L18.139 1.778L17.979 1.732L17.816 1.687L17.648 1.644L17.476 1.601L17.301 1.559L17.122 1.518L16.939 1.478L16.752 1.44L16.561 1.402L16.367 1.366L16.169 1.332L15.967 1.299L15.762 1.267L15.552 1.236L15.34 1.208L15.124 1.181L14.904 1.155L14.68 1.132L14.454 1.11L14.223 1.089L13.99 1.071L13.753 1.055L13.512 1.041L13.268 1.029L13.021 1.018L12.771 1.01L12.517 1.005L12.26 1.001L12 1L11.74 1.001V1.001Z" fill="black"/>
</svg>
`;
var Bv = `<svg width="77" height="80" viewBox="0 0 77 80" fill="none" xmlns="http://www.w3.org/2000/svg">
	<g clip-path="url(#clip0_544_61)">
		<path d="M74.0149 38.8888C74.0149 43.5755 73.0918 48.2163 71.2983 52.5463C69.5048 56.8762 66.876 60.8105 63.562 64.1245C60.248 67.4385 56.3137 70.0673 51.9838 71.8608C47.6538 73.6543 43.013 74.5774 38.3263 74.5774C33.6396 74.5774 28.9988 73.6543 24.6689 71.8608C20.3389 70.0673 16.4046 67.4385 13.0907 64.1245C9.77666 60.8105 7.14785 56.8762 5.35433 52.5463C3.56081 48.2163 2.6377 43.5755 2.6377 38.8888C2.6377 34.2021 3.56081 29.5613 5.35433 25.2314C7.14785 20.9014 9.77666 16.9671 13.0907 13.6532C16.4046 10.3392 20.3389 7.71035 24.6689 5.91683C28.9988 4.12331 33.6396 3.2002 38.3263 3.2002C43.013 3.2002 47.6538 4.12331 51.9838 5.91683C56.3137 7.71035 60.248 10.3392 63.562 13.6532C66.876 16.9671 69.5048 20.9014 71.2983 25.2314C73.0918 29.5613 74.0149 34.2021 74.0149 38.8888V38.8888Z" stroke="black" stroke-width="4.98203"/>
		<path d="M2.69922 75.4727L75.6992 75.5154" stroke="black" stroke-width="8"/>
	</g>
	<defs>
		<clipPath id="clip0_544_61">
			<rect width="77" height="80" fill="white"/>
		</clipPath>
	</defs>
</svg>
`;
var $v = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-CloudWatch_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#B0084D" offset="0%"></stop>
            <stop stop-color="#FF4F8B" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-CloudWatch_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Management-Governance" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M18.9074368,18.522369 L16.9527886,16.7879726 C16.8210145,16.9276688 16.6782593,17.0526083 16.5285161,17.1726289 L18.5220975,18.9453925 C18.6388972,19.048689 18.8235806,19.0408188 18.9303974,18.9227657 C19.0352176,18.8086477 19.0252348,18.627633 18.9074368,18.522369 M14.0248095,17.0831053 C15.6769763,17.0831053 17.0196739,15.7589433 17.0196739,14.1317785 C17.0196739,12.5046136 15.6769763,11.1804516 14.0248095,11.1804516 C12.3736409,11.1804516 11.0299451,12.5046136 11.0299451,14.1317785 C11.0299451,15.7589433 12.3736409,17.0831053 14.0248095,17.0831053 M19.6721255,19.5818954 C19.417562,19.8593201 19.0651663,20 18.7137689,20 C18.4062961,20 18.0988234,19.8937522 17.8542428,19.6763378 L15.6510209,17.7186243 C15.1528751,17.9380063 14.6048149,18.0668809 14.0248095,18.0668809 C11.8225858,18.0668809 10.0316569,16.3019875 10.0316569,14.1317785 C10.0316569,11.9625532 11.8225858,10.196676 14.0248095,10.196676 C16.2270331,10.196676 18.017962,11.9625532 18.017962,14.1317785 C18.017962,14.8017297 17.8312821,15.4234758 17.5307974,15.9763577 L19.5762898,17.7924075 C20.1013894,18.2606847 20.1443158,19.0634456 19.6721255,19.5818954 M6.53764845,14.1317785 L9.03336879,14.1317785 L9.03336879,15.1155541 L6.53764845,15.1155541 C5.3127489,15.1155541 4,13.9596177 4,12.2389942 C4,10.8459679 4.75171097,9.77660381 6.03251465,9.30832662 C6.03151636,9.27389447 6.03151636,9.23847855 6.03151636,9.2040464 C6.03151636,7.60934613 7.12963331,5.95463555 8.58713399,5.3555162 C10.2832255,4.65506796 12.0871322,5.00234075 13.4008794,6.28518415 C13.7492819,6.62458674 14.0437769,7.02498342 14.2813695,7.4814553 C14.6028183,7.28273263 14.9731832,7.17451731 15.3585224,7.17451731 C16.2619732,7.17451731 17.2722408,7.81593901 17.5048419,9.21388416 C18.7596901,9.54246521 19.9726102,10.4829547 19.9726102,12.2606372 C19.9726102,12.6334882 19.9206992,12.9876474 19.815879,13.3113096 L18.8645104,13.0142094 C18.9373854,12.7859734 18.9743221,12.5331431 18.9743221,12.2606372 C18.9743221,10.6147806 17.5637409,10.2035624 16.95778,10.1032173 C16.8250077,10.0805905 16.7072097,10.0077911 16.6313398,9.89859199 C16.5544716,9.79037667 16.524523,9.65559941 16.5504785,9.52574103 C16.4736103,8.54196541 15.8596631,8.15829292 15.3585224,8.15829292 C15.0270908,8.15829292 14.7146266,8.31963213 14.5009929,8.60099195 C14.3911812,8.74560697 14.2154825,8.81545504 14.0268061,8.7928282 C13.8461159,8.76626625 13.6933778,8.6432943 13.6314839,8.47310112 C13.4128588,7.87594932 13.0993964,7.37422376 12.6990828,6.98366484 C12.2099216,6.50751744 10.8652275,5.4804557 8.97247321,6.26354109 C7.88234257,6.71115899 7.0298045,8.00285638 7.0298045,9.2040464 C7.0298045,9.33882366 7.03679251,9.47163337 7.05376341,9.60050798 C7.07273089,9.74118789 7.02880621,9.8818678 6.93396884,9.98811557 C6.86009551,10.0707527 6.7602667,10.1258442 6.65245158,10.1465034 C6.02353005,10.3088264 4.99828814,10.7957953 4.99828814,12.2389942 C4.99828814,13.3545957 5.80989639,14.1317785 6.53764845,14.1317785" id="Amazon-CloudWatch_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Hv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-CloudFront_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#4D27A8" offset="0%"></stop>
            <stop stop-color="#A166FF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-CloudFront_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Networking-Content-Delivery" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M16,15.4980737 C16,15.2219556 15.775,14.9978597 15.5,14.9978597 C15.225,14.9978597 15,15.2219556 15,15.4980737 C15,15.7741919 15.225,15.9982877 15.5,15.9982877 C15.775,15.9982877 16,15.7741919 16,15.4980737 M17,15.4980737 C17,16.3254277 16.327,16.9987158 15.5,16.9987158 C14.673,16.9987158 14,16.3254277 14,15.4980737 C14,14.6707197 14.673,13.9974316 15.5,13.9974316 C16.327,13.9974316 17,14.6707197 17,15.4980737 M9,11.4963614 C9,11.2202433 8.775,10.9961474 8.5,10.9961474 C8.225,10.9961474 8,11.2202433 8,11.4963614 C8,11.7724796 8.225,11.9965755 8.5,11.9965755 C8.775,11.9965755 9,11.7724796 9,11.4963614 M10,11.4963614 C10,12.3237155 9.327,12.9970035 8.5,12.9970035 C7.673,12.9970035 7,12.3237155 7,11.4963614 C7,10.6690074 7.673,9.99571934 8.5,9.99571934 C9.327,9.99571934 10,10.6690074 10,11.4963614 M12,7.49464918 C12,7.77076733 12.225,7.99486321 12.5,7.99486321 C12.775,7.99486321 13,7.77076733 13,7.49464918 C13,7.21853103 12.775,6.99443515 12.5,6.99443515 C12.225,6.99443515 12,7.21853103 12,7.49464918 M11,7.49464918 C11,6.66729517 11.673,5.99400708 12.5,5.99400708 C13.327,5.99400708 14,6.66729517 14,7.49464918 C14,8.32200319 13.327,8.99529128 12.5,8.99529128 C11.673,8.99529128 11,8.32200319 11,7.49464918 M19,11.9965755 C19,9.73960976 17.903,7.63971125 16.101,6.33215177 C15.917,6.27312651 15.407,6.42319072 14.566,6.78434525 C14.415,6.84837265 14.287,6.90239576 14.197,6.93540989 L13.857,5.99400708 C13.935,5.96699552 14.044,5.91897498 14.173,5.86395143 C14.394,5.76991119 14.611,5.67987267 14.823,5.59983842 C13.939,5.20867105 12.979,4.99357901 12,4.99357901 C11.313,4.99357901 10.642,5.09162097 10.002,5.28470358 C9.956,5.29770915 9.915,5.32071899 9.87,5.33472499 C10.22,5.46578106 10.637,5.6348534 11.132,5.85694844 L10.724,6.76933883 C9.518,6.22810725 8.828,6.02702121 8.507,5.9519891 C6.692,7.00443943 5.429,8.82721936 5.104,10.9291187 C5.426,10.8871007 5.751,10.86209 6.097,10.8530862 L6.122,11.8535143 C5.725,11.8635185 5.363,11.9055365 5.001,11.9645618 C5.001,11.9745661 5,11.9855708 5,11.9965755 C5,14.29756 6.125,16.4174671 7.976,17.7180236 C7.775,17.0167235 7.604,16.1773644 7.604,15.3310022 C7.604,15.1749354 7.599,15.0098648 7.594,14.8427933 C7.578,14.3655891 7.562,13.8723781 7.65,13.4231859 L8.631,13.6162685 C8.564,13.9534128 8.579,14.388599 8.593,14.8097792 C8.599,14.9888558 8.604,15.1639307 8.604,15.3310022 C8.604,16.2293866 8.853,17.3548682 9.277,18.4433339 C10.504,18.9595548 11.859,19.1086186 13.154,18.8935266 C13.266,18.6874384 13.402,18.4783489 13.546,18.2662582 C13.76,17.9501229 13.981,17.6239833 14.067,17.3278566 L15.028,17.6069761 C14.938,17.9191096 14.774,18.2012303 14.601,18.4743472 C15.199,18.2352449 15.768,17.934116 16.279,17.5369461 C18.009,16.1983734 19,14.1785091 19,11.9965755 M20,11.9965755 C20,14.4906426 18.867,16.7986302 16.892,18.3272843 C16.193,18.8695163 15.416,19.2876952 14.582,19.5688155 C13.76,19.8539375 12.89,20 12,20 C10.686,20 9.381,19.6718596 8.225,19.0525946 C5.619,17.6569975 4,14.9538408 4,11.9965755 C4,11.8315048 4.004,11.6674346 4.018,11.5063657 C4.212,8.17393984 6.502,5.28270273 9.715,4.32629349 C11.729,3.71903366 14.052,3.96513896 15.91,5.01658886 C18.433,6.43019372 20,9.10433794 20,11.9965755 M11.075,8.93526559 L10.419,8.18194326 C9.903,8.63013503 9.765,8.86023349 9.534,9.24039615 C9.467,9.35144367 9.389,9.48149932 9.285,9.64056738 L10.123,10.1858007 C10.233,10.0157279 10.317,9.87766883 10.39,9.75861789 C10.594,9.42147363 10.678,9.28241413 11.075,8.93526559 M10.649,11.3663058 L10.325,12.3117103 C11.438,12.6948743 12.411,13.3071362 13.387,14.2375343 L14.076,13.5132244 C12.993,12.4797822 11.904,11.7974903 10.649,11.3663058 M13.285,9.07432509 L14.121,8.52509009 C15.083,9.99271806 15.624,11.6044077 15.73,13.3161401 L14.732,13.3781666 C14.638,11.8425096 14.15,10.3938897 13.285,9.07432509" id="Amazon-CloudFront_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Uv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Cognito_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#BD0816" offset="0%"></stop>
            <stop stop-color="#FF5252" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Cognito_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Security-Identity-Compliance" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M15.188,16.891 L13.938,15.891 L14.563,15.11 L15.387,15.769 L17.084,13.223 L17.917,13.778 L15.917,16.778 C15.838,16.894 15.715,16.973 15.578,16.995 C15.551,16.998 15.526,17 15.5,17 C15.388,17 15.278,16.962 15.188,16.891 L15.188,16.891 Z M6,12 L8,12 L8,11 L6,11 L6,12 Z M6.001,10 L9.001,10 L9.001,9 L6.001,9 L6.001,10 Z M18.001,7 L18.001,6.5 C18.001,6.224 17.777,6 17.501,6 L10.501,6 C10.224,6 10.001,6.224 10.001,6.5 L10.001,7 L5,7 L5,5.6 C5,5.281 5.198,5 5.422,5 L18.578,5 C18.803,5 19.001,5.281 19.001,5.6 L19.001,7 L18.001,7 Z M15.625,12 C17.487,12 19.001,13.571 19.001,15.5 C19.001,17.43 17.487,19 15.625,19 C13.764,19 12.25,17.43 12.25,15.5 C12.25,13.571 13.764,12 15.625,12 L15.625,12 Z M20,12 L20,5.6 C20,4.718 19.362,4 18.578,4 L5.422,4 C4.638,4 4,4.718 4,5.6 L4,14.4 C4,15.283 4.638,16 5.422,16 L11.299,16 C11.545,18.244 13.379,20 15.625,20 C18.038,20 20,17.982 20,15.5 C20,13.019 18.038,11 15.625,11 C13.379,11 11.545,12.757 11.299,15 L5.422,15 C5.198,15 5,14.72 5,14.4 L5,8 L10.001,8 L10.001,12 L11.001,12 L11.001,8 L11.001,7 L17,7 L17,8 L17,10 L18.001,10 L18.001,8 L19.001,8 L19.001,12 L20,12 Z" id="Amazon-Cognito_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Vv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-DynamoDB_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#2E27AD" offset="0%"></stop>
            <stop stop-color="#527FFF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-DynamoDB_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Database" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M14.3871979,13.0634319 L15.4218955,9.61738691 C15.468467,9.46474602 15.4391067,9.29896386 15.3439388,9.17058378 C15.2487709,9.04220369 15.0979197,8.96739955 14.9379567,8.96739955 L14.2383715,8.96739955 L15.2507958,6.94566591 L17.7798316,6.94566591 L16.9881159,9.313116 C16.9374946,9.46676775 16.9628052,9.63659338 17.0589856,9.76800607 C17.153141,9.90042962 17.3060171,9.97826636 17.4690174,9.97826636 L18.095708,9.97826636 L14.3871979,13.0634319 Z M19.9697053,9.29997473 C19.8968108,9.10083397 19.7074875,8.96739955 19.4938659,8.96739955 L18.1706274,8.96739955 L18.9623432,6.59994946 C19.0129644,6.4462977 18.9876538,6.27647207 18.8914735,6.14404852 C18.7963056,6.01263584 18.644442,5.93479909 18.4814417,5.93479909 L14.9379567,5.93479909 C14.7455961,5.93479909 14.5714591,6.04296184 14.485403,6.21379833 L12.9667666,9.24639879 C12.88881,9.40308314 12.8958969,9.58908264 12.9880275,9.73768006 C13.0811706,9.88728835 13.2441709,9.97826636 13.4193203,9.97826636 L14.2576076,9.97826636 L12.9343691,14.3816022 C12.8705863,14.595906 12.9536051,14.8253728 13.1409036,14.9486985 C13.2259472,15.0042962 13.3221275,15.0326005 13.4193203,15.0326005 C13.5347366,15.0326005 13.6491406,14.9931766 13.743296,14.9153399 L19.8178417,9.86100581 C19.980842,9.72453879 20.0425999,9.50113723 19.9697053,9.29997473 L19.9697053,9.29997473 Z M14.8346894,17.6285064 C14.8346894,18.0904726 13.2775809,18.9891332 10.4235568,18.9891332 C7.56953281,18.9891332 6.01242428,18.0904726 6.01242428,17.6285064 L6.01242428,16.562042 C7.04914673,17.1786707 8.74293255,17.495072 10.4235568,17.495072 C12.1041811,17.495072 13.797967,17.1786707 14.8346894,16.562042 L14.8346894,17.6285064 Z M14.8346894,15.1235785 C14.8346894,15.5855446 13.2775809,16.4842052 10.4235568,16.4842052 C7.56953281,16.4842052 6.01242428,15.5855446 6.01242428,15.1235785 C6.01242428,15.0275461 6.08633125,14.9133182 6.21187186,14.7950468 C7.21214704,15.316654 8.74698225,15.6239575 10.4235568,15.6239575 C10.4438053,15.6239575 11.9948393,15.5916098 11.9948393,15.5916098 L11.9948393,14.580743 C11.9745908,14.580743 10.4235568,14.6130907 10.4235568,14.6130907 C8.77128043,14.6130907 7.24656947,14.2886025 6.44574187,13.7680061 C6.17542458,13.5900935 6.0134367,13.3980288 6.01242428,13.252464 L6.01242428,12.1859995 C7.04914673,12.8026283 8.74293255,13.1200404 10.4235568,13.1200404 C10.6898244,13.1200404 11.8348763,13.0391711 12.1922621,13.0138994 L12.213523,12.5054334 L12.1203799,12.0050543 C11.7761557,12.0293151 10.6786878,12.1091736 10.4235568,12.1091736 C7.56953281,12.1091736 6.01242428,11.2095021 6.01242428,10.747536 C6.01242428,10.6474602 6.09139337,10.5281779 6.22503337,10.405863 C7.01877401,10.7566338 8.57183285,11.1508719 12.3178027,11.1963609 L12.3299518,10.1854941 C9.27951741,10.1491029 7.3437622,9.88223402 6.44574187,9.39095274 C6.17542458,9.21304018 6.0134367,9.02097549 6.01242428,8.87541066 L6.01242428,7.80995704 C7.04914673,8.4265858 8.74293255,8.74298711 10.4235568,8.74298711 C10.5015135,8.74298711 12.480803,8.70659591 12.5587596,8.70356331 L12.5152254,7.69370735 C12.4079084,7.69775082 10.5187247,7.73212029 10.4235568,7.73212029 C7.56953281,7.73212029 6.01242428,6.83345969 6.01242428,6.37149356 C6.01242428,5.90952742 7.56953281,5.01086682 10.4235568,5.01086682 C11.7447705,5.01086682 13.0001766,5.21809452 13.8668118,5.5809957 L14.25862,4.64796563 C13.2573324,4.23047763 11.8956217,4 10.4235568,4 C7.72949585,4 5.00101242,4.81374779 5,6.36947182 L5,8.88147587 C5,8.88147587 5.09213061,9.46070255 5.40092001,9.80742987 C5.08808091,10.1551681 5,10.4938084 5,10.7465251 L5,13.2625727 C5.00101242,13.510235 5.09213061,13.8438211 5.39788274,14.1875158 C5.08808091,14.5342431 5,14.8718726 5,15.1235785 L5,17.6335608 C5.00506212,19.1872631 7.7315207,20 10.4235568,20 C13.1186303,20 15.8471137,19.1862522 15.8471137,17.6305282 L15.8471137,15.1235785 L14.8346894,15.1235785 Z" id="Amazon-DynamoDB_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var zv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Elastic-Block-Store_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#1B660F" offset="0%"></stop>
            <stop stop-color="#6CAE3E" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Elastic-Block-Store_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Storage" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M19,16.5 L20,16.5 L20,20 L16.5,20 L16.5,19 L18.293,19 L16.646,17.354 L17.354,16.646 L19,18.293 L19,16.5 Z M6.707,19 L8.5,19 L8.5,20 L5,20 L5,16.5 L6,16.5 L6,18.293 L7.646,16.646 L8.354,17.354 L6.707,19 Z M20,4 L20,7.5 L19,7.5 L19,5.707 L17.354,7.354 L16.646,6.646 L18.293,5 L16.5,5 L16.5,4 L20,4 Z M5,4 L8.5,4 L8.5,5 L6.707,5 L8.354,6.646 L7.646,7.354 L6,5.707 L6,7.5 L5,7.5 L5,4 Z M12.561,15.5 C11.004,15.5 10.17,15.156 10.092,14.996 L10.082,10.053 C10.875,10.342 11.952,10.391 12.561,10.391 C13.161,10.391 14.216,10.337 15.002,10.051 L15.011,14.946 C14.896,15.14 13.955,15.5 12.561,15.5 L12.561,15.5 Z M14.943,8.994 C14.708,9.151 13.956,9.391 12.561,9.391 C11.031,9.391 10.271,9.108 10.119,9.009 C10.322,8.809 11.216,8.5 12.561,8.5 C13.78,8.5 14.684,8.796 14.943,8.994 L14.943,8.994 Z M12.561,7.5 C11.272,7.5 9.092,7.814 9.092,8.992 L9.092,14.996 C9.092,16.392 11.747,16.5 12.561,16.5 C13.838,16.5 16,16.183 16,14.996 L16,8.992 C16,7.812 13.75,7.5 12.561,7.5 L12.561,7.5 Z" id="Amazon-Elastic-Block-Store_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Gv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-EC2_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#C8511B" offset="0%"></stop>
            <stop stop-color="#FF9900" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-EC2_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Compute" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M15,9 L14,9 L13,9 L12,9 L11,9 L10,9 L10,10 L10,11 L10,12 L10,13 L10,14 L11,14 L12,14 L13,14 L14,14 L15,14 L15,13 L15,12 L15,11 L15,10 L15,9 Z M16,9 L17,9 L17,10 L16,10 L16,11 L17,11 L17,12 L16,12 L16,13 L17,13 L17,14 L16,14 L16,14.308 C16,14.689 15.689,15 15.308,15 L15,15 L15,16 L14,16 L14,15 L13,15 L13,16 L12,16 L12,15 L11,15 L11,16 L10,16 L10,15 L9.692,15 C9.311,15 9,14.689 9,14.308 L9,14 L8,14 L8,13 L9,13 L9,12 L8,12 L8,11 L9,11 L9,10 L8,10 L8,9 L9,9 L9,8.692 C9,8.311 9.311,8 9.692,8 L10,8 L10,7 L11,7 L11,8 L12,8 L12,7 L13,7 L13,8 L14,8 L14,7 L15,7 L15,8 L15.308,8 C15.689,8 16,8.311 16,8.692 L16,9 Z M12,19 L5,19 L5,13 L7,13 L7,12 L4.8,12 C4.358,12 4,12.342 4,12.762 L4,19.219 C4,19.65 4.351,20 4.781,20 L12.2,20 C12.642,20 13,19.658 13,19.238 L13,17 L12,17 L12,19 Z M20,4.781 L20,12.219 C20,12.65 19.649,13 19.219,13 L18,13 L18,12 L19,12 L19,5 L12,5 L12,6 L11,6 L11,4.781 C11,4.35 11.351,4 11.781,4 L19.219,4 C19.649,4 20,4.35 20,4.781 L20,4.781 Z" id="Amazon-EC2_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var jv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Elastic-Container-Service_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#C8511B" offset="0%"></stop>
            <stop stop-color="#FF9900" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Elastic-Container-Service_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Compute" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <g id="Icon-Service/16/Amazon-Elastic-Container-Service" transform="translate(4.000000, 4.000000)" fill="#FFFFFF">
            <path d="M14.9951095,10.0569914 L13.036578,8.5362249 L13.036578,5.70726144 C13.036578,5.5354178 12.9471428,5.37549395 12.7994239,5.28510221 L9.99577946,3.56765916 L9.99577946,1.38435098 L14.9951095,4.31065939 L14.9951095,10.0569914 Z M15.7538018,3.60043858 L9.7495813,0.0850938804 C9.59482816,-0.00529785955 9.4008843,-0.0072844912 9.24412139,0.0811206171 C9.08836337,0.169525725 8.99088899,0.333422836 8.99088899,0.512219684 L8.99088899,3.84380096 C8.99088899,4.01564459 9.08132914,4.17556844 9.22804314,4.26596018 L12.0316875,5.98340324 L12.0316875,8.77760065 C12.0316875,8.92957797 12.1030348,9.07360876 12.2246265,9.16797377 L15.1870436,11.4704798 C15.2774838,11.5410053 15.3860119,11.5767646 15.4975548,11.5767646 C15.5719167,11.5767646 15.6472834,11.5598783 15.7166209,11.5261055 C15.889462,11.4436603 16,11.26983 16,11.0801067 L16,4.02756438 C16,3.85174748 15.9065452,3.68884369 15.7538018,3.60043858 L15.7538018,3.60043858 Z M8.53466872,14.959005 L2.00489047,11.6701363 L2.00489047,4.30966608 L6.9871374,1.37143787 L6.9871374,3.55573937 L4.24780599,5.27020248 C4.10310176,5.36158753 4.0146714,5.51952475 4.0146714,5.69037507 L4.0146714,10.2566479 C4.0146714,10.4453779 4.12219468,10.6172216 4.29403095,10.7016534 L8.25631406,12.6425925 C8.39699873,12.7121246 8.56481544,12.710138 8.70650499,12.6396126 L11.816641,11.0751401 L13.9058083,12.8154295 L8.53466872,14.959005 Z M12.2085483,10.1036773 C12.0558049,9.97553953 11.8357339,9.95169995 11.6568634,10.0410984 L8.47538018,11.6413302 L5.01956187,9.94872 L5.01956187,5.96254361 L7.75788839,4.2480805 C7.90359751,4.15669544 7.99202787,3.99875822 7.99202787,3.8279079 L7.99202787,0.497319947 C7.99202787,0.318523099 7.89455349,0.153632672 7.73779058,0.0652275639 C7.57901789,-0.0241708602 7.38507403,-0.0211909127 7.23233068,0.0711874588 L1.24519327,3.60043858 C1.09345481,3.689837 1,3.85174748 1,4.02756438 L1,11.974091 C1,12.1608343 1.1055135,12.3316847 1.2743351,12.4161165 L8.28244121,15.9463609 C8.35278355,15.9821203 8.431165,16 8.51055135,16 C8.57385945,16 8.63716755,15.9880802 8.69846587,15.9642406 L15.0564079,13.4283053 C15.2192001,13.3627465 15.3367723,13.2177224 15.3649092,13.0448854 C15.3920413,12.8730418 15.3267234,12.6992115 15.1920681,12.5869668 L12.2085483,10.1036773 Z" id="Amazon-Elastic-Container-Service_Icon_16_Squid"></path>
        </g>
    </g>
</svg>`;
var ru = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Elastic-File-System_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#1B660F" offset="0%"></stop>
            <stop stop-color="#6CAE3E" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Elastic-File-System_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Storage" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M19,18.293 L17.354,16.647 L16.646,17.354 L18.293,19 L17,19 L17,20 L19.5,20 C19.776,20 20,19.776 20,19.5 L20,17 L19,17 L19,18.293 Z M6.646,16.647 L5,18.293 L5,17 L4,17 L4,19.5 C4,19.776 4.224,20 4.5,20 L7,20 L7,19 L5.707,19 L7.354,17.354 L6.646,16.647 Z M19.5,4 L17,4 L17,5 L18.293,5 L16.646,6.647 L17.354,7.354 L19,5.707 L19,7 L20,7 L20,4.5 C20,4.224 19.776,4 19.5,4 L19.5,4 Z M5,5.707 L6.646,7.354 L7.354,6.647 L5.707,5 L7,5 L7,4 L4.5,4 C4.224,4 4,4.224 4,4.5 L4,7 L5,7 L5,5.707 Z M15,12.117 C15,12.088 14.976,12.062 14.962,12.048 C14.923,12.012 14.872,11.989 14.854,11.999 L11.487,12 C11.211,12 10.987,11.776 10.987,11.5 L10.987,11.493 L10.451,11.498 C10.449,11.506 10.448,11.513 10.447,11.52 C10.447,11.795 10.225,12 9.948,12 L9.25,12 C9.103,11.989 9.002,12.031 8.979,12.054 L8.998,16 L15,16 L15,12.117 Z M15.644,11.317 C15.874,11.532 16,11.815 16,12.117 L16,16.5 C16,16.776 15.776,17 15.5,17 L8.5,17 C8.224,17 8,16.776 8,16.5 L8,12 C8,11.742 8.105,11.501 8.297,11.323 C8.584,11.055 8.992,10.981 9.284,11.001 L9.555,11.001 C9.649,10.751 9.827,10.5 10.156,10.5 L11.323,10.5 C11.637,10.557 11.803,10.779 11.89,11 L14.82,11 C15.096,10.974 15.41,11.099 15.644,11.317 L15.644,11.317 Z M16.131,10.972 C15.91,10.926 15.747,10.737 15.734,10.512 C15.687,9.71 15.266,9.425 14.918,9.425 C14.691,9.425 14.477,9.539 14.328,9.737 C14.218,9.884 14.035,9.959 13.854,9.932 C13.671,9.904 13.519,9.779 13.457,9.606 C13.292,9.144 13.055,8.757 12.752,8.458 C12.384,8.091 11.368,7.305 9.944,7.903 C9.141,8.241 8.486,9.251 8.486,10.155 C8.486,10.259 8.495,10.363 8.507,10.463 C8.538,10.713 8.377,10.948 8.131,11.009 C7.567,11.149 6.896,11.535 6.896,12.581 C6.896,12.582 6.9,12.709 6.9,12.709 C6.921,13.076 7.082,13.432 7.354,13.704 L6.646,14.411 C6.201,13.965 5.937,13.378 5.901,12.758 L5.896,12.581 C5.896,11.444 6.482,10.567 7.486,10.168 L7.486,10.155 C7.486,8.841 8.377,7.477 9.559,6.981 C10.936,6.404 12.393,6.692 13.456,7.748 C13.712,8.001 13.932,8.296 14.113,8.629 C14.996,8.154 16.402,8.511 16.688,10.083 C17.951,10.46 18.641,11.342 18.641,12.595 C18.641,13.72 18.123,14.543 17.184,14.914 L16.816,13.983 C17.379,13.762 17.641,13.32 17.641,12.595 C17.641,12.272 17.641,11.29 16.131,10.972 L16.131,10.972 Z" id="Amazon-Elastic-File-System_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Zv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-ElastiCache_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#2E27AD" offset="0%"></stop>
            <stop stop-color="#527FFF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-ElastiCache_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Database" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M10,13 L15,13 L15,11 L10,11 L10,13 Z M10,16 L15,16 L15,14 L10,14 L10,16 Z M10,19 L15,19 L15,17 L10,17 L10,19 Z M16,10.5 L16,19.5 C16,19.777 15.776,20 15.5,20 L9.5,20 C9.224,20 9,19.777 9,19.5 L9,10.5 C9,10.224 9.224,10 9.5,10 L15.5,10 C15.776,10 16,10.224 16,10.5 L16,10.5 Z M17,12 L18,12 L18,6.5 C18,6.224 17.776,6 17.5,6 L15.5,6 C15.224,6 15,6.224 15,6.5 L15,9 L16,9 L16,7 L17,7 L17,12 Z M14,9 L14,6.5 C14,6.224 13.776,6 13.5,6 L11.5,6 C11.224,6 11,6.224 11,6.5 L11,9 L12,9 L12,7 L13,7 L13,9 L14,9 Z M9,9 L10,9 L10,6.5 C10,6.224 9.776,6 9.5,6 L7.5,6 C7.224,6 7,6.224 7,6.5 L7,12 L8,12 L8,7 L9,7 L9,9 Z M20,4.5 L20,14.5 C20,14.777 19.776,15 19.5,15 L17,15 L17,14 L19,14 L19,5 L6,5 L6,14 L8,14 L8,15 L5.5,15 C5.224,15 5,14.777 5,14.5 L5,4.5 C5,4.224 5.224,4 5.5,4 L19.5,4 C19.776,4 20,4.224 20,4.5 L20,4.5 Z" id="Amazon-ElastiCache_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Wv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-Elastic-Beanstalk_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#C8511B" offset="0%"></stop>
            <stop stop-color="#FF9900" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-Elastic-Beanstalk_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Compute" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M14.9985007,13.6428238 C14.9985007,13.373991 14.7736132,13.1558078 14.4987506,13.1558078 C14.2238881,13.1558078 13.9990005,13.373991 13.9990005,13.6428238 C13.9990005,13.9116567 14.2238881,14.1298398 14.4987506,14.1298398 C14.7736132,14.1298398 14.9985007,13.9116567 14.9985007,13.6428238 M11.0004998,9.7466957 C11.0004998,10.0155285 11.2253873,10.2337117 11.5002499,10.2337117 C11.7751124,10.2337117 12,10.0155285 12,9.7466957 C12,9.47786286 11.7751124,9.25967968 11.5002499,9.25967968 C11.2253873,9.25967968 11.0004998,9.47786286 11.0004998,9.7466957 M8.001999,12.6687918 C8.001999,12.9376246 8.22688656,13.1558078 8.50174913,13.1558078 C8.77661169,13.1558078 9.00149925,12.9376246 9.00149925,12.6687918 C9.00149925,12.399959 8.77661169,12.1817758 8.50174913,12.1817758 C8.22688656,12.1817758 8.001999,12.399959 8.001999,12.6687918 M15.998001,13.6428238 C15.998001,14.2769187 15.5792104,14.8126363 14.9985007,15.0142609 L14.9985007,16.5649199 C14.9985007,16.8337528 14.7746127,17.0519359 14.4987506,17.0519359 L12,17.0519359 L12,19 L11.0004998,19 L11.0004998,16.0779039 L8.50174913,16.0779039 C8.22588706,16.0779039 8.001999,15.8597207 8.001999,15.5908879 L8.001999,14.0402289 C7.42128936,13.8386043 7.00249875,13.3028866 7.00249875,12.6687918 C7.00249875,11.8632673 7.67516242,11.2077437 8.50174913,11.2077437 C9.32833583,11.2077437 10.0009995,11.8632673 10.0009995,12.6687918 C10.0009995,13.3028866 9.5822089,13.8386043 9.00149925,14.0402289 L9.00149925,15.1038719 L11.0004998,15.1038719 L11.0004998,11.1181328 C10.4197901,10.9165082 10.0009995,10.3807906 10.0009995,9.7466957 C10.0009995,8.94117121 10.6736632,8.28564765 11.5002499,8.28564765 C12.3268366,8.28564765 12.9995002,8.94117121 12.9995002,9.7466957 C12.9995002,10.3807906 12.5807096,10.9165082 12,11.1181328 L12,16.0779039 L13.9990005,16.0779039 L13.9990005,15.0142609 C13.4182909,14.8126363 12.9995002,14.2769187 12.9995002,13.6428238 C12.9995002,12.8372993 13.6721639,12.1817758 14.4987506,12.1817758 C15.3253373,12.1817758 15.998001,12.8372993 15.998001,13.6428238 M20,12.0590477 C20,13.8054872 18.8965517,14.9392605 17.0504748,15.0892614 L16.9665167,14.1191255 C17.894053,14.043151 19.0004998,13.6243172 19.0004998,12.0590477 C19.0004998,10.9369628 18.3148426,10.2337117 16.9635182,9.96974904 C16.7406297,9.92591759 16.5767116,9.74182554 16.5627186,9.52072027 C16.4987506,8.45805132 15.888056,8.08207496 15.3843078,8.08207496 C15.0474763,8.08207496 14.7306347,8.23889412 14.5167416,8.51357115 C14.4067966,8.65480579 14.2218891,8.7249361 14.0449775,8.7005853 C13.864068,8.6733124 13.7131434,8.55350646 13.6501749,8.38694698 C13.4312844,7.80739793 13.1174413,7.32232997 12.7186407,6.94635361 C12.2278861,6.48174033 10.8795602,5.48530556 8.97751124,6.24505055 C7.88805597,6.67752077 7.03448276,7.9281779 7.03448276,9.09312021 C7.03448276,9.22169244 7.04247876,9.3512387 7.05847076,9.47786286 C7.08945527,9.7223449 6.92853573,9.9502684 6.68265867,10.0106584 C6.05397301,10.1616333 4.99950025,10.6272207 4.99950025,12.037619 L5.00449775,12.1652172 C5.06246877,13.1850288 5.93203398,14.011982 7.02848576,14.1181515 L6.93053473,15.0873133 C5.34732634,14.9353643 4.09095452,13.7139282 4.007996,12.2470359 L4,12.037619 C4,10.6827405 4.75262369,9.64150024 6.03598201,9.18467922 C6.03498251,9.15448423 6.03498251,9.1233152 6.03498251,9.09312021 C6.03498251,7.53466896 7.13743128,5.92361998 8.59970015,5.34309689 C10.2988506,4.66614462 12.0989505,5.00315971 13.4132934,6.24602458 C13.7631184,6.57524741 14.0589705,6.96583425 14.2978511,7.40999286 C14.6216892,7.21323839 14.9945027,7.10804293 15.3843078,7.10804293 C16.2858571,7.10804293 17.2903548,7.73337149 17.5192404,9.09701634 C19.1224388,9.52072027 20,10.5619605 20,12.0590477" id="AWS-Elastic-Beanstalk_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var qv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Glacier_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#1B660F" offset="0%"></stop>
            <stop stop-color="#6CAE3E" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Glacier_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Storage" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <polygon id="Amazon-Glacier_Icon_16_Squid" fill="#FFFFFF" points="18.3212076 12 20 13.6022806 19.2789148 14.2914755 17.3889984 12.4867195 13.3827429 12.4867195 15.3858707 15.7973856 17.9683144 16.4573773 17.7051744 17.3977194 15.4103488 16.8107356 14.7963555 19 13.8100904 18.7488527 14.5026178 16.2831317 12.50051 12.973439 10.4984021 16.2831317 11.1909295 18.7488527 10.2046644 19 9.58965119 16.8107356 7.29482559 17.3977194 7.03270551 16.4573773 9.61514925 15.7973856 11.618277 12.4867195 7.61202149 12.4867195 5.7210852 14.2914755 5 13.6022806 6.67981233 12 5 10.3977194 5.7210852 9.70852454 7.61202149 11.5132805 11.618277 11.5132805 9.61514925 8.20261438 7.03270551 7.54262272 7.29482559 6.60228063 9.58965119 7.18926436 10.2046644 5 11.1909295 5.25114727 10.4984021 7.71686831 12.50051 11.026561 14.5026178 7.71686831 13.8100904 5.25114727 14.7963555 5 15.4103488 7.18926436 17.7051744 6.60228063 17.9683144 7.54262272 15.3858707 8.20261438 13.3827429 11.5132805 17.3889984 11.5132805 19.2789148 9.70852454 20 10.3977194"></polygon>
    </g>
</svg>`;
var Kv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-Identity-and-Access-Management_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#BD0816" offset="0%"></stop>
            <stop stop-color="#FF5252" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-Identity-and-Access-Management_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Security-Identity-Compliance" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M5,18 L19,18 L19,7 L5,7 L5,18 Z M20,6.5 L20,18.5 C20,18.776 19.776,19 19.5,19 L4.5,19 C4.224,19 4,18.776 4,18.5 L4,6.5 C4,6.224 4.224,6 4.5,6 L19.5,6 C19.776,6 20,6.224 20,6.5 L20,6.5 Z M7,14.998 L10.998,15 L11,12.002 L7.002,12 L7,14.998 Z M8,11 L10,11.001 L10,9.854 C10,9.264 9.645,8.939 9,8.939 L8.999,8.939 C8.67,8.939 8.407,9.027 8.239,9.193 C8.042,9.388 8.001,9.659 8.001,9.852 L8,11 Z M6.146,15.852 C6.053,15.758 6,15.63 6,15.498 L6.002,11.5 C6.002,11.224 6.226,11 6.502,11 L7,11 L7.001,9.852 C7.001,9.301 7.187,8.827 7.537,8.481 C7.896,8.127 8.401,7.939 8.999,7.939 L9,7.939 C10.196,7.939 11,8.708 11,9.854 L11,11.002 L11.5,11.002 C11.633,11.002 11.76,11.055 11.854,11.148 C11.947,11.242 12,11.37 12,11.502 L11.998,15.5 C11.998,15.776 11.774,16 11.498,16 L6.5,15.998 C6.367,15.998 6.24,15.945 6.146,15.852 L6.146,15.852 Z M14,14 L16,14 L16,13 L14,13 L14,14 Z M14,11 L18,11 L18,10 L14,10 L14,11 Z" id="AWS-Identity-and-Access-Management_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Yv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Kinesis_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#4D27A8" offset="0%"></stop>
            <stop stop-color="#A166FF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Kinesis_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Analytics" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M6.7337492,17.8414023 L7.72616432,17.8414023 C7.72616432,16.9338898 7.72616432,14.8073456 19,14.8073456 L19,13.8056761 C8.21939463,13.8056761 6.7337492,15.7449082 6.7337492,17.8414023 M8.03778266,20 L9.03019777,20 C9.03019777,18.9632721 9.03019777,16.5342237 19,16.5342237 L19,15.5325543 C9.3408237,15.5325543 8.03778266,17.7903172 8.03778266,20 M5.99241511,9.38931553 L5,9.38931553 C5,10.8287145 5.99340753,11.9105175 9.81718296,12.4994992 C5.99340753,13.0894825 5,14.1712855 5,15.6096828 L5.99241511,15.6096828 C5.99241511,14.3956594 7.47111363,13.0003339 19,13.0003339 L19,11.9986644 C7.47111363,11.9986644 5.99241511,10.6043406 5.99241511,9.38931553 M7.72616432,7.15859766 L6.7337492,7.15859766 C6.7337492,9.25409015 8.21939463,11.1943239 19,11.1943239 L19,10.1926544 C7.72616432,10.1926544 7.72616432,8.06611018 7.72616432,7.15859766 M19,8.46577629 L19,9.46744574 C9.3408237,9.46744574 8.03778266,7.20868114 8.03778266,5 L9.03019777,5 C9.03019777,6.03672788 9.03019777,8.46577629 19,8.46577629" id="Amazon-Kinesis_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Xv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-Lambda_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#C8511B" offset="0%"></stop>
            <stop stop-color="#FF9900" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-Lambda_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Compute" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M8.35471698,19 L5.33377354,19 L8.87677893,11.806 L10.3893141,14.832 L8.35471698,19 Z M9.3369363,10.435 C9.25026989,10.262 9.06971487,10.153 8.87265196,10.153 L8.87058847,10.153 C8.67352556,10.153 8.49297054,10.264 8.40733588,10.437 L4.05028527,19.285 C3.97393629,19.439 3.98528546,19.622 4.07917407,19.767 C4.17409443,19.912 4.33814156,20 4.51560135,20 L8.68074777,20 C8.8809059,20 9.06249267,19.889 9.14812734,19.714 L11.4282793,15.043 C11.4943109,14.907 11.4932791,14.748 11.4262158,14.611 L9.3369363,10.435 Z M18.968257,19 L15.7987426,19 L10.1747116,7.289 C10.0901087,7.113 9.90749017,7 9.70733203,7 L7.61598901,7 L7.6180525,5 L11.7883576,5 L17.386595,16.71 C17.471198,16.887 17.6548482,17 17.8550063,17 L18.968257,17 L18.968257,19 Z M19.4841285,16 L18.1841324,16 L12.5869267,4.29 C12.5023238,4.113 12.3186735,4 12.1174836,4 L7.10321275,4 C6.81845169,4 6.58734126,4.224 6.58734126,4.5 L6.58424603,7.5 C6.58424603,7.632 6.63892841,7.759 6.73591225,7.854 C6.83186434,7.947 6.9628957,8 7.10011752,8 L9.37820602,8 L15.002237,19.711 C15.0868399,19.887 15.2694584,20 15.4696166,20 L19.4841285,20 C19.7688896,20 20,19.776 20,19.5 L20,16.5 C20,16.224 19.7688896,16 19.4841285,16 L19.4841285,16 Z" id="AWS-Lambda_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Qv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Lightsail_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#C8511B" offset="0%"></stop>
            <stop stop-color="#FF9900" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Lightsail_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Compute" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M20,12.5 C20,16.636 16.636,20 12.5,20 C9.458,20 6.738,18.185 5.571,15.376 L6.495,14.992 C7.506,17.427 9.863,19 12.5,19 C16.084,19 19,16.084 19,12.5 C19,8.916 16.084,6 12.5,6 C9.826,6 7.386,7.677 6.429,10.173 L5.495,9.815 C6.6,6.935 9.415,5 12.5,5 C16.636,5 20,8.364 20,12.5 L20,12.5 Z M7,13 L10,13 L10,12 L7,12 L7,13 Z M4,13 L6,13 L6,12 L4,12 L4,13 Z M14.193,9.163 C14.792,10.014 15.392,11.192 15.392,12.501 C15.392,13.794 14.737,15.02 14.188,15.82 C13.856,14.343 13.213,13.192 12.331,12.501 C13.217,11.807 13.862,10.65 14.193,9.163 L14.193,9.163 Z M13.382,17.081 C13.402,17.277 13.537,17.443 13.725,17.504 C13.775,17.521 13.827,17.528 13.879,17.528 C14.018,17.528 14.153,17.47 14.25,17.363 C14.753,16.806 16.392,14.81 16.392,12.501 C16.392,10.33 15.051,8.521 14.251,7.636 C14.118,7.49 13.913,7.434 13.725,7.496 C13.537,7.557 13.403,7.723 13.383,7.919 C13.163,10 12.334,11.541 11.165,12.042 C10.981,12.12 10.862,12.301 10.862,12.501 C10.862,12.701 10.981,12.882 11.165,12.96 C12.334,13.462 13.162,15.002 13.382,17.081 L13.382,17.081 Z" id="Amazon-Lightsail-Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var Jv = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-RDS_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#2E27AD" offset="0%"></stop>
            <stop stop-color="#527FFF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-RDS_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Database" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M5.707,5 L7.853,7.146 L7.146,7.854 L5,5.707 L5,7.5 L4,7.5 L4,4.5 C4,4.224 4.224,4 4.5,4 L7.5,4 L7.5,5 L5.707,5 Z M7.853,16.854 L5.707,19 L7.5,19 L7.5,20 L4.5,20 C4.224,20 4,19.776 4,19.5 L4,16.5 L5,16.5 L5,18.293 L7.146,16.146 L7.853,16.854 Z M5,12 C5,12.75 5.966,13.542 7.519,14.069 L7.199,15.016 C5.166,14.328 4,13.228 4,12 C4,10.772 5.166,9.672 7.199,8.984 L7.519,9.931 C5.966,10.458 5,11.25 5,12 L5,12 Z M19,16.5 L20,16.5 L20,19.5 C20,19.776 19.776,20 19.5,20 L16.5,20 L16.5,19 L18.293,19 L16.146,16.854 L16.853,16.146 L19,18.293 L19,16.5 Z M20,4.5 L20,7.5 L19,7.5 L19,5.707 L16.853,7.854 L16.146,7.146 L18.293,5 L16.5,5 L16.5,4 L19.5,4 C19.776,4 20,4.224 20,4.5 L20,4.5 Z M20,12 C20,13.228 18.834,14.328 16.801,15.016 L16.48,14.069 C18.034,13.542 19,12.75 19,12 C19,11.25 18.034,10.458 16.48,9.931 L16.801,8.984 C18.834,9.672 20,10.772 20,12 L20,12 Z M12,15.402 C10.81,15.402 10.087,15.104 10,15.032 L10,10.651 C10.564,10.886 11.294,11 12,11 C12.708,11 13.439,10.886 14.004,10.65 L14.02,14.952 C13.913,15.104 13.19,15.402 12,15.402 L12,15.402 Z M12,9 C13.174,9 13.858,9.336 13.987,9.5 C13.858,9.664 13.174,10 12,10 C10.771,10 10.08,9.632 10,9.531 L10,9.521 C10.08,9.368 10.771,9 12,9 L12,9 Z M12,8 C10.555,8 9,8.469 9,9.5 L9,15.032 C9,15.979 10.507,16.402 12,16.402 C13.493,16.402 15,15.979 15,15.032 L15,9.5 C15,8.469 13.445,8 12,8 L12,8 Z" id="Amazon-RDS_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var eb = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Redshift_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#4D27A8" offset="0%"></stop>
            <stop stop-color="#A166FF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Redshift_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Analytics" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M14.4737051,10.7348035 C14.4737051,10.6013584 14.5788847,10.4925493 14.7078785,10.4925493 C14.8368724,10.4925493 14.9430443,10.6013584 14.9430443,10.7348035 C14.9430443,11.0016937 14.4737051,11.0016937 14.4737051,10.7348035 M13.2562016,13.756822 C13.2562016,13.6233768 13.3623735,13.5145678 13.4913673,13.5145678 C13.6203612,13.5145678 13.7245485,13.6233768 13.7245485,13.756822 C13.7245485,14.0247387 13.2562016,14.0247387 13.2562016,13.756822 M10.3349871,13.25281 C10.3349871,13.1193649 10.441159,13.0105559 10.5691605,13.0105559 C10.6981544,13.0105559 10.8043263,13.1193649 10.8043263,13.25281 C10.8043263,13.5207268 10.3349871,13.5207268 10.3349871,13.25281 M9.11847589,16.0233358 C9.11847589,15.8898907 9.22365549,15.7810816 9.35264934,15.7810816 C9.48164318,15.7810816 9.58583052,15.8898907 9.58583052,16.0233358 C9.58583052,16.290226 9.11847589,16.290226 9.11847589,16.0233358 M14.7078785,9.46604849 C14.0321492,9.46604849 13.4814447,10.0347299 13.4814447,10.7348035 C13.4814447,11.0899728 13.6253225,11.4092146 13.8525501,11.6401772 L13.5270887,12.4952524 C13.5141893,12.4952524 13.5032745,12.4880669 13.4913673,12.4880669 C13.0359198,12.4880669 12.6529073,12.7580366 12.4405636,13.1409215 L11.7420123,12.9766813 C11.6159952,12.4131324 11.1506251,11.984055 10.5691605,11.984055 C9.89343124,11.984055 9.34272673,12.5527365 9.34272673,13.25281 C9.34272673,13.5145678 9.43897599,13.7455304 9.57094662,13.9477511 L9.22762453,14.7802433 C8.6124231,14.8490188 8.12621552,15.3694548 8.12621552,16.0233358 C8.12621552,16.7234094 8.67592776,17.2920908 9.35264934,17.2920908 C10.0293709,17.2920908 10.5780909,16.7234094 10.5780909,16.0233358 C10.5780909,15.654822 10.4203215,15.3294212 10.1762254,15.097432 L10.4262751,14.4917965 C10.4748958,14.4989821 10.5185553,14.5215651 10.5691605,14.5215651 C10.9779718,14.5215651 11.3222862,14.3008674 11.5455448,13.9836786 L12.3453066,14.1715283 C12.5129986,14.6663017 12.9575313,15.025577 13.4913673,15.025577 C14.1670966,15.025577 14.7168089,14.455869 14.7168089,13.756822 C14.7168089,13.4478452 14.5967454,13.1737695 14.4181385,12.9530718 L14.7862671,11.9871345 C15.4242905,11.942995 15.9353046,11.4061351 15.9353046,10.7348035 C15.9353046,10.0347299 15.3846001,9.46604849 14.7078785,9.46604849 M12,18.9734992 C9.35562612,18.9734992 7.99226037,18.1461395 7.99226037,17.7930232 L7.99226037,8.59044328 C8.95276841,9.14885973 10.4808494,9.43730646 12,9.43730646 C13.5191506,9.43730646 15.0472316,9.14885973 16.0077396,8.59044328 L16.0077396,17.7930232 C16.0077396,18.1461395 14.6443739,18.9734992 12,18.9734992 M12,5.99236968 C14.4866045,5.99236968 16.0077396,6.77558981 16.0077396,7.20261416 C16.0077396,7.628612 14.4866045,8.41080563 12,8.41080563 C9.51339551,8.41080563 7.99226037,7.628612 7.99226037,7.20261416 C7.99226037,6.77558981 9.51339551,5.99236968 12,5.99236968 M17,7.20261416 C17,4.26579528 7,4.26579528 7,7.20261416 C7,7.20466716 7.00099226,7.20672016 7.00099226,7.20877316 L7,7.20877316 L7,17.7930232 C7,19.2424424 9.51538004,20 12,20 C14.48462,20 17,19.2424424 17,17.7930232 L17,7.20877316 L16.9990077,7.20877316 C16.9990077,7.20672016 17,7.20466716 17,7.20261416" id="Amazon-Redshift_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var tb = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <title>Icon-Architecture/16/Arch_Amazon-Simple-Storage-Service_16</title>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#1B660F" offset="0%"></stop>
            <stop stop-color="#6CAE3E" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Simple-Storage-Service_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Rectangle" fill="url(#linearGradient-1)">
            <rect x="0" y="0" width="24" height="24"></rect>
        </g>
        <g id="Icon-Service/16/Amazon-Simple-Storage-Service_16" transform="translate(4.000000, 4.000000)" fill="#FFFFFF">
            <path d="M13.9082,9.0508 L13.9492,8.8068 C14.2152,8.9598 14.4192,9.0888 14.5642,9.1918 C14.3942,9.1638 14.1662,9.1138 13.9082,9.0508 L13.9082,9.0508 Z M12.0492,14.0928 C11.9992,14.3958 10.9792,14.9998 7.4782,14.9998 C4.0442,14.9998 3.0432,14.3968 2.9932,14.0898 L1.2592,3.9648 C2.6962,4.6678 5.1522,4.9998 7.5002,4.9998 C9.8502,4.9998 12.3112,4.6658 13.7482,3.9618 L12.9402,8.7748 C11.3852,8.2668 9.5682,7.3978 8.6442,6.9548 L8.4742,6.8728 C8.4092,6.3838 8.0072,5.9998 7.5002,5.9998 C6.9482,5.9998 6.5002,6.4488 6.5002,6.9998 C6.5002,7.5508 6.9482,7.9998 7.5002,7.9998 C7.7212,7.9998 7.9142,7.9138 8.0792,7.7928 L8.2132,7.8568 C9.1842,8.3228 11.1192,9.2468 12.7732,9.7698 L12.0492,14.0928 Z M7.5002,0.9998 C11.7612,0.9998 13.9712,2.0368 14.0002,2.4898 L14.0002,2.5188 C13.9462,2.9768 11.7352,3.9998 7.5002,3.9998 C3.2702,3.9998 1.0592,2.9798 1.0002,2.5208 L1.0002,2.4888 C1.0302,2.0348 3.2422,0.9998 7.5002,0.9998 L7.5002,0.9998 Z M15.0002,2.4998 C15.0002,0.7818 11.1122,-0.0002 7.5002,-0.0002 C3.8872,-0.0002 0.0002,0.7818 0.0002,2.4998 L0.0472,2.8158 L2.0072,14.2548 C2.1972,15.4248 3.9362,15.9998 7.4782,15.9998 C12.2072,15.9998 12.9142,14.9908 13.0352,14.2568 L13.7422,10.0428 C14.3202,10.1828 14.7312,10.2388 15.0232,10.2388 C15.4852,10.2388 15.6612,10.1038 15.7832,9.9598 C15.9292,9.7858 15.9852,9.5668 15.9422,9.3428 C15.8492,8.8678 15.3302,8.4158 14.1252,7.7598 L14.9542,2.8138 L15.0002,2.4998 Z" id="Amazon-Simple-Storage-Service-Icon_16_Squid"></path>
        </g>
    </g>
</svg>`;
var nb = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-Simple-Notification-Service_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#B0084D" offset="0%"></stop>
            <stop stop-color="#FF4F8B" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-Simple-Notification-Service_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Application-Integration" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M6.4951189,11.5607705 C6.4951189,11.9743992 6.15969962,12.3097195 5.74818523,12.3097195 C5.33667084,12.3097195 5.00125156,11.9743992 5.00125156,11.5607705 C5.00125156,11.1471419 5.33667084,10.8118215 5.74818523,10.8118215 C6.15969962,10.8118215 6.4951189,11.1471419 6.4951189,11.5607705 L6.4951189,11.5607705 Z M12.4395494,18.9960469 C9.28861076,18.9960469 6.52015019,16.6006149 5.7261577,13.3116647 C5.73316646,13.3116647 5.74017522,13.3136726 5.74818523,13.3136726 C6.71239049,13.3136726 7.49637046,12.5275773 7.49637046,11.5607705 C7.49637046,10.6441614 6.78948686,9.89822426 5.89436796,9.82292778 C6.84155194,6.99579595 9.47083855,5.00395307 12.4395494,5.00395307 C13.7481852,5.00395307 14.8715895,5.23486227 15.7787234,5.68965301 L16.2272841,4.79111502 C15.1789737,4.26604756 13.9043805,4 12.4395494,4 C8.82202753,4 5.62302879,6.56610403 4.74593242,10.1291335 C4.29637046,10.4463826 4,10.9684382 4,11.5607705 C4,12.0958775 4.24530663,12.5697434 4.62377972,12.8910083 C5.29461827,16.9570183 8.61677096,20 12.4395494,20 C13.58398,20 14.9296621,19.6395808 16.2282854,18.9850035 L15.7777222,18.0874694 C14.6162703,18.673778 13.4307885,18.9960469 12.4395494,18.9960469 L12.4395494,18.9960469 Z M8.75994994,9.96046935 L12.2392991,9.96046935 L11.0217772,12.8056723 C10.9947434,12.8689214 10.9807259,12.9361862 10.9807259,13.0034511 L10.9807259,14.7061555 L10.0455569,15.1910648 L10.0455569,13.0034511 C10.0455569,12.9341783 10.0305382,12.8659095 10.0035044,12.8016565 L8.75994994,9.96046935 Z M9.28460576,16.4450022 C9.36370463,16.4931919 9.45481852,16.5172868 9.54493116,16.5172868 C9.62403004,16.5172868 9.70212766,16.4992157 9.77421777,16.4620694 L11.7116395,15.4581163 C11.8778473,15.3717764 11.9819775,15.2001004 11.9819775,15.0123612 L11.9819775,13.1068583 L13.4588235,9.65727552 C13.5249061,9.5016628 13.5098874,9.32295915 13.4177722,9.18240572 C13.3246558,9.04185229 13.1674593,8.95651628 12.9992491,8.95651628 L7.99299124,8.95651628 C7.82377972,8.95651628 7.66658323,9.04285625 7.57346683,9.18441363 C7.48135169,9.32597101 7.46733417,9.50567861 7.53441802,9.66028738 L9.04430538,13.1088662 L9.04430538,16.0153103 C9.04430538,16.1910021 9.13541927,16.3536425 9.28460576,16.4450022 L9.28460576,16.4450022 Z M18.2518148,14.823618 C18.6633292,14.823618 18.9987484,15.1589383 18.9987484,15.572567 C18.9987484,15.9861956 18.6633292,16.3225199 18.2518148,16.3225199 C17.8403004,16.3225199 17.5048811,15.9861956 17.5048811,15.572567 C17.5048811,15.1589383 17.8403004,14.823618 18.2518148,14.823618 L18.2518148,14.823618 Z M18.2518148,6.75384326 C18.6633292,6.75384326 18.9987484,7.09016753 18.9987484,7.50279224 C18.9987484,7.91642091 18.6633292,8.25274518 18.2518148,8.25274518 C17.8403004,8.25274518 17.5048811,7.91642091 17.5048811,7.50279224 C17.5048811,7.09016753 17.8403004,6.75384326 18.2518148,6.75384326 L18.2518148,6.75384326 Z M18.2518148,10.8118215 C18.6633292,10.8118215 18.9987484,11.1471419 18.9987484,11.5607705 C18.9987484,11.9743992 18.6633292,12.3097195 18.2518148,12.3097195 C17.8403004,12.3097195 17.5048811,11.9743992 17.5048811,11.5607705 C17.5048811,11.1471419 17.8403004,10.8118215 18.2518148,10.8118215 L18.2518148,10.8118215 Z M16.0030038,12.0627471 L16.5857322,12.0627471 C16.8030038,12.7835854 17.4628285,13.3136726 18.2518148,13.3136726 C19.21602,13.3136726 20,12.5275773 20,11.5607705 C20,10.5939637 19.21602,9.80786848 18.2518148,9.80786848 C17.4628285,9.80786848 16.8030038,10.3379557 16.5857322,11.058794 L16.0030038,11.058794 L16.0030038,8.00476878 L16.5857322,8.00476878 C16.8030038,8.72661103 17.4628285,9.25669825 18.2518148,9.25669825 C19.21602,9.25669825 20,8.46959905 20,7.50279224 C20,6.5369894 19.21602,5.74989019 18.2518148,5.74989019 C17.4628285,5.74989019 16.8030038,6.27997741 16.5857322,7.00081571 L15.502378,7.00081571 C15.2260325,7.00081571 15.0017522,7.2257012 15.0017522,7.50279224 L15.0017522,11.058794 L14.0005006,11.058794 L14.0005006,12.0627471 L15.0017522,12.0627471 L15.0017522,15.572567 C15.0017522,15.849658 15.2260325,16.0745435 15.502378,16.0745435 L16.5857322,16.0745435 C16.8030038,16.7953818 17.4628285,17.326473 18.2518148,17.326473 C19.21602,17.326473 20,16.5393738 20,15.572567 C20,14.6057602 19.21602,13.8196649 18.2518148,13.8196649 C17.4628285,13.8196649 16.8030038,14.3497521 16.5857322,15.0705904 L16.0030038,15.0705904 L16.0030038,12.0627471 Z" id="AWS-Simple-Notification-Service_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var rb = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-Simple-Queue-Service_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#B0084D" offset="0%"></stop>
            <stop stop-color="#FF4F8B" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-Simple-Queue-Service_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Application-Integration" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M8.00538392,12.9850432 L9.00704291,12.9850432 L9.00704291,11.9942745 L8.00538392,11.9942745 L8.00538392,12.9850432 Z M15.0169969,12.986034 L16.0186559,12.986034 L16.0186559,11.9952653 L15.0169969,11.9952653 L15.0169969,12.986034 Z M12.7903089,11.2234565 C12.2824678,11.3522564 11.741572,11.3522564 11.2337309,11.2234565 C11.4350643,12.005173 11.4350643,12.8780402 11.2337309,13.6597567 C11.4881523,13.5953567 11.7485836,13.5626614 12.0120199,13.5626614 C12.2754562,13.5626614 12.5358876,13.5953567 12.7903089,13.6597567 C12.5889755,12.8780402 12.5889755,12.005173 12.7903089,11.2234565 L12.7903089,11.2234565 Z M14.3699252,10.3149216 C13.4053276,11.2690318 13.4053276,13.6141813 14.3699252,14.5682916 C14.4670861,14.6653869 14.5161674,14.7922053 14.5161674,14.9190237 C14.5161674,15.0458421 14.4670861,15.1726605 14.3699252,15.2687651 C14.2717626,15.3658604 14.1435503,15.4144081 14.0153379,15.4144081 C13.8871256,15.4144081 13.7589132,15.3658604 13.6617523,15.2687651 C12.7282061,14.3463594 11.2958337,14.3463594 10.3632892,15.2687651 C10.166964,15.4629557 9.85043979,15.4629557 9.65511629,15.2687651 C9.5569537,15.1726605 9.50787241,15.0458421 9.50787241,14.9190237 C9.50787241,14.7922053 9.5569537,14.6653869 9.65511629,14.5682916 C10.6187122,13.6141813 10.6187122,11.2690318 9.65511629,10.3149216 C9.5569537,10.218817 9.50787241,10.0919986 9.50787241,9.96518021 C9.50787241,9.83836181 9.5569537,9.71154342 9.65511629,9.61444809 C9.85043979,9.42124819 10.166964,9.42124819 10.3632892,9.61444809 C11.2958337,10.5378445 12.7282061,10.5378445 13.6617523,9.61444809 C13.8570758,9.42124819 14.1736,9.42124819 14.3699252,9.61444809 C14.4670861,9.71154342 14.5161674,9.83836181 14.5161674,9.96518021 C14.5161674,10.0919986 14.4670861,10.218817 14.3699252,10.3149216 L14.3699252,10.3149216 Z M18.8162895,12.0794806 C18.6980937,11.9635607 18.5418349,11.8991607 18.3755595,11.8991607 C18.2082825,11.8991607 18.051022,11.9635607 17.9328262,12.0794806 C17.6894231,12.3212282 17.6894231,12.7125818 17.9328262,12.9533386 C18.1692178,13.1851785 18.5788963,13.18716 18.8162895,12.9533386 C19.0596926,12.7125818 19.0596926,12.3212282 18.8162895,12.0794806 L18.8162895,12.0794806 Z M19.5244624,13.6538121 C19.2169531,13.9569873 18.8092779,14.1244272 18.3755595,14.1244272 C17.9398379,14.1244272 17.5321626,13.9569873 17.2246533,13.6538121 C16.5906032,13.0266555 16.5906032,12.0061637 17.2246533,11.3790071 C17.8376686,10.7726567 18.9094438,10.7716659 19.5244624,11.3790071 C20.1585125,12.0061637 20.1585125,13.0266555 19.5244624,13.6538121 L19.5244624,13.6538121 Z M6.0661721,12.0854252 C5.94797634,11.9695053 5.79171753,11.9051053 5.62544214,11.9051053 C5.45816509,11.9051053 5.30190628,11.9695053 5.18371052,12.0854252 C4.93930573,12.326182 4.93930573,12.7185264 5.18371052,12.9592832 C5.42010204,13.1911231 5.82978057,13.1931046 6.0661721,12.9592832 C6.31057689,12.7185264 6.31057689,12.326182 6.0661721,12.0854252 L6.0661721,12.0854252 Z M6.77534667,13.6597567 C6.46783736,13.9629319 6.06016214,14.1303718 5.62544214,14.1303718 C5.18972047,14.1303718 4.78204526,13.9629319 4.47553761,13.6597567 C3.84148746,13.0326001 3.84148746,12.0121083 4.47553761,11.3849518 C5.08955457,10.7776105 6.15932638,10.7776105 6.77534667,11.3849518 C7.40839515,12.0121083 7.40839515,13.0326001 6.77534667,13.6597567 L6.77534667,13.6597567 Z M15.8844336,16.4081491 C13.7248568,18.5432556 10.2130403,18.5422649 8.05546687,16.4081491 C7.47650797,15.8354848 7.10889911,15.3371281 6.86148934,14.7922053 L5.94797634,15.196439 C6.24647072,15.8562909 6.67818575,16.4467891 7.34729396,17.1086225 C8.6214042,18.3698711 10.2951764,19 11.9699502,19 C13.6437224,19 15.3184963,18.3698711 16.5926065,17.1086225 C17.1044543,16.6033305 17.6753999,15.9821185 18.0400038,15.2013928 L17.1294957,14.7862607 C16.8330047,15.423325 16.356215,15.9424878 15.8844336,16.4081491 L15.8844336,16.4081491 Z M6.8795192,10.1722509 L5.97001283,9.75711878 C6.26750556,9.12104527 6.70523054,8.52856559 7.34929727,7.89051055 C9.8965161,5.36999497 14.0433844,5.36999497 16.5906032,7.88951978 C17.0563746,8.35121799 17.6393402,8.97936535 18.0139606,9.7501834 L17.1124675,10.1791862 C16.8670611,9.67587575 16.4994522,9.20129754 15.8824303,8.58999325 C13.7238551,6.45686824 10.214042,6.45884977 8.05747018,8.58999325 C7.49153285,9.15076834 7.12893229,9.63822654 6.8795192,10.1722509 L6.8795192,10.1722509 Z" id="AWS-Simple-Queue-Service_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var sb = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_AWS-SageMaker_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#055F4E" offset="0%"></stop>
            <stop stop-color="#56C0A7" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_AWS-SageMaker_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Machine-Learning" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M19.000533,13.6672874 L17.3104344,12.3579393 L16.6857676,13.1152694 L18.5747601,14.5766646 L17.2604611,15.2080958 C17.0895522,15.2894458 16.9816098,15.4579566 16.9816098,15.6419626 L16.9816098,17.2989853 L14.0161914,18.9482603 L12.96875,18.2858386 L12.96875,15.6574578 L14.9986674,15.6574578 L14.9986674,14.6890051 L12.96875,14.6890051 L12.96875,12.7366043 L11.969283,12.7366043 L11.969283,18.2906809 L10.9788113,18.9453549 L9.91038113,18.350725 L11.3546109,16.9532476 L10.6479877,16.2685515 L9.01285981,17.8519718 L8.01839019,17.2989853 L8.01839019,15.6419626 C8.01839019,15.4579566 7.91044776,15.2894458 7.73953891,15.2080958 L5.99946695,14.3732895 L5.99946695,11.0941084 L7.43370203,10.3726111 L9.00186567,11.1047614 L9.00186567,12.477059 L7.72554638,13.3021807 L8.27925107,14.1079334 L9.77845149,13.1394807 C9.9173774,13.0494146 10.0013326,12.8983359 10.0013326,12.7366043 L10.0013326,11.0592442 L11.2776519,10.2341224 L10.7239472,9.42836971 L9.46162047,10.2438069 L7.9244403,9.52715189 L7.9244403,7.24644565 L9.00186567,6.80386274 L9.00186567,8.827929 L10.0013326,8.827929 L10.0013326,6.39323877 L10.958822,6.00004695 L11.969283,6.31188874 L11.969283,9.83124606 C11.969283,9.97941933 12.0392457,10.1188765 12.1591818,10.2108795 L14.6898321,12.147785 L15.3085021,11.3885181 L12.96875,9.59688049 L12.96875,6.30704647 L13.9132463,6.0010154 L16.9976013,7.24838255 L16.9976013,7.95535307 L14.9986674,7.95535307 L14.9986674,8.92380582 L16.9976013,8.92380582 L16.9976013,9.83124606 C16.9976013,10.0152521 17.1055437,10.1827944 17.2734542,10.2641444 L19.000533,11.0989507 L19.000533,13.6672874 Z M19.7241471,10.3668004 L17.9970682,9.53199415 L17.9970682,6.92588779 C17.9970682,6.73026033 17.8761327,6.55400193 17.6892324,6.47943106 L14.1251333,5.03740491 C14.013193,4.99188763 13.8892591,4.98898227 13.7743204,5.02578348 L12.4660181,5.44899733 L11.0857543,5.02287812 C10.9728145,4.98801382 10.8498801,4.99285608 10.7389392,5.03837336 L7.22981077,6.48039952 C7.04490938,6.55593883 6.92497335,6.73122878 6.92497335,6.92588779 L6.92497335,9.53683642 L5.26985608,10.3697058 C5.10394456,10.4529927 5,10.6195666 5,10.7996988 L5,14.6735098 C5,14.8575159 5.10794243,15.0260266 5.27885128,15.1073767 L7.01892324,15.9431514 L7.01892324,17.5788681 C7.01892324,17.7522212 7.1138726,17.9129843 7.26978945,17.9991766 L10.7519323,19.9360821 C10.8288913,19.978694 10.9148454,20 11.0007996,20 C11.0997468,20 11.1966951,19.9719149 11.2816498,19.9157446 L12.4750133,19.129361 L13.7263459,19.9215553 C13.8093017,19.9738518 13.9032516,20 13.9992004,20 C14.0851546,20 14.1711087,19.978694 14.2480677,19.9360821 L17.7302106,17.9991766 C17.8861274,17.9129843 17.9810768,17.7522212 17.9810768,17.5788681 L17.9810768,15.9431514 L19.7221482,15.1073767 C19.893057,15.0260266 20,14.8575159 20,14.6735098 L20,10.7996988 C20,10.6166612 19.893057,10.4481505 19.7241471,10.3668004 L19.7241471,10.3668004 Z" id="AWS-SageMaker_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var ib = `<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <!-- Generator: Sketch 64 (93537) - https://sketch.com -->
    <title>Icon-Architecture/16/Arch_Amazon-Virtual-Private-Cloud_16</title>
    <desc>Created with Sketch.</desc>
    <defs>
        <linearGradient x1="0%" y1="100%" x2="100%" y2="0%" id="linearGradient-1">
            <stop stop-color="#4D27A8" offset="0%"></stop>
            <stop stop-color="#A166FF" offset="100%"></stop>
        </linearGradient>
    </defs>
    <g id="Icon-Architecture/16/Arch_Amazon-Virtual-Private-Cloud_16" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <g id="Icon-Architecture-BG/16/Networking-Content-Delivery" fill="url(#linearGradient-1)">
            <rect id="Rectangle" x="0" y="0" width="24" height="24"></rect>
        </g>
        <path d="M16.997,11.8210743 L15.074,10.8030743 L15.074,18.4610743 C16.958,18.0830743 16.996,15.6320743 16.997,15.5190743 L16.997,11.8210743 Z M12.851,17.8750743 C13.178,18.2020743 13.581,18.4000743 14.074,18.4770743 L14.074,10.7820743 L11.981,11.8290743 L11.981,15.5200743 C11.981,15.5370743 11.988,17.0100743 12.851,17.8750743 L12.851,17.8750743 Z M17.997,11.5200743 L17.997,15.5200743 C17.997,16.9020743 17.28,19.5140743 14.567,19.5140743 C13.573,19.5140743 12.756,19.1990743 12.138,18.5760743 C10.980946,17.4110743 10.98,15.5930743 10.980946,15.5160743 L10.980946,11.5200743 C10.980946,11.3300743 11.089,11.1570743 11.258,11.0720743 L14.351,9.52607432 C14.495,9.45307432 14.667,9.45607432 14.808,9.53107432 L17.73,11.0780743 C17.894,11.1640743 17.997,11.3350743 17.997,11.5200743 L17.997,11.5200743 Z M19.69,9.73507432 L18.753,10.0810743 C18.547,9.52407432 18.199,9.29607432 17.555,9.29607432 C17.29,9.29607432 17.071,9.09007432 17.056,8.82607432 C16.986,7.66307432 16.389,7.10607432 15.862,7.07907432 C15.189,7.04807432 14.968,7.33607432 14.894,7.43107432 C14.783,7.57707432 14.6,7.64907432 14.422,7.62407432 C14.241,7.59607432 14.089,7.47307432 14.026,7.30107432 C13.811,6.71307432 13.509,6.24207432 13.076,5.82007432 C12.144,4.91807432 10.407,4.73107432 8.851,5.36907432 C7.789,5.80407432 7.102,6.92707432 7.102,8.23007432 C7.102,8.37407432 7.121,8.59807432 7.138,8.73707432 C7.168,8.98707432 7.007,9.22007432 6.762,9.28107432 C5.576,9.57507432 5,10.2550743 5,11.3570743 C5,11.4070743 4.999,11.4580743 5.004,11.5080743 C5.061,12.5170743 5.613,13.5770743 6.995,13.5770743 L8.997,13.5770743 L8.997,14.5770743 L6.995,14.5770743 C5.309,14.5770743 4.107,13.3730743 4.007,11.5810743 C4.001,11.5170743 4,11.4370743 4,11.3570743 C4,9.93307432 4.745,8.90807432 6.109,8.43307432 C6.105,8.36007432 6.102,8.28907432 6.102,8.23007432 C6.102,6.51907432 7.033,5.03307432 8.473,4.44307432 C10.386,3.66207432 12.564,3.93307432 13.772,5.10207432 C14.145,5.46607432 14.447,5.86907432 14.686,6.32307432 C14.986,6.16107432 15.382,6.05107432 15.913,6.08007432 C16.968,6.13407432 17.786,7.03507432 18.004,8.32807432 C18.824,8.44907432 19.39,8.92107432 19.69,9.73507432 L19.69,9.73507432 Z" id="Amazon-Virtual-Private-Cloud_Icon_16_Squid" fill="#FFFFFF"></path>
    </g>
</svg>`;
var ob = '<svg id="bdb56329-4717-4410-aa13-4505ecaa4e46" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="ba2610c3-a45a-4e7e-a0c0-285cfd7e005d" x1="13.25" y1="13.02" x2="8.62" y2="4.25" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#1988d9" /><stop offset="0.9" stop-color="#54aef0" /></linearGradient><linearGradient id="bd8f618b-4f2f-4cb7-aff0-2fd2d211326d" x1="11.26" y1="10.47" x2="14.46" y2="15.99" gradientUnits="userSpaceOnUse"><stop offset="0.1" stop-color="#54aef0" /><stop offset="0.29" stop-color="#4fabee" /><stop offset="0.51" stop-color="#41a2e9" /><stop offset="0.74" stop-color="#2a93e0" /><stop offset="0.88" stop-color="#1988d9" /></linearGradient></defs><title>Icon-identity-221</title><polygon points="1.01 10.19 8.93 15.33 16.99 10.17 18 11.35 8.93 17.19 0 11.35 1.01 10.19" fill="#50e6ff" /><polygon points="1.61 9.53 8.93 0.81 16.4 9.54 8.93 14.26 1.61 9.53" fill="#fff" /><polygon points="8.93 0.81 8.93 14.26 1.61 9.53 8.93 0.81" fill="#50e6ff" /><polygon points="8.93 0.81 8.93 14.26 16.4 9.54 8.93 0.81" fill="url(#ba2610c3-a45a-4e7e-a0c0-285cfd7e005d)" /><polygon points="8.93 7.76 16.4 9.54 8.93 14.26 8.93 7.76" fill="#53b1e0" /><polygon points="8.93 14.26 1.61 9.53 8.93 7.76 8.93 14.26" fill="#9cebff" /><polygon points="8.93 17.19 18 11.35 16.99 10.17 8.93 15.33 8.93 17.19" fill="url(#bd8f618b-4f2f-4cb7-aff0-2fd2d211326d)" /></svg>';
var lb = '<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="fdd5d44a-d038-42da-afe7-cecaad9f8ff9" x1="6.49" y1="17.38" x2="6.49" y2="0.44" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#949494" /><stop offset="0.53" stop-color="#a2a2a2" /><stop offset="1" stop-color="#b3b3b3" /></linearGradient><linearGradient id="bf4a560d-147b-4f76-9d70-f90bc5f8ddd6" x1="10.06" y1="13.89" x2="16.48" y2="13.89" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" /><stop offset="0.07" stop-color="#0060a9" /><stop offset="0.36" stop-color="#0071c8" /><stop offset="0.52" stop-color="#0078d4" /><stop offset="0.64" stop-color="#0074cd" /><stop offset="0.82" stop-color="#006abb" /><stop offset="1" stop-color="#005ba1" /></linearGradient></defs><g id="a55981fb-ccb2-4f5b-acf6-743ff717cb3a"><g><path d="M11,9.57a6.72,6.72,0,0,0-2.23.32,6.64,6.64,0,0,0,2.23.33,6.56,6.56,0,0,0,2.23-.33A6.63,6.63,0,0,0,11,9.57Z" fill="#198ab3" /><g><path d="M11.47,16.81a.57.57,0,0,1-.58.57H2.09a.56.56,0,0,1-.57-.57V1A.57.57,0,0,1,2.09.44h8.8a.58.58,0,0,1,.58.57Z" fill="url(#fdd5d44a-d038-42da-afe7-cecaad9f8ff9)" /><path d="M3,6.38A1.08,1.08,0,0,1,4.06,5.3H9a1.08,1.08,0,0,1,1.08,1.08h0A1.08,1.08,0,0,1,9,7.47H4.06A1.08,1.08,0,0,1,3,6.38Z" fill="#003067" /><path d="M3,3.17A1.08,1.08,0,0,1,4.06,2.09H9a1.08,1.08,0,0,1,1.08,1.08h0A1.08,1.08,0,0,1,9,4.25H4.06A1.08,1.08,0,0,1,3,3.17Z" fill="#003067" /><circle cx="4.11" cy="3.17" r="0.73" fill="#50e6ff" /><circle cx="4.11" cy="6.38" r="0.73" fill="#50e6ff" /></g><path d="M13.27,11.38c-1.77,0-3.21-.53-3.21-1.17V16.4c0,.63,1.42,1.15,3.17,1.16h0c1.78,0,3.21-.52,3.21-1.16V10.21C16.48,10.85,15.05,11.38,13.27,11.38Z" fill="url(#bf4a560d-147b-4f76-9d70-f90bc5f8ddd6)" /><path d="M16.48,10.21c0,.64-1.43,1.17-3.21,1.17s-3.21-.53-3.21-1.17,1.44-1.16,3.21-1.16,3.21.52,3.21,1.16" fill="#e6e6e6" /><path d="M15.73,10.12c0,.41-1.1.74-2.46.74s-2.46-.33-2.46-.74,1.1-.74,2.46-.74,2.46.33,2.46.74" fill="#50e6ff" /><path d="M13.68,8.66l2.13-2.13a.11.11,0,0,0-.08-.19H14.49c0-2.57-1.37-5.13-3.84-5.13a6.68,6.68,0,0,1,2,5.13H11.47a.11.11,0,0,0-.08.19l2.13,2.13A.12.12,0,0,0,13.68,8.66Z" fill="#50e6ff" /></g></g></svg>';
var ab = '<svg id="b300f0d1-2ad8-4418-a1c5-23d0b9d21841" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="b8cad6fd-ec7f-45e9-be2a-125e8b87bd03" x1="10.79" y1="2.17" x2="10.79" y2="16.56" gradientUnits="userSpaceOnUse"><stop offset="0.18" stop-color="#5ea0ef" /><stop offset="1" stop-color="#0078d4" /></linearGradient></defs><title>Icon-web-43</title><rect x="3.7" y="5.49" width="1.18" height="5.26" rx="0.52" transform="translate(-3.83 12.41) rotate(-90)" fill="#b3b3b3" /><rect x="2.04" y="7.88" width="1.18" height="5.26" rx="0.52" transform="translate(-7.88 13.14) rotate(-90)" fill="#a3a3a3" /><rect x="3.7" y="10.26" width="1.18" height="5.26" rx="0.52" transform="translate(-8.6 17.19) rotate(-90)" fill="#7a7a7a" /><path d="M18,11a3.28,3.28,0,0,0-2.81-3.18,4.13,4.13,0,0,0-4.21-4,4.23,4.23,0,0,0-4,2.8,3.89,3.89,0,0,0-3.38,3.8,4,4,0,0,0,4.06,3.86l.36,0h6.58l.17,0A3.32,3.32,0,0,0,18,11Z" fill="url(#b8cad6fd-ec7f-45e9-be2a-125e8b87bd03)" /></svg>';
var cb = '<svg id="f9ed9690-6753-43a7-8b32-d66ac7b8a99a" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="f710a364-083f-494c-9d96-89b92ee2d5a8" x1="0.5" y1="9.77" x2="9" y2="9.77" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#005ba1" /><stop offset="0.07" stop-color="#0060a9" /><stop offset="0.36" stop-color="#0071c8" /><stop offset="0.52" stop-color="#0078d4" /><stop offset="0.64" stop-color="#0074cd" /><stop offset="0.81" stop-color="#006abb" /><stop offset="0.99" stop-color="#005ba1" /></linearGradient></defs><title>Icon-databases-126</title><g><path d="M13.25,10.48V6.57a.14.14,0,0,0-.24-.1l-4,4L4.85,14.63V17.5H16.93a.56.56,0,0,0,.57-.57V6.57a.14.14,0,0,0-.24-.1Z" fill="#005ba1" /><path d="M4.75,3.58C2.4,3.58.5,2.89.5,2V7.67h0v9.26a.56.56,0,0,0,.57.57H9V2C9,2.89,7.1,3.58,4.75,3.58Z" fill="url(#f710a364-083f-494c-9d96-89b92ee2d5a8)" /><rect x="12.91" y="12.97" width="2.27" height="2.27" rx="0.28" fill="#fff" /><rect x="8.97" y="12.97" width="2.27" height="2.27" rx="0.28" fill="#fff" /><rect x="5.03" y="12.97" width="2.27" height="2.27" rx="0.28" fill="#fff" /><path d="M9,2c0,.85-1.9,1.54-4.25,1.54S.5,2.89.5,2,2.4.5,4.75.5,9,1.19,9,2" fill="#eaeaea" /><path d="M8,1.91c0,.55-1.46,1-3.26,1s-3.26-.43-3.26-1S3,.94,4.75.94,8,1.37,8,1.91" fill="#50e6ff" /><path d="M4.75,2.14a8.07,8.07,0,0,0-2.58.37,7.64,7.64,0,0,0,2.58.38,7.64,7.64,0,0,0,2.58-.38A8.07,8.07,0,0,0,4.75,2.14Z" fill="#198ab3" /></g></svg>';
var ub = '<svg id="f4337506-5d95-4e80-b7ca-68498c6e008e" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="ba420277-700e-42cc-9de9-5388a5c16e54" x1="9" y1="16.97" x2="9" y2="1.03" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#0078d4" /><stop offset="0.16" stop-color="#1380da" /><stop offset="0.53" stop-color="#3c91e5" /><stop offset="0.82" stop-color="#559cec" /><stop offset="1" stop-color="#5ea0ef" /></linearGradient></defs><title>Icon-devops-261</title><path id="a91f0ca4-8fb7-4019-9c09-0a52e2c05754" d="M17,4v9.74l-4,3.28-6.2-2.26V17L3.29,12.41l10.23.8V4.44Zm-3.41.49L7.85,1V3.29L2.58,4.84,1,6.87v4.61l2.26,1V6.57Z" fill="url(#ba420277-700e-42cc-9de9-5388a5c16e54)" /></svg>';
var hb = '<svg id="a2c88306-fa03-4e5b-b192-401f0b77808b" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="b403aca7-f387-4434-96b4-ae157edc835f" x1="-175.993" y1="-343.723" x2="-175.993" y2="-359.232" gradientTransform="translate(212.573 370.548) scale(1.156 1.029)" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#fea11b" /><stop offset="0.284" stop-color="#fea51a" /><stop offset="0.547" stop-color="#feb018" /><stop offset="0.8" stop-color="#ffc314" /><stop offset="1" stop-color="#ffd70f" /></linearGradient></defs><title>Icon-compute-29</title><g><path d="M2.37,7.475H3.2a.267.267,0,0,1,.267.267v6.148a.533.533,0,0,1-.533.533H2.1a0,0,0,0,1,0,0V7.741a.267.267,0,0,1,.267-.267Z" transform="translate(12.507 16.705) rotate(134.919)" fill="#50e6ff" /><path d="M2.325,3.6h.833a.267.267,0,0,1,.267.267v6.583a0,0,0,0,1,0,0H2.591a.533.533,0,0,1-.533-.533V3.865A.267.267,0,0,1,2.325,3.6Z" transform="translate(5.759 0.114) rotate(44.919)" fill="#1490df" /></g><g><path d="M14.53,7.475h.833a.533.533,0,0,1,.533.533v6.148a.267.267,0,0,1-.267.267H14.8a.267.267,0,0,1-.267-.267V7.475a0,0,0,0,1,0,0Z" transform="translate(12.223 -7.555) rotate(45.081)" fill="#50e6ff" /><path d="M15.108,3.6h.833a0,0,0,0,1,0,0v6.583a.267.267,0,0,1-.267.267h-.833a.267.267,0,0,1-.267-.267V4.131a.533.533,0,0,1,.533-.533Z" transform="translate(31.022 1.222) rotate(135.081)" fill="#1490df" /></g><path d="M8.459,9.9H4.87a.193.193,0,0,1-.2-.181.166.166,0,0,1,.018-.075L8.991,1.13a.206.206,0,0,1,.186-.106h4.245a.193.193,0,0,1,.2.181.165.165,0,0,1-.035.1L8.534,7.966h4.928a.193.193,0,0,1,.2.181.176.176,0,0,1-.052.122L5.421,16.788c-.077.046-.624.5-.356-.189h0Z" fill="url(#b403aca7-f387-4434-96b4-ae157edc835f)" /></svg>';
var db = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="f67d1585-6164-4ad0-b2dd-f9cc59b2969f" x1="9.908" y1="15.943" x2="7.516" y2="2.383" gradientUnits="userSpaceOnUse"><stop offset="0.15" stop-color="#0078d4" /><stop offset="0.8" stop-color="#5ea0ef" /><stop offset="1" stop-color="#83b9f9" /></linearGradient></defs><g id="a4fd1868-54fe-4ca6-8ff6-3b01866dc27b"><path d="M14.49,7.15A5.147,5.147,0,0,0,9.24,2.164,5.272,5.272,0,0,0,4.216,5.653,4.869,4.869,0,0,0,0,10.4a4.946,4.946,0,0,0,5.068,4.814H13.82A4.292,4.292,0,0,0,18,11.127,4.105,4.105,0,0,0,14.49,7.15Z" fill="url(#f67d1585-6164-4ad0-b2dd-f9cc59b2969f)" /><path d="M12.9,11.4V8H12v4.13h2.46V11.4ZM5.76,9.73a1.825,1.825,0,0,1-.51-.31.441.441,0,0,1-.12-.32.342.342,0,0,1,.15-.3.683.683,0,0,1,.42-.12,1.62,1.62,0,0,1,1,.29V8.11a2.58,2.58,0,0,0-1-.16,1.641,1.641,0,0,0-1.09.34,1.08,1.08,0,0,0-.42.89c0,.51.32.91,1,1.21a2.907,2.907,0,0,1,.62.36.419.419,0,0,1,.15.32.381.381,0,0,1-.16.31.806.806,0,0,1-.45.11,1.66,1.66,0,0,1-1.09-.42V12a2.173,2.173,0,0,0,1.07.24,1.877,1.877,0,0,0,1.18-.33A1.08,1.08,0,0,0,6.84,11a1.048,1.048,0,0,0-.25-.7A2.425,2.425,0,0,0,5.76,9.73ZM11,11.32A2.191,2.191,0,0,0,11,9a1.808,1.808,0,0,0-.7-.75,2,2,0,0,0-1-.26,2.112,2.112,0,0,0-1.08.27A1.856,1.856,0,0,0,7.49,9a2.465,2.465,0,0,0-.26,1.14,2.256,2.256,0,0,0,.24,1,1.766,1.766,0,0,0,.69.74,2.056,2.056,0,0,0,1,.3l.86,1h1.21L10,12.08A1.79,1.79,0,0,0,11,11.32Zm-1-.25a.941.941,0,0,1-.76.35.916.916,0,0,1-.76-.36,1.523,1.523,0,0,1-.29-1,1.529,1.529,0,0,1,.29-1,1,1,0,0,1,.78-.37.869.869,0,0,1,.75.37,1.619,1.619,0,0,1,.27,1A1.459,1.459,0,0,1,10,11.07Z" fill="#f2f2f2" /></g>\u200B
</svg>`;
var fb = '<svg id="b089cfca-0de1-451c-a1ca-6680ea50cb4f" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><radialGradient id="b25d0836-964a-4c84-8c20-855f66e8345e" cx="-105.006" cy="-10.409" r="5.954" gradientTransform="translate(117.739 19.644) scale(1.036 1.027)" gradientUnits="userSpaceOnUse"><stop offset="0.183" stop-color="#5ea0ef" /><stop offset="1" stop-color="#0078d4" /></radialGradient><clipPath id="b36c7f5d-2ef1-4760-8a25-eeb9661f4e47"><path d="M14.969,7.53A6.137,6.137,0,1,1,7.574,2.987,6.137,6.137,0,0,1,14.969,7.53Z" fill="none" /></clipPath></defs><title>Icon-databases-121</title><path d="M2.954,5.266a.175.175,0,0,1-.176-.176h0A2.012,2.012,0,0,0,.769,3.081a.176.176,0,0,1-.176-.175h0a.176.176,0,0,1,.176-.176A2.012,2.012,0,0,0,2.778.72.175.175,0,0,1,2.954.544h0A.175.175,0,0,1,3.13.72h0A2.012,2.012,0,0,0,5.139,2.729a.175.175,0,0,1,.176.176h0a.175.175,0,0,1-.176.176h0A2.011,2.011,0,0,0,3.13,5.09.177.177,0,0,1,2.954,5.266Z" fill="#50e6ff" /><path d="M15.611,17.456a.141.141,0,0,1-.141-.141h0a1.609,1.609,0,0,0-1.607-1.607.141.141,0,0,1-.141-.14h0a.141.141,0,0,1,.141-.141h0a1.608,1.608,0,0,0,1.607-1.607.141.141,0,0,1,.141-.141h0a.141.141,0,0,1,.141.141h0a1.608,1.608,0,0,0,1.607,1.607.141.141,0,1,1,0,.282h0a1.609,1.609,0,0,0-1.607,1.607A.141.141,0,0,1,15.611,17.456Z" fill="#50e6ff" /><g><path d="M14.969,7.53A6.137,6.137,0,1,1,7.574,2.987,6.137,6.137,0,0,1,14.969,7.53Z" fill="url(#b25d0836-964a-4c84-8c20-855f66e8345e)" /><g clip-path="url(#b36c7f5d-2ef1-4760-8a25-eeb9661f4e47)"><path d="M5.709,13.115A1.638,1.638,0,1,0,5.714,9.84,1.307,1.307,0,0,0,5.721,9.7,1.651,1.651,0,0,0,4.06,8.064H2.832a6.251,6.251,0,0,0,1.595,5.051Z" fill="#f2f2f2" /><path d="M15.045,7.815c0-.015,0-.03-.007-.044a5.978,5.978,0,0,0-1.406-2.88,1.825,1.825,0,0,0-.289-.09,1.806,1.806,0,0,0-2.3,1.663,2,2,0,0,0-.2-.013,1.737,1.737,0,0,0-.581,3.374,1.451,1.451,0,0,0,.541.1h2.03A13.453,13.453,0,0,0,15.045,7.815Z" fill="#f2f2f2" /></g></g><path d="M17.191,3.832c-.629-1.047-2.1-1.455-4.155-1.149a14.606,14.606,0,0,0-2.082.452,6.456,6.456,0,0,1,1.528.767c.241-.053.483-.116.715-.151A7.49,7.49,0,0,1,14.3,3.662a2.188,2.188,0,0,1,1.959.725h0c.383.638.06,1.729-.886,3a16.723,16.723,0,0,1-4.749,4.051A16.758,16.758,0,0,1,4.8,13.7c-1.564.234-2.682,0-3.065-.636s-.06-1.73.886-2.995c.117-.157.146-.234.279-.392a6.252,6.252,0,0,1,.026-1.63A11.552,11.552,0,0,0,1.756,9.419C.517,11.076.181,12.566.809,13.613a3.165,3.165,0,0,0,2.9,1.249,8.434,8.434,0,0,0,1.251-.1,17.855,17.855,0,0,0,6.219-2.4,17.808,17.808,0,0,0,5.061-4.332C17.483,6.369,17.819,4.88,17.191,3.832Z" fill="#50e6ff" /></svg>';
var pb = '<svg id="b5b638e5-1de7-4378-8f50-7c3738e5874c" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="e20ae4ca-8128-4625-bcc6-863bc1bc51d9" x1="5.05" y1="10.55" x2="5.05" y2="13.48" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#76bc2d" /><stop offset="1" stop-color="#5e9624" /></linearGradient><linearGradient id="b6fa89de-29eb-462e-97de-5bdbdaeb090e" x1="12.84" y1="10.57" x2="12.84" y2="13.5" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#76bc2d" /><stop offset="1" stop-color="#5e9624" /></linearGradient></defs><title>Icon-integration-204</title><g><path d="M3.19,15.6a2.49,2.49,0,0,1-1.53-.38,1.7,1.7,0,0,1-.45-1.36V10.33c0-.58-.23-.89-.71-.89V8.56c.48,0,.71-.31.71-.92V4.17a1.79,1.79,0,0,1,.45-1.39A2.29,2.29,0,0,1,3.19,2.4v.89c-.51,0-.79.27-.79.85v3.4c0,.78-.23,1.26-.74,1.46a1.42,1.42,0,0,1,.74,1.46v3.37a1.25,1.25,0,0,0,.17.68.74.74,0,0,0,.58.2l0,.89Z" fill="#949494" /><path d="M14.81,2.4a2.49,2.49,0,0,1,1.53.38,1.7,1.7,0,0,1,.45,1.36V7.67c0,.58.23.89.71.89v.88c-.48,0-.71.31-.71.92v3.43a1.8,1.8,0,0,1-.45,1.4,2.28,2.28,0,0,1-1.53.41v-.89c.51,0,.79-.27.79-.85v-3.4c0-.78.23-1.26.74-1.46a1.42,1.42,0,0,1-.74-1.46V4.17a1.25,1.25,0,0,0-.17-.68.74.74,0,0,0-.58-.2Z" fill="#949494" /><path d="M9.41,8.35V7.08h-.9V8.35a.18.18,0,0,1-.18.18H5a.36.36,0,0,0-.36.36v1.65h.9V9.63a.18.18,0,0,1,.17-.18h6.54a.18.18,0,0,1,.18.18v.93h.89V8.89a.36.36,0,0,0-.35-.36H9.59A.18.18,0,0,1,9.41,8.35Z" fill="#005ba1" /><path d="M10.61,3.21H7.25a.38.38,0,0,0-.38.37V6.94a.37.37,0,0,0,.38.37h3.36A.37.37,0,0,0,11,6.94V3.58A.38.38,0,0,0,10.61,3.21Zm-.32,3.17a.25.25,0,0,1-.25.24H7.81a.25.25,0,0,1-.25-.24V4.15a.25.25,0,0,1,.25-.25H10a.25.25,0,0,1,.25.25Z" fill="#0078d4" /><rect x="3.58" y="10.55" width="2.94" height="2.94" rx="0.27" fill="url(#e20ae4ca-8128-4625-bcc6-863bc1bc51d9)" /><rect x="11.38" y="10.57" width="2.94" height="2.94" rx="0.27" fill="url(#b6fa89de-29eb-462e-97de-5bdbdaeb090e)" /></g></svg>';
var gb = '<svg id="fd454f1c-5506-44b8-874e-8814b8b2f70b" xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 18 18"><defs><linearGradient id="f34d9569-2bd0-4002-8f16-3d01d8106cb5" x1="8.88" y1="12.21" x2="8.88" y2="0.21" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#0078d4" /><stop offset="0.82" stop-color="#5ea0ef" /></linearGradient><linearGradient id="bdb45a0b-eb58-4970-a60a-fb2ce314f866" x1="8.88" y1="16.84" x2="8.88" y2="12.21" gradientUnits="userSpaceOnUse"><stop offset="0.15" stop-color="#ccc" /><stop offset="1" stop-color="#707070" /></linearGradient></defs><title>Icon-compute-21</title><rect x="-0.12" y="0.21" width="18" height="12" rx="0.6" fill="url(#f34d9569-2bd0-4002-8f16-3d01d8106cb5)" /><polygon points="11.88 4.46 11.88 7.95 8.88 9.71 8.88 6.21 11.88 4.46" fill="#50e6ff" /><polygon points="11.88 4.46 8.88 6.22 5.88 4.46 8.88 2.71 11.88 4.46" fill="#c3f1ff" /><polygon points="8.88 6.22 8.88 9.71 5.88 7.95 5.88 4.46 8.88 6.22" fill="#9cebff" /><polygon points="5.88 7.95 8.88 6.21 8.88 9.71 5.88 7.95" fill="#c3f1ff" /><polygon points="11.88 7.95 8.88 6.21 8.88 9.71 11.88 7.95" fill="#9cebff" /><path d="M12.49,15.84c-1.78-.28-1.85-1.56-1.85-3.63H7.11c0,2.07-.06,3.35-1.84,3.63a1,1,0,0,0-.89,1h9A1,1,0,0,0,12.49,15.84Z" fill="url(#bdb45a0b-eb58-4970-a60a-fb2ce314f866)" /></svg>';
var mb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#669df6;}.cls-1,.cls-2,.cls-3{fill-rule:evenodd;}.cls-2{fill:#aecbfa;}.cls-3{fill:#4285f4;}</style></defs><title>Icon_24px_BigTable_Color</title><g data-name="Product Icons"><g ><path class="cls-1" d="M16.22,6.45,12,3.94a2.86,2.86,0,0,1-1.25-1.71s.16-.32.38-.2,3.5,2.06,5.25,3.1c.63.37.24,2,.24,2A.77.77,0,0,0,16.22,6.45Z"/><path class="cls-2" d="M17.49,12.69a.35.35,0,0,1-.16.33l-1,.68V5.75c0-.27.17-.56-.06-.7l.92.68a.73.73,0,0,1,.35.65Z"/><path class="cls-1" d="M12,13.6a.36.36,0,0,1-.2-.06L8.34,11.48v.9L12,14.56l.29-.57s-.22-.39-.29-.39Z"/><path class="cls-1" d="M12.2,15.4a.36.36,0,0,1-.4,0L8.34,13.34V14a.42.42,0,0,0,.19.35l3.28,2a.37.37,0,0,0,.38,0,2,2,0,0,0,.2-.52l-.19-.39Z"/><path class="cls-2" d="M12,12.73l3.66-2.18v-.43a.39.39,0,0,0-.19-.34l-3.28-2a.37.37,0,0,0-.38,0l-3.28,2a.41.41,0,0,0-.19.34v.43L12,12.73Z"/><path class="cls-1" d="M12,11.83,8.53,9.78a.41.41,0,0,0-.19.34v.43L12,12.73l.28-.56L12,11.83Z"/><path class="cls-3" d="M12,13.6v1l3.66-2.18v-.9L12.2,13.54a.65.65,0,0,1-.2.06Z"/><path class="cls-3" d="M12.2,15.4a.36.36,0,0,1-.2.06c0,.28,0,.9,0,.9a.5.5,0,0,0,.21-.05l3.28-2a.39.39,0,0,0,.19-.35v-.66L12.2,15.4Z"/><path class="cls-3" d="M15.47,9.78,12,11.83v.9l3.66-2.18v-.43a.39.39,0,0,0-.19-.34Z"/><path class="cls-1" d="M7.78,17.53,11.93,20a2.72,2.72,0,0,1,1.28,1.8.18.18,0,0,1-.28.18L7.48,18.75c-.53-.32-.07-1.88-.07-1.88A.77.77,0,0,0,7.78,17.53Z"/><path class="cls-2" d="M6.51,17.73V11.17a.41.41,0,0,1,.19-.33l1-.59v7.91c0,.27,0,.69.21.83l-1.06-.66A.75.75,0,0,1,6.51,17.73Z"/><path class="cls-1" d="M10.16,5.46a.75.75,0,0,0-.74,0L5.22,8a2.63,2.63,0,0,1-2.08.26.23.23,0,0,1,0-.4c.18-.09,6.32-3.74,6.32-3.74.23-.14.74,1.39.74,1.39Z"/><path class="cls-2" d="M10.15,4.08l5.32,3.15a.37.37,0,0,1,.2.31V8.72L9,4.76a.75.75,0,0,0-.74,0l1.18-.69a.71.71,0,0,1,.73,0Z"/><path class="cls-1" d="M13.82,18.49a.73.73,0,0,0,.74,0L18.76,16a2.63,2.63,0,0,1,2.1-.25.21.21,0,0,1,0,.38l-6.33,3.75c-.22.14-.74-1.4-.74-1.4Z"/><path class="cls-2" d="M8.51,16.75a.56.56,0,0,1-.17-.33V15.26L15,19.19a.69.69,0,0,0,.73,0l-1.18.7a.7.7,0,0,1-.74,0Z"/><path class="cls-1" d="M6.26,9.81a.76.76,0,0,0-.37.65v5a2.75,2.75,0,0,1-.87,2,.18.18,0,0,1-.3-.13V9.77c0-.28,1.54,0,1.54,0Z"/><path class="cls-2" d="M9.77,6.52a.34.34,0,0,1,.36,0l1,.59L5.05,10.67a.77.77,0,0,0-.37.66V9.94a.72.72,0,0,1,.38-.64Z"/><path class="cls-1" d="M18.17,13.44v-5a2.81,2.81,0,0,1,.84-2s.33-.11.31.21,0,7.37,0,7.37c-.31.37-1.61,0-1.61,0A.81.81,0,0,0,18.17,13.44Z"/><path class="cls-2" d="M19,14.61l-4.74,2.85a.35.35,0,0,1-.37,0l-1-.57L19,13.22a.77.77,0,0,0,.37-.66V14C19.35,14.23,19,14.61,19,14.61Z"/></g></g></svg>';
var xb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#aecbfa;}.cls-1,.cls-2,.cls-3{fill-rule:evenodd;}.cls-2{fill:#669df6;}.cls-3{fill:#4285f4;}</style></defs><title>Icon_24px_BigQuery_Color</title><g data-name="Product Icons"><g ><path class="cls-1" d="M6.73,10.83v2.63A4.91,4.91,0,0,0,8.44,15.2V10.83Z"/><path class="cls-2" d="M9.89,8.41v7.53A7.62,7.62,0,0,0,11,16,8,8,0,0,0,12,16V8.41Z"/><path class="cls-1" d="M13.64,11.86v3.29a5,5,0,0,0,1.7-1.82V11.86Z"/><path class="cls-3" d="M17.74,16.32l-1.42,1.42a.42.42,0,0,0,0,.6l3.54,3.54a.42.42,0,0,0,.59,0l1.43-1.43a.42.42,0,0,0,0-.59l-3.54-3.54a.42.42,0,0,0-.6,0"/><path class="cls-2" d="M11,2a9,9,0,1,0,9,9,9,9,0,0,0-9-9m0,15.69A6.68,6.68,0,1,1,17.69,11,6.68,6.68,0,0,1,11,17.69"/></g></g></svg>';
var Lb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:none;}.cls-2{fill:#669df6;}.cls-2,.cls-3,.cls-4{fill-rule:evenodd;}.cls-3{fill:#aecbfa;}.cls-4{fill:#4285f4;}</style></defs><title>Icon_24px_CDN_Color</title><g data-name="Product Icons"><rect class="cls-1" x="2" y="2" width="20" height="20"/><g ><polygon id="Fill-1" class="cls-2" points="12 2 12 4.41 15.13 7.63 15.13 5.21 12 2"/><polygon id="Fill-1-Copy-2" class="cls-2" points="19.5 12 16.38 15.13 18.88 15.13 22 12 19.5 12"/><polygon id="Fill-1-Copy-3" class="cls-2" points="4.5 12 7.63 15.13 5.13 15.13 2 12 4.5 12"/><polygon id="Fill-1-Copy" class="cls-2" points="12 22 12 19.59 15.13 16.38 15.13 18.79 12 22"/><polygon id="Fill-2" class="cls-3" points="12 2 8.88 5.21 8.88 7.63 12 4.41 12 2"/><polygon id="Fill-2-Copy-2" class="cls-3" points="18.88 8.88 16.38 8.88 19.5 12 22 12 18.88 8.88"/><polygon id="Fill-2-Copy-3" class="cls-3" points="5.13 8.88 7.63 8.88 4.5 12 2 12 5.13 8.88"/><polygon id="Fill-2-Copy" class="cls-3" points="12 22 8.88 18.79 8.88 16.38 12 19.59 12 22"/><polygon id="Fill-9" class="cls-3" points="15.13 15.13 8.88 15.13 8.88 8.88 15.13 8.88 15.13 15.13"/><polygon id="Fill-10" class="cls-2" points="15.13 8.88 15.13 15.13 8.88 15.13 15.13 8.88"/><polygon class="cls-4" points="15.13 8.88 15.13 15.13 12 12 15.13 8.88"/></g></g></svg>';
var _b = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#4285f4;}.cls-2{fill:#669df6;}.cls-3{fill:#aecbfa;}.cls-4{fill:#fff;}</style></defs><title>Icon_24px_DNS_Color</title><g data-name="Product Icons"><g data-name="colored-32/dns"><g ><polygon id="Fill-1" class="cls-1" points="13 18 11 18 11 8 13 8 13 18"/><polygon id="Fill-2" class="cls-2" points="2 21 22 21 22 19 2 19 2 21"/><polygon id="Fill-3" class="cls-3" points="10 22 14 22 14 18 10 18 10 22"/></g></g><rect class="cls-3" x="2" y="2" width="20" height="6"/><rect class="cls-2" x="12" y="2" width="10" height="6"/><rect class="cls-4" x="4" y="4" width="2" height="2"/><rect class="cls-3" x="2" y="10" width="20" height="6"/><rect class="cls-2" x="12" y="10" width="10" height="6"/><rect class="cls-4" x="4" y="12" width="2" height="2"/></g></svg>';
var yb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#4285f4;}.cls-1,.cls-2,.cls-3{fill-rule:evenodd;}.cls-2{fill:#aecbfa;}.cls-3{fill:#669df6;}</style></defs><title>Icon_24px_Interconnect_Color</title><g data-name="Product Icons"><g ><polygon id="Fill-3" class="cls-1" points="2 13 6 13 6 11 2 11 2 13"/><polygon id="Fill-6" class="cls-2" points="15 17 5 17 5 7 15 7 15 17"/><polygon id="Fill-1" class="cls-1" points="17.33 13 22 13 22 11 17.33 11 17.33 13"/><polygon class="cls-3" points="8 3 8 5 17 5 17 19 8 19 8 21 19 21 19 19 19 5 19 3 8 3"/><polygon id="Fill-7" class="cls-3" points="15 17 10 17 10 7 15 7 15 17"/></g></g></svg>';
var Cb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:none;}.cls-2{fill:#669df6;}.cls-3{fill:#4285f4;}.cls-4{fill:#aecbfa;}</style></defs><title>Icon_24px_LoadBalancing_Color</title><g data-name="Product Icons"><g data-name="colored-32/load-balancing"><rect class="cls-1" width="24" height="24"/><g ><rect class="cls-2" x="18" y="12" width="2" height="4"/><rect class="cls-2" x="11" y="12" width="2" height="4"/><rect class="cls-2" x="4" y="12" width="2" height="4"/><polygon id="Fill-2" class="cls-3" points="13 11 11 11 11 7 13 7 13 11"/><rect class="cls-2" x="4" y="11" width="16" height="2"/><rect class="cls-4" x="6" y="2" width="12" height="5"/><rect class="cls-2" x="12" y="2" width="6" height="5"/><rect class="cls-4" x="16" y="16" width="6" height="6"/><rect class="cls-4" x="2" y="16" width="6" height="6"/><rect class="cls-2" x="5" y="16" width="3" height="6"/><rect class="cls-4" x="9" y="16" width="6" height="6"/><rect class="cls-2" x="12" y="16" width="3" height="6"/><rect class="cls-2" x="19" y="16" width="3" height="6"/></g></g></g></svg>';
var vb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#aecbfa;}.cls-1,.cls-2,.cls-3{fill-rule:evenodd;}.cls-2{fill:#669df6;}.cls-3{fill:#4285f4;}</style></defs><title>Icon_24px_SQL_Color</title><g data-name="Product Icons"><g ><polygon class="cls-1" points="4.67 10.44 4.67 13.45 12 17.35 12 14.34 4.67 10.44"/><polygon class="cls-1" points="4.67 15.09 4.67 18.1 12 22 12 18.99 4.67 15.09"/><polygon class="cls-2" points="12 17.35 19.33 13.45 19.33 10.44 12 14.34 12 17.35"/><polygon class="cls-2" points="12 22 19.33 18.1 19.33 15.09 12 18.99 12 22"/><polygon class="cls-3" points="19.33 8.91 19.33 5.9 12 2 12 5.01 19.33 8.91"/><polygon class="cls-2" points="12 2 4.67 5.9 4.67 8.91 12 5.01 12 2"/><polygon class="cls-1" points="4.67 5.87 4.67 8.89 12 12.79 12 9.77 4.67 5.87"/><polygon class="cls-2" points="12 12.79 19.33 8.89 19.33 5.87 12 9.77 12 12.79"/></g></g></svg>';
var bb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#aecbfa;}.cls-2{fill:#669df6;}.cls-3{fill:#4285f4;}.cls-4{fill:#fff;}</style></defs><title>Icon_24px_CloudStorage_Color</title><g data-name="Product Icons"><rect class="cls-1" x="2" y="4" width="20" height="7"/><rect class="cls-2" x="20" y="4" width="2" height="7"/><polygon class="cls-3" points="22 4 20 4 20 11 22 4"/><rect class="cls-2" x="2" y="4" width="2" height="7"/><rect class="cls-4" x="6" y="7" width="6" height="1"/><rect class="cls-4" x="15" y="6" width="3" height="3" rx="1.5"/><rect class="cls-1" x="2" y="13" width="20" height="7"/><rect class="cls-2" x="20" y="13" width="2" height="7"/><polygon class="cls-3" points="22 13 20 13 20 20 22 13"/><rect class="cls-2" x="2" y="13" width="2" height="7"/><rect class="cls-4" x="6" y="16" width="6" height="1"/><rect class="cls-4" x="15" y="15" width="3" height="3" rx="1.5"/></g></svg>';
var wb = `<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
    <g stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
        <path d="M14.7110701,8.84507935 C14.7717439,8.84507935 14.8231931,8.88719721 14.8413458,8.94564457 L14.8483412,8.99213893 L14.8483412,9.80096662 C14.8483412,9.86590813 14.8090267,9.92106136 14.7544697,9.94052499 L14.7110701,9.9480262 L14.1619856,9.9480262 L14.1619856,11.3971513 C14.1619856,11.4393574 14.1689102,11.4810733 14.1822916,11.5204472 L14.2071478,11.5775199 L17.9097614,18.3983638 C18.0128912,18.5897093 18.0276241,18.8190863 17.9539599,19.0212979 L17.9097614,19.1198381 L16.5667009,21.6392628 C16.4635711,21.8306084 16.2854576,21.9589644 16.0851783,21.9917325 L15.983436,22 L8.01656405,22 C7.8103044,22 7.61750853,21.8989791 7.49086453,21.7295356 L7.43329911,21.6392628 L6.09023859,19.1198381 C5.98710877,18.9284926 5.97237594,18.6991157 6.0460401,18.496904 L6.09023859,18.3983638 L9.78310593,11.5775199 C9.80278146,11.5409511 9.8205962,11.5011143 9.83028652,11.4598613 L9.83794574,11.3971513 L9.83794574,9.9480262 L9.28886131,9.9480262 C9.22824239,9.9480262 9.17676023,9.90586128 9.15859212,9.84743274 L9.1515902,9.80096662 L9.1515902,8.99213893 C9.1515902,8.9271386 9.19094857,8.87202066 9.24548803,8.85257351 L9.28886131,8.84507935 L14.7110701,8.84507935 Z M13.1324523,9.9480262 L10.867479,9.9480262 L10.867479,11.6220054 C10.867479,11.7170243 10.8499898,11.810761 10.8163145,11.8979731 L10.7772919,11.9828161 L7.23720733,18.5909383 C7.18910754,18.6801741 7.17948758,18.7860688 7.2083826,18.8820057 L7.23727597,18.9516755 L8.15266835,20.6500666 C8.20076815,20.7393612 8.28154945,20.8012203 8.37354086,20.8223922 L8.44430082,20.8304352 L9.572,20.83 L8.57527805,18.9792271 C8.52717825,18.8899325 8.51755829,18.7840732 8.54641817,18.6881527 L8.57527805,18.6184899 L9.44379234,17.006864 L15.913,17.006 L15.399,16.047 L13.0053393,16.0472267 L12.6160384,15.3248701 L15.012,15.324 L14.292,13.979 L11.8745205,13.9792234 L11.4852196,13.2568668 L13.904,13.256 L13.2227081,11.9828161 C13.1783867,11.9005363 13.1497785,11.8099843 13.1382445,11.7164027 L13.1324523,11.6220054 L13.1324523,9.9480262 Z M16.347,17.815 L13.9560996,17.8156917 L14.3454004,18.5509896 L16.741,18.55 L16.347,17.815 Z M10.630604,5.77278412 C11.0025401,5.77278412 11.3040561,6.09587402 11.3040561,6.49433196 C11.3040561,6.89278989 11.0025401,7.21580626 10.630604,7.21580626 C10.258668,7.21580626 9.95715197,6.89278989 9.95715197,6.49433196 C9.95715197,6.09587402 10.258668,5.77278412 10.630604,5.77278412 Z M13.1716089,4.22465851 C13.7295473,4.22465851 14.1818556,4.7091463 14.1818556,5.30686996 C14.1818556,5.9045201 13.7295473,6.38908141 13.1716089,6.38908141 C12.6136705,6.38908141 12.1614308,5.9045201 12.1614308,5.30686996 C12.1614308,4.7091463 12.6136705,4.22465851 13.1716089,4.22465851 Z M11.6407615,2 C12.0126976,2 12.3142822,2.3230899 12.3142822,2.72154783 C12.3142822,3.12000576 12.0126976,3.44302213 11.6407615,3.44302213 C11.2688941,3.44302213 10.9673095,3.12000576 10.9673095,2.72154783 C10.9673095,2.3230899 11.2688941,2 11.6407615,2 Z" fill="#4285F4"></path>
    </g>
</svg>`;
var Eb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:none;}.cls-2{fill:#aecbfa;}.cls-2,.cls-3,.cls-4{fill-rule:evenodd;}.cls-3{fill:#4285f4;}.cls-4{fill:#669df6;}</style></defs><title>Icon_24px_DataProc_Color</title><g data-name="Product Icons"><rect class="cls-1" x="2" y="2" width="20" height="20"/><g ><polygon class="cls-2" points="17.85 14.2 7.67 20.08 6.69 18.4 16.88 12.51 17.85 14.2"/><polygon class="cls-2" points="7.63 18.16 7.63 6.4 9.5 6.4 9.5 16.75 7.63 18.16"/><polygon class="cls-2" points="9.56 9.69 9.3 7.33 19.49 13.2 18.52 14.88 9.56 9.69"/><path class="cls-3" d="M14.39,10.26,9.3,7.33l.26,2.36,1.51.86a4,4,0,0,0,3.32-.29Z"/><path class="cls-2" d="M8.13,8.29h0a3.78,3.78,0,1,1,3.27,1.89A3.8,3.8,0,0,1,8.13,8.29ZM13,5.49a1.84,1.84,0,0,0-1.59-.92A1.83,1.83,0,0,0,9.57,6.4a1.84,1.84,0,1,0,3.67,0A1.8,1.8,0,0,0,13,5.49Z"/><path class="cls-3" d="M7.63,12.94v5.22L9.5,16.75V15.12a3.29,3.29,0,0,0-1.87-2.18Z"/><path class="cls-3" d="M13.33,16.81l4.52-2.61-2.21-1L14.39,14a4.23,4.23,0,0,0-1.06,2.86Z"/><path class="cls-2" d="M2.51,18.7h0a3.77,3.77,0,0,1,1.38-5.16,3.72,3.72,0,0,1,2.86-.38A3.78,3.78,0,1,1,2.51,18.7Zm4.85-2.81A1.79,1.79,0,0,0,6.25,15a1.83,1.83,0,0,0-2.06,2.69h0a1.83,1.83,0,1,0,3.17-1.84Z"/><path class="cls-2" d="M14.33,18.36h0a3.79,3.79,0,0,1,0-3.77,3.79,3.79,0,0,1,5.16-1.39,3.78,3.78,0,0,1,1.38,5.16,3.78,3.78,0,0,1-6.54,0Zm4.86-2.81a2,2,0,0,0-.67-.67,1.85,1.85,0,0,0-2.51.68,1.86,1.86,0,0,0,0,1.83,1.83,1.83,0,0,0,2.07.85,1.82,1.82,0,0,0,1.11-.85,1.88,1.88,0,0,0,0-1.84Z"/><path class="cls-4" d="M9.49,16.15s-2.34,2-2.8,2.25l2.86-1.65a4.07,4.07,0,0,0-.06-.6Z"/><path class="cls-4" d="M10.15,10S9.56,6.72,9.56,6.4V9.69a3.47,3.47,0,0,0,.59.27Z"/><path class="cls-4" d="M15.3,13.47s2.76,1.15,3.22,1.41l-2.86-1.64a1.69,1.69,0,0,0-.36.23Z"/></g></g></svg>';
var Tb = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#669df6;}.cls-1,.cls-2{fill-rule:evenodd;}.cls-2{fill:#4285f4;}</style></defs><title>Icon_24px_IAM_Color</title><g data-name="Product Icons"><g ><path class="cls-1" d="M12,2,3.79,5.42v5.63c0,5.06,3.5,9.8,8.21,11,4.71-1.15,8.21-5.89,8.21-10.95V5.42Zm0,3.79a2.63,2.63,0,1,1-1.86.77A2.63,2.63,0,0,1,12,5.79Zm4.11,11.15A8.64,8.64,0,0,1,12,19.87a8.64,8.64,0,0,1-4.11-2.93V14.69c0-1.67,2.74-2.52,4.11-2.52s4.11.85,4.11,2.52v2.25Z"/><path class="cls-2" d="M12,2V5.79a2.63,2.63,0,1,1,0,5.26v1.12c1.37,0,4.11.85,4.11,2.52v2.25A8.64,8.64,0,0,1,12,19.87V22c4.71-1.15,8.21-5.89,8.21-10.95V5.42Z"/></g></g></svg>';
var Sb = `<svg version="1.1" baseProfile="tiny" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
	 x="0px" y="0px" width="24px" height="24px" viewBox="0 0 24 24" overflow="visible" xml:space="preserve">
<g >
	<g transform="translate(4.000000, 1.000000)">
		<path fill="#85A4E6" d="M8,0l-9,4v6c0,5.6,3.8,10.7,9,12c5.2-1.3,9-6.4,9-12V4L8,0z M8,11h7c-0.5,4.1-3.3,7.8-7,8.9V11l-7,0V5.3
			l7-3.1V11z"/>
		<path fill="#5C85DE" d="M8,0v22c5.2-1.3,9-6.4,9-12V4L8,0z M15,11c-0.5,4.1-3.3,7.8-7,8.9V11L15,11z"/>
		<path fill-rule="evenodd" fill="#3367D6" d="M17,11h-2c0,0,0,0.3-0.1,0.6L17,11z"/>
		<polygon fill-rule="evenodd" fill="#3367D6" points="-1,11 1,11 1,10.4 		"/>
	</g>
</g>
</svg>
`;
var Ab = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:#aecbfa;}.cls-2{fill:#669df6;}.cls-3{fill:#4285f4;}</style></defs><title>Icon_24px_VirtualPrivateCloud_Color</title><g data-name="Product Icons"><rect class="cls-1" x="16" y="2" width="6" height="6"/><rect class="cls-2" x="19" y="2" width="3" height="6"/><rect class="cls-1" x="16" y="16" width="6" height="6"/><rect class="cls-2" x="19" y="16" width="3" height="6"/><rect class="cls-1" x="2" y="2" width="6" height="6"/><rect class="cls-2" x="5" y="2" width="3" height="6"/><rect class="cls-1" x="2" y="16" width="6" height="6"/><rect class="cls-2" x="5" y="16" width="3" height="6"/><rect class="cls-2" x="8" y="4" width="8" height="2"/><rect class="cls-2" x="8" y="18" width="8" height="2"/><rect class="cls-2" x="18" y="8" width="2" height="8"/><rect class="cls-2" x="4" y="8" width="2" height="8"/><rect class="cls-3" x="4" y="8" width="2" height="2"/><rect class="cls-3" x="18" y="8" width="2" height="2"/><rect class="cls-3" x="8" y="4" width="2" height="2"/><rect class="cls-3" x="8" y="18" width="2" height="2"/></g></svg>';
var Rb = '<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{filter:url(#luminosity-noclip);}.cls-2{fill:#669df6;}.cls-3{mask:url(#mask);}.cls-4{fill:#4285f4;}.cls-5{fill:#aecbfa;}</style><filter id="luminosity-noclip" x="4.64" y="4.19" width="14.73" height="12.76" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feFlood flood-color="#fff" result="bg"/><feBlend in="SourceGraphic" in2="bg"/></filter><mask id="mask" x="4.64" y="4.19" width="14.73" height="12.76" maskUnits="userSpaceOnUse"><circle class="cls-1" cx="12" cy="12.23" r="3.58"/></mask></defs><title>Icon_24px_Pub-Sub_Color</title><g data-name="Product Icons"><circle class="cls-2" cx="18.97" cy="8.21" r="1.72"/><circle class="cls-2" cx="5.03" cy="8.21" r="1.72"/><circle class="cls-2" cx="12" cy="20.28" r="1.72"/><g class="cls-3"><rect class="cls-4" x="14.69" y="10.22" width="1.59" height="8.04" transform="matrix(0.5, -0.87, 0.87, 0.5, -4.59, 20.53)"/><rect class="cls-4" x="4.49" y="13.45" width="8.04" height="1.59" transform="translate(-5.98 6.17) rotate(-30)"/><rect class="cls-4" x="11.2" y="4.19" width="1.59" height="8.04"/></g><circle class="cls-5" cx="12" cy="12.23" r="2.78"/><circle class="cls-5" cx="5.03" cy="16.25" r="2.19"/><circle class="cls-5" cx="18.97" cy="16.25" r="2.19"/><circle class="cls-5" cx="12" cy="4.19" r="2.19"/></g></svg>';
var kb = '<svg id="Artwork" xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><circle cx="11.45" cy="11.51" r="2.89" style="fill:#669df6"/><path d="M18.05,6.81a8.12,8.12,0,0,0-4.94-3.23l-.27,1.3A6.79,6.79,0,1,1,6.65,6.74l-1-.94a8.1,8.1,0,1,0,13,2.12A1.31,1.31,0,0,1,18.05,6.81Z" style="fill:#aecbfa"/><path d="M14.46,20.42a2,2,0,1,1,0-3.93" style="fill:#669df6"/><path d="M14.46,16.49a2,2,0,1,1,0,3.93" style="fill:#4285f4"/><path d="M19.38,8.1a1.34,1.34,0,0,1,0-2.67v-1h0a2.38,2.38,0,0,0,0,4.75Z" style="fill:#669df6"/><path d="M19.38,5.43a1.34,1.34,0,0,1,0,2.67v1h0a2.38,2.38,0,0,0,0-4.75Z" style="fill:#4285f4"/><path d="M4.22,12.78a2,2,0,1,1,0-3.93" style="fill:#669df6"/><path d="M4.22,8.85a2,2,0,0,1,0,3.93" style="fill:#4285f4"/></svg>';
var Ob = '<svg id="Artwork" xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><polygon points="11.19 11.35 15.75 3.51 6.75 3.51 2.25 11.35 11.19 11.35" style="fill:#aecbfa"/><polygon points="2.25 12.65 6.74 20.49 15.73 20.49 11.25 12.65 2.25 12.65" style="fill:#4285f4"/><path d="M21.75,12l-4.5-7.87L12.74,12l4.51,7.87Z" style="fill:#669df6"/></svg>';
var Ib = '<svg xmlns="http://www.w3.org/2000/svg" width="24px" height="24px" viewBox="0 0 24 24"><defs><style>.cls-1{fill:none;}.cls-2{fill:#669df6;}.cls-3{fill:#aecbfa;}.cls-4{fill:#4285f4;}</style></defs><title>Icon_24px_VisionAPI_Color</title><g data-name="Product Icons"><g data-name="colored-32/vision"><rect class="cls-1" width="24" height="24"/><g ><polygon class="cls-2" points="6 12 12 16.99 12 20 2 12 6 12"/><polygon id="Shape-2" data-name="Shape" class="cls-2" points="12 16.99 18 12 22 12 12 20 12 16.99"/><polygon id="Shape-3" data-name="Shape" class="cls-3" points="2 12 12 4 12 7.01 6 12 2 12"/><polygon id="Shape-4" data-name="Shape" class="cls-3" points="12 7.01 18 12 22 12 12 4 12 7.01"/><circle id="Oval" class="cls-4" cx="12" cy="12" r="2"/></g></g></g></svg>';
var Mb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M7.78799 2H16.212C17.0305 1.99999 17.7061 1.99998 18.2561 2.04565C18.8274 2.0931 19.3523 2.19496 19.8439 2.45035C20.5745 2.82985 21.1702 3.42553 21.5497 4.1561C21.805 4.64774 21.9069 5.17258 21.9543 5.74393C22 6.29394 22 6.96949 22 7.78802V11.212C22 12.0305 22 12.7061 21.9543 13.2561C21.9069 13.8274 21.805 14.3523 21.5497 14.8439C21.1702 15.5745 20.5745 16.1702 19.8439 16.5497C19.3523 16.805 18.8274 16.9069 18.2561 16.9544C17.7061 17 17.0305 17 16.212 17H13V19H17C17.5523 19 18 19.4477 18 20C18 20.5523 17.5523 21 17 21H7C6.44772 21 6 20.5523 6 20C6 19.4477 6.44772 19 7 19H11V17H7.78798C6.96946 17 6.29393 17 5.74393 16.9544C5.17258 16.9069 4.64774 16.805 4.1561 16.5497C3.42553 16.1702 2.82985 15.5745 2.45035 14.8439C2.19496 14.3523 2.0931 13.8274 2.04565 13.2561C1.99998 12.7061 1.99999 12.0305 2 11.212V7.78799C1.99999 6.96947 1.99998 6.29393 2.04565 5.74393C2.0931 5.17258 2.19496 4.64774 2.45035 4.1561C2.82985 3.42553 3.42553 2.82985 4.1561 2.45035C4.64774 2.19496 5.17258 2.0931 5.74393 2.04565C6.29393 1.99998 6.96947 1.99999 7.78799 2ZM16.17 15C17.041 15 17.6331 14.9992 18.0905 14.9612C18.536 14.9242 18.7634 14.8572 18.9219 14.7748C19.2872 14.5851 19.5851 14.2872 19.7748 13.9219C19.8572 13.7634 19.9242 13.536 19.9612 13.0905C19.9992 12.6331 20 12.041 20 11.17V7.83C20 6.95898 19.9992 6.36686 19.9612 5.90945C19.9242 5.46401 19.8572 5.23663 19.7748 5.07805C19.5851 4.71277 19.2872 4.41493 18.9219 4.22517C18.7634 4.1428 18.536 4.07578 18.0905 4.03879C17.6331 4.0008 17.041 4 16.17 4H7.83C6.95898 4 6.36686 4.0008 5.90945 4.03879C5.46401 4.07578 5.23663 4.1428 5.07805 4.22517C4.71277 4.41493 4.41493 4.71277 4.22517 5.07805C4.1428 5.23663 4.07578 5.46401 4.03879 5.90945C4.0008 6.36686 4 6.95898 4 7.83V11.17C4 12.041 4.0008 12.6331 4.03879 13.0905C4.07578 13.536 4.1428 13.7634 4.22517 13.9219C4.41493 14.2872 4.71277 14.5851 5.07805 14.7748C5.23663 14.8572 5.46401 14.9242 5.90945 14.9612C6.36686 14.9992 6.95898 15 7.83 15H16.17Z" fill="#0F1729"/>
</svg>`;
var Nb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\r
<path d="M2 18C2 17.0681 2 16.6022 2.15224 16.2346C2.35523 15.7446 2.74458 15.3552 3.23463 15.1522C3.60218 15 4.06812 15 5 15H19C19.9319 15 20.3978 15 20.7654 15.1522C21.2554 15.3552 21.6448 15.7446 21.8478 16.2346C22 16.6022 22 17.0681 22 18C22 18.9319 22 19.3978 21.8478 19.7654C21.6448 20.2554 21.2554 20.6448 20.7654 20.8478C20.3978 21 19.9319 21 19 21H5C4.06812 21 3.60218 21 3.23463 20.8478C2.74458 20.6448 2.35523 20.2554 2.15224 19.7654C2 19.3978 2 18.9319 2 18Z" stroke="#1C274C" stroke-width="1.5"/>\r
<path d="M2 12C2 11.0681 2 10.6022 2.15224 10.2346C2.35523 9.74458 2.74458 9.35523 3.23463 9.15224C3.60218 9 4.06812 9 5 9H19C19.9319 9 20.3978 9 20.7654 9.15224C21.2554 9.35523 21.6448 9.74458 21.8478 10.2346C22 10.6022 22 11.0681 22 12C22 12.9319 22 13.3978 21.8478 13.7654C21.6448 14.2554 21.2554 14.6448 20.7654 14.8478C20.3978 15 19.9319 15 19 15H5C4.06812 15 3.60218 15 3.23463 14.8478C2.74458 14.6448 2.35523 14.2554 2.15224 13.7654C2 13.3978 2 12.9319 2 12Z" stroke="#1C274C" stroke-width="1.5"/>\r
<path d="M2 6C2 5.06812 2 4.60218 2.15224 4.23463C2.35523 3.74458 2.74458 3.35523 3.23463 3.15224C3.60218 3 4.06812 3 5 3H19C19.9319 3 20.3978 3 20.7654 3.15224C21.2554 3.35523 21.6448 3.74458 21.8478 4.23463C22 4.60218 22 5.06812 22 6C22 6.93188 22 7.39782 21.8478 7.76537C21.6448 8.25542 21.2554 8.64477 20.7654 8.84776C20.3978 9 19.9319 9 19 9H5C4.06812 9 3.60218 9 3.23463 8.84776C2.74458 8.64477 2.35523 8.25542 2.15224 7.76537C2 7.39782 2 6.93188 2 6Z" stroke="#1C274C" stroke-width="1.5"/>\r
<circle cx="5" cy="12" r="1" fill="#1C274C"/>\r
<circle cx="5" cy="6" r="1" fill="#1C274C"/>\r
<circle cx="5" cy="18" r="1" fill="#1C274C"/>\r
</svg>`;
var Pb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 192 192" xmlns="http://www.w3.org/2000/svg" fill="none"><circle cx="96" cy="96" r="74" stroke="#000000" stroke-width="12"/><ellipse cx="96" cy="96" stroke="#000000" stroke-width="12" rx="30" ry="74"/><path stroke="#000000" stroke-linecap="round" stroke-linejoin="round" stroke-width="12" d="M28 72h136M28 120h136"/></svg>`;
var Fb = `<?xml version="1.0" encoding="UTF-8"?>\r
\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 48 48" id="b" xmlns="http://www.w3.org/2000/svg">\r
\r
<defs>\r
\r
<style>.c{fill:none;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;}</style>\r
\r
</defs>\r
\r
<g>\r
\r
<path class="c" d="m7.1972,25.8996c.2982.3882.6722.5328,1.1924.5328h.72c.67,0,1.2132-.5432,1.2132-1.2132v-.0052c0-.67-.5431-1.2132-1.2132-1.2132h-.7942c-.6707,0-1.2145-.5437-1.2145-1.2145h0c0-.6722.5449-1.2171,1.2171-1.2171h.716c.5202,0,.8942.1446,1.1924.5328"/>\r
\r
<g>\r
\r
<g>\r
\r
<line class="c" x1="13.1777" y1="24.0005" x2="14.7631" y2="24.0005"/>\r
\r
<polyline class="c" points="15.1861 26.4319 12.7546 26.4319 12.7546 21.5687 15.1861 21.5687"/>\r
\r
<path class="c" d="m17.6177,26.4321v-4.8632h1.5921c.9001,0,1.6298.7312,1.6298,1.6333s-.7297,1.6333-1.6298,1.6333h-1.5921"/>\r
\r
<line class="c" x1="19.2104" y1="24.8357" x2="20.8019" y2="26.4309"/>\r
\r
<polyline class="c" points="26.4926 21.569 24.8817 26.4322 23.2707 21.569"/>\r
\r
<path class="c" d="m28.9246,21.5689v4.8634"/>\r
\r
</g>\r
\r
<path class="c" d="m34.5781,24.8216c0,.8897-.7212,1.6109-1.6109,1.6109s-1.6109-.7212-1.6109-1.6109v-1.6413c0-.8897.7212-1.6109,1.6109-1.6109h0c.8897,0,1.6109.7212,1.6109,1.6109"/>\r
\r
<line class="c" x1="37.0096" y1="24.0005" x2="38.595" y2="24.0005"/>\r
\r
<polyline class="c" points="39.4412 26.4319 37.0096 26.4319 37.0096 21.5687 39.4412 21.5687"/>\r
\r
</g>\r
\r
</g>\r
\r
<g>\r
\r
<path class="c" d="m28.8737,42.5l-4.4403-13.6619m-3.1416-9.6665l-4.4434-13.6716"/>\r
\r
<path class="c" d="m28.8737,42.5l4.4304-13.6315m3.1743-9.767l4.4206-13.6011"/>\r
\r
<path class="c" d="m16.8483,5.5002h24.0508"/>\r
\r
</g>\r
\r
</svg>`;
var Db = `<?xml version="1.0" ?>
\r<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 64 64" xmlns="http://www.w3.org/2000/svg">
\r<title/>
\r<g data-name="Joy Stick" id="Joy_Stick">
\r<path d="M20,18.5H12a1,1,0,0,1-1-1v-2a1,1,0,0,1,1-1h8a1,1,0,0,1,1,1v2A1,1,0,0,1,20,18.5Zm-7-2h0Z"/>
\r<path d="M52,18.5H44a1,1,0,0,1-1-1v-2a1,1,0,0,1,1-1h8a1,1,0,0,1,1,1v2A1,1,0,0,1,52,18.5Zm-7-2h0Z"/>
\r<path d="M55.7,49.5H49.58a7,7,0,0,1-6.5-4.13A11.4,11.4,0,0,0,32.62,38.5H31.38a11.4,11.4,0,0,0-10.46,6.87,7,7,0,0,1-6.5,4.13H8.3a4.33,4.33,0,0,1-4.2-5.41L11,17.25a1,1,0,0,1,1-.75H52a1,1,0,0,1,1,.75L59.9,44.09a4.33,4.33,0,0,1-4.2,5.41Zm-24.32-13h1.24a13.38,13.38,0,0,1,12.29,8.08,5,5,0,0,0,4.67,2.92H55.7A2.33,2.33,0,0,0,58,44.59L51.23,18.5H12.77L6,44.59A2.33,2.33,0,0,0,8.3,47.5h6.12a5,5,0,0,0,4.67-2.92A13.38,13.38,0,0,1,31.38,36.5Z"/>
\r<path d="M21,34.5H17a1,1,0,0,1-1-1v-2H14a1,1,0,0,1-1-1v-4a1,1,0,0,1,1-1h2v-2a1,1,0,0,1,1-1h4a1,1,0,0,1,1,1v2h2a1,1,0,0,1,1,1v4a1,1,0,0,1-1,1H22v2A1,1,0,0,1,21,34.5Zm-3-2h2v-2a1,1,0,0,1,1-1h2v-2H21a1,1,0,0,1-1-1v-2H18v2a1,1,0,0,1-1,1H15v2h2a1,1,0,0,1,1,1Z"/>
\r<path d="M46,26.5a2,2,0,1,1,2-2A2,2,0,0,1,46,26.5Zm0-2Z"/>
\r<path d="M46,34.5a2,2,0,1,1,2-2A2,2,0,0,1,46,34.5Zm0-2Z"/>
\r<path d="M50,30.5a2,2,0,1,1,2-2A2,2,0,0,1,50,30.5Zm0-2Z"/>
\r<path d="M42,30.5a2,2,0,1,1,2-2A2,2,0,0,1,42,30.5Zm0-2Z"/>
\r</g>
\r</svg>`;
var Bb = `<?xml version="1.0" encoding="iso-8859-1"?>\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
<svg fill="#000000" height="800px" width="800px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 viewBox="0 0 380 380" xml:space="preserve">\r
<g>\r
	<path d="M91.425,157.435c-1.065-2.297-3.366-3.767-5.897-3.767c-0.005,0-0.01,0-0.015,0c-2.537,0.006-4.839,1.487-5.895,3.794\r
		L47.402,227.83c-1.494,3.264-0.06,7.122,3.204,8.616c0.877,0.401,1.797,0.591,2.702,0.591c2.464,0,4.821-1.409,5.914-3.796\r
		l8.08-17.649h36.75l8.193,17.677c1.51,3.257,5.373,4.674,8.631,3.164c3.257-1.51,4.673-5.374,3.164-8.631L91.425,157.435z\r
		 M73.254,202.592l12.311-26.888l12.462,26.888H73.254z"/>\r
	<path d="M166.496,152.865H135.07c-3.59,0-6.5,2.91-6.5,6.5v71.17c0,3.59,2.91,6.5,6.5,6.5c3.59,0,6.5-2.91,6.5-6.5V203.5h24.926\r
		c13.96,0,25.316-11.357,25.316-25.316C191.813,164.223,180.456,152.865,166.496,152.865z M166.496,190.5H141.57v-24.635h24.926\r
		c6.792,0,12.316,5.526,12.316,12.318C178.813,184.975,173.288,190.5,166.496,190.5z"/>\r
	<path d="M203.313,152.865c-3.59,0-6.5,2.91-6.5,6.5v71.17c0,3.59,2.91,6.5,6.5,6.5s6.5-2.91,6.5-6.5v-71.17\r
		C209.813,155.775,206.902,152.865,203.313,152.865z"/>\r
	<path d="M368.317,46.487H11.684C5.241,46.487,0,51.73,0,58.173v263.656c0,6.442,5.241,11.684,11.684,11.684h356.634\r
		c6.442,0,11.683-5.242,11.683-11.684V58.173C380,51.73,374.76,46.487,368.317,46.487z M280.949,259.268\r
		c5.162-12.192,17.053-20.07,30.295-20.07c4.411,0,8.721,0.878,12.813,2.61c16.696,7.072,24.529,26.408,17.461,43.105\r
		c-5.167,12.191-17.058,20.068-30.294,20.068c0,0,0,0-0.001,0c-4.411,0-8.721-0.878-12.81-2.611\r
		c-8.089-3.424-14.361-9.793-17.659-17.935C277.455,276.294,277.524,267.356,280.949,259.268z M320.868,79.771\r
		c6.844,0,12.387,5.547,12.387,12.387c0,6.842-5.543,12.387-12.387,12.387c-6.839,0-12.385-5.545-12.385-12.387\r
		C308.483,85.318,314.029,79.771,320.868,79.771z M283.715,79.771c6.839,0,12.386,5.547,12.386,12.387\r
		c0,6.842-5.547,12.387-12.386,12.387c-6.839,0-12.387-5.545-12.387-12.387C271.328,85.318,276.876,79.771,283.715,79.771z\r
		 M246.561,79.771c6.839,0,12.381,5.547,12.381,12.387c0,6.842-5.542,12.387-12.381,12.387c-6.844,0-12.387-5.545-12.387-12.387\r
		C234.175,85.318,239.718,79.771,246.561,79.771z M21.27,314.01V141.424H358.73v67.274c-1.537-2.202-3.677-4.02-6.327-5.143\r
		l-20.614-8.726c-1.835-0.778-3.771-1.172-5.754-1.172c-5.956,0-11.303,3.54-13.623,9.02l-1.253,2.959\r
		c-9.227,0.129-18.381,2.255-26.728,6.193l-2.426-2.107c-1.174-1.018-2.499-1.841-3.932-2.447c-1.841-0.779-3.782-1.174-5.771-1.174\r
		c-4.276,0-8.341,1.858-11.154,5.099l-14.671,16.915c-2.583,2.986-3.855,6.794-3.581,10.735c0.285,3.941,2.084,7.535,5.064,10.115\r
		l2.417,2.098c-2.755,8.849-3.563,18.179-2.365,27.344l-2.749,1.654c-6.981,4.2-9.242,13.302-5.039,20.293L249.044,315H22.26\r
		C21.714,315,21.27,314.556,21.27,314.01z"/>\r
</g>\r
</svg>`;
var $b = `<?xml version="1.0" encoding="iso-8859-1"?>\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg fill="#000000" height="800px" width="800px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 viewBox="0 0 56 56" xml:space="preserve">\r
<g>\r
	<g>\r
		<path d="M47,5c-3.7,0-6.882,2.245-8.264,5.444L26.117,3.561c-1.749-0.954-4.483-0.956-6.228-0.004L3.153,12.686\r
			C1.385,13.65,0,15.987,0,18.007v19.984c0,2.02,1.385,4.356,3.153,5.321l16.737,9.129c0.872,0.476,1.992,0.714,3.111,0.714\r
			s2.238-0.238,3.11-0.714l16.736-9.129C44.615,42.349,46,40.014,46,37.998V22.941C46.329,22.977,46.662,23,47,23\r
			c4.962,0,9-4.037,9-9S51.962,5,47,5z M44,22.597v15.4c0,1.283-0.986,2.946-2.111,3.56l-16.736,9.129\r
			c-1.147,0.625-3.16,0.625-4.306,0L4.111,41.557C2.986,40.944,2,39.278,2,37.992V18.007c0-1.286,0.986-2.952,2.111-3.565\r
			l16.736-9.129c1.146-0.627,3.162-0.624,4.312,0.004l12.991,7.085C38.057,12.922,38,13.454,38,14c0,3.918,2.521,7.25,6.023,8.483\r
			C44.018,22.522,44,22.557,44,22.597z M47,21c-3.86,0-7-3.141-7-7s3.14-7,7-7s7,3.141,7,7S50.86,21,47,21z"/>\r
		<path d="M47,9c-1.654,0-3,1.346-3,3c0,0.771,0.3,1.468,0.78,2c-0.48,0.532-0.78,1.229-0.78,2c0,1.654,1.346,3,3,3s3-1.346,3-3\r
			c0-0.771-0.3-1.468-0.78-2c0.48-0.532,0.78-1.229,0.78-2C50,10.345,48.654,9,47,9z M47,11c0.551,0,1,0.448,1,1s-0.449,1-1,1\r
			s-1-0.448-1-1S46.449,11,47,11z M47,17c-0.551,0-1-0.448-1-1s0.449-1,1-1s1,0.448,1,1S47.551,17,47,17z"/>\r
		<path d="M23,30.374c0,1.665-1.636,3.126-3.5,3.126S16,32.039,16,30.374V21h-5v9.374c0,4.48,3.813,8.126,8.5,8.126\r
			s8.5-3.646,8.5-8.126V21h-5V30.374z M25,30.374V23h1v7.374c0,3.378-2.916,6.126-6.5,6.126S13,33.752,13,30.374V23h1v7.374\r
			c0,2.778,2.519,5.126,5.5,5.126S25,33.152,25,30.374z"/>\r
		<path d="M30,38h5V21h-5V38z M32,23h1v13h-1V23z"/>\r
	</g>\r
</g>\r
</svg>`;
var Hb = `<?xml version="1.0" encoding="utf-8"?>\r
\r
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg height="800px" width="800px" version="1.1" id="_x32_" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 viewBox="0 0 512 512"  xml:space="preserve">\r
<style type="text/css">\r
	.st0{fill:#000000;}\r
</style>\r
<g>\r
	<path class="st0" d="M341.601,0H170.399c-29.292,0-53.121,23.828-53.121,53.121v405.756c0,29.292,23.83,53.123,53.121,53.123\r
		h171.202c29.292,0,53.121-23.83,53.121-53.119V53.121C394.722,23.828,370.893,0,341.601,0z M234.91,453.434\r
		c0-0.536,0.452-0.988,0.988-0.988H276.1c0.536,0,0.988,0.452,0.988,0.988v13.684c0,0.536-0.452,0.988-0.988,0.988h-40.202\r
		c-0.536,0-0.988-0.452-0.988-0.988V453.434z M277.088,429.684c0,0.536-0.452,0.988-0.988,0.988h-40.202\r
		c-0.536,0-0.988-0.452-0.988-0.988V416c0-0.534,0.452-0.984,0.988-0.984H276.1c0.536,0,0.988,0.45,0.988,0.984V429.684z\r
		 M277.088,392.25c0,0.545-0.443,0.988-0.988,0.988h-40.202c-0.546,0-0.988-0.442-0.988-0.988v-13.68\r
		c0-0.536,0.452-0.988,0.988-0.988H276.1c0.536,0,0.988,0.452,0.988,0.988V392.25z M255.999,351.476\r
		c-13.461,0-24.414-10.951-24.414-24.412c0-13.462,10.953-24.416,24.414-24.416c13.463,0,24.416,10.953,24.416,24.416\r
		C280.415,340.524,269.462,351.476,255.999,351.476z M170.397,36.304h171.202c10.004,0,18.142,8.137,18.142,18.144v225.136H152.257\r
		V54.449C152.257,44.441,160.395,36.304,170.397,36.304z M211.35,315.983v22.162h-43.742l-13.906-22.162H211.35z M203.025,429.684\r
		c0,0.536-0.452,0.988-0.986,0.988h-40.204c-0.534,0-0.986-0.452-0.986-0.988V416c0-0.542,0.443-0.984,0.986-0.984h40.204\r
		c0.544,0,0.986,0.443,0.986,0.984V429.684z M203.025,392.25c0,0.545-0.442,0.988-0.986,0.988h-40.204\r
		c-0.543,0-0.986-0.442-0.986-0.988v-13.68c0-0.536,0.452-0.988,0.986-0.988h40.204c0.534,0,0.986,0.452,0.986,0.988V392.25z\r
		 M160.849,467.118v-13.684c0-0.536,0.452-0.988,0.986-0.988h40.204c0.534,0,0.986,0.452,0.986,0.988v13.684\r
		c0,0.536-0.452,0.988-0.986,0.988h-40.204C161.302,468.106,160.849,467.654,160.849,467.118z M358.295,315.983l-13.905,22.162\r
		h-43.742v-22.162H358.295z M351.151,429.684c0,0.536-0.452,0.988-0.988,0.988h-40.202c-0.536,0-0.988-0.452-0.988-0.988V416\r
		c0-0.542,0.443-0.984,0.988-0.984h40.202c0.546,0,0.988,0.443,0.988,0.984V429.684z M351.151,392.25\r
		c0,0.545-0.442,0.988-0.988,0.988h-40.202c-0.545,0-0.988-0.442-0.988-0.988v-13.68c0-0.536,0.452-0.988,0.988-0.988h40.202\r
		c0.536,0,0.988,0.452,0.988,0.988V392.25z M308.973,467.118v-13.684c0-0.536,0.452-0.988,0.988-0.988h40.202\r
		c0.536,0,0.988,0.452,0.988,0.988v13.684c0,0.536-0.452,0.988-0.988,0.988h-40.202\r
		C309.425,468.106,308.973,467.654,308.973,467.118z"/>\r
</g>\r
</svg>`;
var Ub = `<?xml version="1.0" encoding="utf-8"?><!--\r
 // 16pxls (c) by Paul mackenzie <paul@whatspauldoing.com>\r
 //\r
 // 16pxls is licensed under a\r
 // Creative Commons Attribution-ShareAlike 4.0 International License.\r
 //\r
 // You should have received a copy of the license along with this\r
 // work. If not, see <http://creativecommons.org/licenses/by-sa/4.0/>.\r
-->\r
\r
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">\r
    <path d="M14 3.5L8.5 9 7 7.5 12.5 2H10V0h6v6h-2V3.5zM6 0v2H2v12h12v-4h2v6H0V0h6z" fill-rule="evenodd"/>\r
</svg>`;
var Vb = `<?xml version="1.0" ?>
\r<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 512 512" version="1.1" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
\r<g id="_x32_1_x2C__Application_x2C__bookmark_x2C__browser_x2C__favourite_x2C__page">
\r<g id="XMLID_858_">
\r<g id="XMLID_55_">
\r<path d="M241,276H96c-2.761,0-5-2.238-5-5v-70c0-2.761,2.239-5,5-5h145c2.761,0,5,2.239,5,5v70     C246,273.762,243.761,276,241,276z M101,266h135v-60H101V266z" id="XMLID_421_"/>
\r</g>
\r<g id="XMLID_868_">
\r<g id="XMLID_869_">
\r<g id="XMLID_54_">
\r<path d="M406,391H96c-2.761,0-5-2.238-5-5V146c0-2.761,2.239-5,5-5h310c2.762,0,5,2.239,5,5v240       C411,388.762,408.762,391,406,391z M101,381h300V151H101V381z" id="XMLID_414_"/>
\r</g>
\r<g id="XMLID_870_">
\r<g id="XMLID_871_">
\r<g id="XMLID_872_">
\r<g id="XMLID_873_">
\r<g id="XMLID_874_">
\r<g id="XMLID_875_">
\r<g id="XMLID_876_">
\r<g id="XMLID_53_">
\r<path d="M456,151H56c-2.761,0-5-2.239-5-5s2.239-5,5-5h400c2.762,0,5,2.239,5,5S458.762,151,456,151z" id="XMLID_418_"/>
\r</g>
\r<g id="XMLID_52_">
\r<path d="M426.499,446H85.501C66.477,446,51,430.523,51,411.499V101              c0-19.024,15.477-34.501,34.501-34.501H426.5c19.023,0,34.5,15.477,34.5,34.5v310.5              C461,430.523,445.522,446,426.499,446z M85.501,76.499C71.991,76.499,61,87.49,61,101v310.499              C61,425.009,71.991,436,85.501,436h340.998c13.51,0,24.501-10.991,24.501-24.501v-310.5c0-13.509-10.99-24.5-24.5-24.5              H85.501z" id="XMLID_415_"/>
\r</g>
\r<g id="XMLID_51_">
\r<path d="M411,131c-11.028,0-20-8.972-20-20s8.972-20,20-20s20,8.972,20,20S422.028,131,411,131z               M411,101c-5.514,0-10,4.486-10,10s4.486,10,10,10s10-4.486,10-10S416.514,101,411,101z" id="XMLID_411_"/>
\r</g>
\r<g id="XMLID_50_">
\r<path d="M361,131c-11.028,0-20-8.972-20-20s8.972-20,20-20s20,8.972,20,20S372.028,131,361,131z               M361,101c-5.514,0-10,4.486-10,10s4.486,10,10,10s10-4.486,10-10S366.514,101,361,101z" id="XMLID_408_"/>
\r</g>
\r<g id="XMLID_49_">
\r<path d="M311,131c-11.028,0-20-8.972-20-20s8.972-20,20-20s20,8.972,20,20S322.028,131,311,131z               M311,101c-5.514,0-10,4.486-10,10s4.486,10,10,10s10-4.486,10-10S316.514,101,311,101z" id="XMLID_405_"/>
\r</g>
\r<g id="XMLID_48_">
\r<path d="M141,151c-2.761,0-5-2.239-5-5V71c0-2.761,2.239-5,5-5s5,2.239,5,5v75              C146,148.761,143.761,151,141,151z" id="XMLID_404_"/>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r</g>
\r<g id="XMLID_859_">
\r<g id="XMLID_47_">
\r<path d="M336,391c-41.355,0-75-33.645-75-75s33.645-75,75-75s75,33.645,75,75S377.355,391,336,391z M336,251      c-35.841,0-65,29.159-65,65s29.159,65,65,65s65-29.159,65-65S371.841,251,336,251z" id="XMLID_401_"/>
\r</g>
\r<g id="XMLID_46_">
\r<path d="M363.726,359.161c-1.031,0-2.063-0.318-2.938-0.955L336,340.198l-24.787,18.008      c-1.752,1.273-4.125,1.273-5.877,0c-1.753-1.273-2.486-3.53-1.816-5.59l9.467-29.139L288.2,305.469      c-1.753-1.273-2.486-3.53-1.816-5.59c0.669-2.061,2.589-3.455,4.755-3.455h30.639l9.468-29.139      c0.669-2.061,2.589-3.455,4.755-3.455s4.086,1.395,4.755,3.455l9.468,29.139h30.639c2.166,0,4.086,1.395,4.755,3.455      c0.67,2.06-0.063,4.316-1.816,5.59l-24.786,18.009l9.467,29.139c0.67,2.06-0.063,4.316-1.816,5.59      C365.788,358.843,364.757,359.161,363.726,359.161z M336,329.018c1.031,0,2.063,0.318,2.938,0.955l15.277,11.099l-5.835-17.959      c-0.67-2.06,0.063-4.316,1.816-5.59l15.275-11.099H346.59c-2.166,0-4.086-1.395-4.755-3.455L336,285.011l-5.835,17.958      c-0.669,2.061-2.589,3.455-4.755,3.455h-18.883l15.275,11.099c1.753,1.273,2.486,3.53,1.816,5.59l-5.835,17.959l15.277-11.099      C333.938,329.336,334.969,329.018,336,329.018z" id="XMLID_395_"/>
\r</g>
\r</g>
\r</g>
\r</g>
\r<g id="Layer_1"/>
\r</svg>`;
var zb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <style>
      .cls-1 {
        fill: none;
      }
    </style>
  </defs>
  <path d="M8,30H2V24H8ZM4,28H6V26H4Z" transform="translate(0 0)"/>
  <path d="M19,30H13V24h6Zm-4-2h2V26H15Z" transform="translate(0 0)"/>
  <path d="M30,30H24V24h6Zm-4-2h2V26H26Z" transform="translate(0 0)"/>
  <path d="M16,10a4,4,0,1,1,4-4A4.0045,4.0045,0,0,1,16,10Zm0-6a2,2,0,1,0,2,2A2.002,2.002,0,0,0,16,4Z" transform="translate(0 0)"/>
  <path d="M26,16H21a4.0045,4.0045,0,0,1-4-4H15a4.0045,4.0045,0,0,1-4,4H6a2.0023,2.0023,0,0,0-2,2v4H6V18h5A5.9694,5.9694,0,0,0,15,16.46V22h2V16.46A5.9694,5.9694,0,0,0,21,18h5v4h2V18A2.0023,2.0023,0,0,0,26,16Z" transform="translate(0 0)"/>
  <rect id="_Transparent_Rectangle_" data-name="&lt;Transparent Rectangle&gt;" class="cls-1" width="32" height="32"/>
</svg>`;
var Gb = `<?xml version="1.0" encoding="UTF-8" standalone="no"?>\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 -1 20 20" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">\r
    \r
    <title>network_3 [#1116]</title>\r
    <desc>Created with Sketch.</desc>\r
    <defs>\r
\r
</defs>\r
    <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">\r
        <g id="Dribbble-Light-Preview" transform="translate(-140.000000, -3280.000000)" fill="#000000">\r
            <g id="icons" transform="translate(56.000000, 160.000000)">\r
                <path d="M92,3124 L96,3124 L96,3120 L92,3120 L92,3124 Z M92,3138 L96,3138 L96,3134 L92,3134 L92,3138 Z M100,3138 L104,3138 L104,3134 L100,3134 L100,3138 Z M84,3138 L88,3138 L88,3134 L84,3134 L84,3138 Z M87,3132 L85,3132 L85,3128 L93,3128 L93,3126 L95,3126 L95,3128 L103,3128 L103,3132 L101,3132 L101,3130 L95,3130 L95,3132 L93,3132 L93,3130 L87,3130 L87,3132 Z" id="network_3-[#1116]">\r
\r
</path>\r
            </g>\r
        </g>\r
    </g>\r
</svg>`;
var jb = `<?xml version="1.0" ?>
\r<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 1000 1000" id="Layer_2" version="1.1" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
\r<g>
\r<path d="M152.09,182.23v58.88h695.82v-58.88c0-16.5-13.5-30-30-30H182.09   C165.59,152.23,152.09,165.73,152.09,182.23z M767,196.67c0-6.88,5.62-12.5,12.5-12.5h28.37c3.43,0,6.56,1.4,8.83,3.67   c2.26,2.27,3.67,5.39,3.67,8.83c0,6.87-5.63,12.5-12.5,12.5H779.5c-3.44,0-6.56-1.41-8.83-3.67C768.4,203.23,767,200.11,767,196.67   z M690.33,196.67c0-6.88,5.63-12.5,12.5-12.5h28.37c3.44,0,6.56,1.4,8.83,3.67c2.27,2.27,3.67,5.39,3.67,8.83   c0,6.87-5.62,12.5-12.5,12.5h-28.37c-3.43,0-6.56-1.41-8.83-3.67C691.74,203.23,690.33,200.11,690.33,196.67z M613.67,196.67   c0-6.88,5.62-12.5,12.5-12.5h28.37c3.44,0,6.56,1.4,8.83,3.67c2.26,2.27,3.67,5.39,3.67,8.83c0,6.87-5.63,12.5-12.5,12.5h-28.37   c-3.44,0-6.57-1.41-8.83-3.67C615.08,203.23,613.67,200.11,613.67,196.67z" style="fill:#231F20;"/>
\r<path d="M495.51,575.63c-84.49,0-152.99,18.06-152.99,40.33c0,0.39,0.03,0.77,0.07,1.16h-0.07v73.49   c0,22.28,68.5,40.34,152.99,40.34c84.5,0,153-18.06,153-40.34v-73.49h-0.07c0.04-0.39,0.07-0.77,0.07-1.16   C648.51,593.69,580.01,575.63,495.51,575.63z M382.25,678.29c-6.9,0-12.5-5.6-12.5-12.5c0-6.91,5.6-12.5,12.5-12.5   s12.5,5.59,12.5,12.5C394.75,672.69,389.15,678.29,382.25,678.29z" style="fill:#231F20;"/>
\r<path d="M647.74,728.72c-9.62,5.63-22.28,10.53-37.67,14.59c-30.92,8.15-71.6,12.64-114.56,12.64   c-42.95,0-83.63-4.49-114.55-12.64c-15.4-4.06-28.06-8.96-37.67-14.59c-0.51,1.34-0.77,2.69-0.77,4.07c0,0.38,0.03,0.77,0.07,1.15   h-0.07v73.5c0,22.27,68.5,40.33,152.99,40.33c84.5,0,153-18.06,153-40.33v-73.5h-0.07c0.04-0.38,0.07-0.77,0.07-1.15   C648.51,731.41,648.25,730.06,647.74,728.72z M382.25,800.74c-6.9,0-12.5-5.6-12.5-12.5c0-6.9,5.6-12.5,12.5-12.5   s12.5,5.6,12.5,12.5C394.75,795.14,389.15,800.74,382.25,800.74z" style="fill:#231F20;"/>
\r<path d="M495.51,345.96c-43.65,0-79.16,35.51-79.16,79.16c0,43.66,35.51,79.17,79.16,79.17   c43.6,0,79.07-35.42,79.17-78.99c0-0.06-0.01-0.12-0.01-0.18s0.01-0.12,0.01-0.18C574.58,381.37,539.11,345.96,495.51,345.96z    M540.19,456.08c-2.42,3.5-6.32,5.38-10.28,5.38c-2.46,0-4.94-0.72-7.11-2.22l-34.41-23.84c-3.37-2.34-5.38-6.18-5.38-10.28v-44.33   c0-6.9,5.6-12.5,12.5-12.5c6.91,0,12.5,5.6,12.5,12.5v37.79l29.03,20.11C542.71,442.62,544.13,450.41,540.19,456.08z" style="fill:#231F20;"/>
\r<path d="M152.09,630.6c0,16.5,13.5,30,30,30h135.43v-43.48c0-0.18,0-0.36,0.01-0.54   c-0.01-0.2-0.01-0.41-0.01-0.62c0-10.07,4.13-24.65,23.8-36.91c9.83-6.13,23.17-11.44,39.64-15.78   c27.9-7.36,63.76-11.73,102.05-12.51v-22.22c-47.46-5.71-85.21-43.45-90.91-90.92h-13.92c-6.9,0-12.5-5.59-12.5-12.5   c0-6.9,5.6-12.5,12.5-12.5h13.92c5.7-47.46,43.45-85.21,90.91-90.91v-13.92c0-6.9,5.6-12.5,12.5-12.5c6.91,0,12.5,5.6,12.5,12.5   v13.92c47.47,5.7,85.22,43.45,90.92,90.91h13.9c6.91,0,12.5,5.6,12.5,12.5c0,6.91-5.59,12.5-12.5,12.5h-13.9   c-5.7,47.47-43.45,85.21-90.92,90.92v22.22c38.3,0.78,74.16,5.15,102.06,12.51c16.47,4.34,29.81,9.65,39.64,15.78   c19.67,12.26,23.8,26.84,23.8,36.91c0,0.2,0,0.41-0.01,0.62c0.01,0.18,0.01,0.36,0.01,0.54v43.48h144.4c16.5,0,30-13.5,30-30   V266.11H152.09V630.6z M737.73,571.96c-2.27,2.26-5.39,3.67-8.83,3.67h-36.95c-6.88,0-12.5-5.63-12.5-12.5   c0-3.44,1.41-6.56,3.67-8.83c2.26-2.27,5.39-3.67,8.83-3.67h36.95c6.87,0,12.5,5.62,12.5,12.5   C741.4,566.57,739.99,569.69,737.73,571.96z M737.73,368.29c-2.27,2.26-5.39,3.67-8.83,3.67h-36.95c-6.88,0-12.5-5.63-12.5-12.5   c0-3.44,1.41-6.57,3.67-8.83c2.26-2.26,5.39-3.67,8.83-3.67h36.95c6.87,0,12.5,5.62,12.5,12.5   C741.4,362.89,739.99,366.02,737.73,368.29z M762,301.03c2.26-2.26,5.39-3.67,8.83-3.67h32.74c6.87,0,12.5,5.63,12.5,12.5   c0,3.44-1.41,6.57-3.67,8.83c-2.27,2.26-5.4,3.67-8.83,3.67h-32.74c-6.88,0-12.5-5.62-12.5-12.5   C758.33,306.43,759.74,303.3,762,301.03z M762,350.63c2.26-2.26,5.39-3.67,8.83-3.67h32.74c6.87,0,12.5,5.62,12.5,12.5   c0,3.43-1.41,6.56-3.67,8.83c-2.27,2.26-5.4,3.67-8.83,3.67h-32.74c-6.88,0-12.5-5.63-12.5-12.5   C758.33,356.02,759.74,352.89,762,350.63z M762,554.3c2.26-2.27,5.39-3.67,8.83-3.67h32.74c6.87,0,12.5,5.62,12.5,12.5   c0,3.44-1.41,6.56-3.67,8.83c-2.27,2.26-5.4,3.67-8.83,3.67h-32.74c-6.88,0-12.5-5.63-12.5-12.5   C758.33,559.69,759.74,556.57,762,554.3z M621.17,301.03c2.27-2.26,5.39-3.67,8.83-3.67h98.9c6.87,0,12.5,5.63,12.5,12.5   c0,3.44-1.41,6.57-3.67,8.83c-2.27,2.26-5.39,3.67-8.83,3.67H630c-6.88,0-12.5-5.62-12.5-12.5   C617.5,306.43,618.9,303.3,621.17,301.03z M253.29,301.03c2.27-2.26,5.39-3.67,8.83-3.67h98.9c6.88,0,12.5,5.63,12.5,12.5   c0,3.44-1.4,6.57-3.67,8.83s-5.39,3.67-8.83,3.67h-98.9c-6.87,0-12.5-5.62-12.5-12.5C249.62,306.43,251.03,303.3,253.29,301.03z    M253.29,350.63c2.27-2.26,5.39-3.67,8.83-3.67h36.95c6.88,0,12.5,5.62,12.5,12.5c0,3.43-1.41,6.56-3.67,8.83   c-2.26,2.26-5.39,3.67-8.83,3.67h-36.95c-6.87,0-12.5-5.63-12.5-12.5C249.62,356.02,251.03,352.89,253.29,350.63z M253.29,554.3   c2.27-2.27,5.39-3.67,8.83-3.67h36.95c6.88,0,12.5,5.62,12.5,12.5c0,3.44-1.41,6.56-3.67,8.83c-2.26,2.26-5.39,3.67-8.83,3.67   h-36.95c-6.87,0-12.5-5.63-12.5-12.5C249.62,559.69,251.03,556.57,253.29,554.3z M178.63,301.03c2.27-2.26,5.39-3.67,8.83-3.67   h32.73c6.88,0,12.5,5.63,12.5,12.5c0,3.44-1.41,6.57-3.67,8.83c-2.26,2.26-5.39,3.67-8.83,3.67h-32.73c-6.88,0-12.5-5.62-12.5-12.5   C174.96,306.43,176.36,303.3,178.63,301.03z M178.63,350.63c2.27-2.26,5.39-3.67,8.83-3.67h32.73c6.88,0,12.5,5.62,12.5,12.5   c0,3.43-1.41,6.56-3.67,8.83c-2.26,2.26-5.39,3.67-8.83,3.67h-32.73c-6.88,0-12.5-5.63-12.5-12.5   C174.96,356.02,176.36,352.89,178.63,350.63z M178.63,554.3c2.27-2.27,5.39-3.67,8.83-3.67h32.73c6.88,0,12.5,5.62,12.5,12.5   c0,3.44-1.41,6.56-3.67,8.83c-2.26,2.26-5.39,3.67-8.83,3.67h-32.73c-6.88,0-12.5-5.63-12.5-12.5   C174.96,559.69,176.36,556.57,178.63,554.3z" style="fill:#231F20;"/>
\r</g>
\r</svg>`;
var Zb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" height="800px" width="800px" id="Layer_1" data-name="Layer 1"\r
    xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16">\r
    <path class="cls-1" d="M8,2a6,6,0,1,0,6,6A6,6,0,0,0,8,2Zm4.08905,2.52631h-1.868A5.59977,5.59977,0,0,0,9.36719,2.814,5.3637,5.3637,0,0,1,12.08905,4.52631ZM9.36719,13.186a5.5999,5.5999,0,0,0,.85388-1.71228h1.868A5.36312,5.36312,0,0,1,9.36719,13.186Zm3.18127-2.34387H10.402a10.65713,10.65713,0,0,0,.20782-1.1867l-.68676.3435c-.05.29419-.10639.57959-.17566.8432H8.23712l-1.26275.63159H9.55743C9.14484,12.6474,8.55414,13.36841,8,13.36841c-.51727,0-1.06445-.63373-1.47089-1.67206l-.56005.28015A5.01956,5.01956,0,0,0,6.63281,13.186,5.363,5.363,0,0,1,3.911,11.47369h.31671a.96008.96008,0,0,1-.01715-.17022V10.8421h-.759a5.32985,5.32985,0,0,1-.80408-2.5263h1.563V7.6842h-1.563A5.32943,5.32943,0,0,1,3.4516,5.1579h.759V4.69043a.95019.95019,0,0,1,.0166-.16412H3.911A5.36353,5.36353,0,0,1,6.63281,2.814,5.01929,5.01929,0,0,0,5.97,4.02106L6.53,4.30145c.40631-1.037.95312-1.66986,1.47-1.66986.55414,0,1.14484.72095,1.55743,1.89472H6.97913l1.26141.63159h1.5069c.06921.2633.12555.5484.17553.84234l.68683.34394A10.64628,10.64628,0,0,0,10.402,5.1579h2.14642a5.33,5.33,0,0,1,.804,2.5263h-.67127a.91929.91929,0,0,1-.00055.6316h.67182A5.33045,5.33045,0,0,1,12.54846,10.8421ZM11.929,7.71088,5.3338,4.40881a.32738.32738,0,0,0-.49164.28156v6.6131a.32677.32677,0,0,0,.32685.32794l.14831-.03516L11.915,8.29639a.32563.32563,0,0,0,.014-.58551ZM5.84229,10.21576V5.78021l4.43164,2.21973Z"/>\r
</svg>`;
var Wb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 32 32" id="icon" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <style>
      .cls-1 {
        fill: none;
      }
    </style>
  </defs>
  <path d="M28,28H4a2.0021,2.0021,0,0,1-2-2V21H4v5H28V21h2v5A2.0021,2.0021,0,0,1,28,28Z" transform="translate(0 0)"/>
  <rect x="7" y="21" width="18" height="2"/>
  <rect x="7" y="16" width="18" height="2"/>
  <rect x="7" y="11" width="18" height="2"/>
  <rect x="7" y="6" width="18" height="2"/>
  <rect id="_Transparent_Rectangle_" data-name="&lt;Transparent Rectangle&gt;" class="cls-1" width="32" height="32"/>
</svg>`;
var qb = `<?xml version="1.0" encoding="utf-8"?>\r
\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" height="800px" width="800px" version="1.1" id="Icons" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 viewBox="0 0 32 32" xml:space="preserve">\r
<path d="M13,23c0-1.4,0.3-2.8,0.9-4c-0.2,0-0.4-0.1-0.5-0.2l-1.6-1.4l-5.1,4.4C6.5,21.9,6.2,22,6,22c-0.3,0-0.6-0.1-0.8-0.3\r
	c-0.4-0.4-0.3-1,0.1-1.4l4.9-4.2l-4.9-4.2c-0.4-0.4-0.5-1-0.1-1.4c0.4-0.4,1-0.5,1.4-0.1l7.3,6.4l7.3-6.4c0.4-0.4,1-0.3,1.4,0.1\r
	c0.4,0.4,0.3,1-0.1,1.4L21,13.2c0.6-0.1,1.3-0.2,2-0.2c1.4,0,2.8,0.3,4,0.8V9c0-1.7-1.3-3-3-3H4C2.3,6,1,7.3,1,9v14c0,1.7,1.3,3,3,3\r
	h9.5C13.2,25.1,13,24,13,23z"/>\r
<path d="M28.7,17.3c-3.1-3.1-8.2-3.1-11.3,0s-3.1,8.2,0,11.3s8.2,3.1,11.3,0S31.8,20.5,28.7,17.3z M26,24h-3c-0.6,0-1-0.4-1-1v-4\r
	c0-0.6,0.4-1,1-1s1,0.4,1,1v3h2c0.6,0,1,0.4,1,1S26.6,24,26,24z"/>\r
</svg>`;
var Kb = `<?xml version="1.0" encoding="iso-8859-1"?>\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
<svg fill="#000000" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 width="800px" height="800px" viewBox="0 0 493.862 493.862"\r
	 xml:space="preserve">\r
<g>\r
	<path d="M491.618,241.409h-4.588v-13.946h4.588c0.006,0.001,0.012,0.001,0.016,0c1.229,0,2.229-0.998,2.229-2.229\r
		c0-0.479-0.15-0.923-0.408-1.287l-6.702-12.064c-0.394-0.707-1.14-1.146-1.948-1.146H328.899v-34.123\r
		c0-0.025-0.007-0.047-0.008-0.072c1.609-1.525,2.62-3.676,2.62-6.063c0-2.387-1.011-4.538-2.62-6.063\r
		c0.001-0.024,0.008-0.047,0.008-0.072v-36.352c0-7.556-5.594-18.429-13.632-20.337V98.91c0-1.23-0.998-2.229-2.229-2.229\r
		c-1.231,0-2.229,0.998-2.229,2.229v8.641c-8.415,1.565-13.873,12.813-13.873,20.442c0,0.357,0.092,0.689,0.241,0.988v21.774\r
		h-47.906V104.25c0-1.231-0.997-2.229-2.228-2.229s-2.229,0.998-2.229,2.229v46.505h-48.146v-22.763\r
		c0-7.554-5.354-18.659-13.632-20.393v-8.69c0-1.23-0.998-2.229-2.229-2.229s-2.229,0.998-2.229,2.229v8.69\r
		c-8.278,1.734-13.632,12.838-13.632,20.393v36.352c0,0.025,0.006,0.047,0.007,0.071c-1.61,1.525-2.621,3.676-2.621,6.063\r
		c0,2.387,1.011,4.539,2.621,6.063c-0.001,0.024-0.007,0.046-0.007,0.071v34.123H9.044c-0.81,0-1.555,0.439-1.948,1.146\r
		l-6.816,12.271c-0.383,0.691-0.373,1.532,0.027,2.213s1.131,1.098,1.921,1.098h4.587v13.946H2.229c-0.79,0-1.521,0.417-1.921,1.098\r
		c-0.4,0.681-0.411,1.523-0.027,2.213l6.535,11.765v138.47c0,1.229,0.998,2.229,2.229,2.229h65.774c1.231,0,2.229-0.998,2.229-2.229\r
		v-44.306c0-2.388,0.761-4.669,2.202-6.599c0.505-0.679,0.584-1.583,0.204-2.337c-0.692-1.373-1.043-2.838-1.043-4.355\r
		c0-3.576,5.496-9.168,9.7-12.525c4.203,3.357,9.699,8.949,9.699,12.525c0,1.518-0.351,2.982-1.043,4.355\r
		c-0.38,0.754-0.301,1.658,0.204,2.337c1.441,1.93,2.203,4.211,2.203,6.599v44.306c0,1.229,0.998,2.229,2.229,2.229h65.774h27.265\r
		h28.719c1.231,0,2.229-0.998,2.229-2.229v-70.115c0-11.941,9.715-21.656,21.656-21.656c11.939,0,21.654,9.715,21.654,21.656v70.115\r
		c0,1.229,0.998,2.229,2.229,2.229h28.479h27.264h65.773c1.231,0,2.229-0.998,2.229-2.229v-44.306c0-2.388,0.763-4.669,2.203-6.599\r
		c0.506-0.679,0.584-1.583,0.204-2.337c-0.692-1.373-1.044-2.838-1.044-4.355c0-3.576,5.497-9.168,9.699-12.525\r
		c4.203,3.357,9.699,8.949,9.699,12.525c0,1.518-0.352,2.982-1.044,4.355c-0.381,0.754-0.302,1.658,0.204,2.337\r
		c1.44,1.93,2.202,4.211,2.202,6.599v44.306c0,1.229,0.998,2.229,2.229,2.229h65.774c1.231,0,2.229-0.998,2.229-2.229v-138.47\r
		l6.534-11.765c0.384-0.69,0.374-1.532-0.025-2.213C493.141,241.826,492.407,241.409,491.618,241.409z M482.573,241.409H329.14\r
		v-13.946h153.434V241.409z M280.846,241.409v-26.215h6.107v26.215H280.846z M270.281,241.409v-26.215h6.107v26.215H270.281z\r
		 M259.717,241.409v-26.215h6.105v26.215H259.717z M249.151,241.409v-26.215h6.107v26.215H249.151z M238.588,241.409v-26.215h6.107\r
		v26.215H238.588z M228.022,241.409v-26.215h6.108v26.215H228.022z M217.458,241.409v-26.215h6.107v26.215H217.458z\r
		 M206.893,241.409v-26.215H213v26.215H206.893z M196.997,241.409c-0.614-4.735-3.073-10.206-6.737-13.946h0.659\r
		c4.612,0,8.363-3.751,8.363-8.363c0-1.41-0.354-2.739-0.974-3.905h4.127v26.215L196.997,241.409L196.997,241.409z M166.792,170.479\r
		c0-2.154,1.752-3.906,3.906-3.906h20.221c2.154,0,3.906,1.752,3.906,3.906c0,2.154-1.752,3.906-3.906,3.906h-20.221\r
		C168.543,174.385,166.792,172.633,166.792,170.479z M196.669,178.843h100.509v31.895H196.669V178.843z M327.054,170.479\r
		c0,2.154-1.752,3.906-3.905,3.906h-20.221c-2.154,0-3.906-1.752-3.906-3.906c0-2.154,1.752-3.906,3.906-3.906h20.221\r
		C325.302,166.574,327.054,168.326,327.054,170.479z M302.928,215.193h20.221c2.153,0,3.905,1.752,3.905,3.905\r
		c0,2.154-1.752,3.906-3.905,3.906h-20.221c-2.154,0-3.906-1.752-3.906-3.906C299.021,216.947,300.773,215.193,302.928,215.193z\r
		 M323.148,227.463h1.293v2.633c-0.671-0.942-1.403-1.827-2.192-2.633H323.148z M312.797,227.463\r
		c5.298,0,10.489,7.198,11.645,13.639v0.307h-1.293h-20.221h-1.362C302.537,234.8,307.526,227.463,312.797,227.463z\r
		 M192.504,241.409h-1.586h-20.221h-1.121c0.97-6.609,5.96-13.946,11.231-13.946C186.19,227.463,191.462,234.892,192.504,241.409z\r
		 M170.698,223.006c-2.154,0-3.906-1.752-3.906-3.906c0-2.153,1.752-3.905,3.906-3.905h20.221c2.154,0,3.906,1.752,3.906,3.905\r
		c0,2.154-1.752,3.906-3.906,3.906H170.698z M170.698,227.463h0.815c-0.762,0.806-1.465,1.691-2.107,2.632v-2.632H170.698z\r
		 M166.792,249.771c0-2.152,1.752-3.906,3.906-3.906h20.221c2.154,0,3.906,1.751,3.906,3.906s-1.752,3.905-3.906,3.905h-20.221\r
		C168.543,253.677,166.792,251.925,166.792,249.771z M291.411,215.193h4.128c-0.62,1.167-0.975,2.495-0.975,3.905\r
		c0,4.612,3.751,8.363,8.363,8.363h0.573c-3.549,3.751-5.847,9.24-6.42,13.946h-5.672v-26.214H291.411z M299.021,249.771\r
		c0-2.152,1.752-3.906,3.906-3.906h20.221c2.153,0,3.905,1.751,3.905,3.906s-1.752,3.905-3.905,3.905h-20.221\r
		C300.773,253.677,299.021,251.925,299.021,249.771z M487.831,223.006h-3.028H330.539c0.618-1.167,0.974-2.495,0.974-3.906\r
		c0-1.41-0.354-2.739-0.974-3.905H483.49L487.831,223.006z M324.441,178.843v31.895h-1.293h-20.221h-1.293v-31.895h1.293h20.221\r
		H324.441z M302.928,162.116h-1.293v-31.894h22.807v31.895h-1.293L302.928,162.116L302.928,162.116z M312.797,111.817\r
		c5.271,0,10.438,7.429,11.46,13.946h-22.691C302.537,119.155,307.526,111.817,312.797,111.817z M296.937,155.213v9.443\r
		c-1.466,1.507-2.372,3.56-2.372,5.823c0,1.41,0.354,2.739,0.975,3.906h-97.23c0.62-1.167,0.974-2.496,0.974-3.906\r
		c0-2.384-1.007-4.532-2.612-6.056v-0.079v-9.131H296.937z M180.808,111.817c5.271,0,10.261,7.337,11.231,13.946h-22.462\r
		C170.547,119.155,175.538,111.817,180.808,111.817z M169.405,162.116v-31.894h22.807v22.763v9.132h-1.293h-20.221L169.405,162.116\r
		L169.405,162.116z M190.918,178.843h1.293v31.895h-1.293h-18.971h-1.25h-1.292v-31.895h1.292H190.918z M10.355,215.193h152.952\r
		c-0.619,1.167-0.974,2.495-0.974,3.905c0,1.411,0.354,2.74,0.974,3.906H9.044H6.017L10.355,215.193z M11.273,227.463h153.674\r
		v13.946H11.273V227.463z M9.044,245.866h154.263c-0.619,1.167-0.974,2.496-0.974,3.906c0,1.411,0.354,2.739,0.974,3.905H10.355\r
		l-4.339-7.811H9.044z M101.298,342.488c0.644-1.639,0.969-3.358,0.969-5.131c0-7.5-11.524-16.169-12.839-17.133\r
		c-0.784-0.576-1.851-0.576-2.635,0c-1.314,0.964-12.839,9.633-12.839,17.133c0,1.771,0.325,3.492,0.969,5.131\r
		c-1.53,2.456-2.333,5.251-2.333,8.16v42.076H11.273v-134.59h153.674v134.59h-61.317v-42.076\r
		C103.63,347.739,102.828,344.944,101.298,342.488z M169.405,392.725v-134.59h1.292h20.221h1.293v134.59H169.405z M247.043,298.725\r
		c-14.398,0-26.113,11.714-26.113,26.113v67.887h-24.262V255.906c0-0.023-0.006-0.048-0.007-0.07c1.609-1.525,2.62-3.676,2.62-6.063\r
		c0-1.409-0.354-2.737-0.974-3.906h97.23c-0.62,1.167-0.975,2.497-0.975,3.906c0,2.388,1.011,4.539,2.62,6.063\r
		c-0.001,0.023-0.007,0.047-0.007,0.07v136.818h-24.021v-67.887C273.156,310.438,261.441,298.725,247.043,298.725z M301.635,258.135\r
		h1.293h20.221h1.293v134.59h-22.807V258.135z M482.573,392.725h-61.316v-42.076c0-2.909-0.803-5.704-2.333-8.16\r
		c0.644-1.639,0.97-3.358,0.97-5.131c0-7.5-11.523-16.169-12.838-17.133c-0.785-0.576-1.852-0.576-2.637,0\r
		c-1.313,0.964-12.839,9.633-12.839,17.133c0,1.771,0.325,3.492,0.97,5.131c-1.53,2.456-2.333,5.251-2.333,8.16v42.076H328.9\r
		v-134.59h153.674L482.573,392.725L482.573,392.725z M483.49,253.677H330.539c0.618-1.166,0.974-2.494,0.974-3.905\r
		c0-1.41-0.354-2.738-0.974-3.906h154.264h3.028L483.49,253.677z"/>\r
</g>\r
</svg>`;
var Yb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">\r
<path fill-rule="evenodd" clip-rule="evenodd" d="M10 5C8.34315 5 7 6.34315 7 8C7 9.65685 8.34315 11 10 11C11.6569 11 13 9.65685 13 8C13 6.34315 11.6569 5 10 5ZM13.5058 11.565C14.4281 10.6579 15 9.39576 15 8C15 5.23858 12.7614 3 10 3C7.23858 3 5 5.23858 5 8C5 9.39827 5.57396 10.6625 6.49914 11.5699C3.74942 12.5366 2 14.6259 2 17C2 17.5523 2.44772 18 3 18C3.55228 18 4 17.5523 4 17C4 15.2701 5.93073 13 10 13C12.6152 13 14.4051 13.9719 15.2988 15.1157C15.6389 15.5509 16.2673 15.628 16.7025 15.288C17.1377 14.9479 17.2148 14.3195 16.8748 13.8843C16.0904 12.8804 14.9401 12.0686 13.5058 11.565ZM22.6139 15.2106C23.0499 15.5497 23.1284 16.178 22.7894 16.6139L18.1227 22.6139C17.9485 22.8379 17.6875 22.9773 17.4045 22.9975C17.1216 23.0177 16.8434 22.9167 16.6392 22.7198L14.3059 20.4698C13.9083 20.0865 13.8968 19.4534 14.2802 19.0559C14.6635 18.6583 15.2966 18.6468 15.6941 19.0302L17.2268 20.5081L21.2106 15.3861C21.5497 14.9501 22.178 14.8716 22.6139 15.2106Z" fill="#000000"/>\r
</svg>`;
var Xb = `<?xml version="1.0" encoding="utf-8"?>\r
\r
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg fill="#000000" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" \r
	 width="800px" height="800px" viewBox="0 0 512 512" enable-background="new 0 0 512 512" xml:space="preserve">\r
<path d="M256,0C114.609,0,0,114.609,0,256s114.609,256,256,256s256-114.609,256-256S397.391,0,256,0z M256,472\r
	c-119.297,0-216-96.703-216-216S136.703,40,256,40s216,96.703,216,216S375.297,472,256,472z"/>\r
<path d="M256,176H128v160h128h128V176H256z M256,192h89.719L256,255.75L166.281,192H256z M144,196.531l54.5,36.859L144,292.812\r
	V196.531z M256,320h-92.406l45.562-79.422L256,272.25l46.844-31.672L348.406,320H256z M368,292.812l-54.5-59.422l54.5-36.859\r
	V292.812z"/>\r
</svg>`;
var Qb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">\r
  <title>github</title>\r
  <rect width="24" height="24" fill="none"/>\r
  <path d="M12,2A10,10,0,0,0,8.84,21.5c.5.08.66-.23.66-.5V19.31C6.73,19.91,6.14,18,6.14,18A2.69,2.69,0,0,0,5,16.5c-.91-.62.07-.6.07-.6a2.1,2.1,0,0,1,1.53,1,2.15,2.15,0,0,0,2.91.83,2.16,2.16,0,0,1,.63-1.34C8,16.17,5.62,15.31,5.62,11.5a3.87,3.87,0,0,1,1-2.71,3.58,3.58,0,0,1,.1-2.64s.84-.27,2.75,1a9.63,9.63,0,0,1,5,0c1.91-1.29,2.75-1,2.75-1a3.58,3.58,0,0,1,.1,2.64,3.87,3.87,0,0,1,1,2.71c0,3.82-2.34,4.66-4.57,4.91a2.39,2.39,0,0,1,.69,1.85V21c0,.27.16.59.67.5A10,10,0,0,0,12,2Z"/>\r
</svg>`;
var Jb = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="none"><path fill="#000000" d="M12.342 4.536l.15-.227.262.159.116.083c.28.216.869.768.996 1.684.223-.04.448-.06.673-.06.534 0 .893.124 1.097.227l.105.057.068.045.191.156-.066.2a2.044 2.044 0 01-.47.73c-.29.299-.8.652-1.609.698l-.178.005h-.148c-.37.977-.867 2.078-1.702 3.066a7.081 7.081 0 01-1.74 1.488 7.941 7.941 0 01-2.549.968c-.644.125-1.298.187-1.953.185-1.45 0-2.73-.288-3.517-.792-.703-.449-1.243-1.182-1.606-2.177a8.25 8.25 0 01-.461-2.83.516.516 0 01.432-.516l.068-.005h10.54l.092-.007.149-.016c.256-.034.646-.11.92-.27-.328-.543-.421-1.178-.268-1.854a3.3 3.3 0 01.3-.81l.108-.187zM2.89 5.784l.04.007a.127.127 0 01.077.082l.006.04v1.315l-.006.041a.127.127 0 01-.078.082l-.039.006H1.478a.124.124 0 01-.117-.088l-.007-.04V5.912l.007-.04a.127.127 0 01.078-.083l.039-.006H2.89zm1.947 0l.039.007a.127.127 0 01.078.082l.006.04v1.315l-.007.041a.127.127 0 01-.078.082l-.039.006H3.424a.125.125 0 01-.117-.088L3.3 7.23V5.913a.13.13 0 01.085-.123l.039-.007h1.413zm1.976 0l.039.007a.127.127 0 01.077.082l.007.04v1.315l-.007.041a.127.127 0 01-.078.082l-.039.006H5.4a.124.124 0 01-.117-.088l-.006-.04V5.912l.006-.04a.127.127 0 01.078-.083l.039-.006h1.413zm1.952 0l.039.007a.127.127 0 01.078.082l.007.04v1.315a.13.13 0 01-.085.123l-.04.006H7.353a.124.124 0 01-.117-.088l-.006-.04V5.912l.006-.04a.127.127 0 01.078-.083l.04-.006h1.412zm1.97 0l.039.007a.127.127 0 01.078.082l.006.04v1.315a.13.13 0 01-.085.123l-.039.006H9.322a.124.124 0 01-.117-.088l-.006-.04V5.912l.006-.04a.127.127 0 01.078-.083l.04-.006h1.411zM4.835 3.892l.04.007a.127.127 0 01.077.081l.007.041v1.315a.13.13 0 01-.085.123l-.039.007H3.424a.125.125 0 01-.117-.09l-.007-.04V4.021a.13.13 0 01.085-.122l.039-.007h1.412zm1.976 0l.04.007a.127.127 0 01.077.081l.007.041v1.315a.13.13 0 01-.085.123l-.039.007H5.4a.125.125 0 01-.117-.09l-.006-.04V4.021l.006-.04a.127.127 0 01.078-.082l.039-.007h1.412zm1.953 0c.054 0 .1.037.117.088l.007.041v1.315a.13.13 0 01-.085.123l-.04.007H7.353a.125.125 0 01-.117-.09l-.006-.04V4.021l.006-.04a.127.127 0 01.078-.082l.04-.007h1.412zm0-1.892c.054 0 .1.037.117.088l.007.04v1.316a.13.13 0 01-.085.123l-.04.006H7.353a.124.124 0 01-.117-.088l-.006-.04V2.128l.006-.04a.127.127 0 01.078-.082L7.353 2h1.412z"/></svg>`;
var ew = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->\r
<svg width="800px" height="800px" viewBox="0 0 48 48" id="Layer_2" data-name="Layer 2" xmlns="http://www.w3.org/2000/svg"><defs><style>.cls-1{fill:none;stroke:#000000;stroke-linecap:round;stroke-linejoin:round;}</style></defs><path id="path50" class="cls-1" d="M24,42h0l7.18-22.1H16.82L24,42Z"/><path id="path66" class="cls-1" d="M6.76,19.86h0L4.57,26.57a1.5,1.5,0,0,0,.54,1.67L24,42,6.76,19.86Z"/><path id="path74" class="cls-1" d="M6.76,19.86H16.82L12.49,6.55a.74.74,0,0,0-1.41,0L6.76,19.86Z"/><path id="path82" class="cls-1" d="M41.25,19.86h0l2.18,6.71a1.5,1.5,0,0,1-.54,1.67L24,42l17.25-22.1Z"/><path id="path86" class="cls-1" d="M41.25,19.86H31.18L35.51,6.55a.74.74,0,0,1,1.41,0l4.33,13.31Z"/><polygon class="cls-1" points="24 41.96 31.18 19.86 41.25 19.86 24 41.96"/><polygon class="cls-1" points="24 41.96 6.76 19.86 16.82 19.86 24 41.96"/></svg>`;
var tw = `<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<path fill="#444444" d="M16.392 2.991c-0.627 0.053-1.097 0.14-1.539 0.283-0.27 0.088-0.859 0.311-1.073 0.406-0.173 0.076-0.928 0.491-1.406 0.77-0.834 0.488-1.265 0.952-1.466 1.582-0.040 0.123-0.057 0.153-0.097 0.175-0.198 0.108-0.386 0.276-0.513 0.459-0.195 0.285-0.335 0.726-0.379 1.198-0.010 0.11-0.023 0.238-0.027 0.286l-0.008 0.086-0.195 0.171c-0.536 0.473-1.11 1.118-1.534 1.727-0.879 1.261-1.469 2.767-1.679 4.277-0.075 0.544-0.092 0.8-0.092 1.423s0.017 0.878 0.092 1.423c0.136 0.985 0.453 2.018 0.897 2.94 0.521 1.080 1.288 2.118 2.147 2.909l0.245 0.225 0.020 0.313c0.012 0.171 0.028 0.517 0.035 0.769 0.018 0.582 0.042 0.682 0.186 0.805 0.083 0.071 0.216 0.136 0.488 0.238 0.11 0.042 0.458 0.201 0.774 0.354 0.802 0.391 1.062 0.496 1.461 0.592 0.28 0.068 0.344 0.076 0.709 0.088l0.349 0.010 0.113 0.391c0.205 0.699 0.376 1.266 0.471 1.556 0.118 0.358 0.273 0.777 0.298 0.8 0.025 0.027 0.271 0.1 0.529 0.158 0.93 0.21 2.38 0.238 3.766 0.072 0.469-0.057 0.792-0.233 0.907-0.494 0.030-0.067 0.032-0.090 0.017-0.19-0.008-0.062-0.022-0.208-0.027-0.323l-0.012-0.21 0.148-0.028c0.484-0.093 0.726-0.22 0.832-0.436 0.035-0.073 0.045-0.121 0.052-0.261 0.012-0.215-0.008-0.353-0.113-0.819-0.142-0.614-0.17-0.847-0.133-1.068l0.021-0.12 0.105-0.035c0.225-0.075 0.325-0.186 0.325-0.364v-0.086l0.105-0.048c0.25-0.113 0.524-0.165 0.927-0.178l0.291-0.008 0.047 0.082c0.027 0.043 0.075 0.113 0.11 0.153 0.062 0.072 0.065 0.073 0.236 0.103 0.523 0.090 1.060 0.091 1.469 0.005 0.318-0.067 0.424-0.12 0.586-0.293 0.301-0.325 0.509-0.949 0.508-1.536 0-0.26-0.015-0.351-0.12-0.716-0.146-0.507-0.336-1.023-0.478-1.298-0.088-0.171-0.225-0.321-0.373-0.409-0.053-0.030-0.096-0.062-0.096-0.070 0-0.007 0.038-0.080 0.085-0.163 0.133-0.236 0.399-0.797 0.513-1.075 0.389-0.97 0.612-1.932 0.702-3.034 0.025-0.309 0.025-1.135 0-1.448-0.088-1.093-0.311-2.060-0.702-3.033-0.13-0.323-0.454-0.983-0.631-1.285-0.403-0.684-0.894-1.328-1.448-1.897l-0.259-0.266-0.030-0.329c-0.101-1.155-0.373-2.098-0.782-2.724-0.298-0.456-0.913-1.115-1.466-1.569-0.657-0.541-1.453-0.845-2.571-0.985-0.198-0.025-1.13-0.047-1.315-0.032zM17.649 3.619c0.637 0.103 1.268 0.301 1.835 0.579 0.399 0.196 0.601 0.344 0.927 0.681 0.228 0.236 0.812 0.963 0.845 1.053 0.012 0.028 0.005 0.030-0.067 0.020-0.304-0.040-0.454-0.028-0.629 0.055-0.215 0.1-0.336 0.27-0.345 0.481-0.002 0.038 0.002 0.075 0.007 0.080s0.037-0.010 0.072-0.033c0.131-0.090 0.233-0.117 0.449-0.117 0.181 0 0.215 0.005 0.358 0.055 0.228 0.077 0.398 0.183 0.574 0.359 0.321 0.319 0.431 0.699 0.491 1.706 0.030 0.486 0.040 1.459 0.018 1.764-0.095 1.343-0.451 2.588-1.008 3.534-0.123 0.21-0.552 0.852-0.656 0.982-0.138 0.171-0.318 0.333-0.518 0.463-0.601 0.391-1.233 0.646-1.824 0.739-0.241 0.037-0.691 0.037-0.905 0-0.228-0.040-0.567-0.16-0.874-0.309-0.8-0.391-1.338-0.909-2.201-2.122l-0.106-0.15 0.010 0.083c0.051 0.373 0.268 0.755 0.707 1.256 0.507 0.576 0.879 0.915 1.2 1.095 0.060 0.033 0.12 0.072 0.133 0.085 0.022 0.020 0.013 0.022-0.058 0.012-0.047-0.005-0.176-0.015-0.291-0.020-0.338-0.017-0.562 0.053-0.674 0.208l-0.050 0.070-0.175-0.010c-0.97-0.055-1.557-0.235-1.907-0.586-0.381-0.381-0.927-1.646-1.047-2.428-0.040-0.253-0.030-0.278 0.16-0.484 0.21-0.226 0.246-0.309 0.196-0.454-0.018-0.052-0.022-0.053-0.093-0.043-0.097 0.013-0.151 0.042-0.329 0.178-0.082 0.062-0.171 0.122-0.2 0.131-0.155 0.060-0.409 0.050-0.589-0.023-0.448-0.181-0.852-0.767-0.973-1.408-0.035-0.181-0.035-0.506 0-0.647 0.080-0.325 0.293-0.617 0.566-0.777 0.198-0.117 0.471-0.17 0.706-0.142 0.376 0.048 0.584 0.3 0.737 0.895l0.055 0.213 0.18-0.003c0.298-0.003 0.539-0.083 0.631-0.208 0.033-0.043 0.033-0.048 0.005-0.233-0.017-0.103-0.061-0.316-0.101-0.471-0.19-0.751-0.188-0.87 0.032-1.922 0.102-0.486 0.128-0.686 0.13-0.94 0.002-0.238-0.028-0.426-0.095-0.624-0.023-0.067-0.042-0.141-0.042-0.165 0-0.055 0.111-0.258 0.25-0.454 0.138-0.198 0.576-0.639 0.832-0.835 0.243-0.188 0.691-0.484 0.982-0.649 0.869-0.493 1.176-0.581 1.988-0.567 0.344 0.005 0.461 0.013 0.682 0.048zM14.321 4.080c0.088 0.070 0.020 0.193-0.135 0.243-0.060 0.018-0.113 0.053-0.178 0.115-0.052 0.048-0.17 0.146-0.265 0.216-0.261 0.196-0.348 0.295-0.544 0.621-0.213 0.353-0.316 0.489-0.413 0.551-0.098 0.063-0.188 0.075-0.378 0.052-0.2-0.027-0.303-0.010-0.662 0.108-0.313 0.101-0.429 0.125-0.429 0.088 0-0.013 0.037-0.087 0.083-0.161 0.321-0.541 0.924-1.047 1.722-1.448 0.288-0.145 0.461-0.218 0.782-0.33 0.28-0.098 0.348-0.106 0.416-0.055zM12.617 6.27c0.065 0.171 0.087 0.304 0.095 0.576 0.008 0.316-0.007 0.496-0.088 1.018-0.090 0.586-0.098 0.667-0.098 0.965 0 0.315 0.012 0.393 0.108 0.721 0.075 0.256 0.098 0.454 0.065 0.536-0.023 0.056-0.077 0.091-0.168 0.108l-0.060 0.012-0.012-0.113c-0.030-0.298-0.18-0.566-0.423-0.759-0.24-0.19-0.504-0.283-0.81-0.283-0.213 0-0.363 0.033-0.572 0.13-0.075 0.033-0.138 0.058-0.143 0.053-0.022-0.022-0.047-0.471-0.048-0.845 0-0.341 0.005-0.458 0.030-0.589 0.082-0.444 0.225-0.699 0.547-0.97 0.338-0.283 0.712-0.464 1.138-0.553 0.211-0.043 0.23-0.047 0.335-0.050 0.080-0.002 0.088 0.002 0.105 0.043zM9.948 8.998c0.017 0.015 0.027 0.058 0.028 0.115 0 0.050 0.007 0.091 0.015 0.091 0.007 0 0.012 0.037 0.012 0.083 0 0.045-0.007 0.083-0.015 0.083-0.007 0-0.010 0.018-0.007 0.038 0.005 0.023-0.003 0.052-0.018 0.067-0.015 0.013-0.027 0.033-0.027 0.043s-0.007 0.018-0.017 0.018c-0.008 0-0.017 0.010-0.017 0.023s-0.012 0.027-0.025 0.033c-0.013 0.005-0.025 0.020-0.025 0.033s-0.010 0.032-0.023 0.038c-0.022 0.013-0.143 0.361-0.143 0.413 0 0.013-0.005 0.025-0.012 0.025-0.008 0-0.013 0.025-0.015 0.053 0 0.030-0.010 0.145-0.022 0.255-0.052 0.486 0.083 1.158 0.334 1.664 0.288 0.578 0.782 0.983 1.336 1.097l0.1 0.022 0.005 0.065c0.025 0.354 0.175 0.795 0.378 1.113 0.208 0.326 0.273 0.519 0.225 0.666-0.035 0.108-0.13 0.178-0.591 0.441-0.975 0.557-1.657 0.968-1.98 1.196-0.091 0.065-0.301 0.188-0.464 0.271-0.426 0.22-0.557 0.353-0.586 0.596-0.020 0.171 0.065 0.512 0.253 1.023 0.060 0.165 0.153 0.424 0.206 0.576 0.053 0.153 0.168 0.459 0.255 0.682 0.226 0.582 0.285 0.779 0.393 1.301 0.073 0.348 0.201 1.201 0.201 1.329 0 0.095-0.473-0.418-0.87-0.944-0.85-1.125-1.434-2.43-1.707-3.814-0.070-0.354-0.123-0.717-0.112-0.764 0.007-0.025 0.003-0.040-0.008-0.040-0.013 0-0.017-0.025-0.010-0.083 0.007-0.055 0.003-0.083-0.008-0.083s-0.015-0.035-0.007-0.108c0.008-0.076 0.005-0.108-0.008-0.108s-0.015-0.043-0.007-0.158c0.008-0.11 0.007-0.158-0.007-0.158s-0.018-0.11-0.018-0.358c0-0.248 0.005-0.358 0.018-0.358s0.015-0.048 0.007-0.158c-0.008-0.115-0.007-0.158 0.007-0.158s0.017-0.032 0.008-0.108c-0.008-0.073-0.005-0.108 0.007-0.108s0.015-0.028 0.008-0.083c-0.007-0.052-0.003-0.083 0.007-0.083 0.012 0 0.015-0.030 0.008-0.075-0.003-0.042 0-0.075 0.008-0.075s0.012-0.027 0.008-0.058c-0.003-0.032 0-0.058 0.008-0.058s0.012-0.027 0.008-0.058c-0.003-0.032 0-0.058 0.008-0.058s0.013-0.023 0.008-0.050c-0.003-0.028 0-0.050 0.007-0.050 0.008 0 0.017-0.043 0.018-0.095 0.002-0.053 0.010-0.098 0.018-0.101 0.008-0.002 0.012-0.023 0.007-0.045-0.003-0.023 0-0.042 0.007-0.042 0.008 0 0.017-0.035 0.017-0.078 0.002-0.043 0.010-0.082 0.020-0.085s0.015-0.015 0.010-0.027c-0.023-0.058 0.285-1.138 0.328-1.155 0.008-0.003 0.015-0.022 0.015-0.040 0-0.048 0.068-0.23 0.085-0.23 0.008 0 0.015-0.018 0.015-0.042s0.008-0.042 0.017-0.042c0.010 0 0.017-0.018 0.017-0.042s0.008-0.042 0.017-0.042c0.010 0 0.017-0.018 0.017-0.040 0-0.023 0.012-0.052 0.025-0.067 0.013-0.013 0.025-0.033 0.025-0.045 0-0.035 0.040-0.131 0.053-0.131 0.007 0 0.013-0.012 0.013-0.025 0-0.032 0.087-0.213 0.108-0.228 0.010-0.007 0.035-0.052 0.057-0.1 0.1-0.23 0.125-0.278 0.147-0.286 0.012-0.005 0.022-0.025 0.022-0.043s0.015-0.047 0.033-0.062c0.018-0.017 0.033-0.042 0.033-0.058 0-0.015 0.013-0.042 0.032-0.058 0.017-0.017 0.035-0.050 0.042-0.076 0.005-0.025 0.018-0.045 0.027-0.045 0.010 0 0.017-0.012 0.017-0.025s0.007-0.025 0.015-0.025c0.008 0 0.020-0.018 0.025-0.042 0.007-0.023 0.018-0.042 0.027-0.042 0.010 0 0.017-0.012 0.017-0.025s0.007-0.025 0.015-0.025c0.008 0 0.020-0.018 0.025-0.042 0.007-0.023 0.018-0.042 0.027-0.042 0.010 0 0.017-0.012 0.017-0.025s0.008-0.025 0.017-0.025c0.010 0 0.017-0.012 0.017-0.025s0.008-0.025 0.017-0.025c0.010 0 0.017-0.012 0.017-0.025s0.008-0.025 0.017-0.025c0.010 0 0.017-0.012 0.017-0.025 0-0.015 0.012-0.030 0.025-0.035 0.013-0.007 0.025-0.020 0.025-0.033s0.008-0.023 0.017-0.023c0.010 0 0.017-0.010 0.017-0.023s0.012-0.027 0.025-0.033c0.013-0.005 0.025-0.020 0.025-0.035 0-0.013 0.008-0.025 0.017-0.025 0.010 0 0.017-0.010 0.017-0.023s0.012-0.027 0.025-0.033c0.013-0.005 0.025-0.020 0.025-0.033 0-0.012 0.012-0.027 0.025-0.033 0.013-0.005 0.025-0.020 0.025-0.033 0-0.012 0.012-0.027 0.025-0.033 0.013-0.005 0.025-0.020 0.025-0.033 0-0.015 0.015-0.033 0.033-0.043s0.033-0.027 0.033-0.038 0.015-0.030 0.033-0.042c0.018-0.012 0.033-0.030 0.033-0.042s0.015-0.030 0.033-0.042c0.018-0.012 0.033-0.030 0.033-0.042s0.023-0.038 0.050-0.058c0.028-0.022 0.050-0.046 0.050-0.058s0.027-0.042 0.058-0.067c0.032-0.025 0.058-0.055 0.058-0.065s0.045-0.060 0.1-0.108c0.055-0.050 0.1-0.098 0.1-0.107 0-0.023 0.321-0.348 0.343-0.348 0.012 0 0.023-0.015 0.028-0.033 0.010-0.040 0.038-0.043 0.073-0.007zM22.807 9.715c1.236 1.444 1.979 3.175 2.198 5.13 0.035 0.326 0.050 1.285 0.025 1.657-0.083 1.198-0.383 2.336-0.895 3.418-0.098 0.205-0.323 0.624-0.409 0.759l-0.043 0.068-0.161 0.022c-0.416 0.052-1.018 0.255-1.554 0.524-0.161 0.081-0.183 0.087-0.183 0.050 0-0.013 0.055-0.176 0.123-0.361 0.255-0.699 0.504-1.451 0.777-2.343 0.083-0.27 0.218-0.704 0.3-0.965 0.181-0.577 0.22-0.749 0.211-0.965-0.010-0.323-0.11-0.434-1.243-1.408-0.314-0.27-0.564-0.518-0.609-0.607-0.065-0.125-0.005-0.311 0.226-0.702 0.175-0.294 0.268-0.499 0.379-0.837 0.25-0.749 0.429-1.569 0.524-2.395 0.037-0.305 0.076-0.839 0.076-1.007 0-0.175 0.015-0.266 0.041-0.266 0.010 0 0.108 0.103 0.216 0.228zM21.043 15.262c0.055 0.047 0.291 0.271 0.524 0.499s0.508 0.478 0.607 0.556c0.268 0.21 0.398 0.341 0.459 0.468 0.053 0.106 0.053 0.108 0.043 0.294-0.012 0.193-0.070 0.488-0.203 1.040-0.171 0.701-0.449 1.529-0.86 2.558-0.268 0.669-0.328 0.76-0.534 0.82-0.17 0.048-0.206 0.053-0.652 0.070-0.411 0.017-0.549 0.037-0.674 0.1-0.078 0.040-0.1 0.042-0.1 0.007s0.118-0.236 0.749-1.271c0.492-0.807 0.854-1.413 0.92-1.543 0.025-0.045 0.023-0.053-0.005-0.098-0.017-0.027-0.078-0.103-0.138-0.17-0.108-0.122-0.162-0.208-0.162-0.261 0-0.015 0.027-0.105 0.057-0.196 0.235-0.691 0.115-1.819-0.233-2.207-0.076-0.085-0.21-0.168-0.27-0.168-0.045 0-0.17-0.087-0.17-0.118 0-0.017 0.073-0.085 0.171-0.161 0.093-0.072 0.203-0.17 0.245-0.216 0.042-0.045 0.087-0.083 0.1-0.085 0.013 0 0.070 0.037 0.125 0.083zM12.377 15.763c0.041 0.040 0.175 0.183 0.293 0.321 0.118 0.137 0.258 0.298 0.309 0.356 0.17 0.195 0.552 0.424 1.401 0.84l0.524 0.258 0.022 0.135c0.052 0.334 0.356 1.391 0.476 1.642 0.158 0.336 0.348 0.434 0.637 0.329 0.063-0.023 0.125-0.042 0.135-0.042 0.058 0-0.013 0.16-0.156 0.349-0.188 0.25-0.228 0.409-0.138 0.546 0.048 0.073 0.198 0.178 0.404 0.283 0.506 0.26 1.118 0.552 1.419 0.677 0.193 0.080 0.353 0.156 0.353 0.166 0 0.015-0.073 0.023-0.261 0.032-1.396 0.058-2.22 0.123-3.523 0.278-0.368 0.043-0.591 0.063-0.606 0.053-0.038-0.023-0.083-0.16-0.103-0.308-0.028-0.23-0.020-0.958 0.017-1.428 0.018-0.233 0.033-0.489 0.033-0.567 0-0.419-0.201-0.416-0.278 0.005-0.027 0.155-0.023 0.276 0.028 0.835 0.037 0.378 0.043 0.835 0.017 1.008-0.010 0.060-0.032 0.158-0.052 0.22-0.030 0.105-0.037 0.113-0.078 0.113-0.068-0.002-0.173-0.055-0.354-0.183-0.215-0.151-0.298-0.193-0.316-0.163-0.040 0.062-0.002 0.166 0.107 0.293 0.105 0.12 0.121 0.225 0.046 0.308-0.038 0.047-0.070 0.058-0.205 0.087-0.218 0.047-0.313 0.116-0.313 0.233 0 0.040 0.003 0.042 0.105 0.042 0.057 0 0.246-0.008 0.423-0.020 0.319-0.018 0.477-0.010 0.639 0.037l0.060 0.017 0.012 0.138c0.037 0.434 0.173 1.564 0.311 2.544 0.053 0.391 0.098 0.719 0.098 0.727 0 0.040-0.418 0-0.765-0.073-0.559-0.118-1.015-0.305-1.955-0.799-0.301-0.158-0.607-0.316-0.677-0.351l-0.13-0.063v-0.151c0-0.346-0.067-1.27-0.135-1.889-0.191-1.741-0.584-3.33-1.132-4.579-0.063-0.143-0.115-0.271-0.115-0.283 0-0.013 0.155-0.14 0.344-0.281 1.102-0.827 1.845-1.291 2.643-1.649 0.138-0.062 0.275-0.111 0.305-0.113 0.042 0 0.073 0.017 0.132 0.070zM20.531 16.283c0.17 0.087 0.29 0.476 0.341 1.101 0.027 0.341-0.022 0.674-0.116 0.802l-0.030 0.038-0.273-0.018c-0.441-0.028-1-0.111-1.263-0.188l-0.073-0.020 0.002-0.258c0.002-0.141 0.003-0.263 0.003-0.27 0-0.017 0.115-0.073 0.175-0.087 0.065-0.013 0.253-0.032 0.313-0.030 0.025 0.002 0.045-0.005 0.045-0.012 0-0.017-0.181-0.070-0.275-0.078-0.037-0.005-0.076-0.012-0.088-0.015-0.010-0.003-0.055 0-0.098 0.007-0.103 0.020-0.128 0.003-0.155-0.093-0.012-0.043-0.037-0.108-0.053-0.145-0.027-0.053-0.028-0.067-0.010-0.078 0.012-0.008 0.028-0.015 0.037-0.015 0.007 0 0.145-0.086 0.308-0.195 0.488-0.321 0.697-0.436 0.854-0.462 0.030-0.007 0.055-0.012 0.057-0.013 0.017-0.017 0.26 0.007 0.301 0.028zM19.271 16.284c0 0.013-0.015 0.032-0.032 0.042-0.018 0.008-0.17 0.125-0.336 0.258l-0.305 0.241-0.093 0.003c-0.356 0.012-0.627-0.032-0.837-0.133-0.161-0.080-0.328-0.195-0.328-0.228s0.075-0.048 0.13-0.027c0.083 0.033 0.276 0.068 0.393 0.068 0.161 0 0.423-0.042 0.75-0.12 0.273-0.065 0.567-0.125 0.629-0.128 0.015-0.002 0.028 0.010 0.028 0.023zM13.785 16.366c0.121 0.040 0.334 0.072 0.681 0.101 0.473 0.038 0.463 0.037 0.463 0.095 0 0.027-0.015 0.107-0.032 0.176-0.018 0.072-0.038 0.168-0.045 0.215-0.010 0.082-0.015 0.088-0.055 0.088-0.076 0-0.373-0.080-0.559-0.148-0.451-0.17-0.721-0.379-0.682-0.531 0.020-0.078 0.038-0.088 0.097-0.053 0.030 0.017 0.090 0.042 0.133 0.057zM15.822 16.424c0.018 0.008 0.037 0.013 0.042 0.010 0.023-0.023 0.677 0.193 0.904 0.299 0.349 0.165 0.441 0.213 0.626 0.335 0.105 0.070 0.283 0.138 0.381 0.148 0.023 0.002 0.050 0.005 0.060 0.005 0.010 0.002 0.018 0.033 0.020 0.068 0.003 0.062-0.002 0.068-0.073 0.108s-0.228 0.095-0.253 0.090c-0.012-0.002-0.060 0.010-0.25 0.063-0.088 0.025-0.108 0.067-0.023 0.050 0.097-0.020 0.582 0.117 0.632 0.178 0.010 0.012 0.013 0.085 0.008 0.186l-0.010 0.168-0.068 0.048c-0.037 0.028-0.195 0.155-0.351 0.285-0.155 0.128-0.343 0.278-0.416 0.329-0.309 0.223-0.968 0.476-1.241 0.476-0.080 0-0.098-0.007-0.138-0.048-0.027-0.028-0.050-0.067-0.053-0.088-0.005-0.035-0.107-0.326-0.141-0.404-0.072-0.162-0.191-0.524-0.208-0.629-0.005-0.030-0.012-0.072-0.017-0.095-0.038-0.191-0.057-0.686-0.033-0.948 0.005-0.068 0.010-0.136 0.012-0.15 0.010-0.123 0.105-0.353 0.173-0.416 0.070-0.065 0.153-0.093 0.275-0.090 0.062 0.002 0.126 0.012 0.145 0.022zM18.569 17.141c0.091 0.040 0.111 0.062 0.161 0.17 0.062 0.132 0.058 0.309-0.007 0.431-0.067 0.13-0.163 0.18-0.338 0.181-0.203 0-0.198 0.003-0.251-0.24-0.027-0.115-0.042-0.218-0.037-0.226 0.005-0.010 0.002-0.017-0.007-0.017-0.012 0-0.018-0.042-0.018-0.105 0-0.097 0.003-0.105 0.047-0.127 0.21-0.105 0.324-0.121 0.449-0.068zM18.932 18.188c0.038 0.018 0.13 0.073 0.203 0.125 0.165 0.115 0.291 0.175 0.401 0.188l0.085 0.010v0.1c0 0.056-0.007 0.185-0.017 0.285-0.008 0.102-0.023 0.368-0.033 0.592-0.025 0.567-0.053 0.845-0.135 1.348-0.035 0.223-0.088 0.408-0.116 0.413-0.032 0.005-0.225-0.388-0.506-1.037-0.354-0.817-0.552-1.193-0.8-1.527-0.060-0.082-0.106-0.158-0.103-0.17 0.003-0.013 0.043-0.068 0.088-0.125l0.083-0.102 0.075 0.012c0.123 0.018 0.173 0.010 0.353-0.068 0.196-0.085 0.306-0.096 0.423-0.043zM20.478 18.481c0.125 0.033 0.271 0.111 0.369 0.198 0.1 0.088 0.205 0.221 0.205 0.26 0 0.033-0.496 0.895-0.79 1.374-0.281 0.458-0.666 1.008-0.717 1.028-0.033 0.013-0.030-0.010 0.027-0.228 0.12-0.468 0.216-1.157 0.275-1.959 0.013-0.188 0.025-0.403 0.025-0.479 0-0.135 0.002-0.138 0.047-0.155 0.176-0.068 0.393-0.083 0.561-0.040zM17.71 18.9c0.359 0.508 0.581 0.935 1.038 2.022 0.095 0.228 0.173 0.424 0.173 0.438 0 0.040-0.048 0.030-0.336-0.068-0.516-0.178-0.995-0.381-1.563-0.664-0.398-0.198-0.78-0.406-0.78-0.422 0-0.007 0.015-0.062 0.035-0.12 0.090-0.278 0.283-0.547 0.554-0.776 0.16-0.135 0.734-0.536 0.769-0.537 0.010 0 0.060 0.058 0.11 0.128zM23.987 21.283c0.171 0.083 0.344 0.255 0.426 0.424 0.105 0.216 0.216 0.592 0.378 1.258 0.067 0.276 0.075 0.334 0.083 0.566 0.007 0.225 0.003 0.276-0.027 0.404-0.087 0.366-0.296 0.647-0.579 0.78-0.278 0.131-0.979 0.185-1.338 0.103-0.092-0.020-0.115-0.032-0.115-0.057 0-0.053 0.213-0.12 0.612-0.193 0.321-0.058 0.468-0.092 0.478-0.108 0.008-0.013-0.023-0.023-0.2-0.067-0.105-0.027-0.636-0.027-0.94-0.002-0.123 0.012-0.346 0.025-0.494 0.030l-0.268 0.012-0.010-0.090c-0.005-0.050-0.033-0.323-0.062-0.606-0.072-0.732-0.146-1.208-0.241-1.539l-0.027-0.091 0.072-0.062c0.138-0.118 0.456-0.26 1.027-0.453 0.323-0.11 0.531-0.195 0.661-0.271 0.153-0.090 0.203-0.105 0.333-0.1 0.090 0.005 0.143 0.018 0.231 0.060zM21.218 22.142c0.063 0.038 0.22 0.463 0.291 0.782 0.081 0.366 0.15 1.057 0.138 1.403l-0.005 0.171-0.216 0.073c-0.118 0.040-0.263 0.078-0.319 0.083l-0.102 0.012-0.010-0.072c-0.005-0.040-0.022-0.19-0.035-0.331-0.015-0.141-0.072-0.546-0.127-0.899-0.1-0.647-0.165-1.117-0.165-1.19 0-0.038 0.007-0.040 0.13-0.047 0.171-0.010 0.394-0.002 0.419 0.013zM17.865 22.15c0.381 0.023 1.067 0.102 1.102 0.125 0.008 0.005 0.053 0.378 0.070 0.574 0.023 0.273 0.032 0.426 0.060 1.123 0.025 0.562 0.032 0.656 0.083 1.198 0.032 0.333 0.055 0.769 0.075 1.423 0.030 0.982 0.067 1.464 0.143 1.92 0.022 0.136 0.038 0.25 0.037 0.251-0.017 0.010-0.285 0.078-0.446 0.115-0.478 0.105-0.945 0.15-1.523 0.15-0.671-0.002-1.181-0.052-1.789-0.173-0.275-0.055-0.724-0.168-0.74-0.186-0.003-0.003-0.053-0.163-0.113-0.356-0.428-1.38-0.727-2.737-0.959-4.341-0.093-0.637-0.188-1.459-0.173-1.473 0.018-0.017 0.88-0.156 1.27-0.208 0.537-0.068 1.142-0.121 1.672-0.146 0.263-0.013 0.994-0.010 1.231 0.005zM20.123 22.258c0.090 0.334 0.15 0.819 0.23 1.864 0.028 0.356 0.057 0.709 0.065 0.782 0.010 0.087 0.010 0.136-0.002 0.143-0.017 0.010-0.479 0.095-0.79 0.145-0.125 0.020-0.188 0.023-0.188 0.013s-0.012-0.165-0.025-0.343c-0.055-0.73-0.076-1.208-0.087-1.877-0.005-0.386-0.005-0.702 0-0.702s0.057-0.012 0.113-0.027c0.125-0.032 0.353-0.053 0.537-0.050 0.133 0.002 0.133 0.002 0.146 0.052zM20.080 25.588c0.030 0.008 0.038 0.027 0.047 0.111 0.007 0.056 0.053 0.298 0.103 0.536 0.125 0.596 0.158 0.809 0.168 1.098l0.010 0.25-0.19 0.062c-0.105 0.033-0.226 0.068-0.273 0.078-0.091 0.018-0.374 0.043-0.374 0.033 0-0.003-0.015-0.25-0.035-0.547-0.018-0.298-0.038-0.764-0.043-1.037l-0.010-0.494h0.053c0.030 0 0.127-0.018 0.215-0.040 0.088-0.023 0.185-0.045 0.211-0.048 0.028-0.003 0.058-0.008 0.066-0.008 0.010-0.002 0.033 0.002 0.052 0.007zM15.91 6.154c-0.14 0.023-0.336 0.111-0.524 0.236-0.158 0.103-0.414 0.363-0.521 0.526-0.143 0.218-0.236 0.509-0.211 0.659 0.012 0.067 0.088 0.165 0.128 0.165 0.012 0 0.052-0.062 0.088-0.138 0.142-0.29 0.358-0.569 0.556-0.716 0.115-0.085 0.295-0.166 0.446-0.203 0.095-0.023 0.167-0.027 0.358-0.020 0.13 0.005 0.255 0.013 0.276 0.020 0.032 0.010 0.040 0.003 0.062-0.048 0.040-0.093 0.032-0.163-0.028-0.253-0.117-0.173-0.381-0.27-0.629-0.228zM21.285 7.951c0 0.226 0.055 0.449 0.203 0.819 0.045 0.113 0.080 0.221 0.076 0.241-0.008 0.053-0.158 0.090-0.451 0.11-0.258 0.018-0.283 0.022-0.406 0.053-0.065 0.017-0.072 0.023-0.072 0.068 0 0.16 0.115 0.306 0.276 0.354 0.261 0.075 0.709-0.062 0.945-0.286 0.145-0.14 0.143-0.13 0.025-0.326-0.096-0.158-0.289-0.544-0.491-0.982-0.045-0.1-0.087-0.18-0.093-0.18-0.008 0-0.013 0.058-0.013 0.128zM17.033 7.921c-0.040 0.235 0.108 0.689 0.374 1.145 0.060 0.101 0.1 0.188 0.097 0.21-0.012 0.086-0.268 0.158-0.486 0.136-0.065-0.007-0.22-0.030-0.343-0.052-0.3-0.053-0.34-0.053-0.364 0.005-0.047 0.113-0.050 0.156-0.023 0.223 0.073 0.186 0.369 0.298 0.79 0.298 0.348 0 0.483-0.045 0.679-0.226 0.082-0.077 0.105-0.11 0.126-0.186 0.030-0.103 0.023-0.206-0.020-0.29-0.015-0.030-0.112-0.14-0.213-0.246-0.21-0.22-0.255-0.293-0.419-0.679-0.062-0.145-0.128-0.295-0.148-0.336l-0.038-0.073-0.012 0.072zM19.185 8.224c-0.025 0.013-0.030 0.040-0.030 0.138 0 0.456 0.265 1.055 0.729 1.657 0.12 0.153 0.523 0.637 0.687 0.824 0.166 0.19 0.223 0.351 0.181 0.527-0.027 0.113-0.093 0.245-0.13 0.258-0.015 0.005-0.185 0.083-0.378 0.173-0.446 0.206-0.596 0.268-0.782 0.321-0.221 0.062-0.388 0.083-0.567 0.072-0.29-0.017-0.349-0.073-0.438-0.418-0.028-0.108-0.052-0.201-0.052-0.203 0-0.003-0.006-0.007-0.017-0.007-0.028 0-0.098 0.16-0.117 0.273-0.035 0.196 0.035 0.443 0.171 0.601l0.058 0.067 0.251 0.005c0.679 0.017 1.306-0.186 2.072-0.667l0.248-0.156 0.028-0.115c0.015-0.063 0.047-0.168 0.070-0.231 0.023-0.065 0.052-0.16 0.062-0.211 0.033-0.16 0.020-0.185-0.261-0.461-0.724-0.709-1.513-1.805-1.607-2.236-0.018-0.081-0.043-0.146-0.072-0.178-0.043-0.053-0.063-0.058-0.108-0.032zM10.973 10.034c-0.16 0.055-0.28 0.185-0.343 0.374-0.040 0.117-0.037 0.123 0.035 0.058 0.1-0.097 0.136-0.115 0.231-0.115 0.047 0 0.092 0.007 0.097 0.017 0.005 0.008-0.010 0.078-0.035 0.153-0.037 0.115-0.046 0.176-0.053 0.364-0.008 0.261 0.018 0.429 0.095 0.589 0.098 0.205 0.096 0.208 0.105-0.226 0.008-0.339 0.013-0.403 0.045-0.501 0.058-0.181 0.171-0.258 0.309-0.213 0.083 0.028 0.148 0.112 0.261 0.343 0.057 0.115 0.126 0.235 0.156 0.27l0.053 0.062 0.012-0.115c0.052-0.478-0.22-0.93-0.637-1.058-0.131-0.040-0.218-0.042-0.331-0.002zM21.193 12.342c-0.634 0.336-0.855 0.423-1.213 0.481-0.081 0.013-0.155 0.033-0.163 0.045-0.015 0.025-0.018 0.426-0.003 0.516 0.010 0.062 0.013 0.063 0.080 0.063 0.113 0 0.363-0.060 0.516-0.121 0.384-0.156 0.762-0.534 1.033-1.032 0.033-0.062 0.058-0.111 0.055-0.111-0.002 0-0.14 0.072-0.305 0.16zM17.068 12.667c0.115 0.213 0.419 0.446 0.764 0.579 0.414 0.163 1.065 0.264 1.572 0.248l0.158-0.005-0.003-0.225c-0.002-0.123-0.010-0.258-0.017-0.3l-0.015-0.075-0.572-0.010c-0.942-0.017-1.426-0.091-1.904-0.29-0.027-0.012-0.025-0.002 0.017 0.077zM16.714 13.166c-0.085 0.025-0.096 0.067-0.040 0.141 0.027 0.037 0.087 0.102 0.135 0.148 0.047 0.045 0.153 0.178 0.236 0.294s0.196 0.266 0.253 0.333c0.294 0.344 0.619 0.463 1.266 0.463 0.531 0 1.018-0.098 1.185-0.24 0.052-0.043 0.171-0.21 0.171-0.238 0-0.008-0.271-0.012-0.604-0.008-0.995 0.012-1.409-0.045-1.817-0.245-0.276-0.136-0.469-0.321-0.579-0.554-0.048-0.103-0.058-0.113-0.103-0.111-0.027 0-0.075 0.008-0.103 0.017zM18.845 18.77c-0.1 0.060-0.113 0.206-0.028 0.291 0.123 0.123 0.321 0.033 0.321-0.146 0-0.050-0.012-0.075-0.057-0.12-0.067-0.067-0.153-0.076-0.236-0.025zM19.097 19.651c-0.090 0.030-0.141 0.1-0.141 0.191 0 0.052 0.012 0.076 0.057 0.122 0.048 0.048 0.068 0.057 0.133 0.057 0.060 0 0.087-0.010 0.13-0.048 0.048-0.043 0.055-0.058 0.055-0.133 0-0.072-0.006-0.092-0.050-0.133-0.052-0.050-0.126-0.073-0.183-0.055zM23.232 22.017c-0.409 0.073-0.742 0.24-0.932 0.466l-0.070 0.083h0.078c0.175 0 0.358-0.076 0.757-0.316 0.241-0.145 0.384-0.22 0.483-0.25 0.083-0.027-0.138-0.015-0.316 0.017zM22.887 22.715c-0.116 0.022-0.253 0.076-0.313 0.125-0.042 0.035-0.047 0.045-0.025 0.060 0.037 0.025 0.587 0.005 0.973-0.035 0.175-0.018 0.331-0.033 0.349-0.035 0.055-0.003-0.14-0.060-0.308-0.088-0.19-0.033-0.558-0.048-0.677-0.027zM22.737 23.406c-0.093 0.025-0.213 0.081-0.228 0.105s0.235 0.037 0.913 0.047c0.567 0.006 0.627 0.005 0.579-0.017-0.078-0.037-0.371-0.106-0.563-0.135-0.21-0.032-0.586-0.032-0.702 0z"></path>
</svg>`;
var nw = `<?xml version="1.0" encoding="utf-8"?>\r
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 32 32" version="1.1" xmlns="http://www.w3.org/2000/svg">\r
<title>postgresql</title>\r
<path d="M24.295 9.929c-0.010 0.155-0.082 0.292-0.191 0.387l-0.001 0.001c-0.131 0.143-0.306 0.243-0.504 0.278l-0.005 0.001c-0.028 0.004-0.061 0.007-0.094 0.007h-0c-0.001 0-0.003 0-0.004 0-0.312 0-0.58-0.189-0.694-0.46l-0.002-0.005c-0.030-0.221 0.33-0.388 0.701-0.44s0.764 0.011 0.794 0.231zM14.385 10.443c-0.121 0.311-0.418 0.528-0.766 0.528-0.004 0-0.007-0-0.011-0h0.001c-0 0-0 0-0 0-0.036 0-0.070-0.003-0.105-0.007l0.004 0c-0.261-0.047-0.483-0.191-0.63-0.392l-0.002-0.003c-0.082-0.094-0.132-0.219-0.132-0.354 0-0 0-0.001 0-0.001v0c0.012-0.077 0.055-0.143 0.115-0.185l0.001-0.001c0.152-0.084 0.334-0.133 0.528-0.133 0.083 0 0.164 0.009 0.242 0.026l-0.007-0.001c0.395 0.055 0.803 0.242 0.764 0.523zM25.403 18.086l-0.107-0.134-0.044-0.055c0.457-0.846 0.725-1.853 0.725-2.921 0-0.488-0.056-0.962-0.162-1.418l0.008 0.042c-0.070-0.453-0.111-0.976-0.111-1.508 0-0.007 0-0.014 0-0.021v0.001c0.023-0.501 0.076-0.97 0.158-1.429l-0.010 0.066c0.089-0.464 0.14-0.998 0.14-1.544 0-0.051-0-0.101-0.001-0.151l0 0.008c0.012-0.049 0.019-0.104 0.019-0.162 0-0.027-0.002-0.053-0.004-0.079l0 0.003c-0.4-1.58-1.151-2.949-2.168-4.073l0.007 0.008c-0.911-1.068-2.031-1.929-3.3-2.523l-0.060-0.025c0.696-0.149 1.496-0.234 2.316-0.234 0.075 0 0.15 0.001 0.225 0.002l-0.011-0c0.045-0.001 0.097-0.002 0.15-0.002 2.378 0 4.496 1.109 5.866 2.838l0.012 0.016c0.028 0.036 0.056 0.077 0.080 0.12l0.003 0.005c0.904 1.694-0.345 7.842-3.732 13.172zM25.117 9.322c-0.016 0.455-0.064 0.886-0.14 1.307l0.008-0.055c-0.078 0.425-0.134 0.931-0.157 1.445l-0.001 0.025c-0 0.017-0 0.036-0 0.056 0 0.567 0.042 1.124 0.124 1.668l-0.008-0.061c0.085 0.377 0.134 0.809 0.134 1.254 0 0.763-0.144 1.493-0.407 2.162l0.014-0.040c-0.076-0.131-0.155-0.289-0.224-0.453l-0.011-0.029c-0.066-0.159-0.209-0.416-0.406-0.77-0.769-1.38-2.571-4.611-1.649-5.929 0.474-0.678 1.676-0.707 2.722-0.579zM24.406 20.907c-0.051-1.039 0.336-1.148 0.746-1.263q0.085-0.023 0.169-0.051c0.050 0.044 0.105 0.087 0.162 0.125l0.005 0.003c0.62 0.273 1.342 0.431 2.102 0.431 0.592 0 1.161-0.096 1.693-0.274l-0.038 0.011c-0.344 0.293-0.736 0.544-1.16 0.738l-0.031 0.013c-0.644 0.264-1.391 0.429-2.173 0.454l-0.010 0c-0.119 0.018-0.256 0.029-0.395 0.029-0.386 0-0.754-0.080-1.087-0.224l0.018 0.007zM23.293 22.933c-0.021 0.221-0.045 0.47-0.077 0.745l-0.182 0.548c-0.014 0.040-0.022 0.086-0.023 0.134v0c0.001 0.027 0.001 0.058 0.001 0.089 0 0.355-0.053 0.699-0.151 1.022l0.006-0.025c-0.116 0.389-0.196 0.84-0.223 1.305l-0.001 0.016c-0.052 1.684-1.355 3.047-3.008 3.194l-0.013 0.001c-1.894 0.406-2.23-0.621-2.526-1.527q-0.045-0.142-0.096-0.283c-0.16-0.652-0.252-1.401-0.252-2.171 0-0.36 0.020-0.715 0.059-1.065l-0.004 0.043c0.006-0.128 0.009-0.279 0.009-0.43 0-1.026-0.154-2.016-0.441-2.948l0.019 0.071q0.008-0.55 0.024-1.114c0-0.003 0-0.008 0-0.012 0-0.046-0.007-0.090-0.020-0.132l0.001 0.003c-0.014-0.1-0.033-0.188-0.058-0.273l0.003 0.013c-0.141-0.521-0.496-0.941-0.964-1.164l-0.011-0.005c-0.176-0.088-0.384-0.14-0.605-0.14-0.104 0-0.205 0.011-0.302 0.033l0.009-0.002c0.128-0.47 0.26-0.854 0.412-1.228l-0.026 0.073 0.066-0.177c0.074-0.2 0.167-0.407 0.266-0.626 0.546-1.124 0.865-2.445 0.865-3.841 0-0.938-0.144-1.842-0.411-2.692l0.017 0.063c-0.183-1.108-1.135-1.943-2.281-1.943-0.18 0-0.356 0.021-0.524 0.060l0.016-0.003c-0.796 0.104-1.516 0.338-2.171 0.682l0.035-0.017q-0.124 0.063-0.245 0.13c0.091-2.147 0.896-4.090 2.181-5.615l-0.012 0.014c0.118-0.119 0.242-0.232 0.37-0.338l0.009-0.007c0.069-0.014 0.13-0.042 0.182-0.081l-0.001 0.001c0.893-0.654 2.014-1.047 3.227-1.047 0.097 0 0.193 0.002 0.288 0.007l-0.013-0.001c0.526 0.008 1.034 0.044 1.534 0.108l-0.067-0.007c2.043 0.393 3.787 1.463 5.032 2.963l0.011 0.014c0.748 0.869 1.354 1.887 1.766 2.998l0.022 0.069c-0.257-0.069-0.552-0.109-0.856-0.109-0.983 0-1.868 0.416-2.49 1.081l-0.002 0.002c-1.24 1.773 0.679 5.215 1.601 6.869 0.169 0.303 0.315 0.565 0.361 0.676 0.26 0.601 0.587 1.118 0.98 1.577l-0.007-0.008c0.087 0.109 0.171 0.214 0.236 0.306-0.501 0.144-1.401 0.478-1.319 2.146-0.015 0.195-0.053 0.558-0.104 1.018-0.054 0.269-0.098 0.597-0.123 0.93l-0.002 0.028zM14.091 17.219l-0.066 0.176c-0.137 0.328-0.279 0.745-0.397 1.172l-0.019 0.081c-0.893-0.013-1.695-0.395-2.261-1.001l-0.002-0.002c-0.632-0.667-1.020-1.57-1.020-2.564 0-0.198 0.015-0.392 0.045-0.582l-0.003 0.021c0.097-0.72 0.153-1.551 0.153-2.396 0-0.502-0.020-0.999-0.058-1.491l0.004 0.065c-0.006-0.107-0.012-0.201-0.015-0.275 0.805-0.611 1.824-0.98 2.929-0.98 0.132 0 0.262 0.005 0.391 0.015l-0.017-0.001c0.554 0.129 0.971 0.588 1.037 1.153l0.001 0.006c0.238 0.728 0.375 1.566 0.375 2.435 0 1.266-0.291 2.464-0.809 3.532l0.021-0.048c-0.105 0.233-0.204 0.453-0.289 0.682zM11.474 22.203c-0.205-0.052-0.385-0.128-0.549-0.227l0.009 0.005c0.172-0.073 0.375-0.134 0.585-0.173l0.019-0.003c1.604-0.33 1.851-0.563 2.392-1.25 0.124-0.157 0.264-0.336 0.459-0.553 0.040-0.045 0.072-0.099 0.091-0.159l0.001-0.003c0.213-0.189 0.34-0.137 0.546-0.052 0.227 0.125 0.395 0.336 0.46 0.587l0.001 0.007c0.023 0.065 0.037 0.139 0.037 0.217 0 0.125-0.035 0.242-0.095 0.341l0.002-0.003c-0.645 0.882-1.676 1.449-2.839 1.449-0.4 0-0.785-0.067-1.144-0.191l0.025 0.007zM3.967 15.846c-0.651-1.985-1.181-4.34-1.494-6.764l-0.021-0.199c-0.061-0.322-0.095-0.693-0.095-1.071 0-1.806 0.789-3.427 2.041-4.537l0.006-0.005c2.295-1.623 6.048-0.676 7.633-0.163l-0.012 0.012c-1.535 1.872-2.466 4.292-2.466 6.928 0 0.090 0.001 0.18 0.003 0.27l-0-0.013c-0 0.103 0.008 0.249 0.020 0.449 0.033 0.41 0.052 0.888 0.052 1.371 0 0.802-0.052 1.592-0.154 2.367l0.010-0.091c-0.033 0.206-0.051 0.444-0.051 0.686 0 1.231 0.482 2.35 1.269 3.177l-0.002-0.002q0.151 0.158 0.315 0.297c-0.433 0.464-1.375 1.49-2.377 2.696-0.709 0.853-1.199 0.689-1.36 0.636-0.685-0.368-1.222-0.939-1.538-1.631l-0.009-0.022c-0.684-1.252-1.286-2.708-1.73-4.232l-0.039-0.157zM30.445 19.403c-0.019-0.057-0.043-0.106-0.072-0.151l0.002 0.003c-0.174-0.329-0.596-0.427-1.259-0.29-2.066 0.426-2.866 0.164-3.156-0.024 1.617-2.452 2.918-5.292 3.751-8.326l0.049-0.209c0.339-1.313 0.997-4.403 0.153-5.913-0.059-0.112-0.122-0.208-0.192-0.298l0.003 0.004c-1.563-1.955-3.948-3.196-6.623-3.196-0.076 0-0.152 0.001-0.227 0.003l0.011-0c-0.042-0.001-0.091-0.001-0.141-0.001-1.342 0-2.633 0.22-3.838 0.625l0.085-0.025q-0.321-0.060-0.645-0.102c-0.488-0.093-1.053-0.151-1.631-0.16l-0.008-0c-0.083-0.004-0.18-0.006-0.278-0.006-1.315 0-2.538 0.394-3.557 1.071l0.024-0.015c-1.071-0.401-5.984-2.056-9.025 0.098-1.489 1.27-2.426 3.147-2.426 5.244 0 0.405 0.035 0.802 0.102 1.188l-0.006-0.041c0.335 2.698 0.879 5.126 1.632 7.461l-0.079-0.284c0.493 1.716 1.103 3.201 1.852 4.6l-0.061-0.124c0.433 0.984 1.182 1.764 2.116 2.225l0.026 0.012c0.168 0.049 0.361 0.078 0.561 0.078 0.742 0 1.392-0.391 1.756-0.979l0.005-0.009c1.001-1.204 1.987-2.282 2.43-2.758 0.502 0.279 1.097 0.451 1.731 0.471l0.006 0 0.001 0.005q-0.158 0.188-0.309 0.382c-0.424 0.538-0.512 0.649-1.875 0.93-0.388 0.080-1.418 0.292-1.433 1.014-0 0.004-0 0.008-0 0.013 0 0.147 0.043 0.284 0.117 0.399l-0.002-0.003c0.312 0.395 0.751 0.678 1.254 0.788l0.015 0.003c0.399 0.13 0.859 0.205 1.335 0.205 1.1 0 2.106-0.398 2.884-1.058l-0.006 0.005c-0.024 0.418-0.037 0.908-0.037 1.401 0 1.753 0.171 3.467 0.496 5.125l-0.027-0.167c0.382 1.373 1.616 2.367 3.084 2.38h0.002c0.369-0.003 0.726-0.046 1.070-0.124l-0.033 0.006c1.919-0.171 3.431-1.705 3.567-3.619l0.001-0.012c0.188-1.088 0.502-3.593 0.673-5.125 0.008-0.065 0.034-0.123 0.072-0.171l-0.001 0.001c0.001-0.001 0.087-0.059 0.534 0.038l0.055 0.009 0.317 0.028 0.019 0.001c0.095 0.004 0.207 0.007 0.319 0.007 1.024 0 2.002-0.2 2.895-0.564l-0.051 0.018c0.805-0.373 2.256-1.29 1.993-2.087z"></path>\r
</svg>`;
var rw = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 14 14" role="img" focusable="false" aria-hidden="true" xmlns="http://www.w3.org/2000/svg"><path d="m 9.6693761,6.3223595 c -0.02637,-0.304584 -0.08225,-0.608381 -0.160162,-0.903915 -0.24595,-0.932249 -0.655605,-1.824752 -1.233292,-2.598413 -0.157408,-0.210927 -0.327409,-0.412409 -0.509215,-0.602873 -0.187315,-0.196366 -0.395094,-0.376598 -0.525743,-0.620974 -0.08264,-0.154654 -0.161343,-0.311274 -0.241621,-0.467108 -0.0012,0.0488 -0.0043,0.09759 -0.0043,0.145996 0,-0.0488 0.0035,-0.09759 0.0043,-0.14639 -0.01495,-0.03738 -0.02991,-0.07516 -0.05116,-0.128681 -0.0087,0.02951 -0.01417,0.03975 -0.01417,0.05076 -0.0067,0.253821 -0.150718,0.426182 -0.32977,0.587132 -0.201482,0.181019 -0.389191,0.377386 -0.582803,0.567062 0.0067,0.0087 0.01417,0.01731 0.02164,0.02597 -0.0075,-0.0087 -0.01495,-0.01692 -0.02164,-0.02597 -0.57572,0.757133 -1.0829674,1.566604 -1.3816491,2.475241 -0.086968,0.264446 -0.1554404,0.534794 -0.2034499,0.809078 -0.1019216,0.582803 -0.1491441,1.149078 -0.1164819,1.739358 0.018102,0.326228 0.075162,0.647341 0.1601627,0.963337 0.3089132,1.147898 0.9361842,2.0998235 1.7936642,2.9089005 0.159376,0.150325 0.331344,0.286875 0.497803,0.430118 3.93e-4,-0.0016 7.87e-4,-0.0028 0.0012,-0.0043 -3.94e-4,0.0016 -7.88e-4,0.0028 -0.0012,0.0043 0.0244,0.08421 0.04919,0.168426 0.07359,0.25264 0.02282,0.130648 0.04565,0.261297 0.06847,0.391946 0.01102,0.136157 0.02164,0.272709 0.03266,0.408867 -3.94e-4,0.08303 -0.0039,0.166459 0.0012,0.249098 0.0012,0.02125 0.02912,0.04093 0.04447,0.06139 3.94e-4,-7.87e-4 7.87e-4,-0.0016 0.0016,-0.0024 -3.93e-4,7.87e-4 -7.87e-4,0.0016 -0.0016,0.0024 0.04644,0.01613 0.09248,0.03266 0.138913,0.0488 0.04171,0.01613 0.08343,0.03266 0.144422,0.05627 -0.0091,-0.136158 -0.01692,-0.249886 -0.02479,-0.363614 -3.94e-4,-0.119236 -7.87e-4,-0.238865 -0.0012,-0.358102 -0.0024,0.0028 -0.0055,0.0055 -0.0083,0.0083 0.0028,-0.0028 0.0055,-0.0055 0.0083,-0.0083 0.01653,-0.181806 0.03345,-0.363612 0.04998,-0.54542 0.0122,-0.03974 0.024,-0.0791 0.0362,-0.118843 0.03463,-0.06139 0.06887,-0.122384 0.103496,-0.183773 0.127894,-0.103103 0.265232,-0.196367 0.382108,-0.310881 0.210927,-0.207385 0.42146,-0.417131 0.609956,-0.644193 0.244769,-0.294353 0.455696,-0.6158575 0.62491,-0.9605815 0.481275,-0.980258 0.704007,-2.073457 0.615465,-3.163508 -7.87e-4,-0.0094 -0.0016,-0.01928 -0.0024,-0.02912 z"/></svg>`;
var sw = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="none"><path fill="#000000" fill-rule="evenodd" d="M5.374 15c-.335 0-.66-.153-.874-.431l-3.254-4.172a1.15 1.15 0 01-.214-.978l1.165-5.207c.074-.345.298-.623.605-.776l4.715-2.32c.15-.078.317-.116.485-.116.168 0 .335.038.485.115L13.2 3.426c.308.153.532.432.606.777l1.165 5.207c.074.345 0 .7-.214.978L11.5 14.566c-.214.268-.54.434-.875.434h-5.25zm7.718-5.835l.031.008a.308.308 0 01.26.371.306.306 0 01-.396.223h-.004l-.003-.001-.003-.001-.03-.007-.05-.01a2.548 2.548 0 01-.274-.106 2.87 2.87 0 00-.533-.156.242.242 0 00-.171.063 4.76 4.76 0 00-.131-.023 3.972 3.972 0 01-1.764 2.212c.015.042.032.083.051.123a.239.239 0 00-.023.18c.074.17.165.332.271.484.06.078.114.16.164.244l.028.057.012.025a.306.306 0 01-.381.44.307.307 0 01-.172-.18 2.608 2.608 0 00-.01-.02l-.028-.058a2.545 2.545 0 01-.089-.28 2.835 2.835 0 00-.21-.512.242.242 0 00-.156-.095 5.926 5.926 0 01-.03-.053l-.035-.064a3.97 3.97 0 01-2.824-.007l-.069.125a.249.249 0 00-.132.064c-.104.17-.184.355-.237.548a2.525 2.525 0 01-.088.28l-.025.05-.013.027v.001a.307.307 0 11-.553-.261l.014-.03.026-.052c.05-.085.104-.166.164-.244.108-.156.2-.322.277-.496a.302.302 0 00-.028-.173l.056-.133A3.972 3.972 0 014.22 9.532l-.134.023a.34.34 0 00-.176-.062 2.872 2.872 0 00-.533.156c-.09.04-.181.075-.274.105l-.05.011-.03.007H3.02l-.002.002h-.005a.308.308 0 01-.397-.349.306.306 0 01.261-.245l.004-.001h.003l.006-.002c.024-.006.054-.014.076-.018.097-.013.195-.021.293-.023.186-.013.37-.043.549-.09a.422.422 0 00.131-.133l.128-.037a3.938 3.938 0 01.624-2.752l-.097-.087a.338.338 0 00-.062-.176 2.854 2.854 0 00-.455-.319 2.557 2.557 0 01-.254-.148 1.129 1.129 0 01-.063-.05l-.004-.004a.323.323 0 01-.076-.45.295.295 0 01.244-.107.365.365 0 01.213.08l.022.017c.016.013.034.026.046.037.071.067.139.139.202.213.125.137.263.262.412.372.056.03.121.036.182.018l.11.078a3.938 3.938 0 012.552-1.224l.007-.129a.332.332 0 00.1-.157 2.844 2.844 0 00-.034-.554 2.555 2.555 0 01-.042-.29v-.053-.025-.004-.004A.306.306 0 018 2.82a.308.308 0 01.306.337v.087a2.53 2.53 0 01-.041.29 2.85 2.85 0 00-.035.553.242.242 0 00.1.153v.007l.007.13c.967.087 1.87.522 2.54 1.223l.116-.083a.34.34 0 00.186-.02c.149-.11.287-.235.412-.373a2.53 2.53 0 01.202-.213l.051-.04.017-.014a.308.308 0 01.472.388.307.307 0 01-.09.09c-.008.005-.017.012-.025.02l-.043.033a2.549 2.549 0 01-.254.148 2.865 2.865 0 00-.455.32.24.24 0 00-.058.172 4.458 4.458 0 01-.05.044l-.058.053c.542.806.769 1.783.637 2.745l.123.036c.031.056.077.101.132.132.18.048.364.078.55.09.097.003.195.01.292.024l.058.013zm-2.875-3.1l-1.308.925-.004-.002a.27.27 0 01-.43-.205v-.001l-.091-1.598a3.183 3.183 0 011.833.882zM7.754 7.818h.492l.306.381-.11.476L8 8.886l-.443-.213-.11-.475.307-.381zM7.29 5.24c.107-.024.216-.043.326-.056l-.09 1.6-.008.004a.268.268 0 01-.293.256.27.27 0 01-.135-.05l-.002.001-1.316-.93c.419-.41.945-.696 1.518-.825zM5.296 6.663l1.201 1.071-.001.007a.269.269 0 01-.106.462l-.001.005-1.54.443a3.134 3.134 0 01.447-1.988zm1.608 2.846l-.612 1.474a3.16 3.16 0 01-1.27-1.586L6.6 9.13l.003.003a.265.265 0 01.18.029.27.27 0 01.117.341l.004.006zm1.806 1.896c-.572.13-1.17.1-1.726-.088l.777-1.4h.001a.27.27 0 01.475-.001h.006l.779 1.402a3.286 3.286 0 01-.312.087zm1.004-.416L9.096 9.5l.001-.003a.269.269 0 01.296-.37l.003-.004 1.593.269a3.147 3.147 0 01-1.275 1.597zm1.442-2.343L9.61 8.201l-.002-.006a.27.27 0 01-.185-.343.27.27 0 01.08-.12L9.5 7.73l1.195-1.067c.366.594.527 1.29.46 1.983z" clip-rule="evenodd"/></svg>`;
var iw = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 24 24" role="img" xmlns="http://www.w3.org/2000/svg"><path d="M9.71 2.136a1.43 1.43 0 0 0-2.047 0h-.007a1.48 1.48 0 0 0-.421 1.042c0 .41.161.777.422 1.039l.007.007c.257.264.616.426 1.019.426.404 0 .766-.162 1.027-.426l.003-.007c.261-.262.421-.629.421-1.039 0-.408-.159-.777-.421-1.042H9.71zM8.683 22.295c.404 0 .766-.167 1.027-.429l.003-.008c.261-.261.421-.631.421-1.036 0-.41-.159-.778-.421-1.044H9.71a1.42 1.42 0 0 0-1.027-.432 1.4 1.4 0 0 0-1.02.432h-.007c-.26.266-.422.634-.422 1.044 0 .406.161.775.422 1.036l.007.008c.258.262.617.429 1.02.429zm7.89-4.462c.359-.096.683-.33.882-.684l.027-.052a1.47 1.47 0 0 0 .114-1.067 1.454 1.454 0 0 0-.675-.896l-.021-.014a1.425 1.425 0 0 0-1.078-.132c-.36.091-.684.335-.881.686-.2.349-.241.75-.146 1.119.099.363.33.691.675.896h.002c.346.203.737.239 1.101.144zm-6.405-7.342a2.083 2.083 0 0 0-1.485-.627c-.58 0-1.103.242-1.482.627-.378.385-.612.916-.612 1.507s.233 1.124.612 1.514a2.08 2.08 0 0 0 2.967 0c.379-.39.612-.923.612-1.514s-.233-1.122-.612-1.507zm-.835-2.51c.843.141 1.6.552 2.178 1.144h.004c.092.093.182.196.265.299l1.446-.851a3.176 3.176 0 0 1-.047-1.808 3.149 3.149 0 0 1 1.456-1.926l.025-.016a3.062 3.062 0 0 1 2.345-.306c.77.21 1.465.721 1.898 1.482v.002c.431.757.518 1.626.313 2.408a3.145 3.145 0 0 1-1.456 1.928l-.198.118h-.02a3.095 3.095 0 0 1-2.154.201 3.127 3.127 0 0 1-1.514-.944l-1.444.848a4.162 4.162 0 0 1 0 2.879l1.444.846c.413-.47.939-.789 1.514-.944a3.041 3.041 0 0 1 2.371.319l.048.023v.002a3.17 3.17 0 0 1 1.408 1.906 3.215 3.215 0 0 1-.313 2.405l-.026.053-.003-.005a3.147 3.147 0 0 1-1.867 1.436 3.096 3.096 0 0 1-2.371-.318v-.006a3.156 3.156 0 0 1-1.456-1.927 3.175 3.175 0 0 1 .047-1.805l-1.446-.848a3.905 3.905 0 0 1-.265.294l-.004.005a3.938 3.938 0 0 1-2.178 1.138v1.699a3.09 3.09 0 0 1 1.56.862l.002.004c.565.572.914 1.368.914 2.243 0 .873-.35 1.664-.914 2.239l-.002.009a3.1 3.1 0 0 1-2.21.931 3.1 3.1 0 0 1-2.206-.93h-.002v-.009a3.186 3.186 0 0 1-.916-2.239c0-.875.35-1.672.916-2.243v-.004h.002a3.1 3.1 0 0 1 1.558-.862v-1.699a3.926 3.926 0 0 1-2.176-1.138l-.006-.005a4.098 4.098 0 0 1-1.173-2.874c0-1.122.452-2.136 1.173-2.872h.006a3.947 3.947 0 0 1 2.176-1.144V6.289a3.137 3.137 0 0 1-1.558-.864h-.002v-.004a3.192 3.192 0 0 1-.916-2.243c0-.871.35-1.669.916-2.243l.002-.002A3.084 3.084 0 0 1 8.683 0c.861 0 1.641.355 2.21.932v.002h.002c.565.574.914 1.372.914 2.243 0 .876-.35 1.667-.914 2.243l-.002.005a3.142 3.142 0 0 1-1.56.864v1.692zm8.121-1.129-.012-.019a1.452 1.452 0 0 0-.87-.668 1.43 1.43 0 0 0-1.103.146h.002c-.347.2-.58.529-.677.896-.095.365-.054.768.146 1.119l.007.009c.2.347.519.579.874.673.357.103.755.059 1.098-.144l.019-.009a1.47 1.47 0 0 0 .657-.885 1.493 1.493 0 0 0-.141-1.118"/></svg>`;
var ow = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg">
  <path d="M15.027 20.771h-12.881c-0.484-1.541-0.724-3.151-0.719-4.771 0-1.667 0.24-3.265 0.719-4.771h21.147c2.64-0.011 4.781 2.131 4.776 4.771 0.015 2.625-2.109 4.765-4.735 4.771zM14.427 22.375h-11.692c1.229 2.823 3.265 5.224 5.853 6.907 2.589 1.719 5.636 2.636 8.745 2.625 5.531 0 10.375-2.828 13.24-7.068-1.521-1.573-3.609-2.469-5.803-2.479zM24.771 9.64c2.271 0 4.333-0.957 5.803-2.468-3.24-4.828-8.855-7.511-14.652-7-5.791 0.516-10.848 4.14-13.187 9.468z"/>
</svg>`;
var lw = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg width="800px" height="800px" viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg" fill="none"><path fill="#000000" d="M12.549 1h-4.55l1.407 4.38h4.548l-3.68 2.61 1.406 4.405c2.37-1.725 3.143-4.336 2.274-7.016L12.55 1zM2.045 5.38h4.55L8 1H3.45L2.045 5.38c-.868 2.68-.094 5.29 2.275 7.015L5.725 7.99l-3.68-2.612zm2.275 7.015L8 15l3.68-2.605L8 9.745l-3.68 2.65z"/></svg>`;
var aw = `<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
<svg fill="#000000" width="800px" height="800px" viewBox="0 -2 28 28" xmlns="http://www.w3.org/2000/svg"><path d="m27.994 14.729c-.012.267-.365.566-1.091.945-1.495.778-9.236 3.967-10.883 4.821-.589.419-1.324.67-2.116.67-.641 0-1.243-.164-1.768-.452l.019.01c-1.304-.622-9.539-3.95-11.023-4.659-.741-.35-1.119-.653-1.132-.933v2.83c0 .282.39.583 1.132.933 1.484.709 9.722 4.037 11.023 4.659.504.277 1.105.44 1.744.44.795 0 1.531-.252 2.132-.681l-.011.008c1.647-.859 9.388-4.041 10.883-4.821.76-.396 1.096-.7 1.096-.982s0-2.791 0-2.791z"/><path d="m27.992 10.115c-.013.267-.365.565-1.09.944-1.495.778-9.236 3.967-10.883 4.821-.59.421-1.326.672-2.121.672-.639 0-1.24-.163-1.763-.449l.019.01c-1.304-.627-9.539-3.955-11.023-4.664-.741-.35-1.119-.653-1.132-.933v2.83c0 .282.39.583 1.132.933 1.484.709 9.721 4.037 11.023 4.659.506.278 1.108.442 1.749.442.793 0 1.527-.251 2.128-.677l-.011.008c1.647-.859 9.388-4.043 10.883-4.821.76-.397 1.096-.7 1.096-.984s0-2.791 0-2.791z"/><path d="m27.992 5.329c.014-.285-.358-.534-1.107-.81-1.451-.533-9.152-3.596-10.624-4.136-.528-.242-1.144-.383-1.794-.383-.734 0-1.426.18-2.035.498l.024-.012c-1.731.622-9.924 3.835-11.381 4.405-.729.287-1.086.552-1.073.834v2.83c0 .282.39.583 1.132.933 1.484.709 9.721 4.038 11.023 4.66.504.277 1.105.439 1.744.439.795 0 1.531-.252 2.133-.68l-.011.008c1.647-.859 9.388-4.043 10.883-4.821.76-.397 1.096-.7 1.096-.984s0-2.791 0-2.791h-.009zm-17.967 2.684 6.488-.996-1.96 2.874zm14.351-2.588-4.253 1.68-3.835-1.523 4.246-1.679 3.838 1.517zm-11.265-2.785-.628-1.157 1.958.765 1.846-.604-.499 1.196 1.881.7-2.426.252-.543 1.311-.879-1.457-2.8-.252 2.091-.754zm-4.827 1.632c1.916 0 3.467.602 3.467 1.344s-1.559 1.344-3.467 1.344-3.474-.603-3.474-1.344 1.553-1.344 3.474-1.344z"/></svg>`;
var ph = {
  actor: Nv,
  boundary: Pv,
  control: Fv,
  database: Dv,
  entity: Bv,
  cloudwatch: $v,
  cloudfront: Hv,
  cognito: Uv,
  dynamodb: Vv,
  ebs: zv,
  ec2: Gv,
  ecs: jv,
  efs: ru,
  elasticache: Zv,
  elasticbeantalk: Wv,
  elasticfilesystem: ru,
  glacier: qv,
  iam: Kv,
  kinesis: Yv,
  lambda: Xv,
  lightsail: Qv,
  rds: Jv,
  redshift: eb,
  s3: tb,
  sns: nb,
  sqs: rb,
  sagemaker: sb,
  vpc: ib,
  azureactivedirectory: ob,
  azurebackup: lb,
  azurecdn: ab,
  azuredatafactory: cb,
  azuredevops: ub,
  azurefunction: hb,
  azuresql: db,
  cosmosdb: fb,
  logicapps: pb,
  virtualmachine: gb,
  bigtable: mb,
  bigquery: xb,
  cloudcdn: Lb,
  clouddns: _b,
  cloudinterconnect: yb,
  cloudloadbalancing: Cb,
  cloudsql: vb,
  cloudstorage: bb,
  datalab: wb,
  dataproc: Eb,
  googleiam: Tb,
  googlesecurity: Sb,
  googlevpc: Ab,
  pubsub: Rb,
  securityscanner: kb,
  stackdriver: Ob,
  visionapi: Ib,
  client: Mb,
  server: Nb,
  browser: Pb,
  service: Fb,
  controller: Db,
  api: Bb,
  ui: $b,
  mobile: Hb,
  externalsystem: Ub,
  application: Vb,
  loadbalancer: zb,
  network: Gb,
  cache: jb,
  webserver: Zb,
  messagequeue: Wb,
  scheduler: qb,
  gateway: Kb,
  authenticationservice: Yb,
  mailserver: Xb,
  github: Qb,
  docker: Jb,
  gitlab: ew,
  jenkins: tw,
  postgresql: nw,
  mongodb: rw,
  kubernetes: sw,
  apachekafka: iw,
  elasticsearch: ow,
  auth0: lw,
  redis: aw
};
function gh() {
  const t = ge(0), e = ge(0), n = /* @__PURE__ */ __name(() => {
    t.value = document.documentElement.scrollTop, e.value = document.documentElement.scrollLeft;
  }, "n");
  return We(() => {
    n(), document.addEventListener("scroll", n);
  }), ht(() => {
    document.removeEventListener("scroll", n);
  }), [t, e];
}
__name(gh, "gh");
var ol = 10;
var cw = 1;
function uw() {
  let t = document.getElementById(
    "zenuml-intersection-detector-container"
  ), e = Array.from(
    document.getElementsByClassName("zenuml-intersection-detector")
  );
  return t && e.length === ol ? { detectorContainer: t, detectors: e } : (t = document.createElement("div"), t.id = "zenuml-intersection-detector-container", Object.assign(t.style, {
    position: "absolute",
    top: "0",
    left: "0",
    opacity: "0",
    pointerEvents: "none"
  }), e = new Array(ol).fill(0).map(() => {
    const n = document.createElement("div");
    return n.className = "zenuml-intersection-detector", Object.assign(n.style, {
      position: "absolute",
      top: "0",
      left: "0",
      width: "100%"
    }), t.appendChild(n), n;
  }), document.body.appendChild(t), { detectorContainer: t, detectors: e });
}
__name(uw, "uw");
function mh() {
  const t = ge(0);
  let e;
  return We(() => {
    const { detectorContainer: n, detectors: r } = uw(), s = document.documentElement.scrollHeight, i = document.documentElement.scrollWidth;
    n.style.height = s + "px", n.style.width = i + "px";
    const o = Math.ceil(
      document.documentElement.scrollHeight / ol
    ), l = [...Array(o + 1).keys()].map(
      (a) => a / o
    );
    r.forEach((a, c) => {
      a.style.top = c * o + "px", a.style.height = o + "px";
    }), e = new IntersectionObserver(
      ([a]) => {
        (a.intersectionRect.top - a.boundingClientRect.top > cw || a.target === r[0]) && (t.value = a.intersectionRect.top);
      },
      {
        threshold: l
      }
    ), r.forEach((a) => {
      e.observe(a);
    });
  }), ht(() => {
    e.disconnect();
  }), t;
}
__name(mh, "mh");
function xh(t) {
  let e = 0, n = t;
  for (; n; )
    e += n.offsetTop, n = n.offsetParent;
  return e;
}
__name(xh, "xh");
var hw = 10;
var dw = {
  name: "Participant",
  setup(t) {
    const e = Gr(), n = ge(null);
    if (e.state.mode === Gn.Static)
      return { translate: 0, participant: n };
    const r = mh(), [s] = gh();
    return { translate: J(() => {
      var u;
      const o = t.offsetTop || 0;
      let l = r.value + s.value;
      r.value > hw && (e == null ? void 0 : e.state.stickyOffset) && (l += e == null ? void 0 : e.state.stickyOffset);
      const a = ((u = e == null ? void 0 : e.state.diagramElement) == null ? void 0 : u.clientHeight) || 0, c = e != null && e.state.diagramElement ? xh(e == null ? void 0 : e.state.diagramElement) : 0;
      return l < o + c ? 0 : Math.min(l - c, a - iv) - o;
    }), participant: n };
  },
  props: {
    entity: {
      type: Object,
      required: true
    },
    offsetTop: {
      type: Number,
      default: 0
    }
  },
  data() {
    return {
      color: void 0
    };
  },
  mounted() {
    this.updateFontColor();
  },
  updated() {
    this.updateFontColor();
  },
  computed: {
    selected() {
      return this.$store.state.selected.includes(this.entity.name);
    },
    stereotype() {
      return this.entity.stereotype;
    },
    comment() {
      return this.entity.comment;
    },
    icon() {
      var t;
      return ph[(t = this.entity.type) == null ? void 0 : t.toLowerCase()];
    },
    backgroundColor() {
      try {
        return this.entity.color ? this.entity.color && Mv(this.entity.color) : void 0;
      } catch {
        return;
      }
    }
  },
  methods: {
    onSelect() {
      this.$store.commit("onSelect", this.entity.name);
    },
    updateFontColor() {
      if (!this.backgroundColor)
        return;
      let t = window.getComputedStyle(this.$refs.participant).getPropertyValue("background-color");
      if (!t)
        return;
      let e = Iv(t);
      this.color = e > 128 ? "#000" : "#fff";
    }
  }
};
var fw = ["innerHTML", "alt"];
var pw = { class: "h-5 group flex flex-col justify-center" };
var gw = {
  key: 0,
  class: "absolute hidden rounded-lg transform -translate-y-8 bg-gray-400 px-2 py-1 text-center text-sm text-white group-hover:flex"
};
var mw = {
  key: 1,
  class: "interface leading-4"
};
var xw = { class: "name leading-4" };
function Lw(t, e, n, r, s, i) {
  return R(), q("div", {
    class: we(["participant bg-skin-participant shadow-participant border-skin-participant text-skin-participant rounded text-base leading-4 flex flex-col justify-center z-10 h-10 top-8", { selected: i.selected }]),
    ref: "participant",
    style: Ce({
      backgroundColor: i.backgroundColor,
      color: s.color,
      transform: `translateY(${r.translate}px)`
    }),
    onClick: e[0] || (e[0] = (...o) => i.onSelect && i.onSelect(...o))
  }, [
    i.icon ? (R(), q("div", {
      key: 0,
      innerHTML: i.icon,
      class: "absolute left-1/2 transform -translate-x-1/2 -translate-y-full h-8 [&>svg]:w-full [&>svg]:h-full",
      alt: `icon for ${n.entity.name}`
    }, null, 8, fw)) : me("", true),
    S("div", pw, [
      i.comment ? (R(), q("span", gw, He(i.comment), 1)) : me("", true),
      i.stereotype ? (R(), q("label", mw, "\xAB" + He(i.stereotype) + "\xBB", 1)) : me("", true),
      S("label", xw, He(n.entity.label || n.entity.name), 1)
    ])
  ], 6);
}
__name(Lw, "Lw");
var Lh = /* @__PURE__ */ Ge(dw, [["render", Lw]]);
var Zs = b0.child({ name: "LifeLine" });
var _w = {
  name: "life-line",
  components: { Participant: Lh },
  props: [
    "entity",
    "context",
    "groupLeft",
    "inGroup",
    "renderParticipants",
    "renderLifeLine"
  ],
  data: () => ({
    translateX: 0,
    top: 0
  }),
  computed: {
    ...pn(["centerOf"]),
    ...Fn(["scale"]),
    debug() {
      return !!localStorage.zenumlDebug;
    },
    left() {
      return this.centerOf(this.entity.name) - 8 - (this.groupLeft || 0);
    }
  },
  mounted() {
    Zs.debug(`LifeLine mounted for ${this.entity.name}`), this.$nextTick(() => {
      this.setTop(), Zs.debug(`nextTick after updated for ${this.entity.name}`);
    }), ac.$on(
      "participant_set_top",
      () => this.$nextTick(() => this.setTop())
    );
  },
  updated() {
    Zs.debug(`updated for ${this.entity.name}`), this.$nextTick(() => {
      this.setTop(), Zs.debug(`nextTick after updated for ${this.entity.name}`);
    });
  },
  methods: {
    onSelect() {
      this.$store.commit("onSelect", this.entity.name);
    },
    setTop() {
      const t = this.entity.name.replace(
        /([ #;&,.+*~\':"!^$[\]()=>|\/@])/g,
        "\\$1"
      ), e = this.$store.getters.diagramElement, n = e == null ? void 0 : e.querySelector(`[data-to="${t}"]`), r = (n == null ? void 0 : n.offsetParent) != null;
      if (n && n.attributes["data-type"].value === "creation" && r) {
        Zs.debug(`First message to ${this.entity.name} is creation`);
        const s = this.$el.getBoundingClientRect().y, i = n.getBoundingClientRect().y;
        this.top = (i - s) / this.scale;
      } else
        this.top = 0;
    }
  }
};
var yw = ["id", "entity-type"];
var Cw = {
  key: 1,
  class: "line w0 mx-auto flex-grow w-px"
};
function vw(t, e, n, r, s, i) {
  var l;
  const o = _e("participant");
  return R(), q("div", {
    id: n.entity.name,
    "entity-type": (l = n.entity.type) == null ? void 0 : l.toLowerCase(),
    class: "lifeline absolute flex flex-col mx-2 transform -translate-x-1/2 h-full",
    style: Ce({ paddingTop: t.top + "px", left: i.left + "px" })
  }, [
    a1(S("div", null, He(t.centerOf(n.entity.name)), 513), [
      [N0, i.debug]
    ]),
    n.renderParticipants ? (R(), ke(o, {
      key: 0,
      entity: n.entity,
      offsetTop: t.top
    }, null, 8, ["entity", "offsetTop"])) : me("", true),
    n.renderLifeLine ? (R(), q("div", Cw)) : me("", true)
  ], 12, yw);
}
__name(vw, "vw");
var _h = /* @__PURE__ */ Ge(_w, [["render", vw], ["__scopeId", "data-v-19661715"]]);
var bw = {
  name: "lifeline-group",
  props: ["context", "renderParticipants"],
  computed: {
    ...pn(["centerOf"]),
    name() {
      var t, e;
      return (e = (t = this.context) == null ? void 0 : t.name()) == null ? void 0 : e.getFormattedText();
    },
    offset() {
      return 0;
    },
    left() {
      const t = this.entities[0].name, e = Math.max(
        _0(t, xr.ParticipantName),
        "100"
      );
      return this.centerOf(t) - e / 2 - 8;
    },
    right() {
      const t = Math.max(
        _0(
          this.entities.slice(-1).name,
          xr.ParticipantName
        ),
        "100"
      ), e = this.entities.slice(0).pop().name;
      return this.centerOf(e) + t / 2 + 20;
    },
    entities() {
      return Ds(this.context).Array();
    }
  },
  components: {
    LifeLine: _h
  }
};
var ww = { class: "lifeline-group relative flex-grow" };
function Ew(t, e, n, r, s, i) {
  const o = _e("life-line");
  return i.entities.length > 0 ? (R(), q("div", {
    key: 0,
    class: "container absolute flex flex-col h-full",
    style: Ce({ left: `${i.left}px`, width: `${i.right - i.left}px` })
  }, [
    S("div", {
      class: we(["flex flex-col flex-grow", {
        shadow: !n.renderParticipants,
        "shadow-slate-500/50": !n.renderParticipants
      }])
    }, [
      S("div", ww, [
        (R(true), q(Fe, null, On(i.entities, (l) => (R(), ke(o, {
          inGroup: "true",
          key: l.name,
          ref_for: true,
          ref: l.name,
          entity: l,
          "group-left": i.left,
          renderParticipants: n.renderParticipants
        }, null, 8, ["entity", "group-left", "renderParticipants"]))), 128))
      ])
    ], 2)
  ], 4)) : me("", true);
}
__name(Ew, "Ew");
var Tw = /* @__PURE__ */ Ge(bw, [["render", Ew]]);
var su = b0.child({ name: "LifeLineLayer" });
var Sw = 70;
var Aw = 10;
var Rw = {
  name: "life-line-layer",
  props: ["context", "renderParticipants", "renderLifeLine", "leftGap"],
  setup() {
    const e = Gr(), n = mh(), [r] = gh();
    return e.state.mode === Gn.static ? { translate: 0, RenderMode: Gn } : { translate: J(() => {
      var a;
      let i = n.value + r.value;
      n.value > Aw && (e == null ? void 0 : e.state.stickyOffset) && (i += e == null ? void 0 : e.state.stickyOffset);
      const o = ((a = e == null ? void 0 : e.state.diagramElement) == null ? void 0 : a.clientHeight) || 0, l = e != null && e.state.diagramElement ? xh(e == null ? void 0 : e.state.diagramElement) : 0;
      return i <= 0 + l ? 0 : Math.min(i - l, o - Sw) - 0;
    }), RenderMode: Gn };
  },
  computed: {
    ...pn([
      "participants",
      "GroupContext",
      "ParticipantContext",
      "centerOf"
    ]),
    debug() {
      return !!localStorage.zenumlDebug;
    },
    invisibleStarter() {
      return this.starterParticipant.name === "_STARTER_";
    },
    starterParticipant() {
      return this.participants.Starter();
    },
    starterOnTheLeft() {
      return !this.starterParticipant.explicit;
    },
    implicitParticipants() {
      return this.participants.ImplicitArray();
    },
    explicitGroupAndParticipants() {
      var t;
      return (t = this.context) == null ? void 0 : t.children.filter((e) => {
        const n = e instanceof sh, r = e instanceof ih;
        return n || r;
      });
    }
  },
  methods: {
    ...V5(["increaseGeneration"]),
    getParticipantEntity(t) {
      return Ds(t).First();
    }
  },
  updated() {
    su.debug("LifeLineLayer updated");
  },
  mounted() {
    su.debug("LifeLineLayer mounted");
  },
  components: {
    LifeLine: _h,
    LifeLineGroup: Tw
  }
};
var kw = { class: "container relative grow" };
function Ow(t, e, n, r, s, i) {
  const o = _e("life-line"), l = _e("life-line-group");
  return R(), q("div", {
    class: "life-line-layer lifeline-layer z-30 absolute h-full flex flex-col top-0",
    style: Ce({
      "min-width": t.mode === r.RenderMode.Dynamic ? "200px" : "auto",
      width: `calc(100% - ${n.leftGap}px)`,
      pointerEvents: n.renderParticipants ? "none" : "all"
    })
  }, [
    S("div", {
      style: Ce({
        transform: `translateY(${r.translate > 0 ? r.translate - 1 : r.translate}px)`
      }),
      class: "pt-8 after:bg-gradient-to-b after:from-skin-frame after:via-skin-frame after:to-skin-frame/0 after:block after:absolute after:top-0 after:w-full after:h-[72px]"
    }, null, 4),
    S("div", kw, [
      i.starterOnTheLeft ? (R(), ke(o, {
        key: 0,
        entity: i.starterParticipant,
        class: we(["starter", { invisible: i.invisibleStarter && !i.debug }]),
        renderParticipants: n.renderParticipants,
        renderLifeLine: n.renderLifeLine
      }, null, 8, ["entity", "class", "renderParticipants", "renderLifeLine"])) : me("", true),
      (R(true), q(Fe, null, On(i.explicitGroupAndParticipants, (a, c) => (R(), q(Fe, null, [
        a instanceof t.GroupContext ? (R(), ke(l, {
          key: c,
          context: a,
          renderParticipants: n.renderParticipants
        }, null, 8, ["context", "renderParticipants"])) : me("", true),
        a instanceof t.ParticipantContext ? (R(), ke(o, {
          key: c,
          entity: i.getParticipantEntity(a),
          renderParticipants: n.renderParticipants,
          renderLifeLine: n.renderLifeLine
        }, null, 8, ["entity", "renderParticipants", "renderLifeLine"])) : me("", true)
      ], 64))), 256)),
      (R(true), q(Fe, null, On(i.implicitParticipants, (a) => (R(), ke(o, {
        key: a.name,
        entity: a,
        renderParticipants: n.renderParticipants,
        renderLifeLine: n.renderLifeLine
      }, null, 8, ["entity", "renderParticipants", "renderLifeLine"]))), 128))
    ])
  ], 4);
}
__name(Ow, "Ow");
var uo = /* @__PURE__ */ Ge(Rw, [["render", Ow]]);
var Iw = { class: "message-layer relative z-30 pt-24 pb-10" };
var iu = /* @__PURE__ */ Ye({
  __name: "MessageLayer",
  props: {
    context: null
  },
  setup(t) {
    const e = t, n = us(() => import("./StylePanel.2c488616-GDLT4M37.mjs")), r = b0.child({ name: "MessageLayer" }), s = Gr(), i = J(() => s.getters.participants), o = J(() => s.getters.centerOf), l = J(() => {
      var x, y;
      const c = (x = e.context) == null ? void 0 : x.stat()[0].message();
      if (!c)
        return false;
      const u = c == null ? void 0 : c.Owner(), h = c == null ? void 0 : c.ProvidedFrom(), f = (y = e.context) == null ? void 0 : y.Origin();
      return !u || u === (h || f);
    }), a = J(() => {
      if (i.value.Array().length >= 1) {
        const c = i.value.Array().slice(0)[0].name;
        return o.value(c) + (l.value ? 1 : 0);
      }
      return 0;
    });
    return We(() => {
      r.debug("MessageLayer mounted");
    }), k0(() => {
      r.debug("MessageLayer updated");
    }), (c, u) => {
      const h = _e("block");
      return R(), q("div", Iw, [
        z(h, {
          context: t.context,
          style: Ce({ "padding-left": Le(a) + "px" })
        }, null, 8, ["context", "style"]),
        z(Le(n))
      ]);
    };
  }
});
var Mw = b.tree.ParseTreeWalker.DEFAULT;
var uc = class extends w {
  static {
    __name(this, "uc");
  }
  constructor(n) {
    super();
    Z(this, "_orderedParticipants");
    Z(this, "frameRoot", null);
    Z(this, "parents", []);
    this._orderedParticipants = n;
  }
  getLocalParticipants(n) {
    return [
      n.Origin(),
      ...Ds(n).ImplicitArray().map((r) => r.name)
    ];
  }
  getLeft(n) {
    const r = this.getLocalParticipants(n);
    return this._orderedParticipants.find((s) => r.includes(s)) || "";
  }
  getRight(n) {
    return this._orderedParticipants.slice().reverse().find((r) => this.getLocalParticipants(n).includes(r)) || "";
  }
  enterFragment(n) {
    var s;
    const r = {
      left: this.getLeft(n),
      right: this.getRight(n),
      children: []
    };
    this.frameRoot || (this.frameRoot = r), this.parents.length > 0 && ((s = this.parents[this.parents.length - 1].children) == null || s.push(r)), this.parents.push(r);
  }
  exitFragment() {
    this.parents.pop();
  }
  enterTcf(n) {
    this.enterFragment(n);
  }
  enterOpt(n) {
    this.enterFragment(n);
  }
  enterPar(n) {
    this.enterFragment(n);
  }
  enterAlt(n) {
    this.enterFragment(n);
  }
  enterLoop(n) {
    this.enterFragment(n);
  }
  exitTcf() {
    this.exitFragment();
  }
  exitOpt() {
    this.exitFragment();
  }
  exitPar() {
    this.exitFragment();
  }
  exitAlt() {
    this.exitFragment();
  }
  exitLoop() {
    this.exitFragment();
  }
  getFrame(n) {
    return n.children.map((r) => {
      Mw.walk(this, r);
    }), this.frameRoot;
  }
};
function ll(t, e) {
  if (!t.children || t.children.length === 0)
    return 1;
  let n = 0;
  for (const r of t.children)
    e === "LEFT" && r.left !== t.left || e === "RIGHT" && r.right !== t.right || (n = Math.max(n, ll(r, e)));
  return n + 1;
}
__name(ll, "ll");
function hc(t) {
  return t ? {
    left: 10 * ll(t, "LEFT"),
    right: 10 * ll(t, "RIGHT")
  } : { left: 0, right: 0 };
}
__name(hc, "hc");
function yh(t, e) {
  const n = e.orderedParticipantNames(), r = [t.Origin(), ...Ds(t).Names()], s = n.find((u) => r.includes(u)) || "", i = n.slice().reverse().find((u) => r.includes(u)) || "", l = new uc(n).getFrame(t), a = hc(l), c = Nw(
    t,
    i,
    e
  );
  return e.distance(s, i) + a.left + a.right + e.half(s) + e.half(i) + c;
}
__name(yh, "yh");
function Nw(t, e, n) {
  const s = ch(t).filter((i) => i.from === i.to).map(
    (i) => _0(i.signature, xr.MessageContent) + 37 - n.distance(i.from, e) - n.half(e)
  );
  return Math.max.apply(null, [0, ...s]);
}
__name(Nw, "Nw");
var dc = /* @__PURE__ */ Ye({
  __name: "SeqDiagram",
  setup(t) {
    const e = Gr(), n = J(() => e.state.mode), r = J(() => e.getters.rootContext), s = J(() => e.getters.coordinates), i = J(() => yh(r.value, s.value)), o = J(() => {
      const a = s.value.orderedParticipantNames(), u = new uc(a).getFrame(r.value);
      return u ? hc(u).left + il + 20 : 0;
    }), l = ge(null);
    return e.commit("diagramElement", l), (a, c) => (R(), q("div", {
      class: "zenuml sequence-diagram relative box-border text-left overflow-visible",
      ref_key: "diagramRef",
      ref: l
    }, [
      S("div", {
        style: Ce({ paddingLeft: `${Le(o)}px` }),
        class: "relative"
      }, [
        Le(n) === Le(Gn).Dynamic ? (R(), q(Fe, { key: 0 }, [
          z(uo, {
            leftGap: Le(o),
            context: Le(r).head(),
            renderParticipants: false,
            renderLifeLine: true
          }, null, 8, ["leftGap", "context"]),
          z(iu, {
            context: Le(r).block(),
            style: Ce({ width: `${Le(i)}px` })
          }, null, 8, ["context", "style"]),
          z(uo, {
            leftGap: Le(o),
            context: Le(r).head(),
            renderParticipants: true,
            renderLifeLine: false
          }, null, 8, ["leftGap", "context"])
        ], 64)) : me("", true),
        Le(n) === Le(Gn).Static ? (R(), q(Fe, { key: 1 }, [
          z(uo, {
            leftGap: Le(o),
            context: Le(r).head(),
            renderParticipants: true,
            renderLifeLine: true
          }, null, 8, ["leftGap", "context"]),
          z(iu, {
            context: Le(r).block(),
            style: Ce({ width: `${Le(i)}px` })
          }, null, 8, ["context", "style"])
        ], 64)) : me("", true)
      ], 4)
    ], 512));
  }
});
var Pw = {
  name: "IconList",
  props: ["types"],
  computed: {},
  methods: {
    icon(t) {
      return ph[t == null ? void 0 : t.toLowerCase()];
    }
  }
};
var Fw = {
  role: "list",
  class: "mt-3 grid grid-cols-4 gap-5 sm:gap-6 sm:grid-cols-6 lg:grid-cols-8"
};
var Dw = { class: "h-12 flex items-center justify-center bg-gray-50 text-white text-sm font-medium rounded-t-md" };
var Bw = ["innerHTML", "alt"];
var $w = { class: "flex items-center justify-center border-t border-r border-b border-gray-200 bg-white rounded-b-md" };
var Hw = { class: "px-2 py-2 text-xs" };
var Uw = { class: "text-gray-900 font-medium hover:text-gray-600" };
function Vw(t, e, n, r, s, i) {
  return R(), q("ul", Fw, [
    (R(true), q(Fe, null, On(n.types, (o) => (R(), q("li", {
      key: o,
      class: "col-span-1 flex flex-col shadow-sm rounded-md"
    }, [
      S("div", Dw, [
        i.icon ? (R(), q("i", {
          key: 0,
          innerHTML: i.icon(o),
          class: "object-contain h-8 w-8 m-auto [&>svg]:w-full [&>svg]:h-full",
          alt: `icon for ${o}`
        }, null, 8, Bw)) : me("", true)
      ]),
      S("div", $w, [
        S("div", Hw, [
          S("span", Uw, "@" + He(o), 1)
        ])
      ])
    ]))), 128))
  ]);
}
__name(Vw, "Vw");
var zw = /* @__PURE__ */ Ge(Pw, [["render", Vw]]);
var Gw = {
  name: "TipsDialog",
  components: { Icon: dr, IconList: zw },
  computed: {
    standardTypes() {
      return ["Actor", "Boundary", "Control", "Database", "Entity"];
    },
    awsServices() {
      return [
        "CloudWatch",
        "CloudFront",
        "Cognito",
        "DynamoDB",
        "EBS",
        "EC2",
        "ECS",
        "EFS",
        "ElastiCache",
        "ElasticBeantalk",
        "ElasticFileSystem",
        "Glacier",
        "IAM",
        "Kinesis",
        "Lambda",
        "LightSail",
        "RDS",
        "Redshift",
        "S3",
        "SNS",
        "SQS",
        "Sagemaker",
        "VPC"
      ];
    },
    azureServices() {
      return [
        "AzureActiveDirectory",
        "AzureBackup",
        "AzureCDN",
        "AzureDataFactory",
        "AzureDevOps",
        "AzureFunction",
        "AzureSQL",
        "CosmosDB",
        "LogicApps",
        "VirtualMachine"
      ];
    },
    googleServices() {
      return [
        "BigTable",
        "BigQuery",
        "CloudCDN",
        "CloudDNS",
        "CloudInterconnect",
        "CloudLoadBalancing",
        "CloudSQL",
        "CloudStorage",
        "DataLab",
        "DataProc",
        "GoogleIAM",
        "GoogleSecurity",
        "GoogleVPC",
        "PubSub",
        "SecurityScanner",
        "StackDriver",
        "VisionAPI"
      ];
    }
  },
  methods: {
    closeTipsDialog() {
      var t;
      this.$store.state.showTips = false;
      try {
        (t = this.$gtag) == null || t.event("close", {
          event_category: "help",
          event_label: "tips dialog"
        });
      } catch (e) {
        console.error(e);
      }
    }
  }
};
var jw = { class: "flex items-end justify-center min-h-screen pt-4 px-4 pb-20 text-center sm:block" };
var Zw = /* @__PURE__ */ S("div", {
  class: "fixed inset-0 bg-gray-500 bg-opacity-75 transition-opacity",
  "aria-hidden": "true"
}, null, -1);
var Ww = /* @__PURE__ */ S("span", {
  class: "hidden sm:inline-block sm:align-middle sm:h-screen",
  "aria-hidden": "true"
}, "\u200B", -1);
var qw = { class: "z-40 inline-block align-bottom bg-white rounded-lg px-4 pb-4 text-left overflow-hidden shadow-xl transform transition-all sm:my-8 sm:align-middle sm:p-2" };
var Kw = {
  class: "bg-white px-4 py-5 border-b border-gray-200 sm:px-6",
  slot: "header"
};
var Yw = /* @__PURE__ */ S("h3", { class: "text-xl leading-6 font-medium text-gray-900 inline-block" }, " ZenUML Tips ", -1);
var Xw = /* @__PURE__ */ S("span", { class: "sr-only" }, "Close menu", -1);
var Qw = { slot: "body" };
var Jw = { class: "relative bg-white pb-32 mt-4 overflow-hidden" };
var eE = { class: "relative" };
var tE = { class: "lg:mx-auto lg:max-w-11/12 lg:px-8" };
var nE = /* @__PURE__ */ h1(`<div class="grid lg:grid-cols-3 sm:grid-cols-2 grid-cols-1"><div><div class="px-4 max-w-full mx-auto sm:px-6 lg:max-w-none lg:mx-0"><h2 class="mt-4 mb-4 text-lg leading-6 font-medium text-gray-900"> Declare Participants </h2><pre class="text-xs w-full bg-gray-50 text-gray-600 p-2 rounded-lg"><code>// Define a Starter (optional)
@Starter(A)

// Show icons
@EC2 A

// Use &#39;group&#39; keyword
group GroupName {  B  C }

// Use stereotype
&lt;&lt;servlet&gt;&gt; ServiceX</code></pre></div><div class="px-4 max-w-7xl mx-auto sm:px-6 lg:max-w-none lg:mx-0"><h2 class="mt-4 mb-4 text-lg leading-6 font-medium text-gray-900"> Divider </h2><pre class="text-xs w-full bg-gray-50 text-gray-600 p-2 rounded-lg"><code>A.method()
==divider name==
B.method()
</code></pre></div></div><div class="px-4 w-full mx-auto lg:max-w-none lg:mx-0"><h2 class="mt-4 mb-4 text-lg leading-6 font-medium text-gray-900"> Fragments </h2><pre class="text-xs w-full bg-gray-50 text-gray-600 p-2 rounded-lg"><code>// Alt (AKA if/else)
if(condition1) {}
else if (condition2) {}
else {}

// \`loop\`, \`for\`, \`forEach\`, \`while\`
// are treated the same
forEach(records) {}

// Opt
opt {}

// Par
par {}

// Try Catch Finally
try {} catch() {} finally {}
</code></pre></div><div class="px-4 w-full mx-auto lg:max-w-none lg:mx-0"><h2 class="mt-4 mb-4 text-lg leading-6 font-medium text-gray-900"> Messages </h2><pre class="text-xs w-full bg-gray-50 text-gray-600 p-2 rounded-lg"><code>//Creation
new ParticipantName()

//Sync Message
A.method
A-&gt;B.method

//Async Message
A-&gt;B: async message

//Reply Message, three styles
x = A.method
A.method() {
  return x
}
A.method() {
  @return A-&gt;B: message
}</code></pre></div></div>`, 1);
var rE = { class: "px-4 max-w-7xl mx-auto sm:px-6 lg:max-w-none lg:mx-0" };
var sE = /* @__PURE__ */ S("h2", { class: "mt-8 mb-4 text-lg leading-6 font-medium text-gray-900" }, " Builtin Icons ", -1);
var iE = /* @__PURE__ */ S("p", { class: "text-sm text-gray-500" }, [
  /* @__PURE__ */ dn(" Use "),
  /* @__PURE__ */ S("span", { class: "rounded inline-block bg-gray-50 text-gray-600" }, [
    /* @__PURE__ */ S("code", { class: "text-xs" }, "@Actor TheParticipant")
  ]),
  /* @__PURE__ */ dn(" to define the type of the participant. ")
], -1);
var oE = /* @__PURE__ */ S("hr", { class: "mt-4" }, null, -1);
var lE = /* @__PURE__ */ S("hr", { class: "mt-4" }, null, -1);
var aE = /* @__PURE__ */ S("hr", { class: "mt-4" }, null, -1);
function cE(t, e, n, r, s, i) {
  const o = _e("Icon"), l = _e("IconList");
  return R(), q("div", jw, [
    Zw,
    Ww,
    S("div", qw, [
      S("div", null, [
        S("div", Kw, [
          Yw,
          S("button", {
            type: "button",
            onClick: e[0] || (e[0] = (a) => i.closeTipsDialog()),
            class: "float-right bg-white rounded-md inline-flex items-center justify-center text-gray-400 hover:text-gray-500 hover:bg-gray-100 focus:outline-none focus:ring-2 focus:ring-inset focus:ring-indigo-500"
          }, [
            Xw,
            z(o, {
              name: "close",
              "icon-class": "h-6 w-6"
            })
          ])
        ]),
        S("div", Qw, [
          S("div", Jw, [
            S("div", eE, [
              S("div", tE, [
                nE,
                S("div", rE, [
                  sE,
                  iE,
                  z(l, { types: i.standardTypes }, null, 8, ["types"]),
                  oE,
                  z(l, { types: i.awsServices }, null, 8, ["types"]),
                  lE,
                  z(l, { types: i.azureServices }, null, 8, ["types"]),
                  aE,
                  z(l, { types: i.googleServices }, null, 8, ["types"])
                ])
              ])
            ])
          ])
        ])
      ])
    ])
  ]);
}
__name(cE, "cE");
var uE = /* @__PURE__ */ Ge(Gw, [["render", cE]]);
var hE = {
  name: "point",
  props: ["fill", "rtl"]
};
var Ch = /* @__PURE__ */ __name((t) => (Ss("data-v-de6521b0"), t = t(), As(), t), "Ch");
var dE = {
  key: 0,
  class: "arrow stroke-2",
  height: "10",
  width: "10"
};
var fE = /* @__PURE__ */ Ch(() => /* @__PURE__ */ S("polyline", {
  class: "right head fill-current stroke-current",
  points: "0,0 10,5 0,10"
}, null, -1));
var pE = [
  fE
];
var gE = {
  key: 1,
  class: "arrow stroke-2",
  height: "10",
  width: "10"
};
var mE = /* @__PURE__ */ Ch(() => /* @__PURE__ */ S("polyline", {
  class: "left head fill-current stroke-current",
  points: "10,0 0,5 10,10"
}, null, -1));
var xE = [
  mE
];
function LE(t, e, n, r, s, i) {
  return R(), q("div", {
    class: we(["point text-skin-message-arrow", { fill: n.fill, "no-fill": !n.fill, "right-to-left": n.rtl }])
  }, [
    n.rtl ? me("", true) : (R(), q("svg", dE, pE)),
    n.rtl ? (R(), q("svg", gE, xE)) : me("", true)
  ], 2);
}
__name(LE, "LE");
var _E = /* @__PURE__ */ Ge(hE, [["render", LE], ["__scopeId", "data-v-de6521b0"]]);
var yE = { class: "name group flex-grow text-sm hover:whitespace-normal hover:text-skin-message-hover hover:bg-skin-message-hover" };
var CE = { class: "inline-block relative min-h-[1em]" };
var vE = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500"
};
var G0 = /* @__PURE__ */ Ye({
  __name: "Message",
  props: {
    context: null,
    content: null,
    rtl: { type: [String, Boolean] },
    type: null,
    textStyle: null,
    classNames: null,
    number: null
  },
  setup(t) {
    const e = t, { context: n, content: r, rtl: s, type: i, textStyle: o, classNames: l, number: a } = kl(e), c = Gr(), u = ge(), h = J(() => c.state.numbering), f = J(() => (i == null ? void 0 : i.value) === "async"), p = J(() => {
      switch (i == null ? void 0 : i.value) {
        case "sync":
        case "async":
          return "solid";
        case "creation":
        case "return":
          return "dashed";
      }
      return "";
    }), x = J(() => {
      switch (i == null ? void 0 : i.value) {
        case "sync":
        case "async":
          return true;
        case "creation":
        case "return":
          return false;
      }
      return false;
    }), y = /* @__PURE__ */ __name(() => {
      c.getters.onMessageClick(n, u.value);
    }, "y");
    return (A, _) => (R(), q("div", {
      class: we(["message border-skin-message-arrow border-b-2 flex items-end", {
        "flex-row-reverse": Le(s),
        return: Le(i) === "return",
        "right-to-left": Le(s),
        "text-left": Le(f),
        "text-center": !Le(f)
      }]),
      style: Ce({ "border-bottom-style": Le(p) || void 0 }),
      onClick: y,
      ref_key: "messageRef",
      ref: u
    }, [
      S("div", yE, [
        S("div", CE, [
          S("div", {
            style: Ce(Le(o)),
            class: we(Le(l))
          }, He(Le(r)), 7),
          Le(h) ? (R(), q("div", vE, He(Le(a)), 1)) : me("", true)
        ])
      ]),
      z(_E, {
        class: "flex-shrink-0 transform translate-y-1/2 -my-px",
        fill: Le(x),
        rtl: Le(s)
      }, null, 8, ["fill", "rtl"])
    ], 6));
  }
});
var bE = {
  name: "WidthProvider",
  components: { Message: G0 },
  data: function() {
    return {
      text: "abcd"
    };
  },
  methods: {
    width: function(t, e) {
      return console.log(t, e), this.text = t, this.$el.clientWidth;
    }
  },
  mounted() {
    this.$store.state.widthProvider = this;
  }
};
var wE = { class: "hidden" };
function EE(t, e, n, r, s, i) {
  const o = _e("message");
  return R(), q("div", wE, [
    z(o, {
      content: t.text,
      rtl: "false",
      type: "sync"
    }, null, 8, ["content"])
  ]);
}
__name(EE, "EE");
var TE = /* @__PURE__ */ Ge(bE, [["render", EE]]);
function SE(t, e) {
  if (t.match(/^[a-z]+:\/\//i))
    return t;
  if (t.match(/^\/\//))
    return window.location.protocol + t;
  if (t.match(/^[a-z]+:/i))
    return t;
  const n = document.implementation.createHTMLDocument(), r = n.createElement("base"), s = n.createElement("a");
  return n.head.appendChild(r), n.body.appendChild(s), e && (r.href = e), s.href = t, s.href;
}
__name(SE, "SE");
var AE = /* @__PURE__ */ (() => {
  let t = 0;
  const e = /* @__PURE__ */ __name(() => `0000${(Math.random() * 36 ** 4 << 0).toString(36)}`.slice(-4), "e");
  return () => (t += 1, `u${e()}${t}`);
})();
function Lr(t) {
  const e = [];
  for (let n = 0, r = t.length; n < r; n++)
    e.push(t[n]);
  return e;
}
__name(Lr, "Lr");
function Vi(t, e) {
  const r = (t.ownerDocument.defaultView || window).getComputedStyle(t).getPropertyValue(e);
  return r ? parseFloat(r.replace("px", "")) : 0;
}
__name(Vi, "Vi");
function RE(t) {
  const e = Vi(t, "border-left-width"), n = Vi(t, "border-right-width");
  return t.clientWidth + e + n;
}
__name(RE, "RE");
function kE(t) {
  const e = Vi(t, "border-top-width"), n = Vi(t, "border-bottom-width");
  return t.clientHeight + e + n;
}
__name(kE, "kE");
function vh(t, e = {}) {
  const n = e.width || RE(t), r = e.height || kE(t);
  return { width: n, height: r };
}
__name(vh, "vh");
function OE() {
  let t, e;
  try {
    e = process;
  } catch {
  }
  const n = e && e.env ? e.env.devicePixelRatio : null;
  return n && (t = parseInt(n, 10), Number.isNaN(t) && (t = 1)), t || window.devicePixelRatio || 1;
}
__name(OE, "OE");
var Gt = 16384;
function IE(t) {
  (t.width > Gt || t.height > Gt) && (t.width > Gt && t.height > Gt ? t.width > t.height ? (t.height *= Gt / t.width, t.width = Gt) : (t.width *= Gt / t.height, t.height = Gt) : t.width > Gt ? (t.height *= Gt / t.width, t.width = Gt) : (t.width *= Gt / t.height, t.height = Gt));
}
__name(IE, "IE");
function ME(t, e = {}) {
  return t.toBlob ? new Promise((n) => {
    t.toBlob(n, e.type ? e.type : "image/png", e.quality ? e.quality : 1);
  }) : new Promise((n) => {
    const r = window.atob(t.toDataURL(e.type ? e.type : void 0, e.quality ? e.quality : void 0).split(",")[1]), s = r.length, i = new Uint8Array(s);
    for (let o = 0; o < s; o += 1)
      i[o] = r.charCodeAt(o);
    n(new Blob([i], {
      type: e.type ? e.type : "image/png"
    }));
  });
}
__name(ME, "ME");
function zi(t) {
  return new Promise((e, n) => {
    const r = new Image();
    r.decode = () => e(r), r.onload = () => e(r), r.onerror = n, r.crossOrigin = "anonymous", r.decoding = "async", r.src = t;
  });
}
__name(zi, "zi");
async function NE(t) {
  return Promise.resolve().then(() => new XMLSerializer().serializeToString(t)).then(encodeURIComponent).then((e) => `data:image/svg+xml;charset=utf-8,${e}`);
}
__name(NE, "NE");
async function PE(t, e, n) {
  const r = "http://www.w3.org/2000/svg", s = document.createElementNS(r, "svg"), i = document.createElementNS(r, "foreignObject");
  return s.setAttribute("width", `${e}`), s.setAttribute("height", `${n}`), s.setAttribute("viewBox", `0 0 ${e} ${n}`), i.setAttribute("width", "100%"), i.setAttribute("height", "100%"), i.setAttribute("x", "0"), i.setAttribute("y", "0"), i.setAttribute("externalResourcesRequired", "true"), s.appendChild(i), i.appendChild(t), NE(s);
}
__name(PE, "PE");
function FE(t) {
  const e = t.getPropertyValue("content");
  return `${t.cssText} content: '${e.replace(/'|"/g, "")}';`;
}
__name(FE, "FE");
function DE(t) {
  return Lr(t).map((e) => {
    const n = t.getPropertyValue(e), r = t.getPropertyPriority(e);
    return `${e}: ${n}${r ? " !important" : ""};`;
  }).join(" ");
}
__name(DE, "DE");
function BE(t, e, n) {
  const r = `.${t}:${e}`, s = n.cssText ? FE(n) : DE(n);
  return document.createTextNode(`${r}{${s}}`);
}
__name(BE, "BE");
function ou(t, e, n) {
  const r = window.getComputedStyle(t, n), s = r.getPropertyValue("content");
  if (s === "" || s === "none")
    return;
  const i = AE();
  try {
    e.className = `${e.className} ${i}`;
  } catch {
    return;
  }
  const o = document.createElement("style");
  o.appendChild(BE(i, n, r)), e.appendChild(o);
}
__name(ou, "ou");
function $E(t, e) {
  ou(t, e, ":before"), ou(t, e, ":after");
}
__name($E, "$E");
var lu = "application/font-woff";
var au = "image/jpeg";
var HE = {
  woff: lu,
  woff2: lu,
  ttf: "application/font-truetype",
  eot: "application/vnd.ms-fontobject",
  png: "image/png",
  jpg: au,
  jpeg: au,
  gif: "image/gif",
  tiff: "image/tiff",
  svg: "image/svg+xml",
  webp: "image/webp"
};
function UE(t) {
  const e = /\.([^./]*?)$/g.exec(t);
  return e ? e[1] : "";
}
__name(UE, "UE");
function fc(t) {
  const e = UE(t).toLowerCase();
  return HE[e] || "";
}
__name(fc, "fc");
function VE(t) {
  return t.split(/,/)[1];
}
__name(VE, "VE");
function al(t) {
  return t.search(/^(data:)/) !== -1;
}
__name(al, "al");
function bh(t, e) {
  return `data:${e};base64,${t}`;
}
__name(bh, "bh");
async function wh(t, e, n) {
  const r = await fetch(t, e);
  if (r.status === 404)
    throw new Error(`Resource "${r.url}" not found`);
  const s = await r.blob();
  return new Promise((i, o) => {
    const l = new FileReader();
    l.onerror = o, l.onloadend = () => {
      try {
        i(n({ res: r, result: l.result }));
      } catch (a) {
        o(a);
      }
    }, l.readAsDataURL(s);
  });
}
__name(wh, "wh");
var ho = {};
function zE(t, e, n) {
  let r = t.replace(/\?.*/, "");
  return n && (r = t), /ttf|otf|eot|woff2?/i.test(r) && (r = r.replace(/.*\//, "")), e ? `[${e}]${r}` : r;
}
__name(zE, "zE");
async function pc(t, e, n) {
  const r = zE(t, e, n.includeQueryParams);
  if (ho[r] != null)
    return ho[r];
  n.cacheBust && (t += (/\?/.test(t) ? "&" : "?") + (/* @__PURE__ */ new Date()).getTime());
  let s;
  try {
    const i = await wh(t, n.fetchRequestInit, ({ res: o, result: l }) => (e || (e = o.headers.get("Content-Type") || ""), VE(l)));
    s = bh(i, e);
  } catch (i) {
    s = n.imagePlaceholder || "";
    let o = `Failed to fetch resource: ${t}`;
    i && (o = typeof i == "string" ? i : i.message), o && console.warn(o);
  }
  return ho[r] = s, s;
}
__name(pc, "pc");
async function GE(t) {
  const e = t.toDataURL();
  return e === "data:," ? t.cloneNode(false) : zi(e);
}
__name(GE, "GE");
async function jE(t, e) {
  if (t.currentSrc) {
    const i = document.createElement("canvas"), o = i.getContext("2d");
    i.width = t.clientWidth, i.height = t.clientHeight, o == null || o.drawImage(t, 0, 0, i.width, i.height);
    const l = i.toDataURL();
    return zi(l);
  }
  const n = t.poster, r = fc(n), s = await pc(n, r, e);
  return zi(s);
}
__name(jE, "jE");
async function ZE(t) {
  var e;
  try {
    if (!((e = t == null ? void 0 : t.contentDocument) === null || e === void 0) && e.body)
      return await H1(t.contentDocument.body, {}, true);
  } catch {
  }
  return t.cloneNode(false);
}
__name(ZE, "ZE");
async function WE(t, e) {
  return t instanceof HTMLCanvasElement ? GE(t) : t instanceof HTMLVideoElement ? jE(t, e) : t instanceof HTMLIFrameElement ? ZE(t) : t.cloneNode(false);
}
__name(WE, "WE");
var qE = /* @__PURE__ */ __name((t) => t.tagName != null && t.tagName.toUpperCase() === "SLOT", "qE");
async function KE(t, e, n) {
  var r;
  const s = qE(t) && t.assignedNodes ? Lr(t.assignedNodes()) : Lr(((r = t.shadowRoot) !== null && r !== void 0 ? r : t).childNodes);
  return s.length === 0 || t instanceof HTMLVideoElement || await s.reduce((i, o) => i.then(() => H1(o, n)).then((l) => {
    l && e.appendChild(l);
  }), Promise.resolve()), e;
}
__name(KE, "KE");
function YE(t, e) {
  const n = e.style;
  if (!n)
    return;
  const r = window.getComputedStyle(t);
  r.cssText ? (n.cssText = r.cssText, n.transformOrigin = r.transformOrigin) : Lr(r).forEach((s) => {
    let i = r.getPropertyValue(s);
    s === "font-size" && i.endsWith("px") && (i = `${Math.floor(parseFloat(i.substring(0, i.length - 2))) - 0.1}px`), n.setProperty(s, i, r.getPropertyPriority(s));
  });
}
__name(YE, "YE");
function XE(t, e) {
  t instanceof HTMLTextAreaElement && (e.innerHTML = t.value), t instanceof HTMLInputElement && e.setAttribute("value", t.value);
}
__name(XE, "XE");
function QE(t, e) {
  if (t instanceof HTMLSelectElement) {
    const n = e, r = Array.from(n.children).find((s) => t.value === s.getAttribute("value"));
    r && r.setAttribute("selected", "");
  }
}
__name(QE, "QE");
function JE(t, e) {
  return e instanceof Element && (YE(t, e), $E(t, e), XE(t, e), QE(t, e)), e;
}
__name(JE, "JE");
async function eT(t, e) {
  const n = t.querySelectorAll ? t.querySelectorAll("use") : [];
  if (n.length === 0)
    return t;
  const r = {};
  for (let i = 0; i < n.length; i++) {
    const l = n[i].getAttribute("xlink:href");
    if (l) {
      const a = t.querySelector(l), c = document.querySelector(l);
      !a && c && !r[l] && (r[l] = await H1(c, e, true));
    }
  }
  const s = Object.values(r);
  if (s.length) {
    const i = "http://www.w3.org/1999/xhtml", o = document.createElementNS(i, "svg");
    o.setAttribute("xmlns", i), o.style.position = "absolute", o.style.width = "0", o.style.height = "0", o.style.overflow = "hidden", o.style.display = "none";
    const l = document.createElementNS(i, "defs");
    o.appendChild(l);
    for (let a = 0; a < s.length; a++)
      l.appendChild(s[a]);
    t.appendChild(o);
  }
  return t;
}
__name(eT, "eT");
async function H1(t, e, n) {
  return !n && e.filter && !e.filter(t) ? null : Promise.resolve(t).then((r) => WE(r, e)).then((r) => KE(t, r, e)).then((r) => JE(t, r)).then((r) => eT(r, e));
}
__name(H1, "H1");
var Eh = /url\((['"]?)([^'"]+?)\1\)/g;
var tT = /url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g;
var nT = /src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;
function rT(t) {
  const e = t.replace(/([.*+?^${}()|\[\]\/\\])/g, "\\$1");
  return new RegExp(`(url\\(['"]?)(${e})(['"]?\\))`, "g");
}
__name(rT, "rT");
function sT(t) {
  const e = [];
  return t.replace(Eh, (n, r, s) => (e.push(s), n)), e.filter((n) => !al(n));
}
__name(sT, "sT");
async function iT(t, e, n, r, s) {
  try {
    const i = n ? SE(e, n) : e, o = fc(e);
    let l;
    if (s) {
      const a = await s(i);
      l = bh(a, o);
    } else
      l = await pc(i, o, r);
    return t.replace(rT(e), `$1${l}$3`);
  } catch {
  }
  return t;
}
__name(iT, "iT");
function oT(t, { preferredFontFormat: e }) {
  return e ? t.replace(nT, (n) => {
    for (; ; ) {
      const [r, , s] = tT.exec(n) || [];
      if (!s)
        return "";
      if (s === e)
        return `src: ${r};`;
    }
  }) : t;
}
__name(oT, "oT");
function Th(t) {
  return t.search(Eh) !== -1;
}
__name(Th, "Th");
async function Sh(t, e, n) {
  if (!Th(t))
    return t;
  const r = oT(t, n);
  return sT(r).reduce((i, o) => i.then((l) => iT(l, o, e, n)), Promise.resolve(r));
}
__name(Sh, "Sh");
async function lT(t, e) {
  var n;
  const r = (n = t.style) === null || n === void 0 ? void 0 : n.getPropertyValue("background");
  if (r) {
    const s = await Sh(r, null, e);
    t.style.setProperty("background", s, t.style.getPropertyPriority("background"));
  }
}
__name(lT, "lT");
async function aT(t, e) {
  if (!(t instanceof HTMLImageElement && !al(t.src)) && !(t instanceof SVGImageElement && !al(t.href.baseVal)))
    return;
  const n = t instanceof HTMLImageElement ? t.src : t.href.baseVal, r = await pc(n, fc(n), e);
  await new Promise((s, i) => {
    t.onload = s, t.onerror = i;
    const o = t;
    o.decode && (o.decode = s), t instanceof HTMLImageElement ? (t.srcset = "", t.src = r) : t.href.baseVal = r;
  });
}
__name(aT, "aT");
async function cT(t, e) {
  const r = Lr(t.childNodes).map((s) => Ah(s, e));
  await Promise.all(r).then(() => t);
}
__name(cT, "cT");
async function Ah(t, e) {
  t instanceof Element && (await lT(t, e), await aT(t, e), await cT(t, e));
}
__name(Ah, "Ah");
function uT(t, e) {
  const { style: n } = t;
  e.backgroundColor && (n.backgroundColor = e.backgroundColor), e.width && (n.width = `${e.width}px`), e.height && (n.height = `${e.height}px`);
  const r = e.style;
  return r != null && Object.keys(r).forEach((s) => {
    n[s] = r[s];
  }), t;
}
__name(uT, "uT");
var cu = {};
async function uu(t) {
  let e = cu[t];
  if (e != null)
    return e;
  const r = await (await fetch(t)).text();
  return e = { url: t, cssText: r }, cu[t] = e, e;
}
__name(uu, "uu");
async function hu(t, e) {
  let n = t.cssText;
  const r = /url\(["']?([^"')]+)["']?\)/g, i = (n.match(/url\([^)]+\)/g) || []).map(async (o) => {
    let l = o.replace(r, "$1");
    return l.startsWith("https://") || (l = new URL(l, t.url).href), wh(l, e.fetchRequestInit, ({ result: a }) => (n = n.replace(o, `url(${a})`), [o, a]));
  });
  return Promise.all(i).then(() => n);
}
__name(hu, "hu");
function du(t) {
  if (t == null)
    return [];
  const e = [], n = /(\/\*[\s\S]*?\*\/)/gi;
  let r = t.replace(n, "");
  const s = new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})", "gi");
  for (; ; ) {
    const a = s.exec(r);
    if (a === null)
      break;
    e.push(a[0]);
  }
  r = r.replace(s, "");
  const i = /@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi, o = "((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})", l = new RegExp(o, "gi");
  for (; ; ) {
    let a = i.exec(r);
    if (a === null) {
      if (a = l.exec(r), a === null)
        break;
      i.lastIndex = l.lastIndex;
    } else
      l.lastIndex = i.lastIndex;
    e.push(a[0]);
  }
  return e;
}
__name(du, "du");
async function hT(t, e) {
  const n = [], r = [];
  return t.forEach((s) => {
    if ("cssRules" in s)
      try {
        Lr(s.cssRules || []).forEach((i, o) => {
          if (i.type === CSSRule.IMPORT_RULE) {
            let l = o + 1;
            const a = i.href, c = uu(a).then((u) => hu(u, e)).then((u) => du(u).forEach((h) => {
              try {
                s.insertRule(h, h.startsWith("@import") ? l += 1 : s.cssRules.length);
              } catch (f) {
                console.error("Error inserting rule from remote css", {
                  rule: h,
                  error: f
                });
              }
            })).catch((u) => {
              console.error("Error loading remote css", u.toString());
            });
            r.push(c);
          }
        });
      } catch (i) {
        const o = t.find((l) => l.href == null) || document.styleSheets[0];
        s.href != null && r.push(uu(s.href).then((l) => hu(l, e)).then((l) => du(l).forEach((a) => {
          o.insertRule(a, s.cssRules.length);
        })).catch((l) => {
          console.error("Error loading remote stylesheet", l.toString());
        })), console.error("Error inlining remote css file", i.toString());
      }
  }), Promise.all(r).then(() => (t.forEach((s) => {
    if ("cssRules" in s)
      try {
        Lr(s.cssRules || []).forEach((i) => {
          n.push(i);
        });
      } catch (i) {
        console.error(`Error while reading CSS rules from ${s.href}`, i.toString());
      }
  }), n));
}
__name(hT, "hT");
function dT(t) {
  return t.filter((e) => e.type === CSSRule.FONT_FACE_RULE).filter((e) => Th(e.style.getPropertyValue("src")));
}
__name(dT, "dT");
async function fT(t, e) {
  if (t.ownerDocument == null)
    throw new Error("Provided element is not within a Document");
  const n = Lr(t.ownerDocument.styleSheets), r = await hT(n, e);
  return dT(r);
}
__name(fT, "fT");
async function pT(t, e) {
  const n = await fT(t, e);
  return (await Promise.all(n.map((s) => {
    const i = s.parentStyleSheet ? s.parentStyleSheet.href : null;
    return Sh(s.cssText, i, e);
  }))).join(`
`);
}
__name(pT, "pT");
async function gT(t, e) {
  const n = e.fontEmbedCSS != null ? e.fontEmbedCSS : e.skipFonts ? null : await pT(t, e);
  if (n) {
    const r = document.createElement("style"), s = document.createTextNode(n);
    r.appendChild(s), t.firstChild ? t.insertBefore(r, t.firstChild) : t.appendChild(r);
  }
}
__name(gT, "gT");
async function Rh(t, e = {}) {
  const { width: n, height: r } = vh(t, e), s = await H1(t, e, true);
  return await gT(s, e), await Ah(s, e), uT(s, e), await PE(s, n, r);
}
__name(Rh, "Rh");
async function gc(t, e = {}) {
  const { width: n, height: r } = vh(t, e), s = await Rh(t, e), i = await zi(s), o = document.createElement("canvas"), l = o.getContext("2d"), a = e.pixelRatio || OE(), c = e.canvasWidth || n, u = e.canvasHeight || r;
  return o.width = c * a, o.height = u * a, e.skipAutoScale || IE(o), o.style.width = `${c}`, o.style.height = `${u}`, e.backgroundColor && (l.fillStyle = e.backgroundColor, l.fillRect(0, 0, o.width, o.height)), l.drawImage(i, 0, 0, o.width, o.height), o;
}
__name(gc, "gc");
async function mT(t, e = {}) {
  return (await gc(t, e)).toDataURL();
}
__name(mT, "mT");
async function xT(t, e = {}) {
  return (await gc(t, e)).toDataURL("image/jpeg", e.quality || 1);
}
__name(xT, "xT");
async function LT(t, e = {}) {
  const n = await gc(t, e);
  return await ME(n);
}
__name(LT, "LT");
var _T = "process.env.VUE_APP_GIT_HASH";
var yT = "process.env.VUE_APP_GIT_BRANCH";
var CT = {
  name: "Debug",
  components: { Icon: dr },
  data() {
    return {
      commitHash: _T,
      gitBranch: yT
    };
  },
  computed: {
    debug() {
      return !!localStorage.zenumlDebug;
    }
  }
};
var vT = { class: "flex flex-nowrap m-2 text-sm" };
var bT = { class: "ml-4 text-xs inline-flex items-center font-bold leading-sm px-3 py-1 bg-green-200 text-green-700 rounded-sm" };
var wT = { class: "inline-block px-2" };
function ET(t, e, n, r, s, i) {
  const o = _e("Icon");
  return a1((R(), q("div", null, [
    S("div", vT, [
      S("div", bT, [
        z(o, {
          name: "debug",
          "icon-class": "h-4 w-4"
        }),
        S("span", wT, He(s.gitBranch) + ":" + He(s.commitHash), 1)
      ])
    ])
  ], 512)), [
    [N0, i.debug]
  ]);
}
__name(ET, "ET");
var TT = /* @__PURE__ */ Ge(CT, [["render", ET]]);
function Nn(t, e, ...n) {
  if (t in e) {
    let s = e[t];
    return typeof s == "function" ? s(...n) : s;
  }
  let r = new Error(`Tried to handle "${t}" but there is no handler defined. Only defined handlers are: ${Object.keys(e).map((s) => `"${s}"`).join(", ")}.`);
  throw Error.captureStackTrace && Error.captureStackTrace(r, Nn), r;
}
__name(Nn, "Nn");
var Gi = ((t) => (t[t.None = 0] = "None", t[t.RenderStrategy = 1] = "RenderStrategy", t[t.Static = 2] = "Static", t))(Gi || {});
var lr = ((t) => (t[t.Unmount = 0] = "Unmount", t[t.Hidden = 1] = "Hidden", t))(lr || {});
function wt({ visible: t = true, features: e = 0, ourProps: n, theirProps: r, ...s }) {
  var i;
  let o = Oh(r, n), l = Object.assign(s, { props: o });
  if (t || e & 2 && o.static)
    return fo(l);
  if (e & 1) {
    let a = (i = o.unmount) == null || i ? 0 : 1;
    return Nn(a, { [0]() {
      return null;
    }, [1]() {
      return fo({ ...s, props: { ...o, hidden: true, style: { display: "none" } } });
    } });
  }
  return fo(l);
}
__name(wt, "wt");
function fo({ props: t, attrs: e, slots: n, slot: r, name: s }) {
  var i, o;
  let { as: l, ...a } = mc(t, ["unmount", "static"]), c = (i = n.default) == null ? void 0 : i.call(n, r), u = {};
  if (r) {
    let h = false, f = [];
    for (let [p, x] of Object.entries(r))
      typeof x == "boolean" && (h = true), x === true && f.push(p);
    h && (u["data-headlessui-state"] = f.join(" "));
  }
  if (l === "template") {
    if (c = kh(c != null ? c : []), Object.keys(a).length > 0 || Object.keys(e).length > 0) {
      let [h, ...f] = c != null ? c : [];
      if (!AT(h) || f.length > 0)
        throw new Error(['Passing props on "template"!', "", `The current component <${s} /> is rendering a "template".`, "However we need to passthrough the following props:", Object.keys(a).concat(Object.keys(e)).map((y) => y.trim()).filter((y, A, _) => _.indexOf(y) === A).sort((y, A) => y.localeCompare(A)).map((y) => `  - ${y}`).join(`
`), "", "You can apply a few solutions:", ['Add an `as="..."` prop, to ensure that we render an actual element instead of a "template".', "Render a single element as the child so that we can forward the props onto that element."].map((y) => `  - ${y}`).join(`
`)].join(`
`));
      let p = Oh((o = h.props) != null ? o : {}, a), x = an(h, p);
      for (let y in p)
        y.startsWith("on") && (x.props || (x.props = {}), x.props[y] = p[y]);
      return x;
    }
    return Array.isArray(c) && c.length === 1 ? c[0] : c;
  }
  return ct(l, Object.assign({}, a, u), { default: () => c });
}
__name(fo, "fo");
function kh(t) {
  return t.flatMap((e) => e.type === Fe ? kh(e.children) : [e]);
}
__name(kh, "kh");
function Oh(...t) {
  if (t.length === 0)
    return {};
  if (t.length === 1)
    return t[0];
  let e = {}, n = {};
  for (let r of t)
    for (let s in r)
      s.startsWith("on") && typeof r[s] == "function" ? (n[s] != null || (n[s] = []), n[s].push(r[s])) : e[s] = r[s];
  if (e.disabled || e["aria-disabled"])
    return Object.assign(e, Object.fromEntries(Object.keys(n).map((r) => [r, void 0])));
  for (let r in n)
    Object.assign(e, { [r](s, ...i) {
      let o = n[r];
      for (let l of o) {
        if (s instanceof Event && s.defaultPrevented)
          return;
        l(s, ...i);
      }
    } });
  return e;
}
__name(Oh, "Oh");
function ST(t) {
  let e = Object.assign({}, t);
  for (let n in e)
    e[n] === void 0 && delete e[n];
  return e;
}
__name(ST, "ST");
function mc(t, e = []) {
  let n = Object.assign({}, t);
  for (let r of e)
    r in n && delete n[r];
  return n;
}
__name(mc, "mc");
function AT(t) {
  return t == null ? false : typeof t.type == "string" || typeof t.type == "object" || typeof t.type == "function";
}
__name(AT, "AT");
var RT = 0;
function kT() {
  return ++RT;
}
__name(kT, "kT");
function Bn() {
  return kT();
}
__name(Bn, "Bn");
var sr = ((t) => (t.Space = " ", t.Enter = "Enter", t.Escape = "Escape", t.Backspace = "Backspace", t.Delete = "Delete", t.ArrowLeft = "ArrowLeft", t.ArrowUp = "ArrowUp", t.ArrowRight = "ArrowRight", t.ArrowDown = "ArrowDown", t.Home = "Home", t.End = "End", t.PageUp = "PageUp", t.PageDown = "PageDown", t.Tab = "Tab", t))(sr || {});
function st(t) {
  var e;
  return t == null || t.value == null ? null : (e = t.value.$el) != null ? e : t.value;
}
__name(st, "st");
var Ih = Symbol("Context");
var qt = ((t) => (t[t.Open = 1] = "Open", t[t.Closed = 2] = "Closed", t[t.Closing = 4] = "Closing", t[t.Opening = 8] = "Opening", t))(qt || {});
function OT() {
  return xc() !== null;
}
__name(OT, "OT");
function xc() {
  return lt(Ih, null);
}
__name(xc, "xc");
function IT(t) {
  Ut(Ih, t);
}
__name(IT, "IT");
var MT = Object.defineProperty;
var NT = /* @__PURE__ */ __name((t, e, n) => e in t ? MT(t, e, { enumerable: true, configurable: true, writable: true, value: n }) : t[e] = n, "NT");
var fu = /* @__PURE__ */ __name((t, e, n) => (NT(t, typeof e != "symbol" ? e + "" : e, n), n), "fu");
var PT = class {
  static {
    __name(this, "PT");
  }
  constructor() {
    fu(this, "current", this.detect()), fu(this, "currentId", 0);
  }
  set(e) {
    this.current !== e && (this.currentId = 0, this.current = e);
  }
  reset() {
    this.set(this.detect());
  }
  nextId() {
    return ++this.currentId;
  }
  get isServer() {
    return this.current === "server";
  }
  get isClient() {
    return this.current === "client";
  }
  detect() {
    return typeof window > "u" || typeof document > "u" ? "server" : "client";
  }
};
var j0 = new PT();
function Sn(t) {
  if (j0.isServer)
    return null;
  if (t instanceof Node)
    return t.ownerDocument;
  if (t != null && t.hasOwnProperty("value")) {
    let e = st(t);
    if (e)
      return e.ownerDocument;
  }
  return document;
}
__name(Sn, "Sn");
function FT({ container: t, accept: e, walk: n, enabled: r }) {
  Qt(() => {
    let s = t.value;
    if (!s || r !== void 0 && !r.value)
      return;
    let i = Sn(t);
    if (!i)
      return;
    let o = Object.assign((a) => e(a), { acceptNode: e }), l = i.createTreeWalker(s, NodeFilter.SHOW_ELEMENT, o, false);
    for (; l.nextNode(); )
      n(l.currentNode);
  });
}
__name(FT, "FT");
var cl = ["[contentEditable=true]", "[tabindex]", "a[href]", "area[href]", "button:not([disabled])", "iframe", "input:not([disabled])", "select:not([disabled])", "textarea:not([disabled])"].map((t) => `${t}:not([tabindex='-1'])`).join(",");
var ln = ((t) => (t[t.First = 1] = "First", t[t.Previous = 2] = "Previous", t[t.Next = 4] = "Next", t[t.Last = 8] = "Last", t[t.WrapAround = 16] = "WrapAround", t[t.NoScroll = 32] = "NoScroll", t))(ln || {});
var ji = ((t) => (t[t.Error = 0] = "Error", t[t.Overflow = 1] = "Overflow", t[t.Success = 2] = "Success", t[t.Underflow = 3] = "Underflow", t))(ji || {});
var DT = ((t) => (t[t.Previous = -1] = "Previous", t[t.Next = 1] = "Next", t))(DT || {});
function BT(t = document.body) {
  return t == null ? [] : Array.from(t.querySelectorAll(cl)).sort((e, n) => Math.sign((e.tabIndex || Number.MAX_SAFE_INTEGER) - (n.tabIndex || Number.MAX_SAFE_INTEGER)));
}
__name(BT, "BT");
var Mh = ((t) => (t[t.Strict = 0] = "Strict", t[t.Loose = 1] = "Loose", t))(Mh || {});
function $T(t, e = 0) {
  var n;
  return t === ((n = Sn(t)) == null ? void 0 : n.body) ? false : Nn(e, { [0]() {
    return t.matches(cl);
  }, [1]() {
    let r = t;
    for (; r !== null; ) {
      if (r.matches(cl))
        return true;
      r = r.parentElement;
    }
    return false;
  } });
}
__name($T, "$T");
var HT = ((t) => (t[t.Keyboard = 0] = "Keyboard", t[t.Mouse = 1] = "Mouse", t))(HT || {});
typeof window < "u" && typeof document < "u" && (document.addEventListener("keydown", (t) => {
  t.metaKey || t.altKey || t.ctrlKey || (document.documentElement.dataset.headlessuiFocusVisible = "");
}, true), document.addEventListener("click", (t) => {
  t.detail === 1 ? delete document.documentElement.dataset.headlessuiFocusVisible : t.detail === 0 && (document.documentElement.dataset.headlessuiFocusVisible = "");
}, true));
function Pr(t) {
  t == null || t.focus({ preventScroll: true });
}
__name(Pr, "Pr");
var UT = ["textarea", "input"].join(",");
function VT(t) {
  var e, n;
  return (n = (e = t == null ? void 0 : t.matches) == null ? void 0 : e.call(t, UT)) != null ? n : false;
}
__name(VT, "VT");
function Nh(t, e = (n) => n) {
  return t.slice().sort((n, r) => {
    let s = e(n), i = e(r);
    if (s === null || i === null)
      return 0;
    let o = s.compareDocumentPosition(i);
    return o & Node.DOCUMENT_POSITION_FOLLOWING ? -1 : o & Node.DOCUMENT_POSITION_PRECEDING ? 1 : 0;
  });
}
__name(Nh, "Nh");
function fs(t, e, { sorted: n = true, relativeTo: r = null, skipElements: s = [] } = {}) {
  var i;
  let o = (i = Array.isArray(t) ? t.length > 0 ? t[0].ownerDocument : document : t == null ? void 0 : t.ownerDocument) != null ? i : document, l = Array.isArray(t) ? n ? Nh(t) : t : BT(t);
  s.length > 0 && l.length > 1 && (l = l.filter((x) => !s.includes(x))), r = r != null ? r : o.activeElement;
  let a = (() => {
    if (e & 5)
      return 1;
    if (e & 10)
      return -1;
    throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
  })(), c = (() => {
    if (e & 1)
      return 0;
    if (e & 2)
      return Math.max(0, l.indexOf(r)) - 1;
    if (e & 4)
      return Math.max(0, l.indexOf(r)) + 1;
    if (e & 8)
      return l.length - 1;
    throw new Error("Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last");
  })(), u = e & 32 ? { preventScroll: true } : {}, h = 0, f = l.length, p;
  do {
    if (h >= f || h + f <= 0)
      return 0;
    let x = c + h;
    if (e & 16)
      x = (x + f) % f;
    else {
      if (x < 0)
        return 3;
      if (x >= f)
        return 1;
    }
    p = l[x], p == null || p.focus(u), h += a;
  } while (p !== o.activeElement);
  return e & 6 && VT(p) && p.select(), 2;
}
__name(fs, "fs");
function gi(t, e, n) {
  j0.isServer || Qt((r) => {
    document.addEventListener(t, e, n), r(() => document.removeEventListener(t, e, n));
  });
}
__name(gi, "gi");
function Ph(t, e, n) {
  j0.isServer || Qt((r) => {
    window.addEventListener(t, e, n), r(() => window.removeEventListener(t, e, n));
  });
}
__name(Ph, "Ph");
function zT(t, e, n = J(() => true)) {
  function r(i, o) {
    if (!n.value || i.defaultPrevented)
      return;
    let l = o(i);
    if (l === null || !l.getRootNode().contains(l))
      return;
    let a = (/* @__PURE__ */ __name(function c(u) {
      return typeof u == "function" ? c(u()) : Array.isArray(u) || u instanceof Set ? u : [u];
    }, "c"))(t);
    for (let c of a) {
      if (c === null)
        continue;
      let u = c instanceof HTMLElement ? c : st(c);
      if (u != null && u.contains(l) || i.composed && i.composedPath().includes(u))
        return;
    }
    return !$T(l, Mh.Loose) && l.tabIndex !== -1 && i.preventDefault(), e(i, l);
  }
  __name(r, "r");
  let s = ge(null);
  gi("pointerdown", (i) => {
    var o, l;
    n.value && (s.value = ((l = (o = i.composedPath) == null ? void 0 : o.call(i)) == null ? void 0 : l[0]) || i.target);
  }, true), gi("mousedown", (i) => {
    var o, l;
    n.value && (s.value = ((l = (o = i.composedPath) == null ? void 0 : o.call(i)) == null ? void 0 : l[0]) || i.target);
  }, true), gi("click", (i) => {
    s.value && (r(i, () => s.value), s.value = null);
  }, true), gi("touchend", (i) => r(i, () => i.target instanceof HTMLElement ? i.target : null), true), Ph("blur", (i) => r(i, () => window.document.activeElement instanceof HTMLIFrameElement ? window.document.activeElement : null), true);
}
__name(zT, "zT");
var y0 = ((t) => (t[t.None = 1] = "None", t[t.Focusable = 2] = "Focusable", t[t.Hidden = 4] = "Hidden", t))(y0 || {});
var Zi = Ye({ name: "Hidden", props: { as: { type: [Object, String], default: "div" }, features: { type: Number, default: 1 } }, setup(t, { slots: e, attrs: n }) {
  return () => {
    let { features: r, ...s } = t, i = { "aria-hidden": (r & 2) === 2 ? true : void 0, style: { position: "fixed", top: 1, left: 1, width: 1, height: 0, padding: 0, margin: -1, overflow: "hidden", clip: "rect(0, 0, 0, 0)", whiteSpace: "nowrap", borderWidth: "0", ...(r & 4) === 4 && (r & 2) !== 2 && { display: "none" } } };
    return wt({ ourProps: i, theirProps: s, slot: {}, attrs: n, slots: e, name: "Hidden" });
  };
} });
function Fh(t = {}, e = null, n = []) {
  for (let [r, s] of Object.entries(t))
    Bh(n, Dh(e, r), s);
  return n;
}
__name(Fh, "Fh");
function Dh(t, e) {
  return t ? t + "[" + e + "]" : e;
}
__name(Dh, "Dh");
function Bh(t, e, n) {
  if (Array.isArray(n))
    for (let [r, s] of n.entries())
      Bh(t, Dh(e, r.toString()), s);
  else
    n instanceof Date ? t.push([e, n.toISOString()]) : typeof n == "boolean" ? t.push([e, n ? "1" : "0"]) : typeof n == "string" ? t.push([e, n]) : typeof n == "number" ? t.push([e, `${n}`]) : n == null ? t.push([e, ""]) : Fh(n, e, t);
}
__name(Bh, "Bh");
function GT(t) {
  var e, n;
  let r = (e = t == null ? void 0 : t.form) != null ? e : t.closest("form");
  if (r) {
    for (let s of r.elements)
      if (s !== t && (s.tagName === "INPUT" && s.type === "submit" || s.tagName === "BUTTON" && s.type === "submit" || s.nodeName === "INPUT" && s.type === "image")) {
        s.click();
        return;
      }
    (n = r.requestSubmit) == null || n.call(r);
  }
}
__name(GT, "GT");
function jT(t, e, n) {
  let r = ge(n == null ? void 0 : n.value), s = J(() => t.value !== void 0);
  return [J(() => s.value ? t.value : r.value), function(i) {
    return s.value || (r.value = i), e == null ? void 0 : e(i);
  }];
}
__name(jT, "jT");
function ZT() {
  return /iPhone/gi.test(window.navigator.platform) || /Mac/gi.test(window.navigator.platform) && window.navigator.maxTouchPoints > 0;
}
__name(ZT, "ZT");
function Lc(t) {
  typeof queueMicrotask == "function" ? queueMicrotask(t) : Promise.resolve().then(t).catch((e) => setTimeout(() => {
    throw e;
  }));
}
__name(Lc, "Lc");
function Z0() {
  let t = [], e = { addEventListener(n, r, s, i) {
    return n.addEventListener(r, s, i), e.add(() => n.removeEventListener(r, s, i));
  }, requestAnimationFrame(...n) {
    let r = requestAnimationFrame(...n);
    e.add(() => cancelAnimationFrame(r));
  }, nextFrame(...n) {
    e.requestAnimationFrame(() => {
      e.requestAnimationFrame(...n);
    });
  }, setTimeout(...n) {
    let r = setTimeout(...n);
    e.add(() => clearTimeout(r));
  }, microTask(...n) {
    let r = { current: true };
    return Lc(() => {
      r.current && n[0]();
    }), e.add(() => {
      r.current = false;
    });
  }, style(n, r, s) {
    let i = n.style.getPropertyValue(r);
    return Object.assign(n.style, { [r]: s }), this.add(() => {
      Object.assign(n.style, { [r]: i });
    });
  }, group(n) {
    let r = Z0();
    return n(r), this.add(() => r.dispose());
  }, add(n) {
    return t.push(n), () => {
      let r = t.indexOf(n);
      if (r >= 0)
        for (let s of t.splice(r, 1))
          s();
    };
  }, dispose() {
    for (let n of t.splice(0))
      n();
  } };
  return e;
}
__name(Z0, "Z0");
var Xs = ((t) => (t[t.Forwards = 0] = "Forwards", t[t.Backwards = 1] = "Backwards", t))(Xs || {});
function WT() {
  let t = ge(0);
  return Ph("keydown", (e) => {
    e.key === "Tab" && (t.value = e.shiftKey ? 1 : 0);
  }), t;
}
__name(WT, "WT");
function $h(t, e, n, r) {
  j0.isServer || Qt((s) => {
    t = t != null ? t : window, t.addEventListener(e, n, r), s(() => t.removeEventListener(e, n, r));
  });
}
__name($h, "$h");
function qT(t) {
  function e() {
    document.readyState !== "loading" && (t(), document.removeEventListener("DOMContentLoaded", e));
  }
  __name(e, "e");
  typeof window < "u" && typeof document < "u" && (document.addEventListener("DOMContentLoaded", e), e());
}
__name(qT, "qT");
function Hh(t) {
  if (!t)
    return /* @__PURE__ */ new Set();
  if (typeof t == "function")
    return new Set(t());
  let e = /* @__PURE__ */ new Set();
  for (let n of t.value) {
    let r = st(n);
    r instanceof HTMLElement && e.add(r);
  }
  return e;
}
__name(Hh, "Hh");
var Uh = ((t) => (t[t.None = 1] = "None", t[t.InitialFocus = 2] = "InitialFocus", t[t.TabLock = 4] = "TabLock", t[t.FocusLock = 8] = "FocusLock", t[t.RestoreFocus = 16] = "RestoreFocus", t[t.All = 30] = "All", t))(Uh || {});
var Ws = Object.assign(Ye({ name: "FocusTrap", props: { as: { type: [Object, String], default: "div" }, initialFocus: { type: Object, default: null }, features: { type: Number, default: 30 }, containers: { type: [Object, Function], default: ge(/* @__PURE__ */ new Set()) } }, inheritAttrs: false, setup(t, { attrs: e, slots: n, expose: r }) {
  let s = ge(null);
  r({ el: s, $el: s });
  let i = J(() => Sn(s)), o = ge(false);
  We(() => o.value = true), ht(() => o.value = false), YT({ ownerDocument: i }, J(() => o.value && Boolean(t.features & 16)));
  let l = XT({ ownerDocument: i, container: s, initialFocus: J(() => t.initialFocus) }, J(() => o.value && Boolean(t.features & 2)));
  QT({ ownerDocument: i, container: s, containers: t.containers, previousActiveElement: l }, J(() => o.value && Boolean(t.features & 8)));
  let a = WT();
  function c(p) {
    let x = st(s);
    !x || ((y) => y())(() => {
      Nn(a.value, { [Xs.Forwards]: () => {
        fs(x, ln.First, { skipElements: [p.relatedTarget] });
      }, [Xs.Backwards]: () => {
        fs(x, ln.Last, { skipElements: [p.relatedTarget] });
      } });
    });
  }
  __name(c, "c");
  let u = ge(false);
  function h(p) {
    p.key === "Tab" && (u.value = true, requestAnimationFrame(() => {
      u.value = false;
    }));
  }
  __name(h, "h");
  function f(p) {
    if (!o.value)
      return;
    let x = Hh(t.containers);
    st(s) instanceof HTMLElement && x.add(st(s));
    let y = p.relatedTarget;
    y instanceof HTMLElement && y.dataset.headlessuiFocusGuard !== "true" && (Vh(x, y) || (u.value ? fs(st(s), Nn(a.value, { [Xs.Forwards]: () => ln.Next, [Xs.Backwards]: () => ln.Previous }) | ln.WrapAround, { relativeTo: p.target }) : p.target instanceof HTMLElement && Pr(p.target)));
  }
  __name(f, "f");
  return () => {
    let p = {}, x = { ref: s, onKeydown: h, onFocusout: f }, { features: y, initialFocus: A, containers: _, ...m } = t;
    return ct(Fe, [Boolean(y & 4) && ct(Zi, { as: "button", type: "button", "data-headlessui-focus-guard": true, onFocus: c, features: y0.Focusable }), wt({ ourProps: x, theirProps: { ...e, ...m }, slot: p, attrs: e, slots: n, name: "FocusTrap" }), Boolean(y & 4) && ct(Zi, { as: "button", type: "button", "data-headlessui-focus-guard": true, onFocus: c, features: y0.Focusable })]);
  };
} }), { features: Uh });
var Ar = [];
qT(() => {
  function t(e) {
    e.target instanceof HTMLElement && e.target !== document.body && Ar[0] !== e.target && (Ar.unshift(e.target), Ar = Ar.filter((n) => n != null && n.isConnected), Ar.splice(10));
  }
  __name(t, "t");
  window.addEventListener("click", t, { capture: true }), window.addEventListener("mousedown", t, { capture: true }), window.addEventListener("focus", t, { capture: true }), document.body.addEventListener("click", t, { capture: true }), document.body.addEventListener("mousedown", t, { capture: true }), document.body.addEventListener("focus", t, { capture: true });
});
function KT(t) {
  let e = ge(Ar.slice());
  return Yt([t], ([n], [r]) => {
    r === true && n === false ? Lc(() => {
      e.value.splice(0);
    }) : r === false && n === true && (e.value = Ar.slice());
  }, { flush: "post" }), () => {
    var n;
    return (n = e.value.find((r) => r != null && r.isConnected)) != null ? n : null;
  };
}
__name(KT, "KT");
function YT({ ownerDocument: t }, e) {
  let n = KT(e);
  We(() => {
    Qt(() => {
      var r, s;
      e.value || ((r = t.value) == null ? void 0 : r.activeElement) === ((s = t.value) == null ? void 0 : s.body) && Pr(n());
    }, { flush: "post" });
  }), ht(() => {
    e.value && Pr(n());
  });
}
__name(YT, "YT");
function XT({ ownerDocument: t, container: e, initialFocus: n }, r) {
  let s = ge(null), i = ge(false);
  return We(() => i.value = true), ht(() => i.value = false), We(() => {
    Yt([e, n, r], (o, l) => {
      if (o.every((c, u) => (l == null ? void 0 : l[u]) === c) || !r.value)
        return;
      let a = st(e);
      a && Lc(() => {
        var c, u;
        if (!i.value)
          return;
        let h = st(n), f = (c = t.value) == null ? void 0 : c.activeElement;
        if (h) {
          if (h === f) {
            s.value = f;
            return;
          }
        } else if (a.contains(f)) {
          s.value = f;
          return;
        }
        h ? Pr(h) : fs(a, ln.First | ln.NoScroll) === ji.Error && console.warn("There are no focusable elements inside the <FocusTrap />"), s.value = (u = t.value) == null ? void 0 : u.activeElement;
      });
    }, { immediate: true, flush: "post" });
  }), s;
}
__name(XT, "XT");
function QT({ ownerDocument: t, container: e, containers: n, previousActiveElement: r }, s) {
  var i;
  $h((i = t.value) == null ? void 0 : i.defaultView, "focus", (o) => {
    if (!s.value)
      return;
    let l = Hh(n);
    st(e) instanceof HTMLElement && l.add(st(e));
    let a = r.value;
    if (!a)
      return;
    let c = o.target;
    c && c instanceof HTMLElement ? Vh(l, c) ? (r.value = c, Pr(c)) : (o.preventDefault(), o.stopPropagation(), Pr(a)) : Pr(r.value);
  }, true);
}
__name(QT, "QT");
function Vh(t, e) {
  for (let n of t)
    if (n.contains(e))
      return true;
  return false;
}
__name(Vh, "Vh");
var po = /* @__PURE__ */ new Map();
var qs = /* @__PURE__ */ new Map();
function pu(t, e = ge(true)) {
  Qt((n) => {
    var r;
    if (!e.value)
      return;
    let s = st(t);
    if (!s)
      return;
    n(function() {
      var o;
      if (!s)
        return;
      let l = (o = qs.get(s)) != null ? o : 1;
      if (l === 1 ? qs.delete(s) : qs.set(s, l - 1), l !== 1)
        return;
      let a = po.get(s);
      a && (a["aria-hidden"] === null ? s.removeAttribute("aria-hidden") : s.setAttribute("aria-hidden", a["aria-hidden"]), s.inert = a.inert, po.delete(s));
    });
    let i = (r = qs.get(s)) != null ? r : 0;
    qs.set(s, i + 1), i === 0 && (po.set(s, { "aria-hidden": s.getAttribute("aria-hidden"), inert: s.inert }), s.setAttribute("aria-hidden", "true"), s.inert = true);
  });
}
__name(pu, "pu");
var zh = Symbol("ForcePortalRootContext");
function JT() {
  return lt(zh, false);
}
__name(JT, "JT");
var ul = Ye({ name: "ForcePortalRoot", props: { as: { type: [Object, String], default: "template" }, force: { type: Boolean, default: false } }, setup(t, { slots: e, attrs: n }) {
  return Ut(zh, t.force), () => {
    let { force: r, ...s } = t;
    return wt({ theirProps: s, ourProps: {}, slot: {}, slots: e, attrs: n, name: "ForcePortalRoot" });
  };
} });
function eS(t) {
  let e = Sn(t);
  if (!e) {
    if (t === null)
      return null;
    throw new Error(`[Headless UI]: Cannot find ownerDocument for contextElement: ${t}`);
  }
  let n = e.getElementById("headlessui-portal-root");
  if (n)
    return n;
  let r = e.createElement("div");
  return r.setAttribute("id", "headlessui-portal-root"), e.body.appendChild(r);
}
__name(eS, "eS");
var Gh = Ye({ name: "Portal", props: { as: { type: [Object, String], default: "div" } }, setup(t, { slots: e, attrs: n }) {
  let r = ge(null), s = J(() => Sn(r)), i = JT(), o = lt(jh, null), l = ge(i === true || o == null ? eS(r.value) : o.resolveTarget());
  Qt(() => {
    i || o != null && (l.value = o.resolveTarget());
  });
  let a = lt(hl, null);
  return We(() => {
    let c = st(r);
    c && a && ht(a.register(c));
  }), ht(() => {
    var c, u;
    let h = (c = s.value) == null ? void 0 : c.getElementById("headlessui-portal-root");
    h && l.value === h && l.value.children.length <= 0 && ((u = l.value.parentElement) == null || u.removeChild(l.value));
  }), () => {
    if (l.value === null)
      return null;
    let c = { ref: r, "data-headlessui-portal": "" };
    return ct(Q3, { to: l.value }, wt({ ourProps: c, theirProps: t, slot: {}, attrs: n, slots: e, name: "Portal" }));
  };
} });
var hl = Symbol("PortalParentContext");
function tS() {
  let t = lt(hl, null), e = ge([]);
  function n(i) {
    return e.value.push(i), t && t.register(i), () => r(i);
  }
  __name(n, "n");
  function r(i) {
    let o = e.value.indexOf(i);
    o !== -1 && e.value.splice(o, 1), t && t.unregister(i);
  }
  __name(r, "r");
  let s = { register: n, unregister: r, portals: e };
  return [e, Ye({ name: "PortalWrapper", setup(i, { slots: o }) {
    return Ut(hl, s), () => {
      var l;
      return (l = o.default) == null ? void 0 : l.call(o);
    };
  } })];
}
__name(tS, "tS");
var jh = Symbol("PortalGroupContext");
var nS = Ye({ name: "PortalGroup", props: { as: { type: [Object, String], default: "template" }, target: { type: Object, default: null } }, setup(t, { attrs: e, slots: n }) {
  let r = kn({ resolveTarget() {
    return t.target;
  } });
  return Ut(jh, r), () => {
    let { target: s, ...i } = t;
    return wt({ theirProps: i, ourProps: {}, slot: {}, attrs: e, slots: n, name: "PortalGroup" });
  };
} });
var Zh = Symbol("StackContext");
var dl = ((t) => (t[t.Add = 0] = "Add", t[t.Remove = 1] = "Remove", t))(dl || {});
function rS() {
  return lt(Zh, () => {
  });
}
__name(rS, "rS");
function sS({ type: t, enabled: e, element: n, onUpdate: r }) {
  let s = rS();
  function i(...o) {
    r == null || r(...o), s(...o);
  }
  __name(i, "i");
  We(() => {
    Yt(e, (o, l) => {
      o ? i(0, t, n) : l === true && i(1, t, n);
    }, { immediate: true, flush: "sync" });
  }), ht(() => {
    e.value && i(1, t, n);
  }), Ut(Zh, i);
}
__name(sS, "sS");
var Wh = Symbol("DescriptionContext");
function iS() {
  let t = lt(Wh, null);
  if (t === null)
    throw new Error("Missing parent");
  return t;
}
__name(iS, "iS");
function _c({ slot: t = ge({}), name: e = "Description", props: n = {} } = {}) {
  let r = ge([]);
  function s(i) {
    return r.value.push(i), () => {
      let o = r.value.indexOf(i);
      o !== -1 && r.value.splice(o, 1);
    };
  }
  __name(s, "s");
  return Ut(Wh, { register: s, slot: t, name: e, props: n }), J(() => r.value.length > 0 ? r.value.join(" ") : void 0);
}
__name(_c, "_c");
var KO = Ye({ name: "Description", props: { as: { type: [Object, String], default: "p" }, id: { type: String, default: () => `headlessui-description-${Bn()}` } }, setup(t, { attrs: e, slots: n }) {
  let r = iS();
  return We(() => ht(r.register(t.id))), () => {
    let { name: s = "Description", slot: i = ge({}), props: o = {} } = r, { id: l, ...a } = t, c = { ...Object.entries(o).reduce((u, [h, f]) => Object.assign(u, { [h]: Le(f) }), {}), id: l };
    return wt({ ourProps: c, theirProps: a, slot: i.value, attrs: e, slots: n, name: s });
  };
} });
function oS(t) {
  let e = e3(t.getSnapshot());
  return ht(t.subscribe(() => {
    e.value = t.getSnapshot();
  })), e;
}
__name(oS, "oS");
function lS(t, e) {
  let n = t(), r = /* @__PURE__ */ new Set();
  return { getSnapshot() {
    return n;
  }, subscribe(s) {
    return r.add(s), () => r.delete(s);
  }, dispatch(s, ...i) {
    let o = e[s].call(n, ...i);
    o && (n = o, r.forEach((l) => l()));
  } };
}
__name(lS, "lS");
function aS() {
  let t;
  return { before({ doc: e }) {
    var n;
    let r = e.documentElement;
    t = ((n = e.defaultView) != null ? n : window).innerWidth - r.clientWidth;
  }, after({ doc: e, d: n }) {
    let r = e.documentElement, s = r.clientWidth - r.offsetWidth, i = t - s;
    n.style(r, "paddingRight", `${i}px`);
  } };
}
__name(aS, "aS");
function cS() {
  if (!ZT())
    return {};
  let t;
  return { before() {
    t = window.pageYOffset;
  }, after({ doc: e, d: n, meta: r }) {
    function s(o) {
      return r.containers.flatMap((l) => l()).some((l) => l.contains(o));
    }
    __name(s, "s");
    if (window.getComputedStyle(e.documentElement).scrollBehavior !== "auto") {
      let o = Z0();
      o.style(e.documentElement, "scroll-behavior", "auto"), n.add(() => n.microTask(() => o.dispose()));
    }
    n.style(e.body, "marginTop", `-${t}px`), window.scrollTo(0, 0);
    let i = null;
    n.addEventListener(e, "click", (o) => {
      if (o.target instanceof HTMLElement)
        try {
          let l = o.target.closest("a");
          if (!l)
            return;
          let { hash: a } = new URL(l.href), c = e.querySelector(a);
          c && !s(c) && (i = c);
        } catch {
        }
    }, true), n.addEventListener(e, "touchmove", (o) => {
      o.target instanceof HTMLElement && !s(o.target) && o.preventDefault();
    }, { passive: false }), n.add(() => {
      window.scrollTo(0, window.pageYOffset + t), i && i.isConnected && (i.scrollIntoView({ block: "nearest" }), i = null);
    });
  } };
}
__name(cS, "cS");
function uS() {
  return { before({ doc: t, d: e }) {
    e.style(t.documentElement, "overflow", "hidden");
  } };
}
__name(uS, "uS");
function hS(t) {
  let e = {};
  for (let n of t)
    Object.assign(e, n(e));
  return e;
}
__name(hS, "hS");
var Rr = lS(() => /* @__PURE__ */ new Map(), { PUSH(t, e) {
  var n;
  let r = (n = this.get(t)) != null ? n : { doc: t, count: 0, d: Z0(), meta: /* @__PURE__ */ new Set() };
  return r.count++, r.meta.add(e), this.set(t, r), this;
}, POP(t, e) {
  let n = this.get(t);
  return n && (n.count--, n.meta.delete(e)), this;
}, SCROLL_PREVENT({ doc: t, d: e, meta: n }) {
  let r = { doc: t, d: e, meta: hS(n) }, s = [cS(), aS(), uS()];
  s.forEach(({ before: i }) => i == null ? void 0 : i(r)), s.forEach(({ after: i }) => i == null ? void 0 : i(r));
}, SCROLL_ALLOW({ d: t }) {
  t.dispose();
}, TEARDOWN({ doc: t }) {
  this.delete(t);
} });
Rr.subscribe(() => {
  let t = Rr.getSnapshot(), e = /* @__PURE__ */ new Map();
  for (let [n] of t)
    e.set(n, n.documentElement.style.overflow);
  for (let n of t.values()) {
    let r = e.get(n.doc) === "hidden", s = n.count !== 0;
    (s && !r || !s && r) && Rr.dispatch(n.count > 0 ? "SCROLL_PREVENT" : "SCROLL_ALLOW", n), n.count === 0 && Rr.dispatch("TEARDOWN", n);
  }
});
function dS(t, e, n) {
  let r = oS(Rr), s = J(() => {
    let i = t.value ? r.value.get(t.value) : void 0;
    return i ? i.count > 0 : false;
  });
  return Yt([t, e], ([i, o], [l], a) => {
    if (!i || !o)
      return;
    Rr.dispatch("PUSH", i, n);
    let c = false;
    a(() => {
      c || (Rr.dispatch("POP", l != null ? l : i, n), c = true);
    });
  }, { immediate: true }), s;
}
__name(dS, "dS");
function fS({ defaultContainers: t = [], portals: e, mainTreeNodeRef: n } = {}) {
  let r = ge(null), s = Sn(r);
  function i() {
    var o;
    let l = [];
    for (let a of t)
      a !== null && (a instanceof HTMLElement ? l.push(a) : "value" in a && a.value instanceof HTMLElement && l.push(a.value));
    if (e != null && e.value)
      for (let a of e.value)
        l.push(a);
    for (let a of (o = s == null ? void 0 : s.querySelectorAll("html > *, body > *")) != null ? o : [])
      a !== document.body && a !== document.head && a instanceof HTMLElement && a.id !== "headlessui-portal-root" && (a.contains(st(r)) || l.some((c) => a.contains(c)) || l.push(a));
    return l;
  }
  __name(i, "i");
  return { resolveContainers: i, contains(o) {
    return i().some((l) => l.contains(o));
  }, mainTreeNodeRef: r, MainTreeNode() {
    return n != null ? null : ct(Zi, { features: y0.Hidden, ref: r });
  } };
}
__name(fS, "fS");
var pS = ((t) => (t[t.Open = 0] = "Open", t[t.Closed = 1] = "Closed", t))(pS || {});
var fl = Symbol("DialogContext");
function W0(t) {
  let e = lt(fl, null);
  if (e === null) {
    let n = new Error(`<${t} /> is missing a parent <Dialog /> component.`);
    throw Error.captureStackTrace && Error.captureStackTrace(n, W0), n;
  }
  return e;
}
__name(W0, "W0");
var mi = "DC8F892D-2EBD-447C-A4C8-A03058436FF4";
var gS = Ye({ name: "Dialog", inheritAttrs: false, props: { as: { type: [Object, String], default: "div" }, static: { type: Boolean, default: false }, unmount: { type: Boolean, default: true }, open: { type: [Boolean, String], default: mi }, initialFocus: { type: Object, default: null }, id: { type: String, default: () => `headlessui-dialog-${Bn()}` } }, emits: { close: (t) => true }, setup(t, { emit: e, attrs: n, slots: r, expose: s }) {
  var i;
  let o = ge(false);
  We(() => {
    o.value = true;
  });
  let l = ge(0), a = xc(), c = J(() => t.open === mi && a !== null ? (a.value & qt.Open) === qt.Open : t.open), u = ge(null), h = J(() => Sn(u));
  if (s({ el: u, $el: u }), !(t.open !== mi || a !== null))
    throw new Error("You forgot to provide an `open` prop to the `Dialog`.");
  if (typeof c.value != "boolean")
    throw new Error(`You provided an \`open\` prop to the \`Dialog\`, but the value is not a boolean. Received: ${c.value === mi ? void 0 : t.open}`);
  let f = J(() => o.value && c.value ? 0 : 1), p = J(() => f.value === 0), x = J(() => l.value > 1), y = lt(fl, null) !== null, [A, _] = tS(), { resolveContainers: m, mainTreeNodeRef: C, MainTreeNode: E } = fS({ portals: A, defaultContainers: [J(() => {
    var Y;
    return (Y = xe.panelRef.value) != null ? Y : u.value;
  })] }), P = J(() => x.value ? "parent" : "leaf"), U = J(() => a !== null ? (a.value & qt.Closing) === qt.Closing : false), j = J(() => y || U.value ? false : p.value), k = J(() => {
    var Y, de, Xe;
    return (Xe = Array.from((de = (Y = h.value) == null ? void 0 : Y.querySelectorAll("body > *")) != null ? de : []).find((Qe) => Qe.id === "headlessui-portal-root" ? false : Qe.contains(st(C)) && Qe instanceof HTMLElement)) != null ? Xe : null;
  });
  pu(k, j);
  let ae = J(() => x.value ? true : p.value), le = J(() => {
    var Y, de, Xe;
    return (Xe = Array.from((de = (Y = h.value) == null ? void 0 : Y.querySelectorAll("[data-headlessui-portal]")) != null ? de : []).find((Qe) => Qe.contains(st(C)) && Qe instanceof HTMLElement)) != null ? Xe : null;
  });
  pu(le, ae), sS({ type: "Dialog", enabled: J(() => f.value === 0), element: u, onUpdate: (Y, de) => {
    if (de === "Dialog")
      return Nn(Y, { [dl.Add]: () => l.value += 1, [dl.Remove]: () => l.value -= 1 });
  } });
  let he = _c({ name: "DialogDescription", slot: J(() => ({ open: c.value })) }), Ue = ge(null), xe = { titleId: Ue, panelRef: ge(null), dialogState: f, setTitleId(Y) {
    Ue.value !== Y && (Ue.value = Y);
  }, close() {
    e("close", false);
  } };
  Ut(fl, xe);
  let re = J(() => !(!p.value || x.value));
  zT(m, (Y, de) => {
    xe.close(), Ts(() => de == null ? void 0 : de.focus());
  }, re);
  let Ne = J(() => !(x.value || f.value !== 0));
  $h((i = h.value) == null ? void 0 : i.defaultView, "keydown", (Y) => {
    Ne.value && (Y.defaultPrevented || Y.key === sr.Escape && (Y.preventDefault(), Y.stopPropagation(), xe.close()));
  });
  let D = J(() => !(U.value || f.value !== 0 || y));
  return dS(h, D, (Y) => {
    var de;
    return { containers: [...(de = Y.containers) != null ? de : [], m] };
  }), Qt((Y) => {
    if (f.value !== 0)
      return;
    let de = st(u);
    if (!de)
      return;
    let Xe = new ResizeObserver((Qe) => {
      for (let Ot of Qe) {
        let it = Ot.target.getBoundingClientRect();
        it.x === 0 && it.y === 0 && it.width === 0 && it.height === 0 && xe.close();
      }
    });
    Xe.observe(de), Y(() => Xe.disconnect());
  }), () => {
    let { id: Y, open: de, initialFocus: Xe, ...Qe } = t, Ot = { ...n, ref: u, id: Y, role: "dialog", "aria-modal": f.value === 0 ? true : void 0, "aria-labelledby": Ue.value, "aria-describedby": he.value }, it = { open: f.value === 0 };
    return ct(ul, { force: true }, () => [ct(Gh, () => ct(nS, { target: u.value }, () => ct(ul, { force: false }, () => ct(Ws, { initialFocus: Xe, containers: m, features: p.value ? Nn(P.value, { parent: Ws.features.RestoreFocus, leaf: Ws.features.All & ~Ws.features.FocusLock }) : Ws.features.None }, () => ct(_, {}, () => wt({ ourProps: Ot, theirProps: { ...Qe, ...n }, slot: it, attrs: n, slots: r, visible: f.value === 0, features: Gi.RenderStrategy | Gi.Static, name: "Dialog" })))))), ct(E)]);
  };
} });
Ye({ name: "DialogOverlay", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-overlay-${Bn()}` } }, setup(t, { attrs: e, slots: n }) {
  let r = W0("DialogOverlay");
  function s(i) {
    i.target === i.currentTarget && (i.preventDefault(), i.stopPropagation(), r.close());
  }
  __name(s, "s");
  return () => {
    let { id: i, ...o } = t;
    return wt({ ourProps: { id: i, "aria-hidden": true, onClick: s }, theirProps: o, slot: { open: r.dialogState.value === 0 }, attrs: e, slots: n, name: "DialogOverlay" });
  };
} });
Ye({ name: "DialogBackdrop", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-backdrop-${Bn()}` } }, inheritAttrs: false, setup(t, { attrs: e, slots: n, expose: r }) {
  let s = W0("DialogBackdrop"), i = ge(null);
  return r({ el: i, $el: i }), We(() => {
    if (s.panelRef.value === null)
      throw new Error("A <DialogBackdrop /> component is being used, but a <DialogPanel /> component is missing.");
  }), () => {
    let { id: o, ...l } = t, a = { id: o, ref: i, "aria-hidden": true };
    return ct(ul, { force: true }, () => ct(Gh, () => wt({ ourProps: a, theirProps: { ...e, ...l }, slot: { open: s.dialogState.value === 0 }, attrs: e, slots: n, name: "DialogBackdrop" })));
  };
} });
var mS = Ye({ name: "DialogPanel", props: { as: { type: [Object, String], default: "div" }, id: { type: String, default: () => `headlessui-dialog-panel-${Bn()}` } }, setup(t, { attrs: e, slots: n, expose: r }) {
  let s = W0("DialogPanel");
  r({ el: s.panelRef, $el: s.panelRef });
  function i(o) {
    o.stopPropagation();
  }
  __name(i, "i");
  return () => {
    let { id: o, ...l } = t, a = { id: o, ref: s.panelRef, onClick: i };
    return wt({ ourProps: a, theirProps: l, slot: { open: s.dialogState.value === 0 }, attrs: e, slots: n, name: "DialogPanel" });
  };
} });
var xS = Ye({ name: "DialogTitle", props: { as: { type: [Object, String], default: "h2" }, id: { type: String, default: () => `headlessui-dialog-title-${Bn()}` } }, setup(t, { attrs: e, slots: n }) {
  let r = W0("DialogTitle");
  return We(() => {
    r.setTitleId(t.id), ht(() => r.setTitleId(null));
  }), () => {
    let { id: s, ...i } = t;
    return wt({ ourProps: { id: s }, theirProps: i, slot: { open: r.dialogState.value === 0 }, attrs: e, slots: n, name: "DialogTitle" });
  };
} });
var qh = Symbol("LabelContext");
function Kh() {
  let t = lt(qh, null);
  if (t === null) {
    let e = new Error("You used a <Label /> component, but it is not inside a parent.");
    throw Error.captureStackTrace && Error.captureStackTrace(e, Kh), e;
  }
  return t;
}
__name(Kh, "Kh");
function Yh({ slot: t = {}, name: e = "Label", props: n = {} } = {}) {
  let r = ge([]);
  function s(i) {
    return r.value.push(i), () => {
      let o = r.value.indexOf(i);
      o !== -1 && r.value.splice(o, 1);
    };
  }
  __name(s, "s");
  return Ut(qh, { register: s, slot: t, name: e, props: n }), J(() => r.value.length > 0 ? r.value.join(" ") : void 0);
}
__name(Yh, "Yh");
var LS = Ye({ name: "Label", props: { as: { type: [Object, String], default: "label" }, passive: { type: [Boolean], default: false }, id: { type: String, default: () => `headlessui-label-${Bn()}` } }, setup(t, { slots: e, attrs: n }) {
  let r = Kh();
  return We(() => ht(r.register(t.id))), () => {
    let { name: s = "Label", slot: i = {}, props: o = {} } = r, { id: l, passive: a, ...c } = t, u = { ...Object.entries(o).reduce((h, [f, p]) => Object.assign(h, { [f]: Le(p) }), {}), id: l };
    return a && (delete u.onClick, delete u.htmlFor, delete c.onClick), wt({ ourProps: u, theirProps: c, slot: i, attrs: n, slots: e, name: s });
  };
} });
function _S(t, e) {
  return t === e;
}
__name(_S, "_S");
var Xh = Symbol("RadioGroupContext");
function Qh(t) {
  let e = lt(Xh, null);
  if (e === null) {
    let n = new Error(`<${t} /> is missing a parent <RadioGroup /> component.`);
    throw Error.captureStackTrace && Error.captureStackTrace(n, Qh), n;
  }
  return e;
}
__name(Qh, "Qh");
var yS = Ye({ name: "RadioGroup", emits: { "update:modelValue": (t) => true }, props: { as: { type: [Object, String], default: "div" }, disabled: { type: [Boolean], default: false }, by: { type: [String, Function], default: () => _S }, modelValue: { type: [Object, String, Number, Boolean], default: void 0 }, defaultValue: { type: [Object, String, Number, Boolean], default: void 0 }, form: { type: String, optional: true }, name: { type: String, optional: true }, id: { type: String, default: () => `headlessui-radiogroup-${Bn()}` } }, inheritAttrs: false, setup(t, { emit: e, attrs: n, slots: r, expose: s }) {
  let i = ge(null), o = ge([]), l = Yh({ name: "RadioGroupLabel" }), a = _c({ name: "RadioGroupDescription" });
  s({ el: i, $el: i });
  let [c, u] = jT(J(() => t.modelValue), (x) => e("update:modelValue", x), J(() => t.defaultValue)), h = { options: o, value: c, disabled: J(() => t.disabled), firstOption: J(() => o.value.find((x) => !x.propsRef.disabled)), containsCheckedOption: J(() => o.value.some((x) => h.compare(be(x.propsRef.value), be(t.modelValue)))), compare(x, y) {
    if (typeof t.by == "string") {
      let A = t.by;
      return (x == null ? void 0 : x[A]) === (y == null ? void 0 : y[A]);
    }
    return t.by(x, y);
  }, change(x) {
    var y;
    if (t.disabled || h.compare(be(c.value), be(x)))
      return false;
    let A = (y = o.value.find((_) => h.compare(be(_.propsRef.value), be(x)))) == null ? void 0 : y.propsRef;
    return A != null && A.disabled ? false : (u(x), true);
  }, registerOption(x) {
    o.value.push(x), o.value = Nh(o.value, (y) => y.element);
  }, unregisterOption(x) {
    let y = o.value.findIndex((A) => A.id === x);
    y !== -1 && o.value.splice(y, 1);
  } };
  Ut(Xh, h), FT({ container: J(() => st(i)), accept(x) {
    return x.getAttribute("role") === "radio" ? NodeFilter.FILTER_REJECT : x.hasAttribute("role") ? NodeFilter.FILTER_SKIP : NodeFilter.FILTER_ACCEPT;
  }, walk(x) {
    x.setAttribute("role", "none");
  } });
  function f(x) {
    if (!i.value || !i.value.contains(x.target))
      return;
    let y = o.value.filter((A) => A.propsRef.disabled === false).map((A) => A.element);
    switch (x.key) {
      case sr.Enter:
        GT(x.currentTarget);
        break;
      case sr.ArrowLeft:
      case sr.ArrowUp:
        if (x.preventDefault(), x.stopPropagation(), fs(y, ln.Previous | ln.WrapAround) === ji.Success) {
          let A = o.value.find((_) => {
            var m;
            return _.element === ((m = Sn(i)) == null ? void 0 : m.activeElement);
          });
          A && h.change(A.propsRef.value);
        }
        break;
      case sr.ArrowRight:
      case sr.ArrowDown:
        if (x.preventDefault(), x.stopPropagation(), fs(y, ln.Next | ln.WrapAround) === ji.Success) {
          let A = o.value.find((_) => {
            var m;
            return _.element === ((m = Sn(_.element)) == null ? void 0 : m.activeElement);
          });
          A && h.change(A.propsRef.value);
        }
        break;
      case sr.Space:
        {
          x.preventDefault(), x.stopPropagation();
          let A = o.value.find((_) => {
            var m;
            return _.element === ((m = Sn(_.element)) == null ? void 0 : m.activeElement);
          });
          A && h.change(A.propsRef.value);
        }
        break;
    }
  }
  __name(f, "f");
  let p = J(() => {
    var x;
    return (x = st(i)) == null ? void 0 : x.closest("form");
  });
  return We(() => {
    Yt([p], () => {
      if (!p.value || t.defaultValue === void 0)
        return;
      function x() {
        h.change(t.defaultValue);
      }
      __name(x, "x");
      return p.value.addEventListener("reset", x), () => {
        var y;
        (y = p.value) == null || y.removeEventListener("reset", x);
      };
    }, { immediate: true });
  }), () => {
    let { disabled: x, name: y, id: A, form: _, ...m } = t, C = { ref: i, id: A, role: "radiogroup", "aria-labelledby": l.value, "aria-describedby": a.value, onKeydown: f };
    return ct(Fe, [...y != null && c.value != null ? Fh({ [y]: c.value }).map(([E, P]) => ct(Zi, ST({ features: y0.Hidden, key: E, as: "input", type: "hidden", hidden: true, readOnly: true, form: _, name: E, value: P }))) : [], wt({ ourProps: C, theirProps: { ...n, ...mc(m, ["modelValue", "defaultValue", "by"]) }, slot: {}, attrs: n, slots: r, name: "RadioGroup" })]);
  };
} });
var CS = ((t) => (t[t.Empty = 1] = "Empty", t[t.Active = 2] = "Active", t))(CS || {});
var vS = Ye({ name: "RadioGroupOption", props: { as: { type: [Object, String], default: "div" }, value: { type: [Object, String, Number, Boolean] }, disabled: { type: Boolean, default: false }, id: { type: String, default: () => `headlessui-radiogroup-option-${Bn()}` } }, setup(t, { attrs: e, slots: n, expose: r }) {
  let s = Qh("RadioGroupOption"), i = Yh({ name: "RadioGroupLabel" }), o = _c({ name: "RadioGroupDescription" }), l = ge(null), a = J(() => ({ value: t.value, disabled: t.disabled })), c = ge(1);
  r({ el: l, $el: l });
  let u = J(() => st(l));
  We(() => s.registerOption({ id: t.id, element: u, propsRef: a })), ht(() => s.unregisterOption(t.id));
  let h = J(() => {
    var m;
    return ((m = s.firstOption.value) == null ? void 0 : m.id) === t.id;
  }), f = J(() => s.disabled.value || t.disabled), p = J(() => s.compare(be(s.value.value), be(t.value))), x = J(() => f.value ? -1 : p.value || !s.containsCheckedOption.value && h.value ? 0 : -1);
  function y() {
    var m;
    s.change(t.value) && (c.value |= 2, (m = st(l)) == null || m.focus());
  }
  __name(y, "y");
  function A() {
    c.value |= 2;
  }
  __name(A, "A");
  function _() {
    c.value &= -3;
  }
  __name(_, "_");
  return () => {
    let { id: m, value: C, disabled: E, ...P } = t, U = { checked: p.value, disabled: f.value, active: Boolean(c.value & 2) }, j = { id: m, ref: l, role: "radio", "aria-checked": p.value ? "true" : "false", "aria-labelledby": i.value, "aria-describedby": o.value, "aria-disabled": f.value ? true : void 0, tabIndex: x.value, onClick: f.value ? void 0 : y, onFocus: f.value ? void 0 : A, onBlur: f.value ? void 0 : _ };
    return wt({ ourProps: j, theirProps: P, slot: U, attrs: e, slots: n, name: "RadioGroupOption" });
  };
} });
var gu = LS;
function bS(t) {
  let e = { called: false };
  return (...n) => {
    if (!e.called)
      return e.called = true, t(...n);
  };
}
__name(bS, "bS");
function go(t, ...e) {
  t && e.length > 0 && t.classList.add(...e);
}
__name(go, "go");
function xi(t, ...e) {
  t && e.length > 0 && t.classList.remove(...e);
}
__name(xi, "xi");
var pl = ((t) => (t.Finished = "finished", t.Cancelled = "cancelled", t))(pl || {});
function wS(t, e) {
  let n = Z0();
  if (!t)
    return n.dispose;
  let { transitionDuration: r, transitionDelay: s } = getComputedStyle(t), [i, o] = [r, s].map((l) => {
    let [a = 0] = l.split(",").filter(Boolean).map((c) => c.includes("ms") ? parseFloat(c) : parseFloat(c) * 1e3).sort((c, u) => u - c);
    return a;
  });
  return i !== 0 ? n.setTimeout(() => e("finished"), i + o) : e("finished"), n.add(() => e("cancelled")), n.dispose;
}
__name(wS, "wS");
function mu(t, e, n, r, s, i) {
  let o = Z0(), l = i !== void 0 ? bS(i) : () => {
  };
  return xi(t, ...s), go(t, ...e, ...n), o.nextFrame(() => {
    xi(t, ...n), go(t, ...r), o.add(wS(t, (a) => (xi(t, ...r, ...e), go(t, ...s), l(a))));
  }), o.add(() => xi(t, ...e, ...n, ...r, ...s)), o.add(() => l("cancelled")), o.dispose;
}
__name(mu, "mu");
function vr(t = "") {
  return t.split(" ").filter((e) => e.trim().length > 1);
}
__name(vr, "vr");
var yc = Symbol("TransitionContext");
var ES = ((t) => (t.Visible = "visible", t.Hidden = "hidden", t))(ES || {});
function TS() {
  return lt(yc, null) !== null;
}
__name(TS, "TS");
function SS() {
  let t = lt(yc, null);
  if (t === null)
    throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");
  return t;
}
__name(SS, "SS");
function AS() {
  let t = lt(Cc, null);
  if (t === null)
    throw new Error("A <TransitionChild /> is used but it is missing a parent <TransitionRoot />.");
  return t;
}
__name(AS, "AS");
var Cc = Symbol("NestingContext");
function U1(t) {
  return "children" in t ? U1(t.children) : t.value.filter(({ state: e }) => e === "visible").length > 0;
}
__name(U1, "U1");
function Jh(t) {
  let e = ge([]), n = ge(false);
  We(() => n.value = true), ht(() => n.value = false);
  function r(i, o = lr.Hidden) {
    let l = e.value.findIndex(({ id: a }) => a === i);
    l !== -1 && (Nn(o, { [lr.Unmount]() {
      e.value.splice(l, 1);
    }, [lr.Hidden]() {
      e.value[l].state = "hidden";
    } }), !U1(e) && n.value && (t == null || t()));
  }
  __name(r, "r");
  function s(i) {
    let o = e.value.find(({ id: l }) => l === i);
    return o ? o.state !== "visible" && (o.state = "visible") : e.value.push({ id: i, state: "visible" }), () => r(i, lr.Unmount);
  }
  __name(s, "s");
  return { children: e, register: s, unregister: r };
}
__name(Jh, "Jh");
var e6 = Gi.RenderStrategy;
var gl = Ye({ props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: true }, appear: { type: [Boolean], default: false }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => true, afterEnter: () => true, beforeLeave: () => true, afterLeave: () => true }, setup(t, { emit: e, attrs: n, slots: r, expose: s }) {
  let i = ge(0);
  function o() {
    i.value |= qt.Opening, e("beforeEnter");
  }
  __name(o, "o");
  function l() {
    i.value &= ~qt.Opening, e("afterEnter");
  }
  __name(l, "l");
  function a() {
    i.value |= qt.Closing, e("beforeLeave");
  }
  __name(a, "a");
  function c() {
    i.value &= ~qt.Closing, e("afterLeave");
  }
  __name(c, "c");
  if (!TS() && OT())
    return () => ct(t6, { ...t, onBeforeEnter: o, onAfterEnter: l, onBeforeLeave: a, onAfterLeave: c }, r);
  let u = ge(null), h = J(() => t.unmount ? lr.Unmount : lr.Hidden);
  s({ el: u, $el: u });
  let { show: f, appear: p } = SS(), { register: x, unregister: y } = AS(), A = ge(f.value ? "visible" : "hidden"), _ = { value: true }, m = Bn(), C = { value: false }, E = Jh(() => {
    !C.value && A.value !== "hidden" && (A.value = "hidden", y(m), c());
  });
  We(() => {
    let xe = x(m);
    ht(xe);
  }), Qt(() => {
    if (h.value === lr.Hidden && m) {
      if (f.value && A.value !== "visible") {
        A.value = "visible";
        return;
      }
      Nn(A.value, { hidden: () => y(m), visible: () => x(m) });
    }
  });
  let P = vr(t.enter), U = vr(t.enterFrom), j = vr(t.enterTo), k = vr(t.entered), ae = vr(t.leave), le = vr(t.leaveFrom), he = vr(t.leaveTo);
  We(() => {
    Qt(() => {
      if (A.value === "visible") {
        let xe = st(u);
        if (xe instanceof Comment && xe.data === "")
          throw new Error("Did you forget to passthrough the `ref` to the actual DOM node?");
      }
    });
  });
  function Ue(xe) {
    let re = _.value && !p.value, Ne = st(u);
    !Ne || !(Ne instanceof HTMLElement) || re || (C.value = true, f.value && o(), f.value || a(), xe(f.value ? mu(Ne, P, U, j, k, (D) => {
      C.value = false, D === pl.Finished && l();
    }) : mu(Ne, ae, le, he, k, (D) => {
      C.value = false, D === pl.Finished && (U1(E) || (A.value = "hidden", y(m), c()));
    })));
  }
  __name(Ue, "Ue");
  return We(() => {
    Yt([f], (xe, re, Ne) => {
      Ue(Ne), _.value = false;
    }, { immediate: true });
  }), Ut(Cc, E), IT(J(() => Nn(A.value, { visible: qt.Open, hidden: qt.Closed }) | i.value)), () => {
    let { appear: xe, show: re, enter: Ne, enterFrom: D, enterTo: Y, entered: de, leave: Xe, leaveFrom: Qe, leaveTo: Ot, ...it } = t, M = { ref: u }, se = { ...it, ...p.value && f.value && j0.isServer ? { class: we([n.class, it.class, ...P, ...U]) } : {} };
    return wt({ theirProps: se, ourProps: M, slot: {}, slots: r, attrs: n, features: e6, visible: A.value === "visible", name: "TransitionChild" });
  };
} });
var RS = gl;
var t6 = Ye({ inheritAttrs: false, props: { as: { type: [Object, String], default: "div" }, show: { type: [Boolean], default: null }, unmount: { type: [Boolean], default: true }, appear: { type: [Boolean], default: false }, enter: { type: [String], default: "" }, enterFrom: { type: [String], default: "" }, enterTo: { type: [String], default: "" }, entered: { type: [String], default: "" }, leave: { type: [String], default: "" }, leaveFrom: { type: [String], default: "" }, leaveTo: { type: [String], default: "" } }, emits: { beforeEnter: () => true, afterEnter: () => true, beforeLeave: () => true, afterLeave: () => true }, setup(t, { emit: e, attrs: n, slots: r }) {
  let s = xc(), i = J(() => t.show === null && s !== null ? (s.value & qt.Open) === qt.Open : t.show);
  Qt(() => {
    if (![true, false].includes(i.value))
      throw new Error('A <Transition /> is used but it is missing a `:show="true | false"` prop.');
  });
  let o = ge(i.value ? "visible" : "hidden"), l = Jh(() => {
    o.value = "hidden";
  }), a = ge(true), c = { show: i, appear: J(() => t.appear || !a.value) };
  return We(() => {
    Qt(() => {
      a.value = false, i.value ? o.value = "visible" : U1(l) || (o.value = "hidden");
    });
  }), Ut(Cc, l), Ut(yc, c), () => {
    let u = mc(t, ["show", "appear", "unmount", "onBeforeEnter", "onBeforeLeave", "onAfterEnter", "onAfterLeave"]), h = { unmount: t.unmount };
    return wt({ ourProps: { ...h, as: "template" }, theirProps: {}, slot: {}, slots: { ...r, default: () => [ct(RS, { onBeforeEnter: () => e("beforeEnter"), onAfterEnter: () => e("afterEnter"), onBeforeLeave: () => e("beforeLeave"), onAfterLeave: () => e("afterLeave"), ...n, ...h, ...u }, r.default)] }, attrs: {}, features: e6, visible: o.value === "visible", name: "Transition" });
  };
} });
var kS = `<svg width="100%" height="100%" viewBox="0 0 200 130" fill="none" xmlns="http://www.w3.org/2000/svg">
  <rect width="200" height="130" fill="white"/>
  <rect x="21" y="19" width="40" height="16" stroke="#666666" stroke-width="2"/>
  <rect x="43" y="46" width="65" height="8" transform="rotate(90 43 46)" fill="#D9D9D9" stroke="#666666" stroke-width="2"/>
  <rect x="104" y="46" width="29" height="8" transform="rotate(90 104 46)" fill="#D9D9D9" stroke="#666666" stroke-width="2"/>
  <rect x="163" y="82" width="29" height="8" transform="rotate(90 163 82)" fill="#D9D9D9" stroke="#666666" stroke-width="2"/>
  <rect x="139" y="19" width="40" height="16" stroke="#666666" stroke-width="2"/>
  <rect x="80" y="19" width="40" height="16" stroke="#666666" stroke-width="2"/>
  <line x1="44" y1="59" x2="95" y2="59" stroke="#666666" stroke-width="2"/>
  <line x1="44" y1="96" x2="154" y2="96" stroke="#666666" stroke-width="2"/>
  <rect x="28" y="25" width="26" height="4" fill="#666666"/>
  <rect x="88" y="25" width="26" height="4" fill="#666666"/>
  <rect x="147" y="25" width="26" height="4" fill="#666666"/>
</svg>
`;
var OS = `<svg width="100%" height="100%" viewBox="0 0 200 130" fill="none" xmlns="http://www.w3.org/2000/svg">
  <rect width="200" height="130" fill="white"/>
  <rect x="21" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <rect x="43" y="46" width="65" height="8" transform="rotate(90 43 46)" fill="#EBF4FF" stroke="#368EFF" stroke-width="2"/>
  <rect x="104" y="46" width="29" height="8" transform="rotate(90 104 46)" fill="#EBF4FF" stroke="#368EFF" stroke-width="2"/>
  <rect x="163" y="82" width="29" height="8" transform="rotate(90 163 82)" fill="#EBF4FF" stroke="#368EFF" stroke-width="2"/>
  <rect x="139" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <rect x="80" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <line x1="44" y1="59" x2="95" y2="59" stroke="#368EFF" stroke-width="2"/>
  <line x1="44" y1="96" x2="154" y2="96" stroke="#368EFF" stroke-width="2"/>
  <rect x="28" y="25" width="26" height="4" fill="#368EFF"/>
  <rect x="88" y="25" width="26" height="4" fill="#368EFF"/>
  <rect x="147" y="25" width="26" height="4" fill="#368EFF"/>
</svg>
`;
var IS = `<svg width="100%" height="100%" viewBox="0 0 200 130" fill="none" xmlns="http://www.w3.org/2000/svg">
  <rect width="200" height="130" fill="#202126"/>
  <rect x="21" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <rect x="43" y="46" width="65" height="8" transform="rotate(90 43 46)" fill="#222C3C" stroke="#368EFF" stroke-width="2"/>
  <rect x="104" y="46" width="29" height="8" transform="rotate(90 104 46)" fill="#222C3C" stroke="#368EFF" stroke-width="2"/>
  <rect x="163" y="82" width="29" height="8" transform="rotate(90 163 82)" fill="#222C3C" stroke="#368EFF" stroke-width="2"/>
  <rect x="139" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <rect x="80" y="19" width="40" height="16" stroke="#368EFF" stroke-width="2"/>
  <line x1="44" y1="59" x2="95" y2="59" stroke="#368EFF" stroke-width="2"/>
  <line x1="44" y1="96" x2="154" y2="96" stroke="#368EFF" stroke-width="2"/>
  <rect x="28" y="25" width="26" height="4" fill="#368EFF"/>
  <rect x="87" y="25" width="26" height="4" fill="#368EFF"/>
  <rect x="146" y="25" width="26" height="4" fill="#368EFF"/>
</svg>
`;
var MS = /* @__PURE__ */ S("div", { class: "fixed inset-0 bg-black bg-opacity-25" }, null, -1);
var NS = { class: "fixed inset-0 overflow-y-auto" };
var PS = { class: "flex min-h-full items-center justify-center p-4 text-center" };
var FS = /* @__PURE__ */ S("p", { class: "text-gray-500 text-sm" }, "Customize your UI theme", -1);
var DS = { class: "mt-4" };
var BS = { class: "space-y-2" };
var $S = { class: "flex w-full items-center justify-between" };
var HS = { class: "flex items-center text-sm text-gray-900" };
var US = ["innerHTML"];
var VS = {
  __name: "ThemeSelect",
  setup(t) {
    const e = ge(false), n = [
      {
        name: "Legacy",
        id: "theme-default",
        icon: kS
      },
      {
        name: "Clean Light",
        id: "theme-clean-light",
        icon: OS
      },
      {
        name: "Clean Dark",
        id: "theme-clean-dark",
        icon: IS
      }
    ], r = Gr(), s = ge(r.state.theme || n[0].id), i = /* @__PURE__ */ __name(() => {
      e.value = false;
    }, "i"), o = /* @__PURE__ */ __name(() => {
      e.value = true;
    }, "o"), l = /* @__PURE__ */ __name((a) => {
      s.value = a, r.commit("setTheme", a);
    }, "l");
    return (a, c) => (R(), q(Fe, null, [
      S("button", {
        type: "button",
        class: "flex items-center",
        onClick: o
      }, [
        z(dr, { name: "theme" })
      ]),
      z(Le(t6), {
        appear: "",
        show: e.value,
        as: "template"
      }, {
        default: jt(() => [
          z(Le(gS), {
            as: "div",
            onClose: i,
            class: "relative z-10"
          }, {
            default: jt(() => [
              z(Le(gl), {
                as: "template",
                enter: "duration-300 ease-out",
                "enter-from": "opacity-0",
                "enter-to": "opacity-100",
                leave: "duration-200 ease-in",
                "leave-from": "opacity-100",
                "leave-to": "opacity-0"
              }, {
                default: jt(() => [
                  MS
                ], void 0, true),
                _: 1
              }),
              S("div", NS, [
                S("div", PS, [
                  z(Le(gl), {
                    as: "template",
                    enter: "duration-300 ease-out",
                    "enter-from": "opacity-0 scale-95",
                    "enter-to": "opacity-100 scale-100",
                    leave: "duration-200 ease-in",
                    "leave-from": "opacity-100 scale-100",
                    "leave-to": "opacity-0 scale-95"
                  }, {
                    default: jt(() => [
                      z(Le(mS), { class: "w-full max-w-md transform overflow-hidden rounded-2xl bg-white p-6 text-left align-middle shadow-xl transition-all" }, {
                        default: jt(() => [
                          z(Le(xS), {
                            as: "h3",
                            class: "text-lg font-semibold leading-6 text-gray-900"
                          }, {
                            default: jt(() => [
                              dn(" Theme ")
                            ], void 0, true),
                            _: 1
                          }),
                          FS,
                          S("div", DS, [
                            S("div", null, [
                              z(Le(yS), {
                                "model-value": s.value,
                                "onUpdate:modelValue": l
                              }, {
                                default: jt(() => [
                                  z(Le(gu), { class: "sr-only" }, {
                                    default: jt(() => [
                                      dn("Server size")
                                    ], void 0, true),
                                    _: 1
                                  }),
                                  S("div", BS, [
                                    (R(), q(Fe, null, On(n, (u) => z(Le(vS), {
                                      as: "template",
                                      key: u.id,
                                      value: u.id
                                    }, {
                                      default: jt(({ checked: h }) => [
                                        S("div", {
                                          class: we([[
                                            h ? "border-2 text-gray-900 border-primary" : "border-2 border-transparent"
                                          ], "relative flex items-center cursor-pointer rounded-lg px-4 py-3 shadow-md"])
                                        }, [
                                          S("div", $S, [
                                            S("div", HS, [
                                              h ? (R(), ke(dr, {
                                                key: 0,
                                                name: "selected-cycle",
                                                "icon-class": "h-5 w-5 fill-none"
                                              })) : (R(), ke(dr, {
                                                key: 1,
                                                name: "non-selected-cycle",
                                                "icon-class": "h-5 w-5"
                                              })),
                                              z(Le(gu), {
                                                as: "p",
                                                class: we([
                                                  "text-gray-900",
                                                  "font-medium ml-2"
                                                ])
                                              }, {
                                                default: jt(() => [
                                                  dn(He(u.name), 1)
                                                ], void 0, true),
                                                _: 2
                                              }, 1032, ["class"])
                                            ])
                                          ]),
                                          S("span", {
                                            class: "inline-block w-20 border rounded-md overflow-hidden",
                                            innerHTML: u.icon
                                          }, null, 8, US)
                                        ], 2)
                                      ]),
                                      _: 2
                                    }, 1032, ["value"])), 64))
                                  ])
                                ], void 0, true),
                                _: 1
                              }, 8, ["model-value"])
                            ])
                          ])
                        ], void 0, true),
                        _: 1
                      })
                    ], void 0, true),
                    _: 1
                  })
                ])
              ])
            ], void 0, true),
            _: 1
          })
        ], void 0, true),
        _: 1
      }, 8, ["show"])
    ], 64));
  }
};
var zS = {
  name: "DiagramFrame",
  setup() {
    return {
      RenderMode: Gn
    };
  },
  computed: {
    ...Fn([
      "showTips",
      "scale",
      "theme",
      "numbering",
      "enableMultiTheme",
      "mode"
    ]),
    ...pn(["rootContext"]),
    title() {
      var t;
      return this.rootContext || console.error(
        "`rootContext` is empty. Please make sure `store` is properly configured."
      ), (t = this.rootContext) == null ? void 0 : t.title();
    }
  },
  mounted() {
    this.$el.__vue__ = this;
  },
  methods: {
    ...V5(["setScale", "toggleNumbering"]),
    showTipsDialog() {
      var t;
      this.$store.state.showTips = true;
      try {
        (t = this.$gtag) == null || t.event("view", {
          event_category: "help",
          event_label: "tips dialog"
        });
      } catch (e) {
        console.error(e);
      }
    },
    toPng() {
      return mT(this.$refs.export, {
        backgroundColor: "white",
        filter: (t) => {
          var e;
          return !((e = t == null ? void 0 : t.classList) != null && e.contains("hide-export"));
        }
      });
    },
    toSvg() {
      return Rh(this.$refs.export, {
        backgroundColor: "white",
        filter: (t) => {
          var e;
          return !((e = t == null ? void 0 : t.classList) != null && e.contains("hide-export"));
        }
      });
    },
    toBlob() {
      return LT(this.$refs.export, {
        backgroundColor: "white",
        filter: (t) => {
          var e;
          return !((e = t == null ? void 0 : t.classList) != null && e.contains("hide-export"));
        }
      });
    },
    toJpeg() {
      return xT(this.$refs.export, {
        backgroundColor: "white",
        filter: (t) => {
          var e;
          return !((e = t == null ? void 0 : t.classList) != null && e.contains("hide-export"));
        }
      });
    },
    zoomIn() {
      const t = Math.min(1, this.scale + 0.1);
      this.setScale(t);
    },
    zoomOut() {
      this.setScale(this.scale - 0.1);
    },
    setTheme(t) {
      this.theme = t;
    },
    setStyle(t) {
      const e = "zenuml-style";
      let n = document.getElementById(e);
      n || (n = document.createElement("style"), n.id = e, document.head.append(n)), n.textContent = t;
    },
    setRemoteCss(t) {
      const e = new URL(t).hostname;
      if (e === "https://github.com" || e === "https://githubusercontent.com") {
        fetch(
          t.replace("github.com", "raw.githubusercontent.com").replace("blob/", "")
        ).then((s) => s.text()).then((s) => {
          this.setStyle(s);
        });
        return;
      }
      const n = "zenuml-remote-css";
      let r = document.getElementById(n);
      r || (r = document.createElement("link"), r.id = n, r.rel = "stylesheet", document.head.append(r)), r.href = t;
    }
  },
  components: {
    Icon: dr,
    Debug: TT,
    WidthProvider: TE,
    TipsDialog: uE,
    DiagramTitle: Tv,
    SeqDiagram: dc,
    Privacy: vv,
    ThemeSelect: VS
  }
};
var GS = { class: "frame text-skin-frame bg-skin-frame border-skin-frame relative m-1 origin-top-left whitespace-nowrap border rounded" };
var jS = { ref: "content" };
var ZS = { class: "header text-skin-title bg-skin-title border-skin-frame border-b p-1 flex justify-between rounded-t" };
var WS = { class: "left hide-export" };
var qS = { class: "right flex-grow flex justify-between" };
var KS = {
  key: 0,
  class: "fixed z-40 inset-0 overflow-y-auto",
  "aria-labelledby": "modal-title",
  role: "dialog",
  "aria-modal": "true"
};
var YS = { class: "footer text-skin-control px-4 py-1 flex justify-between items-center gap-3" };
var XS = { class: "flex items-center gap-3 color-base" };
var QS = { class: "flex items-center" };
var JS = ["checked"];
var eA = {
  for: "order-display",
  title: "Numbering the diagram",
  class: "select-none"
};
var tA = { class: "zoom-controls bg-skin-base flex hide-export gap-1" };
var nA = { class: "w-12 block text-center" };
var rA = /* @__PURE__ */ S("a", {
  target: "_blank",
  href: "https://zenuml.com",
  class: "brand text-xs hover:underline"
}, "ZenUML.com", -1);
function sA(t, e, n, r, s, i) {
  const o = _e("debug"), l = _e("diagram-title"), a = _e("privacy"), c = _e("TipsDialog"), u = _e("seq-diagram"), h = _e("Icon"), f = _e("ThemeSelect"), p = _e("width-provider");
  return R(), q("div", {
    ref: "export",
    class: we(["zenuml p-1 bg-skin-canvas", t.theme]),
    style: { display: "inline-block" }
  }, [
    z(o),
    S("div", GS, [
      S("div", jS, [
        S("div", ZS, [
          S("div", WS, [
            Vl(t.$slots, "default")
          ]),
          S("div", qS, [
            z(l, { context: i.title }, null, 8, ["context"]),
            z(a, { class: "hide-export flex items-center" })
          ])
        ]),
        S("div", null, [
          t.showTips ? (R(), q("div", KS, [
            z(c)
          ])) : me("", true)
        ]),
        z(u, {
          ref: "diagram",
          style: Ce({ transform: `scale(${t.scale})` }),
          class: "origin-top-left"
        }, null, 8, ["style"])
      ], 512),
      S("div", YS, [
        t.mode === r.RenderMode.Dynamic ? (R(), q(Fe, { key: 0 }, [
          S("div", XS, [
            S("button", {
              class: "bottom-1 flex items-center left-1 hide-export",
              onClick: e[0] || (e[0] = (x) => i.showTipsDialog())
            }, [
              z(h, {
                name: "tip",
                "icon-class": "filter grayscale w-4 h-4"
              })
            ]),
            t.enableMultiTheme ? (R(), ke(f, { key: 0 })) : me("", true),
            S("div", QS, [
              S("input", {
                type: "checkbox",
                id: "order-display",
                class: "mr-1",
                checked: t.numbering,
                onInput: e[1] || (e[1] = (x) => t.toggleNumbering(!t.numbering))
              }, null, 40, JS),
              S("label", eA, [
                z(h, {
                  name: "numbering",
                  "icon-class": "w-6 h-6"
                })
              ])
            ])
          ]),
          S("div", tA, [
            S("button", {
              class: "zoom-in",
              onClick: e[2] || (e[2] = (x) => i.zoomIn())
            }, [
              z(h, {
                name: "zoom-in",
                "icon-class": "w-4 h-4"
              })
            ]),
            S("label", nA, He(Number(t.scale * 100).toFixed(0)) + "%", 1),
            S("button", {
              class: "zoom-out",
              onClick: e[3] || (e[3] = (x) => i.zoomOut())
            }, [
              z(h, {
                name: "zoom-out",
                "icon-class": "w-4 h-4"
              })
            ])
          ]),
          rA
        ], 64)) : me("", true)
      ]),
      z(p)
    ])
  ], 2);
}
__name(sA, "sA");
var n6 = /* @__PURE__ */ Ge(zS, [["render", sA]]);
function r6() {
  return {
    baseUrl: null,
    breaks: false,
    extensions: null,
    gfm: true,
    headerIds: true,
    headerPrefix: "",
    highlight: null,
    langPrefix: "language-",
    mangle: true,
    pedantic: false,
    renderer: null,
    sanitize: false,
    sanitizer: null,
    silent: false,
    smartLists: false,
    smartypants: false,
    tokenizer: null,
    walkTokens: null,
    xhtml: false
  };
}
__name(r6, "r6");
var Bs = r6();
function iA(t) {
  Bs = t;
}
__name(iA, "iA");
var oA = /[&<>"']/;
var lA = /[&<>"']/g;
var aA = /[<>"']|&(?!#?\w+;)/;
var cA = /[<>"']|&(?!#?\w+;)/g;
var uA = {
  "&": "&amp;",
  "<": "&lt;",
  ">": "&gt;",
  '"': "&quot;",
  "'": "&#39;"
};
var xu = /* @__PURE__ */ __name((t) => uA[t], "xu");
function pt(t, e) {
  if (e) {
    if (oA.test(t))
      return t.replace(lA, xu);
  } else if (aA.test(t))
    return t.replace(cA, xu);
  return t;
}
__name(pt, "pt");
var hA = /&(#(?:\d+)|(?:#x[0-9A-Fa-f]+)|(?:\w+));?/ig;
function s6(t) {
  return t.replace(hA, (e, n) => (n = n.toLowerCase(), n === "colon" ? ":" : n.charAt(0) === "#" ? n.charAt(1) === "x" ? String.fromCharCode(parseInt(n.substring(2), 16)) : String.fromCharCode(+n.substring(1)) : ""));
}
__name(s6, "s6");
var dA = /(^|[^\[])\^/g;
function Ze(t, e) {
  t = t.source || t, e = e || "";
  const n = {
    replace: (r, s) => (s = s.source || s, s = s.replace(dA, "$1"), t = t.replace(r, s), n),
    getRegex: () => new RegExp(t, e)
  };
  return n;
}
__name(Ze, "Ze");
var fA = /[^\w:]/g;
var pA = /^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;
function Lu(t, e, n) {
  if (t) {
    let r;
    try {
      r = decodeURIComponent(s6(n)).replace(fA, "").toLowerCase();
    } catch {
      return null;
    }
    if (r.indexOf("javascript:") === 0 || r.indexOf("vbscript:") === 0 || r.indexOf("data:") === 0)
      return null;
  }
  e && !pA.test(n) && (n = LA(e, n));
  try {
    n = encodeURI(n).replace(/%25/g, "%");
  } catch {
    return null;
  }
  return n;
}
__name(Lu, "Lu");
var Li = {};
var gA = /^[^:]+:\/*[^/]*$/;
var mA = /^([^:]+:)[\s\S]*$/;
var xA = /^([^:]+:\/*[^/]*)[\s\S]*$/;
function LA(t, e) {
  Li[" " + t] || (gA.test(t) ? Li[" " + t] = t + "/" : Li[" " + t] = wi(t, "/", true)), t = Li[" " + t];
  const n = t.indexOf(":") === -1;
  return e.substring(0, 2) === "//" ? n ? e : t.replace(mA, "$1") + e : e.charAt(0) === "/" ? n ? e : t.replace(xA, "$1") + e : t + e;
}
__name(LA, "LA");
var Wi = { exec: function() {
} };
function mn(t) {
  let e = 1, n, r;
  for (; e < arguments.length; e++) {
    n = arguments[e];
    for (r in n)
      Object.prototype.hasOwnProperty.call(n, r) && (t[r] = n[r]);
  }
  return t;
}
__name(mn, "mn");
function _u(t, e) {
  const n = t.replace(/\|/g, (i, o, l) => {
    let a = false, c = o;
    for (; --c >= 0 && l[c] === "\\"; )
      a = !a;
    return a ? "|" : " |";
  }), r = n.split(/ \|/);
  let s = 0;
  if (r[0].trim() || r.shift(), r[r.length - 1].trim() || r.pop(), r.length > e)
    r.splice(e);
  else
    for (; r.length < e; )
      r.push("");
  for (; s < r.length; s++)
    r[s] = r[s].trim().replace(/\\\|/g, "|");
  return r;
}
__name(_u, "_u");
function wi(t, e, n) {
  const r = t.length;
  if (r === 0)
    return "";
  let s = 0;
  for (; s < r; ) {
    const i = t.charAt(r - s - 1);
    if (i === e && !n)
      s++;
    else if (i !== e && n)
      s++;
    else
      break;
  }
  return t.substr(0, r - s);
}
__name(wi, "wi");
function _A(t, e) {
  if (t.indexOf(e[1]) === -1)
    return -1;
  const n = t.length;
  let r = 0, s = 0;
  for (; s < n; s++)
    if (t[s] === "\\")
      s++;
    else if (t[s] === e[0])
      r++;
    else if (t[s] === e[1] && (r--, r < 0))
      return s;
  return -1;
}
__name(_A, "_A");
function i6(t) {
  t && t.sanitize && !t.silent && console.warn("marked(): sanitize and sanitizer parameters are deprecated since version 0.7.0, should not be used and will be removed in the future. Read more here: https://marked.js.org/#/USING_ADVANCED.md#options");
}
__name(i6, "i6");
function yu(t, e) {
  if (e < 1)
    return "";
  let n = "";
  for (; e > 1; )
    e & 1 && (n += t), e >>= 1, t += t;
  return n + t;
}
__name(yu, "yu");
function Cu(t, e, n, r) {
  const s = e.href, i = e.title ? pt(e.title) : null, o = t[1].replace(/\\([\[\]])/g, "$1");
  if (t[0].charAt(0) !== "!") {
    r.state.inLink = true;
    const l = {
      type: "link",
      raw: n,
      href: s,
      title: i,
      text: o,
      tokens: r.inlineTokens(o, [])
    };
    return r.state.inLink = false, l;
  } else
    return {
      type: "image",
      raw: n,
      href: s,
      title: i,
      text: pt(o)
    };
}
__name(Cu, "Cu");
function yA(t, e) {
  const n = t.match(/^(\s+)(?:```)/);
  if (n === null)
    return e;
  const r = n[1];
  return e.split(`
`).map((s) => {
    const i = s.match(/^\s+/);
    if (i === null)
      return s;
    const [o] = i;
    return o.length >= r.length ? s.slice(r.length) : s;
  }).join(`
`);
}
__name(yA, "yA");
var vc = class {
  static {
    __name(this, "vc");
  }
  constructor(e) {
    this.options = e || Bs;
  }
  space(e) {
    const n = this.rules.block.newline.exec(e);
    if (n && n[0].length > 0)
      return {
        type: "space",
        raw: n[0]
      };
  }
  code(e) {
    const n = this.rules.block.code.exec(e);
    if (n) {
      const r = n[0].replace(/^ {1,4}/gm, "");
      return {
        type: "code",
        raw: n[0],
        codeBlockStyle: "indented",
        text: this.options.pedantic ? r : wi(r, `
`)
      };
    }
  }
  fences(e) {
    const n = this.rules.block.fences.exec(e);
    if (n) {
      const r = n[0], s = yA(r, n[3] || "");
      return {
        type: "code",
        raw: r,
        lang: n[2] ? n[2].trim() : n[2],
        text: s
      };
    }
  }
  heading(e) {
    const n = this.rules.block.heading.exec(e);
    if (n) {
      let r = n[2].trim();
      if (/#$/.test(r)) {
        const i = wi(r, "#");
        (this.options.pedantic || !i || / $/.test(i)) && (r = i.trim());
      }
      const s = {
        type: "heading",
        raw: n[0],
        depth: n[1].length,
        text: r,
        tokens: []
      };
      return this.lexer.inline(s.text, s.tokens), s;
    }
  }
  hr(e) {
    const n = this.rules.block.hr.exec(e);
    if (n)
      return {
        type: "hr",
        raw: n[0]
      };
  }
  blockquote(e) {
    const n = this.rules.block.blockquote.exec(e);
    if (n) {
      const r = n[0].replace(/^ *> ?/gm, "");
      return {
        type: "blockquote",
        raw: n[0],
        tokens: this.lexer.blockTokens(r, []),
        text: r
      };
    }
  }
  list(e) {
    let n = this.rules.block.list.exec(e);
    if (n) {
      let r, s, i, o, l, a, c, u, h, f, p, x, y = n[1].trim();
      const A = y.length > 1, _ = {
        type: "list",
        raw: "",
        ordered: A,
        start: A ? +y.slice(0, -1) : "",
        loose: false,
        items: []
      };
      y = A ? `\\d{1,9}\\${y.slice(-1)}` : `\\${y}`, this.options.pedantic && (y = A ? y : "[*+-]");
      const m = new RegExp(`^( {0,3}${y})((?: [^\\n]*)?(?:\\n|$))`);
      for (; e && (x = false, !(!(n = m.exec(e)) || this.rules.block.hr.test(e))); ) {
        if (r = n[0], e = e.substring(r.length), u = n[2].split(`
`, 1)[0], h = e.split(`
`, 1)[0], this.options.pedantic ? (o = 2, p = u.trimLeft()) : (o = n[2].search(/[^ ]/), o = o > 4 ? 1 : o, p = u.slice(o), o += n[1].length), a = false, !u && /^ *$/.test(h) && (r += h + `
`, e = e.substring(h.length + 1), x = true), !x) {
          const E = new RegExp(`^ {0,${Math.min(3, o - 1)}}(?:[*+-]|\\d{1,9}[.)])`);
          for (; e && (f = e.split(`
`, 1)[0], u = f, this.options.pedantic && (u = u.replace(/^ {1,4}(?=( {4})*[^ ])/g, "  ")), !E.test(u)); ) {
            if (u.search(/[^ ]/) >= o || !u.trim())
              p += `
` + u.slice(o);
            else if (!a)
              p += `
` + u;
            else
              break;
            !a && !u.trim() && (a = true), r += f + `
`, e = e.substring(f.length + 1);
          }
        }
        _.loose || (c ? _.loose = true : /\n *\n *$/.test(r) && (c = true)), this.options.gfm && (s = /^\[[ xX]\] /.exec(p), s && (i = s[0] !== "[ ] ", p = p.replace(/^\[[ xX]\] +/, ""))), _.items.push({
          type: "list_item",
          raw: r,
          task: !!s,
          checked: i,
          loose: false,
          text: p
        }), _.raw += r;
      }
      _.items[_.items.length - 1].raw = r.trimRight(), _.items[_.items.length - 1].text = p.trimRight(), _.raw = _.raw.trimRight();
      const C = _.items.length;
      for (l = 0; l < C; l++) {
        this.lexer.state.top = false, _.items[l].tokens = this.lexer.blockTokens(_.items[l].text, []);
        const E = _.items[l].tokens.filter((U) => U.type === "space"), P = E.every((U) => {
          const j = U.raw.split("");
          let k = 0;
          for (const ae of j)
            if (ae === `
` && (k += 1), k > 1)
              return true;
          return false;
        });
        !_.loose && E.length && P && (_.loose = true, _.items[l].loose = true);
      }
      return _;
    }
  }
  html(e) {
    const n = this.rules.block.html.exec(e);
    if (n) {
      const r = {
        type: "html",
        raw: n[0],
        pre: !this.options.sanitizer && (n[1] === "pre" || n[1] === "script" || n[1] === "style"),
        text: n[0]
      };
      return this.options.sanitize && (r.type = "paragraph", r.text = this.options.sanitizer ? this.options.sanitizer(n[0]) : pt(n[0]), r.tokens = [], this.lexer.inline(r.text, r.tokens)), r;
    }
  }
  def(e) {
    const n = this.rules.block.def.exec(e);
    if (n)
      return n[3] && (n[3] = n[3].substring(1, n[3].length - 1)), {
        type: "def",
        tag: n[1].toLowerCase().replace(/\s+/g, " "),
        raw: n[0],
        href: n[2],
        title: n[3]
      };
  }
  table(e) {
    const n = this.rules.block.table.exec(e);
    if (n) {
      const r = {
        type: "table",
        header: _u(n[1]).map((s) => ({ text: s })),
        align: n[2].replace(/^ *|\| *$/g, "").split(/ *\| */),
        rows: n[3] ? n[3].replace(/\n[ \t]*$/, "").split(`
`) : []
      };
      if (r.header.length === r.align.length) {
        r.raw = n[0];
        let s = r.align.length, i, o, l, a;
        for (i = 0; i < s; i++)
          /^ *-+: *$/.test(r.align[i]) ? r.align[i] = "right" : /^ *:-+: *$/.test(r.align[i]) ? r.align[i] = "center" : /^ *:-+ *$/.test(r.align[i]) ? r.align[i] = "left" : r.align[i] = null;
        for (s = r.rows.length, i = 0; i < s; i++)
          r.rows[i] = _u(r.rows[i], r.header.length).map((c) => ({ text: c }));
        for (s = r.header.length, o = 0; o < s; o++)
          r.header[o].tokens = [], this.lexer.inlineTokens(r.header[o].text, r.header[o].tokens);
        for (s = r.rows.length, o = 0; o < s; o++)
          for (a = r.rows[o], l = 0; l < a.length; l++)
            a[l].tokens = [], this.lexer.inlineTokens(a[l].text, a[l].tokens);
        return r;
      }
    }
  }
  lheading(e) {
    const n = this.rules.block.lheading.exec(e);
    if (n) {
      const r = {
        type: "heading",
        raw: n[0],
        depth: n[2].charAt(0) === "=" ? 1 : 2,
        text: n[1],
        tokens: []
      };
      return this.lexer.inline(r.text, r.tokens), r;
    }
  }
  paragraph(e) {
    const n = this.rules.block.paragraph.exec(e);
    if (n) {
      const r = {
        type: "paragraph",
        raw: n[0],
        text: n[1].charAt(n[1].length - 1) === `
` ? n[1].slice(0, -1) : n[1],
        tokens: []
      };
      return this.lexer.inline(r.text, r.tokens), r;
    }
  }
  text(e) {
    const n = this.rules.block.text.exec(e);
    if (n) {
      const r = {
        type: "text",
        raw: n[0],
        text: n[0],
        tokens: []
      };
      return this.lexer.inline(r.text, r.tokens), r;
    }
  }
  escape(e) {
    const n = this.rules.inline.escape.exec(e);
    if (n)
      return {
        type: "escape",
        raw: n[0],
        text: pt(n[1])
      };
  }
  tag(e) {
    const n = this.rules.inline.tag.exec(e);
    if (n)
      return !this.lexer.state.inLink && /^<a /i.test(n[0]) ? this.lexer.state.inLink = true : this.lexer.state.inLink && /^<\/a>/i.test(n[0]) && (this.lexer.state.inLink = false), !this.lexer.state.inRawBlock && /^<(pre|code|kbd|script)(\s|>)/i.test(n[0]) ? this.lexer.state.inRawBlock = true : this.lexer.state.inRawBlock && /^<\/(pre|code|kbd|script)(\s|>)/i.test(n[0]) && (this.lexer.state.inRawBlock = false), {
        type: this.options.sanitize ? "text" : "html",
        raw: n[0],
        inLink: this.lexer.state.inLink,
        inRawBlock: this.lexer.state.inRawBlock,
        text: this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(n[0]) : pt(n[0]) : n[0]
      };
  }
  link(e) {
    const n = this.rules.inline.link.exec(e);
    if (n) {
      const r = n[2].trim();
      if (!this.options.pedantic && /^</.test(r)) {
        if (!/>$/.test(r))
          return;
        const o = wi(r.slice(0, -1), "\\");
        if ((r.length - o.length) % 2 === 0)
          return;
      } else {
        const o = _A(n[2], "()");
        if (o > -1) {
          const a = (n[0].indexOf("!") === 0 ? 5 : 4) + n[1].length + o;
          n[2] = n[2].substring(0, o), n[0] = n[0].substring(0, a).trim(), n[3] = "";
        }
      }
      let s = n[2], i = "";
      if (this.options.pedantic) {
        const o = /^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(s);
        o && (s = o[1], i = o[3]);
      } else
        i = n[3] ? n[3].slice(1, -1) : "";
      return s = s.trim(), /^</.test(s) && (this.options.pedantic && !/>$/.test(r) ? s = s.slice(1) : s = s.slice(1, -1)), Cu(n, {
        href: s && s.replace(this.rules.inline._escapes, "$1"),
        title: i && i.replace(this.rules.inline._escapes, "$1")
      }, n[0], this.lexer);
    }
  }
  reflink(e, n) {
    let r;
    if ((r = this.rules.inline.reflink.exec(e)) || (r = this.rules.inline.nolink.exec(e))) {
      let s = (r[2] || r[1]).replace(/\s+/g, " ");
      if (s = n[s.toLowerCase()], !s || !s.href) {
        const i = r[0].charAt(0);
        return {
          type: "text",
          raw: i,
          text: i
        };
      }
      return Cu(r, s, r[0], this.lexer);
    }
  }
  emStrong(e, n, r = "") {
    let s = this.rules.inline.emStrong.lDelim.exec(e);
    if (!s || s[3] && r.match(/[\p{L}\p{N}]/u))
      return;
    const i = s[1] || s[2] || "";
    if (!i || i && (r === "" || this.rules.inline.punctuation.exec(r))) {
      const o = s[0].length - 1;
      let l, a, c = o, u = 0;
      const h = s[0][0] === "*" ? this.rules.inline.emStrong.rDelimAst : this.rules.inline.emStrong.rDelimUnd;
      for (h.lastIndex = 0, n = n.slice(-1 * e.length + o); (s = h.exec(n)) != null; ) {
        if (l = s[1] || s[2] || s[3] || s[4] || s[5] || s[6], !l)
          continue;
        if (a = l.length, s[3] || s[4]) {
          c += a;
          continue;
        } else if ((s[5] || s[6]) && o % 3 && !((o + a) % 3)) {
          u += a;
          continue;
        }
        if (c -= a, c > 0)
          continue;
        if (a = Math.min(a, a + c + u), Math.min(o, a) % 2) {
          const p = e.slice(1, o + s.index + a);
          return {
            type: "em",
            raw: e.slice(0, o + s.index + a + 1),
            text: p,
            tokens: this.lexer.inlineTokens(p, [])
          };
        }
        const f = e.slice(2, o + s.index + a - 1);
        return {
          type: "strong",
          raw: e.slice(0, o + s.index + a + 1),
          text: f,
          tokens: this.lexer.inlineTokens(f, [])
        };
      }
    }
  }
  codespan(e) {
    const n = this.rules.inline.code.exec(e);
    if (n) {
      let r = n[2].replace(/\n/g, " ");
      const s = /[^ ]/.test(r), i = /^ /.test(r) && / $/.test(r);
      return s && i && (r = r.substring(1, r.length - 1)), r = pt(r, true), {
        type: "codespan",
        raw: n[0],
        text: r
      };
    }
  }
  br(e) {
    const n = this.rules.inline.br.exec(e);
    if (n)
      return {
        type: "br",
        raw: n[0]
      };
  }
  del(e) {
    const n = this.rules.inline.del.exec(e);
    if (n)
      return {
        type: "del",
        raw: n[0],
        text: n[2],
        tokens: this.lexer.inlineTokens(n[2], [])
      };
  }
  autolink(e, n) {
    const r = this.rules.inline.autolink.exec(e);
    if (r) {
      let s, i;
      return r[2] === "@" ? (s = pt(this.options.mangle ? n(r[1]) : r[1]), i = "mailto:" + s) : (s = pt(r[1]), i = s), {
        type: "link",
        raw: r[0],
        text: s,
        href: i,
        tokens: [
          {
            type: "text",
            raw: s,
            text: s
          }
        ]
      };
    }
  }
  url(e, n) {
    let r;
    if (r = this.rules.inline.url.exec(e)) {
      let s, i;
      if (r[2] === "@")
        s = pt(this.options.mangle ? n(r[0]) : r[0]), i = "mailto:" + s;
      else {
        let o;
        do
          o = r[0], r[0] = this.rules.inline._backpedal.exec(r[0])[0];
        while (o !== r[0]);
        s = pt(r[0]), r[1] === "www." ? i = "http://" + s : i = s;
      }
      return {
        type: "link",
        raw: r[0],
        text: s,
        href: i,
        tokens: [
          {
            type: "text",
            raw: s,
            text: s
          }
        ]
      };
    }
  }
  inlineText(e, n) {
    const r = this.rules.inline.text.exec(e);
    if (r) {
      let s;
      return this.lexer.state.inRawBlock ? s = this.options.sanitize ? this.options.sanitizer ? this.options.sanitizer(r[0]) : pt(r[0]) : r[0] : s = pt(this.options.smartypants ? n(r[0]) : r[0]), {
        type: "text",
        raw: r[0],
        text: s
      };
    }
  }
};
var fe = {
  newline: /^(?: *(?:\n|$))+/,
  code: /^( {4}[^\n]+(?:\n(?: *(?:\n|$))*)?)+/,
  fences: /^ {0,3}(`{3,}(?=[^`\n]*\n)|~{3,})([^\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?=\n|$)|$)/,
  hr: /^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,
  heading: /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,
  blockquote: /^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,
  list: /^( {0,3}bull)( [^\n]+?)?(?:\n|$)/,
  html: "^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n *)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n *)+\\n|$))",
  def: /^ {0,3}\[(label)\]: *(?:\n *)?<?([^\s>]+)>?(?:(?: +(?:\n *)?| *\n *)(title))? *(?:\n+|$)/,
  table: Wi,
  lheading: /^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,
  _paragraph: /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,
  text: /^[^\n]+/
};
fe._label = /(?!\s*\])(?:\\.|[^\[\]\\])+/;
fe._title = /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/;
fe.def = Ze(fe.def).replace("label", fe._label).replace("title", fe._title).getRegex();
fe.bullet = /(?:[*+-]|\d{1,9}[.)])/;
fe.listItemStart = Ze(/^( *)(bull) */).replace("bull", fe.bullet).getRegex();
fe.list = Ze(fe.list).replace(/bull/g, fe.bullet).replace("hr", "\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def", "\\n+(?=" + fe.def.source + ")").getRegex();
fe._tag = "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|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul";
fe._comment = /<!--(?!-?>)[\s\S]*?(?:-->|$)/;
fe.html = Ze(fe.html, "i").replace("comment", fe._comment).replace("tag", fe._tag).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex();
fe.paragraph = Ze(fe._paragraph).replace("hr", fe.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", fe._tag).getRegex();
fe.blockquote = Ze(fe.blockquote).replace("paragraph", fe.paragraph).getRegex();
fe.normal = mn({}, fe);
fe.gfm = mn({}, fe.normal, {
  table: "^ *([^\\n ].*\\|.*)\\n {0,3}(?:\\| *)?(:?-+:? *(?:\\| *:?-+:? *)*)(?:\\| *)?(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)"
});
fe.gfm.table = Ze(fe.gfm.table).replace("hr", fe.hr).replace("heading", " {0,3}#{1,6} ").replace("blockquote", " {0,3}>").replace("code", " {4}[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", fe._tag).getRegex();
fe.gfm.paragraph = Ze(fe._paragraph).replace("hr", fe.hr).replace("heading", " {0,3}#{1,6} ").replace("|lheading", "").replace("table", fe.gfm.table).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list", " {0,3}(?:[*+-]|1[.)]) ").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", fe._tag).getRegex();
fe.pedantic = mn({}, fe.normal, {
  html: Ze(
    `^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`
  ).replace("comment", fe._comment).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
  heading: /^(#{1,6})(.*)(?:\n+|$)/,
  fences: Wi,
  paragraph: Ze(fe.normal._paragraph).replace("hr", fe.hr).replace("heading", ` *#{1,6} *[^
]`).replace("lheading", fe.lheading).replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").getRegex()
});
var te = {
  escape: /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,
  autolink: /^<(scheme:[^\s\x00-\x1f<>]*|email)>/,
  url: Wi,
  tag: "^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>",
  link: /^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,
  reflink: /^!?\[(label)\]\[(ref)\]/,
  nolink: /^!?\[(ref)\](?:\[\])?/,
  reflinkSearch: "reflink|nolink(?!\\()",
  emStrong: {
    lDelim: /^(?:\*+(?:([punct_])|[^\s*]))|^_+(?:([punct*])|([^\s_]))/,
    rDelimAst: /^[^_*]*?\_\_[^_*]*?\*[^_*]*?(?=\_\_)|[punct_](\*+)(?=[\s]|$)|[^punct*_\s](\*+)(?=[punct_\s]|$)|[punct_\s](\*+)(?=[^punct*_\s])|[\s](\*+)(?=[punct_])|[punct_](\*+)(?=[punct_])|[^punct*_\s](\*+)(?=[^punct*_\s])/,
    rDelimUnd: /^[^_*]*?\*\*[^_*]*?\_[^_*]*?(?=\*\*)|[punct*](\_+)(?=[\s]|$)|[^punct*_\s](\_+)(?=[punct*\s]|$)|[punct*\s](\_+)(?=[^punct*_\s])|[\s](\_+)(?=[punct*])|[punct*](\_+)(?=[punct*])/
  },
  code: /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,
  br: /^( {2,}|\\)\n(?!\s*$)/,
  del: Wi,
  text: /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,
  punctuation: /^([\spunctuation])/
};
te._punctuation = "!\"#$%&'()+\\-.,/:;<=>?@\\[\\]`^{|}~";
te.punctuation = Ze(te.punctuation).replace(/punctuation/g, te._punctuation).getRegex();
te.blockSkip = /\[[^\]]*?\]\([^\)]*?\)|`[^`]*?`|<[^>]*?>/g;
te.escapedEmSt = /\\\*|\\_/g;
te._comment = Ze(fe._comment).replace("(?:-->|$)", "-->").getRegex();
te.emStrong.lDelim = Ze(te.emStrong.lDelim).replace(/punct/g, te._punctuation).getRegex();
te.emStrong.rDelimAst = Ze(te.emStrong.rDelimAst, "g").replace(/punct/g, te._punctuation).getRegex();
te.emStrong.rDelimUnd = Ze(te.emStrong.rDelimUnd, "g").replace(/punct/g, te._punctuation).getRegex();
te._escapes = /\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/g;
te._scheme = /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/;
te._email = /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/;
te.autolink = Ze(te.autolink).replace("scheme", te._scheme).replace("email", te._email).getRegex();
te._attribute = /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/;
te.tag = Ze(te.tag).replace("comment", te._comment).replace("attribute", te._attribute).getRegex();
te._label = /(?:\[(?:\\.|[^\[\]\\])*\]|\\.|`[^`]*`|[^\[\]\\`])*?/;
te._href = /<(?:\\.|[^\n<>\\])+>|[^\s\x00-\x1f]*/;
te._title = /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/;
te.link = Ze(te.link).replace("label", te._label).replace("href", te._href).replace("title", te._title).getRegex();
te.reflink = Ze(te.reflink).replace("label", te._label).replace("ref", fe._label).getRegex();
te.nolink = Ze(te.nolink).replace("ref", fe._label).getRegex();
te.reflinkSearch = Ze(te.reflinkSearch, "g").replace("reflink", te.reflink).replace("nolink", te.nolink).getRegex();
te.normal = mn({}, te);
te.pedantic = mn({}, te.normal, {
  strong: {
    start: /^__|\*\*/,
    middle: /^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,
    endAst: /\*\*(?!\*)/g,
    endUnd: /__(?!_)/g
  },
  em: {
    start: /^_|\*/,
    middle: /^()\*(?=\S)([\s\S]*?\S)\*(?!\*)|^_(?=\S)([\s\S]*?\S)_(?!_)/,
    endAst: /\*(?!\*)/g,
    endUnd: /_(?!_)/g
  },
  link: Ze(/^!?\[(label)\]\((.*?)\)/).replace("label", te._label).getRegex(),
  reflink: Ze(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", te._label).getRegex()
});
te.gfm = mn({}, te.normal, {
  escape: Ze(te.escape).replace("])", "~|])").getRegex(),
  _extended_email: /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,
  url: /^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,
  _backpedal: /(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,
  del: /^(~~?)(?=[^\s~])([\s\S]*?[^\s~])\1(?=[^~]|$)/,
  text: /^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|https?:\/\/|ftp:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/
});
te.gfm.url = Ze(te.gfm.url, "i").replace("email", te.gfm._extended_email).getRegex();
te.breaks = mn({}, te.gfm, {
  br: Ze(te.br).replace("{2,}", "*").getRegex(),
  text: Ze(te.gfm.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
});
function CA(t) {
  return t.replace(/---/g, "\u2014").replace(/--/g, "\u2013").replace(/(^|[-\u2014/(\[{"\s])'/g, "$1\u2018").replace(/'/g, "\u2019").replace(/(^|[-\u2014/(\[{\u2018\s])"/g, "$1\u201C").replace(/"/g, "\u201D").replace(/\.{3}/g, "\u2026");
}
__name(CA, "CA");
function vu(t) {
  let e = "", n, r;
  const s = t.length;
  for (n = 0; n < s; n++)
    r = t.charCodeAt(n), Math.random() > 0.5 && (r = "x" + r.toString(16)), e += "&#" + r + ";";
  return e;
}
__name(vu, "vu");
var qn = class _qn {
  static {
    __name(this, "qn");
  }
  constructor(e) {
    this.tokens = [], this.tokens.links = /* @__PURE__ */ Object.create(null), this.options = e || Bs, this.options.tokenizer = this.options.tokenizer || new vc(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
      inLink: false,
      inRawBlock: false,
      top: true
    };
    const n = {
      block: fe.normal,
      inline: te.normal
    };
    this.options.pedantic ? (n.block = fe.pedantic, n.inline = te.pedantic) : this.options.gfm && (n.block = fe.gfm, this.options.breaks ? n.inline = te.breaks : n.inline = te.gfm), this.tokenizer.rules = n;
  }
  static get rules() {
    return {
      block: fe,
      inline: te
    };
  }
  static lex(e, n) {
    return new _qn(n).lex(e);
  }
  static lexInline(e, n) {
    return new _qn(n).inlineTokens(e);
  }
  lex(e) {
    e = e.replace(/\r\n|\r/g, `
`).replace(/\t/g, "    "), this.blockTokens(e, this.tokens);
    let n;
    for (; n = this.inlineQueue.shift(); )
      this.inlineTokens(n.src, n.tokens);
    return this.tokens;
  }
  blockTokens(e, n = []) {
    this.options.pedantic && (e = e.replace(/^ +$/gm, ""));
    let r, s, i, o;
    for (; e; )
      if (!(this.options.extensions && this.options.extensions.block && this.options.extensions.block.some((l) => (r = l.call({ lexer: this }, e, n)) ? (e = e.substring(r.raw.length), n.push(r), true) : false))) {
        if (r = this.tokenizer.space(e)) {
          e = e.substring(r.raw.length), r.raw.length === 1 && n.length > 0 ? n[n.length - 1].raw += `
` : n.push(r);
          continue;
        }
        if (r = this.tokenizer.code(e)) {
          e = e.substring(r.raw.length), s = n[n.length - 1], s && (s.type === "paragraph" || s.type === "text") ? (s.raw += `
` + r.raw, s.text += `
` + r.text, this.inlineQueue[this.inlineQueue.length - 1].src = s.text) : n.push(r);
          continue;
        }
        if (r = this.tokenizer.fences(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.heading(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.hr(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.blockquote(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.list(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.html(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.def(e)) {
          e = e.substring(r.raw.length), s = n[n.length - 1], s && (s.type === "paragraph" || s.type === "text") ? (s.raw += `
` + r.raw, s.text += `
` + r.raw, this.inlineQueue[this.inlineQueue.length - 1].src = s.text) : this.tokens.links[r.tag] || (this.tokens.links[r.tag] = {
            href: r.href,
            title: r.title
          });
          continue;
        }
        if (r = this.tokenizer.table(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.lheading(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (i = e, this.options.extensions && this.options.extensions.startBlock) {
          let l = 1 / 0;
          const a = e.slice(1);
          let c;
          this.options.extensions.startBlock.forEach(function(u) {
            c = u.call({ lexer: this }, a), typeof c == "number" && c >= 0 && (l = Math.min(l, c));
          }), l < 1 / 0 && l >= 0 && (i = e.substring(0, l + 1));
        }
        if (this.state.top && (r = this.tokenizer.paragraph(i))) {
          s = n[n.length - 1], o && s.type === "paragraph" ? (s.raw += `
` + r.raw, s.text += `
` + r.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = s.text) : n.push(r), o = i.length !== e.length, e = e.substring(r.raw.length);
          continue;
        }
        if (r = this.tokenizer.text(e)) {
          e = e.substring(r.raw.length), s = n[n.length - 1], s && s.type === "text" ? (s.raw += `
` + r.raw, s.text += `
` + r.text, this.inlineQueue.pop(), this.inlineQueue[this.inlineQueue.length - 1].src = s.text) : n.push(r);
          continue;
        }
        if (e) {
          const l = "Infinite loop on byte: " + e.charCodeAt(0);
          if (this.options.silent) {
            console.error(l);
            break;
          } else
            throw new Error(l);
        }
      }
    return this.state.top = true, n;
  }
  inline(e, n) {
    this.inlineQueue.push({ src: e, tokens: n });
  }
  inlineTokens(e, n = []) {
    let r, s, i, o = e, l, a, c;
    if (this.tokens.links) {
      const u = Object.keys(this.tokens.links);
      if (u.length > 0)
        for (; (l = this.tokenizer.rules.inline.reflinkSearch.exec(o)) != null; )
          u.includes(l[0].slice(l[0].lastIndexOf("[") + 1, -1)) && (o = o.slice(0, l.index) + "[" + yu("a", l[0].length - 2) + "]" + o.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex));
    }
    for (; (l = this.tokenizer.rules.inline.blockSkip.exec(o)) != null; )
      o = o.slice(0, l.index) + "[" + yu("a", l[0].length - 2) + "]" + o.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);
    for (; (l = this.tokenizer.rules.inline.escapedEmSt.exec(o)) != null; )
      o = o.slice(0, l.index) + "++" + o.slice(this.tokenizer.rules.inline.escapedEmSt.lastIndex);
    for (; e; )
      if (a || (c = ""), a = false, !(this.options.extensions && this.options.extensions.inline && this.options.extensions.inline.some((u) => (r = u.call({ lexer: this }, e, n)) ? (e = e.substring(r.raw.length), n.push(r), true) : false))) {
        if (r = this.tokenizer.escape(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.tag(e)) {
          e = e.substring(r.raw.length), s = n[n.length - 1], s && r.type === "text" && s.type === "text" ? (s.raw += r.raw, s.text += r.text) : n.push(r);
          continue;
        }
        if (r = this.tokenizer.link(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.reflink(e, this.tokens.links)) {
          e = e.substring(r.raw.length), s = n[n.length - 1], s && r.type === "text" && s.type === "text" ? (s.raw += r.raw, s.text += r.text) : n.push(r);
          continue;
        }
        if (r = this.tokenizer.emStrong(e, o, c)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.codespan(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.br(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.del(e)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (r = this.tokenizer.autolink(e, vu)) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (!this.state.inLink && (r = this.tokenizer.url(e, vu))) {
          e = e.substring(r.raw.length), n.push(r);
          continue;
        }
        if (i = e, this.options.extensions && this.options.extensions.startInline) {
          let u = 1 / 0;
          const h = e.slice(1);
          let f;
          this.options.extensions.startInline.forEach(function(p) {
            f = p.call({ lexer: this }, h), typeof f == "number" && f >= 0 && (u = Math.min(u, f));
          }), u < 1 / 0 && u >= 0 && (i = e.substring(0, u + 1));
        }
        if (r = this.tokenizer.inlineText(i, CA)) {
          e = e.substring(r.raw.length), r.raw.slice(-1) !== "_" && (c = r.raw.slice(-1)), a = true, s = n[n.length - 1], s && s.type === "text" ? (s.raw += r.raw, s.text += r.text) : n.push(r);
          continue;
        }
        if (e) {
          const u = "Infinite loop on byte: " + e.charCodeAt(0);
          if (this.options.silent) {
            console.error(u);
            break;
          } else
            throw new Error(u);
        }
      }
    return n;
  }
};
var bc = class {
  static {
    __name(this, "bc");
  }
  constructor(e) {
    this.options = e || Bs;
  }
  code(e, n, r) {
    const s = (n || "").match(/\S*/)[0];
    if (this.options.highlight) {
      const i = this.options.highlight(e, s);
      i != null && i !== e && (r = true, e = i);
    }
    return e = e.replace(/\n$/, "") + `
`, s ? '<pre><code class="' + this.options.langPrefix + pt(s, true) + '">' + (r ? e : pt(e, true)) + `</code></pre>
` : "<pre><code>" + (r ? e : pt(e, true)) + `</code></pre>
`;
  }
  blockquote(e) {
    return `<blockquote>
` + e + `</blockquote>
`;
  }
  html(e) {
    return e;
  }
  heading(e, n, r, s) {
    return this.options.headerIds ? "<h" + n + ' id="' + this.options.headerPrefix + s.slug(r) + '">' + e + "</h" + n + `>
` : "<h" + n + ">" + e + "</h" + n + `>
`;
  }
  hr() {
    return this.options.xhtml ? `<hr/>
` : `<hr>
`;
  }
  list(e, n, r) {
    const s = n ? "ol" : "ul", i = n && r !== 1 ? ' start="' + r + '"' : "";
    return "<" + s + i + `>
` + e + "</" + s + `>
`;
  }
  listitem(e) {
    return "<li>" + e + `</li>
`;
  }
  checkbox(e) {
    return "<input " + (e ? 'checked="" ' : "") + 'disabled="" type="checkbox"' + (this.options.xhtml ? " /" : "") + "> ";
  }
  paragraph(e) {
    return "<p>" + e + `</p>
`;
  }
  table(e, n) {
    return n && (n = "<tbody>" + n + "</tbody>"), `<table>
<thead>
` + e + `</thead>
` + n + `</table>
`;
  }
  tablerow(e) {
    return `<tr>
` + e + `</tr>
`;
  }
  tablecell(e, n) {
    const r = n.header ? "th" : "td";
    return (n.align ? "<" + r + ' align="' + n.align + '">' : "<" + r + ">") + e + "</" + r + `>
`;
  }
  strong(e) {
    return "<strong>" + e + "</strong>";
  }
  em(e) {
    return "<em>" + e + "</em>";
  }
  codespan(e) {
    return "<code>" + e + "</code>";
  }
  br() {
    return this.options.xhtml ? "<br/>" : "<br>";
  }
  del(e) {
    return "<del>" + e + "</del>";
  }
  link(e, n, r) {
    if (e = Lu(this.options.sanitize, this.options.baseUrl, e), e === null)
      return r;
    let s = '<a href="' + pt(e) + '"';
    return n && (s += ' title="' + n + '"'), s += ">" + r + "</a>", s;
  }
  image(e, n, r) {
    if (e = Lu(this.options.sanitize, this.options.baseUrl, e), e === null)
      return r;
    let s = '<img src="' + e + '" alt="' + r + '"';
    return n && (s += ' title="' + n + '"'), s += this.options.xhtml ? "/>" : ">", s;
  }
  text(e) {
    return e;
  }
};
var o6 = class {
  static {
    __name(this, "o6");
  }
  strong(e) {
    return e;
  }
  em(e) {
    return e;
  }
  codespan(e) {
    return e;
  }
  del(e) {
    return e;
  }
  html(e) {
    return e;
  }
  text(e) {
    return e;
  }
  link(e, n, r) {
    return "" + r;
  }
  image(e, n, r) {
    return "" + r;
  }
  br() {
    return "";
  }
};
var l6 = class {
  static {
    __name(this, "l6");
  }
  constructor() {
    this.seen = {};
  }
  serialize(e) {
    return e.toLowerCase().trim().replace(/<[!\/a-z].*?>/ig, "").replace(/[\u2000-\u206F\u2E00-\u2E7F\\'!"#$%&()*+,./:;<=>?@[\]^`{|}~]/g, "").replace(/\s/g, "-");
  }
  getNextSafeSlug(e, n) {
    let r = e, s = 0;
    if (this.seen.hasOwnProperty(r)) {
      s = this.seen[e];
      do
        s++, r = e + "-" + s;
      while (this.seen.hasOwnProperty(r));
    }
    return n || (this.seen[e] = s, this.seen[r] = 0), r;
  }
  slug(e, n = {}) {
    const r = this.serialize(e);
    return this.getNextSafeSlug(r, n.dryrun);
  }
};
var Kn = class _Kn {
  static {
    __name(this, "Kn");
  }
  constructor(e) {
    this.options = e || Bs, this.options.renderer = this.options.renderer || new bc(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.textRenderer = new o6(), this.slugger = new l6();
  }
  static parse(e, n) {
    return new _Kn(n).parse(e);
  }
  static parseInline(e, n) {
    return new _Kn(n).parseInline(e);
  }
  parse(e, n = true) {
    let r = "", s, i, o, l, a, c, u, h, f, p, x, y, A, _, m, C, E, P, U;
    const j = e.length;
    for (s = 0; s < j; s++) {
      if (p = e[s], this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[p.type] && (U = this.options.extensions.renderers[p.type].call({ parser: this }, p), U !== false || !["space", "hr", "heading", "code", "table", "blockquote", "list", "html", "paragraph", "text"].includes(p.type))) {
        r += U || "";
        continue;
      }
      switch (p.type) {
        case "space":
          continue;
        case "hr": {
          r += this.renderer.hr();
          continue;
        }
        case "heading": {
          r += this.renderer.heading(
            this.parseInline(p.tokens),
            p.depth,
            s6(this.parseInline(p.tokens, this.textRenderer)),
            this.slugger
          );
          continue;
        }
        case "code": {
          r += this.renderer.code(
            p.text,
            p.lang,
            p.escaped
          );
          continue;
        }
        case "table": {
          for (h = "", u = "", l = p.header.length, i = 0; i < l; i++)
            u += this.renderer.tablecell(
              this.parseInline(p.header[i].tokens),
              { header: true, align: p.align[i] }
            );
          for (h += this.renderer.tablerow(u), f = "", l = p.rows.length, i = 0; i < l; i++) {
            for (c = p.rows[i], u = "", a = c.length, o = 0; o < a; o++)
              u += this.renderer.tablecell(
                this.parseInline(c[o].tokens),
                { header: false, align: p.align[o] }
              );
            f += this.renderer.tablerow(u);
          }
          r += this.renderer.table(h, f);
          continue;
        }
        case "blockquote": {
          f = this.parse(p.tokens), r += this.renderer.blockquote(f);
          continue;
        }
        case "list": {
          for (x = p.ordered, y = p.start, A = p.loose, l = p.items.length, f = "", i = 0; i < l; i++)
            m = p.items[i], C = m.checked, E = m.task, _ = "", m.task && (P = this.renderer.checkbox(C), A ? m.tokens.length > 0 && m.tokens[0].type === "paragraph" ? (m.tokens[0].text = P + " " + m.tokens[0].text, m.tokens[0].tokens && m.tokens[0].tokens.length > 0 && m.tokens[0].tokens[0].type === "text" && (m.tokens[0].tokens[0].text = P + " " + m.tokens[0].tokens[0].text)) : m.tokens.unshift({
              type: "text",
              text: P
            }) : _ += P), _ += this.parse(m.tokens, A), f += this.renderer.listitem(_, E, C);
          r += this.renderer.list(f, x, y);
          continue;
        }
        case "html": {
          r += this.renderer.html(p.text);
          continue;
        }
        case "paragraph": {
          r += this.renderer.paragraph(this.parseInline(p.tokens));
          continue;
        }
        case "text": {
          for (f = p.tokens ? this.parseInline(p.tokens) : p.text; s + 1 < j && e[s + 1].type === "text"; )
            p = e[++s], f += `
` + (p.tokens ? this.parseInline(p.tokens) : p.text);
          r += n ? this.renderer.paragraph(f) : f;
          continue;
        }
        default: {
          const k = 'Token with "' + p.type + '" type was not found.';
          if (this.options.silent) {
            console.error(k);
            return;
          } else
            throw new Error(k);
        }
      }
    }
    return r;
  }
  parseInline(e, n) {
    n = n || this.renderer;
    let r = "", s, i, o;
    const l = e.length;
    for (s = 0; s < l; s++) {
      if (i = e[s], this.options.extensions && this.options.extensions.renderers && this.options.extensions.renderers[i.type] && (o = this.options.extensions.renderers[i.type].call({ parser: this }, i), o !== false || !["escape", "html", "link", "image", "strong", "em", "codespan", "br", "del", "text"].includes(i.type))) {
        r += o || "";
        continue;
      }
      switch (i.type) {
        case "escape": {
          r += n.text(i.text);
          break;
        }
        case "html": {
          r += n.html(i.text);
          break;
        }
        case "link": {
          r += n.link(i.href, i.title, this.parseInline(i.tokens, n));
          break;
        }
        case "image": {
          r += n.image(i.href, i.title, i.text);
          break;
        }
        case "strong": {
          r += n.strong(this.parseInline(i.tokens, n));
          break;
        }
        case "em": {
          r += n.em(this.parseInline(i.tokens, n));
          break;
        }
        case "codespan": {
          r += n.codespan(i.text);
          break;
        }
        case "br": {
          r += n.br();
          break;
        }
        case "del": {
          r += n.del(this.parseInline(i.tokens, n));
          break;
        }
        case "text": {
          r += n.text(i.text);
          break;
        }
        default: {
          const a = 'Token with "' + i.type + '" type was not found.';
          if (this.options.silent) {
            console.error(a);
            return;
          } else
            throw new Error(a);
        }
      }
    }
    return r;
  }
};
function pe(t, e, n) {
  if (typeof t > "u" || t === null)
    throw new Error("marked(): input parameter is undefined or null");
  if (typeof t != "string")
    throw new Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected");
  if (typeof e == "function" && (n = e, e = null), e = mn({}, pe.defaults, e || {}), i6(e), n) {
    const r = e.highlight;
    let s;
    try {
      s = qn.lex(t, e);
    } catch (l) {
      return n(l);
    }
    const i = /* @__PURE__ */ __name(function(l) {
      let a;
      if (!l)
        try {
          e.walkTokens && pe.walkTokens(s, e.walkTokens), a = Kn.parse(s, e);
        } catch (c) {
          l = c;
        }
      return e.highlight = r, l ? n(l) : n(null, a);
    }, "i");
    if (!r || r.length < 3 || (delete e.highlight, !s.length))
      return i();
    let o = 0;
    pe.walkTokens(s, function(l) {
      l.type === "code" && (o++, setTimeout(() => {
        r(l.text, l.lang, function(a, c) {
          if (a)
            return i(a);
          c != null && c !== l.text && (l.text = c, l.escaped = true), o--, o === 0 && i();
        });
      }, 0));
    }), o === 0 && i();
    return;
  }
  try {
    const r = qn.lex(t, e);
    return e.walkTokens && pe.walkTokens(r, e.walkTokens), Kn.parse(r, e);
  } catch (r) {
    if (r.message += `
Please report this to https://github.com/markedjs/marked.`, e.silent)
      return "<p>An error occurred:</p><pre>" + pt(r.message + "", true) + "</pre>";
    throw r;
  }
}
__name(pe, "pe");
pe.options = pe.setOptions = function(t) {
  return mn(pe.defaults, t), iA(pe.defaults), pe;
};
pe.getDefaults = r6;
pe.defaults = Bs;
pe.use = function(...t) {
  const e = mn({}, ...t), n = pe.defaults.extensions || { renderers: {}, childTokens: {} };
  let r;
  t.forEach((s) => {
    if (s.extensions && (r = true, s.extensions.forEach((i) => {
      if (!i.name)
        throw new Error("extension name required");
      if (i.renderer) {
        const o = n.renderers ? n.renderers[i.name] : null;
        o ? n.renderers[i.name] = function(...l) {
          let a = i.renderer.apply(this, l);
          return a === false && (a = o.apply(this, l)), a;
        } : n.renderers[i.name] = i.renderer;
      }
      if (i.tokenizer) {
        if (!i.level || i.level !== "block" && i.level !== "inline")
          throw new Error("extension level must be 'block' or 'inline'");
        n[i.level] ? n[i.level].unshift(i.tokenizer) : n[i.level] = [i.tokenizer], i.start && (i.level === "block" ? n.startBlock ? n.startBlock.push(i.start) : n.startBlock = [i.start] : i.level === "inline" && (n.startInline ? n.startInline.push(i.start) : n.startInline = [i.start]));
      }
      i.childTokens && (n.childTokens[i.name] = i.childTokens);
    })), s.renderer) {
      const i = pe.defaults.renderer || new bc();
      for (const o in s.renderer) {
        const l = i[o];
        i[o] = (...a) => {
          let c = s.renderer[o].apply(i, a);
          return c === false && (c = l.apply(i, a)), c;
        };
      }
      e.renderer = i;
    }
    if (s.tokenizer) {
      const i = pe.defaults.tokenizer || new vc();
      for (const o in s.tokenizer) {
        const l = i[o];
        i[o] = (...a) => {
          let c = s.tokenizer[o].apply(i, a);
          return c === false && (c = l.apply(i, a)), c;
        };
      }
      e.tokenizer = i;
    }
    if (s.walkTokens) {
      const i = pe.defaults.walkTokens;
      e.walkTokens = function(o) {
        s.walkTokens.call(this, o), i && i.call(this, o);
      };
    }
    r && (e.extensions = n), pe.setOptions(e);
  });
};
pe.walkTokens = function(t, e) {
  for (const n of t)
    switch (e.call(pe, n), n.type) {
      case "table": {
        for (const r of n.header)
          pe.walkTokens(r.tokens, e);
        for (const r of n.rows)
          for (const s of r)
            pe.walkTokens(s.tokens, e);
        break;
      }
      case "list": {
        pe.walkTokens(n.items, e);
        break;
      }
      default:
        pe.defaults.extensions && pe.defaults.extensions.childTokens && pe.defaults.extensions.childTokens[n.type] ? pe.defaults.extensions.childTokens[n.type].forEach(function(r) {
          pe.walkTokens(n[r], e);
        }) : n.tokens && pe.walkTokens(n.tokens, e);
    }
};
pe.parseInline = function(t, e) {
  if (typeof t > "u" || t === null)
    throw new Error("marked.parseInline(): input parameter is undefined or null");
  if (typeof t != "string")
    throw new Error("marked.parseInline(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected");
  e = mn({}, pe.defaults, e || {}), i6(e);
  try {
    const n = qn.lexInline(t, e);
    return e.walkTokens && pe.walkTokens(n, e.walkTokens), Kn.parseInline(n, e);
  } catch (n) {
    if (n.message += `
Please report this to https://github.com/markedjs/marked.`, e.silent)
      return "<p>An error occurred:</p><pre>" + pt(n.message + "", true) + "</pre>";
    throw n;
  }
};
pe.Parser = Kn;
pe.parser = Kn.parse;
pe.Renderer = bc;
pe.TextRenderer = o6;
pe.Lexer = qn;
pe.lexer = qn.lex;
pe.Tokenizer = vc;
pe.Slugger = l6;
pe.parse = pe;
pe.options;
pe.setOptions;
pe.use;
pe.walkTokens;
pe.parseInline;
Kn.parse;
qn.lex;
function wc(t) {
  return t instanceof Map ? t.clear = t.delete = t.set = function() {
    throw new Error("map is read-only");
  } : t instanceof Set && (t.add = t.clear = t.delete = function() {
    throw new Error("set is read-only");
  }), Object.freeze(t), Object.getOwnPropertyNames(t).forEach(function(e) {
    var n = t[e];
    typeof n == "object" && !Object.isFrozen(n) && wc(n);
  }), t;
}
__name(wc, "wc");
var a6 = wc;
var vA = wc;
a6.default = vA;
var bu = class {
  static {
    __name(this, "bu");
  }
  constructor(e) {
    e.data === void 0 && (e.data = {}), this.data = e.data, this.isMatchIgnored = false;
  }
  ignoreMatch() {
    this.isMatchIgnored = true;
  }
};
function ps(t) {
  return t.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#x27;");
}
__name(ps, "ps");
function ar(t, ...e) {
  const n = /* @__PURE__ */ Object.create(null);
  for (const r in t)
    n[r] = t[r];
  return e.forEach(function(r) {
    for (const s in r)
      n[s] = r[s];
  }), n;
}
__name(ar, "ar");
var bA = "</span>";
var wu = /* @__PURE__ */ __name((t) => !!t.kind, "wu");
var wA = class {
  static {
    __name(this, "wA");
  }
  constructor(e, n) {
    this.buffer = "", this.classPrefix = n.classPrefix, e.walk(this);
  }
  addText(e) {
    this.buffer += ps(e);
  }
  openNode(e) {
    if (!wu(e))
      return;
    let n = e.kind;
    e.sublanguage || (n = `${this.classPrefix}${n}`), this.span(n);
  }
  closeNode(e) {
    !wu(e) || (this.buffer += bA);
  }
  value() {
    return this.buffer;
  }
  span(e) {
    this.buffer += `<span class="${e}">`;
  }
};
var Ec = class _Ec {
  static {
    __name(this, "Ec");
  }
  constructor() {
    this.rootNode = { children: [] }, this.stack = [this.rootNode];
  }
  get top() {
    return this.stack[this.stack.length - 1];
  }
  get root() {
    return this.rootNode;
  }
  add(e) {
    this.top.children.push(e);
  }
  openNode(e) {
    const n = { kind: e, children: [] };
    this.add(n), this.stack.push(n);
  }
  closeNode() {
    if (this.stack.length > 1)
      return this.stack.pop();
  }
  closeAllNodes() {
    for (; this.closeNode(); )
      ;
  }
  toJSON() {
    return JSON.stringify(this.rootNode, null, 4);
  }
  walk(e) {
    return this.constructor._walk(e, this.rootNode);
  }
  static _walk(e, n) {
    return typeof n == "string" ? e.addText(n) : n.children && (e.openNode(n), n.children.forEach((r) => this._walk(e, r)), e.closeNode(n)), e;
  }
  static _collapse(e) {
    typeof e != "string" && (!e.children || (e.children.every((n) => typeof n == "string") ? e.children = [e.children.join("")] : e.children.forEach((n) => {
      _Ec._collapse(n);
    })));
  }
};
var EA = class extends Ec {
  static {
    __name(this, "EA");
  }
  constructor(e) {
    super(), this.options = e;
  }
  addKeyword(e, n) {
    e !== "" && (this.openNode(n), this.addText(e), this.closeNode());
  }
  addText(e) {
    e !== "" && this.add(e);
  }
  addSublanguage(e, n) {
    const r = e.root;
    r.kind = n, r.sublanguage = true, this.add(r);
  }
  toHTML() {
    return new wA(this, this.options).value();
  }
  finalize() {
    return true;
  }
};
function TA(t) {
  return new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&"), "m");
}
__name(TA, "TA");
function C0(t) {
  return t ? typeof t == "string" ? t : t.source : null;
}
__name(C0, "C0");
function SA(...t) {
  return t.map((n) => C0(n)).join("");
}
__name(SA, "SA");
function AA(...t) {
  return "(" + t.map((n) => C0(n)).join("|") + ")";
}
__name(AA, "AA");
function RA(t) {
  return new RegExp(t.toString() + "|").exec("").length - 1;
}
__name(RA, "RA");
function kA(t, e) {
  const n = t && t.exec(e);
  return n && n.index === 0;
}
__name(kA, "kA");
var OA = /\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;
function IA(t, e = "|") {
  let n = 0;
  return t.map((r) => {
    n += 1;
    const s = n;
    let i = C0(r), o = "";
    for (; i.length > 0; ) {
      const l = OA.exec(i);
      if (!l) {
        o += i;
        break;
      }
      o += i.substring(0, l.index), i = i.substring(l.index + l[0].length), l[0][0] === "\\" && l[1] ? o += "\\" + String(Number(l[1]) + s) : (o += l[0], l[0] === "(" && n++);
    }
    return o;
  }).map((r) => `(${r})`).join(e);
}
__name(IA, "IA");
var MA = /\b\B/;
var c6 = "[a-zA-Z]\\w*";
var Tc = "[a-zA-Z_]\\w*";
var Sc = "\\b\\d+(\\.\\d+)?";
var u6 = "(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)";
var h6 = "\\b(0b[01]+)";
var NA = "!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~";
var PA = /* @__PURE__ */ __name((t = {}) => {
  const e = /^#![ ]*\//;
  return t.binary && (t.begin = SA(
    e,
    /.*\b/,
    t.binary,
    /\b.*/
  )), ar({
    className: "meta",
    begin: e,
    end: /$/,
    relevance: 0,
    "on:begin": (n, r) => {
      n.index !== 0 && r.ignoreMatch();
    }
  }, t);
}, "PA");
var v0 = {
  begin: "\\\\[\\s\\S]",
  relevance: 0
};
var FA = {
  className: "string",
  begin: "'",
  end: "'",
  illegal: "\\n",
  contains: [v0]
};
var DA = {
  className: "string",
  begin: '"',
  end: '"',
  illegal: "\\n",
  contains: [v0]
};
var d6 = {
  begin: /\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/
};
var V1 = /* @__PURE__ */ __name(function(t, e, n = {}) {
  const r = ar(
    {
      className: "comment",
      begin: t,
      end: e,
      contains: []
    },
    n
  );
  return r.contains.push(d6), r.contains.push({
    className: "doctag",
    begin: "(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",
    relevance: 0
  }), r;
}, "V1");
var BA = V1("//", "$");
var $A = V1("/\\*", "\\*/");
var HA = V1("#", "$");
var UA = {
  className: "number",
  begin: Sc,
  relevance: 0
};
var VA = {
  className: "number",
  begin: u6,
  relevance: 0
};
var zA = {
  className: "number",
  begin: h6,
  relevance: 0
};
var GA = {
  className: "number",
  begin: Sc + "(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",
  relevance: 0
};
var jA = {
  begin: /(?=\/[^/\n]*\/)/,
  contains: [{
    className: "regexp",
    begin: /\//,
    end: /\/[gimuy]*/,
    illegal: /\n/,
    contains: [
      v0,
      {
        begin: /\[/,
        end: /\]/,
        relevance: 0,
        contains: [v0]
      }
    ]
  }]
};
var ZA = {
  className: "title",
  begin: c6,
  relevance: 0
};
var WA = {
  className: "title",
  begin: Tc,
  relevance: 0
};
var qA = {
  begin: "\\.\\s*" + Tc,
  relevance: 0
};
var KA = /* @__PURE__ */ __name(function(t) {
  return Object.assign(
    t,
    {
      "on:begin": (e, n) => {
        n.data._beginMatch = e[1];
      },
      "on:end": (e, n) => {
        n.data._beginMatch !== e[1] && n.ignoreMatch();
      }
    }
  );
}, "KA");
var _i = /* @__PURE__ */ Object.freeze({
  __proto__: null,
  MATCH_NOTHING_RE: MA,
  IDENT_RE: c6,
  UNDERSCORE_IDENT_RE: Tc,
  NUMBER_RE: Sc,
  C_NUMBER_RE: u6,
  BINARY_NUMBER_RE: h6,
  RE_STARTERS_RE: NA,
  SHEBANG: PA,
  BACKSLASH_ESCAPE: v0,
  APOS_STRING_MODE: FA,
  QUOTE_STRING_MODE: DA,
  PHRASAL_WORDS_MODE: d6,
  COMMENT: V1,
  C_LINE_COMMENT_MODE: BA,
  C_BLOCK_COMMENT_MODE: $A,
  HASH_COMMENT_MODE: HA,
  NUMBER_MODE: UA,
  C_NUMBER_MODE: VA,
  BINARY_NUMBER_MODE: zA,
  CSS_NUMBER_MODE: GA,
  REGEXP_MODE: jA,
  TITLE_MODE: ZA,
  UNDERSCORE_TITLE_MODE: WA,
  METHOD_GUARD: qA,
  END_SAME_AS_BEGIN: KA
});
function YA(t, e) {
  t.input[t.index - 1] === "." && e.ignoreMatch();
}
__name(YA, "YA");
function XA(t, e) {
  !e || !t.beginKeywords || (t.begin = "\\b(" + t.beginKeywords.split(" ").join("|") + ")(?!\\.)(?=\\b|\\s)", t.__beforeBegin = YA, t.keywords = t.keywords || t.beginKeywords, delete t.beginKeywords, t.relevance === void 0 && (t.relevance = 0));
}
__name(XA, "XA");
function QA(t, e) {
  !Array.isArray(t.illegal) || (t.illegal = AA(...t.illegal));
}
__name(QA, "QA");
function JA(t, e) {
  if (!!t.match) {
    if (t.begin || t.end)
      throw new Error("begin & end are not supported with match");
    t.begin = t.match, delete t.match;
  }
}
__name(JA, "JA");
function eR(t, e) {
  t.relevance === void 0 && (t.relevance = 1);
}
__name(eR, "eR");
var tR = [
  "of",
  "and",
  "for",
  "in",
  "not",
  "or",
  "if",
  "then",
  "parent",
  "list",
  "value"
];
var nR = "keyword";
function f6(t, e, n = nR) {
  const r = {};
  return typeof t == "string" ? s(n, t.split(" ")) : Array.isArray(t) ? s(n, t) : Object.keys(t).forEach(function(i) {
    Object.assign(
      r,
      f6(t[i], e, i)
    );
  }), r;
  function s(i, o) {
    e && (o = o.map((l) => l.toLowerCase())), o.forEach(function(l) {
      const a = l.split("|");
      r[a[0]] = [i, rR(a[0], a[1])];
    });
  }
  __name(s, "s");
}
__name(f6, "f6");
function rR(t, e) {
  return e ? Number(e) : sR(t) ? 0 : 1;
}
__name(rR, "rR");
function sR(t) {
  return tR.includes(t.toLowerCase());
}
__name(sR, "sR");
function iR(t, { plugins: e }) {
  function n(l, a) {
    return new RegExp(
      C0(l),
      "m" + (t.case_insensitive ? "i" : "") + (a ? "g" : "")
    );
  }
  __name(n, "n");
  class r {
    static {
      __name(this, "r");
    }
    constructor() {
      this.matchIndexes = {}, this.regexes = [], this.matchAt = 1, this.position = 0;
    }
    addRule(a, c) {
      c.position = this.position++, this.matchIndexes[this.matchAt] = c, this.regexes.push([c, a]), this.matchAt += RA(a) + 1;
    }
    compile() {
      this.regexes.length === 0 && (this.exec = () => null);
      const a = this.regexes.map((c) => c[1]);
      this.matcherRe = n(IA(a), true), this.lastIndex = 0;
    }
    exec(a) {
      this.matcherRe.lastIndex = this.lastIndex;
      const c = this.matcherRe.exec(a);
      if (!c)
        return null;
      const u = c.findIndex((f, p) => p > 0 && f !== void 0), h = this.matchIndexes[u];
      return c.splice(0, u), Object.assign(c, h);
    }
  }
  class s {
    static {
      __name(this, "s");
    }
    constructor() {
      this.rules = [], this.multiRegexes = [], this.count = 0, this.lastIndex = 0, this.regexIndex = 0;
    }
    getMatcher(a) {
      if (this.multiRegexes[a])
        return this.multiRegexes[a];
      const c = new r();
      return this.rules.slice(a).forEach(([u, h]) => c.addRule(u, h)), c.compile(), this.multiRegexes[a] = c, c;
    }
    resumingScanAtSamePosition() {
      return this.regexIndex !== 0;
    }
    considerAll() {
      this.regexIndex = 0;
    }
    addRule(a, c) {
      this.rules.push([a, c]), c.type === "begin" && this.count++;
    }
    exec(a) {
      const c = this.getMatcher(this.regexIndex);
      c.lastIndex = this.lastIndex;
      let u = c.exec(a);
      if (this.resumingScanAtSamePosition() && !(u && u.index === this.lastIndex)) {
        const h = this.getMatcher(0);
        h.lastIndex = this.lastIndex + 1, u = h.exec(a);
      }
      return u && (this.regexIndex += u.position + 1, this.regexIndex === this.count && this.considerAll()), u;
    }
  }
  function i(l) {
    const a = new s();
    return l.contains.forEach((c) => a.addRule(c.begin, { rule: c, type: "begin" })), l.terminatorEnd && a.addRule(l.terminatorEnd, { type: "end" }), l.illegal && a.addRule(l.illegal, { type: "illegal" }), a;
  }
  __name(i, "i");
  function o(l, a) {
    const c = l;
    if (l.isCompiled)
      return c;
    [
      JA
    ].forEach((h) => h(l, a)), t.compilerExtensions.forEach((h) => h(l, a)), l.__beforeBegin = null, [
      XA,
      QA,
      eR
    ].forEach((h) => h(l, a)), l.isCompiled = true;
    let u = null;
    if (typeof l.keywords == "object" && (u = l.keywords.$pattern, delete l.keywords.$pattern), l.keywords && (l.keywords = f6(l.keywords, t.case_insensitive)), l.lexemes && u)
      throw new Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ");
    return u = u || l.lexemes || /\w+/, c.keywordPatternRe = n(u, true), a && (l.begin || (l.begin = /\B|\b/), c.beginRe = n(l.begin), l.endSameAsBegin && (l.end = l.begin), !l.end && !l.endsWithParent && (l.end = /\B|\b/), l.end && (c.endRe = n(l.end)), c.terminatorEnd = C0(l.end) || "", l.endsWithParent && a.terminatorEnd && (c.terminatorEnd += (l.end ? "|" : "") + a.terminatorEnd)), l.illegal && (c.illegalRe = n(l.illegal)), l.contains || (l.contains = []), l.contains = [].concat(...l.contains.map(function(h) {
      return oR(h === "self" ? l : h);
    })), l.contains.forEach(function(h) {
      o(h, c);
    }), l.starts && o(l.starts, a), c.matcher = i(c), c;
  }
  __name(o, "o");
  if (t.compilerExtensions || (t.compilerExtensions = []), t.contains && t.contains.includes("self"))
    throw new Error("ERR: contains `self` is not supported at the top-level of a language.  See documentation.");
  return t.classNameAliases = ar(t.classNameAliases || {}), o(t);
}
__name(iR, "iR");
function p6(t) {
  return t ? t.endsWithParent || p6(t.starts) : false;
}
__name(p6, "p6");
function oR(t) {
  return t.variants && !t.cachedVariants && (t.cachedVariants = t.variants.map(function(e) {
    return ar(t, { variants: null }, e);
  })), t.cachedVariants ? t.cachedVariants : p6(t) ? ar(t, { starts: t.starts ? ar(t.starts) : null }) : Object.isFrozen(t) ? ar(t) : t;
}
__name(oR, "oR");
var lR = "10.7.3";
function aR(t) {
  return Boolean(t || t === "");
}
__name(aR, "aR");
function cR(t) {
  const e = {
    props: ["language", "code", "autodetect"],
    data: function() {
      return {
        detectedLanguage: "",
        unknownLanguage: false
      };
    },
    computed: {
      className() {
        return this.unknownLanguage ? "" : "hljs " + this.detectedLanguage;
      },
      highlighted() {
        if (!this.autoDetect && !t.getLanguage(this.language))
          return console.warn(`The language "${this.language}" you specified could not be found.`), this.unknownLanguage = true, ps(this.code);
        let r = {};
        return this.autoDetect ? (r = t.highlightAuto(this.code), this.detectedLanguage = r.language) : (r = t.highlight(this.language, this.code, this.ignoreIllegals), this.detectedLanguage = this.language), r.value;
      },
      autoDetect() {
        return !this.language || aR(this.autodetect);
      },
      ignoreIllegals() {
        return true;
      }
    },
    render(r) {
      return r("pre", {}, [
        r("code", {
          class: this.className,
          domProps: { innerHTML: this.highlighted }
        })
      ]);
    }
  };
  return { Component: e, VuePlugin: {
    install(r) {
      r.component("highlightjs", e);
    }
  } };
}
__name(cR, "cR");
var uR = {
  "after:highlightElement": ({ el: t, result: e, text: n }) => {
    const r = Eu(t);
    if (!r.length)
      return;
    const s = document.createElement("div");
    s.innerHTML = e.value, e.value = hR(r, Eu(s), n);
  }
};
function ml(t) {
  return t.nodeName.toLowerCase();
}
__name(ml, "ml");
function Eu(t) {
  const e = [];
  return (/* @__PURE__ */ __name(function n(r, s) {
    for (let i = r.firstChild; i; i = i.nextSibling)
      i.nodeType === 3 ? s += i.nodeValue.length : i.nodeType === 1 && (e.push({
        event: "start",
        offset: s,
        node: i
      }), s = n(i, s), ml(i).match(/br|hr|img|input/) || e.push({
        event: "stop",
        offset: s,
        node: i
      }));
    return s;
  }, "n"))(t, 0), e;
}
__name(Eu, "Eu");
function hR(t, e, n) {
  let r = 0, s = "";
  const i = [];
  function o() {
    return !t.length || !e.length ? t.length ? t : e : t[0].offset !== e[0].offset ? t[0].offset < e[0].offset ? t : e : e[0].event === "start" ? t : e;
  }
  __name(o, "o");
  function l(u) {
    function h(f) {
      return " " + f.nodeName + '="' + ps(f.value) + '"';
    }
    __name(h, "h");
    s += "<" + ml(u) + [].map.call(u.attributes, h).join("") + ">";
  }
  __name(l, "l");
  function a(u) {
    s += "</" + ml(u) + ">";
  }
  __name(a, "a");
  function c(u) {
    (u.event === "start" ? l : a)(u.node);
  }
  __name(c, "c");
  for (; t.length || e.length; ) {
    let u = o();
    if (s += ps(n.substring(r, u[0].offset)), r = u[0].offset, u === t) {
      i.reverse().forEach(a);
      do
        c(u.splice(0, 1)[0]), u = o();
      while (u === t && u.length && u[0].offset === r);
      i.reverse().forEach(l);
    } else
      u[0].event === "start" ? i.push(u[0].node) : i.pop(), c(u.splice(0, 1)[0]);
  }
  return s + ps(n.substr(r));
}
__name(hR, "hR");
var Tu = {};
var mo = /* @__PURE__ */ __name((t) => {
  console.error(t);
}, "mo");
var Su = /* @__PURE__ */ __name((t, ...e) => {
  console.log(`WARN: ${t}`, ...e);
}, "Su");
var sn = /* @__PURE__ */ __name((t, e) => {
  Tu[`${t}/${e}`] || (console.log(`Deprecated as of ${t}. ${e}`), Tu[`${t}/${e}`] = true);
}, "sn");
var xo = ps;
var Au = ar;
var Ru = Symbol("nomatch");
var dR = /* @__PURE__ */ __name(function(t) {
  const e = /* @__PURE__ */ Object.create(null), n = /* @__PURE__ */ Object.create(null), r = [];
  let s = true;
  const i = /(^(<[^>]+>|\t|)+|\n)/gm, o = "Could not find the language '{}', did you forget to load/include a language module?", l = { disableAutodetect: true, name: "Plain text", contains: [] };
  let a = {
    noHighlightRe: /^(no-?highlight)$/i,
    languageDetectRe: /\blang(?:uage)?-([\w-]+)\b/i,
    classPrefix: "hljs-",
    tabReplace: null,
    useBR: false,
    languages: null,
    __emitter: EA
  };
  function c(M) {
    return a.noHighlightRe.test(M);
  }
  __name(c, "c");
  function u(M) {
    let se = M.className + " ";
    se += M.parentNode ? M.parentNode.className : "";
    const Ae = a.languageDetectRe.exec(se);
    if (Ae) {
      const Re = Ne(Ae[1]);
      return Re || (Su(o.replace("{}", Ae[1])), Su("Falling back to no-highlight mode for this block.", M)), Re ? Ae[1] : "no-highlight";
    }
    return se.split(/\s+/).find((Re) => c(Re) || Ne(Re));
  }
  __name(u, "u");
  function h(M, se, Ae, Re) {
    let tt = "", xn = "";
    typeof se == "object" ? (tt = M, Ae = se.ignoreIllegals, xn = se.language, Re = void 0) : (sn("10.7.0", "highlight(lang, code, ...args) has been deprecated."), sn("10.7.0", `Please use highlight(code, options) instead.
https://github.com/highlightjs/highlight.js/issues/2277`), xn = M, tt = se);
    const mt = {
      code: tt,
      language: xn
    };
    Qe("before:highlight", mt);
    const It = mt.result ? mt.result : f(mt.language, mt.code, Ae, Re);
    return It.code = mt.code, Qe("after:highlight", It), It;
  }
  __name(h, "h");
  function f(M, se, Ae, Re) {
    function tt(Q, ce) {
      const Ee = H.case_insensitive ? ce[0].toLowerCase() : ce[0];
      return Object.prototype.hasOwnProperty.call(Q.keywords, Ee) && Q.keywords[Ee];
    }
    __name(tt, "tt");
    function xn() {
      if (!F.keywords) {
        X.addText(ne);
        return;
      }
      let Q = 0;
      F.keywordPatternRe.lastIndex = 0;
      let ce = F.keywordPatternRe.exec(ne), Ee = "";
      for (; ce; ) {
        Ee += ne.substring(Q, ce.index);
        const Ie = tt(F, ce);
        if (Ie) {
          const [xt, ft] = Ie;
          if (X.addText(Ee), Ee = "", ve += ft, xt.startsWith("_"))
            Ee += ce[0];
          else {
            const nn = H.classNameAliases[xt] || xt;
            X.addKeyword(ce[0], nn);
          }
        } else
          Ee += ce[0];
        Q = F.keywordPatternRe.lastIndex, ce = F.keywordPatternRe.exec(ne);
      }
      Ee += ne.substr(Q), X.addText(Ee);
    }
    __name(xn, "xn");
    function mt() {
      if (ne === "")
        return;
      let Q = null;
      if (typeof F.subLanguage == "string") {
        if (!e[F.subLanguage]) {
          X.addText(ne);
          return;
        }
        Q = f(F.subLanguage, ne, true, ie[F.subLanguage]), ie[F.subLanguage] = Q.top;
      } else
        Q = x(ne, F.subLanguage.length ? F.subLanguage : null);
      F.relevance > 0 && (ve += Q.relevance), X.addSublanguage(Q.emitter, Q.language);
    }
    __name(mt, "mt");
    function It() {
      F.subLanguage != null ? mt() : xn(), ne = "";
    }
    __name(It, "It");
    function Mt(Q) {
      return Q.className && X.openNode(H.classNameAliases[Q.className] || Q.className), F = Object.create(Q, { parent: { value: F } }), F;
    }
    __name(Mt, "Mt");
    function g(Q, ce, Ee) {
      let Ie = kA(Q.endRe, Ee);
      if (Ie) {
        if (Q["on:end"]) {
          const xt = new bu(Q);
          Q["on:end"](ce, xt), xt.isMatchIgnored && (Ie = false);
        }
        if (Ie) {
          for (; Q.endsParent && Q.parent; )
            Q = Q.parent;
          return Q;
        }
      }
      if (Q.endsWithParent)
        return g(Q.parent, ce, Ee);
    }
    __name(g, "g");
    function L(Q) {
      return F.matcher.regexIndex === 0 ? (ne += Q[0], 1) : (Je = true, 0);
    }
    __name(L, "L");
    function T(Q) {
      const ce = Q[0], Ee = Q.rule, Ie = new bu(Ee), xt = [Ee.__beforeBegin, Ee["on:begin"]];
      for (const ft of xt)
        if (!!ft && (ft(Q, Ie), Ie.isMatchIgnored))
          return L(ce);
      return Ee && Ee.endSameAsBegin && (Ee.endRe = TA(ce)), Ee.skip ? ne += ce : (Ee.excludeBegin && (ne += ce), It(), !Ee.returnBegin && !Ee.excludeBegin && (ne = ce)), Mt(Ee), Ee.returnBegin ? 0 : ce.length;
    }
    __name(T, "T");
    function I(Q) {
      const ce = Q[0], Ee = se.substr(Q.index), Ie = g(F, Q, Ee);
      if (!Ie)
        return Ru;
      const xt = F;
      xt.skip ? ne += ce : (xt.returnEnd || xt.excludeEnd || (ne += ce), It(), xt.excludeEnd && (ne = ce));
      do
        F.className && X.closeNode(), !F.skip && !F.subLanguage && (ve += F.relevance), F = F.parent;
      while (F !== Ie.parent);
      return Ie.starts && (Ie.endSameAsBegin && (Ie.starts.endRe = Ie.endRe), Mt(Ie.starts)), xt.returnEnd ? 0 : ce.length;
    }
    __name(I, "I");
    function O() {
      const Q = [];
      for (let ce = F; ce !== H; ce = ce.parent)
        ce.className && Q.unshift(ce.className);
      Q.forEach((ce) => X.openNode(ce));
    }
    __name(O, "O");
    let $ = {};
    function K(Q, ce) {
      const Ee = ce && ce[0];
      if (ne += Q, Ee == null)
        return It(), 0;
      if ($.type === "begin" && ce.type === "end" && $.index === ce.index && Ee === "") {
        if (ne += se.slice(ce.index, ce.index + 1), !s) {
          const Ie = new Error("0 width match regex");
          throw Ie.languageName = M, Ie.badRule = $.rule, Ie;
        }
        return 1;
      }
      if ($ = ce, ce.type === "begin")
        return T(ce);
      if (ce.type === "illegal" && !Ae) {
        const Ie = new Error('Illegal lexeme "' + Ee + '" for mode "' + (F.className || "<unnamed>") + '"');
        throw Ie.mode = F, Ie;
      } else if (ce.type === "end") {
        const Ie = I(ce);
        if (Ie !== Ru)
          return Ie;
      }
      if (ce.type === "illegal" && Ee === "")
        return 1;
      if (De > 1e5 && De > ce.index * 3)
        throw new Error("potential infinite loop, way more iterations than matches");
      return ne += Ee, Ee.length;
    }
    __name(K, "K");
    const H = Ne(M);
    if (!H)
      throw mo(o.replace("{}", M)), new Error('Unknown language: "' + M + '"');
    const V = iR(H, { plugins: r });
    let N = "", F = Re || V;
    const ie = {}, X = new a.__emitter(a);
    O();
    let ne = "", ve = 0, Pe = 0, De = 0, Je = false;
    try {
      for (F.matcher.considerAll(); ; ) {
        De++, Je ? Je = false : F.matcher.considerAll(), F.matcher.lastIndex = Pe;
        const Q = F.matcher.exec(se);
        if (!Q)
          break;
        const ce = se.substring(Pe, Q.index), Ee = K(ce, Q);
        Pe = Q.index + Ee;
      }
      return K(se.substr(Pe)), X.closeAllNodes(), X.finalize(), N = X.toHTML(), {
        relevance: Math.floor(ve),
        value: N,
        language: M,
        illegal: false,
        emitter: X,
        top: F
      };
    } catch (Q) {
      if (Q.message && Q.message.includes("Illegal"))
        return {
          illegal: true,
          illegalBy: {
            msg: Q.message,
            context: se.slice(Pe - 100, Pe + 100),
            mode: Q.mode
          },
          sofar: N,
          relevance: 0,
          value: xo(se),
          emitter: X
        };
      if (s)
        return {
          illegal: false,
          relevance: 0,
          value: xo(se),
          emitter: X,
          language: M,
          top: F,
          errorRaised: Q
        };
      throw Q;
    }
  }
  __name(f, "f");
  function p(M) {
    const se = {
      relevance: 0,
      emitter: new a.__emitter(a),
      value: xo(M),
      illegal: false,
      top: l
    };
    return se.emitter.addText(M), se;
  }
  __name(p, "p");
  function x(M, se) {
    se = se || a.languages || Object.keys(e);
    const Ae = p(M), Re = se.filter(Ne).filter(Y).map(
      (Mt) => f(Mt, M, false)
    );
    Re.unshift(Ae);
    const tt = Re.sort((Mt, g) => {
      if (Mt.relevance !== g.relevance)
        return g.relevance - Mt.relevance;
      if (Mt.language && g.language) {
        if (Ne(Mt.language).supersetOf === g.language)
          return 1;
        if (Ne(g.language).supersetOf === Mt.language)
          return -1;
      }
      return 0;
    }), [xn, mt] = tt, It = xn;
    return It.second_best = mt, It;
  }
  __name(x, "x");
  function y(M) {
    return a.tabReplace || a.useBR ? M.replace(i, (se) => se === `
` ? a.useBR ? "<br>" : se : a.tabReplace ? se.replace(/\t/g, a.tabReplace) : se) : M;
  }
  __name(y, "y");
  function A(M, se, Ae) {
    const Re = se ? n[se] : Ae;
    M.classList.add("hljs"), Re && M.classList.add(Re);
  }
  __name(A, "A");
  const _ = {
    "before:highlightElement": ({ el: M }) => {
      a.useBR && (M.innerHTML = M.innerHTML.replace(/\n/g, "").replace(/<br[ /]*>/g, `
`));
    },
    "after:highlightElement": ({ result: M }) => {
      a.useBR && (M.value = M.value.replace(/\n/g, "<br>"));
    }
  }, m = /^(<[^>]+>|\t)+/gm, C = {
    "after:highlightElement": ({ result: M }) => {
      a.tabReplace && (M.value = M.value.replace(
        m,
        (se) => se.replace(/\t/g, a.tabReplace)
      ));
    }
  };
  function E(M) {
    let se = null;
    const Ae = u(M);
    if (c(Ae))
      return;
    Qe(
      "before:highlightElement",
      { el: M, language: Ae }
    ), se = M;
    const Re = se.textContent, tt = Ae ? h(Re, { language: Ae, ignoreIllegals: true }) : x(Re);
    Qe("after:highlightElement", { el: M, result: tt, text: Re }), M.innerHTML = tt.value, A(M, Ae, tt.language), M.result = {
      language: tt.language,
      re: tt.relevance,
      relavance: tt.relevance
    }, tt.second_best && (M.second_best = {
      language: tt.second_best.language,
      re: tt.second_best.relevance,
      relavance: tt.second_best.relevance
    });
  }
  __name(E, "E");
  function P(M) {
    M.useBR && (sn("10.3.0", "'useBR' will be removed entirely in v11.0"), sn("10.3.0", "Please see https://github.com/highlightjs/highlight.js/issues/2559")), a = Au(a, M);
  }
  __name(P, "P");
  const U = /* @__PURE__ */ __name(() => {
    if (U.called)
      return;
    U.called = true, sn("10.6.0", "initHighlighting() is deprecated.  Use highlightAll() instead."), document.querySelectorAll("pre code").forEach(E);
  }, "U");
  function j() {
    sn("10.6.0", "initHighlightingOnLoad() is deprecated.  Use highlightAll() instead."), k = true;
  }
  __name(j, "j");
  let k = false;
  function ae() {
    if (document.readyState === "loading") {
      k = true;
      return;
    }
    document.querySelectorAll("pre code").forEach(E);
  }
  __name(ae, "ae");
  function le() {
    k && ae();
  }
  __name(le, "le");
  typeof window < "u" && window.addEventListener && window.addEventListener("DOMContentLoaded", le, false);
  function he(M, se) {
    let Ae = null;
    try {
      Ae = se(t);
    } catch (Re) {
      if (mo("Language definition for '{}' could not be registered.".replace("{}", M)), s)
        mo(Re);
      else
        throw Re;
      Ae = l;
    }
    Ae.name || (Ae.name = M), e[M] = Ae, Ae.rawDefinition = se.bind(null, t), Ae.aliases && D(Ae.aliases, { languageName: M });
  }
  __name(he, "he");
  function Ue(M) {
    delete e[M];
    for (const se of Object.keys(n))
      n[se] === M && delete n[se];
  }
  __name(Ue, "Ue");
  function xe() {
    return Object.keys(e);
  }
  __name(xe, "xe");
  function re(M) {
    sn("10.4.0", "requireLanguage will be removed entirely in v11."), sn("10.4.0", "Please see https://github.com/highlightjs/highlight.js/pull/2844");
    const se = Ne(M);
    if (se)
      return se;
    throw new Error("The '{}' language is required, but not loaded.".replace("{}", M));
  }
  __name(re, "re");
  function Ne(M) {
    return M = (M || "").toLowerCase(), e[M] || e[n[M]];
  }
  __name(Ne, "Ne");
  function D(M, { languageName: se }) {
    typeof M == "string" && (M = [M]), M.forEach((Ae) => {
      n[Ae.toLowerCase()] = se;
    });
  }
  __name(D, "D");
  function Y(M) {
    const se = Ne(M);
    return se && !se.disableAutodetect;
  }
  __name(Y, "Y");
  function de(M) {
    M["before:highlightBlock"] && !M["before:highlightElement"] && (M["before:highlightElement"] = (se) => {
      M["before:highlightBlock"](
        Object.assign({ block: se.el }, se)
      );
    }), M["after:highlightBlock"] && !M["after:highlightElement"] && (M["after:highlightElement"] = (se) => {
      M["after:highlightBlock"](
        Object.assign({ block: se.el }, se)
      );
    });
  }
  __name(de, "de");
  function Xe(M) {
    de(M), r.push(M);
  }
  __name(Xe, "Xe");
  function Qe(M, se) {
    const Ae = M;
    r.forEach(function(Re) {
      Re[Ae] && Re[Ae](se);
    });
  }
  __name(Qe, "Qe");
  function Ot(M) {
    return sn("10.2.0", "fixMarkup will be removed entirely in v11.0"), sn("10.2.0", "Please see https://github.com/highlightjs/highlight.js/issues/2534"), y(M);
  }
  __name(Ot, "Ot");
  function it(M) {
    return sn("10.7.0", "highlightBlock will be removed entirely in v12.0"), sn("10.7.0", "Please use highlightElement now."), E(M);
  }
  __name(it, "it");
  Object.assign(t, {
    highlight: h,
    highlightAuto: x,
    highlightAll: ae,
    fixMarkup: Ot,
    highlightElement: E,
    highlightBlock: it,
    configure: P,
    initHighlighting: U,
    initHighlightingOnLoad: j,
    registerLanguage: he,
    unregisterLanguage: Ue,
    listLanguages: xe,
    getLanguage: Ne,
    registerAliases: D,
    requireLanguage: re,
    autoDetection: Y,
    inherit: Au,
    addPlugin: Xe,
    vuePlugin: cR(t).VuePlugin
  }), t.debugMode = function() {
    s = false;
  }, t.safeMode = function() {
    s = true;
  }, t.versionString = lR;
  for (const M in _i)
    typeof _i[M] == "object" && a6(_i[M]);
  return Object.assign(t, _i), t.addPlugin(_), t.addPlugin(uR), t.addPlugin(C), t;
}, "dR");
var fR = dR({});
var Fr = fR;
function pR(t) {
  return {
    name: "Plain text",
    aliases: [
      "text",
      "txt"
    ],
    disableAutodetect: true
  };
}
__name(pR, "pR");
var gR = pR;
var ku = "[A-Za-z$_][0-9A-Za-z$_]*";
var mR = [
  "as",
  "in",
  "of",
  "if",
  "for",
  "while",
  "finally",
  "var",
  "new",
  "function",
  "do",
  "return",
  "void",
  "else",
  "break",
  "catch",
  "instanceof",
  "with",
  "throw",
  "case",
  "default",
  "try",
  "switch",
  "continue",
  "typeof",
  "delete",
  "let",
  "yield",
  "const",
  "class",
  "debugger",
  "async",
  "await",
  "static",
  "import",
  "from",
  "export",
  "extends"
];
var xR = [
  "true",
  "false",
  "null",
  "undefined",
  "NaN",
  "Infinity"
];
var LR = [
  "Intl",
  "DataView",
  "Number",
  "Math",
  "Date",
  "String",
  "RegExp",
  "Object",
  "Function",
  "Boolean",
  "Error",
  "Symbol",
  "Set",
  "Map",
  "WeakSet",
  "WeakMap",
  "Proxy",
  "Reflect",
  "JSON",
  "Promise",
  "Float64Array",
  "Int16Array",
  "Int32Array",
  "Int8Array",
  "Uint16Array",
  "Uint32Array",
  "Float32Array",
  "Array",
  "Uint8Array",
  "Uint8ClampedArray",
  "ArrayBuffer",
  "BigInt64Array",
  "BigUint64Array",
  "BigInt"
];
var _R = [
  "EvalError",
  "InternalError",
  "RangeError",
  "ReferenceError",
  "SyntaxError",
  "TypeError",
  "URIError"
];
var yR = [
  "setInterval",
  "setTimeout",
  "clearInterval",
  "clearTimeout",
  "require",
  "exports",
  "eval",
  "isFinite",
  "isNaN",
  "parseFloat",
  "parseInt",
  "decodeURI",
  "decodeURIComponent",
  "encodeURI",
  "encodeURIComponent",
  "escape",
  "unescape"
];
var CR = [
  "arguments",
  "this",
  "super",
  "console",
  "window",
  "document",
  "localStorage",
  "module",
  "global"
];
var vR = [].concat(
  yR,
  CR,
  LR,
  _R
);
function bR(t) {
  return t ? typeof t == "string" ? t : t.source : null;
}
__name(bR, "bR");
function Ou(t) {
  return xl("(?=", t, ")");
}
__name(Ou, "Ou");
function xl(...t) {
  return t.map((n) => bR(n)).join("");
}
__name(xl, "xl");
function wR(t) {
  const e = /* @__PURE__ */ __name((E, { after: P }) => {
    const U = "</" + E[0].slice(1);
    return E.input.indexOf(U, P) !== -1;
  }, "e"), n = ku, r = {
    begin: "<>",
    end: "</>"
  }, s = {
    begin: /<[A-Za-z0-9\\._:-]+/,
    end: /\/[A-Za-z0-9\\._:-]+>|\/>/,
    isTrulyOpeningTag: (E, P) => {
      const U = E[0].length + E.index, j = E.input[U];
      if (j === "<") {
        P.ignoreMatch();
        return;
      }
      j === ">" && (e(E, { after: U }) || P.ignoreMatch());
    }
  }, i = {
    $pattern: ku,
    keyword: mR,
    literal: xR,
    built_in: vR
  }, o = "[0-9](_?[0-9])*", l = `\\.(${o})`, a = "0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*", c = {
    className: "number",
    variants: [
      { begin: `(\\b(${a})((${l})|\\.)?|(${l}))[eE][+-]?(${o})\\b` },
      { begin: `\\b(${a})\\b((${l})\\b|\\.)?|(${l})\\b` },
      { begin: "\\b(0|[1-9](_?[0-9])*)n\\b" },
      { begin: "\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b" },
      { begin: "\\b0[bB][0-1](_?[0-1])*n?\\b" },
      { begin: "\\b0[oO][0-7](_?[0-7])*n?\\b" },
      { begin: "\\b0[0-7]+n?\\b" }
    ],
    relevance: 0
  }, u = {
    className: "subst",
    begin: "\\$\\{",
    end: "\\}",
    keywords: i,
    contains: []
  }, h = {
    begin: "html`",
    end: "",
    starts: {
      end: "`",
      returnEnd: false,
      contains: [
        t.BACKSLASH_ESCAPE,
        u
      ],
      subLanguage: "xml"
    }
  }, f = {
    begin: "css`",
    end: "",
    starts: {
      end: "`",
      returnEnd: false,
      contains: [
        t.BACKSLASH_ESCAPE,
        u
      ],
      subLanguage: "css"
    }
  }, p = {
    className: "string",
    begin: "`",
    end: "`",
    contains: [
      t.BACKSLASH_ESCAPE,
      u
    ]
  }, y = {
    className: "comment",
    variants: [
      t.COMMENT(
        /\/\*\*(?!\/)/,
        "\\*/",
        {
          relevance: 0,
          contains: [
            {
              className: "doctag",
              begin: "@[A-Za-z]+",
              contains: [
                {
                  className: "type",
                  begin: "\\{",
                  end: "\\}",
                  relevance: 0
                },
                {
                  className: "variable",
                  begin: n + "(?=\\s*(-)|$)",
                  endsParent: true,
                  relevance: 0
                },
                {
                  begin: /(?=[^\n])\s/,
                  relevance: 0
                }
              ]
            }
          ]
        }
      ),
      t.C_BLOCK_COMMENT_MODE,
      t.C_LINE_COMMENT_MODE
    ]
  }, A = [
    t.APOS_STRING_MODE,
    t.QUOTE_STRING_MODE,
    h,
    f,
    p,
    c,
    t.REGEXP_MODE
  ];
  u.contains = A.concat({
    begin: /\{/,
    end: /\}/,
    keywords: i,
    contains: [
      "self"
    ].concat(A)
  });
  const _ = [].concat(y, u.contains), m = _.concat([
    {
      begin: /\(/,
      end: /\)/,
      keywords: i,
      contains: ["self"].concat(_)
    }
  ]), C = {
    className: "params",
    begin: /\(/,
    end: /\)/,
    excludeBegin: true,
    excludeEnd: true,
    keywords: i,
    contains: m
  };
  return {
    name: "Javascript",
    aliases: ["js", "jsx", "mjs", "cjs"],
    keywords: i,
    exports: { PARAMS_CONTAINS: m },
    illegal: /#(?![$_A-z])/,
    contains: [
      t.SHEBANG({
        label: "shebang",
        binary: "node",
        relevance: 5
      }),
      {
        label: "use_strict",
        className: "meta",
        relevance: 10,
        begin: /^\s*['"]use (strict|asm)['"]/
      },
      t.APOS_STRING_MODE,
      t.QUOTE_STRING_MODE,
      h,
      f,
      p,
      y,
      c,
      {
        begin: xl(
          /[{,\n]\s*/,
          Ou(xl(
            /(((\/\/.*$)|(\/\*(\*[^/]|[^*])*\*\/))\s*)*/,
            n + "\\s*:"
          ))
        ),
        relevance: 0,
        contains: [
          {
            className: "attr",
            begin: n + Ou("\\s*:"),
            relevance: 0
          }
        ]
      },
      {
        begin: "(" + t.RE_STARTERS_RE + "|\\b(case|return|throw)\\b)\\s*",
        keywords: "return throw case",
        contains: [
          y,
          t.REGEXP_MODE,
          {
            className: "function",
            begin: "(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|" + t.UNDERSCORE_IDENT_RE + ")\\s*=>",
            returnBegin: true,
            end: "\\s*=>",
            contains: [
              {
                className: "params",
                variants: [
                  {
                    begin: t.UNDERSCORE_IDENT_RE,
                    relevance: 0
                  },
                  {
                    className: null,
                    begin: /\(\s*\)/,
                    skip: true
                  },
                  {
                    begin: /\(/,
                    end: /\)/,
                    excludeBegin: true,
                    excludeEnd: true,
                    keywords: i,
                    contains: m
                  }
                ]
              }
            ]
          },
          {
            begin: /,/,
            relevance: 0
          },
          {
            className: "",
            begin: /\s/,
            end: /\s*/,
            skip: true
          },
          {
            variants: [
              { begin: r.begin, end: r.end },
              {
                begin: s.begin,
                "on:begin": s.isTrulyOpeningTag,
                end: s.end
              }
            ],
            subLanguage: "xml",
            contains: [
              {
                begin: s.begin,
                end: s.end,
                skip: true,
                contains: ["self"]
              }
            ]
          }
        ],
        relevance: 0
      },
      {
        className: "function",
        beginKeywords: "function",
        end: /[{;]/,
        excludeEnd: true,
        keywords: i,
        contains: [
          "self",
          t.inherit(t.TITLE_MODE, { begin: n }),
          C
        ],
        illegal: /%/
      },
      {
        beginKeywords: "while if switch catch for"
      },
      {
        className: "function",
        begin: t.UNDERSCORE_IDENT_RE + "\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",
        returnBegin: true,
        contains: [
          C,
          t.inherit(t.TITLE_MODE, { begin: n })
        ]
      },
      {
        variants: [
          { begin: "\\." + n },
          { begin: "\\$" + n }
        ],
        relevance: 0
      },
      {
        className: "class",
        beginKeywords: "class",
        end: /[{;=]/,
        excludeEnd: true,
        illegal: /[:"[\]]/,
        contains: [
          { beginKeywords: "extends" },
          t.UNDERSCORE_TITLE_MODE
        ]
      },
      {
        begin: /\b(?=constructor)/,
        end: /[{;]/,
        excludeEnd: true,
        contains: [
          t.inherit(t.TITLE_MODE, { begin: n }),
          "self",
          C
        ]
      },
      {
        begin: "(get|set)\\s+(?=" + n + "\\()",
        end: /\{/,
        keywords: "get set",
        contains: [
          t.inherit(t.TITLE_MODE, { begin: n }),
          { begin: /\(\)/ },
          C
        ]
      },
      {
        begin: /\$[(.]/
      }
    ]
  };
}
__name(wR, "wR");
var ER = wR;
function TR(t) {
  return t ? typeof t == "string" ? t : t.source : null;
}
__name(TR, "TR");
function SR(...t) {
  return t.map((n) => TR(n)).join("");
}
__name(SR, "SR");
function AR(t) {
  const e = {}, n = {
    begin: /\$\{/,
    end: /\}/,
    contains: [
      "self",
      {
        begin: /:-/,
        contains: [e]
      }
    ]
  };
  Object.assign(e, {
    className: "variable",
    variants: [
      { begin: SR(
        /\$[\w\d#@][\w\d_]*/,
        "(?![\\w\\d])(?![$])"
      ) },
      n
    ]
  });
  const r = {
    className: "subst",
    begin: /\$\(/,
    end: /\)/,
    contains: [t.BACKSLASH_ESCAPE]
  }, s = {
    begin: /<<-?\s*(?=\w+)/,
    starts: {
      contains: [
        t.END_SAME_AS_BEGIN({
          begin: /(\w+)/,
          end: /(\w+)/,
          className: "string"
        })
      ]
    }
  }, i = {
    className: "string",
    begin: /"/,
    end: /"/,
    contains: [
      t.BACKSLASH_ESCAPE,
      e,
      r
    ]
  };
  r.contains.push(i);
  const o = {
    className: "",
    begin: /\\"/
  }, l = {
    className: "string",
    begin: /'/,
    end: /'/
  }, a = {
    begin: /\$\(\(/,
    end: /\)\)/,
    contains: [
      { begin: /\d+#[0-9a-f]+/, className: "number" },
      t.NUMBER_MODE,
      e
    ]
  }, c = [
    "fish",
    "bash",
    "zsh",
    "sh",
    "csh",
    "ksh",
    "tcsh",
    "dash",
    "scsh"
  ], u = t.SHEBANG({
    binary: `(${c.join("|")})`,
    relevance: 10
  }), h = {
    className: "function",
    begin: /\w[\w\d_]*\s*\(\s*\)\s*\{/,
    returnBegin: true,
    contains: [t.inherit(t.TITLE_MODE, { begin: /\w[\w\d_]*/ })],
    relevance: 0
  };
  return {
    name: "Bash",
    aliases: ["sh", "zsh"],
    keywords: {
      $pattern: /\b[a-z._-]+\b/,
      keyword: "if then else elif fi for while in do done case esac function",
      literal: "true false",
      built_in: "break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp"
    },
    contains: [
      u,
      t.SHEBANG(),
      h,
      a,
      t.HASH_COMMENT_MODE,
      s,
      i,
      o,
      l,
      e
    ]
  };
}
__name(AR, "AR");
var RR = AR;
function kR(t) {
  var e = "true false yes no null", n = "[\\w#;/?:@&=+$,.~*'()[\\]]+", r = {
    className: "attr",
    variants: [
      { begin: "\\w[\\w :\\/.-]*:(?=[ 	]|$)" },
      { begin: '"\\w[\\w :\\/.-]*":(?=[ 	]|$)' },
      { begin: "'\\w[\\w :\\/.-]*':(?=[ 	]|$)" }
    ]
  }, s = {
    className: "template-variable",
    variants: [
      { begin: /\{\{/, end: /\}\}/ },
      { begin: /%\{/, end: /\}/ }
    ]
  }, i = {
    className: "string",
    relevance: 0,
    variants: [
      { begin: /'/, end: /'/ },
      { begin: /"/, end: /"/ },
      { begin: /\S+/ }
    ],
    contains: [
      t.BACKSLASH_ESCAPE,
      s
    ]
  }, o = t.inherit(i, {
    variants: [
      { begin: /'/, end: /'/ },
      { begin: /"/, end: /"/ },
      { begin: /[^\s,{}[\]]+/ }
    ]
  }), l = "[0-9]{4}(-[0-9][0-9]){0,2}", a = "([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?", c = "(\\.[0-9]*)?", u = "([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?", h = {
    className: "number",
    begin: "\\b" + l + a + c + u + "\\b"
  }, f = {
    end: ",",
    endsWithParent: true,
    excludeEnd: true,
    keywords: e,
    relevance: 0
  }, p = {
    begin: /\{/,
    end: /\}/,
    contains: [f],
    illegal: "\\n",
    relevance: 0
  }, x = {
    begin: "\\[",
    end: "\\]",
    contains: [f],
    illegal: "\\n",
    relevance: 0
  }, y = [
    r,
    {
      className: "meta",
      begin: "^---\\s*$",
      relevance: 10
    },
    {
      className: "string",
      begin: "[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"
    },
    {
      begin: "<%[%=-]?",
      end: "[%-]?%>",
      subLanguage: "ruby",
      excludeBegin: true,
      excludeEnd: true,
      relevance: 0
    },
    {
      className: "type",
      begin: "!\\w+!" + n
    },
    {
      className: "type",
      begin: "!<" + n + ">"
    },
    {
      className: "type",
      begin: "!" + n
    },
    {
      className: "type",
      begin: "!!" + n
    },
    {
      className: "meta",
      begin: "&" + t.UNDERSCORE_IDENT_RE + "$"
    },
    {
      className: "meta",
      begin: "\\*" + t.UNDERSCORE_IDENT_RE + "$"
    },
    {
      className: "bullet",
      begin: "-(?=[ ]|$)",
      relevance: 0
    },
    t.HASH_COMMENT_MODE,
    {
      beginKeywords: e,
      keywords: { literal: e }
    },
    h,
    {
      className: "number",
      begin: t.C_NUMBER_RE + "\\b",
      relevance: 0
    },
    p,
    x,
    i
  ], A = [...y];
  return A.pop(), A.push(o), f.contains = A, {
    name: "YAML",
    case_insensitive: true,
    aliases: ["yml"],
    contains: y
  };
}
__name(kR, "kR");
var OR = kR;
Fr.registerLanguage("plaintext", gR);
Fr.registerLanguage("javascript", ER);
Fr.registerLanguage("bash", RR);
Fr.registerLanguage("yaml", OR);
var IR = {
  codespan(t) {
    let n = /(GET|HEAD|POST|PUT|DELETE|CONNECT|OPTIONS|TRACE|PATCH)\s+(.+)/gi.exec(t);
    return (n == null ? void 0 : n.length) === 3 ? `
          <code class="rest-api">
          <span class="http-method-${n[1].toLowerCase()}">${n[1]}</span>
          <span class="http-path">${n[2]}</span>
          </code>
        ` : `<code>${t}</code>`;
  }
};
pe.setOptions({
  highlight: function(t, e) {
    if (!e)
      return Fr.highlightAuto(t).value;
    const n = Fr.getLanguage(e) ? e : "plaintext";
    return Fr.highlight(n, t).value;
  },
  breaks: true
});
pe.use({ renderer: IR });
var MR = {
  name: "comment",
  props: ["comment", "commentObj"],
  computed: {
    markedComment() {
      var t, e;
      return ((t = this.commentObj) == null ? void 0 : t.text) && pe.parse((e = this.commentObj) == null ? void 0 : e.text) || this.comment && pe.parse(this.comment);
    },
    commentStyle() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.commentStyle;
    },
    classNames() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.commentClassNames;
    }
  }
};
var NR = { class: "comments text-skin-comment min-w-[100px] flex text-left text-sm opacity-50 hover:opacity-100" };
var PR = ["innerHTML"];
function FR(t, e, n, r, s, i) {
  return R(), q("div", NR, [
    S("div", {
      innerHTML: i.markedComment,
      class: we(i.classNames),
      style: Ce(i.commentStyle)
    }, null, 14, PR)
  ]);
}
__name(FR, "FR");
var q0 = /* @__PURE__ */ Ge(MR, [["render", FR], ["__scopeId", "data-v-49a61c68"]]);
var DR = {
  props: ["collapsed"],
  emits: ["click"]
};
var BR = { class: "collapsible-header" };
var $R = /* @__PURE__ */ h1('<g id="SVGRepo_bgCarrier" stroke-width="0" data-v-175097b8></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round" data-v-175097b8></g><g id="SVGRepo_iconCarrier" data-v-175097b8><line x1="13" y1="2" x2="13" y2="10" data-v-175097b8></line><polyline points="9 7 13 11 17 7" data-v-175097b8></polyline><line x1="13" y1="23" x2="13" y2="15" data-v-175097b8></line><polyline points="9 19 13 15 17 19" data-v-175097b8></polyline></g>', 3);
var HR = [
  $R
];
var UR = /* @__PURE__ */ h1('<g id="SVGRepo_bgCarrier" stroke-width="0" data-v-175097b8></g><g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round" data-v-175097b8></g><g id="SVGRepo_iconCarrier" data-v-175097b8><line x1="13" y1="1" x2="13" y2="9" data-v-175097b8></line><polyline points="9 5 13 1 17 5" data-v-175097b8></polyline><line x1="13" y1="13" x2="13" y2="13" data-v-175097b8></line><line x1="13" y1="24" x2="13" y2="17" data-v-175097b8></line><polyline points="9 20 13 24 17 20" data-v-175097b8></polyline></g>', 3);
var VR = [
  UR
];
function zR(t, e, n, r, s, i) {
  return R(), q("div", BR, [
    (R(), q("svg", {
      width: "20px",
      height: "20px",
      class: we([{ hidden: n.collapsed, expanded: !n.collapsed }, "collapse-button cursor-pointer"]),
      onClick: e[0] || (e[0] = (o) => t.$emit("click", o)),
      viewBox: "0 0 25 25",
      xmlns: "http://www.w3.org/2000/svg",
      fill: "none",
      stroke: "currentColor",
      "stroke-width": "1",
      "stroke-linecap": "round",
      "stroke-linejoin": "miter"
    }, HR, 2)),
    (R(), q("svg", {
      width: "20px",
      height: "20px",
      class: we([{ hidden: !n.collapsed }, "cursor-pointer"]),
      onClick: e[1] || (e[1] = (o) => t.$emit("click", o)),
      viewBox: "0 0 25 25",
      xmlns: "http://www.w3.org/2000/svg",
      fill: "none",
      stroke: "currentColor",
      "stroke-width": "1",
      "stroke-linecap": "round",
      "stroke-linejoin": "miter"
    }, VR, 2))
  ]);
}
__name(zR, "zR");
var GR = /* @__PURE__ */ Ge(DR, [["render", zR], ["__scopeId", "data-v-175097b8"]]);
var jR = {
  name: "occurrence",
  props: ["context", "selfCallIndent", "participant", "rtl", "number"],
  data: function() {
    return {
      center: 0,
      collapsed: false
    };
  },
  computed: {
    ...pn(["centerOf", "messageLayerLeft"]),
    ...Fn(["code"]),
    computedCenter: function() {
      try {
        return this.centerOf(this.participant);
      } catch (t) {
        return console.error(t), 0;
      }
    },
    hasAnyStatementsExceptReturn: function() {
      var r;
      let t = this.context.braceBlock();
      if (!t)
        return false;
      let e = ((r = t.block()) == null ? void 0 : r.stat()) || [], n = e.length;
      return n > 1 || n == 1 && e[0].ret() == null;
    }
  },
  methods: {
    toggle() {
      this.collapsed = !this.collapsed, ac.$emit("participant_set_top");
    }
  },
  components: { CollapseButton: GR },
  watch: {
    context() {
      this.collapsed && (this.collapsed = false);
    }
  }
};
var ZR = ["data-belongs-to", "data-x-offset", "data-debug-center-of"];
function WR(t, e, n, r, s, i) {
  const o = _e("collapse-button"), l = _e("block");
  return R(), q("div", {
    class: we(["occurrence shadow-occurrence border-skin-occurrence bg-skin-occurrence rounded-sm border-2 relative left-full", { "right-to-left": n.rtl }]),
    "data-el-type": "occurrence",
    "data-belongs-to": n.participant,
    "data-x-offset": t.center,
    "data-debug-center-of": i.computedCenter
  }, [
    i.hasAnyStatementsExceptReturn ? (R(), ke(o, {
      key: 0,
      collapsed: t.collapsed,
      onClick: this.toggle
    }, null, 8, ["collapsed", "onClick"])) : me("", true),
    this.context.braceBlock() ? (R(), ke(l, {
      key: 1,
      context: n.context.braceBlock().block(),
      selfCallIndent: n.selfCallIndent,
      number: n.number,
      collapsed: t.collapsed,
      inheritFromOccurrence: true
    }, null, 8, ["context", "selfCallIndent", "number", "collapsed"])) : me("", true)
  ], 10, ZR);
}
__name(WR, "WR");
var g6 = /* @__PURE__ */ Ge(jR, [["render", WR], ["__scopeId", "data-v-11f91122"]]);
var $s = class _$s {
  static {
    __name(this, "$s");
  }
  constructor(e, n, r, s) {
    Z(this, "start");
    Z(this, "stop");
    this.start = { line: e, col: n }, this.stop = { line: r, col: s };
  }
  static from(e) {
    const n = e.start, r = e.stop;
    return new _$s(
      n.line,
      n.column,
      r.line,
      r.column + r.text.length
    );
  }
};
var Iu = b0.child({ name: "Creation" });
var qR = {
  name: "creation",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  computed: {
    ...pn(["cursor", "onElementClick", "distance"]),
    ...Fn(["numbering"]),
    from() {
      return this.context.Origin();
    },
    creation() {
      return this.context.creation();
    },
    interactionWidth() {
      let t = Math.abs(this.distance(this.to, this.from)), e = this.selfCallIndent || 0;
      return t + (this.rightToLeft ? e : -e);
    },
    rightToLeft() {
      return this.distance(this.to, this.from) < 0;
    },
    signature() {
      return this.creation.SignatureText();
    },
    assignee() {
      function t(s) {
        return s && s.getFormattedText() || "";
      }
      __name(t, "t");
      let e = this.creation.creationBody().assignment();
      if (!e)
        return "";
      let n = t(e.assignee());
      const r = t(e.type());
      return n + (r ? ":" + r : "");
    },
    to() {
      return this.creation.Owner();
    },
    isCurrent() {
      return this.creation.isCurrent(this.cursor);
    },
    isInitedFromOccurrence: function() {
      return this.creation.isInitedFromOccurrence(this.from);
    },
    messageTextStyle() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageStyle;
    },
    messageClassNames() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageClassNames;
    }
  },
  mounted() {
    this.layoutMessageContainer(), Iu.log(`mounted for ${this.to}`);
  },
  updated() {
    this.layoutMessageContainer(), Iu.debug(`mounted for ${this.to}`);
  },
  methods: {
    layoutMessageContainer() {
      (() => {
        if (!this.$refs.participantPlaceHolder || !this.$refs.messageContainer)
          return;
        const e = this.$refs.participantPlaceHolder.offsetWidth / 2;
        this.$refs.messageContainer.style.width = `calc(100% + ${e + 6}px`, this.rightToLeft && (this.$refs.messageContainer.style.transform = `translateX( ${-(e + 6)}px`);
      })();
    },
    onClick() {
      this.onElementClick($s.from(this.context));
    }
  },
  components: {
    Participant: Lh,
    Comment: q0,
    Occurrence: g6,
    Message: G0
  }
};
var KR = ["data-signature"];
var YR = ["data-to"];
var XR = {
  ref: "participantPlaceHolder",
  class: "invisible right-0 flex flex-col justify-center flex-shrink-0"
};
function QR(t, e, n, r, s, i) {
  var u;
  const o = _e("comment"), l = _e("message"), a = _e("participant"), c = _e("occurrence");
  return R(), q("div", {
    class: we(["interaction creation sync text-center transform", {
      "right-to-left": i.rightToLeft,
      "-translate-x-full": i.rightToLeft,
      highlight: i.isCurrent,
      "inited-from-occurrence": i.isInitedFromOccurrence
    }]),
    onClick: e[0] || (e[0] = M0((...h) => i.onClick && i.onClick(...h), ["stop"])),
    "data-signature": i.signature,
    style: Ce({ width: i.interactionWidth + "px" })
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      commentObj: n.commentObj
    }, null, 8, ["commentObj"])) : me("", true),
    S("div", {
      ref: "messageContainer",
      "data-type": "creation",
      class: we(["message-container pointer-events-none flex items-center h-10 relative", { "flex-row-reverse": i.rightToLeft }]),
      "data-to": i.to
    }, [
      z(l, {
        ref: "messageEl",
        class: "invocation w-full transform -translate-y-1/2 pointer-events-auto",
        context: i.creation,
        content: i.signature,
        rtl: i.rightToLeft,
        type: "creation",
        number: n.number,
        classNames: i.messageClassNames,
        textStyle: i.messageTextStyle
      }, null, 8, ["context", "content", "rtl", "number", "classNames", "textStyle"]),
      S("div", XR, [
        z(a, {
          entity: { name: i.to }
        }, null, 8, ["entity"])
      ], 512)
    ], 10, YR),
    z(c, {
      context: i.creation,
      class: "pointer-events-auto",
      participant: i.to,
      number: n.number
    }, null, 8, ["context", "participant", "number"]),
    i.assignee ? (R(), ke(l, {
      key: 1,
      class: "return transform -translate-y-full pointer-events-auto",
      context: i.creation.creationBody().assignment(),
      content: i.assignee,
      rtl: !i.rightToLeft,
      type: "return",
      number: `${n.number}.${(((u = i.creation.braceBlock()) == null ? void 0 : u.block().stat().length) || 0) + 1}`,
      classNames: i.messageClassNames,
      textStyle: i.messageTextStyle
    }, null, 8, ["context", "content", "rtl", "number", "classNames", "textStyle"])) : me("", true)
  ], 14, KR);
}
__name(QR, "QR");
var JR = /* @__PURE__ */ Ge(qR, [["render", QR]]);
var ek = { class: "name group px-px hover:text-skin-message-hover hover:bg-skin-message-hover relative min-h-[1em]" };
var tk = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500"
};
var nk = { key: 0 };
var rk = /* @__PURE__ */ S("svg", {
  class: "arrow text-skin-message-arrow",
  width: "30",
  height: "24"
}, [
  /* @__PURE__ */ S("polyline", {
    class: "line stroke-current fill-none stroke-2",
    points: "0,2 28,2 28,15 14,15"
  }),
  /* @__PURE__ */ S("polyline", {
    class: "head stroke-current fill-current stroke-2",
    points: "18,9 8,15 18,21"
  })
], -1);
var sk = /* @__PURE__ */ Ye({
  __name: "SelfInvocation",
  props: {
    context: null,
    content: null,
    assignee: null,
    number: null,
    textStyle: null,
    classNames: null
  },
  setup(t) {
    const e = t, { context: n } = kl(e), r = Gr(), s = J(() => r.state.numbering), i = ge(), o = /* @__PURE__ */ __name(() => {
      r.getters.onMessageClick(n, i.value);
    }, "o");
    return (l, a) => (R(), q("div", {
      class: "message self text-sm flex items-start flex-col",
      style: { "border-width": "0" },
      onClick: o,
      ref_key: "messageRef",
      ref: i
    }, [
      S("label", ek, [
        Le(s) ? (R(), q("div", tk, He(t.number), 1)) : me("", true),
        S("div", {
          style: Ce(t.textStyle),
          class: we(t.classNames)
        }, [
          t.assignee ? (R(), q("span", nk, He(t.assignee) + " = ", 1)) : me("", true),
          dn(" " + He(t.content), 1)
        ], 6)
      ]),
      rk
    ], 512));
  }
});
var ik = {
  name: "interaction",
  props: [
    "context",
    "selfCallIndent",
    "commentObj",
    "number"
  ],
  computed: {
    ...pn(["participants", "distance2", "cursor", "onElementClick"]),
    hasComment() {
      var t;
      return ((t = this.commentObj) == null ? void 0 : t.text) !== "";
    },
    messageTextStyle() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageStyle;
    },
    messageClassNames() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageClassNames;
    },
    message: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.message();
    },
    providedFrom: function() {
      var t, e;
      return (e = (t = this.context) == null ? void 0 : t.message()) == null ? void 0 : e.ProvidedFrom();
    },
    from: function() {
      return this.providedFrom || this.origin;
    },
    outOfBand: function() {
      return !!this.providedFrom && this.providedFrom !== this.origin;
    },
    assignee: function() {
      var e;
      let t = (e = this.message) == null ? void 0 : e.Assignment();
      return t ? t.getText() : "";
    },
    signature: function() {
      var t;
      return (t = this.message) == null ? void 0 : t.SignatureText();
    },
    translateX: function() {
      if (!this.rightToLeft && !this.outOfBand)
        return 0;
      const e = this.rightToLeft ? this.to : this.providedFrom, n = this.distance2(this.origin, e), r = this.selfCallIndent || 0;
      return n + 0 - r;
    },
    rightToLeft: function() {
      return this.distance2(this.from, this.to) < 0;
    },
    isCurrent: function() {
      var t;
      return (t = this.message) == null ? void 0 : t.isCurrent(this.cursor);
    },
    showStarter() {
      return this.participants.Starter().name !== "_STARTER_";
    },
    isRootBlock() {
      var t, e;
      return ((e = (t = this.context) == null ? void 0 : t.parentCtx) == null ? void 0 : e.parentCtx) instanceof QC;
    },
    origin: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.Origin();
    },
    passOnOffset: function() {
      return this.isSelf && !this.isRootBlock ? (this.selfCallIndent || 0) + 6 : 0;
    },
    interactionWidth: function() {
      if (this.context && this.isSelf)
        return 0;
      let t = this.outOfBand ? 0 : this.selfCallIndent || 0;
      return Math.abs(this.distance2(this.from, this.to) - t);
    },
    to: function() {
      var t, e;
      return (e = (t = this.context) == null ? void 0 : t.message()) == null ? void 0 : e.Owner();
    },
    isSelf: function() {
      return !this.to || this.to === this.from;
    },
    invocation: function() {
      return this.isSelf ? "SelfInvocation" : "Message";
    },
    isInitedFromOccurrence: function() {
      var t;
      return (t = this.message) == null ? void 0 : t.isInitedFromOccurrence(this.context);
    }
  },
  methods: {
    onClick() {
      this.onElementClick($s.from(this.context));
    }
  },
  components: {
    Message: G0,
    SelfInvocation: sk,
    Comment: q0,
    Occurrence: g6
  }
};
var ok = ["data-to", "data-signature"];
function lk(t, e, n, r, s, i) {
  var c;
  const o = _e("comment"), l = _e("occurrence"), a = _e("message");
  return R(), q("div", {
    class: we(["interaction sync inline-block", {
      highlight: i.isCurrent,
      self: i.isSelf,
      "from-no-occurrence": i.providedFrom && i.providedFrom !== i.origin,
      "inited-from-occurrence": i.isInitedFromOccurrence,
      "right-to-left": i.rightToLeft
    }]),
    onClick: e[0] || (e[0] = M0((...u) => i.onClick && i.onClick(...u), ["stop"])),
    "data-to": i.to,
    "data-type": "interaction",
    "data-signature": i.signature,
    style: Ce({
      width: !i.isSelf && i.interactionWidth + "px",
      transform: "translateX(" + i.translateX + "px)"
    })
  }, [
    i.showStarter && i.isRootBlock || i.outOfBand ? (R(), q("div", {
      key: 0,
      class: we(["occurrence source border-2", { "right-to-left": i.rightToLeft }])
    }, null, 2)) : me("", true),
    i.hasComment ? (R(), ke(o, {
      key: 1,
      commentObj: n.commentObj
    }, null, 8, ["commentObj"])) : me("", true),
    (R(), ke(Rs(i.invocation), {
      class: "text-center",
      classNames: i.messageClassNames,
      textStyle: i.messageTextStyle,
      context: i.message,
      content: i.signature,
      assignee: i.assignee,
      rtl: i.rightToLeft,
      type: "sync",
      number: n.number
    }, null, 8, ["classNames", "textStyle", "context", "content", "assignee", "rtl", "number"])),
    z(l, {
      context: i.message,
      participant: i.to,
      selfCallIndent: i.passOnOffset,
      rtl: i.rightToLeft,
      number: `${n.number}`
    }, null, 8, ["context", "participant", "selfCallIndent", "rtl", "number"]),
    i.assignee && !i.isSelf ? (R(), ke(a, {
      key: 2,
      class: "return transform -translate-y-full",
      context: i.message,
      content: i.assignee,
      rtl: !i.rightToLeft,
      type: "return",
      number: `${n.number}.${(((c = i.message.braceBlock()) == null ? void 0 : c.block().stat().length) || 0) + 1}`,
      classNames: i.messageClassNames,
      textStyle: i.messageTextStyle
    }, null, 8, ["context", "content", "rtl", "number", "classNames", "textStyle"])) : me("", true)
  ], 14, ok);
}
__name(lk, "lk");
var ak = /* @__PURE__ */ Ge(ik, [["render", lk], ["__scopeId", "data-v-e6d7fb3f"]]);
var ck = {
  name: "self-invocation-async",
  props: ["content", "number"],
  computed: {
    ...Fn(["numbering"])
  }
};
var uk = /* @__PURE__ */ __name((t) => (Ss("data-v-f5fd8c09"), t = t(), As(), t), "uk");
var hk = {
  class: "message self flex items-start flex-col",
  style: { "border-width": "0" }
};
var dk = { class: "name group px-px hover:text-skin-message-hover hover:bg-skin-message-hover min-h-[1em]" };
var fk = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500"
};
var pk = /* @__PURE__ */ uk(() => /* @__PURE__ */ S("svg", {
  class: "arrow text-skin-message-arrow",
  width: "34",
  height: "34"
}, [
  /* @__PURE__ */ S("polyline", {
    class: "stroke-current stroke-2 fill-none",
    points: "0,2 28,2 28,25 1,25"
  }),
  /* @__PURE__ */ S("polyline", {
    class: "head stroke-current stroke-2 fill-none",
    points: "11,19 1,25 11,31"
  })
], -1));
function gk(t, e, n, r, s, i) {
  return R(), q("div", hk, [
    S("label", dk, [
      t.numbering ? (R(), q("div", fk, He(n.number), 1)) : me("", true),
      dn(" " + He(n.content), 1)
    ]),
    pk
  ]);
}
__name(gk, "gk");
var mk = /* @__PURE__ */ Ge(ck, [["render", gk], ["__scopeId", "data-v-f5fd8c09"]]);
function Lo(t) {
  return t == null;
}
__name(Lo, "Lo");
var xk = {
  name: "interaction-async",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  computed: {
    ...pn(["distance", "cursor", "onElementClick"]),
    from: function() {
      return this.context.Origin();
    },
    asyncMessage: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.asyncMessage();
    },
    interactionWidth: function() {
      var t;
      return this.isSelf ? 10 * (((t = this.signature) == null ? void 0 : t.length) || 0) + 100 : Math.abs(this.distance(this.target, this.source));
    },
    translateX: function() {
      return this.rightToLeft ? this.distance(this.target, this.from) : this.distance(this.source, this.from);
    },
    rightToLeft: function() {
      return this.distance(this.target, this.source) < 0;
    },
    signature: function() {
      var t, e;
      return (e = (t = this.asyncMessage) == null ? void 0 : t.content()) == null ? void 0 : e.getFormattedText();
    },
    source: function() {
      var t, e;
      return ((e = (t = this.asyncMessage) == null ? void 0 : t.from()) == null ? void 0 : e.getFormattedText()) || this.from;
    },
    target: function() {
      var t, e;
      return (e = (t = this.asyncMessage) == null ? void 0 : t.to()) == null ? void 0 : e.getFormattedText();
    },
    isCurrent: function() {
      const t = this.asyncMessage.start.start, e = this.asyncMessage.stop.stop + 1;
      return Lo(this.cursor) || Lo(t) || Lo(e) ? false : this.cursor >= t && this.cursor <= e;
    },
    isSelf: function() {
      return this.source === this.target;
    },
    invocation: function() {
      return this.isSelf ? "SelfInvocationAsync" : "Message";
    },
    providedFrom: function() {
      var t, e;
      return (e = (t = this.context) == null ? void 0 : t.asyncMessage()) == null ? void 0 : e.From();
    },
    origin: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.Origin();
    },
    messageTextStyle() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageStyle;
    },
    messageClassNames() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageClassNames;
    },
    isToOccurrence() {
      return this.parentCtxIncludeMessage(this.asyncMessage);
    },
    isInitedFromOccurrence: function() {
      var t;
      return (t = this.message) == null ? void 0 : t.isInitedFromOccurrence(this.context);
    }
  },
  methods: {
    onClick() {
      this.onElementClick($s.from(this.context));
    },
    parentCtxIncludeMessage(t) {
      const e = t.Owner();
      if (!e)
        return false;
      for (t = t == null ? void 0 : t.parentCtx; t; ) {
        if (t.To && t.To() === e)
          return true;
        t = t.parentCtx;
      }
      return false;
    }
  },
  components: {
    Comment: q0,
    SelfInvocationAsync: mk,
    Message: G0
  }
};
var Lk = ["data-signature"];
function _k(t, e, n, r, s, i) {
  const o = _e("comment");
  return R(), q("div", {
    class: we(["interaction async", {
      "to-occurrence": i.isToOccurrence,
      "right-to-left": i.rightToLeft,
      "from-no-occurrence": i.providedFrom && i.providedFrom !== i.origin,
      highlight: i.isCurrent,
      "inited-from-occurrence": i.isInitedFromOccurrence,
      "self-invocation": i.isSelf
    }]),
    onClick: e[0] || (e[0] = M0((...l) => i.onClick && i.onClick(...l), ["stop"])),
    "data-signature": i.signature,
    style: Ce({
      width: i.interactionWidth + "px",
      transform: "translateX(" + i.translateX + "px)"
    })
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      commentObj: n.commentObj
    }, null, 8, ["commentObj"])) : me("", true),
    (R(), ke(Rs(i.invocation), {
      classNames: i.messageClassNames,
      textStyle: i.messageTextStyle,
      context: i.asyncMessage,
      content: i.signature,
      rtl: i.rightToLeft,
      type: "async",
      number: n.number
    }, null, 8, ["classNames", "textStyle", "context", "content", "rtl", "number"]))
  ], 14, Lk);
}
__name(_k, "_k");
var yk = /* @__PURE__ */ Ge(xk, [["render", _k], ["__scopeId", "data-v-77b8885a"]]);
var Ck = {
  components: { Icon: dr },
  props: ["label", "collapsed"],
  emits: ["click"]
};
var vk = { class: "collapsible-header" };
var bk = { class: "mb-0" };
function wk(t, e, n, r, s, i) {
  const o = _e("Icon");
  return R(), q("div", vk, [
    S("label", bk, He(n.label), 1),
    n.collapsed ? (R(), ke(o, {
      key: 1,
      name: "collapse-unexpanded",
      "icon-class": "w-4 h-4 cursor-pointer",
      onIconClick: e[1] || (e[1] = (l) => t.$emit("click", l))
    })) : (R(), ke(o, {
      key: 0,
      name: "collapse-expanded",
      "icon-class": `w-4 h-4 collapse-button cursor-pointer ${n.collapsed ? "" : "expanded"}`,
      onIconClick: e[0] || (e[0] = (l) => t.$emit("click", l))
    }, null, 8, ["icon-class"]))
  ]);
}
__name(wk, "wk");
var Ek = /* @__PURE__ */ Ge(Ck, [["render", wk], ["__scopeId", "data-v-048a5186"]]);
var K0 = {
  computed: {
    ...pn(["coordinates"]),
    offsetX: function() {
      const t = this.coordinates.orderedParticipantNames(), n = new uc(t).getFrame(this.context), r = hc(n), s = [
        this.context.Origin(),
        ...Ds(this.context).Names()
      ], i = t.find(
        (l) => s.includes(l)
      );
      let o = this.coordinates.half(i);
      return console.debug(
        `left participant: ${i} ${o}`
      ), this.coordinates.distance(i, this.from) + r.left + o;
    },
    fragmentStyle: function() {
      return {
        transform: "translateX(" + (this.offsetX + 1) * -1 + "px)",
        width: yh(this.context, this.coordinates) + "px"
      };
    }
  },
  data: function() {
    return { collapsed: false };
  },
  methods: {
    toggle() {
      this.collapsed = !this.collapsed, ac.$emit("participant_set_top");
    }
  },
  components: { CollapseButton: Ek },
  watch: {
    context() {
      this.collapsed && (this.collapsed = false);
    }
  }
};
var Tk = /* @__PURE__ */ __name((t) => {
  const e = {
    loop: "FragmentLoop",
    alt: "FragmentAlt",
    par: "FragmentPar",
    opt: "FragmentOpt",
    tcf: "FragmentTryCatchFinally",
    creation: "Creation",
    message: "Interaction",
    asyncMessage: "InteractionAsync",
    divider: "Divider",
    ret: "Return"
  }, n = Object.keys(e).find((r) => t[r]() !== null) || "";
  return e[n];
}, "Tk");
var o0 = /* @__PURE__ */ __name((t) => t && t.stat() ? t.stat().filter((e) => Tk(e) !== "Divider").length : 0, "o0");
var m6 = /* @__PURE__ */ __name((t, e) => {
  if (t) {
    const n = t.split(".");
    return n[n.length - 1] = Number(n[n.length - 1]) + e, n.join(".");
  } else
    return String(e);
}, "m6");
var Sk = {
  name: "fragment-alt",
  props: ["context", "comment", "selfCallIndent", "commentObj", "number"],
  mixins: [K0],
  computed: {
    ...Fn(["numbering"]),
    from: function() {
      return this.context.Origin();
    },
    alt: function() {
      return this.context.alt();
    },
    blockInIfBlock: function() {
      var t, e, n;
      return (n = (e = (t = this.alt) == null ? void 0 : t.ifBlock()) == null ? void 0 : e.braceBlock()) == null ? void 0 : n.block();
    },
    condition: function() {
      var t;
      return this.conditionFromIfElseBlock((t = this.alt) == null ? void 0 : t.ifBlock());
    },
    elseBlock: function() {
      var t, e, n;
      return (n = (e = (t = this.alt) == null ? void 0 : t.elseBlock()) == null ? void 0 : e.braceBlock()) == null ? void 0 : n.block();
    },
    blockLengthAcc() {
      var e;
      const t = [o0(this.blockInIfBlock)];
      return (e = this.alt) != null && e.elseIfBlock() && this.alt.elseIfBlock().forEach((n) => {
        t.push(
          t[t.length - 1] + o0(this.blockInElseIfBlock(n))
        );
      }), t;
    }
  },
  methods: {
    conditionFromIfElseBlock(t) {
      var e, n;
      return (n = (e = t == null ? void 0 : t.parExpr()) == null ? void 0 : e.condition()) == null ? void 0 : n.getFormattedText();
    },
    blockInElseIfBlock(t) {
      var e;
      return (e = t == null ? void 0 : t.braceBlock()) == null ? void 0 : e.block();
    },
    increaseNumber: m6,
    blockLength: o0
  }
};
var x6 = /* @__PURE__ */ __name((t) => (Ss("data-v-3ed539bb"), t = t(), As(), t), "x6");
var Ak = { class: "segment" };
var Rk = { class: "header bg-skin-fragment-header text-skin-fragment-header text-base leading-4 rounded-t relative" };
var kk = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500 text-sm font-thin leading-6"
};
var Ok = { class: "name font-semibold p-1 border-b text-sm" };
var Ik = { class: "p-0" };
var Mk = { class: "segment" };
var Nk = { class: "text-skin-fragment flex" };
var Pk = { class: "condition px-1 text-sm inline-block" };
var Fk = /* @__PURE__ */ x6(() => /* @__PURE__ */ S("label", { class: "else-if hidden" }, "else if", -1));
var Dk = { class: "condition px-1" };
var Bk = {
  key: 0,
  class: "segment mt-2 border-t border-solid"
};
var $k = /* @__PURE__ */ x6(() => /* @__PURE__ */ S("div", { class: "text-skin-fragment" }, [
  /* @__PURE__ */ S("label", { class: "p-1" }, "[else]")
], -1));
function Hk(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("collapse-button"), a = _e("block");
  return R(), q("div", {
    class: "fragment alt border-skin-fragment rounded",
    style: Ce(t.fragmentStyle)
  }, [
    S("div", Ak, [
      n.comment ? (R(), ke(o, {
        key: 0,
        comment: n.comment,
        commentObj: n.commentObj
      }, null, 8, ["comment", "commentObj"])) : me("", true),
      S("div", Rk, [
        t.numbering ? (R(), q("div", kk, He(n.number), 1)) : me("", true),
        S("div", Ok, [
          S("label", Ik, [
            z(l, {
              label: "Alt",
              collapsed: t.collapsed,
              onClick: this.toggle,
              style: Ce(n.commentObj.messageStyle),
              class: we(n.commentObj.messageClassNames)
            }, null, 8, ["collapsed", "onClick", "style", "class"])
          ])
        ])
      ])
    ]),
    S("div", {
      class: we({ hidden: t.collapsed })
    }, [
      S("div", Mk, [
        S("div", Nk, [
          S("label", Pk, "[" + He(i.condition) + "]", 1)
        ]),
        i.blockInIfBlock ? (R(), ke(a, {
          key: 0,
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.blockInIfBlock,
          selfCallIndent: n.selfCallIndent,
          number: `${n.number}.1`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"])) : me("", true)
      ]),
      (R(true), q(Fe, null, On(i.alt.elseIfBlock(), (c, u) => (R(), q("div", {
        key: u + 500,
        class: "segment mt-2 border-t border-solid"
      }, [
        (R(), q("div", {
          class: "text-skin-fragment",
          key: u + 1e3
        }, [
          Fk,
          S("label", Dk, "[" + He(i.conditionFromIfElseBlock(c)) + "]", 1)
        ])),
        (R(), ke(a, {
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.blockInElseIfBlock(c),
          selfCallIndent: n.selfCallIndent,
          key: u + 2e3,
          number: `${n.number}.${i.blockLengthAcc[u] + 1}`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"]))
      ]))), 128)),
      i.elseBlock ? (R(), q("div", Bk, [
        $k,
        z(a, {
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.elseBlock,
          selfCallIndent: n.selfCallIndent,
          number: `${n.number}.${i.blockLengthAcc[i.blockLengthAcc.length - 1] + 1}`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"])
      ])) : me("", true)
    ], 2)
  ], 4);
}
__name(Hk, "Hk");
var Uk = /* @__PURE__ */ Ge(Sk, [["render", Hk], ["__scopeId", "data-v-3ed539bb"]]);
var Vk = {
  name: "fragment-par",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  mixins: [K0],
  computed: {
    ...Fn(["numbering"]),
    from: function() {
      return this.context.Origin();
    },
    par: function() {
      return this.context.par();
    }
  }
};
var zk = { class: "header bg-skin-fragment-header text-skin-fragment-header text-base leading-4 rounded-t relative" };
var Gk = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500 text-sm font-thin leading-6"
};
var jk = { class: "name font-semibold p-1 border-b" };
function Zk(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("collapse-button"), a = _e("block");
  return R(), q("div", {
    class: "fragment par border-skin-fragment rounded",
    style: Ce(t.fragmentStyle)
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      comment: n.comment,
      commentObj: n.commentObj
    }, null, 8, ["comment", "commentObj"])) : me("", true),
    S("div", zk, [
      t.numbering ? (R(), q("div", Gk, He(n.number), 1)) : me("", true),
      S("div", jk, [
        z(l, {
          label: "Par",
          collapsed: t.collapsed,
          onClick: this.toggle,
          style: Ce(n.commentObj.messageStyle),
          class: we(n.commentObj.messageClassNames)
        }, null, 8, ["collapsed", "onClick", "style", "class"])
      ])
    ]),
    z(a, {
      class: we({ hidden: t.collapsed }),
      style: Ce({ paddingLeft: `${t.offsetX}px` }),
      context: i.par.braceBlock().block(),
      selfCallIndent: n.selfCallIndent,
      number: n.number
    }, null, 8, ["class", "style", "context", "selfCallIndent", "number"])
  ], 4);
}
__name(Zk, "Zk");
var Wk = /* @__PURE__ */ Ge(Vk, [["render", Zk], ["__scopeId", "data-v-12f63f5c"]]);
var qk = {
  name: "fragment-loop",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  mixins: [K0],
  computed: {
    ...Fn(["numbering"]),
    from: function() {
      return this.context.Origin();
    },
    loop: function() {
      return this.context.loop();
    },
    blockInLoop: function() {
      var t, e;
      return (e = (t = this.loop) == null ? void 0 : t.braceBlock()) == null ? void 0 : e.block();
    },
    condition: function() {
      var t, e, n;
      return (n = (e = (t = this.loop) == null ? void 0 : t.parExpr()) == null ? void 0 : e.condition()) == null ? void 0 : n.getFormattedText();
    }
  }
};
var Kk = { class: "header text-skin-fragment-header bg-skin-fragment-header text-base leading-4 relative" };
var Yk = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500 text-sm font-thin leading-6"
};
var Xk = { class: "name font-semibold p-1 border-b" };
var Qk = { class: "segment" };
var Jk = { class: "text-skin-fragment" };
var eO = { class: "condition p-1" };
function tO(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("collapse-button"), a = _e("block");
  return R(), q("div", {
    class: "fragment loop border-skin-fragment rounded",
    style: Ce(t.fragmentStyle)
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      comment: n.comment,
      commentObj: n.commentObj
    }, null, 8, ["comment", "commentObj"])) : me("", true),
    S("div", Kk, [
      t.numbering ? (R(), q("div", Yk, He(n.number), 1)) : me("", true),
      S("div", Xk, [
        z(l, {
          label: "Loop",
          collapsed: t.collapsed,
          onClick: this.toggle,
          style: Ce(n.commentObj.messageStyle),
          class: we(n.commentObj.messageClassNames)
        }, null, 8, ["collapsed", "onClick", "style", "class"])
      ])
    ]),
    S("div", {
      class: we({ hidden: t.collapsed })
    }, [
      S("div", Qk, [
        S("div", Jk, [
          S("label", eO, "[" + He(i.condition) + "]", 1)
        ]),
        z(a, {
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.blockInLoop,
          selfCallIndent: n.selfCallIndent,
          number: n.number
        }, null, 8, ["style", "context", "selfCallIndent", "number"])
      ])
    ], 2)
  ], 4);
}
__name(tO, "tO");
var nO = /* @__PURE__ */ Ge(qk, [["render", tO], ["__scopeId", "data-v-44ed1b4d"]]);
var rO = {
  name: "fragment-opt",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  mixins: [K0],
  computed: {
    ...Fn(["numbering"]),
    from: function() {
      return this.context.Origin();
    },
    opt: function() {
      return this.context.opt();
    }
  }
};
var sO = { class: "header bg-skin-fragment-header text-skin-fragment-header text-base leading-4 relative" };
var iO = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500 text-sm font-thin leading-6"
};
var oO = { class: "name font-semibold p-1 border-b" };
function lO(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("collapse-button"), a = _e("block");
  return R(), q("div", {
    class: "fragment opt border-skin-fragment rounded",
    style: Ce(t.fragmentStyle)
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      comment: n.comment,
      commentObj: n.commentObj
    }, null, 8, ["comment", "commentObj"])) : me("", true),
    S("div", sO, [
      t.numbering ? (R(), q("div", iO, He(n.number), 1)) : me("", true),
      S("div", oO, [
        z(l, {
          label: "Opt",
          collapsed: t.collapsed,
          onClick: this.toggle,
          style: Ce(n.commentObj.textStyle),
          class: we(n.commentObj.classNames)
        }, null, 8, ["collapsed", "onClick", "style", "class"])
      ])
    ]),
    z(a, {
      class: we({ hidden: t.collapsed }),
      style: Ce({ paddingLeft: `${t.offsetX}px` }),
      context: i.opt.braceBlock().block(),
      selfCallIndent: n.selfCallIndent,
      number: n.number
    }, null, 8, ["class", "style", "context", "selfCallIndent", "number"])
  ], 4);
}
__name(lO, "lO");
var aO = /* @__PURE__ */ Ge(rO, [["render", lO], ["__scopeId", "data-v-533e0127"]]);
var cO = {
  name: "fragment-tcf",
  props: ["context", "comment", "commentObj", "selfCallIndent", "number"],
  mixins: [K0],
  computed: {
    ...Fn(["numbering"]),
    from: function() {
      return this.context.Origin();
    },
    tcf: function() {
      return this.context.tcf();
    },
    blockInTryBlock: function() {
      var t, e, n;
      return (n = (e = (t = this.tcf) == null ? void 0 : t.tryBlock()) == null ? void 0 : e.braceBlock()) == null ? void 0 : n.block();
    },
    finallyBlock: function() {
      var t, e, n;
      return (n = (e = (t = this.tcf) == null ? void 0 : t.finallyBlock()) == null ? void 0 : e.braceBlock()) == null ? void 0 : n.block();
    },
    blockLengthAcc() {
      var e;
      const t = [o0(this.blockInTryBlock)];
      return (e = this.tcf) != null && e.catchBlock() && this.tcf.catchBlock().forEach((n) => {
        t.push(
          t[t.length - 1] + o0(this.blockInCatchBlock(n))
        );
      }), t;
    }
  },
  methods: {
    exception(t) {
      var e;
      return (e = t == null ? void 0 : t.invocation()) == null ? void 0 : e.parameters().getText();
    },
    blockInCatchBlock(t) {
      var e;
      return (e = t == null ? void 0 : t.braceBlock()) == null ? void 0 : e.block();
    }
  }
};
var L6 = /* @__PURE__ */ __name((t) => (Ss("data-v-049c2e25"), t = t(), As(), t), "L6");
var uO = { class: "segment" };
var hO = { class: "header bg-skin-fragment-header text-skin-fragment-header text-base leading-4 rounded-t relative" };
var dO = {
  key: 0,
  class: "absolute right-[100%] top-0 pr-1 group-hover:hidden text-gray-500 text-sm font-thin leading-6"
};
var fO = { class: "name font-semibold p-1 border-b text-sm" };
var pO = { class: "segment" };
var gO = /* @__PURE__ */ L6(() => /* @__PURE__ */ S("label", { class: "keyword catch p-1" }, "catch", -1));
var mO = { class: "exception p-1" };
var xO = {
  key: 0,
  class: "segment mt-2 border-t border-solid"
};
var LO = /* @__PURE__ */ L6(() => /* @__PURE__ */ S("div", { class: "header flex text-skin-fragment finally" }, [
  /* @__PURE__ */ S("label", { class: "keyword finally px-1 inline-block text-sm" }, "finally")
], -1));
function _O(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("collapse-button"), a = _e("block");
  return R(), q("div", {
    class: "fragment tcf border-skin-fragment rounded",
    style: Ce(t.fragmentStyle)
  }, [
    S("div", uO, [
      n.comment ? (R(), ke(o, {
        key: 0,
        comment: n.comment,
        commentObj: n.commentObj
      }, null, 8, ["comment", "commentObj"])) : me("", true),
      S("div", hO, [
        t.numbering ? (R(), q("div", dO, He(n.number), 1)) : me("", true),
        S("div", fO, [
          z(l, {
            label: "Try",
            collapsed: t.collapsed,
            onClick: this.toggle
          }, null, 8, ["collapsed", "onClick"])
        ])
      ])
    ]),
    S("div", {
      class: we({ hidden: t.collapsed })
    }, [
      S("div", pO, [
        i.blockInTryBlock ? (R(), ke(a, {
          key: 0,
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.blockInTryBlock,
          selfCallIndent: n.selfCallIndent,
          number: `${n.number}.1`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"])) : me("", true)
      ]),
      (R(true), q(Fe, null, On(i.tcf.catchBlock(), (c, u) => (R(), q("div", {
        key: u + 500,
        class: "segment text-sm mt-2 border-t border-solid"
      }, [
        (R(), q("div", {
          class: "header inline-block",
          key: u + 1e3
        }, [
          gO,
          S("label", mO, He(i.exception(c)), 1)
        ])),
        (R(), ke(a, {
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.blockInCatchBlock(c),
          selfCallIndent: n.selfCallIndent,
          key: u + 2e3,
          number: `${n.number}.${i.blockLengthAcc[u] + 1}`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"]))
      ]))), 128)),
      i.finallyBlock ? (R(), q("div", xO, [
        LO,
        z(a, {
          style: Ce({ paddingLeft: `${t.offsetX}px` }),
          context: i.finallyBlock,
          selfCallIndent: n.selfCallIndent,
          number: `${n.number}.${i.blockLengthAcc[i.blockLengthAcc.length - 1] + 1}`,
          incremental: ""
        }, null, 8, ["style", "context", "selfCallIndent", "number"])
      ])) : me("", true)
    ], 2)
  ], 4);
}
__name(_O, "_O");
var yO = /* @__PURE__ */ Ge(cO, [["render", _O], ["__scopeId", "data-v-049c2e25"]]);
var CO = {
  name: "return",
  props: ["context", "comment", "commentObj", "number"],
  computed: {
    ...pn(["distance", "cursor", "onElementClick", "participants"]),
    from: function() {
      return this.context.Origin();
    },
    asyncMessage: function() {
      var t;
      return (t = this.context) == null ? void 0 : t.ret().asyncMessage();
    },
    width: function() {
      return this.isSelf ? _0(this.signature, xr.MessageContent) : Math.abs(this.distance(this.target, this.source));
    },
    left: function() {
      return this.rightToLeft ? this.distance(this.target, this.from) + 2 : this.distance(this.source, this.from) + 2;
    },
    rightToLeft: function() {
      return this.distance(this.target, this.source) < 0;
    },
    signature: function() {
      var t, e, n, r, s;
      return ((e = (t = this.asyncMessage) == null ? void 0 : t.content()) == null ? void 0 : e.getFormattedText()) || ((s = (r = (n = this.context) == null ? void 0 : n.ret()) == null ? void 0 : r.expr()) == null ? void 0 : s.getFormattedText());
    },
    source: function() {
      var t, e;
      return ((e = (t = this.asyncMessage) == null ? void 0 : t.from()) == null ? void 0 : e.getFormattedText()) || this.from;
    },
    target: function() {
      var t, e, n, r;
      return ((e = (t = this.asyncMessage) == null ? void 0 : t.to()) == null ? void 0 : e.getFormattedText()) || ((r = (n = this.context) == null ? void 0 : n.ret()) == null ? void 0 : r.ReturnTo());
    },
    isCurrent: function() {
      return false;
    },
    isSelf: function() {
      return this.source === this.target;
    },
    isReturnToStart() {
      return this.target === this.participants.Starter().name;
    },
    messageTextStyle() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageStyle;
    },
    messageClassNames() {
      var t;
      return (t = this.commentObj) == null ? void 0 : t.messageClassNames;
    },
    messageContext() {
      var t, e, n;
      return ((t = this.asyncMessage) == null ? void 0 : t.content()) || ((n = (e = this.context) == null ? void 0 : e.ret()) == null ? void 0 : n.expr());
    }
  },
  methods: {
    onClick() {
      this.onElementClick($s.from(this.context));
    }
  },
  components: {
    Comment: q0,
    Message: G0
  }
};
var vO = ["data-signature"];
var bO = {
  key: 1,
  class: "flex items-center"
};
var wO = /* @__PURE__ */ S("svg", {
  class: "w-3 h-3 flex-shrink-0 fill-current m-1",
  viewBox: "0 0 512 512"
}, [
  /* @__PURE__ */ S("path", {
    class: "cls-1",
    d: "M256 0C114.84 0 0 114.84 0 256s114.84 256 256 256 256-114.84 256-256S397.16 0 256 0Zm0 469.33c-117.63 0-213.33-95.7-213.33-213.33S138.37 42.67 256 42.67 469.33 138.37 469.33 256 373.63 469.33 256 469.33Z"
  }),
  /* @__PURE__ */ S("path", {
    class: "cls-1",
    d: "M288 192h-87.16l27.58-27.58a21.33 21.33 0 1 0-30.17-30.17l-64 64a21.33 21.33 0 0 0 0 30.17l64 64a21.33 21.33 0 0 0 30.17-30.17l-27.58-27.58H288a53.33 53.33 0 0 1 0 106.67h-32a21.33 21.33 0 0 0 0 42.66h32a96 96 0 0 0 0-192Z"
  })
], -1);
var EO = { class: "name text-sm" };
function TO(t, e, n, r, s, i) {
  const o = _e("comment"), l = _e("Message");
  return R(), q("div", {
    class: we(["interaction return relative", {
      "right-to-left": i.rightToLeft,
      highlight: i.isCurrent,
      "return-to-start": i.isReturnToStart
    }]),
    onClick: e[0] || (e[0] = M0((...a) => i.onClick && i.onClick(...a), ["stop"])),
    "data-signature": i.signature,
    style: Ce({ width: i.width + "px", left: i.left + "px" })
  }, [
    n.comment ? (R(), ke(o, {
      key: 0,
      commentObj: n.commentObj
    }, null, 8, ["commentObj"])) : me("", true),
    i.isSelf ? (R(), q("div", bO, [
      wO,
      S("span", EO, He(i.signature), 1)
    ])) : me("", true),
    i.isSelf ? me("", true) : (R(), ke(l, {
      key: 2,
      classNames: i.messageClassNames,
      textStyle: i.messageTextStyle,
      context: i.messageContext,
      content: i.signature,
      rtl: i.rightToLeft,
      type: "return",
      number: n.number
    }, null, 8, ["classNames", "textStyle", "context", "content", "rtl", "number"]))
  ], 14, vO);
}
__name(TO, "TO");
var SO = /* @__PURE__ */ Ge(CO, [["render", TO]]);
var AO = [
  "aliceblue",
  "antiquewhite",
  "aqua",
  "aquamarine",
  "azure",
  "beige",
  "bisque",
  "black",
  "blanchedalmond",
  "blue",
  "blueviolet",
  "brown",
  "burlywood",
  "cadetblue",
  "chartreuse",
  "chocolate",
  "coral",
  "cornflowerblue",
  "cornsilk",
  "crimson",
  "cyan",
  "darkblue",
  "darkcyan",
  "darkgoldenrod",
  "darkgray",
  "darkgreen",
  "darkgrey",
  "darkkhaki",
  "darkmagenta",
  "darkolivegreen",
  "darkorange",
  "darkorchid",
  "darkred",
  "darksalmon",
  "darkseagreen",
  "darkslateblue",
  "darkslategray",
  "darkslategrey",
  "darkturquoise",
  "darkviolet",
  "deeppink",
  "deepskyblue",
  "dimgray",
  "dimgrey",
  "dodgerblue",
  "firebrick",
  "floralwhite",
  "forestgreen",
  "fuchsia",
  "gainsboro",
  "ghostwhite",
  "gold",
  "goldenrod",
  "gray",
  "green",
  "greenyellow",
  "grey",
  "honeydew",
  "hotpink",
  "indianred",
  "indigo",
  "ivory",
  "khaki",
  "lavender",
  "lavenderblush",
  "lawngreen",
  "lemonchiffon",
  "lightblue",
  "lightcoral",
  "lightcyan",
  "lightgoldenrodyellow",
  "lightgray",
  "lightgreen",
  "lightgrey",
  "lightpink",
  "lightsalmon",
  "lightseagreen",
  "lightskyblue",
  "lightslategray",
  "lightslategrey",
  "lightsteelblue",
  "lightyellow",
  "lime",
  "limegreen",
  "linen",
  "magenta",
  "maroon",
  "mediumaquamarine",
  "mediumblue",
  "mediumorchid",
  "mediumpurple",
  "mediumseagreen",
  "mediumslateblue",
  "mediumspringgreen",
  "mediumturquoise",
  "mediumvioletred",
  "midnightblue",
  "mintcream",
  "mistyrose",
  "moccasin",
  "navajowhite",
  "navy",
  "oldlace",
  "olive",
  "olivedrab",
  "orange",
  "orangered",
  "orchid",
  "palegoldenrod",
  "palegreen",
  "paleturquoise",
  "palevioletred",
  "papayawhip",
  "peachpuff",
  "peru",
  "pink",
  "plum",
  "powderblue",
  "purple",
  "rebeccapurple",
  "red",
  "rosybrown",
  "royalblue",
  "saddlebrown",
  "salmon",
  "sandybrown",
  "seagreen",
  "seashell",
  "sienna",
  "silver",
  "skyblue",
  "slateblue",
  "slategray",
  "slategrey",
  "snow",
  "springgreen",
  "steelblue",
  "tan",
  "teal",
  "thistle",
  "tomato",
  "turquoise",
  "violet",
  "wheat",
  "white",
  "whitesmoke",
  "yellow",
  "yellowgreen"
];
var RO = ["italic", "oblique"];
var kO = ["bold", "bolder", "lighter"];
var OO = ["underline", "overline", "line-through"];
var l0 = /* @__PURE__ */ __name((t) => {
  const e = {}, n = [];
  return t.forEach((r) => {
    switch (true) {
      case AO.includes(r):
        e.color = r;
        break;
      case RO.includes(r):
        e.fontStyle = r;
        break;
      case kO.includes(r):
        e.fontWeight = r;
        break;
      case OO.includes(r):
        e.textDecoration = r;
        break;
      default:
        n.push(r);
    }
  }), { textStyle: e, classNames: n };
}, "l0");
var IO = {
  name: "divider",
  props: ["context"],
  computed: {
    ...pn(["participants", "centerOf"]),
    width() {
      let t = this.participants.Names().pop();
      return this.centerOf(t) + 10;
    },
    from: function() {
      return this.context.Origin();
    },
    centerOfFrom() {
      return this.centerOf(this.from);
    },
    note: function() {
      return this.context.divider().Note();
    },
    messageStyle() {
      if (this.note.trim().indexOf("[") === 0 && this.note.indexOf("]") !== -1) {
        const t = this.note.indexOf("["), e = this.note.indexOf("]"), [n, r] = [
          this.note.slice(t + 1, e),
          this.note.slice(e + 1)
        ];
        return { style: l0(n.split(",").map((s) => s.trim())), note: r };
      }
      return { style: l0([]), note: this.note };
    }
  }
};
var _6 = /* @__PURE__ */ __name((t) => (Ss("data-v-0be02001"), t = t(), As(), t), "_6");
var MO = /* @__PURE__ */ _6(() => /* @__PURE__ */ S("div", { class: "left bg-skin-divider" }, null, -1));
var NO = /* @__PURE__ */ _6(() => /* @__PURE__ */ S("div", { class: "right bg-skin-divider" }, null, -1));
function PO(t, e, n, r, s, i) {
  return R(), q("div", {
    class: "divider",
    style: Ce({
      width: i.width + "px",
      transform: "translateX(" + (-1 * i.centerOfFrom + 10) + "px)"
    })
  }, [
    MO,
    S("div", {
      class: we(["name", i.messageStyle.style.classNames]),
      style: Ce(i.messageStyle.style.textStyle)
    }, He(i.messageStyle.note), 7),
    NO
  ], 4);
}
__name(PO, "PO");
var FO = /* @__PURE__ */ Ge(IO, [["render", PO], ["__scopeId", "data-v-0be02001"]]);
function DO(t) {
  const e = {
    "<>": /* @__PURE__ */ new Set(),
    "()": /* @__PURE__ */ new Set(),
    "[]": /* @__PURE__ */ new Set()
  }, n = /<([^>]*)>|\(([^)]*)\)|\[([^\]]*)\]|([^<>()[\]\s]+)/g;
  let r, s;
  for (; r = n.exec(t); ) {
    if (r[4]) {
      s !== void 0 && (s = r.index);
      break;
    }
    s = r.index + r[0].length, r[1] && r[1].split(",").forEach((i) => e["<>"].add(i.trim())), r[2] && r[2].split(",").forEach((i) => e["()"].add(i.trim())), r[3] && r[3].split(",").forEach((i) => e["[]"].add(i.trim()));
  }
  return [
    Array.from(e["<>"]),
    Array.from(e["()"]),
    Array.from(e["[]"]),
    t.slice(s)
  ];
}
__name(DO, "DO");
var BO = class {
  static {
    __name(this, "BO");
  }
  constructor(e) {
    Z(this, "text", "");
    Z(this, "classNames", []);
    Z(this, "textStyle", {});
    Z(this, "commentStyle", {});
    Z(this, "messageStyle", {});
    Z(this, "commentClassNames", []);
    Z(this, "messageClassNames", []);
    const n = e.slice(0, -1).split(`
`), r = n[n.length - 1], [s, i, o, l] = DO(r), { textStyle: a, classNames: c } = l0(s), { textStyle: u, classNames: h } = l0(i), { textStyle: f, classNames: p } = l0(o);
    this.text = (n.slice(0, n.length - 1).join(`
`) + `
` + l).trim(), this.textStyle = { ...f, ...a, ...u }, this.classNames = [
      ...p,
      ...c,
      ...h
    ], this.commentStyle = { ...f, ...a }, this.messageStyle = { ...f, ...u }, this.commentClassNames = [...p, ...c], this.messageClassNames = [...p, ...h];
  }
};
var $O = {
  name: "statement",
  props: [
    "context",
    "selfCallIndent",
    "number",
    "collapsed",
    "inheritFromOccurrence"
  ],
  computed: {
    comment: function() {
      return this.context.getComment() ? this.context.getComment() : "";
    },
    commentObj: function() {
      return new BO(this.comment);
    },
    subStatement: function() {
      let t = this, e = {
        loop: "FragmentLoop",
        alt: "FragmentAlt",
        par: "FragmentPar",
        opt: "FragmentOpt",
        tcf: "FragmentTryCatchFinally",
        creation: "Creation",
        message: "Interaction",
        asyncMessage: "InteractionAsync",
        divider: "Divider",
        ret: "Return"
      }, n = Object.keys(e).find((r) => t.context[r]() !== null);
      return e[n];
    },
    collapsedCheck: function() {
      return this.collapsed && this.subStatement != "Return";
    }
  },
  components: {
    Creation: JR,
    Interaction: ak,
    InteractionAsync: yk,
    FragmentAlt: Uk,
    FragmentPar: Wk,
    FragmentOpt: aO,
    FragmentTryCatchFinally: yO,
    FragmentLoop: nO,
    Divider: FO,
    Return: SO
  }
};
function HO(t, e, n, r, s, i) {
  return R(), ke(Rs(i.subStatement), {
    class: we(["text-left text-sm text-skin-message", { hidden: i.collapsedCheck }]),
    context: n.context,
    comment: i.comment,
    commentObj: i.commentObj,
    selfCallIndent: n.selfCallIndent,
    number: n.number,
    inheritFromOccurrence: n.inheritFromOccurrence
  }, null, 8, ["class", "context", "comment", "commentObj", "selfCallIndent", "number", "inheritFromOccurrence"]);
}
__name(HO, "HO");
var UO = /* @__PURE__ */ Ge($O, [["render", HO]]);
var VO = { class: "block" };
var zO = /* @__PURE__ */ Ye({
  __name: "Block",
  props: {
    context: null,
    selfCallIndent: null,
    number: null,
    incremental: { type: Boolean },
    collapsed: { type: Boolean },
    inheritFromOccurrence: { type: Boolean }
  },
  setup(t) {
    const e = t, n = J(() => {
      var s;
      return ((s = e.context) == null ? void 0 : s.stat()) || [];
    }), r = /* @__PURE__ */ __name((s) => e.number ? e.incremental ? m6(e.number, s) : `${e.number}.${s + 1}` : String(s + 1), "r");
    return (s, i) => (R(), q("div", VO, [
      (R(true), q(Fe, null, On(Le(n), (o, l) => (R(), q("div", {
        class: "statement-container mt-1",
        key: l
      }, [
        z(UO, {
          inheritFromOccurrence: t.inheritFromOccurrence,
          context: o,
          collapsed: t.collapsed,
          selfCallIndent: t.selfCallIndent,
          number: r(l)
        }, null, 8, ["inheritFromOccurrence", "context", "collapsed", "selfCallIndent", "number"])
      ]))), 128))
    ]));
  }
});
function GO(t) {
  const e = Math.floor(t / 1e3), n = Math.floor(t % 1e3), r = Math.floor((t % 1e3 - n) * 1e3);
  return e + "s " + n + "ms " + r + "\u03BCs";
}
__name(GO, "GO");
var jO = /* @__PURE__ */ __name((t, e) => {
  const r = y6() - e;
  return console.debug(t + " cost: " + GO(r)), r;
}, "jO");
var y6 = /* @__PURE__ */ __name(() => performance.now(), "y6");
var ZO = b0.child({ name: "core" });
var YO = class {
  static {
    __name(this, "YO");
  }
  constructor(e, n = false) {
    Z(this, "el");
    Z(this, "_code");
    Z(this, "_theme");
    Z(this, "store");
    Z(this, "app");
    Z(this, "_currentTimeout");
    Z(this, "_lastRenderingCostMilliseconds", 0);
    Z(this, "initialRender", true);
    this.el = e, this.store = U5(hh()), this.app = P0(n ? dc : n6), this.app.component("Comment", q0), this.app.component("Block", zO), this.app.use(this.store), this.app.mount(this.el), this.addPortalRootElement();
  }
  addPortalRootElement() {
    const e = document.createElement("div");
    e.id = "headlessui-portal-root", e.className = "zenuml", e.append(document.createElement("div")), document.body.append(e);
  }
  async render(e, n) {
    return this._currentTimeout && (console.debug("rendering clearTimeout"), clearTimeout(this._currentTimeout)), ZO.debug("rendering", e, n), this._code = e || this._code, this._theme = (n == null ? void 0 : n.theme) || this._theme, this.store.state.stickyOffset = (n == null ? void 0 : n.stickyOffset) || 0, this.store.state.theme = this._theme || "default", this.store.state.mode = (n == null ? void 0 : n.mode) || Gn.Dynamic, this.initialRender ? (this.initialRender = false, await this.doRender(n)) : this._currentTimeout = setTimeout(
      async () => await this.doRender(n),
      this.calculateDebounceMilliseconds()
    ), this;
  }
  async doRender(e) {
    console.debug("rendering start");
    const n = y6();
    ev(), this.store.commit("onContentChange", (e == null ? void 0 : e.onContentChange) || (() => {
    })), (e == null ? void 0 : e.enableMultiTheme) !== void 0 && (this.store.state.enableMultiTheme = e == null ? void 0 : e.enableMultiTheme), await this.store.dispatch("updateCode", { code: this._code }), this._lastRenderingCostMilliseconds = jO(
      "rendering end",
      n
    );
  }
  calculateDebounceMilliseconds() {
    let e = this._lastRenderingCostMilliseconds;
    return e > 2e3 && (e = 2e3), console.debug("rendering debounce: " + e + "ms"), e;
  }
  get code() {
    return this._code;
  }
  get theme() {
    return this._theme;
  }
  async getPng() {
    return this.el.children[0].__vue__.toPng();
  }
};

export {
  we,
  He,
  r8,
  s8,
  M8,
  ge,
  e3,
  Le,
  n3,
  Ts,
  jt,
  Ut,
  Qt,
  Yt,
  Ye,
  We,
  x0,
  On,
  Fe,
  R,
  q,
  ke,
  S,
  an,
  me,
  f1,
  J,
  ct,
  I0,
  Gr,
  rh,
  KC,
  qO,
  iv,
  xh,
  Gh,
  gl,
  YO
};
/*! Bundled license information:

@zenuml/core/dist/core.0767a1be.js:
  (*!
   * vuex v4.1.0
   * (c) 2022 Evan You
   * @license MIT
   *)
  (*! https://mths.be/codepointat v0.2.0 by @mathias *)
  (*! https://mths.be/fromcodepoint v0.2.1 by @mathias *)
*/
