@electron/lint-roller 1.13.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,43 +30,2294 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
30
30
  ));
31
31
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
32
32
 
33
+ // node_modules/markdownlint-micromark/micromark.cjs
34
+ var require_micromark = __commonJS({
35
+ "node_modules/markdownlint-micromark/micromark.cjs"(exports2) {
36
+ (() => {
37
+ "use strict";
38
+ var e = { d: (t2, n2) => {
39
+ for (var r2 in n2) e.o(n2, r2) && !e.o(t2, r2) && Object.defineProperty(t2, r2, { enumerable: true, get: n2[r2] });
40
+ }, o: (e2, t2) => Object.prototype.hasOwnProperty.call(e2, t2), r: (e2) => {
41
+ "undefined" != typeof Symbol && Symbol.toStringTag && Object.defineProperty(e2, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(e2, "__esModule", { value: true });
42
+ } }, t = {};
43
+ e.r(t), e.d(t, { directive: () => F, gfmAutolinkLiteral: () => B, gfmFootnote: () => K, gfmTable: () => ce, math: () => be, parse: () => It, postprocess: () => Mt, preprocess: () => Ot });
44
+ var n = {};
45
+ e.r(n), e.d(n, { attentionMarkers: () => Ft, contentInitial: () => Lt, disable: () => zt, document: () => St, flow: () => Dt, flowInitial: () => Tt, insideSpan: () => Ct, string: () => Et, text: () => At });
46
+ const r = g(/[A-Za-z]/), i = g(/[\dA-Za-z]/), o = g(/[#-'*+\--9=?A-Z^-~]/);
47
+ function c(e2) {
48
+ return null !== e2 && (e2 < 32 || 127 === e2);
49
+ }
50
+ const u = g(/\d/), a = g(/[\dA-Fa-f]/), l = g(/[!-/:-@[-`{-~]/);
51
+ function s(e2) {
52
+ return null !== e2 && e2 < -2;
53
+ }
54
+ function f(e2) {
55
+ return null !== e2 && (e2 < 0 || 32 === e2);
56
+ }
57
+ function p(e2) {
58
+ return -2 === e2 || -1 === e2 || 32 === e2;
59
+ }
60
+ const d = g(new RegExp("\\p{P}|\\p{S}", "u")), m = g(/\s/);
61
+ function g(e2) {
62
+ return function(t2) {
63
+ return null !== t2 && t2 > -1 && e2.test(String.fromCharCode(t2));
64
+ };
65
+ }
66
+ function h(e2, t2, n2, r2) {
67
+ const i2 = r2 ? r2 - 1 : Number.POSITIVE_INFINITY;
68
+ let o2 = 0;
69
+ return function(r3) {
70
+ return p(r3) ? (e2.enter(n2), c2(r3)) : t2(r3);
71
+ };
72
+ function c2(r3) {
73
+ return p(r3) && o2++ < i2 ? (e2.consume(r3), c2) : (e2.exit(n2), t2(r3));
74
+ }
75
+ }
76
+ function b(e2, t2) {
77
+ let n2;
78
+ return function r2(i2) {
79
+ return s(i2) ? (e2.enter("lineEnding"), e2.consume(i2), e2.exit("lineEnding"), n2 = true, r2) : p(i2) ? h(e2, r2, n2 ? "linePrefix" : "lineSuffix")(i2) : t2(i2);
80
+ };
81
+ }
82
+ function x(e2, t2, n2, o2, c2, u2, a2, l2, d2, m2, g2, x2, v2, k2, y2) {
83
+ let w2, q2;
84
+ return function(t3) {
85
+ return e2.enter(o2), e2.enter(c2), e2.consume(t3), e2.exit(c2), S2;
86
+ };
87
+ function S2(t3) {
88
+ return 35 === t3 ? (w2 = a2, L2(t3)) : 46 === t3 ? (w2 = l2, L2(t3)) : 58 === t3 || 95 === t3 || r(t3) ? (e2.enter(u2), e2.enter(d2), e2.consume(t3), E2) : y2 && p(t3) ? h(e2, S2, "whitespace")(t3) : !y2 && f(t3) ? b(e2, S2)(t3) : O2(t3);
89
+ }
90
+ function L2(t3) {
91
+ const n3 = w2 + "Marker";
92
+ return e2.enter(u2), e2.enter(w2), e2.enter(n3), e2.consume(t3), e2.exit(n3), T2;
93
+ }
94
+ function T2(t3) {
95
+ if (null === t3 || 34 === t3 || 35 === t3 || 39 === t3 || 46 === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 || 125 === t3 || f(t3)) return n2(t3);
96
+ const r2 = w2 + "Value";
97
+ return e2.enter(r2), e2.consume(t3), D2;
98
+ }
99
+ function D2(t3) {
100
+ if (null === t3 || 34 === t3 || 39 === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3) return n2(t3);
101
+ if (35 === t3 || 46 === t3 || 125 === t3 || f(t3)) {
102
+ const n3 = w2 + "Value";
103
+ return e2.exit(n3), e2.exit(w2), e2.exit(u2), S2(t3);
104
+ }
105
+ return e2.consume(t3), D2;
106
+ }
107
+ function E2(t3) {
108
+ return 45 === t3 || 46 === t3 || 58 === t3 || 95 === t3 || i(t3) ? (e2.consume(t3), E2) : (e2.exit(d2), y2 && p(t3) ? h(e2, A2, "whitespace")(t3) : !y2 && f(t3) ? b(e2, A2)(t3) : A2(t3));
109
+ }
110
+ function A2(t3) {
111
+ return 61 === t3 ? (e2.enter(m2), e2.consume(t3), e2.exit(m2), C2) : (e2.exit(u2), S2(t3));
112
+ }
113
+ function C2(t3) {
114
+ return null === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 || 125 === t3 || y2 && s(t3) ? n2(t3) : 34 === t3 || 39 === t3 ? (e2.enter(g2), e2.enter(v2), e2.consume(t3), e2.exit(v2), q2 = t3, z2) : y2 && p(t3) ? h(e2, C2, "whitespace")(t3) : !y2 && f(t3) ? b(e2, C2)(t3) : (e2.enter(x2), e2.enter(k2), e2.consume(t3), q2 = void 0, F2);
115
+ }
116
+ function F2(t3) {
117
+ return null === t3 || 34 === t3 || 39 === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 ? n2(t3) : 125 === t3 || f(t3) ? (e2.exit(k2), e2.exit(x2), e2.exit(u2), S2(t3)) : (e2.consume(t3), F2);
118
+ }
119
+ function z2(t3) {
120
+ return t3 === q2 ? (e2.enter(v2), e2.consume(t3), e2.exit(v2), e2.exit(g2), e2.exit(u2), R2) : (e2.enter(x2), I2(t3));
121
+ }
122
+ function I2(t3) {
123
+ return t3 === q2 ? (e2.exit(x2), z2(t3)) : null === t3 ? n2(t3) : s(t3) ? y2 ? n2(t3) : b(e2, I2)(t3) : (e2.enter(k2), e2.consume(t3), M2);
124
+ }
125
+ function M2(t3) {
126
+ return t3 === q2 || null === t3 || s(t3) ? (e2.exit(k2), I2(t3)) : (e2.consume(t3), M2);
127
+ }
128
+ function R2(e3) {
129
+ return 125 === e3 || f(e3) ? S2(e3) : O2(e3);
130
+ }
131
+ function O2(r2) {
132
+ return 125 === r2 ? (e2.enter(c2), e2.consume(r2), e2.exit(c2), e2.exit(o2), t2) : n2(r2);
133
+ }
134
+ }
135
+ function v(e2, t2, n2, r2, i2, o2, c2) {
136
+ let u2, a2 = 0, l2 = 0;
137
+ return function(t3) {
138
+ return e2.enter(r2), e2.enter(i2), e2.consume(t3), e2.exit(i2), f2;
139
+ };
140
+ function f2(n3) {
141
+ return 93 === n3 ? (e2.enter(i2), e2.consume(n3), e2.exit(i2), e2.exit(r2), t2) : (e2.enter(o2), p2(n3));
142
+ }
143
+ function p2(t3) {
144
+ if (93 === t3 && !l2) return g2(t3);
145
+ const n3 = e2.enter("chunkText", { contentType: "text", previous: u2 });
146
+ return u2 && (u2.next = n3), u2 = n3, d2(t3);
147
+ }
148
+ function d2(t3) {
149
+ return null === t3 || a2 > 999 || 91 === t3 && ++l2 > 32 ? n2(t3) : 93 !== t3 || l2-- ? s(t3) ? c2 ? n2(t3) : (e2.consume(t3), e2.exit("chunkText"), p2) : (e2.consume(t3), 92 === t3 ? m2 : d2) : (e2.exit("chunkText"), g2(t3));
150
+ }
151
+ function m2(t3) {
152
+ return 91 === t3 || 92 === t3 || 93 === t3 ? (e2.consume(t3), a2++, d2) : d2(t3);
153
+ }
154
+ function g2(n3) {
155
+ return e2.exit(o2), e2.enter(i2), e2.consume(n3), e2.exit(i2), e2.exit(r2), t2;
156
+ }
157
+ }
158
+ function k(e2, t2, n2, o2) {
159
+ const c2 = this;
160
+ return function(t3) {
161
+ return r(t3) ? (e2.enter(o2), e2.consume(t3), u2) : n2(t3);
162
+ };
163
+ function u2(r2) {
164
+ return 45 === r2 || 95 === r2 || i(r2) ? (e2.consume(r2), u2) : (e2.exit(o2), 45 === c2.previous || 95 === c2.previous ? n2(r2) : t2(r2));
165
+ }
166
+ }
167
+ const y = { tokenize: function(e2, t2, n2) {
168
+ const r2 = this, i2 = r2.events[r2.events.length - 1], o2 = i2 && "linePrefix" === i2[1].type ? i2[2].sliceSerialize(i2[1], true).length : 0;
169
+ let c2, u2 = 0;
170
+ return function(t3) {
171
+ return e2.enter("directiveContainer"), e2.enter("directiveContainerFence"), e2.enter("directiveContainerSequence"), a2(t3);
172
+ };
173
+ function a2(t3) {
174
+ return 58 === t3 ? (e2.consume(t3), u2++, a2) : u2 < 3 ? n2(t3) : (e2.exit("directiveContainerSequence"), k.call(r2, e2, l2, n2, "directiveContainerName")(t3));
175
+ }
176
+ function l2(t3) {
177
+ return 91 === t3 ? e2.attempt(w, f2, f2)(t3) : f2(t3);
178
+ }
179
+ function f2(t3) {
180
+ return 123 === t3 ? e2.attempt(q, p2, p2)(t3) : p2(t3);
181
+ }
182
+ function p2(t3) {
183
+ return h(e2, d2, "whitespace")(t3);
184
+ }
185
+ function d2(i3) {
186
+ return e2.exit("directiveContainerFence"), null === i3 ? m2(i3) : s(i3) ? r2.interrupt ? t2(i3) : e2.attempt(S, g2, m2)(i3) : n2(i3);
187
+ }
188
+ function m2(n3) {
189
+ return e2.exit("directiveContainer"), t2(n3);
190
+ }
191
+ function g2(n3) {
192
+ return null === n3 ? (e2.exit("directiveContainer"), t2(n3)) : (e2.enter("directiveContainerContent"), b2(n3));
193
+ }
194
+ function b2(t3) {
195
+ return null === t3 ? T2(t3) : e2.attempt({ tokenize: D2, partial: true }, T2, o2 ? h(e2, x2, "linePrefix", o2 + 1) : x2)(t3);
196
+ }
197
+ function x2(t3) {
198
+ if (null === t3) return T2(t3);
199
+ const n3 = e2.enter("chunkDocument", { contentType: "document", previous: c2 });
200
+ return c2 && (c2.next = n3), c2 = n3, v2(t3);
201
+ }
202
+ function v2(t3) {
203
+ if (null === t3) {
204
+ const n3 = e2.exit("chunkDocument");
205
+ return r2.parser.lazy[n3.start.line] = false, T2(t3);
206
+ }
207
+ return s(t3) ? e2.check(S, y2, L2)(t3) : (e2.consume(t3), v2);
208
+ }
209
+ function y2(t3) {
210
+ e2.consume(t3);
211
+ const n3 = e2.exit("chunkDocument");
212
+ return r2.parser.lazy[n3.start.line] = false, b2;
213
+ }
214
+ function L2(t3) {
215
+ const n3 = e2.exit("chunkDocument");
216
+ return r2.parser.lazy[n3.start.line] = false, T2(t3);
217
+ }
218
+ function T2(n3) {
219
+ return e2.exit("directiveContainerContent"), e2.exit("directiveContainer"), t2(n3);
220
+ }
221
+ function D2(e3, t3, n3) {
222
+ let r3 = 0;
223
+ return h(e3, function(t4) {
224
+ return e3.enter("directiveContainerFence"), e3.enter("directiveContainerSequence"), i3(t4);
225
+ }, "linePrefix", 4);
226
+ function i3(t4) {
227
+ return 58 === t4 ? (e3.consume(t4), r3++, i3) : r3 < u2 ? n3(t4) : (e3.exit("directiveContainerSequence"), h(e3, o3, "whitespace")(t4));
228
+ }
229
+ function o3(r4) {
230
+ return null === r4 || s(r4) ? (e3.exit("directiveContainerFence"), t3(r4)) : n3(r4);
231
+ }
232
+ }
233
+ }, concrete: true }, w = { tokenize: function(e2, t2, n2) {
234
+ return v(e2, t2, n2, "directiveContainerLabel", "directiveContainerLabelMarker", "directiveContainerLabelString", true);
235
+ }, partial: true }, q = { tokenize: function(e2, t2, n2) {
236
+ return x(e2, t2, n2, "directiveContainerAttributes", "directiveContainerAttributesMarker", "directiveContainerAttribute", "directiveContainerAttributeId", "directiveContainerAttributeClass", "directiveContainerAttributeName", "directiveContainerAttributeInitializerMarker", "directiveContainerAttributeValueLiteral", "directiveContainerAttributeValue", "directiveContainerAttributeValueMarker", "directiveContainerAttributeValueData", true);
237
+ }, partial: true }, S = { tokenize: function(e2, t2, n2) {
238
+ const r2 = this;
239
+ return function(t3) {
240
+ return e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), i2;
241
+ };
242
+ function i2(e3) {
243
+ return r2.parser.lazy[r2.now().line] ? n2(e3) : t2(e3);
244
+ }
245
+ }, partial: true }, L = { tokenize: function(e2, t2, n2) {
246
+ const r2 = this;
247
+ return function(t3) {
248
+ return e2.enter("directiveLeaf"), e2.enter("directiveLeafSequence"), e2.consume(t3), i2;
249
+ };
250
+ function i2(t3) {
251
+ return 58 === t3 ? (e2.consume(t3), e2.exit("directiveLeafSequence"), k.call(r2, e2, o2, n2, "directiveLeafName")) : n2(t3);
252
+ }
253
+ function o2(t3) {
254
+ return 91 === t3 ? e2.attempt(T, c2, c2)(t3) : c2(t3);
255
+ }
256
+ function c2(t3) {
257
+ return 123 === t3 ? e2.attempt(D, u2, u2)(t3) : u2(t3);
258
+ }
259
+ function u2(t3) {
260
+ return h(e2, a2, "whitespace")(t3);
261
+ }
262
+ function a2(r3) {
263
+ return null === r3 || s(r3) ? (e2.exit("directiveLeaf"), t2(r3)) : n2(r3);
264
+ }
265
+ } }, T = { tokenize: function(e2, t2, n2) {
266
+ return v(e2, t2, n2, "directiveLeafLabel", "directiveLeafLabelMarker", "directiveLeafLabelString", true);
267
+ }, partial: true }, D = { tokenize: function(e2, t2, n2) {
268
+ return x(e2, t2, n2, "directiveLeafAttributes", "directiveLeafAttributesMarker", "directiveLeafAttribute", "directiveLeafAttributeId", "directiveLeafAttributeClass", "directiveLeafAttributeName", "directiveLeafAttributeInitializerMarker", "directiveLeafAttributeValueLiteral", "directiveLeafAttributeValue", "directiveLeafAttributeValueMarker", "directiveLeafAttributeValueData", true);
269
+ }, partial: true }, E = { tokenize: function(e2, t2, n2) {
270
+ const r2 = this;
271
+ return function(t3) {
272
+ return e2.enter("directiveText"), e2.enter("directiveTextMarker"), e2.consume(t3), e2.exit("directiveTextMarker"), k.call(r2, e2, i2, n2, "directiveTextName");
273
+ };
274
+ function i2(t3) {
275
+ return 58 === t3 ? n2(t3) : 91 === t3 ? e2.attempt(A, o2, o2)(t3) : o2(t3);
276
+ }
277
+ function o2(t3) {
278
+ return 123 === t3 ? e2.attempt(C, c2, c2)(t3) : c2(t3);
279
+ }
280
+ function c2(n3) {
281
+ return e2.exit("directiveText"), t2(n3);
282
+ }
283
+ }, previous: function(e2) {
284
+ return 58 !== e2 || "characterEscape" === this.events[this.events.length - 1][1].type;
285
+ } }, A = { tokenize: function(e2, t2, n2) {
286
+ return v(e2, t2, n2, "directiveTextLabel", "directiveTextLabelMarker", "directiveTextLabelString");
287
+ }, partial: true }, C = { tokenize: function(e2, t2, n2) {
288
+ return x(e2, t2, n2, "directiveTextAttributes", "directiveTextAttributesMarker", "directiveTextAttribute", "directiveTextAttributeId", "directiveTextAttributeClass", "directiveTextAttributeName", "directiveTextAttributeInitializerMarker", "directiveTextAttributeValueLiteral", "directiveTextAttributeValue", "directiveTextAttributeValueMarker", "directiveTextAttributeValueData");
289
+ }, partial: true };
290
+ function F() {
291
+ return { text: { 58: E }, flow: { 58: [y, L] } };
292
+ }
293
+ const z = { tokenize: function(e2, t2, n2) {
294
+ let r2 = 0;
295
+ return function t3(o2) {
296
+ return (87 === o2 || 119 === o2) && r2 < 3 ? (r2++, e2.consume(o2), t3) : 46 === o2 && 3 === r2 ? (e2.consume(o2), i2) : n2(o2);
297
+ };
298
+ function i2(e3) {
299
+ return null === e3 ? n2(e3) : t2(e3);
300
+ }
301
+ }, partial: true }, I = { tokenize: function(e2, t2, n2) {
302
+ let r2, i2, o2;
303
+ return c2;
304
+ function c2(t3) {
305
+ return 46 === t3 || 95 === t3 ? e2.check(R, a2, u2)(t3) : null === t3 || f(t3) || m(t3) || 45 !== t3 && d(t3) ? a2(t3) : (o2 = true, e2.consume(t3), c2);
306
+ }
307
+ function u2(t3) {
308
+ return 95 === t3 ? r2 = true : (i2 = r2, r2 = void 0), e2.consume(t3), c2;
309
+ }
310
+ function a2(e3) {
311
+ return i2 || r2 || !o2 ? n2(e3) : t2(e3);
312
+ }
313
+ }, partial: true }, M = { tokenize: function(e2, t2) {
314
+ let n2 = 0, r2 = 0;
315
+ return i2;
316
+ function i2(c2) {
317
+ return 40 === c2 ? (n2++, e2.consume(c2), i2) : 41 === c2 && r2 < n2 ? o2(c2) : 33 === c2 || 34 === c2 || 38 === c2 || 39 === c2 || 41 === c2 || 42 === c2 || 44 === c2 || 46 === c2 || 58 === c2 || 59 === c2 || 60 === c2 || 63 === c2 || 93 === c2 || 95 === c2 || 126 === c2 ? e2.check(R, t2, o2)(c2) : null === c2 || f(c2) || m(c2) ? t2(c2) : (e2.consume(c2), i2);
318
+ }
319
+ function o2(t3) {
320
+ return 41 === t3 && r2++, e2.consume(t3), i2;
321
+ }
322
+ }, partial: true }, R = { tokenize: function(e2, t2, n2) {
323
+ return i2;
324
+ function i2(r2) {
325
+ return 33 === r2 || 34 === r2 || 39 === r2 || 41 === r2 || 42 === r2 || 44 === r2 || 46 === r2 || 58 === r2 || 59 === r2 || 63 === r2 || 95 === r2 || 126 === r2 ? (e2.consume(r2), i2) : 38 === r2 ? (e2.consume(r2), c2) : 93 === r2 ? (e2.consume(r2), o2) : 60 === r2 || null === r2 || f(r2) || m(r2) ? t2(r2) : n2(r2);
326
+ }
327
+ function o2(e3) {
328
+ return null === e3 || 40 === e3 || 91 === e3 || f(e3) || m(e3) ? t2(e3) : i2(e3);
329
+ }
330
+ function c2(e3) {
331
+ return r(e3) ? u2(e3) : n2(e3);
332
+ }
333
+ function u2(t3) {
334
+ return 59 === t3 ? (e2.consume(t3), i2) : r(t3) ? (e2.consume(t3), u2) : n2(t3);
335
+ }
336
+ }, partial: true }, O = { tokenize: function(e2, t2, n2) {
337
+ return function(t3) {
338
+ return e2.consume(t3), r2;
339
+ };
340
+ function r2(e3) {
341
+ return i(e3) ? n2(e3) : t2(e3);
342
+ }
343
+ }, partial: true }, P = { tokenize: function(e2, t2, n2) {
344
+ const r2 = this;
345
+ return function(t3) {
346
+ return 87 !== t3 && 119 !== t3 || !H.call(r2, r2.previous) || W(r2.events) ? n2(t3) : (e2.enter("literalAutolink"), e2.enter("literalAutolinkWww"), e2.check(z, e2.attempt(I, e2.attempt(M, i2), n2), n2)(t3));
347
+ };
348
+ function i2(n3) {
349
+ return e2.exit("literalAutolinkWww"), e2.exit("literalAutolink"), t2(n3);
350
+ }
351
+ }, previous: H }, N = { tokenize: function(e2, t2, n2) {
352
+ const i2 = this;
353
+ let o2 = "", u2 = false;
354
+ return function(t3) {
355
+ return 72 !== t3 && 104 !== t3 || !U.call(i2, i2.previous) || W(i2.events) ? n2(t3) : (e2.enter("literalAutolink"), e2.enter("literalAutolinkHttp"), o2 += String.fromCodePoint(t3), e2.consume(t3), a2);
356
+ };
357
+ function a2(t3) {
358
+ if (r(t3) && o2.length < 5) return o2 += String.fromCodePoint(t3), e2.consume(t3), a2;
359
+ if (58 === t3) {
360
+ const n3 = o2.toLowerCase();
361
+ if ("http" === n3 || "https" === n3) return e2.consume(t3), l2;
362
+ }
363
+ return n2(t3);
364
+ }
365
+ function l2(t3) {
366
+ return 47 === t3 ? (e2.consume(t3), u2 ? s2 : (u2 = true, l2)) : n2(t3);
367
+ }
368
+ function s2(t3) {
369
+ return null === t3 || c(t3) || f(t3) || m(t3) || d(t3) ? n2(t3) : e2.attempt(I, e2.attempt(M, p2), n2)(t3);
370
+ }
371
+ function p2(n3) {
372
+ return e2.exit("literalAutolinkHttp"), e2.exit("literalAutolink"), t2(n3);
373
+ }
374
+ }, previous: U }, V = { tokenize: function(e2, t2, n2) {
375
+ const o2 = this;
376
+ let c2, u2;
377
+ return function(t3) {
378
+ return Q(t3) && G.call(o2, o2.previous) && !W(o2.events) ? (e2.enter("literalAutolink"), e2.enter("literalAutolinkEmail"), a2(t3)) : n2(t3);
379
+ };
380
+ function a2(t3) {
381
+ return Q(t3) ? (e2.consume(t3), a2) : 64 === t3 ? (e2.consume(t3), l2) : n2(t3);
382
+ }
383
+ function l2(t3) {
384
+ return 46 === t3 ? e2.check(O, f2, s2)(t3) : 45 === t3 || 95 === t3 || i(t3) ? (u2 = true, e2.consume(t3), l2) : f2(t3);
385
+ }
386
+ function s2(t3) {
387
+ return e2.consume(t3), c2 = true, l2;
388
+ }
389
+ function f2(i2) {
390
+ return u2 && c2 && r(o2.previous) ? (e2.exit("literalAutolinkEmail"), e2.exit("literalAutolink"), t2(i2)) : n2(i2);
391
+ }
392
+ }, previous: G }, _ = {};
393
+ function B() {
394
+ return { text: _ };
395
+ }
396
+ let j = 48;
397
+ for (; j < 123; ) _[j] = V, j++, 58 === j ? j = 65 : 91 === j && (j = 97);
398
+ function H(e2) {
399
+ return null === e2 || 40 === e2 || 42 === e2 || 95 === e2 || 91 === e2 || 93 === e2 || 126 === e2 || f(e2);
400
+ }
401
+ function U(e2) {
402
+ return !r(e2);
403
+ }
404
+ function G(e2) {
405
+ return !(47 === e2 || Q(e2));
406
+ }
407
+ function Q(e2) {
408
+ return 43 === e2 || 45 === e2 || 46 === e2 || 95 === e2 || i(e2);
409
+ }
410
+ function W(e2) {
411
+ let t2 = e2.length, n2 = false;
412
+ for (; t2--; ) {
413
+ const r2 = e2[t2][1];
414
+ if (("labelLink" === r2.type || "labelImage" === r2.type) && !r2._balanced) {
415
+ n2 = true;
416
+ break;
417
+ }
418
+ if (r2._gfmAutolinkLiteralWalkedInto) {
419
+ n2 = false;
420
+ break;
421
+ }
422
+ }
423
+ return e2.length > 0 && !n2 && (e2[e2.length - 1][1]._gfmAutolinkLiteralWalkedInto = true), n2;
424
+ }
425
+ _[43] = V, _[45] = V, _[46] = V, _[95] = V, _[72] = [V, N], _[104] = [V, N], _[87] = [V, P], _[119] = [V, P];
426
+ const Z = { tokenize: function(e2, t2, n2) {
427
+ return function(t3) {
428
+ return p(t3) ? h(e2, r2, "linePrefix")(t3) : r2(t3);
429
+ };
430
+ function r2(e3) {
431
+ return null === e3 || s(e3) ? t2(e3) : n2(e3);
432
+ }
433
+ }, partial: true };
434
+ function J(e2) {
435
+ return e2.replace(/[\t\n\r ]+/g, " ").replace(/^ | $/g, "").toLowerCase().toUpperCase();
436
+ }
437
+ const Y = { tokenize: function(e2, t2, n2) {
438
+ const r2 = this;
439
+ return h(e2, function(e3) {
440
+ const i2 = r2.events[r2.events.length - 1];
441
+ return i2 && "gfmFootnoteDefinitionIndent" === i2[1].type && 4 === i2[2].sliceSerialize(i2[1], true).length ? t2(e3) : n2(e3);
442
+ }, "gfmFootnoteDefinitionIndent", 5);
443
+ }, partial: true };
444
+ function K() {
445
+ return { document: { 91: { tokenize: te, continuation: { tokenize: ne }, exit: re } }, text: { 91: { tokenize: ee }, 93: { add: "after", tokenize: X, resolveTo: $ } } };
446
+ }
447
+ function X(e2, t2, n2) {
448
+ const r2 = this;
449
+ let i2 = r2.events.length;
450
+ const o2 = r2.parser.gfmFootnotes || (r2.parser.gfmFootnotes = []);
451
+ let c2;
452
+ for (; i2--; ) {
453
+ const e3 = r2.events[i2][1];
454
+ if ("labelImage" === e3.type) {
455
+ c2 = e3;
456
+ break;
457
+ }
458
+ if ("gfmFootnoteCall" === e3.type || "labelLink" === e3.type || "label" === e3.type || "image" === e3.type || "link" === e3.type) break;
459
+ }
460
+ return function(i3) {
461
+ if (!c2 || !c2._balanced) return n2(i3);
462
+ const u2 = J(r2.sliceSerialize({ start: c2.end, end: r2.now() }));
463
+ return 94 === u2.codePointAt(0) && o2.includes(u2.slice(1)) ? (e2.enter("gfmFootnoteCallLabelMarker"), e2.consume(i3), e2.exit("gfmFootnoteCallLabelMarker"), t2(i3)) : n2(i3);
464
+ };
465
+ }
466
+ function $(e2, t2) {
467
+ let n2, r2 = e2.length;
468
+ for (; r2--; ) if ("labelImage" === e2[r2][1].type && "enter" === e2[r2][0]) {
469
+ n2 = e2[r2][1];
470
+ break;
471
+ }
472
+ e2[r2 + 1][1].type = "data", e2[r2 + 3][1].type = "gfmFootnoteCallLabelMarker";
473
+ const i2 = { type: "gfmFootnoteCall", start: Object.assign({}, e2[r2 + 3][1].start), end: Object.assign({}, e2[e2.length - 1][1].end) }, o2 = { type: "gfmFootnoteCallMarker", start: Object.assign({}, e2[r2 + 3][1].end), end: Object.assign({}, e2[r2 + 3][1].end) };
474
+ o2.end.column++, o2.end.offset++, o2.end._bufferIndex++;
475
+ const c2 = { type: "gfmFootnoteCallString", start: Object.assign({}, o2.end), end: Object.assign({}, e2[e2.length - 1][1].start) }, u2 = { type: "chunkString", contentType: "string", start: Object.assign({}, c2.start), end: Object.assign({}, c2.end) }, a2 = [e2[r2 + 1], e2[r2 + 2], ["enter", i2, t2], e2[r2 + 3], e2[r2 + 4], ["enter", o2, t2], ["exit", o2, t2], ["enter", c2, t2], ["enter", u2, t2], ["exit", u2, t2], ["exit", c2, t2], e2[e2.length - 2], e2[e2.length - 1], ["exit", i2, t2]];
476
+ return e2.splice(r2, e2.length - r2 + 1, ...a2), e2;
477
+ }
478
+ function ee(e2, t2, n2) {
479
+ const r2 = this, i2 = r2.parser.gfmFootnotes || (r2.parser.gfmFootnotes = []);
480
+ let o2, c2 = 0;
481
+ return function(t3) {
482
+ return e2.enter("gfmFootnoteCall"), e2.enter("gfmFootnoteCallLabelMarker"), e2.consume(t3), e2.exit("gfmFootnoteCallLabelMarker"), u2;
483
+ };
484
+ function u2(t3) {
485
+ return 94 !== t3 ? n2(t3) : (e2.enter("gfmFootnoteCallMarker"), e2.consume(t3), e2.exit("gfmFootnoteCallMarker"), e2.enter("gfmFootnoteCallString"), e2.enter("chunkString").contentType = "string", a2);
486
+ }
487
+ function a2(u3) {
488
+ if (c2 > 999 || 93 === u3 && !o2 || null === u3 || 91 === u3 || f(u3)) return n2(u3);
489
+ if (93 === u3) {
490
+ e2.exit("chunkString");
491
+ const o3 = e2.exit("gfmFootnoteCallString");
492
+ return i2.includes(J(r2.sliceSerialize(o3))) ? (e2.enter("gfmFootnoteCallLabelMarker"), e2.consume(u3), e2.exit("gfmFootnoteCallLabelMarker"), e2.exit("gfmFootnoteCall"), t2) : n2(u3);
493
+ }
494
+ return f(u3) || (o2 = true), c2++, e2.consume(u3), 92 === u3 ? l2 : a2;
495
+ }
496
+ function l2(t3) {
497
+ return 91 === t3 || 92 === t3 || 93 === t3 ? (e2.consume(t3), c2++, a2) : a2(t3);
498
+ }
499
+ }
500
+ function te(e2, t2, n2) {
501
+ const r2 = this, i2 = r2.parser.gfmFootnotes || (r2.parser.gfmFootnotes = []);
502
+ let o2, c2, u2 = 0;
503
+ return function(t3) {
504
+ return e2.enter("gfmFootnoteDefinition")._container = true, e2.enter("gfmFootnoteDefinitionLabel"), e2.enter("gfmFootnoteDefinitionLabelMarker"), e2.consume(t3), e2.exit("gfmFootnoteDefinitionLabelMarker"), a2;
505
+ };
506
+ function a2(t3) {
507
+ return 94 === t3 ? (e2.enter("gfmFootnoteDefinitionMarker"), e2.consume(t3), e2.exit("gfmFootnoteDefinitionMarker"), e2.enter("gfmFootnoteDefinitionLabelString"), e2.enter("chunkString").contentType = "string", l2) : n2(t3);
508
+ }
509
+ function l2(t3) {
510
+ if (u2 > 999 || 93 === t3 && !c2 || null === t3 || 91 === t3 || f(t3)) return n2(t3);
511
+ if (93 === t3) {
512
+ e2.exit("chunkString");
513
+ const n3 = e2.exit("gfmFootnoteDefinitionLabelString");
514
+ return o2 = J(r2.sliceSerialize(n3)), e2.enter("gfmFootnoteDefinitionLabelMarker"), e2.consume(t3), e2.exit("gfmFootnoteDefinitionLabelMarker"), e2.exit("gfmFootnoteDefinitionLabel"), p2;
515
+ }
516
+ return f(t3) || (c2 = true), u2++, e2.consume(t3), 92 === t3 ? s2 : l2;
517
+ }
518
+ function s2(t3) {
519
+ return 91 === t3 || 92 === t3 || 93 === t3 ? (e2.consume(t3), u2++, l2) : l2(t3);
520
+ }
521
+ function p2(t3) {
522
+ return 58 === t3 ? (e2.enter("definitionMarker"), e2.consume(t3), e2.exit("definitionMarker"), i2.includes(o2) || i2.push(o2), h(e2, d2, "gfmFootnoteDefinitionWhitespace")) : n2(t3);
523
+ }
524
+ function d2(e3) {
525
+ return t2(e3);
526
+ }
527
+ }
528
+ function ne(e2, t2, n2) {
529
+ return e2.check(Z, t2, e2.attempt(Y, t2, n2));
530
+ }
531
+ function re(e2) {
532
+ e2.exit("gfmFootnoteDefinition");
533
+ }
534
+ class ie {
535
+ constructor() {
536
+ this.map = [];
537
+ }
538
+ add(e2, t2, n2) {
539
+ !function(e3, t3, n3, r2) {
540
+ let i2 = 0;
541
+ if (0 !== n3 || 0 !== r2.length) {
542
+ for (; i2 < e3.map.length; ) {
543
+ if (e3.map[i2][0] === t3) return e3.map[i2][1] += n3, void e3.map[i2][2].push(...r2);
544
+ i2 += 1;
545
+ }
546
+ e3.map.push([t3, n3, r2]);
547
+ }
548
+ }(this, e2, t2, n2);
549
+ }
550
+ consume(e2) {
551
+ if (this.map.sort(function(e3, t3) {
552
+ return e3[0] - t3[0];
553
+ }), 0 === this.map.length) return;
554
+ let t2 = this.map.length;
555
+ const n2 = [];
556
+ for (; t2 > 0; ) t2 -= 1, n2.push(e2.slice(this.map[t2][0] + this.map[t2][1]), this.map[t2][2]), e2.length = this.map[t2][0];
557
+ n2.push([...e2]), e2.length = 0;
558
+ let r2 = n2.pop();
559
+ for (; r2; ) e2.push(...r2), r2 = n2.pop();
560
+ this.map.length = 0;
561
+ }
562
+ }
563
+ function oe(e2, t2) {
564
+ let n2 = false;
565
+ const r2 = [];
566
+ for (; t2 < e2.length; ) {
567
+ const i2 = e2[t2];
568
+ if (n2) {
569
+ if ("enter" === i2[0]) "tableContent" === i2[1].type && r2.push("tableDelimiterMarker" === e2[t2 + 1][1].type ? "left" : "none");
570
+ else if ("tableContent" === i2[1].type) {
571
+ if ("tableDelimiterMarker" === e2[t2 - 1][1].type) {
572
+ const e3 = r2.length - 1;
573
+ r2[e3] = "left" === r2[e3] ? "center" : "right";
574
+ }
575
+ } else if ("tableDelimiterRow" === i2[1].type) break;
576
+ } else "enter" === i2[0] && "tableDelimiterRow" === i2[1].type && (n2 = true);
577
+ t2 += 1;
578
+ }
579
+ return r2;
580
+ }
581
+ function ce() {
582
+ return { flow: { null: { tokenize: ue, resolveAll: ae } } };
583
+ }
584
+ function ue(e2, t2, n2) {
585
+ const r2 = this;
586
+ let i2, o2 = 0, c2 = 0;
587
+ return function(e3) {
588
+ let t3 = r2.events.length - 1;
589
+ for (; t3 > -1; ) {
590
+ const e4 = r2.events[t3][1].type;
591
+ if ("lineEnding" !== e4 && "linePrefix" !== e4) break;
592
+ t3--;
593
+ }
594
+ const i3 = t3 > -1 ? r2.events[t3][1].type : null, o3 = "tableHead" === i3 || "tableRow" === i3 ? S2 : u2;
595
+ return o3 === S2 && r2.parser.lazy[r2.now().line] ? n2(e3) : o3(e3);
596
+ };
597
+ function u2(t3) {
598
+ return e2.enter("tableHead"), e2.enter("tableRow"), function(e3) {
599
+ return 124 === e3 || (i2 = true, c2 += 1), a2(e3);
600
+ }(t3);
601
+ }
602
+ function a2(t3) {
603
+ return null === t3 ? n2(t3) : s(t3) ? c2 > 1 ? (c2 = 0, r2.interrupt = true, e2.exit("tableRow"), e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), m2) : n2(t3) : p(t3) ? h(e2, a2, "whitespace")(t3) : (c2 += 1, i2 && (i2 = false, o2 += 1), 124 === t3 ? (e2.enter("tableCellDivider"), e2.consume(t3), e2.exit("tableCellDivider"), i2 = true, a2) : (e2.enter("data"), l2(t3)));
604
+ }
605
+ function l2(t3) {
606
+ return null === t3 || 124 === t3 || f(t3) ? (e2.exit("data"), a2(t3)) : (e2.consume(t3), 92 === t3 ? d2 : l2);
607
+ }
608
+ function d2(t3) {
609
+ return 92 === t3 || 124 === t3 ? (e2.consume(t3), l2) : l2(t3);
610
+ }
611
+ function m2(t3) {
612
+ return r2.interrupt = false, r2.parser.lazy[r2.now().line] ? n2(t3) : (e2.enter("tableDelimiterRow"), i2 = false, p(t3) ? h(e2, g2, "linePrefix", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t3) : g2(t3));
613
+ }
614
+ function g2(t3) {
615
+ return 45 === t3 || 58 === t3 ? x2(t3) : 124 === t3 ? (i2 = true, e2.enter("tableCellDivider"), e2.consume(t3), e2.exit("tableCellDivider"), b2) : q2(t3);
616
+ }
617
+ function b2(t3) {
618
+ return p(t3) ? h(e2, x2, "whitespace")(t3) : x2(t3);
619
+ }
620
+ function x2(t3) {
621
+ return 58 === t3 ? (c2 += 1, i2 = true, e2.enter("tableDelimiterMarker"), e2.consume(t3), e2.exit("tableDelimiterMarker"), v2) : 45 === t3 ? (c2 += 1, v2(t3)) : null === t3 || s(t3) ? w2(t3) : q2(t3);
622
+ }
623
+ function v2(t3) {
624
+ return 45 === t3 ? (e2.enter("tableDelimiterFiller"), k2(t3)) : q2(t3);
625
+ }
626
+ function k2(t3) {
627
+ return 45 === t3 ? (e2.consume(t3), k2) : 58 === t3 ? (i2 = true, e2.exit("tableDelimiterFiller"), e2.enter("tableDelimiterMarker"), e2.consume(t3), e2.exit("tableDelimiterMarker"), y2) : (e2.exit("tableDelimiterFiller"), y2(t3));
628
+ }
629
+ function y2(t3) {
630
+ return p(t3) ? h(e2, w2, "whitespace")(t3) : w2(t3);
631
+ }
632
+ function w2(n3) {
633
+ return 124 === n3 ? g2(n3) : (null === n3 || s(n3)) && i2 && o2 === c2 ? (e2.exit("tableDelimiterRow"), e2.exit("tableHead"), t2(n3)) : q2(n3);
634
+ }
635
+ function q2(e3) {
636
+ return n2(e3);
637
+ }
638
+ function S2(t3) {
639
+ return e2.enter("tableRow"), L2(t3);
640
+ }
641
+ function L2(n3) {
642
+ return 124 === n3 ? (e2.enter("tableCellDivider"), e2.consume(n3), e2.exit("tableCellDivider"), L2) : null === n3 || s(n3) ? (e2.exit("tableRow"), t2(n3)) : p(n3) ? h(e2, L2, "whitespace")(n3) : (e2.enter("data"), T2(n3));
643
+ }
644
+ function T2(t3) {
645
+ return null === t3 || 124 === t3 || f(t3) ? (e2.exit("data"), L2(t3)) : (e2.consume(t3), 92 === t3 ? D2 : T2);
646
+ }
647
+ function D2(t3) {
648
+ return 92 === t3 || 124 === t3 ? (e2.consume(t3), T2) : T2(t3);
649
+ }
650
+ }
651
+ function ae(e2, t2) {
652
+ let n2, r2, i2, o2 = -1, c2 = true, u2 = 0, a2 = [0, 0, 0, 0], l2 = [0, 0, 0, 0], s2 = false, f2 = 0;
653
+ const p2 = new ie();
654
+ for (; ++o2 < e2.length; ) {
655
+ const d2 = e2[o2], m2 = d2[1];
656
+ "enter" === d2[0] ? "tableHead" === m2.type ? (s2 = false, 0 !== f2 && (se(p2, t2, f2, n2, r2), r2 = void 0, f2 = 0), n2 = { type: "table", start: Object.assign({}, m2.start), end: Object.assign({}, m2.end) }, p2.add(o2, 0, [["enter", n2, t2]])) : "tableRow" === m2.type || "tableDelimiterRow" === m2.type ? (c2 = true, i2 = void 0, a2 = [0, 0, 0, 0], l2 = [0, o2 + 1, 0, 0], s2 && (s2 = false, r2 = { type: "tableBody", start: Object.assign({}, m2.start), end: Object.assign({}, m2.end) }, p2.add(o2, 0, [["enter", r2, t2]])), u2 = "tableDelimiterRow" === m2.type ? 2 : r2 ? 3 : 1) : !u2 || "data" !== m2.type && "tableDelimiterMarker" !== m2.type && "tableDelimiterFiller" !== m2.type ? "tableCellDivider" === m2.type && (c2 ? c2 = false : (0 !== a2[1] && (l2[0] = l2[1], i2 = le(p2, t2, a2, u2, void 0, i2)), a2 = l2, l2 = [a2[1], o2, 0, 0])) : (c2 = false, 0 === l2[2] && (0 !== a2[1] && (l2[0] = l2[1], i2 = le(p2, t2, a2, u2, void 0, i2), a2 = [0, 0, 0, 0]), l2[2] = o2)) : "tableHead" === m2.type ? (s2 = true, f2 = o2) : "tableRow" === m2.type || "tableDelimiterRow" === m2.type ? (f2 = o2, 0 !== a2[1] ? (l2[0] = l2[1], i2 = le(p2, t2, a2, u2, o2, i2)) : 0 !== l2[1] && (i2 = le(p2, t2, l2, u2, o2, i2)), u2 = 0) : !u2 || "data" !== m2.type && "tableDelimiterMarker" !== m2.type && "tableDelimiterFiller" !== m2.type || (l2[3] = o2);
657
+ }
658
+ for (0 !== f2 && se(p2, t2, f2, n2, r2), p2.consume(t2.events), o2 = -1; ++o2 < t2.events.length; ) {
659
+ const e3 = t2.events[o2];
660
+ "enter" === e3[0] && "table" === e3[1].type && (e3[1]._align = oe(t2.events, o2));
661
+ }
662
+ return e2;
663
+ }
664
+ function le(e2, t2, n2, r2, i2, o2) {
665
+ const c2 = 1 === r2 ? "tableHeader" : 2 === r2 ? "tableDelimiter" : "tableData";
666
+ 0 !== n2[0] && (o2.end = Object.assign({}, fe(t2.events, n2[0])), e2.add(n2[0], 0, [["exit", o2, t2]]));
667
+ const u2 = fe(t2.events, n2[1]);
668
+ if (o2 = { type: c2, start: Object.assign({}, u2), end: Object.assign({}, u2) }, e2.add(n2[1], 0, [["enter", o2, t2]]), 0 !== n2[2]) {
669
+ const i3 = fe(t2.events, n2[2]), o3 = fe(t2.events, n2[3]), c3 = { type: "tableContent", start: Object.assign({}, i3), end: Object.assign({}, o3) };
670
+ if (e2.add(n2[2], 0, [["enter", c3, t2]]), 2 !== r2) {
671
+ const r3 = t2.events[n2[2]], i4 = t2.events[n2[3]];
672
+ if (r3[1].end = Object.assign({}, i4[1].end), r3[1].type = "chunkText", r3[1].contentType = "text", n2[3] > n2[2] + 1) {
673
+ const t3 = n2[2] + 1, r4 = n2[3] - n2[2] - 1;
674
+ e2.add(t3, r4, []);
675
+ }
676
+ }
677
+ e2.add(n2[3] + 1, 0, [["exit", c3, t2]]);
678
+ }
679
+ return void 0 !== i2 && (o2.end = Object.assign({}, fe(t2.events, i2)), e2.add(i2, 0, [["exit", o2, t2]]), o2 = void 0), o2;
680
+ }
681
+ function se(e2, t2, n2, r2, i2) {
682
+ const o2 = [], c2 = fe(t2.events, n2);
683
+ i2 && (i2.end = Object.assign({}, c2), o2.push(["exit", i2, t2])), r2.end = Object.assign({}, c2), o2.push(["exit", r2, t2]), e2.add(n2 + 1, 0, o2);
684
+ }
685
+ function fe(e2, t2) {
686
+ const n2 = e2[t2], r2 = "enter" === n2[0] ? "start" : "end";
687
+ return n2[1][r2];
688
+ }
689
+ const pe = { tokenize: function(e2, t2, n2) {
690
+ const r2 = this, i2 = r2.events[r2.events.length - 1], o2 = i2 && "linePrefix" === i2[1].type ? i2[2].sliceSerialize(i2[1], true).length : 0;
691
+ let c2 = 0;
692
+ return function(t3) {
693
+ return e2.enter("mathFlow"), e2.enter("mathFlowFence"), e2.enter("mathFlowFenceSequence"), u2(t3);
694
+ };
695
+ function u2(t3) {
696
+ return 36 === t3 ? (e2.consume(t3), c2++, u2) : c2 < 2 ? n2(t3) : (e2.exit("mathFlowFenceSequence"), h(e2, a2, "whitespace")(t3));
697
+ }
698
+ function a2(t3) {
699
+ return null === t3 || s(t3) ? f2(t3) : (e2.enter("mathFlowFenceMeta"), e2.enter("chunkString", { contentType: "string" }), l2(t3));
700
+ }
701
+ function l2(t3) {
702
+ return null === t3 || s(t3) ? (e2.exit("chunkString"), e2.exit("mathFlowFenceMeta"), f2(t3)) : 36 === t3 ? n2(t3) : (e2.consume(t3), l2);
703
+ }
704
+ function f2(n3) {
705
+ return e2.exit("mathFlowFence"), r2.interrupt ? t2(n3) : e2.attempt(de, p2, b2)(n3);
706
+ }
707
+ function p2(t3) {
708
+ return e2.attempt({ tokenize: x2, partial: true }, b2, d2)(t3);
709
+ }
710
+ function d2(t3) {
711
+ return (o2 ? h(e2, m2, "linePrefix", o2 + 1) : m2)(t3);
712
+ }
713
+ function m2(t3) {
714
+ return null === t3 ? b2(t3) : s(t3) ? e2.attempt(de, p2, b2)(t3) : (e2.enter("mathFlowValue"), g2(t3));
715
+ }
716
+ function g2(t3) {
717
+ return null === t3 || s(t3) ? (e2.exit("mathFlowValue"), m2(t3)) : (e2.consume(t3), g2);
718
+ }
719
+ function b2(n3) {
720
+ return e2.exit("mathFlow"), t2(n3);
721
+ }
722
+ function x2(e3, t3, n3) {
723
+ let i3 = 0;
724
+ return h(e3, function(t4) {
725
+ return e3.enter("mathFlowFence"), e3.enter("mathFlowFenceSequence"), o3(t4);
726
+ }, "linePrefix", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
727
+ function o3(t4) {
728
+ return 36 === t4 ? (i3++, e3.consume(t4), o3) : i3 < c2 ? n3(t4) : (e3.exit("mathFlowFenceSequence"), h(e3, u3, "whitespace")(t4));
729
+ }
730
+ function u3(r3) {
731
+ return null === r3 || s(r3) ? (e3.exit("mathFlowFence"), t3(r3)) : n3(r3);
732
+ }
733
+ }
734
+ }, concrete: true }, de = { tokenize: function(e2, t2, n2) {
735
+ const r2 = this;
736
+ return function(n3) {
737
+ return null === n3 ? t2(n3) : (e2.enter("lineEnding"), e2.consume(n3), e2.exit("lineEnding"), i2);
738
+ };
739
+ function i2(e3) {
740
+ return r2.parser.lazy[r2.now().line] ? n2(e3) : t2(e3);
741
+ }
742
+ }, partial: true };
743
+ function me(e2) {
744
+ let t2 = (e2 || {}).singleDollarTextMath;
745
+ return null == t2 && (t2 = true), { tokenize: function(e3, n2, r2) {
746
+ let i2, o2, c2 = 0;
747
+ return function(t3) {
748
+ return e3.enter("mathText"), e3.enter("mathTextSequence"), u2(t3);
749
+ };
750
+ function u2(n3) {
751
+ return 36 === n3 ? (e3.consume(n3), c2++, u2) : c2 < 2 && !t2 ? r2(n3) : (e3.exit("mathTextSequence"), a2(n3));
752
+ }
753
+ function a2(t3) {
754
+ return null === t3 ? r2(t3) : 36 === t3 ? (o2 = e3.enter("mathTextSequence"), i2 = 0, f2(t3)) : 32 === t3 ? (e3.enter("space"), e3.consume(t3), e3.exit("space"), a2) : s(t3) ? (e3.enter("lineEnding"), e3.consume(t3), e3.exit("lineEnding"), a2) : (e3.enter("mathTextData"), l2(t3));
755
+ }
756
+ function l2(t3) {
757
+ return null === t3 || 32 === t3 || 36 === t3 || s(t3) ? (e3.exit("mathTextData"), a2(t3)) : (e3.consume(t3), l2);
758
+ }
759
+ function f2(t3) {
760
+ return 36 === t3 ? (e3.consume(t3), i2++, f2) : i2 === c2 ? (e3.exit("mathTextSequence"), e3.exit("mathText"), n2(t3)) : (o2.type = "mathTextData", l2(t3));
761
+ }
762
+ }, resolve: ge, previous: he };
763
+ }
764
+ function ge(e2) {
765
+ let t2, n2, r2 = e2.length - 4, i2 = 3;
766
+ if (!("lineEnding" !== e2[i2][1].type && "space" !== e2[i2][1].type || "lineEnding" !== e2[r2][1].type && "space" !== e2[r2][1].type)) {
767
+ for (t2 = i2; ++t2 < r2; ) if ("mathTextData" === e2[t2][1].type) {
768
+ e2[r2][1].type = "mathTextPadding", e2[i2][1].type = "mathTextPadding", i2 += 2, r2 -= 2;
769
+ break;
770
+ }
771
+ }
772
+ for (t2 = i2 - 1, r2++; ++t2 <= r2; ) void 0 === n2 ? t2 !== r2 && "lineEnding" !== e2[t2][1].type && (n2 = t2) : t2 !== r2 && "lineEnding" !== e2[t2][1].type || (e2[n2][1].type = "mathTextData", t2 !== n2 + 2 && (e2[n2][1].end = e2[t2 - 1][1].end, e2.splice(n2 + 2, t2 - n2 - 2), r2 -= t2 - n2 - 2, t2 = n2 + 2), n2 = void 0);
773
+ return e2;
774
+ }
775
+ function he(e2) {
776
+ return 36 !== e2 || "characterEscape" === this.events[this.events.length - 1][1].type;
777
+ }
778
+ function be(e2) {
779
+ return { flow: { 36: pe }, text: { 36: me(e2) } };
780
+ }
781
+ function xe(e2, t2, n2, r2) {
782
+ const i2 = e2.length;
783
+ let o2, c2 = 0;
784
+ if (t2 = t2 < 0 ? -t2 > i2 ? 0 : i2 + t2 : t2 > i2 ? i2 : t2, n2 = n2 > 0 ? n2 : 0, r2.length < 1e4) o2 = Array.from(r2), o2.unshift(t2, n2), e2.splice(...o2);
785
+ else for (n2 && e2.splice(t2, n2); c2 < r2.length; ) o2 = r2.slice(c2, c2 + 1e4), o2.unshift(t2, 0), e2.splice(...o2), c2 += 1e4, t2 += 1e4;
786
+ }
787
+ function ve(e2, t2) {
788
+ return e2.length > 0 ? (xe(e2, e2.length, 0, t2), e2) : t2;
789
+ }
790
+ const ke = {}.hasOwnProperty;
791
+ function ye(e2, t2) {
792
+ let n2;
793
+ for (n2 in t2) {
794
+ const r2 = (ke.call(e2, n2) ? e2[n2] : void 0) || (e2[n2] = {}), i2 = t2[n2];
795
+ let o2;
796
+ if (i2) for (o2 in i2) {
797
+ ke.call(r2, o2) || (r2[o2] = []);
798
+ const e3 = i2[o2];
799
+ we(r2[o2], Array.isArray(e3) ? e3 : e3 ? [e3] : []);
800
+ }
801
+ }
802
+ }
803
+ function we(e2, t2) {
804
+ let n2 = -1;
805
+ const r2 = [];
806
+ for (; ++n2 < t2.length; ) ("after" === t2[n2].add ? e2 : r2).push(t2[n2]);
807
+ xe(e2, 0, 0, r2);
808
+ }
809
+ const qe = { tokenize: function(e2) {
810
+ const t2 = e2.attempt(this.parser.constructs.contentInitial, function(n3) {
811
+ if (null !== n3) return e2.enter("lineEnding"), e2.consume(n3), e2.exit("lineEnding"), h(e2, t2, "linePrefix");
812
+ e2.consume(n3);
813
+ }, function(t3) {
814
+ return e2.enter("paragraph"), r2(t3);
815
+ });
816
+ let n2;
817
+ return t2;
818
+ function r2(t3) {
819
+ const r3 = e2.enter("chunkText", { contentType: "text", previous: n2 });
820
+ return n2 && (n2.next = r3), n2 = r3, i2(t3);
821
+ }
822
+ function i2(t3) {
823
+ return null === t3 ? (e2.exit("chunkText"), e2.exit("paragraph"), void e2.consume(t3)) : s(t3) ? (e2.consume(t3), e2.exit("chunkText"), r2) : (e2.consume(t3), i2);
824
+ }
825
+ } }, Se = { tokenize: function(e2) {
826
+ const t2 = this, n2 = [];
827
+ let r2, i2, o2, c2 = 0;
828
+ return u2;
829
+ function u2(r3) {
830
+ if (c2 < n2.length) {
831
+ const i3 = n2[c2];
832
+ return t2.containerState = i3[1], e2.attempt(i3[0].continuation, a2, l2)(r3);
833
+ }
834
+ return l2(r3);
835
+ }
836
+ function a2(e3) {
837
+ if (c2++, t2.containerState._closeFlow) {
838
+ t2.containerState._closeFlow = void 0, r2 && v2();
839
+ const n3 = t2.events.length;
840
+ let i3, o3 = n3;
841
+ for (; o3--; ) if ("exit" === t2.events[o3][0] && "chunkFlow" === t2.events[o3][1].type) {
842
+ i3 = t2.events[o3][1].end;
843
+ break;
844
+ }
845
+ x2(c2);
846
+ let u3 = n3;
847
+ for (; u3 < t2.events.length; ) t2.events[u3][1].end = Object.assign({}, i3), u3++;
848
+ return xe(t2.events, o3 + 1, 0, t2.events.slice(n3)), t2.events.length = u3, l2(e3);
849
+ }
850
+ return u2(e3);
851
+ }
852
+ function l2(i3) {
853
+ if (c2 === n2.length) {
854
+ if (!r2) return d2(i3);
855
+ if (r2.currentConstruct && r2.currentConstruct.concrete) return g2(i3);
856
+ t2.interrupt = Boolean(r2.currentConstruct && !r2._gfmTableDynamicInterruptHack);
857
+ }
858
+ return t2.containerState = {}, e2.check(Le, f2, p2)(i3);
859
+ }
860
+ function f2(e3) {
861
+ return r2 && v2(), x2(c2), d2(e3);
862
+ }
863
+ function p2(e3) {
864
+ return t2.parser.lazy[t2.now().line] = c2 !== n2.length, o2 = t2.now().offset, g2(e3);
865
+ }
866
+ function d2(n3) {
867
+ return t2.containerState = {}, e2.attempt(Le, m2, g2)(n3);
868
+ }
869
+ function m2(e3) {
870
+ return c2++, n2.push([t2.currentConstruct, t2.containerState]), d2(e3);
871
+ }
872
+ function g2(n3) {
873
+ return null === n3 ? (r2 && v2(), x2(0), void e2.consume(n3)) : (r2 = r2 || t2.parser.flow(t2.now()), e2.enter("chunkFlow", { contentType: "flow", previous: i2, _tokenizer: r2 }), h2(n3));
874
+ }
875
+ function h2(n3) {
876
+ return null === n3 ? (b2(e2.exit("chunkFlow"), true), x2(0), void e2.consume(n3)) : s(n3) ? (e2.consume(n3), b2(e2.exit("chunkFlow")), c2 = 0, t2.interrupt = void 0, u2) : (e2.consume(n3), h2);
877
+ }
878
+ function b2(e3, n3) {
879
+ const u3 = t2.sliceStream(e3);
880
+ if (n3 && u3.push(null), e3.previous = i2, i2 && (i2.next = e3), i2 = e3, r2.defineSkip(e3.start), r2.write(u3), t2.parser.lazy[e3.start.line]) {
881
+ let e4 = r2.events.length;
882
+ for (; e4--; ) if (r2.events[e4][1].start.offset < o2 && (!r2.events[e4][1].end || r2.events[e4][1].end.offset > o2)) return;
883
+ const n4 = t2.events.length;
884
+ let i3, u4, a3 = n4;
885
+ for (; a3--; ) if ("exit" === t2.events[a3][0] && "chunkFlow" === t2.events[a3][1].type) {
886
+ if (i3) {
887
+ u4 = t2.events[a3][1].end;
888
+ break;
889
+ }
890
+ i3 = true;
891
+ }
892
+ for (x2(c2), e4 = n4; e4 < t2.events.length; ) t2.events[e4][1].end = Object.assign({}, u4), e4++;
893
+ xe(t2.events, a3 + 1, 0, t2.events.slice(n4)), t2.events.length = e4;
894
+ }
895
+ }
896
+ function x2(r3) {
897
+ let i3 = n2.length;
898
+ for (; i3-- > r3; ) {
899
+ const r4 = n2[i3];
900
+ t2.containerState = r4[1], r4[0].exit.call(t2, e2);
901
+ }
902
+ n2.length = r3;
903
+ }
904
+ function v2() {
905
+ r2.write([null]), i2 = void 0, r2 = void 0, t2.containerState._closeFlow = void 0;
906
+ }
907
+ } }, Le = { tokenize: function(e2, t2, n2) {
908
+ return h(e2, e2.attempt(this.parser.constructs.document, t2, n2), "linePrefix", this.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4);
909
+ } };
910
+ function Te(e2) {
911
+ const t2 = {};
912
+ let n2, r2, i2, o2, c2, u2, a2, l2 = -1;
913
+ for (; ++l2 < e2.length; ) {
914
+ for (; l2 in t2; ) l2 = t2[l2];
915
+ if (n2 = e2[l2], l2 && "chunkFlow" === n2[1].type && "listItemPrefix" === e2[l2 - 1][1].type && (u2 = n2[1]._tokenizer.events, i2 = 0, i2 < u2.length && "lineEndingBlank" === u2[i2][1].type && (i2 += 2), i2 < u2.length && "content" === u2[i2][1].type)) for (; ++i2 < u2.length && "content" !== u2[i2][1].type; ) "chunkText" === u2[i2][1].type && (u2[i2][1]._isInFirstContentOfListItem = true, i2++);
916
+ if ("enter" === n2[0]) n2[1].contentType && (Object.assign(t2, De(e2, l2)), l2 = t2[l2], a2 = true);
917
+ else if (n2[1]._container) {
918
+ for (i2 = l2, r2 = void 0; i2-- && (o2 = e2[i2], "lineEnding" === o2[1].type || "lineEndingBlank" === o2[1].type); ) "enter" === o2[0] && (r2 && (e2[r2][1].type = "lineEndingBlank"), o2[1].type = "lineEnding", r2 = i2);
919
+ r2 && (n2[1].end = Object.assign({}, e2[r2][1].start), c2 = e2.slice(r2, l2), c2.unshift(n2), xe(e2, r2, l2 - r2 + 1, c2));
920
+ }
921
+ }
922
+ return !a2;
923
+ }
924
+ function De(e2, t2) {
925
+ const n2 = e2[t2][1], r2 = e2[t2][2];
926
+ let i2 = t2 - 1;
927
+ const o2 = [], c2 = n2._tokenizer || r2.parser[n2.contentType](n2.start), u2 = c2.events, a2 = [], l2 = {};
928
+ let s2, f2, p2 = -1, d2 = n2, m2 = 0, g2 = 0;
929
+ const h2 = [g2];
930
+ for (; d2; ) {
931
+ for (; e2[++i2][1] !== d2; ) ;
932
+ o2.push(i2), d2._tokenizer || (s2 = r2.sliceStream(d2), d2.next || s2.push(null), f2 && c2.defineSkip(d2.start), d2._isInFirstContentOfListItem && (c2._gfmTasklistFirstContentOfListItem = true), c2.write(s2), d2._isInFirstContentOfListItem && (c2._gfmTasklistFirstContentOfListItem = void 0)), f2 = d2, d2 = d2.next;
933
+ }
934
+ for (d2 = n2; ++p2 < u2.length; ) "exit" === u2[p2][0] && "enter" === u2[p2 - 1][0] && u2[p2][1].type === u2[p2 - 1][1].type && u2[p2][1].start.line !== u2[p2][1].end.line && (g2 = p2 + 1, h2.push(g2), d2._tokenizer = void 0, d2.previous = void 0, d2 = d2.next);
935
+ for (c2.events = [], d2 ? (d2._tokenizer = void 0, d2.previous = void 0) : h2.pop(), p2 = h2.length; p2--; ) {
936
+ const t3 = u2.slice(h2[p2], h2[p2 + 1]), n3 = o2.pop();
937
+ a2.unshift([n3, n3 + t3.length - 1]), xe(e2, n3, 2, t3);
938
+ }
939
+ for (p2 = -1; ++p2 < a2.length; ) l2[m2 + a2[p2][0]] = m2 + a2[p2][1], m2 += a2[p2][1] - a2[p2][0] - 1;
940
+ return l2;
941
+ }
942
+ const Ee = { tokenize: function(e2, t2) {
943
+ let n2;
944
+ return function(t3) {
945
+ return e2.enter("content"), n2 = e2.enter("chunkContent", { contentType: "content" }), r2(t3);
946
+ };
947
+ function r2(t3) {
948
+ return null === t3 ? i2(t3) : s(t3) ? e2.check(Ae, o2, i2)(t3) : (e2.consume(t3), r2);
949
+ }
950
+ function i2(n3) {
951
+ return e2.exit("chunkContent"), e2.exit("content"), t2(n3);
952
+ }
953
+ function o2(t3) {
954
+ return e2.consume(t3), e2.exit("chunkContent"), n2.next = e2.enter("chunkContent", { contentType: "content", previous: n2 }), n2 = n2.next, r2;
955
+ }
956
+ }, resolve: function(e2) {
957
+ return Te(e2), e2;
958
+ } }, Ae = { tokenize: function(e2, t2, n2) {
959
+ const r2 = this;
960
+ return function(t3) {
961
+ return e2.exit("chunkContent"), e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), h(e2, i2, "linePrefix");
962
+ };
963
+ function i2(i3) {
964
+ if (null === i3 || s(i3)) return n2(i3);
965
+ const o2 = r2.events[r2.events.length - 1];
966
+ return !r2.parser.constructs.disable.null.includes("codeIndented") && o2 && "linePrefix" === o2[1].type && o2[2].sliceSerialize(o2[1], true).length >= 4 ? t2(i3) : e2.interrupt(r2.parser.constructs.flow, n2, t2)(i3);
967
+ }
968
+ }, partial: true }, Ce = { tokenize: function(e2) {
969
+ const t2 = this, n2 = e2.attempt(Z, function(r3) {
970
+ if (null !== r3) return e2.enter("lineEndingBlank"), e2.consume(r3), e2.exit("lineEndingBlank"), t2.currentConstruct = void 0, n2;
971
+ e2.consume(r3);
972
+ }, e2.attempt(this.parser.constructs.flowInitial, r2, h(e2, e2.attempt(this.parser.constructs.flow, r2, e2.attempt(Ee, r2)), "linePrefix")));
973
+ return n2;
974
+ function r2(r3) {
975
+ if (null !== r3) return e2.enter("lineEnding"), e2.consume(r3), e2.exit("lineEnding"), t2.currentConstruct = void 0, n2;
976
+ e2.consume(r3);
977
+ }
978
+ } }, Fe = { resolveAll: Re() }, ze = Me("string"), Ie = Me("text");
979
+ function Me(e2) {
980
+ return { tokenize: function(t2) {
981
+ const n2 = this, r2 = this.parser.constructs[e2], i2 = t2.attempt(r2, o2, c2);
982
+ return o2;
983
+ function o2(e3) {
984
+ return a2(e3) ? i2(e3) : c2(e3);
985
+ }
986
+ function c2(e3) {
987
+ if (null !== e3) return t2.enter("data"), t2.consume(e3), u2;
988
+ t2.consume(e3);
989
+ }
990
+ function u2(e3) {
991
+ return a2(e3) ? (t2.exit("data"), i2(e3)) : (t2.consume(e3), u2);
992
+ }
993
+ function a2(e3) {
994
+ if (null === e3) return true;
995
+ const t3 = r2[e3];
996
+ let i3 = -1;
997
+ if (t3) for (; ++i3 < t3.length; ) {
998
+ const e4 = t3[i3];
999
+ if (!e4.previous || e4.previous.call(n2, n2.previous)) return true;
1000
+ }
1001
+ return false;
1002
+ }
1003
+ }, resolveAll: Re("text" === e2 ? Oe : void 0) };
1004
+ }
1005
+ function Re(e2) {
1006
+ return function(t2, n2) {
1007
+ let r2, i2 = -1;
1008
+ for (; ++i2 <= t2.length; ) void 0 === r2 ? t2[i2] && "data" === t2[i2][1].type && (r2 = i2, i2++) : t2[i2] && "data" === t2[i2][1].type || (i2 !== r2 + 2 && (t2[r2][1].end = t2[i2 - 1][1].end, t2.splice(r2 + 2, i2 - r2 - 2), i2 = r2 + 2), r2 = void 0);
1009
+ return e2 ? e2(t2, n2) : t2;
1010
+ };
1011
+ }
1012
+ function Oe(e2, t2) {
1013
+ let n2 = 0;
1014
+ for (; ++n2 <= e2.length; ) if ((n2 === e2.length || "lineEnding" === e2[n2][1].type) && "data" === e2[n2 - 1][1].type) {
1015
+ const r2 = e2[n2 - 1][1], i2 = t2.sliceStream(r2);
1016
+ let o2, c2 = i2.length, u2 = -1, a2 = 0;
1017
+ for (; c2--; ) {
1018
+ const e3 = i2[c2];
1019
+ if ("string" == typeof e3) {
1020
+ for (u2 = e3.length; 32 === e3.charCodeAt(u2 - 1); ) a2++, u2--;
1021
+ if (u2) break;
1022
+ u2 = -1;
1023
+ } else if (-2 === e3) o2 = true, a2++;
1024
+ else if (-1 !== e3) {
1025
+ c2++;
1026
+ break;
1027
+ }
1028
+ }
1029
+ if (a2) {
1030
+ const i3 = { type: n2 === e2.length || o2 || a2 < 2 ? "lineSuffix" : "hardBreakTrailing", start: { line: r2.end.line, column: r2.end.column - a2, offset: r2.end.offset - a2, _index: r2.start._index + c2, _bufferIndex: c2 ? u2 : r2.start._bufferIndex + u2 }, end: Object.assign({}, r2.end) };
1031
+ r2.end = Object.assign({}, i3.start), r2.start.offset === r2.end.offset ? Object.assign(r2, i3) : (e2.splice(n2, 0, ["enter", i3, t2], ["exit", i3, t2]), n2 += 2);
1032
+ }
1033
+ n2++;
1034
+ }
1035
+ return e2;
1036
+ }
1037
+ function Pe(e2, t2, n2) {
1038
+ const r2 = [];
1039
+ let i2 = -1;
1040
+ for (; ++i2 < e2.length; ) {
1041
+ const o2 = e2[i2].resolveAll;
1042
+ o2 && !r2.includes(o2) && (t2 = o2(t2, n2), r2.push(o2));
1043
+ }
1044
+ return t2;
1045
+ }
1046
+ function Ne(e2, t2, n2) {
1047
+ let r2 = Object.assign(n2 ? Object.assign({}, n2) : { line: 1, column: 1, offset: 0 }, { _index: 0, _bufferIndex: -1 });
1048
+ const i2 = {}, o2 = [];
1049
+ let c2 = [], u2 = [], a2 = true;
1050
+ const l2 = { consume: function(e3) {
1051
+ s(e3) ? (r2.line++, r2.column = 1, r2.offset += -3 === e3 ? 2 : 1, k2()) : -1 !== e3 && (r2.column++, r2.offset++), r2._bufferIndex < 0 ? r2._index++ : (r2._bufferIndex++, r2._bufferIndex === c2[r2._index].length && (r2._bufferIndex = -1, r2._index++)), f2.previous = e3, a2 = true;
1052
+ }, enter: function(e3, t3) {
1053
+ const n3 = t3 || {};
1054
+ return n3.type = e3, n3.start = g2(), f2.events.push(["enter", n3, f2]), u2.push(n3), n3;
1055
+ }, exit: function(e3) {
1056
+ const t3 = u2.pop();
1057
+ return t3.end = g2(), f2.events.push(["exit", t3, f2]), t3;
1058
+ }, attempt: x2(function(e3, t3) {
1059
+ v2(e3, t3.from);
1060
+ }), check: x2(b2), interrupt: x2(b2, { interrupt: true }) }, f2 = { previous: null, code: null, containerState: {}, events: [], parser: e2, sliceStream: m2, sliceSerialize: function(e3, t3) {
1061
+ return function(e4, t4) {
1062
+ let n3 = -1;
1063
+ const r3 = [];
1064
+ let i3;
1065
+ for (; ++n3 < e4.length; ) {
1066
+ const o3 = e4[n3];
1067
+ let c3;
1068
+ if ("string" == typeof o3) c3 = o3;
1069
+ else switch (o3) {
1070
+ case -5:
1071
+ c3 = "\r";
1072
+ break;
1073
+ case -4:
1074
+ c3 = "\n";
1075
+ break;
1076
+ case -3:
1077
+ c3 = "\r\n";
1078
+ break;
1079
+ case -2:
1080
+ c3 = t4 ? " " : " ";
1081
+ break;
1082
+ case -1:
1083
+ if (!t4 && i3) continue;
1084
+ c3 = " ";
1085
+ break;
1086
+ default:
1087
+ c3 = String.fromCharCode(o3);
1088
+ }
1089
+ i3 = -2 === o3, r3.push(c3);
1090
+ }
1091
+ return r3.join("");
1092
+ }(m2(e3), t3);
1093
+ }, now: g2, defineSkip: function(e3) {
1094
+ i2[e3.line] = e3.column, k2();
1095
+ }, write: function(e3) {
1096
+ return c2 = ve(c2, e3), function() {
1097
+ let e4;
1098
+ for (; r2._index < c2.length; ) {
1099
+ const t3 = c2[r2._index];
1100
+ if ("string" == typeof t3) for (e4 = r2._index, r2._bufferIndex < 0 && (r2._bufferIndex = 0); r2._index === e4 && r2._bufferIndex < t3.length; ) h2(t3.charCodeAt(r2._bufferIndex));
1101
+ else h2(t3);
1102
+ }
1103
+ }(), null !== c2[c2.length - 1] ? [] : (v2(t2, 0), f2.events = Pe(o2, f2.events, f2), f2.events);
1104
+ } };
1105
+ let p2, d2 = t2.tokenize.call(f2, l2);
1106
+ return t2.resolveAll && o2.push(t2), f2;
1107
+ function m2(e3) {
1108
+ return function(e4, t3) {
1109
+ const n3 = t3.start._index, r3 = t3.start._bufferIndex, i3 = t3.end._index, o3 = t3.end._bufferIndex;
1110
+ let c3;
1111
+ if (n3 === i3) c3 = [e4[n3].slice(r3, o3)];
1112
+ else {
1113
+ if (c3 = e4.slice(n3, i3), r3 > -1) {
1114
+ const e5 = c3[0];
1115
+ "string" == typeof e5 ? c3[0] = e5.slice(r3) : c3.shift();
1116
+ }
1117
+ o3 > 0 && c3.push(e4[i3].slice(0, o3));
1118
+ }
1119
+ return c3;
1120
+ }(c2, e3);
1121
+ }
1122
+ function g2() {
1123
+ const { line: e3, column: t3, offset: n3, _index: i3, _bufferIndex: o3 } = r2;
1124
+ return { line: e3, column: t3, offset: n3, _index: i3, _bufferIndex: o3 };
1125
+ }
1126
+ function h2(e3) {
1127
+ a2 = void 0, p2 = e3, d2 = d2(e3);
1128
+ }
1129
+ function b2(e3, t3) {
1130
+ t3.restore();
1131
+ }
1132
+ function x2(e3, t3) {
1133
+ return function(n3, i3, o3) {
1134
+ let c3, s2, p3, d3;
1135
+ return Array.isArray(n3) ? h3(n3) : "tokenize" in n3 ? h3([n3]) : (m3 = n3, function(e4) {
1136
+ const t4 = null !== e4 && m3[e4], n4 = null !== e4 && m3.null;
1137
+ return h3([...Array.isArray(t4) ? t4 : t4 ? [t4] : [], ...Array.isArray(n4) ? n4 : n4 ? [n4] : []])(e4);
1138
+ });
1139
+ var m3;
1140
+ function h3(e4) {
1141
+ return c3 = e4, s2 = 0, 0 === e4.length ? o3 : b3(e4[s2]);
1142
+ }
1143
+ function b3(e4) {
1144
+ return function(n4) {
1145
+ return d3 = function() {
1146
+ const e5 = g2(), t4 = f2.previous, n5 = f2.currentConstruct, i4 = f2.events.length, o4 = Array.from(u2);
1147
+ return { restore: function() {
1148
+ r2 = e5, f2.previous = t4, f2.currentConstruct = n5, f2.events.length = i4, u2 = o4, k2();
1149
+ }, from: i4 };
1150
+ }(), p3 = e4, e4.partial || (f2.currentConstruct = e4), e4.name && f2.parser.constructs.disable.null.includes(e4.name) ? v3() : e4.tokenize.call(t3 ? Object.assign(Object.create(f2), t3) : f2, l2, x3, v3)(n4);
1151
+ };
1152
+ }
1153
+ function x3(t4) {
1154
+ return a2 = true, e3(p3, d3), i3;
1155
+ }
1156
+ function v3(e4) {
1157
+ return a2 = true, d3.restore(), ++s2 < c3.length ? b3(c3[s2]) : o3;
1158
+ }
1159
+ };
1160
+ }
1161
+ function v2(e3, t3) {
1162
+ e3.resolveAll && !o2.includes(e3) && o2.push(e3), e3.resolve && xe(f2.events, t3, f2.events.length - t3, e3.resolve(f2.events.slice(t3), f2)), e3.resolveTo && (f2.events = e3.resolveTo(f2.events, f2));
1163
+ }
1164
+ function k2() {
1165
+ r2.line in i2 && r2.column < 2 && (r2.column = i2[r2.line], r2.offset += i2[r2.line] - 1);
1166
+ }
1167
+ }
1168
+ const Ve = { name: "thematicBreak", tokenize: function(e2, t2, n2) {
1169
+ let r2, i2 = 0;
1170
+ return function(t3) {
1171
+ return e2.enter("thematicBreak"), function(e3) {
1172
+ return r2 = e3, o2(e3);
1173
+ }(t3);
1174
+ };
1175
+ function o2(o3) {
1176
+ return o3 === r2 ? (e2.enter("thematicBreakSequence"), c2(o3)) : i2 >= 3 && (null === o3 || s(o3)) ? (e2.exit("thematicBreak"), t2(o3)) : n2(o3);
1177
+ }
1178
+ function c2(t3) {
1179
+ return t3 === r2 ? (e2.consume(t3), i2++, c2) : (e2.exit("thematicBreakSequence"), p(t3) ? h(e2, o2, "whitespace")(t3) : o2(t3));
1180
+ }
1181
+ } }, _e = { name: "list", tokenize: function(e2, t2, n2) {
1182
+ const r2 = this, i2 = r2.events[r2.events.length - 1];
1183
+ let o2 = i2 && "linePrefix" === i2[1].type ? i2[2].sliceSerialize(i2[1], true).length : 0, c2 = 0;
1184
+ return function(t3) {
1185
+ const i3 = r2.containerState.type || (42 === t3 || 43 === t3 || 45 === t3 ? "listUnordered" : "listOrdered");
1186
+ if ("listUnordered" === i3 ? !r2.containerState.marker || t3 === r2.containerState.marker : u(t3)) {
1187
+ if (r2.containerState.type || (r2.containerState.type = i3, e2.enter(i3, { _container: true })), "listUnordered" === i3) return e2.enter("listItemPrefix"), 42 === t3 || 45 === t3 ? e2.check(Ve, n2, l2)(t3) : l2(t3);
1188
+ if (!r2.interrupt || 49 === t3) return e2.enter("listItemPrefix"), e2.enter("listItemValue"), a2(t3);
1189
+ }
1190
+ return n2(t3);
1191
+ };
1192
+ function a2(t3) {
1193
+ return u(t3) && ++c2 < 10 ? (e2.consume(t3), a2) : (!r2.interrupt || c2 < 2) && (r2.containerState.marker ? t3 === r2.containerState.marker : 41 === t3 || 46 === t3) ? (e2.exit("listItemValue"), l2(t3)) : n2(t3);
1194
+ }
1195
+ function l2(t3) {
1196
+ return e2.enter("listItemMarker"), e2.consume(t3), e2.exit("listItemMarker"), r2.containerState.marker = r2.containerState.marker || t3, e2.check(Z, r2.interrupt ? n2 : s2, e2.attempt(Be, d2, f2));
1197
+ }
1198
+ function s2(e3) {
1199
+ return r2.containerState.initialBlankLine = true, o2++, d2(e3);
1200
+ }
1201
+ function f2(t3) {
1202
+ return p(t3) ? (e2.enter("listItemPrefixWhitespace"), e2.consume(t3), e2.exit("listItemPrefixWhitespace"), d2) : n2(t3);
1203
+ }
1204
+ function d2(n3) {
1205
+ return r2.containerState.size = o2 + r2.sliceSerialize(e2.exit("listItemPrefix"), true).length, t2(n3);
1206
+ }
1207
+ }, continuation: { tokenize: function(e2, t2, n2) {
1208
+ const r2 = this;
1209
+ return r2.containerState._closeFlow = void 0, e2.check(Z, function(n3) {
1210
+ return r2.containerState.furtherBlankLines = r2.containerState.furtherBlankLines || r2.containerState.initialBlankLine, h(e2, t2, "listItemIndent", r2.containerState.size + 1)(n3);
1211
+ }, function(n3) {
1212
+ return r2.containerState.furtherBlankLines || !p(n3) ? (r2.containerState.furtherBlankLines = void 0, r2.containerState.initialBlankLine = void 0, i2(n3)) : (r2.containerState.furtherBlankLines = void 0, r2.containerState.initialBlankLine = void 0, e2.attempt(je, t2, i2)(n3));
1213
+ });
1214
+ function i2(i3) {
1215
+ return r2.containerState._closeFlow = true, r2.interrupt = void 0, h(e2, e2.attempt(_e, t2, n2), "linePrefix", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(i3);
1216
+ }
1217
+ } }, exit: function(e2) {
1218
+ e2.exit(this.containerState.type);
1219
+ } }, Be = { tokenize: function(e2, t2, n2) {
1220
+ const r2 = this;
1221
+ return h(e2, function(e3) {
1222
+ const i2 = r2.events[r2.events.length - 1];
1223
+ return !p(e3) && i2 && "listItemPrefixWhitespace" === i2[1].type ? t2(e3) : n2(e3);
1224
+ }, "listItemPrefixWhitespace", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 5);
1225
+ }, partial: true }, je = { tokenize: function(e2, t2, n2) {
1226
+ const r2 = this;
1227
+ return h(e2, function(e3) {
1228
+ const i2 = r2.events[r2.events.length - 1];
1229
+ return i2 && "listItemIndent" === i2[1].type && i2[2].sliceSerialize(i2[1], true).length === r2.containerState.size ? t2(e3) : n2(e3);
1230
+ }, "listItemIndent", r2.containerState.size + 1);
1231
+ }, partial: true }, He = { name: "blockQuote", tokenize: function(e2, t2, n2) {
1232
+ const r2 = this;
1233
+ return function(t3) {
1234
+ if (62 === t3) {
1235
+ const n3 = r2.containerState;
1236
+ return n3.open || (e2.enter("blockQuote", { _container: true }), n3.open = true), e2.enter("blockQuotePrefix"), e2.enter("blockQuoteMarker"), e2.consume(t3), e2.exit("blockQuoteMarker"), i2;
1237
+ }
1238
+ return n2(t3);
1239
+ };
1240
+ function i2(n3) {
1241
+ return p(n3) ? (e2.enter("blockQuotePrefixWhitespace"), e2.consume(n3), e2.exit("blockQuotePrefixWhitespace"), e2.exit("blockQuotePrefix"), t2) : (e2.exit("blockQuotePrefix"), t2(n3));
1242
+ }
1243
+ }, continuation: { tokenize: function(e2, t2, n2) {
1244
+ const r2 = this;
1245
+ return function(t3) {
1246
+ return p(t3) ? h(e2, i2, "linePrefix", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t3) : i2(t3);
1247
+ };
1248
+ function i2(r3) {
1249
+ return e2.attempt(He, t2, n2)(r3);
1250
+ }
1251
+ } }, exit: function(e2) {
1252
+ e2.exit("blockQuote");
1253
+ } };
1254
+ function Ue(e2, t2, n2, r2, i2, o2, u2, a2, l2) {
1255
+ const p2 = l2 || Number.POSITIVE_INFINITY;
1256
+ let d2 = 0;
1257
+ return function(t3) {
1258
+ return 60 === t3 ? (e2.enter(r2), e2.enter(i2), e2.enter(o2), e2.consume(t3), e2.exit(o2), m2) : null === t3 || 32 === t3 || 41 === t3 || c(t3) ? n2(t3) : (e2.enter(r2), e2.enter(u2), e2.enter(a2), e2.enter("chunkString", { contentType: "string" }), b2(t3));
1259
+ };
1260
+ function m2(n3) {
1261
+ return 62 === n3 ? (e2.enter(o2), e2.consume(n3), e2.exit(o2), e2.exit(i2), e2.exit(r2), t2) : (e2.enter(a2), e2.enter("chunkString", { contentType: "string" }), g2(n3));
1262
+ }
1263
+ function g2(t3) {
1264
+ return 62 === t3 ? (e2.exit("chunkString"), e2.exit(a2), m2(t3)) : null === t3 || 60 === t3 || s(t3) ? n2(t3) : (e2.consume(t3), 92 === t3 ? h2 : g2);
1265
+ }
1266
+ function h2(t3) {
1267
+ return 60 === t3 || 62 === t3 || 92 === t3 ? (e2.consume(t3), g2) : g2(t3);
1268
+ }
1269
+ function b2(i3) {
1270
+ return d2 || null !== i3 && 41 !== i3 && !f(i3) ? d2 < p2 && 40 === i3 ? (e2.consume(i3), d2++, b2) : 41 === i3 ? (e2.consume(i3), d2--, b2) : null === i3 || 32 === i3 || 40 === i3 || c(i3) ? n2(i3) : (e2.consume(i3), 92 === i3 ? x2 : b2) : (e2.exit("chunkString"), e2.exit(a2), e2.exit(u2), e2.exit(r2), t2(i3));
1271
+ }
1272
+ function x2(t3) {
1273
+ return 40 === t3 || 41 === t3 || 92 === t3 ? (e2.consume(t3), b2) : b2(t3);
1274
+ }
1275
+ }
1276
+ function Ge(e2, t2, n2, r2, i2, o2) {
1277
+ const c2 = this;
1278
+ let u2, a2 = 0;
1279
+ return function(t3) {
1280
+ return e2.enter(r2), e2.enter(i2), e2.consume(t3), e2.exit(i2), e2.enter(o2), l2;
1281
+ };
1282
+ function l2(p2) {
1283
+ return a2 > 999 || null === p2 || 91 === p2 || 93 === p2 && !u2 || 94 === p2 && !a2 && "_hiddenFootnoteSupport" in c2.parser.constructs ? n2(p2) : 93 === p2 ? (e2.exit(o2), e2.enter(i2), e2.consume(p2), e2.exit(i2), e2.exit(r2), t2) : s(p2) ? (e2.enter("lineEnding"), e2.consume(p2), e2.exit("lineEnding"), l2) : (e2.enter("chunkString", { contentType: "string" }), f2(p2));
1284
+ }
1285
+ function f2(t3) {
1286
+ return null === t3 || 91 === t3 || 93 === t3 || s(t3) || a2++ > 999 ? (e2.exit("chunkString"), l2(t3)) : (e2.consume(t3), u2 || (u2 = !p(t3)), 92 === t3 ? d2 : f2);
1287
+ }
1288
+ function d2(t3) {
1289
+ return 91 === t3 || 92 === t3 || 93 === t3 ? (e2.consume(t3), a2++, f2) : f2(t3);
1290
+ }
1291
+ }
1292
+ function Qe(e2, t2, n2, r2, i2, o2) {
1293
+ let c2;
1294
+ return function(t3) {
1295
+ return 34 === t3 || 39 === t3 || 40 === t3 ? (e2.enter(r2), e2.enter(i2), e2.consume(t3), e2.exit(i2), c2 = 40 === t3 ? 41 : t3, u2) : n2(t3);
1296
+ };
1297
+ function u2(n3) {
1298
+ return n3 === c2 ? (e2.enter(i2), e2.consume(n3), e2.exit(i2), e2.exit(r2), t2) : (e2.enter(o2), a2(n3));
1299
+ }
1300
+ function a2(t3) {
1301
+ return t3 === c2 ? (e2.exit(o2), u2(c2)) : null === t3 ? n2(t3) : s(t3) ? (e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), h(e2, a2, "linePrefix")) : (e2.enter("chunkString", { contentType: "string" }), l2(t3));
1302
+ }
1303
+ function l2(t3) {
1304
+ return t3 === c2 || null === t3 || s(t3) ? (e2.exit("chunkString"), a2(t3)) : (e2.consume(t3), 92 === t3 ? f2 : l2);
1305
+ }
1306
+ function f2(t3) {
1307
+ return t3 === c2 || 92 === t3 ? (e2.consume(t3), l2) : l2(t3);
1308
+ }
1309
+ }
1310
+ const We = { name: "definition", tokenize: function(e2, t2, n2) {
1311
+ const r2 = this;
1312
+ let i2;
1313
+ return function(t3) {
1314
+ return e2.enter("definition"), function(t4) {
1315
+ return Ge.call(r2, e2, o2, n2, "definitionLabel", "definitionLabelMarker", "definitionLabelString")(t4);
1316
+ }(t3);
1317
+ };
1318
+ function o2(t3) {
1319
+ return i2 = J(r2.sliceSerialize(r2.events[r2.events.length - 1][1]).slice(1, -1)), 58 === t3 ? (e2.enter("definitionMarker"), e2.consume(t3), e2.exit("definitionMarker"), c2) : n2(t3);
1320
+ }
1321
+ function c2(t3) {
1322
+ return f(t3) ? b(e2, u2)(t3) : u2(t3);
1323
+ }
1324
+ function u2(t3) {
1325
+ return Ue(e2, a2, n2, "definitionDestination", "definitionDestinationLiteral", "definitionDestinationLiteralMarker", "definitionDestinationRaw", "definitionDestinationString")(t3);
1326
+ }
1327
+ function a2(t3) {
1328
+ return e2.attempt(Ze, l2, l2)(t3);
1329
+ }
1330
+ function l2(t3) {
1331
+ return p(t3) ? h(e2, d2, "whitespace")(t3) : d2(t3);
1332
+ }
1333
+ function d2(o3) {
1334
+ return null === o3 || s(o3) ? (e2.exit("definition"), r2.parser.defined.push(i2), t2(o3)) : n2(o3);
1335
+ }
1336
+ } }, Ze = { tokenize: function(e2, t2, n2) {
1337
+ return function(t3) {
1338
+ return f(t3) ? b(e2, r2)(t3) : n2(t3);
1339
+ };
1340
+ function r2(t3) {
1341
+ return Qe(e2, i2, n2, "definitionTitle", "definitionTitleMarker", "definitionTitleString")(t3);
1342
+ }
1343
+ function i2(t3) {
1344
+ return p(t3) ? h(e2, o2, "whitespace")(t3) : o2(t3);
1345
+ }
1346
+ function o2(e3) {
1347
+ return null === e3 || s(e3) ? t2(e3) : n2(e3);
1348
+ }
1349
+ }, partial: true }, Je = { name: "codeIndented", tokenize: function(e2, t2, n2) {
1350
+ const r2 = this;
1351
+ return function(t3) {
1352
+ return e2.enter("codeIndented"), h(e2, i2, "linePrefix", 5)(t3);
1353
+ };
1354
+ function i2(e3) {
1355
+ const t3 = r2.events[r2.events.length - 1];
1356
+ return t3 && "linePrefix" === t3[1].type && t3[2].sliceSerialize(t3[1], true).length >= 4 ? o2(e3) : n2(e3);
1357
+ }
1358
+ function o2(t3) {
1359
+ return null === t3 ? u2(t3) : s(t3) ? e2.attempt(Ye, o2, u2)(t3) : (e2.enter("codeFlowValue"), c2(t3));
1360
+ }
1361
+ function c2(t3) {
1362
+ return null === t3 || s(t3) ? (e2.exit("codeFlowValue"), o2(t3)) : (e2.consume(t3), c2);
1363
+ }
1364
+ function u2(n3) {
1365
+ return e2.exit("codeIndented"), t2(n3);
1366
+ }
1367
+ } }, Ye = { tokenize: function(e2, t2, n2) {
1368
+ const r2 = this;
1369
+ return i2;
1370
+ function i2(t3) {
1371
+ return r2.parser.lazy[r2.now().line] ? n2(t3) : s(t3) ? (e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), i2) : h(e2, o2, "linePrefix", 5)(t3);
1372
+ }
1373
+ function o2(e3) {
1374
+ const o3 = r2.events[r2.events.length - 1];
1375
+ return o3 && "linePrefix" === o3[1].type && o3[2].sliceSerialize(o3[1], true).length >= 4 ? t2(e3) : s(e3) ? i2(e3) : n2(e3);
1376
+ }
1377
+ }, partial: true }, Ke = { name: "headingAtx", tokenize: function(e2, t2, n2) {
1378
+ let r2 = 0;
1379
+ return function(t3) {
1380
+ return e2.enter("atxHeading"), function(t4) {
1381
+ return e2.enter("atxHeadingSequence"), i2(t4);
1382
+ }(t3);
1383
+ };
1384
+ function i2(t3) {
1385
+ return 35 === t3 && r2++ < 6 ? (e2.consume(t3), i2) : null === t3 || f(t3) ? (e2.exit("atxHeadingSequence"), o2(t3)) : n2(t3);
1386
+ }
1387
+ function o2(n3) {
1388
+ return 35 === n3 ? (e2.enter("atxHeadingSequence"), c2(n3)) : null === n3 || s(n3) ? (e2.exit("atxHeading"), t2(n3)) : p(n3) ? h(e2, o2, "whitespace")(n3) : (e2.enter("atxHeadingText"), u2(n3));
1389
+ }
1390
+ function c2(t3) {
1391
+ return 35 === t3 ? (e2.consume(t3), c2) : (e2.exit("atxHeadingSequence"), o2(t3));
1392
+ }
1393
+ function u2(t3) {
1394
+ return null === t3 || 35 === t3 || f(t3) ? (e2.exit("atxHeadingText"), o2(t3)) : (e2.consume(t3), u2);
1395
+ }
1396
+ }, resolve: function(e2, t2) {
1397
+ let n2, r2, i2 = e2.length - 2, o2 = 3;
1398
+ return "whitespace" === e2[o2][1].type && (o2 += 2), i2 - 2 > o2 && "whitespace" === e2[i2][1].type && (i2 -= 2), "atxHeadingSequence" === e2[i2][1].type && (o2 === i2 - 1 || i2 - 4 > o2 && "whitespace" === e2[i2 - 2][1].type) && (i2 -= o2 + 1 === i2 ? 2 : 4), i2 > o2 && (n2 = { type: "atxHeadingText", start: e2[o2][1].start, end: e2[i2][1].end }, r2 = { type: "chunkText", start: e2[o2][1].start, end: e2[i2][1].end, contentType: "text" }, xe(e2, o2, i2 - o2 + 1, [["enter", n2, t2], ["enter", r2, t2], ["exit", r2, t2], ["exit", n2, t2]])), e2;
1399
+ } }, Xe = { name: "setextUnderline", tokenize: function(e2, t2, n2) {
1400
+ const r2 = this;
1401
+ let i2;
1402
+ return function(t3) {
1403
+ let c3, u2 = r2.events.length;
1404
+ for (; u2--; ) if ("lineEnding" !== r2.events[u2][1].type && "linePrefix" !== r2.events[u2][1].type && "content" !== r2.events[u2][1].type) {
1405
+ c3 = "paragraph" === r2.events[u2][1].type;
1406
+ break;
1407
+ }
1408
+ return r2.parser.lazy[r2.now().line] || !r2.interrupt && !c3 ? n2(t3) : (e2.enter("setextHeadingLine"), i2 = t3, function(t4) {
1409
+ return e2.enter("setextHeadingLineSequence"), o2(t4);
1410
+ }(t3));
1411
+ };
1412
+ function o2(t3) {
1413
+ return t3 === i2 ? (e2.consume(t3), o2) : (e2.exit("setextHeadingLineSequence"), p(t3) ? h(e2, c2, "lineSuffix")(t3) : c2(t3));
1414
+ }
1415
+ function c2(r3) {
1416
+ return null === r3 || s(r3) ? (e2.exit("setextHeadingLine"), t2(r3)) : n2(r3);
1417
+ }
1418
+ }, resolveTo: function(e2, t2) {
1419
+ let n2, r2, i2, o2 = e2.length;
1420
+ for (; o2--; ) if ("enter" === e2[o2][0]) {
1421
+ if ("content" === e2[o2][1].type) {
1422
+ n2 = o2;
1423
+ break;
1424
+ }
1425
+ "paragraph" === e2[o2][1].type && (r2 = o2);
1426
+ } else "content" === e2[o2][1].type && e2.splice(o2, 1), i2 || "definition" !== e2[o2][1].type || (i2 = o2);
1427
+ const c2 = { type: "setextHeading", start: Object.assign({}, e2[r2][1].start), end: Object.assign({}, e2[e2.length - 1][1].end) };
1428
+ return e2[r2][1].type = "setextHeadingText", i2 ? (e2.splice(r2, 0, ["enter", c2, t2]), e2.splice(i2 + 1, 0, ["exit", e2[n2][1], t2]), e2[n2][1].end = Object.assign({}, e2[i2][1].end)) : e2[n2][1] = c2, e2.push(["exit", c2, t2]), e2;
1429
+ } }, $e = ["address", "article", "aside", "base", "basefont", "blockquote", "body", "caption", "center", "col", "colgroup", "dd", "details", "dialog", "dir", "div", "dl", "dt", "fieldset", "figcaption", "figure", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hr", "html", "iframe", "legend", "li", "link", "main", "menu", "menuitem", "nav", "noframes", "ol", "optgroup", "option", "p", "param", "search", "section", "summary", "table", "tbody", "td", "tfoot", "th", "thead", "title", "tr", "track", "ul"], et = ["pre", "script", "style", "textarea"], tt = { name: "htmlFlow", tokenize: function(e2, t2, n2) {
1430
+ const o2 = this;
1431
+ let c2, u2, a2, l2, d2;
1432
+ return function(t3) {
1433
+ return function(t4) {
1434
+ return e2.enter("htmlFlow"), e2.enter("htmlFlowData"), e2.consume(t4), m2;
1435
+ }(t3);
1436
+ };
1437
+ function m2(i2) {
1438
+ return 33 === i2 ? (e2.consume(i2), g2) : 47 === i2 ? (e2.consume(i2), u2 = true, x2) : 63 === i2 ? (e2.consume(i2), c2 = 3, o2.interrupt ? t2 : V2) : r(i2) ? (e2.consume(i2), a2 = String.fromCharCode(i2), v2) : n2(i2);
1439
+ }
1440
+ function g2(i2) {
1441
+ return 45 === i2 ? (e2.consume(i2), c2 = 2, h2) : 91 === i2 ? (e2.consume(i2), c2 = 5, l2 = 0, b2) : r(i2) ? (e2.consume(i2), c2 = 4, o2.interrupt ? t2 : V2) : n2(i2);
1442
+ }
1443
+ function h2(r2) {
1444
+ return 45 === r2 ? (e2.consume(r2), o2.interrupt ? t2 : V2) : n2(r2);
1445
+ }
1446
+ function b2(r2) {
1447
+ return r2 === "CDATA[".charCodeAt(l2++) ? (e2.consume(r2), 6 === l2 ? o2.interrupt ? t2 : F2 : b2) : n2(r2);
1448
+ }
1449
+ function x2(t3) {
1450
+ return r(t3) ? (e2.consume(t3), a2 = String.fromCharCode(t3), v2) : n2(t3);
1451
+ }
1452
+ function v2(r2) {
1453
+ if (null === r2 || 47 === r2 || 62 === r2 || f(r2)) {
1454
+ const i2 = 47 === r2, l3 = a2.toLowerCase();
1455
+ return i2 || u2 || !et.includes(l3) ? $e.includes(a2.toLowerCase()) ? (c2 = 6, i2 ? (e2.consume(r2), k2) : o2.interrupt ? t2(r2) : F2(r2)) : (c2 = 7, o2.interrupt && !o2.parser.lazy[o2.now().line] ? n2(r2) : u2 ? y2(r2) : w2(r2)) : (c2 = 1, o2.interrupt ? t2(r2) : F2(r2));
1456
+ }
1457
+ return 45 === r2 || i(r2) ? (e2.consume(r2), a2 += String.fromCharCode(r2), v2) : n2(r2);
1458
+ }
1459
+ function k2(r2) {
1460
+ return 62 === r2 ? (e2.consume(r2), o2.interrupt ? t2 : F2) : n2(r2);
1461
+ }
1462
+ function y2(t3) {
1463
+ return p(t3) ? (e2.consume(t3), y2) : A2(t3);
1464
+ }
1465
+ function w2(t3) {
1466
+ return 47 === t3 ? (e2.consume(t3), A2) : 58 === t3 || 95 === t3 || r(t3) ? (e2.consume(t3), q2) : p(t3) ? (e2.consume(t3), w2) : A2(t3);
1467
+ }
1468
+ function q2(t3) {
1469
+ return 45 === t3 || 46 === t3 || 58 === t3 || 95 === t3 || i(t3) ? (e2.consume(t3), q2) : S2(t3);
1470
+ }
1471
+ function S2(t3) {
1472
+ return 61 === t3 ? (e2.consume(t3), L2) : p(t3) ? (e2.consume(t3), S2) : w2(t3);
1473
+ }
1474
+ function L2(t3) {
1475
+ return null === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 ? n2(t3) : 34 === t3 || 39 === t3 ? (e2.consume(t3), d2 = t3, T2) : p(t3) ? (e2.consume(t3), L2) : D2(t3);
1476
+ }
1477
+ function T2(t3) {
1478
+ return t3 === d2 ? (e2.consume(t3), d2 = null, E2) : null === t3 || s(t3) ? n2(t3) : (e2.consume(t3), T2);
1479
+ }
1480
+ function D2(t3) {
1481
+ return null === t3 || 34 === t3 || 39 === t3 || 47 === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 || f(t3) ? S2(t3) : (e2.consume(t3), D2);
1482
+ }
1483
+ function E2(e3) {
1484
+ return 47 === e3 || 62 === e3 || p(e3) ? w2(e3) : n2(e3);
1485
+ }
1486
+ function A2(t3) {
1487
+ return 62 === t3 ? (e2.consume(t3), C2) : n2(t3);
1488
+ }
1489
+ function C2(t3) {
1490
+ return null === t3 || s(t3) ? F2(t3) : p(t3) ? (e2.consume(t3), C2) : n2(t3);
1491
+ }
1492
+ function F2(t3) {
1493
+ return 45 === t3 && 2 === c2 ? (e2.consume(t3), R2) : 60 === t3 && 1 === c2 ? (e2.consume(t3), O2) : 62 === t3 && 4 === c2 ? (e2.consume(t3), _2) : 63 === t3 && 3 === c2 ? (e2.consume(t3), V2) : 93 === t3 && 5 === c2 ? (e2.consume(t3), N2) : !s(t3) || 6 !== c2 && 7 !== c2 ? null === t3 || s(t3) ? (e2.exit("htmlFlowData"), z2(t3)) : (e2.consume(t3), F2) : (e2.exit("htmlFlowData"), e2.check(nt, B2, z2)(t3));
1494
+ }
1495
+ function z2(t3) {
1496
+ return e2.check(rt, I2, B2)(t3);
1497
+ }
1498
+ function I2(t3) {
1499
+ return e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), M2;
1500
+ }
1501
+ function M2(t3) {
1502
+ return null === t3 || s(t3) ? z2(t3) : (e2.enter("htmlFlowData"), F2(t3));
1503
+ }
1504
+ function R2(t3) {
1505
+ return 45 === t3 ? (e2.consume(t3), V2) : F2(t3);
1506
+ }
1507
+ function O2(t3) {
1508
+ return 47 === t3 ? (e2.consume(t3), a2 = "", P2) : F2(t3);
1509
+ }
1510
+ function P2(t3) {
1511
+ if (62 === t3) {
1512
+ const n3 = a2.toLowerCase();
1513
+ return et.includes(n3) ? (e2.consume(t3), _2) : F2(t3);
1514
+ }
1515
+ return r(t3) && a2.length < 8 ? (e2.consume(t3), a2 += String.fromCharCode(t3), P2) : F2(t3);
1516
+ }
1517
+ function N2(t3) {
1518
+ return 93 === t3 ? (e2.consume(t3), V2) : F2(t3);
1519
+ }
1520
+ function V2(t3) {
1521
+ return 62 === t3 ? (e2.consume(t3), _2) : 45 === t3 && 2 === c2 ? (e2.consume(t3), V2) : F2(t3);
1522
+ }
1523
+ function _2(t3) {
1524
+ return null === t3 || s(t3) ? (e2.exit("htmlFlowData"), B2(t3)) : (e2.consume(t3), _2);
1525
+ }
1526
+ function B2(n3) {
1527
+ return e2.exit("htmlFlow"), t2(n3);
1528
+ }
1529
+ }, resolveTo: function(e2) {
1530
+ let t2 = e2.length;
1531
+ for (; t2-- && ("enter" !== e2[t2][0] || "htmlFlow" !== e2[t2][1].type); ) ;
1532
+ return t2 > 1 && "linePrefix" === e2[t2 - 2][1].type && (e2[t2][1].start = e2[t2 - 2][1].start, e2[t2 + 1][1].start = e2[t2 - 2][1].start, e2.splice(t2 - 2, 2)), e2;
1533
+ }, concrete: true }, nt = { tokenize: function(e2, t2, n2) {
1534
+ return function(r2) {
1535
+ return e2.enter("lineEnding"), e2.consume(r2), e2.exit("lineEnding"), e2.attempt(Z, t2, n2);
1536
+ };
1537
+ }, partial: true }, rt = { tokenize: function(e2, t2, n2) {
1538
+ const r2 = this;
1539
+ return function(t3) {
1540
+ return s(t3) ? (e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), i2) : n2(t3);
1541
+ };
1542
+ function i2(e3) {
1543
+ return r2.parser.lazy[r2.now().line] ? n2(e3) : t2(e3);
1544
+ }
1545
+ }, partial: true }, it = { tokenize: function(e2, t2, n2) {
1546
+ const r2 = this;
1547
+ return function(t3) {
1548
+ return null === t3 ? n2(t3) : (e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), i2);
1549
+ };
1550
+ function i2(e3) {
1551
+ return r2.parser.lazy[r2.now().line] ? n2(e3) : t2(e3);
1552
+ }
1553
+ }, partial: true }, ot = { name: "codeFenced", tokenize: function(e2, t2, n2) {
1554
+ const r2 = this, i2 = { tokenize: function(e3, t3, n3) {
1555
+ let i3 = 0;
1556
+ return function(t4) {
1557
+ return e3.enter("lineEnding"), e3.consume(t4), e3.exit("lineEnding"), c3;
1558
+ };
1559
+ function c3(t4) {
1560
+ return e3.enter("codeFencedFence"), p(t4) ? h(e3, a3, "linePrefix", r2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t4) : a3(t4);
1561
+ }
1562
+ function a3(t4) {
1563
+ return t4 === o2 ? (e3.enter("codeFencedFenceSequence"), l3(t4)) : n3(t4);
1564
+ }
1565
+ function l3(t4) {
1566
+ return t4 === o2 ? (i3++, e3.consume(t4), l3) : i3 >= u2 ? (e3.exit("codeFencedFenceSequence"), p(t4) ? h(e3, f3, "whitespace")(t4) : f3(t4)) : n3(t4);
1567
+ }
1568
+ function f3(r3) {
1569
+ return null === r3 || s(r3) ? (e3.exit("codeFencedFence"), t3(r3)) : n3(r3);
1570
+ }
1571
+ }, partial: true };
1572
+ let o2, c2 = 0, u2 = 0;
1573
+ return function(t3) {
1574
+ return function(t4) {
1575
+ const n3 = r2.events[r2.events.length - 1];
1576
+ return c2 = n3 && "linePrefix" === n3[1].type ? n3[2].sliceSerialize(n3[1], true).length : 0, o2 = t4, e2.enter("codeFenced"), e2.enter("codeFencedFence"), e2.enter("codeFencedFenceSequence"), a2(t4);
1577
+ }(t3);
1578
+ };
1579
+ function a2(t3) {
1580
+ return t3 === o2 ? (u2++, e2.consume(t3), a2) : u2 < 3 ? n2(t3) : (e2.exit("codeFencedFenceSequence"), p(t3) ? h(e2, l2, "whitespace")(t3) : l2(t3));
1581
+ }
1582
+ function l2(n3) {
1583
+ return null === n3 || s(n3) ? (e2.exit("codeFencedFence"), r2.interrupt ? t2(n3) : e2.check(it, g2, y2)(n3)) : (e2.enter("codeFencedFenceInfo"), e2.enter("chunkString", { contentType: "string" }), f2(n3));
1584
+ }
1585
+ function f2(t3) {
1586
+ return null === t3 || s(t3) ? (e2.exit("chunkString"), e2.exit("codeFencedFenceInfo"), l2(t3)) : p(t3) ? (e2.exit("chunkString"), e2.exit("codeFencedFenceInfo"), h(e2, d2, "whitespace")(t3)) : 96 === t3 && t3 === o2 ? n2(t3) : (e2.consume(t3), f2);
1587
+ }
1588
+ function d2(t3) {
1589
+ return null === t3 || s(t3) ? l2(t3) : (e2.enter("codeFencedFenceMeta"), e2.enter("chunkString", { contentType: "string" }), m2(t3));
1590
+ }
1591
+ function m2(t3) {
1592
+ return null === t3 || s(t3) ? (e2.exit("chunkString"), e2.exit("codeFencedFenceMeta"), l2(t3)) : 96 === t3 && t3 === o2 ? n2(t3) : (e2.consume(t3), m2);
1593
+ }
1594
+ function g2(t3) {
1595
+ return e2.attempt(i2, y2, b2)(t3);
1596
+ }
1597
+ function b2(t3) {
1598
+ return e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), x2;
1599
+ }
1600
+ function x2(t3) {
1601
+ return c2 > 0 && p(t3) ? h(e2, v2, "linePrefix", c2 + 1)(t3) : v2(t3);
1602
+ }
1603
+ function v2(t3) {
1604
+ return null === t3 || s(t3) ? e2.check(it, g2, y2)(t3) : (e2.enter("codeFlowValue"), k2(t3));
1605
+ }
1606
+ function k2(t3) {
1607
+ return null === t3 || s(t3) ? (e2.exit("codeFlowValue"), v2(t3)) : (e2.consume(t3), k2);
1608
+ }
1609
+ function y2(n3) {
1610
+ return e2.exit("codeFenced"), t2(n3);
1611
+ }
1612
+ }, concrete: true }, ct = { AElig: "\xC6", AMP: "&", Aacute: "\xC1", Abreve: "\u0102", Acirc: "\xC2", Acy: "\u0410", Afr: "\u{1D504}", Agrave: "\xC0", Alpha: "\u0391", Amacr: "\u0100", And: "\u2A53", Aogon: "\u0104", Aopf: "\u{1D538}", ApplyFunction: "\u2061", Aring: "\xC5", Ascr: "\u{1D49C}", Assign: "\u2254", Atilde: "\xC3", Auml: "\xC4", Backslash: "\u2216", Barv: "\u2AE7", Barwed: "\u2306", Bcy: "\u0411", Because: "\u2235", Bernoullis: "\u212C", Beta: "\u0392", Bfr: "\u{1D505}", Bopf: "\u{1D539}", Breve: "\u02D8", Bscr: "\u212C", Bumpeq: "\u224E", CHcy: "\u0427", COPY: "\xA9", Cacute: "\u0106", Cap: "\u22D2", CapitalDifferentialD: "\u2145", Cayleys: "\u212D", Ccaron: "\u010C", Ccedil: "\xC7", Ccirc: "\u0108", Cconint: "\u2230", Cdot: "\u010A", Cedilla: "\xB8", CenterDot: "\xB7", Cfr: "\u212D", Chi: "\u03A7", CircleDot: "\u2299", CircleMinus: "\u2296", CirclePlus: "\u2295", CircleTimes: "\u2297", ClockwiseContourIntegral: "\u2232", CloseCurlyDoubleQuote: "\u201D", CloseCurlyQuote: "\u2019", Colon: "\u2237", Colone: "\u2A74", Congruent: "\u2261", Conint: "\u222F", ContourIntegral: "\u222E", Copf: "\u2102", Coproduct: "\u2210", CounterClockwiseContourIntegral: "\u2233", Cross: "\u2A2F", Cscr: "\u{1D49E}", Cup: "\u22D3", CupCap: "\u224D", DD: "\u2145", DDotrahd: "\u2911", DJcy: "\u0402", DScy: "\u0405", DZcy: "\u040F", Dagger: "\u2021", Darr: "\u21A1", Dashv: "\u2AE4", Dcaron: "\u010E", Dcy: "\u0414", Del: "\u2207", Delta: "\u0394", Dfr: "\u{1D507}", DiacriticalAcute: "\xB4", DiacriticalDot: "\u02D9", DiacriticalDoubleAcute: "\u02DD", DiacriticalGrave: "`", DiacriticalTilde: "\u02DC", Diamond: "\u22C4", DifferentialD: "\u2146", Dopf: "\u{1D53B}", Dot: "\xA8", DotDot: "\u20DC", DotEqual: "\u2250", DoubleContourIntegral: "\u222F", DoubleDot: "\xA8", DoubleDownArrow: "\u21D3", DoubleLeftArrow: "\u21D0", DoubleLeftRightArrow: "\u21D4", DoubleLeftTee: "\u2AE4", DoubleLongLeftArrow: "\u27F8", DoubleLongLeftRightArrow: "\u27FA", DoubleLongRightArrow: "\u27F9", DoubleRightArrow: "\u21D2", DoubleRightTee: "\u22A8", DoubleUpArrow: "\u21D1", DoubleUpDownArrow: "\u21D5", DoubleVerticalBar: "\u2225", DownArrow: "\u2193", DownArrowBar: "\u2913", DownArrowUpArrow: "\u21F5", DownBreve: "\u0311", DownLeftRightVector: "\u2950", DownLeftTeeVector: "\u295E", DownLeftVector: "\u21BD", DownLeftVectorBar: "\u2956", DownRightTeeVector: "\u295F", DownRightVector: "\u21C1", DownRightVectorBar: "\u2957", DownTee: "\u22A4", DownTeeArrow: "\u21A7", Downarrow: "\u21D3", Dscr: "\u{1D49F}", Dstrok: "\u0110", ENG: "\u014A", ETH: "\xD0", Eacute: "\xC9", Ecaron: "\u011A", Ecirc: "\xCA", Ecy: "\u042D", Edot: "\u0116", Efr: "\u{1D508}", Egrave: "\xC8", Element: "\u2208", Emacr: "\u0112", EmptySmallSquare: "\u25FB", EmptyVerySmallSquare: "\u25AB", Eogon: "\u0118", Eopf: "\u{1D53C}", Epsilon: "\u0395", Equal: "\u2A75", EqualTilde: "\u2242", Equilibrium: "\u21CC", Escr: "\u2130", Esim: "\u2A73", Eta: "\u0397", Euml: "\xCB", Exists: "\u2203", ExponentialE: "\u2147", Fcy: "\u0424", Ffr: "\u{1D509}", FilledSmallSquare: "\u25FC", FilledVerySmallSquare: "\u25AA", Fopf: "\u{1D53D}", ForAll: "\u2200", Fouriertrf: "\u2131", Fscr: "\u2131", GJcy: "\u0403", GT: ">", Gamma: "\u0393", Gammad: "\u03DC", Gbreve: "\u011E", Gcedil: "\u0122", Gcirc: "\u011C", Gcy: "\u0413", Gdot: "\u0120", Gfr: "\u{1D50A}", Gg: "\u22D9", Gopf: "\u{1D53E}", GreaterEqual: "\u2265", GreaterEqualLess: "\u22DB", GreaterFullEqual: "\u2267", GreaterGreater: "\u2AA2", GreaterLess: "\u2277", GreaterSlantEqual: "\u2A7E", GreaterTilde: "\u2273", Gscr: "\u{1D4A2}", Gt: "\u226B", HARDcy: "\u042A", Hacek: "\u02C7", Hat: "^", Hcirc: "\u0124", Hfr: "\u210C", HilbertSpace: "\u210B", Hopf: "\u210D", HorizontalLine: "\u2500", Hscr: "\u210B", Hstrok: "\u0126", HumpDownHump: "\u224E", HumpEqual: "\u224F", IEcy: "\u0415", IJlig: "\u0132", IOcy: "\u0401", Iacute: "\xCD", Icirc: "\xCE", Icy: "\u0418", Idot: "\u0130", Ifr: "\u2111", Igrave: "\xCC", Im: "\u2111", Imacr: "\u012A", ImaginaryI: "\u2148", Implies: "\u21D2", Int: "\u222C", Integral: "\u222B", Intersection: "\u22C2", InvisibleComma: "\u2063", InvisibleTimes: "\u2062", Iogon: "\u012E", Iopf: "\u{1D540}", Iota: "\u0399", Iscr: "\u2110", Itilde: "\u0128", Iukcy: "\u0406", Iuml: "\xCF", Jcirc: "\u0134", Jcy: "\u0419", Jfr: "\u{1D50D}", Jopf: "\u{1D541}", Jscr: "\u{1D4A5}", Jsercy: "\u0408", Jukcy: "\u0404", KHcy: "\u0425", KJcy: "\u040C", Kappa: "\u039A", Kcedil: "\u0136", Kcy: "\u041A", Kfr: "\u{1D50E}", Kopf: "\u{1D542}", Kscr: "\u{1D4A6}", LJcy: "\u0409", LT: "<", Lacute: "\u0139", Lambda: "\u039B", Lang: "\u27EA", Laplacetrf: "\u2112", Larr: "\u219E", Lcaron: "\u013D", Lcedil: "\u013B", Lcy: "\u041B", LeftAngleBracket: "\u27E8", LeftArrow: "\u2190", LeftArrowBar: "\u21E4", LeftArrowRightArrow: "\u21C6", LeftCeiling: "\u2308", LeftDoubleBracket: "\u27E6", LeftDownTeeVector: "\u2961", LeftDownVector: "\u21C3", LeftDownVectorBar: "\u2959", LeftFloor: "\u230A", LeftRightArrow: "\u2194", LeftRightVector: "\u294E", LeftTee: "\u22A3", LeftTeeArrow: "\u21A4", LeftTeeVector: "\u295A", LeftTriangle: "\u22B2", LeftTriangleBar: "\u29CF", LeftTriangleEqual: "\u22B4", LeftUpDownVector: "\u2951", LeftUpTeeVector: "\u2960", LeftUpVector: "\u21BF", LeftUpVectorBar: "\u2958", LeftVector: "\u21BC", LeftVectorBar: "\u2952", Leftarrow: "\u21D0", Leftrightarrow: "\u21D4", LessEqualGreater: "\u22DA", LessFullEqual: "\u2266", LessGreater: "\u2276", LessLess: "\u2AA1", LessSlantEqual: "\u2A7D", LessTilde: "\u2272", Lfr: "\u{1D50F}", Ll: "\u22D8", Lleftarrow: "\u21DA", Lmidot: "\u013F", LongLeftArrow: "\u27F5", LongLeftRightArrow: "\u27F7", LongRightArrow: "\u27F6", Longleftarrow: "\u27F8", Longleftrightarrow: "\u27FA", Longrightarrow: "\u27F9", Lopf: "\u{1D543}", LowerLeftArrow: "\u2199", LowerRightArrow: "\u2198", Lscr: "\u2112", Lsh: "\u21B0", Lstrok: "\u0141", Lt: "\u226A", Map: "\u2905", Mcy: "\u041C", MediumSpace: "\u205F", Mellintrf: "\u2133", Mfr: "\u{1D510}", MinusPlus: "\u2213", Mopf: "\u{1D544}", Mscr: "\u2133", Mu: "\u039C", NJcy: "\u040A", Nacute: "\u0143", Ncaron: "\u0147", Ncedil: "\u0145", Ncy: "\u041D", NegativeMediumSpace: "\u200B", NegativeThickSpace: "\u200B", NegativeThinSpace: "\u200B", NegativeVeryThinSpace: "\u200B", NestedGreaterGreater: "\u226B", NestedLessLess: "\u226A", NewLine: "\n", Nfr: "\u{1D511}", NoBreak: "\u2060", NonBreakingSpace: "\xA0", Nopf: "\u2115", Not: "\u2AEC", NotCongruent: "\u2262", NotCupCap: "\u226D", NotDoubleVerticalBar: "\u2226", NotElement: "\u2209", NotEqual: "\u2260", NotEqualTilde: "\u2242\u0338", NotExists: "\u2204", NotGreater: "\u226F", NotGreaterEqual: "\u2271", NotGreaterFullEqual: "\u2267\u0338", NotGreaterGreater: "\u226B\u0338", NotGreaterLess: "\u2279", NotGreaterSlantEqual: "\u2A7E\u0338", NotGreaterTilde: "\u2275", NotHumpDownHump: "\u224E\u0338", NotHumpEqual: "\u224F\u0338", NotLeftTriangle: "\u22EA", NotLeftTriangleBar: "\u29CF\u0338", NotLeftTriangleEqual: "\u22EC", NotLess: "\u226E", NotLessEqual: "\u2270", NotLessGreater: "\u2278", NotLessLess: "\u226A\u0338", NotLessSlantEqual: "\u2A7D\u0338", NotLessTilde: "\u2274", NotNestedGreaterGreater: "\u2AA2\u0338", NotNestedLessLess: "\u2AA1\u0338", NotPrecedes: "\u2280", NotPrecedesEqual: "\u2AAF\u0338", NotPrecedesSlantEqual: "\u22E0", NotReverseElement: "\u220C", NotRightTriangle: "\u22EB", NotRightTriangleBar: "\u29D0\u0338", NotRightTriangleEqual: "\u22ED", NotSquareSubset: "\u228F\u0338", NotSquareSubsetEqual: "\u22E2", NotSquareSuperset: "\u2290\u0338", NotSquareSupersetEqual: "\u22E3", NotSubset: "\u2282\u20D2", NotSubsetEqual: "\u2288", NotSucceeds: "\u2281", NotSucceedsEqual: "\u2AB0\u0338", NotSucceedsSlantEqual: "\u22E1", NotSucceedsTilde: "\u227F\u0338", NotSuperset: "\u2283\u20D2", NotSupersetEqual: "\u2289", NotTilde: "\u2241", NotTildeEqual: "\u2244", NotTildeFullEqual: "\u2247", NotTildeTilde: "\u2249", NotVerticalBar: "\u2224", Nscr: "\u{1D4A9}", Ntilde: "\xD1", Nu: "\u039D", OElig: "\u0152", Oacute: "\xD3", Ocirc: "\xD4", Ocy: "\u041E", Odblac: "\u0150", Ofr: "\u{1D512}", Ograve: "\xD2", Omacr: "\u014C", Omega: "\u03A9", Omicron: "\u039F", Oopf: "\u{1D546}", OpenCurlyDoubleQuote: "\u201C", OpenCurlyQuote: "\u2018", Or: "\u2A54", Oscr: "\u{1D4AA}", Oslash: "\xD8", Otilde: "\xD5", Otimes: "\u2A37", Ouml: "\xD6", OverBar: "\u203E", OverBrace: "\u23DE", OverBracket: "\u23B4", OverParenthesis: "\u23DC", PartialD: "\u2202", Pcy: "\u041F", Pfr: "\u{1D513}", Phi: "\u03A6", Pi: "\u03A0", PlusMinus: "\xB1", Poincareplane: "\u210C", Popf: "\u2119", Pr: "\u2ABB", Precedes: "\u227A", PrecedesEqual: "\u2AAF", PrecedesSlantEqual: "\u227C", PrecedesTilde: "\u227E", Prime: "\u2033", Product: "\u220F", Proportion: "\u2237", Proportional: "\u221D", Pscr: "\u{1D4AB}", Psi: "\u03A8", QUOT: '"', Qfr: "\u{1D514}", Qopf: "\u211A", Qscr: "\u{1D4AC}", RBarr: "\u2910", REG: "\xAE", Racute: "\u0154", Rang: "\u27EB", Rarr: "\u21A0", Rarrtl: "\u2916", Rcaron: "\u0158", Rcedil: "\u0156", Rcy: "\u0420", Re: "\u211C", ReverseElement: "\u220B", ReverseEquilibrium: "\u21CB", ReverseUpEquilibrium: "\u296F", Rfr: "\u211C", Rho: "\u03A1", RightAngleBracket: "\u27E9", RightArrow: "\u2192", RightArrowBar: "\u21E5", RightArrowLeftArrow: "\u21C4", RightCeiling: "\u2309", RightDoubleBracket: "\u27E7", RightDownTeeVector: "\u295D", RightDownVector: "\u21C2", RightDownVectorBar: "\u2955", RightFloor: "\u230B", RightTee: "\u22A2", RightTeeArrow: "\u21A6", RightTeeVector: "\u295B", RightTriangle: "\u22B3", RightTriangleBar: "\u29D0", RightTriangleEqual: "\u22B5", RightUpDownVector: "\u294F", RightUpTeeVector: "\u295C", RightUpVector: "\u21BE", RightUpVectorBar: "\u2954", RightVector: "\u21C0", RightVectorBar: "\u2953", Rightarrow: "\u21D2", Ropf: "\u211D", RoundImplies: "\u2970", Rrightarrow: "\u21DB", Rscr: "\u211B", Rsh: "\u21B1", RuleDelayed: "\u29F4", SHCHcy: "\u0429", SHcy: "\u0428", SOFTcy: "\u042C", Sacute: "\u015A", Sc: "\u2ABC", Scaron: "\u0160", Scedil: "\u015E", Scirc: "\u015C", Scy: "\u0421", Sfr: "\u{1D516}", ShortDownArrow: "\u2193", ShortLeftArrow: "\u2190", ShortRightArrow: "\u2192", ShortUpArrow: "\u2191", Sigma: "\u03A3", SmallCircle: "\u2218", Sopf: "\u{1D54A}", Sqrt: "\u221A", Square: "\u25A1", SquareIntersection: "\u2293", SquareSubset: "\u228F", SquareSubsetEqual: "\u2291", SquareSuperset: "\u2290", SquareSupersetEqual: "\u2292", SquareUnion: "\u2294", Sscr: "\u{1D4AE}", Star: "\u22C6", Sub: "\u22D0", Subset: "\u22D0", SubsetEqual: "\u2286", Succeeds: "\u227B", SucceedsEqual: "\u2AB0", SucceedsSlantEqual: "\u227D", SucceedsTilde: "\u227F", SuchThat: "\u220B", Sum: "\u2211", Sup: "\u22D1", Superset: "\u2283", SupersetEqual: "\u2287", Supset: "\u22D1", THORN: "\xDE", TRADE: "\u2122", TSHcy: "\u040B", TScy: "\u0426", Tab: " ", Tau: "\u03A4", Tcaron: "\u0164", Tcedil: "\u0162", Tcy: "\u0422", Tfr: "\u{1D517}", Therefore: "\u2234", Theta: "\u0398", ThickSpace: "\u205F\u200A", ThinSpace: "\u2009", Tilde: "\u223C", TildeEqual: "\u2243", TildeFullEqual: "\u2245", TildeTilde: "\u2248", Topf: "\u{1D54B}", TripleDot: "\u20DB", Tscr: "\u{1D4AF}", Tstrok: "\u0166", Uacute: "\xDA", Uarr: "\u219F", Uarrocir: "\u2949", Ubrcy: "\u040E", Ubreve: "\u016C", Ucirc: "\xDB", Ucy: "\u0423", Udblac: "\u0170", Ufr: "\u{1D518}", Ugrave: "\xD9", Umacr: "\u016A", UnderBar: "_", UnderBrace: "\u23DF", UnderBracket: "\u23B5", UnderParenthesis: "\u23DD", Union: "\u22C3", UnionPlus: "\u228E", Uogon: "\u0172", Uopf: "\u{1D54C}", UpArrow: "\u2191", UpArrowBar: "\u2912", UpArrowDownArrow: "\u21C5", UpDownArrow: "\u2195", UpEquilibrium: "\u296E", UpTee: "\u22A5", UpTeeArrow: "\u21A5", Uparrow: "\u21D1", Updownarrow: "\u21D5", UpperLeftArrow: "\u2196", UpperRightArrow: "\u2197", Upsi: "\u03D2", Upsilon: "\u03A5", Uring: "\u016E", Uscr: "\u{1D4B0}", Utilde: "\u0168", Uuml: "\xDC", VDash: "\u22AB", Vbar: "\u2AEB", Vcy: "\u0412", Vdash: "\u22A9", Vdashl: "\u2AE6", Vee: "\u22C1", Verbar: "\u2016", Vert: "\u2016", VerticalBar: "\u2223", VerticalLine: "|", VerticalSeparator: "\u2758", VerticalTilde: "\u2240", VeryThinSpace: "\u200A", Vfr: "\u{1D519}", Vopf: "\u{1D54D}", Vscr: "\u{1D4B1}", Vvdash: "\u22AA", Wcirc: "\u0174", Wedge: "\u22C0", Wfr: "\u{1D51A}", Wopf: "\u{1D54E}", Wscr: "\u{1D4B2}", Xfr: "\u{1D51B}", Xi: "\u039E", Xopf: "\u{1D54F}", Xscr: "\u{1D4B3}", YAcy: "\u042F", YIcy: "\u0407", YUcy: "\u042E", Yacute: "\xDD", Ycirc: "\u0176", Ycy: "\u042B", Yfr: "\u{1D51C}", Yopf: "\u{1D550}", Yscr: "\u{1D4B4}", Yuml: "\u0178", ZHcy: "\u0416", Zacute: "\u0179", Zcaron: "\u017D", Zcy: "\u0417", Zdot: "\u017B", ZeroWidthSpace: "\u200B", Zeta: "\u0396", Zfr: "\u2128", Zopf: "\u2124", Zscr: "\u{1D4B5}", aacute: "\xE1", abreve: "\u0103", ac: "\u223E", acE: "\u223E\u0333", acd: "\u223F", acirc: "\xE2", acute: "\xB4", acy: "\u0430", aelig: "\xE6", af: "\u2061", afr: "\u{1D51E}", agrave: "\xE0", alefsym: "\u2135", aleph: "\u2135", alpha: "\u03B1", amacr: "\u0101", amalg: "\u2A3F", amp: "&", and: "\u2227", andand: "\u2A55", andd: "\u2A5C", andslope: "\u2A58", andv: "\u2A5A", ang: "\u2220", ange: "\u29A4", angle: "\u2220", angmsd: "\u2221", angmsdaa: "\u29A8", angmsdab: "\u29A9", angmsdac: "\u29AA", angmsdad: "\u29AB", angmsdae: "\u29AC", angmsdaf: "\u29AD", angmsdag: "\u29AE", angmsdah: "\u29AF", angrt: "\u221F", angrtvb: "\u22BE", angrtvbd: "\u299D", angsph: "\u2222", angst: "\xC5", angzarr: "\u237C", aogon: "\u0105", aopf: "\u{1D552}", ap: "\u2248", apE: "\u2A70", apacir: "\u2A6F", ape: "\u224A", apid: "\u224B", apos: "'", approx: "\u2248", approxeq: "\u224A", aring: "\xE5", ascr: "\u{1D4B6}", ast: "*", asymp: "\u2248", asympeq: "\u224D", atilde: "\xE3", auml: "\xE4", awconint: "\u2233", awint: "\u2A11", bNot: "\u2AED", backcong: "\u224C", backepsilon: "\u03F6", backprime: "\u2035", backsim: "\u223D", backsimeq: "\u22CD", barvee: "\u22BD", barwed: "\u2305", barwedge: "\u2305", bbrk: "\u23B5", bbrktbrk: "\u23B6", bcong: "\u224C", bcy: "\u0431", bdquo: "\u201E", becaus: "\u2235", because: "\u2235", bemptyv: "\u29B0", bepsi: "\u03F6", bernou: "\u212C", beta: "\u03B2", beth: "\u2136", between: "\u226C", bfr: "\u{1D51F}", bigcap: "\u22C2", bigcirc: "\u25EF", bigcup: "\u22C3", bigodot: "\u2A00", bigoplus: "\u2A01", bigotimes: "\u2A02", bigsqcup: "\u2A06", bigstar: "\u2605", bigtriangledown: "\u25BD", bigtriangleup: "\u25B3", biguplus: "\u2A04", bigvee: "\u22C1", bigwedge: "\u22C0", bkarow: "\u290D", blacklozenge: "\u29EB", blacksquare: "\u25AA", blacktriangle: "\u25B4", blacktriangledown: "\u25BE", blacktriangleleft: "\u25C2", blacktriangleright: "\u25B8", blank: "\u2423", blk12: "\u2592", blk14: "\u2591", blk34: "\u2593", block: "\u2588", bne: "=\u20E5", bnequiv: "\u2261\u20E5", bnot: "\u2310", bopf: "\u{1D553}", bot: "\u22A5", bottom: "\u22A5", bowtie: "\u22C8", boxDL: "\u2557", boxDR: "\u2554", boxDl: "\u2556", boxDr: "\u2553", boxH: "\u2550", boxHD: "\u2566", boxHU: "\u2569", boxHd: "\u2564", boxHu: "\u2567", boxUL: "\u255D", boxUR: "\u255A", boxUl: "\u255C", boxUr: "\u2559", boxV: "\u2551", boxVH: "\u256C", boxVL: "\u2563", boxVR: "\u2560", boxVh: "\u256B", boxVl: "\u2562", boxVr: "\u255F", boxbox: "\u29C9", boxdL: "\u2555", boxdR: "\u2552", boxdl: "\u2510", boxdr: "\u250C", boxh: "\u2500", boxhD: "\u2565", boxhU: "\u2568", boxhd: "\u252C", boxhu: "\u2534", boxminus: "\u229F", boxplus: "\u229E", boxtimes: "\u22A0", boxuL: "\u255B", boxuR: "\u2558", boxul: "\u2518", boxur: "\u2514", boxv: "\u2502", boxvH: "\u256A", boxvL: "\u2561", boxvR: "\u255E", boxvh: "\u253C", boxvl: "\u2524", boxvr: "\u251C", bprime: "\u2035", breve: "\u02D8", brvbar: "\xA6", bscr: "\u{1D4B7}", bsemi: "\u204F", bsim: "\u223D", bsime: "\u22CD", bsol: "\\", bsolb: "\u29C5", bsolhsub: "\u27C8", bull: "\u2022", bullet: "\u2022", bump: "\u224E", bumpE: "\u2AAE", bumpe: "\u224F", bumpeq: "\u224F", cacute: "\u0107", cap: "\u2229", capand: "\u2A44", capbrcup: "\u2A49", capcap: "\u2A4B", capcup: "\u2A47", capdot: "\u2A40", caps: "\u2229\uFE00", caret: "\u2041", caron: "\u02C7", ccaps: "\u2A4D", ccaron: "\u010D", ccedil: "\xE7", ccirc: "\u0109", ccups: "\u2A4C", ccupssm: "\u2A50", cdot: "\u010B", cedil: "\xB8", cemptyv: "\u29B2", cent: "\xA2", centerdot: "\xB7", cfr: "\u{1D520}", chcy: "\u0447", check: "\u2713", checkmark: "\u2713", chi: "\u03C7", cir: "\u25CB", cirE: "\u29C3", circ: "\u02C6", circeq: "\u2257", circlearrowleft: "\u21BA", circlearrowright: "\u21BB", circledR: "\xAE", circledS: "\u24C8", circledast: "\u229B", circledcirc: "\u229A", circleddash: "\u229D", cire: "\u2257", cirfnint: "\u2A10", cirmid: "\u2AEF", cirscir: "\u29C2", clubs: "\u2663", clubsuit: "\u2663", colon: ":", colone: "\u2254", coloneq: "\u2254", comma: ",", commat: "@", comp: "\u2201", compfn: "\u2218", complement: "\u2201", complexes: "\u2102", cong: "\u2245", congdot: "\u2A6D", conint: "\u222E", copf: "\u{1D554}", coprod: "\u2210", copy: "\xA9", copysr: "\u2117", crarr: "\u21B5", cross: "\u2717", cscr: "\u{1D4B8}", csub: "\u2ACF", csube: "\u2AD1", csup: "\u2AD0", csupe: "\u2AD2", ctdot: "\u22EF", cudarrl: "\u2938", cudarrr: "\u2935", cuepr: "\u22DE", cuesc: "\u22DF", cularr: "\u21B6", cularrp: "\u293D", cup: "\u222A", cupbrcap: "\u2A48", cupcap: "\u2A46", cupcup: "\u2A4A", cupdot: "\u228D", cupor: "\u2A45", cups: "\u222A\uFE00", curarr: "\u21B7", curarrm: "\u293C", curlyeqprec: "\u22DE", curlyeqsucc: "\u22DF", curlyvee: "\u22CE", curlywedge: "\u22CF", curren: "\xA4", curvearrowleft: "\u21B6", curvearrowright: "\u21B7", cuvee: "\u22CE", cuwed: "\u22CF", cwconint: "\u2232", cwint: "\u2231", cylcty: "\u232D", dArr: "\u21D3", dHar: "\u2965", dagger: "\u2020", daleth: "\u2138", darr: "\u2193", dash: "\u2010", dashv: "\u22A3", dbkarow: "\u290F", dblac: "\u02DD", dcaron: "\u010F", dcy: "\u0434", dd: "\u2146", ddagger: "\u2021", ddarr: "\u21CA", ddotseq: "\u2A77", deg: "\xB0", delta: "\u03B4", demptyv: "\u29B1", dfisht: "\u297F", dfr: "\u{1D521}", dharl: "\u21C3", dharr: "\u21C2", diam: "\u22C4", diamond: "\u22C4", diamondsuit: "\u2666", diams: "\u2666", die: "\xA8", digamma: "\u03DD", disin: "\u22F2", div: "\xF7", divide: "\xF7", divideontimes: "\u22C7", divonx: "\u22C7", djcy: "\u0452", dlcorn: "\u231E", dlcrop: "\u230D", dollar: "$", dopf: "\u{1D555}", dot: "\u02D9", doteq: "\u2250", doteqdot: "\u2251", dotminus: "\u2238", dotplus: "\u2214", dotsquare: "\u22A1", doublebarwedge: "\u2306", downarrow: "\u2193", downdownarrows: "\u21CA", downharpoonleft: "\u21C3", downharpoonright: "\u21C2", drbkarow: "\u2910", drcorn: "\u231F", drcrop: "\u230C", dscr: "\u{1D4B9}", dscy: "\u0455", dsol: "\u29F6", dstrok: "\u0111", dtdot: "\u22F1", dtri: "\u25BF", dtrif: "\u25BE", duarr: "\u21F5", duhar: "\u296F", dwangle: "\u29A6", dzcy: "\u045F", dzigrarr: "\u27FF", eDDot: "\u2A77", eDot: "\u2251", eacute: "\xE9", easter: "\u2A6E", ecaron: "\u011B", ecir: "\u2256", ecirc: "\xEA", ecolon: "\u2255", ecy: "\u044D", edot: "\u0117", ee: "\u2147", efDot: "\u2252", efr: "\u{1D522}", eg: "\u2A9A", egrave: "\xE8", egs: "\u2A96", egsdot: "\u2A98", el: "\u2A99", elinters: "\u23E7", ell: "\u2113", els: "\u2A95", elsdot: "\u2A97", emacr: "\u0113", empty: "\u2205", emptyset: "\u2205", emptyv: "\u2205", emsp13: "\u2004", emsp14: "\u2005", emsp: "\u2003", eng: "\u014B", ensp: "\u2002", eogon: "\u0119", eopf: "\u{1D556}", epar: "\u22D5", eparsl: "\u29E3", eplus: "\u2A71", epsi: "\u03B5", epsilon: "\u03B5", epsiv: "\u03F5", eqcirc: "\u2256", eqcolon: "\u2255", eqsim: "\u2242", eqslantgtr: "\u2A96", eqslantless: "\u2A95", equals: "=", equest: "\u225F", equiv: "\u2261", equivDD: "\u2A78", eqvparsl: "\u29E5", erDot: "\u2253", erarr: "\u2971", escr: "\u212F", esdot: "\u2250", esim: "\u2242", eta: "\u03B7", eth: "\xF0", euml: "\xEB", euro: "\u20AC", excl: "!", exist: "\u2203", expectation: "\u2130", exponentiale: "\u2147", fallingdotseq: "\u2252", fcy: "\u0444", female: "\u2640", ffilig: "\uFB03", fflig: "\uFB00", ffllig: "\uFB04", ffr: "\u{1D523}", filig: "\uFB01", fjlig: "fj", flat: "\u266D", fllig: "\uFB02", fltns: "\u25B1", fnof: "\u0192", fopf: "\u{1D557}", forall: "\u2200", fork: "\u22D4", forkv: "\u2AD9", fpartint: "\u2A0D", frac12: "\xBD", frac13: "\u2153", frac14: "\xBC", frac15: "\u2155", frac16: "\u2159", frac18: "\u215B", frac23: "\u2154", frac25: "\u2156", frac34: "\xBE", frac35: "\u2157", frac38: "\u215C", frac45: "\u2158", frac56: "\u215A", frac58: "\u215D", frac78: "\u215E", frasl: "\u2044", frown: "\u2322", fscr: "\u{1D4BB}", gE: "\u2267", gEl: "\u2A8C", gacute: "\u01F5", gamma: "\u03B3", gammad: "\u03DD", gap: "\u2A86", gbreve: "\u011F", gcirc: "\u011D", gcy: "\u0433", gdot: "\u0121", ge: "\u2265", gel: "\u22DB", geq: "\u2265", geqq: "\u2267", geqslant: "\u2A7E", ges: "\u2A7E", gescc: "\u2AA9", gesdot: "\u2A80", gesdoto: "\u2A82", gesdotol: "\u2A84", gesl: "\u22DB\uFE00", gesles: "\u2A94", gfr: "\u{1D524}", gg: "\u226B", ggg: "\u22D9", gimel: "\u2137", gjcy: "\u0453", gl: "\u2277", glE: "\u2A92", gla: "\u2AA5", glj: "\u2AA4", gnE: "\u2269", gnap: "\u2A8A", gnapprox: "\u2A8A", gne: "\u2A88", gneq: "\u2A88", gneqq: "\u2269", gnsim: "\u22E7", gopf: "\u{1D558}", grave: "`", gscr: "\u210A", gsim: "\u2273", gsime: "\u2A8E", gsiml: "\u2A90", gt: ">", gtcc: "\u2AA7", gtcir: "\u2A7A", gtdot: "\u22D7", gtlPar: "\u2995", gtquest: "\u2A7C", gtrapprox: "\u2A86", gtrarr: "\u2978", gtrdot: "\u22D7", gtreqless: "\u22DB", gtreqqless: "\u2A8C", gtrless: "\u2277", gtrsim: "\u2273", gvertneqq: "\u2269\uFE00", gvnE: "\u2269\uFE00", hArr: "\u21D4", hairsp: "\u200A", half: "\xBD", hamilt: "\u210B", hardcy: "\u044A", harr: "\u2194", harrcir: "\u2948", harrw: "\u21AD", hbar: "\u210F", hcirc: "\u0125", hearts: "\u2665", heartsuit: "\u2665", hellip: "\u2026", hercon: "\u22B9", hfr: "\u{1D525}", hksearow: "\u2925", hkswarow: "\u2926", hoarr: "\u21FF", homtht: "\u223B", hookleftarrow: "\u21A9", hookrightarrow: "\u21AA", hopf: "\u{1D559}", horbar: "\u2015", hscr: "\u{1D4BD}", hslash: "\u210F", hstrok: "\u0127", hybull: "\u2043", hyphen: "\u2010", iacute: "\xED", ic: "\u2063", icirc: "\xEE", icy: "\u0438", iecy: "\u0435", iexcl: "\xA1", iff: "\u21D4", ifr: "\u{1D526}", igrave: "\xEC", ii: "\u2148", iiiint: "\u2A0C", iiint: "\u222D", iinfin: "\u29DC", iiota: "\u2129", ijlig: "\u0133", imacr: "\u012B", image: "\u2111", imagline: "\u2110", imagpart: "\u2111", imath: "\u0131", imof: "\u22B7", imped: "\u01B5", in: "\u2208", incare: "\u2105", infin: "\u221E", infintie: "\u29DD", inodot: "\u0131", int: "\u222B", intcal: "\u22BA", integers: "\u2124", intercal: "\u22BA", intlarhk: "\u2A17", intprod: "\u2A3C", iocy: "\u0451", iogon: "\u012F", iopf: "\u{1D55A}", iota: "\u03B9", iprod: "\u2A3C", iquest: "\xBF", iscr: "\u{1D4BE}", isin: "\u2208", isinE: "\u22F9", isindot: "\u22F5", isins: "\u22F4", isinsv: "\u22F3", isinv: "\u2208", it: "\u2062", itilde: "\u0129", iukcy: "\u0456", iuml: "\xEF", jcirc: "\u0135", jcy: "\u0439", jfr: "\u{1D527}", jmath: "\u0237", jopf: "\u{1D55B}", jscr: "\u{1D4BF}", jsercy: "\u0458", jukcy: "\u0454", kappa: "\u03BA", kappav: "\u03F0", kcedil: "\u0137", kcy: "\u043A", kfr: "\u{1D528}", kgreen: "\u0138", khcy: "\u0445", kjcy: "\u045C", kopf: "\u{1D55C}", kscr: "\u{1D4C0}", lAarr: "\u21DA", lArr: "\u21D0", lAtail: "\u291B", lBarr: "\u290E", lE: "\u2266", lEg: "\u2A8B", lHar: "\u2962", lacute: "\u013A", laemptyv: "\u29B4", lagran: "\u2112", lambda: "\u03BB", lang: "\u27E8", langd: "\u2991", langle: "\u27E8", lap: "\u2A85", laquo: "\xAB", larr: "\u2190", larrb: "\u21E4", larrbfs: "\u291F", larrfs: "\u291D", larrhk: "\u21A9", larrlp: "\u21AB", larrpl: "\u2939", larrsim: "\u2973", larrtl: "\u21A2", lat: "\u2AAB", latail: "\u2919", late: "\u2AAD", lates: "\u2AAD\uFE00", lbarr: "\u290C", lbbrk: "\u2772", lbrace: "{", lbrack: "[", lbrke: "\u298B", lbrksld: "\u298F", lbrkslu: "\u298D", lcaron: "\u013E", lcedil: "\u013C", lceil: "\u2308", lcub: "{", lcy: "\u043B", ldca: "\u2936", ldquo: "\u201C", ldquor: "\u201E", ldrdhar: "\u2967", ldrushar: "\u294B", ldsh: "\u21B2", le: "\u2264", leftarrow: "\u2190", leftarrowtail: "\u21A2", leftharpoondown: "\u21BD", leftharpoonup: "\u21BC", leftleftarrows: "\u21C7", leftrightarrow: "\u2194", leftrightarrows: "\u21C6", leftrightharpoons: "\u21CB", leftrightsquigarrow: "\u21AD", leftthreetimes: "\u22CB", leg: "\u22DA", leq: "\u2264", leqq: "\u2266", leqslant: "\u2A7D", les: "\u2A7D", lescc: "\u2AA8", lesdot: "\u2A7F", lesdoto: "\u2A81", lesdotor: "\u2A83", lesg: "\u22DA\uFE00", lesges: "\u2A93", lessapprox: "\u2A85", lessdot: "\u22D6", lesseqgtr: "\u22DA", lesseqqgtr: "\u2A8B", lessgtr: "\u2276", lesssim: "\u2272", lfisht: "\u297C", lfloor: "\u230A", lfr: "\u{1D529}", lg: "\u2276", lgE: "\u2A91", lhard: "\u21BD", lharu: "\u21BC", lharul: "\u296A", lhblk: "\u2584", ljcy: "\u0459", ll: "\u226A", llarr: "\u21C7", llcorner: "\u231E", llhard: "\u296B", lltri: "\u25FA", lmidot: "\u0140", lmoust: "\u23B0", lmoustache: "\u23B0", lnE: "\u2268", lnap: "\u2A89", lnapprox: "\u2A89", lne: "\u2A87", lneq: "\u2A87", lneqq: "\u2268", lnsim: "\u22E6", loang: "\u27EC", loarr: "\u21FD", lobrk: "\u27E6", longleftarrow: "\u27F5", longleftrightarrow: "\u27F7", longmapsto: "\u27FC", longrightarrow: "\u27F6", looparrowleft: "\u21AB", looparrowright: "\u21AC", lopar: "\u2985", lopf: "\u{1D55D}", loplus: "\u2A2D", lotimes: "\u2A34", lowast: "\u2217", lowbar: "_", loz: "\u25CA", lozenge: "\u25CA", lozf: "\u29EB", lpar: "(", lparlt: "\u2993", lrarr: "\u21C6", lrcorner: "\u231F", lrhar: "\u21CB", lrhard: "\u296D", lrm: "\u200E", lrtri: "\u22BF", lsaquo: "\u2039", lscr: "\u{1D4C1}", lsh: "\u21B0", lsim: "\u2272", lsime: "\u2A8D", lsimg: "\u2A8F", lsqb: "[", lsquo: "\u2018", lsquor: "\u201A", lstrok: "\u0142", lt: "<", ltcc: "\u2AA6", ltcir: "\u2A79", ltdot: "\u22D6", lthree: "\u22CB", ltimes: "\u22C9", ltlarr: "\u2976", ltquest: "\u2A7B", ltrPar: "\u2996", ltri: "\u25C3", ltrie: "\u22B4", ltrif: "\u25C2", lurdshar: "\u294A", luruhar: "\u2966", lvertneqq: "\u2268\uFE00", lvnE: "\u2268\uFE00", mDDot: "\u223A", macr: "\xAF", male: "\u2642", malt: "\u2720", maltese: "\u2720", map: "\u21A6", mapsto: "\u21A6", mapstodown: "\u21A7", mapstoleft: "\u21A4", mapstoup: "\u21A5", marker: "\u25AE", mcomma: "\u2A29", mcy: "\u043C", mdash: "\u2014", measuredangle: "\u2221", mfr: "\u{1D52A}", mho: "\u2127", micro: "\xB5", mid: "\u2223", midast: "*", midcir: "\u2AF0", middot: "\xB7", minus: "\u2212", minusb: "\u229F", minusd: "\u2238", minusdu: "\u2A2A", mlcp: "\u2ADB", mldr: "\u2026", mnplus: "\u2213", models: "\u22A7", mopf: "\u{1D55E}", mp: "\u2213", mscr: "\u{1D4C2}", mstpos: "\u223E", mu: "\u03BC", multimap: "\u22B8", mumap: "\u22B8", nGg: "\u22D9\u0338", nGt: "\u226B\u20D2", nGtv: "\u226B\u0338", nLeftarrow: "\u21CD", nLeftrightarrow: "\u21CE", nLl: "\u22D8\u0338", nLt: "\u226A\u20D2", nLtv: "\u226A\u0338", nRightarrow: "\u21CF", nVDash: "\u22AF", nVdash: "\u22AE", nabla: "\u2207", nacute: "\u0144", nang: "\u2220\u20D2", nap: "\u2249", napE: "\u2A70\u0338", napid: "\u224B\u0338", napos: "\u0149", napprox: "\u2249", natur: "\u266E", natural: "\u266E", naturals: "\u2115", nbsp: "\xA0", nbump: "\u224E\u0338", nbumpe: "\u224F\u0338", ncap: "\u2A43", ncaron: "\u0148", ncedil: "\u0146", ncong: "\u2247", ncongdot: "\u2A6D\u0338", ncup: "\u2A42", ncy: "\u043D", ndash: "\u2013", ne: "\u2260", neArr: "\u21D7", nearhk: "\u2924", nearr: "\u2197", nearrow: "\u2197", nedot: "\u2250\u0338", nequiv: "\u2262", nesear: "\u2928", nesim: "\u2242\u0338", nexist: "\u2204", nexists: "\u2204", nfr: "\u{1D52B}", ngE: "\u2267\u0338", nge: "\u2271", ngeq: "\u2271", ngeqq: "\u2267\u0338", ngeqslant: "\u2A7E\u0338", nges: "\u2A7E\u0338", ngsim: "\u2275", ngt: "\u226F", ngtr: "\u226F", nhArr: "\u21CE", nharr: "\u21AE", nhpar: "\u2AF2", ni: "\u220B", nis: "\u22FC", nisd: "\u22FA", niv: "\u220B", njcy: "\u045A", nlArr: "\u21CD", nlE: "\u2266\u0338", nlarr: "\u219A", nldr: "\u2025", nle: "\u2270", nleftarrow: "\u219A", nleftrightarrow: "\u21AE", nleq: "\u2270", nleqq: "\u2266\u0338", nleqslant: "\u2A7D\u0338", nles: "\u2A7D\u0338", nless: "\u226E", nlsim: "\u2274", nlt: "\u226E", nltri: "\u22EA", nltrie: "\u22EC", nmid: "\u2224", nopf: "\u{1D55F}", not: "\xAC", notin: "\u2209", notinE: "\u22F9\u0338", notindot: "\u22F5\u0338", notinva: "\u2209", notinvb: "\u22F7", notinvc: "\u22F6", notni: "\u220C", notniva: "\u220C", notnivb: "\u22FE", notnivc: "\u22FD", npar: "\u2226", nparallel: "\u2226", nparsl: "\u2AFD\u20E5", npart: "\u2202\u0338", npolint: "\u2A14", npr: "\u2280", nprcue: "\u22E0", npre: "\u2AAF\u0338", nprec: "\u2280", npreceq: "\u2AAF\u0338", nrArr: "\u21CF", nrarr: "\u219B", nrarrc: "\u2933\u0338", nrarrw: "\u219D\u0338", nrightarrow: "\u219B", nrtri: "\u22EB", nrtrie: "\u22ED", nsc: "\u2281", nsccue: "\u22E1", nsce: "\u2AB0\u0338", nscr: "\u{1D4C3}", nshortmid: "\u2224", nshortparallel: "\u2226", nsim: "\u2241", nsime: "\u2244", nsimeq: "\u2244", nsmid: "\u2224", nspar: "\u2226", nsqsube: "\u22E2", nsqsupe: "\u22E3", nsub: "\u2284", nsubE: "\u2AC5\u0338", nsube: "\u2288", nsubset: "\u2282\u20D2", nsubseteq: "\u2288", nsubseteqq: "\u2AC5\u0338", nsucc: "\u2281", nsucceq: "\u2AB0\u0338", nsup: "\u2285", nsupE: "\u2AC6\u0338", nsupe: "\u2289", nsupset: "\u2283\u20D2", nsupseteq: "\u2289", nsupseteqq: "\u2AC6\u0338", ntgl: "\u2279", ntilde: "\xF1", ntlg: "\u2278", ntriangleleft: "\u22EA", ntrianglelefteq: "\u22EC", ntriangleright: "\u22EB", ntrianglerighteq: "\u22ED", nu: "\u03BD", num: "#", numero: "\u2116", numsp: "\u2007", nvDash: "\u22AD", nvHarr: "\u2904", nvap: "\u224D\u20D2", nvdash: "\u22AC", nvge: "\u2265\u20D2", nvgt: ">\u20D2", nvinfin: "\u29DE", nvlArr: "\u2902", nvle: "\u2264\u20D2", nvlt: "<\u20D2", nvltrie: "\u22B4\u20D2", nvrArr: "\u2903", nvrtrie: "\u22B5\u20D2", nvsim: "\u223C\u20D2", nwArr: "\u21D6", nwarhk: "\u2923", nwarr: "\u2196", nwarrow: "\u2196", nwnear: "\u2927", oS: "\u24C8", oacute: "\xF3", oast: "\u229B", ocir: "\u229A", ocirc: "\xF4", ocy: "\u043E", odash: "\u229D", odblac: "\u0151", odiv: "\u2A38", odot: "\u2299", odsold: "\u29BC", oelig: "\u0153", ofcir: "\u29BF", ofr: "\u{1D52C}", ogon: "\u02DB", ograve: "\xF2", ogt: "\u29C1", ohbar: "\u29B5", ohm: "\u03A9", oint: "\u222E", olarr: "\u21BA", olcir: "\u29BE", olcross: "\u29BB", oline: "\u203E", olt: "\u29C0", omacr: "\u014D", omega: "\u03C9", omicron: "\u03BF", omid: "\u29B6", ominus: "\u2296", oopf: "\u{1D560}", opar: "\u29B7", operp: "\u29B9", oplus: "\u2295", or: "\u2228", orarr: "\u21BB", ord: "\u2A5D", order: "\u2134", orderof: "\u2134", ordf: "\xAA", ordm: "\xBA", origof: "\u22B6", oror: "\u2A56", orslope: "\u2A57", orv: "\u2A5B", oscr: "\u2134", oslash: "\xF8", osol: "\u2298", otilde: "\xF5", otimes: "\u2297", otimesas: "\u2A36", ouml: "\xF6", ovbar: "\u233D", par: "\u2225", para: "\xB6", parallel: "\u2225", parsim: "\u2AF3", parsl: "\u2AFD", part: "\u2202", pcy: "\u043F", percnt: "%", period: ".", permil: "\u2030", perp: "\u22A5", pertenk: "\u2031", pfr: "\u{1D52D}", phi: "\u03C6", phiv: "\u03D5", phmmat: "\u2133", phone: "\u260E", pi: "\u03C0", pitchfork: "\u22D4", piv: "\u03D6", planck: "\u210F", planckh: "\u210E", plankv: "\u210F", plus: "+", plusacir: "\u2A23", plusb: "\u229E", pluscir: "\u2A22", plusdo: "\u2214", plusdu: "\u2A25", pluse: "\u2A72", plusmn: "\xB1", plussim: "\u2A26", plustwo: "\u2A27", pm: "\xB1", pointint: "\u2A15", popf: "\u{1D561}", pound: "\xA3", pr: "\u227A", prE: "\u2AB3", prap: "\u2AB7", prcue: "\u227C", pre: "\u2AAF", prec: "\u227A", precapprox: "\u2AB7", preccurlyeq: "\u227C", preceq: "\u2AAF", precnapprox: "\u2AB9", precneqq: "\u2AB5", precnsim: "\u22E8", precsim: "\u227E", prime: "\u2032", primes: "\u2119", prnE: "\u2AB5", prnap: "\u2AB9", prnsim: "\u22E8", prod: "\u220F", profalar: "\u232E", profline: "\u2312", profsurf: "\u2313", prop: "\u221D", propto: "\u221D", prsim: "\u227E", prurel: "\u22B0", pscr: "\u{1D4C5}", psi: "\u03C8", puncsp: "\u2008", qfr: "\u{1D52E}", qint: "\u2A0C", qopf: "\u{1D562}", qprime: "\u2057", qscr: "\u{1D4C6}", quaternions: "\u210D", quatint: "\u2A16", quest: "?", questeq: "\u225F", quot: '"', rAarr: "\u21DB", rArr: "\u21D2", rAtail: "\u291C", rBarr: "\u290F", rHar: "\u2964", race: "\u223D\u0331", racute: "\u0155", radic: "\u221A", raemptyv: "\u29B3", rang: "\u27E9", rangd: "\u2992", range: "\u29A5", rangle: "\u27E9", raquo: "\xBB", rarr: "\u2192", rarrap: "\u2975", rarrb: "\u21E5", rarrbfs: "\u2920", rarrc: "\u2933", rarrfs: "\u291E", rarrhk: "\u21AA", rarrlp: "\u21AC", rarrpl: "\u2945", rarrsim: "\u2974", rarrtl: "\u21A3", rarrw: "\u219D", ratail: "\u291A", ratio: "\u2236", rationals: "\u211A", rbarr: "\u290D", rbbrk: "\u2773", rbrace: "}", rbrack: "]", rbrke: "\u298C", rbrksld: "\u298E", rbrkslu: "\u2990", rcaron: "\u0159", rcedil: "\u0157", rceil: "\u2309", rcub: "}", rcy: "\u0440", rdca: "\u2937", rdldhar: "\u2969", rdquo: "\u201D", rdquor: "\u201D", rdsh: "\u21B3", real: "\u211C", realine: "\u211B", realpart: "\u211C", reals: "\u211D", rect: "\u25AD", reg: "\xAE", rfisht: "\u297D", rfloor: "\u230B", rfr: "\u{1D52F}", rhard: "\u21C1", rharu: "\u21C0", rharul: "\u296C", rho: "\u03C1", rhov: "\u03F1", rightarrow: "\u2192", rightarrowtail: "\u21A3", rightharpoondown: "\u21C1", rightharpoonup: "\u21C0", rightleftarrows: "\u21C4", rightleftharpoons: "\u21CC", rightrightarrows: "\u21C9", rightsquigarrow: "\u219D", rightthreetimes: "\u22CC", ring: "\u02DA", risingdotseq: "\u2253", rlarr: "\u21C4", rlhar: "\u21CC", rlm: "\u200F", rmoust: "\u23B1", rmoustache: "\u23B1", rnmid: "\u2AEE", roang: "\u27ED", roarr: "\u21FE", robrk: "\u27E7", ropar: "\u2986", ropf: "\u{1D563}", roplus: "\u2A2E", rotimes: "\u2A35", rpar: ")", rpargt: "\u2994", rppolint: "\u2A12", rrarr: "\u21C9", rsaquo: "\u203A", rscr: "\u{1D4C7}", rsh: "\u21B1", rsqb: "]", rsquo: "\u2019", rsquor: "\u2019", rthree: "\u22CC", rtimes: "\u22CA", rtri: "\u25B9", rtrie: "\u22B5", rtrif: "\u25B8", rtriltri: "\u29CE", ruluhar: "\u2968", rx: "\u211E", sacute: "\u015B", sbquo: "\u201A", sc: "\u227B", scE: "\u2AB4", scap: "\u2AB8", scaron: "\u0161", sccue: "\u227D", sce: "\u2AB0", scedil: "\u015F", scirc: "\u015D", scnE: "\u2AB6", scnap: "\u2ABA", scnsim: "\u22E9", scpolint: "\u2A13", scsim: "\u227F", scy: "\u0441", sdot: "\u22C5", sdotb: "\u22A1", sdote: "\u2A66", seArr: "\u21D8", searhk: "\u2925", searr: "\u2198", searrow: "\u2198", sect: "\xA7", semi: ";", seswar: "\u2929", setminus: "\u2216", setmn: "\u2216", sext: "\u2736", sfr: "\u{1D530}", sfrown: "\u2322", sharp: "\u266F", shchcy: "\u0449", shcy: "\u0448", shortmid: "\u2223", shortparallel: "\u2225", shy: "\xAD", sigma: "\u03C3", sigmaf: "\u03C2", sigmav: "\u03C2", sim: "\u223C", simdot: "\u2A6A", sime: "\u2243", simeq: "\u2243", simg: "\u2A9E", simgE: "\u2AA0", siml: "\u2A9D", simlE: "\u2A9F", simne: "\u2246", simplus: "\u2A24", simrarr: "\u2972", slarr: "\u2190", smallsetminus: "\u2216", smashp: "\u2A33", smeparsl: "\u29E4", smid: "\u2223", smile: "\u2323", smt: "\u2AAA", smte: "\u2AAC", smtes: "\u2AAC\uFE00", softcy: "\u044C", sol: "/", solb: "\u29C4", solbar: "\u233F", sopf: "\u{1D564}", spades: "\u2660", spadesuit: "\u2660", spar: "\u2225", sqcap: "\u2293", sqcaps: "\u2293\uFE00", sqcup: "\u2294", sqcups: "\u2294\uFE00", sqsub: "\u228F", sqsube: "\u2291", sqsubset: "\u228F", sqsubseteq: "\u2291", sqsup: "\u2290", sqsupe: "\u2292", sqsupset: "\u2290", sqsupseteq: "\u2292", squ: "\u25A1", square: "\u25A1", squarf: "\u25AA", squf: "\u25AA", srarr: "\u2192", sscr: "\u{1D4C8}", ssetmn: "\u2216", ssmile: "\u2323", sstarf: "\u22C6", star: "\u2606", starf: "\u2605", straightepsilon: "\u03F5", straightphi: "\u03D5", strns: "\xAF", sub: "\u2282", subE: "\u2AC5", subdot: "\u2ABD", sube: "\u2286", subedot: "\u2AC3", submult: "\u2AC1", subnE: "\u2ACB", subne: "\u228A", subplus: "\u2ABF", subrarr: "\u2979", subset: "\u2282", subseteq: "\u2286", subseteqq: "\u2AC5", subsetneq: "\u228A", subsetneqq: "\u2ACB", subsim: "\u2AC7", subsub: "\u2AD5", subsup: "\u2AD3", succ: "\u227B", succapprox: "\u2AB8", succcurlyeq: "\u227D", succeq: "\u2AB0", succnapprox: "\u2ABA", succneqq: "\u2AB6", succnsim: "\u22E9", succsim: "\u227F", sum: "\u2211", sung: "\u266A", sup1: "\xB9", sup2: "\xB2", sup3: "\xB3", sup: "\u2283", supE: "\u2AC6", supdot: "\u2ABE", supdsub: "\u2AD8", supe: "\u2287", supedot: "\u2AC4", suphsol: "\u27C9", suphsub: "\u2AD7", suplarr: "\u297B", supmult: "\u2AC2", supnE: "\u2ACC", supne: "\u228B", supplus: "\u2AC0", supset: "\u2283", supseteq: "\u2287", supseteqq: "\u2AC6", supsetneq: "\u228B", supsetneqq: "\u2ACC", supsim: "\u2AC8", supsub: "\u2AD4", supsup: "\u2AD6", swArr: "\u21D9", swarhk: "\u2926", swarr: "\u2199", swarrow: "\u2199", swnwar: "\u292A", szlig: "\xDF", target: "\u2316", tau: "\u03C4", tbrk: "\u23B4", tcaron: "\u0165", tcedil: "\u0163", tcy: "\u0442", tdot: "\u20DB", telrec: "\u2315", tfr: "\u{1D531}", there4: "\u2234", therefore: "\u2234", theta: "\u03B8", thetasym: "\u03D1", thetav: "\u03D1", thickapprox: "\u2248", thicksim: "\u223C", thinsp: "\u2009", thkap: "\u2248", thksim: "\u223C", thorn: "\xFE", tilde: "\u02DC", times: "\xD7", timesb: "\u22A0", timesbar: "\u2A31", timesd: "\u2A30", tint: "\u222D", toea: "\u2928", top: "\u22A4", topbot: "\u2336", topcir: "\u2AF1", topf: "\u{1D565}", topfork: "\u2ADA", tosa: "\u2929", tprime: "\u2034", trade: "\u2122", triangle: "\u25B5", triangledown: "\u25BF", triangleleft: "\u25C3", trianglelefteq: "\u22B4", triangleq: "\u225C", triangleright: "\u25B9", trianglerighteq: "\u22B5", tridot: "\u25EC", trie: "\u225C", triminus: "\u2A3A", triplus: "\u2A39", trisb: "\u29CD", tritime: "\u2A3B", trpezium: "\u23E2", tscr: "\u{1D4C9}", tscy: "\u0446", tshcy: "\u045B", tstrok: "\u0167", twixt: "\u226C", twoheadleftarrow: "\u219E", twoheadrightarrow: "\u21A0", uArr: "\u21D1", uHar: "\u2963", uacute: "\xFA", uarr: "\u2191", ubrcy: "\u045E", ubreve: "\u016D", ucirc: "\xFB", ucy: "\u0443", udarr: "\u21C5", udblac: "\u0171", udhar: "\u296E", ufisht: "\u297E", ufr: "\u{1D532}", ugrave: "\xF9", uharl: "\u21BF", uharr: "\u21BE", uhblk: "\u2580", ulcorn: "\u231C", ulcorner: "\u231C", ulcrop: "\u230F", ultri: "\u25F8", umacr: "\u016B", uml: "\xA8", uogon: "\u0173", uopf: "\u{1D566}", uparrow: "\u2191", updownarrow: "\u2195", upharpoonleft: "\u21BF", upharpoonright: "\u21BE", uplus: "\u228E", upsi: "\u03C5", upsih: "\u03D2", upsilon: "\u03C5", upuparrows: "\u21C8", urcorn: "\u231D", urcorner: "\u231D", urcrop: "\u230E", uring: "\u016F", urtri: "\u25F9", uscr: "\u{1D4CA}", utdot: "\u22F0", utilde: "\u0169", utri: "\u25B5", utrif: "\u25B4", uuarr: "\u21C8", uuml: "\xFC", uwangle: "\u29A7", vArr: "\u21D5", vBar: "\u2AE8", vBarv: "\u2AE9", vDash: "\u22A8", vangrt: "\u299C", varepsilon: "\u03F5", varkappa: "\u03F0", varnothing: "\u2205", varphi: "\u03D5", varpi: "\u03D6", varpropto: "\u221D", varr: "\u2195", varrho: "\u03F1", varsigma: "\u03C2", varsubsetneq: "\u228A\uFE00", varsubsetneqq: "\u2ACB\uFE00", varsupsetneq: "\u228B\uFE00", varsupsetneqq: "\u2ACC\uFE00", vartheta: "\u03D1", vartriangleleft: "\u22B2", vartriangleright: "\u22B3", vcy: "\u0432", vdash: "\u22A2", vee: "\u2228", veebar: "\u22BB", veeeq: "\u225A", vellip: "\u22EE", verbar: "|", vert: "|", vfr: "\u{1D533}", vltri: "\u22B2", vnsub: "\u2282\u20D2", vnsup: "\u2283\u20D2", vopf: "\u{1D567}", vprop: "\u221D", vrtri: "\u22B3", vscr: "\u{1D4CB}", vsubnE: "\u2ACB\uFE00", vsubne: "\u228A\uFE00", vsupnE: "\u2ACC\uFE00", vsupne: "\u228B\uFE00", vzigzag: "\u299A", wcirc: "\u0175", wedbar: "\u2A5F", wedge: "\u2227", wedgeq: "\u2259", weierp: "\u2118", wfr: "\u{1D534}", wopf: "\u{1D568}", wp: "\u2118", wr: "\u2240", wreath: "\u2240", wscr: "\u{1D4CC}", xcap: "\u22C2", xcirc: "\u25EF", xcup: "\u22C3", xdtri: "\u25BD", xfr: "\u{1D535}", xhArr: "\u27FA", xharr: "\u27F7", xi: "\u03BE", xlArr: "\u27F8", xlarr: "\u27F5", xmap: "\u27FC", xnis: "\u22FB", xodot: "\u2A00", xopf: "\u{1D569}", xoplus: "\u2A01", xotime: "\u2A02", xrArr: "\u27F9", xrarr: "\u27F6", xscr: "\u{1D4CD}", xsqcup: "\u2A06", xuplus: "\u2A04", xutri: "\u25B3", xvee: "\u22C1", xwedge: "\u22C0", yacute: "\xFD", yacy: "\u044F", ycirc: "\u0177", ycy: "\u044B", yen: "\xA5", yfr: "\u{1D536}", yicy: "\u0457", yopf: "\u{1D56A}", yscr: "\u{1D4CE}", yucy: "\u044E", yuml: "\xFF", zacute: "\u017A", zcaron: "\u017E", zcy: "\u0437", zdot: "\u017C", zeetrf: "\u2128", zeta: "\u03B6", zfr: "\u{1D537}", zhcy: "\u0436", zigrarr: "\u21DD", zopf: "\u{1D56B}", zscr: "\u{1D4CF}", zwj: "\u200D", zwnj: "\u200C" }, ut = {}.hasOwnProperty, at = { name: "characterReference", tokenize: function(e2, t2, n2) {
1613
+ const r2 = this;
1614
+ let o2, c2, l2 = 0;
1615
+ return function(t3) {
1616
+ return e2.enter("characterReference"), e2.enter("characterReferenceMarker"), e2.consume(t3), e2.exit("characterReferenceMarker"), s2;
1617
+ };
1618
+ function s2(t3) {
1619
+ return 35 === t3 ? (e2.enter("characterReferenceMarkerNumeric"), e2.consume(t3), e2.exit("characterReferenceMarkerNumeric"), f2) : (e2.enter("characterReferenceValue"), o2 = 31, c2 = i, p2(t3));
1620
+ }
1621
+ function f2(t3) {
1622
+ return 88 === t3 || 120 === t3 ? (e2.enter("characterReferenceMarkerHexadecimal"), e2.consume(t3), e2.exit("characterReferenceMarkerHexadecimal"), e2.enter("characterReferenceValue"), o2 = 6, c2 = a, p2) : (e2.enter("characterReferenceValue"), o2 = 7, c2 = u, p2(t3));
1623
+ }
1624
+ function p2(u2) {
1625
+ if (59 === u2 && l2) {
1626
+ const o3 = e2.exit("characterReferenceValue");
1627
+ return c2 !== i || function(e3) {
1628
+ return !!ut.call(ct, e3) && ct[e3];
1629
+ }(r2.sliceSerialize(o3)) ? (e2.enter("characterReferenceMarker"), e2.consume(u2), e2.exit("characterReferenceMarker"), e2.exit("characterReference"), t2) : n2(u2);
1630
+ }
1631
+ return c2(u2) && l2++ < o2 ? (e2.consume(u2), p2) : n2(u2);
1632
+ }
1633
+ } }, lt = { name: "characterEscape", tokenize: function(e2, t2, n2) {
1634
+ return function(t3) {
1635
+ return e2.enter("characterEscape"), e2.enter("escapeMarker"), e2.consume(t3), e2.exit("escapeMarker"), r2;
1636
+ };
1637
+ function r2(r3) {
1638
+ return l(r3) ? (e2.enter("characterEscapeValue"), e2.consume(r3), e2.exit("characterEscapeValue"), e2.exit("characterEscape"), t2) : n2(r3);
1639
+ }
1640
+ } }, st = { name: "lineEnding", tokenize: function(e2, t2) {
1641
+ return function(n2) {
1642
+ return e2.enter("lineEnding"), e2.consume(n2), e2.exit("lineEnding"), h(e2, t2, "linePrefix");
1643
+ };
1644
+ } }, ft = { name: "labelEnd", tokenize: function(e2, t2, n2) {
1645
+ const r2 = this;
1646
+ let i2, o2, c2 = r2.events.length;
1647
+ for (; c2--; ) if (("labelImage" === r2.events[c2][1].type || "labelLink" === r2.events[c2][1].type) && !r2.events[c2][1]._balanced) {
1648
+ i2 = r2.events[c2][1];
1649
+ break;
1650
+ }
1651
+ return function(t3) {
1652
+ return i2 ? i2._inactive ? s2(t3) : (o2 = r2.parser.defined.includes(J(r2.sliceSerialize({ start: i2.end, end: r2.now() }))), e2.enter("labelEnd"), e2.enter("labelMarker"), e2.consume(t3), e2.exit("labelMarker"), e2.exit("labelEnd"), u2) : n2(t3);
1653
+ };
1654
+ function u2(t3) {
1655
+ return 40 === t3 ? e2.attempt(pt, l2, o2 ? l2 : s2)(t3) : 91 === t3 ? e2.attempt(dt, l2, o2 ? a2 : s2)(t3) : o2 ? l2(t3) : s2(t3);
1656
+ }
1657
+ function a2(t3) {
1658
+ return e2.attempt(mt, l2, s2)(t3);
1659
+ }
1660
+ function l2(e3) {
1661
+ return t2(e3);
1662
+ }
1663
+ function s2(e3) {
1664
+ return i2._balanced = true, n2(e3);
1665
+ }
1666
+ }, resolveTo: function(e2, t2) {
1667
+ let n2, r2, i2, o2, c2 = e2.length, u2 = 0;
1668
+ for (; c2--; ) if (n2 = e2[c2][1], r2) {
1669
+ if ("link" === n2.type || "labelLink" === n2.type && n2._inactive) break;
1670
+ "enter" === e2[c2][0] && "labelLink" === n2.type && (n2._inactive = true);
1671
+ } else if (i2) {
1672
+ if ("enter" === e2[c2][0] && ("labelImage" === n2.type || "labelLink" === n2.type) && !n2._balanced && (r2 = c2, "labelLink" !== n2.type)) {
1673
+ u2 = 2;
1674
+ break;
1675
+ }
1676
+ } else "labelEnd" === n2.type && (i2 = c2);
1677
+ const a2 = { type: "labelLink" === e2[r2][1].type ? "link" : "image", start: Object.assign({}, e2[r2][1].start), end: Object.assign({}, e2[e2.length - 1][1].end) }, l2 = { type: "label", start: Object.assign({}, e2[r2][1].start), end: Object.assign({}, e2[i2][1].end) }, s2 = { type: "labelText", start: Object.assign({}, e2[r2 + u2 + 2][1].end), end: Object.assign({}, e2[i2 - 2][1].start) };
1678
+ return o2 = [["enter", a2, t2], ["enter", l2, t2]], o2 = ve(o2, e2.slice(r2 + 1, r2 + u2 + 3)), o2 = ve(o2, [["enter", s2, t2]]), o2 = ve(o2, Pe(t2.parser.constructs.insideSpan.null, e2.slice(r2 + u2 + 4, i2 - 3), t2)), o2 = ve(o2, [["exit", s2, t2], e2[i2 - 2], e2[i2 - 1], ["exit", l2, t2]]), o2 = ve(o2, e2.slice(i2 + 1)), o2 = ve(o2, [["exit", a2, t2]]), xe(e2, r2, e2.length, o2), e2;
1679
+ }, resolveAll: function(e2) {
1680
+ let t2 = -1;
1681
+ for (; ++t2 < e2.length; ) {
1682
+ const n2 = e2[t2][1];
1683
+ "labelImage" !== n2.type && "labelLink" !== n2.type && "labelEnd" !== n2.type || (e2.splice(t2 + 1, "labelImage" === n2.type ? 4 : 2), n2.type = "data", t2++);
1684
+ }
1685
+ return e2;
1686
+ } }, pt = { tokenize: function(e2, t2, n2) {
1687
+ return function(t3) {
1688
+ return e2.enter("resource"), e2.enter("resourceMarker"), e2.consume(t3), e2.exit("resourceMarker"), r2;
1689
+ };
1690
+ function r2(t3) {
1691
+ return f(t3) ? b(e2, i2)(t3) : i2(t3);
1692
+ }
1693
+ function i2(t3) {
1694
+ return 41 === t3 ? l2(t3) : Ue(e2, o2, c2, "resourceDestination", "resourceDestinationLiteral", "resourceDestinationLiteralMarker", "resourceDestinationRaw", "resourceDestinationString", 32)(t3);
1695
+ }
1696
+ function o2(t3) {
1697
+ return f(t3) ? b(e2, u2)(t3) : l2(t3);
1698
+ }
1699
+ function c2(e3) {
1700
+ return n2(e3);
1701
+ }
1702
+ function u2(t3) {
1703
+ return 34 === t3 || 39 === t3 || 40 === t3 ? Qe(e2, a2, n2, "resourceTitle", "resourceTitleMarker", "resourceTitleString")(t3) : l2(t3);
1704
+ }
1705
+ function a2(t3) {
1706
+ return f(t3) ? b(e2, l2)(t3) : l2(t3);
1707
+ }
1708
+ function l2(r3) {
1709
+ return 41 === r3 ? (e2.enter("resourceMarker"), e2.consume(r3), e2.exit("resourceMarker"), e2.exit("resource"), t2) : n2(r3);
1710
+ }
1711
+ } }, dt = { tokenize: function(e2, t2, n2) {
1712
+ const r2 = this;
1713
+ return function(t3) {
1714
+ return Ge.call(r2, e2, i2, o2, "reference", "referenceMarker", "referenceString")(t3);
1715
+ };
1716
+ function i2(e3) {
1717
+ return r2.parser.defined.includes(J(r2.sliceSerialize(r2.events[r2.events.length - 1][1]).slice(1, -1))) ? t2(e3) : n2(e3);
1718
+ }
1719
+ function o2(e3) {
1720
+ return n2(e3);
1721
+ }
1722
+ } }, mt = { tokenize: function(e2, t2, n2) {
1723
+ return function(t3) {
1724
+ return e2.enter("reference"), e2.enter("referenceMarker"), e2.consume(t3), e2.exit("referenceMarker"), r2;
1725
+ };
1726
+ function r2(r3) {
1727
+ return 93 === r3 ? (e2.enter("referenceMarker"), e2.consume(r3), e2.exit("referenceMarker"), e2.exit("reference"), t2) : n2(r3);
1728
+ }
1729
+ } }, gt = { name: "labelStartImage", tokenize: function(e2, t2, n2) {
1730
+ const r2 = this;
1731
+ return function(t3) {
1732
+ return e2.enter("labelImage"), e2.enter("labelImageMarker"), e2.consume(t3), e2.exit("labelImageMarker"), i2;
1733
+ };
1734
+ function i2(t3) {
1735
+ return 91 === t3 ? (e2.enter("labelMarker"), e2.consume(t3), e2.exit("labelMarker"), e2.exit("labelImage"), o2) : n2(t3);
1736
+ }
1737
+ function o2(e3) {
1738
+ return 94 === e3 && "_hiddenFootnoteSupport" in r2.parser.constructs ? n2(e3) : t2(e3);
1739
+ }
1740
+ }, resolveAll: ft.resolveAll };
1741
+ function ht(e2) {
1742
+ return null === e2 || f(e2) || m(e2) ? 1 : d(e2) ? 2 : void 0;
1743
+ }
1744
+ const bt = { name: "attention", tokenize: function(e2, t2) {
1745
+ const n2 = this.parser.constructs.attentionMarkers.null, r2 = this.previous, i2 = ht(r2);
1746
+ let o2;
1747
+ return function(t3) {
1748
+ return o2 = t3, e2.enter("attentionSequence"), c2(t3);
1749
+ };
1750
+ function c2(u2) {
1751
+ if (u2 === o2) return e2.consume(u2), c2;
1752
+ const a2 = e2.exit("attentionSequence"), l2 = ht(u2), s2 = !l2 || 2 === l2 && i2 || n2.includes(u2), f2 = !i2 || 2 === i2 && l2 || n2.includes(r2);
1753
+ return a2._open = Boolean(42 === o2 ? s2 : s2 && (i2 || !f2)), a2._close = Boolean(42 === o2 ? f2 : f2 && (l2 || !s2)), t2(u2);
1754
+ }
1755
+ }, resolveAll: function(e2, t2) {
1756
+ let n2, r2, i2, o2, c2, u2, a2, l2, s2 = -1;
1757
+ for (; ++s2 < e2.length; ) if ("enter" === e2[s2][0] && "attentionSequence" === e2[s2][1].type && e2[s2][1]._close) {
1758
+ for (n2 = s2; n2--; ) if ("exit" === e2[n2][0] && "attentionSequence" === e2[n2][1].type && e2[n2][1]._open && t2.sliceSerialize(e2[n2][1]).charCodeAt(0) === t2.sliceSerialize(e2[s2][1]).charCodeAt(0)) {
1759
+ if ((e2[n2][1]._close || e2[s2][1]._open) && (e2[s2][1].end.offset - e2[s2][1].start.offset) % 3 && !((e2[n2][1].end.offset - e2[n2][1].start.offset + e2[s2][1].end.offset - e2[s2][1].start.offset) % 3)) continue;
1760
+ u2 = e2[n2][1].end.offset - e2[n2][1].start.offset > 1 && e2[s2][1].end.offset - e2[s2][1].start.offset > 1 ? 2 : 1;
1761
+ const f2 = Object.assign({}, e2[n2][1].end), p2 = Object.assign({}, e2[s2][1].start);
1762
+ xt(f2, -u2), xt(p2, u2), o2 = { type: u2 > 1 ? "strongSequence" : "emphasisSequence", start: f2, end: Object.assign({}, e2[n2][1].end) }, c2 = { type: u2 > 1 ? "strongSequence" : "emphasisSequence", start: Object.assign({}, e2[s2][1].start), end: p2 }, i2 = { type: u2 > 1 ? "strongText" : "emphasisText", start: Object.assign({}, e2[n2][1].end), end: Object.assign({}, e2[s2][1].start) }, r2 = { type: u2 > 1 ? "strong" : "emphasis", start: Object.assign({}, o2.start), end: Object.assign({}, c2.end) }, e2[n2][1].end = Object.assign({}, o2.start), e2[s2][1].start = Object.assign({}, c2.end), a2 = [], e2[n2][1].end.offset - e2[n2][1].start.offset && (a2 = ve(a2, [["enter", e2[n2][1], t2], ["exit", e2[n2][1], t2]])), a2 = ve(a2, [["enter", r2, t2], ["enter", o2, t2], ["exit", o2, t2], ["enter", i2, t2]]), a2 = ve(a2, Pe(t2.parser.constructs.insideSpan.null, e2.slice(n2 + 1, s2), t2)), a2 = ve(a2, [["exit", i2, t2], ["enter", c2, t2], ["exit", c2, t2], ["exit", r2, t2]]), e2[s2][1].end.offset - e2[s2][1].start.offset ? (l2 = 2, a2 = ve(a2, [["enter", e2[s2][1], t2], ["exit", e2[s2][1], t2]])) : l2 = 0, xe(e2, n2 - 1, s2 - n2 + 3, a2), s2 = n2 + a2.length - l2 - 2;
1763
+ break;
1764
+ }
1765
+ }
1766
+ for (s2 = -1; ++s2 < e2.length; ) "attentionSequence" === e2[s2][1].type && (e2[s2][1].type = "data");
1767
+ return e2;
1768
+ } };
1769
+ function xt(e2, t2) {
1770
+ e2.column += t2, e2.offset += t2, e2._bufferIndex += t2;
1771
+ }
1772
+ const vt = { name: "autolink", tokenize: function(e2, t2, n2) {
1773
+ let u2 = 0;
1774
+ return function(t3) {
1775
+ return e2.enter("autolink"), e2.enter("autolinkMarker"), e2.consume(t3), e2.exit("autolinkMarker"), e2.enter("autolinkProtocol"), a2;
1776
+ };
1777
+ function a2(t3) {
1778
+ return r(t3) ? (e2.consume(t3), l2) : p2(t3);
1779
+ }
1780
+ function l2(e3) {
1781
+ return 43 === e3 || 45 === e3 || 46 === e3 || i(e3) ? (u2 = 1, s2(e3)) : p2(e3);
1782
+ }
1783
+ function s2(t3) {
1784
+ return 58 === t3 ? (e2.consume(t3), u2 = 0, f2) : (43 === t3 || 45 === t3 || 46 === t3 || i(t3)) && u2++ < 32 ? (e2.consume(t3), s2) : (u2 = 0, p2(t3));
1785
+ }
1786
+ function f2(r2) {
1787
+ return 62 === r2 ? (e2.exit("autolinkProtocol"), e2.enter("autolinkMarker"), e2.consume(r2), e2.exit("autolinkMarker"), e2.exit("autolink"), t2) : null === r2 || 32 === r2 || 60 === r2 || c(r2) ? n2(r2) : (e2.consume(r2), f2);
1788
+ }
1789
+ function p2(t3) {
1790
+ return 64 === t3 ? (e2.consume(t3), d2) : o(t3) ? (e2.consume(t3), p2) : n2(t3);
1791
+ }
1792
+ function d2(e3) {
1793
+ return i(e3) ? m2(e3) : n2(e3);
1794
+ }
1795
+ function m2(n3) {
1796
+ return 46 === n3 ? (e2.consume(n3), u2 = 0, d2) : 62 === n3 ? (e2.exit("autolinkProtocol").type = "autolinkEmail", e2.enter("autolinkMarker"), e2.consume(n3), e2.exit("autolinkMarker"), e2.exit("autolink"), t2) : g2(n3);
1797
+ }
1798
+ function g2(t3) {
1799
+ if ((45 === t3 || i(t3)) && u2++ < 63) {
1800
+ const n3 = 45 === t3 ? g2 : m2;
1801
+ return e2.consume(t3), n3;
1802
+ }
1803
+ return n2(t3);
1804
+ }
1805
+ } }, kt = { name: "htmlText", tokenize: function(e2, t2, n2) {
1806
+ const o2 = this;
1807
+ let c2, u2, a2;
1808
+ return function(t3) {
1809
+ return e2.enter("htmlText"), e2.enter("htmlTextData"), e2.consume(t3), l2;
1810
+ };
1811
+ function l2(t3) {
1812
+ return 33 === t3 ? (e2.consume(t3), d2) : 47 === t3 ? (e2.consume(t3), T2) : 63 === t3 ? (e2.consume(t3), S2) : r(t3) ? (e2.consume(t3), A2) : n2(t3);
1813
+ }
1814
+ function d2(t3) {
1815
+ return 45 === t3 ? (e2.consume(t3), m2) : 91 === t3 ? (e2.consume(t3), u2 = 0, v2) : r(t3) ? (e2.consume(t3), q2) : n2(t3);
1816
+ }
1817
+ function m2(t3) {
1818
+ return 45 === t3 ? (e2.consume(t3), x2) : n2(t3);
1819
+ }
1820
+ function g2(t3) {
1821
+ return null === t3 ? n2(t3) : 45 === t3 ? (e2.consume(t3), b2) : s(t3) ? (a2 = g2, N2(t3)) : (e2.consume(t3), g2);
1822
+ }
1823
+ function b2(t3) {
1824
+ return 45 === t3 ? (e2.consume(t3), x2) : g2(t3);
1825
+ }
1826
+ function x2(e3) {
1827
+ return 62 === e3 ? P2(e3) : 45 === e3 ? b2(e3) : g2(e3);
1828
+ }
1829
+ function v2(t3) {
1830
+ return t3 === "CDATA[".charCodeAt(u2++) ? (e2.consume(t3), 6 === u2 ? k2 : v2) : n2(t3);
1831
+ }
1832
+ function k2(t3) {
1833
+ return null === t3 ? n2(t3) : 93 === t3 ? (e2.consume(t3), y2) : s(t3) ? (a2 = k2, N2(t3)) : (e2.consume(t3), k2);
1834
+ }
1835
+ function y2(t3) {
1836
+ return 93 === t3 ? (e2.consume(t3), w2) : k2(t3);
1837
+ }
1838
+ function w2(t3) {
1839
+ return 62 === t3 ? P2(t3) : 93 === t3 ? (e2.consume(t3), w2) : k2(t3);
1840
+ }
1841
+ function q2(t3) {
1842
+ return null === t3 || 62 === t3 ? P2(t3) : s(t3) ? (a2 = q2, N2(t3)) : (e2.consume(t3), q2);
1843
+ }
1844
+ function S2(t3) {
1845
+ return null === t3 ? n2(t3) : 63 === t3 ? (e2.consume(t3), L2) : s(t3) ? (a2 = S2, N2(t3)) : (e2.consume(t3), S2);
1846
+ }
1847
+ function L2(e3) {
1848
+ return 62 === e3 ? P2(e3) : S2(e3);
1849
+ }
1850
+ function T2(t3) {
1851
+ return r(t3) ? (e2.consume(t3), D2) : n2(t3);
1852
+ }
1853
+ function D2(t3) {
1854
+ return 45 === t3 || i(t3) ? (e2.consume(t3), D2) : E2(t3);
1855
+ }
1856
+ function E2(t3) {
1857
+ return s(t3) ? (a2 = E2, N2(t3)) : p(t3) ? (e2.consume(t3), E2) : P2(t3);
1858
+ }
1859
+ function A2(t3) {
1860
+ return 45 === t3 || i(t3) ? (e2.consume(t3), A2) : 47 === t3 || 62 === t3 || f(t3) ? C2(t3) : n2(t3);
1861
+ }
1862
+ function C2(t3) {
1863
+ return 47 === t3 ? (e2.consume(t3), P2) : 58 === t3 || 95 === t3 || r(t3) ? (e2.consume(t3), F2) : s(t3) ? (a2 = C2, N2(t3)) : p(t3) ? (e2.consume(t3), C2) : P2(t3);
1864
+ }
1865
+ function F2(t3) {
1866
+ return 45 === t3 || 46 === t3 || 58 === t3 || 95 === t3 || i(t3) ? (e2.consume(t3), F2) : z2(t3);
1867
+ }
1868
+ function z2(t3) {
1869
+ return 61 === t3 ? (e2.consume(t3), I2) : s(t3) ? (a2 = z2, N2(t3)) : p(t3) ? (e2.consume(t3), z2) : C2(t3);
1870
+ }
1871
+ function I2(t3) {
1872
+ return null === t3 || 60 === t3 || 61 === t3 || 62 === t3 || 96 === t3 ? n2(t3) : 34 === t3 || 39 === t3 ? (e2.consume(t3), c2 = t3, M2) : s(t3) ? (a2 = I2, N2(t3)) : p(t3) ? (e2.consume(t3), I2) : (e2.consume(t3), R2);
1873
+ }
1874
+ function M2(t3) {
1875
+ return t3 === c2 ? (e2.consume(t3), c2 = void 0, O2) : null === t3 ? n2(t3) : s(t3) ? (a2 = M2, N2(t3)) : (e2.consume(t3), M2);
1876
+ }
1877
+ function R2(t3) {
1878
+ return null === t3 || 34 === t3 || 39 === t3 || 60 === t3 || 61 === t3 || 96 === t3 ? n2(t3) : 47 === t3 || 62 === t3 || f(t3) ? C2(t3) : (e2.consume(t3), R2);
1879
+ }
1880
+ function O2(e3) {
1881
+ return 47 === e3 || 62 === e3 || f(e3) ? C2(e3) : n2(e3);
1882
+ }
1883
+ function P2(r2) {
1884
+ return 62 === r2 ? (e2.consume(r2), e2.exit("htmlTextData"), e2.exit("htmlText"), t2) : n2(r2);
1885
+ }
1886
+ function N2(t3) {
1887
+ return e2.exit("htmlTextData"), e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), V2;
1888
+ }
1889
+ function V2(t3) {
1890
+ return p(t3) ? h(e2, _2, "linePrefix", o2.parser.constructs.disable.null.includes("codeIndented") ? void 0 : 4)(t3) : _2(t3);
1891
+ }
1892
+ function _2(t3) {
1893
+ return e2.enter("htmlTextData"), a2(t3);
1894
+ }
1895
+ } }, yt = { name: "labelStartLink", tokenize: function(e2, t2, n2) {
1896
+ const r2 = this;
1897
+ return function(t3) {
1898
+ return e2.enter("labelLink"), e2.enter("labelMarker"), e2.consume(t3), e2.exit("labelMarker"), e2.exit("labelLink"), i2;
1899
+ };
1900
+ function i2(e3) {
1901
+ return 94 === e3 && "_hiddenFootnoteSupport" in r2.parser.constructs ? n2(e3) : t2(e3);
1902
+ }
1903
+ }, resolveAll: ft.resolveAll }, wt = { name: "hardBreakEscape", tokenize: function(e2, t2, n2) {
1904
+ return function(t3) {
1905
+ return e2.enter("hardBreakEscape"), e2.consume(t3), r2;
1906
+ };
1907
+ function r2(r3) {
1908
+ return s(r3) ? (e2.exit("hardBreakEscape"), t2(r3)) : n2(r3);
1909
+ }
1910
+ } }, qt = { name: "codeText", tokenize: function(e2, t2, n2) {
1911
+ let r2, i2, o2 = 0;
1912
+ return function(t3) {
1913
+ return e2.enter("codeText"), e2.enter("codeTextSequence"), c2(t3);
1914
+ };
1915
+ function c2(t3) {
1916
+ return 96 === t3 ? (e2.consume(t3), o2++, c2) : (e2.exit("codeTextSequence"), u2(t3));
1917
+ }
1918
+ function u2(t3) {
1919
+ return null === t3 ? n2(t3) : 32 === t3 ? (e2.enter("space"), e2.consume(t3), e2.exit("space"), u2) : 96 === t3 ? (i2 = e2.enter("codeTextSequence"), r2 = 0, l2(t3)) : s(t3) ? (e2.enter("lineEnding"), e2.consume(t3), e2.exit("lineEnding"), u2) : (e2.enter("codeTextData"), a2(t3));
1920
+ }
1921
+ function a2(t3) {
1922
+ return null === t3 || 32 === t3 || 96 === t3 || s(t3) ? (e2.exit("codeTextData"), u2(t3)) : (e2.consume(t3), a2);
1923
+ }
1924
+ function l2(n3) {
1925
+ return 96 === n3 ? (e2.consume(n3), r2++, l2) : r2 === o2 ? (e2.exit("codeTextSequence"), e2.exit("codeText"), t2(n3)) : (i2.type = "codeTextData", a2(n3));
1926
+ }
1927
+ }, resolve: function(e2) {
1928
+ let t2, n2, r2 = e2.length - 4, i2 = 3;
1929
+ if (!("lineEnding" !== e2[i2][1].type && "space" !== e2[i2][1].type || "lineEnding" !== e2[r2][1].type && "space" !== e2[r2][1].type)) {
1930
+ for (t2 = i2; ++t2 < r2; ) if ("codeTextData" === e2[t2][1].type) {
1931
+ e2[i2][1].type = "codeTextPadding", e2[r2][1].type = "codeTextPadding", i2 += 2, r2 -= 2;
1932
+ break;
1933
+ }
1934
+ }
1935
+ for (t2 = i2 - 1, r2++; ++t2 <= r2; ) void 0 === n2 ? t2 !== r2 && "lineEnding" !== e2[t2][1].type && (n2 = t2) : t2 !== r2 && "lineEnding" !== e2[t2][1].type || (e2[n2][1].type = "codeTextData", t2 !== n2 + 2 && (e2[n2][1].end = e2[t2 - 1][1].end, e2.splice(n2 + 2, t2 - n2 - 2), r2 -= t2 - n2 - 2, t2 = n2 + 2), n2 = void 0);
1936
+ return e2;
1937
+ }, previous: function(e2) {
1938
+ return 96 !== e2 || "characterEscape" === this.events[this.events.length - 1][1].type;
1939
+ } }, St = { 42: _e, 43: _e, 45: _e, 48: _e, 49: _e, 50: _e, 51: _e, 52: _e, 53: _e, 54: _e, 55: _e, 56: _e, 57: _e, 62: He }, Lt = { 91: We }, Tt = { [-2]: Je, [-1]: Je, 32: Je }, Dt = { 35: Ke, 42: Ve, 45: [Xe, Ve], 60: tt, 61: Xe, 95: Ve, 96: ot, 126: ot }, Et = { 38: at, 92: lt }, At = { [-5]: st, [-4]: st, [-3]: st, 33: gt, 38: at, 42: bt, 60: [vt, kt], 91: yt, 92: [wt, lt], 93: ft, 95: bt, 96: qt }, Ct = { null: [bt, Fe] }, Ft = { null: [42, 95] }, zt = { null: [] };
1940
+ function It(e2) {
1941
+ const t2 = { defined: [], lazy: {}, constructs: function(e3) {
1942
+ const t3 = {};
1943
+ let n2 = -1;
1944
+ for (; ++n2 < e3.length; ) ye(t3, e3[n2]);
1945
+ return t3;
1946
+ }([n, ...(e2 || {}).extensions || []]), content: r2(qe), document: r2(Se), flow: r2(Ce), string: r2(ze), text: r2(Ie) };
1947
+ return t2;
1948
+ function r2(e3) {
1949
+ return function(n2) {
1950
+ return Ne(t2, e3, n2);
1951
+ };
1952
+ }
1953
+ }
1954
+ function Mt(e2) {
1955
+ for (; !Te(e2); ) ;
1956
+ return e2;
1957
+ }
1958
+ const Rt = /[\0\t\n\r]/g;
1959
+ function Ot() {
1960
+ let e2, t2 = 1, n2 = "", r2 = true;
1961
+ return function(i2, o2, c2) {
1962
+ const u2 = [];
1963
+ let a2, l2, s2, f2, p2;
1964
+ for (i2 = n2 + ("string" == typeof i2 ? i2.toString() : new TextDecoder(o2 || void 0).decode(i2)), s2 = 0, n2 = "", r2 && (65279 === i2.charCodeAt(0) && s2++, r2 = void 0); s2 < i2.length; ) {
1965
+ if (Rt.lastIndex = s2, a2 = Rt.exec(i2), f2 = a2 && void 0 !== a2.index ? a2.index : i2.length, p2 = i2.charCodeAt(f2), !a2) {
1966
+ n2 = i2.slice(s2);
1967
+ break;
1968
+ }
1969
+ if (10 === p2 && s2 === f2 && e2) u2.push(-3), e2 = void 0;
1970
+ else switch (e2 && (u2.push(-5), e2 = void 0), s2 < f2 && (u2.push(i2.slice(s2, f2)), t2 += f2 - s2), p2) {
1971
+ case 0:
1972
+ u2.push(65533), t2++;
1973
+ break;
1974
+ case 9:
1975
+ for (l2 = 4 * Math.ceil(t2 / 4), u2.push(-2); t2++ < l2; ) u2.push(-1);
1976
+ break;
1977
+ case 10:
1978
+ u2.push(-4), t2 = 1;
1979
+ break;
1980
+ default:
1981
+ e2 = true, t2 = 1;
1982
+ }
1983
+ s2 = f2 + 1;
1984
+ }
1985
+ return c2 && (e2 && u2.push(-5), n2 && u2.push(n2), u2.push(null)), u2;
1986
+ };
1987
+ }
1988
+ var Pt = exports2;
1989
+ for (var Nt in t) Pt[Nt] = t[Nt];
1990
+ t.__esModule && Object.defineProperty(Pt, "__esModule", { value: true });
1991
+ })();
1992
+ }
1993
+ });
1994
+
1995
+ // node_modules/markdownlint/helpers/shared.js
1996
+ var require_shared = __commonJS({
1997
+ "node_modules/markdownlint/helpers/shared.js"(exports2, module2) {
1998
+ "use strict";
1999
+ module2.exports.newLineRe = /\r\n?|\n/g;
2000
+ module2.exports.nextLinesRe = /[\r\n][\s\S]*$/;
2001
+ }
2002
+ });
2003
+
2004
+ // node_modules/markdownlint/helpers/micromark.cjs
2005
+ var require_micromark2 = __commonJS({
2006
+ "node_modules/markdownlint/helpers/micromark.cjs"(exports2, module2) {
2007
+ "use strict";
2008
+ var {
2009
+ directive,
2010
+ gfmAutolinkLiteral,
2011
+ gfmFootnote,
2012
+ gfmTable,
2013
+ math,
2014
+ parse: parse2,
2015
+ postprocess: postprocess2,
2016
+ preprocess: preprocess2
2017
+ // @ts-ignore
2018
+ } = require_micromark();
2019
+ var { newLineRe } = require_shared();
2020
+ var flatTokensSymbol = Symbol("flat-tokens");
2021
+ function isHtmlFlowComment(token) {
2022
+ const { text: text3, type } = token;
2023
+ if (type === "htmlFlow" && text3.startsWith("<!--") && text3.endsWith("-->")) {
2024
+ const comment = text3.slice(4, -3);
2025
+ return !comment.startsWith(">") && !comment.startsWith("->") && !comment.endsWith("-");
2026
+ }
2027
+ return false;
2028
+ }
2029
+ function getMicromarkEvents(markdown, micromarkOptions = {}, referencesDefined = true) {
2030
+ micromarkOptions.extensions = micromarkOptions.extensions || [];
2031
+ micromarkOptions.extensions.push(
2032
+ directive(),
2033
+ gfmAutolinkLiteral(),
2034
+ gfmFootnote(),
2035
+ gfmTable(),
2036
+ math()
2037
+ );
2038
+ const encoding = void 0;
2039
+ const eol = true;
2040
+ const parseContext = parse2(micromarkOptions);
2041
+ if (referencesDefined) {
2042
+ parseContext.defined.includes = (searchElement) => searchElement.length > 0;
2043
+ }
2044
+ const chunks = preprocess2()(markdown, encoding, eol);
2045
+ const events = postprocess2(parseContext.document().write(chunks));
2046
+ return events;
2047
+ }
2048
+ function micromarkParseWithOffset(markdown, micromarkOptions, referencesDefined, lineDelta, ancestor) {
2049
+ const events = getMicromarkEvents(
2050
+ markdown,
2051
+ micromarkOptions,
2052
+ referencesDefined
2053
+ );
2054
+ const document3 = [];
2055
+ let flatTokens = [];
2056
+ const root = {
2057
+ "type": "data",
2058
+ "startLine": -1,
2059
+ "startColumn": -1,
2060
+ "endLine": -1,
2061
+ "endColumn": -1,
2062
+ "text": "ROOT",
2063
+ "children": document3,
2064
+ "parent": null
2065
+ };
2066
+ const history = [root];
2067
+ let current = root;
2068
+ let reparseOptions = null;
2069
+ let lines = null;
2070
+ let skipHtmlFlowChildren = false;
2071
+ for (const event of events) {
2072
+ const [kind, token, context] = event;
2073
+ const { type, start, end } = token;
2074
+ const { "column": startColumn, "line": startLine } = start;
2075
+ const { "column": endColumn, "line": endLine } = end;
2076
+ const text3 = context.sliceSerialize(token);
2077
+ if (kind === "enter" && !skipHtmlFlowChildren) {
2078
+ const previous2 = current;
2079
+ history.push(previous2);
2080
+ current = {
2081
+ type,
2082
+ "startLine": startLine + lineDelta,
2083
+ startColumn,
2084
+ "endLine": endLine + lineDelta,
2085
+ endColumn,
2086
+ text: text3,
2087
+ "children": [],
2088
+ "parent": previous2 === root ? ancestor || null : previous2
2089
+ };
2090
+ previous2.children.push(current);
2091
+ flatTokens.push(current);
2092
+ if (current.type === "htmlFlow" && !isHtmlFlowComment(current)) {
2093
+ skipHtmlFlowChildren = true;
2094
+ if (!reparseOptions || !lines) {
2095
+ reparseOptions = {
2096
+ ...micromarkOptions,
2097
+ "extensions": [
2098
+ {
2099
+ "disable": {
2100
+ "null": ["codeIndented", "htmlFlow"]
2101
+ }
2102
+ }
2103
+ ]
2104
+ };
2105
+ lines = markdown.split(newLineRe);
2106
+ }
2107
+ const reparseMarkdown = lines.slice(current.startLine - 1, current.endLine).join("\n");
2108
+ const tokens = micromarkParseWithOffset(
2109
+ reparseMarkdown,
2110
+ reparseOptions,
2111
+ referencesDefined,
2112
+ current.startLine - 1,
2113
+ current
2114
+ );
2115
+ current.children = tokens;
2116
+ flatTokens = flatTokens.concat(tokens[flatTokensSymbol]);
2117
+ }
2118
+ } else if (kind === "exit") {
2119
+ if (type === "htmlFlow") {
2120
+ skipHtmlFlowChildren = false;
2121
+ }
2122
+ if (!skipHtmlFlowChildren) {
2123
+ Object.freeze(current.children);
2124
+ Object.freeze(current);
2125
+ current = history.pop();
2126
+ }
2127
+ }
2128
+ }
2129
+ Object.defineProperty(document3, flatTokensSymbol, { "value": flatTokens });
2130
+ Object.freeze(document3);
2131
+ return document3;
2132
+ }
2133
+ function micromarkParse(markdown, micromarkOptions = {}, referencesDefined = true) {
2134
+ return micromarkParseWithOffset(
2135
+ markdown,
2136
+ micromarkOptions,
2137
+ referencesDefined,
2138
+ 0
2139
+ );
2140
+ }
2141
+ function filterByPredicate(tokens, allowed, transformChildren) {
2142
+ allowed = allowed || (() => true);
2143
+ const result = [];
2144
+ const queue = [
2145
+ {
2146
+ "array": tokens,
2147
+ "index": 0
2148
+ }
2149
+ ];
2150
+ while (queue.length > 0) {
2151
+ const current = queue[queue.length - 1];
2152
+ const { array, index: index2 } = current;
2153
+ if (index2 < array.length) {
2154
+ const token = array[current.index++];
2155
+ if (allowed(token)) {
2156
+ result.push(token);
2157
+ }
2158
+ const { children } = token;
2159
+ if (children.length > 0) {
2160
+ const transformed = transformChildren ? transformChildren(token) : children;
2161
+ queue.push(
2162
+ {
2163
+ "array": transformed,
2164
+ "index": 0
2165
+ }
2166
+ );
2167
+ }
2168
+ } else {
2169
+ queue.pop();
2170
+ }
2171
+ }
2172
+ return result;
2173
+ }
2174
+ function filterByTypes(tokens, types) {
2175
+ const predicate = (token) => types.includes(token.type);
2176
+ const flatTokens = tokens[flatTokensSymbol];
2177
+ if (flatTokens) {
2178
+ return flatTokens.filter(predicate);
2179
+ }
2180
+ return filterByPredicate(tokens, predicate);
2181
+ }
2182
+ function getHeadingLevel(heading) {
2183
+ const headingSequence = filterByTypes(
2184
+ heading.children,
2185
+ ["atxHeadingSequence", "setextHeadingLineSequence"]
2186
+ );
2187
+ let level = 1;
2188
+ const { text: text3 } = headingSequence[0];
2189
+ if (text3[0] === "#") {
2190
+ level = Math.min(text3.length, 6);
2191
+ } else if (text3[0] === "-") {
2192
+ level = 2;
2193
+ }
2194
+ return level;
2195
+ }
2196
+ function getHtmlTagInfo(token) {
2197
+ const htmlTagNameRe = /^<([^!>][^/\s>]*)/;
2198
+ if (token.type === "htmlText") {
2199
+ const match = htmlTagNameRe.exec(token.text);
2200
+ if (match) {
2201
+ const name = match[1];
2202
+ const close = name.startsWith("/");
2203
+ return {
2204
+ close,
2205
+ "name": close ? name.slice(1) : name
2206
+ };
2207
+ }
2208
+ }
2209
+ return null;
2210
+ }
2211
+ function getTokenParentOfType(token, types) {
2212
+ let current = token;
2213
+ while ((current = current.parent) && !types.includes(current.type)) {
2214
+ }
2215
+ return current;
2216
+ }
2217
+ function getTokenTextByType(tokens, type) {
2218
+ const filtered = tokens.filter((token) => token.type === type);
2219
+ return filtered.length > 0 ? filtered[0].text : null;
2220
+ }
2221
+ function inHtmlFlow(token) {
2222
+ return getTokenParentOfType(token, ["htmlFlow"]) !== null;
2223
+ }
2224
+ function matchAndGetTokensByType(tokens, matchTypes, resultTypes) {
2225
+ if (tokens.length !== matchTypes.length) {
2226
+ return null;
2227
+ }
2228
+ resultTypes = resultTypes || matchTypes;
2229
+ const result = [];
2230
+ for (let i = 0; i < matchTypes.length; i++) {
2231
+ if (tokens[i].type !== matchTypes[i]) {
2232
+ return null;
2233
+ } else if (resultTypes.includes(matchTypes[i])) {
2234
+ result.push(tokens[i]);
2235
+ }
2236
+ }
2237
+ return result;
2238
+ }
2239
+ function tokenIfType(token, type) {
2240
+ return token && token.type === type ? token : null;
2241
+ }
2242
+ var nonContentTokens = /* @__PURE__ */ new Set([
2243
+ "blockQuoteMarker",
2244
+ "blockQuotePrefix",
2245
+ "blockQuotePrefixWhitespace",
2246
+ "lineEnding",
2247
+ "lineEndingBlank",
2248
+ "linePrefix",
2249
+ "listItemIndent"
2250
+ ]);
2251
+ module2.exports = {
2252
+ "parse": micromarkParse,
2253
+ filterByPredicate,
2254
+ filterByTypes,
2255
+ getHeadingLevel,
2256
+ getHtmlTagInfo,
2257
+ getMicromarkEvents,
2258
+ getTokenParentOfType,
2259
+ getTokenTextByType,
2260
+ inHtmlFlow,
2261
+ isHtmlFlowComment,
2262
+ matchAndGetTokensByType,
2263
+ nonContentTokens,
2264
+ tokenIfType
2265
+ };
2266
+ }
2267
+ });
2268
+
33
2269
  // node_modules/markdownlint/helpers/helpers.js
34
2270
  var require_helpers = __commonJS({
35
2271
  "node_modules/markdownlint/helpers/helpers.js"(exports2, module2) {
36
2272
  "use strict";
37
- var newLineRe = /\r\n?|\n/g;
2273
+ var micromark = require_micromark2();
2274
+ var { newLineRe, nextLinesRe } = require_shared();
38
2275
  module2.exports.newLineRe = newLineRe;
39
- module2.exports.frontMatterRe = // eslint-disable-next-line max-len
40
- /((^---\s*$[\s\S]*?^---\s*)|(^\+\+\+\s*$[\s\S]*?^(\+\+\+|\.\.\.)\s*)|(^\{\s*$[\s\S]*?^\}\s*))(\r\n|\r|\n|$)/m;
41
- var inlineCommentStartRe = (
42
- // eslint-disable-next-line max-len
43
- /(<!--\s*markdownlint-(disable|enable|capture|restore|disable-file|enable-file|disable-line|disable-next-line|configure-file))(?:\s|-->)/gi
44
- );
2276
+ module2.exports.nextLinesRe = nextLinesRe;
2277
+ module2.exports.frontMatterRe = /((^---\s*$[\s\S]+?^---\s*)|(^\+\+\+\s*$[\s\S]+?^(\+\+\+|\.\.\.)\s*)|(^\{\s*$[\s\S]+?^\}\s*))(\r\n|\r|\n|$)/m;
2278
+ var inlineCommentStartRe = /(<!--\s*markdownlint-(disable|enable|capture|restore|disable-file|enable-file|disable-line|disable-next-line|configure-file))(?:\s|-->)/gi;
45
2279
  module2.exports.inlineCommentStartRe = inlineCommentStartRe;
46
- var htmlElementRe = /<(([A-Za-z][A-Za-z\d-]*)(?:\s[^`>]*)?)\/?>/g;
47
- module2.exports.htmlElementRe = htmlElementRe;
48
2280
  module2.exports.listItemMarkerRe = /^([\s>]*)(?:[*+-]|\d+[.)])\s+/;
49
2281
  module2.exports.orderedListItemMarkerRe = /^[\s>]*0*(\d+)[.)]/;
50
- var emphasisMarkersRe = /[_*]/g;
51
2282
  var blockquotePrefixRe = /^[>\s]*/;
52
2283
  module2.exports.blockquotePrefixRe = blockquotePrefixRe;
53
- var referenceLinkRe = /!?\\?\[((?:\[[^\]\0]*\]|[^[\]\0])*)\](?:\[([^\]\0]*)\]|([^(])|$)/g;
54
2284
  var linkReferenceDefinitionRe = /^ {0,3}\[([^\]]*[^\\])\]:/;
55
2285
  module2.exports.linkReferenceDefinitionRe = linkReferenceDefinitionRe;
2286
+ module2.exports.endOfLineHtmlEntityRe = /&(?:#\d+|#[xX][\da-fA-F]+|[a-zA-Z]{2,31}|blk\d{2}|emsp1[34]|frac\d{2}|sup\d|there4);$/;
2287
+ module2.exports.endOfLineGemojiCodeRe = /:(?:[abmovx]|[-+]1|100|1234|(?:1st|2nd|3rd)_place_medal|8ball|clock\d{1,4}|e-mail|non-potable_water|o2|t-rex|u5272|u5408|u55b6|u6307|u6708|u6709|u6e80|u7121|u7533|u7981|u7a7a|[a-z]{2,15}2?|[a-z]{1,14}(?:_[a-z\d]{1,16})+):$/;
56
2288
  var allPunctuation = ".,;:!?\u3002\uFF0C\uFF1B\uFF1A\uFF01\uFF1F";
57
2289
  module2.exports.allPunctuation = allPunctuation;
58
2290
  module2.exports.allPunctuationNoQuestion = allPunctuation.replace(/[??]/gu, "");
59
- module2.exports.isNumber = function isNumber(obj) {
2291
+ function isNumber(obj) {
60
2292
  return typeof obj === "number";
61
- };
62
- module2.exports.isString = function isString(obj) {
2293
+ }
2294
+ module2.exports.isNumber = isNumber;
2295
+ function isString(obj) {
63
2296
  return typeof obj === "string";
64
- };
65
- module2.exports.isEmptyString = function isEmptyString(str) {
2297
+ }
2298
+ module2.exports.isString = isString;
2299
+ function isEmptyString(str) {
66
2300
  return str.length === 0;
67
- };
68
- module2.exports.isObject = function isObject(obj) {
69
- return obj !== null && typeof obj === "object" && !Array.isArray(obj);
2301
+ }
2302
+ module2.exports.isEmptyString = isEmptyString;
2303
+ function isObject(obj) {
2304
+ return !!obj && typeof obj === "object" && !Array.isArray(obj);
2305
+ }
2306
+ module2.exports.isObject = isObject;
2307
+ function isUrl(obj) {
2308
+ return !!obj && Object.getPrototypeOf(obj) === URL.prototype;
2309
+ }
2310
+ module2.exports.isUrl = isUrl;
2311
+ function cloneIfArray(arr) {
2312
+ return Array.isArray(arr) ? [...arr] : arr;
2313
+ }
2314
+ module2.exports.cloneIfArray = cloneIfArray;
2315
+ function cloneIfUrl(url) {
2316
+ return isUrl(url) ? new URL(url) : url;
2317
+ }
2318
+ module2.exports.cloneIfUrl = cloneIfUrl;
2319
+ module2.exports.getHtmlAttributeRe = function getHtmlAttributeRe(name) {
2320
+ return new RegExp(`\\s${name}\\s*=\\s*['"]?([^'"\\s>]*)`, "iu");
70
2321
  };
71
2322
  function isBlankLine(line) {
72
2323
  const startComment = "<!--";
@@ -142,16 +2393,6 @@ var require_helpers = __commonJS({
142
2393
  module2.exports.escapeForRegExp = function escapeForRegExp(str) {
143
2394
  return str.replace(/[-/\\^$*+?.()|[\]{}]/g, "\\$&");
144
2395
  };
145
- var escapedMarkdownRe = /\\./g;
146
- module2.exports.unescapeMarkdown = function unescapeMarkdown(markdown, replacement) {
147
- return markdown.replace(escapedMarkdownRe, (match) => {
148
- const char = match[1];
149
- if ("!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~".includes(char)) {
150
- return replacement || char;
151
- }
152
- return match;
153
- });
154
- };
155
2396
  module2.exports.fencedCodeBlockStyleFor = function fencedCodeBlockStyleFor(markup) {
156
2397
  switch (markup[0]) {
157
2398
  case "~":
@@ -193,20 +2434,16 @@ var require_helpers = __commonJS({
193
2434
  }
194
2435
  };
195
2436
  function filterTokens2(params, type, handler) {
196
- for (const token of params.tokens) {
2437
+ for (const token of params.parsers.markdownit.tokens) {
197
2438
  if (token.type === type) {
198
2439
  handler(token);
199
2440
  }
200
2441
  }
201
2442
  }
202
2443
  module2.exports.filterTokens = filterTokens2;
203
- function isMathBlock(token) {
204
- return (token.tag === "$$" || token.tag === "math") && token.type.startsWith("math_block") && !token.type.endsWith("_end");
205
- }
206
- module2.exports.isMathBlock = isMathBlock;
207
- module2.exports.getLineMetadata = function getLineMetadata(params) {
2444
+ function getLineMetadata(params) {
208
2445
  const lineMetadata = params.lines.map(
209
- (line, index2) => [line, index2, false, 0, false, false, false, false]
2446
+ (line, index2) => [line, index2, false, 0, false, false, false]
210
2447
  );
211
2448
  filterTokens2(params, "fence", (token) => {
212
2449
  lineMetadata[token.map[0]][3] = 1;
@@ -235,13 +2472,9 @@ var require_helpers = __commonJS({
235
2472
  filterTokens2(params, "hr", (token) => {
236
2473
  lineMetadata[token.map[0]][6] = true;
237
2474
  });
238
- for (const token of params.tokens.filter(isMathBlock)) {
239
- for (let i = token.map[0]; i < token.map[1]; i++) {
240
- lineMetadata[i][7] = true;
241
- }
242
- }
243
2475
  return lineMetadata;
244
- };
2476
+ }
2477
+ module2.exports.getLineMetadata = getLineMetadata;
245
2478
  function forEachLine(lineMetadata, handler) {
246
2479
  for (const metadata of lineMetadata) {
247
2480
  handler(...metadata);
@@ -290,17 +2523,9 @@ var require_helpers = __commonJS({
290
2523
  }
291
2524
  return flattenedLists;
292
2525
  };
293
- function forEachInlineChild(params, type, handler) {
294
- filterTokens2(params, "inline", (token) => {
295
- for (const child of token.children.filter((c) => c.type === type)) {
296
- handler(child, token);
297
- }
298
- });
299
- }
300
- module2.exports.forEachInlineChild = forEachInlineChild;
301
2526
  module2.exports.forEachHeading = function forEachHeading(params, handler) {
302
2527
  let heading = null;
303
- for (const token of params.tokens) {
2528
+ for (const token of params.parsers.markdownit.tokens) {
304
2529
  if (token.type === "heading_open") {
305
2530
  heading = token;
306
2531
  } else if (token.type === "heading_close") {
@@ -418,39 +2643,6 @@ var require_helpers = __commonJS({
418
2643
  });
419
2644
  return exclusions;
420
2645
  };
421
- module2.exports.htmlElementRanges = (params, lineMetadata) => {
422
- const exclusions = [];
423
- forEachLine(lineMetadata, (line, lineIndex, inCode) => {
424
- let match = null;
425
- while (!inCode && (match = htmlElementRe.exec(line)) !== null) {
426
- exclusions.push([lineIndex, match.index, match[0].length]);
427
- }
428
- });
429
- forEachInlineChild(params, "html_inline", (token, parent) => {
430
- const parentContent = parent.content;
431
- let tokenContent = token.content;
432
- const parentIndex = parentContent.indexOf(tokenContent);
433
- let deltaLines = 0;
434
- let indent = 0;
435
- for (let i = parentIndex - 1; i >= 0; i--) {
436
- if (parentContent[i] === "\n") {
437
- deltaLines++;
438
- } else if (deltaLines === 0) {
439
- indent++;
440
- }
441
- }
442
- let lineIndex = token.lineNumber - 1 + deltaLines;
443
- do {
444
- const index2 = tokenContent.indexOf("\n");
445
- const length = index2 === -1 ? tokenContent.length : index2;
446
- exclusions.push([lineIndex, indent, length]);
447
- tokenContent = tokenContent.slice(length + 1);
448
- lineIndex++;
449
- indent = 0;
450
- } while (tokenContent.length > 0);
451
- });
452
- return exclusions;
453
- };
454
2646
  var withinAnyRange = (ranges, lineIndex, index2, length) => !ranges.every((span) => lineIndex !== span[0] || index2 < span[1] || index2 + length > span[1] + span[2]);
455
2647
  module2.exports.withinAnyRange = withinAnyRange;
456
2648
  module2.exports.rangeFromRegExp = function rangeFromRegExp(line, regexp) {
@@ -471,214 +2663,124 @@ var require_helpers = __commonJS({
471
2663
  );
472
2664
  return !ignoreFrontMatter && frontMatterLines.some((line) => frontMatterTitleRe.test(line));
473
2665
  };
474
- function forEachLink(line, handler) {
475
- const findClosingSymbol = (index2) => {
476
- const begin = line[index2];
477
- const end = begin === "[" ? "]" : ")";
478
- let nesting = 0;
479
- let escaping2 = false;
480
- let pointy = false;
481
- for (let i = index2 + 1; i < line.length; i++) {
482
- const current = line[i];
483
- if (current === "\\") {
484
- escaping2 = !escaping2;
485
- } else if (!escaping2 && current === begin) {
486
- nesting++;
487
- } else if (!escaping2 && current === end) {
488
- if (nesting > 0) {
489
- nesting--;
490
- } else if (!pointy) {
491
- return i + 1;
492
- }
493
- } else if (i === index2 + 1 && begin === "(" && current === "<") {
494
- pointy = true;
495
- } else if (!escaping2 && pointy && current === ">") {
496
- pointy = false;
497
- nesting = 0;
498
- } else {
499
- escaping2 = false;
500
- }
501
- }
502
- return -1;
503
- };
504
- let escaping = false;
505
- for (let i = 0; i < line.length; i++) {
506
- const current = line[i];
507
- if (current === "\\") {
508
- escaping = !escaping;
509
- } else if (!escaping && current === "[") {
510
- const textEnd = findClosingSymbol(i);
511
- if (textEnd !== -1) {
512
- if (line[textEnd] === "(" || line[textEnd] === "[") {
513
- const destEnd = findClosingSymbol(textEnd);
514
- if (destEnd !== -1) {
515
- const link = line.slice(i, destEnd);
516
- const text3 = line.slice(i, textEnd);
517
- const dest = line.slice(textEnd, destEnd);
518
- handler(i, link, text3, dest);
519
- i = destEnd;
520
- }
521
- }
522
- if (i < textEnd) {
523
- const text3 = line.slice(i, textEnd);
524
- handler(i, text3, text3);
525
- i = textEnd;
526
- }
527
- }
528
- } else {
529
- escaping = false;
530
- }
531
- }
532
- }
533
- module2.exports.forEachLink = forEachLink;
534
- function emphasisMarkersInContent(params) {
535
- const { lines } = params;
536
- const byLine = new Array(lines.length);
537
- for (const [tokenLineIndex, tokenLine] of lines.entries()) {
538
- const inLine = [];
539
- forEachLink(tokenLine, (index2, match) => {
540
- let markerMatch = null;
541
- while (markerMatch = emphasisMarkersRe.exec(match)) {
542
- inLine.push(index2 + markerMatch.index);
543
- }
544
- });
545
- byLine[tokenLineIndex] = inLine;
546
- }
547
- filterTokens2(params, "inline", (token) => {
548
- const { children, lineNumber, map } = token;
549
- if (children.some((child) => child.type === "code_inline")) {
550
- const tokenLines = lines.slice(map[0], map[1]);
551
- forEachInlineCodeSpan(
552
- tokenLines.join("\n"),
553
- (code, lineIndex, column, tickCount) => {
554
- const codeLines = code.split(newLineRe);
555
- for (const [codeLineIndex, codeLine] of codeLines.entries()) {
556
- const byLineIndex = lineNumber - 1 + lineIndex + codeLineIndex;
557
- const inLine = byLine[byLineIndex];
558
- const codeLineOffset = codeLineIndex ? 0 : column - 1 + tickCount;
559
- let match = null;
560
- while (match = emphasisMarkersRe.exec(codeLine)) {
561
- inLine.push(codeLineOffset + match.index);
562
- }
563
- byLine[byLineIndex] = inLine;
564
- }
565
- }
566
- );
567
- }
568
- });
569
- return byLine;
570
- }
571
- module2.exports.emphasisMarkersInContent = emphasisMarkersInContent;
572
- function getReferenceLinkImageData(lineMetadata) {
573
- const references = /* @__PURE__ */ new Map();
574
- const shortcuts = /* @__PURE__ */ new Map();
2666
+ function getReferenceLinkImageData(tokens) {
2667
+ const normalizeReference = (s) => s.toLowerCase().trim().replace(/\s+/g, " ");
575
2668
  const definitions = /* @__PURE__ */ new Map();
576
- const duplicateDefinitions = [];
577
2669
  const definitionLineIndices = [];
578
- const normalizeLabel = (s) => s.toLowerCase().trim().replace(/\s+/g, " ");
579
- const exclusions = [];
580
- const excluded = (match) => withinAnyRange(
581
- exclusions,
582
- 0,
583
- match.index,
584
- match[0].length - (match[3] || "").length
2670
+ const duplicateDefinitions = [];
2671
+ const references = /* @__PURE__ */ new Map();
2672
+ const shortcuts = /* @__PURE__ */ new Map();
2673
+ const filteredTokens = micromark.filterByTypes(
2674
+ tokens,
2675
+ [
2676
+ // definitionLineIndices
2677
+ "definition",
2678
+ "gfmFootnoteDefinition",
2679
+ // definitions and definitionLineIndices
2680
+ "definitionLabelString",
2681
+ "gfmFootnoteDefinitionLabelString",
2682
+ // references and shortcuts
2683
+ "gfmFootnoteCall",
2684
+ "image",
2685
+ "link"
2686
+ ]
585
2687
  );
586
- const lineOffsets = [];
587
- let currentOffset = 0;
588
- const contentLines = [];
589
- forEachLine(lineMetadata, (line, lineIndex2, inCode) => {
590
- lineOffsets[lineIndex2] = currentOffset;
591
- if (!inCode) {
592
- line = line.replace(blockquotePrefixRe, "");
593
- if (line.trim().length === 0) {
594
- line = "\0";
595
- }
596
- contentLines.push(line);
597
- currentOffset += line.length + 1;
598
- }
599
- });
600
- lineOffsets.push(currentOffset);
601
- const contentLine = contentLines.join(" ");
602
- forEachInlineCodeSpan(contentLine, (code, lineIndex2, columnIndex) => {
603
- exclusions.push([0, columnIndex, code.length]);
604
- });
605
- forEachLine(lineMetadata, (line, lineIndex2, inCode) => {
606
- if (!inCode) {
607
- const linkReferenceDefinitionMatch = linkReferenceDefinitionRe.exec(line);
608
- if (linkReferenceDefinitionMatch) {
609
- const label = normalizeLabel(linkReferenceDefinitionMatch[1]);
610
- if (definitions.has(label)) {
611
- duplicateDefinitions.push([label, lineIndex2]);
612
- } else {
613
- definitions.set(label, lineIndex2);
2688
+ for (const token of filteredTokens) {
2689
+ let labelPrefix = "";
2690
+ switch (token.type) {
2691
+ case "definition":
2692
+ case "gfmFootnoteDefinition":
2693
+ for (let i = token.startLine; i <= token.endLine; i++) {
2694
+ definitionLineIndices.push(i - 1);
614
2695
  }
615
- const labelLength = linkReferenceDefinitionMatch[0].length;
616
- exclusions.push([0, lineOffsets[lineIndex2], labelLength]);
617
- const hasDefinition = line.slice(labelLength).trim().length > 0;
618
- definitionLineIndices.push(lineIndex2);
619
- if (!hasDefinition) {
620
- definitionLineIndices.push(lineIndex2 + 1);
621
- }
622
- }
623
- }
624
- });
625
- let lineIndex = 0;
626
- const pendingContents = [
627
- {
628
- "content": contentLine,
629
- "contentLineIndex": 0,
630
- "contentIndex": 0,
631
- "topLevel": true
632
- }
633
- ];
634
- let pendingContent = null;
635
- while (pendingContent = pendingContents.shift()) {
636
- const { content: content3, contentLineIndex, contentIndex, topLevel } = pendingContent;
637
- let referenceLinkMatch = null;
638
- while ((referenceLinkMatch = referenceLinkRe.exec(content3)) !== null) {
639
- const [matchString, matchText, matchLabel] = referenceLinkMatch;
640
- if (!matchString.startsWith("\\") && !matchString.startsWith("!\\") && !matchText.endsWith("\\") && !(matchLabel || "").endsWith("\\") && !(topLevel && excluded(referenceLinkMatch))) {
641
- const shortcutLink = matchLabel === void 0;
642
- const collapsedLink = !shortcutLink && matchLabel.length === 0;
643
- const label = normalizeLabel(
644
- shortcutLink || collapsedLink ? matchText : matchLabel
645
- );
646
- if (label.length > 0) {
647
- const referenceindex = referenceLinkMatch.index;
648
- if (topLevel) {
649
- while (lineOffsets[lineIndex + 1] <= referenceindex) {
650
- lineIndex++;
651
- }
2696
+ break;
2697
+ case "gfmFootnoteDefinitionLabelString":
2698
+ labelPrefix = "^";
2699
+ case "definitionLabelString":
2700
+ {
2701
+ const reference = normalizeReference(`${labelPrefix}${token.text}`);
2702
+ if (definitions.has(reference)) {
2703
+ duplicateDefinitions.push([reference, token.startLine - 1]);
652
2704
  } else {
653
- lineIndex = contentLineIndex;
2705
+ let destinationString = null;
2706
+ const parent = micromark.getTokenParentOfType(token, ["definition"]);
2707
+ if (parent) {
2708
+ destinationString = micromark.getTokenTextByType(
2709
+ micromark.filterByPredicate(parent.children),
2710
+ "definitionDestinationString"
2711
+ );
2712
+ }
2713
+ definitions.set(
2714
+ reference,
2715
+ [token.startLine - 1, destinationString]
2716
+ );
654
2717
  }
655
- const referenceIndex = referenceindex + (topLevel ? -lineOffsets[lineIndex] : contentIndex);
656
- const referenceDatum = [
657
- lineIndex,
658
- referenceIndex,
659
- matchString.length,
660
- matchText.length,
661
- (matchLabel || "").length
662
- ];
663
- if (shortcutLink) {
664
- const shortcutData = shortcuts.get(label) || [];
665
- shortcutData.push(referenceDatum);
666
- shortcuts.set(label, shortcutData);
667
- } else {
668
- const referenceData = references.get(label) || [];
669
- referenceData.push(referenceDatum);
670
- references.set(label, referenceData);
2718
+ }
2719
+ break;
2720
+ case "gfmFootnoteCall":
2721
+ case "image":
2722
+ case "link":
2723
+ {
2724
+ let isShortcut = false;
2725
+ let isFullOrCollapsed = false;
2726
+ let labelText = null;
2727
+ let referenceStringText = null;
2728
+ const shortcutCandidate = micromark.matchAndGetTokensByType(token.children, ["label"]);
2729
+ if (shortcutCandidate) {
2730
+ labelText = micromark.getTokenTextByType(
2731
+ shortcutCandidate[0].children,
2732
+ "labelText"
2733
+ );
2734
+ isShortcut = labelText !== null;
2735
+ }
2736
+ const fullAndCollapsedCandidate = micromark.matchAndGetTokensByType(
2737
+ token.children,
2738
+ ["label", "reference"]
2739
+ );
2740
+ if (fullAndCollapsedCandidate) {
2741
+ labelText = micromark.getTokenTextByType(
2742
+ fullAndCollapsedCandidate[0].children,
2743
+ "labelText"
2744
+ );
2745
+ referenceStringText = micromark.getTokenTextByType(
2746
+ fullAndCollapsedCandidate[1].children,
2747
+ "referenceString"
2748
+ );
2749
+ isFullOrCollapsed = labelText !== null;
2750
+ }
2751
+ const footnote = micromark.matchAndGetTokensByType(
2752
+ token.children,
2753
+ [
2754
+ "gfmFootnoteCallLabelMarker",
2755
+ "gfmFootnoteCallMarker",
2756
+ "gfmFootnoteCallString",
2757
+ "gfmFootnoteCallLabelMarker"
2758
+ ],
2759
+ ["gfmFootnoteCallMarker", "gfmFootnoteCallString"]
2760
+ );
2761
+ if (footnote) {
2762
+ const callMarkerText = footnote[0].text;
2763
+ const callString = footnote[1].text;
2764
+ labelText = `${callMarkerText}${callString}`;
2765
+ isShortcut = true;
671
2766
  }
672
- if (!matchString.startsWith("!")) {
673
- pendingContents.push({
674
- "content": matchText,
675
- "contentLineIndex": lineIndex,
676
- "contentIndex": referenceIndex + 1,
677
- "topLevel": false
678
- });
2767
+ if (isShortcut || isFullOrCollapsed) {
2768
+ const referenceDatum = [
2769
+ token.startLine - 1,
2770
+ token.startColumn - 1,
2771
+ token.text.length,
2772
+ // @ts-ignore
2773
+ labelText.length,
2774
+ (referenceStringText || "").length
2775
+ ];
2776
+ const reference = normalizeReference(referenceStringText || labelText);
2777
+ const dictionary = isShortcut ? shortcuts : references;
2778
+ const referenceData = dictionary.get(reference) || [];
2779
+ referenceData.push(referenceDatum);
2780
+ dictionary.set(reference, referenceData);
679
2781
  }
680
2782
  }
681
- }
2783
+ break;
682
2784
  }
683
2785
  }
684
2786
  return {
@@ -736,7 +2838,7 @@ var require_helpers = __commonJS({
736
2838
  }
737
2839
  module2.exports.applyFix = applyFix;
738
2840
  function applyFixes(input, errors) {
739
- const lineEnding2 = getPreferredLineEnding(input, require("os"));
2841
+ const lineEnding2 = getPreferredLineEnding(input, require("node:os"));
740
2842
  const lines = input.split(newLineRe);
741
2843
  let fixInfos = errors.filter((error) => error.fixInfo).map((error) => normalizeFixInfo(error.fixInfo, error.lineNumber));
742
2844
  fixInfos.sort((a, b) => {
@@ -776,113 +2878,11 @@ var require_helpers = __commonJS({
776
2878
  return lines.filter((line) => line !== null).join(lineEnding2);
777
2879
  }
778
2880
  module2.exports.applyFixes = applyFixes;
779
- module2.exports.getRangeAndFixInfoIfFound = (lines, lineIndex, search2, replace, instance = 1) => {
780
- let range = null;
781
- let fixInfo = null;
782
- let searchIndex = -1;
783
- while (instance > 0) {
784
- searchIndex = lines[lineIndex].indexOf(search2, searchIndex + 1);
785
- instance--;
786
- }
787
- if (searchIndex !== -1) {
788
- const column = searchIndex + 1;
789
- const length = search2.length;
790
- range = [column, length];
791
- fixInfo = {
792
- "editColumn": column,
793
- "deleteCount": length,
794
- "insertText": replace
795
- };
796
- }
797
- return {
798
- range,
799
- fixInfo
800
- };
801
- };
802
- function getNextChildToken(parentToken, childToken, nextType, nextNextType) {
803
- const { children } = parentToken;
804
- const index2 = children.indexOf(childToken);
805
- if (index2 !== -1 && children.length > index2 + 2 && children[index2 + 1].type === nextType && children[index2 + 2].type === nextNextType) {
806
- return children[index2 + 1];
807
- }
808
- return null;
809
- }
810
- module2.exports.getNextChildToken = getNextChildToken;
811
2881
  function expandTildePath(file, os) {
812
2882
  const homedir = os && os.homedir && os.homedir();
813
2883
  return homedir ? file.replace(/^~($|\/|\\)/, `${homedir}$1`) : file;
814
2884
  }
815
2885
  module2.exports.expandTildePath = expandTildePath;
816
- function funcExpExec(funcExp, input) {
817
- const lastIndex = funcExp.lastIndex || 0;
818
- const result = funcExp(input.slice(lastIndex));
819
- if (result) {
820
- const [subIndex, length] = result;
821
- const index2 = lastIndex + subIndex;
822
- funcExp.lastIndex = index2 + length;
823
- const match = [input.slice(index2, index2 + length)];
824
- match.index = index2;
825
- return match;
826
- }
827
- funcExp.lastIndex = 0;
828
- return null;
829
- }
830
- module2.exports.funcExpExec = funcExpExec;
831
- var urlFeProtocolRe = /(?:http|ftp)s?:\/\//i;
832
- var urlFeAutolinkTerminalsRe = / |$/;
833
- var urlFeBareTerminalsRe = /[ ,!`'"\]]|$/;
834
- var urlFeNonTerminalsRe = "-#/";
835
- var urlFePunctuationRe = new RegExp("\\p{Punctuation}", "u");
836
- var urlFePrefixToPostfix = /* @__PURE__ */ new Map([
837
- [" ", " "],
838
- ["`", "`"],
839
- ["'", "'"],
840
- ['"', '"'],
841
- ["\u2018", "\u2019"],
842
- ["\u201C", "\u201D"],
843
- ["\xAB", "\xBB"],
844
- ["*", "*"],
845
- ["_", "_"],
846
- ["(", ")"],
847
- ["[", "]"],
848
- ["{", "}"],
849
- ["<", ">"],
850
- [">", "<"]
851
- ]);
852
- function urlFe(input) {
853
- const match = input.match(urlFeProtocolRe);
854
- if (match) {
855
- const start = match.index || 0;
856
- const length = match[0].length;
857
- const prefix = input[start - 1] || " ";
858
- const postfix = urlFePrefixToPostfix.get(prefix);
859
- let endPostfix = input.indexOf(postfix, start + length);
860
- if (endPostfix === -1) {
861
- endPostfix = input.length;
862
- }
863
- const terminalsRe = prefix === "<" ? urlFeAutolinkTerminalsRe : urlFeBareTerminalsRe;
864
- const endTerminal = start + input.slice(start).search(terminalsRe);
865
- let end = Math.min(endPostfix, endTerminal);
866
- if (prefix === " ") {
867
- if (input[end - 1] === ")") {
868
- const lastOpenParen = input.lastIndexOf("(", end - 2);
869
- if (lastOpenParen <= start) {
870
- end--;
871
- } else {
872
- const nextCloseParen = input.indexOf(")", lastOpenParen + 1);
873
- end = nextCloseParen + 1;
874
- }
875
- } else {
876
- while (!urlFeNonTerminalsRe.includes(input[end - 1]) && urlFePunctuationRe.test(input[end - 1])) {
877
- end--;
878
- }
879
- }
880
- }
881
- return [start, end - start];
882
- }
883
- return null;
884
- }
885
- module2.exports.urlFe = urlFe;
886
2886
  }
887
2887
  });
888
2888
 
@@ -936,8 +2936,7 @@ function splice(list2, start, remove, items) {
936
2936
  parameters.unshift(start, remove);
937
2937
  [].splice.apply(list2, parameters);
938
2938
  } else {
939
- if (remove)
940
- [].splice.apply(list2, [start, remove]);
2939
+ if (remove) [].splice.apply(list2, [start, remove]);
941
2940
  while (chunkStart < items.length) {
942
2941
  parameters = items.slice(chunkStart, chunkStart + 1e4);
943
2942
  parameters.unshift(start, 0);
@@ -973,8 +2972,7 @@ function syntaxExtension(all2, extension2) {
973
2972
  const right = extension2[hook];
974
2973
  let code;
975
2974
  for (code in right) {
976
- if (!hasOwnProperty.call(left, code))
977
- left[code] = [];
2975
+ if (!hasOwnProperty.call(left, code)) left[code] = [];
978
2976
  const value = right[code];
979
2977
  constructs(
980
2978
  // @ts-expect-error Looks like a list.
@@ -1185,8 +3183,7 @@ function initializeDocument(effects) {
1185
3183
  )(code);
1186
3184
  }
1187
3185
  function thereIsANewContainer(code) {
1188
- if (childFlow)
1189
- closeFlow();
3186
+ if (childFlow) closeFlow();
1190
3187
  exitContainers(continued);
1191
3188
  return documentContinued(code);
1192
3189
  }
@@ -1210,8 +3207,7 @@ function initializeDocument(effects) {
1210
3207
  }
1211
3208
  function flowStart(code) {
1212
3209
  if (code === null) {
1213
- if (childFlow)
1214
- closeFlow();
3210
+ if (childFlow) closeFlow();
1215
3211
  exitContainers(0);
1216
3212
  effects.consume(code);
1217
3213
  return;
@@ -1243,11 +3239,9 @@ function initializeDocument(effects) {
1243
3239
  }
1244
3240
  function writeToChild(token, eof) {
1245
3241
  const stream = self.sliceStream(token);
1246
- if (eof)
1247
- stream.push(null);
3242
+ if (eof) stream.push(null);
1248
3243
  token.previous = childToken;
1249
- if (childToken)
1250
- childToken.next = token;
3244
+ if (childToken) childToken.next = token;
1251
3245
  childToken = token;
1252
3246
  childFlow.defineSkip(token.start);
1253
3247
  childFlow.write(stream);
@@ -3910,8 +5904,7 @@ function tokenizeCodeFenced(effects, ok2, nok) {
3910
5904
  effects.exit("codeFencedFenceInfo");
3911
5905
  return factorySpace(effects, infoAfter, "whitespace")(code);
3912
5906
  }
3913
- if (code === 96 && code === marker)
3914
- return nok(code);
5907
+ if (code === 96 && code === marker) return nok(code);
3915
5908
  effects.consume(code);
3916
5909
  return info;
3917
5910
  }
@@ -3931,8 +5924,7 @@ function tokenizeCodeFenced(effects, ok2, nok) {
3931
5924
  effects.exit("codeFencedFenceMeta");
3932
5925
  return openAfter(code);
3933
5926
  }
3934
- if (code === 96 && code === marker)
3935
- return nok(code);
5927
+ if (code === 96 && code === marker) return nok(code);
3936
5928
  effects.consume(code);
3937
5929
  return meta;
3938
5930
  }
@@ -4007,8 +5999,7 @@ function tokenizeCodeFenced(effects, ok2, nok) {
4007
5999
  size++;
4008
6000
  return closingSequence;
4009
6001
  }
4010
- if (size < sizeOpen)
4011
- return nok2(code);
6002
+ if (size < sizeOpen) return nok2(code);
4012
6003
  effects2.exit("codeFencedFenceSequence");
4013
6004
  return factorySpace(effects2, closingSequenceEnd, "whitespace")(code);
4014
6005
  }
@@ -4478,8 +6469,7 @@ function factoryDestination(effects, ok2, nok, type, literalType, literalMarkerT
4478
6469
  }
4479
6470
  function destinationRaw(code) {
4480
6471
  if (code === 40) {
4481
- if (++balance > limit)
4482
- return nok(code);
6472
+ if (++balance > limit) return nok(code);
4483
6473
  effects.consume(code);
4484
6474
  return destinationRaw;
4485
6475
  }
@@ -4495,16 +6485,14 @@ function factoryDestination(effects, ok2, nok, type, literalType, literalMarkerT
4495
6485
  return destinationRaw;
4496
6486
  }
4497
6487
  if (code === null || markdownLineEndingOrSpace(code)) {
4498
- if (balance)
4499
- return nok(code);
6488
+ if (balance) return nok(code);
4500
6489
  effects.exit("chunkString");
4501
6490
  effects.exit(stringType);
4502
6491
  effects.exit(rawType);
4503
6492
  effects.exit(type);
4504
6493
  return ok2(code);
4505
6494
  }
4506
- if (asciiControl(code))
4507
- return nok(code);
6495
+ if (asciiControl(code)) return nok(code);
4508
6496
  effects.consume(code);
4509
6497
  return code === 92 ? destinationRawEscape : destinationRaw;
4510
6498
  }
@@ -5735,8 +7723,7 @@ function tokenizeLabelEnd(effects, ok2, nok) {
5735
7723
  if (!labelStart) {
5736
7724
  return nok(code);
5737
7725
  }
5738
- if (labelStart._inactive)
5739
- return balanced(code);
7726
+ if (labelStart._inactive) return balanced(code);
5740
7727
  defined = self.parser.defined.includes(
5741
7728
  normalizeIdentifier(
5742
7729
  self.sliceSerialize({
@@ -6360,8 +8347,7 @@ function resolveAllLineSuffixes(events, context) {
6360
8347
  size++;
6361
8348
  bufferIndex--;
6362
8349
  }
6363
- if (bufferIndex)
6364
- break;
8350
+ if (bufferIndex) break;
6365
8351
  bufferIndex = -1;
6366
8352
  } else if (chunk === -2) {
6367
8353
  tabs = true;
@@ -6695,8 +8681,7 @@ function serializeChunks(chunks, expandTabs) {
6695
8681
  break;
6696
8682
  }
6697
8683
  case -1: {
6698
- if (!expandTabs && atTab)
6699
- continue;
8684
+ if (!expandTabs && atTab) continue;
6700
8685
  value = " ";
6701
8686
  break;
6702
8687
  }
@@ -6864,8 +8849,7 @@ function preprocess() {
6864
8849
  case 9: {
6865
8850
  next = Math.ceil(column / 4) * 4;
6866
8851
  chunks.push(-2);
6867
- while (column++ < next)
6868
- chunks.push(-1);
8852
+ while (column++ < next) chunks.push(-1);
6869
8853
  break;
6870
8854
  }
6871
8855
  case 10: {
@@ -6882,10 +8866,8 @@ function preprocess() {
6882
8866
  startPosition = endPosition + 1;
6883
8867
  }
6884
8868
  if (end) {
6885
- if (atCarriageReturn)
6886
- chunks.push(-5);
6887
- if (buffer)
6888
- chunks.push(buffer);
8869
+ if (atCarriageReturn) chunks.push(-5);
8870
+ if (buffer) chunks.push(buffer);
6889
8871
  chunks.push(null);
6890
8872
  }
6891
8873
  return chunks;
@@ -7193,8 +9175,7 @@ function compiler(options) {
7193
9175
  while (tailIndex--) {
7194
9176
  const tailEvent = events[tailIndex];
7195
9177
  if (tailEvent[1].type === "lineEnding" || tailEvent[1].type === "lineEndingBlank") {
7196
- if (tailEvent[0] === "exit")
7197
- continue;
9178
+ if (tailEvent[0] === "exit") continue;
7198
9179
  if (lineIndex) {
7199
9180
  events[lineIndex][1].type = "lineEndingBlank";
7200
9181
  listSpread = true;
@@ -7245,8 +9226,7 @@ function compiler(options) {
7245
9226
  return open;
7246
9227
  function open(token) {
7247
9228
  enter.call(this, create(token), token);
7248
- if (and)
7249
- and.call(this, token);
9229
+ if (and) and.call(this, token);
7250
9230
  }
7251
9231
  }
7252
9232
  function buffer() {
@@ -7268,8 +9248,7 @@ function compiler(options) {
7268
9248
  function closer(and) {
7269
9249
  return close;
7270
9250
  function close(token) {
7271
- if (and)
7272
- and.call(this, token);
9251
+ if (and) and.call(this, token);
7273
9252
  exit2.call(this, token);
7274
9253
  }
7275
9254
  }
@@ -7318,8 +9297,7 @@ function compiler(options) {
7318
9297
  node2.meta = data2;
7319
9298
  }
7320
9299
  function onexitcodefencedfence() {
7321
- if (getData("flowCodeInside"))
7322
- return;
9300
+ if (getData("flowCodeInside")) return;
7323
9301
  this.buffer();
7324
9302
  setData("flowCodeInside", true);
7325
9303
  }
@@ -7731,8 +9709,7 @@ function anyFactory(tests) {
7731
9709
  function any(...parameters) {
7732
9710
  let index3 = -1;
7733
9711
  while (++index3 < checks.length) {
7734
- if (checks[index3].call(this, ...parameters))
7735
- return true;
9712
+ if (checks[index3].call(this, ...parameters)) return true;
7736
9713
  }
7737
9714
  return false;
7738
9715
  }
@@ -7742,8 +9719,7 @@ function propsFactory(check) {
7742
9719
  function all2(node2) {
7743
9720
  let key;
7744
9721
  for (key in check) {
7745
- if (node2[key] !== check[key])
7746
- return false;
9722
+ if (node2[key] !== check[key]) return false;
7747
9723
  }
7748
9724
  return true;
7749
9725
  }
@@ -7898,9 +9874,16 @@ function EMD003(params, onError) {
7898
9874
  tree,
7899
9875
  (node2) => node2.type === "text",
7900
9876
  (node2) => {
7901
- const rawContent = childToken.line.slice(node2.position.start.offset, node2.position.end.offset);
7902
- if (rawContent.match(UNESCAPED_REGEX) !== null) {
7903
- (0, import_helpers.addError)(onError, token.lineNumber, "Unescaped opening curly brace");
9877
+ const rawContent = childToken.line.slice(
9878
+ node2.position.start.offset,
9879
+ node2.position.end.offset
9880
+ );
9881
+ const matches = rawContent.matchAll(UNESCAPED_REGEX);
9882
+ for (const match of matches) {
9883
+ (0, import_helpers.addError)(onError, childToken.lineNumber, "Unescaped opening curly brace", void 0, [
9884
+ node2.position.start.offset + 1 + match.index,
9885
+ 1
9886
+ ]);
7904
9887
  }
7905
9888
  }
7906
9889
  );
@@ -7915,3 +9898,8 @@ function EMD003(params, onError) {
7915
9898
  names,
7916
9899
  tags
7917
9900
  });
9901
+ /*! Bundled license information:
9902
+
9903
+ markdownlint-micromark/micromark.cjs:
9904
+ (*! markdownlint-micromark 0.1.9 https://github.com/DavidAnson/markdownlint *)
9905
+ */