UNPKG

prettier-plugin-edgejs

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