@comake/skl-js-engine 1.1.4 → 1.1.5
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/JsExecutor/jsExecutor.js +2 -1
- package/dist/JsExecutor/jsExecutor.js.map +1 -1
- package/dist/JsExecutor/transport/stdio/ChildStdioTransport.js +2 -2
- package/dist/JsExecutor/transport/stdio/ChildStdioTransport.js.map +1 -1
- package/dist/JsExecutor/transport/stdio/ParentStdioTransport.js +2 -2
- package/dist/JsExecutor/transport/stdio/ParentStdioTransport.js.map +1 -1
- package/dist/SklEngine.d.ts +2 -1
- package/dist/SklEngine.js +93 -49
- package/dist/SklEngine.js.map +1 -1
- package/dist/constants.d.ts +74 -86
- package/dist/constants.js +38 -50
- package/dist/constants.js.map +1 -1
- package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.d.ts +1 -1
- package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js +107 -106
- package/dist/storage/query-adapter/sparql/SparqlQueryBuilder.js.map +1 -1
- package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.d.ts +1 -1
- package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js +1 -1
- package/dist/storage/query-adapter/sparql/query-executor/SparqlEndpointQueryExecutor.js.map +1 -1
- package/dist/util/SparqlUtil.d.ts +2 -2
- package/dist/util/TripleUtil.d.ts +2 -2
- package/dist/util/TripleUtil.js +9 -9
- package/dist/util/TripleUtil.js.map +1 -1
- package/dist/util/Types.d.ts +1 -3
- package/dist/util/Vocabularies/Shared.d.ts +2 -2
- package/dist/util/Vocabularies/Shared.js +4 -4
- package/dist/util/Vocabularies/Shared.js.map +1 -1
- package/dist/util/Vocabularies/index.d.ts +6 -6
- package/dist/util/Vocabularies/index.js +43 -50
- package/dist/util/Vocabularies/index.js.map +1 -1
- package/package.json +1 -1
- package/dist/JsExecutor/transport/StdioTransport.d.ts +0 -0
- package/dist/JsExecutor/transport/StdioTransport.js +0 -641
- package/dist/JsExecutor/transport/StdioTransport.js.map +0 -1
|
@@ -61,7 +61,8 @@ class JSExecutor {
|
|
|
61
61
|
return;
|
|
62
62
|
}
|
|
63
63
|
this.server = new transport_1.JsonRpcServer({
|
|
64
|
-
|
|
64
|
+
// 1 hour
|
|
65
|
+
requestTimeout: 60 * 60 * 1000
|
|
65
66
|
});
|
|
66
67
|
// Register callbacks with the server
|
|
67
68
|
Object.entries(this.callbacks).forEach(([methodName, callback]) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsExecutor.js","sourceRoot":"","sources":["../../src/JsExecutor/jsExecutor.ts"],"names":[],"mappings":";AAAA,yDAAyD;AACzD,oCAAoC;AACpC,qEAAqE;AACrE,+BAA+B;;;AAE/B,qCAA+C;AAE/C,2CAAoF;AAKpF;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAa,UAAU;IAQrB,YACmB,kBAA0B,EAC1B,SAAkD;QADlD,uBAAkB,GAAlB,kBAAkB,CAAQ;QAC1B,cAAS,GAAT,SAAS,CAAyC;QAT7D,kBAAa,GAAG,KAAK,CAAC;QAGb,oBAAe,GAAG,IAAI,eAAe,EAAE,CAAC;IAOtD,CAAC;IAEJ;;;OAGG;IACI,MAAM,CAAC,cAAc;QAC1B,OAAO,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC;IACzD,CAAC;IAED;;;OAGG;IACI,MAAM,CAAC,oBAAoB;QAChC,OAAO,UAAU,CAAC,qBAAqB,CAAC,MAAM,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,MAAwB,EAAE,gBAAmC;QACnF,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,OAAO;SACR;QAED,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAa,CAAC;YAC9B,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"jsExecutor.js","sourceRoot":"","sources":["../../src/JsExecutor/jsExecutor.ts"],"names":[],"mappings":"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"}
|
|
@@ -58,10 +58,10 @@ class ChildStdioTransport extends node_events_1.EventEmitter {
|
|
|
58
58
|
this.messageBuffer = new MessageUtils_1.MessageBuffer();
|
|
59
59
|
this.initialized = false;
|
|
60
60
|
this.server = new JsonRpcServer_1.JsonRpcServer({
|
|
61
|
-
requestTimeout:
|
|
61
|
+
requestTimeout: 60 * 60 * 1000
|
|
62
62
|
});
|
|
63
63
|
this.client = new JsonRpcClient_1.JsonRpcClient({
|
|
64
|
-
defaultTimeout:
|
|
64
|
+
defaultTimeout: 60 * 60 * 1000
|
|
65
65
|
});
|
|
66
66
|
// Set up the client transport that routes through our stdio
|
|
67
67
|
const clientTransport = {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChildStdioTransport.js","sourceRoot":"","sources":["../../../../src/JsExecutor/transport/stdio/ChildStdioTransport.ts"],"names":[],"mappings":";;;AAAA,2BAA2B;AAC3B,6CAA2C;AAE3C,+DAA4D;AAC5D,+DAA4D;AAC5D,wDAAkE;AAElE;;GAEG;AACH,MAAM,kBAAkB;IAAxB;QAEU,aAAQ,GAAwB,EAAE,CAAC;IAyB7C,CAAC;IAvBQ,WAAW,CAAC,QAA6B;QAC9C,IAAI,CAAC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC;IACpD,CAAC;IAEM,GAAG,CAAC,OAAe,EAAE,IAAU;QACpC,MAAM,QAAQ,GAAG;YACf,OAAO;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,IAAI,IAAI,EAAE,IAAI,EAAE;SACpB,CAAC;QACF,4DAA4D;QAC5D,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAChH,CAAC;IAEM,KAAK,CAAC,OAAe,EAAE,KAAa;QACzC,MAAM,QAAQ,GAAG;YACf,KAAK,EAAE,OAAO;YACd,OAAO;YACP,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,KAAK,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE;SACzD,CAAC;QACF,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC/D,CAAC;CACF;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAa,mBAAoB,SAAQ,0BAAY;IAQnD;QACE,KAAK,EAAE,CAAC;QANO,WAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QAClC,kBAAa,GAAG,IAAI,4BAAa,EAAE,CAAC;QAE7C,gBAAW,GAAG,KAAK,CAAC;QAI1B,IAAI,CAAC,MAAM,GAAG,IAAI,6BAAa,CAAC;YAC9B,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"ChildStdioTransport.js","sourceRoot":"","sources":["../../../../src/JsExecutor/transport/stdio/ChildStdioTransport.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,8 +48,8 @@ class ParentStdioTransport extends BaseTransport_1.BaseTransport {
|
|
|
48
48
|
this.executorScriptPath = executorScriptPath;
|
|
49
49
|
this.server = server;
|
|
50
50
|
this.client = new JsonRpcClient_1.JsonRpcClient({
|
|
51
|
-
//
|
|
52
|
-
defaultTimeout:
|
|
51
|
+
// 1 hour
|
|
52
|
+
defaultTimeout: 60 * 60 * 1000
|
|
53
53
|
});
|
|
54
54
|
this.clientTransport = new StdioClientTransport(this.processManager);
|
|
55
55
|
this.setupServerMethods();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParentStdioTransport.js","sourceRoot":"","sources":["../../../../src/JsExecutor/transport/stdio/ParentStdioTransport.ts"],"names":[],"mappings":";AAAA,qEAAqE;;;AAErE,4CAAyC;AAEzC,+DAA4D;AAG5D,+CAAuD;AAEvD,yDAAsD;AACtD,8DAA2D;AAE3D,4CAA+C;AAC/C,wDAAkE;AAClE,wDAAyD;AAEzD;;GAEG;AACH,MAAa,oBAAoB;IAK/B,YAAoC,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAFjD,WAAM,GAAG,eAAM,CAAC,WAAW,EAAE,CAAC;IAEsB,CAAC;IAE/D,OAAO,CAAC,IAAY;QACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,sBAAsB,EAAE,CAAC,CAAC;IACvE,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAAe;QAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;QAC5C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;IAC5C,CAAC;IAEM,SAAS,CAAC,OAAkC;QACjD,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;QAC9B,wEAAwE;QACxE,wCAAwC;IAC1C,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,IAAI,CAAC,cAAc,GAAG,SAAS,CAAC;IAClC,CAAC;CACF;AA1BD,oDA0BC;AAED;;;GAGG;AACH,MAAa,oBAAqB,SAAQ,6BAAa;IAQrD,YAAmB,kBAA0B,EAAE,MAAqB;QAClE,KAAK,EAAE,CAAC;QARO,mBAAc,GAAG,IAAI,+BAAc,EAAE,CAAC;QAKtC,kBAAa,GAAG,IAAI,4BAAa,EAAE,CAAC;QAInD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,IAAI,6BAAa,CAAC;YAC9B,
|
|
1
|
+
{"version":3,"file":"ParentStdioTransport.js","sourceRoot":"","sources":["../../../../src/JsExecutor/transport/stdio/ParentStdioTransport.ts"],"names":[],"mappings":"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"}
|
package/dist/SklEngine.d.ts
CHANGED
|
@@ -83,7 +83,7 @@ export declare class SKLEngine implements SKLEngineInterface {
|
|
|
83
83
|
private performReturnValueMappingWithFrameIfDefined;
|
|
84
84
|
private performParameterMappingOnArgsIfDefined;
|
|
85
85
|
private getDataAtReference;
|
|
86
|
-
private
|
|
86
|
+
private getIntegrationInterface;
|
|
87
87
|
private findSecurityCredentialsForAccountIfDefined;
|
|
88
88
|
private findgetOpenApiRuntimeAuthorizationCapabilityIfDefined;
|
|
89
89
|
private getRuntimeCredentialsWithSecurityCredentials;
|
|
@@ -108,6 +108,7 @@ export declare class SKLEngine implements SKLEngineInterface {
|
|
|
108
108
|
private ifCapabilityStreaming;
|
|
109
109
|
private isJavaScriptCode;
|
|
110
110
|
private ensureNodeObject;
|
|
111
|
+
private executeCodeBlocks;
|
|
111
112
|
private executeJavaScriptMapping;
|
|
112
113
|
get hooks(): typeof globalHooks;
|
|
113
114
|
}
|
package/dist/SklEngine.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
/* eslint-disable max-len */
|
|
2
3
|
/* eslint-disable no-div-regex */
|
|
3
4
|
/* eslint-disable line-comment-position */
|
|
4
5
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
@@ -417,10 +418,13 @@ class SKLEngine {
|
|
|
417
418
|
return await this.queryAdapter.destroyAll();
|
|
418
419
|
}
|
|
419
420
|
async performMapping(args, mapping, frame, capabilityConfig, jsExecutionOptions) {
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
this.isJavaScriptCode((0, Util_1.getValueIfDefined)(
|
|
423
|
-
|
|
421
|
+
const mappingArray = (0, Util_1.ensureArray)(mapping);
|
|
422
|
+
const codeBlocks = mappingArray.filter((mappingItem) => mappingItem[constants_1.PROP_ENTITY_TYPE] === constants_1.EngineConstants.spec.codeBlock &&
|
|
423
|
+
this.isJavaScriptCode((0, Util_1.getValueIfDefined)(mappingItem[constants_1.EngineConstants.prop.codeBody])));
|
|
424
|
+
// FIXME: Handle if we can combine the codeb blocks with triples map.
|
|
425
|
+
// As of now if there is any code block, triples map does not get executed.
|
|
426
|
+
if (codeBlocks.length > 0) {
|
|
427
|
+
return await this.executeCodeBlocks(codeBlocks, args, jsExecutionOptions ?? {});
|
|
424
428
|
}
|
|
425
429
|
const functions = {
|
|
426
430
|
...this.functions,
|
|
@@ -519,7 +523,7 @@ class SKLEngine {
|
|
|
519
523
|
}
|
|
520
524
|
}
|
|
521
525
|
const mappings = await this.findAllBy({
|
|
522
|
-
type: constants_1.EngineConstants.spec.
|
|
526
|
+
type: constants_1.EngineConstants.spec.capabilityMapping,
|
|
523
527
|
[constants_1.EngineConstants.prop.capability]: capabilityId,
|
|
524
528
|
[constants_1.EngineConstants.prop.integration]: (0, Not_1.Not)((0, Exists_1.Exists)()),
|
|
525
529
|
[constants_1.EngineConstants.prop.object]: (0, Not_1.Not)((0, Exists_1.Exists)())
|
|
@@ -541,28 +545,31 @@ class SKLEngine {
|
|
|
541
545
|
async executeMapping(mapping, args, capabilityConfig, account) {
|
|
542
546
|
args = await this.addPreProcessingMappingToArgs(mapping, args, capabilityConfig);
|
|
543
547
|
let returnValue;
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
548
|
+
// If (EngineConstants.prop.capability in mapping || EngineConstants.prop.capabilityMapping in mapping) {
|
|
549
|
+
// const capabilityId = await this.performCapabilityMappingWithArgs(args, mapping, capabilityConfig);
|
|
550
|
+
// const mappedArgs = await this.performParameterMappingOnArgsIfDefined(
|
|
551
|
+
// { ...args, capabilityId },
|
|
552
|
+
// mapping as MappingWithInputs,
|
|
553
|
+
// capabilityConfig
|
|
554
|
+
// );
|
|
555
|
+
// Logger.getInstance().log('Mapped args', mappedArgs);
|
|
556
|
+
// returnValue = await this.executeCapabilityMapping(mapping, args, mappedArgs, capabilityConfig);
|
|
557
|
+
// } else {
|
|
558
|
+
const mappedArgs = await this.performParameterMappingOnArgsIfDefined(args, mapping, capabilityConfig);
|
|
559
|
+
logger_1.Logger.getInstance().log('Mapped args', mappedArgs);
|
|
560
|
+
if (constants_1.EngineConstants.prop.operationId in mapping || constants_1.EngineConstants.prop.operationMapping in mapping) {
|
|
561
|
+
returnValue = (await this.executeOperationMapping(mapping, mappedArgs, args, account, capabilityConfig));
|
|
562
|
+
}
|
|
563
|
+
else if (constants_1.EngineConstants.prop.series in mapping) {
|
|
564
|
+
returnValue = await this.executeSeriesMapping(mapping, mappedArgs, capabilityConfig);
|
|
565
|
+
}
|
|
566
|
+
else if (constants_1.EngineConstants.prop.parallel in mapping) {
|
|
567
|
+
returnValue = await this.executeParallelMapping(mapping, mappedArgs, capabilityConfig);
|
|
549
568
|
}
|
|
550
569
|
else {
|
|
551
|
-
|
|
552
|
-
logger_1.Logger.getInstance().log('Mapped args', mappedArgs);
|
|
553
|
-
if (constants_1.EngineConstants.prop.operationId in mapping || constants_1.EngineConstants.prop.operationMapping in mapping) {
|
|
554
|
-
returnValue = (await this.executeOperationMapping(mapping, mappedArgs, args, account, capabilityConfig));
|
|
555
|
-
}
|
|
556
|
-
else if (constants_1.EngineConstants.prop.series in mapping) {
|
|
557
|
-
returnValue = await this.executeSeriesMapping(mapping, mappedArgs, capabilityConfig);
|
|
558
|
-
}
|
|
559
|
-
else if (constants_1.EngineConstants.prop.parallel in mapping) {
|
|
560
|
-
returnValue = await this.executeParallelMapping(mapping, mappedArgs, capabilityConfig);
|
|
561
|
-
}
|
|
562
|
-
else {
|
|
563
|
-
returnValue = mappedArgs;
|
|
564
|
-
}
|
|
570
|
+
returnValue = mappedArgs;
|
|
565
571
|
}
|
|
572
|
+
// }
|
|
566
573
|
return await this.performReturnValueMappingWithFrameIfDefined(returnValue, mapping, capabilityConfig);
|
|
567
574
|
}
|
|
568
575
|
shouldValidate(capabilityConfig) {
|
|
@@ -571,10 +578,16 @@ class SKLEngine {
|
|
|
571
578
|
: !capabilityConfig.disableValidation;
|
|
572
579
|
}
|
|
573
580
|
async executeOperationMapping(mapping, mappedArgs, originalArgs, account, capabilityConfig) {
|
|
574
|
-
const
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
581
|
+
const integration = mapping[constants_1.EngineConstants.prop.integration]?.[constants_1.PROP_ENTITY_ID];
|
|
582
|
+
// If the mapping has an integration, it means that the operation is an integration operation
|
|
583
|
+
if (integration) {
|
|
584
|
+
const operationInfo = await this.performOperationMappingWithArgs(originalArgs, mapping, capabilityConfig);
|
|
585
|
+
const response = await this.performOperation(operationInfo, mappedArgs, originalArgs, account, capabilityConfig);
|
|
586
|
+
logger_1.Logger.getInstance().log('Original response', JSON.stringify(response));
|
|
587
|
+
return response;
|
|
588
|
+
}
|
|
589
|
+
// If the mapping does not have an integration, it means that the operation is a capability operation
|
|
590
|
+
return await this.executeCapabilityMapping(mapping, originalArgs, mappedArgs, capabilityConfig);
|
|
578
591
|
}
|
|
579
592
|
async executeSeriesMapping(mapping, args, capabilityConfig) {
|
|
580
593
|
const seriesCapabilityMappingsList = this.rdfListToArray(mapping[constants_1.EngineConstants.prop.series]);
|
|
@@ -807,18 +820,22 @@ class SKLEngine {
|
|
|
807
820
|
}
|
|
808
821
|
return result;
|
|
809
822
|
}
|
|
810
|
-
async
|
|
811
|
-
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
823
|
+
async getIntegrationInterface(integratedProductId, integrationType = constants_1.EngineConstants.spec.integrationInterface) {
|
|
824
|
+
if (integrationType === constants_1.EngineConstants.spec.integrationInterface) {
|
|
825
|
+
const integrationInterface = await this.findBy({
|
|
826
|
+
type: integrationType,
|
|
827
|
+
[constants_1.EngineConstants.prop.type]: constants_1.EngineConstants.spec.openApi,
|
|
828
|
+
[constants_1.EngineConstants.prop.integration]: integratedProductId
|
|
829
|
+
});
|
|
830
|
+
return integrationInterface;
|
|
831
|
+
}
|
|
832
|
+
// Add support for other integration types
|
|
833
|
+
return null;
|
|
817
834
|
}
|
|
818
835
|
async findSecurityCredentialsForAccountIfDefined(accountId) {
|
|
819
836
|
return await this.findByIfExists({
|
|
820
837
|
type: constants_1.EngineConstants.spec.integrationAuthenticationCredential,
|
|
821
|
-
[constants_1.EngineConstants.prop.
|
|
838
|
+
[constants_1.EngineConstants.prop.accountOrUser]: accountId
|
|
822
839
|
});
|
|
823
840
|
}
|
|
824
841
|
async findgetOpenApiRuntimeAuthorizationCapabilityIfDefined() {
|
|
@@ -861,11 +878,11 @@ class SKLEngine {
|
|
|
861
878
|
}));
|
|
862
879
|
}
|
|
863
880
|
async performCapabilityMappingWithArgs(args, mapping, capabilityConfig) {
|
|
864
|
-
if (mapping[constants_1.EngineConstants.prop.
|
|
865
|
-
return (0, Util_1.getValueIfDefined)(mapping[constants_1.EngineConstants.prop.
|
|
881
|
+
if (mapping[constants_1.EngineConstants.prop.operationId]) {
|
|
882
|
+
return (0, Util_1.getValueIfDefined)(mapping[constants_1.EngineConstants.prop.operationId]);
|
|
866
883
|
}
|
|
867
|
-
const capabilityInfoJsonLd = await this.performMapping(args, mapping[constants_1.EngineConstants.prop.
|
|
868
|
-
return (0, Util_1.getValueIfDefined)(capabilityInfoJsonLd[constants_1.EngineConstants.prop.
|
|
884
|
+
const capabilityInfoJsonLd = await this.performMapping(args, mapping[constants_1.EngineConstants.prop.operationMapping], undefined, capabilityConfig);
|
|
885
|
+
return (0, Util_1.getValueIfDefined)(capabilityInfoJsonLd[constants_1.EngineConstants.prop.operationId]);
|
|
869
886
|
}
|
|
870
887
|
async assertCapabilityParamsMatchParameterSchemas(capabilityParams, capability) {
|
|
871
888
|
let parametersSchemaObject = capability[constants_1.EngineConstants.prop.inputs];
|
|
@@ -886,7 +903,11 @@ class SKLEngine {
|
|
|
886
903
|
}
|
|
887
904
|
async performOpenapiOperationWithCredentials(operationId, operationArgs, account, capabilityConfig) {
|
|
888
905
|
const integratedProductId = account[constants_1.EngineConstants.prop.integration][constants_1.PROP_ENTITY_ID];
|
|
889
|
-
const
|
|
906
|
+
const restAPIInterface = await this.getIntegrationInterface(integratedProductId);
|
|
907
|
+
if (!restAPIInterface) {
|
|
908
|
+
throw new Error(`No integration interface found for integrated product ${integratedProductId}`);
|
|
909
|
+
}
|
|
910
|
+
const openApiDescription = (0, Util_1.getValueIfDefined)(restAPIInterface[constants_1.EngineConstants.prop.declarativeApiDescription]);
|
|
890
911
|
const openApiExecutor = await this.createOpenApiOperationExecutorWithSpec(openApiDescription);
|
|
891
912
|
// eslint-disable-next-line @typescript-eslint/await-thenable
|
|
892
913
|
const openApiOperationInformation = await openApiExecutor.getOperationWithPathInfoMatchingOperationId(operationId);
|
|
@@ -907,8 +928,8 @@ class SKLEngine {
|
|
|
907
928
|
bearerToken: (0, Util_1.getValueIfDefined)(securityCredentials?.[constants_1.EngineConstants.prop.bearerToken]),
|
|
908
929
|
apiKey,
|
|
909
930
|
basePath: (0, Util_1.getValueIfDefined)(account[constants_1.EngineConstants.prop.overrideBasePath]),
|
|
910
|
-
username: (0, Util_1.getValueIfDefined)(securityCredentials?.[constants_1.EngineConstants.prop.
|
|
911
|
-
password: (0, Util_1.getValueIfDefined)(securityCredentials?.[constants_1.EngineConstants.prop.
|
|
931
|
+
username: (0, Util_1.getValueIfDefined)(securityCredentials?.[constants_1.EngineConstants.prop.username]),
|
|
932
|
+
password: (0, Util_1.getValueIfDefined)(securityCredentials?.[constants_1.EngineConstants.prop.password])
|
|
912
933
|
};
|
|
913
934
|
let response;
|
|
914
935
|
let executeOperationOptions;
|
|
@@ -962,8 +983,11 @@ class SKLEngine {
|
|
|
962
983
|
return undefined;
|
|
963
984
|
}
|
|
964
985
|
async isInvalidTokenError(error, integratedProductId) {
|
|
965
|
-
const
|
|
966
|
-
|
|
986
|
+
const integrationInterface = await this.getIntegrationInterface(integratedProductId);
|
|
987
|
+
if (!integrationInterface) {
|
|
988
|
+
return false;
|
|
989
|
+
}
|
|
990
|
+
const errorMatcher = integrationInterface[constants_1.EngineConstants.prop.invalidTokenErrorMatcher];
|
|
967
991
|
const errorMatcherStatus = errorMatcher && (0, Util_1.getValueIfDefined)(errorMatcher[constants_1.EngineConstants.prop.invalidTokenErrorMatcherStatus]);
|
|
968
992
|
const errorMatcherRegex = errorMatcher &&
|
|
969
993
|
(0, Util_1.getValueIfDefined)(errorMatcher[constants_1.EngineConstants.prop.invalidTokenErrorMatcherMessageRegex]);
|
|
@@ -1011,8 +1035,8 @@ class SKLEngine {
|
|
|
1011
1035
|
return { accessToken, bearerToken };
|
|
1012
1036
|
}
|
|
1013
1037
|
getOauthConfigurationFromSecurityCredentials(securityCredentialsSchema) {
|
|
1014
|
-
const username = (0, Util_1.getValueIfDefined)(securityCredentialsSchema[constants_1.EngineConstants.prop.
|
|
1015
|
-
const password = (0, Util_1.getValueIfDefined)(securityCredentialsSchema[constants_1.EngineConstants.prop.
|
|
1038
|
+
const username = (0, Util_1.getValueIfDefined)(securityCredentialsSchema[constants_1.EngineConstants.prop.username]);
|
|
1039
|
+
const password = (0, Util_1.getValueIfDefined)(securityCredentialsSchema[constants_1.EngineConstants.prop.password]);
|
|
1016
1040
|
const accessToken = (0, Util_1.getValueIfDefined)(securityCredentialsSchema[constants_1.EngineConstants.prop.accessToken]);
|
|
1017
1041
|
return { username, password, accessToken };
|
|
1018
1042
|
}
|
|
@@ -1076,12 +1100,16 @@ class SKLEngine {
|
|
|
1076
1100
|
}
|
|
1077
1101
|
async performOauthSecuritySchemeStageWithCredentials(operationInfo, operationParameters, account, securityCredentials) {
|
|
1078
1102
|
const integratedProductId = account[constants_1.EngineConstants.prop.integration][constants_1.PROP_ENTITY_ID];
|
|
1079
|
-
const
|
|
1103
|
+
const restAPIInterface = await this.getIntegrationInterface(integratedProductId);
|
|
1104
|
+
if (!restAPIInterface) {
|
|
1105
|
+
throw new Error(`No integration interface found for integrated product ${integratedProductId}`);
|
|
1106
|
+
}
|
|
1107
|
+
const openApiDescription = (0, Util_1.getValueIfDefined)(restAPIInterface[constants_1.EngineConstants.prop.declarativeApiDescription]);
|
|
1080
1108
|
securityCredentials || (securityCredentials = await this.findSecurityCredentialsForAccountIfDefined(account[constants_1.PROP_ENTITY_ID]));
|
|
1081
1109
|
let configuration;
|
|
1082
1110
|
if (securityCredentials) {
|
|
1083
1111
|
configuration = this.getOauthConfigurationFromSecurityCredentials(securityCredentials);
|
|
1084
|
-
operationParameters.client_id = (0, Util_1.getValueIfDefined)(securityCredentials[constants_1.EngineConstants.prop.
|
|
1112
|
+
operationParameters.client_id = (0, Util_1.getValueIfDefined)(securityCredentials[constants_1.EngineConstants.prop.username]);
|
|
1085
1113
|
}
|
|
1086
1114
|
else {
|
|
1087
1115
|
configuration = {};
|
|
@@ -1237,6 +1265,22 @@ class SKLEngine {
|
|
|
1237
1265
|
...result
|
|
1238
1266
|
};
|
|
1239
1267
|
}
|
|
1268
|
+
async executeCodeBlocks(codeBlocks, args, executionOptions) {
|
|
1269
|
+
const results = [];
|
|
1270
|
+
let updatedArgs = args || {};
|
|
1271
|
+
for (const codeBlock of codeBlocks) {
|
|
1272
|
+
const code = (0, Util_1.getValueIfDefined)(codeBlock[constants_1.EngineConstants.prop.codeBody]);
|
|
1273
|
+
if (code) {
|
|
1274
|
+
const result = await this.executeJavaScriptMapping(updatedArgs, code, executionOptions);
|
|
1275
|
+
updatedArgs = {
|
|
1276
|
+
...updatedArgs,
|
|
1277
|
+
...result
|
|
1278
|
+
};
|
|
1279
|
+
results.push(result);
|
|
1280
|
+
}
|
|
1281
|
+
}
|
|
1282
|
+
return results.length > 0 ? results[results.length - 1] : {};
|
|
1283
|
+
}
|
|
1240
1284
|
async executeJavaScriptMapping(args, code, _executionOptions) {
|
|
1241
1285
|
try {
|
|
1242
1286
|
// Configure execution options
|
package/dist/SklEngine.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":";AAAA,iCAAiC;AACjC,0CAA0C;;;;;;AAU1C,mFAA8E;AAC9E,uDAAmG;AAEnG,kDAA0B;AAG1B,iDAAyC;AACzC,4EAAgD;AAEhD,2CAUqB;AACrB,6DAAgE;AAChE,qDAAyE;AAGzE,qCAAkC;AAClC,6CAA0C;AAK1C,sDAAmD;AACnD,8CAA2C;AAC3C,gEAA6D;AAC7D,gDAA6C;AAC7C,oEAAiE;AACjE,kEAA+D;AAC/D,sEAAmE;AAEnE,0FAAuF;AAuBvF,sCAA2F;AAC3F,sDAAwE;AAUxE,MAAa,SAAS;IAWpB,YAAmB,OAAyB;QAC1C,IAAI,CAAC,YAAY,GAAG,IAAI,uCAAkB,CAAC,OAAO,CAAC,CAAC;QACpD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,iBAAiB,CAAC;QACnD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,eAAe,GAAI,OAAe,CAAC,WAAW,CAAC;QACpD,IAAI,CAAC,UAAU,GAAI,OAAe,CAAC,UAAU,CAAC;QAC9C,IAAI,OAAO,CAAC,SAAS,EAAE;YACrB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,WAAW,CACjC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC;gBACrD,GAAG;gBACH,CAAC,OAAqC,EAAE,EAAE,EAAE;oBAC1C,0CAA0C;oBAC1C,4DAA4D;oBAC5D,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;oBAEhB,6BAA6B;oBAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpB,CAAC;aACF,CAAC,CACH,CAAC;SACH;QACD,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,SAAS,IAAI,KAAK,CAAC;QAC9C,eAAM,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAErC,sCAAsC;QACtC,MAAM,oBAAoB,GACxB,CAAC,SAA8B,EAAE,QAAgB,EAAqB,EAAE,CACtE,KAAK,EACH,cAA0B,EAC1B,gBAAmC,EACvB,EAAE,CACd,IAAI,CAAC,uBAAuB,CAAC,QAAQ,EAAE,cAAc,EAAE,gBAAgB,CAAe,CAAC;QAC7F,IAAI,CAAC,UAAU,GAAG,IAAI,KAAK,CAAC,EAAyB,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,CAAC,CAAC;IACxF,CAAC;IAEM,eAAe,CAAC,YAA2B;QAChD,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,eAAe,CAA2B,KAAa;QAClE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,eAAe,CAAI,KAAK,CAAC,CAAC;IAC3D,CAAC;IAEM,KAAK,CAAC,gBAAgB,CAAC,KAAa;QACzC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,wBAAwB,CAAC,KAAa,EAAE,KAAa;QAChE,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACxE,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,OAAwB;QACxC,IAAI;YACF,2BAA2B;YAC3B,MAAM,OAAO,GAAG;gBACd,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,MAAM;gBACjB,mBAAmB,EAAE,EAAE,OAAO,EAAE;aACjC,CAAC;YAEF,2BAA2B;YAC3B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAEtE,IAAI;gBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACrD,IAAI,CAAC,MAAM,EAAE;oBACX,MAAM,IAAI,KAAK,CAAC,wCAAwC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;iBACpF;gBAED,+CAA+C;gBAC/C,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC;gBACzD,MAAM,eAAe,GAAG,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;gBAE5G,0CAA0C;gBAC1C,OAAO,eAAe,IAAI,MAAM,CAAC;aAClC;YAAC,OAAO,KAAc,EAAE;gBACvB,0BAA0B;gBAC1B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;gBAC5E,MAAM,KAAK,CAAC;aACb;SACF;QAAC,OAAO,SAAkB,EAAE;YAC3B,4DAA4D;YAC5D,MAAM,SAAS,CAAC;SACjB;IACH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,KAAuB,EAAE,oBAA6B;QACxE,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,QAAQ;YACnB,mBAAmB,EAAE,EAAE,KAAK,EAAE;SAC/B,CAAC;QACF,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACrD,IAAI,MAAM,EAAE;gBACV,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAC,CAAC;gBACzD,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;gBACpF,OAAO,MAAM,CAAC;aACf;YACD,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,wCAAwC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SAC1G;QAAC,OAAO,KAAc,EAAE;YACvB,MAAM,yBAAW,CAAC,OAAO,CACvB,uBAAS,CAAC,IAAI,EACd,wBAAU,CAAC,KAAK,EAChB;gBACE,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,QAAQ;gBACnB,mBAAmB,EAAE,EAAE,KAAK,EAAE;aAC/B,EACD,KAAK,CACN,CAAC;YACF,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,OAAyB;QACnD,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC1C,OAAO,MAAM,CAAC;SACf;QAAC,MAAM;YACN,OAAO,SAAS,CAAC;SAClB;IACH,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,OAAwB;QAC3C,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,SAAS;YACpB,mBAAmB,EAAE,EAAE,OAAO,EAAE;SACjC,CAAC;QACF,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC1D,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC;YAChD,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;YACtF,OAAO,QAAQ,CAAC;SACjB;QAAC,OAAO,KAAc,EAAE;YACvB,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5E,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEM,KAAK,CAAC,OAAO,CAAC,OAAuB;QAC1C,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,SAAS;YACpB,mBAAmB,EAAE,EAAE,OAAO,EAAE;SACjC,CAAC;QACF,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YACxD,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAC;YAC9C,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YACpF,OAAO,MAAM,CAAC;SACf;QAAC,OAAO,KAAc,EAAE;YACvB,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5E,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEM,KAAK,CAAC,SAAS,CAAC,KAAuB;QAC5C,MAAM,OAAO,GAAG;YACd,QAAQ,EAAE,EAAE;YACZ,SAAS,EAAE,WAAW;YACtB,mBAAmB,EAAE,EAAE,KAAK,EAAE;SAC/B,CAAC;QACF,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtE,IAAI;YACF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YAC1D,MAAM,cAAc,GAAG,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC;YAChD,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;YACtF,OAAO,QAAQ,CAAC;SACjB;QAAC,OAAO,KAAc,EAAE;YACvB,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,IAAI,EAAE,wBAAU,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAC5E,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEM,KAAK,CAAC,MAAM,CAAC,OAAwB;QAC1C,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACjD,CAAC;IAEM,KAAK,CAAC,KAAK,CAAC,OAAwB;QACzC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAIM,KAAK,CAAC,IAAI,CAAC,gBAAmC;QACnD,IAAI;YACF,kDAAkD;YAClD,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;YAC5F,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAExD,6BAA6B;YAC7B,MAAM,yBAAW,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAEnD,IAAI;gBACF,oBAAoB;gBACpB,MAAM,IAAI,CAAC,qCAAqC,CAAC,WAAW,CAAC,CAAC;gBAE9D,gBAAgB;gBAChB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAEhE,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,kBAAkB,CAAC,aAAa,CAAC,CAAC;gBAEpD,4DAA4D;gBAC5D,OAAO,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC;aAC1D;YAAC,OAAO,KAAK,EAAE;gBACd,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,KAAc,CAAC,CAAC;gBAClE,MAAM,KAAK,CAAC;aACb;SACF;QAAC,OAAO,SAAS,EAAE;YAClB,4DAA4D;YAC5D,MAAM,SAAS,CAAC;SACjB;IACH,CAAC;IAIM,KAAK,CAAC,MAAM,CAAC,OAA0B,EAAE,UAA2B;QACzE,IAAI;YACF,6CAA6C;YAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC7D,MAAM,cAAc,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAE/C,6BAA6B;YAC7B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,MAAM,EAAE,wBAAU,CAAC,MAAM,EAAE;gBAC7D,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,QAAQ;gBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;aAC7C,CAAC,CAAC;YAEH,IAAI;gBACF,sBAAsB;gBACtB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;oBACtB,MAAM,IAAI,CAAC,0DAA0D,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;iBAC5F;qBAAM;oBACL,MAAM,IAAI,CAAC,uDAAuD,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;iBAC5F;gBACD,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAE,OAAe,EAAE,UAAU,CAAC,CAAC;gBAE3F,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,MAAM,EAAE,wBAAU,CAAC,KAAK,EAAE;oBAC5D,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,QAAQ;oBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;iBAC7C,CAAC,CAAC;aACJ;YAAC,OAAO,KAAc,EAAE;gBACvB,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,OAAO,CACvB,uBAAS,CAAC,MAAM,EAChB,wBAAU,CAAC,KAAK,EAChB;oBACE,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,QAAQ;oBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE,UAAU,EAAE;iBAC7C,EACD,KAAK,CACN,CAAC;gBACF,MAAM,KAAK,CAAC;aACb;SACF;QAAC,OAAO,SAAkB,EAAE;YAC3B,4DAA4D;YAC5D,MAAM,SAAS,CAAC;SACjB;IACH,CAAC;IAEO,KAAK,CAAC,qCAAqC,CAAC,QAAkB;QACpE,MAAM,cAAc,GAAG,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;QAC1D,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE;YAC9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACvD,IAAI,MAAM,EAAE;gBACV,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;gBAC/D,KAAK,MAAM,aAAa,IAAI,CAAC,MAAM,EAAE,GAAG,aAAa,CAAC,EAAE;oBACtD,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,oBAAoB,GAAG;wBAC3B,GAAG,aAAa;wBAChB,CAAC,iBAAK,CAAC,UAAU,CAAC,EAAE,cAAc,CAAC,GAAG,CACpC,CAAC,MAAM,EAAuB,EAAE,CAAC,CAAC,EAAE,CAAC,0BAAc,CAAC,EAAE,MAAM,CAAC,0BAAc,CAAC,EAAE,CAAC,CAChF;qBACF,CAAC;oBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;oBACtG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;wBACpB,MAAM,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAU,EAAE,CAAC,MAAM,CAAC,0BAAc,CAAC,CAAC,CAAC;wBACjF,IAAI,CAAC,0BAA0B,CAC7B,MAAM,EACN,UAAU,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,4BAA4B,aAAa,CAAC,0BAAc,CAAC,UAAU,CAClG,CAAC;qBACH;iBACF;aACF;SACF;IACH,CAAC;IAEO,mBAAmB,CAAC,QAAkB;QAC5C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,eAAyC,EAAE,MAAM,EAA4B,EAAE;YACrG,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC;gBACzD,CAAC,CAAC,MAAM,CAAC,4BAAgB,CAAC;gBAC1B,CAAC,CAAC,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC,CAAC;YAC/B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE;gBAC9B,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE;oBAC1B,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;iBAC5B;gBACD,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;aACpC;YACD,OAAO,eAAe,CAAC;QACzB,CAAC,EAAE,EAAE,CAAC,CAAC;IACT,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,MAAc;QAClD,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,wBAAwB,CAAC,KAAe;QACpD,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,IAAA,OAAE,EAAC,KAAK,CAAC,CAAC,CAAC;IACpD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,QAAyC;QAC1E,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC;YACxB,KAAK,EAAE;gBACL,EAAE,EAAE,IAAA,yBAAW,EAAC;oBACd,OAAO,EAAE,IAAA,6BAAa,EAAC,EAAE,OAAO,EAAE,gBAAI,CAAC,UAAoB,EAAE,CAAC;oBAC9D,KAAK,EAAE,QAAQ;iBAChB,CAAC;aACH;SACF,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,oCAAoC,CAAC,MAAc;QAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,4BAAgB,CAAC,CAAC,CAAC;QAChH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAA,OAAE,EAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,MAAM,iBAAiB,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAU,EAAE,CAAC,MAAM,CAAC,0BAAc,CAAC,CAAC,CAAC;YACxF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,iBAAiB,CAAC,CAAC;YAC7E,KAAK,MAAM,aAAa,IAAI,CAAC,GAAG,aAAa,EAAE,GAAG,aAAa,CAAC,EAAE;gBAChE,MAAM,oBAAoB,GAAG;oBAC3B,GAAG,aAAa;oBAChB,CAAC,iBAAK,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,0BAAc,CAAC,EAAE,MAAM,CAAC,0BAAc,CAAC,EAAE;iBACjE,CAAC;gBACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAC;gBAC9F,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;oBACpB,IAAI,CAAC,0BAA0B,CAC7B,MAAM,EACN,UAAU,MAAM,CAAC,0BAAc,CAAC,4BAA4B,aAAa,CAAC,0BAAc,CAAC,UAAU,CACpG,CAAC;iBACH;aACF;SACF;IACH,CAAC;IAEO,KAAK,CAAC,0DAA0D,CACtE,GAAa,EACb,UAA2B;QAE3B,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;YACpB,MAAM,IAAI,CAAC,uDAAuD,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;SACpF;IACH,CAAC;IAEO,KAAK,CAAC,kCAAkC,CAAC,EAAU;QACzD,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC;YAC1B,EAAE,EAAE,IAAA,yBAAW,EAAC;gBACd,OAAO,EAAE,IAAA,2BAAY,EAAC;oBACpB,OAAO,EAAE,CAAC,eAAG,CAAC,IAAI,EAAE,IAAA,+BAAc,EAAC,EAAE,OAAO,EAAE,gBAAI,CAAC,UAAoB,EAAE,CAAC,CAAC;iBAC5E,CAAC;gBACF,KAAK,EAAE,EAAE;aACV,CAAC;SACH,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,uDAAuD,CACnE,EAAU,EACV,UAA2B;QAE3B,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,kCAAkC,CAAC,EAAE,CAAC,CAAC;QAChE,KAAK,MAAM,aAAa,IAAI,KAAK,EAAE;YACjC,IAAI,iBAAK,CAAC,QAAQ,IAAI,aAAa,EAAE;gBACnC,MAAM,cAAc,GAAG,IAAA,kBAAW,EAAC,aAAa,CAAC,iBAAK,CAAC,QAAQ,CAAwB,CAAC,CAAC,MAAM,CAC7F,CAAC,QAAQ,EAAW,EAAE;oBACpB,MAAM,IAAI,GAAG,QAAQ,CAAC,iBAAK,CAAC,IAAI,CAAC,CAAC;oBAClC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,IAAI,UAAU,EAAE;wBAClD,OAAO,IAAI,CAAC;qBACb;oBACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,0BAAc,IAAI,IAAK,IAAK,IAAI,CAAC,0BAAc,CAAY,IAAI,UAAU,EAAE;wBACzG,OAAO,IAAI,CAAC;qBACb;oBACD,OAAO,KAAK,CAAC;gBACf,CAAC,CACF,CAAC;gBACF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;oBAC7B,MAAM,oBAAoB,GAAG;wBAC3B,CAAC,4BAAgB,CAAC,EAAE,iBAAK,CAAC,SAAS;wBACnC,CAAC,iBAAK,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,0BAAc,CAAC,EAAE,EAAE,EAAE;wBAC5C,CAAC,iBAAK,CAAC,QAAQ,CAAC,EAAE,cAAc;qBACjC,CAAC;oBACF,MAAM,gBAAgB,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC,0BAAc,CAAC,EAAE,EAAE,EAAE,CAAC;oBACjE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;oBACxG,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;wBACpB,IAAI,CAAC,0BAA0B,CAC7B,MAAM,EACN,UAAU,EAAE,4BAA4B,aAAa,CAAC,0BAAc,CAAC,UAAU,CAChF,CAAC;qBACH;iBACF;aACF;SACF;IACH,CAAC;IAIM,KAAK,CAAC,MAAM,CAAC,OAA0B;QAC5C,IAAI;YACF,6CAA6C;YAC7C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAE7D,6BAA6B;YAC7B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,MAAM,EAAE,wBAAU,CAAC,MAAM,EAAE;gBAC7D,QAAQ,EAAE,EAAE;gBACZ,SAAS,EAAE,QAAQ;gBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE;aACjC,CAAC,CAAC;YAEH,IAAI;gBACF,MAAM,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAExC,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,OAAO,CAAC,uBAAS,CAAC,MAAM,EAAE,wBAAU,CAAC,KAAK,EAAE;oBAC5D,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,QAAQ;oBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE;iBACjC,CAAC,CAAC;aACJ;YAAC,OAAO,KAAK,EAAE;gBACd,4BAA4B;gBAC5B,MAAM,yBAAW,CAAC,OAAO,CACvB,uBAAS,CAAC,MAAM,EAChB,wBAAU,CAAC,KAAK,EAChB;oBACE,QAAQ,EAAE,EAAE;oBACZ,SAAS,EAAE,QAAQ;oBACnB,mBAAmB,EAAE,EAAE,OAAO,EAAE;iBACjC,EACD,KAAK,CACN,CAAC;gBACF,MAAM,KAAK,CAAC;aACb;SACF;QAAC,OAAO,SAAS,EAAE;YAClB,4DAA4D;YAC5D,MAAM,SAAS,CAAC;SACjB;IACH,CAAC;IAIM,KAAK,CAAC,OAAO,CAAC,gBAAmC;QACtD,IAAI,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;YACnC,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;SAC1D;QACD,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAC3D,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,CAAC;IAC9C,CAAC;IAEM,KAAK,CAAC,cAAc,CACzB,IAAe,EACf,OAA4B,EAC5B,KAA2B,EAC3B,gBAAmC,EACnC,kBAAqC;QAErC,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YACvB,OAAO,CAAC,4BAAgB,CAAC,KAAK,2BAAe,CAAC,IAAI,CAAC,YAAY;YAC/D,IAAI,CAAC,gBAAgB,CAAC,IAAA,wBAAiB,EAAC,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAE,CAAC,EACjF;YACA,OAAO,IAAI,CAAC,wBAAwB,CAClC,IAAI,EACJ,IAAA,wBAAiB,EAAC,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAE,EAC1D,kBAAkB,IAAI,EAAE,CACzB,CAAC;SACH;QACD,MAAM,SAAS,GAAG;YAChB,GAAG,IAAI,CAAC,SAAS;YACjB,GAAG,gBAAgB,EAAE,SAAS;SAC/B,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,eAAM,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;QACzC,OAAO,MAAM,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;IAEM,KAAK,CAAC,cAAc,CAAC,WAAmB,EAAE,OAAY;QAC3D,MAAM,0BAA0B,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,WAAW,CAAC,CAAC;QACxF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,sCAAsC,CACtE,OAAO,EACP,0BAA8F,CAC/F,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,OAAO,EAAE,0BAA0B,CAAC,CAAC;QACtG,IAAI,YAAY,EAAE;YAChB,MAAM,gBAAgB,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAe,CAAC;YACjF,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,EAAE,cAAc,CAAC,CAAC;SAChE;IACH,CAAC;IAEO,KAAK,CAAC,4BAA4B,CAAC,WAAmB;QAC5D,MAAM,2BAA2B,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CACpD;YACE,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,iBAAiB;YAC5C,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,WAAW;YAC9C,CAAC,2BAAe,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,2BAAe,CAAC,IAAI,CAAC,wBAAwB;SACrF,EACD,+DAA+D,WAAW,EAAE,CAC7E,CAAmB,CAAC;QACrB,IAAI,2BAA2B,EAAE;YAC/B,OAAO,2BAA2B,CAAC;SACpC;QACD,MAAM,IAAI,KAAK,CAAC,+DAA+D,WAAW,EAAE,CAAC,CAAC;IAChG,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,cAAsB,EACtB,cAA0B,EAC1B,gBAAmC;QAEnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QACrE,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,cAAc,EAAE,gBAAgB,CAAC,CAAC;IACpF,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,cAAsB;QACzD,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CACvB,EAAE,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,EACvF,iCAAiC,cAAc,iBAAiB,CACjE,CAAe,CAAC;IACnB,CAAC;IAEM,KAAK,CAAC,iBAAiB,CAC5B,UAAsB,EACtB,cAA0B,EAC1B,gBAAmC;QAEnC,IAAI,CAAC,eAAe,EAAE,iBAAiB,EAAE,CAAC,UAAU,CAAC,0BAAc,CAAC,EAAE,cAAc,CAAC,CAAC;QACtF,IAAI,gBAAgB,EAAE,SAAS,EAAE,iBAAiB,EAAE;YAClD,eAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,sBAAsB,EAAE,cAAc,CAAC,CAAC;YACjE,gBAAgB,CAAC,SAAS,CAAC,iBAAiB,CAAC,UAAU,CAAC,0BAAc,CAAC,EAAE,cAAc,CAAC,CAAC;SAC1F;QACD,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,oCAAoC,CAC1E,UAAU,CAAC,0BAAc,CAAC,EAC1B,cAAc,CACf,CAAC;QACF,eAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7D,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;QAC7D,IAAI,cAAc,EAAE;YAClB,MAAM,IAAI,CAAC,2CAA2C,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;SACpF;QAED,IAAI;YACF,0DAA0D;YAC1D,4DAA4D;YAC5D,IAAI,OAAO,EAAE;gBACX,MAAM,yBAAW,CAAC,qCAAqC,CAAC,CAAC,cAAc,CAAa,EAAE,OAAO,CAAC,CAAC;aAChG;YAED,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,OAAO,CAAC,CAAC;YAEtG,IAAI,cAAc,EAAE;gBAClB,MAAM,IAAI,CAAC,kDAAkD,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;aAC5F;YAED,uDAAuD;YACvD,IAAI,OAAO,EAAE;gBACX,MAAM,yBAAW,CAAC,oCAAoC,CAAC,CAAC,cAAc,CAAa,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;aAChH;YAED,IAAI,CAAC,eAAe,EAAE,eAAe,EAAE,CAAC,UAAU,CAAC,0BAAc,CAAC,EAAE,eAAe,CAAC,CAAC;YACrF,IAAI,gBAAgB,EAAE,SAAS,EAAE,eAAe,EAAE;gBAChD,gBAAgB,CAAC,SAAS,CAAC,eAAe,CAAC,UAAU,CAAC,0BAAc,CAAC,EAAE,eAAe,CAAC,CAAC;aACzF;YAED,OAAO,eAAe,CAAC;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,uDAAuD;YACvD,IAAI,OAAO,EAAE;gBACX,MAAM,yBAAW,CAAC,oCAAoC,CAAC,CAAC,cAAc,CAAa,EAAE,OAAO,EAAE,KAAc,CAAC,CAAC;aAC/G;YACD,MAAM,KAAK,CAAC;SACb;IACH,CAAC;IAEO,KAAK,CAAC,oCAAoC,CAChD,YAAoB,EACpB,IAAgB;QAEhB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,OAAiB,EAAE,CAAC,CAAC;YAC1E,IAAI,CAAC,OAAO,EAAE;gBACZ,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,CAAC,OAAiB,aAAa,CAAC,CAAC;aACjE;YACD,OAAO,EAAE,OAAO,EAAE,OAA4B,EAAE,CAAC;SAClD;QACD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,YAAY,EAAE,IAAI,CAAC,MAAgB,CAAC,CAAC;YAC5F,IAAI,OAAO,EAAE;gBACX,OAAO,EAAE,OAAO,EAAE,CAAC;aACpB;SACF;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,OAAiB,EAAE,CAAC,CAAC;YAClE,MAAM,mBAAmB,GAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAyB,CAAC,0BAAc,CAAC,CAAC;YAC/G,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;YAC/F,IAAI,OAAO,EAAE;gBACX,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;aAC7B;SACF;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC;YACpC,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,OAAO;YAClC,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY;YAC/C,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,IAAA,SAAG,EAAC,IAAA,eAAM,GAAE,CAAC;YACjD,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAA,SAAG,EAAC,IAAA,eAAM,GAAE,CAAC;SAC7C,CAAC,CAAC;QACH,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACzB,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAsB,EAAE,CAAC;SACtD;QACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;SAChF;QACD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,KAAK,CAAC,0BAA0B,IAAI,CAAC,MAAgB,mBAAmB,YAAY,aAAa,CAAC,CAAC;SAC9G;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,CAAC,OAAiB,mBAAmB,YAAY,aAAa,CAAC,CAAC;SAChH;QACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,cAAc,CACzB,OAAgB,EAChB,IAAgB,EAChB,gBAAmC,EACnC,OAAgB;QAEhB,IAAI,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAAC,OAAO,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACjF,IAAI,WAAgC,CAAC;QACrC,IAAI,2BAAe,CAAC,IAAI,CAAC,YAAY,IAAI,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,iBAAiB,IAAI,OAAO,EAAE;YACrG,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;YAClG,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAClE,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,EACzB,OAA4B,EAC5B,gBAAgB,CACjB,CAAC;YACF,eAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YACpD,WAAW,GAAG,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;SAChG;aAAM;YACL,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAClE,IAAI,EACJ,OAA4B,EAC5B,gBAAgB,CACjB,CAAC;YACF,eAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;YACpD,IAAI,2BAAe,CAAC,IAAI,CAAC,WAAW,IAAI,OAAO,IAAI,2BAAe,CAAC,IAAI,CAAC,gBAAgB,IAAI,OAAO,EAAE;gBACnG,WAAW,GAAG,CAAC,MAAM,IAAI,CAAC,uBAAuB,CAC/C,OAAO,EACP,UAAU,EACV,IAAI,EACJ,OAAQ,EACR,gBAAgB,CACjB,CAAe,CAAC;aAClB;iBAAM,IAAI,2BAAe,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,EAAE;gBACjD,WAAW,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAA4B,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;aAC3G;iBAAM,IAAI,2BAAe,CAAC,IAAI,CAAC,QAAQ,IAAI,OAAO,EAAE;gBACnD,WAAW,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAA8B,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;aAC/G;iBAAM;gBACL,WAAW,GAAG,UAAU,CAAC;aAC1B;SACF;QACD,OAAO,MAAM,IAAI,CAAC,2CAA2C,CAC3D,WAAwB,EACxB,OAAoC,EACpC,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,gBAAmC;QACxD,OAAO,gBAAgB,EAAE,iBAAiB,KAAK,SAAS;YACtD,CAAC,CAAC,IAAI,CAAC,iBAAiB,KAAK,IAAI;YACjC,CAAC,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,OAAgB,EAChB,UAAsB,EACtB,YAAwB,EACxB,OAAe,EACf,gBAAmC;QAEnC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,YAAY,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QAC1G,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACjH,eAAM,CAAC,WAAW,EAAE,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACxE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAA0B,EAC1B,IAAgB,EAChB,gBAAmC;QAEnC,MAAM,4BAA4B,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAE,CAAC,CAAC;QAChG,MAAM,oBAAoB,GAAG;YAC3B,4BAA4B,EAAE,IAAI;YAClC,6BAA6B,EAAE,EAAE;YACjC,eAAe,EAAE,EAAE;SACpB,CAAC;QAEF,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,4BAA4B,EAAE,oBAAoB,EAAE,gBAAgB,CAAC,CAAC;IAChH,CAAC;IAEO,cAAc,CAAC,IAAsE;QAC3F,IAAI,CAAC,CAAC,oBAAQ,IAAI,IAAI,CAAC,EAAE;YACvB,OAAO;gBACL,IAAI,CAAC,eAAG,CAAC,KAAK,CAAC;gBACf,GAAG,IAAA,2CAA4B,EAAC,IAAI,CAAC,eAAG,CAAC,IAAI,CAAwB,CAAC,KAAK,eAAG,CAAC,GAAG;oBAChF,CAAC,CAAC,EAAE;oBACJ,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAG,CAAC,IAAI,CAA+B,CAAC;aACtE,CAAC;SACH;QACD,OAAO,IAAI,CAAC,oBAAQ,CAAC,CAAC;IACxB,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,IAAe,EACf,IAA0B,EAC1B,gBAAmC;QAEnC,MAAM,qBAAqB,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAC7F,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;YACnB,OAAO,MAAM,IAAI,CAAC,qBAAqB,CACrC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EACb;gBACE,GAAG,IAAI;gBACP,6BAA6B,EAAE,WAAyB;gBACxD,eAAe,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,IAAI,EAAE,EAAE,WAAyB,CAAC;aAC5E,EACD,gBAAgB,CACjB,CAAC;SACH;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,iBAA0B,EAC1B,YAAwB,EACxB,UAAsB,EACtB,gBAAmC;QAEnC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;QACpH,IAAI,YAAY,EAAE;YAChB,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,MAAM,EAAE;gBACtD,MAAM,IAAI,CAAC,8BAA8B,CAAC,UAAU,CAAC,CAAC;gBACtD,OAAO,EAAE,CAAC;aACX;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,IAAI,EAAE;gBACpD,OAAO,MAAM,IAAI,CAAC,sCAAsC,CAAC,UAAU,CAAC,CAAC;aACtE;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,OAAO,EAAE;gBACvD,OAAO,MAAM,IAAI,CAAC,yCAAyC,CAAC,UAAU,CAAC,CAAC;aACzE;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,OAAO,EAAE;gBACvD,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;aACvC;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,IAAI,EAAE;gBACpD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aACpC;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,KAAK,EAAE;gBACrD,OAAO,MAAM,IAAI,CAAC,mCAAmC,CAAC,UAAU,CAAC,CAAC;aACnE;YACD,IAAI,YAAY,KAAK,2BAAe,CAAC,UAAU,CAAC,MAAM,EAAE;gBACtD,OAAO,MAAM,IAAI,CAAC,oCAAoC,CAAC,UAAU,CAAC,CAAC;aACpE;YAED,gCAAgC;YAChC,IAAI,6CAAwB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;gBAC9C,OAAO,MAAM,6CAAwB,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;aACjG;YAED,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,UAAU,EAAE,gBAAgB,CAAC,CAAC;SACxF;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAEO,KAAK,CAAC,6BAA6B,CACzC,iBAA0B,EAC1B,IAAgB,EAChB,gBAAmC;QAEnC,IAAI,2BAAe,CAAC,IAAI,CAAC,oBAAoB,IAAI,iBAAiB,EAAE;YAClE,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,cAAc,CAC9C,IAAI,EACJ,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,oBAAoB,CAAe,EAC1E,IAAA,wBAAiB,EAAC,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,EACpF,gBAAgB,CACjB,CAAC;YACF,OAAO,EAAE,GAAG,IAAI,EAAE,sBAAsB,EAAE,cAA4B,EAAE,CAAC;SAC1E;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,gBAAgB,CAAC,MAA2B;QAClD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC5C;QACD,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC3C,YAAY,CAAC,4BAAgB,CAAC,GAAG,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SAC1E;QACD,IAAI,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YACjD,YAAY,CAAC,0BAAc,CAAC,GAAG,iCAAkB,GAAI,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAY,CAAC;SAC/G;QACD,OAAO,YAAY,CAAC;IACtB,CAAC;IAEO,KAAK,CAAC,8BAA8B,CAAC,IAAyB;QACpE,IAAI,GAAG,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;YACvB,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;SACb;QACD,2FAA2F;QAC3F,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAU,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,iCAAkB,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3F,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,sCAAsC,CAAC,IAAyB;QAC5E,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YAClD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClD;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAC1D;QACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEO,KAAK,CAAC,yCAAyC,CAAC,IAAyB;QAC/E,IAAI,IAAI,CAAC,MAAM,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;YAClD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SAClD;QACD,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YACjD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAC1D;QACD,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAEO,KAAK,CAAC,mCAAmC,CAAC,IAAyB;QACzE,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,OAAO;YACL,CAAC,2BAAe,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE;gBACxC,CAAC,6BAAiB,CAAC,EAAE,KAAK;gBAC1B,CAAC,4BAAgB,CAAC,EAAE,kBAAG,CAAC,OAAO;aAChC;SACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,oCAAoC,CAAC,IAAyB;QAC1E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACvC,OAAO;YACL,CAAC,2BAAe,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE;gBACzC,CAAC,6BAAiB,CAAC,EAAE,MAAM;gBAC3B,CAAC,4BAAgB,CAAC,EAAE,kBAAG,CAAC,OAAO;aAChC;SACF,CAAC;IACJ,CAAC;IAEM,KAAK,CAAC,wBAAwB,CACnC,YAAoB,EACpB,IAAyB,EACzB,gBAAmC;QAEnC,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAe,CAAC;QAC3E,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC;IAC1E,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,OAA4B,EAC5B,IAAgB,EAChB,gBAAmC;QAEnC,MAAM,0BAA0B,GAAG,IAAA,kBAAW,EAC5C,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAA0C,CAChF,CAAC;QACF,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,0BAA0B,CAAC,GAAG,CAC5B,CAAC,iBAAiB,EAAgC,EAAE,CAClD,IAAI,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,EAAE,gBAAgB,CAAC,CACjE,CACF,CAAC;QACF,OAAO,kBAAkB,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,YAAoB,EACpB,mBAA2B;QAE3B,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC;YAChC,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,iBAAiB;YAC5C,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY;YAC/C,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,mBAAmB;SACxD,CAAC,CAAsB,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,+BAA+B,CAC3C,IAAe,EACf,OAAgB,EAChB,gBAAmC;QAEnC,IAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC7C,OAAO,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;SAC1F;QACD,IAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAC5C,OAAO,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;SACxF;QACD,OAAO,MAAM,IAAI,CAAC,cAAc,CAC9B,IAAI,EACJ,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,gBAAgB,CAAwB,EACrE,SAAS,EACT,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,aAAyB,EACzB,aAAyB,EACzB,YAAwB,EACxB,OAAe,EACf,gBAAmC,EACnC,mBAA4B;QAE5B,IAAI,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClD,OAAO,MAAM,IAAI,CAAC,8CAA8C,CAC9D,aAAa,EACb,aAAa,EACb,OAAO,EACP,mBAAmB,CACpB,CAAC;SACH;QACD,IAAI,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE;YAClD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CACrC,IAAA,2CAA4B,EAAC,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAiC,CAAE,EAC7G,gBAAgB,CACjB,CAAC;SACH;QACD,IAAI,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YACnD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAChE,IAAA,wBAAiB,EAAC,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAE,EACnE,aAAa,EACb,OAAO,EACP,gBAAgB,CACjB,CAAC;YACF,OAAO,IAAI,CAAC,yCAAyC,CAAC,QAAQ,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;SAC9F;QACD,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC9C,CAAC;IAEO,yCAAyC,CAC/C,QAAuB,EACvB,mBAA+B,EAC/B,YAAwB;QAExB,OAAO;YACL,mBAAmB;YACnB,4BAA4B,EAAE,YAAY;YAC1C,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,MAAM,EAAE;gBACN,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAChC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM;gBAC9B,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG;gBACxB,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;aACb;SAChB,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,2CAA2C,CACvD,WAAsB,EACtB,OAAkC,EAClC,gBAAmC;QAEnC,IAAI,2BAAe,CAAC,IAAI,CAAC,cAAc,IAAI,OAAO,EAAE;YAClD,OAAO,MAAM,IAAI,CAAC,cAAc,CAC9B,WAAW,EACX,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,cAAc,CAAC,EAC5C,IAAA,wBAAiB,EAAa,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAChF,gBAAgB,CACjB,CAAC;SACH;QACD,OAAO,WAAyB,CAAC;IACnC,CAAC;IAEO,KAAK,CAAC,sCAAsC,CAClD,IAAgB,EAChB,OAAyE,EACzE,gBAAmC,EACnC,iBAAiB,GAAG,KAAK;QAEzB,IAAI,2BAAe,CAAC,IAAI,CAAC,eAAe,IAAI,OAAO,EAAE;YACnD,MAAM,SAAS,GAAG,IAAA,wBAAiB,EAAS,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAE,CAAC;YAC5F,OAAO,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SACjD;QAED,IAAI,2BAAe,CAAC,IAAI,CAAC,gBAAgB,IAAI,OAAO,EAAE;YACpD,MAAM,SAAS,GAAG,IAAA,wBAAiB,EAAS,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAE,CAAC;YAC7F,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAEnE,0CAA0C;YAC1C,IAAI,KAAK,CAAC;YACV,IAAI,2BAAe,CAAC,IAAI,CAAC,qBAAqB,IAAI,OAAO,EAAE;gBACzD,MAAM,cAAc,GAAG,IAAA,wBAAiB,EAAS,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAE,CAAC;gBACvG,KAAK,GAAG,IAAI,CAAC,kBAAkB,CAAC,cAAc,EAAE,IAAI,CAAC,CAAC;aACvD;iBAAM;gBACL,+BAA+B;gBAC/B,KAAK,GAAG,IAAA,wBAAiB,EAAC,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;aAC7E;YAED,wDAAwD;YACxD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;YAC/F,OAAO,IAAA,aAAM,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;SAC9C;QAED,IAAI,2BAAe,CAAC,IAAI,CAAC,aAAa,IAAI,OAAO,EAAE;YACjD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAC1C,IAAI,EACH,OAA6B,CAAC,2BAAe,CAAC,IAAI,CAAC,aAAa,CAAE,EACnE,IAAA,wBAAiB,EAAC,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,EACnE,gBAAgB,CACjB,CAAC;YACF,OAAO,IAAA,aAAM,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,kBAAkB,CAAC,SAAiB,EAAE,IAAgB;QAC5D,MAAM,OAAO,GAAG,IAAA,wBAAQ,EAAC;YACvB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,IAAI;YACV,UAAU,EAAE,OAAO;SACpB,CAAC,CAAC;QACH,MAAM,kBAAkB,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC;QAC1E,IAAI,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC;QACvD,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,6BAAiB,IAAI,MAAM,EAAE;YACvE,MAAM,GAAG,MAAM,CAAC,6BAAiB,CAAC,CAAC;SACpC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,yCAAyC,CAAC,mBAA2B;QACjF,MAAM,wBAAwB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;YACjD,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,UAAU;YACrC,CAAC,2BAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,2BAAe,CAAC,IAAI,CAAC,OAAO;YACzD,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,mBAAmB;SACxD,CAAC,CAAC;QACH,OAAO,IAAA,wBAAiB,EAAU,wBAAwB,CAAC,2BAAe,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAE,CAAC;IAC/G,CAAC;IAEO,KAAK,CAAC,0CAA0C,CAAC,SAAiB;QACxE,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC;YAC/B,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,mCAAmC;YAC9D,CAAC,2BAAe,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS;SAC1C,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,qDAAqD;QACjE,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC;YAChC,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,UAAU;YACrC,CAAC,2BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,0CAA8B;SAC7D,CAAC,CAAe,CAAC;IACpB,CAAC;IAEO,KAAK,CAAC,4CAA4C,CACxD,mBAA2B,EAC3B,aAAqB,EACrB,2BAAkD,EAClD,aAAyB;QAEzB,MAAM,wCAAwC,GAAG,MAAM,IAAI,CAAC,qDAAqD,EAAE,CAAC;QACpH,IAAI,CAAC,wCAAwC,EAAE;YAC7C,OAAO,EAAE,CAAC;SACX;QACD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gCAAgC,CACzD,wCAAwC,CAAC,0BAAc,CAAC,EACxD,aAAa,CACd,CAAC;QACF,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO,EAAE,CAAC;SACX;QACD,MAAM,IAAI,GAAG;YACX,mBAAmB;YACnB,oCAAoC,EAAE,2BAA2B;YACjE,aAAa;SACA,CAAC;QAChB,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;QAC9G,MAAM,OAAO,GAAG,IAAA,wBAAiB,EAAa,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACjG,OAAO,OAAO,IAAI,EAAE,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,sCAAsC,CAAC,kBAA2B;QAC9E,MAAM,QAAQ,GAAG,IAAI,qDAAwB,EAAE,CAAC;QAChD,MAAM,QAAQ,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;QAClD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,2BAA2B,CAAC,YAAoB,EAAE,MAAc;QAC5E,OAAO,CAAC,MAAM,IAAI,CAAC,cAAc,CAAC;YAChC,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,iBAAiB;YAC5C,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,YAAY;YAC/C,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,IAAA,yBAAW,EAAC;gBACzC,OAAO,EAAE,IAAA,+BAAc,EAAC,EAAE,OAAO,EAAE,gBAAI,CAAC,UAAoB,EAAE,CAAC;gBAC/D,KAAK,EAAE,MAAM;aACd,CAAC;SACH,CAAC,CAAsB,CAAC;IAC3B,CAAC;IAEO,KAAK,CAAC,gCAAgC,CAC5C,IAAe,EACf,OAAgB,EAChB,gBAAmC;QAEnC,IAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;YAC9C,OAAO,IAAA,wBAAiB,EAAS,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAE,CAAC;SAC/E;QACD,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,cAAc,CACpD,IAAI,EACJ,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,iBAAiB,CAAe,EAC7D,SAAS,EACT,gBAAgB,CACjB,CAAC;QACF,OAAO,IAAA,wBAAiB,EAAS,oBAAoB,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAE,CAAC;IAC7F,CAAC;IAEO,KAAK,CAAC,2CAA2C,CACvD,gBAAqB,EACrB,UAAsB;QAEtB,IAAI,sBAAsB,GAAG,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrE,IAAI,sBAAsB,EAAE,CAAC,0BAAc,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAChG,sBAAsB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,sBAAsB,CAAC,0BAAc,CAAC,EAAE,CAAC,CAAC;SAC5F;QACD,IAAI,gBAAgB,IAAI,sBAAsB,EAAE;YAC9C,MAAM,wBAAwB,GAAG;gBAC/B,UAAU,EAAE,IAAA,wBAAiB,EAAoB,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAChG,CAAC,4BAAgB,CAAC,EAAE,2BAAe,CAAC,IAAI,CAAC,MAAM;gBAC/C,GAAG,gBAAgB;aACpB,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,wBAAwB,EAAE,sBAAsB,CAAC,CAAC;YAClH,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACpB,IAAI,CAAC,0BAA0B,CAC7B,MAAM,EACN,GAAG,IAAA,wBAAiB,EAAC,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,0CAA0C,CACvG,CAAC;aACH;SACF;IACH,CAAC;IAEO,KAAK,CAAC,sCAAsC,CAClD,WAAmB,EACnB,aAAyB,EACzB,OAAe,EACf,gBAAmC;QAEnC,MAAM,mBAAmB,GAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAyB,CAAC,0BAAc,CAAC,CAAC;QAC/G,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,yCAAyC,CAAC,mBAAmB,CAAC,CAAC;QACrG,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAAC,kBAAkB,CAAC,CAAC;QAC9F,6DAA6D;QAC7D,MAAM,2BAA2B,GAAG,MAAM,eAAe,CAAC,2CAA2C,CAAC,WAAW,CAAC,CAAC;QACnH,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,0CAA0C,CAAC,OAAO,CAAC,0BAAc,CAAC,CAAC,CAAC;QAC3G,IAAI,oBAAoB,GAAe,EAAE,CAAC;QAC1C,IAAI,mBAAmB,EAAE;YACvB,MAAM,2BAA2B,GAAG,MAAM,IAAI,CAAC,4CAA4C,CACzF,mBAAmB,EACnB,mBAAmB,EACnB,2BAA2B,EAC3B,aAAa,CACd,CAAC;YACF,IAAI,2BAA2B,IAAI,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBACtF,oBAAoB,GAAG,2BAA2B,CAAC;aACpD;SACF;QACD,MAAM,MAAM,GAAG;YACb,IAAA,wBAAiB,EAAS,mBAAmB,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC7E,IAAI,CAAC,4CAA4C,CAAC,oBAAoB,CAAC;SACxE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAChB,MAAM,aAAa,GAAG;YACpB,WAAW,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/F,WAAW,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC/F,MAAM;YACN,QAAQ,EAAE,IAAA,wBAAiB,EAAS,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;YACnF,QAAQ,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzF,QAAQ,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,EAAE,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;SAC9F,CAAC;QACF,IAAI,QAAQ,CAAC;QACb,IAAI,uBAAuD,CAAC;QAC5D,IAAI;YACF,MAAM,iBAAiB,GAAG,IAAI,CAAC,gCAAgC,CAAC,oBAAoB,CAAQ,CAAC;YAC7F,IACE,iBAAiB;gBACjB,OAAO,iBAAiB,KAAK,QAAQ;gBACrC,CAAC,KAAK,CAAC,OAAO,CAAC,iBAAiB,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,GAAG,CAAC,EACzC;gBACA,uBAAuB,GAAG,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC;aAC1D;YACD,IAAI,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,EAAE;gBAChD,uBAAuB,GAAG;oBACxB,GAAG,uBAAuB;oBAC1B,YAAY,EAAE,QAAQ;iBACvB,CAAC;aACH;YACD,QAAQ,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAC/C,WAAW,EACX,aAAa,EACb,aAAa,EACb,uBAAuB,CACxB,CAAC;SACH;QAAC,OAAO,KAAc,EAAE;YACvB,IACE,eAAK,CAAC,YAAY,CAAC,KAAK,CAAC;gBACzB,MAAM,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB,CAAC;gBAC1D,mBAAmB,EACnB;gBACA,MAAM,sBAAsB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAClE,mBAAmB,EACnB,mBAAmB,EACnB,OAAO,CACR,CAAC;gBACF,QAAQ,GAAG,MAAM,eAAe,CAAC,gBAAgB,CAC/C,WAAW,EACX,sBAAsB,EACtB,aAAa,EACb,uBAAuB,CACxB,CAAC;aACH;iBAAM;gBACL,MAAM,KAAK,CAAC;aACb;SACF;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,gCAAgC,CAAC,kBAA8B;QACrE,IAAI,WAAW,GAAe,EAAE,CAAC;QACjC,IACE,kBAAkB,CAAC,OAAO;YAC1B,OAAO,kBAAkB,CAAC,OAAO,KAAK,QAAQ;YAC9C,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC;YAClD,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAC1C;YACA,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC;SAC1C;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,4CAA4C,CAAC,kBAA8B;QACjF,MAAM,OAAO,GAAG,IAAI,CAAC,gCAAgC,CAAC,kBAAkB,CAAC,CAAC;QAC1E,IAAI,OAAO,IAAI,eAAe,IAAI,OAAO,EAAE;YACzC,MAAM,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;YAClD,IAAI,OAAO,mBAAmB,KAAK,QAAQ,EAAE;gBAC3C,OAAO,mBAAmB,CAAC;aAC5B;SACF;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,KAAiB,EAAE,mBAA2B;QAC9E,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,mBAAmB,EAAE,CAAC,CAAC;QACzE,MAAM,YAAY,GAAG,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,wBAAwB,CAAe,CAAC;QACpG,MAAM,kBAAkB,GACtB,YAAY,IAAI,IAAA,wBAAiB,EAAS,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;QAC/G,MAAM,iBAAiB,GACrB,YAAY;YACZ,IAAA,wBAAiB,EAAS,YAAY,CAAC,2BAAe,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAE,CAAC;QACtG,IAAI,YAAY,IAAI,KAAK,CAAC,QAAQ,EAAE,MAAM,KAAK,kBAAkB,EAAE;YACjE,IAAI,CAAC,iBAAiB,EAAE;gBACtB,OAAO,IAAI,CAAC;aACb;YACD,IAAI,KAAK,CAAC,QAAQ,EAAE,UAAU,IAAI,IAAI,MAAM,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE;gBACrG,OAAO,IAAI,CAAC;aACb;SACF;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,mBAA2B,EAC3B,aAAqB,EACrB,OAAe,EACf,gBAAmC;QAEnC,MAAM,uBAAuB,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC;YACjD,IAAI,EAAE,2BAAe,CAAC,IAAI,CAAC,UAAU;YACrC,CAAC,2BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,gBAAgB;SAC/C,CAAC,CAAe,CAAC;QAClB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,gCAAgC,CAAC,uBAAuB,CAAC,0BAAc,CAAC,EAAE,aAAa,CAAC,CAAC;QACpH,IAAI,CAAC,OAAO,EAAE;YACZ,MAAM,IAAI,KAAK,CACb,mCAAmC,uBAAuB,CAAC,0BAAc,CAAC,oBAAoB,aAAa,EAAE,CAC9G,CAAC;SACH;QACD,MAAM,IAAI,GAAG;YACX,YAAY,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAE;YAChG,gBAAgB,EAAE,IAAA,wBAAiB,EAAS,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAE;SACzG,CAAC;QACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAAC,IAAI,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;QAC/G,MAAM,mBAAmB,GAAG,MAAM,IAAI,CAAC,+BAA+B,CAAC,EAAE,EAAE,OAAO,EAAE,gBAAgB,CAAC,CAAC;QACtG,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAChD,mBAAmB,EACnB,aAAa,EACb,IAAI,EACJ,OAAO,EACP,gBAAgB,EAChB,mBAAmB,CACpB,CAAC;QACF,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,2CAA2C,CAC9E,cAAc,EACd,OAAoC,EACpC,gBAAgB,CACjB,CAAC;QACF,MAAM,IAAI,CAAC,kDAAkD,CAAC,iBAAiB,EAAE,uBAAuB,CAAC,CAAC;QAC1G,MAAM,WAAW,GAAG,IAAA,wBAAiB,EAAS,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACnG,MAAM,WAAW,GAAG,IAAA,wBAAiB,EAAS,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QACnG,MAAM,YAAY,GAAG,IAAA,wBAAiB,EAAS,iBAAiB,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACrG,IAAI,WAAW,EAAE;YACf,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;SACrE;QACD,IAAI,WAAW,EAAE;YACf,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,WAAW,CAAC;SACrE;QACD,IAAI,YAAY,EAAE;YAChB,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;SACvE;QACD,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACrC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IACtC,CAAC;IAEO,4CAA4C,CAAC,yBAAiC;QACpF,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAS,yBAAyB,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrG,MAAM,QAAQ,GAAG,IAAA,wBAAiB,EAAS,yBAAyB,CAAC,2BAAe,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACzG,MAAM,WAAW,GAAG,IAAA,wBAAiB,EAAS,yBAAyB,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;QAC3G,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;IAC7C,CAAC;IAEO,KAAK,CAAC,kDAAkD,CAC9D,WAAgC,EAChC,UAAsB;QAEtB,IAAI,sBAAsB,GAAG,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACtE,IAAI,sBAAsB,EAAE,CAAC,0BAAc,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;YAChG,sBAAsB,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,sBAAsB,CAAC,0BAAc,CAAC,EAAE,CAAC,CAAC;SAC5F;QACD,IAAI,MAAoC,CAAC;QACzC,IAAI,WAAW,IAAI,sBAAsB,EAAE;YACzC,IAAI,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC9B,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,EAAW,EAAE,CAAC,0BAAc,IAAI,SAAS,CAAC,EAAE;oBACzE,sBAAsB,CAAC,iBAAK,CAAC,UAAU,CAAC,GAAG,WAAW,CAAC,MAAM,CAC3D,CAAC,KAA4B,EAAE,UAAU,EAAyB,EAAE;wBAClE,IAAI,UAAU,CAAC,0BAAc,CAAC,EAAE;4BAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,0BAAc,CAAC,EAAE,UAAU,CAAC,0BAAc,CAAC,EAAE,CAAC,CAAC;yBAC9D;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC,EACD,EAAE,CACH,CAAC;iBACH;qBAAM;oBACL,MAAM,aAAa,GAAG,WAAW,CAAC,MAAM,CACtC,CAAC,KAA4B,EAAE,UAAU,EAAyB,EAAE;wBAClE,IAAI,UAAU,CAAC,4BAAgB,CAAC,EAAE;4BAChC,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,4BAAgB,CAAC,CAAC;gCACtD,CAAC,CAAC,UAAU,CAAC,4BAAgB,CAAC,CAAC,CAAC,CAAC;gCACjC,CAAC,CAAC,UAAU,CAAC,4BAAgB,CAAC,CAAC;4BACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,0BAAc,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;gCAC/C,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,0BAAc,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;6BACxC;yBACF;wBACD,OAAO,KAAK,CAAC;oBACf,CAAC,EACD,EAAE,CACH,CAAC;oBACF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;wBAC5B,sBAAsB,CAAC,iBAAK,CAAC,WAAW,CAAC,GAAG,aAAa,CAAC;qBAC3D;iBACF;gBACD,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;aAChG;iBAAM,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9C,IAAI,WAAW,CAAC,0BAAc,CAAC,EAAE;oBAC/B,sBAAsB,CAAC,iBAAK,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,0BAAc,CAAC,EAAE,WAAW,CAAC,0BAAc,CAAC,EAAE,CAAC;iBAC9F;qBAAM,IAAI,WAAW,CAAC,4BAAgB,CAAC,EAAE;oBACxC,sBAAsB,CAAC,iBAAK,CAAC,WAAW,CAAC,GAAG;wBAC1C,CAAC,0BAAc,CAAC,EAAE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,4BAAgB,CAAC,CAAC;4BAC5D,CAAC,CAAC,WAAW,CAAC,4BAAgB,CAAC,CAAC,CAAC,CAAC;4BAClC,CAAC,CAAC,WAAW,CAAC,4BAAgB,CAAE;qBACnC,CAAC;iBACH;gBACD,MAAM,GAAG,MAAM,IAAI,CAAC,qCAAqC,CAAC,WAAW,EAAE,sBAAsB,CAAC,CAAC;aAChG;SACF;QAED,IAAI,MAAM,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE;YAC/B,MAAM,IAAI,KAAK,CACb,gBACE,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,0BAAc,CACnE,iCAAiC,CAClC,CAAC;SACH;IACH,CAAC;IAEO,KAAK,CAAC,qCAAqC,CACjD,KAA0B,EAC1B,KAAiB;QAEjB,MAAM,YAAY,GAAG,MAAM,IAAA,2BAAoB,EAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACxF,MAAM,UAAU,GAAG,MAAM,IAAA,2BAAoB,EAAC,KAAK,CAAC,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,4BAAc,CAAC,UAAU,CAAC,CAAC;QACjD,OAAO,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IAC1C,CAAC;IAEO,KAAK,CAAC,8CAA8C,CAC1D,aAAyB,EACzB,mBAA+B,EAC/B,OAAe,EACf,mBAA4B;QAE5B,MAAM,mBAAmB,GAAI,OAAO,CAAC,2BAAe,CAAC,IAAI,CAAC,WAAW,CAAyB,CAAC,0BAAc,CAAC,CAAC;QAC/G,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,yCAAyC,CAAC,mBAAmB,CAAC,CAAC;QACrG,mBAAmB,KAAnB,mBAAmB,GAAK,MAAM,IAAI,CAAC,0CAA0C,CAAC,OAAO,CAAC,0BAAc,CAAC,CAAC,EAAC;QACvG,IAAI,aAAyC,CAAC;QAC9C,IAAI,mBAAmB,EAAE;YACvB,aAAa,GAAG,IAAI,CAAC,4CAA4C,CAAC,mBAAmB,CAAC,CAAC;YACvF,mBAAmB,CAAC,SAAS,GAAG,IAAA,wBAAiB,EAAS,mBAAmB,CAAC,2BAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAE,CAAC;SAChH;aAAM;YACL,aAAa,GAAG,EAAE,CAAC;SACpB;QACD,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,sCAAsC,CAAC,kBAAkB,CAAC,CAAC;QAC9F,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,0BAA0B,CAC/D,IAAA,wBAAiB,EAAC,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,UAAU,CAAC,CAAE,EAClE,IAAA,wBAAiB,EAAC,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAE,EACjE,IAAA,wBAAiB,EAAC,aAAa,CAAC,2BAAe,CAAC,IAAI,CAAC,KAAK,CAAC,CAAE,EAC7D,aAAa,EACb,mBAAmB,CACpB,CAAC;QACF,IAAI,cAAc,IAAI,QAAQ,IAAI,kBAAkB,IAAI,QAAQ,EAAE;YAChE,OAAO;gBACL,IAAI,EAAE,QAAiC;gBACvC,mBAAmB;aACpB,CAAC;SACH;QACD,OAAO,IAAI,CAAC,yCAAyC,CAAC,QAAQ,EAAE,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;IAC5G,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,YAAoB,EACpB,gBAAmC;QAEnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC;QAC3D,IAAI,UAAU,CAAC,4BAAgB,CAAC,KAAK,2BAAe,CAAC,IAAI,CAAC,cAAc,EAAE;YACxE,MAAM,IAAI,GAAG,IAAI,CAAC,yBAAyB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;YAC1E,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,EAAE,EAAC,CAAC;SACzC;QACD,MAAM,IAAI,KAAK,CAAC,mBAAmB,UAAU,CAAC,4BAAgB,CAAC,oBAAoB,CAAC,CAAC;IACvF,CAAC;IAEO,yBAAyB,CAAC,UAAsB,EAAE,gBAAmC;QAC3F,IAAI,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YAC3C,MAAM,WAAW,GAAG,IAAA,wBAAiB,EAAS,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAE,CAAC;YACxF,OAAO,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,gBAAgB,CAAC,CAAC;SAClE;QACD,OAAO,IAAA,wBAAiB,EAAa,UAAU,CAAC,2BAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAE,CAAC;IAC/E,CAAC;IAEO,qBAAqB,CAAC,MAAc,EAAE,gBAAmC;QAC/E,MAAM,UAAU,GAAG;YACjB,GAAG,IAAI,CAAC,UAAU;YAClB,GAAG,gBAAgB,EAAE,UAAU;SAChC,CAAC;QACF,IAAI,MAAM,IAAI,UAAU,EAAE;YACxB,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;gBAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;aACzB;YACD,OAAO,IAAI,CAAC;SACb;QACD,0DAA0D;QAC1D,sCAAsC;QACtC,MAAM,IAAI,KAAK,CAAC,kCAAkC,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;IAEO,0BAA0B,CAAC,MAAwB,EAAE,YAAoB;QAC/E,MAAM,cAAc,GAAG,IAAI,CAAC,0BAA0B,CAAC,MAAM,CAAC,CAAC;QAC/D,MAAM,IAAI,KAAK,CAAC,GAAG,YAAY,OAAO,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACrE,CAAC;IAEO,0BAA0B,CAAC,MAAwB;QACzD,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE;YACnC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC/B,MAAM,OAAO,GAAG,GAAG,SAAS,oBAAoB,MAAM,CAAC,yBAAyB,EAAE,KAAK,EAAE,CAAC;gBAC1F,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC9B;iBAAM;gBACL,MAAM,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAU,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC9F,MAAM,OAAO,GAAG,GAAG,SAAS,KAAK,cAAc,EAAE,CAAC;gBAClD,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;aAC9B;SACF;QACD,OAAO,cAAc,CAAC;IACxB,CAAC;IAEO,qBAAqB,CAAC,gBAAmC;QAC/D,OAAO,OAAO,CAAC,gBAAgB,IAAI,QAAQ,IAAI,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC9F,CAAC;IAEO,gBAAgB,CAAC,IAAY;QACnC,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,KAAK,CAAC;SACd;QACD,sDAAsD;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,kEAAkE;QAClE,MAAM,aAAa,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAE5E,IAAI,aAAa,EAAE;YACjB,IAAI;gBACF,0DAA0D;gBAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpB,OAAO,KAAK,CAAC;aACd;YAAC,MAAM;gBACN,8DAA8D;gBAC9D,6BAA6B;aAC9B;SACF;QAED,oEAAoE;QACpE,MAAM,UAAU,GAAG;YACjB,kCAAkC;YAClC,0BAA0B;YAC1B,wBAAwB;YACxB,wBAAwB;YACxB,SAAS;YACT,UAAU;YACV,YAAY;YACZ,sBAAsB;YACtB,qBAAqB;YACrB,0BAA0B;YAC1B,gBAAgB,CAAC,WAAW;SAC7B,CAAC;QAEF,iDAAiD;QACjD,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3D,CAAC;IAEO,gBAAgB,CAAC,MAAW;QAClC,gCAAgC;QAChC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,KAAK,SAAS,EAAE;YAC3C,OAAO,EAAE,CAAC;SACX;QAED,oEAAoE;QACpE,IACE,OAAO,MAAM,KAAK,QAAQ;YAC1B,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YACtB,CAAC,MAAM,CAAC,0BAAc,CAAC,KAAK,SAAS;gBACnC,MAAM,CAAC,4BAAgB,CAAC,KAAK,SAAS;gBACtC,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS;gBAChC,MAAM,CAAC,QAAQ,CAAC,KAAK,SAAS,CAAC,EACjC;YACA,OAAO,MAAoB,CAAC;SAC7B;QAED,oCAAoC;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;YACzB,8CAA8C;YAC9C,MAAM,cAAc,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACvC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE;oBAC7C,yDAAyD;oBACzD,IAAI,CAAC,IAAI,CAAC,4BAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,0BAAc,CAAC,IAAI,CAAC,IAAI,CAAC,6BAAiB,CAAC,EAAE;wBAChF,OAAO,EAAE,CAAC,4BAAgB,CAAC,EAAE,YAAY,EAAE,GAAG,IAAI,EAAE,CAAC;qBACtD;oBACD,OAAO,IAAI,CAAC;iBACb;gBACD,4CAA4C;gBAC5C,OAAO,EAAE,CAAC,6BAAiB,CAAC,EAAE,IAAI,EAAE,CAAC;YACvC,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,UAAU,EAAE;oBACV,GAAG,EAAE,4BAAa;iBACnB;gBACD,QAAQ,EAAE,cAAc;aACzB,CAAC;SACH;QAED,oDAAoD;QACpD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;YAC9B,OAAO;gBACL,CAAC,6BAAiB,CAAC,EAAE,MAAM;aAC5B,CAAC;SACH;QAED,8CAA8C;QAC9C,iEAAiE;QACjE,OAAO;YACL,CAAC,4BAAgB,CAAC,EAAE,YAAY;YAChC,UAAU,EAAE;gBACV,GAAG,EAAE,4BAAa;aACnB;YACD,GAAG,MAAM;SACV,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,IAAe,EACf,IAAY,EACZ,iBAAmC;QAEnC,IAAI;YACF,8BAA8B;YAC9B,MAAM,gBAAgB,GAAqB;gBACzC,OAAO,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;gBACvB,YAAY,EAAE,MAAM;gBACpB,YAAY,EAAE,IAAI;gBAClB,cAAc,EAAE,EAAE;gBAClB,QAAQ,EAAE,IAAI;gBACd,SAAS,EAAE,IAAI;gBACf,SAAS,EAAE,IAAI;gBACf,GAAG,iBAAiB;aACrB,CAAC;YAEF,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE;gBACtB,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;aAC9F;YAED,mBAAmB;YACnB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CACrD,IAAI,EACJ,IAA2B,EAC3B,gBAAgB,CACjB,CAAC;YAEF,0BAA0B;YAC1B,IAAI,eAAe,EAAE,KAAK,EAAE;gBAC1B,MAAM,IAAI,KAAK,CAAC,yBAAyB,eAAe,CAAC,KAAK,EAAE,OAAO,IAAI,eAAe,EAAE,CAAC,CAAC;aAC/F;YAED,qCAAqC;YACrC,OAAO,IAAI,CAAC,gBAAgB,CAAC,eAAe,EAAE,MAAM,IAAI,eAAe,CAAC,CAAC;SAC1E;QAAC,OAAO,KAAc,EAAE;YACvB,MAAM,IAAI,KAAK,CACb,yCAAyC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAClG,CAAC;SACH;IACH,CAAC;IAED,+BAA+B;IAC/B,4EAA4E;IAC5E,IAAI,KAAK;QACP,OAAO,yBAAW,CAAC;IACrB,CAAC;CACF;AAhpDD,8BAgpDC"}
|
|
1
|
+
{"version":3,"file":"SklEngine.js","sourceRoot":"","sources":["../src/SklEngine.ts"],"names":[],"mappings":"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"}
|