ghost 5.63.0 → 5.65.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/tryghost-adapter-cache-memory-ttl-5.65.0.tgz +0 -0
- package/components/{tryghost-adapter-cache-redis-5.63.0.tgz → tryghost-adapter-cache-redis-5.65.0.tgz} +0 -0
- package/components/{tryghost-adapter-manager-5.63.0.tgz → tryghost-adapter-manager-5.65.0.tgz} +0 -0
- package/components/{tryghost-announcement-bar-settings-5.63.0.tgz → tryghost-announcement-bar-settings-5.65.0.tgz} +0 -0
- package/components/tryghost-api-framework-5.65.0.tgz +0 -0
- package/components/{tryghost-api-version-compatibility-service-5.63.0.tgz → tryghost-api-version-compatibility-service-5.65.0.tgz} +0 -0
- package/components/{tryghost-audience-feedback-5.63.0.tgz → tryghost-audience-feedback-5.65.0.tgz} +0 -0
- package/components/tryghost-bookshelf-repository-5.65.0.tgz +0 -0
- package/components/tryghost-bootstrap-socket-5.65.0.tgz +0 -0
- package/components/tryghost-collections-5.65.0.tgz +0 -0
- package/components/{tryghost-constants-5.63.0.tgz → tryghost-constants-5.65.0.tgz} +0 -0
- package/components/tryghost-custom-theme-settings-service-5.65.0.tgz +0 -0
- package/components/{tryghost-data-generator-5.63.0.tgz → tryghost-data-generator-5.65.0.tgz} +0 -0
- package/components/{tryghost-domain-events-5.63.0.tgz → tryghost-domain-events-5.65.0.tgz} +0 -0
- package/components/{tryghost-donations-5.63.0.tgz → tryghost-donations-5.65.0.tgz} +0 -0
- package/components/tryghost-dynamic-routing-events-5.65.0.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.65.0.tgz +0 -0
- package/components/{tryghost-email-analytics-service-5.63.0.tgz → tryghost-email-analytics-service-5.65.0.tgz} +0 -0
- package/components/{tryghost-email-content-generator-5.63.0.tgz → tryghost-email-content-generator-5.65.0.tgz} +0 -0
- package/components/tryghost-email-events-5.65.0.tgz +0 -0
- package/components/{tryghost-email-service-5.63.0.tgz → tryghost-email-service-5.65.0.tgz} +0 -0
- package/components/tryghost-email-suppression-list-5.65.0.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.65.0.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.65.0.tgz +0 -0
- package/components/{tryghost-external-media-inliner-5.63.0.tgz → tryghost-external-media-inliner-5.65.0.tgz} +0 -0
- package/components/{tryghost-extract-api-key-5.63.0.tgz → tryghost-extract-api-key-5.65.0.tgz} +0 -0
- package/components/{tryghost-html-to-plaintext-5.63.0.tgz → tryghost-html-to-plaintext-5.65.0.tgz} +0 -0
- package/components/tryghost-i18n-5.65.0.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.65.0.tgz +0 -0
- package/components/{tryghost-importer-revue-5.63.0.tgz → tryghost-importer-revue-5.65.0.tgz} +0 -0
- package/components/tryghost-in-memory-repository-5.65.0.tgz +0 -0
- package/components/{tryghost-job-manager-5.63.0.tgz → tryghost-job-manager-5.65.0.tgz} +0 -0
- package/components/{tryghost-link-redirects-5.63.0.tgz → tryghost-link-redirects-5.65.0.tgz} +0 -0
- package/components/{tryghost-link-replacer-5.63.0.tgz → tryghost-link-replacer-5.65.0.tgz} +0 -0
- package/components/{tryghost-link-tracking-5.63.0.tgz → tryghost-link-tracking-5.65.0.tgz} +0 -0
- package/components/{tryghost-magic-link-5.63.0.tgz → tryghost-magic-link-5.65.0.tgz} +0 -0
- package/components/tryghost-mail-events-5.65.0.tgz +0 -0
- package/components/{tryghost-mailgun-client-5.63.0.tgz → tryghost-mailgun-client-5.65.0.tgz} +0 -0
- package/components/{tryghost-member-attribution-5.63.0.tgz → tryghost-member-attribution-5.65.0.tgz} +0 -0
- package/components/{tryghost-member-events-5.63.0.tgz → tryghost-member-events-5.65.0.tgz} +0 -0
- package/components/tryghost-members-api-5.65.0.tgz +0 -0
- package/components/{tryghost-members-csv-5.63.0.tgz → tryghost-members-csv-5.65.0.tgz} +0 -0
- package/components/{tryghost-members-events-service-5.63.0.tgz → tryghost-members-events-service-5.65.0.tgz} +0 -0
- package/components/{tryghost-members-importer-5.63.0.tgz → tryghost-members-importer-5.65.0.tgz} +0 -0
- package/components/{tryghost-members-offers-5.63.0.tgz → tryghost-members-offers-5.65.0.tgz} +0 -0
- package/components/{tryghost-members-payments-5.63.0.tgz → tryghost-members-payments-5.65.0.tgz} +0 -0
- package/components/tryghost-members-ssr-5.65.0.tgz +0 -0
- package/components/{tryghost-members-stripe-service-5.63.0.tgz → tryghost-members-stripe-service-5.65.0.tgz} +0 -0
- package/components/tryghost-mentions-email-report-5.65.0.tgz +0 -0
- package/components/tryghost-milestones-5.65.0.tgz +0 -0
- package/components/tryghost-minifier-5.65.0.tgz +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.65.0.tgz +0 -0
- package/components/{tryghost-mw-api-version-mismatch-5.63.0.tgz → tryghost-mw-api-version-mismatch-5.65.0.tgz} +0 -0
- package/components/tryghost-mw-cache-control-5.65.0.tgz +0 -0
- package/components/{tryghost-mw-error-handler-5.63.0.tgz → tryghost-mw-error-handler-5.65.0.tgz} +0 -0
- package/components/{tryghost-mw-session-from-token-5.63.0.tgz → tryghost-mw-session-from-token-5.65.0.tgz} +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.65.0.tgz +0 -0
- package/components/tryghost-mw-version-match-5.65.0.tgz +0 -0
- package/components/tryghost-mw-vhost-5.65.0.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.65.0.tgz +0 -0
- package/components/tryghost-oembed-service-5.65.0.tgz +0 -0
- package/components/{tryghost-package-json-5.63.0.tgz → tryghost-package-json-5.65.0.tgz} +0 -0
- package/components/{tryghost-post-events-5.63.0.tgz → tryghost-post-events-5.65.0.tgz} +0 -0
- package/components/{tryghost-post-revisions-5.63.0.tgz → tryghost-post-revisions-5.65.0.tgz} +0 -0
- package/components/tryghost-posts-service-5.65.0.tgz +0 -0
- package/components/tryghost-recommendations-5.65.0.tgz +0 -0
- package/components/tryghost-referrers-5.65.0.tgz +0 -0
- package/components/tryghost-security-5.65.0.tgz +0 -0
- package/components/tryghost-session-service-5.65.0.tgz +0 -0
- package/components/tryghost-settings-path-manager-5.65.0.tgz +0 -0
- package/components/tryghost-slack-notifications-5.65.0.tgz +0 -0
- package/components/{tryghost-staff-service-5.63.0.tgz → tryghost-staff-service-5.65.0.tgz} +0 -0
- package/components/{tryghost-stats-service-5.63.0.tgz → tryghost-stats-service-5.65.0.tgz} +0 -0
- package/components/{tryghost-tiers-5.63.0.tgz → tryghost-tiers-5.65.0.tgz} +0 -0
- package/components/{tryghost-update-check-service-5.63.0.tgz → tryghost-update-check-service-5.65.0.tgz} +0 -0
- package/components/tryghost-verification-trigger-5.65.0.tgz +0 -0
- package/components/{tryghost-version-notifications-data-service-5.63.0.tgz → tryghost-version-notifications-data-service-5.65.0.tgz} +0 -0
- package/components/tryghost-webmentions-5.65.0.tgz +0 -0
- package/core/built/admin/assets/admin-x-settings/CodeEditorView-2b332315.mjs +2347 -0
- package/core/built/admin/assets/admin-x-settings/admin-x-settings.js +6 -0
- package/core/built/admin/assets/admin-x-settings/index-4a560e9e.mjs +19693 -0
- package/core/built/admin/assets/admin-x-settings/index-9cc1df42.mjs +13955 -0
- package/core/built/admin/assets/admin-x-settings/index-b8cc4f2e.mjs +3465 -0
- package/core/built/admin/assets/admin-x-settings/limit-service-7694c0d4.mjs +12902 -0
- package/core/built/admin/assets/admin-x-settings/modals-2073207d.mjs +11518 -0
- package/core/built/admin/assets/{chunk.143.1c5d21facf1f9b9beef9.js → chunk.143.c91dc1d2a8a5a1f318ec.js} +5 -5
- package/core/built/admin/assets/{chunk.178.43b03c9ac011a54262b0.js → chunk.178.d921de78463d288f3bcd.js} +4 -4
- package/core/built/admin/assets/{chunk.237.9b7032162949850f6c76.js → chunk.518.396deed1a0c759d1f403.js} +1136 -1077
- package/core/built/admin/assets/{ghost-7c3f2de2ec83e591ad9f9db5165b2733.js → ghost-38746349a72536a92f4d8235a582d716.js} +58 -57
- package/core/built/admin/assets/ghost-761b67711827277b7095ebc7acc5c49f.css +1 -0
- package/core/built/admin/assets/ghost-dark-d3f636c30e80bdd7f21d3fb4770073c9.css +1 -0
- package/core/built/admin/assets/{vendor-f8ce8bd43cf5dad6608f828ab48cee9b.js → vendor-240cd1dbd84a2e07709b867442c41840.js} +4 -4
- package/core/built/admin/index.html +6 -6
- package/core/frontend/src/cards/css/collection.css +42 -12
- package/core/server/api/endpoints/collections.js +5 -1
- package/core/server/api/endpoints/posts-public.js +63 -0
- package/core/server/api/endpoints/recommendations-public.js +1 -1
- package/core/server/api/endpoints/recommendations.js +20 -5
- package/core/server/api/endpoints/utils/serializers/output/config.js +0 -1
- package/core/server/api/endpoints/utils/serializers/output/site.js +1 -1
- package/core/server/data/migrations/versions/5.64/2023-09-19-04-25-40-truncate-stale-built-in-collections-posts.js +10 -0
- package/core/server/data/migrations/versions/5.64/2023-09-19-04-34-10-repopulate-built-in-collection-posts.js +10 -0
- package/core/server/data/migrations/versions/5.65/2023-09-22-06-42-15-truncate-stale-built-in-collections-posts.js +12 -0
- package/core/server/data/migrations/versions/5.65/2023-09-22-06-42-55-repopulate-built-in-featured-collection-posts.js +49 -0
- package/core/server/data/schema/fixtures/fixtures.json +0 -14
- package/core/server/lib/lexical.js +22 -3
- package/core/server/lib/request-external.js +10 -4
- package/core/server/models/post.js +71 -1
- package/core/server/models/relations/authors.js +1 -1
- package/core/server/services/collections/BookshelfCollectionsRepository.js +85 -38
- package/core/server/services/collections/PostsRepository.js +5 -0
- package/core/server/services/collections/service.js +7 -3
- package/core/server/services/members/content-gating.js +11 -7
- package/core/server/services/mentions/WebmentionMetadata.js +14 -2
- package/core/server/services/public-config/site.js +1 -1
- package/core/server/services/recommendations/RecommendationServiceWrapper.js +3 -2
- package/core/server/web/api/endpoints/admin/routes.js +2 -1
- package/core/shared/config/defaults.json +0 -4
- package/core/shared/labs.js +1 -1
- package/package.json +160 -159
- package/yarn.lock +361 -364
- package/components/tryghost-adapter-cache-memory-ttl-5.63.0.tgz +0 -0
- package/components/tryghost-api-framework-5.63.0.tgz +0 -0
- package/components/tryghost-bookshelf-repository-5.63.0.tgz +0 -0
- package/components/tryghost-bootstrap-socket-5.63.0.tgz +0 -0
- package/components/tryghost-collections-5.63.0.tgz +0 -0
- package/components/tryghost-custom-theme-settings-service-5.63.0.tgz +0 -0
- package/components/tryghost-dynamic-routing-events-5.63.0.tgz +0 -0
- package/components/tryghost-email-analytics-provider-mailgun-5.63.0.tgz +0 -0
- package/components/tryghost-email-events-5.63.0.tgz +0 -0
- package/components/tryghost-email-suppression-list-5.63.0.tgz +0 -0
- package/components/tryghost-event-aware-cache-wrapper-5.63.0.tgz +0 -0
- package/components/tryghost-express-dynamic-redirects-5.63.0.tgz +0 -0
- package/components/tryghost-i18n-5.63.0.tgz +0 -0
- package/components/tryghost-importer-handler-content-files-5.63.0.tgz +0 -0
- package/components/tryghost-in-memory-repository-5.63.0.tgz +0 -0
- package/components/tryghost-mail-events-5.63.0.tgz +0 -0
- package/components/tryghost-members-api-5.63.0.tgz +0 -0
- package/components/tryghost-members-ssr-5.63.0.tgz +0 -0
- package/components/tryghost-mentions-email-report-5.63.0.tgz +0 -0
- package/components/tryghost-milestones-5.63.0.tgz +0 -0
- package/components/tryghost-minifier-5.63.0.tgz +0 -0
- package/components/tryghost-model-to-domain-event-interceptor-5.63.0.tgz +0 -0
- package/components/tryghost-mw-cache-control-5.63.0.tgz +0 -0
- package/components/tryghost-mw-update-user-last-seen-5.63.0.tgz +0 -0
- package/components/tryghost-mw-version-match-5.63.0.tgz +0 -0
- package/components/tryghost-mw-vhost-5.63.0.tgz +0 -0
- package/components/tryghost-nql-filter-expansions-5.63.0.tgz +0 -0
- package/components/tryghost-oembed-service-5.63.0.tgz +0 -0
- package/components/tryghost-posts-service-5.63.0.tgz +0 -0
- package/components/tryghost-recommendations-5.63.0.tgz +0 -0
- package/components/tryghost-referrers-5.63.0.tgz +0 -0
- package/components/tryghost-security-5.63.0.tgz +0 -0
- package/components/tryghost-session-service-5.63.0.tgz +0 -0
- package/components/tryghost-settings-path-manager-5.63.0.tgz +0 -0
- package/components/tryghost-slack-notifications-5.63.0.tgz +0 -0
- package/components/tryghost-verification-trigger-5.63.0.tgz +0 -0
- package/components/tryghost-webmentions-5.63.0.tgz +0 -0
- package/core/built/admin/assets/ghost-33664cad4cd6664a8b5fa56e62c5005f.css +0 -1
- package/core/built/admin/assets/ghost-dark-0452daeaee3a9b16dcd954ea60dad518.css +0 -1
- /package/core/built/admin/assets/{chunk.237.9b7032162949850f6c76.js.LICENSE.txt → chunk.518.396deed1a0c759d1f403.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1,3465 @@
|
|
|
1
|
+
import { P as Ye, N as Te, a as Ue, D as Ve, b as sO, T as W, I as lO, s as nO, t as o, p as Re, L as oO, i as QO, c as q, f as cO, d as DO, e as uO, g as _, h as JO, j as ve, k as _e, l as MO, m as We, n as qe, E as LO, o as C, q as Ce, r as g, u as je } from "./index-9cc1df42.mjs";
|
|
2
|
+
class I {
|
|
3
|
+
/// @internal
|
|
4
|
+
constructor(O, t, a, i, s, r, l, n, Q, h = 0, c) {
|
|
5
|
+
this.p = O, this.stack = t, this.state = a, this.reducePos = i, this.pos = s, this.score = r, this.buffer = l, this.bufferBase = n, this.curContext = Q, this.lookAhead = h, this.parent = c;
|
|
6
|
+
}
|
|
7
|
+
/// @internal
|
|
8
|
+
toString() {
|
|
9
|
+
return `[${this.stack.filter((O, t) => t % 3 == 0).concat(this.state)}]@${this.pos}${this.score ? "!" + this.score : ""}`;
|
|
10
|
+
}
|
|
11
|
+
// Start an empty stack
|
|
12
|
+
/// @internal
|
|
13
|
+
static start(O, t, a = 0) {
|
|
14
|
+
let i = O.parser.context;
|
|
15
|
+
return new I(O, [], t, a, a, 0, [], 0, i ? new SO(i, i.start) : null, 0, null);
|
|
16
|
+
}
|
|
17
|
+
/// The stack's current [context](#lr.ContextTracker) value, if
|
|
18
|
+
/// any. Its type will depend on the context tracker's type
|
|
19
|
+
/// parameter, or it will be `null` if there is no context
|
|
20
|
+
/// tracker.
|
|
21
|
+
get context() {
|
|
22
|
+
return this.curContext ? this.curContext.context : null;
|
|
23
|
+
}
|
|
24
|
+
// Push a state onto the stack, tracking its start position as well
|
|
25
|
+
// as the buffer base at that point.
|
|
26
|
+
/// @internal
|
|
27
|
+
pushState(O, t) {
|
|
28
|
+
this.stack.push(this.state, t, this.bufferBase + this.buffer.length), this.state = O;
|
|
29
|
+
}
|
|
30
|
+
// Apply a reduce action
|
|
31
|
+
/// @internal
|
|
32
|
+
reduce(O) {
|
|
33
|
+
var t;
|
|
34
|
+
let a = O >> 19, i = O & 65535, { parser: s } = this.p, r = s.dynamicPrecedence(i);
|
|
35
|
+
if (r && (this.score += r), a == 0) {
|
|
36
|
+
this.pushState(s.getGoto(this.state, i, !0), this.reducePos), i < s.minRepeatTerm && this.storeNode(i, this.reducePos, this.reducePos, 4, !0), this.reduceContext(i, this.reducePos);
|
|
37
|
+
return;
|
|
38
|
+
}
|
|
39
|
+
let l = this.stack.length - (a - 1) * 3 - (O & 262144 ? 6 : 0), n = l ? this.stack[l - 2] : this.p.ranges[0].from, Q = this.reducePos - n;
|
|
40
|
+
Q >= 2e3 && !(!((t = this.p.parser.nodeSet.types[i]) === null || t === void 0) && t.isAnonymous) && (n == this.p.lastBigReductionStart ? (this.p.bigReductionCount++, this.p.lastBigReductionSize = Q) : this.p.lastBigReductionSize < Q && (this.p.bigReductionCount = 1, this.p.lastBigReductionStart = n, this.p.lastBigReductionSize = Q));
|
|
41
|
+
let h = l ? this.stack[l - 1] : 0, c = this.bufferBase + this.buffer.length - h;
|
|
42
|
+
if (i < s.minRepeatTerm || O & 131072) {
|
|
43
|
+
let $ = s.stateFlag(
|
|
44
|
+
this.state,
|
|
45
|
+
1
|
|
46
|
+
/* StateFlag.Skipped */
|
|
47
|
+
) ? this.pos : this.reducePos;
|
|
48
|
+
this.storeNode(i, n, $, c + 4, !0);
|
|
49
|
+
}
|
|
50
|
+
if (O & 262144)
|
|
51
|
+
this.state = this.stack[l];
|
|
52
|
+
else {
|
|
53
|
+
let $ = this.stack[l - 3];
|
|
54
|
+
this.state = s.getGoto($, i, !0);
|
|
55
|
+
}
|
|
56
|
+
for (; this.stack.length > l; )
|
|
57
|
+
this.stack.pop();
|
|
58
|
+
this.reduceContext(i, n);
|
|
59
|
+
}
|
|
60
|
+
// Shift a value into the buffer
|
|
61
|
+
/// @internal
|
|
62
|
+
storeNode(O, t, a, i = 4, s = !1) {
|
|
63
|
+
if (O == 0 && (!this.stack.length || this.stack[this.stack.length - 1] < this.buffer.length + this.bufferBase)) {
|
|
64
|
+
let r = this, l = this.buffer.length;
|
|
65
|
+
if (l == 0 && r.parent && (l = r.bufferBase - r.parent.bufferBase, r = r.parent), l > 0 && r.buffer[l - 4] == 0 && r.buffer[l - 1] > -1) {
|
|
66
|
+
if (t == a)
|
|
67
|
+
return;
|
|
68
|
+
if (r.buffer[l - 2] >= t) {
|
|
69
|
+
r.buffer[l - 2] = a;
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
if (!s || this.pos == a)
|
|
75
|
+
this.buffer.push(O, t, a, i);
|
|
76
|
+
else {
|
|
77
|
+
let r = this.buffer.length;
|
|
78
|
+
if (r > 0 && this.buffer[r - 4] != 0)
|
|
79
|
+
for (; r > 0 && this.buffer[r - 2] > a; )
|
|
80
|
+
this.buffer[r] = this.buffer[r - 4], this.buffer[r + 1] = this.buffer[r - 3], this.buffer[r + 2] = this.buffer[r - 2], this.buffer[r + 3] = this.buffer[r - 1], r -= 4, i > 4 && (i -= 4);
|
|
81
|
+
this.buffer[r] = O, this.buffer[r + 1] = t, this.buffer[r + 2] = a, this.buffer[r + 3] = i;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
// Apply a shift action
|
|
85
|
+
/// @internal
|
|
86
|
+
shift(O, t, a) {
|
|
87
|
+
let i = this.pos;
|
|
88
|
+
if (O & 131072)
|
|
89
|
+
this.pushState(O & 65535, this.pos);
|
|
90
|
+
else if (O & 262144)
|
|
91
|
+
this.pos = a, this.shiftContext(t, i), t <= this.p.parser.maxNode && this.buffer.push(t, i, a, 4);
|
|
92
|
+
else {
|
|
93
|
+
let s = O, { parser: r } = this.p;
|
|
94
|
+
(a > this.pos || t <= r.maxNode) && (this.pos = a, r.stateFlag(
|
|
95
|
+
s,
|
|
96
|
+
1
|
|
97
|
+
/* StateFlag.Skipped */
|
|
98
|
+
) || (this.reducePos = a)), this.pushState(s, i), this.shiftContext(t, i), t <= r.maxNode && this.buffer.push(t, i, a, 4);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
// Apply an action
|
|
102
|
+
/// @internal
|
|
103
|
+
apply(O, t, a) {
|
|
104
|
+
O & 65536 ? this.reduce(O) : this.shift(O, t, a);
|
|
105
|
+
}
|
|
106
|
+
// Add a prebuilt (reused) node into the buffer.
|
|
107
|
+
/// @internal
|
|
108
|
+
useNode(O, t) {
|
|
109
|
+
let a = this.p.reused.length - 1;
|
|
110
|
+
(a < 0 || this.p.reused[a] != O) && (this.p.reused.push(O), a++);
|
|
111
|
+
let i = this.pos;
|
|
112
|
+
this.reducePos = this.pos = i + O.length, this.pushState(t, i), this.buffer.push(
|
|
113
|
+
a,
|
|
114
|
+
i,
|
|
115
|
+
this.reducePos,
|
|
116
|
+
-1
|
|
117
|
+
/* size == -1 means this is a reused value */
|
|
118
|
+
), this.curContext && this.updateContext(this.curContext.tracker.reuse(this.curContext.context, O, this, this.p.stream.reset(this.pos - O.length)));
|
|
119
|
+
}
|
|
120
|
+
// Split the stack. Due to the buffer sharing and the fact
|
|
121
|
+
// that `this.stack` tends to stay quite shallow, this isn't very
|
|
122
|
+
// expensive.
|
|
123
|
+
/// @internal
|
|
124
|
+
split() {
|
|
125
|
+
let O = this, t = O.buffer.length;
|
|
126
|
+
for (; t > 0 && O.buffer[t - 2] > O.reducePos; )
|
|
127
|
+
t -= 4;
|
|
128
|
+
let a = O.buffer.slice(t), i = O.bufferBase + t;
|
|
129
|
+
for (; O && i == O.bufferBase; )
|
|
130
|
+
O = O.parent;
|
|
131
|
+
return new I(this.p, this.stack.slice(), this.state, this.reducePos, this.pos, this.score, a, i, this.curContext, this.lookAhead, O);
|
|
132
|
+
}
|
|
133
|
+
// Try to recover from an error by 'deleting' (ignoring) one token.
|
|
134
|
+
/// @internal
|
|
135
|
+
recoverByDelete(O, t) {
|
|
136
|
+
let a = O <= this.p.parser.maxNode;
|
|
137
|
+
a && this.storeNode(O, this.pos, t, 4), this.storeNode(0, this.pos, t, a ? 8 : 4), this.pos = this.reducePos = t, this.score -= 190;
|
|
138
|
+
}
|
|
139
|
+
/// Check if the given term would be able to be shifted (optionally
|
|
140
|
+
/// after some reductions) on this stack. This can be useful for
|
|
141
|
+
/// external tokenizers that want to make sure they only provide a
|
|
142
|
+
/// given token when it applies.
|
|
143
|
+
canShift(O) {
|
|
144
|
+
for (let t = new ze(this); ; ) {
|
|
145
|
+
let a = this.p.parser.stateSlot(
|
|
146
|
+
t.state,
|
|
147
|
+
4
|
|
148
|
+
/* ParseState.DefaultReduce */
|
|
149
|
+
) || this.p.parser.hasAction(t.state, O);
|
|
150
|
+
if (a == 0)
|
|
151
|
+
return !1;
|
|
152
|
+
if (!(a & 65536))
|
|
153
|
+
return !0;
|
|
154
|
+
t.reduce(a);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
// Apply up to Recover.MaxNext recovery actions that conceptually
|
|
158
|
+
// inserts some missing token or rule.
|
|
159
|
+
/// @internal
|
|
160
|
+
recoverByInsert(O) {
|
|
161
|
+
if (this.stack.length >= 300)
|
|
162
|
+
return [];
|
|
163
|
+
let t = this.p.parser.nextStates(this.state);
|
|
164
|
+
if (t.length > 8 || this.stack.length >= 120) {
|
|
165
|
+
let i = [];
|
|
166
|
+
for (let s = 0, r; s < t.length; s += 2)
|
|
167
|
+
(r = t[s + 1]) != this.state && this.p.parser.hasAction(r, O) && i.push(t[s], r);
|
|
168
|
+
if (this.stack.length < 120)
|
|
169
|
+
for (let s = 0; i.length < 8 && s < t.length; s += 2) {
|
|
170
|
+
let r = t[s + 1];
|
|
171
|
+
i.some((l, n) => n & 1 && l == r) || i.push(t[s], r);
|
|
172
|
+
}
|
|
173
|
+
t = i;
|
|
174
|
+
}
|
|
175
|
+
let a = [];
|
|
176
|
+
for (let i = 0; i < t.length && a.length < 4; i += 2) {
|
|
177
|
+
let s = t[i + 1];
|
|
178
|
+
if (s == this.state)
|
|
179
|
+
continue;
|
|
180
|
+
let r = this.split();
|
|
181
|
+
r.pushState(s, this.pos), r.storeNode(0, r.pos, r.pos, 4, !0), r.shiftContext(t[i], this.pos), r.score -= 200, a.push(r);
|
|
182
|
+
}
|
|
183
|
+
return a;
|
|
184
|
+
}
|
|
185
|
+
// Force a reduce, if possible. Return false if that can't
|
|
186
|
+
// be done.
|
|
187
|
+
/// @internal
|
|
188
|
+
forceReduce() {
|
|
189
|
+
let { parser: O } = this.p, t = O.stateSlot(
|
|
190
|
+
this.state,
|
|
191
|
+
5
|
|
192
|
+
/* ParseState.ForcedReduce */
|
|
193
|
+
);
|
|
194
|
+
if (!(t & 65536))
|
|
195
|
+
return !1;
|
|
196
|
+
if (!O.validAction(this.state, t)) {
|
|
197
|
+
let a = t >> 19, i = t & 65535, s = this.stack.length - a * 3;
|
|
198
|
+
if (s < 0 || O.getGoto(this.stack[s], i, !1) < 0) {
|
|
199
|
+
let r = this.findForcedReduction();
|
|
200
|
+
if (r == null)
|
|
201
|
+
return !1;
|
|
202
|
+
t = r;
|
|
203
|
+
}
|
|
204
|
+
this.storeNode(0, this.pos, this.pos, 4, !0), this.score -= 100;
|
|
205
|
+
}
|
|
206
|
+
return this.reducePos = this.pos, this.reduce(t), !0;
|
|
207
|
+
}
|
|
208
|
+
/// Try to scan through the automaton to find some kind of reduction
|
|
209
|
+
/// that can be applied. Used when the regular ForcedReduce field
|
|
210
|
+
/// isn't a valid action. @internal
|
|
211
|
+
findForcedReduction() {
|
|
212
|
+
let { parser: O } = this.p, t = [], a = (i, s) => {
|
|
213
|
+
if (!t.includes(i))
|
|
214
|
+
return t.push(i), O.allActions(i, (r) => {
|
|
215
|
+
if (!(r & 393216))
|
|
216
|
+
if (r & 65536) {
|
|
217
|
+
let l = (r >> 19) - s;
|
|
218
|
+
if (l > 1) {
|
|
219
|
+
let n = r & 65535, Q = this.stack.length - l * 3;
|
|
220
|
+
if (Q >= 0 && O.getGoto(this.stack[Q], n, !1) >= 0)
|
|
221
|
+
return l << 19 | 65536 | n;
|
|
222
|
+
}
|
|
223
|
+
} else {
|
|
224
|
+
let l = a(r, s + 1);
|
|
225
|
+
if (l != null)
|
|
226
|
+
return l;
|
|
227
|
+
}
|
|
228
|
+
});
|
|
229
|
+
};
|
|
230
|
+
return a(this.state, 0);
|
|
231
|
+
}
|
|
232
|
+
/// @internal
|
|
233
|
+
forceAll() {
|
|
234
|
+
for (; !this.p.parser.stateFlag(
|
|
235
|
+
this.state,
|
|
236
|
+
2
|
|
237
|
+
/* StateFlag.Accepting */
|
|
238
|
+
); )
|
|
239
|
+
if (!this.forceReduce()) {
|
|
240
|
+
this.storeNode(0, this.pos, this.pos, 4, !0);
|
|
241
|
+
break;
|
|
242
|
+
}
|
|
243
|
+
return this;
|
|
244
|
+
}
|
|
245
|
+
/// Check whether this state has no further actions (assumed to be a direct descendant of the
|
|
246
|
+
/// top state, since any other states must be able to continue
|
|
247
|
+
/// somehow). @internal
|
|
248
|
+
get deadEnd() {
|
|
249
|
+
if (this.stack.length != 3)
|
|
250
|
+
return !1;
|
|
251
|
+
let { parser: O } = this.p;
|
|
252
|
+
return O.data[O.stateSlot(
|
|
253
|
+
this.state,
|
|
254
|
+
1
|
|
255
|
+
/* ParseState.Actions */
|
|
256
|
+
)] == 65535 && !O.stateSlot(
|
|
257
|
+
this.state,
|
|
258
|
+
4
|
|
259
|
+
/* ParseState.DefaultReduce */
|
|
260
|
+
);
|
|
261
|
+
}
|
|
262
|
+
/// Restart the stack (put it back in its start state). Only safe
|
|
263
|
+
/// when this.stack.length == 3 (state is directly below the top
|
|
264
|
+
/// state). @internal
|
|
265
|
+
restart() {
|
|
266
|
+
this.state = this.stack[0], this.stack.length = 0;
|
|
267
|
+
}
|
|
268
|
+
/// @internal
|
|
269
|
+
sameState(O) {
|
|
270
|
+
if (this.state != O.state || this.stack.length != O.stack.length)
|
|
271
|
+
return !1;
|
|
272
|
+
for (let t = 0; t < this.stack.length; t += 3)
|
|
273
|
+
if (this.stack[t] != O.stack[t])
|
|
274
|
+
return !1;
|
|
275
|
+
return !0;
|
|
276
|
+
}
|
|
277
|
+
/// Get the parser used by this stack.
|
|
278
|
+
get parser() {
|
|
279
|
+
return this.p.parser;
|
|
280
|
+
}
|
|
281
|
+
/// Test whether a given dialect (by numeric ID, as exported from
|
|
282
|
+
/// the terms file) is enabled.
|
|
283
|
+
dialectEnabled(O) {
|
|
284
|
+
return this.p.parser.dialect.flags[O];
|
|
285
|
+
}
|
|
286
|
+
shiftContext(O, t) {
|
|
287
|
+
this.curContext && this.updateContext(this.curContext.tracker.shift(this.curContext.context, O, this, this.p.stream.reset(t)));
|
|
288
|
+
}
|
|
289
|
+
reduceContext(O, t) {
|
|
290
|
+
this.curContext && this.updateContext(this.curContext.tracker.reduce(this.curContext.context, O, this, this.p.stream.reset(t)));
|
|
291
|
+
}
|
|
292
|
+
/// @internal
|
|
293
|
+
emitContext() {
|
|
294
|
+
let O = this.buffer.length - 1;
|
|
295
|
+
(O < 0 || this.buffer[O] != -3) && this.buffer.push(this.curContext.hash, this.pos, this.pos, -3);
|
|
296
|
+
}
|
|
297
|
+
/// @internal
|
|
298
|
+
emitLookAhead() {
|
|
299
|
+
let O = this.buffer.length - 1;
|
|
300
|
+
(O < 0 || this.buffer[O] != -4) && this.buffer.push(this.lookAhead, this.pos, this.pos, -4);
|
|
301
|
+
}
|
|
302
|
+
updateContext(O) {
|
|
303
|
+
if (O != this.curContext.context) {
|
|
304
|
+
let t = new SO(this.curContext.tracker, O);
|
|
305
|
+
t.hash != this.curContext.hash && this.emitContext(), this.curContext = t;
|
|
306
|
+
}
|
|
307
|
+
}
|
|
308
|
+
/// @internal
|
|
309
|
+
setLookAhead(O) {
|
|
310
|
+
O > this.lookAhead && (this.emitLookAhead(), this.lookAhead = O);
|
|
311
|
+
}
|
|
312
|
+
/// @internal
|
|
313
|
+
close() {
|
|
314
|
+
this.curContext && this.curContext.tracker.strict && this.emitContext(), this.lookAhead > 0 && this.emitLookAhead();
|
|
315
|
+
}
|
|
316
|
+
}
|
|
317
|
+
class SO {
|
|
318
|
+
constructor(O, t) {
|
|
319
|
+
this.tracker = O, this.context = t, this.hash = O.strict ? O.hash(t) : 0;
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
var dO;
|
|
323
|
+
(function(e) {
|
|
324
|
+
e[e.Insert = 200] = "Insert", e[e.Delete = 190] = "Delete", e[e.Reduce = 100] = "Reduce", e[e.MaxNext = 4] = "MaxNext", e[e.MaxInsertStackDepth = 300] = "MaxInsertStackDepth", e[e.DampenInsertStackDepth = 120] = "DampenInsertStackDepth", e[e.MinBigReduction = 2e3] = "MinBigReduction";
|
|
325
|
+
})(dO || (dO = {}));
|
|
326
|
+
class ze {
|
|
327
|
+
constructor(O) {
|
|
328
|
+
this.start = O, this.state = O.state, this.stack = O.stack, this.base = this.stack.length;
|
|
329
|
+
}
|
|
330
|
+
reduce(O) {
|
|
331
|
+
let t = O & 65535, a = O >> 19;
|
|
332
|
+
a == 0 ? (this.stack == this.start.stack && (this.stack = this.stack.slice()), this.stack.push(this.state, 0, 0), this.base += 3) : this.base -= (a - 1) * 3;
|
|
333
|
+
let i = this.start.p.parser.getGoto(this.stack[this.base - 3], t, !0);
|
|
334
|
+
this.state = i;
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
class A {
|
|
338
|
+
constructor(O, t, a) {
|
|
339
|
+
this.stack = O, this.pos = t, this.index = a, this.buffer = O.buffer, this.index == 0 && this.maybeNext();
|
|
340
|
+
}
|
|
341
|
+
static create(O, t = O.bufferBase + O.buffer.length) {
|
|
342
|
+
return new A(O, t, t - O.bufferBase);
|
|
343
|
+
}
|
|
344
|
+
maybeNext() {
|
|
345
|
+
let O = this.stack.parent;
|
|
346
|
+
O != null && (this.index = this.stack.bufferBase - O.bufferBase, this.stack = O, this.buffer = O.buffer);
|
|
347
|
+
}
|
|
348
|
+
get id() {
|
|
349
|
+
return this.buffer[this.index - 4];
|
|
350
|
+
}
|
|
351
|
+
get start() {
|
|
352
|
+
return this.buffer[this.index - 3];
|
|
353
|
+
}
|
|
354
|
+
get end() {
|
|
355
|
+
return this.buffer[this.index - 2];
|
|
356
|
+
}
|
|
357
|
+
get size() {
|
|
358
|
+
return this.buffer[this.index - 1];
|
|
359
|
+
}
|
|
360
|
+
next() {
|
|
361
|
+
this.index -= 4, this.pos -= 4, this.index == 0 && this.maybeNext();
|
|
362
|
+
}
|
|
363
|
+
fork() {
|
|
364
|
+
return new A(this.stack, this.pos, this.index);
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
function R(e, O = Uint16Array) {
|
|
368
|
+
if (typeof e != "string")
|
|
369
|
+
return e;
|
|
370
|
+
let t = null;
|
|
371
|
+
for (let a = 0, i = 0; a < e.length; ) {
|
|
372
|
+
let s = 0;
|
|
373
|
+
for (; ; ) {
|
|
374
|
+
let r = e.charCodeAt(a++), l = !1;
|
|
375
|
+
if (r == 126) {
|
|
376
|
+
s = 65535;
|
|
377
|
+
break;
|
|
378
|
+
}
|
|
379
|
+
r >= 92 && r--, r >= 34 && r--;
|
|
380
|
+
let n = r - 32;
|
|
381
|
+
if (n >= 46 && (n -= 46, l = !0), s += n, l)
|
|
382
|
+
break;
|
|
383
|
+
s *= 46;
|
|
384
|
+
}
|
|
385
|
+
t ? t[i++] = s : t = new O(s);
|
|
386
|
+
}
|
|
387
|
+
return t;
|
|
388
|
+
}
|
|
389
|
+
class j {
|
|
390
|
+
constructor() {
|
|
391
|
+
this.start = -1, this.value = -1, this.end = -1, this.extended = -1, this.lookAhead = 0, this.mask = 0, this.context = 0;
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
const gO = new j();
|
|
395
|
+
class Ge {
|
|
396
|
+
/// @internal
|
|
397
|
+
constructor(O, t) {
|
|
398
|
+
this.input = O, this.ranges = t, this.chunk = "", this.chunkOff = 0, this.chunk2 = "", this.chunk2Pos = 0, this.next = -1, this.token = gO, this.rangeIndex = 0, this.pos = this.chunkPos = t[0].from, this.range = t[0], this.end = t[t.length - 1].to, this.readNext();
|
|
399
|
+
}
|
|
400
|
+
/// @internal
|
|
401
|
+
resolveOffset(O, t) {
|
|
402
|
+
let a = this.range, i = this.rangeIndex, s = this.pos + O;
|
|
403
|
+
for (; s < a.from; ) {
|
|
404
|
+
if (!i)
|
|
405
|
+
return null;
|
|
406
|
+
let r = this.ranges[--i];
|
|
407
|
+
s -= a.from - r.to, a = r;
|
|
408
|
+
}
|
|
409
|
+
for (; t < 0 ? s > a.to : s >= a.to; ) {
|
|
410
|
+
if (i == this.ranges.length - 1)
|
|
411
|
+
return null;
|
|
412
|
+
let r = this.ranges[++i];
|
|
413
|
+
s += r.from - a.to, a = r;
|
|
414
|
+
}
|
|
415
|
+
return s;
|
|
416
|
+
}
|
|
417
|
+
/// @internal
|
|
418
|
+
clipPos(O) {
|
|
419
|
+
if (O >= this.range.from && O < this.range.to)
|
|
420
|
+
return O;
|
|
421
|
+
for (let t of this.ranges)
|
|
422
|
+
if (t.to > O)
|
|
423
|
+
return Math.max(O, t.from);
|
|
424
|
+
return this.end;
|
|
425
|
+
}
|
|
426
|
+
/// Look at a code unit near the stream position. `.peek(0)` equals
|
|
427
|
+
/// `.next`, `.peek(-1)` gives you the previous character, and so
|
|
428
|
+
/// on.
|
|
429
|
+
///
|
|
430
|
+
/// Note that looking around during tokenizing creates dependencies
|
|
431
|
+
/// on potentially far-away content, which may reduce the
|
|
432
|
+
/// effectiveness incremental parsing—when looking forward—or even
|
|
433
|
+
/// cause invalid reparses when looking backward more than 25 code
|
|
434
|
+
/// units, since the library does not track lookbehind.
|
|
435
|
+
peek(O) {
|
|
436
|
+
let t = this.chunkOff + O, a, i;
|
|
437
|
+
if (t >= 0 && t < this.chunk.length)
|
|
438
|
+
a = this.pos + O, i = this.chunk.charCodeAt(t);
|
|
439
|
+
else {
|
|
440
|
+
let s = this.resolveOffset(O, 1);
|
|
441
|
+
if (s == null)
|
|
442
|
+
return -1;
|
|
443
|
+
if (a = s, a >= this.chunk2Pos && a < this.chunk2Pos + this.chunk2.length)
|
|
444
|
+
i = this.chunk2.charCodeAt(a - this.chunk2Pos);
|
|
445
|
+
else {
|
|
446
|
+
let r = this.rangeIndex, l = this.range;
|
|
447
|
+
for (; l.to <= a; )
|
|
448
|
+
l = this.ranges[++r];
|
|
449
|
+
this.chunk2 = this.input.chunk(this.chunk2Pos = a), a + this.chunk2.length > l.to && (this.chunk2 = this.chunk2.slice(0, l.to - a)), i = this.chunk2.charCodeAt(0);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
return a >= this.token.lookAhead && (this.token.lookAhead = a + 1), i;
|
|
453
|
+
}
|
|
454
|
+
/// Accept a token. By default, the end of the token is set to the
|
|
455
|
+
/// current stream position, but you can pass an offset (relative to
|
|
456
|
+
/// the stream position) to change that.
|
|
457
|
+
acceptToken(O, t = 0) {
|
|
458
|
+
let a = t ? this.resolveOffset(t, -1) : this.pos;
|
|
459
|
+
if (a == null || a < this.token.start)
|
|
460
|
+
throw new RangeError("Token end out of bounds");
|
|
461
|
+
this.token.value = O, this.token.end = a;
|
|
462
|
+
}
|
|
463
|
+
getChunk() {
|
|
464
|
+
if (this.pos >= this.chunk2Pos && this.pos < this.chunk2Pos + this.chunk2.length) {
|
|
465
|
+
let { chunk: O, chunkPos: t } = this;
|
|
466
|
+
this.chunk = this.chunk2, this.chunkPos = this.chunk2Pos, this.chunk2 = O, this.chunk2Pos = t, this.chunkOff = this.pos - this.chunkPos;
|
|
467
|
+
} else {
|
|
468
|
+
this.chunk2 = this.chunk, this.chunk2Pos = this.chunkPos;
|
|
469
|
+
let O = this.input.chunk(this.pos), t = this.pos + O.length;
|
|
470
|
+
this.chunk = t > this.range.to ? O.slice(0, this.range.to - this.pos) : O, this.chunkPos = this.pos, this.chunkOff = 0;
|
|
471
|
+
}
|
|
472
|
+
}
|
|
473
|
+
readNext() {
|
|
474
|
+
return this.chunkOff >= this.chunk.length && (this.getChunk(), this.chunkOff == this.chunk.length) ? this.next = -1 : this.next = this.chunk.charCodeAt(this.chunkOff);
|
|
475
|
+
}
|
|
476
|
+
/// Move the stream forward N (defaults to 1) code units. Returns
|
|
477
|
+
/// the new value of [`next`](#lr.InputStream.next).
|
|
478
|
+
advance(O = 1) {
|
|
479
|
+
for (this.chunkOff += O; this.pos + O >= this.range.to; ) {
|
|
480
|
+
if (this.rangeIndex == this.ranges.length - 1)
|
|
481
|
+
return this.setDone();
|
|
482
|
+
O -= this.range.to - this.pos, this.range = this.ranges[++this.rangeIndex], this.pos = this.range.from;
|
|
483
|
+
}
|
|
484
|
+
return this.pos += O, this.pos >= this.token.lookAhead && (this.token.lookAhead = this.pos + 1), this.readNext();
|
|
485
|
+
}
|
|
486
|
+
setDone() {
|
|
487
|
+
return this.pos = this.chunkPos = this.end, this.range = this.ranges[this.rangeIndex = this.ranges.length - 1], this.chunk = "", this.next = -1;
|
|
488
|
+
}
|
|
489
|
+
/// @internal
|
|
490
|
+
reset(O, t) {
|
|
491
|
+
if (t ? (this.token = t, t.start = O, t.lookAhead = O + 1, t.value = t.extended = -1) : this.token = gO, this.pos != O) {
|
|
492
|
+
if (this.pos = O, O == this.end)
|
|
493
|
+
return this.setDone(), this;
|
|
494
|
+
for (; O < this.range.from; )
|
|
495
|
+
this.range = this.ranges[--this.rangeIndex];
|
|
496
|
+
for (; O >= this.range.to; )
|
|
497
|
+
this.range = this.ranges[++this.rangeIndex];
|
|
498
|
+
O >= this.chunkPos && O < this.chunkPos + this.chunk.length ? this.chunkOff = O - this.chunkPos : (this.chunk = "", this.chunkOff = 0), this.readNext();
|
|
499
|
+
}
|
|
500
|
+
return this;
|
|
501
|
+
}
|
|
502
|
+
/// @internal
|
|
503
|
+
read(O, t) {
|
|
504
|
+
if (O >= this.chunkPos && t <= this.chunkPos + this.chunk.length)
|
|
505
|
+
return this.chunk.slice(O - this.chunkPos, t - this.chunkPos);
|
|
506
|
+
if (O >= this.chunk2Pos && t <= this.chunk2Pos + this.chunk2.length)
|
|
507
|
+
return this.chunk2.slice(O - this.chunk2Pos, t - this.chunk2Pos);
|
|
508
|
+
if (O >= this.range.from && t <= this.range.to)
|
|
509
|
+
return this.input.read(O, t);
|
|
510
|
+
let a = "";
|
|
511
|
+
for (let i of this.ranges) {
|
|
512
|
+
if (i.from >= t)
|
|
513
|
+
break;
|
|
514
|
+
i.to > O && (a += this.input.read(Math.max(i.from, O), Math.min(i.to, t)));
|
|
515
|
+
}
|
|
516
|
+
return a;
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
class w {
|
|
520
|
+
constructor(O, t) {
|
|
521
|
+
this.data = O, this.id = t;
|
|
522
|
+
}
|
|
523
|
+
token(O, t) {
|
|
524
|
+
let { parser: a } = t.p;
|
|
525
|
+
FO(this.data, O, t, this.id, a.data, a.tokenPrecTable);
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
w.prototype.contextual = w.prototype.fallback = w.prototype.extend = !1;
|
|
529
|
+
class E {
|
|
530
|
+
constructor(O, t, a) {
|
|
531
|
+
this.precTable = t, this.elseToken = a, this.data = typeof O == "string" ? R(O) : O;
|
|
532
|
+
}
|
|
533
|
+
token(O, t) {
|
|
534
|
+
let a = O.pos, i = 0;
|
|
535
|
+
for (; ; ) {
|
|
536
|
+
let s = O.next < 0, r = O.resolveOffset(1, 1);
|
|
537
|
+
if (FO(this.data, O, t, 0, this.data, this.precTable), O.token.value > -1)
|
|
538
|
+
break;
|
|
539
|
+
if (this.elseToken == null)
|
|
540
|
+
return;
|
|
541
|
+
if (s || i++, r == null)
|
|
542
|
+
break;
|
|
543
|
+
O.reset(r, O.token);
|
|
544
|
+
}
|
|
545
|
+
i && (O.reset(a, O.token), O.acceptToken(this.elseToken, i));
|
|
546
|
+
}
|
|
547
|
+
}
|
|
548
|
+
E.prototype.contextual = w.prototype.fallback = w.prototype.extend = !1;
|
|
549
|
+
class m {
|
|
550
|
+
/// Create a tokenizer. The first argument is the function that,
|
|
551
|
+
/// given an input stream, scans for the types of tokens it
|
|
552
|
+
/// recognizes at the stream's position, and calls
|
|
553
|
+
/// [`acceptToken`](#lr.InputStream.acceptToken) when it finds
|
|
554
|
+
/// one.
|
|
555
|
+
constructor(O, t = {}) {
|
|
556
|
+
this.token = O, this.contextual = !!t.contextual, this.fallback = !!t.fallback, this.extend = !!t.extend;
|
|
557
|
+
}
|
|
558
|
+
}
|
|
559
|
+
function FO(e, O, t, a, i, s) {
|
|
560
|
+
let r = 0, l = 1 << a, { dialect: n } = t.p.parser;
|
|
561
|
+
O:
|
|
562
|
+
for (; l & e[r]; ) {
|
|
563
|
+
let Q = e[r + 1];
|
|
564
|
+
for (let p = r + 3; p < Q; p += 2)
|
|
565
|
+
if ((e[p + 1] & l) > 0) {
|
|
566
|
+
let f = e[p];
|
|
567
|
+
if (n.allows(f) && (O.token.value == -1 || O.token.value == f || Ie(f, O.token.value, i, s))) {
|
|
568
|
+
O.acceptToken(f);
|
|
569
|
+
break;
|
|
570
|
+
}
|
|
571
|
+
}
|
|
572
|
+
let h = O.next, c = 0, $ = e[r + 2];
|
|
573
|
+
if (O.next < 0 && $ > c && e[Q + $ * 3 - 3] == 65535 && e[Q + $ * 3 - 3] == 65535) {
|
|
574
|
+
r = e[Q + $ * 3 - 1];
|
|
575
|
+
continue O;
|
|
576
|
+
}
|
|
577
|
+
for (; c < $; ) {
|
|
578
|
+
let p = c + $ >> 1, f = Q + p + (p << 1), S = e[f], Z = e[f + 1] || 65536;
|
|
579
|
+
if (h < S)
|
|
580
|
+
$ = p;
|
|
581
|
+
else if (h >= Z)
|
|
582
|
+
c = p + 1;
|
|
583
|
+
else {
|
|
584
|
+
r = e[f + 2], O.advance();
|
|
585
|
+
continue O;
|
|
586
|
+
}
|
|
587
|
+
}
|
|
588
|
+
break;
|
|
589
|
+
}
|
|
590
|
+
}
|
|
591
|
+
function XO(e, O, t) {
|
|
592
|
+
for (let a = O, i; (i = e[a]) != 65535; a++)
|
|
593
|
+
if (i == t)
|
|
594
|
+
return a - O;
|
|
595
|
+
return -1;
|
|
596
|
+
}
|
|
597
|
+
function Ie(e, O, t, a) {
|
|
598
|
+
let i = XO(t, a, O);
|
|
599
|
+
return i < 0 || XO(t, a, e) < i;
|
|
600
|
+
}
|
|
601
|
+
const X = typeof process < "u" && process.env && /\bparse\b/.test(process.env.LOG);
|
|
602
|
+
let M = null;
|
|
603
|
+
var PO;
|
|
604
|
+
(function(e) {
|
|
605
|
+
e[e.Margin = 25] = "Margin";
|
|
606
|
+
})(PO || (PO = {}));
|
|
607
|
+
function mO(e, O, t) {
|
|
608
|
+
let a = e.cursor(lO.IncludeAnonymous);
|
|
609
|
+
for (a.moveTo(O); ; )
|
|
610
|
+
if (!(t < 0 ? a.childBefore(O) : a.childAfter(O)))
|
|
611
|
+
for (; ; ) {
|
|
612
|
+
if ((t < 0 ? a.to < O : a.from > O) && !a.type.isError)
|
|
613
|
+
return t < 0 ? Math.max(0, Math.min(
|
|
614
|
+
a.to - 1,
|
|
615
|
+
O - 25
|
|
616
|
+
/* Safety.Margin */
|
|
617
|
+
)) : Math.min(e.length, Math.max(
|
|
618
|
+
a.from + 1,
|
|
619
|
+
O + 25
|
|
620
|
+
/* Safety.Margin */
|
|
621
|
+
));
|
|
622
|
+
if (t < 0 ? a.prevSibling() : a.nextSibling())
|
|
623
|
+
break;
|
|
624
|
+
if (!a.parent())
|
|
625
|
+
return t < 0 ? 0 : e.length;
|
|
626
|
+
}
|
|
627
|
+
}
|
|
628
|
+
class Ae {
|
|
629
|
+
constructor(O, t) {
|
|
630
|
+
this.fragments = O, this.nodeSet = t, this.i = 0, this.fragment = null, this.safeFrom = -1, this.safeTo = -1, this.trees = [], this.start = [], this.index = [], this.nextFragment();
|
|
631
|
+
}
|
|
632
|
+
nextFragment() {
|
|
633
|
+
let O = this.fragment = this.i == this.fragments.length ? null : this.fragments[this.i++];
|
|
634
|
+
if (O) {
|
|
635
|
+
for (this.safeFrom = O.openStart ? mO(O.tree, O.from + O.offset, 1) - O.offset : O.from, this.safeTo = O.openEnd ? mO(O.tree, O.to + O.offset, -1) - O.offset : O.to; this.trees.length; )
|
|
636
|
+
this.trees.pop(), this.start.pop(), this.index.pop();
|
|
637
|
+
this.trees.push(O.tree), this.start.push(-O.offset), this.index.push(0), this.nextStart = this.safeFrom;
|
|
638
|
+
} else
|
|
639
|
+
this.nextStart = 1e9;
|
|
640
|
+
}
|
|
641
|
+
// `pos` must be >= any previously given `pos` for this cursor
|
|
642
|
+
nodeAt(O) {
|
|
643
|
+
if (O < this.nextStart)
|
|
644
|
+
return null;
|
|
645
|
+
for (; this.fragment && this.safeTo <= O; )
|
|
646
|
+
this.nextFragment();
|
|
647
|
+
if (!this.fragment)
|
|
648
|
+
return null;
|
|
649
|
+
for (; ; ) {
|
|
650
|
+
let t = this.trees.length - 1;
|
|
651
|
+
if (t < 0)
|
|
652
|
+
return this.nextFragment(), null;
|
|
653
|
+
let a = this.trees[t], i = this.index[t];
|
|
654
|
+
if (i == a.children.length) {
|
|
655
|
+
this.trees.pop(), this.start.pop(), this.index.pop();
|
|
656
|
+
continue;
|
|
657
|
+
}
|
|
658
|
+
let s = a.children[i], r = this.start[t] + a.positions[i];
|
|
659
|
+
if (r > O)
|
|
660
|
+
return this.nextStart = r, null;
|
|
661
|
+
if (s instanceof W) {
|
|
662
|
+
if (r == O) {
|
|
663
|
+
if (r < this.safeFrom)
|
|
664
|
+
return null;
|
|
665
|
+
let l = r + s.length;
|
|
666
|
+
if (l <= this.safeTo) {
|
|
667
|
+
let n = s.prop(sO.lookAhead);
|
|
668
|
+
if (!n || l + n < this.fragment.to)
|
|
669
|
+
return s;
|
|
670
|
+
}
|
|
671
|
+
}
|
|
672
|
+
this.index[t]++, r + s.length >= Math.max(this.safeFrom, O) && (this.trees.push(s), this.start.push(r), this.index.push(0));
|
|
673
|
+
} else
|
|
674
|
+
this.index[t]++, this.nextStart = r + s.length;
|
|
675
|
+
}
|
|
676
|
+
}
|
|
677
|
+
}
|
|
678
|
+
class Ee {
|
|
679
|
+
constructor(O, t) {
|
|
680
|
+
this.stream = t, this.tokens = [], this.mainToken = null, this.actions = [], this.tokens = O.tokenizers.map((a) => new j());
|
|
681
|
+
}
|
|
682
|
+
getActions(O) {
|
|
683
|
+
let t = 0, a = null, { parser: i } = O.p, { tokenizers: s } = i, r = i.stateSlot(
|
|
684
|
+
O.state,
|
|
685
|
+
3
|
|
686
|
+
/* ParseState.TokenizerMask */
|
|
687
|
+
), l = O.curContext ? O.curContext.hash : 0, n = 0;
|
|
688
|
+
for (let Q = 0; Q < s.length; Q++) {
|
|
689
|
+
if (!(1 << Q & r))
|
|
690
|
+
continue;
|
|
691
|
+
let h = s[Q], c = this.tokens[Q];
|
|
692
|
+
if (!(a && !h.fallback) && ((h.contextual || c.start != O.pos || c.mask != r || c.context != l) && (this.updateCachedToken(c, h, O), c.mask = r, c.context = l), c.lookAhead > c.end + 25 && (n = Math.max(c.lookAhead, n)), c.value != 0)) {
|
|
693
|
+
let $ = t;
|
|
694
|
+
if (c.extended > -1 && (t = this.addActions(O, c.extended, c.end, t)), t = this.addActions(O, c.value, c.end, t), !h.extend && (a = c, t > $))
|
|
695
|
+
break;
|
|
696
|
+
}
|
|
697
|
+
}
|
|
698
|
+
for (; this.actions.length > t; )
|
|
699
|
+
this.actions.pop();
|
|
700
|
+
return n && O.setLookAhead(n), !a && O.pos == this.stream.end && (a = new j(), a.value = O.p.parser.eofTerm, a.start = a.end = O.pos, t = this.addActions(O, a.value, a.end, t)), this.mainToken = a, this.actions;
|
|
701
|
+
}
|
|
702
|
+
getMainToken(O) {
|
|
703
|
+
if (this.mainToken)
|
|
704
|
+
return this.mainToken;
|
|
705
|
+
let t = new j(), { pos: a, p: i } = O;
|
|
706
|
+
return t.start = a, t.end = Math.min(a + 1, i.stream.end), t.value = a == i.stream.end ? i.parser.eofTerm : 0, t;
|
|
707
|
+
}
|
|
708
|
+
updateCachedToken(O, t, a) {
|
|
709
|
+
let i = this.stream.clipPos(a.pos);
|
|
710
|
+
if (t.token(this.stream.reset(i, O), a), O.value > -1) {
|
|
711
|
+
let { parser: s } = a.p;
|
|
712
|
+
for (let r = 0; r < s.specialized.length; r++)
|
|
713
|
+
if (s.specialized[r] == O.value) {
|
|
714
|
+
let l = s.specializers[r](this.stream.read(O.start, O.end), a);
|
|
715
|
+
if (l >= 0 && a.p.parser.dialect.allows(l >> 1)) {
|
|
716
|
+
l & 1 ? O.extended = l >> 1 : O.value = l >> 1;
|
|
717
|
+
break;
|
|
718
|
+
}
|
|
719
|
+
}
|
|
720
|
+
} else
|
|
721
|
+
O.value = 0, O.end = this.stream.clipPos(i + 1);
|
|
722
|
+
}
|
|
723
|
+
putAction(O, t, a, i) {
|
|
724
|
+
for (let s = 0; s < i; s += 3)
|
|
725
|
+
if (this.actions[s] == O)
|
|
726
|
+
return i;
|
|
727
|
+
return this.actions[i++] = O, this.actions[i++] = t, this.actions[i++] = a, i;
|
|
728
|
+
}
|
|
729
|
+
addActions(O, t, a, i) {
|
|
730
|
+
let { state: s } = O, { parser: r } = O.p, { data: l } = r;
|
|
731
|
+
for (let n = 0; n < 2; n++)
|
|
732
|
+
for (let Q = r.stateSlot(
|
|
733
|
+
s,
|
|
734
|
+
n ? 2 : 1
|
|
735
|
+
/* ParseState.Actions */
|
|
736
|
+
); ; Q += 3) {
|
|
737
|
+
if (l[Q] == 65535)
|
|
738
|
+
if (l[Q + 1] == 1)
|
|
739
|
+
Q = b(l, Q + 2);
|
|
740
|
+
else {
|
|
741
|
+
i == 0 && l[Q + 1] == 2 && (i = this.putAction(b(l, Q + 2), t, a, i));
|
|
742
|
+
break;
|
|
743
|
+
}
|
|
744
|
+
l[Q] == t && (i = this.putAction(b(l, Q + 1), t, a, i));
|
|
745
|
+
}
|
|
746
|
+
return i;
|
|
747
|
+
}
|
|
748
|
+
}
|
|
749
|
+
var ZO;
|
|
750
|
+
(function(e) {
|
|
751
|
+
e[e.Distance = 5] = "Distance", e[e.MaxRemainingPerStep = 3] = "MaxRemainingPerStep", e[e.MinBufferLengthPrune = 500] = "MinBufferLengthPrune", e[e.ForceReduceLimit = 10] = "ForceReduceLimit", e[e.CutDepth = 15e3] = "CutDepth", e[e.CutTo = 9e3] = "CutTo", e[e.MaxLeftAssociativeReductionCount = 300] = "MaxLeftAssociativeReductionCount", e[e.MaxStackCount = 12] = "MaxStackCount";
|
|
752
|
+
})(ZO || (ZO = {}));
|
|
753
|
+
class Ne {
|
|
754
|
+
constructor(O, t, a, i) {
|
|
755
|
+
this.parser = O, this.input = t, this.ranges = i, this.recovering = 0, this.nextStackID = 9812, this.minStackPos = 0, this.reused = [], this.stoppedAt = null, this.lastBigReductionStart = -1, this.lastBigReductionSize = 0, this.bigReductionCount = 0, this.stream = new Ge(t, i), this.tokens = new Ee(O, this.stream), this.topTerm = O.top[1];
|
|
756
|
+
let { from: s } = i[0];
|
|
757
|
+
this.stacks = [I.start(this, O.top[0], s)], this.fragments = a.length && this.stream.end - s > O.bufferLength * 4 ? new Ae(a, O.nodeSet) : null;
|
|
758
|
+
}
|
|
759
|
+
get parsedPos() {
|
|
760
|
+
return this.minStackPos;
|
|
761
|
+
}
|
|
762
|
+
// Move the parser forward. This will process all parse stacks at
|
|
763
|
+
// `this.pos` and try to advance them to a further position. If no
|
|
764
|
+
// stack for such a position is found, it'll start error-recovery.
|
|
765
|
+
//
|
|
766
|
+
// When the parse is finished, this will return a syntax tree. When
|
|
767
|
+
// not, it returns `null`.
|
|
768
|
+
advance() {
|
|
769
|
+
let O = this.stacks, t = this.minStackPos, a = this.stacks = [], i, s;
|
|
770
|
+
if (this.bigReductionCount > 300 && O.length == 1) {
|
|
771
|
+
let [r] = O;
|
|
772
|
+
for (; r.forceReduce() && r.stack.length && r.stack[r.stack.length - 2] >= this.lastBigReductionStart; )
|
|
773
|
+
;
|
|
774
|
+
this.bigReductionCount = this.lastBigReductionSize = 0;
|
|
775
|
+
}
|
|
776
|
+
for (let r = 0; r < O.length; r++) {
|
|
777
|
+
let l = O[r];
|
|
778
|
+
for (; ; ) {
|
|
779
|
+
if (this.tokens.mainToken = null, l.pos > t)
|
|
780
|
+
a.push(l);
|
|
781
|
+
else {
|
|
782
|
+
if (this.advanceStack(l, a, O))
|
|
783
|
+
continue;
|
|
784
|
+
{
|
|
785
|
+
i || (i = [], s = []), i.push(l);
|
|
786
|
+
let n = this.tokens.getMainToken(l);
|
|
787
|
+
s.push(n.value, n.end);
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
break;
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
if (!a.length) {
|
|
794
|
+
let r = i && De(i);
|
|
795
|
+
if (r)
|
|
796
|
+
return this.stackToTree(r);
|
|
797
|
+
if (this.parser.strict)
|
|
798
|
+
throw X && i && console.log("Stuck with token " + (this.tokens.mainToken ? this.parser.getName(this.tokens.mainToken.value) : "none")), new SyntaxError("No parse at " + t);
|
|
799
|
+
this.recovering || (this.recovering = 5);
|
|
800
|
+
}
|
|
801
|
+
if (this.recovering && i) {
|
|
802
|
+
let r = this.stoppedAt != null && i[0].pos > this.stoppedAt ? i[0] : this.runRecovery(i, s, a);
|
|
803
|
+
if (r)
|
|
804
|
+
return this.stackToTree(r.forceAll());
|
|
805
|
+
}
|
|
806
|
+
if (this.recovering) {
|
|
807
|
+
let r = this.recovering == 1 ? 1 : this.recovering * 3;
|
|
808
|
+
if (a.length > r)
|
|
809
|
+
for (a.sort((l, n) => n.score - l.score); a.length > r; )
|
|
810
|
+
a.pop();
|
|
811
|
+
a.some((l) => l.reducePos > t) && this.recovering--;
|
|
812
|
+
} else if (a.length > 1) {
|
|
813
|
+
O:
|
|
814
|
+
for (let r = 0; r < a.length - 1; r++) {
|
|
815
|
+
let l = a[r];
|
|
816
|
+
for (let n = r + 1; n < a.length; n++) {
|
|
817
|
+
let Q = a[n];
|
|
818
|
+
if (l.sameState(Q) || l.buffer.length > 500 && Q.buffer.length > 500)
|
|
819
|
+
if ((l.score - Q.score || l.buffer.length - Q.buffer.length) > 0)
|
|
820
|
+
a.splice(n--, 1);
|
|
821
|
+
else {
|
|
822
|
+
a.splice(r--, 1);
|
|
823
|
+
continue O;
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
}
|
|
827
|
+
a.length > 12 && a.splice(
|
|
828
|
+
12,
|
|
829
|
+
a.length - 12
|
|
830
|
+
/* Rec.MaxStackCount */
|
|
831
|
+
);
|
|
832
|
+
}
|
|
833
|
+
this.minStackPos = a[0].pos;
|
|
834
|
+
for (let r = 1; r < a.length; r++)
|
|
835
|
+
a[r].pos < this.minStackPos && (this.minStackPos = a[r].pos);
|
|
836
|
+
return null;
|
|
837
|
+
}
|
|
838
|
+
stopAt(O) {
|
|
839
|
+
if (this.stoppedAt != null && this.stoppedAt < O)
|
|
840
|
+
throw new RangeError("Can't move stoppedAt forward");
|
|
841
|
+
this.stoppedAt = O;
|
|
842
|
+
}
|
|
843
|
+
// Returns an updated version of the given stack, or null if the
|
|
844
|
+
// stack can't advance normally. When `split` and `stacks` are
|
|
845
|
+
// given, stacks split off by ambiguous operations will be pushed to
|
|
846
|
+
// `split`, or added to `stacks` if they move `pos` forward.
|
|
847
|
+
advanceStack(O, t, a) {
|
|
848
|
+
let i = O.pos, { parser: s } = this, r = X ? this.stackID(O) + " -> " : "";
|
|
849
|
+
if (this.stoppedAt != null && i > this.stoppedAt)
|
|
850
|
+
return O.forceReduce() ? O : null;
|
|
851
|
+
if (this.fragments) {
|
|
852
|
+
let Q = O.curContext && O.curContext.tracker.strict, h = Q ? O.curContext.hash : 0;
|
|
853
|
+
for (let c = this.fragments.nodeAt(i); c; ) {
|
|
854
|
+
let $ = this.parser.nodeSet.types[c.type.id] == c.type ? s.getGoto(O.state, c.type.id) : -1;
|
|
855
|
+
if ($ > -1 && c.length && (!Q || (c.prop(sO.contextHash) || 0) == h))
|
|
856
|
+
return O.useNode(c, $), X && console.log(r + this.stackID(O) + ` (via reuse of ${s.getName(c.type.id)})`), !0;
|
|
857
|
+
if (!(c instanceof W) || c.children.length == 0 || c.positions[0] > 0)
|
|
858
|
+
break;
|
|
859
|
+
let p = c.children[0];
|
|
860
|
+
if (p instanceof W && c.positions[0] == 0)
|
|
861
|
+
c = p;
|
|
862
|
+
else
|
|
863
|
+
break;
|
|
864
|
+
}
|
|
865
|
+
}
|
|
866
|
+
let l = s.stateSlot(
|
|
867
|
+
O.state,
|
|
868
|
+
4
|
|
869
|
+
/* ParseState.DefaultReduce */
|
|
870
|
+
);
|
|
871
|
+
if (l > 0)
|
|
872
|
+
return O.reduce(l), X && console.log(r + this.stackID(O) + ` (via always-reduce ${s.getName(
|
|
873
|
+
l & 65535
|
|
874
|
+
/* Action.ValueMask */
|
|
875
|
+
)})`), !0;
|
|
876
|
+
if (O.stack.length >= 15e3)
|
|
877
|
+
for (; O.stack.length > 9e3 && O.forceReduce(); )
|
|
878
|
+
;
|
|
879
|
+
let n = this.tokens.getActions(O);
|
|
880
|
+
for (let Q = 0; Q < n.length; ) {
|
|
881
|
+
let h = n[Q++], c = n[Q++], $ = n[Q++], p = Q == n.length || !a, f = p ? O : O.split();
|
|
882
|
+
if (f.apply(h, c, $), X && console.log(r + this.stackID(f) + ` (via ${h & 65536 ? `reduce of ${s.getName(
|
|
883
|
+
h & 65535
|
|
884
|
+
/* Action.ValueMask */
|
|
885
|
+
)}` : "shift"} for ${s.getName(c)} @ ${i}${f == O ? "" : ", split"})`), p)
|
|
886
|
+
return !0;
|
|
887
|
+
f.pos > i ? t.push(f) : a.push(f);
|
|
888
|
+
}
|
|
889
|
+
return !1;
|
|
890
|
+
}
|
|
891
|
+
// Advance a given stack forward as far as it will go. Returns the
|
|
892
|
+
// (possibly updated) stack if it got stuck, or null if it moved
|
|
893
|
+
// forward and was given to `pushStackDedup`.
|
|
894
|
+
advanceFully(O, t) {
|
|
895
|
+
let a = O.pos;
|
|
896
|
+
for (; ; ) {
|
|
897
|
+
if (!this.advanceStack(O, null, null))
|
|
898
|
+
return !1;
|
|
899
|
+
if (O.pos > a)
|
|
900
|
+
return bO(O, t), !0;
|
|
901
|
+
}
|
|
902
|
+
}
|
|
903
|
+
runRecovery(O, t, a) {
|
|
904
|
+
let i = null, s = !1;
|
|
905
|
+
for (let r = 0; r < O.length; r++) {
|
|
906
|
+
let l = O[r], n = t[r << 1], Q = t[(r << 1) + 1], h = X ? this.stackID(l) + " -> " : "";
|
|
907
|
+
if (l.deadEnd && (s || (s = !0, l.restart(), X && console.log(h + this.stackID(l) + " (restarted)"), this.advanceFully(l, a))))
|
|
908
|
+
continue;
|
|
909
|
+
let c = l.split(), $ = h;
|
|
910
|
+
for (let p = 0; c.forceReduce() && p < 10 && (X && console.log($ + this.stackID(c) + " (via force-reduce)"), !this.advanceFully(c, a)); p++)
|
|
911
|
+
X && ($ = this.stackID(c) + " -> ");
|
|
912
|
+
for (let p of l.recoverByInsert(n))
|
|
913
|
+
X && console.log(h + this.stackID(p) + " (via recover-insert)"), this.advanceFully(p, a);
|
|
914
|
+
this.stream.end > l.pos ? (Q == l.pos && (Q++, n = 0), l.recoverByDelete(n, Q), X && console.log(h + this.stackID(l) + ` (via recover-delete ${this.parser.getName(n)})`), bO(l, a)) : (!i || i.score < l.score) && (i = l);
|
|
915
|
+
}
|
|
916
|
+
return i;
|
|
917
|
+
}
|
|
918
|
+
// Convert the stack's buffer to a syntax tree.
|
|
919
|
+
stackToTree(O) {
|
|
920
|
+
return O.close(), W.build({
|
|
921
|
+
buffer: A.create(O),
|
|
922
|
+
nodeSet: this.parser.nodeSet,
|
|
923
|
+
topID: this.topTerm,
|
|
924
|
+
maxBufferLength: this.parser.bufferLength,
|
|
925
|
+
reused: this.reused,
|
|
926
|
+
start: this.ranges[0].from,
|
|
927
|
+
length: O.pos - this.ranges[0].from,
|
|
928
|
+
minRepeatType: this.parser.minRepeatTerm
|
|
929
|
+
});
|
|
930
|
+
}
|
|
931
|
+
stackID(O) {
|
|
932
|
+
let t = (M || (M = /* @__PURE__ */ new WeakMap())).get(O);
|
|
933
|
+
return t || M.set(O, t = String.fromCodePoint(this.nextStackID++)), t + O;
|
|
934
|
+
}
|
|
935
|
+
}
|
|
936
|
+
function bO(e, O) {
|
|
937
|
+
for (let t = 0; t < O.length; t++) {
|
|
938
|
+
let a = O[t];
|
|
939
|
+
if (a.pos == e.pos && a.sameState(e)) {
|
|
940
|
+
O[t].score < e.score && (O[t] = e);
|
|
941
|
+
return;
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
O.push(e);
|
|
945
|
+
}
|
|
946
|
+
class Be {
|
|
947
|
+
constructor(O, t, a) {
|
|
948
|
+
this.source = O, this.flags = t, this.disabled = a;
|
|
949
|
+
}
|
|
950
|
+
allows(O) {
|
|
951
|
+
return !this.disabled || this.disabled[O] == 0;
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
const L = (e) => e;
|
|
955
|
+
class KO {
|
|
956
|
+
/// Define a context tracker.
|
|
957
|
+
constructor(O) {
|
|
958
|
+
this.start = O.start, this.shift = O.shift || L, this.reduce = O.reduce || L, this.reuse = O.reuse || L, this.hash = O.hash || (() => 0), this.strict = O.strict !== !1;
|
|
959
|
+
}
|
|
960
|
+
}
|
|
961
|
+
class y extends Ye {
|
|
962
|
+
/// @internal
|
|
963
|
+
constructor(O) {
|
|
964
|
+
if (super(), this.wrappers = [], O.version != 14)
|
|
965
|
+
throw new RangeError(`Parser version (${O.version}) doesn't match runtime version (14)`);
|
|
966
|
+
let t = O.nodeNames.split(" ");
|
|
967
|
+
this.minRepeatTerm = t.length;
|
|
968
|
+
for (let l = 0; l < O.repeatNodeCount; l++)
|
|
969
|
+
t.push("");
|
|
970
|
+
let a = Object.keys(O.topRules).map((l) => O.topRules[l][1]), i = [];
|
|
971
|
+
for (let l = 0; l < t.length; l++)
|
|
972
|
+
i.push([]);
|
|
973
|
+
function s(l, n, Q) {
|
|
974
|
+
i[l].push([n, n.deserialize(String(Q))]);
|
|
975
|
+
}
|
|
976
|
+
if (O.nodeProps)
|
|
977
|
+
for (let l of O.nodeProps) {
|
|
978
|
+
let n = l[0];
|
|
979
|
+
typeof n == "string" && (n = sO[n]);
|
|
980
|
+
for (let Q = 1; Q < l.length; ) {
|
|
981
|
+
let h = l[Q++];
|
|
982
|
+
if (h >= 0)
|
|
983
|
+
s(h, n, l[Q++]);
|
|
984
|
+
else {
|
|
985
|
+
let c = l[Q + -h];
|
|
986
|
+
for (let $ = -h; $ > 0; $--)
|
|
987
|
+
s(l[Q++], n, c);
|
|
988
|
+
Q++;
|
|
989
|
+
}
|
|
990
|
+
}
|
|
991
|
+
}
|
|
992
|
+
this.nodeSet = new Te(t.map((l, n) => Ue.define({
|
|
993
|
+
name: n >= this.minRepeatTerm ? void 0 : l,
|
|
994
|
+
id: n,
|
|
995
|
+
props: i[n],
|
|
996
|
+
top: a.indexOf(n) > -1,
|
|
997
|
+
error: n == 0,
|
|
998
|
+
skipped: O.skippedNodes && O.skippedNodes.indexOf(n) > -1
|
|
999
|
+
}))), O.propSources && (this.nodeSet = this.nodeSet.extend(...O.propSources)), this.strict = !1, this.bufferLength = Ve;
|
|
1000
|
+
let r = R(O.tokenData);
|
|
1001
|
+
this.context = O.context, this.specializerSpecs = O.specialized || [], this.specialized = new Uint16Array(this.specializerSpecs.length);
|
|
1002
|
+
for (let l = 0; l < this.specializerSpecs.length; l++)
|
|
1003
|
+
this.specialized[l] = this.specializerSpecs[l].term;
|
|
1004
|
+
this.specializers = this.specializerSpecs.map(xO), this.states = R(O.states, Uint32Array), this.data = R(O.stateData), this.goto = R(O.goto), this.maxTerm = O.maxTerm, this.tokenizers = O.tokenizers.map((l) => typeof l == "number" ? new w(r, l) : l), this.topRules = O.topRules, this.dialects = O.dialects || {}, this.dynamicPrecedences = O.dynamicPrecedences || null, this.tokenPrecTable = O.tokenPrec, this.termNames = O.termNames || null, this.maxNode = this.nodeSet.types.length - 1, this.dialect = this.parseDialect(), this.top = this.topRules[Object.keys(this.topRules)[0]];
|
|
1005
|
+
}
|
|
1006
|
+
createParse(O, t, a) {
|
|
1007
|
+
let i = new Ne(this, O, t, a);
|
|
1008
|
+
for (let s of this.wrappers)
|
|
1009
|
+
i = s(i, O, t, a);
|
|
1010
|
+
return i;
|
|
1011
|
+
}
|
|
1012
|
+
/// Get a goto table entry @internal
|
|
1013
|
+
getGoto(O, t, a = !1) {
|
|
1014
|
+
let i = this.goto;
|
|
1015
|
+
if (t >= i[0])
|
|
1016
|
+
return -1;
|
|
1017
|
+
for (let s = i[t + 1]; ; ) {
|
|
1018
|
+
let r = i[s++], l = r & 1, n = i[s++];
|
|
1019
|
+
if (l && a)
|
|
1020
|
+
return n;
|
|
1021
|
+
for (let Q = s + (r >> 1); s < Q; s++)
|
|
1022
|
+
if (i[s] == O)
|
|
1023
|
+
return n;
|
|
1024
|
+
if (l)
|
|
1025
|
+
return -1;
|
|
1026
|
+
}
|
|
1027
|
+
}
|
|
1028
|
+
/// Check if this state has an action for a given terminal @internal
|
|
1029
|
+
hasAction(O, t) {
|
|
1030
|
+
let a = this.data;
|
|
1031
|
+
for (let i = 0; i < 2; i++)
|
|
1032
|
+
for (let s = this.stateSlot(
|
|
1033
|
+
O,
|
|
1034
|
+
i ? 2 : 1
|
|
1035
|
+
/* ParseState.Actions */
|
|
1036
|
+
), r; ; s += 3) {
|
|
1037
|
+
if ((r = a[s]) == 65535)
|
|
1038
|
+
if (a[s + 1] == 1)
|
|
1039
|
+
r = a[s = b(a, s + 2)];
|
|
1040
|
+
else {
|
|
1041
|
+
if (a[s + 1] == 2)
|
|
1042
|
+
return b(a, s + 2);
|
|
1043
|
+
break;
|
|
1044
|
+
}
|
|
1045
|
+
if (r == t || r == 0)
|
|
1046
|
+
return b(a, s + 1);
|
|
1047
|
+
}
|
|
1048
|
+
return 0;
|
|
1049
|
+
}
|
|
1050
|
+
/// @internal
|
|
1051
|
+
stateSlot(O, t) {
|
|
1052
|
+
return this.states[O * 6 + t];
|
|
1053
|
+
}
|
|
1054
|
+
/// @internal
|
|
1055
|
+
stateFlag(O, t) {
|
|
1056
|
+
return (this.stateSlot(
|
|
1057
|
+
O,
|
|
1058
|
+
0
|
|
1059
|
+
/* ParseState.Flags */
|
|
1060
|
+
) & t) > 0;
|
|
1061
|
+
}
|
|
1062
|
+
/// @internal
|
|
1063
|
+
validAction(O, t) {
|
|
1064
|
+
return !!this.allActions(O, (a) => a == t ? !0 : null);
|
|
1065
|
+
}
|
|
1066
|
+
/// @internal
|
|
1067
|
+
allActions(O, t) {
|
|
1068
|
+
let a = this.stateSlot(
|
|
1069
|
+
O,
|
|
1070
|
+
4
|
|
1071
|
+
/* ParseState.DefaultReduce */
|
|
1072
|
+
), i = a ? t(a) : void 0;
|
|
1073
|
+
for (let s = this.stateSlot(
|
|
1074
|
+
O,
|
|
1075
|
+
1
|
|
1076
|
+
/* ParseState.Actions */
|
|
1077
|
+
); i == null; s += 3) {
|
|
1078
|
+
if (this.data[s] == 65535)
|
|
1079
|
+
if (this.data[s + 1] == 1)
|
|
1080
|
+
s = b(this.data, s + 2);
|
|
1081
|
+
else
|
|
1082
|
+
break;
|
|
1083
|
+
i = t(b(this.data, s + 1));
|
|
1084
|
+
}
|
|
1085
|
+
return i;
|
|
1086
|
+
}
|
|
1087
|
+
/// Get the states that can follow this one through shift actions or
|
|
1088
|
+
/// goto jumps. @internal
|
|
1089
|
+
nextStates(O) {
|
|
1090
|
+
let t = [];
|
|
1091
|
+
for (let a = this.stateSlot(
|
|
1092
|
+
O,
|
|
1093
|
+
1
|
|
1094
|
+
/* ParseState.Actions */
|
|
1095
|
+
); ; a += 3) {
|
|
1096
|
+
if (this.data[a] == 65535)
|
|
1097
|
+
if (this.data[a + 1] == 1)
|
|
1098
|
+
a = b(this.data, a + 2);
|
|
1099
|
+
else
|
|
1100
|
+
break;
|
|
1101
|
+
if (!(this.data[a + 2] & 1)) {
|
|
1102
|
+
let i = this.data[a + 1];
|
|
1103
|
+
t.some((s, r) => r & 1 && s == i) || t.push(this.data[a], i);
|
|
1104
|
+
}
|
|
1105
|
+
}
|
|
1106
|
+
return t;
|
|
1107
|
+
}
|
|
1108
|
+
/// Configure the parser. Returns a new parser instance that has the
|
|
1109
|
+
/// given settings modified. Settings not provided in `config` are
|
|
1110
|
+
/// kept from the original parser.
|
|
1111
|
+
configure(O) {
|
|
1112
|
+
let t = Object.assign(Object.create(y.prototype), this);
|
|
1113
|
+
if (O.props && (t.nodeSet = this.nodeSet.extend(...O.props)), O.top) {
|
|
1114
|
+
let a = this.topRules[O.top];
|
|
1115
|
+
if (!a)
|
|
1116
|
+
throw new RangeError(`Invalid top rule name ${O.top}`);
|
|
1117
|
+
t.top = a;
|
|
1118
|
+
}
|
|
1119
|
+
return O.tokenizers && (t.tokenizers = this.tokenizers.map((a) => {
|
|
1120
|
+
let i = O.tokenizers.find((s) => s.from == a);
|
|
1121
|
+
return i ? i.to : a;
|
|
1122
|
+
})), O.specializers && (t.specializers = this.specializers.slice(), t.specializerSpecs = this.specializerSpecs.map((a, i) => {
|
|
1123
|
+
let s = O.specializers.find((l) => l.from == a.external);
|
|
1124
|
+
if (!s)
|
|
1125
|
+
return a;
|
|
1126
|
+
let r = Object.assign(Object.assign({}, a), { external: s.to });
|
|
1127
|
+
return t.specializers[i] = xO(r), r;
|
|
1128
|
+
})), O.contextTracker && (t.context = O.contextTracker), O.dialect && (t.dialect = this.parseDialect(O.dialect)), O.strict != null && (t.strict = O.strict), O.wrap && (t.wrappers = t.wrappers.concat(O.wrap)), O.bufferLength != null && (t.bufferLength = O.bufferLength), t;
|
|
1129
|
+
}
|
|
1130
|
+
/// Tells you whether any [parse wrappers](#lr.ParserConfig.wrap)
|
|
1131
|
+
/// are registered for this parser.
|
|
1132
|
+
hasWrappers() {
|
|
1133
|
+
return this.wrappers.length > 0;
|
|
1134
|
+
}
|
|
1135
|
+
/// Returns the name associated with a given term. This will only
|
|
1136
|
+
/// work for all terms when the parser was generated with the
|
|
1137
|
+
/// `--names` option. By default, only the names of tagged terms are
|
|
1138
|
+
/// stored.
|
|
1139
|
+
getName(O) {
|
|
1140
|
+
return this.termNames ? this.termNames[O] : String(O <= this.maxNode && this.nodeSet.types[O].name || O);
|
|
1141
|
+
}
|
|
1142
|
+
/// The eof term id is always allocated directly after the node
|
|
1143
|
+
/// types. @internal
|
|
1144
|
+
get eofTerm() {
|
|
1145
|
+
return this.maxNode + 1;
|
|
1146
|
+
}
|
|
1147
|
+
/// The type of top node produced by the parser.
|
|
1148
|
+
get topNode() {
|
|
1149
|
+
return this.nodeSet.types[this.top[1]];
|
|
1150
|
+
}
|
|
1151
|
+
/// @internal
|
|
1152
|
+
dynamicPrecedence(O) {
|
|
1153
|
+
let t = this.dynamicPrecedences;
|
|
1154
|
+
return t == null ? 0 : t[O] || 0;
|
|
1155
|
+
}
|
|
1156
|
+
/// @internal
|
|
1157
|
+
parseDialect(O) {
|
|
1158
|
+
let t = Object.keys(this.dialects), a = t.map(() => !1);
|
|
1159
|
+
if (O)
|
|
1160
|
+
for (let s of O.split(" ")) {
|
|
1161
|
+
let r = t.indexOf(s);
|
|
1162
|
+
r >= 0 && (a[r] = !0);
|
|
1163
|
+
}
|
|
1164
|
+
let i = null;
|
|
1165
|
+
for (let s = 0; s < t.length; s++)
|
|
1166
|
+
if (!a[s])
|
|
1167
|
+
for (let r = this.dialects[t[s]], l; (l = this.data[r++]) != 65535; )
|
|
1168
|
+
(i || (i = new Uint8Array(this.maxTerm + 1)))[l] = 1;
|
|
1169
|
+
return new Be(O, a, i);
|
|
1170
|
+
}
|
|
1171
|
+
/// Used by the output of the parser generator. Not available to
|
|
1172
|
+
/// user code. @hide
|
|
1173
|
+
static deserialize(O) {
|
|
1174
|
+
return new y(O);
|
|
1175
|
+
}
|
|
1176
|
+
}
|
|
1177
|
+
function b(e, O) {
|
|
1178
|
+
return e[O] | e[O + 1] << 16;
|
|
1179
|
+
}
|
|
1180
|
+
function De(e) {
|
|
1181
|
+
let O = null;
|
|
1182
|
+
for (let t of e) {
|
|
1183
|
+
let a = t.p.stoppedAt;
|
|
1184
|
+
(t.pos == t.p.stream.end || a != null && t.pos > a) && t.p.parser.stateFlag(
|
|
1185
|
+
t.state,
|
|
1186
|
+
2
|
|
1187
|
+
/* StateFlag.Accepting */
|
|
1188
|
+
) && (!O || O.score < t.score) && (O = t);
|
|
1189
|
+
}
|
|
1190
|
+
return O;
|
|
1191
|
+
}
|
|
1192
|
+
function xO(e) {
|
|
1193
|
+
if (e.external) {
|
|
1194
|
+
let O = e.extend ? 1 : 0;
|
|
1195
|
+
return (t, a) => e.external(t, a) << 1 | O;
|
|
1196
|
+
}
|
|
1197
|
+
return e.get;
|
|
1198
|
+
}
|
|
1199
|
+
const Je = 54, Me = 1, Le = 55, Fe = 2, Ke = 56, He = 3, kO = 4, Ot = 5, N = 6, HO = 7, Oe = 8, ee = 9, te = 10, et = 11, tt = 12, at = 13, F = 57, it = 14, wO = 58, ae = 20, rt = 22, ie = 23, st = 24, iO = 26, re = 27, lt = 28, nt = 31, ot = 34, Qt = 36, ct = 37, ut = 0, ht = 1, pt = {
|
|
1200
|
+
area: !0,
|
|
1201
|
+
base: !0,
|
|
1202
|
+
br: !0,
|
|
1203
|
+
col: !0,
|
|
1204
|
+
command: !0,
|
|
1205
|
+
embed: !0,
|
|
1206
|
+
frame: !0,
|
|
1207
|
+
hr: !0,
|
|
1208
|
+
img: !0,
|
|
1209
|
+
input: !0,
|
|
1210
|
+
keygen: !0,
|
|
1211
|
+
link: !0,
|
|
1212
|
+
meta: !0,
|
|
1213
|
+
param: !0,
|
|
1214
|
+
source: !0,
|
|
1215
|
+
track: !0,
|
|
1216
|
+
wbr: !0,
|
|
1217
|
+
menuitem: !0
|
|
1218
|
+
}, $t = {
|
|
1219
|
+
dd: !0,
|
|
1220
|
+
li: !0,
|
|
1221
|
+
optgroup: !0,
|
|
1222
|
+
option: !0,
|
|
1223
|
+
p: !0,
|
|
1224
|
+
rp: !0,
|
|
1225
|
+
rt: !0,
|
|
1226
|
+
tbody: !0,
|
|
1227
|
+
td: !0,
|
|
1228
|
+
tfoot: !0,
|
|
1229
|
+
th: !0,
|
|
1230
|
+
tr: !0
|
|
1231
|
+
}, yO = {
|
|
1232
|
+
dd: { dd: !0, dt: !0 },
|
|
1233
|
+
dt: { dd: !0, dt: !0 },
|
|
1234
|
+
li: { li: !0 },
|
|
1235
|
+
option: { option: !0, optgroup: !0 },
|
|
1236
|
+
optgroup: { optgroup: !0 },
|
|
1237
|
+
p: {
|
|
1238
|
+
address: !0,
|
|
1239
|
+
article: !0,
|
|
1240
|
+
aside: !0,
|
|
1241
|
+
blockquote: !0,
|
|
1242
|
+
dir: !0,
|
|
1243
|
+
div: !0,
|
|
1244
|
+
dl: !0,
|
|
1245
|
+
fieldset: !0,
|
|
1246
|
+
footer: !0,
|
|
1247
|
+
form: !0,
|
|
1248
|
+
h1: !0,
|
|
1249
|
+
h2: !0,
|
|
1250
|
+
h3: !0,
|
|
1251
|
+
h4: !0,
|
|
1252
|
+
h5: !0,
|
|
1253
|
+
h6: !0,
|
|
1254
|
+
header: !0,
|
|
1255
|
+
hgroup: !0,
|
|
1256
|
+
hr: !0,
|
|
1257
|
+
menu: !0,
|
|
1258
|
+
nav: !0,
|
|
1259
|
+
ol: !0,
|
|
1260
|
+
p: !0,
|
|
1261
|
+
pre: !0,
|
|
1262
|
+
section: !0,
|
|
1263
|
+
table: !0,
|
|
1264
|
+
ul: !0
|
|
1265
|
+
},
|
|
1266
|
+
rp: { rp: !0, rt: !0 },
|
|
1267
|
+
rt: { rp: !0, rt: !0 },
|
|
1268
|
+
tbody: { tbody: !0, tfoot: !0 },
|
|
1269
|
+
td: { td: !0, th: !0 },
|
|
1270
|
+
tfoot: { tbody: !0 },
|
|
1271
|
+
th: { td: !0, th: !0 },
|
|
1272
|
+
thead: { tbody: !0, tfoot: !0 },
|
|
1273
|
+
tr: { tr: !0 }
|
|
1274
|
+
};
|
|
1275
|
+
function ft(e) {
|
|
1276
|
+
return e == 45 || e == 46 || e == 58 || e >= 65 && e <= 90 || e == 95 || e >= 97 && e <= 122 || e >= 161;
|
|
1277
|
+
}
|
|
1278
|
+
function se(e) {
|
|
1279
|
+
return e == 9 || e == 10 || e == 13 || e == 32;
|
|
1280
|
+
}
|
|
1281
|
+
let YO = null, TO = null, UO = 0;
|
|
1282
|
+
function rO(e, O) {
|
|
1283
|
+
let t = e.pos + O;
|
|
1284
|
+
if (UO == t && TO == e)
|
|
1285
|
+
return YO;
|
|
1286
|
+
let a = e.peek(O);
|
|
1287
|
+
for (; se(a); )
|
|
1288
|
+
a = e.peek(++O);
|
|
1289
|
+
let i = "";
|
|
1290
|
+
for (; ft(a); )
|
|
1291
|
+
i += String.fromCharCode(a), a = e.peek(++O);
|
|
1292
|
+
return TO = e, UO = t, YO = i ? i.toLowerCase() : a == St || a == dt ? void 0 : null;
|
|
1293
|
+
}
|
|
1294
|
+
const le = 60, B = 62, hO = 47, St = 63, dt = 33, gt = 45;
|
|
1295
|
+
function VO(e, O) {
|
|
1296
|
+
this.name = e, this.parent = O, this.hash = O ? O.hash : 0;
|
|
1297
|
+
for (let t = 0; t < e.length; t++)
|
|
1298
|
+
this.hash += (this.hash << 4) + e.charCodeAt(t) + (e.charCodeAt(t) << 8);
|
|
1299
|
+
}
|
|
1300
|
+
const Xt = [N, te, HO, Oe, ee], Pt = new KO({
|
|
1301
|
+
start: null,
|
|
1302
|
+
shift(e, O, t, a) {
|
|
1303
|
+
return Xt.indexOf(O) > -1 ? new VO(rO(a, 1) || "", e) : e;
|
|
1304
|
+
},
|
|
1305
|
+
reduce(e, O) {
|
|
1306
|
+
return O == ae && e ? e.parent : e;
|
|
1307
|
+
},
|
|
1308
|
+
reuse(e, O, t, a) {
|
|
1309
|
+
let i = O.type.id;
|
|
1310
|
+
return i == N || i == Qt ? new VO(rO(a, 1) || "", e) : e;
|
|
1311
|
+
},
|
|
1312
|
+
hash(e) {
|
|
1313
|
+
return e ? e.hash : 0;
|
|
1314
|
+
},
|
|
1315
|
+
strict: !1
|
|
1316
|
+
}), mt = new m((e, O) => {
|
|
1317
|
+
if (e.next != le) {
|
|
1318
|
+
e.next < 0 && O.context && e.acceptToken(F);
|
|
1319
|
+
return;
|
|
1320
|
+
}
|
|
1321
|
+
e.advance();
|
|
1322
|
+
let t = e.next == hO;
|
|
1323
|
+
t && e.advance();
|
|
1324
|
+
let a = rO(e, 0);
|
|
1325
|
+
if (a === void 0)
|
|
1326
|
+
return;
|
|
1327
|
+
if (!a)
|
|
1328
|
+
return e.acceptToken(t ? it : N);
|
|
1329
|
+
let i = O.context ? O.context.name : null;
|
|
1330
|
+
if (t) {
|
|
1331
|
+
if (a == i)
|
|
1332
|
+
return e.acceptToken(et);
|
|
1333
|
+
if (i && $t[i])
|
|
1334
|
+
return e.acceptToken(F, -2);
|
|
1335
|
+
if (O.dialectEnabled(ut))
|
|
1336
|
+
return e.acceptToken(tt);
|
|
1337
|
+
for (let s = O.context; s; s = s.parent)
|
|
1338
|
+
if (s.name == a)
|
|
1339
|
+
return;
|
|
1340
|
+
e.acceptToken(at);
|
|
1341
|
+
} else {
|
|
1342
|
+
if (a == "script")
|
|
1343
|
+
return e.acceptToken(HO);
|
|
1344
|
+
if (a == "style")
|
|
1345
|
+
return e.acceptToken(Oe);
|
|
1346
|
+
if (a == "textarea")
|
|
1347
|
+
return e.acceptToken(ee);
|
|
1348
|
+
if (pt.hasOwnProperty(a))
|
|
1349
|
+
return e.acceptToken(te);
|
|
1350
|
+
i && yO[i] && yO[i][a] ? e.acceptToken(F, -1) : e.acceptToken(N);
|
|
1351
|
+
}
|
|
1352
|
+
}, { contextual: !0 }), Zt = new m((e) => {
|
|
1353
|
+
for (let O = 0, t = 0; ; t++) {
|
|
1354
|
+
if (e.next < 0) {
|
|
1355
|
+
t && e.acceptToken(wO);
|
|
1356
|
+
break;
|
|
1357
|
+
}
|
|
1358
|
+
if (e.next == gt)
|
|
1359
|
+
O++;
|
|
1360
|
+
else if (e.next == B && O >= 2) {
|
|
1361
|
+
t > 3 && e.acceptToken(wO, -2);
|
|
1362
|
+
break;
|
|
1363
|
+
} else
|
|
1364
|
+
O = 0;
|
|
1365
|
+
e.advance();
|
|
1366
|
+
}
|
|
1367
|
+
});
|
|
1368
|
+
function bt(e) {
|
|
1369
|
+
for (; e; e = e.parent)
|
|
1370
|
+
if (e.name == "svg" || e.name == "math")
|
|
1371
|
+
return !0;
|
|
1372
|
+
return !1;
|
|
1373
|
+
}
|
|
1374
|
+
const xt = new m((e, O) => {
|
|
1375
|
+
if (e.next == hO && e.peek(1) == B) {
|
|
1376
|
+
let t = O.dialectEnabled(ht) || bt(O.context);
|
|
1377
|
+
e.acceptToken(t ? Ot : kO, 2);
|
|
1378
|
+
} else
|
|
1379
|
+
e.next == B && e.acceptToken(kO, 1);
|
|
1380
|
+
});
|
|
1381
|
+
function pO(e, O, t) {
|
|
1382
|
+
let a = 2 + e.length;
|
|
1383
|
+
return new m((i) => {
|
|
1384
|
+
for (let s = 0, r = 0, l = 0; ; l++) {
|
|
1385
|
+
if (i.next < 0) {
|
|
1386
|
+
l && i.acceptToken(O);
|
|
1387
|
+
break;
|
|
1388
|
+
}
|
|
1389
|
+
if (s == 0 && i.next == le || s == 1 && i.next == hO || s >= 2 && s < a && i.next == e.charCodeAt(s - 2))
|
|
1390
|
+
s++, r++;
|
|
1391
|
+
else if ((s == 2 || s == a) && se(i.next))
|
|
1392
|
+
r++;
|
|
1393
|
+
else if (s == a && i.next == B) {
|
|
1394
|
+
l > r ? i.acceptToken(O, -r) : i.acceptToken(t, -(r - 2));
|
|
1395
|
+
break;
|
|
1396
|
+
} else if ((i.next == 10 || i.next == 13) && l) {
|
|
1397
|
+
i.acceptToken(O, 1);
|
|
1398
|
+
break;
|
|
1399
|
+
} else
|
|
1400
|
+
s = r = 0;
|
|
1401
|
+
i.advance();
|
|
1402
|
+
}
|
|
1403
|
+
});
|
|
1404
|
+
}
|
|
1405
|
+
const kt = pO("script", Je, Me), wt = pO("style", Le, Fe), yt = pO("textarea", Ke, He), Yt = nO({
|
|
1406
|
+
"Text RawText": o.content,
|
|
1407
|
+
"StartTag StartCloseTag SelfClosingEndTag EndTag": o.angleBracket,
|
|
1408
|
+
TagName: o.tagName,
|
|
1409
|
+
"MismatchedCloseTag/TagName": [o.tagName, o.invalid],
|
|
1410
|
+
AttributeName: o.attributeName,
|
|
1411
|
+
"AttributeValue UnquotedAttributeValue": o.attributeValue,
|
|
1412
|
+
Is: o.definitionOperator,
|
|
1413
|
+
"EntityReference CharacterReference": o.character,
|
|
1414
|
+
Comment: o.blockComment,
|
|
1415
|
+
ProcessingInst: o.processingInstruction,
|
|
1416
|
+
DoctypeDecl: o.documentMeta
|
|
1417
|
+
}), Tt = y.deserialize({
|
|
1418
|
+
version: 14,
|
|
1419
|
+
states: ",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%WQ&rO,59fO%`Q&rO,59iO%hQ&rO,59lO%sQ&rO,59nOOOa'#D^'#D^O%{OaO'#CxO&WOaO,59[OOOb'#D_'#D_O&`ObO'#C{O&kObO,59[OOOd'#D`'#D`O&sOdO'#DOO'OOdO,59[OOO`'#Da'#DaO'WO!rO,59[O'_Q#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'dO$fO,59oOOO`,59o,59oO'lQ#|O,59qO'qQ#|O,59rOOO`-E7W-E7WO'vQ&rO'#CsOOQW'#DZ'#DZO(UQ&rO1G.wOOOa1G.w1G.wO(^Q&rO1G/QOOOb1G/Q1G/QO(fQ&rO1G/TOOOd1G/T1G/TO(nQ&rO1G/WOOO`1G/W1G/WOOO`1G/Y1G/YO(yQ&rO1G/YOOOa-E7[-E7[O)RQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)WQ#tO'#C|OOOd-E7^-E7^O)]Q#tO'#DPOOO`-E7_-E7_O)bQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O)gQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rOOO`7+$t7+$tO)rQ#|O,59eO)wQ#|O,59hO)|Q#|O,59kOOO`1G/X1G/XO*RO7[O'#CvO*dOMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O*uO7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+WOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z",
|
|
1420
|
+
stateData: "+s~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OhyO~OS!OOhyO~OS!QOhyO~OS!SOT!TOhyO~OS!TOhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXhgXTgX~OS!fOhyO~OS!gOhyO~OS!hOhyO~OS!iOT!jOhyO~OS!jOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~",
|
|
1421
|
+
goto: "%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{}!P!R!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ}bQ!PcQ!RdQ!UeZ!e{}!P!R!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",
|
|
1422
|
+
nodeNames: "⚠ StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag 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",
|
|
1423
|
+
maxTerm: 67,
|
|
1424
|
+
context: Pt,
|
|
1425
|
+
nodeProps: [
|
|
1426
|
+
["closedBy", -10, 1, 2, 3, 7, 8, 9, 10, 11, 12, 13, "EndTag", 6, "EndTag SelfClosingEndTag", -4, 21, 30, 33, 36, "CloseTag"],
|
|
1427
|
+
["openedBy", 4, "StartTag StartCloseTag", 5, "StartTag", -4, 29, 32, 35, 37, "OpenTag"],
|
|
1428
|
+
["group", -9, 14, 17, 18, 19, 20, 39, 40, 41, 42, "Entity", 16, "Entity TextContent", -3, 28, 31, 34, "TextContent Entity"]
|
|
1429
|
+
],
|
|
1430
|
+
propSources: [Yt],
|
|
1431
|
+
skippedNodes: [0],
|
|
1432
|
+
repeatNodeCount: 9,
|
|
1433
|
+
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$|c`PkW!a`!cpOX$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&bX`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&Xq'UV`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}P'pT`POv'kw!^'k!_;'S'k;'S;=`(P<%lO'kP(SP;=`<%l'kp([S!cpOv(Vx;'S(V;'S;=`(h<%lO(Vp(kP;=`<%l(Vq(qP;=`<%l&}a({W`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t`)jT!a`Or)esv)ew;'S)e;'S;=`)y<%lO)e`)|P;=`<%l)ea*SP;=`<%l(t!Q*^V!a`!cpOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!Q*vP;=`<%l*V!R*|P;=`<%l&XW+UYkWOX+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,]``P!a`!cp!^^OX&XXY,QYZ,QZ]&X]^,Q^p&Xpq,Qqr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!_-ljhS`PkW!a`!cpOX$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[/ebhSkWOX+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+PS0rXhSqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0mS1bP;=`<%l0m[1hP;=`<%l/^!V1vchS`P!a`!cpOq&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!`h`P!cpOv&}wx'kx!^&}!^!_(V!_;'S&};'S;=`(n<%lO&}!_4WihSkWc!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!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[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!_:sbhSkWa!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<QchSOp7Sqr;{rs7Sst0mtw;{wx7Sx!P;{!P!Q7S!Q!];{!]!^=]!^!a7S!a#s;{#s$f7S$f;'S;{;'S;=`>P<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@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@TakWOX@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!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@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!_DsbhSkWb!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!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$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_khS`PkW!a`!cpOX$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_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$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!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*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!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,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!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!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!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!<TXiS`P!a`!cpOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X",
|
|
1434
|
+
tokenizers: [kt, wt, yt, xt, mt, Zt, 0, 1, 2, 3, 4, 5],
|
|
1435
|
+
topRules: { Document: [0, 15] },
|
|
1436
|
+
dialects: { noMatch: 0, selfClosing: 485 },
|
|
1437
|
+
tokenPrec: 487
|
|
1438
|
+
});
|
|
1439
|
+
function ne(e, O) {
|
|
1440
|
+
let t = /* @__PURE__ */ Object.create(null);
|
|
1441
|
+
for (let a of e.getChildren(ie)) {
|
|
1442
|
+
let i = a.getChild(st), s = a.getChild(iO) || a.getChild(re);
|
|
1443
|
+
i && (t[O.read(i.from, i.to)] = s ? s.type.id == iO ? O.read(s.from + 1, s.to - 1) : O.read(s.from, s.to) : "");
|
|
1444
|
+
}
|
|
1445
|
+
return t;
|
|
1446
|
+
}
|
|
1447
|
+
function RO(e, O) {
|
|
1448
|
+
let t = e.getChild(rt);
|
|
1449
|
+
return t ? O.read(t.from, t.to) : " ";
|
|
1450
|
+
}
|
|
1451
|
+
function K(e, O, t) {
|
|
1452
|
+
let a;
|
|
1453
|
+
for (let i of t)
|
|
1454
|
+
if (!i.attrs || i.attrs(a || (a = ne(e.node.parent.firstChild, O))))
|
|
1455
|
+
return { parser: i.parser };
|
|
1456
|
+
return null;
|
|
1457
|
+
}
|
|
1458
|
+
function oe(e = [], O = []) {
|
|
1459
|
+
let t = [], a = [], i = [], s = [];
|
|
1460
|
+
for (let l of e)
|
|
1461
|
+
(l.tag == "script" ? t : l.tag == "style" ? a : l.tag == "textarea" ? i : s).push(l);
|
|
1462
|
+
let r = O.length ? /* @__PURE__ */ Object.create(null) : null;
|
|
1463
|
+
for (let l of O)
|
|
1464
|
+
(r[l.name] || (r[l.name] = [])).push(l);
|
|
1465
|
+
return Re((l, n) => {
|
|
1466
|
+
let Q = l.type.id;
|
|
1467
|
+
if (Q == lt)
|
|
1468
|
+
return K(l, n, t);
|
|
1469
|
+
if (Q == nt)
|
|
1470
|
+
return K(l, n, a);
|
|
1471
|
+
if (Q == ot)
|
|
1472
|
+
return K(l, n, i);
|
|
1473
|
+
if (Q == ae && s.length) {
|
|
1474
|
+
let h = l.node, c = h.firstChild, $ = c && RO(c, n), p;
|
|
1475
|
+
if ($) {
|
|
1476
|
+
for (let f of s)
|
|
1477
|
+
if (f.tag == $ && (!f.attrs || f.attrs(p || (p = ne(h, n))))) {
|
|
1478
|
+
let S = h.lastChild;
|
|
1479
|
+
return { parser: f.parser, overlay: [{ from: c.to, to: S.type.id == ct ? S.from : h.to }] };
|
|
1480
|
+
}
|
|
1481
|
+
}
|
|
1482
|
+
}
|
|
1483
|
+
if (r && Q == ie) {
|
|
1484
|
+
let h = l.node, c;
|
|
1485
|
+
if (c = h.firstChild) {
|
|
1486
|
+
let $ = r[n.read(c.from, c.to)];
|
|
1487
|
+
if ($)
|
|
1488
|
+
for (let p of $) {
|
|
1489
|
+
if (p.tagName && p.tagName != RO(h.parent, n))
|
|
1490
|
+
continue;
|
|
1491
|
+
let f = h.lastChild;
|
|
1492
|
+
if (f.type.id == iO) {
|
|
1493
|
+
let S = f.from + 1, Z = f.lastChild, k = f.to - (Z && Z.isError ? 0 : 1);
|
|
1494
|
+
if (k > S)
|
|
1495
|
+
return { parser: p.parser, overlay: [{ from: S, to: k }] };
|
|
1496
|
+
} else if (f.type.id == re)
|
|
1497
|
+
return { parser: p.parser, overlay: [{ from: f.from, to: f.to }] };
|
|
1498
|
+
}
|
|
1499
|
+
}
|
|
1500
|
+
}
|
|
1501
|
+
return null;
|
|
1502
|
+
});
|
|
1503
|
+
}
|
|
1504
|
+
const Ut = 96, vO = 1, Vt = 97, Rt = 98, _O = 2, Qe = [
|
|
1505
|
+
9,
|
|
1506
|
+
10,
|
|
1507
|
+
11,
|
|
1508
|
+
12,
|
|
1509
|
+
13,
|
|
1510
|
+
32,
|
|
1511
|
+
133,
|
|
1512
|
+
160,
|
|
1513
|
+
5760,
|
|
1514
|
+
8192,
|
|
1515
|
+
8193,
|
|
1516
|
+
8194,
|
|
1517
|
+
8195,
|
|
1518
|
+
8196,
|
|
1519
|
+
8197,
|
|
1520
|
+
8198,
|
|
1521
|
+
8199,
|
|
1522
|
+
8200,
|
|
1523
|
+
8201,
|
|
1524
|
+
8202,
|
|
1525
|
+
8232,
|
|
1526
|
+
8233,
|
|
1527
|
+
8239,
|
|
1528
|
+
8287,
|
|
1529
|
+
12288
|
|
1530
|
+
], vt = 58, _t = 40, ce = 95, Wt = 91, z = 45, qt = 46, Ct = 35, jt = 37;
|
|
1531
|
+
function D(e) {
|
|
1532
|
+
return e >= 65 && e <= 90 || e >= 97 && e <= 122 || e >= 161;
|
|
1533
|
+
}
|
|
1534
|
+
function zt(e) {
|
|
1535
|
+
return e >= 48 && e <= 57;
|
|
1536
|
+
}
|
|
1537
|
+
const Gt = new m((e, O) => {
|
|
1538
|
+
for (let t = !1, a = 0, i = 0; ; i++) {
|
|
1539
|
+
let { next: s } = e;
|
|
1540
|
+
if (D(s) || s == z || s == ce || t && zt(s))
|
|
1541
|
+
!t && (s != z || i > 0) && (t = !0), a === i && s == z && a++, e.advance();
|
|
1542
|
+
else {
|
|
1543
|
+
t && e.acceptToken(s == _t ? Vt : a == 2 && O.canShift(_O) ? _O : Rt);
|
|
1544
|
+
break;
|
|
1545
|
+
}
|
|
1546
|
+
}
|
|
1547
|
+
}), It = new m((e) => {
|
|
1548
|
+
if (Qe.includes(e.peek(-1))) {
|
|
1549
|
+
let { next: O } = e;
|
|
1550
|
+
(D(O) || O == ce || O == Ct || O == qt || O == Wt || O == vt || O == z) && e.acceptToken(Ut);
|
|
1551
|
+
}
|
|
1552
|
+
}), At = new m((e) => {
|
|
1553
|
+
if (!Qe.includes(e.peek(-1))) {
|
|
1554
|
+
let { next: O } = e;
|
|
1555
|
+
if (O == jt && (e.advance(), e.acceptToken(vO)), D(O)) {
|
|
1556
|
+
do
|
|
1557
|
+
e.advance();
|
|
1558
|
+
while (D(e.next));
|
|
1559
|
+
e.acceptToken(vO);
|
|
1560
|
+
}
|
|
1561
|
+
}
|
|
1562
|
+
}), Et = nO({
|
|
1563
|
+
"AtKeyword import charset namespace keyframes media supports": o.definitionKeyword,
|
|
1564
|
+
"from to selector": o.keyword,
|
|
1565
|
+
NamespaceName: o.namespace,
|
|
1566
|
+
KeyframeName: o.labelName,
|
|
1567
|
+
KeyframeRangeName: o.operatorKeyword,
|
|
1568
|
+
TagName: o.tagName,
|
|
1569
|
+
ClassName: o.className,
|
|
1570
|
+
PseudoClassName: o.constant(o.className),
|
|
1571
|
+
IdName: o.labelName,
|
|
1572
|
+
"FeatureName PropertyName": o.propertyName,
|
|
1573
|
+
AttributeName: o.attributeName,
|
|
1574
|
+
NumberLiteral: o.number,
|
|
1575
|
+
KeywordQuery: o.keyword,
|
|
1576
|
+
UnaryQueryOp: o.operatorKeyword,
|
|
1577
|
+
"CallTag ValueName": o.atom,
|
|
1578
|
+
VariableName: o.variableName,
|
|
1579
|
+
Callee: o.operatorKeyword,
|
|
1580
|
+
Unit: o.unit,
|
|
1581
|
+
"UniversalSelector NestingSelector": o.definitionOperator,
|
|
1582
|
+
MatchOp: o.compareOperator,
|
|
1583
|
+
"ChildOp SiblingOp, LogicOp": o.logicOperator,
|
|
1584
|
+
BinOp: o.arithmeticOperator,
|
|
1585
|
+
Important: o.modifier,
|
|
1586
|
+
Comment: o.blockComment,
|
|
1587
|
+
ColorLiteral: o.color,
|
|
1588
|
+
"ParenthesizedContent StringLiteral": o.string,
|
|
1589
|
+
":": o.punctuation,
|
|
1590
|
+
"PseudoOp #": o.derefOperator,
|
|
1591
|
+
"; ,": o.separator,
|
|
1592
|
+
"( )": o.paren,
|
|
1593
|
+
"[ ]": o.squareBracket,
|
|
1594
|
+
"{ }": o.brace
|
|
1595
|
+
}), Nt = { __proto__: null, lang: 32, "nth-child": 32, "nth-last-child": 32, "nth-of-type": 32, "nth-last-of-type": 32, dir: 32, "host-context": 32, url: 60, "url-prefix": 60, domain: 60, regexp: 60, selector: 134 }, Bt = { __proto__: null, "@import": 114, "@media": 138, "@charset": 142, "@namespace": 146, "@keyframes": 152, "@supports": 164 }, Dt = { __proto__: null, not: 128, only: 128 }, Jt = y.deserialize({
|
|
1596
|
+
version: 14,
|
|
1597
|
+
states: "9bQYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DPO$vQ[O'#DTOOQP'#Ej'#EjO${QdO'#DeO%gQ[O'#DrO${QdO'#DtO%xQ[O'#DvO&TQ[O'#DyO&]Q[O'#EPO&kQ[O'#EROOQS'#Ei'#EiOOQS'#EU'#EUQYQ[OOO&rQXO'#CdO'gQWO'#DaO'lQWO'#EpO'wQ[O'#EpQOQWOOP(RO#tO'#C_POOO)C@X)C@XOOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(^Q[O'#EXO(xQWO,58{O)QQ[O,59SO$qQ[O,59kO$vQ[O,59oO(^Q[O,59sO(^Q[O,59uO(^Q[O,59vO)]Q[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO)dQWO,59SO)iQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO)nQ`O,59oOOQS'#Cp'#CpO${QdO'#CqO)vQvO'#CsO+TQtO,5:POOQO'#Cx'#CxO)iQWO'#CwO+iQWO'#CyOOQS'#Em'#EmOOQO'#Dh'#DhO+nQ[O'#DoO+|QWO'#EqO&]Q[O'#DmO,[QWO'#DpOOQO'#Er'#ErO({QWO,5:^O,aQpO,5:`OOQS'#Dx'#DxO,iQWO,5:bO,nQ[O,5:bOOQO'#D{'#D{O,vQWO,5:eO,{QWO,5:kO-TQWO,5:mOOQS-E8S-E8SO${QdO,59{O-]Q[O'#EZO-jQWO,5;[O-jQWO,5;[POOO'#ET'#ETP-uO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.lQXO,5:sOOQO-E8V-E8VOOQS1G.g1G.gOOQP1G.n1G.nO)dQWO1G.nO)iQWO1G.nOOQP1G/V1G/VO.yQ`O1G/ZO/dQXO1G/_O/zQXO1G/aO0bQXO1G/bO0xQWO,59zO0}Q[O'#DOO1UQdO'#CoOOQP1G/Z1G/ZO${QdO1G/ZO1]QpO,59]OOQS,59_,59_O${QdO,59aO1eQWO1G/kOOQS,59c,59cO1jQ!bO,59eO1rQWO'#DhO1}QWO,5:TO2SQWO,5:ZO&]Q[O,5:VO&]Q[O'#E[O2[QWO,5;]O2gQWO,5:XO(^Q[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O2xQWO1G/|O2}QdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XO3YQtO1G/gOOQO,5:u,5:uO3pQ[O,5:uOOQO-E8X-E8XO3}QWO1G0vPOOO-E8R-E8RPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$u7+$uO${QdO7+$uOOQS1G/f1G/fO4YQXO'#EoO4aQWO,59jO4fQtO'#EVO5ZQdO'#ElO5eQWO,59ZO5jQpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO5rQWO1G/PO${QdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO5wQWO,5:vOOQO-E8Y-E8YO6VQXO1G/vOOQS7+%h7+%hO6^QYO'#CsOOQO'#EO'#EOO6iQ`O'#D}OOQO'#D}'#D}O6tQWO'#E]O6|QdO,5:hOOQS,5:h,5:hO7XQtO'#EYO${QdO'#EYO8VQdO7+%ROOQO7+%R7+%ROOQO1G0a1G0aO8jQpO<<HaO8rQWO,5;ZOOQP1G/U1G/UOOQS-E8T-E8TO${QdO'#EWO8zQWO,5;WOOQT1G.u1G.uOOQP<<Ha<<HaOOQS7+$k7+$kO9SQdO7+%ZOOQO7+%b7+%bOOQO,5:i,5:iO3QQdO'#E^O6tQWO,5:wOOQS,5:w,5:wOOQS-E8Z-E8ZOOQS1G0S1G0SO9ZQtO,5:tOOQS-E8W-E8WOOQO<<Hm<<HmOOQPAN={AN={O:XQdO,5:rOOQO-E8U-E8UOOQO<<Hu<<HuOOQO,5:x,5:xOOQO-E8[-E8[OOQS1G0c1G0c",
|
|
1598
|
+
stateData: ":k~O#WOS#XQQ~OUYOXYO]VO^VOtWOxXO!YaO!ZZO!g[O!i]O!k^O!n_O!t`O#URO#_TO~OQfOUYOXYO]VO^VOtWOxXO!YaO!ZZO!g[O!i]O!k^O!n_O!t`O#UeO#_TO~O#R#dP~P!ZO#XjO~O#UlO~O]qO^qOpoOtrOxsO|tO!PvO#SuO#_nO~O!RwO~P#pO`}O#TzO#UyO~O#U!OO~O#U!QO~OQ!ZOb!TOf!ZOh!ZOn!YO#T!WO#U!SO#b!UO~Ob!]O!b!_O!e!`O#U![O!R#eP~Oh!eOn!YO#U!dO~Oh!gO#U!gO~Ob!]O!b!_O!e!`O#U![O~O!W#eP~P%gO]WX]!UX^WXpWXtWXxWX|WX!PWX!RWX#SWX#_WX~O]!lO~O!W!mO#R#dX!Q#dX~O#R#dX!Q#dX~P!ZO#Y!pO#Z!pO#[!rO~OUYOXYO]VO^VOtWOxXO#URO#_TO~OpoO!RwO~O`!yO#TzO#UyO~O!Q#dP~P!ZOb#QO~Ob#RO~Ov#SOz#TO~OP#VObgXjgX!WgX!bgX!egX#UgXagXQgXfgXhgXngXpgX!VgX#RgX#TgX#bgXvgX!QgX~Ob!]Oj#WO!b!_O!e!`O#U![O!W#eP~Ob#ZO~Ob!]O!b!_O!e!`O#U#[O~Op#`O!`#_O!R#eX!W#eX~Ob#cO~Oj#WO!W#eO~O!W#fO~Oh#gOn!YO~O!R#hO~O!RwO!`#_O~O!RwO!W#kO~O!W!}X#R!}X!Q!}X~P!ZO!W!mO#R#da!Q#da~O#Y!pO#Z!pO#[#rO~O]qO^qOtrOxsO|tO!PvO#SuO#_nO~Op!{a!R!{aa!{a~P.QOv#tOz#uO~O]qO^qOtrOxsO#_nO~Op{i|{i!P{i!R{i#S{ia{i~P/ROp}i|}i!P}i!R}i#S}ia}i~P/ROp!Oi|!Oi!P!Oi!R!Oi#S!Oia!Oi~P/RO!Q#vO~Oa#cP~P(^Oa#`P~P${Oa#}Oj#WO~O!W$PO~Oh$QOo$QO~O]!^Xa![X!`![X~O]$RO~Oa$SO!`#_O~Op#`O!R#ea!W#ea~O!`#_Op!aa!R!aa!W!aaa!aa~O!W$XO~O!Q$`O#U$ZO#b$YO~Oj#WOp$bO!V$dO!W!Ti#R!Ti!Q!Ti~P${O!W!}a#R!}a!Q!}a~P!ZO!W!mO#R#di!Q#di~Oa#cX~P#pOa$hO~Oj#WOQ!yXa!yXb!yXf!yXh!yXn!yXp!yX#T!yX#U!yX#b!yX~Op$jOa#`X~P${Oa$lO~Oj#WOv$mO~Oa$nO~O!`#_Op#Oa!R#Oa!W#Oa~Oa$pO~P.QOP#VOpgX!RgX~O#b$YOp!qX!R!qX~Op$rO!RwO~O!Q$vO#U$ZO#b$YO~Oj#WOQ!|Xb!|Xf!|Xh!|Xn!|Xp!|X!V!|X!W!|X#R!|X#T!|X#U!|X#b!|X!Q!|X~Op$bO!V$yO!W!Tq#R!Tq!Q!Tq~P${Oj#WOv$zO~OpoOa#ca~Op$jOa#`a~Oa$}O~P${Oj#WOQ!|ab!|af!|ah!|an!|ap!|a!V!|a!W!|a#R!|a#T!|a#U!|a#b!|a!Q!|a~Oa!zap!za~P${O#Wo#X#bj!P#b~",
|
|
1599
|
+
goto: "-Y#gPPP#hP#kP#t$TP#t$d#tPP$jPPP$p$y$yP%]P$yP$y%w&ZPPP&s&y#tP'PP#tP'VP#tP#t#tPPP']'r(PPP#kPP(W(W(b(WP(WP(W(WP#kP#kP#kP(e#kP(h(k(n(u#kP#kP(z)Q)a)o)u*P*V*a*g*mPPPPPPPPPP*s*|P+i+lP,b,e,k,tRkQ_bOPdhw!m#nkYOPdhotuvw!m#Q#c#nkSOPdhotuvw!m#Q#c#nQmTR!snQ{VR!wqQ!w}Q#Y!XR#s!yq!ZZ]!T!l#R#T#W#l#u#z$R$b$c$j$o${p!ZZ]!T!l#R#T#W#l#u#z$R$b$c$j$o${U$]#h$_$rR$q$[q!XZ]!T!l#R#T#W#l#u#z$R$b$c$j$o${p!ZZ]!T!l#R#T#W#l#u#z$R$b$c$j$o${Q!e^R#g!fQ|VR!xqQ!w|R#s!xQ!PWR!zrQ!RXR!{sQxUQ!vpQ#d!bQ#j!iQ#k!jQ$t$^R%Q$sSgPwQ!ohQ#m!mR$e#nZfPhw!m#na!a[`a!V!]!_#_#`R#]!]R!f^R!h_R#i!hS$^#h$_R%O$rV$[#h$_$rQ!qjR#q!qQdOShPwU!kdh#nR#n!mQ#z#RU$i#z$o${Q$o$RR${$jQ$k#zR$|$kQpUS!up$gR$g#wQ$c#lR$x$cQ!ngS#o!n#pR#p!oQ#a!^R$V#aQ$_#hR$u$_Q$s$^R%P$s_cOPdhw!m#n^UOPdhw!m#nQ!toQ!|tQ!}uQ#OvQ#w#QR$W#cR#{#RQ!VZQ!c]Q#U!TQ#l!l[#y#R#z$R$j$o${Q#|#TQ$O#WS$a#l$cQ$f#uR$w$bR#x#QQiPR#PwQ!b[Q!jaR#X!VU!^[a!VQ!i`Q#^!]Q#b!_Q$T#_R$U#`",
|
|
1600
|
+
nodeNames: "⚠ Unit VariableName Comment StyleSheet RuleSet UniversalSelector TagSelector TagName NestingSelector ClassSelector ClassName PseudoClassSelector : :: PseudoClassName PseudoClassName ) ( ArgList ValueName ParenthesizedValue ColorLiteral NumberLiteral StringLiteral BinaryExpression BinOp CallExpression Callee CallLiteral CallTag ParenthesizedContent , PseudoClassName ArgList IdSelector # IdName ] AttributeSelector [ AttributeName MatchOp ChildSelector ChildOp DescendantSelector SiblingSelector SiblingOp } { Block Declaration PropertyName Important ; ImportStatement AtKeyword import KeywordQuery FeatureQuery FeatureName BinaryQuery LogicOp UnaryQuery UnaryQueryOp ParenthesizedQuery SelectorQuery selector MediaStatement media CharsetStatement charset NamespaceStatement namespace NamespaceName KeyframesStatement keyframes KeyframeName KeyframeList KeyframeSelector KeyframeRangeName SupportsStatement supports AtRule Styles",
|
|
1601
|
+
maxTerm: 114,
|
|
1602
|
+
nodeProps: [
|
|
1603
|
+
["openedBy", 17, "(", 48, "{"],
|
|
1604
|
+
["closedBy", 18, ")", 49, "}"]
|
|
1605
|
+
],
|
|
1606
|
+
propSources: [Et],
|
|
1607
|
+
skippedNodes: [0, 3, 85],
|
|
1608
|
+
repeatNodeCount: 10,
|
|
1609
|
+
tokenData: "J^~R!^OX$}X^%u^p$}pq%uqr)Xrs.Rst/utu6duv$}vw7^wx7oxy9^yz9oz{9t{|:_|}?Q}!O?c!O!P@Q!P!Q@i!Q![Ab![!]B]!]!^CX!^!_$}!_!`Cj!`!aC{!a!b$}!b!cDw!c!}$}!}#OFa#O#P$}#P#QFr#Q#R6d#R#T$}#T#UGT#U#c$}#c#dHf#d#o$}#o#pH{#p#q6d#q#rI^#r#sIo#s#y$}#y#z%u#z$f$}$f$g%u$g#BY$}#BY#BZ%u#BZ$IS$}$IS$I_%u$I_$I|$}$I|$JO%u$JO$JT$}$JT$JU%u$JU$KV$}$KV$KW%u$KW&FU$}&FU&FV%u&FV;'S$};'S;=`JW<%lO$}`%QSOy%^z;'S%^;'S;=`%o<%lO%^`%cSo`Oy%^z;'S%^;'S;=`%o<%lO%^`%rP;=`<%l%^~%zh#W~OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^~'mh#W~o`OX%^X^'f^p%^pq'fqy%^z#y%^#y#z'f#z$f%^$f$g'f$g#BY%^#BY#BZ'f#BZ$IS%^$IS$I_'f$I_$I|%^$I|$JO'f$JO$JT%^$JT$JU'f$JU$KV%^$KV$KW'f$KW&FU%^&FU&FV'f&FV;'S%^;'S;=`%o<%lO%^l)[UOy%^z#]%^#]#^)n#^;'S%^;'S;=`%o<%lO%^l)sUo`Oy%^z#a%^#a#b*V#b;'S%^;'S;=`%o<%lO%^l*[Uo`Oy%^z#d%^#d#e*n#e;'S%^;'S;=`%o<%lO%^l*sUo`Oy%^z#c%^#c#d+V#d;'S%^;'S;=`%o<%lO%^l+[Uo`Oy%^z#f%^#f#g+n#g;'S%^;'S;=`%o<%lO%^l+sUo`Oy%^z#h%^#h#i,V#i;'S%^;'S;=`%o<%lO%^l,[Uo`Oy%^z#T%^#T#U,n#U;'S%^;'S;=`%o<%lO%^l,sUo`Oy%^z#b%^#b#c-V#c;'S%^;'S;=`%o<%lO%^l-[Uo`Oy%^z#h%^#h#i-n#i;'S%^;'S;=`%o<%lO%^l-uS!V[o`Oy%^z;'S%^;'S;=`%o<%lO%^~.UWOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o<%lO.R~.sOh~~.vRO;'S.R;'S;=`/P;=`O.R~/SXOY.RZr.Rrs.ns#O.R#O#P.s#P;'S.R;'S;=`/o;=`<%l.R<%lO.R~/rP;=`<%l.Rn/zYtQOy%^z!Q%^!Q![0j![!c%^!c!i0j!i#T%^#T#Z0j#Z;'S%^;'S;=`%o<%lO%^l0oYo`Oy%^z!Q%^!Q![1_![!c%^!c!i1_!i#T%^#T#Z1_#Z;'S%^;'S;=`%o<%lO%^l1dYo`Oy%^z!Q%^!Q![2S![!c%^!c!i2S!i#T%^#T#Z2S#Z;'S%^;'S;=`%o<%lO%^l2ZYf[o`Oy%^z!Q%^!Q![2y![!c%^!c!i2y!i#T%^#T#Z2y#Z;'S%^;'S;=`%o<%lO%^l3QYf[o`Oy%^z!Q%^!Q![3p![!c%^!c!i3p!i#T%^#T#Z3p#Z;'S%^;'S;=`%o<%lO%^l3uYo`Oy%^z!Q%^!Q![4e![!c%^!c!i4e!i#T%^#T#Z4e#Z;'S%^;'S;=`%o<%lO%^l4lYf[o`Oy%^z!Q%^!Q![5[![!c%^!c!i5[!i#T%^#T#Z5[#Z;'S%^;'S;=`%o<%lO%^l5aYo`Oy%^z!Q%^!Q![6P![!c%^!c!i6P!i#T%^#T#Z6P#Z;'S%^;'S;=`%o<%lO%^l6WSf[o`Oy%^z;'S%^;'S;=`%o<%lO%^d6gUOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^d7QSzSo`Oy%^z;'S%^;'S;=`%o<%lO%^b7cSXQOy%^z;'S%^;'S;=`%o<%lO%^~7rWOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W<%lO7o~8_RO;'S7o;'S;=`8h;=`O7o~8kXOY7oZw7owx.nx#O7o#O#P8[#P;'S7o;'S;=`9W;=`<%l7o<%lO7o~9ZP;=`<%l7on9cSb^Oy%^z;'S%^;'S;=`%o<%lO%^~9tOa~n9{UUQjWOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^n:fWjW!PQOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#b[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l<cYo`Oy%^z{%^{|=R|}%^}!O=R!O!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=WUo`Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l=qUo`#b[Oy%^z!Q%^!Q![=j![;'S%^;'S;=`%o<%lO%^l>[[o`#b[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSp^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#_QOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#X~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#b[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!W^Oy%^z;'S%^;'S;=`%o<%lO%^dCoSzSOy%^z;'S%^;'S;=`%o<%lO%^bDQU|QOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS|Qo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[!YQo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bFfSxQOy%^z;'S%^;'S;=`%o<%lO%^lFwSv[Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!`Qo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!RUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!Q^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!PQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",
|
|
1610
|
+
tokenizers: [It, At, Gt, 1, 2, 3, 4, new E("m~RRYZ[z{a~~g~aO#Z~~dP!P!Qg~lO#[~~", 28, 102)],
|
|
1611
|
+
topRules: { StyleSheet: [0, 4], Styles: [1, 84] },
|
|
1612
|
+
specialized: [{ term: 97, get: (e) => Nt[e] || -1 }, { term: 56, get: (e) => Bt[e] || -1 }, { term: 98, get: (e) => Dt[e] || -1 }],
|
|
1613
|
+
tokenPrec: 1169
|
|
1614
|
+
});
|
|
1615
|
+
let H = null;
|
|
1616
|
+
function OO() {
|
|
1617
|
+
if (!H && typeof document == "object" && document.body) {
|
|
1618
|
+
let { style: e } = document.body, O = [], t = /* @__PURE__ */ new Set();
|
|
1619
|
+
for (let a in e)
|
|
1620
|
+
a != "cssText" && a != "cssFloat" && typeof e[a] == "string" && (/[A-Z]/.test(a) && (a = a.replace(/[A-Z]/g, (i) => "-" + i.toLowerCase())), t.has(a) || (O.push(a), t.add(a)));
|
|
1621
|
+
H = O.sort().map((a) => ({ type: "property", label: a }));
|
|
1622
|
+
}
|
|
1623
|
+
return H || [];
|
|
1624
|
+
}
|
|
1625
|
+
const WO = /* @__PURE__ */ [
|
|
1626
|
+
"active",
|
|
1627
|
+
"after",
|
|
1628
|
+
"any-link",
|
|
1629
|
+
"autofill",
|
|
1630
|
+
"backdrop",
|
|
1631
|
+
"before",
|
|
1632
|
+
"checked",
|
|
1633
|
+
"cue",
|
|
1634
|
+
"default",
|
|
1635
|
+
"defined",
|
|
1636
|
+
"disabled",
|
|
1637
|
+
"empty",
|
|
1638
|
+
"enabled",
|
|
1639
|
+
"file-selector-button",
|
|
1640
|
+
"first",
|
|
1641
|
+
"first-child",
|
|
1642
|
+
"first-letter",
|
|
1643
|
+
"first-line",
|
|
1644
|
+
"first-of-type",
|
|
1645
|
+
"focus",
|
|
1646
|
+
"focus-visible",
|
|
1647
|
+
"focus-within",
|
|
1648
|
+
"fullscreen",
|
|
1649
|
+
"has",
|
|
1650
|
+
"host",
|
|
1651
|
+
"host-context",
|
|
1652
|
+
"hover",
|
|
1653
|
+
"in-range",
|
|
1654
|
+
"indeterminate",
|
|
1655
|
+
"invalid",
|
|
1656
|
+
"is",
|
|
1657
|
+
"lang",
|
|
1658
|
+
"last-child",
|
|
1659
|
+
"last-of-type",
|
|
1660
|
+
"left",
|
|
1661
|
+
"link",
|
|
1662
|
+
"marker",
|
|
1663
|
+
"modal",
|
|
1664
|
+
"not",
|
|
1665
|
+
"nth-child",
|
|
1666
|
+
"nth-last-child",
|
|
1667
|
+
"nth-last-of-type",
|
|
1668
|
+
"nth-of-type",
|
|
1669
|
+
"only-child",
|
|
1670
|
+
"only-of-type",
|
|
1671
|
+
"optional",
|
|
1672
|
+
"out-of-range",
|
|
1673
|
+
"part",
|
|
1674
|
+
"placeholder",
|
|
1675
|
+
"placeholder-shown",
|
|
1676
|
+
"read-only",
|
|
1677
|
+
"read-write",
|
|
1678
|
+
"required",
|
|
1679
|
+
"right",
|
|
1680
|
+
"root",
|
|
1681
|
+
"scope",
|
|
1682
|
+
"selection",
|
|
1683
|
+
"slotted",
|
|
1684
|
+
"target",
|
|
1685
|
+
"target-text",
|
|
1686
|
+
"valid",
|
|
1687
|
+
"visited",
|
|
1688
|
+
"where"
|
|
1689
|
+
].map((e) => ({ type: "class", label: e })), qO = /* @__PURE__ */ [
|
|
1690
|
+
"above",
|
|
1691
|
+
"absolute",
|
|
1692
|
+
"activeborder",
|
|
1693
|
+
"additive",
|
|
1694
|
+
"activecaption",
|
|
1695
|
+
"after-white-space",
|
|
1696
|
+
"ahead",
|
|
1697
|
+
"alias",
|
|
1698
|
+
"all",
|
|
1699
|
+
"all-scroll",
|
|
1700
|
+
"alphabetic",
|
|
1701
|
+
"alternate",
|
|
1702
|
+
"always",
|
|
1703
|
+
"antialiased",
|
|
1704
|
+
"appworkspace",
|
|
1705
|
+
"asterisks",
|
|
1706
|
+
"attr",
|
|
1707
|
+
"auto",
|
|
1708
|
+
"auto-flow",
|
|
1709
|
+
"avoid",
|
|
1710
|
+
"avoid-column",
|
|
1711
|
+
"avoid-page",
|
|
1712
|
+
"avoid-region",
|
|
1713
|
+
"axis-pan",
|
|
1714
|
+
"background",
|
|
1715
|
+
"backwards",
|
|
1716
|
+
"baseline",
|
|
1717
|
+
"below",
|
|
1718
|
+
"bidi-override",
|
|
1719
|
+
"blink",
|
|
1720
|
+
"block",
|
|
1721
|
+
"block-axis",
|
|
1722
|
+
"bold",
|
|
1723
|
+
"bolder",
|
|
1724
|
+
"border",
|
|
1725
|
+
"border-box",
|
|
1726
|
+
"both",
|
|
1727
|
+
"bottom",
|
|
1728
|
+
"break",
|
|
1729
|
+
"break-all",
|
|
1730
|
+
"break-word",
|
|
1731
|
+
"bullets",
|
|
1732
|
+
"button",
|
|
1733
|
+
"button-bevel",
|
|
1734
|
+
"buttonface",
|
|
1735
|
+
"buttonhighlight",
|
|
1736
|
+
"buttonshadow",
|
|
1737
|
+
"buttontext",
|
|
1738
|
+
"calc",
|
|
1739
|
+
"capitalize",
|
|
1740
|
+
"caps-lock-indicator",
|
|
1741
|
+
"caption",
|
|
1742
|
+
"captiontext",
|
|
1743
|
+
"caret",
|
|
1744
|
+
"cell",
|
|
1745
|
+
"center",
|
|
1746
|
+
"checkbox",
|
|
1747
|
+
"circle",
|
|
1748
|
+
"cjk-decimal",
|
|
1749
|
+
"clear",
|
|
1750
|
+
"clip",
|
|
1751
|
+
"close-quote",
|
|
1752
|
+
"col-resize",
|
|
1753
|
+
"collapse",
|
|
1754
|
+
"color",
|
|
1755
|
+
"color-burn",
|
|
1756
|
+
"color-dodge",
|
|
1757
|
+
"column",
|
|
1758
|
+
"column-reverse",
|
|
1759
|
+
"compact",
|
|
1760
|
+
"condensed",
|
|
1761
|
+
"contain",
|
|
1762
|
+
"content",
|
|
1763
|
+
"contents",
|
|
1764
|
+
"content-box",
|
|
1765
|
+
"context-menu",
|
|
1766
|
+
"continuous",
|
|
1767
|
+
"copy",
|
|
1768
|
+
"counter",
|
|
1769
|
+
"counters",
|
|
1770
|
+
"cover",
|
|
1771
|
+
"crop",
|
|
1772
|
+
"cross",
|
|
1773
|
+
"crosshair",
|
|
1774
|
+
"currentcolor",
|
|
1775
|
+
"cursive",
|
|
1776
|
+
"cyclic",
|
|
1777
|
+
"darken",
|
|
1778
|
+
"dashed",
|
|
1779
|
+
"decimal",
|
|
1780
|
+
"decimal-leading-zero",
|
|
1781
|
+
"default",
|
|
1782
|
+
"default-button",
|
|
1783
|
+
"dense",
|
|
1784
|
+
"destination-atop",
|
|
1785
|
+
"destination-in",
|
|
1786
|
+
"destination-out",
|
|
1787
|
+
"destination-over",
|
|
1788
|
+
"difference",
|
|
1789
|
+
"disc",
|
|
1790
|
+
"discard",
|
|
1791
|
+
"disclosure-closed",
|
|
1792
|
+
"disclosure-open",
|
|
1793
|
+
"document",
|
|
1794
|
+
"dot-dash",
|
|
1795
|
+
"dot-dot-dash",
|
|
1796
|
+
"dotted",
|
|
1797
|
+
"double",
|
|
1798
|
+
"down",
|
|
1799
|
+
"e-resize",
|
|
1800
|
+
"ease",
|
|
1801
|
+
"ease-in",
|
|
1802
|
+
"ease-in-out",
|
|
1803
|
+
"ease-out",
|
|
1804
|
+
"element",
|
|
1805
|
+
"ellipse",
|
|
1806
|
+
"ellipsis",
|
|
1807
|
+
"embed",
|
|
1808
|
+
"end",
|
|
1809
|
+
"ethiopic-abegede-gez",
|
|
1810
|
+
"ethiopic-halehame-aa-er",
|
|
1811
|
+
"ethiopic-halehame-gez",
|
|
1812
|
+
"ew-resize",
|
|
1813
|
+
"exclusion",
|
|
1814
|
+
"expanded",
|
|
1815
|
+
"extends",
|
|
1816
|
+
"extra-condensed",
|
|
1817
|
+
"extra-expanded",
|
|
1818
|
+
"fantasy",
|
|
1819
|
+
"fast",
|
|
1820
|
+
"fill",
|
|
1821
|
+
"fill-box",
|
|
1822
|
+
"fixed",
|
|
1823
|
+
"flat",
|
|
1824
|
+
"flex",
|
|
1825
|
+
"flex-end",
|
|
1826
|
+
"flex-start",
|
|
1827
|
+
"footnotes",
|
|
1828
|
+
"forwards",
|
|
1829
|
+
"from",
|
|
1830
|
+
"geometricPrecision",
|
|
1831
|
+
"graytext",
|
|
1832
|
+
"grid",
|
|
1833
|
+
"groove",
|
|
1834
|
+
"hand",
|
|
1835
|
+
"hard-light",
|
|
1836
|
+
"help",
|
|
1837
|
+
"hidden",
|
|
1838
|
+
"hide",
|
|
1839
|
+
"higher",
|
|
1840
|
+
"highlight",
|
|
1841
|
+
"highlighttext",
|
|
1842
|
+
"horizontal",
|
|
1843
|
+
"hsl",
|
|
1844
|
+
"hsla",
|
|
1845
|
+
"hue",
|
|
1846
|
+
"icon",
|
|
1847
|
+
"ignore",
|
|
1848
|
+
"inactiveborder",
|
|
1849
|
+
"inactivecaption",
|
|
1850
|
+
"inactivecaptiontext",
|
|
1851
|
+
"infinite",
|
|
1852
|
+
"infobackground",
|
|
1853
|
+
"infotext",
|
|
1854
|
+
"inherit",
|
|
1855
|
+
"initial",
|
|
1856
|
+
"inline",
|
|
1857
|
+
"inline-axis",
|
|
1858
|
+
"inline-block",
|
|
1859
|
+
"inline-flex",
|
|
1860
|
+
"inline-grid",
|
|
1861
|
+
"inline-table",
|
|
1862
|
+
"inset",
|
|
1863
|
+
"inside",
|
|
1864
|
+
"intrinsic",
|
|
1865
|
+
"invert",
|
|
1866
|
+
"italic",
|
|
1867
|
+
"justify",
|
|
1868
|
+
"keep-all",
|
|
1869
|
+
"landscape",
|
|
1870
|
+
"large",
|
|
1871
|
+
"larger",
|
|
1872
|
+
"left",
|
|
1873
|
+
"level",
|
|
1874
|
+
"lighter",
|
|
1875
|
+
"lighten",
|
|
1876
|
+
"line-through",
|
|
1877
|
+
"linear",
|
|
1878
|
+
"linear-gradient",
|
|
1879
|
+
"lines",
|
|
1880
|
+
"list-item",
|
|
1881
|
+
"listbox",
|
|
1882
|
+
"listitem",
|
|
1883
|
+
"local",
|
|
1884
|
+
"logical",
|
|
1885
|
+
"loud",
|
|
1886
|
+
"lower",
|
|
1887
|
+
"lower-hexadecimal",
|
|
1888
|
+
"lower-latin",
|
|
1889
|
+
"lower-norwegian",
|
|
1890
|
+
"lowercase",
|
|
1891
|
+
"ltr",
|
|
1892
|
+
"luminosity",
|
|
1893
|
+
"manipulation",
|
|
1894
|
+
"match",
|
|
1895
|
+
"matrix",
|
|
1896
|
+
"matrix3d",
|
|
1897
|
+
"medium",
|
|
1898
|
+
"menu",
|
|
1899
|
+
"menutext",
|
|
1900
|
+
"message-box",
|
|
1901
|
+
"middle",
|
|
1902
|
+
"min-intrinsic",
|
|
1903
|
+
"mix",
|
|
1904
|
+
"monospace",
|
|
1905
|
+
"move",
|
|
1906
|
+
"multiple",
|
|
1907
|
+
"multiple_mask_images",
|
|
1908
|
+
"multiply",
|
|
1909
|
+
"n-resize",
|
|
1910
|
+
"narrower",
|
|
1911
|
+
"ne-resize",
|
|
1912
|
+
"nesw-resize",
|
|
1913
|
+
"no-close-quote",
|
|
1914
|
+
"no-drop",
|
|
1915
|
+
"no-open-quote",
|
|
1916
|
+
"no-repeat",
|
|
1917
|
+
"none",
|
|
1918
|
+
"normal",
|
|
1919
|
+
"not-allowed",
|
|
1920
|
+
"nowrap",
|
|
1921
|
+
"ns-resize",
|
|
1922
|
+
"numbers",
|
|
1923
|
+
"numeric",
|
|
1924
|
+
"nw-resize",
|
|
1925
|
+
"nwse-resize",
|
|
1926
|
+
"oblique",
|
|
1927
|
+
"opacity",
|
|
1928
|
+
"open-quote",
|
|
1929
|
+
"optimizeLegibility",
|
|
1930
|
+
"optimizeSpeed",
|
|
1931
|
+
"outset",
|
|
1932
|
+
"outside",
|
|
1933
|
+
"outside-shape",
|
|
1934
|
+
"overlay",
|
|
1935
|
+
"overline",
|
|
1936
|
+
"padding",
|
|
1937
|
+
"padding-box",
|
|
1938
|
+
"painted",
|
|
1939
|
+
"page",
|
|
1940
|
+
"paused",
|
|
1941
|
+
"perspective",
|
|
1942
|
+
"pinch-zoom",
|
|
1943
|
+
"plus-darker",
|
|
1944
|
+
"plus-lighter",
|
|
1945
|
+
"pointer",
|
|
1946
|
+
"polygon",
|
|
1947
|
+
"portrait",
|
|
1948
|
+
"pre",
|
|
1949
|
+
"pre-line",
|
|
1950
|
+
"pre-wrap",
|
|
1951
|
+
"preserve-3d",
|
|
1952
|
+
"progress",
|
|
1953
|
+
"push-button",
|
|
1954
|
+
"radial-gradient",
|
|
1955
|
+
"radio",
|
|
1956
|
+
"read-only",
|
|
1957
|
+
"read-write",
|
|
1958
|
+
"read-write-plaintext-only",
|
|
1959
|
+
"rectangle",
|
|
1960
|
+
"region",
|
|
1961
|
+
"relative",
|
|
1962
|
+
"repeat",
|
|
1963
|
+
"repeating-linear-gradient",
|
|
1964
|
+
"repeating-radial-gradient",
|
|
1965
|
+
"repeat-x",
|
|
1966
|
+
"repeat-y",
|
|
1967
|
+
"reset",
|
|
1968
|
+
"reverse",
|
|
1969
|
+
"rgb",
|
|
1970
|
+
"rgba",
|
|
1971
|
+
"ridge",
|
|
1972
|
+
"right",
|
|
1973
|
+
"rotate",
|
|
1974
|
+
"rotate3d",
|
|
1975
|
+
"rotateX",
|
|
1976
|
+
"rotateY",
|
|
1977
|
+
"rotateZ",
|
|
1978
|
+
"round",
|
|
1979
|
+
"row",
|
|
1980
|
+
"row-resize",
|
|
1981
|
+
"row-reverse",
|
|
1982
|
+
"rtl",
|
|
1983
|
+
"run-in",
|
|
1984
|
+
"running",
|
|
1985
|
+
"s-resize",
|
|
1986
|
+
"sans-serif",
|
|
1987
|
+
"saturation",
|
|
1988
|
+
"scale",
|
|
1989
|
+
"scale3d",
|
|
1990
|
+
"scaleX",
|
|
1991
|
+
"scaleY",
|
|
1992
|
+
"scaleZ",
|
|
1993
|
+
"screen",
|
|
1994
|
+
"scroll",
|
|
1995
|
+
"scrollbar",
|
|
1996
|
+
"scroll-position",
|
|
1997
|
+
"se-resize",
|
|
1998
|
+
"self-start",
|
|
1999
|
+
"self-end",
|
|
2000
|
+
"semi-condensed",
|
|
2001
|
+
"semi-expanded",
|
|
2002
|
+
"separate",
|
|
2003
|
+
"serif",
|
|
2004
|
+
"show",
|
|
2005
|
+
"single",
|
|
2006
|
+
"skew",
|
|
2007
|
+
"skewX",
|
|
2008
|
+
"skewY",
|
|
2009
|
+
"skip-white-space",
|
|
2010
|
+
"slide",
|
|
2011
|
+
"slider-horizontal",
|
|
2012
|
+
"slider-vertical",
|
|
2013
|
+
"sliderthumb-horizontal",
|
|
2014
|
+
"sliderthumb-vertical",
|
|
2015
|
+
"slow",
|
|
2016
|
+
"small",
|
|
2017
|
+
"small-caps",
|
|
2018
|
+
"small-caption",
|
|
2019
|
+
"smaller",
|
|
2020
|
+
"soft-light",
|
|
2021
|
+
"solid",
|
|
2022
|
+
"source-atop",
|
|
2023
|
+
"source-in",
|
|
2024
|
+
"source-out",
|
|
2025
|
+
"source-over",
|
|
2026
|
+
"space",
|
|
2027
|
+
"space-around",
|
|
2028
|
+
"space-between",
|
|
2029
|
+
"space-evenly",
|
|
2030
|
+
"spell-out",
|
|
2031
|
+
"square",
|
|
2032
|
+
"start",
|
|
2033
|
+
"static",
|
|
2034
|
+
"status-bar",
|
|
2035
|
+
"stretch",
|
|
2036
|
+
"stroke",
|
|
2037
|
+
"stroke-box",
|
|
2038
|
+
"sub",
|
|
2039
|
+
"subpixel-antialiased",
|
|
2040
|
+
"svg_masks",
|
|
2041
|
+
"super",
|
|
2042
|
+
"sw-resize",
|
|
2043
|
+
"symbolic",
|
|
2044
|
+
"symbols",
|
|
2045
|
+
"system-ui",
|
|
2046
|
+
"table",
|
|
2047
|
+
"table-caption",
|
|
2048
|
+
"table-cell",
|
|
2049
|
+
"table-column",
|
|
2050
|
+
"table-column-group",
|
|
2051
|
+
"table-footer-group",
|
|
2052
|
+
"table-header-group",
|
|
2053
|
+
"table-row",
|
|
2054
|
+
"table-row-group",
|
|
2055
|
+
"text",
|
|
2056
|
+
"text-bottom",
|
|
2057
|
+
"text-top",
|
|
2058
|
+
"textarea",
|
|
2059
|
+
"textfield",
|
|
2060
|
+
"thick",
|
|
2061
|
+
"thin",
|
|
2062
|
+
"threeddarkshadow",
|
|
2063
|
+
"threedface",
|
|
2064
|
+
"threedhighlight",
|
|
2065
|
+
"threedlightshadow",
|
|
2066
|
+
"threedshadow",
|
|
2067
|
+
"to",
|
|
2068
|
+
"top",
|
|
2069
|
+
"transform",
|
|
2070
|
+
"translate",
|
|
2071
|
+
"translate3d",
|
|
2072
|
+
"translateX",
|
|
2073
|
+
"translateY",
|
|
2074
|
+
"translateZ",
|
|
2075
|
+
"transparent",
|
|
2076
|
+
"ultra-condensed",
|
|
2077
|
+
"ultra-expanded",
|
|
2078
|
+
"underline",
|
|
2079
|
+
"unidirectional-pan",
|
|
2080
|
+
"unset",
|
|
2081
|
+
"up",
|
|
2082
|
+
"upper-latin",
|
|
2083
|
+
"uppercase",
|
|
2084
|
+
"url",
|
|
2085
|
+
"var",
|
|
2086
|
+
"vertical",
|
|
2087
|
+
"vertical-text",
|
|
2088
|
+
"view-box",
|
|
2089
|
+
"visible",
|
|
2090
|
+
"visibleFill",
|
|
2091
|
+
"visiblePainted",
|
|
2092
|
+
"visibleStroke",
|
|
2093
|
+
"visual",
|
|
2094
|
+
"w-resize",
|
|
2095
|
+
"wait",
|
|
2096
|
+
"wave",
|
|
2097
|
+
"wider",
|
|
2098
|
+
"window",
|
|
2099
|
+
"windowframe",
|
|
2100
|
+
"windowtext",
|
|
2101
|
+
"words",
|
|
2102
|
+
"wrap",
|
|
2103
|
+
"wrap-reverse",
|
|
2104
|
+
"x-large",
|
|
2105
|
+
"x-small",
|
|
2106
|
+
"xor",
|
|
2107
|
+
"xx-large",
|
|
2108
|
+
"xx-small"
|
|
2109
|
+
].map((e) => ({ type: "keyword", label: e })).concat(/* @__PURE__ */ [
|
|
2110
|
+
"aliceblue",
|
|
2111
|
+
"antiquewhite",
|
|
2112
|
+
"aqua",
|
|
2113
|
+
"aquamarine",
|
|
2114
|
+
"azure",
|
|
2115
|
+
"beige",
|
|
2116
|
+
"bisque",
|
|
2117
|
+
"black",
|
|
2118
|
+
"blanchedalmond",
|
|
2119
|
+
"blue",
|
|
2120
|
+
"blueviolet",
|
|
2121
|
+
"brown",
|
|
2122
|
+
"burlywood",
|
|
2123
|
+
"cadetblue",
|
|
2124
|
+
"chartreuse",
|
|
2125
|
+
"chocolate",
|
|
2126
|
+
"coral",
|
|
2127
|
+
"cornflowerblue",
|
|
2128
|
+
"cornsilk",
|
|
2129
|
+
"crimson",
|
|
2130
|
+
"cyan",
|
|
2131
|
+
"darkblue",
|
|
2132
|
+
"darkcyan",
|
|
2133
|
+
"darkgoldenrod",
|
|
2134
|
+
"darkgray",
|
|
2135
|
+
"darkgreen",
|
|
2136
|
+
"darkkhaki",
|
|
2137
|
+
"darkmagenta",
|
|
2138
|
+
"darkolivegreen",
|
|
2139
|
+
"darkorange",
|
|
2140
|
+
"darkorchid",
|
|
2141
|
+
"darkred",
|
|
2142
|
+
"darksalmon",
|
|
2143
|
+
"darkseagreen",
|
|
2144
|
+
"darkslateblue",
|
|
2145
|
+
"darkslategray",
|
|
2146
|
+
"darkturquoise",
|
|
2147
|
+
"darkviolet",
|
|
2148
|
+
"deeppink",
|
|
2149
|
+
"deepskyblue",
|
|
2150
|
+
"dimgray",
|
|
2151
|
+
"dodgerblue",
|
|
2152
|
+
"firebrick",
|
|
2153
|
+
"floralwhite",
|
|
2154
|
+
"forestgreen",
|
|
2155
|
+
"fuchsia",
|
|
2156
|
+
"gainsboro",
|
|
2157
|
+
"ghostwhite",
|
|
2158
|
+
"gold",
|
|
2159
|
+
"goldenrod",
|
|
2160
|
+
"gray",
|
|
2161
|
+
"grey",
|
|
2162
|
+
"green",
|
|
2163
|
+
"greenyellow",
|
|
2164
|
+
"honeydew",
|
|
2165
|
+
"hotpink",
|
|
2166
|
+
"indianred",
|
|
2167
|
+
"indigo",
|
|
2168
|
+
"ivory",
|
|
2169
|
+
"khaki",
|
|
2170
|
+
"lavender",
|
|
2171
|
+
"lavenderblush",
|
|
2172
|
+
"lawngreen",
|
|
2173
|
+
"lemonchiffon",
|
|
2174
|
+
"lightblue",
|
|
2175
|
+
"lightcoral",
|
|
2176
|
+
"lightcyan",
|
|
2177
|
+
"lightgoldenrodyellow",
|
|
2178
|
+
"lightgray",
|
|
2179
|
+
"lightgreen",
|
|
2180
|
+
"lightpink",
|
|
2181
|
+
"lightsalmon",
|
|
2182
|
+
"lightseagreen",
|
|
2183
|
+
"lightskyblue",
|
|
2184
|
+
"lightslategray",
|
|
2185
|
+
"lightsteelblue",
|
|
2186
|
+
"lightyellow",
|
|
2187
|
+
"lime",
|
|
2188
|
+
"limegreen",
|
|
2189
|
+
"linen",
|
|
2190
|
+
"magenta",
|
|
2191
|
+
"maroon",
|
|
2192
|
+
"mediumaquamarine",
|
|
2193
|
+
"mediumblue",
|
|
2194
|
+
"mediumorchid",
|
|
2195
|
+
"mediumpurple",
|
|
2196
|
+
"mediumseagreen",
|
|
2197
|
+
"mediumslateblue",
|
|
2198
|
+
"mediumspringgreen",
|
|
2199
|
+
"mediumturquoise",
|
|
2200
|
+
"mediumvioletred",
|
|
2201
|
+
"midnightblue",
|
|
2202
|
+
"mintcream",
|
|
2203
|
+
"mistyrose",
|
|
2204
|
+
"moccasin",
|
|
2205
|
+
"navajowhite",
|
|
2206
|
+
"navy",
|
|
2207
|
+
"oldlace",
|
|
2208
|
+
"olive",
|
|
2209
|
+
"olivedrab",
|
|
2210
|
+
"orange",
|
|
2211
|
+
"orangered",
|
|
2212
|
+
"orchid",
|
|
2213
|
+
"palegoldenrod",
|
|
2214
|
+
"palegreen",
|
|
2215
|
+
"paleturquoise",
|
|
2216
|
+
"palevioletred",
|
|
2217
|
+
"papayawhip",
|
|
2218
|
+
"peachpuff",
|
|
2219
|
+
"peru",
|
|
2220
|
+
"pink",
|
|
2221
|
+
"plum",
|
|
2222
|
+
"powderblue",
|
|
2223
|
+
"purple",
|
|
2224
|
+
"rebeccapurple",
|
|
2225
|
+
"red",
|
|
2226
|
+
"rosybrown",
|
|
2227
|
+
"royalblue",
|
|
2228
|
+
"saddlebrown",
|
|
2229
|
+
"salmon",
|
|
2230
|
+
"sandybrown",
|
|
2231
|
+
"seagreen",
|
|
2232
|
+
"seashell",
|
|
2233
|
+
"sienna",
|
|
2234
|
+
"silver",
|
|
2235
|
+
"skyblue",
|
|
2236
|
+
"slateblue",
|
|
2237
|
+
"slategray",
|
|
2238
|
+
"snow",
|
|
2239
|
+
"springgreen",
|
|
2240
|
+
"steelblue",
|
|
2241
|
+
"tan",
|
|
2242
|
+
"teal",
|
|
2243
|
+
"thistle",
|
|
2244
|
+
"tomato",
|
|
2245
|
+
"turquoise",
|
|
2246
|
+
"violet",
|
|
2247
|
+
"wheat",
|
|
2248
|
+
"white",
|
|
2249
|
+
"whitesmoke",
|
|
2250
|
+
"yellow",
|
|
2251
|
+
"yellowgreen"
|
|
2252
|
+
].map((e) => ({ type: "constant", label: e }))), Mt = /* @__PURE__ */ [
|
|
2253
|
+
"a",
|
|
2254
|
+
"abbr",
|
|
2255
|
+
"address",
|
|
2256
|
+
"article",
|
|
2257
|
+
"aside",
|
|
2258
|
+
"b",
|
|
2259
|
+
"bdi",
|
|
2260
|
+
"bdo",
|
|
2261
|
+
"blockquote",
|
|
2262
|
+
"body",
|
|
2263
|
+
"br",
|
|
2264
|
+
"button",
|
|
2265
|
+
"canvas",
|
|
2266
|
+
"caption",
|
|
2267
|
+
"cite",
|
|
2268
|
+
"code",
|
|
2269
|
+
"col",
|
|
2270
|
+
"colgroup",
|
|
2271
|
+
"dd",
|
|
2272
|
+
"del",
|
|
2273
|
+
"details",
|
|
2274
|
+
"dfn",
|
|
2275
|
+
"dialog",
|
|
2276
|
+
"div",
|
|
2277
|
+
"dl",
|
|
2278
|
+
"dt",
|
|
2279
|
+
"em",
|
|
2280
|
+
"figcaption",
|
|
2281
|
+
"figure",
|
|
2282
|
+
"footer",
|
|
2283
|
+
"form",
|
|
2284
|
+
"header",
|
|
2285
|
+
"hgroup",
|
|
2286
|
+
"h1",
|
|
2287
|
+
"h2",
|
|
2288
|
+
"h3",
|
|
2289
|
+
"h4",
|
|
2290
|
+
"h5",
|
|
2291
|
+
"h6",
|
|
2292
|
+
"hr",
|
|
2293
|
+
"html",
|
|
2294
|
+
"i",
|
|
2295
|
+
"iframe",
|
|
2296
|
+
"img",
|
|
2297
|
+
"input",
|
|
2298
|
+
"ins",
|
|
2299
|
+
"kbd",
|
|
2300
|
+
"label",
|
|
2301
|
+
"legend",
|
|
2302
|
+
"li",
|
|
2303
|
+
"main",
|
|
2304
|
+
"meter",
|
|
2305
|
+
"nav",
|
|
2306
|
+
"ol",
|
|
2307
|
+
"output",
|
|
2308
|
+
"p",
|
|
2309
|
+
"pre",
|
|
2310
|
+
"ruby",
|
|
2311
|
+
"section",
|
|
2312
|
+
"select",
|
|
2313
|
+
"small",
|
|
2314
|
+
"source",
|
|
2315
|
+
"span",
|
|
2316
|
+
"strong",
|
|
2317
|
+
"sub",
|
|
2318
|
+
"summary",
|
|
2319
|
+
"sup",
|
|
2320
|
+
"table",
|
|
2321
|
+
"tbody",
|
|
2322
|
+
"td",
|
|
2323
|
+
"template",
|
|
2324
|
+
"textarea",
|
|
2325
|
+
"tfoot",
|
|
2326
|
+
"th",
|
|
2327
|
+
"thead",
|
|
2328
|
+
"tr",
|
|
2329
|
+
"u",
|
|
2330
|
+
"ul"
|
|
2331
|
+
].map((e) => ({ type: "type", label: e })), x = /^(\w[\w-]*|-\w[\w-]*|)$/, Lt = /^-(-[\w-]*)?$/;
|
|
2332
|
+
function Ft(e, O) {
|
|
2333
|
+
var t;
|
|
2334
|
+
if ((e.name == "(" || e.type.isError) && (e = e.parent || e), e.name != "ArgList")
|
|
2335
|
+
return !1;
|
|
2336
|
+
let a = (t = e.parent) === null || t === void 0 ? void 0 : t.firstChild;
|
|
2337
|
+
return (a == null ? void 0 : a.name) != "Callee" ? !1 : O.sliceString(a.from, a.to) == "var";
|
|
2338
|
+
}
|
|
2339
|
+
const CO = /* @__PURE__ */ new JO(), Kt = ["Declaration"];
|
|
2340
|
+
function Ht(e) {
|
|
2341
|
+
for (let O = e; ; ) {
|
|
2342
|
+
if (O.type.isTop)
|
|
2343
|
+
return O;
|
|
2344
|
+
if (!(O = O.parent))
|
|
2345
|
+
return e;
|
|
2346
|
+
}
|
|
2347
|
+
}
|
|
2348
|
+
function ue(e, O, t) {
|
|
2349
|
+
if (O.to - O.from > 4096) {
|
|
2350
|
+
let a = CO.get(O);
|
|
2351
|
+
if (a)
|
|
2352
|
+
return a;
|
|
2353
|
+
let i = [], s = /* @__PURE__ */ new Set(), r = O.cursor(lO.IncludeAnonymous);
|
|
2354
|
+
if (r.firstChild())
|
|
2355
|
+
do
|
|
2356
|
+
for (let l of ue(e, r.node, t))
|
|
2357
|
+
s.has(l.label) || (s.add(l.label), i.push(l));
|
|
2358
|
+
while (r.nextSibling());
|
|
2359
|
+
return CO.set(O, i), i;
|
|
2360
|
+
} else {
|
|
2361
|
+
let a = [], i = /* @__PURE__ */ new Set();
|
|
2362
|
+
return O.cursor().iterate((s) => {
|
|
2363
|
+
var r;
|
|
2364
|
+
if (t(s) && s.matchContext(Kt) && ((r = s.node.nextSibling) === null || r === void 0 ? void 0 : r.name) == ":") {
|
|
2365
|
+
let l = e.sliceString(s.from, s.to);
|
|
2366
|
+
i.has(l) || (i.add(l), a.push({ label: l, type: "variable" }));
|
|
2367
|
+
}
|
|
2368
|
+
}), a;
|
|
2369
|
+
}
|
|
2370
|
+
}
|
|
2371
|
+
const Oa = (e) => (O) => {
|
|
2372
|
+
let { state: t, pos: a } = O, i = _(t).resolveInner(a, -1), s = i.type.isError && i.from == i.to - 1 && t.doc.sliceString(i.from, i.to) == "-";
|
|
2373
|
+
if (i.name == "PropertyName" || (s || i.name == "TagName") && /^(Block|Styles)$/.test(i.resolve(i.to).name))
|
|
2374
|
+
return { from: i.from, options: OO(), validFor: x };
|
|
2375
|
+
if (i.name == "ValueName")
|
|
2376
|
+
return { from: i.from, options: qO, validFor: x };
|
|
2377
|
+
if (i.name == "PseudoClassName")
|
|
2378
|
+
return { from: i.from, options: WO, validFor: x };
|
|
2379
|
+
if (e(i) || (O.explicit || s) && Ft(i, t.doc))
|
|
2380
|
+
return {
|
|
2381
|
+
from: e(i) || s ? i.from : a,
|
|
2382
|
+
options: ue(t.doc, Ht(i), e),
|
|
2383
|
+
validFor: Lt
|
|
2384
|
+
};
|
|
2385
|
+
if (i.name == "TagName") {
|
|
2386
|
+
for (let { parent: n } = i; n; n = n.parent)
|
|
2387
|
+
if (n.name == "Block")
|
|
2388
|
+
return { from: i.from, options: OO(), validFor: x };
|
|
2389
|
+
return { from: i.from, options: Mt, validFor: x };
|
|
2390
|
+
}
|
|
2391
|
+
if (!O.explicit)
|
|
2392
|
+
return null;
|
|
2393
|
+
let r = i.resolve(a), l = r.childBefore(a);
|
|
2394
|
+
return l && l.name == ":" && r.name == "PseudoClassSelector" ? { from: a, options: WO, validFor: x } : l && l.name == ":" && r.name == "Declaration" || r.name == "ArgList" ? { from: a, options: qO, validFor: x } : r.name == "Block" || r.name == "Styles" ? { from: a, options: OO(), validFor: x } : null;
|
|
2395
|
+
}, ea = /* @__PURE__ */ Oa((e) => e.name == "VariableName"), J = /* @__PURE__ */ oO.define({
|
|
2396
|
+
name: "css",
|
|
2397
|
+
parser: /* @__PURE__ */ Jt.configure({
|
|
2398
|
+
props: [
|
|
2399
|
+
/* @__PURE__ */ QO.add({
|
|
2400
|
+
Declaration: /* @__PURE__ */ q()
|
|
2401
|
+
}),
|
|
2402
|
+
/* @__PURE__ */ cO.add({
|
|
2403
|
+
"Block KeyframeList": DO
|
|
2404
|
+
})
|
|
2405
|
+
]
|
|
2406
|
+
}),
|
|
2407
|
+
languageData: {
|
|
2408
|
+
commentTokens: { block: { open: "/*", close: "*/" } },
|
|
2409
|
+
indentOnInput: /^\s*\}$/,
|
|
2410
|
+
wordChars: "-"
|
|
2411
|
+
}
|
|
2412
|
+
});
|
|
2413
|
+
function ta() {
|
|
2414
|
+
return new uO(J, J.data.of({ autocomplete: ea }));
|
|
2415
|
+
}
|
|
2416
|
+
const aa = 303, jO = 1, ia = 2, ra = 304, sa = 306, la = 307, na = 3, oa = 4, Qa = [
|
|
2417
|
+
9,
|
|
2418
|
+
10,
|
|
2419
|
+
11,
|
|
2420
|
+
12,
|
|
2421
|
+
13,
|
|
2422
|
+
32,
|
|
2423
|
+
133,
|
|
2424
|
+
160,
|
|
2425
|
+
5760,
|
|
2426
|
+
8192,
|
|
2427
|
+
8193,
|
|
2428
|
+
8194,
|
|
2429
|
+
8195,
|
|
2430
|
+
8196,
|
|
2431
|
+
8197,
|
|
2432
|
+
8198,
|
|
2433
|
+
8199,
|
|
2434
|
+
8200,
|
|
2435
|
+
8201,
|
|
2436
|
+
8202,
|
|
2437
|
+
8232,
|
|
2438
|
+
8233,
|
|
2439
|
+
8239,
|
|
2440
|
+
8287,
|
|
2441
|
+
12288
|
|
2442
|
+
], he = 125, ca = 59, zO = 47, ua = 42, ha = 43, pa = 45, $a = new KO({
|
|
2443
|
+
start: !1,
|
|
2444
|
+
shift(e, O) {
|
|
2445
|
+
return O == na || O == oa || O == sa ? e : O == la;
|
|
2446
|
+
},
|
|
2447
|
+
strict: !1
|
|
2448
|
+
}), fa = new m((e, O) => {
|
|
2449
|
+
let { next: t } = e;
|
|
2450
|
+
(t == he || t == -1 || O.context) && e.acceptToken(ra);
|
|
2451
|
+
}, { contextual: !0, fallback: !0 }), Sa = new m((e, O) => {
|
|
2452
|
+
let { next: t } = e, a;
|
|
2453
|
+
Qa.indexOf(t) > -1 || t == zO && ((a = e.peek(1)) == zO || a == ua) || t != he && t != ca && t != -1 && !O.context && e.acceptToken(aa);
|
|
2454
|
+
}, { contextual: !0 }), da = new m((e, O) => {
|
|
2455
|
+
let { next: t } = e;
|
|
2456
|
+
if ((t == ha || t == pa) && (e.advance(), t == e.next)) {
|
|
2457
|
+
e.advance();
|
|
2458
|
+
let a = !O.context && O.canShift(jO);
|
|
2459
|
+
e.acceptToken(a ? jO : ia);
|
|
2460
|
+
}
|
|
2461
|
+
}, { contextual: !0 }), ga = nO({
|
|
2462
|
+
"get set async static": o.modifier,
|
|
2463
|
+
"for while do if else switch try catch finally return throw break continue default case": o.controlKeyword,
|
|
2464
|
+
"in of await yield void typeof delete instanceof": o.operatorKeyword,
|
|
2465
|
+
"let var const function class extends": o.definitionKeyword,
|
|
2466
|
+
"import export from": o.moduleKeyword,
|
|
2467
|
+
"with debugger as new": o.keyword,
|
|
2468
|
+
TemplateString: o.special(o.string),
|
|
2469
|
+
super: o.atom,
|
|
2470
|
+
BooleanLiteral: o.bool,
|
|
2471
|
+
this: o.self,
|
|
2472
|
+
null: o.null,
|
|
2473
|
+
Star: o.modifier,
|
|
2474
|
+
VariableName: o.variableName,
|
|
2475
|
+
"CallExpression/VariableName TaggedTemplateExpression/VariableName": o.function(o.variableName),
|
|
2476
|
+
VariableDefinition: o.definition(o.variableName),
|
|
2477
|
+
Label: o.labelName,
|
|
2478
|
+
PropertyName: o.propertyName,
|
|
2479
|
+
PrivatePropertyName: o.special(o.propertyName),
|
|
2480
|
+
"CallExpression/MemberExpression/PropertyName": o.function(o.propertyName),
|
|
2481
|
+
"FunctionDeclaration/VariableDefinition": o.function(o.definition(o.variableName)),
|
|
2482
|
+
"ClassDeclaration/VariableDefinition": o.definition(o.className),
|
|
2483
|
+
PropertyDefinition: o.definition(o.propertyName),
|
|
2484
|
+
PrivatePropertyDefinition: o.definition(o.special(o.propertyName)),
|
|
2485
|
+
UpdateOp: o.updateOperator,
|
|
2486
|
+
LineComment: o.lineComment,
|
|
2487
|
+
BlockComment: o.blockComment,
|
|
2488
|
+
Number: o.number,
|
|
2489
|
+
String: o.string,
|
|
2490
|
+
Escape: o.escape,
|
|
2491
|
+
ArithOp: o.arithmeticOperator,
|
|
2492
|
+
LogicOp: o.logicOperator,
|
|
2493
|
+
BitOp: o.bitwiseOperator,
|
|
2494
|
+
CompareOp: o.compareOperator,
|
|
2495
|
+
RegExp: o.regexp,
|
|
2496
|
+
Equals: o.definitionOperator,
|
|
2497
|
+
Arrow: o.function(o.punctuation),
|
|
2498
|
+
": Spread": o.punctuation,
|
|
2499
|
+
"( )": o.paren,
|
|
2500
|
+
"[ ]": o.squareBracket,
|
|
2501
|
+
"{ }": o.brace,
|
|
2502
|
+
"InterpolationStart InterpolationEnd": o.special(o.brace),
|
|
2503
|
+
".": o.derefOperator,
|
|
2504
|
+
", ;": o.separator,
|
|
2505
|
+
"@": o.meta,
|
|
2506
|
+
TypeName: o.typeName,
|
|
2507
|
+
TypeDefinition: o.definition(o.typeName),
|
|
2508
|
+
"type enum interface implements namespace module declare": o.definitionKeyword,
|
|
2509
|
+
"abstract global Privacy readonly override": o.modifier,
|
|
2510
|
+
"is keyof unique infer": o.operatorKeyword,
|
|
2511
|
+
JSXAttributeValue: o.attributeValue,
|
|
2512
|
+
JSXText: o.content,
|
|
2513
|
+
"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag": o.angleBracket,
|
|
2514
|
+
"JSXIdentifier JSXNameSpacedName": o.tagName,
|
|
2515
|
+
"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName": o.attributeName,
|
|
2516
|
+
"JSXBuiltin/JSXIdentifier": o.standard(o.tagName)
|
|
2517
|
+
}), Xa = { __proto__: null, export: 14, as: 19, from: 27, default: 30, async: 35, function: 36, extends: 46, this: 50, true: 58, false: 58, null: 70, void: 74, typeof: 78, super: 96, new: 130, delete: 146, yield: 155, await: 159, class: 164, public: 221, private: 221, protected: 221, readonly: 223, instanceof: 242, satisfies: 245, in: 246, const: 248, import: 280, keyof: 335, unique: 339, infer: 345, is: 381, abstract: 401, implements: 403, type: 405, let: 408, var: 410, using: 413, interface: 419, enum: 423, namespace: 429, module: 431, declare: 435, global: 439, for: 458, of: 467, while: 470, with: 474, do: 478, if: 482, else: 484, switch: 488, case: 494, try: 500, catch: 504, finally: 508, return: 512, throw: 516, break: 520, continue: 524, debugger: 528 }, Pa = { __proto__: null, async: 117, get: 119, set: 121, declare: 181, public: 183, private: 183, protected: 183, static: 185, abstract: 187, override: 189, readonly: 195, accessor: 197, new: 385 }, ma = { __proto__: null, "<": 137 }, Za = y.deserialize({
|
|
2518
|
+
version: 14,
|
|
2519
|
+
states: "$6tO`QUOOO%TQUOOO'WQWOOP(eOSOOO*sQ(CjO'#CfO*zOpO'#CgO+YO!bO'#CgO+hO07`O'#DZO-yQUO'#DaO.ZQUO'#DlO%TQUO'#DvO0_QUO'#EOOOQ(CY'#EW'#EWO0xQSO'#ETOOQO'#Ei'#EiOOQO'#Ic'#IcO1QQSO'#GkO1]QSO'#EhO1bQSO'#EhO3dQ(CjO'#JdO6TQ(CjO'#JeO6qQSO'#FWO6vQ#tO'#FoOOQ(CY'#F`'#F`O7RO&jO'#F`O7aQ,UO'#FvO8wQSO'#FuOOQ(CY'#Je'#JeOOQ(CW'#Jd'#JdO8|QSO'#GoOOQQ'#KP'#KPO9XQSO'#IPO9^Q(C[O'#IQOOQQ'#JQ'#JQOOQQ'#IU'#IUQ`QUOOO%TQUO'#DnO9fQUO'#DzO9mQUO'#D|O9SQSO'#GkO9tQ,UO'#ClO:SQSO'#EgO:_QSO'#ErO:dQ,UO'#F_O;RQSO'#GkOOQO'#KQ'#KQO;WQSO'#KQO;fQSO'#GsO;fQSO'#GtO;fQSO'#GvO9SQSO'#GyO<]QSO'#G|O=tQSO'#CbO>UQSO'#HYO>^QSO'#H`O>^QSO'#HbO`QUO'#HdO>^QSO'#HfO>^QSO'#HiO>cQSO'#HoO>hQ(C]O'#HuO%TQUO'#HwO>sQ(C]O'#HyO?OQ(C]O'#H{O9^Q(C[O'#H}O?ZQ(CjO'#CfO@]QWO'#DfQOQSOOO%TQUO'#D|O@sQSO'#EPO9tQ,UO'#EgOAOQSO'#EgOAZQ`O'#F_OOQQ'#Cd'#CdOOQ(CW'#Dk'#DkOOQ(CW'#Jh'#JhO%TQUO'#JhOOQO'#Jl'#JlOOQO'#I`'#I`OBZQWO'#E`OOQ(CW'#E_'#E_OCVQ(C`O'#E`OCaQWO'#ESOOQO'#Jk'#JkOCuQWO'#JlOESQWO'#ESOCaQWO'#E`PEaO?MpO'#C`POOO)CDo)CDoOOOO'#IV'#IVOElOpO,59ROOQ(CY,59R,59ROOOO'#IW'#IWOEzO!bO,59RO%TQUO'#D]OOOO'#IY'#IYOFYO07`O,59uOOQ(CY,59u,59uOFhQUO'#IZOF{QSO'#JfOH}QbO'#JfO+vQUO'#JfOIUQSO,59{OIlQSO'#EiOIyQSO'#JtOJUQSO'#JsOJUQSO'#JsOJ^QSO,5;VOJcQSO'#JrOOQ(CY,5:W,5:WOJjQUO,5:WOLkQ(CjO,5:bOM[QSO,5:jOMuQ(C[O'#JqOM|QSO'#JpO8|QSO'#JpONbQSO'#JpONjQSO,5;UONoQSO'#JpO!!wQbO'#JeOOQ(CY'#Cf'#CfO%TQUO'#EOO!#gQ`O,5:oOOQO'#Jm'#JmOOQO-E<a-E<aO9SQSO,5=VO!#}QSO,5=VO!$SQUO,5;SO!&VQ,UO'#EdO!'jQSO,5;SO!)SQ,UO'#DpO!)ZQUO'#DuO!)eQWO,5;]O!)mQWO,5;]O%TQUO,5;]OOQQ'#FO'#FOOOQQ'#FQ'#FQO%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^O%TQUO,5;^OOQQ'#FU'#FUO!){QUO,5;oOOQ(CY,5;t,5;tOOQ(CY,5;u,5;uO!,OQSO,5;uOOQ(CY,5;v,5;vO%TQUO'#IgO!,WQ(C[O,5<cO!&VQ,UO,5;^O!,uQ,UO,5;^O%TQUO,5;rO!,|Q#tO'#FeO!-yQ#tO'#JxO!-eQ#tO'#JxO!.QQ#tO'#JxOOQO'#Jx'#JxO!.fQ#tO,5;}OOOO,5<Z,5<ZO!.wQUO'#FqOOOO'#If'#IfO7RO&jO,5;zO!/OQ#tO'#FsOOQ(CY,5;z,5;zO!/oQ7[O'#CrOOQ(CY'#Cv'#CvO!0SQSO'#CvO!0XO07`O'#CzO!0uQ,UO,5<`O!0|QSO,5<bO!2cQMhO'#GQO!2pQSO'#GRO!2uQSO'#GRO!2zQMhO'#GVO!3yQWO'#GZO!4lQ7[O'#J_OOQ(CY'#J_'#J_O!4vQSO'#J^O!5UQSO'#J]O!5^QSO'#CqOOQ(CY'#Ct'#CtOOQ(CY'#DO'#DOOOQ(CY'#DQ'#DQO0{QSO'#DSO!'oQ,UO'#FxO!'oQ,UO'#FzO!5fQSO'#F|O!5kQSO'#F}O!2uQSO'#GTO!'oQ,UO'#GYO!5pQSO'#EjO!6_QSO,5<aOOQ(CW'#Co'#CoO!6gQSO'#EkO!7aQWO'#ElOOQ(CW'#Jr'#JrO!7hQ(C[O'#KRO9^Q(C[O,5=ZO`QUO,5>kOOQQ'#JY'#JYOOQQ,5>l,5>lOOQQ-E<S-E<SO!9jQ(CjO,5:YO!<WQ(CjO,5:fO%TQUO,5:fO!>qQ(CjO,5:hOOQO,5@l,5@lO!?bQ,UO,5=VO!?pQ(C[O'#JZO8wQSO'#JZO!@RQ(C[O,59WO!@^QWO,59WO!@fQ,UO,59WO9tQ,UO,59WO!@qQSO,5;SO!@yQSO'#HXO!A[QSO'#KUO%TQUO,5;wO!7[QWO,5;yO!AdQSO,5=rO!AiQSO,5=rO!AnQSO,5=rO9^Q(C[O,5=rO;fQSO,5=bOOQO'#Cr'#CrO!A|QWO,5=_O!BUQ,UO,5=`O!BaQSO,5=bO!BfQ`O,5=eO!BnQSO'#KQO>cQSO'#HOO9SQSO'#HQO!BsQSO'#HQO9tQ,UO'#HSO!BxQSO'#HSOOQQ,5=h,5=hO!B}QSO'#HTO!CVQSO'#ClO!C[QSO,58|O!CfQSO,58|O!EkQUO,58|OOQQ,58|,58|O!E{Q(C[O,58|O%TQUO,58|O!HWQUO'#H[OOQQ'#H]'#H]OOQQ'#H^'#H^O`QUO,5=tO!HnQSO,5=tO`QUO,5=zO`QUO,5=|O!HsQSO,5>OO`QUO,5>QO!HxQSO,5>TO!H}QUO,5>ZOOQQ,5>a,5>aO%TQUO,5>aO9^Q(C[O,5>cOOQQ,5>e,5>eO!MXQSO,5>eOOQQ,5>g,5>gO!MXQSO,5>gOOQQ,5>i,5>iO!M^QWO'#DXO%TQUO'#JhO!M{QWO'#JhO!NjQWO'#DgO!N{QWO'#DgO##^QUO'#DgO##eQSO'#JgO##mQSO,5:QO##rQSO'#EmO#$QQSO'#JuO#$YQSO,5;WO#$_QWO'#DgO#$lQWO'#EROOQ(CY,5:k,5:kO%TQUO,5:kO#$sQSO,5:kO>cQSO,5;RO!@^QWO,5;RO!@fQ,UO,5;RO9tQ,UO,5;RO#${QSO,5@SO#%QQ!LQO,5:oOOQO-E<^-E<^O#&WQ(C`O,5:zOCaQWO,5:nO#&bQWO,5:nOCaQWO,5:zO!@RQ(C[O,5:nOOQ(CW'#Ec'#EcOOQO,5:z,5:zO%TQUO,5:zO#&oQ(C[O,5:zO#&zQ(C[O,5:zO!@^QWO,5:nOOQO,5;Q,5;QO#'YQ(C[O,5:zPOOO'#IT'#ITP#'nO?MpO,58zPOOO,58z,58zOOOO-E<T-E<TOOQ(CY1G.m1G.mOOOO-E<U-E<UO#'yQ`O,59wOOOO-E<W-E<WOOQ(CY1G/a1G/aO#(OQbO,5>uO+vQUO,5>uOOQO,5>{,5>{O#(YQUO'#IZOOQO-E<X-E<XO#(gQSO,5@QO#(oQbO,5@QO#(vQSO,5@_OOQ(CY1G/g1G/gO%TQUO,5@`O#)OQSO'#IaOOQO-E<_-E<_O#(vQSO,5@_OOQ(CW1G0q1G0qOOQ(CY1G/r1G/rOOQ(CY1G0U1G0UO%TQUO,5@]O#)dQ(C[O,5@]O#)uQ(C[O,5@]O#)|QSO,5@[O8|QSO,5@[O#*UQSO,5@[O#*dQSO'#IdO#)|QSO,5@[OOQ(CW1G0p1G0pO!)eQWO,5:qO!)pQWO,5:qOOQO,5:s,5:sO#+UQSO,5:sO#+^Q,UO1G2qO9SQSO1G2qOOQ(CY1G0n1G0nO#+lQ(CjO1G0nO#,qQ(ChO,5;OOOQ(CY'#GP'#GPO#-_Q(CjO'#J_O!$SQUO1G0nO#/gQ,UO'#JiO#/qQSO,5:[O#/vQbO'#JjO%TQUO'#JjO#0QQSO,5:aOOQ(CY'#DX'#DXOOQ(CY1G0w1G0wO%TQUO1G0wOOQ(CY1G1a1G1aO#0VQSO1G0wO#2nQ(CjO1G0xO#2uQ(CjO1G0xO#5`Q(CjO1G0xO#5gQ(CjO1G0xO#7qQ(CjO1G0xO#8XQ(CjO1G0xO#;RQ(CjO1G0xO#;YQ(CjO1G0xO#=sQ(CjO1G0xO#=zQ(CjO1G0xO#?rQ(CjO1G0xO#BrQ$IUO'#CfO#DpQ$IUO1G1ZO#DwQ$IUO'#JeO!,RQSO1G1aO#EXQ(CjO,5?ROOQ(CW-E<e-E<eO#E{Q(CjO1G0xOOQ(CY1G0x1G0xO#HWQ(CjO1G1^O#HzQ#tO,5<RO#ISQ#tO,5<SO#I[Q#tO'#FjO#IsQSO'#FiOOQO'#Jy'#JyOOQO'#Ie'#IeO#IxQ#tO1G1iOOQ(CY1G1i1G1iOOOO1G1t1G1tO#JZQ$IUO'#JdO#JeQSO,5<]O!){QUO,5<]OOOO-E<d-E<dOOQ(CY1G1f1G1fO#JjQWO'#JxOOQ(CY,5<_,5<_O#JrQWO,5<_OOQ(CY,59b,59bO!&VQ,UO'#C|OOOO'#IX'#IXO#JwO07`O,59fOOQ(CY,59f,59fO%TQUO1G1zO!5kQSO'#IiO#KSQ,UO,5<sOOQ(CY,5<p,5<pOOQO'#Gf'#GfO!'oQ,UO,5=POOQO'#Gh'#GhO!'oQ,UO,5=RO!&VQ,UO,5=TOOQO1G1|1G1|O#KZQ`O'#CoO#KnQ`O,5<lO#KuQSO'#J|O9SQSO'#J|O#LTQSO,5<nO!'oQ,UO,5<mO#LYQSO'#GSO#LeQSO,5<mO#LjQ`O'#GPO#LwQ`O'#J}O#MRQSO'#J}O!&VQ,UO'#J}O#MWQSO,5<qO#M]QWO'#G[O!3tQWO'#G[O#MnQSO'#G^O#MsQSO'#G`O!2uQSO'#GcO#MxQ(C[O'#IkO#NTQWO,5<uOOQ(CY,5<u,5<uO#N[QWO'#G[O#NjQWO'#G]O#NrQWO'#G]OOQ(CY,5=U,5=UO!'oQ,UO,5?xO!'oQ,UO,5?xO#NwQSO'#IlO$ SQSO,5?wO$ [QSO,59]O$ {Q,UO,59nOOQ(CY,59n,59nO$!nQ,UO,5<dO$#aQ,UO,5<fO@TQSO,5<hOOQ(CY,5<i,5<iO$#kQSO,5<oO$#pQ,UO,5<tO$$QQSO'#JpO!$SQUO1G1{O$$VQSO1G1{O8|QSO'#JsO8|QSO'#EmO%TQUO'#EmO8|QSO'#InO$$[Q(C[O,5@mOOQQ1G2u1G2uOOQQ1G4V1G4VOOQ(CY1G/t1G/tO!,OQSO1G/tO$&aQ(CjO1G0QOOQQ1G2q1G2qO!&VQ,UO1G2qO%TQUO1G2qO$'QQSO1G2qO$']Q,UO'#EdOOQ(CW,5?u,5?uO$'gQ(C[O,5?uOOQQ1G.r1G.rO!@RQ(C[O1G.rO!@^QWO1G.rO!@fQ,UO1G.rO$'xQSO1G0nO$'}QSO'#CfO$(YQSO'#KVO$(bQSO,5=sO$(gQSO'#KVO$(lQSO'#KVO$(wQSO'#ItO$)VQSO,5@pO$)_QbO1G1cOOQ(CY1G1e1G1eO9SQSO1G3^O@TQSO1G3^O$)fQSO1G3^O$)kQSO1G3^OOQQ1G3^1G3^O!BaQSO1G2|O!&VQ,UO1G2yO$)pQSO1G2yOOQQ1G2z1G2zO!&VQ,UO1G2zO$)uQSO1G2zO$)}QWO'#GxOOQQ1G2|1G2|O!3tQWO'#IpO!BfQ`O1G3POOQQ1G3P1G3POOQQ,5=j,5=jO$*VQ,UO,5=lO9SQSO,5=lO#MsQSO,5=nO8wQSO,5=nO!@^QWO,5=nO!@fQ,UO,5=nO9tQ,UO,5=nO$*eQSO'#KTO$*pQSO,5=oOOQQ1G.h1G.hO$*uQ(C[O1G.hO@TQSO1G.hO$+QQSO1G.hO9^Q(C[O1G.hO$-VQbO,5@rO$-gQSO,5@rO8|QSO,5@rO$-rQUO,5=vO$-yQSO,5=vOOQQ1G3`1G3`O`QUO1G3`OOQQ1G3f1G3fOOQQ1G3h1G3hO>^QSO1G3jO$.OQUO1G3lO$2SQUO'#HkOOQQ1G3o1G3oO$2aQSO'#HqO>cQSO'#HsOOQQ1G3u1G3uO$2iQUO1G3uO9^Q(C[O1G3{OOQQ1G3}1G3}OOQ(CW'#GW'#GWO9^Q(C[O1G4PO9^Q(C[O1G4RO$6pQSO,5@SO!){QUO,5;XO8|QSO,5;XO>cQSO,5:RO!){QUO,5:RO!@^QWO,5:RO$6uQ$IUO,5:ROOQO,5;X,5;XO$7PQWO'#I[O$7gQSO,5@ROOQ(CY1G/l1G/lO$7oQWO'#IbO$7yQSO,5@aOOQ(CW1G0r1G0rO!N{QWO,5:ROOQO'#I_'#I_O$8RQWO,5:mOOQ(CY,5:m,5:mO#$vQSO1G0VOOQ(CY1G0V1G0VO%TQUO1G0VOOQ(CY1G0m1G0mO>cQSO1G0mO!@^QWO1G0mO!@fQ,UO1G0mOOQ(CW1G5n1G5nO!@RQ(C[O1G0YOOQO1G0f1G0fO%TQUO1G0fO$8YQ(C[O1G0fO$8eQ(C[O1G0fO!@^QWO1G0YOCaQWO1G0YO$8sQ(C[O1G0fOOQO1G0Y1G0YO$9XQ(CjO1G0fPOOO-E<R-E<RPOOO1G.f1G.fOOOO1G/c1G/cO$9cQ`O,5<cO$9kQbO1G4aOOQO1G4g1G4gO%TQUO,5>uO$9uQSO1G5lO$9}QSO1G5yO$:VQbO1G5zO8|QSO,5>{O$:aQ(CjO1G5wO%TQUO1G5wO$:qQ(C[O1G5wO$;SQSO1G5vO$;SQSO1G5vO8|QSO1G5vO$;[QSO,5?OO8|QSO,5?OOOQO,5?O,5?OO$;pQSO,5?OO$$QQSO,5?OOOQO-E<b-E<bOOQO1G0]1G0]OOQO1G0_1G0_O!,RQSO1G0_OOQQ7+(]7+(]O!&VQ,UO7+(]O%TQUO7+(]O$<OQSO7+(]O$<ZQ,UO7+(]O$<iQ(CjO,59nO$>qQ(CjO,5<dO$@|Q(CjO,5<fO$CXQ(CjO,5<tOOQ(CY7+&Y7+&YO$EjQ(CjO7+&YO$F^Q,UO'#I]O$FhQSO,5@TOOQ(CY1G/v1G/vO$FpQUO'#I^O$F}QSO,5@UO$GVQbO,5@UOOQ(CY1G/{1G/{O$GaQSO7+&cOOQ(CY7+&c7+&cO$GfQ$IUO,5:bO%TQUO7+&uO$GpQ$IUO,5:YO$G}Q$IUO,5:fO$HXQ$IUO,5:hOOQ(CY7+&{7+&{OOQO1G1m1G1mOOQO1G1n1G1nO$HcQ#tO,5<UO!){QUO,5<TOOQO-E<c-E<cOOQ(CY7+'T7+'TOOOO7+'`7+'`OOOO1G1w1G1wO$HnQSO1G1wOOQ(CY1G1y1G1yO$HsQ`O,59hOOOO-E<V-E<VOOQ(CY1G/Q1G/QO$HzQ(CjO7+'fOOQ(CY,5?T,5?TO$InQ`O,5?TOOQ(CY1G2_1G2_P!&VQ,UO'#IiPOQ(CY-E<g-E<gO$J^Q,UO1G2kO$KPQ,UO1G2mO$KZQ`O1G2oOOQ(CY1G2W1G2WO$KbQSO'#IhO$KpQSO,5@hO$KpQSO,5@hO$KxQSO,5@hO$LTQSO,5@hOOQO1G2Y1G2YO$LcQ,UO1G2XO!'oQ,UO1G2XO$LsQMhO'#IjO$MTQSO,5@iO!&VQ,UO,5@iO$M]Q`O,5@iOOQ(CY1G2]1G2]OOQ(CW,5<v,5<vOOQ(CW,5<w,5<wO$$QQSO,5<wOCQQSO,5<wO!@^QWO,5<vOOQO'#G_'#G_O$MgQSO,5<xOOQ(CW,5<z,5<zO$$QQSO,5<}OOQO,5?V,5?VOOQO-E<i-E<iOOQ(CY1G2a1G2aO!3tQWO,5<vO$MoQSO,5<wO#MnQSO,5<xO!3tQWO,5<wO$MzQ,UO1G5dO$NUQ,UO1G5dOOQO,5?W,5?WOOQO-E<j-E<jOOQO1G.w1G.wO!7[QWO,59pO%TQUO,59pO$NcQSO1G2SO!'oQ,UO1G2ZO$NhQ(CjO7+'gOOQ(CY7+'g7+'gO!$SQUO7+'gO% [QSO,5;XOOQ(CW,5?Y,5?YOOQ(CW-E<l-E<lOOQ(CY7+%`7+%`O% aQ`O'#KOO#$vQSO7+(]O% kQbO7+(]O$<RQSO7+(]O% rQ(ChO'#CfO%!VQ(ChO,5<{O%!wQSO,5<{OOQ(CW1G5a1G5aOOQQ7+$^7+$^O!@RQ(C[O7+$^O!@^QWO7+$^O!$SQUO7+&YO%!|QSO'#IsO%#bQSO,5@qOOQO1G3_1G3_O9SQSO,5@qO%#bQSO,5@qO%#jQSO,5@qOOQO,5?`,5?`OOQO-E<r-E<rOOQ(CY7+&}7+&}O%#oQSO7+(xO9^Q(C[O7+(xO9SQSO7+(xO@TQSO7+(xOOQQ7+(h7+(hO%#tQ(ChO7+(eO!&VQ,UO7+(eO%$OQ`O7+(fOOQQ7+(f7+(fO!&VQ,UO7+(fO%$VQSO'#KSO%$bQSO,5=dOOQO,5?[,5?[OOQO-E<n-E<nOOQQ7+(k7+(kO%%qQWO'#HROOQQ1G3W1G3WO!&VQ,UO1G3WO%TQUO1G3WO%%xQSO1G3WO%&TQ,UO1G3WO9^Q(C[O1G3YO#MsQSO1G3YO8wQSO1G3YO!@^QWO1G3YO!@fQ,UO1G3YO%&cQSO'#IrO%&nQSO,5@oO%&vQWO,5@oOOQ(CW1G3Z1G3ZOOQQ7+$S7+$SO@TQSO7+$SO9^Q(C[O7+$SO%'RQSO7+$SO%TQUO1G6^O%TQUO1G6_O%'WQ(C[O1G6^O%'bQUO1G3bO%'iQSO1G3bO%'nQUO1G3bOOQQ7+(z7+(zO9^Q(C[O7+)UO`QUO7+)WOOQQ'#KY'#KYOOQQ'#Iu'#IuO%'uQUO,5>VOOQQ,5>V,5>VO%TQUO'#HlO%(SQSO'#HnOOQQ,5>],5>]O8|QSO,5>]OOQQ,5>_,5>_OOQQ7+)a7+)aOOQQ7+)g7+)gOOQQ7+)k7+)kOOQQ7+)m7+)mO%(XQWO1G5nO%(mQ$IUO1G0sO%(wQSO1G0sOOQO1G/m1G/mO%)SQ$IUO1G/mO>cQSO1G/mO!){QUO'#DgOOQO,5>v,5>vOOQO-E<Y-E<YOOQO,5>|,5>|OOQO-E<`-E<`O!@^QWO1G/mOOQO-E<]-E<]OOQ(CY1G0X1G0XOOQ(CY7+%q7+%qO#$vQSO7+%qOOQ(CY7+&X7+&XO>cQSO7+&XO!@^QWO7+&XOOQO7+%t7+%tO$9XQ(CjO7+&QOOQO7+&Q7+&QO%TQUO7+&QO%)^Q(C[O7+&QO!@RQ(C[O7+%tO!@^QWO7+%tO%)iQ(C[O7+&QO%)wQ(CjO7++cO%TQUO7++cO%*XQSO7++bO%*XQSO7++bOOQO1G4j1G4jO8|QSO1G4jO%*aQSO1G4jOOQO7+%y7+%yO#$vQSO<<KwO% kQbO<<KwO%*oQSO<<KwOOQQ<<Kw<<KwO!&VQ,UO<<KwO%TQUO<<KwO%*wQSO<<KwO%+SQ(CjO1G2kO%-_Q(CjO1G2mO%/jQ(CjO1G2XO%1{Q,UO,5>wOOQO-E<Z-E<ZO%2VQbO,5>xO%TQUO,5>xOOQO-E<[-E<[O%2aQSO1G5pOOQ(CY<<I}<<I}O%2iQ$IUO1G0nO%4sQ$IUO1G0xO%4zQ$IUO1G0xO%7OQ$IUO1G0xO%7VQ$IUO1G0xO%8zQ$IUO1G0xO%9bQ$IUO1G0xO%;uQ$IUO1G0xO%;|Q$IUO1G0xO%>QQ$IUO1G0xO%>XQ$IUO1G0xO%@PQ$IUO1G0xO%@dQ(CjO<<JaO%AiQ$IUO1G0xO%C_Q$IUO'#J_O%EbQ$IUO1G1^O%EoQ$IUO1G0QO!){QUO'#FlOOQO'#Jz'#JzOOQO1G1p1G1pO%EyQSO1G1oO%FOQ$IUO,5?ROOOO7+'c7+'cOOOO1G/S1G/SOOQ(CY1G4o1G4oO!'oQ,UO7+(ZO%FYQSO,5?SO9SQSO,5?SOOQO-E<f-E<fO%FhQSO1G6SO%FhQSO1G6SO%FpQSO1G6SO%F{Q,UO7+'sO%G]Q`O,5?UO%GgQSO,5?UO!&VQ,UO,5?UOOQO-E<h-E<hO%GlQ`O1G6TO%GvQSO1G6TOOQ(CW1G2c1G2cO$$QQSO1G2cOOQ(CW1G2b1G2bO%HOQSO1G2dO!&VQ,UO1G2dOOQ(CW1G2i1G2iO!@^QWO1G2bOCQQSO1G2cO%HTQSO1G2dO%H]QSO1G2cO!'oQ,UO7++OOOQ(CY1G/[1G/[O%HhQSO1G/[OOQ(CY7+'n7+'nO%HmQ,UO7+'uO%H}Q(CjO<<KROOQ(CY<<KR<<KRO%IqQSO1G0sO!&VQ,UO'#ImO%IvQSO,5@jO!&VQ,UO1G2gOOQQ<<Gx<<GxO!@RQ(C[O<<GxO%JOQ(CjO<<ItOOQ(CY<<It<<ItOOQO,5?_,5?_O%JrQSO,5?_O$(lQSO,5?_OOQO-E<q-E<qO%JwQSO1G6]O%JwQSO1G6]O9SQSO1G6]O@TQSO<<LdOOQQ<<Ld<<LdO%KPQSO<<LdO9^Q(C[O<<LdOOQQ<<LP<<LPO%#tQ(ChO<<LPOOQQ<<LQ<<LQO%$OQ`O<<LQO%KUQWO'#IoO%KaQSO,5@nO!){QUO,5@nOOQQ1G3O1G3OO%KiQUO'#JhOOQO'#Iq'#IqO9^Q(C[O'#IqO%KsQWO,5=mOOQQ,5=m,5=mO%KzQWO'#E`O%L`QSO7+(rO%LeQSO7+(rOOQQ7+(r7+(rO!&VQ,UO7+(rO%TQUO7+(rO%LmQSO7+(rOOQQ7+(t7+(tO9^Q(C[O7+(tO#MsQSO7+(tO8wQSO7+(tO!@^QWO7+(tO%LxQSO,5?^OOQO-E<p-E<pOOQO'#HU'#HUO%MTQSO1G6ZO9^Q(C[O<<GnOOQQ<<Gn<<GnO@TQSO<<GnO%M]QSO7++xO%MbQSO7++yO%TQUO7++xO%TQUO7++yOOQQ7+(|7+(|O%MgQSO7+(|O%MlQUO7+(|O%MsQSO7+(|OOQQ<<Lp<<LpOOQQ<<Lr<<LrOOQQ-E<s-E<sOOQQ1G3q1G3qO%MxQSO,5>WOOQQ,5>Y,5>YO%M}QSO1G3wO8|QSO7+&_O!){QUO7+&_OOQO7+%X7+%XO%NSQ$IUO1G5zO>cQSO7+%XOOQ(CY<<I]<<I]OOQ(CY<<Is<<IsO>cQSO<<IsOOQO<<Il<<IlO$9XQ(CjO<<IlO%TQUO<<IlOOQO<<I`<<I`O!@RQ(C[O<<I`O%N^Q(C[O<<IlO%NiQ(CjO<<N}O%NyQSO<<N|OOQO7+*U7+*UO8|QSO7+*UOOQQANAcANAcO& RQSOANAcO!&VQ,UOANAcO#$vQSOANAcO% kQbOANAcO%TQUOANAcO& ZQ(CjO7+'sO&#lQ(CjO7+'uO&%}QbO1G4dO&&XQ$IUO7+&YO&&fQ$IUO,59nO&(iQ$IUO,5<dO&*lQ$IUO,5<fO&,oQ$IUO,5<tO&.eQ$IUO7+'fO&.rQ$IUO7+'gO&/PQSO,5<WOOQO7+'Z7+'ZO&/UQ,UO<<KuOOQO1G4n1G4nO&/]QSO1G4nO&/hQSO1G4nO&/vQSO7++nO&/vQSO7++nO!&VQ,UO1G4pO&0OQ`O1G4pO&0YQSO7++oOOQ(CW7+'}7+'}O$$QQSO7+(OO&0bQ`O7+(OOOQ(CW7+'|7+'|O$$QQSO7+'}O&0iQSO7+(OO!&VQ,UO7+(OOCQQSO7+'}O&0nQ,UO<<NjOOQ(CY7+$v7+$vO&0xQ`O,5?XOOQO-E<k-E<kO&1SQ(ChO7+(ROOQQAN=dAN=dO9SQSO1G4yOOQO1G4y1G4yO&1dQSO1G4yO&1iQSO7++wO&1iQSO7++wO9^Q(C[OANBOO@TQSOANBOOOQQANBOANBOOOQQANAkANAkOOQQANAlANAlO&1qQSO,5?ZOOQO-E<m-E<mO&1|Q$IUO1G6YO&4^QbO'#CfOOQO,5?],5?]OOQO-E<o-E<oOOQQ1G3X1G3XO%KiQUO,5<xOOQQ<<L^<<L^O!&VQ,UO<<L^O%L`QSO<<L^O&4hQSO<<L^O%TQUO<<L^OOQQ<<L`<<L`O9^Q(C[O<<L`O#MsQSO<<L`O8wQSO<<L`O&4pQWO1G4xO&4{QSO7++uOOQQAN=YAN=YO9^Q(C[OAN=YOOQQ<= d<= dOOQQ<= e<= eO&5TQSO<= dO&5YQSO<= eOOQQ<<Lh<<LhO&5_QSO<<LhO&5dQUO<<LhOOQQ1G3r1G3rO>cQSO7+)cO&5kQSO<<IyO&5vQ$IUO<<IyOOQO<<Hs<<HsOOQ(CYAN?_AN?_OOQOAN?WAN?WO$9XQ(CjOAN?WOOQOAN>zAN>zO%TQUOAN?WOOQO<<Mp<<MpOOQQG26}G26}O!&VQ,UOG26}O#$vQSOG26}O&6QQSOG26}O% kQbOG26}O&6YQ$IUO<<JaO&6gQ$IUO1G2XO&8]Q$IUO1G2kO&:`Q$IUO1G2mO&<cQ$IUO<<KRO&<pQ$IUO<<ItOOQO1G1r1G1rO!'oQ,UOANAaOOQO7+*Y7+*YO&<}QSO7+*YO&=YQSO<= YO&=bQ`O7+*[OOQ(CW<<Kj<<KjO$$QQSO<<KjOOQ(CW<<Ki<<KiO&=lQ`O<<KjO$$QQSO<<KiOOQO7+*e7+*eO9SQSO7+*eO&=sQSO<= cOOQQG27jG27jO9^Q(C[OG27jO!){QUO1G4uO&={QSO7++tO%L`QSOANAxOOQQANAxANAxO!&VQ,UOANAxO&>TQSOANAxOOQQANAzANAzO9^Q(C[OANAzO#MsQSOANAzOOQO'#HV'#HVOOQO7+*d7+*dOOQQG22tG22tOOQQANEOANEOOOQQANEPANEPOOQQANBSANBSO&>]QSOANBSOOQQ<<L}<<L}O!){QUOAN?eOOQOG24rG24rO$9XQ(CjOG24rO#$vQSOLD,iOOQQLD,iLD,iO!&VQ,UOLD,iO&>bQSOLD,iO&>jQ$IUO7+'sO&@`Q$IUO7+'uO&BUQ,UOG26{OOQO<<Mt<<MtOOQ(CWANAUANAUO$$QQSOANAUOOQ(CWANATANATOOQO<<NP<<NPOOQQLD-ULD-UO&BfQ$IUO7+*aOOQQG27dG27dO%L`QSOG27dO!&VQ,UOG27dOOQQG27fG27fO9^Q(C[OG27fOOQQG27nG27nO&BpQ$IUOG25POOQOLD*^LD*^OOQQ!$(!T!$(!TO#$vQSO!$(!TO!&VQ,UO!$(!TO&BzQ(CjOG26{OOQ(CWG26pG26pOOQQLD-OLD-OO%L`QSOLD-OOOQQLD-QLD-QOOQQ!)9Eo!)9EoO#$vQSO!)9EoOOQQ!$(!j!$(!jOOQQ!.K;Z!.K;ZO&E]Q$IUOG26{O!){QUO'#DvO0xQSO'#ETO&GRQbO'#JdO!){QUO'#DnO&GYQUO'#DzO&GaQbO'#CfO&IwQbO'#CfO!){QUO'#D|O&JXQUO,5;SO!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO,5;^O!){QUO'#IgO&L[QSO,5<cO&LdQ,UO,5;^O&MwQ,UO,5;^O!){QUO,5;rO0{QSO'#DSO0{QSO'#DSO!&VQ,UO'#FxO&LdQ,UO'#FxO!&VQ,UO'#FzO&LdQ,UO'#FzO!&VQ,UO'#GYO&LdQ,UO'#GYO!){QUO,5:fO!){QUO,5@`O&JXQUO1G0nO&NOQ$IUO'#CfO!){QUO1G1zO!&VQ,UO,5=PO&LdQ,UO,5=PO!&VQ,UO,5=RO&LdQ,UO,5=RO!&VQ,UO,5<mO&LdQ,UO,5<mO&JXQUO1G1{O!){QUO7+&uO!&VQ,UO1G2XO&LdQ,UO1G2XO!&VQ,UO1G2ZO&LdQ,UO1G2ZO&JXQUO7+'gO&JXQUO7+&YO!&VQ,UOANAaO&LdQ,UOANAaO&NYQSO'#EhO&N_QSO'#EhO&NgQSO'#FWO&NlQSO'#ErO&NqQSO'#JtO&N|QSO'#JrO' XQSO,5;SO' ^Q,UO,5<`O' eQSO'#GRO' jQSO'#GRO' oQSO,5<aO' wQSO,5;SO'!PQ$IUO1G1ZO'!WQSO,5<mO'!]QSO,5<mO'!bQSO,5<oO'!gQSO,5<oO'!lQSO1G1{O'!qQSO1G0nO'!vQ,UO<<KuO'!}Q,UO<<KuO7aQ,UO'#FvO8wQSO'#FuOAOQSO'#EgO!){QUO,5;oO!2uQSO'#GRO!2uQSO'#GRO!2uQSO'#GTO!2uQSO'#GTO!'oQ,UO7+(ZO!'oQ,UO7+(ZO$KZQ`O1G2oO$KZQ`O1G2oO!&VQ,UO,5=TO!&VQ,UO,5=T",
|
|
2520
|
+
stateData: "'$W~O'nOS'oOSROS'pRQ~OPYOQYOV!UO^qOayObxOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!XXO!ctO!hZO!kYO!lYO!mYO!ouO!qvO!twO!x]O#p!OO$Q{O$UfO%`|O%b!PO%d}O%e}O%f}O%i!QO%k!RO%n!SO%o!SO%q!TO%}!VO&T!WO&V!XO&X!YO&Z!ZO&^![O&d!]O&j!^O&l!_O&n!`O&p!aO&r!bO'uSO'wTO'zUO(SVO(b[O(oiO~OPYOQYOa!iOb!hOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!dO!ctO!hZO!kYO!lYO!mYO!ouO!q!fO!t!gO$Q!jO$UfO'u!cO'wTO'zUO(SVO(b[O(oiO~O^!uOl!mO|!nO![!wO!]!tO!^!tO!x9qO!|!oO!}!oO#O!vO#P!oO#Q!oO#T!xO#U!xO'v!kO'wTO'zUO(V!lO(b!rO~O'p!yO~OPYXXYX^YXkYXyYXzYX|YX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX'lYX(SYX(cYX(jYX(kYX~O!a$zX~P(jO[!{O'w!}O'x!{O'y!}O~O[#OO'y!}O'z!}O'{#OO~Oq#QO!O#RO(T#RO(U#TO~OPYOQYOa!iOb!hOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!dO!ctO!hZO!kYO!lYO!mYO!ouO!q!fO!t!gO$Q!jO$UfO'u9uO'wTO'zUO(SVO(b[O(oiO~O!U#XO!V#UO!S(YP!S(gP~P+vO!W#aO~P`OPYOQYOa!iOb!hOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!dO!ctO!hZO!kYO!lYO!mYO!ouO!q!fO!t!gO$Q!jO$UfO'wTO'zUO(SVO(b[O(oiO~Oi#kO!U#gO!x]O#b#jO#c#gO'u9vO!g(dP~P.bO!h#mO'u#lO~O!t#qO!x]O%`#rO~O#d#sO~O!a#tO#d#sO~OP$[OX$cOk$POy#xOz#yO|#zO!V$`O!e$RO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO#l$RO#m$RO#n$bO#o$RO#q$SO#s$UO#u$WO#v$XO(SVO(c$YO(j#{O(k#|O~O^(WX'l(WX'j(WX!g(WX!S(WX!X(WX%a(WX!a(WX~P1jO#X$dO#{$dOP(XXX(XXk(XXy(XXz(XX|(XX!V(XX!e(XX!h(XX!l(XX#g(XX#h(XX#i(XX#j(XX#k(XX#l(XX#m(XX#n(XX#o(XX#q(XX#s(XX#u(XX#v(XX(S(XX(c(XX(j(XX(k(XX!X(XX%a(XX~O^(XX!f(XX'l(XX'j(XX!S(XX!g(XXo(XX!a(XX~P4QO#X$dO~O$W$fO$Y$eO$a$kO~O!X$lO$UfO$d$mO$f$oO~Oi%ROk$sOl$rOm$rOs%SOu%TOw%UO|$zO!X${O!c%ZO!h$wO#c%[O$Q%XO$m%VO$o%WO$r%YO'u$qO'wTO'zUO(O%QO(S$tOd(PP~O!h%]O~O|%`O!X%aO'u%_O~O!a%eO~O^%fO'l%fO~O'v!kO~P%TO%f%mO~P%TO!h%]O'u%_O'v!kO(O%QO~Ob%tO!h%]O'u%_O~O#o$RO~Oy%yO!X%vO!h%xO%b%|O'u%_O'v!kO'wTO'zUO](xP~O!t#qO~O%k&OO|(tX!X(tX'u(tX~O'u&PO~O!q&UO#p!OO%b!PO%d}O%e}O%f}O%i!QO%k!RO%n!SO%o!SO~Oa&ZOb&YO!t&WO%`&XO%s&VO~P;kOa&^ObxO!X&]O!q&UO!twO!x]O#p!OO%`|O%d}O%e}O%f}O%i!QO%k!RO%n!SO%o!SO%q!TO~O_&aO#X&dO%b&_O'v!kO~P<pO!h&eO!q&iO~O!h#mO~O!XXO~O^%fO'k&qO'l%fO~O^%fO'k&tO'l%fO~O^%fO'k&vO'l%fO~O'jYX!SYXoYX!gYX&RYX!XYX%aYX!aYX~P(jO!['TO!]&|O!^&|O'v!kO'wTO'zUO~Ol&zO|&yO!U&}O(V&xO!W(ZP!W(iP~P?wOg'WO!X'UO'u%_O~Ob']O!h%]O'u%_O~Oy%yO!h%xO~Ol!mO|!nO!x9qO!|!oO!}!oO#P!oO#Q!oO'v!kO'wTO'zUO(V!lO(b!rO~O!['cO!]'bO!^'bO#O!oO#T'dO#U'dO~PAcO^%fO!a#tO!h%]O'l%fO(O%QO(c'fO~O!l'jO#X'hO~PBqOl!mO|!nO'wTO'zUO(V!lO(b!rO~O!XXOl(`X|(`XTO'wTO'zUO(SVO(b[O(o;_O~Oz)WO!h#wO~O!V$`O^$ka'l$ka'j$ka!g$ka!S$ka!X$ka%a$ka!a$ka~O#p)[O~P!&VOy)_O!a)^O!X$XX$T$XX$W$XX$Y$XX$a$XX~O!a)^O!X(lX$T(lX$W(lX$Y(lX$a(lX~Oy)_O~P!-eOy)_O!X(lX$T(lX$W(lX$Y(lX$a(lX~O!X)aO$T)eO$W)`O$Y)`O$a)fO~O!U)iO~P!){O$W$fO$Y$eO$a)mO~Og$sXy$sX|$sX!f$sX(j$sX(k$sX~OdfXd$sXgfX!VfX#XfX~P!/ZOl)oO~Oq)pO(T)qO(U)sO~Og)|Oy)uO|)vO(j)xO(k)zO~Od)tO~P!0dOd)}O~Oi%ROk$sOl$rOm$rOs%SOu%TOw:ZO|$zO!X${O!c;eO!h$wO#c:aO$Q%XO$m:]O$o:_O$r%YO'wTO'zUO(O%QO(S$tO~O!U*RO'u*OO!g(pP~P!1RO#d*TO~O!h*UO~O!U*ZO'u*WO!S(qP~P!1ROk*gO|*_O![*eO!]*^O!^*^O!h*UO#T*fO%W*aO'v!kO(V!lO~O!W*dO~P!3XO!f#vOg(RXy(RX|(RX(j(RX(k(RX!V(RX#X(RX~Od(RX#y(RX~P!4QOg*jO#X*iOd(QX!V(QX~O!V*kOd(PX~O'u&POd(PP~O!h*rO~O'u(kO~Oi*vO|%`O!U#gO!X%aO!x]O#b#jO#c#gO'u%_O!g(dP~O!a#tO#d*wO~O|%`O!U*yO!V(RO!X%aO'u%_O!S(gP~Ol'QO|*{O!U*zO'wTO'zUO(V(sO~O!W(iP~P!6{O!V*|O^(uX'l(uX~OP$[OX$cOk$POy#xOz#yO|#zO!e$RO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO#l$RO#m$RO#n$bO#o$RO#q$SO#s$UO#u$WO#v$XO(SVO(c$YO(j#{O(k#|O~O^!ba!V!ba'l!ba'j!ba!S!ba!g!bao!ba!X!ba%a!ba!a!ba~P!7sOy#xOz#yO|#zO!f#vO!h#wO(SVOP!naX!nak!na!V!na!e!na!l!na#g!na#h!na#i!na#j!na#k!na#l!na#m!na#n!na#o!na#q!na#s!na#u!na#v!na(c!na(j!na(k!na~O^!na'l!na'j!na!S!na!g!nao!na!X!na%a!na!a!na~P!:^Oy#xOz#yO|#zO!f#vO!h#wO(SVOP!paX!pak!pa!V!pa!e!pa!l!pa#g!pa#h!pa#i!pa#j!pa#k!pa#l!pa#m!pa#n!pa#o!pa#q!pa#s!pa#u!pa#v!pa(c!pa(j!pa(k!pa~O^!pa'l!pa'j!pa!S!pa!g!pao!pa!X!pa%a!pa!a!pa~P!<wOg+VO!X'UO%a+UO(O%QO~O!a+XO^'}X!X'}X'l'}X!V'}X~O^%fO!XXO'l%fO~O!h%]O(O%QO~O!h%]O'u%_O(O%QO~O!a#tO#d(mO~O%b+eO'u+aO'wTO'zUO!W(yP~O!V+fO](xX~OX+jO~O]+kO~O!X%vO'u%_O'v!kO](xP~O#X+pO(O%QO~Og+sO!X${O(O%QO~O!X+uO~Oy+wO!XXO~O%f%mO~O!t+|O~Ob,RO~O'u#lO!W(wP~Ob%tO~O%b!PO'u&PO~P<pOX,XO],WO~OPYOQYOayObxOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!ctO!hZO!kYO!lYO!mYO!ouO!twO!x]O$UfO%`|O'wTO'zUO(SVO(b[O(oiO~O!X!dO!q!fO$Q!jO'u!cO~P!CnO],WO^%fO'l%fO~OPYOQYOa!iOb!hOikOkYOlkOmkOskOuYOwYO|WO!QkO!RkO!X!dO!ctO!hZO!kYO!lYO!mYO!ouO!t!gO$Q!jO$UfO'u!cO'wTO'zUO(SVO(b[O(oiO~O^,^O!qvO#p}O%d}O%e}O%f}O~P!FWO!h&eO~O&T,dO~O!X,fO~O&f,hO&h,iOP&caQ&caV&ca^&caa&cab&cai&cak&cal&cam&cas&cau&caw&ca|&ca!Q&ca!R&ca!X&ca!c&ca!h&ca!k&ca!l&ca!m&ca!o&ca!q&ca!t&ca!x&ca#p&ca$Q&ca$U&ca%`&ca%b&ca%d&ca%e&ca%f&ca%i&ca%k&ca%n&ca%o&ca%q&ca%}&ca&T&ca&V&ca&X&ca&Z&ca&^&ca&d&ca&j&ca&l&ca&n&ca&p&ca&r&ca'j&ca'u&ca'w&ca'z&ca(S&ca(b&ca(o&ca!W&ca&[&ca_&ca&a&ca~O'u,nO~O!V{X!V!_X!W{X!W!_X!a{X!a!_X!h!_X#X{X(O!_X~O!a,sO#X,rO!V#aX!V([X!W#aX!W([X!a([X!h([X(O([X~O!a,uO!h%]O(O%QO!V!ZX!W!ZX~Ol!mO|!nO'wTO'zUO(V!lO~OP9pOQ9pOa;aOb!hOikOk9pOlkOmkOskOu9pOw9pO|WO!QkO!RkO!X!dO!c9sO!hZO!k9pO!l9pO!m9pO!o9tO!q9wO!t!gO$Q!jO$UfO'wTO'zUO(SVO(b[O(o;_O~O'u:fO~P# ^O!V,yO!W(ZX~O!W,{O~O!a,sO#X,rO!V#aX!W#aX~O!V,|O!W(iX~O!W-OO~O!]-PO!^-PO'v!kO~P!N{O!W-SO~P'WOg-VO!X'UO~O!S-[O~Ol!wa![!wa!]!wa!^!wa!|!wa!}!wa#O!wa#P!wa#Q!wa#T!wa#U!wa'v!wa'w!wa'z!wa(V!wa(b!wa~P!#RO!l-aO#X-_O~PBqO!]-cO!^-cO'v!kO~PCaO^%fO#X-_O'l%fO~O^%fO!a#tO#X-_O'l%fO~O^%fO!a#tO!l-aO#X-_O'l%fO(c'fO~O'q'nO'r'nO's-hO~Oo-iO~O!S&}a!V&}a~P!7sO!U-mO!S&}X!V&}X~P%TO!V'zO!S(Ya~O!S(Ya~PGTO!V(RO!S(ga~O|%`O!U-qO!X%aO'u%_O!S'TX!V'TX~O#X-sO!V(ea!g(ea^(ea'l(ea~O!a#tO~P#)dO!V(_O!g(da~O|%`O!X%aO#c-wO'u%_O~Oi-|O|%`O!U-yO!X%aO!x]O#b-{O#c-yO'u%_O!V'WX!g'WX~Oz.QO!h#wO~Og.TO!X'UO%a.SO(O%QO~O^#[i!V#[i'l#[i'j#[i!S#[i!g#[io#[i!X#[i%a#[i!a#[i~P!7sOg;kOy)uO|)vO(j)xO(k)zO~O#d#Wa^#Wa#X#Wa'l#Wa!V#Wa!g#Wa!X#Wa!S#Wa~P#,`O#d(RXP(RXX(RX^(RXk(RXz(RX!e(RX!h(RX!l(RX#g(RX#h(RX#i(RX#j(RX#k(RX#l(RX#m(RX#n(RX#o(RX#q(RX#s(RX#u(RX#v(RX'l(RX(S(RX(c(RX!g(RX!S(RX'j(RXo(RX!X(RX%a(RX!a(RX~P!4QO!V.^Od(]X~P!0dOd.`O~O!V.aO!g(^X~P!7sO!g.dO~O!S.fO~OP$[Oy#xOz#yO|#zO!f#vO!h#wO!l$[O(SVOX#fi^#fik#fi!V#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'l#fi(c#fi(j#fi(k#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O#g#fi~P#0[O#g#}O~P#0[OP$[Oy#xOz#yO|#zO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO(SVOX#fi^#fi!V#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'l#fi(c#fi(j#fi(k#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~Ok#fi~P#2|Ok$PO~P#2|OP$[Ok$POy#xOz#yO|#zO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO(SVO^#fi!V#fi#q#fi#s#fi#u#fi#v#fi'l#fi(c#fi(j#fi(k#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P#5nOX$cO!e$RO#l$RO#m$RO#n$bO#o$RO~P#5nOP$[OX$cOk$POy#xOz#yO|#zO!e$RO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO#l$RO#m$RO#n$bO#o$RO#q$SO(SVO^#fi!V#fi#s#fi#u#fi#v#fi'l#fi(c#fi(k#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(j#fi~P#8oO(j#{O~P#8oOP$[OX$cOk$POy#xOz#yO|#zO!e$RO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO#l$RO#m$RO#n$bO#o$RO#q$SO#s$UO(SVO(j#{O^#fi!V#fi#u#fi#v#fi'l#fi(c#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~O(k#fi~P#;aO(k#|O~P#;aOP$[OX$cOk$POy#xOz#yO|#zO!e$RO!f#vO!h#wO!l$[O#g#}O#h$OO#i$OO#j$OO#k$QO#l$RO#m$RO#n$bO#o$RO#q$SO#s$UO#u$WO(SVO(j#{O(k#|O~O^#fi!V#fi#v#fi'l#fi(c#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#>ROPYXXYXkYXyYXzYX|YX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX!VYX!WYX~O#yYX~P#@lOP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO#s:QO#u:SO#v:TO(SVO(c$YO(j#{O(k#|O~O#y.hO~P#ByO#X:YO#{:YO#y(XX!W(XX~PN}O^'Za!V'Za'l'Za'j'Za!g'Za!S'Zao'Za!X'Za%a'Za!a'Za~P!7sOP#fiX#fi^#fik#fiz#fi!V#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi'l#fi(S#fi(c#fi'j#fi!S#fi!g#fio#fi!X#fi%a#fi!a#fi~P#,`O^#zi!V#zi'l#zi'j#zi!S#zi!g#zio#zi!X#zi%a#zi!a#zi~P!7sO$W.mO$Y.mO~O$W.nO$Y.nO~O!a)^O#X.oO!X$^X$T$^X$W$^X$Y$^X$a$^X~O!U.pO~O!X)aO$T.rO$W)`O$Y)`O$a.sO~O!V:UO!W(WX~P#ByO!W.tO~O!a)^O$a(lX~O$a.vO~Oq)pO(T)qO(U.yO~O!S.}O~P!&VO!VcX!acX!gcX!g$sX(ccX~P!/ZO!g/TO~P#,`O!V/UO!a#tO(c'fO!g(pX~O!g/ZO~O!U*RO'u%_O!g(pP~O#d/]O~O!S$sX!V$sX!a$zX~P!/ZO!V/^O!S(qX~P#,`O!a/`O~O!S/bO~Ok/fO!a#tO!h%]O(O%QO(c'fO~O'u/hO~O!a+XO~O^%fO!V/lO'l%fO~O!W/nO~P!3XO!]/oO!^/oO'v!kO(V!lO~O|/qO(V!lO~O#T/rO~O'u&POd'`X!V'`X~O!V*kOd(Pa~Od/wO~Oy/xOz/xO|/yOgva(jva(kva!Vva#Xva~Odva#yva~P$ aOy)uO|)vOg$la(j$la(k$la!V$la#X$la~Od$la#y$la~P$!VOy)uO|)vOg$na(j$na(k$na!V$na#X$na~Od$na#y$na~P$!xO#d/{O~Od$|a!V$|a#X$|a#y$|a~P!0dO!a#tO~O#d0OO~O!V*|O^(ua'l(ua~Oy#xOz#yO|#zO!f#vO!h#wO(SVOP!niX!nik!ni!V!ni!e!ni!l!ni#g!ni#h!ni#i!ni#j!ni#k!ni#l!ni#m!ni#n!ni#o!ni#q!ni#s!ni#u!ni#v!ni(c!ni(j!ni(k!ni~O^!ni'l!ni'j!ni!S!ni!g!nio!ni!X!ni%a!ni!a!ni~P$$gOg.TO!X'UO%a.SO~Oi0YO'u0XO~P!1UO!a+XO^'}a!X'}a'l'}a!V'}a~O#d0`O~OXYX!VcX!WcX~O!V0aO!W(yX~O!W0cO~OX0dO~O'u+aO'wTO'zUO~O!X%vO'u%_O]'hX!V'hX~O!V+fO](xa~O!g0iO~P!7sOX0lO~O]0mO~O#X0pO~Og0sO!X${O~O(V(sO!W(vP~Og0|O!X0yO%a0{O(O%QO~OX1WO!V1UO!W(wX~O!W1XO~O]1ZO^%fO'l%fO~O'u#lO'wTO'zUO~O#X$dO#{$dOP(XXX(XXk(XXy(XXz(XX|(XX!V(XX!e(XX!h(XX!l(XX#g(XX#h(XX#i(XX#j(XX#k(XX#l(XX#m(XX#n(XX#q(XX#s(XX#u(XX#v(XX(S(XX(c(XX(j(XX(k(XX~O#o1^O&R1_O^(XX!f(XX~P$+]O#X$dO#o1^O&R1_O~O^1aO~P%TO^1cO~O&[1fOP&YiQ&YiV&Yi^&Yia&Yib&Yii&Yik&Yil&Yim&Yis&Yiu&Yiw&Yi|&Yi!Q&Yi!R&Yi!X&Yi!c&Yi!h&Yi!k&Yi!l&Yi!m&Yi!o&Yi!q&Yi!t&Yi!x&Yi#p&Yi$Q&Yi$U&Yi%`&Yi%b&Yi%d&Yi%e&Yi%f&Yi%i&Yi%k&Yi%n&Yi%o&Yi%q&Yi%}&Yi&T&Yi&V&Yi&X&Yi&Z&Yi&^&Yi&d&Yi&j&Yi&l&Yi&n&Yi&p&Yi&r&Yi'j&Yi'u&Yi'w&Yi'z&Yi(S&Yi(b&Yi(o&Yi!W&Yi_&Yi&a&Yi~O_1lO!W1jO&a1kO~P`O!XXO!h1nO~O&h,iOP&ciQ&ciV&ci^&cia&cib&cii&cik&cil&cim&cis&ciu&ciw&ci|&ci!Q&ci!R&ci!X&ci!c&ci!h&ci!k&ci!l&ci!m&ci!o&ci!q&ci!t&ci!x&ci#p&ci$Q&ci$U&ci%`&ci%b&ci%d&ci%e&ci%f&ci%i&ci%k&ci%n&ci%o&ci%q&ci%}&ci&T&ci&V&ci&X&ci&Z&ci&^&ci&d&ci&j&ci&l&ci&n&ci&p&ci&r&ci'j&ci'u&ci'w&ci'z&ci(S&ci(b&ci(o&ci!W&ci&[&ci_&ci&a&ci~O!S1tO~O!V!Za!W!Za~P#ByOl!mO|!nO!U1zO(V!lO!V'OX!W'OX~P?wO!V,yO!W(Za~O!V'UX!W'UX~P!6{O!V,|O!W(ia~O!W2RO~P'WO^%fO#X2[O'l%fO~O^%fO!a#tO#X2[O'l%fO~O^%fO!a#tO!l2`O#X2[O'l%fO(c'fO~O^%fO'l%fO~P!7sO!V$`Oo$ka~O!S&}i!V&}i~P!7sO!V'zO!S(Yi~O!V(RO!S(gi~O!S(hi!V(hi~P!7sO!V(ei!g(ei^(ei'l(ei~P!7sO#X2bO!V(ei!g(ei^(ei'l(ei~O!V(_O!g(di~O|%`O!X%aO!x]O#b2gO#c2fO'u%_O~O|%`O!X%aO#c2fO'u%_O~Og2nO!X'UO%a2mO~Og2nO!X'UO%a2mO(O%QO~O#dvaPvaXva^vakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva'lva(Sva(cva!gva!Sva'jvaova!Xva%ava!ava~P$ aO#d$laP$laX$la^$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la'l$la(S$la(c$la!g$la!S$la'j$lao$la!X$la%a$la!a$la~P$!VO#d$naP$naX$na^$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na'l$na(S$na(c$na!g$na!S$na'j$nao$na!X$na%a$na!a$na~P$!xO#d$|aP$|aX$|a^$|ak$|az$|a!V$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a'l$|a(S$|a(c$|a!g$|a!S$|a'j$|a#X$|ao$|a!X$|a%a$|a!a$|a~P#,`O^#[q!V#[q'l#[q'j#[q!S#[q!g#[qo#[q!X#[q%a#[q!a#[q~P!7sOd'PX!V'PX~P!'oO!V.^Od(]a~O!U2vO!V'QX!g'QX~P%TO!V.aO!g(^a~O!V.aO!g(^a~P!7sO!S2yO~O#y!ja!W!ja~PJqO#y!ba!V!ba!W!ba~P#ByO#y!na!W!na~P!:^O#y!pa!W!pa~P!<wO!X3]O$UfO$_3^O~O!W3bO~Oo3cO~P#,`O^$hq!V$hq'l$hq'j$hq!S$hq!g$hqo$hq!X$hq%a$hq!a$hq~P!7sO!S3dO~P#,`Oy)uO|)vO(k)zOg%Xi(j%Xi!V%Xi#X%Xi~Od%Xi#y%Xi~P$IuOy)uO|)vOg%Zi(j%Zi(k%Zi!V%Zi#X%Zi~Od%Zi#y%Zi~P$JhO(c$YO~P#,`O!U3gO'u%_O!V'[X!g'[X~O!V/UO!g(pa~O!V/UO!a#tO!g(pa~O!V/UO!a#tO(c'fO!g(pa~Od$ui!V$ui#X$ui#y$ui~P!0dO!U3oO'u*WO!S'^X!V'^X~P!1RO!V/^O!S(qa~O!V/^O!S(qa~P#,`O!a#tO#o3wO~Ok3zO!a#tO(c'fO~Od(Qi!V(Qi~P!0dO#X3}Od(Qi!V(Qi~P!0dO!g4QO~O^$iq!V$iq'l$iq'j$iq!S$iq!g$iqo$iq!X$iq%a$iq!a$iq~P!7sO!S4UO~O!V4VO!X(rX~P#,`O!f#vO~P4QO^$sX!X$sX%UYX'l$sX!V$sX~P!/ZO%U4XO^hXghXyhX|hX!XhX'lhX(jhX(khX!VhX~O%U4XO~O%b4`O'u+aO'wTO'zUO!V'gX!W'gX~O!V0aO!W(ya~OX4dO~O]4eO~O^%fO'l%fO~P#,`O!X${O~P#,`O!V4mO#X4oO!W(vX~O!W4pO~Ol!mO|4qO![!wO!]!tO!^!tO!x9qO!|!oO!}!oO#O!oO#P!oO#Q!oO#T4vO#U!xO'v!kO'wTO'zUO(V!lO(b!rO~O!W4uO~P%$gOg4{O!X0yO%a4zO~Og4{O!X0yO%a4zO(O%QO~O'u#lO!V'fX!W'fX~O!V1UO!W(wa~O'wTO'zUO(V5UO~O]5YO~O#o5]O&R5^O~PMaO!g5_O~P%TO^5aO~O^5aO~P%TO_1lO!W5fO&a1kO~P`O!a5hO~O!a5jO!V([i!W([i!a([i!h([i(O([i~O!V#ai!W#ai~P#ByO#X5kO!V#ai!W#ai~O!V!Zi!W!Zi~P#ByO^%fO#X5tO'l%fO~O^%fO!a#tO#X5tO'l%fO~O!V(eq!g(eq^(eq'l(eq~P!7sO!V(_O!g(dq~O|%`O!X%aO#c5{O'u%_O~O!X'UO%a6OO~Og6RO!X'UO%a6OO~O#d%XiP%XiX%Xi^%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi'l%Xi(S%Xi(c%Xi!g%Xi!S%Xi'j%Xio%Xi!X%Xi%a%Xi!a%Xi~P$IuO#d%ZiP%ZiX%Zi^%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi'l%Zi(S%Zi(c%Zi!g%Zi!S%Zi'j%Zio%Zi!X%Zi%a%Zi!a%Zi~P$JhO#d$uiP$uiX$ui^$uik$uiz$ui!V$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui'l$ui(S$ui(c$ui!g$ui!S$ui'j$ui#X$uio$ui!X$ui%a$ui!a$ui~P#,`Od'Pa!V'Pa~P!0dO!V'Qa!g'Qa~P!7sO!V.aO!g(^i~O#y#[i!V#[i!W#[i~P#ByOP$[Oy#xOz#yO|#zO!f#vO!h#wO!l$[O(SVOX#fik#fi!e#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(c#fi(j#fi(k#fi!V#fi!W#fi~O#g#fi~P%2vO#g9yO~P%2vOP$[Oy#xOz#yO|#zO!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO(SVOX#fi!e#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(c#fi(j#fi(k#fi!V#fi!W#fi~Ok#fi~P%5ROk9{O~P%5ROP$[Ok9{Oy#xOz#yO|#zO!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O(SVO#q#fi#s#fi#u#fi#v#fi#y#fi(c#fi(j#fi(k#fi!V#fi!W#fi~OX#fi!e#fi#l#fi#m#fi#n#fi#o#fi~P%7^OX:XO!e9}O#l9}O#m9}O#n:WO#o9}O~P%7^OP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO(SVO#s#fi#u#fi#v#fi#y#fi(c#fi(k#fi!V#fi!W#fi~O(j#fi~P%9xO(j#{O~P%9xOP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO#s:QO(SVO(j#{O#u#fi#v#fi#y#fi(c#fi!V#fi!W#fi~O(k#fi~P%<TO(k#|O~P%<TOP$[OX:XOk9{Oy#xOz#yO|#zO!e9}O!f#vO!h#wO!l$[O#g9yO#h9zO#i9zO#j9zO#k9|O#l9}O#m9}O#n:WO#o9}O#q:OO#s:QO#u:SO(SVO(j#{O(k#|O~O#v#fi#y#fi(c#fi!V#fi!W#fi~P%>`O^#wy!V#wy'l#wy'j#wy!S#wy!g#wyo#wy!X#wy%a#wy!a#wy~P!7sOg;lOy)uO|)vO(j)xO(k)zO~OP#fiX#fik#fiz#fi!e#fi!f#fi!h#fi!l#fi#g#fi#h#fi#i#fi#j#fi#k#fi#l#fi#m#fi#n#fi#o#fi#q#fi#s#fi#u#fi#v#fi#y#fi(S#fi(c#fi!V#fi!W#fi~P%AWO!f#vOP(RXX(RXg(RXk(RXy(RXz(RX|(RX!e(RX!h(RX!l(RX#g(RX#h(RX#i(RX#j(RX#k(RX#l(RX#m(RX#n(RX#o(RX#q(RX#s(RX#u(RX#v(RX#y(RX(S(RX(c(RX(j(RX(k(RX!V(RX!W(RX~O#y#zi!V#zi!W#zi~P#ByO#y!ni!W!ni~P$$gO!W6_O~O!V'Za!W'Za~P#ByO!a#tO(c'fO!V'[a!g'[a~O!V/UO!g(pi~O!V/UO!a#tO!g(pi~Od$uq!V$uq#X$uq#y$uq~P!0dO!S'^a!V'^a~P#,`O!a6fO~O!V/^O!S(qi~P#,`O!V/^O!S(qi~O!S6jO~O!a#tO#o6oO~Ok6pO!a#tO(c'fO~O!S6rO~Od$wq!V$wq#X$wq#y$wq~P!0dO^$iy!V$iy'l$iy'j$iy!S$iy!g$iyo$iy!X$iy%a$iy!a$iy~P!7sO!a5jO~O!V4VO!X(ra~O^#[y!V#[y'l#[y'j#[y!S#[y!g#[yo#[y!X#[y%a#[y!a#[y~P!7sOX6wO~O!V0aO!W(yi~O]6}O~O(V(sO!V'cX!W'cX~O!V4mO!W(va~OikO'u7UO~P.bO!W7XO~P%$gOl!mO|7YO'wTO'zUO(V!lO(b!rO~O!X0yO~O!X0yO%a7[O~Og7_O!X0yO%a7[O~OX7dO!V'fa!W'fa~O!V1UO!W(wi~O!g7hO~O!g7iO~O!g7lO~O!g7lO~P%TO^7nO~O!a7oO~O!g7pO~O!V(hi!W(hi~P#ByO^%fO#X7xO'l%fO~O!V(ey!g(ey^(ey'l(ey~P!7sO!V(_O!g(dy~O!X'UO%a7{O~O#d$uqP$uqX$uq^$uqk$uqz$uq!V$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq'l$uq(S$uq(c$uq!g$uq!S$uq'j$uq#X$uqo$uq!X$uq%a$uq!a$uq~P#,`O#d$wqP$wqX$wq^$wqk$wqz$wq!V$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq'l$wq(S$wq(c$wq!g$wq!S$wq'j$wq#X$wqo$wq!X$wq%a$wq!a$wq~P#,`O!V'Qi!g'Qi~P!7sO#y#[q!V#[q!W#[q~P#ByOy/xOz/xO|/yOPvaXvagvakva!eva!fva!hva!lva#gva#hva#iva#jva#kva#lva#mva#nva#ova#qva#sva#uva#vva#yva(Sva(cva(jva(kva!Vva!Wva~Oy)uO|)vOP$laX$lag$lak$laz$la!e$la!f$la!h$la!l$la#g$la#h$la#i$la#j$la#k$la#l$la#m$la#n$la#o$la#q$la#s$la#u$la#v$la#y$la(S$la(c$la(j$la(k$la!V$la!W$la~Oy)uO|)vOP$naX$nag$nak$naz$na!e$na!f$na!h$na!l$na#g$na#h$na#i$na#j$na#k$na#l$na#m$na#n$na#o$na#q$na#s$na#u$na#v$na#y$na(S$na(c$na(j$na(k$na!V$na!W$na~OP$|aX$|ak$|az$|a!e$|a!f$|a!h$|a!l$|a#g$|a#h$|a#i$|a#j$|a#k$|a#l$|a#m$|a#n$|a#o$|a#q$|a#s$|a#u$|a#v$|a#y$|a(S$|a(c$|a!V$|a!W$|a~P%AWO#y$hq!V$hq!W$hq~P#ByO#y$iq!V$iq!W$iq~P#ByO!W8VO~O#y8WO~P!0dO!a#tO!V'[i!g'[i~O!a#tO(c'fO!V'[i!g'[i~O!V/UO!g(pq~O!S'^i!V'^i~P#,`O!V/^O!S(qq~O!S8^O~P#,`O!S8^O~Od(Qy!V(Qy~P!0dO!V'aa!X'aa~P#,`O^%Tq!X%Tq'l%Tq!V%Tq~P#,`OX8cO~O!V0aO!W(yq~O#X8gO!V'ca!W'ca~O!V4mO!W(vi~P#ByOPYXXYXkYXyYXzYX|YX!SYX!VYX!eYX!fYX!hYX!lYX#XYX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!a%RX#o%RX~P&2WO!X0yO%a8kO~O'wTO'zUO(V8pO~O!V1UO!W(wq~O!g8sO~O!g8tO~O!g8uO~O!g8uO~P%TO#X8xO!V#ay!W#ay~O!V#ay!W#ay~P#ByO!X'UO%a8}O~O#y#wy!V#wy!W#wy~P#ByOP$uiX$uik$uiz$ui!e$ui!f$ui!h$ui!l$ui#g$ui#h$ui#i$ui#j$ui#k$ui#l$ui#m$ui#n$ui#o$ui#q$ui#s$ui#u$ui#v$ui#y$ui(S$ui(c$ui!V$ui!W$ui~P%AWOy)uO|)vO(k)zOP%XiX%Xig%Xik%Xiz%Xi!e%Xi!f%Xi!h%Xi!l%Xi#g%Xi#h%Xi#i%Xi#j%Xi#k%Xi#l%Xi#m%Xi#n%Xi#o%Xi#q%Xi#s%Xi#u%Xi#v%Xi#y%Xi(S%Xi(c%Xi(j%Xi!V%Xi!W%Xi~Oy)uO|)vOP%ZiX%Zig%Zik%Ziz%Zi!e%Zi!f%Zi!h%Zi!l%Zi#g%Zi#h%Zi#i%Zi#j%Zi#k%Zi#l%Zi#m%Zi#n%Zi#o%Zi#q%Zi#s%Zi#u%Zi#v%Zi#y%Zi(S%Zi(c%Zi(j%Zi(k%Zi!V%Zi!W%Zi~O#y$iy!V$iy!W$iy~P#ByO#y#[y!V#[y!W#[y~P#ByO!a#tO!V'[q!g'[q~O!V/UO!g(py~O!S'^q!V'^q~P#,`O!S9UO~P#,`O!V0aO!W(yy~O!V4mO!W(vq~O!X0yO%a9]O~O!g9`O~O!X'UO%a9eO~OP$uqX$uqk$uqz$uq!e$uq!f$uq!h$uq!l$uq#g$uq#h$uq#i$uq#j$uq#k$uq#l$uq#m$uq#n$uq#o$uq#q$uq#s$uq#u$uq#v$uq#y$uq(S$uq(c$uq!V$uq!W$uq~P%AWOP$wqX$wqk$wqz$wq!e$wq!f$wq!h$wq!l$wq#g$wq#h$wq#i$wq#j$wq#k$wq#l$wq#m$wq#n$wq#o$wq#q$wq#s$wq#u$wq#v$wq#y$wq(S$wq(c$wq!V$wq!W$wq~P%AWOd%]!Z!V%]!Z#X%]!Z#y%]!Z~P!0dO!V'cq!W'cq~P#ByO!V#a!Z!W#a!Z~P#ByO#d%]!ZP%]!ZX%]!Z^%]!Zk%]!Zz%]!Z!V%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z'l%]!Z(S%]!Z(c%]!Z!g%]!Z!S%]!Z'j%]!Z#X%]!Zo%]!Z!X%]!Z%a%]!Z!a%]!Z~P#,`OP%]!ZX%]!Zk%]!Zz%]!Z!e%]!Z!f%]!Z!h%]!Z!l%]!Z#g%]!Z#h%]!Z#i%]!Z#j%]!Z#k%]!Z#l%]!Z#m%]!Z#n%]!Z#o%]!Z#q%]!Z#s%]!Z#u%]!Z#v%]!Z#y%]!Z(S%]!Z(c%]!Z!V%]!Z!W%]!Z~P%AWOo(WX~P1jO'v!kO~P!){O!ScX!VcX#XcX~P&2WOPYXXYXkYXyYXzYX|YX!VYX!VcX!eYX!fYX!hYX!lYX#XYX#XcX#dcX#gYX#hYX#iYX#jYX#kYX#lYX#mYX#nYX#oYX#qYX#sYX#uYX#vYX#{YX(SYX(cYX(jYX(kYX~O!acX!gYX!gcX(ccX~P&GnOP9pOQ9pOa;aOb!hOikOk9pOlkOmkOskOu9pOw9pO|WO!QkO!RkO!XXO!c9sO!hZO!k9pO!l9pO!m9pO!o9tO!q9wO!t!gO$Q!jO$UfO'u)TO'wTO'zUO(SVO(b[O(o;_O~O!V:UO!W$ka~Oi%ROk$sOl$rOm$rOs%SOu%TOw:[O|$zO!X${O!c;fO!h$wO#c:bO$Q%XO$m:^O$o:`O$r%YO'u(kO'wTO'zUO(O%QO(S$tO~O#p)[O~P&LdO!WYX!WcX~P&GnO#d9xO~O!a#tO#d9xO~O#X:YO~O#o9}O~O#X:dO!V(hX!W(hX~O#X:YO!V(fX!W(fX~O#d:eO~Od:gO~P!0dO#d:lO~O#d:mO~O!a#tO#d:nO~O!a#tO#d:eO~O#y:oO~P#ByO#d:pO~O#d:qO~O#d:rO~O#d:sO~O#d:tO~O#d:uO~O#y:vO~P!0dO#y:wO~P!0dO$U~!f!|!}#P#Q#T#b#c#n(o$m$o$r%U%`%a%b%i%k%n%o%q%s~'pR$U(o#h!R'n'v#il#g#jky'o(V'o'u$W$Y$W~",
|
|
2521
|
+
goto: "$&a(}PPPP)OP)RP)cP*r.uPPPP5UPP5kP;f>mP?QP?QPPP?QP@rP?QP?QP?QP@vPP@{PAfPF]PPPFaPPPPFaIaPPPIgJbPFaPLoPPPPN}FaPPPFaPFaP!#]FaP!&p!'r!'{P!(n!(r!(nPPPPP!+|!'rPP!,j!-dP!0WFaFa!0]!3f!7z!7z!;oPPP!;vFaPPPPPPPPPPP!?SP!@ePPFa!ArPFaPFaFaFaFaPFa!CUPP!F]P!I`P!Id!In!Ir!IrP!FYP!Iv!IvP!LyP!L}FaFa!MT#!V?QP?QP?Q?QP##a?Q?Q#%]?Q#'l?Q#)b?Q?Q#*O#+|#+|#,Q#,Y#+|#,bP#+|P?Q#,z?Q#.T?Q?Q5UPPP#/aPPP#/y#/yP#/yP#0`#/yPP#0fP#0]P#0]#0x#0]#1d#1j5R)R#1m)RP#1t#1t#1tP)RP)RP)RP)RPP)RP#1z#1}P#1})RP#2RP#2UP)RP)RP)RP)RP)RP)R)RPP#2[#2b#2l#2r#2x#3O#3U#3d#3j#3p#3z#4Q#4[#4k#4q#5b#5t#5z#6Q#6`#6u#8W#8f#8l#8r#8x#9O#9Y#9`#9f#9p#:S#:YPPPPPPPPPP#:`PPPPPPP#;S#>ZP#?j#?q#?yPPPP#DX#F}#Me#Mh#Mk#Nd#Ng#Nj#Nq#NyPP$ P$ T$ {$!z$#O$#dPP$#h$#n$#rP$#u$#y$#|$$r$%Y$%p$%t$%w$%z$&Q$&T$&X$&]R!zRmqOXs!Y#b%e&h&j&k&m,a,f1f1iY!tQ'U-R0y4tQ%kuQ%sxQ%z{Q&`!US&|!d,yQ'[!hS'b!q!wS*^${*cQ+_%tQ+l%|Q,Q&YQ-P'TQ-Z']Q-c'cQ/o*eQ1T,RR:c9t$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7xS#o]9q!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ*n%UQ+d%vQ,S&]Q,Z&eQ.W:ZQ0V+VQ0Z+XQ0f+eQ1],XQ2j.TQ4_0aQ5S1UQ6Q2nQ6W:[Q6y4`R8O6R&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bt!mQ!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4v$^$ri#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ%}{Q&z!dS'Q%a,|Q+d%vQ/z*rQ0f+eQ0k+kQ1[,WQ1],XQ4_0aQ4h0mQ5V1WQ5W1ZQ6y4`Q6|4eQ7g5YQ8f6}R8q7dpnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR,U&a&t^OPXYstuvy!Y!_!f!i!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;a;b[#ZWZ#U#X&}'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q%nwQ%rxS%w{%|Q&T!SQ'X!gQ'Z!hQ(f#qS*Q$w*US+^%s%tQ+b%vQ+{&WQ,P&YS-Y'[']Q.V(gQ/Y*RQ0_+_Q0e+eQ0g+fQ0j+jQ1O+|S1S,Q,RQ2W-ZQ3f/UQ4^0aQ4b0dQ4g0lQ5R1TQ6c3gQ6x4`Q6{4dQ8b6wR9W8cv$yi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h!S%px!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yQ+W%nQ+q&QQ+t&RQ,O&YQ.U(fQ0}+{U1R,P,Q,RQ2o.VQ4|1OS5Q1S1TQ7c5R#O;c#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg;d:W:X:^:`:b:i:k:m:q:s:wW%Oi%Q*k;_S&Q!P&_Q&R!QQ&S!RR+o&O$_$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lT)q$t)rV*o%U:Z:[U'Q!d%a,|S(t#x#yQ+i%yS.O(b(cQ0t+uQ4O/xR7R4m&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b$i$_c#W#c%i%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.i.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;UT#RV#S&{kOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ'O!dR1{,yv!mQ!d!q!t!w!x&|'T'U'b'c'd,y-P-R-c0y4t4vS*]${*cS/g*^*eQ/p*fQ0v+wQ3y/oR3|/rlqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&o!]Q'l!vS(h#s9xQ+[%qQ+y&TQ+z&VQ-W'YQ-e'eS.[(m:eS/}*w:nQ0]+]Q0x+xQ1m,hQ1o,iQ1w,tQ2U-XQ2X-]S4T0O:tQ4Y0^S4]0`:uQ5l1yQ5p2VQ5u2^Q6v4ZQ7s5nQ7t5qQ7w5vR8w7p$d$^c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(e#n'_U*h$|(l3YS+R%i.iQ2k0VQ5}2jQ7}6QR9O8O$d$]c#W#c%j%l'w'}(i(p(x(y(z({(|(})O)P)Q)R)S)U)X)])g+S+h,w-f-k-p-r.].c.g.j.k.z/|1u1x2Y2a2u2z2{2|2}3O3P3Q3R3S3T3U3V3W3Z3[3a4S4[5m5s5x6U6V6[6]7T7r7v8P8T8U8z9Y9a9r;US(d#n'_S(v#y$^S+Q%i.iS.P(c(eQ.l)WQ0S+RR2h.Q&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS#o]9qQ&j!WQ&k!XQ&m!ZQ&n![R1e,dQ'V!gQ+T%nQ-U'XS.R(f+WQ2S-TW2l.U.V0U0WQ5o2TU5|2i2k2oS7z5}6PS8|7|7}S9c8{9OQ9k9dR9n9lU!uQ'U-RT4r0y4t!O_OXZ`s!U!Y#b#f%]%e&_&a&h&j&k&m(_,a,f-x1f1i]!oQ!q'U-R0y4tT#o]9q%WzOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS(t#x#yS.O(b(c!s:{$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bY!sQ'U-R0y4tQ'a!qS'k!t!wS'm!x4vS-b'b'cQ-d'dR2_-cQ'j!sS(Z#e1`S-a'a'mQ/X*QQ/e*]Q2`-dQ3k/YS3t/f/pQ6b3fS6m3z3|Q8Y6cR8a6pQ#ubQ'i!sS(Y#e1`S([#k*vQ*x%^Q+Y%oQ+`%uU-`'a'j'mQ-t(ZQ/W*QQ/d*]Q/j*`Q0[+ZQ1P+}S2]-a-dQ2e-|S3j/X/YS3s/e/pQ3v/iQ3x/kQ5O1QQ5w2`Q6a3fQ6e3kS6i3t3|Q6n3{Q7a5PS8X6b6cQ8]6jQ8_6mQ8n7bQ9S8YQ9T8^Q9V8aQ9_8oQ9g9UQ;O:yQ;Z;SR;[;TV!uQ'U-R%WaOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xS#uy!i!r:x$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR;O;a%WbOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xQ%^j!S%ox!h!s%r%s%t&{'Z'[']'a'k*]+^+_,v-Y-Z-b/g0_2P2W2_3yS%uy!iQ+Z%pQ+}&YW1Q,O,P,Q,RU5P1R1S1TS7b5Q5RQ8o7c!r:y$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ;S;`R;T;a$zeOPXYstuv!Y!_!f!n#Q#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7xY#`WZ#U#X'x!S%bm#f#g#j%]%`(R(](^(_*y*z*|,],s-q-w-x-y-{1n2f2g5j5{Q,[&e!p:z$Z$l)i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bR:}&}S'R!d%aR1},|$|dOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{,^,a,f-V-_-m-s.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2v4q4{5]5^5a5t7Y7_7n7x!r)V$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bQ,Z&eQ0V+VQ2j.TQ6Q2nR8O6R!f$Tc#W%i'w'}(i(p)P)Q)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!T:P)U)g,w.i1u1x2z3S3T3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!b$Vc#W%i'w'}(i(p)R)S)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9r!P:R)U)g,w.i1u1x2z3U3V3Z3a5m6V6[6]7T7r8P8T8U9Y9a;U!^$Zc#W%i'w'}(i(p)X)]+h-f-k-p-r.].c.z/|2Y2a2u3W4S4[5s5x6U7v8z9rQ3e/Sz;b)U)g,w.i1u1x2z3Z3a5m6V6[6]7T7r8P8T8U9Y9a;UQ;g;iR;h;j&zkOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bS$mh$nR3^.o'RgOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$if$oQ$gfS)`$j)dR)l$oT$hf$oT)b$j)d'RhOPWXYZhstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$Z$`$d$l$n%e%k%x&a&d&e&h&j&k&m&q&y&}'W'h'x'z(Q(X(m(q(u)i)t*w*{+V,^,a,f,r,u-V-_-m-s.T.a.h.o.p/y0O0`0|1^1_1a1c1f1i1k1z2[2b2n2v3]4o4q4{5]5^5a5k5t6R7Y7_7n7x8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;bT$mh$nQ$phR)k$n%WjOPWXYZstuv!Y!_!f!n#Q#U#X#b#m#s#w#z#}$O$P$Q$R$S$T$U$V$W$X$`$d%e%k%x&a&d&e&h&j&k&m&q&y'W'h'x'z(Q(X(m(q(u)t*w*{+V,^,a,f-V-_-m-s.T.a.h/y0O0`0|1^1_1a1c1f1i1k2[2b2n2v4q4{5]5^5a5t6R7Y7_7n7x!s;`$Z$l&})i,r,u.p1z3]4o5k8g8x9p9s9t9w9x9y9z9{9|9}:O:P:Q:R:S:T:U:Y:c:d:e:g:n:o:t:u;b#alOPXZs!Y!_!n#Q#b#m#z$l%e&a&d&e&h&j&k&m&q&y'W(u)i*{+V,^,a,f-V.T.p/y0|1^1_1a1c1f1i1k2n3]4q4{5]5^5a6R7Y7_7nv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lQ*s%YQ.{)ug3Y:W:X:^:`:b:i:k:m:q:s:wv$xi#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;hQ*V$yS*`${*cQ*t%ZQ/k*a#O;Q#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lf;R:W:X:^:`:b:i:k:m:q:s:wQ;V;cQ;W;dQ;X;eR;Y;fv$|i#v%V%W%[)y){*T*i*j.^/]/{3e3}8W;_;g;h#O(l#t$b$c$w$z)p)v)|*Z+U+X+p+s.S/O/^/`0p0s0{2m3o3w4V4X4z6O6f6o7[7{8k8}9]9e:]:_:a:h:j:l:p:r:v;k;lg3Y:W:X:^:`:b:i:k:m:q:s:wloOXs!Y#b%e&h&j&k&m,a,f1f1iQ*Y$zQ,o&tQ,p&vR3n/^$^$}i#t#v$b$c$w$z%V%W%[)p)v)y){)|*T*Z*i*j+U+X+p+s.S.^/O/]/^/`/{0p0s0{2m3e3o3w3}4V4X4z6O6f6o7[7{8W8k8}9]9e:W:X:]:^:_:`:a:b:h:i:j:k:l:m:p:q:r:s:v:w;_;g;h;k;lQ+r&RQ0r+tQ4k0qR7Q4lT*b${*cS*b${*cT4s0y4tS/i*_4qT3{/q7YQ+Y%oQ/j*`Q0[+ZQ1P+}Q5O1QQ7a5PQ8n7bR9_8on)y$u(n*u/[/s/t2s3l4R6`6q9R;P;];^!Y:h(j)Z*P*X.Z.w.|/S/a0T0o0q2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j]:i3X6Z8Q9P9Q9op){$u(n*u/Q/[/s/t2s3l4R6`6q9R;P;];^![:j(j)Z*P*X.Z.w.|/S/a0T0o0q2p2r3m3q4j4l6S6T6g6k6s6u8[8`9f;i;j_:k3X6Z8Q8R9P9Q9opnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ&[!TR,^&epnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iR&[!TQ+v&SR0n+oqnOXs!U!Y#b%e&_&h&j&k&m,a,f1f1iQ0z+{S4y0}1OU7Z4w4x4|S8j7]7^S9Z8i8lQ9h9[R9m9iQ&c!UR,V&_R5V1WS%w{%|R0g+fQ&h!VR,a&iR,g&nT1g,f1iR,k&oQ,j&oR1p,kQ'o!yR-g'oQsOQ#bXT%hs#bQ!|TR'q!|Q#PUR's#PQ)r$tR.x)rQ#SVR'u#SQ#VWU'{#V'|-nQ'|#WR-n'}Q,z'OR1|,zQ._(nR2t._Q.b(pS2w.b2xR2x.cQ-R'UR2Q-RY!qQ'U-R0y4tR'`!qS#]W%`U(S#](T-oQ(T#^R-o(OQ,}'RR2O,}r`OXs!U!Y#b%e&_&a&h&j&k&m,a,f1f1iS#fZ%]U#p`#f-xR-x(_Q(`#hQ-u([W-}(`-u2c5yQ2c-vR5y2dQ)d$jR.q)dQ$nhR)j$nQ$acU)Y$a-j:VQ-j9rR:V)gQ/V*QW3h/V3i6d8ZU3i/W/X/YS6d3j3kR8Z6e#o)w$u(j(n)Z*P*X*p*q*u.X.Y.Z.w.|/Q/R/S/[/a/s/t0T0o0q2p2q2r2s3X3l3m3q4R4j4l6S6T6X6Y6Z6`6g6k6q6s6u8Q8R8S8[8`9P9Q9R9f9o;P;];^;i;jQ/_*XU3p/_3r6hQ3r/aR6h3qQ*c${R/m*cQ*l%PR/v*lQ4W0TR6t4WQ*}%cR0R*}Q4n0tS7S4n8hR8h7TQ+x&TR0w+xQ4t0yR7W4tQ1V,SS5T1V7eR7e5VQ0b+bW4a0b4c6z8dQ4c0eQ6z4bR8d6{Q+g%wR0h+gQ1i,fR5e1iWrOXs#bQ&l!YQ+P%eQ,`&hQ,b&jQ,c&kQ,e&mQ1d,aS1g,f1iR5d1fQ%gpQ&p!^Q&s!`Q&u!aQ&w!bQ'g!sQ+O%dQ+[%qQ+n%}Q,U&cQ,m&rW-^'a'i'j'mQ-e'eQ/l*bQ0]+]S1Y,V,YQ1q,lQ1r,oQ1s,pQ2X-]W2Z-`-a-d-fQ4Y0^Q4f0kQ4i0oQ4}1PQ5X1[Q5c1eU5r2Y2]2`Q5u2^Q6v4ZQ7O4hQ7P4jQ7V4sQ7`5OQ7f5WS7u5s5wQ7w5vQ8e6|Q8m7aQ8r7gQ8y7vQ9X8fQ9^8nQ9b8zR9j9_Q%qxQ'Y!hQ'e!sU+]%r%s%tQ,t&{U-X'Z'[']S-]'a'kQ/c*]S0^+^+_Q1y,vS2V-Y-ZQ2^-bQ3u/gQ4Z0_Q5n2PQ5q2WQ5v2_R6l3yS$vi;_R*m%QU%Pi%Q;_R/u*kQ$uiS(j#t+XQ(n#vS)Z$b$cQ*P$wQ*X$zQ*p%VQ*q%WQ*u%[Q.X:]Q.Y:_Q.Z:aQ.w)pS.|)v/OQ/Q)yQ/R){Q/S)|Q/[*TQ/a*ZQ/s*iQ/t*jh0T+U.S0{2m4z6O7[7{8k8}9]9eQ0o+pQ0q+sQ2p:hQ2q:jQ2r:lQ2s.^S3X:W:XQ3l/]Q3m/^Q3q/`Q4R/{Q4j0pQ4l0sQ6S:pQ6T:rQ6X:^Q6Y:`Q6Z:bQ6`3eQ6g3oQ6k3wQ6q3}Q6s4VQ6u4XQ8Q:mQ8R:iQ8S:kQ8[6fQ8`6oQ9P:qQ9Q:sQ9R8WQ9f:vQ9o:wQ;P;_Q;];gQ;^;hQ;i;kR;j;llpOXs!Y#b%e&h&j&k&m,a,f1f1iQ!ePS#dZ#mQ&r!_U'^!n4q7YQ't#QQ(w#zQ)h$lS,Y&a&dQ,_&eQ,l&qQ,q&yQ-T'WQ.e(uQ.u)iQ0P*{Q0W+VQ1b,^Q2T-VQ2k.TQ3`.pQ4P/yQ4x0|Q5Z1^Q5[1_Q5`1aQ5b1cQ5g1kQ5}2nQ6^3]Q7^4{Q7j5]Q7k5^Q7m5aQ7}6RQ8l7_R8v7n#UcOPXZs!Y!_!n#b#m#z%e&a&d&e&h&j&k&m&q&y'W(u*{+V,^,a,f-V.T/y0|1^1_1a1c1f1i1k2n4q4{5]5^5a6R7Y7_7nQ#WWQ#cYQ%itQ%juS%lv!fS'w#U'zQ'}#XQ(i#sQ(p#wQ(x#}Q(y$OQ(z$PQ({$QQ(|$RQ(}$SQ)O$TQ)P$UQ)Q$VQ)R$WQ)S$XQ)U$ZQ)X$`Q)]$dW)g$l)i.p3]Q+S%kQ+h%xS,w&}1zQ-f'hS-k'x-mQ-p(QQ-r(XQ.](mQ.c(qQ.g9pQ.i9sQ.j9tQ.k9wQ.z)tQ/|*wQ1u,rQ1x,uQ2Y-_Q2a-sQ2u.aQ2z9xQ2{9yQ2|9zQ2}9{Q3O9|Q3P9}Q3Q:OQ3R:PQ3S:QQ3T:RQ3U:SQ3V:TQ3W.hQ3Z:YQ3[:cQ3a:UQ4S0OQ4[0`Q5m:dQ5s2[Q5x2bQ6U2vQ6V:eQ6[:gQ6]:nQ7T4oQ7r5kQ7v5tQ8P:oQ8T:tQ8U:uQ8z7xQ9Y8gQ9a8xQ9r#QR;U;bR#YWR'P!dY!sQ'U-R0y4tS&{!d,yQ'a!qS'k!t!wS'm!x4vS,v&|'TS-b'b'cQ-d'dQ2P-PR2_-cR(o#vR(r#wQ!eQT-Q'U-R]!pQ!q'U-R0y4tQ#n]R'_9qT#iZ%]S#hZ%]S%cm,]U([#f#g#jS-v(](^Q-z(_Q0Q*|Q2d-wU2e-x-y-{S5z2f2gR7y5{`#[W#U#X%`'x(R*y-qr#eZm#f#g#j%](](^(_*|-w-x-y-{2f2g5{Q1`,]Q1v,sQ5i1nQ7q5jT:|&}*zT#_W%`S#^W%`S'y#U(RS(O#X*yS,x&}*zT-l'x-qT'S!d%aQ$jfR)n$oT)c$j)dR3_.oT*S$w*UR*[$zQ0U+UQ2i.SQ4w0{Q6P2mQ7]4zQ7|6OQ8i7[Q8{7{Q9[8kQ9d8}Q9i9]R9l9elqOXs!Y#b%e&h&j&k&m,a,f1f1iQ&b!UR,U&_rmOXs!T!U!Y#b%e&_&h&j&k&m,a,f1f1iR,]&eT%dm,]R0u+uR,T&]Q%{{R+m%|R+c%vT&f!V&iT&g!V&iT1h,f1i",
|
|
2522
|
+
nodeNames: "⚠ ArithOp ArithOp LineComment BlockComment Script ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList 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 : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression 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 in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate 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 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",
|
|
2523
|
+
maxTerm: 366,
|
|
2524
|
+
context: $a,
|
|
2525
|
+
nodeProps: [
|
|
2526
|
+
["group", -26, 6, 14, 16, 62, 199, 203, 207, 208, 210, 213, 216, 226, 228, 234, 236, 238, 240, 243, 249, 255, 257, 259, 261, 263, 265, 266, "Statement", -32, 10, 11, 25, 28, 29, 35, 45, 48, 49, 51, 56, 64, 72, 76, 78, 80, 81, 103, 104, 113, 114, 131, 134, 136, 137, 138, 139, 141, 142, 162, 163, 165, "Expression", -23, 24, 26, 30, 34, 36, 38, 166, 168, 170, 171, 173, 174, 175, 177, 178, 179, 181, 182, 183, 193, 195, 197, 198, "Type", -3, 84, 96, 102, "ClassItem"],
|
|
2527
|
+
["openedBy", 31, "InterpolationStart", 50, "[", 54, "{", 69, "(", 143, "JSXStartTag", 155, "JSXStartTag JSXStartCloseTag"],
|
|
2528
|
+
["closedBy", 33, "InterpolationEnd", 44, "]", 55, "}", 70, ")", 144, "JSXSelfCloseEndTag JSXEndTag", 160, "JSXEndTag"]
|
|
2529
|
+
],
|
|
2530
|
+
propSources: [ga],
|
|
2531
|
+
skippedNodes: [0, 3, 4, 269],
|
|
2532
|
+
repeatNodeCount: 33,
|
|
2533
|
+
tokenData: "$>y(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tu>PuvBavwDxwxGgxyMvyz! Qz{!![{|!%O|}!&]}!O!%O!O!P!'g!P!Q!1w!Q!R#0t!R![#3T![!]#@T!]!^#Aa!^!_#Bk!_!`#GS!`!a#In!a!b#N{!b!c$$z!c!}>P!}#O$&U#O#P$'`#P#Q$,w#Q#R$.R#R#S>P#S#T$/`#T#o$0j#o#p$4z#p#q$5p#q#r$7Q#r#s$8^#s$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$I|>P$I|$I}$<s$I}$JO$<s$JO$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(n%d_$d&j'xp'{!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$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$d&j'xpOY(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'xpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$d&j'xp'{!b'n(;dOX%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%Z(CS.ST'y#S$d&j'o(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$d&j'xp'{!b'o(;dOY%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`$d&j!l$Ip'xp'{!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%#S1V`#q$Id$d&j'xp'{!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%#S2d_#q$Id$d&j'xp'{!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$2b3l_'w$(n$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$d&j'{!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$d&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$_#t$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$_#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$_#t$d&j'{!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'{!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$_#t'{!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hg$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|<[i$d&j(b!L^'xp'{!bOY%ZYZ&cZr%Zrs&}st%Ztu<Puw%Zwx(rx!Q%Z!Q![<P![!^%Z!^!_*g!_!c%Z!c!}<P!}#O%Z#O#P&c#P#R%Z#R#S<P#S#T%Z#T#o<P#o#p*g#p$g%Z$g;'S<P;'S;=`=y<%lO<P#%|=|P;=`<%l<P(CS>`k$d&j'xp'{!b(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P+d@`k$d&j'xp'{!b$W#tOY%ZYZ&cZr%Zrs&}st%Ztu@Tuw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![@T![!^%Z!^!_*g!_!c%Z!c!}@T!}#O%Z#O#P&c#P#R%Z#R#S@T#S#T%Z#T#o@T#o#p*g#p$g%Z$g;'S@T;'S;=`BT<%lO@T+dBWP;=`<%l@T(CSB^P;=`<%l>P%#SBl`$d&j'xp'{!b#i$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SCy_$d&j#{$Id'xp'{!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%DfETa(k%<v$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sv%ZvwFYwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#SFe`$d&j#u$Id'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2bGp_'z$)`$d&j'xpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo*QHv_$d&j'xpOYHoYZIuZrHorsIuswHowxKVx!^Ho!^!_LX!_#OHo#O#PIu#P#oHo#o#pLX#p;'SHo;'S;=`Mp<%lOHo)`IzX$d&jOwIuwx6cx!^Iu!^!_Jg!_#oIu#o#pJg#p;'SIu;'S;=`KP<%lOIu#tJjTOwJgwx7]x;'SJg;'S;=`Jy<%lOJg#tJ|P;=`<%lJg)`KSP;=`<%lIu*QK`]$_#t$d&j'xpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r$fL^Z'xpOYLXYZJgZrLXrsJgswLXwxMPx#OLX#O#PJg#P;'SLX;'S;=`Mj<%lOLX$fMWU$_#t'xpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r$fMmP;=`<%lLX*QMsP;=`<%lHo(*QNR_!h(!b$d&j'xp'{!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!'l! ]_!gM|$d&j'xp'{!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'+h!!ib$d&j'xp'{!b'v#)d#j$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!#q{!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S!#|`$d&j'xp'{!b#g$IdOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&-O!%Z`$d&j'xp'{!bk&%`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&C[!&h_!V&;l$d&j'xp'{!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(CS!'rc$d&j'xp'{!by'<nOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!(}!P!Q%Z!Q![!+g![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!)Wa$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!*]!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z!'d!*h_!UMt$d&j'xp'{!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$/l!+rg$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!+g![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S!+g#S#X%Z#X#Y!-Z#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!-dg$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!.{|}%Z}!O!.{!O!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!/Uc$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l!0lc$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!0a![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!0a#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(CS!2Sf$d&j'xp'{!b#h$IdOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}xz!3hz{#$s{!P!3h!P!Q#&Y!Q!^!3h!^!_!Mh!_!`#-x!`!a#/_!a!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(r!3sb$d&j'xp'{!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(Q!5U`$d&j'{!b!RSOY!4{YZ&cZw!4{wx!6Wx!P!4{!P!Q!=o!Q!^!4{!^!_!?g!_!}!4{!}#O!Bn#O#P!<w#P#o!4{#o#p!?g#p;'S!4{;'S;=`!Cw<%lO!4{&n!6_^$d&j!RSOY!6WYZ&cZ!P!6W!P!Q!7Z!Q!^!6W!^!_!8g!_!}!6W!}#O!;U#O#P!<w#P#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!7ba$d&j!RSO!^&c!_#Z&c#Z#[!7Z#[#]&c#]#^!7Z#^#a&c#a#b!7Z#b#g&c#g#h!7Z#h#i&c#i#j!7Z#j#m&c#m#n!7Z#n#o&c#p;'S&c;'S;=`&w<%lO&cS!8lX!RSOY!8gZ!P!8g!P!Q!9X!Q!}!8g!}#O!9p#O#P!:o#P;'S!8g;'S;=`!;O<%lO!8gS!9^U!RS#Z#[!9X#]#^!9X#a#b!9X#g#h!9X#i#j!9X#m#n!9XS!9sVOY!9pZ#O!9p#O#P!:Y#P#Q!8g#Q;'S!9p;'S;=`!:i<%lO!9pS!:]SOY!9pZ;'S!9p;'S;=`!:i<%lO!9pS!:lP;=`<%l!9pS!:rSOY!8gZ;'S!8g;'S;=`!;O<%lO!8gS!;RP;=`<%l!8g&n!;Z[$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#O!;U#O#P!<P#P#Q!6W#Q#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<UX$d&jOY!;UYZ&cZ!^!;U!^!_!9p!_#o!;U#o#p!9p#p;'S!;U;'S;=`!<q<%lO!;U&n!<tP;=`<%l!;U&n!<|X$d&jOY!6WYZ&cZ!^!6W!^!_!8g!_#o!6W#o#p!8g#p;'S!6W;'S;=`!=i<%lO!6W&n!=lP;=`<%l!6W(Q!=xi$d&j'{!b!RSOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#Z&}#Z#[!=o#[#]&}#]#^!=o#^#a&}#a#b!=o#b#g&}#g#h!=o#h#i&}#i#j!=o#j#m&}#m#n!=o#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!f!?nZ'{!b!RSOY!?gZw!?gwx!8gx!P!?g!P!Q!@a!Q!}!?g!}#O!Ap#O#P!:o#P;'S!?g;'S;=`!Bh<%lO!?g!f!@hb'{!b!RSOY'}Zw'}x#O'}#P#Z'}#Z#[!@a#[#]'}#]#^!@a#^#a'}#a#b!@a#b#g'}#g#h!@a#h#i'}#i#j!@a#j#m'}#m#n!@a#n;'S'};'S;=`(f<%lO'}!f!AuX'{!bOY!ApZw!Apwx!9px#O!Ap#O#P!:Y#P#Q!?g#Q;'S!Ap;'S;=`!Bb<%lO!Ap!f!BeP;=`<%l!Ap!f!BkP;=`<%l!?g(Q!Bu^$d&j'{!bOY!BnYZ&cZw!Bnwx!;Ux!^!Bn!^!_!Ap!_#O!Bn#O#P!<P#P#Q!4{#Q#o!Bn#o#p!Ap#p;'S!Bn;'S;=`!Cq<%lO!Bn(Q!CtP;=`<%l!Bn(Q!CzP;=`<%l!4{'`!DW`$d&j'xp!RSOY!C}YZ&cZr!C}rs!6Ws!P!C}!P!Q!EY!Q!^!C}!^!_!GQ!_!}!C}!}#O!JX#O#P!<w#P#o!C}#o#p!GQ#p;'S!C};'S;=`!Kb<%lO!C}'`!Eci$d&j'xp!RSOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#Z(r#Z#[!EY#[#](r#]#^!EY#^#a(r#a#b!EY#b#g(r#g#h!EY#h#i(r#i#j!EY#j#m(r#m#n!EY#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rt!GXZ'xp!RSOY!GQZr!GQrs!8gs!P!GQ!P!Q!Gz!Q!}!GQ!}#O!IZ#O#P!:o#P;'S!GQ;'S;=`!JR<%lO!GQt!HRb'xp!RSOY)rZr)rs#O)r#P#Z)r#Z#[!Gz#[#])r#]#^!Gz#^#a)r#a#b!Gz#b#g)r#g#h!Gz#h#i)r#i#j!Gz#j#m)r#m#n!Gz#n;'S)r;'S;=`*Z<%lO)rt!I`X'xpOY!IZZr!IZrs!9ps#O!IZ#O#P!:Y#P#Q!GQ#Q;'S!IZ;'S;=`!I{<%lO!IZt!JOP;=`<%l!IZt!JUP;=`<%l!GQ'`!J`^$d&j'xpOY!JXYZ&cZr!JXrs!;Us!^!JX!^!_!IZ!_#O!JX#O#P!<P#P#Q!C}#Q#o!JX#o#p!IZ#p;'S!JX;'S;=`!K[<%lO!JX'`!K_P;=`<%l!JX'`!KeP;=`<%l!C}(r!Ksk$d&j'xp'{!b!RSOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#Z%Z#Z#[!Kh#[#]%Z#]#^!Kh#^#a%Z#a#b!Kh#b#g%Z#g#h!Kh#h#i%Z#i#j!Kh#j#m%Z#m#n!Kh#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#W!Mq]'xp'{!b!RSOY!MhZr!Mhrs!?gsw!Mhwx!GQx!P!Mh!P!Q!Nj!Q!}!Mh!}#O#!U#O#P!:o#P;'S!Mh;'S;=`##U<%lO!Mh#W!Nse'xp'{!b!RSOY*gZr*grs'}sw*gwx)rx#O*g#P#Z*g#Z#[!Nj#[#]*g#]#^!Nj#^#a*g#a#b!Nj#b#g*g#g#h!Nj#h#i*g#i#j!Nj#j#m*g#m#n!Nj#n;'S*g;'S;=`+Z<%lO*g#W#!]Z'xp'{!bOY#!UZr#!Urs!Apsw#!Uwx!IZx#O#!U#O#P!:Y#P#Q!Mh#Q;'S#!U;'S;=`##O<%lO#!U#W##RP;=`<%l#!U#W##XP;=`<%l!Mh(r##e`$d&j'xp'{!bOY##[YZ&cZr##[rs!Bnsw##[wx!JXx!^##[!^!_#!U!_#O##[#O#P!<P#P#Q!3h#Q#o##[#o#p#!U#p;'S##[;'S;=`#$g<%lO##[(r#$jP;=`<%l##[(r#$pP;=`<%l!3h(CS#%Qb$d&j'xp'{!b'p(;d!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h(CS#&e_$d&j'xp'{!bR(;dOY#&YYZ&cZr#&Yrs#'dsw#&Ywx#*tx!^#&Y!^!_#,s!_#O#&Y#O#P#(f#P#o#&Y#o#p#,s#p;'S#&Y;'S;=`#-r<%lO#&Y(Bb#'m]$d&j'{!bR(;dOY#'dYZ&cZw#'dwx#(fx!^#'d!^!_#)w!_#O#'d#O#P#(f#P#o#'d#o#p#)w#p;'S#'d;'S;=`#*n<%lO#'d(AO#(mX$d&jR(;dOY#(fYZ&cZ!^#(f!^!_#)Y!_#o#(f#o#p#)Y#p;'S#(f;'S;=`#)q<%lO#(f(;d#)_SR(;dOY#)YZ;'S#)Y;'S;=`#)k<%lO#)Y(;d#)nP;=`<%l#)Y(AO#)tP;=`<%l#(f(<v#*OW'{!bR(;dOY#)wZw#)wwx#)Yx#O#)w#O#P#)Y#P;'S#)w;'S;=`#*h<%lO#)w(<v#*kP;=`<%l#)w(Bb#*qP;=`<%l#'d(Ap#*}]$d&j'xpR(;dOY#*tYZ&cZr#*trs#(fs!^#*t!^!_#+v!_#O#*t#O#P#(f#P#o#*t#o#p#+v#p;'S#*t;'S;=`#,m<%lO#*t(<U#+}W'xpR(;dOY#+vZr#+vrs#)Ys#O#+v#O#P#)Y#P;'S#+v;'S;=`#,g<%lO#+v(<U#,jP;=`<%l#+v(Ap#,pP;=`<%l#*t(=h#,|Y'xp'{!bR(;dOY#,sZr#,srs#)wsw#,swx#+vx#O#,s#O#P#)Y#P;'S#,s;'S;=`#-l<%lO#,s(=h#-oP;=`<%l#,s(CS#-uP;=`<%l#&Y%#W#.Vb$d&j#{$Id'xp'{!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h+h#/lb$T#t$d&j'xp'{!b!RSOY!3hYZ&cZr!3hrs!4{sw!3hwx!C}x!P!3h!P!Q!Kh!Q!^!3h!^!_!Mh!_!}!3h!}#O##[#O#P!<w#P#o!3h#o#p!Mh#p;'S!3h;'S;=`#$m<%lO!3h$/l#1Pp$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#U%Z#U#V#6_#V#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#d#9g#d#l%Z#l#m#<i#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#3`k$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!+g!P!Q%Z!Q![#3T![!^%Z!^!_*g!_!g%Z!g!h!-Z!h#O%Z#O#P&c#P#R%Z#R#S#3T#S#X%Z#X#Y!-Z#Y#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#5`_$d&j'xp'{!bl$'|OY%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$/l#6hd$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#8Rf$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#7v!R!S#7v!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#7v#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#9pc$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#;We$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#:{!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#:{#S#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#<rg$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#>fi$d&j'xp'{!bl$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#>Z![!^%Z!^!_*g!_!c%Z!c!i#>Z!i#O%Z#O#P&c#P#R%Z#R#S#>Z#S#T%Z#T#Z#>Z#Z#b%Z#b#c#5T#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%Gh#@b_!a$b$d&j#y%<f'xp'{!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)[#Al_^l$d&j'xp'{!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(CS#Bz^(O!*v!e'.r'xp'{!b$U)d(oSOY*gZr*grs'}sw*gwx)rx!P*g!P!Q#Cv!Q!^*g!^!_#Dl!_!`#F^!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#DPX$f&j'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#DuZ#k$Id'xp'{!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Eh!`#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#EqX#{$Id'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g$Kh#FgX#l$Id'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Gh#G_a#X%?x$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a#Hd!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#W#Ho_#d$Ih$d&j'xp'{!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%Gh#I}adBf#l$Id$a#|$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`#KS!`!a#L^!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#K__#l$Id$d&j'xp'{!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%#S#Lia#k$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`!a#Mn!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S#My`#k$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+h$ Wc(c$Ip$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P$!c!P!^%Z!^!_*g!_!a%Z!a!b$#m!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'+`$!n_z'#p$d&j'xp'{!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%#S$#x`$d&j#v$Id'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&^$%V_!x!Ln$d&j'xp'{!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(@^$&a_|(8n$d&j'xp'{!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$'eZ$d&jO!^$(W!^!_$(n!_#i$(W#i#j$(s#j#l$(W#l#m$*f#m#o$(W#o#p$(n#p;'S$(W;'S;=`$,q<%lO$(W(n$(_T[#S$d&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$(sO[#S(n$(x[$d&jO!Q&c!Q![$)n![!^&c!_!c&c!c!i$)n!i#T&c#T#Z$)n#Z#o&c#o#p$,U#p;'S&c;'S;=`&w<%lO&c(n$)sZ$d&jO!Q&c!Q![$*f![!^&c!_!c&c!c!i$*f!i#T&c#T#Z$*f#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$*kZ$d&jO!Q&c!Q![$+^![!^&c!_!c&c!c!i$+^!i#T&c#T#Z$+^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$+cZ$d&jO!Q&c!Q![$(W![!^&c!_!c&c!c!i$(W!i#T&c#T#Z$(W#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$,XR!Q![$,b!c!i$,b#T#Z$,b#S$,eS!Q![$,b!c!i$,b#T#Z$,b#q#r$(n(n$,tP;=`<%l$(W!2r$-S_!S!+S$d&j'xp'{!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%#S$.^`#s$Id$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&,v$/k_$d&j'xp'{!b(S&%WOY%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(CS$0yk$d&j'xp'{!b(V!LY'u&;d$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$0juw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$0j![!^%Z!^!_*g!_!c%Z!c!}$0j!}#O%Z#O#P&c#P#R%Z#R#S$0j#S#T%Z#T#o$0j#o#p*g#p$g%Z$g;'S$0j;'S;=`$4t<%lO$0j+d$2yk$d&j'xp'{!b$Y#tOY%ZYZ&cZr%Zrs&}st%Ztu$2nuw%Zwx(rx}%Z}!O$2n!O!Q%Z!Q![$2n![!^%Z!^!_*g!_!c%Z!c!}$2n!}#O%Z#O#P&c#P#R%Z#R#S$2n#S#T%Z#T#o$2n#o#p*g#p$g%Z$g;'S$2n;'S;=`$4n<%lO$2n+d$4qP;=`<%l$2n(CS$4wP;=`<%l$0j!5p$5TX!X!3l'xp'{!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g%Df$5{a(j%<v$d&j'xp'{!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Cn!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$#m#q;'S%Z;'S;=`+a<%lO%Z%#`$7__!W$I`o`$d&j'xp'{!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(r$8i_!mS$d&j'xp'{!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(CS$9y|$d&j'xp'{!b'n(;d(V!LY'u&;d$W#tOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$f%Z$f$g+g$g#BY>P#BY#BZ$9h#BZ$IS>P$IS$I_$9h$I_$JT>P$JT$JU$9h$JU$KV>P$KV$KW$9h$KW&FU>P&FU&FV$9h&FV;'S>P;'S;=`BZ<%l?HT>P?HT?HU$9h?HUO>P(CS$=Uk$d&j'xp'{!b'o(;d(V!LY'u&;d$W#tOY%ZYZ&cZr%Zrs&}st%Ztu>Puw%Zwx(rx}%Z}!O@T!O!Q%Z!Q![>P![!^%Z!^!_*g!_!c%Z!c!}>P!}#O%Z#O#P&c#P#R%Z#R#S>P#S#T%Z#T#o>P#o#p*g#p$g%Z$g;'S>P;'S;=`BZ<%lO>P",
|
|
2534
|
+
tokenizers: [Sa, da, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, fa, new E("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOq~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!O~~!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(U~~", 141, 327), new E("j~RQYZXz{^~^O'r~~aP!P!Qd~iO's~~", 25, 309)],
|
|
2535
|
+
topRules: { Script: [0, 5], SingleExpression: [1, 267], SingleClassItem: [2, 268] },
|
|
2536
|
+
dialects: { jsx: 12794, ts: 12796 },
|
|
2537
|
+
dynamicPrecedences: { 76: 1, 78: 1, 163: 1, 191: 1 },
|
|
2538
|
+
specialized: [{ term: 313, get: (e) => Xa[e] || -1 }, { term: 329, get: (e) => Pa[e] || -1 }, { term: 67, get: (e) => ma[e] || -1 }],
|
|
2539
|
+
tokenPrec: 12820
|
|
2540
|
+
}), ba = [
|
|
2541
|
+
/* @__PURE__ */ g("function ${name}(${params}) {\n ${}\n}", {
|
|
2542
|
+
label: "function",
|
|
2543
|
+
detail: "definition",
|
|
2544
|
+
type: "keyword"
|
|
2545
|
+
}),
|
|
2546
|
+
/* @__PURE__ */ g("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}", {
|
|
2547
|
+
label: "for",
|
|
2548
|
+
detail: "loop",
|
|
2549
|
+
type: "keyword"
|
|
2550
|
+
}),
|
|
2551
|
+
/* @__PURE__ */ g("for (let ${name} of ${collection}) {\n ${}\n}", {
|
|
2552
|
+
label: "for",
|
|
2553
|
+
detail: "of loop",
|
|
2554
|
+
type: "keyword"
|
|
2555
|
+
}),
|
|
2556
|
+
/* @__PURE__ */ g("do {\n ${}\n} while (${})", {
|
|
2557
|
+
label: "do",
|
|
2558
|
+
detail: "loop",
|
|
2559
|
+
type: "keyword"
|
|
2560
|
+
}),
|
|
2561
|
+
/* @__PURE__ */ g("while (${}) {\n ${}\n}", {
|
|
2562
|
+
label: "while",
|
|
2563
|
+
detail: "loop",
|
|
2564
|
+
type: "keyword"
|
|
2565
|
+
}),
|
|
2566
|
+
/* @__PURE__ */ g(`try {
|
|
2567
|
+
\${}
|
|
2568
|
+
} catch (\${error}) {
|
|
2569
|
+
\${}
|
|
2570
|
+
}`, {
|
|
2571
|
+
label: "try",
|
|
2572
|
+
detail: "/ catch block",
|
|
2573
|
+
type: "keyword"
|
|
2574
|
+
}),
|
|
2575
|
+
/* @__PURE__ */ g("if (${}) {\n ${}\n}", {
|
|
2576
|
+
label: "if",
|
|
2577
|
+
detail: "block",
|
|
2578
|
+
type: "keyword"
|
|
2579
|
+
}),
|
|
2580
|
+
/* @__PURE__ */ g(`if (\${}) {
|
|
2581
|
+
\${}
|
|
2582
|
+
} else {
|
|
2583
|
+
\${}
|
|
2584
|
+
}`, {
|
|
2585
|
+
label: "if",
|
|
2586
|
+
detail: "/ else block",
|
|
2587
|
+
type: "keyword"
|
|
2588
|
+
}),
|
|
2589
|
+
/* @__PURE__ */ g(`class \${name} {
|
|
2590
|
+
constructor(\${params}) {
|
|
2591
|
+
\${}
|
|
2592
|
+
}
|
|
2593
|
+
}`, {
|
|
2594
|
+
label: "class",
|
|
2595
|
+
detail: "definition",
|
|
2596
|
+
type: "keyword"
|
|
2597
|
+
}),
|
|
2598
|
+
/* @__PURE__ */ g('import {${names}} from "${module}"\n${}', {
|
|
2599
|
+
label: "import",
|
|
2600
|
+
detail: "named",
|
|
2601
|
+
type: "keyword"
|
|
2602
|
+
}),
|
|
2603
|
+
/* @__PURE__ */ g('import ${name} from "${module}"\n${}', {
|
|
2604
|
+
label: "import",
|
|
2605
|
+
detail: "default",
|
|
2606
|
+
type: "keyword"
|
|
2607
|
+
})
|
|
2608
|
+
], GO = /* @__PURE__ */ new JO(), pe = /* @__PURE__ */ new Set([
|
|
2609
|
+
"Script",
|
|
2610
|
+
"Block",
|
|
2611
|
+
"FunctionExpression",
|
|
2612
|
+
"FunctionDeclaration",
|
|
2613
|
+
"ArrowFunction",
|
|
2614
|
+
"MethodDeclaration",
|
|
2615
|
+
"ForStatement"
|
|
2616
|
+
]);
|
|
2617
|
+
function U(e) {
|
|
2618
|
+
return (O, t) => {
|
|
2619
|
+
let a = O.node.getChild("VariableDefinition");
|
|
2620
|
+
return a && t(a, e), !0;
|
|
2621
|
+
};
|
|
2622
|
+
}
|
|
2623
|
+
const xa = ["FunctionDeclaration"], ka = {
|
|
2624
|
+
FunctionDeclaration: /* @__PURE__ */ U("function"),
|
|
2625
|
+
ClassDeclaration: /* @__PURE__ */ U("class"),
|
|
2626
|
+
ClassExpression: () => !0,
|
|
2627
|
+
EnumDeclaration: /* @__PURE__ */ U("constant"),
|
|
2628
|
+
TypeAliasDeclaration: /* @__PURE__ */ U("type"),
|
|
2629
|
+
NamespaceDeclaration: /* @__PURE__ */ U("namespace"),
|
|
2630
|
+
VariableDefinition(e, O) {
|
|
2631
|
+
e.matchContext(xa) || O(e, "variable");
|
|
2632
|
+
},
|
|
2633
|
+
TypeDefinition(e, O) {
|
|
2634
|
+
O(e, "type");
|
|
2635
|
+
},
|
|
2636
|
+
__proto__: null
|
|
2637
|
+
};
|
|
2638
|
+
function $e(e, O) {
|
|
2639
|
+
let t = GO.get(O);
|
|
2640
|
+
if (t)
|
|
2641
|
+
return t;
|
|
2642
|
+
let a = [], i = !0;
|
|
2643
|
+
function s(r, l) {
|
|
2644
|
+
let n = e.sliceString(r.from, r.to);
|
|
2645
|
+
a.push({ label: n, type: l });
|
|
2646
|
+
}
|
|
2647
|
+
return O.cursor(lO.IncludeAnonymous).iterate((r) => {
|
|
2648
|
+
if (i)
|
|
2649
|
+
i = !1;
|
|
2650
|
+
else if (r.name) {
|
|
2651
|
+
let l = ka[r.name];
|
|
2652
|
+
if (l && l(r, s) || pe.has(r.name))
|
|
2653
|
+
return !1;
|
|
2654
|
+
} else if (r.to - r.from > 8192) {
|
|
2655
|
+
for (let l of $e(e, r.node))
|
|
2656
|
+
a.push(l);
|
|
2657
|
+
return !1;
|
|
2658
|
+
}
|
|
2659
|
+
}), GO.set(O, a), a;
|
|
2660
|
+
}
|
|
2661
|
+
const IO = /^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/, fe = [
|
|
2662
|
+
"TemplateString",
|
|
2663
|
+
"String",
|
|
2664
|
+
"RegExp",
|
|
2665
|
+
"LineComment",
|
|
2666
|
+
"BlockComment",
|
|
2667
|
+
"VariableDefinition",
|
|
2668
|
+
"TypeDefinition",
|
|
2669
|
+
"Label",
|
|
2670
|
+
"PropertyDefinition",
|
|
2671
|
+
"PropertyName",
|
|
2672
|
+
"PrivatePropertyDefinition",
|
|
2673
|
+
"PrivatePropertyName",
|
|
2674
|
+
".",
|
|
2675
|
+
"?."
|
|
2676
|
+
];
|
|
2677
|
+
function wa(e) {
|
|
2678
|
+
let O = _(e.state).resolveInner(e.pos, -1);
|
|
2679
|
+
if (fe.indexOf(O.name) > -1)
|
|
2680
|
+
return null;
|
|
2681
|
+
let t = O.name == "VariableName" || O.to - O.from < 20 && IO.test(e.state.sliceDoc(O.from, O.to));
|
|
2682
|
+
if (!t && !e.explicit)
|
|
2683
|
+
return null;
|
|
2684
|
+
let a = [];
|
|
2685
|
+
for (let i = O; i; i = i.parent)
|
|
2686
|
+
pe.has(i.name) && (a = a.concat($e(e.state.doc, i)));
|
|
2687
|
+
return {
|
|
2688
|
+
options: a,
|
|
2689
|
+
from: t ? O.from : e.pos,
|
|
2690
|
+
validFor: IO
|
|
2691
|
+
};
|
|
2692
|
+
}
|
|
2693
|
+
const P = /* @__PURE__ */ oO.define({
|
|
2694
|
+
name: "javascript",
|
|
2695
|
+
parser: /* @__PURE__ */ Za.configure({
|
|
2696
|
+
props: [
|
|
2697
|
+
/* @__PURE__ */ QO.add({
|
|
2698
|
+
IfStatement: /* @__PURE__ */ q({ except: /^\s*({|else\b)/ }),
|
|
2699
|
+
TryStatement: /* @__PURE__ */ q({ except: /^\s*({|catch\b|finally\b)/ }),
|
|
2700
|
+
LabeledStatement: ve,
|
|
2701
|
+
SwitchBody: (e) => {
|
|
2702
|
+
let O = e.textAfter, t = /^\s*\}/.test(O), a = /^\s*(case|default)\b/.test(O);
|
|
2703
|
+
return e.baseIndent + (t ? 0 : a ? 1 : 2) * e.unit;
|
|
2704
|
+
},
|
|
2705
|
+
Block: /* @__PURE__ */ _e({ closing: "}" }),
|
|
2706
|
+
ArrowFunction: (e) => e.baseIndent + e.unit,
|
|
2707
|
+
"TemplateString BlockComment": () => null,
|
|
2708
|
+
"Statement Property": /* @__PURE__ */ q({ except: /^{/ }),
|
|
2709
|
+
JSXElement(e) {
|
|
2710
|
+
let O = /^\s*<\//.test(e.textAfter);
|
|
2711
|
+
return e.lineIndent(e.node.from) + (O ? 0 : e.unit);
|
|
2712
|
+
},
|
|
2713
|
+
JSXEscape(e) {
|
|
2714
|
+
let O = /\s*\}/.test(e.textAfter);
|
|
2715
|
+
return e.lineIndent(e.node.from) + (O ? 0 : e.unit);
|
|
2716
|
+
},
|
|
2717
|
+
"JSXOpenTag JSXSelfClosingTag"(e) {
|
|
2718
|
+
return e.column(e.node.from) + e.unit;
|
|
2719
|
+
}
|
|
2720
|
+
}),
|
|
2721
|
+
/* @__PURE__ */ cO.add({
|
|
2722
|
+
"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType": DO,
|
|
2723
|
+
BlockComment(e) {
|
|
2724
|
+
return { from: e.from + 2, to: e.to - 2 };
|
|
2725
|
+
}
|
|
2726
|
+
})
|
|
2727
|
+
]
|
|
2728
|
+
}),
|
|
2729
|
+
languageData: {
|
|
2730
|
+
closeBrackets: { brackets: ["(", "[", "{", "'", '"', "`"] },
|
|
2731
|
+
commentTokens: { line: "//", block: { open: "/*", close: "*/" } },
|
|
2732
|
+
indentOnInput: /^\s*(?:case |default:|\{|\}|<\/)$/,
|
|
2733
|
+
wordChars: "$"
|
|
2734
|
+
}
|
|
2735
|
+
}), Se = {
|
|
2736
|
+
test: (e) => /^JSX/.test(e.name),
|
|
2737
|
+
facet: /* @__PURE__ */ Ce({ commentTokens: { block: { open: "{/*", close: "*/}" } } })
|
|
2738
|
+
}, de = /* @__PURE__ */ P.configure({ dialect: "ts" }, "typescript"), ge = /* @__PURE__ */ P.configure({
|
|
2739
|
+
dialect: "jsx",
|
|
2740
|
+
props: [/* @__PURE__ */ MO.add((e) => e.isTop ? [Se] : void 0)]
|
|
2741
|
+
}), Xe = /* @__PURE__ */ P.configure({
|
|
2742
|
+
dialect: "jsx ts",
|
|
2743
|
+
props: [/* @__PURE__ */ MO.add((e) => e.isTop ? [Se] : void 0)]
|
|
2744
|
+
}, "typescript"), ya = /* @__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((e) => ({ label: e, type: "keyword" }));
|
|
2745
|
+
function Ya(e = {}) {
|
|
2746
|
+
let O = e.jsx ? e.typescript ? Xe : ge : e.typescript ? de : P;
|
|
2747
|
+
return new uO(O, [
|
|
2748
|
+
P.data.of({
|
|
2749
|
+
autocomplete: We(fe, qe(ba.concat(ya)))
|
|
2750
|
+
}),
|
|
2751
|
+
P.data.of({
|
|
2752
|
+
autocomplete: wa
|
|
2753
|
+
}),
|
|
2754
|
+
e.jsx ? Ra : []
|
|
2755
|
+
]);
|
|
2756
|
+
}
|
|
2757
|
+
function Ta(e) {
|
|
2758
|
+
for (; ; ) {
|
|
2759
|
+
if (e.name == "JSXOpenTag" || e.name == "JSXSelfClosingTag" || e.name == "JSXFragmentTag")
|
|
2760
|
+
return e;
|
|
2761
|
+
if (e.name == "JSXEscape" || !e.parent)
|
|
2762
|
+
return null;
|
|
2763
|
+
e = e.parent;
|
|
2764
|
+
}
|
|
2765
|
+
}
|
|
2766
|
+
function AO(e, O, t = e.length) {
|
|
2767
|
+
for (let a = O == null ? void 0 : O.firstChild; a; a = a.nextSibling)
|
|
2768
|
+
if (a.name == "JSXIdentifier" || a.name == "JSXBuiltin" || a.name == "JSXNamespacedName" || a.name == "JSXMemberExpression")
|
|
2769
|
+
return e.sliceString(a.from, Math.min(a.to, t));
|
|
2770
|
+
return "";
|
|
2771
|
+
}
|
|
2772
|
+
function Ua(e) {
|
|
2773
|
+
return e && (e.name == "JSXEndTag" || e.name == "JSXSelfCloseEndTag");
|
|
2774
|
+
}
|
|
2775
|
+
const Va = typeof navigator == "object" && /* @__PURE__ */ /Android\b/.test(navigator.userAgent), Ra = /* @__PURE__ */ LO.inputHandler.of((e, O, t, a) => {
|
|
2776
|
+
if ((Va ? e.composing : e.compositionStarted) || e.state.readOnly || O != t || a != ">" && a != "/" || !P.isActiveAt(e.state, O, -1))
|
|
2777
|
+
return !1;
|
|
2778
|
+
let { state: i } = e, s = i.changeByRange((r) => {
|
|
2779
|
+
var l;
|
|
2780
|
+
let { head: n } = r, Q = _(i).resolveInner(n, -1), h;
|
|
2781
|
+
if (Q.name == "JSXStartTag" && (Q = Q.parent), !(Q.name == "JSXAttributeValue" && Q.to > n)) {
|
|
2782
|
+
if (a == ">" && Q.name == "JSXFragmentTag")
|
|
2783
|
+
return { range: C.cursor(n + 1), changes: { from: n, insert: "></>" } };
|
|
2784
|
+
if (a == "/" && Q.name == "JSXFragmentTag") {
|
|
2785
|
+
let c = Q.parent, $ = c == null ? void 0 : c.parent;
|
|
2786
|
+
if (c.from == n - 1 && ((l = $.lastChild) === null || l === void 0 ? void 0 : l.name) != "JSXEndTag" && (h = AO(i.doc, $ == null ? void 0 : $.firstChild, n))) {
|
|
2787
|
+
let p = `/${h}>`;
|
|
2788
|
+
return { range: C.cursor(n + p.length), changes: { from: n, insert: p } };
|
|
2789
|
+
}
|
|
2790
|
+
} else if (a == ">") {
|
|
2791
|
+
let c = Ta(Q);
|
|
2792
|
+
if (c && !Ua(c.lastChild) && i.sliceDoc(n, n + 2) != "</" && (h = AO(i.doc, c, n)))
|
|
2793
|
+
return { range: C.cursor(n + 1), changes: { from: n, insert: `></${h}>` } };
|
|
2794
|
+
}
|
|
2795
|
+
}
|
|
2796
|
+
return { range: r };
|
|
2797
|
+
});
|
|
2798
|
+
return s.changes.empty ? !1 : (e.dispatch(s, { userEvent: "input.type", scrollIntoView: !0 }), !0);
|
|
2799
|
+
}), V = ["_blank", "_self", "_top", "_parent"], eO = ["ascii", "utf-8", "utf-16", "latin1", "latin1"], tO = ["get", "post", "put", "delete"], aO = ["application/x-www-form-urlencoded", "multipart/form-data", "text/plain"], d = ["true", "false"], u = {}, va = {
|
|
2800
|
+
a: {
|
|
2801
|
+
attrs: {
|
|
2802
|
+
href: null,
|
|
2803
|
+
ping: null,
|
|
2804
|
+
type: null,
|
|
2805
|
+
media: null,
|
|
2806
|
+
target: V,
|
|
2807
|
+
hreflang: null
|
|
2808
|
+
}
|
|
2809
|
+
},
|
|
2810
|
+
abbr: u,
|
|
2811
|
+
address: u,
|
|
2812
|
+
area: {
|
|
2813
|
+
attrs: {
|
|
2814
|
+
alt: null,
|
|
2815
|
+
coords: null,
|
|
2816
|
+
href: null,
|
|
2817
|
+
target: null,
|
|
2818
|
+
ping: null,
|
|
2819
|
+
media: null,
|
|
2820
|
+
hreflang: null,
|
|
2821
|
+
type: null,
|
|
2822
|
+
shape: ["default", "rect", "circle", "poly"]
|
|
2823
|
+
}
|
|
2824
|
+
},
|
|
2825
|
+
article: u,
|
|
2826
|
+
aside: u,
|
|
2827
|
+
audio: {
|
|
2828
|
+
attrs: {
|
|
2829
|
+
src: null,
|
|
2830
|
+
mediagroup: null,
|
|
2831
|
+
crossorigin: ["anonymous", "use-credentials"],
|
|
2832
|
+
preload: ["none", "metadata", "auto"],
|
|
2833
|
+
autoplay: ["autoplay"],
|
|
2834
|
+
loop: ["loop"],
|
|
2835
|
+
controls: ["controls"]
|
|
2836
|
+
}
|
|
2837
|
+
},
|
|
2838
|
+
b: u,
|
|
2839
|
+
base: { attrs: { href: null, target: V } },
|
|
2840
|
+
bdi: u,
|
|
2841
|
+
bdo: u,
|
|
2842
|
+
blockquote: { attrs: { cite: null } },
|
|
2843
|
+
body: u,
|
|
2844
|
+
br: u,
|
|
2845
|
+
button: {
|
|
2846
|
+
attrs: {
|
|
2847
|
+
form: null,
|
|
2848
|
+
formaction: null,
|
|
2849
|
+
name: null,
|
|
2850
|
+
value: null,
|
|
2851
|
+
autofocus: ["autofocus"],
|
|
2852
|
+
disabled: ["autofocus"],
|
|
2853
|
+
formenctype: aO,
|
|
2854
|
+
formmethod: tO,
|
|
2855
|
+
formnovalidate: ["novalidate"],
|
|
2856
|
+
formtarget: V,
|
|
2857
|
+
type: ["submit", "reset", "button"]
|
|
2858
|
+
}
|
|
2859
|
+
},
|
|
2860
|
+
canvas: { attrs: { width: null, height: null } },
|
|
2861
|
+
caption: u,
|
|
2862
|
+
center: u,
|
|
2863
|
+
cite: u,
|
|
2864
|
+
code: u,
|
|
2865
|
+
col: { attrs: { span: null } },
|
|
2866
|
+
colgroup: { attrs: { span: null } },
|
|
2867
|
+
command: {
|
|
2868
|
+
attrs: {
|
|
2869
|
+
type: ["command", "checkbox", "radio"],
|
|
2870
|
+
label: null,
|
|
2871
|
+
icon: null,
|
|
2872
|
+
radiogroup: null,
|
|
2873
|
+
command: null,
|
|
2874
|
+
title: null,
|
|
2875
|
+
disabled: ["disabled"],
|
|
2876
|
+
checked: ["checked"]
|
|
2877
|
+
}
|
|
2878
|
+
},
|
|
2879
|
+
data: { attrs: { value: null } },
|
|
2880
|
+
datagrid: { attrs: { disabled: ["disabled"], multiple: ["multiple"] } },
|
|
2881
|
+
datalist: { attrs: { data: null } },
|
|
2882
|
+
dd: u,
|
|
2883
|
+
del: { attrs: { cite: null, datetime: null } },
|
|
2884
|
+
details: { attrs: { open: ["open"] } },
|
|
2885
|
+
dfn: u,
|
|
2886
|
+
div: u,
|
|
2887
|
+
dl: u,
|
|
2888
|
+
dt: u,
|
|
2889
|
+
em: u,
|
|
2890
|
+
embed: { attrs: { src: null, type: null, width: null, height: null } },
|
|
2891
|
+
eventsource: { attrs: { src: null } },
|
|
2892
|
+
fieldset: { attrs: { disabled: ["disabled"], form: null, name: null } },
|
|
2893
|
+
figcaption: u,
|
|
2894
|
+
figure: u,
|
|
2895
|
+
footer: u,
|
|
2896
|
+
form: {
|
|
2897
|
+
attrs: {
|
|
2898
|
+
action: null,
|
|
2899
|
+
name: null,
|
|
2900
|
+
"accept-charset": eO,
|
|
2901
|
+
autocomplete: ["on", "off"],
|
|
2902
|
+
enctype: aO,
|
|
2903
|
+
method: tO,
|
|
2904
|
+
novalidate: ["novalidate"],
|
|
2905
|
+
target: V
|
|
2906
|
+
}
|
|
2907
|
+
},
|
|
2908
|
+
h1: u,
|
|
2909
|
+
h2: u,
|
|
2910
|
+
h3: u,
|
|
2911
|
+
h4: u,
|
|
2912
|
+
h5: u,
|
|
2913
|
+
h6: u,
|
|
2914
|
+
head: {
|
|
2915
|
+
children: ["title", "base", "link", "style", "meta", "script", "noscript", "command"]
|
|
2916
|
+
},
|
|
2917
|
+
header: u,
|
|
2918
|
+
hgroup: u,
|
|
2919
|
+
hr: u,
|
|
2920
|
+
html: {
|
|
2921
|
+
attrs: { manifest: null }
|
|
2922
|
+
},
|
|
2923
|
+
i: u,
|
|
2924
|
+
iframe: {
|
|
2925
|
+
attrs: {
|
|
2926
|
+
src: null,
|
|
2927
|
+
srcdoc: null,
|
|
2928
|
+
name: null,
|
|
2929
|
+
width: null,
|
|
2930
|
+
height: null,
|
|
2931
|
+
sandbox: ["allow-top-navigation", "allow-same-origin", "allow-forms", "allow-scripts"],
|
|
2932
|
+
seamless: ["seamless"]
|
|
2933
|
+
}
|
|
2934
|
+
},
|
|
2935
|
+
img: {
|
|
2936
|
+
attrs: {
|
|
2937
|
+
alt: null,
|
|
2938
|
+
src: null,
|
|
2939
|
+
ismap: null,
|
|
2940
|
+
usemap: null,
|
|
2941
|
+
width: null,
|
|
2942
|
+
height: null,
|
|
2943
|
+
crossorigin: ["anonymous", "use-credentials"]
|
|
2944
|
+
}
|
|
2945
|
+
},
|
|
2946
|
+
input: {
|
|
2947
|
+
attrs: {
|
|
2948
|
+
alt: null,
|
|
2949
|
+
dirname: null,
|
|
2950
|
+
form: null,
|
|
2951
|
+
formaction: null,
|
|
2952
|
+
height: null,
|
|
2953
|
+
list: null,
|
|
2954
|
+
max: null,
|
|
2955
|
+
maxlength: null,
|
|
2956
|
+
min: null,
|
|
2957
|
+
name: null,
|
|
2958
|
+
pattern: null,
|
|
2959
|
+
placeholder: null,
|
|
2960
|
+
size: null,
|
|
2961
|
+
src: null,
|
|
2962
|
+
step: null,
|
|
2963
|
+
value: null,
|
|
2964
|
+
width: null,
|
|
2965
|
+
accept: ["audio/*", "video/*", "image/*"],
|
|
2966
|
+
autocomplete: ["on", "off"],
|
|
2967
|
+
autofocus: ["autofocus"],
|
|
2968
|
+
checked: ["checked"],
|
|
2969
|
+
disabled: ["disabled"],
|
|
2970
|
+
formenctype: aO,
|
|
2971
|
+
formmethod: tO,
|
|
2972
|
+
formnovalidate: ["novalidate"],
|
|
2973
|
+
formtarget: V,
|
|
2974
|
+
multiple: ["multiple"],
|
|
2975
|
+
readonly: ["readonly"],
|
|
2976
|
+
required: ["required"],
|
|
2977
|
+
type: [
|
|
2978
|
+
"hidden",
|
|
2979
|
+
"text",
|
|
2980
|
+
"search",
|
|
2981
|
+
"tel",
|
|
2982
|
+
"url",
|
|
2983
|
+
"email",
|
|
2984
|
+
"password",
|
|
2985
|
+
"datetime",
|
|
2986
|
+
"date",
|
|
2987
|
+
"month",
|
|
2988
|
+
"week",
|
|
2989
|
+
"time",
|
|
2990
|
+
"datetime-local",
|
|
2991
|
+
"number",
|
|
2992
|
+
"range",
|
|
2993
|
+
"color",
|
|
2994
|
+
"checkbox",
|
|
2995
|
+
"radio",
|
|
2996
|
+
"file",
|
|
2997
|
+
"submit",
|
|
2998
|
+
"image",
|
|
2999
|
+
"reset",
|
|
3000
|
+
"button"
|
|
3001
|
+
]
|
|
3002
|
+
}
|
|
3003
|
+
},
|
|
3004
|
+
ins: { attrs: { cite: null, datetime: null } },
|
|
3005
|
+
kbd: u,
|
|
3006
|
+
keygen: {
|
|
3007
|
+
attrs: {
|
|
3008
|
+
challenge: null,
|
|
3009
|
+
form: null,
|
|
3010
|
+
name: null,
|
|
3011
|
+
autofocus: ["autofocus"],
|
|
3012
|
+
disabled: ["disabled"],
|
|
3013
|
+
keytype: ["RSA"]
|
|
3014
|
+
}
|
|
3015
|
+
},
|
|
3016
|
+
label: { attrs: { for: null, form: null } },
|
|
3017
|
+
legend: u,
|
|
3018
|
+
li: { attrs: { value: null } },
|
|
3019
|
+
link: {
|
|
3020
|
+
attrs: {
|
|
3021
|
+
href: null,
|
|
3022
|
+
type: null,
|
|
3023
|
+
hreflang: null,
|
|
3024
|
+
media: null,
|
|
3025
|
+
sizes: ["all", "16x16", "16x16 32x32", "16x16 32x32 64x64"]
|
|
3026
|
+
}
|
|
3027
|
+
},
|
|
3028
|
+
map: { attrs: { name: null } },
|
|
3029
|
+
mark: u,
|
|
3030
|
+
menu: { attrs: { label: null, type: ["list", "context", "toolbar"] } },
|
|
3031
|
+
meta: {
|
|
3032
|
+
attrs: {
|
|
3033
|
+
content: null,
|
|
3034
|
+
charset: eO,
|
|
3035
|
+
name: ["viewport", "application-name", "author", "description", "generator", "keywords"],
|
|
3036
|
+
"http-equiv": ["content-language", "content-type", "default-style", "refresh"]
|
|
3037
|
+
}
|
|
3038
|
+
},
|
|
3039
|
+
meter: { attrs: { value: null, min: null, low: null, high: null, max: null, optimum: null } },
|
|
3040
|
+
nav: u,
|
|
3041
|
+
noscript: u,
|
|
3042
|
+
object: {
|
|
3043
|
+
attrs: {
|
|
3044
|
+
data: null,
|
|
3045
|
+
type: null,
|
|
3046
|
+
name: null,
|
|
3047
|
+
usemap: null,
|
|
3048
|
+
form: null,
|
|
3049
|
+
width: null,
|
|
3050
|
+
height: null,
|
|
3051
|
+
typemustmatch: ["typemustmatch"]
|
|
3052
|
+
}
|
|
3053
|
+
},
|
|
3054
|
+
ol: {
|
|
3055
|
+
attrs: { reversed: ["reversed"], start: null, type: ["1", "a", "A", "i", "I"] },
|
|
3056
|
+
children: ["li", "script", "template", "ul", "ol"]
|
|
3057
|
+
},
|
|
3058
|
+
optgroup: { attrs: { disabled: ["disabled"], label: null } },
|
|
3059
|
+
option: { attrs: { disabled: ["disabled"], label: null, selected: ["selected"], value: null } },
|
|
3060
|
+
output: { attrs: { for: null, form: null, name: null } },
|
|
3061
|
+
p: u,
|
|
3062
|
+
param: { attrs: { name: null, value: null } },
|
|
3063
|
+
pre: u,
|
|
3064
|
+
progress: { attrs: { value: null, max: null } },
|
|
3065
|
+
q: { attrs: { cite: null } },
|
|
3066
|
+
rp: u,
|
|
3067
|
+
rt: u,
|
|
3068
|
+
ruby: u,
|
|
3069
|
+
samp: u,
|
|
3070
|
+
script: {
|
|
3071
|
+
attrs: {
|
|
3072
|
+
type: ["text/javascript"],
|
|
3073
|
+
src: null,
|
|
3074
|
+
async: ["async"],
|
|
3075
|
+
defer: ["defer"],
|
|
3076
|
+
charset: eO
|
|
3077
|
+
}
|
|
3078
|
+
},
|
|
3079
|
+
section: u,
|
|
3080
|
+
select: {
|
|
3081
|
+
attrs: {
|
|
3082
|
+
form: null,
|
|
3083
|
+
name: null,
|
|
3084
|
+
size: null,
|
|
3085
|
+
autofocus: ["autofocus"],
|
|
3086
|
+
disabled: ["disabled"],
|
|
3087
|
+
multiple: ["multiple"]
|
|
3088
|
+
}
|
|
3089
|
+
},
|
|
3090
|
+
slot: { attrs: { name: null } },
|
|
3091
|
+
small: u,
|
|
3092
|
+
source: { attrs: { src: null, type: null, media: null } },
|
|
3093
|
+
span: u,
|
|
3094
|
+
strong: u,
|
|
3095
|
+
style: {
|
|
3096
|
+
attrs: {
|
|
3097
|
+
type: ["text/css"],
|
|
3098
|
+
media: null,
|
|
3099
|
+
scoped: null
|
|
3100
|
+
}
|
|
3101
|
+
},
|
|
3102
|
+
sub: u,
|
|
3103
|
+
summary: u,
|
|
3104
|
+
sup: u,
|
|
3105
|
+
table: u,
|
|
3106
|
+
tbody: u,
|
|
3107
|
+
td: { attrs: { colspan: null, rowspan: null, headers: null } },
|
|
3108
|
+
template: u,
|
|
3109
|
+
textarea: {
|
|
3110
|
+
attrs: {
|
|
3111
|
+
dirname: null,
|
|
3112
|
+
form: null,
|
|
3113
|
+
maxlength: null,
|
|
3114
|
+
name: null,
|
|
3115
|
+
placeholder: null,
|
|
3116
|
+
rows: null,
|
|
3117
|
+
cols: null,
|
|
3118
|
+
autofocus: ["autofocus"],
|
|
3119
|
+
disabled: ["disabled"],
|
|
3120
|
+
readonly: ["readonly"],
|
|
3121
|
+
required: ["required"],
|
|
3122
|
+
wrap: ["soft", "hard"]
|
|
3123
|
+
}
|
|
3124
|
+
},
|
|
3125
|
+
tfoot: u,
|
|
3126
|
+
th: { attrs: { colspan: null, rowspan: null, headers: null, scope: ["row", "col", "rowgroup", "colgroup"] } },
|
|
3127
|
+
thead: u,
|
|
3128
|
+
time: { attrs: { datetime: null } },
|
|
3129
|
+
title: u,
|
|
3130
|
+
tr: u,
|
|
3131
|
+
track: {
|
|
3132
|
+
attrs: {
|
|
3133
|
+
src: null,
|
|
3134
|
+
label: null,
|
|
3135
|
+
default: null,
|
|
3136
|
+
kind: ["subtitles", "captions", "descriptions", "chapters", "metadata"],
|
|
3137
|
+
srclang: null
|
|
3138
|
+
}
|
|
3139
|
+
},
|
|
3140
|
+
ul: { children: ["li", "script", "template", "ul", "ol"] },
|
|
3141
|
+
var: u,
|
|
3142
|
+
video: {
|
|
3143
|
+
attrs: {
|
|
3144
|
+
src: null,
|
|
3145
|
+
poster: null,
|
|
3146
|
+
width: null,
|
|
3147
|
+
height: null,
|
|
3148
|
+
crossorigin: ["anonymous", "use-credentials"],
|
|
3149
|
+
preload: ["auto", "metadata", "none"],
|
|
3150
|
+
autoplay: ["autoplay"],
|
|
3151
|
+
mediagroup: ["movie"],
|
|
3152
|
+
muted: ["muted"],
|
|
3153
|
+
controls: ["controls"]
|
|
3154
|
+
}
|
|
3155
|
+
},
|
|
3156
|
+
wbr: u
|
|
3157
|
+
}, Pe = {
|
|
3158
|
+
accesskey: null,
|
|
3159
|
+
class: null,
|
|
3160
|
+
contenteditable: d,
|
|
3161
|
+
contextmenu: null,
|
|
3162
|
+
dir: ["ltr", "rtl", "auto"],
|
|
3163
|
+
draggable: ["true", "false", "auto"],
|
|
3164
|
+
dropzone: ["copy", "move", "link", "string:", "file:"],
|
|
3165
|
+
hidden: ["hidden"],
|
|
3166
|
+
id: null,
|
|
3167
|
+
inert: ["inert"],
|
|
3168
|
+
itemid: null,
|
|
3169
|
+
itemprop: null,
|
|
3170
|
+
itemref: null,
|
|
3171
|
+
itemscope: ["itemscope"],
|
|
3172
|
+
itemtype: null,
|
|
3173
|
+
lang: ["ar", "bn", "de", "en-GB", "en-US", "es", "fr", "hi", "id", "ja", "pa", "pt", "ru", "tr", "zh"],
|
|
3174
|
+
spellcheck: d,
|
|
3175
|
+
autocorrect: d,
|
|
3176
|
+
autocapitalize: d,
|
|
3177
|
+
style: null,
|
|
3178
|
+
tabindex: null,
|
|
3179
|
+
title: null,
|
|
3180
|
+
translate: ["yes", "no"],
|
|
3181
|
+
rel: ["stylesheet", "alternate", "author", "bookmark", "help", "license", "next", "nofollow", "noreferrer", "prefetch", "prev", "search", "tag"],
|
|
3182
|
+
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(" "),
|
|
3183
|
+
"aria-activedescendant": null,
|
|
3184
|
+
"aria-atomic": d,
|
|
3185
|
+
"aria-autocomplete": ["inline", "list", "both", "none"],
|
|
3186
|
+
"aria-busy": d,
|
|
3187
|
+
"aria-checked": ["true", "false", "mixed", "undefined"],
|
|
3188
|
+
"aria-controls": null,
|
|
3189
|
+
"aria-describedby": null,
|
|
3190
|
+
"aria-disabled": d,
|
|
3191
|
+
"aria-dropeffect": null,
|
|
3192
|
+
"aria-expanded": ["true", "false", "undefined"],
|
|
3193
|
+
"aria-flowto": null,
|
|
3194
|
+
"aria-grabbed": ["true", "false", "undefined"],
|
|
3195
|
+
"aria-haspopup": d,
|
|
3196
|
+
"aria-hidden": d,
|
|
3197
|
+
"aria-invalid": ["true", "false", "grammar", "spelling"],
|
|
3198
|
+
"aria-label": null,
|
|
3199
|
+
"aria-labelledby": null,
|
|
3200
|
+
"aria-level": null,
|
|
3201
|
+
"aria-live": ["off", "polite", "assertive"],
|
|
3202
|
+
"aria-multiline": d,
|
|
3203
|
+
"aria-multiselectable": d,
|
|
3204
|
+
"aria-owns": null,
|
|
3205
|
+
"aria-posinset": null,
|
|
3206
|
+
"aria-pressed": ["true", "false", "mixed", "undefined"],
|
|
3207
|
+
"aria-readonly": d,
|
|
3208
|
+
"aria-relevant": null,
|
|
3209
|
+
"aria-required": d,
|
|
3210
|
+
"aria-selected": ["true", "false", "undefined"],
|
|
3211
|
+
"aria-setsize": null,
|
|
3212
|
+
"aria-sort": ["ascending", "descending", "none", "other"],
|
|
3213
|
+
"aria-valuemax": null,
|
|
3214
|
+
"aria-valuemin": null,
|
|
3215
|
+
"aria-valuenow": null,
|
|
3216
|
+
"aria-valuetext": null
|
|
3217
|
+
}, me = /* @__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((e) => "on" + e);
|
|
3218
|
+
for (let e of me)
|
|
3219
|
+
Pe[e] = null;
|
|
3220
|
+
class v {
|
|
3221
|
+
constructor(O, t) {
|
|
3222
|
+
this.tags = Object.assign(Object.assign({}, va), O), this.globalAttrs = Object.assign(Object.assign({}, Pe), t), this.allTags = Object.keys(this.tags), this.globalAttrNames = Object.keys(this.globalAttrs);
|
|
3223
|
+
}
|
|
3224
|
+
}
|
|
3225
|
+
v.default = /* @__PURE__ */ new v();
|
|
3226
|
+
function Y(e, O, t = e.length) {
|
|
3227
|
+
if (!O)
|
|
3228
|
+
return "";
|
|
3229
|
+
let a = O.firstChild, i = a && a.getChild("TagName");
|
|
3230
|
+
return i ? e.sliceString(i.from, Math.min(i.to, t)) : "";
|
|
3231
|
+
}
|
|
3232
|
+
function T(e, O = !1) {
|
|
3233
|
+
for (; e; e = e.parent)
|
|
3234
|
+
if (e.name == "Element")
|
|
3235
|
+
if (O)
|
|
3236
|
+
O = !1;
|
|
3237
|
+
else
|
|
3238
|
+
return e;
|
|
3239
|
+
return null;
|
|
3240
|
+
}
|
|
3241
|
+
function Ze(e, O, t) {
|
|
3242
|
+
let a = t.tags[Y(e, T(O))];
|
|
3243
|
+
return (a == null ? void 0 : a.children) || t.allTags;
|
|
3244
|
+
}
|
|
3245
|
+
function $O(e, O) {
|
|
3246
|
+
let t = [];
|
|
3247
|
+
for (let a = T(O); a && !a.type.isTop; a = T(a.parent)) {
|
|
3248
|
+
let i = Y(e, a);
|
|
3249
|
+
if (i && a.lastChild.name == "CloseTag")
|
|
3250
|
+
break;
|
|
3251
|
+
i && t.indexOf(i) < 0 && (O.name == "EndTag" || O.from >= a.firstChild.to) && t.push(i);
|
|
3252
|
+
}
|
|
3253
|
+
return t;
|
|
3254
|
+
}
|
|
3255
|
+
const be = /^[:\-\.\w\u00b7-\uffff]*$/;
|
|
3256
|
+
function EO(e, O, t, a, i) {
|
|
3257
|
+
let s = /\s*>/.test(e.sliceDoc(i, i + 5)) ? "" : ">", r = T(t, !0);
|
|
3258
|
+
return {
|
|
3259
|
+
from: a,
|
|
3260
|
+
to: i,
|
|
3261
|
+
options: Ze(e.doc, r, O).map((l) => ({ label: l, type: "type" })).concat($O(e.doc, t).map((l, n) => ({
|
|
3262
|
+
label: "/" + l,
|
|
3263
|
+
apply: "/" + l + s,
|
|
3264
|
+
type: "type",
|
|
3265
|
+
boost: 99 - n
|
|
3266
|
+
}))),
|
|
3267
|
+
validFor: /^\/?[:\-\.\w\u00b7-\uffff]*$/
|
|
3268
|
+
};
|
|
3269
|
+
}
|
|
3270
|
+
function NO(e, O, t, a) {
|
|
3271
|
+
let i = /\s*>/.test(e.sliceDoc(a, a + 5)) ? "" : ">";
|
|
3272
|
+
return {
|
|
3273
|
+
from: t,
|
|
3274
|
+
to: a,
|
|
3275
|
+
options: $O(e.doc, O).map((s, r) => ({ label: s, apply: s + i, type: "type", boost: 99 - r })),
|
|
3276
|
+
validFor: be
|
|
3277
|
+
};
|
|
3278
|
+
}
|
|
3279
|
+
function _a(e, O, t, a) {
|
|
3280
|
+
let i = [], s = 0;
|
|
3281
|
+
for (let r of Ze(e.doc, t, O))
|
|
3282
|
+
i.push({ label: "<" + r, type: "type" });
|
|
3283
|
+
for (let r of $O(e.doc, t))
|
|
3284
|
+
i.push({ label: "</" + r + ">", type: "type", boost: 99 - s++ });
|
|
3285
|
+
return { from: a, to: a, options: i, validFor: /^<\/?[:\-\.\w\u00b7-\uffff]*$/ };
|
|
3286
|
+
}
|
|
3287
|
+
function Wa(e, O, t, a, i) {
|
|
3288
|
+
let s = T(t), r = s ? O.tags[Y(e.doc, s)] : null, l = r && r.attrs ? Object.keys(r.attrs) : [], n = r && r.globalAttrs === !1 ? l : l.length ? l.concat(O.globalAttrNames) : O.globalAttrNames;
|
|
3289
|
+
return {
|
|
3290
|
+
from: a,
|
|
3291
|
+
to: i,
|
|
3292
|
+
options: n.map((Q) => ({ label: Q, type: "property" })),
|
|
3293
|
+
validFor: be
|
|
3294
|
+
};
|
|
3295
|
+
}
|
|
3296
|
+
function qa(e, O, t, a, i) {
|
|
3297
|
+
var s;
|
|
3298
|
+
let r = (s = t.parent) === null || s === void 0 ? void 0 : s.getChild("AttributeName"), l = [], n;
|
|
3299
|
+
if (r) {
|
|
3300
|
+
let Q = e.sliceDoc(r.from, r.to), h = O.globalAttrs[Q];
|
|
3301
|
+
if (!h) {
|
|
3302
|
+
let c = T(t), $ = c ? O.tags[Y(e.doc, c)] : null;
|
|
3303
|
+
h = ($ == null ? void 0 : $.attrs) && $.attrs[Q];
|
|
3304
|
+
}
|
|
3305
|
+
if (h) {
|
|
3306
|
+
let c = e.sliceDoc(a, i).toLowerCase(), $ = '"', p = '"';
|
|
3307
|
+
/^['"]/.test(c) ? (n = c[0] == '"' ? /^[^"]*$/ : /^[^']*$/, $ = "", p = e.sliceDoc(i, i + 1) == c[0] ? "" : c[0], c = c.slice(1), a++) : n = /^[^\s<>='"]*$/;
|
|
3308
|
+
for (let f of h)
|
|
3309
|
+
l.push({ label: f, apply: $ + f + p, type: "constant" });
|
|
3310
|
+
}
|
|
3311
|
+
}
|
|
3312
|
+
return { from: a, to: i, options: l, validFor: n };
|
|
3313
|
+
}
|
|
3314
|
+
function xe(e, O) {
|
|
3315
|
+
let { state: t, pos: a } = O, i = _(t).resolveInner(a, -1), s = i.resolve(a);
|
|
3316
|
+
for (let r = a, l; s == i && (l = i.childBefore(r)); ) {
|
|
3317
|
+
let n = l.lastChild;
|
|
3318
|
+
if (!n || !n.type.isError || n.from < n.to)
|
|
3319
|
+
break;
|
|
3320
|
+
s = i = l, r = n.from;
|
|
3321
|
+
}
|
|
3322
|
+
return i.name == "TagName" ? i.parent && /CloseTag$/.test(i.parent.name) ? NO(t, i, i.from, a) : EO(t, e, i, i.from, a) : i.name == "StartTag" ? EO(t, e, i, a, a) : i.name == "StartCloseTag" || i.name == "IncompleteCloseTag" ? NO(t, i, a, a) : O.explicit && (i.name == "OpenTag" || i.name == "SelfClosingTag") || i.name == "AttributeName" ? Wa(t, e, i, i.name == "AttributeName" ? i.from : a, a) : i.name == "Is" || i.name == "AttributeValue" || i.name == "UnquotedAttributeValue" ? qa(t, e, i, i.name == "Is" ? a : i.from, a) : O.explicit && (s.name == "Element" || s.name == "Text" || s.name == "Document") ? _a(t, e, i, a) : null;
|
|
3323
|
+
}
|
|
3324
|
+
function Ia(e) {
|
|
3325
|
+
return xe(v.default, e);
|
|
3326
|
+
}
|
|
3327
|
+
function Ca(e) {
|
|
3328
|
+
let { extraTags: O, extraGlobalAttributes: t } = e, a = t || O ? new v(O, t) : v.default;
|
|
3329
|
+
return (i) => xe(a, i);
|
|
3330
|
+
}
|
|
3331
|
+
const ja = /* @__PURE__ */ P.parser.configure({ top: "SingleExpression" }), ke = [
|
|
3332
|
+
{
|
|
3333
|
+
tag: "script",
|
|
3334
|
+
attrs: (e) => e.type == "text/typescript" || e.lang == "ts",
|
|
3335
|
+
parser: de.parser
|
|
3336
|
+
},
|
|
3337
|
+
{
|
|
3338
|
+
tag: "script",
|
|
3339
|
+
attrs: (e) => e.type == "text/babel" || e.type == "text/jsx",
|
|
3340
|
+
parser: ge.parser
|
|
3341
|
+
},
|
|
3342
|
+
{
|
|
3343
|
+
tag: "script",
|
|
3344
|
+
attrs: (e) => e.type == "text/typescript-jsx",
|
|
3345
|
+
parser: Xe.parser
|
|
3346
|
+
},
|
|
3347
|
+
{
|
|
3348
|
+
tag: "script",
|
|
3349
|
+
attrs: (e) => e.type == "importmap" || e.type == "speculationrules",
|
|
3350
|
+
parser: ja
|
|
3351
|
+
},
|
|
3352
|
+
{
|
|
3353
|
+
tag: "script",
|
|
3354
|
+
attrs(e) {
|
|
3355
|
+
return !e.type || /^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(e.type);
|
|
3356
|
+
},
|
|
3357
|
+
parser: P.parser
|
|
3358
|
+
},
|
|
3359
|
+
{
|
|
3360
|
+
tag: "style",
|
|
3361
|
+
attrs(e) {
|
|
3362
|
+
return (!e.lang || e.lang == "css") && (!e.type || /^(text\/)?(x-)?(stylesheet|css)$/i.test(e.type));
|
|
3363
|
+
},
|
|
3364
|
+
parser: J.parser
|
|
3365
|
+
}
|
|
3366
|
+
], we = /* @__PURE__ */ [
|
|
3367
|
+
{
|
|
3368
|
+
name: "style",
|
|
3369
|
+
parser: /* @__PURE__ */ J.parser.configure({ top: "Styles" })
|
|
3370
|
+
}
|
|
3371
|
+
].concat(/* @__PURE__ */ me.map((e) => ({ name: e, parser: P.parser }))), ye = /* @__PURE__ */ oO.define({
|
|
3372
|
+
name: "html",
|
|
3373
|
+
parser: /* @__PURE__ */ Tt.configure({
|
|
3374
|
+
props: [
|
|
3375
|
+
/* @__PURE__ */ QO.add({
|
|
3376
|
+
Element(e) {
|
|
3377
|
+
let O = /^(\s*)(<\/)?/.exec(e.textAfter);
|
|
3378
|
+
return e.node.to <= e.pos + O[0].length ? e.continue() : e.lineIndent(e.node.from) + (O[2] ? 0 : e.unit);
|
|
3379
|
+
},
|
|
3380
|
+
"OpenTag CloseTag SelfClosingTag"(e) {
|
|
3381
|
+
return e.column(e.node.from) + e.unit;
|
|
3382
|
+
},
|
|
3383
|
+
Document(e) {
|
|
3384
|
+
if (e.pos + /\s*/.exec(e.textAfter)[0].length < e.node.to)
|
|
3385
|
+
return e.continue();
|
|
3386
|
+
let O = null, t;
|
|
3387
|
+
for (let a = e.node; ; ) {
|
|
3388
|
+
let i = a.lastChild;
|
|
3389
|
+
if (!i || i.name != "Element" || i.to != a.to)
|
|
3390
|
+
break;
|
|
3391
|
+
O = a = i;
|
|
3392
|
+
}
|
|
3393
|
+
return O && !((t = O.lastChild) && (t.name == "CloseTag" || t.name == "SelfClosingTag")) ? e.lineIndent(O.from) + e.unit : null;
|
|
3394
|
+
}
|
|
3395
|
+
}),
|
|
3396
|
+
/* @__PURE__ */ cO.add({
|
|
3397
|
+
Element(e) {
|
|
3398
|
+
let O = e.firstChild, t = e.lastChild;
|
|
3399
|
+
return !O || O.name != "OpenTag" ? null : { from: O.to, to: t.name == "CloseTag" ? t.from : e.to };
|
|
3400
|
+
}
|
|
3401
|
+
}),
|
|
3402
|
+
/* @__PURE__ */ je.add({
|
|
3403
|
+
"OpenTag CloseTag": (e) => e.getChild("TagName")
|
|
3404
|
+
})
|
|
3405
|
+
]
|
|
3406
|
+
}),
|
|
3407
|
+
languageData: {
|
|
3408
|
+
commentTokens: { block: { open: "<!--", close: "-->" } },
|
|
3409
|
+
indentOnInput: /^\s*<\/\w+\W$/,
|
|
3410
|
+
wordChars: "-._"
|
|
3411
|
+
}
|
|
3412
|
+
}), G = /* @__PURE__ */ ye.configure({
|
|
3413
|
+
wrap: /* @__PURE__ */ oe(ke, we)
|
|
3414
|
+
});
|
|
3415
|
+
function Aa(e = {}) {
|
|
3416
|
+
let O = "", t;
|
|
3417
|
+
e.matchClosingTags === !1 && (O = "noMatch"), e.selfClosingTags === !0 && (O = (O ? O + " " : "") + "selfClosing"), (e.nestedLanguages && e.nestedLanguages.length || e.nestedAttributes && e.nestedAttributes.length) && (t = oe((e.nestedLanguages || []).concat(ke), (e.nestedAttributes || []).concat(we)));
|
|
3418
|
+
let a = t ? ye.configure({ wrap: t, dialect: O }) : O ? G.configure({ dialect: O }) : G;
|
|
3419
|
+
return new uO(a, [
|
|
3420
|
+
G.data.of({ autocomplete: Ca(e) }),
|
|
3421
|
+
e.autoCloseTags !== !1 ? za : [],
|
|
3422
|
+
Ya().support,
|
|
3423
|
+
ta().support
|
|
3424
|
+
]);
|
|
3425
|
+
}
|
|
3426
|
+
const BO = /* @__PURE__ */ new Set(/* @__PURE__ */ "area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")), za = /* @__PURE__ */ LO.inputHandler.of((e, O, t, a, i) => {
|
|
3427
|
+
if (e.composing || e.state.readOnly || O != t || a != ">" && a != "/" || !G.isActiveAt(e.state, O, -1))
|
|
3428
|
+
return !1;
|
|
3429
|
+
let s = i(), { state: r } = s, l = r.changeByRange((n) => {
|
|
3430
|
+
var Q, h, c;
|
|
3431
|
+
let $ = r.doc.sliceString(n.from - 1, n.to) == a, { head: p } = n, f = _(r).resolveInner(p - 1, -1), S;
|
|
3432
|
+
if ((f.name == "TagName" || f.name == "StartTag") && (f = f.parent), $ && a == ">" && f.name == "OpenTag") {
|
|
3433
|
+
if (((h = (Q = f.parent) === null || Q === void 0 ? void 0 : Q.lastChild) === null || h === void 0 ? void 0 : h.name) != "CloseTag" && (S = Y(r.doc, f.parent, p)) && !BO.has(S)) {
|
|
3434
|
+
let Z = p + (r.doc.sliceString(p, p + 1) === ">" ? 1 : 0), k = `</${S}>`;
|
|
3435
|
+
return { range: n, changes: { from: p, to: Z, insert: k } };
|
|
3436
|
+
}
|
|
3437
|
+
} else if ($ && a == "/" && f.name == "IncompleteCloseTag") {
|
|
3438
|
+
let Z = f.parent;
|
|
3439
|
+
if (f.from == p - 2 && ((c = Z.lastChild) === null || c === void 0 ? void 0 : c.name) != "CloseTag" && (S = Y(r.doc, Z, p)) && !BO.has(S)) {
|
|
3440
|
+
let k = p + (r.doc.sliceString(p, p + 1) === ">" ? 1 : 0), fO = `${S}>`;
|
|
3441
|
+
return {
|
|
3442
|
+
range: C.cursor(p + fO.length, -1),
|
|
3443
|
+
changes: { from: p, to: k, insert: fO }
|
|
3444
|
+
};
|
|
3445
|
+
}
|
|
3446
|
+
}
|
|
3447
|
+
return { range: n };
|
|
3448
|
+
});
|
|
3449
|
+
return l.changes.empty ? !1 : (e.dispatch([
|
|
3450
|
+
s,
|
|
3451
|
+
r.update(l, {
|
|
3452
|
+
userEvent: "input.complete",
|
|
3453
|
+
scrollIntoView: !0
|
|
3454
|
+
})
|
|
3455
|
+
]), !0);
|
|
3456
|
+
});
|
|
3457
|
+
export {
|
|
3458
|
+
za as autoCloseTags,
|
|
3459
|
+
Aa as html,
|
|
3460
|
+
Ia as htmlCompletionSource,
|
|
3461
|
+
Ca as htmlCompletionSourceWith,
|
|
3462
|
+
G as htmlLanguage,
|
|
3463
|
+
ye as htmlPlain
|
|
3464
|
+
};
|
|
3465
|
+
//# sourceMappingURL=index-b8cc4f2e.mjs.map
|