adminforth 1.12.2-next.2 → 1.13.0-next.2

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/commands/cli.js CHANGED
@@ -6,11 +6,14 @@ const command = args[0];
6
6
  import bundle from "./bundle.js";
7
7
  import createApp from "./createApp/main.js";
8
8
  import generateModels from "./generateModels.js";
9
-
9
+ import createPlugin from "./createPlugin/main.js";
10
10
  switch (command) {
11
11
  case "create-app":
12
12
  createApp(args);
13
13
  break;
14
+ case "create-plugin":
15
+ createPlugin(args);
16
+ break;
14
17
  case "generate-models":
15
18
  generateModels();
16
19
  break;
@@ -18,5 +21,7 @@ switch (command) {
18
21
  bundle();
19
22
  break;
20
23
  default:
21
- console.log("Unknown command. Available commands: create-app, generate-models, bundle");
22
- }
24
+ console.log(
25
+ "Unknown command. Available commands: create-app, create-plugin, generate-models, bundle"
26
+ );
27
+ }
@@ -0,0 +1,26 @@
1
+ import chalk from "chalk";
2
+
3
+ import {
4
+ parseArgumentsIntoOptions,
5
+ prepareWorkflow,
6
+ promptForMissingOptions,
7
+ } from "./utils.js";
8
+
9
+ export default async function createPlugin(args) {
10
+ // Step 1: Parse CLI arguments with `arg`
11
+ let options = parseArgumentsIntoOptions(args);
12
+
13
+ // Step 2: Ask for missing arguments via `inquirer`
14
+ options = await promptForMissingOptions(options);
15
+
16
+ // Step 3: Prepare a Listr-based workflow
17
+ const tasks = prepareWorkflow(options);
18
+
19
+ // Step 4: Run tasks
20
+ try {
21
+ await tasks.run();
22
+ } catch (err) {
23
+ console.error(chalk.red(`\n❌ ${err.message}\n`));
24
+ process.exit(1);
25
+ }
26
+ }
@@ -0,0 +1,3 @@
1
+ node_modules
2
+ custom/node_modules
3
+ dist
@@ -0,0 +1,19 @@
1
+ {
2
+ "compilerOptions": {
3
+ "baseUrl": ".", // This should point to your project root
4
+ "paths": {
5
+ "@/*": [
6
+ // "node_modules/adminforth/dist/spa/src/*"
7
+ "../../../spa/src/*"
8
+ ],
9
+ "*": [
10
+ // "node_modules/adminforth/dist/spa/node_modules/*"
11
+ "../../../spa/node_modules/*"
12
+ ],
13
+ "@@/*": [
14
+ // "node_modules/adminforth/dist/spa/src/*"
15
+ "."
16
+ ]
17
+ }
18
+ }
19
+ }
@@ -0,0 +1,41 @@
1
+ import { AdminForthPlugin } from "adminforth";
2
+ import type { IAdminForth, IHttpServer, AdminForthResourcePages, AdminForthResourceColumn, AdminForthDataTypes, AdminForthResource } from "adminforth";
3
+ import type { PluginOptions } from './types.js';
4
+
5
+
6
+ export default class ChatGptPlugin extends AdminForthPlugin {
7
+ options: PluginOptions;
8
+
9
+ constructor(options: PluginOptions) {
10
+ super(options, import.meta.url);
11
+ this.options = options;
12
+ }
13
+
14
+ async modifyResourceConfig(adminforth: IAdminForth, resourceConfig: AdminForthResource) {
15
+ super.modifyResourceConfig(adminforth, resourceConfig);
16
+
17
+ // simply modify resourceConfig or adminforth.config. You can get access to plugin options via this.options;
18
+ }
19
+
20
+ validateConfigAfterDiscover(adminforth: IAdminForth, resourceConfig: AdminForthResource) {
21
+ // optional method where you can safely check field types after database discovery was performed
22
+ }
23
+
24
+ instanceUniqueRepresentation(pluginOptions: any) : string {
25
+ // optional method to return unique string representation of plugin instance.
26
+ // Needed if plugin can have multiple instances on one resource
27
+ return `single`;
28
+ }
29
+
30
+ setupEndpoints(server: IHttpServer) {
31
+ server.endpoint({
32
+ method: 'POST',
33
+ path: `/plugin/${this.pluginInstanceId}/example`,
34
+ handler: async ({ body }) => {
35
+ const { name } = body;
36
+ return { hey: `Hello ${name}` };
37
+ }
38
+ });
39
+ }
40
+
41
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "name": "{{pluginName}}",
3
+ "version": "1.0.1",
4
+ "main": "dist/index.js",
5
+ "types": "dist/index.d.ts",
6
+ "type": "module",
7
+ "scripts": {
8
+ "build": "tsc && rsync -av --exclude 'node_modules' custom dist/ && npm version patch"
9
+ },
10
+ "keywords": [],
11
+ "author": "",
12
+ "license": "ISC",
13
+ "description": "",
14
+ "devDependencies": {
15
+ "@types/node": "latest",
16
+ "typescript": "^5.7.3"
17
+ },
18
+ "dependencies": {
19
+ "adminforth": "latest",
20
+ }
21
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "es2016", /* Set the JavaScript language version for emitted JavaScript and include*/
4
+ "module": "node16", /* Specify what module code is generated. */
5
+ "outDir": "./dist", /* Specify an output folder for all emitted files. */
6
+ "esModuleInterop": true, /* Emit additional JavaScript to ease support for importing CommonJS modules. */
7
+ "forceConsistentCasingInFileNames": true, /* Ensure that casing is correct in imports. */
8
+ "strict": false, /* Enable all strict type-checking options. */
9
+ "skipLibCheck": true, /* Skip type checking all .d.ts files. */
10
+ },
11
+ "exclude": ["node_modules", "dist", "custom"], /* Exclude files from compilation. */
12
+ }
13
+
@@ -0,0 +1,3 @@
1
+ export interface PluginOptions {
2
+
3
+ }
@@ -0,0 +1,222 @@
1
+ import arg from 'arg';
2
+ import chalk from 'chalk';
3
+ import fs from 'fs';
4
+ import fse from 'fs-extra';
5
+ import inquirer from 'inquirer';
6
+ import path from 'path';
7
+ import { Listr } from 'listr2';
8
+ import { fileURLToPath } from 'url';
9
+ import { execa } from 'execa';
10
+ import Handlebars from 'handlebars';
11
+
12
+ export function parseArgumentsIntoOptions(rawArgs) {
13
+ const args = arg(
14
+ {
15
+ "--plugin-name": String,
16
+ // you can add more flags here if needed
17
+ },
18
+ {
19
+ argv: rawArgs.slice(1), // skip "create-plugin"
20
+ }
21
+ );
22
+
23
+ return {
24
+ pluginName: args["--plugin-name"],
25
+ };
26
+ }
27
+
28
+ export async function promptForMissingOptions(options) {
29
+ const questions = [];
30
+
31
+ if (!options.pluginName) {
32
+ questions.push({
33
+ type: "input",
34
+ name: "pluginName",
35
+ message: "Please specify the name of the plugin >",
36
+ default: "adminforth-plugin",
37
+ });
38
+ }
39
+
40
+ const answers = await inquirer.prompt(questions);
41
+ return {
42
+ ...options,
43
+ pluginName: options.pluginName || answers.pluginName,
44
+ };
45
+ }
46
+
47
+ function checkNodeVersion(minRequiredVersion = 20) {
48
+ const current = process.versions.node.split(".");
49
+ const major = parseInt(current[0], 10);
50
+
51
+ if (isNaN(major) || major < minRequiredVersion) {
52
+ throw new Error(
53
+ `Node.js v${minRequiredVersion}+ is required. You have ${process.versions.node}. ` +
54
+ `Please upgrade Node.js. We recommend using nvm for managing multiple Node.js versions.`
55
+ );
56
+ }
57
+ }
58
+
59
+ function checkForExistingPackageJson() {
60
+ if (fs.existsSync(path.join(process.cwd(), "package.json"))) {
61
+ throw new Error(
62
+ `A package.json already exists in this directory.\n` +
63
+ `Please remove it or use an empty directory.`
64
+ );
65
+ }
66
+ }
67
+
68
+ function initialChecks() {
69
+ return [
70
+ {
71
+ title: "👀 Checking Node.js version...",
72
+ task: () => checkNodeVersion(20),
73
+ },
74
+ {
75
+ title: "👀 Validating current working directory...",
76
+ task: () => checkForExistingPackageJson(),
77
+ },
78
+ ];
79
+ }
80
+
81
+ function renderHBSTemplate(templatePath, data) {
82
+ const template = fs.readFileSync(templatePath, "utf-8");
83
+ const compiled = Handlebars.compile(template);
84
+ return compiled(data);
85
+ }
86
+
87
+ async function scaffoldProject(ctx, options, cwd) {
88
+ const pluginName = options.pluginName;
89
+
90
+ const filename = fileURLToPath(import.meta.url);
91
+ const dirname = path.dirname(filename);
92
+
93
+ // Prepare directories
94
+ ctx.customDir = path.join(cwd, "custom");
95
+ await fse.ensureDir(ctx.customDir);
96
+
97
+ // Write templated files
98
+ await writeTemplateFiles(dirname, cwd, {
99
+ pluginName,
100
+ });
101
+ }
102
+
103
+ async function writeTemplateFiles(dirname, cwd, options) {
104
+ const { pluginName } = options;
105
+
106
+ // Build a list of files to generate
107
+ const templateTasks = [
108
+ {
109
+ src: "tsconfig.json.hbs",
110
+ dest: "tsconfig.json",
111
+ data: {},
112
+ },
113
+ {
114
+ src: "package.json.hbs",
115
+ dest: "package.json",
116
+ data: { pluginName },
117
+ },
118
+ {
119
+ src: "index.ts.hbs",
120
+ dest: "index.ts",
121
+ data: {},
122
+ },
123
+ {
124
+ src: ".gitignore.hbs",
125
+ dest: ".gitignore",
126
+ data: {},
127
+ },
128
+ {
129
+ src: "types.ts.hbs",
130
+ dest: "types.ts",
131
+ data: {},
132
+ },
133
+ {
134
+ src: "custom/tsconfig.json.hbs",
135
+ dest: "custom/tsconfig.json",
136
+ data: {},
137
+ },
138
+ ];
139
+
140
+ for (const task of templateTasks) {
141
+ // If a condition is specified and false, skip this file
142
+ if (task.condition === false) continue;
143
+
144
+ const destPath = path.join(cwd, task.dest);
145
+ fse.ensureDirSync(path.dirname(destPath));
146
+
147
+ if (task.empty) {
148
+ fs.writeFileSync(destPath, "");
149
+ } else {
150
+ const templatePath = path.join(dirname, "templates", task.src);
151
+ const compiled = renderHBSTemplate(templatePath, task.data);
152
+ fs.writeFileSync(destPath, compiled);
153
+ }
154
+ }
155
+ }
156
+
157
+ async function installDependencies(ctx, cwd) {
158
+ const customDir = ctx.customDir;
159
+
160
+ await Promise.all([
161
+ await execa("npm", ["install", "--no-package-lock"], { cwd }),
162
+ await execa("npm", ["install"], { cwd: customDir }),
163
+ ]);
164
+ }
165
+
166
+ function generateFinalInstructions() {
167
+ let instruction = "⏭️ Your plugin is ready! Next steps:\n";
168
+
169
+ instruction += `
170
+ ${chalk.dim("// Build your plugin")}
171
+ ${chalk.cyan("$ npm run build")}\n`;
172
+
173
+ instruction += `
174
+ ${chalk.dim("// To test your plugin locally")}
175
+ ${chalk.cyan("$ npm link")}\n`;
176
+
177
+ instruction += `
178
+ ${chalk.dim("// In your AdminForth project")}
179
+ ${chalk.cyan("$ npm link " + chalk.italic("your-plugin-name"))}\n`;
180
+
181
+ instruction += "\n😉 Happy coding!";
182
+
183
+ return instruction;
184
+ }
185
+
186
+ export function prepareWorkflow(options) {
187
+ const cwd = process.cwd();
188
+ const tasks = new Listr(
189
+ [
190
+ {
191
+ title: "🔍 Initial checks...",
192
+ task: (_, task) => task.newListr(initialChecks(), { concurrent: true }),
193
+ },
194
+ {
195
+ title: "🚀 Scaffolding your plugin...",
196
+ task: async (ctx) => scaffoldProject(ctx, options, cwd),
197
+ },
198
+ {
199
+ title: "📦 Installing dependencies...",
200
+ task: async (ctx) => installDependencies(ctx, cwd),
201
+ },
202
+ {
203
+ title: "📝 Preparing final instructions...",
204
+ task: (ctx) => {
205
+ console.log(
206
+ chalk.green(`✅ Successfully created your new AdminForth plugin!\n`)
207
+ );
208
+ console.log(generateFinalInstructions());
209
+ console.log("\n\n");
210
+ },
211
+ },
212
+ ],
213
+ {
214
+ rendererOptions: { collapseSubtasks: false },
215
+ concurrent: false,
216
+ exitOnError: true,
217
+ collectErrors: true,
218
+ }
219
+ );
220
+
221
+ return tasks;
222
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"configValidator.d.ts","sourceRoot":"","sources":["../../modules/configValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,WAAW,EAAE,gBAAgB,EAC7B,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,uBAAuB,EACvB,6BAA6B,EAE7B,cAAc,EACd,MAAM,EAIP,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAEL,KAAK,kCAAkC,EAEvC,8BAA8B,EAG/B,MAAM,oBAAoB,CAAC;AAM5B,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,gBAAgB;IAIlD,OAAO,CAAC,UAAU;IAAe,OAAO,CAAC,WAAW;IAFhE,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEpB,UAAU,EAAE,WAAW,EAAU,WAAW,EAAE,qBAAqB;IAKvF,2BAA2B,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,MAAM,KAAA;IAU5C,8BAA8B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,kCAAkC,CAAC;IAYvI,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAUtD,iBAAiB,CAAC,SAAS,EAAE,8BAA8B,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,kCAAkC;IA6BvH,iCAAiC,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,6BAA6B;IA0FlF,kCAAkC,CAAC,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc;IAwBvG,+BAA+B,CAAC,QAAQ,EAAE,uBAAuB,EAAE,GAAG,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,oBAAoB,EAAE;IAgF9I,0BAA0B,CAAC,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAmClJ,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE;IAgWzF,cAAc;IAgId,wBAAwB,CAAC,QAAQ,EAAE,kBAAkB;CAuBtD"}
1
+ {"version":3,"file":"configValidator.d.ts","sourceRoot":"","sources":["../../modules/configValidator.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,kBAAkB,EAClB,WAAW,EAAE,gBAAgB,EAC7B,oBAAoB,EACpB,qBAAqB,EACrB,6BAA6B,EAC7B,uBAAuB,EACvB,6BAA6B,EAE7B,cAAc,EACd,MAAM,EAIP,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAEL,KAAK,kCAAkC,EAEvC,8BAA8B,EAG/B,MAAM,oBAAoB,CAAC;AAM5B,MAAM,CAAC,OAAO,OAAO,eAAgB,YAAW,gBAAgB;IAIlD,OAAO,CAAC,UAAU;IAAe,OAAO,CAAC,WAAW;IAFhE,mBAAmB,EAAE,MAAM,GAAG,SAAS,CAAC;gBAEpB,UAAU,EAAE,WAAW,EAAU,WAAW,EAAE,qBAAqB;IAKvF,2BAA2B,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,MAAM,KAAA;IAU5C,8BAA8B,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,kCAAkC,CAAC;IAYvI,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAUtD,iBAAiB,CAAC,SAAS,EAAE,8BAA8B,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,kCAAkC;IA6BvH,iCAAiC,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,6BAA6B;IA0FlF,kCAAkC,CAAC,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,cAAc;IAwBvG,+BAA+B,CAAC,QAAQ,EAAE,uBAAuB,EAAE,GAAG,EAAE,OAAO,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,oBAAoB,EAAE;IAgF9I,0BAA0B,CAAC,QAAQ,EAAE,uBAAuB,EAAE,MAAM,EAAE,6BAA6B,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAmClJ,6BAA6B,CAAC,MAAM,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,kBAAkB,EAAE;IAuZzF,cAAc;IAgId,wBAAwB,CAAC,QAAQ,EAAE,kBAAkB;CAuBtD"}
@@ -402,14 +402,76 @@ export default class ConfigValidator {
402
402
  }
403
403
  if (col.foreignResource) {
404
404
  if (!col.foreignResource.resourceId) {
405
- errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource without resourceId`);
405
+ // resourceId is absent or empty
406
+ if (!col.foreignResource.polymorphicResources && !col.foreignResource.polymorphicOn) {
407
+ // foreignResource is present but no specifying fields
408
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource without resourceId`);
409
+ }
410
+ else if (!col.foreignResource.polymorphicResources || !col.foreignResource.polymorphicOn) {
411
+ // some polymorphic fields are present but not all
412
+ if (!col.foreignResource.polymorphicResources) {
413
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphic foreign resource requires polymorphicResources field`);
414
+ }
415
+ else {
416
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphic foreign resource requires polymorphicOn field`);
417
+ }
418
+ }
419
+ else {
420
+ // correct polymorphic structure
421
+ if (!col.foreignResource.polymorphicResources.length) {
422
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicResources `);
423
+ }
424
+ // we do || here because 'resourceId' might yet not be assigned from 'table'
425
+ col.foreignResource.polymorphicResources.forEach((polymorphicResource, polymorphicResourceIndex) => {
426
+ if (!polymorphicResource.resourceId) {
427
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has polymorphic foreign resource without resourceId`);
428
+ }
429
+ else if (!polymorphicResource.whenValue) {
430
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has polymorphic foreign resource without whenValue`);
431
+ }
432
+ else {
433
+ const resource = this.inputConfig.resources.find((r) => r.resourceId === polymorphicResource.resourceId || r.table === polymorphicResource.resourceId);
434
+ if (!resource) {
435
+ const similar = suggestIfTypo(this.inputConfig.resources.map((r) => r.resourceId || r.table), polymorphicResource.resourceId);
436
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource polymorphicResource resourceId which is not in resources: "${polymorphicResource.resourceId}".
437
+ ${similar ? `Did you mean "${similar}" instead of "${polymorphicResource.resourceId}"?` : ''}`);
438
+ }
439
+ if (col.foreignResource.polymorphicResources.findIndex((pr) => pr.resourceId === polymorphicResource.resourceId) !== polymorphicResourceIndex) {
440
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicResource resourceId should be unique`);
441
+ }
442
+ }
443
+ if (col.foreignResource.polymorphicResources.findIndex((pr) => pr.whenValue === polymorphicResource.whenValue) !== polymorphicResourceIndex) {
444
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicResource whenValue should be unique`);
445
+ }
446
+ });
447
+ const polymorphicOnInCol = resInput.columns.find((c) => c.name === col.foreignResource.polymorphicOn);
448
+ if (!polymorphicOnInCol) {
449
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicOn links to an unknown column`);
450
+ }
451
+ else if (polymorphicOnInCol.type && polymorphicOnInCol.type !== AdminForthDataTypes.STRING) {
452
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicOn links to an column that is not of type string`);
453
+ }
454
+ else {
455
+ const polymorphicOnColShowIn = this.validateAndNormalizeShowIn(resInput, polymorphicOnInCol, errors, warnings);
456
+ if (polymorphicOnColShowIn.create || polymorphicOnColShowIn.edit) {
457
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" polymorphicOn column should not be changeable manually`);
458
+ }
459
+ }
460
+ }
406
461
  }
407
- // we do || here because 'resourceId' might yet not be assigned from 'table'
408
- const resource = this.inputConfig.resources.find((r) => r.resourceId === col.foreignResource.resourceId || r.table === col.foreignResource.resourceId);
409
- if (!resource) {
410
- const similar = suggestIfTypo(this.inputConfig.resources.map((r) => r.resourceId || r.table), col.foreignResource.resourceId);
411
- errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource resourceId which is not in resources: "${col.foreignResource.resourceId}".
462
+ else if (col.foreignResource.polymorphicResources || col.foreignResource.polymorphicOn) {
463
+ // both resourceId and polymorphic fields
464
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource cannot have resourceId and be polymorphic at the same time`);
465
+ }
466
+ else {
467
+ // non empty resourceId and no polymorphic fields
468
+ // we do || here because 'resourceId' might yet not be assigned from 'table'
469
+ const resource = this.inputConfig.resources.find((r) => r.resourceId === col.foreignResource.resourceId || r.table === col.foreignResource.resourceId);
470
+ if (!resource) {
471
+ const similar = suggestIfTypo(this.inputConfig.resources.map((r) => r.resourceId || r.table), col.foreignResource.resourceId);
472
+ errors.push(`Resource "${res.resourceId}" column "${col.name}" has foreignResource resourceId which is not in resources: "${col.foreignResource.resourceId}".
412
473
  ${similar ? `Did you mean "${similar}" instead of "${col.foreignResource.resourceId}"?` : ''}`);
474
+ }
413
475
  }
414
476
  if (col.foreignResource.unsetLabel) {
415
477
  if (typeof col.foreignResource.unsetLabel !== 'string') {
@@ -1 +1 @@
1
- {"version":3,"file":"configValidator.js","sourceRoot":"","sources":["../../modules/configValidator.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EACL,wBAAwB,EAExB,kBAAkB,EAElB,uBAAuB,EACvB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAM5B,MAAM,CAAC,OAAO,OAAO,eAAe;IAIlC,YAAoB,UAAuB,EAAU,WAAkC;QAAnE,eAAU,GAAV,UAAU,CAAa;QAAU,gBAAW,GAAX,WAAW,CAAuB;QACrF,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAED,2BAA2B,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM;QAC1C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7B,YAAY;YACZ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACxB,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7B,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;IACL,CAAC;IAED,8BAA8B,CAAC,GAAwB,EAAE,GAAW,EAAE,MAAqB;QACzF,IAAI,UAAU,GAAyC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/B,YAAY;YACZ,UAAU,GAAG,CAAC,UAAU,CAAC,CAAC;QAC5B,CAAC;QACD,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC/B,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QACH,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,qBAAqB,CAAC,QAAgB;QACpC,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC;YACnF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,aAAa,QAAQ,sBAAsB,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,iBAAiB,CAAC,SAAyC,EAAE,MAAqB;QAChF,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QAC5D,CAAC;QACD,IAAI,GAAuC,CAAC;QAC5C,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;YAClC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,GAAG,GAAG,SAAS,CAAC;QAClB,CAAC;QAED,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,IACE,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,iBAAiB,CAAC,cAAc,CAC1D,SAAgD,CAAC,IAAI,CAAC,EACzD,CAAC;YACD,gFAAgF;YAChF,wFAAwF;YACxF,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAGD,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;QACvD,CAAC;QAED,OAAO,GAAG,CAAC;IACb,CAAC;IAED,iCAAiC,CAAC,MAAgB;;QAChD,IAAI,CAAC,mBAAmB,GAAG,MAAA,IAAI,CAAC,WAAW,CAAC,aAAa,0CAAE,mBAAmB,CAAC;QAC/E,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC9B,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC;QACxC,CAAC;QACD,IAAI,CAAC;YACH,mCAAmC;YACnC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;QACvC,CAAC;QAED,MAAM,mBAAmB,GAAyD;YAChF,WAAW,EAAE,EAAE;SAChB,CAAC;QAEF,IAAI,MAAA,IAAI,CAAC,WAAW,CAAC,aAAa,0CAAE,mBAAmB,EAAE,CAAC;YACxD,MAAM,wBAAwB,GAAG,CAAC,aAAa,CAAC,CAAA;YAChD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACpF,IAAI,wBAAwB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBACjD,mBAAmB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,mBAAmB,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBAC9I,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,GAAG,aAAa,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;oBACnE,MAAM,CAAC,IAAI,CAAC,6BAA6B,SAAS,sCAAsC,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjL,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,gBAAgB,GAAsD;YAC1E,QAAQ,EAAE,EAAE;YACZ,MAAM,EAAE,EAAE;YACV,OAAO,EAAE,EAAE;YACX,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,IAAI,MAAA,IAAI,CAAC,WAAW,CAAC,aAAa,0CAAE,gBAAgB,EAAE,CAAC;YACrD,MAAM,yBAAyB,GAAG,CAAC,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;YACvF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACjF,IAAI,yBAAyB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;oBAClD,gBAAgB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,8BAA8B,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;gBACxI,CAAC;qBAAM,CAAC;oBACN,MAAM,OAAO,GAAG,aAAa,CAAC,yBAAyB,EAAE,SAAS,CAAC,CAAC;oBACpE,MAAM,CAAC,IAAI,CAAC,yBAAyB,SAAS,sCAAsC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9K,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAED,MAAM,aAAa,mCACd,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,IAAI,EAAE,CAAC,KACzC,mBAAmB,EAAE,IAAI,CAAC,mBAAmB,EAC7C,mBAAmB;YACnB,gBAAgB,GACjB,CAAC;QAEF,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YAC/B,aAAa,CAAC,WAAW,GAAG,EAAE,CAAC;QACjC,CAAC;QACD,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;YAC5C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,oBAAoB;YAClD,aAAa,CAAC,SAAS,GAAG,YAAY,CAAC;QACzC,CAAC;QAED,8DAA8D;QAC9D,aAAa,CAAC,aAAa,GAAG,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;QAG/F,IAAI,aAAa,CAAC,SAAS,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC;QACtE,CAAC;QACD,IAAI,aAAa,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;YACvD,aAAa,CAAC,sBAAsB,GAAG,IAAI,CAAC;QAC9C,CAAC;QACD,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YAC/B,aAAa,CAAC,WAAW,GAAG,aAAa,CAAC;QAC5C,CAAC;QAED,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;YAC9B,aAAa,CAAC,UAAU,GAAG,UAAU,CAAC;QACxC,CAAC;QAED,OAAO,aAA8C,CAAC;IACxD,CAAC;IAED,kCAAkC,CAAC,QAAiC,EAAE,MAAgB;;QACpF,MAAM,cAAc,GAAG,CAAA,MAAA,QAAQ,CAAC,OAAO,0CAAE,cAAc,KAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QAEzE,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;YAChD,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3C,MAAM,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,KAAK,mEAAmE,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC7K,CAAC;YACD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAClD,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;oBAClB,cAAc,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC,GAAG,CAAC;gBAC3C,CAAC;YACH,CAAC;YACD,OAAO,cAAc,CAAC,GAAG,CAAC;QAC5B,CAAC;aAAM,CAAC;YACN,+BAA+B;YAC/B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC;gBAClD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC/C,cAAc,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,OAAO,cAAgC,CAAC;IAC1C,CAAC;IAED,+BAA+B,CAAC,QAAiC,EAAE,GAAgC,EAAE,MAAgB;;QACnH,mCAAmC;QACnC,IAAI,WAAW,GAA2B,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,OAAO,0CAAE,WAAW,KAAI,EAAE,CAAC;QAE/E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,gCAAgC,CAAC,CAAC;YACzE,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;QAED,WAAW,CAAC,IAAI,CAAC;YACf,KAAK,EAAE,gBAAgB;YACvB,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,4BAA4B;YAClC,OAAO,EAAE,iDAAiD;YAC1D,OAAO,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,OAAO,cAAc,CAAC,MAAM,CAAA,CAAC,CAAC;YAC5F,MAAM,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,EAAE;gBAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAE7D,uDAAuD;gBACvD,IAAI,KAAK,GAAG,IAAI,CAAC;gBAEjB,MAAM,OAAO,CAAC,GAAG,CACf,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE;oBACjC,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,qBAAqB,CAAC,GAAyB,EAAE,QAAQ,CAAC,CAAC;oBAE1F,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAC/B,KAAK,EAAE,IAAI,EAAE,EAAE;wBACb,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC;4BACtB,QAAQ,EAAE,QAAQ;4BAClB,QAAQ,EAAE,GAAyB;4BACnC,MAAM;4BACN,SAAS;4BACT,UAAU,EAAE,IAAI,CAAC,UAAU;yBAC5B,CAAC,CAAC;wBACH,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;4BACzB,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;wBACrB,CAAC;oBACH,CAAC,CACF,CACF,CAAA;oBAED,IAAI,KAAK,EAAE,CAAC;wBACV,OAAO;oBACT,CAAC;oBAED,MAAM,SAAS,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,GAAyB,EAAE,QAAQ,EAAE,CAAC,CAAC;oBAChF,wBAAwB;oBACxB,MAAM,OAAO,CAAC,GAAG,CACf,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAC9B,KAAK,EAAE,IAAI,EAAE,EAAE;wBACb,MAAM,IAAI,CAAC;4BACT,QAAQ,EAAE,GAAyB;4BACnC,MAAM;4BACN,SAAS;4BACT,QAAQ,EAAE,QAAQ;4BAClB,UAAU,EAAE,IAAI,CAAC,UAAU;yBAC5B,CAAC,CAAC;oBACL,CAAC,CACF,CACF,CAAA;gBAEH,CAAC,CAAC,CACH,CAAC;gBAEF,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC;gBAC9B,CAAC;gBACD,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,WAAW,CAAC,MAAM,QAAQ,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC;YAChH,CAAC;SACF,CAAC,CAAC;QAEH,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YACzB,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACpC,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,WAAW,CAAC;IACrB,CAAC;IAED,0BAA0B,CAAC,QAAiC,EAAE,MAAqC,EAAE,MAAgB,EAAE,QAAkB;QACvI,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;YACxF,MAAM,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,KAAK,aAAa,MAAM,CAAC,IAAI,4BAA4B,CAAC,CAAC;YACpH,OAAO;QACT,CAAC;QAED,IAAI,MAAM,GAAgB,MAAM,CAAC,MAAM,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QAEzD,IAAI,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAClD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;gBAClE,uCACK,GAAG,KACN,CAAC,GAAG,CAAC,EAAG,MAAM,CAAC,MAA4B,CAAC,QAAQ,CAAC,GAAG,CAAC,IAC1D;YACH,CAAC,EAAE,EAAiB,CAAC,CAAC;YACtB,IAAI,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iDAAiD,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvG,QAAQ,CAAC,IAAI,CAAC,aAAa,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,KAAK,aAAa,MAAM,CAAC,IAAI,mDAAmD,CAAC,CAAC;YAC/I,CAAC;QACH,CAAC;QAED,MAAM,yBAAyB,GAAsB,MAA2B,CAAC;QAEjF,iEAAiE;QACjE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1D,yBAAyB,CAAC,GAAG,CAAC,GAAG,yBAAyB,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,yBAAyB,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;YACtH,CAAC;QACH,CAAC;QACD,IAAI,yBAAyB,CAAC,GAAG,KAAK,SAAS,EAAE,CAAC;YAChD,OAAO,yBAAyB,CAAC,GAAG,CAAC;QACvC,CAAC;QAED,OAAO,yBAAmC,CAAC;IAC7C,CAAC;IAED,6BAA6B,CAAC,MAAgB,EAAE,QAAkB;QAChE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,6DAA6D,CAAC,CAAC;YAC3E,OAAO,EAAE,CAAC;QACZ,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAiC,EAAE,EAAE;;YAC1E,MAAM,GAAG,mCAAqC,QAAQ,KAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,GAAI,CAAC;YACrH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,gBAAgB,GAAG,CAAC,UAAU,oBAAoB,CAAC,CAAC;YAClE,CAAC;YAED,GAAG,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC;YAE7C,8CAA8C;YAC9C,IAAI,GAAG,CAAC,WAAW,IAAI,OAAO,GAAG,CAAC,WAAW,KAAK,UAAU,EAAE,CAAC;gBAC7D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,iCAAiC,CAAC,CAAC;YAC5E,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,WAAW,GAAG,CAAC,IAAI,EAAE,EAAE;oBACzB,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC;oBACnE,OAAO,GAAG,GAAG,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;gBACjC,CAAC,CAAA;YACH,CAAC;YAED,8DAA8D;YAC9D,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;YACpG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;gBACpB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,yBAAyB,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;gBACjB,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC;YACnB,CAAC;YACD,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAoC,EAAE,UAAU,EAAE,EAAE;;gBACtF,MAAM,GAAG,mCAA2C,KAAK,KAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,GAAE,CAAC;gBAE5H,mCAAmC;gBACnC,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,UAAU,EAAE,CAAC;oBAC1E,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,gCAAgC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC;gBACtF,CAAC;gBAED,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACtD,yBAAyB;gBACzB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;oBAAC,GAAG,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC;gBAAC,CAAC;gBAE5E,gCAAgC;gBAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;oBAChD,GAAG,CAAC,aAAa,GAAG;wBAClB,cAAc,EAAE,EAAE;wBAClB,eAAe,EAAE,IAAI;qBACtB,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,IAAI,GAAG,CAAC,aAAa,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;wBACnD,IAAI,OAAO,GAAG,CAAC,aAAa,CAAC,cAAc,KAAK,QAAQ,EAAE,CAAC;4BACzD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,iDAAiD,CAAC,CAAC;wBACjH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,aAAa,CAAC,cAAc,GAAG,EAAE,CAAC;oBACxC,CAAC;oBAED,IAAI,GAAG,CAAC,aAAa,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;wBACpD,IAAI,OAAO,GAAG,CAAC,aAAa,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;4BAC3D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,mDAAmD,CAAC,CAAC;wBACnH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,aAAa,CAAC,eAAe,GAAG,IAAI,CAAC;oBAC3C,CAAC;gBACH,CAAC;gBAED,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;gBAEhF,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBAC1D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,+KAA+K,CAAC,CAAC;gBAC/O,CAAC;gBAED,0CAA0C;gBAC1C,IAAI,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC;oBACvG,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,wCAAwC,CAAC,CAAC;gBACxG,CAAC;gBAED,+DAA+D;gBAC/D,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;oBACvC,MAAM,eAAe,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjG,IAAI,eAAe,EAAE,CAAC;wBACpB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,KAAK,CAAC,IAAI,iCAAiC,eAAe,uCAAuC,CAAC,CAAC;oBACzJ,CAAC;gBACH,CAAC;gBAED,8BAA8B;gBAC9B,GAAG,CAAC,QAAQ,GAAG,OAAO,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAGvH,uBAAuB;gBACvB,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,CAAC,CAAC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,IAAI,CAAC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,EAAE,CAAC;oBAC/G,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,0CAA0C,CAAC,CAAC;gBAC1G,CAAC;gBACD,IAAI,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;oBAC1C,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;oBACvG,IAAI,kBAAkB,EAAE,CAAC;wBACvB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,KAAK,CAAC,IAAI,oCAAoC,kBAAkB,uCAAuC,CAAC,CAAC;oBAC/J,CAAC;gBACH,CAAC;gBAED,GAAG,CAAC,WAAW,GAAG,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;gBAErI,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;wBACpC,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,6BAA6B,CAAC,CAAC;oBAC7F,CAAC;yBAAM,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;wBAC/B,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;4BACnB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,oDAAoD,CAAC,CAAC;wBACpH,CAAC;wBACD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;4BACf,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,8CAA8C,CAAC,CAAC;wBAC9G,CAAC;wBACD,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;4BACxB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,uDAAuD,CAAC,CAAC;wBACvH,CAAC;wBAED,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;4BACvD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,kDAAkD,CAAC,CAAC;wBAClH,CAAC;wBAED,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;4BACvC,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,8BAA8B,CAAC,CAAC;wBAC9F,CAAC;wBACD,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;4BACtD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,mCAAmC,CAAC,CAAC;wBACnG,CAAC;wBACD,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,mBAAmB,CAAC,QAAQ,EAAE,CAAC;4BAC1D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,uCAAuC,CAAC,CAAC;wBACvG,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,8BAA8B;gBAC9B,IAAI,KAAK,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;oBACxC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;wBACvB,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,qEAAqE,CAAC,CAAC;oBACrI,CAAC;oBAED,IAAI,KAAK,CAAC,eAAe,KAAK,EAAE,IAAI,KAAK,CAAC,eAAe,KAAK,IAAI,EAAE,CAAC;wBACnE,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,qCAAqC,CAAC,CAAC;oBACrG,CAAC;oBAED,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;wBACtF,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,+DAA+D,CAAC,CAAC;oBAC/H,CAAC;oBAED,mFAAmF;oBACnF,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE,mBAAmB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzP,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,yDAAyD,CAAC,CAAC;oBACzH,CAAC;oBAED,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC7J,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,yDAAyD,CAAC,CAAC;oBACzH,CAAC;oBAED,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,OAAO,EAAE,CAAC;wBAC7F,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,yDAAyD,CAAC,CAAC;oBACzH,CAAC;oBAED,IAAI,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;wBACpF,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,wCAAwC,CAAC,CAAC;oBACxG,CAAC;oBAED,IAAI,OAAO,KAAK,CAAC,eAAe,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;wBACzF,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,yDAAyD,CAAC,CAAC;oBACzH,CAAC;oBAED,IAAI,CAAA,MAAA,KAAK,CAAC,OAAO,0CAAE,OAAO,KAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;wBACpE,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,0DAA0D,CAAC,CAAC;oBAC1H,CAAC;gBACH,CAAC;gBAED,IAAI,GAAG,CAAC,eAAe,EAAE,CAAC;oBAExB,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;wBACpC,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,0CAA0C,CAAC,CAAC;oBAC1G,CAAC;oBACD,4EAA4E;oBAC5E,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,GAAG,CAAC,eAAe,CAAC,UAAU,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;oBACvJ,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;wBAC9H,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,gEAAgE,GAAG,CAAC,eAAe,CAAC,UAAU;cACxJ,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,iBAAiB,GAAG,CAAC,eAAe,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClG,CAAC;oBAED,IAAI,GAAG,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;wBACnC,IAAI,OAAO,GAAG,CAAC,eAAe,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;4BACvD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,wDAAwD,CAAC,CAAC;wBACxH,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,0BAA0B;wBAC1B,GAAG,CAAC,eAAe,CAAC,UAAU,GAAG,OAAO,CAAC;oBAC3C,CAAC;oBACD,MAAM,OAAO,GAAG,MAAA,MAAA,GAAG,CAAC,eAAe,CAAC,KAAK,0CAAE,YAAY,0CAAE,uBAAuB,CAAC;oBACjF,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;4BAC5B,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAuB,GAAG,CAAC,OAAO,CAAC,CAAC;wBAC7E,CAAC;oBACH,CAAC;oBACD,MAAM,OAAO,GAAG,MAAA,MAAA,GAAG,CAAC,eAAe,CAAC,KAAK,0CAAE,YAAY,0CAAE,uBAAuB,CAAC;oBACjF,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;4BAC5B,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,YAAY,CAAC,uBAAuB,GAAG,CAAC,OAAO,CAAC,CAAC;wBAC7E,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;oBAC3C,IAAI,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrJ,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,CAAC,IAAI,EAAE,CAAC;4BAC5C,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,CAAC,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAClM,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAA,CAAC,CAAC,QAAQ,yDAAyD,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;4BACrM,CAAC;iCAAM,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gCACpD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,kDAAkD,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;4BACjL,CAAC;wBACH,CAAC;6BAAM,CAAC;4BACN,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,kDAAkD,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;wBACjL,CAAC;oBACH,CAAC;oBACD,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;wBACf,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,2CAA2C,CAAC,CAAC;oBAChK,CAAC;oBACD,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;wBAC1B,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,aAAa,GAAG,CAAC,IAAI,cAAc,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,sDAAsD,CAAC,CAAC;oBAC3K,CAAC;gBACH,CAAC;gBAED,8CAA8C;gBAC9C,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;oBACnB,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,UAAgE,CAAC,EAAE,CAAC;wBAC/G,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBAC7D,CAAC;gBACH,CAAC;gBACD,OAAO,GAA+B,CAAC;YACzC,CAAC,CAAC,CAAA;YAEF,MAAM,OAAO,mCAA+C,QAAQ,CAAC,OAAO,KAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,SAAS,GAAC,CAAC;YAEjI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,kCAAkC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAEnF,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;gBACxB,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC;gBAC/C,MAAM,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;gBACxD,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;oBACvE,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,oCAAoC,OAAO,2BAA2B,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBAC9J,CAAC;gBACD,MAAM,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC;gBAC1C,IAAI,CAAC,GAAG,EAAE,CAAC;oBACT,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,oCAAoC,CAAC,CAAC;gBAC/E,CAAC;gBACD,mCAAmC;gBACnC,IAAI,CAAE,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAc,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzE,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,4BAA4B,GAAG,oCAAoC,MAAM,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClK,CAAC;YACH,CAAC;YAED,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC,+BAA+B,CAAC,QAAQ,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YAElF,oFAAoF;YACpF,MAAM,kBAAkB,GAAG,CAAC,mBAAmB,EAAE,kBAAkB,EAAE,QAAQ,EAAE,wBAAwB,EAAE,mBAAmB,CAAC,CAAC;YAC9H,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAEzD,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAE3B,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;oBAC1D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;wBACjC,MAAM,OAAO,GAAG,aAAa,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;wBAClD,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,oCAAoC,GAAG,uBAAuB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnL,CAAC;oBAED,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;wBAChD,IAAI,kBAAkB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;4BAC3C,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;wBACnF,CAAC;6BAAM,CAAC;4BACN,MAAM,OAAO,GAAG,aAAa,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;4BAC7D,MAAM,CAAC,IAAI,CAAC,aAAa,GAAG,CAAC,UAAU,oCAAoC,SAAS,yBAAyB,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;wBAC/L,CAAC;oBACH,CAAC,CAAC,CAAC;gBAEL,CAAC,CAAC,CAAA;YACJ,CAAC;YAED,GAAG,CAAC,OAAO,GAAG,OAAwC,CAAC;YAEvD,sDAAsD;YACtD,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC;YACf,KAAK,MAAM,QAAQ,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;gBACxC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,EAAE,CAAC;gBAEjD,MAAM,GAAG,GAAG,MAAA,MAAA,QAAQ,CAAC,KAAK,0CAAG,QAAQ,CAAC,0CAAE,uBAAuB,CAAC;gBAChE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,IAAI,GAAG,EAAE,CAAC;wBACR,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC;oBACtD,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,EAAE,CAAC;oBACnD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,GAAG,CAAC;gBACpD,CAAC;gBAED,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,EAAE,CAAC;gBAEjD,MAAM,GAAG,GAAG,MAAA,MAAA,QAAQ,CAAC,KAAK,0CAAG,QAAQ,CAAC,0CAAE,uBAAuB,CAAC;gBAEhE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxB,IAAI,GAAG,EAAE,CAAC;wBACR,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,CAAC,GAAG,CAAC,CAAC;oBACtD,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,EAAE,CAAC;oBACnD,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,uBAAuB,GAAG,GAAG,CAAC;gBACpD,CAAC;YACH,CAAC;YACD,KAAK,MAAM,QAAQ,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACpD,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACzB,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;gBAEpC,MAAM,EAAE,GAAG,MAAA,MAAA,QAAQ,CAAC,KAAK,0CAAG,QAAQ,CAAC,0CAAE,UAAU,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBACvB,IAAI,EAAE,EAAE,CAAC;wBACP,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC;oBACxC,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;oBACtC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;gBACtC,CAAC;gBAED,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC;gBAEnC,MAAM,EAAE,GAAG,MAAA,MAAA,QAAQ,CAAC,KAAK,0CAAG,QAAQ,CAAC,0CAAE,SAAS,CAAC;gBACjD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC;oBACvB,IAAI,EAAE,EAAE,CAAC;wBACP,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,CAAC,EAAE,CAAC,CAAC;oBACvC,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC;oBACrC,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,SAAS,GAAG,EAAE,CAAC;gBACrC,CAAC;YACH,CAAC;YAED,OAAO,GAAyB,CAAC;QACnC,CAAC,CAAC,CAAC;IAEL,CAAC;IAED,cAAc;QACZ,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,MAAM,QAAQ,GAAG,EAAE,CAAC;QAEpB,MAAM,SAAS,mCACV,IAAI,CAAC,WAAW,KACnB,aAAa,EAAE,IAAI,CAAC,iCAAiC,CAAC,MAAM,CAAC,EAC7D,SAAS,EAAE,IAAI,CAAC,6BAA6B,CAAC,MAAM,EAAE,QAAQ,CAAC,GAChE,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YACvB,SAAS,CAAC,OAAO,GAAG,EAAE,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACrC,SAAS,CAAC,cAAc,GAAG,GAAG,SAAS,CAAC,OAAO,GAAG,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,cAAc,GAAG,SAAS,CAAC,OAAO,CAAC;QAC/C,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;YACpB,MAAM,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACxC,CAAC;QAED,KAAK,UAAU,cAAc,CAAC,QAAkC;YAC9D,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBACrB,MAAM,MAAM,GAAG,OAAO,CAAC,aAAa,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,UAAU,IAAI,EAAE,IAAI,QAAQ,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC;gBAC1G,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;YAC3B,CAAC;QACH,CAAC;QAED,gEAAgE;QAChE,IAAI,SAAS,GAAW,CAAC,CAAC;QAC1B,MAAM,UAAU,GAAG,CAAC,IAAgC,EAAE,EAAE;YACtD,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACpB,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACtC,MAAM,CAAC,IAAI,CAAC,wDAAwD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC9F,CAAC;gBACD,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACjC,MAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACnF,CAAC;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;oBACjD,MAAM,CAAC,IAAI,CAAC,yDAAyD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/F,CAAC;gBAED,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;oBAC9F,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;oBACjG,MAAM,CAAC,IAAI,CAAC,+EAA+E,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;gBACzG,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,iBAAiB,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACvF,CAAC;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC5C,MAAM,CAAC,IAAI,CAAC,yDAAyD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAC/F,CAAC;gBAED,qCAAqC;gBACrC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;oBACnB,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBACrC,MAAM,CAAC,IAAI,CAAC,4CAA4C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBAClF,CAAC;oBAED,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;oBACvF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBACzB,MAAM,CAAC,IAAI,CAAC,wBAAwB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,wBAAwB,SAAS,CAAC,aAAa,CAAC,mBAAmB,GAAG,CAAC,CAAC;oBAC9I,CAAC;gBACH,CAAC;gBAED,cAAc,CAAC,IAAI,CAAC,CAAC;gBAErB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,SAAS,EAAE,CAAC;oBACZ,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;wBAClB,MAAM,CAAC,IAAI,CAAC,qEAAqE,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC5G,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBAClB,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QACF,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE3B,cAAc;QAEd,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC;YACnB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;YAC9D,CAAC;YACD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,SAAS,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAClF,CAAC;YACD,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC1G,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,MAAM,OAAO,GAAG,aAAa,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAE,EAAE,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACjH,MAAM,IAAI,KAAK,CAAC,qBAAqB,SAAS,CAAC,IAAI,CAAC,eAAe,gBAAgB,OAAO,CAAC,CAAC,CAAC,iBAAiB,OAAO,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACpI,CAAC;YAED,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;gBAC5C,SAAS,CAAC,IAAI,CAAC,uBAAuB,GAAG,EAAE,CAAC;YAC9C,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,MAAM,WAAW,GAAG,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACrE,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;QAC/C,IAAI,iBAAiB,CAAC,IAAI,IAAI,WAAW,CAAC,MAAM,EAAE,CAAC;YACjD,MAAM,UAAU,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,CAAC;YAC3F,MAAM,CAAC,IAAI,CAAC,6CAA6C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACpF,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,OAAO,CAAC,IAAI,CAAC,+BAA+B,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,oDAAoD;QACpD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,KAAK,CAAC,8BAA8B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,SAA6B,CAAC;IACzD,CAAC;IAED,wBAAwB,CAAC,QAA4B;QACnD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAClC,wDAAwD;YACxD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACzC,MAAM,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;YACvE,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACrB,MAAM,CAAC,QAAQ,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;YACnD,CAAC;YAED,uBAAuB;YACvB,IAAI,OAAO,MAAM,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,WAAW,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAChF,CAAC;QACH,CAAC,CAAC,CAAA;QACF,QAAQ,CAAC,iBAAiB,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC5E,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC1C,IAAI,MAAM,CAAC,2BAA2B,EAAE,CAAC;gBACvC,MAAM,CAAC,2BAA2B,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAChE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"configValidator.js","sourceRoot":"","sources":["../../modules/configValidator.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"restApi.d.ts","sourceRoot":"","sources":["../../modules/restApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,kBAAkB,EAKlB,kBAAkB,EAElB,SAAS,EACV,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,iBAAiB,EACvB,SAAS,EAAsB,sBAAsB,EAGtC,MAAM,oBAAoB,CAAC;AAE7C,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC;IAAC,cAAc,EAAE,sBAAsB,CAAA;CAAC,CAAC,CA6CnD;AAED,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,kBAAkB;IAElE,UAAU,EAAE,WAAW,CAAC;gBAEZ,UAAU,EAAE,WAAW;IAI7B,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,EAAC,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS;IAsB1J,iBAAiB,CAAC,MAAM,EAAE,WAAW;CAi7BtC"}
1
+ {"version":3,"file":"restApi.d.ts","sourceRoot":"","sources":["../../modules/restApi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,WAAW,EAEhB,kBAAkB,EAKlB,kBAAkB,EAElB,SAAS,EACV,MAAM,kBAAkB,CAAC;AAK1B,OAAO,EAAE,iBAAiB,EACvB,SAAS,EAAsB,sBAAsB,EAGtC,MAAM,oBAAoB,CAAC;AAE7C,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,SAAS,EACpB,QAAQ,EAAE,kBAAkB,EAC5B,IAAI,EAAE,GAAG,EACT,MAAM,EAAE,iBAAiB,EACzB,UAAU,EAAE,WAAW,GACtB,OAAO,CAAC;IAAC,cAAc,EAAE,sBAAsB,CAAA;CAAC,CAAC,CA6CnD;AAED,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,kBAAkB;IAElE,UAAU,EAAE,WAAW,CAAC;gBAEZ,UAAU,EAAE,WAAW;IAI7B,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAC;QAAC,YAAY,EAAC,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS;IAsB1J,iBAAiB,CAAC,MAAM,EAAE,WAAW;CA0jCtC"}