@blotch/dolan 22.2.3 → 22.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/add.js +9 -1
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/add.test.js +38 -3
- package/dist/commands/add.test.js.map +1 -1
- package/dist/commands/doctor.js +258 -21
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/doctor.test.js +425 -11
- package/dist/commands/doctor.test.js.map +1 -1
- package/dist/commands/init.d.ts +2 -2
- package/dist/commands/init.js +38 -18
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/init.test.js +105 -2
- package/dist/commands/init.test.js.map +1 -1
- package/dist/commands/theme.js +1 -1
- package/dist/commands/theme.js.map +1 -1
- package/dist/commands/update.d.ts +7 -0
- package/dist/commands/update.js +194 -50
- package/dist/commands/update.js.map +1 -1
- package/dist/commands/update.test.js +570 -3
- package/dist/commands/update.test.js.map +1 -1
- package/dist/lockfile.d.ts +17 -0
- package/dist/lockfile.js +56 -1
- package/dist/lockfile.js.map +1 -1
- package/dist/lockfile.test.d.ts +1 -0
- package/dist/lockfile.test.js +65 -0
- package/dist/lockfile.test.js.map +1 -0
- package/dist/registry.d.ts +6 -0
- package/dist/registry.js +119 -11
- package/dist/registry.js.map +1 -1
- package/dist/registry.test.js +61 -6
- package/dist/registry.test.js.map +1 -1
- package/dist/test-utils.d.ts +27 -0
- package/dist/test-utils.js +45 -1
- package/dist/test-utils.js.map +1 -1
- package/dist/testing/fire-lynx-event.d.ts +14 -0
- package/dist/testing/fire-lynx-event.js +19 -0
- package/dist/testing/fire-lynx-event.js.map +1 -0
- package/dist/testing/fire-lynx-event.test.d.ts +1 -0
- package/dist/testing/fire-lynx-event.test.js +44 -0
- package/dist/testing/fire-lynx-event.test.js.map +1 -0
- package/dist/testing/lynx-main-thread.d.ts +22 -0
- package/dist/testing/lynx-main-thread.js +11 -0
- package/dist/testing/lynx-main-thread.js.map +1 -0
- package/dist/testing/lynx-main-thread.test.d.ts +1 -0
- package/dist/testing/lynx-main-thread.test.js +24 -0
- package/dist/testing/lynx-main-thread.test.js.map +1 -0
- package/dist/testing/set-input-signal.d.ts +5 -4
- package/dist/testing/set-input-signal.js +5 -4
- package/dist/testing/set-input-signal.js.map +1 -1
- package/dist/ui/boolean-inputs.test.ts +76 -0
- package/dist/ui/components/accordion/accordion.test.ts +158 -144
- package/dist/ui/components/accordion/accordion.ts +19 -14
- package/dist/ui/components/action-sheet/action-sheet.test.ts +637 -183
- package/dist/ui/components/action-sheet/action-sheet.ts +339 -55
- package/dist/ui/components/action-sheet/index.ts +1 -0
- package/dist/ui/components/alert/alert.test.ts +67 -19
- package/dist/ui/components/alert/alert.ts +14 -16
- package/dist/ui/components/alert-dialog/alert-dialog.test.ts +740 -129
- package/dist/ui/components/alert-dialog/alert-dialog.ts +672 -58
- package/dist/ui/components/alert-dialog/index.ts +5 -0
- package/dist/ui/components/area-chart/area-chart.test.ts +81 -1
- package/dist/ui/components/area-chart/area-chart.ts +3 -2
- package/dist/ui/components/avatar/avatar.test.ts +89 -45
- package/dist/ui/components/badge/badge.test.ts +57 -23
- package/dist/ui/components/badge/badge.ts +14 -15
- package/dist/ui/components/bar-chart/bar-chart.test.ts +82 -1
- package/dist/ui/components/bottom-sheet/bottom-sheet.test.ts +1314 -273
- package/dist/ui/components/bottom-sheet/bottom-sheet.ts +1046 -119
- package/dist/ui/components/bottom-sheet/index.ts +7 -1
- package/dist/ui/components/button/button.test.ts +646 -2
- package/dist/ui/components/button/button.ts +443 -64
- package/dist/ui/components/button/index.ts +2 -0
- package/dist/ui/components/button-group/button-group.test.ts +528 -2
- package/dist/ui/components/button-group/button-group.ts +428 -70
- package/dist/ui/components/button-group/index.ts +3 -0
- package/dist/ui/components/candlestick-chart/candlestick-chart.test.ts +82 -1
- package/dist/ui/components/card/card.test.ts +97 -61
- package/dist/ui/components/card/card.ts +2 -1
- package/dist/ui/components/chart/chart-presets.test.ts +197 -1
- package/dist/ui/components/chart/chart-presets.ts +14 -7
- package/dist/ui/components/chart/chart-theme.ts +12 -0
- package/dist/ui/components/chart/chart.test.ts +1031 -0
- package/dist/ui/components/chart/chart.ts +66 -46
- package/dist/ui/components/checkbox/checkbox.test.ts +124 -42
- package/dist/ui/components/checkbox/checkbox.ts +25 -24
- package/dist/ui/components/collapsible/collapsible.test.ts +158 -81
- package/dist/ui/components/collapsible/collapsible.ts +21 -15
- package/dist/ui/components/context-menu/context-menu.test.ts +224 -0
- package/dist/ui/components/context-menu/context-menu.ts +110 -0
- package/dist/ui/components/context-menu/index.ts +1 -0
- package/dist/ui/components/dialog/dialog.test.ts +210 -152
- package/dist/ui/components/dialog/dialog.ts +35 -29
- package/dist/ui/components/dock/dock-scroll.test.ts +130 -0
- package/dist/ui/components/dock/dock-scroll.ts +142 -0
- package/dist/ui/components/dock/dock-search.test.ts +594 -0
- package/dist/ui/components/dock/dock.test.ts +752 -0
- package/dist/ui/components/dock/dock.ts +1438 -0
- package/dist/ui/components/dock/index.ts +2 -0
- package/dist/ui/components/dynamic-color/dynamic-color.test.ts +144 -0
- package/dist/ui/components/dynamic-color/dynamic-color.ts +146 -0
- package/dist/ui/components/dynamic-color/index.ts +5 -0
- package/dist/ui/components/empty-state/empty-state.test.ts +28 -39
- package/dist/ui/components/glass/concentric-radius.test.ts +13 -0
- package/dist/ui/components/glass/concentric-radius.ts +17 -0
- package/dist/ui/components/glass/glass-design.test.ts +78 -0
- package/dist/ui/components/glass/glass-design.ts +119 -0
- package/dist/ui/components/glass/glass.test.ts +376 -0
- package/dist/ui/components/glass/glass.ts +430 -0
- package/dist/ui/components/glass/index.ts +19 -0
- package/dist/ui/components/icon/icon-theme.test.ts +64 -0
- package/dist/ui/components/icon/icon-theme.ts +70 -16
- package/dist/ui/components/icon/icon.test.ts +52 -41
- package/dist/ui/components/input/input.test.ts +178 -101
- package/dist/ui/components/input/input.ts +17 -13
- package/dist/ui/components/label/label.test.ts +11 -24
- package/dist/ui/components/label/label.ts +8 -2
- package/dist/ui/components/line-chart/line-chart.test.ts +76 -1
- package/dist/ui/components/line-chart/line-chart.ts +3 -2
- package/dist/ui/components/list/list.test.ts +80 -49
- package/dist/ui/components/list/list.ts +5 -4
- package/dist/ui/components/menu/index.ts +25 -0
- package/dist/ui/components/menu/menu-placement.test.ts +153 -0
- package/dist/ui/components/menu/menu-placement.ts +159 -0
- package/dist/ui/components/menu/menu-popup.test.ts +636 -0
- package/dist/ui/components/menu/menu-popup.ts +565 -0
- package/dist/ui/components/menu/menu.test.ts +523 -0
- package/dist/ui/components/menu/menu.ts +455 -0
- package/dist/ui/components/nav-drawer/nav-drawer.test.ts +425 -260
- package/dist/ui/components/nav-drawer/nav-drawer.ts +75 -58
- package/dist/ui/components/navigation-bar/index.ts +1 -0
- package/dist/ui/components/navigation-bar/navigation-bar.test.ts +425 -0
- package/dist/ui/components/navigation-bar/navigation-bar.ts +411 -0
- package/dist/ui/components/pagination/pagination.test.ts +136 -86
- package/dist/ui/components/popover/index.ts +9 -0
- package/dist/ui/components/popover/popover-panel.test.ts +735 -0
- package/dist/ui/components/popover/popover-panel.ts +603 -0
- package/dist/ui/components/popover/popover.test.ts +286 -0
- package/dist/ui/components/popover/popover.ts +207 -0
- package/dist/ui/components/progress/progress.test.ts +102 -46
- package/dist/ui/components/progress/progress.ts +54 -55
- package/dist/ui/components/radio-group/radio-group.test.ts +128 -83
- package/dist/ui/components/radio-group/radio-group.ts +26 -25
- package/dist/ui/components/scatter-chart/scatter-chart.test.ts +74 -1
- package/dist/ui/components/scroll-area/scroll-area.test.ts +72 -36
- package/dist/ui/components/scroll-area/scroll-area.ts +4 -3
- package/dist/ui/components/search-field/index.ts +15 -0
- package/dist/ui/components/search-field/keyboard.test.ts +147 -0
- package/dist/ui/components/search-field/keyboard.ts +123 -0
- package/dist/ui/components/search-field/search-field.test.ts +549 -0
- package/dist/ui/components/search-field/search-field.ts +628 -0
- package/dist/ui/components/segmented-control/index.ts +8 -0
- package/dist/ui/components/segmented-control/segmented-control.test.ts +861 -0
- package/dist/ui/components/segmented-control/segmented-control.ts +884 -0
- package/dist/ui/components/select/select.test.ts +138 -78
- package/dist/ui/components/select/select.ts +19 -12
- package/dist/ui/components/separator/separator.test.ts +18 -17
- package/dist/ui/components/sheet/sheet.test.ts +151 -11
- package/dist/ui/components/sheet/sheet.ts +68 -5
- package/dist/ui/components/skeleton/skeleton.test.ts +24 -7
- package/dist/ui/components/skeleton/skeleton.ts +10 -16
- package/dist/ui/components/slider/index.ts +1 -0
- package/dist/ui/components/slider/slider.test.ts +695 -0
- package/dist/ui/components/slider/slider.ts +901 -0
- package/dist/ui/components/spinner/spinner.test.ts +64 -46
- package/dist/ui/components/spinner/spinner.ts +16 -19
- package/dist/ui/components/switch/index.ts +1 -1
- package/dist/ui/components/switch/switch.test.ts +534 -48
- package/dist/ui/components/switch/switch.ts +613 -48
- package/dist/ui/components/tab-bar/index.ts +1 -0
- package/dist/ui/components/tab-bar/tab-bar.test.ts +280 -0
- package/dist/ui/components/tab-bar/tab-bar.ts +230 -0
- package/dist/ui/components/tabs/index.ts +7 -1
- package/dist/ui/components/tabs/tabs.test.ts +484 -150
- package/dist/ui/components/tabs/tabs.ts +344 -149
- package/dist/ui/components/textarea/textarea.test.ts +206 -100
- package/dist/ui/components/textarea/textarea.ts +16 -13
- package/dist/ui/components/toast/toast.test.ts +434 -350
- package/dist/ui/components/toast/toast.ts +42 -51
- package/dist/ui/components/toggle/index.ts +1 -0
- package/dist/ui/components/toggle/toggle.test.ts +559 -146
- package/dist/ui/components/toggle/toggle.ts +241 -26
- package/dist/ui/components/toolbar/bar-scroll.test.ts +310 -0
- package/dist/ui/components/toolbar/bar-scroll.ts +372 -0
- package/dist/ui/components/toolbar/index.ts +12 -0
- package/dist/ui/components/toolbar/toolbar.test.ts +438 -0
- package/dist/ui/components/toolbar/toolbar.ts +535 -0
- package/dist/ui/theme/chart-colors.test.ts +8 -3
- package/dist/ui/theme/dark.css +38 -2
- package/dist/ui/theme/default.css +55 -7
- package/dist/ui/theme/icon-colors.test.ts +8 -3
- package/dist/ui/theme/rgb-channels.test.ts +84 -0
- package/dist/ui/theme/tailwind-build.test.ts +114 -0
- package/dist/ui/theme/tailwind-css.test.ts +83 -0
- package/dist/ui/theme/tailwind-plugin.test.ts +42 -2
- package/dist/ui/theme/tailwind-plugin.ts +93 -29
- package/dist/ui/theme/tailwind.css +113 -0
- package/dist/ui/utils/animate.test.ts +13 -1
- package/dist/utils/analyze.d.ts +19 -0
- package/dist/utils/analyze.js +16 -0
- package/dist/utils/analyze.js.map +1 -1
- package/dist/utils/analyze.test.js +14 -1
- package/dist/utils/analyze.test.js.map +1 -1
- package/dist/utils/installed.d.ts +25 -1
- package/dist/utils/installed.js +33 -0
- package/dist/utils/installed.js.map +1 -1
- package/dist/utils/installed.test.js +55 -1
- package/dist/utils/installed.test.js.map +1 -1
- package/dist/utils/resolve-paths.d.ts +4 -4
- package/dist/utils/resolve-paths.js +5 -7
- package/dist/utils/resolve-paths.js.map +1 -1
- package/dist/utils/resolve-paths.test.js +9 -5
- package/dist/utils/resolve-paths.test.js.map +1 -1
- package/dist/utils/tailwind.d.ts +45 -0
- package/dist/utils/tailwind.js +90 -0
- package/dist/utils/tailwind.js.map +1 -0
- package/dist/utils/tailwind.test.d.ts +1 -0
- package/dist/utils/tailwind.test.js +134 -0
- package/dist/utils/tailwind.test.js.map +1 -0
- package/package.json +9 -1
- package/dist/ui/components/area-chart/area-chart-render.test.ts +0 -63
- package/dist/ui/components/bar-chart/bar-chart-render.test.ts +0 -58
- package/dist/ui/components/button/button-render.test.ts +0 -132
- package/dist/ui/components/button-group/button-group-render.test.ts +0 -146
- package/dist/ui/components/candlestick-chart/candlestick-chart-render.test.ts +0 -59
- package/dist/ui/components/chart/chart-render.test.ts +0 -730
- package/dist/ui/components/line-chart/line-chart-render.test.ts +0 -83
- package/dist/ui/components/scatter-chart/scatter-chart-render.test.ts +0 -64
package/dist/commands/update.js
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
import * as p from '@clack/prompts';
|
|
2
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
+
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync, } from 'node:fs';
|
|
3
3
|
import { resolve, join } from 'node:path';
|
|
4
4
|
import pc from 'picocolors';
|
|
5
|
+
import { themeFilesFor, usesTailwind4 } from '../utils/tailwind.js';
|
|
5
6
|
import { configExists, readConfig } from '../config.js';
|
|
6
7
|
import { resolveDependencies } from '../registry.js';
|
|
7
8
|
import { getComponentFiles, getComponentSourceDir, getUiSourceDir, rewriteImports, } from '../utils/resolve-paths.js';
|
|
8
9
|
import { formatContent } from '../utils/format.js';
|
|
9
|
-
import { trackedComponents, untrackedComponents } from '../utils/installed.js';
|
|
10
|
+
import { droppedFiles, droppedThemeFiles, trackedComponents, untrackedComponents, } from '../utils/installed.js';
|
|
10
11
|
import { isInteractive } from '../utils/interactive.js';
|
|
11
12
|
import { copiesTests } from '../utils/packages.js';
|
|
12
13
|
import { installComponentPackages } from './install-packages.js';
|
|
13
|
-
import { getOrCreateLockfile, hashContent, writeLockfile, } from '../lockfile.js';
|
|
14
|
-
import { analyzeFile, formatDiff, formatHunk, getHunks, applySelectedHunks, summarizeComponent, STATUS_ICONS, STATUS_LABELS, } from '../utils/analyze.js';
|
|
14
|
+
import { getOrCreateLockfile, hashContent, themeBase, writeLockfile, } from '../lockfile.js';
|
|
15
|
+
import { analyzeFile, analyzeRemovedFile, formatDiff, formatHunk, getHunks, applySelectedHunks, summarizeComponent, STATUS_ICONS, STATUS_LABELS, } from '../utils/analyze.js';
|
|
15
16
|
/**
|
|
16
17
|
* Walks through each hunk in a diff and asks the user to accept or reject it.
|
|
17
18
|
* "Show more context" re-computes the hunk with doubled context lines so the
|
|
@@ -95,49 +96,69 @@ const reviewHunks = async (componentName, fileName, currentContent, newContent)
|
|
|
95
96
|
* upstream", while auto-updates and new files in selective mode get "apply /
|
|
96
97
|
* skip for now". The "Show diff" option loops back into the same prompt so the
|
|
97
98
|
* user can inspect before committing. "Review by hunk" lets the user
|
|
98
|
-
* accept/reject individual changes within the file.
|
|
99
|
+
* accept/reject individual changes within the file. For a file upstream no
|
|
100
|
+
* longer ships, taking upstream's version deletes it.
|
|
99
101
|
*/
|
|
100
102
|
const reviewFile = async (componentName, analysis) => {
|
|
101
103
|
const isNewFile = analysis.status === 'new-upstream';
|
|
102
104
|
const isConflict = analysis.status === 'conflict';
|
|
103
105
|
const isUserModified = analysis.status === 'user-modified';
|
|
104
|
-
const
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
?
|
|
108
|
-
:
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
106
|
+
const isRemoved = analysis.removed !== undefined;
|
|
107
|
+
const suffix = isRemoved
|
|
108
|
+
? isConflict
|
|
109
|
+
? `— you modified it, and ${analysis.removed}`
|
|
110
|
+
: `— ${analysis.removed}`
|
|
111
|
+
: isConflict
|
|
112
|
+
? '— how to resolve?'
|
|
113
|
+
: isNewFile
|
|
114
|
+
? '— new file from upstream'
|
|
115
|
+
: isUserModified
|
|
116
|
+
? '— you modified this file'
|
|
117
|
+
: '— upstream changed';
|
|
118
|
+
const applyOption = isRemoved
|
|
112
119
|
? {
|
|
113
120
|
value: 'upstream',
|
|
114
|
-
label: '
|
|
115
|
-
hint:
|
|
116
|
-
? 'revert to upstream'
|
|
117
|
-
: 'discard my changes for this file',
|
|
121
|
+
label: 'Delete it',
|
|
122
|
+
hint: isConflict ? 'discard my changes' : 'remove the file',
|
|
118
123
|
}
|
|
119
|
-
:
|
|
124
|
+
: isConflict || isUserModified
|
|
120
125
|
? {
|
|
121
126
|
value: 'upstream',
|
|
122
|
-
label: '
|
|
123
|
-
hint:
|
|
127
|
+
label: 'Take upstream version',
|
|
128
|
+
hint: isUserModified
|
|
129
|
+
? 'revert to upstream'
|
|
130
|
+
: 'discard my changes for this file',
|
|
124
131
|
}
|
|
125
|
-
:
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
132
|
+
: isNewFile
|
|
133
|
+
? {
|
|
134
|
+
value: 'upstream',
|
|
135
|
+
label: 'Add this file',
|
|
136
|
+
hint: 'create the file',
|
|
137
|
+
}
|
|
138
|
+
: {
|
|
139
|
+
value: 'upstream',
|
|
140
|
+
label: 'Apply update',
|
|
141
|
+
hint: 'overwrite with upstream',
|
|
142
|
+
};
|
|
143
|
+
// Keeping a file upstream no longer ships makes it the app's own: there's
|
|
144
|
+
// nothing left to merge it with, so dolan stops tracking it.
|
|
145
|
+
const skipOption = isRemoved && isConflict
|
|
131
146
|
? {
|
|
132
147
|
value: 'keep',
|
|
133
148
|
label: 'Keep my version',
|
|
134
|
-
hint: '
|
|
149
|
+
hint: 'keep it as my own file',
|
|
135
150
|
}
|
|
136
|
-
:
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
151
|
+
: isConflict || isUserModified
|
|
152
|
+
? {
|
|
153
|
+
value: 'keep',
|
|
154
|
+
label: 'Keep my version',
|
|
155
|
+
hint: 'skip upstream changes for this file',
|
|
156
|
+
}
|
|
157
|
+
: {
|
|
158
|
+
value: 'keep',
|
|
159
|
+
label: 'Skip for now',
|
|
160
|
+
hint: 'keep current, ask again next time',
|
|
161
|
+
};
|
|
141
162
|
const options = [
|
|
142
163
|
{
|
|
143
164
|
value: 'diff',
|
|
@@ -147,8 +168,9 @@ const reviewFile = async (componentName, analysis) => {
|
|
|
147
168
|
skipOption,
|
|
148
169
|
applyOption,
|
|
149
170
|
];
|
|
150
|
-
// New files have nothing to compare hunk-by-hunk — it's all new content
|
|
151
|
-
|
|
171
|
+
// New files have nothing to compare hunk-by-hunk — it's all new content —
|
|
172
|
+
// and a deletion is all or nothing.
|
|
173
|
+
if (!isNewFile && !isRemoved) {
|
|
152
174
|
options.push({
|
|
153
175
|
value: 'hunk-review',
|
|
154
176
|
label: 'Review by hunk',
|
|
@@ -185,6 +207,15 @@ const reviewFile = async (componentName, analysis) => {
|
|
|
185
207
|
return { decision: choice };
|
|
186
208
|
}
|
|
187
209
|
};
|
|
210
|
+
/**
|
|
211
|
+
* The summary line for a file that taking upstream's version deletes, with
|
|
212
|
+
* the reason (see FileAnalysis.removed). An untouched one gets a minus, as a
|
|
213
|
+
* new file gets a plus: the auto-update arrow would read like an ordinary
|
|
214
|
+
* update.
|
|
215
|
+
*/
|
|
216
|
+
const removalLine = (path, file) => file.status === 'conflict'
|
|
217
|
+
? `${STATUS_ICONS.conflict} ${path} — ${pc.red(`${file.removed}, and you modified it`)}`
|
|
218
|
+
: `${pc.blue('−')} ${path} — ${pc.blue(`${file.removed} → delete`)}`;
|
|
188
219
|
/**
|
|
189
220
|
* Three-way merge update for installed components, modeled on the same flow
|
|
190
221
|
* git/Mercurial use when applying upstream changes to a fork:
|
|
@@ -203,6 +234,13 @@ const reviewFile = async (componentName, analysis) => {
|
|
|
203
234
|
* - **conflict** — current differs from base AND upstream differs
|
|
204
235
|
* from base (both sides moved → prompt the user).
|
|
205
236
|
*
|
|
237
|
+
* A file the lockfile tracks that upstream no longer ships gets the same
|
|
238
|
+
* statuses from `analyzeRemovedFile`, with "no file" as upstream's version:
|
|
239
|
+
* taking it deletes the file and drops its lockfile entry, so an untouched
|
|
240
|
+
* one goes as an auto-update and an edited one is a conflict. So does a theme
|
|
241
|
+
* file for the Tailwind version the app no longer uses, such as the Tailwind 3
|
|
242
|
+
* plugin of an app that moved to Tailwind 4.
|
|
243
|
+
*
|
|
206
244
|
* `--force` bypasses all prompts and overwrites every file with upstream,
|
|
207
245
|
* which is destructive but useful for resetting to a clean baseline.
|
|
208
246
|
*
|
|
@@ -281,6 +319,22 @@ export const updateCommand = async (options) => {
|
|
|
281
319
|
newContent,
|
|
282
320
|
});
|
|
283
321
|
}
|
|
322
|
+
// Files dolan copied that upstream has since stopped shipping. Taking
|
|
323
|
+
// upstream's version deletes them, by the same rules as a change: quietly
|
|
324
|
+
// when nobody edited them, after asking when someone did.
|
|
325
|
+
for (const file of droppedFiles(name, lockfile)) {
|
|
326
|
+
const destPath = join(destDir, file);
|
|
327
|
+
const currentContent = existsSync(destPath)
|
|
328
|
+
? readFileSync(destPath, 'utf-8')
|
|
329
|
+
: null;
|
|
330
|
+
fileAnalyses.push({
|
|
331
|
+
file,
|
|
332
|
+
status: analyzeRemovedFile(currentContent, lockedComponent[file].hash, hashContent),
|
|
333
|
+
currentContent: currentContent ?? '',
|
|
334
|
+
newContent: '',
|
|
335
|
+
removed: 'upstream no longer ships it',
|
|
336
|
+
});
|
|
337
|
+
}
|
|
284
338
|
componentAnalyses.push({ name, files: fileAnalyses });
|
|
285
339
|
}
|
|
286
340
|
// Analyze shared files (theme only — utils now come from @blotch/dolan)
|
|
@@ -288,8 +342,7 @@ export const updateCommand = async (options) => {
|
|
|
288
342
|
const sharedAnalyses = [];
|
|
289
343
|
// Theme files
|
|
290
344
|
const themeDir = resolve(cwd, config.aliases.theme);
|
|
291
|
-
const
|
|
292
|
-
for (const file of themeFiles) {
|
|
345
|
+
for (const file of themeFilesFor(cwd, { tests })) {
|
|
293
346
|
const src = join(uiSrc, 'theme', file);
|
|
294
347
|
if (!existsSync(src))
|
|
295
348
|
continue;
|
|
@@ -300,7 +353,9 @@ export const updateCommand = async (options) => {
|
|
|
300
353
|
const currentContent = existsSync(destPath)
|
|
301
354
|
? readFileSync(destPath, 'utf-8')
|
|
302
355
|
: null;
|
|
303
|
-
|
|
356
|
+
// A lockfile an older `init` wrote has no theme hashes, so an untouched
|
|
357
|
+
// copy gets its release's hash as the base instead (see themeBase).
|
|
358
|
+
const storedHash = themeBase(lockfile, file, currentContent);
|
|
304
359
|
sharedAnalyses.push({
|
|
305
360
|
file: `theme/${file}`,
|
|
306
361
|
status: analyzeFile(currentContent, newContent, storedHash, hashContent),
|
|
@@ -308,6 +363,27 @@ export const updateCommand = async (options) => {
|
|
|
308
363
|
newContent,
|
|
309
364
|
});
|
|
310
365
|
}
|
|
366
|
+
// Theme files dolan copied for the Tailwind version the app no longer
|
|
367
|
+
// uses: the plugin and its test after a move to Tailwind 4, or
|
|
368
|
+
// tailwind.css after a move back. As for a component's file upstream
|
|
369
|
+
// stopped shipping, taking upstream's version deletes them: quietly when
|
|
370
|
+
// nobody edited them, after asking when someone did.
|
|
371
|
+
const themeReason = `the app uses Tailwind ${usesTailwind4(cwd) ? 4 : 3}`;
|
|
372
|
+
for (const file of droppedThemeFiles(cwd, themeDir, lockfile)) {
|
|
373
|
+
const destPath = join(themeDir, file);
|
|
374
|
+
const currentContent = existsSync(destPath)
|
|
375
|
+
? readFileSync(destPath, 'utf-8')
|
|
376
|
+
: null;
|
|
377
|
+
sharedAnalyses.push({
|
|
378
|
+
file: `theme/${file}`,
|
|
379
|
+
status: analyzeRemovedFile(currentContent,
|
|
380
|
+
// Tracked, so it has a base (see trackedThemeFiles).
|
|
381
|
+
themeBase(lockfile, file, currentContent), hashContent),
|
|
382
|
+
currentContent: currentContent ?? '',
|
|
383
|
+
newContent: '',
|
|
384
|
+
removed: themeReason,
|
|
385
|
+
});
|
|
386
|
+
}
|
|
311
387
|
s.stop('Analysis complete.');
|
|
312
388
|
installComponentPackages(cwd, installed);
|
|
313
389
|
// --- Display summary ---
|
|
@@ -316,12 +392,23 @@ export const updateCommand = async (options) => {
|
|
|
316
392
|
for (const comp of componentAnalyses) {
|
|
317
393
|
const overall = summarizeComponent(comp);
|
|
318
394
|
p.log.message(` ${STATUS_ICONS[overall]} ${pc.bold(comp.name)} — ${STATUS_LABELS[overall]}`);
|
|
395
|
+
// Name each file a deletion would take, since the component's line
|
|
396
|
+
// reads like an ordinary update.
|
|
397
|
+
for (const file of comp.files) {
|
|
398
|
+
if (!file.removed || file.status === 'up-to-date')
|
|
399
|
+
continue;
|
|
400
|
+
p.log.message(` ${removalLine(`${comp.name}/${file.file}`, file)}`);
|
|
401
|
+
}
|
|
319
402
|
}
|
|
320
403
|
}
|
|
321
|
-
|
|
404
|
+
// A file to delete that's gone already has nothing left to show.
|
|
405
|
+
const sharedShown = sharedAnalyses.filter((file) => !(file.removed && file.status === 'up-to-date'));
|
|
406
|
+
if (sharedShown.length > 0) {
|
|
322
407
|
p.log.message(pc.bold('\nShared files:'));
|
|
323
|
-
for (const file of
|
|
324
|
-
p.log.message(` ${
|
|
408
|
+
for (const file of sharedShown) {
|
|
409
|
+
p.log.message(` ${file.removed
|
|
410
|
+
? removalLine(pc.bold(file.file), file)
|
|
411
|
+
: `${STATUS_ICONS[file.status]} ${pc.bold(file.file)} — ${STATUS_LABELS[file.status]}`}`);
|
|
325
412
|
}
|
|
326
413
|
}
|
|
327
414
|
// Compute stats
|
|
@@ -441,6 +528,8 @@ export const updateCommand = async (options) => {
|
|
|
441
528
|
const applySpinner = p.spinner();
|
|
442
529
|
applySpinner.start('Applying updates...');
|
|
443
530
|
let appliedCount = 0;
|
|
531
|
+
let deletedCount = 0;
|
|
532
|
+
let deletedThemeCount = 0;
|
|
444
533
|
let skippedCount = 0;
|
|
445
534
|
const newLockfile = getOrCreateLockfile(cwd);
|
|
446
535
|
for (const comp of componentAnalyses) {
|
|
@@ -478,6 +567,27 @@ export const updateCommand = async (options) => {
|
|
|
478
567
|
(options.force || resolution === 'upstream')) ||
|
|
479
568
|
(file.status === 'conflict' &&
|
|
480
569
|
(options.force || resolution === 'upstream')));
|
|
570
|
+
if (file.removed) {
|
|
571
|
+
// "Skip for now" leaves the file and its lockfile entry (newLockfile
|
|
572
|
+
// was read from disk), so the next update asks again.
|
|
573
|
+
if (selectivelySkipped) {
|
|
574
|
+
skippedCount++;
|
|
575
|
+
continue;
|
|
576
|
+
}
|
|
577
|
+
if (shouldOverwrite) {
|
|
578
|
+
rmSync(destPath, { force: true });
|
|
579
|
+
deletedCount++;
|
|
580
|
+
}
|
|
581
|
+
else if (file.status === 'conflict') {
|
|
582
|
+
// Kept: upstream has nothing to merge into it any more, so it's the
|
|
583
|
+
// app's own file now, like an ejected component's.
|
|
584
|
+
skippedCount++;
|
|
585
|
+
}
|
|
586
|
+
// Deleted, kept as the app's, or already gone: dolan stops tracking
|
|
587
|
+
// it either way. The entry used to stay forever.
|
|
588
|
+
delete newLockfile.components[comp.name][file.file];
|
|
589
|
+
continue;
|
|
590
|
+
}
|
|
481
591
|
if (resolution === 'partial') {
|
|
482
592
|
// User accepted some hunks but not all — write reconstructed
|
|
483
593
|
// content and advance lockfile to upstream hash. On next update
|
|
@@ -565,6 +675,29 @@ export const updateCommand = async (options) => {
|
|
|
565
675
|
(options.force || sharedResolution === 'upstream')) ||
|
|
566
676
|
(file.status === 'conflict' &&
|
|
567
677
|
(options.force || sharedResolution === 'upstream')));
|
|
678
|
+
/* v8 ignore stop */
|
|
679
|
+
// A theme file for the Tailwind version the app doesn't use, by the same
|
|
680
|
+
// rules as a component's file upstream stopped shipping.
|
|
681
|
+
if (file.removed) {
|
|
682
|
+
// "Skip for now" leaves the file and any lockfile entry, so the next
|
|
683
|
+
// update asks again.
|
|
684
|
+
if (selectivelySkippedShared) {
|
|
685
|
+
skippedCount++;
|
|
686
|
+
continue;
|
|
687
|
+
}
|
|
688
|
+
if (shouldOverwrite) {
|
|
689
|
+
rmSync(destPath, { force: true });
|
|
690
|
+
deletedThemeCount++;
|
|
691
|
+
}
|
|
692
|
+
else if (file.status === 'conflict') {
|
|
693
|
+
// Kept: it's the app's own file now.
|
|
694
|
+
skippedCount++;
|
|
695
|
+
}
|
|
696
|
+
// Deleted, kept as the app's, or already gone: dolan stops tracking it.
|
|
697
|
+
delete newLockfile.theme[fileName];
|
|
698
|
+
continue;
|
|
699
|
+
}
|
|
700
|
+
/* v8 ignore start */
|
|
568
701
|
const entry = { hash: hashContent(file.newContent) };
|
|
569
702
|
if (sharedResolution === 'partial') {
|
|
570
703
|
const content = partialContents.get(file.file);
|
|
@@ -599,6 +732,12 @@ export const updateCommand = async (options) => {
|
|
|
599
732
|
if (appliedCount > 0) {
|
|
600
733
|
p.log.success(`${pc.bold(String(appliedCount))} file(s) updated.`);
|
|
601
734
|
}
|
|
735
|
+
if (deletedCount > 0) {
|
|
736
|
+
p.log.success(`${pc.bold(String(deletedCount))} file(s) deleted: upstream no longer ships them.`);
|
|
737
|
+
}
|
|
738
|
+
if (deletedThemeCount > 0) {
|
|
739
|
+
p.log.success(`${pc.bold(String(deletedThemeCount))} theme file(s) deleted: ${themeReason}.`);
|
|
740
|
+
}
|
|
602
741
|
if (skippedCount > 0 && isSelective) {
|
|
603
742
|
p.log.info(`${pc.bold(String(skippedCount))} file(s) skipped — they'll appear again on next update.`);
|
|
604
743
|
}
|
|
@@ -613,23 +752,28 @@ export const updateCommand = async (options) => {
|
|
|
613
752
|
p.outro('Update complete.');
|
|
614
753
|
};
|
|
615
754
|
/**
|
|
616
|
-
* Build a fresh lockfile snapshot for the "nothing to apply" case
|
|
755
|
+
* Build a fresh lockfile snapshot for the "nothing to apply" case. The only
|
|
756
|
+
* files upstream no longer ships that get here are already gone from disk
|
|
757
|
+
* (any other is an auto-update or a conflict), so their entries are dropped.
|
|
617
758
|
*/
|
|
618
759
|
const buildLockfile = (components, shared, existing) => {
|
|
619
760
|
const lockfile = { ...existing };
|
|
620
761
|
for (const comp of components) {
|
|
621
|
-
lockfile.components[comp.name]
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
file.file
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
}
|
|
762
|
+
const entries = { ...lockfile.components[comp.name] };
|
|
763
|
+
for (const file of comp.files) {
|
|
764
|
+
if (file.removed)
|
|
765
|
+
delete entries[file.file];
|
|
766
|
+
else
|
|
767
|
+
entries[file.file] = { hash: hashContent(file.newContent) };
|
|
768
|
+
}
|
|
769
|
+
lockfile.components[comp.name] = entries;
|
|
628
770
|
}
|
|
629
771
|
for (const file of shared) {
|
|
630
772
|
const fileName = file.file.split('/').pop();
|
|
631
|
-
|
|
632
|
-
|
|
773
|
+
if (file.removed)
|
|
774
|
+
delete lockfile.theme[fileName];
|
|
775
|
+
else
|
|
776
|
+
lockfile.theme[fileName] = { hash: hashContent(file.newContent) };
|
|
633
777
|
}
|
|
634
778
|
return lockfile;
|
|
635
779
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../src/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AACpC,OAAO,EACL,UAAU,EACV,SAAS,EACT,YAAY,EACZ,MAAM,EACN,aAAa,GACd,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EACL,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,cAAc,GACf,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACjE,OAAO,EACL,mBAAmB,EACnB,WAAW,EACX,SAAS,EACT,aAAa,GAEd,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,UAAU,EACV,UAAU,EACV,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,EAClB,YAAY,EACZ,aAAa,GAGd,MAAM,qBAAqB,CAAC;AAO7B;;;;GAIG;AACH,MAAM,WAAW,GAAG,KAAK,EACvB,aAAqB,EACrB,QAAgB,EAChB,cAAsB,EACtB,UAAkB,EACK,EAAE;IACzB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,KAAK,GAAG,QAAQ,CAAC,cAAc,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAc,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAE9E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,iDAAiD;QACjD,OAAO,IAAI,EAAE,CAAC;YACZ,gEAAgE;YAChE,oEAAoE;YACpE,2BAA2B;YAC3B,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;YACxE,yEAAyE;YACzE,sEAAsE;YACtE,yEAAyE;YACzE,gCAAgC;YAChC,sBAAsB;YACtB,MAAM,IAAI,GACR,YAAY,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;gBAClC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;gBACjB,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAChB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ;oBAC/B,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ;wBACrB,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAC1C;oBACD,YAAY,CAAC,CAAC,CAAC;oBACf,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAC;YAClD,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEzC,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC;gBAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,WAAW,IAAI,CAAC,QAAQ,IAAI,OAAO,GAAG;gBAC7H,OAAO,EAAE;oBACP;wBACE,KAAK,EAAE,QAAiB;wBACxB,KAAK,EAAE,QAAQ;wBACf,IAAI,EAAE,mBAAmB;qBAC1B;oBACD;wBACE,KAAK,EAAE,QAAiB;wBACxB,KAAK,EAAE,QAAQ;wBACf,IAAI,EAAE,kBAAkB;qBACzB;oBACD;wBACE,KAAK,EAAE,SAAkB;wBACzB,KAAK,EAAE,mBAAmB;wBAC1B,IAAI,EAAE,0BAA0B;qBACjC;iBACF;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;gBAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,YAAY,IAAI,CAAC,CAAC;gBAClB,SAAS;YACX,CAAC;YAED,QAAQ,CAAC,CAAC,CAAC,GAAG,MAAM,KAAK,QAAQ,CAAC;YAClC,MAAM;QACR,CAAC;IACH,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IACtD,IAAI,aAAa,KAAK,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IACrD,IAAI,aAAa,KAAK,KAAK,CAAC,MAAM;QAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IAEpE,MAAM,eAAe,GAAG,QAAQ;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC3B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,MAAM,GAAG,kBAAkB,CAC/B,cAAc,EACd,UAAU,EACV,eAAe,CAChB,CAAC;IAEF,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;QACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;IAC9B,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAClD,CAAC,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,UAAU,GAAG,KAAK,EACtB,aAAqB,EACrB,QAAsB,EACC,EAAE;IACzB,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,KAAK,cAAc,CAAC;IACrD,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,KAAK,UAAU,CAAC;IAClD,MAAM,cAAc,GAAG,QAAQ,CAAC,MAAM,KAAK,eAAe,CAAC;IAC3D,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC;IAEjD,MAAM,MAAM,GAAG,SAAS;QACtB,CAAC,CAAC,UAAU;YACV,CAAC,CAAC,0BAA0B,QAAQ,CAAC,OAAO,EAAE;YAC9C,CAAC,CAAC,KAAK,QAAQ,CAAC,OAAO,EAAE;QAC3B,CAAC,CAAC,UAAU;YACV,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC,0BAA0B;gBAC5B,CAAC,CAAC,cAAc;oBACd,CAAC,CAAC,0BAA0B;oBAC5B,CAAC,CAAC,oBAAoB,CAAC;IAE/B,MAAM,WAAW,GAAG,SAAS;QAC3B,CAAC,CAAC;YACE,KAAK,EAAE,UAAmB;YAC1B,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,iBAAiB;SAC5D;QACH,CAAC,CAAC,UAAU,IAAI,cAAc;YAC5B,CAAC,CAAC;gBACE,KAAK,EAAE,UAAmB;gBAC1B,KAAK,EAAE,uBAAuB;gBAC9B,IAAI,EAAE,cAAc;oBAClB,CAAC,CAAC,oBAAoB;oBACtB,CAAC,CAAC,kCAAkC;aACvC;YACH,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC;oBACE,KAAK,EAAE,UAAmB;oBAC1B,KAAK,EAAE,eAAe;oBACtB,IAAI,EAAE,iBAAiB;iBACxB;gBACH,CAAC,CAAC;oBACE,KAAK,EAAE,UAAmB;oBAC1B,KAAK,EAAE,cAAc;oBACrB,IAAI,EAAE,yBAAyB;iBAChC,CAAC;IAEV,0EAA0E;IAC1E,6DAA6D;IAC7D,MAAM,UAAU,GACd,SAAS,IAAI,UAAU;QACrB,CAAC,CAAC;YACE,KAAK,EAAE,MAAe;YACtB,KAAK,EAAE,iBAAiB;YACxB,IAAI,EAAE,wBAAwB;SAC/B;QACH,CAAC,CAAC,UAAU,IAAI,cAAc;YAC5B,CAAC,CAAC;gBACE,KAAK,EAAE,MAAe;gBACtB,KAAK,EAAE,iBAAiB;gBACxB,IAAI,EAAE,qCAAqC;aAC5C;YACH,CAAC,CAAC;gBACE,KAAK,EAAE,MAAe;gBACtB,KAAK,EAAE,cAAc;gBACrB,IAAI,EAAE,mCAAmC;aAC1C,CAAC;IAEV,MAAM,OAAO,GAAqD;QAChE;YACE,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,WAAW;YAChD,IAAI,EAAE,kBAAkB;SACzB;QACD,UAAU;QACV,WAAW;KACZ,CAAC;IAEF,0EAA0E;IAC1E,oCAAoC;IACpC,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,EAAE,CAAC;QAC7B,OAAO,CAAC,IAAI,CAAC;YACX,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,gBAAgB;YACvB,IAAI,EAAE,kCAAkC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,iDAAiD;IACjD,OAAO,IAAI,EAAE,CAAC;QACZ,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC;YAC5B,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,MAAM,EAAE;YACxE,OAAO;SACR,CAAC,CAAC;QAEH,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;YACvB,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU;qBAC9B,KAAK,CAAC,IAAI,CAAC;qBACX,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;qBACpC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACd,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,uBAAuB,KAAK,IAAI,CAAC,CAAC;YAC1E,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,cAAc,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBACtE,CAAC,CAAC,GAAG,CAAC,OAAO,CACX,KAAK,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,IAAI,IAAI,CACxF,CAAC;YACJ,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;YAC7B,OAAO,WAAW,CAChB,aAAa,EACb,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,cAAc,EACvB,QAAQ,CAAC,UAAU,CACpB,CAAC;QACJ,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,MAA6B,EAAE,CAAC;IACrD,CAAC;AACH,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,IAAkB,EAAU,EAAE,CAC/D,IAAI,CAAC,MAAM,KAAK,UAAU;IACxB,CAAC,CAAC,GAAG,YAAY,CAAC,QAAQ,IAAI,IAAI,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,uBAAuB,CAAC,EAAE;IACxF,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,WAAW,CAAC,EAAE,CAAC;AAEzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,OAGnC,EAAE,EAAE;IACH,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,aAAa,EAAE,CAAC;IAEpC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IAEjC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;QACvB,CAAC,CAAC,GAAG,CAAC,KAAK,CACT,MAAM,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,SAAS,CAChF,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uEAAuE;IACvE,IAAI,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,WAAW,EAAE,CAAC;QACxD,CAAC,CAAC,GAAG,CAAC,KAAK,CACT,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,gDAAgD,CAC1E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAE9D,2EAA2E;IAC3E,6EAA6E;IAC7E,6EAA6E;IAC7E,wEAAwE;IACxE,oEAAoE;IACpE,4EAA4E;IAC5E,wEAAwE;IACxE,wEAAwE;IACxE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC1C,yEAAyE;IACzE,oEAAoE;IACpE,MAAM,OAAO,GAAG,iBAAiB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC;IAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,mBAAmB,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;IACtE,2EAA2E;IAC3E,wEAAwE;IACxE,uEAAuE;IACvE,sCAAsC;IACtC,MAAM,SAAS,GAAG,mBAAmB,CAAC,OAAO,CAAC;SAC3C,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;SACpC,IAAI,EAAE,CAAC;IACV,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;IAE/B,yBAAyB;IACzB,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACtB,CAAC,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAEhC,MAAM,iBAAiB,GAAwB,EAAE,CAAC;IAElD,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,iBAAiB,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAExD,MAAM,YAAY,GAAmB,EAAE,CAAC;QAExC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,UAAU,GAAG,YAAY,CAC7B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,EACvC,OAAO,CACR,CAAC;YACF,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,yEAAyE;YACzE,iEAAiE;YACjE,MAAM,UAAU,GAAG,aAAa,CAAC,cAAc,CAAC,UAAU,CAAC,EAAE,QAAQ,CAAC,CAAC;YAEvE,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC;gBACzC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC;gBACjC,CAAC,CAAC,IAAI,CAAC;YAET,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,IAAI,IAAI,CAAC;YACvD,MAAM,MAAM,GAAG,WAAW,CACxB,cAAc,EACd,UAAU,EACV,UAAU,EACV,WAAW,CACZ,CAAC;YAEF,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI;gBACJ,MAAM;gBACN,cAAc,EAAE,cAAc,IAAI,EAAE;gBACpC,UAAU;aACX,CAAC,CAAC;QACL,CAAC;QAED,sEAAsE;QACtE,0EAA0E;QAC1E,0DAA0D;QAC1D,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACrC,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC;gBACzC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC;gBACjC,CAAC,CAAC,IAAI,CAAC;YACT,YAAY,CAAC,IAAI,CAAC;gBAChB,IAAI;gBACJ,MAAM,EAAE,kBAAkB,CACxB,cAAc,EACd,eAAe,CAAC,IAAI,CAAE,CAAC,IAAI,EAC3B,WAAW,CACZ;gBACD,cAAc,EAAE,cAAc,IAAI,EAAE;gBACpC,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,6BAA6B;aACvC,CAAC,CAAC;QACL,CAAC;QAED,iBAAiB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,wEAAwE;IACxE,MAAM,KAAK,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,cAAc,GAAmB,EAAE,CAAC;IAE1C,cAAc;IACd,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACpD,KAAK,MAAM,IAAI,IAAI,aAAa,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACjD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAE/B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtC,4DAA4D;QAC5D,oEAAoE;QACpE,MAAM,UAAU,GAAG,aAAa,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,CAAC;QACvE,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC;YACzC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC;QACT,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;QAE7D,cAAc,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,SAAS,IAAI,EAAE;YACrB,MAAM,EAAE,WAAW,CAAC,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,CAAC;YACxE,cAAc,EAAE,cAAc,IAAI,EAAE;YACpC,UAAU;SACX,CAAC,CAAC;IACL,CAAC;IAED,sEAAsE;IACtE,+DAA+D;IAC/D,qEAAqE;IACrE,yEAAyE;IACzE,qDAAqD;IACrD,MAAM,WAAW,GAAG,yBAAyB,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,cAAc,GAAG,UAAU,CAAC,QAAQ,CAAC;YACzC,CAAC,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC;YACjC,CAAC,CAAC,IAAI,CAAC;QACT,cAAc,CAAC,IAAI,CAAC;YAClB,IAAI,EAAE,SAAS,IAAI,EAAE;YACrB,MAAM,EAAE,kBAAkB,CACxB,cAAc;YACd,qDAAqD;YACrD,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,cAAc,CAAE,EAC1C,WAAW,CACZ;YACD,cAAc,EAAE,cAAc,IAAI,EAAE;YACpC,UAAU,EAAE,EAAE;YACd,OAAO,EAAE,WAAW;SACrB,CAAC,CAAC;IACL,CAAC;IAED,CAAC,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAE7B,wBAAwB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAEzC,0BAA0B;IAC1B,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QAExC,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;YACrC,MAAM,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzC,CAAC,CAAC,GAAG,CAAC,OAAO,CACX,KAAK,YAAY,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,OAAO,CAAC,EAAE,CAC/E,CAAC;YACF,mEAAmE;YACnE,iCAAiC;YACjC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY;oBAAE,SAAS;gBAC5D,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;IACH,CAAC;IAED,iEAAiE;IACjE,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CACvC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC,CAC1D,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3B,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC1C,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,CAAC,CAAC,GAAG,CAAC,OAAO,CACX,KACE,IAAI,CAAC,OAAO;gBACV,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC;gBACvC,CAAC,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,EACxF,EAAE,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,MAAM,QAAQ,GAAG;QACf,GAAG,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;QAC5C,GAAG,cAAc;KAClB,CAAC;IACF,MAAM,eAAe,GAAG,QAAQ,CAAC,MAAM,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,aAAa,IAAI,CAAC,CAAC,MAAM,KAAK,cAAc,CACjE,CAAC,MAAM,CAAC;IACT,MAAM,iBAAiB,GAAG,QAAQ,CAAC,MAAM,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,eAAe,CACpC,CAAC,MAAM,CAAC;IACT,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;IAC7E,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CACnC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CACjC,CAAC,MAAM,CAAC;IAET,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC,CAAC,GAAG,CAAC,IAAI,CACR;QACE,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE;QACxE,eAAe,GAAG,CAAC;YACjB,CAAC,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,cAAc;YACnD,CAAC,CAAC,EAAE;QACN,iBAAiB,GAAG,CAAC;YACnB,CAAC,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,uBAAuB;YAChE,CAAC,CAAC,EAAE;QACN,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE;KACxE;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,IAAI,CAAC,CACd,CAAC;IAEF,gBAAgB;IAChB,IAAI,eAAe,KAAK,CAAC,IAAI,aAAa,KAAK,CAAC,IAAI,iBAAiB,KAAK,CAAC,EAAE,CAAC;QAC5E,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACrC,aAAa,CACX,GAAG,EACH,aAAa,CAAC,iBAAiB,EAAE,cAAc,EAAE,QAAQ,CAAC,CAC3D,CAAC;QACF,OAAO;IACT,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;IAE1D,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,CAAC,CAAC,GAAG,CAAC,IAAI,CACR,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,gDAAgD;IAChD,IACE,CAAC,OAAO,CAAC,KAAK;QACd,CAAC,WAAW;QACZ,eAAe,KAAK,CAAC;QACrB,aAAa,KAAK,CAAC,EACnB,CAAC;QACD,CAAC,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;QACrC,aAAa,CACX,GAAG,EACH,aAAa,CAAC,iBAAiB,EAAE,cAAc,EAAE,QAAQ,CAAC,CAC3D,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,WAAW,IAAI,eAAe,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;QACzE,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,OAAO,CAAC;YAC9B,OAAO,EAAE,SAAS,eAAe,kBAAkB;YACnD,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACpC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC;YAC7B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAAG,eAAe,GAAG,iBAAiB,CAAC;IAC5D,IAAI,WAAW,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACvC,CAAC,CAAC,GAAG,CAAC,IAAI,CACR,8BAA8B,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,wBAAwB,CACvF,CAAC;IACJ,CAAC;IAED,4BAA4B;IAC5B,MAAM,WAAW,GAAG,IAAI,GAAG,EAAwB,CAAC;IACpD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,2EAA2E;IAC3E,qEAAqE;IACrE,MAAM,eAAe,GAAG,OAAO,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;IAEzE,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,WAAW,EAAE,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC/B,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACxC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACjD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBAC7B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC/B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpD,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,yDAAyD;IACzD,IAAI,WAAW,EAAE,CAAC;QAChB,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;YACrC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBAC9B,IACE,IAAI,CAAC,MAAM,KAAK,aAAa;oBAC7B,IAAI,CAAC,MAAM,KAAK,cAAc;oBAC9B,IAAI,CAAC,MAAM,KAAK,eAAe,EAC/B,CAAC;oBACD,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;oBACxC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;oBACjD,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;oBAC7B,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;YAClC,0MAA0M;YAC1M,IACE,IAAI,CAAC,MAAM,KAAK,aAAa;gBAC7B,IAAI,CAAC,MAAM,KAAK,cAAc;gBAC9B,IAAI,CAAC,MAAM,KAAK,eAAe,EAC/B,CAAC;gBACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBAChD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBACnC,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpD,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,wBAAwB;IACxB,MAAM,YAAY,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACjC,YAAY,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IAE1C,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,IAAI,iBAAiB,GAAG,CAAC,CAAC;IAC1B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAE7C,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAClD,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAExC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACvC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QACzC,CAAC;QAED,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC1C,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YAExC,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC;YAElD,uEAAuE;YACvE,oEAAoE;YACpE,kCAAkC;YAClC,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChE,SAAS;YACX,CAAC;YAED,kEAAkE;YAClE,oEAAoE;YACpE,gDAAgD;YAChD,MAAM,kBAAkB,GACtB,WAAW;gBACX,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC;gBACjE,UAAU,KAAK,MAAM,CAAC;YAExB,wCAAwC;YACxC,0DAA0D;YAC1D,2DAA2D;YAC3D,wEAAwE;YACxE,kDAAkD;YAClD,MAAM,eAAe,GACnB,CAAC,kBAAkB;gBACnB,UAAU,KAAK,SAAS;gBACxB,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa;oBAC5B,IAAI,CAAC,MAAM,KAAK,cAAc;oBAC9B,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe;wBAC9B,CAAC,OAAO,CAAC,KAAK,IAAI,UAAU,KAAK,UAAU,CAAC,CAAC;oBAC/C,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU;wBACzB,CAAC,OAAO,CAAC,KAAK,IAAI,UAAU,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;YAErD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjB,qEAAqE;gBACrE,sDAAsD;gBACtD,IAAI,kBAAkB,EAAE,CAAC;oBACvB,YAAY,EAAE,CAAC;oBACf,SAAS;gBACX,CAAC;gBACD,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClC,YAAY,EAAE,CAAC;gBACjB,CAAC;qBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBACtC,oEAAoE;oBACpE,mDAAmD;oBACnD,YAAY,EAAE,CAAC;gBACjB,CAAC;gBACD,oEAAoE;gBACpE,iDAAiD;gBACjD,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpD,SAAS;YACX,CAAC;YAED,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;gBAC7B,6DAA6D;gBAC7D,gEAAgE;gBAChE,iEAAiE;gBACjE,gBAAgB;gBAChB,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;gBAC1C,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACjC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC7C,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;iBACnC,CAAC;gBACF,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,eAAe,EAAE,CAAC;gBAC3B,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;gBACzC,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC7C,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;iBACnC,CAAC;gBACF,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,kBAAkB,EAAE,CAAC;gBAC9B,gEAAgE;gBAChE,6DAA6D;gBAC7D,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClE,IAAI,aAAa,EAAE,CAAC;oBAClB,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC;gBAC/D,CAAC;gBACD,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACtC,uEAAuE;gBACvE,+DAA+D;gBAC/D,yEAAyE;gBACzE,4DAA4D;gBAC5D,sEAAsE;gBACtE,uDAAuD;gBACvD,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC7C,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;iBACnC,CAAC;gBACF,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,eAAe,EAAE,CAAC;gBAC3C,qEAAqE;gBACrE,sEAAsE;gBACtE,oEAAoE;gBACpE,sBAAsB;gBACtB,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,UAAU,CAChE,IAAI,CAAC,IAAI,CACV,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBAChB,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;iBACnC,CAAC;gBACF,YAAY,EAAE,CAAC;YACjB,CAAC;iBAAM,CAAC;gBACN,2BAA2B;gBAC3B,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;oBAC7C,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC;iBACnC,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,kCAAkC;IAClC,KAAK,MAAM,IAAI,IAAI,cAAc,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC;QAC7C,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAE1C,MAAM,gBAAgB,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;QAC9D,uEAAuE;QACvE,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,IAAI,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;YACtE,SAAS;QACX,CAAC;QAED,wEAAwE;QACxE,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,uEAAuE;QACvE,uEAAuE;QACvE,sCAAsC;QACtC,qBAAqB;QACrB,MAAM,wBAAwB,GAC5B,WAAW;YACX,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC;YACjE,gBAAgB,KAAK,MAAM,CAAC;QAE9B,MAAM,eAAe,GACnB,CAAC,wBAAwB;YACzB,gBAAgB,KAAK,SAAS;YAC9B,CAAC,IAAI,CAAC,MAAM,KAAK,aAAa;gBAC5B,IAAI,CAAC,MAAM,KAAK,cAAc;gBAC9B,CAAC,IAAI,CAAC,MAAM,KAAK,eAAe;oBAC9B,CAAC,OAAO,CAAC,KAAK,IAAI,gBAAgB,KAAK,UAAU,CAAC,CAAC;gBACrD,CAAC,IAAI,CAAC,MAAM,KAAK,UAAU;oBACzB,CAAC,OAAO,CAAC,KAAK,IAAI,gBAAgB,KAAK,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3D,oBAAoB;QAEpB,yEAAyE;QACzE,yDAAyD;QACzD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,qEAAqE;YACrE,qBAAqB;YACrB,IAAI,wBAAwB,EAAE,CAAC;gBAC7B,YAAY,EAAE,CAAC;gBACf,SAAS;YACX,CAAC;YACD,IAAI,eAAe,EAAE,CAAC;gBACpB,MAAM,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClC,iBAAiB,EAAE,CAAC;YACtB,CAAC;iBAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBACtC,qCAAqC;gBACrC,YAAY,EAAE,CAAC;YACjB,CAAC;YACD,wEAAwE;YACxE,OAAO,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACnC,SAAS;QACX,CAAC;QAED,qBAAqB;QACrB,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QAErD,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,OAAO,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAE,CAAC;YAChD,aAAa,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACjC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACpC,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,eAAe,EAAE,CAAC;YAC3B,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;YACzC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACpC,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,wBAAwB,EAAE,CAAC;YACpC,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC/C,IAAI,aAAa,EAAE,CAAC;gBAClB,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,aAAa,CAAC;YAC9C,CAAC;YACD,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACtC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACpC,YAAY,EAAE,CAAC;QACjB,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,KAAK,YAAY,EAAE,CAAC;YACxC,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;QACtC,CAAC;QACD,oBAAoB;IACtB,CAAC;IAED,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAEhC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE3B,wBAAwB;IACxB,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,mBAAmB,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QACrB,CAAC,CAAC,GAAG,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,kDAAkD,CACnF,CAAC;IACJ,CAAC;IACD,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;QAC1B,CAAC,CAAC,GAAG,CAAC,OAAO,CACX,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,2BAA2B,WAAW,GAAG,CAC/E,CAAC;IACJ,CAAC;IACD,IAAI,YAAY,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;QACpC,CAAC,CAAC,GAAG,CAAC,IAAI,CACR,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,yDAAyD,CAC1F,CAAC;IACJ,CAAC;SAAM,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;QAC5B,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,sBAAsB,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,eAAe,GAAG,CAAC,EAAE,CAAC;QACxB,CAAC,CAAC,GAAG,CAAC,IAAI,CACR,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,sCAAsC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,sCAAsC,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,8BAA8B,CACpM,CAAC;QACF,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC9B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;AAC9B,CAAC,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAG,CACpB,UAA+B,EAC/B,MAAsB,EACtB,QAAkB,EACR,EAAE;IACZ,MAAM,QAAQ,GAAa,EAAE,GAAG,QAAQ,EAAE,CAAC;IAE3C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gBACvC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;QACnE,CAAC;QACD,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;IAC3C,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAG,CAAC;QAC7C,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;;YAC7C,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC"}
|