@templatical/editor 0.16.4 → 0.17.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.
Files changed (120) hide show
  1. package/dist/{AiChatSidebar-CYAbVB2G.js → AiChatSidebar-LxCHMdcj.js} +1 -1
  2. package/dist/{AiFeatureMenu-BPCkrHAS.js → AiFeatureMenu-zwSmx9ZW.js} +3 -3
  3. package/dist/{BlockIssueBadge-BLytBabN.js → BlockIssueBadge-BQ1yB1me.js} +2 -2
  4. package/dist/{CloudEditor-v8ARYaFW.js → CloudEditor-5ahgKRX8.js} +11 -10
  5. package/dist/{CollaboratorBar-BQzKZ2zo.js → CollaboratorBar-6PtX-1AS.js} +2 -2
  6. package/dist/{ColorPicker-Cab6U2sH.js → ColorPicker-DfzDyNKe.js} +57 -58
  7. package/dist/{CommentsSidebar-C_XLBbo3.js → CommentsSidebar-Cl93TN96.js} +3 -3
  8. package/dist/{CountdownBlock-173fiO5Z.js → CountdownBlock-DbXfzwae.js} +1 -1
  9. package/dist/{CountdownToolbar-q3umZ7TZ.js → CountdownToolbar-BqaMWRyB.js} +3 -3
  10. package/dist/{DesignReferenceSidebar-Bh9uAZ4B.js → DesignReferenceSidebar-jVrdS8wW.js} +2 -2
  11. package/dist/{IssuesPanel-DltSuU6H.js → IssuesPanel-Bq3yXg6M.js} +2 -2
  12. package/dist/{MergeTagSuggestion-DrT3LiZ4.js → MergeTagSuggestion-jIpT_jmz.js} +7 -5
  13. package/dist/{ModuleBrowserModal-CzzChPmN.js → ModuleBrowserModal-B5IH3-1I.js} +7 -7
  14. package/dist/{ModulePreviewCanvas-C0Q2n3FL.js → ModulePreviewCanvas-CYOLWoZ9.js} +2 -2
  15. package/dist/{NumberWithSuffix-Bhm2ByHs.js → NumberWithSuffix-9FG7mNnn.js} +1 -1
  16. package/dist/{ParagraphEditor-BhsBi8p8.js → ParagraphEditor-duWYA6Vv.js} +38 -39
  17. package/dist/{RichTextEditorContent-ef0fdj6e.js → RichTextEditorContent-DCzmVeyb.js} +13 -13
  18. package/dist/{SaveModuleDialog-BNN3dcxD.js → SaveModuleDialog-BPUly5h3.js} +6 -6
  19. package/dist/{SnapshotHistory-tWvgMCe6.js → SnapshotHistory-CmwU3nlN.js} +4 -4
  20. package/dist/{TemplateScoringPanel-ZhObHWeb.js → TemplateScoringPanel-CMrfa9Rd.js} +3 -3
  21. package/dist/{TestEmailModal-EdwEcsrD.js → TestEmailModal-zfomMz9i.js} +3 -3
  22. package/dist/{TitleEditor-DdvRepBq.js → TitleEditor-v0gtezZE.js} +18 -18
  23. package/dist/{TplModal-Niu4Y96-.js → TplModal-eGFG7k-y.js} +4 -4
  24. package/dist/{blockTypeIcons-DHcYPMB8.js → blockTypeIcons-Dd0w4T0I.js} +1 -1
  25. package/dist/bundle-stats.json +7 -7
  26. package/dist/{ca-DI1ViqMa.js → ca-CSl--oWR.js} +1 -1
  27. package/dist/cdn/chunks/{AiFeatureMenu-AoUwsqor.js → AiFeatureMenu-CtXsam7G.js} +6 -6
  28. package/dist/cdn/chunks/{AiFeatureMenu-AoUwsqor.js.map → AiFeatureMenu-CtXsam7G.js.map} +1 -1
  29. package/dist/cdn/chunks/{BlockIssueBadge-DZU3CfEN.js → BlockIssueBadge-DR7cpDfQ.js} +4 -4
  30. package/dist/cdn/chunks/{BlockIssueBadge-DZU3CfEN.js.map → BlockIssueBadge-DR7cpDfQ.js.map} +1 -1
  31. package/dist/cdn/chunks/{CloudEditor-BrZLF_m1.js → CloudEditor-YC5y3AwC.js} +131 -130
  32. package/dist/cdn/chunks/CloudEditor-YC5y3AwC.js.map +1 -0
  33. package/dist/cdn/chunks/{CollaboratorBar-BAC56ez6.js → CollaboratorBar-BOD2j8Kl.js} +3 -3
  34. package/dist/cdn/chunks/{CollaboratorBar-BAC56ez6.js.map → CollaboratorBar-BOD2j8Kl.js.map} +1 -1
  35. package/dist/cdn/chunks/{ColorPicker-DLEoT419.js → ColorPicker-CPMWLHpa.js} +144 -144
  36. package/dist/cdn/chunks/ColorPicker-CPMWLHpa.js.map +1 -0
  37. package/dist/cdn/chunks/{CountdownBlock-BOF9aTXF.js → CountdownBlock-BmGqb7Zi.js} +4 -4
  38. package/dist/cdn/chunks/{CountdownBlock-BOF9aTXF.js.map → CountdownBlock-BmGqb7Zi.js.map} +1 -1
  39. package/dist/cdn/chunks/{CountdownToolbar-C9bQ5k4E.js → CountdownToolbar-BBwsdGbV.js} +4 -4
  40. package/dist/cdn/chunks/{CountdownToolbar-C9bQ5k4E.js.map → CountdownToolbar-BBwsdGbV.js.map} +1 -1
  41. package/dist/cdn/chunks/{IssuesPanel-CHwYahKK.js → IssuesPanel-G0z-j3JS.js} +7 -7
  42. package/dist/cdn/chunks/{IssuesPanel-CHwYahKK.js.map → IssuesPanel-G0z-j3JS.js.map} +1 -1
  43. package/dist/cdn/chunks/{MergeTagSuggestion-jesxS7An.js → MergeTagSuggestion-rpZ6Ol-i.js} +8 -6
  44. package/dist/cdn/chunks/MergeTagSuggestion-rpZ6Ol-i.js.map +1 -0
  45. package/dist/cdn/chunks/{ModuleBrowserModal-iSXXpAUk.js → ModuleBrowserModal-DiLTY0ec.js} +8 -8
  46. package/dist/cdn/chunks/{ModuleBrowserModal-iSXXpAUk.js.map → ModuleBrowserModal-DiLTY0ec.js.map} +1 -1
  47. package/dist/cdn/chunks/{ModulePreviewCanvas-DIy0MZj2.js → ModulePreviewCanvas-CdV5mEQ6.js} +32 -32
  48. package/dist/cdn/chunks/{ModulePreviewCanvas-DIy0MZj2.js.map → ModulePreviewCanvas-CdV5mEQ6.js.map} +1 -1
  49. package/dist/cdn/chunks/{NumberWithSuffix-vPdOG2lO.js → NumberWithSuffix-lqQlf0Uk.js} +2 -2
  50. package/dist/cdn/chunks/{NumberWithSuffix-vPdOG2lO.js.map → NumberWithSuffix-lqQlf0Uk.js.map} +1 -1
  51. package/dist/cdn/chunks/{ParagraphEditor-D7znI_X1.js → ParagraphEditor-BYoZfURd.js} +75 -75
  52. package/dist/cdn/chunks/ParagraphEditor-BYoZfURd.js.map +1 -0
  53. package/dist/cdn/chunks/{RichTextEditorContent-DVwGHbO6.js → RichTextEditorContent-BnPRnXxy.js} +6 -6
  54. package/dist/cdn/chunks/{RichTextEditorContent-DVwGHbO6.js.map → RichTextEditorContent-BnPRnXxy.js.map} +1 -1
  55. package/dist/cdn/chunks/{SaveModuleDialog-D2_qPtE9.js → SaveModuleDialog-C9hUeWyG.js} +20 -20
  56. package/dist/cdn/chunks/{SaveModuleDialog-D2_qPtE9.js.map → SaveModuleDialog-C9hUeWyG.js.map} +1 -1
  57. package/dist/cdn/chunks/{TitleEditor-CKjZ6Cgp.js → TitleEditor-wFvnU3Jr.js} +9 -9
  58. package/dist/cdn/chunks/TitleEditor-wFvnU3Jr.js.map +1 -0
  59. package/dist/cdn/chunks/{blockTypeIcons-BKecgdgr.js → blockTypeIcons-DNMvDz5B.js} +7 -7
  60. package/dist/cdn/chunks/{blockTypeIcons-BKecgdgr.js.map → blockTypeIcons-DNMvDz5B.js.map} +1 -1
  61. package/dist/cdn/chunks/{ca-DI1ViqMa.js → ca-CSl--oWR.js} +2 -2
  62. package/dist/cdn/chunks/ca-CSl--oWR.js.map +1 -0
  63. package/dist/cdn/chunks/{de-q9lTCMre.js → de-ZaffrKDP.js} +2 -2
  64. package/dist/cdn/chunks/de-ZaffrKDP.js.map +1 -0
  65. package/dist/cdn/chunks/{en-CR4LItrX.js → en-CHuXeJDt.js} +2 -2
  66. package/dist/cdn/chunks/en-CHuXeJDt.js.map +1 -0
  67. package/dist/cdn/chunks/{es-CEt-lrGd.js → es-CaC8VQjO.js} +2 -2
  68. package/dist/cdn/chunks/es-CaC8VQjO.js.map +1 -0
  69. package/dist/cdn/chunks/{extensions-OZTN_skA.js → extensions-DxcxIlwT.js} +29 -29
  70. package/dist/cdn/chunks/{extensions-OZTN_skA.js.map → extensions-DxcxIlwT.js.map} +1 -1
  71. package/dist/cdn/chunks/{features-Bo7H8WNI.js → features-B3qgDBHf.js} +727 -677
  72. package/dist/cdn/chunks/features-B3qgDBHf.js.map +1 -0
  73. package/dist/cdn/chunks/{icons-BrNSrnyT.js → icons-kiMqh99T.js} +2 -2
  74. package/dist/cdn/chunks/{icons-BrNSrnyT.js.map → icons-kiMqh99T.js.map} +1 -1
  75. package/dist/cdn/chunks/{media-library-Cec5DMR3.js → media-library-C5ogiZ4f.js} +451 -451
  76. package/dist/cdn/chunks/{media-library-Cec5DMR3.js.map → media-library-C5ogiZ4f.js.map} +1 -1
  77. package/dist/cdn/chunks/{pt-BR-DvBHY0AA.js → pt-BR-C74zfEWH.js} +2 -2
  78. package/dist/cdn/chunks/pt-BR-C74zfEWH.js.map +1 -0
  79. package/dist/cdn/chunks/{quality-Dd2iYgRf.js → quality-BftAn_AJ.js} +512 -512
  80. package/dist/cdn/chunks/{quality-Dd2iYgRf.js.map → quality-BftAn_AJ.js.map} +1 -1
  81. package/dist/cdn/chunks/{renderer-Br-qXdnQ.js → renderer-Cdlo4MVX.js} +16 -16
  82. package/dist/cdn/chunks/{renderer-Br-qXdnQ.js.map → renderer-Cdlo4MVX.js.map} +1 -1
  83. package/dist/cdn/chunks/{src-BH8PABpF.js → src-GBA8oUL2.js} +6 -6
  84. package/dist/cdn/chunks/{src-BH8PABpF.js.map → src-GBA8oUL2.js.map} +1 -1
  85. package/dist/cdn/chunks/{styles-nqo5BynI.js → styles-B6rdq9JB.js} +219 -219
  86. package/dist/cdn/chunks/styles-B6rdq9JB.js.map +1 -0
  87. package/dist/cdn/editor.css +1 -1
  88. package/dist/cdn/editor.js +53 -52
  89. package/dist/cdn/editor.js.map +1 -1
  90. package/dist/{de-q9lTCMre.js → de-ZaffrKDP.js} +1 -1
  91. package/dist/{en-CR4LItrX.js → en-CHuXeJDt.js} +1 -1
  92. package/dist/{es-CEt-lrGd.js → es-CaC8VQjO.js} +1 -1
  93. package/dist/{extensions-B2poxDIo.js → extensions-B4lu0KkE.js} +3 -3
  94. package/dist/index.d.ts +56 -0
  95. package/dist/keys-WVNarXg8.js +10 -0
  96. package/dist/{pt-BR-DvBHY0AA.js → pt-BR-C74zfEWH.js} +1 -1
  97. package/dist/style.css +1 -1
  98. package/dist/{styles-DN4J7w-C.js → styles-mBSbDYeX.js} +98 -98
  99. package/dist/templatical-editor.js +11 -10
  100. package/dist/{useCloudI18n-WbfVWq5k.js → useCloudI18n-CIKI0hCd.js} +1 -1
  101. package/dist/{useEditorCore-DBq2689h.js → useEditorCore-CaaHPKjm.js} +715 -684
  102. package/dist/{useI18n-eR1yVW0v.js → useI18n-0EU_JVe7.js} +1 -1
  103. package/dist/{useMergeTag-C3GfSktg.js → useMergeTag-C7v6MVah.js} +2 -2
  104. package/dist/usePopoverPosition-BDqqnMeo.js +281 -0
  105. package/package.json +7 -7
  106. package/dist/cdn/chunks/CloudEditor-BrZLF_m1.js.map +0 -1
  107. package/dist/cdn/chunks/ColorPicker-DLEoT419.js.map +0 -1
  108. package/dist/cdn/chunks/MergeTagSuggestion-jesxS7An.js.map +0 -1
  109. package/dist/cdn/chunks/ParagraphEditor-D7znI_X1.js.map +0 -1
  110. package/dist/cdn/chunks/TitleEditor-CKjZ6Cgp.js.map +0 -1
  111. package/dist/cdn/chunks/ca-DI1ViqMa.js.map +0 -1
  112. package/dist/cdn/chunks/de-q9lTCMre.js.map +0 -1
  113. package/dist/cdn/chunks/en-CR4LItrX.js.map +0 -1
  114. package/dist/cdn/chunks/es-CEt-lrGd.js.map +0 -1
  115. package/dist/cdn/chunks/features-Bo7H8WNI.js.map +0 -1
  116. package/dist/cdn/chunks/pt-BR-DvBHY0AA.js.map +0 -1
  117. package/dist/cdn/chunks/styles-nqo5BynI.js.map +0 -1
  118. package/dist/color-DhoxCSMv.js +0 -259
  119. package/dist/keys-BbDgCU6K.js +0 -10
  120. package/dist/usePopoverRoot-C1j0D7cc.js +0 -8
@@ -1,12 +1,12 @@
1
1
  import { n as e } from "./rolldown-runtime-Dqa2HsxW.js";
2
- import { Bn as t, Gn as n, Hn as r, Jn as i, Ln as a, Un as o, Vn as s, Wn as c, Xn as ee, Yn as te, qn as ne } from "./features-Bo7H8WNI.js";
2
+ import { Gn as t, Hn as n, Jn as r, Kn as i, Rn as a, Un as o, Vn as s, Wn as c, Xn as ee, Yn as l, Zn as te } from "./features-B3qgDBHf.js";
3
3
  //#region ../quality/src/types.ts
4
- var re = {
4
+ var ne = {
5
5
  altMaxLength: 125,
6
6
  minFontSize: 14,
7
7
  allCapsMinLength: 20,
8
8
  minTouchTargetPx: 44
9
- }, ie = [
9
+ }, re = [
10
10
  "localhost",
11
11
  "127.0.0.1",
12
12
  "0.0.0.0",
@@ -16,76 +16,76 @@ var re = {
16
16
  ];
17
17
  //#endregion
18
18
  //#region ../quality/src/contrast.ts
19
- function ae(e, t) {
20
- let n = l(e), r = l(t);
19
+ function u(e, t) {
20
+ let n = d(e), r = d(t);
21
21
  if (!n || !r) return NaN;
22
- let i = le(n), a = le(r), o = Math.max(i, a), s = Math.min(i, a);
22
+ let i = se(n), a = se(r), o = Math.max(i, a), s = Math.min(i, a);
23
23
  return (o + .05) / (s + .05);
24
24
  }
25
- var oe = /^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i, se = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i, ce = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i;
26
- function l(e) {
25
+ var ie = /^#?([0-9a-f])([0-9a-f])([0-9a-f])$/i, ae = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i, oe = /^#?([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i;
26
+ function d(e) {
27
27
  if (typeof e != "string") return null;
28
- let t = e.trim(), n = ce.exec(t);
28
+ let t = e.trim(), n = oe.exec(t);
29
29
  if (n) return n[4].toLowerCase() === "ff" ? {
30
30
  r: parseInt(n[1], 16),
31
31
  g: parseInt(n[2], 16),
32
32
  b: parseInt(n[3], 16)
33
33
  } : null;
34
- let r = se.exec(t);
34
+ let r = ae.exec(t);
35
35
  if (r) return {
36
36
  r: parseInt(r[1], 16),
37
37
  g: parseInt(r[2], 16),
38
38
  b: parseInt(r[3], 16)
39
39
  };
40
- let i = oe.exec(t);
40
+ let i = ie.exec(t);
41
41
  return i ? {
42
42
  r: parseInt(i[1] + i[1], 16),
43
43
  g: parseInt(i[2] + i[2], 16),
44
44
  b: parseInt(i[3] + i[3], 16)
45
45
  } : null;
46
46
  }
47
- function u(e) {
48
- return l(e ?? "") !== null;
47
+ function f(e) {
48
+ return d(e ?? "") !== null;
49
49
  }
50
- function le({ r: e, g: t, b: n }) {
51
- let r = d(e / 255), i = d(t / 255), a = d(n / 255);
50
+ function se({ r: e, g: t, b: n }) {
51
+ let r = p(e / 255), i = p(t / 255), a = p(n / 255);
52
52
  return .2126 * r + .7152 * i + .0722 * a;
53
53
  }
54
- function d(e) {
54
+ function p(e) {
55
55
  return e <= .03928 ? e / 12.92 : ((e + .055) / 1.055) ** 2.4;
56
56
  }
57
57
  //#endregion
58
58
  //#region ../quality/src/walk.ts
59
- var ue = "#ffffff", de = "#1a1a1a";
60
- function f(e, t) {
61
- let n = u(e.settings.backgroundColor) ? e.settings.backgroundColor.toLowerCase() : ue, r = u(e.settings.textColor) ? e.settings.textColor.toLowerCase() : de, i = (e, n) => {
62
- let r = e.styles?.backgroundColor, a = u(r) ? r.toLowerCase() : n.resolvedBackgroundColor;
63
- t(e, a === n.resolvedBackgroundColor ? n : {
64
- ...n,
65
- resolvedBackgroundColor: a
66
- }), c(e) && e.children.forEach((t, r) => {
67
- t.forEach((t) => i(t, {
59
+ var ce = "#ffffff", le = "#1a1a1a";
60
+ function ue(e, n) {
61
+ let r = f(e.settings.backgroundColor) ? e.settings.backgroundColor.toLowerCase() : ce, i = f(e.settings.textColor) ? e.settings.textColor.toLowerCase() : le, a = (e, r) => {
62
+ let i = e.styles?.backgroundColor, o = f(i) ? i.toLowerCase() : r.resolvedBackgroundColor;
63
+ n(e, o === r.resolvedBackgroundColor ? r : {
64
+ ...r,
65
+ resolvedBackgroundColor: o
66
+ }), t(e) && e.children.forEach((t, n) => {
67
+ t.forEach((t) => a(t, {
68
68
  parent: e,
69
69
  section: e,
70
- columnIndex: r,
71
- depth: n.depth + 1,
72
- resolvedBackgroundColor: a,
73
- resolvedTextColor: n.resolvedTextColor
70
+ columnIndex: n,
71
+ depth: r.depth + 1,
72
+ resolvedBackgroundColor: o,
73
+ resolvedTextColor: r.resolvedTextColor
74
74
  }));
75
75
  });
76
76
  };
77
- for (let t of e.blocks) i(t, {
77
+ for (let t of e.blocks) a(t, {
78
78
  parent: null,
79
79
  section: null,
80
80
  columnIndex: null,
81
81
  depth: 0,
82
- resolvedBackgroundColor: n,
83
- resolvedTextColor: r
82
+ resolvedBackgroundColor: r,
83
+ resolvedTextColor: i
84
84
  });
85
85
  }
86
86
  //#endregion
87
87
  //#region ../quality/src/run-rules.ts
88
- function p(e, t, n, r) {
88
+ function m(e, t, n, r) {
89
89
  let i = [];
90
90
  function a(e, t, i) {
91
91
  return {
@@ -96,7 +96,7 @@ function p(e, t, n, r) {
96
96
  fix: i.fix
97
97
  };
98
98
  }
99
- f(e, (e, r) => {
99
+ ue(e, (e, r) => {
100
100
  for (let o of t) {
101
101
  let t = n.severity(o.meta.id);
102
102
  if (t === "off" || !o.block) continue;
@@ -112,11 +112,11 @@ function p(e, t, n, r) {
112
112
  }
113
113
  return i;
114
114
  }
115
- function m(e) {
115
+ function h(e) {
116
116
  let t = e.overrides ?? {}, n = {
117
- ...re,
117
+ ...ne,
118
118
  ...e.thresholds ?? {}
119
- }, r = { nonProductionHosts: e.nonProductionHosts ?? ie }, i = e.locale ?? "en", a = e.rules;
119
+ }, r = { nonProductionHosts: e.nonProductionHosts ?? re }, i = e.locale ?? "en", a = e.rules;
120
120
  return {
121
121
  locale: i,
122
122
  rules: t,
@@ -128,8 +128,8 @@ function m(e) {
128
128
  }
129
129
  };
130
130
  }
131
- function fe(e, t, n) {
132
- return m({
131
+ function de(e, t, n) {
132
+ return h({
133
133
  locale: e,
134
134
  rules: n,
135
135
  overrides: t.rules,
@@ -137,8 +137,8 @@ function fe(e, t, n) {
137
137
  nonProductionHosts: void 0
138
138
  });
139
139
  }
140
- function pe(e, t, n) {
141
- return m({
140
+ function fe(e, t, n) {
141
+ return h({
142
142
  locale: e,
143
143
  rules: n,
144
144
  overrides: t.rules,
@@ -146,8 +146,8 @@ function pe(e, t, n) {
146
146
  nonProductionHosts: void 0
147
147
  });
148
148
  }
149
- function me(e, t, n) {
150
- return m({
149
+ function pe(e, t, n) {
150
+ return h({
151
151
  locale: e,
152
152
  rules: n,
153
153
  overrides: t.rules,
@@ -157,7 +157,7 @@ function me(e, t, n) {
157
157
  }
158
158
  //#endregion
159
159
  //#region ../quality/src/accessibility/messages/de.ts
160
- var he = /* @__PURE__ */ e({ default: () => ge }), ge = {
160
+ var me = /* @__PURE__ */ e({ default: () => he }), he = {
161
161
  "a11y.img-missing-alt": "Bild ohne Alt-Text. Füge eine kurze Beschreibung hinzu oder markiere das Bild als dekorativ.",
162
162
  "a11y.img-alt-is-filename": "Alt-Text sieht wie ein Dateiname aus (\"{alt}\"). Beschreibe stattdessen kurz, was das Bild zeigt.",
163
163
  "a11y.img-alt-too-long": "Alt-Text ist {length} Zeichen lang; bleibe unter {max}.",
@@ -178,7 +178,7 @@ var he = /* @__PURE__ */ e({ default: () => ge }), ge = {
178
178
  "a11y.button-touch-target": "Button ist etwa {height}px hoch; mindestens {min}px verwenden, um Fehltipper auf Mobilgeräten zu vermeiden.",
179
179
  "a11y.button-low-contrast": "Buttontextkontrast beträgt {ratio}:1; WCAG AA verlangt mindestens {required}:1.",
180
180
  "a11y.missing-preheader": "Kein Preheader-Text gesetzt. Postfächer zeigen sonst Bruchstücke des ersten Blocks an."
181
- }, _e = /* @__PURE__ */ e({ default: () => h }), h = {
181
+ }, ge = /* @__PURE__ */ e({ default: () => g }), g = {
182
182
  "a11y.img-missing-alt": "Image is missing alt text. Add a short description, or mark the image as decorative.",
183
183
  "a11y.img-alt-is-filename": "Alt text looks like a filename (\"{alt}\"). Replace with a short description of what the image conveys.",
184
184
  "a11y.img-alt-too-long": "Alt text is {length} characters; aim for under {max}.",
@@ -199,76 +199,76 @@ var he = /* @__PURE__ */ e({ default: () => ge }), ge = {
199
199
  "a11y.button-touch-target": "Button is roughly {height}px tall; aim for at least {min}px to avoid mis-taps on mobile.",
200
200
  "a11y.button-low-contrast": "Button text contrast is {ratio}:1; WCAG AA requires at least {required}:1.",
201
201
  "a11y.missing-preheader": "No preheader text set. Inboxes will fall back to fragments of the first block."
202
- }, ve = /* #__PURE__ */ Object.assign({
203
- "./de.ts": he,
204
- "./en.ts": _e
205
- }), g = {};
206
- for (let e in ve) {
202
+ }, _ = /* #__PURE__ */ Object.assign({
203
+ "./de.ts": me,
204
+ "./en.ts": ge
205
+ }), v = {};
206
+ for (let e in _) {
207
207
  let t = /\.\/([^/]+)\.ts$/.exec(e);
208
208
  if (!t) continue;
209
209
  let n = t[1];
210
- n !== "index" && (g[n] = ve[e].default);
210
+ n !== "index" && (v[n] = _[e].default);
211
211
  }
212
- function ye(e) {
213
- return g[e.split("-")[0]?.toLowerCase() ?? "en"] ?? g.en ?? h;
212
+ function _e(e) {
213
+ return v[e.split("-")[0]?.toLowerCase() ?? "en"] ?? v.en ?? g;
214
214
  }
215
- function be(e, t, n) {
216
- let r = ye(e)[t] ?? h[t];
215
+ function ve(e, t, n) {
216
+ let r = _e(e)[t] ?? g[t];
217
217
  return n ? r.replace(/\{(\w+)\}/g, (e, t) => {
218
218
  let r = n[t];
219
219
  return r === void 0 ? `{${t}}` : String(r);
220
220
  }) : r;
221
221
  }
222
- var xe = {
222
+ var ye = {
223
223
  meta: {
224
224
  id: "a11y.img-missing-alt",
225
225
  severity: "error"
226
226
  },
227
227
  block(e) {
228
- return !s(e) || e.decorative === !0 || (e.alt?.trim() ?? "") !== "" || (e.src ?? "").trim() === "" ? null : { blockId: e.id };
228
+ return !n(e) || e.decorative === !0 || (e.alt?.trim() ?? "") !== "" || (e.src ?? "").trim() === "" ? null : { blockId: e.id };
229
229
  }
230
- }, Se = {
230
+ }, be = {
231
231
  id: "a11y.img-alt-is-filename",
232
232
  severity: "warning"
233
- }, Ce = [
233
+ }, xe = [
234
234
  /\.(jpe?g|png|gif|webp|svg)$/i,
235
235
  /^IMG[_-]?\d+/i,
236
236
  /^Untitled/i,
237
237
  /^Screen[\s_-]?Shot/i,
238
238
  /^DSC[_-]?\d+/i
239
- ], we = {
240
- meta: Se,
239
+ ], Se = {
240
+ meta: be,
241
241
  block(e) {
242
- if (!s(e) || e.decorative === !0) return null;
242
+ if (!n(e) || e.decorative === !0) return null;
243
243
  let t = e.alt?.trim() ?? "";
244
- return t === "" || !Ce.some((e) => e.test(t)) ? null : {
244
+ return t === "" || !xe.some((e) => e.test(t)) ? null : {
245
245
  blockId: e.id,
246
246
  params: { alt: t }
247
247
  };
248
248
  }
249
- }, Te = {
249
+ }, Ce = {
250
250
  meta: {
251
251
  id: "a11y.img-alt-too-long",
252
252
  severity: "warning"
253
253
  },
254
- block(e, t, n) {
255
- if (!s(e) || e.decorative === !0) return null;
256
- let r = e.alt ?? "";
257
- return r.length <= n.thresholds.altMaxLength ? null : {
254
+ block(e, t, r) {
255
+ if (!n(e) || e.decorative === !0) return null;
256
+ let i = e.alt ?? "";
257
+ return i.length <= r.thresholds.altMaxLength ? null : {
258
258
  blockId: e.id,
259
259
  params: {
260
- length: r.length,
261
- max: n.thresholds.altMaxLength
260
+ length: i.length,
261
+ max: r.thresholds.altMaxLength
262
262
  }
263
263
  };
264
264
  }
265
- }, Ee = {
265
+ }, we = {
266
266
  meta: {
267
267
  id: "a11y.img-decorative-needs-empty-alt",
268
268
  severity: "info"
269
269
  },
270
270
  block(e) {
271
- return !s(e) || e.decorative !== !0 || (e.alt ?? "").trim() === "" ? null : {
271
+ return !n(e) || e.decorative !== !0 || (e.alt ?? "").trim() === "" ? null : {
272
272
  blockId: e.id,
273
273
  fix: {
274
274
  description: "Clear alt text",
@@ -276,7 +276,7 @@ var xe = {
276
276
  }
277
277
  };
278
278
  }
279
- }, De = /* @__PURE__ */ e({ default: () => Oe }), Oe = {
279
+ }, Te = /* @__PURE__ */ e({ default: () => Ee }), Ee = {
280
280
  vagueLinkText: [
281
281
  "hier klicken",
282
282
  "hier",
@@ -319,7 +319,7 @@ var xe = {
319
319
  "anschauen",
320
320
  "jetzt"
321
321
  ]
322
- }, ke = /* @__PURE__ */ e({ default: () => Ae }), Ae = {
322
+ }, De = /* @__PURE__ */ e({ default: () => Oe }), Oe = {
323
323
  vagueLinkText: [
324
324
  "click here",
325
325
  "here",
@@ -360,45 +360,45 @@ var xe = {
360
360
  "redeem",
361
361
  "watch"
362
362
  ]
363
- }, je = /* #__PURE__ */ Object.assign({
364
- "./de.ts": De,
365
- "./en.ts": ke
366
- }), Me = {};
367
- for (let e in je) {
363
+ }, ke = /* #__PURE__ */ Object.assign({
364
+ "./de.ts": Te,
365
+ "./en.ts": De
366
+ }), y = {};
367
+ for (let e in ke) {
368
368
  let t = /\.\/([^/]+)\.ts$/.exec(e);
369
369
  if (!t) continue;
370
370
  let n = t[1];
371
- n !== "index" && (Me[n] = je[e].default);
371
+ n !== "index" && (y[n] = ke[e].default);
372
372
  }
373
- function _(e) {
374
- return Ne;
373
+ function b(e) {
374
+ return Ae;
375
375
  }
376
- function v(e) {
376
+ function x(e) {
377
377
  let t = /* @__PURE__ */ new Set();
378
- for (let n of Object.values(Me)) for (let r of e(n)) t.add(r);
378
+ for (let n of Object.values(y)) for (let r of e(n)) t.add(r);
379
379
  return Array.from(t);
380
380
  }
381
- var Ne = {
382
- vagueLinkText: v((e) => e.vagueLinkText),
383
- vagueButtonLabels: v((e) => e.vagueButtonLabels),
384
- linkedImageActionHints: v((e) => e.linkedImageActionHints)
381
+ var Ae = {
382
+ vagueLinkText: x((e) => e.vagueLinkText),
383
+ vagueButtonLabels: x((e) => e.vagueButtonLabels),
384
+ linkedImageActionHints: x((e) => e.linkedImageActionHints)
385
385
  };
386
- function y(e) {
386
+ function je(e) {
387
387
  return e.toLowerCase().replace(/\s+/g, " ").replace(/^[^\p{L}\p{N}]+|[^\p{L}\p{N}]+$/gu, "").trim();
388
388
  }
389
- var Pe = {
389
+ var Me = {
390
390
  meta: {
391
391
  id: "a11y.img-linked-no-context",
392
392
  severity: "warning"
393
393
  },
394
- block(e, t, n) {
395
- if (!s(e) || e.decorative === !0 || !e.linkUrl || e.linkUrl.trim() === "") return null;
396
- let r = (e.alt ?? "").trim();
397
- if (r === "") return null;
398
- let i = r.toLocaleLowerCase().split(/[^\p{L}\p{N}]+/u).filter(Boolean), a = _(n.locale).linkedImageActionHints;
399
- return i.some((e) => a.includes(e)) ? null : { blockId: e.id };
400
- }
401
- }, Fe = /* @__PURE__ */ new Map([
394
+ block(e, t, r) {
395
+ if (!n(e) || e.decorative === !0 || !e.linkUrl || e.linkUrl.trim() === "") return null;
396
+ let i = (e.alt ?? "").trim();
397
+ if (i === "") return null;
398
+ let a = i.toLocaleLowerCase().split(/[^\p{L}\p{N}]+/u).filter(Boolean), o = b(r.locale).linkedImageActionHints;
399
+ return a.some((e) => o.includes(e)) ? null : { blockId: e.id };
400
+ }
401
+ }, Ne = /* @__PURE__ */ new Map([
402
402
  [0, 65533],
403
403
  [128, 8364],
404
404
  [130, 8218],
@@ -428,12 +428,12 @@ var Pe = {
428
428
  [158, 382],
429
429
  [159, 376]
430
430
  ]);
431
- function Ie(e) {
432
- return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : Fe.get(e) ?? e;
431
+ function Pe(e) {
432
+ return e >= 55296 && e <= 57343 || e > 1114111 ? 65533 : Ne.get(e) ?? e;
433
433
  }
434
434
  //#endregion
435
435
  //#region ../../node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/internal/decode-shared.js
436
- function b(e) {
436
+ function S(e) {
437
437
  let t = atob(e), n = t.length & -2, r = new Uint16Array(n / 2);
438
438
  for (let e = 0, i = 0; e < n; e += 2) {
439
439
  let n = t.charCodeAt(e), a = t.charCodeAt(e + 1);
@@ -443,71 +443,71 @@ function b(e) {
443
443
  }
444
444
  //#endregion
445
445
  //#region ../../node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/generated/decode-data-html.js
446
- var Le = /* #__PURE__ */ b("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg"), Re = /* #__PURE__ */ b("AAJhZ2xxBwARABMAFQBtAg0AAAAAAA8AcAAmYG8AcwAnYHQAPmB0ADxg9SFvdCJg"), x;
446
+ var Fe = /* #__PURE__ */ S("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IAAOA12J/c8iFvaxBhAAhOVGFjZGZnbG1vcHFzdHV4owOlA6kDsAO/A8IDxgPNA9ID8gP9AwEEFAQeBCAEJQRHAEphSAA7gNAA0EBjAHUAdABlADuAyQDJQIABYWl5ALYDuQO+A/Ihb24aYXIAYwA7gMoAykAtZG8AdAAWYXIAAOA12AjdcgBhAHYAZQA7gMgAyEDlIm1lbnQAoAgiAAFhcNYD2QNjAHIAEmF0AHkAUwLhAwAAAADpA20lYWxsU3F1YXJlAACg+yVlJ3J5U21hbGxTcXVhcmUAAKCrJQABZ3D2A/kDbwBuABhhZgAA4DXYPN3zImlsb26VY3UAAAFhaQYEDgRsAFSgdSppImxkZQAAoEIi7CNpYnJpdW0AoMwhAAFjaRgEGwRyAACgMCFtAACgcyphAJdjbQBsADuAywDLQAABaXApBC0E8yF0cwCgAyLvJG5lbnRpYWxFAKBHIYACY2Zpb3MAPQQ/BEMEXQRyBHkAJGRyAADgNdgJ3WwibGVkAFMCTAQAAAAAVARtJWFsbFNxdWFyZQAAoPwlZSdyeVNtYWxsU3F1YXJlAACgqiVwA2UEAABpBAAAAABtBGYAAOA12D3dwSFsbACgACLyI2llcnRyZgCgMSFjAPIAcQQABkpUYWJjZGZnb3JzdIgEiwSOBJMElwSkBKcEqwStBLIE5QTqBGMAeQADZDuAPgA+QO0hbWFkoJMD3GNyImV2ZQAeYYABZWl5AJ0EoASjBOQhaWwiYXIAYwAcYRNkbwB0ACBhcgAA4DXYCt0AoNkicABmAADgNdg+3eUiYXRlcgADRUZHTFNUvwTIBM8E1QTZBOAEcSJ1YWwATKBlIuUhc3MAoNsidSRsbEVxdWFsAACgZyJyI2VhdGVyAACgoirlIXNzAKB3IuwkYW50RXF1YWwAoH4qaSJsZGUAAKBzImMAcgAA4DXYotwAoGsiAARBYWNmaW9zdfkE/QQFBQgFCwUTBSIFKwVSIkRjeQAqZAABY3QBBQQFZQBrAMdiXmDpIXJjJGFyAACgDCFsJWJlcnRTcGFjZQAAoAsh8AEYBQAAGwVmAACgDSHpJXpvbnRhbExpbmUAoAAlAAFjdCYFKAXyABIF8iFvayZhbQBwAEQBMQU5BW8AdwBuAEgAdQBtAPAAAAFxInVhbAAAoE8iAAdFSk9hY2RmZ21ub3N0dVMFVgVZBVwFYwVtBXAFcwV6BZAFtgXFBckFzQVjAHkAFWTsIWlnMmFjAHkAAWRjAHUAdABlADuAzQDNQAABaXlnBWwFcgBjADuAzgDOQBhkbwB0ADBhcgAAoBEhcgBhAHYAZQA7gMwAzEAAoREhYXB/BYsFAAFjZ4MFhQVyACphaSNuYXJ5SQAAoEghbABpAGUA8wD6AvQBlQUAAKUFZaAsIgABZ3KaBZ4F8iFhbACgKyLzI2VjdGlvbgCgwiJpI3NpYmxlAAABQ1SsBbEFbyJtbWEAAKBjIGkibWVzAACgYiCAAWdwdAC8Bb8FwwVvAG4ALmFmAADgNdhA3WEAmWNjAHIAAKAQIWkibGRlAChh6wHSBQAA1QVjAHkABmRsADuAzwDPQIACY2Zvc3UA4QXpBe0F8gX9BQABaXnlBegFcgBjADRhGWRyAADgNdgN3XAAZgAA4DXYQd3jAfcFAAD7BXIAAOA12KXc8iFjeQhk6yFjeQRkgANISmFjZm9zAAwGDwYSBhUGHQYhBiYGYwB5ACVkYwB5AAxk8CFwYZpjAAFleRkGHAbkIWlsNmEaZHIAAOA12A7dcABmAADgNdhC3WMAcgAA4DXYptyABUpUYWNlZmxtb3N0AD0GQAZDBl4GawZkB2gHcAd0B80H2gdjAHkACWQ7gDwAPECAAmNtbnByAEwGTwZSBlUGWwb1IXRlOWHiIWRhm2NnAACg6ifsI2FjZXRyZgCgEiFyAACgniGAAWFleQBkBmcGagbyIW9uPWHkIWlsO2EbZAABZnNvBjQHdAAABUFDREZSVFVWYXKABp4GpAbGBssG3AYDByEHwQIqBwABbnKEBowGZyVsZUJyYWNrZXQAAKDoJ/Ihb3cAoZAhQlKTBpcGYQByAACg5CHpJGdodEFycm93AKDGIWUjaWxpbmcAAKAII28A9QGqBgAAsgZiJWxlQnJhY2tldAAAoOYnbgDUAbcGAAC+BmUkZVZlY3RvcgAAoGEp5SJjdG9yQqDDIWEAcgAAoFkpbCJvb3IAAKAKI2kiZ2h0AAABQVbSBtcGciJyb3cAAKCUIeUiY3RvcgCgTikAAWVy4AbwBmUAAKGjIkFW5gbrBnIicm93AACgpCHlImN0b3IAoFopaSNhbmdsZQBCorIi+wYAAAAA/wZhAHIAAKDPKXEidWFsAACgtCJwAIABRFRWAAoHEQcYB+8kd25WZWN0b3IAoFEpZSRlVmVjdG9yAACgYCnlImN0b3JCoL8hYQByAACgWCnlImN0b3JCoLwhYQByAACgUilpAGcAaAB0AGEAcgByAG8A9wDMAnMAAANFRkdMU1Q/B0cHTgdUB1gHXwfxJXVhbEdyZWF0ZXIAoNoidSRsbEVxdWFsAACgZiJyI2VhdGVyAACgdiLlIXNzAKChKuwkYW50RXF1YWwAoH0qaSJsZGUAAKByInIAAOA12A/dZaDYIuYjdGFycm93AKDaIWkiZG90AD9hgAFucHcAege1B7kHZwAAAkxSbHKCB5QHmwerB+UhZnQAAUFSiAeNB3Iicm93AACg9SfpJGdodEFycm93AKD3J+kkZ2h0QXJyb3cAoPYn5SFmdAABYXLcAqEHaQBnAGgAdABhAHIAcgBvAPcA5wJpAGcAaAB0AGEAcgByAG8A9wDuAmYAAOA12EPdZQByAAABTFK/B8YHZSRmdEFycm93AACgmSHpJGdodEFycm93AKCYIYABY2h0ANMH1QfXB/IAWgYAoLAh8iFva0FhAKBqIgAEYWNlZmlvc3XpB+wH7gf/BwMICQgOCBEIcAAAoAUpeQAcZAABZGzyB/kHaSR1bVNwYWNlAACgXyBsI2ludHJmAACgMyFyAADgNdgQ3e4jdXNQbHVzAKATInAAZgAA4DXYRN1jAPIA/gecY4AESmFjZWZvc3R1ACEIJAgoCDUIgQiFCDsKQApHCmMAeQAKZGMidXRlAENhgAFhZXkALggxCDQI8iFvbkdh5CFpbEVhHWSAAWdzdwA7CGEIfQjhInRpdmWAAU1UVgBECEwIWQhlJWRpdW1TcGFjZQAAoAsgaABpAAABY25SCFMIawBTAHAAYQBjAOUASwhlAHIAeQBUAGgAaQDuAFQI9CFlZAABR0xnCHUIcgBlAGEAdABlAHIARwByAGUAYQB0AGUA8gDrBGUAcwBzAEwAZQBzAPMA2wdMImluZQAKYHIAAOA12BHdAAJCbnB0jAiRCJkInAhyImVhawAAoGAgwiZyZWFraW5nU3BhY2WgYGYAAKAVIUOq7CqzCMIIzQgAAOcIGwkAAAAAAAAtCQAAbwkAAIcJAACdCcAJGQoAADQKAAFvdbYIvAjuI2dydWVudACgYiJwIkNhcAAAoG0ibyh1YmxlVmVydGljYWxCYXIAAKAmIoABbHF4ANII1wjhCOUibWVudACgCSL1IWFsVKBgImkibGRlAADgQiI4A2kic3RzAACgBCJyI2VhdGVyAACjbyJFRkdMU1T1CPoIAgkJCQ0JFQlxInVhbAAAoHEidSRsbEVxdWFsAADgZyI4A3IjZWF0ZXIAAOBrIjgD5SFzcwCgeSLsJGFudEVxdWFsAOB+KjgDaSJsZGUAAKB1IvUhbXBEASAJJwnvI3duSHVtcADgTiI4A3EidWFsAADgTyI4A2UAAAFmczEJRgn0JFRyaWFuZ2xlQqLqIj0JAAAAAEIJYQByAADgzyk4A3EidWFsAACg7CJzAICibiJFR0xTVABRCVYJXAlhCWkJcSJ1YWwAAKBwInIjZWF0ZXIAAKB4IuUhc3MA4GoiOAPsJGFudEVxdWFsAOB9KjgDaSJsZGUAAKB0IuUic3RlZAABR0x1CX8J8iZlYXRlckdyZWF0ZXIA4KIqOAPlI3NzTGVzcwDgoSo4A/IjZWNlZGVzAKGAIkVTjwmVCXEidWFsAADgryo4A+wkYW50RXF1YWwAoOAiAAFlaaAJqQl2JmVyc2VFbGVtZW50AACgDCLnJWh0VHJpYW5nbGVCousitgkAAAAAuwlhAHIAAODQKTgDcSJ1YWwAAKDtIgABcXXDCeAJdSNhcmVTdQAAAWJwywnVCfMhZXRF4I8iOANxInVhbAAAoOIi5SJyc2V0ReCQIjgDcSJ1YWwAAKDjIoABYmNwAOYJ8AkNCvMhZXRF4IIi0iBxInVhbAAAoIgi4yJlZWRzgKGBIkVTVAD6CQAKBwpxInVhbAAA4LAqOAPsJGFudEVxdWFsAKDhImkibGRlAADgfyI4A+UicnNldEXggyLSIHEidWFsAACgiSJpImxkZQCAoUEiRUZUACIKJwouCnEidWFsAACgRCJ1JGxsRXF1YWwAAKBHImkibGRlAACgSSJlJXJ0aWNhbEJhcgAAoCQiYwByAADgNdip3GkAbABkAGUAO4DRANFAnWMAB0VhY2RmZ21vcHJzdHV2XgphCmgKcgp2CnoKgQqRCpYKqwqtCrsKyArNCuwhaWdSYWMAdQB0AGUAO4DTANNAAAFpeWwKcQpyAGMAO4DUANRAHmRiImxhYwBQYXIAAOA12BLdcgBhAHYAZQA7gNIA0kCAAWFlaQCHCooKjQpjAHIATGFnAGEAqWNjInJvbgCfY3AAZgAA4DXYRt3lI25DdXJseQABRFGeCqYKbyV1YmxlUXVvdGUAAKAcIHUib3RlAACgGCAAoFQqAAFjbLEKtQpyAADgNdiq3GEAcwBoADuA2ADYQGkAbAHACsUKZABlADuA1QDVQGUAcwAAoDcqbQBsADuA1gDWQGUAcgAAAUJQ0wrmCgABYXLXCtoKcgAAoD4gYQBjAAABZWvgCuIKAKDeI2UAdAAAoLQjYSVyZW50aGVzaXMAAKDcI4AEYWNmaGlsb3JzAP0KAwsFCwkLCwsMCxELIwtaC3IjdGlhbEQAAKACInkAH2RyAADgNdgT3WkApmOgY/Ujc01pbnVzsWAAAWlwFQsgC24AYwBhAHIAZQBwAGwAYQBuAOUACgVmAACgGSGAobsqZWlvACoLRQtJC+MiZWRlc4CheiJFU1QANAs5C0ALcSJ1YWwAAKCvKuwkYW50RXF1YWwAoHwiaSJsZGUAAKB+Im0AZQAAoDMgAAFkcE0LUQv1IWN0AKAPIm8jcnRpb24AYaA3ImwAAKAdIgABY2leC2ILcgAA4DXYq9yoYwACVWZvc2oLbwtzC3cLTwBUADuAIgAiQHIAAOA12BTdcABmAACgGiFjAHIAAOA12KzcAAZCRWFjZWZoaW9yc3WPC5MLlwupC7YL2AvbC90LhQyTDJoMowzhIXJyAKAQKUcAO4CuAK5AgAFjbnIAnQugC6ML9SF0ZVRhZwAAoOsncgB0oKAhbAAAoBYpgAFhZXkArwuyC7UL8iFvblhh5CFpbFZhIGR2oBwhZSJyc2UAAAFFVb8LzwsAAWxxwwvIC+UibWVudACgCyL1JGlsaWJyaXVtAKDLIXAmRXF1aWxpYnJpdW0AAKBvKXIAAKAcIW8AoWPnIWh0AARBQ0RGVFVWYewLCgwQDDIMNwxeDHwM9gIAAW5y8Av4C2clbGVCcmFja2V0AACg6SfyIW93AKGSIUJM/wsDDGEAcgAAoOUhZSRmdEFycm93AACgxCFlI2lsaW5nAACgCSNvAPUBFgwAAB4MYiVsZUJyYWNrZXQAAKDnJ24A1AEjDAAAKgxlJGVWZWN0b3IAAKBdKeUiY3RvckKgwiFhAHIAAKBVKWwib29yAACgCyMAAWVyOwxLDGUAAKGiIkFWQQxGDHIicm93AACgpiHlImN0b3IAoFspaSNhbmdsZQBCorMiVgwAAAAAWgxhAHIAAKDQKXEidWFsAACgtSJwAIABRFRWAGUMbAxzDO8kd25WZWN0b3IAoE8pZSRlVmVjdG9yAACgXCnlImN0b3JCoL4hYQByAACgVCnlImN0b3JCoMAhYQByAACgUykAAXB1iQyMDGYAAKAdIe4kZEltcGxpZXMAoHAp6SRnaHRhcnJvdwCg2yEAAWNongyhDHIAAKAbIQCgsSHsJGVEZWxheWVkAKD0KYAGSE9hY2ZoaW1vcXN0dQC/DMgMzAzQDOIM5gwKDQ0NFA0ZDU8NVA1YDQABQ2PDDMYMyCFjeSlkeQAoZEYiVGN5ACxkYyJ1dGUAWmEAorwqYWVpedgM2wzeDOEM8iFvbmBh5CFpbF5hcgBjAFxhIWRyAADgNdgW3e8hcnQAAkRMUlXvDPYM/QwEDW8kd25BcnJvdwAAoJMhZSRmdEFycm93AACgkCHpJGdodEFycm93AKCSIXAjQXJyb3cAAKCRIechbWGjY+EkbGxDaXJjbGUAoBgicABmAADgNdhK3XICHw0AAAAAIg10AACgGiLhIXJlgKGhJUlTVQAqDTINSg3uJXRlcnNlY3Rpb24AoJMidQAAAWJwNw1ADfMhZXRFoI8icSJ1YWwAAKCRIuUicnNldEWgkCJxInVhbAAAoJIibiJpb24AAKCUImMAcgAA4DXYrtxhAHIAAKDGIgACYmNtcF8Nag2ODZANc6DQImUAdABFoNAicSJ1YWwAAKCGIgABY2huDYkNZSJlZHMAgKF7IkVTVAB4DX0NhA1xInVhbAAAoLAq7CRhbnRFcXVhbACgfSJpImxkZQAAoH8iVABoAGEA9ADHCwCgESIAodEiZXOVDZ8NciJzZXQARaCDInEidWFsAACghyJlAHQAAKDRIoAFSFJTYWNmaGlvcnMAtQ27Db8NyA3ODdsN3w3+DRgOHQ4jDk8AUgBOADuA3gDeQMEhREUAoCIhAAFIY8MNxg1jAHkAC2R5ACZkAAFidcwNzQ0JYKRjgAFhZXkA1A3XDdoN8iFvbmRh5CFpbGJhImRyAADgNdgX3QABZWnjDe4N8gHoDQAA7Q3lImZvcmUAoDQiYQCYYwABY27yDfkNayNTcGFjZQAA4F8gCiDTInBhY2UAoAkg7CFkZYChPCJFRlQABw4MDhMOcSJ1YWwAAKBDInUkbGxFcXVhbAAAoEUiaSJsZGUAAKBIInAAZgAA4DXYS93pI3BsZURvdACg2yAAAWN0Jw4rDnIAAOA12K/c8iFva2Zh4QpFDlYOYA5qDgAAbg5yDgAAAAAAAAAAAAB5DnwOqA6zDgAADg8RDxYPGg8AAWNySA5ODnUAdABlADuA2gDaQHIAb6CfIeMhaXIAoEkpcgDjAVsOAABdDnkADmR2AGUAbGEAAWl5Yw5oDnIAYwA7gNsA20AjZGIibGFjAHBhcgAA4DXYGN1yAGEAdgBlADuA2QDZQOEhY3JqYQABZGl/Dp8OZQByAAABQlCFDpcOAAFhcokOiw5yAF9gYQBjAAABZWuRDpMOAKDfI2UAdAAAoLUjYSVyZW50aGVzaXMAAKDdI28AbgBQoMMi7CF1cwCgjiIAAWdwqw6uDm8AbgByYWYAAOA12EzdAARBREVUYWRwc78O0g7ZDuEOBQPqDvMOBw9yInJvdwDCoZEhyA4AAMwOYQByAACgEilvJHduQXJyb3cAAKDFIW8kd25BcnJvdwAAoJUhcSV1aWxpYnJpdW0AAKBuKWUAZQBBoKUiciJyb3cAAKClIW8AdwBuAGEAcgByAG8A9wAQA2UAcgAAAUxS+Q4AD2UkZnRBcnJvdwAAoJYh6SRnaHRBcnJvdwCglyFpAGyg0gNvAG4ApWPpIW5nbmFjAHIAAOA12LDcaSJsZGUAaGFtAGwAO4DcANxAgAREYmNkZWZvc3YALQ8xDzUPNw89D3IPdg97D4AP4SFzaACgqyJhAHIAAKDrKnkAEmThIXNobKCpIgCg5ioAAWVyQQ9DDwCgwSKAAWJ0eQBJD00Paw9hAHIAAKAWIGmgFiDjIWFsAAJCTFNUWA9cD18PZg9hAHIAAKAjIukhbmV8YGUkcGFyYXRvcgAAoFgnaSJsZGUAAKBAItQkaGluU3BhY2UAoAogcgAA4DXYGd1wAGYAAOA12E3dYwByAADgNdix3GQiYXNoAACgqiKAAmNlZm9zAI4PkQ+VD5kPng/pIXJjdGHkIWdlAKDAInIAAOA12BrdcABmAADgNdhO3WMAcgAA4DXYstwAAmZpb3OqD64Prw+0D3IAAOA12BvdnmNwAGYAAOA12E/dYwByAADgNdiz3IAEQUlVYWNmb3N1AMgPyw/OD9EP2A/gD+QP6Q/uD2MAeQAvZGMAeQAHZGMAeQAuZGMAdQB0AGUAO4DdAN1AAAFpedwP3w9yAGMAdmErZHIAAOA12BzdcABmAADgNdhQ3WMAcgAA4DXYtNxtAGwAeGEABEhhY2RlZm9z/g8BEAUQDRAQEB0QIBAkEGMAeQAWZGMidXRlAHlhAAFheQkQDBDyIW9ufWEXZG8AdAB7YfIBFRAAABwQbwBXAGkAZAB0AOgAVAhhAJZjcgAAoCghcABmAACgJCFjAHIAAOA12LXc4QtCEEkQTRAAAGcQbRByEAAAAAAAAAAAeRCKEJcQ8hD9EAAAGxEhETIROREAAD4RYwB1AHQAZQA7gOEA4UByImV2ZQADYYCiPiJFZGl1eQBWEFkQWxBgEGUQAOA+IjMDAKA/InIAYwA7gOIA4kB0AGUAO4C0ALRAMGRsAGkAZwA7gOYA5kByoGEgAOA12B7dcgBhAHYAZQA7gOAA4EAAAWVwfBCGEAABZnCAEIQQ8yF5bQCgNSHoAIMQaABhALFjAAFhcI0QWwAAAWNskRCTEHIAAWFnAACgPypkApwQAAAAALEQAKInImFkc3ajEKcQqRCuEG4AZAAAoFUqAKBcKmwib3BlAACgWCoAoFoqAKMgImVsbXJzersQvRDAEN0Q5RDtEACgpCllAACgICJzAGQAYaAhImEEzhDQENIQ1BDWENgQ2hDcEACgqCkAoKkpAKCqKQCgqykAoKwpAKCtKQCgrikAoK8pdAB2oB8iYgBkoL4iAKCdKQABcHTpEOwQaAAAoCIixWDhIXJyAKB8IwABZ3D1EPgQbwBuAAVhZgAA4DXYUt0Ao0giRWFlaW9wBxEJEQ0RDxESERQRAKBwKuMhaXIAoG8qAKBKImQAAKBLInMAJ2DyIW94ZaBIIvEADhFpAG4AZwA7gOUA5UCAAWN0eQAmESoRKxFyAADgNdi23CpgbQBwAGWgSCLxAPgBaQBsAGQAZQA7gOMA40BtAGwAO4DkAORAAAFjaUERRxFvAG4AaQBuAPQA6AFuAHQAAKARKgAITmFiY2RlZmlrbG5vcHJzdWQRaBGXEZ8RpxGrEdIR1hErEjASexKKEn0RThNbE3oTbwB0AACg7SoAAWNybBGJEWsAAAJjZXBzdBF4EX0RghHvIW5nAKBMInAjc2lsb24A9mNyImltZQAAoDUgaQBtAGWgPSJxAACgzSJ2AY0RkRFlAGUAAKC9ImUAZABnoAUjZQAAoAUjcgBrAHSgtSPiIXJrAKC2IwABb3mjEaYRbgDnAHcRMWTxIXVvAKAeIIACY21wcnQAtBG5Eb4RwRHFEeEhdXPloDUi5ABwInR5dgAAoLApcwDpAH0RbgBvAPUA6gCAAWFodwDLEcwRzhGyYwCgNiHlIWVuAKBsInIAAOA12B/dZwCAA2Nvc3R1dncA4xHyEQUSEhIhEiYSKRKAAWFpdQDpEesR7xHwAKMFcgBjAACg7yVwAACgwyKAAWRwdAD4EfwRABJvAHQAAKAAKuwhdXMAoAEqaSJtZXMAAKACKnECCxIAAAAADxLjIXVwAKAGKmEAcgAAoAUm8iNpYW5nbGUAAWR1GhIeEu8hd24AoL0lcAAAoLMlcCJsdXMAAKAEKmUA5QBCD+UAkg9hInJvdwAAoA0pgAFha28ANhJoEncSAAFjbjoSZRJrAIABbHN0AEESRxJNEm8jemVuZ2UAAKDrKXEAdQBhAHIA5QBcBPIjaWFuZ2xlgKG0JWRscgBYElwSYBLvIXduAKC+JeUhZnQAoMIlaSJnaHQAAKC4JWsAAKAjJLEBbRIAAHUSsgFxEgAAcxIAoJIlAKCRJTQAAKCTJWMAawAAoIglAAFlb38ShxJx4D0A5SD1IWl2AOBhIuUgdAAAoBAjAAJwdHd4kRKVEpsSnxJmAADgNdhT3XSgpSJvAG0AAKClIvQhaWUAoMgiAAZESFVWYmRobXB0dXayEsES0RLgEvcS+xIKExoTHxMjEygTNxMAAkxSbHK5ErsSvRK/EgCgVyUAoFQlAKBWJQCgUyUAolAlRFVkdckSyxLNEs8SAKBmJQCgaSUAoGQlAKBnJQACTFJsctgS2hLcEt4SAKBdJQCgWiUAoFwlAKBZJQCjUSVITFJobHLrEu0S7xLxEvMS9RIAoGwlAKBjJQCgYCUAoGslAKBiJQCgXyVvAHgAAKDJKQACTFJscgITBBMGEwgTAKBVJQCgUiUAoBAlAKAMJQCiACVEVWR1EhMUExYTGBMAoGUlAKBoJQCgLCUAoDQlaSJudXMAAKCfIuwhdXMAoJ4iaSJtZXMAAKCgIgACTFJsci8TMRMzEzUTAKBbJQCgWCUAoBglAKAUJQCjAiVITFJobHJCE0QTRhNIE0oTTBMAoGolAKBhJQCgXiUAoDwlAKAkJQCgHCUAAWV2UhNVE3YA5QD5AGIAYQByADuApgCmQAACY2Vpb2ITZhNqE24TcgAA4DXYt9xtAGkAAKBPIG0A5aA9IogRbAAAoVwAYmh0E3YTAKDFKfMhdWIAoMgnbAF+E4QTbABloCIgdAAAoCIgcAAAoU4iRWWJE4sTAKCuKvGgTyI8BeEMqRMAAN8TABQDFB8UAAAjFDQUAAAAAIUUAAAAAI0UAAAAANcU4xT3FPsUAACIFQAAlhWAAWNwcgCuE7ET1RP1IXRlB2GAoikiYWJjZHMAuxO/E8QTzhPSE24AZAAAoEQqciJjdXAAAKBJKgABYXXIE8sTcAAAoEsqcAAAoEcqbwB0AACgQCoA4CkiAP4AAWVv2RPcE3QAAKBBIO4ABAUAAmFlaXXlE+8T9RP4E/AB6hMAAO0TcwAAoE0qbwBuAA1hZABpAGwAO4DnAOdAcgBjAAlhcABzAHOgTCptAACgUCpvAHQAC2GAAWRtbgAIFA0UEhRpAGwAO4C4ALhAcCJ0eXYAAKCyKXQAAIGiADtlGBQZFKJAcgBkAG8A9ABiAXIAAOA12CDdgAFjZWkAKBQqFDIUeQBHZGMAawBtoBMn4SFyawCgEyfHY3IAAKPLJUVjZWZtcz8UQRRHFHcUfBSAFACgwykAocYCZWxGFEkUcQAAoFciZQBhAlAUAAAAAGAUciJyb3cAAAFsclYUWhTlIWZ0AKC6IWkiZ2h0AACguyGAAlJTYWNkAGgUaRRrFG8UcxSuYACgyCRzAHQAAKCbIukhcmMAoJoi4SFzaACgnSJuImludAAAoBAqaQBkAACg7yrjIWlyAKDCKfUhYnN1oGMmaQB0AACgYybsApMUmhS2FAAAwxRvAG4AZaA6APGgVCKrAG0CnxQAAAAAoxRhAHSgLABAYAChASJmbKcUqRTuABMNZQAAAW14rhSyFOUhbnQAoAEiZQDzANIB5wG6FAAAwBRkoEUibwB0AACgbSpuAPQAzAGAAWZyeQDIFMsUzhQA4DXYVN1vAOQA1wEAgakAO3MeAdMUcgAAoBchAAFhb9oU3hRyAHIAAKC1IXMAcwAAoBcnAAFjdeYU6hRyAADgNdi43AABYnDuFPIUZaDPKgCg0SploNAqAKDSKuQhb3QAoO8igANkZWxwcnZ3AAYVEBUbFSEVRBVlFYQV4SFycgABbHIMFQ4VAKA4KQCgNSlwAhYVAAAAABkVcgAAoN4iYwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg"), Ie = /* #__PURE__ */ S("AAJhZ2xxBwARABMAFQBtAg0AAAAAAA8AcAAmYG8AcwAnYHQAPmB0ADxg9SFvdCJg"), C;
447
447
  (function(e) {
448
448
  e[e.VALUE_LENGTH = 49152] = "VALUE_LENGTH", e[e.FLAG13 = 8192] = "FLAG13", e[e.BRANCH_LENGTH = 8064] = "BRANCH_LENGTH", e[e.JUMP_TABLE = 127] = "JUMP_TABLE";
449
- })(x ||= {});
449
+ })(C ||= {});
450
450
  //#endregion
451
451
  //#region ../../node_modules/.pnpm/entities@8.0.0/node_modules/entities/dist/decode.js
452
- var S;
452
+ var w;
453
453
  (function(e) {
454
454
  e[e.NUM = 35] = "NUM", e[e.SEMI = 59] = "SEMI", e[e.EQUALS = 61] = "EQUALS", e[e.ZERO = 48] = "ZERO", e[e.NINE = 57] = "NINE", e[e.LOWER_A = 97] = "LOWER_A", e[e.LOWER_F = 102] = "LOWER_F", e[e.LOWER_X = 120] = "LOWER_X", e[e.LOWER_Z = 122] = "LOWER_Z", e[e.UPPER_A = 65] = "UPPER_A", e[e.UPPER_F = 70] = "UPPER_F", e[e.UPPER_Z = 90] = "UPPER_Z";
455
- })(S ||= {});
456
- var ze = 32;
457
- function C(e) {
458
- return e >= S.ZERO && e <= S.NINE;
455
+ })(w ||= {});
456
+ var Le = 32;
457
+ function T(e) {
458
+ return e >= w.ZERO && e <= w.NINE;
459
459
  }
460
- function Be(e) {
461
- return e >= S.UPPER_A && e <= S.UPPER_F || e >= S.LOWER_A && e <= S.LOWER_F;
460
+ function Re(e) {
461
+ return e >= w.UPPER_A && e <= w.UPPER_F || e >= w.LOWER_A && e <= w.LOWER_F;
462
462
  }
463
- function Ve(e) {
464
- return e >= S.UPPER_A && e <= S.UPPER_Z || e >= S.LOWER_A && e <= S.LOWER_Z || C(e);
463
+ function ze(e) {
464
+ return e >= w.UPPER_A && e <= w.UPPER_Z || e >= w.LOWER_A && e <= w.LOWER_Z || T(e);
465
465
  }
466
- function He(e) {
467
- return e === S.EQUALS || Ve(e);
466
+ function Be(e) {
467
+ return e === w.EQUALS || ze(e);
468
468
  }
469
- var w;
469
+ var E;
470
470
  (function(e) {
471
471
  e[e.EntityStart = 0] = "EntityStart", e[e.NumericStart = 1] = "NumericStart", e[e.NumericDecimal = 2] = "NumericDecimal", e[e.NumericHex = 3] = "NumericHex", e[e.NamedEntity = 4] = "NamedEntity";
472
- })(w ||= {});
473
- var T;
472
+ })(E ||= {});
473
+ var D;
474
474
  (function(e) {
475
475
  e[e.Legacy = 0] = "Legacy", e[e.Strict = 1] = "Strict", e[e.Attribute = 2] = "Attribute";
476
- })(T ||= {});
477
- var Ue = class {
476
+ })(D ||= {});
477
+ var Ve = class {
478
478
  decodeTree;
479
479
  emitCodePoint;
480
480
  errors;
481
481
  constructor(e, t, n) {
482
482
  this.decodeTree = e, this.emitCodePoint = t, this.errors = n;
483
483
  }
484
- state = w.EntityStart;
484
+ state = E.EntityStart;
485
485
  consumed = 1;
486
486
  result = 0;
487
487
  treeIndex = 0;
488
488
  excess = 1;
489
- decodeMode = T.Strict;
489
+ decodeMode = D.Strict;
490
490
  runConsumed = 0;
491
491
  startEntity(e) {
492
- this.decodeMode = e, this.state = w.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1, this.runConsumed = 0;
492
+ this.decodeMode = e, this.state = E.EntityStart, this.result = 0, this.treeIndex = 0, this.excess = 1, this.consumed = 1, this.runConsumed = 0;
493
493
  }
494
494
  write(e, t) {
495
495
  switch (this.state) {
496
- case w.EntityStart: return e.charCodeAt(t) === S.NUM ? (this.state = w.NumericStart, this.consumed += 1, this.stateNumericStart(e, t + 1)) : (this.state = w.NamedEntity, this.stateNamedEntity(e, t));
497
- case w.NumericStart: return this.stateNumericStart(e, t);
498
- case w.NumericDecimal: return this.stateNumericDecimal(e, t);
499
- case w.NumericHex: return this.stateNumericHex(e, t);
500
- case w.NamedEntity: return this.stateNamedEntity(e, t);
496
+ case E.EntityStart: return e.charCodeAt(t) === w.NUM ? (this.state = E.NumericStart, this.consumed += 1, this.stateNumericStart(e, t + 1)) : (this.state = E.NamedEntity, this.stateNamedEntity(e, t));
497
+ case E.NumericStart: return this.stateNumericStart(e, t);
498
+ case E.NumericDecimal: return this.stateNumericDecimal(e, t);
499
+ case E.NumericHex: return this.stateNumericHex(e, t);
500
+ case E.NamedEntity: return this.stateNamedEntity(e, t);
501
501
  }
502
502
  }
503
503
  stateNumericStart(e, t) {
504
- return t >= e.length ? -1 : (e.charCodeAt(t) | ze) === S.LOWER_X ? (this.state = w.NumericHex, this.consumed += 1, this.stateNumericHex(e, t + 1)) : (this.state = w.NumericDecimal, this.stateNumericDecimal(e, t));
504
+ return t >= e.length ? -1 : (e.charCodeAt(t) | Le) === w.LOWER_X ? (this.state = E.NumericHex, this.consumed += 1, this.stateNumericHex(e, t + 1)) : (this.state = E.NumericDecimal, this.stateNumericDecimal(e, t));
505
505
  }
506
506
  stateNumericHex(e, t) {
507
507
  for (; t < e.length;) {
508
508
  let n = e.charCodeAt(t);
509
- if (C(n) || Be(n)) {
510
- let e = n <= S.NINE ? n - S.ZERO : (n | ze) - S.LOWER_A + 10;
509
+ if (T(n) || Re(n)) {
510
+ let e = n <= w.NINE ? n - w.ZERO : (n | Le) - w.LOWER_A + 10;
511
511
  this.result = this.result * 16 + e, this.consumed++, t++;
512
512
  } else return this.emitNumericEntity(n, 3);
513
513
  }
@@ -516,24 +516,24 @@ var Ue = class {
516
516
  stateNumericDecimal(e, t) {
517
517
  for (; t < e.length;) {
518
518
  let n = e.charCodeAt(t);
519
- if (C(n)) this.result = this.result * 10 + (n - S.ZERO), this.consumed++, t++;
519
+ if (T(n)) this.result = this.result * 10 + (n - w.ZERO), this.consumed++, t++;
520
520
  else return this.emitNumericEntity(n, 2);
521
521
  }
522
522
  return -1;
523
523
  }
524
524
  emitNumericEntity(e, t) {
525
525
  if (this.consumed <= t) return this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
526
- if (e === S.SEMI) this.consumed += 1;
527
- else if (this.decodeMode === T.Strict) return 0;
528
- return this.emitCodePoint(Ie(this.result), this.consumed), this.errors && (e !== S.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed;
526
+ if (e === w.SEMI) this.consumed += 1;
527
+ else if (this.decodeMode === D.Strict) return 0;
528
+ return this.emitCodePoint(Pe(this.result), this.consumed), this.errors && (e !== w.SEMI && this.errors.missingSemicolonAfterCharacterReference(), this.errors.validateNumericCharacterReference(this.result)), this.consumed;
529
529
  }
530
530
  stateNamedEntity(e, t) {
531
- let { decodeTree: n } = this, r = n[this.treeIndex], i = (r & x.VALUE_LENGTH) >> 14;
531
+ let { decodeTree: n } = this, r = n[this.treeIndex], i = (r & C.VALUE_LENGTH) >> 14;
532
532
  for (; t < e.length;) {
533
- if (i === 0 && (r & x.FLAG13) !== 0) {
534
- let a = (r & x.BRANCH_LENGTH) >> 7;
533
+ if (i === 0 && (r & C.FLAG13) !== 0) {
534
+ let a = (r & C.BRANCH_LENGTH) >> 7;
535
535
  if (this.runConsumed === 0) {
536
- let n = r & x.JUMP_TABLE;
536
+ let n = r & C.JUMP_TABLE;
537
537
  if (e.charCodeAt(t) !== n) return this.result === 0 ? 0 : this.emitNotTerminatedNamedEntity();
538
538
  t++, this.excess++, this.runConsumed++;
539
539
  }
@@ -543,40 +543,40 @@ var Ue = class {
543
543
  if (e.charCodeAt(t) !== a) return this.runConsumed = 0, this.result === 0 ? 0 : this.emitNotTerminatedNamedEntity();
544
544
  t++, this.excess++, this.runConsumed++;
545
545
  }
546
- this.runConsumed = 0, this.treeIndex += 1 + (a >> 1), r = n[this.treeIndex], i = (r & x.VALUE_LENGTH) >> 14;
546
+ this.runConsumed = 0, this.treeIndex += 1 + (a >> 1), r = n[this.treeIndex], i = (r & C.VALUE_LENGTH) >> 14;
547
547
  }
548
548
  if (t >= e.length) break;
549
549
  let a = e.charCodeAt(t);
550
- if (a === S.SEMI && i !== 0 && (r & x.FLAG13) !== 0) return this.emitNamedEntityData(this.treeIndex, i, this.consumed + this.excess);
551
- if (this.treeIndex = We(n, r, this.treeIndex + Math.max(1, i), a), this.treeIndex < 0) return this.result === 0 || this.decodeMode === T.Attribute && (i === 0 || He(a)) ? 0 : this.emitNotTerminatedNamedEntity();
552
- if (r = n[this.treeIndex], i = (r & x.VALUE_LENGTH) >> 14, i !== 0) {
553
- if (a === S.SEMI) return this.emitNamedEntityData(this.treeIndex, i, this.consumed + this.excess);
554
- this.decodeMode !== T.Strict && (r & x.FLAG13) === 0 && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0);
550
+ if (a === w.SEMI && i !== 0 && (r & C.FLAG13) !== 0) return this.emitNamedEntityData(this.treeIndex, i, this.consumed + this.excess);
551
+ if (this.treeIndex = He(n, r, this.treeIndex + Math.max(1, i), a), this.treeIndex < 0) return this.result === 0 || this.decodeMode === D.Attribute && (i === 0 || Be(a)) ? 0 : this.emitNotTerminatedNamedEntity();
552
+ if (r = n[this.treeIndex], i = (r & C.VALUE_LENGTH) >> 14, i !== 0) {
553
+ if (a === w.SEMI) return this.emitNamedEntityData(this.treeIndex, i, this.consumed + this.excess);
554
+ this.decodeMode !== D.Strict && (r & C.FLAG13) === 0 && (this.result = this.treeIndex, this.consumed += this.excess, this.excess = 0);
555
555
  }
556
556
  t++, this.excess++;
557
557
  }
558
558
  return -1;
559
559
  }
560
560
  emitNotTerminatedNamedEntity() {
561
- let { result: e, decodeTree: t } = this, n = (t[e] & x.VALUE_LENGTH) >> 14;
561
+ let { result: e, decodeTree: t } = this, n = (t[e] & C.VALUE_LENGTH) >> 14;
562
562
  return this.emitNamedEntityData(e, n, this.consumed), this.errors?.missingSemicolonAfterCharacterReference(), this.consumed;
563
563
  }
564
564
  emitNamedEntityData(e, t, n) {
565
565
  let { decodeTree: r } = this;
566
- return this.emitCodePoint(t === 1 ? r[e] & ~(x.VALUE_LENGTH | x.FLAG13) : r[e + 1], n), t === 3 && this.emitCodePoint(r[e + 2], n), n;
566
+ return this.emitCodePoint(t === 1 ? r[e] & ~(C.VALUE_LENGTH | C.FLAG13) : r[e + 1], n), t === 3 && this.emitCodePoint(r[e + 2], n), n;
567
567
  }
568
568
  end() {
569
569
  switch (this.state) {
570
- case w.NamedEntity: return this.result !== 0 && (this.decodeMode !== T.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
571
- case w.NumericDecimal: return this.emitNumericEntity(0, 2);
572
- case w.NumericHex: return this.emitNumericEntity(0, 3);
573
- case w.NumericStart: return this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
574
- case w.EntityStart: return 0;
570
+ case E.NamedEntity: return this.result !== 0 && (this.decodeMode !== D.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0;
571
+ case E.NumericDecimal: return this.emitNumericEntity(0, 2);
572
+ case E.NumericHex: return this.emitNumericEntity(0, 3);
573
+ case E.NumericStart: return this.errors?.absenceOfDigitsInNumericCharacterReference(this.consumed), 0;
574
+ case E.EntityStart: return 0;
575
575
  }
576
576
  }
577
577
  };
578
- function We(e, t, n, r) {
579
- let i = (t & x.BRANCH_LENGTH) >> 7, a = t & x.JUMP_TABLE;
578
+ function He(e, t, n, r) {
579
+ let i = (t & C.BRANCH_LENGTH) >> 7, a = t & C.JUMP_TABLE;
580
580
  if (i === 0) return a !== 0 && r === a ? n : -1;
581
581
  if (a) {
582
582
  let t = r - a;
@@ -593,28 +593,28 @@ function We(e, t, n, r) {
593
593
  }
594
594
  //#endregion
595
595
  //#region ../../node_modules/.pnpm/htmlparser2@12.0.0/node_modules/htmlparser2/dist/Tokenizer.js
596
- var E;
596
+ var O;
597
597
  (function(e) {
598
598
  e[e.Tab = 9] = "Tab", e[e.NewLine = 10] = "NewLine", e[e.FormFeed = 12] = "FormFeed", e[e.CarriageReturn = 13] = "CarriageReturn", e[e.Space = 32] = "Space", e[e.ExclamationMark = 33] = "ExclamationMark", e[e.Number = 35] = "Number", e[e.Amp = 38] = "Amp", e[e.SingleQuote = 39] = "SingleQuote", e[e.DoubleQuote = 34] = "DoubleQuote", e[e.Dash = 45] = "Dash", e[e.Slash = 47] = "Slash", e[e.Zero = 48] = "Zero", e[e.Nine = 57] = "Nine", e[e.Semi = 59] = "Semi", e[e.Lt = 60] = "Lt", e[e.Eq = 61] = "Eq", e[e.Gt = 62] = "Gt", e[e.Questionmark = 63] = "Questionmark", e[e.UpperA = 65] = "UpperA", e[e.LowerA = 97] = "LowerA", e[e.UpperF = 70] = "UpperF", e[e.LowerF = 102] = "LowerF", e[e.UpperZ = 90] = "UpperZ", e[e.LowerZ = 122] = "LowerZ", e[e.LowerX = 120] = "LowerX", e[e.OpeningSquareBracket = 91] = "OpeningSquareBracket";
599
- })(E ||= {});
600
- var D;
599
+ })(O ||= {});
600
+ var k;
601
601
  (function(e) {
602
602
  e[e.Text = 1] = "Text", e[e.BeforeTagName = 2] = "BeforeTagName", e[e.InTagName = 3] = "InTagName", e[e.InSelfClosingTag = 4] = "InSelfClosingTag", e[e.BeforeClosingTagName = 5] = "BeforeClosingTagName", e[e.InClosingTagName = 6] = "InClosingTagName", e[e.AfterClosingTagName = 7] = "AfterClosingTagName", e[e.BeforeAttributeName = 8] = "BeforeAttributeName", e[e.InAttributeName = 9] = "InAttributeName", e[e.AfterAttributeName = 10] = "AfterAttributeName", e[e.BeforeAttributeValue = 11] = "BeforeAttributeValue", e[e.InAttributeValueDq = 12] = "InAttributeValueDq", e[e.InAttributeValueSq = 13] = "InAttributeValueSq", e[e.InAttributeValueNq = 14] = "InAttributeValueNq", e[e.BeforeDeclaration = 15] = "BeforeDeclaration", e[e.InDeclaration = 16] = "InDeclaration", e[e.InProcessingInstruction = 17] = "InProcessingInstruction", e[e.BeforeComment = 18] = "BeforeComment", e[e.CDATASequence = 19] = "CDATASequence", e[e.DeclarationSequence = 20] = "DeclarationSequence", e[e.InSpecialComment = 21] = "InSpecialComment", e[e.InCommentLike = 22] = "InCommentLike", e[e.SpecialStartSequence = 23] = "SpecialStartSequence", e[e.InSpecialTag = 24] = "InSpecialTag", e[e.InPlainText = 25] = "InPlainText", e[e.InEntity = 26] = "InEntity";
603
- })(D ||= {});
604
- function O(e) {
605
- return e === E.Space || e === E.NewLine || e === E.Tab || e === E.FormFeed || e === E.CarriageReturn;
603
+ })(k ||= {});
604
+ function A(e) {
605
+ return e === O.Space || e === O.NewLine || e === O.Tab || e === O.FormFeed || e === O.CarriageReturn;
606
606
  }
607
- function k(e) {
608
- return e === E.Slash || e === E.Gt || O(e);
607
+ function j(e) {
608
+ return e === O.Slash || e === O.Gt || A(e);
609
609
  }
610
- function Ge(e) {
611
- return e >= E.LowerA && e <= E.LowerZ || e >= E.UpperA && e <= E.UpperZ;
610
+ function Ue(e) {
611
+ return e >= O.LowerA && e <= O.LowerZ || e >= O.UpperA && e <= O.UpperZ;
612
612
  }
613
- var A;
613
+ var M;
614
614
  (function(e) {
615
615
  e[e.NoValue = 0] = "NoValue", e[e.Unquoted = 1] = "Unquoted", e[e.Single = 2] = "Single", e[e.Double = 3] = "Double";
616
- })(A ||= {});
617
- var j = {
616
+ })(M ||= {});
617
+ var N = {
618
618
  Empty: /* @__PURE__ */ new Uint8Array(),
619
619
  Cdata: new Uint8Array([
620
620
  67,
@@ -737,21 +737,21 @@ var j = {
737
737
  109,
738
738
  112
739
739
  ])
740
- }, Ke = /* @__PURE__ */ new Map([
741
- [j.IframeEnd[2], j.IframeEnd],
742
- [j.NoembedEnd[2], j.NoembedEnd],
743
- [j.Plaintext[2], j.Plaintext],
744
- [j.ScriptEnd[2], j.ScriptEnd],
745
- [j.TitleEnd[2], j.TitleEnd],
746
- [j.XmpEnd[2], j.XmpEnd]
747
- ]), qe = class {
740
+ }, We = /* @__PURE__ */ new Map([
741
+ [N.IframeEnd[2], N.IframeEnd],
742
+ [N.NoembedEnd[2], N.NoembedEnd],
743
+ [N.Plaintext[2], N.Plaintext],
744
+ [N.ScriptEnd[2], N.ScriptEnd],
745
+ [N.TitleEnd[2], N.TitleEnd],
746
+ [N.XmpEnd[2], N.XmpEnd]
747
+ ]), Ge = class {
748
748
  cbs;
749
- state = D.Text;
749
+ state = k.Text;
750
750
  buffer = "";
751
751
  sectionStart = 0;
752
752
  index = 0;
753
753
  entityStart = 0;
754
- baseState = D.Text;
754
+ baseState = k.Text;
755
755
  isSpecial = !1;
756
756
  running = !0;
757
757
  offset = 0;
@@ -760,10 +760,10 @@ var j = {
760
760
  recognizeSelfClosing;
761
761
  entityDecoder;
762
762
  constructor({ xmlMode: e = !1, decodeEntities: t = !0, recognizeSelfClosing: n = e }, r) {
763
- this.cbs = r, this.xmlMode = e, this.decodeEntities = t, this.recognizeSelfClosing = n, this.entityDecoder = new Ue(e ? Re : Le, (e, t) => this.emitCodePoint(e, t));
763
+ this.cbs = r, this.xmlMode = e, this.decodeEntities = t, this.recognizeSelfClosing = n, this.entityDecoder = new Ve(e ? Ie : Fe, (e, t) => this.emitCodePoint(e, t));
764
764
  }
765
765
  reset() {
766
- this.state = D.Text, this.buffer = "", this.sectionStart = 0, this.index = 0, this.baseState = D.Text, this.isSpecial = !1, this.currentSequence = j.Empty, this.sequenceIndex = 0, this.running = !0, this.offset = 0;
766
+ this.state = k.Text, this.buffer = "", this.sectionStart = 0, this.index = 0, this.baseState = k.Text, this.isSpecial = !1, this.currentSequence = N.Empty, this.sequenceIndex = 0, this.running = !0, this.offset = 0;
767
767
  }
768
768
  write(e) {
769
769
  this.offset += this.buffer.length, this.buffer = e, this.parse();
@@ -778,12 +778,12 @@ var j = {
778
778
  this.running = !0, this.index < this.buffer.length + this.offset && this.parse();
779
779
  }
780
780
  stateText(e) {
781
- e === E.Lt || !this.decodeEntities && this.fastForwardTo(E.Lt) ? (this.index > this.sectionStart && this.cbs.ontext(this.sectionStart, this.index), this.state = D.BeforeTagName, this.sectionStart = this.index) : this.decodeEntities && e === E.Amp && this.startEntity();
781
+ e === O.Lt || !this.decodeEntities && this.fastForwardTo(O.Lt) ? (this.index > this.sectionStart && this.cbs.ontext(this.sectionStart, this.index), this.state = k.BeforeTagName, this.sectionStart = this.index) : this.decodeEntities && e === O.Amp && this.startEntity();
782
782
  }
783
- currentSequence = j.Empty;
783
+ currentSequence = N.Empty;
784
784
  sequenceIndex = 0;
785
785
  enterTagBody() {
786
- this.currentSequence === j.Plaintext ? (this.currentSequence = j.Empty, this.state = D.InPlainText) : this.isSpecial ? (this.state = D.InSpecialTag, this.sequenceIndex = 0) : this.state = D.Text;
786
+ this.currentSequence === N.Plaintext ? (this.currentSequence = N.Empty, this.state = k.InPlainText) : this.isSpecial ? (this.state = k.InSpecialTag, this.sequenceIndex = 0) : this.state = k.Text;
787
787
  }
788
788
  stateSpecialStartSequence(e) {
789
789
  let t = e | 32;
@@ -793,43 +793,43 @@ var j = {
793
793
  return;
794
794
  }
795
795
  if (this.sequenceIndex === 3) {
796
- if (this.currentSequence === j.ScriptEnd && t === j.StyleEnd[3]) {
797
- this.currentSequence = j.StyleEnd, this.sequenceIndex = 4;
796
+ if (this.currentSequence === N.ScriptEnd && t === N.StyleEnd[3]) {
797
+ this.currentSequence = N.StyleEnd, this.sequenceIndex = 4;
798
798
  return;
799
799
  }
800
- if (this.currentSequence === j.TitleEnd && t === j.TextareaEnd[3]) {
801
- this.currentSequence = j.TextareaEnd, this.sequenceIndex = 4;
800
+ if (this.currentSequence === N.TitleEnd && t === N.TextareaEnd[3]) {
801
+ this.currentSequence = N.TextareaEnd, this.sequenceIndex = 4;
802
802
  return;
803
803
  }
804
- } else if (this.sequenceIndex === 4 && this.currentSequence === j.NoembedEnd && t === j.NoframesEnd[4]) {
805
- this.currentSequence = j.NoframesEnd, this.sequenceIndex = 5;
804
+ } else if (this.sequenceIndex === 4 && this.currentSequence === N.NoembedEnd && t === N.NoframesEnd[4]) {
805
+ this.currentSequence = N.NoframesEnd, this.sequenceIndex = 5;
806
806
  return;
807
807
  }
808
- } else if (k(e)) {
809
- this.sequenceIndex = 0, this.state = D.InTagName, this.stateInTagName(e);
808
+ } else if (j(e)) {
809
+ this.sequenceIndex = 0, this.state = k.InTagName, this.stateInTagName(e);
810
810
  return;
811
811
  }
812
- this.isSpecial = !1, this.currentSequence = j.Empty, this.sequenceIndex = 0, this.state = D.InTagName, this.stateInTagName(e);
812
+ this.isSpecial = !1, this.currentSequence = N.Empty, this.sequenceIndex = 0, this.state = k.InTagName, this.stateInTagName(e);
813
813
  }
814
814
  stateCDATASequence(e) {
815
- e === j.Cdata[this.sequenceIndex] ? ++this.sequenceIndex === j.Cdata.length && (this.state = D.InCommentLike, this.currentSequence = j.CdataEnd, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : (this.sequenceIndex = 0, this.xmlMode ? (this.state = D.InDeclaration, this.stateInDeclaration(e)) : (this.state = D.InSpecialComment, this.stateInSpecialComment(e)));
815
+ e === N.Cdata[this.sequenceIndex] ? ++this.sequenceIndex === N.Cdata.length && (this.state = k.InCommentLike, this.currentSequence = N.CdataEnd, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : (this.sequenceIndex = 0, this.xmlMode ? (this.state = k.InDeclaration, this.stateInDeclaration(e)) : (this.state = k.InSpecialComment, this.stateInSpecialComment(e)));
816
816
  }
817
817
  fastForwardTo(e) {
818
818
  for (; ++this.index < this.buffer.length + this.offset;) if (this.buffer.charCodeAt(this.index - this.offset) === e) return !0;
819
819
  return this.index = this.buffer.length + this.offset - 1, !1;
820
820
  }
821
821
  emitComment(e) {
822
- this.cbs.oncomment(this.sectionStart, this.index, e), this.sequenceIndex = 0, this.sectionStart = this.index + 1, this.state = D.Text;
822
+ this.cbs.oncomment(this.sectionStart, this.index, e), this.sequenceIndex = 0, this.sectionStart = this.index + 1, this.state = k.Text;
823
823
  }
824
824
  stateInCommentLike(e) {
825
- !this.xmlMode && this.currentSequence === j.CommentEnd && this.sequenceIndex <= 1 && this.index === this.sectionStart + this.sequenceIndex && e === E.Gt ? this.emitComment(this.sequenceIndex) : this.currentSequence === j.CommentEnd && this.sequenceIndex === 2 && e === E.Gt ? this.emitComment(2) : this.currentSequence === j.CommentEnd && this.sequenceIndex === this.currentSequence.length - 1 && e !== E.Gt ? this.sequenceIndex = Number(e === E.Dash) : e === this.currentSequence[this.sequenceIndex] ? ++this.sequenceIndex === this.currentSequence.length && (this.currentSequence === j.CdataEnd ? this.cbs.oncdata(this.sectionStart, this.index, 2) : this.cbs.oncomment(this.sectionStart, this.index, 3), this.sequenceIndex = 0, this.sectionStart = this.index + 1, this.state = D.Text) : this.sequenceIndex === 0 ? this.fastForwardTo(this.currentSequence[0]) && (this.sequenceIndex = 1) : e !== this.currentSequence[this.sequenceIndex - 1] && (this.sequenceIndex = 0);
825
+ !this.xmlMode && this.currentSequence === N.CommentEnd && this.sequenceIndex <= 1 && this.index === this.sectionStart + this.sequenceIndex && e === O.Gt ? this.emitComment(this.sequenceIndex) : this.currentSequence === N.CommentEnd && this.sequenceIndex === 2 && e === O.Gt ? this.emitComment(2) : this.currentSequence === N.CommentEnd && this.sequenceIndex === this.currentSequence.length - 1 && e !== O.Gt ? this.sequenceIndex = Number(e === O.Dash) : e === this.currentSequence[this.sequenceIndex] ? ++this.sequenceIndex === this.currentSequence.length && (this.currentSequence === N.CdataEnd ? this.cbs.oncdata(this.sectionStart, this.index, 2) : this.cbs.oncomment(this.sectionStart, this.index, 3), this.sequenceIndex = 0, this.sectionStart = this.index + 1, this.state = k.Text) : this.sequenceIndex === 0 ? this.fastForwardTo(this.currentSequence[0]) && (this.sequenceIndex = 1) : e !== this.currentSequence[this.sequenceIndex - 1] && (this.sequenceIndex = 0);
826
826
  }
827
827
  isTagStartChar(e) {
828
- return this.xmlMode ? !k(e) : Ge(e);
828
+ return this.xmlMode ? !j(e) : Ue(e);
829
829
  }
830
830
  stateInSpecialTag(e) {
831
831
  if (this.sequenceIndex === this.currentSequence.length) {
832
- if (k(e)) {
832
+ if (j(e)) {
833
833
  let t = this.index - this.currentSequence.length;
834
834
  if (this.sectionStart < t) {
835
835
  let e = this.index;
@@ -840,88 +840,88 @@ var j = {
840
840
  }
841
841
  this.sequenceIndex = 0;
842
842
  }
843
- (e | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : this.sequenceIndex === 0 ? this.currentSequence === j.TitleEnd || this.currentSequence === j.TextareaEnd ? this.decodeEntities && e === E.Amp && this.startEntity() : this.fastForwardTo(E.Lt) && (this.sequenceIndex = 1) : this.sequenceIndex = Number(e === E.Lt);
843
+ (e | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : this.sequenceIndex === 0 ? this.currentSequence === N.TitleEnd || this.currentSequence === N.TextareaEnd ? this.decodeEntities && e === O.Amp && this.startEntity() : this.fastForwardTo(O.Lt) && (this.sequenceIndex = 1) : this.sequenceIndex = Number(e === O.Lt);
844
844
  }
845
845
  stateBeforeTagName(e) {
846
- if (e === E.ExclamationMark) this.state = D.BeforeDeclaration, this.sectionStart = this.index + 1;
847
- else if (e === E.Questionmark) this.xmlMode ? (this.state = D.InProcessingInstruction, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : (this.state = D.InSpecialComment, this.sectionStart = this.index);
846
+ if (e === O.ExclamationMark) this.state = k.BeforeDeclaration, this.sectionStart = this.index + 1;
847
+ else if (e === O.Questionmark) this.xmlMode ? (this.state = k.InProcessingInstruction, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : (this.state = k.InSpecialComment, this.sectionStart = this.index);
848
848
  else if (this.isTagStartChar(e)) {
849
849
  this.sectionStart = this.index;
850
- let t = this.xmlMode || this.cbs.isInForeignContext?.() ? void 0 : Ke.get(e | 32);
851
- t === void 0 ? this.state = D.InTagName : (this.isSpecial = !0, this.currentSequence = t, this.sequenceIndex = 3, this.state = D.SpecialStartSequence);
852
- } else e === E.Slash ? this.state = D.BeforeClosingTagName : (this.state = D.Text, this.stateText(e));
850
+ let t = this.xmlMode || this.cbs.isInForeignContext?.() ? void 0 : We.get(e | 32);
851
+ t === void 0 ? this.state = k.InTagName : (this.isSpecial = !0, this.currentSequence = t, this.sequenceIndex = 3, this.state = k.SpecialStartSequence);
852
+ } else e === O.Slash ? this.state = k.BeforeClosingTagName : (this.state = k.Text, this.stateText(e));
853
853
  }
854
854
  stateInTagName(e) {
855
- k(e) && (this.cbs.onopentagname(this.sectionStart, this.index), this.sectionStart = -1, this.state = D.BeforeAttributeName, this.stateBeforeAttributeName(e));
855
+ j(e) && (this.cbs.onopentagname(this.sectionStart, this.index), this.sectionStart = -1, this.state = k.BeforeAttributeName, this.stateBeforeAttributeName(e));
856
856
  }
857
857
  stateBeforeClosingTagName(e) {
858
- O(e) ? this.xmlMode || (this.state = D.InSpecialComment, this.sectionStart = this.index) : e === E.Gt ? (this.state = D.Text, this.xmlMode || (this.sectionStart = this.index + 1)) : (this.state = this.isTagStartChar(e) ? D.InClosingTagName : D.InSpecialComment, this.sectionStart = this.index);
858
+ A(e) ? this.xmlMode || (this.state = k.InSpecialComment, this.sectionStart = this.index) : e === O.Gt ? (this.state = k.Text, this.xmlMode || (this.sectionStart = this.index + 1)) : (this.state = this.isTagStartChar(e) ? k.InClosingTagName : k.InSpecialComment, this.sectionStart = this.index);
859
859
  }
860
860
  stateInClosingTagName(e) {
861
- k(e) && (this.cbs.onclosetag(this.sectionStart, this.index), this.sectionStart = -1, this.state = D.AfterClosingTagName, this.stateAfterClosingTagName(e));
861
+ j(e) && (this.cbs.onclosetag(this.sectionStart, this.index), this.sectionStart = -1, this.state = k.AfterClosingTagName, this.stateAfterClosingTagName(e));
862
862
  }
863
863
  stateAfterClosingTagName(e) {
864
- (e === E.Gt || this.fastForwardTo(E.Gt)) && (this.state = D.Text, this.sectionStart = this.index + 1);
864
+ (e === O.Gt || this.fastForwardTo(O.Gt)) && (this.state = k.Text, this.sectionStart = this.index + 1);
865
865
  }
866
866
  stateBeforeAttributeName(e) {
867
- e === E.Gt ? (this.cbs.onopentagend(this.index), this.enterTagBody(), this.sectionStart = this.index + 1) : e === E.Slash ? this.state = D.InSelfClosingTag : O(e) || (this.state = D.InAttributeName, this.sectionStart = this.index);
867
+ e === O.Gt ? (this.cbs.onopentagend(this.index), this.enterTagBody(), this.sectionStart = this.index + 1) : e === O.Slash ? this.state = k.InSelfClosingTag : A(e) || (this.state = k.InAttributeName, this.sectionStart = this.index);
868
868
  }
869
869
  stateInSelfClosingTag(e) {
870
- if (e === E.Gt) {
870
+ if (e === O.Gt) {
871
871
  if (this.cbs.onselfclosingtag(this.index), this.sectionStart = this.index + 1, !this.recognizeSelfClosing) {
872
872
  this.enterTagBody();
873
873
  return;
874
874
  }
875
- this.state = D.Text, this.isSpecial = !1, this.currentSequence = j.Empty;
876
- } else O(e) || (this.state = D.BeforeAttributeName, this.stateBeforeAttributeName(e));
875
+ this.state = k.Text, this.isSpecial = !1, this.currentSequence = N.Empty;
876
+ } else A(e) || (this.state = k.BeforeAttributeName, this.stateBeforeAttributeName(e));
877
877
  }
878
878
  stateInAttributeName(e) {
879
- (e === E.Eq || k(e)) && (this.cbs.onattribname(this.sectionStart, this.index), this.sectionStart = this.index, this.state = D.AfterAttributeName, this.stateAfterAttributeName(e));
879
+ (e === O.Eq || j(e)) && (this.cbs.onattribname(this.sectionStart, this.index), this.sectionStart = this.index, this.state = k.AfterAttributeName, this.stateAfterAttributeName(e));
880
880
  }
881
881
  stateAfterAttributeName(e) {
882
- e === E.Eq ? this.state = D.BeforeAttributeValue : e === E.Slash || e === E.Gt ? (this.cbs.onattribend(A.NoValue, this.sectionStart), this.sectionStart = -1, this.state = D.BeforeAttributeName, this.stateBeforeAttributeName(e)) : O(e) || (this.cbs.onattribend(A.NoValue, this.sectionStart), this.state = D.InAttributeName, this.sectionStart = this.index);
882
+ e === O.Eq ? this.state = k.BeforeAttributeValue : e === O.Slash || e === O.Gt ? (this.cbs.onattribend(M.NoValue, this.sectionStart), this.sectionStart = -1, this.state = k.BeforeAttributeName, this.stateBeforeAttributeName(e)) : A(e) || (this.cbs.onattribend(M.NoValue, this.sectionStart), this.state = k.InAttributeName, this.sectionStart = this.index);
883
883
  }
884
884
  stateBeforeAttributeValue(e) {
885
- e === E.DoubleQuote ? (this.state = D.InAttributeValueDq, this.sectionStart = this.index + 1) : e === E.SingleQuote ? (this.state = D.InAttributeValueSq, this.sectionStart = this.index + 1) : O(e) || (this.sectionStart = this.index, this.state = D.InAttributeValueNq, this.stateInAttributeValueNoQuotes(e));
885
+ e === O.DoubleQuote ? (this.state = k.InAttributeValueDq, this.sectionStart = this.index + 1) : e === O.SingleQuote ? (this.state = k.InAttributeValueSq, this.sectionStart = this.index + 1) : A(e) || (this.sectionStart = this.index, this.state = k.InAttributeValueNq, this.stateInAttributeValueNoQuotes(e));
886
886
  }
887
887
  handleInAttributeValue(e, t) {
888
- e === t || !this.decodeEntities && this.fastForwardTo(t) ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(t === E.DoubleQuote ? A.Double : A.Single, this.index + 1), this.state = D.BeforeAttributeName) : this.decodeEntities && e === E.Amp && this.startEntity();
888
+ e === t || !this.decodeEntities && this.fastForwardTo(t) ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(t === O.DoubleQuote ? M.Double : M.Single, this.index + 1), this.state = k.BeforeAttributeName) : this.decodeEntities && e === O.Amp && this.startEntity();
889
889
  }
890
890
  stateInAttributeValueDoubleQuotes(e) {
891
- this.handleInAttributeValue(e, E.DoubleQuote);
891
+ this.handleInAttributeValue(e, O.DoubleQuote);
892
892
  }
893
893
  stateInAttributeValueSingleQuotes(e) {
894
- this.handleInAttributeValue(e, E.SingleQuote);
894
+ this.handleInAttributeValue(e, O.SingleQuote);
895
895
  }
896
896
  stateInAttributeValueNoQuotes(e) {
897
- O(e) || e === E.Gt ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(A.Unquoted, this.index), this.state = D.BeforeAttributeName, this.stateBeforeAttributeName(e)) : this.decodeEntities && e === E.Amp && this.startEntity();
897
+ A(e) || e === O.Gt ? (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = -1, this.cbs.onattribend(M.Unquoted, this.index), this.state = k.BeforeAttributeName, this.stateBeforeAttributeName(e)) : this.decodeEntities && e === O.Amp && this.startEntity();
898
898
  }
899
899
  stateBeforeDeclaration(e) {
900
- e === E.OpeningSquareBracket ? (this.state = D.CDATASequence, this.sequenceIndex = 0) : this.xmlMode ? this.state = e === E.Dash ? D.BeforeComment : D.InDeclaration : (e | 32) === j.Doctype[0] ? (this.state = D.DeclarationSequence, this.currentSequence = j.Doctype, this.sequenceIndex = 1) : e === E.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = D.Text, this.sectionStart = this.index + 1) : e === E.Dash ? this.state = D.BeforeComment : this.state = D.InSpecialComment;
900
+ e === O.OpeningSquareBracket ? (this.state = k.CDATASequence, this.sequenceIndex = 0) : this.xmlMode ? this.state = e === O.Dash ? k.BeforeComment : k.InDeclaration : (e | 32) === N.Doctype[0] ? (this.state = k.DeclarationSequence, this.currentSequence = N.Doctype, this.sequenceIndex = 1) : e === O.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = k.Text, this.sectionStart = this.index + 1) : e === O.Dash ? this.state = k.BeforeComment : this.state = k.InSpecialComment;
901
901
  }
902
902
  stateDeclarationSequence(e) {
903
- this.sequenceIndex === this.currentSequence.length ? (this.state = D.InDeclaration, this.stateInDeclaration(e)) : (e | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : e === E.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = D.Text, this.sectionStart = this.index + 1) : this.state = D.InSpecialComment;
903
+ this.sequenceIndex === this.currentSequence.length ? (this.state = k.InDeclaration, this.stateInDeclaration(e)) : (e | 32) === this.currentSequence[this.sequenceIndex] ? this.sequenceIndex += 1 : e === O.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = k.Text, this.sectionStart = this.index + 1) : this.state = k.InSpecialComment;
904
904
  }
905
905
  stateInDeclaration(e) {
906
- (e === E.Gt || this.fastForwardTo(E.Gt)) && (this.cbs.ondeclaration(this.sectionStart, this.index), this.state = D.Text, this.sectionStart = this.index + 1);
906
+ (e === O.Gt || this.fastForwardTo(O.Gt)) && (this.cbs.ondeclaration(this.sectionStart, this.index), this.state = k.Text, this.sectionStart = this.index + 1);
907
907
  }
908
908
  stateInProcessingInstruction(e) {
909
- e === E.Questionmark ? this.sequenceIndex = 1 : e === E.Gt && this.sequenceIndex === 1 ? (this.cbs.onprocessinginstruction(this.sectionStart, this.index - 1), this.sequenceIndex = 0, this.state = D.Text, this.sectionStart = this.index + 1) : this.sequenceIndex = Number(this.fastForwardTo(E.Questionmark));
909
+ e === O.Questionmark ? this.sequenceIndex = 1 : e === O.Gt && this.sequenceIndex === 1 ? (this.cbs.onprocessinginstruction(this.sectionStart, this.index - 1), this.sequenceIndex = 0, this.state = k.Text, this.sectionStart = this.index + 1) : this.sequenceIndex = Number(this.fastForwardTo(O.Questionmark));
910
910
  }
911
911
  stateBeforeComment(e) {
912
- e === E.Dash ? (this.state = D.InCommentLike, this.currentSequence = j.CommentEnd, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : this.xmlMode ? this.state = D.InDeclaration : e === E.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = D.Text, this.sectionStart = this.index + 1) : this.state = D.InSpecialComment;
912
+ e === O.Dash ? (this.state = k.InCommentLike, this.currentSequence = N.CommentEnd, this.sequenceIndex = 0, this.sectionStart = this.index + 1) : this.xmlMode ? this.state = k.InDeclaration : e === O.Gt ? (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = k.Text, this.sectionStart = this.index + 1) : this.state = k.InSpecialComment;
913
913
  }
914
914
  stateInSpecialComment(e) {
915
- (e === E.Gt || this.fastForwardTo(E.Gt)) && (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = D.Text, this.sectionStart = this.index + 1);
915
+ (e === O.Gt || this.fastForwardTo(O.Gt)) && (this.cbs.oncomment(this.sectionStart, this.index, 0), this.state = k.Text, this.sectionStart = this.index + 1);
916
916
  }
917
917
  startEntity() {
918
- this.baseState = this.state, this.state = D.InEntity, this.entityStart = this.index, this.entityDecoder.startEntity(this.xmlMode ? T.Strict : this.baseState === D.Text || this.baseState === D.InSpecialTag ? T.Legacy : T.Attribute);
918
+ this.baseState = this.state, this.state = k.InEntity, this.entityStart = this.index, this.entityDecoder.startEntity(this.xmlMode ? D.Strict : this.baseState === k.Text || this.baseState === k.InSpecialTag ? D.Legacy : D.Attribute);
919
919
  }
920
920
  stateInEntity() {
921
921
  let e = this.index - this.offset, t = this.entityDecoder.write(this.buffer, e);
922
922
  if (t >= 0) this.state = this.baseState, t === 0 && --this.index;
923
923
  else {
924
- if (e < this.buffer.length && this.buffer.charCodeAt(e) === E.Amp) {
924
+ if (e < this.buffer.length && this.buffer.charCodeAt(e) === O.Amp) {
925
925
  this.state = this.baseState, --this.index;
926
926
  return;
927
927
  }
@@ -929,7 +929,7 @@ var j = {
929
929
  }
930
930
  }
931
931
  cleanup() {
932
- this.running && this.sectionStart !== this.index && (this.state === D.Text || this.state === D.InPlainText || this.state === D.InSpecialTag && this.sequenceIndex === 0 ? (this.cbs.ontext(this.sectionStart, this.index), this.sectionStart = this.index) : (this.state === D.InAttributeValueDq || this.state === D.InAttributeValueSq || this.state === D.InAttributeValueNq) && (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = this.index));
932
+ this.running && this.sectionStart !== this.index && (this.state === k.Text || this.state === k.InPlainText || this.state === k.InSpecialTag && this.sequenceIndex === 0 ? (this.cbs.ontext(this.sectionStart, this.index), this.sectionStart = this.index) : (this.state === k.InAttributeValueDq || this.state === k.InAttributeValueSq || this.state === k.InAttributeValueNq) && (this.cbs.onattribdata(this.sectionStart, this.index), this.sectionStart = this.index));
933
933
  }
934
934
  shouldContinue() {
935
935
  return this.index < this.buffer.length + this.offset && this.running;
@@ -938,82 +938,82 @@ var j = {
938
938
  for (; this.shouldContinue();) {
939
939
  let e = this.buffer.charCodeAt(this.index - this.offset);
940
940
  switch (this.state) {
941
- case D.Text:
941
+ case k.Text:
942
942
  this.stateText(e);
943
943
  break;
944
- case D.InPlainText:
944
+ case k.InPlainText:
945
945
  this.index = this.buffer.length + this.offset - 1;
946
946
  break;
947
- case D.SpecialStartSequence:
947
+ case k.SpecialStartSequence:
948
948
  this.stateSpecialStartSequence(e);
949
949
  break;
950
- case D.InSpecialTag:
950
+ case k.InSpecialTag:
951
951
  this.stateInSpecialTag(e);
952
952
  break;
953
- case D.CDATASequence:
953
+ case k.CDATASequence:
954
954
  this.stateCDATASequence(e);
955
955
  break;
956
- case D.DeclarationSequence:
956
+ case k.DeclarationSequence:
957
957
  this.stateDeclarationSequence(e);
958
958
  break;
959
- case D.InAttributeValueDq:
959
+ case k.InAttributeValueDq:
960
960
  this.stateInAttributeValueDoubleQuotes(e);
961
961
  break;
962
- case D.InAttributeName:
962
+ case k.InAttributeName:
963
963
  this.stateInAttributeName(e);
964
964
  break;
965
- case D.InCommentLike:
965
+ case k.InCommentLike:
966
966
  this.stateInCommentLike(e);
967
967
  break;
968
- case D.InSpecialComment:
968
+ case k.InSpecialComment:
969
969
  this.stateInSpecialComment(e);
970
970
  break;
971
- case D.BeforeAttributeName:
971
+ case k.BeforeAttributeName:
972
972
  this.stateBeforeAttributeName(e);
973
973
  break;
974
- case D.InTagName:
974
+ case k.InTagName:
975
975
  this.stateInTagName(e);
976
976
  break;
977
- case D.InClosingTagName:
977
+ case k.InClosingTagName:
978
978
  this.stateInClosingTagName(e);
979
979
  break;
980
- case D.BeforeTagName:
980
+ case k.BeforeTagName:
981
981
  this.stateBeforeTagName(e);
982
982
  break;
983
- case D.AfterAttributeName:
983
+ case k.AfterAttributeName:
984
984
  this.stateAfterAttributeName(e);
985
985
  break;
986
- case D.InAttributeValueSq:
986
+ case k.InAttributeValueSq:
987
987
  this.stateInAttributeValueSingleQuotes(e);
988
988
  break;
989
- case D.BeforeAttributeValue:
989
+ case k.BeforeAttributeValue:
990
990
  this.stateBeforeAttributeValue(e);
991
991
  break;
992
- case D.BeforeClosingTagName:
992
+ case k.BeforeClosingTagName:
993
993
  this.stateBeforeClosingTagName(e);
994
994
  break;
995
- case D.AfterClosingTagName:
995
+ case k.AfterClosingTagName:
996
996
  this.stateAfterClosingTagName(e);
997
997
  break;
998
- case D.InAttributeValueNq:
998
+ case k.InAttributeValueNq:
999
999
  this.stateInAttributeValueNoQuotes(e);
1000
1000
  break;
1001
- case D.InSelfClosingTag:
1001
+ case k.InSelfClosingTag:
1002
1002
  this.stateInSelfClosingTag(e);
1003
1003
  break;
1004
- case D.InDeclaration:
1004
+ case k.InDeclaration:
1005
1005
  this.stateInDeclaration(e);
1006
1006
  break;
1007
- case D.BeforeDeclaration:
1007
+ case k.BeforeDeclaration:
1008
1008
  this.stateBeforeDeclaration(e);
1009
1009
  break;
1010
- case D.BeforeComment:
1010
+ case k.BeforeComment:
1011
1011
  this.stateBeforeComment(e);
1012
1012
  break;
1013
- case D.InProcessingInstruction:
1013
+ case k.InProcessingInstruction:
1014
1014
  this.stateInProcessingInstruction(e);
1015
1015
  break;
1016
- case D.InEntity:
1016
+ case k.InEntity:
1017
1017
  this.stateInEntity();
1018
1018
  break;
1019
1019
  }
@@ -1022,59 +1022,59 @@ var j = {
1022
1022
  this.cleanup();
1023
1023
  }
1024
1024
  finish() {
1025
- this.state === D.InEntity && (this.entityDecoder.end(), this.state = this.baseState), this.handleTrailingData(), this.cbs.onend();
1025
+ this.state === k.InEntity && (this.entityDecoder.end(), this.state = this.baseState), this.handleTrailingData(), this.cbs.onend();
1026
1026
  }
1027
1027
  handleTrailingCommentLikeData(e) {
1028
- if (this.state !== D.InCommentLike) return !1;
1029
- if (this.currentSequence === j.CdataEnd) if (this.xmlMode) this.sectionStart < e && this.cbs.oncdata(this.sectionStart, e, 0);
1028
+ if (this.state !== k.InCommentLike) return !1;
1029
+ if (this.currentSequence === N.CdataEnd) if (this.xmlMode) this.sectionStart < e && this.cbs.oncdata(this.sectionStart, e, 0);
1030
1030
  else {
1031
- let t = this.sectionStart - j.Cdata.length - 1;
1031
+ let t = this.sectionStart - N.Cdata.length - 1;
1032
1032
  this.cbs.oncomment(t, e, 0);
1033
1033
  }
1034
1034
  else {
1035
- let t = this.xmlMode ? 0 : Math.min(this.sequenceIndex, j.CommentEnd.length - 1);
1035
+ let t = this.xmlMode ? 0 : Math.min(this.sequenceIndex, N.CommentEnd.length - 1);
1036
1036
  this.cbs.oncomment(this.sectionStart, e, t);
1037
1037
  }
1038
1038
  return !0;
1039
1039
  }
1040
1040
  handleTrailingMarkupDeclaration(e) {
1041
1041
  if (this.xmlMode) switch (this.state) {
1042
- case D.InSpecialComment:
1043
- case D.BeforeComment:
1044
- case D.CDATASequence:
1045
- case D.DeclarationSequence:
1046
- case D.InDeclaration: return this.cbs.ontext(this.sectionStart, e), !0;
1042
+ case k.InSpecialComment:
1043
+ case k.BeforeComment:
1044
+ case k.CDATASequence:
1045
+ case k.DeclarationSequence:
1046
+ case k.InDeclaration: return this.cbs.ontext(this.sectionStart, e), !0;
1047
1047
  default: return !1;
1048
1048
  }
1049
1049
  switch (this.state) {
1050
- case D.BeforeDeclaration:
1051
- case D.InSpecialComment:
1052
- case D.BeforeComment:
1053
- case D.CDATASequence: return this.cbs.oncomment(this.sectionStart, e, 0), !0;
1054
- case D.DeclarationSequence: return this.sequenceIndex !== j.Doctype.length && this.cbs.oncomment(this.sectionStart, e, 0), !0;
1055
- case D.InDeclaration: return !0;
1050
+ case k.BeforeDeclaration:
1051
+ case k.InSpecialComment:
1052
+ case k.BeforeComment:
1053
+ case k.CDATASequence: return this.cbs.oncomment(this.sectionStart, e, 0), !0;
1054
+ case k.DeclarationSequence: return this.sequenceIndex !== N.Doctype.length && this.cbs.oncomment(this.sectionStart, e, 0), !0;
1055
+ case k.InDeclaration: return !0;
1056
1056
  default: return !1;
1057
1057
  }
1058
1058
  }
1059
1059
  handleTrailingData() {
1060
1060
  let e = this.buffer.length + this.offset;
1061
1061
  if (!(this.handleTrailingCommentLikeData(e) || this.handleTrailingMarkupDeclaration(e)) && !(this.sectionStart >= e)) switch (this.state) {
1062
- case D.InTagName:
1063
- case D.BeforeAttributeName:
1064
- case D.BeforeAttributeValue:
1065
- case D.AfterAttributeName:
1066
- case D.InAttributeName:
1067
- case D.InAttributeValueSq:
1068
- case D.InAttributeValueDq:
1069
- case D.InAttributeValueNq:
1070
- case D.InClosingTagName: break;
1062
+ case k.InTagName:
1063
+ case k.BeforeAttributeName:
1064
+ case k.BeforeAttributeValue:
1065
+ case k.AfterAttributeName:
1066
+ case k.InAttributeName:
1067
+ case k.InAttributeValueSq:
1068
+ case k.InAttributeValueDq:
1069
+ case k.InAttributeValueNq:
1070
+ case k.InClosingTagName: break;
1071
1071
  default: this.cbs.ontext(this.sectionStart, e);
1072
1072
  }
1073
1073
  }
1074
1074
  emitCodePoint(e, t) {
1075
- this.baseState !== D.Text && this.baseState !== D.InSpecialTag ? (this.sectionStart < this.entityStart && this.cbs.onattribdata(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.onattribentity(e)) : (this.sectionStart < this.entityStart && this.cbs.ontext(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.ontextentity(e, this.sectionStart));
1075
+ this.baseState !== k.Text && this.baseState !== k.InSpecialTag ? (this.sectionStart < this.entityStart && this.cbs.onattribdata(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.onattribentity(e)) : (this.sectionStart < this.entityStart && this.cbs.ontext(this.sectionStart, this.entityStart), this.sectionStart = this.entityStart + t, this.index = this.sectionStart - 1, this.cbs.ontextentity(e, this.sectionStart));
1076
1076
  }
1077
- }, { fromCodePoint: Je } = String, M = /* @__PURE__ */ new Set([
1077
+ }, { fromCodePoint: Ke } = String, P = /* @__PURE__ */ new Set([
1078
1078
  "input",
1079
1079
  "option",
1080
1080
  "optgroup",
@@ -1082,7 +1082,7 @@ var j = {
1082
1082
  "button",
1083
1083
  "datalist",
1084
1084
  "textarea"
1085
- ]), N = /* @__PURE__ */ new Set(["p"]), P = /* @__PURE__ */ new Set([
1085
+ ]), F = /* @__PURE__ */ new Set(["p"]), I = /* @__PURE__ */ new Set([
1086
1086
  "h1",
1087
1087
  "h2",
1088
1088
  "h3",
@@ -1090,7 +1090,7 @@ var j = {
1090
1090
  "h5",
1091
1091
  "h6",
1092
1092
  "p"
1093
- ]), F = /* @__PURE__ */ new Set(["thead", "tbody"]), I = /* @__PURE__ */ new Set(["dd", "dt"]), L = /* @__PURE__ */ new Set(["rt", "rp"]), Ye = /* @__PURE__ */ new Map([
1093
+ ]), L = /* @__PURE__ */ new Set(["thead", "tbody"]), R = /* @__PURE__ */ new Set(["dd", "dt"]), z = /* @__PURE__ */ new Set(["rt", "rp"]), qe = /* @__PURE__ */ new Map([
1094
1094
  ["tr", /* @__PURE__ */ new Set([
1095
1095
  "tr",
1096
1096
  "th",
@@ -1109,49 +1109,49 @@ var j = {
1109
1109
  ])],
1110
1110
  ["a", /* @__PURE__ */ new Set(["a"])],
1111
1111
  ["li", /* @__PURE__ */ new Set(["li"])],
1112
- ["p", N],
1113
- ["h1", P],
1114
- ["h2", P],
1115
- ["h3", P],
1116
- ["h4", P],
1117
- ["h5", P],
1118
- ["h6", P],
1119
- ["select", M],
1120
- ["input", M],
1121
- ["output", M],
1122
- ["button", M],
1123
- ["datalist", M],
1124
- ["textarea", M],
1112
+ ["p", F],
1113
+ ["h1", I],
1114
+ ["h2", I],
1115
+ ["h3", I],
1116
+ ["h4", I],
1117
+ ["h5", I],
1118
+ ["h6", I],
1119
+ ["select", P],
1120
+ ["input", P],
1121
+ ["output", P],
1122
+ ["button", P],
1123
+ ["datalist", P],
1124
+ ["textarea", P],
1125
1125
  ["option", /* @__PURE__ */ new Set(["option"])],
1126
1126
  ["optgroup", /* @__PURE__ */ new Set(["optgroup", "option"])],
1127
- ["dd", I],
1128
- ["dt", I],
1129
- ["address", N],
1130
- ["article", N],
1131
- ["aside", N],
1132
- ["blockquote", N],
1133
- ["details", N],
1134
- ["div", N],
1135
- ["dl", N],
1136
- ["fieldset", N],
1137
- ["figcaption", N],
1138
- ["figure", N],
1139
- ["footer", N],
1140
- ["form", N],
1141
- ["header", N],
1142
- ["hr", N],
1143
- ["main", N],
1144
- ["nav", N],
1145
- ["ol", N],
1146
- ["pre", N],
1147
- ["section", N],
1148
- ["table", N],
1149
- ["ul", N],
1150
- ["rt", L],
1151
- ["rp", L],
1152
- ["tbody", F],
1153
- ["tfoot", F]
1154
- ]), Xe = "doctype", Ze = /* @__PURE__ */ new Set([
1127
+ ["dd", R],
1128
+ ["dt", R],
1129
+ ["address", F],
1130
+ ["article", F],
1131
+ ["aside", F],
1132
+ ["blockquote", F],
1133
+ ["details", F],
1134
+ ["div", F],
1135
+ ["dl", F],
1136
+ ["fieldset", F],
1137
+ ["figcaption", F],
1138
+ ["figure", F],
1139
+ ["footer", F],
1140
+ ["form", F],
1141
+ ["header", F],
1142
+ ["hr", F],
1143
+ ["main", F],
1144
+ ["nav", F],
1145
+ ["ol", F],
1146
+ ["pre", F],
1147
+ ["section", F],
1148
+ ["table", F],
1149
+ ["ul", F],
1150
+ ["rt", z],
1151
+ ["rp", z],
1152
+ ["tbody", L],
1153
+ ["tfoot", L]
1154
+ ]), Je = "doctype", Ye = /* @__PURE__ */ new Set([
1155
1155
  "area",
1156
1156
  "base",
1157
1157
  "basefont",
@@ -1171,7 +1171,7 @@ var j = {
1171
1171
  "source",
1172
1172
  "track",
1173
1173
  "wbr"
1174
- ]), Qe = /* @__PURE__ */ new Set(["math", "svg"]), R = /* @__PURE__ */ new Set([
1174
+ ]), Xe = /* @__PURE__ */ new Set(["math", "svg"]), B = /* @__PURE__ */ new Set([
1175
1175
  "mi",
1176
1176
  "mo",
1177
1177
  "mn",
@@ -1181,7 +1181,7 @@ var j = {
1181
1181
  "foreignObject",
1182
1182
  "desc",
1183
1183
  "title"
1184
- ]), z = /* @__PURE__ */ new Map([
1184
+ ]), V = /* @__PURE__ */ new Map([
1185
1185
  ["altglyph", "altGlyph"],
1186
1186
  ["altglyphdef", "altGlyphDef"],
1187
1187
  ["altglyphitem", "altGlyphItem"],
@@ -1219,11 +1219,11 @@ var j = {
1219
1219
  ["lineargradient", "linearGradient"],
1220
1220
  ["radialgradient", "radialGradient"],
1221
1221
  ["textpath", "textPath"]
1222
- ]), B;
1222
+ ]), H;
1223
1223
  (function(e) {
1224
1224
  e[e.None = 0] = "None", e[e.Svg = 1] = "Svg", e[e.MathML = 2] = "MathML";
1225
- })(B ||= {});
1226
- var $e = /\s|\//, V = class {
1225
+ })(H ||= {});
1226
+ var Ze = /\s|\//, U = class {
1227
1227
  options;
1228
1228
  startIndex = 0;
1229
1229
  endIndex = 0;
@@ -1245,27 +1245,27 @@ var $e = /\s|\//, V = class {
1245
1245
  writeIndex = 0;
1246
1246
  ended = !1;
1247
1247
  constructor(e, t = {}) {
1248
- this.options = t, this.cbs = e ?? {}, this.htmlMode = !this.options.xmlMode, this.lowerCaseTagNames = t.lowerCaseTags ?? this.htmlMode, this.lowerCaseAttributeNames = t.lowerCaseAttributeNames ?? this.htmlMode, this.recognizeSelfClosing = t.recognizeSelfClosing ?? !this.htmlMode, this.tokenizer = new (t.Tokenizer ?? qe)(this.options, this), this.foreignContext = [B.None], this.cbs.onparserinit?.(this);
1248
+ this.options = t, this.cbs = e ?? {}, this.htmlMode = !this.options.xmlMode, this.lowerCaseTagNames = t.lowerCaseTags ?? this.htmlMode, this.lowerCaseAttributeNames = t.lowerCaseAttributeNames ?? this.htmlMode, this.recognizeSelfClosing = t.recognizeSelfClosing ?? !this.htmlMode, this.tokenizer = new (t.Tokenizer ?? Ge)(this.options, this), this.foreignContext = [H.None], this.cbs.onparserinit?.(this);
1249
1249
  }
1250
1250
  ontext(e, t) {
1251
1251
  let n = this.getSlice(e, t);
1252
1252
  this.endIndex = t - 1, this.cbs.ontext?.(n), this.startIndex = t;
1253
1253
  }
1254
1254
  ontextentity(e, t) {
1255
- this.endIndex = t - 1, this.cbs.ontext?.(Je(e)), this.startIndex = t;
1255
+ this.endIndex = t - 1, this.cbs.ontext?.(Ke(e)), this.startIndex = t;
1256
1256
  }
1257
1257
  isInForeignContext() {
1258
- return this.foreignContext[0] !== B.None;
1258
+ return this.foreignContext[0] !== H.None;
1259
1259
  }
1260
1260
  isVoidElement(e) {
1261
- return this.htmlMode && Ze.has(e);
1261
+ return this.htmlMode && Ye.has(e);
1262
1262
  }
1263
1263
  readTagName(e, t) {
1264
1264
  let n = this.lowerCaseTagNames ? this.getSlice(e, t).toLowerCase() : this.getSlice(e, t);
1265
1265
  if (!(this.lowerCaseTagNames && this.htmlMode)) return n;
1266
- if (this.foreignContext[0] === B.Svg) return z.get(n) ?? n;
1266
+ if (this.foreignContext[0] === H.Svg) return V.get(n) ?? n;
1267
1267
  if (this.foreignContext.length > 1) {
1268
- let e = z.get(n);
1268
+ let e = V.get(n);
1269
1269
  if (e !== void 0 && this.stack.includes(e)) return e;
1270
1270
  }
1271
1271
  return this.isInForeignContext() ? n : n === "image" ? "img" : n;
@@ -1278,9 +1278,9 @@ var $e = /\s|\//, V = class {
1278
1278
  this.tagname = "";
1279
1279
  return;
1280
1280
  }
1281
- let t = this.htmlMode && Ye.get(e);
1281
+ let t = this.htmlMode && qe.get(e);
1282
1282
  if (t) for (; this.stack.length > 0 && t.has(this.stack[0]);) this.popElement(!0);
1283
- this.isVoidElement(e) || (this.stack.unshift(e), this.htmlMode && (e === "svg" ? this.foreignContext.unshift(B.Svg) : e === "math" ? this.foreignContext.unshift(B.MathML) : R.has(e) && this.foreignContext.unshift(B.None))), this.cbs.onopentagname?.(e), this.cbs.onopentag && (this.attribs = {});
1283
+ this.isVoidElement(e) || (this.stack.unshift(e), this.htmlMode && (e === "svg" ? this.foreignContext.unshift(H.Svg) : e === "math" ? this.foreignContext.unshift(H.MathML) : B.has(e) && this.foreignContext.unshift(H.None))), this.cbs.onopentagname?.(e), this.cbs.onopentag && (this.attribs = {});
1284
1284
  }
1285
1285
  endOpenTag(e) {
1286
1286
  this.startIndex = this.openTagStart, this.attribs &&= (this.cbs.onopentag?.(this.tagname, this.attribs, e), null), this.cbs.onclosetag && this.isVoidElement(this.tagname) && this.cbs.onclosetag(this.tagname, !0), this.tagname = "";
@@ -1306,7 +1306,7 @@ var $e = /\s|\//, V = class {
1306
1306
  }
1307
1307
  popElement(e) {
1308
1308
  let t = this.stack.shift();
1309
- this.htmlMode && (Qe.has(t) || R.has(t)) && this.foreignContext.shift(), this.cbs.onclosetag?.(t, e);
1309
+ this.htmlMode && (Xe.has(t) || B.has(t)) && this.foreignContext.shift(), this.cbs.onclosetag?.(t, e);
1310
1310
  }
1311
1311
  closeCurrentTag(e) {
1312
1312
  let t = this.tagname;
@@ -1321,20 +1321,20 @@ var $e = /\s|\//, V = class {
1321
1321
  this.attribvalue += this.getSlice(e, t);
1322
1322
  }
1323
1323
  onattribentity(e) {
1324
- this.attribvalue += Je(e);
1324
+ this.attribvalue += Ke(e);
1325
1325
  }
1326
1326
  onattribend(e, t) {
1327
- this.endIndex = t, this.cbs.onattribute?.(this.attribname, this.attribvalue, e === A.Double ? "\"" : e === A.Single ? "'" : e === A.NoValue ? void 0 : null), this.attribs && !Object.hasOwn(this.attribs, this.attribname) && (this.attribs[this.attribname] = this.attribvalue), this.attribvalue = "";
1327
+ this.endIndex = t, this.cbs.onattribute?.(this.attribname, this.attribvalue, e === M.Double ? "\"" : e === M.Single ? "'" : e === M.NoValue ? void 0 : null), this.attribs && !Object.hasOwn(this.attribs, this.attribname) && (this.attribs[this.attribname] = this.attribvalue), this.attribvalue = "";
1328
1328
  }
1329
1329
  getInstructionName(e) {
1330
- let t = e.search($e), n = t < 0 ? e : e.substr(0, t);
1330
+ let t = e.search(Ze), n = t < 0 ? e : e.substr(0, t);
1331
1331
  return this.lowerCaseTagNames && (n = n.toLowerCase()), n;
1332
1332
  }
1333
1333
  ondeclaration(e, t) {
1334
1334
  this.endIndex = t;
1335
1335
  let n = this.getSlice(e, t);
1336
1336
  if (this.cbs.onprocessinginstruction) {
1337
- let e = this.htmlMode ? this.lowerCaseTagNames ? Xe : n.slice(0, 7) : this.getInstructionName(n);
1337
+ let e = this.htmlMode ? this.lowerCaseTagNames ? Je : n.slice(0, 7) : this.getInstructionName(n);
1338
1338
  this.cbs.onprocessinginstruction(`!${e}`, `!${n}`);
1339
1339
  }
1340
1340
  this.startIndex = t + 1;
@@ -1364,7 +1364,7 @@ var $e = /\s|\//, V = class {
1364
1364
  this.cbs.onend?.();
1365
1365
  }
1366
1366
  reset() {
1367
- this.cbs.onreset?.(), this.tokenizer.reset(), this.tagname = "", this.attribname = "", this.attribvalue = "", this.attribs = null, this.stack.length = 0, this.startIndex = 0, this.endIndex = 0, this.cbs.onparserinit?.(this), this.buffers.length = 0, this.foreignContext.length = 0, this.foreignContext.unshift(B.None), this.bufferOffset = 0, this.writeIndex = 0, this.ended = !1;
1367
+ this.cbs.onreset?.(), this.tokenizer.reset(), this.tagname = "", this.attribname = "", this.attribvalue = "", this.attribs = null, this.stack.length = 0, this.startIndex = 0, this.endIndex = 0, this.cbs.onparserinit?.(this), this.buffers.length = 0, this.foreignContext.length = 0, this.foreignContext.unshift(H.None), this.bufferOffset = 0, this.writeIndex = 0, this.ended = !1;
1368
1368
  }
1369
1369
  parseComplete(e) {
1370
1370
  this.reset(), this.end(e);
@@ -1403,10 +1403,10 @@ var $e = /\s|\//, V = class {
1403
1403
  };
1404
1404
  //#endregion
1405
1405
  //#region ../quality/src/html-utils.ts
1406
- function H(e) {
1406
+ function W(e) {
1407
1407
  let t = [], n = null, r = "", i = () => {
1408
1408
  n !== null && (n.text = r.trim(), t.push(n), n = null, r = "");
1409
- }, a = new V({
1409
+ }, a = new U({
1410
1410
  onopentag(e, t) {
1411
1411
  if (e === "a") {
1412
1412
  i(), n = {
@@ -1429,8 +1429,8 @@ function H(e) {
1429
1429
  });
1430
1430
  return a.write(e), a.end(), i(), t;
1431
1431
  }
1432
- function et(e) {
1433
- let t = tt(e).matchAll(/<\/?a\b[^<>]*>/gi), n = 0;
1432
+ function Qe(e) {
1433
+ let t = $e(e).matchAll(/<\/?a\b[^<>]*>/gi), n = 0;
1434
1434
  for (let e of t) {
1435
1435
  if (e[0].startsWith("</")) {
1436
1436
  n > 0 && n--;
@@ -1441,7 +1441,7 @@ function et(e) {
1441
1441
  }
1442
1442
  return !1;
1443
1443
  }
1444
- function tt(e) {
1444
+ function $e(e) {
1445
1445
  let t = "", n = 0;
1446
1446
  for (; n < e.length;) {
1447
1447
  let r = e.indexOf("<!--", n);
@@ -1456,38 +1456,38 @@ function tt(e) {
1456
1456
  }
1457
1457
  return t;
1458
1458
  }
1459
- function U(e) {
1460
- let t = "", n = new V({ ontext(e) {
1459
+ function G(e) {
1460
+ let t = "", n = new U({ ontext(e) {
1461
1461
  t += e;
1462
1462
  } });
1463
1463
  return n.write(e), n.end(), t.trim();
1464
1464
  }
1465
- var nt = {
1465
+ var et = {
1466
1466
  meta: {
1467
1467
  id: "a11y.heading-empty",
1468
1468
  severity: "error"
1469
1469
  },
1470
1470
  block(e) {
1471
- return !i(e) || U(e.content ?? "") !== "" ? null : { blockId: e.id };
1471
+ return !l(e) || G(e.content ?? "") !== "" ? null : { blockId: e.id };
1472
1472
  }
1473
- }, rt = {
1473
+ }, tt = {
1474
1474
  id: "a11y.heading-skip-level",
1475
1475
  severity: "error"
1476
1476
  };
1477
- function W(e, t) {
1478
- for (let n of e) {
1479
- if (i(n)) {
1480
- t.push(n);
1477
+ function K(e, n) {
1478
+ for (let r of e) {
1479
+ if (l(r)) {
1480
+ n.push(r);
1481
1481
  continue;
1482
1482
  }
1483
- if (c(n)) for (let e of n.children) W(e, t);
1483
+ if (t(r)) for (let e of r.children) K(e, n);
1484
1484
  }
1485
1485
  }
1486
- var it = {
1487
- meta: rt,
1486
+ var nt = {
1487
+ meta: tt,
1488
1488
  template(e) {
1489
1489
  let t = [];
1490
- W(e.blocks, t);
1490
+ K(e.blocks, t);
1491
1491
  let n = [], r = 0;
1492
1492
  for (let e of t) r !== 0 && e.level > r + 1 && n.push({
1493
1493
  blockId: e.id,
@@ -1498,54 +1498,54 @@ var it = {
1498
1498
  }), r = e.level;
1499
1499
  return n;
1500
1500
  }
1501
- }, at = {
1501
+ }, rt = {
1502
1502
  id: "a11y.heading-multiple-h1",
1503
1503
  severity: "warning"
1504
1504
  };
1505
- function G(e, t) {
1506
- for (let n of e) {
1507
- if (i(n)) {
1508
- t.push(n);
1505
+ function q(e, n) {
1506
+ for (let r of e) {
1507
+ if (l(r)) {
1508
+ n.push(r);
1509
1509
  continue;
1510
1510
  }
1511
- if (c(n)) for (let e of n.children) G(e, t);
1511
+ if (t(r)) for (let e of r.children) q(e, n);
1512
1512
  }
1513
1513
  }
1514
- var ot = {
1515
- meta: at,
1514
+ var it = {
1515
+ meta: rt,
1516
1516
  template(e) {
1517
1517
  let t = [];
1518
- G(e.blocks, t);
1518
+ q(e.blocks, t);
1519
1519
  let n = t.filter((e) => e.level === 1);
1520
1520
  return n.length <= 1 ? [] : n.slice(1).map((e) => ({ blockId: e.id }));
1521
1521
  }
1522
- }, st = {
1522
+ }, at = {
1523
1523
  id: "a11y.link-empty",
1524
1524
  severity: "error"
1525
1525
  };
1526
- function ct(e) {
1527
- return o(e) || i(e) ? e.content : null;
1526
+ function ot(e) {
1527
+ return c(e) || l(e) ? e.content : null;
1528
1528
  }
1529
- var lt = {
1530
- meta: st,
1529
+ var st = {
1530
+ meta: at,
1531
1531
  block(e) {
1532
- let t = ct(e);
1533
- return t === null || !H(t).find((e) => e.text === "" && !e.hasImageWithAlt) ? null : { blockId: e.id };
1532
+ let t = ot(e);
1533
+ return t === null || !W(t).find((e) => e.text === "" && !e.hasImageWithAlt) ? null : { blockId: e.id };
1534
1534
  }
1535
- }, ut = {
1535
+ }, ct = {
1536
1536
  id: "a11y.link-vague-text",
1537
1537
  severity: "warning"
1538
1538
  };
1539
- function dt(e) {
1540
- return o(e) || i(e) ? e.content : null;
1539
+ function lt(e) {
1540
+ return c(e) || l(e) ? e.content : null;
1541
1541
  }
1542
- var ft = {
1543
- meta: ut,
1542
+ var ut = {
1543
+ meta: ct,
1544
1544
  block(e, t, n) {
1545
- let r = dt(e);
1545
+ let r = lt(e);
1546
1546
  if (r === null) return null;
1547
- let i = _(n.locale).vagueLinkText, a = H(r).find((e) => {
1548
- let t = y(e.text);
1547
+ let i = b(n.locale).vagueLinkText, a = W(r).find((e) => {
1548
+ let t = je(e.text);
1549
1549
  return t !== "" && i.includes(t);
1550
1550
  });
1551
1551
  return a ? {
@@ -1553,53 +1553,53 @@ var ft = {
1553
1553
  params: { text: a.text }
1554
1554
  } : null;
1555
1555
  }
1556
- }, pt = {
1556
+ }, dt = {
1557
1557
  id: "a11y.link-href-empty",
1558
1558
  severity: "error"
1559
1559
  };
1560
- function mt(e) {
1561
- return o(e) || i(e) ? e.content : null;
1560
+ function ft(e) {
1561
+ return c(e) || l(e) ? e.content : null;
1562
1562
  }
1563
- var ht = {
1564
- meta: pt,
1563
+ var pt = {
1564
+ meta: dt,
1565
1565
  block(e) {
1566
- let t = mt(e);
1567
- return t === null || !H(t).find((e) => {
1566
+ let t = ft(e);
1567
+ return t === null || !W(t).find((e) => {
1568
1568
  let t = e.href.trim();
1569
1569
  return t === "" || t === "#";
1570
1570
  }) ? null : { blockId: e.id };
1571
1571
  }
1572
- }, gt = {
1572
+ }, mt = {
1573
1573
  id: "a11y.link-target-blank-no-rel",
1574
1574
  severity: "warning"
1575
1575
  };
1576
- function _t(e) {
1577
- return o(e) || i(e) ? e.content : null;
1576
+ function ht(e) {
1577
+ return c(e) || l(e) ? e.content : null;
1578
1578
  }
1579
- function vt(e) {
1579
+ function gt(e) {
1580
1580
  if (e === null) return !1;
1581
1581
  let t = e.toLowerCase().split(/\s+/);
1582
1582
  return t.includes("noopener") || t.includes("noreferrer");
1583
1583
  }
1584
- var yt = {
1585
- meta: gt,
1584
+ var _t = {
1585
+ meta: mt,
1586
1586
  block(e) {
1587
- let t = _t(e);
1588
- return t === null || !H(t).find((e) => e.target === "_blank" && !vt(e.rel)) ? null : {
1587
+ let t = ht(e);
1588
+ return t === null || !W(t).find((e) => e.target === "_blank" && !gt(e.rel)) ? null : {
1589
1589
  blockId: e.id,
1590
1590
  fix: {
1591
1591
  description: "Add rel=\"noopener\"",
1592
1592
  apply: (t) => {
1593
- if (!o(e) && !i(e)) return;
1594
- let n = St(e.content ?? "");
1593
+ if (!c(e) && !l(e)) return;
1594
+ let n = bt(e.content ?? "");
1595
1595
  t.updateBlock(e.id, { content: n });
1596
1596
  }
1597
1597
  }
1598
1598
  };
1599
1599
  }
1600
- }, K = /([^\s"'>/=]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;
1601
- function bt(e) {
1602
- let t = [], n = new RegExp(K.source, K.flags), r;
1600
+ }, J = /([^\s"'>/=]+)(?:\s*=\s*(?:"([^"]*)"|'([^']*)'|([^\s"'=<>`]+)))?/g;
1601
+ function vt(e) {
1602
+ let t = [], n = new RegExp(J.source, J.flags), r;
1603
1603
  for (; (r = n.exec(e)) !== null;) t.push({
1604
1604
  raw: r[0],
1605
1605
  name: r[1],
@@ -1608,13 +1608,13 @@ function bt(e) {
1608
1608
  });
1609
1609
  return t;
1610
1610
  }
1611
- function xt(e) {
1611
+ function yt(e) {
1612
1612
  return e.some((e) => e.name.toLowerCase() === "target" && e.value !== null && e.value.toLowerCase() === "_blank");
1613
1613
  }
1614
- function St(e) {
1614
+ function bt(e) {
1615
1615
  return e.replace(/<a\b([^>]*)>/gi, (e, t) => {
1616
- let n = bt(t);
1617
- if (!xt(n)) return e;
1616
+ let n = vt(t);
1617
+ if (!yt(n)) return e;
1618
1618
  let r = n.find((e) => e.name.toLowerCase() === "rel");
1619
1619
  if (r) {
1620
1620
  let n = (r.value ?? "").toLowerCase().split(/\s+/);
@@ -1627,76 +1627,76 @@ function St(e) {
1627
1627
  }
1628
1628
  //#endregion
1629
1629
  //#region ../quality/src/accessibility/rules/link-nested-anchor.ts
1630
- var Ct = {
1630
+ var xt = {
1631
1631
  id: "a11y.link-nested-anchor",
1632
1632
  severity: "error"
1633
1633
  };
1634
- function wt(e) {
1635
- return o(e) || i(e) ? e.content : null;
1634
+ function St(e) {
1635
+ return c(e) || l(e) ? e.content : null;
1636
1636
  }
1637
- var Tt = {
1638
- meta: Ct,
1637
+ var Ct = {
1638
+ meta: xt,
1639
1639
  block(e) {
1640
- let t = wt(e);
1641
- return t === null || !et(t) ? null : { blockId: e.id };
1640
+ let t = St(e);
1641
+ return t === null || !Qe(t) ? null : { blockId: e.id };
1642
1642
  }
1643
- }, Et = {
1643
+ }, wt = {
1644
1644
  meta: {
1645
1645
  id: "a11y.text-all-caps",
1646
1646
  severity: "warning"
1647
1647
  },
1648
1648
  block(e, t, n) {
1649
- if (!o(e) && !i(e)) return null;
1650
- let r = U(e.content ?? "").replace(/[^\p{L}]/gu, "");
1649
+ if (!c(e) && !l(e)) return null;
1650
+ let r = G(e.content ?? "").replace(/[^\p{L}]/gu, "");
1651
1651
  return r.length < n.thresholds.allCapsMinLength || r !== r.toLocaleUpperCase() ? null : { blockId: e.id };
1652
1652
  }
1653
- }, Dt = {
1653
+ }, Tt = {
1654
1654
  meta: {
1655
1655
  id: "a11y.text-low-contrast",
1656
1656
  severity: "error"
1657
1657
  },
1658
1658
  block(e, t) {
1659
- if (!i(e)) return null;
1659
+ if (!l(e)) return null;
1660
1660
  let n = e.color ?? t.resolvedTextColor;
1661
- if (!u(n) || !u(t.resolvedBackgroundColor)) return null;
1662
- let r = ee[e.level] >= 24 ? 3 : 4.5, a = ae(n, t.resolvedBackgroundColor);
1663
- return Number.isNaN(a) || a >= r ? null : {
1661
+ if (!f(n) || !f(t.resolvedBackgroundColor)) return null;
1662
+ let r = te[e.level] >= 24 ? 3 : 4.5, i = u(n, t.resolvedBackgroundColor);
1663
+ return Number.isNaN(i) || i >= r ? null : {
1664
1664
  blockId: e.id,
1665
1665
  params: {
1666
- ratio: a.toFixed(2),
1666
+ ratio: i.toFixed(2),
1667
1667
  required: r
1668
1668
  }
1669
1669
  };
1670
1670
  }
1671
- }, Ot = {
1671
+ }, Et = {
1672
1672
  id: "a11y.text-too-small",
1673
1673
  severity: "warning"
1674
1674
  };
1675
- function kt(e) {
1676
- return r(e) || ne(e) ? e.fontSize : null;
1675
+ function Dt(e) {
1676
+ return o(e) || r(e) ? e.fontSize : null;
1677
1677
  }
1678
1678
  //#endregion
1679
1679
  //#region ../quality/src/accessibility/index.ts
1680
- var q = [
1681
- xe,
1680
+ var Ot = [
1681
+ ye,
1682
+ Se,
1683
+ Ce,
1682
1684
  we,
1683
- Te,
1684
- Ee,
1685
- Pe,
1685
+ Me,
1686
+ et,
1686
1687
  nt,
1687
1688
  it,
1688
- ot,
1689
- lt,
1690
- ft,
1691
- ht,
1692
- yt,
1689
+ st,
1690
+ ut,
1691
+ pt,
1692
+ _t,
1693
+ Ct,
1694
+ wt,
1693
1695
  Tt,
1694
- Et,
1695
- Dt,
1696
1696
  {
1697
- meta: Ot,
1697
+ meta: Et,
1698
1698
  block(e, t, n) {
1699
- let r = kt(e);
1699
+ let r = Dt(e);
1700
1700
  return r === null || r >= n.thresholds.minFontSize ? null : {
1701
1701
  blockId: e.id,
1702
1702
  params: {
@@ -1713,8 +1713,8 @@ var q = [
1713
1713
  },
1714
1714
  block(e, t, n) {
1715
1715
  if (!a(e)) return null;
1716
- let r = y(e.text ?? "");
1717
- return r === "" || !_(n.locale).vagueButtonLabels.includes(r) ? null : {
1716
+ let r = je(e.text ?? "");
1717
+ return r === "" || !b(n.locale).vagueButtonLabels.includes(r) ? null : {
1718
1718
  blockId: e.id,
1719
1719
  params: { text: e.text }
1720
1720
  };
@@ -1746,7 +1746,7 @@ var q = [
1746
1746
  },
1747
1747
  block(e) {
1748
1748
  if (!a(e)) return null;
1749
- let t = ae(e.textColor, e.backgroundColor);
1749
+ let t = u(e.textColor, e.backgroundColor);
1750
1750
  if (Number.isNaN(t)) return null;
1751
1751
  let n = e.fontSize >= 24 ? 3 : 4.5;
1752
1752
  return t >= n ? null : {
@@ -1768,38 +1768,38 @@ var q = [
1768
1768
  }
1769
1769
  }
1770
1770
  ];
1771
- function At(e, t = {}) {
1772
- return t.disabled === !0 || t.accessibility === !1 ? [] : p(e, q, fe(t.locale, t.accessibility ?? {}, q), (e, t, n) => be(e, t, n));
1771
+ function kt(e, t = {}) {
1772
+ return t.disabled === !0 || t.accessibility === !1 ? [] : m(e, Ot, de(t.locale, t.accessibility ?? {}, Ot), (e, t, n) => ve(e, t, n));
1773
1773
  }
1774
1774
  //#endregion
1775
1775
  //#region ../quality/src/structure/messages/de.ts
1776
- var jt = /* @__PURE__ */ e({ default: () => Mt }), Mt = {
1776
+ var At = /* @__PURE__ */ e({ default: () => jt }), jt = {
1777
1777
  "structure.duplicate-block-id": "Block-ID erscheint {count}-mal im Baum. Jeder Block muss eine eindeutige ID haben.",
1778
1778
  "structure.section-column-mismatch": "Sektion verwendet Layout „{layout}\" (erwartet {expected} Spalten), hat aber {actual}. Deutet auf beschädigten Zustand hin.",
1779
1779
  "structure.nested-section": "Sektion ist in einer anderen Sektion verschachtelt. Sektionen können nicht verschachtelt werden – der Renderer wird sich falsch verhalten.",
1780
1780
  "structure.empty-section": "Sektion enthält keine Blöcke. Entferne sie oder füge Inhalt hinzu.",
1781
1781
  "structure.empty-column": "Spalte {columnIndex} dieser Sektion ist leer. Füge Inhalt hinzu oder reduziere die Spaltenanzahl."
1782
- }, Nt = /* @__PURE__ */ e({ default: () => J }), J = {
1782
+ }, Mt = /* @__PURE__ */ e({ default: () => Y }), Y = {
1783
1783
  "structure.duplicate-block-id": "Block id appears {count} times in the tree. Each block must have a unique id.",
1784
1784
  "structure.section-column-mismatch": "Section uses layout \"{layout}\" (expects {expected} columns) but has {actual}. Indicates corrupted state.",
1785
1785
  "structure.nested-section": "Section is nested inside another section. Sections cannot nest — the renderer will misbehave.",
1786
1786
  "structure.empty-section": "Section has no blocks. Remove it or add content.",
1787
1787
  "structure.empty-column": "Column {columnIndex} of this section is empty. Add content or reduce the column count."
1788
- }, Pt = /* #__PURE__ */ Object.assign({
1789
- "./de.ts": jt,
1790
- "./en.ts": Nt
1791
- }), Y = {};
1792
- for (let e in Pt) {
1788
+ }, Nt = /* #__PURE__ */ Object.assign({
1789
+ "./de.ts": At,
1790
+ "./en.ts": Mt
1791
+ }), X = {};
1792
+ for (let e in Nt) {
1793
1793
  let t = /\.\/([^/]+)\.ts$/.exec(e);
1794
1794
  if (!t) continue;
1795
1795
  let n = t[1];
1796
- n !== "index" && (Y[n] = Pt[e].default);
1796
+ n !== "index" && (X[n] = Nt[e].default);
1797
1797
  }
1798
- function Ft(e) {
1799
- return Y[e.split("-")[0]?.toLowerCase() ?? "en"] ?? Y.en ?? J;
1798
+ function Pt(e) {
1799
+ return X[e.split("-")[0]?.toLowerCase() ?? "en"] ?? X.en ?? Y;
1800
1800
  }
1801
- function It(e, t, n) {
1802
- let r = Ft(e)[t] ?? J[t];
1801
+ function Ft(e, t, n) {
1802
+ let r = Pt(e)[t] ?? Y[t];
1803
1803
  return n ? r.replace(/\{(\w+)\}/g, (e, t) => {
1804
1804
  let r = n[t];
1805
1805
  return r === void 0 ? `{${t}}` : String(r);
@@ -1807,18 +1807,18 @@ function It(e, t, n) {
1807
1807
  }
1808
1808
  //#endregion
1809
1809
  //#region ../quality/src/structure/rules/duplicate-block-id.ts
1810
- var Lt = {
1810
+ var It = {
1811
1811
  id: "structure.duplicate-block-id",
1812
1812
  severity: "error"
1813
1813
  };
1814
- function Rt(e, t) {
1815
- for (let n of e) if (t.set(n.id, (t.get(n.id) ?? 0) + 1), c(n)) for (let e of n.children) Rt(e, t);
1814
+ function Lt(e, n) {
1815
+ for (let r of e) if (n.set(r.id, (n.get(r.id) ?? 0) + 1), t(r)) for (let e of r.children) Lt(e, n);
1816
1816
  }
1817
- var zt = {
1818
- meta: Lt,
1817
+ var Rt = {
1818
+ meta: It,
1819
1819
  template(e) {
1820
1820
  let t = /* @__PURE__ */ new Map();
1821
- Rt(e.blocks, t);
1821
+ Lt(e.blocks, t);
1822
1822
  let n = [];
1823
1823
  for (let [e, r] of t) r > 1 && n.push({
1824
1824
  blockId: e,
@@ -1826,28 +1826,28 @@ var zt = {
1826
1826
  });
1827
1827
  return n;
1828
1828
  }
1829
- }, Bt = {
1829
+ }, zt = {
1830
1830
  id: "structure.empty-column",
1831
1831
  severity: "warning"
1832
1832
  };
1833
- function X(e, t) {
1834
- for (let n of e) {
1835
- if (!c(n)) continue;
1836
- let e = n;
1837
- e.children.length > 1 && e.children.forEach((n, r) => {
1838
- n.length === 0 && t.push({
1833
+ function Bt(e, n) {
1834
+ for (let r of e) {
1835
+ if (!t(r)) continue;
1836
+ let e = r;
1837
+ e.children.length > 1 && e.children.forEach((t, r) => {
1838
+ t.length === 0 && n.push({
1839
1839
  blockId: e.id,
1840
1840
  params: { columnIndex: r + 1 }
1841
1841
  });
1842
1842
  });
1843
- for (let n of e.children) X(n, t);
1843
+ for (let t of e.children) Bt(t, n);
1844
1844
  }
1845
1845
  }
1846
1846
  var Vt = {
1847
- meta: Bt,
1847
+ meta: zt,
1848
1848
  template(e) {
1849
1849
  let t = [];
1850
- return X(e.blocks, t), t;
1850
+ return Bt(e.blocks, t), t;
1851
1851
  }
1852
1852
  }, Ht = {
1853
1853
  id: "structure.empty-section",
@@ -1859,14 +1859,14 @@ function Ut(e) {
1859
1859
  var Wt = {
1860
1860
  meta: Ht,
1861
1861
  block(e) {
1862
- if (!c(e)) return null;
1863
- let t = e;
1864
- return Ut(t) ? {
1865
- blockId: t.id,
1862
+ if (!t(e)) return null;
1863
+ let n = e;
1864
+ return Ut(n) ? {
1865
+ blockId: n.id,
1866
1866
  fix: {
1867
1867
  description: "Remove the empty section",
1868
1868
  apply: (e) => {
1869
- e.removeBlock(t.id);
1869
+ e.removeBlock(n.id);
1870
1870
  }
1871
1871
  }
1872
1872
  } : null;
@@ -1876,10 +1876,10 @@ var Wt = {
1876
1876
  id: "structure.nested-section",
1877
1877
  severity: "error"
1878
1878
  },
1879
- block(e, t) {
1880
- return !c(e) || t.section === null ? null : {
1879
+ block(e, n) {
1880
+ return !t(e) || n.section === null ? null : {
1881
1881
  blockId: e.id,
1882
- params: { parentId: t.section.id }
1882
+ params: { parentId: n.section.id }
1883
1883
  };
1884
1884
  }
1885
1885
  }, Kt = {
@@ -1892,28 +1892,28 @@ function qt(e) {
1892
1892
  //#endregion
1893
1893
  //#region ../quality/src/structure/index.ts
1894
1894
  var Jt = [
1895
- zt,
1895
+ Rt,
1896
1896
  Wt,
1897
1897
  Vt,
1898
1898
  Gt,
1899
1899
  {
1900
1900
  meta: Kt,
1901
1901
  block(e) {
1902
- if (!c(e)) return null;
1903
- let t = e, n = qt(t.columns), r = t.children.length;
1904
- return r === n ? null : {
1905
- blockId: t.id,
1902
+ if (!t(e)) return null;
1903
+ let n = e, r = qt(n.columns), i = n.children.length;
1904
+ return i === r ? null : {
1905
+ blockId: n.id,
1906
1906
  params: {
1907
- layout: t.columns,
1908
- expected: n,
1909
- actual: r
1907
+ layout: n.columns,
1908
+ expected: r,
1909
+ actual: i
1910
1910
  }
1911
1911
  };
1912
1912
  }
1913
1913
  }
1914
1914
  ];
1915
1915
  function Yt(e, t = {}) {
1916
- return t.disabled === !0 || t.structure === !1 ? [] : p(e, Jt, pe(t.locale, t.structure ?? {}, Jt), (e, t, n) => It(e, t, n));
1916
+ return t.disabled === !0 || t.structure === !1 ? [] : m(e, Jt, fe(t.locale, t.structure ?? {}, Jt), (e, t, n) => Ft(e, t, n));
1917
1917
  }
1918
1918
  //#endregion
1919
1919
  //#region ../quality/src/links/messages/de.ts
@@ -1952,19 +1952,19 @@ function tn(e, t, n) {
1952
1952
  //#endregion
1953
1953
  //#region ../quality/src/url-walker.ts
1954
1954
  function $(e) {
1955
- let c = [];
1956
- return f(e, (e) => {
1957
- if (i(e) || o(e) || t(e)) {
1958
- for (let t of H(e.content)) c.push({
1959
- url: t.href,
1955
+ let t = [];
1956
+ return ue(e, (e) => {
1957
+ if (l(e) || c(e) || s(e)) {
1958
+ for (let n of W(e.content)) t.push({
1959
+ url: n.href,
1960
1960
  blockId: e.id,
1961
1961
  source: "anchor",
1962
- label: t.text
1962
+ label: n.text
1963
1963
  });
1964
1964
  return;
1965
1965
  }
1966
1966
  if (a(e)) {
1967
- c.push({
1967
+ t.push({
1968
1968
  url: e.url,
1969
1969
  blockId: e.id,
1970
1970
  source: "button",
@@ -1972,8 +1972,8 @@ function $(e) {
1972
1972
  });
1973
1973
  return;
1974
1974
  }
1975
- if (s(e)) {
1976
- e.linkUrl && e.linkUrl !== "" && c.push({
1975
+ if (n(e)) {
1976
+ e.linkUrl && e.linkUrl !== "" && t.push({
1977
1977
  url: e.linkUrl,
1978
1978
  blockId: e.id,
1979
1979
  source: "image-link",
@@ -1981,8 +1981,8 @@ function $(e) {
1981
1981
  });
1982
1982
  return;
1983
1983
  }
1984
- if (te(e)) {
1985
- c.push({
1984
+ if (ee(e)) {
1985
+ t.push({
1986
1986
  url: e.url,
1987
1987
  blockId: e.id,
1988
1988
  source: "video",
@@ -1990,25 +1990,25 @@ function $(e) {
1990
1990
  });
1991
1991
  return;
1992
1992
  }
1993
- if (r(e)) {
1994
- for (let t of e.items) c.push({
1995
- url: t.url,
1993
+ if (o(e)) {
1994
+ for (let n of e.items) t.push({
1995
+ url: n.url,
1996
1996
  blockId: e.id,
1997
1997
  source: "menu-item",
1998
- label: t.text
1998
+ label: n.text
1999
1999
  });
2000
2000
  return;
2001
2001
  }
2002
- if (n(e)) {
2003
- for (let t of e.icons) c.push({
2004
- url: t.url,
2002
+ if (i(e)) {
2003
+ for (let n of e.icons) t.push({
2004
+ url: n.url,
2005
2005
  blockId: e.id,
2006
2006
  source: "social-icon",
2007
- label: t.platform
2007
+ label: n.platform
2008
2008
  });
2009
2009
  return;
2010
2010
  }
2011
- }), c;
2011
+ }), t;
2012
2012
  }
2013
2013
  //#endregion
2014
2014
  //#region ../quality/src/links/rules/javascript-protocol.ts
@@ -2155,7 +2155,7 @@ var Cn = [
2155
2155
  }
2156
2156
  ];
2157
2157
  function wn(e, t = {}) {
2158
- return t.disabled === !0 || t.links === !1 ? [] : p(e, Cn, me(t.locale, t.links ?? {}, Cn), (e, t, n) => tn(e, t, n));
2158
+ return t.disabled === !0 || t.links === !1 ? [] : m(e, Cn, pe(t.locale, t.links ?? {}, Cn), (e, t, n) => tn(e, t, n));
2159
2159
  }
2160
2160
  //#endregion
2161
2161
  //#region ../quality/src/util.ts
@@ -2166,7 +2166,7 @@ function Tn(e) {
2166
2166
  //#region ../quality/src/lint-template.ts
2167
2167
  function En(e, t = {}) {
2168
2168
  return Tn(t) ? [] : [
2169
- ...At(e, t),
2169
+ ...kt(e, t),
2170
2170
  ...Yt(e, t),
2171
2171
  ...wn(e, t)
2172
2172
  ];
@@ -2177,4 +2177,4 @@ var Dn = /* @__PURE__ */ e({ lintTemplate: () => En });
2177
2177
  //#endregion
2178
2178
  export { Dn as t };
2179
2179
 
2180
- //# sourceMappingURL=quality-Dd2iYgRf.js.map
2180
+ //# sourceMappingURL=quality-BftAn_AJ.js.map