@diagramers/cli 1.0.57 → 1.0.59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commands/api.d.ts.map +1 -1
- package/dist/commands/api.js +18 -0
- package/dist/commands/api.js.map +1 -1
- package/dist/commands/extend.d.ts.map +1 -1
- package/dist/commands/extend.js +20 -0
- package/dist/commands/extend.js.map +1 -1
- package/dist/services/api-generator.d.ts +1 -0
- package/dist/services/api-generator.d.ts.map +1 -1
- package/dist/services/api-generator.js +306 -0
- package/dist/services/api-generator.js.map +1 -1
- package/dist/services/project-extender.d.ts +4 -0
- package/dist/services/project-extender.d.ts.map +1 -1
- package/dist/services/project-extender.js +307 -0
- package/dist/services/project-extender.js.map +1 -1
- package/package.json +1 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/commands/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/commands/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,WAsF1C"}
|
package/dist/commands/api.js
CHANGED
@@ -28,6 +28,24 @@ function apiCommand(program) {
|
|
28
28
|
process.exit(1);
|
29
29
|
}
|
30
30
|
});
|
31
|
+
// Generate endpoint command
|
32
|
+
api
|
33
|
+
.command('generate:endpoint <module-name> <endpoint-name>')
|
34
|
+
.description('Generate a new endpoint for an existing module')
|
35
|
+
.option('-m, --method <method>', 'HTTP method (GET, POST, PUT, DELETE)', 'GET')
|
36
|
+
.option('-p, --path <path>', 'Custom path for the endpoint (defaults to endpoint name)')
|
37
|
+
.option('-d, --description <description>', 'Description for the endpoint')
|
38
|
+
.action(async (moduleName, endpointName, options) => {
|
39
|
+
try {
|
40
|
+
console.log(chalk_1.default.blue(`🚀 Generating endpoint '${endpointName}' for module '${moduleName}'`));
|
41
|
+
await (0, api_generator_1.generateEndpoint)(moduleName, endpointName, options);
|
42
|
+
console.log(chalk_1.default.green(`✅ Endpoint '${endpointName}' generated successfully!`));
|
43
|
+
}
|
44
|
+
catch (error) {
|
45
|
+
console.error(chalk_1.default.red(`❌ Error generating endpoint: ${error.message}`));
|
46
|
+
process.exit(1);
|
47
|
+
}
|
48
|
+
});
|
31
49
|
// Process template command
|
32
50
|
api
|
33
51
|
.command('process:template <name>')
|
package/dist/commands/api.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/commands/api.ts"],"names":[],"mappings":";;;;;AAOA,
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/commands/api.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"extend.d.ts","sourceRoot":"","sources":["../../src/commands/extend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,
|
1
|
+
{"version":3,"file":"extend.d.ts","sourceRoot":"","sources":["../../src/commands/extend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,QAsG7C"}
|
package/dist/commands/extend.js
CHANGED
@@ -12,12 +12,16 @@ function extendCommand(program) {
|
|
12
12
|
.description('Extend project with additional features and modules')
|
13
13
|
.option('-f, --feature <feature>', 'Feature to add (auth, email, socket, etc.)')
|
14
14
|
.option('-m, --module <module>', 'Generate new module with full CRUD operations')
|
15
|
+
.option('-e, --endpoint <module:endpoint>', 'Generate new endpoint for existing module (format: module:endpoint)')
|
15
16
|
.option('-t, --table <table>', 'Generate database table/collection')
|
16
17
|
.option('-r, --relation <relation>', 'Generate database relations')
|
17
18
|
.option('-l, --list', 'List available features and templates')
|
18
19
|
.option('--crud', 'Generate full CRUD operations for module')
|
19
20
|
.option('--fields <fields>', 'Comma-separated list of fields for module/table')
|
20
21
|
.option('--type <type>', 'Database type (mongodb, mysql, postgres)')
|
22
|
+
.option('--method <method>', 'HTTP method for endpoint (GET, POST, PUT, DELETE)', 'GET')
|
23
|
+
.option('--path <path>', 'Custom path for endpoint (defaults to endpoint name)')
|
24
|
+
.option('--description <description>', 'Description for the endpoint')
|
21
25
|
.action(async (options) => {
|
22
26
|
try {
|
23
27
|
if (options.list) {
|
@@ -26,6 +30,22 @@ function extendCommand(program) {
|
|
26
30
|
return;
|
27
31
|
}
|
28
32
|
const extender = new project_extender_1.ProjectExtender();
|
33
|
+
// Generate new endpoint for existing module
|
34
|
+
if (options.endpoint) {
|
35
|
+
const [moduleName, endpointName] = options.endpoint.split(':');
|
36
|
+
if (!moduleName || !endpointName) {
|
37
|
+
console.error(chalk_1.default.red('❌ Endpoint format should be module:endpoint (e.g., product:search)'));
|
38
|
+
process.exit(1);
|
39
|
+
}
|
40
|
+
console.log(chalk_1.default.blue(`🔧 Generating endpoint '${endpointName}' for module '${moduleName}'`));
|
41
|
+
await extender.generateEndpoint(moduleName, endpointName, {
|
42
|
+
method: options.method,
|
43
|
+
path: options.path,
|
44
|
+
description: options.description
|
45
|
+
});
|
46
|
+
console.log(chalk_1.default.green(`✅ Endpoint '${endpointName}' generated successfully!`));
|
47
|
+
return;
|
48
|
+
}
|
29
49
|
// Generate new module
|
30
50
|
if (options.module) {
|
31
51
|
console.log(chalk_1.default.blue(`🔧 Generating module: ${options.module}`));
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../src/commands/extend.ts"],"names":[],"mappings":";;;;;AAIA,
|
1
|
+
{"version":3,"file":"extend.js","sourceRoot":"","sources":["../../src/commands/extend.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api-generator.d.ts","sourceRoot":"","sources":["../../src/services/api-generator.ts"],"names":[],"mappings":"AAGA,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DtE"}
|
1
|
+
{"version":3,"file":"api-generator.d.ts","sourceRoot":"","sources":["../../src/services/api-generator.ts"],"names":[],"mappings":"AAGA,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA2DtE;AAmbD,wBAAsB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAyCjH"}
|
@@ -34,6 +34,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
34
34
|
})();
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
36
36
|
exports.generateModule = generateModule;
|
37
|
+
exports.generateEndpoint = generateEndpoint;
|
37
38
|
const fs = __importStar(require("fs"));
|
38
39
|
const path = __importStar(require("path"));
|
39
40
|
async function generateModule(moduleName) {
|
@@ -479,4 +480,309 @@ async function createDatabaseTable(currentDir, moduleName, moduleNameCapitalized
|
|
479
480
|
}
|
480
481
|
console.log('✅ Database table creation script added');
|
481
482
|
}
|
483
|
+
async function generateEndpoint(moduleName, endpointName, options = {}) {
|
484
|
+
// Validate inputs
|
485
|
+
if (!moduleName || !/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(moduleName)) {
|
486
|
+
throw new Error('Invalid module name. Use only letters, numbers, hyphens, and underscores. Must start with a letter.');
|
487
|
+
}
|
488
|
+
if (!endpointName || !/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(endpointName)) {
|
489
|
+
throw new Error('Invalid endpoint name. Use only letters, numbers, hyphens, and underscores. Must start with a letter.');
|
490
|
+
}
|
491
|
+
const moduleNameCapitalized = moduleName.charAt(0).toUpperCase() + moduleName.slice(1);
|
492
|
+
const endpointNameCapitalized = endpointName.charAt(0).toUpperCase() + endpointName.slice(1);
|
493
|
+
const currentDir = process.cwd();
|
494
|
+
const modulePath = path.join(currentDir, 'src/modules', moduleName);
|
495
|
+
// Check if module exists
|
496
|
+
if (!fs.existsSync(modulePath)) {
|
497
|
+
throw new Error(`Module '${moduleName}' does not exist. Please create the module first using 'generate:module ${moduleName}'`);
|
498
|
+
}
|
499
|
+
// Set default options
|
500
|
+
const method = (options.method || 'GET').toUpperCase();
|
501
|
+
const customPath = options.path || endpointName;
|
502
|
+
const description = options.description || `${endpointNameCapitalized} endpoint for ${moduleName}`;
|
503
|
+
console.log(`🔧 Adding endpoint '${endpointName}' to module '${moduleName}'...`);
|
504
|
+
// Add service method
|
505
|
+
console.log('📝 Adding service method...');
|
506
|
+
await addServiceMethod(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, description);
|
507
|
+
// Add controller method
|
508
|
+
console.log('🎮 Adding controller method...');
|
509
|
+
await addControllerMethod(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, customPath, description);
|
510
|
+
// Add route
|
511
|
+
console.log('🛣️ Adding route...');
|
512
|
+
await addRoute(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, customPath);
|
513
|
+
console.log(`✅ Endpoint '${endpointName}' added to module '${moduleName}' successfully!`);
|
514
|
+
console.log(`🔗 New endpoint available at: ${method} /api/${moduleName}/${customPath}`);
|
515
|
+
}
|
516
|
+
async function addServiceMethod(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, description) {
|
517
|
+
const servicePath = path.join(modulePath, 'services', `${moduleName}.service.ts`);
|
518
|
+
if (!fs.existsSync(servicePath)) {
|
519
|
+
throw new Error(`Service file not found: ${servicePath}`);
|
520
|
+
}
|
521
|
+
let serviceContent = fs.readFileSync(servicePath, 'utf8');
|
522
|
+
// Generate service method based on HTTP method
|
523
|
+
let serviceMethod = '';
|
524
|
+
switch (method) {
|
525
|
+
case 'GET':
|
526
|
+
serviceMethod = ` async ${endpointName}(params?: any) {
|
527
|
+
// TODO: Implement ${endpointName} logic
|
528
|
+
// Example: return await ${moduleNameCapitalized}Model.find(params);
|
529
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', params };
|
530
|
+
}`;
|
531
|
+
break;
|
532
|
+
case 'POST':
|
533
|
+
serviceMethod = ` async ${endpointName}(data: any) {
|
534
|
+
// TODO: Implement ${endpointName} logic
|
535
|
+
// Example: return await ${moduleNameCapitalized}Model.create(data);
|
536
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', data };
|
537
|
+
}`;
|
538
|
+
break;
|
539
|
+
case 'PUT':
|
540
|
+
serviceMethod = ` async ${endpointName}(id: string, data: any) {
|
541
|
+
// TODO: Implement ${endpointName} logic
|
542
|
+
// Example: return await ${moduleNameCapitalized}Model.findByIdAndUpdate(id, data, { new: true });
|
543
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', id, data };
|
544
|
+
}`;
|
545
|
+
break;
|
546
|
+
case 'DELETE':
|
547
|
+
serviceMethod = ` async ${endpointName}(id: string) {
|
548
|
+
// TODO: Implement ${endpointName} logic
|
549
|
+
// Example: return await ${moduleNameCapitalized}Model.findByIdAndUpdate(id, { status: 0 }, { new: true });
|
550
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', id };
|
551
|
+
}`;
|
552
|
+
break;
|
553
|
+
default:
|
554
|
+
serviceMethod = ` async ${endpointName}(params?: any) {
|
555
|
+
// TODO: Implement ${endpointName} logic
|
556
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', params };
|
557
|
+
}`;
|
558
|
+
}
|
559
|
+
// Add method before the closing brace
|
560
|
+
const lastBraceIndex = serviceContent.lastIndexOf('}');
|
561
|
+
serviceContent = serviceContent.slice(0, lastBraceIndex) + serviceMethod + '\n' + serviceContent.slice(lastBraceIndex);
|
562
|
+
fs.writeFileSync(servicePath, serviceContent);
|
563
|
+
}
|
564
|
+
async function addControllerMethod(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, customPath, description) {
|
565
|
+
const controllerPath = path.join(modulePath, 'controllers', `${moduleName}.controller.ts`);
|
566
|
+
if (!fs.existsSync(controllerPath)) {
|
567
|
+
throw new Error(`Controller file not found: ${controllerPath}`);
|
568
|
+
}
|
569
|
+
let controllerContent = fs.readFileSync(controllerPath, 'utf8');
|
570
|
+
// Generate Swagger documentation and controller method
|
571
|
+
let swaggerDoc = '';
|
572
|
+
let controllerMethod = '';
|
573
|
+
switch (method) {
|
574
|
+
case 'GET':
|
575
|
+
swaggerDoc = ` /**
|
576
|
+
* @openapi
|
577
|
+
* /api/${moduleName}/${customPath}:
|
578
|
+
* get:
|
579
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
580
|
+
* description: ${description}
|
581
|
+
* tags: [${moduleNameCapitalized}s]
|
582
|
+
* responses:
|
583
|
+
* 200:
|
584
|
+
* description: ${endpointNameCapitalized} retrieved successfully
|
585
|
+
* content:
|
586
|
+
* application/json:
|
587
|
+
* schema:
|
588
|
+
* type: object
|
589
|
+
* properties:
|
590
|
+
* Data:
|
591
|
+
* type: object
|
592
|
+
* StatusCode:
|
593
|
+
* type: integer
|
594
|
+
* example: 1000
|
595
|
+
* 400:
|
596
|
+
* description: Bad request
|
597
|
+
*/`;
|
598
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
599
|
+
const data = await this.service.${endpointName}(req.query);
|
600
|
+
res.json(data);
|
601
|
+
}`;
|
602
|
+
break;
|
603
|
+
case 'POST':
|
604
|
+
swaggerDoc = ` /**
|
605
|
+
* @openapi
|
606
|
+
* /api/${moduleName}/${customPath}:
|
607
|
+
* post:
|
608
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
609
|
+
* description: ${description}
|
610
|
+
* tags: [${moduleNameCapitalized}s]
|
611
|
+
* requestBody:
|
612
|
+
* required: true
|
613
|
+
* content:
|
614
|
+
* application/json:
|
615
|
+
* schema:
|
616
|
+
* type: object
|
617
|
+
* properties:
|
618
|
+
* # Add your request body properties here
|
619
|
+
* responses:
|
620
|
+
* 201:
|
621
|
+
* description: ${endpointNameCapitalized} created successfully
|
622
|
+
* content:
|
623
|
+
* application/json:
|
624
|
+
* schema:
|
625
|
+
* type: object
|
626
|
+
* properties:
|
627
|
+
* Data:
|
628
|
+
* type: object
|
629
|
+
* StatusCode:
|
630
|
+
* type: integer
|
631
|
+
* example: 1000
|
632
|
+
* 400:
|
633
|
+
* description: Bad request
|
634
|
+
*/`;
|
635
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
636
|
+
const data = await this.service.${endpointName}(req.body);
|
637
|
+
res.json(data);
|
638
|
+
}`;
|
639
|
+
break;
|
640
|
+
case 'PUT':
|
641
|
+
swaggerDoc = ` /**
|
642
|
+
* @openapi
|
643
|
+
* /api/${moduleName}/${customPath}/{id}:
|
644
|
+
* put:
|
645
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
646
|
+
* description: ${description}
|
647
|
+
* tags: [${moduleNameCapitalized}s]
|
648
|
+
* parameters:
|
649
|
+
* - in: path
|
650
|
+
* name: id
|
651
|
+
* required: true
|
652
|
+
* schema:
|
653
|
+
* type: string
|
654
|
+
* description: ${moduleNameCapitalized} ID
|
655
|
+
* requestBody:
|
656
|
+
* required: true
|
657
|
+
* content:
|
658
|
+
* application/json:
|
659
|
+
* schema:
|
660
|
+
* type: object
|
661
|
+
* properties:
|
662
|
+
* # Add your request body properties here
|
663
|
+
* responses:
|
664
|
+
* 200:
|
665
|
+
* description: ${endpointNameCapitalized} updated successfully
|
666
|
+
* content:
|
667
|
+
* application/json:
|
668
|
+
* schema:
|
669
|
+
* type: object
|
670
|
+
* properties:
|
671
|
+
* Data:
|
672
|
+
* type: object
|
673
|
+
* StatusCode:
|
674
|
+
* type: integer
|
675
|
+
* example: 1000
|
676
|
+
* 404:
|
677
|
+
* description: ${moduleNameCapitalized} not found
|
678
|
+
*/`;
|
679
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
680
|
+
const data = await this.service.${endpointName}(req.params.id, req.body);
|
681
|
+
res.json(data);
|
682
|
+
}`;
|
683
|
+
break;
|
684
|
+
case 'DELETE':
|
685
|
+
swaggerDoc = ` /**
|
686
|
+
* @openapi
|
687
|
+
* /api/${moduleName}/${customPath}/{id}:
|
688
|
+
* delete:
|
689
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
690
|
+
* description: ${description}
|
691
|
+
* tags: [${moduleNameCapitalized}s]
|
692
|
+
* parameters:
|
693
|
+
* - in: path
|
694
|
+
* name: id
|
695
|
+
* required: true
|
696
|
+
* schema:
|
697
|
+
* type: string
|
698
|
+
* description: ${moduleNameCapitalized} ID
|
699
|
+
* responses:
|
700
|
+
* 200:
|
701
|
+
* description: ${endpointNameCapitalized} successful
|
702
|
+
* content:
|
703
|
+
* application/json:
|
704
|
+
* schema:
|
705
|
+
* type: object
|
706
|
+
* properties:
|
707
|
+
* Data:
|
708
|
+
* type: object
|
709
|
+
* StatusCode:
|
710
|
+
* type: integer
|
711
|
+
* example: 1000
|
712
|
+
* 404:
|
713
|
+
* description: ${moduleNameCapitalized} not found
|
714
|
+
*/`;
|
715
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
716
|
+
const data = await this.service.${endpointName}(req.params.id);
|
717
|
+
res.json(data);
|
718
|
+
}`;
|
719
|
+
break;
|
720
|
+
default:
|
721
|
+
swaggerDoc = ` /**
|
722
|
+
* @openapi
|
723
|
+
* /api/${moduleName}/${customPath}:
|
724
|
+
* ${method.toLowerCase()}:
|
725
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
726
|
+
* description: ${description}
|
727
|
+
* tags: [${moduleNameCapitalized}s]
|
728
|
+
* responses:
|
729
|
+
* 200:
|
730
|
+
* description: ${endpointNameCapitalized} successful
|
731
|
+
* content:
|
732
|
+
* application/json:
|
733
|
+
* schema:
|
734
|
+
* type: object
|
735
|
+
* properties:
|
736
|
+
* Data:
|
737
|
+
* type: object
|
738
|
+
* StatusCode:
|
739
|
+
* type: integer
|
740
|
+
* example: 1000
|
741
|
+
*/`;
|
742
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
743
|
+
const data = await this.service.${endpointName}(req.query);
|
744
|
+
res.json(data);
|
745
|
+
}`;
|
746
|
+
}
|
747
|
+
// Add method before the closing brace
|
748
|
+
const lastBraceIndex = controllerContent.lastIndexOf('}');
|
749
|
+
const methodWithDoc = swaggerDoc + '\n' + controllerMethod;
|
750
|
+
controllerContent = controllerContent.slice(0, lastBraceIndex) + methodWithDoc + '\n' + controllerContent.slice(lastBraceIndex);
|
751
|
+
fs.writeFileSync(controllerPath, controllerContent);
|
752
|
+
}
|
753
|
+
async function addRoute(modulePath, moduleName, moduleNameCapitalized, endpointName, endpointNameCapitalized, method, customPath) {
|
754
|
+
const routePath = path.join(modulePath, 'routes', `${moduleName}.routes.ts`);
|
755
|
+
if (!fs.existsSync(routePath)) {
|
756
|
+
throw new Error(`Route file not found: ${routePath}`);
|
757
|
+
}
|
758
|
+
let routeContent = fs.readFileSync(routePath, 'utf8');
|
759
|
+
// Generate route based on HTTP method
|
760
|
+
let routeLine = '';
|
761
|
+
switch (method) {
|
762
|
+
case 'GET':
|
763
|
+
routeLine = `router.get('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
764
|
+
break;
|
765
|
+
case 'POST':
|
766
|
+
routeLine = `router.post('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
767
|
+
break;
|
768
|
+
case 'PUT':
|
769
|
+
routeLine = `router.put('/${customPath}/:id', (req, res) => controller.${endpointName}(req, res));`;
|
770
|
+
break;
|
771
|
+
case 'DELETE':
|
772
|
+
routeLine = `router.delete('/${customPath}/:id', (req, res) => controller.${endpointName}(req, res));`;
|
773
|
+
break;
|
774
|
+
default:
|
775
|
+
routeLine = `router.${method.toLowerCase()}('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
776
|
+
}
|
777
|
+
// Add route before the export statement
|
778
|
+
const exportIndex = routeContent.indexOf('export default router;');
|
779
|
+
if (exportIndex !== -1) {
|
780
|
+
routeContent = routeContent.slice(0, exportIndex) + routeLine + '\n\n' + routeContent.slice(exportIndex);
|
781
|
+
}
|
782
|
+
else {
|
783
|
+
// If no export found, add at the end
|
784
|
+
routeContent += '\n' + routeLine + '\n';
|
785
|
+
}
|
786
|
+
fs.writeFileSync(routePath, routeContent);
|
787
|
+
}
|
482
788
|
//# sourceMappingURL=api-generator.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api-generator.js","sourceRoot":"","sources":["../../src/services/api-generator.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"api-generator.js","sourceRoot":"","sources":["../../src/services/api-generator.ts"],"names":[],"mappings":"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"}
|
@@ -11,6 +11,10 @@ export declare class ProjectExtender {
|
|
11
11
|
generateModule(moduleName: string, options?: any): Promise<void>;
|
12
12
|
generateTable(tableName: string, options?: any): Promise<void>;
|
13
13
|
generateRelations(relationName: string, options?: any): Promise<void>;
|
14
|
+
generateEndpoint(moduleName: string, endpointName: string, options?: any): Promise<void>;
|
15
|
+
private addServiceMethod;
|
16
|
+
private addControllerMethod;
|
17
|
+
private addRoute;
|
14
18
|
private createFeatureStructure;
|
15
19
|
private createFeatureCoreFiles;
|
16
20
|
private generateFeatureController;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"project-extender.d.ts","sourceRoot":"","sources":["../../src/services/project-extender.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CA8Bd;IAEI,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8B7B,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B9C,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BpE,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;
|
1
|
+
{"version":3,"file":"project-extender.d.ts","sourceRoot":"","sources":["../../src/services/project-extender.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CA8Bd;IAEI,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IA8B7B,UAAU,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B9C,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IA4BpE,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAWlE,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAWzE,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE,GAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YAyCpF,gBAAgB;YAwDhB,mBAAmB;YAsMnB,QAAQ;YAwCR,sBAAsB;YAuCtB,sBAAsB;IAoBpC,OAAO,CAAC,yBAAyB;IA+KjC,OAAO,CAAC,sBAAsB;IA0J9B,OAAO,CAAC,oBAAoB;IAoB5B,OAAO,CAAC,sBAAsB;YAmBhB,mBAAmB;IA4PjC,OAAO,CAAC,qBAAqB;YAqBf,oBAAoB;YAuBpB,qBAAqB;YA4DrB,YAAY;YAkBZ,YAAY;YA6BZ,aAAa;YA4Bb,gBAAgB;YAsPhB,YAAY;YAqBZ,sBAAsB;YAKtB,cAAc;YAmCd,YAAY;YAsEZ,iBAAiB;YAYjB,mBAAmB;YAiCnB,eAAe;YAqBf,eAAe;YAYf,sBAAsB;YAyCtB,kBAAkB;YA4ClB,eAAe;YASf,uBAAuB;YAevB,gBAAgB;YAkDhB,iBAAiB;YAqCjB,iBAAiB;IA4B/B,OAAO,CAAC,eAAe;CAGxB"}
|
@@ -155,6 +155,313 @@ class ProjectExtender {
|
|
155
155
|
await this.createRelations(projectPath, relationName, options);
|
156
156
|
console.log(chalk_1.default.green(`✅ Relations '${relationName}' generated successfully!`));
|
157
157
|
}
|
158
|
+
async generateEndpoint(moduleName, endpointName, options = {}) {
|
159
|
+
// Validate inputs
|
160
|
+
if (!moduleName || !/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(moduleName)) {
|
161
|
+
throw new Error('Invalid module name. Use only letters, numbers, hyphens, and underscores. Must start with a letter.');
|
162
|
+
}
|
163
|
+
if (!endpointName || !/^[a-zA-Z][a-zA-Z0-9_-]*$/.test(endpointName)) {
|
164
|
+
throw new Error('Invalid endpoint name. Use only letters, numbers, hyphens, and underscores. Must start with a letter.');
|
165
|
+
}
|
166
|
+
const projectPath = process.cwd();
|
167
|
+
const modulePath = path.join(projectPath, 'src', 'modules', moduleName);
|
168
|
+
// Check if module exists
|
169
|
+
if (!await fs.pathExists(modulePath)) {
|
170
|
+
throw new Error(`Module '${moduleName}' does not exist. Please create the module first using 'diagramers extend --module ${moduleName}'`);
|
171
|
+
}
|
172
|
+
// Set default options
|
173
|
+
const method = (options.method || 'GET').toUpperCase();
|
174
|
+
const customPath = options.path || endpointName;
|
175
|
+
const description = options.description || `${this.capitalizeFirst(endpointName)} endpoint for ${moduleName}`;
|
176
|
+
console.log(chalk_1.default.blue(`🔧 Adding endpoint '${endpointName}' to module '${moduleName}'...`));
|
177
|
+
// Add service method
|
178
|
+
console.log(chalk_1.default.blue('📝 Adding service method...'));
|
179
|
+
await this.addServiceMethod(modulePath, moduleName, endpointName, method, description);
|
180
|
+
// Add controller method
|
181
|
+
console.log(chalk_1.default.blue('🎮 Adding controller method...'));
|
182
|
+
await this.addControllerMethod(modulePath, moduleName, endpointName, method, customPath, description);
|
183
|
+
// Add route
|
184
|
+
console.log(chalk_1.default.blue('🛣️ Adding route...'));
|
185
|
+
await this.addRoute(modulePath, moduleName, endpointName, method, customPath);
|
186
|
+
console.log(chalk_1.default.green(`✅ Endpoint '${endpointName}' added to module '${moduleName}' successfully!`));
|
187
|
+
console.log(chalk_1.default.blue(`🔗 New endpoint available at: ${method} /api/${moduleName}/${customPath}`));
|
188
|
+
}
|
189
|
+
async addServiceMethod(modulePath, moduleName, endpointName, method, description) {
|
190
|
+
const servicePath = path.join(modulePath, 'services', `${moduleName}.service.ts`);
|
191
|
+
if (!await fs.pathExists(servicePath)) {
|
192
|
+
throw new Error(`Service file not found: ${servicePath}`);
|
193
|
+
}
|
194
|
+
let serviceContent = await fs.readFile(servicePath, 'utf8');
|
195
|
+
const moduleNameCapitalized = this.capitalizeFirst(moduleName);
|
196
|
+
const endpointNameCapitalized = this.capitalizeFirst(endpointName);
|
197
|
+
// Generate service method based on HTTP method
|
198
|
+
let serviceMethod = '';
|
199
|
+
switch (method) {
|
200
|
+
case 'GET':
|
201
|
+
serviceMethod = ` async ${endpointName}(params?: any) {
|
202
|
+
// TODO: Implement ${endpointName} logic
|
203
|
+
// Example: return await ${moduleNameCapitalized}Model.find(params);
|
204
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', params };
|
205
|
+
}`;
|
206
|
+
break;
|
207
|
+
case 'POST':
|
208
|
+
serviceMethod = ` async ${endpointName}(data: any) {
|
209
|
+
// TODO: Implement ${endpointName} logic
|
210
|
+
// Example: return await ${moduleNameCapitalized}Model.create(data);
|
211
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', data };
|
212
|
+
}`;
|
213
|
+
break;
|
214
|
+
case 'PUT':
|
215
|
+
serviceMethod = ` async ${endpointName}(id: string, data: any) {
|
216
|
+
// TODO: Implement ${endpointName} logic
|
217
|
+
// Example: return await ${moduleNameCapitalized}Model.findByIdAndUpdate(id, data, { new: true });
|
218
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', id, data };
|
219
|
+
}`;
|
220
|
+
break;
|
221
|
+
case 'DELETE':
|
222
|
+
serviceMethod = ` async ${endpointName}(id: string) {
|
223
|
+
// TODO: Implement ${endpointName} logic
|
224
|
+
// Example: return await ${moduleNameCapitalized}Model.findByIdAndUpdate(id, { status: 0 }, { new: true });
|
225
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', id };
|
226
|
+
}`;
|
227
|
+
break;
|
228
|
+
default:
|
229
|
+
serviceMethod = ` async ${endpointName}(params?: any) {
|
230
|
+
// TODO: Implement ${endpointName} logic
|
231
|
+
return { message: '${endpointNameCapitalized} endpoint - implement your logic here', params };
|
232
|
+
}`;
|
233
|
+
}
|
234
|
+
// Add method before the closing brace
|
235
|
+
const lastBraceIndex = serviceContent.lastIndexOf('}');
|
236
|
+
serviceContent = serviceContent.slice(0, lastBraceIndex) + serviceMethod + '\n' + serviceContent.slice(lastBraceIndex);
|
237
|
+
await fs.writeFile(servicePath, serviceContent);
|
238
|
+
}
|
239
|
+
async addControllerMethod(modulePath, moduleName, endpointName, method, customPath, description) {
|
240
|
+
const controllerPath = path.join(modulePath, 'controllers', `${moduleName}.controller.ts`);
|
241
|
+
if (!await fs.pathExists(controllerPath)) {
|
242
|
+
throw new Error(`Controller file not found: ${controllerPath}`);
|
243
|
+
}
|
244
|
+
let controllerContent = await fs.readFile(controllerPath, 'utf8');
|
245
|
+
const moduleNameCapitalized = this.capitalizeFirst(moduleName);
|
246
|
+
const endpointNameCapitalized = this.capitalizeFirst(endpointName);
|
247
|
+
// Generate Swagger documentation and controller method
|
248
|
+
let swaggerDoc = '';
|
249
|
+
let controllerMethod = '';
|
250
|
+
switch (method) {
|
251
|
+
case 'GET':
|
252
|
+
swaggerDoc = ` /**
|
253
|
+
* @openapi
|
254
|
+
* /api/${moduleName}/${customPath}:
|
255
|
+
* get:
|
256
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
257
|
+
* description: ${description}
|
258
|
+
* tags: [${moduleNameCapitalized}s]
|
259
|
+
* responses:
|
260
|
+
* 200:
|
261
|
+
* description: ${endpointNameCapitalized} retrieved successfully
|
262
|
+
* content:
|
263
|
+
* application/json:
|
264
|
+
* schema:
|
265
|
+
* type: object
|
266
|
+
* properties:
|
267
|
+
* Data:
|
268
|
+
* type: object
|
269
|
+
* StatusCode:
|
270
|
+
* type: integer
|
271
|
+
* example: 1000
|
272
|
+
* 400:
|
273
|
+
* description: Bad request
|
274
|
+
*/`;
|
275
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
276
|
+
const data = await this.service.${endpointName}(req.query);
|
277
|
+
res.json(data);
|
278
|
+
}`;
|
279
|
+
break;
|
280
|
+
case 'POST':
|
281
|
+
swaggerDoc = ` /**
|
282
|
+
* @openapi
|
283
|
+
* /api/${moduleName}/${customPath}:
|
284
|
+
* post:
|
285
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
286
|
+
* description: ${description}
|
287
|
+
* tags: [${moduleNameCapitalized}s]
|
288
|
+
* requestBody:
|
289
|
+
* required: true
|
290
|
+
* content:
|
291
|
+
* application/json:
|
292
|
+
* schema:
|
293
|
+
* type: object
|
294
|
+
* properties:
|
295
|
+
* # Add your request body properties here
|
296
|
+
* responses:
|
297
|
+
* 201:
|
298
|
+
* description: ${endpointNameCapitalized} created successfully
|
299
|
+
* content:
|
300
|
+
* application/json:
|
301
|
+
* schema:
|
302
|
+
* type: object
|
303
|
+
* properties:
|
304
|
+
* Data:
|
305
|
+
* type: object
|
306
|
+
* StatusCode:
|
307
|
+
* type: integer
|
308
|
+
* example: 1000
|
309
|
+
* 400:
|
310
|
+
* description: Bad request
|
311
|
+
*/`;
|
312
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
313
|
+
const data = await this.service.${endpointName}(req.body);
|
314
|
+
res.json(data);
|
315
|
+
}`;
|
316
|
+
break;
|
317
|
+
case 'PUT':
|
318
|
+
swaggerDoc = ` /**
|
319
|
+
* @openapi
|
320
|
+
* /api/${moduleName}/${customPath}/{id}:
|
321
|
+
* put:
|
322
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
323
|
+
* description: ${description}
|
324
|
+
* tags: [${moduleNameCapitalized}s]
|
325
|
+
* parameters:
|
326
|
+
* - in: path
|
327
|
+
* name: id
|
328
|
+
* required: true
|
329
|
+
* schema:
|
330
|
+
* type: string
|
331
|
+
* description: ${moduleNameCapitalized} ID
|
332
|
+
* requestBody:
|
333
|
+
* required: true
|
334
|
+
* content:
|
335
|
+
* application/json:
|
336
|
+
* schema:
|
337
|
+
* type: object
|
338
|
+
* properties:
|
339
|
+
* # Add your request body properties here
|
340
|
+
* responses:
|
341
|
+
* 200:
|
342
|
+
* description: ${endpointNameCapitalized} updated successfully
|
343
|
+
* content:
|
344
|
+
* application/json:
|
345
|
+
* schema:
|
346
|
+
* type: object
|
347
|
+
* properties:
|
348
|
+
* Data:
|
349
|
+
* type: object
|
350
|
+
* StatusCode:
|
351
|
+
* type: integer
|
352
|
+
* example: 1000
|
353
|
+
* 404:
|
354
|
+
* description: ${moduleNameCapitalized} not found
|
355
|
+
*/`;
|
356
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
357
|
+
const data = await this.service.${endpointName}(req.params.id, req.body);
|
358
|
+
res.json(data);
|
359
|
+
}`;
|
360
|
+
break;
|
361
|
+
case 'DELETE':
|
362
|
+
swaggerDoc = ` /**
|
363
|
+
* @openapi
|
364
|
+
* /api/${moduleName}/${customPath}/{id}:
|
365
|
+
* delete:
|
366
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
367
|
+
* description: ${description}
|
368
|
+
* tags: [${moduleNameCapitalized}s]
|
369
|
+
* parameters:
|
370
|
+
* - in: path
|
371
|
+
* name: id
|
372
|
+
* required: true
|
373
|
+
* schema:
|
374
|
+
* type: string
|
375
|
+
* description: ${moduleNameCapitalized} ID
|
376
|
+
* responses:
|
377
|
+
* 200:
|
378
|
+
* description: ${endpointNameCapitalized} successful
|
379
|
+
* content:
|
380
|
+
* application/json:
|
381
|
+
* schema:
|
382
|
+
* type: object
|
383
|
+
* properties:
|
384
|
+
* Data:
|
385
|
+
* type: object
|
386
|
+
* StatusCode:
|
387
|
+
* type: integer
|
388
|
+
* example: 1000
|
389
|
+
* 404:
|
390
|
+
* description: ${moduleNameCapitalized} not found
|
391
|
+
*/`;
|
392
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
393
|
+
const data = await this.service.${endpointName}(req.params.id);
|
394
|
+
res.json(data);
|
395
|
+
}`;
|
396
|
+
break;
|
397
|
+
default:
|
398
|
+
swaggerDoc = ` /**
|
399
|
+
* @openapi
|
400
|
+
* /api/${moduleName}/${customPath}:
|
401
|
+
* ${method.toLowerCase()}:
|
402
|
+
* summary: ${endpointNameCapitalized} ${moduleName}
|
403
|
+
* description: ${description}
|
404
|
+
* tags: [${moduleNameCapitalized}s]
|
405
|
+
* responses:
|
406
|
+
* 200:
|
407
|
+
* description: ${endpointNameCapitalized} successful
|
408
|
+
* content:
|
409
|
+
* application/json:
|
410
|
+
* schema:
|
411
|
+
* type: object
|
412
|
+
* properties:
|
413
|
+
* Data:
|
414
|
+
* type: object
|
415
|
+
* StatusCode:
|
416
|
+
* type: integer
|
417
|
+
* example: 1000
|
418
|
+
*/`;
|
419
|
+
controllerMethod = ` async ${endpointName}(req, res) {
|
420
|
+
const data = await this.service.${endpointName}(req.query);
|
421
|
+
res.json(data);
|
422
|
+
}`;
|
423
|
+
}
|
424
|
+
// Add method before the closing brace
|
425
|
+
const lastBraceIndex = controllerContent.lastIndexOf('}');
|
426
|
+
const methodWithDoc = swaggerDoc + '\n' + controllerMethod;
|
427
|
+
controllerContent = controllerContent.slice(0, lastBraceIndex) + methodWithDoc + '\n' + controllerContent.slice(lastBraceIndex);
|
428
|
+
await fs.writeFile(controllerPath, controllerContent);
|
429
|
+
}
|
430
|
+
async addRoute(modulePath, moduleName, endpointName, method, customPath) {
|
431
|
+
const routePath = path.join(modulePath, 'routes', `${moduleName}.routes.ts`);
|
432
|
+
if (!await fs.pathExists(routePath)) {
|
433
|
+
throw new Error(`Route file not found: ${routePath}`);
|
434
|
+
}
|
435
|
+
let routeContent = await fs.readFile(routePath, 'utf8');
|
436
|
+
// Generate route based on HTTP method
|
437
|
+
let routeLine = '';
|
438
|
+
switch (method) {
|
439
|
+
case 'GET':
|
440
|
+
routeLine = `router.get('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
441
|
+
break;
|
442
|
+
case 'POST':
|
443
|
+
routeLine = `router.post('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
444
|
+
break;
|
445
|
+
case 'PUT':
|
446
|
+
routeLine = `router.put('/${customPath}/:id', (req, res) => controller.${endpointName}(req, res));`;
|
447
|
+
break;
|
448
|
+
case 'DELETE':
|
449
|
+
routeLine = `router.delete('/${customPath}/:id', (req, res) => controller.${endpointName}(req, res));`;
|
450
|
+
break;
|
451
|
+
default:
|
452
|
+
routeLine = `router.${method.toLowerCase()}('/${customPath}', (req, res) => controller.${endpointName}(req, res));`;
|
453
|
+
}
|
454
|
+
// Add route before the export statement
|
455
|
+
const exportIndex = routeContent.indexOf('export default router;');
|
456
|
+
if (exportIndex !== -1) {
|
457
|
+
routeContent = routeContent.slice(0, exportIndex) + routeLine + '\n\n' + routeContent.slice(exportIndex);
|
458
|
+
}
|
459
|
+
else {
|
460
|
+
// If no export found, add at the end
|
461
|
+
routeContent += '\n' + routeLine + '\n';
|
462
|
+
}
|
463
|
+
await fs.writeFile(routePath, routeContent);
|
464
|
+
}
|
158
465
|
async createFeatureStructure(projectPath, feature) {
|
159
466
|
const featurePath = path.join(projectPath, 'src', 'features', feature.name);
|
160
467
|
// Create basic feature structure
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"project-extender.js","sourceRoot":"","sources":["../../src/services/project-extender.ts"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"project-extender.js","sourceRoot":"","sources":["../../src/services/project-extender.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+B;AAC/B,2CAA6B;AAC7B,kDAA0B;AAS1B,MAAa,eAAe;IAA5B;QACU,aAAQ,GAAc;YAC5B;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,gCAAgC;gBAC7C,KAAK,EAAE,CAAC,wBAAwB,CAAC;gBACjC,YAAY,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC;aAC3C;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,2BAA2B;gBACxC,KAAK,EAAE,CAAC,yBAAyB,CAAC;gBAClC,YAAY,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC;aAC3C;YACD;gBACE,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,mCAAmC;gBAChD,KAAK,EAAE,CAAC,0BAA0B,CAAC;gBACnC,YAAY,EAAE,CAAC,WAAW,CAAC;aAC5B;YACD;gBACE,IAAI,EAAE,MAAM;gBACZ,WAAW,EAAE,uBAAuB;gBACpC,KAAK,EAAE,CAAC,wBAAwB,CAAC;gBACjC,YAAY,EAAE,CAAC,WAAW,CAAC;aAC5B;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,WAAW,EAAE,sBAAsB;gBACnC,KAAK,EAAE,CAAC,yBAAyB,CAAC;aACnC;SACF,CAAC;IAm8DJ,CAAC;IAj8DC,KAAK,CAAC,YAAY;QAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;YAC9B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACtD,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,qBAAqB,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACpF,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,CAAC;QAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;QACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wDAAwD,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+CAA+C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAC/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAClB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAmB;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;QAEhE,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,oDAAoD,CAAC,CAAC;QAC/F,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,kCAAkC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAC3E,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,YAAY,WAAW,mCAAmC,CAAC,CAAC;QAC9E,CAAC;QAED,qCAAqC;QACrC,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAExD,0BAA0B;QAC1B,IAAI,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACnD,CAAC;QAED,wDAAwD;QACxD,MAAM,IAAI,CAAC,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEzD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,cAAc,WAAW,uBAAuB,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,4CAA4C,WAAW,UAAU,CAAC,CAAC,CAAC;IAC7F,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAkB,EAAE,UAAe,EAAE;QACxD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,iCAAiC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QACxE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,mCAAmC,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,UAAU,EAAE,CAAC,CAAC,CAAC;QAE3E,oCAAoC;QACpC,MAAM,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAEnE,wCAAwC;QACxC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QACtE,CAAC;QAED,gDAAgD;QAChD,MAAM,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEnD,yBAAyB;QACzB,MAAM,IAAI,CAAC,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAEjD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,aAAa,UAAU,2BAA2B,CAAC,CAAC,CAAC;IAC/E,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,SAAiB,EAAE,UAAe,EAAE;QACtD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,SAAS,EAAE,CAAC,CAAC,CAAC;QAE1E,6CAA6C;QAC7C,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,YAAY,SAAS,2BAA2B,CAAC,CAAC,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,YAAoB,EAAE,UAAe,EAAE;QAC7D,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAElC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,YAAY,EAAE,CAAC,CAAC,CAAC;QAExE,8BAA8B;QAC9B,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gBAAgB,YAAY,2BAA2B,CAAC,CAAC,CAAC;IACpF,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,YAAoB,EAAE,UAAe,EAAE;QAChF,kBAAkB;QAClB,IAAI,CAAC,UAAU,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,KAAK,CAAC,qGAAqG,CAAC,CAAC;QACzH,CAAC;QAED,IAAI,CAAC,YAAY,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YACpE,MAAM,IAAI,KAAK,CAAC,uGAAuG,CAAC,CAAC;QAC3H,CAAC;QAED,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAExE,yBAAyB;QACzB,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,WAAW,UAAU,sFAAsF,UAAU,GAAG,CAAC,CAAC;QAC5I,CAAC;QAED,sBAAsB;QACtB,MAAM,MAAM,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,IAAI,YAAY,CAAC;QAChD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,iBAAiB,UAAU,EAAE,CAAC;QAE9G,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uBAAuB,YAAY,gBAAgB,UAAU,MAAM,CAAC,CAAC,CAAC;QAE7F,qBAAqB;QACrB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAEvF,wBAAwB;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;QAC1D,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAEtG,YAAY;QACZ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;QAC/C,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;QAE9E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,eAAe,YAAY,sBAAsB,UAAU,iBAAiB,CAAC,CAAC,CAAC;QACvG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,MAAM,SAAS,UAAU,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC;IACtG,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,UAAkB,EAAE,YAAoB,EAAE,MAAc,EAAE,WAAmB;QAC9H,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,aAAa,CAAC,CAAC;QAElF,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,KAAK,CAAC,2BAA2B,WAAW,EAAE,CAAC,CAAC;QAC5D,CAAC;QAED,IAAI,cAAc,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC5D,MAAM,qBAAqB,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,uBAAuB,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEnE,+CAA+C;QAC/C,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,KAAK;gBACR,aAAa,GAAG,aAAa,YAAY;6BACpB,YAAY;mCACN,qBAAqB;6BAC3B,uBAAuB;MAC9C,CAAC;gBACC,MAAM;YACR,KAAK,MAAM;gBACT,aAAa,GAAG,aAAa,YAAY;6BACpB,YAAY;mCACN,qBAAqB;6BAC3B,uBAAuB;MAC9C,CAAC;gBACC,MAAM;YACR,KAAK,KAAK;gBACR,aAAa,GAAG,aAAa,YAAY;6BACpB,YAAY;mCACN,qBAAqB;6BAC3B,uBAAuB;MAC9C,CAAC;gBACC,MAAM;YACR,KAAK,QAAQ;gBACX,aAAa,GAAG,aAAa,YAAY;6BACpB,YAAY;mCACN,qBAAqB;6BAC3B,uBAAuB;MAC9C,CAAC;gBACC,MAAM;YACR;gBACE,aAAa,GAAG,aAAa,YAAY;6BACpB,YAAY;6BACZ,uBAAuB;MAC9C,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,cAAc,GAAG,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACvD,cAAc,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,cAAc,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEvH,MAAM,EAAE,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAClD,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,UAAkB,EAAE,UAAkB,EAAE,YAAoB,EAAE,MAAc,EAAE,UAAkB,EAAE,WAAmB;QACrJ,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,UAAU,gBAAgB,CAAC,CAAC;QAE3F,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,8BAA8B,cAAc,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,iBAAiB,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAClE,MAAM,qBAAqB,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC/D,MAAM,uBAAuB,GAAG,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QAEnE,uDAAuD;QACvD,IAAI,UAAU,GAAG,EAAE,CAAC;QACpB,IAAI,gBAAgB,GAAG,EAAE,CAAC;QAE1B,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,KAAK;gBACR,UAAU,GAAG;;cAEP,UAAU,IAAI,UAAU;;sBAEhB,uBAAuB,IAAI,UAAU;0BACjC,WAAW;oBACjB,qBAAqB;;;8BAGX,uBAAuB;;;;;;;;;;;;;QAa7C,CAAC;gBACD,gBAAgB,GAAG,aAAa,YAAY;0CACV,YAAY;;MAEhD,CAAC;gBACC,MAAM;YACR,KAAK,MAAM;gBACT,UAAU,GAAG;;cAEP,UAAU,IAAI,UAAU;;sBAEhB,uBAAuB,IAAI,UAAU;0BACjC,WAAW;oBACjB,qBAAqB;;;;;;;;;;;8BAWX,uBAAuB;;;;;;;;;;;;;QAa7C,CAAC;gBACD,gBAAgB,GAAG,aAAa,YAAY;0CACV,YAAY;;MAEhD,CAAC;gBACC,MAAM;YACR,KAAK,KAAK;gBACR,UAAU,GAAG;;cAEP,UAAU,IAAI,UAAU;;sBAEhB,uBAAuB,IAAI,UAAU;0BACjC,WAAW;oBACjB,qBAAqB;;;;;;;8BAOX,qBAAqB;;;;;;;;;;;8BAWrB,uBAAuB;;;;;;;;;;;;8BAYvB,qBAAqB;QAC3C,CAAC;gBACD,gBAAgB,GAAG,aAAa,YAAY;0CACV,YAAY;;MAEhD,CAAC;gBACC,MAAM;YACR,KAAK,QAAQ;gBACX,UAAU,GAAG;;cAEP,UAAU,IAAI,UAAU;;sBAEhB,uBAAuB,IAAI,UAAU;0BACjC,WAAW;oBACjB,qBAAqB;;;;;;;8BAOX,qBAAqB;;;8BAGrB,uBAAuB;;;;;;;;;;;;8BAYvB,qBAAqB;QAC3C,CAAC;gBACD,gBAAgB,GAAG,aAAa,YAAY;0CACV,YAAY;;MAEhD,CAAC;gBACC,MAAM;YACR;gBACE,UAAU,GAAG;;cAEP,UAAU,IAAI,UAAU;WAC3B,MAAM,CAAC,WAAW,EAAE;sBACT,uBAAuB,IAAI,UAAU;0BACjC,WAAW;oBACjB,qBAAqB;;;8BAGX,uBAAuB;;;;;;;;;;;QAW7C,CAAC;gBACD,gBAAgB,GAAG,aAAa,YAAY;0CACV,YAAY;;MAEhD,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,MAAM,cAAc,GAAG,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,aAAa,GAAG,UAAU,GAAG,IAAI,GAAG,gBAAgB,CAAC;QAC3D,iBAAiB,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEhI,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IACxD,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,UAAkB,EAAE,UAAkB,EAAE,YAAoB,EAAE,MAAc,EAAE,UAAkB;QACrH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,UAAU,YAAY,CAAC,CAAC;QAE7E,IAAI,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YACpC,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,YAAY,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAExD,sCAAsC;QACtC,IAAI,SAAS,GAAG,EAAE,CAAC;QACnB,QAAQ,MAAM,EAAE,CAAC;YACf,KAAK,KAAK;gBACR,SAAS,GAAG,gBAAgB,UAAU,+BAA+B,YAAY,cAAc,CAAC;gBAChG,MAAM;YACR,KAAK,MAAM;gBACT,SAAS,GAAG,iBAAiB,UAAU,+BAA+B,YAAY,cAAc,CAAC;gBACjG,MAAM;YACR,KAAK,KAAK;gBACR,SAAS,GAAG,gBAAgB,UAAU,mCAAmC,YAAY,cAAc,CAAC;gBACpG,MAAM;YACR,KAAK,QAAQ;gBACX,SAAS,GAAG,mBAAmB,UAAU,mCAAmC,YAAY,cAAc,CAAC;gBACvG,MAAM;YACR;gBACE,SAAS,GAAG,UAAU,MAAM,CAAC,WAAW,EAAE,MAAM,UAAU,+BAA+B,YAAY,cAAc,CAAC;QACxH,CAAC;QAED,wCAAwC;QACxC,MAAM,WAAW,GAAG,YAAY,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;QACnE,IAAI,WAAW,KAAK,CAAC,CAAC,EAAE,CAAC;YACvB,YAAY,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;QAC3G,CAAC;aAAM,CAAC;YACN,qCAAqC;YACrC,YAAY,IAAI,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;QAC1C,CAAC;QAED,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,WAAmB,EAAE,OAAgB;QACxE,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAE5E,iCAAiC;QACjC,MAAM,SAAS,GAAG;YAChB,aAAa,EAAE,qBAAqB;YACpC,UAAU,EAAE,wBAAwB;YACpC,SAAS,EAAE,4BAA4B;YACvC,QAAQ,EAAE,oBAAoB;YAC9B,OAAO,EAAE,0BAA0B;YACnC,WAAW,EAAE,uCAAuC;SACrD,CAAC;QAEF,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YAC5C,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAE5B,oBAAoB;YACpB,MAAM,YAAY,GAAG,MAAM,WAAW,QAAQ,OAAO,CAAC,IAAI;mBAC7C,OAAO,CAAC,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAClD,CAAC;YACI,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QAED,+CAA+C;QAC/C,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,IAAI,aAAa,CAAC,EAAE,kBAAkB,CAAC,CAAC;QAE7F,+BAA+B;QAC/B,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/D,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,EAAE,aAAa,CAAC,CAAC;QAEvE,qDAAqD;QACrD,MAAM,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAE7D,yBAAyB;QACzB,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxE,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,WAAmB,EAAE,WAAmB;QAC3E,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE1D,oBAAoB;QACpB,MAAM,iBAAiB,GAAG,IAAI,CAAC,yBAAyB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACvF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,GAAG,WAAW,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,CAAC;QAE7G,iBAAiB;QACjB,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACjF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,GAAG,WAAW,aAAa,CAAC,EAAE,cAAc,CAAC,CAAC;QAEpG,eAAe;QACf,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QAC7E,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,WAAW,WAAW,CAAC,EAAE,YAAY,CAAC,CAAC;QAE7F,iBAAiB;QACjB,MAAM,cAAc,GAAG,IAAI,CAAC,sBAAsB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACjF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,WAAW,aAAa,CAAC,EAAE,cAAc,CAAC,CAAC;IACrG,CAAC;IAEO,yBAAyB,CAAC,WAAmB,EAAE,eAAuB;QAC5E,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoFb,CAAC;YAEG,KAAK,OAAO;gBACV,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkDb,CAAC;YAEG;gBACE,OAAO;WACJ,eAAe,+BAA+B,WAAW;;;;eAIrD,eAAe;wBACN,WAAW,YAAY,eAAe;;;;kCAI5B,WAAW;;;sBAGvB,eAAe;2CACM,eAAe;;;;;;;kCAOxB,WAAW;;;sBAGvB,eAAe;;;;EAInC,CAAC;QACC,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,WAAmB,EAAE,eAAuB;QACzE,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+Gb,CAAC;YAEG;gBACE,OAAO;;WAEJ,eAAe;;eAEX,eAAe;gCACE,eAAe;;;;;;oBAM3B,WAAW;;;;sBAIT,eAAe;6BACR,eAAe;;;;;;;qBAOvB,eAAe;;;;sBAId,eAAe;;;;;;EAMnC,CAAC;QACC,CAAC;IACH,CAAC;IAEO,oBAAoB,CAAC,WAAmB,EAAE,eAAuB;QACvE,OAAO,2BAA2B,WAAW;;mBAE9B,eAAe;;;;;mBAKf,eAAe;;;;mBAIf,eAAe;;;;;CAKjC,CAAC;IACA,CAAC;IAEO,sBAAsB,CAAC,WAAmB,EAAE,eAAuB;QACzE,OAAO,6BAA6B,WAAW;;;eAGpC,WAAW;;;;;;;eAOX,WAAW;;;;;CAKzB,CAAC;IACA,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,WAAmB;QACnD,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE1D,QAAQ,WAAW,EAAE,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO;;;;;eAKA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoC5B,CAAC;YAEG,KAAK,OAAO;gBACV,OAAO;;;;;eAKA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiC5B,CAAC;YAEG,KAAK,QAAQ;gBACX,OAAO;;;;;eAKA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiC5B,CAAC;YAEG,KAAK,MAAM;gBACT,OAAO;;;;eAIA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6B5B,CAAC;YAEG,KAAK,OAAO;gBACV,OAAO;;;;;eAKA,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAsC5B,CAAC;YAEG;gBACE,OAAO;WACJ,eAAe;WACf,eAAe;WACf,eAAe;;eAEX,eAAe;;wBAEN,eAAe;qBAClB,eAAe;oBAChB,eAAe;;;;wBAIX,eAAe;yBACd,eAAe;4BACZ,eAAe;;;;;;;;;;;;;kBAazB,eAAe;;;;iBAIhB,eAAe;;;EAG9B,CAAC;QACC,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,WAAmB;QAC/C,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAE1D,OAAO,gBAAgB,eAAe;;;;;;;;;;;;;yBAajB,WAAW,CAAC,WAAW,EAAE;;EAEhD,CAAC;IACD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,WAAmB,EAAE,WAAmB,EAAE,IAAY;QACvF,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,8BAA8B,CAAC,CAAC;QAC/E,IAAI,WAAW,GAAQ,EAAE,CAAC;QAE1B,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YACvB,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC;QACzB,CAAC;QAED,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;YACrB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,gBAAgB,WAAW,EAAE;YACnC,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACjC,OAAO,EAAE,OAAO;SACjB,CAAC,CAAC;QAEH,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC5E,CAAC;IAEO,KAAK,CAAC,qBAAqB,CAAC,WAAmB,EAAE,UAAkB,EAAE,OAAY;QACvF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;QAExE,oCAAoC;QACpC,MAAM,SAAS,GAAG;YAChB,UAAU,EAAE,4BAA4B;YACxC,SAAS,EAAE,iCAAiC;YAC5C,UAAU,EAAE,gCAAgC;YAC5C,aAAa,EAAE,uBAAuB;YACtC,QAAQ,EAAE,uBAAuB;SAClC,CAAC;QAEF,KAAK,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;YAC3C,MAAM,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAE5B,iDAAiD;YACjD,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,QAAQ,GAAG,EAAE,CAAC;gBACZ,KAAK,UAAU;oBACb,QAAQ,GAAG,GAAG,UAAU,SAAS,CAAC;oBAClC,MAAM;gBACR,KAAK,SAAS;oBACZ,QAAQ,GAAG,GAAG,UAAU,SAAS,CAAC;oBAClC,MAAM;gBACR,KAAK,UAAU;oBACb,QAAQ,GAAG,GAAG,UAAU,UAAU,CAAC;oBACnC,MAAM;gBACR,KAAK,aAAa;oBAChB,QAAQ,GAAG,GAAG,UAAU,aAAa,CAAC;oBACtC,MAAM;gBACR,KAAK,QAAQ;oBACX,QAAQ,GAAG,GAAG,UAAU,SAAS,CAAC;oBAClC,MAAM;gBACR;oBACE,QAAQ,GAAG,GAAG,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnD,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,WAAW,QAAQ,UAAU;mBAC3C,QAAQ;CAC1B,CAAC;YACI,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,EAAE,YAAY,CAAC,CAAC;QACnE,CAAC;QAED,qBAAqB;QACrB,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAEzD,gBAAgB;QAChB,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAEzD,iBAAiB;QACjB,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE1D,oBAAoB;QACpB,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;QAE7D,gBAAgB;QAChB,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAY;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,aAAa,GAAG;;;oBAGN,UAAU;;;;;;;EAO5B,CAAC;QAEC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;IAClG,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAY;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,aAAa,GAAG;YACd,UAAU,wBAAwB,UAAU;;eAEzC,UAAU;;;;;;;;;;;;;;;;;;eAkBV,UAAU,2BAA2B,UAAU,MAAM,UAAU,MAAM,UAAU,UAAU,CAAC;QAErG,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,UAAU,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;IACjG,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAY;QAC9E,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,cAAc,GAAG;WAChB,UAAU,4BAA4B,UAAU;;eAE5C,UAAU;;uBAEF,UAAU;;;uBAGV,UAAU;;;6BAGJ,UAAU;uBAChB,UAAU;;;uBAGV,UAAU;;;uBAGV,UAAU;;EAE/B,CAAC;QAEC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,GAAG,UAAU,aAAa,CAAC,EAAE,cAAc,CAAC,CAAC;IACpG,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAY;QACjF,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,iBAAiB,GAAG,YAAY,UAAU,+BAA+B,UAAU;;;;;;SAMpF,UAAU;;;;;4BAKS,UAAU;;;wCAGE,UAAU;;;+CAGH,UAAU;;;0CAGf,UAAU;;;;;;;;;;;;;;;;;eAiBrC,UAAU;4BACG,UAAU;;;;cAIxB,UAAU;;8BAEM,UAAU;wDACgB,UAAU;oBAC9C,UAAU;;;sCAGQ,UAAU;;;;;;;;;yDASS,UAAU;;;;;;;;;;;;;;cAcrD,UAAU;;0BAEE,UAAU;8CACU,UAAU;oBACpC,UAAU;;;;;;;8BAOA,UAAU;;;8BAGV,UAAU;;;;;;;uDAOe,UAAU;;;;;8BAKnC,UAAU;;;;;;;;;cAS1B,UAAU;;iCAES,UAAU;uCACJ,UAAU;oBAC7B,UAAU;;;;;;;;;;;;kDAYoB,UAAU;;;yDAGH,UAAU;;;;oDAIf,UAAU;;;8BAGhC,UAAU;;;;;;;uDAOe,UAAU;;;;;;;;;;;;;;cAcnD,UAAU;;6BAEK,UAAU;6CACM,UAAU;oBACnC,UAAU;;;;;;;8BAOA,UAAU;;;;;;;;;;kDAUU,UAAU;;;yDAGH,UAAU;;;oDAGf,UAAU;;;8BAGhC,UAAU;;;;;;;uDAOe,UAAU;;;;;8BAKnC,UAAU;;;;;;;;;cAS1B,UAAU;;6BAEK,UAAU;wCACC,UAAU;oBAC9B,UAAU;;;;;;;8BAOA,UAAU;;;8BAGV,UAAU;;;;;;;;;;;;;8BAaV,UAAU;;;;;;EAMtC,CAAC;QAEC,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,aAAa,EAAE,GAAG,UAAU,gBAAgB,CAAC,EAAE,iBAAiB,CAAC,CAAC;IAC7G,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,UAAkB,EAAE,UAAkB,EAAE,OAAY;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,MAAM,aAAa,GAAG;WACf,UAAU,qCAAqC,UAAU;;;yBAG3C,UAAU;;0CAEO,UAAU;;;;;;;uBAO7B,CAAC;QAEpB,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,UAAU,YAAY,CAAC,EAAE,aAAa,CAAC,CAAC;IAChG,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,WAAmB,EAAE,UAAkB,EAAE,OAAY;QACxF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,UAAU,KAAK,CAAC,CAAC,CAAC;QAC9E,gFAAgF;IAClF,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,UAAkB;QAClE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,kBAAkB,UAAU,gCAAgC,CAAC,CAAC,CAAC;QAEtF,qDAAqD;QACrD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QAE5E,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YAEzD,gCAAgC;YAChC,MAAM,eAAe,GAAG,UAAU,UAAU,2BAA2B,UAAU,WAAW,UAAU,WAAW,CAAC;YAElH,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBACvC,yCAAyC;gBACzC,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,sEAAsE,EACtE,kEAAkE,eAAe,EAAE,CACpF,CAAC;YACJ,CAAC;YAED,yBAAyB;YACzB,MAAM,iBAAiB,GAAG,gBAAgB,UAAU,MAAM,UAAU,UAAU,CAAC;YAE/E,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACzC,kCAAkC;gBAClC,OAAO,GAAG,OAAO,CAAC,OAAO,CACvB,uCAAuC,EACvC,sCAAsC,iBAAiB,EAAE,CAC1D,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,WAAmB,EAAE,UAAkB;QAChE,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;QAElF,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YACpC,IAAI,aAAa,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAE1D,2BAA2B;YAC3B,MAAM,eAAe,GAAG,YAAY,UAAU,+BAA+B,UAAU,YAAY,UAAU,WAAW,CAAC;YACzH,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC7C,aAAa,GAAG,aAAa,CAAC,OAAO,CACnC,gFAAgF,EAChF,yEAAyE,eAAe,EAAE,CAC3F,CAAC;YACJ,CAAC;YAED,sBAAsB;YACtB,MAAM,cAAc,GAAG,uBAAuB,UAAU;;;6DAGD,UAAU;;iBAEtD,UAAU;;iCAEM,UAAU,yBAAyB,UAAU;;kBAE5D,UAAU,UAAU,UAAU;iBAC/B,UAAU;;;kBAGT,UAAU;mDACuB,UAAU,QAAQ,UAAU;;2CAEpC,UAAU,OAAO,UAAU;;;2DAGX,UAAU,OAAO,UAAU;;;IAGlF,CAAC;YAEC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,UAAU,GAAG,CAAC,EAAE,CAAC;gBAClD,aAAa,GAAG,aAAa,CAAC,OAAO,CACnC,+FAA+F,EAC/F,8FAA8F,cAAc,EAAE,CAC/G,CAAC;YACJ,CAAC;YAED,kBAAkB;YAClB,MAAM,UAAU,GAAG,wBAAwB,UAAU,cAAc,UAAU,WAAW,CAAC;YACzF,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;gBACxC,aAAa,GAAG,aAAa,CAAC,OAAO,CACnC,mFAAmF,EACnF,kFAAkF,UAAU,EAAE,CAC/F,CAAC;YACJ,CAAC;YAED,wBAAwB;YACxB,MAAM,YAAY,GAAG,SAAS,UAAU,iBAAiB,UAAU,oCAAoC,UAAU,mBAAmB,CAAC;YACrI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC;gBAC1C,aAAa,GAAG,aAAa,CAAC,OAAO,CACnC,kCAAkC,EAClC,oCAAoC,YAAY,EAAE,CACnD,CAAC;YACJ,CAAC;YAED,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,WAAmB,EAAE,SAAiB,EAAE,OAAY;QAClF,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QACzD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;QAEzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,WAAmB,EAAE,SAAiB,EAAE,MAAgB;QACxF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,SAAS,YAAY,CAAC,CAAC;QACtF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,aAAa,GAAG;;oBAEN,UAAU;EAC5B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;QAK/C,SAAS;EACf,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK;;;;IAI5B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;;;;;;EAMf,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,SAAS,kBAAkB,KAAK,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;eAE/D,UAAU,2BAA2B,UAAU,cAAc,UAAU,MAAM,SAAS;CACpG,CAAC;QAEE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,SAAiB,EAAE,MAAgB,EAAE,MAAc;QACpG,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,SAAS,MAAM,CAAC,CAAC;QAChF,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;QAE7C,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAEnD,MAAM,aAAa,GAAG,MAAM,UAAU,qBAAqB,MAAM,CAAC,WAAW,EAAE;eACpE,SAAS;OACjB,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;EAC5D,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK,yBAAyB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;EAMnE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,oBAAoB,SAAS,IAAI,KAAK,OAAO,SAAS,KAAK,KAAK,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;CACrG,CAAC;QAEE,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,YAAoB,EAAE,OAAY;QACnF,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;QACzC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,GAAG,YAAY,eAAe,CAAC,CAAC;QAC3G,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;QAE/C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAChE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,YAAoB,EAAE,YAAoB;QAC7E,MAAM,eAAe,GAAG,4BAA4B,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;eA4BrD,YAAY;;;;;;;CAO1B,CAAC;QAEE,MAAM,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,YAAoB,EAAE,YAAoB,EAAE,MAAc;QACzF,MAAM,eAAe,GAAG,wBAAwB,YAAY,KAAK,MAAM,CAAC,WAAW,EAAE;;;;UAI/E,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;;;;;;UAMvD,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;;;;;;;;;UASvD,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;;;;;UAKvD,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,oBAAoB;;;;;;;;;;;;;;CAchE,CAAC;QAEE,MAAM,EAAE,CAAC,SAAS,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,YAAsB;QAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAEzD,6DAA6D;QAC7D,kDAAkD;QAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,kBAAkB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,0BAA0B,CAAC,CAAC,CAAC;IACrG,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,WAAmB,EAAE,OAAgB;QACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,sCAAsC,OAAO,CAAC,IAAI,aAAa,CAAC,CAAC,CAAC;QAEzF,iDAAiD;QACjD,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAElD,gDAAgD;QAChD,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEnD,wCAAwC;QACxC,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAEnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;IACvF,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,WAAmB,EAAE,OAAgB;QAClE,MAAM,WAAW,GAAG;YAClB,qBAAqB;YACrB,SAAS;YACT,cAAc;YACd,aAAa;SACd,CAAC;QAEF,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACpD,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAClC,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;gBAElD,6BAA6B;gBAC7B,MAAM,eAAe,GAAG,YAAY,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,8BAA8B,OAAO,CAAC,IAAI,IAAI,OAAO,CAAC,IAAI,IAAI,CAAC;gBAErI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;oBACvC,kDAAkD;oBAClD,MAAM,WAAW,GAAG,4BAA4B,CAAC;oBACjD,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;oBACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC7D,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,GAAG,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBAChG,CAAC;gBACH,CAAC;gBAED,6BAA6B;gBAC7B,MAAM,WAAW,GAAG,iBAAiB,OAAO,CAAC,IAAI;QACjD,OAAO,CAAC,IAAI,iBAAiB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC;gBACvD,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,uBAAuB,CAAC;gBAE9D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;oBACnC,iDAAiD;oBACjD,MAAM,UAAU,GAAG,wBAAwB,CAAC;oBAC5C,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;oBAClD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBACvB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;wBAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,KAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;wBAC3D,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,GAAG,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBAC5F,CAAC;gBACH,CAAC;gBAED,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC;gBACvD,MAAM,CAAC,0CAA0C;YACnD,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,WAAmB,EAAE,OAAgB;QACnE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;QAEtE,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,IAAI,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;YAEzD,gCAAgC;YAChC,MAAM,eAAe,GAAG,UAAU,OAAO,CAAC,IAAI,4BAA4B,OAAO,CAAC,IAAI,WAAW,CAAC;YAElG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBACvC,MAAM,WAAW,GAAG,4BAA4B,CAAC;gBACjD,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;gBACnD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC/C,MAAM,WAAW,GAAG,UAAU,CAAC,KAAM,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC7D,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,GAAG,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAChG,CAAC;YACH,CAAC;YAED,yBAAyB;YACzB,MAAM,iBAAiB,GAAG,iBAAiB,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,IAAI,UAAU,CAAC;YAEpF,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBACzC,MAAM,UAAU,GAAG,wBAAwB,CAAC;gBAC5C,MAAM,OAAO,GAAG,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;oBAC9C,MAAM,WAAW,GAAG,SAAS,CAAC,KAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAC3D,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,GAAG,IAAI,GAAG,iBAAiB,GAAG,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBAClG,CAAC;YACH,CAAC;YAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,WAAmB,EAAE,OAAgB;QACnE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAE/D,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACzC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;YAE3E,yCAAyC;YACzC,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,WAAW,CAAC,OAAO,GAAG,EAAE,CAAC;YAC3B,CAAC;YAED,+BAA+B;YAC/B,MAAM,cAAc,GAAG;gBACrB,CAAC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,uBAAuB,OAAO,CAAC,IAAI,GAAG;gBAChE,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,qCAAqC,OAAO,CAAC,IAAI,WAAW;aACxF,CAAC;YAEF,KAAK,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;gBACzE,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;oBACrC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,aAAa,CAAC;gBAClD,CAAC;YACH,CAAC;YAED,MAAM,EAAE,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,kCAAkC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC;QACrF,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,GAAW;QACjC,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;CACF;AAl+DD,0CAk+DC"}
|