@monoes/monomindcli 2.16.5 → 2.16.7
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/.claude/commands/agents/agent-capabilities.md +2 -5
- package/.claude/commands/coordination/task-orchestrate.md +0 -1
- package/.claude/commands/hooks/post-edit.md +1 -1
- package/.claude/commands/hooks/post-task.md +2 -3
- package/.claude/commands/hooks/pre-edit.md +0 -2
- package/.claude/commands/hooks/session-end.md +4 -4
- package/.claude/commands/monoswarm/consensus.md +1 -1
- package/.claude/commands/monoswarm/memory.md +1 -1
- package/.claude/commands/monoswarm/monoswarm.md +1 -1
- package/.claude/commands/monoswarm/spawn.md +1 -1
- package/.claude/commands/optimization/auto-topology.md +6 -9
- package/.claude/commands/optimization/performance-optimize.md +23 -39
- package/.claude/helpers/pick-rank.cjs +118 -9
- package/dist/src/catalog/projection.d.ts.map +1 -1
- package/dist/src/catalog/projection.js +2 -1
- package/dist/src/catalog/projection.js.map +1 -1
- package/dist/src/commands/agent-exec.d.ts.map +1 -1
- package/dist/src/commands/agent-exec.js +10 -1
- package/dist/src/commands/agent-exec.js.map +1 -1
- package/dist/src/commands/cleanup-plan.d.ts +3 -2
- package/dist/src/commands/cleanup-plan.d.ts.map +1 -1
- package/dist/src/commands/cleanup-plan.js +25 -5
- package/dist/src/commands/cleanup-plan.js.map +1 -1
- package/dist/src/commands/doctor.js +1 -1
- package/dist/src/commands/doctor.js.map +1 -1
- package/dist/src/commands/hooks-core-commands.d.ts.map +1 -1
- package/dist/src/commands/hooks-core-commands.js +10 -42
- package/dist/src/commands/hooks-core-commands.js.map +1 -1
- package/dist/src/commands/hooks-extended-commands.d.ts.map +1 -1
- package/dist/src/commands/hooks-extended-commands.js +3 -4
- package/dist/src/commands/hooks-extended-commands.js.map +1 -1
- package/dist/src/commands/hooks-routing-commands.d.ts.map +1 -1
- package/dist/src/commands/hooks-routing-commands.js +13 -24
- package/dist/src/commands/hooks-routing-commands.js.map +1 -1
- package/dist/src/commands/hooks-workers.d.ts.map +1 -1
- package/dist/src/commands/hooks-workers.js +0 -5
- package/dist/src/commands/hooks-workers.js.map +1 -1
- package/dist/src/commands/hooks.d.ts.map +1 -1
- package/dist/src/commands/hooks.js +9 -16
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/monograph.d.ts.map +1 -1
- package/dist/src/commands/monograph.js +24 -2
- package/dist/src/commands/monograph.js.map +1 -1
- package/dist/src/commands/org.d.ts.map +1 -1
- package/dist/src/commands/org.js +29 -1
- package/dist/src/commands/org.js.map +1 -1
- package/dist/src/commands/platforms.js +2 -1
- package/dist/src/commands/platforms.js.map +1 -1
- package/dist/src/init/asset-maps.d.ts +46 -0
- package/dist/src/init/asset-maps.d.ts.map +1 -0
- package/dist/src/init/asset-maps.js +177 -0
- package/dist/src/init/asset-maps.js.map +1 -0
- package/dist/src/init/copy-assets.d.ts.map +1 -1
- package/dist/src/init/copy-assets.js +4 -1
- package/dist/src/init/copy-assets.js.map +1 -1
- package/dist/src/init/executor.d.ts.map +1 -1
- package/dist/src/init/executor.js +6 -3
- package/dist/src/init/executor.js.map +1 -1
- package/dist/src/init/file-guard.d.ts +6 -0
- package/dist/src/init/file-guard.d.ts.map +1 -1
- package/dist/src/init/file-guard.js +27 -11
- package/dist/src/init/file-guard.js.map +1 -1
- package/dist/src/init/fs-helpers.d.ts +63 -0
- package/dist/src/init/fs-helpers.d.ts.map +1 -0
- package/dist/src/init/fs-helpers.js +198 -0
- package/dist/src/init/fs-helpers.js.map +1 -0
- package/dist/src/init/init-manifest.d.ts +106 -0
- package/dist/src/init/init-manifest.d.ts.map +1 -0
- package/dist/src/init/init-manifest.js +222 -0
- package/dist/src/init/init-manifest.js.map +1 -0
- package/dist/src/init/shared.d.ts +3 -201
- package/dist/src/init/shared.d.ts.map +1 -1
- package/dist/src/init/shared.js +7 -573
- package/dist/src/init/shared.js.map +1 -1
- package/dist/src/init/upgrade.d.ts.map +1 -1
- package/dist/src/init/upgrade.js +4 -2
- package/dist/src/init/upgrade.js.map +1 -1
- package/dist/src/init/write-antigravity.d.ts.map +1 -1
- package/dist/src/init/write-antigravity.js +2 -1
- package/dist/src/init/write-antigravity.js.map +1 -1
- package/dist/src/init/write-capabilities.js +2 -1
- package/dist/src/init/write-capabilities.js.map +1 -1
- package/dist/src/init/write-claude.d.ts +3 -5
- package/dist/src/init/write-claude.d.ts.map +1 -1
- package/dist/src/init/write-claude.js +6 -210
- package/dist/src/init/write-claude.js.map +1 -1
- package/dist/src/init/write-codex.js +1 -1
- package/dist/src/init/write-codex.js.map +1 -1
- package/dist/src/init/write-kimicode.d.ts.map +1 -1
- package/dist/src/init/write-kimicode.js +6 -2
- package/dist/src/init/write-kimicode.js.map +1 -1
- package/dist/src/init/write-opencode.d.ts.map +1 -1
- package/dist/src/init/write-opencode.js +5 -4
- package/dist/src/init/write-opencode.js.map +1 -1
- package/dist/src/init/write-runtime-config.d.ts.map +1 -1
- package/dist/src/init/write-runtime-config.js +2 -1
- package/dist/src/init/write-runtime-config.js.map +1 -1
- package/dist/src/init/write-settings.d.ts +9 -0
- package/dist/src/init/write-settings.d.ts.map +1 -0
- package/dist/src/init/write-settings.js +217 -0
- package/dist/src/init/write-settings.js.map +1 -0
- package/dist/src/mcp-tools/hooks-intelligence.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-intelligence.js +2 -1
- package/dist/src/mcp-tools/hooks-intelligence.js.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.d.ts.map +1 -1
- package/dist/src/mcp-tools/hooks-routing.js +11 -11
- package/dist/src/mcp-tools/hooks-routing.js.map +1 -1
- package/dist/src/mcp-tools/platforms-tools.js +1 -1
- package/dist/src/mcp-tools/platforms-tools.js.map +1 -1
- package/dist/src/monovector/command-outcomes.d.ts +2 -1
- package/dist/src/monovector/command-outcomes.d.ts.map +1 -1
- package/dist/src/monovector/command-outcomes.js +2 -2
- package/dist/src/monovector/command-outcomes.js.map +1 -1
- package/dist/src/orgrt/approvals.d.ts +25 -0
- package/dist/src/orgrt/approvals.d.ts.map +1 -1
- package/dist/src/orgrt/approvals.js +51 -2
- package/dist/src/orgrt/approvals.js.map +1 -1
- package/dist/src/orgrt/budget-closure.d.ts +27 -0
- package/dist/src/orgrt/budget-closure.d.ts.map +1 -0
- package/dist/src/orgrt/budget-closure.js +179 -0
- package/dist/src/orgrt/budget-closure.js.map +1 -0
- package/dist/src/orgrt/daemon.d.ts +14 -2
- package/dist/src/orgrt/daemon.d.ts.map +1 -1
- package/dist/src/orgrt/daemon.js +37 -2
- package/dist/src/orgrt/daemon.js.map +1 -1
- package/dist/src/orgrt/decisions.d.ts +8 -0
- package/dist/src/orgrt/decisions.d.ts.map +1 -1
- package/dist/src/orgrt/decisions.js +7 -1
- package/dist/src/orgrt/decisions.js.map +1 -1
- package/dist/src/orgrt/policy.d.ts +6 -0
- package/dist/src/orgrt/policy.d.ts.map +1 -1
- package/dist/src/orgrt/policy.js +5 -0
- package/dist/src/orgrt/policy.js.map +1 -1
- package/dist/src/orgrt/runner-registry.d.ts +11 -2
- package/dist/src/orgrt/runner-registry.d.ts.map +1 -1
- package/dist/src/orgrt/runner-registry.js +11 -34
- package/dist/src/orgrt/runner-registry.js.map +1 -1
- package/dist/src/orgrt/task-dag.d.ts +13 -0
- package/dist/src/orgrt/task-dag.d.ts.map +1 -1
- package/dist/src/orgrt/task-dag.js +29 -0
- package/dist/src/orgrt/task-dag.js.map +1 -1
- package/dist/src/orgrt/version-probe.d.ts +43 -0
- package/dist/src/orgrt/version-probe.d.ts.map +1 -0
- package/dist/src/orgrt/version-probe.js +136 -0
- package/dist/src/orgrt/version-probe.js.map +1 -0
- package/dist/src/platform-adapters/locations.d.ts +12 -0
- package/dist/src/platform-adapters/locations.d.ts.map +1 -0
- package/dist/src/platform-adapters/locations.js +57 -0
- package/dist/src/platform-adapters/locations.js.map +1 -0
- package/dist/src/platform-adapters/merge.d.ts +13 -0
- package/dist/src/platform-adapters/merge.d.ts.map +1 -1
- package/dist/src/platform-adapters/merge.js +33 -1
- package/dist/src/platform-adapters/merge.js.map +1 -1
- package/dist/src/platform-adapters/migration.d.ts.map +1 -1
- package/dist/src/platform-adapters/migration.js +10 -5
- package/dist/src/platform-adapters/migration.js.map +1 -1
- package/dist/src/platform-adapters/mutation.js +1 -1
- package/dist/src/platform-adapters/mutation.js.map +1 -1
- package/dist/src/platform-adapters/operations.d.ts +3 -16
- package/dist/src/platform-adapters/operations.d.ts.map +1 -1
- package/dist/src/platform-adapters/operations.js +43 -167
- package/dist/src/platform-adapters/operations.js.map +1 -1
- package/dist/src/platform-adapters/owned-files.d.ts +23 -0
- package/dist/src/platform-adapters/owned-files.d.ts.map +1 -0
- package/dist/src/platform-adapters/owned-files.js +64 -0
- package/dist/src/platform-adapters/owned-files.js.map +1 -0
- package/dist/src/platform-adapters/platform-doctor.d.ts +9 -0
- package/dist/src/platform-adapters/platform-doctor.d.ts.map +1 -0
- package/dist/src/platform-adapters/platform-doctor.js +117 -0
- package/dist/src/platform-adapters/platform-doctor.js.map +1 -0
- package/dist/src/platform-adapters/renderers/skills.d.ts.map +1 -1
- package/dist/src/platform-adapters/renderers/skills.js +5 -2
- package/dist/src/platform-adapters/renderers/skills.js.map +1 -1
- package/dist/src/platform-adapters/shared-surface.d.ts +7 -4
- package/dist/src/platform-adapters/shared-surface.d.ts.map +1 -1
- package/dist/src/platform-adapters/shared-surface.js +9 -5
- package/dist/src/platform-adapters/shared-surface.js.map +1 -1
- package/dist/src/platform-adapters/types.d.ts +24 -1
- package/dist/src/platform-adapters/types.d.ts.map +1 -1
- package/dist/src/protocol-capabilities.d.ts +4 -1
- package/dist/src/protocol-capabilities.d.ts.map +1 -1
- package/dist/src/protocol-capabilities.js +4 -0
- package/dist/src/protocol-capabilities.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -4
package/dist/src/init/shared.js
CHANGED
|
@@ -6,7 +6,6 @@ import { createRequire } from 'node:module';
|
|
|
6
6
|
import * as path from 'node:path';
|
|
7
7
|
import { dirname } from 'node:path';
|
|
8
8
|
import { fileURLToPath } from 'node:url';
|
|
9
|
-
import { MASTERMIND_SKILLS } from '../mastermind/manifest-data.js';
|
|
10
9
|
// ESM-compatible __dirname
|
|
11
10
|
const __filename = fileURLToPath(import.meta.url);
|
|
12
11
|
const __dirname = dirname(__filename);
|
|
@@ -37,7 +36,6 @@ export function subcommandCount(command) {
|
|
|
37
36
|
export function workerTableRows(rows) {
|
|
38
37
|
return rows.map((w) => `| \`${w.name}\` | ${w.priority} | ${w.description} |`).join('\n');
|
|
39
38
|
}
|
|
40
|
-
const CANONICAL_MASTERMIND_SKILLS = MASTERMIND_SKILLS.map((skill) => skill.source);
|
|
41
39
|
/**
|
|
42
40
|
* Probe whether an optionalDependency actually resolved in this install
|
|
43
41
|
* (npm silently skips optionalDependencies it can't satisfy — see
|
|
@@ -63,479 +61,6 @@ export function _isOptionalPackageResolvable(pkg) {
|
|
|
63
61
|
return false;
|
|
64
62
|
}
|
|
65
63
|
}
|
|
66
|
-
/**
|
|
67
|
-
* Atomic write helper — writes to a sibling .tmp file then renames into place.
|
|
68
|
-
* SIGINT or crash during a partial write would otherwise corrupt user-critical
|
|
69
|
-
* files (.claude/settings.json, .mcp.json, helper scripts that Claude Code
|
|
70
|
-
* executes on every hook). Without atomicity a half-written settings.json or
|
|
71
|
-
* a zero-byte hook-handler.cjs disables Claude Code's protections silently.
|
|
72
|
-
*/
|
|
73
|
-
export function atomicWriteFile(target, content, encoding) {
|
|
74
|
-
const tmp = `${target}.${process.pid}.tmp`;
|
|
75
|
-
if (encoding && typeof content === 'string') {
|
|
76
|
-
fs.writeFileSync(tmp, content, encoding);
|
|
77
|
-
}
|
|
78
|
-
else if (typeof content === 'string') {
|
|
79
|
-
fs.writeFileSync(tmp, content, 'utf-8');
|
|
80
|
-
}
|
|
81
|
-
else {
|
|
82
|
-
fs.writeFileSync(tmp, content);
|
|
83
|
-
}
|
|
84
|
-
fs.renameSync(tmp, target);
|
|
85
|
-
}
|
|
86
|
-
/**
|
|
87
|
-
* The `Generated: <ISO timestamp>` stamp that .monomind/config.yaml and
|
|
88
|
-
* .monomind/CAPABILITIES.md carry, in whatever comment syntax their format
|
|
89
|
-
* uses (`# Generated: …`, `> Generated: …`).
|
|
90
|
-
*/
|
|
91
|
-
const GENERATED_TIMESTAMP = /(Generated:[^\S\r\n]*)\d{4}-\d{2}-\d{2}T[\d:.]+Z/g;
|
|
92
|
-
function withoutGeneratedTimestamp(content) {
|
|
93
|
-
return content.replace(GENERATED_TIMESTAMP, '$1<generated>');
|
|
94
|
-
}
|
|
95
|
-
/**
|
|
96
|
-
* Write a generated file that embeds a `Generated: <ISO timestamp>` line,
|
|
97
|
-
* skipping the write entirely when that stamp is the only thing that would
|
|
98
|
-
* change. Otherwise every `init --force` rewrote these files with a fresh
|
|
99
|
-
* timestamp and left the repository dirty by exactly two files, for
|
|
100
|
-
* information nobody can act on. Skipping the write (rather than reusing the
|
|
101
|
-
* old stamp) keeps the mtime stable too, and the stamp keeps its meaning:
|
|
102
|
-
* when this content was generated.
|
|
103
|
-
*/
|
|
104
|
-
export function writeGeneratedFile(target, content) {
|
|
105
|
-
try {
|
|
106
|
-
const existing = fs.readFileSync(target, 'utf-8');
|
|
107
|
-
if (withoutGeneratedTimestamp(existing) === withoutGeneratedTimestamp(content))
|
|
108
|
-
return;
|
|
109
|
-
}
|
|
110
|
-
catch {
|
|
111
|
-
// No readable file on disk — fall through and write it.
|
|
112
|
-
}
|
|
113
|
-
atomicWriteFile(target, content);
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Guard for the write-opencode.ts / write-kimicode.ts converters, which read
|
|
117
|
-
* `.claude/{agents,commands,skills}` and write the converted result into what
|
|
118
|
-
* is expected to be a separate platform directory (`.opencode/...`,
|
|
119
|
-
* `.kimi-code/...`). If that destination has been symlinked back into
|
|
120
|
-
* `.claude/` (observed live: a committed `.opencode/command -> ../.claude/commands`
|
|
121
|
-
* symlink), the atomic write-then-rename in `atomicWriteFile` resolves through
|
|
122
|
-
* the symlink and lands the converted, flattened, field-injected output
|
|
123
|
-
* straight back in the Claude source tree it was just read from — silently
|
|
124
|
-
* corrupting hand-authored agent/skill/command files and resurrecting
|
|
125
|
-
* "deleted" flattened command duplicates on every `--force` run.
|
|
126
|
-
*
|
|
127
|
-
* Checked once per destination directory (not per file) before its copy loop.
|
|
128
|
-
* Returns false and records one `result.errors` entry when `destDir` resolves
|
|
129
|
-
* inside `claudeDir`; the caller should skip the whole loop rather than write
|
|
130
|
-
* file-by-file into the wrong place.
|
|
131
|
-
*/
|
|
132
|
-
export function isSafeConversionTarget(destDir, claudeDir, result, label) {
|
|
133
|
-
let realDest;
|
|
134
|
-
try {
|
|
135
|
-
realDest = fs.realpathSync(destDir);
|
|
136
|
-
}
|
|
137
|
-
catch {
|
|
138
|
-
return true; // doesn't exist yet — mkdirSync will create a real directory
|
|
139
|
-
}
|
|
140
|
-
let realClaude;
|
|
141
|
-
try {
|
|
142
|
-
realClaude = fs.realpathSync(claudeDir);
|
|
143
|
-
}
|
|
144
|
-
catch {
|
|
145
|
-
return true; // no .claude/ to collide with
|
|
146
|
-
}
|
|
147
|
-
if (realDest === realClaude || realDest.startsWith(`${realClaude}${path.sep}`)) {
|
|
148
|
-
result.errors.push(`${label} resolves inside .claude/ (likely a symlink) — skipping to avoid writing converted files back into the Claude source tree. Remove or repoint the symlink and re-run.`);
|
|
149
|
-
return false;
|
|
150
|
-
}
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Skills to copy based on configuration
|
|
155
|
-
*/
|
|
156
|
-
export const SKILLS_MAP = {
|
|
157
|
-
core: [
|
|
158
|
-
'monoswarm',
|
|
159
|
-
'hooks-automation',
|
|
160
|
-
'pair-programming',
|
|
161
|
-
'verification-quality',
|
|
162
|
-
'skill-builder',
|
|
163
|
-
'specialagent',
|
|
164
|
-
'monodesign',
|
|
165
|
-
'monomotion',
|
|
166
|
-
'monolean',
|
|
167
|
-
'monolean-audit',
|
|
168
|
-
'monolean-debt',
|
|
169
|
-
'monolean-help',
|
|
170
|
-
// Read by the marketing agents (CRO, email, competitive content) before
|
|
171
|
-
// they deliver copy.
|
|
172
|
-
'stop-slop',
|
|
173
|
-
// The canonical workflow list comes from the manifest. Keep the wildcard
|
|
174
|
-
// for supplementary legacy workflows that continue to ship during M1;
|
|
175
|
-
// copySkills expands and de-duplicates both sources deterministically.
|
|
176
|
-
...CANONICAL_MASTERMIND_SKILLS,
|
|
177
|
-
'mastermind-*',
|
|
178
|
-
],
|
|
179
|
-
browser: ['agent-browser-testing'],
|
|
180
|
-
// NOTE: memory-toolkit and github-toolkit are single consolidated skills
|
|
181
|
-
// (not one skill per capability) — see .claude/skills/memory-toolkit and
|
|
182
|
-
// .claude/skills/github-toolkit. The finer-grained names previously listed
|
|
183
|
-
// here (memory-advanced, github-code-review, etc.) never had matching
|
|
184
|
-
// source directories and silently copied nothing.
|
|
185
|
-
memory: ['memory-toolkit'],
|
|
186
|
-
github: ['github-toolkit'],
|
|
187
|
-
advanced: ['agentic-jujutsu', 'performance-analysis'],
|
|
188
|
-
};
|
|
189
|
-
/**
|
|
190
|
-
* Commands to copy based on configuration
|
|
191
|
-
*/
|
|
192
|
-
export const COMMANDS_MAP = {
|
|
193
|
-
core: ['mastermind.md', 'tokens.md', 'monobrowse.md', 'ts.md'],
|
|
194
|
-
agents: ['agents'],
|
|
195
|
-
analysis: ['analysis'],
|
|
196
|
-
automation: ['automation'],
|
|
197
|
-
coordination: ['coordination'],
|
|
198
|
-
github: ['github'],
|
|
199
|
-
monoswarm: ['monoswarm'],
|
|
200
|
-
hooks: ['hooks'],
|
|
201
|
-
mastermind: ['mastermind'],
|
|
202
|
-
memory: ['memory'],
|
|
203
|
-
monitoring: ['monitoring'],
|
|
204
|
-
monograph: ['monograph'],
|
|
205
|
-
monomind: ['mastermind'],
|
|
206
|
-
optimization: ['optimization'],
|
|
207
|
-
pair: ['pair'],
|
|
208
|
-
streamChain: ['stream-chain'],
|
|
209
|
-
training: ['training'],
|
|
210
|
-
truth: ['truth'],
|
|
211
|
-
verify: ['verify'],
|
|
212
|
-
workflows: ['workflows'],
|
|
213
|
-
};
|
|
214
|
-
/**
|
|
215
|
-
* Agents to copy based on configuration
|
|
216
|
-
*/
|
|
217
|
-
export const AGENTS_MAP = {
|
|
218
|
-
academic: ['academic'],
|
|
219
|
-
analysis: ['analysis'],
|
|
220
|
-
architecture: ['architecture'],
|
|
221
|
-
consensus: ['consensus'],
|
|
222
|
-
core: ['core'],
|
|
223
|
-
data: ['data'],
|
|
224
|
-
design: ['design'],
|
|
225
|
-
development: ['development'],
|
|
226
|
-
devops: ['devops'],
|
|
227
|
-
documentation: ['documentation'],
|
|
228
|
-
engineering: ['engineering'],
|
|
229
|
-
gameDevelopment: ['game-development'],
|
|
230
|
-
github: ['github'],
|
|
231
|
-
goal: ['goal'],
|
|
232
|
-
marketing: ['marketing'],
|
|
233
|
-
neural: ['neural'],
|
|
234
|
-
optimization: ['optimization'],
|
|
235
|
-
paidMedia: ['paid-media'],
|
|
236
|
-
payments: ['payments'],
|
|
237
|
-
product: ['product'],
|
|
238
|
-
projectManagement: ['project-management'],
|
|
239
|
-
reasoning: ['reasoning'],
|
|
240
|
-
sales: ['sales'],
|
|
241
|
-
schemas: ['schemas'],
|
|
242
|
-
sona: ['sona'],
|
|
243
|
-
spatialComputing: ['spatial-computing'],
|
|
244
|
-
specialists: ['specialists'],
|
|
245
|
-
specialized: ['specialized'],
|
|
246
|
-
sublinear: ['sublinear'],
|
|
247
|
-
support: ['support'],
|
|
248
|
-
monoswarm: ['monoswarm'],
|
|
249
|
-
templates: ['templates'],
|
|
250
|
-
testing: ['testing'],
|
|
251
|
-
};
|
|
252
|
-
/**
|
|
253
|
-
* Directory structure to create
|
|
254
|
-
*/
|
|
255
|
-
export const DIRECTORIES = {
|
|
256
|
-
claude: [
|
|
257
|
-
'.claude',
|
|
258
|
-
'.claude/skills',
|
|
259
|
-
'.claude/commands',
|
|
260
|
-
'.claude/agents',
|
|
261
|
-
'.claude/helpers',
|
|
262
|
-
'.gemini',
|
|
263
|
-
'.gemini/skills',
|
|
264
|
-
'.gemini/rules',
|
|
265
|
-
'.agents',
|
|
266
|
-
'.agents/skills',
|
|
267
|
-
],
|
|
268
|
-
runtime: [
|
|
269
|
-
'.monomind',
|
|
270
|
-
'.monomind/data',
|
|
271
|
-
'.monomind/logs',
|
|
272
|
-
'.monomind/sessions',
|
|
273
|
-
'.monomind/hooks',
|
|
274
|
-
'.monomind/agents',
|
|
275
|
-
'.monomind/workflows',
|
|
276
|
-
],
|
|
277
|
-
};
|
|
278
|
-
/**
|
|
279
|
-
* Provenance manifest for generated .claude content.
|
|
280
|
-
*
|
|
281
|
-
* init used to "clean stale" entries by deleting every name under
|
|
282
|
-
* .claude/{skills,commands,agents} that was absent from the current version's
|
|
283
|
-
* SKILLS_MAP/COMMANDS_MAP/AGENTS_MAP. Every user-authored command and skill is
|
|
284
|
-
* absent from those maps, so that pass deleted user content on the very first
|
|
285
|
-
* run — unrecoverable data loss.
|
|
286
|
-
*
|
|
287
|
-
* The manifest records exactly which entries *this tool* wrote, so the stale
|
|
288
|
-
* sweep can be restricted to those. Anything init did not write is never
|
|
289
|
-
* removed. Projects initialised by an older version have no manifest, so their
|
|
290
|
-
* first run under the fix deletes nothing and seeds the manifest instead;
|
|
291
|
-
* stale generated content may survive one extra run, which is the correct
|
|
292
|
-
* trade (preserving stale generated content is recoverable, deleting user
|
|
293
|
-
* content is not).
|
|
294
|
-
*/
|
|
295
|
-
export const INIT_MANIFEST_REL = path.join('.monomind', 'init-manifest.json');
|
|
296
|
-
/**
|
|
297
|
-
* Read the provenance manifest. Returns null when absent or unreadable —
|
|
298
|
-
* callers must treat that as "provenance unknown", i.e. delete nothing.
|
|
299
|
-
*/
|
|
300
|
-
export function readInitManifest(targetDir) {
|
|
301
|
-
const manifestPath = path.join(targetDir, INIT_MANIFEST_REL);
|
|
302
|
-
try {
|
|
303
|
-
if (!fs.existsSync(manifestPath))
|
|
304
|
-
return null;
|
|
305
|
-
const parsed = JSON.parse(fs.readFileSync(manifestPath, 'utf8'));
|
|
306
|
-
if (!parsed || typeof parsed !== 'object')
|
|
307
|
-
return null;
|
|
308
|
-
return {
|
|
309
|
-
version: typeof parsed.version === 'number' ? parsed.version : 1,
|
|
310
|
-
skills: Array.isArray(parsed.skills)
|
|
311
|
-
? parsed.skills.filter((s) => typeof s === 'string')
|
|
312
|
-
: [],
|
|
313
|
-
commands: Array.isArray(parsed.commands)
|
|
314
|
-
? parsed.commands.filter((s) => typeof s === 'string')
|
|
315
|
-
: [],
|
|
316
|
-
agents: Array.isArray(parsed.agents)
|
|
317
|
-
? parsed.agents.filter((s) => typeof s === 'string')
|
|
318
|
-
: [],
|
|
319
|
-
kimiSkills: Array.isArray(parsed.kimiSkills)
|
|
320
|
-
? parsed.kimiSkills.filter((s) => typeof s === 'string')
|
|
321
|
-
: [],
|
|
322
|
-
kimiPluginCommands: Array.isArray(parsed.kimiPluginCommands)
|
|
323
|
-
? parsed.kimiPluginCommands.filter((s) => typeof s === 'string')
|
|
324
|
-
: [],
|
|
325
|
-
opencodeSkills: Array.isArray(parsed.opencodeSkills)
|
|
326
|
-
? parsed.opencodeSkills.filter((s) => typeof s === 'string')
|
|
327
|
-
: [],
|
|
328
|
-
retired: Array.isArray(parsed.retired)
|
|
329
|
-
? parsed.retired.filter((r) => !!r &&
|
|
330
|
-
typeof r === 'object' &&
|
|
331
|
-
typeof r.section === 'string' &&
|
|
332
|
-
typeof r.name === 'string' &&
|
|
333
|
-
typeof r.movedTo === 'string' &&
|
|
334
|
-
typeof r.at === 'string')
|
|
335
|
-
: [],
|
|
336
|
-
files: stringRecord(parsed.files),
|
|
337
|
-
blocks: stringRecord(parsed.blocks),
|
|
338
|
-
};
|
|
339
|
-
}
|
|
340
|
-
catch {
|
|
341
|
-
return null;
|
|
342
|
-
}
|
|
343
|
-
}
|
|
344
|
-
function stringRecord(value) {
|
|
345
|
-
if (!value || typeof value !== 'object' || Array.isArray(value))
|
|
346
|
-
return {};
|
|
347
|
-
return Object.fromEntries(Object.entries(value).filter((entry) => typeof entry[1] === 'string'));
|
|
348
|
-
}
|
|
349
|
-
/** Replace the manifest's `files` or `blocks` hash map, keeping every other
|
|
350
|
-
* field (see file-guard.ts). */
|
|
351
|
-
export function recordManifestHashes(targetDir, field, hashes) {
|
|
352
|
-
const manifestPath = path.join(targetDir, INIT_MANIFEST_REL);
|
|
353
|
-
const manifest = readInitManifest(targetDir) ?? {
|
|
354
|
-
version: 1,
|
|
355
|
-
skills: [],
|
|
356
|
-
commands: [],
|
|
357
|
-
agents: [],
|
|
358
|
-
kimiSkills: [],
|
|
359
|
-
kimiPluginCommands: [],
|
|
360
|
-
opencodeSkills: [],
|
|
361
|
-
};
|
|
362
|
-
manifest[field] = Object.fromEntries(Object.entries(hashes).sort(([a], [b]) => a.localeCompare(b)));
|
|
363
|
-
try {
|
|
364
|
-
fs.mkdirSync(path.dirname(manifestPath), { recursive: true });
|
|
365
|
-
atomicWriteFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`);
|
|
366
|
-
}
|
|
367
|
-
catch {
|
|
368
|
-
// Non-fatal: without hashes the next run treats these files as unrecorded.
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
/**
|
|
372
|
-
* Names init previously generated in one section. Empty set when no manifest
|
|
373
|
-
* exists — which makes the stale sweep a no-op rather than a delete-everything.
|
|
374
|
-
*/
|
|
375
|
-
export function previouslyGenerated(targetDir, section) {
|
|
376
|
-
return new Set(readInitManifest(targetDir)?.[section] ?? []);
|
|
377
|
-
}
|
|
378
|
-
/**
|
|
379
|
-
* Record the entries init just wrote for one section, merging into any
|
|
380
|
-
* existing manifest so a partial run (e.g. --only-claude, or a section whose
|
|
381
|
-
* source dir was missing) never drops provenance for the other sections.
|
|
382
|
-
*/
|
|
383
|
-
export function recordGenerated(targetDir, section, entries) {
|
|
384
|
-
const manifestPath = path.join(targetDir, INIT_MANIFEST_REL);
|
|
385
|
-
const existing = readInitManifest(targetDir);
|
|
386
|
-
const manifest = existing ?? {
|
|
387
|
-
version: 1,
|
|
388
|
-
skills: [],
|
|
389
|
-
commands: [],
|
|
390
|
-
agents: [],
|
|
391
|
-
kimiSkills: [],
|
|
392
|
-
kimiPluginCommands: [],
|
|
393
|
-
opencodeSkills: [],
|
|
394
|
-
};
|
|
395
|
-
manifest.version = 1;
|
|
396
|
-
manifest[section] = [...new Set(entries)].sort();
|
|
397
|
-
try {
|
|
398
|
-
fs.mkdirSync(path.dirname(manifestPath), { recursive: true });
|
|
399
|
-
atomicWriteFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`);
|
|
400
|
-
}
|
|
401
|
-
catch {
|
|
402
|
-
// Non-fatal: without a manifest the next run simply deletes nothing.
|
|
403
|
-
}
|
|
404
|
-
}
|
|
405
|
-
/**
|
|
406
|
-
* Append one retirement to the manifest's `retired` array (o-38). A separate
|
|
407
|
-
* read-modify-write from `recordGenerated`'s, deliberately: `recordGenerated`
|
|
408
|
-
* REPLACES one section's active-entry list, and calling it after every single
|
|
409
|
-
* retirement (the stale-sweep loop can retire several names) would be wrong.
|
|
410
|
-
* This only ever appends, and appending here happens before the sweep's
|
|
411
|
-
* `recordGenerated` call, so `retired` survives that call's read of the
|
|
412
|
-
* manifest — `recordGenerated` never touches this field.
|
|
413
|
-
*/
|
|
414
|
-
function appendRetiredProvenance(targetDir, entry) {
|
|
415
|
-
const manifestPath = path.join(targetDir, INIT_MANIFEST_REL);
|
|
416
|
-
const existing = readInitManifest(targetDir);
|
|
417
|
-
const manifest = existing ?? {
|
|
418
|
-
version: 1,
|
|
419
|
-
skills: [],
|
|
420
|
-
commands: [],
|
|
421
|
-
agents: [],
|
|
422
|
-
kimiSkills: [],
|
|
423
|
-
kimiPluginCommands: [],
|
|
424
|
-
opencodeSkills: [],
|
|
425
|
-
retired: [],
|
|
426
|
-
};
|
|
427
|
-
manifest.retired = [...(manifest.retired ?? []), entry];
|
|
428
|
-
try {
|
|
429
|
-
fs.mkdirSync(path.dirname(manifestPath), { recursive: true });
|
|
430
|
-
atomicWriteFile(manifestPath, `${JSON.stringify(manifest, null, 2)}\n`);
|
|
431
|
-
}
|
|
432
|
-
catch {
|
|
433
|
-
// Non-fatal, same as recordGenerated: the retire itself already
|
|
434
|
-
// succeeded (the file is safe); only the audit trail entry is lost.
|
|
435
|
-
}
|
|
436
|
-
}
|
|
437
|
-
// One shared retire-destination root per init run, keyed by the run's own
|
|
438
|
-
// InitResult object (created once per `executeInit` call) rather than
|
|
439
|
-
// targetDir — safe under concurrent/sequential runs against different
|
|
440
|
-
// targetDirs in the same process (e.g. a test suite), and lets every
|
|
441
|
-
// retirement in a run land under one timestamped directory instead of a
|
|
442
|
-
// different one per call.
|
|
443
|
-
const retireRoots = new WeakMap();
|
|
444
|
-
function getRetireRoot(targetDir, result) {
|
|
445
|
-
let root = retireRoots.get(result);
|
|
446
|
-
if (!root) {
|
|
447
|
-
root = path.join(targetDir, '.monomind', 'backups', `${Date.now()}-${process.pid}`, 'retired');
|
|
448
|
-
retireRoots.set(result, root);
|
|
449
|
-
}
|
|
450
|
-
return root;
|
|
451
|
-
}
|
|
452
|
-
/**
|
|
453
|
-
* Retire a generated entry instead of deleting it (o-38): a name the
|
|
454
|
-
* manifest recorded that this version no longer ships anywhere is moved to
|
|
455
|
-
* `.monomind/backups/<run-timestamp>-<pid>/retired/<label>/` rather than
|
|
456
|
-
* `rmSync`-ed. The manifest's granularity is per-top-level-entry — "did init
|
|
457
|
-
* ever generate this name" — not per-file, so a stale-sweep candidate can
|
|
458
|
-
* still hold user files added since (a note beside a retired skill, e.g.)
|
|
459
|
-
* that must survive byte-identical.
|
|
460
|
-
*
|
|
461
|
-
* `label` doubles as the retirement's section plus display name, e.g.
|
|
462
|
-
* `skills/my-retired-skill` — the first path segment is an
|
|
463
|
-
* `InitManifestSection` value for the five real call sites, or a
|
|
464
|
-
* descriptive mirror label (`gemini-skills`, `agents-skills`,
|
|
465
|
-
* `opencode-skills`) for a mirror copy that turned out to hold user-added
|
|
466
|
-
* content (see `copySkills` / `writeOpencodeFiles`).
|
|
467
|
-
*
|
|
468
|
-
* On any failure, the entry is LEFT IN PLACE and a warning is recorded in
|
|
469
|
-
* `result.errors` — this must never fall back to deleting; a fix that
|
|
470
|
-
* deletes when the move fails is the original bug with extra steps.
|
|
471
|
-
*/
|
|
472
|
-
export function retireGeneratedEntry(targetDir, label, stalePath, result) {
|
|
473
|
-
const sepIndex = label.indexOf('/');
|
|
474
|
-
const section = sepIndex === -1 ? label : label.slice(0, sepIndex);
|
|
475
|
-
const name = sepIndex === -1 ? label : label.slice(sepIndex + 1);
|
|
476
|
-
const dest = path.join(getRetireRoot(targetDir, result), label);
|
|
477
|
-
try {
|
|
478
|
-
fs.mkdirSync(path.dirname(dest), { recursive: true });
|
|
479
|
-
try {
|
|
480
|
-
fs.renameSync(stalePath, dest);
|
|
481
|
-
}
|
|
482
|
-
catch (error) {
|
|
483
|
-
if (error.code !== 'EXDEV')
|
|
484
|
-
throw error;
|
|
485
|
-
fs.cpSync(stalePath, dest, { recursive: true });
|
|
486
|
-
fs.rmSync(stalePath, { recursive: true, force: true });
|
|
487
|
-
}
|
|
488
|
-
const movedTo = path.relative(targetDir, dest);
|
|
489
|
-
result.removed.push(`[retired] ${label} → ${movedTo}`);
|
|
490
|
-
appendRetiredProvenance(targetDir, { section, name, movedTo, at: new Date().toISOString() });
|
|
491
|
-
}
|
|
492
|
-
catch (error) {
|
|
493
|
-
result.errors.push(`Could not retire ${label} (left in place): ${error instanceof Error ? error.message : String(error)}`);
|
|
494
|
-
}
|
|
495
|
-
}
|
|
496
|
-
/**
|
|
497
|
-
* Every skill name this version ships, across ALL `SKILLS_MAP` sections —
|
|
498
|
-
* unlike the run's `skillsToCopy` selection (filtered by
|
|
499
|
-
* `options.skills.{core,memory,github,browser,advanced,all}`), this ignores
|
|
500
|
-
* what the user asked for THIS run entirely. o-38: the stale sweep must ask
|
|
501
|
-
* "does this version still ship X" and never "did the user select X this
|
|
502
|
-
* run" — the two questions were conflated, so `--minimal` (a documented
|
|
503
|
-
* flag, no upgrade required) deleted every previously-installed skill
|
|
504
|
-
* outside the minimal set, user files inside included. `mastermind-*`
|
|
505
|
-
* expands against `sourceSkillsDir` exactly as `copySkills`'s own expansion
|
|
506
|
-
* does — the two must agree, or a name real to one and not the other would
|
|
507
|
-
* either wrongly survive as "shipped" or wrongly retire as "gone".
|
|
508
|
-
*/
|
|
509
|
-
export function allShippedSkills(sourceSkillsDir) {
|
|
510
|
-
const shipped = new Set();
|
|
511
|
-
for (const entry of new Set(Object.values(SKILLS_MAP).flat())) {
|
|
512
|
-
if (!entry.endsWith('*')) {
|
|
513
|
-
shipped.add(entry);
|
|
514
|
-
continue;
|
|
515
|
-
}
|
|
516
|
-
const prefix = entry.slice(0, -1);
|
|
517
|
-
if (!fs.existsSync(sourceSkillsDir))
|
|
518
|
-
continue;
|
|
519
|
-
for (const name of fs.readdirSync(sourceSkillsDir)) {
|
|
520
|
-
if (name.startsWith(prefix) && fs.existsSync(path.join(sourceSkillsDir, name, 'SKILL.md'))) {
|
|
521
|
-
shipped.add(name);
|
|
522
|
-
}
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
return shipped;
|
|
526
|
-
}
|
|
527
|
-
/** Every command name this version ships, across ALL `COMMANDS_MAP`
|
|
528
|
-
* sections — see `allShippedSkills`'s doc comment; `COMMANDS_MAP` has no
|
|
529
|
-
* glob entries, so this is a plain flatten. */
|
|
530
|
-
export function allShippedCommands() {
|
|
531
|
-
return new Set(Object.values(COMMANDS_MAP).flat());
|
|
532
|
-
}
|
|
533
|
-
/** Every agent category name this version ships, across ALL `AGENTS_MAP`
|
|
534
|
-
* sections — see `allShippedSkills`'s doc comment; `AGENTS_MAP` has no
|
|
535
|
-
* glob entries, so this is a plain flatten. */
|
|
536
|
-
export function allShippedAgents() {
|
|
537
|
-
return new Set(Object.values(AGENTS_MAP).flat());
|
|
538
|
-
}
|
|
539
64
|
/**
|
|
540
65
|
* Find source helpers directory.
|
|
541
66
|
* Validates that the directory contains hook-handler.cjs AND its required
|
|
@@ -713,104 +238,13 @@ export function findSourceDir(type, sourceBaseDir) {
|
|
|
713
238
|
}
|
|
714
239
|
return null;
|
|
715
240
|
}
|
|
716
|
-
/** Relative file paths under `dir` (files only). Used by every o-38 mirror
|
|
717
|
-
* sweep (copySkills's `.gemini`/`.agents`, writeOpencodeFiles's
|
|
718
|
-
* `.opencode/skills`) to tell "content the source regenerated" from "a file
|
|
719
|
-
* someone added directly inside the mirror" (o-38 §2·0b). */
|
|
720
|
-
export function listFilesRecursive(dir) {
|
|
721
|
-
const out = new Set();
|
|
722
|
-
if (!fs.existsSync(dir))
|
|
723
|
-
return out;
|
|
724
|
-
const walk = (d) => {
|
|
725
|
-
for (const entry of fs.readdirSync(d, { withFileTypes: true })) {
|
|
726
|
-
const full = path.join(d, entry.name);
|
|
727
|
-
if (entry.isDirectory())
|
|
728
|
-
walk(full);
|
|
729
|
-
else
|
|
730
|
-
out.add(path.relative(dir, full));
|
|
731
|
-
}
|
|
732
|
-
};
|
|
733
|
-
walk(dir);
|
|
734
|
-
return out;
|
|
735
|
-
}
|
|
736
|
-
/**
|
|
737
|
-
* Copy directory recursively
|
|
738
|
-
*/
|
|
739
|
-
export function copyDirRecursive(src, dest) {
|
|
740
|
-
fs.mkdirSync(dest, { recursive: true });
|
|
741
|
-
const entries = fs.readdirSync(src, { withFileTypes: true });
|
|
742
|
-
for (const entry of entries) {
|
|
743
|
-
// Skip exFAT/macOS AppleDouble junk files (e.g. "._foo.js") so they don't
|
|
744
|
-
// get perpetuated into every newly-initialized project.
|
|
745
|
-
if (entry.name.startsWith('._'))
|
|
746
|
-
continue;
|
|
747
|
-
const srcPath = path.join(src, entry.name);
|
|
748
|
-
const destPath = path.join(dest, entry.name);
|
|
749
|
-
if (entry.isDirectory()) {
|
|
750
|
-
copyDirRecursive(srcPath, destPath);
|
|
751
|
-
}
|
|
752
|
-
else {
|
|
753
|
-
fs.copyFileSync(srcPath, destPath);
|
|
754
|
-
}
|
|
755
|
-
}
|
|
756
|
-
}
|
|
757
|
-
/**
|
|
758
|
-
* Count files with extension in directory
|
|
759
|
-
*/
|
|
760
|
-
export function countFiles(dir, ext) {
|
|
761
|
-
let count = 0;
|
|
762
|
-
const entries = fs.readdirSync(dir, { withFileTypes: true });
|
|
763
|
-
for (const entry of entries) {
|
|
764
|
-
const fullPath = path.join(dir, entry.name);
|
|
765
|
-
if (entry.isDirectory()) {
|
|
766
|
-
count += countFiles(fullPath, ext);
|
|
767
|
-
}
|
|
768
|
-
else if (entry.name.endsWith(ext)) {
|
|
769
|
-
count++;
|
|
770
|
-
}
|
|
771
|
-
}
|
|
772
|
-
return count;
|
|
773
|
-
}
|
|
774
|
-
/** Recursively collect .md files under dir, returned relative to dir. */
|
|
775
|
-
export function walkMdFiles(dir) {
|
|
776
|
-
const out = [];
|
|
777
|
-
const visit = (d, prefix) => {
|
|
778
|
-
let entries;
|
|
779
|
-
try {
|
|
780
|
-
entries = fs.readdirSync(d, { withFileTypes: true });
|
|
781
|
-
}
|
|
782
|
-
catch {
|
|
783
|
-
return;
|
|
784
|
-
}
|
|
785
|
-
for (const e of entries) {
|
|
786
|
-
const rel = prefix ? `${prefix}${path.sep}${e.name}` : e.name;
|
|
787
|
-
if (e.isDirectory())
|
|
788
|
-
visit(path.join(d, e.name), rel);
|
|
789
|
-
else if (e.isFile() && /\.md$/i.test(e.name))
|
|
790
|
-
out.push(rel);
|
|
791
|
-
}
|
|
792
|
-
};
|
|
793
|
-
visit(dir, '');
|
|
794
|
-
return out;
|
|
795
|
-
}
|
|
796
|
-
/** Skip READMEs and other non-definition markdown. */
|
|
797
|
-
export function isLikelyUserFile(rel) {
|
|
798
|
-
const base = path.basename(rel).toLowerCase();
|
|
799
|
-
if (base === 'readme.md' || base === 'readme')
|
|
800
|
-
return false;
|
|
801
|
-
return true;
|
|
802
|
-
}
|
|
803
|
-
/** Pull the `name:` scalar from a frontmatter block (best-effort). */
|
|
804
|
-
export function extractFmName(md) {
|
|
805
|
-
const m = md.match(/^---\r?\n[\s\S]*?\r?\n---/);
|
|
806
|
-
if (!m)
|
|
807
|
-
return null;
|
|
808
|
-
const fm = m[0];
|
|
809
|
-
const nm = fm.match(/^name\s*:\s*(.+?)\s*$/m);
|
|
810
|
-
return nm ? nm[1].replace(/^["']|["']$/g, '') : null;
|
|
811
|
-
}
|
|
812
241
|
// The managed-block merge primitive lives in its own module — it grew the
|
|
813
|
-
// legacy-content migration for GH #276.
|
|
814
|
-
//
|
|
242
|
+
// legacy-content migration for GH #276. The asset maps, fs helpers and the
|
|
243
|
+
// init manifest were split out too (500-line limit). Re-exported here so the
|
|
244
|
+
// existing `from './shared.js'` import sites, and scripts importing
|
|
245
|
+
// dist/src/init/shared.js, keep working.
|
|
246
|
+
export * from './asset-maps.js';
|
|
247
|
+
export * from './fs-helpers.js';
|
|
248
|
+
export * from './init-manifest.js';
|
|
815
249
|
export { mergeGeneratedBlock } from './managed-block.js';
|
|
816
250
|
//# sourceMappingURL=shared.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/init/shared.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAKnE,2BAA2B;AAC3B,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ;AAE7D;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,OAAO,OAAO,CAAC,WAAW,EAAE,MAAM,IAAI,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,eAAe,CAAC,IAAiB;IAC/C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,QAAQ,MAAM,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5F,CAAC;AACD,MAAM,2BAA2B,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;AAEnF;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,4BAA4B,CAAC,GAAW;IACtD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACzB,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAc,EACd,OAAwB,EACxB,QAAyB;IAEzB,MAAM,GAAG,GAAG,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,MAAM,CAAC;IAC3C,IAAI,QAAQ,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC5C,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;SAAM,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACvC,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,CAAC;QACN,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,mDAAmD,CAAC;AAEhF,SAAS,yBAAyB,CAAC,OAAe;IAChD,OAAO,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,eAAe,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,OAAe;IAChE,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAClD,IAAI,yBAAyB,CAAC,QAAQ,CAAC,KAAK,yBAAyB,CAAC,OAAO,CAAC;YAAE,OAAO;IACzF,CAAC;IAAC,MAAM,CAAC;QACP,wDAAwD;IAC1D,CAAC;IACD,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACnC,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAe,EACf,SAAiB,EACjB,MAAkB,EAClB,KAAa;IAEb,IAAI,QAAgB,CAAC;IACrB,IAAI,CAAC;QACH,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,6DAA6D;IAC5E,CAAC;IACD,IAAI,UAAkB,CAAC;IACvB,IAAI,CAAC;QACH,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,8BAA8B;IAC7C,CAAC;IACD,IAAI,QAAQ,KAAK,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,IAAI,CAChB,GAAG,KAAK,sKAAsK,CAC/K,CAAC;QACF,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAA6B;IAClD,IAAI,EAAE;QACJ,WAAW;QACX,kBAAkB;QAClB,kBAAkB;QAClB,sBAAsB;QACtB,eAAe;QACf,cAAc;QACd,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,gBAAgB;QAChB,eAAe;QACf,eAAe;QACf,wEAAwE;QACxE,qBAAqB;QACrB,WAAW;QACX,yEAAyE;QACzE,sEAAsE;QACtE,uEAAuE;QACvE,GAAG,2BAA2B;QAC9B,cAAc;KACf;IACD,OAAO,EAAE,CAAC,uBAAuB,CAAC;IAClC,yEAAyE;IACzE,yEAAyE;IACzE,2EAA2E;IAC3E,sEAAsE;IACtE,kDAAkD;IAClD,MAAM,EAAE,CAAC,gBAAgB,CAAC;IAC1B,MAAM,EAAE,CAAC,gBAAgB,CAAC;IAC1B,QAAQ,EAAE,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;CACtD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAA6B;IACpD,IAAI,EAAE,CAAC,eAAe,EAAE,WAAW,EAAE,eAAe,EAAE,OAAO,CAAC;IAC9D,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,YAAY,EAAE,CAAC,cAAc,CAAC;IAC9B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,UAAU,EAAE,CAAC,YAAY,CAAC;IAC1B,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,QAAQ,EAAE,CAAC,YAAY,CAAC;IACxB,YAAY,EAAE,CAAC,cAAc,CAAC;IAC9B,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,WAAW,EAAE,CAAC,cAAc,CAAC;IAC7B,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,SAAS,EAAE,CAAC,WAAW,CAAC;CACzB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,UAAU,GAA6B;IAClD,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,YAAY,EAAE,CAAC,cAAc,CAAC;IAC9B,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,aAAa,EAAE,CAAC,eAAe,CAAC;IAChC,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,eAAe,EAAE,CAAC,kBAAkB,CAAC;IACrC,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,MAAM,EAAE,CAAC,QAAQ,CAAC;IAClB,YAAY,EAAE,CAAC,cAAc,CAAC;IAC9B,SAAS,EAAE,CAAC,YAAY,CAAC;IACzB,QAAQ,EAAE,CAAC,UAAU,CAAC;IACtB,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,iBAAiB,EAAE,CAAC,oBAAoB,CAAC;IACzC,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,KAAK,EAAE,CAAC,OAAO,CAAC;IAChB,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,IAAI,EAAE,CAAC,MAAM,CAAC;IACd,gBAAgB,EAAE,CAAC,mBAAmB,CAAC;IACvC,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,WAAW,EAAE,CAAC,aAAa,CAAC;IAC5B,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,OAAO,EAAE,CAAC,SAAS,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,MAAM,EAAE;QACN,SAAS;QACT,gBAAgB;QAChB,kBAAkB;QAClB,gBAAgB;QAChB,iBAAiB;QACjB,SAAS;QACT,gBAAgB;QAChB,eAAe;QACf,SAAS;QACT,gBAAgB;KACjB;IACD,OAAO,EAAE;QACP,WAAW;QACX,gBAAgB;QAChB,gBAAgB;QAChB,oBAAoB;QACpB,iBAAiB;QACjB,kBAAkB;QAClB,qBAAqB;KACtB;CACF,CAAC;AAEF;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,oBAAoB,CAAC,CAAC;AAyD9E;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC7D,IAAI,CAAC;QACH,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC;YAAE,OAAO,IAAI,CAAC;QAC9C,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACvD,OAAO;YACL,OAAO,EAAE,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAChE,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBAC7D,CAAC,CAAC,EAAE;YACN,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;gBACtC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBAC/D,CAAC,CAAC,EAAE;YACN,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBAC7D,CAAC,CAAC,EAAE;YACN,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC1C,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACjE,CAAC,CAAC,EAAE;YACN,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBAC1D,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACzE,CAAC,CAAC,EAAE;YACN,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC;gBAClD,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;gBACrE,CAAC,CAAC,EAAE;YACN,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;gBACpC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CACnB,CAAC,CAAU,EAAqB,EAAE,CAChC,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,KAAK,QAAQ;oBACrB,OAAQ,CAAkB,CAAC,OAAO,KAAK,QAAQ;oBAC/C,OAAQ,CAAkB,CAAC,IAAI,KAAK,QAAQ;oBAC5C,OAAQ,CAAkB,CAAC,OAAO,KAAK,QAAQ;oBAC/C,OAAQ,CAAkB,CAAC,EAAE,KAAK,QAAQ,CAC7C;gBACH,CAAC,CAAC,EAAE;YACN,KAAK,EAAE,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC;YACjC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;SACpC,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAc;IAClC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC3E,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAC1B,CAAC,KAAK,EAA6B,EAAE,CAAC,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CACnE,CACF,CAAC;AACJ,CAAC;AAED;iCACiC;AACjC,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,KAAyB,EACzB,MAA8B;IAE9B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAiB,gBAAgB,CAAC,SAAS,CAAC,IAAI;QAC5D,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,cAAc,EAAE,EAAE;KACnB,CAAC;IACF,QAAQ,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,WAAW,CAClC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAC9D,CAAC;IACF,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,eAAe,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;IAC7E,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,SAAiB,EAAE,OAA4B;IACjF,OAAO,IAAI,GAAG,CAAC,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAC7B,SAAiB,EACjB,OAA4B,EAC5B,OAAiB;IAEjB,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAiB,QAAQ,IAAI;QACzC,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,cAAc,EAAE,EAAE;KACnB,CAAC;IACF,QAAQ,CAAC,OAAO,GAAG,CAAC,CAAC;IACrB,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACjD,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,eAAe,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,qEAAqE;IACvE,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,uBAAuB,CAAC,SAAiB,EAAE,KAAmB;IACrE,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAiB,QAAQ,IAAI;QACzC,OAAO,EAAE,CAAC;QACV,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,EAAE;QACZ,MAAM,EAAE,EAAE;QACV,UAAU,EAAE,EAAE;QACd,kBAAkB,EAAE,EAAE;QACtB,cAAc,EAAE,EAAE;QAClB,OAAO,EAAE,EAAE;KACZ,CAAC;IACF,QAAQ,CAAC,OAAO,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;IACxD,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,eAAe,CAAC,YAAY,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;IAC1E,CAAC;IAAC,MAAM,CAAC;QACP,gEAAgE;QAChE,oEAAoE;IACtE,CAAC;AACH,CAAC;AAED,0EAA0E;AAC1E,sEAAsE;AACtE,sEAAsE;AACtE,qEAAqE;AACrE,wEAAwE;AACxE,0BAA0B;AAC1B,MAAM,WAAW,GAAG,IAAI,OAAO,EAAsB,CAAC;AAEtD,SAAS,aAAa,CAAC,SAAiB,EAAE,MAAkB;IAC1D,IAAI,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,CAAC,CAAC;QAC/F,WAAW,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,KAAa,EACb,SAAiB,EACjB,MAAkB;IAElB,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACnE,MAAM,IAAI,GAAG,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,KAAK,CAAC,CAAC;IAChE,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC;YACH,EAAE,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACjC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,OAAO;gBAAE,MAAM,KAAK,CAAC;YACnE,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,KAAK,MAAM,OAAO,EAAE,CAAC,CAAC;QACvD,uBAAuB,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC/F,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAChB,oBAAoB,KAAK,qBAAqB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACvG,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,gBAAgB,CAAC,eAAuB;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC9D,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACnB,SAAS;QACX,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAClC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC;YAAE,SAAS;QAC9C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,WAAW,CAAC,eAAe,CAAC,EAAE,CAAC;YACnD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC;gBAC3F,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;gDAEgD;AAChD,MAAM,UAAU,kBAAkB;IAChC,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;gDAEgD;AAChD,MAAM,UAAU,gBAAgB;IAC9B,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AACnD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,aAAsB;IACzD,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,6EAA6E;IAC7E,MAAM,cAAc,GAAG;QACrB,kBAAkB;QAClB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC;QACnC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,kBAAkB,CAAC;KACvC,CAAC;IAEF,gEAAgE;IAChE,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,2EAA2E;IAC3E,mFAAmF;IACnF,uFAAuF;IACvF,KAAK,MAAM,OAAO,IAAI;QACpB,kCAAkC;QAClC,8CAA8C;QAC9C,4BAA4B;KAC7B,EAAE,CAAC;QACF,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAChD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC1C,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;YAC7D,MAAM;QACR,CAAC;QAAC,MAAM,CAAC;YACP,2CAA2C;QAC7C,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACpE,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAEnC,8DAA8D;IAC9D,IAAI,UAAU,GAAG,SAAS,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,IAAI,SAAS,KAAK,UAAU;YAAE,MAAM,CAAC,sBAAsB;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/D,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAChC,UAAU,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,yEAAyE;IACzE,4EAA4E;IAC5E,4EAA4E;IAC5E,uEAAuE;IACvE,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,4EAA4E;IAC5E,SAAS;IAET,gEAAgE;IAChE,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACpF,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;2EAC2E;AAC3E,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC;AAElE;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,SAAiB,EACjB,gBAAgC;IAEhC,MAAM,GAAG,GAAG,gBAAgB,IAAI,oBAAoB,EAAE,CAAC;IACvD,MAAM,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,0BAA0B,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,IAAI,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAEjD,CAAC;QACF,MAAM,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;QACpD,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,EAAE,CAAC;IAC3E,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,aAAsB;IACxD,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,gEAAgE;IAChE,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,uDAAuD;IACvD,4DAA4D;IAC5D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IACxD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;QACjC,aAAa,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,sCAAsC;IAC9E,CAAC;IAED,8CAA8C;IAC9C,IAAI,UAAU,GAAG,SAAS,CAAC;IAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjC,CAAC;QACD,UAAU,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa,CAC3B,IAAsC,EACtC,aAAsB;IAEtB,wCAAwC;IACxC,MAAM,aAAa,GAAa,EAAE,CAAC;IAEnC,8DAA8D;IAC9D,IAAI,aAAa,EAAE,CAAC;QAClB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,6DAA6D;IAC7D,0DAA0D;IAC1D,2EAA2E;IAC3E,kGAAkG;IAClG,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACjE,IAAI,EAAE,CAAC,UAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QACpC,aAAa,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,sCAAsC;IACjF,CAAC;IAED,8CAA8C;IAC9C,MAAM,QAAQ,GAAG,SAAS,CAAC;IAE3B,gEAAgE;IAChE,IAAI,UAAU,GAAG,QAAQ,CAAC;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC5D,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YACjC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACpC,CAAC;QACD,UAAU,GAAG,SAAS,CAAC;IACzB,CAAC;IAED,uDAAuD;IACvD,MAAM,QAAQ,GAAG;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC;QACzC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC;KACtD,CAAC;IACF,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC;IAEhC,gCAAgC;IAChC,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,aAAa,CAAC,IAAI,CAChB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CACtD,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,aAAa,CAAC,IAAI,CAChB,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,EACxC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAC/C,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;8DAG8D;AAC9D,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IACpC,MAAM,IAAI,GAAG,CAAC,CAAS,EAAE,EAAE;QACzB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,KAAK,CAAC,WAAW,EAAE;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC;;gBAC/B,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC;IACF,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,GAAW,EAAE,IAAY;IACxD,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAExC,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,0EAA0E;QAC1E,wDAAwD;QACxD,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE7C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,GAAW,EAAE,GAAW;IACjD,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAE7D,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAE5C,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;YACxB,KAAK,IAAI,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QACrC,CAAC;aAAM,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACpC,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,yEAAyE;AACzE,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,MAAc,EAAE,EAAE;QAC1C,IAAI,OAAoB,CAAC;QACzB,IAAI,CAAC;YACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,CAAC,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO;QACT,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC9D,IAAI,CAAC,CAAC,WAAW,EAAE;gBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;iBACjD,IAAI,CAAC,CAAC,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;gBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACf,OAAO,GAAG,CAAC;AACb,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,gBAAgB,CAAC,GAAW;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAAC,EAAU;IACtC,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAChD,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IACpB,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC9C,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AACvD,CAAC;AAED,0EAA0E;AAC1E,yEAAyE;AACzE,kDAAkD;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../../src/init/shared.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../../src/init/upgrade.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../../src/init/upgrade.ts"],"names":[],"mappings":"AAAA;;GAEG;AAWH,OAAO,EAAuB,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAcpF;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,kCAAkC;IAClC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,+BAA+B;IAC/B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,gFAAgF;IAChF,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,qEAAqE;IACrE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,sEAAsE;IACtE,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AA0LD;;;;;GAKG;AACH,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,eAAe,UAAQ,GACtB,OAAO,CAAC,aAAa,CAAC,CA6RxB;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,MAAM,EACjB,eAAe,UAAQ,GACtB,OAAO,CAAC,aAAa,CAAC,CA2IxB"}
|