@tom2012/cc-web 2026.5.15-e → 2026.5.15-g
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/README.md +1 -1
- package/backend/dist/tracks/__tests__/verify-starter-templates.d.ts +17 -10
- package/backend/dist/tracks/__tests__/verify-starter-templates.d.ts.map +1 -1
- package/backend/dist/tracks/__tests__/verify-starter-templates.js +110 -35
- package/backend/dist/tracks/__tests__/verify-starter-templates.js.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/builder.d.ts.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/builder.js +37 -4
- package/backend/vendor/@tom2012/train-core/dist/builder.js.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/builtins.d.ts.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/builtins.js +13 -1
- package/backend/vendor/@tom2012/train-core/dist/builtins.js.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/interpreter.d.ts.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/interpreter.js +55 -6
- package/backend/vendor/@tom2012/train-core/dist/interpreter.js.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/module-loader.d.ts.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/module-loader.js +15 -0
- package/backend/vendor/@tom2012/train-core/dist/module-loader.js.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/parser.d.ts +3 -0
- package/backend/vendor/@tom2012/train-core/dist/parser.d.ts.map +1 -1
- package/backend/vendor/@tom2012/train-core/dist/parser.js +26 -3
- package/backend/vendor/@tom2012/train-core/dist/parser.js.map +1 -1
- package/frontend/dist/assets/{ChatOverlay-DkGLWbKQ.js → ChatOverlay-BigXori6.js} +1 -1
- package/frontend/dist/assets/{GraphPreview-DXZ3AviI.js → GraphPreview-BkPky-TI.js} +1 -1
- package/frontend/dist/assets/{MobilePage-_j-29xar.js → MobilePage-IGjtsg4k.js} +3 -3
- package/frontend/dist/assets/{OfficePreview-v7w2uAKM.js → OfficePreview-k40TguA5.js} +2 -2
- package/frontend/dist/assets/{PdfPreview-DzW3MlNU.js → PdfPreview-Cf8-GCtH.js} +1 -1
- package/frontend/dist/assets/{ProjectPage-BQG5oG4t.js → ProjectPage-BfRSuGNi.js} +4 -4
- package/frontend/dist/assets/{SettingsPage-C23Lj2v_.js → SettingsPage-CVZcaQ3R.js} +1 -1
- package/frontend/dist/assets/{SkillHubPage-BGND7gBE.js → SkillHubPage-BpRh93-z.js} +1 -1
- package/frontend/dist/assets/{TrackEditor-D1fPK_Jb.js → TrackEditor-BxTMmmLm.js} +3 -3
- package/frontend/dist/assets/{chevron-down-P2HTs96y.js → chevron-down-Dys4vcAs.js} +1 -1
- package/frontend/dist/assets/{cssMode-DRf316-W.js → cssMode-BELivHMu.js} +1 -1
- package/frontend/dist/assets/{editor.main-BKXLd7u4.js → editor.main-CKVebMR9.js} +7 -7
- package/frontend/dist/assets/{freemarker2-HzFVoxpO.js → freemarker2-TNJanLhm.js} +1 -1
- package/frontend/dist/assets/{handlebars-DZuTrvH7.js → handlebars-B3v55Vhh.js} +1 -1
- package/frontend/dist/assets/{html-CFuwEHaY.js → html-BQpZAffq.js} +1 -1
- package/frontend/dist/assets/{htmlMode-GZ3cIkqy.js → htmlMode-CdyV2SNL.js} +1 -1
- package/frontend/dist/assets/{index-z4MFC7Mu.js → index-BXSNl9gW.js} +1 -1
- package/frontend/dist/assets/{index-DCWtUdhh.js → index-CRx61OUk.js} +1 -1
- package/frontend/dist/assets/{index-DeWj_k0E.js → index-Dyb7Lej-.js} +2 -2
- package/frontend/dist/assets/{index-CkkbnVk_.js → index-y1WxRtWz.js} +1 -1
- package/frontend/dist/assets/{javascript-BG0wx3op.js → javascript-fg8xZnXs.js} +1 -1
- package/frontend/dist/assets/{jsonMode-BfaBjVRh.js → jsonMode-Bnr3fl29.js} +1 -1
- package/frontend/dist/assets/{jszip.min-BXZEE3jp.js → jszip.min-CW5dbhJE.js} +1 -1
- package/frontend/dist/assets/{liquid-C56X6aBB.js → liquid-cd7iiptp.js} +1 -1
- package/frontend/dist/assets/{mdx-Cw1KN-mJ.js → mdx-Bi-AeiES.js} +1 -1
- package/frontend/dist/assets/{python-BjnRAFHZ.js → python-CwYGkoEx.js} +1 -1
- package/frontend/dist/assets/{razor-DmrYXNRF.js → razor-BxDZcept.js} +1 -1
- package/frontend/dist/assets/{select-DAoeCy88.js → select-Bm9XoR-Q.js} +1 -1
- package/frontend/dist/assets/{tsMode-hkEzrc7F.js → tsMode-CGypMWLJ.js} +1 -1
- package/frontend/dist/assets/{typescript-CHfVHnEC.js → typescript-BPBAfhzM.js} +1 -1
- package/frontend/dist/assets/{user-CRCDBTUo.js → user-Bg3xPKf3.js} +1 -1
- package/frontend/dist/assets/{xml-Cs-AR0XK.js → xml-BsI1h9KH.js} +1 -1
- package/frontend/dist/assets/{yaml-C3YNUfzf.js → yaml-DXaWyEXz.js} +1 -1
- package/frontend/dist/index.html +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
A self-hosted web application (distributed as npm package) that provides a browser-based interface for [Claude Code](https://docs.anthropic.com/en/docs/claude-code) CLI sessions. Create projects, each with a persistent terminal running Claude Code, and interact with them through a real-time terminal UI.
|
|
4
4
|
|
|
5
|
-
**Current version**: v2026.5.15-
|
|
5
|
+
**Current version**: v2026.5.15-g | [GitHub](https://github.com/zbc0315/cc-web) | MIT License
|
|
6
6
|
|
|
7
7
|
## Features
|
|
8
8
|
|
|
@@ -1,17 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Sanity check: the starter .tr templates that the frontend renders into
|
|
3
|
-
* the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must
|
|
4
|
-
* cleanly under @tom2012/train-core. v-15-d shipped templates whose
|
|
5
|
-
* return type was `-> object {` — `object` is a structural-type keyword
|
|
6
|
-
* that requires `{ field: T, ... }` field syntax, so the parser misread
|
|
7
|
-
* the function body as object fields and rejected `let` as not an
|
|
8
|
-
* Identifier. The track started and finished in <10ms with status=failed.
|
|
3
|
+
* the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must:
|
|
9
4
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
5
|
+
* 1. Parse cleanly under @tom2012/train-core (no lex/parse errors).
|
|
6
|
+
* 2. Declare `main` with ZERO parameters. ccweb's run button posts
|
|
7
|
+
* args=[] (there's no UI to supply arguments), so a starter whose
|
|
8
|
+
* main takes args fails at runtime with "main() expects N arg(s),
|
|
9
|
+
* got 0" — exactly the v-15-e bug that wasted user time.
|
|
10
|
+
* 3. For STARTER_BASIC (no __ccweb_ask_user dependency): run main()
|
|
11
|
+
* end-to-end through a mock LLM adapter and assert ok=true. This
|
|
12
|
+
* is the strong check — anything that compiles+resolves but
|
|
13
|
+
* explodes at runtime gets caught here.
|
|
14
|
+
* 4. For STARTER_ASK_USER: parse + main-is-zero-arg only; running it
|
|
15
|
+
* requires the ccweb-specific __ccweb_ask_user builtin which
|
|
16
|
+
* train-core doesn't ship.
|
|
13
17
|
*
|
|
14
|
-
*
|
|
18
|
+
* Extracts STARTER_* template literals from TracksListDialog.tsx
|
|
19
|
+
* (single source of truth — do not duplicate the text here).
|
|
20
|
+
*
|
|
21
|
+
* Run: cd backend && npx tsx src/tracks/__tests__/verify-starter-templates.ts
|
|
15
22
|
*/
|
|
16
23
|
export {};
|
|
17
24
|
//# sourceMappingURL=verify-starter-templates.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-starter-templates.d.ts","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"verify-starter-templates.d.ts","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG"}
|
|
@@ -1,18 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Sanity check: the starter .tr templates that the frontend renders into
|
|
4
|
-
* the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must
|
|
5
|
-
* cleanly under @tom2012/train-core. v-15-d shipped templates whose
|
|
6
|
-
* return type was `-> object {` — `object` is a structural-type keyword
|
|
7
|
-
* that requires `{ field: T, ... }` field syntax, so the parser misread
|
|
8
|
-
* the function body as object fields and rejected `let` as not an
|
|
9
|
-
* Identifier. The track started and finished in <10ms with status=failed.
|
|
4
|
+
* the TracksListDialog (STARTER_BASIC / STARTER_ASK_USER) must:
|
|
10
5
|
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
6
|
+
* 1. Parse cleanly under @tom2012/train-core (no lex/parse errors).
|
|
7
|
+
* 2. Declare `main` with ZERO parameters. ccweb's run button posts
|
|
8
|
+
* args=[] (there's no UI to supply arguments), so a starter whose
|
|
9
|
+
* main takes args fails at runtime with "main() expects N arg(s),
|
|
10
|
+
* got 0" — exactly the v-15-e bug that wasted user time.
|
|
11
|
+
* 3. For STARTER_BASIC (no __ccweb_ask_user dependency): run main()
|
|
12
|
+
* end-to-end through a mock LLM adapter and assert ok=true. This
|
|
13
|
+
* is the strong check — anything that compiles+resolves but
|
|
14
|
+
* explodes at runtime gets caught here.
|
|
15
|
+
* 4. For STARTER_ASK_USER: parse + main-is-zero-arg only; running it
|
|
16
|
+
* requires the ccweb-specific __ccweb_ask_user builtin which
|
|
17
|
+
* train-core doesn't ship.
|
|
14
18
|
*
|
|
15
|
-
*
|
|
19
|
+
* Extracts STARTER_* template literals from TracksListDialog.tsx
|
|
20
|
+
* (single source of truth — do not duplicate the text here).
|
|
21
|
+
*
|
|
22
|
+
* Run: cd backend && npx tsx src/tracks/__tests__/verify-starter-templates.ts
|
|
16
23
|
*/
|
|
17
24
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
25
|
if (k2 === undefined) k2 = k;
|
|
@@ -50,14 +57,12 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
50
57
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
58
|
const fs = __importStar(require("fs"));
|
|
52
59
|
const path = __importStar(require("path"));
|
|
53
|
-
// Dynamic
|
|
54
|
-
// — @tom2012/train
|
|
60
|
+
// Dynamic imports via `new Function` so tsc/tsx don't rewrite to require()
|
|
61
|
+
// — @tom2012/train-* are ESM-only and CJS require() of their subpath
|
|
55
62
|
// exports fails with ERR_PACKAGE_PATH_NOT_EXPORTED.
|
|
56
63
|
const dynamicImport = new Function('p', 'return import(p)');
|
|
57
|
-
let parseFn;
|
|
58
64
|
const DIALOG_PATH = path.resolve(__dirname, '../../../../frontend/src/components/tracks/TracksListDialog.tsx');
|
|
59
65
|
function extractTemplate(source, name) {
|
|
60
|
-
// Match: const NAME = `...` (template literal, allowing newlines)
|
|
61
66
|
const re = new RegExp(`const\\s+${name}\\s*=\\s*\`([\\s\\S]*?)\``);
|
|
62
67
|
const m = source.match(re);
|
|
63
68
|
if (!m)
|
|
@@ -65,33 +70,103 @@ function extractTemplate(source, name) {
|
|
|
65
70
|
return m[1];
|
|
66
71
|
}
|
|
67
72
|
let failed = 0;
|
|
68
|
-
function
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
failed++;
|
|
76
|
-
console.error(` ✗ ${name}: ${errCount} error(s)`);
|
|
77
|
-
for (const e of result.parseErrors)
|
|
78
|
-
console.error(` parse: ${e.message}`);
|
|
79
|
-
for (const e of result.lexErrors)
|
|
80
|
-
console.error(` lex: ${e.message}`);
|
|
81
|
-
}
|
|
73
|
+
function ok(name) {
|
|
74
|
+
console.log(` ✓ ${name}`);
|
|
75
|
+
}
|
|
76
|
+
function fail(name, msg) {
|
|
77
|
+
failed++;
|
|
78
|
+
console.error(` ✗ ${name}${msg ? ': ' + msg : ''}`);
|
|
82
79
|
}
|
|
83
80
|
async function main() {
|
|
84
|
-
console.log('Verifying starter .tr templates
|
|
85
|
-
const
|
|
86
|
-
|
|
81
|
+
console.log('Verifying starter .tr templates...');
|
|
82
|
+
const parser = await dynamicImport('@tom2012/train-core/parser');
|
|
83
|
+
const core = await dynamicImport('@tom2012/train-core');
|
|
87
84
|
const dialogSrc = fs.readFileSync(DIALOG_PATH, 'utf8');
|
|
88
|
-
|
|
89
|
-
|
|
85
|
+
// Helper: parse + assert main is 0-arg
|
|
86
|
+
function checkParseAndMainSignature(name, body) {
|
|
87
|
+
const parsed = parser.parse(body);
|
|
88
|
+
const errCount = parsed.lexErrors.length + parsed.parseErrors.length;
|
|
89
|
+
if (errCount > 0) {
|
|
90
|
+
fail(`${name} parses`, `${errCount} error(s)`);
|
|
91
|
+
for (const e of parsed.parseErrors)
|
|
92
|
+
console.error(` parse: ${e.message}`);
|
|
93
|
+
for (const e of parsed.lexErrors)
|
|
94
|
+
console.error(` lex: ${e.message}`);
|
|
95
|
+
return false;
|
|
96
|
+
}
|
|
97
|
+
ok(`${name} parses`);
|
|
98
|
+
// Find main decl and verify zero params. buildAst returns a typed
|
|
99
|
+
// AST; we look for a FunctionDecl named 'main' (or whatever the
|
|
100
|
+
// export aliases). Conservatively just check the source matches
|
|
101
|
+
// `func main(` followed by `)` with only whitespace between —
|
|
102
|
+
// train-lang grammar uses a paren list, so this is the literal
|
|
103
|
+
// signature.
|
|
104
|
+
if (!/func\s+main\s*\(\s*\)/.test(body)) {
|
|
105
|
+
fail(`${name} main is 0-arg`, 'starter must be runnable with zero args (ccweb run button posts args=[]). Use __ccweb_ask_user to collect input.');
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
ok(`${name} main is 0-arg`);
|
|
109
|
+
// Export must be exactly `export main` (no `as <alias>`). ccweb's
|
|
110
|
+
// TrackRunner calls train.runFile without an explicit entry, which
|
|
111
|
+
// defaults to 'main' in train-core. Aliasing to anything else
|
|
112
|
+
// (e.g. `export main as literature_search`) makes the entry name
|
|
113
|
+
// unreachable and the run fails with `no export named 'main' found`.
|
|
114
|
+
if (!/^\s*export\s+main\s*$/m.test(body)) {
|
|
115
|
+
fail(`${name} exports 'main' (no alias)`, "must be exactly `export main` — ccweb's default entry is 'main'; aliasing makes it unreachable");
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
ok(`${name} exports 'main' (no alias)`);
|
|
119
|
+
return true;
|
|
120
|
+
}
|
|
121
|
+
// STARTER_BASIC: full end-to-end run through an inline mock adapter.
|
|
122
|
+
// Inlined (not imported from @tom2012/train-adapter-mock) so this
|
|
123
|
+
// script has zero runtime dependencies beyond train-core itself.
|
|
124
|
+
const basic = extractTemplate(dialogSrc, 'STARTER_BASIC');
|
|
125
|
+
if (checkParseAndMainSignature('STARTER_BASIC', basic)) {
|
|
126
|
+
const adapter = {
|
|
127
|
+
name: 'inline-mock',
|
|
128
|
+
version: '0.0.0',
|
|
129
|
+
capabilities: {
|
|
130
|
+
parallel: true,
|
|
131
|
+
cancellation: true,
|
|
132
|
+
writesWorkflowData: false,
|
|
133
|
+
},
|
|
134
|
+
// eslint-disable-next-line @typescript-eslint/require-await
|
|
135
|
+
async call(_req) {
|
|
136
|
+
return {
|
|
137
|
+
kind: 'success',
|
|
138
|
+
outputs: {
|
|
139
|
+
message: '工作轨是 ccweb 中的可视化任务编排子系统。',
|
|
140
|
+
},
|
|
141
|
+
};
|
|
142
|
+
},
|
|
143
|
+
};
|
|
144
|
+
const result = await core.runSource(basic, { adapter, args: [] });
|
|
145
|
+
if (!result.ok) {
|
|
146
|
+
fail('STARTER_BASIC runs with mock adapter', result.error
|
|
147
|
+
? `${result.error.errorType ?? 'Error'}: ${result.error.message}`
|
|
148
|
+
: 'unknown failure');
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
ok('STARTER_BASIC runs with mock adapter');
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
// STARTER_ASK_USER: parse + signature only (needs __ccweb_ask_user).
|
|
155
|
+
const askUser = extractTemplate(dialogSrc, 'STARTER_ASK_USER');
|
|
156
|
+
checkParseAndMainSignature('STARTER_ASK_USER', askUser);
|
|
157
|
+
// Quick existence check that the template uses __ccweb_ask_user
|
|
158
|
+
// intentionally — otherwise it should be runnable in this script too.
|
|
159
|
+
if (!askUser.includes('__ccweb_ask_user')) {
|
|
160
|
+
fail('STARTER_ASK_USER uses __ccweb_ask_user', 'template named ASK_USER but does not call it');
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
ok('STARTER_ASK_USER uses __ccweb_ask_user');
|
|
164
|
+
}
|
|
90
165
|
if (failed > 0) {
|
|
91
|
-
console.error(`\n${failed}
|
|
166
|
+
console.error(`\n${failed} check(s) failed`);
|
|
92
167
|
process.exit(1);
|
|
93
168
|
}
|
|
94
|
-
console.log('\nAll starter
|
|
169
|
+
console.log('\nAll starter template checks passed.');
|
|
95
170
|
}
|
|
96
171
|
main().catch((e) => {
|
|
97
172
|
console.error(e);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verify-starter-templates.js","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"verify-starter-templates.js","sourceRoot":"","sources":["../../../src/tracks/__tests__/verify-starter-templates.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,YAAY,CAAA;AAEjD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"builder.d.ts","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAU,MAAM,YAAY,CAAA;AAEjD,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAu2C/B;;GAEG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC,OAAO,GAAG,IAAI,CAGrE"}
|
|
@@ -375,7 +375,7 @@ class TrainAstBuilder extends BaseVisitor {
|
|
|
375
375
|
constDecl(ctx) {
|
|
376
376
|
const constTok = ctx.Const[0];
|
|
377
377
|
const id = ctx.Identifier[0];
|
|
378
|
-
const type = this.visit(ctx.
|
|
378
|
+
const type = this.visit(ctx.declTypeAnnot[0]);
|
|
379
379
|
const value = this.visit(ctx.expr[0]);
|
|
380
380
|
return {
|
|
381
381
|
kind: 'ConstDecl',
|
|
@@ -388,7 +388,7 @@ class TrainAstBuilder extends BaseVisitor {
|
|
|
388
388
|
varDecl(ctx) {
|
|
389
389
|
const varTok = ctx.Var[0];
|
|
390
390
|
const id = ctx.Identifier[0];
|
|
391
|
-
const type = this.visit(ctx.
|
|
391
|
+
const type = this.visit(ctx.declTypeAnnot[0]);
|
|
392
392
|
const init = ctx.expr ? this.visit(ctx.expr[0]) : null;
|
|
393
393
|
const endRange = init?.range ?? type.range;
|
|
394
394
|
return {
|
|
@@ -533,6 +533,39 @@ class TrainAstBuilder extends BaseVisitor {
|
|
|
533
533
|
return this.visit(ctx.objectType[0]);
|
|
534
534
|
return this.visit(ctx.scalarType[0]);
|
|
535
535
|
}
|
|
536
|
+
// Variant for let/var/const decl types: same AST shape as typeAnnot
|
|
537
|
+
// but scalar/array sub-rules don't allow trailing named constraints
|
|
538
|
+
// (those would silently swallow the next statement). Constraints
|
|
539
|
+
// belong on fai outputs / func params, not local bindings.
|
|
540
|
+
declTypeAnnot(ctx) {
|
|
541
|
+
if (ctx.enumType)
|
|
542
|
+
return this.visit(ctx.enumType[0]);
|
|
543
|
+
if (ctx.declArrayType)
|
|
544
|
+
return this.visit(ctx.declArrayType[0]);
|
|
545
|
+
if (ctx.objectType)
|
|
546
|
+
return this.visit(ctx.objectType[0]);
|
|
547
|
+
return this.visit(ctx.declScalarType[0]);
|
|
548
|
+
}
|
|
549
|
+
declScalarType(ctx) {
|
|
550
|
+
const id = ctx.Identifier[0];
|
|
551
|
+
return {
|
|
552
|
+
kind: 'ScalarType',
|
|
553
|
+
name: id.image,
|
|
554
|
+
constraint: null,
|
|
555
|
+
range: tokenRange(id),
|
|
556
|
+
};
|
|
557
|
+
}
|
|
558
|
+
declArrayType(ctx) {
|
|
559
|
+
const arrTok = ctx.KwArray[0];
|
|
560
|
+
const element = this.visit(ctx.typeAnnot[0]);
|
|
561
|
+
const rangle = ctx.RAngle[0];
|
|
562
|
+
return {
|
|
563
|
+
kind: 'ArrayType',
|
|
564
|
+
element,
|
|
565
|
+
constraint: null,
|
|
566
|
+
range: spanFromTokenToRange(arrTok, tokenRange(rangle)),
|
|
567
|
+
};
|
|
568
|
+
}
|
|
536
569
|
scalarType(ctx) {
|
|
537
570
|
const id = ctx.Identifier[0];
|
|
538
571
|
const constraint = ctx.typeConstraint
|
|
@@ -667,8 +700,8 @@ class TrainAstBuilder extends BaseVisitor {
|
|
|
667
700
|
letDecl(ctx) {
|
|
668
701
|
const letTok = ctx.Let[0];
|
|
669
702
|
const target = this.visit(ctx.letTarget[0]);
|
|
670
|
-
const type = ctx.
|
|
671
|
-
? this.visit(ctx.
|
|
703
|
+
const type = ctx.declTypeAnnot
|
|
704
|
+
? this.visit(ctx.declTypeAnnot[0])
|
|
672
705
|
: null;
|
|
673
706
|
const init = ctx.expr ? this.visit(ctx.expr[0]) : null;
|
|
674
707
|
const endRange = init?.range ?? type?.range ?? target.range;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,aAAa,CAAA;AAG1D,MAAM,WAAW,GAAG,WAAW,CAAC,4BAA4B,EAAE,CAAA;AAE9D,yEAAyE;AAEzE,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;QAC7B,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;QACjC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC;QACzB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;QAC7B,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,WAAW;KAC5C,CAAA;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,GAAY;IAC5B,MAAM,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAA;IACxB,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO;YACL,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,SAAS,EAAE,CAAC;SACb,CAAA;IACH,CAAC;IACD,OAAO;QACL,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;QAC7B,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,CAAC;QACjC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC;QACzB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;QAC7B,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,WAAW;KAC5C,CAAA;AACH,CAAC;AAED,yEAAyE;AAEzE,SAAS,aAAa,CAAC,GAAW;IAChC,4DAA4D;IAC5D,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC9B,OAAO,kBAAkB,CAAC,KAAK,CAAC,CAAA;AAClC,CAAC;AAED,SAAS,kBAAkB,CAAC,KAAa;IACvC,OAAO,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAU,EAAE,EAAE;QAC/C,QAAQ,EAAE,EAAE,CAAC;YACX,KAAK,GAAG;gBACN,OAAO,IAAI,CAAA;YACb,KAAK,GAAG;gBACN,OAAO,IAAI,CAAA;YACb,KAAK,GAAG;gBACN,OAAO,IAAI,CAAA;YACb,KAAK,IAAI;gBACP,OAAO,IAAI,CAAA;YACb,KAAK,GAAG;gBACN,OAAO,GAAG,CAAA;YACZ,KAAK,GAAG;gBACN,OAAO,GAAG,CAAA;YACZ,KAAK,GAAG;gBACN,OAAO,GAAG,CAAA;YACZ;gBACE,OAAO,EAAE,CAAA;QACb,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC;AAsBD,SAAS,aAAa,CAAC,IAAY;IACjC,8DAA8D;IAC9D,yCAAyC;IACzC,mEAAmE;IACnE,mEAAmE;IACnE,MAAM,QAAQ,GAAiB,EAAE,CAAA;IACjC,IAAI,GAAG,GAAG,EAAE,CAAA;IACZ,IAAI,QAAQ,GAAG,CAAC,CAAA;IAChB,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,EAAE;QACpC,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,GAAG;YACX,WAAW,EAAE,QAAQ;YACrB,SAAS,EAAE,MAAM;SAClB,CAAC,CAAA;QACF,GAAG,GAAG,EAAE,CAAA;QACR,QAAQ,GAAG,MAAM,CAAA;IACnB,CAAC,CAAA;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3C,wDAAwD;YACxD,UAAU,CAAC,CAAC,CAAC,CAAA;YACb,sCAAsC;YACtC,IAAI,KAAK,GAAG,CAAC,CAAA;YACb,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACb,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBACpC,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;gBAClB,IAAI,EAAE,KAAK,GAAG;oBAAE,KAAK,EAAE,CAAA;qBAClB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;oBACpB,KAAK,EAAE,CAAA;oBACP,IAAI,KAAK,KAAK,CAAC;wBAAE,MAAK;gBACxB,CAAC;gBACD,CAAC,EAAE,CAAA;YACL,CAAC;YACD,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;gBAChB,4DAA4D;gBAC5D,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBACpB,QAAQ,GAAG,CAAC,CAAA;gBACZ,CAAC,GAAG,IAAI,CAAC,MAAM,CAAA;gBACf,MAAK;YACP,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;YACrC,QAAQ,CAAC,IAAI,CAAC;gBACZ,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,QAAQ;gBAChB,WAAW,EAAE,CAAC;gBACd,SAAS,EAAE,CAAC,GAAG,CAAC;aACjB,CAAC,CAAA;YACF,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAA;YAChB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACX,CAAC;aAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACnD,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;YAC3B,CAAC,IAAI,CAAC,CAAA;QACR,CAAC;aAAM,CAAC;YACN,GAAG,IAAI,IAAI,CAAC,CAAC,CAAE,CAAA;YACf,CAAC,EAAE,CAAA;QACL,CAAC;IACH,CAAC;IACD,+DAA+D;IAC/D,oEAAoE;IACpE,sEAAsE;IACtE,oEAAoE;IACpE,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAA;IACvD,IAAI,OAAO,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;SAAM,IAAI,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,kEAAkE;QAClE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CAAC,GAAW;IAClC,MAAM,GAAG,GAAG,GAAG,CAAC,KAAK,CAAA;IACrB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA,CAAC,2BAA2B;IACzD,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;IAEhC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;QACzC,kCAAkC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACjD,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,kBAAkB,CAAC,MAAM,CAAC;YACjC,KAAK,EAAE,SAAS;SACjB,CAAA;IACH,CAAC;IAED,2CAA2C;IAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,WAAW,GAAG,CAAC,CAAA,CAAC,qBAAqB;IAC5D,MAAM,KAAK,GAAuB,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAoB,EAAE;QACnE,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACzB,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC;gBACrC,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC;aACvE,CAAA;QACH,CAAC;QACD,yDAAyD;QACzD,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC1C,IACE,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;YAC3B,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;YAC7B,CAAC,MAAM,CAAC,GAAG,EACX,CAAC;YACD,mEAAmE;YACnE,2DAA2D;YAC3D,OAAO;gBACL,IAAI,EAAE,eAAe;gBACrB,KAAK,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG;gBAC9B,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC;aACvE,CAAA;QACH,CAAC;QACD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAa,CAAA;QAC1D,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,QAAQ,CAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC;SACvE,CAAA;IACH,CAAC,CAAC,CAAA;IACF,OAAO;QACL,IAAI,EAAE,gBAAgB;QACtB,KAAK;QACL,KAAK,EAAE,SAAS;KACjB,CAAA;AACH,CAAC;AAED;iFACiF;AACjF,SAAS,QAAQ,CACf,IAAe,EACf,UAAkB,EAClB,WAAmB,EACnB,SAAiB;IAEjB,OAAO;QACL,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,WAAW,EAAE,UAAU,GAAG,WAAW;QACrC,SAAS,EAAE,UAAU,GAAG,SAAS;KAClC,CAAA;AACH,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;AACpD,CAAC;AAED,yEAAyE;AAEzE,MAAM,eAAgB,SAAQ,WAAW;IACvC;QACE,KAAK,EAAE,CAAA;QACP,IAAI,CAAC,eAAe,EAAE,CAAA;IACxB,CAAC;IAED,uEAAuE;IAEvE,mEAAmE;IACnE,SAAS,CAAC,GAAQ;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;IAC5C,CAAC;IAED,OAAO,CAAC,GAAQ,EAAE,OAAiB;QACjC,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,IAAI,SAAS,CAAwB,CAAA;QAC9D,MAAM,KAAK,GAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAe,CAAC,GAAG,CACnD,CAAC,CAAC,EAAgB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAiB,CACnD,CAAA;QACD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,KAAK;YACL,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;SAC/C,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,IAAI,GAAG,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAA;QACtE,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9D,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAA;IACtE,CAAC;IAED,uEAAuE;IAEvE,UAAU,CAAC,GAAQ;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAEtB,CAAA;QACvB,MAAM,SAAS,GAAI,GAAG,CAAC,SAAsB,CAAC,CAAC,CAAE,CAAA;QACjD,MAAM,UAAU,GAAI,GAAG,CAAC,MAA+B,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5D,MAAM,SAAS,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC9C,MAAM,MAAM,GAAG,UAAU,IAAI,SAAS,CAAA;QACtC,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,MAAM;YACN,MAAM,EAAE,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC;YACtC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;YACtD,KAAK,EAAE,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC;SACrC,CAAA;IACH,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,IAAI,GAAG,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,MAAM,KAAK,GAAI,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAe,CAAC,GAAG,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAmB,CACvC,CAAA;QACD,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;SAClC,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,GAAG,GAAG,GAAG,CAAC,UAAsB,CAAA;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACnD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI;YACJ,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAE,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;SACjD,CAAA;IACH,CAAC;IAED,eAAe,CAAC,GAAQ;QACtB,MAAM,IAAI,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;QACvC,MAAM,KAAK,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC9C,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,KAAK,CAAC;SAC/B,CAAA;IACH,CAAC;IAED,uEAAuE;IAEvE,iBAAiB,CAAC,GAAQ;QACxB,MAAM,IAAI,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACzC,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAwB,CAAA;QAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC,CAAC,CAAC,EAAE,CAAA;QACxE,MAAM,MAAM,GAAI,GAAG,CAAC,MAA+B,EAAE,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,IAAI,CAAA;QAC7B,OAAO;YACL,IAAI,EAAE,mBAAmB;YACzB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;YAC/B,IAAI;YACJ,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,MAAM,IAAI,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACzC,MAAM,OAAO,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAwB,CAAA;QAC3D,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAyB,CAAC,CAAC,CAAC,EAAE,CAAA;QACxE,MAAM,MAAM,GAAI,GAAG,CAAC,MAA+B,EAAE,CAAC,CAAC,CAAC,CAAA;QACxD,MAAM,MAAM,GAAG,MAAM,IAAI,IAAI,CAAA;QAC7B,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC;YAC/B,IAAI;YACJ,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC;SAChC,CAAA;IACH,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,OAAQ,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAe,CAAC,GAAG,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAsB,CAC1C,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,UAAmC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAoB,CAAA;QACrC,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAE,CAAA;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAqC,CAAA;QACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,cAAc,CAAC,UAAU,CAAC,CAAA;QACrD,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAA;QAC5B,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI;YACjC,KAAK;YACL,KAAK,EAAE;gBACL,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,QAAQ,CAAC,SAAS;gBACpD,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,QAAQ,CAAC,WAAW;gBAC1D,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,WAAW,EAAE,QAAQ,EAAE,WAAW,IAAI,QAAQ,CAAC,WAAW;gBAC1D,SAAS,EAAE,QAAQ,CAAC,SAAS;aAC9B;SACF,CAAA;IACH,CAAC;IAED,aAAa,CACX,GAAQ;QAER,MAAM,WAAW,GAAI,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAe,CAAC,GAAG,CAC/D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAmB,CACvC,CAAA;QACD,IAAI,IAAgC,CAAA;QACpC,IAAI,GAAG,CAAC,QAAQ;YAAE,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAiB,CAAA;;YAC/D,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAgB,CAAA;QACrD,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,CAAA;IACjC,CAAC;IAED,uEAAuE;IAEvE,SAAS,CAAC,GAAQ;QAChB,MAAM,QAAQ,GAAI,GAAG,CAAC,KAAkB,CAAC,CAAC,CAAE,CAAA;QAC5C,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QACjD,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,KAAK;YACL,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC;SACnD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;QACxC,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC1D,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAc,CAAC,CAAC,CAAC,IAAI,CAAA;QACpE,MAAM,QAAQ,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAA;QAC1C,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9C,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,MAAM,OAAO,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;QAC1C,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,SAAS;YAC1B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAiB;YAC/C,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,UAAU,GAAG,GAAG,CAAC,SAAS;YAC9B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAmB;YACjD,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,EAAE;YACf,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,MAAM;YACN,UAAU;YACV,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC;SACjD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;QACxC,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY;YAC7B,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAoB;YACrD,CAAC,CAAC,EAAE,CAAA;QACN,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAoB,CAAA;QACnE,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,EAAE;YACf,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,MAAM;YACN,OAAO;YACP,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;SAChD,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,SAAS,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC9C,IAAI,MAAoD,CAAA;QACxD,IAAI,GAAG,CAAC,WAAW;YAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;aACvD,IAAI,GAAG,CAAC,QAAQ;YAAE,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;;YACtD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QACxC,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,KAAK,EAAE,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;SACrD,CAAA;IACH,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,MAAM,KAAK,GAAI,CAAC,GAAG,CAAC,UAAU,IAAI,EAAE,CAAe,CAAC,GAAG,CACrD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAmB,CACvC,CAAA;QACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO;gBACL,IAAI,EAAE,aAAa;gBACnB,KAAK,EAAE,EAAE;gBACT,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;aACtB,CAAA;QACH,CAAC;QACD,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,KAAK,CAAA;QAC3C,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC;SAC/B,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,GAAG,GAAG,GAAG,CAAC,UAAsB,CAAA;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACnD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI;YACJ,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAE,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;SACjD,CAAA;IACH,CAAC;IAED,uEAAuE;IAEvE,SAAS,CAAC,GAAQ;QAChB,OAAQ,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAe,CAAC,GAAG,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAc,CAClC,CAAA;IACH,CAAC;IAED,KAAK,CAAC,GAAQ;QACZ,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS;YACxB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAmB;YACjD,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,QAAQ,GAAG,IAAI,EAAE,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;QAC9C,OAAO;YACL,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;SAC1C,CAAA;IACH,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,OAAQ,CAAC,GAAG,CAAC,QAAQ,IAAI,EAAE,CAAe,CAAC,GAAG,CAC5C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAiB,CACrC,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC1D,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC;SAC5C,CAAA;IACH,CAAC;IAED,aAAa,CAAC,GAAQ;QACpB,OAAQ,GAAG,CAAC,SAAuB,CAAC,GAAG,CACrC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAkB,CACtC,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC1D,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC;SAC5C,CAAA;IACH,CAAC;IAED,uEAAuE;IAEvE,SAAS,CAAC,GAAQ;QAChB,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;IACtC,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,cAAc;YACnC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAwB;YAC3D,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,QAAQ,GAAG,UAAU,EAAE,KAAK,IAAI,UAAU,CAAC,EAAE,CAAC,CAAA;QACpD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,UAAU;YACV,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;SAC1C,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,MAAM,OAAO,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC5C,MAAM,QAAQ,GAAI,GAAG,CAAC,UAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QACjE,MAAM,MAAM,GAAI,GAAG,CAAC,UAAuB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAA;QACnD,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,QAAQ;YACR,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC;SACnC,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,MAAM,GAAI,GAAG,CAAC,OAAoB,CAAC,CAAC,CAAE,CAAA;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC7D,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe;YACpC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAyB;YAC7D,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,QAAQ,GAAG,UAAU,EAAE,KAAK,IAAI,UAAU,CAAC,MAAM,CAAC,CAAA;QACxD,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,OAAO;YACP,UAAU;YACV,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9C,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,MAAM,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC7C,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAI,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAe,CAAC,GAAG,CAC3D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAwB,CAC5C,CAAA;QACD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;SAClC,CAAA;IACH,CAAC;IAED,eAAe,CAAC,GAAQ;QACtB,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC1D,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,IAAI,CAAC,KAAK,CAAC;SAC5C,CAAA;IACH,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,IAAI,GAAG,CAAC,eAAe;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;QAClE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3C,CAAC;IAED,eAAe,CAAC,GAAQ;QACtB,MAAM,IAAI,GAAI,GAAG,CAAC,SAAuB,CAAC,GAAG,CAC3C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAwC,CAC5D,CAAA;QACD,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,GAAG,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK;YACnB,GAAG,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK;YACnB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC;SAClD,CAAA;IACH,CAAC;IAED,eAAe,CAAC,GAAQ;QACtB,MAAM,GAAG,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC5C,IAAI,KAAsB,CAAA;QAC1B,IAAI,QAAmB,CAAA;QACvB,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAGpC,CAAA;YACD,KAAK,GAAG,CAAC,CAAC,KAAK,CAAA;YACf,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAA;QACpB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAI,GAAG,CAAC,SAAsB,CAAC,CAAC,CAAE,CAAA;YAC5C,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACjC,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAA;QAC7B,CAAC;QACD,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,GAAG,EAAE,GAAG,CAAC,KAAK;YACd,KAAK;YACL,KAAK,EAAE,oBAAoB,CAAC,GAAG,EAAE,QAAQ,CAAC;SAC3C,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,GAAG,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;YACxC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;QAC1E,CAAC;QACD,MAAM,GAAG,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;IACxE,CAAC;IAED,uEAAuE;IAEvE,KAAK,CAAC,GAAQ;QACZ,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,KAAK,GAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAe,CAAC,GAAG,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CACjC,CAAA;QACD,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAA;IACpE,CAAC;IAED,IAAI,CAAC,GAAQ;QACX,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,IAAI,GAAG,CAAC,YAAY;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5D,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,IAAI,GAAG,CAAC,UAAU;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAA;QACxD,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAA;IAClE,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAkB,CAAA;QAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,SAAS;YACxB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAmB;YACjD,CAAC,CAAC,IAAI,CAAA;QACR,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAc,CAAC,CAAC,CAAC,IAAI,CAAA;QACpE,MAAM,QAAQ,GAAG,IAAI,EAAE,KAAK,IAAI,IAAI,EAAE,KAAK,IAAI,MAAM,CAAC,KAAK,CAAA;QAC3D,OAAO;YACL,IAAI,EAAE,SAAS;YACf,MAAM;YACN,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9C,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,CAAA;QACvE,CAAC;QACD,IAAI,GAAG,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAA;QAChE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACzC,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,MAAM,GAAI,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAe,CAAC,GAAG,CACzD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAsB,CAC1C,CAAA;QACD,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,MAAM;YACN,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC;SAClC,CAAA;IACH,CAAC;IAED,aAAa,CAAC,GAAQ;QACpB,MAAM,GAAG,GAAG,GAAG,CAAC,UAAsB,CAAA;QACtC,MAAM,MAAM,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAA;QACrD,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,MAAM;YACN,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAE,EAAE,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC;SACjD,CAAA;IACH,CAAC;IAED,aAAa,CAAC,GAAQ;QACpB,MAAM,QAAQ,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC/C,MAAM,QAAQ,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC/C,MAAM,KAAK,GAAI,GAAG,CAAC,UAAuB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;QAC9D,OAAO;YACL,IAAI,EAAE,eAAe;YACrB,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC;SACtC,CAAA;IACH,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAe,CAAA;QACtD,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAiB,CAAA;QACtD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QACjD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,MAAM;YACN,EAAE;YACF,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;SAC7C,CAAA;IACH,CAAC;IAED,MAAM,CAAC,GAAQ;QACb,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,QAAQ,GAAI,CAAC,GAAG,CAAC,YAAY,IAAI,EAAE,CAAe,CAAC,GAAG,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAqB,CACzC,CAAA;QACD,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QAC7E,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,EAAE,CAAC,KAAK;YACd,QAAQ;YACR,KAAK,EAAE,oBAAoB,CAAC,EAAE,EAAE,QAAQ,CAAC;SAC1C,CAAA;IACH,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,GAAG,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;YACrC,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO;gBACL,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,EAAE,CAAC,KAAK;gBACd,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC;aAC3B,CAAA;QACH,CAAC;QACD,MAAM,QAAQ,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC/C,MAAM,QAAQ,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QACjD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC;SACtC,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,GAAG,CAAA;QAC1B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAC3B,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAC5B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO,IAAI,CAAA;QAC3B,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAA;QAC5B,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,CAAC,GAAQ;QACb,MAAM,KAAK,GAAI,GAAG,CAAC,EAAe,CAAC,CAAC,CAAE,CAAA;QACtC,MAAM,KAAK,GAAG,GAAG,CAAC,IAAiB,CAAA;QACnC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAkB,CAAA;QACrC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAa,CAAA;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAE,CAAc,CAAA;QAEhD,0EAA0E;QAC1E,oGAAoG;QACpG,MAAM,KAAK,GAAiB,EAAE,CAAA;QAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAE,CAAa,CAAA;YAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAE,CAAc,CAAA;YACjD,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,KAAK;gBACX,IAAI,EAAE,KAAK;gBACX,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;aAC5C,CAAC,CAAA;QACJ,CAAC;QACD,qEAAqE;QACrE,IAAI,SAAS,GAAqB,IAAI,CAAA;QACtC,IAAI,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAE,CAAc,CAAA;QACjE,CAAC;QAED,MAAM,QAAQ,GAAG,SAAS,EAAE,KAAK,IAAI,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAA;QACtE,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,IAAI;YACJ,IAAI;YACJ,KAAK;YACL,SAAS;YACT,KAAK,EAAE,oBAAoB,CAAC,KAAK,EAAE,QAAQ,CAAC;SAC7C,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;QACxC,MAAM,OAAO,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,OAAO;YACP,QAAQ;YACR,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC;SAChD,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,QAAQ,GAAI,GAAG,CAAC,KAAkB,CAAC,CAAC,CAAE,CAAA;QAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QAChD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,OAAO;YACL,IAAI,EAAE,WAAW;YACjB,IAAI;YACJ,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC;SAClD,CAAA;IACH,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,MAAM,MAAM,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,MAAM,OAAO,GAAI,GAAG,CAAC,WAAyB,CAAC,GAAG,CAChD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAoB,CACxC,CAAA;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,KAAK,CAAA;QACpD,OAAO;YACL,IAAI,EAAE,SAAS;YACf,IAAI;YACJ,OAAO;YACP,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,QAAQ,CAAC;SAC9C,CAAA;IACH,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,MAAM,QAAQ,GAAI,GAAG,CAAC,KAAkB,CAAC,CAAC,CAAE,CAAA;QAC5C,MAAM,GAAG,GAAG,GAAG,CAAC,UAAsB,CAAA;QACtC,MAAM,SAAS,GAAG,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAA;QAC/B,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;QACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAc,CAAA;QAClD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,SAAS;YACT,OAAO;YACP,IAAI;YACJ,KAAK,EAAE,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC;SAClD,CAAA;IACH,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,GAAG,GAAI,GAAG,CAAC,KAAkB,CAAC,CAAC,CAAE,CAAA;QACvC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;IACtD,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,MAAM,GAAG,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QAC1C,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;IACzD,CAAC;IAED,UAAU,CAAC,GAAQ;QACjB,MAAM,MAAM,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAc,CAAC,CAAC,CAAC,IAAI,CAAA;QACrE,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,KAAK;YACL,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC;SAC9E,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;QAChD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAA;IACtD,CAAC;IAED,uEAAuE;IAEvE,IAAI,CAAC,GAAQ;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;IACvC,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,CAAa,CAAA;QACzD,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QAC1B,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,GAAG,CAAC,IAAiB,CAAA;QAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAQ,CAAa,CAAA;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,OAAQ,CAAa,CAAA;QACjD,OAAO;YACL,IAAI,EAAE,aAAa;YACnB,IAAI;YACJ,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC;SAC9C,CAAA;IACH,CAAC;IAED,aAAa,CAAC,GAAQ;QACpB,OAAO,oBAAoB,CACxB,GAAG,CAAC,cAA4B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC,EACvE,CAAC,GAAG,CAAC,IAA4B,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,CAAC,CAClE,CAAA;IACH,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,OAAO,oBAAoB,CACxB,GAAG,CAAC,YAA0B,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC,EACrE,CAAC,GAAG,CAAC,MAA8B,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,CAAC,CACpE,CAAA;IACH,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,MAAM,QAAQ,GAAI,GAAG,CAAC,cAA4B,CAAC,GAAG,CACpD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CACjC,CAAA;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAA;QAC9D,OAAO,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5C,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,MAAM,QAAQ,GAAI,GAAG,CAAC,YAA0B,CAAC,GAAG,CAClD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CACjC,CAAA;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,CAAC,QAAQ,EAAE,GAAG,CAAC;YACf,CAAC,MAAM,EAAE,IAAI,CAAC;YACd,CAAC,QAAQ,EAAE,GAAG,CAAC;YACf,CAAC,MAAM,EAAE,IAAI,CAAC;SACf,CAAC,CAAA;QACF,OAAO,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5C,CAAC;IAED,YAAY,CAAC,GAAQ;QACnB,MAAM,QAAQ,GAAI,GAAG,CAAC,kBAAgC,CAAC,GAAG,CACxD,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CACjC,CAAA;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;QAC3D,OAAO,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5C,CAAC;IAED,kBAAkB,CAAC,GAAQ;QACzB,MAAM,QAAQ,GAAI,GAAG,CAAC,SAAuB,CAAC,GAAG,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CACjC,CAAA;QACD,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,CAAC,MAAM,EAAE,GAAG,CAAC;YACb,CAAC,OAAO,EAAE,GAAG,CAAC;YACd,CAAC,SAAS,EAAE,GAAG,CAAC;SACjB,CAAC,CAAA;QACF,OAAO,oBAAoB,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5C,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAa,CAAA;QAC1D,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;YACvC,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,GAAG;gBACP,OAAO;gBACP,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC;aACjD,CAAA;QACH,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,MAAM,IAAI,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;YACvC,OAAO;gBACL,IAAI,EAAE,WAAW;gBACjB,EAAE,EAAE,GAAG;gBACP,OAAO;gBACP,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC;aACjD,CAAA;QACH,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,IAAI,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAa,CAAA;QACxD,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAc,CAAA;QACvD,KAAK,MAAM,MAAM,IAAI,QAAQ,EAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAG0B,CAAA;YACvD,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACzB,OAAO,GAAG;oBACR,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,OAAO;oBACf,QAAQ,EAAE,GAAG,CAAC,IAAI;oBAClB,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC;iBAC5C,CAAA;YACH,CAAC;iBAAM,IAAI,GAAG,CAAC,GAAG,KAAK,OAAO,EAAE,CAAC;gBAC/B,OAAO,GAAG;oBACR,IAAI,EAAE,WAAW;oBACjB,MAAM,EAAE,OAAO;oBACf,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC;iBAC5C,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG;oBACR,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,OAAO;oBACf,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC;iBAC5C,CAAA;YACH,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,aAAa,CAAC,GAAQ;QAIpB,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,GAAG,GAAI,GAAG,CAAC,GAAgB,CAAC,CAAC,CAAE,CAAA;YACrC,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAA;QACtE,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,EAAE,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;YACzC,MAAM,EAAE,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;YACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;YACjD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;QAC3D,CAAC;QACD,MAAM,EAAE,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACvC,MAAM,EAAE,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACvC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO;YACtB,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAgB;YAC5C,CAAC,CAAC,EAAE,CAAA;QACN,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;IACzD,CAAC;IAED,OAAO,CAAC,GAAQ;QACd,OAAQ,GAAG,CAAC,IAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC,CAAA;IACtE,CAAC;IAED,WAAW,CAAC,GAAQ;QAClB,IAAI,GAAG,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClD,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;YACnB,MAAM,EAAE,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,CAAA;QACrE,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QACpD,IAAI,GAAG,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;QACtD,gBAAgB;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IAChC,CAAC;IAED;;;;OAIG;IACH,OAAO,CAAC,GAAQ;QACd,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,GAAG,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;YACxC,OAAO;gBACL,IAAI,EAAE,QAAQ;gBACd,KAAK,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;gBACrC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;aACvB,CAAA;QACH,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;YACjB,MAAM,GAAG,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;YAC1C,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,KAAK,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC;gBACnC,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC;aACvB,CAAA;QACH,CAAC;QACD,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,GAAG,GAAI,GAAG,CAAC,SAAsB,CAAC,CAAC,CAAE,CAAA;YAC3C,OAAO,eAAe,CAAC,GAAG,CAAC,CAAA;QAC7B,CAAC;QACD,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,MAAM,GAAG,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;YACtC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;QACjE,CAAC;QACD,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,MAAM,GAAG,GAAI,GAAG,CAAC,KAAkB,CAAC,CAAC,CAAE,CAAA;YACvC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;QAClE,CAAC;QACD,MAAM,GAAG,GAAI,GAAG,CAAC,IAAiB,CAAC,CAAC,CAAE,CAAA;QACtC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,EAAE,CAAA;IACpD,CAAC;IAED,QAAQ,CAAC,GAAQ;QACf,MAAM,EAAE,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QACzC,MAAM,EAAE,GAAI,GAAG,CAAC,QAAqB,CAAC,CAAC,CAAE,CAAA;QACzC,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI;YACvB,CAAC,CAAE,GAAG,CAAC,IAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAa,CAAC;YAC/D,CAAC,CAAC,EAAE,CAAA;QACN,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;IAClE,CAAC;IAED,SAAS,CAAC,GAAQ;QAChB,MAAM,EAAE,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACvC,MAAM,EAAE,GAAI,GAAG,CAAC,MAAmB,CAAC,CAAC,CAAE,CAAA;QACvC,MAAM,MAAM,GAAI,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAe,CAAC,GAAG,CAC1D,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAuB,CAC3C,CAAA;QACD,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;IACjE,CAAC;IAED,cAAc,CAAC,GAAQ;QACrB,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,MAAM,GAAI,GAAG,CAAC,SAAsB,CAAC,CAAC,CAAE,CAAA;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;YACjD,OAAO;gBACL,IAAI,EAAE,gBAAgB;gBACtB,GAAG,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;gBAChC,SAAS,EAAE,KAAK;gBAChB,KAAK;gBACL,KAAK,EAAE,oBAAoB,CAAC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC;aACjD,CAAA;QACH,CAAC;QACD,MAAM,KAAK,GAAI,GAAG,CAAC,UAAuB,CAAC,CAAC,CAAE,CAAA;QAC9C,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAa,CAAA;YACjD,OAAO;gBACL,IAAI,EAAE,gBAAgB;gBACtB,GAAG,EAAE,KAAK,CAAC,KAAK;gBAChB,SAAS,EAAE,KAAK;gBAChB,KAAK;gBACL,KAAK,EAAE,oBAAoB,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;aAChD,CAAA;QACH,CAAC;QACD,kCAAkC;QAClC,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,GAAG,EAAE,KAAK,CAAC,KAAK;YAChB,SAAS,EAAE,IAAI;YACf,KAAK,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,KAAK,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE;YACzE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;SACzB,CAAA;IACH,CAAC;CACF;AAED,yEAAyE;AAEzE,SAAS,UAAU,CAAC,KAAa,EAAE,GAAW;IAC5C,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;QACnC,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,CAAC;QACzB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;QAC7B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,WAAW;KAC5C,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,CAAY,EAAE,CAAY;IAC5C,OAAO;QACL,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,OAAO,EAAE,CAAC,CAAC,OAAO;QAClB,SAAS,EAAE,CAAC,CAAC,SAAS;QACtB,WAAW,EAAE,CAAC,CAAC,WAAW;QAC1B,SAAS,EAAE,CAAC,CAAC,SAAS;KACvB,CAAA;AACH,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAa,EAAE,GAAc;IACzD,OAAO;QACL,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,CAAC;QAC/B,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,CAAC;QACnC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,GAAG,CAAC,SAAS;KACzB,CAAA;AACH,CAAC;AAED,SAAS,UAAU,CAAC,KAAoB;IACtC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO;YACL,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,OAAO,EAAE,CAAC;YACV,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;YACd,SAAS,EAAE,CAAC;SACb,CAAA;IACH,CAAC;IACD,MAAM,KAAK,GAAI,KAAK,CAAC,CAAC,CAAS,CAAC,KAAkB,CAAA;IAClD,MAAM,IAAI,GAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAS,CAAC,KAAkB,CAAA;IAChE,OAAO,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;AAChC,CAAC;AAED,SAAS,cAAc,CAAC,IAAa;IACnC,4DAA4D;IAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAA;IAC9B,IAAI,QAA4B,CAAA;IAChC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAE,CAAA;QAC1B,KAAK,MAAM,KAAK,IAAI,GAAG,EAAE,CAAC;YACxB,IAAI,GAAuB,CAAA;YAC3B,IAAI,OAAO,IAAI,KAAK,EAAE,CAAC;gBACrB,GAAG,GAAG,KAAe,CAAA;YACvB,CAAC;iBAAM,CAAC;gBACN,GAAG,GAAG,cAAc,CAAC,KAAgB,CAAC,CAAA;YACxC,CAAC;YACD,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ,IAAI,GAAG,CAAC,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjE,QAAQ,GAAG,GAAG,CAAA;YAChB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED;;;;GAIG;AACH,SAAS,oBAAoB,CAC3B,QAAoB,EACpB,SAAyB;IAEzB,IAAI,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAE,CAAA;IAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAE,CAAA;QAC9B,OAAO,GAAG;YACR,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,SAAS,CAAC,CAAC,CAAE;YACjB,IAAI,EAAE,OAAO;YACb,KAAK;YACL,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC;SAC9C,CAAA;IACH,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,UAAU,CACjB,GAAQ,EACR,OAAuD;IAEvD,MAAM,GAAG,GAAgD,EAAE,CAAA;IAC3D,KAAK,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,OAAO,EAAE,CAAC;QACpC,MAAM,IAAI,GAAI,GAAG,CAAC,OAAO,CAA0B,IAAI,EAAE,CAAA;QACzD,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,EAAE,CAAC,CAAA;IAC/D,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAA;IACvC,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC7B,CAAC;AAED,yEAAyE;AAEzE,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;AAExC;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAwB;IAC/C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,CAAgB,CAAA;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"builder.js","sourceRoot":"","sources":["../src/builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAA;AAsErB,iBAAS,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAcrC;
|
|
1
|
+
{"version":3,"file":"builtins.d.ts","sourceRoot":"","sources":["../src/builtins.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EACL,KAAK,KAAK,EAMX,MAAM,cAAc,CAAA;AAsErB,iBAAS,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,MAAM,CAcrC;AA8YD,wBAAgB,sBAAsB,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAO3D;AAID,iBAAS,MAAM,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,OAAO,CAuB3C;AAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -187,10 +187,22 @@ const builtinSpecs = [
|
|
|
187
187
|
return out;
|
|
188
188
|
},
|
|
189
189
|
],
|
|
190
|
-
// ─── String
|
|
190
|
+
// ─── String / Array ────────────────────────────────────────────────
|
|
191
191
|
[
|
|
192
192
|
'concat',
|
|
193
193
|
(args) => {
|
|
194
|
+
// Polymorphic: if ALL args are arrays, return a flat-concatenated
|
|
195
|
+
// array. Otherwise stringify all args and concatenate as a string.
|
|
196
|
+
// Mixed array/non-array is treated as the string path (each array
|
|
197
|
+
// gets formatValue'd, which is rarely what callers want, but is
|
|
198
|
+
// the only safe interpretation when types disagree).
|
|
199
|
+
if (args.length > 0 && args.every((a) => Array.isArray(a))) {
|
|
200
|
+
const out = [];
|
|
201
|
+
for (const a of args)
|
|
202
|
+
for (const el of a)
|
|
203
|
+
out.push(el);
|
|
204
|
+
return out;
|
|
205
|
+
}
|
|
194
206
|
return args.map(formatValue).join('');
|
|
195
207
|
},
|
|
196
208
|
],
|