dotfiles
My PC Dotfiles & Websitegit clone https://github.com/maydayv7/dotfiles
site/static/js/katex.js (450014B)
1!(function (t, e) {
2 "object" == typeof exports && "object" == typeof module
3 ? (module.exports = e())
4 : "function" == typeof define && define.amd
5 ? define([], e)
6 : "object" == typeof exports
7 ? (exports.katex = e())
8 : (t.katex = e());
9})("undefined" != typeof self ? self : this, function () {
10 return (function (t) {
11 var e = {};
12 function r(a) {
13 if (e[a]) return e[a].exports;
14 var n = (e[a] = { i: a, l: !1, exports: {} });
15 return (t[a].call(n.exports, n, n.exports, r), (n.l = !0), n.exports);
16 }
17 return (
18 (r.m = t),
19 (r.c = e),
20 (r.d = function (t, e, a) {
21 r.o(t, e) || Object.defineProperty(t, e, { enumerable: !0, get: a });
22 }),
23 (r.r = function (t) {
24 ("undefined" != typeof Symbol &&
25 Symbol.toStringTag &&
26 Object.defineProperty(t, Symbol.toStringTag, { value: "Module" }),
27 Object.defineProperty(t, "__esModule", { value: !0 }));
28 }),
29 (r.t = function (t, e) {
30 if ((1 & e && (t = r(t)), 8 & e)) return t;
31 if (4 & e && "object" == typeof t && t && t.__esModule) return t;
32 var a = Object.create(null);
33 if (
34 (r.r(a),
35 Object.defineProperty(a, "default", { enumerable: !0, value: t }),
36 2 & e && "string" != typeof t)
37 )
38 for (var n in t)
39 r.d(
40 a,
41 n,
42 function (e) {
43 return t[e];
44 }.bind(null, n),
45 );
46 return a;
47 }),
48 (r.n = function (t) {
49 var e =
50 t && t.__esModule
51 ? function () {
52 return t.default;
53 }
54 : function () {
55 return t;
56 };
57 return (r.d(e, "a", e), e);
58 }),
59 (r.o = function (t, e) {
60 return Object.prototype.hasOwnProperty.call(t, e);
61 }),
62 (r.p = ""),
63 r((r.s = 1))
64 );
65 })([
66 function (t, e, r) {},
67 function (t, e, r) {
68 "use strict";
69 r.r(e);
70 r(0);
71 var a = (function () {
72 function t(t, e, r) {
73 ((this.lexer = void 0),
74 (this.start = void 0),
75 (this.end = void 0),
76 (this.lexer = t),
77 (this.start = e),
78 (this.end = r));
79 }
80 return (
81 (t.range = function (e, r) {
82 return r
83 ? e && e.loc && r.loc && e.loc.lexer === r.loc.lexer
84 ? new t(e.loc.lexer, e.loc.start, r.loc.end)
85 : null
86 : e && e.loc;
87 }),
88 t
89 );
90 })(),
91 n = (function () {
92 function t(t, e) {
93 ((this.text = void 0),
94 (this.loc = void 0),
95 (this.noexpand = void 0),
96 (this.treatAsRelax = void 0),
97 (this.text = t),
98 (this.loc = e));
99 }
100 return (
101 (t.prototype.range = function (e, r) {
102 return new t(r, a.range(this, e));
103 }),
104 t
105 );
106 })(),
107 i = function t(e, r) {
108 this.position = void 0;
109 var a,
110 n = "KaTeX parse error: " + e,
111 i = r && r.loc;
112 if (i && i.start <= i.end) {
113 var o = i.lexer.input;
114 a = i.start;
115 var s = i.end;
116 a === o.length
117 ? (n += " at end of input: ")
118 : (n += " at position " + (a + 1) + ": ");
119 var l = o.slice(a, s).replace(/[^]/g, "$&\u0332");
120 n +=
121 (a > 15 ? "\u2026" + o.slice(a - 15, a) : o.slice(0, a)) +
122 l +
123 (s + 15 < o.length ? o.slice(s, s + 15) + "\u2026" : o.slice(s));
124 }
125 var h = new Error(n);
126 return (
127 (h.name = "ParseError"),
128 (h.__proto__ = t.prototype),
129 (h.position = a),
130 h
131 );
132 };
133 i.prototype.__proto__ = Error.prototype;
134 var o = i,
135 s = /([A-Z])/g,
136 l = {
137 "&": "&",
138 ">": ">",
139 "<": "<",
140 '"': """,
141 "'": "'",
142 },
143 h = /[&><"']/g;
144 var m = function t(e) {
145 return "ordgroup" === e.type
146 ? 1 === e.body.length
147 ? t(e.body[0])
148 : e
149 : "color" === e.type
150 ? 1 === e.body.length
151 ? t(e.body[0])
152 : e
153 : "font" === e.type
154 ? t(e.body)
155 : e;
156 },
157 c = {
158 contains: function (t, e) {
159 return -1 !== t.indexOf(e);
160 },
161 deflt: function (t, e) {
162 return void 0 === t ? e : t;
163 },
164 escape: function (t) {
165 return String(t).replace(h, function (t) {
166 return l[t];
167 });
168 },
169 hyphenate: function (t) {
170 return t.replace(s, "-$1").toLowerCase();
171 },
172 getBaseElem: m,
173 isCharacterBox: function (t) {
174 var e = m(t);
175 return (
176 "mathord" === e.type || "textord" === e.type || "atom" === e.type
177 );
178 },
179 protocolFromUrl: function (t) {
180 var e = /^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(t);
181 return null != e ? e[1] : "_relative";
182 },
183 },
184 u = (function () {
185 function t(t) {
186 ((this.displayMode = void 0),
187 (this.output = void 0),
188 (this.leqno = void 0),
189 (this.fleqn = void 0),
190 (this.throwOnError = void 0),
191 (this.errorColor = void 0),
192 (this.macros = void 0),
193 (this.minRuleThickness = void 0),
194 (this.colorIsTextColor = void 0),
195 (this.strict = void 0),
196 (this.trust = void 0),
197 (this.maxSize = void 0),
198 (this.maxExpand = void 0),
199 (this.globalGroup = void 0),
200 (t = t || {}),
201 (this.displayMode = c.deflt(t.displayMode, !1)),
202 (this.output = c.deflt(t.output, "htmlAndMathml")),
203 (this.leqno = c.deflt(t.leqno, !1)),
204 (this.fleqn = c.deflt(t.fleqn, !1)),
205 (this.throwOnError = c.deflt(t.throwOnError, !0)),
206 (this.errorColor = c.deflt(t.errorColor, "#cc0000")),
207 (this.macros = t.macros || {}),
208 (this.minRuleThickness = Math.max(
209 0,
210 c.deflt(t.minRuleThickness, 0),
211 )),
212 (this.colorIsTextColor = c.deflt(t.colorIsTextColor, !1)),
213 (this.strict = c.deflt(t.strict, "warn")),
214 (this.trust = c.deflt(t.trust, !1)),
215 (this.maxSize = Math.max(0, c.deflt(t.maxSize, 1 / 0))),
216 (this.maxExpand = Math.max(0, c.deflt(t.maxExpand, 1e3))),
217 (this.globalGroup = c.deflt(t.globalGroup, !1)));
218 }
219 var e = t.prototype;
220 return (
221 (e.reportNonstrict = function (t, e, r) {
222 var a = this.strict;
223 if (
224 ("function" == typeof a && (a = a(t, e, r)),
225 a && "ignore" !== a)
226 ) {
227 if (!0 === a || "error" === a)
228 throw new o(
229 "LaTeX-incompatible input and strict mode is set to 'error': " +
230 e +
231 " [" +
232 t +
233 "]",
234 r,
235 );
236 "warn" === a
237 ? "undefined" != typeof console &&
238 console.warn(
239 "LaTeX-incompatible input and strict mode is set to 'warn': " +
240 e +
241 " [" +
242 t +
243 "]",
244 )
245 : "undefined" != typeof console &&
246 console.warn(
247 "LaTeX-incompatible input and strict mode is set to unrecognized '" +
248 a +
249 "': " +
250 e +
251 " [" +
252 t +
253 "]",
254 );
255 }
256 }),
257 (e.useStrictBehavior = function (t, e, r) {
258 var a = this.strict;
259 if ("function" == typeof a)
260 try {
261 a = a(t, e, r);
262 } catch (t) {
263 a = "error";
264 }
265 return (
266 !(!a || "ignore" === a) &&
267 (!0 === a ||
268 "error" === a ||
269 ("warn" === a
270 ? ("undefined" != typeof console &&
271 console.warn(
272 "LaTeX-incompatible input and strict mode is set to 'warn': " +
273 e +
274 " [" +
275 t +
276 "]",
277 ),
278 !1)
279 : ("undefined" != typeof console &&
280 console.warn(
281 "LaTeX-incompatible input and strict mode is set to unrecognized '" +
282 a +
283 "': " +
284 e +
285 " [" +
286 t +
287 "]",
288 ),
289 !1)))
290 );
291 }),
292 (e.isTrusted = function (t) {
293 t.url && !t.protocol && (t.protocol = c.protocolFromUrl(t.url));
294 var e =
295 "function" == typeof this.trust ? this.trust(t) : this.trust;
296 return Boolean(e);
297 }),
298 t
299 );
300 })(),
301 p = (function () {
302 function t(t, e, r) {
303 ((this.id = void 0),
304 (this.size = void 0),
305 (this.cramped = void 0),
306 (this.id = t),
307 (this.size = e),
308 (this.cramped = r));
309 }
310 var e = t.prototype;
311 return (
312 (e.sup = function () {
313 return d[f[this.id]];
314 }),
315 (e.sub = function () {
316 return d[g[this.id]];
317 }),
318 (e.fracNum = function () {
319 return d[x[this.id]];
320 }),
321 (e.fracDen = function () {
322 return d[v[this.id]];
323 }),
324 (e.cramp = function () {
325 return d[b[this.id]];
326 }),
327 (e.text = function () {
328 return d[y[this.id]];
329 }),
330 (e.isTight = function () {
331 return this.size >= 2;
332 }),
333 t
334 );
335 })(),
336 d = [
337 new p(0, 0, !1),
338 new p(1, 0, !0),
339 new p(2, 1, !1),
340 new p(3, 1, !0),
341 new p(4, 2, !1),
342 new p(5, 2, !0),
343 new p(6, 3, !1),
344 new p(7, 3, !0),
345 ],
346 f = [4, 5, 4, 5, 6, 7, 6, 7],
347 g = [5, 5, 5, 5, 7, 7, 7, 7],
348 x = [2, 3, 4, 5, 6, 7, 6, 7],
349 v = [3, 3, 5, 5, 7, 7, 7, 7],
350 b = [1, 1, 3, 3, 5, 5, 7, 7],
351 y = [0, 1, 2, 3, 2, 3, 2, 3],
352 w = { DISPLAY: d[0], TEXT: d[2], SCRIPT: d[4], SCRIPTSCRIPT: d[6] },
353 k = [
354 {
355 name: "latin",
356 blocks: [
357 [256, 591],
358 [768, 879],
359 ],
360 },
361 { name: "cyrillic", blocks: [[1024, 1279]] },
362 { name: "brahmic", blocks: [[2304, 4255]] },
363 { name: "georgian", blocks: [[4256, 4351]] },
364 {
365 name: "cjk",
366 blocks: [
367 [12288, 12543],
368 [19968, 40879],
369 [65280, 65376],
370 ],
371 },
372 { name: "hangul", blocks: [[44032, 55215]] },
373 ];
374 var S = [];
375 function M(t) {
376 for (var e = 0; e < S.length; e += 2)
377 if (t >= S[e] && t <= S[e + 1]) return !0;
378 return !1;
379 }
380 k.forEach(function (t) {
381 return t.blocks.forEach(function (t) {
382 return S.push.apply(S, t);
383 });
384 });
385 var z = {
386 leftParenInner: "M291 0 H417 V300 H291 z",
387 rightParenInner: "M457 0 H583 V300 H457 z",
388 doubleleftarrow:
389 "M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z",
390 doublerightarrow:
391 "M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z",
392 leftarrow:
393 "M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z",
394 leftbrace:
395 "M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z",
396 leftbraceunder:
397 "M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z",
398 leftgroup:
399 "M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z",
400 leftgroupunder:
401 "M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z",
402 leftharpoon:
403 "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z",
404 leftharpoonplus:
405 "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z",
406 leftharpoondown:
407 "M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z",
408 leftharpoondownplus:
409 "M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z",
410 lefthook:
411 "M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z",
412 leftlinesegment:
413 "M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z",
414 leftmapsto:
415 "M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z",
416 leftToFrom:
417 "M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z",
418 longequal:
419 "M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z",
420 midbrace:
421 "M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z",
422 midbraceunder:
423 "M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z",
424 oiintSize1:
425 "M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z",
426 oiintSize2:
427 "M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z",
428 oiiintSize1:
429 "M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z",
430 oiiintSize2:
431 "M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z",
432 rightarrow:
433 "M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z",
434 rightbrace:
435 "M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z",
436 rightbraceunder:
437 "M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z",
438 rightgroup:
439 "M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z",
440 rightgroupunder:
441 "M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z",
442 rightharpoon:
443 "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z",
444 rightharpoonplus:
445 "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z",
446 rightharpoondown:
447 "M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z",
448 rightharpoondownplus:
449 "M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z",
450 righthook:
451 "M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z",
452 rightlinesegment:
453 "M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z",
454 rightToFrom:
455 "M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z",
456 twoheadleftarrow:
457 "M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z",
458 twoheadrightarrow:
459 "M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z",
460 tilde1:
461 "M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z",
462 tilde2:
463 "M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z",
464 tilde3:
465 "M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z",
466 tilde4:
467 "M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z",
468 vec: "M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z",
469 widehat1:
470 "M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z",
471 widehat2:
472 "M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",
473 widehat3:
474 "M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",
475 widehat4:
476 "M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z",
477 widecheck1:
478 "M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z",
479 widecheck2:
480 "M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",
481 widecheck3:
482 "M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",
483 widecheck4:
484 "M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z",
485 baraboveleftarrow:
486 "M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z",
487 rightarrowabovebar:
488 "M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z",
489 baraboveshortleftharpoon:
490 "M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z",
491 rightharpoonaboveshortbar:
492 "M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z",
493 shortbaraboveleftharpoon:
494 "M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z",
495 shortrightharpoonabovebar:
496 "M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z",
497 },
498 A = (function () {
499 function t(t) {
500 ((this.children = void 0),
501 (this.classes = void 0),
502 (this.height = void 0),
503 (this.depth = void 0),
504 (this.maxFontSize = void 0),
505 (this.style = void 0),
506 (this.children = t),
507 (this.classes = []),
508 (this.height = 0),
509 (this.depth = 0),
510 (this.maxFontSize = 0),
511 (this.style = {}));
512 }
513 var e = t.prototype;
514 return (
515 (e.hasClass = function (t) {
516 return c.contains(this.classes, t);
517 }),
518 (e.toNode = function () {
519 for (
520 var t = document.createDocumentFragment(), e = 0;
521 e < this.children.length;
522 e++
523 )
524 t.appendChild(this.children[e].toNode());
525 return t;
526 }),
527 (e.toMarkup = function () {
528 for (var t = "", e = 0; e < this.children.length; e++)
529 t += this.children[e].toMarkup();
530 return t;
531 }),
532 (e.toText = function () {
533 var t = function (t) {
534 return t.toText();
535 };
536 return this.children.map(t).join("");
537 }),
538 t
539 );
540 })(),
541 T = function (t) {
542 return t
543 .filter(function (t) {
544 return t;
545 })
546 .join(" ");
547 },
548 B = function (t, e, r) {
549 if (
550 ((this.classes = t || []),
551 (this.attributes = {}),
552 (this.height = 0),
553 (this.depth = 0),
554 (this.maxFontSize = 0),
555 (this.style = r || {}),
556 e)
557 ) {
558 e.style.isTight() && this.classes.push("mtight");
559 var a = e.getColor();
560 a && (this.style.color = a);
561 }
562 },
563 C = function (t) {
564 var e = document.createElement(t);
565 for (var r in ((e.className = T(this.classes)), this.style))
566 this.style.hasOwnProperty(r) && (e.style[r] = this.style[r]);
567 for (var a in this.attributes)
568 this.attributes.hasOwnProperty(a) &&
569 e.setAttribute(a, this.attributes[a]);
570 for (var n = 0; n < this.children.length; n++)
571 e.appendChild(this.children[n].toNode());
572 return e;
573 },
574 q = function (t) {
575 var e = "<" + t;
576 this.classes.length &&
577 (e += ' class="' + c.escape(T(this.classes)) + '"');
578 var r = "";
579 for (var a in this.style)
580 this.style.hasOwnProperty(a) &&
581 (r += c.hyphenate(a) + ":" + this.style[a] + ";");
582 for (var n in (r && (e += ' style="' + c.escape(r) + '"'),
583 this.attributes))
584 this.attributes.hasOwnProperty(n) &&
585 (e += " " + n + '="' + c.escape(this.attributes[n]) + '"');
586 e += ">";
587 for (var i = 0; i < this.children.length; i++)
588 e += this.children[i].toMarkup();
589 return (e += "</" + t + ">");
590 },
591 N = (function () {
592 function t(t, e, r, a) {
593 ((this.children = void 0),
594 (this.attributes = void 0),
595 (this.classes = void 0),
596 (this.height = void 0),
597 (this.depth = void 0),
598 (this.width = void 0),
599 (this.maxFontSize = void 0),
600 (this.style = void 0),
601 B.call(this, t, r, a),
602 (this.children = e || []));
603 }
604 var e = t.prototype;
605 return (
606 (e.setAttribute = function (t, e) {
607 this.attributes[t] = e;
608 }),
609 (e.hasClass = function (t) {
610 return c.contains(this.classes, t);
611 }),
612 (e.toNode = function () {
613 return C.call(this, "span");
614 }),
615 (e.toMarkup = function () {
616 return q.call(this, "span");
617 }),
618 t
619 );
620 })(),
621 I = (function () {
622 function t(t, e, r, a) {
623 ((this.children = void 0),
624 (this.attributes = void 0),
625 (this.classes = void 0),
626 (this.height = void 0),
627 (this.depth = void 0),
628 (this.maxFontSize = void 0),
629 (this.style = void 0),
630 B.call(this, e, a),
631 (this.children = r || []),
632 this.setAttribute("href", t));
633 }
634 var e = t.prototype;
635 return (
636 (e.setAttribute = function (t, e) {
637 this.attributes[t] = e;
638 }),
639 (e.hasClass = function (t) {
640 return c.contains(this.classes, t);
641 }),
642 (e.toNode = function () {
643 return C.call(this, "a");
644 }),
645 (e.toMarkup = function () {
646 return q.call(this, "a");
647 }),
648 t
649 );
650 })(),
651 O = (function () {
652 function t(t, e, r) {
653 ((this.src = void 0),
654 (this.alt = void 0),
655 (this.classes = void 0),
656 (this.height = void 0),
657 (this.depth = void 0),
658 (this.maxFontSize = void 0),
659 (this.style = void 0),
660 (this.alt = e),
661 (this.src = t),
662 (this.classes = ["mord"]),
663 (this.style = r));
664 }
665 var e = t.prototype;
666 return (
667 (e.hasClass = function (t) {
668 return c.contains(this.classes, t);
669 }),
670 (e.toNode = function () {
671 var t = document.createElement("img");
672 for (var e in ((t.src = this.src),
673 (t.alt = this.alt),
674 (t.className = "mord"),
675 this.style))
676 this.style.hasOwnProperty(e) && (t.style[e] = this.style[e]);
677 return t;
678 }),
679 (e.toMarkup = function () {
680 var t = "<img src='" + this.src + " 'alt='" + this.alt + "' ",
681 e = "";
682 for (var r in this.style)
683 this.style.hasOwnProperty(r) &&
684 (e += c.hyphenate(r) + ":" + this.style[r] + ";");
685 return (e && (t += ' style="' + c.escape(e) + '"'), (t += "'/>"));
686 }),
687 t
688 );
689 })(),
690 R = {
691 "\xee": "\u0131\u0302",
692 "\xef": "\u0131\u0308",
693 "\xed": "\u0131\u0301",
694 "\xec": "\u0131\u0300",
695 },
696 E = (function () {
697 function t(t, e, r, a, n, i, o, s) {
698 ((this.text = void 0),
699 (this.height = void 0),
700 (this.depth = void 0),
701 (this.italic = void 0),
702 (this.skew = void 0),
703 (this.width = void 0),
704 (this.maxFontSize = void 0),
705 (this.classes = void 0),
706 (this.style = void 0),
707 (this.text = t),
708 (this.height = e || 0),
709 (this.depth = r || 0),
710 (this.italic = a || 0),
711 (this.skew = n || 0),
712 (this.width = i || 0),
713 (this.classes = o || []),
714 (this.style = s || {}),
715 (this.maxFontSize = 0));
716 var l = (function (t) {
717 for (var e = 0; e < k.length; e++)
718 for (var r = k[e], a = 0; a < r.blocks.length; a++) {
719 var n = r.blocks[a];
720 if (t >= n[0] && t <= n[1]) return r.name;
721 }
722 return null;
723 })(this.text.charCodeAt(0));
724 (l && this.classes.push(l + "_fallback"),
725 /[\xee\xef\xed\xec]/.test(this.text) &&
726 (this.text = R[this.text]));
727 }
728 var e = t.prototype;
729 return (
730 (e.hasClass = function (t) {
731 return c.contains(this.classes, t);
732 }),
733 (e.toNode = function () {
734 var t = document.createTextNode(this.text),
735 e = null;
736 for (var r in (this.italic > 0 &&
737 ((e = document.createElement("span")).style.marginRight =
738 this.italic + "em"),
739 this.classes.length > 0 &&
740 ((e = e || document.createElement("span")).className = T(
741 this.classes,
742 )),
743 this.style))
744 this.style.hasOwnProperty(r) &&
745 ((e = e || document.createElement("span")).style[r] =
746 this.style[r]);
747 return e ? (e.appendChild(t), e) : t;
748 }),
749 (e.toMarkup = function () {
750 var t = !1,
751 e = "<span";
752 this.classes.length &&
753 ((t = !0),
754 (e += ' class="'),
755 (e += c.escape(T(this.classes))),
756 (e += '"'));
757 var r = "";
758 for (var a in (this.italic > 0 &&
759 (r += "margin-right:" + this.italic + "em;"),
760 this.style))
761 this.style.hasOwnProperty(a) &&
762 (r += c.hyphenate(a) + ":" + this.style[a] + ";");
763 r && ((t = !0), (e += ' style="' + c.escape(r) + '"'));
764 var n = c.escape(this.text);
765 return t ? ((e += ">"), (e += n), (e += "</span>")) : n;
766 }),
767 t
768 );
769 })(),
770 L = (function () {
771 function t(t, e) {
772 ((this.children = void 0),
773 (this.attributes = void 0),
774 (this.children = t || []),
775 (this.attributes = e || {}));
776 }
777 var e = t.prototype;
778 return (
779 (e.toNode = function () {
780 var t = document.createElementNS(
781 "http://www.w3.org/2000/svg",
782 "svg",
783 );
784 for (var e in this.attributes)
785 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
786 t.setAttribute(e, this.attributes[e]);
787 for (var r = 0; r < this.children.length; r++)
788 t.appendChild(this.children[r].toNode());
789 return t;
790 }),
791 (e.toMarkup = function () {
792 var t = "<svg";
793 for (var e in this.attributes)
794 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
795 (t += " " + e + "='" + this.attributes[e] + "'");
796 t += ">";
797 for (var r = 0; r < this.children.length; r++)
798 t += this.children[r].toMarkup();
799 return (t += "</svg>");
800 }),
801 t
802 );
803 })(),
804 P = (function () {
805 function t(t, e) {
806 ((this.pathName = void 0),
807 (this.alternate = void 0),
808 (this.pathName = t),
809 (this.alternate = e));
810 }
811 var e = t.prototype;
812 return (
813 (e.toNode = function () {
814 var t = document.createElementNS(
815 "http://www.w3.org/2000/svg",
816 "path",
817 );
818 return (
819 this.alternate
820 ? t.setAttribute("d", this.alternate)
821 : t.setAttribute("d", z[this.pathName]),
822 t
823 );
824 }),
825 (e.toMarkup = function () {
826 return this.alternate
827 ? "<path d='" + this.alternate + "'/>"
828 : "<path d='" + z[this.pathName] + "'/>";
829 }),
830 t
831 );
832 })(),
833 D = (function () {
834 function t(t) {
835 ((this.attributes = void 0), (this.attributes = t || {}));
836 }
837 var e = t.prototype;
838 return (
839 (e.toNode = function () {
840 var t = document.createElementNS(
841 "http://www.w3.org/2000/svg",
842 "line",
843 );
844 for (var e in this.attributes)
845 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
846 t.setAttribute(e, this.attributes[e]);
847 return t;
848 }),
849 (e.toMarkup = function () {
850 var t = "<line";
851 for (var e in this.attributes)
852 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
853 (t += " " + e + "='" + this.attributes[e] + "'");
854 return (t += "/>");
855 }),
856 t
857 );
858 })();
859 function H(t) {
860 if (t instanceof E) return t;
861 throw new Error("Expected symbolNode but got " + String(t) + ".");
862 }
863 var F = {
864 "AMS-Regular": {
865 32: [0, 0, 0, 0, 0.25],
866 65: [0, 0.68889, 0, 0, 0.72222],
867 66: [0, 0.68889, 0, 0, 0.66667],
868 67: [0, 0.68889, 0, 0, 0.72222],
869 68: [0, 0.68889, 0, 0, 0.72222],
870 69: [0, 0.68889, 0, 0, 0.66667],
871 70: [0, 0.68889, 0, 0, 0.61111],
872 71: [0, 0.68889, 0, 0, 0.77778],
873 72: [0, 0.68889, 0, 0, 0.77778],
874 73: [0, 0.68889, 0, 0, 0.38889],
875 74: [0.16667, 0.68889, 0, 0, 0.5],
876 75: [0, 0.68889, 0, 0, 0.77778],
877 76: [0, 0.68889, 0, 0, 0.66667],
878 77: [0, 0.68889, 0, 0, 0.94445],
879 78: [0, 0.68889, 0, 0, 0.72222],
880 79: [0.16667, 0.68889, 0, 0, 0.77778],
881 80: [0, 0.68889, 0, 0, 0.61111],
882 81: [0.16667, 0.68889, 0, 0, 0.77778],
883 82: [0, 0.68889, 0, 0, 0.72222],
884 83: [0, 0.68889, 0, 0, 0.55556],
885 84: [0, 0.68889, 0, 0, 0.66667],
886 85: [0, 0.68889, 0, 0, 0.72222],
887 86: [0, 0.68889, 0, 0, 0.72222],
888 87: [0, 0.68889, 0, 0, 1],
889 88: [0, 0.68889, 0, 0, 0.72222],
890 89: [0, 0.68889, 0, 0, 0.72222],
891 90: [0, 0.68889, 0, 0, 0.66667],
892 107: [0, 0.68889, 0, 0, 0.55556],
893 160: [0, 0, 0, 0, 0.25],
894 165: [0, 0.675, 0.025, 0, 0.75],
895 174: [0.15559, 0.69224, 0, 0, 0.94666],
896 240: [0, 0.68889, 0, 0, 0.55556],
897 295: [0, 0.68889, 0, 0, 0.54028],
898 710: [0, 0.825, 0, 0, 2.33334],
899 732: [0, 0.9, 0, 0, 2.33334],
900 770: [0, 0.825, 0, 0, 2.33334],
901 771: [0, 0.9, 0, 0, 2.33334],
902 989: [0.08167, 0.58167, 0, 0, 0.77778],
903 1008: [0, 0.43056, 0.04028, 0, 0.66667],
904 8245: [0, 0.54986, 0, 0, 0.275],
905 8463: [0, 0.68889, 0, 0, 0.54028],
906 8487: [0, 0.68889, 0, 0, 0.72222],
907 8498: [0, 0.68889, 0, 0, 0.55556],
908 8502: [0, 0.68889, 0, 0, 0.66667],
909 8503: [0, 0.68889, 0, 0, 0.44445],
910 8504: [0, 0.68889, 0, 0, 0.66667],
911 8513: [0, 0.68889, 0, 0, 0.63889],
912 8592: [-0.03598, 0.46402, 0, 0, 0.5],
913 8594: [-0.03598, 0.46402, 0, 0, 0.5],
914 8602: [-0.13313, 0.36687, 0, 0, 1],
915 8603: [-0.13313, 0.36687, 0, 0, 1],
916 8606: [0.01354, 0.52239, 0, 0, 1],
917 8608: [0.01354, 0.52239, 0, 0, 1],
918 8610: [0.01354, 0.52239, 0, 0, 1.11111],
919 8611: [0.01354, 0.52239, 0, 0, 1.11111],
920 8619: [0, 0.54986, 0, 0, 1],
921 8620: [0, 0.54986, 0, 0, 1],
922 8621: [-0.13313, 0.37788, 0, 0, 1.38889],
923 8622: [-0.13313, 0.36687, 0, 0, 1],
924 8624: [0, 0.69224, 0, 0, 0.5],
925 8625: [0, 0.69224, 0, 0, 0.5],
926 8630: [0, 0.43056, 0, 0, 1],
927 8631: [0, 0.43056, 0, 0, 1],
928 8634: [0.08198, 0.58198, 0, 0, 0.77778],
929 8635: [0.08198, 0.58198, 0, 0, 0.77778],
930 8638: [0.19444, 0.69224, 0, 0, 0.41667],
931 8639: [0.19444, 0.69224, 0, 0, 0.41667],
932 8642: [0.19444, 0.69224, 0, 0, 0.41667],
933 8643: [0.19444, 0.69224, 0, 0, 0.41667],
934 8644: [0.1808, 0.675, 0, 0, 1],
935 8646: [0.1808, 0.675, 0, 0, 1],
936 8647: [0.1808, 0.675, 0, 0, 1],
937 8648: [0.19444, 0.69224, 0, 0, 0.83334],
938 8649: [0.1808, 0.675, 0, 0, 1],
939 8650: [0.19444, 0.69224, 0, 0, 0.83334],
940 8651: [0.01354, 0.52239, 0, 0, 1],
941 8652: [0.01354, 0.52239, 0, 0, 1],
942 8653: [-0.13313, 0.36687, 0, 0, 1],
943 8654: [-0.13313, 0.36687, 0, 0, 1],
944 8655: [-0.13313, 0.36687, 0, 0, 1],
945 8666: [0.13667, 0.63667, 0, 0, 1],
946 8667: [0.13667, 0.63667, 0, 0, 1],
947 8669: [-0.13313, 0.37788, 0, 0, 1],
948 8672: [-0.064, 0.437, 0, 0, 1.334],
949 8674: [-0.064, 0.437, 0, 0, 1.334],
950 8705: [0, 0.825, 0, 0, 0.5],
951 8708: [0, 0.68889, 0, 0, 0.55556],
952 8709: [0.08167, 0.58167, 0, 0, 0.77778],
953 8717: [0, 0.43056, 0, 0, 0.42917],
954 8722: [-0.03598, 0.46402, 0, 0, 0.5],
955 8724: [0.08198, 0.69224, 0, 0, 0.77778],
956 8726: [0.08167, 0.58167, 0, 0, 0.77778],
957 8733: [0, 0.69224, 0, 0, 0.77778],
958 8736: [0, 0.69224, 0, 0, 0.72222],
959 8737: [0, 0.69224, 0, 0, 0.72222],
960 8738: [0.03517, 0.52239, 0, 0, 0.72222],
961 8739: [0.08167, 0.58167, 0, 0, 0.22222],
962 8740: [0.25142, 0.74111, 0, 0, 0.27778],
963 8741: [0.08167, 0.58167, 0, 0, 0.38889],
964 8742: [0.25142, 0.74111, 0, 0, 0.5],
965 8756: [0, 0.69224, 0, 0, 0.66667],
966 8757: [0, 0.69224, 0, 0, 0.66667],
967 8764: [-0.13313, 0.36687, 0, 0, 0.77778],
968 8765: [-0.13313, 0.37788, 0, 0, 0.77778],
969 8769: [-0.13313, 0.36687, 0, 0, 0.77778],
970 8770: [-0.03625, 0.46375, 0, 0, 0.77778],
971 8774: [0.30274, 0.79383, 0, 0, 0.77778],
972 8776: [-0.01688, 0.48312, 0, 0, 0.77778],
973 8778: [0.08167, 0.58167, 0, 0, 0.77778],
974 8782: [0.06062, 0.54986, 0, 0, 0.77778],
975 8783: [0.06062, 0.54986, 0, 0, 0.77778],
976 8785: [0.08198, 0.58198, 0, 0, 0.77778],
977 8786: [0.08198, 0.58198, 0, 0, 0.77778],
978 8787: [0.08198, 0.58198, 0, 0, 0.77778],
979 8790: [0, 0.69224, 0, 0, 0.77778],
980 8791: [0.22958, 0.72958, 0, 0, 0.77778],
981 8796: [0.08198, 0.91667, 0, 0, 0.77778],
982 8806: [0.25583, 0.75583, 0, 0, 0.77778],
983 8807: [0.25583, 0.75583, 0, 0, 0.77778],
984 8808: [0.25142, 0.75726, 0, 0, 0.77778],
985 8809: [0.25142, 0.75726, 0, 0, 0.77778],
986 8812: [0.25583, 0.75583, 0, 0, 0.5],
987 8814: [0.20576, 0.70576, 0, 0, 0.77778],
988 8815: [0.20576, 0.70576, 0, 0, 0.77778],
989 8816: [0.30274, 0.79383, 0, 0, 0.77778],
990 8817: [0.30274, 0.79383, 0, 0, 0.77778],
991 8818: [0.22958, 0.72958, 0, 0, 0.77778],
992 8819: [0.22958, 0.72958, 0, 0, 0.77778],
993 8822: [0.1808, 0.675, 0, 0, 0.77778],
994 8823: [0.1808, 0.675, 0, 0, 0.77778],
995 8828: [0.13667, 0.63667, 0, 0, 0.77778],
996 8829: [0.13667, 0.63667, 0, 0, 0.77778],
997 8830: [0.22958, 0.72958, 0, 0, 0.77778],
998 8831: [0.22958, 0.72958, 0, 0, 0.77778],
999 8832: [0.20576, 0.70576, 0, 0, 0.77778],
1000 8833: [0.20576, 0.70576, 0, 0, 0.77778],
1001 8840: [0.30274, 0.79383, 0, 0, 0.77778],
1002 8841: [0.30274, 0.79383, 0, 0, 0.77778],
1003 8842: [0.13597, 0.63597, 0, 0, 0.77778],
1004 8843: [0.13597, 0.63597, 0, 0, 0.77778],
1005 8847: [0.03517, 0.54986, 0, 0, 0.77778],
1006 8848: [0.03517, 0.54986, 0, 0, 0.77778],
1007 8858: [0.08198, 0.58198, 0, 0, 0.77778],
1008 8859: [0.08198, 0.58198, 0, 0, 0.77778],
1009 8861: [0.08198, 0.58198, 0, 0, 0.77778],
1010 8862: [0, 0.675, 0, 0, 0.77778],
1011 8863: [0, 0.675, 0, 0, 0.77778],
1012 8864: [0, 0.675, 0, 0, 0.77778],
1013 8865: [0, 0.675, 0, 0, 0.77778],
1014 8872: [0, 0.69224, 0, 0, 0.61111],
1015 8873: [0, 0.69224, 0, 0, 0.72222],
1016 8874: [0, 0.69224, 0, 0, 0.88889],
1017 8876: [0, 0.68889, 0, 0, 0.61111],
1018 8877: [0, 0.68889, 0, 0, 0.61111],
1019 8878: [0, 0.68889, 0, 0, 0.72222],
1020 8879: [0, 0.68889, 0, 0, 0.72222],
1021 8882: [0.03517, 0.54986, 0, 0, 0.77778],
1022 8883: [0.03517, 0.54986, 0, 0, 0.77778],
1023 8884: [0.13667, 0.63667, 0, 0, 0.77778],
1024 8885: [0.13667, 0.63667, 0, 0, 0.77778],
1025 8888: [0, 0.54986, 0, 0, 1.11111],
1026 8890: [0.19444, 0.43056, 0, 0, 0.55556],
1027 8891: [0.19444, 0.69224, 0, 0, 0.61111],
1028 8892: [0.19444, 0.69224, 0, 0, 0.61111],
1029 8901: [0, 0.54986, 0, 0, 0.27778],
1030 8903: [0.08167, 0.58167, 0, 0, 0.77778],
1031 8905: [0.08167, 0.58167, 0, 0, 0.77778],
1032 8906: [0.08167, 0.58167, 0, 0, 0.77778],
1033 8907: [0, 0.69224, 0, 0, 0.77778],
1034 8908: [0, 0.69224, 0, 0, 0.77778],
1035 8909: [-0.03598, 0.46402, 0, 0, 0.77778],
1036 8910: [0, 0.54986, 0, 0, 0.76042],
1037 8911: [0, 0.54986, 0, 0, 0.76042],
1038 8912: [0.03517, 0.54986, 0, 0, 0.77778],
1039 8913: [0.03517, 0.54986, 0, 0, 0.77778],
1040 8914: [0, 0.54986, 0, 0, 0.66667],
1041 8915: [0, 0.54986, 0, 0, 0.66667],
1042 8916: [0, 0.69224, 0, 0, 0.66667],
1043 8918: [0.0391, 0.5391, 0, 0, 0.77778],
1044 8919: [0.0391, 0.5391, 0, 0, 0.77778],
1045 8920: [0.03517, 0.54986, 0, 0, 1.33334],
1046 8921: [0.03517, 0.54986, 0, 0, 1.33334],
1047 8922: [0.38569, 0.88569, 0, 0, 0.77778],
1048 8923: [0.38569, 0.88569, 0, 0, 0.77778],
1049 8926: [0.13667, 0.63667, 0, 0, 0.77778],
1050 8927: [0.13667, 0.63667, 0, 0, 0.77778],
1051 8928: [0.30274, 0.79383, 0, 0, 0.77778],
1052 8929: [0.30274, 0.79383, 0, 0, 0.77778],
1053 8934: [0.23222, 0.74111, 0, 0, 0.77778],
1054 8935: [0.23222, 0.74111, 0, 0, 0.77778],
1055 8936: [0.23222, 0.74111, 0, 0, 0.77778],
1056 8937: [0.23222, 0.74111, 0, 0, 0.77778],
1057 8938: [0.20576, 0.70576, 0, 0, 0.77778],
1058 8939: [0.20576, 0.70576, 0, 0, 0.77778],
1059 8940: [0.30274, 0.79383, 0, 0, 0.77778],
1060 8941: [0.30274, 0.79383, 0, 0, 0.77778],
1061 8994: [0.19444, 0.69224, 0, 0, 0.77778],
1062 8995: [0.19444, 0.69224, 0, 0, 0.77778],
1063 9416: [0.15559, 0.69224, 0, 0, 0.90222],
1064 9484: [0, 0.69224, 0, 0, 0.5],
1065 9488: [0, 0.69224, 0, 0, 0.5],
1066 9492: [0, 0.37788, 0, 0, 0.5],
1067 9496: [0, 0.37788, 0, 0, 0.5],
1068 9585: [0.19444, 0.68889, 0, 0, 0.88889],
1069 9586: [0.19444, 0.74111, 0, 0, 0.88889],
1070 9632: [0, 0.675, 0, 0, 0.77778],
1071 9633: [0, 0.675, 0, 0, 0.77778],
1072 9650: [0, 0.54986, 0, 0, 0.72222],
1073 9651: [0, 0.54986, 0, 0, 0.72222],
1074 9654: [0.03517, 0.54986, 0, 0, 0.77778],
1075 9660: [0, 0.54986, 0, 0, 0.72222],
1076 9661: [0, 0.54986, 0, 0, 0.72222],
1077 9664: [0.03517, 0.54986, 0, 0, 0.77778],
1078 9674: [0.11111, 0.69224, 0, 0, 0.66667],
1079 9733: [0.19444, 0.69224, 0, 0, 0.94445],
1080 10003: [0, 0.69224, 0, 0, 0.83334],
1081 10016: [0, 0.69224, 0, 0, 0.83334],
1082 10731: [0.11111, 0.69224, 0, 0, 0.66667],
1083 10846: [0.19444, 0.75583, 0, 0, 0.61111],
1084 10877: [0.13667, 0.63667, 0, 0, 0.77778],
1085 10878: [0.13667, 0.63667, 0, 0, 0.77778],
1086 10885: [0.25583, 0.75583, 0, 0, 0.77778],
1087 10886: [0.25583, 0.75583, 0, 0, 0.77778],
1088 10887: [0.13597, 0.63597, 0, 0, 0.77778],
1089 10888: [0.13597, 0.63597, 0, 0, 0.77778],
1090 10889: [0.26167, 0.75726, 0, 0, 0.77778],
1091 10890: [0.26167, 0.75726, 0, 0, 0.77778],
1092 10891: [0.48256, 0.98256, 0, 0, 0.77778],
1093 10892: [0.48256, 0.98256, 0, 0, 0.77778],
1094 10901: [0.13667, 0.63667, 0, 0, 0.77778],
1095 10902: [0.13667, 0.63667, 0, 0, 0.77778],
1096 10933: [0.25142, 0.75726, 0, 0, 0.77778],
1097 10934: [0.25142, 0.75726, 0, 0, 0.77778],
1098 10935: [0.26167, 0.75726, 0, 0, 0.77778],
1099 10936: [0.26167, 0.75726, 0, 0, 0.77778],
1100 10937: [0.26167, 0.75726, 0, 0, 0.77778],
1101 10938: [0.26167, 0.75726, 0, 0, 0.77778],
1102 10949: [0.25583, 0.75583, 0, 0, 0.77778],
1103 10950: [0.25583, 0.75583, 0, 0, 0.77778],
1104 10955: [0.28481, 0.79383, 0, 0, 0.77778],
1105 10956: [0.28481, 0.79383, 0, 0, 0.77778],
1106 57350: [0.08167, 0.58167, 0, 0, 0.22222],
1107 57351: [0.08167, 0.58167, 0, 0, 0.38889],
1108 57352: [0.08167, 0.58167, 0, 0, 0.77778],
1109 57353: [0, 0.43056, 0.04028, 0, 0.66667],
1110 57356: [0.25142, 0.75726, 0, 0, 0.77778],
1111 57357: [0.25142, 0.75726, 0, 0, 0.77778],
1112 57358: [0.41951, 0.91951, 0, 0, 0.77778],
1113 57359: [0.30274, 0.79383, 0, 0, 0.77778],
1114 57360: [0.30274, 0.79383, 0, 0, 0.77778],
1115 57361: [0.41951, 0.91951, 0, 0, 0.77778],
1116 57366: [0.25142, 0.75726, 0, 0, 0.77778],
1117 57367: [0.25142, 0.75726, 0, 0, 0.77778],
1118 57368: [0.25142, 0.75726, 0, 0, 0.77778],
1119 57369: [0.25142, 0.75726, 0, 0, 0.77778],
1120 57370: [0.13597, 0.63597, 0, 0, 0.77778],
1121 57371: [0.13597, 0.63597, 0, 0, 0.77778],
1122 },
1123 "Caligraphic-Regular": {
1124 32: [0, 0, 0, 0, 0.25],
1125 65: [0, 0.68333, 0, 0.19445, 0.79847],
1126 66: [0, 0.68333, 0.03041, 0.13889, 0.65681],
1127 67: [0, 0.68333, 0.05834, 0.13889, 0.52653],
1128 68: [0, 0.68333, 0.02778, 0.08334, 0.77139],
1129 69: [0, 0.68333, 0.08944, 0.11111, 0.52778],
1130 70: [0, 0.68333, 0.09931, 0.11111, 0.71875],
1131 71: [0.09722, 0.68333, 0.0593, 0.11111, 0.59487],
1132 72: [0, 0.68333, 0.00965, 0.11111, 0.84452],
1133 73: [0, 0.68333, 0.07382, 0, 0.54452],
1134 74: [0.09722, 0.68333, 0.18472, 0.16667, 0.67778],
1135 75: [0, 0.68333, 0.01445, 0.05556, 0.76195],
1136 76: [0, 0.68333, 0, 0.13889, 0.68972],
1137 77: [0, 0.68333, 0, 0.13889, 1.2009],
1138 78: [0, 0.68333, 0.14736, 0.08334, 0.82049],
1139 79: [0, 0.68333, 0.02778, 0.11111, 0.79611],
1140 80: [0, 0.68333, 0.08222, 0.08334, 0.69556],
1141 81: [0.09722, 0.68333, 0, 0.11111, 0.81667],
1142 82: [0, 0.68333, 0, 0.08334, 0.8475],
1143 83: [0, 0.68333, 0.075, 0.13889, 0.60556],
1144 84: [0, 0.68333, 0.25417, 0, 0.54464],
1145 85: [0, 0.68333, 0.09931, 0.08334, 0.62583],
1146 86: [0, 0.68333, 0.08222, 0, 0.61278],
1147 87: [0, 0.68333, 0.08222, 0.08334, 0.98778],
1148 88: [0, 0.68333, 0.14643, 0.13889, 0.7133],
1149 89: [0.09722, 0.68333, 0.08222, 0.08334, 0.66834],
1150 90: [0, 0.68333, 0.07944, 0.13889, 0.72473],
1151 160: [0, 0, 0, 0, 0.25],
1152 },
1153 "Fraktur-Regular": {
1154 32: [0, 0, 0, 0, 0.25],
1155 33: [0, 0.69141, 0, 0, 0.29574],
1156 34: [0, 0.69141, 0, 0, 0.21471],
1157 38: [0, 0.69141, 0, 0, 0.73786],
1158 39: [0, 0.69141, 0, 0, 0.21201],
1159 40: [0.24982, 0.74947, 0, 0, 0.38865],
1160 41: [0.24982, 0.74947, 0, 0, 0.38865],
1161 42: [0, 0.62119, 0, 0, 0.27764],
1162 43: [0.08319, 0.58283, 0, 0, 0.75623],
1163 44: [0, 0.10803, 0, 0, 0.27764],
1164 45: [0.08319, 0.58283, 0, 0, 0.75623],
1165 46: [0, 0.10803, 0, 0, 0.27764],
1166 47: [0.24982, 0.74947, 0, 0, 0.50181],
1167 48: [0, 0.47534, 0, 0, 0.50181],
1168 49: [0, 0.47534, 0, 0, 0.50181],
1169 50: [0, 0.47534, 0, 0, 0.50181],
1170 51: [0.18906, 0.47534, 0, 0, 0.50181],
1171 52: [0.18906, 0.47534, 0, 0, 0.50181],
1172 53: [0.18906, 0.47534, 0, 0, 0.50181],
1173 54: [0, 0.69141, 0, 0, 0.50181],
1174 55: [0.18906, 0.47534, 0, 0, 0.50181],
1175 56: [0, 0.69141, 0, 0, 0.50181],
1176 57: [0.18906, 0.47534, 0, 0, 0.50181],
1177 58: [0, 0.47534, 0, 0, 0.21606],
1178 59: [0.12604, 0.47534, 0, 0, 0.21606],
1179 61: [-0.13099, 0.36866, 0, 0, 0.75623],
1180 63: [0, 0.69141, 0, 0, 0.36245],
1181 65: [0, 0.69141, 0, 0, 0.7176],
1182 66: [0, 0.69141, 0, 0, 0.88397],
1183 67: [0, 0.69141, 0, 0, 0.61254],
1184 68: [0, 0.69141, 0, 0, 0.83158],
1185 69: [0, 0.69141, 0, 0, 0.66278],
1186 70: [0.12604, 0.69141, 0, 0, 0.61119],
1187 71: [0, 0.69141, 0, 0, 0.78539],
1188 72: [0.06302, 0.69141, 0, 0, 0.7203],
1189 73: [0, 0.69141, 0, 0, 0.55448],
1190 74: [0.12604, 0.69141, 0, 0, 0.55231],
1191 75: [0, 0.69141, 0, 0, 0.66845],
1192 76: [0, 0.69141, 0, 0, 0.66602],
1193 77: [0, 0.69141, 0, 0, 1.04953],
1194 78: [0, 0.69141, 0, 0, 0.83212],
1195 79: [0, 0.69141, 0, 0, 0.82699],
1196 80: [0.18906, 0.69141, 0, 0, 0.82753],
1197 81: [0.03781, 0.69141, 0, 0, 0.82699],
1198 82: [0, 0.69141, 0, 0, 0.82807],
1199 83: [0, 0.69141, 0, 0, 0.82861],
1200 84: [0, 0.69141, 0, 0, 0.66899],
1201 85: [0, 0.69141, 0, 0, 0.64576],
1202 86: [0, 0.69141, 0, 0, 0.83131],
1203 87: [0, 0.69141, 0, 0, 1.04602],
1204 88: [0, 0.69141, 0, 0, 0.71922],
1205 89: [0.18906, 0.69141, 0, 0, 0.83293],
1206 90: [0.12604, 0.69141, 0, 0, 0.60201],
1207 91: [0.24982, 0.74947, 0, 0, 0.27764],
1208 93: [0.24982, 0.74947, 0, 0, 0.27764],
1209 94: [0, 0.69141, 0, 0, 0.49965],
1210 97: [0, 0.47534, 0, 0, 0.50046],
1211 98: [0, 0.69141, 0, 0, 0.51315],
1212 99: [0, 0.47534, 0, 0, 0.38946],
1213 100: [0, 0.62119, 0, 0, 0.49857],
1214 101: [0, 0.47534, 0, 0, 0.40053],
1215 102: [0.18906, 0.69141, 0, 0, 0.32626],
1216 103: [0.18906, 0.47534, 0, 0, 0.5037],
1217 104: [0.18906, 0.69141, 0, 0, 0.52126],
1218 105: [0, 0.69141, 0, 0, 0.27899],
1219 106: [0, 0.69141, 0, 0, 0.28088],
1220 107: [0, 0.69141, 0, 0, 0.38946],
1221 108: [0, 0.69141, 0, 0, 0.27953],
1222 109: [0, 0.47534, 0, 0, 0.76676],
1223 110: [0, 0.47534, 0, 0, 0.52666],
1224 111: [0, 0.47534, 0, 0, 0.48885],
1225 112: [0.18906, 0.52396, 0, 0, 0.50046],
1226 113: [0.18906, 0.47534, 0, 0, 0.48912],
1227 114: [0, 0.47534, 0, 0, 0.38919],
1228 115: [0, 0.47534, 0, 0, 0.44266],
1229 116: [0, 0.62119, 0, 0, 0.33301],
1230 117: [0, 0.47534, 0, 0, 0.5172],
1231 118: [0, 0.52396, 0, 0, 0.5118],
1232 119: [0, 0.52396, 0, 0, 0.77351],
1233 120: [0.18906, 0.47534, 0, 0, 0.38865],
1234 121: [0.18906, 0.47534, 0, 0, 0.49884],
1235 122: [0.18906, 0.47534, 0, 0, 0.39054],
1236 160: [0, 0, 0, 0, 0.25],
1237 8216: [0, 0.69141, 0, 0, 0.21471],
1238 8217: [0, 0.69141, 0, 0, 0.21471],
1239 58112: [0, 0.62119, 0, 0, 0.49749],
1240 58113: [0, 0.62119, 0, 0, 0.4983],
1241 58114: [0.18906, 0.69141, 0, 0, 0.33328],
1242 58115: [0.18906, 0.69141, 0, 0, 0.32923],
1243 58116: [0.18906, 0.47534, 0, 0, 0.50343],
1244 58117: [0, 0.69141, 0, 0, 0.33301],
1245 58118: [0, 0.62119, 0, 0, 0.33409],
1246 58119: [0, 0.47534, 0, 0, 0.50073],
1247 },
1248 "Main-Bold": {
1249 32: [0, 0, 0, 0, 0.25],
1250 33: [0, 0.69444, 0, 0, 0.35],
1251 34: [0, 0.69444, 0, 0, 0.60278],
1252 35: [0.19444, 0.69444, 0, 0, 0.95833],
1253 36: [0.05556, 0.75, 0, 0, 0.575],
1254 37: [0.05556, 0.75, 0, 0, 0.95833],
1255 38: [0, 0.69444, 0, 0, 0.89444],
1256 39: [0, 0.69444, 0, 0, 0.31944],
1257 40: [0.25, 0.75, 0, 0, 0.44722],
1258 41: [0.25, 0.75, 0, 0, 0.44722],
1259 42: [0, 0.75, 0, 0, 0.575],
1260 43: [0.13333, 0.63333, 0, 0, 0.89444],
1261 44: [0.19444, 0.15556, 0, 0, 0.31944],
1262 45: [0, 0.44444, 0, 0, 0.38333],
1263 46: [0, 0.15556, 0, 0, 0.31944],
1264 47: [0.25, 0.75, 0, 0, 0.575],
1265 48: [0, 0.64444, 0, 0, 0.575],
1266 49: [0, 0.64444, 0, 0, 0.575],
1267 50: [0, 0.64444, 0, 0, 0.575],
1268 51: [0, 0.64444, 0, 0, 0.575],
1269 52: [0, 0.64444, 0, 0, 0.575],
1270 53: [0, 0.64444, 0, 0, 0.575],
1271 54: [0, 0.64444, 0, 0, 0.575],
1272 55: [0, 0.64444, 0, 0, 0.575],
1273 56: [0, 0.64444, 0, 0, 0.575],
1274 57: [0, 0.64444, 0, 0, 0.575],
1275 58: [0, 0.44444, 0, 0, 0.31944],
1276 59: [0.19444, 0.44444, 0, 0, 0.31944],
1277 60: [0.08556, 0.58556, 0, 0, 0.89444],
1278 61: [-0.10889, 0.39111, 0, 0, 0.89444],
1279 62: [0.08556, 0.58556, 0, 0, 0.89444],
1280 63: [0, 0.69444, 0, 0, 0.54305],
1281 64: [0, 0.69444, 0, 0, 0.89444],
1282 65: [0, 0.68611, 0, 0, 0.86944],
1283 66: [0, 0.68611, 0, 0, 0.81805],
1284 67: [0, 0.68611, 0, 0, 0.83055],
1285 68: [0, 0.68611, 0, 0, 0.88194],
1286 69: [0, 0.68611, 0, 0, 0.75555],
1287 70: [0, 0.68611, 0, 0, 0.72361],
1288 71: [0, 0.68611, 0, 0, 0.90416],
1289 72: [0, 0.68611, 0, 0, 0.9],
1290 73: [0, 0.68611, 0, 0, 0.43611],
1291 74: [0, 0.68611, 0, 0, 0.59444],
1292 75: [0, 0.68611, 0, 0, 0.90138],
1293 76: [0, 0.68611, 0, 0, 0.69166],
1294 77: [0, 0.68611, 0, 0, 1.09166],
1295 78: [0, 0.68611, 0, 0, 0.9],
1296 79: [0, 0.68611, 0, 0, 0.86388],
1297 80: [0, 0.68611, 0, 0, 0.78611],
1298 81: [0.19444, 0.68611, 0, 0, 0.86388],
1299 82: [0, 0.68611, 0, 0, 0.8625],
1300 83: [0, 0.68611, 0, 0, 0.63889],
1301 84: [0, 0.68611, 0, 0, 0.8],
1302 85: [0, 0.68611, 0, 0, 0.88472],
1303 86: [0, 0.68611, 0.01597, 0, 0.86944],
1304 87: [0, 0.68611, 0.01597, 0, 1.18888],
1305 88: [0, 0.68611, 0, 0, 0.86944],
1306 89: [0, 0.68611, 0.02875, 0, 0.86944],
1307 90: [0, 0.68611, 0, 0, 0.70277],
1308 91: [0.25, 0.75, 0, 0, 0.31944],
1309 92: [0.25, 0.75, 0, 0, 0.575],
1310 93: [0.25, 0.75, 0, 0, 0.31944],
1311 94: [0, 0.69444, 0, 0, 0.575],
1312 95: [0.31, 0.13444, 0.03194, 0, 0.575],
1313 97: [0, 0.44444, 0, 0, 0.55902],
1314 98: [0, 0.69444, 0, 0, 0.63889],
1315 99: [0, 0.44444, 0, 0, 0.51111],
1316 100: [0, 0.69444, 0, 0, 0.63889],
1317 101: [0, 0.44444, 0, 0, 0.52708],
1318 102: [0, 0.69444, 0.10903, 0, 0.35139],
1319 103: [0.19444, 0.44444, 0.01597, 0, 0.575],
1320 104: [0, 0.69444, 0, 0, 0.63889],
1321 105: [0, 0.69444, 0, 0, 0.31944],
1322 106: [0.19444, 0.69444, 0, 0, 0.35139],
1323 107: [0, 0.69444, 0, 0, 0.60694],
1324 108: [0, 0.69444, 0, 0, 0.31944],
1325 109: [0, 0.44444, 0, 0, 0.95833],
1326 110: [0, 0.44444, 0, 0, 0.63889],
1327 111: [0, 0.44444, 0, 0, 0.575],
1328 112: [0.19444, 0.44444, 0, 0, 0.63889],
1329 113: [0.19444, 0.44444, 0, 0, 0.60694],
1330 114: [0, 0.44444, 0, 0, 0.47361],
1331 115: [0, 0.44444, 0, 0, 0.45361],
1332 116: [0, 0.63492, 0, 0, 0.44722],
1333 117: [0, 0.44444, 0, 0, 0.63889],
1334 118: [0, 0.44444, 0.01597, 0, 0.60694],
1335 119: [0, 0.44444, 0.01597, 0, 0.83055],
1336 120: [0, 0.44444, 0, 0, 0.60694],
1337 121: [0.19444, 0.44444, 0.01597, 0, 0.60694],
1338 122: [0, 0.44444, 0, 0, 0.51111],
1339 123: [0.25, 0.75, 0, 0, 0.575],
1340 124: [0.25, 0.75, 0, 0, 0.31944],
1341 125: [0.25, 0.75, 0, 0, 0.575],
1342 126: [0.35, 0.34444, 0, 0, 0.575],
1343 160: [0, 0, 0, 0, 0.25],
1344 163: [0, 0.69444, 0, 0, 0.86853],
1345 168: [0, 0.69444, 0, 0, 0.575],
1346 172: [0, 0.44444, 0, 0, 0.76666],
1347 176: [0, 0.69444, 0, 0, 0.86944],
1348 177: [0.13333, 0.63333, 0, 0, 0.89444],
1349 184: [0.17014, 0, 0, 0, 0.51111],
1350 198: [0, 0.68611, 0, 0, 1.04166],
1351 215: [0.13333, 0.63333, 0, 0, 0.89444],
1352 216: [0.04861, 0.73472, 0, 0, 0.89444],
1353 223: [0, 0.69444, 0, 0, 0.59722],
1354 230: [0, 0.44444, 0, 0, 0.83055],
1355 247: [0.13333, 0.63333, 0, 0, 0.89444],
1356 248: [0.09722, 0.54167, 0, 0, 0.575],
1357 305: [0, 0.44444, 0, 0, 0.31944],
1358 338: [0, 0.68611, 0, 0, 1.16944],
1359 339: [0, 0.44444, 0, 0, 0.89444],
1360 567: [0.19444, 0.44444, 0, 0, 0.35139],
1361 710: [0, 0.69444, 0, 0, 0.575],
1362 711: [0, 0.63194, 0, 0, 0.575],
1363 713: [0, 0.59611, 0, 0, 0.575],
1364 714: [0, 0.69444, 0, 0, 0.575],
1365 715: [0, 0.69444, 0, 0, 0.575],
1366 728: [0, 0.69444, 0, 0, 0.575],
1367 729: [0, 0.69444, 0, 0, 0.31944],
1368 730: [0, 0.69444, 0, 0, 0.86944],
1369 732: [0, 0.69444, 0, 0, 0.575],
1370 733: [0, 0.69444, 0, 0, 0.575],
1371 915: [0, 0.68611, 0, 0, 0.69166],
1372 916: [0, 0.68611, 0, 0, 0.95833],
1373 920: [0, 0.68611, 0, 0, 0.89444],
1374 923: [0, 0.68611, 0, 0, 0.80555],
1375 926: [0, 0.68611, 0, 0, 0.76666],
1376 928: [0, 0.68611, 0, 0, 0.9],
1377 931: [0, 0.68611, 0, 0, 0.83055],
1378 933: [0, 0.68611, 0, 0, 0.89444],
1379 934: [0, 0.68611, 0, 0, 0.83055],
1380 936: [0, 0.68611, 0, 0, 0.89444],
1381 937: [0, 0.68611, 0, 0, 0.83055],
1382 8211: [0, 0.44444, 0.03194, 0, 0.575],
1383 8212: [0, 0.44444, 0.03194, 0, 1.14999],
1384 8216: [0, 0.69444, 0, 0, 0.31944],
1385 8217: [0, 0.69444, 0, 0, 0.31944],
1386 8220: [0, 0.69444, 0, 0, 0.60278],
1387 8221: [0, 0.69444, 0, 0, 0.60278],
1388 8224: [0.19444, 0.69444, 0, 0, 0.51111],
1389 8225: [0.19444, 0.69444, 0, 0, 0.51111],
1390 8242: [0, 0.55556, 0, 0, 0.34444],
1391 8407: [0, 0.72444, 0.15486, 0, 0.575],
1392 8463: [0, 0.69444, 0, 0, 0.66759],
1393 8465: [0, 0.69444, 0, 0, 0.83055],
1394 8467: [0, 0.69444, 0, 0, 0.47361],
1395 8472: [0.19444, 0.44444, 0, 0, 0.74027],
1396 8476: [0, 0.69444, 0, 0, 0.83055],
1397 8501: [0, 0.69444, 0, 0, 0.70277],
1398 8592: [-0.10889, 0.39111, 0, 0, 1.14999],
1399 8593: [0.19444, 0.69444, 0, 0, 0.575],
1400 8594: [-0.10889, 0.39111, 0, 0, 1.14999],
1401 8595: [0.19444, 0.69444, 0, 0, 0.575],
1402 8596: [-0.10889, 0.39111, 0, 0, 1.14999],
1403 8597: [0.25, 0.75, 0, 0, 0.575],
1404 8598: [0.19444, 0.69444, 0, 0, 1.14999],
1405 8599: [0.19444, 0.69444, 0, 0, 1.14999],
1406 8600: [0.19444, 0.69444, 0, 0, 1.14999],
1407 8601: [0.19444, 0.69444, 0, 0, 1.14999],
1408 8636: [-0.10889, 0.39111, 0, 0, 1.14999],
1409 8637: [-0.10889, 0.39111, 0, 0, 1.14999],
1410 8640: [-0.10889, 0.39111, 0, 0, 1.14999],
1411 8641: [-0.10889, 0.39111, 0, 0, 1.14999],
1412 8656: [-0.10889, 0.39111, 0, 0, 1.14999],
1413 8657: [0.19444, 0.69444, 0, 0, 0.70277],
1414 8658: [-0.10889, 0.39111, 0, 0, 1.14999],
1415 8659: [0.19444, 0.69444, 0, 0, 0.70277],
1416 8660: [-0.10889, 0.39111, 0, 0, 1.14999],
1417 8661: [0.25, 0.75, 0, 0, 0.70277],
1418 8704: [0, 0.69444, 0, 0, 0.63889],
1419 8706: [0, 0.69444, 0.06389, 0, 0.62847],
1420 8707: [0, 0.69444, 0, 0, 0.63889],
1421 8709: [0.05556, 0.75, 0, 0, 0.575],
1422 8711: [0, 0.68611, 0, 0, 0.95833],
1423 8712: [0.08556, 0.58556, 0, 0, 0.76666],
1424 8715: [0.08556, 0.58556, 0, 0, 0.76666],
1425 8722: [0.13333, 0.63333, 0, 0, 0.89444],
1426 8723: [0.13333, 0.63333, 0, 0, 0.89444],
1427 8725: [0.25, 0.75, 0, 0, 0.575],
1428 8726: [0.25, 0.75, 0, 0, 0.575],
1429 8727: [-0.02778, 0.47222, 0, 0, 0.575],
1430 8728: [-0.02639, 0.47361, 0, 0, 0.575],
1431 8729: [-0.02639, 0.47361, 0, 0, 0.575],
1432 8730: [0.18, 0.82, 0, 0, 0.95833],
1433 8733: [0, 0.44444, 0, 0, 0.89444],
1434 8734: [0, 0.44444, 0, 0, 1.14999],
1435 8736: [0, 0.69224, 0, 0, 0.72222],
1436 8739: [0.25, 0.75, 0, 0, 0.31944],
1437 8741: [0.25, 0.75, 0, 0, 0.575],
1438 8743: [0, 0.55556, 0, 0, 0.76666],
1439 8744: [0, 0.55556, 0, 0, 0.76666],
1440 8745: [0, 0.55556, 0, 0, 0.76666],
1441 8746: [0, 0.55556, 0, 0, 0.76666],
1442 8747: [0.19444, 0.69444, 0.12778, 0, 0.56875],
1443 8764: [-0.10889, 0.39111, 0, 0, 0.89444],
1444 8768: [0.19444, 0.69444, 0, 0, 0.31944],
1445 8771: [0.00222, 0.50222, 0, 0, 0.89444],
1446 8776: [0.02444, 0.52444, 0, 0, 0.89444],
1447 8781: [0.00222, 0.50222, 0, 0, 0.89444],
1448 8801: [0.00222, 0.50222, 0, 0, 0.89444],
1449 8804: [0.19667, 0.69667, 0, 0, 0.89444],
1450 8805: [0.19667, 0.69667, 0, 0, 0.89444],
1451 8810: [0.08556, 0.58556, 0, 0, 1.14999],
1452 8811: [0.08556, 0.58556, 0, 0, 1.14999],
1453 8826: [0.08556, 0.58556, 0, 0, 0.89444],
1454 8827: [0.08556, 0.58556, 0, 0, 0.89444],
1455 8834: [0.08556, 0.58556, 0, 0, 0.89444],
1456 8835: [0.08556, 0.58556, 0, 0, 0.89444],
1457 8838: [0.19667, 0.69667, 0, 0, 0.89444],
1458 8839: [0.19667, 0.69667, 0, 0, 0.89444],
1459 8846: [0, 0.55556, 0, 0, 0.76666],
1460 8849: [0.19667, 0.69667, 0, 0, 0.89444],
1461 8850: [0.19667, 0.69667, 0, 0, 0.89444],
1462 8851: [0, 0.55556, 0, 0, 0.76666],
1463 8852: [0, 0.55556, 0, 0, 0.76666],
1464 8853: [0.13333, 0.63333, 0, 0, 0.89444],
1465 8854: [0.13333, 0.63333, 0, 0, 0.89444],
1466 8855: [0.13333, 0.63333, 0, 0, 0.89444],
1467 8856: [0.13333, 0.63333, 0, 0, 0.89444],
1468 8857: [0.13333, 0.63333, 0, 0, 0.89444],
1469 8866: [0, 0.69444, 0, 0, 0.70277],
1470 8867: [0, 0.69444, 0, 0, 0.70277],
1471 8868: [0, 0.69444, 0, 0, 0.89444],
1472 8869: [0, 0.69444, 0, 0, 0.89444],
1473 8900: [-0.02639, 0.47361, 0, 0, 0.575],
1474 8901: [-0.02639, 0.47361, 0, 0, 0.31944],
1475 8902: [-0.02778, 0.47222, 0, 0, 0.575],
1476 8968: [0.25, 0.75, 0, 0, 0.51111],
1477 8969: [0.25, 0.75, 0, 0, 0.51111],
1478 8970: [0.25, 0.75, 0, 0, 0.51111],
1479 8971: [0.25, 0.75, 0, 0, 0.51111],
1480 8994: [-0.13889, 0.36111, 0, 0, 1.14999],
1481 8995: [-0.13889, 0.36111, 0, 0, 1.14999],
1482 9651: [0.19444, 0.69444, 0, 0, 1.02222],
1483 9657: [-0.02778, 0.47222, 0, 0, 0.575],
1484 9661: [0.19444, 0.69444, 0, 0, 1.02222],
1485 9667: [-0.02778, 0.47222, 0, 0, 0.575],
1486 9711: [0.19444, 0.69444, 0, 0, 1.14999],
1487 9824: [0.12963, 0.69444, 0, 0, 0.89444],
1488 9825: [0.12963, 0.69444, 0, 0, 0.89444],
1489 9826: [0.12963, 0.69444, 0, 0, 0.89444],
1490 9827: [0.12963, 0.69444, 0, 0, 0.89444],
1491 9837: [0, 0.75, 0, 0, 0.44722],
1492 9838: [0.19444, 0.69444, 0, 0, 0.44722],
1493 9839: [0.19444, 0.69444, 0, 0, 0.44722],
1494 10216: [0.25, 0.75, 0, 0, 0.44722],
1495 10217: [0.25, 0.75, 0, 0, 0.44722],
1496 10815: [0, 0.68611, 0, 0, 0.9],
1497 10927: [0.19667, 0.69667, 0, 0, 0.89444],
1498 10928: [0.19667, 0.69667, 0, 0, 0.89444],
1499 57376: [0.19444, 0.69444, 0, 0, 0],
1500 },
1501 "Main-BoldItalic": {
1502 32: [0, 0, 0, 0, 0.25],
1503 33: [0, 0.69444, 0.11417, 0, 0.38611],
1504 34: [0, 0.69444, 0.07939, 0, 0.62055],
1505 35: [0.19444, 0.69444, 0.06833, 0, 0.94444],
1506 37: [0.05556, 0.75, 0.12861, 0, 0.94444],
1507 38: [0, 0.69444, 0.08528, 0, 0.88555],
1508 39: [0, 0.69444, 0.12945, 0, 0.35555],
1509 40: [0.25, 0.75, 0.15806, 0, 0.47333],
1510 41: [0.25, 0.75, 0.03306, 0, 0.47333],
1511 42: [0, 0.75, 0.14333, 0, 0.59111],
1512 43: [0.10333, 0.60333, 0.03306, 0, 0.88555],
1513 44: [0.19444, 0.14722, 0, 0, 0.35555],
1514 45: [0, 0.44444, 0.02611, 0, 0.41444],
1515 46: [0, 0.14722, 0, 0, 0.35555],
1516 47: [0.25, 0.75, 0.15806, 0, 0.59111],
1517 48: [0, 0.64444, 0.13167, 0, 0.59111],
1518 49: [0, 0.64444, 0.13167, 0, 0.59111],
1519 50: [0, 0.64444, 0.13167, 0, 0.59111],
1520 51: [0, 0.64444, 0.13167, 0, 0.59111],
1521 52: [0.19444, 0.64444, 0.13167, 0, 0.59111],
1522 53: [0, 0.64444, 0.13167, 0, 0.59111],
1523 54: [0, 0.64444, 0.13167, 0, 0.59111],
1524 55: [0.19444, 0.64444, 0.13167, 0, 0.59111],
1525 56: [0, 0.64444, 0.13167, 0, 0.59111],
1526 57: [0, 0.64444, 0.13167, 0, 0.59111],
1527 58: [0, 0.44444, 0.06695, 0, 0.35555],
1528 59: [0.19444, 0.44444, 0.06695, 0, 0.35555],
1529 61: [-0.10889, 0.39111, 0.06833, 0, 0.88555],
1530 63: [0, 0.69444, 0.11472, 0, 0.59111],
1531 64: [0, 0.69444, 0.09208, 0, 0.88555],
1532 65: [0, 0.68611, 0, 0, 0.86555],
1533 66: [0, 0.68611, 0.0992, 0, 0.81666],
1534 67: [0, 0.68611, 0.14208, 0, 0.82666],
1535 68: [0, 0.68611, 0.09062, 0, 0.87555],
1536 69: [0, 0.68611, 0.11431, 0, 0.75666],
1537 70: [0, 0.68611, 0.12903, 0, 0.72722],
1538 71: [0, 0.68611, 0.07347, 0, 0.89527],
1539 72: [0, 0.68611, 0.17208, 0, 0.8961],
1540 73: [0, 0.68611, 0.15681, 0, 0.47166],
1541 74: [0, 0.68611, 0.145, 0, 0.61055],
1542 75: [0, 0.68611, 0.14208, 0, 0.89499],
1543 76: [0, 0.68611, 0, 0, 0.69777],
1544 77: [0, 0.68611, 0.17208, 0, 1.07277],
1545 78: [0, 0.68611, 0.17208, 0, 0.8961],
1546 79: [0, 0.68611, 0.09062, 0, 0.85499],
1547 80: [0, 0.68611, 0.0992, 0, 0.78721],
1548 81: [0.19444, 0.68611, 0.09062, 0, 0.85499],
1549 82: [0, 0.68611, 0.02559, 0, 0.85944],
1550 83: [0, 0.68611, 0.11264, 0, 0.64999],
1551 84: [0, 0.68611, 0.12903, 0, 0.7961],
1552 85: [0, 0.68611, 0.17208, 0, 0.88083],
1553 86: [0, 0.68611, 0.18625, 0, 0.86555],
1554 87: [0, 0.68611, 0.18625, 0, 1.15999],
1555 88: [0, 0.68611, 0.15681, 0, 0.86555],
1556 89: [0, 0.68611, 0.19803, 0, 0.86555],
1557 90: [0, 0.68611, 0.14208, 0, 0.70888],
1558 91: [0.25, 0.75, 0.1875, 0, 0.35611],
1559 93: [0.25, 0.75, 0.09972, 0, 0.35611],
1560 94: [0, 0.69444, 0.06709, 0, 0.59111],
1561 95: [0.31, 0.13444, 0.09811, 0, 0.59111],
1562 97: [0, 0.44444, 0.09426, 0, 0.59111],
1563 98: [0, 0.69444, 0.07861, 0, 0.53222],
1564 99: [0, 0.44444, 0.05222, 0, 0.53222],
1565 100: [0, 0.69444, 0.10861, 0, 0.59111],
1566 101: [0, 0.44444, 0.085, 0, 0.53222],
1567 102: [0.19444, 0.69444, 0.21778, 0, 0.4],
1568 103: [0.19444, 0.44444, 0.105, 0, 0.53222],
1569 104: [0, 0.69444, 0.09426, 0, 0.59111],
1570 105: [0, 0.69326, 0.11387, 0, 0.35555],
1571 106: [0.19444, 0.69326, 0.1672, 0, 0.35555],
1572 107: [0, 0.69444, 0.11111, 0, 0.53222],
1573 108: [0, 0.69444, 0.10861, 0, 0.29666],
1574 109: [0, 0.44444, 0.09426, 0, 0.94444],
1575 110: [0, 0.44444, 0.09426, 0, 0.64999],
1576 111: [0, 0.44444, 0.07861, 0, 0.59111],
1577 112: [0.19444, 0.44444, 0.07861, 0, 0.59111],
1578 113: [0.19444, 0.44444, 0.105, 0, 0.53222],
1579 114: [0, 0.44444, 0.11111, 0, 0.50167],
1580 115: [0, 0.44444, 0.08167, 0, 0.48694],
1581 116: [0, 0.63492, 0.09639, 0, 0.385],
1582 117: [0, 0.44444, 0.09426, 0, 0.62055],
1583 118: [0, 0.44444, 0.11111, 0, 0.53222],
1584 119: [0, 0.44444, 0.11111, 0, 0.76777],
1585 120: [0, 0.44444, 0.12583, 0, 0.56055],
1586 121: [0.19444, 0.44444, 0.105, 0, 0.56166],
1587 122: [0, 0.44444, 0.13889, 0, 0.49055],
1588 126: [0.35, 0.34444, 0.11472, 0, 0.59111],
1589 160: [0, 0, 0, 0, 0.25],
1590 168: [0, 0.69444, 0.11473, 0, 0.59111],
1591 176: [0, 0.69444, 0, 0, 0.94888],
1592 184: [0.17014, 0, 0, 0, 0.53222],
1593 198: [0, 0.68611, 0.11431, 0, 1.02277],
1594 216: [0.04861, 0.73472, 0.09062, 0, 0.88555],
1595 223: [0.19444, 0.69444, 0.09736, 0, 0.665],
1596 230: [0, 0.44444, 0.085, 0, 0.82666],
1597 248: [0.09722, 0.54167, 0.09458, 0, 0.59111],
1598 305: [0, 0.44444, 0.09426, 0, 0.35555],
1599 338: [0, 0.68611, 0.11431, 0, 1.14054],
1600 339: [0, 0.44444, 0.085, 0, 0.82666],
1601 567: [0.19444, 0.44444, 0.04611, 0, 0.385],
1602 710: [0, 0.69444, 0.06709, 0, 0.59111],
1603 711: [0, 0.63194, 0.08271, 0, 0.59111],
1604 713: [0, 0.59444, 0.10444, 0, 0.59111],
1605 714: [0, 0.69444, 0.08528, 0, 0.59111],
1606 715: [0, 0.69444, 0, 0, 0.59111],
1607 728: [0, 0.69444, 0.10333, 0, 0.59111],
1608 729: [0, 0.69444, 0.12945, 0, 0.35555],
1609 730: [0, 0.69444, 0, 0, 0.94888],
1610 732: [0, 0.69444, 0.11472, 0, 0.59111],
1611 733: [0, 0.69444, 0.11472, 0, 0.59111],
1612 915: [0, 0.68611, 0.12903, 0, 0.69777],
1613 916: [0, 0.68611, 0, 0, 0.94444],
1614 920: [0, 0.68611, 0.09062, 0, 0.88555],
1615 923: [0, 0.68611, 0, 0, 0.80666],
1616 926: [0, 0.68611, 0.15092, 0, 0.76777],
1617 928: [0, 0.68611, 0.17208, 0, 0.8961],
1618 931: [0, 0.68611, 0.11431, 0, 0.82666],
1619 933: [0, 0.68611, 0.10778, 0, 0.88555],
1620 934: [0, 0.68611, 0.05632, 0, 0.82666],
1621 936: [0, 0.68611, 0.10778, 0, 0.88555],
1622 937: [0, 0.68611, 0.0992, 0, 0.82666],
1623 8211: [0, 0.44444, 0.09811, 0, 0.59111],
1624 8212: [0, 0.44444, 0.09811, 0, 1.18221],
1625 8216: [0, 0.69444, 0.12945, 0, 0.35555],
1626 8217: [0, 0.69444, 0.12945, 0, 0.35555],
1627 8220: [0, 0.69444, 0.16772, 0, 0.62055],
1628 8221: [0, 0.69444, 0.07939, 0, 0.62055],
1629 },
1630 "Main-Italic": {
1631 32: [0, 0, 0, 0, 0.25],
1632 33: [0, 0.69444, 0.12417, 0, 0.30667],
1633 34: [0, 0.69444, 0.06961, 0, 0.51444],
1634 35: [0.19444, 0.69444, 0.06616, 0, 0.81777],
1635 37: [0.05556, 0.75, 0.13639, 0, 0.81777],
1636 38: [0, 0.69444, 0.09694, 0, 0.76666],
1637 39: [0, 0.69444, 0.12417, 0, 0.30667],
1638 40: [0.25, 0.75, 0.16194, 0, 0.40889],
1639 41: [0.25, 0.75, 0.03694, 0, 0.40889],
1640 42: [0, 0.75, 0.14917, 0, 0.51111],
1641 43: [0.05667, 0.56167, 0.03694, 0, 0.76666],
1642 44: [0.19444, 0.10556, 0, 0, 0.30667],
1643 45: [0, 0.43056, 0.02826, 0, 0.35778],
1644 46: [0, 0.10556, 0, 0, 0.30667],
1645 47: [0.25, 0.75, 0.16194, 0, 0.51111],
1646 48: [0, 0.64444, 0.13556, 0, 0.51111],
1647 49: [0, 0.64444, 0.13556, 0, 0.51111],
1648 50: [0, 0.64444, 0.13556, 0, 0.51111],
1649 51: [0, 0.64444, 0.13556, 0, 0.51111],
1650 52: [0.19444, 0.64444, 0.13556, 0, 0.51111],
1651 53: [0, 0.64444, 0.13556, 0, 0.51111],
1652 54: [0, 0.64444, 0.13556, 0, 0.51111],
1653 55: [0.19444, 0.64444, 0.13556, 0, 0.51111],
1654 56: [0, 0.64444, 0.13556, 0, 0.51111],
1655 57: [0, 0.64444, 0.13556, 0, 0.51111],
1656 58: [0, 0.43056, 0.0582, 0, 0.30667],
1657 59: [0.19444, 0.43056, 0.0582, 0, 0.30667],
1658 61: [-0.13313, 0.36687, 0.06616, 0, 0.76666],
1659 63: [0, 0.69444, 0.1225, 0, 0.51111],
1660 64: [0, 0.69444, 0.09597, 0, 0.76666],
1661 65: [0, 0.68333, 0, 0, 0.74333],
1662 66: [0, 0.68333, 0.10257, 0, 0.70389],
1663 67: [0, 0.68333, 0.14528, 0, 0.71555],
1664 68: [0, 0.68333, 0.09403, 0, 0.755],
1665 69: [0, 0.68333, 0.12028, 0, 0.67833],
1666 70: [0, 0.68333, 0.13305, 0, 0.65277],
1667 71: [0, 0.68333, 0.08722, 0, 0.77361],
1668 72: [0, 0.68333, 0.16389, 0, 0.74333],
1669 73: [0, 0.68333, 0.15806, 0, 0.38555],
1670 74: [0, 0.68333, 0.14028, 0, 0.525],
1671 75: [0, 0.68333, 0.14528, 0, 0.76888],
1672 76: [0, 0.68333, 0, 0, 0.62722],
1673 77: [0, 0.68333, 0.16389, 0, 0.89666],
1674 78: [0, 0.68333, 0.16389, 0, 0.74333],
1675 79: [0, 0.68333, 0.09403, 0, 0.76666],
1676 80: [0, 0.68333, 0.10257, 0, 0.67833],
1677 81: [0.19444, 0.68333, 0.09403, 0, 0.76666],
1678 82: [0, 0.68333, 0.03868, 0, 0.72944],
1679 83: [0, 0.68333, 0.11972, 0, 0.56222],
1680 84: [0, 0.68333, 0.13305, 0, 0.71555],
1681 85: [0, 0.68333, 0.16389, 0, 0.74333],
1682 86: [0, 0.68333, 0.18361, 0, 0.74333],
1683 87: [0, 0.68333, 0.18361, 0, 0.99888],
1684 88: [0, 0.68333, 0.15806, 0, 0.74333],
1685 89: [0, 0.68333, 0.19383, 0, 0.74333],
1686 90: [0, 0.68333, 0.14528, 0, 0.61333],
1687 91: [0.25, 0.75, 0.1875, 0, 0.30667],
1688 93: [0.25, 0.75, 0.10528, 0, 0.30667],
1689 94: [0, 0.69444, 0.06646, 0, 0.51111],
1690 95: [0.31, 0.12056, 0.09208, 0, 0.51111],
1691 97: [0, 0.43056, 0.07671, 0, 0.51111],
1692 98: [0, 0.69444, 0.06312, 0, 0.46],
1693 99: [0, 0.43056, 0.05653, 0, 0.46],
1694 100: [0, 0.69444, 0.10333, 0, 0.51111],
1695 101: [0, 0.43056, 0.07514, 0, 0.46],
1696 102: [0.19444, 0.69444, 0.21194, 0, 0.30667],
1697 103: [0.19444, 0.43056, 0.08847, 0, 0.46],
1698 104: [0, 0.69444, 0.07671, 0, 0.51111],
1699 105: [0, 0.65536, 0.1019, 0, 0.30667],
1700 106: [0.19444, 0.65536, 0.14467, 0, 0.30667],
1701 107: [0, 0.69444, 0.10764, 0, 0.46],
1702 108: [0, 0.69444, 0.10333, 0, 0.25555],
1703 109: [0, 0.43056, 0.07671, 0, 0.81777],
1704 110: [0, 0.43056, 0.07671, 0, 0.56222],
1705 111: [0, 0.43056, 0.06312, 0, 0.51111],
1706 112: [0.19444, 0.43056, 0.06312, 0, 0.51111],
1707 113: [0.19444, 0.43056, 0.08847, 0, 0.46],
1708 114: [0, 0.43056, 0.10764, 0, 0.42166],
1709 115: [0, 0.43056, 0.08208, 0, 0.40889],
1710 116: [0, 0.61508, 0.09486, 0, 0.33222],
1711 117: [0, 0.43056, 0.07671, 0, 0.53666],
1712 118: [0, 0.43056, 0.10764, 0, 0.46],
1713 119: [0, 0.43056, 0.10764, 0, 0.66444],
1714 120: [0, 0.43056, 0.12042, 0, 0.46389],
1715 121: [0.19444, 0.43056, 0.08847, 0, 0.48555],
1716 122: [0, 0.43056, 0.12292, 0, 0.40889],
1717 126: [0.35, 0.31786, 0.11585, 0, 0.51111],
1718 160: [0, 0, 0, 0, 0.25],
1719 168: [0, 0.66786, 0.10474, 0, 0.51111],
1720 176: [0, 0.69444, 0, 0, 0.83129],
1721 184: [0.17014, 0, 0, 0, 0.46],
1722 198: [0, 0.68333, 0.12028, 0, 0.88277],
1723 216: [0.04861, 0.73194, 0.09403, 0, 0.76666],
1724 223: [0.19444, 0.69444, 0.10514, 0, 0.53666],
1725 230: [0, 0.43056, 0.07514, 0, 0.71555],
1726 248: [0.09722, 0.52778, 0.09194, 0, 0.51111],
1727 338: [0, 0.68333, 0.12028, 0, 0.98499],
1728 339: [0, 0.43056, 0.07514, 0, 0.71555],
1729 710: [0, 0.69444, 0.06646, 0, 0.51111],
1730 711: [0, 0.62847, 0.08295, 0, 0.51111],
1731 713: [0, 0.56167, 0.10333, 0, 0.51111],
1732 714: [0, 0.69444, 0.09694, 0, 0.51111],
1733 715: [0, 0.69444, 0, 0, 0.51111],
1734 728: [0, 0.69444, 0.10806, 0, 0.51111],
1735 729: [0, 0.66786, 0.11752, 0, 0.30667],
1736 730: [0, 0.69444, 0, 0, 0.83129],
1737 732: [0, 0.66786, 0.11585, 0, 0.51111],
1738 733: [0, 0.69444, 0.1225, 0, 0.51111],
1739 915: [0, 0.68333, 0.13305, 0, 0.62722],
1740 916: [0, 0.68333, 0, 0, 0.81777],
1741 920: [0, 0.68333, 0.09403, 0, 0.76666],
1742 923: [0, 0.68333, 0, 0, 0.69222],
1743 926: [0, 0.68333, 0.15294, 0, 0.66444],
1744 928: [0, 0.68333, 0.16389, 0, 0.74333],
1745 931: [0, 0.68333, 0.12028, 0, 0.71555],
1746 933: [0, 0.68333, 0.11111, 0, 0.76666],
1747 934: [0, 0.68333, 0.05986, 0, 0.71555],
1748 936: [0, 0.68333, 0.11111, 0, 0.76666],
1749 937: [0, 0.68333, 0.10257, 0, 0.71555],
1750 8211: [0, 0.43056, 0.09208, 0, 0.51111],
1751 8212: [0, 0.43056, 0.09208, 0, 1.02222],
1752 8216: [0, 0.69444, 0.12417, 0, 0.30667],
1753 8217: [0, 0.69444, 0.12417, 0, 0.30667],
1754 8220: [0, 0.69444, 0.1685, 0, 0.51444],
1755 8221: [0, 0.69444, 0.06961, 0, 0.51444],
1756 8463: [0, 0.68889, 0, 0, 0.54028],
1757 },
1758 "Main-Regular": {
1759 32: [0, 0, 0, 0, 0.25],
1760 33: [0, 0.69444, 0, 0, 0.27778],
1761 34: [0, 0.69444, 0, 0, 0.5],
1762 35: [0.19444, 0.69444, 0, 0, 0.83334],
1763 36: [0.05556, 0.75, 0, 0, 0.5],
1764 37: [0.05556, 0.75, 0, 0, 0.83334],
1765 38: [0, 0.69444, 0, 0, 0.77778],
1766 39: [0, 0.69444, 0, 0, 0.27778],
1767 40: [0.25, 0.75, 0, 0, 0.38889],
1768 41: [0.25, 0.75, 0, 0, 0.38889],
1769 42: [0, 0.75, 0, 0, 0.5],
1770 43: [0.08333, 0.58333, 0, 0, 0.77778],
1771 44: [0.19444, 0.10556, 0, 0, 0.27778],
1772 45: [0, 0.43056, 0, 0, 0.33333],
1773 46: [0, 0.10556, 0, 0, 0.27778],
1774 47: [0.25, 0.75, 0, 0, 0.5],
1775 48: [0, 0.64444, 0, 0, 0.5],
1776 49: [0, 0.64444, 0, 0, 0.5],
1777 50: [0, 0.64444, 0, 0, 0.5],
1778 51: [0, 0.64444, 0, 0, 0.5],
1779 52: [0, 0.64444, 0, 0, 0.5],
1780 53: [0, 0.64444, 0, 0, 0.5],
1781 54: [0, 0.64444, 0, 0, 0.5],
1782 55: [0, 0.64444, 0, 0, 0.5],
1783 56: [0, 0.64444, 0, 0, 0.5],
1784 57: [0, 0.64444, 0, 0, 0.5],
1785 58: [0, 0.43056, 0, 0, 0.27778],
1786 59: [0.19444, 0.43056, 0, 0, 0.27778],
1787 60: [0.0391, 0.5391, 0, 0, 0.77778],
1788 61: [-0.13313, 0.36687, 0, 0, 0.77778],
1789 62: [0.0391, 0.5391, 0, 0, 0.77778],
1790 63: [0, 0.69444, 0, 0, 0.47222],
1791 64: [0, 0.69444, 0, 0, 0.77778],
1792 65: [0, 0.68333, 0, 0, 0.75],
1793 66: [0, 0.68333, 0, 0, 0.70834],
1794 67: [0, 0.68333, 0, 0, 0.72222],
1795 68: [0, 0.68333, 0, 0, 0.76389],
1796 69: [0, 0.68333, 0, 0, 0.68056],
1797 70: [0, 0.68333, 0, 0, 0.65278],
1798 71: [0, 0.68333, 0, 0, 0.78472],
1799 72: [0, 0.68333, 0, 0, 0.75],
1800 73: [0, 0.68333, 0, 0, 0.36111],
1801 74: [0, 0.68333, 0, 0, 0.51389],
1802 75: [0, 0.68333, 0, 0, 0.77778],
1803 76: [0, 0.68333, 0, 0, 0.625],
1804 77: [0, 0.68333, 0, 0, 0.91667],
1805 78: [0, 0.68333, 0, 0, 0.75],
1806 79: [0, 0.68333, 0, 0, 0.77778],
1807 80: [0, 0.68333, 0, 0, 0.68056],
1808 81: [0.19444, 0.68333, 0, 0, 0.77778],
1809 82: [0, 0.68333, 0, 0, 0.73611],
1810 83: [0, 0.68333, 0, 0, 0.55556],
1811 84: [0, 0.68333, 0, 0, 0.72222],
1812 85: [0, 0.68333, 0, 0, 0.75],
1813 86: [0, 0.68333, 0.01389, 0, 0.75],
1814 87: [0, 0.68333, 0.01389, 0, 1.02778],
1815 88: [0, 0.68333, 0, 0, 0.75],
1816 89: [0, 0.68333, 0.025, 0, 0.75],
1817 90: [0, 0.68333, 0, 0, 0.61111],
1818 91: [0.25, 0.75, 0, 0, 0.27778],
1819 92: [0.25, 0.75, 0, 0, 0.5],
1820 93: [0.25, 0.75, 0, 0, 0.27778],
1821 94: [0, 0.69444, 0, 0, 0.5],
1822 95: [0.31, 0.12056, 0.02778, 0, 0.5],
1823 97: [0, 0.43056, 0, 0, 0.5],
1824 98: [0, 0.69444, 0, 0, 0.55556],
1825 99: [0, 0.43056, 0, 0, 0.44445],
1826 100: [0, 0.69444, 0, 0, 0.55556],
1827 101: [0, 0.43056, 0, 0, 0.44445],
1828 102: [0, 0.69444, 0.07778, 0, 0.30556],
1829 103: [0.19444, 0.43056, 0.01389, 0, 0.5],
1830 104: [0, 0.69444, 0, 0, 0.55556],
1831 105: [0, 0.66786, 0, 0, 0.27778],
1832 106: [0.19444, 0.66786, 0, 0, 0.30556],
1833 107: [0, 0.69444, 0, 0, 0.52778],
1834 108: [0, 0.69444, 0, 0, 0.27778],
1835 109: [0, 0.43056, 0, 0, 0.83334],
1836 110: [0, 0.43056, 0, 0, 0.55556],
1837 111: [0, 0.43056, 0, 0, 0.5],
1838 112: [0.19444, 0.43056, 0, 0, 0.55556],
1839 113: [0.19444, 0.43056, 0, 0, 0.52778],
1840 114: [0, 0.43056, 0, 0, 0.39167],
1841 115: [0, 0.43056, 0, 0, 0.39445],
1842 116: [0, 0.61508, 0, 0, 0.38889],
1843 117: [0, 0.43056, 0, 0, 0.55556],
1844 118: [0, 0.43056, 0.01389, 0, 0.52778],
1845 119: [0, 0.43056, 0.01389, 0, 0.72222],
1846 120: [0, 0.43056, 0, 0, 0.52778],
1847 121: [0.19444, 0.43056, 0.01389, 0, 0.52778],
1848 122: [0, 0.43056, 0, 0, 0.44445],
1849 123: [0.25, 0.75, 0, 0, 0.5],
1850 124: [0.25, 0.75, 0, 0, 0.27778],
1851 125: [0.25, 0.75, 0, 0, 0.5],
1852 126: [0.35, 0.31786, 0, 0, 0.5],
1853 160: [0, 0, 0, 0, 0.25],
1854 163: [0, 0.69444, 0, 0, 0.76909],
1855 167: [0.19444, 0.69444, 0, 0, 0.44445],
1856 168: [0, 0.66786, 0, 0, 0.5],
1857 172: [0, 0.43056, 0, 0, 0.66667],
1858 176: [0, 0.69444, 0, 0, 0.75],
1859 177: [0.08333, 0.58333, 0, 0, 0.77778],
1860 182: [0.19444, 0.69444, 0, 0, 0.61111],
1861 184: [0.17014, 0, 0, 0, 0.44445],
1862 198: [0, 0.68333, 0, 0, 0.90278],
1863 215: [0.08333, 0.58333, 0, 0, 0.77778],
1864 216: [0.04861, 0.73194, 0, 0, 0.77778],
1865 223: [0, 0.69444, 0, 0, 0.5],
1866 230: [0, 0.43056, 0, 0, 0.72222],
1867 247: [0.08333, 0.58333, 0, 0, 0.77778],
1868 248: [0.09722, 0.52778, 0, 0, 0.5],
1869 305: [0, 0.43056, 0, 0, 0.27778],
1870 338: [0, 0.68333, 0, 0, 1.01389],
1871 339: [0, 0.43056, 0, 0, 0.77778],
1872 567: [0.19444, 0.43056, 0, 0, 0.30556],
1873 710: [0, 0.69444, 0, 0, 0.5],
1874 711: [0, 0.62847, 0, 0, 0.5],
1875 713: [0, 0.56778, 0, 0, 0.5],
1876 714: [0, 0.69444, 0, 0, 0.5],
1877 715: [0, 0.69444, 0, 0, 0.5],
1878 728: [0, 0.69444, 0, 0, 0.5],
1879 729: [0, 0.66786, 0, 0, 0.27778],
1880 730: [0, 0.69444, 0, 0, 0.75],
1881 732: [0, 0.66786, 0, 0, 0.5],
1882 733: [0, 0.69444, 0, 0, 0.5],
1883 915: [0, 0.68333, 0, 0, 0.625],
1884 916: [0, 0.68333, 0, 0, 0.83334],
1885 920: [0, 0.68333, 0, 0, 0.77778],
1886 923: [0, 0.68333, 0, 0, 0.69445],
1887 926: [0, 0.68333, 0, 0, 0.66667],
1888 928: [0, 0.68333, 0, 0, 0.75],
1889 931: [0, 0.68333, 0, 0, 0.72222],
1890 933: [0, 0.68333, 0, 0, 0.77778],
1891 934: [0, 0.68333, 0, 0, 0.72222],
1892 936: [0, 0.68333, 0, 0, 0.77778],
1893 937: [0, 0.68333, 0, 0, 0.72222],
1894 8211: [0, 0.43056, 0.02778, 0, 0.5],
1895 8212: [0, 0.43056, 0.02778, 0, 1],
1896 8216: [0, 0.69444, 0, 0, 0.27778],
1897 8217: [0, 0.69444, 0, 0, 0.27778],
1898 8220: [0, 0.69444, 0, 0, 0.5],
1899 8221: [0, 0.69444, 0, 0, 0.5],
1900 8224: [0.19444, 0.69444, 0, 0, 0.44445],
1901 8225: [0.19444, 0.69444, 0, 0, 0.44445],
1902 8230: [0, 0.12, 0, 0, 1.172],
1903 8242: [0, 0.55556, 0, 0, 0.275],
1904 8407: [0, 0.71444, 0.15382, 0, 0.5],
1905 8463: [0, 0.68889, 0, 0, 0.54028],
1906 8465: [0, 0.69444, 0, 0, 0.72222],
1907 8467: [0, 0.69444, 0, 0.11111, 0.41667],
1908 8472: [0.19444, 0.43056, 0, 0.11111, 0.63646],
1909 8476: [0, 0.69444, 0, 0, 0.72222],
1910 8501: [0, 0.69444, 0, 0, 0.61111],
1911 8592: [-0.13313, 0.36687, 0, 0, 1],
1912 8593: [0.19444, 0.69444, 0, 0, 0.5],
1913 8594: [-0.13313, 0.36687, 0, 0, 1],
1914 8595: [0.19444, 0.69444, 0, 0, 0.5],
1915 8596: [-0.13313, 0.36687, 0, 0, 1],
1916 8597: [0.25, 0.75, 0, 0, 0.5],
1917 8598: [0.19444, 0.69444, 0, 0, 1],
1918 8599: [0.19444, 0.69444, 0, 0, 1],
1919 8600: [0.19444, 0.69444, 0, 0, 1],
1920 8601: [0.19444, 0.69444, 0, 0, 1],
1921 8614: [0.011, 0.511, 0, 0, 1],
1922 8617: [0.011, 0.511, 0, 0, 1.126],
1923 8618: [0.011, 0.511, 0, 0, 1.126],
1924 8636: [-0.13313, 0.36687, 0, 0, 1],
1925 8637: [-0.13313, 0.36687, 0, 0, 1],
1926 8640: [-0.13313, 0.36687, 0, 0, 1],
1927 8641: [-0.13313, 0.36687, 0, 0, 1],
1928 8652: [0.011, 0.671, 0, 0, 1],
1929 8656: [-0.13313, 0.36687, 0, 0, 1],
1930 8657: [0.19444, 0.69444, 0, 0, 0.61111],
1931 8658: [-0.13313, 0.36687, 0, 0, 1],
1932 8659: [0.19444, 0.69444, 0, 0, 0.61111],
1933 8660: [-0.13313, 0.36687, 0, 0, 1],
1934 8661: [0.25, 0.75, 0, 0, 0.61111],
1935 8704: [0, 0.69444, 0, 0, 0.55556],
1936 8706: [0, 0.69444, 0.05556, 0.08334, 0.5309],
1937 8707: [0, 0.69444, 0, 0, 0.55556],
1938 8709: [0.05556, 0.75, 0, 0, 0.5],
1939 8711: [0, 0.68333, 0, 0, 0.83334],
1940 8712: [0.0391, 0.5391, 0, 0, 0.66667],
1941 8715: [0.0391, 0.5391, 0, 0, 0.66667],
1942 8722: [0.08333, 0.58333, 0, 0, 0.77778],
1943 8723: [0.08333, 0.58333, 0, 0, 0.77778],
1944 8725: [0.25, 0.75, 0, 0, 0.5],
1945 8726: [0.25, 0.75, 0, 0, 0.5],
1946 8727: [-0.03472, 0.46528, 0, 0, 0.5],
1947 8728: [-0.05555, 0.44445, 0, 0, 0.5],
1948 8729: [-0.05555, 0.44445, 0, 0, 0.5],
1949 8730: [0.2, 0.8, 0, 0, 0.83334],
1950 8733: [0, 0.43056, 0, 0, 0.77778],
1951 8734: [0, 0.43056, 0, 0, 1],
1952 8736: [0, 0.69224, 0, 0, 0.72222],
1953 8739: [0.25, 0.75, 0, 0, 0.27778],
1954 8741: [0.25, 0.75, 0, 0, 0.5],
1955 8743: [0, 0.55556, 0, 0, 0.66667],
1956 8744: [0, 0.55556, 0, 0, 0.66667],
1957 8745: [0, 0.55556, 0, 0, 0.66667],
1958 8746: [0, 0.55556, 0, 0, 0.66667],
1959 8747: [0.19444, 0.69444, 0.11111, 0, 0.41667],
1960 8764: [-0.13313, 0.36687, 0, 0, 0.77778],
1961 8768: [0.19444, 0.69444, 0, 0, 0.27778],
1962 8771: [-0.03625, 0.46375, 0, 0, 0.77778],
1963 8773: [-0.022, 0.589, 0, 0, 1],
1964 8776: [-0.01688, 0.48312, 0, 0, 0.77778],
1965 8781: [-0.03625, 0.46375, 0, 0, 0.77778],
1966 8784: [-0.133, 0.67, 0, 0, 0.778],
1967 8801: [-0.03625, 0.46375, 0, 0, 0.77778],
1968 8804: [0.13597, 0.63597, 0, 0, 0.77778],
1969 8805: [0.13597, 0.63597, 0, 0, 0.77778],
1970 8810: [0.0391, 0.5391, 0, 0, 1],
1971 8811: [0.0391, 0.5391, 0, 0, 1],
1972 8826: [0.0391, 0.5391, 0, 0, 0.77778],
1973 8827: [0.0391, 0.5391, 0, 0, 0.77778],
1974 8834: [0.0391, 0.5391, 0, 0, 0.77778],
1975 8835: [0.0391, 0.5391, 0, 0, 0.77778],
1976 8838: [0.13597, 0.63597, 0, 0, 0.77778],
1977 8839: [0.13597, 0.63597, 0, 0, 0.77778],
1978 8846: [0, 0.55556, 0, 0, 0.66667],
1979 8849: [0.13597, 0.63597, 0, 0, 0.77778],
1980 8850: [0.13597, 0.63597, 0, 0, 0.77778],
1981 8851: [0, 0.55556, 0, 0, 0.66667],
1982 8852: [0, 0.55556, 0, 0, 0.66667],
1983 8853: [0.08333, 0.58333, 0, 0, 0.77778],
1984 8854: [0.08333, 0.58333, 0, 0, 0.77778],
1985 8855: [0.08333, 0.58333, 0, 0, 0.77778],
1986 8856: [0.08333, 0.58333, 0, 0, 0.77778],
1987 8857: [0.08333, 0.58333, 0, 0, 0.77778],
1988 8866: [0, 0.69444, 0, 0, 0.61111],
1989 8867: [0, 0.69444, 0, 0, 0.61111],
1990 8868: [0, 0.69444, 0, 0, 0.77778],
1991 8869: [0, 0.69444, 0, 0, 0.77778],
1992 8872: [0.249, 0.75, 0, 0, 0.867],
1993 8900: [-0.05555, 0.44445, 0, 0, 0.5],
1994 8901: [-0.05555, 0.44445, 0, 0, 0.27778],
1995 8902: [-0.03472, 0.46528, 0, 0, 0.5],
1996 8904: [0.005, 0.505, 0, 0, 0.9],
1997 8942: [0.03, 0.9, 0, 0, 0.278],
1998 8943: [-0.19, 0.31, 0, 0, 1.172],
1999 8945: [-0.1, 0.82, 0, 0, 1.282],
2000 8968: [0.25, 0.75, 0, 0, 0.44445],
2001 8969: [0.25, 0.75, 0, 0, 0.44445],
2002 8970: [0.25, 0.75, 0, 0, 0.44445],
2003 8971: [0.25, 0.75, 0, 0, 0.44445],
2004 8994: [-0.14236, 0.35764, 0, 0, 1],
2005 8995: [-0.14236, 0.35764, 0, 0, 1],
2006 9136: [0.244, 0.744, 0, 0, 0.412],
2007 9137: [0.244, 0.744, 0, 0, 0.412],
2008 9651: [0.19444, 0.69444, 0, 0, 0.88889],
2009 9657: [-0.03472, 0.46528, 0, 0, 0.5],
2010 9661: [0.19444, 0.69444, 0, 0, 0.88889],
2011 9667: [-0.03472, 0.46528, 0, 0, 0.5],
2012 9711: [0.19444, 0.69444, 0, 0, 1],
2013 9824: [0.12963, 0.69444, 0, 0, 0.77778],
2014 9825: [0.12963, 0.69444, 0, 0, 0.77778],
2015 9826: [0.12963, 0.69444, 0, 0, 0.77778],
2016 9827: [0.12963, 0.69444, 0, 0, 0.77778],
2017 9837: [0, 0.75, 0, 0, 0.38889],
2018 9838: [0.19444, 0.69444, 0, 0, 0.38889],
2019 9839: [0.19444, 0.69444, 0, 0, 0.38889],
2020 10216: [0.25, 0.75, 0, 0, 0.38889],
2021 10217: [0.25, 0.75, 0, 0, 0.38889],
2022 10222: [0.244, 0.744, 0, 0, 0.412],
2023 10223: [0.244, 0.744, 0, 0, 0.412],
2024 10229: [0.011, 0.511, 0, 0, 1.609],
2025 10230: [0.011, 0.511, 0, 0, 1.638],
2026 10231: [0.011, 0.511, 0, 0, 1.859],
2027 10232: [0.024, 0.525, 0, 0, 1.609],
2028 10233: [0.024, 0.525, 0, 0, 1.638],
2029 10234: [0.024, 0.525, 0, 0, 1.858],
2030 10236: [0.011, 0.511, 0, 0, 1.638],
2031 10815: [0, 0.68333, 0, 0, 0.75],
2032 10927: [0.13597, 0.63597, 0, 0, 0.77778],
2033 10928: [0.13597, 0.63597, 0, 0, 0.77778],
2034 57376: [0.19444, 0.69444, 0, 0, 0],
2035 },
2036 "Math-BoldItalic": {
2037 32: [0, 0, 0, 0, 0.25],
2038 48: [0, 0.44444, 0, 0, 0.575],
2039 49: [0, 0.44444, 0, 0, 0.575],
2040 50: [0, 0.44444, 0, 0, 0.575],
2041 51: [0.19444, 0.44444, 0, 0, 0.575],
2042 52: [0.19444, 0.44444, 0, 0, 0.575],
2043 53: [0.19444, 0.44444, 0, 0, 0.575],
2044 54: [0, 0.64444, 0, 0, 0.575],
2045 55: [0.19444, 0.44444, 0, 0, 0.575],
2046 56: [0, 0.64444, 0, 0, 0.575],
2047 57: [0.19444, 0.44444, 0, 0, 0.575],
2048 65: [0, 0.68611, 0, 0, 0.86944],
2049 66: [0, 0.68611, 0.04835, 0, 0.8664],
2050 67: [0, 0.68611, 0.06979, 0, 0.81694],
2051 68: [0, 0.68611, 0.03194, 0, 0.93812],
2052 69: [0, 0.68611, 0.05451, 0, 0.81007],
2053 70: [0, 0.68611, 0.15972, 0, 0.68889],
2054 71: [0, 0.68611, 0, 0, 0.88673],
2055 72: [0, 0.68611, 0.08229, 0, 0.98229],
2056 73: [0, 0.68611, 0.07778, 0, 0.51111],
2057 74: [0, 0.68611, 0.10069, 0, 0.63125],
2058 75: [0, 0.68611, 0.06979, 0, 0.97118],
2059 76: [0, 0.68611, 0, 0, 0.75555],
2060 77: [0, 0.68611, 0.11424, 0, 1.14201],
2061 78: [0, 0.68611, 0.11424, 0, 0.95034],
2062 79: [0, 0.68611, 0.03194, 0, 0.83666],
2063 80: [0, 0.68611, 0.15972, 0, 0.72309],
2064 81: [0.19444, 0.68611, 0, 0, 0.86861],
2065 82: [0, 0.68611, 0.00421, 0, 0.87235],
2066 83: [0, 0.68611, 0.05382, 0, 0.69271],
2067 84: [0, 0.68611, 0.15972, 0, 0.63663],
2068 85: [0, 0.68611, 0.11424, 0, 0.80027],
2069 86: [0, 0.68611, 0.25555, 0, 0.67778],
2070 87: [0, 0.68611, 0.15972, 0, 1.09305],
2071 88: [0, 0.68611, 0.07778, 0, 0.94722],
2072 89: [0, 0.68611, 0.25555, 0, 0.67458],
2073 90: [0, 0.68611, 0.06979, 0, 0.77257],
2074 97: [0, 0.44444, 0, 0, 0.63287],
2075 98: [0, 0.69444, 0, 0, 0.52083],
2076 99: [0, 0.44444, 0, 0, 0.51342],
2077 100: [0, 0.69444, 0, 0, 0.60972],
2078 101: [0, 0.44444, 0, 0, 0.55361],
2079 102: [0.19444, 0.69444, 0.11042, 0, 0.56806],
2080 103: [0.19444, 0.44444, 0.03704, 0, 0.5449],
2081 104: [0, 0.69444, 0, 0, 0.66759],
2082 105: [0, 0.69326, 0, 0, 0.4048],
2083 106: [0.19444, 0.69326, 0.0622, 0, 0.47083],
2084 107: [0, 0.69444, 0.01852, 0, 0.6037],
2085 108: [0, 0.69444, 0.0088, 0, 0.34815],
2086 109: [0, 0.44444, 0, 0, 1.0324],
2087 110: [0, 0.44444, 0, 0, 0.71296],
2088 111: [0, 0.44444, 0, 0, 0.58472],
2089 112: [0.19444, 0.44444, 0, 0, 0.60092],
2090 113: [0.19444, 0.44444, 0.03704, 0, 0.54213],
2091 114: [0, 0.44444, 0.03194, 0, 0.5287],
2092 115: [0, 0.44444, 0, 0, 0.53125],
2093 116: [0, 0.63492, 0, 0, 0.41528],
2094 117: [0, 0.44444, 0, 0, 0.68102],
2095 118: [0, 0.44444, 0.03704, 0, 0.56666],
2096 119: [0, 0.44444, 0.02778, 0, 0.83148],
2097 120: [0, 0.44444, 0, 0, 0.65903],
2098 121: [0.19444, 0.44444, 0.03704, 0, 0.59028],
2099 122: [0, 0.44444, 0.04213, 0, 0.55509],
2100 160: [0, 0, 0, 0, 0.25],
2101 915: [0, 0.68611, 0.15972, 0, 0.65694],
2102 916: [0, 0.68611, 0, 0, 0.95833],
2103 920: [0, 0.68611, 0.03194, 0, 0.86722],
2104 923: [0, 0.68611, 0, 0, 0.80555],
2105 926: [0, 0.68611, 0.07458, 0, 0.84125],
2106 928: [0, 0.68611, 0.08229, 0, 0.98229],
2107 931: [0, 0.68611, 0.05451, 0, 0.88507],
2108 933: [0, 0.68611, 0.15972, 0, 0.67083],
2109 934: [0, 0.68611, 0, 0, 0.76666],
2110 936: [0, 0.68611, 0.11653, 0, 0.71402],
2111 937: [0, 0.68611, 0.04835, 0, 0.8789],
2112 945: [0, 0.44444, 0, 0, 0.76064],
2113 946: [0.19444, 0.69444, 0.03403, 0, 0.65972],
2114 947: [0.19444, 0.44444, 0.06389, 0, 0.59003],
2115 948: [0, 0.69444, 0.03819, 0, 0.52222],
2116 949: [0, 0.44444, 0, 0, 0.52882],
2117 950: [0.19444, 0.69444, 0.06215, 0, 0.50833],
2118 951: [0.19444, 0.44444, 0.03704, 0, 0.6],
2119 952: [0, 0.69444, 0.03194, 0, 0.5618],
2120 953: [0, 0.44444, 0, 0, 0.41204],
2121 954: [0, 0.44444, 0, 0, 0.66759],
2122 955: [0, 0.69444, 0, 0, 0.67083],
2123 956: [0.19444, 0.44444, 0, 0, 0.70787],
2124 957: [0, 0.44444, 0.06898, 0, 0.57685],
2125 958: [0.19444, 0.69444, 0.03021, 0, 0.50833],
2126 959: [0, 0.44444, 0, 0, 0.58472],
2127 960: [0, 0.44444, 0.03704, 0, 0.68241],
2128 961: [0.19444, 0.44444, 0, 0, 0.6118],
2129 962: [0.09722, 0.44444, 0.07917, 0, 0.42361],
2130 963: [0, 0.44444, 0.03704, 0, 0.68588],
2131 964: [0, 0.44444, 0.13472, 0, 0.52083],
2132 965: [0, 0.44444, 0.03704, 0, 0.63055],
2133 966: [0.19444, 0.44444, 0, 0, 0.74722],
2134 967: [0.19444, 0.44444, 0, 0, 0.71805],
2135 968: [0.19444, 0.69444, 0.03704, 0, 0.75833],
2136 969: [0, 0.44444, 0.03704, 0, 0.71782],
2137 977: [0, 0.69444, 0, 0, 0.69155],
2138 981: [0.19444, 0.69444, 0, 0, 0.7125],
2139 982: [0, 0.44444, 0.03194, 0, 0.975],
2140 1009: [0.19444, 0.44444, 0, 0, 0.6118],
2141 1013: [0, 0.44444, 0, 0, 0.48333],
2142 57649: [0, 0.44444, 0, 0, 0.39352],
2143 57911: [0.19444, 0.44444, 0, 0, 0.43889],
2144 },
2145 "Math-Italic": {
2146 32: [0, 0, 0, 0, 0.25],
2147 48: [0, 0.43056, 0, 0, 0.5],
2148 49: [0, 0.43056, 0, 0, 0.5],
2149 50: [0, 0.43056, 0, 0, 0.5],
2150 51: [0.19444, 0.43056, 0, 0, 0.5],
2151 52: [0.19444, 0.43056, 0, 0, 0.5],
2152 53: [0.19444, 0.43056, 0, 0, 0.5],
2153 54: [0, 0.64444, 0, 0, 0.5],
2154 55: [0.19444, 0.43056, 0, 0, 0.5],
2155 56: [0, 0.64444, 0, 0, 0.5],
2156 57: [0.19444, 0.43056, 0, 0, 0.5],
2157 65: [0, 0.68333, 0, 0.13889, 0.75],
2158 66: [0, 0.68333, 0.05017, 0.08334, 0.75851],
2159 67: [0, 0.68333, 0.07153, 0.08334, 0.71472],
2160 68: [0, 0.68333, 0.02778, 0.05556, 0.82792],
2161 69: [0, 0.68333, 0.05764, 0.08334, 0.7382],
2162 70: [0, 0.68333, 0.13889, 0.08334, 0.64306],
2163 71: [0, 0.68333, 0, 0.08334, 0.78625],
2164 72: [0, 0.68333, 0.08125, 0.05556, 0.83125],
2165 73: [0, 0.68333, 0.07847, 0.11111, 0.43958],
2166 74: [0, 0.68333, 0.09618, 0.16667, 0.55451],
2167 75: [0, 0.68333, 0.07153, 0.05556, 0.84931],
2168 76: [0, 0.68333, 0, 0.02778, 0.68056],
2169 77: [0, 0.68333, 0.10903, 0.08334, 0.97014],
2170 78: [0, 0.68333, 0.10903, 0.08334, 0.80347],
2171 79: [0, 0.68333, 0.02778, 0.08334, 0.76278],
2172 80: [0, 0.68333, 0.13889, 0.08334, 0.64201],
2173 81: [0.19444, 0.68333, 0, 0.08334, 0.79056],
2174 82: [0, 0.68333, 0.00773, 0.08334, 0.75929],
2175 83: [0, 0.68333, 0.05764, 0.08334, 0.6132],
2176 84: [0, 0.68333, 0.13889, 0.08334, 0.58438],
2177 85: [0, 0.68333, 0.10903, 0.02778, 0.68278],
2178 86: [0, 0.68333, 0.22222, 0, 0.58333],
2179 87: [0, 0.68333, 0.13889, 0, 0.94445],
2180 88: [0, 0.68333, 0.07847, 0.08334, 0.82847],
2181 89: [0, 0.68333, 0.22222, 0, 0.58056],
2182 90: [0, 0.68333, 0.07153, 0.08334, 0.68264],
2183 97: [0, 0.43056, 0, 0, 0.52859],
2184 98: [0, 0.69444, 0, 0, 0.42917],
2185 99: [0, 0.43056, 0, 0.05556, 0.43276],
2186 100: [0, 0.69444, 0, 0.16667, 0.52049],
2187 101: [0, 0.43056, 0, 0.05556, 0.46563],
2188 102: [0.19444, 0.69444, 0.10764, 0.16667, 0.48959],
2189 103: [0.19444, 0.43056, 0.03588, 0.02778, 0.47697],
2190 104: [0, 0.69444, 0, 0, 0.57616],
2191 105: [0, 0.65952, 0, 0, 0.34451],
2192 106: [0.19444, 0.65952, 0.05724, 0, 0.41181],
2193 107: [0, 0.69444, 0.03148, 0, 0.5206],
2194 108: [0, 0.69444, 0.01968, 0.08334, 0.29838],
2195 109: [0, 0.43056, 0, 0, 0.87801],
2196 110: [0, 0.43056, 0, 0, 0.60023],
2197 111: [0, 0.43056, 0, 0.05556, 0.48472],
2198 112: [0.19444, 0.43056, 0, 0.08334, 0.50313],
2199 113: [0.19444, 0.43056, 0.03588, 0.08334, 0.44641],
2200 114: [0, 0.43056, 0.02778, 0.05556, 0.45116],
2201 115: [0, 0.43056, 0, 0.05556, 0.46875],
2202 116: [0, 0.61508, 0, 0.08334, 0.36111],
2203 117: [0, 0.43056, 0, 0.02778, 0.57246],
2204 118: [0, 0.43056, 0.03588, 0.02778, 0.48472],
2205 119: [0, 0.43056, 0.02691, 0.08334, 0.71592],
2206 120: [0, 0.43056, 0, 0.02778, 0.57153],
2207 121: [0.19444, 0.43056, 0.03588, 0.05556, 0.49028],
2208 122: [0, 0.43056, 0.04398, 0.05556, 0.46505],
2209 160: [0, 0, 0, 0, 0.25],
2210 915: [0, 0.68333, 0.13889, 0.08334, 0.61528],
2211 916: [0, 0.68333, 0, 0.16667, 0.83334],
2212 920: [0, 0.68333, 0.02778, 0.08334, 0.76278],
2213 923: [0, 0.68333, 0, 0.16667, 0.69445],
2214 926: [0, 0.68333, 0.07569, 0.08334, 0.74236],
2215 928: [0, 0.68333, 0.08125, 0.05556, 0.83125],
2216 931: [0, 0.68333, 0.05764, 0.08334, 0.77986],
2217 933: [0, 0.68333, 0.13889, 0.05556, 0.58333],
2218 934: [0, 0.68333, 0, 0.08334, 0.66667],
2219 936: [0, 0.68333, 0.11, 0.05556, 0.61222],
2220 937: [0, 0.68333, 0.05017, 0.08334, 0.7724],
2221 945: [0, 0.43056, 0.0037, 0.02778, 0.6397],
2222 946: [0.19444, 0.69444, 0.05278, 0.08334, 0.56563],
2223 947: [0.19444, 0.43056, 0.05556, 0, 0.51773],
2224 948: [0, 0.69444, 0.03785, 0.05556, 0.44444],
2225 949: [0, 0.43056, 0, 0.08334, 0.46632],
2226 950: [0.19444, 0.69444, 0.07378, 0.08334, 0.4375],
2227 951: [0.19444, 0.43056, 0.03588, 0.05556, 0.49653],
2228 952: [0, 0.69444, 0.02778, 0.08334, 0.46944],
2229 953: [0, 0.43056, 0, 0.05556, 0.35394],
2230 954: [0, 0.43056, 0, 0, 0.57616],
2231 955: [0, 0.69444, 0, 0, 0.58334],
2232 956: [0.19444, 0.43056, 0, 0.02778, 0.60255],
2233 957: [0, 0.43056, 0.06366, 0.02778, 0.49398],
2234 958: [0.19444, 0.69444, 0.04601, 0.11111, 0.4375],
2235 959: [0, 0.43056, 0, 0.05556, 0.48472],
2236 960: [0, 0.43056, 0.03588, 0, 0.57003],
2237 961: [0.19444, 0.43056, 0, 0.08334, 0.51702],
2238 962: [0.09722, 0.43056, 0.07986, 0.08334, 0.36285],
2239 963: [0, 0.43056, 0.03588, 0, 0.57141],
2240 964: [0, 0.43056, 0.1132, 0.02778, 0.43715],
2241 965: [0, 0.43056, 0.03588, 0.02778, 0.54028],
2242 966: [0.19444, 0.43056, 0, 0.08334, 0.65417],
2243 967: [0.19444, 0.43056, 0, 0.05556, 0.62569],
2244 968: [0.19444, 0.69444, 0.03588, 0.11111, 0.65139],
2245 969: [0, 0.43056, 0.03588, 0, 0.62245],
2246 977: [0, 0.69444, 0, 0.08334, 0.59144],
2247 981: [0.19444, 0.69444, 0, 0.08334, 0.59583],
2248 982: [0, 0.43056, 0.02778, 0, 0.82813],
2249 1009: [0.19444, 0.43056, 0, 0.08334, 0.51702],
2250 1013: [0, 0.43056, 0, 0.05556, 0.4059],
2251 57649: [0, 0.43056, 0, 0.02778, 0.32246],
2252 57911: [0.19444, 0.43056, 0, 0.08334, 0.38403],
2253 },
2254 "SansSerif-Bold": {
2255 32: [0, 0, 0, 0, 0.25],
2256 33: [0, 0.69444, 0, 0, 0.36667],
2257 34: [0, 0.69444, 0, 0, 0.55834],
2258 35: [0.19444, 0.69444, 0, 0, 0.91667],
2259 36: [0.05556, 0.75, 0, 0, 0.55],
2260 37: [0.05556, 0.75, 0, 0, 1.02912],
2261 38: [0, 0.69444, 0, 0, 0.83056],
2262 39: [0, 0.69444, 0, 0, 0.30556],
2263 40: [0.25, 0.75, 0, 0, 0.42778],
2264 41: [0.25, 0.75, 0, 0, 0.42778],
2265 42: [0, 0.75, 0, 0, 0.55],
2266 43: [0.11667, 0.61667, 0, 0, 0.85556],
2267 44: [0.10556, 0.13056, 0, 0, 0.30556],
2268 45: [0, 0.45833, 0, 0, 0.36667],
2269 46: [0, 0.13056, 0, 0, 0.30556],
2270 47: [0.25, 0.75, 0, 0, 0.55],
2271 48: [0, 0.69444, 0, 0, 0.55],
2272 49: [0, 0.69444, 0, 0, 0.55],
2273 50: [0, 0.69444, 0, 0, 0.55],
2274 51: [0, 0.69444, 0, 0, 0.55],
2275 52: [0, 0.69444, 0, 0, 0.55],
2276 53: [0, 0.69444, 0, 0, 0.55],
2277 54: [0, 0.69444, 0, 0, 0.55],
2278 55: [0, 0.69444, 0, 0, 0.55],
2279 56: [0, 0.69444, 0, 0, 0.55],
2280 57: [0, 0.69444, 0, 0, 0.55],
2281 58: [0, 0.45833, 0, 0, 0.30556],
2282 59: [0.10556, 0.45833, 0, 0, 0.30556],
2283 61: [-0.09375, 0.40625, 0, 0, 0.85556],
2284 63: [0, 0.69444, 0, 0, 0.51945],
2285 64: [0, 0.69444, 0, 0, 0.73334],
2286 65: [0, 0.69444, 0, 0, 0.73334],
2287 66: [0, 0.69444, 0, 0, 0.73334],
2288 67: [0, 0.69444, 0, 0, 0.70278],
2289 68: [0, 0.69444, 0, 0, 0.79445],
2290 69: [0, 0.69444, 0, 0, 0.64167],
2291 70: [0, 0.69444, 0, 0, 0.61111],
2292 71: [0, 0.69444, 0, 0, 0.73334],
2293 72: [0, 0.69444, 0, 0, 0.79445],
2294 73: [0, 0.69444, 0, 0, 0.33056],
2295 74: [0, 0.69444, 0, 0, 0.51945],
2296 75: [0, 0.69444, 0, 0, 0.76389],
2297 76: [0, 0.69444, 0, 0, 0.58056],
2298 77: [0, 0.69444, 0, 0, 0.97778],
2299 78: [0, 0.69444, 0, 0, 0.79445],
2300 79: [0, 0.69444, 0, 0, 0.79445],
2301 80: [0, 0.69444, 0, 0, 0.70278],
2302 81: [0.10556, 0.69444, 0, 0, 0.79445],
2303 82: [0, 0.69444, 0, 0, 0.70278],
2304 83: [0, 0.69444, 0, 0, 0.61111],
2305 84: [0, 0.69444, 0, 0, 0.73334],
2306 85: [0, 0.69444, 0, 0, 0.76389],
2307 86: [0, 0.69444, 0.01528, 0, 0.73334],
2308 87: [0, 0.69444, 0.01528, 0, 1.03889],
2309 88: [0, 0.69444, 0, 0, 0.73334],
2310 89: [0, 0.69444, 0.0275, 0, 0.73334],
2311 90: [0, 0.69444, 0, 0, 0.67223],
2312 91: [0.25, 0.75, 0, 0, 0.34306],
2313 93: [0.25, 0.75, 0, 0, 0.34306],
2314 94: [0, 0.69444, 0, 0, 0.55],
2315 95: [0.35, 0.10833, 0.03056, 0, 0.55],
2316 97: [0, 0.45833, 0, 0, 0.525],
2317 98: [0, 0.69444, 0, 0, 0.56111],
2318 99: [0, 0.45833, 0, 0, 0.48889],
2319 100: [0, 0.69444, 0, 0, 0.56111],
2320 101: [0, 0.45833, 0, 0, 0.51111],
2321 102: [0, 0.69444, 0.07639, 0, 0.33611],
2322 103: [0.19444, 0.45833, 0.01528, 0, 0.55],
2323 104: [0, 0.69444, 0, 0, 0.56111],
2324 105: [0, 0.69444, 0, 0, 0.25556],
2325 106: [0.19444, 0.69444, 0, 0, 0.28611],
2326 107: [0, 0.69444, 0, 0, 0.53056],
2327 108: [0, 0.69444, 0, 0, 0.25556],
2328 109: [0, 0.45833, 0, 0, 0.86667],
2329 110: [0, 0.45833, 0, 0, 0.56111],
2330 111: [0, 0.45833, 0, 0, 0.55],
2331 112: [0.19444, 0.45833, 0, 0, 0.56111],
2332 113: [0.19444, 0.45833, 0, 0, 0.56111],
2333 114: [0, 0.45833, 0.01528, 0, 0.37222],
2334 115: [0, 0.45833, 0, 0, 0.42167],
2335 116: [0, 0.58929, 0, 0, 0.40417],
2336 117: [0, 0.45833, 0, 0, 0.56111],
2337 118: [0, 0.45833, 0.01528, 0, 0.5],
2338 119: [0, 0.45833, 0.01528, 0, 0.74445],
2339 120: [0, 0.45833, 0, 0, 0.5],
2340 121: [0.19444, 0.45833, 0.01528, 0, 0.5],
2341 122: [0, 0.45833, 0, 0, 0.47639],
2342 126: [0.35, 0.34444, 0, 0, 0.55],
2343 160: [0, 0, 0, 0, 0.25],
2344 168: [0, 0.69444, 0, 0, 0.55],
2345 176: [0, 0.69444, 0, 0, 0.73334],
2346 180: [0, 0.69444, 0, 0, 0.55],
2347 184: [0.17014, 0, 0, 0, 0.48889],
2348 305: [0, 0.45833, 0, 0, 0.25556],
2349 567: [0.19444, 0.45833, 0, 0, 0.28611],
2350 710: [0, 0.69444, 0, 0, 0.55],
2351 711: [0, 0.63542, 0, 0, 0.55],
2352 713: [0, 0.63778, 0, 0, 0.55],
2353 728: [0, 0.69444, 0, 0, 0.55],
2354 729: [0, 0.69444, 0, 0, 0.30556],
2355 730: [0, 0.69444, 0, 0, 0.73334],
2356 732: [0, 0.69444, 0, 0, 0.55],
2357 733: [0, 0.69444, 0, 0, 0.55],
2358 915: [0, 0.69444, 0, 0, 0.58056],
2359 916: [0, 0.69444, 0, 0, 0.91667],
2360 920: [0, 0.69444, 0, 0, 0.85556],
2361 923: [0, 0.69444, 0, 0, 0.67223],
2362 926: [0, 0.69444, 0, 0, 0.73334],
2363 928: [0, 0.69444, 0, 0, 0.79445],
2364 931: [0, 0.69444, 0, 0, 0.79445],
2365 933: [0, 0.69444, 0, 0, 0.85556],
2366 934: [0, 0.69444, 0, 0, 0.79445],
2367 936: [0, 0.69444, 0, 0, 0.85556],
2368 937: [0, 0.69444, 0, 0, 0.79445],
2369 8211: [0, 0.45833, 0.03056, 0, 0.55],
2370 8212: [0, 0.45833, 0.03056, 0, 1.10001],
2371 8216: [0, 0.69444, 0, 0, 0.30556],
2372 8217: [0, 0.69444, 0, 0, 0.30556],
2373 8220: [0, 0.69444, 0, 0, 0.55834],
2374 8221: [0, 0.69444, 0, 0, 0.55834],
2375 },
2376 "SansSerif-Italic": {
2377 32: [0, 0, 0, 0, 0.25],
2378 33: [0, 0.69444, 0.05733, 0, 0.31945],
2379 34: [0, 0.69444, 0.00316, 0, 0.5],
2380 35: [0.19444, 0.69444, 0.05087, 0, 0.83334],
2381 36: [0.05556, 0.75, 0.11156, 0, 0.5],
2382 37: [0.05556, 0.75, 0.03126, 0, 0.83334],
2383 38: [0, 0.69444, 0.03058, 0, 0.75834],
2384 39: [0, 0.69444, 0.07816, 0, 0.27778],
2385 40: [0.25, 0.75, 0.13164, 0, 0.38889],
2386 41: [0.25, 0.75, 0.02536, 0, 0.38889],
2387 42: [0, 0.75, 0.11775, 0, 0.5],
2388 43: [0.08333, 0.58333, 0.02536, 0, 0.77778],
2389 44: [0.125, 0.08333, 0, 0, 0.27778],
2390 45: [0, 0.44444, 0.01946, 0, 0.33333],
2391 46: [0, 0.08333, 0, 0, 0.27778],
2392 47: [0.25, 0.75, 0.13164, 0, 0.5],
2393 48: [0, 0.65556, 0.11156, 0, 0.5],
2394 49: [0, 0.65556, 0.11156, 0, 0.5],
2395 50: [0, 0.65556, 0.11156, 0, 0.5],
2396 51: [0, 0.65556, 0.11156, 0, 0.5],
2397 52: [0, 0.65556, 0.11156, 0, 0.5],
2398 53: [0, 0.65556, 0.11156, 0, 0.5],
2399 54: [0, 0.65556, 0.11156, 0, 0.5],
2400 55: [0, 0.65556, 0.11156, 0, 0.5],
2401 56: [0, 0.65556, 0.11156, 0, 0.5],
2402 57: [0, 0.65556, 0.11156, 0, 0.5],
2403 58: [0, 0.44444, 0.02502, 0, 0.27778],
2404 59: [0.125, 0.44444, 0.02502, 0, 0.27778],
2405 61: [-0.13, 0.37, 0.05087, 0, 0.77778],
2406 63: [0, 0.69444, 0.11809, 0, 0.47222],
2407 64: [0, 0.69444, 0.07555, 0, 0.66667],
2408 65: [0, 0.69444, 0, 0, 0.66667],
2409 66: [0, 0.69444, 0.08293, 0, 0.66667],
2410 67: [0, 0.69444, 0.11983, 0, 0.63889],
2411 68: [0, 0.69444, 0.07555, 0, 0.72223],
2412 69: [0, 0.69444, 0.11983, 0, 0.59722],
2413 70: [0, 0.69444, 0.13372, 0, 0.56945],
2414 71: [0, 0.69444, 0.11983, 0, 0.66667],
2415 72: [0, 0.69444, 0.08094, 0, 0.70834],
2416 73: [0, 0.69444, 0.13372, 0, 0.27778],
2417 74: [0, 0.69444, 0.08094, 0, 0.47222],
2418 75: [0, 0.69444, 0.11983, 0, 0.69445],
2419 76: [0, 0.69444, 0, 0, 0.54167],
2420 77: [0, 0.69444, 0.08094, 0, 0.875],
2421 78: [0, 0.69444, 0.08094, 0, 0.70834],
2422 79: [0, 0.69444, 0.07555, 0, 0.73611],
2423 80: [0, 0.69444, 0.08293, 0, 0.63889],
2424 81: [0.125, 0.69444, 0.07555, 0, 0.73611],
2425 82: [0, 0.69444, 0.08293, 0, 0.64584],
2426 83: [0, 0.69444, 0.09205, 0, 0.55556],
2427 84: [0, 0.69444, 0.13372, 0, 0.68056],
2428 85: [0, 0.69444, 0.08094, 0, 0.6875],
2429 86: [0, 0.69444, 0.1615, 0, 0.66667],
2430 87: [0, 0.69444, 0.1615, 0, 0.94445],
2431 88: [0, 0.69444, 0.13372, 0, 0.66667],
2432 89: [0, 0.69444, 0.17261, 0, 0.66667],
2433 90: [0, 0.69444, 0.11983, 0, 0.61111],
2434 91: [0.25, 0.75, 0.15942, 0, 0.28889],
2435 93: [0.25, 0.75, 0.08719, 0, 0.28889],
2436 94: [0, 0.69444, 0.0799, 0, 0.5],
2437 95: [0.35, 0.09444, 0.08616, 0, 0.5],
2438 97: [0, 0.44444, 0.00981, 0, 0.48056],
2439 98: [0, 0.69444, 0.03057, 0, 0.51667],
2440 99: [0, 0.44444, 0.08336, 0, 0.44445],
2441 100: [0, 0.69444, 0.09483, 0, 0.51667],
2442 101: [0, 0.44444, 0.06778, 0, 0.44445],
2443 102: [0, 0.69444, 0.21705, 0, 0.30556],
2444 103: [0.19444, 0.44444, 0.10836, 0, 0.5],
2445 104: [0, 0.69444, 0.01778, 0, 0.51667],
2446 105: [0, 0.67937, 0.09718, 0, 0.23889],
2447 106: [0.19444, 0.67937, 0.09162, 0, 0.26667],
2448 107: [0, 0.69444, 0.08336, 0, 0.48889],
2449 108: [0, 0.69444, 0.09483, 0, 0.23889],
2450 109: [0, 0.44444, 0.01778, 0, 0.79445],
2451 110: [0, 0.44444, 0.01778, 0, 0.51667],
2452 111: [0, 0.44444, 0.06613, 0, 0.5],
2453 112: [0.19444, 0.44444, 0.0389, 0, 0.51667],
2454 113: [0.19444, 0.44444, 0.04169, 0, 0.51667],
2455 114: [0, 0.44444, 0.10836, 0, 0.34167],
2456 115: [0, 0.44444, 0.0778, 0, 0.38333],
2457 116: [0, 0.57143, 0.07225, 0, 0.36111],
2458 117: [0, 0.44444, 0.04169, 0, 0.51667],
2459 118: [0, 0.44444, 0.10836, 0, 0.46111],
2460 119: [0, 0.44444, 0.10836, 0, 0.68334],
2461 120: [0, 0.44444, 0.09169, 0, 0.46111],
2462 121: [0.19444, 0.44444, 0.10836, 0, 0.46111],
2463 122: [0, 0.44444, 0.08752, 0, 0.43472],
2464 126: [0.35, 0.32659, 0.08826, 0, 0.5],
2465 160: [0, 0, 0, 0, 0.25],
2466 168: [0, 0.67937, 0.06385, 0, 0.5],
2467 176: [0, 0.69444, 0, 0, 0.73752],
2468 184: [0.17014, 0, 0, 0, 0.44445],
2469 305: [0, 0.44444, 0.04169, 0, 0.23889],
2470 567: [0.19444, 0.44444, 0.04169, 0, 0.26667],
2471 710: [0, 0.69444, 0.0799, 0, 0.5],
2472 711: [0, 0.63194, 0.08432, 0, 0.5],
2473 713: [0, 0.60889, 0.08776, 0, 0.5],
2474 714: [0, 0.69444, 0.09205, 0, 0.5],
2475 715: [0, 0.69444, 0, 0, 0.5],
2476 728: [0, 0.69444, 0.09483, 0, 0.5],
2477 729: [0, 0.67937, 0.07774, 0, 0.27778],
2478 730: [0, 0.69444, 0, 0, 0.73752],
2479 732: [0, 0.67659, 0.08826, 0, 0.5],
2480 733: [0, 0.69444, 0.09205, 0, 0.5],
2481 915: [0, 0.69444, 0.13372, 0, 0.54167],
2482 916: [0, 0.69444, 0, 0, 0.83334],
2483 920: [0, 0.69444, 0.07555, 0, 0.77778],
2484 923: [0, 0.69444, 0, 0, 0.61111],
2485 926: [0, 0.69444, 0.12816, 0, 0.66667],
2486 928: [0, 0.69444, 0.08094, 0, 0.70834],
2487 931: [0, 0.69444, 0.11983, 0, 0.72222],
2488 933: [0, 0.69444, 0.09031, 0, 0.77778],
2489 934: [0, 0.69444, 0.04603, 0, 0.72222],
2490 936: [0, 0.69444, 0.09031, 0, 0.77778],
2491 937: [0, 0.69444, 0.08293, 0, 0.72222],
2492 8211: [0, 0.44444, 0.08616, 0, 0.5],
2493 8212: [0, 0.44444, 0.08616, 0, 1],
2494 8216: [0, 0.69444, 0.07816, 0, 0.27778],
2495 8217: [0, 0.69444, 0.07816, 0, 0.27778],
2496 8220: [0, 0.69444, 0.14205, 0, 0.5],
2497 8221: [0, 0.69444, 0.00316, 0, 0.5],
2498 },
2499 "SansSerif-Regular": {
2500 32: [0, 0, 0, 0, 0.25],
2501 33: [0, 0.69444, 0, 0, 0.31945],
2502 34: [0, 0.69444, 0, 0, 0.5],
2503 35: [0.19444, 0.69444, 0, 0, 0.83334],
2504 36: [0.05556, 0.75, 0, 0, 0.5],
2505 37: [0.05556, 0.75, 0, 0, 0.83334],
2506 38: [0, 0.69444, 0, 0, 0.75834],
2507 39: [0, 0.69444, 0, 0, 0.27778],
2508 40: [0.25, 0.75, 0, 0, 0.38889],
2509 41: [0.25, 0.75, 0, 0, 0.38889],
2510 42: [0, 0.75, 0, 0, 0.5],
2511 43: [0.08333, 0.58333, 0, 0, 0.77778],
2512 44: [0.125, 0.08333, 0, 0, 0.27778],
2513 45: [0, 0.44444, 0, 0, 0.33333],
2514 46: [0, 0.08333, 0, 0, 0.27778],
2515 47: [0.25, 0.75, 0, 0, 0.5],
2516 48: [0, 0.65556, 0, 0, 0.5],
2517 49: [0, 0.65556, 0, 0, 0.5],
2518 50: [0, 0.65556, 0, 0, 0.5],
2519 51: [0, 0.65556, 0, 0, 0.5],
2520 52: [0, 0.65556, 0, 0, 0.5],
2521 53: [0, 0.65556, 0, 0, 0.5],
2522 54: [0, 0.65556, 0, 0, 0.5],
2523 55: [0, 0.65556, 0, 0, 0.5],
2524 56: [0, 0.65556, 0, 0, 0.5],
2525 57: [0, 0.65556, 0, 0, 0.5],
2526 58: [0, 0.44444, 0, 0, 0.27778],
2527 59: [0.125, 0.44444, 0, 0, 0.27778],
2528 61: [-0.13, 0.37, 0, 0, 0.77778],
2529 63: [0, 0.69444, 0, 0, 0.47222],
2530 64: [0, 0.69444, 0, 0, 0.66667],
2531 65: [0, 0.69444, 0, 0, 0.66667],
2532 66: [0, 0.69444, 0, 0, 0.66667],
2533 67: [0, 0.69444, 0, 0, 0.63889],
2534 68: [0, 0.69444, 0, 0, 0.72223],
2535 69: [0, 0.69444, 0, 0, 0.59722],
2536 70: [0, 0.69444, 0, 0, 0.56945],
2537 71: [0, 0.69444, 0, 0, 0.66667],
2538 72: [0, 0.69444, 0, 0, 0.70834],
2539 73: [0, 0.69444, 0, 0, 0.27778],
2540 74: [0, 0.69444, 0, 0, 0.47222],
2541 75: [0, 0.69444, 0, 0, 0.69445],
2542 76: [0, 0.69444, 0, 0, 0.54167],
2543 77: [0, 0.69444, 0, 0, 0.875],
2544 78: [0, 0.69444, 0, 0, 0.70834],
2545 79: [0, 0.69444, 0, 0, 0.73611],
2546 80: [0, 0.69444, 0, 0, 0.63889],
2547 81: [0.125, 0.69444, 0, 0, 0.73611],
2548 82: [0, 0.69444, 0, 0, 0.64584],
2549 83: [0, 0.69444, 0, 0, 0.55556],
2550 84: [0, 0.69444, 0, 0, 0.68056],
2551 85: [0, 0.69444, 0, 0, 0.6875],
2552 86: [0, 0.69444, 0.01389, 0, 0.66667],
2553 87: [0, 0.69444, 0.01389, 0, 0.94445],
2554 88: [0, 0.69444, 0, 0, 0.66667],
2555 89: [0, 0.69444, 0.025, 0, 0.66667],
2556 90: [0, 0.69444, 0, 0, 0.61111],
2557 91: [0.25, 0.75, 0, 0, 0.28889],
2558 93: [0.25, 0.75, 0, 0, 0.28889],
2559 94: [0, 0.69444, 0, 0, 0.5],
2560 95: [0.35, 0.09444, 0.02778, 0, 0.5],
2561 97: [0, 0.44444, 0, 0, 0.48056],
2562 98: [0, 0.69444, 0, 0, 0.51667],
2563 99: [0, 0.44444, 0, 0, 0.44445],
2564 100: [0, 0.69444, 0, 0, 0.51667],
2565 101: [0, 0.44444, 0, 0, 0.44445],
2566 102: [0, 0.69444, 0.06944, 0, 0.30556],
2567 103: [0.19444, 0.44444, 0.01389, 0, 0.5],
2568 104: [0, 0.69444, 0, 0, 0.51667],
2569 105: [0, 0.67937, 0, 0, 0.23889],
2570 106: [0.19444, 0.67937, 0, 0, 0.26667],
2571 107: [0, 0.69444, 0, 0, 0.48889],
2572 108: [0, 0.69444, 0, 0, 0.23889],
2573 109: [0, 0.44444, 0, 0, 0.79445],
2574 110: [0, 0.44444, 0, 0, 0.51667],
2575 111: [0, 0.44444, 0, 0, 0.5],
2576 112: [0.19444, 0.44444, 0, 0, 0.51667],
2577 113: [0.19444, 0.44444, 0, 0, 0.51667],
2578 114: [0, 0.44444, 0.01389, 0, 0.34167],
2579 115: [0, 0.44444, 0, 0, 0.38333],
2580 116: [0, 0.57143, 0, 0, 0.36111],
2581 117: [0, 0.44444, 0, 0, 0.51667],
2582 118: [0, 0.44444, 0.01389, 0, 0.46111],
2583 119: [0, 0.44444, 0.01389, 0, 0.68334],
2584 120: [0, 0.44444, 0, 0, 0.46111],
2585 121: [0.19444, 0.44444, 0.01389, 0, 0.46111],
2586 122: [0, 0.44444, 0, 0, 0.43472],
2587 126: [0.35, 0.32659, 0, 0, 0.5],
2588 160: [0, 0, 0, 0, 0.25],
2589 168: [0, 0.67937, 0, 0, 0.5],
2590 176: [0, 0.69444, 0, 0, 0.66667],
2591 184: [0.17014, 0, 0, 0, 0.44445],
2592 305: [0, 0.44444, 0, 0, 0.23889],
2593 567: [0.19444, 0.44444, 0, 0, 0.26667],
2594 710: [0, 0.69444, 0, 0, 0.5],
2595 711: [0, 0.63194, 0, 0, 0.5],
2596 713: [0, 0.60889, 0, 0, 0.5],
2597 714: [0, 0.69444, 0, 0, 0.5],
2598 715: [0, 0.69444, 0, 0, 0.5],
2599 728: [0, 0.69444, 0, 0, 0.5],
2600 729: [0, 0.67937, 0, 0, 0.27778],
2601 730: [0, 0.69444, 0, 0, 0.66667],
2602 732: [0, 0.67659, 0, 0, 0.5],
2603 733: [0, 0.69444, 0, 0, 0.5],
2604 915: [0, 0.69444, 0, 0, 0.54167],
2605 916: [0, 0.69444, 0, 0, 0.83334],
2606 920: [0, 0.69444, 0, 0, 0.77778],
2607 923: [0, 0.69444, 0, 0, 0.61111],
2608 926: [0, 0.69444, 0, 0, 0.66667],
2609 928: [0, 0.69444, 0, 0, 0.70834],
2610 931: [0, 0.69444, 0, 0, 0.72222],
2611 933: [0, 0.69444, 0, 0, 0.77778],
2612 934: [0, 0.69444, 0, 0, 0.72222],
2613 936: [0, 0.69444, 0, 0, 0.77778],
2614 937: [0, 0.69444, 0, 0, 0.72222],
2615 8211: [0, 0.44444, 0.02778, 0, 0.5],
2616 8212: [0, 0.44444, 0.02778, 0, 1],
2617 8216: [0, 0.69444, 0, 0, 0.27778],
2618 8217: [0, 0.69444, 0, 0, 0.27778],
2619 8220: [0, 0.69444, 0, 0, 0.5],
2620 8221: [0, 0.69444, 0, 0, 0.5],
2621 },
2622 "Script-Regular": {
2623 32: [0, 0, 0, 0, 0.25],
2624 65: [0, 0.7, 0.22925, 0, 0.80253],
2625 66: [0, 0.7, 0.04087, 0, 0.90757],
2626 67: [0, 0.7, 0.1689, 0, 0.66619],
2627 68: [0, 0.7, 0.09371, 0, 0.77443],
2628 69: [0, 0.7, 0.18583, 0, 0.56162],
2629 70: [0, 0.7, 0.13634, 0, 0.89544],
2630 71: [0, 0.7, 0.17322, 0, 0.60961],
2631 72: [0, 0.7, 0.29694, 0, 0.96919],
2632 73: [0, 0.7, 0.19189, 0, 0.80907],
2633 74: [0.27778, 0.7, 0.19189, 0, 1.05159],
2634 75: [0, 0.7, 0.31259, 0, 0.91364],
2635 76: [0, 0.7, 0.19189, 0, 0.87373],
2636 77: [0, 0.7, 0.15981, 0, 1.08031],
2637 78: [0, 0.7, 0.3525, 0, 0.9015],
2638 79: [0, 0.7, 0.08078, 0, 0.73787],
2639 80: [0, 0.7, 0.08078, 0, 1.01262],
2640 81: [0, 0.7, 0.03305, 0, 0.88282],
2641 82: [0, 0.7, 0.06259, 0, 0.85],
2642 83: [0, 0.7, 0.19189, 0, 0.86767],
2643 84: [0, 0.7, 0.29087, 0, 0.74697],
2644 85: [0, 0.7, 0.25815, 0, 0.79996],
2645 86: [0, 0.7, 0.27523, 0, 0.62204],
2646 87: [0, 0.7, 0.27523, 0, 0.80532],
2647 88: [0, 0.7, 0.26006, 0, 0.94445],
2648 89: [0, 0.7, 0.2939, 0, 0.70961],
2649 90: [0, 0.7, 0.24037, 0, 0.8212],
2650 160: [0, 0, 0, 0, 0.25],
2651 },
2652 "Size1-Regular": {
2653 32: [0, 0, 0, 0, 0.25],
2654 40: [0.35001, 0.85, 0, 0, 0.45834],
2655 41: [0.35001, 0.85, 0, 0, 0.45834],
2656 47: [0.35001, 0.85, 0, 0, 0.57778],
2657 91: [0.35001, 0.85, 0, 0, 0.41667],
2658 92: [0.35001, 0.85, 0, 0, 0.57778],
2659 93: [0.35001, 0.85, 0, 0, 0.41667],
2660 123: [0.35001, 0.85, 0, 0, 0.58334],
2661 125: [0.35001, 0.85, 0, 0, 0.58334],
2662 160: [0, 0, 0, 0, 0.25],
2663 710: [0, 0.72222, 0, 0, 0.55556],
2664 732: [0, 0.72222, 0, 0, 0.55556],
2665 770: [0, 0.72222, 0, 0, 0.55556],
2666 771: [0, 0.72222, 0, 0, 0.55556],
2667 8214: [-99e-5, 0.601, 0, 0, 0.77778],
2668 8593: [1e-5, 0.6, 0, 0, 0.66667],
2669 8595: [1e-5, 0.6, 0, 0, 0.66667],
2670 8657: [1e-5, 0.6, 0, 0, 0.77778],
2671 8659: [1e-5, 0.6, 0, 0, 0.77778],
2672 8719: [0.25001, 0.75, 0, 0, 0.94445],
2673 8720: [0.25001, 0.75, 0, 0, 0.94445],
2674 8721: [0.25001, 0.75, 0, 0, 1.05556],
2675 8730: [0.35001, 0.85, 0, 0, 1],
2676 8739: [-0.00599, 0.606, 0, 0, 0.33333],
2677 8741: [-0.00599, 0.606, 0, 0, 0.55556],
2678 8747: [0.30612, 0.805, 0.19445, 0, 0.47222],
2679 8748: [0.306, 0.805, 0.19445, 0, 0.47222],
2680 8749: [0.306, 0.805, 0.19445, 0, 0.47222],
2681 8750: [0.30612, 0.805, 0.19445, 0, 0.47222],
2682 8896: [0.25001, 0.75, 0, 0, 0.83334],
2683 8897: [0.25001, 0.75, 0, 0, 0.83334],
2684 8898: [0.25001, 0.75, 0, 0, 0.83334],
2685 8899: [0.25001, 0.75, 0, 0, 0.83334],
2686 8968: [0.35001, 0.85, 0, 0, 0.47222],
2687 8969: [0.35001, 0.85, 0, 0, 0.47222],
2688 8970: [0.35001, 0.85, 0, 0, 0.47222],
2689 8971: [0.35001, 0.85, 0, 0, 0.47222],
2690 9168: [-99e-5, 0.601, 0, 0, 0.66667],
2691 10216: [0.35001, 0.85, 0, 0, 0.47222],
2692 10217: [0.35001, 0.85, 0, 0, 0.47222],
2693 10752: [0.25001, 0.75, 0, 0, 1.11111],
2694 10753: [0.25001, 0.75, 0, 0, 1.11111],
2695 10754: [0.25001, 0.75, 0, 0, 1.11111],
2696 10756: [0.25001, 0.75, 0, 0, 0.83334],
2697 10758: [0.25001, 0.75, 0, 0, 0.83334],
2698 },
2699 "Size2-Regular": {
2700 32: [0, 0, 0, 0, 0.25],
2701 40: [0.65002, 1.15, 0, 0, 0.59722],
2702 41: [0.65002, 1.15, 0, 0, 0.59722],
2703 47: [0.65002, 1.15, 0, 0, 0.81111],
2704 91: [0.65002, 1.15, 0, 0, 0.47222],
2705 92: [0.65002, 1.15, 0, 0, 0.81111],
2706 93: [0.65002, 1.15, 0, 0, 0.47222],
2707 123: [0.65002, 1.15, 0, 0, 0.66667],
2708 125: [0.65002, 1.15, 0, 0, 0.66667],
2709 160: [0, 0, 0, 0, 0.25],
2710 710: [0, 0.75, 0, 0, 1],
2711 732: [0, 0.75, 0, 0, 1],
2712 770: [0, 0.75, 0, 0, 1],
2713 771: [0, 0.75, 0, 0, 1],
2714 8719: [0.55001, 1.05, 0, 0, 1.27778],
2715 8720: [0.55001, 1.05, 0, 0, 1.27778],
2716 8721: [0.55001, 1.05, 0, 0, 1.44445],
2717 8730: [0.65002, 1.15, 0, 0, 1],
2718 8747: [0.86225, 1.36, 0.44445, 0, 0.55556],
2719 8748: [0.862, 1.36, 0.44445, 0, 0.55556],
2720 8749: [0.862, 1.36, 0.44445, 0, 0.55556],
2721 8750: [0.86225, 1.36, 0.44445, 0, 0.55556],
2722 8896: [0.55001, 1.05, 0, 0, 1.11111],
2723 8897: [0.55001, 1.05, 0, 0, 1.11111],
2724 8898: [0.55001, 1.05, 0, 0, 1.11111],
2725 8899: [0.55001, 1.05, 0, 0, 1.11111],
2726 8968: [0.65002, 1.15, 0, 0, 0.52778],
2727 8969: [0.65002, 1.15, 0, 0, 0.52778],
2728 8970: [0.65002, 1.15, 0, 0, 0.52778],
2729 8971: [0.65002, 1.15, 0, 0, 0.52778],
2730 10216: [0.65002, 1.15, 0, 0, 0.61111],
2731 10217: [0.65002, 1.15, 0, 0, 0.61111],
2732 10752: [0.55001, 1.05, 0, 0, 1.51112],
2733 10753: [0.55001, 1.05, 0, 0, 1.51112],
2734 10754: [0.55001, 1.05, 0, 0, 1.51112],
2735 10756: [0.55001, 1.05, 0, 0, 1.11111],
2736 10758: [0.55001, 1.05, 0, 0, 1.11111],
2737 },
2738 "Size3-Regular": {
2739 32: [0, 0, 0, 0, 0.25],
2740 40: [0.95003, 1.45, 0, 0, 0.73611],
2741 41: [0.95003, 1.45, 0, 0, 0.73611],
2742 47: [0.95003, 1.45, 0, 0, 1.04445],
2743 91: [0.95003, 1.45, 0, 0, 0.52778],
2744 92: [0.95003, 1.45, 0, 0, 1.04445],
2745 93: [0.95003, 1.45, 0, 0, 0.52778],
2746 123: [0.95003, 1.45, 0, 0, 0.75],
2747 125: [0.95003, 1.45, 0, 0, 0.75],
2748 160: [0, 0, 0, 0, 0.25],
2749 710: [0, 0.75, 0, 0, 1.44445],
2750 732: [0, 0.75, 0, 0, 1.44445],
2751 770: [0, 0.75, 0, 0, 1.44445],
2752 771: [0, 0.75, 0, 0, 1.44445],
2753 8730: [0.95003, 1.45, 0, 0, 1],
2754 8968: [0.95003, 1.45, 0, 0, 0.58334],
2755 8969: [0.95003, 1.45, 0, 0, 0.58334],
2756 8970: [0.95003, 1.45, 0, 0, 0.58334],
2757 8971: [0.95003, 1.45, 0, 0, 0.58334],
2758 10216: [0.95003, 1.45, 0, 0, 0.75],
2759 10217: [0.95003, 1.45, 0, 0, 0.75],
2760 },
2761 "Size4-Regular": {
2762 32: [0, 0, 0, 0, 0.25],
2763 40: [1.25003, 1.75, 0, 0, 0.79167],
2764 41: [1.25003, 1.75, 0, 0, 0.79167],
2765 47: [1.25003, 1.75, 0, 0, 1.27778],
2766 91: [1.25003, 1.75, 0, 0, 0.58334],
2767 92: [1.25003, 1.75, 0, 0, 1.27778],
2768 93: [1.25003, 1.75, 0, 0, 0.58334],
2769 123: [1.25003, 1.75, 0, 0, 0.80556],
2770 125: [1.25003, 1.75, 0, 0, 0.80556],
2771 160: [0, 0, 0, 0, 0.25],
2772 710: [0, 0.825, 0, 0, 1.8889],
2773 732: [0, 0.825, 0, 0, 1.8889],
2774 770: [0, 0.825, 0, 0, 1.8889],
2775 771: [0, 0.825, 0, 0, 1.8889],
2776 8730: [1.25003, 1.75, 0, 0, 1],
2777 8968: [1.25003, 1.75, 0, 0, 0.63889],
2778 8969: [1.25003, 1.75, 0, 0, 0.63889],
2779 8970: [1.25003, 1.75, 0, 0, 0.63889],
2780 8971: [1.25003, 1.75, 0, 0, 0.63889],
2781 9115: [0.64502, 1.155, 0, 0, 0.875],
2782 9116: [1e-5, 0.6, 0, 0, 0.875],
2783 9117: [0.64502, 1.155, 0, 0, 0.875],
2784 9118: [0.64502, 1.155, 0, 0, 0.875],
2785 9119: [1e-5, 0.6, 0, 0, 0.875],
2786 9120: [0.64502, 1.155, 0, 0, 0.875],
2787 9121: [0.64502, 1.155, 0, 0, 0.66667],
2788 9122: [-99e-5, 0.601, 0, 0, 0.66667],
2789 9123: [0.64502, 1.155, 0, 0, 0.66667],
2790 9124: [0.64502, 1.155, 0, 0, 0.66667],
2791 9125: [-99e-5, 0.601, 0, 0, 0.66667],
2792 9126: [0.64502, 1.155, 0, 0, 0.66667],
2793 9127: [1e-5, 0.9, 0, 0, 0.88889],
2794 9128: [0.65002, 1.15, 0, 0, 0.88889],
2795 9129: [0.90001, 0, 0, 0, 0.88889],
2796 9130: [0, 0.3, 0, 0, 0.88889],
2797 9131: [1e-5, 0.9, 0, 0, 0.88889],
2798 9132: [0.65002, 1.15, 0, 0, 0.88889],
2799 9133: [0.90001, 0, 0, 0, 0.88889],
2800 9143: [0.88502, 0.915, 0, 0, 1.05556],
2801 10216: [1.25003, 1.75, 0, 0, 0.80556],
2802 10217: [1.25003, 1.75, 0, 0, 0.80556],
2803 57344: [-0.00499, 0.605, 0, 0, 1.05556],
2804 57345: [-0.00499, 0.605, 0, 0, 1.05556],
2805 57680: [0, 0.12, 0, 0, 0.45],
2806 57681: [0, 0.12, 0, 0, 0.45],
2807 57682: [0, 0.12, 0, 0, 0.45],
2808 57683: [0, 0.12, 0, 0, 0.45],
2809 },
2810 "Typewriter-Regular": {
2811 32: [0, 0, 0, 0, 0.525],
2812 33: [0, 0.61111, 0, 0, 0.525],
2813 34: [0, 0.61111, 0, 0, 0.525],
2814 35: [0, 0.61111, 0, 0, 0.525],
2815 36: [0.08333, 0.69444, 0, 0, 0.525],
2816 37: [0.08333, 0.69444, 0, 0, 0.525],
2817 38: [0, 0.61111, 0, 0, 0.525],
2818 39: [0, 0.61111, 0, 0, 0.525],
2819 40: [0.08333, 0.69444, 0, 0, 0.525],
2820 41: [0.08333, 0.69444, 0, 0, 0.525],
2821 42: [0, 0.52083, 0, 0, 0.525],
2822 43: [-0.08056, 0.53055, 0, 0, 0.525],
2823 44: [0.13889, 0.125, 0, 0, 0.525],
2824 45: [-0.08056, 0.53055, 0, 0, 0.525],
2825 46: [0, 0.125, 0, 0, 0.525],
2826 47: [0.08333, 0.69444, 0, 0, 0.525],
2827 48: [0, 0.61111, 0, 0, 0.525],
2828 49: [0, 0.61111, 0, 0, 0.525],
2829 50: [0, 0.61111, 0, 0, 0.525],
2830 51: [0, 0.61111, 0, 0, 0.525],
2831 52: [0, 0.61111, 0, 0, 0.525],
2832 53: [0, 0.61111, 0, 0, 0.525],
2833 54: [0, 0.61111, 0, 0, 0.525],
2834 55: [0, 0.61111, 0, 0, 0.525],
2835 56: [0, 0.61111, 0, 0, 0.525],
2836 57: [0, 0.61111, 0, 0, 0.525],
2837 58: [0, 0.43056, 0, 0, 0.525],
2838 59: [0.13889, 0.43056, 0, 0, 0.525],
2839 60: [-0.05556, 0.55556, 0, 0, 0.525],
2840 61: [-0.19549, 0.41562, 0, 0, 0.525],
2841 62: [-0.05556, 0.55556, 0, 0, 0.525],
2842 63: [0, 0.61111, 0, 0, 0.525],
2843 64: [0, 0.61111, 0, 0, 0.525],
2844 65: [0, 0.61111, 0, 0, 0.525],
2845 66: [0, 0.61111, 0, 0, 0.525],
2846 67: [0, 0.61111, 0, 0, 0.525],
2847 68: [0, 0.61111, 0, 0, 0.525],
2848 69: [0, 0.61111, 0, 0, 0.525],
2849 70: [0, 0.61111, 0, 0, 0.525],
2850 71: [0, 0.61111, 0, 0, 0.525],
2851 72: [0, 0.61111, 0, 0, 0.525],
2852 73: [0, 0.61111, 0, 0, 0.525],
2853 74: [0, 0.61111, 0, 0, 0.525],
2854 75: [0, 0.61111, 0, 0, 0.525],
2855 76: [0, 0.61111, 0, 0, 0.525],
2856 77: [0, 0.61111, 0, 0, 0.525],
2857 78: [0, 0.61111, 0, 0, 0.525],
2858 79: [0, 0.61111, 0, 0, 0.525],
2859 80: [0, 0.61111, 0, 0, 0.525],
2860 81: [0.13889, 0.61111, 0, 0, 0.525],
2861 82: [0, 0.61111, 0, 0, 0.525],
2862 83: [0, 0.61111, 0, 0, 0.525],
2863 84: [0, 0.61111, 0, 0, 0.525],
2864 85: [0, 0.61111, 0, 0, 0.525],
2865 86: [0, 0.61111, 0, 0, 0.525],
2866 87: [0, 0.61111, 0, 0, 0.525],
2867 88: [0, 0.61111, 0, 0, 0.525],
2868 89: [0, 0.61111, 0, 0, 0.525],
2869 90: [0, 0.61111, 0, 0, 0.525],
2870 91: [0.08333, 0.69444, 0, 0, 0.525],
2871 92: [0.08333, 0.69444, 0, 0, 0.525],
2872 93: [0.08333, 0.69444, 0, 0, 0.525],
2873 94: [0, 0.61111, 0, 0, 0.525],
2874 95: [0.09514, 0, 0, 0, 0.525],
2875 96: [0, 0.61111, 0, 0, 0.525],
2876 97: [0, 0.43056, 0, 0, 0.525],
2877 98: [0, 0.61111, 0, 0, 0.525],
2878 99: [0, 0.43056, 0, 0, 0.525],
2879 100: [0, 0.61111, 0, 0, 0.525],
2880 101: [0, 0.43056, 0, 0, 0.525],
2881 102: [0, 0.61111, 0, 0, 0.525],
2882 103: [0.22222, 0.43056, 0, 0, 0.525],
2883 104: [0, 0.61111, 0, 0, 0.525],
2884 105: [0, 0.61111, 0, 0, 0.525],
2885 106: [0.22222, 0.61111, 0, 0, 0.525],
2886 107: [0, 0.61111, 0, 0, 0.525],
2887 108: [0, 0.61111, 0, 0, 0.525],
2888 109: [0, 0.43056, 0, 0, 0.525],
2889 110: [0, 0.43056, 0, 0, 0.525],
2890 111: [0, 0.43056, 0, 0, 0.525],
2891 112: [0.22222, 0.43056, 0, 0, 0.525],
2892 113: [0.22222, 0.43056, 0, 0, 0.525],
2893 114: [0, 0.43056, 0, 0, 0.525],
2894 115: [0, 0.43056, 0, 0, 0.525],
2895 116: [0, 0.55358, 0, 0, 0.525],
2896 117: [0, 0.43056, 0, 0, 0.525],
2897 118: [0, 0.43056, 0, 0, 0.525],
2898 119: [0, 0.43056, 0, 0, 0.525],
2899 120: [0, 0.43056, 0, 0, 0.525],
2900 121: [0.22222, 0.43056, 0, 0, 0.525],
2901 122: [0, 0.43056, 0, 0, 0.525],
2902 123: [0.08333, 0.69444, 0, 0, 0.525],
2903 124: [0.08333, 0.69444, 0, 0, 0.525],
2904 125: [0.08333, 0.69444, 0, 0, 0.525],
2905 126: [0, 0.61111, 0, 0, 0.525],
2906 127: [0, 0.61111, 0, 0, 0.525],
2907 160: [0, 0, 0, 0, 0.525],
2908 176: [0, 0.61111, 0, 0, 0.525],
2909 184: [0.19445, 0, 0, 0, 0.525],
2910 305: [0, 0.43056, 0, 0, 0.525],
2911 567: [0.22222, 0.43056, 0, 0, 0.525],
2912 711: [0, 0.56597, 0, 0, 0.525],
2913 713: [0, 0.56555, 0, 0, 0.525],
2914 714: [0, 0.61111, 0, 0, 0.525],
2915 715: [0, 0.61111, 0, 0, 0.525],
2916 728: [0, 0.61111, 0, 0, 0.525],
2917 730: [0, 0.61111, 0, 0, 0.525],
2918 770: [0, 0.61111, 0, 0, 0.525],
2919 771: [0, 0.61111, 0, 0, 0.525],
2920 776: [0, 0.61111, 0, 0, 0.525],
2921 915: [0, 0.61111, 0, 0, 0.525],
2922 916: [0, 0.61111, 0, 0, 0.525],
2923 920: [0, 0.61111, 0, 0, 0.525],
2924 923: [0, 0.61111, 0, 0, 0.525],
2925 926: [0, 0.61111, 0, 0, 0.525],
2926 928: [0, 0.61111, 0, 0, 0.525],
2927 931: [0, 0.61111, 0, 0, 0.525],
2928 933: [0, 0.61111, 0, 0, 0.525],
2929 934: [0, 0.61111, 0, 0, 0.525],
2930 936: [0, 0.61111, 0, 0, 0.525],
2931 937: [0, 0.61111, 0, 0, 0.525],
2932 8216: [0, 0.61111, 0, 0, 0.525],
2933 8217: [0, 0.61111, 0, 0, 0.525],
2934 8242: [0, 0.61111, 0, 0, 0.525],
2935 9251: [0.11111, 0.21944, 0, 0, 0.525],
2936 },
2937 },
2938 V = {
2939 slant: [0.25, 0.25, 0.25],
2940 space: [0, 0, 0],
2941 stretch: [0, 0, 0],
2942 shrink: [0, 0, 0],
2943 xHeight: [0.431, 0.431, 0.431],
2944 quad: [1, 1.171, 1.472],
2945 extraSpace: [0, 0, 0],
2946 num1: [0.677, 0.732, 0.925],
2947 num2: [0.394, 0.384, 0.387],
2948 num3: [0.444, 0.471, 0.504],
2949 denom1: [0.686, 0.752, 1.025],
2950 denom2: [0.345, 0.344, 0.532],
2951 sup1: [0.413, 0.503, 0.504],
2952 sup2: [0.363, 0.431, 0.404],
2953 sup3: [0.289, 0.286, 0.294],
2954 sub1: [0.15, 0.143, 0.2],
2955 sub2: [0.247, 0.286, 0.4],
2956 supDrop: [0.386, 0.353, 0.494],
2957 subDrop: [0.05, 0.071, 0.1],
2958 delim1: [2.39, 1.7, 1.98],
2959 delim2: [1.01, 1.157, 1.42],
2960 axisHeight: [0.25, 0.25, 0.25],
2961 defaultRuleThickness: [0.04, 0.049, 0.049],
2962 bigOpSpacing1: [0.111, 0.111, 0.111],
2963 bigOpSpacing2: [0.166, 0.166, 0.166],
2964 bigOpSpacing3: [0.2, 0.2, 0.2],
2965 bigOpSpacing4: [0.6, 0.611, 0.611],
2966 bigOpSpacing5: [0.1, 0.143, 0.143],
2967 sqrtRuleThickness: [0.04, 0.04, 0.04],
2968 ptPerEm: [10, 10, 10],
2969 doubleRuleSep: [0.2, 0.2, 0.2],
2970 arrayRuleWidth: [0.04, 0.04, 0.04],
2971 fboxsep: [0.3, 0.3, 0.3],
2972 fboxrule: [0.04, 0.04, 0.04],
2973 },
2974 U = {
2975 "\xc5": "A",
2976 "\xc7": "C",
2977 "\xd0": "D",
2978 "\xde": "o",
2979 "\xe5": "a",
2980 "\xe7": "c",
2981 "\xf0": "d",
2982 "\xfe": "o",
2983 "\u0410": "A",
2984 "\u0411": "B",
2985 "\u0412": "B",
2986 "\u0413": "F",
2987 "\u0414": "A",
2988 "\u0415": "E",
2989 "\u0416": "K",
2990 "\u0417": "3",
2991 "\u0418": "N",
2992 "\u0419": "N",
2993 "\u041a": "K",
2994 "\u041b": "N",
2995 "\u041c": "M",
2996 "\u041d": "H",
2997 "\u041e": "O",
2998 "\u041f": "N",
2999 "\u0420": "P",
3000 "\u0421": "C",
3001 "\u0422": "T",
3002 "\u0423": "y",
3003 "\u0424": "O",
3004 "\u0425": "X",
3005 "\u0426": "U",
3006 "\u0427": "h",
3007 "\u0428": "W",
3008 "\u0429": "W",
3009 "\u042a": "B",
3010 "\u042b": "X",
3011 "\u042c": "B",
3012 "\u042d": "3",
3013 "\u042e": "X",
3014 "\u042f": "R",
3015 "\u0430": "a",
3016 "\u0431": "b",
3017 "\u0432": "a",
3018 "\u0433": "r",
3019 "\u0434": "y",
3020 "\u0435": "e",
3021 "\u0436": "m",
3022 "\u0437": "e",
3023 "\u0438": "n",
3024 "\u0439": "n",
3025 "\u043a": "n",
3026 "\u043b": "n",
3027 "\u043c": "m",
3028 "\u043d": "n",
3029 "\u043e": "o",
3030 "\u043f": "n",
3031 "\u0440": "p",
3032 "\u0441": "c",
3033 "\u0442": "o",
3034 "\u0443": "y",
3035 "\u0444": "b",
3036 "\u0445": "x",
3037 "\u0446": "n",
3038 "\u0447": "n",
3039 "\u0448": "w",
3040 "\u0449": "w",
3041 "\u044a": "a",
3042 "\u044b": "m",
3043 "\u044c": "a",
3044 "\u044d": "e",
3045 "\u044e": "m",
3046 "\u044f": "r",
3047 };
3048 function G(t, e, r) {
3049 if (!F[e])
3050 throw new Error("Font metrics not found for font: " + e + ".");
3051 var a = t.charCodeAt(0),
3052 n = F[e][a];
3053 if (
3054 (!n && t[0] in U && ((a = U[t[0]].charCodeAt(0)), (n = F[e][a])),
3055 n || "text" !== r || (M(a) && (n = F[e][77])),
3056 n)
3057 )
3058 return {
3059 depth: n[0],
3060 height: n[1],
3061 italic: n[2],
3062 skew: n[3],
3063 width: n[4],
3064 };
3065 }
3066 var Y = {};
3067 var W = { bin: 1, close: 1, inner: 1, open: 1, punct: 1, rel: 1 },
3068 X = {
3069 "accent-token": 1,
3070 mathord: 1,
3071 "op-token": 1,
3072 spacing: 1,
3073 textord: 1,
3074 },
3075 _ = { math: {}, text: {} },
3076 j = _;
3077 function $(t, e, r, a, n, i) {
3078 ((_[t][n] = { font: e, group: r, replace: a }),
3079 i && a && (_[t][a] = _[t][n]));
3080 }
3081 var Z = "main",
3082 K = "ams",
3083 J = "bin",
3084 Q = "mathord",
3085 tt = "op-token",
3086 et = "rel";
3087 ($("math", Z, et, "\u2261", "\\equiv", !0),
3088 $("math", Z, et, "\u227a", "\\prec", !0),
3089 $("math", Z, et, "\u227b", "\\succ", !0),
3090 $("math", Z, et, "\u223c", "\\sim", !0),
3091 $("math", Z, et, "\u22a5", "\\perp"),
3092 $("math", Z, et, "\u2aaf", "\\preceq", !0),
3093 $("math", Z, et, "\u2ab0", "\\succeq", !0),
3094 $("math", Z, et, "\u2243", "\\simeq", !0),
3095 $("math", Z, et, "\u2223", "\\mid", !0),
3096 $("math", Z, et, "\u226a", "\\ll", !0),
3097 $("math", Z, et, "\u226b", "\\gg", !0),
3098 $("math", Z, et, "\u224d", "\\asymp", !0),
3099 $("math", Z, et, "\u2225", "\\parallel"),
3100 $("math", Z, et, "\u22c8", "\\bowtie", !0),
3101 $("math", Z, et, "\u2323", "\\smile", !0),
3102 $("math", Z, et, "\u2291", "\\sqsubseteq", !0),
3103 $("math", Z, et, "\u2292", "\\sqsupseteq", !0),
3104 $("math", Z, et, "\u2250", "\\doteq", !0),
3105 $("math", Z, et, "\u2322", "\\frown", !0),
3106 $("math", Z, et, "\u220b", "\\ni", !0),
3107 $("math", Z, et, "\u221d", "\\propto", !0),
3108 $("math", Z, et, "\u22a2", "\\vdash", !0),
3109 $("math", Z, et, "\u22a3", "\\dashv", !0),
3110 $("math", Z, et, "\u220b", "\\owns"),
3111 $("math", Z, "punct", ".", "\\ldotp"),
3112 $("math", Z, "punct", "\u22c5", "\\cdotp"),
3113 $("math", Z, "textord", "#", "\\#"),
3114 $("text", Z, "textord", "#", "\\#"),
3115 $("math", Z, "textord", "&", "\\&"),
3116 $("text", Z, "textord", "&", "\\&"),
3117 $("math", Z, "textord", "\u2135", "\\aleph", !0),
3118 $("math", Z, "textord", "\u2200", "\\forall", !0),
3119 $("math", Z, "textord", "\u210f", "\\hbar", !0),
3120 $("math", Z, "textord", "\u2203", "\\exists", !0),
3121 $("math", Z, "textord", "\u2207", "\\nabla", !0),
3122 $("math", Z, "textord", "\u266d", "\\flat", !0),
3123 $("math", Z, "textord", "\u2113", "\\ell", !0),
3124 $("math", Z, "textord", "\u266e", "\\natural", !0),
3125 $("math", Z, "textord", "\u2663", "\\clubsuit", !0),
3126 $("math", Z, "textord", "\u2118", "\\wp", !0),
3127 $("math", Z, "textord", "\u266f", "\\sharp", !0),
3128 $("math", Z, "textord", "\u2662", "\\diamondsuit", !0),
3129 $("math", Z, "textord", "\u211c", "\\Re", !0),
3130 $("math", Z, "textord", "\u2661", "\\heartsuit", !0),
3131 $("math", Z, "textord", "\u2111", "\\Im", !0),
3132 $("math", Z, "textord", "\u2660", "\\spadesuit", !0),
3133 $("text", Z, "textord", "\xa7", "\\S", !0),
3134 $("text", Z, "textord", "\xb6", "\\P", !0),
3135 $("math", Z, "textord", "\u2020", "\\dag"),
3136 $("text", Z, "textord", "\u2020", "\\dag"),
3137 $("text", Z, "textord", "\u2020", "\\textdagger"),
3138 $("math", Z, "textord", "\u2021", "\\ddag"),
3139 $("text", Z, "textord", "\u2021", "\\ddag"),
3140 $("text", Z, "textord", "\u2021", "\\textdaggerdbl"),
3141 $("math", Z, "close", "\u23b1", "\\rmoustache", !0),
3142 $("math", Z, "open", "\u23b0", "\\lmoustache", !0),
3143 $("math", Z, "close", "\u27ef", "\\rgroup", !0),
3144 $("math", Z, "open", "\u27ee", "\\lgroup", !0),
3145 $("math", Z, J, "\u2213", "\\mp", !0),
3146 $("math", Z, J, "\u2296", "\\ominus", !0),
3147 $("math", Z, J, "\u228e", "\\uplus", !0),
3148 $("math", Z, J, "\u2293", "\\sqcap", !0),
3149 $("math", Z, J, "\u2217", "\\ast"),
3150 $("math", Z, J, "\u2294", "\\sqcup", !0),
3151 $("math", Z, J, "\u25ef", "\\bigcirc"),
3152 $("math", Z, J, "\u2219", "\\bullet"),
3153 $("math", Z, J, "\u2021", "\\ddagger"),
3154 $("math", Z, J, "\u2240", "\\wr", !0),
3155 $("math", Z, J, "\u2a3f", "\\amalg"),
3156 $("math", Z, J, "&", "\\And"),
3157 $("math", Z, et, "\u27f5", "\\longleftarrow", !0),
3158 $("math", Z, et, "\u21d0", "\\Leftarrow", !0),
3159 $("math", Z, et, "\u27f8", "\\Longleftarrow", !0),
3160 $("math", Z, et, "\u27f6", "\\longrightarrow", !0),
3161 $("math", Z, et, "\u21d2", "\\Rightarrow", !0),
3162 $("math", Z, et, "\u27f9", "\\Longrightarrow", !0),
3163 $("math", Z, et, "\u2194", "\\leftrightarrow", !0),
3164 $("math", Z, et, "\u27f7", "\\longleftrightarrow", !0),
3165 $("math", Z, et, "\u21d4", "\\Leftrightarrow", !0),
3166 $("math", Z, et, "\u27fa", "\\Longleftrightarrow", !0),
3167 $("math", Z, et, "\u21a6", "\\mapsto", !0),
3168 $("math", Z, et, "\u27fc", "\\longmapsto", !0),
3169 $("math", Z, et, "\u2197", "\\nearrow", !0),
3170 $("math", Z, et, "\u21a9", "\\hookleftarrow", !0),
3171 $("math", Z, et, "\u21aa", "\\hookrightarrow", !0),
3172 $("math", Z, et, "\u2198", "\\searrow", !0),
3173 $("math", Z, et, "\u21bc", "\\leftharpoonup", !0),
3174 $("math", Z, et, "\u21c0", "\\rightharpoonup", !0),
3175 $("math", Z, et, "\u2199", "\\swarrow", !0),
3176 $("math", Z, et, "\u21bd", "\\leftharpoondown", !0),
3177 $("math", Z, et, "\u21c1", "\\rightharpoondown", !0),
3178 $("math", Z, et, "\u2196", "\\nwarrow", !0),
3179 $("math", Z, et, "\u21cc", "\\rightleftharpoons", !0),
3180 $("math", K, et, "\u226e", "\\nless", !0),
3181 $("math", K, et, "\ue010", "\\@nleqslant"),
3182 $("math", K, et, "\ue011", "\\@nleqq"),
3183 $("math", K, et, "\u2a87", "\\lneq", !0),
3184 $("math", K, et, "\u2268", "\\lneqq", !0),
3185 $("math", K, et, "\ue00c", "\\@lvertneqq"),
3186 $("math", K, et, "\u22e6", "\\lnsim", !0),
3187 $("math", K, et, "\u2a89", "\\lnapprox", !0),
3188 $("math", K, et, "\u2280", "\\nprec", !0),
3189 $("math", K, et, "\u22e0", "\\npreceq", !0),
3190 $("math", K, et, "\u22e8", "\\precnsim", !0),
3191 $("math", K, et, "\u2ab9", "\\precnapprox", !0),
3192 $("math", K, et, "\u2241", "\\nsim", !0),
3193 $("math", K, et, "\ue006", "\\@nshortmid"),
3194 $("math", K, et, "\u2224", "\\nmid", !0),
3195 $("math", K, et, "\u22ac", "\\nvdash", !0),
3196 $("math", K, et, "\u22ad", "\\nvDash", !0),
3197 $("math", K, et, "\u22ea", "\\ntriangleleft"),
3198 $("math", K, et, "\u22ec", "\\ntrianglelefteq", !0),
3199 $("math", K, et, "\u228a", "\\subsetneq", !0),
3200 $("math", K, et, "\ue01a", "\\@varsubsetneq"),
3201 $("math", K, et, "\u2acb", "\\subsetneqq", !0),
3202 $("math", K, et, "\ue017", "\\@varsubsetneqq"),
3203 $("math", K, et, "\u226f", "\\ngtr", !0),
3204 $("math", K, et, "\ue00f", "\\@ngeqslant"),
3205 $("math", K, et, "\ue00e", "\\@ngeqq"),
3206 $("math", K, et, "\u2a88", "\\gneq", !0),
3207 $("math", K, et, "\u2269", "\\gneqq", !0),
3208 $("math", K, et, "\ue00d", "\\@gvertneqq"),
3209 $("math", K, et, "\u22e7", "\\gnsim", !0),
3210 $("math", K, et, "\u2a8a", "\\gnapprox", !0),
3211 $("math", K, et, "\u2281", "\\nsucc", !0),
3212 $("math", K, et, "\u22e1", "\\nsucceq", !0),
3213 $("math", K, et, "\u22e9", "\\succnsim", !0),
3214 $("math", K, et, "\u2aba", "\\succnapprox", !0),
3215 $("math", K, et, "\u2246", "\\ncong", !0),
3216 $("math", K, et, "\ue007", "\\@nshortparallel"),
3217 $("math", K, et, "\u2226", "\\nparallel", !0),
3218 $("math", K, et, "\u22af", "\\nVDash", !0),
3219 $("math", K, et, "\u22eb", "\\ntriangleright"),
3220 $("math", K, et, "\u22ed", "\\ntrianglerighteq", !0),
3221 $("math", K, et, "\ue018", "\\@nsupseteqq"),
3222 $("math", K, et, "\u228b", "\\supsetneq", !0),
3223 $("math", K, et, "\ue01b", "\\@varsupsetneq"),
3224 $("math", K, et, "\u2acc", "\\supsetneqq", !0),
3225 $("math", K, et, "\ue019", "\\@varsupsetneqq"),
3226 $("math", K, et, "\u22ae", "\\nVdash", !0),
3227 $("math", K, et, "\u2ab5", "\\precneqq", !0),
3228 $("math", K, et, "\u2ab6", "\\succneqq", !0),
3229 $("math", K, et, "\ue016", "\\@nsubseteqq"),
3230 $("math", K, J, "\u22b4", "\\unlhd"),
3231 $("math", K, J, "\u22b5", "\\unrhd"),
3232 $("math", K, et, "\u219a", "\\nleftarrow", !0),
3233 $("math", K, et, "\u219b", "\\nrightarrow", !0),
3234 $("math", K, et, "\u21cd", "\\nLeftarrow", !0),
3235 $("math", K, et, "\u21cf", "\\nRightarrow", !0),
3236 $("math", K, et, "\u21ae", "\\nleftrightarrow", !0),
3237 $("math", K, et, "\u21ce", "\\nLeftrightarrow", !0),
3238 $("math", K, et, "\u25b3", "\\vartriangle"),
3239 $("math", K, "textord", "\u210f", "\\hslash"),
3240 $("math", K, "textord", "\u25bd", "\\triangledown"),
3241 $("math", K, "textord", "\u25ca", "\\lozenge"),
3242 $("math", K, "textord", "\u24c8", "\\circledS"),
3243 $("math", K, "textord", "\xae", "\\circledR"),
3244 $("text", K, "textord", "\xae", "\\circledR"),
3245 $("math", K, "textord", "\u2221", "\\measuredangle", !0),
3246 $("math", K, "textord", "\u2204", "\\nexists"),
3247 $("math", K, "textord", "\u2127", "\\mho"),
3248 $("math", K, "textord", "\u2132", "\\Finv", !0),
3249 $("math", K, "textord", "\u2141", "\\Game", !0),
3250 $("math", K, "textord", "\u2035", "\\backprime"),
3251 $("math", K, "textord", "\u25b2", "\\blacktriangle"),
3252 $("math", K, "textord", "\u25bc", "\\blacktriangledown"),
3253 $("math", K, "textord", "\u25a0", "\\blacksquare"),
3254 $("math", K, "textord", "\u29eb", "\\blacklozenge"),
3255 $("math", K, "textord", "\u2605", "\\bigstar"),
3256 $("math", K, "textord", "\u2222", "\\sphericalangle", !0),
3257 $("math", K, "textord", "\u2201", "\\complement", !0),
3258 $("math", K, "textord", "\xf0", "\\eth", !0),
3259 $("text", Z, "textord", "\xf0", "\xf0"),
3260 $("math", K, "textord", "\u2571", "\\diagup"),
3261 $("math", K, "textord", "\u2572", "\\diagdown"),
3262 $("math", K, "textord", "\u25a1", "\\square"),
3263 $("math", K, "textord", "\u25a1", "\\Box"),
3264 $("math", K, "textord", "\u25ca", "\\Diamond"),
3265 $("math", K, "textord", "\xa5", "\\yen", !0),
3266 $("text", K, "textord", "\xa5", "\\yen", !0),
3267 $("math", K, "textord", "\u2713", "\\checkmark", !0),
3268 $("text", K, "textord", "\u2713", "\\checkmark"),
3269 $("math", K, "textord", "\u2136", "\\beth", !0),
3270 $("math", K, "textord", "\u2138", "\\daleth", !0),
3271 $("math", K, "textord", "\u2137", "\\gimel", !0),
3272 $("math", K, "textord", "\u03dd", "\\digamma", !0),
3273 $("math", K, "textord", "\u03f0", "\\varkappa"),
3274 $("math", K, "open", "\u250c", "\\@ulcorner", !0),
3275 $("math", K, "close", "\u2510", "\\@urcorner", !0),
3276 $("math", K, "open", "\u2514", "\\@llcorner", !0),
3277 $("math", K, "close", "\u2518", "\\@lrcorner", !0),
3278 $("math", K, et, "\u2266", "\\leqq", !0),
3279 $("math", K, et, "\u2a7d", "\\leqslant", !0),
3280 $("math", K, et, "\u2a95", "\\eqslantless", !0),
3281 $("math", K, et, "\u2272", "\\lesssim", !0),
3282 $("math", K, et, "\u2a85", "\\lessapprox", !0),
3283 $("math", K, et, "\u224a", "\\approxeq", !0),
3284 $("math", K, J, "\u22d6", "\\lessdot"),
3285 $("math", K, et, "\u22d8", "\\lll", !0),
3286 $("math", K, et, "\u2276", "\\lessgtr", !0),
3287 $("math", K, et, "\u22da", "\\lesseqgtr", !0),
3288 $("math", K, et, "\u2a8b", "\\lesseqqgtr", !0),
3289 $("math", K, et, "\u2251", "\\doteqdot"),
3290 $("math", K, et, "\u2253", "\\risingdotseq", !0),
3291 $("math", K, et, "\u2252", "\\fallingdotseq", !0),
3292 $("math", K, et, "\u223d", "\\backsim", !0),
3293 $("math", K, et, "\u22cd", "\\backsimeq", !0),
3294 $("math", K, et, "\u2ac5", "\\subseteqq", !0),
3295 $("math", K, et, "\u22d0", "\\Subset", !0),
3296 $("math", K, et, "\u228f", "\\sqsubset", !0),
3297 $("math", K, et, "\u227c", "\\preccurlyeq", !0),
3298 $("math", K, et, "\u22de", "\\curlyeqprec", !0),
3299 $("math", K, et, "\u227e", "\\precsim", !0),
3300 $("math", K, et, "\u2ab7", "\\precapprox", !0),
3301 $("math", K, et, "\u22b2", "\\vartriangleleft"),
3302 $("math", K, et, "\u22b4", "\\trianglelefteq"),
3303 $("math", K, et, "\u22a8", "\\vDash", !0),
3304 $("math", K, et, "\u22aa", "\\Vvdash", !0),
3305 $("math", K, et, "\u2323", "\\smallsmile"),
3306 $("math", K, et, "\u2322", "\\smallfrown"),
3307 $("math", K, et, "\u224f", "\\bumpeq", !0),
3308 $("math", K, et, "\u224e", "\\Bumpeq", !0),
3309 $("math", K, et, "\u2267", "\\geqq", !0),
3310 $("math", K, et, "\u2a7e", "\\geqslant", !0),
3311 $("math", K, et, "\u2a96", "\\eqslantgtr", !0),
3312 $("math", K, et, "\u2273", "\\gtrsim", !0),
3313 $("math", K, et, "\u2a86", "\\gtrapprox", !0),
3314 $("math", K, J, "\u22d7", "\\gtrdot"),
3315 $("math", K, et, "\u22d9", "\\ggg", !0),
3316 $("math", K, et, "\u2277", "\\gtrless", !0),
3317 $("math", K, et, "\u22db", "\\gtreqless", !0),
3318 $("math", K, et, "\u2a8c", "\\gtreqqless", !0),
3319 $("math", K, et, "\u2256", "\\eqcirc", !0),
3320 $("math", K, et, "\u2257", "\\circeq", !0),
3321 $("math", K, et, "\u225c", "\\triangleq", !0),
3322 $("math", K, et, "\u223c", "\\thicksim"),
3323 $("math", K, et, "\u2248", "\\thickapprox"),
3324 $("math", K, et, "\u2ac6", "\\supseteqq", !0),
3325 $("math", K, et, "\u22d1", "\\Supset", !0),
3326 $("math", K, et, "\u2290", "\\sqsupset", !0),
3327 $("math", K, et, "\u227d", "\\succcurlyeq", !0),
3328 $("math", K, et, "\u22df", "\\curlyeqsucc", !0),
3329 $("math", K, et, "\u227f", "\\succsim", !0),
3330 $("math", K, et, "\u2ab8", "\\succapprox", !0),
3331 $("math", K, et, "\u22b3", "\\vartriangleright"),
3332 $("math", K, et, "\u22b5", "\\trianglerighteq"),
3333 $("math", K, et, "\u22a9", "\\Vdash", !0),
3334 $("math", K, et, "\u2223", "\\shortmid"),
3335 $("math", K, et, "\u2225", "\\shortparallel"),
3336 $("math", K, et, "\u226c", "\\between", !0),
3337 $("math", K, et, "\u22d4", "\\pitchfork", !0),
3338 $("math", K, et, "\u221d", "\\varpropto"),
3339 $("math", K, et, "\u25c0", "\\blacktriangleleft"),
3340 $("math", K, et, "\u2234", "\\therefore", !0),
3341 $("math", K, et, "\u220d", "\\backepsilon"),
3342 $("math", K, et, "\u25b6", "\\blacktriangleright"),
3343 $("math", K, et, "\u2235", "\\because", !0),
3344 $("math", K, et, "\u22d8", "\\llless"),
3345 $("math", K, et, "\u22d9", "\\gggtr"),
3346 $("math", K, J, "\u22b2", "\\lhd"),
3347 $("math", K, J, "\u22b3", "\\rhd"),
3348 $("math", K, et, "\u2242", "\\eqsim", !0),
3349 $("math", Z, et, "\u22c8", "\\Join"),
3350 $("math", K, et, "\u2251", "\\Doteq", !0),
3351 $("math", K, J, "\u2214", "\\dotplus", !0),
3352 $("math", K, J, "\u2216", "\\smallsetminus"),
3353 $("math", K, J, "\u22d2", "\\Cap", !0),
3354 $("math", K, J, "\u22d3", "\\Cup", !0),
3355 $("math", K, J, "\u2a5e", "\\doublebarwedge", !0),
3356 $("math", K, J, "\u229f", "\\boxminus", !0),
3357 $("math", K, J, "\u229e", "\\boxplus", !0),
3358 $("math", K, J, "\u22c7", "\\divideontimes", !0),
3359 $("math", K, J, "\u22c9", "\\ltimes", !0),
3360 $("math", K, J, "\u22ca", "\\rtimes", !0),
3361 $("math", K, J, "\u22cb", "\\leftthreetimes", !0),
3362 $("math", K, J, "\u22cc", "\\rightthreetimes", !0),
3363 $("math", K, J, "\u22cf", "\\curlywedge", !0),
3364 $("math", K, J, "\u22ce", "\\curlyvee", !0),
3365 $("math", K, J, "\u229d", "\\circleddash", !0),
3366 $("math", K, J, "\u229b", "\\circledast", !0),
3367 $("math", K, J, "\u22c5", "\\centerdot"),
3368 $("math", K, J, "\u22ba", "\\intercal", !0),
3369 $("math", K, J, "\u22d2", "\\doublecap"),
3370 $("math", K, J, "\u22d3", "\\doublecup"),
3371 $("math", K, J, "\u22a0", "\\boxtimes", !0),
3372 $("math", K, et, "\u21e2", "\\dashrightarrow", !0),
3373 $("math", K, et, "\u21e0", "\\dashleftarrow", !0),
3374 $("math", K, et, "\u21c7", "\\leftleftarrows", !0),
3375 $("math", K, et, "\u21c6", "\\leftrightarrows", !0),
3376 $("math", K, et, "\u21da", "\\Lleftarrow", !0),
3377 $("math", K, et, "\u219e", "\\twoheadleftarrow", !0),
3378 $("math", K, et, "\u21a2", "\\leftarrowtail", !0),
3379 $("math", K, et, "\u21ab", "\\looparrowleft", !0),
3380 $("math", K, et, "\u21cb", "\\leftrightharpoons", !0),
3381 $("math", K, et, "\u21b6", "\\curvearrowleft", !0),
3382 $("math", K, et, "\u21ba", "\\circlearrowleft", !0),
3383 $("math", K, et, "\u21b0", "\\Lsh", !0),
3384 $("math", K, et, "\u21c8", "\\upuparrows", !0),
3385 $("math", K, et, "\u21bf", "\\upharpoonleft", !0),
3386 $("math", K, et, "\u21c3", "\\downharpoonleft", !0),
3387 $("math", K, et, "\u22b8", "\\multimap", !0),
3388 $("math", K, et, "\u21ad", "\\leftrightsquigarrow", !0),
3389 $("math", K, et, "\u21c9", "\\rightrightarrows", !0),
3390 $("math", K, et, "\u21c4", "\\rightleftarrows", !0),
3391 $("math", K, et, "\u21a0", "\\twoheadrightarrow", !0),
3392 $("math", K, et, "\u21a3", "\\rightarrowtail", !0),
3393 $("math", K, et, "\u21ac", "\\looparrowright", !0),
3394 $("math", K, et, "\u21b7", "\\curvearrowright", !0),
3395 $("math", K, et, "\u21bb", "\\circlearrowright", !0),
3396 $("math", K, et, "\u21b1", "\\Rsh", !0),
3397 $("math", K, et, "\u21ca", "\\downdownarrows", !0),
3398 $("math", K, et, "\u21be", "\\upharpoonright", !0),
3399 $("math", K, et, "\u21c2", "\\downharpoonright", !0),
3400 $("math", K, et, "\u21dd", "\\rightsquigarrow", !0),
3401 $("math", K, et, "\u21dd", "\\leadsto"),
3402 $("math", K, et, "\u21db", "\\Rrightarrow", !0),
3403 $("math", K, et, "\u21be", "\\restriction"),
3404 $("math", Z, "textord", "\u2018", "`"),
3405 $("math", Z, "textord", "$", "\\$"),
3406 $("text", Z, "textord", "$", "\\$"),
3407 $("text", Z, "textord", "$", "\\textdollar"),
3408 $("math", Z, "textord", "%", "\\%"),
3409 $("text", Z, "textord", "%", "\\%"),
3410 $("math", Z, "textord", "_", "\\_"),
3411 $("text", Z, "textord", "_", "\\_"),
3412 $("text", Z, "textord", "_", "\\textunderscore"),
3413 $("math", Z, "textord", "\u2220", "\\angle", !0),
3414 $("math", Z, "textord", "\u221e", "\\infty", !0),
3415 $("math", Z, "textord", "\u2032", "\\prime"),
3416 $("math", Z, "textord", "\u25b3", "\\triangle"),
3417 $("math", Z, "textord", "\u0393", "\\Gamma", !0),
3418 $("math", Z, "textord", "\u0394", "\\Delta", !0),
3419 $("math", Z, "textord", "\u0398", "\\Theta", !0),
3420 $("math", Z, "textord", "\u039b", "\\Lambda", !0),
3421 $("math", Z, "textord", "\u039e", "\\Xi", !0),
3422 $("math", Z, "textord", "\u03a0", "\\Pi", !0),
3423 $("math", Z, "textord", "\u03a3", "\\Sigma", !0),
3424 $("math", Z, "textord", "\u03a5", "\\Upsilon", !0),
3425 $("math", Z, "textord", "\u03a6", "\\Phi", !0),
3426 $("math", Z, "textord", "\u03a8", "\\Psi", !0),
3427 $("math", Z, "textord", "\u03a9", "\\Omega", !0),
3428 $("math", Z, "textord", "A", "\u0391"),
3429 $("math", Z, "textord", "B", "\u0392"),
3430 $("math", Z, "textord", "E", "\u0395"),
3431 $("math", Z, "textord", "Z", "\u0396"),
3432 $("math", Z, "textord", "H", "\u0397"),
3433 $("math", Z, "textord", "I", "\u0399"),
3434 $("math", Z, "textord", "K", "\u039a"),
3435 $("math", Z, "textord", "M", "\u039c"),
3436 $("math", Z, "textord", "N", "\u039d"),
3437 $("math", Z, "textord", "O", "\u039f"),
3438 $("math", Z, "textord", "P", "\u03a1"),
3439 $("math", Z, "textord", "T", "\u03a4"),
3440 $("math", Z, "textord", "X", "\u03a7"),
3441 $("math", Z, "textord", "\xac", "\\neg", !0),
3442 $("math", Z, "textord", "\xac", "\\lnot"),
3443 $("math", Z, "textord", "\u22a4", "\\top"),
3444 $("math", Z, "textord", "\u22a5", "\\bot"),
3445 $("math", Z, "textord", "\u2205", "\\emptyset"),
3446 $("math", K, "textord", "\u2205", "\\varnothing"),
3447 $("math", Z, Q, "\u03b1", "\\alpha", !0),
3448 $("math", Z, Q, "\u03b2", "\\beta", !0),
3449 $("math", Z, Q, "\u03b3", "\\gamma", !0),
3450 $("math", Z, Q, "\u03b4", "\\delta", !0),
3451 $("math", Z, Q, "\u03f5", "\\epsilon", !0),
3452 $("math", Z, Q, "\u03b6", "\\zeta", !0),
3453 $("math", Z, Q, "\u03b7", "\\eta", !0),
3454 $("math", Z, Q, "\u03b8", "\\theta", !0),
3455 $("math", Z, Q, "\u03b9", "\\iota", !0),
3456 $("math", Z, Q, "\u03ba", "\\kappa", !0),
3457 $("math", Z, Q, "\u03bb", "\\lambda", !0),
3458 $("math", Z, Q, "\u03bc", "\\mu", !0),
3459 $("math", Z, Q, "\u03bd", "\\nu", !0),
3460 $("math", Z, Q, "\u03be", "\\xi", !0),
3461 $("math", Z, Q, "\u03bf", "\\omicron", !0),
3462 $("math", Z, Q, "\u03c0", "\\pi", !0),
3463 $("math", Z, Q, "\u03c1", "\\rho", !0),
3464 $("math", Z, Q, "\u03c3", "\\sigma", !0),
3465 $("math", Z, Q, "\u03c4", "\\tau", !0),
3466 $("math", Z, Q, "\u03c5", "\\upsilon", !0),
3467 $("math", Z, Q, "\u03d5", "\\phi", !0),
3468 $("math", Z, Q, "\u03c7", "\\chi", !0),
3469 $("math", Z, Q, "\u03c8", "\\psi", !0),
3470 $("math", Z, Q, "\u03c9", "\\omega", !0),
3471 $("math", Z, Q, "\u03b5", "\\varepsilon", !0),
3472 $("math", Z, Q, "\u03d1", "\\vartheta", !0),
3473 $("math", Z, Q, "\u03d6", "\\varpi", !0),
3474 $("math", Z, Q, "\u03f1", "\\varrho", !0),
3475 $("math", Z, Q, "\u03c2", "\\varsigma", !0),
3476 $("math", Z, Q, "\u03c6", "\\varphi", !0),
3477 $("math", Z, J, "\u2217", "*"),
3478 $("math", Z, J, "+", "+"),
3479 $("math", Z, J, "\u2212", "-"),
3480 $("math", Z, J, "\u22c5", "\\cdot", !0),
3481 $("math", Z, J, "\u2218", "\\circ"),
3482 $("math", Z, J, "\xf7", "\\div", !0),
3483 $("math", Z, J, "\xb1", "\\pm", !0),
3484 $("math", Z, J, "\xd7", "\\times", !0),
3485 $("math", Z, J, "\u2229", "\\cap", !0),
3486 $("math", Z, J, "\u222a", "\\cup", !0),
3487 $("math", Z, J, "\u2216", "\\setminus"),
3488 $("math", Z, J, "\u2227", "\\land"),
3489 $("math", Z, J, "\u2228", "\\lor"),
3490 $("math", Z, J, "\u2227", "\\wedge", !0),
3491 $("math", Z, J, "\u2228", "\\vee", !0),
3492 $("math", Z, "textord", "\u221a", "\\surd"),
3493 $("math", Z, "open", "\u27e8", "\\langle", !0),
3494 $("math", Z, "open", "\u2223", "\\lvert"),
3495 $("math", Z, "open", "\u2225", "\\lVert"),
3496 $("math", Z, "close", "?", "?"),
3497 $("math", Z, "close", "!", "!"),
3498 $("math", Z, "close", "\u27e9", "\\rangle", !0),
3499 $("math", Z, "close", "\u2223", "\\rvert"),
3500 $("math", Z, "close", "\u2225", "\\rVert"),
3501 $("math", Z, et, "=", "="),
3502 $("math", Z, et, ":", ":"),
3503 $("math", Z, et, "\u2248", "\\approx", !0),
3504 $("math", Z, et, "\u2245", "\\cong", !0),
3505 $("math", Z, et, "\u2265", "\\ge"),
3506 $("math", Z, et, "\u2265", "\\geq", !0),
3507 $("math", Z, et, "\u2190", "\\gets"),
3508 $("math", Z, et, ">", "\\gt", !0),
3509 $("math", Z, et, "\u2208", "\\in", !0),
3510 $("math", Z, et, "\ue020", "\\@not"),
3511 $("math", Z, et, "\u2282", "\\subset", !0),
3512 $("math", Z, et, "\u2283", "\\supset", !0),
3513 $("math", Z, et, "\u2286", "\\subseteq", !0),
3514 $("math", Z, et, "\u2287", "\\supseteq", !0),
3515 $("math", K, et, "\u2288", "\\nsubseteq", !0),
3516 $("math", K, et, "\u2289", "\\nsupseteq", !0),
3517 $("math", Z, et, "\u22a8", "\\models"),
3518 $("math", Z, et, "\u2190", "\\leftarrow", !0),
3519 $("math", Z, et, "\u2264", "\\le"),
3520 $("math", Z, et, "\u2264", "\\leq", !0),
3521 $("math", Z, et, "<", "\\lt", !0),
3522 $("math", Z, et, "\u2192", "\\rightarrow", !0),
3523 $("math", Z, et, "\u2192", "\\to"),
3524 $("math", K, et, "\u2271", "\\ngeq", !0),
3525 $("math", K, et, "\u2270", "\\nleq", !0),
3526 $("math", Z, "spacing", "\xa0", "\\ "),
3527 $("math", Z, "spacing", "\xa0", "~"),
3528 $("math", Z, "spacing", "\xa0", "\\space"),
3529 $("math", Z, "spacing", "\xa0", "\\nobreakspace"),
3530 $("text", Z, "spacing", "\xa0", "\\ "),
3531 $("text", Z, "spacing", "\xa0", " "),
3532 $("text", Z, "spacing", "\xa0", "~"),
3533 $("text", Z, "spacing", "\xa0", "\\space"),
3534 $("text", Z, "spacing", "\xa0", "\\nobreakspace"),
3535 $("math", Z, "spacing", null, "\\nobreak"),
3536 $("math", Z, "spacing", null, "\\allowbreak"),
3537 $("math", Z, "punct", ",", ","),
3538 $("math", Z, "punct", ";", ";"),
3539 $("math", K, J, "\u22bc", "\\barwedge", !0),
3540 $("math", K, J, "\u22bb", "\\veebar", !0),
3541 $("math", Z, J, "\u2299", "\\odot", !0),
3542 $("math", Z, J, "\u2295", "\\oplus", !0),
3543 $("math", Z, J, "\u2297", "\\otimes", !0),
3544 $("math", Z, "textord", "\u2202", "\\partial", !0),
3545 $("math", Z, J, "\u2298", "\\oslash", !0),
3546 $("math", K, J, "\u229a", "\\circledcirc", !0),
3547 $("math", K, J, "\u22a1", "\\boxdot", !0),
3548 $("math", Z, J, "\u25b3", "\\bigtriangleup"),
3549 $("math", Z, J, "\u25bd", "\\bigtriangledown"),
3550 $("math", Z, J, "\u2020", "\\dagger"),
3551 $("math", Z, J, "\u22c4", "\\diamond"),
3552 $("math", Z, J, "\u22c6", "\\star"),
3553 $("math", Z, J, "\u25c3", "\\triangleleft"),
3554 $("math", Z, J, "\u25b9", "\\triangleright"),
3555 $("math", Z, "open", "{", "\\{"),
3556 $("text", Z, "textord", "{", "\\{"),
3557 $("text", Z, "textord", "{", "\\textbraceleft"),
3558 $("math", Z, "close", "}", "\\}"),
3559 $("text", Z, "textord", "}", "\\}"),
3560 $("text", Z, "textord", "}", "\\textbraceright"),
3561 $("math", Z, "open", "{", "\\lbrace"),
3562 $("math", Z, "close", "}", "\\rbrace"),
3563 $("math", Z, "open", "[", "\\lbrack", !0),
3564 $("text", Z, "textord", "[", "\\lbrack", !0),
3565 $("math", Z, "close", "]", "\\rbrack", !0),
3566 $("text", Z, "textord", "]", "\\rbrack", !0),
3567 $("math", Z, "open", "(", "\\lparen", !0),
3568 $("math", Z, "close", ")", "\\rparen", !0),
3569 $("text", Z, "textord", "<", "\\textless", !0),
3570 $("text", Z, "textord", ">", "\\textgreater", !0),
3571 $("math", Z, "open", "\u230a", "\\lfloor", !0),
3572 $("math", Z, "close", "\u230b", "\\rfloor", !0),
3573 $("math", Z, "open", "\u2308", "\\lceil", !0),
3574 $("math", Z, "close", "\u2309", "\\rceil", !0),
3575 $("math", Z, "textord", "\\", "\\backslash"),
3576 $("math", Z, "textord", "\u2223", "|"),
3577 $("math", Z, "textord", "\u2223", "\\vert"),
3578 $("text", Z, "textord", "|", "\\textbar", !0),
3579 $("math", Z, "textord", "\u2225", "\\|"),
3580 $("math", Z, "textord", "\u2225", "\\Vert"),
3581 $("text", Z, "textord", "\u2225", "\\textbardbl"),
3582 $("text", Z, "textord", "~", "\\textasciitilde"),
3583 $("text", Z, "textord", "\\", "\\textbackslash"),
3584 $("text", Z, "textord", "^", "\\textasciicircum"),
3585 $("math", Z, et, "\u2191", "\\uparrow", !0),
3586 $("math", Z, et, "\u21d1", "\\Uparrow", !0),
3587 $("math", Z, et, "\u2193", "\\downarrow", !0),
3588 $("math", Z, et, "\u21d3", "\\Downarrow", !0),
3589 $("math", Z, et, "\u2195", "\\updownarrow", !0),
3590 $("math", Z, et, "\u21d5", "\\Updownarrow", !0),
3591 $("math", Z, tt, "\u2210", "\\coprod"),
3592 $("math", Z, tt, "\u22c1", "\\bigvee"),
3593 $("math", Z, tt, "\u22c0", "\\bigwedge"),
3594 $("math", Z, tt, "\u2a04", "\\biguplus"),
3595 $("math", Z, tt, "\u22c2", "\\bigcap"),
3596 $("math", Z, tt, "\u22c3", "\\bigcup"),
3597 $("math", Z, tt, "\u222b", "\\int"),
3598 $("math", Z, tt, "\u222b", "\\intop"),
3599 $("math", Z, tt, "\u222c", "\\iint"),
3600 $("math", Z, tt, "\u222d", "\\iiint"),
3601 $("math", Z, tt, "\u220f", "\\prod"),
3602 $("math", Z, tt, "\u2211", "\\sum"),
3603 $("math", Z, tt, "\u2a02", "\\bigotimes"),
3604 $("math", Z, tt, "\u2a01", "\\bigoplus"),
3605 $("math", Z, tt, "\u2a00", "\\bigodot"),
3606 $("math", Z, tt, "\u222e", "\\oint"),
3607 $("math", Z, tt, "\u2a06", "\\bigsqcup"),
3608 $("math", Z, tt, "\u222b", "\\smallint"),
3609 $("text", Z, "inner", "\u2026", "\\textellipsis"),
3610 $("math", Z, "inner", "\u2026", "\\mathellipsis"),
3611 $("text", Z, "inner", "\u2026", "\\ldots", !0),
3612 $("math", Z, "inner", "\u2026", "\\ldots", !0),
3613 $("math", Z, "inner", "\u22ef", "\\@cdots", !0),
3614 $("math", Z, "inner", "\u22f1", "\\ddots", !0),
3615 $("math", Z, "textord", "\u22ee", "\\varvdots"),
3616 $("math", Z, "accent-token", "\u02ca", "\\acute"),
3617 $("math", Z, "accent-token", "\u02cb", "\\grave"),
3618 $("math", Z, "accent-token", "\xa8", "\\ddot"),
3619 $("math", Z, "accent-token", "~", "\\tilde"),
3620 $("math", Z, "accent-token", "\u02c9", "\\bar"),
3621 $("math", Z, "accent-token", "\u02d8", "\\breve"),
3622 $("math", Z, "accent-token", "\u02c7", "\\check"),
3623 $("math", Z, "accent-token", "^", "\\hat"),
3624 $("math", Z, "accent-token", "\u20d7", "\\vec"),
3625 $("math", Z, "accent-token", "\u02d9", "\\dot"),
3626 $("math", Z, "accent-token", "\u02da", "\\mathring"),
3627 $("math", Z, Q, "\ue131", "\\@imath"),
3628 $("math", Z, Q, "\ue237", "\\@jmath"),
3629 $("math", Z, "textord", "\u0131", "\u0131"),
3630 $("math", Z, "textord", "\u0237", "\u0237"),
3631 $("text", Z, "textord", "\u0131", "\\i", !0),
3632 $("text", Z, "textord", "\u0237", "\\j", !0),
3633 $("text", Z, "textord", "\xdf", "\\ss", !0),
3634 $("text", Z, "textord", "\xe6", "\\ae", !0),
3635 $("text", Z, "textord", "\u0153", "\\oe", !0),
3636 $("text", Z, "textord", "\xf8", "\\o", !0),
3637 $("text", Z, "textord", "\xc6", "\\AE", !0),
3638 $("text", Z, "textord", "\u0152", "\\OE", !0),
3639 $("text", Z, "textord", "\xd8", "\\O", !0),
3640 $("text", Z, "accent-token", "\u02ca", "\\'"),
3641 $("text", Z, "accent-token", "\u02cb", "\\`"),
3642 $("text", Z, "accent-token", "\u02c6", "\\^"),
3643 $("text", Z, "accent-token", "\u02dc", "\\~"),
3644 $("text", Z, "accent-token", "\u02c9", "\\="),
3645 $("text", Z, "accent-token", "\u02d8", "\\u"),
3646 $("text", Z, "accent-token", "\u02d9", "\\."),
3647 $("text", Z, "accent-token", "\u02da", "\\r"),
3648 $("text", Z, "accent-token", "\u02c7", "\\v"),
3649 $("text", Z, "accent-token", "\xa8", '\\"'),
3650 $("text", Z, "accent-token", "\u02dd", "\\H"),
3651 $("text", Z, "accent-token", "\u25ef", "\\textcircled"));
3652 var rt = { "--": !0, "---": !0, "``": !0, "''": !0 };
3653 ($("text", Z, "textord", "\u2013", "--", !0),
3654 $("text", Z, "textord", "\u2013", "\\textendash"),
3655 $("text", Z, "textord", "\u2014", "---", !0),
3656 $("text", Z, "textord", "\u2014", "\\textemdash"),
3657 $("text", Z, "textord", "\u2018", "`", !0),
3658 $("text", Z, "textord", "\u2018", "\\textquoteleft"),
3659 $("text", Z, "textord", "\u2019", "'", !0),
3660 $("text", Z, "textord", "\u2019", "\\textquoteright"),
3661 $("text", Z, "textord", "\u201c", "``", !0),
3662 $("text", Z, "textord", "\u201c", "\\textquotedblleft"),
3663 $("text", Z, "textord", "\u201d", "''", !0),
3664 $("text", Z, "textord", "\u201d", "\\textquotedblright"),
3665 $("math", Z, "textord", "\xb0", "\\degree", !0),
3666 $("text", Z, "textord", "\xb0", "\\degree"),
3667 $("text", Z, "textord", "\xb0", "\\textdegree", !0),
3668 $("math", Z, "textord", "\xa3", "\\pounds"),
3669 $("math", Z, "textord", "\xa3", "\\mathsterling", !0),
3670 $("text", Z, "textord", "\xa3", "\\pounds"),
3671 $("text", Z, "textord", "\xa3", "\\textsterling", !0),
3672 $("math", K, "textord", "\u2720", "\\maltese"),
3673 $("text", K, "textord", "\u2720", "\\maltese"));
3674 for (var at = 0; at < '0123456789/@."'.length; at++) {
3675 var nt = '0123456789/@."'.charAt(at);
3676 $("math", Z, "textord", nt, nt);
3677 }
3678 for (var it = 0; it < '0123456789!@*()-=+";:?/.,'.length; it++) {
3679 var ot = '0123456789!@*()-=+";:?/.,'.charAt(it);
3680 $("text", Z, "textord", ot, ot);
3681 }
3682 for (
3683 var st = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz", lt = 0;
3684 lt < st.length;
3685 lt++
3686 ) {
3687 var ht = st.charAt(lt);
3688 ($("math", Z, Q, ht, ht), $("text", Z, "textord", ht, ht));
3689 }
3690 ($("math", K, "textord", "C", "\u2102"),
3691 $("text", K, "textord", "C", "\u2102"),
3692 $("math", K, "textord", "H", "\u210d"),
3693 $("text", K, "textord", "H", "\u210d"),
3694 $("math", K, "textord", "N", "\u2115"),
3695 $("text", K, "textord", "N", "\u2115"),
3696 $("math", K, "textord", "P", "\u2119"),
3697 $("text", K, "textord", "P", "\u2119"),
3698 $("math", K, "textord", "Q", "\u211a"),
3699 $("text", K, "textord", "Q", "\u211a"),
3700 $("math", K, "textord", "R", "\u211d"),
3701 $("text", K, "textord", "R", "\u211d"),
3702 $("math", K, "textord", "Z", "\u2124"),
3703 $("text", K, "textord", "Z", "\u2124"),
3704 $("math", Z, Q, "h", "\u210e"),
3705 $("text", Z, Q, "h", "\u210e"));
3706 for (var mt = "", ct = 0; ct < st.length; ct++) {
3707 var ut = st.charAt(ct);
3708 ($("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56320 + ct))),
3709 $("text", Z, "textord", ut, mt),
3710 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56372 + ct))),
3711 $("text", Z, "textord", ut, mt),
3712 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56424 + ct))),
3713 $("text", Z, "textord", ut, mt),
3714 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56580 + ct))),
3715 $("text", Z, "textord", ut, mt),
3716 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56736 + ct))),
3717 $("text", Z, "textord", ut, mt),
3718 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56788 + ct))),
3719 $("text", Z, "textord", ut, mt),
3720 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56840 + ct))),
3721 $("text", Z, "textord", ut, mt),
3722 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56944 + ct))),
3723 $("text", Z, "textord", ut, mt),
3724 ct < 26 &&
3725 ($("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56632 + ct))),
3726 $("text", Z, "textord", ut, mt),
3727 $("math", Z, Q, ut, (mt = String.fromCharCode(55349, 56476 + ct))),
3728 $("text", Z, "textord", ut, mt)));
3729 }
3730 ($("math", Z, Q, "k", (mt = String.fromCharCode(55349, 56668))),
3731 $("text", Z, "textord", "k", mt));
3732 for (var pt = 0; pt < 10; pt++) {
3733 var dt = pt.toString();
3734 ($("math", Z, Q, dt, (mt = String.fromCharCode(55349, 57294 + pt))),
3735 $("text", Z, "textord", dt, mt),
3736 $("math", Z, Q, dt, (mt = String.fromCharCode(55349, 57314 + pt))),
3737 $("text", Z, "textord", dt, mt),
3738 $("math", Z, Q, dt, (mt = String.fromCharCode(55349, 57324 + pt))),
3739 $("text", Z, "textord", dt, mt),
3740 $("math", Z, Q, dt, (mt = String.fromCharCode(55349, 57334 + pt))),
3741 $("text", Z, "textord", dt, mt));
3742 }
3743 for (var ft = 0; ft < "\xc7\xd0\xde\xe7\xfe".length; ft++) {
3744 var gt = "\xc7\xd0\xde\xe7\xfe".charAt(ft);
3745 ($("math", Z, Q, gt, gt), $("text", Z, "textord", gt, gt));
3746 }
3747 var xt = [
3748 ["mathbf", "textbf", "Main-Bold"],
3749 ["mathbf", "textbf", "Main-Bold"],
3750 ["mathnormal", "textit", "Math-Italic"],
3751 ["mathnormal", "textit", "Math-Italic"],
3752 ["boldsymbol", "boldsymbol", "Main-BoldItalic"],
3753 ["boldsymbol", "boldsymbol", "Main-BoldItalic"],
3754 ["mathscr", "textscr", "Script-Regular"],
3755 ["", "", ""],
3756 ["", "", ""],
3757 ["", "", ""],
3758 ["mathfrak", "textfrak", "Fraktur-Regular"],
3759 ["mathfrak", "textfrak", "Fraktur-Regular"],
3760 ["mathbb", "textbb", "AMS-Regular"],
3761 ["mathbb", "textbb", "AMS-Regular"],
3762 ["", "", ""],
3763 ["", "", ""],
3764 ["mathsf", "textsf", "SansSerif-Regular"],
3765 ["mathsf", "textsf", "SansSerif-Regular"],
3766 ["mathboldsf", "textboldsf", "SansSerif-Bold"],
3767 ["mathboldsf", "textboldsf", "SansSerif-Bold"],
3768 ["mathitsf", "textitsf", "SansSerif-Italic"],
3769 ["mathitsf", "textitsf", "SansSerif-Italic"],
3770 ["", "", ""],
3771 ["", "", ""],
3772 ["mathtt", "texttt", "Typewriter-Regular"],
3773 ["mathtt", "texttt", "Typewriter-Regular"],
3774 ],
3775 vt = [
3776 ["mathbf", "textbf", "Main-Bold"],
3777 ["", "", ""],
3778 ["mathsf", "textsf", "SansSerif-Regular"],
3779 ["mathboldsf", "textboldsf", "SansSerif-Bold"],
3780 ["mathtt", "texttt", "Typewriter-Regular"],
3781 ],
3782 bt = [
3783 [1, 1, 1],
3784 [2, 1, 1],
3785 [3, 1, 1],
3786 [4, 2, 1],
3787 [5, 2, 1],
3788 [6, 3, 1],
3789 [7, 4, 2],
3790 [8, 6, 3],
3791 [9, 7, 6],
3792 [10, 8, 7],
3793 [11, 10, 9],
3794 ],
3795 yt = [0.5, 0.6, 0.7, 0.8, 0.9, 1, 1.2, 1.44, 1.728, 2.074, 2.488],
3796 wt = function (t, e) {
3797 return e.size < 2 ? t : bt[t - 1][e.size - 1];
3798 },
3799 kt = (function () {
3800 function t(e) {
3801 ((this.style = void 0),
3802 (this.color = void 0),
3803 (this.size = void 0),
3804 (this.textSize = void 0),
3805 (this.phantom = void 0),
3806 (this.font = void 0),
3807 (this.fontFamily = void 0),
3808 (this.fontWeight = void 0),
3809 (this.fontShape = void 0),
3810 (this.sizeMultiplier = void 0),
3811 (this.maxSize = void 0),
3812 (this.minRuleThickness = void 0),
3813 (this._fontMetrics = void 0),
3814 (this.style = e.style),
3815 (this.color = e.color),
3816 (this.size = e.size || t.BASESIZE),
3817 (this.textSize = e.textSize || this.size),
3818 (this.phantom = !!e.phantom),
3819 (this.font = e.font || ""),
3820 (this.fontFamily = e.fontFamily || ""),
3821 (this.fontWeight = e.fontWeight || ""),
3822 (this.fontShape = e.fontShape || ""),
3823 (this.sizeMultiplier = yt[this.size - 1]),
3824 (this.maxSize = e.maxSize),
3825 (this.minRuleThickness = e.minRuleThickness),
3826 (this._fontMetrics = void 0));
3827 }
3828 var e = t.prototype;
3829 return (
3830 (e.extend = function (e) {
3831 var r = {
3832 style: this.style,
3833 size: this.size,
3834 textSize: this.textSize,
3835 color: this.color,
3836 phantom: this.phantom,
3837 font: this.font,
3838 fontFamily: this.fontFamily,
3839 fontWeight: this.fontWeight,
3840 fontShape: this.fontShape,
3841 maxSize: this.maxSize,
3842 minRuleThickness: this.minRuleThickness,
3843 };
3844 for (var a in e) e.hasOwnProperty(a) && (r[a] = e[a]);
3845 return new t(r);
3846 }),
3847 (e.havingStyle = function (t) {
3848 return this.style === t
3849 ? this
3850 : this.extend({ style: t, size: wt(this.textSize, t) });
3851 }),
3852 (e.havingCrampedStyle = function () {
3853 return this.havingStyle(this.style.cramp());
3854 }),
3855 (e.havingSize = function (t) {
3856 return this.size === t && this.textSize === t
3857 ? this
3858 : this.extend({
3859 style: this.style.text(),
3860 size: t,
3861 textSize: t,
3862 sizeMultiplier: yt[t - 1],
3863 });
3864 }),
3865 (e.havingBaseStyle = function (e) {
3866 e = e || this.style.text();
3867 var r = wt(t.BASESIZE, e);
3868 return this.size === r &&
3869 this.textSize === t.BASESIZE &&
3870 this.style === e
3871 ? this
3872 : this.extend({ style: e, size: r });
3873 }),
3874 (e.havingBaseSizing = function () {
3875 var t;
3876 switch (this.style.id) {
3877 case 4:
3878 case 5:
3879 t = 3;
3880 break;
3881 case 6:
3882 case 7:
3883 t = 1;
3884 break;
3885 default:
3886 t = 6;
3887 }
3888 return this.extend({ style: this.style.text(), size: t });
3889 }),
3890 (e.withColor = function (t) {
3891 return this.extend({ color: t });
3892 }),
3893 (e.withPhantom = function () {
3894 return this.extend({ phantom: !0 });
3895 }),
3896 (e.withFont = function (t) {
3897 return this.extend({ font: t });
3898 }),
3899 (e.withTextFontFamily = function (t) {
3900 return this.extend({ fontFamily: t, font: "" });
3901 }),
3902 (e.withTextFontWeight = function (t) {
3903 return this.extend({ fontWeight: t, font: "" });
3904 }),
3905 (e.withTextFontShape = function (t) {
3906 return this.extend({ fontShape: t, font: "" });
3907 }),
3908 (e.sizingClasses = function (t) {
3909 return t.size !== this.size
3910 ? ["sizing", "reset-size" + t.size, "size" + this.size]
3911 : [];
3912 }),
3913 (e.baseSizingClasses = function () {
3914 return this.size !== t.BASESIZE
3915 ? ["sizing", "reset-size" + this.size, "size" + t.BASESIZE]
3916 : [];
3917 }),
3918 (e.fontMetrics = function () {
3919 return (
3920 this._fontMetrics ||
3921 (this._fontMetrics = (function (t) {
3922 var e;
3923 if (!Y[(e = t >= 5 ? 0 : t >= 3 ? 1 : 2)]) {
3924 var r = (Y[e] = { cssEmPerMu: V.quad[e] / 18 });
3925 for (var a in V) V.hasOwnProperty(a) && (r[a] = V[a][e]);
3926 }
3927 return Y[e];
3928 })(this.size)),
3929 this._fontMetrics
3930 );
3931 }),
3932 (e.getColor = function () {
3933 return this.phantom ? "transparent" : this.color;
3934 }),
3935 t
3936 );
3937 })();
3938 kt.BASESIZE = 6;
3939 var St = kt,
3940 Mt = {
3941 pt: 1,
3942 mm: 7227 / 2540,
3943 cm: 7227 / 254,
3944 in: 72.27,
3945 bp: 1.00375,
3946 pc: 12,
3947 dd: 1238 / 1157,
3948 cc: 14856 / 1157,
3949 nd: 685 / 642,
3950 nc: 1370 / 107,
3951 sp: 1 / 65536,
3952 px: 1.00375,
3953 },
3954 zt = { ex: !0, em: !0, mu: !0 },
3955 At = function (t) {
3956 return (
3957 "string" != typeof t && (t = t.unit),
3958 t in Mt || t in zt || "ex" === t
3959 );
3960 },
3961 Tt = function (t, e) {
3962 var r;
3963 if (t.unit in Mt)
3964 r = Mt[t.unit] / e.fontMetrics().ptPerEm / e.sizeMultiplier;
3965 else if ("mu" === t.unit) r = e.fontMetrics().cssEmPerMu;
3966 else {
3967 var a;
3968 if (
3969 ((a = e.style.isTight() ? e.havingStyle(e.style.text()) : e),
3970 "ex" === t.unit)
3971 )
3972 r = a.fontMetrics().xHeight;
3973 else {
3974 if ("em" !== t.unit)
3975 throw new o("Invalid unit: '" + t.unit + "'");
3976 r = a.fontMetrics().quad;
3977 }
3978 a !== e && (r *= a.sizeMultiplier / e.sizeMultiplier);
3979 }
3980 return Math.min(t.number * r, e.maxSize);
3981 },
3982 Bt = function (t, e, r) {
3983 return (
3984 j[r][t] && j[r][t].replace && (t = j[r][t].replace),
3985 { value: t, metrics: G(t, e, r) }
3986 );
3987 },
3988 Ct = function (t, e, r, a, n) {
3989 var i,
3990 o = Bt(t, e, r),
3991 s = o.metrics;
3992 if (((t = o.value), s)) {
3993 var l = s.italic;
3994 (("text" === r || (a && "mathit" === a.font)) && (l = 0),
3995 (i = new E(t, s.height, s.depth, l, s.skew, s.width, n)));
3996 } else
3997 ("undefined" != typeof console &&
3998 console.warn(
3999 "No character metrics for '" +
4000 t +
4001 "' in style '" +
4002 e +
4003 "' and mode '" +
4004 r +
4005 "'",
4006 ),
4007 (i = new E(t, 0, 0, 0, 0, 0, n)));
4008 if (a) {
4009 ((i.maxFontSize = a.sizeMultiplier),
4010 a.style.isTight() && i.classes.push("mtight"));
4011 var h = a.getColor();
4012 h && (i.style.color = h);
4013 }
4014 return i;
4015 },
4016 qt = function (t, e) {
4017 if (
4018 T(t.classes) !== T(e.classes) ||
4019 t.skew !== e.skew ||
4020 t.maxFontSize !== e.maxFontSize
4021 )
4022 return !1;
4023 for (var r in t.style)
4024 if (t.style.hasOwnProperty(r) && t.style[r] !== e.style[r])
4025 return !1;
4026 for (var a in e.style)
4027 if (e.style.hasOwnProperty(a) && t.style[a] !== e.style[a])
4028 return !1;
4029 return !0;
4030 },
4031 Nt = function (t) {
4032 for (var e = 0, r = 0, a = 0, n = 0; n < t.children.length; n++) {
4033 var i = t.children[n];
4034 (i.height > e && (e = i.height),
4035 i.depth > r && (r = i.depth),
4036 i.maxFontSize > a && (a = i.maxFontSize));
4037 }
4038 ((t.height = e), (t.depth = r), (t.maxFontSize = a));
4039 },
4040 It = function (t, e, r, a) {
4041 var n = new N(t, e, r, a);
4042 return (Nt(n), n);
4043 },
4044 Ot = function (t, e, r, a) {
4045 return new N(t, e, r, a);
4046 },
4047 Rt = function (t) {
4048 var e = new A(t);
4049 return (Nt(e), e);
4050 },
4051 Et = function (t, e, r) {
4052 var a = "";
4053 switch (t) {
4054 case "amsrm":
4055 a = "AMS";
4056 break;
4057 case "textrm":
4058 a = "Main";
4059 break;
4060 case "textsf":
4061 a = "SansSerif";
4062 break;
4063 case "texttt":
4064 a = "Typewriter";
4065 break;
4066 default:
4067 a = t;
4068 }
4069 return (
4070 a +
4071 "-" +
4072 ("textbf" === e && "textit" === r
4073 ? "BoldItalic"
4074 : "textbf" === e
4075 ? "Bold"
4076 : "textit" === e
4077 ? "Italic"
4078 : "Regular")
4079 );
4080 },
4081 Lt = {
4082 mathbf: { variant: "bold", fontName: "Main-Bold" },
4083 mathrm: { variant: "normal", fontName: "Main-Regular" },
4084 textit: { variant: "italic", fontName: "Main-Italic" },
4085 mathit: { variant: "italic", fontName: "Main-Italic" },
4086 mathnormal: { variant: "italic", fontName: "Math-Italic" },
4087 mathbb: { variant: "double-struck", fontName: "AMS-Regular" },
4088 mathcal: { variant: "script", fontName: "Caligraphic-Regular" },
4089 mathfrak: { variant: "fraktur", fontName: "Fraktur-Regular" },
4090 mathscr: { variant: "script", fontName: "Script-Regular" },
4091 mathsf: { variant: "sans-serif", fontName: "SansSerif-Regular" },
4092 mathtt: { variant: "monospace", fontName: "Typewriter-Regular" },
4093 },
4094 Pt = {
4095 vec: ["vec", 0.471, 0.714],
4096 oiintSize1: ["oiintSize1", 0.957, 0.499],
4097 oiintSize2: ["oiintSize2", 1.472, 0.659],
4098 oiiintSize1: ["oiiintSize1", 1.304, 0.499],
4099 oiiintSize2: ["oiiintSize2", 1.98, 0.659],
4100 leftParenInner: ["leftParenInner", 0.875, 0.3],
4101 rightParenInner: ["rightParenInner", 0.875, 0.3],
4102 },
4103 Dt = {
4104 fontMap: Lt,
4105 makeSymbol: Ct,
4106 mathsym: function (t, e, r, a) {
4107 return (
4108 void 0 === a && (a = []),
4109 "boldsymbol" === r.font && Bt(t, "Main-Bold", e).metrics
4110 ? Ct(t, "Main-Bold", e, r, a.concat(["mathbf"]))
4111 : "\\" === t || "main" === j[e][t].font
4112 ? Ct(t, "Main-Regular", e, r, a)
4113 : Ct(t, "AMS-Regular", e, r, a.concat(["amsrm"]))
4114 );
4115 },
4116 makeSpan: It,
4117 makeSvgSpan: Ot,
4118 makeLineSpan: function (t, e, r) {
4119 var a = It([t], [], e);
4120 return (
4121 (a.height = Math.max(
4122 r || e.fontMetrics().defaultRuleThickness,
4123 e.minRuleThickness,
4124 )),
4125 (a.style.borderBottomWidth = a.height + "em"),
4126 (a.maxFontSize = 1),
4127 a
4128 );
4129 },
4130 makeAnchor: function (t, e, r, a) {
4131 var n = new I(t, e, r, a);
4132 return (Nt(n), n);
4133 },
4134 makeFragment: Rt,
4135 wrapFragment: function (t, e) {
4136 return t instanceof A ? It([], [t], e) : t;
4137 },
4138 makeVList: function (t, e) {
4139 for (
4140 var r = (function (t) {
4141 if ("individualShift" === t.positionType) {
4142 for (
4143 var e = t.children,
4144 r = [e[0]],
4145 a = -e[0].shift - e[0].elem.depth,
4146 n = a,
4147 i = 1;
4148 i < e.length;
4149 i++
4150 ) {
4151 var o = -e[i].shift - n - e[i].elem.depth,
4152 s = o - (e[i - 1].elem.height + e[i - 1].elem.depth);
4153 ((n += o),
4154 r.push({ type: "kern", size: s }),
4155 r.push(e[i]));
4156 }
4157 return { children: r, depth: a };
4158 }
4159 var l;
4160 if ("top" === t.positionType) {
4161 for (
4162 var h = t.positionData, m = 0;
4163 m < t.children.length;
4164 m++
4165 ) {
4166 var c = t.children[m];
4167 h -=
4168 "kern" === c.type
4169 ? c.size
4170 : c.elem.height + c.elem.depth;
4171 }
4172 l = h;
4173 } else if ("bottom" === t.positionType) l = -t.positionData;
4174 else {
4175 var u = t.children[0];
4176 if ("elem" !== u.type)
4177 throw new Error('First child must have type "elem".');
4178 if ("shift" === t.positionType)
4179 l = -u.elem.depth - t.positionData;
4180 else {
4181 if ("firstBaseline" !== t.positionType)
4182 throw new Error(
4183 "Invalid positionType " + t.positionType + ".",
4184 );
4185 l = -u.elem.depth;
4186 }
4187 }
4188 return { children: t.children, depth: l };
4189 })(t),
4190 a = r.children,
4191 n = r.depth,
4192 i = 0,
4193 o = 0;
4194 o < a.length;
4195 o++
4196 ) {
4197 var s = a[o];
4198 if ("elem" === s.type) {
4199 var l = s.elem;
4200 i = Math.max(i, l.maxFontSize, l.height);
4201 }
4202 }
4203 i += 2;
4204 var h = It(["pstrut"], []);
4205 h.style.height = i + "em";
4206 for (var m = [], c = n, u = n, p = n, d = 0; d < a.length; d++) {
4207 var f = a[d];
4208 if ("kern" === f.type) p += f.size;
4209 else {
4210 var g = f.elem,
4211 x = f.wrapperClasses || [],
4212 v = f.wrapperStyle || {},
4213 b = It(x, [h, g], void 0, v);
4214 ((b.style.top = -i - p - g.depth + "em"),
4215 f.marginLeft && (b.style.marginLeft = f.marginLeft),
4216 f.marginRight && (b.style.marginRight = f.marginRight),
4217 m.push(b),
4218 (p += g.height + g.depth));
4219 }
4220 ((c = Math.min(c, p)), (u = Math.max(u, p)));
4221 }
4222 var y,
4223 w = It(["vlist"], m);
4224 if (((w.style.height = u + "em"), c < 0)) {
4225 var k = It([], []),
4226 S = It(["vlist"], [k]);
4227 S.style.height = -c + "em";
4228 var M = It(["vlist-s"], [new E("\u200b")]);
4229 y = [It(["vlist-r"], [w, M]), It(["vlist-r"], [S])];
4230 } else y = [It(["vlist-r"], [w])];
4231 var z = It(["vlist-t"], y);
4232 return (
4233 2 === y.length && z.classes.push("vlist-t2"),
4234 (z.height = u),
4235 (z.depth = -c),
4236 z
4237 );
4238 },
4239 makeOrd: function (t, e, r) {
4240 var a = t.mode,
4241 n = t.text,
4242 i = ["mord"],
4243 s = "math" === a || ("text" === a && e.font),
4244 l = s ? e.font : e.fontFamily;
4245 if (55349 === n.charCodeAt(0)) {
4246 var h = (function (t, e) {
4247 var r =
4248 1024 * (t.charCodeAt(0) - 55296) +
4249 (t.charCodeAt(1) - 56320) +
4250 65536,
4251 a = "math" === e ? 0 : 1;
4252 if (119808 <= r && r < 120484) {
4253 var n = Math.floor((r - 119808) / 26);
4254 return [xt[n][2], xt[n][a]];
4255 }
4256 if (120782 <= r && r <= 120831) {
4257 var i = Math.floor((r - 120782) / 10);
4258 return [vt[i][2], vt[i][a]];
4259 }
4260 if (120485 === r || 120486 === r) return [xt[0][2], xt[0][a]];
4261 if (120486 < r && r < 120782) return ["", ""];
4262 throw new o("Unsupported character: " + t);
4263 })(n, a),
4264 m = h[0],
4265 c = h[1];
4266 return Ct(n, m, a, e, i.concat(c));
4267 }
4268 if (l) {
4269 var u, p;
4270 if ("boldsymbol" === l) {
4271 var d = (function (t, e, r, a, n) {
4272 return "textord" !== n && Bt(t, "Math-BoldItalic", e).metrics
4273 ? { fontName: "Math-BoldItalic", fontClass: "boldsymbol" }
4274 : { fontName: "Main-Bold", fontClass: "mathbf" };
4275 })(n, a, 0, 0, r);
4276 ((u = d.fontName), (p = [d.fontClass]));
4277 } else
4278 s
4279 ? ((u = Lt[l].fontName), (p = [l]))
4280 : ((u = Et(l, e.fontWeight, e.fontShape)),
4281 (p = [l, e.fontWeight, e.fontShape]));
4282 if (Bt(n, u, a).metrics) return Ct(n, u, a, e, i.concat(p));
4283 if (rt.hasOwnProperty(n) && "Typewriter" === u.substr(0, 10)) {
4284 for (var f = [], g = 0; g < n.length; g++)
4285 f.push(Ct(n[g], u, a, e, i.concat(p)));
4286 return Rt(f);
4287 }
4288 }
4289 if ("mathord" === r)
4290 return Ct(n, "Math-Italic", a, e, i.concat(["mathnormal"]));
4291 if ("textord" === r) {
4292 var x = j[a][n] && j[a][n].font;
4293 if ("ams" === x) {
4294 var v = Et("amsrm", e.fontWeight, e.fontShape);
4295 return Ct(
4296 n,
4297 v,
4298 a,
4299 e,
4300 i.concat("amsrm", e.fontWeight, e.fontShape),
4301 );
4302 }
4303 if ("main" !== x && x) {
4304 var b = Et(x, e.fontWeight, e.fontShape);
4305 return Ct(n, b, a, e, i.concat(b, e.fontWeight, e.fontShape));
4306 }
4307 var y = Et("textrm", e.fontWeight, e.fontShape);
4308 return Ct(n, y, a, e, i.concat(e.fontWeight, e.fontShape));
4309 }
4310 throw new Error("unexpected type: " + r + " in makeOrd");
4311 },
4312 makeGlue: function (t, e) {
4313 var r = It(["mspace"], [], e),
4314 a = Tt(t, e);
4315 return ((r.style.marginRight = a + "em"), r);
4316 },
4317 staticSvg: function (t, e) {
4318 var r = Pt[t],
4319 a = r[0],
4320 n = r[1],
4321 i = r[2],
4322 o = new P(a),
4323 s = new L([o], {
4324 width: n + "em",
4325 height: i + "em",
4326 style: "width:" + n + "em",
4327 viewBox: "0 0 " + 1e3 * n + " " + 1e3 * i,
4328 preserveAspectRatio: "xMinYMin",
4329 }),
4330 l = Ot(["overlay"], [s], e);
4331 return (
4332 (l.height = i),
4333 (l.style.height = i + "em"),
4334 (l.style.width = n + "em"),
4335 l
4336 );
4337 },
4338 svgData: Pt,
4339 tryCombineChars: function (t) {
4340 for (var e = 0; e < t.length - 1; e++) {
4341 var r = t[e],
4342 a = t[e + 1];
4343 r instanceof E &&
4344 a instanceof E &&
4345 qt(r, a) &&
4346 ((r.text += a.text),
4347 (r.height = Math.max(r.height, a.height)),
4348 (r.depth = Math.max(r.depth, a.depth)),
4349 (r.italic = a.italic),
4350 t.splice(e + 1, 1),
4351 e--);
4352 }
4353 return t;
4354 },
4355 },
4356 Ht = { number: 3, unit: "mu" },
4357 Ft = { number: 4, unit: "mu" },
4358 Vt = { number: 5, unit: "mu" },
4359 Ut = {
4360 mord: { mop: Ht, mbin: Ft, mrel: Vt, minner: Ht },
4361 mop: { mord: Ht, mop: Ht, mrel: Vt, minner: Ht },
4362 mbin: { mord: Ft, mop: Ft, mopen: Ft, minner: Ft },
4363 mrel: { mord: Vt, mop: Vt, mopen: Vt, minner: Vt },
4364 mopen: {},
4365 mclose: { mop: Ht, mbin: Ft, mrel: Vt, minner: Ht },
4366 mpunct: {
4367 mord: Ht,
4368 mop: Ht,
4369 mrel: Vt,
4370 mopen: Ht,
4371 mclose: Ht,
4372 mpunct: Ht,
4373 minner: Ht,
4374 },
4375 minner: {
4376 mord: Ht,
4377 mop: Ht,
4378 mbin: Ft,
4379 mrel: Vt,
4380 mopen: Ht,
4381 mpunct: Ht,
4382 minner: Ht,
4383 },
4384 },
4385 Gt = {
4386 mord: { mop: Ht },
4387 mop: { mord: Ht, mop: Ht },
4388 mbin: {},
4389 mrel: {},
4390 mopen: {},
4391 mclose: { mop: Ht },
4392 mpunct: {},
4393 minner: { mop: Ht },
4394 },
4395 Yt = {},
4396 Wt = {},
4397 Xt = {};
4398 function _t(t) {
4399 for (
4400 var e = t.type,
4401 r = t.names,
4402 a = t.props,
4403 n = t.handler,
4404 i = t.htmlBuilder,
4405 o = t.mathmlBuilder,
4406 s = {
4407 type: e,
4408 numArgs: a.numArgs,
4409 argTypes: a.argTypes,
4410 greediness: void 0 === a.greediness ? 1 : a.greediness,
4411 allowedInText: !!a.allowedInText,
4412 allowedInMath: void 0 === a.allowedInMath || a.allowedInMath,
4413 numOptionalArgs: a.numOptionalArgs || 0,
4414 infix: !!a.infix,
4415 handler: n,
4416 },
4417 l = 0;
4418 l < r.length;
4419 ++l
4420 )
4421 Yt[r[l]] = s;
4422 e && (i && (Wt[e] = i), o && (Xt[e] = o));
4423 }
4424 function jt(t) {
4425 _t({
4426 type: t.type,
4427 names: [],
4428 props: { numArgs: 0 },
4429 handler: function () {
4430 throw new Error("Should never be called.");
4431 },
4432 htmlBuilder: t.htmlBuilder,
4433 mathmlBuilder: t.mathmlBuilder,
4434 });
4435 }
4436 var $t = function (t) {
4437 return "ordgroup" === t.type ? t.body : [t];
4438 },
4439 Zt = Dt.makeSpan,
4440 Kt = ["leftmost", "mbin", "mopen", "mrel", "mop", "mpunct"],
4441 Jt = ["rightmost", "mrel", "mclose", "mpunct"],
4442 Qt = {
4443 display: w.DISPLAY,
4444 text: w.TEXT,
4445 script: w.SCRIPT,
4446 scriptscript: w.SCRIPTSCRIPT,
4447 },
4448 te = {
4449 mord: "mord",
4450 mop: "mop",
4451 mbin: "mbin",
4452 mrel: "mrel",
4453 mopen: "mopen",
4454 mclose: "mclose",
4455 mpunct: "mpunct",
4456 minner: "minner",
4457 },
4458 ee = function (t, e, r, a) {
4459 void 0 === a && (a = [null, null]);
4460 for (var n = [], i = 0; i < t.length; i++) {
4461 var o = oe(t[i], e);
4462 if (o instanceof A) {
4463 var s = o.children;
4464 n.push.apply(n, s);
4465 } else n.push(o);
4466 }
4467 if (!r) return n;
4468 var l = e;
4469 if (1 === t.length) {
4470 var h = t[0];
4471 "sizing" === h.type
4472 ? (l = e.havingSize(h.size))
4473 : "styling" === h.type && (l = e.havingStyle(Qt[h.style]));
4474 }
4475 var m = Zt([a[0] || "leftmost"], [], e),
4476 u = Zt([a[1] || "rightmost"], [], e),
4477 p = "root" === r;
4478 return (
4479 re(
4480 n,
4481 function (t, e) {
4482 var r = e.classes[0],
4483 a = t.classes[0];
4484 "mbin" === r && c.contains(Jt, a)
4485 ? (e.classes[0] = "mord")
4486 : "mbin" === a &&
4487 c.contains(Kt, r) &&
4488 (t.classes[0] = "mord");
4489 },
4490 { node: m },
4491 u,
4492 p,
4493 ),
4494 re(
4495 n,
4496 function (t, e) {
4497 var r = ne(e),
4498 a = ne(t),
4499 n =
4500 r && a
4501 ? t.hasClass("mtight")
4502 ? Gt[r][a]
4503 : Ut[r][a]
4504 : null;
4505 if (n) return Dt.makeGlue(n, l);
4506 },
4507 { node: m },
4508 u,
4509 p,
4510 ),
4511 n
4512 );
4513 },
4514 re = function t(e, r, a, n, i) {
4515 n && e.push(n);
4516 for (var o = 0; o < e.length; o++) {
4517 var s = e[o],
4518 l = ae(s);
4519 if (l) t(l.children, r, a, null, i);
4520 else {
4521 var h = !s.hasClass("mspace");
4522 if (h) {
4523 var m = r(s, a.node);
4524 m && (a.insertAfter ? a.insertAfter(m) : (e.unshift(m), o++));
4525 }
4526 (h
4527 ? (a.node = s)
4528 : i && s.hasClass("newline") && (a.node = Zt(["leftmost"])),
4529 (a.insertAfter = (function (t) {
4530 return function (r) {
4531 (e.splice(t + 1, 0, r), o++);
4532 };
4533 })(o)));
4534 }
4535 }
4536 n && e.pop();
4537 },
4538 ae = function (t) {
4539 return t instanceof A ||
4540 t instanceof I ||
4541 (t instanceof N && t.hasClass("enclosing"))
4542 ? t
4543 : null;
4544 },
4545 ne = function (t, e) {
4546 return t
4547 ? (e &&
4548 (t = (function t(e, r) {
4549 var a = ae(e);
4550 if (a) {
4551 var n = a.children;
4552 if (n.length) {
4553 if ("right" === r) return t(n[n.length - 1], "right");
4554 if ("left" === r) return t(n[0], "left");
4555 }
4556 }
4557 return e;
4558 })(t, e)),
4559 te[t.classes[0]] || null)
4560 : null;
4561 },
4562 ie = function (t, e) {
4563 var r = ["nulldelimiter"].concat(t.baseSizingClasses());
4564 return Zt(e.concat(r));
4565 },
4566 oe = function (t, e, r) {
4567 if (!t) return Zt();
4568 if (Wt[t.type]) {
4569 var a = Wt[t.type](t, e);
4570 if (r && e.size !== r.size) {
4571 a = Zt(e.sizingClasses(r), [a], e);
4572 var n = e.sizeMultiplier / r.sizeMultiplier;
4573 ((a.height *= n), (a.depth *= n));
4574 }
4575 return a;
4576 }
4577 throw new o("Got group of unknown type: '" + t.type + "'");
4578 };
4579 function se(t, e) {
4580 var r = Zt(["base"], t, e),
4581 a = Zt(["strut"]);
4582 return (
4583 (a.style.height = r.height + r.depth + "em"),
4584 (a.style.verticalAlign = -r.depth + "em"),
4585 r.children.unshift(a),
4586 r
4587 );
4588 }
4589 function le(t, e) {
4590 var r = null;
4591 1 === t.length &&
4592 "tag" === t[0].type &&
4593 ((r = t[0].tag), (t = t[0].body));
4594 for (
4595 var a, n = ee(t, e, "root"), i = [], o = [], s = 0;
4596 s < n.length;
4597 s++
4598 )
4599 if (
4600 (o.push(n[s]),
4601 n[s].hasClass("mbin") ||
4602 n[s].hasClass("mrel") ||
4603 n[s].hasClass("allowbreak"))
4604 ) {
4605 for (
4606 var l = !1;
4607 s < n.length - 1 &&
4608 n[s + 1].hasClass("mspace") &&
4609 !n[s + 1].hasClass("newline");
4610 )
4611 (s++, o.push(n[s]), n[s].hasClass("nobreak") && (l = !0));
4612 l || (i.push(se(o, e)), (o = []));
4613 } else
4614 n[s].hasClass("newline") &&
4615 (o.pop(),
4616 o.length > 0 && (i.push(se(o, e)), (o = [])),
4617 i.push(n[s]));
4618 (o.length > 0 && i.push(se(o, e)),
4619 r && (((a = se(ee(r, e, !0))).classes = ["tag"]), i.push(a)));
4620 var h = Zt(["katex-html"], i);
4621 if ((h.setAttribute("aria-hidden", "true"), a)) {
4622 var m = a.children[0];
4623 ((m.style.height = h.height + h.depth + "em"),
4624 (m.style.verticalAlign = -h.depth + "em"));
4625 }
4626 return h;
4627 }
4628 function he(t) {
4629 return new A(t);
4630 }
4631 var me = (function () {
4632 function t(t, e) {
4633 ((this.type = void 0),
4634 (this.attributes = void 0),
4635 (this.children = void 0),
4636 (this.type = t),
4637 (this.attributes = {}),
4638 (this.children = e || []));
4639 }
4640 var e = t.prototype;
4641 return (
4642 (e.setAttribute = function (t, e) {
4643 this.attributes[t] = e;
4644 }),
4645 (e.getAttribute = function (t) {
4646 return this.attributes[t];
4647 }),
4648 (e.toNode = function () {
4649 var t = document.createElementNS(
4650 "http://www.w3.org/1998/Math/MathML",
4651 this.type,
4652 );
4653 for (var e in this.attributes)
4654 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
4655 t.setAttribute(e, this.attributes[e]);
4656 for (var r = 0; r < this.children.length; r++)
4657 t.appendChild(this.children[r].toNode());
4658 return t;
4659 }),
4660 (e.toMarkup = function () {
4661 var t = "<" + this.type;
4662 for (var e in this.attributes)
4663 Object.prototype.hasOwnProperty.call(this.attributes, e) &&
4664 ((t += " " + e + '="'),
4665 (t += c.escape(this.attributes[e])),
4666 (t += '"'));
4667 t += ">";
4668 for (var r = 0; r < this.children.length; r++)
4669 t += this.children[r].toMarkup();
4670 return (t += "</" + this.type + ">");
4671 }),
4672 (e.toText = function () {
4673 return this.children
4674 .map(function (t) {
4675 return t.toText();
4676 })
4677 .join("");
4678 }),
4679 t
4680 );
4681 })(),
4682 ce = (function () {
4683 function t(t) {
4684 ((this.text = void 0), (this.text = t));
4685 }
4686 var e = t.prototype;
4687 return (
4688 (e.toNode = function () {
4689 return document.createTextNode(this.text);
4690 }),
4691 (e.toMarkup = function () {
4692 return c.escape(this.toText());
4693 }),
4694 (e.toText = function () {
4695 return this.text;
4696 }),
4697 t
4698 );
4699 })(),
4700 ue = {
4701 MathNode: me,
4702 TextNode: ce,
4703 SpaceNode: (function () {
4704 function t(t) {
4705 ((this.width = void 0),
4706 (this.character = void 0),
4707 (this.width = t),
4708 (this.character =
4709 t >= 0.05555 && t <= 0.05556
4710 ? "\u200a"
4711 : t >= 0.1666 && t <= 0.1667
4712 ? "\u2009"
4713 : t >= 0.2222 && t <= 0.2223
4714 ? "\u2005"
4715 : t >= 0.2777 && t <= 0.2778
4716 ? "\u2005\u200a"
4717 : t >= -0.05556 && t <= -0.05555
4718 ? "\u200a\u2063"
4719 : t >= -0.1667 && t <= -0.1666
4720 ? "\u2009\u2063"
4721 : t >= -0.2223 && t <= -0.2222
4722 ? "\u205f\u2063"
4723 : t >= -0.2778 && t <= -0.2777
4724 ? "\u2005\u2063"
4725 : null));
4726 }
4727 var e = t.prototype;
4728 return (
4729 (e.toNode = function () {
4730 if (this.character)
4731 return document.createTextNode(this.character);
4732 var t = document.createElementNS(
4733 "http://www.w3.org/1998/Math/MathML",
4734 "mspace",
4735 );
4736 return (t.setAttribute("width", this.width + "em"), t);
4737 }),
4738 (e.toMarkup = function () {
4739 return this.character
4740 ? "<mtext>" + this.character + "</mtext>"
4741 : '<mspace width="' + this.width + 'em"/>';
4742 }),
4743 (e.toText = function () {
4744 return this.character ? this.character : " ";
4745 }),
4746 t
4747 );
4748 })(),
4749 newDocumentFragment: he,
4750 },
4751 pe = function (t, e, r) {
4752 return (
4753 !j[e][t] ||
4754 !j[e][t].replace ||
4755 55349 === t.charCodeAt(0) ||
4756 (rt.hasOwnProperty(t) &&
4757 r &&
4758 ((r.fontFamily && "tt" === r.fontFamily.substr(4, 2)) ||
4759 (r.font && "tt" === r.font.substr(4, 2)))) ||
4760 (t = j[e][t].replace),
4761 new ue.TextNode(t)
4762 );
4763 },
4764 de = function (t) {
4765 return 1 === t.length ? t[0] : new ue.MathNode("mrow", t);
4766 },
4767 fe = function (t, e) {
4768 if ("texttt" === e.fontFamily) return "monospace";
4769 if ("textsf" === e.fontFamily)
4770 return "textit" === e.fontShape && "textbf" === e.fontWeight
4771 ? "sans-serif-bold-italic"
4772 : "textit" === e.fontShape
4773 ? "sans-serif-italic"
4774 : "textbf" === e.fontWeight
4775 ? "bold-sans-serif"
4776 : "sans-serif";
4777 if ("textit" === e.fontShape && "textbf" === e.fontWeight)
4778 return "bold-italic";
4779 if ("textit" === e.fontShape) return "italic";
4780 if ("textbf" === e.fontWeight) return "bold";
4781 var r = e.font;
4782 if (!r || "mathnormal" === r) return null;
4783 var a = t.mode;
4784 if ("mathit" === r) return "italic";
4785 if ("boldsymbol" === r)
4786 return "textord" === t.type ? "bold" : "bold-italic";
4787 if ("mathbf" === r) return "bold";
4788 if ("mathbb" === r) return "double-struck";
4789 if ("mathfrak" === r) return "fraktur";
4790 if ("mathscr" === r || "mathcal" === r) return "script";
4791 if ("mathsf" === r) return "sans-serif";
4792 if ("mathtt" === r) return "monospace";
4793 var n = t.text;
4794 return c.contains(["\\imath", "\\jmath"], n)
4795 ? null
4796 : (j[a][n] && j[a][n].replace && (n = j[a][n].replace),
4797 G(n, Dt.fontMap[r].fontName, a) ? Dt.fontMap[r].variant : null);
4798 },
4799 ge = function (t, e, r) {
4800 if (1 === t.length) {
4801 var a = ve(t[0], e);
4802 return (
4803 r &&
4804 a instanceof me &&
4805 "mo" === a.type &&
4806 (a.setAttribute("lspace", "0em"),
4807 a.setAttribute("rspace", "0em")),
4808 [a]
4809 );
4810 }
4811 for (var n, i = [], o = 0; o < t.length; o++) {
4812 var s = ve(t[o], e);
4813 if (s instanceof me && n instanceof me) {
4814 if (
4815 "mtext" === s.type &&
4816 "mtext" === n.type &&
4817 s.getAttribute("mathvariant") === n.getAttribute("mathvariant")
4818 ) {
4819 var l;
4820 (l = n.children).push.apply(l, s.children);
4821 continue;
4822 }
4823 if ("mn" === s.type && "mn" === n.type) {
4824 var h;
4825 (h = n.children).push.apply(h, s.children);
4826 continue;
4827 }
4828 if (
4829 "mi" === s.type &&
4830 1 === s.children.length &&
4831 "mn" === n.type
4832 ) {
4833 var m = s.children[0];
4834 if (m instanceof ce && "." === m.text) {
4835 var c;
4836 (c = n.children).push.apply(c, s.children);
4837 continue;
4838 }
4839 } else if ("mi" === n.type && 1 === n.children.length) {
4840 var u = n.children[0];
4841 if (
4842 u instanceof ce &&
4843 "\u0338" === u.text &&
4844 ("mo" === s.type || "mi" === s.type || "mn" === s.type)
4845 ) {
4846 var p = s.children[0];
4847 p instanceof ce &&
4848 p.text.length > 0 &&
4849 ((p.text = p.text.slice(0, 1) + "\u0338" + p.text.slice(1)),
4850 i.pop());
4851 }
4852 }
4853 }
4854 (i.push(s), (n = s));
4855 }
4856 return i;
4857 },
4858 xe = function (t, e, r) {
4859 return de(ge(t, e, r));
4860 },
4861 ve = function (t, e) {
4862 if (!t) return new ue.MathNode("mrow");
4863 if (Xt[t.type]) return Xt[t.type](t, e);
4864 throw new o("Got group of unknown type: '" + t.type + "'");
4865 };
4866 function be(t, e, r, a, n) {
4867 var i,
4868 o = ge(t, r);
4869 i =
4870 1 === o.length &&
4871 o[0] instanceof me &&
4872 c.contains(["mrow", "mtable"], o[0].type)
4873 ? o[0]
4874 : new ue.MathNode("mrow", o);
4875 var s = new ue.MathNode("annotation", [new ue.TextNode(e)]);
4876 s.setAttribute("encoding", "application/x-tex");
4877 var l = new ue.MathNode("semantics", [i, s]),
4878 h = new ue.MathNode("math", [l]);
4879 (h.setAttribute("xmlns", "http://www.w3.org/1998/Math/MathML"),
4880 a && h.setAttribute("display", "block"));
4881 var m = n ? "katex" : "katex-mathml";
4882 return Dt.makeSpan([m], [h]);
4883 }
4884 var ye = function (t) {
4885 return new St({
4886 style: t.displayMode ? w.DISPLAY : w.TEXT,
4887 maxSize: t.maxSize,
4888 minRuleThickness: t.minRuleThickness,
4889 });
4890 },
4891 we = function (t, e) {
4892 if (e.displayMode) {
4893 var r = ["katex-display"];
4894 (e.leqno && r.push("leqno"),
4895 e.fleqn && r.push("fleqn"),
4896 (t = Dt.makeSpan(r, [t])));
4897 }
4898 return t;
4899 },
4900 ke = function (t, e, r) {
4901 var a,
4902 n = ye(r);
4903 if ("mathml" === r.output) return be(t, e, n, r.displayMode, !0);
4904 if ("html" === r.output) {
4905 var i = le(t, n);
4906 a = Dt.makeSpan(["katex"], [i]);
4907 } else {
4908 var o = be(t, e, n, r.displayMode, !1),
4909 s = le(t, n);
4910 a = Dt.makeSpan(["katex"], [o, s]);
4911 }
4912 return we(a, r);
4913 },
4914 Se = {
4915 widehat: "^",
4916 widecheck: "\u02c7",
4917 widetilde: "~",
4918 utilde: "~",
4919 overleftarrow: "\u2190",
4920 underleftarrow: "\u2190",
4921 xleftarrow: "\u2190",
4922 overrightarrow: "\u2192",
4923 underrightarrow: "\u2192",
4924 xrightarrow: "\u2192",
4925 underbrace: "\u23df",
4926 overbrace: "\u23de",
4927 overgroup: "\u23e0",
4928 undergroup: "\u23e1",
4929 overleftrightarrow: "\u2194",
4930 underleftrightarrow: "\u2194",
4931 xleftrightarrow: "\u2194",
4932 Overrightarrow: "\u21d2",
4933 xRightarrow: "\u21d2",
4934 overleftharpoon: "\u21bc",
4935 xleftharpoonup: "\u21bc",
4936 overrightharpoon: "\u21c0",
4937 xrightharpoonup: "\u21c0",
4938 xLeftarrow: "\u21d0",
4939 xLeftrightarrow: "\u21d4",
4940 xhookleftarrow: "\u21a9",
4941 xhookrightarrow: "\u21aa",
4942 xmapsto: "\u21a6",
4943 xrightharpoondown: "\u21c1",
4944 xleftharpoondown: "\u21bd",
4945 xrightleftharpoons: "\u21cc",
4946 xleftrightharpoons: "\u21cb",
4947 xtwoheadleftarrow: "\u219e",
4948 xtwoheadrightarrow: "\u21a0",
4949 xlongequal: "=",
4950 xtofrom: "\u21c4",
4951 xrightleftarrows: "\u21c4",
4952 xrightequilibrium: "\u21cc",
4953 xleftequilibrium: "\u21cb",
4954 },
4955 Me = {
4956 overrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"],
4957 overleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"],
4958 underrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"],
4959 underleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"],
4960 xrightarrow: [["rightarrow"], 1.469, 522, "xMaxYMin"],
4961 xleftarrow: [["leftarrow"], 1.469, 522, "xMinYMin"],
4962 Overrightarrow: [["doublerightarrow"], 0.888, 560, "xMaxYMin"],
4963 xRightarrow: [["doublerightarrow"], 1.526, 560, "xMaxYMin"],
4964 xLeftarrow: [["doubleleftarrow"], 1.526, 560, "xMinYMin"],
4965 overleftharpoon: [["leftharpoon"], 0.888, 522, "xMinYMin"],
4966 xleftharpoonup: [["leftharpoon"], 0.888, 522, "xMinYMin"],
4967 xleftharpoondown: [["leftharpoondown"], 0.888, 522, "xMinYMin"],
4968 overrightharpoon: [["rightharpoon"], 0.888, 522, "xMaxYMin"],
4969 xrightharpoonup: [["rightharpoon"], 0.888, 522, "xMaxYMin"],
4970 xrightharpoondown: [["rightharpoondown"], 0.888, 522, "xMaxYMin"],
4971 xlongequal: [["longequal"], 0.888, 334, "xMinYMin"],
4972 xtwoheadleftarrow: [["twoheadleftarrow"], 0.888, 334, "xMinYMin"],
4973 xtwoheadrightarrow: [["twoheadrightarrow"], 0.888, 334, "xMaxYMin"],
4974 overleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522],
4975 overbrace: [["leftbrace", "midbrace", "rightbrace"], 1.6, 548],
4976 underbrace: [
4977 ["leftbraceunder", "midbraceunder", "rightbraceunder"],
4978 1.6,
4979 548,
4980 ],
4981 underleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522],
4982 xleftrightarrow: [["leftarrow", "rightarrow"], 1.75, 522],
4983 xLeftrightarrow: [["doubleleftarrow", "doublerightarrow"], 1.75, 560],
4984 xrightleftharpoons: [
4985 ["leftharpoondownplus", "rightharpoonplus"],
4986 1.75,
4987 716,
4988 ],
4989 xleftrightharpoons: [
4990 ["leftharpoonplus", "rightharpoondownplus"],
4991 1.75,
4992 716,
4993 ],
4994 xhookleftarrow: [["leftarrow", "righthook"], 1.08, 522],
4995 xhookrightarrow: [["lefthook", "rightarrow"], 1.08, 522],
4996 overlinesegment: [
4997 ["leftlinesegment", "rightlinesegment"],
4998 0.888,
4999 522,
5000 ],
5001 underlinesegment: [
5002 ["leftlinesegment", "rightlinesegment"],
5003 0.888,
5004 522,
5005 ],
5006 overgroup: [["leftgroup", "rightgroup"], 0.888, 342],
5007 undergroup: [["leftgroupunder", "rightgroupunder"], 0.888, 342],
5008 xmapsto: [["leftmapsto", "rightarrow"], 1.5, 522],
5009 xtofrom: [["leftToFrom", "rightToFrom"], 1.75, 528],
5010 xrightleftarrows: [
5011 ["baraboveleftarrow", "rightarrowabovebar"],
5012 1.75,
5013 901,
5014 ],
5015 xrightequilibrium: [
5016 ["baraboveshortleftharpoon", "rightharpoonaboveshortbar"],
5017 1.75,
5018 716,
5019 ],
5020 xleftequilibrium: [
5021 ["shortbaraboveleftharpoon", "shortrightharpoonabovebar"],
5022 1.75,
5023 716,
5024 ],
5025 },
5026 ze = function (t) {
5027 return "ordgroup" === t.type ? t.body.length : 1;
5028 },
5029 Ae = function (t, e, r, a) {
5030 var n,
5031 i = t.height + t.depth + 2 * r;
5032 if (/fbox|color/.test(e)) {
5033 if (((n = Dt.makeSpan(["stretchy", e], [], a)), "fbox" === e)) {
5034 var o = a.color && a.getColor();
5035 o && (n.style.borderColor = o);
5036 }
5037 } else {
5038 var s = [];
5039 (/^[bx]cancel$/.test(e) &&
5040 s.push(
5041 new D({
5042 x1: "0",
5043 y1: "0",
5044 x2: "100%",
5045 y2: "100%",
5046 "stroke-width": "0.046em",
5047 }),
5048 ),
5049 /^x?cancel$/.test(e) &&
5050 s.push(
5051 new D({
5052 x1: "0",
5053 y1: "100%",
5054 x2: "100%",
5055 y2: "0",
5056 "stroke-width": "0.046em",
5057 }),
5058 ));
5059 var l = new L(s, { width: "100%", height: i + "em" });
5060 n = Dt.makeSvgSpan([], [l], a);
5061 }
5062 return ((n.height = i), (n.style.height = i + "em"), n);
5063 },
5064 Te = function (t) {
5065 var e = new ue.MathNode("mo", [new ue.TextNode(Se[t.substr(1)])]);
5066 return (e.setAttribute("stretchy", "true"), e);
5067 },
5068 Be = function (t, e) {
5069 var r = (function () {
5070 var r = 4e5,
5071 a = t.label.substr(1);
5072 if (
5073 c.contains(["widehat", "widecheck", "widetilde", "utilde"], a)
5074 ) {
5075 var n,
5076 i,
5077 o,
5078 s = ze(t.base);
5079 if (s > 5)
5080 "widehat" === a || "widecheck" === a
5081 ? ((n = 420), (r = 2364), (o = 0.42), (i = a + "4"))
5082 : ((n = 312), (r = 2340), (o = 0.34), (i = "tilde4"));
5083 else {
5084 var l = [1, 1, 2, 2, 3, 3][s];
5085 "widehat" === a || "widecheck" === a
5086 ? ((r = [0, 1062, 2364, 2364, 2364][l]),
5087 (n = [0, 239, 300, 360, 420][l]),
5088 (o = [0, 0.24, 0.3, 0.3, 0.36, 0.42][l]),
5089 (i = a + l))
5090 : ((r = [0, 600, 1033, 2339, 2340][l]),
5091 (n = [0, 260, 286, 306, 312][l]),
5092 (o = [0, 0.26, 0.286, 0.3, 0.306, 0.34][l]),
5093 (i = "tilde" + l));
5094 }
5095 var h = new P(i),
5096 m = new L([h], {
5097 width: "100%",
5098 height: o + "em",
5099 viewBox: "0 0 " + r + " " + n,
5100 preserveAspectRatio: "none",
5101 });
5102 return {
5103 span: Dt.makeSvgSpan([], [m], e),
5104 minWidth: 0,
5105 height: o,
5106 };
5107 }
5108 var u,
5109 p,
5110 d = [],
5111 f = Me[a],
5112 g = f[0],
5113 x = f[1],
5114 v = f[2],
5115 b = v / 1e3,
5116 y = g.length;
5117 if (1 === y) ((u = ["hide-tail"]), (p = [f[3]]));
5118 else if (2 === y)
5119 ((u = ["halfarrow-left", "halfarrow-right"]),
5120 (p = ["xMinYMin", "xMaxYMin"]));
5121 else {
5122 if (3 !== y)
5123 throw new Error(
5124 "Correct katexImagesData or update code here to support\n " +
5125 y +
5126 " children.",
5127 );
5128 ((u = ["brace-left", "brace-center", "brace-right"]),
5129 (p = ["xMinYMin", "xMidYMin", "xMaxYMin"]));
5130 }
5131 for (var w = 0; w < y; w++) {
5132 var k = new P(g[w]),
5133 S = new L([k], {
5134 width: "400em",
5135 height: b + "em",
5136 viewBox: "0 0 " + r + " " + v,
5137 preserveAspectRatio: p[w] + " slice",
5138 }),
5139 M = Dt.makeSvgSpan([u[w]], [S], e);
5140 if (1 === y) return { span: M, minWidth: x, height: b };
5141 ((M.style.height = b + "em"), d.push(M));
5142 }
5143 return {
5144 span: Dt.makeSpan(["stretchy"], d, e),
5145 minWidth: x,
5146 height: b,
5147 };
5148 })(),
5149 a = r.span,
5150 n = r.minWidth,
5151 i = r.height;
5152 return (
5153 (a.height = i),
5154 (a.style.height = i + "em"),
5155 n > 0 && (a.style.minWidth = n + "em"),
5156 a
5157 );
5158 };
5159 function Ce(t, e) {
5160 if (!t || t.type !== e)
5161 throw new Error(
5162 "Expected node of type " +
5163 e +
5164 ", but got " +
5165 (t ? "node of type " + t.type : String(t)),
5166 );
5167 return t;
5168 }
5169 function qe(t) {
5170 var e = Ne(t);
5171 if (!e)
5172 throw new Error(
5173 "Expected node of symbol group type, but got " +
5174 (t ? "node of type " + t.type : String(t)),
5175 );
5176 return e;
5177 }
5178 function Ne(t) {
5179 return t && ("atom" === t.type || X.hasOwnProperty(t.type)) ? t : null;
5180 }
5181 var Ie = function (t, e) {
5182 var r, a, n;
5183 t && "supsub" === t.type
5184 ? ((r = (a = Ce(t.base, "accent")).base),
5185 (t.base = r),
5186 (n = (function (t) {
5187 if (t instanceof N) return t;
5188 throw new Error(
5189 "Expected span<HtmlDomNode> but got " + String(t) + ".",
5190 );
5191 })(oe(t, e))),
5192 (t.base = a))
5193 : (r = (a = Ce(t, "accent")).base);
5194 var i = oe(r, e.havingCrampedStyle()),
5195 o = 0;
5196 if (a.isShifty && c.isCharacterBox(r)) {
5197 var s = c.getBaseElem(r);
5198 o = H(oe(s, e.havingCrampedStyle())).skew;
5199 }
5200 var l,
5201 h = Math.min(i.height, e.fontMetrics().xHeight);
5202 if (a.isStretchy)
5203 ((l = Be(a, e)),
5204 (l = Dt.makeVList(
5205 {
5206 positionType: "firstBaseline",
5207 children: [
5208 { type: "elem", elem: i },
5209 {
5210 type: "elem",
5211 elem: l,
5212 wrapperClasses: ["svg-align"],
5213 wrapperStyle:
5214 o > 0
5215 ? {
5216 width: "calc(100% - " + 2 * o + "em)",
5217 marginLeft: 2 * o + "em",
5218 }
5219 : void 0,
5220 },
5221 ],
5222 },
5223 e,
5224 )));
5225 else {
5226 var m, u;
5227 ("\\vec" === a.label
5228 ? ((m = Dt.staticSvg("vec", e)), (u = Dt.svgData.vec[1]))
5229 : (((m = H(
5230 (m = Dt.makeOrd(
5231 { mode: a.mode, text: a.label },
5232 e,
5233 "textord",
5234 )),
5235 )).italic = 0),
5236 (u = m.width)),
5237 (l = Dt.makeSpan(["accent-body"], [m])));
5238 var p = "\\textcircled" === a.label;
5239 p && (l.classes.push("accent-full"), (h = i.height));
5240 var d = o;
5241 (p || (d -= u / 2),
5242 (l.style.left = d + "em"),
5243 "\\textcircled" === a.label && (l.style.top = ".2em"),
5244 (l = Dt.makeVList(
5245 {
5246 positionType: "firstBaseline",
5247 children: [
5248 { type: "elem", elem: i },
5249 { type: "kern", size: -h },
5250 { type: "elem", elem: l },
5251 ],
5252 },
5253 e,
5254 )));
5255 }
5256 var f = Dt.makeSpan(["mord", "accent"], [l], e);
5257 return n
5258 ? ((n.children[0] = f),
5259 (n.height = Math.max(f.height, n.height)),
5260 (n.classes[0] = "mord"),
5261 n)
5262 : f;
5263 },
5264 Oe = function (t, e) {
5265 var r = t.isStretchy
5266 ? Te(t.label)
5267 : new ue.MathNode("mo", [pe(t.label, t.mode)]),
5268 a = new ue.MathNode("mover", [ve(t.base, e), r]);
5269 return (a.setAttribute("accent", "true"), a);
5270 },
5271 Re = new RegExp(
5272 [
5273 "\\acute",
5274 "\\grave",
5275 "\\ddot",
5276 "\\tilde",
5277 "\\bar",
5278 "\\breve",
5279 "\\check",
5280 "\\hat",
5281 "\\vec",
5282 "\\dot",
5283 "\\mathring",
5284 ]
5285 .map(function (t) {
5286 return "\\" + t;
5287 })
5288 .join("|"),
5289 );
5290 (_t({
5291 type: "accent",
5292 names: [
5293 "\\acute",
5294 "\\grave",
5295 "\\ddot",
5296 "\\tilde",
5297 "\\bar",
5298 "\\breve",
5299 "\\check",
5300 "\\hat",
5301 "\\vec",
5302 "\\dot",
5303 "\\mathring",
5304 "\\widecheck",
5305 "\\widehat",
5306 "\\widetilde",
5307 "\\overrightarrow",
5308 "\\overleftarrow",
5309 "\\Overrightarrow",
5310 "\\overleftrightarrow",
5311 "\\overgroup",
5312 "\\overlinesegment",
5313 "\\overleftharpoon",
5314 "\\overrightharpoon",
5315 ],
5316 props: { numArgs: 1 },
5317 handler: function (t, e) {
5318 var r = e[0],
5319 a = !Re.test(t.funcName),
5320 n =
5321 !a ||
5322 "\\widehat" === t.funcName ||
5323 "\\widetilde" === t.funcName ||
5324 "\\widecheck" === t.funcName;
5325 return {
5326 type: "accent",
5327 mode: t.parser.mode,
5328 label: t.funcName,
5329 isStretchy: a,
5330 isShifty: n,
5331 base: r,
5332 };
5333 },
5334 htmlBuilder: Ie,
5335 mathmlBuilder: Oe,
5336 }),
5337 _t({
5338 type: "accent",
5339 names: [
5340 "\\'",
5341 "\\`",
5342 "\\^",
5343 "\\~",
5344 "\\=",
5345 "\\u",
5346 "\\.",
5347 '\\"',
5348 "\\r",
5349 "\\H",
5350 "\\v",
5351 "\\textcircled",
5352 ],
5353 props: { numArgs: 1, allowedInText: !0, allowedInMath: !1 },
5354 handler: function (t, e) {
5355 var r = e[0];
5356 return {
5357 type: "accent",
5358 mode: t.parser.mode,
5359 label: t.funcName,
5360 isStretchy: !1,
5361 isShifty: !0,
5362 base: r,
5363 };
5364 },
5365 htmlBuilder: Ie,
5366 mathmlBuilder: Oe,
5367 }),
5368 _t({
5369 type: "accentUnder",
5370 names: [
5371 "\\underleftarrow",
5372 "\\underrightarrow",
5373 "\\underleftrightarrow",
5374 "\\undergroup",
5375 "\\underlinesegment",
5376 "\\utilde",
5377 ],
5378 props: { numArgs: 1 },
5379 handler: function (t, e) {
5380 var r = t.parser,
5381 a = t.funcName,
5382 n = e[0];
5383 return { type: "accentUnder", mode: r.mode, label: a, base: n };
5384 },
5385 htmlBuilder: function (t, e) {
5386 var r = oe(t.base, e),
5387 a = Be(t, e),
5388 n = "\\utilde" === t.label ? 0.12 : 0,
5389 i = Dt.makeVList(
5390 {
5391 positionType: "top",
5392 positionData: r.height,
5393 children: [
5394 { type: "elem", elem: a, wrapperClasses: ["svg-align"] },
5395 { type: "kern", size: n },
5396 { type: "elem", elem: r },
5397 ],
5398 },
5399 e,
5400 );
5401 return Dt.makeSpan(["mord", "accentunder"], [i], e);
5402 },
5403 mathmlBuilder: function (t, e) {
5404 var r = Te(t.label),
5405 a = new ue.MathNode("munder", [ve(t.base, e), r]);
5406 return (a.setAttribute("accentunder", "true"), a);
5407 },
5408 }));
5409 var Ee = function (t) {
5410 var e = new ue.MathNode("mpadded", t ? [t] : []);
5411 return (
5412 e.setAttribute("width", "+0.6em"),
5413 e.setAttribute("lspace", "0.3em"),
5414 e
5415 );
5416 };
5417 (_t({
5418 type: "xArrow",
5419 names: [
5420 "\\xleftarrow",
5421 "\\xrightarrow",
5422 "\\xLeftarrow",
5423 "\\xRightarrow",
5424 "\\xleftrightarrow",
5425 "\\xLeftrightarrow",
5426 "\\xhookleftarrow",
5427 "\\xhookrightarrow",
5428 "\\xmapsto",
5429 "\\xrightharpoondown",
5430 "\\xrightharpoonup",
5431 "\\xleftharpoondown",
5432 "\\xleftharpoonup",
5433 "\\xrightleftharpoons",
5434 "\\xleftrightharpoons",
5435 "\\xlongequal",
5436 "\\xtwoheadrightarrow",
5437 "\\xtwoheadleftarrow",
5438 "\\xtofrom",
5439 "\\xrightleftarrows",
5440 "\\xrightequilibrium",
5441 "\\xleftequilibrium",
5442 ],
5443 props: { numArgs: 1, numOptionalArgs: 1 },
5444 handler: function (t, e, r) {
5445 var a = t.parser,
5446 n = t.funcName;
5447 return {
5448 type: "xArrow",
5449 mode: a.mode,
5450 label: n,
5451 body: e[0],
5452 below: r[0],
5453 };
5454 },
5455 htmlBuilder: function (t, e) {
5456 var r,
5457 a = e.style,
5458 n = e.havingStyle(a.sup()),
5459 i = Dt.wrapFragment(oe(t.body, n, e), e);
5460 (i.classes.push("x-arrow-pad"),
5461 t.below &&
5462 ((n = e.havingStyle(a.sub())),
5463 (r = Dt.wrapFragment(oe(t.below, n, e), e)).classes.push(
5464 "x-arrow-pad",
5465 )));
5466 var o,
5467 s = Be(t, e),
5468 l = -e.fontMetrics().axisHeight + 0.5 * s.height,
5469 h = -e.fontMetrics().axisHeight - 0.5 * s.height - 0.111;
5470 if (
5471 ((i.depth > 0.25 || "\\xleftequilibrium" === t.label) &&
5472 (h -= i.depth),
5473 r)
5474 ) {
5475 var m =
5476 -e.fontMetrics().axisHeight + r.height + 0.5 * s.height + 0.111;
5477 o = Dt.makeVList(
5478 {
5479 positionType: "individualShift",
5480 children: [
5481 { type: "elem", elem: i, shift: h },
5482 { type: "elem", elem: s, shift: l },
5483 { type: "elem", elem: r, shift: m },
5484 ],
5485 },
5486 e,
5487 );
5488 } else
5489 o = Dt.makeVList(
5490 {
5491 positionType: "individualShift",
5492 children: [
5493 { type: "elem", elem: i, shift: h },
5494 { type: "elem", elem: s, shift: l },
5495 ],
5496 },
5497 e,
5498 );
5499 return (
5500 o.children[0].children[0].children[1].classes.push("svg-align"),
5501 Dt.makeSpan(["mrel", "x-arrow"], [o], e)
5502 );
5503 },
5504 mathmlBuilder: function (t, e) {
5505 var r,
5506 a = Te(t.label);
5507 if (t.body) {
5508 var n = Ee(ve(t.body, e));
5509 if (t.below) {
5510 var i = Ee(ve(t.below, e));
5511 r = new ue.MathNode("munderover", [a, i, n]);
5512 } else r = new ue.MathNode("mover", [a, n]);
5513 } else if (t.below) {
5514 var o = Ee(ve(t.below, e));
5515 r = new ue.MathNode("munder", [a, o]);
5516 } else ((r = Ee()), (r = new ue.MathNode("mover", [a, r])));
5517 return r;
5518 },
5519 }),
5520 _t({
5521 type: "textord",
5522 names: ["\\@char"],
5523 props: { numArgs: 1, allowedInText: !0 },
5524 handler: function (t, e) {
5525 for (
5526 var r = t.parser, a = Ce(e[0], "ordgroup").body, n = "", i = 0;
5527 i < a.length;
5528 i++
5529 ) {
5530 n += Ce(a[i], "textord").text;
5531 }
5532 var s = parseInt(n);
5533 if (isNaN(s)) throw new o("\\@char has non-numeric argument " + n);
5534 return {
5535 type: "textord",
5536 mode: r.mode,
5537 text: String.fromCharCode(s),
5538 };
5539 },
5540 }));
5541 var Le = function (t, e) {
5542 var r = ee(t.body, e.withColor(t.color), !1);
5543 return Dt.makeFragment(r);
5544 },
5545 Pe = function (t, e) {
5546 var r = ge(t.body, e.withColor(t.color)),
5547 a = new ue.MathNode("mstyle", r);
5548 return (a.setAttribute("mathcolor", t.color), a);
5549 };
5550 (_t({
5551 type: "color",
5552 names: ["\\textcolor"],
5553 props: {
5554 numArgs: 2,
5555 allowedInText: !0,
5556 greediness: 3,
5557 argTypes: ["color", "original"],
5558 },
5559 handler: function (t, e) {
5560 var r = t.parser,
5561 a = Ce(e[0], "color-token").color,
5562 n = e[1];
5563 return { type: "color", mode: r.mode, color: a, body: $t(n) };
5564 },
5565 htmlBuilder: Le,
5566 mathmlBuilder: Pe,
5567 }),
5568 _t({
5569 type: "color",
5570 names: ["\\color"],
5571 props: {
5572 numArgs: 1,
5573 allowedInText: !0,
5574 greediness: 3,
5575 argTypes: ["color"],
5576 },
5577 handler: function (t, e) {
5578 var r = t.parser,
5579 a = t.breakOnTokenText,
5580 n = Ce(e[0], "color-token").color;
5581 r.gullet.macros.set("\\current@color", n);
5582 var i = r.parseExpression(!0, a);
5583 return { type: "color", mode: r.mode, color: n, body: i };
5584 },
5585 htmlBuilder: Le,
5586 mathmlBuilder: Pe,
5587 }),
5588 _t({
5589 type: "cr",
5590 names: ["\\cr", "\\newline"],
5591 props: {
5592 numArgs: 0,
5593 numOptionalArgs: 1,
5594 argTypes: ["size"],
5595 allowedInText: !0,
5596 },
5597 handler: function (t, e, r) {
5598 var a = t.parser,
5599 n = t.funcName,
5600 i = r[0],
5601 o = "\\cr" === n,
5602 s = !1;
5603 return (
5604 o ||
5605 (s =
5606 !a.settings.displayMode ||
5607 !a.settings.useStrictBehavior(
5608 "newLineInDisplayMode",
5609 "In LaTeX, \\\\ or \\newline does nothing in display mode",
5610 )),
5611 {
5612 type: "cr",
5613 mode: a.mode,
5614 newLine: s,
5615 newRow: o,
5616 size: i && Ce(i, "size").value,
5617 }
5618 );
5619 },
5620 htmlBuilder: function (t, e) {
5621 if (t.newRow)
5622 throw new o("\\cr valid only within a tabular/array environment");
5623 var r = Dt.makeSpan(["mspace"], [], e);
5624 return (
5625 t.newLine &&
5626 (r.classes.push("newline"),
5627 t.size && (r.style.marginTop = Tt(t.size, e) + "em")),
5628 r
5629 );
5630 },
5631 mathmlBuilder: function (t, e) {
5632 var r = new ue.MathNode("mspace");
5633 return (
5634 t.newLine &&
5635 (r.setAttribute("linebreak", "newline"),
5636 t.size && r.setAttribute("height", Tt(t.size, e) + "em")),
5637 r
5638 );
5639 },
5640 }));
5641 var De = {
5642 "\\global": "\\global",
5643 "\\long": "\\\\globallong",
5644 "\\\\globallong": "\\\\globallong",
5645 "\\def": "\\gdef",
5646 "\\gdef": "\\gdef",
5647 "\\edef": "\\xdef",
5648 "\\xdef": "\\xdef",
5649 "\\let": "\\\\globallet",
5650 "\\futurelet": "\\\\globalfuture",
5651 },
5652 He = function (t) {
5653 var e = t.text;
5654 if (/^(?:[\\{}$&#^_]|EOF)$/.test(e))
5655 throw new o("Expected a control sequence", t);
5656 return e;
5657 },
5658 Fe = function (t, e, r, a) {
5659 var n = t.gullet.macros.get(r.text);
5660 (null == n &&
5661 ((r.noexpand = !0),
5662 (n = {
5663 tokens: [r],
5664 numArgs: 0,
5665 unexpandable: !t.gullet.isExpandable(r.text),
5666 })),
5667 t.gullet.macros.set(e, n, a));
5668 };
5669 (_t({
5670 type: "internal",
5671 names: ["\\global", "\\long", "\\\\globallong"],
5672 props: { numArgs: 0, allowedInText: !0 },
5673 handler: function (t) {
5674 var e = t.parser,
5675 r = t.funcName;
5676 e.consumeSpaces();
5677 var a = e.fetch();
5678 if (De[a.text])
5679 return (
5680 ("\\global" !== r && "\\\\globallong" !== r) ||
5681 (a.text = De[a.text]),
5682 Ce(e.parseFunction(), "internal")
5683 );
5684 throw new o("Invalid token after macro prefix", a);
5685 },
5686 }),
5687 _t({
5688 type: "internal",
5689 names: ["\\def", "\\gdef", "\\edef", "\\xdef"],
5690 props: { numArgs: 0, allowedInText: !0 },
5691 handler: function (t) {
5692 var e = t.parser,
5693 r = t.funcName,
5694 a = e.gullet.consumeArgs(1)[0];
5695 if (1 !== a.length)
5696 throw new o("\\gdef's first argument must be a macro name");
5697 var n = a[0].text,
5698 i = 0;
5699 for (
5700 a = e.gullet.consumeArgs(1)[0];
5701 1 === a.length && "#" === a[0].text;
5702 ) {
5703 if (1 !== (a = e.gullet.consumeArgs(1)[0]).length)
5704 throw new o(
5705 'Invalid argument number length "' + a.length + '"',
5706 );
5707 if (!/^[1-9]$/.test(a[0].text))
5708 throw new o('Invalid argument number "' + a[0].text + '"');
5709 if ((i++, parseInt(a[0].text) !== i))
5710 throw new o('Argument number "' + a[0].text + '" out of order');
5711 a = e.gullet.consumeArgs(1)[0];
5712 }
5713 return (
5714 ("\\edef" !== r && "\\xdef" !== r) ||
5715 (a = e.gullet.expandTokens(a)).reverse(),
5716 e.gullet.macros.set(n, { tokens: a, numArgs: i }, r === De[r]),
5717 { type: "internal", mode: e.mode }
5718 );
5719 },
5720 }),
5721 _t({
5722 type: "internal",
5723 names: ["\\let", "\\\\globallet"],
5724 props: { numArgs: 0, allowedInText: !0 },
5725 handler: function (t) {
5726 var e = t.parser,
5727 r = t.funcName,
5728 a = He(e.gullet.popToken());
5729 e.gullet.consumeSpaces();
5730 var n = (function (t) {
5731 var e = t.gullet.popToken();
5732 return (
5733 "=" === e.text &&
5734 " " === (e = t.gullet.popToken()).text &&
5735 (e = t.gullet.popToken()),
5736 e
5737 );
5738 })(e);
5739 return (
5740 Fe(e, a, n, "\\\\globallet" === r),
5741 { type: "internal", mode: e.mode }
5742 );
5743 },
5744 }),
5745 _t({
5746 type: "internal",
5747 names: ["\\futurelet", "\\\\globalfuture"],
5748 props: { numArgs: 0, allowedInText: !0 },
5749 handler: function (t) {
5750 var e = t.parser,
5751 r = t.funcName,
5752 a = He(e.gullet.popToken()),
5753 n = e.gullet.popToken(),
5754 i = e.gullet.popToken();
5755 return (
5756 Fe(e, a, i, "\\\\globalfuture" === r),
5757 e.gullet.pushToken(i),
5758 e.gullet.pushToken(n),
5759 { type: "internal", mode: e.mode }
5760 );
5761 },
5762 }));
5763 var Ve = function (t, e, r) {
5764 var a = G((j.math[t] && j.math[t].replace) || t, e, r);
5765 if (!a)
5766 throw new Error(
5767 "Unsupported symbol " + t + " and font size " + e + ".",
5768 );
5769 return a;
5770 },
5771 Ue = function (t, e, r, a) {
5772 var n = r.havingBaseStyle(e),
5773 i = Dt.makeSpan(a.concat(n.sizingClasses(r)), [t], r),
5774 o = n.sizeMultiplier / r.sizeMultiplier;
5775 return (
5776 (i.height *= o),
5777 (i.depth *= o),
5778 (i.maxFontSize = n.sizeMultiplier),
5779 i
5780 );
5781 },
5782 Ge = function (t, e, r) {
5783 var a = e.havingBaseStyle(r),
5784 n =
5785 (1 - e.sizeMultiplier / a.sizeMultiplier) *
5786 e.fontMetrics().axisHeight;
5787 (t.classes.push("delimcenter"),
5788 (t.style.top = n + "em"),
5789 (t.height -= n),
5790 (t.depth += n));
5791 },
5792 Ye = function (t, e, r, a, n, i) {
5793 var o = (function (t, e, r, a) {
5794 return Dt.makeSymbol(t, "Size" + e + "-Regular", r, a);
5795 })(t, e, n, a),
5796 s = Ue(
5797 Dt.makeSpan(["delimsizing", "size" + e], [o], a),
5798 w.TEXT,
5799 a,
5800 i,
5801 );
5802 return (r && Ge(s, a, w.TEXT), s);
5803 },
5804 We = function (t, e, r) {
5805 var a;
5806 return (
5807 (a = "Size1-Regular" === e ? "delim-size1" : "delim-size4"),
5808 {
5809 type: "elem",
5810 elem: Dt.makeSpan(
5811 ["delimsizinginner", a],
5812 [Dt.makeSpan([], [Dt.makeSymbol(t, e, r)])],
5813 ),
5814 }
5815 );
5816 },
5817 Xe = { type: "kern", size: -0.005 },
5818 _e = function (t, e, r, a, n, i) {
5819 var o, s, l, h;
5820 ((o = l = h = t), (s = null));
5821 var m = "Size1-Regular";
5822 "\\uparrow" === t
5823 ? (l = h = "\u23d0")
5824 : "\\Uparrow" === t
5825 ? (l = h = "\u2016")
5826 : "\\downarrow" === t
5827 ? (o = l = "\u23d0")
5828 : "\\Downarrow" === t
5829 ? (o = l = "\u2016")
5830 : "\\updownarrow" === t
5831 ? ((o = "\\uparrow"), (l = "\u23d0"), (h = "\\downarrow"))
5832 : "\\Updownarrow" === t
5833 ? ((o = "\\Uparrow"), (l = "\u2016"), (h = "\\Downarrow"))
5834 : "[" === t || "\\lbrack" === t
5835 ? ((o = "\u23a1"),
5836 (l = "\u23a2"),
5837 (h = "\u23a3"),
5838 (m = "Size4-Regular"))
5839 : "]" === t || "\\rbrack" === t
5840 ? ((o = "\u23a4"),
5841 (l = "\u23a5"),
5842 (h = "\u23a6"),
5843 (m = "Size4-Regular"))
5844 : "\\lfloor" === t || "\u230a" === t
5845 ? ((l = o = "\u23a2"),
5846 (h = "\u23a3"),
5847 (m = "Size4-Regular"))
5848 : "\\lceil" === t || "\u2308" === t
5849 ? ((o = "\u23a1"),
5850 (l = h = "\u23a2"),
5851 (m = "Size4-Regular"))
5852 : "\\rfloor" === t || "\u230b" === t
5853 ? ((l = o = "\u23a5"),
5854 (h = "\u23a6"),
5855 (m = "Size4-Regular"))
5856 : "\\rceil" === t || "\u2309" === t
5857 ? ((o = "\u23a4"),
5858 (l = h = "\u23a5"),
5859 (m = "Size4-Regular"))
5860 : "(" === t || "\\lparen" === t
5861 ? ((o = "\u239b"),
5862 (l = "\u239c"),
5863 (h = "\u239d"),
5864 (m = "Size4-Regular"))
5865 : ")" === t || "\\rparen" === t
5866 ? ((o = "\u239e"),
5867 (l = "\u239f"),
5868 (h = "\u23a0"),
5869 (m = "Size4-Regular"))
5870 : "\\{" === t || "\\lbrace" === t
5871 ? ((o = "\u23a7"),
5872 (s = "\u23a8"),
5873 (h = "\u23a9"),
5874 (l = "\u23aa"),
5875 (m = "Size4-Regular"))
5876 : "\\}" === t || "\\rbrace" === t
5877 ? ((o = "\u23ab"),
5878 (s = "\u23ac"),
5879 (h = "\u23ad"),
5880 (l = "\u23aa"),
5881 (m = "Size4-Regular"))
5882 : "\\lgroup" === t || "\u27ee" === t
5883 ? ((o = "\u23a7"),
5884 (h = "\u23a9"),
5885 (l = "\u23aa"),
5886 (m = "Size4-Regular"))
5887 : "\\rgroup" === t || "\u27ef" === t
5888 ? ((o = "\u23ab"),
5889 (h = "\u23ad"),
5890 (l = "\u23aa"),
5891 (m = "Size4-Regular"))
5892 : "\\lmoustache" === t ||
5893 "\u23b0" === t
5894 ? ((o = "\u23a7"),
5895 (h = "\u23ad"),
5896 (l = "\u23aa"),
5897 (m = "Size4-Regular"))
5898 : ("\\rmoustache" !== t &&
5899 "\u23b1" !== t) ||
5900 ((o = "\u23ab"),
5901 (h = "\u23a9"),
5902 (l = "\u23aa"),
5903 (m = "Size4-Regular"));
5904 var c = Ve(o, m, n),
5905 u = c.height + c.depth,
5906 p = Ve(l, m, n),
5907 d = p.height + p.depth,
5908 f = Ve(h, m, n),
5909 g = f.height + f.depth,
5910 x = 0,
5911 v = 1;
5912 if (null !== s) {
5913 var b = Ve(s, m, n);
5914 ((x = b.height + b.depth), (v = 2));
5915 }
5916 var y = u + g + x,
5917 k = Math.max(0, Math.ceil((e - y) / (v * d))),
5918 S = y + k * v * d,
5919 M = a.fontMetrics().axisHeight;
5920 r && (M *= a.sizeMultiplier);
5921 var z = S / 2 - M,
5922 A = 0.005 * (k + 1) - d,
5923 T = [];
5924 if ((T.push(We(h, m, n)), null === s))
5925 for (var B = 0; B < k; B++) (T.push(Xe), T.push(We(l, m, n)));
5926 else {
5927 for (var C = 0; C < k; C++) (T.push(Xe), T.push(We(l, m, n)));
5928 (T.push({ type: "kern", size: A }),
5929 T.push(We(l, m, n)),
5930 T.push(Xe),
5931 T.push(We(s, m, n)));
5932 for (var q = 0; q < k; q++) (T.push(Xe), T.push(We(l, m, n)));
5933 }
5934 if (("\u239c" !== l && "\u239f" !== l) || 0 !== k)
5935 (T.push({ type: "kern", size: A }),
5936 T.push(We(l, m, n)),
5937 T.push(Xe));
5938 else {
5939 var N = Dt.svgData.leftParenInner[2] / 2;
5940 T.push({ type: "kern", size: -N });
5941 var I = "\u239c" === l ? "leftParenInner" : "rightParenInner",
5942 O = Dt.staticSvg(I, a);
5943 (T.push({ type: "elem", elem: O }),
5944 T.push({ type: "kern", size: -N }));
5945 }
5946 T.push(We(o, m, n));
5947 var R = a.havingBaseStyle(w.TEXT),
5948 E = Dt.makeVList(
5949 { positionType: "bottom", positionData: z, children: T },
5950 R,
5951 );
5952 return Ue(Dt.makeSpan(["delimsizing", "mult"], [E], R), w.TEXT, a, i);
5953 },
5954 je = function (t, e, r, a, n) {
5955 var i = (function (t, e, r) {
5956 e *= 1e3;
5957 var a = "";
5958 switch (t) {
5959 case "sqrtMain":
5960 a = (function (t, e) {
5961 return (
5962 "M95," +
5963 (622 + t + e) +
5964 "\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl" +
5965 t / 2.075 +
5966 " -" +
5967 t +
5968 "\nc5.3,-9.3,12,-14,20,-14\nH400000v" +
5969 (40 + t) +
5970 "H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM" +
5971 (834 + t) +
5972 " " +
5973 e +
5974 "h400000v" +
5975 (40 + t) +
5976 "h-400000z"
5977 );
5978 })(e, 80);
5979 break;
5980 case "sqrtSize1":
5981 a = (function (t, e) {
5982 return (
5983 "M263," +
5984 (601 + t + e) +
5985 "c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl" +
5986 t / 2.084 +
5987 " -" +
5988 t +
5989 "\nc4.7,-7.3,11,-11,19,-11\nH40000v" +
5990 (40 + t) +
5991 "H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM" +
5992 (1001 + t) +
5993 " " +
5994 e +
5995 "h400000v" +
5996 (40 + t) +
5997 "h-400000z"
5998 );
5999 })(e, 80);
6000 break;
6001 case "sqrtSize2":
6002 a = (function (t, e) {
6003 return (
6004 "M983 " +
6005 (10 + t + e) +
6006 "\nl" +
6007 t / 3.13 +
6008 " -" +
6009 t +
6010 "\nc4,-6.7,10,-10,18,-10 H400000v" +
6011 (40 + t) +
6012 "\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM" +
6013 (1001 + t) +
6014 " " +
6015 e +
6016 "h400000v" +
6017 (40 + t) +
6018 "h-400000z"
6019 );
6020 })(e, 80);
6021 break;
6022 case "sqrtSize3":
6023 a = (function (t, e) {
6024 return (
6025 "M424," +
6026 (2398 + t + e) +
6027 "\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl" +
6028 t / 4.223 +
6029 " -" +
6030 t +
6031 "c4,-6.7,10,-10,18,-10 H400000\nv" +
6032 (40 + t) +
6033 "H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M" +
6034 (1001 + t) +
6035 " " +
6036 e +
6037 "\nh400000v" +
6038 (40 + t) +
6039 "h-400000z"
6040 );
6041 })(e, 80);
6042 break;
6043 case "sqrtSize4":
6044 a = (function (t, e) {
6045 return (
6046 "M473," +
6047 (2713 + t + e) +
6048 "\nc339.3,-1799.3,509.3,-2700,510,-2702 l" +
6049 t / 5.298 +
6050 " -" +
6051 t +
6052 "\nc3.3,-7.3,9.3,-11,18,-11 H400000v" +
6053 (40 + t) +
6054 "H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM" +
6055 (1001 + t) +
6056 " " +
6057 e +
6058 "h400000v" +
6059 (40 + t) +
6060 "H1017.7z"
6061 );
6062 })(e, 80);
6063 break;
6064 case "sqrtTall":
6065 a = (function (t, e, r) {
6066 return (
6067 "M702 " +
6068 (t + e) +
6069 "H400000" +
6070 (40 + t) +
6071 "\nH742v" +
6072 (r - 54 - e - t) +
6073 "l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 " +
6074 e +
6075 "H400000v" +
6076 (40 + t) +
6077 "H742z"
6078 );
6079 })(e, 80, r);
6080 }
6081 return a;
6082 })(t, a, r),
6083 o = new P(t, i),
6084 s = new L([o], {
6085 width: "400em",
6086 height: e + "em",
6087 viewBox: "0 0 400000 " + r,
6088 preserveAspectRatio: "xMinYMin slice",
6089 });
6090 return Dt.makeSvgSpan(["hide-tail"], [s], n);
6091 },
6092 $e = [
6093 "(",
6094 "\\lparen",
6095 ")",
6096 "\\rparen",
6097 "[",
6098 "\\lbrack",
6099 "]",
6100 "\\rbrack",
6101 "\\{",
6102 "\\lbrace",
6103 "\\}",
6104 "\\rbrace",
6105 "\\lfloor",
6106 "\\rfloor",
6107 "\u230a",
6108 "\u230b",
6109 "\\lceil",
6110 "\\rceil",
6111 "\u2308",
6112 "\u2309",
6113 "\\surd",
6114 ],
6115 Ze = [
6116 "\\uparrow",
6117 "\\downarrow",
6118 "\\updownarrow",
6119 "\\Uparrow",
6120 "\\Downarrow",
6121 "\\Updownarrow",
6122 "|",
6123 "\\|",
6124 "\\vert",
6125 "\\Vert",
6126 "\\lvert",
6127 "\\rvert",
6128 "\\lVert",
6129 "\\rVert",
6130 "\\lgroup",
6131 "\\rgroup",
6132 "\u27ee",
6133 "\u27ef",
6134 "\\lmoustache",
6135 "\\rmoustache",
6136 "\u23b0",
6137 "\u23b1",
6138 ],
6139 Ke = [
6140 "<",
6141 ">",
6142 "\\langle",
6143 "\\rangle",
6144 "/",
6145 "\\backslash",
6146 "\\lt",
6147 "\\gt",
6148 ],
6149 Je = [0, 1.2, 1.8, 2.4, 3],
6150 Qe = [
6151 { type: "small", style: w.SCRIPTSCRIPT },
6152 { type: "small", style: w.SCRIPT },
6153 { type: "small", style: w.TEXT },
6154 { type: "large", size: 1 },
6155 { type: "large", size: 2 },
6156 { type: "large", size: 3 },
6157 { type: "large", size: 4 },
6158 ],
6159 tr = [
6160 { type: "small", style: w.SCRIPTSCRIPT },
6161 { type: "small", style: w.SCRIPT },
6162 { type: "small", style: w.TEXT },
6163 { type: "stack" },
6164 ],
6165 er = [
6166 { type: "small", style: w.SCRIPTSCRIPT },
6167 { type: "small", style: w.SCRIPT },
6168 { type: "small", style: w.TEXT },
6169 { type: "large", size: 1 },
6170 { type: "large", size: 2 },
6171 { type: "large", size: 3 },
6172 { type: "large", size: 4 },
6173 { type: "stack" },
6174 ],
6175 rr = function (t) {
6176 if ("small" === t.type) return "Main-Regular";
6177 if ("large" === t.type) return "Size" + t.size + "-Regular";
6178 if ("stack" === t.type) return "Size4-Regular";
6179 throw new Error("Add support for delim type '" + t.type + "' here.");
6180 },
6181 ar = function (t, e, r, a) {
6182 for (
6183 var n = Math.min(2, 3 - a.style.size);
6184 n < r.length && "stack" !== r[n].type;
6185 n++
6186 ) {
6187 var i = Ve(t, rr(r[n]), "math"),
6188 o = i.height + i.depth;
6189 if (
6190 ("small" === r[n].type &&
6191 (o *= a.havingBaseStyle(r[n].style).sizeMultiplier),
6192 o > e)
6193 )
6194 return r[n];
6195 }
6196 return r[r.length - 1];
6197 },
6198 nr = function (t, e, r, a, n, i) {
6199 var o;
6200 ("<" === t || "\\lt" === t || "\u27e8" === t
6201 ? (t = "\\langle")
6202 : (">" !== t && "\\gt" !== t && "\u27e9" !== t) || (t = "\\rangle"),
6203 (o = c.contains(Ke, t) ? Qe : c.contains($e, t) ? er : tr));
6204 var s = ar(t, e, o, a);
6205 return "small" === s.type
6206 ? (function (t, e, r, a, n, i) {
6207 var o = Dt.makeSymbol(t, "Main-Regular", n, a),
6208 s = Ue(o, e, a, i);
6209 return (r && Ge(s, a, e), s);
6210 })(t, s.style, r, a, n, i)
6211 : "large" === s.type
6212 ? Ye(t, s.size, r, a, n, i)
6213 : _e(t, e, r, a, n, i);
6214 },
6215 ir = function (t, e) {
6216 var r,
6217 a,
6218 n = e.havingBaseSizing(),
6219 i = ar("\\surd", t * n.sizeMultiplier, er, n),
6220 o = n.sizeMultiplier,
6221 s = Math.max(
6222 0,
6223 e.minRuleThickness - e.fontMetrics().sqrtRuleThickness,
6224 ),
6225 l = 0,
6226 h = 0,
6227 m = 0;
6228 return (
6229 "small" === i.type
6230 ? (t < 1 ? (o = 1) : t < 1.4 && (o = 0.7),
6231 (h = (1 + s) / o),
6232 ((r = je(
6233 "sqrtMain",
6234 (l = (1 + s + 0.08) / o),
6235 (m = 1e3 + 1e3 * s + 80),
6236 s,
6237 e,
6238 )).style.minWidth = "0.853em"),
6239 (a = 0.833 / o))
6240 : "large" === i.type
6241 ? ((m = 1080 * Je[i.size]),
6242 (h = (Je[i.size] + s) / o),
6243 (l = (Je[i.size] + s + 0.08) / o),
6244 ((r = je("sqrtSize" + i.size, l, m, s, e)).style.minWidth =
6245 "1.02em"),
6246 (a = 1 / o))
6247 : ((l = t + s + 0.08),
6248 (h = t + s),
6249 (m = Math.floor(1e3 * t + s) + 80),
6250 ((r = je("sqrtTall", l, m, s, e)).style.minWidth = "0.742em"),
6251 (a = 1.056)),
6252 (r.height = h),
6253 (r.style.height = l + "em"),
6254 {
6255 span: r,
6256 advanceWidth: a,
6257 ruleWidth: (e.fontMetrics().sqrtRuleThickness + s) * o,
6258 }
6259 );
6260 },
6261 or = function (t, e, r, a, n) {
6262 if (
6263 ("<" === t || "\\lt" === t || "\u27e8" === t
6264 ? (t = "\\langle")
6265 : (">" !== t && "\\gt" !== t && "\u27e9" !== t) ||
6266 (t = "\\rangle"),
6267 c.contains($e, t) || c.contains(Ke, t))
6268 )
6269 return Ye(t, e, !1, r, a, n);
6270 if (c.contains(Ze, t)) return _e(t, Je[e], !1, r, a, n);
6271 throw new o("Illegal delimiter: '" + t + "'");
6272 },
6273 sr = nr,
6274 lr = function (t, e, r, a, n, i) {
6275 var o = a.fontMetrics().axisHeight * a.sizeMultiplier,
6276 s = 5 / a.fontMetrics().ptPerEm,
6277 l = Math.max(e - o, r + o),
6278 h = Math.max((l / 500) * 901, 2 * l - s);
6279 return nr(t, h, !0, a, n, i);
6280 },
6281 hr = {
6282 "\\bigl": { mclass: "mopen", size: 1 },
6283 "\\Bigl": { mclass: "mopen", size: 2 },
6284 "\\biggl": { mclass: "mopen", size: 3 },
6285 "\\Biggl": { mclass: "mopen", size: 4 },
6286 "\\bigr": { mclass: "mclose", size: 1 },
6287 "\\Bigr": { mclass: "mclose", size: 2 },
6288 "\\biggr": { mclass: "mclose", size: 3 },
6289 "\\Biggr": { mclass: "mclose", size: 4 },
6290 "\\bigm": { mclass: "mrel", size: 1 },
6291 "\\Bigm": { mclass: "mrel", size: 2 },
6292 "\\biggm": { mclass: "mrel", size: 3 },
6293 "\\Biggm": { mclass: "mrel", size: 4 },
6294 "\\big": { mclass: "mord", size: 1 },
6295 "\\Big": { mclass: "mord", size: 2 },
6296 "\\bigg": { mclass: "mord", size: 3 },
6297 "\\Bigg": { mclass: "mord", size: 4 },
6298 },
6299 mr = [
6300 "(",
6301 "\\lparen",
6302 ")",
6303 "\\rparen",
6304 "[",
6305 "\\lbrack",
6306 "]",
6307 "\\rbrack",
6308 "\\{",
6309 "\\lbrace",
6310 "\\}",
6311 "\\rbrace",
6312 "\\lfloor",
6313 "\\rfloor",
6314 "\u230a",
6315 "\u230b",
6316 "\\lceil",
6317 "\\rceil",
6318 "\u2308",
6319 "\u2309",
6320 "<",
6321 ">",
6322 "\\langle",
6323 "\u27e8",
6324 "\\rangle",
6325 "\u27e9",
6326 "\\lt",
6327 "\\gt",
6328 "\\lvert",
6329 "\\rvert",
6330 "\\lVert",
6331 "\\rVert",
6332 "\\lgroup",
6333 "\\rgroup",
6334 "\u27ee",
6335 "\u27ef",
6336 "\\lmoustache",
6337 "\\rmoustache",
6338 "\u23b0",
6339 "\u23b1",
6340 "/",
6341 "\\backslash",
6342 "|",
6343 "\\vert",
6344 "\\|",
6345 "\\Vert",
6346 "\\uparrow",
6347 "\\Uparrow",
6348 "\\downarrow",
6349 "\\Downarrow",
6350 "\\updownarrow",
6351 "\\Updownarrow",
6352 ".",
6353 ];
6354 function cr(t, e) {
6355 var r = Ne(t);
6356 if (r && c.contains(mr, r.text)) return r;
6357 throw new o(
6358 r
6359 ? "Invalid delimiter '" + r.text + "' after '" + e.funcName + "'"
6360 : "Invalid delimiter type '" + t.type + "'",
6361 t,
6362 );
6363 }
6364 function ur(t) {
6365 if (!t.body)
6366 throw new Error("Bug: The leftright ParseNode wasn't fully parsed.");
6367 }
6368 (_t({
6369 type: "delimsizing",
6370 names: [
6371 "\\bigl",
6372 "\\Bigl",
6373 "\\biggl",
6374 "\\Biggl",
6375 "\\bigr",
6376 "\\Bigr",
6377 "\\biggr",
6378 "\\Biggr",
6379 "\\bigm",
6380 "\\Bigm",
6381 "\\biggm",
6382 "\\Biggm",
6383 "\\big",
6384 "\\Big",
6385 "\\bigg",
6386 "\\Bigg",
6387 ],
6388 props: { numArgs: 1 },
6389 handler: function (t, e) {
6390 var r = cr(e[0], t);
6391 return {
6392 type: "delimsizing",
6393 mode: t.parser.mode,
6394 size: hr[t.funcName].size,
6395 mclass: hr[t.funcName].mclass,
6396 delim: r.text,
6397 };
6398 },
6399 htmlBuilder: function (t, e) {
6400 return "." === t.delim
6401 ? Dt.makeSpan([t.mclass])
6402 : or(t.delim, t.size, e, t.mode, [t.mclass]);
6403 },
6404 mathmlBuilder: function (t) {
6405 var e = [];
6406 "." !== t.delim && e.push(pe(t.delim, t.mode));
6407 var r = new ue.MathNode("mo", e);
6408 return (
6409 "mopen" === t.mclass || "mclose" === t.mclass
6410 ? r.setAttribute("fence", "true")
6411 : r.setAttribute("fence", "false"),
6412 r
6413 );
6414 },
6415 }),
6416 _t({
6417 type: "leftright-right",
6418 names: ["\\right"],
6419 props: { numArgs: 1 },
6420 handler: function (t, e) {
6421 var r = t.parser.gullet.macros.get("\\current@color");
6422 if (r && "string" != typeof r)
6423 throw new o("\\current@color set to non-string in \\right");
6424 return {
6425 type: "leftright-right",
6426 mode: t.parser.mode,
6427 delim: cr(e[0], t).text,
6428 color: r,
6429 };
6430 },
6431 }),
6432 _t({
6433 type: "leftright",
6434 names: ["\\left"],
6435 props: { numArgs: 1 },
6436 handler: function (t, e) {
6437 var r = cr(e[0], t),
6438 a = t.parser;
6439 ++a.leftrightDepth;
6440 var n = a.parseExpression(!1);
6441 (--a.leftrightDepth, a.expect("\\right", !1));
6442 var i = Ce(a.parseFunction(), "leftright-right");
6443 return {
6444 type: "leftright",
6445 mode: a.mode,
6446 body: n,
6447 left: r.text,
6448 right: i.delim,
6449 rightColor: i.color,
6450 };
6451 },
6452 htmlBuilder: function (t, e) {
6453 ur(t);
6454 for (
6455 var r,
6456 a,
6457 n = ee(t.body, e, !0, ["mopen", "mclose"]),
6458 i = 0,
6459 o = 0,
6460 s = !1,
6461 l = 0;
6462 l < n.length;
6463 l++
6464 )
6465 n[l].isMiddle
6466 ? (s = !0)
6467 : ((i = Math.max(n[l].height, i)),
6468 (o = Math.max(n[l].depth, o)));
6469 if (
6470 ((i *= e.sizeMultiplier),
6471 (o *= e.sizeMultiplier),
6472 (r =
6473 "." === t.left
6474 ? ie(e, ["mopen"])
6475 : lr(t.left, i, o, e, t.mode, ["mopen"])),
6476 n.unshift(r),
6477 s)
6478 )
6479 for (var h = 1; h < n.length; h++) {
6480 var m = n[h].isMiddle;
6481 m && (n[h] = lr(m.delim, i, o, m.options, t.mode, []));
6482 }
6483 if ("." === t.right) a = ie(e, ["mclose"]);
6484 else {
6485 var c = t.rightColor ? e.withColor(t.rightColor) : e;
6486 a = lr(t.right, i, o, c, t.mode, ["mclose"]);
6487 }
6488 return (n.push(a), Dt.makeSpan(["minner"], n, e));
6489 },
6490 mathmlBuilder: function (t, e) {
6491 ur(t);
6492 var r = ge(t.body, e);
6493 if ("." !== t.left) {
6494 var a = new ue.MathNode("mo", [pe(t.left, t.mode)]);
6495 (a.setAttribute("fence", "true"), r.unshift(a));
6496 }
6497 if ("." !== t.right) {
6498 var n = new ue.MathNode("mo", [pe(t.right, t.mode)]);
6499 (n.setAttribute("fence", "true"),
6500 t.rightColor && n.setAttribute("mathcolor", t.rightColor),
6501 r.push(n));
6502 }
6503 return de(r);
6504 },
6505 }),
6506 _t({
6507 type: "middle",
6508 names: ["\\middle"],
6509 props: { numArgs: 1 },
6510 handler: function (t, e) {
6511 var r = cr(e[0], t);
6512 if (!t.parser.leftrightDepth)
6513 throw new o("\\middle without preceding \\left", r);
6514 return { type: "middle", mode: t.parser.mode, delim: r.text };
6515 },
6516 htmlBuilder: function (t, e) {
6517 var r;
6518 if ("." === t.delim) r = ie(e, []);
6519 else {
6520 r = or(t.delim, 1, e, t.mode, []);
6521 var a = { delim: t.delim, options: e };
6522 r.isMiddle = a;
6523 }
6524 return r;
6525 },
6526 mathmlBuilder: function (t, e) {
6527 var r =
6528 "\\vert" === t.delim || "|" === t.delim
6529 ? pe("|", "text")
6530 : pe(t.delim, t.mode),
6531 a = new ue.MathNode("mo", [r]);
6532 return (
6533 a.setAttribute("fence", "true"),
6534 a.setAttribute("lspace", "0.05em"),
6535 a.setAttribute("rspace", "0.05em"),
6536 a
6537 );
6538 },
6539 }));
6540 var pr = function (t, e) {
6541 var r,
6542 a,
6543 n = Dt.wrapFragment(oe(t.body, e), e),
6544 i = t.label.substr(1),
6545 o = e.sizeMultiplier,
6546 s = 0,
6547 l = c.isCharacterBox(t.body);
6548 if ("sout" === i)
6549 (((r = Dt.makeSpan(["stretchy", "sout"])).height =
6550 e.fontMetrics().defaultRuleThickness / o),
6551 (s = -0.5 * e.fontMetrics().xHeight));
6552 else {
6553 /cancel/.test(i)
6554 ? l || n.classes.push("cancel-pad")
6555 : n.classes.push("boxpad");
6556 var h = 0,
6557 m = 0;
6558 (/box/.test(i)
6559 ? ((m = Math.max(e.fontMetrics().fboxrule, e.minRuleThickness)),
6560 (h = e.fontMetrics().fboxsep + ("colorbox" === i ? 0 : m)))
6561 : (h = l ? 0.2 : 0),
6562 (r = Ae(n, i, h, e)),
6563 /fbox|boxed|fcolorbox/.test(i) &&
6564 ((r.style.borderStyle = "solid"),
6565 (r.style.borderWidth = m + "em")),
6566 (s = n.depth + h),
6567 t.backgroundColor &&
6568 ((r.style.backgroundColor = t.backgroundColor),
6569 t.borderColor && (r.style.borderColor = t.borderColor)));
6570 }
6571 return (
6572 (a = t.backgroundColor
6573 ? Dt.makeVList(
6574 {
6575 positionType: "individualShift",
6576 children: [
6577 { type: "elem", elem: r, shift: s },
6578 { type: "elem", elem: n, shift: 0 },
6579 ],
6580 },
6581 e,
6582 )
6583 : Dt.makeVList(
6584 {
6585 positionType: "individualShift",
6586 children: [
6587 { type: "elem", elem: n, shift: 0 },
6588 {
6589 type: "elem",
6590 elem: r,
6591 shift: s,
6592 wrapperClasses: /cancel/.test(i) ? ["svg-align"] : [],
6593 },
6594 ],
6595 },
6596 e,
6597 )),
6598 /cancel/.test(i) && ((a.height = n.height), (a.depth = n.depth)),
6599 /cancel/.test(i) && !l
6600 ? Dt.makeSpan(["mord", "cancel-lap"], [a], e)
6601 : Dt.makeSpan(["mord"], [a], e)
6602 );
6603 },
6604 dr = function (t, e) {
6605 var r = 0,
6606 a = new ue.MathNode(
6607 t.label.indexOf("colorbox") > -1 ? "mpadded" : "menclose",
6608 [ve(t.body, e)],
6609 );
6610 switch (t.label) {
6611 case "\\cancel":
6612 a.setAttribute("notation", "updiagonalstrike");
6613 break;
6614 case "\\bcancel":
6615 a.setAttribute("notation", "downdiagonalstrike");
6616 break;
6617 case "\\sout":
6618 a.setAttribute("notation", "horizontalstrike");
6619 break;
6620 case "\\fbox":
6621 a.setAttribute("notation", "box");
6622 break;
6623 case "\\fcolorbox":
6624 case "\\colorbox":
6625 if (
6626 ((r = e.fontMetrics().fboxsep * e.fontMetrics().ptPerEm),
6627 a.setAttribute("width", "+" + 2 * r + "pt"),
6628 a.setAttribute("height", "+" + 2 * r + "pt"),
6629 a.setAttribute("lspace", r + "pt"),
6630 a.setAttribute("voffset", r + "pt"),
6631 "\\fcolorbox" === t.label)
6632 ) {
6633 var n = Math.max(e.fontMetrics().fboxrule, e.minRuleThickness);
6634 a.setAttribute(
6635 "style",
6636 "border: " + n + "em solid " + String(t.borderColor),
6637 );
6638 }
6639 break;
6640 case "\\xcancel":
6641 a.setAttribute("notation", "updiagonalstrike downdiagonalstrike");
6642 }
6643 return (
6644 t.backgroundColor &&
6645 a.setAttribute("mathbackground", t.backgroundColor),
6646 a
6647 );
6648 };
6649 (_t({
6650 type: "enclose",
6651 names: ["\\colorbox"],
6652 props: {
6653 numArgs: 2,
6654 allowedInText: !0,
6655 greediness: 3,
6656 argTypes: ["color", "text"],
6657 },
6658 handler: function (t, e, r) {
6659 var a = t.parser,
6660 n = t.funcName,
6661 i = Ce(e[0], "color-token").color,
6662 o = e[1];
6663 return {
6664 type: "enclose",
6665 mode: a.mode,
6666 label: n,
6667 backgroundColor: i,
6668 body: o,
6669 };
6670 },
6671 htmlBuilder: pr,
6672 mathmlBuilder: dr,
6673 }),
6674 _t({
6675 type: "enclose",
6676 names: ["\\fcolorbox"],
6677 props: {
6678 numArgs: 3,
6679 allowedInText: !0,
6680 greediness: 3,
6681 argTypes: ["color", "color", "text"],
6682 },
6683 handler: function (t, e, r) {
6684 var a = t.parser,
6685 n = t.funcName,
6686 i = Ce(e[0], "color-token").color,
6687 o = Ce(e[1], "color-token").color,
6688 s = e[2];
6689 return {
6690 type: "enclose",
6691 mode: a.mode,
6692 label: n,
6693 backgroundColor: o,
6694 borderColor: i,
6695 body: s,
6696 };
6697 },
6698 htmlBuilder: pr,
6699 mathmlBuilder: dr,
6700 }),
6701 _t({
6702 type: "enclose",
6703 names: ["\\fbox"],
6704 props: { numArgs: 1, argTypes: ["hbox"], allowedInText: !0 },
6705 handler: function (t, e) {
6706 return {
6707 type: "enclose",
6708 mode: t.parser.mode,
6709 label: "\\fbox",
6710 body: e[0],
6711 };
6712 },
6713 }),
6714 _t({
6715 type: "enclose",
6716 names: ["\\cancel", "\\bcancel", "\\xcancel", "\\sout"],
6717 props: { numArgs: 1 },
6718 handler: function (t, e, r) {
6719 var a = t.parser,
6720 n = t.funcName,
6721 i = e[0];
6722 return { type: "enclose", mode: a.mode, label: n, body: i };
6723 },
6724 htmlBuilder: pr,
6725 mathmlBuilder: dr,
6726 }));
6727 var fr = {};
6728 function gr(t) {
6729 for (
6730 var e = t.type,
6731 r = t.names,
6732 a = t.props,
6733 n = t.handler,
6734 i = t.htmlBuilder,
6735 o = t.mathmlBuilder,
6736 s = {
6737 type: e,
6738 numArgs: a.numArgs || 0,
6739 greediness: 1,
6740 allowedInText: !1,
6741 numOptionalArgs: 0,
6742 handler: n,
6743 },
6744 l = 0;
6745 l < r.length;
6746 ++l
6747 )
6748 fr[r[l]] = s;
6749 (i && (Wt[e] = i), o && (Xt[e] = o));
6750 }
6751 function xr(t) {
6752 var e = [];
6753 t.consumeSpaces();
6754 for (var r = t.fetch().text; "\\hline" === r || "\\hdashline" === r; )
6755 (t.consume(),
6756 e.push("\\hdashline" === r),
6757 t.consumeSpaces(),
6758 (r = t.fetch().text));
6759 return e;
6760 }
6761 function vr(t, e, r) {
6762 var a = e.hskipBeforeAndAfter,
6763 n = e.addJot,
6764 i = e.cols,
6765 s = e.arraystretch,
6766 l = e.colSeparationType;
6767 if ((t.gullet.beginGroup(), t.gullet.macros.set("\\\\", "\\cr"), !s)) {
6768 var h = t.gullet.expandMacroAsText("\\arraystretch");
6769 if (null == h) s = 1;
6770 else if (!(s = parseFloat(h)) || s < 0)
6771 throw new o("Invalid \\arraystretch: " + h);
6772 }
6773 t.gullet.beginGroup();
6774 var m = [],
6775 c = [m],
6776 u = [],
6777 p = [];
6778 for (p.push(xr(t)); ; ) {
6779 var d = t.parseExpression(!1, "\\cr");
6780 (t.gullet.endGroup(),
6781 t.gullet.beginGroup(),
6782 (d = { type: "ordgroup", mode: t.mode, body: d }),
6783 r && (d = { type: "styling", mode: t.mode, style: r, body: [d] }),
6784 m.push(d));
6785 var f = t.fetch().text;
6786 if ("&" === f) t.consume();
6787 else {
6788 if ("\\end" === f) {
6789 (1 === m.length &&
6790 "styling" === d.type &&
6791 0 === d.body[0].body.length &&
6792 c.pop(),
6793 p.length < c.length + 1 && p.push([]));
6794 break;
6795 }
6796 if ("\\cr" !== f)
6797 throw new o("Expected & or \\\\ or \\cr or \\end", t.nextToken);
6798 var g = Ce(t.parseFunction(), "cr");
6799 (u.push(g.size), p.push(xr(t)), (m = []), c.push(m));
6800 }
6801 }
6802 return (
6803 t.gullet.endGroup(),
6804 t.gullet.endGroup(),
6805 {
6806 type: "array",
6807 mode: t.mode,
6808 addJot: n,
6809 arraystretch: s,
6810 body: c,
6811 cols: i,
6812 rowGaps: u,
6813 hskipBeforeAndAfter: a,
6814 hLinesBeforeRow: p,
6815 colSeparationType: l,
6816 }
6817 );
6818 }
6819 function br(t) {
6820 return "d" === t.substr(0, 1) ? "display" : "text";
6821 }
6822 var yr = function (t, e) {
6823 var r,
6824 a,
6825 n = t.body.length,
6826 i = t.hLinesBeforeRow,
6827 s = 0,
6828 l = new Array(n),
6829 h = [],
6830 m = Math.max(e.fontMetrics().arrayRuleWidth, e.minRuleThickness),
6831 u = 1 / e.fontMetrics().ptPerEm,
6832 p = 5 * u;
6833 t.colSeparationType &&
6834 "small" === t.colSeparationType &&
6835 (p =
6836 (e.havingStyle(w.SCRIPT).sizeMultiplier / e.sizeMultiplier) *
6837 0.2778);
6838 var d = 12 * u,
6839 f = 3 * u,
6840 g = t.arraystretch * d,
6841 x = 0.7 * g,
6842 v = 0.3 * g,
6843 b = 0;
6844 function y(t) {
6845 for (var e = 0; e < t.length; ++e)
6846 (e > 0 && (b += 0.25), h.push({ pos: b, isDashed: t[e] }));
6847 }
6848 for (y(i[0]), r = 0; r < t.body.length; ++r) {
6849 var k = t.body[r],
6850 S = x,
6851 M = v;
6852 s < k.length && (s = k.length);
6853 var z = new Array(k.length);
6854 for (a = 0; a < k.length; ++a) {
6855 var A = oe(k[a], e);
6856 (M < A.depth && (M = A.depth),
6857 S < A.height && (S = A.height),
6858 (z[a] = A));
6859 }
6860 var T = t.rowGaps[r],
6861 B = 0;
6862 (T && (B = Tt(T, e)) > 0 && (M < (B += v) && (M = B), (B = 0)),
6863 t.addJot && (M += f),
6864 (z.height = S),
6865 (z.depth = M),
6866 (b += S),
6867 (z.pos = b),
6868 (b += M + B),
6869 (l[r] = z),
6870 y(i[r + 1]));
6871 }
6872 var C,
6873 q,
6874 N = b / 2 + e.fontMetrics().axisHeight,
6875 I = t.cols || [],
6876 O = [];
6877 for (a = 0, q = 0; a < s || q < I.length; ++a, ++q) {
6878 for (var R = I[q] || {}, E = !0; "separator" === R.type; ) {
6879 if (
6880 (E ||
6881 (((C = Dt.makeSpan(["arraycolsep"], [])).style.width =
6882 e.fontMetrics().doubleRuleSep + "em"),
6883 O.push(C)),
6884 "|" !== R.separator && ":" !== R.separator)
6885 )
6886 throw new o("Invalid separator type: " + R.separator);
6887 var L = "|" === R.separator ? "solid" : "dashed",
6888 P = Dt.makeSpan(["vertical-separator"], [], e);
6889 ((P.style.height = b + "em"),
6890 (P.style.borderRightWidth = m + "em"),
6891 (P.style.borderRightStyle = L),
6892 (P.style.margin = "0 -" + m / 2 + "em"),
6893 (P.style.verticalAlign = -(b - N) + "em"),
6894 O.push(P),
6895 (R = I[++q] || {}),
6896 (E = !1));
6897 }
6898 if (!(a >= s)) {
6899 var D = void 0;
6900 (a > 0 || t.hskipBeforeAndAfter) &&
6901 0 !== (D = c.deflt(R.pregap, p)) &&
6902 (((C = Dt.makeSpan(["arraycolsep"], [])).style.width =
6903 D + "em"),
6904 O.push(C));
6905 var H = [];
6906 for (r = 0; r < n; ++r) {
6907 var F = l[r],
6908 V = F[a];
6909 if (V) {
6910 var U = F.pos - N;
6911 ((V.depth = F.depth),
6912 (V.height = F.height),
6913 H.push({ type: "elem", elem: V, shift: U }));
6914 }
6915 }
6916 ((H = Dt.makeVList(
6917 { positionType: "individualShift", children: H },
6918 e,
6919 )),
6920 (H = Dt.makeSpan(["col-align-" + (R.align || "c")], [H])),
6921 O.push(H),
6922 (a < s - 1 || t.hskipBeforeAndAfter) &&
6923 0 !== (D = c.deflt(R.postgap, p)) &&
6924 (((C = Dt.makeSpan(["arraycolsep"], [])).style.width =
6925 D + "em"),
6926 O.push(C)));
6927 }
6928 }
6929 if (((l = Dt.makeSpan(["mtable"], O)), h.length > 0)) {
6930 for (
6931 var G = Dt.makeLineSpan("hline", e, m),
6932 Y = Dt.makeLineSpan("hdashline", e, m),
6933 W = [{ type: "elem", elem: l, shift: 0 }];
6934 h.length > 0;
6935 ) {
6936 var X = h.pop(),
6937 _ = X.pos - N;
6938 X.isDashed
6939 ? W.push({ type: "elem", elem: Y, shift: _ })
6940 : W.push({ type: "elem", elem: G, shift: _ });
6941 }
6942 l = Dt.makeVList(
6943 { positionType: "individualShift", children: W },
6944 e,
6945 );
6946 }
6947 return Dt.makeSpan(["mord"], [l], e);
6948 },
6949 wr = { c: "center ", l: "left ", r: "right " },
6950 kr = function (t, e) {
6951 var r = new ue.MathNode(
6952 "mtable",
6953 t.body.map(function (t) {
6954 return new ue.MathNode(
6955 "mtr",
6956 t.map(function (t) {
6957 return new ue.MathNode("mtd", [ve(t, e)]);
6958 }),
6959 );
6960 }),
6961 ),
6962 a =
6963 0.5 === t.arraystretch
6964 ? 0.1
6965 : 0.16 + t.arraystretch - 1 + (t.addJot ? 0.09 : 0);
6966 r.setAttribute("rowspacing", a + "em");
6967 var n = "",
6968 i = "";
6969 if (t.cols && t.cols.length > 0) {
6970 var o = t.cols,
6971 s = "",
6972 l = !1,
6973 h = 0,
6974 m = o.length;
6975 ("separator" === o[0].type && ((n += "top "), (h = 1)),
6976 "separator" === o[o.length - 1].type &&
6977 ((n += "bottom "), (m -= 1)));
6978 for (var c = h; c < m; c++)
6979 "align" === o[c].type
6980 ? ((i += wr[o[c].align]), l && (s += "none "), (l = !0))
6981 : "separator" === o[c].type &&
6982 l &&
6983 ((s += "|" === o[c].separator ? "solid " : "dashed "),
6984 (l = !1));
6985 (r.setAttribute("columnalign", i.trim()),
6986 /[sd]/.test(s) && r.setAttribute("columnlines", s.trim()));
6987 }
6988 if ("align" === t.colSeparationType) {
6989 for (var u = t.cols || [], p = "", d = 1; d < u.length; d++)
6990 p += d % 2 ? "0em " : "1em ";
6991 r.setAttribute("columnspacing", p.trim());
6992 } else
6993 "alignat" === t.colSeparationType
6994 ? r.setAttribute("columnspacing", "0em")
6995 : "small" === t.colSeparationType
6996 ? r.setAttribute("columnspacing", "0.2778em")
6997 : r.setAttribute("columnspacing", "1em");
6998 var f = "",
6999 g = t.hLinesBeforeRow;
7000 ((n += g[0].length > 0 ? "left " : ""),
7001 (n += g[g.length - 1].length > 0 ? "right " : ""));
7002 for (var x = 1; x < g.length - 1; x++)
7003 f += 0 === g[x].length ? "none " : g[x][0] ? "dashed " : "solid ";
7004 return (
7005 /[sd]/.test(f) && r.setAttribute("rowlines", f.trim()),
7006 "" !== n &&
7007 (r = new ue.MathNode("menclose", [r])).setAttribute(
7008 "notation",
7009 n.trim(),
7010 ),
7011 t.arraystretch &&
7012 t.arraystretch < 1 &&
7013 (r = new ue.MathNode("mstyle", [r])).setAttribute(
7014 "scriptlevel",
7015 "1",
7016 ),
7017 r
7018 );
7019 },
7020 Sr = function (t, e) {
7021 var r,
7022 a = [],
7023 n = vr(t.parser, { cols: a, addJot: !0 }, "display"),
7024 i = 0,
7025 s = { type: "ordgroup", mode: t.mode, body: [] };
7026 if (e[0] && "ordgroup" === e[0].type) {
7027 for (var l = "", h = 0; h < e[0].body.length; h++) {
7028 l += Ce(e[0].body[h], "textord").text;
7029 }
7030 ((r = Number(l)), (i = 2 * r));
7031 }
7032 var m = !i;
7033 n.body.forEach(function (t) {
7034 for (var e = 1; e < t.length; e += 2) {
7035 var a = Ce(t[e], "styling");
7036 Ce(a.body[0], "ordgroup").body.unshift(s);
7037 }
7038 if (m) i < t.length && (i = t.length);
7039 else {
7040 var n = t.length / 2;
7041 if (r < n)
7042 throw new o(
7043 "Too many math in a row: expected " + r + ", but got " + n,
7044 t[0],
7045 );
7046 }
7047 });
7048 for (var c = 0; c < i; ++c) {
7049 var u = "r",
7050 p = 0;
7051 (c % 2 == 1 ? (u = "l") : c > 0 && m && (p = 1),
7052 (a[c] = { type: "align", align: u, pregap: p, postgap: 0 }));
7053 }
7054 return ((n.colSeparationType = m ? "align" : "alignat"), n);
7055 };
7056 (gr({
7057 type: "array",
7058 names: ["array", "darray"],
7059 props: { numArgs: 1 },
7060 handler: function (t, e) {
7061 var r = {
7062 cols: (Ne(e[0]) ? [e[0]] : Ce(e[0], "ordgroup").body).map(
7063 function (t) {
7064 var e = qe(t).text;
7065 if (-1 !== "lcr".indexOf(e)) return { type: "align", align: e };
7066 if ("|" === e) return { type: "separator", separator: "|" };
7067 if (":" === e) return { type: "separator", separator: ":" };
7068 throw new o("Unknown column alignment: " + e, t);
7069 },
7070 ),
7071 hskipBeforeAndAfter: !0,
7072 };
7073 return vr(t.parser, r, br(t.envName));
7074 },
7075 htmlBuilder: yr,
7076 mathmlBuilder: kr,
7077 }),
7078 gr({
7079 type: "array",
7080 names: [
7081 "matrix",
7082 "pmatrix",
7083 "bmatrix",
7084 "Bmatrix",
7085 "vmatrix",
7086 "Vmatrix",
7087 ],
7088 props: { numArgs: 0 },
7089 handler: function (t) {
7090 var e = {
7091 matrix: null,
7092 pmatrix: ["(", ")"],
7093 bmatrix: ["[", "]"],
7094 Bmatrix: ["\\{", "\\}"],
7095 vmatrix: ["|", "|"],
7096 Vmatrix: ["\\Vert", "\\Vert"],
7097 }[t.envName],
7098 r = vr(t.parser, { hskipBeforeAndAfter: !1 }, br(t.envName));
7099 return e
7100 ? {
7101 type: "leftright",
7102 mode: t.mode,
7103 body: [r],
7104 left: e[0],
7105 right: e[1],
7106 rightColor: void 0,
7107 }
7108 : r;
7109 },
7110 htmlBuilder: yr,
7111 mathmlBuilder: kr,
7112 }),
7113 gr({
7114 type: "array",
7115 names: ["smallmatrix"],
7116 props: { numArgs: 0 },
7117 handler: function (t) {
7118 var e = vr(t.parser, { arraystretch: 0.5 }, "script");
7119 return ((e.colSeparationType = "small"), e);
7120 },
7121 htmlBuilder: yr,
7122 mathmlBuilder: kr,
7123 }),
7124 gr({
7125 type: "array",
7126 names: ["subarray"],
7127 props: { numArgs: 1 },
7128 handler: function (t, e) {
7129 var r = (Ne(e[0]) ? [e[0]] : Ce(e[0], "ordgroup").body).map(
7130 function (t) {
7131 var e = qe(t).text;
7132 if (-1 !== "lc".indexOf(e)) return { type: "align", align: e };
7133 throw new o("Unknown column alignment: " + e, t);
7134 },
7135 );
7136 if (r.length > 1)
7137 throw new o("{subarray} can contain only one column");
7138 var a = { cols: r, hskipBeforeAndAfter: !1, arraystretch: 0.5 };
7139 if (
7140 (a = vr(t.parser, a, "script")).body.length > 0 &&
7141 a.body[0].length > 1
7142 )
7143 throw new o("{subarray} can contain only one column");
7144 return a;
7145 },
7146 htmlBuilder: yr,
7147 mathmlBuilder: kr,
7148 }),
7149 gr({
7150 type: "array",
7151 names: ["cases", "dcases", "rcases", "drcases"],
7152 props: { numArgs: 0 },
7153 handler: function (t) {
7154 var e = vr(
7155 t.parser,
7156 {
7157 arraystretch: 1.2,
7158 cols: [
7159 { type: "align", align: "l", pregap: 0, postgap: 1 },
7160 { type: "align", align: "l", pregap: 0, postgap: 0 },
7161 ],
7162 },
7163 br(t.envName),
7164 );
7165 return {
7166 type: "leftright",
7167 mode: t.mode,
7168 body: [e],
7169 left: t.envName.indexOf("r") > -1 ? "." : "\\{",
7170 right: t.envName.indexOf("r") > -1 ? "\\}" : ".",
7171 rightColor: void 0,
7172 };
7173 },
7174 htmlBuilder: yr,
7175 mathmlBuilder: kr,
7176 }),
7177 gr({
7178 type: "array",
7179 names: ["aligned"],
7180 props: { numArgs: 0 },
7181 handler: Sr,
7182 htmlBuilder: yr,
7183 mathmlBuilder: kr,
7184 }),
7185 gr({
7186 type: "array",
7187 names: ["gathered"],
7188 props: { numArgs: 0 },
7189 handler: function (t) {
7190 return vr(
7191 t.parser,
7192 { cols: [{ type: "align", align: "c" }], addJot: !0 },
7193 "display",
7194 );
7195 },
7196 htmlBuilder: yr,
7197 mathmlBuilder: kr,
7198 }),
7199 gr({
7200 type: "array",
7201 names: ["alignedat"],
7202 props: { numArgs: 1 },
7203 handler: Sr,
7204 htmlBuilder: yr,
7205 mathmlBuilder: kr,
7206 }),
7207 _t({
7208 type: "text",
7209 names: ["\\hline", "\\hdashline"],
7210 props: { numArgs: 0, allowedInText: !0, allowedInMath: !0 },
7211 handler: function (t, e) {
7212 throw new o(t.funcName + " valid only within array environment");
7213 },
7214 }));
7215 var Mr = fr;
7216 _t({
7217 type: "environment",
7218 names: ["\\begin", "\\end"],
7219 props: { numArgs: 1, argTypes: ["text"] },
7220 handler: function (t, e) {
7221 var r = t.parser,
7222 a = t.funcName,
7223 n = e[0];
7224 if ("ordgroup" !== n.type) throw new o("Invalid environment name", n);
7225 for (var i = "", s = 0; s < n.body.length; ++s)
7226 i += Ce(n.body[s], "textord").text;
7227 if ("\\begin" === a) {
7228 if (!Mr.hasOwnProperty(i))
7229 throw new o("No such environment: " + i, n);
7230 var l = Mr[i],
7231 h = r.parseArguments("\\begin{" + i + "}", l),
7232 m = h.args,
7233 c = h.optArgs,
7234 u = { mode: r.mode, envName: i, parser: r },
7235 p = l.handler(u, m, c);
7236 r.expect("\\end", !1);
7237 var d = r.nextToken,
7238 f = Ce(r.parseFunction(), "environment");
7239 if (f.name !== i)
7240 throw new o(
7241 "Mismatch: \\begin{" + i + "} matched by \\end{" + f.name + "}",
7242 d,
7243 );
7244 return p;
7245 }
7246 return { type: "environment", mode: r.mode, name: i, nameGroup: n };
7247 },
7248 });
7249 var zr = Dt.makeSpan;
7250 function Ar(t, e) {
7251 var r = ee(t.body, e, !0);
7252 return zr([t.mclass], r, e);
7253 }
7254 function Tr(t, e) {
7255 var r,
7256 a = ge(t.body, e);
7257 return "minner" === t.mclass
7258 ? ue.newDocumentFragment(a)
7259 : ("mord" === t.mclass
7260 ? t.isCharacterBox
7261 ? ((r = a[0]).type = "mi")
7262 : (r = new ue.MathNode("mi", a))
7263 : (t.isCharacterBox
7264 ? ((r = a[0]).type = "mo")
7265 : (r = new ue.MathNode("mo", a)),
7266 "mbin" === t.mclass
7267 ? ((r.attributes.lspace = "0.22em"),
7268 (r.attributes.rspace = "0.22em"))
7269 : "mpunct" === t.mclass
7270 ? ((r.attributes.lspace = "0em"),
7271 (r.attributes.rspace = "0.17em"))
7272 : ("mopen" !== t.mclass && "mclose" !== t.mclass) ||
7273 ((r.attributes.lspace = "0em"),
7274 (r.attributes.rspace = "0em"))),
7275 r);
7276 }
7277 _t({
7278 type: "mclass",
7279 names: [
7280 "\\mathord",
7281 "\\mathbin",
7282 "\\mathrel",
7283 "\\mathopen",
7284 "\\mathclose",
7285 "\\mathpunct",
7286 "\\mathinner",
7287 ],
7288 props: { numArgs: 1 },
7289 handler: function (t, e) {
7290 var r = t.parser,
7291 a = t.funcName,
7292 n = e[0];
7293 return {
7294 type: "mclass",
7295 mode: r.mode,
7296 mclass: "m" + a.substr(5),
7297 body: $t(n),
7298 isCharacterBox: c.isCharacterBox(n),
7299 };
7300 },
7301 htmlBuilder: Ar,
7302 mathmlBuilder: Tr,
7303 });
7304 var Br = function (t) {
7305 var e = "ordgroup" === t.type && t.body.length ? t.body[0] : t;
7306 return "atom" !== e.type || ("bin" !== e.family && "rel" !== e.family)
7307 ? "mord"
7308 : "m" + e.family;
7309 };
7310 (_t({
7311 type: "mclass",
7312 names: ["\\@binrel"],
7313 props: { numArgs: 2 },
7314 handler: function (t, e) {
7315 return {
7316 type: "mclass",
7317 mode: t.parser.mode,
7318 mclass: Br(e[0]),
7319 body: [e[1]],
7320 isCharacterBox: c.isCharacterBox(e[1]),
7321 };
7322 },
7323 }),
7324 _t({
7325 type: "mclass",
7326 names: ["\\stackrel", "\\overset", "\\underset"],
7327 props: { numArgs: 2 },
7328 handler: function (t, e) {
7329 var r,
7330 a = t.parser,
7331 n = t.funcName,
7332 i = e[1],
7333 o = e[0];
7334 r = "\\stackrel" !== n ? Br(i) : "mrel";
7335 var s = {
7336 type: "op",
7337 mode: i.mode,
7338 limits: !0,
7339 alwaysHandleSupSub: !0,
7340 parentIsSupSub: !1,
7341 symbol: !1,
7342 suppressBaseShift: "\\stackrel" !== n,
7343 body: $t(i),
7344 },
7345 l = {
7346 type: "supsub",
7347 mode: o.mode,
7348 base: s,
7349 sup: "\\underset" === n ? null : o,
7350 sub: "\\underset" === n ? o : null,
7351 };
7352 return {
7353 type: "mclass",
7354 mode: a.mode,
7355 mclass: r,
7356 body: [l],
7357 isCharacterBox: c.isCharacterBox(l),
7358 };
7359 },
7360 htmlBuilder: Ar,
7361 mathmlBuilder: Tr,
7362 }));
7363 var Cr = function (t, e) {
7364 var r = t.font,
7365 a = e.withFont(r);
7366 return oe(t.body, a);
7367 },
7368 qr = function (t, e) {
7369 var r = t.font,
7370 a = e.withFont(r);
7371 return ve(t.body, a);
7372 },
7373 Nr = {
7374 "\\Bbb": "\\mathbb",
7375 "\\bold": "\\mathbf",
7376 "\\frak": "\\mathfrak",
7377 "\\bm": "\\boldsymbol",
7378 };
7379 (_t({
7380 type: "font",
7381 names: [
7382 "\\mathrm",
7383 "\\mathit",
7384 "\\mathbf",
7385 "\\mathnormal",
7386 "\\mathbb",
7387 "\\mathcal",
7388 "\\mathfrak",
7389 "\\mathscr",
7390 "\\mathsf",
7391 "\\mathtt",
7392 "\\Bbb",
7393 "\\bold",
7394 "\\frak",
7395 ],
7396 props: { numArgs: 1, greediness: 2 },
7397 handler: function (t, e) {
7398 var r = t.parser,
7399 a = t.funcName,
7400 n = e[0],
7401 i = a;
7402 return (
7403 i in Nr && (i = Nr[i]),
7404 { type: "font", mode: r.mode, font: i.slice(1), body: n }
7405 );
7406 },
7407 htmlBuilder: Cr,
7408 mathmlBuilder: qr,
7409 }),
7410 _t({
7411 type: "mclass",
7412 names: ["\\boldsymbol", "\\bm"],
7413 props: { numArgs: 1, greediness: 2 },
7414 handler: function (t, e) {
7415 var r = t.parser,
7416 a = e[0],
7417 n = c.isCharacterBox(a);
7418 return {
7419 type: "mclass",
7420 mode: r.mode,
7421 mclass: Br(a),
7422 body: [
7423 { type: "font", mode: r.mode, font: "boldsymbol", body: a },
7424 ],
7425 isCharacterBox: n,
7426 };
7427 },
7428 }),
7429 _t({
7430 type: "font",
7431 names: ["\\rm", "\\sf", "\\tt", "\\bf", "\\it", "\\cal"],
7432 props: { numArgs: 0, allowedInText: !0 },
7433 handler: function (t, e) {
7434 var r = t.parser,
7435 a = t.funcName,
7436 n = t.breakOnTokenText,
7437 i = r.mode,
7438 o = r.parseExpression(!0, n);
7439 return {
7440 type: "font",
7441 mode: i,
7442 font: "math" + a.slice(1),
7443 body: { type: "ordgroup", mode: r.mode, body: o },
7444 };
7445 },
7446 htmlBuilder: Cr,
7447 mathmlBuilder: qr,
7448 }));
7449 var Ir = function (t, e) {
7450 var r = e;
7451 return (
7452 "display" === t
7453 ? (r = r.id >= w.SCRIPT.id ? r.text() : w.DISPLAY)
7454 : "text" === t && r.size === w.DISPLAY.size
7455 ? (r = w.TEXT)
7456 : "script" === t
7457 ? (r = w.SCRIPT)
7458 : "scriptscript" === t && (r = w.SCRIPTSCRIPT),
7459 r
7460 );
7461 },
7462 Or = function (t, e) {
7463 var r,
7464 a = Ir(t.size, e.style),
7465 n = a.fracNum(),
7466 i = a.fracDen();
7467 r = e.havingStyle(n);
7468 var o = oe(t.numer, r, e);
7469 if (t.continued) {
7470 var s = 8.5 / e.fontMetrics().ptPerEm,
7471 l = 3.5 / e.fontMetrics().ptPerEm;
7472 ((o.height = o.height < s ? s : o.height),
7473 (o.depth = o.depth < l ? l : o.depth));
7474 }
7475 r = e.havingStyle(i);
7476 var h,
7477 m,
7478 c,
7479 u,
7480 p,
7481 d,
7482 f,
7483 g,
7484 x,
7485 v,
7486 b = oe(t.denom, r, e);
7487 if (
7488 (t.hasBarLine
7489 ? (t.barSize
7490 ? ((m = Tt(t.barSize, e)),
7491 (h = Dt.makeLineSpan("frac-line", e, m)))
7492 : (h = Dt.makeLineSpan("frac-line", e)),
7493 (m = h.height),
7494 (c = h.height))
7495 : ((h = null),
7496 (m = 0),
7497 (c = e.fontMetrics().defaultRuleThickness)),
7498 a.size === w.DISPLAY.size || "display" === t.size
7499 ? ((u = e.fontMetrics().num1),
7500 (p = m > 0 ? 3 * c : 7 * c),
7501 (d = e.fontMetrics().denom1))
7502 : (m > 0
7503 ? ((u = e.fontMetrics().num2), (p = c))
7504 : ((u = e.fontMetrics().num3), (p = 3 * c)),
7505 (d = e.fontMetrics().denom2)),
7506 h)
7507 ) {
7508 var y = e.fontMetrics().axisHeight;
7509 (u - o.depth - (y + 0.5 * m) < p &&
7510 (u += p - (u - o.depth - (y + 0.5 * m))),
7511 y - 0.5 * m - (b.height - d) < p &&
7512 (d += p - (y - 0.5 * m - (b.height - d))));
7513 var k = -(y - 0.5 * m);
7514 f = Dt.makeVList(
7515 {
7516 positionType: "individualShift",
7517 children: [
7518 { type: "elem", elem: b, shift: d },
7519 { type: "elem", elem: h, shift: k },
7520 { type: "elem", elem: o, shift: -u },
7521 ],
7522 },
7523 e,
7524 );
7525 } else {
7526 var S = u - o.depth - (b.height - d);
7527 (S < p && ((u += 0.5 * (p - S)), (d += 0.5 * (p - S))),
7528 (f = Dt.makeVList(
7529 {
7530 positionType: "individualShift",
7531 children: [
7532 { type: "elem", elem: b, shift: d },
7533 { type: "elem", elem: o, shift: -u },
7534 ],
7535 },
7536 e,
7537 )));
7538 }
7539 return (
7540 (r = e.havingStyle(a)),
7541 (f.height *= r.sizeMultiplier / e.sizeMultiplier),
7542 (f.depth *= r.sizeMultiplier / e.sizeMultiplier),
7543 (g =
7544 a.size === w.DISPLAY.size
7545 ? e.fontMetrics().delim1
7546 : e.fontMetrics().delim2),
7547 (x =
7548 null == t.leftDelim
7549 ? ie(e, ["mopen"])
7550 : sr(t.leftDelim, g, !0, e.havingStyle(a), t.mode, ["mopen"])),
7551 (v = t.continued
7552 ? Dt.makeSpan([])
7553 : null == t.rightDelim
7554 ? ie(e, ["mclose"])
7555 : sr(t.rightDelim, g, !0, e.havingStyle(a), t.mode, [
7556 "mclose",
7557 ])),
7558 Dt.makeSpan(
7559 ["mord"].concat(r.sizingClasses(e)),
7560 [x, Dt.makeSpan(["mfrac"], [f]), v],
7561 e,
7562 )
7563 );
7564 },
7565 Rr = function (t, e) {
7566 var r = new ue.MathNode("mfrac", [ve(t.numer, e), ve(t.denom, e)]);
7567 if (t.hasBarLine) {
7568 if (t.barSize) {
7569 var a = Tt(t.barSize, e);
7570 r.setAttribute("linethickness", a + "em");
7571 }
7572 } else r.setAttribute("linethickness", "0px");
7573 var n = Ir(t.size, e.style);
7574 if (n.size !== e.style.size) {
7575 r = new ue.MathNode("mstyle", [r]);
7576 var i = n.size === w.DISPLAY.size ? "true" : "false";
7577 (r.setAttribute("displaystyle", i),
7578 r.setAttribute("scriptlevel", "0"));
7579 }
7580 if (null != t.leftDelim || null != t.rightDelim) {
7581 var o = [];
7582 if (null != t.leftDelim) {
7583 var s = new ue.MathNode("mo", [
7584 new ue.TextNode(t.leftDelim.replace("\\", "")),
7585 ]);
7586 (s.setAttribute("fence", "true"), o.push(s));
7587 }
7588 if ((o.push(r), null != t.rightDelim)) {
7589 var l = new ue.MathNode("mo", [
7590 new ue.TextNode(t.rightDelim.replace("\\", "")),
7591 ]);
7592 (l.setAttribute("fence", "true"), o.push(l));
7593 }
7594 return de(o);
7595 }
7596 return r;
7597 };
7598 (_t({
7599 type: "genfrac",
7600 names: [
7601 "\\cfrac",
7602 "\\dfrac",
7603 "\\frac",
7604 "\\tfrac",
7605 "\\dbinom",
7606 "\\binom",
7607 "\\tbinom",
7608 "\\\\atopfrac",
7609 "\\\\bracefrac",
7610 "\\\\brackfrac",
7611 ],
7612 props: { numArgs: 2, greediness: 2 },
7613 handler: function (t, e) {
7614 var r,
7615 a = t.parser,
7616 n = t.funcName,
7617 i = e[0],
7618 o = e[1],
7619 s = null,
7620 l = null,
7621 h = "auto";
7622 switch (n) {
7623 case "\\cfrac":
7624 case "\\dfrac":
7625 case "\\frac":
7626 case "\\tfrac":
7627 r = !0;
7628 break;
7629 case "\\\\atopfrac":
7630 r = !1;
7631 break;
7632 case "\\dbinom":
7633 case "\\binom":
7634 case "\\tbinom":
7635 ((r = !1), (s = "("), (l = ")"));
7636 break;
7637 case "\\\\bracefrac":
7638 ((r = !1), (s = "\\{"), (l = "\\}"));
7639 break;
7640 case "\\\\brackfrac":
7641 ((r = !1), (s = "["), (l = "]"));
7642 break;
7643 default:
7644 throw new Error("Unrecognized genfrac command");
7645 }
7646 switch (n) {
7647 case "\\cfrac":
7648 case "\\dfrac":
7649 case "\\dbinom":
7650 h = "display";
7651 break;
7652 case "\\tfrac":
7653 case "\\tbinom":
7654 h = "text";
7655 }
7656 return {
7657 type: "genfrac",
7658 mode: a.mode,
7659 continued: "\\cfrac" === n,
7660 numer: i,
7661 denom: o,
7662 hasBarLine: r,
7663 leftDelim: s,
7664 rightDelim: l,
7665 size: h,
7666 barSize: null,
7667 };
7668 },
7669 htmlBuilder: Or,
7670 mathmlBuilder: Rr,
7671 }),
7672 _t({
7673 type: "infix",
7674 names: ["\\over", "\\choose", "\\atop", "\\brace", "\\brack"],
7675 props: { numArgs: 0, infix: !0 },
7676 handler: function (t) {
7677 var e,
7678 r = t.parser,
7679 a = t.funcName,
7680 n = t.token;
7681 switch (a) {
7682 case "\\over":
7683 e = "\\frac";
7684 break;
7685 case "\\choose":
7686 e = "\\binom";
7687 break;
7688 case "\\atop":
7689 e = "\\\\atopfrac";
7690 break;
7691 case "\\brace":
7692 e = "\\\\bracefrac";
7693 break;
7694 case "\\brack":
7695 e = "\\\\brackfrac";
7696 break;
7697 default:
7698 throw new Error("Unrecognized infix genfrac command");
7699 }
7700 return { type: "infix", mode: r.mode, replaceWith: e, token: n };
7701 },
7702 }));
7703 var Er = ["display", "text", "script", "scriptscript"],
7704 Lr = function (t) {
7705 var e = null;
7706 return (t.length > 0 && (e = "." === (e = t) ? null : e), e);
7707 };
7708 (_t({
7709 type: "genfrac",
7710 names: ["\\genfrac"],
7711 props: {
7712 numArgs: 6,
7713 greediness: 6,
7714 argTypes: ["math", "math", "size", "text", "math", "math"],
7715 },
7716 handler: function (t, e) {
7717 var r,
7718 a = t.parser,
7719 n = e[4],
7720 i = e[5],
7721 o =
7722 "atom" === e[0].type && "open" === e[0].family
7723 ? Lr(e[0].text)
7724 : null,
7725 s =
7726 "atom" === e[1].type && "close" === e[1].family
7727 ? Lr(e[1].text)
7728 : null,
7729 l = Ce(e[2], "size"),
7730 h = null;
7731 r = !!l.isBlank || (h = l.value).number > 0;
7732 var m = "auto",
7733 c = e[3];
7734 if ("ordgroup" === c.type) {
7735 if (c.body.length > 0) {
7736 var u = Ce(c.body[0], "textord");
7737 m = Er[Number(u.text)];
7738 }
7739 } else ((c = Ce(c, "textord")), (m = Er[Number(c.text)]));
7740 return {
7741 type: "genfrac",
7742 mode: a.mode,
7743 numer: n,
7744 denom: i,
7745 continued: !1,
7746 hasBarLine: r,
7747 barSize: h,
7748 leftDelim: o,
7749 rightDelim: s,
7750 size: m,
7751 };
7752 },
7753 htmlBuilder: Or,
7754 mathmlBuilder: Rr,
7755 }),
7756 _t({
7757 type: "infix",
7758 names: ["\\above"],
7759 props: { numArgs: 1, argTypes: ["size"], infix: !0 },
7760 handler: function (t, e) {
7761 var r = t.parser,
7762 a = (t.funcName, t.token);
7763 return {
7764 type: "infix",
7765 mode: r.mode,
7766 replaceWith: "\\\\abovefrac",
7767 size: Ce(e[0], "size").value,
7768 token: a,
7769 };
7770 },
7771 }),
7772 _t({
7773 type: "genfrac",
7774 names: ["\\\\abovefrac"],
7775 props: { numArgs: 3, argTypes: ["math", "size", "math"] },
7776 handler: function (t, e) {
7777 var r = t.parser,
7778 a = (t.funcName, e[0]),
7779 n = (function (t) {
7780 if (!t)
7781 throw new Error("Expected non-null, but got " + String(t));
7782 return t;
7783 })(Ce(e[1], "infix").size),
7784 i = e[2],
7785 o = n.number > 0;
7786 return {
7787 type: "genfrac",
7788 mode: r.mode,
7789 numer: a,
7790 denom: i,
7791 continued: !1,
7792 hasBarLine: o,
7793 barSize: n,
7794 leftDelim: null,
7795 rightDelim: null,
7796 size: "auto",
7797 };
7798 },
7799 htmlBuilder: Or,
7800 mathmlBuilder: Rr,
7801 }));
7802 var Pr = function (t, e) {
7803 var r,
7804 a,
7805 n = e.style;
7806 "supsub" === t.type
7807 ? ((r = t.sup
7808 ? oe(t.sup, e.havingStyle(n.sup()), e)
7809 : oe(t.sub, e.havingStyle(n.sub()), e)),
7810 (a = Ce(t.base, "horizBrace")))
7811 : (a = Ce(t, "horizBrace"));
7812 var i,
7813 o = oe(a.base, e.havingBaseStyle(w.DISPLAY)),
7814 s = Be(a, e);
7815 if (
7816 (a.isOver
7817 ? (i = Dt.makeVList(
7818 {
7819 positionType: "firstBaseline",
7820 children: [
7821 { type: "elem", elem: o },
7822 { type: "kern", size: 0.1 },
7823 { type: "elem", elem: s },
7824 ],
7825 },
7826 e,
7827 )).children[0].children[0].children[1].classes.push("svg-align")
7828 : (i = Dt.makeVList(
7829 {
7830 positionType: "bottom",
7831 positionData: o.depth + 0.1 + s.height,
7832 children: [
7833 { type: "elem", elem: s },
7834 { type: "kern", size: 0.1 },
7835 { type: "elem", elem: o },
7836 ],
7837 },
7838 e,
7839 )).children[0].children[0].children[0].classes.push("svg-align"),
7840 r)
7841 ) {
7842 var l = Dt.makeSpan(["mord", a.isOver ? "mover" : "munder"], [i], e);
7843 i = a.isOver
7844 ? Dt.makeVList(
7845 {
7846 positionType: "firstBaseline",
7847 children: [
7848 { type: "elem", elem: l },
7849 { type: "kern", size: 0.2 },
7850 { type: "elem", elem: r },
7851 ],
7852 },
7853 e,
7854 )
7855 : Dt.makeVList(
7856 {
7857 positionType: "bottom",
7858 positionData: l.depth + 0.2 + r.height + r.depth,
7859 children: [
7860 { type: "elem", elem: r },
7861 { type: "kern", size: 0.2 },
7862 { type: "elem", elem: l },
7863 ],
7864 },
7865 e,
7866 );
7867 }
7868 return Dt.makeSpan(["mord", a.isOver ? "mover" : "munder"], [i], e);
7869 };
7870 (_t({
7871 type: "horizBrace",
7872 names: ["\\overbrace", "\\underbrace"],
7873 props: { numArgs: 1 },
7874 handler: function (t, e) {
7875 var r = t.parser,
7876 a = t.funcName;
7877 return {
7878 type: "horizBrace",
7879 mode: r.mode,
7880 label: a,
7881 isOver: /^\\over/.test(a),
7882 base: e[0],
7883 };
7884 },
7885 htmlBuilder: Pr,
7886 mathmlBuilder: function (t, e) {
7887 var r = Te(t.label);
7888 return new ue.MathNode(t.isOver ? "mover" : "munder", [
7889 ve(t.base, e),
7890 r,
7891 ]);
7892 },
7893 }),
7894 _t({
7895 type: "href",
7896 names: ["\\href"],
7897 props: {
7898 numArgs: 2,
7899 argTypes: ["url", "original"],
7900 allowedInText: !0,
7901 },
7902 handler: function (t, e) {
7903 var r = t.parser,
7904 a = e[1],
7905 n = Ce(e[0], "url").url;
7906 return r.settings.isTrusted({ command: "\\href", url: n })
7907 ? { type: "href", mode: r.mode, href: n, body: $t(a) }
7908 : r.formatUnsupportedCmd("\\href");
7909 },
7910 htmlBuilder: function (t, e) {
7911 var r = ee(t.body, e, !1);
7912 return Dt.makeAnchor(t.href, [], r, e);
7913 },
7914 mathmlBuilder: function (t, e) {
7915 var r = xe(t.body, e);
7916 return (
7917 r instanceof me || (r = new me("mrow", [r])),
7918 r.setAttribute("href", t.href),
7919 r
7920 );
7921 },
7922 }),
7923 _t({
7924 type: "href",
7925 names: ["\\url"],
7926 props: { numArgs: 1, argTypes: ["url"], allowedInText: !0 },
7927 handler: function (t, e) {
7928 var r = t.parser,
7929 a = Ce(e[0], "url").url;
7930 if (!r.settings.isTrusted({ command: "\\url", url: a }))
7931 return r.formatUnsupportedCmd("\\url");
7932 for (var n = [], i = 0; i < a.length; i++) {
7933 var o = a[i];
7934 ("~" === o && (o = "\\textasciitilde"),
7935 n.push({ type: "textord", mode: "text", text: o }));
7936 }
7937 var s = { type: "text", mode: r.mode, font: "\\texttt", body: n };
7938 return { type: "href", mode: r.mode, href: a, body: $t(s) };
7939 },
7940 }),
7941 _t({
7942 type: "html",
7943 names: ["\\htmlClass", "\\htmlId", "\\htmlStyle", "\\htmlData"],
7944 props: {
7945 numArgs: 2,
7946 argTypes: ["raw", "original"],
7947 allowedInText: !0,
7948 },
7949 handler: function (t, e) {
7950 var r,
7951 a = t.parser,
7952 n = t.funcName,
7953 i = (t.token, Ce(e[0], "raw").string),
7954 s = e[1];
7955 a.settings.strict &&
7956 a.settings.reportNonstrict(
7957 "htmlExtension",
7958 "HTML extension is disabled on strict mode",
7959 );
7960 var l = {};
7961 switch (n) {
7962 case "\\htmlClass":
7963 ((l.class = i), (r = { command: "\\htmlClass", class: i }));
7964 break;
7965 case "\\htmlId":
7966 ((l.id = i), (r = { command: "\\htmlId", id: i }));
7967 break;
7968 case "\\htmlStyle":
7969 ((l.style = i), (r = { command: "\\htmlStyle", style: i }));
7970 break;
7971 case "\\htmlData":
7972 for (var h = i.split(","), m = 0; m < h.length; m++) {
7973 var c = h[m].split("=");
7974 if (2 !== c.length)
7975 throw new o("Error parsing key-value for \\htmlData");
7976 l["data-" + c[0].trim()] = c[1].trim();
7977 }
7978 r = { command: "\\htmlData", attributes: l };
7979 break;
7980 default:
7981 throw new Error("Unrecognized html command");
7982 }
7983 return a.settings.isTrusted(r)
7984 ? { type: "html", mode: a.mode, attributes: l, body: $t(s) }
7985 : a.formatUnsupportedCmd(n);
7986 },
7987 htmlBuilder: function (t, e) {
7988 var r = ee(t.body, e, !1),
7989 a = ["enclosing"];
7990 t.attributes.class &&
7991 a.push.apply(a, t.attributes.class.trim().split(/\s+/));
7992 var n = Dt.makeSpan(a, r, e);
7993 for (var i in t.attributes)
7994 "class" !== i &&
7995 t.attributes.hasOwnProperty(i) &&
7996 n.setAttribute(i, t.attributes[i]);
7997 return n;
7998 },
7999 mathmlBuilder: function (t, e) {
8000 return xe(t.body, e);
8001 },
8002 }),
8003 _t({
8004 type: "htmlmathml",
8005 names: ["\\html@mathml"],
8006 props: { numArgs: 2, allowedInText: !0 },
8007 handler: function (t, e) {
8008 return {
8009 type: "htmlmathml",
8010 mode: t.parser.mode,
8011 html: $t(e[0]),
8012 mathml: $t(e[1]),
8013 };
8014 },
8015 htmlBuilder: function (t, e) {
8016 var r = ee(t.html, e, !1);
8017 return Dt.makeFragment(r);
8018 },
8019 mathmlBuilder: function (t, e) {
8020 return xe(t.mathml, e);
8021 },
8022 }));
8023 var Dr = function (t) {
8024 if (/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(t))
8025 return { number: +t, unit: "bp" };
8026 var e = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(t);
8027 if (!e) throw new o("Invalid size: '" + t + "' in \\includegraphics");
8028 var r = { number: +(e[1] + e[2]), unit: e[3] };
8029 if (!At(r))
8030 throw new o("Invalid unit: '" + r.unit + "' in \\includegraphics.");
8031 return r;
8032 };
8033 (_t({
8034 type: "includegraphics",
8035 names: ["\\includegraphics"],
8036 props: {
8037 numArgs: 1,
8038 numOptionalArgs: 1,
8039 argTypes: ["raw", "url"],
8040 allowedInText: !1,
8041 },
8042 handler: function (t, e, r) {
8043 var a = t.parser,
8044 n = { number: 0, unit: "em" },
8045 i = { number: 0.9, unit: "em" },
8046 s = { number: 0, unit: "em" },
8047 l = "";
8048 if (r[0])
8049 for (
8050 var h = Ce(r[0], "raw").string.split(","), m = 0;
8051 m < h.length;
8052 m++
8053 ) {
8054 var c = h[m].split("=");
8055 if (2 === c.length) {
8056 var u = c[1].trim();
8057 switch (c[0].trim()) {
8058 case "alt":
8059 l = u;
8060 break;
8061 case "width":
8062 n = Dr(u);
8063 break;
8064 case "height":
8065 i = Dr(u);
8066 break;
8067 case "totalheight":
8068 s = Dr(u);
8069 break;
8070 default:
8071 throw new o(
8072 "Invalid key: '" + c[0] + "' in \\includegraphics.",
8073 );
8074 }
8075 }
8076 }
8077 var p = Ce(e[0], "url").url;
8078 return (
8079 "" === l &&
8080 (l = (l = (l = p).replace(/^.*[\\/]/, "")).substring(
8081 0,
8082 l.lastIndexOf("."),
8083 )),
8084 a.settings.isTrusted({ command: "\\includegraphics", url: p })
8085 ? {
8086 type: "includegraphics",
8087 mode: a.mode,
8088 alt: l,
8089 width: n,
8090 height: i,
8091 totalheight: s,
8092 src: p,
8093 }
8094 : a.formatUnsupportedCmd("\\includegraphics")
8095 );
8096 },
8097 htmlBuilder: function (t, e) {
8098 var r = Tt(t.height, e),
8099 a = 0;
8100 t.totalheight.number > 0 &&
8101 ((a = Tt(t.totalheight, e) - r), (a = Number(a.toFixed(2))));
8102 var n = 0;
8103 t.width.number > 0 && (n = Tt(t.width, e));
8104 var i = { height: r + a + "em" };
8105 (n > 0 && (i.width = n + "em"),
8106 a > 0 && (i.verticalAlign = -a + "em"));
8107 var o = new O(t.src, t.alt, i);
8108 return ((o.height = r), (o.depth = a), o);
8109 },
8110 mathmlBuilder: function (t, e) {
8111 var r = new ue.MathNode("mglyph", []);
8112 r.setAttribute("alt", t.alt);
8113 var a = Tt(t.height, e),
8114 n = 0;
8115 if (
8116 (t.totalheight.number > 0 &&
8117 ((n = (n = Tt(t.totalheight, e) - a).toFixed(2)),
8118 r.setAttribute("valign", "-" + n + "em")),
8119 r.setAttribute("height", a + n + "em"),
8120 t.width.number > 0)
8121 ) {
8122 var i = Tt(t.width, e);
8123 r.setAttribute("width", i + "em");
8124 }
8125 return (r.setAttribute("src", t.src), r);
8126 },
8127 }),
8128 _t({
8129 type: "kern",
8130 names: ["\\kern", "\\mkern", "\\hskip", "\\mskip"],
8131 props: { numArgs: 1, argTypes: ["size"], allowedInText: !0 },
8132 handler: function (t, e) {
8133 var r = t.parser,
8134 a = t.funcName,
8135 n = Ce(e[0], "size");
8136 if (r.settings.strict) {
8137 var i = "m" === a[1],
8138 o = "mu" === n.value.unit;
8139 i
8140 ? (o ||
8141 r.settings.reportNonstrict(
8142 "mathVsTextUnits",
8143 "LaTeX's " +
8144 a +
8145 " supports only mu units, not " +
8146 n.value.unit +
8147 " units",
8148 ),
8149 "math" !== r.mode &&
8150 r.settings.reportNonstrict(
8151 "mathVsTextUnits",
8152 "LaTeX's " + a + " works only in math mode",
8153 ))
8154 : o &&
8155 r.settings.reportNonstrict(
8156 "mathVsTextUnits",
8157 "LaTeX's " + a + " doesn't support mu units",
8158 );
8159 }
8160 return { type: "kern", mode: r.mode, dimension: n.value };
8161 },
8162 htmlBuilder: function (t, e) {
8163 return Dt.makeGlue(t.dimension, e);
8164 },
8165 mathmlBuilder: function (t, e) {
8166 var r = Tt(t.dimension, e);
8167 return new ue.SpaceNode(r);
8168 },
8169 }),
8170 _t({
8171 type: "lap",
8172 names: ["\\mathllap", "\\mathrlap", "\\mathclap"],
8173 props: { numArgs: 1, allowedInText: !0 },
8174 handler: function (t, e) {
8175 var r = t.parser,
8176 a = t.funcName,
8177 n = e[0];
8178 return {
8179 type: "lap",
8180 mode: r.mode,
8181 alignment: a.slice(5),
8182 body: n,
8183 };
8184 },
8185 htmlBuilder: function (t, e) {
8186 var r;
8187 "clap" === t.alignment
8188 ? ((r = Dt.makeSpan([], [oe(t.body, e)])),
8189 (r = Dt.makeSpan(["inner"], [r], e)))
8190 : (r = Dt.makeSpan(["inner"], [oe(t.body, e)]));
8191 var a = Dt.makeSpan(["fix"], []),
8192 n = Dt.makeSpan([t.alignment], [r, a], e),
8193 i = Dt.makeSpan(["strut"]);
8194 return (
8195 (i.style.height = n.height + n.depth + "em"),
8196 (i.style.verticalAlign = -n.depth + "em"),
8197 n.children.unshift(i),
8198 (n = Dt.makeSpan(["thinbox"], [n], e)),
8199 Dt.makeSpan(["mord", "vbox"], [n], e)
8200 );
8201 },
8202 mathmlBuilder: function (t, e) {
8203 var r = new ue.MathNode("mpadded", [ve(t.body, e)]);
8204 if ("rlap" !== t.alignment) {
8205 var a = "llap" === t.alignment ? "-1" : "-0.5";
8206 r.setAttribute("lspace", a + "width");
8207 }
8208 return (r.setAttribute("width", "0px"), r);
8209 },
8210 }),
8211 _t({
8212 type: "styling",
8213 names: ["\\(", "$"],
8214 props: { numArgs: 0, allowedInText: !0, allowedInMath: !1 },
8215 handler: function (t, e) {
8216 var r = t.funcName,
8217 a = t.parser,
8218 n = a.mode;
8219 a.switchMode("math");
8220 var i = "\\(" === r ? "\\)" : "$",
8221 o = a.parseExpression(!1, i);
8222 return (
8223 a.expect(i),
8224 a.switchMode(n),
8225 { type: "styling", mode: a.mode, style: "text", body: o }
8226 );
8227 },
8228 }),
8229 _t({
8230 type: "text",
8231 names: ["\\)", "\\]"],
8232 props: { numArgs: 0, allowedInText: !0, allowedInMath: !1 },
8233 handler: function (t, e) {
8234 throw new o("Mismatched " + t.funcName);
8235 },
8236 }));
8237 var Hr = function (t, e) {
8238 switch (e.style.size) {
8239 case w.DISPLAY.size:
8240 return t.display;
8241 case w.TEXT.size:
8242 return t.text;
8243 case w.SCRIPT.size:
8244 return t.script;
8245 case w.SCRIPTSCRIPT.size:
8246 return t.scriptscript;
8247 default:
8248 return t.text;
8249 }
8250 };
8251 _t({
8252 type: "mathchoice",
8253 names: ["\\mathchoice"],
8254 props: { numArgs: 4 },
8255 handler: function (t, e) {
8256 return {
8257 type: "mathchoice",
8258 mode: t.parser.mode,
8259 display: $t(e[0]),
8260 text: $t(e[1]),
8261 script: $t(e[2]),
8262 scriptscript: $t(e[3]),
8263 };
8264 },
8265 htmlBuilder: function (t, e) {
8266 var r = Hr(t, e),
8267 a = ee(r, e, !1);
8268 return Dt.makeFragment(a);
8269 },
8270 mathmlBuilder: function (t, e) {
8271 var r = Hr(t, e);
8272 return xe(r, e);
8273 },
8274 });
8275 var Fr = function (t, e, r, a, n, i, o) {
8276 var s, l, h;
8277 if (((t = Dt.makeSpan([], [t])), e)) {
8278 var m = oe(e, a.havingStyle(n.sup()), a);
8279 l = {
8280 elem: m,
8281 kern: Math.max(
8282 a.fontMetrics().bigOpSpacing1,
8283 a.fontMetrics().bigOpSpacing3 - m.depth,
8284 ),
8285 };
8286 }
8287 if (r) {
8288 var c = oe(r, a.havingStyle(n.sub()), a);
8289 s = {
8290 elem: c,
8291 kern: Math.max(
8292 a.fontMetrics().bigOpSpacing2,
8293 a.fontMetrics().bigOpSpacing4 - c.height,
8294 ),
8295 };
8296 }
8297 if (l && s) {
8298 var u =
8299 a.fontMetrics().bigOpSpacing5 +
8300 s.elem.height +
8301 s.elem.depth +
8302 s.kern +
8303 t.depth +
8304 o;
8305 h = Dt.makeVList(
8306 {
8307 positionType: "bottom",
8308 positionData: u,
8309 children: [
8310 { type: "kern", size: a.fontMetrics().bigOpSpacing5 },
8311 { type: "elem", elem: s.elem, marginLeft: -i + "em" },
8312 { type: "kern", size: s.kern },
8313 { type: "elem", elem: t },
8314 { type: "kern", size: l.kern },
8315 { type: "elem", elem: l.elem, marginLeft: i + "em" },
8316 { type: "kern", size: a.fontMetrics().bigOpSpacing5 },
8317 ],
8318 },
8319 a,
8320 );
8321 } else if (s) {
8322 var p = t.height - o;
8323 h = Dt.makeVList(
8324 {
8325 positionType: "top",
8326 positionData: p,
8327 children: [
8328 { type: "kern", size: a.fontMetrics().bigOpSpacing5 },
8329 { type: "elem", elem: s.elem, marginLeft: -i + "em" },
8330 { type: "kern", size: s.kern },
8331 { type: "elem", elem: t },
8332 ],
8333 },
8334 a,
8335 );
8336 } else {
8337 if (!l) return t;
8338 var d = t.depth + o;
8339 h = Dt.makeVList(
8340 {
8341 positionType: "bottom",
8342 positionData: d,
8343 children: [
8344 { type: "elem", elem: t },
8345 { type: "kern", size: l.kern },
8346 { type: "elem", elem: l.elem, marginLeft: i + "em" },
8347 { type: "kern", size: a.fontMetrics().bigOpSpacing5 },
8348 ],
8349 },
8350 a,
8351 );
8352 }
8353 return Dt.makeSpan(["mop", "op-limits"], [h], a);
8354 },
8355 Vr = ["\\smallint"],
8356 Ur = function (t, e) {
8357 var r,
8358 a,
8359 n,
8360 i = !1;
8361 "supsub" === t.type
8362 ? ((r = t.sup), (a = t.sub), (n = Ce(t.base, "op")), (i = !0))
8363 : (n = Ce(t, "op"));
8364 var o,
8365 s = e.style,
8366 l = !1;
8367 if (
8368 (s.size === w.DISPLAY.size &&
8369 n.symbol &&
8370 !c.contains(Vr, n.name) &&
8371 (l = !0),
8372 n.symbol)
8373 ) {
8374 var h = l ? "Size2-Regular" : "Size1-Regular",
8375 m = "";
8376 if (
8377 (("\\oiint" !== n.name && "\\oiiint" !== n.name) ||
8378 ((m = n.name.substr(1)),
8379 (n.name = "oiint" === m ? "\\iint" : "\\iiint")),
8380 (o = Dt.makeSymbol(n.name, h, "math", e, [
8381 "mop",
8382 "op-symbol",
8383 l ? "large-op" : "small-op",
8384 ])),
8385 m.length > 0)
8386 ) {
8387 var u = o.italic,
8388 p = Dt.staticSvg(m + "Size" + (l ? "2" : "1"), e);
8389 ((o = Dt.makeVList(
8390 {
8391 positionType: "individualShift",
8392 children: [
8393 { type: "elem", elem: o, shift: 0 },
8394 { type: "elem", elem: p, shift: l ? 0.08 : 0 },
8395 ],
8396 },
8397 e,
8398 )),
8399 (n.name = "\\" + m),
8400 o.classes.unshift("mop"),
8401 (o.italic = u));
8402 }
8403 } else if (n.body) {
8404 var d = ee(n.body, e, !0);
8405 1 === d.length && d[0] instanceof E
8406 ? ((o = d[0]).classes[0] = "mop")
8407 : (o = Dt.makeSpan(["mop"], Dt.tryCombineChars(d), e));
8408 } else {
8409 for (var f = [], g = 1; g < n.name.length; g++)
8410 f.push(Dt.mathsym(n.name[g], n.mode, e));
8411 o = Dt.makeSpan(["mop"], f, e);
8412 }
8413 var x = 0,
8414 v = 0;
8415 return (
8416 (o instanceof E || "\\oiint" === n.name || "\\oiiint" === n.name) &&
8417 !n.suppressBaseShift &&
8418 ((x = (o.height - o.depth) / 2 - e.fontMetrics().axisHeight),
8419 (v = o.italic)),
8420 i
8421 ? Fr(o, r, a, e, s, v, x)
8422 : (x &&
8423 ((o.style.position = "relative"), (o.style.top = x + "em")),
8424 o)
8425 );
8426 },
8427 Gr = function (t, e) {
8428 var r;
8429 if (t.symbol)
8430 ((r = new me("mo", [pe(t.name, t.mode)])),
8431 c.contains(Vr, t.name) && r.setAttribute("largeop", "false"));
8432 else if (t.body) r = new me("mo", ge(t.body, e));
8433 else {
8434 r = new me("mi", [new ce(t.name.slice(1))]);
8435 var a = new me("mo", [pe("\u2061", "text")]);
8436 r = t.parentIsSupSub ? new me("mo", [r, a]) : he([r, a]);
8437 }
8438 return r;
8439 },
8440 Yr = {
8441 "\u220f": "\\prod",
8442 "\u2210": "\\coprod",
8443 "\u2211": "\\sum",
8444 "\u22c0": "\\bigwedge",
8445 "\u22c1": "\\bigvee",
8446 "\u22c2": "\\bigcap",
8447 "\u22c3": "\\bigcup",
8448 "\u2a00": "\\bigodot",
8449 "\u2a01": "\\bigoplus",
8450 "\u2a02": "\\bigotimes",
8451 "\u2a04": "\\biguplus",
8452 "\u2a06": "\\bigsqcup",
8453 };
8454 (_t({
8455 type: "op",
8456 names: [
8457 "\\coprod",
8458 "\\bigvee",
8459 "\\bigwedge",
8460 "\\biguplus",
8461 "\\bigcap",
8462 "\\bigcup",
8463 "\\intop",
8464 "\\prod",
8465 "\\sum",
8466 "\\bigotimes",
8467 "\\bigoplus",
8468 "\\bigodot",
8469 "\\bigsqcup",
8470 "\\smallint",
8471 "\u220f",
8472 "\u2210",
8473 "\u2211",
8474 "\u22c0",
8475 "\u22c1",
8476 "\u22c2",
8477 "\u22c3",
8478 "\u2a00",
8479 "\u2a01",
8480 "\u2a02",
8481 "\u2a04",
8482 "\u2a06",
8483 ],
8484 props: { numArgs: 0 },
8485 handler: function (t, e) {
8486 var r = t.parser,
8487 a = t.funcName;
8488 return (
8489 1 === a.length && (a = Yr[a]),
8490 {
8491 type: "op",
8492 mode: r.mode,
8493 limits: !0,
8494 parentIsSupSub: !1,
8495 symbol: !0,
8496 name: a,
8497 }
8498 );
8499 },
8500 htmlBuilder: Ur,
8501 mathmlBuilder: Gr,
8502 }),
8503 _t({
8504 type: "op",
8505 names: ["\\mathop"],
8506 props: { numArgs: 1 },
8507 handler: function (t, e) {
8508 var r = t.parser,
8509 a = e[0];
8510 return {
8511 type: "op",
8512 mode: r.mode,
8513 limits: !1,
8514 parentIsSupSub: !1,
8515 symbol: !1,
8516 body: $t(a),
8517 };
8518 },
8519 htmlBuilder: Ur,
8520 mathmlBuilder: Gr,
8521 }));
8522 var Wr = {
8523 "\u222b": "\\int",
8524 "\u222c": "\\iint",
8525 "\u222d": "\\iiint",
8526 "\u222e": "\\oint",
8527 "\u222f": "\\oiint",
8528 "\u2230": "\\oiiint",
8529 };
8530 (_t({
8531 type: "op",
8532 names: [
8533 "\\arcsin",
8534 "\\arccos",
8535 "\\arctan",
8536 "\\arctg",
8537 "\\arcctg",
8538 "\\arg",
8539 "\\ch",
8540 "\\cos",
8541 "\\cosec",
8542 "\\cosh",
8543 "\\cot",
8544 "\\cotg",
8545 "\\coth",
8546 "\\csc",
8547 "\\ctg",
8548 "\\cth",
8549 "\\deg",
8550 "\\dim",
8551 "\\exp",
8552 "\\hom",
8553 "\\ker",
8554 "\\lg",
8555 "\\ln",
8556 "\\log",
8557 "\\sec",
8558 "\\sin",
8559 "\\sinh",
8560 "\\sh",
8561 "\\tan",
8562 "\\tanh",
8563 "\\tg",
8564 "\\th",
8565 ],
8566 props: { numArgs: 0 },
8567 handler: function (t) {
8568 var e = t.parser,
8569 r = t.funcName;
8570 return {
8571 type: "op",
8572 mode: e.mode,
8573 limits: !1,
8574 parentIsSupSub: !1,
8575 symbol: !1,
8576 name: r,
8577 };
8578 },
8579 htmlBuilder: Ur,
8580 mathmlBuilder: Gr,
8581 }),
8582 _t({
8583 type: "op",
8584 names: [
8585 "\\det",
8586 "\\gcd",
8587 "\\inf",
8588 "\\lim",
8589 "\\max",
8590 "\\min",
8591 "\\Pr",
8592 "\\sup",
8593 ],
8594 props: { numArgs: 0 },
8595 handler: function (t) {
8596 var e = t.parser,
8597 r = t.funcName;
8598 return {
8599 type: "op",
8600 mode: e.mode,
8601 limits: !0,
8602 parentIsSupSub: !1,
8603 symbol: !1,
8604 name: r,
8605 };
8606 },
8607 htmlBuilder: Ur,
8608 mathmlBuilder: Gr,
8609 }),
8610 _t({
8611 type: "op",
8612 names: [
8613 "\\int",
8614 "\\iint",
8615 "\\iiint",
8616 "\\oint",
8617 "\\oiint",
8618 "\\oiiint",
8619 "\u222b",
8620 "\u222c",
8621 "\u222d",
8622 "\u222e",
8623 "\u222f",
8624 "\u2230",
8625 ],
8626 props: { numArgs: 0 },
8627 handler: function (t) {
8628 var e = t.parser,
8629 r = t.funcName;
8630 return (
8631 1 === r.length && (r = Wr[r]),
8632 {
8633 type: "op",
8634 mode: e.mode,
8635 limits: !1,
8636 parentIsSupSub: !1,
8637 symbol: !0,
8638 name: r,
8639 }
8640 );
8641 },
8642 htmlBuilder: Ur,
8643 mathmlBuilder: Gr,
8644 }));
8645 var Xr = function (t, e) {
8646 var r,
8647 a,
8648 n,
8649 i,
8650 o = !1;
8651 if (
8652 ("supsub" === t.type
8653 ? ((r = t.sup),
8654 (a = t.sub),
8655 (n = Ce(t.base, "operatorname")),
8656 (o = !0))
8657 : (n = Ce(t, "operatorname")),
8658 n.body.length > 0)
8659 ) {
8660 for (
8661 var s = n.body.map(function (t) {
8662 var e = t.text;
8663 return "string" == typeof e
8664 ? { type: "textord", mode: t.mode, text: e }
8665 : t;
8666 }),
8667 l = ee(s, e.withFont("mathrm"), !0),
8668 h = 0;
8669 h < l.length;
8670 h++
8671 ) {
8672 var m = l[h];
8673 m instanceof E &&
8674 (m.text = m.text.replace(/\u2212/, "-").replace(/\u2217/, "*"));
8675 }
8676 i = Dt.makeSpan(["mop"], l, e);
8677 } else i = Dt.makeSpan(["mop"], [], e);
8678 return o ? Fr(i, r, a, e, e.style, 0, 0) : i;
8679 };
8680 function _r(t, e, r) {
8681 for (
8682 var a = ee(t, e, !1), n = e.sizeMultiplier / r.sizeMultiplier, i = 0;
8683 i < a.length;
8684 i++
8685 ) {
8686 var o = a[i].classes.indexOf("sizing");
8687 (o < 0
8688 ? Array.prototype.push.apply(a[i].classes, e.sizingClasses(r))
8689 : a[i].classes[o + 1] === "reset-size" + e.size &&
8690 (a[i].classes[o + 1] = "reset-size" + r.size),
8691 (a[i].height *= n),
8692 (a[i].depth *= n));
8693 }
8694 return Dt.makeFragment(a);
8695 }
8696 (_t({
8697 type: "operatorname",
8698 names: ["\\operatorname", "\\operatorname*"],
8699 props: { numArgs: 1 },
8700 handler: function (t, e) {
8701 var r = t.parser,
8702 a = t.funcName,
8703 n = e[0];
8704 return {
8705 type: "operatorname",
8706 mode: r.mode,
8707 body: $t(n),
8708 alwaysHandleSupSub: "\\operatorname*" === a,
8709 limits: !1,
8710 parentIsSupSub: !1,
8711 };
8712 },
8713 htmlBuilder: Xr,
8714 mathmlBuilder: function (t, e) {
8715 for (
8716 var r = ge(t.body, e.withFont("mathrm")), a = !0, n = 0;
8717 n < r.length;
8718 n++
8719 ) {
8720 var i = r[n];
8721 if (i instanceof ue.SpaceNode);
8722 else if (i instanceof ue.MathNode)
8723 switch (i.type) {
8724 case "mi":
8725 case "mn":
8726 case "ms":
8727 case "mspace":
8728 case "mtext":
8729 break;
8730 case "mo":
8731 var o = i.children[0];
8732 1 === i.children.length && o instanceof ue.TextNode
8733 ? (o.text = o.text
8734 .replace(/\u2212/, "-")
8735 .replace(/\u2217/, "*"))
8736 : (a = !1);
8737 break;
8738 default:
8739 a = !1;
8740 }
8741 else a = !1;
8742 }
8743 if (a) {
8744 var s = r
8745 .map(function (t) {
8746 return t.toText();
8747 })
8748 .join("");
8749 r = [new ue.TextNode(s)];
8750 }
8751 var l = new ue.MathNode("mi", r);
8752 l.setAttribute("mathvariant", "normal");
8753 var h = new ue.MathNode("mo", [pe("\u2061", "text")]);
8754 return t.parentIsSupSub
8755 ? new ue.MathNode("mo", [l, h])
8756 : ue.newDocumentFragment([l, h]);
8757 },
8758 }),
8759 jt({
8760 type: "ordgroup",
8761 htmlBuilder: function (t, e) {
8762 return t.semisimple
8763 ? Dt.makeFragment(ee(t.body, e, !1))
8764 : Dt.makeSpan(["mord"], ee(t.body, e, !0), e);
8765 },
8766 mathmlBuilder: function (t, e) {
8767 return xe(t.body, e, !0);
8768 },
8769 }),
8770 _t({
8771 type: "overline",
8772 names: ["\\overline"],
8773 props: { numArgs: 1 },
8774 handler: function (t, e) {
8775 var r = t.parser,
8776 a = e[0];
8777 return { type: "overline", mode: r.mode, body: a };
8778 },
8779 htmlBuilder: function (t, e) {
8780 var r = oe(t.body, e.havingCrampedStyle()),
8781 a = Dt.makeLineSpan("overline-line", e),
8782 n = e.fontMetrics().defaultRuleThickness,
8783 i = Dt.makeVList(
8784 {
8785 positionType: "firstBaseline",
8786 children: [
8787 { type: "elem", elem: r },
8788 { type: "kern", size: 3 * n },
8789 { type: "elem", elem: a },
8790 { type: "kern", size: n },
8791 ],
8792 },
8793 e,
8794 );
8795 return Dt.makeSpan(["mord", "overline"], [i], e);
8796 },
8797 mathmlBuilder: function (t, e) {
8798 var r = new ue.MathNode("mo", [new ue.TextNode("\u203e")]);
8799 r.setAttribute("stretchy", "true");
8800 var a = new ue.MathNode("mover", [ve(t.body, e), r]);
8801 return (a.setAttribute("accent", "true"), a);
8802 },
8803 }),
8804 _t({
8805 type: "phantom",
8806 names: ["\\phantom"],
8807 props: { numArgs: 1, allowedInText: !0 },
8808 handler: function (t, e) {
8809 var r = t.parser,
8810 a = e[0];
8811 return { type: "phantom", mode: r.mode, body: $t(a) };
8812 },
8813 htmlBuilder: function (t, e) {
8814 var r = ee(t.body, e.withPhantom(), !1);
8815 return Dt.makeFragment(r);
8816 },
8817 mathmlBuilder: function (t, e) {
8818 var r = ge(t.body, e);
8819 return new ue.MathNode("mphantom", r);
8820 },
8821 }),
8822 _t({
8823 type: "hphantom",
8824 names: ["\\hphantom"],
8825 props: { numArgs: 1, allowedInText: !0 },
8826 handler: function (t, e) {
8827 var r = t.parser,
8828 a = e[0];
8829 return { type: "hphantom", mode: r.mode, body: a };
8830 },
8831 htmlBuilder: function (t, e) {
8832 var r = Dt.makeSpan([], [oe(t.body, e.withPhantom())]);
8833 if (((r.height = 0), (r.depth = 0), r.children))
8834 for (var a = 0; a < r.children.length; a++)
8835 ((r.children[a].height = 0), (r.children[a].depth = 0));
8836 return (
8837 (r = Dt.makeVList(
8838 {
8839 positionType: "firstBaseline",
8840 children: [{ type: "elem", elem: r }],
8841 },
8842 e,
8843 )),
8844 Dt.makeSpan(["mord"], [r], e)
8845 );
8846 },
8847 mathmlBuilder: function (t, e) {
8848 var r = ge($t(t.body), e),
8849 a = new ue.MathNode("mphantom", r),
8850 n = new ue.MathNode("mpadded", [a]);
8851 return (
8852 n.setAttribute("height", "0px"),
8853 n.setAttribute("depth", "0px"),
8854 n
8855 );
8856 },
8857 }),
8858 _t({
8859 type: "vphantom",
8860 names: ["\\vphantom"],
8861 props: { numArgs: 1, allowedInText: !0 },
8862 handler: function (t, e) {
8863 var r = t.parser,
8864 a = e[0];
8865 return { type: "vphantom", mode: r.mode, body: a };
8866 },
8867 htmlBuilder: function (t, e) {
8868 var r = Dt.makeSpan(["inner"], [oe(t.body, e.withPhantom())]),
8869 a = Dt.makeSpan(["fix"], []);
8870 return Dt.makeSpan(["mord", "rlap"], [r, a], e);
8871 },
8872 mathmlBuilder: function (t, e) {
8873 var r = ge($t(t.body), e),
8874 a = new ue.MathNode("mphantom", r),
8875 n = new ue.MathNode("mpadded", [a]);
8876 return (n.setAttribute("width", "0px"), n);
8877 },
8878 }),
8879 _t({
8880 type: "raisebox",
8881 names: ["\\raisebox"],
8882 props: { numArgs: 2, argTypes: ["size", "hbox"], allowedInText: !0 },
8883 handler: function (t, e) {
8884 var r = t.parser,
8885 a = Ce(e[0], "size").value,
8886 n = e[1];
8887 return { type: "raisebox", mode: r.mode, dy: a, body: n };
8888 },
8889 htmlBuilder: function (t, e) {
8890 var r = oe(t.body, e),
8891 a = Tt(t.dy, e);
8892 return Dt.makeVList(
8893 {
8894 positionType: "shift",
8895 positionData: -a,
8896 children: [{ type: "elem", elem: r }],
8897 },
8898 e,
8899 );
8900 },
8901 mathmlBuilder: function (t, e) {
8902 var r = new ue.MathNode("mpadded", [ve(t.body, e)]),
8903 a = t.dy.number + t.dy.unit;
8904 return (r.setAttribute("voffset", a), r);
8905 },
8906 }),
8907 _t({
8908 type: "rule",
8909 names: ["\\rule"],
8910 props: {
8911 numArgs: 2,
8912 numOptionalArgs: 1,
8913 argTypes: ["size", "size", "size"],
8914 },
8915 handler: function (t, e, r) {
8916 var a = t.parser,
8917 n = r[0],
8918 i = Ce(e[0], "size"),
8919 o = Ce(e[1], "size");
8920 return {
8921 type: "rule",
8922 mode: a.mode,
8923 shift: n && Ce(n, "size").value,
8924 width: i.value,
8925 height: o.value,
8926 };
8927 },
8928 htmlBuilder: function (t, e) {
8929 var r = Dt.makeSpan(["mord", "rule"], [], e),
8930 a = Tt(t.width, e),
8931 n = Tt(t.height, e),
8932 i = t.shift ? Tt(t.shift, e) : 0;
8933 return (
8934 (r.style.borderRightWidth = a + "em"),
8935 (r.style.borderTopWidth = n + "em"),
8936 (r.style.bottom = i + "em"),
8937 (r.width = a),
8938 (r.height = n + i),
8939 (r.depth = -i),
8940 (r.maxFontSize = 1.125 * n * e.sizeMultiplier),
8941 r
8942 );
8943 },
8944 mathmlBuilder: function (t, e) {
8945 var r = Tt(t.width, e),
8946 a = Tt(t.height, e),
8947 n = t.shift ? Tt(t.shift, e) : 0,
8948 i = (e.color && e.getColor()) || "black",
8949 o = new ue.MathNode("mspace");
8950 (o.setAttribute("mathbackground", i),
8951 o.setAttribute("width", r + "em"),
8952 o.setAttribute("height", a + "em"));
8953 var s = new ue.MathNode("mpadded", [o]);
8954 return (
8955 n >= 0
8956 ? s.setAttribute("height", "+" + n + "em")
8957 : (s.setAttribute("height", n + "em"),
8958 s.setAttribute("depth", "+" + -n + "em")),
8959 s.setAttribute("voffset", n + "em"),
8960 s
8961 );
8962 },
8963 }));
8964 var jr = [
8965 "\\tiny",
8966 "\\sixptsize",
8967 "\\scriptsize",
8968 "\\footnotesize",
8969 "\\small",
8970 "\\normalsize",
8971 "\\large",
8972 "\\Large",
8973 "\\LARGE",
8974 "\\huge",
8975 "\\Huge",
8976 ];
8977 (_t({
8978 type: "sizing",
8979 names: jr,
8980 props: { numArgs: 0, allowedInText: !0 },
8981 handler: function (t, e) {
8982 var r = t.breakOnTokenText,
8983 a = t.funcName,
8984 n = t.parser,
8985 i = n.parseExpression(!1, r);
8986 return {
8987 type: "sizing",
8988 mode: n.mode,
8989 size: jr.indexOf(a) + 1,
8990 body: i,
8991 };
8992 },
8993 htmlBuilder: function (t, e) {
8994 var r = e.havingSize(t.size);
8995 return _r(t.body, r, e);
8996 },
8997 mathmlBuilder: function (t, e) {
8998 var r = e.havingSize(t.size),
8999 a = ge(t.body, r),
9000 n = new ue.MathNode("mstyle", a);
9001 return (n.setAttribute("mathsize", r.sizeMultiplier + "em"), n);
9002 },
9003 }),
9004 _t({
9005 type: "smash",
9006 names: ["\\smash"],
9007 props: { numArgs: 1, numOptionalArgs: 1, allowedInText: !0 },
9008 handler: function (t, e, r) {
9009 var a = t.parser,
9010 n = !1,
9011 i = !1,
9012 o = r[0] && Ce(r[0], "ordgroup");
9013 if (o)
9014 for (var s = "", l = 0; l < o.body.length; ++l) {
9015 if ("t" === (s = o.body[l].text)) n = !0;
9016 else {
9017 if ("b" !== s) {
9018 ((n = !1), (i = !1));
9019 break;
9020 }
9021 i = !0;
9022 }
9023 }
9024 else ((n = !0), (i = !0));
9025 var h = e[0];
9026 return {
9027 type: "smash",
9028 mode: a.mode,
9029 body: h,
9030 smashHeight: n,
9031 smashDepth: i,
9032 };
9033 },
9034 htmlBuilder: function (t, e) {
9035 var r = Dt.makeSpan([], [oe(t.body, e)]);
9036 if (!t.smashHeight && !t.smashDepth) return r;
9037 if (t.smashHeight && ((r.height = 0), r.children))
9038 for (var a = 0; a < r.children.length; a++)
9039 r.children[a].height = 0;
9040 if (t.smashDepth && ((r.depth = 0), r.children))
9041 for (var n = 0; n < r.children.length; n++)
9042 r.children[n].depth = 0;
9043 var i = Dt.makeVList(
9044 {
9045 positionType: "firstBaseline",
9046 children: [{ type: "elem", elem: r }],
9047 },
9048 e,
9049 );
9050 return Dt.makeSpan(["mord"], [i], e);
9051 },
9052 mathmlBuilder: function (t, e) {
9053 var r = new ue.MathNode("mpadded", [ve(t.body, e)]);
9054 return (
9055 t.smashHeight && r.setAttribute("height", "0px"),
9056 t.smashDepth && r.setAttribute("depth", "0px"),
9057 r
9058 );
9059 },
9060 }),
9061 _t({
9062 type: "sqrt",
9063 names: ["\\sqrt"],
9064 props: { numArgs: 1, numOptionalArgs: 1 },
9065 handler: function (t, e, r) {
9066 var a = t.parser,
9067 n = r[0],
9068 i = e[0];
9069 return { type: "sqrt", mode: a.mode, body: i, index: n };
9070 },
9071 htmlBuilder: function (t, e) {
9072 var r = oe(t.body, e.havingCrampedStyle());
9073 (0 === r.height && (r.height = e.fontMetrics().xHeight),
9074 (r = Dt.wrapFragment(r, e)));
9075 var a = e.fontMetrics().defaultRuleThickness,
9076 n = a;
9077 e.style.id < w.TEXT.id && (n = e.fontMetrics().xHeight);
9078 var i = a + n / 4,
9079 o = r.height + r.depth + i + a,
9080 s = ir(o, e),
9081 l = s.span,
9082 h = s.ruleWidth,
9083 m = s.advanceWidth,
9084 c = l.height - h;
9085 c > r.height + r.depth + i &&
9086 (i = (i + c - r.height - r.depth) / 2);
9087 var u = l.height - r.height - i - h;
9088 r.style.paddingLeft = m + "em";
9089 var p = Dt.makeVList(
9090 {
9091 positionType: "firstBaseline",
9092 children: [
9093 { type: "elem", elem: r, wrapperClasses: ["svg-align"] },
9094 { type: "kern", size: -(r.height + u) },
9095 { type: "elem", elem: l },
9096 { type: "kern", size: h },
9097 ],
9098 },
9099 e,
9100 );
9101 if (t.index) {
9102 var d = e.havingStyle(w.SCRIPTSCRIPT),
9103 f = oe(t.index, d, e),
9104 g = 0.6 * (p.height - p.depth),
9105 x = Dt.makeVList(
9106 {
9107 positionType: "shift",
9108 positionData: -g,
9109 children: [{ type: "elem", elem: f }],
9110 },
9111 e,
9112 ),
9113 v = Dt.makeSpan(["root"], [x]);
9114 return Dt.makeSpan(["mord", "sqrt"], [v, p], e);
9115 }
9116 return Dt.makeSpan(["mord", "sqrt"], [p], e);
9117 },
9118 mathmlBuilder: function (t, e) {
9119 var r = t.body,
9120 a = t.index;
9121 return a
9122 ? new ue.MathNode("mroot", [ve(r, e), ve(a, e)])
9123 : new ue.MathNode("msqrt", [ve(r, e)]);
9124 },
9125 }));
9126 var $r = {
9127 display: w.DISPLAY,
9128 text: w.TEXT,
9129 script: w.SCRIPT,
9130 scriptscript: w.SCRIPTSCRIPT,
9131 };
9132 _t({
9133 type: "styling",
9134 names: [
9135 "\\displaystyle",
9136 "\\textstyle",
9137 "\\scriptstyle",
9138 "\\scriptscriptstyle",
9139 ],
9140 props: { numArgs: 0, allowedInText: !0 },
9141 handler: function (t, e) {
9142 var r = t.breakOnTokenText,
9143 a = t.funcName,
9144 n = t.parser,
9145 i = n.parseExpression(!0, r),
9146 o = a.slice(1, a.length - 5);
9147 return { type: "styling", mode: n.mode, style: o, body: i };
9148 },
9149 htmlBuilder: function (t, e) {
9150 var r = $r[t.style],
9151 a = e.havingStyle(r).withFont("");
9152 return _r(t.body, a, e);
9153 },
9154 mathmlBuilder: function (t, e) {
9155 var r = $r[t.style],
9156 a = e.havingStyle(r),
9157 n = ge(t.body, a),
9158 i = new ue.MathNode("mstyle", n),
9159 o = {
9160 display: ["0", "true"],
9161 text: ["0", "false"],
9162 script: ["1", "false"],
9163 scriptscript: ["2", "false"],
9164 }[t.style];
9165 return (
9166 i.setAttribute("scriptlevel", o[0]),
9167 i.setAttribute("displaystyle", o[1]),
9168 i
9169 );
9170 },
9171 });
9172 (jt({
9173 type: "supsub",
9174 htmlBuilder: function (t, e) {
9175 var r = (function (t, e) {
9176 var r = t.base;
9177 return r
9178 ? "op" === r.type
9179 ? r.limits &&
9180 (e.style.size === w.DISPLAY.size || r.alwaysHandleSupSub)
9181 ? Ur
9182 : null
9183 : "operatorname" === r.type
9184 ? r.alwaysHandleSupSub &&
9185 (e.style.size === w.DISPLAY.size || r.limits)
9186 ? Xr
9187 : null
9188 : "accent" === r.type
9189 ? c.isCharacterBox(r.base)
9190 ? Ie
9191 : null
9192 : "horizBrace" === r.type && !t.sub === r.isOver
9193 ? Pr
9194 : null
9195 : null;
9196 })(t, e);
9197 if (r) return r(t, e);
9198 var a,
9199 n,
9200 i,
9201 o = t.base,
9202 s = t.sup,
9203 l = t.sub,
9204 h = oe(o, e),
9205 m = e.fontMetrics(),
9206 u = 0,
9207 p = 0,
9208 d = o && c.isCharacterBox(o);
9209 if (s) {
9210 var f = e.havingStyle(e.style.sup());
9211 ((a = oe(s, f, e)),
9212 d ||
9213 (u =
9214 h.height -
9215 (f.fontMetrics().supDrop * f.sizeMultiplier) /
9216 e.sizeMultiplier));
9217 }
9218 if (l) {
9219 var g = e.havingStyle(e.style.sub());
9220 ((n = oe(l, g, e)),
9221 d ||
9222 (p =
9223 h.depth +
9224 (g.fontMetrics().subDrop * g.sizeMultiplier) /
9225 e.sizeMultiplier));
9226 }
9227 i =
9228 e.style === w.DISPLAY ? m.sup1 : e.style.cramped ? m.sup3 : m.sup2;
9229 var x,
9230 v = e.sizeMultiplier,
9231 b = 0.5 / m.ptPerEm / v + "em",
9232 y = null;
9233 if (n) {
9234 var k =
9235 t.base &&
9236 "op" === t.base.type &&
9237 t.base.name &&
9238 ("\\oiint" === t.base.name || "\\oiiint" === t.base.name);
9239 (h instanceof E || k) && (y = -h.italic + "em");
9240 }
9241 if (a && n) {
9242 ((u = Math.max(u, i, a.depth + 0.25 * m.xHeight)),
9243 (p = Math.max(p, m.sub2)));
9244 var S = 4 * m.defaultRuleThickness;
9245 if (u - a.depth - (n.height - p) < S) {
9246 p = S - (u - a.depth) + n.height;
9247 var M = 0.8 * m.xHeight - (u - a.depth);
9248 M > 0 && ((u += M), (p -= M));
9249 }
9250 var z = [
9251 {
9252 type: "elem",
9253 elem: n,
9254 shift: p,
9255 marginRight: b,
9256 marginLeft: y,
9257 },
9258 { type: "elem", elem: a, shift: -u, marginRight: b },
9259 ];
9260 x = Dt.makeVList(
9261 { positionType: "individualShift", children: z },
9262 e,
9263 );
9264 } else if (n) {
9265 p = Math.max(p, m.sub1, n.height - 0.8 * m.xHeight);
9266 var A = [{ type: "elem", elem: n, marginLeft: y, marginRight: b }];
9267 x = Dt.makeVList(
9268 { positionType: "shift", positionData: p, children: A },
9269 e,
9270 );
9271 } else {
9272 if (!a) throw new Error("supsub must have either sup or sub.");
9273 ((u = Math.max(u, i, a.depth + 0.25 * m.xHeight)),
9274 (x = Dt.makeVList(
9275 {
9276 positionType: "shift",
9277 positionData: -u,
9278 children: [{ type: "elem", elem: a, marginRight: b }],
9279 },
9280 e,
9281 )));
9282 }
9283 var T = ne(h, "right") || "mord";
9284 return Dt.makeSpan([T], [h, Dt.makeSpan(["msupsub"], [x])], e);
9285 },
9286 mathmlBuilder: function (t, e) {
9287 var r,
9288 a = !1;
9289 (t.base &&
9290 "horizBrace" === t.base.type &&
9291 !!t.sup === t.base.isOver &&
9292 ((a = !0), (r = t.base.isOver)),
9293 !t.base ||
9294 ("op" !== t.base.type && "operatorname" !== t.base.type) ||
9295 (t.base.parentIsSupSub = !0));
9296 var n,
9297 i = [ve(t.base, e)];
9298 if ((t.sub && i.push(ve(t.sub, e)), t.sup && i.push(ve(t.sup, e)), a))
9299 n = r ? "mover" : "munder";
9300 else if (t.sub)
9301 if (t.sup) {
9302 var o = t.base;
9303 n =
9304 o && "op" === o.type && o.limits && e.style === w.DISPLAY
9305 ? "munderover"
9306 : o &&
9307 "operatorname" === o.type &&
9308 o.alwaysHandleSupSub &&
9309 (e.style === w.DISPLAY || o.limits)
9310 ? "munderover"
9311 : "msubsup";
9312 } else {
9313 var s = t.base;
9314 n =
9315 s &&
9316 "op" === s.type &&
9317 s.limits &&
9318 (e.style === w.DISPLAY || s.alwaysHandleSupSub)
9319 ? "munder"
9320 : s &&
9321 "operatorname" === s.type &&
9322 s.alwaysHandleSupSub &&
9323 (s.limits || e.style === w.DISPLAY)
9324 ? "munder"
9325 : "msub";
9326 }
9327 else {
9328 var l = t.base;
9329 n =
9330 l &&
9331 "op" === l.type &&
9332 l.limits &&
9333 (e.style === w.DISPLAY || l.alwaysHandleSupSub)
9334 ? "mover"
9335 : l &&
9336 "operatorname" === l.type &&
9337 l.alwaysHandleSupSub &&
9338 (l.limits || e.style === w.DISPLAY)
9339 ? "mover"
9340 : "msup";
9341 }
9342 return new ue.MathNode(n, i);
9343 },
9344 }),
9345 jt({
9346 type: "atom",
9347 htmlBuilder: function (t, e) {
9348 return Dt.mathsym(t.text, t.mode, e, ["m" + t.family]);
9349 },
9350 mathmlBuilder: function (t, e) {
9351 var r = new ue.MathNode("mo", [pe(t.text, t.mode)]);
9352 if ("bin" === t.family) {
9353 var a = fe(t, e);
9354 "bold-italic" === a && r.setAttribute("mathvariant", a);
9355 } else
9356 "punct" === t.family
9357 ? r.setAttribute("separator", "true")
9358 : ("open" !== t.family && "close" !== t.family) ||
9359 r.setAttribute("stretchy", "false");
9360 return r;
9361 },
9362 }));
9363 var Zr = { mi: "italic", mn: "normal", mtext: "normal" };
9364 (jt({
9365 type: "mathord",
9366 htmlBuilder: function (t, e) {
9367 return Dt.makeOrd(t, e, "mathord");
9368 },
9369 mathmlBuilder: function (t, e) {
9370 var r = new ue.MathNode("mi", [pe(t.text, t.mode, e)]),
9371 a = fe(t, e) || "italic";
9372 return (a !== Zr[r.type] && r.setAttribute("mathvariant", a), r);
9373 },
9374 }),
9375 jt({
9376 type: "textord",
9377 htmlBuilder: function (t, e) {
9378 return Dt.makeOrd(t, e, "textord");
9379 },
9380 mathmlBuilder: function (t, e) {
9381 var r,
9382 a = pe(t.text, t.mode, e),
9383 n = fe(t, e) || "normal";
9384 return (
9385 (r =
9386 "text" === t.mode
9387 ? new ue.MathNode("mtext", [a])
9388 : /[0-9]/.test(t.text)
9389 ? new ue.MathNode("mn", [a])
9390 : "\\prime" === t.text
9391 ? new ue.MathNode("mo", [a])
9392 : new ue.MathNode("mi", [a])),
9393 n !== Zr[r.type] && r.setAttribute("mathvariant", n),
9394 r
9395 );
9396 },
9397 }));
9398 var Kr = { "\\nobreak": "nobreak", "\\allowbreak": "allowbreak" },
9399 Jr = {
9400 " ": {},
9401 "\\ ": {},
9402 "~": { className: "nobreak" },
9403 "\\space": {},
9404 "\\nobreakspace": { className: "nobreak" },
9405 };
9406 jt({
9407 type: "spacing",
9408 htmlBuilder: function (t, e) {
9409 if (Jr.hasOwnProperty(t.text)) {
9410 var r = Jr[t.text].className || "";
9411 if ("text" === t.mode) {
9412 var a = Dt.makeOrd(t, e, "textord");
9413 return (a.classes.push(r), a);
9414 }
9415 return Dt.makeSpan(
9416 ["mspace", r],
9417 [Dt.mathsym(t.text, t.mode, e)],
9418 e,
9419 );
9420 }
9421 if (Kr.hasOwnProperty(t.text))
9422 return Dt.makeSpan(["mspace", Kr[t.text]], [], e);
9423 throw new o('Unknown type of space "' + t.text + '"');
9424 },
9425 mathmlBuilder: function (t, e) {
9426 if (!Jr.hasOwnProperty(t.text)) {
9427 if (Kr.hasOwnProperty(t.text)) return new ue.MathNode("mspace");
9428 throw new o('Unknown type of space "' + t.text + '"');
9429 }
9430 return new ue.MathNode("mtext", [new ue.TextNode("\xa0")]);
9431 },
9432 });
9433 var Qr = function () {
9434 var t = new ue.MathNode("mtd", []);
9435 return (t.setAttribute("width", "50%"), t);
9436 };
9437 jt({
9438 type: "tag",
9439 mathmlBuilder: function (t, e) {
9440 var r = new ue.MathNode("mtable", [
9441 new ue.MathNode("mtr", [
9442 Qr(),
9443 new ue.MathNode("mtd", [xe(t.body, e)]),
9444 Qr(),
9445 new ue.MathNode("mtd", [xe(t.tag, e)]),
9446 ]),
9447 ]);
9448 return (r.setAttribute("width", "100%"), r);
9449 },
9450 });
9451 var ta = {
9452 "\\text": void 0,
9453 "\\textrm": "textrm",
9454 "\\textsf": "textsf",
9455 "\\texttt": "texttt",
9456 "\\textnormal": "textrm",
9457 },
9458 ea = { "\\textbf": "textbf", "\\textmd": "textmd" },
9459 ra = { "\\textit": "textit", "\\textup": "textup" },
9460 aa = function (t, e) {
9461 var r = t.font;
9462 return r
9463 ? ta[r]
9464 ? e.withTextFontFamily(ta[r])
9465 : ea[r]
9466 ? e.withTextFontWeight(ea[r])
9467 : e.withTextFontShape(ra[r])
9468 : e;
9469 };
9470 (_t({
9471 type: "text",
9472 names: [
9473 "\\text",
9474 "\\textrm",
9475 "\\textsf",
9476 "\\texttt",
9477 "\\textnormal",
9478 "\\textbf",
9479 "\\textmd",
9480 "\\textit",
9481 "\\textup",
9482 ],
9483 props: {
9484 numArgs: 1,
9485 argTypes: ["text"],
9486 greediness: 2,
9487 allowedInText: !0,
9488 },
9489 handler: function (t, e) {
9490 var r = t.parser,
9491 a = t.funcName,
9492 n = e[0];
9493 return { type: "text", mode: r.mode, body: $t(n), font: a };
9494 },
9495 htmlBuilder: function (t, e) {
9496 var r = aa(t, e),
9497 a = ee(t.body, r, !0);
9498 return Dt.makeSpan(["mord", "text"], Dt.tryCombineChars(a), r);
9499 },
9500 mathmlBuilder: function (t, e) {
9501 var r = aa(t, e);
9502 return xe(t.body, r);
9503 },
9504 }),
9505 _t({
9506 type: "underline",
9507 names: ["\\underline"],
9508 props: { numArgs: 1, allowedInText: !0 },
9509 handler: function (t, e) {
9510 return { type: "underline", mode: t.parser.mode, body: e[0] };
9511 },
9512 htmlBuilder: function (t, e) {
9513 var r = oe(t.body, e),
9514 a = Dt.makeLineSpan("underline-line", e),
9515 n = e.fontMetrics().defaultRuleThickness,
9516 i = Dt.makeVList(
9517 {
9518 positionType: "top",
9519 positionData: r.height,
9520 children: [
9521 { type: "kern", size: n },
9522 { type: "elem", elem: a },
9523 { type: "kern", size: 3 * n },
9524 { type: "elem", elem: r },
9525 ],
9526 },
9527 e,
9528 );
9529 return Dt.makeSpan(["mord", "underline"], [i], e);
9530 },
9531 mathmlBuilder: function (t, e) {
9532 var r = new ue.MathNode("mo", [new ue.TextNode("\u203e")]);
9533 r.setAttribute("stretchy", "true");
9534 var a = new ue.MathNode("munder", [ve(t.body, e), r]);
9535 return (a.setAttribute("accentunder", "true"), a);
9536 },
9537 }),
9538 _t({
9539 type: "verb",
9540 names: ["\\verb"],
9541 props: { numArgs: 0, allowedInText: !0 },
9542 handler: function (t, e, r) {
9543 throw new o(
9544 "\\verb ended by end of line instead of matching delimiter",
9545 );
9546 },
9547 htmlBuilder: function (t, e) {
9548 for (
9549 var r = na(t), a = [], n = e.havingStyle(e.style.text()), i = 0;
9550 i < r.length;
9551 i++
9552 ) {
9553 var o = r[i];
9554 ("~" === o && (o = "\\textasciitilde"),
9555 a.push(
9556 Dt.makeSymbol(o, "Typewriter-Regular", t.mode, n, [
9557 "mord",
9558 "texttt",
9559 ]),
9560 ));
9561 }
9562 return Dt.makeSpan(
9563 ["mord", "text"].concat(n.sizingClasses(e)),
9564 Dt.tryCombineChars(a),
9565 n,
9566 );
9567 },
9568 mathmlBuilder: function (t, e) {
9569 var r = new ue.TextNode(na(t)),
9570 a = new ue.MathNode("mtext", [r]);
9571 return (a.setAttribute("mathvariant", "monospace"), a);
9572 },
9573 }));
9574 var na = function (t) {
9575 return t.body.replace(/ /g, t.star ? "\u2423" : "\xa0");
9576 },
9577 ia = Yt,
9578 oa = new RegExp("^(\\\\[a-zA-Z@]+)[ \r\n\t]*$"),
9579 sa = new RegExp("[\u0300-\u036f]+$"),
9580 la =
9581 "([ \r\n\t]+)|([!-\\[\\]-\u2027\u202a-\ud7ff\uf900-\uffff][\u0300-\u036f]*|[\ud800-\udbff][\udc00-\udfff][\u0300-\u036f]*|\\\\verb\\*([^]).*?\\3|\\\\verb([^*a-zA-Z]).*?\\4|\\\\operatorname\\*|\\\\[a-zA-Z@]+[ \r\n\t]*|\\\\[^\ud800-\udfff])",
9582 ha = (function () {
9583 function t(t, e) {
9584 ((this.input = void 0),
9585 (this.settings = void 0),
9586 (this.tokenRegex = void 0),
9587 (this.catcodes = void 0),
9588 (this.input = t),
9589 (this.settings = e),
9590 (this.tokenRegex = new RegExp(la, "g")),
9591 (this.catcodes = { "%": 14 }));
9592 }
9593 var e = t.prototype;
9594 return (
9595 (e.setCatcode = function (t, e) {
9596 this.catcodes[t] = e;
9597 }),
9598 (e.lex = function () {
9599 var t = this.input,
9600 e = this.tokenRegex.lastIndex;
9601 if (e === t.length) return new n("EOF", new a(this, e, e));
9602 var r = this.tokenRegex.exec(t);
9603 if (null === r || r.index !== e)
9604 throw new o(
9605 "Unexpected character: '" + t[e] + "'",
9606 new n(t[e], new a(this, e, e + 1)),
9607 );
9608 var i = r[2] || " ";
9609 if (14 === this.catcodes[i]) {
9610 var s = t.indexOf("\n", this.tokenRegex.lastIndex);
9611 return (
9612 -1 === s
9613 ? ((this.tokenRegex.lastIndex = t.length),
9614 this.settings.reportNonstrict(
9615 "commentAtEnd",
9616 "% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (Eg. $)",
9617 ))
9618 : (this.tokenRegex.lastIndex = s + 1),
9619 this.lex()
9620 );
9621 }
9622 var l = i.match(oa);
9623 return (
9624 l && (i = l[1]),
9625 new n(i, new a(this, e, this.tokenRegex.lastIndex))
9626 );
9627 }),
9628 t
9629 );
9630 })(),
9631 ma = (function () {
9632 function t(t, e) {
9633 (void 0 === t && (t = {}),
9634 void 0 === e && (e = {}),
9635 (this.current = void 0),
9636 (this.builtins = void 0),
9637 (this.undefStack = void 0),
9638 (this.current = e),
9639 (this.builtins = t),
9640 (this.undefStack = []));
9641 }
9642 var e = t.prototype;
9643 return (
9644 (e.beginGroup = function () {
9645 this.undefStack.push({});
9646 }),
9647 (e.endGroup = function () {
9648 if (0 === this.undefStack.length)
9649 throw new o(
9650 "Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug",
9651 );
9652 var t = this.undefStack.pop();
9653 for (var e in t)
9654 t.hasOwnProperty(e) &&
9655 (void 0 === t[e]
9656 ? delete this.current[e]
9657 : (this.current[e] = t[e]));
9658 }),
9659 (e.has = function (t) {
9660 return (
9661 this.current.hasOwnProperty(t) ||
9662 this.builtins.hasOwnProperty(t)
9663 );
9664 }),
9665 (e.get = function (t) {
9666 return this.current.hasOwnProperty(t)
9667 ? this.current[t]
9668 : this.builtins[t];
9669 }),
9670 (e.set = function (t, e, r) {
9671 if ((void 0 === r && (r = !1), r)) {
9672 for (var a = 0; a < this.undefStack.length; a++)
9673 delete this.undefStack[a][t];
9674 this.undefStack.length > 0 &&
9675 (this.undefStack[this.undefStack.length - 1][t] = e);
9676 } else {
9677 var n = this.undefStack[this.undefStack.length - 1];
9678 n && !n.hasOwnProperty(t) && (n[t] = this.current[t]);
9679 }
9680 this.current[t] = e;
9681 }),
9682 t
9683 );
9684 })(),
9685 ca = {},
9686 ua = ca;
9687 function pa(t, e) {
9688 ca[t] = e;
9689 }
9690 (pa("\\noexpand", function (t) {
9691 var e = t.popToken();
9692 return (
9693 t.isExpandable(e.text) && ((e.noexpand = !0), (e.treatAsRelax = !0)),
9694 { tokens: [e], numArgs: 0 }
9695 );
9696 }),
9697 pa("\\expandafter", function (t) {
9698 var e = t.popToken();
9699 return (t.expandOnce(!0), { tokens: [e], numArgs: 0 });
9700 }),
9701 pa("\\@firstoftwo", function (t) {
9702 return { tokens: t.consumeArgs(2)[0], numArgs: 0 };
9703 }),
9704 pa("\\@secondoftwo", function (t) {
9705 return { tokens: t.consumeArgs(2)[1], numArgs: 0 };
9706 }),
9707 pa("\\@ifnextchar", function (t) {
9708 var e = t.consumeArgs(3);
9709 t.consumeSpaces();
9710 var r = t.future();
9711 return 1 === e[0].length && e[0][0].text === r.text
9712 ? { tokens: e[1], numArgs: 0 }
9713 : { tokens: e[2], numArgs: 0 };
9714 }),
9715 pa("\\@ifstar", "\\@ifnextchar *{\\@firstoftwo{#1}}"),
9716 pa("\\TextOrMath", function (t) {
9717 var e = t.consumeArgs(2);
9718 return "text" === t.mode
9719 ? { tokens: e[0], numArgs: 0 }
9720 : { tokens: e[1], numArgs: 0 };
9721 }));
9722 var da = {
9723 0: 0,
9724 1: 1,
9725 2: 2,
9726 3: 3,
9727 4: 4,
9728 5: 5,
9729 6: 6,
9730 7: 7,
9731 8: 8,
9732 9: 9,
9733 a: 10,
9734 A: 10,
9735 b: 11,
9736 B: 11,
9737 c: 12,
9738 C: 12,
9739 d: 13,
9740 D: 13,
9741 e: 14,
9742 E: 14,
9743 f: 15,
9744 F: 15,
9745 };
9746 pa("\\char", function (t) {
9747 var e,
9748 r = t.popToken(),
9749 a = "";
9750 if ("'" === r.text) ((e = 8), (r = t.popToken()));
9751 else if ('"' === r.text) ((e = 16), (r = t.popToken()));
9752 else if ("`" === r.text)
9753 if ("\\" === (r = t.popToken()).text[0]) a = r.text.charCodeAt(1);
9754 else {
9755 if ("EOF" === r.text) throw new o("\\char` missing argument");
9756 a = r.text.charCodeAt(0);
9757 }
9758 else e = 10;
9759 if (e) {
9760 if (null == (a = da[r.text]) || a >= e)
9761 throw new o("Invalid base-" + e + " digit " + r.text);
9762 for (var n; null != (n = da[t.future().text]) && n < e; )
9763 ((a *= e), (a += n), t.popToken());
9764 }
9765 return "\\@char{" + a + "}";
9766 });
9767 var fa = function (t, e, r) {
9768 var a = t.consumeArgs(1)[0];
9769 if (1 !== a.length)
9770 throw new o("\\newcommand's first argument must be a macro name");
9771 var n = a[0].text,
9772 i = t.isDefined(n);
9773 if (i && !e)
9774 throw new o(
9775 "\\newcommand{" +
9776 n +
9777 "} attempting to redefine " +
9778 n +
9779 "; use \\renewcommand",
9780 );
9781 if (!i && !r)
9782 throw new o(
9783 "\\renewcommand{" +
9784 n +
9785 "} when command " +
9786 n +
9787 " does not yet exist; use \\newcommand",
9788 );
9789 var s = 0;
9790 if (1 === (a = t.consumeArgs(1)[0]).length && "[" === a[0].text) {
9791 for (
9792 var l = "", h = t.expandNextToken();
9793 "]" !== h.text && "EOF" !== h.text;
9794 )
9795 ((l += h.text), (h = t.expandNextToken()));
9796 if (!l.match(/^\s*[0-9]+\s*$/))
9797 throw new o("Invalid number of arguments: " + l);
9798 ((s = parseInt(l)), (a = t.consumeArgs(1)[0]));
9799 }
9800 return (t.macros.set(n, { tokens: a, numArgs: s }), "");
9801 };
9802 (pa("\\newcommand", function (t) {
9803 return fa(t, !1, !0);
9804 }),
9805 pa("\\renewcommand", function (t) {
9806 return fa(t, !0, !1);
9807 }),
9808 pa("\\providecommand", function (t) {
9809 return fa(t, !0, !0);
9810 }),
9811 pa("\\message", function (t) {
9812 var e = t.consumeArgs(1)[0];
9813 return (
9814 console.log(
9815 e
9816 .reverse()
9817 .map(function (t) {
9818 return t.text;
9819 })
9820 .join(""),
9821 ),
9822 ""
9823 );
9824 }),
9825 pa("\\errmessage", function (t) {
9826 var e = t.consumeArgs(1)[0];
9827 return (
9828 console.error(
9829 e
9830 .reverse()
9831 .map(function (t) {
9832 return t.text;
9833 })
9834 .join(""),
9835 ),
9836 ""
9837 );
9838 }),
9839 pa("\\show", function (t) {
9840 var e = t.popToken(),
9841 r = e.text;
9842 return (
9843 console.log(e, t.macros.get(r), ia[r], j.math[r], j.text[r]),
9844 ""
9845 );
9846 }),
9847 pa("\\bgroup", "{"),
9848 pa("\\egroup", "}"),
9849 pa("\\lq", "`"),
9850 pa("\\rq", "'"),
9851 pa("\\aa", "\\r a"),
9852 pa("\\AA", "\\r A"),
9853 pa("\\textcopyright", "\\html@mathml{\\textcircled{c}}{\\char`\xa9}"),
9854 pa(
9855 "\\copyright",
9856 "\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}",
9857 ),
9858 pa(
9859 "\\textregistered",
9860 "\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xae}",
9861 ),
9862 pa("\u212c", "\\mathscr{B}"),
9863 pa("\u2130", "\\mathscr{E}"),
9864 pa("\u2131", "\\mathscr{F}"),
9865 pa("\u210b", "\\mathscr{H}"),
9866 pa("\u2110", "\\mathscr{I}"),
9867 pa("\u2112", "\\mathscr{L}"),
9868 pa("\u2133", "\\mathscr{M}"),
9869 pa("\u211b", "\\mathscr{R}"),
9870 pa("\u212d", "\\mathfrak{C}"),
9871 pa("\u210c", "\\mathfrak{H}"),
9872 pa("\u2128", "\\mathfrak{Z}"),
9873 pa("\\Bbbk", "\\Bbb{k}"),
9874 pa("\xb7", "\\cdotp"),
9875 pa("\\llap", "\\mathllap{\\textrm{#1}}"),
9876 pa("\\rlap", "\\mathrlap{\\textrm{#1}}"),
9877 pa("\\clap", "\\mathclap{\\textrm{#1}}"),
9878 pa("\\not", '\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'),
9879 pa(
9880 "\\neq",
9881 "\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}",
9882 ),
9883 pa("\\ne", "\\neq"),
9884 pa("\u2260", "\\neq"),
9885 pa(
9886 "\\notin",
9887 "\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}",
9888 ),
9889 pa("\u2209", "\\notin"),
9890 pa(
9891 "\u2258",
9892 "\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}",
9893 ),
9894 pa(
9895 "\u2259",
9896 "\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}",
9897 ),
9898 pa(
9899 "\u225a",
9900 "\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225a}}",
9901 ),
9902 pa(
9903 "\u225b",
9904 "\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225b}}",
9905 ),
9906 pa(
9907 "\u225d",
9908 "\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225d}}",
9909 ),
9910 pa(
9911 "\u225e",
9912 "\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225e}}",
9913 ),
9914 pa(
9915 "\u225f",
9916 "\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225f}}",
9917 ),
9918 pa("\u27c2", "\\perp"),
9919 pa("\u203c", "\\mathclose{!\\mkern-0.8mu!}"),
9920 pa("\u220c", "\\notni"),
9921 pa("\u231c", "\\ulcorner"),
9922 pa("\u231d", "\\urcorner"),
9923 pa("\u231e", "\\llcorner"),
9924 pa("\u231f", "\\lrcorner"),
9925 pa("\xa9", "\\copyright"),
9926 pa("\xae", "\\textregistered"),
9927 pa("\ufe0f", "\\textregistered"),
9928 pa("\\ulcorner", '\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'),
9929 pa("\\urcorner", '\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'),
9930 pa("\\llcorner", '\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'),
9931 pa("\\lrcorner", '\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'),
9932 pa("\\vdots", "\\mathord{\\varvdots\\rule{0pt}{15pt}}"),
9933 pa("\u22ee", "\\vdots"),
9934 pa("\\varGamma", "\\mathit{\\Gamma}"),
9935 pa("\\varDelta", "\\mathit{\\Delta}"),
9936 pa("\\varTheta", "\\mathit{\\Theta}"),
9937 pa("\\varLambda", "\\mathit{\\Lambda}"),
9938 pa("\\varXi", "\\mathit{\\Xi}"),
9939 pa("\\varPi", "\\mathit{\\Pi}"),
9940 pa("\\varSigma", "\\mathit{\\Sigma}"),
9941 pa("\\varUpsilon", "\\mathit{\\Upsilon}"),
9942 pa("\\varPhi", "\\mathit{\\Phi}"),
9943 pa("\\varPsi", "\\mathit{\\Psi}"),
9944 pa("\\varOmega", "\\mathit{\\Omega}"),
9945 pa("\\substack", "\\begin{subarray}{c}#1\\end{subarray}"),
9946 pa(
9947 "\\colon",
9948 "\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu",
9949 ),
9950 pa("\\boxed", "\\fbox{$\\displaystyle{#1}$}"),
9951 pa("\\iff", "\\DOTSB\\;\\Longleftrightarrow\\;"),
9952 pa("\\implies", "\\DOTSB\\;\\Longrightarrow\\;"),
9953 pa("\\impliedby", "\\DOTSB\\;\\Longleftarrow\\;"));
9954 var ga = {
9955 ",": "\\dotsc",
9956 "\\not": "\\dotsb",
9957 "+": "\\dotsb",
9958 "=": "\\dotsb",
9959 "<": "\\dotsb",
9960 ">": "\\dotsb",
9961 "-": "\\dotsb",
9962 "*": "\\dotsb",
9963 ":": "\\dotsb",
9964 "\\DOTSB": "\\dotsb",
9965 "\\coprod": "\\dotsb",
9966 "\\bigvee": "\\dotsb",
9967 "\\bigwedge": "\\dotsb",
9968 "\\biguplus": "\\dotsb",
9969 "\\bigcap": "\\dotsb",
9970 "\\bigcup": "\\dotsb",
9971 "\\prod": "\\dotsb",
9972 "\\sum": "\\dotsb",
9973 "\\bigotimes": "\\dotsb",
9974 "\\bigoplus": "\\dotsb",
9975 "\\bigodot": "\\dotsb",
9976 "\\bigsqcup": "\\dotsb",
9977 "\\And": "\\dotsb",
9978 "\\longrightarrow": "\\dotsb",
9979 "\\Longrightarrow": "\\dotsb",
9980 "\\longleftarrow": "\\dotsb",
9981 "\\Longleftarrow": "\\dotsb",
9982 "\\longleftrightarrow": "\\dotsb",
9983 "\\Longleftrightarrow": "\\dotsb",
9984 "\\mapsto": "\\dotsb",
9985 "\\longmapsto": "\\dotsb",
9986 "\\hookrightarrow": "\\dotsb",
9987 "\\doteq": "\\dotsb",
9988 "\\mathbin": "\\dotsb",
9989 "\\mathrel": "\\dotsb",
9990 "\\relbar": "\\dotsb",
9991 "\\Relbar": "\\dotsb",
9992 "\\xrightarrow": "\\dotsb",
9993 "\\xleftarrow": "\\dotsb",
9994 "\\DOTSI": "\\dotsi",
9995 "\\int": "\\dotsi",
9996 "\\oint": "\\dotsi",
9997 "\\iint": "\\dotsi",
9998 "\\iiint": "\\dotsi",
9999 "\\iiiint": "\\dotsi",
10000 "\\idotsint": "\\dotsi",
10001 "\\DOTSX": "\\dotsx",
10002 };
10003 pa("\\dots", function (t) {
10004 var e = "\\dotso",
10005 r = t.expandAfterFuture().text;
10006 return (
10007 r in ga
10008 ? (e = ga[r])
10009 : "\\not" === r.substr(0, 4)
10010 ? (e = "\\dotsb")
10011 : r in j.math &&
10012 c.contains(["bin", "rel"], j.math[r].group) &&
10013 (e = "\\dotsb"),
10014 e
10015 );
10016 });
10017 var xa = {
10018 ")": !0,
10019 "]": !0,
10020 "\\rbrack": !0,
10021 "\\}": !0,
10022 "\\rbrace": !0,
10023 "\\rangle": !0,
10024 "\\rceil": !0,
10025 "\\rfloor": !0,
10026 "\\rgroup": !0,
10027 "\\rmoustache": !0,
10028 "\\right": !0,
10029 "\\bigr": !0,
10030 "\\biggr": !0,
10031 "\\Bigr": !0,
10032 "\\Biggr": !0,
10033 $: !0,
10034 ";": !0,
10035 ".": !0,
10036 ",": !0,
10037 };
10038 (pa("\\dotso", function (t) {
10039 return t.future().text in xa ? "\\ldots\\," : "\\ldots";
10040 }),
10041 pa("\\dotsc", function (t) {
10042 var e = t.future().text;
10043 return e in xa && "," !== e ? "\\ldots\\," : "\\ldots";
10044 }),
10045 pa("\\cdots", function (t) {
10046 return t.future().text in xa ? "\\@cdots\\," : "\\@cdots";
10047 }),
10048 pa("\\dotsb", "\\cdots"),
10049 pa("\\dotsm", "\\cdots"),
10050 pa("\\dotsi", "\\!\\cdots"),
10051 pa("\\dotsx", "\\ldots\\,"),
10052 pa("\\DOTSI", "\\relax"),
10053 pa("\\DOTSB", "\\relax"),
10054 pa("\\DOTSX", "\\relax"),
10055 pa("\\tmspace", "\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"),
10056 pa("\\,", "\\tmspace+{3mu}{.1667em}"),
10057 pa("\\thinspace", "\\,"),
10058 pa("\\>", "\\mskip{4mu}"),
10059 pa("\\:", "\\tmspace+{4mu}{.2222em}"),
10060 pa("\\medspace", "\\:"),
10061 pa("\\;", "\\tmspace+{5mu}{.2777em}"),
10062 pa("\\thickspace", "\\;"),
10063 pa("\\!", "\\tmspace-{3mu}{.1667em}"),
10064 pa("\\negthinspace", "\\!"),
10065 pa("\\negmedspace", "\\tmspace-{4mu}{.2222em}"),
10066 pa("\\negthickspace", "\\tmspace-{5mu}{.277em}"),
10067 pa("\\enspace", "\\kern.5em "),
10068 pa("\\enskip", "\\hskip.5em\\relax"),
10069 pa("\\quad", "\\hskip1em\\relax"),
10070 pa("\\qquad", "\\hskip2em\\relax"),
10071 pa("\\tag", "\\@ifstar\\tag@literal\\tag@paren"),
10072 pa("\\tag@paren", "\\tag@literal{({#1})}"),
10073 pa("\\tag@literal", function (t) {
10074 if (t.macros.get("\\df@tag")) throw new o("Multiple \\tag");
10075 return "\\gdef\\df@tag{\\text{#1}}";
10076 }),
10077 pa(
10078 "\\bmod",
10079 "\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}",
10080 ),
10081 pa(
10082 "\\pod",
10083 "\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)",
10084 ),
10085 pa("\\pmod", "\\pod{{\\rm mod}\\mkern6mu#1}"),
10086 pa(
10087 "\\mod",
10088 "\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1",
10089 ),
10090 pa(
10091 "\\pmb",
10092 "\\html@mathml{\\@binrel{#1}{\\mathrlap{#1}\\kern0.5px#1}}{\\mathbf{#1}}",
10093 ),
10094 pa("\\\\", "\\newline"),
10095 pa(
10096 "\\TeX",
10097 "\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}",
10098 ));
10099 var va =
10100 F["Main-Regular"]["T".charCodeAt(0)][1] -
10101 0.7 * F["Main-Regular"]["A".charCodeAt(0)][1] +
10102 "em";
10103 (pa(
10104 "\\LaTeX",
10105 "\\textrm{\\html@mathml{L\\kern-.36em\\raisebox{" +
10106 va +
10107 "}{\\scriptstyle A}\\kern-.15em\\TeX}{LaTeX}}",
10108 ),
10109 pa(
10110 "\\KaTeX",
10111 "\\textrm{\\html@mathml{K\\kern-.17em\\raisebox{" +
10112 va +
10113 "}{\\scriptstyle A}\\kern-.15em\\TeX}{KaTeX}}",
10114 ),
10115 pa("\\hspace", "\\@ifstar\\@hspacer\\@hspace"),
10116 pa("\\@hspace", "\\hskip #1\\relax"),
10117 pa("\\@hspacer", "\\rule{0pt}{0pt}\\hskip #1\\relax"),
10118 pa("\\ordinarycolon", ":"),
10119 pa("\\vcentcolon", "\\mathrel{\\mathop\\ordinarycolon}"),
10120 pa(
10121 "\\dblcolon",
10122 '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}',
10123 ),
10124 pa(
10125 "\\coloneqq",
10126 '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}',
10127 ),
10128 pa(
10129 "\\Coloneqq",
10130 '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}',
10131 ),
10132 pa(
10133 "\\coloneq",
10134 '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}',
10135 ),
10136 pa(
10137 "\\Coloneq",
10138 '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}',
10139 ),
10140 pa(
10141 "\\eqqcolon",
10142 '\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}',
10143 ),
10144 pa(
10145 "\\Eqqcolon",
10146 '\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}',
10147 ),
10148 pa(
10149 "\\eqcolon",
10150 '\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}',
10151 ),
10152 pa(
10153 "\\Eqcolon",
10154 '\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}',
10155 ),
10156 pa(
10157 "\\colonapprox",
10158 '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}',
10159 ),
10160 pa(
10161 "\\Colonapprox",
10162 '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}',
10163 ),
10164 pa(
10165 "\\colonsim",
10166 '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}',
10167 ),
10168 pa(
10169 "\\Colonsim",
10170 '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}',
10171 ),
10172 pa("\u2237", "\\dblcolon"),
10173 pa("\u2239", "\\eqcolon"),
10174 pa("\u2254", "\\coloneqq"),
10175 pa("\u2255", "\\eqqcolon"),
10176 pa("\u2a74", "\\Coloneqq"),
10177 pa("\\ratio", "\\vcentcolon"),
10178 pa("\\coloncolon", "\\dblcolon"),
10179 pa("\\colonequals", "\\coloneqq"),
10180 pa("\\coloncolonequals", "\\Coloneqq"),
10181 pa("\\equalscolon", "\\eqqcolon"),
10182 pa("\\equalscoloncolon", "\\Eqqcolon"),
10183 pa("\\colonminus", "\\coloneq"),
10184 pa("\\coloncolonminus", "\\Coloneq"),
10185 pa("\\minuscolon", "\\eqcolon"),
10186 pa("\\minuscoloncolon", "\\Eqcolon"),
10187 pa("\\coloncolonapprox", "\\Colonapprox"),
10188 pa("\\coloncolonsim", "\\Colonsim"),
10189 pa(
10190 "\\simcolon",
10191 "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}",
10192 ),
10193 pa(
10194 "\\simcoloncolon",
10195 "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}",
10196 ),
10197 pa(
10198 "\\approxcolon",
10199 "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}",
10200 ),
10201 pa(
10202 "\\approxcoloncolon",
10203 "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}",
10204 ),
10205 pa("\\notni", "\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220c}}"),
10206 pa("\\limsup", "\\DOTSB\\operatorname*{lim\\,sup}"),
10207 pa("\\liminf", "\\DOTSB\\operatorname*{lim\\,inf}"),
10208 pa("\\gvertneqq", "\\html@mathml{\\@gvertneqq}{\u2269}"),
10209 pa("\\lvertneqq", "\\html@mathml{\\@lvertneqq}{\u2268}"),
10210 pa("\\ngeqq", "\\html@mathml{\\@ngeqq}{\u2271}"),
10211 pa("\\ngeqslant", "\\html@mathml{\\@ngeqslant}{\u2271}"),
10212 pa("\\nleqq", "\\html@mathml{\\@nleqq}{\u2270}"),
10213 pa("\\nleqslant", "\\html@mathml{\\@nleqslant}{\u2270}"),
10214 pa("\\nshortmid", "\\html@mathml{\\@nshortmid}{\u2224}"),
10215 pa("\\nshortparallel", "\\html@mathml{\\@nshortparallel}{\u2226}"),
10216 pa("\\nsubseteqq", "\\html@mathml{\\@nsubseteqq}{\u2288}"),
10217 pa("\\nsupseteqq", "\\html@mathml{\\@nsupseteqq}{\u2289}"),
10218 pa("\\varsubsetneq", "\\html@mathml{\\@varsubsetneq}{\u228a}"),
10219 pa("\\varsubsetneqq", "\\html@mathml{\\@varsubsetneqq}{\u2acb}"),
10220 pa("\\varsupsetneq", "\\html@mathml{\\@varsupsetneq}{\u228b}"),
10221 pa("\\varsupsetneqq", "\\html@mathml{\\@varsupsetneqq}{\u2acc}"),
10222 pa("\\imath", "\\html@mathml{\\@imath}{\u0131}"),
10223 pa("\\jmath", "\\html@mathml{\\@jmath}{\u0237}"),
10224 pa(
10225 "\\llbracket",
10226 "\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27e6}}",
10227 ),
10228 pa(
10229 "\\rrbracket",
10230 "\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27e7}}",
10231 ),
10232 pa("\u27e6", "\\llbracket"),
10233 pa("\u27e7", "\\rrbracket"),
10234 pa(
10235 "\\lBrace",
10236 "\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}",
10237 ),
10238 pa(
10239 "\\rBrace",
10240 "\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}",
10241 ),
10242 pa("\u2983", "\\lBrace"),
10243 pa("\u2984", "\\rBrace"),
10244 pa(
10245 "\\minuso",
10246 "\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29b5}}",
10247 ),
10248 pa("\u29b5", "\\minuso"),
10249 pa("\\darr", "\\downarrow"),
10250 pa("\\dArr", "\\Downarrow"),
10251 pa("\\Darr", "\\Downarrow"),
10252 pa("\\lang", "\\langle"),
10253 pa("\\rang", "\\rangle"),
10254 pa("\\uarr", "\\uparrow"),
10255 pa("\\uArr", "\\Uparrow"),
10256 pa("\\Uarr", "\\Uparrow"),
10257 pa("\\N", "\\mathbb{N}"),
10258 pa("\\R", "\\mathbb{R}"),
10259 pa("\\Z", "\\mathbb{Z}"),
10260 pa("\\alef", "\\aleph"),
10261 pa("\\alefsym", "\\aleph"),
10262 pa("\\Alpha", "\\mathrm{A}"),
10263 pa("\\Beta", "\\mathrm{B}"),
10264 pa("\\bull", "\\bullet"),
10265 pa("\\Chi", "\\mathrm{X}"),
10266 pa("\\clubs", "\\clubsuit"),
10267 pa("\\cnums", "\\mathbb{C}"),
10268 pa("\\Complex", "\\mathbb{C}"),
10269 pa("\\Dagger", "\\ddagger"),
10270 pa("\\diamonds", "\\diamondsuit"),
10271 pa("\\empty", "\\emptyset"),
10272 pa("\\Epsilon", "\\mathrm{E}"),
10273 pa("\\Eta", "\\mathrm{H}"),
10274 pa("\\exist", "\\exists"),
10275 pa("\\harr", "\\leftrightarrow"),
10276 pa("\\hArr", "\\Leftrightarrow"),
10277 pa("\\Harr", "\\Leftrightarrow"),
10278 pa("\\hearts", "\\heartsuit"),
10279 pa("\\image", "\\Im"),
10280 pa("\\infin", "\\infty"),
10281 pa("\\Iota", "\\mathrm{I}"),
10282 pa("\\isin", "\\in"),
10283 pa("\\Kappa", "\\mathrm{K}"),
10284 pa("\\larr", "\\leftarrow"),
10285 pa("\\lArr", "\\Leftarrow"),
10286 pa("\\Larr", "\\Leftarrow"),
10287 pa("\\lrarr", "\\leftrightarrow"),
10288 pa("\\lrArr", "\\Leftrightarrow"),
10289 pa("\\Lrarr", "\\Leftrightarrow"),
10290 pa("\\Mu", "\\mathrm{M}"),
10291 pa("\\natnums", "\\mathbb{N}"),
10292 pa("\\Nu", "\\mathrm{N}"),
10293 pa("\\Omicron", "\\mathrm{O}"),
10294 pa("\\plusmn", "\\pm"),
10295 pa("\\rarr", "\\rightarrow"),
10296 pa("\\rArr", "\\Rightarrow"),
10297 pa("\\Rarr", "\\Rightarrow"),
10298 pa("\\real", "\\Re"),
10299 pa("\\reals", "\\mathbb{R}"),
10300 pa("\\Reals", "\\mathbb{R}"),
10301 pa("\\Rho", "\\mathrm{P}"),
10302 pa("\\sdot", "\\cdot"),
10303 pa("\\sect", "\\S"),
10304 pa("\\spades", "\\spadesuit"),
10305 pa("\\sub", "\\subset"),
10306 pa("\\sube", "\\subseteq"),
10307 pa("\\supe", "\\supseteq"),
10308 pa("\\Tau", "\\mathrm{T}"),
10309 pa("\\thetasym", "\\vartheta"),
10310 pa("\\weierp", "\\wp"),
10311 pa("\\Zeta", "\\mathrm{Z}"),
10312 pa("\\argmin", "\\DOTSB\\operatorname*{arg\\,min}"),
10313 pa("\\argmax", "\\DOTSB\\operatorname*{arg\\,max}"),
10314 pa("\\plim", "\\DOTSB\\mathop{\\operatorname{plim}}\\limits"),
10315 pa("\\bra", "\\mathinner{\\langle{#1}|}"),
10316 pa("\\ket", "\\mathinner{|{#1}\\rangle}"),
10317 pa("\\braket", "\\mathinner{\\langle{#1}\\rangle}"),
10318 pa("\\Bra", "\\left\\langle#1\\right|"),
10319 pa("\\Ket", "\\left|#1\\right\\rangle"),
10320 pa("\\blue", "\\textcolor{##6495ed}{#1}"),
10321 pa("\\orange", "\\textcolor{##ffa500}{#1}"),
10322 pa("\\pink", "\\textcolor{##ff00af}{#1}"),
10323 pa("\\red", "\\textcolor{##df0030}{#1}"),
10324 pa("\\green", "\\textcolor{##28ae7b}{#1}"),
10325 pa("\\gray", "\\textcolor{gray}{#1}"),
10326 pa("\\purple", "\\textcolor{##9d38bd}{#1}"),
10327 pa("\\blueA", "\\textcolor{##ccfaff}{#1}"),
10328 pa("\\blueB", "\\textcolor{##80f6ff}{#1}"),
10329 pa("\\blueC", "\\textcolor{##63d9ea}{#1}"),
10330 pa("\\blueD", "\\textcolor{##11accd}{#1}"),
10331 pa("\\blueE", "\\textcolor{##0c7f99}{#1}"),
10332 pa("\\tealA", "\\textcolor{##94fff5}{#1}"),
10333 pa("\\tealB", "\\textcolor{##26edd5}{#1}"),
10334 pa("\\tealC", "\\textcolor{##01d1c1}{#1}"),
10335 pa("\\tealD", "\\textcolor{##01a995}{#1}"),
10336 pa("\\tealE", "\\textcolor{##208170}{#1}"),
10337 pa("\\greenA", "\\textcolor{##b6ffb0}{#1}"),
10338 pa("\\greenB", "\\textcolor{##8af281}{#1}"),
10339 pa("\\greenC", "\\textcolor{##74cf70}{#1}"),
10340 pa("\\greenD", "\\textcolor{##1fab54}{#1}"),
10341 pa("\\greenE", "\\textcolor{##0d923f}{#1}"),
10342 pa("\\goldA", "\\textcolor{##ffd0a9}{#1}"),
10343 pa("\\goldB", "\\textcolor{##ffbb71}{#1}"),
10344 pa("\\goldC", "\\textcolor{##ff9c39}{#1}"),
10345 pa("\\goldD", "\\textcolor{##e07d10}{#1}"),
10346 pa("\\goldE", "\\textcolor{##a75a05}{#1}"),
10347 pa("\\redA", "\\textcolor{##fca9a9}{#1}"),
10348 pa("\\redB", "\\textcolor{##ff8482}{#1}"),
10349 pa("\\redC", "\\textcolor{##f9685d}{#1}"),
10350 pa("\\redD", "\\textcolor{##e84d39}{#1}"),
10351 pa("\\redE", "\\textcolor{##bc2612}{#1}"),
10352 pa("\\maroonA", "\\textcolor{##ffbde0}{#1}"),
10353 pa("\\maroonB", "\\textcolor{##ff92c6}{#1}"),
10354 pa("\\maroonC", "\\textcolor{##ed5fa6}{#1}"),
10355 pa("\\maroonD", "\\textcolor{##ca337c}{#1}"),
10356 pa("\\maroonE", "\\textcolor{##9e034e}{#1}"),
10357 pa("\\purpleA", "\\textcolor{##ddd7ff}{#1}"),
10358 pa("\\purpleB", "\\textcolor{##c6b9fc}{#1}"),
10359 pa("\\purpleC", "\\textcolor{##aa87ff}{#1}"),
10360 pa("\\purpleD", "\\textcolor{##7854ab}{#1}"),
10361 pa("\\purpleE", "\\textcolor{##543b78}{#1}"),
10362 pa("\\mintA", "\\textcolor{##f5f9e8}{#1}"),
10363 pa("\\mintB", "\\textcolor{##edf2df}{#1}"),
10364 pa("\\mintC", "\\textcolor{##e0e5cc}{#1}"),
10365 pa("\\grayA", "\\textcolor{##f6f7f7}{#1}"),
10366 pa("\\grayB", "\\textcolor{##f0f1f2}{#1}"),
10367 pa("\\grayC", "\\textcolor{##e3e5e6}{#1}"),
10368 pa("\\grayD", "\\textcolor{##d6d8da}{#1}"),
10369 pa("\\grayE", "\\textcolor{##babec2}{#1}"),
10370 pa("\\grayF", "\\textcolor{##888d93}{#1}"),
10371 pa("\\grayG", "\\textcolor{##626569}{#1}"),
10372 pa("\\grayH", "\\textcolor{##3b3e40}{#1}"),
10373 pa("\\grayI", "\\textcolor{##21242c}{#1}"),
10374 pa("\\kaBlue", "\\textcolor{##314453}{#1}"),
10375 pa("\\kaGreen", "\\textcolor{##71B307}{#1}"));
10376 var ba = {
10377 "\\relax": !0,
10378 "^": !0,
10379 _: !0,
10380 "\\limits": !0,
10381 "\\nolimits": !0,
10382 },
10383 ya = (function () {
10384 function t(t, e, r) {
10385 ((this.settings = void 0),
10386 (this.expansionCount = void 0),
10387 (this.lexer = void 0),
10388 (this.macros = void 0),
10389 (this.stack = void 0),
10390 (this.mode = void 0),
10391 (this.settings = e),
10392 (this.expansionCount = 0),
10393 this.feed(t),
10394 (this.macros = new ma(ua, e.macros)),
10395 (this.mode = r),
10396 (this.stack = []));
10397 }
10398 var e = t.prototype;
10399 return (
10400 (e.feed = function (t) {
10401 this.lexer = new ha(t, this.settings);
10402 }),
10403 (e.switchMode = function (t) {
10404 this.mode = t;
10405 }),
10406 (e.beginGroup = function () {
10407 this.macros.beginGroup();
10408 }),
10409 (e.endGroup = function () {
10410 this.macros.endGroup();
10411 }),
10412 (e.future = function () {
10413 return (
10414 0 === this.stack.length && this.pushToken(this.lexer.lex()),
10415 this.stack[this.stack.length - 1]
10416 );
10417 }),
10418 (e.popToken = function () {
10419 return (this.future(), this.stack.pop());
10420 }),
10421 (e.pushToken = function (t) {
10422 this.stack.push(t);
10423 }),
10424 (e.pushTokens = function (t) {
10425 var e;
10426 (e = this.stack).push.apply(e, t);
10427 }),
10428 (e.consumeSpaces = function () {
10429 for (;;) {
10430 if (" " !== this.future().text) break;
10431 this.stack.pop();
10432 }
10433 }),
10434 (e.consumeArgs = function (t) {
10435 for (var e = [], r = 0; r < t; ++r) {
10436 this.consumeSpaces();
10437 var a = this.popToken();
10438 if ("{" === a.text) {
10439 for (var n = [], i = 1; 0 !== i; ) {
10440 var s = this.popToken();
10441 if ((n.push(s), "{" === s.text)) ++i;
10442 else if ("}" === s.text) --i;
10443 else if ("EOF" === s.text)
10444 throw new o("End of input in macro argument", a);
10445 }
10446 (n.pop(), n.reverse(), (e[r] = n));
10447 } else {
10448 if ("EOF" === a.text)
10449 throw new o("End of input expecting macro argument");
10450 e[r] = [a];
10451 }
10452 }
10453 return e;
10454 }),
10455 (e.expandOnce = function (t) {
10456 var e = this.popToken(),
10457 r = e.text,
10458 a = e.noexpand ? null : this._getExpansion(r);
10459 if (null == a || (t && a.unexpandable)) {
10460 if (t && null == a && "\\" === r[0] && !this.isDefined(r))
10461 throw new o("Undefined control sequence: " + r);
10462 return (this.pushToken(e), e);
10463 }
10464 if (
10465 (this.expansionCount++,
10466 this.expansionCount > this.settings.maxExpand)
10467 )
10468 throw new o(
10469 "Too many expansions: infinite loop or need to increase maxExpand setting",
10470 );
10471 var n = a.tokens;
10472 if (a.numArgs)
10473 for (
10474 var i = this.consumeArgs(a.numArgs),
10475 s = (n = n.slice()).length - 1;
10476 s >= 0;
10477 --s
10478 ) {
10479 var l = n[s];
10480 if ("#" === l.text) {
10481 if (0 === s)
10482 throw new o(
10483 "Incomplete placeholder at end of macro body",
10484 l,
10485 );
10486 if ("#" === (l = n[--s]).text) n.splice(s + 1, 1);
10487 else {
10488 if (!/^[1-9]$/.test(l.text))
10489 throw new o("Not a valid argument number", l);
10490 var h;
10491 (h = n).splice.apply(h, [s, 2].concat(i[+l.text - 1]));
10492 }
10493 }
10494 }
10495 return (this.pushTokens(n), n);
10496 }),
10497 (e.expandAfterFuture = function () {
10498 return (this.expandOnce(), this.future());
10499 }),
10500 (e.expandNextToken = function () {
10501 for (;;) {
10502 var t = this.expandOnce();
10503 if (t instanceof n) {
10504 if ("\\relax" !== t.text && !t.treatAsRelax)
10505 return this.stack.pop();
10506 this.stack.pop();
10507 }
10508 }
10509 throw new Error();
10510 }),
10511 (e.expandMacro = function (t) {
10512 return this.macros.has(t)
10513 ? this.expandTokens([new n(t)])
10514 : void 0;
10515 }),
10516 (e.expandTokens = function (t) {
10517 var e = [],
10518 r = this.stack.length;
10519 for (this.pushTokens(t); this.stack.length > r; ) {
10520 var a = this.expandOnce(!0);
10521 a instanceof n &&
10522 (a.treatAsRelax && ((a.noexpand = !1), (a.treatAsRelax = !1)),
10523 e.push(this.stack.pop()));
10524 }
10525 return e;
10526 }),
10527 (e.expandMacroAsText = function (t) {
10528 var e = this.expandMacro(t);
10529 return e
10530 ? e
10531 .map(function (t) {
10532 return t.text;
10533 })
10534 .join("")
10535 : e;
10536 }),
10537 (e._getExpansion = function (t) {
10538 var e = this.macros.get(t);
10539 if (null == e) return e;
10540 var r = "function" == typeof e ? e(this) : e;
10541 if ("string" == typeof r) {
10542 var a = 0;
10543 if (-1 !== r.indexOf("#"))
10544 for (
10545 var n = r.replace(/##/g, "");
10546 -1 !== n.indexOf("#" + (a + 1));
10547 )
10548 ++a;
10549 for (
10550 var i = new ha(r, this.settings), o = [], s = i.lex();
10551 "EOF" !== s.text;
10552 )
10553 (o.push(s), (s = i.lex()));
10554 return (o.reverse(), { tokens: o, numArgs: a });
10555 }
10556 return r;
10557 }),
10558 (e.isDefined = function (t) {
10559 return (
10560 this.macros.has(t) ||
10561 ia.hasOwnProperty(t) ||
10562 j.math.hasOwnProperty(t) ||
10563 j.text.hasOwnProperty(t) ||
10564 ba.hasOwnProperty(t)
10565 );
10566 }),
10567 (e.isExpandable = function (t) {
10568 var e = this.macros.get(t);
10569 return null != e
10570 ? "string" == typeof e ||
10571 "function" == typeof e ||
10572 !e.unexpandable
10573 : ia.hasOwnProperty(t);
10574 }),
10575 t
10576 );
10577 })(),
10578 wa = {
10579 "\u0301": { text: "\\'", math: "\\acute" },
10580 "\u0300": { text: "\\`", math: "\\grave" },
10581 "\u0308": { text: '\\"', math: "\\ddot" },
10582 "\u0303": { text: "\\~", math: "\\tilde" },
10583 "\u0304": { text: "\\=", math: "\\bar" },
10584 "\u0306": { text: "\\u", math: "\\breve" },
10585 "\u030c": { text: "\\v", math: "\\check" },
10586 "\u0302": { text: "\\^", math: "\\hat" },
10587 "\u0307": { text: "\\.", math: "\\dot" },
10588 "\u030a": { text: "\\r", math: "\\mathring" },
10589 "\u030b": { text: "\\H" },
10590 },
10591 ka = {
10592 "\xe1": "a\u0301",
10593 "\xe0": "a\u0300",
10594 "\xe4": "a\u0308",
10595 "\u01df": "a\u0308\u0304",
10596 "\xe3": "a\u0303",
10597 "\u0101": "a\u0304",
10598 "\u0103": "a\u0306",
10599 "\u1eaf": "a\u0306\u0301",
10600 "\u1eb1": "a\u0306\u0300",
10601 "\u1eb5": "a\u0306\u0303",
10602 "\u01ce": "a\u030c",
10603 "\xe2": "a\u0302",
10604 "\u1ea5": "a\u0302\u0301",
10605 "\u1ea7": "a\u0302\u0300",
10606 "\u1eab": "a\u0302\u0303",
10607 "\u0227": "a\u0307",
10608 "\u01e1": "a\u0307\u0304",
10609 "\xe5": "a\u030a",
10610 "\u01fb": "a\u030a\u0301",
10611 "\u1e03": "b\u0307",
10612 "\u0107": "c\u0301",
10613 "\u010d": "c\u030c",
10614 "\u0109": "c\u0302",
10615 "\u010b": "c\u0307",
10616 "\u010f": "d\u030c",
10617 "\u1e0b": "d\u0307",
10618 "\xe9": "e\u0301",
10619 "\xe8": "e\u0300",
10620 "\xeb": "e\u0308",
10621 "\u1ebd": "e\u0303",
10622 "\u0113": "e\u0304",
10623 "\u1e17": "e\u0304\u0301",
10624 "\u1e15": "e\u0304\u0300",
10625 "\u0115": "e\u0306",
10626 "\u011b": "e\u030c",
10627 "\xea": "e\u0302",
10628 "\u1ebf": "e\u0302\u0301",
10629 "\u1ec1": "e\u0302\u0300",
10630 "\u1ec5": "e\u0302\u0303",
10631 "\u0117": "e\u0307",
10632 "\u1e1f": "f\u0307",
10633 "\u01f5": "g\u0301",
10634 "\u1e21": "g\u0304",
10635 "\u011f": "g\u0306",
10636 "\u01e7": "g\u030c",
10637 "\u011d": "g\u0302",
10638 "\u0121": "g\u0307",
10639 "\u1e27": "h\u0308",
10640 "\u021f": "h\u030c",
10641 "\u0125": "h\u0302",
10642 "\u1e23": "h\u0307",
10643 "\xed": "i\u0301",
10644 "\xec": "i\u0300",
10645 "\xef": "i\u0308",
10646 "\u1e2f": "i\u0308\u0301",
10647 "\u0129": "i\u0303",
10648 "\u012b": "i\u0304",
10649 "\u012d": "i\u0306",
10650 "\u01d0": "i\u030c",
10651 "\xee": "i\u0302",
10652 "\u01f0": "j\u030c",
10653 "\u0135": "j\u0302",
10654 "\u1e31": "k\u0301",
10655 "\u01e9": "k\u030c",
10656 "\u013a": "l\u0301",
10657 "\u013e": "l\u030c",
10658 "\u1e3f": "m\u0301",
10659 "\u1e41": "m\u0307",
10660 "\u0144": "n\u0301",
10661 "\u01f9": "n\u0300",
10662 "\xf1": "n\u0303",
10663 "\u0148": "n\u030c",
10664 "\u1e45": "n\u0307",
10665 "\xf3": "o\u0301",
10666 "\xf2": "o\u0300",
10667 "\xf6": "o\u0308",
10668 "\u022b": "o\u0308\u0304",
10669 "\xf5": "o\u0303",
10670 "\u1e4d": "o\u0303\u0301",
10671 "\u1e4f": "o\u0303\u0308",
10672 "\u022d": "o\u0303\u0304",
10673 "\u014d": "o\u0304",
10674 "\u1e53": "o\u0304\u0301",
10675 "\u1e51": "o\u0304\u0300",
10676 "\u014f": "o\u0306",
10677 "\u01d2": "o\u030c",
10678 "\xf4": "o\u0302",
10679 "\u1ed1": "o\u0302\u0301",
10680 "\u1ed3": "o\u0302\u0300",
10681 "\u1ed7": "o\u0302\u0303",
10682 "\u022f": "o\u0307",
10683 "\u0231": "o\u0307\u0304",
10684 "\u0151": "o\u030b",
10685 "\u1e55": "p\u0301",
10686 "\u1e57": "p\u0307",
10687 "\u0155": "r\u0301",
10688 "\u0159": "r\u030c",
10689 "\u1e59": "r\u0307",
10690 "\u015b": "s\u0301",
10691 "\u1e65": "s\u0301\u0307",
10692 "\u0161": "s\u030c",
10693 "\u1e67": "s\u030c\u0307",
10694 "\u015d": "s\u0302",
10695 "\u1e61": "s\u0307",
10696 "\u1e97": "t\u0308",
10697 "\u0165": "t\u030c",
10698 "\u1e6b": "t\u0307",
10699 "\xfa": "u\u0301",
10700 "\xf9": "u\u0300",
10701 "\xfc": "u\u0308",
10702 "\u01d8": "u\u0308\u0301",
10703 "\u01dc": "u\u0308\u0300",
10704 "\u01d6": "u\u0308\u0304",
10705 "\u01da": "u\u0308\u030c",
10706 "\u0169": "u\u0303",
10707 "\u1e79": "u\u0303\u0301",
10708 "\u016b": "u\u0304",
10709 "\u1e7b": "u\u0304\u0308",
10710 "\u016d": "u\u0306",
10711 "\u01d4": "u\u030c",
10712 "\xfb": "u\u0302",
10713 "\u016f": "u\u030a",
10714 "\u0171": "u\u030b",
10715 "\u1e7d": "v\u0303",
10716 "\u1e83": "w\u0301",
10717 "\u1e81": "w\u0300",
10718 "\u1e85": "w\u0308",
10719 "\u0175": "w\u0302",
10720 "\u1e87": "w\u0307",
10721 "\u1e98": "w\u030a",
10722 "\u1e8d": "x\u0308",
10723 "\u1e8b": "x\u0307",
10724 "\xfd": "y\u0301",
10725 "\u1ef3": "y\u0300",
10726 "\xff": "y\u0308",
10727 "\u1ef9": "y\u0303",
10728 "\u0233": "y\u0304",
10729 "\u0177": "y\u0302",
10730 "\u1e8f": "y\u0307",
10731 "\u1e99": "y\u030a",
10732 "\u017a": "z\u0301",
10733 "\u017e": "z\u030c",
10734 "\u1e91": "z\u0302",
10735 "\u017c": "z\u0307",
10736 "\xc1": "A\u0301",
10737 "\xc0": "A\u0300",
10738 "\xc4": "A\u0308",
10739 "\u01de": "A\u0308\u0304",
10740 "\xc3": "A\u0303",
10741 "\u0100": "A\u0304",
10742 "\u0102": "A\u0306",
10743 "\u1eae": "A\u0306\u0301",
10744 "\u1eb0": "A\u0306\u0300",
10745 "\u1eb4": "A\u0306\u0303",
10746 "\u01cd": "A\u030c",
10747 "\xc2": "A\u0302",
10748 "\u1ea4": "A\u0302\u0301",
10749 "\u1ea6": "A\u0302\u0300",
10750 "\u1eaa": "A\u0302\u0303",
10751 "\u0226": "A\u0307",
10752 "\u01e0": "A\u0307\u0304",
10753 "\xc5": "A\u030a",
10754 "\u01fa": "A\u030a\u0301",
10755 "\u1e02": "B\u0307",
10756 "\u0106": "C\u0301",
10757 "\u010c": "C\u030c",
10758 "\u0108": "C\u0302",
10759 "\u010a": "C\u0307",
10760 "\u010e": "D\u030c",
10761 "\u1e0a": "D\u0307",
10762 "\xc9": "E\u0301",
10763 "\xc8": "E\u0300",
10764 "\xcb": "E\u0308",
10765 "\u1ebc": "E\u0303",
10766 "\u0112": "E\u0304",
10767 "\u1e16": "E\u0304\u0301",
10768 "\u1e14": "E\u0304\u0300",
10769 "\u0114": "E\u0306",
10770 "\u011a": "E\u030c",
10771 "\xca": "E\u0302",
10772 "\u1ebe": "E\u0302\u0301",
10773 "\u1ec0": "E\u0302\u0300",
10774 "\u1ec4": "E\u0302\u0303",
10775 "\u0116": "E\u0307",
10776 "\u1e1e": "F\u0307",
10777 "\u01f4": "G\u0301",
10778 "\u1e20": "G\u0304",
10779 "\u011e": "G\u0306",
10780 "\u01e6": "G\u030c",
10781 "\u011c": "G\u0302",
10782 "\u0120": "G\u0307",
10783 "\u1e26": "H\u0308",
10784 "\u021e": "H\u030c",
10785 "\u0124": "H\u0302",
10786 "\u1e22": "H\u0307",
10787 "\xcd": "I\u0301",
10788 "\xcc": "I\u0300",
10789 "\xcf": "I\u0308",
10790 "\u1e2e": "I\u0308\u0301",
10791 "\u0128": "I\u0303",
10792 "\u012a": "I\u0304",
10793 "\u012c": "I\u0306",
10794 "\u01cf": "I\u030c",
10795 "\xce": "I\u0302",
10796 "\u0130": "I\u0307",
10797 "\u0134": "J\u0302",
10798 "\u1e30": "K\u0301",
10799 "\u01e8": "K\u030c",
10800 "\u0139": "L\u0301",
10801 "\u013d": "L\u030c",
10802 "\u1e3e": "M\u0301",
10803 "\u1e40": "M\u0307",
10804 "\u0143": "N\u0301",
10805 "\u01f8": "N\u0300",
10806 "\xd1": "N\u0303",
10807 "\u0147": "N\u030c",
10808 "\u1e44": "N\u0307",
10809 "\xd3": "O\u0301",
10810 "\xd2": "O\u0300",
10811 "\xd6": "O\u0308",
10812 "\u022a": "O\u0308\u0304",
10813 "\xd5": "O\u0303",
10814 "\u1e4c": "O\u0303\u0301",
10815 "\u1e4e": "O\u0303\u0308",
10816 "\u022c": "O\u0303\u0304",
10817 "\u014c": "O\u0304",
10818 "\u1e52": "O\u0304\u0301",
10819 "\u1e50": "O\u0304\u0300",
10820 "\u014e": "O\u0306",
10821 "\u01d1": "O\u030c",
10822 "\xd4": "O\u0302",
10823 "\u1ed0": "O\u0302\u0301",
10824 "\u1ed2": "O\u0302\u0300",
10825 "\u1ed6": "O\u0302\u0303",
10826 "\u022e": "O\u0307",
10827 "\u0230": "O\u0307\u0304",
10828 "\u0150": "O\u030b",
10829 "\u1e54": "P\u0301",
10830 "\u1e56": "P\u0307",
10831 "\u0154": "R\u0301",
10832 "\u0158": "R\u030c",
10833 "\u1e58": "R\u0307",
10834 "\u015a": "S\u0301",
10835 "\u1e64": "S\u0301\u0307",
10836 "\u0160": "S\u030c",
10837 "\u1e66": "S\u030c\u0307",
10838 "\u015c": "S\u0302",
10839 "\u1e60": "S\u0307",
10840 "\u0164": "T\u030c",
10841 "\u1e6a": "T\u0307",
10842 "\xda": "U\u0301",
10843 "\xd9": "U\u0300",
10844 "\xdc": "U\u0308",
10845 "\u01d7": "U\u0308\u0301",
10846 "\u01db": "U\u0308\u0300",
10847 "\u01d5": "U\u0308\u0304",
10848 "\u01d9": "U\u0308\u030c",
10849 "\u0168": "U\u0303",
10850 "\u1e78": "U\u0303\u0301",
10851 "\u016a": "U\u0304",
10852 "\u1e7a": "U\u0304\u0308",
10853 "\u016c": "U\u0306",
10854 "\u01d3": "U\u030c",
10855 "\xdb": "U\u0302",
10856 "\u016e": "U\u030a",
10857 "\u0170": "U\u030b",
10858 "\u1e7c": "V\u0303",
10859 "\u1e82": "W\u0301",
10860 "\u1e80": "W\u0300",
10861 "\u1e84": "W\u0308",
10862 "\u0174": "W\u0302",
10863 "\u1e86": "W\u0307",
10864 "\u1e8c": "X\u0308",
10865 "\u1e8a": "X\u0307",
10866 "\xdd": "Y\u0301",
10867 "\u1ef2": "Y\u0300",
10868 "\u0178": "Y\u0308",
10869 "\u1ef8": "Y\u0303",
10870 "\u0232": "Y\u0304",
10871 "\u0176": "Y\u0302",
10872 "\u1e8e": "Y\u0307",
10873 "\u0179": "Z\u0301",
10874 "\u017d": "Z\u030c",
10875 "\u1e90": "Z\u0302",
10876 "\u017b": "Z\u0307",
10877 "\u03ac": "\u03b1\u0301",
10878 "\u1f70": "\u03b1\u0300",
10879 "\u1fb1": "\u03b1\u0304",
10880 "\u1fb0": "\u03b1\u0306",
10881 "\u03ad": "\u03b5\u0301",
10882 "\u1f72": "\u03b5\u0300",
10883 "\u03ae": "\u03b7\u0301",
10884 "\u1f74": "\u03b7\u0300",
10885 "\u03af": "\u03b9\u0301",
10886 "\u1f76": "\u03b9\u0300",
10887 "\u03ca": "\u03b9\u0308",
10888 "\u0390": "\u03b9\u0308\u0301",
10889 "\u1fd2": "\u03b9\u0308\u0300",
10890 "\u1fd1": "\u03b9\u0304",
10891 "\u1fd0": "\u03b9\u0306",
10892 "\u03cc": "\u03bf\u0301",
10893 "\u1f78": "\u03bf\u0300",
10894 "\u03cd": "\u03c5\u0301",
10895 "\u1f7a": "\u03c5\u0300",
10896 "\u03cb": "\u03c5\u0308",
10897 "\u03b0": "\u03c5\u0308\u0301",
10898 "\u1fe2": "\u03c5\u0308\u0300",
10899 "\u1fe1": "\u03c5\u0304",
10900 "\u1fe0": "\u03c5\u0306",
10901 "\u03ce": "\u03c9\u0301",
10902 "\u1f7c": "\u03c9\u0300",
10903 "\u038e": "\u03a5\u0301",
10904 "\u1fea": "\u03a5\u0300",
10905 "\u03ab": "\u03a5\u0308",
10906 "\u1fe9": "\u03a5\u0304",
10907 "\u1fe8": "\u03a5\u0306",
10908 "\u038f": "\u03a9\u0301",
10909 "\u1ffa": "\u03a9\u0300",
10910 },
10911 Sa = (function () {
10912 function t(t, e) {
10913 ((this.mode = void 0),
10914 (this.gullet = void 0),
10915 (this.settings = void 0),
10916 (this.leftrightDepth = void 0),
10917 (this.nextToken = void 0),
10918 (this.mode = "math"),
10919 (this.gullet = new ya(t, e, this.mode)),
10920 (this.settings = e),
10921 (this.leftrightDepth = 0));
10922 }
10923 var e = t.prototype;
10924 return (
10925 (e.expect = function (t, e) {
10926 if ((void 0 === e && (e = !0), this.fetch().text !== t))
10927 throw new o(
10928 "Expected '" + t + "', got '" + this.fetch().text + "'",
10929 this.fetch(),
10930 );
10931 e && this.consume();
10932 }),
10933 (e.consume = function () {
10934 this.nextToken = null;
10935 }),
10936 (e.fetch = function () {
10937 return (
10938 null == this.nextToken &&
10939 (this.nextToken = this.gullet.expandNextToken()),
10940 this.nextToken
10941 );
10942 }),
10943 (e.switchMode = function (t) {
10944 ((this.mode = t), this.gullet.switchMode(t));
10945 }),
10946 (e.parse = function () {
10947 (this.settings.globalGroup || this.gullet.beginGroup(),
10948 this.settings.colorIsTextColor &&
10949 this.gullet.macros.set("\\color", "\\textcolor"));
10950 var t = this.parseExpression(!1);
10951 return (
10952 this.expect("EOF"),
10953 this.settings.globalGroup || this.gullet.endGroup(),
10954 t
10955 );
10956 }),
10957 (e.parseExpression = function (e, r) {
10958 for (var a = []; ; ) {
10959 "math" === this.mode && this.consumeSpaces();
10960 var n = this.fetch();
10961 if (-1 !== t.endOfExpression.indexOf(n.text)) break;
10962 if (r && n.text === r) break;
10963 if (e && ia[n.text] && ia[n.text].infix) break;
10964 var i = this.parseAtom(r);
10965 if (!i) break;
10966 "internal" !== i.type && a.push(i);
10967 }
10968 return (
10969 "text" === this.mode && this.formLigatures(a),
10970 this.handleInfixNodes(a)
10971 );
10972 }),
10973 (e.handleInfixNodes = function (t) {
10974 for (var e, r = -1, a = 0; a < t.length; a++)
10975 if ("infix" === t[a].type) {
10976 if (-1 !== r)
10977 throw new o(
10978 "only one infix operator per group",
10979 t[a].token,
10980 );
10981 ((r = a), (e = t[a].replaceWith));
10982 }
10983 if (-1 !== r && e) {
10984 var n,
10985 i,
10986 s = t.slice(0, r),
10987 l = t.slice(r + 1);
10988 return (
10989 (n =
10990 1 === s.length && "ordgroup" === s[0].type
10991 ? s[0]
10992 : { type: "ordgroup", mode: this.mode, body: s }),
10993 (i =
10994 1 === l.length && "ordgroup" === l[0].type
10995 ? l[0]
10996 : { type: "ordgroup", mode: this.mode, body: l }),
10997 [
10998 "\\\\abovefrac" === e
10999 ? this.callFunction(e, [n, t[r], i], [])
11000 : this.callFunction(e, [n, i], []),
11001 ]
11002 );
11003 }
11004 return t;
11005 }),
11006 (e.handleSupSubscript = function (e) {
11007 var r = this.fetch(),
11008 a = r.text;
11009 this.consume();
11010 var n = this.parseGroup(
11011 e,
11012 !1,
11013 t.SUPSUB_GREEDINESS,
11014 void 0,
11015 void 0,
11016 !0,
11017 );
11018 if (!n) throw new o("Expected group after '" + a + "'", r);
11019 return n;
11020 }),
11021 (e.formatUnsupportedCmd = function (t) {
11022 for (var e = [], r = 0; r < t.length; r++)
11023 e.push({ type: "textord", mode: "text", text: t[r] });
11024 var a = { type: "text", mode: this.mode, body: e };
11025 return {
11026 type: "color",
11027 mode: this.mode,
11028 color: this.settings.errorColor,
11029 body: [a],
11030 };
11031 }),
11032 (e.parseAtom = function (t) {
11033 var e,
11034 r,
11035 a = this.parseGroup("atom", !1, null, t);
11036 if ("text" === this.mode) return a;
11037 for (;;) {
11038 this.consumeSpaces();
11039 var n = this.fetch();
11040 if ("\\limits" === n.text || "\\nolimits" === n.text) {
11041 if (a && "op" === a.type) {
11042 var i = "\\limits" === n.text;
11043 ((a.limits = i), (a.alwaysHandleSupSub = !0));
11044 } else {
11045 if (
11046 !a ||
11047 "operatorname" !== a.type ||
11048 !a.alwaysHandleSupSub
11049 )
11050 throw new o(
11051 "Limit controls must follow a math operator",
11052 n,
11053 );
11054 var s = "\\limits" === n.text;
11055 a.limits = s;
11056 }
11057 this.consume();
11058 } else if ("^" === n.text) {
11059 if (e) throw new o("Double superscript", n);
11060 e = this.handleSupSubscript("superscript");
11061 } else if ("_" === n.text) {
11062 if (r) throw new o("Double subscript", n);
11063 r = this.handleSupSubscript("subscript");
11064 } else {
11065 if ("'" !== n.text) break;
11066 if (e) throw new o("Double superscript", n);
11067 var l = { type: "textord", mode: this.mode, text: "\\prime" },
11068 h = [l];
11069 for (this.consume(); "'" === this.fetch().text; )
11070 (h.push(l), this.consume());
11071 ("^" === this.fetch().text &&
11072 h.push(this.handleSupSubscript("superscript")),
11073 (e = { type: "ordgroup", mode: this.mode, body: h }));
11074 }
11075 }
11076 return e || r
11077 ? { type: "supsub", mode: this.mode, base: a, sup: e, sub: r }
11078 : a;
11079 }),
11080 (e.parseFunction = function (t, e, r) {
11081 var a = this.fetch(),
11082 n = a.text,
11083 i = ia[n];
11084 if (!i) return null;
11085 if ((this.consume(), null != r && i.greediness <= r))
11086 throw new o(
11087 "Got function '" +
11088 n +
11089 "' with no arguments" +
11090 (e ? " as " + e : ""),
11091 a,
11092 );
11093 if ("text" === this.mode && !i.allowedInText)
11094 throw new o("Can't use function '" + n + "' in text mode", a);
11095 if ("math" === this.mode && !1 === i.allowedInMath)
11096 throw new o("Can't use function '" + n + "' in math mode", a);
11097 var s = this.parseArguments(n, i),
11098 l = s.args,
11099 h = s.optArgs;
11100 return this.callFunction(n, l, h, a, t);
11101 }),
11102 (e.callFunction = function (t, e, r, a, n) {
11103 var i = {
11104 funcName: t,
11105 parser: this,
11106 token: a,
11107 breakOnTokenText: n,
11108 },
11109 s = ia[t];
11110 if (s && s.handler) return s.handler(i, e, r);
11111 throw new o("No function handler for " + t);
11112 }),
11113 (e.parseArguments = function (t, e) {
11114 var r = e.numArgs + e.numOptionalArgs;
11115 if (0 === r) return { args: [], optArgs: [] };
11116 for (var a = e.greediness, n = [], i = [], s = 0; s < r; s++) {
11117 var l = e.argTypes && e.argTypes[s],
11118 h = s < e.numOptionalArgs,
11119 m = (s > 0 && !h) || (0 === s && !h && "math" === this.mode),
11120 c = this.parseGroupOfType(
11121 "argument to '" + t + "'",
11122 l,
11123 h,
11124 a,
11125 m,
11126 );
11127 if (!c) {
11128 if (h) {
11129 i.push(null);
11130 continue;
11131 }
11132 throw new o("Expected group after '" + t + "'", this.fetch());
11133 }
11134 (h ? i : n).push(c);
11135 }
11136 return { args: n, optArgs: i };
11137 }),
11138 (e.parseGroupOfType = function (t, e, r, a, n) {
11139 switch (e) {
11140 case "color":
11141 return (n && this.consumeSpaces(), this.parseColorGroup(r));
11142 case "size":
11143 return (n && this.consumeSpaces(), this.parseSizeGroup(r));
11144 case "url":
11145 return this.parseUrlGroup(r, n);
11146 case "math":
11147 case "text":
11148 return this.parseGroup(t, r, a, void 0, e, n);
11149 case "hbox":
11150 var i = this.parseGroup(t, r, a, void 0, "text", n);
11151 return i
11152 ? {
11153 type: "styling",
11154 mode: i.mode,
11155 body: [i],
11156 style: "text",
11157 }
11158 : i;
11159 case "raw":
11160 if (
11161 (n && this.consumeSpaces(), r && "{" === this.fetch().text)
11162 )
11163 return null;
11164 var s = this.parseStringGroup("raw", r, !0);
11165 if (s) return { type: "raw", mode: "text", string: s.text };
11166 throw new o("Expected raw group", this.fetch());
11167 case "original":
11168 case null:
11169 case void 0:
11170 return this.parseGroup(t, r, a, void 0, void 0, n);
11171 default:
11172 throw new o("Unknown group type as " + t, this.fetch());
11173 }
11174 }),
11175 (e.consumeSpaces = function () {
11176 for (; " " === this.fetch().text; ) this.consume();
11177 }),
11178 (e.parseStringGroup = function (t, e, r) {
11179 var a = e ? "[" : "{",
11180 n = e ? "]" : "}",
11181 i = this.fetch();
11182 if (i.text !== a) {
11183 if (e) return null;
11184 if (r && "EOF" !== i.text && /[^{}[\]]/.test(i.text))
11185 return (this.consume(), i);
11186 }
11187 var s = this.mode;
11188 ((this.mode = "text"), this.expect(a));
11189 for (
11190 var l, h = "", m = this.fetch(), c = 0, u = m;
11191 (l = this.fetch()).text !== n || (r && c > 0);
11192 ) {
11193 switch (l.text) {
11194 case "EOF":
11195 throw new o(
11196 "Unexpected end of input in " + t,
11197 m.range(u, h),
11198 );
11199 case a:
11200 c++;
11201 break;
11202 case n:
11203 c--;
11204 }
11205 ((h += (u = l).text), this.consume());
11206 }
11207 return (this.expect(n), (this.mode = s), m.range(u, h));
11208 }),
11209 (e.parseRegexGroup = function (t, e) {
11210 var r = this.mode;
11211 this.mode = "text";
11212 for (
11213 var a, n = this.fetch(), i = n, s = "";
11214 "EOF" !== (a = this.fetch()).text && t.test(s + a.text);
11215 )
11216 ((s += (i = a).text), this.consume());
11217 if ("" === s)
11218 throw new o("Invalid " + e + ": '" + n.text + "'", n);
11219 return ((this.mode = r), n.range(i, s));
11220 }),
11221 (e.parseColorGroup = function (t) {
11222 var e = this.parseStringGroup("color", t);
11223 if (!e) return null;
11224 var r = /^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(e.text);
11225 if (!r) throw new o("Invalid color: '" + e.text + "'", e);
11226 var a = r[0];
11227 return (
11228 /^[0-9a-f]{6}$/i.test(a) && (a = "#" + a),
11229 { type: "color-token", mode: this.mode, color: a }
11230 );
11231 }),
11232 (e.parseSizeGroup = function (t) {
11233 var e,
11234 r = !1;
11235 if (
11236 !(e =
11237 t || "{" === this.fetch().text
11238 ? this.parseStringGroup("size", t)
11239 : this.parseRegexGroup(
11240 /^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/,
11241 "size",
11242 ))
11243 )
11244 return null;
11245 t || 0 !== e.text.length || ((e.text = "0pt"), (r = !0));
11246 var a = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(e.text);
11247 if (!a) throw new o("Invalid size: '" + e.text + "'", e);
11248 var n = { number: +(a[1] + a[2]), unit: a[3] };
11249 if (!At(n)) throw new o("Invalid unit: '" + n.unit + "'", e);
11250 return { type: "size", mode: this.mode, value: n, isBlank: r };
11251 }),
11252 (e.parseUrlGroup = function (t, e) {
11253 this.gullet.lexer.setCatcode("%", 13);
11254 var r = this.parseStringGroup("url", t, !0);
11255 if ((this.gullet.lexer.setCatcode("%", 14), !r)) return null;
11256 var a = r.text.replace(/\\([#$%&~_^{}])/g, "$1");
11257 return { type: "url", mode: this.mode, url: a };
11258 }),
11259 (e.parseGroup = function (e, r, n, i, s, l) {
11260 var h = this.mode;
11261 (s && this.switchMode(s), l && this.consumeSpaces());
11262 var m,
11263 c = this.fetch(),
11264 u = c.text;
11265 if (r ? "[" === u : "{" === u || "\\begingroup" === u) {
11266 this.consume();
11267 var p = t.endOfGroup[u];
11268 this.gullet.beginGroup();
11269 var d = this.parseExpression(!1, p),
11270 f = this.fetch();
11271 (this.expect(p),
11272 this.gullet.endGroup(),
11273 (m = {
11274 type: "ordgroup",
11275 mode: this.mode,
11276 loc: a.range(c, f),
11277 body: d,
11278 semisimple: "\\begingroup" === u || void 0,
11279 }));
11280 } else if (r) m = null;
11281 else if (
11282 null ==
11283 (m = this.parseFunction(i, e, n) || this.parseSymbol()) &&
11284 "\\" === u[0] &&
11285 !ba.hasOwnProperty(u)
11286 ) {
11287 if (this.settings.throwOnError)
11288 throw new o("Undefined control sequence: " + u, c);
11289 ((m = this.formatUnsupportedCmd(u)), this.consume());
11290 }
11291 return (s && this.switchMode(h), m);
11292 }),
11293 (e.formLigatures = function (t) {
11294 for (var e = t.length - 1, r = 0; r < e; ++r) {
11295 var n = t[r],
11296 i = n.text;
11297 ("-" === i &&
11298 "-" === t[r + 1].text &&
11299 (r + 1 < e && "-" === t[r + 2].text
11300 ? (t.splice(r, 3, {
11301 type: "textord",
11302 mode: "text",
11303 loc: a.range(n, t[r + 2]),
11304 text: "---",
11305 }),
11306 (e -= 2))
11307 : (t.splice(r, 2, {
11308 type: "textord",
11309 mode: "text",
11310 loc: a.range(n, t[r + 1]),
11311 text: "--",
11312 }),
11313 (e -= 1))),
11314 ("'" !== i && "`" !== i) ||
11315 t[r + 1].text !== i ||
11316 (t.splice(r, 2, {
11317 type: "textord",
11318 mode: "text",
11319 loc: a.range(n, t[r + 1]),
11320 text: i + i,
11321 }),
11322 (e -= 1)));
11323 }
11324 }),
11325 (e.parseSymbol = function () {
11326 var t = this.fetch(),
11327 e = t.text;
11328 if (/^\\verb[^a-zA-Z]/.test(e)) {
11329 this.consume();
11330 var r = e.slice(5),
11331 n = "*" === r.charAt(0);
11332 if (
11333 (n && (r = r.slice(1)),
11334 r.length < 2 || r.charAt(0) !== r.slice(-1))
11335 )
11336 throw new o(
11337 "\\verb assertion failed --\n please report what input caused this bug",
11338 );
11339 return {
11340 type: "verb",
11341 mode: "text",
11342 body: (r = r.slice(1, -1)),
11343 star: n,
11344 };
11345 }
11346 ka.hasOwnProperty(e[0]) &&
11347 !j[this.mode][e[0]] &&
11348 (this.settings.strict &&
11349 "math" === this.mode &&
11350 this.settings.reportNonstrict(
11351 "unicodeTextInMathMode",
11352 'Accented Unicode text character "' +
11353 e[0] +
11354 '" used in math mode',
11355 t,
11356 ),
11357 (e = ka[e[0]] + e.substr(1)));
11358 var i,
11359 s = sa.exec(e);
11360 if (
11361 (s &&
11362 ("i" === (e = e.substring(0, s.index))
11363 ? (e = "\u0131")
11364 : "j" === e && (e = "\u0237")),
11365 j[this.mode][e])
11366 ) {
11367 this.settings.strict &&
11368 "math" === this.mode &&
11369 "\xc7\xd0\xde\xe7\xfe".indexOf(e) >= 0 &&
11370 this.settings.reportNonstrict(
11371 "unicodeTextInMathMode",
11372 'Latin-1/Unicode text character "' +
11373 e[0] +
11374 '" used in math mode',
11375 t,
11376 );
11377 var l,
11378 h = j[this.mode][e].group,
11379 m = a.range(t);
11380 if (W.hasOwnProperty(h)) {
11381 var c = h;
11382 l = {
11383 type: "atom",
11384 mode: this.mode,
11385 family: c,
11386 loc: m,
11387 text: e,
11388 };
11389 } else l = { type: h, mode: this.mode, loc: m, text: e };
11390 i = l;
11391 } else {
11392 if (!(e.charCodeAt(0) >= 128)) return null;
11393 (this.settings.strict &&
11394 (M(e.charCodeAt(0))
11395 ? "math" === this.mode &&
11396 this.settings.reportNonstrict(
11397 "unicodeTextInMathMode",
11398 'Unicode text character "' +
11399 e[0] +
11400 '" used in math mode',
11401 t,
11402 )
11403 : this.settings.reportNonstrict(
11404 "unknownSymbol",
11405 'Unrecognized Unicode character "' +
11406 e[0] +
11407 '" (' +
11408 e.charCodeAt(0) +
11409 ")",
11410 t,
11411 )),
11412 (i = {
11413 type: "textord",
11414 mode: "text",
11415 loc: a.range(t),
11416 text: e,
11417 }));
11418 }
11419 if ((this.consume(), s))
11420 for (var u = 0; u < s[0].length; u++) {
11421 var p = s[0][u];
11422 if (!wa[p]) throw new o("Unknown accent ' " + p + "'", t);
11423 var d = wa[p][this.mode];
11424 if (!d)
11425 throw new o(
11426 "Accent " + p + " unsupported in " + this.mode + " mode",
11427 t,
11428 );
11429 i = {
11430 type: "accent",
11431 mode: this.mode,
11432 loc: a.range(t),
11433 label: d,
11434 isStretchy: !1,
11435 isShifty: !0,
11436 base: i,
11437 };
11438 }
11439 return i;
11440 }),
11441 t
11442 );
11443 })();
11444 ((Sa.endOfExpression = ["}", "\\endgroup", "\\end", "\\right", "&"]),
11445 (Sa.endOfGroup = { "[": "]", "{": "}", "\\begingroup": "\\endgroup" }),
11446 (Sa.SUPSUB_GREEDINESS = 1));
11447 var Ma = function (t, e) {
11448 if (!("string" == typeof t || t instanceof String))
11449 throw new TypeError("KaTeX can only parse string typed expression");
11450 var r = new Sa(t, e);
11451 delete r.gullet.macros.current["\\df@tag"];
11452 var a = r.parse();
11453 if (r.gullet.macros.get("\\df@tag")) {
11454 if (!e.displayMode)
11455 throw new o("\\tag works only in display equations");
11456 (r.gullet.feed("\\df@tag"),
11457 (a = [{ type: "tag", mode: "text", body: a, tag: r.parse() }]));
11458 }
11459 return a;
11460 },
11461 za = function (t, e, r) {
11462 e.textContent = "";
11463 var a = Ta(t, r).toNode();
11464 e.appendChild(a);
11465 };
11466 "undefined" != typeof document &&
11467 "CSS1Compat" !== document.compatMode &&
11468 ("undefined" != typeof console &&
11469 console.warn(
11470 "Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype.",
11471 ),
11472 (za = function () {
11473 throw new o("KaTeX doesn't work in quirks mode.");
11474 }));
11475 var Aa = function (t, e, r) {
11476 if (r.throwOnError || !(t instanceof o)) throw t;
11477 var a = Dt.makeSpan(["katex-error"], [new E(e)]);
11478 return (
11479 a.setAttribute("title", t.toString()),
11480 a.setAttribute("style", "color:" + r.errorColor),
11481 a
11482 );
11483 },
11484 Ta = function (t, e) {
11485 var r = new u(e);
11486 try {
11487 var a = Ma(t, r);
11488 return ke(a, t, r);
11489 } catch (e) {
11490 return Aa(e, t, r);
11491 }
11492 },
11493 Ba = {
11494 version: "0.12.0",
11495 render: za,
11496 renderToString: function (t, e) {
11497 return Ta(t, e).toMarkup();
11498 },
11499 ParseError: o,
11500 __parse: function (t, e) {
11501 var r = new u(e);
11502 return Ma(t, r);
11503 },
11504 __renderToDomTree: Ta,
11505 __renderToHTMLTree: function (t, e) {
11506 var r = new u(e);
11507 try {
11508 return (function (t, e, r) {
11509 var a = le(t, ye(r)),
11510 n = Dt.makeSpan(["katex"], [a]);
11511 return we(n, r);
11512 })(Ma(t, r), 0, r);
11513 } catch (e) {
11514 return Aa(e, t, r);
11515 }
11516 },
11517 __setFontMetrics: function (t, e) {
11518 F[t] = e;
11519 },
11520 __defineSymbol: $,
11521 __defineMacro: pa,
11522 __domTree: {
11523 Span: N,
11524 Anchor: I,
11525 SymbolNode: E,
11526 SvgNode: L,
11527 PathNode: P,
11528 LineNode: D,
11529 },
11530 };
11531 e.default = Ba;
11532 },
11533 ]).default;
11534});