import { n as __esmMin } from "./rolldown-runtime-CE-6LUnI.js";
//#region ../../node_modules/.pnpm/prettier@3.9.6/node_modules/prettier/plugins/meriyah.mjs
function Ne(e) {
	return e <= 127 ? Z2[e] > 0 : St(e);
}
function we(e) {
	return e <= 127 ? Bt[e] > 0 : Q2(e) || e === 8204 || e === 8205;
}
function m(e) {
	return e.column++, e.currentChar = e.source.charCodeAt(++e.index);
}
function Qe(e) {
	let t = e.currentChar;
	if ((t & 64512) !== 55296) return 0;
	let n = e.source.charCodeAt(e.index + 1);
	return (n & 64512) !== 56320 ? 0 : 65536 + ((t & 1023) << 10) + (n & 1023);
}
function Ze(e, t) {
	e.currentChar = e.source.charCodeAt(++e.index), e.flags |= 1, !(t & 4) && (e.column = 0, e.line++);
}
function te(e) {
	e.flags |= 1, e.currentChar = e.source.charCodeAt(++e.index), e.column = 0, e.line++;
}
function G2(e) {
	return e === 160 || e === 65279 || e === 133 || e === 5760 || e >= 8192 && e <= 8203 || e === 8239 || e === 8287 || e === 12288 || e === 8201 || e === 65519;
}
function _(e) {
	return e < 65 ? e - 48 : e - 65 + 10 & 15;
}
function x2(e) {
	switch (e) {
		case 134283266: return "NumericLiteral";
		case 134283267: return "StringLiteral";
		case 86021:
		case 86022: return "BooleanLiteral";
		case 86023: return "NullLiteral";
		case 65540: return "RegularExpression";
		case 67174408:
		case 67174409:
		case 131: return "TemplateLiteral";
		default: return (e & 143360) === 143360 ? "Identifier" : (e & 4096) === 4096 ? "Keyword" : "Punctuator";
	}
}
function p2(e) {
	let { source: t } = e;
	e.currentChar === 35 && t.charCodeAt(e.index + 1) === 33 && (m(e), m(e), Ge(e, t, 0, 4, e.tokenStart));
}
function yt(e, t, n, u, o, i) {
	return u & 2 && e.report(0), Ge(e, t, n, o, i);
}
function Ge(e, t, n, u, o) {
	let { index: i } = e;
	for (e.tokenIndex = e.index, e.tokenLine = e.line, e.tokenColumn = e.column; e.index < e.end;) {
		if (S[e.currentChar] & 8) {
			let l = e.currentChar === 13;
			te(e), l && e.index < e.end && e.currentChar === 10 && (e.currentChar = t.charCodeAt(++e.index));
			break;
		} else if ((e.currentChar ^ 8232) <= 1) {
			te(e);
			break;
		}
		m(e), e.tokenIndex = e.index, e.tokenLine = e.line, e.tokenColumn = e.column;
	}
	if (e.options.onComment) {
		let l = {
			start: {
				line: o.line,
				column: o.column
			},
			end: {
				line: e.tokenLine,
				column: e.tokenColumn
			}
		};
		e.options.onComment(Ft[u & 255], t.slice(i, e.tokenIndex), o.index, e.tokenIndex, l);
	}
	return n | 1;
}
function en(e, t, n) {
	let { index: u } = e;
	for (; e.index < e.end;) if (e.currentChar < 43) {
		let o = !1;
		for (; e.currentChar === 42;) if (o || (n &= -5, o = !0), m(e) === 47) {
			if (m(e), e.options.onComment) {
				let i = {
					start: {
						line: e.tokenLine,
						column: e.tokenColumn
					},
					end: {
						line: e.line,
						column: e.column
					}
				};
				e.options.onComment(Ft[1], t.slice(u, e.index - 2), u - 2, e.index, i);
			}
			return e.tokenIndex = e.index, e.tokenLine = e.line, e.tokenColumn = e.column, n;
		}
		if (o) continue;
		S[e.currentChar] & 8 ? e.currentChar === 13 ? (n |= 5, te(e)) : (Ze(e, n), n = n & -5 | 1) : m(e);
	} else (e.currentChar ^ 8232) <= 1 ? (n = n & -5 | 1, te(e)) : (n &= -5, m(e));
	e.report(18);
}
function Nt(e, t) {
	return ae(e, t) ? e[t] : void 0;
}
function At(e, t, n) {
	for (; Bt[m(e)];);
	return e.tokenValue = e.source.slice(e.tokenIndex, e.index), e.currentChar !== 92 && e.currentChar <= 126 ? Nt(It, e.tokenValue) ?? 208897 : xe(e, t, 0, n);
}
function nn(e, t) {
	let n = Lt(e);
	return Ne(n) || e.report(5), e.tokenValue = String.fromCodePoint(n), xe(e, t, 1, S[n] & 4);
}
function xe(e, t, n, u) {
	let o = e.index;
	for (; e.index < e.end;) if (e.currentChar === 92) {
		e.tokenValue += e.source.slice(o, e.index), n = 1;
		let l = Lt(e);
		we(l) || e.report(5), u = u && S[l] & 4, e.tokenValue += String.fromCodePoint(l), o = e.index;
	} else {
		let l = Qe(e);
		if (l > 0) we(l) || e.report(20, String.fromCodePoint(l)), e.currentChar = l, e.index++, e.column++;
		else if (!we(e.currentChar)) break;
		m(e);
	}
	e.index <= e.end && (e.tokenValue += e.source.slice(o, e.index));
	let { length: i } = e.tokenValue;
	if (u && i >= 2 && i <= 11) {
		let l = Nt(It, e.tokenValue);
		return l === void 0 ? 208897 | (n ? -2147483648 : 0) : n ? l === 209006 ? (t & 2050) === 0 ? l | -2147483648 : -2147483528 : t & 1 ? l === 36970 || (l & 36864) === 36864 ? -2147483527 : (l & 20480) === 20480 ? t & 262144 && (t & 8) === 0 ? l | -2147483648 : -2147483528 : -2147274630 : t & 262144 && (t & 8) === 0 && (l & 20480) === 20480 ? l | -2147483648 : l === 241771 ? t & 262144 ? -2147274630 : t & 1024 ? -2147483528 : l | -2147483648 : l === 209005 ? -2147274630 : (l & 36864) === 36864 ? l | -2147471360 : -2147483528 : l;
	}
	return 208897 | (n ? -2147483648 : 0);
}
function un(e) {
	let t = m(e);
	if (t === 92) return 130;
	let n = Qe(e);
	return n && (t = n), Ne(t) || e.report(96), 130;
}
function Lt(e) {
	return e.source.charCodeAt(e.index + 1) !== 117 && e.report(5), e.currentChar = e.source.charCodeAt(e.index += 2), e.column += 2, on(e);
}
function on(e) {
	let t = 0, n = e.currentChar;
	if (n === 123) {
		let l = e.index - 2;
		for (; S[m(e)] & 64;) if (t = t << 4 | _(e.currentChar), t > 1114111) throw new q({
			index: l,
			line: e.line,
			column: e.column
		}, e.currentLocation, 104);
		if (e.currentChar !== 125) throw new q({
			index: l,
			line: e.line,
			column: e.column
		}, e.currentLocation, 7);
		return m(e), t;
	}
	!(S[n] & 64) && e.report(7);
	let u = e.source.charCodeAt(e.index + 1);
	!(S[u] & 64) && e.report(7);
	let o = e.source.charCodeAt(e.index + 2);
	!(S[o] & 64) && e.report(7);
	let i = e.source.charCodeAt(e.index + 3);
	return !(S[i] & 64) && e.report(7), t = _(n) << 12 | _(u) << 8 | _(o) << 4 | _(i), e.currentChar = e.source.charCodeAt(e.index += 4), e.column += 4, t;
}
function Tt(e, t, n) {
	let u = e.currentChar, o = 0, i = 9, l = n & 64 ? 0 : 1, f = 0, c = 0;
	if (n & 64) o = "." + Ce(e, u), u = e.currentChar, u === 110 && e.report(12);
	else {
		if (u === 48) if (u = m(e), (u | 32) === 120) {
			for (n = 136, u = m(e); S[u] & 4160;) {
				if (u === 95) {
					c || e.report(152), c = 0, u = m(e);
					continue;
				}
				c = 1, o = o * 16 + _(u), f++, u = m(e);
			}
			(f === 0 || !c) && e.report(f === 0 ? 21 : 153);
		} else if ((u | 32) === 111) {
			for (n = 132, u = m(e); S[u] & 4128;) {
				if (u === 95) {
					c || e.report(152), c = 0, u = m(e);
					continue;
				}
				c = 1, o = o * 8 + (u - 48), f++, u = m(e);
			}
			(f === 0 || !c) && e.report(f === 0 ? 0 : 153);
		} else if ((u | 32) === 98) {
			for (n = 130, u = m(e); S[u] & 4224;) {
				if (u === 95) {
					c || e.report(152), c = 0, u = m(e);
					continue;
				}
				c = 1, o = o * 2 + (u - 48), f++, u = m(e);
			}
			(f === 0 || !c) && e.report(f === 0 ? 0 : 153);
		} else if (S[u] & 32) for (t & 1 && e.report(1), n = 1; S[u] & 16;) {
			if (S[u] & 512) {
				n = 32, l = 0;
				break;
			}
			o = o * 8 + (u - 48), u = m(e);
		}
		else S[u] & 512 ? (t & 1 && e.report(1), e.flags |= 64, n = 32) : u === 95 && e.report(0);
		if (n & 48) {
			if (l) {
				for (; i >= 0 && S[u] & 4112;) {
					if (u === 95) {
						if (u = m(e), u === 95 || n & 32) throw new q(e.currentLocation, {
							index: e.index + 1,
							line: e.line,
							column: e.column
						}, 152);
						c = 1;
						continue;
					}
					c = 0, o = 10 * o + (u - 48), u = m(e), --i;
				}
				if (c) throw new q(e.currentLocation, {
					index: e.index + 1,
					line: e.line,
					column: e.column
				}, 153);
				if (i >= 0 && !Ne(u) && u !== 46) return e.tokenValue = o, e.options.raw && (e.tokenRaw = e.source.slice(e.tokenIndex, e.index)), 134283266;
			}
			o += Ce(e, u), u = e.currentChar, u === 46 && (m(e) === 95 && e.report(0), n = 64, o += "." + Ce(e, e.currentChar), u = e.currentChar);
		}
	}
	let a = e.index, s = 0;
	if (u === 110 && n & 128) s = 1, u = m(e);
	else if ((u | 32) === 101) {
		u = m(e), S[u] & 256 && (u = m(e));
		let { index: d } = e;
		!(S[u] & 16) && e.report(11), o += e.source.substring(a, d) + Ce(e, u), u = e.currentChar;
	}
	return (e.index < e.end && S[u] & 16 || Ne(u)) && e.report(13), s ? (e.tokenRaw = e.source.slice(e.tokenIndex, e.index), e.tokenValue = BigInt($(0, e.tokenRaw.slice(0, -1), "_", "")), 134283388) : (e.tokenValue = n & 15 ? o : n & 32 ? parseFloat(e.source.substring(e.tokenIndex, e.index)) : +o, e.options.raw && (e.tokenRaw = e.source.slice(e.tokenIndex, e.index)), 134283266);
}
function Ce(e, t) {
	let n = 0, u = e.index, o = "";
	for (; S[t] & 4112;) {
		if (t === 95) {
			let { index: i } = e;
			if (t = m(e), t === 95) throw new q(e.currentLocation, {
				index: e.index + 1,
				line: e.line,
				column: e.column
			}, 152);
			n = 1, o += e.source.substring(u, i), u = e.index;
			continue;
		}
		n = 0, t = m(e);
	}
	if (n) throw new q(e.currentLocation, {
		index: e.index + 1,
		line: e.line,
		column: e.column
	}, 153);
	return o + e.source.substring(u, e.index);
}
function ln(e) {
	let t = e.index, n = G.Empty;
	e: for (;;) {
		let a = e.currentChar;
		if (m(e), n & G.Escape) n &= ~G.Escape;
		else switch (a) {
			case 47:
				if (n) break;
				break e;
			case 92:
				n |= G.Escape;
				break;
			case 91:
				n |= G.Class;
				break;
			case 93:
				n &= G.Escape;
				break;
		}
		if ((a === 13 || a === 10 || a === 8232 || a === 8233) && e.report(34), e.index >= e.source.length) return e.report(34);
	}
	let u = e.index - 1, o = P.Empty, i = e.currentChar, { index: l } = e;
	for (; we(i);) {
		switch (i) {
			case 103:
				o & P.Global && e.report(36, "g"), o |= P.Global;
				break;
			case 105:
				o & P.IgnoreCase && e.report(36, "i"), o |= P.IgnoreCase;
				break;
			case 109:
				o & P.Multiline && e.report(36, "m"), o |= P.Multiline;
				break;
			case 117:
				o & P.Unicode && e.report(36, "u"), o & P.UnicodeSets && e.report(36, "vu"), o |= P.Unicode;
				break;
			case 118:
				o & P.Unicode && e.report(36, "uv"), o & P.UnicodeSets && e.report(36, "v"), o |= P.UnicodeSets;
				break;
			case 121:
				o & P.Sticky && e.report(36, "y"), o |= P.Sticky;
				break;
			case 115:
				o & P.DotAll && e.report(36, "s"), o |= P.DotAll;
				break;
			case 100:
				o & P.Indices && e.report(36, "d"), o |= P.Indices;
				break;
			default: e.report(35);
		}
		i = m(e);
	}
	let f = e.source.slice(l, e.index), c = e.source.slice(t, u);
	return e.tokenRegExp = {
		pattern: c,
		flags: f
	}, e.options.raw && (e.tokenRaw = e.source.slice(e.tokenIndex, e.index)), e.tokenValue = fn(e, c, f), 65540;
}
function fn(e, t, n) {
	try {
		return new RegExp(t, n);
	} catch {
		if (!e.options.validateRegex) return null;
		e.report(34);
	}
}
function cn(e, t, n) {
	let { index: u } = e, o = "", i = m(e), l = e.index;
	for (; (S[i] & 8) === 0;) {
		if (i === n) return o += e.source.slice(l, e.index), m(e), e.options.raw && (e.tokenRaw = e.source.slice(u, e.index)), e.tokenValue = o, 134283267;
		if ((i & 8) === 8 && i === 92) {
			if (o += e.source.slice(l, e.index), i = m(e), i < 127 || i === 8232 || i === 8233) {
				let f = qt(e, t, i);
				f >= 0 ? o += String.fromCodePoint(f) : Pt(e, f, 0);
			} else o += String.fromCodePoint(i);
			l = e.index + 1;
		} else (i === 8232 || i === 8233) && (e.column = -1, e.line++);
		e.index >= e.end && e.report(16), i = m(e);
	}
	e.report(16);
}
function qt(e, t, n, u = 0) {
	switch (n) {
		case 98: return 8;
		case 102: return 12;
		case 114: return 13;
		case 110: return 10;
		case 116: return 9;
		case 118: return 11;
		case 13: if (e.index < e.end) {
			let o = e.source.charCodeAt(e.index + 1);
			o === 10 && (e.index = e.index + 1, e.currentChar = o);
		}
		case 10:
		case 8232:
		case 8233: return e.column = -1, e.line++, -1;
		case 48:
		case 49:
		case 50:
		case 51: {
			let o = n - 48, i = e.index + 1, l = e.column + 1;
			if (i < e.end) {
				let f = e.source.charCodeAt(i);
				if ((S[f] & 32) === 0) {
					if (o !== 0 || S[f] & 512) {
						if (t & 1 || u) return -2;
						e.flags |= 64;
					}
				} else {
					if (t & 1 || u) return -2;
					if (e.currentChar = f, o = o << 3 | f - 48, i++, l++, i < e.end) {
						let c = e.source.charCodeAt(i);
						S[c] & 32 && (e.currentChar = c, o = o << 3 | c - 48, i++, l++);
					}
					e.flags |= 64;
				}
				e.index = i - 1, e.column = l - 1;
			}
			return o;
		}
		case 52:
		case 53:
		case 54:
		case 55: {
			if (u || t & 1) return -2;
			let o = n - 48, i = e.index + 1, l = e.column + 1;
			if (i < e.end) {
				let f = e.source.charCodeAt(i);
				S[f] & 32 && (o = o << 3 | f - 48, e.currentChar = f, e.index = i, e.column = l);
			}
			return e.flags |= 64, o;
		}
		case 120: {
			let o = m(e);
			if ((S[o] & 64) === 0) return -4;
			let i = _(o), l = m(e);
			if ((S[l] & 64) === 0) return -4;
			let f = _(l);
			return i << 4 | f;
		}
		case 117: {
			let o = m(e);
			if (e.currentChar === 123) {
				let i = 0;
				for (; (S[m(e)] & 64) !== 0;) if (i = i << 4 | _(e.currentChar), i > 1114111) return -5;
				return e.currentChar < 1 || e.currentChar !== 125 ? -4 : i;
			} else {
				if ((S[o] & 64) === 0) return -4;
				let i = e.source.charCodeAt(e.index + 1);
				if ((S[i] & 64) === 0) return -4;
				let l = e.source.charCodeAt(e.index + 2);
				if ((S[l] & 64) === 0) return -4;
				let f = e.source.charCodeAt(e.index + 3);
				return (S[f] & 64) === 0 ? -4 : (e.index += 3, e.column += 3, e.currentChar = e.source.charCodeAt(e.index), _(o) << 12 | _(i) << 8 | _(l) << 4 | _(f));
			}
		}
		case 56:
		case 57:
			if (u || t & 1) return -3;
			e.flags |= 4096;
		default: return n;
	}
}
function Pt(e, t, n) {
	switch (t) {
		case -1: return;
		case -2: e.report(n ? 2 : 1);
		case -3: e.report(n ? 3 : 14);
		case -4: e.report(7);
		case -5: e.report(104);
	}
}
function Ot(e, t) {
	let { index: n } = e, u = 67174409, o = "", i = m(e);
	for (; i !== 96;) {
		if (i === 36 && e.source.charCodeAt(e.index + 1) === 123) {
			m(e), u = 67174408;
			break;
		} else if (i === 92) if (i = m(e), i > 126) o += String.fromCodePoint(i);
		else {
			let { index: l, line: f, column: c } = e, a = qt(e, t | 1, i, 1);
			if (a >= 0) o += String.fromCodePoint(a);
			else if (a !== -1 && t & 64) {
				e.index = l, e.line = f, e.column = c, o = null, i = sn(e, i), i < 0 && (u = 67174408);
				break;
			} else Pt(e, a, 1);
		}
		else e.index < e.end && (i === 13 && e.source.charCodeAt(e.index) === 10 && (o += String.fromCodePoint(i), e.currentChar = e.source.charCodeAt(++e.index)), ((i & 83) < 3 && i === 10 || (i ^ 8232) <= 1) && (e.column = -1, e.line++), o += String.fromCodePoint(i));
		e.index >= e.end && e.report(17), i = m(e);
	}
	return m(e), e.tokenValue = o, e.tokenRaw = e.source.slice(n + 1, e.index - (u === 67174409 ? 1 : 2)), u;
}
function sn(e, t) {
	for (; t !== 96;) {
		switch (t) {
			case 36: {
				let n = e.index + 1;
				if (n < e.end && e.source.charCodeAt(n) === 123) return e.index = n, e.column++, -t;
				break;
			}
			case 10:
			case 8232:
			case 8233: e.column = -1, e.line++;
		}
		e.index >= e.end && e.report(17), t = m(e);
	}
	return t;
}
function dn(e, t) {
	return e.index >= e.end && e.report(0), e.index--, e.column--, Ot(e, t);
}
function r(e, t) {
	e.flags = (e.flags | 1) ^ 1, e.startIndex = e.index, e.startColumn = e.column, e.startLine = e.line, e.setToken(Rt(e, t, 0));
}
function Rt(e, t, n) {
	let u = e.index === 0, { source: o } = e;
	for (; e.index < e.end;) {
		e.tokenIndex = e.index, e.tokenColumn = e.column, e.tokenLine = e.line;
		let i = e.currentChar;
		if (i <= 126) {
			let l = an[i];
			switch (l) {
				case 67174411:
				case 16:
				case 2162700:
				case 1074790415:
				case 69271571:
				case 20:
				case 21:
				case 1074790417:
				case 18:
				case 16842799:
				case 132:
				case 128: return m(e), l;
				case 208897: return At(e, t, 0);
				case 4096: return At(e, t, 1);
				case 134283266: return Tt(e, t, 144);
				case 134283267: return cn(e, t, i);
				case 131: return Ot(e, t);
				case 136: return nn(e, t);
				case 130: return un(e);
				case 127:
					m(e);
					break;
				case 129:
					n |= 5, te(e);
					break;
				case 135:
					Ze(e, n), n = n & -5 | 1;
					break;
				case 8456256: {
					let f = m(e);
					if (e.index < e.end) {
						if (f === 60) return e.index < e.end && m(e) === 61 ? (m(e), 4194332) : 8390978;
						if (f === 61) return m(e), 8390718;
						if (f === 33) {
							let c = e.index + 1;
							if (c + 1 < e.end && o.charCodeAt(c) === 45 && o.charCodeAt(c + 1) == 45) {
								e.column += 3, e.currentChar = o.charCodeAt(e.index += 3), n = yt(e, o, n, t, 2, e.tokenStart);
								continue;
							}
							return 8456256;
						}
					}
					return 8456256;
				}
				case 1077936155: {
					m(e);
					let f = e.currentChar;
					return f === 61 ? m(e) === 61 ? (m(e), 8390458) : 8390460 : f === 62 ? (m(e), 10) : 1077936155;
				}
				case 16842798: return m(e) !== 61 ? 16842798 : m(e) !== 61 ? 8390461 : (m(e), 8390459);
				case 8391477: return m(e) !== 61 ? 8391477 : (m(e), 4194340);
				case 8391476: {
					if (m(e), e.index >= e.end) return 8391476;
					let f = e.currentChar;
					return f === 61 ? (m(e), 4194338) : f !== 42 ? 8391476 : m(e) !== 61 ? 8391735 : (m(e), 4194335);
				}
				case 8389959: return m(e) !== 61 ? 8389959 : (m(e), 4194341);
				case 25233968: {
					m(e);
					let f = e.currentChar;
					return f === 43 ? (m(e), 33619993) : f === 61 ? (m(e), 4194336) : 25233968;
				}
				case 25233969: {
					m(e);
					let f = e.currentChar;
					if (f === 45) {
						if (m(e), (n & 1 || u) && e.currentChar === 62) {
							e.options.webcompat || e.report(112), m(e), n = yt(e, o, n, t, 3, e.tokenStart);
							continue;
						}
						return 33619994;
					}
					return f === 61 ? (m(e), 4194337) : 25233969;
				}
				case 8457014:
					if (m(e), e.index < e.end) {
						let f = e.currentChar;
						if (f === 47) {
							m(e), n = Ge(e, o, n, 0, e.tokenStart);
							continue;
						}
						if (f === 42) {
							m(e), n = en(e, o, n);
							continue;
						}
						if (t & 32) return ln(e);
						if (f === 61) return m(e), 4259875;
					}
					return 8457014;
				case 67108877: {
					let f = m(e);
					if (f >= 48 && f <= 57) return Tt(e, t, 80);
					if (f === 46) {
						let c = e.index + 1;
						if (c < e.end && o.charCodeAt(c) === 46) return e.column += 2, e.currentChar = o.charCodeAt(e.index += 2), 14;
					}
					return 67108877;
				}
				case 8389702: {
					m(e);
					let f = e.currentChar;
					return f === 124 ? (m(e), e.currentChar === 61 ? (m(e), 4718632) : 8913465) : f === 61 ? (m(e), 4194342) : 8389702;
				}
				case 8390721: {
					m(e);
					let f = e.currentChar;
					if (f === 61) return m(e), 8390719;
					if (f !== 62) return 8390721;
					if (m(e), e.index < e.end) {
						let c = e.currentChar;
						if (c === 62) return m(e) === 61 ? (m(e), 4194334) : 8390980;
						if (c === 61) return m(e), 4194333;
					}
					return 8390979;
				}
				case 8390213: {
					m(e);
					let f = e.currentChar;
					return f === 38 ? (m(e), e.currentChar === 61 ? (m(e), 4718633) : 8913720) : f === 61 ? (m(e), 4194343) : 8390213;
				}
				case 22: {
					let f = m(e);
					if (f === 63) return m(e), e.currentChar === 61 ? (m(e), 4718634) : 276824445;
					if (f === 46) {
						let c = e.index + 1;
						if (c < e.end && (f = o.charCodeAt(c), !(f >= 48 && f <= 57))) return m(e), 67108990;
					}
					return 22;
				}
			}
		} else {
			if ((i ^ 8232) <= 1) {
				n = n & -5 | 1, te(e);
				continue;
			}
			let l = Qe(e);
			if (l > 0 && (i = l), St(i)) return e.tokenValue = "", xe(e, t, 0, 0);
			if (G2(i)) {
				m(e);
				continue;
			}
			e.report(20, String.fromCodePoint(i));
		}
	}
	return 1048576;
}
function U(e, t) {
	!(e.flags & 1) && (e.getToken() & 1048576) !== 1048576 && e.report(30, B[e.getToken() & 255]), C(e, t, 1074790417) || e.options.onInsertedSemicolon?.(e.startIndex);
}
function Vt(e, t, n, u) {
	return t - n < 13 && u === "use strict" && ((e.getToken() & 1048576) === 1048576 || e.flags & 1) ? 1 : 0;
}
function pe(e, t, n) {
	return e.getToken() !== n ? 0 : (r(e, t), 1);
}
function C(e, t, n) {
	return e.getToken() !== n ? !1 : (r(e, t), !0);
}
function y(e, t, n) {
	e.getToken() !== n && e.report(25, B[n & 255]), r(e, t);
}
function z(e, t) {
	switch (t.type) {
		case "ArrayExpression": {
			t.type = "ArrayPattern";
			let { elements: n } = t;
			for (let u = 0, o = n.length; u < o; ++u) {
				let i = n[u];
				i && z(e, i);
			}
			return;
		}
		case "ObjectExpression": {
			t.type = "ObjectPattern";
			let { properties: n } = t;
			for (let u = 0, o = n.length; u < o; ++u) z(e, n[u]);
			return;
		}
		case "AssignmentExpression":
			t.type = "AssignmentPattern", t.operator !== "=" && e.report(71), delete t.operator, z(e, t.left);
			return;
		case "Property":
			z(e, t.value);
			return;
		case "SpreadElement": t.type = "RestElement", z(e, t.argument);
	}
}
function Ie(e, t, n, u, o) {
	t & 1 && ((u & 36864) === 36864 && e.report(118), !o && (u & 537079808) === 537079808 && e.report(119)), ((u & 20480) === 20480 || u === -2147483528) && e.report(102), n & 24 && (u & 255) === 73 && e.report(100), t & 2050 && u === 209006 && e.report(110), t & 1025 && u === 241771 && e.report(97, "yield");
}
function Mt(e, t, n) {
	t & 1 && ((n & 36864) === 36864 && e.report(118), (n & 537079808) === 537079808 && e.report(119), n === -2147483527 && e.report(95), n === -2147483528 && e.report(95)), (n & 20480) === 20480 && e.report(102), t & 2050 && n === 209006 && e.report(110), t & 1025 && n === 241771 && e.report(97, "yield");
}
function vt(e, t, n) {
	return n === 209006 && (t & 2050 && e.report(110), e.destructible |= 128), n === 241771 && t & 1024 && e.report(97, "yield"), (n & 20480) === 20480 || (n & 36864) === 36864 || n == -2147483527;
}
function gn(e) {
	return e.property ? e.property.type === "PrivateIdentifier" : !1;
}
function Ut(e, t, n, u) {
	for (; t;) {
		if (t["$" + n]) return u && e.report(137), 1;
		u && t.loop && (u = 0), t = t.$;
	}
	return 0;
}
function mn(e, t, n) {
	let u = t;
	for (; u;) u["$" + n] && e.report(136, n), u = u.$;
	t["$" + n] = 1;
}
function Le(e) {
	switch (e.type) {
		case "JSXIdentifier": return e.name;
		case "JSXNamespacedName": return e.namespace + ":" + e.name;
		case "JSXMemberExpression": return Le(e.object) + "." + Le(e.property);
	}
}
function he(e, t) {
	return e & 1025 ? e & 2 && t === 209006 || e & 1024 && t === 241771 ? !1 : (t & 12288) === 12288 : (t & 12288) === 12288 || (t & 36864) === 36864;
}
function Oe(e, t, n) {
	(n & 537079808) === 537079808 && (t & 1 && e.report(119), e.flags |= 512), he(t, n) || e.report(0);
}
function rn(e, t) {
	return e.startIndex = e.tokenIndex = e.index, e.startColumn = e.tokenColumn = e.column, e.startLine = e.tokenLine = e.line, e.setToken(S[e.currentChar] & 8192 ? hn(e) : Rt(e, t, 0)), e.getToken();
}
function hn(e) {
	let t = e.currentChar, n = m(e), u = e.index;
	for (; n !== t;) e.index >= e.end && e.report(16), n = m(e);
	return n !== t && e.report(16), e.tokenValue = e.source.slice(u, e.index), m(e), e.options.raw && (e.tokenRaw = e.source.slice(e.tokenIndex, e.index)), 134283267;
}
function ke(e) {
	if (e.startIndex = e.tokenIndex = e.index, e.startColumn = e.tokenColumn = e.column, e.startLine = e.tokenLine = e.line, e.index >= e.end) {
		e.setToken(1048576);
		return;
	}
	if (e.currentChar === 60) {
		m(e), e.setToken(8456256);
		return;
	}
	if (e.currentChar === 123) {
		m(e), e.setToken(2162700);
		return;
	}
	let t = 0;
	for (; e.index < e.end;) {
		let u = S[e.source.charCodeAt(e.index)];
		if (u & 1024 ? (t |= 5, te(e)) : u & 2048 ? (Ze(e, t), t = t & -5 | 1) : m(e), S[e.currentChar] & 16384) break;
	}
	e.tokenIndex === e.index && e.report(0);
	let n = e.source.slice(e.tokenIndex, e.index);
	e.options.raw && (e.tokenRaw = n), e.tokenValue = n, e.setToken(137);
}
function Xe(e) {
	if ((e.getToken() & 143360) === 143360) {
		let { index: t } = e, n = e.currentChar;
		for (; S[n] & 32770;) n = m(e);
		e.tokenValue += e.source.slice(t, e.index), e.setToken(208897, !0);
	}
	return e.getToken();
}
function kn(e) {
	if (e) return e === !0 ? {
		start: !0,
		end: !0,
		range: !0
	} : {
		start: e.start ?? !1,
		end: e.end ?? !1,
		range: e.range ?? !1
	};
}
function yn(e) {
	let t = {
		validateRegex: !0,
		...e,
		ranges: kn(e.ranges)
	};
	return t.module && !t.sourceType && (t.sourceType = "module"), t.globalReturn && (!t.sourceType || t.sourceType === "script") && (t.sourceType = "commonjs"), t;
}
function Re(e, t, n) {
	let u = e.createScope().createChildScope(512);
	return u.addBlockName(t, n, 1, 0), u;
}
function An(e, t) {
	return function(n, u, o, i, l) {
		let f = {
			type: n,
			value: u
		}, { ranges: c } = t;
		c && (c.start && (f.start = o), c.end && (f.end = i), c.range && (f.range = [o, i])), t.loc && (f.loc = l), e.push(f);
	};
}
function Tn(e, t) {
	return function(n, u, o, i) {
		let l = { token: n }, { ranges: f } = t;
		f && (f.start && (l.start = u), f.end && (l.end = o), f.range && (l.range = [u, o])), t.loc && (l.loc = i), e.push(l);
	};
}
function bn(e, t = {}, n = 0) {
	let u = new ze(e, t);
	u.options.sourceType === "module" && (n |= 3), u.options.sourceType === "commonjs" && (n |= 69632), u.options.impliedStrict && (n |= 1), p2(u);
	let o = u.createScopeIfLexical(), i = [], l = "script";
	if (n & 2) {
		if (l = "module", i = Cn(u, n | 8, o), o) for (let f of u.exportedBindings) o.hasVariable(f) || u.report(148, f);
	} else i = Dn(u, n | 8, o);
	return u.finishNode({
		type: "Program",
		sourceType: l,
		body: i
	}, {
		index: 0,
		line: 1,
		column: 0
	}, u.currentLocation);
}
function Dn(e, t, n) {
	r(e, t | 262176);
	let u = [];
	for (; e.getToken() === 134283267;) {
		let { index: o, tokenValue: i, tokenStart: l, tokenIndex: f } = e, c = e.getToken(), a = O(e, t);
		if (Vt(e, o, f, i)) {
			if (t |= 1, e.flags & 64) throw new q(e.tokenStart, e.currentLocation, 9);
			if (e.flags & 4096) throw new q(e.tokenStart, e.currentLocation, 15);
		}
		u.push(tt(e, t, a, c, l));
	}
	for (; e.getToken() !== 1048576;) u.push(ye(e, t, n, void 0, 4, {}));
	return u;
}
function Cn(e, t, n) {
	r(e, t | 32);
	let u = [];
	for (; e.getToken() === 134283267;) {
		let { tokenStart: o } = e, i = e.getToken();
		u.push(tt(e, t, O(e, t), i, o));
	}
	for (; e.getToken() !== 1048576;) u.push(En(e, t, n));
	return u;
}
function En(e, t, n) {
	e.getToken() === 132 && Object.assign(e.leadingDecorators, {
		start: e.tokenStart,
		decorators: ve(e, t, void 0)
	});
	let u;
	switch (e.getToken()) {
		case 20564:
			u = Hn(e, t, n);
			break;
		case 86106:
			u = jn(e, t, n);
			break;
		default: u = ye(e, t, n, void 0, 4, {});
	}
	return e.leadingDecorators?.decorators.length && e.report(170), u;
}
function ye(e, t, n, u, o, i) {
	let l = e.tokenStart;
	switch (e.getToken()) {
		case 86104: return p(e, t, n, u, o, 1, 0, 0, l);
		case 132:
		case 86094: return Ye(e, t, n, u, 0);
		case 86090: return Ke(e, t, n, u, 16, 0);
		case 241737: return _n(e, t, n, u, o);
		case 20564: e.report(103, "export");
		case 86106: switch (r(e, t), e.getToken()) {
			case 67174411: return Ht(e, t, u, l);
			case 67108877: return Xt(e, t, l);
			default: e.report(103, "import");
		}
		case 209005: return _t(e, t, n, u, o, i, 1);
		default: return Ae(e, t, n, u, o, i, 1);
	}
}
function Ae(e, t, n, u, o, i, l) {
	switch (e.getToken()) {
		case 86088: return Jt(e, t, n, u, 0);
		case 20572: return Sn(e, t, u);
		case 20569: return Nn(e, t, n, u, i);
		case 20567: return Jn(e, t, n, u, i);
		case 20562: return Un(e, t, n, u, i);
		case 20578: return Ln(e, t, n, u, i);
		case 86110: return In(e, t, n, u, i);
		case 1074790417: return Bn(e, t);
		case 2162700: return re(e, t, n?.createChildScope(), u, i, e.tokenStart);
		case 86112: return Fn(e, t, u);
		case 20555: return Pn(e, t, i);
		case 20559: return qn(e, t, i);
		case 20577: return Vn(e, t, n, u, i);
		case 20579: return On(e, t, n, u, i);
		case 20560: return Rn(e, t);
		case 209005: return _t(e, t, n, u, o, i, 0);
		case 20557: e.report(162);
		case 20566: e.report(163);
		case 86104: e.report(t & 1 ? 76 : e.options.webcompat ? 77 : 78);
		case 86094: e.report(79);
		default: return wn(e, t, n, u, o, i, l);
	}
}
function wn(e, t, n, u, o, i, l) {
	let { tokenValue: f, tokenStart: c } = e, a = e.getToken(), s;
	return a === 241737 ? (s = N(e, t), t & 1 && e.report(85), e.getToken() === 69271571 && e.report(84)) : s = J(e, t, u, 2, 0, 1, 0, 1, e.tokenStart), a & 143360 && e.getToken() === 21 ? et(e, t, n, u, o, i, f, s, a, l, c) : (s = F(e, t, u, s, 0, 0, c), s = L(e, t, u, 0, 0, c, s), e.getToken() === 18 && (s = Y(e, t, u, 0, c, s)), oe(e, t, s, c));
}
function re(e, t, n, u, o, i = e.tokenStart, l = "BlockStatement") {
	let f = [];
	for (y(e, t | 32, 2162700); e.getToken() !== 1074790415;) f.push(ye(e, t, n, u, 2, { $: o }));
	return y(e, t | 32, 1074790415), e.finishNode({
		type: l,
		body: f
	}, i);
}
function Sn(e, t, n) {
	!(t & 4096) && e.report(92);
	let u = e.tokenStart;
	r(e, t | 32);
	let o = e.flags & 1 || e.getToken() & 1048576 ? null : M(e, t, n, 0, 1, e.tokenStart);
	return U(e, t | 32), e.finishNode({
		type: "ReturnStatement",
		argument: o
	}, u);
}
function oe(e, t, n, u) {
	return U(e, t | 32), e.finishNode({
		type: "ExpressionStatement",
		expression: n
	}, u);
}
function et(e, t, n, u, o, i, l, f, c, a, s) {
	Ie(e, t, 0, c, 1), mn(e, i, l), r(e, t | 32);
	let d = a && (t & 1) === 0 && e.options.webcompat && e.getToken() === 86104 ? p(e, t, n?.createChildScope(), u, o, 0, 0, 0, e.tokenStart) : Ae(e, t, n, u, o, i, a);
	return e.finishNode({
		type: "LabeledStatement",
		label: f,
		body: d
	}, s);
}
function _t(e, t, n, u, o, i, l) {
	let { tokenValue: f, tokenStart: c } = e, a = e.getToken(), s = N(e, t);
	if (e.getToken() === 21) return et(e, t, n, u, o, i, f, s, a, 1, c);
	let d = e.flags & 1;
	if (!d) {
		if (e.getToken() === 86104) return l || e.report(123), p(e, t, n, u, o, 1, 0, 1, c);
		if (he(t, e.getToken())) return s = Zt(e, t, u, 1, c), e.getToken() === 18 && (s = Y(e, t, u, 0, c, s)), oe(e, t, s, c);
	}
	return e.getToken() === 67174411 ? s = ft(e, t, u, s, 1, 1, 0, d, c) : (e.getToken() === 10 && (Oe(e, t, a), (a & 36864) === 36864 && (e.flags |= 256), s = Me(e, t | 2048, u, e.tokenValue, s, 0, 1, 0, c)), e.assignable = 1), s = F(e, t, u, s, 0, 0, c), s = L(e, t, u, 0, 0, c, s), e.assignable = 1, e.getToken() === 18 && (s = Y(e, t, u, 0, c, s)), oe(e, t, s, c);
}
function tt(e, t, n, u, o) {
	let i = e.startIndex;
	u !== 1074790417 && (e.assignable = 2, n = F(e, t, void 0, n, 0, 0, o), e.getToken() !== 1074790417 && (n = L(e, t, void 0, 0, 0, o, n), e.getToken() === 18 && (n = Y(e, t, void 0, 0, o, n))), U(e, t | 32));
	let l = {
		type: "ExpressionStatement",
		expression: n
	};
	return n.type === "Literal" && typeof n.value == "string" && (l.directive = e.source.slice(o.index + 1, i - 1)), e.finishNode(l, o);
}
function Bn(e, t) {
	let n = e.tokenStart;
	return r(e, t | 32), e.finishNode({ type: "EmptyStatement" }, n);
}
function Fn(e, t, n) {
	let u = e.tokenStart;
	r(e, t | 32), e.flags & 1 && e.report(90);
	let o = M(e, t, n, 0, 1, e.tokenStart);
	return U(e, t | 32), e.finishNode({
		type: "ThrowStatement",
		argument: o
	}, u);
}
function Nn(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t), y(e, t | 32, 67174411), e.assignable = 1;
	let l = M(e, t, u, 0, 1, e.tokenStart);
	y(e, t | 32, 16);
	let f = bt(e, t, n, u, o), c = null;
	return e.getToken() === 20563 && (r(e, t | 32), c = bt(e, t, n, u, o)), e.finishNode({
		type: "IfStatement",
		test: l,
		consequent: f,
		alternate: c
	}, i);
}
function bt(e, t, n, u, o) {
	let { tokenStart: i } = e;
	return t & 1 || !e.options.webcompat || e.getToken() !== 86104 ? Ae(e, t, n, u, 0, { $: o }, 0) : p(e, t, n?.createChildScope(), u, 0, 0, 0, 0, i);
}
function In(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t), y(e, t | 32, 67174411);
	let l = M(e, t, u, 0, 1, e.tokenStart);
	y(e, t, 16), y(e, t, 2162700);
	let f = [], c = 0;
	for (n = n?.createChildScope(8); e.getToken() !== 1074790415;) {
		let { tokenStart: a } = e, s = null, d = [];
		for (C(e, t | 32, 20556) ? s = M(e, t, u, 0, 1, e.tokenStart) : (y(e, t | 32, 20561), c && e.report(89), c = 1), y(e, t | 32, 21); e.getToken() !== 20556 && e.getToken() !== 1074790415 && e.getToken() !== 20561;) d.push(ye(e, t | 4, n, u, 2, { $: o }));
		f.push(e.finishNode({
			type: "SwitchCase",
			test: s,
			consequent: d
		}, a));
	}
	return y(e, t | 32, 1074790415), e.finishNode({
		type: "SwitchStatement",
		discriminant: l,
		cases: f
	}, i);
}
function Ln(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t), y(e, t | 32, 67174411);
	let l = M(e, t, u, 0, 1, e.tokenStart);
	y(e, t | 32, 16);
	let f = me(e, t, n, u, o);
	return e.finishNode({
		type: "WhileStatement",
		test: l,
		body: f
	}, i);
}
function me(e, t, n, u, o) {
	return Ae(e, (t | 131072) ^ 131072 | 128, n, u, 0, {
		loop: 1,
		$: o
	}, 0);
}
function qn(e, t, n) {
	!(t & 128) && e.report(68);
	let u = e.tokenStart;
	r(e, t);
	let o = null;
	if ((e.flags & 1) === 0 && e.getToken() & 143360) {
		let { tokenValue: i } = e;
		o = N(e, t | 32), Ut(e, n, i, 1) || e.report(138, i);
	}
	return U(e, t | 32), e.finishNode({
		type: "ContinueStatement",
		label: o
	}, u);
}
function Pn(e, t, n) {
	let u = e.tokenStart;
	r(e, t | 32);
	let o = null;
	if ((e.flags & 1) === 0 && e.getToken() & 143360) {
		let { tokenValue: i } = e;
		o = N(e, t | 32), Ut(e, n, i, 0) || e.report(138, i);
	} else !(t & 132) && e.report(69);
	return U(e, t | 32), e.finishNode({
		type: "BreakStatement",
		label: o
	}, u);
}
function On(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t), t & 1 && e.report(91), y(e, t | 32, 67174411);
	let l = M(e, t, u, 0, 1, e.tokenStart);
	y(e, t | 32, 16);
	let f = Ae(e, t, n, u, 2, o, 0);
	return e.finishNode({
		type: "WithStatement",
		object: l,
		body: f
	}, i);
}
function Rn(e, t) {
	let n = e.tokenStart;
	return r(e, t | 32), U(e, t | 32), e.finishNode({ type: "DebuggerStatement" }, n);
}
function Vn(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t | 32);
	let l = n?.createChildScope(16), f = re(e, t, l, u, { $: o }), { tokenStart: c } = e, a = C(e, t | 32, 20557) ? Mn(e, t, n, u, o, c) : null, s = null;
	if (e.getToken() === 20566) {
		r(e, t | 32);
		let d = n?.createChildScope(4);
		s = re(e, t, d, u, { $: o });
	}
	return !a && !s && e.report(88), e.finishNode({
		type: "TryStatement",
		block: f,
		handler: a,
		finalizer: s
	}, i);
}
function Mn(e, t, n, u, o, i) {
	let l = null, f = n;
	C(e, t, 67174411) && (n = n?.createChildScope(4), l = pt(e, t, n, u, (e.getToken() & 2097152) === 2097152 ? 256 : 512, 0), e.getToken() === 18 ? e.report(86) : e.getToken() === 1077936155 && e.report(87), y(e, t | 32, 16)), f = n?.createChildScope(32);
	let c = re(e, t, f, u, { $: o });
	return e.finishNode({
		type: "CatchClause",
		param: l,
		body: c
	}, i);
}
function vn(e, t, n, u, o) {
	n = n?.createChildScope();
	let i = 5764;
	return t = (t | i) ^ i | 592128, re(e, t, n, u, {}, o, "StaticBlock");
}
function Un(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t | 32);
	let l = me(e, t, n, u, o);
	y(e, t, 20578), y(e, t | 32, 67174411);
	let f = M(e, t, u, 0, 1, e.tokenStart);
	return y(e, t | 32, 16), C(e, t | 32, 1074790417), e.finishNode({
		type: "DoWhileStatement",
		body: l,
		test: f
	}, i);
}
function _n(e, t, n, u, o) {
	let { tokenValue: i, tokenStart: l } = e, f = e.getToken(), c = N(e, t);
	if (e.getToken() & 2240512) {
		let a = ie(e, t, n, u, 8, 0);
		return U(e, t | 32), e.finishNode({
			type: "VariableDeclaration",
			kind: "let",
			declarations: a
		}, l);
	}
	if (e.assignable = 1, t & 1 && e.report(85), e.getToken() === 21) return et(e, t, n, u, o, {}, i, c, f, 0, l);
	if (e.getToken() === 10) {
		let a;
		e.options.lexical && (a = Re(e, t, i)), e.flags = (e.flags | 128) ^ 128, c = Te(e, t, a, u, [c], 0, l);
	} else c = F(e, t, u, c, 0, 0, l), c = L(e, t, u, 0, 0, l, c);
	return e.getToken() === 18 && (c = Y(e, t, u, 0, l, c)), oe(e, t, c, l);
}
function Ke(e, t, n, u, o, i) {
	let l = e.tokenStart;
	r(e, t);
	let f = ie(e, t, n, u, o, i);
	return U(e, t | 32), e.finishNode({
		type: "VariableDeclaration",
		kind: o & 8 ? "let" : "const",
		declarations: f
	}, l);
}
function Jt(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t);
	let l = ie(e, t, n, u, 4, o);
	return U(e, t | 32), e.finishNode({
		type: "VariableDeclaration",
		kind: "var",
		declarations: l
	}, i);
}
function ie(e, t, n, u, o, i) {
	let l = 1, f = [Dt(e, t, n, u, o, i)];
	for (; C(e, t, 18);) l++, f.push(Dt(e, t, n, u, o, i));
	return l > 1 && i & 32 && e.getToken() & 262144 && e.report(61, B[e.getToken() & 255]), f;
}
function Dt(e, t, n, u, o, i) {
	let { tokenStart: l } = e, f = e.getToken(), c = null, a = pt(e, t, n, u, o, i);
	if (e.getToken() === 1077936155) {
		if (r(e, t | 32), c = I(e, t, u, 1, 0, e.tokenStart), i & 32 && (e.getToken() === 471156 || e.getToken() === 8673330 && (f & 2097152 || (o & 4) === 0 || t & 1))) throw new q(l, e.currentLocation, 60, e.getToken() === 471156 ? "of" : "in");
	} else (o & 16 || (f & 2097152) > 0) && (e.getToken() & 262144) !== 262144 && e.report(59, o & 16 ? "const" : "destructuring");
	return e.finishNode({
		type: "VariableDeclarator",
		id: a,
		init: c
	}, l);
}
function Jn(e, t, n, u, o) {
	let i = e.tokenStart;
	r(e, t);
	let l = ((t & 2048) > 0 || (t & 2) > 0 && (t & 8) > 0) && C(e, t, 209006);
	y(e, t | 32, 67174411), n = n?.createChildScope(1);
	let f = null, c = null, a = 0, s = null, d = e.getToken() === 86088 || e.getToken() === 241737 || e.getToken() === 86090, h, { tokenStart: A } = e, b = e.getToken();
	if (d) b === 241737 ? (s = N(e, t), e.getToken() & 2240512 ? (e.getToken() === 8673330 ? t & 1 && e.report(67) : s = e.finishNode({
		type: "VariableDeclaration",
		kind: "let",
		declarations: ie(e, t | 131072, n, u, 8, 32)
	}, A), e.assignable = 1) : t & 1 ? e.report(67) : (d = !1, e.assignable = 1, s = F(e, t, u, s, 0, 0, A), e.getToken() === 471156 && e.report(115))) : (r(e, t), s = e.finishNode(b === 86088 ? {
		type: "VariableDeclaration",
		kind: "var",
		declarations: ie(e, t | 131072, n, u, 4, 32)
	} : {
		type: "VariableDeclaration",
		kind: "const",
		declarations: ie(e, t | 131072, n, u, 16, 32)
	}, A), e.assignable = 1);
	else if (b === 1074790417) l && e.report(82);
	else if ((b & 2097152) === 2097152) {
		let T = e.tokenStart;
		s = b === 2162700 ? H(e, t, void 0, u, 1, 0, 0, 2, 32) : X(e, t, void 0, u, 1, 0, 0, 2, 32), a = e.destructible, a & 64 && e.report(63), e.assignable = a & 16 ? 2 : 1, s = F(e, t | 131072, u, s, 0, 0, T);
	} else s = j(e, t | 131072, u, 1, 0, 1);
	if ((e.getToken() & 262144) === 262144) {
		if (e.getToken() === 471156) {
			e.assignable & 2 && e.report(80, l ? "await" : "of"), z(e, s), r(e, t | 32), h = I(e, t, u, 1, 0, e.tokenStart), y(e, t | 32, 16);
			let D = me(e, t, n, u, o);
			return e.finishNode({
				type: "ForOfStatement",
				left: s,
				right: h,
				body: D,
				await: l
			}, i);
		}
		e.assignable & 2 && e.report(80, "in"), z(e, s), r(e, t | 32), l && e.report(82), h = M(e, t, u, 0, 1, e.tokenStart), y(e, t | 32, 16);
		let T = me(e, t, n, u, o);
		return e.finishNode({
			type: "ForInStatement",
			body: T,
			left: s,
			right: h
		}, i);
	}
	l && e.report(82), d || (a & 8 && e.getToken() !== 1077936155 && e.report(80, "loop"), s = L(e, t | 131072, u, 0, 0, A, s)), e.getToken() === 18 && (s = Y(e, t, u, 0, A, s)), y(e, t | 32, 1074790417), e.getToken() !== 1074790417 && (f = M(e, t, u, 0, 1, e.tokenStart)), y(e, t | 32, 1074790417), e.getToken() !== 16 && (c = M(e, t, u, 0, 1, e.tokenStart)), y(e, t | 32, 16);
	let w = me(e, t, n, u, o);
	return e.finishNode({
		type: "ForStatement",
		init: s,
		test: f,
		update: c,
		body: w
	}, i);
}
function jt(e, t, n) {
	return he(t, e.getToken()) || e.report(118), (e.getToken() & 537079808) === 537079808 && e.report(119), n?.addBlockName(t, e.tokenValue, 8, 0), N(e, t);
}
function jn(e, t, n) {
	let u = e.tokenStart;
	r(e, t);
	let o = null, { tokenStart: i } = e, l = [];
	if (e.getToken() === 134283267) o = O(e, t);
	else {
		if (e.getToken() & 143360) {
			let a = jt(e, t, n);
			if (l = [e.finishNode({
				type: "ImportDefaultSpecifier",
				local: a
			}, i)], C(e, t, 18)) switch (e.getToken()) {
				case 8391476:
					l.push(Ct(e, t, n));
					break;
				case 2162700:
					Et(e, t, n, l);
					break;
				default: e.report(107);
			}
		} else switch (e.getToken()) {
			case 8391476:
				l = [Ct(e, t, n)];
				break;
			case 2162700:
				Et(e, t, n, l);
				break;
			case 67174411: return Ht(e, t, void 0, u);
			case 67108877: return Xt(e, t, u);
			default: e.report(30, B[e.getToken() & 255]);
		}
		o = Xn(e, t);
	}
	let f = $e(e, t), c = {
		type: "ImportDeclaration",
		specifiers: l,
		source: o,
		attributes: f
	};
	return U(e, t | 32), e.finishNode(c, u);
}
function Ct(e, t, n) {
	let { tokenStart: u } = e;
	if (r(e, t), y(e, t, 77932), (e.getToken() & 134217728) === 134217728) throw new q(u, e.currentLocation, 30, B[e.getToken() & 255]);
	return e.finishNode({
		type: "ImportNamespaceSpecifier",
		local: jt(e, t, n)
	}, u);
}
function Xn(e, t) {
	return y(e, t, 209011), e.getToken() !== 134283267 && e.report(105, "Import"), O(e, t);
}
function Et(e, t, n, u) {
	for (r(e, t); e.getToken() & 143360 || e.getToken() === 134283267;) {
		let { tokenValue: o, tokenStart: i } = e, l = e.getToken(), f = Se(e, t), c;
		C(e, t, 77932) ? ((e.getToken() & 134217728) === 134217728 || e.getToken() === 18 ? e.report(106) : Ie(e, t, 16, e.getToken(), 0), o = e.tokenValue, c = N(e, t)) : f.type === "Identifier" ? (Ie(e, t, 16, l, 0), c = e.cloneIdentifier(f)) : e.report(25, B[108]), n?.addBlockName(t, o, 8, 0), u.push(e.finishNode({
			type: "ImportSpecifier",
			local: c,
			imported: f
		}, i)), e.getToken() !== 1074790415 && y(e, t, 18);
	}
	return y(e, t, 1074790415), u;
}
function Xt(e, t, n) {
	let u = Wt(e, t, e.finishNode({
		type: "Identifier",
		name: "import"
	}, n), n);
	return u = F(e, t, void 0, u, 0, 0, n), u = L(e, t, void 0, 0, 0, n, u), e.getToken() === 18 && (u = Y(e, t, void 0, 0, n, u)), oe(e, t, u, n);
}
function Ht(e, t, n, u) {
	let o = zt(e, t, n, 0, u);
	return o = F(e, t, n, o, 0, 0, u), e.getToken() === 18 && (o = Y(e, t, n, 0, u, o)), oe(e, t, o, u);
}
function Hn(e, t, n) {
	let u = e.leadingDecorators.decorators.length ? e.leadingDecorators.start : e.tokenStart;
	r(e, t | 32);
	let o = [], i = null, l = null, f = [];
	if (C(e, t | 32, 20561)) {
		switch (e.getToken()) {
			case 86104:
				i = p(e, t, n, void 0, 4, 1, 1, 0, e.tokenStart);
				break;
			case 132:
			case 86094:
				i = Ye(e, t, n, void 0, 1);
				break;
			case 209005: {
				let { tokenStart: a } = e;
				i = N(e, t);
				let { flags: s } = e;
				!(s & 1) && (e.getToken() === 86104 ? i = p(e, t, n, void 0, 4, 1, 1, 1, a) : e.getToken() === 67174411 ? (i = ft(e, t, void 0, i, 1, 1, 0, s, a), i = F(e, t, void 0, i, 0, 0, a), i = L(e, t, void 0, 0, 0, a, i)) : e.getToken() & 143360 && (n && (n = Re(e, t, e.tokenValue)), i = N(e, t), i = Te(e, t, n, void 0, [i], 1, a)));
				break;
			}
			default: i = I(e, t, void 0, 1, 0, e.tokenStart), U(e, t | 32);
		}
		return n && e.declareUnboundVariable("default"), e.finishNode({
			type: "ExportDefaultDeclaration",
			declaration: i
		}, u);
	}
	switch (e.getToken()) {
		case 8391476: {
			r(e, t);
			let a = null;
			C(e, t, 77932) && (n && e.declareUnboundVariable(e.tokenValue), a = Se(e, t)), y(e, t, 209011), e.getToken() !== 134283267 && e.report(105, "Export"), l = O(e, t);
			let d = $e(e, t), h = {
				type: "ExportAllDeclaration",
				source: l,
				exported: a,
				attributes: d
			};
			return U(e, t | 32), e.finishNode(h, u);
		}
		case 2162700: {
			r(e, t);
			let a = [], s = [], d = 0;
			for (; e.getToken() & 143360 || e.getToken() === 134283267;) {
				let { tokenStart: h, tokenValue: A } = e, b = Se(e, t);
				b.type === "Literal" && (d = 1);
				let w;
				e.getToken() === 77932 ? (r(e, t), !(e.getToken() & 143360) && e.getToken() !== 134283267 && e.report(106), n && (a.push(e.tokenValue), s.push(A)), w = Se(e, t)) : (n && (a.push(e.tokenValue), s.push(e.tokenValue)), w = b.type === "Literal" ? e.cloneStringLiteral(b) : e.cloneIdentifier(b)), o.push(e.finishNode({
					type: "ExportSpecifier",
					local: b,
					exported: w
				}, h)), e.getToken() !== 1074790415 && y(e, t, 18);
			}
			y(e, t, 1074790415), C(e, t, 209011) ? (e.getToken() !== 134283267 && e.report(105, "Export"), l = O(e, t), f = $e(e, t), n && a.forEach((h) => e.declareUnboundVariable(h))) : (d && e.report(172), n && (a.forEach((h) => e.declareUnboundVariable(h)), s.forEach((h) => e.addBindingToExports(h)))), U(e, t | 32);
			break;
		}
		case 132:
		case 86094:
			i = Ye(e, t, n, void 0, 2);
			break;
		case 86104:
			i = p(e, t, n, void 0, 4, 1, 2, 0, e.tokenStart);
			break;
		case 241737:
			i = Ke(e, t, n, void 0, 8, 64);
			break;
		case 86090:
			i = Ke(e, t, n, void 0, 16, 64);
			break;
		case 86088:
			i = Jt(e, t, n, void 0, 64);
			break;
		case 209005: {
			let { tokenStart: a } = e;
			if (r(e, t), (e.flags & 1) === 0 && e.getToken() === 86104) {
				i = p(e, t, n, void 0, 4, 1, 2, 1, a);
				break;
			}
		}
		default: e.report(30, B[e.getToken() & 255]);
	}
	let c = {
		type: "ExportNamedDeclaration",
		declaration: i,
		specifiers: o,
		source: l,
		attributes: f
	};
	return e.finishNode(c, u);
}
function I(e, t, n, u, o, i) {
	let l = J(e, t, n, 2, 0, u, o, 1, i);
	return l = F(e, t, n, l, o, 0, i), L(e, t, n, o, 0, i, l);
}
function Y(e, t, n, u, o, i) {
	let l = [i];
	for (; C(e, t | 32, 18);) l.push(I(e, t, n, 1, u, e.tokenStart));
	return e.finishNode({
		type: "SequenceExpression",
		expressions: l
	}, o);
}
function M(e, t, n, u, o, i) {
	let l = I(e, t, n, o, u, i);
	return e.getToken() === 18 ? Y(e, t, n, u, i, l) : l;
}
function L(e, t, n, u, o, i, l) {
	let f = e.getToken();
	if ((f & 4194304) === 4194304) {
		e.assignable & 2 && e.report(26), (f & 524288) === 524288 && e.assignable & 4 && e.report(26), (!o && f === 1077936155 && l.type === "ArrayExpression" || l.type === "ObjectExpression") && z(e, l), r(e, t | 32);
		let c = I(e, t, n, 1, u, e.tokenStart);
		return e.assignable = 2, e.finishNode(o ? {
			type: "AssignmentPattern",
			left: l,
			right: c
		} : {
			type: "AssignmentExpression",
			left: l,
			operator: B[f & 255],
			right: c
		}, i);
	}
	return (f & 8388608) === 8388608 && (l = x(e, t, n, u, i, 4, f, l)), C(e, t | 32, 22) && (l = ee(e, t, n, l, i)), l;
}
function Ee(e, t, n, u, o, i, l) {
	let f = e.getToken();
	r(e, t | 32);
	let c = I(e, t, n, 1, u, e.tokenStart);
	return l = e.finishNode(o ? {
		type: "AssignmentPattern",
		left: l,
		right: c
	} : {
		type: "AssignmentExpression",
		left: l,
		operator: B[f & 255],
		right: c
	}, i), e.assignable = 2, l;
}
function ee(e, t, n, u, o) {
	let i = I(e, (t | 131072) ^ 131072, n, 1, 0, e.tokenStart);
	y(e, t | 32, 21), e.assignable = 1;
	let l = I(e, t, n, 1, 0, e.tokenStart);
	return e.assignable = 2, e.finishNode({
		type: "ConditionalExpression",
		test: u,
		consequent: i,
		alternate: l
	}, o);
}
function x(e, t, n, u, o, i, l, f) {
	let c = -((t & 131072) > 0) & 8673330, a, s;
	for (e.assignable = 2; e.getToken() & 8388608 && (a = e.getToken(), s = a & 3840, (a & 524288 && l & 268435456 || l & 524288 && a & 268435456) && e.report(165), !(s + ((a === 8391735) << 8) - ((c === a) << 12) <= i));) r(e, t | 32), f = e.finishNode({
		type: a & 524288 || a & 268435456 ? "LogicalExpression" : "BinaryExpression",
		left: f,
		right: x(e, t, n, u, e.tokenStart, s, a, j(e, t, n, 0, u, 1)),
		operator: B[a & 255]
	}, o);
	return e.getToken() === 1077936155 && e.report(26), f;
}
function Wn(e, t, n, u, o) {
	u || e.report(0);
	let { tokenStart: i } = e, l = e.getToken();
	r(e, t | 32);
	let f = j(e, t, n, 0, o, 1);
	return e.getToken() === 8391735 && e.report(33), t & 1 && l === 16863276 && (f.type === "Identifier" ? e.report(121) : gn(f) && e.report(127)), e.assignable = 2, e.finishNode({
		type: "UnaryExpression",
		operator: B[l & 255],
		argument: f,
		prefix: !0
	}, i);
}
function zn(e, t, n, u, o, i, l, f) {
	let c = e.getToken(), a = N(e, t), { flags: s } = e;
	if ((s & 1) === 0) {
		if (e.getToken() === 86104) return $t(e, t, n, 1, u, f);
		if (he(t, e.getToken())) return o || e.report(0), (e.getToken() & 36864) === 36864 && (e.flags |= 256), Zt(e, t, n, i, f);
	}
	return !l && e.getToken() === 67174411 ? ft(e, t, n, a, i, 1, 0, s, f) : e.getToken() === 10 ? (Oe(e, t, c), l && e.report(51), (c & 36864) === 36864 && (e.flags |= 256), Me(e, t, n, e.tokenValue, a, l, i, 0, f)) : (e.assignable = 1, a);
}
function Kn(e, t, n, u, o, i) {
	if (u && (e.destructible |= 256), t & 1024) {
		r(e, t | 32), t & 8192 && e.report(32), o || e.report(26), e.getToken() === 22 && e.report(124);
		let l = null, f = !1;
		return (e.flags & 1) === 0 ? (f = C(e, t | 32, 8391476), (e.getToken() & 77824 || f) && (l = I(e, t, n, 1, 0, e.tokenStart))) : e.getToken() === 8391476 && e.report(30, B[e.getToken() & 255]), e.assignable = 2, e.finishNode({
			type: "YieldExpression",
			argument: l,
			delegate: f
		}, i);
	}
	return t & 1 && e.report(97, "yield"), lt(e, t, n);
}
function $n(e, t, n, u, o, i) {
	o && (e.destructible |= 128), t & 524288 && e.report(177);
	let l = lt(e, t, n);
	if (l.type === "ArrowFunctionExpression" || (e.getToken() & 65536) === 0) {
		if (t & 2048) throw new q(i, {
			index: e.startIndex,
			line: e.startLine,
			column: e.startColumn
		}, 176);
		if (t & 2) throw new q(i, {
			index: e.startIndex,
			line: e.startLine,
			column: e.startColumn
		}, 110);
		if (t & 8192 && t & 2048) throw new q(i, {
			index: e.startIndex,
			line: e.startLine,
			column: e.startColumn
		}, 110);
		return l;
	}
	if (t & 8192) throw new q(i, {
		index: e.startIndex,
		line: e.startLine,
		column: e.startColumn
	}, 31);
	if (t & 2048 || t & 2 && t & 8) {
		if (u) throw new q(i, {
			index: e.startIndex,
			line: e.startLine,
			column: e.startColumn
		}, 0);
		let c = j(e, t, n, 0, 0, 1);
		return e.getToken() === 8391735 && e.report(33), e.assignable = 2, e.finishNode({
			type: "AwaitExpression",
			argument: c
		}, i);
	}
	if (t & 2) throw new q(i, {
		index: e.startIndex,
		line: e.startLine,
		column: e.startColumn
	}, 98);
	return l;
}
function Ve(e, t, n, u, o, i, l) {
	let { tokenStart: f } = e;
	y(e, t | 32, 2162700);
	let c = [];
	if (e.getToken() !== 1074790415) {
		for (; e.getToken() === 134283267;) {
			let { index: a, tokenStart: s, tokenIndex: d, tokenValue: h } = e, A = e.getToken(), b = O(e, t);
			if (Vt(e, a, d, h)) {
				if (t |= 1, e.flags & 128) throw new q(s, e.currentLocation, 66);
				if (e.flags & 64) throw new q(s, e.currentLocation, 9);
				if (e.flags & 4096) throw new q(s, e.currentLocation, 15);
				l?.reportScopeError();
			}
			c.push(tt(e, t, b, A, s));
		}
		if (t & 1 && (i && ((i & 537079808) === 537079808 && e.report(119), (i & 36864) === 36864 && e.report(40)), e.flags & 512 && e.report(119), e.flags & 256)) {
			if (e.strictReservedRange) throw new q(e.strictReservedRange[0], e.strictReservedRange[1], 118);
			e.report(118);
		}
	}
	for (e.flags = (e.flags | 4928) ^ 4928, e.destructible = (e.destructible | 256) ^ 256; e.getToken() !== 1074790415;) c.push(ye(e, t, n, u, 4, {}));
	return y(e, o & 24 ? t | 32 : t, 1074790415), e.flags &= -4289, e.getToken() === 1077936155 && e.report(26), e.finishNode({
		type: "BlockStatement",
		body: c
	}, f);
}
function Yn(e, t) {
	let { tokenStart: n } = e;
	switch (r(e, t), e.getToken()) {
		case 67108990: e.report(167);
		case 67174411:
			!(t & 512) && e.report(28), e.assignable = 2;
			break;
		case 69271571:
		case 67108877:
			!(t & 256) && e.report(29), e.assignable = 1;
			break;
		default: e.report(30, "super");
	}
	return e.finishNode({ type: "Super" }, n);
}
function j(e, t, n, u, o, i) {
	let l = e.tokenStart;
	return F(e, t, n, J(e, t, n, 2, 0, u, o, i, l), o, 0, l);
}
function Qn(e, t, n, u) {
	e.assignable & 2 && e.report(55);
	let o = e.getToken();
	return r(e, t), e.assignable = 2, e.finishNode({
		type: "UpdateExpression",
		argument: n,
		operator: B[o & 255],
		prefix: !1
	}, u);
}
function F(e, t, n, u, o, i, l) {
	if ((e.getToken() & 33619968) === 33619968 && (e.flags & 1) === 0) u = Qn(e, t, u, l);
	else if ((e.getToken() & 67108864) === 67108864) {
		switch (t = (t | 131072) ^ 131072, e.getToken()) {
			case 67108877: {
				r(e, (t | 262152) ^ 8), t & 16 && e.getToken() === 130 && e.tokenValue === "super" && e.report(173), e.assignable = 1;
				let f = nt(e, t | 64, n);
				u = e.finishNode({
					type: "MemberExpression",
					object: u,
					computed: !1,
					property: f,
					optional: !1
				}, l);
				break;
			}
			case 69271571: {
				if ((e.flags & 8192) === 8192) return e.flags = (e.flags | 8192) ^ 8192, u;
				let f = !1;
				(e.flags & 2048) === 2048 && (f = !0, e.flags = (e.flags | 2048) ^ 2048), r(e, t | 32);
				let { tokenStart: c } = e, a = M(e, t, n, o, 1, c);
				y(e, t, 20), e.assignable = 1, u = e.finishNode({
					type: "MemberExpression",
					object: u,
					computed: !0,
					property: a,
					optional: !1
				}, l), f && (e.flags |= 2048);
				break;
			}
			case 67174411: {
				if ((e.flags & 1024) === 1024) return e.flags = (e.flags | 1024) ^ 1024, u;
				let f = !1;
				(e.flags & 2048) === 2048 && (f = !0, e.flags = (e.flags | 2048) ^ 2048);
				let c = ot(e, t, n, o);
				!(t & 1) && e.options.webcompat ? e.assignable = 4 : e.assignable = 2, u = e.finishNode({
					type: "CallExpression",
					callee: u,
					arguments: c,
					optional: !1
				}, l), f && (e.flags |= 2048);
				break;
			}
			case 67108990:
				r(e, (t | 262152) ^ 8), e.flags |= 2048, e.assignable = 2, u = Zn(e, t, n, u, l);
				break;
			default: (e.flags & 2048) === 2048 && e.report(166), e.assignable = 2, u = e.finishNode({
				type: "TaggedTemplateExpression",
				tag: u,
				quasi: e.getToken() === 67174408 ? it(e, t | 64, n) : ut(e, t)
			}, l);
		}
		u = F(e, t, n, u, 0, 1, l);
	}
	return i === 0 && (e.flags & 2048) === 2048 && (e.flags = (e.flags | 2048) ^ 2048, u = e.finishNode({
		type: "ChainExpression",
		expression: u
	}, l)), u;
}
function Zn(e, t, n, u, o) {
	let i = !1, l;
	if ((e.getToken() === 69271571 || e.getToken() === 67174411) && (e.flags & 2048) === 2048 && (i = !0, e.flags = (e.flags | 2048) ^ 2048), e.getToken() === 69271571) {
		r(e, t | 32);
		let { tokenStart: f } = e, c = M(e, t, n, 0, 1, f);
		y(e, t, 20), e.assignable = 2, l = e.finishNode({
			type: "MemberExpression",
			object: u,
			computed: !0,
			optional: !0,
			property: c
		}, o);
	} else if (e.getToken() === 67174411) {
		let f = ot(e, t, n, 0);
		!(t & 1) && e.options.webcompat ? e.assignable = 4 : e.assignable = 2, l = e.finishNode({
			type: "CallExpression",
			callee: u,
			arguments: f,
			optional: !0
		}, o);
	} else {
		let f = nt(e, t, n);
		e.assignable = 2, l = e.finishNode({
			type: "MemberExpression",
			object: u,
			computed: !1,
			optional: !0,
			property: f
		}, o);
	}
	return i && (e.flags |= 2048), l;
}
function nt(e, t, n) {
	return !(e.getToken() & 143360) && e.getToken() !== -2147483528 && e.getToken() !== -2147483527 && e.getToken() !== 130 && e.report(160), e.getToken() === 130 ? Pe(e, t, n, 0) : N(e, t);
}
function Gn(e, t, n, u, o, i) {
	u && e.report(56), o || e.report(0);
	let l = e.getToken();
	r(e, t | 32);
	let f = j(e, t, n, 0, 0, 1);
	return e.assignable & 2 && e.report(55), e.assignable = 2, e.finishNode({
		type: "UpdateExpression",
		argument: f,
		operator: B[l & 255],
		prefix: !0
	}, i);
}
function J(e, t, n, u, o, i, l, f, c) {
	if ((e.getToken() & 143360) === 143360) {
		switch (e.getToken()) {
			case 209006: return $n(e, t, n, o, l, c);
			case 241771: return Kn(e, t, n, l, i, c);
			case 209005: return zn(e, t, n, l, f, i, o, c);
		}
		let { tokenValue: a } = e, s = e.getToken(), d = N(e, t | 64);
		return e.getToken() === 10 ? (f || e.report(0), Oe(e, t, s), (s & 36864) === 36864 && (e.flags |= 256), Me(e, t, n, a, d, o, i, 0, c)) : (t & 16 && !(t & 32768) && !(t & 8192) && e.tokenValue === "arguments" && e.report(130), (s & 255) === 73 && (t & 1 && e.report(113), u & 24 && e.report(100)), e.assignable = t & 1 && (s & 537079808) === 537079808 ? 2 : 1, d);
	}
	if ((e.getToken() & 134217728) === 134217728) return O(e, t);
	switch (e.getToken()) {
		case 33619993:
		case 33619994: return Gn(e, t, n, o, f, c);
		case 16863276:
		case 16842798:
		case 16842799:
		case 25233968:
		case 25233969:
		case 16863275:
		case 16863277: return Wn(e, t, n, f, l);
		case 86104: return $t(e, t, n, 0, l, c);
		case 2162700: return ou(e, t, n, i ? 0 : 1, l);
		case 69271571: return iu(e, t, n, i ? 0 : 1, l);
		case 67174411: return fu(e, t | 64, n, i, 1, 0, c);
		case 86021:
		case 86022:
		case 86023: return nu(e, t);
		case 86111: return uu(e, t);
		case 65540: return du(e, t);
		case 132:
		case 86094: return au(e, t, n, l, c);
		case 86109: return Yn(e, t);
		case 67174409: return ut(e, t);
		case 67174408: return it(e, t, n);
		case 86107: return cu(e, t, n, l);
		case 134283388: return Kt(e, t);
		case 130: return Pe(e, t, n, 0);
		case 86106: return xn(e, t, n, o, l, c);
		case 8456256: if (e.options.jsx) return Ue(e, t, n, 0, e.tokenStart);
		default:
			if (he(t, e.getToken())) return lt(e, t, n);
			e.report(30, B[e.getToken() & 255]);
	}
}
function xn(e, t, n, u, o, i) {
	let l = N(e, t);
	return e.getToken() === 67108877 ? Wt(e, t, l, i) : (u && e.report(142), l = zt(e, t, n, o, i), e.assignable = 2, F(e, t, n, l, o, 0, i));
}
function Wt(e, t, n, u) {
	!(t & 2) && e.report(169), r(e, t);
	let o = e.getToken();
	return o !== 209030 && e.tokenValue !== "meta" ? e.report(174) : o & -2147483648 && e.report(175), e.assignable = 2, e.finishNode({
		type: "MetaProperty",
		meta: n,
		property: N(e, t)
	}, u);
}
function zt(e, t, n, u, o) {
	y(e, t | 32, 67174411), e.getToken() === 14 && e.report(143);
	let i = I(e, t, n, 1, u, e.tokenStart), l = null;
	if (e.getToken() === 18) {
		if (y(e, t, 18), e.getToken() !== 16) l = I(e, (t | 131072) ^ 131072, n, 1, u, e.tokenStart);
		C(e, t, 18);
	}
	let f = {
		type: "ImportExpression",
		source: i,
		options: l
	};
	return y(e, t, 16), e.finishNode(f, o);
}
function $e(e, t) {
	if (!C(e, t, 20579)) return [];
	y(e, t, 2162700);
	let n = [], u = /* @__PURE__ */ new Set();
	for (; e.getToken() !== 1074790415;) {
		let o = e.tokenStart, i = eu(e, t);
		y(e, t, 21);
		let l = pn(e, t), f = i.type === "Literal" ? i.value : i.name;
		u.has(f) && e.report(145, `${f}`), u.add(f), n.push(e.finishNode({
			type: "ImportAttribute",
			key: i,
			value: l
		}, o)), e.getToken() !== 1074790415 && y(e, t, 18);
	}
	return y(e, t, 1074790415), n;
}
function pn(e, t) {
	if (e.getToken() === 134283267) return O(e, t);
	e.report(30, B[e.getToken() & 255]);
}
function eu(e, t) {
	if (e.getToken() === 134283267) return O(e, t);
	if (e.getToken() & 143360) return N(e, t);
	e.report(30, B[e.getToken() & 255]);
}
function Se(e, t) {
	if (e.getToken() === 134283267) {
		let n = e.tokenValue;
		return kt(0, n) || e.report(171), O(e, t);
	} else {
		if (e.getToken() & 143360) return N(e, t);
		e.report(30, B[e.getToken() & 255]);
	}
}
function Kt(e, t) {
	let { tokenRaw: n, tokenValue: u, tokenStart: o } = e;
	r(e, t), e.assignable = 2;
	let i = {
		type: "Literal",
		value: u,
		bigint: String(u)
	};
	return e.options.raw && (i.raw = n), e.finishNode(i, o);
}
function ut(e, t) {
	e.assignable = 2;
	let { tokenValue: n, tokenRaw: u, tokenStart: o } = e;
	y(e, t, 67174409);
	let i = [Be(e, n, u, o, !0)];
	return e.finishNode({
		type: "TemplateLiteral",
		expressions: [],
		quasis: i
	}, o);
}
function it(e, t, n) {
	t = (t | 131072) ^ 131072;
	let { tokenValue: u, tokenRaw: o, tokenStart: i } = e;
	y(e, t & -65 | 32, 67174408);
	let l = [Be(e, u, o, i, !1)], f = [M(e, t & -65, n, 0, 1, e.tokenStart)];
	for (e.getToken() !== 1074790415 && e.report(83); e.setToken(dn(e, t), !0) !== 67174409;) {
		let { tokenValue: c, tokenRaw: a, tokenStart: s } = e;
		y(e, t & -65 | 32, 67174408), l.push(Be(e, c, a, s, !1)), f.push(M(e, t, n, 0, 1, e.tokenStart)), e.getToken() !== 1074790415 && e.report(83);
	}
	{
		let { tokenValue: c, tokenRaw: a, tokenStart: s } = e;
		y(e, t, 67174409), l.push(Be(e, c, a, s, !0));
	}
	return e.finishNode({
		type: "TemplateLiteral",
		expressions: f,
		quasis: l
	}, i);
}
function Be(e, t, n, u, o) {
	let i = e.finishNode({
		type: "TemplateElement",
		value: {
			cooked: t,
			raw: n
		},
		tail: o
	}, u), l = o ? 1 : 2, { ranges: f } = e.options;
	return f && (f.start && (i.start += 1), f.end && (i.end -= l), f.range && (i.range[0] += 1, i.range[1] -= l)), e.options.loc && (i.loc.start.column += 1, i.loc.end.column -= l), i;
}
function tu(e, t, n) {
	let u = e.tokenStart;
	t = (t | 131072) ^ 131072, y(e, t | 32, 14);
	let o = I(e, t, n, 1, 0, e.tokenStart);
	return e.assignable = 1, e.finishNode({
		type: "SpreadElement",
		argument: o
	}, u);
}
function ot(e, t, n, u) {
	r(e, t | 32);
	let o = [];
	if (e.getToken() === 16) return r(e, t | 64), o;
	for (; e.getToken() !== 16 && (e.getToken() === 14 ? o.push(tu(e, t, n)) : o.push(I(e, t, n, 1, u, e.tokenStart)), !(e.getToken() !== 18 || (r(e, t | 32), e.getToken() === 16))););
	return y(e, t | 64, 16), o;
}
function N(e, t) {
	let { tokenValue: n, tokenStart: u } = e;
	return r(e, t | (n === "await" && (e.getToken() & -2147483648) === 0 ? 32 : 0)), e.finishNode({
		type: "Identifier",
		name: n
	}, u);
}
function O(e, t) {
	let { tokenValue: n, tokenRaw: u, tokenStart: o } = e;
	if (e.getToken() === 134283388) return Kt(e, t);
	let i = {
		type: "Literal",
		value: n
	};
	return e.options.raw && (i.raw = u), r(e, t), e.assignable = 2, e.finishNode(i, o);
}
function nu(e, t) {
	let n = e.tokenStart, u = B[e.getToken() & 255], i = {
		type: "Literal",
		value: e.getToken() === 86023 ? null : u === "true"
	};
	return e.options.raw && (i.raw = u), r(e, t), e.assignable = 2, e.finishNode(i, n);
}
function uu(e, t) {
	let { tokenStart: n } = e;
	return r(e, t), e.assignable = 2, e.finishNode({ type: "ThisExpression" }, n);
}
function p(e, t, n, u, o, i, l, f, c) {
	r(e, t | 32);
	let a = i ? pe(e, t, 8391476) : 0, s = null, d, h = n ? e.createScope() : void 0;
	if (e.getToken() === 67174411) !(l & 1) && e.report(39, "Function");
	else {
		let T = o & 4 && ((t & 8) === 0 || (t & 2) === 0) ? 4 : 64 | (f ? 1024 : 0) | (a ? 1024 : 0);
		Mt(e, t, e.getToken()), n && (T & 4 ? n.addVarName(t, e.tokenValue, T) : n.addBlockName(t, e.tokenValue, T, o), h = h?.createChildScope(128), l && l & 2 && e.declareUnboundVariable(e.tokenValue)), d = e.getToken(), e.getToken() & 143360 ? s = N(e, t) : e.report(30, B[e.getToken() & 255]);
	}
	t = (t | 28416) ^ 28416 | 65536 | (f ? 2048 : 0) | (a ? 1024 : 0) | (a ? 0 : 262144), h = h?.createChildScope(256);
	let A = Qt(e, (t | 8192) & -524289, h, u, 0, 1), b = 524428, w = Ve(e, (t | b) ^ b | 36864, h?.createChildScope(64), u, 8, d, h);
	return e.finishNode({
		type: "FunctionDeclaration",
		id: s,
		params: A,
		body: w,
		async: f === 1,
		generator: a === 1
	}, c);
}
function $t(e, t, n, u, o, i) {
	r(e, t | 32);
	let l = pe(e, t, 8391476), f = (u ? 2048 : 0) | (l ? 1024 : 0), c = null, a, s = e.createScopeIfLexical(), d = 552704;
	e.getToken() & 143360 && (Mt(e, (t | d) ^ d | f, e.getToken()), s = s?.createChildScope(128), a = e.getToken(), c = N(e, t)), t = (t | d) ^ d | 65536 | f | (l ? 0 : 262144), s = s?.createChildScope(256);
	let h = Qt(e, (t | 8192) & -524289, s, n, o, 1), A = Ve(e, t & -131229 | 36864, s?.createChildScope(64), n, 0, a, s);
	return e.assignable = 2, e.finishNode({
		type: "FunctionExpression",
		id: c,
		params: h,
		body: A,
		async: u === 1,
		generator: l === 1
	}, i);
}
function iu(e, t, n, u, o) {
	let i = X(e, t, void 0, n, u, o, 0, 2, 0);
	return e.destructible & 64 && e.report(63), e.destructible & 8 && e.report(62), i;
}
function X(e, t, n, u, o, i, l, f, c) {
	let { tokenStart: a } = e;
	r(e, t | 32);
	let s = [], d = 0;
	for (t = (t | 131072) ^ 131072; e.getToken() !== 20;) if (C(e, t | 32, 18)) s.push(null);
	else {
		let A, { tokenStart: b, tokenValue: w } = e, T = e.getToken();
		if (T & 143360) if (A = J(e, t, u, f, 0, 1, i, 1, b), e.getToken() === 1077936155) {
			e.assignable & 2 && e.report(26), r(e, t | 32), n?.addVarOrBlock(t, w, f, c);
			let D = I(e, t, u, 1, i, e.tokenStart);
			A = e.finishNode(l ? {
				type: "AssignmentPattern",
				left: A,
				right: D
			} : {
				type: "AssignmentExpression",
				operator: "=",
				left: A,
				right: D
			}, b), d |= e.destructible & 256 ? 256 : 0 | e.destructible & 128 ? 128 : 0;
		} else e.getToken() === 18 || e.getToken() === 20 ? (e.assignable & 2 ? d |= 16 : n?.addVarOrBlock(t, w, f, c), d |= e.destructible & 256 ? 256 : 0 | e.destructible & 128 ? 128 : 0) : (d |= f & 1 ? 32 : (f & 2) === 0 ? 16 : 0, A = F(e, t, u, A, i, 0, b), e.getToken() !== 18 && e.getToken() !== 20 ? (e.getToken() !== 1077936155 && (d |= 16), A = L(e, t, u, i, l, b, A)) : e.getToken() !== 1077936155 && (d |= e.assignable & 1 ? 32 : 16));
		else T & 2097152 ? (A = e.getToken() === 2162700 ? H(e, t, n, u, 0, i, l, f, c) : X(e, t, n, u, 0, i, l, f, c), d |= e.destructible, e.assignable = e.destructible & 16 ? 2 : 1, e.getToken() === 18 || e.getToken() === 20 ? e.assignable & 2 && (d |= 16) : e.destructible & 8 ? e.report(71) : (A = F(e, t, u, A, i, 0, b), d = e.assignable & 2 ? 16 : 0, e.getToken() !== 18 && e.getToken() !== 20 ? A = L(e, t, u, i, l, b, A) : e.getToken() !== 1077936155 && (d |= e.assignable & 1 ? 32 : 16))) : T === 14 ? (A = le(e, t, n, u, 20, f, c, 0, i, l), d |= e.destructible, e.getToken() !== 18 && e.getToken() !== 20 && e.report(30, B[e.getToken() & 255])) : (A = j(e, t, u, 1, 0, 1), e.getToken() !== 18 && e.getToken() !== 20 ? (A = L(e, t, u, i, l, b, A), !(f & 3) && T === 67174411 && (d |= 16)) : e.assignable & 2 ? d |= 16 : T === 67174411 && (d |= e.assignable & 1 && f & 3 ? 32 : 16));
		if (s.push(A), C(e, t | 32, 18)) {
			if (e.getToken() === 20) break;
		} else break;
	}
	y(e, t, 20);
	let h = e.finishNode({
		type: l ? "ArrayPattern" : "ArrayExpression",
		elements: s
	}, a);
	return !o && e.getToken() & 4194304 ? Yt(e, t, u, d, i, l, a, h) : (e.destructible = d, h);
}
function Yt(e, t, n, u, o, i, l, f) {
	e.getToken() !== 1077936155 && e.report(26), r(e, t | 32), u & 16 && e.report(26), i || z(e, f);
	let { tokenStart: c } = e, a = I(e, t, n, 1, o, c);
	return e.destructible = (u | 72) ^ 72 | (e.destructible & 128 ? 128 : 0) | (e.destructible & 256 ? 256 : 0), e.finishNode(i ? {
		type: "AssignmentPattern",
		left: f,
		right: a
	} : {
		type: "AssignmentExpression",
		left: f,
		operator: "=",
		right: a
	}, l);
}
function le(e, t, n, u, o, i, l, f, c, a) {
	let { tokenStart: s } = e;
	r(e, t | 32);
	let d = null, h = 0, { tokenValue: A, tokenStart: b } = e, w = e.getToken();
	if (w & 143360) e.assignable = 1, d = J(e, t, u, i, 0, 1, c, 1, b), w = e.getToken(), d = F(e, t, u, d, c, 0, b), e.getToken() !== 18 && e.getToken() !== o && (e.assignable & 2 && e.getToken() === 1077936155 && e.report(71), h |= 16, d = L(e, t, u, c, a, b, d)), e.assignable & 2 ? h |= 16 : w === o || w === 18 ? n?.addVarOrBlock(t, A, i, l) : h |= 32, h |= e.destructible & 128 ? 128 : 0;
	else if (w === o) e.report(41);
	else if (w & 2097152) d = e.getToken() === 2162700 ? H(e, t, n, u, 1, c, a, i, l) : X(e, t, n, u, 1, c, a, i, l), w = e.getToken(), w !== 1077936155 && w !== o && w !== 18 ? (e.destructible & 8 && e.report(71), d = F(e, t, u, d, c, 0, b), h |= e.assignable & 1 ? 0 : 16, (e.getToken() & 4194304) === 4194304 ? (e.getToken() !== 1077936155 && (h |= 16), d = L(e, t, u, c, a, b, d)) : ((e.getToken() & 8388608) === 8388608 && (d = x(e, t, u, 1, b, 4, w, d)), C(e, t | 32, 22) && (d = ee(e, t, u, d, b)), h |= e.assignable & 1 ? 32 : 16)) : h |= o === 1074790415 && w !== 1077936155 ? 16 : e.destructible;
	else {
		h |= 32, d = j(e, t, u, 1, c, 1);
		let { tokenStart: T } = e, D = e.getToken();
		return D === 1077936155 ? (e.assignable & 2 && e.report(26), d = L(e, t, u, c, a, T, d), h |= 16) : (D === 18 ? h |= 16 : D !== o && (d = L(e, t, u, c, a, T, d)), h |= e.assignable & 1 ? 32 : 16), e.destructible = h, e.getToken() !== o && e.getToken() !== 18 && e.report(161), e.finishNode({
			type: a ? "RestElement" : "SpreadElement",
			argument: d
		}, s);
	}
	if (e.getToken() !== o) if (i & 1 && (h |= f ? 16 : 32), C(e, t | 32, 1077936155)) {
		h & 16 && e.report(26), z(e, d);
		let T = I(e, t, u, 1, c, e.tokenStart);
		d = e.finishNode(a ? {
			type: "AssignmentPattern",
			left: d,
			right: T
		} : {
			type: "AssignmentExpression",
			left: d,
			operator: "=",
			right: T
		}, b), h = 16;
	} else h |= 16;
	return e.destructible = h, e.finishNode({
		type: a ? "RestElement" : "SpreadElement",
		argument: d
	}, s);
}
function W(e, t, n, u, o, i) {
	let l = 11264 | ((u & 64) === 0 ? 16896 : 0);
	t = (t | l) ^ l | (u & 8 ? 1024 : 0) | (u & 16 ? 2048 : 0) | (u & 64 ? 16384 : 0) | 98560;
	let f = e.createScopeIfLexical(256), c = lu(e, (t | 8192) & -524289, f, n, u, 1, o);
	f = f?.createChildScope(64);
	let a = Ve(e, t & -655373 | 36864, f, n, 0, void 0, f?.parent);
	return e.finishNode({
		type: "FunctionExpression",
		params: c,
		body: a,
		async: (u & 16) > 0,
		generator: (u & 8) > 0,
		id: null
	}, i);
}
function ou(e, t, n, u, o) {
	let i = H(e, t, void 0, n, u, o, 0, 2, 0);
	return e.destructible & 64 && e.report(63), e.destructible & 8 && e.report(62), i;
}
function H(e, t, n, u, o, i, l, f, c) {
	let { tokenStart: a } = e;
	r(e, t);
	let s = [], d = 0, h = 0;
	for (t = (t | 131072) ^ 131072; e.getToken() !== 1074790415;) {
		let { tokenValue: b, tokenStart: w } = e, T = e.getToken();
		if (T === 14) s.push(le(e, t, n, u, 1074790415, f, c, 0, i, l));
		else {
			let D = 0, v = null, k;
			if (e.getToken() & 143360 || e.getToken() === -2147483528 || e.getToken() === -2147483527) if (e.getToken() === -2147483527 && (d |= 16), v = N(e, t), e.getToken() === 18 || e.getToken() === 1074790415 || e.getToken() === 1077936155) if (D |= 4, t & 1 && (T & 537079808) === 537079808 ? d |= 16 : Ie(e, t, f, T, 0), n?.addVarOrBlock(t, b, f, c), C(e, t | 32, 1077936155)) {
				d |= 8;
				let E = I(e, t, u, 1, i, e.tokenStart);
				d |= e.destructible & 256 ? 256 : 0 | e.destructible & 128 ? 128 : 0, k = e.finishNode({
					type: "AssignmentPattern",
					left: e.cloneIdentifier(v),
					right: E
				}, w);
			} else d |= (T === 209006 ? 128 : 0) | (T === -2147483528 ? 16 : 0), k = e.cloneIdentifier(v);
			else if (C(e, t | 32, 21)) {
				let { tokenStart: E } = e;
				if (b === "__proto__" && h++, e.getToken() & 143360) {
					let de = e.getToken(), Q = e.tokenValue;
					k = J(e, t, u, f, 0, 1, i, 1, E);
					let K = e.getToken();
					k = F(e, t, u, k, i, 0, E), e.getToken() === 18 || e.getToken() === 1074790415 ? K === 1077936155 || K === 1074790415 || K === 18 ? (d |= e.destructible & 128 ? 128 : 0, e.assignable & 2 ? d |= 16 : (de & 143360) === 143360 && n?.addVarOrBlock(t, Q, f, c)) : d |= e.assignable & 1 ? 32 : 16 : (e.getToken() & 4194304) === 4194304 ? (e.assignable & 2 ? d |= 16 : K !== 1077936155 ? d |= 32 : n?.addVarOrBlock(t, Q, f, c), k = L(e, t, u, i, l, E, k)) : (d |= 16, (e.getToken() & 8388608) === 8388608 && (k = x(e, t, u, 1, E, 4, K, k)), C(e, t | 32, 22) && (k = ee(e, t, u, k, E)));
				} else (e.getToken() & 2097152) === 2097152 ? (k = e.getToken() === 69271571 ? X(e, t, n, u, 0, i, l, f, c) : H(e, t, n, u, 0, i, l, f, c), d = e.destructible, e.assignable = d & 16 ? 2 : 1, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : e.destructible & 8 ? e.report(71) : (k = F(e, t, u, k, i, 0, E), d = e.assignable & 2 ? 16 : 0, (e.getToken() & 4194304) === 4194304 ? k = Ee(e, t, u, i, l, E, k) : ((e.getToken() & 8388608) === 8388608 && (k = x(e, t, u, 1, E, 4, T, k)), C(e, t | 32, 22) && (k = ee(e, t, u, k, E)), d |= e.assignable & 1 ? 32 : 16))) : (k = j(e, t, u, 1, i, 1), d |= e.assignable & 1 ? 32 : 16, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : (k = F(e, t, u, k, i, 0, E), d = e.assignable & 2 ? 16 : 0, e.getToken() !== 18 && T !== 1074790415 && (e.getToken() !== 1077936155 && (d |= 16), k = L(e, t, u, i, l, E, k))));
			} else e.getToken() === 69271571 ? (d |= 16, T === 209005 && (D |= 16), D |= (T === 209008 ? 256 : T === 209009 ? 512 : 1) | 2, v = ue(e, t, u, i), d |= e.assignable, k = W(e, t, u, D, i, e.tokenStart)) : e.getToken() & 143360 ? (d |= 16, T === -2147483528 && e.report(95), T === 209005 ? (e.flags & 1 && e.report(132), D |= 17) : T === 209008 ? D |= 256 : T === 209009 ? D |= 512 : e.report(0), v = N(e, t), k = W(e, t, u, D, i, e.tokenStart)) : e.getToken() === 67174411 ? (d |= 16, D |= 1, k = W(e, t, u, D, i, e.tokenStart)) : e.getToken() === 8391476 ? (d |= 16, T === 209008 ? e.report(42) : T === 209009 ? e.report(43) : T !== 209005 && e.report(30, B[52]), r(e, t), D |= 9 | (T === 209005 ? 16 : 0), e.getToken() & 143360 ? v = N(e, t) : (e.getToken() & 134217728) === 134217728 ? v = O(e, t) : e.getToken() === 69271571 ? (D |= 2, v = ue(e, t, u, i), d |= e.assignable) : e.report(30, B[e.getToken() & 255]), k = W(e, t, u, D, i, e.tokenStart)) : (e.getToken() & 134217728) === 134217728 ? (T === 209005 && (D |= 16), D |= T === 209008 ? 256 : T === 209009 ? 512 : 1, d |= 16, v = O(e, t), k = W(e, t, u, D, i, e.tokenStart)) : e.report(133);
			else if ((e.getToken() & 134217728) === 134217728) if (v = O(e, t), e.getToken() === 21) {
				y(e, t | 32, 21);
				let { tokenStart: E } = e;
				if (b === "__proto__" && h++, e.getToken() & 143360) {
					k = J(e, t, u, f, 0, 1, i, 1, E);
					let { tokenValue: de } = e, Q = e.getToken();
					k = F(e, t, u, k, i, 0, E), e.getToken() === 18 || e.getToken() === 1074790415 ? Q === 1077936155 || Q === 1074790415 || Q === 18 ? e.assignable & 2 ? d |= 16 : n?.addVarOrBlock(t, de, f, c) : d |= e.assignable & 1 ? 32 : 16 : e.getToken() === 1077936155 ? (e.assignable & 2 && (d |= 16), k = L(e, t, u, i, l, E, k)) : (d |= 16, k = L(e, t, u, i, l, E, k));
				} else (e.getToken() & 2097152) === 2097152 ? (k = e.getToken() === 69271571 ? X(e, t, n, u, 0, i, l, f, c) : H(e, t, n, u, 0, i, l, f, c), d = e.destructible, e.assignable = d & 16 ? 2 : 1, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : (e.destructible & 8) !== 8 && (k = F(e, t, u, k, i, 0, E), d = e.assignable & 2 ? 16 : 0, (e.getToken() & 4194304) === 4194304 ? k = Ee(e, t, u, i, l, E, k) : ((e.getToken() & 8388608) === 8388608 && (k = x(e, t, u, 1, E, 4, T, k)), C(e, t | 32, 22) && (k = ee(e, t, u, k, E)), d |= e.assignable & 1 ? 32 : 16))) : (k = j(e, t, u, 1, 0, 1), d |= e.assignable & 1 ? 32 : 16, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : (k = F(e, t, u, k, i, 0, E), d = e.assignable & 1 ? 0 : 16, e.getToken() !== 18 && e.getToken() !== 1074790415 && (e.getToken() !== 1077936155 && (d |= 16), k = L(e, t, u, i, l, E, k))));
			} else e.getToken() === 67174411 ? (D |= 1, k = W(e, t, u, D, i, e.tokenStart), d = 16) : e.report(134);
			else if (e.getToken() === 69271571) if (v = ue(e, t, u, i), d |= e.destructible & 256 ? 256 : 0, D |= 2, e.getToken() === 21) {
				r(e, t | 32);
				let { tokenStart: E, tokenValue: de } = e, Q = e.getToken();
				if (e.getToken() & 143360) {
					k = J(e, t, u, f, 0, 1, i, 1, E);
					let K = e.getToken();
					k = F(e, t, u, k, i, 0, E), (e.getToken() & 4194304) === 4194304 ? (d |= e.assignable & 1 ? K === 1077936155 ? 0 : 32 : 16, k = Ee(e, t, u, i, l, E, k)) : e.getToken() === 18 || e.getToken() === 1074790415 ? K === 1077936155 || K === 1074790415 || K === 18 ? e.assignable & 2 ? d |= 16 : (Q & 143360) === 143360 && n?.addVarOrBlock(t, de, f, c) : d |= e.assignable & 1 ? 32 : 16 : (d |= 16, k = L(e, t, u, i, l, E, k));
				} else (e.getToken() & 2097152) === 2097152 ? (k = e.getToken() === 69271571 ? X(e, t, n, u, 0, i, l, f, c) : H(e, t, n, u, 0, i, l, f, c), d = e.destructible, e.assignable = d & 16 ? 2 : 1, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : d & 8 ? e.report(62) : (k = F(e, t, u, k, i, 0, E), d = e.assignable & 2 ? d | 16 : 0, (e.getToken() & 4194304) === 4194304 ? (e.getToken() !== 1077936155 && (d |= 16), k = Ee(e, t, u, i, l, E, k)) : ((e.getToken() & 8388608) === 8388608 && (k = x(e, t, u, 1, E, 4, T, k)), C(e, t | 32, 22) && (k = ee(e, t, u, k, E)), d |= e.assignable & 1 ? 32 : 16))) : (k = j(e, t, u, 1, 0, 1), d |= e.assignable & 1 ? 32 : 16, e.getToken() === 18 || e.getToken() === 1074790415 ? e.assignable & 2 && (d |= 16) : (k = F(e, t, u, k, i, 0, E), d = e.assignable & 1 ? 0 : 16, e.getToken() !== 18 && e.getToken() !== 1074790415 && (e.getToken() !== 1077936155 && (d |= 16), k = L(e, t, u, i, l, E, k))));
			} else e.getToken() === 67174411 ? (D |= 1, k = W(e, t, u, D, i, e.tokenStart), d = 16) : e.report(44);
			else if (T === 8391476) if (y(e, t | 32, 8391476), D |= 8, e.getToken() & 143360) {
				let E = e.getToken();
				if (v = N(e, t), D |= 1, e.getToken() === 67174411) d |= 16, k = W(e, t, u, D, i, e.tokenStart);
				else throw new q(e.tokenStart, e.currentLocation, E === 209005 ? 46 : E === 209008 || e.getToken() === 209009 ? 45 : 47, B[E & 255]);
			} else (e.getToken() & 134217728) === 134217728 ? (d |= 16, v = O(e, t), D |= 1, k = W(e, t, u, D, i, e.tokenStart)) : e.getToken() === 69271571 ? (d |= 16, D |= 3, v = ue(e, t, u, i), k = W(e, t, u, D, i, e.tokenStart)) : e.report(126);
			else e.report(30, B[T & 255]);
			d |= e.destructible & 128 ? 128 : 0, e.destructible = d, s.push(e.finishNode({
				type: "Property",
				key: v,
				value: k,
				kind: D & 768 ? D & 512 ? "set" : "get" : "init",
				computed: (D & 2) > 0,
				method: (D & 1) > 0,
				shorthand: (D & 4) > 0
			}, w));
		}
		if (d |= e.destructible, e.getToken() !== 18) break;
		r(e, t);
	}
	y(e, t, 1074790415), h > 1 && (d |= 64);
	let A = e.finishNode({
		type: l ? "ObjectPattern" : "ObjectExpression",
		properties: s
	}, a);
	return !o && e.getToken() & 4194304 ? Yt(e, t, u, d, i, l, a, A) : (e.destructible = d, A);
}
function lu(e, t, n, u, o, i, l) {
	y(e, t, 67174411);
	let f = [];
	if (e.flags = (e.flags | 128) ^ 128, e.strictReservedRange = null, e.getToken() === 16) return o & 512 && e.report(37, "Setter", "one", ""), r(e, t), f;
	o & 256 && e.report(37, "Getter", "no", "s"), o & 512 && e.getToken() === 14 && e.report(38), t = (t | 131072) ^ 131072;
	let c = 0, a = 0;
	for (; e.getToken() !== 18;) {
		let s = null, { tokenStart: d } = e;
		if (e.getToken() & 143360 ? (!(t & 1) && ((e.getToken() & 36864) === 36864 && (e.flags |= 256, e.strictReservedRange ?? (e.strictReservedRange = [d, e.currentLocation])), (e.getToken() & 537079808) === 537079808 && (e.flags |= 512)), s = ct(e, t, n, o | 1, 0)) : (e.getToken() === 2162700 ? s = H(e, t, n, u, 1, l, 1, i, 0) : e.getToken() === 69271571 ? s = X(e, t, n, u, 1, l, 1, i, 0) : e.getToken() === 14 && (s = le(e, t, n, u, 16, i, 0, 0, l, 1)), a = 1, e.destructible & 48 && e.report(50)), e.getToken() === 1077936155) {
			r(e, t | 32), a = 1;
			let h = I(e, t, u, 1, 0, e.tokenStart);
			s = e.finishNode({
				type: "AssignmentPattern",
				left: s,
				right: h
			}, d);
		}
		if (c++, f.push(s), !C(e, t, 18) || e.getToken() === 16) break;
	}
	return o & 512 && c !== 1 && e.report(37, "Setter", "one", ""), n?.reportScopeError(), a && (e.flags |= 128), y(e, t, 16), f;
}
function ue(e, t, n, u) {
	r(e, t | 32);
	let o = I(e, (t | 131072) ^ 131072, n, 1, u, e.tokenStart);
	return y(e, t, 20), o;
}
function fu(e, t, n, u, o, i, l) {
	e.flags = (e.flags | 128) ^ 128;
	let f = e.tokenStart;
	r(e, t | 262176);
	let c = e.createScopeIfLexical()?.createChildScope(512);
	if (t = (t | 131072) ^ 131072, C(e, t, 16)) return qe(e, t, c, n, [], u, 0, l);
	let a = 0;
	e.destructible &= -385;
	let s, d = [], h = 0, A = 0, b = 0, w = e.tokenStart;
	for (e.assignable = 1; e.getToken() !== 16;) {
		let { tokenStart: T } = e, D = e.getToken();
		if (D & 143360) c?.addBlockName(t, e.tokenValue, 1, 0), (D & 537079808) === 537079808 ? A = 1 : (D & 36864) === 36864 && (b = 1), s = J(e, t, n, o, 0, 1, 1, 1, T), e.getToken() === 16 || e.getToken() === 18 ? e.assignable & 2 && (a |= 16, A = 1) : (e.getToken() === 1077936155 ? A = 1 : a |= 16, s = F(e, t, n, s, 1, 0, T), e.getToken() !== 16 && e.getToken() !== 18 && (s = L(e, t, n, 1, 0, T, s)));
		else if ((D & 2097152) === 2097152) s = D === 2162700 ? H(e, t | 262144, c, n, 0, 1, 0, o, i) : X(e, t | 262144, c, n, 0, 1, 0, o, i), a |= e.destructible, A = 1, e.assignable = 2, e.getToken() !== 16 && e.getToken() !== 18 && (a & 8 && e.report(122), s = F(e, t, n, s, 0, 0, T), a |= 16, e.getToken() !== 16 && e.getToken() !== 18 && (s = L(e, t, n, 0, 0, T, s)));
		else if (D === 14) {
			s = le(e, t, c, n, 16, o, i, 0, 1, 0), e.destructible & 16 && e.report(74), A = 1, h && (e.getToken() === 16 || e.getToken() === 18) && d.push(s), a |= 8;
			break;
		} else {
			if (a |= 16, s = I(e, t, n, 1, 1, T), h && (e.getToken() === 16 || e.getToken() === 18) && d.push(s), e.getToken() === 18 && (h || (h = 1, d = [s])), h) {
				for (; C(e, t | 32, 18);) d.push(I(e, t, n, 1, 1, e.tokenStart));
				e.assignable = 2, s = e.finishNode({
					type: "SequenceExpression",
					expressions: d
				}, w);
			}
			return y(e, t, 16), e.destructible = a, e.options.preserveParens ? e.finishNode({
				type: "ParenthesizedExpression",
				expression: s
			}, f) : s;
		}
		if (h && (e.getToken() === 16 || e.getToken() === 18) && d.push(s), !C(e, t | 32, 18)) break;
		if (h || (h = 1, d = [s]), e.getToken() === 16) {
			a |= 8;
			break;
		}
	}
	return h && (e.assignable = 2, s = e.finishNode({
		type: "SequenceExpression",
		expressions: d
	}, w)), y(e, t, 16), a & 16 && a & 8 && e.report(151), a |= e.destructible & 256 ? 256 : 0 | e.destructible & 128 ? 128 : 0, e.getToken() === 10 ? (a & 48 && e.report(49), t & 2050 && a & 128 && e.report(31), t & 1025 && a & 256 && e.report(32), A && (e.flags |= 128), b && (e.flags |= 256), qe(e, t, c, n, h ? d : [s], u, 0, l)) : (a & 64 && e.report(63), a & 8 && e.report(144), e.destructible = (e.destructible | 256) ^ 256 | a, e.options.preserveParens ? e.finishNode({
		type: "ParenthesizedExpression",
		expression: s
	}, f) : s);
}
function lt(e, t, n) {
	let { tokenStart: u } = e, { tokenValue: o } = e, i = 0, l = 0;
	(e.getToken() & 537079808) === 537079808 ? i = 1 : (e.getToken() & 36864) === 36864 && (l = 1);
	let f = N(e, t);
	if (e.assignable = 1, e.getToken() === 10) {
		let c = e.options.lexical ? Re(e, t, o) : void 0;
		return i && (e.flags |= 128), l && (e.flags |= 256), Te(e, t, c, n, [f], 0, u);
	}
	return f;
}
function Me(e, t, n, u, o, i, l, f, c) {
	l || e.report(57), i && e.report(51), e.flags &= -129;
	return Te(e, t, e.options.lexical ? Re(e, t, u) : void 0, n, [o], f, c);
}
function qe(e, t, n, u, o, i, l, f) {
	i || e.report(57);
	for (let c = 0; c < o.length; ++c) z(e, o[c]);
	return Te(e, t, n, u, o, l, f);
}
function Te(e, t, n, u, o, i, l) {
	e.flags & 1 && e.report(48), y(e, t | 32, 10);
	let f = 535552;
	t = (t | f) ^ f | (i ? 2048 : 0);
	let c = e.getToken() !== 2162700, a;
	if (n?.reportScopeError(), c) e.flags = (e.flags | 4928) ^ 4928, a = I(e, t, u, 1, 0, e.tokenStart);
	else {
		n = n?.createChildScope(64);
		let s = 131084;
		switch (a = Ve(e, (t | s) ^ s | 4096, n, u, 16, void 0, void 0), e.getToken()) {
			case 69271571:
				!(e.flags & 1) && e.report(116), e.flags |= 8192;
				break;
			case 67108877:
			case 67174409:
			case 22: e.report(117);
			case 67174411:
				!(e.flags & 1) && e.report(116), e.flags |= 1024;
				break;
		}
		(e.getToken() & 8388608) === 8388608 && !(e.flags & 1) && e.report(30, B[e.getToken() & 255]), (e.getToken() & 33619968) === 33619968 && e.report(125);
	}
	return e.assignable = 2, e.finishNode({
		type: "ArrowFunctionExpression",
		params: o,
		body: a,
		async: i === 1,
		expression: c,
		generator: !1
	}, l);
}
function Qt(e, t, n, u, o, i) {
	y(e, t, 67174411), e.flags = (e.flags | 128) ^ 128, e.strictReservedRange = null;
	let l = [];
	if (C(e, t, 16)) return l;
	t = (t | 131072) ^ 131072;
	let f = 0;
	for (; e.getToken() !== 18;) {
		let c, { tokenStart: a } = e, s = e.getToken();
		if (s & 143360 ? (!(t & 1) && ((s & 36864) === 36864 && (e.flags |= 256, e.strictReservedRange ?? (e.strictReservedRange = [a, e.currentLocation])), (s & 537079808) === 537079808 && (e.flags |= 512)), c = ct(e, t, n, i | 1, 0)) : (s === 2162700 ? c = H(e, t, n, u, 1, o, 1, i, 0) : s === 69271571 ? c = X(e, t, n, u, 1, o, 1, i, 0) : s === 14 ? c = le(e, t, n, u, 16, i, 0, 0, o, 1) : e.report(30, B[s & 255]), f = 1, e.destructible & 48 && e.report(50)), e.getToken() === 1077936155) {
			r(e, t | 32), f = 1;
			let d = I(e, t, u, 1, o, e.tokenStart);
			c = e.finishNode({
				type: "AssignmentPattern",
				left: c,
				right: d
			}, a);
		}
		if (l.push(c), !C(e, t, 18) || e.getToken() === 16) break;
	}
	return f && (e.flags |= 128), (f || t & 1) && n?.reportScopeError(), y(e, t, 16), l;
}
function Fe(e, t, n, u, o, i) {
	let l = e.getToken();
	if (l & 67108864) {
		if (l === 67108877) {
			r(e, t | 262144), e.assignable = 1;
			let f = nt(e, t, n);
			return Fe(e, t, n, e.finishNode({
				type: "MemberExpression",
				object: u,
				computed: !1,
				property: f,
				optional: !1
			}, i), 0, i);
		} else if (l === 69271571) {
			r(e, t | 32);
			let { tokenStart: f } = e, c = M(e, t, n, o, 1, f);
			return y(e, t, 20), e.assignable = 1, Fe(e, t, n, e.finishNode({
				type: "MemberExpression",
				object: u,
				computed: !0,
				property: c,
				optional: !1
			}, i), 0, i);
		} else if (l === 67174408 || l === 67174409) return e.assignable = 2, Fe(e, t, n, e.finishNode({
			type: "TaggedTemplateExpression",
			tag: u,
			quasi: e.getToken() === 67174408 ? it(e, t | 64, n) : ut(e, t | 64)
		}, i), 0, i);
	}
	return u;
}
function cu(e, t, n, u) {
	let { tokenStart: o } = e, i = N(e, t | 32), { tokenStart: l } = e;
	if (C(e, t, 67108877)) {
		if (t & 65536 && e.getToken() === 209029) return e.assignable = 2, su(e, t, i, o);
		e.report(94);
	}
	e.assignable = 2, (e.getToken() & 16842752) === 16842752 && e.report(65, B[e.getToken() & 255]);
	let f = J(e, t, n, 2, 1, 0, u, 1, l);
	t = (t | 131072) ^ 131072, e.getToken() === 67108990 && e.report(168);
	let c = Fe(e, t, n, f, u, l);
	return e.assignable = 2, e.finishNode({
		type: "NewExpression",
		callee: c,
		arguments: e.getToken() === 67174411 ? ot(e, t, n, u) : []
	}, o);
}
function su(e, t, n, u) {
	let o = N(e, t);
	return e.finishNode({
		type: "MetaProperty",
		meta: n,
		property: o
	}, u);
}
function Zt(e, t, n, u, o) {
	return e.getToken() === 209006 && e.report(31), t & 1025 && e.getToken() === 241771 && e.report(32), Oe(e, t, e.getToken()), (e.getToken() & 36864) === 36864 && (e.flags |= 256), Me(e, t & -524289 | 2048, n, e.tokenValue, N(e, t), 0, u, 1, o);
}
function ft(e, t, n, u, o, i, l, f, c) {
	r(e, t | 32);
	let a = e.createScopeIfLexical()?.createChildScope(512);
	if (t = (t | 131072) ^ 131072, C(e, t, 16)) return e.getToken() === 10 ? (f & 1 && e.report(48), qe(e, t, a, n, [], o, 1, c)) : (!(t & 1) && e.options.webcompat ? e.assignable = 4 : e.assignable = 2, e.finishNode({
		type: "CallExpression",
		callee: u,
		arguments: [],
		optional: !1
	}, c));
	let s = 0, d = null, h = 0;
	e.destructible = (e.destructible | 384) ^ 384;
	let A = [];
	for (; e.getToken() !== 16;) {
		let { tokenStart: b } = e, w = e.getToken();
		if (w & 143360) a?.addBlockName(t, e.tokenValue, i, 0), (w & 537079808) === 537079808 ? e.flags |= 512 : (w & 36864) === 36864 && (e.flags |= 256), d = J(e, t, n, i, 0, 1, 1, 1, b), e.getToken() === 16 || e.getToken() === 18 ? e.assignable & 2 && (s |= 16, h = 1) : (e.getToken() === 1077936155 ? h = 1 : s |= 16, d = F(e, t, n, d, 1, 0, b), e.getToken() !== 16 && e.getToken() !== 18 && (d = L(e, t, n, 1, 0, b, d)));
		else if (w & 2097152) d = w === 2162700 ? H(e, t, a, n, 0, 1, 0, i, l) : X(e, t, a, n, 0, 1, 0, i, l), s |= e.destructible, h = 1, e.getToken() !== 16 && e.getToken() !== 18 && (s & 8 && e.report(122), d = F(e, t, n, d, 0, 0, b), s |= 16, (e.getToken() & 8388608) === 8388608 && (d = x(e, t, n, 1, c, 4, w, d)), C(e, t | 32, 22) && (d = ee(e, t, n, d, c)));
		else if (w === 14) d = le(e, t, a, n, 16, i, l, 1, 1, 0), s |= (e.getToken() === 16 ? 0 : 16) | e.destructible, h = 1;
		else {
			for (d = I(e, t, n, 1, 0, b), s = 0, A.push(d); C(e, t | 32, 18);) A.push(I(e, t, n, 1, 0, b));
			return s |= e.assignable, y(e, t, 16), e.destructible = s | 16, !(t & 1) && e.options.webcompat ? e.assignable = 4 : e.assignable = 2, e.finishNode({
				type: "CallExpression",
				callee: u,
				arguments: A,
				optional: !1
			}, c);
		}
		if (A.push(d), !C(e, t | 32, 18)) break;
	}
	return y(e, t, 16), s |= e.destructible & 256 ? 256 : 0 | e.destructible & 128 ? 128 : 0, e.getToken() === 10 ? (s & 48 && e.report(27), (e.flags & 1 || f & 1) && e.report(48), s & 128 && e.report(31), t & 1025 && s & 256 && e.report(32), h && (e.flags |= 128), qe(e, t | 2048, a, n, A, o, 1, c)) : (s & 64 && e.report(63), s & 8 && e.report(62), !(t & 1) && e.options.webcompat ? e.assignable = 4 : e.assignable = 2, e.finishNode({
		type: "CallExpression",
		callee: u,
		arguments: A,
		optional: !1
	}, c));
}
function du(e, t) {
	let { tokenRaw: n, tokenRegExp: u, tokenValue: o, tokenStart: i } = e;
	r(e, t), e.assignable = 2;
	let l = {
		type: "Literal",
		value: o,
		regex: u
	};
	return e.options.raw && (l.raw = n), e.finishNode(l, i);
}
function Ye(e, t, n, u, o) {
	let i, l;
	e.leadingDecorators.decorators.length ? (e.getToken() === 132 && e.report(30, "@"), i = e.leadingDecorators.start, l = [...e.leadingDecorators.decorators], e.leadingDecorators.decorators.length = 0) : (i = e.tokenStart, l = ve(e, t, u)), t = (t | 16385) ^ 16384, r(e, t);
	let f = null, c = null, { tokenValue: a } = e;
	e.getToken() & 4096 && e.getToken() !== 20565 ? (vt(e, t, e.getToken()) && e.report(118), (e.getToken() & 537079808) === 537079808 && e.report(119), n && (n.addBlockName(t, a, 32, 0), o && o & 2 && e.declareUnboundVariable(a)), f = N(e, t)) : !(o & 1) && e.report(39, "Class");
	let s = t;
	C(e, t | 32, 20565) ? (c = j(e, t, u, 0, 0, 0), s |= 512) : s = (s | 512) ^ 512;
	let d = Gt(e, s, t, n, u, 2, 8, 0);
	return e.finishNode({
		type: "ClassDeclaration",
		id: f,
		superClass: c,
		body: d,
		...e.options.next ? { decorators: l } : null
	}, i);
}
function au(e, t, n, u, o) {
	let i = null, l = null, f = ve(e, t, n);
	t = (t | 16385) ^ 16384, r(e, t), e.getToken() & 4096 && e.getToken() !== 20565 && (vt(e, t, e.getToken()) && e.report(118), (e.getToken() & 537079808) === 537079808 && e.report(119), i = N(e, t));
	let c = t;
	C(e, t | 32, 20565) ? (l = j(e, t, n, 0, u, 0), c |= 512) : c = (c | 512) ^ 512;
	let a = Gt(e, c, t, void 0, n, 2, 0, u);
	return e.assignable = 2, e.finishNode({
		type: "ClassExpression",
		id: i,
		superClass: l,
		body: a,
		...e.options.next ? { decorators: f } : null
	}, o);
}
function ve(e, t, n) {
	let u = [];
	if (e.options.next) for (; e.getToken() === 132;) u.push(gu(e, t, n));
	return u;
}
function gu(e, t, n) {
	let u = e.tokenStart;
	r(e, t | 32);
	let o = e.tokenStart, i = J(e, t, n, 2, 0, 1, 0, 1, u);
	return i = F(e, t, n, i, 0, 0, o), e.finishNode({
		type: "Decorator",
		expression: i
	}, u);
}
function Gt(e, t, n, u, o, i, l, f) {
	let { tokenStart: c } = e, a = e.createPrivateScopeIfLexical(o);
	y(e, t | 32, 2162700);
	let s = 655360;
	t = (t | s) ^ s;
	let d = e.flags & 32;
	e.flags = (e.flags | 32) ^ 32;
	let h = [];
	for (; e.getToken() !== 1074790415;) {
		let A = e.tokenStart, b = ve(e, t, a);
		if (b.length > 0 && e.tokenValue === "constructor" && e.report(109), e.getToken() === 1074790415 && e.report(108), C(e, t, 1074790417)) {
			b.length > 0 && e.report(120);
			continue;
		}
		h.push(xt(e, t, u, a, n, i, b, 0, f, b.length > 0 ? A : e.tokenStart));
	}
	return y(e, l & 8 ? t | 32 : t, 1074790415), a?.validatePrivateIdentifierRefs(), e.flags = e.flags & -33 | d, e.finishNode({
		type: "ClassBody",
		body: h
	}, c);
}
function xt(e, t, n, u, o, i, l, f, c, a) {
	let s = f ? 32 : 0, d = null, h = e.getToken();
	if (h & 176128 || h === -2147483528) switch (d = N(e, t), h) {
		case 36970:
			if (!f && e.getToken() !== 67174411 && (e.getToken() & 1048576) !== 1048576 && e.getToken() !== 1077936155) return xt(e, t, n, u, o, i, l, 1, c, a);
			break;
		case 209005:
			if (e.getToken() !== 67174411 && (e.flags & 1) === 0) {
				if ((e.getToken() & 1073741824) === 1073741824) return ge(e, t, u, d, s, l, a);
				s |= 16 | (pe(e, t, 8391476) ? 8 : 0);
			}
			break;
		case 209008:
			if (e.getToken() !== 67174411) {
				if ((e.getToken() & 1073741824) === 1073741824) return ge(e, t, u, d, s, l, a);
				s |= 256;
			}
			break;
		case 209009:
			if (e.getToken() !== 67174411) {
				if ((e.getToken() & 1073741824) === 1073741824) return ge(e, t, u, d, s, l, a);
				s |= 512;
			}
			break;
		case 12402:
			if (e.getToken() !== 67174411 && (e.flags & 1) === 0) {
				if ((e.getToken() & 1073741824) === 1073741824) return ge(e, t, u, d, s, l, a);
				e.options.next && (s |= 1024);
			}
			break;
	}
	else if (h === 69271571) s |= 2, d = ue(e, o, u, c);
	else if ((h & 134217728) === 134217728) d = O(e, t);
	else if (h === 8391476) s |= 8, r(e, t);
	else if (e.getToken() === 130) s |= 8192, d = Pe(e, t | 16, u, 768);
	else if ((e.getToken() & 1073741824) === 1073741824) s |= 128;
	else {
		if (f && h === 2162700) return vn(e, t | 16, n, u, a);
		h === -2147483527 ? (d = N(e, t), e.getToken() !== 67174411 && e.report(30, B[e.getToken() & 255])) : e.report(30, B[e.getToken() & 255]);
	}
	if (s & 1816 && (e.getToken() & 143360 || e.getToken() === -2147483528 || e.getToken() === -2147483527 ? d = N(e, t) : (e.getToken() & 134217728) === 134217728 ? d = O(e, t) : e.getToken() === 69271571 ? (s |= 2, d = ue(e, t, u, 0)) : e.getToken() === 130 ? (s |= 8192, d = Pe(e, t, u, s)) : e.report(135)), !(s & 2) && (e.tokenValue === "constructor" ? ((e.getToken() & 1073741824) === 1073741824 ? e.report(129) : !(s & 32) && e.getToken() === 67174411 && (s & 920 ? e.report(53, "accessor") : !(t & 512) && (e.flags & 32 ? e.report(54) : e.flags |= 32)), s |= 64) : !(s & 8192) && s & 32 && e.tokenValue === "prototype" && e.report(52)), s & 1024 || e.getToken() !== 67174411 && (s & 768) === 0) return ge(e, t, u, d, s, l, a);
	let A = W(e, t | 16, u, s, c, e.tokenStart);
	return e.finishNode({
		type: "MethodDefinition",
		kind: (s & 32) === 0 && s & 64 ? "constructor" : s & 256 ? "get" : s & 512 ? "set" : "method",
		static: (s & 32) > 0,
		computed: (s & 2) > 0,
		key: d,
		value: A,
		...e.options.next ? { decorators: l } : null
	}, a);
}
function Pe(e, t, n, u) {
	let { tokenStart: o } = e;
	r(e, t);
	let { tokenValue: i } = e;
	return i === "constructor" && e.report(128), e.options.lexical && (n || e.report(4, i), u ? n.addPrivateIdentifier(i, u) : n.addPrivateIdentifierRef(i)), r(e, t), e.finishNode({
		type: "PrivateIdentifier",
		name: i
	}, o);
}
function ge(e, t, n, u, o, i, l) {
	let f = null;
	if (o & 8 && e.report(0), e.getToken() === 1077936155) {
		r(e, t | 32);
		let { tokenStart: c } = e;
		e.getToken() === 537079927 && e.report(119);
		let a = 11264 | ((o & 64) === 0 ? 16896 : 0);
		t = (t | a) ^ a | (o & 8 ? 1024 : 0) | (o & 16 ? 2048 : 0) | (o & 64 ? 16384 : 0) | 65792, f = J(e, t | 16, n, 2, 0, 1, 0, 1, c), ((e.getToken() & 1073741824) !== 1073741824 || (e.getToken() & 4194304) === 4194304) && (f = F(e, t | 16, n, f, 0, 0, c), f = L(e, t | 16, n, 0, 0, c, f));
	}
	return U(e, t), e.finishNode({
		type: o & 1024 ? "AccessorProperty" : "PropertyDefinition",
		key: u,
		value: f,
		static: (o & 32) > 0,
		computed: (o & 2) > 0,
		...e.options.next ? { decorators: i } : null
	}, l);
}
function pt(e, t, n, u, o, i) {
	if (e.getToken() & 143360 || (t & 1) === 0 && e.getToken() === -2147483527) return ct(e, t, n, o, i);
	(e.getToken() & 2097152) !== 2097152 && e.report(30, B[e.getToken() & 255]);
	let l = e.getToken() === 69271571 ? X(e, t, n, u, 1, 0, 1, o, i) : H(e, t, n, u, 1, 0, 1, o, i);
	return e.destructible & 16 && e.report(50), e.destructible & 32 && e.report(50), l;
}
function ct(e, t, n, u, o) {
	let i = e.getToken();
	t & 1 && ((i & 537079808) === 537079808 ? e.report(119) : ((i & 36864) === 36864 || i === -2147483527) && e.report(118)), (i & 20480) === 20480 && e.report(102), i === 241771 && (t & 1024 && e.report(32), t & 2 && e.report(111)), (i & 255) === 73 && u & 24 && e.report(100), i === 209006 && (t & 2048 && e.report(176), t & 2 && e.report(110));
	let { tokenValue: l, tokenStart: f } = e;
	return r(e, t), n?.addVarOrBlock(t, l, u, o), e.finishNode({
		type: "Identifier",
		name: l
	}, f);
}
function Ue(e, t, n, u, o) {
	if (u || y(e, t, 8456256), e.getToken() === 8390721) {
		let c = mu(e, o), [a, s] = yu(e, t, n, u);
		return e.finishNode({
			type: "JSXFragment",
			openingFragment: c,
			children: a,
			closingFragment: s
		}, o);
	}
	e.getToken() === 8457014 && e.report(30, B[e.getToken() & 255]);
	let i = null, l = [], f = bu(e, t, n, u, o);
	if (!f.selfClosing) {
		[l, i] = ku(e, t, n, u);
		let c = Le(i.name);
		Le(f.name) !== c && e.report(155, c);
	}
	return e.finishNode({
		type: "JSXElement",
		children: l,
		openingElement: f,
		closingElement: i
	}, o);
}
function mu(e, t) {
	return ke(e), e.finishNode({ type: "JSXOpeningFragment" }, t);
}
function ru(e, t, n, u) {
	y(e, t, 8457014);
	let o = t2(e, t);
	return e.getToken() !== 8390721 && e.report(25, B[65]), n ? ke(e) : r(e, t), e.finishNode({
		type: "JSXClosingElement",
		name: o
	}, u);
}
function hu(e, t, n, u) {
	return y(e, t, 8457014), e.getToken() !== 8390721 && e.report(25, B[65]), n ? ke(e) : r(e, t), e.finishNode({ type: "JSXClosingFragment" }, u);
}
function ku(e, t, n, u) {
	let o = [];
	for (;;) {
		let i = Au(e, t, n, u);
		if (i.type === "JSXClosingElement") return [o, i];
		o.push(i);
	}
}
function yu(e, t, n, u) {
	let o = [];
	for (;;) {
		let i = Tu(e, t, n, u);
		if (i.type === "JSXClosingFragment") return [o, i];
		o.push(i);
	}
}
function Au(e, t, n, u) {
	if (e.getToken() === 137) return e2(e, t);
	if (e.getToken() === 2162700) return st(e, t, n, 1, 0);
	if (e.getToken() === 8456256) {
		let { tokenStart: o } = e;
		return r(e, t), e.getToken() === 8457014 ? ru(e, t, u, o) : Ue(e, t, n, 1, o);
	}
	e.report(0);
}
function Tu(e, t, n, u) {
	if (e.getToken() === 137) return e2(e, t);
	if (e.getToken() === 2162700) return st(e, t, n, 1, 0);
	if (e.getToken() === 8456256) {
		let { tokenStart: o } = e;
		return r(e, t), e.getToken() === 8457014 ? hu(e, t, u, o) : Ue(e, t, n, 1, o);
	}
	e.report(0);
}
function e2(e, t) {
	let n = e.tokenStart;
	r(e, t);
	let u = {
		type: "JSXText",
		value: e.tokenValue
	};
	return e.options.raw && (u.raw = e.tokenRaw), e.finishNode(u, n);
}
function bu(e, t, n, u, o) {
	(e.getToken() & 143360) !== 143360 && (e.getToken() & 4096) !== 4096 && e.report(0);
	let i = t2(e, t), l = Cu(e, t, n), f = e.getToken() === 8457014;
	return f && y(e, t, 8457014), e.getToken() !== 8390721 && e.report(25, B[65]), u || !f ? ke(e) : r(e, t), e.finishNode({
		type: "JSXOpeningElement",
		name: i,
		attributes: l,
		selfClosing: f
	}, o);
}
function t2(e, t) {
	let { tokenStart: n } = e;
	Xe(e);
	let u = _e(e, t);
	if (e.getToken() === 21) return n2(e, t, u, n);
	for (; C(e, t, 67108877);) Xe(e), u = Du(e, t, u, n);
	return u;
}
function Du(e, t, n, u) {
	let o = _e(e, t);
	return e.finishNode({
		type: "JSXMemberExpression",
		object: n,
		property: o
	}, u);
}
function Cu(e, t, n) {
	let u = [];
	for (; e.getToken() !== 8457014 && e.getToken() !== 8390721 && e.getToken() !== 1048576;) u.push(wu(e, t, n));
	return u;
}
function Eu(e, t, n) {
	let u = e.tokenStart;
	r(e, t), y(e, t, 14);
	let o = I(e, t, n, 1, 0, e.tokenStart);
	return y(e, t, 1074790415), e.finishNode({
		type: "JSXSpreadAttribute",
		argument: o
	}, u);
}
function wu(e, t, n) {
	let { tokenStart: u } = e;
	if (e.getToken() === 2162700) return Eu(e, t, n);
	Xe(e);
	let o = null, i = _e(e, t);
	if (e.getToken() === 21 && (i = n2(e, t, i, u)), e.getToken() === 1077936155) switch (rn(e, t)) {
		case 134283267:
			o = O(e, t);
			break;
		case 8456256:
			o = Ue(e, t, n, 0, e.tokenStart);
			break;
		case 2162700:
			o = st(e, t, n, 0, 1);
			break;
		default: e.report(154);
	}
	return e.finishNode({
		type: "JSXAttribute",
		value: o,
		name: i
	}, u);
}
function n2(e, t, n, u) {
	y(e, t, 21);
	let o = _e(e, t);
	return e.finishNode({
		type: "JSXNamespacedName",
		namespace: n,
		name: o
	}, u);
}
function st(e, t, n, u, o) {
	let { tokenStart: i } = e;
	r(e, t | 32);
	let { tokenStart: l } = e;
	if (e.getToken() === 14) return Su(e, t, n, i);
	let f = null;
	return e.getToken() === 1074790415 ? (o && e.report(157), f = Bu(e, {
		index: e.startIndex,
		line: e.startLine,
		column: e.startColumn
	})) : f = I(e, t, n, 1, 0, l), e.getToken() !== 1074790415 && e.report(25, B[15]), u ? ke(e) : r(e, t), e.finishNode({
		type: "JSXExpressionContainer",
		expression: f
	}, i);
}
function Su(e, t, n, u) {
	y(e, t, 14);
	let o = I(e, t, n, 1, 0, e.tokenStart);
	return y(e, t, 1074790415), e.finishNode({
		type: "JSXSpreadChild",
		expression: o
	}, u);
}
function Bu(e, t) {
	return e.finishNode({ type: "JSXEmptyExpression" }, t, e.tokenStart);
}
function _e(e, t) {
	let n = e.tokenStart;
	e.getToken() & 143360 || e.report(30, B[e.getToken() & 255]);
	let { tokenValue: u } = e;
	return r(e, t), e.finishNode({
		type: "JSXIdentifier",
		name: u
	}, n);
}
function u2(e, t) {
	return bn(e, t);
}
function Fu(e, t) {
	let n = /* @__PURE__ */ new SyntaxError(e + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
	return Object.assign(n, t);
}
function o2(e) {
	let t = [];
	for (let n of e) try {
		return n();
	} catch (u) {
		t.push(u);
	}
	throw Object.assign(/* @__PURE__ */ new Error("All combinations failed"), { errors: t });
}
function Lu(e) {
	return this[e < 0 ? this.length + e : e];
}
function ne(e) {
	let t = new Set(e);
	return (n) => t.has(n?.type);
}
function fe(e) {
	return e.range?.[1] ?? e.end;
}
function R(e) {
	let t = e.range?.[0] ?? e.start, n = (e.declaration?.decorators ?? e.decorators)?.[0];
	return n ? Math.min(R(n), t) : t;
}
function V(e) {
	let { type: t } = e;
	return t === "IfStatement" ? V(e.alternate ?? e.consequent) : t === "ForInStatement" || t === "ForOfStatement" || t === "ForStatement" || t === "LabeledStatement" || t === "WithStatement" || t === "WhileStatement" ? V(e.body) : Mu.get(t)?.(e) ?? fe(e);
}
function se(e, t, n) {
	if (!e.has(t)) {
		let u = n(t);
		e.set(t, u);
	}
	return e.get(t);
}
function a2(e) {
	return se(vu, e, (t) => ce(t) && t.value[0] === "*" && /@(?:type|satisfies)\b/.test(t.value));
}
function Uu(e) {
	return $(0, e, /[^\n]/g, " ");
}
function _u(e, t) {
	for (let n of t) {
		let u = R(n), o = V(n);
		e = e.slice(0, u) + g2(e.slice(u, o)) + e.slice(o);
	}
	return e;
}
function m2(e) {
	let t = e[Je];
	return se(Ju, t, (n) => _u(e.originalText, n));
}
function ju(e) {
	if (!ce(e)) return [];
	if (!e.value.includes(`
`)) return [];
	let t = [];
	for (let n of `*${e.value}*`.split(`
`)) {
		if (n = n.trimStart(), !n.startsWith("*")) return [];
		t.push(n);
	}
	return t;
}
function Xu(e) {
	return se(r2, e, ju);
}
function h2(e) {
	r2.delete(e);
}
function at(e) {
	return Xu(e).length > 0;
}
function k2(e) {
	if (e.length < 2) return;
	let t;
	for (let n = e.length - 1; n >= 0; n--) {
		let u = e[n];
		if (t && V(u) === R(t) && at(u) && at(t) && (e.splice(n + 1, 1), u.value += "*//*" + t.value, u.range = [R(u), V(t)], h2(u)), !d2(u) && !ce(u)) throw new TypeError(`Unknown comment type: "${u.type}".`);
		t = u;
	}
}
function Hu(e) {
	return e !== null && typeof e == "object";
}
function De(e) {
	if (be !== null && typeof be.property) {
		let t = be;
		return be = De.prototype = null, t;
	}
	return be = De.prototype = e ?? Object.create(null), new De();
}
function gt(e) {
	return De(e);
}
function zu(e, t = "type") {
	gt(e);
	function n(u) {
		let o = u[t], i = e[o];
		if (!Array.isArray(i)) throw Object.assign(/* @__PURE__ */ new Error(`Missing visitor keys for '${o}'.`), { node: u });
		return i;
	}
	return n;
}
function je(e, t) {
	if (!y2(e)) return e;
	if (Array.isArray(e)) {
		for (let u = 0; u < e.length; u++) e[u] = je(e[u], t);
		return e;
	}
	if (t.onEnter) {
		let u = t.onEnter(e) ?? e;
		if (u !== e) return je(u, t);
		e = u;
	}
	let n = b2(e);
	for (let u = 0; u < n.length; u++) e[n[u]] = je(e[n[u]], t);
	return t.onLeave && (e = t.onLeave(e) || e), e;
}
function $u(e, t) {
	let { text: n, astType: u } = t, { comments: o } = e;
	k2(o);
	let i = e.type === "File" ? e.program : e;
	i.interpreter && (o.unshift(i.interpreter), delete i.interpreter), e.hashbang && ((u === "oxc-ts" || u === "yuku-js" || u === "yuku-ts") && o.unshift(e.hashbang), delete e.hashbang), e.type === "Program" && (e.range = [0, n.length]);
	let l;
	return e = D2(e, {
		onEnter(f) {
			switch (Yu(f, o, n), f.type) {
				case "ParenthesizedExpression": {
					let { expression: c } = f, a = R(f);
					if (c.type === "TypeCastExpression") return c.range = [a, V(f)], c;
					let s = !1;
					if (u !== "oxc-ts") {
						if (!l) {
							l = [];
							for (let h of o) a2(h) && l.push(V(h));
						}
						let d = l2(0, l, (h) => h <= a);
						s = d && n.slice(d, a).trim().length === 0;
					}
					return s ? void 0 : (c.extra = {
						...c.extra,
						parenthesized: !0
					}, c);
				}
				case "TemplateLiteral":
					if (f.expressions.length !== f.quasis.length - 1) throw new Error("Malformed template literal.");
					break;
				case "TemplateElement":
					if (u === "flow" || u === "hermes" || u === "espree" || u === "typescript" || u === "oxc-ts" || u === "yuku-ts") f.range = [R(f) + 1, V(f) - (f.tail ? 1 : 2)];
					break;
				case "TSParenthesizedType": return f.typeAnnotation;
				case "TopicReference":
					e.extra = {
						...e.extra,
						__isUsingHackPipeline: !0
					};
					break;
				case "TSUnionType":
				case "TSIntersectionType":
					if (f.types.length === 1) return f.types[0];
					break;
				case "TupleTypeAnnotation":
					f.types && !f.elementTypes && (f.elementTypes = f.types);
					break;
				case "ImportDeclaration":
					u === "hermes" && f.assertions && !f.attributes && (f.attributes = f.assertions, delete f.assertions);
					break;
			}
		},
		onLeave(f) {
			switch (f.type) {
				case "LogicalExpression":
					if (C2(f)) return mt(f);
					break;
			}
		}
	}), e;
}
function C2(e) {
	return e.type === "LogicalExpression" && e.right.type === "LogicalExpression" && e.operator === e.right.operator;
}
function mt(e) {
	return C2(e) ? mt({
		type: "LogicalExpression",
		operator: e.operator,
		left: mt({
			type: "LogicalExpression",
			operator: e.operator,
			left: e.left,
			right: e.right.left,
			range: [R(e.left), V(e.right.left)]
		}),
		right: e.right.right,
		range: [R(e), V(e)]
	}) : e;
}
function Yu(e, t, n) {
	if (!dt(e)) return;
	let u = fe(e);
	if (n[u - 1] !== ";") return;
	let o = m2({
		[Je]: t,
		originalText: n
	});
	u -= 1;
	let i = o.slice(R(e), u), l = i.trimEnd();
	e.__contentEnd = u - (i.length - l.length);
}
function B2(e) {
	let t = e.match(Gu);
	return t ? t[0].trimStart() : "";
}
function F2(e) {
	e = $(0, e.replace(Zu, "").replace(Qu, ""), ei, "$1");
	let n = "";
	for (; n !== e;) n = e, e = $(0, e, pu, `
$1 $2
`);
	e = e.replace(w2, "").trimEnd();
	let u = Object.create(null), o = $(0, e, S2, "").replace(w2, "").trimEnd(), i;
	for (; i = S2.exec(e);) {
		let l = $(0, i[2], xu, "");
		if (typeof u[i[1]] == "string" || Array.isArray(u[i[1]])) {
			let f = u[i[1]];
			u[i[1]] = [
				...ti,
				...Array.isArray(f) ? f : [f],
				l
			];
		} else u[i[1]] = l;
	}
	return {
		comments: o,
		pragmas: u
	};
}
function ni(e) {
	if (!e.startsWith("#!")) return "";
	let t = e.indexOf(`
`);
	return t === -1 ? e : e.slice(0, t);
}
function q2(e) {
	let t = L2(e);
	t && (e = e.slice(t.length + 1));
	let { pragmas: u, comments: o } = F2(B2(e));
	return {
		shebang: t,
		text: e,
		pragmas: u,
		comments: o
	};
}
function P2(e) {
	let { pragmas: t } = q2(e);
	return I2.some((n) => ae(t, n));
}
function O2(e) {
	let { pragmas: t } = q2(e);
	return N2.some((n) => ae(t, n));
}
function ui(e) {
	return e = typeof e == "function" ? { parse: e } : e, {
		astFormat: "estree",
		hasPragma: P2,
		hasIgnorePragma: O2,
		locStart: R,
		locEnd: V,
		...e
	};
}
function U2(e) {
	if (typeof e == "string") {
		if (e = e.toLowerCase(), /\.(?:mjs|mts)$/i.test(e)) return V2;
		if (/\.(?:cjs|cts)$/i.test(e)) return M2;
	}
}
function oi(e, t) {
	let n = [], u = u2(e, {
		...ii,
		sourceType: t,
		onComment: n
	});
	return u.comments = n, u;
}
function li(e) {
	let { description: t, loc: n } = e;
	return n ? i2(t, {
		loc: {
			start: {
				line: n.start.line,
				column: n.start.column + 1
			},
			end: {
				line: n.end.line,
				column: n.end.column + 1
			}
		},
		cause: e
	}) : e;
}
function fi(e, t) {
	let n = U2(t?.filepath), u = (n ? [n] : v2).map((i) => () => oi(e, i)), o;
	try {
		o = o2(u);
	} catch ({ errors: [i] }) {
		throw li(i);
	}
	return E2(o, {
		text: e,
		astType: "meriyah"
	});
}
var J2, ht, _2, rt, ae, Z, X2, $, W2, z2, K2, $2, kt, wt, Q2, St, S, Z2, Bt, Ft, tn, q, B, It, G, P, an, He, We, ze, i2, Nu, l2, Je, f2, Pu, Ou, Ru, c2, Vu, s2, Mu, dt, ce, d2, vu, g2, Ju, r2, y2, be, Wu, A2, g, b2, D2, E2, Qu, Zu, Gu, xu, w2, pu, S2, ei, ti, N2, I2, L2, R2, V2, M2, v2, ii, ci;
//#endregion
__esmMin((() => {
	J2 = Object.defineProperty;
	ht = (e, t) => {
		for (var n in t) J2(e, n, {
			get: t[n],
			enumerable: !0
		});
	};
	_2 = {};
	ht(_2, { parsers: () => rt });
	rt = {};
	ht(rt, { meriyah: () => ci });
	ae = Object.hasOwn ?? Function.prototype.call.bind(Object.prototype.hasOwnProperty);
	Z = (e, t) => (n, u, ...o) => n | 1 && u == null ? void 0 : (t.call(u) ?? u[e]).apply(u, o);
	X2 = String.prototype.replaceAll ?? function(e, t) {
		return e.global ? this.replace(e, t) : this.split(e).join(t);
	};
	$ = Z("replaceAll", function() {
		if (typeof this == "string") return X2;
	});
	W2 = 55296;
	z2 = 56319;
	K2 = 56320;
	$2 = String.prototype.isWellFormed ?? function() {
		let { length: e } = this;
		for (let t = 0; t < e; t++) {
			let n = this.charCodeAt(t);
			if ((n & 64512) === W2 && (n > z2 || ++t >= e || (this.charCodeAt(t) & 64512) !== K2)) return !1;
		}
		return !0;
	};
	kt = Z("isWellFormed", function() {
		if (typeof this == "string") return $2;
	});
	wt = ((e, t) => {
		let n = /* @__PURE__ */ new Uint32Array(69632), u = 0, o = 0;
		for (; u < 2597;) {
			let i = e[u++];
			if (i < 0) o -= i;
			else {
				let l = e[u++];
				i & 2 && (l = t[l]), i & 1 ? n.fill(l, o, o += e[u++]) : n[o++] = l;
			}
		}
		return n;
	})([
		-1,
		2,
		26,
		2,
		27,
		2,
		5,
		-1,
		0,
		77595648,
		3,
		44,
		2,
		3,
		0,
		14,
		2,
		61,
		2,
		62,
		3,
		0,
		3,
		0,
		3168796671,
		0,
		4294956992,
		2,
		1,
		2,
		0,
		2,
		41,
		3,
		0,
		4,
		0,
		4294966523,
		3,
		0,
		4,
		2,
		16,
		2,
		63,
		2,
		0,
		0,
		4294836735,
		0,
		3221225471,
		0,
		4294901942,
		2,
		64,
		0,
		134152192,
		3,
		0,
		2,
		0,
		4294951935,
		3,
		0,
		2,
		0,
		2683305983,
		0,
		2684354047,
		2,
		17,
		2,
		0,
		0,
		4294961151,
		3,
		0,
		2,
		2,
		19,
		2,
		0,
		0,
		608174079,
		2,
		0,
		2,
		58,
		2,
		7,
		2,
		6,
		0,
		4286643967,
		3,
		0,
		2,
		2,
		1,
		3,
		0,
		3,
		0,
		4294901711,
		2,
		40,
		0,
		4089839103,
		0,
		2961209759,
		0,
		1342439375,
		0,
		4294543342,
		0,
		3547201023,
		0,
		1577204103,
		0,
		4194240,
		0,
		4294688750,
		2,
		2,
		0,
		80831,
		0,
		4261478351,
		0,
		4294549486,
		2,
		2,
		0,
		2967484831,
		0,
		196559,
		0,
		3594373100,
		0,
		3288319768,
		0,
		8469959,
		0,
		65472,
		2,
		3,
		0,
		4093640191,
		0,
		929054175,
		0,
		65487,
		0,
		4294828015,
		0,
		4092591615,
		0,
		1885355487,
		0,
		982991,
		2,
		3,
		2,
		0,
		0,
		2163244511,
		0,
		4227923919,
		0,
		4236247022,
		2,
		69,
		0,
		4284449919,
		0,
		851904,
		2,
		4,
		2,
		12,
		0,
		67076095,
		-1,
		2,
		70,
		0,
		1073741743,
		0,
		4093607775,
		-1,
		0,
		50331649,
		0,
		3265266687,
		2,
		33,
		0,
		4294844415,
		0,
		4278190047,
		2,
		20,
		2,
		137,
		-1,
		3,
		0,
		2,
		2,
		23,
		2,
		0,
		2,
		9,
		2,
		0,
		2,
		15,
		2,
		22,
		3,
		0,
		10,
		2,
		72,
		2,
		0,
		2,
		73,
		2,
		74,
		2,
		75,
		2,
		0,
		2,
		76,
		2,
		0,
		2,
		11,
		0,
		261632,
		2,
		25,
		3,
		0,
		2,
		2,
		13,
		2,
		4,
		3,
		0,
		18,
		2,
		77,
		2,
		5,
		3,
		0,
		2,
		2,
		78,
		0,
		2151677951,
		2,
		29,
		2,
		10,
		0,
		909311,
		3,
		0,
		2,
		0,
		814743551,
		2,
		48,
		0,
		67090432,
		3,
		0,
		2,
		2,
		42,
		2,
		0,
		2,
		6,
		2,
		0,
		2,
		30,
		2,
		8,
		0,
		268374015,
		2,
		108,
		2,
		51,
		2,
		0,
		2,
		79,
		0,
		134153215,
		-1,
		2,
		7,
		2,
		0,
		2,
		8,
		0,
		2684354559,
		0,
		67044351,
		0,
		3221160064,
		2,
		9,
		2,
		18,
		3,
		0,
		2,
		2,
		53,
		0,
		1046528,
		3,
		0,
		3,
		2,
		10,
		2,
		0,
		2,
		127,
		0,
		4294960127,
		2,
		9,
		2,
		6,
		2,
		11,
		0,
		4294377472,
		2,
		12,
		3,
		0,
		16,
		2,
		13,
		2,
		0,
		2,
		80,
		2,
		9,
		2,
		0,
		2,
		81,
		2,
		82,
		2,
		83,
		0,
		12288,
		2,
		54,
		0,
		1048577,
		2,
		84,
		2,
		14,
		-1,
		2,
		14,
		0,
		131042,
		2,
		85,
		2,
		86,
		2,
		87,
		2,
		0,
		2,
		34,
		-83,
		3,
		0,
		7,
		0,
		1046559,
		2,
		0,
		2,
		15,
		2,
		0,
		0,
		2147516671,
		2,
		21,
		3,
		88,
		2,
		2,
		0,
		-16,
		2,
		89,
		0,
		524222462,
		2,
		4,
		2,
		0,
		0,
		4269801471,
		2,
		4,
		3,
		0,
		2,
		2,
		28,
		2,
		16,
		3,
		0,
		2,
		2,
		49,
		2,
		0,
		-1,
		2,
		17,
		-16,
		3,
		0,
		206,
		-2,
		3,
		0,
		692,
		2,
		71,
		-1,
		2,
		17,
		2,
		9,
		3,
		0,
		8,
		2,
		91,
		2,
		18,
		2,
		0,
		0,
		3220242431,
		3,
		0,
		3,
		2,
		19,
		2,
		92,
		2,
		93,
		3,
		0,
		2,
		2,
		94,
		2,
		0,
		2,
		20,
		2,
		95,
		2,
		0,
		0,
		4351,
		2,
		0,
		2,
		10,
		3,
		0,
		2,
		0,
		67043391,
		0,
		3909091327,
		2,
		0,
		2,
		24,
		2,
		10,
		2,
		20,
		3,
		0,
		2,
		0,
		67076097,
		2,
		8,
		2,
		0,
		2,
		21,
		0,
		67059711,
		0,
		4236247039,
		3,
		0,
		2,
		0,
		939524103,
		0,
		8191999,
		2,
		99,
		2,
		100,
		2,
		22,
		2,
		23,
		3,
		0,
		3,
		0,
		67057663,
		3,
		0,
		349,
		2,
		101,
		2,
		102,
		2,
		7,
		-264,
		3,
		0,
		11,
		2,
		24,
		3,
		0,
		2,
		2,
		32,
		-1,
		0,
		3774349439,
		2,
		103,
		2,
		104,
		3,
		0,
		2,
		2,
		19,
		2,
		105,
		3,
		0,
		10,
		2,
		9,
		2,
		17,
		2,
		0,
		2,
		46,
		2,
		0,
		2,
		31,
		2,
		106,
		2,
		25,
		0,
		1638399,
		0,
		57344,
		2,
		107,
		3,
		0,
		3,
		2,
		20,
		2,
		26,
		2,
		27,
		2,
		5,
		2,
		28,
		2,
		0,
		2,
		8,
		2,
		109,
		-1,
		2,
		110,
		2,
		111,
		2,
		112,
		-1,
		3,
		0,
		3,
		2,
		12,
		-2,
		2,
		0,
		2,
		29,
		-3,
		0,
		536870912,
		-4,
		2,
		20,
		2,
		0,
		2,
		36,
		0,
		1,
		2,
		0,
		2,
		65,
		2,
		6,
		2,
		12,
		2,
		9,
		2,
		0,
		2,
		113,
		-1,
		3,
		0,
		4,
		2,
		9,
		2,
		23,
		2,
		114,
		2,
		7,
		2,
		0,
		2,
		115,
		2,
		0,
		2,
		116,
		2,
		117,
		2,
		118,
		2,
		0,
		2,
		10,
		3,
		0,
		9,
		2,
		21,
		2,
		30,
		2,
		31,
		2,
		119,
		2,
		120,
		-2,
		2,
		121,
		2,
		122,
		2,
		30,
		2,
		21,
		2,
		8,
		-2,
		2,
		123,
		2,
		30,
		3,
		32,
		2,
		-1,
		2,
		0,
		2,
		39,
		-2,
		0,
		4277137519,
		0,
		2269118463,
		-1,
		3,
		20,
		2,
		-1,
		2,
		33,
		2,
		38,
		2,
		0,
		3,
		30,
		2,
		2,
		35,
		2,
		19,
		-3,
		3,
		0,
		2,
		2,
		34,
		-1,
		2,
		0,
		2,
		35,
		2,
		0,
		2,
		35,
		2,
		0,
		2,
		47,
		2,
		0,
		0,
		4294950463,
		2,
		37,
		-7,
		2,
		0,
		0,
		203775,
		2,
		125,
		0,
		4227858432,
		2,
		20,
		2,
		43,
		2,
		36,
		2,
		17,
		2,
		37,
		2,
		17,
		2,
		124,
		2,
		21,
		3,
		0,
		2,
		2,
		38,
		0,
		2151677888,
		2,
		0,
		2,
		12,
		0,
		4294901764,
		2,
		145,
		2,
		0,
		2,
		56,
		2,
		55,
		0,
		5242879,
		3,
		0,
		2,
		0,
		402644511,
		-1,
		2,
		128,
		2,
		39,
		0,
		3,
		-1,
		2,
		129,
		2,
		130,
		2,
		0,
		0,
		67045375,
		2,
		40,
		0,
		4226678271,
		0,
		3766565279,
		0,
		2039759,
		2,
		132,
		2,
		41,
		0,
		1046437,
		0,
		6,
		3,
		0,
		2,
		0,
		3288270847,
		0,
		3,
		3,
		0,
		2,
		0,
		67043519,
		-5,
		2,
		0,
		0,
		4282384383,
		0,
		1056964609,
		-1,
		3,
		0,
		2,
		0,
		67043345,
		-1,
		2,
		0,
		2,
		42,
		2,
		23,
		2,
		50,
		2,
		11,
		2,
		59,
		2,
		38,
		-5,
		2,
		0,
		2,
		12,
		-3,
		3,
		0,
		2,
		0,
		2147484671,
		2,
		133,
		0,
		4190109695,
		2,
		52,
		-2,
		2,
		134,
		0,
		4244635647,
		0,
		27,
		2,
		0,
		2,
		8,
		2,
		43,
		2,
		0,
		2,
		66,
		2,
		17,
		2,
		0,
		2,
		42,
		-3,
		2,
		31,
		-2,
		2,
		0,
		2,
		45,
		2,
		57,
		2,
		44,
		2,
		45,
		2,
		135,
		2,
		46,
		0,
		8388351,
		-2,
		2,
		136,
		0,
		3028287487,
		2,
		47,
		2,
		138,
		0,
		33259519,
		2,
		23,
		2,
		7,
		2,
		48,
		-7,
		2,
		21,
		0,
		4294836223,
		0,
		3355443199,
		0,
		134152199,
		-2,
		2,
		67,
		-2,
		3,
		0,
		28,
		2,
		32,
		-3,
		3,
		0,
		3,
		2,
		49,
		3,
		0,
		6,
		2,
		50,
		-81,
		2,
		17,
		3,
		0,
		2,
		2,
		36,
		3,
		0,
		33,
		2,
		25,
		2,
		30,
		3,
		0,
		124,
		2,
		12,
		3,
		0,
		18,
		2,
		38,
		-213,
		2,
		0,
		2,
		32,
		-54,
		3,
		0,
		17,
		2,
		42,
		2,
		8,
		2,
		23,
		2,
		0,
		2,
		8,
		2,
		23,
		2,
		51,
		2,
		0,
		2,
		21,
		2,
		52,
		2,
		139,
		2,
		25,
		-13,
		2,
		0,
		2,
		53,
		-6,
		3,
		0,
		2,
		-1,
		2,
		140,
		2,
		10,
		-1,
		3,
		0,
		2,
		0,
		4294936575,
		2,
		0,
		0,
		4294934783,
		-2,
		0,
		8323099,
		3,
		0,
		230,
		2,
		30,
		2,
		54,
		2,
		8,
		-3,
		3,
		0,
		3,
		2,
		35,
		-271,
		2,
		141,
		3,
		0,
		9,
		2,
		142,
		2,
		143,
		2,
		55,
		3,
		0,
		11,
		2,
		7,
		-72,
		3,
		0,
		3,
		2,
		144,
		0,
		1677656575,
		-130,
		2,
		26,
		-16,
		2,
		0,
		2,
		24,
		2,
		38,
		-16,
		0,
		4161266656,
		0,
		4071,
		0,
		15360,
		-4,
		0,
		28,
		-13,
		3,
		0,
		2,
		2,
		56,
		2,
		0,
		2,
		146,
		2,
		147,
		2,
		60,
		2,
		0,
		2,
		148,
		2,
		149,
		2,
		150,
		3,
		0,
		10,
		2,
		151,
		2,
		152,
		2,
		22,
		3,
		56,
		2,
		3,
		153,
		2,
		3,
		57,
		2,
		0,
		4294954999,
		2,
		0,
		-16,
		2,
		0,
		2,
		90,
		2,
		0,
		0,
		2105343,
		0,
		4160749584,
		0,
		65534,
		-34,
		2,
		8,
		2,
		155,
		-6,
		0,
		4194303871,
		0,
		4294903771,
		2,
		0,
		2,
		58,
		2,
		98,
		-3,
		2,
		0,
		0,
		1073684479,
		0,
		17407,
		-9,
		2,
		17,
		2,
		49,
		2,
		0,
		2,
		32,
		-14,
		2,
		17,
		2,
		32,
		-6,
		2,
		17,
		2,
		12,
		-6,
		2,
		8,
		0,
		3225419775,
		-7,
		2,
		156,
		3,
		0,
		6,
		0,
		8323103,
		-1,
		3,
		0,
		2,
		2,
		59,
		-37,
		2,
		60,
		2,
		157,
		2,
		158,
		2,
		159,
		2,
		160,
		2,
		161,
		-105,
		2,
		26,
		-32,
		3,
		0,
		1335,
		-1,
		3,
		0,
		136,
		2,
		9,
		3,
		0,
		180,
		2,
		24,
		3,
		0,
		233,
		2,
		162,
		3,
		0,
		18,
		2,
		9,
		-77,
		3,
		0,
		16,
		2,
		9,
		-47,
		3,
		0,
		154,
		2,
		6,
		3,
		0,
		264,
		2,
		32,
		-22116,
		3,
		0,
		7,
		2,
		25,
		-6130,
		3,
		5,
		2,
		-1,
		0,
		69207040,
		3,
		44,
		2,
		3,
		0,
		14,
		2,
		61,
		2,
		62,
		-3,
		0,
		3168731136,
		0,
		4294956864,
		2,
		1,
		2,
		0,
		2,
		41,
		3,
		0,
		4,
		0,
		4294966275,
		3,
		0,
		4,
		2,
		16,
		2,
		63,
		2,
		0,
		2,
		34,
		-1,
		2,
		17,
		2,
		64,
		-1,
		2,
		0,
		0,
		2047,
		0,
		4294885376,
		3,
		0,
		2,
		0,
		3145727,
		0,
		2617294944,
		0,
		4294770688,
		2,
		25,
		2,
		65,
		3,
		0,
		2,
		0,
		131135,
		2,
		96,
		0,
		70256639,
		0,
		71303167,
		0,
		272,
		2,
		42,
		2,
		6,
		0,
		65279,
		2,
		0,
		2,
		48,
		-1,
		2,
		97,
		2,
		66,
		0,
		4278255616,
		0,
		4294836227,
		0,
		4294549473,
		0,
		600178175,
		0,
		2952806400,
		0,
		268632067,
		0,
		4294543328,
		0,
		57540095,
		0,
		1577058304,
		0,
		1835008,
		0,
		4294688736,
		2,
		68,
		2,
		67,
		0,
		33554435,
		2,
		131,
		2,
		68,
		0,
		2952790016,
		0,
		131075,
		0,
		3594373096,
		0,
		67094296,
		2,
		67,
		-1,
		0,
		4294828e3,
		0,
		603979263,
		0,
		922746880,
		0,
		3,
		0,
		4294828001,
		0,
		602930687,
		0,
		1879048192,
		0,
		393219,
		0,
		4294828016,
		0,
		671088639,
		0,
		2154840064,
		0,
		4227858435,
		0,
		4236247008,
		2,
		69,
		2,
		38,
		-1,
		2,
		4,
		0,
		917503,
		2,
		38,
		-1,
		2,
		70,
		0,
		537788335,
		0,
		4026531935,
		-1,
		0,
		1,
		-1,
		2,
		33,
		2,
		71,
		0,
		7936,
		-3,
		2,
		0,
		0,
		2147485695,
		0,
		1010761728,
		0,
		4292984930,
		0,
		16387,
		2,
		0,
		2,
		15,
		2,
		22,
		3,
		0,
		10,
		2,
		72,
		2,
		0,
		2,
		73,
		2,
		74,
		2,
		75,
		2,
		0,
		2,
		76,
		2,
		0,
		2,
		12,
		-1,
		2,
		25,
		3,
		0,
		2,
		2,
		13,
		2,
		4,
		3,
		0,
		18,
		2,
		77,
		2,
		5,
		3,
		0,
		2,
		2,
		78,
		0,
		2147745791,
		3,
		19,
		2,
		0,
		122879,
		2,
		0,
		2,
		10,
		0,
		276824064,
		-2,
		3,
		0,
		2,
		2,
		42,
		2,
		0,
		0,
		4294903295,
		2,
		0,
		2,
		30,
		2,
		8,
		-1,
		2,
		17,
		2,
		51,
		2,
		0,
		2,
		79,
		2,
		48,
		-1,
		2,
		21,
		2,
		0,
		2,
		29,
		-2,
		0,
		128,
		-2,
		2,
		28,
		2,
		10,
		0,
		8160,
		-1,
		2,
		126,
		0,
		4227907585,
		2,
		0,
		2,
		37,
		2,
		0,
		2,
		50,
		0,
		4227915776,
		2,
		9,
		2,
		6,
		2,
		11,
		-1,
		0,
		74440192,
		3,
		0,
		6,
		-2,
		3,
		0,
		8,
		2,
		13,
		2,
		0,
		2,
		80,
		2,
		9,
		2,
		0,
		2,
		81,
		2,
		82,
		2,
		83,
		-3,
		2,
		84,
		2,
		14,
		-3,
		2,
		85,
		2,
		86,
		2,
		87,
		2,
		0,
		2,
		34,
		-83,
		3,
		0,
		7,
		0,
		817183,
		2,
		0,
		2,
		15,
		2,
		0,
		0,
		33023,
		2,
		21,
		3,
		88,
		2,
		-17,
		2,
		89,
		0,
		524157950,
		2,
		4,
		2,
		0,
		2,
		90,
		2,
		4,
		2,
		0,
		2,
		22,
		2,
		28,
		2,
		16,
		3,
		0,
		2,
		2,
		49,
		2,
		0,
		-1,
		2,
		17,
		-16,
		3,
		0,
		206,
		-2,
		3,
		0,
		692,
		2,
		71,
		-1,
		2,
		17,
		2,
		9,
		3,
		0,
		8,
		2,
		91,
		0,
		3072,
		2,
		0,
		0,
		2147516415,
		2,
		9,
		3,
		0,
		2,
		2,
		25,
		2,
		92,
		2,
		93,
		3,
		0,
		2,
		2,
		94,
		2,
		0,
		2,
		20,
		2,
		95,
		0,
		4294965179,
		0,
		7,
		2,
		0,
		2,
		10,
		2,
		93,
		2,
		10,
		-1,
		0,
		1761345536,
		2,
		96,
		0,
		4294901823,
		2,
		38,
		2,
		20,
		2,
		97,
		2,
		35,
		2,
		98,
		0,
		2080440287,
		2,
		0,
		2,
		34,
		2,
		154,
		0,
		3296722943,
		2,
		0,
		0,
		1046675455,
		0,
		939524101,
		0,
		1837055,
		2,
		99,
		2,
		100,
		2,
		22,
		2,
		23,
		3,
		0,
		3,
		0,
		7,
		3,
		0,
		349,
		2,
		101,
		2,
		102,
		2,
		7,
		-264,
		3,
		0,
		11,
		2,
		24,
		3,
		0,
		2,
		2,
		32,
		-1,
		0,
		2700607615,
		2,
		103,
		2,
		104,
		3,
		0,
		2,
		2,
		19,
		2,
		105,
		3,
		0,
		10,
		2,
		9,
		2,
		17,
		2,
		0,
		2,
		46,
		2,
		0,
		2,
		31,
		2,
		106,
		-3,
		2,
		107,
		3,
		0,
		3,
		2,
		20,
		-1,
		3,
		5,
		2,
		2,
		108,
		2,
		0,
		2,
		8,
		2,
		109,
		-1,
		2,
		110,
		2,
		111,
		2,
		112,
		-1,
		3,
		0,
		3,
		2,
		12,
		-2,
		2,
		0,
		2,
		29,
		-8,
		2,
		20,
		2,
		0,
		2,
		36,
		-1,
		2,
		0,
		2,
		65,
		2,
		6,
		2,
		30,
		2,
		9,
		2,
		0,
		2,
		113,
		-1,
		3,
		0,
		4,
		2,
		9,
		2,
		17,
		2,
		114,
		2,
		7,
		2,
		0,
		2,
		115,
		2,
		0,
		2,
		116,
		2,
		117,
		2,
		118,
		2,
		0,
		2,
		10,
		3,
		0,
		9,
		2,
		21,
		2,
		30,
		2,
		31,
		2,
		119,
		2,
		120,
		-2,
		2,
		121,
		2,
		122,
		2,
		30,
		2,
		21,
		2,
		8,
		-2,
		2,
		123,
		2,
		30,
		3,
		32,
		2,
		-1,
		2,
		0,
		2,
		39,
		-2,
		0,
		4277075969,
		2,
		30,
		-1,
		3,
		20,
		2,
		-1,
		2,
		33,
		2,
		124,
		2,
		0,
		3,
		30,
		2,
		2,
		35,
		2,
		19,
		-3,
		3,
		0,
		2,
		2,
		34,
		-1,
		2,
		0,
		2,
		35,
		2,
		0,
		2,
		35,
		2,
		0,
		2,
		50,
		2,
		96,
		0,
		4294934591,
		2,
		37,
		-7,
		2,
		0,
		0,
		197631,
		2,
		125,
		-1,
		2,
		20,
		2,
		43,
		2,
		37,
		2,
		17,
		0,
		3,
		2,
		17,
		2,
		124,
		2,
		21,
		2,
		126,
		2,
		127,
		-1,
		0,
		2490368,
		2,
		126,
		2,
		25,
		2,
		17,
		2,
		34,
		2,
		126,
		2,
		38,
		0,
		4294901904,
		0,
		4718591,
		2,
		126,
		2,
		35,
		0,
		335544350,
		-1,
		2,
		128,
		0,
		2147487743,
		0,
		1,
		-1,
		2,
		129,
		2,
		130,
		2,
		8,
		-1,
		2,
		131,
		2,
		68,
		0,
		3758161920,
		0,
		3,
		2,
		132,
		0,
		12582911,
		0,
		655360,
		-1,
		2,
		0,
		2,
		29,
		0,
		2147485568,
		0,
		3,
		2,
		0,
		2,
		25,
		0,
		176,
		-5,
		2,
		0,
		2,
		49,
		0,
		251658240,
		-1,
		2,
		0,
		2,
		25,
		0,
		16,
		-1,
		2,
		0,
		0,
		16779263,
		-2,
		2,
		12,
		-1,
		2,
		38,
		-5,
		2,
		0,
		2,
		18,
		-3,
		3,
		0,
		2,
		2,
		54,
		2,
		133,
		0,
		2147549183,
		0,
		2,
		-2,
		2,
		134,
		2,
		36,
		0,
		10,
		0,
		4294965249,
		0,
		67633151,
		0,
		4026597376,
		2,
		0,
		0,
		536871935,
		2,
		17,
		2,
		0,
		2,
		42,
		-6,
		2,
		0,
		0,
		1,
		2,
		57,
		2,
		49,
		0,
		1,
		2,
		135,
		2,
		25,
		-3,
		2,
		136,
		2,
		36,
		2,
		137,
		2,
		138,
		0,
		16778239,
		2,
		17,
		2,
		7,
		-8,
		2,
		35,
		0,
		4294836212,
		2,
		10,
		-3,
		2,
		67,
		-2,
		3,
		0,
		28,
		2,
		32,
		-3,
		3,
		0,
		3,
		2,
		49,
		3,
		0,
		6,
		2,
		50,
		-81,
		2,
		17,
		3,
		0,
		2,
		2,
		36,
		3,
		0,
		33,
		2,
		25,
		0,
		126,
		3,
		0,
		124,
		2,
		12,
		3,
		0,
		18,
		2,
		38,
		-213,
		2,
		9,
		-55,
		3,
		0,
		17,
		2,
		42,
		2,
		8,
		2,
		17,
		2,
		0,
		2,
		8,
		2,
		17,
		2,
		58,
		2,
		0,
		2,
		25,
		2,
		50,
		2,
		139,
		2,
		25,
		-13,
		2,
		0,
		2,
		71,
		-6,
		3,
		0,
		2,
		-1,
		2,
		140,
		2,
		10,
		-1,
		3,
		0,
		2,
		0,
		67583,
		-1,
		2,
		105,
		-2,
		0,
		8126475,
		3,
		0,
		230,
		2,
		30,
		2,
		54,
		2,
		8,
		-3,
		3,
		0,
		3,
		2,
		35,
		-271,
		2,
		141,
		3,
		0,
		9,
		2,
		142,
		2,
		143,
		2,
		55,
		3,
		0,
		11,
		2,
		7,
		-72,
		3,
		0,
		3,
		2,
		144,
		2,
		145,
		-187,
		3,
		0,
		2,
		2,
		56,
		2,
		0,
		2,
		146,
		2,
		147,
		2,
		60,
		2,
		0,
		2,
		148,
		2,
		149,
		2,
		150,
		3,
		0,
		10,
		2,
		151,
		2,
		152,
		2,
		22,
		3,
		56,
		2,
		3,
		153,
		2,
		3,
		57,
		2,
		2,
		154,
		-57,
		2,
		8,
		2,
		155,
		-7,
		2,
		17,
		2,
		0,
		2,
		58,
		-4,
		2,
		0,
		0,
		1065361407,
		0,
		16384,
		-9,
		2,
		17,
		2,
		58,
		2,
		0,
		2,
		18,
		-14,
		2,
		17,
		2,
		18,
		-6,
		2,
		17,
		0,
		81919,
		-6,
		2,
		8,
		0,
		3223273399,
		-7,
		2,
		156,
		3,
		0,
		6,
		2,
		124,
		-1,
		3,
		0,
		2,
		0,
		2063,
		-37,
		2,
		60,
		2,
		157,
		2,
		158,
		2,
		159,
		2,
		160,
		2,
		161,
		-138,
		3,
		0,
		1335,
		-1,
		3,
		0,
		136,
		2,
		9,
		3,
		0,
		180,
		2,
		24,
		3,
		0,
		233,
		2,
		162,
		3,
		0,
		18,
		2,
		9,
		-77,
		3,
		0,
		16,
		2,
		9,
		-47,
		3,
		0,
		154,
		2,
		6,
		3,
		0,
		264,
		2,
		32,
		-28252
	], [
		4294967295,
		4294967291,
		4092460543,
		4294828031,
		4294967294,
		134217726,
		4294903807,
		268435455,
		2147483647,
		1073741823,
		1048575,
		3892314111,
		134217727,
		1061158911,
		536805376,
		4294910143,
		4294901759,
		4294901760,
		4095,
		262143,
		536870911,
		8388607,
		4160749567,
		4294902783,
		4294918143,
		65535,
		67043328,
		2281701374,
		4294967264,
		2097151,
		4194303,
		255,
		67108863,
		4294967039,
		511,
		524287,
		131071,
		63,
		127,
		3238002687,
		4294549487,
		4290772991,
		33554431,
		4294901888,
		4286578687,
		67043329,
		4294770687,
		67043583,
		1023,
		32767,
		15,
		2047999,
		67043343,
		67051519,
		2147483648,
		4294902e3,
		4292870143,
		4294966783,
		16383,
		67047423,
		4294967279,
		262083,
		20511,
		41943039,
		493567,
		4294959104,
		603979775,
		65536,
		602799615,
		805044223,
		4294965206,
		8191,
		1031749119,
		4294917631,
		2134769663,
		4286578493,
		4282253311,
		4294942719,
		33540095,
		4294905855,
		2868854591,
		1608515583,
		265232348,
		534519807,
		2147614720,
		1060109444,
		4093640016,
		17376,
		2139062143,
		224,
		4169138175,
		4294909951,
		4286578688,
		4294967292,
		4294965759,
		4294836224,
		4294966272,
		4294967280,
		32768,
		8289918,
		4294934399,
		4294901775,
		4294965375,
		1602223615,
		4294967259,
		4294443008,
		268369920,
		4292804608,
		4294967232,
		486341884,
		4294963199,
		3087007615,
		1073692671,
		4128527,
		4279238655,
		4294902015,
		4160684047,
		4290246655,
		469499899,
		4294967231,
		134086655,
		4294966591,
		2445279231,
		3670015,
		31,
		252,
		4294967288,
		16777215,
		4294705151,
		3221208447,
		4294902271,
		4294549472,
		4294921215,
		4285526655,
		4294966527,
		4294705152,
		4294966143,
		64,
		4294966719,
		3774873592,
		4194303999,
		1877934080,
		262151,
		2555904,
		536807423,
		67043839,
		3758096383,
		3959414372,
		3755993023,
		2080374783,
		4294835295,
		4294967103,
		4160749565,
		4294934527,
		4087,
		2016,
		2147446655,
		184024726,
		2862017156,
		1593309078,
		268434431,
		268434414,
		4294901761
	]);
	Q2 = (e) => (wt[(e >>> 5) + 0] >>> e & 1) !== 0;
	St = (e) => (wt[(e >>> 5) + 34816] >>> e & 1) !== 0;
	S = [
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1032,
		0,
		0,
		2056,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		8192,
		0,
		3,
		0,
		0,
		8192,
		0,
		0,
		0,
		256,
		0,
		33024,
		0,
		0,
		242,
		242,
		114,
		114,
		114,
		114,
		114,
		114,
		594,
		594,
		0,
		0,
		16384,
		0,
		0,
		0,
		0,
		67,
		67,
		67,
		67,
		67,
		67,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		3,
		0,
		1,
		0,
		0,
		4099,
		0,
		71,
		71,
		71,
		71,
		71,
		71,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		7,
		16384,
		0,
		0,
		0,
		0
	];
	Z2 = [
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		0,
		0,
		0,
		0,
		1,
		0,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		0,
		0,
		0,
		0,
		0
	];
	Bt = [
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		0,
		0,
		0,
		0,
		0,
		0,
		0,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		0,
		0,
		0,
		0,
		1,
		0,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		1,
		0,
		0,
		0,
		0,
		0
	];
	Ft = [
		"SingleLine",
		"MultiLine",
		"HTMLOpen",
		"HTMLClose",
		"HashbangComment"
	];
	tn = {
		0: "Unexpected token",
		30: "Unexpected token: '%0'",
		1: "Octal escape sequences are not allowed in strict mode",
		2: "Octal escape sequences are not allowed in template strings",
		3: "\\8 and \\9 are not allowed in template strings",
		4: "Private identifier #%0 is not defined",
		5: "Illegal Unicode escape sequence",
		6: "Invalid code point %0",
		7: "Invalid hexadecimal escape sequence",
		9: "Octal literals are not allowed in strict mode",
		8: "Decimal integer literals with a leading zero are forbidden in strict mode",
		10: "Expected number in radix %0",
		151: "Invalid left-hand side assignment to a destructible right-hand side",
		11: "Non-number found after exponent indicator",
		12: "Invalid BigIntLiteral",
		13: "No identifiers allowed directly after numeric literal",
		14: "Escapes \\8 or \\9 are not syntactically valid escapes",
		15: "Escapes \\8 or \\9 are not allowed in strict mode",
		16: "Unterminated string literal",
		17: "Unterminated template literal",
		18: "Multiline comment was not closed properly",
		19: "The identifier contained dynamic unicode escape that was not closed",
		20: "Illegal character '%0'",
		21: "Missing hexadecimal digits",
		22: "Invalid implicit octal",
		23: "Invalid line break in string literal",
		24: "Only unicode escapes are legal in identifier names",
		25: "Expected '%0'",
		26: "Invalid left-hand side in assignment",
		27: "Invalid left-hand side in async arrow",
		28: "Calls to super must be in the \"constructor\" method of a class expression or class declaration that has a superclass",
		29: "Member access on super must be in a method",
		31: "Await expression not allowed in formal parameter",
		32: "Yield expression not allowed in formal parameter",
		95: "Unexpected token: 'escaped keyword'",
		33: "Unary expressions as the left operand of an exponentiation expression must be disambiguated with parentheses",
		123: "Async functions can only be declared at the top level or inside a block",
		34: "Unterminated regular expression",
		35: "Unexpected regular expression flag",
		36: "Duplicate regular expression flag '%0'",
		37: "%0 functions must have exactly %1 argument%2",
		38: "Setter function argument must not be a rest parameter",
		39: "%0 declaration must have a name in this context",
		40: "Function name may not contain any reserved words or be eval or arguments in strict mode",
		41: "The rest operator is missing an argument",
		42: "A getter cannot be a generator",
		43: "A setter cannot be a generator",
		44: "A computed property name must be followed by a colon or paren",
		134: "Object literal keys that are strings or numbers must be a method or have a colon",
		46: "Found `* async x(){}` but this should be `async * x(){}`",
		45: "Getters and setters can not be generators",
		47: "'%0' can not be generator method",
		48: "No line break is allowed after '=>'",
		49: "The left-hand side of the arrow can only be destructed through assignment",
		50: "The binding declaration is not destructible",
		51: "Async arrow can not be followed by new expression",
		52: "Classes may not have a static property named 'prototype'",
		53: "Class constructor may not be a %0",
		54: "Duplicate constructor method in class",
		55: "Invalid increment/decrement operand",
		56: "Invalid use of `new` keyword on an increment/decrement expression",
		57: "`=>` is an invalid assignment target",
		58: "Rest element may not have a trailing comma",
		59: "Missing initializer in %0 declaration",
		60: "'for-%0' loop head declarations can not have an initializer",
		61: "Invalid left-hand side in for-%0 loop: Must have a single binding",
		62: "Invalid shorthand property initializer",
		63: "Property name __proto__ appears more than once in object literal",
		64: "Let is disallowed as a lexically bound name",
		65: "Invalid use of '%0' inside new expression",
		66: "Illegal 'use strict' directive in function with non-simple parameter list",
		67: "Identifier \"let\" disallowed as left-hand side expression in strict mode",
		68: "Illegal continue statement",
		69: "Illegal break statement",
		70: "Cannot have `let[...]` as a var name in strict mode",
		71: "Invalid destructuring assignment target",
		72: "Rest parameter may not have a default initializer",
		73: "The rest argument must the be last parameter",
		74: "Invalid rest argument",
		76: "In strict mode code, functions can only be declared at top level or inside a block",
		77: "In non-strict mode code, functions can only be declared at top level, inside a block, or as the body of an if statement",
		78: "Without web compatibility enabled functions can not be declared at top level, inside a block, or as the body of an if statement",
		79: "Class declaration can't appear in single-statement context",
		80: "Invalid left-hand side in for-%0",
		81: "Invalid assignment in for-%0",
		82: "for await (... of ...) is only valid in async functions and async generators",
		83: "The first token after the template expression should be a continuation of the template",
		85: "`let` declaration not allowed here and `let` cannot be a regular var name in strict mode",
		84: "`let \n [` is a restricted production at the start of a statement",
		86: "Catch clause requires exactly one parameter, not more (and no trailing comma)",
		87: "Catch clause parameter does not support default values",
		88: "Missing catch or finally after try",
		89: "More than one default clause in switch statement",
		90: "Illegal newline after throw",
		91: "Strict mode code may not include a with statement",
		92: "Illegal return statement",
		93: "The left hand side of the for-header binding declaration is not destructible",
		94: "new.target only allowed within functions or static blocks",
		96: "'#' not followed by identifier",
		102: "Invalid keyword",
		101: "Can not use 'let' as a class name",
		100: "'A lexical declaration can't define a 'let' binding",
		99: "Can not use `let` as variable name in strict mode",
		97: "'%0' may not be used as an identifier in this context",
		98: "Await is only valid in async functions",
		103: "The %0 keyword can only be used with the module goal",
		104: "Unicode codepoint must not be greater than 0x10FFFF",
		105: "%0 source must be string",
		106: "Only a identifier or string can be used to indicate alias",
		107: "Only '*' or '{...}' can be imported after default",
		108: "Trailing decorator may be followed by method",
		109: "Decorators can't be used with a constructor",
		110: "Can not use `await` as identifier in module or async func",
		111: "Can not use `await` as identifier in module",
		112: "HTML comments are only allowed with web compatibility (Annex B)",
		113: "The identifier 'let' must not be in expression position in strict mode",
		114: "Cannot assign to `eval` and `arguments` in strict mode",
		115: "The left-hand side of a for-of loop may not start with 'let'",
		116: "Block body arrows can not be immediately invoked without a group",
		117: "Block body arrows can not be immediately accessed without a group",
		118: "Unexpected strict mode reserved word",
		119: "Unexpected eval or arguments in strict mode",
		120: "Decorators must not be followed by a semicolon",
		121: "Calling delete on expression not allowed in strict mode",
		122: "Pattern can not have a tail",
		124: "Can not have a `yield` expression on the left side of a ternary",
		125: "An arrow function can not have a postfix update operator",
		126: "Invalid object literal key character after generator star",
		127: "Private fields can not be deleted",
		129: "Classes may not have a field called constructor",
		128: "Classes may not have a private element named constructor",
		130: "A class field initializer or static block may not contain arguments",
		131: "Generators can only be declared at the top level or inside a block",
		132: "Async methods are a restricted production and cannot have a newline following it",
		133: "Unexpected character after object literal property name",
		135: "Invalid key token",
		136: "Label '%0' has already been declared",
		137: "continue statement must be nested within an iteration statement",
		138: "Undefined label '%0'",
		139: "Trailing comma is disallowed inside import(...) arguments",
		140: "Invalid binding in JSON import",
		141: "import() requires exactly one argument",
		142: "Cannot use new with import(...)",
		143: "... is not allowed in import()",
		144: "Expected '=>'",
		145: "Duplicate binding '%0'",
		146: "Duplicate private identifier #%0",
		147: "Cannot export a duplicate name '%0'",
		150: "Duplicate %0 for-binding",
		148: "Exported binding '%0' needs to refer to a top-level declared variable",
		149: "Unexpected private field",
		153: "Numeric separators are not allowed at the end of numeric literals",
		152: "Only one underscore is allowed as numeric separator",
		154: "JSX value should be either an expression or a quoted JSX text",
		155: "Expected corresponding JSX closing tag for %0",
		156: "Adjacent JSX elements must be wrapped in an enclosing tag",
		157: "JSX attributes must only be assigned a non-empty 'expression'",
		158: "'%0' has already been declared",
		159: "'%0' shadowed a catch clause binding",
		160: "Dot property must be an identifier",
		161: "Encountered invalid input after spread/rest argument",
		162: "Catch without try",
		163: "Finally without try",
		164: "Expected corresponding closing tag for JSX fragment",
		165: "Coalescing and logical operators used together in the same expression must be disambiguated with parentheses",
		166: "Invalid tagged template on optional chain",
		167: "Invalid optional chain from super property",
		168: "Invalid optional chain from new expression",
		169: "Cannot use \"import.meta\" outside a module",
		170: "Leading decorators must be attached to a class declaration",
		171: "An export name cannot include a lone surrogate",
		172: "A string literal cannot be used as an exported binding without `from`",
		173: "Private fields can't be accessed on super",
		174: "The only valid meta property for import is 'import.meta'",
		175: "'import.meta' must not contain escaped characters",
		176: "cannot use \"await\" as identifier inside an async function",
		177: "cannot use \"await\" in static blocks"
	};
	q = class extends SyntaxError {
		start;
		end;
		range;
		loc;
		description;
		constructor(t, n, u, ...o) {
			let i = tn[u].replace(/%(\d+)/g, (f, c) => o[c]), l = "[" + t.line + ":" + t.column + "-" + n.line + ":" + n.column + "]: " + i;
			super(l), this.start = t.index, this.end = n.index, this.range = [t.index, n.index], this.loc = {
				start: {
					line: t.line,
					column: t.column
				},
				end: {
					line: n.line,
					column: n.column
				}
			}, this.description = i;
		}
	};
	B = [
		"end of source",
		"identifier",
		"number",
		"string",
		"regular expression",
		"false",
		"true",
		"null",
		"template continuation",
		"template tail",
		"=>",
		"(",
		"{",
		".",
		"...",
		"}",
		")",
		";",
		",",
		"[",
		"]",
		":",
		"?",
		"'",
		"\"",
		"++",
		"--",
		"=",
		"<<=",
		">>=",
		">>>=",
		"**=",
		"+=",
		"-=",
		"*=",
		"/=",
		"%=",
		"^=",
		"|=",
		"&=",
		"||=",
		"&&=",
		"??=",
		"typeof",
		"delete",
		"void",
		"!",
		"~",
		"+",
		"-",
		"in",
		"instanceof",
		"*",
		"%",
		"/",
		"**",
		"&&",
		"||",
		"===",
		"!==",
		"==",
		"!=",
		"<=",
		">=",
		"<",
		">",
		"<<",
		">>",
		">>>",
		"&",
		"|",
		"^",
		"var",
		"let",
		"const",
		"break",
		"case",
		"catch",
		"class",
		"continue",
		"debugger",
		"default",
		"do",
		"else",
		"export",
		"extends",
		"finally",
		"for",
		"function",
		"if",
		"import",
		"new",
		"return",
		"super",
		"switch",
		"this",
		"throw",
		"try",
		"while",
		"with",
		"implements",
		"interface",
		"package",
		"private",
		"protected",
		"public",
		"static",
		"yield",
		"as",
		"async",
		"await",
		"constructor",
		"get",
		"set",
		"accessor",
		"from",
		"of",
		"enum",
		"eval",
		"arguments",
		"escaped keyword",
		"escaped future reserved keyword",
		"reserved if strict",
		"#",
		"BigIntLiteral",
		"??",
		"?.",
		"WhiteSpace",
		"Illegal",
		"LineTerminator",
		"PrivateField",
		"Template",
		"@",
		"target",
		"meta",
		"LineFeed",
		"Escaped",
		"JSXText"
	];
	It = {
		this: 86111,
		function: 86104,
		if: 20569,
		return: 20572,
		var: 86088,
		else: 20563,
		for: 20567,
		new: 86107,
		in: 8673330,
		typeof: 16863275,
		while: 20578,
		case: 20556,
		break: 20555,
		try: 20577,
		catch: 20557,
		delete: 16863276,
		throw: 86112,
		switch: 86110,
		continue: 20559,
		default: 20561,
		instanceof: 8411187,
		do: 20562,
		void: 16863277,
		finally: 20566,
		async: 209005,
		await: 209006,
		class: 86094,
		const: 86090,
		constructor: 12399,
		debugger: 20560,
		export: 20564,
		extends: 20565,
		false: 86021,
		from: 209011,
		get: 209008,
		implements: 36964,
		import: 86106,
		interface: 36965,
		let: 241737,
		null: 86023,
		of: 471156,
		package: 36966,
		private: 36967,
		protected: 36968,
		public: 36969,
		set: 209009,
		static: 36970,
		super: 86109,
		true: 86022,
		with: 20579,
		yield: 241771,
		enum: 86133,
		eval: 537079926,
		as: 77932,
		arguments: 537079927,
		target: 209029,
		meta: 209030,
		accessor: 12402
	};
	(function(e) {
		e[e.Empty = 0] = "Empty", e[e.Escape = 1] = "Escape", e[e.Class = 2] = "Class";
	})(G || (G = {}));
	(function(e) {
		e[e.Empty = 0] = "Empty", e[e.IgnoreCase = 1] = "IgnoreCase", e[e.Global = 2] = "Global", e[e.Multiline = 4] = "Multiline", e[e.Unicode = 16] = "Unicode", e[e.Sticky = 8] = "Sticky", e[e.DotAll = 32] = "DotAll", e[e.Indices = 64] = "Indices", e[e.UnicodeSets = 128] = "UnicodeSets";
	})(P || (P = {}));
	an = [
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		127,
		135,
		127,
		127,
		129,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		128,
		127,
		16842798,
		134283267,
		130,
		208897,
		8391477,
		8390213,
		134283267,
		67174411,
		16,
		8391476,
		25233968,
		18,
		25233969,
		67108877,
		8457014,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		134283266,
		21,
		1074790417,
		8456256,
		1077936155,
		8390721,
		22,
		132,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		208897,
		69271571,
		136,
		20,
		8389959,
		208897,
		131,
		4096,
		4096,
		4096,
		4096,
		4096,
		4096,
		4096,
		208897,
		4096,
		208897,
		208897,
		4096,
		208897,
		4096,
		208897,
		4096,
		208897,
		4096,
		4096,
		4096,
		208897,
		4096,
		4096,
		208897,
		4096,
		4096,
		2162700,
		8389702,
		1074790415,
		16842799,
		128
	];
	He = class {
		parser;
		parent;
		refs = Object.create(null);
		privateIdentifiers = /* @__PURE__ */ new Map();
		constructor(t, n) {
			this.parser = t, this.parent = n;
		}
		addPrivateIdentifier(t, n) {
			let { privateIdentifiers: u } = this, o = n & 800;
			o & 768 || (o |= 768);
			let i = u.get(t);
			this.hasPrivateIdentifier(t) && ((i & 32) !== (o & 32) || i & o & 768) && this.parser.report(146, t), u.set(t, this.hasPrivateIdentifier(t) ? i | o : o);
		}
		addPrivateIdentifierRef(t) {
			var n;
			(n = this.refs)[t] ?? (n[t] = []), this.refs[t].push(this.parser.tokenStart);
		}
		isPrivateIdentifierDefined(t) {
			return this.hasPrivateIdentifier(t) || !!this.parent?.isPrivateIdentifierDefined(t);
		}
		validatePrivateIdentifierRefs() {
			for (let t in this.refs) if (!this.isPrivateIdentifierDefined(t)) {
				let { index: n, line: u, column: o } = this.refs[t][0];
				throw new q({
					index: n,
					line: u,
					column: o
				}, {
					index: n + t.length,
					line: u,
					column: o + t.length
				}, 4, t);
			}
		}
		hasPrivateIdentifier(t) {
			return this.privateIdentifiers.has(t);
		}
	};
	We = class e {
		parser;
		type;
		parent;
		scopeError;
		variableBindings = /* @__PURE__ */ new Map();
		constructor(t, n = 2, u) {
			this.parser = t, this.type = n, this.parent = u;
		}
		createChildScope(t) {
			return new e(this.parser, t, this);
		}
		addVarOrBlock(t, n, u, o) {
			u & 4 ? this.addVarName(t, n, u) : this.addBlockName(t, n, u, o), o & 64 && this.parser.declareUnboundVariable(n);
		}
		addVarName(t, n, u) {
			let { parser: o } = this, i = this;
			for (; i && (i.type & 128) === 0;) {
				let { variableBindings: l } = i, f = l.get(n);
				f && f & 248 && (o.options.webcompat && !(t & 1) && (u & 128 && f & 68 || f & 128 && u & 68) || o.report(145, n)), i === this && f && f & 1 && u & 1 && i.recordScopeError(145, n), f && (f & 256 || f & 512 && !o.options.webcompat) && o.report(145, n), i.variableBindings.set(n, u), i = i.parent;
			}
		}
		hasVariable(t) {
			return this.variableBindings.has(t);
		}
		addBlockName(t, n, u, o) {
			let { parser: i } = this, l = this.variableBindings.get(n);
			l && !(l & 2) && (u & 1 ? this.recordScopeError(145, n) : i.options.webcompat && !(t & 1) && o & 2 && l === 64 && u === 64 || i.report(145, n)), this.type & 64 && this.parent?.hasVariable(n) && !(this.parent.variableBindings.get(n) & 2) && i.report(145, n), this.type & 512 && l && !(l & 2) && u & 1 && this.recordScopeError(145, n), this.type & 32 && this.parent.variableBindings.get(n) & 768 && i.report(159, n), this.variableBindings.set(n, u);
		}
		recordScopeError(t, ...n) {
			this.scopeError = {
				type: t,
				params: n,
				start: this.parser.tokenStart,
				end: this.parser.currentLocation
			};
		}
		reportScopeError() {
			let { scopeError: t } = this;
			if (t) throw new q(t.start, t.end, t.type, ...t.params);
		}
	};
	ze = class {
		source;
		lastOnToken = null;
		options;
		token = 1048576;
		flags = 0;
		index = 0;
		line = 1;
		column = 0;
		startIndex = 0;
		end = 0;
		tokenIndex = 0;
		startColumn = 0;
		tokenColumn = 0;
		tokenLine = 1;
		startLine = 1;
		tokenValue = "";
		tokenRaw = "";
		tokenRegExp = void 0;
		currentChar = 0;
		exportedNames = /* @__PURE__ */ new Set();
		exportedBindings = /* @__PURE__ */ new Set();
		assignable = 0;
		destructible = 0;
		strictReservedRange = null;
		leadingDecorators = { decorators: [] };
		constructor(t, n = {}) {
			this.source = t, this.end = t.length, this.currentChar = t.charCodeAt(0), this.options = yn(n), Array.isArray(this.options.onComment) && (this.options.onComment = An(this.options.onComment, this.options)), Array.isArray(this.options.onToken) && (this.options.onToken = Tn(this.options.onToken, this.options));
		}
		getToken() {
			return this.token;
		}
		setToken(t, n = !1) {
			this.token = t;
			let { onToken: u } = this.options;
			if (u) if (t !== 1048576) {
				let o = {
					start: {
						line: this.tokenLine,
						column: this.tokenColumn
					},
					end: {
						line: this.line,
						column: this.column
					}
				};
				!n && this.lastOnToken && u(...this.lastOnToken), this.lastOnToken = [
					x2(t),
					this.tokenIndex,
					this.index,
					o
				];
			} else this.lastOnToken && (u(...this.lastOnToken), this.lastOnToken = null);
			return t;
		}
		get tokenStart() {
			return {
				index: this.tokenIndex,
				line: this.tokenLine,
				column: this.tokenColumn
			};
		}
		get currentLocation() {
			return {
				index: this.index,
				line: this.line,
				column: this.column
			};
		}
		finishNode(t, n, u) {
			let { ranges: o } = this.options;
			if (o) {
				let i = u ? u.index : this.startIndex;
				o.start && (t.start = n.index), o.end && (t.end = i), o.range && (t.range = [n.index, i]);
			}
			return this.options.loc && (t.loc = {
				start: {
					line: n.line,
					column: n.column
				},
				end: u ? {
					line: u.line,
					column: u.column
				} : {
					line: this.startLine,
					column: this.startColumn
				}
			}, this.options.source && (t.loc.source = this.options.source)), t;
		}
		addBindingToExports(t) {
			this.exportedBindings.add(t);
		}
		declareUnboundVariable(t) {
			let { exportedNames: n } = this;
			n.has(t) && this.report(147, t), n.add(t);
		}
		report(t, ...n) {
			throw new q(this.tokenStart, this.currentLocation, t, ...n);
		}
		createScopeIfLexical(t, n) {
			if (this.options.lexical) return this.createScope(t, n);
		}
		createScope(t, n) {
			return new We(this, t, n);
		}
		createPrivateScopeIfLexical(t) {
			if (this.options.lexical) return new He(this, t);
		}
		cloneIdentifier(t) {
			return this.cloneLocationInformation({ ...t }, t);
		}
		cloneStringLiteral(t) {
			return this.cloneLocationInformation({ ...t }, t);
		}
		cloneLocationInformation(t, n) {
			let { ranges: u } = this.options;
			return u && (u.start && (t.start = n.start), u.end && (t.end = n.end), u.range && (t.range = [...n.range])), this.options.loc && (t.loc = {
				...n.loc,
				start: { ...n.loc.start },
				end: { ...n.loc.end }
			}), t;
		}
	};
	i2 = Fu;
	Nu = Array.prototype.findLast ?? function(e) {
		for (let t = this.length - 1; t >= 0; t--) {
			let n = this[t];
			if (e(n, t, this)) return n;
		}
	};
	l2 = Z("findLast", function() {
		if (Array.isArray(this)) return Nu;
	});
	Je = Symbol.for("comments");
	f2 = Z("at", function() {
		if (Array.isArray(this) || typeof this == "string") return Lu;
	});
	Pu = 5;
	Ou = 8;
	Ru = 8;
	c2 = (e) => (t) => t.label ? V(t.label) : R(t) + e;
	Vu = (e) => e.__contentEnd ?? fe(e);
	s2 = [
		"ExpressionStatement",
		"Directive",
		"ImportDeclaration",
		"ExportDefaultDeclaration",
		"ExportNamedDeclaration",
		"ExportAllDeclaration",
		"ReturnStatement",
		"ThrowStatement",
		"DoWhileStatement"
	];
	Mu = new Map([
		["BreakStatement", c2(Pu)],
		["ContinueStatement", c2(Ou)],
		["DebuggerStatement", (e) => R(e) + Ru],
		["VariableDeclaration", (e) => V(f2(0, e.declarations, -1))],
		...s2.map((e) => [e, Vu])
	]);
	dt = ne(s2);
	ce = ne([
		"Block",
		"CommentBlock",
		"MultiLine"
	]);
	d2 = ne([
		"Line",
		"CommentLine",
		"SingleLine",
		"HashbangComment",
		"HTMLOpen",
		"HTMLClose",
		"Hashbang",
		"InterpreterDirective"
	]);
	vu = /* @__PURE__ */ new WeakMap();
	g2 = Uu;
	Ju = /* @__PURE__ */ new WeakMap();
	r2 = /* @__PURE__ */ new WeakMap();
	y2 = Hu;
	be = null;
	Wu = 10;
	for (let e = 0; e <= Wu; e++) De();
	A2 = zu;
	g = [
		["elements"],
		["left", "right"],
		["value"],
		["directives", "body"],
		["label"],
		[
			"callee",
			"typeArguments",
			"arguments"
		],
		[
			"test",
			"consequent",
			"alternate"
		],
		["body", "test"],
		["expression"],
		[
			"left",
			"right",
			"body"
		],
		[
			"id",
			"typeParameters",
			"params",
			"predicate",
			"returnType",
			"body"
		],
		["object", "property"],
		["properties"],
		[
			"decorators",
			"key",
			"typeParameters",
			"params",
			"returnType",
			"body"
		],
		[
			"decorators",
			"key",
			"value"
		],
		["argument"],
		["expressions"],
		["id", "init"],
		["body"],
		[
			"decorators",
			"id",
			"typeParameters",
			"superClass",
			"superTypeArguments",
			"mixins",
			"implements",
			"body"
		],
		[
			"declaration",
			"specifiers",
			"source",
			"attributes"
		],
		["local"],
		["exported"],
		[
			"decorators",
			"variance",
			"key",
			"typeAnnotation",
			"value"
		],
		["id"],
		["key", "value"],
		["elementType"],
		["id", "typeParameters"],
		[
			"id",
			"typeParameters",
			"extends",
			"body"
		],
		["id", "body"],
		["typeAnnotation"],
		[
			"id",
			"typeParameters",
			"right"
		],
		["name", "typeAnnotation"],
		["types"],
		["qualification", "id"],
		["elementTypes"],
		["expression", "typeAnnotation"],
		["params"],
		["members"],
		["objectType", "indexType"],
		[
			"decorators",
			"key",
			"typeAnnotation",
			"value"
		],
		[
			"id",
			"typeParameters",
			"params",
			"returnType",
			"body"
		],
		[
			"key",
			"typeParameters",
			"params",
			"returnType"
		],
		[
			"typeParameters",
			"params",
			"returnType"
		],
		["parameterName", "typeAnnotation"],
		[
			"checkType",
			"extendsType",
			"trueType",
			"falseType"
		],
		["typeParameter"],
		["literal"],
		["expression", "typeArguments"],
		[
			"decorators",
			"key",
			"typeAnnotation"
		],
		["argument", "cases"],
		[
			"pattern",
			"body",
			"guard"
		],
		["properties", "rest"],
		["node"]
	];
	b2 = A2({
		ArrayExpression: g[0],
		AssignmentExpression: g[1],
		BinaryExpression: g[1],
		InterpreterDirective: [],
		Directive: g[2],
		DirectiveLiteral: [],
		BlockStatement: g[3],
		BreakStatement: g[4],
		CallExpression: g[5],
		CatchClause: ["param", "body"],
		ConditionalExpression: g[6],
		ContinueStatement: g[4],
		DebuggerStatement: [],
		DoWhileStatement: g[7],
		EmptyStatement: [],
		ExpressionStatement: g[8],
		File: ["program"],
		ForInStatement: g[9],
		ForStatement: [
			"init",
			"test",
			"update",
			"body"
		],
		FunctionDeclaration: g[10],
		FunctionExpression: g[10],
		Identifier: ["typeAnnotation", "decorators"],
		IfStatement: g[6],
		LabeledStatement: ["label", "body"],
		StringLiteral: [],
		NumericLiteral: [],
		NullLiteral: [],
		BooleanLiteral: [],
		RegExpLiteral: [],
		LogicalExpression: g[1],
		MemberExpression: g[11],
		NewExpression: g[5],
		Program: g[3],
		ObjectExpression: g[12],
		ObjectMethod: g[13],
		ObjectProperty: g[14],
		RestElement: [
			"argument",
			"typeAnnotation",
			"decorators"
		],
		ReturnStatement: g[15],
		SequenceExpression: g[16],
		ParenthesizedExpression: g[8],
		SwitchCase: ["test", "consequent"],
		SwitchStatement: ["discriminant", "cases"],
		ThisExpression: [],
		ThrowStatement: g[15],
		TryStatement: [
			"block",
			"handler",
			"finalizer"
		],
		UnaryExpression: g[15],
		UpdateExpression: g[15],
		VariableDeclaration: ["declarations"],
		VariableDeclarator: g[17],
		WhileStatement: g[7],
		WithStatement: ["object", "body"],
		AssignmentPattern: [
			"left",
			"right",
			"decorators",
			"typeAnnotation"
		],
		ArrayPattern: [
			"elements",
			"typeAnnotation",
			"decorators"
		],
		ArrowFunctionExpression: [
			"typeParameters",
			"params",
			"predicate",
			"returnType",
			"body"
		],
		ClassBody: g[18],
		ClassExpression: g[19],
		ClassDeclaration: g[19],
		ExportAllDeclaration: [
			"source",
			"attributes",
			"exported"
		],
		ExportDefaultDeclaration: ["declaration"],
		ExportNamedDeclaration: g[20],
		ExportSpecifier: ["local", "exported"],
		ForOfStatement: g[9],
		ImportDeclaration: [
			"specifiers",
			"source",
			"attributes"
		],
		ImportDefaultSpecifier: g[21],
		ImportNamespaceSpecifier: g[21],
		ImportSpecifier: ["imported", "local"],
		MetaProperty: ["meta", "property"],
		ClassMethod: g[13],
		ObjectPattern: [
			"decorators",
			"properties",
			"typeAnnotation"
		],
		SpreadElement: g[15],
		Super: [],
		TaggedTemplateExpression: [
			"tag",
			"typeArguments",
			"quasi"
		],
		TemplateElement: [],
		TemplateLiteral: ["quasis", "expressions"],
		YieldExpression: g[15],
		AwaitExpression: g[15],
		ImportExpression: ["source", "options"],
		BigIntLiteral: [],
		ExportNamespaceSpecifier: g[22],
		OptionalMemberExpression: g[11],
		OptionalCallExpression: g[5],
		ClassProperty: g[23],
		ClassPrivateProperty: g[23],
		ClassPrivateMethod: g[13],
		PrivateName: g[24],
		StaticBlock: g[18],
		ImportAttribute: g[25],
		AnyTypeAnnotation: [],
		ArrayTypeAnnotation: g[26],
		BooleanTypeAnnotation: [],
		BooleanLiteralTypeAnnotation: [],
		NullLiteralTypeAnnotation: [],
		ClassImplements: g[27],
		DeclareClass: [
			"id",
			"typeParameters",
			"extends",
			"mixins",
			"implements",
			"body"
		],
		DeclareFunction: ["id", "predicate"],
		DeclareInterface: g[28],
		DeclareModule: g[29],
		DeclareModuleExports: g[30],
		DeclareTypeAlias: g[31],
		DeclareOpaqueType: [
			"id",
			"typeParameters",
			"supertype",
			"lowerBound",
			"upperBound"
		],
		DeclareVariable: ["id", "declarations"],
		DeclareExportDeclaration: g[20],
		DeclareExportAllDeclaration: ["source", "attributes"],
		DeclaredPredicate: g[2],
		ExistsTypeAnnotation: [],
		FunctionTypeAnnotation: [
			"typeParameters",
			"this",
			"params",
			"rest",
			"returnType"
		],
		FunctionTypeParam: g[32],
		GenericTypeAnnotation: g[27],
		InferredPredicate: [],
		InterfaceExtends: g[27],
		InterfaceDeclaration: g[28],
		InterfaceTypeAnnotation: ["extends", "body"],
		IntersectionTypeAnnotation: g[33],
		MixedTypeAnnotation: [],
		EmptyTypeAnnotation: [],
		NullableTypeAnnotation: g[30],
		NumberLiteralTypeAnnotation: [],
		BigIntLiteralTypeAnnotation: [],
		NumberTypeAnnotation: [],
		ObjectTypeAnnotation: [
			"properties",
			"indexers",
			"callProperties",
			"internalSlots"
		],
		ObjectTypeInternalSlot: ["id", "value"],
		ObjectTypeCallProperty: g[2],
		ObjectTypeIndexer: [
			"variance",
			"id",
			"key",
			"value"
		],
		ObjectTypeProperty: [
			"key",
			"value",
			"variance"
		],
		ObjectTypeSpreadProperty: g[15],
		OpaqueType: [
			"id",
			"typeParameters",
			"supertype",
			"impltype",
			"lowerBound",
			"upperBound"
		],
		QualifiedTypeIdentifier: g[34],
		StringLiteralTypeAnnotation: [],
		StringTypeAnnotation: [],
		SymbolTypeAnnotation: [],
		ThisTypeAnnotation: [],
		TupleTypeAnnotation: g[35],
		TypeofTypeAnnotation: ["argument", "typeArguments"],
		TypeAlias: g[31],
		TypeAnnotation: g[30],
		TypeCastExpression: g[36],
		TypeParameter: [
			"bound",
			"default",
			"variance"
		],
		TypeParameterDeclaration: g[37],
		TypeParameterInstantiation: g[37],
		UnionTypeAnnotation: g[33],
		Variance: [],
		VoidTypeAnnotation: [],
		EnumDeclaration: g[29],
		EnumBooleanBody: g[38],
		EnumNumberBody: g[38],
		EnumStringBody: g[38],
		EnumSymbolBody: g[38],
		EnumBooleanMember: g[17],
		EnumNumberMember: g[17],
		EnumStringMember: g[17],
		EnumDefaultedMember: g[24],
		IndexedAccessType: g[39],
		OptionalIndexedAccessType: g[39],
		JSXAttribute: ["name", "value"],
		JSXClosingElement: ["name"],
		JSXElement: [
			"openingElement",
			"children",
			"closingElement"
		],
		JSXEmptyExpression: [],
		JSXExpressionContainer: g[8],
		JSXSpreadChild: g[8],
		JSXIdentifier: [],
		JSXMemberExpression: g[11],
		JSXNamespacedName: ["namespace", "name"],
		JSXOpeningElement: [
			"name",
			"typeArguments",
			"attributes"
		],
		JSXSpreadAttribute: g[15],
		JSXText: [],
		JSXFragment: [
			"openingFragment",
			"children",
			"closingFragment"
		],
		JSXOpeningFragment: [],
		JSXClosingFragment: [],
		Placeholder: [],
		V8IntrinsicIdentifier: [],
		ArgumentPlaceholder: [],
		BindExpression: ["object", "callee"],
		ClassAccessorProperty: g[40],
		Decorator: g[8],
		DoExpression: g[18],
		ExportDefaultSpecifier: g[22],
		ModuleExpression: g[18],
		TopicReference: [],
		VoidPattern: [],
		TSParameterProperty: ["parameter", "decorators"],
		TSDeclareFunction: g[41],
		TSDeclareMethod: g[42],
		TSQualifiedName: g[1],
		TSCallSignatureDeclaration: g[43],
		TSConstructSignatureDeclaration: g[43],
		TSPropertySignature: ["key", "typeAnnotation"],
		TSMethodSignature: g[42],
		TSIndexSignature: ["parameters", "typeAnnotation"],
		TSAnyKeyword: [],
		TSBooleanKeyword: [],
		TSBigIntKeyword: [],
		TSIntrinsicKeyword: [],
		TSNeverKeyword: [],
		TSNullKeyword: [],
		TSNumberKeyword: [],
		TSObjectKeyword: [],
		TSStringKeyword: [],
		TSSymbolKeyword: [],
		TSUndefinedKeyword: [],
		TSUnknownKeyword: [],
		TSVoidKeyword: [],
		TSThisType: [],
		TSFunctionType: g[43],
		TSConstructorType: g[43],
		TSTypeReference: ["typeName", "typeArguments"],
		TSTypePredicate: g[44],
		TSTypeQuery: ["exprName", "typeArguments"],
		TSTypeLiteral: g[38],
		TSArrayType: g[26],
		TSTupleType: g[35],
		TSOptionalType: g[30],
		TSRestType: g[30],
		TSNamedTupleMember: ["label", "elementType"],
		TSUnionType: g[33],
		TSIntersectionType: g[33],
		TSConditionalType: g[45],
		TSInferType: g[46],
		TSParenthesizedType: g[30],
		TSTypeOperator: g[30],
		TSIndexedAccessType: g[39],
		TSMappedType: [
			"key",
			"constraint",
			"nameType",
			"typeAnnotation"
		],
		TSTemplateLiteralType: ["quasis", "types"],
		TSLiteralType: g[47],
		TSClassImplements: g[48],
		TSInterfaceHeritage: g[48],
		TSInterfaceDeclaration: g[28],
		TSInterfaceBody: g[18],
		TSTypeAliasDeclaration: [
			"id",
			"typeParameters",
			"typeAnnotation"
		],
		TSInstantiationExpression: g[48],
		TSAsExpression: g[36],
		TSSatisfiesExpression: g[36],
		TSTypeAssertion: g[36],
		TSEnumBody: g[38],
		TSEnumDeclaration: g[29],
		TSEnumMember: ["id", "initializer"],
		TSModuleDeclaration: g[29],
		TSModuleBlock: g[18],
		TSImportType: [
			"source",
			"options",
			"qualifier",
			"typeArguments"
		],
		TSImportEqualsDeclaration: ["id", "moduleReference"],
		TSExternalModuleReference: g[8],
		TSNonNullExpression: g[8],
		TSExportAssignment: g[8],
		TSNamespaceExportDeclaration: g[24],
		TSTypeAnnotation: g[30],
		TSTypeParameterInstantiation: g[37],
		TSTypeParameterDeclaration: g[37],
		TSTypeParameter: [
			"name",
			"constraint",
			"default"
		],
		ChainExpression: g[8],
		Literal: [],
		MethodDefinition: g[14],
		PrivateIdentifier: [],
		Property: g[25],
		PropertyDefinition: g[23],
		AccessorProperty: g[40],
		TSAbstractAccessorProperty: g[49],
		TSAbstractKeyword: [],
		TSAbstractMethodDefinition: g[25],
		TSAbstractPropertyDefinition: g[49],
		TSAsyncKeyword: [],
		TSDeclareKeyword: [],
		TSEmptyBodyFunctionExpression: [
			"id",
			"typeParameters",
			"params",
			"returnType"
		],
		TSExportKeyword: [],
		TSPrivateKeyword: [],
		TSProtectedKeyword: [],
		TSPublicKeyword: [],
		TSReadonlyKeyword: [],
		TSStaticKeyword: [],
		AsConstExpression: g[8],
		AsExpression: g[36],
		BigIntTypeAnnotation: [],
		ComponentDeclaration: [
			"id",
			"params",
			"body",
			"typeParameters",
			"rendersType"
		],
		ComponentParameter: ["name", "local"],
		ComponentTypeAnnotation: [
			"params",
			"rest",
			"typeParameters",
			"rendersType"
		],
		ComponentTypeParameter: g[32],
		ConditionalTypeAnnotation: g[45],
		DeclareComponent: [
			"id",
			"params",
			"rest",
			"typeParameters",
			"rendersType"
		],
		DeclareEnum: g[29],
		DeclareHook: g[24],
		DeclareNamespace: g[29],
		EnumBigIntBody: g[38],
		EnumBigIntMember: g[17],
		EnumBody: g[38],
		HookDeclaration: g[41],
		HookTypeAnnotation: [
			"params",
			"returnType",
			"rest",
			"typeParameters"
		],
		InferTypeAnnotation: g[46],
		KeyofTypeAnnotation: g[15],
		MatchArrayPattern: ["elements", "rest"],
		MatchAsPattern: ["pattern", "target"],
		MatchBindingPattern: g[24],
		MatchExpression: g[50],
		MatchExpressionCase: g[51],
		MatchIdentifierPattern: g[24],
		MatchInstanceObjectPattern: g[52],
		MatchInstancePattern: ["targetConstructor", "properties"],
		MatchLiteralPattern: g[47],
		MatchMemberPattern: ["base", "property"],
		MatchObjectPattern: g[52],
		MatchObjectPatternProperty: ["key", "pattern"],
		MatchOrPattern: ["patterns"],
		MatchRestPattern: g[15],
		MatchStatement: g[50],
		MatchStatementCase: g[51],
		MatchUnaryPattern: g[15],
		MatchWildcardPattern: [],
		NeverTypeAnnotation: [],
		ObjectTypeMappedTypeProperty: [
			"keyTparam",
			"propType",
			"sourceType",
			"variance"
		],
		QualifiedTypeofIdentifier: g[34],
		RecordDeclaration: [
			"id",
			"typeParameters",
			"implements",
			"body"
		],
		RecordDeclarationBody: g[0],
		RecordDeclarationImplements: ["id", "typeArguments"],
		RecordDeclarationProperty: [
			"key",
			"typeAnnotation",
			"defaultValue"
		],
		RecordDeclarationStaticProperty: [
			"key",
			"typeAnnotation",
			"value"
		],
		RecordExpression: [
			"recordConstructor",
			"typeArguments",
			"properties"
		],
		RecordExpressionProperties: g[12],
		SatisfiesExpression: g[36],
		TupleTypeLabeledElement: [
			"label",
			"elementType",
			"variance"
		],
		TupleTypeSpreadElement: ["label", "typeAnnotation"],
		TypeOperator: g[30],
		TypePredicate: g[44],
		UndefinedTypeAnnotation: [],
		UnknownTypeAnnotation: [],
		NGChainedExpression: g[16],
		NGEmptyExpression: [],
		NGPipeExpression: [
			"left",
			"right",
			"arguments"
		],
		NGMicrosyntax: g[18],
		NGMicrosyntaxAs: ["key", "alias"],
		NGMicrosyntaxExpression: ["expression", "alias"],
		NGMicrosyntaxKey: [],
		NGMicrosyntaxKeyedExpression: ["key", "expression"],
		NGMicrosyntaxLet: g[25],
		NGRoot: g[53],
		JsExpressionRoot: g[53],
		JsonRoot: g[53],
		TSJSDocAllType: [],
		TSJSDocUnknownType: [],
		TSJSDocNullableType: g[30],
		TSJSDocNonNullableType: g[30]
	});
	D2 = je;
	ne([
		"RegExpLiteral",
		"BigIntLiteral",
		"NumericLiteral",
		"StringLiteral",
		"DirectiveLiteral",
		"Literal",
		"JSXText",
		"TemplateElement",
		"StringLiteralTypeAnnotation",
		"NumberLiteralTypeAnnotation",
		"BigIntLiteralTypeAnnotation"
	]);
	E2 = $u;
	Qu = /\*\/$/;
	Zu = /^\/\*\*?/;
	Gu = /^\s*(\/\*\*?(.|\r?\n)*?\*\/)/;
	xu = /(^|\s+)\/\/([^\n\r]*)/g;
	w2 = /^(\r?\n)+/;
	pu = /(?:^|\r?\n) *(@[^\n\r]*?) *\r?\n *(?![^\n\r@]*\/\/[^]*)([^\s@][^\n\r@]+?) *\r?\n/g;
	S2 = /(?:^|\r?\n) *@(\S+) *([^\n\r]*)/g;
	ei = /(\r?\n|^) *\* ?/g;
	ti = [];
	N2 = ["noformat", "noprettier"];
	I2 = ["format", "prettier"];
	L2 = ni;
	R2 = ui;
	V2 = "module";
	M2 = "commonjs";
	v2 = [V2, M2];
	ii = {
		next: !0,
		ranges: !0,
		webcompat: !0,
		loc: !1,
		raw: !0,
		directives: !0,
		impliedStrict: !1,
		preserveParens: !0,
		lexical: !1,
		jsx: !0,
		validateRegex: !1
	};
	ci = R2(fi);
}))();
export { _2 as default, rt as parsers };
