sonamu 0.0.41 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.pnp.cjs +1968 -956
- package/.pnp.loader.mjs +1816 -54
- package/.yarnrc.yml +1 -1
- package/dist/api/caster.d.ts +2 -4
- package/dist/api/caster.d.ts.map +1 -1
- package/dist/api/code-converters.d.ts +3 -3
- package/dist/api/code-converters.d.ts.map +1 -1
- package/dist/api/code-converters.js +5 -15
- package/dist/api/code-converters.js.map +1 -1
- package/dist/api/context.d.ts +1 -1
- package/dist/api/context.d.ts.map +1 -1
- package/dist/api/decorators.d.ts +3 -3
- package/dist/api/decorators.d.ts.map +1 -1
- package/dist/api/sonamu.d.ts +3 -3
- package/dist/api/sonamu.d.ts.map +1 -1
- package/dist/api/sonamu.js +6 -6
- package/dist/api/sonamu.js.map +1 -1
- package/dist/bin/cli.js +240 -26
- package/dist/bin/cli.js.map +1 -1
- package/dist/database/db.d.ts +2 -2
- package/dist/database/db.d.ts.map +1 -1
- package/dist/database/db.js +1 -1
- package/dist/database/db.js.map +1 -1
- package/dist/database/upsert-builder.d.ts +2 -2
- package/dist/database/upsert-builder.d.ts.map +1 -1
- package/dist/database/upsert-builder.js +10 -8
- package/dist/database/upsert-builder.js.map +1 -1
- package/dist/entity/entity-manager.d.ts +29 -0
- package/dist/entity/entity-manager.d.ts.map +1 -0
- package/dist/entity/entity-manager.js +128 -0
- package/dist/entity/entity-manager.js.map +1 -0
- package/dist/entity/entity-utils.d.ts +61 -0
- package/dist/entity/entity-utils.d.ts.map +1 -0
- package/dist/entity/entity-utils.js +121 -0
- package/dist/entity/entity-utils.js.map +1 -0
- package/dist/entity/entity.d.ts +49 -0
- package/dist/entity/entity.d.ts.map +1 -0
- package/dist/entity/entity.js +504 -0
- package/dist/entity/entity.js.map +1 -0
- package/dist/entity/migrator.d.ts +143 -0
- package/dist/entity/migrator.d.ts.map +1 -0
- package/dist/entity/migrator.js +1385 -0
- package/dist/entity/migrator.js.map +1 -0
- package/dist/entity/smd-utils.d.ts +61 -0
- package/dist/entity/smd-utils.d.ts.map +1 -0
- package/dist/entity/smd-utils.js +121 -0
- package/dist/entity/smd-utils.js.map +1 -0
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/smd/entity-manager.d.ts +28 -0
- package/dist/smd/entity-manager.d.ts.map +1 -0
- package/dist/smd/entity-manager.js +119 -0
- package/dist/smd/entity-manager.js.map +1 -0
- package/dist/smd/entity.d.ts +40 -0
- package/dist/smd/entity.d.ts.map +1 -0
- package/dist/smd/entity.js +430 -0
- package/dist/smd/entity.js.map +1 -0
- package/dist/smd/migrator.d.ts +2 -2
- package/dist/smd/migrator.d.ts.map +1 -1
- package/dist/smd/migrator.js +5 -5
- package/dist/smd/migrator.js.map +1 -1
- package/dist/smd/smd-manager.d.ts +3 -3
- package/dist/smd/smd-manager.d.ts.map +1 -1
- package/dist/smd/smd-manager.js +2 -2
- package/dist/smd/smd-manager.js.map +1 -1
- package/dist/smd/smd-utils.d.ts +4 -4
- package/dist/smd/smd-utils.d.ts.map +1 -1
- package/dist/smd/smd-utils.js.map +1 -1
- package/dist/smd/smd.d.ts +5 -6
- package/dist/smd/smd.d.ts.map +1 -1
- package/dist/smd/smd.js +3 -3
- package/dist/smd/smd.js.map +1 -1
- package/dist/syncer/syncer.d.ts +15 -11
- package/dist/syncer/syncer.d.ts.map +1 -1
- package/dist/syncer/syncer.js +134 -74
- package/dist/syncer/syncer.js.map +1 -1
- package/dist/templates/base-template.d.ts +2 -2
- package/dist/templates/base-template.d.ts.map +1 -1
- package/dist/templates/entity.template.d.ts +17 -0
- package/dist/templates/entity.template.d.ts.map +1 -0
- package/dist/templates/entity.template.js +46 -0
- package/dist/templates/entity.template.js.map +1 -0
- package/dist/templates/generated.template.d.ts +11 -7
- package/dist/templates/generated.template.d.ts.map +1 -1
- package/dist/templates/generated.template.js +72 -43
- package/dist/templates/generated.template.js.map +1 -1
- package/dist/templates/generated_http.template.d.ts +3 -3
- package/dist/templates/generated_http.template.d.ts.map +1 -1
- package/dist/templates/generated_http.template.js +3 -3
- package/dist/templates/generated_http.template.js.map +1 -1
- package/dist/templates/init_enums.template.d.ts +2 -2
- package/dist/templates/init_enums.template.d.ts.map +1 -1
- package/dist/templates/init_enums.template.js +2 -2
- package/dist/templates/init_enums.template.js.map +1 -1
- package/dist/templates/init_generated.template.d.ts +3 -3
- package/dist/templates/init_generated.template.d.ts.map +1 -1
- package/dist/templates/init_generated.template.js +13 -14
- package/dist/templates/init_generated.template.js.map +1 -1
- package/dist/templates/init_types.template.d.ts +3 -3
- package/dist/templates/init_types.template.d.ts.map +1 -1
- package/dist/templates/init_types.template.js +10 -10
- package/dist/templates/init_types.template.js.map +1 -1
- package/dist/templates/model.template.d.ts +3 -3
- package/dist/templates/model.template.d.ts.map +1 -1
- package/dist/templates/model.template.js +28 -28
- package/dist/templates/model.template.js.map +1 -1
- package/dist/templates/model_test.template.d.ts +3 -3
- package/dist/templates/model_test.template.d.ts.map +1 -1
- package/dist/templates/model_test.template.js +4 -4
- package/dist/templates/model_test.template.js.map +1 -1
- package/dist/templates/service.template.d.ts +3 -3
- package/dist/templates/service.template.d.ts.map +1 -1
- package/dist/templates/service.template.js +3 -3
- package/dist/templates/service.template.js.map +1 -1
- package/dist/templates/smd.template.d.ts +2 -2
- package/dist/templates/smd.template.d.ts.map +1 -1
- package/dist/templates/smd.template.js +2 -2
- package/dist/templates/smd.template.js.map +1 -1
- package/dist/templates/view_enums_buttonset.template.d.ts +3 -3
- package/dist/templates/view_enums_buttonset.template.d.ts.map +1 -1
- package/dist/templates/view_enums_buttonset.template.js +4 -4
- package/dist/templates/view_enums_buttonset.template.js.map +1 -1
- package/dist/templates/view_enums_dropdown.template.d.ts +3 -3
- package/dist/templates/view_enums_dropdown.template.d.ts.map +1 -1
- package/dist/templates/view_enums_dropdown.template.js +3 -3
- package/dist/templates/view_enums_dropdown.template.js.map +1 -1
- package/dist/templates/view_enums_select.template.d.ts +3 -3
- package/dist/templates/view_enums_select.template.d.ts.map +1 -1
- package/dist/templates/view_enums_select.template.js +3 -3
- package/dist/templates/view_enums_select.template.js.map +1 -1
- package/dist/templates/view_form.template.d.ts +25 -29
- package/dist/templates/view_form.template.d.ts.map +1 -1
- package/dist/templates/view_form.template.js +19 -19
- package/dist/templates/view_form.template.js.map +1 -1
- package/dist/templates/view_id_all_select.template.d.ts +3 -3
- package/dist/templates/view_id_all_select.template.d.ts.map +1 -1
- package/dist/templates/view_id_all_select.template.js +4 -4
- package/dist/templates/view_id_all_select.template.js.map +1 -1
- package/dist/templates/view_id_async_select.template.d.ts +3 -3
- package/dist/templates/view_id_async_select.template.d.ts.map +1 -1
- package/dist/templates/view_id_async_select.template.js +6 -6
- package/dist/templates/view_id_async_select.template.js.map +1 -1
- package/dist/templates/view_list.template.d.ts +30 -34
- package/dist/templates/view_list.template.d.ts.map +1 -1
- package/dist/templates/view_list.template.js +40 -40
- package/dist/templates/view_list.template.js.map +1 -1
- package/dist/templates/view_list_columns.template.d.ts +3 -3
- package/dist/templates/view_list_columns.template.d.ts.map +1 -1
- package/dist/templates/view_list_columns.template.js +3 -3
- package/dist/templates/view_list_columns.template.js.map +1 -1
- package/dist/templates/view_search_input.template.d.ts +3 -3
- package/dist/templates/view_search_input.template.d.ts.map +1 -1
- package/dist/templates/view_search_input.template.js +3 -3
- package/dist/templates/view_search_input.template.js.map +1 -1
- package/dist/testing/fixture-manager.d.ts +2 -3
- package/dist/testing/fixture-manager.d.ts.map +1 -1
- package/dist/testing/fixture-manager.js +21 -42
- package/dist/testing/fixture-manager.js.map +1 -1
- package/dist/types/smd.types.d.ts +741 -0
- package/dist/types/smd.types.d.ts.map +1 -0
- package/dist/types/smd.types.js +292 -0
- package/dist/types/smd.types.js.map +1 -0
- package/dist/types/types.d.ts +185 -190
- package/dist/types/types.d.ts.map +1 -1
- package/dist/types/types.js +22 -30
- package/dist/types/types.js.map +1 -1
- package/dist/ui/index.d.ts +4 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +14 -0
- package/dist/ui/index.js.map +1 -0
- package/dist/ui/main.d.ts +4 -0
- package/dist/ui/main.d.ts.map +1 -0
- package/dist/ui/main.js +15 -0
- package/dist/ui/main.js.map +1 -0
- package/dist/utils/model.d.ts +2 -2
- package/dist/utils/model.d.ts.map +1 -1
- package/dist/utils/utils.d.ts +1 -0
- package/dist/utils/utils.d.ts.map +1 -1
- package/dist/utils/utils.js +6 -2
- package/dist/utils/utils.js.map +1 -1
- package/package.json +11 -8
- package/src/api/code-converters.ts +9 -17
- package/src/api/sonamu.ts +10 -6
- package/src/bin/cli.ts +247 -26
- package/src/database/upsert-builder.ts +2 -2
- package/src/entity/entity-manager.ts +150 -0
- package/src/{smd/smd-utils.ts → entity/entity-utils.ts} +4 -7
- package/src/entity/entity.ts +666 -0
- package/src/{smd → entity}/migrator.ts +426 -106
- package/src/index.ts +3 -3
- package/src/smd/smd-manager.ts +3 -13
- package/src/smd/smd.ts +13 -10
- package/src/syncer/syncer.ts +125 -73
- package/src/templates/base-template.ts +2 -2
- package/src/templates/entity.template.ts +50 -0
- package/src/templates/generated.template.ts +93 -57
- package/src/templates/generated_http.template.ts +4 -4
- package/src/templates/init_types.template.ts +11 -11
- package/src/templates/model.template.ts +29 -29
- package/src/templates/model_test.template.ts +5 -5
- package/src/templates/service.template.ts +4 -4
- package/src/templates/view_enums_buttonset.template.ts +5 -5
- package/src/templates/view_enums_dropdown.template.ts +4 -4
- package/src/templates/view_enums_select.template.ts +8 -4
- package/src/templates/view_form.template.ts +21 -21
- package/src/templates/view_id_all_select.template.ts +5 -5
- package/src/templates/view_id_async_select.template.ts +9 -7
- package/src/templates/view_list.template.ts +54 -44
- package/src/templates/view_list_columns.template.ts +4 -4
- package/src/templates/view_search_input.template.ts +4 -4
- package/src/testing/fixture-manager.ts +19 -60
- package/src/types/types.ts +59 -41
- package/src/utils/utils.ts +4 -0
- package/tsconfig.json +4 -1
- package/src/templates/init_enums.template.ts +0 -71
- package/src/templates/init_generated.template.ts +0 -51
- package/src/templates/smd.template.ts +0 -53
package/dist/syncer/syncer.js
CHANGED
|
@@ -31,6 +31,13 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
31
31
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
32
32
|
});
|
|
33
33
|
};
|
|
34
|
+
var __asyncValues = (this && this.__asyncValues) || function (o) {
|
|
35
|
+
if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
|
|
36
|
+
var m = o[Symbol.asyncIterator], i;
|
|
37
|
+
return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
|
|
38
|
+
function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
|
|
39
|
+
function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
|
|
40
|
+
};
|
|
34
41
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
35
42
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
36
43
|
};
|
|
@@ -43,7 +50,7 @@ const crypto_1 = __importDefault(require("crypto"));
|
|
|
43
50
|
const fast_deep_equal_1 = __importDefault(require("fast-deep-equal"));
|
|
44
51
|
const lodash_1 = require("lodash");
|
|
45
52
|
const inflection_1 = require("inflection");
|
|
46
|
-
const
|
|
53
|
+
const entity_manager_1 = require("../entity/entity-manager");
|
|
47
54
|
const ts = __importStar(require("typescript"));
|
|
48
55
|
const types_1 = require("../types/types");
|
|
49
56
|
const decorators_1 = require("../api/decorators");
|
|
@@ -54,10 +61,8 @@ const so_exceptions_1 = require("../exceptions/so-exceptions");
|
|
|
54
61
|
const lodash_able_1 = require("../utils/lodash-able");
|
|
55
62
|
const code_converters_1 = require("../api/code-converters");
|
|
56
63
|
const generated_template_1 = require("../templates/generated.template");
|
|
57
|
-
const init_enums_template_1 = require("../templates/init_enums.template");
|
|
58
|
-
const init_generated_template_1 = require("../templates/init_generated.template");
|
|
59
64
|
const init_types_template_1 = require("../templates/init_types.template");
|
|
60
|
-
const
|
|
65
|
+
const entity_template_1 = require("../templates/entity.template");
|
|
61
66
|
const model_template_1 = require("../templates/model.template");
|
|
62
67
|
const model_test_template_1 = require("../templates/model_test.template");
|
|
63
68
|
const service_template_1 = require("../templates/service.template");
|
|
@@ -73,7 +78,11 @@ const view_search_input_template_1 = require("../templates/view_search_input.tem
|
|
|
73
78
|
const view_list_columns_template_1 = require("../templates/view_list_columns.template");
|
|
74
79
|
const generated_http_template_1 = require("../templates/generated_http.template");
|
|
75
80
|
const sonamu_1 = require("../api/sonamu");
|
|
81
|
+
const child_process_1 = require("child_process");
|
|
76
82
|
class Syncer {
|
|
83
|
+
get checksumsPath() {
|
|
84
|
+
return path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/.tf-checksum");
|
|
85
|
+
}
|
|
77
86
|
constructor() {
|
|
78
87
|
this.apis = [];
|
|
79
88
|
this.types = {};
|
|
@@ -92,9 +101,6 @@ class Syncer {
|
|
|
92
101
|
};
|
|
93
102
|
};
|
|
94
103
|
}
|
|
95
|
-
get checksumsPath() {
|
|
96
|
-
return path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/.tf-checksum");
|
|
97
|
-
}
|
|
98
104
|
sync() {
|
|
99
105
|
var _a, _b, _c;
|
|
100
106
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -138,54 +144,54 @@ class Syncer {
|
|
|
138
144
|
console.log("Changed Files: ", diffFiles);
|
|
139
145
|
// 다른 부분 찾아 액션
|
|
140
146
|
const diffGroups = (0, lodash_1.groupBy)(diffFiles, (r) => {
|
|
141
|
-
const matched = r.match(/\.(model|types|
|
|
147
|
+
const matched = r.match(/\.(model|types|functions|entity|generated)\.[tj]s/);
|
|
142
148
|
return matched[1];
|
|
143
149
|
});
|
|
144
150
|
// 변경된 파일들을 타입별로 분리하여 각 타입별 액션 처리
|
|
145
151
|
const diffTypes = Object.keys(diffGroups);
|
|
146
|
-
// 트리거:
|
|
152
|
+
// 트리거: entity
|
|
147
153
|
// 액션: 스키마 생성
|
|
148
|
-
if (diffTypes.includes("
|
|
154
|
+
if (diffTypes.includes("entity")) {
|
|
149
155
|
console.log("// 액션: 스키마 생성");
|
|
150
|
-
const
|
|
151
|
-
yield this.actionGenerateSchemas(
|
|
156
|
+
const entityIds = this.getEntityIdFromPath(diffGroups["entity"]);
|
|
157
|
+
yield this.actionGenerateSchemas(entityIds);
|
|
152
158
|
}
|
|
153
159
|
// 트리거: types, enums, generated 변경시
|
|
154
160
|
// 액션: 파일 싱크 types, enums, generated
|
|
155
161
|
if (diffTypes.includes("types") ||
|
|
156
|
-
diffTypes.includes("
|
|
162
|
+
diffTypes.includes("functions") ||
|
|
157
163
|
diffTypes.includes("generated")) {
|
|
158
|
-
console.log("// 액션: 파일 싱크 types /
|
|
164
|
+
console.log("// 액션: 파일 싱크 types / functions / generated");
|
|
159
165
|
const tsPaths = [
|
|
160
166
|
...((_a = diffGroups["types"]) !== null && _a !== void 0 ? _a : []),
|
|
161
|
-
...((_b = diffGroups["
|
|
167
|
+
...((_b = diffGroups["functions"]) !== null && _b !== void 0 ? _b : []),
|
|
162
168
|
...((_c = diffGroups["generated"]) !== null && _c !== void 0 ? _c : []),
|
|
163
169
|
].map((p) => p.replace("/dist/", "/src/").replace(".js", ".ts"));
|
|
164
170
|
yield this.actionSyncFilesToTargets(tsPaths);
|
|
165
171
|
}
|
|
166
172
|
// 트리거: model
|
|
167
173
|
if (diffTypes.includes("model")) {
|
|
168
|
-
const
|
|
174
|
+
const entityIds = this.getEntityIdFromPath(diffGroups["model"]);
|
|
169
175
|
console.log("// 액션: 서비스 생성");
|
|
170
|
-
yield this.actionGenerateServices(
|
|
176
|
+
yield this.actionGenerateServices(entityIds);
|
|
171
177
|
console.log("// 액션: HTTP파일 생성");
|
|
172
|
-
yield this.actionGenerateHttps(
|
|
178
|
+
yield this.actionGenerateHttps(entityIds);
|
|
173
179
|
}
|
|
174
180
|
// 저장
|
|
175
181
|
yield this.saveChecksums(currentChecksums);
|
|
176
182
|
});
|
|
177
183
|
}
|
|
178
|
-
|
|
184
|
+
getEntityIdFromPath(filePaths) {
|
|
179
185
|
return filePaths.map((p) => {
|
|
180
186
|
const matched = p.match(/application\/(.+)\//);
|
|
181
187
|
return (0, inflection_1.camelize)(matched[1].replace(/\-/g, "_"));
|
|
182
188
|
});
|
|
183
189
|
}
|
|
184
|
-
actionGenerateSchemas(
|
|
190
|
+
actionGenerateSchemas(entityIds) {
|
|
185
191
|
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
-
return (yield Promise.all(
|
|
192
|
+
return (yield Promise.all(entityIds.map((entityId) => __awaiter(this, void 0, void 0, function* () {
|
|
187
193
|
return this.generateTemplate("generated", {
|
|
188
|
-
|
|
194
|
+
entityId,
|
|
189
195
|
}, {
|
|
190
196
|
overwrite: true,
|
|
191
197
|
});
|
|
@@ -194,11 +200,11 @@ class Syncer {
|
|
|
194
200
|
.flat();
|
|
195
201
|
});
|
|
196
202
|
}
|
|
197
|
-
actionGenerateServices(
|
|
203
|
+
actionGenerateServices(entityIds) {
|
|
198
204
|
return __awaiter(this, void 0, void 0, function* () {
|
|
199
|
-
return (yield Promise.all(
|
|
205
|
+
return (yield Promise.all(entityIds.map((entityId) => __awaiter(this, void 0, void 0, function* () {
|
|
200
206
|
return this.generateTemplate("service", {
|
|
201
|
-
|
|
207
|
+
entityId,
|
|
202
208
|
}, {
|
|
203
209
|
overwrite: true,
|
|
204
210
|
});
|
|
@@ -207,11 +213,11 @@ class Syncer {
|
|
|
207
213
|
.flat();
|
|
208
214
|
});
|
|
209
215
|
}
|
|
210
|
-
actionGenerateHttps(
|
|
216
|
+
actionGenerateHttps(entityIds) {
|
|
211
217
|
return __awaiter(this, void 0, void 0, function* () {
|
|
212
|
-
return (yield Promise.all(
|
|
218
|
+
return (yield Promise.all(entityIds.map((entityId) => __awaiter(this, void 0, void 0, function* () {
|
|
213
219
|
return this.generateTemplate("generated_http", {
|
|
214
|
-
|
|
220
|
+
entityId,
|
|
215
221
|
}, {
|
|
216
222
|
overwrite: true,
|
|
217
223
|
});
|
|
@@ -257,13 +263,13 @@ class Syncer {
|
|
|
257
263
|
getCurrentChecksums() {
|
|
258
264
|
return __awaiter(this, void 0, void 0, function* () {
|
|
259
265
|
const PatternGroup = {
|
|
260
|
-
/*
|
|
266
|
+
/* 원본 체크 */
|
|
267
|
+
entity: sonamu_1.Sonamu.apiRootPath + "/src/application/**/*.entity.json",
|
|
261
268
|
types: sonamu_1.Sonamu.apiRootPath + "/src/application/**/*.types.ts",
|
|
262
|
-
enums: sonamu_1.Sonamu.apiRootPath + "/src/application/**/*.enums.ts",
|
|
263
269
|
generated: sonamu_1.Sonamu.apiRootPath + "/src/application/**/*.generated.ts",
|
|
270
|
+
functions: sonamu_1.Sonamu.apiRootPath + "/src/application/**/*.functions.ts",
|
|
264
271
|
/* compiled-JS 체크 */
|
|
265
272
|
model: sonamu_1.Sonamu.apiRootPath + "/dist/application/**/*.model.js",
|
|
266
|
-
smd: sonamu_1.Sonamu.apiRootPath + "/dist/application/**/*.smd.js",
|
|
267
273
|
};
|
|
268
274
|
const filePaths = (yield Promise.all(Object.entries(PatternGroup).map(([_fileType, pattern]) => __awaiter(this, void 0, void 0, function* () {
|
|
269
275
|
return (0, utils_1.globAsync)(pattern);
|
|
@@ -530,7 +536,6 @@ class Syncer {
|
|
|
530
536
|
}
|
|
531
537
|
const pathPatterns = [
|
|
532
538
|
path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/dist/application/**/*.types.js"),
|
|
533
|
-
path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/dist/application/**/*.enums.js"),
|
|
534
539
|
path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/dist/application/**/*.generated.js"),
|
|
535
540
|
];
|
|
536
541
|
// console.debug(chalk.magenta(`autoload:types @ ${pathPatterns.join("\n")}`));
|
|
@@ -544,18 +549,12 @@ class Syncer {
|
|
|
544
549
|
});
|
|
545
550
|
}
|
|
546
551
|
getTemplate(key) {
|
|
547
|
-
if (key === "
|
|
548
|
-
return new
|
|
549
|
-
}
|
|
550
|
-
else if (key === "init_enums") {
|
|
551
|
-
return new init_enums_template_1.Template__init_enums();
|
|
552
|
+
if (key === "entity") {
|
|
553
|
+
return new entity_template_1.Template__entity();
|
|
552
554
|
}
|
|
553
555
|
else if (key === "init_types") {
|
|
554
556
|
return new init_types_template_1.Template__init_types();
|
|
555
557
|
}
|
|
556
|
-
else if (key === "init_generated") {
|
|
557
|
-
return new init_generated_template_1.Template__init_generated();
|
|
558
|
-
}
|
|
559
558
|
else if (key === "generated") {
|
|
560
559
|
return new generated_template_1.Template__generated();
|
|
561
560
|
}
|
|
@@ -608,20 +607,20 @@ class Syncer {
|
|
|
608
607
|
let extra = [];
|
|
609
608
|
if (key === "service" || key === "generated_http") {
|
|
610
609
|
// service 필요 정보 (API 리스트)
|
|
611
|
-
const
|
|
612
|
-
const modelTsPath = `${path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/src/application")}/${
|
|
610
|
+
const entity = entity_manager_1.EntityManager.get(options.entityId);
|
|
611
|
+
const modelTsPath = `${path_1.default.join(sonamu_1.Sonamu.apiRootPath, "/src/application")}/${entity.names.fs}/${entity.names.fs}.model.ts`;
|
|
613
612
|
extra = [yield this.readApisFromFile(modelTsPath)];
|
|
614
613
|
}
|
|
615
614
|
else if (key === "view_list" || key === "model") {
|
|
616
615
|
// view_list 필요 정보 (컬럼 노드, 리스트파라미터 노드)
|
|
617
|
-
const columnsNode = yield this.getColumnsNode(options.
|
|
618
|
-
const listParamsZodType = yield this.getZodTypeById(`${options.
|
|
616
|
+
const columnsNode = yield this.getColumnsNode(options.entityId, "A");
|
|
617
|
+
const listParamsZodType = yield this.getZodTypeById(`${options.entityId}ListParams`);
|
|
619
618
|
const listParamsNode = this.zodTypeToRenderingNode(listParamsZodType);
|
|
620
619
|
extra = [columnsNode, listParamsNode];
|
|
621
620
|
}
|
|
622
621
|
else if (key === "view_form") {
|
|
623
622
|
// view_form 필요 정보 (세이브파라미터 노드)
|
|
624
|
-
const saveParamsZodType = yield this.getZodTypeById(`${options.
|
|
623
|
+
const saveParamsZodType = yield this.getZodTypeById(`${options.entityId}SaveParams`);
|
|
625
624
|
const saveParamsNode = this.zodTypeToRenderingNode(saveParamsZodType);
|
|
626
625
|
extra = [saveParamsNode];
|
|
627
626
|
}
|
|
@@ -642,7 +641,7 @@ class Syncer {
|
|
|
642
641
|
// import 할 대상의 대상 path 추출
|
|
643
642
|
const importDefs = importKeys
|
|
644
643
|
.reduce((r, importKey) => {
|
|
645
|
-
const modulePath =
|
|
644
|
+
const modulePath = entity_manager_1.EntityManager.getModulePath(importKey);
|
|
646
645
|
let importPath = modulePath;
|
|
647
646
|
if (modulePath.includes("/")) {
|
|
648
647
|
importPath = (0, lodash_able_1.wrapIf)(path_1.default.relative(path_1.default.dirname(filePath), modulePath), (p) => [p.startsWith(".") === false, "./" + p]);
|
|
@@ -667,11 +666,16 @@ class Syncer {
|
|
|
667
666
|
...(customHeaders !== null && customHeaders !== void 0 ? customHeaders : []),
|
|
668
667
|
...importDefs.map((importDef) => `import { ${importDef.keys.join(", ")} } from '${importDef.from}'`),
|
|
669
668
|
].join("\n");
|
|
670
|
-
const formatted =
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
669
|
+
const formatted = yield (() => __awaiter(this, void 0, void 0, function* () {
|
|
670
|
+
if (key === "generated_http") {
|
|
671
|
+
return [header, body].join("\n\n");
|
|
672
|
+
}
|
|
673
|
+
else {
|
|
674
|
+
return yield prettier_1.default.format([header, body].join("\n\n"), {
|
|
675
|
+
parser: key === "entity" ? "json" : "typescript",
|
|
676
|
+
});
|
|
677
|
+
}
|
|
678
|
+
}))();
|
|
675
679
|
return {
|
|
676
680
|
path: target + "/" + filePath,
|
|
677
681
|
code: formatted,
|
|
@@ -700,9 +704,9 @@ class Syncer {
|
|
|
700
704
|
const generateOptions = Object.assign({ overwrite: false }, _generateOptions);
|
|
701
705
|
// 키 children
|
|
702
706
|
let keys = [key];
|
|
703
|
-
if (key === "
|
|
704
|
-
|
|
705
|
-
}
|
|
707
|
+
// if (key === "entity") {
|
|
708
|
+
// keys = ["entity", "init_generated", "init_types"];
|
|
709
|
+
// }
|
|
706
710
|
// 템플릿 렌더
|
|
707
711
|
const pathAndCodes = (yield Promise.all(keys.map((key) => __awaiter(this, void 0, void 0, function* () {
|
|
708
712
|
return this.renderTemplate(key, templateOptions);
|
|
@@ -738,9 +742,9 @@ class Syncer {
|
|
|
738
742
|
return Promise.all(filteredPathAndCodes.map((pathAndCode) => this.writeCodeToPath(pathAndCode)));
|
|
739
743
|
});
|
|
740
744
|
}
|
|
741
|
-
checkExists(
|
|
745
|
+
checkExists(entityId, enums) {
|
|
742
746
|
const keys = types_2.TemplateKey.options;
|
|
743
|
-
const names =
|
|
747
|
+
const names = entity_manager_1.EntityManager.getNamesFromId(entityId);
|
|
744
748
|
const enumsKeys = Object.keys(enums).filter((name) => name !== names.constant);
|
|
745
749
|
return keys.reduce((result, key) => {
|
|
746
750
|
const tpl = this.getTemplate(key);
|
|
@@ -766,10 +770,10 @@ class Syncer {
|
|
|
766
770
|
}
|
|
767
771
|
getZodTypeById(zodTypeId) {
|
|
768
772
|
return __awaiter(this, void 0, void 0, function* () {
|
|
769
|
-
const modulePath =
|
|
773
|
+
const modulePath = entity_manager_1.EntityManager.getModulePath(zodTypeId);
|
|
770
774
|
const moduleAbsPath = path_1.default.join(sonamu_1.Sonamu.apiRootPath, "dist", "application", modulePath + ".js");
|
|
771
775
|
const importPath = "./" + path_1.default.relative(__dirname, moduleAbsPath);
|
|
772
|
-
const imported = yield Promise.resolve().then(
|
|
776
|
+
const imported = yield Promise.resolve(`${importPath}`).then(s => __importStar(require(s)));
|
|
773
777
|
if (!imported[zodTypeId]) {
|
|
774
778
|
throw new Error(`존재하지 않는 zodTypeId ${zodTypeId}`);
|
|
775
779
|
}
|
|
@@ -857,23 +861,13 @@ class Syncer {
|
|
|
857
861
|
zodType = types_1.SQLDateTimeString;
|
|
858
862
|
}
|
|
859
863
|
else if ((0, types_1.isJsonProp)(prop)) {
|
|
860
|
-
|
|
861
|
-
zodType = prop.as;
|
|
862
|
-
}
|
|
863
|
-
else {
|
|
864
|
-
zodType = yield this.getZodTypeById(prop.as.ref);
|
|
865
|
-
}
|
|
864
|
+
zodType = yield this.getZodTypeById(prop.id);
|
|
866
865
|
}
|
|
867
866
|
else if ((0, types_1.isUuidProp)(prop)) {
|
|
868
867
|
zodType = zod_1.z.string().uuid();
|
|
869
868
|
}
|
|
870
869
|
else if ((0, types_1.isVirtualProp)(prop)) {
|
|
871
|
-
|
|
872
|
-
zodType = prop.as;
|
|
873
|
-
}
|
|
874
|
-
else {
|
|
875
|
-
zodType = yield this.getZodTypeById(prop.as.ref);
|
|
876
|
-
}
|
|
870
|
+
zodType = yield this.getZodTypeById(prop.id);
|
|
877
871
|
}
|
|
878
872
|
else if ((0, types_1.isRelationProp)(prop)) {
|
|
879
873
|
if ((0, types_1.isBelongsToOneRelationProp)(prop) ||
|
|
@@ -977,14 +971,14 @@ class Syncer {
|
|
|
977
971
|
return Object.assign(Object.assign({}, def), { renderType: this.resolveRenderType(baseKey, zodType) });
|
|
978
972
|
}
|
|
979
973
|
}
|
|
980
|
-
getColumnsNode(
|
|
974
|
+
getColumnsNode(entityId, subsetKey) {
|
|
981
975
|
return __awaiter(this, void 0, void 0, function* () {
|
|
982
|
-
const
|
|
983
|
-
const subsetA =
|
|
976
|
+
const entity = yield entity_manager_1.EntityManager.get(entityId);
|
|
977
|
+
const subsetA = entity.subsets[subsetKey];
|
|
984
978
|
if (subsetA === undefined) {
|
|
985
979
|
throw new so_exceptions_1.ServiceUnavailableException("SubsetA 가 없습니다.");
|
|
986
980
|
}
|
|
987
|
-
const propNodes =
|
|
981
|
+
const propNodes = entity.fieldExprsToPropNodes(subsetA);
|
|
988
982
|
const rootPropNode = {
|
|
989
983
|
nodeType: "object",
|
|
990
984
|
children: propNodes,
|
|
@@ -1021,6 +1015,72 @@ class Syncer {
|
|
|
1021
1015
|
return columnsNode;
|
|
1022
1016
|
});
|
|
1023
1017
|
}
|
|
1018
|
+
createEntity(entityId, parentId, table, title) {
|
|
1019
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1020
|
+
yield this.generateTemplate("entity", {
|
|
1021
|
+
entityId,
|
|
1022
|
+
parentId,
|
|
1023
|
+
table,
|
|
1024
|
+
title,
|
|
1025
|
+
});
|
|
1026
|
+
// reload entities
|
|
1027
|
+
yield entity_manager_1.EntityManager.reload();
|
|
1028
|
+
// generate schemas
|
|
1029
|
+
yield this.actionGenerateSchemas([entityId]);
|
|
1030
|
+
// generate types
|
|
1031
|
+
yield this.generateTemplate("init_types", {
|
|
1032
|
+
entityId,
|
|
1033
|
+
});
|
|
1034
|
+
});
|
|
1035
|
+
}
|
|
1036
|
+
delEntity(entityId) {
|
|
1037
|
+
var _a, e_1, _b, _c;
|
|
1038
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
1039
|
+
const entity = entity_manager_1.EntityManager.get(entityId);
|
|
1040
|
+
const delPaths = (() => {
|
|
1041
|
+
if (entity.parentId) {
|
|
1042
|
+
return [
|
|
1043
|
+
`${sonamu_1.Sonamu.apiRootPath}/src/application/${entity.names.parentFs}/${entity.names.fs}.entity.json`,
|
|
1044
|
+
];
|
|
1045
|
+
}
|
|
1046
|
+
else {
|
|
1047
|
+
return [
|
|
1048
|
+
`${sonamu_1.Sonamu.apiRootPath}/src/application/${entity.names.fs}`,
|
|
1049
|
+
`${sonamu_1.Sonamu.apiRootPath}/dist/application/${entity.names.fs}`,
|
|
1050
|
+
...sonamu_1.Sonamu.config.sync.targets
|
|
1051
|
+
.map((target) => [
|
|
1052
|
+
`${sonamu_1.Sonamu.appRootPath}/${target}/src/services/${entity.names.fs}`,
|
|
1053
|
+
])
|
|
1054
|
+
.flat(),
|
|
1055
|
+
];
|
|
1056
|
+
}
|
|
1057
|
+
})(); // iife
|
|
1058
|
+
try {
|
|
1059
|
+
for (var _d = true, delPaths_1 = __asyncValues(delPaths), delPaths_1_1; delPaths_1_1 = yield delPaths_1.next(), _a = delPaths_1_1.done, !_a; _d = true) {
|
|
1060
|
+
_c = delPaths_1_1.value;
|
|
1061
|
+
_d = false;
|
|
1062
|
+
const delPath = _c;
|
|
1063
|
+
if ((0, fs_extra_1.existsSync)(delPath)) {
|
|
1064
|
+
console.log(chalk_1.default.red(`DELETE ${delPath}`));
|
|
1065
|
+
(0, child_process_1.execSync)(`rm -rf ${delPath}`);
|
|
1066
|
+
}
|
|
1067
|
+
else {
|
|
1068
|
+
console.log(chalk_1.default.yellow(`NOT_EXISTS ${delPath}`));
|
|
1069
|
+
}
|
|
1070
|
+
}
|
|
1071
|
+
}
|
|
1072
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
1073
|
+
finally {
|
|
1074
|
+
try {
|
|
1075
|
+
if (!_d && !_a && (_b = delPaths_1.return)) yield _b.call(delPaths_1);
|
|
1076
|
+
}
|
|
1077
|
+
finally { if (e_1) throw e_1.error; }
|
|
1078
|
+
}
|
|
1079
|
+
// reload entities
|
|
1080
|
+
yield entity_manager_1.EntityManager.reload();
|
|
1081
|
+
return { delPaths };
|
|
1082
|
+
});
|
|
1083
|
+
}
|
|
1024
1084
|
}
|
|
1025
1085
|
exports.Syncer = Syncer;
|
|
1026
1086
|
//# sourceMappingURL=syncer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../src/syncer/syncer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAqC;AACrC,0CAA2D;AAC3D,qDAQkB;AAClB,oDAA4B;AAC5B,sEAAoC;AACpC,mCAAgE;AAChE,2CAAsC;AACtC,oDAAgD;AAChD,+CAAiC;AACjC,0CAyBwB;AACxB,kDAI2B;AAC3B,6BAAwB;AACxB,kDAA0B;AAC1B,0CAMwB;AACxB,+DAIqC;AACrC,sDAA8C;AAC9C,4DAA2D;AAE3D,wEAAsE;AACtE,0EAAwE;AACxE,kFAAgF;AAChF,0EAAwE;AACxE,4DAA0D;AAC1D,gEAA8D;AAC9D,0EAAwE;AACxE,oEAAkE;AAClE,wEAAsE;AACtE,wEAAsE;AACtE,wDAAgC;AAChC,0FAAwF;AACxF,8FAA4F;AAC5F,4FAA0F;AAC1F,wFAAsF;AACtF,8FAA4F;AAC5F,wFAAsF;AACtF,wFAAsF;AACtF,kFAAgF;AAChF,0CAAuC;AAyBvC,MAAa,MAAM;IAgBjB;QAfA,SAAI,GAQE,EAAE,CAAC;QACT,UAAK,GAA6C,EAAE,CAAC;QACrD,WAAM,GAAqC,EAAE,CAAC;QAkgB9C,oBAAe,GAAG,CAChB,QAKC,EACD,QAAgB,CAAC,EACP,EAAE;YACZ,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAqB,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEjD,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;aACvC;YAED,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE;gBACzE,IAAI;gBACJ,QAAQ,EAAE,QAAQ,CAAC,QAAQ,KAAK,IAAI;gBACpC,UAAU,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU;aACjC,CAAC;QACJ,CAAC,CAAC;IAnhBoB,CAAC;IAHvB,IAAI,aAAa;QACf,OAAO,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IACxD,CAAC;IAGK,IAAI;;;YACR,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YAEvC,sBAAsB;YACtB,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,CAAO,MAAM,EAAE,EAAE;gBAC3B,MAAM,WAAW,GAAG,cAAI;qBACrB,IAAI,CAAC,SAAS,EAAE,aAAa,MAAM,gBAAgB,CAAC;qBACpD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC9B,IAAI,CAAC,IAAA,qBAAU,EAAC,WAAW,CAAC,EAAE;oBAC5B,OAAO;iBACR;gBAED,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,MAAM,EACN,+BAA+B,CAChC,CAAC;gBAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAS,EAAE;oBACpC,IAAI,IAAA,qBAAU,EAAC,WAAW,CAAC,KAAK,KAAK,EAAE;wBACrC,OAAO,EAAE,CAAC;qBACX;oBACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC7C,CAAC,CAAA,CAAC,EAAE,CAAC;gBAEL,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC/B,OAAO;iBACR;gBACD,IAAA,wBAAa,EAAC,WAAW,EAAE,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC,CAAC;YACxD,CAAC,CAAA,CAAC,CACH,CAAC;YAEF,eAAe;YACf,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1D,eAAe;YACf,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAE5D,KAAK;YACL,MAAM,MAAM,GAAG,IAAA,yBAAK,EAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YAC1D,IAAI,MAAM,EAAE;gBACV,MAAM,GAAG,GAAG,yBAAyB,CAAC;gBACtC,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACnE,CAAC;gBACF,OAAO;aACR;YAED,YAAY;YACZ,MAAM,IAAI,GAAG,IAAA,uBAAc,EAAC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAO,CAAC,CAAC;YAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;YAE1C,cAAc;YACd,MAAM,UAAU,GAAG,IAAA,gBAAO,EAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gBAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;gBACtE,OAAO,OAAQ,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC,CAA0B,CAAC;YAE5B,iCAAiC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE1C,WAAW;YACX,aAAa;YACb,IAAI,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC7B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;gBACxD,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;aAC1C;YAED,mCAAmC;YACnC,oCAAoC;YACpC,IACE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3B,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3B,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC/B;gBACA,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;gBAEtD,MAAM,OAAO,GAAG;oBACd,GAAG,CAAC,MAAA,UAAU,CAAC,OAAO,CAAC,mCAAI,EAAE,CAAC;oBAC9B,GAAG,CAAC,MAAA,UAAU,CAAC,OAAO,CAAC,mCAAI,EAAE,CAAC;oBAC9B,GAAG,CAAC,MAAA,UAAU,CAAC,WAAW,CAAC,mCAAI,EAAE,CAAC;iBACnC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;gBACjE,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;aAC9C;YAED,aAAa;YACb,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;gBAC1D,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;gBAC1C,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBAChC,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;aACxC;YAED,KAAK;YACL,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;;KAC5C;IAED,gBAAgB,CAAC,SAAmB;QAClC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC/C,OAAO,IAAA,qBAAQ,EAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEK,qBAAqB,CAAC,MAAgB;;YAC1C,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,GAAG,CAAC,CAAO,KAAK,EAAE,EAAE;gBACzB,OAAA,IAAI,CAAC,gBAAgB,CACnB,WAAW,EACX;oBACE,KAAK;iBACN,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,sBAAsB,CAAC,MAAgB;;YAC3C,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,GAAG,CAAC,CAAO,KAAK,EAAE,EAAE;gBACzB,OAAA,IAAI,CAAC,gBAAgB,CACnB,SAAS,EACT;oBACE,KAAK;iBACN,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,mBAAmB,CAAC,MAAgB;;YACxC,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,GAAG,CAAC,CAAO,KAAK,EAAE,EAAE;gBACzB,OAAA,IAAI,CAAC,gBAAgB,CACnB,gBAAgB,EAChB;oBACE,KAAK;iBACN,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,+BAA+B,CAAC,QAAgB,EAAE,MAAc;;YACpE,IAAI,CAAC,IAAA,qBAAU,EAAC,QAAQ,CAAC,EAAE;gBACzB,OAAO;aACR;YAED,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzD,MAAM,cAAc,GAAG,cAAc;iBAClC,OAAO,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;iBACpD,OAAO,CACN,4EAA4E,EAC5E,EAAE,CACH,CAAC;YACJ,OAAO,IAAA,oBAAS,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC3C,CAAC;KAAA;IAEK,wBAAwB,CAAC,OAAiB;;YAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC1C,MAAM,EAAE,WAAW,EAAE,GAAG,eAAM,CAAC;YAE/B,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,CAAO,MAAM,EAAE,EAAE;gBAC3B,OAAA,OAAO,CAAC,GAAG,CACT,OAAO,CAAC,GAAG,CAAC,CAAO,GAAG,EAAE,EAAE;oBACxB,MAAM,OAAO,GAAG,eAAM,CAAC,WAAW,GAAG,GAAG,CAAC;oBACzC,MAAM,GAAG,GAAG,OAAO;yBAChB,OAAO,CAAC,IAAI,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,CAAC;yBACrC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;oBAC1C,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,GAAG,CAAC,CAAC;oBACzB,IAAI,CAAC,IAAA,qBAAU,EAAC,GAAG,CAAC,EAAE;wBACpB,IAAA,oBAAS,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;oBACD,OAAO,CAAC,GAAG,CACT,SAAS,EACT,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAC/C,CAAC;oBACF,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBACzD,OAAO,GAAG,CAAC;gBACb,CAAC,CAAA,CAAC,CACH,CAAA;cAAA,CACF,CACF,CACF,CAAC,IAAI,EAAE,CAAC;QACX,CAAC;KAAA;IAEK,mBAAmB;;YACvB,MAAM,YAAY,GAAgB;gBAChC,WAAW;gBACX,KAAK,EAAE,eAAM,CAAC,WAAW,GAAG,gCAAgC;gBAC5D,KAAK,EAAE,eAAM,CAAC,WAAW,GAAG,gCAAgC;gBAC5D,SAAS,EAAE,eAAM,CAAC,WAAW,GAAG,oCAAoC;gBACpE,oBAAoB;gBACpB,KAAK,EAAE,eAAM,CAAC,WAAW,GAAG,iCAAiC;gBAC7D,GAAG,EAAE,eAAM,CAAC,WAAW,GAAG,+BAA+B;aAC1D,CAAC;YAEF,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAO,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;gBAC9D,OAAO,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC;YAC5B,CAAC,CAAA,CAAC,CACH,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;YAEV,MAAM,aAAa,GAGb,MAAM,OAAO,CAAC,GAAG,CACrB,SAAS,CAAC,GAAG,CAAC,CAAO,QAAQ,EAAE,EAAE;gBAC/B,OAAO;oBACL,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,eAAM,CAAC,WAAW,CAAC,MAAM,CAAC;oBACnD,QAAQ,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;iBACjD,CAAC;YACJ,CAAC,CAAA,CAAC,CACH,CAAC;YACF,OAAO,aAAa,CAAC;QACvB,CAAC;KAAA;IAEK,oBAAoB;;YACxB,IAAI,IAAA,qBAAU,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,KAAK,EAAE;gBAC5C,OAAO,EAAE,CAAC;aACX;YAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,IAAA,mBAAQ,EACvC,IAAI,CAAC,aAAa,CACnB,CAAsB,CAAC;YACxB,OAAO,iBAAiB,CAAC;QAC3B,CAAC;KAAA;IAEK,aAAa,CAAC,SAA4B;;YAC9C,MAAM,IAAA,oBAAS,EAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;KAAA;IAEK,iBAAiB,CAAC,QAAgB;;YACtC,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7C,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,kBAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC5C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC1B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAU;oBACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE;oBAChB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,gBAAgB,CAAC,QAAgB;;YACrC,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,EACjC,EAAE,CAAC,YAAY,CAAC,MAAM,CACvB,CAAC;YAEF,MAAM,OAAO,GAA4C,EAAE,CAAC;YAC5D,IAAI,SAAS,GAAW,cAAc,CAAC;YACvC,IAAI,UAAU,GAAW,eAAe,CAAC;YACzC,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE;;gBAChC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;oBAC/B,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC3C,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;qBACpE;iBACF;gBACD,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;oBAChC,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC9B,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;qBAC/C;oBAED,MAAM,cAAc,GAA6B,CAC/C,MAAA,IAAI,CAAC,cAAc,mCAAI,EAAE,CAC1B,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;wBAClB,MAAM,EAAE,GAAG,SAAwC,CAAC;wBAEpD,OAAO;4BACL,CAAC,EAAE,YAAY;4BACf,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;4BAClC,UAAU,EAAE,EAAE,CAAC,UAAU;gCACvB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC;gCACrC,CAAC,CAAC,SAAS;yBACd,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACH,MAAM,UAAU,GAAe,IAAI,CAAC,UAAU,CAAC,GAAG,CAChD,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;wBAClB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;wBAEpE,OAAO,IAAI,CAAC,eAAe,CACzB;4BACE,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,IAAI,EAAE,QAAQ,CAAC,IAAmB;4BAClC,QAAQ,EACN,QAAQ,CAAC,aAAa,KAAK,SAAS;gCACpC,QAAQ,CAAC,WAAW,KAAK,SAAS;4BACpC,UAAU;yBACX,EACD,KAAK,CACN,CAAC;oBACJ,CAAC,CACF,CAAC;oBACF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;wBAC3B,MAAM,IAAI,KAAK,CACb,sBAAsB,SAAS,IAAI,UAAU,EAAE,CAChD,CAAC;qBACH;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;oBAEpD,OAAO,CAAC,IAAI,CAAC;wBACX,SAAS;wBACT,UAAU;wBACV,cAAc;wBACd,UAAU;wBACV,UAAU;qBACX,CAAC,CAAC;iBACJ;gBACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC,CAAC;YACF,OAAO,CAAC,UAAU,CAAC,CAAC;YAEpB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBACxB,OAAO,EAAE,CAAC;aACX;YAED,oBAAoB;YACpB,MAAM,gBAAgB,GAAG,2BAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;gBACrD,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;oBAClC,MAAM,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CACvC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAC9B,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;oBAClC,MAAM,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CACvC,CAAC;gBACF,uCACK,GAAG,KACN,cAAc,EAAE,WAAY,CAAC,cAAc,EAC3C,UAAU,EAAE,WAAY,CAAC,UAAU,EACnC,UAAU,EAAE,WAAY,CAAC,UAAU,IACnC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAED,eAAe,CAAC,QAAqB;;QACnC,QAAQ,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE;YACtB,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU;gBAC3B,OAAO,KAAK,CAAC;YACf,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;gBAC/B,OAAO,SAAS,CAAC;YACnB,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO,QAAQ,CAAC;YAClB,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO,QAAQ,CAAC;YAClB,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;gBAC/B,OAAO,SAAS,CAAC;YACnB,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;gBACjC,OAAO,WAAW,CAAC;YACrB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,OAAO,MAAM,CAAC;YAChB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,OAAO,MAAM,CAAC;YAChB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,MAAM,OAAO,GAAI,QAA+B,CAAC,OAAO,CAAC;gBACzD,IAAI,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;oBAC/B,OAAO;wBACL,CAAC,EAAE,gBAAgB;wBACnB,KAAK,EAAE,OAAO,CAAC,IAAI;qBACpB,CAAC;iBACH;qBAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;oBACvC,OAAO;wBACL,CAAC,EAAE,iBAAiB;wBACpB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;qBAC5B,CAAC;iBACH;qBAAM;oBACL,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;wBAC9C,OAAO,MAAM,CAAC;qBACf;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,EAAE;wBAC1D,OAAO,WAAW,CAAC;qBACpB;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;wBACrD,OAAO,MAAM,CAAC;qBACf;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;wBACtD,OAAO,OAAO,CAAC;qBAChB;oBACD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;iBAC/B;YACH,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,MAAM,OAAO,GAAG,QAA4B,CAAC;gBAC7C,OAAO;oBACL,CAAC,EAAE,OAAO;oBACV,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC;iBACxD,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,MAAM,WAAW,GAAG,QAA8B,CAAC;gBACnD,OAAO;oBACL,CAAC,EAAE,QAAQ;oBACX,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;wBACxC,IAAI,EAAE,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAE;4BAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC;gCAC/B,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAqB;gCAChD,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAmB;6BAC/C,CAAC,CAAC;4BAEH,OAAO,IAAI,CAAC,eAAe,CAAC;gCAC1B,IAAI,EAAE;oCACJ,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KACjD,GAAG,CAAC,IACN,GAAG;iCACa;gCAClB,IAAI,EAAE,MAAM,CAAC,IAAmB;6BACjC,CAAC,CAAC;yBACJ;6BAAM;4BACL,OAAO,IAAI,CAAC,eAAe,CAAC;gCAC1B,IAAI,EAAG,MAA+B,CAAC,IAAqB;gCAC5D,IAAI,EAAG,MAA+B,CAAC,IAAmB;6BAC3D,CAAC,CAAC;yBACJ;oBACH,CAAC,CAAC;iBACH,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO;oBACL,CAAC,EAAE,KAAK;oBACR,EAAE,EACC,QAAiC,CAAC,QACpC,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACxB,IAAI,EAAE,MAAC,QAAiC,CAAC,aAAa,0CAAE,GAAG,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAC3C;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,OAAO;oBACL,CAAC,EAAE,OAAO;oBACV,KAAK,EAAG,QAA6B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACvD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;gBACjC,OAAO;oBACL,CAAC,EAAE,cAAc;oBACjB,KAAK,EAAG,QAAoC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;gBAClC,OAAO;oBACL,CAAC,EAAE,gBAAgB;oBACnB,MAAM,EAAE,IAAI,CAAC,eAAe,CACzB,QAAqC,CAAC,UAAU,CAClD;oBACD,KAAK,EAAE,IAAI,CAAC,eAAe,CACxB,QAAqC,CAAC,SAAS,CACjD;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,IAAI,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE;oBAChC,OAAO;wBACL,CAAC,EAAE,YAAY;wBACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;qBACF,CAAC;iBACH;gBACD,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;SACzC;QAED,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IA0BD,SAAS,CACP,IAAyB,EACzB,UAAyB;QAEzB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvE,OAAO,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEK,YAAY;;YAChB,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,gCAAgC,CACjC,CAAC;YACF,iEAAiE;YAEjE,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,EAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAC7D,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;KAAA;IAEK,cAAc;;YAClB,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,gCAAgC,CACjC,CAAC;YACF,mEAAmE;YAEnE,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,EAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAC/C,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAC9B,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CACrD,CAAC;YACF,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;KAAA;IAEK,aAAa;;YACjB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtC,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;YAED,MAAM,YAAY,GAAG;gBACnB,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,iCAAiC,CAAC;gBAChE,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,iCAAiC,CAAC;gBAChE,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,qCAAqC,CAAC;aACrE,CAAC;YACF,+EAA+E;YAE/E,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC,CAAC,CACrE,CAAC,IAAI,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,MAAM,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAC/C,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,CAC7B,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,OAAC,CAAC,OAAO,CAAC,CAC/B,CAAC;YACvB,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;KAAA;IAED,WAAW,CAAC,GAAgB;QAC1B,IAAI,GAAG,KAAK,KAAK,EAAE;YACjB,OAAO,IAAI,4BAAa,EAAE,CAAC;SAC5B;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE;YAC/B,OAAO,IAAI,0CAAoB,EAAE,CAAC;SACnC;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE;YAC/B,OAAO,IAAI,0CAAoB,EAAE,CAAC;SACnC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE;YACnC,OAAO,IAAI,kDAAwB,EAAE,CAAC;SACvC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE;YACnC,OAAO,IAAI,kDAAwB,EAAE,CAAC;SACvC;aAAM,IAAI,GAAG,KAAK,OAAO,EAAE;YAC1B,OAAO,IAAI,gCAAe,EAAE,CAAC;SAC9B;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE;YAC/B,OAAO,IAAI,0CAAoB,EAAE,CAAC;SACnC;aAAM,IAAI,GAAG,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,oCAAiB,EAAE,CAAC;SAChC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,oBAAoB,EAAE;YACvC,OAAO,IAAI,0DAA4B,EAAE,CAAC;SAC3C;aAAM,IAAI,GAAG,KAAK,sBAAsB,EAAE;YACzC,OAAO,IAAI,8DAA8B,EAAE,CAAC;SAC7C;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,qBAAqB,EAAE;YACxC,OAAO,IAAI,4DAA6B,EAAE,CAAC;SAC5C;aAAM,IAAI,GAAG,KAAK,sBAAsB,EAAE;YACzC,OAAO,IAAI,8DAA8B,EAAE,CAAC;SAC7C;aAAM;YACL,MAAM,IAAI,mCAAmB,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAEK,cAAc,CAClB,GAAgB,EAChB,OAAqC;;YAErC,MAAM,QAAQ,GAAa,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjD,IAAI,KAAK,GAAc,EAAE,CAAC;YAC1B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,gBAAgB,EAAE;gBACjD,0BAA0B;gBAC1B,MAAM,GAAG,GAAG,wBAAU,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC1C,MAAM,WAAW,GAAG,GAAG,cAAI,CAAC,IAAI,CAC9B,eAAM,CAAC,WAAW,EAClB,kBAAkB,CACnB,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;gBAC7C,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;aACpD;iBAAM,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,OAAO,EAAE;gBACjD,sCAAsC;gBACtC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAClE,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CACjD,GAAG,OAAO,CAAC,KAAK,YAAY,CAC7B,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;gBACtE,KAAK,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;aACvC;iBAAM,IAAI,GAAG,KAAK,WAAW,EAAE;gBAC9B,+BAA+B;gBAC/B,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CACjD,GAAG,OAAO,CAAC,KAAK,YAAY,CAC7B,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;gBACtE,KAAK,GAAG,CAAC,cAAc,CAAC,CAAC;aAC1B;YAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAEnE,IAAI,mBAAmB,GAAkB,EAAE,CAAC;YAC5C,IAAI,QAAQ,CAAC,YAAY,EAAE;gBACzB,mBAAmB,GAAG,CACpB,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;oBAC7C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBAC3C,CAAC,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAC;aACV;YAED,OAAO,CAAC,QAAQ,EAAE,GAAG,mBAAmB,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEK,uBAAuB,CAC3B,GAAgB,EAChB,MAAwB;;YAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;YAE3E,0BAA0B;YAC1B,MAAM,UAAU,GAAG,UAAU;iBAC1B,MAAM,CACL,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;gBACf,MAAM,UAAU,GAAG,wBAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,UAAU,GAAG,UAAU,CAAC;gBAC5B,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBAC5B,UAAU,GAAG,IAAA,oBAAM,EACjB,cAAI,CAAC,QAAQ,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,EACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,CAC/C,CAAC;iBACH;gBAED,oCAAoC;gBACpC,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CACtB,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAC7C,CAAC;gBACF,IAAI,SAAS,EAAE;oBACb,SAAS,CAAC,IAAI,GAAG,IAAA,aAAI,EAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;iBACzD;qBAAM;oBACL,CAAC,CAAC,IAAI,CAAC;wBACL,IAAI,EAAE,CAAC,SAAS,CAAC;wBACjB,IAAI,EAAE,UAAU;qBACjB,CAAC,CAAC;iBACJ;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,EACD,EAGG,CACJ;gBACD,WAAW;iBACV,MAAM,CACL,CAAC,SAAS,EAAE,EAAE,CACZ,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,KAAK,CACxE,CAAC;YAEJ,oBAAoB;YACpB,MAAM,MAAM,GAAG;gBACb,GAAG,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,EAAE,CAAC;gBACxB,GAAG,UAAU,CAAC,GAAG,CACf,CAAC,SAAS,EAAE,EAAE,CACZ,YAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,IAAI,GAAG,CACrE;aACF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,MAAM,SAAS,GACb,GAAG,KAAK,gBAAgB;gBACtB,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC7B,CAAC,CAAC,MAAM,kBAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;oBACjD,MAAM,EAAE,YAAY;iBACrB,CAAC,CAAC;YAET,OAAO;gBACL,IAAI,EAAE,MAAM,GAAG,GAAG,GAAG,QAAQ;gBAC7B,IAAI,EAAE,SAAS;aAChB,CAAC;QACJ,CAAC;KAAA;IAEK,eAAe,CAAC,WAAwB;;YAC5C,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,WAAW,EAAE,GAAG,eAAM,CAAC;YAC/B,MAAM,QAAQ,GAAG,GAAG,eAAM,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YAE7D,MAAM,YAAY,GAAG,IAAA,aAAI,EACvB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CACtE,CAAC;YACF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,YAAY,CAAC,GAAG,CAAC,CAAO,WAAW,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBACtC,IAAI,IAAA,qBAAU,EAAC,GAAG,CAAC,KAAK,KAAK,EAAE;oBAC7B,IAAA,oBAAS,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC;gBACD,IAAA,wBAAa,EAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CACT,YAAY,EACZ,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CACvD,CAAC;gBACF,OAAO,WAAW,CAAC;YACrB,CAAC,CAAA,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAEK,gBAAgB,CACpB,GAAgB,EAChB,eAAoB,EACpB,gBAAkC;;YAElC,MAAM,eAAe,mBACnB,SAAS,EAAE,KAAK,IACb,gBAAgB,CACpB,CAAC;YAEF,aAAa;YACb,IAAI,IAAI,GAAkB,CAAC,GAAG,CAAC,CAAC;YAChC,IAAI,GAAG,KAAK,KAAK,EAAE;gBACjB,IAAI,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,YAAY,CAAC,CAAC;aAC9D;YAED,SAAS;YACT,MAAM,YAAY,GAAG,CACnB,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,CAAO,GAAG,EAAE,EAAE;gBACrB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;YACnD,CAAC,CAAA,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAC;YAET;;;;;;;cAOE;YAEF,IAAI,oBAAoB,GAAkB,EAAE,CAAC;YAC7C,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,EAAE;gBACtC,oBAAoB,GAAG,YAAY,CAAC;aACrC;iBAAM;gBACL,oBAAoB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE;oBAChE,IAAI,KAAK,KAAK,CAAC,EAAE;wBACf,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;wBACvC,MAAM,QAAQ,GAAG,GAAG,eAAM,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;wBAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,CAC7C,CAAC;wBACF,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,qBAAU,EAAC,OAAO,CAAC,KAAK,KAAK,CAAC,CAAC;qBACvE;yBAAM;wBACL,OAAO,IAAI,CAAC;qBACb;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;oBACrC,MAAM,IAAI,yCAAyB,CACjC,sBAAsB,CACvB,CAAC;iBACH;aACF;YAED,OAAO,OAAO,CAAC,GAAG,CAChB,oBAAoB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CACvC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAClC,CACF,CAAC;QACJ,CAAC;KAAA;IAED,WAAW,CACT,KAAa,EACb,KAEC;QAED,MAAM,IAAI,GAAkB,mBAAW,CAAC,OAAO,CAAC;QAChD,MAAM,KAAK,GAAG,wBAAU,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACzC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,CAClC,CAAC;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBAChC,SAAS,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;oBAC5B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,MAAM,CAAC,GAAG,GAAG,KAAK,WAAW,EAAE,CAAC,GAAG,IAAA,qBAAU,EAC3C,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CACzC,CAAC;gBACJ,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC;aACf;YAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxD,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAChB,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,GAAG,IAAA,qBAAU,EACjC,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAC/D,CAAC;gBACJ,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,IAAA,qBAAU,EAAC,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;aACpE;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,EAAE,EAAgD,CAAC,CAAC;IACvD,CAAC;IAEK,cAAc,CAAC,SAAiB;;YACpC,MAAM,UAAU,GAAG,wBAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACvD,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAC7B,eAAM,CAAC,WAAW,EAClB,MAAM,EACN,aAAa,EACb,UAAU,GAAG,KAAK,CACnB,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,GAAG,cAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,wDAAa,UAAU,GAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC;aACnD;YACD,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;KAAA;IAEK,iBAAiB,CAAC,QAAqB;;;YAC3C,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE;gBACjC,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC1C;iBAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE;gBACxC,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE;oBAC/B,MAAM,IAAI,KAAK,EAAE,CAAC;iBACnB;qBAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACvC,OAAO,CACL,MAAM,IAAI,CAAC,iBAAiB,iCACvB,QAAQ,KACX,QAAQ,EAAE,QAAQ,IAClB,CACH,CAAC,KAAK,EAAE,CAAC;iBACX;qBAAM;oBACL,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC1D,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;wBACnC,OAAO,OAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;qBACtC;yBAAM;wBACL,OAAO,OAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;qBAC3B;iBACF;aACF;iBAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBACzC,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CACxC,CAAO,OAAO,EAAE,aAAa,EAAE,EAAE;oBAC/B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;oBAC7B,MAAM,CAAC,aAAa,CAAC,IAAK,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC7D,aAAa,CACd,CAAC;oBACF,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAA,EACD,EAAS,CACV,CAAC;gBAEF,IAAI,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,QAAQ,MAAK,IAAI,EAAE;oBACpC,OAAO,OAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;iBACjC;qBAAM;oBACL,OAAO,OAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBACtB;aACF;iBAAM;gBACL,MAAM,KAAK,CAAC;aACb;;KACF;IACK,aAAa,CAAC,IAAa;;YAC/B,IAAI,OAAO,GAAiB,OAAC,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBACvB,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;aAC5B;iBAAM,IAAI,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAA,mCAAiB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aAC5D;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACvC;iBAAM,IAAI,IAAA,mBAAW,EAAC,IAAI,CAAC,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;gBAClD,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,OAAC,CAAC,OAAO,EAAE,CAAC;aACvB;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aACjC;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aAChC;iBAAM,IAAI,IAAA,sBAAc,EAAC,IAAI,CAAC,EAAE;gBAC/B,OAAO,GAAG,yBAAiB,CAAC;aAC7B;iBAAM,IAAI,IAAA,uBAAe,EAAC,IAAI,CAAC,EAAE;gBAChC,OAAO,GAAG,yBAAiB,CAAC;aAC7B;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,IAAI,IAAI,CAAC,EAAE,YAAY,OAAC,CAAC,OAAO,EAAE;oBAChC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;iBACnB;qBAAM;oBACL,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;iBAClD;aACF;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;aAC7B;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,IAAI,IAAI,CAAC,EAAE,YAAY,OAAC,CAAC,OAAO,EAAE;oBAChC,OAAO,GAAG,IAAI,CAAC,EAAE,CAAC;iBACnB;qBAAM;oBACL,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;iBAClD;aACF;iBAAM,IAAI,IAAA,sBAAc,EAAC,IAAI,CAAC,EAAE;gBAC/B,IACE,IAAA,kCAA0B,EAAC,IAAI,CAAC;oBAChC,CAAC,IAAA,8BAAsB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,EACpD;oBACA,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;iBAC5B;aACF;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;aACtD;YAED,IAAK,IAA+B,CAAC,QAAQ,EAAE;gBAC7C,OAAO,GAAI,OAAuB,CAAC,WAAW,EAAE,CAAC;aAClD;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;aAC9B;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAED,iBAAiB,CACf,GAAW,EACX,OAAqB;QAErB,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YAClC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAChD,OAAO,cAAc,CAAC;aACvB;iBAAM,IAAI,OAAO,CAAC,WAAW,KAAK,mBAAmB,EAAE;gBACtD,OAAO,iBAAiB,CAAC;aAC1B;iBAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,aAAa,CAAC;aACtB;iBAAM;gBACL,OAAO,cAAc,CAAC;aACvB;SACF;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YACzC,IAAI,GAAG,KAAK,IAAI,EAAE;gBAChB,OAAO,WAAW,CAAC;aACpB;iBAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC9B,OAAO,cAAc,CAAC;aACvB;iBAAM;gBACL,OAAO,cAAc,CAAC;aACvB;SACF;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YAC1C,OAAO,SAAS,CAAC;SAClB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,OAAO,EAAE;YACvC,OAAO,OAAO,CAAC;SAChB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YACzC,OAAO,QAAQ,CAAC;SACjB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,MAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YACzE,OAAO,cAAc,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,OAAO,cAAc,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YAC1C,OAAO,cAAc,CAAC;SACvB;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC7D;IACH,CAAC;IACD,sBAAsB,CACpB,OAAqB,EACrB,UAAkB,MAAM;QAExB,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,IAAA,qBAAQ,EAAC,OAAO,EAAE,KAAK,CAAC;YAC/B,OAAO;SACR,CAAC;QACF,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACrC,OAAO,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;YACH,uCACK,GAAG,KACN,UAAU,EAAE,QAAQ,EACpB,QAAQ,IACR;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,IAAI,SAAS,YAAY,OAAC,CAAC,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAClE,uCACK,GAAG,KACN,UAAU,EAAE,cAAc,IAC1B;aACH;YACD,uCACK,GAAG,KACN,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,IACxD;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAiB,EAAE,EAAE,CACjE,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,CAC1C,CAAC;YACF,8BAA8B;YAC9B,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,WAAW,EAAE;YAC3C,uCACK,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAC/D,QAAQ,EAAE,IAAI,IACd;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,WAAW,EAAE;YAC3C,uCACK,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAC/D,QAAQ,EAAE,IAAI,IACd;SACH;aAAM;YACL,uCACK,GAAG,KACN,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,IACpD;SACH;IACH,CAAC;IAEK,cAAc,CAAC,KAAa,EAAE,SAAiB;;YACnD,MAAM,GAAG,GAAG,MAAM,wBAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YACvC,IAAI,OAAO,KAAK,SAAS,EAAE;gBACzB,MAAM,IAAI,2CAA2B,CAAC,iBAAiB,CAAC,CAAC;aAC1D;YACD,MAAM,SAAS,GAAG,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACrD,MAAM,YAAY,GAAgB;gBAChC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,SAAS;aACpB,CAAC;YAEF,MAAM,cAAc,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAClD,YAAY,CACb,CAAqB,CAAC;YAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;YAChE,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACzD,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;oBACjC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAC5C,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CACpC,CAAC;oBACF,IAAI,SAAS,EAAE;wBACb,uCACK,KAAK,KACR,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE;gCACN,MAAM,EAAE,SAAS,CAAC,IAAI;6BACvB,IACD;qBACH;yBAAM;wBACL,OAAO,KAAK,CAAC;qBACd;iBACF;qBAAM,IACL,KAAK,CAAC,UAAU,KAAK,OAAO;oBAC5B,KAAK,CAAC,OAAO;oBACb,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,QAAQ,EACrC;oBACA,MAAM,SAAS,GAAG,KAAK,CAAC,OAAQ,CAAC,QAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACrD,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CACpC,CAAC;oBACF,IAAI,SAAS,EAAE;wBACb,uCACK,KAAK,KACR,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE;oCACN,MAAM,EAAE,SAAS,CAAC,IAAI;iCACvB,OAEH;qBACH;yBAAM;wBACL,OAAO,KAAK,CAAC;qBACd;iBACF;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;QACrB,CAAC;KAAA;CACF;AA5pCD,wBA4pCC"}
|
|
1
|
+
{"version":3,"file":"syncer.js","sourceRoot":"","sources":["../../src/syncer/syncer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAAqC;AACrC,0CAA2D;AAC3D,qDAQkB;AAClB,oDAA4B;AAC5B,sEAAoC;AACpC,mCAAgE;AAChE,2CAAsC;AACtC,6DAAyD;AACzD,+CAAiC;AACjC,0CAyBwB;AACxB,kDAI2B;AAC3B,6BAAwB;AACxB,kDAA0B;AAC1B,0CAMwB;AACxB,+DAIqC;AACrC,sDAA8C;AAC9C,4DAA2D;AAE3D,wEAAsE;AACtE,0EAAwE;AACxE,kEAAgE;AAChE,gEAA8D;AAC9D,0EAAwE;AACxE,oEAAkE;AAClE,wEAAsE;AACtE,wEAAsE;AACtE,wDAAgC;AAChC,0FAAwF;AACxF,8FAA4F;AAC5F,4FAA0F;AAC1F,wFAAsF;AACtF,8FAA4F;AAC5F,wFAAsF;AACtF,wFAAsF;AACtF,kFAAgF;AAChF,0CAAuC;AACvC,iDAAyC;AAyBzC,MAAa,MAAM;IAajB,IAAI,aAAa;QACf,OAAO,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IACxD,CAAC;IACD;QAfA,SAAI,GAQE,EAAE,CAAC;QACT,UAAK,GAA6C,EAAE,CAAC;QACrD,WAAM,GAAqC,EAAE,CAAC;QAogB9C,oBAAe,GAAG,CAChB,QAKC,EACD,QAAgB,CAAC,EACP,EAAE;YACZ,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAqB,CAAC;YAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAEjD,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;aACvC;YAED,OAAO;gBACL,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,EAAE;gBACzE,IAAI;gBACJ,QAAQ,EAAE,QAAQ,CAAC,QAAQ,KAAK,IAAI;gBACpC,UAAU,EAAE,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,UAAU;aACjC,CAAC;QACJ,CAAC,CAAC;IArhBoB,CAAC;IAEjB,IAAI;;;YACR,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YAEvC,sBAAsB;YACtB,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,CAAO,MAAM,EAAE,EAAE;gBAC3B,MAAM,WAAW,GAAG,cAAI;qBACrB,IAAI,CAAC,SAAS,EAAE,aAAa,MAAM,gBAAgB,CAAC;qBACpD,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBAC9B,IAAI,CAAC,IAAA,qBAAU,EAAC,WAAW,CAAC,EAAE;oBAC5B,OAAO;iBACR;gBAED,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,MAAM,EACN,+BAA+B,CAChC,CAAC;gBAEF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC9D,MAAM,WAAW,GAAG,MAAM,CAAC,GAAS,EAAE;oBACpC,IAAI,IAAA,qBAAU,EAAC,WAAW,CAAC,KAAK,KAAK,EAAE;wBACrC,OAAO,EAAE,CAAC;qBACX;oBACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;gBAC7C,CAAC,CAAA,CAAC,EAAE,CAAC;gBAEL,IAAI,WAAW,KAAK,WAAW,EAAE;oBAC/B,OAAO;iBACR;gBACD,IAAA,wBAAa,EAAC,WAAW,EAAE,IAAA,uBAAY,EAAC,WAAW,CAAC,CAAC,CAAC;YACxD,CAAC,CAAA,CAAC,CACH,CAAC;YAEF,eAAe;YACf,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1D,eAAe;YACf,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAE5D,KAAK;YACL,MAAM,MAAM,GAAG,IAAA,yBAAK,EAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;YAC1D,IAAI,MAAM,EAAE;gBACV,MAAM,GAAG,GAAG,yBAAyB,CAAC;gBACtC,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CACT,eAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACnE,CAAC;gBACF,OAAO;aACR;YAED,YAAY;YACZ,MAAM,IAAI,GAAG,IAAA,uBAAc,EAAC,gBAAgB,EAAE,iBAAiB,EAAE,gBAAO,CAAC,CAAC;YAC1E,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;YAE1C,cAAc;YACd,MAAM,UAAU,GAAG,IAAA,gBAAO,EAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;gBAC1C,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CACrB,mDAAmD,CACpD,CAAC;gBACF,OAAO,OAAQ,CAAC,CAAC,CAAC,CAAC;YACrB,CAAC,CAA0B,CAAC;YAE5B,iCAAiC;YACjC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE1C,cAAc;YACd,aAAa;YACb,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAChC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACjE,MAAM,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,CAAC;aAC7C;YAED,mCAAmC;YACnC,oCAAoC;YACpC,IACE,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3B,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC;gBAC/B,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAC/B;gBACA,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;gBAE1D,MAAM,OAAO,GAAG;oBACd,GAAG,CAAC,MAAA,UAAU,CAAC,OAAO,CAAC,mCAAI,EAAE,CAAC;oBAC9B,GAAG,CAAC,MAAA,UAAU,CAAC,WAAW,CAAC,mCAAI,EAAE,CAAC;oBAClC,GAAG,CAAC,MAAA,UAAU,CAAC,WAAW,CAAC,mCAAI,EAAE,CAAC;iBACnC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;gBACjE,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,CAAC,CAAC;aAC9C;YAED,aAAa;YACb,IAAI,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC7B,MAAM,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBAChC,MAAM,IAAI,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;aAC3C;YAED,KAAK;YACL,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC;;KAC5C;IAED,mBAAmB,CAAC,SAAmB;QACrC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACzB,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC/C,OAAO,IAAA,qBAAQ,EAAC,OAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC;IAEK,qBAAqB,CAAC,SAAmB;;YAC7C,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,CAAO,QAAQ,EAAE,EAAE;gBAC/B,OAAA,IAAI,CAAC,gBAAgB,CACnB,WAAW,EACX;oBACE,QAAQ;iBACT,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,sBAAsB,CAAC,SAAmB;;YAC9C,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,CAAO,QAAQ,EAAE,EAAE;gBAC/B,OAAA,IAAI,CAAC,gBAAgB,CACnB,SAAS,EACT;oBACE,QAAQ;iBACT,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,mBAAmB,CAAC,SAAmB;;YAC3C,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,SAAS,CAAC,GAAG,CAAC,CAAO,QAAQ,EAAE,EAAE;gBAC/B,OAAA,IAAI,CAAC,gBAAgB,CACnB,gBAAgB,EAChB;oBACE,QAAQ;iBACT,EACD;oBACE,SAAS,EAAE,IAAI;iBAChB,CACF,CAAA;cAAA,CACF,CACF,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;QACZ,CAAC;KAAA;IAEK,+BAA+B,CAAC,QAAgB,EAAE,MAAc;;YACpE,IAAI,CAAC,IAAA,qBAAU,EAAC,QAAQ,CAAC,EAAE;gBACzB,OAAO;aACR;YAED,MAAM,cAAc,GAAG,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzD,MAAM,cAAc,GAAG,cAAc;iBAClC,OAAO,CAAC,gBAAgB,EAAE,yBAAyB,CAAC;iBACpD,OAAO,CACN,4EAA4E,EAC5E,EAAE,CACH,CAAC;YACJ,OAAO,IAAA,oBAAS,EAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAC3C,CAAC;KAAA;IAEK,wBAAwB,CAAC,OAAiB;;YAC9C,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,GAAG,CAAC;YAC1C,MAAM,EAAE,WAAW,EAAE,GAAG,eAAM,CAAC;YAE/B,OAAO,CACL,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,CAAO,MAAM,EAAE,EAAE;gBAC3B,OAAA,OAAO,CAAC,GAAG,CACT,OAAO,CAAC,GAAG,CAAC,CAAO,GAAG,EAAE,EAAE;oBACxB,MAAM,OAAO,GAAG,eAAM,CAAC,WAAW,GAAG,GAAG,CAAC;oBACzC,MAAM,GAAG,GAAG,OAAO;yBAChB,OAAO,CAAC,IAAI,MAAM,GAAG,EAAE,IAAI,MAAM,GAAG,CAAC;yBACrC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;oBAC1C,MAAM,GAAG,GAAG,IAAA,cAAO,EAAC,GAAG,CAAC,CAAC;oBACzB,IAAI,CAAC,IAAA,qBAAU,EAAC,GAAG,CAAC,EAAE;wBACpB,IAAA,oBAAS,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;qBACrC;oBACD,OAAO,CAAC,GAAG,CACT,SAAS,EACT,eAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CAC/C,CAAC;oBACF,MAAM,IAAI,CAAC,+BAA+B,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;oBACzD,OAAO,GAAG,CAAC;gBACb,CAAC,CAAA,CAAC,CACH,CAAA;cAAA,CACF,CACF,CACF,CAAC,IAAI,EAAE,CAAC;QACX,CAAC;KAAA;IAEK,mBAAmB;;YACvB,MAAM,YAAY,GAAgB;gBAChC,WAAW;gBACX,MAAM,EAAE,eAAM,CAAC,WAAW,GAAG,mCAAmC;gBAChE,KAAK,EAAE,eAAM,CAAC,WAAW,GAAG,gCAAgC;gBAC5D,SAAS,EAAE,eAAM,CAAC,WAAW,GAAG,oCAAoC;gBACpE,SAAS,EAAE,eAAM,CAAC,WAAW,GAAG,oCAAoC;gBACpE,oBAAoB;gBACpB,KAAK,EAAE,eAAM,CAAC,WAAW,GAAG,iCAAiC;aAC9D,CAAC;YAEF,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,GAAG,CACf,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAO,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE;gBAC9D,OAAO,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC;YAC5B,CAAC,CAAA,CAAC,CACH,CACF;iBACE,IAAI,EAAE;iBACN,IAAI,EAAE,CAAC;YAEV,MAAM,aAAa,GAGb,MAAM,OAAO,CAAC,GAAG,CACrB,SAAS,CAAC,GAAG,CAAC,CAAO,QAAQ,EAAE,EAAE;gBAC/B,OAAO;oBACL,IAAI,EAAE,QAAQ,CAAC,SAAS,CAAC,eAAM,CAAC,WAAW,CAAC,MAAM,CAAC;oBACnD,QAAQ,EAAE,MAAM,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC;iBACjD,CAAC;YACJ,CAAC,CAAA,CAAC,CACH,CAAC;YACF,OAAO,aAAa,CAAC;QACvB,CAAC;KAAA;IAEK,oBAAoB;;YACxB,IAAI,IAAA,qBAAU,EAAC,IAAI,CAAC,aAAa,CAAC,KAAK,KAAK,EAAE;gBAC5C,OAAO,EAAE,CAAC;aACX;YAED,MAAM,iBAAiB,GAAG,CAAC,MAAM,IAAA,mBAAQ,EACvC,IAAI,CAAC,aAAa,CACnB,CAAsB,CAAC;YACxB,OAAO,iBAAiB,CAAC;QAC3B,CAAC;KAAA;IAEK,aAAa,CAAC,SAA4B;;YAC9C,MAAM,IAAA,oBAAS,EAAC,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACtD,CAAC;KAAA;IAEK,iBAAiB,CAAC,QAAgB;;YACtC,OAAO,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBAC7C,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;gBACvC,MAAM,KAAK,GAAG,kBAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;gBAC5C,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;gBAC1B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,UAAU,KAAU;oBACnC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE;oBAChB,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,gBAAgB,CAAC,QAAgB;;YACrC,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,IAAA,uBAAY,EAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,EACjC,EAAE,CAAC,YAAY,CAAC,MAAM,CACvB,CAAC;YAEF,MAAM,OAAO,GAA4C,EAAE,CAAC;YAC5D,IAAI,SAAS,GAAW,cAAc,CAAC;YACvC,IAAI,UAAU,GAAW,eAAe,CAAC;YACzC,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,EAAE;;gBAChC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;oBAC/B,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC3C,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;qBACpE;iBACF;gBACD,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE;oBAChC,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;wBAC9B,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;qBAC/C;oBAED,MAAM,cAAc,GAA6B,CAC/C,MAAA,IAAI,CAAC,cAAc,mCAAI,EAAE,CAC1B,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE;wBAClB,MAAM,EAAE,GAAG,SAAwC,CAAC;wBAEpD,OAAO;4BACL,CAAC,EAAE,YAAY;4BACf,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE;4BAClC,UAAU,EAAE,EAAE,CAAC,UAAU;gCACvB,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC;gCACrC,CAAC,CAAC,SAAS;yBACd,CAAC;oBACJ,CAAC,CAAC,CAAC;oBACH,MAAM,UAAU,GAAe,IAAI,CAAC,UAAU,CAAC,GAAG,CAChD,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;wBAClB,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;wBAEpE,OAAO,IAAI,CAAC,eAAe,CACzB;4BACE,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,IAAI,EAAE,QAAQ,CAAC,IAAmB;4BAClC,QAAQ,EACN,QAAQ,CAAC,aAAa,KAAK,SAAS;gCACpC,QAAQ,CAAC,WAAW,KAAK,SAAS;4BACpC,UAAU;yBACX,EACD,KAAK,CACN,CAAC;oBACJ,CAAC,CACF,CAAC;oBACF,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,EAAE;wBAC3B,MAAM,IAAI,KAAK,CACb,sBAAsB,SAAS,IAAI,UAAU,EAAE,CAChD,CAAC;qBACH;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAK,CAAC,CAAC;oBAEpD,OAAO,CAAC,IAAI,CAAC;wBACX,SAAS;wBACT,UAAU;wBACV,cAAc;wBACd,UAAU;wBACV,UAAU;qBACX,CAAC,CAAC;iBACJ;gBACD,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC,CAAC;YACF,OAAO,CAAC,UAAU,CAAC,CAAC;YAEpB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBACxB,OAAO,EAAE,CAAC;aACX;YAED,oBAAoB;YACpB,MAAM,gBAAgB,GAAG,2BAAc,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;gBACrD,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;oBAClC,MAAM,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CACvC,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,2BAA2B;YAC3B,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBAChD,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAC9B,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;oBAClC,MAAM,CAAC,UAAU,KAAK,GAAG,CAAC,UAAU,CACvC,CAAC;gBACF,uCACK,GAAG,KACN,cAAc,EAAE,WAAY,CAAC,cAAc,EAC3C,UAAU,EAAE,WAAY,CAAC,UAAU,EACnC,UAAU,EAAE,WAAY,CAAC,UAAU,IACnC;YACJ,CAAC,CAAC,CAAC;YACH,OAAO,YAAY,CAAC;QACtB,CAAC;KAAA;IAED,eAAe,CAAC,QAAqB;;QACnC,QAAQ,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE;YACtB,KAAK,EAAE,CAAC,UAAU,CAAC,UAAU;gBAC3B,OAAO,KAAK,CAAC;YACf,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;gBAC/B,OAAO,SAAS,CAAC;YACnB,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO,QAAQ,CAAC;YAClB,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO,QAAQ,CAAC;YAClB,KAAK,EAAE,CAAC,UAAU,CAAC,cAAc;gBAC/B,OAAO,SAAS,CAAC;YACnB,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;gBACjC,OAAO,WAAW,CAAC;YACrB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,OAAO,MAAM,CAAC;YAChB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,OAAO,MAAM,CAAC;YAChB,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,MAAM,OAAO,GAAI,QAA+B,CAAC,OAAO,CAAC;gBACzD,IAAI,EAAE,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;oBAC/B,OAAO;wBACL,CAAC,EAAE,gBAAgB;wBACnB,KAAK,EAAE,OAAO,CAAC,IAAI;qBACpB,CAAC;iBACH;qBAAM,IAAI,EAAE,CAAC,gBAAgB,CAAC,OAAO,CAAC,EAAE;oBACvC,OAAO;wBACL,CAAC,EAAE,iBAAiB;wBACpB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;qBAC5B,CAAC;iBACH;qBAAM;oBACL,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;wBAC9C,OAAO,MAAM,CAAC;qBACf;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB,EAAE;wBAC1D,OAAO,WAAW,CAAC;qBACpB;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,EAAE;wBACrD,OAAO,MAAM,CAAC;qBACf;yBAAM,IAAI,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE;wBACtD,OAAO,OAAO,CAAC;qBAChB;oBACD,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;iBAC/B;YACH,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,MAAM,OAAO,GAAG,QAA4B,CAAC;gBAC7C,OAAO;oBACL,CAAC,EAAE,OAAO;oBACV,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,WAAW,CAAC;iBACxD,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW;gBAC5B,MAAM,WAAW,GAAG,QAA8B,CAAC;gBACnD,OAAO;oBACL,CAAC,EAAE,QAAQ;oBACX,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;wBACxC,IAAI,EAAE,CAAC,2BAA2B,CAAC,MAAM,CAAC,EAAE;4BAC1C,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC;gCAC/B,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAqB;gCAChD,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAmB;6BAC/C,CAAC,CAAC;4BAEH,OAAO,IAAI,CAAC,eAAe,CAAC;gCAC1B,IAAI,EAAE;oCACJ,WAAW,EAAE,IAAI,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,KACjD,GAAG,CAAC,IACN,GAAG;iCACa;gCAClB,IAAI,EAAE,MAAM,CAAC,IAAmB;6BACjC,CAAC,CAAC;yBACJ;6BAAM;4BACL,OAAO,IAAI,CAAC,eAAe,CAAC;gCAC1B,IAAI,EAAG,MAA+B,CAAC,IAAqB;gCAC5D,IAAI,EAAG,MAA+B,CAAC,IAAmB;6BAC3D,CAAC,CAAC;yBACJ;oBACH,CAAC,CAAC;iBACH,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa;gBAC9B,OAAO;oBACL,CAAC,EAAE,KAAK;oBACR,EAAE,EACC,QAAiC,CAAC,QACpC,CAAC,WAAW,CAAC,QAAQ,EAAE;oBACxB,IAAI,EAAE,MAAC,QAAiC,CAAC,aAAa,0CAAE,GAAG,CACzD,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAC3C;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,OAAO;oBACL,CAAC,EAAE,OAAO;oBACV,KAAK,EAAG,QAA6B,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACvD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,gBAAgB;gBACjC,OAAO;oBACL,CAAC,EAAE,cAAc;oBACjB,KAAK,EAAG,QAAoC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB;gBAClC,OAAO;oBACL,CAAC,EAAE,gBAAgB;oBACnB,MAAM,EAAE,IAAI,CAAC,eAAe,CACzB,QAAqC,CAAC,UAAU,CAClD;oBACD,KAAK,EAAE,IAAI,CAAC,eAAe,CACxB,QAAqC,CAAC,SAAS,CACjD;iBACF,CAAC;YACJ,KAAK,EAAE,CAAC,UAAU,CAAC,SAAS;gBAC1B,IAAI,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE;oBAChC,OAAO;wBACL,CAAC,EAAE,YAAY;wBACf,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACvC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAC3B;qBACF,CAAC;iBACH;gBACD,MAAM;YACR,KAAK,SAAS;gBACZ,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;SACzC;QAED,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,qBAAqB,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IA0BD,SAAS,CACP,IAAyB,EACzB,UAAyB;QAEzB,IAAI,IAAI,KAAK,SAAS,EAAE;YACtB,OAAO,SAAS,CAAC;SAClB;QAED,MAAM,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,EAAE,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACvE,OAAO,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;IACtE,CAAC;IAEK,YAAY;;YAChB,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,gCAAgC,CACjC,CAAC;YACF,iEAAiE;YAEjE,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,EAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC,CAC7D,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,IAAI,CAAC;QACnB,CAAC;KAAA;IAEK,cAAc;;YAClB,MAAM,WAAW,GAAG,cAAI,CAAC,IAAI,CAC3B,eAAM,CAAC,WAAW,EAClB,gCAAgC,CACjC,CAAC;YACF,mEAAmE;YAEnE,MAAM,SAAS,GAAG,MAAM,IAAA,iBAAS,EAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAG,MAAM,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAC/C,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,WAAW,CAC9B,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CACrD,CAAC;YACF,OAAO,IAAI,CAAC,MAAM,CAAC;QACrB,CAAC;KAAA;IAEK,aAAa;;YACjB,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtC,OAAO,IAAI,CAAC,KAAK,CAAC;aACnB;YAED,MAAM,YAAY,GAAG;gBACnB,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,iCAAiC,CAAC;gBAChE,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,qCAAqC,CAAC;aACrE,CAAC;YACF,+EAA+E;YAE/E,MAAM,SAAS,GAAG,CAChB,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,iBAAS,EAAC,OAAO,CAAC,CAAC,CAAC,CACrE,CAAC,IAAI,EAAE,CAAC;YACT,MAAM,OAAO,GAAG,MAAM,IAAA,sBAAc,EAAC,SAAS,CAAC,CAAC;YAChD,MAAM,SAAS,GAAG,OAAO;iBACtB,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;iBAC/C,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,CAC7B,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAY,OAAC,CAAC,OAAO,CAAC,CAC/B,CAAC;YACvB,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;KAAA;IAED,WAAW,CAAC,GAAgB;QAC1B,IAAI,GAAG,KAAK,QAAQ,EAAE;YACpB,OAAO,IAAI,kCAAgB,EAAE,CAAC;SAC/B;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE;YAC/B,OAAO,IAAI,0CAAoB,EAAE,CAAC;SACnC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,gBAAgB,EAAE;YACnC,OAAO,IAAI,kDAAwB,EAAE,CAAC;SACvC;aAAM,IAAI,GAAG,KAAK,OAAO,EAAE;YAC1B,OAAO,IAAI,gCAAe,EAAE,CAAC;SAC9B;aAAM,IAAI,GAAG,KAAK,YAAY,EAAE;YAC/B,OAAO,IAAI,0CAAoB,EAAE,CAAC;SACnC;aAAM,IAAI,GAAG,KAAK,SAAS,EAAE;YAC5B,OAAO,IAAI,oCAAiB,EAAE,CAAC;SAChC;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,WAAW,EAAE;YAC9B,OAAO,IAAI,wCAAmB,EAAE,CAAC;SAClC;aAAM,IAAI,GAAG,KAAK,oBAAoB,EAAE;YACvC,OAAO,IAAI,0DAA4B,EAAE,CAAC;SAC3C;aAAM,IAAI,GAAG,KAAK,sBAAsB,EAAE;YACzC,OAAO,IAAI,8DAA8B,EAAE,CAAC;SAC7C;aAAM,IAAI,GAAG,KAAK,mBAAmB,EAAE;YACtC,OAAO,IAAI,wDAA2B,EAAE,CAAC;SAC1C;aAAM,IAAI,GAAG,KAAK,qBAAqB,EAAE;YACxC,OAAO,IAAI,4DAA6B,EAAE,CAAC;SAC5C;aAAM,IAAI,GAAG,KAAK,sBAAsB,EAAE;YACzC,OAAO,IAAI,8DAA8B,EAAE,CAAC;SAC7C;aAAM;YACL,MAAM,IAAI,mCAAmB,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAEK,cAAc,CAClB,GAAgB,EAChB,OAAqC;;YAErC,MAAM,QAAQ,GAAa,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjD,IAAI,KAAK,GAAc,EAAE,CAAC;YAC1B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,gBAAgB,EAAE;gBACjD,0BAA0B;gBAC1B,MAAM,MAAM,GAAG,8BAAa,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACnD,MAAM,WAAW,GAAG,GAAG,cAAI,CAAC,IAAI,CAC9B,eAAM,CAAC,WAAW,EAClB,kBAAkB,CACnB,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC;gBACnD,KAAK,GAAG,CAAC,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAC;aACpD;iBAAM,IAAI,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,OAAO,EAAE;gBACjD,sCAAsC;gBACtC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACrE,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CACjD,GAAG,OAAO,CAAC,QAAQ,YAAY,CAChC,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;gBACtE,KAAK,GAAG,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;aACvC;iBAAM,IAAI,GAAG,KAAK,WAAW,EAAE;gBAC9B,+BAA+B;gBAC/B,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,cAAc,CACjD,GAAG,OAAO,CAAC,QAAQ,YAAY,CAChC,CAAC;gBACF,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,iBAAiB,CAAC,CAAC;gBACtE,KAAK,GAAG,CAAC,cAAc,CAAC,CAAC;aAC1B;YAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,CAAC;YACpD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAEnE,IAAI,mBAAmB,GAAkB,EAAE,CAAC;YAC5C,IAAI,QAAQ,CAAC,YAAY,EAAE;gBACzB,mBAAmB,GAAG,CACpB,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,EAAE;oBAC7C,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;gBAC3C,CAAC,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAC;aACV;YAED,OAAO,CAAC,QAAQ,EAAE,GAAG,mBAAmB,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEK,uBAAuB,CAC3B,GAAgB,EAChB,MAAwB;;YAExB,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;YAE3E,0BAA0B;YAC1B,MAAM,UAAU,GAAG,UAAU;iBAC1B,MAAM,CACL,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE;gBACf,MAAM,UAAU,GAAG,8BAAa,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBAC1D,IAAI,UAAU,GAAG,UAAU,CAAC;gBAC5B,IAAI,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;oBAC5B,UAAU,GAAG,IAAA,oBAAM,EACjB,cAAI,CAAC,QAAQ,CAAC,cAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,UAAU,CAAC,EACjD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,IAAI,GAAG,CAAC,CAAC,CAC/C,CAAC;iBACH;gBAED,oCAAoC;gBACpC,MAAM,SAAS,GAAG,CAAC,CAAC,IAAI,CACtB,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,KAAK,UAAU,CAC7C,CAAC;gBACF,IAAI,SAAS,EAAE;oBACb,SAAS,CAAC,IAAI,GAAG,IAAA,aAAI,EAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;iBACzD;qBAAM;oBACL,CAAC,CAAC,IAAI,CAAC;wBACL,IAAI,EAAE,CAAC,SAAS,CAAC;wBACjB,IAAI,EAAE,UAAU;qBACjB,CAAC,CAAC;iBACJ;gBACD,OAAO,CAAC,CAAC;YACX,CAAC,EACD,EAGG,CACJ;gBACD,WAAW;iBACV,MAAM,CACL,CAAC,SAAS,EAAE,EAAE,CACZ,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,KAAK,KAAK,CACxE,CAAC;YAEJ,oBAAoB;YACpB,MAAM,MAAM,GAAG;gBACb,GAAG,CAAC,aAAa,aAAb,aAAa,cAAb,aAAa,GAAI,EAAE,CAAC;gBACxB,GAAG,UAAU,CAAC,GAAG,CACf,CAAC,SAAS,EAAE,EAAE,CACZ,YAAY,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,SAAS,CAAC,IAAI,GAAG,CACrE;aACF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAEb,MAAM,SAAS,GAAG,MAAM,CAAC,GAAS,EAAE;gBAClC,IAAI,GAAG,KAAK,gBAAgB,EAAE;oBAC5B,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACpC;qBAAM;oBACL,OAAO,MAAM,kBAAQ,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;wBACxD,MAAM,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY;qBACjD,CAAC,CAAC;iBACJ;YACH,CAAC,CAAA,CAAC,EAAE,CAAC;YAEL,OAAO;gBACL,IAAI,EAAE,MAAM,GAAG,GAAG,GAAG,QAAQ;gBAC7B,IAAI,EAAE,SAAS;aAChB,CAAC;QACJ,CAAC;KAAA;IAEK,eAAe,CAAC,WAAwB;;YAC5C,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,MAAM,EAAE,WAAW,EAAE,GAAG,eAAM,CAAC;YAC/B,MAAM,QAAQ,GAAG,GAAG,eAAM,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;YAE7D,MAAM,YAAY,GAAG,IAAA,aAAI,EACvB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,CAAC,CACtE,CAAC;YACF,OAAO,MAAM,OAAO,CAAC,GAAG,CACtB,YAAY,CAAC,GAAG,CAAC,CAAO,WAAW,EAAE,EAAE;gBACrC,MAAM,GAAG,GAAG,cAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;gBACtC,IAAI,IAAA,qBAAU,EAAC,GAAG,CAAC,KAAK,KAAK,EAAE;oBAC7B,IAAA,oBAAS,EAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;iBACrC;gBACD,IAAA,wBAAa,EAAC,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CACT,YAAY,EACZ,eAAK,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC,CACvD,CAAC;gBACF,OAAO,WAAW,CAAC;YACrB,CAAC,CAAA,CAAC,CACH,CAAC;QACJ,CAAC;KAAA;IAEK,gBAAgB,CACpB,GAAgB,EAChB,eAAoB,EACpB,gBAAkC;;YAElC,MAAM,eAAe,mBACnB,SAAS,EAAE,KAAK,IACb,gBAAgB,CACpB,CAAC;YAEF,aAAa;YACb,IAAI,IAAI,GAAkB,CAAC,GAAG,CAAC,CAAC;YAChC,0BAA0B;YAC1B,uDAAuD;YACvD,IAAI;YAEJ,SAAS;YACT,MAAM,YAAY,GAAG,CACnB,MAAM,OAAO,CAAC,GAAG,CACf,IAAI,CAAC,GAAG,CAAC,CAAO,GAAG,EAAE,EAAE;gBACrB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;YACnD,CAAC,CAAA,CAAC,CACH,CACF,CAAC,IAAI,EAAE,CAAC;YAET;;;;;;;cAOE;YAEF,IAAI,oBAAoB,GAAkB,EAAE,CAAC;YAC7C,IAAI,eAAe,CAAC,SAAS,KAAK,IAAI,EAAE;gBACtC,oBAAoB,GAAG,YAAY,CAAC;aACrC;iBAAM;gBACL,oBAAoB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE;oBAChE,IAAI,KAAK,KAAK,CAAC,EAAE;wBACf,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;wBACvC,MAAM,QAAQ,GAAG,GAAG,eAAM,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;wBAC7D,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAC1C,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,MAAM,GAAG,CAAC,CAC7C,CAAC;wBACF,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,qBAAU,EAAC,OAAO,CAAC,KAAK,KAAK,CAAC,CAAC;qBACvE;yBAAM;wBACL,OAAO,IAAI,CAAC;qBACb;gBACH,CAAC,CAAC,CAAC;gBACH,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE;oBACrC,MAAM,IAAI,yCAAyB,CACjC,sBAAsB,CACvB,CAAC;iBACH;aACF;YAED,OAAO,OAAO,CAAC,GAAG,CAChB,oBAAoB,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CACvC,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAClC,CACF,CAAC;QACJ,CAAC;KAAA;IAED,WAAW,CACT,QAAgB,EAChB,KAEC;QAED,MAAM,IAAI,GAAkB,mBAAW,CAAC,OAAO,CAAC;QAChD,MAAM,KAAK,GAAG,8BAAa,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACzC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,QAAQ,CAClC,CAAC;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBAChC,SAAS,CAAC,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE;oBAC5B,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,MAAM,CAAC,GAAG,GAAG,KAAK,WAAW,EAAE,CAAC,GAAG,IAAA,qBAAU,EAC3C,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CACzC,CAAC;gBACJ,CAAC,CAAC,CAAC;gBACH,OAAO,MAAM,CAAC;aACf;YAED,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxD,MAAM,EAAE,OAAO,EAAE,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC;YACvC,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBAChB,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,EAAE,CAAC,GAAG,IAAA,qBAAU,EACjC,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAC/D,CAAC;gBACJ,CAAC,CAAC,CAAC;aACJ;iBAAM;gBACL,MAAM,CAAC,GAAG,CAAC,GAAG,IAAA,qBAAU,EAAC,cAAI,CAAC,IAAI,CAAC,eAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;aACpE;YAED,OAAO,MAAM,CAAC;QAChB,CAAC,EAAE,EAAgD,CAAC,CAAC;IACvD,CAAC;IAEK,cAAc,CAAC,SAAiB;;YACpC,MAAM,UAAU,GAAG,8BAAa,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YAC1D,MAAM,aAAa,GAAG,cAAI,CAAC,IAAI,CAC7B,eAAM,CAAC,WAAW,EAClB,MAAM,EACN,aAAa,EACb,UAAU,GAAG,KAAK,CACnB,CAAC;YACF,MAAM,UAAU,GAAG,IAAI,GAAG,cAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YAClE,MAAM,QAAQ,GAAG,yBAAa,UAAU,uCAAC,CAAC;YAE1C,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBACxB,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,EAAE,CAAC,CAAC;aACnD;YACD,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QACjD,CAAC;KAAA;IAEK,iBAAiB,CAAC,QAAwB;;;YAC9C,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE;gBACjC,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC1C;iBAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE;gBACxC,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE;oBAC/B,MAAM,IAAI,KAAK,EAAE,CAAC;iBACnB;qBAAM,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACvC,OAAO,CACL,MAAM,IAAI,CAAC,iBAAiB,iCACvB,QAAQ,KACX,QAAQ,EAAE,QAAQ,IAClB,CACH,CAAC,KAAK,EAAE,CAAC;iBACX;qBAAM;oBACL,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC1D,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,KAAK,IAAI,EAAE;wBACnC,OAAO,OAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE,CAAC;qBACtC;yBAAM;wBACL,OAAO,OAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;qBAC3B;iBACF;aACF;iBAAM,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,EAAE;gBACzC,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,MAAM,CACxC,CAAO,OAAO,EAAE,aAAa,EAAE,EAAE;oBAC/B,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC;oBAC7B,MAAM,CAAC,aAAa,CAAC,IAAK,CAAC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC7D,aAAa,CACd,CAAC;oBACF,OAAO,MAAM,CAAC;gBAChB,CAAC,CAAA,EACD,EAAS,CACV,CAAC;gBAEF,IAAI,CAAA,MAAA,QAAQ,CAAC,IAAI,0CAAE,QAAQ,MAAK,IAAI,EAAE;oBACpC,OAAO,OAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;iBACjC;qBAAM;oBACL,OAAO,OAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;iBACtB;aACF;iBAAM;gBACL,MAAM,KAAK,CAAC;aACb;;KACF;IACK,aAAa,CAAC,IAAgB;;YAClC,IAAI,OAAO,GAAiB,OAAC,CAAC,OAAO,EAAE,CAAC;YACxC,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBACvB,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;aAC5B;iBAAM,IAAI,IAAA,wBAAgB,EAAC,IAAI,CAAC,EAAE;gBACjC,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAA,mCAAiB,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;aAC5D;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;gBAC7B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACvC;iBAAM,IAAI,IAAA,mBAAW,EAAC,IAAI,CAAC,IAAI,IAAA,oBAAY,EAAC,IAAI,CAAC,EAAE;gBAClD,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC;aACtB;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,OAAC,CAAC,OAAO,EAAE,CAAC;aACvB;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;aACjC;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aAChC;iBAAM,IAAI,IAAA,sBAAc,EAAC,IAAI,CAAC,EAAE;gBAC/B,OAAO,GAAG,yBAAiB,CAAC;aAC7B;iBAAM,IAAI,IAAA,uBAAe,EAAC,IAAI,CAAC,EAAE;gBAChC,OAAO,GAAG,yBAAiB,CAAC;aAC7B;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAA,kBAAU,EAAC,IAAI,CAAC,EAAE;gBAC3B,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;aAC7B;iBAAM,IAAI,IAAA,qBAAa,EAAC,IAAI,CAAC,EAAE;gBAC9B,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC9C;iBAAM,IAAI,IAAA,sBAAc,EAAC,IAAI,CAAC,EAAE;gBAC/B,IACE,IAAA,kCAA0B,EAAC,IAAI,CAAC;oBAChC,CAAC,IAAA,8BAAsB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,EACpD;oBACA,OAAO,GAAG,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;iBAC5B;aACF;iBAAM;gBACL,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,GAAG,CAAC,CAAC;aACtD;YAED,IAAK,IAA+B,CAAC,QAAQ,EAAE;gBAC7C,OAAO,GAAI,OAAuB,CAAC,WAAW,EAAE,CAAC;aAClD;YACD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACjB,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;aAC9B;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KAAA;IAED,iBAAiB,CACf,GAAW,EACX,OAAqB;QAErB,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YAClC,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;gBAChD,OAAO,cAAc,CAAC;aACvB;iBAAM,IAAI,OAAO,CAAC,WAAW,KAAK,mBAAmB,EAAE;gBACtD,OAAO,iBAAiB,CAAC;aAC1B;iBAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBAC/B,OAAO,aAAa,CAAC;aACtB;iBAAM;gBACL,OAAO,cAAc,CAAC;aACvB;SACF;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YACzC,IAAI,GAAG,KAAK,IAAI,EAAE;gBAChB,OAAO,WAAW,CAAC;aACpB;iBAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;gBAC9B,OAAO,cAAc,CAAC;aACvB;iBAAM;gBACL,OAAO,cAAc,CAAC;aACvB;SACF;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YAC1C,OAAO,SAAS,CAAC;SAClB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,OAAO,EAAE;YACvC,OAAO,OAAO,CAAC;SAChB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YACzC,OAAO,QAAQ,CAAC;SACjB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,MAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YACzE,OAAO,cAAc,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,OAAO,cAAc,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,UAAU,EAAE;YAC1C,OAAO,cAAc,CAAC;SACvB;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,YAAY,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC7D;IACH,CAAC;IACD,sBAAsB,CACpB,OAAqB,EACrB,UAAkB,MAAM;QAExB,MAAM,GAAG,GAAG;YACV,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,IAAA,qBAAQ,EAAC,OAAO,EAAE,KAAK,CAAC;YAC/B,OAAO;SACR,CAAC;QACF,IAAI,OAAO,YAAY,OAAC,CAAC,SAAS,EAAE;YAClC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;gBACtC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACrC,OAAO,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC,CAAC,CAAC;YACH,uCACK,GAAG,KACN,UAAU,EAAE,QAAQ,EACpB,QAAQ,IACR;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,IAAI,SAAS,YAAY,OAAC,CAAC,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAClE,uCACK,GAAG,KACN,UAAU,EAAE,cAAc,IAC1B;aACH;YACD,uCACK,GAAG,KACN,UAAU,EAAE,OAAO,EACnB,OAAO,EAAE,IAAI,CAAC,sBAAsB,CAAC,SAAS,EAAE,OAAO,CAAC,IACxD;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,QAAQ,EAAE;YACxC,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,GAAiB,EAAE,EAAE,CACjE,IAAI,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,CAAC,CAC1C,CAAC;YACF,8BAA8B;YAC9B,OAAO,WAAW,CAAC,CAAC,CAAC,CAAC;SACvB;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,WAAW,EAAE;YAC3C,uCACK,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAC/D,QAAQ,EAAE,IAAI,IACd;SACH;aAAM,IAAI,OAAO,YAAY,OAAC,CAAC,WAAW,EAAE;YAC3C,uCACK,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAC/D,QAAQ,EAAE,IAAI,IACd;SACH;aAAM;YACL,uCACK,GAAG,KACN,UAAU,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,IACpD;SACH;IACH,CAAC;IAEK,cAAc,CAAC,QAAgB,EAAE,SAAiB;;YACtD,MAAM,MAAM,GAAG,MAAM,8BAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAI,OAAO,KAAK,SAAS,EAAE;gBACzB,MAAM,IAAI,2CAA2B,CAAC,iBAAiB,CAAC,CAAC;aAC1D;YACD,MAAM,SAAS,GAAG,MAAM,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,YAAY,GAAmB;gBACnC,QAAQ,EAAE,QAAQ;gBAClB,QAAQ,EAAE,SAAS;aACpB,CAAC;YAEF,MAAM,cAAc,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAClD,YAAY,CACb,CAAqB,CAAC;YAEvB,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;YAChE,WAAW,CAAC,QAAQ,GAAG,WAAW,CAAC,QAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACzD,IAAI,KAAK,CAAC,UAAU,KAAK,QAAQ,EAAE;oBACjC,MAAM,SAAS,GAAG,KAAK,CAAC,QAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAC5C,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CACpC,CAAC;oBACF,IAAI,SAAS,EAAE;wBACb,uCACK,KAAK,KACR,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE;gCACN,MAAM,EAAE,SAAS,CAAC,IAAI;6BACvB,IACD;qBACH;yBAAM;wBACL,OAAO,KAAK,CAAC;qBACd;iBACF;qBAAM,IACL,KAAK,CAAC,UAAU,KAAK,OAAO;oBAC5B,KAAK,CAAC,OAAO;oBACb,KAAK,CAAC,OAAO,CAAC,UAAU,KAAK,QAAQ,EACrC;oBACA,MAAM,SAAS,GAAG,KAAK,CAAC,OAAQ,CAAC,QAAS,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CACrD,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CACpC,CAAC;oBACF,IAAI,SAAS,EAAE;wBACb,uCACK,KAAK,KACR,OAAO,kCACF,KAAK,CAAC,OAAO,KAChB,UAAU,EAAE,aAAa,EACzB,MAAM,EAAE;oCACN,MAAM,EAAE,SAAS,CAAC,IAAI;iCACvB,OAEH;qBACH;yBAAM;wBACL,OAAO,KAAK,CAAC;qBACd;iBACF;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CAAC;YAEH,OAAO,WAAW,CAAC;QACrB,CAAC;KAAA;IAEK,YAAY,CAChB,QAAgB,EAChB,QAAiB,EACjB,KAAc,EACd,KAAc;;YAEd,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE;gBACpC,QAAQ;gBACR,QAAQ;gBACR,KAAK;gBACL,KAAK;aACN,CAAC,CAAC;YAEH,kBAAkB;YAClB,MAAM,8BAAa,CAAC,MAAM,EAAE,CAAC;YAE7B,mBAAmB;YACnB,MAAM,IAAI,CAAC,qBAAqB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;YAE7C,iBAAiB;YACjB,MAAM,IAAI,CAAC,gBAAgB,CAAC,YAAY,EAAE;gBACxC,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KAAA;IAEK,SAAS,CAAC,QAAgB;;;YAC9B,MAAM,MAAM,GAAG,8BAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAE3C,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE;gBACrB,IAAI,MAAM,CAAC,QAAQ,EAAE;oBACnB,OAAO;wBACL,GAAG,eAAM,CAAC,WAAW,oBAAoB,MAAM,CAAC,KAAK,CAAC,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc;qBAChG,CAAC;iBACH;qBAAM;oBACL,OAAO;wBACL,GAAG,eAAM,CAAC,WAAW,oBAAoB,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;wBAC1D,GAAG,eAAM,CAAC,WAAW,qBAAqB,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;wBAC3D,GAAG,eAAM,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO;6BAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;4BACf,GAAG,eAAM,CAAC,WAAW,IAAI,MAAM,iBAAiB,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;yBAClE,CAAC;6BACD,IAAI,EAAE;qBACV,CAAC;iBACH;YACH,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO;;gBAEb,KAA4B,eAAA,aAAA,cAAA,QAAQ,CAAA,cAAA,kFAAE;oBAAV,wBAAQ;oBAAR,WAAQ;oBAAzB,MAAM,OAAO,KAAA,CAAA;oBACtB,IAAI,IAAA,qBAAU,EAAC,OAAO,CAAC,EAAE;wBACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,UAAU,OAAO,EAAE,CAAC,CAAC,CAAC;wBAC5C,IAAA,wBAAQ,EAAC,UAAU,OAAO,EAAE,CAAC,CAAC;qBAC/B;yBAAM;wBACL,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC;qBACpD;iBACF;;;;;;;;;YAED,kBAAkB;YAClB,MAAM,8BAAa,CAAC,MAAM,EAAE,CAAC;YAE7B,OAAO,EAAE,QAAQ,EAAE,CAAC;;KACrB;CACF;AAjtCD,wBAitCC"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { TemplateKey, TemplateOptions } from "../types/types";
|
|
2
|
-
import {
|
|
2
|
+
import { EntityNamesRecord } from "../entity/entity-manager";
|
|
3
3
|
import { RenderedTemplate } from "../syncer/syncer";
|
|
4
4
|
export declare abstract class Template {
|
|
5
5
|
key: TemplateKey;
|
|
6
6
|
constructor(key: TemplateKey);
|
|
7
7
|
abstract render(options: TemplateOptions[TemplateKey], ...extra: unknown[]): RenderedTemplate;
|
|
8
|
-
abstract getTargetAndPath(names:
|
|
8
|
+
abstract getTargetAndPath(names: EntityNamesRecord, ...extra: unknown[]): {
|
|
9
9
|
target: string;
|
|
10
10
|
path: string;
|
|
11
11
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-template.d.ts","sourceRoot":"","sources":["../../src/templates/base-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"base-template.d.ts","sourceRoot":"","sources":["../../src/templates/base-template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,8BAAsB,QAAQ;IACT,GAAG,EAAE,WAAW;gBAAhB,GAAG,EAAE,WAAW;aACnB,MAAM,CACpB,OAAO,EAAE,eAAe,CAAC,WAAW,CAAC,EACrC,GAAG,KAAK,EAAE,OAAO,EAAE,GAClB,gBAAgB;aAEH,gBAAgB,CAC9B,KAAK,EAAE,iBAAiB,EACxB,GAAG,KAAK,EAAE,OAAO,EAAE,GAClB;QACD,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;KACd;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TemplateOptions } from "../types/types";
|
|
2
|
+
import { EntityNamesRecord } from "../entity/entity-manager";
|
|
3
|
+
import { Template } from "./base-template";
|
|
4
|
+
export declare class Template__entity extends Template {
|
|
5
|
+
constructor();
|
|
6
|
+
getTargetAndPath(names: EntityNamesRecord): {
|
|
7
|
+
target: string;
|
|
8
|
+
path: string;
|
|
9
|
+
};
|
|
10
|
+
render(options: TemplateOptions["entity"]): {
|
|
11
|
+
body: string;
|
|
12
|
+
importKeys: never[];
|
|
13
|
+
target: string;
|
|
14
|
+
path: string;
|
|
15
|
+
};
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=entity.template.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity.template.d.ts","sourceRoot":"","sources":["../../src/templates/entity.template.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAiB,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,qBAAa,gBAAiB,SAAQ,QAAQ;;IAK5C,gBAAgB,CAAC,KAAK,EAAE,iBAAiB;;;;IAOzC,MAAM,CAAC,OAAO,EAAE,eAAe,CAAC,QAAQ,CAAC;;;;;;CAiC1C"}
|