UNPKG

prettier-plugin-edgejs

Version:
1,923 lines (1,922 loc) 226 kB
import po from "uglify-js"; var wi = typeof global == "object" && global && global.Object === Object && global, mo = typeof self == "object" && self && self.Object === Object && self, Se = wi || mo || Function("return this")(), ue = Se.Symbol, Ui = Object.prototype, go = Ui.hasOwnProperty, Eo = Ui.toString, ut = ue ? ue.toStringTag : void 0; function To(t) { var e = go.call(t, ut), n = t[ut]; try { t[ut] = void 0; var r = !0; } catch { } var i = Eo.call(t); return r && (e ? t[ut] = n : delete t[ut]), i; } var yo = Object.prototype, Ao = yo.toString; function _o(t) { return Ao.call(t); } var vo = "[object Null]", Ro = "[object Undefined]", kr = ue ? ue.toStringTag : void 0; function Be(t) { return t == null ? t === void 0 ? Ro : vo : kr && kr in Object(t) ? To(t) : _o(t); } function Ee(t) { return t != null && typeof t == "object"; } var Oo = "[object Symbol]"; function en(t) { return typeof t == "symbol" || Ee(t) && Be(t) == Oo; } function tn(t, e) { for (var n = -1, r = t == null ? 0 : t.length, i = Array(r); ++n < r; ) i[n] = e(t[n], n, t); return i; } var x = Array.isArray, br = ue ? ue.prototype : void 0, xr = br ? br.toString : void 0; function Di(t) { if (typeof t == "string") return t; if (x(t)) return tn(t, Di) + ""; if (en(t)) return xr ? xr.call(t) : ""; var e = t + ""; return e == "0" && 1 / t == -1 / 0 ? "-0" : e; } var So = /\s/; function Io(t) { for (var e = t.length; e-- && So.test(t.charAt(e)); ) ; return e; } var No = /^\s+/; function Lo(t) { return t && t.slice(0, Io(t) + 1).replace(No, ""); } function le(t) { var e = typeof t; return t != null && (e == "object" || e == "function"); } var Mr = NaN, Co = /^[-+]0x[0-9a-f]+$/i, ko = /^0b[01]+$/i, bo = /^0o[0-7]+$/i, xo = parseInt; function Mo(t) { if (typeof t == "number") return t; if (en(t)) return Mr; if (le(t)) { var e = typeof t.valueOf == "function" ? t.valueOf() : t; t = le(e) ? e + "" : e; } if (typeof t != "string") return t === 0 ? t : +t; t = Lo(t); var n = ko.test(t); return n || bo.test(t) ? xo(t.slice(2), n ? 2 : 8) : Co.test(t) ? Mr : +t; } var Pr = 1 / 0, Po = 17976931348623157e292; function wo(t) { if (!t) return t === 0 ? t : 0; if (t = Mo(t), t === Pr || t === -Pr) { var e = t < 0 ? -1 : 1; return e * Po; } return t === t ? t : 0; } function nn(t) { var e = wo(t), n = e % 1; return e === e ? n ? e - n : e : 0; } function tt(t) { return t; } var Uo = "[object AsyncFunction]", Do = "[object Function]", $o = "[object GeneratorFunction]", Fo = "[object Proxy]"; function Ue(t) { if (!le(t)) return !1; var e = Be(t); return e == Do || e == $o || e == Uo || e == Fo; } var yn = Se["__core-js_shared__"], wr = function() { var t = /[^.]+$/.exec(yn && yn.keys && yn.keys.IE_PROTO || ""); return t ? "Symbol(src)_1." + t : ""; }(); function jo(t) { return !!wr && wr in t; } var Go = Function.prototype, Bo = Go.toString; function Xe(t) { if (t != null) { try { return Bo.call(t); } catch { } try { return t + ""; } catch { } } return ""; } var Vo = /[\\^$.*+?()[\]{}|]/g, Ko = /^\[object .+?Constructor\]$/, Ho = Function.prototype, Wo = Object.prototype, zo = Ho.toString, Yo = Wo.hasOwnProperty, Xo = RegExp( "^" + zo.call(Yo).replace(Vo, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$" ); function qo(t) { if (!le(t) || jo(t)) return !1; var e = Ue(t) ? Xo : Ko; return e.test(Xe(t)); } function Zo(t, e) { return t?.[e]; } function qe(t, e) { var n = Zo(t, e); return qo(n) ? n : void 0; } var bn = qe(Se, "WeakMap"), Ur = Object.create, Qo = /* @__PURE__ */ function() { function t() { } return function(e) { if (!le(e)) return {}; if (Ur) return Ur(e); t.prototype = e; var n = new t(); return t.prototype = void 0, n; }; }(); function Jo(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); } function V() { } function ea(t, e) { var n = -1, r = t.length; for (e || (e = Array(r)); ++n < r; ) e[n] = t[n]; return e; } var ta = 800, na = 16, ra = Date.now; function ia(t) { var e = 0, n = 0; return function() { var r = ra(), i = na - (r - n); if (n = r, i > 0) { if (++e >= ta) return arguments[0]; } else e = 0; return t.apply(void 0, arguments); }; } function sa(t) { return function() { return t; }; } var Vt = function() { try { var t = qe(Object, "defineProperty"); return t({}, "", {}), t; } catch { } }(), oa = Vt ? function(t, e) { return Vt(t, "toString", { configurable: !0, enumerable: !1, value: sa(e), writable: !0 }); } : tt, aa = ia(oa); function $i(t, e) { for (var n = -1, r = t == null ? 0 : t.length; ++n < r && e(t[n], n, t) !== !1; ) ; return t; } function Fi(t, e, n, r) { for (var i = t.length, s = n + -1; ++s < i; ) if (e(t[s], s, t)) return s; return -1; } function ca(t) { return t !== t; } function ua(t, e, n) { for (var r = n - 1, i = t.length; ++r < i; ) if (t[r] === e) return r; return -1; } function Qn(t, e, n) { return e === e ? ua(t, e, n) : Fi(t, ca, n); } function ji(t, e) { var n = t == null ? 0 : t.length; return !!n && Qn(t, e, 0) > -1; } var la = 9007199254740991, ha = /^(?:0|[1-9]\d*)$/; function rn(t, e) { var n = typeof t; return e = e ?? la, !!e && (n == "number" || n != "symbol" && ha.test(t)) && t > -1 && t % 1 == 0 && t < e; } function Jn(t, e, n) { e == "__proto__" && Vt ? Vt(t, e, { configurable: !0, enumerable: !0, value: n, writable: !0 }) : t[e] = n; } function _t(t, e) { return t === e || t !== t && e !== e; } var fa = Object.prototype, da = fa.hasOwnProperty; function sn(t, e, n) { var r = t[e]; (!(da.call(t, e) && _t(r, n)) || n === void 0 && !(e in t)) && Jn(t, e, n); } function er(t, e, n, r) { var i = !n; n || (n = {}); for (var s = -1, o = e.length; ++s < o; ) { var a = e[s], c = void 0; c === void 0 && (c = t[a]), i ? Jn(n, a, c) : sn(n, a, c); } return n; } var Dr = Math.max; function pa(t, e, n) { return e = Dr(e === void 0 ? t.length - 1 : e, 0), function() { for (var r = arguments, i = -1, s = Dr(r.length - e, 0), o = Array(s); ++i < s; ) o[i] = r[e + i]; i = -1; for (var a = Array(e + 1); ++i < e; ) a[i] = r[i]; return a[e] = n(o), Jo(t, this, a); }; } function tr(t, e) { return aa(pa(t, e, tt), t + ""); } var ma = 9007199254740991; function nr(t) { return typeof t == "number" && t > -1 && t % 1 == 0 && t <= ma; } function Ie(t) { return t != null && nr(t.length) && !Ue(t); } function Gi(t, e, n) { if (!le(n)) return !1; var r = typeof e; return (r == "number" ? Ie(n) && rn(e, n.length) : r == "string" && e in n) ? _t(n[e], t) : !1; } function ga(t) { return tr(function(e, n) { var r = -1, i = n.length, s = i > 1 ? n[i - 1] : void 0, o = i > 2 ? n[2] : void 0; for (s = t.length > 3 && typeof s == "function" ? (i--, s) : void 0, o && Gi(n[0], n[1], o) && (s = i < 3 ? void 0 : s, i = 1), e = Object(e); ++r < i; ) { var a = n[r]; a && t(e, a, r, s); } return e; }); } var Ea = Object.prototype; function vt(t) { var e = t && t.constructor, n = typeof e == "function" && e.prototype || Ea; return t === n; } function Ta(t, e) { for (var n = -1, r = Array(t); ++n < t; ) r[n] = e(n); return r; } var ya = "[object Arguments]"; function $r(t) { return Ee(t) && Be(t) == ya; } var Bi = Object.prototype, Aa = Bi.hasOwnProperty, _a = Bi.propertyIsEnumerable, on = $r(/* @__PURE__ */ function() { return arguments; }()) ? $r : function(t) { return Ee(t) && Aa.call(t, "callee") && !_a.call(t, "callee"); }; function va() { return !1; } var Vi = typeof exports == "object" && exports && !exports.nodeType && exports, Fr = Vi && typeof module == "object" && module && !module.nodeType && module, Ra = Fr && Fr.exports === Vi, jr = Ra ? Se.Buffer : void 0, Oa = jr ? jr.isBuffer : void 0, Et = Oa || va, Sa = "[object Arguments]", Ia = "[object Array]", Na = "[object Boolean]", La = "[object Date]", Ca = "[object Error]", ka = "[object Function]", ba = "[object Map]", xa = "[object Number]", Ma = "[object Object]", Pa = "[object RegExp]", wa = "[object Set]", Ua = "[object String]", Da = "[object WeakMap]", $a = "[object ArrayBuffer]", Fa = "[object DataView]", ja = "[object Float32Array]", Ga = "[object Float64Array]", Ba = "[object Int8Array]", Va = "[object Int16Array]", Ka = "[object Int32Array]", Ha = "[object Uint8Array]", Wa = "[object Uint8ClampedArray]", za = "[object Uint16Array]", Ya = "[object Uint32Array]", $ = {}; $[ja] = $[Ga] = $[Ba] = $[Va] = $[Ka] = $[Ha] = $[Wa] = $[za] = $[Ya] = !0; $[Sa] = $[Ia] = $[$a] = $[Na] = $[Fa] = $[La] = $[Ca] = $[ka] = $[ba] = $[xa] = $[Ma] = $[Pa] = $[wa] = $[Ua] = $[Da] = !1; function Xa(t) { return Ee(t) && nr(t.length) && !!$[Be(t)]; } function an(t) { return function(e) { return t(e); }; } var Ki = typeof exports == "object" && exports && !exports.nodeType && exports, mt = Ki && typeof module == "object" && module && !module.nodeType && module, qa = mt && mt.exports === Ki, An = qa && wi.process, je = function() { try { var t = mt && mt.require && mt.require("util").types; return t || An && An.binding && An.binding("util"); } catch { } }(), Gr = je && je.isTypedArray, rr = Gr ? an(Gr) : Xa, Za = Object.prototype, Qa = Za.hasOwnProperty; function Hi(t, e) { var n = x(t), r = !n && on(t), i = !n && !r && Et(t), s = !n && !r && !i && rr(t), o = n || r || i || s, a = o ? Ta(t.length, String) : [], c = a.length; for (var u in t) (e || Qa.call(t, u)) && !(o && // Safari 9 has enumerable `arguments.length` in strict mode. (u == "length" || // Node.js 0.10 has enumerable non-index properties on buffers. i && (u == "offset" || u == "parent") || // PhantomJS 2 has enumerable non-index properties on typed arrays. s && (u == "buffer" || u == "byteLength" || u == "byteOffset") || // Skip index properties. rn(u, c))) && a.push(u); return a; } function Wi(t, e) { return function(n) { return t(e(n)); }; } var Ja = Wi(Object.keys, Object), ec = Object.prototype, tc = ec.hasOwnProperty; function zi(t) { if (!vt(t)) return Ja(t); var e = []; for (var n in Object(t)) tc.call(t, n) && n != "constructor" && e.push(n); return e; } function he(t) { return Ie(t) ? Hi(t) : zi(t); } var nc = Object.prototype, rc = nc.hasOwnProperty, ne = ga(function(t, e) { if (vt(e) || Ie(e)) { er(e, he(e), t); return; } for (var n in e) rc.call(e, n) && sn(t, n, e[n]); }); function ic(t) { var e = []; if (t != null) for (var n in Object(t)) e.push(n); return e; } var sc = Object.prototype, oc = sc.hasOwnProperty; function ac(t) { if (!le(t)) return ic(t); var e = vt(t), n = []; for (var r in t) r == "constructor" && (e || !oc.call(t, r)) || n.push(r); return n; } function Yi(t) { return Ie(t) ? Hi(t, !0) : ac(t); } var cc = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/, uc = /^\w*$/; function ir(t, e) { if (x(t)) return !1; var n = typeof t; return n == "number" || n == "symbol" || n == "boolean" || t == null || en(t) ? !0 : uc.test(t) || !cc.test(t) || e != null && t in Object(e); } var Tt = qe(Object, "create"); function lc() { this.__data__ = Tt ? Tt(null) : {}, this.size = 0; } function hc(t) { var e = this.has(t) && delete this.__data__[t]; return this.size -= e ? 1 : 0, e; } var fc = "__lodash_hash_undefined__", dc = Object.prototype, pc = dc.hasOwnProperty; function mc(t) { var e = this.__data__; if (Tt) { var n = e[t]; return n === fc ? void 0 : n; } return pc.call(e, t) ? e[t] : void 0; } var gc = Object.prototype, Ec = gc.hasOwnProperty; function Tc(t) { var e = this.__data__; return Tt ? e[t] !== void 0 : Ec.call(e, t); } var yc = "__lodash_hash_undefined__"; function Ac(t, e) { var n = this.__data__; return this.size += this.has(t) ? 0 : 1, n[t] = Tt && e === void 0 ? yc : e, this; } function We(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]); } } We.prototype.clear = lc; We.prototype.delete = hc; We.prototype.get = mc; We.prototype.has = Tc; We.prototype.set = Ac; function _c() { this.__data__ = [], this.size = 0; } function cn(t, e) { for (var n = t.length; n--; ) if (_t(t[n][0], e)) return n; return -1; } var vc = Array.prototype, Rc = vc.splice; function Oc(t) { var e = this.__data__, n = cn(e, t); if (n < 0) return !1; var r = e.length - 1; return n == r ? e.pop() : Rc.call(e, n, 1), --this.size, !0; } function Sc(t) { var e = this.__data__, n = cn(e, t); return n < 0 ? void 0 : e[n][1]; } function Ic(t) { return cn(this.__data__, t) > -1; } function Nc(t, e) { var n = this.__data__, r = cn(n, t); return r < 0 ? (++this.size, n.push([t, e])) : n[r][1] = e, this; } function De(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]); } } De.prototype.clear = _c; De.prototype.delete = Oc; De.prototype.get = Sc; De.prototype.has = Ic; De.prototype.set = Nc; var yt = qe(Se, "Map"); function Lc() { this.size = 0, this.__data__ = { hash: new We(), map: new (yt || De)(), string: new We() }; } function Cc(t) { var e = typeof t; return e == "string" || e == "number" || e == "symbol" || e == "boolean" ? t !== "__proto__" : t === null; } function un(t, e) { var n = t.__data__; return Cc(e) ? n[typeof e == "string" ? "string" : "hash"] : n.map; } function kc(t) { var e = un(this, t).delete(t); return this.size -= e ? 1 : 0, e; } function bc(t) { return un(this, t).get(t); } function xc(t) { return un(this, t).has(t); } function Mc(t, e) { var n = un(this, t), r = n.size; return n.set(t, e), this.size += n.size == r ? 0 : 1, this; } function $e(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]); } } $e.prototype.clear = Lc; $e.prototype.delete = kc; $e.prototype.get = bc; $e.prototype.has = xc; $e.prototype.set = Mc; var Pc = "Expected a function"; function sr(t, e) { if (typeof t != "function" || e != null && typeof e != "function") throw new TypeError(Pc); var n = function() { var r = arguments, i = e ? e.apply(this, r) : r[0], s = n.cache; if (s.has(i)) return s.get(i); var o = t.apply(this, r); return n.cache = s.set(i, o) || s, o; }; return n.cache = new (sr.Cache || $e)(), n; } sr.Cache = $e; var wc = 500; function Uc(t) { var e = sr(t, function(r) { return n.size === wc && n.clear(), r; }), n = e.cache; return e; } var Dc = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g, $c = /\\(\\)?/g, Fc = Uc(function(t) { var e = []; return t.charCodeAt(0) === 46 && e.push(""), t.replace(Dc, function(n, r, i, s) { e.push(i ? s.replace($c, "$1") : r || n); }), e; }); function jc(t) { return t == null ? "" : Di(t); } function ln(t, e) { return x(t) ? t : ir(t, e) ? [t] : Fc(jc(t)); } function Rt(t) { if (typeof t == "string" || en(t)) return t; var e = t + ""; return e == "0" && 1 / t == -1 / 0 ? "-0" : e; } function or(t, e) { e = ln(e, t); for (var n = 0, r = e.length; t != null && n < r; ) t = t[Rt(e[n++])]; return n && n == r ? t : void 0; } function Gc(t, e, n) { var r = t == null ? void 0 : or(t, e); return r === void 0 ? n : r; } function ar(t, e) { for (var n = -1, r = e.length, i = t.length; ++n < r; ) t[i + n] = e[n]; return t; } var Br = ue ? ue.isConcatSpreadable : void 0; function Bc(t) { return x(t) || on(t) || !!(Br && t && t[Br]); } function cr(t, e, n, r, i) { var s = -1, o = t.length; for (n || (n = Bc), i || (i = []); ++s < o; ) { var a = t[s]; n(a) ? ar(i, a) : r || (i[i.length] = a); } return i; } function me(t) { var e = t == null ? 0 : t.length; return e ? cr(t) : []; } var Xi = Wi(Object.getPrototypeOf, Object); function qi(t, e, n) { var r = -1, i = t.length; e < 0 && (e = -e > i ? 0 : i + e), n = n > i ? i : n, n < 0 && (n += i), i = e > n ? 0 : n - e >>> 0, e >>>= 0; for (var s = Array(i); ++r < i; ) s[r] = t[r + e]; return s; } function Vc(t, e, n, r) { var i = -1, s = t == null ? 0 : t.length; for (r && s && (n = t[++i]); ++i < s; ) n = e(n, t[i], i, t); return n; } function Kc() { this.__data__ = new De(), this.size = 0; } function Hc(t) { var e = this.__data__, n = e.delete(t); return this.size = e.size, n; } function Wc(t) { return this.__data__.get(t); } function zc(t) { return this.__data__.has(t); } var Yc = 200; function Xc(t, e) { var n = this.__data__; if (n instanceof De) { var r = n.__data__; if (!yt || r.length < Yc - 1) return r.push([t, e]), this.size = ++n.size, this; n = this.__data__ = new $e(r); } return n.set(t, e), this.size = n.size, this; } function Oe(t) { var e = this.__data__ = new De(t); this.size = e.size; } Oe.prototype.clear = Kc; Oe.prototype.delete = Hc; Oe.prototype.get = Wc; Oe.prototype.has = zc; Oe.prototype.set = Xc; function qc(t, e) { return t && er(e, he(e), t); } var Zi = typeof exports == "object" && exports && !exports.nodeType && exports, Vr = Zi && typeof module == "object" && module && !module.nodeType && module, Zc = Vr && Vr.exports === Zi, Kr = Zc ? Se.Buffer : void 0, Hr = Kr ? Kr.allocUnsafe : void 0; function Qc(t, e) { var n = t.length, r = Hr ? Hr(n) : new t.constructor(n); return t.copy(r), r; } function ur(t, e) { for (var n = -1, r = t == null ? 0 : t.length, i = 0, s = []; ++n < r; ) { var o = t[n]; e(o, n, t) && (s[i++] = o); } return s; } function Qi() { return []; } var Jc = Object.prototype, eu = Jc.propertyIsEnumerable, Wr = Object.getOwnPropertySymbols, lr = Wr ? function(t) { return t == null ? [] : (t = Object(t), ur(Wr(t), function(e) { return eu.call(t, e); })); } : Qi; function tu(t, e) { return er(t, lr(t), e); } var nu = Object.getOwnPropertySymbols, ru = nu ? function(t) { for (var e = []; t; ) ar(e, lr(t)), t = Xi(t); return e; } : Qi; function Ji(t, e, n) { var r = e(t); return x(t) ? r : ar(r, n(t)); } function xn(t) { return Ji(t, he, lr); } function iu(t) { return Ji(t, Yi, ru); } var Mn = qe(Se, "DataView"), Pn = qe(Se, "Promise"), et = qe(Se, "Set"), zr = "[object Map]", su = "[object Object]", Yr = "[object Promise]", Xr = "[object Set]", qr = "[object WeakMap]", Zr = "[object DataView]", ou = Xe(Mn), au = Xe(yt), cu = Xe(Pn), uu = Xe(et), lu = Xe(bn), ae = Be; (Mn && ae(new Mn(new ArrayBuffer(1))) != Zr || yt && ae(new yt()) != zr || Pn && ae(Pn.resolve()) != Yr || et && ae(new et()) != Xr || bn && ae(new bn()) != qr) && (ae = function(t) { var e = Be(t), n = e == su ? t.constructor : void 0, r = n ? Xe(n) : ""; if (r) switch (r) { case ou: return Zr; case au: return zr; case cu: return Yr; case uu: return Xr; case lu: return qr; } return e; }); var hu = Object.prototype, fu = hu.hasOwnProperty; function du(t) { var e = t.length, n = new t.constructor(e); return e && typeof t[0] == "string" && fu.call(t, "index") && (n.index = t.index, n.input = t.input), n; } var Kt = Se.Uint8Array; function pu(t) { var e = new t.constructor(t.byteLength); return new Kt(e).set(new Kt(t)), e; } function mu(t, e) { var n = t.buffer; return new t.constructor(n, t.byteOffset, t.byteLength); } var gu = /\w*$/; function Eu(t) { var e = new t.constructor(t.source, gu.exec(t)); return e.lastIndex = t.lastIndex, e; } var Qr = ue ? ue.prototype : void 0, Jr = Qr ? Qr.valueOf : void 0; function Tu(t) { return Jr ? Object(Jr.call(t)) : {}; } function yu(t, e) { var n = t.buffer; return new t.constructor(n, t.byteOffset, t.length); } var Au = "[object Boolean]", _u = "[object Date]", vu = "[object Map]", Ru = "[object Number]", Ou = "[object RegExp]", Su = "[object Set]", Iu = "[object String]", Nu = "[object Symbol]", Lu = "[object ArrayBuffer]", Cu = "[object DataView]", ku = "[object Float32Array]", bu = "[object Float64Array]", xu = "[object Int8Array]", Mu = "[object Int16Array]", Pu = "[object Int32Array]", wu = "[object Uint8Array]", Uu = "[object Uint8ClampedArray]", Du = "[object Uint16Array]", $u = "[object Uint32Array]"; function Fu(t, e, n) { var r = t.constructor; switch (e) { case Lu: return pu(t); case Au: case _u: return new r(+t); case Cu: return mu(t); case ku: case bu: case xu: case Mu: case Pu: case wu: case Uu: case Du: case $u: return yu(t); case vu: return new r(); case Ru: case Iu: return new r(t); case Ou: return Eu(t); case Su: return new r(); case Nu: return Tu(t); } } function ju(t) { return typeof t.constructor == "function" && !vt(t) ? Qo(Xi(t)) : {}; } var Gu = "[object Map]"; function Bu(t) { return Ee(t) && ae(t) == Gu; } var ei = je && je.isMap, Vu = ei ? an(ei) : Bu, Ku = "[object Set]"; function Hu(t) { return Ee(t) && ae(t) == Ku; } var ti = je && je.isSet, Wu = ti ? an(ti) : Hu, es = "[object Arguments]", zu = "[object Array]", Yu = "[object Boolean]", Xu = "[object Date]", qu = "[object Error]", ts = "[object Function]", Zu = "[object GeneratorFunction]", Qu = "[object Map]", Ju = "[object Number]", ns = "[object Object]", el = "[object RegExp]", tl = "[object Set]", nl = "[object String]", rl = "[object Symbol]", il = "[object WeakMap]", sl = "[object ArrayBuffer]", ol = "[object DataView]", al = "[object Float32Array]", cl = "[object Float64Array]", ul = "[object Int8Array]", ll = "[object Int16Array]", hl = "[object Int32Array]", fl = "[object Uint8Array]", dl = "[object Uint8ClampedArray]", pl = "[object Uint16Array]", ml = "[object Uint32Array]", U = {}; U[es] = U[zu] = U[sl] = U[ol] = U[Yu] = U[Xu] = U[al] = U[cl] = U[ul] = U[ll] = U[hl] = U[Qu] = U[Ju] = U[ns] = U[el] = U[tl] = U[nl] = U[rl] = U[fl] = U[dl] = U[pl] = U[ml] = !0; U[qu] = U[ts] = U[il] = !1; function Ut(t, e, n, r, i, s) { var o; if (o !== void 0) return o; if (!le(t)) return t; var a = x(t); if (a) return o = du(t), ea(t, o); var c = ae(t), u = c == ts || c == Zu; if (Et(t)) return Qc(t); if (c == ns || c == es || u && !i) return o = u ? {} : ju(t), tu(t, qc(o, t)); if (!U[c]) return i ? t : {}; o = Fu(t, c), s || (s = new Oe()); var l = s.get(t); if (l) return l; s.set(t, o), Wu(t) ? t.forEach(function(_) { o.add(Ut(_, e, n, _, t, s)); }) : Vu(t) && t.forEach(function(_, E) { o.set(E, Ut(_, e, n, E, t, s)); }); var h = xn, f = a ? void 0 : h(t); return $i(f || t, function(_, E) { f && (E = _, _ = t[E]), sn(o, E, Ut(_, e, n, E, t, s)); }), o; } var gl = 4; function z(t) { return Ut(t, gl); } function Ot(t) { for (var e = -1, n = t == null ? 0 : t.length, r = 0, i = []; ++e < n; ) { var s = t[e]; s && (i[r++] = s); } return i; } var El = "__lodash_hash_undefined__"; function Tl(t) { return this.__data__.set(t, El), this; } function yl(t) { return this.__data__.has(t); } function nt(t) { var e = -1, n = t == null ? 0 : t.length; for (this.__data__ = new $e(); ++e < n; ) this.add(t[e]); } nt.prototype.add = nt.prototype.push = Tl; nt.prototype.has = yl; function rs(t, e) { for (var n = -1, r = t == null ? 0 : t.length; ++n < r; ) if (e(t[n], n, t)) return !0; return !1; } function hr(t, e) { return t.has(e); } var Al = 1, _l = 2; function is(t, e, n, r, i, s) { var o = n & Al, a = t.length, c = e.length; if (a != c && !(o && c > a)) return !1; var u = s.get(t), l = s.get(e); if (u && l) return u == e && l == t; var h = -1, f = !0, _ = n & _l ? new nt() : void 0; for (s.set(t, e), s.set(e, t); ++h < a; ) { var E = t[h], y = e[h]; if (r) var R = o ? r(y, E, h, e, t, s) : r(E, y, h, t, e, s); if (R !== void 0) { if (R) continue; f = !1; break; } if (_) { if (!rs(e, function(g, T) { if (!hr(_, T) && (E === g || i(E, g, n, r, s))) return _.push(T); })) { f = !1; break; } } else if (!(E === y || i(E, y, n, r, s))) { f = !1; break; } } return s.delete(t), s.delete(e), f; } function vl(t) { var e = -1, n = Array(t.size); return t.forEach(function(r, i) { n[++e] = [i, r]; }), n; } function fr(t) { var e = -1, n = Array(t.size); return t.forEach(function(r) { n[++e] = r; }), n; } var Rl = 1, Ol = 2, Sl = "[object Boolean]", Il = "[object Date]", Nl = "[object Error]", Ll = "[object Map]", Cl = "[object Number]", kl = "[object RegExp]", bl = "[object Set]", xl = "[object String]", Ml = "[object Symbol]", Pl = "[object ArrayBuffer]", wl = "[object DataView]", ni = ue ? ue.prototype : void 0, _n = ni ? ni.valueOf : void 0; function Ul(t, e, n, r, i, s, o) { switch (n) { case wl: if (t.byteLength != e.byteLength || t.byteOffset != e.byteOffset) return !1; t = t.buffer, e = e.buffer; case Pl: return !(t.byteLength != e.byteLength || !s(new Kt(t), new Kt(e))); case Sl: case Il: case Cl: return _t(+t, +e); case Nl: return t.name == e.name && t.message == e.message; case kl: case xl: return t == e + ""; case Ll: var a = vl; case bl: var c = r & Rl; if (a || (a = fr), t.size != e.size && !c) return !1; var u = o.get(t); if (u) return u == e; r |= Ol, o.set(t, e); var l = is(a(t), a(e), r, i, s, o); return o.delete(t), l; case Ml: if (_n) return _n.call(t) == _n.call(e); } return !1; } var Dl = 1, $l = Object.prototype, Fl = $l.hasOwnProperty; function jl(t, e, n, r, i, s) { var o = n & Dl, a = xn(t), c = a.length, u = xn(e), l = u.length; if (c != l && !o) return !1; for (var h = c; h--; ) { var f = a[h]; if (!(o ? f in e : Fl.call(e, f))) return !1; } var _ = s.get(t), E = s.get(e); if (_ && E) return _ == e && E == t; var y = !0; s.set(t, e), s.set(e, t); for (var R = o; ++h < c; ) { f = a[h]; var g = t[f], T = e[f]; if (r) var p = o ? r(T, g, f, e, t, s) : r(g, T, f, t, e, s); if (!(p === void 0 ? g === T || i(g, T, n, r, s) : p)) { y = !1; break; } R || (R = f == "constructor"); } if (y && !R) { var A = t.constructor, I = e.constructor; A != I && "constructor" in t && "constructor" in e && !(typeof A == "function" && A instanceof A && typeof I == "function" && I instanceof I) && (y = !1); } return s.delete(t), s.delete(e), y; } var Gl = 1, ri = "[object Arguments]", ii = "[object Array]", kt = "[object Object]", Bl = Object.prototype, si = Bl.hasOwnProperty; function Vl(t, e, n, r, i, s) { var o = x(t), a = x(e), c = o ? ii : ae(t), u = a ? ii : ae(e); c = c == ri ? kt : c, u = u == ri ? kt : u; var l = c == kt, h = u == kt, f = c == u; if (f && Et(t)) { if (!Et(e)) return !1; o = !0, l = !1; } if (f && !l) return s || (s = new Oe()), o || rr(t) ? is(t, e, n, r, i, s) : Ul(t, e, c, n, r, i, s); if (!(n & Gl)) { var _ = l && si.call(t, "__wrapped__"), E = h && si.call(e, "__wrapped__"); if (_ || E) { var y = _ ? t.value() : t, R = E ? e.value() : e; return s || (s = new Oe()), i(y, R, n, r, s); } } return f ? (s || (s = new Oe()), jl(t, e, n, r, i, s)) : !1; } function dr(t, e, n, r, i) { return t === e ? !0 : t == null || e == null || !Ee(t) && !Ee(e) ? t !== t && e !== e : Vl(t, e, n, r, dr, i); } var Kl = 1, Hl = 2; function Wl(t, e, n, r) { var i = n.length, s = i; if (t == null) return !s; for (t = Object(t); i--; ) { var o = n[i]; if (o[2] ? o[1] !== t[o[0]] : !(o[0] in t)) return !1; } for (; ++i < s; ) { o = n[i]; var a = o[0], c = t[a], u = o[1]; if (o[2]) { if (c === void 0 && !(a in t)) return !1; } else { var l = new Oe(), h; if (!(h === void 0 ? dr(u, c, Kl | Hl, r, l) : h)) return !1; } } return !0; } function ss(t) { return t === t && !le(t); } function zl(t) { for (var e = he(t), n = e.length; n--; ) { var r = e[n], i = t[r]; e[n] = [r, i, ss(i)]; } return e; } function os(t, e) { return function(n) { return n == null ? !1 : n[t] === e && (e !== void 0 || t in Object(n)); }; } function Yl(t) { var e = zl(t); return e.length == 1 && e[0][2] ? os(e[0][0], e[0][1]) : function(n) { return n === t || Wl(n, t, e); }; } function Xl(t, e) { return t != null && e in Object(t); } function as(t, e, n) { e = ln(e, t); for (var r = -1, i = e.length, s = !1; ++r < i; ) { var o = Rt(e[r]); if (!(s = t != null && n(t, o))) break; t = t[o]; } return s || ++r != i ? s : (i = t == null ? 0 : t.length, !!i && nr(i) && rn(o, i) && (x(t) || on(t))); } function ql(t, e) { return t != null && as(t, e, Xl); } var Zl = 1, Ql = 2; function Jl(t, e) { return ir(t) && ss(e) ? os(Rt(t), e) : function(n) { var r = Gc(n, t); return r === void 0 && r === e ? ql(n, t) : dr(e, r, Zl | Ql); }; } function eh(t) { return function(e) { return e?.[t]; }; } function th(t) { return function(e) { return or(e, t); }; } function nh(t) { return ir(t) ? eh(Rt(t)) : th(t); } function Ne(t) { return typeof t == "function" ? t : t == null ? tt : typeof t == "object" ? x(t) ? Jl(t[0], t[1]) : Yl(t) : nh(t); } function rh(t, e, n, r) { for (var i = -1, s = t == null ? 0 : t.length; ++i < s; ) { var o = t[i]; e(r, o, n(o), t); } return r; } function ih(t) { return function(e, n, r) { for (var i = -1, s = Object(e), o = r(e), a = o.length; a--; ) { var c = o[++i]; if (n(s[c], c, s) === !1) break; } return e; }; } var sh = ih(); function oh(t, e) { return t && sh(t, e, he); } function ah(t, e) { return function(n, r) { if (n == null) return n; if (!Ie(n)) return t(n, r); for (var i = n.length, s = -1, o = Object(n); ++s < i && r(o[s], s, o) !== !1; ) ; return n; }; } var Ze = ah(oh); function ch(t, e, n, r) { return Ze(t, function(i, s, o) { e(r, i, n(i), o); }), r; } function uh(t, e) { return function(n, r) { var i = x(n) ? rh : ch, s = {}; return i(n, t, Ne(r), s); }; } var cs = Object.prototype, lh = cs.hasOwnProperty, pr = tr(function(t, e) { t = Object(t); var n = -1, r = e.length, i = r > 2 ? e[2] : void 0; for (i && Gi(e[0], e[1], i) && (r = 1); ++n < r; ) for (var s = e[n], o = Yi(s), a = -1, c = o.length; ++a < c; ) { var u = o[a], l = t[u]; (l === void 0 || _t(l, cs[u]) && !lh.call(t, u)) && (t[u] = s[u]); } return t; }); function oi(t) { return Ee(t) && Ie(t); } var hh = 200; function fh(t, e, n, r) { var i = -1, s = ji, o = !0, a = t.length, c = [], u = e.length; if (!a) return c; e.length >= hh && (s = hr, o = !1, e = new nt(e)); e: for (; ++i < a; ) { var l = t[i], h = l; if (l = l !== 0 ? l : 0, o && h === h) { for (var f = u; f--; ) if (e[f] === h) continue e; c.push(l); } else s(e, h, r) || c.push(l); } return c; } var hn = tr(function(t, e) { return oi(t) ? fh(t, cr(e, 1, oi, !0)) : []; }); function rt(t) { var e = t == null ? 0 : t.length; return e ? t[e - 1] : void 0; } function W(t, e, n) { var r = t == null ? 0 : t.length; return r ? (e = e === void 0 ? 1 : nn(e), qi(t, e < 0 ? 0 : e, r)) : []; } function At(t, e, n) { var r = t == null ? 0 : t.length; return r ? (e = e === void 0 ? 1 : nn(e), e = r - e, qi(t, 0, e < 0 ? 0 : e)) : []; } function dh(t) { return typeof t == "function" ? t : tt; } function N(t, e) { var n = x(t) ? $i : Ze; return n(t, dh(e)); } function ph(t, e) { for (var n = -1, r = t == null ? 0 : t.length; ++n < r; ) if (!e(t[n], n, t)) return !1; return !0; } function mh(t, e) { var n = !0; return Ze(t, function(r, i, s) { return n = !!e(r, i, s), n; }), n; } function ge(t, e, n) { var r = x(t) ? ph : mh; return r(t, Ne(e)); } function us(t, e) { var n = []; return Ze(t, function(r, i, s) { e(r, i, s) && n.push(r); }), n; } function fe(t, e) { var n = x(t) ? ur : us; return n(t, Ne(e)); } function gh(t) { return function(e, n, r) { var i = Object(e); if (!Ie(e)) { var s = Ne(n); e = he(e), n = function(a) { return s(i[a], a, i); }; } var o = t(e, n, r); return o > -1 ? i[s ? e[o] : o] : void 0; }; } var Eh = Math.max; function Th(t, e, n) { var r = t == null ? 0 : t.length; if (!r) return -1; var i = n == null ? 0 : nn(n); return i < 0 && (i = Eh(r + i, 0)), Fi(t, Ne(e), i); } var it = gh(Th); function Te(t) { return t && t.length ? t[0] : void 0; } function yh(t, e) { var n = -1, r = Ie(t) ? Array(t.length) : []; return Ze(t, function(i, s, o) { r[++n] = e(i, s, o); }), r; } function v(t, e) { var n = x(t) ? tn : yh; return n(t, Ne(e)); } function ce(t, e) { return cr(v(t, e)); } var Ah = Object.prototype, _h = Ah.hasOwnProperty, vh = uh(function(t, e, n) { _h.call(t, n) ? t[n].push(e) : Jn(t, n, [e]); }), Rh = Object.prototype, Oh = Rh.hasOwnProperty; function Sh(t, e) { return t != null && Oh.call(t, e); } function S(t, e) { return t != null && as(t, e, Sh); } var Ih = "[object String]"; function J(t) { return typeof t == "string" || !x(t) && Ee(t) && Be(t) == Ih; } function Nh(t, e) { return tn(e, function(n) { return t[n]; }); } function K(t) { return t == null ? [] : Nh(t, he(t)); } var Lh = Math.max; function Z(t, e, n, r) { t = Ie(t) ? t : K(t), n = n ? nn(n) : 0; var i = t.length; return n < 0 && (n = Lh(i + n, 0)), J(t) ? n <= i && t.indexOf(e, n) > -1 : !!i && Qn(t, e, n) > -1; } function ai(t, e, n) { var r = t == null ? 0 : t.length; if (!r) return -1; var i = 0; return Qn(t, e, i); } var Ch = "[object Map]", kh = "[object Set]", bh = Object.prototype, xh = bh.hasOwnProperty; function D(t) { if (t == null) return !0; if (Ie(t) && (x(t) || typeof t == "string" || typeof t.splice == "function" || Et(t) || rr(t) || on(t))) return !t.length; var e = ae(t); if (e == Ch || e == kh) return !t.size; if (vt(t)) return !zi(t).length; for (var n in t) if (xh.call(t, n)) return !1; return !0; } var Mh = "[object RegExp]"; function Ph(t) { return Ee(t) && Be(t) == Mh; } var ci = je && je.isRegExp, Me = ci ? an(ci) : Ph; function Pe(t) { return t === void 0; } var wh = "Expected a function"; function Uh(t) { if (typeof t != "function") throw new TypeError(wh); return function() { var e = arguments; switch (e.length) { case 0: return !t.call(this); case 1: return !t.call(this, e[0]); case 2: return !t.call(this, e[0], e[1]); case 3: return !t.call(this, e[0], e[1], e[2]); } return !t.apply(this, e); }; } function Dh(t, e, n, r) { if (!le(t)) return t; e = ln(e, t); for (var i = -1, s = e.length, o = s - 1, a = t; a != null && ++i < s; ) { var c = Rt(e[i]), u = n; if (c === "__proto__" || c === "constructor" || c === "prototype") return t; if (i != o) { var l = a[c]; u = void 0, u === void 0 && (u = le(l) ? l : rn(e[i + 1]) ? [] : {}); } sn(a, c, u), a = a[c]; } return t; } function $h(t, e, n) { for (var r = -1, i = e.length, s = {}; ++r < i; ) { var o = e[r], a = or(t, o); n(a, o) && Dh(s, ln(o, t), a); } return s; } function ye(t, e) { if (t == null) return {}; var n = tn(iu(t), function(r) { return [r]; }); return e = Ne(e), $h(t, n, function(r, i) { return e(r, i[0]); }); } function Fh(t, e, n, r, i) { return i(t, function(s, o, a) { n = r ? (r = !1, s) : e(n, s, o, a); }), n; } function re(t, e, n) { var r = x(t) ? Vc : Fh, i = arguments.length < 3; return r(t, Ne(e), n, i, Ze); } function fn(t, e) { var n = x(t) ? ur : us; return n(t, Uh(Ne(e))); } function jh(t, e) { var n; return Ze(t, function(r, i, s) { return n = e(r, i, s), !n; }), !!n; } function ls(t, e, n) { var r = x(t) ? rs : jh; return r(t, Ne(e)); } var Gh = 1 / 0, Bh = et && 1 / fr(new et([, -0]))[1] == Gh ? function(t) { return new et(t); } : V, Vh = 200; function Kh(t, e, n) { var r = -1, i = ji, s = t.length, o = !0, a = [], c = a; if (s >= Vh) { var u = Bh(t); if (u) return fr(u); o = !1, i = hr, c = new nt(); } else c = a; e: for (; ++r < s; ) { var l = t[r], h = l; if (l = l !== 0 ? l : 0, o && h === h) { for (var f = c.length; f--; ) if (c[f] === h) continue e; a.push(l); } else i(c, h, n) || (c !== a && c.push(h), a.push(l)); } return a; } function mr(t) { return t && t.length ? Kh(t) : []; } function wn(t) { console && console.error && console.error(`Error: ${t}`); } function hs(t) { console && console.warn && console.warn(`Warning: ${t}`); } function fs(t) { const e = (/* @__PURE__ */ new Date()).getTime(), n = t(); return { time: (/* @__PURE__ */ new Date()).getTime() - e, value: n }; } function ds(t) { function e() { } e.prototype = t; const n = new e(); function r() { return typeof n.bar; } return r(), r(), t; } function Hh(t) { return Wh(t) ? t.LABEL : t.name; } function Wh(t) { return J(t.LABEL) && t.LABEL !== ""; } class Le { get definition() { return this._definition; } set definition(e) { this._definition = e; } constructor(e) { this._definition = e; } accept(e) { e.visit(this), N(this.definition, (n) => { n.accept(e); }); } } class ie extends Le { constructor(e) { super([]), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } set definition(e) { } get definition() { return this.referencedRule !== void 0 ? this.referencedRule.definition : []; } accept(e) { e.visit(this); } } class st extends Le { constructor(e) { super(e.definition), this.orgText = "", ne(this, ye(e, (n) => n !== void 0)); } } class ee extends Le { constructor(e) { super(e.definition), this.ignoreAmbiguities = !1, ne(this, ye(e, (n) => n !== void 0)); } } class Q extends Le { constructor(e) { super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } } class Ce extends Le { constructor(e) { super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } } class ke extends Le { constructor(e) { super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } } class H extends Le { constructor(e) { super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } } class Ae extends Le { constructor(e) { super(e.definition), this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } } class _e extends Le { get definition() { return this._definition; } set definition(e) { this._definition = e; } constructor(e) { super(e.definition), this.idx = 1, this.ignoreAmbiguities = !1, this.hasPredicates = !1, ne(this, ye(e, (n) => n !== void 0)); } } class F { constructor(e) { this.idx = 1, ne(this, ye(e, (n) => n !== void 0)); } accept(e) { e.visit(this); } } function zh(t) { return v(t, Dt); } function Dt(t) { function e(n) { return v(n, Dt); } if (t instanceof ie) { const n = { type: "NonTerminal", name: t.nonTerminalName, idx: t.idx }; return J(t.label) && (n.label = t.label), n; } else { if (t instanceof ee) return { type: "Alternative", definition: e(t.definition) }; if (t instanceof Q) return { type: "Option", idx: t.idx, definition: e(t.definition) }; if (t instanceof Ce) return { type: "RepetitionMandatory", idx: t.idx, definition: e(t.definition) }; if (t instanceof ke) return { type: "RepetitionMandatoryWithSeparator", idx: t.idx, separator: Dt(new F({ terminalType: t.separator })), definition: e(t.definition) }; if (t instanceof Ae) return { type: "RepetitionWithSeparator", idx: t.idx, separator: Dt(new F({ terminalType: t.separator })), definition: e(t.definition) }; if (t instanceof H) return { type: "Repetition", idx: t.idx, definition: e(t.definition) }; if (t instanceof _e) return { type: "Alternation", idx: t.idx, definition: e(t.definition) }; if (t instanceof F) { const n = { type: "Terminal", name: t.terminalType.name, label: Hh(t.terminalType), idx: t.idx }; J(t.label) && (n.terminalLabel = t.label); const r = t.terminalType.PATTERN; return t.terminalType.PATTERN && (n.pattern = Me(r) ? r.source : r), n; } else { if (t instanceof st) return { type: "Rule", name: t.name, orgText: t.orgText, definition: e(t.definition) }; throw Error("non exhaustive match"); } } } class ot { visit(e) { const n = e; switch (n.constructor) { case ie: return this.visitNonTerminal(n); case ee: return this.visitAlternative(n); case Q: return this.visitOption(n); case Ce: return this.visitRepetitionMandatory(n); case ke: return this.visitRepetitionMandatoryWithSeparator(n); case Ae: return this.visitRepetitionWithSeparator(n); case H: return this.visitRepetition(n); case _e: return this.visitAlternation(n); case F: return this.visitTerminal(n); case st: return this.visitRule(n); /* c8 ignore next 2 */ default: throw Error("non exhaustive match"); } } /* c8 ignore next */ visitNonTerminal(e) { } /* c8 ignore next */ visitAlternative(e) { } /* c8 ignore next */ visitOption(e) { } /* c8 ignore next */ visitRepetition(e) { } /* c8 ignore next */ visitRepetitionMandatory(e) { } /* c8 ignore next 3 */ visitRepetitionMandatoryWithSeparator(e) { } /* c8 ignore next */ visitRepetitionWithSeparator(e) { } /* c8 ignore next */ visitAlternation(e) { } /* c8 ignore next */ visitTerminal(e) { } /* c8 ignore next */ visitRule(e) { } } function Yh(t) { return t instanceof ee || t instanceof Q || t instanceof H || t instanceof Ce || t instanceof ke || t instanceof Ae || t instanceof F || t instanceof st; } function Ht(t, e = []) { return t instanceof Q || t instanceof H || t instanceof Ae ? !0 : t instanceof _e ? ls(t.definition, (n) => Ht(n, e)) : t instanceof ie && Z(e, t) ? !1 : t instanceof Le ? (t instanceof ie && e.push(t), ge(t.definition, (n) => Ht(n, e))) : !1; } function Xh(t) { return t instanceof _e; } function Re(t) { if (t instanceof ie) return "SUBRULE"; if (t instanceof Q) return "OPTION"; if (t instanceof _e) return "OR"; if (t instanceof Ce) return "AT_LEAST_ONE"; if (t instanceof ke) return "AT_LEAST_ONE_SEP"; if (t instanceof Ae) return "MANY_SEP"; if (t instanceof H) return "MANY"; if (t instanceof F) return "CONSUME"; throw Error("non exhaustive match"); } class dn { walk(e, n = []) { N(e.definition, (r, i) => { const s = W(e.definition, i + 1); if (r instanceof ie) this.walkProdRef(r, s, n); else if (r instanceof F) this.walkTerminal(r, s, n); else if (r instanceof ee) this.walkFlat(r, s, n); else if (r instanceof Q) this.walkOption(r, s, n); else if (r instanceof Ce) this.walkAtLeastOne(r, s, n); else if (r instanceof ke) this.walkAtLeastOneSep(r, s, n); else if (r instanceof Ae) this.walkManySep(r, s, n); else if (r instanceof H) this.walkMany(r, s, n); else if (r instanceof _e) this.walkOr(r, s, n); else throw Error("non exhaustive match"); }); } walkTerminal(e, n, r) { } walkProdRef(e, n, r) { } walkFlat(e, n, r) { const i = n.concat(r); this.walk(e, i); } walkOption(e, n, r) { const i = n.concat(r); this.walk(e, i); } walkAtLeastOne(e, n, r) { const i = [ new Q({ definition: e.definition }) ].concat(n, r); this.walk(e, i); } walkAtLeastOneSep(e, n, r) { const i = ui(e, n, r); this.walk(e, i); } walkMany(e, n, r) { const i = [ new Q({ definition: e.definition }) ].concat(n, r); this.walk(e, i); } walkManySep(e, n, r) { const i = ui(e, n, r); this.walk(e, i); } walkOr(e, n, r) { const i = n.concat(r); N(e.definition, (s) => { const o = new ee({ definition: [s] }); this.walk(o, i); }); } } function ui(t, e, n) { return [ new Q({ definition: [ new F({ terminalType: t.separator }) ].concat(t.definition) }) ].concat(e, n); } function St(t) { if (t instanceof ie) return St(t.referencedRule); if (t instanceof F) return Qh(t); if (Yh(t)) return qh(t); if (Xh(t)) return Zh(t); throw Error("non exhaustive match"); } function qh(t) { let e = []; const n = t.definition; let r = 0, i = n.length > r, s, o = !0; for (; i && o; ) s = n[r], o = Ht(s), e = e.concat(St(s)), r = r + 1, i = n.length > r; return mr(e); } function Zh(t) { const e = v(t.definition, (n) => St(n)); return mr(me(e)); } function Qh(t) { return [t.terminalType]; } const ps = "_~IN~_"; class Jh extends dn { constructor(e) { super(), this.topProd = e, this.follows = {}; } startWalking() { return this.walk(this.topProd), this.follows; } walkTerminal(e, n, r) { } walkProdRef(e, n, r) { const i = tf(e.referencedRule, e.idx) + this.topProd.name, s = n.concat(r), o = new ee({ definition: s }), a = St(o); this.follows[i] = a; } } function ef(t) { const e = {}; return N(t, (n) => { const r = new Jh(n).startWalking(); ne(e, r); }), e; } function tf(t, e) { return t.name + e + ps; } function L(t) { return t.charCodeAt(0); } function vn(t, e) { Array.isArray(t) ? t.forEach(function(n) { e.push(n); }) : e.push(t); } function lt(t, e) { if (t[e] === !0) throw "duplicate flag " + e; t[e], t[e] = !0; } function Je(t) { if (t === void 0) throw Error("Internal Error - Should never get here!"); return !0; } function nf() { throw Error("Internal Error - Should never get here!"); } function li(t) { return t.type === "Character"; } const Wt = []; for (let t = L("0"); t <= L("9"); t++) Wt.push(t); const zt = [L("_")].concat(Wt); for (let t = L("a"); t <= L("z"); t++) zt.push(t); for (let t = L("A"); t <= L("Z"); t++) zt.push(t); const hi = [ L(" "), L("\f"), L(` `), L("\r"), L(" "), L("\v"), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L(" "), L("\u2028"), L("\u2029"), L(" "), L(" "), L(" "), L("\uFEFF") ], rf = /[0-9a-fA-F]/, bt = /[0-9]/, sf = /[1-9]/; class of { constructor() { this.idx = 0, this.input = "", this.groupIdx = 0; } saveState() { return { idx: this.idx, input: this.input, groupIdx: this.groupIdx }; } restoreState(e) { this.idx = e.idx, this.input = e.input, this.groupIdx = e.groupIdx; } pattern(e) { this.idx = 0, this.input = e, this.groupIdx = 0, this.consumeChar("/"); const n = this.disjunction(); this.consumeChar("/"); const r = { type: "Flags", loc: { begin: this.idx, end: e.length }, global: !1, ignoreCase: !1, multiLine: !1, unicode: !1, sticky: !1 }; for (; this.isRegExpFlag(); ) switch (this.popChar()) { case "g": lt(r, "global"); break; case "i": lt(r, "ignoreCase"); break; case "m": lt(r, "multiLine"); break; case "u": lt(r, "unicode"); break; case "y": lt(r, "sticky"); break; } if (this.idx !== this.input.length) throw Error("Redundant input: " + this.input.substring(this.idx)); return { type: "Pattern", flags: r, value: n, loc: this.loc(0) }; } disjunction() { const e = [], n = this.idx; for (e.push(this.alternative()); this.peekChar() === "|"; ) this.consumeChar("|"), e.push(this.alternative()); return { type: "Disjunction", value: e, loc: this.loc(n) }; } alternative() { const e = [], n = this.idx; for (; this.isTerm(); ) e.push(this.term()); return { type: "Alternative", value: e, loc: this.loc(n) }; } term() { return this.isAssertion() ? this.assertion() : this.atom(); } assertion() { const e = this.idx; switch (this.popChar()) { case "^": return { type: "StartAnchor", loc: this.loc(e) }; case "$": return { type: "EndAnchor", loc: this.loc(e) }; // '\b' or '\B' case "\\": switch (this.popChar()) { case "b": return {