@kky42/pievo-server 2.3.0 → 2.4.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.output/nitro.json +1 -1
- package/.output/public/assets/MachinesModal-CSbnrUER.js +1 -0
- package/.output/public/assets/SignIn-0Tjqs-Ma.js +1 -0
- package/.output/public/assets/actionUi-DpwGIGpw.js +1 -0
- package/.output/public/assets/app-CaZpuwOS.css +2 -0
- package/.output/public/assets/index-CaS_SmDq.js +10 -0
- package/.output/public/assets/invite._token-Btg_0aLp.js +1 -0
- package/.output/public/assets/invite._token-KMD2JAgE.js +1 -0
- package/.output/public/assets/lifecycleUi-C7dwHtbw.js +1 -0
- package/.output/public/assets/loops._loopId-D5usF3DO.js +67 -0
- package/.output/public/assets/loops._loopId_.runs._runId-DRCgXaCq.js +3 -0
- package/.output/public/assets/preload-helper-DsxECZIS.js +5 -0
- package/.output/public/assets/routes-CtFgwdgW.js +1 -0
- package/.output/public/assets/routes-LDbnnQ3f.js +1 -0
- package/.output/public/assets/t._teamId-D41xcbsF.js +1 -0
- package/.output/public/assets/t._teamId-DUena1pV.js +1 -0
- package/.output/public/assets/ui-Do4gqMyP.js +1 -0
- package/.output/server/_libs/@base-ui/react+[...].mjs +4130 -4130
- package/.output/server/_libs/@tanstack/react-router+[...].mjs +1 -1
- package/.output/server/_libs/drizzle-orm+postgres.mjs +28 -1
- package/.output/server/_ssr/DashboardView-C2LdV6J0.mjs +914 -0
- package/.output/server/_ssr/{notifyFns-DuPR1zd7.mjs → MachinesModal-BjkcVjjx.mjs} +55 -35
- package/.output/server/_ssr/{SignIn-RmpWm9uy.mjs → SignIn-DEGrvJvb.mjs} +10 -24
- package/.output/server/_ssr/SocialLinks-Cm4H8pUJ.mjs +1044 -0
- package/.output/server/_ssr/{actionUi-BN55TNYE.mjs → actionUi-DJBWuNwr.mjs} +3 -3
- package/.output/server/_ssr/{artifactFiles-BCaIIrrT.mjs → artifactFiles-DtpRidFZ.mjs} +7 -8
- package/.output/server/_ssr/{artifactKind-BW0isV8L.mjs → artifactKind-FBYbgSuf.mjs} +27 -2
- package/.output/server/_ssr/artifacts-BR3jj0NC.mjs +2 -0
- package/.output/server/_ssr/{auth-30Z4lV1w.mjs → auth-C0zoZCGe.mjs} +16 -19
- package/.output/server/_ssr/boot-CdOO4xOo.mjs +2 -0
- package/.output/server/_ssr/{boot-3BNKujyp.mjs → boot-sNlIkoLe.mjs} +1331 -3927
- package/.output/server/_ssr/{bun-sqlite-dialect-BW9W1_Ps-_7tfuNRi.mjs → bun-sqlite-dialect-BW9W1_Ps-DmlZWqO7.mjs} +2 -2
- package/.output/server/_ssr/{d1-sqlite-dialect-BLC8LXE6-ucDUbeBk.mjs → d1-sqlite-dialect-BLC8LXE6-CCNzqZwZ.mjs} +2 -2
- package/.output/server/_ssr/db-CwLD-5w1.mjs +2 -0
- package/.output/server/_ssr/{dist-Cd6nlLlO.mjs → dist-B3SxDOpW.mjs} +2 -2
- package/.output/server/_ssr/{factory-CWWwV7XZ.mjs → factory-Dv3Zopis.mjs} +2 -2
- package/.output/server/_ssr/invite._token-CJ6-H-s3.mjs +20 -0
- package/.output/server/_ssr/{invite._token-SdWXemIc.mjs → invite._token-dLKDJKVs.mjs} +9 -17
- package/.output/server/_ssr/{invite._token-BKlz0R2f.mjs → invite._token-l1SjouDz.mjs} +6 -15
- package/.output/server/_ssr/{kysely-adapter-C8iS51DB.mjs → kysely-adapter-nL7WKSgw.mjs} +1 -1
- package/.output/server/_ssr/{lifecycleUi-DgBQAYzp.mjs → lifecycleUi-Dad3hvhm.mjs} +11 -11
- package/.output/server/_ssr/logger-B8m8F1Qu.mjs +2 -0
- package/.output/server/_ssr/loopApi-BKyFB4KM.mjs +342 -0
- package/.output/server/_ssr/{adapters-BoLkOf1T.mjs → loopProjection-B8a829ij.mjs} +25 -55
- package/.output/server/_ssr/loops._loopId-DS16Phmq.mjs +1271 -0
- package/.output/server/_ssr/{loops._loopId_.runs._runId-PUGBrD5q.mjs → loops._loopId_.runs._runId-BEJI6iK5.mjs} +23 -74
- package/.output/server/_ssr/{loops._loopId_.runs._runId-Ymy4lwee.mjs → loops._loopId_.runs._runId-CduETLqH.mjs} +4 -5
- package/.output/server/_ssr/{machineFns-BZ9puxDt.mjs → machineFns-ByMsgG12.mjs} +3 -5
- package/.output/server/_ssr/{node-sqlite-dialect-D_3JmkMo.mjs → node-sqlite-dialect-CjNineno.mjs} +2 -2
- package/.output/server/_ssr/router-CXyrnvx-.mjs +565 -0
- package/.output/server/_ssr/{routes-ClZEdsnB.mjs → routes-BulNEUEE.mjs} +6 -10
- package/.output/server/_ssr/{routes-ComqHvCL.mjs → routes-DD94baie.mjs} +3 -3
- package/.output/server/_ssr/{routes-D5jJJ-30.mjs → routes-Wjexi35W.mjs} +6 -6
- package/.output/server/_ssr/runDiff-Ba8Lg1vg.mjs +2 -0
- package/.output/server/_ssr/ssr.mjs +60 -100
- package/.output/server/_ssr/store-Cujtg2QE.mjs +2 -0
- package/.output/server/_ssr/{t._teamId-BgHV_KFP.mjs → t._teamId-1CreIlPV.mjs} +7 -11
- package/.output/server/_ssr/{t._teamId-DDERNgfn.mjs → t._teamId-Bd6-zZsy.mjs} +4 -4
- package/.output/server/_ssr/{t._teamId-DRJvKHZn.mjs → t._teamId-COuMKQ4r.mjs} +7 -7
- package/.output/server/_ssr/{teamFns-Bp81UO-x.mjs → teamFns-H438WnZC.mjs} +12 -30
- package/.output/server/_ssr/{teamFns-bm82twd5.mjs → teamFns-j2JKjorZ.mjs} +2 -2
- package/.output/server/_ssr/tokens-DgG_Syq3.mjs +2 -0
- package/.output/server/_ssr/{ui-Ww2tTM2u.mjs → ui-D5KWstlb.mjs} +26 -48
- package/.output/server/{_tanstack-start-manifest_v-DwKENYCN.mjs → _tanstack-start-manifest_v-3H7yBKLz.mjs} +25 -35
- package/{drizzle/0000_round_marauders.sql → .output/server/drizzle/0000_baseline.sql} +102 -44
- package/.output/server/drizzle/meta/_journal.json +3 -115
- package/.output/server/index.mjs +83 -132
- package/{.output/server/drizzle/0000_round_marauders.sql → drizzle/0000_baseline.sql} +102 -44
- package/drizzle/meta/_journal.json +3 -115
- package/package.json +2 -11
- package/scripts/pievo-server.mjs +3 -1
- package/scripts/server-cli-lib.mjs +23 -16
- package/.output/public/assets/CodeField-dOzyFQNH.js +0 -34
- package/.output/public/assets/LoopView-DjVHUyrR.js +0 -59
- package/.output/public/assets/Modal-CCRvx959.js +0 -1
- package/.output/public/assets/SignIn-Qxw5zDFq.js +0 -1
- package/.output/public/assets/actionUi-CXxhzYe2.js +0 -1
- package/.output/public/assets/app-D1cij_NJ.css +0 -2
- package/.output/public/assets/artifactView-Cd5wWPil.js +0 -66
- package/.output/public/assets/index-BRN_CQ8U.js +0 -12
- package/.output/public/assets/invite._token-BIxr8DlP.js +0 -1
- package/.output/public/assets/invite._token-j2BTCeG1.js +0 -1
- package/.output/public/assets/jsx-runtime-BseJUIpC.js +0 -1
- package/.output/public/assets/lifecycleUi-Qy_8beQK.js +0 -1
- package/.output/public/assets/loopApi-CT1mMhlb.js +0 -3
- package/.output/public/assets/loops._loopId-BRBQzioy.js +0 -4
- package/.output/public/assets/loops._loopId_.runs._runId-CMnOJkem.js +0 -3
- package/.output/public/assets/notifyFns-DYD4EKaG.js +0 -1
- package/.output/public/assets/preload-helper-DFkkpP6W.js +0 -3
- package/.output/public/assets/routes-3nuEJGdo.js +0 -1
- package/.output/public/assets/routes-DORLim-C.js +0 -1
- package/.output/public/assets/t._teamId-F5f4K8kd.js +0 -1
- package/.output/public/assets/t._teamId-XfE_S1Fo.js +0 -1
- package/.output/public/assets/ui-Dhsx6SW0.js +0 -1
- package/.output/public/assets/useRouter-DsjH8G0p.js +0 -1
- package/.output/server/_libs/@codemirror/autocomplete+[...].mjs +0 -19713
- package/.output/server/_libs/@codemirror/lang-css+[...].mjs +0 -2636
- package/.output/server/_libs/@codemirror/lang-html+[...].mjs +0 -2247
- package/.output/server/_libs/@codemirror/lang-json+[...].mjs +0 -79
- package/.output/server/_libs/@reduxjs/toolkit+[...].mjs +0 -1736
- package/.output/server/_libs/@uiw/codemirror-extensions-basic-setup+[...].mjs +0 -76
- package/.output/server/_libs/babel__runtime.mjs +0 -30
- package/.output/server/_libs/clsx.mjs +0 -16
- package/.output/server/_libs/codemirror__commands.mjs +0 -1725
- package/.output/server/_libs/codemirror__lint.mjs +0 -565
- package/.output/server/_libs/codemirror__search.mjs +0 -1138
- package/.output/server/_libs/codemirror__theme-one-dark.mjs +0 -161
- package/.output/server/_libs/d3-array.mjs +0 -231
- package/.output/server/_libs/d3-color.mjs +0 -330
- package/.output/server/_libs/d3-format.mjs +0 -252
- package/.output/server/_libs/d3-interpolate.mjs +0 -163
- package/.output/server/_libs/d3-path.mjs +0 -77
- package/.output/server/_libs/d3-scale+[...].mjs +0 -1907
- package/.output/server/_libs/d3-shape.mjs +0 -818
- package/.output/server/_libs/decimal.js-light.mjs +0 -884
- package/.output/server/_libs/dom-serializer+[...].mjs +0 -708
- package/.output/server/_libs/domhandler.mjs +0 -461
- package/.output/server/_libs/domutils.mjs +0 -868
- package/.output/server/_libs/es-toolkit.mjs +0 -1737
- package/.output/server/_libs/eventemitter3.mjs +0 -236
- package/.output/server/_libs/html-dom-parser+htmlparser2.mjs +0 -1560
- package/.output/server/_libs/html-react-parser+[...].mjs +0 -1360
- package/.output/server/_libs/react-is.mjs +0 -48
- package/.output/server/_libs/react-redux+[...].mjs +0 -205
- package/.output/server/_libs/recharts+victory-vendor.mjs +0 -17303
- package/.output/server/_libs/uiw__codemirror-themes.mjs +0 -32
- package/.output/server/_libs/uiw__react-codemirror.mjs +0 -354
- package/.output/server/_ssr/CodeField-B7oOmmwH.mjs +0 -143
- package/.output/server/_ssr/DashboardView-BF7PciP7.mjs +0 -2736
- package/.output/server/_ssr/LoopPlaybook-DC7QVvPY.mjs +0 -2105
- package/.output/server/_ssr/LoopView-DwSrm9Ja.mjs +0 -1300
- package/.output/server/_ssr/Modal-MaCG52Pv.mjs +0 -49
- package/.output/server/_ssr/artifactView-iuPsp5aa.mjs +0 -304
- package/.output/server/_ssr/artifacts-jQ-bfdhI.mjs +0 -2
- package/.output/server/_ssr/boot-CsEFT53K.mjs +0 -2
- package/.output/server/_ssr/db-CXownd1H.mjs +0 -2
- package/.output/server/_ssr/invite._token-CWl6kipD.mjs +0 -28
- package/.output/server/_ssr/logger-Gy-47z3k.mjs +0 -2
- package/.output/server/_ssr/loopApi-8_KgBapr.mjs +0 -109
- package/.output/server/_ssr/loopApi-ABi9SgWS.mjs +0 -564
- package/.output/server/_ssr/loops._loopId-SON_t43g.mjs +0 -30
- package/.output/server/_ssr/loops._loopId-p1KWsvMM.mjs +0 -1477
- package/.output/server/_ssr/notifyFns-BUCePuF3.mjs +0 -118
- package/.output/server/_ssr/router-Czxvra6l.mjs +0 -685
- package/.output/server/_ssr/runDiff--qLtU4FI.mjs +0 -2
- package/.output/server/_ssr/store-40eVzW1S.mjs +0 -2
- package/.output/server/_ssr/tokens-CbfoRC_s.mjs +0 -2
- package/.output/server/drizzle/0001_naive_silver_fox.sql +0 -25
- package/.output/server/drizzle/0002_funny_sage.sql +0 -12
- package/.output/server/drizzle/0003_optimal_slapstick.sql +0 -102
- package/.output/server/drizzle/0004_remove_grok_agent.sql +0 -5
- package/.output/server/drizzle/0005_heavy_gauntlet.sql +0 -8
- package/.output/server/drizzle/0006_tranquil_sharon_carter.sql +0 -1
- package/.output/server/drizzle/0007_faulty_starbolt.sql +0 -30
- package/.output/server/drizzle/0008_durable_lifecycle_evidence.sql +0 -15
- package/.output/server/drizzle/0009_ordinary_electro.sql +0 -1
- package/.output/server/drizzle/0010_workable_rage.sql +0 -14
- package/.output/server/drizzle/0011_steep_marvel_zombies.sql +0 -3
- package/.output/server/drizzle/0012_blocked_run_status.sql +0 -12
- package/.output/server/drizzle/0013_drop_run_outcome.sql +0 -2
- package/.output/server/drizzle/0014_luxuriant_scrambler.sql +0 -5
- package/.output/server/drizzle/0015_run_history_foundation.sql +0 -43
- package/.output/server/drizzle/0016_plural_machine_runs.sql +0 -4
- package/.output/server/drizzle/meta/0000_snapshot.json +0 -1333
- package/.output/server/drizzle/meta/0001_snapshot.json +0 -1498
- package/.output/server/drizzle/meta/0002_snapshot.json +0 -1576
- package/.output/server/drizzle/meta/0003_snapshot.json +0 -1666
- package/.output/server/drizzle/meta/0005_snapshot.json +0 -1666
- package/.output/server/drizzle/meta/0006_snapshot.json +0 -1672
- package/.output/server/drizzle/meta/0007_snapshot.json +0 -1787
- package/.output/server/drizzle/meta/0009_snapshot.json +0 -1793
- package/.output/server/drizzle/meta/0010_snapshot.json +0 -1891
- package/.output/server/drizzle/meta/0011_snapshot.json +0 -1872
- package/drizzle/0001_naive_silver_fox.sql +0 -25
- package/drizzle/0002_funny_sage.sql +0 -12
- package/drizzle/0003_optimal_slapstick.sql +0 -102
- package/drizzle/0004_remove_grok_agent.sql +0 -5
- package/drizzle/0005_heavy_gauntlet.sql +0 -8
- package/drizzle/0006_tranquil_sharon_carter.sql +0 -1
- package/drizzle/0007_faulty_starbolt.sql +0 -30
- package/drizzle/0008_durable_lifecycle_evidence.sql +0 -15
- package/drizzle/0009_ordinary_electro.sql +0 -1
- package/drizzle/0010_workable_rage.sql +0 -14
- package/drizzle/0011_steep_marvel_zombies.sql +0 -3
- package/drizzle/0012_blocked_run_status.sql +0 -12
- package/drizzle/0013_drop_run_outcome.sql +0 -2
- package/drizzle/0014_luxuriant_scrambler.sql +0 -5
- package/drizzle/0015_run_history_foundation.sql +0 -43
- package/drizzle/0016_plural_machine_runs.sql +0 -4
- package/drizzle/meta/0000_snapshot.json +0 -1333
- package/drizzle/meta/0001_snapshot.json +0 -1498
- package/drizzle/meta/0002_snapshot.json +0 -1576
- package/drizzle/meta/0003_snapshot.json +0 -1666
- package/drizzle/meta/0005_snapshot.json +0 -1666
- package/drizzle/meta/0006_snapshot.json +0 -1672
- package/drizzle/meta/0007_snapshot.json +0 -1787
- package/drizzle/meta/0009_snapshot.json +0 -1793
- package/drizzle/meta/0010_snapshot.json +0 -1891
- package/drizzle/meta/0011_snapshot.json +0 -1872
|
@@ -1,2247 +0,0 @@
|
|
|
1
|
-
import { A as sublanguageProp, B as NodeWeakMap, I as IterMode, K as EditorView, M as syntaxTree, N as styleTags, P as tags, S as foldNodeProp, T as indentNodeProp, U as parseMixed, _ as delimitedIndent, b as foldInside, d as LanguageSupport, g as defineLanguageFacet, gt as EditorSelection, i as completeFromList, m as continuedIndent, o as ifNotIn, p as bracketMatchingHandle, s as snippetCompletion, u as LRLanguage, v as flatIndent } from "./autocomplete+[...].mjs";
|
|
2
|
-
import { a as LRParser, i as ExternalTokenizer, n as cssLanguage, o as LocalTokenGroup, r as ContextTracker, t as css } from "./lang-css+[...].mjs";
|
|
3
|
-
//#region ../../node_modules/.pnpm/@lezer+javascript@1.5.4/node_modules/@lezer/javascript/dist/index.js
|
|
4
|
-
var noSemi = 316, noSemiType = 317, incdec = 1, incdecPrefix = 2, questionDot = 3, JSXStartTag = 4, insertSemi = 318, spaces = 320, newline = 321, LineComment = 5, BlockComment = 6, Dialect_jsx = 0;
|
|
5
|
-
var space = [
|
|
6
|
-
9,
|
|
7
|
-
10,
|
|
8
|
-
11,
|
|
9
|
-
12,
|
|
10
|
-
13,
|
|
11
|
-
32,
|
|
12
|
-
133,
|
|
13
|
-
160,
|
|
14
|
-
5760,
|
|
15
|
-
8192,
|
|
16
|
-
8193,
|
|
17
|
-
8194,
|
|
18
|
-
8195,
|
|
19
|
-
8196,
|
|
20
|
-
8197,
|
|
21
|
-
8198,
|
|
22
|
-
8199,
|
|
23
|
-
8200,
|
|
24
|
-
8201,
|
|
25
|
-
8202,
|
|
26
|
-
8232,
|
|
27
|
-
8233,
|
|
28
|
-
8239,
|
|
29
|
-
8287,
|
|
30
|
-
12288
|
|
31
|
-
];
|
|
32
|
-
var braceR = 125, semicolon = 59, slash$1 = 47, star = 42, plus = 43, minus = 45, lt = 60, comma = 44, question$1 = 63, dot = 46, bracketL = 91;
|
|
33
|
-
var trackNewline = new ContextTracker({
|
|
34
|
-
start: false,
|
|
35
|
-
shift(context, term) {
|
|
36
|
-
return term == LineComment || term == BlockComment || term == spaces ? context : term == newline;
|
|
37
|
-
},
|
|
38
|
-
strict: false
|
|
39
|
-
});
|
|
40
|
-
var insertSemicolon = new ExternalTokenizer((input, stack) => {
|
|
41
|
-
let { next } = input;
|
|
42
|
-
if (next == braceR || next == -1 || stack.context) input.acceptToken(insertSemi);
|
|
43
|
-
}, {
|
|
44
|
-
contextual: true,
|
|
45
|
-
fallback: true
|
|
46
|
-
});
|
|
47
|
-
var noSemicolon = new ExternalTokenizer((input, stack) => {
|
|
48
|
-
let { next } = input, after;
|
|
49
|
-
if (space.indexOf(next) > -1) return;
|
|
50
|
-
if (next == slash$1 && ((after = input.peek(1)) == slash$1 || after == star)) return;
|
|
51
|
-
if (next != braceR && next != semicolon && next != -1 && !stack.context) input.acceptToken(noSemi);
|
|
52
|
-
}, { contextual: true });
|
|
53
|
-
var noSemicolonType = new ExternalTokenizer((input, stack) => {
|
|
54
|
-
if (input.next == bracketL && !stack.context) input.acceptToken(noSemiType);
|
|
55
|
-
}, { contextual: true });
|
|
56
|
-
var operatorToken = new ExternalTokenizer((input, stack) => {
|
|
57
|
-
let { next } = input;
|
|
58
|
-
if (next == plus || next == minus) {
|
|
59
|
-
input.advance();
|
|
60
|
-
if (next == input.next) {
|
|
61
|
-
input.advance();
|
|
62
|
-
let mayPostfix = !stack.context && stack.canShift(incdec);
|
|
63
|
-
input.acceptToken(mayPostfix ? incdec : incdecPrefix);
|
|
64
|
-
}
|
|
65
|
-
} else if (next == question$1 && input.peek(1) == dot) {
|
|
66
|
-
input.advance();
|
|
67
|
-
input.advance();
|
|
68
|
-
if (input.next < 48 || input.next > 57) input.acceptToken(questionDot);
|
|
69
|
-
}
|
|
70
|
-
}, { contextual: true });
|
|
71
|
-
function identifierChar(ch, start) {
|
|
72
|
-
return ch >= 65 && ch <= 90 || ch >= 97 && ch <= 122 || ch == 95 || ch >= 192 || !start && ch >= 48 && ch <= 57;
|
|
73
|
-
}
|
|
74
|
-
var jsx = new ExternalTokenizer((input, stack) => {
|
|
75
|
-
if (input.next != lt || !stack.dialectEnabled(Dialect_jsx)) return;
|
|
76
|
-
input.advance();
|
|
77
|
-
if (input.next == slash$1) return;
|
|
78
|
-
let back = 0;
|
|
79
|
-
while (space.indexOf(input.next) > -1) {
|
|
80
|
-
input.advance();
|
|
81
|
-
back++;
|
|
82
|
-
}
|
|
83
|
-
if (identifierChar(input.next, true)) {
|
|
84
|
-
input.advance();
|
|
85
|
-
back++;
|
|
86
|
-
while (identifierChar(input.next, false)) {
|
|
87
|
-
input.advance();
|
|
88
|
-
back++;
|
|
89
|
-
}
|
|
90
|
-
while (space.indexOf(input.next) > -1) {
|
|
91
|
-
input.advance();
|
|
92
|
-
back++;
|
|
93
|
-
}
|
|
94
|
-
if (input.next == comma) return;
|
|
95
|
-
for (let i = 0;; i++) {
|
|
96
|
-
if (i == 7) {
|
|
97
|
-
if (!identifierChar(input.next, true)) return;
|
|
98
|
-
break;
|
|
99
|
-
}
|
|
100
|
-
if (input.next != "extends".charCodeAt(i)) break;
|
|
101
|
-
input.advance();
|
|
102
|
-
back++;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
input.acceptToken(JSXStartTag, -back);
|
|
106
|
-
});
|
|
107
|
-
var jsHighlight = styleTags({
|
|
108
|
-
"get set async static": tags.modifier,
|
|
109
|
-
"for while do if else switch try catch finally return throw break continue default case defer": tags.controlKeyword,
|
|
110
|
-
"in of await yield void typeof delete instanceof as satisfies": tags.operatorKeyword,
|
|
111
|
-
"let var const using function class extends": tags.definitionKeyword,
|
|
112
|
-
"import export from": tags.moduleKeyword,
|
|
113
|
-
"with debugger new": tags.keyword,
|
|
114
|
-
TemplateString: tags.special(tags.string),
|
|
115
|
-
super: tags.atom,
|
|
116
|
-
BooleanLiteral: tags.bool,
|
|
117
|
-
this: tags.self,
|
|
118
|
-
null: tags.null,
|
|
119
|
-
Star: tags.modifier,
|
|
120
|
-
VariableName: tags.variableName,
|
|
121
|
-
"CallExpression/VariableName TaggedTemplateExpression/VariableName": tags.function(tags.variableName),
|
|
122
|
-
VariableDefinition: tags.definition(tags.variableName),
|
|
123
|
-
Label: tags.labelName,
|
|
124
|
-
PropertyName: tags.propertyName,
|
|
125
|
-
PrivatePropertyName: tags.special(tags.propertyName),
|
|
126
|
-
"CallExpression/MemberExpression/PropertyName": tags.function(tags.propertyName),
|
|
127
|
-
"FunctionDeclaration/VariableDefinition": tags.function(tags.definition(tags.variableName)),
|
|
128
|
-
"ClassDeclaration/VariableDefinition": tags.definition(tags.className),
|
|
129
|
-
"NewExpression/VariableName": tags.className,
|
|
130
|
-
PropertyDefinition: tags.definition(tags.propertyName),
|
|
131
|
-
PrivatePropertyDefinition: tags.definition(tags.special(tags.propertyName)),
|
|
132
|
-
UpdateOp: tags.updateOperator,
|
|
133
|
-
"LineComment Hashbang": tags.lineComment,
|
|
134
|
-
BlockComment: tags.blockComment,
|
|
135
|
-
Number: tags.number,
|
|
136
|
-
String: tags.string,
|
|
137
|
-
Escape: tags.escape,
|
|
138
|
-
ArithOp: tags.arithmeticOperator,
|
|
139
|
-
LogicOp: tags.logicOperator,
|
|
140
|
-
BitOp: tags.bitwiseOperator,
|
|
141
|
-
CompareOp: tags.compareOperator,
|
|
142
|
-
RegExp: tags.regexp,
|
|
143
|
-
Equals: tags.definitionOperator,
|
|
144
|
-
Arrow: tags.function(tags.punctuation),
|
|
145
|
-
": Spread": tags.punctuation,
|
|
146
|
-
"( )": tags.paren,
|
|
147
|
-
"[ ]": tags.squareBracket,
|
|
148
|
-
"{ }": tags.brace,
|
|
149
|
-
"InterpolationStart InterpolationEnd": tags.special(tags.brace),
|
|
150
|
-
".": tags.derefOperator,
|
|
151
|
-
", ;": tags.separator,
|
|
152
|
-
"@": tags.meta,
|
|
153
|
-
TypeName: tags.typeName,
|
|
154
|
-
TypeDefinition: tags.definition(tags.typeName),
|
|
155
|
-
"type enum interface implements namespace module declare": tags.definitionKeyword,
|
|
156
|
-
"abstract global Privacy readonly override": tags.modifier,
|
|
157
|
-
"is keyof unique infer asserts": tags.operatorKeyword,
|
|
158
|
-
JSXAttributeValue: tags.attributeValue,
|
|
159
|
-
JSXText: tags.content,
|
|
160
|
-
"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag": tags.angleBracket,
|
|
161
|
-
"JSXIdentifier JSXNameSpacedName": tags.tagName,
|
|
162
|
-
"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName": tags.attributeName,
|
|
163
|
-
"JSXBuiltin/JSXIdentifier": tags.standard(tags.tagName)
|
|
164
|
-
});
|
|
165
|
-
var spec_identifier = {
|
|
166
|
-
__proto__: null,
|
|
167
|
-
export: 20,
|
|
168
|
-
as: 25,
|
|
169
|
-
from: 33,
|
|
170
|
-
default: 36,
|
|
171
|
-
async: 41,
|
|
172
|
-
function: 42,
|
|
173
|
-
in: 52,
|
|
174
|
-
out: 55,
|
|
175
|
-
const: 56,
|
|
176
|
-
extends: 60,
|
|
177
|
-
this: 64,
|
|
178
|
-
true: 72,
|
|
179
|
-
false: 72,
|
|
180
|
-
null: 84,
|
|
181
|
-
void: 88,
|
|
182
|
-
typeof: 92,
|
|
183
|
-
super: 108,
|
|
184
|
-
new: 142,
|
|
185
|
-
delete: 154,
|
|
186
|
-
yield: 163,
|
|
187
|
-
await: 167,
|
|
188
|
-
class: 172,
|
|
189
|
-
public: 235,
|
|
190
|
-
private: 235,
|
|
191
|
-
protected: 235,
|
|
192
|
-
readonly: 237,
|
|
193
|
-
instanceof: 256,
|
|
194
|
-
satisfies: 259,
|
|
195
|
-
import: 292,
|
|
196
|
-
keyof: 349,
|
|
197
|
-
unique: 353,
|
|
198
|
-
infer: 359,
|
|
199
|
-
asserts: 395,
|
|
200
|
-
is: 397,
|
|
201
|
-
abstract: 417,
|
|
202
|
-
implements: 419,
|
|
203
|
-
type: 421,
|
|
204
|
-
let: 424,
|
|
205
|
-
var: 426,
|
|
206
|
-
using: 429,
|
|
207
|
-
interface: 435,
|
|
208
|
-
enum: 439,
|
|
209
|
-
namespace: 445,
|
|
210
|
-
module: 447,
|
|
211
|
-
declare: 451,
|
|
212
|
-
global: 455,
|
|
213
|
-
defer: 471,
|
|
214
|
-
for: 476,
|
|
215
|
-
of: 485,
|
|
216
|
-
while: 488,
|
|
217
|
-
with: 492,
|
|
218
|
-
do: 496,
|
|
219
|
-
if: 500,
|
|
220
|
-
else: 502,
|
|
221
|
-
switch: 506,
|
|
222
|
-
case: 512,
|
|
223
|
-
try: 518,
|
|
224
|
-
catch: 522,
|
|
225
|
-
finally: 526,
|
|
226
|
-
return: 530,
|
|
227
|
-
throw: 534,
|
|
228
|
-
break: 538,
|
|
229
|
-
continue: 542,
|
|
230
|
-
debugger: 546
|
|
231
|
-
};
|
|
232
|
-
var spec_word = {
|
|
233
|
-
__proto__: null,
|
|
234
|
-
async: 129,
|
|
235
|
-
get: 131,
|
|
236
|
-
set: 133,
|
|
237
|
-
declare: 195,
|
|
238
|
-
public: 197,
|
|
239
|
-
private: 197,
|
|
240
|
-
protected: 197,
|
|
241
|
-
static: 199,
|
|
242
|
-
abstract: 201,
|
|
243
|
-
override: 203,
|
|
244
|
-
readonly: 209,
|
|
245
|
-
accessor: 211,
|
|
246
|
-
new: 401
|
|
247
|
-
};
|
|
248
|
-
var spec_LessThan = {
|
|
249
|
-
__proto__: null,
|
|
250
|
-
"<": 193
|
|
251
|
-
};
|
|
252
|
-
var parser$1 = LRParser.deserialize({
|
|
253
|
-
version: 14,
|
|
254
|
-
states: "$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",
|
|
255
|
-
stateData: "()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hOTX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WOPP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",
|
|
256
|
-
goto: "$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",
|
|
257
|
-
nodeNames: "⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",
|
|
258
|
-
maxTerm: 380,
|
|
259
|
-
context: trackNewline,
|
|
260
|
-
nodeProps: [
|
|
261
|
-
[
|
|
262
|
-
"isolate",
|
|
263
|
-
-8,
|
|
264
|
-
5,
|
|
265
|
-
6,
|
|
266
|
-
14,
|
|
267
|
-
37,
|
|
268
|
-
39,
|
|
269
|
-
51,
|
|
270
|
-
53,
|
|
271
|
-
55,
|
|
272
|
-
""
|
|
273
|
-
],
|
|
274
|
-
[
|
|
275
|
-
"group",
|
|
276
|
-
-26,
|
|
277
|
-
9,
|
|
278
|
-
17,
|
|
279
|
-
19,
|
|
280
|
-
68,
|
|
281
|
-
207,
|
|
282
|
-
211,
|
|
283
|
-
215,
|
|
284
|
-
216,
|
|
285
|
-
218,
|
|
286
|
-
221,
|
|
287
|
-
224,
|
|
288
|
-
234,
|
|
289
|
-
237,
|
|
290
|
-
243,
|
|
291
|
-
245,
|
|
292
|
-
247,
|
|
293
|
-
249,
|
|
294
|
-
252,
|
|
295
|
-
258,
|
|
296
|
-
264,
|
|
297
|
-
266,
|
|
298
|
-
268,
|
|
299
|
-
270,
|
|
300
|
-
272,
|
|
301
|
-
274,
|
|
302
|
-
275,
|
|
303
|
-
"Statement",
|
|
304
|
-
-34,
|
|
305
|
-
13,
|
|
306
|
-
14,
|
|
307
|
-
32,
|
|
308
|
-
35,
|
|
309
|
-
36,
|
|
310
|
-
42,
|
|
311
|
-
51,
|
|
312
|
-
54,
|
|
313
|
-
55,
|
|
314
|
-
57,
|
|
315
|
-
62,
|
|
316
|
-
70,
|
|
317
|
-
72,
|
|
318
|
-
76,
|
|
319
|
-
80,
|
|
320
|
-
82,
|
|
321
|
-
84,
|
|
322
|
-
85,
|
|
323
|
-
110,
|
|
324
|
-
111,
|
|
325
|
-
120,
|
|
326
|
-
121,
|
|
327
|
-
136,
|
|
328
|
-
139,
|
|
329
|
-
141,
|
|
330
|
-
142,
|
|
331
|
-
143,
|
|
332
|
-
144,
|
|
333
|
-
145,
|
|
334
|
-
147,
|
|
335
|
-
148,
|
|
336
|
-
167,
|
|
337
|
-
169,
|
|
338
|
-
171,
|
|
339
|
-
"Expression",
|
|
340
|
-
-23,
|
|
341
|
-
31,
|
|
342
|
-
33,
|
|
343
|
-
37,
|
|
344
|
-
41,
|
|
345
|
-
43,
|
|
346
|
-
45,
|
|
347
|
-
173,
|
|
348
|
-
175,
|
|
349
|
-
177,
|
|
350
|
-
178,
|
|
351
|
-
180,
|
|
352
|
-
181,
|
|
353
|
-
182,
|
|
354
|
-
184,
|
|
355
|
-
185,
|
|
356
|
-
186,
|
|
357
|
-
188,
|
|
358
|
-
189,
|
|
359
|
-
190,
|
|
360
|
-
201,
|
|
361
|
-
203,
|
|
362
|
-
205,
|
|
363
|
-
206,
|
|
364
|
-
"Type",
|
|
365
|
-
-3,
|
|
366
|
-
88,
|
|
367
|
-
103,
|
|
368
|
-
109,
|
|
369
|
-
"ClassItem"
|
|
370
|
-
],
|
|
371
|
-
[
|
|
372
|
-
"openedBy",
|
|
373
|
-
23,
|
|
374
|
-
"<",
|
|
375
|
-
38,
|
|
376
|
-
"InterpolationStart",
|
|
377
|
-
56,
|
|
378
|
-
"[",
|
|
379
|
-
60,
|
|
380
|
-
"{",
|
|
381
|
-
73,
|
|
382
|
-
"(",
|
|
383
|
-
160,
|
|
384
|
-
"JSXStartCloseTag"
|
|
385
|
-
],
|
|
386
|
-
[
|
|
387
|
-
"closedBy",
|
|
388
|
-
-2,
|
|
389
|
-
24,
|
|
390
|
-
168,
|
|
391
|
-
">",
|
|
392
|
-
40,
|
|
393
|
-
"InterpolationEnd",
|
|
394
|
-
50,
|
|
395
|
-
"]",
|
|
396
|
-
61,
|
|
397
|
-
"}",
|
|
398
|
-
74,
|
|
399
|
-
")",
|
|
400
|
-
165,
|
|
401
|
-
"JSXEndTag"
|
|
402
|
-
]
|
|
403
|
-
],
|
|
404
|
-
propSources: [jsHighlight],
|
|
405
|
-
skippedNodes: [
|
|
406
|
-
0,
|
|
407
|
-
5,
|
|
408
|
-
6,
|
|
409
|
-
278
|
|
410
|
-
],
|
|
411
|
-
repeatNodeCount: 37,
|
|
412
|
-
tokenData: "$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",
|
|
413
|
-
tokenizers: [
|
|
414
|
-
noSemicolon,
|
|
415
|
-
noSemicolonType,
|
|
416
|
-
operatorToken,
|
|
417
|
-
jsx,
|
|
418
|
-
2,
|
|
419
|
-
3,
|
|
420
|
-
4,
|
|
421
|
-
5,
|
|
422
|
-
6,
|
|
423
|
-
7,
|
|
424
|
-
8,
|
|
425
|
-
9,
|
|
426
|
-
10,
|
|
427
|
-
11,
|
|
428
|
-
12,
|
|
429
|
-
13,
|
|
430
|
-
14,
|
|
431
|
-
insertSemicolon,
|
|
432
|
-
new LocalTokenGroup("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~", 141, 340),
|
|
433
|
-
new LocalTokenGroup("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~", 25, 323)
|
|
434
|
-
],
|
|
435
|
-
topRules: {
|
|
436
|
-
"Script": [0, 7],
|
|
437
|
-
"SingleExpression": [1, 276],
|
|
438
|
-
"SingleClassItem": [2, 277]
|
|
439
|
-
},
|
|
440
|
-
dialects: {
|
|
441
|
-
jsx: 0,
|
|
442
|
-
ts: 15175
|
|
443
|
-
},
|
|
444
|
-
dynamicPrecedences: {
|
|
445
|
-
"80": 1,
|
|
446
|
-
"82": 1,
|
|
447
|
-
"94": 1,
|
|
448
|
-
"169": 1,
|
|
449
|
-
"199": 1
|
|
450
|
-
},
|
|
451
|
-
specialized: [
|
|
452
|
-
{
|
|
453
|
-
term: 327,
|
|
454
|
-
get: (value) => spec_identifier[value] || -1
|
|
455
|
-
},
|
|
456
|
-
{
|
|
457
|
-
term: 343,
|
|
458
|
-
get: (value) => spec_word[value] || -1
|
|
459
|
-
},
|
|
460
|
-
{
|
|
461
|
-
term: 95,
|
|
462
|
-
get: (value) => spec_LessThan[value] || -1
|
|
463
|
-
}
|
|
464
|
-
],
|
|
465
|
-
tokenPrec: 15201
|
|
466
|
-
});
|
|
467
|
-
//#endregion
|
|
468
|
-
//#region ../../node_modules/.pnpm/@codemirror+lang-javascript@6.2.5/node_modules/@codemirror/lang-javascript/dist/index.js
|
|
469
|
-
/**
|
|
470
|
-
A collection of JavaScript-related
|
|
471
|
-
[snippets](https://codemirror.net/6/docs/ref/#autocomplete.snippet).
|
|
472
|
-
*/
|
|
473
|
-
var snippets = [
|
|
474
|
-
/*@__PURE__*/ snippetCompletion("function ${name}(${params}) {\n ${}\n}", {
|
|
475
|
-
label: "function",
|
|
476
|
-
detail: "definition",
|
|
477
|
-
type: "keyword"
|
|
478
|
-
}),
|
|
479
|
-
/*@__PURE__*/ snippetCompletion("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}", {
|
|
480
|
-
label: "for",
|
|
481
|
-
detail: "loop",
|
|
482
|
-
type: "keyword"
|
|
483
|
-
}),
|
|
484
|
-
/*@__PURE__*/ snippetCompletion("for (let ${name} of ${collection}) {\n ${}\n}", {
|
|
485
|
-
label: "for",
|
|
486
|
-
detail: "of loop",
|
|
487
|
-
type: "keyword"
|
|
488
|
-
}),
|
|
489
|
-
/*@__PURE__*/ snippetCompletion("do {\n ${}\n} while (${})", {
|
|
490
|
-
label: "do",
|
|
491
|
-
detail: "loop",
|
|
492
|
-
type: "keyword"
|
|
493
|
-
}),
|
|
494
|
-
/*@__PURE__*/ snippetCompletion("while (${}) {\n ${}\n}", {
|
|
495
|
-
label: "while",
|
|
496
|
-
detail: "loop",
|
|
497
|
-
type: "keyword"
|
|
498
|
-
}),
|
|
499
|
-
/*@__PURE__*/ snippetCompletion("try {\n ${}\n} catch (${error}) {\n ${}\n}", {
|
|
500
|
-
label: "try",
|
|
501
|
-
detail: "/ catch block",
|
|
502
|
-
type: "keyword"
|
|
503
|
-
}),
|
|
504
|
-
/*@__PURE__*/ snippetCompletion("if (${}) {\n ${}\n}", {
|
|
505
|
-
label: "if",
|
|
506
|
-
detail: "block",
|
|
507
|
-
type: "keyword"
|
|
508
|
-
}),
|
|
509
|
-
/*@__PURE__*/ snippetCompletion("if (${}) {\n ${}\n} else {\n ${}\n}", {
|
|
510
|
-
label: "if",
|
|
511
|
-
detail: "/ else block",
|
|
512
|
-
type: "keyword"
|
|
513
|
-
}),
|
|
514
|
-
/*@__PURE__*/ snippetCompletion("class ${name} {\n constructor(${params}) {\n ${}\n }\n}", {
|
|
515
|
-
label: "class",
|
|
516
|
-
detail: "definition",
|
|
517
|
-
type: "keyword"
|
|
518
|
-
}),
|
|
519
|
-
/*@__PURE__*/ snippetCompletion("import {${names}} from \"${module}\"\n${}", {
|
|
520
|
-
label: "import",
|
|
521
|
-
detail: "named",
|
|
522
|
-
type: "keyword"
|
|
523
|
-
}),
|
|
524
|
-
/*@__PURE__*/ snippetCompletion("import ${name} from \"${module}\"\n${}", {
|
|
525
|
-
label: "import",
|
|
526
|
-
detail: "default",
|
|
527
|
-
type: "keyword"
|
|
528
|
-
})
|
|
529
|
-
];
|
|
530
|
-
/**
|
|
531
|
-
A collection of snippet completions for TypeScript. Includes the
|
|
532
|
-
JavaScript [snippets](https://codemirror.net/6/docs/ref/#lang-javascript.snippets).
|
|
533
|
-
*/
|
|
534
|
-
var typescriptSnippets = /*@__PURE__*/ snippets.concat([
|
|
535
|
-
/*@__PURE__*/ snippetCompletion("interface ${name} {\n ${}\n}", {
|
|
536
|
-
label: "interface",
|
|
537
|
-
detail: "definition",
|
|
538
|
-
type: "keyword"
|
|
539
|
-
}),
|
|
540
|
-
/*@__PURE__*/ snippetCompletion("type ${name} = ${type}", {
|
|
541
|
-
label: "type",
|
|
542
|
-
detail: "definition",
|
|
543
|
-
type: "keyword"
|
|
544
|
-
}),
|
|
545
|
-
/*@__PURE__*/ snippetCompletion("enum ${name} {\n ${}\n}", {
|
|
546
|
-
label: "enum",
|
|
547
|
-
detail: "definition",
|
|
548
|
-
type: "keyword"
|
|
549
|
-
})
|
|
550
|
-
]);
|
|
551
|
-
var cache = /*@__PURE__*/ new NodeWeakMap();
|
|
552
|
-
var ScopeNodes = /*@__PURE__*/ new Set([
|
|
553
|
-
"Script",
|
|
554
|
-
"Block",
|
|
555
|
-
"FunctionExpression",
|
|
556
|
-
"FunctionDeclaration",
|
|
557
|
-
"ArrowFunction",
|
|
558
|
-
"MethodDeclaration",
|
|
559
|
-
"ForStatement"
|
|
560
|
-
]);
|
|
561
|
-
function defID(type) {
|
|
562
|
-
return (node, def) => {
|
|
563
|
-
let id = node.node.getChild("VariableDefinition");
|
|
564
|
-
if (id) def(id, type);
|
|
565
|
-
return true;
|
|
566
|
-
};
|
|
567
|
-
}
|
|
568
|
-
var functionContext = ["FunctionDeclaration"];
|
|
569
|
-
var gatherCompletions = {
|
|
570
|
-
FunctionDeclaration: /*@__PURE__*/ defID("function"),
|
|
571
|
-
ClassDeclaration: /*@__PURE__*/ defID("class"),
|
|
572
|
-
ClassExpression: () => true,
|
|
573
|
-
EnumDeclaration: /*@__PURE__*/ defID("constant"),
|
|
574
|
-
TypeAliasDeclaration: /*@__PURE__*/ defID("type"),
|
|
575
|
-
NamespaceDeclaration: /*@__PURE__*/ defID("namespace"),
|
|
576
|
-
VariableDefinition(node, def) {
|
|
577
|
-
if (!node.matchContext(functionContext)) def(node, "variable");
|
|
578
|
-
},
|
|
579
|
-
TypeDefinition(node, def) {
|
|
580
|
-
def(node, "type");
|
|
581
|
-
},
|
|
582
|
-
__proto__: null
|
|
583
|
-
};
|
|
584
|
-
function getScope(doc, node) {
|
|
585
|
-
let cached = cache.get(node);
|
|
586
|
-
if (cached) return cached;
|
|
587
|
-
let completions = [], top = true;
|
|
588
|
-
function def(node, type) {
|
|
589
|
-
let name = doc.sliceString(node.from, node.to);
|
|
590
|
-
completions.push({
|
|
591
|
-
label: name,
|
|
592
|
-
type
|
|
593
|
-
});
|
|
594
|
-
}
|
|
595
|
-
node.cursor(IterMode.IncludeAnonymous).iterate((node) => {
|
|
596
|
-
if (top) top = false;
|
|
597
|
-
else if (node.name) {
|
|
598
|
-
let gather = gatherCompletions[node.name];
|
|
599
|
-
if (gather && gather(node, def) || ScopeNodes.has(node.name)) return false;
|
|
600
|
-
} else if (node.to - node.from > 8192) {
|
|
601
|
-
for (let c of getScope(doc, node.node)) completions.push(c);
|
|
602
|
-
return false;
|
|
603
|
-
}
|
|
604
|
-
});
|
|
605
|
-
cache.set(node, completions);
|
|
606
|
-
return completions;
|
|
607
|
-
}
|
|
608
|
-
var Identifier = /^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/;
|
|
609
|
-
var dontComplete = [
|
|
610
|
-
"TemplateString",
|
|
611
|
-
"String",
|
|
612
|
-
"RegExp",
|
|
613
|
-
"LineComment",
|
|
614
|
-
"BlockComment",
|
|
615
|
-
"VariableDefinition",
|
|
616
|
-
"TypeDefinition",
|
|
617
|
-
"Label",
|
|
618
|
-
"PropertyDefinition",
|
|
619
|
-
"PropertyName",
|
|
620
|
-
"PrivatePropertyDefinition",
|
|
621
|
-
"PrivatePropertyName",
|
|
622
|
-
"JSXText",
|
|
623
|
-
"JSXAttributeValue",
|
|
624
|
-
"JSXOpenTag",
|
|
625
|
-
"JSXCloseTag",
|
|
626
|
-
"JSXSelfClosingTag",
|
|
627
|
-
".",
|
|
628
|
-
"?."
|
|
629
|
-
];
|
|
630
|
-
/**
|
|
631
|
-
Completion source that looks up locally defined names in
|
|
632
|
-
JavaScript code.
|
|
633
|
-
*/
|
|
634
|
-
function localCompletionSource(context) {
|
|
635
|
-
let inner = syntaxTree(context.state).resolveInner(context.pos, -1);
|
|
636
|
-
if (dontComplete.indexOf(inner.name) > -1) return null;
|
|
637
|
-
let isWord = inner.name == "VariableName" || inner.to - inner.from < 20 && Identifier.test(context.state.sliceDoc(inner.from, inner.to));
|
|
638
|
-
if (!isWord && !context.explicit) return null;
|
|
639
|
-
let options = [];
|
|
640
|
-
for (let pos = inner; pos; pos = pos.parent) if (ScopeNodes.has(pos.name)) options = options.concat(getScope(context.state.doc, pos));
|
|
641
|
-
return {
|
|
642
|
-
options,
|
|
643
|
-
from: isWord ? inner.from : context.pos,
|
|
644
|
-
validFor: Identifier
|
|
645
|
-
};
|
|
646
|
-
}
|
|
647
|
-
/**
|
|
648
|
-
A language provider based on the [Lezer JavaScript
|
|
649
|
-
parser](https://github.com/lezer-parser/javascript), extended with
|
|
650
|
-
highlighting and indentation information.
|
|
651
|
-
*/
|
|
652
|
-
var javascriptLanguage = /*@__PURE__*/ LRLanguage.define({
|
|
653
|
-
name: "javascript",
|
|
654
|
-
parser: /*@__PURE__*/ parser$1.configure({ props: [/*@__PURE__*/ indentNodeProp.add({
|
|
655
|
-
IfStatement: /*@__PURE__*/ continuedIndent({ except: /^\s*({|else\b)/ }),
|
|
656
|
-
TryStatement: /*@__PURE__*/ continuedIndent({ except: /^\s*({|catch\b|finally\b)/ }),
|
|
657
|
-
LabeledStatement: flatIndent,
|
|
658
|
-
SwitchBody: (context) => {
|
|
659
|
-
let after = context.textAfter, closed = /^\s*\}/.test(after), isCase = /^\s*(case|default)\b/.test(after);
|
|
660
|
-
return context.baseIndent + (closed ? 0 : isCase ? 1 : 2) * context.unit;
|
|
661
|
-
},
|
|
662
|
-
Block: /*@__PURE__*/ delimitedIndent({ closing: "}" }),
|
|
663
|
-
ArrowFunction: (cx) => cx.baseIndent + cx.unit,
|
|
664
|
-
"TemplateString BlockComment": () => null,
|
|
665
|
-
"Statement Property": /*@__PURE__*/ continuedIndent({ except: /^\s*{/ }),
|
|
666
|
-
JSXElement(context) {
|
|
667
|
-
let closed = /^\s*<\//.test(context.textAfter);
|
|
668
|
-
return context.lineIndent(context.node.from) + (closed ? 0 : context.unit);
|
|
669
|
-
},
|
|
670
|
-
JSXEscape(context) {
|
|
671
|
-
let closed = /\s*\}/.test(context.textAfter);
|
|
672
|
-
return context.lineIndent(context.node.from) + (closed ? 0 : context.unit);
|
|
673
|
-
},
|
|
674
|
-
"JSXOpenTag JSXSelfClosingTag"(context) {
|
|
675
|
-
return context.column(context.node.from) + context.unit;
|
|
676
|
-
}
|
|
677
|
-
}), /*@__PURE__*/ foldNodeProp.add({
|
|
678
|
-
"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType": foldInside,
|
|
679
|
-
BlockComment(tree) {
|
|
680
|
-
return {
|
|
681
|
-
from: tree.from + 2,
|
|
682
|
-
to: tree.to - 2
|
|
683
|
-
};
|
|
684
|
-
},
|
|
685
|
-
JSXElement(tree) {
|
|
686
|
-
let open = tree.firstChild;
|
|
687
|
-
if (!open || open.name == "JSXSelfClosingTag") return null;
|
|
688
|
-
let close = tree.lastChild;
|
|
689
|
-
return {
|
|
690
|
-
from: open.to,
|
|
691
|
-
to: close.type.isError ? tree.to : close.from
|
|
692
|
-
};
|
|
693
|
-
},
|
|
694
|
-
"JSXSelfClosingTag JSXOpenTag"(tree) {
|
|
695
|
-
var _a;
|
|
696
|
-
let name = (_a = tree.firstChild) === null || _a === void 0 ? void 0 : _a.nextSibling, close = tree.lastChild;
|
|
697
|
-
if (!name || name.type.isError) return null;
|
|
698
|
-
return {
|
|
699
|
-
from: name.to,
|
|
700
|
-
to: close.type.isError ? tree.to : close.from
|
|
701
|
-
};
|
|
702
|
-
}
|
|
703
|
-
})] }),
|
|
704
|
-
languageData: {
|
|
705
|
-
closeBrackets: { brackets: [
|
|
706
|
-
"(",
|
|
707
|
-
"[",
|
|
708
|
-
"{",
|
|
709
|
-
"'",
|
|
710
|
-
"\"",
|
|
711
|
-
"`"
|
|
712
|
-
] },
|
|
713
|
-
commentTokens: {
|
|
714
|
-
line: "//",
|
|
715
|
-
block: {
|
|
716
|
-
open: "/*",
|
|
717
|
-
close: "*/"
|
|
718
|
-
}
|
|
719
|
-
},
|
|
720
|
-
indentOnInput: /^\s*(?:case |default:|\{|\}|<\/)$/,
|
|
721
|
-
wordChars: "$"
|
|
722
|
-
}
|
|
723
|
-
});
|
|
724
|
-
var jsxSublanguage = {
|
|
725
|
-
test: (node) => /^JSX/.test(node.name),
|
|
726
|
-
facet: /*@__PURE__*/ defineLanguageFacet({ commentTokens: { block: {
|
|
727
|
-
open: "{/*",
|
|
728
|
-
close: "*/}"
|
|
729
|
-
} } })
|
|
730
|
-
};
|
|
731
|
-
/**
|
|
732
|
-
A language provider for TypeScript.
|
|
733
|
-
*/
|
|
734
|
-
var typescriptLanguage = /*@__PURE__*/ javascriptLanguage.configure({ dialect: "ts" }, "typescript");
|
|
735
|
-
/**
|
|
736
|
-
Language provider for JSX.
|
|
737
|
-
*/
|
|
738
|
-
var jsxLanguage = /*@__PURE__*/ javascriptLanguage.configure({
|
|
739
|
-
dialect: "jsx",
|
|
740
|
-
props: [/*@__PURE__*/ sublanguageProp.add((n) => n.isTop ? [jsxSublanguage] : void 0)]
|
|
741
|
-
});
|
|
742
|
-
/**
|
|
743
|
-
Language provider for JSX + TypeScript.
|
|
744
|
-
*/
|
|
745
|
-
var tsxLanguage = /*@__PURE__*/ javascriptLanguage.configure({
|
|
746
|
-
dialect: "jsx ts",
|
|
747
|
-
props: [/*@__PURE__*/ sublanguageProp.add((n) => n.isTop ? [jsxSublanguage] : void 0)]
|
|
748
|
-
}, "typescript");
|
|
749
|
-
var kwCompletion = (name) => ({
|
|
750
|
-
label: name,
|
|
751
|
-
type: "keyword"
|
|
752
|
-
});
|
|
753
|
-
var keywords = /*@__PURE__*/ "break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(kwCompletion);
|
|
754
|
-
var typescriptKeywords = /*@__PURE__*/ keywords.concat(/*@__PURE__*/ [
|
|
755
|
-
"declare",
|
|
756
|
-
"implements",
|
|
757
|
-
"private",
|
|
758
|
-
"protected",
|
|
759
|
-
"public"
|
|
760
|
-
].map(kwCompletion));
|
|
761
|
-
/**
|
|
762
|
-
JavaScript support. Includes [snippet](https://codemirror.net/6/docs/ref/#lang-javascript.snippets)
|
|
763
|
-
and local variable completion.
|
|
764
|
-
*/
|
|
765
|
-
function javascript(config = {}) {
|
|
766
|
-
let lang = config.jsx ? config.typescript ? tsxLanguage : jsxLanguage : config.typescript ? typescriptLanguage : javascriptLanguage;
|
|
767
|
-
let completions = config.typescript ? typescriptSnippets.concat(typescriptKeywords) : snippets.concat(keywords);
|
|
768
|
-
return new LanguageSupport(lang, [
|
|
769
|
-
javascriptLanguage.data.of({ autocomplete: ifNotIn(dontComplete, completeFromList(completions)) }),
|
|
770
|
-
javascriptLanguage.data.of({ autocomplete: localCompletionSource }),
|
|
771
|
-
config.jsx ? autoCloseTags$1 : []
|
|
772
|
-
]);
|
|
773
|
-
}
|
|
774
|
-
function findOpenTag(node) {
|
|
775
|
-
for (;;) {
|
|
776
|
-
if (node.name == "JSXOpenTag" || node.name == "JSXSelfClosingTag" || node.name == "JSXFragmentTag") return node;
|
|
777
|
-
if (node.name == "JSXEscape" || !node.parent) return null;
|
|
778
|
-
node = node.parent;
|
|
779
|
-
}
|
|
780
|
-
}
|
|
781
|
-
function elementName$1(doc, tree, max = doc.length) {
|
|
782
|
-
for (let ch = tree === null || tree === void 0 ? void 0 : tree.firstChild; ch; ch = ch.nextSibling) if (ch.name == "JSXIdentifier" || ch.name == "JSXBuiltin" || ch.name == "JSXNamespacedName" || ch.name == "JSXMemberExpression") return doc.sliceString(ch.from, Math.min(ch.to, max));
|
|
783
|
-
return "";
|
|
784
|
-
}
|
|
785
|
-
var android = typeof navigator == "object" && /*@__PURE__*/ /Android\b/.test(navigator.userAgent);
|
|
786
|
-
/**
|
|
787
|
-
Extension that will automatically insert JSX close tags when a `>` or
|
|
788
|
-
`/` is typed.
|
|
789
|
-
*/
|
|
790
|
-
var autoCloseTags$1 = /*@__PURE__*/ EditorView.inputHandler.of((view, from, to, text, defaultInsert) => {
|
|
791
|
-
if ((android ? view.composing : view.compositionStarted) || view.state.readOnly || from != to || text != ">" && text != "/" || !javascriptLanguage.isActiveAt(view.state, from, -1)) return false;
|
|
792
|
-
let base = defaultInsert(), { state } = base;
|
|
793
|
-
let closeTags = state.changeByRange((range) => {
|
|
794
|
-
var _a;
|
|
795
|
-
let { head } = range, around = syntaxTree(state).resolveInner(head - 1, -1), name;
|
|
796
|
-
if (around.name == "JSXStartTag") around = around.parent;
|
|
797
|
-
if (state.doc.sliceString(head - 1, head) != text || around.name == "JSXAttributeValue" && around.to > head);
|
|
798
|
-
else if (text == ">" && around.name == "JSXFragmentTag") return {
|
|
799
|
-
range,
|
|
800
|
-
changes: {
|
|
801
|
-
from: head,
|
|
802
|
-
insert: `</>`
|
|
803
|
-
}
|
|
804
|
-
};
|
|
805
|
-
else if (text == "/" && around.name == "JSXStartCloseTag") {
|
|
806
|
-
let empty = around.parent, base = empty.parent;
|
|
807
|
-
if (base && empty.from == head - 2 && ((name = elementName$1(state.doc, base.firstChild, head)) || ((_a = base.firstChild) === null || _a === void 0 ? void 0 : _a.name) == "JSXFragmentTag")) {
|
|
808
|
-
let insert = `${name}>`;
|
|
809
|
-
return {
|
|
810
|
-
range: EditorSelection.cursor(head + insert.length, -1),
|
|
811
|
-
changes: {
|
|
812
|
-
from: head,
|
|
813
|
-
insert
|
|
814
|
-
}
|
|
815
|
-
};
|
|
816
|
-
}
|
|
817
|
-
} else if (text == ">") {
|
|
818
|
-
let openTag = findOpenTag(around);
|
|
819
|
-
if (openTag && openTag.name == "JSXOpenTag" && !/^\/?>|^<\//.test(state.doc.sliceString(head, head + 2)) && (name = elementName$1(state.doc, openTag, head))) return {
|
|
820
|
-
range,
|
|
821
|
-
changes: {
|
|
822
|
-
from: head,
|
|
823
|
-
insert: `</${name}>`
|
|
824
|
-
}
|
|
825
|
-
};
|
|
826
|
-
}
|
|
827
|
-
return { range };
|
|
828
|
-
});
|
|
829
|
-
if (closeTags.changes.empty) return false;
|
|
830
|
-
view.dispatch([base, state.update(closeTags, {
|
|
831
|
-
userEvent: "input.complete",
|
|
832
|
-
scrollIntoView: true
|
|
833
|
-
})]);
|
|
834
|
-
return true;
|
|
835
|
-
});
|
|
836
|
-
//#endregion
|
|
837
|
-
//#region ../../node_modules/.pnpm/@lezer+html@1.3.13/node_modules/@lezer/html/dist/index.js
|
|
838
|
-
var scriptText = 55, StartCloseScriptTag = 1, styleText = 56, StartCloseStyleTag = 2, textareaText = 57, StartCloseTextareaTag = 3, EndTag = 4, SelfClosingEndTag = 5, StartTag = 6, StartScriptTag = 7, StartStyleTag = 8, StartTextareaTag = 9, StartSelfClosingTag = 10, StartCloseTag = 11, NoMatchStartCloseTag = 12, MismatchedStartCloseTag = 13, missingCloseTag = 58, IncompleteTag = 14, IncompleteCloseTag = 15, commentContent$1 = 59, Element = 21, TagName = 23, Attribute = 24, AttributeName = 25, AttributeValue = 27, UnquotedAttributeValue = 28, ScriptText = 29, StyleText = 32, TextareaText = 35, OpenTag = 37, CloseTag = 38, Dialect_noMatch = 0, Dialect_selfClosing = 1;
|
|
839
|
-
var selfClosers$1 = {
|
|
840
|
-
area: true,
|
|
841
|
-
base: true,
|
|
842
|
-
br: true,
|
|
843
|
-
col: true,
|
|
844
|
-
command: true,
|
|
845
|
-
embed: true,
|
|
846
|
-
frame: true,
|
|
847
|
-
hr: true,
|
|
848
|
-
img: true,
|
|
849
|
-
input: true,
|
|
850
|
-
keygen: true,
|
|
851
|
-
link: true,
|
|
852
|
-
meta: true,
|
|
853
|
-
param: true,
|
|
854
|
-
source: true,
|
|
855
|
-
track: true,
|
|
856
|
-
wbr: true,
|
|
857
|
-
menuitem: true
|
|
858
|
-
};
|
|
859
|
-
var implicitlyClosed = {
|
|
860
|
-
dd: true,
|
|
861
|
-
li: true,
|
|
862
|
-
optgroup: true,
|
|
863
|
-
option: true,
|
|
864
|
-
p: true,
|
|
865
|
-
rp: true,
|
|
866
|
-
rt: true,
|
|
867
|
-
tbody: true,
|
|
868
|
-
td: true,
|
|
869
|
-
tfoot: true,
|
|
870
|
-
th: true,
|
|
871
|
-
tr: true
|
|
872
|
-
};
|
|
873
|
-
var closeOnOpen = {
|
|
874
|
-
dd: {
|
|
875
|
-
dd: true,
|
|
876
|
-
dt: true
|
|
877
|
-
},
|
|
878
|
-
dt: {
|
|
879
|
-
dd: true,
|
|
880
|
-
dt: true
|
|
881
|
-
},
|
|
882
|
-
li: { li: true },
|
|
883
|
-
option: {
|
|
884
|
-
option: true,
|
|
885
|
-
optgroup: true
|
|
886
|
-
},
|
|
887
|
-
optgroup: { optgroup: true },
|
|
888
|
-
p: {
|
|
889
|
-
address: true,
|
|
890
|
-
article: true,
|
|
891
|
-
aside: true,
|
|
892
|
-
blockquote: true,
|
|
893
|
-
dir: true,
|
|
894
|
-
div: true,
|
|
895
|
-
dl: true,
|
|
896
|
-
fieldset: true,
|
|
897
|
-
footer: true,
|
|
898
|
-
form: true,
|
|
899
|
-
h1: true,
|
|
900
|
-
h2: true,
|
|
901
|
-
h3: true,
|
|
902
|
-
h4: true,
|
|
903
|
-
h5: true,
|
|
904
|
-
h6: true,
|
|
905
|
-
header: true,
|
|
906
|
-
hgroup: true,
|
|
907
|
-
hr: true,
|
|
908
|
-
menu: true,
|
|
909
|
-
nav: true,
|
|
910
|
-
ol: true,
|
|
911
|
-
p: true,
|
|
912
|
-
pre: true,
|
|
913
|
-
section: true,
|
|
914
|
-
table: true,
|
|
915
|
-
ul: true
|
|
916
|
-
},
|
|
917
|
-
rp: {
|
|
918
|
-
rp: true,
|
|
919
|
-
rt: true
|
|
920
|
-
},
|
|
921
|
-
rt: {
|
|
922
|
-
rp: true,
|
|
923
|
-
rt: true
|
|
924
|
-
},
|
|
925
|
-
tbody: {
|
|
926
|
-
tbody: true,
|
|
927
|
-
tfoot: true
|
|
928
|
-
},
|
|
929
|
-
td: {
|
|
930
|
-
td: true,
|
|
931
|
-
th: true
|
|
932
|
-
},
|
|
933
|
-
tfoot: { tbody: true },
|
|
934
|
-
th: {
|
|
935
|
-
td: true,
|
|
936
|
-
th: true
|
|
937
|
-
},
|
|
938
|
-
thead: {
|
|
939
|
-
tbody: true,
|
|
940
|
-
tfoot: true
|
|
941
|
-
},
|
|
942
|
-
tr: { tr: true }
|
|
943
|
-
};
|
|
944
|
-
function nameChar(ch) {
|
|
945
|
-
return ch == 45 || ch == 46 || ch == 58 || ch >= 65 && ch <= 90 || ch == 95 || ch >= 97 && ch <= 122 || ch >= 161;
|
|
946
|
-
}
|
|
947
|
-
var cachedName = null, cachedInput = null, cachedPos = 0;
|
|
948
|
-
function tagNameAfter(input, offset) {
|
|
949
|
-
let pos = input.pos + offset;
|
|
950
|
-
if (cachedPos == pos && cachedInput == input) return cachedName;
|
|
951
|
-
let next = input.peek(offset), name = "";
|
|
952
|
-
for (;;) {
|
|
953
|
-
if (!nameChar(next)) break;
|
|
954
|
-
name += String.fromCharCode(next);
|
|
955
|
-
next = input.peek(++offset);
|
|
956
|
-
}
|
|
957
|
-
cachedInput = input;
|
|
958
|
-
cachedPos = pos;
|
|
959
|
-
return cachedName = name ? name.toLowerCase() : next == question || next == bang ? void 0 : null;
|
|
960
|
-
}
|
|
961
|
-
var lessThan = 60, greaterThan = 62, slash = 47, question = 63, bang = 33, dash = 45;
|
|
962
|
-
function ElementContext(name, parent) {
|
|
963
|
-
this.name = name;
|
|
964
|
-
this.parent = parent;
|
|
965
|
-
}
|
|
966
|
-
var startTagTerms = [
|
|
967
|
-
StartTag,
|
|
968
|
-
StartSelfClosingTag,
|
|
969
|
-
StartScriptTag,
|
|
970
|
-
StartStyleTag,
|
|
971
|
-
StartTextareaTag
|
|
972
|
-
];
|
|
973
|
-
var elementContext = new ContextTracker({
|
|
974
|
-
start: null,
|
|
975
|
-
shift(context, term, stack, input) {
|
|
976
|
-
return startTagTerms.indexOf(term) > -1 ? new ElementContext(tagNameAfter(input, 1) || "", context) : context;
|
|
977
|
-
},
|
|
978
|
-
reduce(context, term) {
|
|
979
|
-
return term == Element && context ? context.parent : context;
|
|
980
|
-
},
|
|
981
|
-
reuse(context, node, stack, input) {
|
|
982
|
-
let type = node.type.id;
|
|
983
|
-
return type == StartTag || type == OpenTag ? new ElementContext(tagNameAfter(input, 1) || "", context) : context;
|
|
984
|
-
},
|
|
985
|
-
strict: false
|
|
986
|
-
});
|
|
987
|
-
var tagStart = new ExternalTokenizer((input, stack) => {
|
|
988
|
-
if (input.next != lessThan) {
|
|
989
|
-
if (input.next < 0 && stack.context) input.acceptToken(missingCloseTag);
|
|
990
|
-
return;
|
|
991
|
-
}
|
|
992
|
-
input.advance();
|
|
993
|
-
let close = input.next == slash;
|
|
994
|
-
if (close) input.advance();
|
|
995
|
-
let name = tagNameAfter(input, 0);
|
|
996
|
-
if (name === void 0) return;
|
|
997
|
-
if (!name) return input.acceptToken(close ? IncompleteCloseTag : IncompleteTag);
|
|
998
|
-
let parent = stack.context ? stack.context.name : null;
|
|
999
|
-
if (close) {
|
|
1000
|
-
if (name == parent) return input.acceptToken(StartCloseTag);
|
|
1001
|
-
if (parent && implicitlyClosed[parent]) return input.acceptToken(missingCloseTag, -2);
|
|
1002
|
-
if (stack.dialectEnabled(Dialect_noMatch)) return input.acceptToken(NoMatchStartCloseTag);
|
|
1003
|
-
for (let cx = stack.context; cx; cx = cx.parent) if (cx.name == name) return;
|
|
1004
|
-
input.acceptToken(MismatchedStartCloseTag);
|
|
1005
|
-
} else {
|
|
1006
|
-
if (name == "script") return input.acceptToken(StartScriptTag);
|
|
1007
|
-
if (name == "style") return input.acceptToken(StartStyleTag);
|
|
1008
|
-
if (name == "textarea") return input.acceptToken(StartTextareaTag);
|
|
1009
|
-
if (selfClosers$1.hasOwnProperty(name)) return input.acceptToken(StartSelfClosingTag);
|
|
1010
|
-
if (parent && closeOnOpen[parent] && closeOnOpen[parent][name]) input.acceptToken(missingCloseTag, -1);
|
|
1011
|
-
else input.acceptToken(StartTag);
|
|
1012
|
-
}
|
|
1013
|
-
}, { contextual: true });
|
|
1014
|
-
var commentContent = new ExternalTokenizer((input) => {
|
|
1015
|
-
for (let dashes = 0, i = 0;; i++) {
|
|
1016
|
-
if (input.next < 0) {
|
|
1017
|
-
if (i) input.acceptToken(commentContent$1);
|
|
1018
|
-
break;
|
|
1019
|
-
}
|
|
1020
|
-
if (input.next == dash) dashes++;
|
|
1021
|
-
else if (input.next == greaterThan && dashes >= 2) {
|
|
1022
|
-
if (i >= 3) input.acceptToken(commentContent$1, -2);
|
|
1023
|
-
break;
|
|
1024
|
-
} else dashes = 0;
|
|
1025
|
-
input.advance();
|
|
1026
|
-
}
|
|
1027
|
-
});
|
|
1028
|
-
function inForeignElement(context) {
|
|
1029
|
-
for (; context; context = context.parent) if (context.name == "svg" || context.name == "math") return true;
|
|
1030
|
-
return false;
|
|
1031
|
-
}
|
|
1032
|
-
var endTag = new ExternalTokenizer((input, stack) => {
|
|
1033
|
-
if (input.next == slash && input.peek(1) == greaterThan) {
|
|
1034
|
-
let selfClosing = stack.dialectEnabled(Dialect_selfClosing) || inForeignElement(stack.context);
|
|
1035
|
-
input.acceptToken(selfClosing ? SelfClosingEndTag : EndTag, 2);
|
|
1036
|
-
} else if (input.next == greaterThan) input.acceptToken(EndTag, 1);
|
|
1037
|
-
});
|
|
1038
|
-
function contentTokenizer(tag, textToken, endToken) {
|
|
1039
|
-
let lastState = 2 + tag.length;
|
|
1040
|
-
return new ExternalTokenizer((input) => {
|
|
1041
|
-
for (let state = 0, matchedLen = 0, i = 0;; i++) {
|
|
1042
|
-
if (input.next < 0) {
|
|
1043
|
-
if (i) input.acceptToken(textToken);
|
|
1044
|
-
break;
|
|
1045
|
-
}
|
|
1046
|
-
if (state == 0 && input.next == lessThan || state == 1 && input.next == slash || state >= 2 && state < lastState && input.next == tag.charCodeAt(state - 2)) {
|
|
1047
|
-
state++;
|
|
1048
|
-
matchedLen++;
|
|
1049
|
-
} else if (state == lastState && input.next == greaterThan) {
|
|
1050
|
-
if (i > matchedLen) input.acceptToken(textToken, -matchedLen);
|
|
1051
|
-
else input.acceptToken(endToken, -(matchedLen - 2));
|
|
1052
|
-
break;
|
|
1053
|
-
} else if ((input.next == 10 || input.next == 13) && i) {
|
|
1054
|
-
input.acceptToken(textToken, 1);
|
|
1055
|
-
break;
|
|
1056
|
-
} else state = matchedLen = 0;
|
|
1057
|
-
input.advance();
|
|
1058
|
-
}
|
|
1059
|
-
});
|
|
1060
|
-
}
|
|
1061
|
-
var scriptTokens = contentTokenizer("script", scriptText, StartCloseScriptTag);
|
|
1062
|
-
var styleTokens = contentTokenizer("style", styleText, StartCloseStyleTag);
|
|
1063
|
-
var textareaTokens = contentTokenizer("textarea", textareaText, StartCloseTextareaTag);
|
|
1064
|
-
var htmlHighlighting = styleTags({
|
|
1065
|
-
"Text RawText IncompleteTag IncompleteCloseTag": tags.content,
|
|
1066
|
-
"StartTag StartCloseTag SelfClosingEndTag EndTag": tags.angleBracket,
|
|
1067
|
-
TagName: tags.tagName,
|
|
1068
|
-
"MismatchedCloseTag/TagName": [tags.tagName, tags.invalid],
|
|
1069
|
-
AttributeName: tags.attributeName,
|
|
1070
|
-
"AttributeValue UnquotedAttributeValue": tags.attributeValue,
|
|
1071
|
-
Is: tags.definitionOperator,
|
|
1072
|
-
"EntityReference CharacterReference": tags.character,
|
|
1073
|
-
Comment: tags.blockComment,
|
|
1074
|
-
ProcessingInst: tags.processingInstruction,
|
|
1075
|
-
DoctypeDecl: tags.documentMeta
|
|
1076
|
-
});
|
|
1077
|
-
var parser = LRParser.deserialize({
|
|
1078
|
-
version: 14,
|
|
1079
|
-
states: ",xOVO!rOOO!ZQ#tO'#CrO!`Q#tO'#C{O!eQ#tO'#DOO!jQ#tO'#DRO!oQ#tO'#DTO!tOaO'#CqO#PObO'#CqO#[OdO'#CqO$kO!rO'#CqOOO`'#Cq'#CqO$rO$fO'#DUO$zQ#tO'#DWO%PQ#tO'#DXOOO`'#Dl'#DlOOO`'#DZ'#DZQVO!rOOO%UQ&rO,59^O%aQ&rO,59gO%lQ&rO,59jO%wQ&rO,59mO&SQ&rO,59oOOOa'#D_'#D_O&_OaO'#CyO&jOaO,59]OOOb'#D`'#D`O&rObO'#C|O&}ObO,59]OOOd'#Da'#DaO'VOdO'#DPO'bOdO,59]OOO`'#Db'#DbO'jO!rO,59]O'qQ#tO'#DSOOO`,59],59]OOOp'#Dc'#DcO'vO$fO,59pOOO`,59p,59pO(OQ#|O,59rO(TQ#|O,59sOOO`-E7X-E7XO(YQ&rO'#CtOOQW'#D['#D[O(hQ&rO1G.xOOOa1G.x1G.xOOO`1G/Z1G/ZO(sQ&rO1G/ROOOb1G/R1G/RO)OQ&rO1G/UOOOd1G/U1G/UO)ZQ&rO1G/XOOO`1G/X1G/XO)fQ&rO1G/ZOOOa-E7]-E7]O)qQ#tO'#CzOOO`1G.w1G.wOOOb-E7^-E7^O)vQ#tO'#C}OOOd-E7_-E7_O){Q#tO'#DQOOO`-E7`-E7`O*QQ#|O,59nOOOp-E7a-E7aOOO`1G/[1G/[OOO`1G/^1G/^OOO`1G/_1G/_O*VQ,UO,59`OOQW-E7Y-E7YOOOa7+$d7+$dOOO`7+$u7+$uOOOb7+$m7+$mOOOd7+$p7+$pOOO`7+$s7+$sO*bQ#|O,59fO*gQ#|O,59iO*lQ#|O,59lOOO`1G/Y1G/YO*qO7[O'#CwO+SOMhO'#CwOOQW1G.z1G.zOOO`1G/Q1G/QOOO`1G/T1G/TOOO`1G/W1G/WOOOO'#D]'#D]O+eO7[O,59cOOQW,59c,59cOOOO'#D^'#D^O+vOMhO,59cOOOO-E7Z-E7ZOOQW1G.}1G.}OOOO-E7[-E7[",
|
|
1080
|
-
stateData: ",c~O!_OS~OUSOVPOWQOXROYTO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O|_O!eZO~OgaO~OgbO~OgcO~OgdO~OgeO~O!XfOPmP![mP~O!YiOQpP![pP~O!ZlORsP![sP~OUSOVPOWQOXROYTOZqO[]O][O^^O_^Oa^Ob^Oc^Od^Oy^O!eZO~O![rO~P#gO!]sO!fuO~OgvO~OgwO~OS|OT}OiyO~OS!POT}OiyO~OS!ROT}OiyO~OS!TOT}OiyO~OS}OT}OiyO~O!XfOPmX![mX~OP!WO![!XO~O!YiOQpX![pX~OQ!ZO![!XO~O!ZlORsX![sX~OR!]O![!XO~O![!XO~P#gOg!_O~O!]sO!f!aO~OS!bO~OS!cO~Oj!dOShXThXihX~OS!fOT!gOiyO~OS!hOT!gOiyO~OS!iOT!gOiyO~OS!jOT!gOiyO~OS!gOT!gOiyO~Og!kO~Og!lO~Og!mO~OS!nO~Ol!qO!a!oO!c!pO~OS!rO~OS!sO~OS!tO~Ob!uOc!uOd!uO!a!wO!b!uO~Ob!xOc!xOd!xO!c!wO!d!xO~Ob!uOc!uOd!uO!a!{O!b!uO~Ob!xOc!xOd!xO!c!{O!d!xO~OT~cbd!ey|!e~",
|
|
1081
|
-
goto: "%q!aPPPPPPPPPPPPPPPPPPPPP!b!hP!nPP!zP!}#Q#T#Z#^#a#g#j#m#s#y!bP!b!bP$P$V$m$s$y%P%V%]%cPPPPPPPP%iX^OX`pXUOX`pezabcde{!O!Q!S!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ!ObQ!QcQ!SdQ!UeZ!e{!O!Q!S!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",
|
|
1082
|
-
nodeNames: "⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",
|
|
1083
|
-
maxTerm: 68,
|
|
1084
|
-
context: elementContext,
|
|
1085
|
-
nodeProps: [
|
|
1086
|
-
[
|
|
1087
|
-
"closedBy",
|
|
1088
|
-
-10,
|
|
1089
|
-
1,
|
|
1090
|
-
2,
|
|
1091
|
-
3,
|
|
1092
|
-
7,
|
|
1093
|
-
8,
|
|
1094
|
-
9,
|
|
1095
|
-
10,
|
|
1096
|
-
11,
|
|
1097
|
-
12,
|
|
1098
|
-
13,
|
|
1099
|
-
"EndTag",
|
|
1100
|
-
6,
|
|
1101
|
-
"EndTag SelfClosingEndTag",
|
|
1102
|
-
-4,
|
|
1103
|
-
22,
|
|
1104
|
-
31,
|
|
1105
|
-
34,
|
|
1106
|
-
37,
|
|
1107
|
-
"CloseTag"
|
|
1108
|
-
],
|
|
1109
|
-
[
|
|
1110
|
-
"openedBy",
|
|
1111
|
-
4,
|
|
1112
|
-
"StartTag StartCloseTag",
|
|
1113
|
-
5,
|
|
1114
|
-
"StartTag",
|
|
1115
|
-
-4,
|
|
1116
|
-
30,
|
|
1117
|
-
33,
|
|
1118
|
-
36,
|
|
1119
|
-
38,
|
|
1120
|
-
"OpenTag"
|
|
1121
|
-
],
|
|
1122
|
-
[
|
|
1123
|
-
"group",
|
|
1124
|
-
-10,
|
|
1125
|
-
14,
|
|
1126
|
-
15,
|
|
1127
|
-
18,
|
|
1128
|
-
19,
|
|
1129
|
-
20,
|
|
1130
|
-
21,
|
|
1131
|
-
40,
|
|
1132
|
-
41,
|
|
1133
|
-
42,
|
|
1134
|
-
43,
|
|
1135
|
-
"Entity",
|
|
1136
|
-
17,
|
|
1137
|
-
"Entity TextContent",
|
|
1138
|
-
-3,
|
|
1139
|
-
29,
|
|
1140
|
-
32,
|
|
1141
|
-
35,
|
|
1142
|
-
"TextContent Entity"
|
|
1143
|
-
],
|
|
1144
|
-
[
|
|
1145
|
-
"isolate",
|
|
1146
|
-
-11,
|
|
1147
|
-
22,
|
|
1148
|
-
30,
|
|
1149
|
-
31,
|
|
1150
|
-
33,
|
|
1151
|
-
34,
|
|
1152
|
-
36,
|
|
1153
|
-
37,
|
|
1154
|
-
38,
|
|
1155
|
-
39,
|
|
1156
|
-
42,
|
|
1157
|
-
43,
|
|
1158
|
-
"ltr",
|
|
1159
|
-
-3,
|
|
1160
|
-
27,
|
|
1161
|
-
28,
|
|
1162
|
-
40,
|
|
1163
|
-
""
|
|
1164
|
-
]
|
|
1165
|
-
],
|
|
1166
|
-
propSources: [htmlHighlighting],
|
|
1167
|
-
skippedNodes: [0],
|
|
1168
|
-
repeatNodeCount: 9,
|
|
1169
|
-
tokenData: "!<p!aR!YOX$qXY,QYZ,QZ[$q[]&X]^,Q^p$qpq,Qqr-_rs3_sv-_vw3}wxHYx}-_}!OH{!O!P-_!P!Q$q!Q![-_![!]Mz!]!^-_!^!_!$S!_!`!;x!`!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4U-_4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!Z$|caPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr$qrs&}sv$qvw+Pwx(tx!^$q!^!_*V!_!a&X!a#S$q#S#T&X#T;'S$q;'S;=`+z<%lO$q!R&bXaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UVaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pTaPOv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!dpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({WaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!b`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!b`!dpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYlWOX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+PW+wP;=`<%l+P!Z+}P;=`<%l$q!a,]`aP!b`!dp!_^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q[/ebiSlWOX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+PS0rXiSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vciSaP!b`!dpOq&Xqr1krs&}sv1kvw0mwx(tx!P1k!P!Q&X!Q!^1k!^!_*V!_!a&X!a#s1k#s$f&X$f;'S1k;'S;=`3R<%l?Ah1k?Ah?BY&X?BY?Mn1k?MnO&X!V3UP;=`<%l1k!_3[P;=`<%l-_!Z3hV!ahaP!dpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WiiSlWd!ROX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst>]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zblWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOb!R!R7tP;=`<%l7S!Z8OYlWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{iiSlWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbiSlWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!V<QciSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXiSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TalWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOc!R!RAwP;=`<%lAY!ZBRYlWc!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhiSlWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbiSlWc!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbiSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXiSc!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!cxaP!b`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYliSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_kiSaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_XaP!b`!dp!fQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZiSgQaPlW!b`!dpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!b`!dpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!b`!dpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!b`!dp!ePOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!b`!dpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!b`!dpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!b`!dpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!b`!dpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!b`!dpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!b`!dpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!b`!dpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!dpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO|PP!-nP;=`<%l!-Sq!-xS!dp|POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!b`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!b`|POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!b`!dp|POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!b`!dpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!b`!dpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!b`!dpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!b`!dpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!b`!dpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!b`!dpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!dpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOyPP!7TP;=`<%l!6Vq!7]V!dpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!dpyPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!b`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!b`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!b`yPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!b`!dpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!b`!dpyPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXjSaP!b`!dpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",
|
|
1170
|
-
tokenizers: [
|
|
1171
|
-
scriptTokens,
|
|
1172
|
-
styleTokens,
|
|
1173
|
-
textareaTokens,
|
|
1174
|
-
endTag,
|
|
1175
|
-
tagStart,
|
|
1176
|
-
commentContent,
|
|
1177
|
-
0,
|
|
1178
|
-
1,
|
|
1179
|
-
2,
|
|
1180
|
-
3,
|
|
1181
|
-
4,
|
|
1182
|
-
5
|
|
1183
|
-
],
|
|
1184
|
-
topRules: { "Document": [0, 16] },
|
|
1185
|
-
dialects: {
|
|
1186
|
-
noMatch: 0,
|
|
1187
|
-
selfClosing: 515
|
|
1188
|
-
},
|
|
1189
|
-
tokenPrec: 517
|
|
1190
|
-
});
|
|
1191
|
-
function getAttrs(openTag, input) {
|
|
1192
|
-
let attrs = Object.create(null);
|
|
1193
|
-
for (let att of openTag.getChildren(Attribute)) {
|
|
1194
|
-
let name = att.getChild(AttributeName), value = att.getChild(AttributeValue) || att.getChild(UnquotedAttributeValue);
|
|
1195
|
-
if (name) attrs[input.read(name.from, name.to)] = !value ? "" : value.type.id == AttributeValue ? input.read(value.from + 1, value.to - 1) : input.read(value.from, value.to);
|
|
1196
|
-
}
|
|
1197
|
-
return attrs;
|
|
1198
|
-
}
|
|
1199
|
-
function findTagName(openTag, input) {
|
|
1200
|
-
let tagNameNode = openTag.getChild(TagName);
|
|
1201
|
-
return tagNameNode ? input.read(tagNameNode.from, tagNameNode.to) : " ";
|
|
1202
|
-
}
|
|
1203
|
-
function maybeNest(node, input, tags) {
|
|
1204
|
-
let attrs;
|
|
1205
|
-
for (let tag of tags) if (!tag.attrs || tag.attrs(attrs || (attrs = getAttrs(node.node.parent.firstChild, input)))) return {
|
|
1206
|
-
parser: tag.parser,
|
|
1207
|
-
bracketed: true
|
|
1208
|
-
};
|
|
1209
|
-
return null;
|
|
1210
|
-
}
|
|
1211
|
-
function configureNesting(tags = [], attributes = []) {
|
|
1212
|
-
let script = [], style = [], textarea = [], other = [];
|
|
1213
|
-
for (let tag of tags) (tag.tag == "script" ? script : tag.tag == "style" ? style : tag.tag == "textarea" ? textarea : other).push(tag);
|
|
1214
|
-
let attrs = attributes.length ? Object.create(null) : null;
|
|
1215
|
-
for (let attr of attributes) (attrs[attr.name] || (attrs[attr.name] = [])).push(attr);
|
|
1216
|
-
return parseMixed((node, input) => {
|
|
1217
|
-
let id = node.type.id;
|
|
1218
|
-
if (id == ScriptText) return maybeNest(node, input, script);
|
|
1219
|
-
if (id == StyleText) return maybeNest(node, input, style);
|
|
1220
|
-
if (id == TextareaText) return maybeNest(node, input, textarea);
|
|
1221
|
-
if (id == Element && other.length) {
|
|
1222
|
-
let n = node.node, open = n.firstChild, tagName = open && findTagName(open, input), attrs;
|
|
1223
|
-
if (tagName) {
|
|
1224
|
-
for (let tag of other) if (tag.tag == tagName && (!tag.attrs || tag.attrs(attrs || (attrs = getAttrs(open, input))))) {
|
|
1225
|
-
let close = n.lastChild;
|
|
1226
|
-
let to = close.type.id == CloseTag ? close.from : n.to;
|
|
1227
|
-
if (to > open.to) return {
|
|
1228
|
-
parser: tag.parser,
|
|
1229
|
-
overlay: [{
|
|
1230
|
-
from: open.to,
|
|
1231
|
-
to
|
|
1232
|
-
}]
|
|
1233
|
-
};
|
|
1234
|
-
}
|
|
1235
|
-
}
|
|
1236
|
-
}
|
|
1237
|
-
if (attrs && id == Attribute) {
|
|
1238
|
-
let n = node.node, nameNode;
|
|
1239
|
-
if (nameNode = n.firstChild) {
|
|
1240
|
-
let matches = attrs[input.read(nameNode.from, nameNode.to)];
|
|
1241
|
-
if (matches) for (let attr of matches) {
|
|
1242
|
-
if (attr.tagName && attr.tagName != findTagName(n.parent, input)) continue;
|
|
1243
|
-
let value = n.lastChild;
|
|
1244
|
-
if (value.type.id == AttributeValue) {
|
|
1245
|
-
let from = value.from + 1;
|
|
1246
|
-
let last = value.lastChild, to = value.to - (last && last.isError ? 0 : 1);
|
|
1247
|
-
if (to > from) return {
|
|
1248
|
-
parser: attr.parser,
|
|
1249
|
-
overlay: [{
|
|
1250
|
-
from,
|
|
1251
|
-
to
|
|
1252
|
-
}],
|
|
1253
|
-
bracketed: true
|
|
1254
|
-
};
|
|
1255
|
-
} else if (value.type.id == UnquotedAttributeValue) return {
|
|
1256
|
-
parser: attr.parser,
|
|
1257
|
-
overlay: [{
|
|
1258
|
-
from: value.from,
|
|
1259
|
-
to: value.to
|
|
1260
|
-
}]
|
|
1261
|
-
};
|
|
1262
|
-
}
|
|
1263
|
-
}
|
|
1264
|
-
}
|
|
1265
|
-
return null;
|
|
1266
|
-
});
|
|
1267
|
-
}
|
|
1268
|
-
//#endregion
|
|
1269
|
-
//#region ../../node_modules/.pnpm/@codemirror+lang-html@6.4.11/node_modules/@codemirror/lang-html/dist/index.js
|
|
1270
|
-
var Targets = [
|
|
1271
|
-
"_blank",
|
|
1272
|
-
"_self",
|
|
1273
|
-
"_top",
|
|
1274
|
-
"_parent"
|
|
1275
|
-
];
|
|
1276
|
-
var Charsets = [
|
|
1277
|
-
"ascii",
|
|
1278
|
-
"utf-8",
|
|
1279
|
-
"utf-16",
|
|
1280
|
-
"latin1",
|
|
1281
|
-
"latin1"
|
|
1282
|
-
];
|
|
1283
|
-
var Methods = [
|
|
1284
|
-
"get",
|
|
1285
|
-
"post",
|
|
1286
|
-
"put",
|
|
1287
|
-
"delete"
|
|
1288
|
-
];
|
|
1289
|
-
var Encs = [
|
|
1290
|
-
"application/x-www-form-urlencoded",
|
|
1291
|
-
"multipart/form-data",
|
|
1292
|
-
"text/plain"
|
|
1293
|
-
];
|
|
1294
|
-
var Bool = ["true", "false"];
|
|
1295
|
-
var S = {};
|
|
1296
|
-
var Tags = {
|
|
1297
|
-
a: { attrs: {
|
|
1298
|
-
href: null,
|
|
1299
|
-
ping: null,
|
|
1300
|
-
type: null,
|
|
1301
|
-
media: null,
|
|
1302
|
-
target: Targets,
|
|
1303
|
-
hreflang: null
|
|
1304
|
-
} },
|
|
1305
|
-
abbr: S,
|
|
1306
|
-
address: S,
|
|
1307
|
-
area: { attrs: {
|
|
1308
|
-
alt: null,
|
|
1309
|
-
coords: null,
|
|
1310
|
-
href: null,
|
|
1311
|
-
target: null,
|
|
1312
|
-
ping: null,
|
|
1313
|
-
media: null,
|
|
1314
|
-
hreflang: null,
|
|
1315
|
-
type: null,
|
|
1316
|
-
shape: [
|
|
1317
|
-
"default",
|
|
1318
|
-
"rect",
|
|
1319
|
-
"circle",
|
|
1320
|
-
"poly"
|
|
1321
|
-
]
|
|
1322
|
-
} },
|
|
1323
|
-
article: S,
|
|
1324
|
-
aside: S,
|
|
1325
|
-
audio: { attrs: {
|
|
1326
|
-
src: null,
|
|
1327
|
-
mediagroup: null,
|
|
1328
|
-
crossorigin: ["anonymous", "use-credentials"],
|
|
1329
|
-
preload: [
|
|
1330
|
-
"none",
|
|
1331
|
-
"metadata",
|
|
1332
|
-
"auto"
|
|
1333
|
-
],
|
|
1334
|
-
autoplay: ["autoplay"],
|
|
1335
|
-
loop: ["loop"],
|
|
1336
|
-
controls: ["controls"]
|
|
1337
|
-
} },
|
|
1338
|
-
b: S,
|
|
1339
|
-
base: { attrs: {
|
|
1340
|
-
href: null,
|
|
1341
|
-
target: Targets
|
|
1342
|
-
} },
|
|
1343
|
-
bdi: S,
|
|
1344
|
-
bdo: S,
|
|
1345
|
-
blockquote: { attrs: { cite: null } },
|
|
1346
|
-
body: S,
|
|
1347
|
-
br: S,
|
|
1348
|
-
button: { attrs: {
|
|
1349
|
-
form: null,
|
|
1350
|
-
formaction: null,
|
|
1351
|
-
name: null,
|
|
1352
|
-
value: null,
|
|
1353
|
-
autofocus: ["autofocus"],
|
|
1354
|
-
disabled: ["autofocus"],
|
|
1355
|
-
formenctype: Encs,
|
|
1356
|
-
formmethod: Methods,
|
|
1357
|
-
formnovalidate: ["novalidate"],
|
|
1358
|
-
formtarget: Targets,
|
|
1359
|
-
type: [
|
|
1360
|
-
"submit",
|
|
1361
|
-
"reset",
|
|
1362
|
-
"button"
|
|
1363
|
-
]
|
|
1364
|
-
} },
|
|
1365
|
-
canvas: { attrs: {
|
|
1366
|
-
width: null,
|
|
1367
|
-
height: null
|
|
1368
|
-
} },
|
|
1369
|
-
caption: S,
|
|
1370
|
-
center: S,
|
|
1371
|
-
cite: S,
|
|
1372
|
-
code: S,
|
|
1373
|
-
col: { attrs: { span: null } },
|
|
1374
|
-
colgroup: { attrs: { span: null } },
|
|
1375
|
-
command: { attrs: {
|
|
1376
|
-
type: [
|
|
1377
|
-
"command",
|
|
1378
|
-
"checkbox",
|
|
1379
|
-
"radio"
|
|
1380
|
-
],
|
|
1381
|
-
label: null,
|
|
1382
|
-
icon: null,
|
|
1383
|
-
radiogroup: null,
|
|
1384
|
-
command: null,
|
|
1385
|
-
title: null,
|
|
1386
|
-
disabled: ["disabled"],
|
|
1387
|
-
checked: ["checked"]
|
|
1388
|
-
} },
|
|
1389
|
-
data: { attrs: { value: null } },
|
|
1390
|
-
datagrid: { attrs: {
|
|
1391
|
-
disabled: ["disabled"],
|
|
1392
|
-
multiple: ["multiple"]
|
|
1393
|
-
} },
|
|
1394
|
-
datalist: { attrs: { data: null } },
|
|
1395
|
-
dd: S,
|
|
1396
|
-
del: { attrs: {
|
|
1397
|
-
cite: null,
|
|
1398
|
-
datetime: null
|
|
1399
|
-
} },
|
|
1400
|
-
details: { attrs: { open: ["open"] } },
|
|
1401
|
-
dfn: S,
|
|
1402
|
-
div: S,
|
|
1403
|
-
dl: S,
|
|
1404
|
-
dt: S,
|
|
1405
|
-
em: S,
|
|
1406
|
-
embed: { attrs: {
|
|
1407
|
-
src: null,
|
|
1408
|
-
type: null,
|
|
1409
|
-
width: null,
|
|
1410
|
-
height: null
|
|
1411
|
-
} },
|
|
1412
|
-
eventsource: { attrs: { src: null } },
|
|
1413
|
-
fieldset: { attrs: {
|
|
1414
|
-
disabled: ["disabled"],
|
|
1415
|
-
form: null,
|
|
1416
|
-
name: null
|
|
1417
|
-
} },
|
|
1418
|
-
figcaption: S,
|
|
1419
|
-
figure: S,
|
|
1420
|
-
footer: S,
|
|
1421
|
-
form: { attrs: {
|
|
1422
|
-
action: null,
|
|
1423
|
-
name: null,
|
|
1424
|
-
"accept-charset": Charsets,
|
|
1425
|
-
autocomplete: ["on", "off"],
|
|
1426
|
-
enctype: Encs,
|
|
1427
|
-
method: Methods,
|
|
1428
|
-
novalidate: ["novalidate"],
|
|
1429
|
-
target: Targets
|
|
1430
|
-
} },
|
|
1431
|
-
h1: S,
|
|
1432
|
-
h2: S,
|
|
1433
|
-
h3: S,
|
|
1434
|
-
h4: S,
|
|
1435
|
-
h5: S,
|
|
1436
|
-
h6: S,
|
|
1437
|
-
head: { children: [
|
|
1438
|
-
"title",
|
|
1439
|
-
"base",
|
|
1440
|
-
"link",
|
|
1441
|
-
"style",
|
|
1442
|
-
"meta",
|
|
1443
|
-
"script",
|
|
1444
|
-
"noscript",
|
|
1445
|
-
"command"
|
|
1446
|
-
] },
|
|
1447
|
-
header: S,
|
|
1448
|
-
hgroup: S,
|
|
1449
|
-
hr: S,
|
|
1450
|
-
html: { attrs: { manifest: null } },
|
|
1451
|
-
i: S,
|
|
1452
|
-
iframe: { attrs: {
|
|
1453
|
-
src: null,
|
|
1454
|
-
srcdoc: null,
|
|
1455
|
-
name: null,
|
|
1456
|
-
width: null,
|
|
1457
|
-
height: null,
|
|
1458
|
-
sandbox: [
|
|
1459
|
-
"allow-top-navigation",
|
|
1460
|
-
"allow-same-origin",
|
|
1461
|
-
"allow-forms",
|
|
1462
|
-
"allow-scripts"
|
|
1463
|
-
],
|
|
1464
|
-
seamless: ["seamless"]
|
|
1465
|
-
} },
|
|
1466
|
-
img: { attrs: {
|
|
1467
|
-
alt: null,
|
|
1468
|
-
src: null,
|
|
1469
|
-
ismap: null,
|
|
1470
|
-
usemap: null,
|
|
1471
|
-
width: null,
|
|
1472
|
-
height: null,
|
|
1473
|
-
crossorigin: ["anonymous", "use-credentials"]
|
|
1474
|
-
} },
|
|
1475
|
-
input: { attrs: {
|
|
1476
|
-
alt: null,
|
|
1477
|
-
dirname: null,
|
|
1478
|
-
form: null,
|
|
1479
|
-
formaction: null,
|
|
1480
|
-
height: null,
|
|
1481
|
-
list: null,
|
|
1482
|
-
max: null,
|
|
1483
|
-
maxlength: null,
|
|
1484
|
-
min: null,
|
|
1485
|
-
name: null,
|
|
1486
|
-
pattern: null,
|
|
1487
|
-
placeholder: null,
|
|
1488
|
-
size: null,
|
|
1489
|
-
src: null,
|
|
1490
|
-
step: null,
|
|
1491
|
-
value: null,
|
|
1492
|
-
width: null,
|
|
1493
|
-
accept: [
|
|
1494
|
-
"audio/*",
|
|
1495
|
-
"video/*",
|
|
1496
|
-
"image/*"
|
|
1497
|
-
],
|
|
1498
|
-
autocomplete: ["on", "off"],
|
|
1499
|
-
autofocus: ["autofocus"],
|
|
1500
|
-
checked: ["checked"],
|
|
1501
|
-
disabled: ["disabled"],
|
|
1502
|
-
formenctype: Encs,
|
|
1503
|
-
formmethod: Methods,
|
|
1504
|
-
formnovalidate: ["novalidate"],
|
|
1505
|
-
formtarget: Targets,
|
|
1506
|
-
multiple: ["multiple"],
|
|
1507
|
-
readonly: ["readonly"],
|
|
1508
|
-
required: ["required"],
|
|
1509
|
-
type: [
|
|
1510
|
-
"hidden",
|
|
1511
|
-
"text",
|
|
1512
|
-
"search",
|
|
1513
|
-
"tel",
|
|
1514
|
-
"url",
|
|
1515
|
-
"email",
|
|
1516
|
-
"password",
|
|
1517
|
-
"datetime",
|
|
1518
|
-
"date",
|
|
1519
|
-
"month",
|
|
1520
|
-
"week",
|
|
1521
|
-
"time",
|
|
1522
|
-
"datetime-local",
|
|
1523
|
-
"number",
|
|
1524
|
-
"range",
|
|
1525
|
-
"color",
|
|
1526
|
-
"checkbox",
|
|
1527
|
-
"radio",
|
|
1528
|
-
"file",
|
|
1529
|
-
"submit",
|
|
1530
|
-
"image",
|
|
1531
|
-
"reset",
|
|
1532
|
-
"button"
|
|
1533
|
-
]
|
|
1534
|
-
} },
|
|
1535
|
-
ins: { attrs: {
|
|
1536
|
-
cite: null,
|
|
1537
|
-
datetime: null
|
|
1538
|
-
} },
|
|
1539
|
-
kbd: S,
|
|
1540
|
-
keygen: { attrs: {
|
|
1541
|
-
challenge: null,
|
|
1542
|
-
form: null,
|
|
1543
|
-
name: null,
|
|
1544
|
-
autofocus: ["autofocus"],
|
|
1545
|
-
disabled: ["disabled"],
|
|
1546
|
-
keytype: ["RSA"]
|
|
1547
|
-
} },
|
|
1548
|
-
label: { attrs: {
|
|
1549
|
-
for: null,
|
|
1550
|
-
form: null
|
|
1551
|
-
} },
|
|
1552
|
-
legend: S,
|
|
1553
|
-
li: { attrs: { value: null } },
|
|
1554
|
-
link: { attrs: {
|
|
1555
|
-
href: null,
|
|
1556
|
-
type: null,
|
|
1557
|
-
hreflang: null,
|
|
1558
|
-
media: null,
|
|
1559
|
-
sizes: [
|
|
1560
|
-
"all",
|
|
1561
|
-
"16x16",
|
|
1562
|
-
"16x16 32x32",
|
|
1563
|
-
"16x16 32x32 64x64"
|
|
1564
|
-
]
|
|
1565
|
-
} },
|
|
1566
|
-
map: { attrs: { name: null } },
|
|
1567
|
-
mark: S,
|
|
1568
|
-
menu: { attrs: {
|
|
1569
|
-
label: null,
|
|
1570
|
-
type: [
|
|
1571
|
-
"list",
|
|
1572
|
-
"context",
|
|
1573
|
-
"toolbar"
|
|
1574
|
-
]
|
|
1575
|
-
} },
|
|
1576
|
-
meta: { attrs: {
|
|
1577
|
-
content: null,
|
|
1578
|
-
charset: Charsets,
|
|
1579
|
-
name: [
|
|
1580
|
-
"viewport",
|
|
1581
|
-
"application-name",
|
|
1582
|
-
"author",
|
|
1583
|
-
"description",
|
|
1584
|
-
"generator",
|
|
1585
|
-
"keywords"
|
|
1586
|
-
],
|
|
1587
|
-
"http-equiv": [
|
|
1588
|
-
"content-language",
|
|
1589
|
-
"content-type",
|
|
1590
|
-
"default-style",
|
|
1591
|
-
"refresh"
|
|
1592
|
-
]
|
|
1593
|
-
} },
|
|
1594
|
-
meter: { attrs: {
|
|
1595
|
-
value: null,
|
|
1596
|
-
min: null,
|
|
1597
|
-
low: null,
|
|
1598
|
-
high: null,
|
|
1599
|
-
max: null,
|
|
1600
|
-
optimum: null
|
|
1601
|
-
} },
|
|
1602
|
-
nav: S,
|
|
1603
|
-
noscript: S,
|
|
1604
|
-
object: { attrs: {
|
|
1605
|
-
data: null,
|
|
1606
|
-
type: null,
|
|
1607
|
-
name: null,
|
|
1608
|
-
usemap: null,
|
|
1609
|
-
form: null,
|
|
1610
|
-
width: null,
|
|
1611
|
-
height: null,
|
|
1612
|
-
typemustmatch: ["typemustmatch"]
|
|
1613
|
-
} },
|
|
1614
|
-
ol: {
|
|
1615
|
-
attrs: {
|
|
1616
|
-
reversed: ["reversed"],
|
|
1617
|
-
start: null,
|
|
1618
|
-
type: [
|
|
1619
|
-
"1",
|
|
1620
|
-
"a",
|
|
1621
|
-
"A",
|
|
1622
|
-
"i",
|
|
1623
|
-
"I"
|
|
1624
|
-
]
|
|
1625
|
-
},
|
|
1626
|
-
children: [
|
|
1627
|
-
"li",
|
|
1628
|
-
"script",
|
|
1629
|
-
"template",
|
|
1630
|
-
"ul",
|
|
1631
|
-
"ol"
|
|
1632
|
-
]
|
|
1633
|
-
},
|
|
1634
|
-
optgroup: { attrs: {
|
|
1635
|
-
disabled: ["disabled"],
|
|
1636
|
-
label: null
|
|
1637
|
-
} },
|
|
1638
|
-
option: { attrs: {
|
|
1639
|
-
disabled: ["disabled"],
|
|
1640
|
-
label: null,
|
|
1641
|
-
selected: ["selected"],
|
|
1642
|
-
value: null
|
|
1643
|
-
} },
|
|
1644
|
-
output: { attrs: {
|
|
1645
|
-
for: null,
|
|
1646
|
-
form: null,
|
|
1647
|
-
name: null
|
|
1648
|
-
} },
|
|
1649
|
-
p: S,
|
|
1650
|
-
param: { attrs: {
|
|
1651
|
-
name: null,
|
|
1652
|
-
value: null
|
|
1653
|
-
} },
|
|
1654
|
-
pre: S,
|
|
1655
|
-
progress: { attrs: {
|
|
1656
|
-
value: null,
|
|
1657
|
-
max: null
|
|
1658
|
-
} },
|
|
1659
|
-
q: { attrs: { cite: null } },
|
|
1660
|
-
rp: S,
|
|
1661
|
-
rt: S,
|
|
1662
|
-
ruby: S,
|
|
1663
|
-
samp: S,
|
|
1664
|
-
script: { attrs: {
|
|
1665
|
-
type: ["text/javascript"],
|
|
1666
|
-
src: null,
|
|
1667
|
-
async: ["async"],
|
|
1668
|
-
defer: ["defer"],
|
|
1669
|
-
charset: Charsets
|
|
1670
|
-
} },
|
|
1671
|
-
section: S,
|
|
1672
|
-
select: { attrs: {
|
|
1673
|
-
form: null,
|
|
1674
|
-
name: null,
|
|
1675
|
-
size: null,
|
|
1676
|
-
autofocus: ["autofocus"],
|
|
1677
|
-
disabled: ["disabled"],
|
|
1678
|
-
multiple: ["multiple"]
|
|
1679
|
-
} },
|
|
1680
|
-
slot: { attrs: { name: null } },
|
|
1681
|
-
small: S,
|
|
1682
|
-
source: { attrs: {
|
|
1683
|
-
src: null,
|
|
1684
|
-
type: null,
|
|
1685
|
-
media: null
|
|
1686
|
-
} },
|
|
1687
|
-
span: S,
|
|
1688
|
-
strong: S,
|
|
1689
|
-
style: { attrs: {
|
|
1690
|
-
type: ["text/css"],
|
|
1691
|
-
media: null,
|
|
1692
|
-
scoped: null
|
|
1693
|
-
} },
|
|
1694
|
-
sub: S,
|
|
1695
|
-
summary: S,
|
|
1696
|
-
sup: S,
|
|
1697
|
-
table: S,
|
|
1698
|
-
tbody: S,
|
|
1699
|
-
td: { attrs: {
|
|
1700
|
-
colspan: null,
|
|
1701
|
-
rowspan: null,
|
|
1702
|
-
headers: null
|
|
1703
|
-
} },
|
|
1704
|
-
template: S,
|
|
1705
|
-
textarea: { attrs: {
|
|
1706
|
-
dirname: null,
|
|
1707
|
-
form: null,
|
|
1708
|
-
maxlength: null,
|
|
1709
|
-
name: null,
|
|
1710
|
-
placeholder: null,
|
|
1711
|
-
rows: null,
|
|
1712
|
-
cols: null,
|
|
1713
|
-
autofocus: ["autofocus"],
|
|
1714
|
-
disabled: ["disabled"],
|
|
1715
|
-
readonly: ["readonly"],
|
|
1716
|
-
required: ["required"],
|
|
1717
|
-
wrap: ["soft", "hard"]
|
|
1718
|
-
} },
|
|
1719
|
-
tfoot: S,
|
|
1720
|
-
th: { attrs: {
|
|
1721
|
-
colspan: null,
|
|
1722
|
-
rowspan: null,
|
|
1723
|
-
headers: null,
|
|
1724
|
-
scope: [
|
|
1725
|
-
"row",
|
|
1726
|
-
"col",
|
|
1727
|
-
"rowgroup",
|
|
1728
|
-
"colgroup"
|
|
1729
|
-
]
|
|
1730
|
-
} },
|
|
1731
|
-
thead: S,
|
|
1732
|
-
time: { attrs: { datetime: null } },
|
|
1733
|
-
title: S,
|
|
1734
|
-
tr: S,
|
|
1735
|
-
track: { attrs: {
|
|
1736
|
-
src: null,
|
|
1737
|
-
label: null,
|
|
1738
|
-
default: null,
|
|
1739
|
-
kind: [
|
|
1740
|
-
"subtitles",
|
|
1741
|
-
"captions",
|
|
1742
|
-
"descriptions",
|
|
1743
|
-
"chapters",
|
|
1744
|
-
"metadata"
|
|
1745
|
-
],
|
|
1746
|
-
srclang: null
|
|
1747
|
-
} },
|
|
1748
|
-
ul: { children: [
|
|
1749
|
-
"li",
|
|
1750
|
-
"script",
|
|
1751
|
-
"template",
|
|
1752
|
-
"ul",
|
|
1753
|
-
"ol"
|
|
1754
|
-
] },
|
|
1755
|
-
var: S,
|
|
1756
|
-
video: { attrs: {
|
|
1757
|
-
src: null,
|
|
1758
|
-
poster: null,
|
|
1759
|
-
width: null,
|
|
1760
|
-
height: null,
|
|
1761
|
-
crossorigin: ["anonymous", "use-credentials"],
|
|
1762
|
-
preload: [
|
|
1763
|
-
"auto",
|
|
1764
|
-
"metadata",
|
|
1765
|
-
"none"
|
|
1766
|
-
],
|
|
1767
|
-
autoplay: ["autoplay"],
|
|
1768
|
-
mediagroup: ["movie"],
|
|
1769
|
-
muted: ["muted"],
|
|
1770
|
-
controls: ["controls"]
|
|
1771
|
-
} },
|
|
1772
|
-
wbr: S
|
|
1773
|
-
};
|
|
1774
|
-
var GlobalAttrs = {
|
|
1775
|
-
accesskey: null,
|
|
1776
|
-
class: null,
|
|
1777
|
-
contenteditable: Bool,
|
|
1778
|
-
contextmenu: null,
|
|
1779
|
-
dir: [
|
|
1780
|
-
"ltr",
|
|
1781
|
-
"rtl",
|
|
1782
|
-
"auto"
|
|
1783
|
-
],
|
|
1784
|
-
draggable: [
|
|
1785
|
-
"true",
|
|
1786
|
-
"false",
|
|
1787
|
-
"auto"
|
|
1788
|
-
],
|
|
1789
|
-
dropzone: [
|
|
1790
|
-
"copy",
|
|
1791
|
-
"move",
|
|
1792
|
-
"link",
|
|
1793
|
-
"string:",
|
|
1794
|
-
"file:"
|
|
1795
|
-
],
|
|
1796
|
-
hidden: ["hidden"],
|
|
1797
|
-
id: null,
|
|
1798
|
-
inert: ["inert"],
|
|
1799
|
-
itemid: null,
|
|
1800
|
-
itemprop: null,
|
|
1801
|
-
itemref: null,
|
|
1802
|
-
itemscope: ["itemscope"],
|
|
1803
|
-
itemtype: null,
|
|
1804
|
-
lang: [
|
|
1805
|
-
"ar",
|
|
1806
|
-
"bn",
|
|
1807
|
-
"de",
|
|
1808
|
-
"en-GB",
|
|
1809
|
-
"en-US",
|
|
1810
|
-
"es",
|
|
1811
|
-
"fr",
|
|
1812
|
-
"hi",
|
|
1813
|
-
"id",
|
|
1814
|
-
"ja",
|
|
1815
|
-
"pa",
|
|
1816
|
-
"pt",
|
|
1817
|
-
"ru",
|
|
1818
|
-
"tr",
|
|
1819
|
-
"zh"
|
|
1820
|
-
],
|
|
1821
|
-
spellcheck: Bool,
|
|
1822
|
-
autocorrect: Bool,
|
|
1823
|
-
autocapitalize: Bool,
|
|
1824
|
-
style: null,
|
|
1825
|
-
tabindex: null,
|
|
1826
|
-
title: null,
|
|
1827
|
-
translate: ["yes", "no"],
|
|
1828
|
-
rel: [
|
|
1829
|
-
"stylesheet",
|
|
1830
|
-
"alternate",
|
|
1831
|
-
"author",
|
|
1832
|
-
"bookmark",
|
|
1833
|
-
"help",
|
|
1834
|
-
"license",
|
|
1835
|
-
"next",
|
|
1836
|
-
"nofollow",
|
|
1837
|
-
"noreferrer",
|
|
1838
|
-
"prefetch",
|
|
1839
|
-
"prev",
|
|
1840
|
-
"search",
|
|
1841
|
-
"tag"
|
|
1842
|
-
],
|
|
1843
|
-
role: /*@__PURE__*/ "alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),
|
|
1844
|
-
"aria-activedescendant": null,
|
|
1845
|
-
"aria-atomic": Bool,
|
|
1846
|
-
"aria-autocomplete": [
|
|
1847
|
-
"inline",
|
|
1848
|
-
"list",
|
|
1849
|
-
"both",
|
|
1850
|
-
"none"
|
|
1851
|
-
],
|
|
1852
|
-
"aria-busy": Bool,
|
|
1853
|
-
"aria-checked": [
|
|
1854
|
-
"true",
|
|
1855
|
-
"false",
|
|
1856
|
-
"mixed",
|
|
1857
|
-
"undefined"
|
|
1858
|
-
],
|
|
1859
|
-
"aria-controls": null,
|
|
1860
|
-
"aria-describedby": null,
|
|
1861
|
-
"aria-disabled": Bool,
|
|
1862
|
-
"aria-dropeffect": null,
|
|
1863
|
-
"aria-expanded": [
|
|
1864
|
-
"true",
|
|
1865
|
-
"false",
|
|
1866
|
-
"undefined"
|
|
1867
|
-
],
|
|
1868
|
-
"aria-flowto": null,
|
|
1869
|
-
"aria-grabbed": [
|
|
1870
|
-
"true",
|
|
1871
|
-
"false",
|
|
1872
|
-
"undefined"
|
|
1873
|
-
],
|
|
1874
|
-
"aria-haspopup": Bool,
|
|
1875
|
-
"aria-hidden": Bool,
|
|
1876
|
-
"aria-invalid": [
|
|
1877
|
-
"true",
|
|
1878
|
-
"false",
|
|
1879
|
-
"grammar",
|
|
1880
|
-
"spelling"
|
|
1881
|
-
],
|
|
1882
|
-
"aria-label": null,
|
|
1883
|
-
"aria-labelledby": null,
|
|
1884
|
-
"aria-level": null,
|
|
1885
|
-
"aria-live": [
|
|
1886
|
-
"off",
|
|
1887
|
-
"polite",
|
|
1888
|
-
"assertive"
|
|
1889
|
-
],
|
|
1890
|
-
"aria-multiline": Bool,
|
|
1891
|
-
"aria-multiselectable": Bool,
|
|
1892
|
-
"aria-owns": null,
|
|
1893
|
-
"aria-posinset": null,
|
|
1894
|
-
"aria-pressed": [
|
|
1895
|
-
"true",
|
|
1896
|
-
"false",
|
|
1897
|
-
"mixed",
|
|
1898
|
-
"undefined"
|
|
1899
|
-
],
|
|
1900
|
-
"aria-readonly": Bool,
|
|
1901
|
-
"aria-relevant": null,
|
|
1902
|
-
"aria-required": Bool,
|
|
1903
|
-
"aria-selected": [
|
|
1904
|
-
"true",
|
|
1905
|
-
"false",
|
|
1906
|
-
"undefined"
|
|
1907
|
-
],
|
|
1908
|
-
"aria-setsize": null,
|
|
1909
|
-
"aria-sort": [
|
|
1910
|
-
"ascending",
|
|
1911
|
-
"descending",
|
|
1912
|
-
"none",
|
|
1913
|
-
"other"
|
|
1914
|
-
],
|
|
1915
|
-
"aria-valuemax": null,
|
|
1916
|
-
"aria-valuemin": null,
|
|
1917
|
-
"aria-valuenow": null,
|
|
1918
|
-
"aria-valuetext": null
|
|
1919
|
-
};
|
|
1920
|
-
var eventAttributes = /*@__PURE__*/ "beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map((n) => "on" + n);
|
|
1921
|
-
for (let a of eventAttributes) GlobalAttrs[a] = null;
|
|
1922
|
-
var Schema = class {
|
|
1923
|
-
constructor(extraTags, extraAttrs) {
|
|
1924
|
-
this.tags = {
|
|
1925
|
-
...Tags,
|
|
1926
|
-
...extraTags
|
|
1927
|
-
};
|
|
1928
|
-
this.globalAttrs = {
|
|
1929
|
-
...GlobalAttrs,
|
|
1930
|
-
...extraAttrs
|
|
1931
|
-
};
|
|
1932
|
-
this.allTags = Object.keys(this.tags);
|
|
1933
|
-
this.globalAttrNames = Object.keys(this.globalAttrs);
|
|
1934
|
-
}
|
|
1935
|
-
};
|
|
1936
|
-
Schema.default = /*@__PURE__*/ new Schema();
|
|
1937
|
-
function elementName(doc, tree, max = doc.length) {
|
|
1938
|
-
if (!tree) return "";
|
|
1939
|
-
let tag = tree.firstChild;
|
|
1940
|
-
let name = tag && tag.getChild("TagName");
|
|
1941
|
-
return name ? doc.sliceString(name.from, Math.min(name.to, max)) : "";
|
|
1942
|
-
}
|
|
1943
|
-
function findParentElement(tree, skip = false) {
|
|
1944
|
-
for (; tree; tree = tree.parent) if (tree.name == "Element") if (skip) skip = false;
|
|
1945
|
-
else return tree;
|
|
1946
|
-
return null;
|
|
1947
|
-
}
|
|
1948
|
-
function allowedChildren(doc, tree, schema) {
|
|
1949
|
-
let parentInfo = schema.tags[elementName(doc, findParentElement(tree))];
|
|
1950
|
-
return (parentInfo === null || parentInfo === void 0 ? void 0 : parentInfo.children) || schema.allTags;
|
|
1951
|
-
}
|
|
1952
|
-
function openTags(doc, tree) {
|
|
1953
|
-
let open = [];
|
|
1954
|
-
for (let parent = findParentElement(tree); parent && !parent.type.isTop; parent = findParentElement(parent.parent)) {
|
|
1955
|
-
let tagName = elementName(doc, parent);
|
|
1956
|
-
if (tagName && parent.lastChild.name == "CloseTag") break;
|
|
1957
|
-
if (tagName && open.indexOf(tagName) < 0 && (tree.name == "EndTag" || tree.from >= parent.firstChild.to)) open.push(tagName);
|
|
1958
|
-
}
|
|
1959
|
-
return open;
|
|
1960
|
-
}
|
|
1961
|
-
var identifier = /^[:\-\.\w\u00b7-\uffff]*$/;
|
|
1962
|
-
function completeTag(state, schema, tree, from, to) {
|
|
1963
|
-
let end = /\s*>/.test(state.sliceDoc(to, to + 5)) ? "" : ">";
|
|
1964
|
-
let parent = findParentElement(tree, tree.name == "StartTag" || tree.name == "TagName");
|
|
1965
|
-
return {
|
|
1966
|
-
from,
|
|
1967
|
-
to,
|
|
1968
|
-
options: allowedChildren(state.doc, parent, schema).map((tagName) => ({
|
|
1969
|
-
label: tagName,
|
|
1970
|
-
type: "type"
|
|
1971
|
-
})).concat(openTags(state.doc, tree).map((tag, i) => ({
|
|
1972
|
-
label: "/" + tag,
|
|
1973
|
-
apply: "/" + tag + end,
|
|
1974
|
-
type: "type",
|
|
1975
|
-
boost: 99 - i
|
|
1976
|
-
}))),
|
|
1977
|
-
validFor: /^\/?[:\-\.\w\u00b7-\uffff]*$/
|
|
1978
|
-
};
|
|
1979
|
-
}
|
|
1980
|
-
function completeCloseTag(state, tree, from, to) {
|
|
1981
|
-
let end = /\s*>/.test(state.sliceDoc(to, to + 5)) ? "" : ">";
|
|
1982
|
-
return {
|
|
1983
|
-
from,
|
|
1984
|
-
to,
|
|
1985
|
-
options: openTags(state.doc, tree).map((tag, i) => ({
|
|
1986
|
-
label: tag,
|
|
1987
|
-
apply: tag + end,
|
|
1988
|
-
type: "type",
|
|
1989
|
-
boost: 99 - i
|
|
1990
|
-
})),
|
|
1991
|
-
validFor: identifier
|
|
1992
|
-
};
|
|
1993
|
-
}
|
|
1994
|
-
function completeStartTag(state, schema, tree, pos) {
|
|
1995
|
-
let options = [], level = 0;
|
|
1996
|
-
for (let tagName of allowedChildren(state.doc, tree, schema)) options.push({
|
|
1997
|
-
label: "<" + tagName,
|
|
1998
|
-
type: "type"
|
|
1999
|
-
});
|
|
2000
|
-
for (let open of openTags(state.doc, tree)) options.push({
|
|
2001
|
-
label: "</" + open + ">",
|
|
2002
|
-
type: "type",
|
|
2003
|
-
boost: 99 - level++
|
|
2004
|
-
});
|
|
2005
|
-
return {
|
|
2006
|
-
from: pos,
|
|
2007
|
-
to: pos,
|
|
2008
|
-
options,
|
|
2009
|
-
validFor: /^<\/?[:\-\.\w\u00b7-\uffff]*$/
|
|
2010
|
-
};
|
|
2011
|
-
}
|
|
2012
|
-
function completeAttrName(state, schema, tree, from, to) {
|
|
2013
|
-
let elt = findParentElement(tree), info = elt ? schema.tags[elementName(state.doc, elt)] : null;
|
|
2014
|
-
let localAttrs = info && info.attrs ? Object.keys(info.attrs) : [];
|
|
2015
|
-
return {
|
|
2016
|
-
from,
|
|
2017
|
-
to,
|
|
2018
|
-
options: (info && info.globalAttrs === false ? localAttrs : localAttrs.length ? localAttrs.concat(schema.globalAttrNames) : schema.globalAttrNames).map((attrName) => ({
|
|
2019
|
-
label: attrName,
|
|
2020
|
-
type: "property"
|
|
2021
|
-
})),
|
|
2022
|
-
validFor: identifier
|
|
2023
|
-
};
|
|
2024
|
-
}
|
|
2025
|
-
function completeAttrValue(state, schema, tree, from, to) {
|
|
2026
|
-
var _a;
|
|
2027
|
-
let nameNode = (_a = tree.parent) === null || _a === void 0 ? void 0 : _a.getChild("AttributeName");
|
|
2028
|
-
let options = [], token = void 0;
|
|
2029
|
-
if (nameNode) {
|
|
2030
|
-
let attrName = state.sliceDoc(nameNode.from, nameNode.to);
|
|
2031
|
-
let attrs = schema.globalAttrs[attrName];
|
|
2032
|
-
if (!attrs) {
|
|
2033
|
-
let elt = findParentElement(tree), info = elt ? schema.tags[elementName(state.doc, elt)] : null;
|
|
2034
|
-
attrs = (info === null || info === void 0 ? void 0 : info.attrs) && info.attrs[attrName];
|
|
2035
|
-
}
|
|
2036
|
-
if (attrs) {
|
|
2037
|
-
let base = state.sliceDoc(from, to).toLowerCase(), quoteStart = "\"", quoteEnd = "\"";
|
|
2038
|
-
if (/^['"]/.test(base)) {
|
|
2039
|
-
token = base[0] == "\"" ? /^[^"]*$/ : /^[^']*$/;
|
|
2040
|
-
quoteStart = "";
|
|
2041
|
-
quoteEnd = state.sliceDoc(to, to + 1) == base[0] ? "" : base[0];
|
|
2042
|
-
base = base.slice(1);
|
|
2043
|
-
from++;
|
|
2044
|
-
} else token = /^[^\s<>='"]*$/;
|
|
2045
|
-
for (let value of attrs) options.push({
|
|
2046
|
-
label: value,
|
|
2047
|
-
apply: quoteStart + value + quoteEnd,
|
|
2048
|
-
type: "constant"
|
|
2049
|
-
});
|
|
2050
|
-
}
|
|
2051
|
-
}
|
|
2052
|
-
return {
|
|
2053
|
-
from,
|
|
2054
|
-
to,
|
|
2055
|
-
options,
|
|
2056
|
-
validFor: token
|
|
2057
|
-
};
|
|
2058
|
-
}
|
|
2059
|
-
function htmlCompletionFor(schema, context) {
|
|
2060
|
-
let { state, pos } = context, tree = syntaxTree(state).resolveInner(pos, -1), around = tree.resolve(pos);
|
|
2061
|
-
for (let scan = pos, before; around == tree && (before = tree.childBefore(scan));) {
|
|
2062
|
-
let last = before.lastChild;
|
|
2063
|
-
if (!last || !last.type.isError || last.from < last.to) break;
|
|
2064
|
-
around = tree = before;
|
|
2065
|
-
scan = last.from;
|
|
2066
|
-
}
|
|
2067
|
-
if (tree.name == "TagName") return tree.parent && /CloseTag$/.test(tree.parent.name) ? completeCloseTag(state, tree, tree.from, pos) : completeTag(state, schema, tree, tree.from, pos);
|
|
2068
|
-
else if (tree.name == "StartTag" || tree.name == "IncompleteTag") return completeTag(state, schema, tree, pos, pos);
|
|
2069
|
-
else if (tree.name == "StartCloseTag" || tree.name == "IncompleteCloseTag") return completeCloseTag(state, tree, pos, pos);
|
|
2070
|
-
else if (tree.name == "OpenTag" || tree.name == "SelfClosingTag" || tree.name == "AttributeName") return completeAttrName(state, schema, tree, tree.name == "AttributeName" ? tree.from : pos, pos);
|
|
2071
|
-
else if (tree.name == "Is" || tree.name == "AttributeValue" || tree.name == "UnquotedAttributeValue") return completeAttrValue(state, schema, tree, tree.name == "Is" ? pos : tree.from, pos);
|
|
2072
|
-
else if (context.explicit && (around.name == "Element" || around.name == "Text" || around.name == "Document")) return completeStartTag(state, schema, tree, pos);
|
|
2073
|
-
else return null;
|
|
2074
|
-
}
|
|
2075
|
-
/**
|
|
2076
|
-
Create a completion source for HTML extended with additional tags
|
|
2077
|
-
or attributes.
|
|
2078
|
-
*/
|
|
2079
|
-
function htmlCompletionSourceWith(config) {
|
|
2080
|
-
let { extraTags, extraGlobalAttributes: extraAttrs } = config;
|
|
2081
|
-
let schema = extraAttrs || extraTags ? new Schema(extraTags, extraAttrs) : Schema.default;
|
|
2082
|
-
return (context) => htmlCompletionFor(schema, context);
|
|
2083
|
-
}
|
|
2084
|
-
var jsonParser = /*@__PURE__*/ javascriptLanguage.parser.configure({ top: "SingleExpression" });
|
|
2085
|
-
var defaultNesting = [
|
|
2086
|
-
{
|
|
2087
|
-
tag: "script",
|
|
2088
|
-
attrs: (attrs) => attrs.type == "text/typescript" || attrs.lang == "ts",
|
|
2089
|
-
parser: typescriptLanguage.parser
|
|
2090
|
-
},
|
|
2091
|
-
{
|
|
2092
|
-
tag: "script",
|
|
2093
|
-
attrs: (attrs) => attrs.type == "text/babel" || attrs.type == "text/jsx",
|
|
2094
|
-
parser: jsxLanguage.parser
|
|
2095
|
-
},
|
|
2096
|
-
{
|
|
2097
|
-
tag: "script",
|
|
2098
|
-
attrs: (attrs) => attrs.type == "text/typescript-jsx",
|
|
2099
|
-
parser: tsxLanguage.parser
|
|
2100
|
-
},
|
|
2101
|
-
{
|
|
2102
|
-
tag: "script",
|
|
2103
|
-
attrs(attrs) {
|
|
2104
|
-
return /^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(attrs.type);
|
|
2105
|
-
},
|
|
2106
|
-
parser: jsonParser
|
|
2107
|
-
},
|
|
2108
|
-
{
|
|
2109
|
-
tag: "script",
|
|
2110
|
-
attrs(attrs) {
|
|
2111
|
-
return !attrs.type || /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(attrs.type);
|
|
2112
|
-
},
|
|
2113
|
-
parser: javascriptLanguage.parser
|
|
2114
|
-
},
|
|
2115
|
-
{
|
|
2116
|
-
tag: "style",
|
|
2117
|
-
attrs(attrs) {
|
|
2118
|
-
return (!attrs.lang || attrs.lang == "css") && (!attrs.type || /^(text\/)?(x-)?(stylesheet|css)$/i.test(attrs.type));
|
|
2119
|
-
},
|
|
2120
|
-
parser: cssLanguage.parser
|
|
2121
|
-
}
|
|
2122
|
-
];
|
|
2123
|
-
var defaultAttrs = /*@__PURE__*/ [{
|
|
2124
|
-
name: "style",
|
|
2125
|
-
parser: /*@__PURE__*/ cssLanguage.parser.configure({ top: "Styles" })
|
|
2126
|
-
}].concat(/*@__PURE__*/ eventAttributes.map((name) => ({
|
|
2127
|
-
name,
|
|
2128
|
-
parser: javascriptLanguage.parser
|
|
2129
|
-
})));
|
|
2130
|
-
var htmlPlain = /*@__PURE__*/ LRLanguage.define({
|
|
2131
|
-
name: "html",
|
|
2132
|
-
parser: /*@__PURE__*/ parser.configure({ props: [
|
|
2133
|
-
/*@__PURE__*/ indentNodeProp.add({
|
|
2134
|
-
Element(context) {
|
|
2135
|
-
let after = /^(\s*)(<\/)?/.exec(context.textAfter);
|
|
2136
|
-
if (context.node.to <= context.pos + after[0].length) return context.continue();
|
|
2137
|
-
return context.lineIndent(context.node.from) + (after[2] ? 0 : context.unit);
|
|
2138
|
-
},
|
|
2139
|
-
"OpenTag CloseTag SelfClosingTag"(context) {
|
|
2140
|
-
return context.column(context.node.from) + context.unit;
|
|
2141
|
-
},
|
|
2142
|
-
Document(context) {
|
|
2143
|
-
if (context.pos + /\s*/.exec(context.textAfter)[0].length < context.node.to) return context.continue();
|
|
2144
|
-
let endElt = null, close;
|
|
2145
|
-
for (let cur = context.node;;) {
|
|
2146
|
-
let last = cur.lastChild;
|
|
2147
|
-
if (!last || last.name != "Element" || last.to != cur.to) break;
|
|
2148
|
-
endElt = cur = last;
|
|
2149
|
-
}
|
|
2150
|
-
if (endElt && !((close = endElt.lastChild) && (close.name == "CloseTag" || close.name == "SelfClosingTag"))) return context.lineIndent(endElt.from) + context.unit;
|
|
2151
|
-
return null;
|
|
2152
|
-
}
|
|
2153
|
-
}),
|
|
2154
|
-
/*@__PURE__*/ foldNodeProp.add({ Element(node) {
|
|
2155
|
-
let first = node.firstChild, last = node.lastChild;
|
|
2156
|
-
if (!first || first.name != "OpenTag") return null;
|
|
2157
|
-
return {
|
|
2158
|
-
from: first.to,
|
|
2159
|
-
to: last.name == "CloseTag" ? last.from : node.to
|
|
2160
|
-
};
|
|
2161
|
-
} }),
|
|
2162
|
-
/*@__PURE__*/ bracketMatchingHandle.add({ "OpenTag CloseTag": (node) => node.getChild("TagName") })
|
|
2163
|
-
] }),
|
|
2164
|
-
languageData: {
|
|
2165
|
-
commentTokens: { block: {
|
|
2166
|
-
open: "<!--",
|
|
2167
|
-
close: "-->"
|
|
2168
|
-
} },
|
|
2169
|
-
indentOnInput: /^\s*<\/\w+\W$/,
|
|
2170
|
-
wordChars: "-_"
|
|
2171
|
-
}
|
|
2172
|
-
});
|
|
2173
|
-
/**
|
|
2174
|
-
A language provider based on the [Lezer HTML
|
|
2175
|
-
parser](https://github.com/lezer-parser/html), extended with the
|
|
2176
|
-
JavaScript and CSS parsers to parse the content of `<script>` and
|
|
2177
|
-
`<style>` tags.
|
|
2178
|
-
*/
|
|
2179
|
-
var htmlLanguage = /*@__PURE__*/ htmlPlain.configure({ wrap: /*@__PURE__*/ configureNesting(defaultNesting, defaultAttrs) });
|
|
2180
|
-
/**
|
|
2181
|
-
Language support for HTML, including
|
|
2182
|
-
[`htmlCompletion`](https://codemirror.net/6/docs/ref/#lang-html.htmlCompletion) and JavaScript and
|
|
2183
|
-
CSS support extensions.
|
|
2184
|
-
*/
|
|
2185
|
-
function html(config = {}) {
|
|
2186
|
-
let dialect = "", wrap;
|
|
2187
|
-
if (config.matchClosingTags === false) dialect = "noMatch";
|
|
2188
|
-
if (config.selfClosingTags === true) dialect = (dialect ? dialect + " " : "") + "selfClosing";
|
|
2189
|
-
if (config.nestedLanguages && config.nestedLanguages.length || config.nestedAttributes && config.nestedAttributes.length) wrap = configureNesting((config.nestedLanguages || []).concat(defaultNesting), (config.nestedAttributes || []).concat(defaultAttrs));
|
|
2190
|
-
return new LanguageSupport(wrap ? htmlPlain.configure({
|
|
2191
|
-
wrap,
|
|
2192
|
-
dialect
|
|
2193
|
-
}) : dialect ? htmlLanguage.configure({ dialect }) : htmlLanguage, [
|
|
2194
|
-
htmlLanguage.data.of({ autocomplete: htmlCompletionSourceWith(config) }),
|
|
2195
|
-
config.autoCloseTags !== false ? autoCloseTags : [],
|
|
2196
|
-
javascript().support,
|
|
2197
|
-
css().support
|
|
2198
|
-
]);
|
|
2199
|
-
}
|
|
2200
|
-
var selfClosers = /*@__PURE__*/ new Set(/*@__PURE__*/ "area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" "));
|
|
2201
|
-
/**
|
|
2202
|
-
Extension that will automatically insert close tags when a `>` or
|
|
2203
|
-
`/` is typed.
|
|
2204
|
-
*/
|
|
2205
|
-
var autoCloseTags = /*@__PURE__*/ EditorView.inputHandler.of((view, from, to, text, insertTransaction) => {
|
|
2206
|
-
if (view.composing || view.state.readOnly || from != to || text != ">" && text != "/" || !htmlLanguage.isActiveAt(view.state, from, -1)) return false;
|
|
2207
|
-
let base = insertTransaction(), { state } = base;
|
|
2208
|
-
let closeTags = state.changeByRange((range) => {
|
|
2209
|
-
var _a, _b, _c;
|
|
2210
|
-
let didType = state.doc.sliceString(range.from - 1, range.to) == text;
|
|
2211
|
-
let { head } = range, after = syntaxTree(state).resolveInner(head, -1), name;
|
|
2212
|
-
if (didType && text == ">" && after.name == "EndTag") {
|
|
2213
|
-
let tag = after.parent;
|
|
2214
|
-
if (((_b = (_a = tag.parent) === null || _a === void 0 ? void 0 : _a.lastChild) === null || _b === void 0 ? void 0 : _b.name) != "CloseTag" && (name = elementName(state.doc, tag.parent, head)) && !selfClosers.has(name)) return {
|
|
2215
|
-
range,
|
|
2216
|
-
changes: {
|
|
2217
|
-
from: head,
|
|
2218
|
-
to: head + (state.doc.sliceString(head, head + 1) === ">" ? 1 : 0),
|
|
2219
|
-
insert: `</${name}>`
|
|
2220
|
-
}
|
|
2221
|
-
};
|
|
2222
|
-
} else if (didType && text == "/" && after.name == "IncompleteCloseTag") {
|
|
2223
|
-
let tag = after.parent;
|
|
2224
|
-
if (after.from == head - 2 && ((_c = tag.lastChild) === null || _c === void 0 ? void 0 : _c.name) != "CloseTag" && (name = elementName(state.doc, tag, head)) && !selfClosers.has(name)) {
|
|
2225
|
-
let to = head + (state.doc.sliceString(head, head + 1) === ">" ? 1 : 0);
|
|
2226
|
-
let insert = `${name}>`;
|
|
2227
|
-
return {
|
|
2228
|
-
range: EditorSelection.cursor(head + insert.length, -1),
|
|
2229
|
-
changes: {
|
|
2230
|
-
from: head,
|
|
2231
|
-
to,
|
|
2232
|
-
insert
|
|
2233
|
-
}
|
|
2234
|
-
};
|
|
2235
|
-
}
|
|
2236
|
-
}
|
|
2237
|
-
return { range };
|
|
2238
|
-
});
|
|
2239
|
-
if (closeTags.changes.empty) return false;
|
|
2240
|
-
view.dispatch([base, state.update(closeTags, {
|
|
2241
|
-
userEvent: "input.complete",
|
|
2242
|
-
scrollIntoView: true
|
|
2243
|
-
})]);
|
|
2244
|
-
return true;
|
|
2245
|
-
});
|
|
2246
|
-
//#endregion
|
|
2247
|
-
export { javascript as n, html as t };
|