ds-mcp-flowise 1.2.4 → 1.2.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +15 -1
- package/dist/index.js +212 -65
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +222 -65
package/README.md
CHANGED
|
@@ -225,6 +225,7 @@ Then in your MCP config:
|
|
|
225
225
|
| `get_usage_guide` | **CALL THIS FIRST.** Returns comprehensive instructions for AI assistants on how to properly use the MCP server. |
|
|
226
226
|
|
|
227
227
|
The `get_usage_guide` tool returns:
|
|
228
|
+
- **ABSOLUTE_RULES** - Non-negotiable rules that MUST be followed (see below)
|
|
228
229
|
- **Warnings** about corrupted chatflows and Flowise UI crashes from malformed data
|
|
229
230
|
- **Workflow** - step-by-step process for building valid chatflows
|
|
230
231
|
- **Critical rules** - what you must and must not do
|
|
@@ -234,6 +235,18 @@ The `get_usage_guide` tool returns:
|
|
|
234
235
|
- **Common mistakes** - specific errors to avoid
|
|
235
236
|
- **Example workflow** - concrete example of swapping a node type
|
|
236
237
|
|
|
238
|
+
### ⚠️ ABSOLUTE RULES for AI Assistants
|
|
239
|
+
|
|
240
|
+
**These rules are embedded in `get_usage_guide` but are critical enough to highlight here:**
|
|
241
|
+
|
|
242
|
+
1. **NODE STRUCTURE IS SACRED** - Never modify, simplify, reorganize, or omit ANY part of a node structure from `get_node_schema`. The schema is extracted directly from Flowise source code - every field exists for a reason.
|
|
243
|
+
|
|
244
|
+
2. **CREDENTIAL FIELD IS REQUIRED WHEN PRESENT** - If `get_node_schema` returns a `credential` field for a node (like Google Calendar, Gmail, OpenAI nodes), that field MUST be included in your output. This is how users configure authentication. Omitting it makes the node **completely unusable**.
|
|
245
|
+
|
|
246
|
+
3. **ONLY FILL VALUES YOU KNOW** - Only populate the `inputs` object with values you actually have. Leave everything else as empty string or default. Your job is to create the structure - the user configures values in the Flowise UI.
|
|
247
|
+
|
|
248
|
+
4. **DO NOT "IMPROVE" OR "SIMPLIFY"** - Do not try to clean up, optimize, or reorganize the node structure. Use it exactly as returned by `get_node_schema`.
|
|
249
|
+
|
|
237
250
|
### Node Discovery
|
|
238
251
|
|
|
239
252
|
| Tool | Description |
|
|
@@ -318,12 +331,13 @@ npm run build
|
|
|
318
331
|
|
|
319
332
|
## Known Issues
|
|
320
333
|
|
|
321
|
-
All previously reported issues have been fixed
|
|
334
|
+
All previously reported issues have been fixed:
|
|
322
335
|
|
|
323
336
|
- ✅ `flowise_create_chatflow` now includes `type` parameter (CHATFLOW, AGENTFLOW, MULTIAGENT, ASSISTANT)
|
|
324
337
|
- ✅ Node `baseClasses` are now enriched from marketplace templates
|
|
325
338
|
- ✅ Input classification (inputAnchors vs inputParams) fixed for `asyncOptions` types
|
|
326
339
|
- ✅ Edge and output anchor ID formats now match Flowise conventions
|
|
340
|
+
- ✅ **NEW:** `get_usage_guide` now includes ABSOLUTE_RULES with explicit guidance about credential fields and node structure preservation
|
|
327
341
|
|
|
328
342
|
## Troubleshooting
|
|
329
343
|
|
package/dist/index.js
CHANGED
|
@@ -183,7 +183,18 @@ function createFlowiseNode(id, nodeType, position, inputValues = {}) {
|
|
|
183
183
|
const inputAnchors = [];
|
|
184
184
|
const inputs = {};
|
|
185
185
|
// Types that are parameters (not connection anchors)
|
|
186
|
-
|
|
186
|
+
// IMPORTANT: 'credential' must be in paramTypes - credentials appear in inputParams, not inputAnchors
|
|
187
|
+
const paramTypes = ['string', 'number', 'boolean', 'password', 'options', 'asyncOptions', 'json', 'code', 'file', 'credential'];
|
|
188
|
+
// Handle credential field if it exists (defined separately from inputs in Flowise)
|
|
189
|
+
if (nodeInfo.credential) {
|
|
190
|
+
inputParams.push({
|
|
191
|
+
label: nodeInfo.credential.label || 'Connect Credential',
|
|
192
|
+
name: nodeInfo.credential.name || 'credential',
|
|
193
|
+
type: 'credential',
|
|
194
|
+
credentialNames: nodeInfo.credential.credentialNames || [],
|
|
195
|
+
id: `${id}-input-credential-credential`
|
|
196
|
+
});
|
|
197
|
+
}
|
|
187
198
|
for (const input of (nodeInfo.inputs || [])) {
|
|
188
199
|
const isAnchor = !paramTypes.includes(input.type);
|
|
189
200
|
if (isAnchor) {
|
|
@@ -626,22 +637,124 @@ function getNodeSchema(name) {
|
|
|
626
637
|
WHERE node_name = ?
|
|
627
638
|
ORDER BY additional_params, input_label
|
|
628
639
|
`, [name]);
|
|
629
|
-
const
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
640
|
+
const baseClasses = JSON.parse(node.base_classes || '[]');
|
|
641
|
+
const credential = node.credential ? JSON.parse(node.credential) : null;
|
|
642
|
+
// Use a placeholder node ID - AI should replace "0" with their desired suffix
|
|
643
|
+
const nodeId = `${name}_0`;
|
|
644
|
+
// Types that are parameters (UI fields), not connection anchors
|
|
645
|
+
const paramTypes = ['string', 'number', 'boolean', 'password', 'options', 'asyncOptions', 'json', 'code', 'file', 'credential'];
|
|
646
|
+
const inputParams = [];
|
|
647
|
+
const inputAnchors = [];
|
|
648
|
+
const inputsObj = {};
|
|
649
|
+
// Add credential to inputParams if it exists
|
|
650
|
+
if (credential) {
|
|
651
|
+
inputParams.push({
|
|
652
|
+
label: credential.label || 'Connect Credential',
|
|
653
|
+
name: credential.name || 'credential',
|
|
654
|
+
type: 'credential',
|
|
655
|
+
credentialNames: credential.credentialNames || [],
|
|
656
|
+
id: `${nodeId}-input-credential-credential`
|
|
657
|
+
});
|
|
658
|
+
}
|
|
659
|
+
// Process each input field
|
|
660
|
+
for (const input of inputs) {
|
|
661
|
+
const inputType = input.input_type;
|
|
662
|
+
const inputName = input.input_name;
|
|
663
|
+
const isParam = paramTypes.includes(inputType);
|
|
664
|
+
if (isParam) {
|
|
665
|
+
// This is a UI parameter (text field, dropdown, etc.)
|
|
666
|
+
const param = {
|
|
667
|
+
label: input.input_label,
|
|
668
|
+
name: inputName,
|
|
669
|
+
type: inputType,
|
|
670
|
+
id: `${nodeId}-input-${inputName}-${inputType}`
|
|
671
|
+
};
|
|
672
|
+
if (input.description)
|
|
673
|
+
param.description = input.description;
|
|
674
|
+
if (input.optional)
|
|
675
|
+
param.optional = true;
|
|
676
|
+
if (input.default_value !== null)
|
|
677
|
+
param.default = input.default_value;
|
|
678
|
+
if (input.options)
|
|
679
|
+
param.options = JSON.parse(input.options);
|
|
680
|
+
if (input.additional_params)
|
|
681
|
+
param.additionalParams = true;
|
|
682
|
+
inputParams.push(param);
|
|
683
|
+
inputsObj[inputName] = input.default_value !== null ? input.default_value : '';
|
|
684
|
+
}
|
|
685
|
+
else {
|
|
686
|
+
// This is a connection anchor (connects to another node's output)
|
|
687
|
+
const anchor = {
|
|
688
|
+
label: input.input_label,
|
|
689
|
+
name: inputName,
|
|
690
|
+
type: inputType,
|
|
691
|
+
id: `${nodeId}-input-${inputName}-${inputType}`
|
|
692
|
+
};
|
|
693
|
+
if (input.optional)
|
|
694
|
+
anchor.optional = true;
|
|
695
|
+
if (input.description)
|
|
696
|
+
anchor.description = input.description;
|
|
697
|
+
inputAnchors.push(anchor);
|
|
698
|
+
inputsObj[inputName] = '';
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
// Build outputAnchors
|
|
702
|
+
const typeChain = baseClasses.join('|');
|
|
703
|
+
const outputAnchors = [{
|
|
704
|
+
id: `${nodeId}-output-${name}-${typeChain}`,
|
|
705
|
+
name: name,
|
|
706
|
+
label: node.label,
|
|
707
|
+
description: node.description,
|
|
708
|
+
type: typeChain.replace(/\|/g, ' | ') // Format for display: "Type1 | Type2"
|
|
709
|
+
}];
|
|
710
|
+
// Return a ready-to-use node template
|
|
711
|
+
const nodeTemplate = {
|
|
712
|
+
id: nodeId,
|
|
713
|
+
position: { x: 0, y: 0 },
|
|
714
|
+
type: 'customNode',
|
|
715
|
+
width: 300,
|
|
716
|
+
height: Math.max(300, 150 + (inputParams.length + inputAnchors.length) * 50),
|
|
717
|
+
data: {
|
|
718
|
+
id: nodeId,
|
|
719
|
+
label: node.label,
|
|
720
|
+
version: node.version,
|
|
721
|
+
name: name,
|
|
722
|
+
type: node.type,
|
|
723
|
+
baseClasses: baseClasses,
|
|
724
|
+
category: node.category,
|
|
725
|
+
description: node.description,
|
|
726
|
+
inputParams: inputParams,
|
|
727
|
+
inputAnchors: inputAnchors,
|
|
728
|
+
inputs: inputsObj,
|
|
729
|
+
outputAnchors: outputAnchors,
|
|
730
|
+
outputs: {},
|
|
731
|
+
selected: false
|
|
732
|
+
},
|
|
733
|
+
selected: false
|
|
643
734
|
};
|
|
644
|
-
return JSON.stringify(
|
|
735
|
+
return JSON.stringify({
|
|
736
|
+
node_template: nodeTemplate,
|
|
737
|
+
usage: {
|
|
738
|
+
instructions: [
|
|
739
|
+
'This is a READY-TO-USE node template. Copy it exactly into your nodes array.',
|
|
740
|
+
'ONLY modify these fields:',
|
|
741
|
+
' 1. node.id and node.data.id - change suffix (e.g., chatOpenAI_0 -> chatOpenAI_1)',
|
|
742
|
+
' 2. node.position.x and node.position.y - set canvas coordinates',
|
|
743
|
+
' 3. node.data.inputs.* - fill in your actual values (leave empty string for unconfigured)',
|
|
744
|
+
'After changing node.id, you MUST update ALL id fields that contain the old ID:',
|
|
745
|
+
' - Every inputParams[].id',
|
|
746
|
+
' - Every inputAnchors[].id',
|
|
747
|
+
' - Every outputAnchors[].id',
|
|
748
|
+
'DO NOT remove any fields. DO NOT add fields. DO NOT restructure.',
|
|
749
|
+
],
|
|
750
|
+
id_format: {
|
|
751
|
+
node_id: `${name}_<number>`,
|
|
752
|
+
inputParam_id: `${name}_<number>-input-<paramName>-<paramType>`,
|
|
753
|
+
inputAnchor_id: `${name}_<number>-input-<anchorName>-<anchorType>`,
|
|
754
|
+
outputAnchor_id: `${name}_<number>-output-${name}-${typeChain}`,
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
}, null, 2);
|
|
645
758
|
}
|
|
646
759
|
function searchNodes(searchQuery, limit = 10) {
|
|
647
760
|
const searchTerm = `%${searchQuery}%`;
|
|
@@ -967,27 +1080,60 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
967
1080
|
result = JSON.stringify({
|
|
968
1081
|
title: 'Flowise MCP Server - Usage Guide',
|
|
969
1082
|
important: 'READ THIS COMPLETELY BEFORE USING OTHER TOOLS',
|
|
1083
|
+
// ============================================================
|
|
1084
|
+
// SIMPLE RULES - get_node_schema now returns READY-TO-USE templates
|
|
1085
|
+
// ============================================================
|
|
1086
|
+
ABSOLUTE_RULES: {
|
|
1087
|
+
_READ_THIS_FIRST: '⚠️ get_node_schema returns a READY-TO-USE node_template. Copy it directly into your nodes array.',
|
|
1088
|
+
RULE_1_USE_THE_TEMPLATE: {
|
|
1089
|
+
rule: 'get_node_schema returns a node_template object. Use it EXACTLY as provided.',
|
|
1090
|
+
what_to_change: [
|
|
1091
|
+
'node.id and node.data.id - change the suffix number if needed (e.g., chatOpenAI_0 → chatOpenAI_1)',
|
|
1092
|
+
'node.position.x and node.position.y - set canvas coordinates',
|
|
1093
|
+
'node.data.inputs.* - fill in your actual configuration values',
|
|
1094
|
+
],
|
|
1095
|
+
what_NOT_to_change: [
|
|
1096
|
+
'DO NOT remove any fields',
|
|
1097
|
+
'DO NOT restructure inputParams, inputAnchors, or outputAnchors',
|
|
1098
|
+
'DO NOT omit credential fields - they are required for authentication',
|
|
1099
|
+
],
|
|
1100
|
+
},
|
|
1101
|
+
RULE_2_UPDATE_ALL_IDS_WHEN_CHANGING_NODE_ID: {
|
|
1102
|
+
rule: 'If you change node.id, you MUST update ALL internal id fields to match',
|
|
1103
|
+
fields_to_update: [
|
|
1104
|
+
'node.data.id',
|
|
1105
|
+
'Every inputParams[].id (format: {nodeId}-input-{name}-{type})',
|
|
1106
|
+
'Every inputAnchors[].id (format: {nodeId}-input-{name}-{type})',
|
|
1107
|
+
'Every outputAnchors[].id (format: {nodeId}-output-{name}-{types|joined|by|pipe})',
|
|
1108
|
+
],
|
|
1109
|
+
example: 'Changing chatOpenAI_0 to chatOpenAI_1 means updating ~20+ id fields',
|
|
1110
|
+
},
|
|
1111
|
+
RULE_3_LEAVE_UNKNOWN_VALUES_EMPTY: {
|
|
1112
|
+
rule: 'If you do not know a value, leave it as empty string ""',
|
|
1113
|
+
explanation: 'Users will configure values in the Flowise UI. Do not guess or make up values.',
|
|
1114
|
+
},
|
|
1115
|
+
},
|
|
970
1116
|
warnings: [
|
|
971
|
-
'DANGER:
|
|
972
|
-
'
|
|
973
|
-
'
|
|
974
|
-
'If you create a corrupted chatflow, you must delete it via flowise_delete_chatflow',
|
|
1117
|
+
'DANGER: Malformed node data creates CORRUPTED chatflows that CRASH the Flowise UI',
|
|
1118
|
+
'ALWAYS call validate_flow BEFORE flowise_create_chatflow',
|
|
1119
|
+
'If you create a corrupted chatflow, delete it via flowise_delete_chatflow',
|
|
975
1120
|
],
|
|
976
1121
|
workflow: [
|
|
977
|
-
'1. Call
|
|
978
|
-
'2.
|
|
979
|
-
'3.
|
|
980
|
-
'4.
|
|
981
|
-
'5.
|
|
982
|
-
'6.
|
|
1122
|
+
'1. Call get_node_schema for each node type you need - it returns a READY-TO-USE node_template',
|
|
1123
|
+
'2. Copy node_template directly into your nodes array',
|
|
1124
|
+
'3. Update node IDs if using multiple nodes of same type (update ALL internal id fields)',
|
|
1125
|
+
'4. Fill in node.data.inputs with your configuration values',
|
|
1126
|
+
'5. Set node.position.x/y for canvas layout',
|
|
1127
|
+
'6. Create edges connecting nodes (see edge_properties below)',
|
|
1128
|
+
'7. Call validate_flow to verify your flow',
|
|
1129
|
+
'8. Call flowise_create_chatflow to deploy',
|
|
983
1130
|
],
|
|
984
1131
|
critical_rules: [
|
|
985
|
-
'
|
|
986
|
-
'
|
|
987
|
-
'
|
|
988
|
-
'
|
|
989
|
-
'
|
|
990
|
-
'Edges define connections - copy the format EXACTLY from templates',
|
|
1132
|
+
'get_node_schema returns node_template - USE IT DIRECTLY, do not reconstruct',
|
|
1133
|
+
'All id fields (inputParams, inputAnchors, outputAnchors) are pre-generated - keep them',
|
|
1134
|
+
'Credentials are included in inputParams when required - never remove them',
|
|
1135
|
+
'Leave unknown input values as empty string - users configure in Flowise UI',
|
|
1136
|
+
'When changing node.id, update ALL internal id fields to match',
|
|
991
1137
|
],
|
|
992
1138
|
node_properties: {
|
|
993
1139
|
description: 'Complete list of node properties with required/optional status',
|
|
@@ -1087,6 +1233,17 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1087
1233
|
example: ['ChatOpenAI', 'BaseChatModel', 'BaseLLM'],
|
|
1088
1234
|
description: 'Inheritance chain. CRITICAL for edge connections. Get from get_node_schema.',
|
|
1089
1235
|
},
|
|
1236
|
+
credential: {
|
|
1237
|
+
note: 'Credentials are now AUTOMATICALLY included in inputParams by get_node_schema',
|
|
1238
|
+
description: 'When a node requires authentication, the credential field appears in inputParams with type "credential". Do not remove it.',
|
|
1239
|
+
example_in_inputParams: {
|
|
1240
|
+
label: 'Connect Credential',
|
|
1241
|
+
name: 'credential',
|
|
1242
|
+
type: 'credential',
|
|
1243
|
+
credentialNames: ['openAIApi'],
|
|
1244
|
+
id: 'chatOpenAI_0-input-credential-credential'
|
|
1245
|
+
},
|
|
1246
|
+
},
|
|
1090
1247
|
inputParams: {
|
|
1091
1248
|
required: true,
|
|
1092
1249
|
type: 'array',
|
|
@@ -1139,11 +1296,6 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1139
1296
|
type: 'object',
|
|
1140
1297
|
description: 'Output configuration. Usually auto-generated by Flowise.',
|
|
1141
1298
|
},
|
|
1142
|
-
credential: {
|
|
1143
|
-
required: false,
|
|
1144
|
-
type: 'string',
|
|
1145
|
-
description: 'Credential ID for nodes requiring authentication. Set in Flowise UI after import.',
|
|
1146
|
-
},
|
|
1147
1299
|
},
|
|
1148
1300
|
},
|
|
1149
1301
|
edge_properties: {
|
|
@@ -1216,42 +1368,37 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1216
1368
|
},
|
|
1217
1369
|
},
|
|
1218
1370
|
common_mistakes: [
|
|
1219
|
-
'
|
|
1220
|
-
'Removing
|
|
1221
|
-
'
|
|
1222
|
-
'
|
|
1223
|
-
'Missing
|
|
1224
|
-
'
|
|
1225
|
-
'Inventing edge IDs instead of following the exact format',
|
|
1226
|
-
'Not including data.id (must match the node id)',
|
|
1227
|
-
'Simplifying or flattening the nested data structure',
|
|
1371
|
+
'⚠️ RECONSTRUCTING nodes instead of using node_template - just copy it directly!',
|
|
1372
|
+
'⚠️ Removing inputParams, inputAnchors, or outputAnchors - NEVER remove these arrays',
|
|
1373
|
+
'⚠️ Changing node.id without updating ALL internal id fields',
|
|
1374
|
+
'⚠️ Removing credential from inputParams - this breaks authentication',
|
|
1375
|
+
'Missing position, width, or height on nodes',
|
|
1376
|
+
'Wrong edge format - use find_compatible_nodes to get correct handles',
|
|
1228
1377
|
],
|
|
1229
1378
|
example_workflow: {
|
|
1230
|
-
task: 'Build a
|
|
1379
|
+
task: 'Build a chatbot with OpenAI and Buffer Memory',
|
|
1231
1380
|
steps: [
|
|
1232
|
-
'1.
|
|
1233
|
-
'2.
|
|
1234
|
-
'3. get_node_schema("
|
|
1235
|
-
'4. Copy
|
|
1236
|
-
'5.
|
|
1237
|
-
'6.
|
|
1238
|
-
'7.
|
|
1239
|
-
'8.
|
|
1240
|
-
'9.
|
|
1241
|
-
'10. flowise_create_chatflow({ name: "...", nodes: [...], edges: [...] }) - deploy',
|
|
1381
|
+
'1. get_node_schema("chatOpenAI") - get ready-to-use node template',
|
|
1382
|
+
'2. get_node_schema("bufferMemory") - get memory node template',
|
|
1383
|
+
'3. get_node_schema("conversationChain") - get chain node template',
|
|
1384
|
+
'4. Copy each node_template into nodes array',
|
|
1385
|
+
'5. Set positions: chatOpenAI at (100,100), bufferMemory at (100,400), conversationChain at (500,200)',
|
|
1386
|
+
'6. Fill inputs: chatOpenAI_0.data.inputs.modelName = "gpt-4o-mini"',
|
|
1387
|
+
'7. Create edges connecting chatOpenAI→conversationChain and bufferMemory→conversationChain',
|
|
1388
|
+
'8. validate_flow({ nodes, edges })',
|
|
1389
|
+
'9. flowise_create_chatflow({ name: "My Chatbot", nodes, edges })',
|
|
1242
1390
|
],
|
|
1243
1391
|
},
|
|
1244
1392
|
what_you_can_safely_change: [
|
|
1245
|
-
'data.
|
|
1246
|
-
'
|
|
1247
|
-
'data.
|
|
1248
|
-
'node id (but must update all references in edges)',
|
|
1249
|
-
'position x/y coordinates',
|
|
1393
|
+
'node.id and node.data.id (but update ALL internal id fields)',
|
|
1394
|
+
'node.position.x and node.position.y',
|
|
1395
|
+
'node.data.inputs.* values',
|
|
1250
1396
|
],
|
|
1251
1397
|
what_you_must_NOT_change: [
|
|
1252
|
-
'The overall node structure
|
|
1253
|
-
'
|
|
1254
|
-
'
|
|
1398
|
+
'The overall node structure from node_template',
|
|
1399
|
+
'inputParams array - contains credential and configuration fields',
|
|
1400
|
+
'inputAnchors array - defines connection points',
|
|
1401
|
+
'outputAnchors array - defines what outputs the node provides',
|
|
1255
1402
|
'The type: "customNode" on nodes',
|
|
1256
1403
|
'The type: "buttonedge" on edges',
|
|
1257
1404
|
],
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EACL,qBAAqB,EACrB,0BAA0B,EAC1B,sBAAsB,EACtB,yBAAyB,EACzB,wBAAwB,EACxB,sBAAsB,GACvB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,SAAuB,MAAM,QAAQ,CAAC;AAC7C,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAEpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;AAE3C,+CAA+C;AAC/C,SAAS,iBAAiB;IACxB,MAAM,aAAa,GAAG;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC;QAC1C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,cAAc,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,cAAc,CAAC;KACzC,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;gBACpD,OAAO,GAAG,CAAC,OAAO,IAAI,OAAO,CAAC;YAChC,CAAC;YAAC,MAAM,CAAC;gBACP,SAAS;YACX,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,eAAe,GAAG,iBAAiB,EAAE,CAAC;AAE5C,8BAA8B;AAC9B,SAAS,OAAO;IACd,MAAM,QAAQ,GAAG;QACf,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC;KACzC,CAAC;IAEF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACrD,KAAK,MAAM,IAAI,IAAI,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBAC5B,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAChD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACnC,IAAI,GAAG,IAAI,KAAK,EAAE,CAAC;wBACjB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;oBACzC,CAAC;gBACH,CAAC;YACH,CAAC;YACD,MAAM;QACR,CAAC;IACH,CAAC;AACH,CAAC;AAED,OAAO,EAAE,CAAC;AAEV,4BAA4B;AAC5B,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;AAC1D,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;AAE1D,qBAAqB;AACrB,SAAS,gBAAgB;IACvB,MAAM,aAAa,GAAG;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC;KAC/C,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC;IACH,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;AAC5F,CAAC;AAED,2BAA2B;AAC3B,IAAI,EAAY,CAAC;AAEjB,wDAAwD;AACxD,SAAS,KAAK,CAAC,GAAW,EAAE,SAAgB,EAAE;IAC5C,MAAM,IAAI,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC7B,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpB,CAAC;IAED,MAAM,OAAO,GAAU,EAAE,CAAC;IAC1B,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpB,CAAC;IACD,IAAI,CAAC,IAAI,EAAE,CAAC;IACZ,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,6BAA6B;AAC7B,SAAS,QAAQ,CAAC,GAAW,EAAE,SAAgB,EAAE;IAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAChD,CAAC;AAED,sCAAsC;AACtC,IAAI,SAAS,GAAU,EAAE,CAAC;AAE1B,SAAS,aAAa;IACpB,MAAM,aAAa,GAAG;QACpB,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC;QAChD,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC;KAC/C,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACrB,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;YACpD,OAAO;QACT,CAAC;IACH,CAAC;AACH,CAAC;AAED,iCAAiC;AACjC,SAAS,WAAW,CAAC,QAAgB;IACnC,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;AACrG,CAAC;AAED,wDAAwD;AACxD,SAAS,iBAAiB,CACxB,YAAoB,EACpB,cAAsB,EACtB,YAAoB,EACpB,cAAsB,EACtB,eAAuB;IAEvB,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,cAAc,CAAC,CAAC;IAE/C,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;QAC/B,iDAAiD;QACjD,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,MAAM,EAAE,YAAY;YACpB,IAAI,EAAE,YAAY;YAClB,EAAE,EAAE,GAAG,YAAY,IAAI,YAAY,EAAE;YACrC,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;SACpB,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,MAAM,iBAAiB,GAAG,UAAU,CAAC,WAAW,IAAI,CAAC,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACzF,MAAM,eAAe,GAAG,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,GAAG,YAAY,WAAW,UAAU,CAAC,IAAI,IAAI,eAAe,EAAE,CAAC;IAEpF,wBAAwB;IACxB,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACpF,MAAM,UAAU,GAAG,WAAW,EAAE,IAAI,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;IAC7D,MAAM,YAAY,GAAG,GAAG,YAAY,UAAU,eAAe,IAAI,UAAU,EAAE,CAAC;IAE9E,8EAA8E;IAC9E,MAAM,MAAM,GAAG,GAAG,YAAY,IAAI,YAAY,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;IAEjF,OAAO;QACL,MAAM,EAAE,YAAY;QACpB,YAAY;QACZ,MAAM,EAAE,YAAY;QACpB,YAAY;QACZ,IAAI,EAAE,YAAY;QAClB,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;KACpB,CAAC;AACJ,CAAC;AAED,wDAAwD;AACxD,SAAS,iBAAiB,CACxB,EAAU,EACV,QAAgB,EAChB,QAAkC,EAClC,cAAmC,EAAE;IAErC,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IAEvC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,yBAAyB;QACzB,OAAO;YACL,EAAE;YACF,QAAQ;YACR,KAAK,EAAE,GAAG;YACV,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE;gBACJ,EAAE;gBACF,KAAK,EAAE,QAAQ;gBACf,OAAO,EAAE,CAAC;gBACV,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,EAAE;gBACf,MAAM,EAAE,WAAW;gBACnB,OAAO,EAAE,EAAE;gBACX,WAAW,EAAE,EAAE;gBACf,YAAY,EAAE,EAAE;gBAChB,aAAa,EAAE,EAAE;aAClB;SACF,CAAC;IACJ,CAAC;IAED,kGAAkG;IAClG,MAAM,WAAW,GAAU,EAAE,CAAC;IAC9B,MAAM,YAAY,GAAU,EAAE,CAAC;IAC/B,MAAM,MAAM,GAAwB,EAAE,CAAC;IAEvC,qDAAqD;IACrD,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;IAElH,KAAK,MAAM,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,QAAQ,EAAE,CAAC;YACb,8BAA8B;YAC9B,YAAY,CAAC,IAAI,CAAC;gBAChB,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI;gBAChC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;gBACjC,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,KAAK;gBACzB,EAAE,EAAE,GAAG,EAAE,UAAU,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;aAC9C,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC;aAAM,CAAC;YACN,sBAAsB;YACtB,WAAW,CAAC,IAAI,CAAC;gBACf,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI;gBAChC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK;gBACjC,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;gBACpC,EAAE,EAAE,GAAG,EAAE,UAAU,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE;aAC9C,CAAC,CAAC;YACH,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,SAAS;gBACxD,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;gBACzB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,8FAA8F;IAC9F,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC7E,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,aAAa,GAAU,CAAC;YAC5B,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,QAAQ;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,CAAC;oBACR,EAAE,EAAE,GAAG,EAAE,WAAW,QAAQ,CAAC,IAAI,IAAI,SAAS,EAAE;oBAChD,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI;oBACtC,IAAI,EAAE,SAAS;iBAChB,CAAC;YACF,OAAO,EAAE,QAAQ,CAAC,IAAI;SACvB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAQ;QAChB,EAAE;QACF,KAAK,EAAE,QAAQ,CAAC,KAAK,IAAI,QAAQ;QACjC,OAAO,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC;QAC9B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,IAAI,EAAE,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,EAAG,iCAAiC;QACxE,WAAW;QACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;QACjC,WAAW,EAAE,QAAQ,CAAC,WAAW,IAAI,EAAE;QACvC,WAAW;QACX,YAAY;QACZ,MAAM;QACN,aAAa;QACb,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE;QAClC,QAAQ,EAAE,KAAK;KAChB,CAAC;IAEF,OAAO;QACL,EAAE;QACF,QAAQ;QACR,KAAK,EAAE,GAAG;QACV,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;QAC5E,IAAI,EAAE,YAAY;QAClB,IAAI;QACJ,QAAQ,EAAE,KAAK;KAChB,CAAC;AACJ,CAAC;AAED,8BAA8B;AAE9B,KAAK,UAAU,iBAAiB,CAC9B,QAAgB,EAChB,SAAiB,KAAK,EACtB,IAAU;IAEV,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,GAAG,GAAG,GAAG,eAAe,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,QAAQ,EAAE,CAAC;IAEtE,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,kBAAkB;KACnC,CAAC;IAEF,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,eAAe,CAAC,GAAG,UAAU,eAAe,EAAE,CAAC;IACzD,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;QAChC,MAAM;QACN,OAAO;QACP,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KAC9C,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,sBAAsB,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED,oBAAoB;AACpB,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB;IACE,IAAI,EAAE,gBAAgB;IACtB,OAAO,EAAE,eAAe;CACzB,EACD;IACE,YAAY,EAAE;QACZ,KAAK,EAAE,EAAE;QACT,SAAS,EAAE,EAAE;QACb,OAAO,EAAE,EAAE;KACZ;CACF,CACF,CAAC;AAEF,2BAA2B;AAE3B,MAAM,KAAK,GAAG;IACZ,cAAc;IACd;QACE,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,8GAA8G;QAC3H,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;IACD,kDAAkD;IAClD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,mJAAmJ;QAChK,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;IACD,uBAAuB;IACvB;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,6DAA6D;QAC1E,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,+GAA+G;QAC5H,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,oEAAoE;iBAClF;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,6CAA6C;iBAC3D;aACF;YACD,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,sJAAsJ;QACnK,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,qEAAqE;iBACnF;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4DAA4D;iBAC1E;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yCAAyC;iBACvD;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,oGAAoG;QACjH,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,CAAC;oBACtD,WAAW,EAAE,yBAAyB;iBACvC;gBACD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yCAAyC;iBACvD;aACF;YACD,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,qGAAqG;QAClH,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yEAAyE;iBACvF;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,CAAC;SACnB;KACF;IACD;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,6HAA6H;QAC1I,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,kDAAkD;iBAChE;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC;oBAC3B,WAAW,EAAE,oEAAoE;iBAClF;aACF;YACD,QAAQ,EAAE,CAAC,WAAW,CAAC;SACxB;KACF;IACD;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,4FAA4F;QACzG,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,oDAAoD;oBACjE,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;iBACF;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,8CAA8C;oBAC3D,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;iBACF;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;SAC7B;KACF;IACD;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,uGAAuG;QACpH,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,QAAQ,EAAE;oBACR,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE;wBACJ,gBAAgB;wBAChB,aAAa;wBACb,sBAAsB;wBACtB,aAAa;wBACb,WAAW;wBACX,aAAa;qBACd;oBACD,WAAW,EAAE,8BAA8B;iBAC5C;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,4DAA4D;iBAC1E;aACF;YACD,QAAQ,EAAE,CAAC,UAAU,CAAC;SACvB;KACF;IAED,oBAAoB;IACpB;QACE,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,sHAAsH;QACnI,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;IACD;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,+EAA+E;QAC5F,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,iBAAiB;iBAC/B;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,8GAA8G;QAC3H,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,uBAAuB;iBACrC;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,CAAC;oBAC1D,WAAW,EAAE,+FAA+F;iBAC7G;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,uBAAuB;oBACpC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,uBAAuB;oBACpC,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,gDAAgD;iBAC9D;aACF;YACD,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC;SACrC;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,gEAAgE;QAC7E,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sCAAsC;iBACpD;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,+BAA+B;oBAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,KAAK,EAAE;oBACL,IAAI,EAAE,OAAO;oBACb,WAAW,EAAE,+BAA+B;oBAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBAC1B;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,yCAAyC;iBACvD;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,0EAA0E;QACvF,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2BAA2B;iBACzC;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EAAE,8GAA8G;QAC3H,WAAW,EAAE;YACX,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,EAAE;YACd,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC;AAEF,+BAA+B;AAE/B,SAAS,cAAc;IACrB,MAAM,UAAU,GAAG,KAAK,CAAC;;;;GAIxB,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED,SAAS,SAAS,CAAC,QAAiB,EAAE,MAAe;IACnD,IAAI,GAAG,GAAG,4DAA4D,CAAC;IACvE,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxB,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,UAAU,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QACvE,MAAM,UAAU,GAAG,IAAI,MAAM,GAAG,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,GAAG,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,GAAG,IAAI,2BAA2B,CAAC;IAEnC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACjC,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,aAAa,CAAC,IAAY;IACjC,MAAM,IAAI,GAAG,QAAQ,CAAC,oCAAoC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEpE,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,IAAI,aAAa,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC;;;;;GAKpB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,MAAM,MAAM,GAAG;QACb,GAAG,IAAI;QACP,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;QACnD,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI;QAChE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,CAAC,CAAC,UAAU;YAClB,KAAK,EAAE,CAAC,CAAC,WAAW;YACpB,IAAI,EAAE,CAAC,CAAC,UAAU;YAClB,WAAW,EAAE,CAAC,CAAC,WAAW;YAC1B,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;YAC7B,OAAO,EAAE,CAAC,CAAC,aAAa;YACxB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI;YACjD,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAC,iBAAiB,CAAC;SAC/C,CAAC,CAAC;KACJ,CAAC;IAEF,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB,EAAE,QAAgB,EAAE;IAC1D,MAAM,UAAU,GAAG,IAAI,WAAW,GAAG,CAAC;IACtC,MAAM,OAAO,GAAG,KAAK,CAAC;;;;;GAKrB,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;IAE5D,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,aAAa,CAAC,IAAa,EAAE,MAAe;IACnD,IAAI,GAAG,GAAG,yDAAyD,CAAC;IACpE,MAAM,MAAM,GAAU,EAAE,CAAC;IACzB,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,IAAI,EAAE,CAAC;QACT,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,UAAU,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC;QACvD,MAAM,UAAU,GAAG,IAAI,MAAM,GAAG,CAAC;QACjC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,GAAG,IAAI,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC;IAED,GAAG,IAAI,sBAAsB,CAAC;IAE9B,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAErC,OAAO,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;QAC/C,GAAG,CAAC;QACJ,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;KACnD,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,IAAY;IAC/B,MAAM,QAAQ,GAAG,QAAQ,CAAC,wCAAwC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAE5E,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,aAAa,IAAI,aAAa,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,GAAG,QAAQ;QACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;QAChE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;QACjC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC;KAClC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB,EAAE,YAAoB,QAAQ;IACzE,MAAM,IAAI,GAAG,QAAQ,CAAC,+CAA+C,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEnF,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,QAAQ,aAAa,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAa,CAAC;IAEtE,IAAI,SAAS,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,wDAAwD,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3F,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAExD,MAAM,QAAQ,GAAG,KAAK,CAAC,uDAAuD,CAAC,CAAC;QAEhF,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE;YAC5C,MAAM,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAa,CAAC;YACvE,OAAO,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YAClB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC,CAAC;QAEJ,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;SAAM,CAAC;QACN,MAAM,SAAS,GAAG,KAAK,CAAC;;;;KAIvB,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAC7C,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CACnC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;YACjB,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,KAAK,EAAE,CAAC,CAAC,KAAK;YACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;SACrB,CAAC,CAAC,CAAC;QAEJ,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAErF,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,KAAY,EAAE,KAAY;IAC9C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC;QAC3D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,EAAE,6BAA6B,CAAC,CAAC;YAC1D,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,oCAAoC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC1E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,cAAc,QAAQ,kBAAkB,CAAC,CAAC;QACxD,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;IAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QAC1B,MAAM;QACN,QAAQ;KACT,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,SAAS,oBAAoB,CAAC,OAAe,EAAE,SAAkB;IAC/D,MAAM,KAAK,GAAG,SAAS,IAAI,YAAY,CAAC;IAExC,gHAAgH;IAChH,MAAM,UAAU,GAIX;QACH,cAAc,EAAE;YACd,WAAW,EAAE,6BAA6B;YAC1C,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACtE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aAC3E;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC1H,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,QAAQ,EAAE;aAClI;SACF;QACD,WAAW,EAAE;YACX,WAAW,EAAE,wCAAwC;YACrD,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAC9E,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACvE,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,sBAAsB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACjF,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACtE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,gCAAgC,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aACzF;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,gCAAgC,EAAE,WAAW,EAAE,OAAO,EAAE;gBACvI,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE;gBAC1I,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,WAAW,EAAE,aAAa,EAAE;gBAC9I,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,sBAAsB,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,gCAAgC,EAAE,WAAW,EAAE,sBAAsB,EAAE;gBACvK,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,gCAAgC,EAAE,WAAW,EAAE,QAAQ,EAAE;aAC/I;SACF;QACD,oBAAoB,EAAE;YACpB,WAAW,EAAE,6BAA6B;YAC1C,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACtE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAClE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAC/D,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aAC7E;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC5H,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,QAAQ,EAAE;gBACnI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC9H,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;aAC5H;SACF;QACD,WAAW,EAAE;YACX,WAAW,EAAE,6BAA6B;YAC1C,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAC9E,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACpE,EAAE,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,gCAAgC,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAC9F,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,mBAAmB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChF,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aAC1E;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,WAAW,EAAE,OAAO,EAAE;gBACzH,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,kBAAkB,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,YAAY,EAAE;gBACnJ,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,gCAAgC,EAAE,WAAW,EAAE,UAAU,EAAE;gBACrJ,EAAE,QAAQ,EAAE,gBAAgB,EAAE,UAAU,EAAE,gCAAgC,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,UAAU,EAAE;gBACjK,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,kBAAkB,EAAE,WAAW,EAAE,sBAAsB,EAAE;aACzJ;SACF;QACD,SAAS,EAAE;YACT,WAAW,EAAE,0BAA0B;YACvC,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAClE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACnE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,qBAAqB,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aAC7E;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC5H,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC9H,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,qBAAqB,EAAE,WAAW,EAAE,OAAO,EAAE;aAChI;SACF;QACD,WAAW,EAAE;YACX,WAAW,EAAE,kCAAkC;YAC/C,KAAK,EAAE;gBACL,EAAE,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,cAAc,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBACxE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;gBAChE,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;aACjE;YACD,WAAW,EAAE;gBACX,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE;gBACxH,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;gBAC7H,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE;aAC9H;SACF;KACF,CAAC;IAEF,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,OAAO,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,qBAAqB,OAAO,gBAAgB,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IACrH,CAAC;IAED,gCAAgC;IAChC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;IAEpG,sDAAsD;IACtD,MAAM,KAAK,GAAG,SAAS,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAC1C,iBAAiB,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,WAAW,CAAC,CACrF,CAAC;IAEF,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,KAAK;QACL,KAAK;KACN,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,sCAAsC;AAEtC,KAAK,UAAU,qBAAqB;IAClC,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,8FAA8F;SACtG,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,SAAS,EAAE,IAAI;YACf,GAAG,EAAE,eAAe;YACpB,eAAe,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;SACjE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;YACpB,SAAS,EAAE,KAAK;YAChB,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;SACrB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB;IACjC,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,YAAY,CAAC,CAAC;IAExD,wCAAwC;IACxC,MAAM,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,CAAC;QAC1C,EAAE,EAAE,EAAE,CAAC,EAAE;QACT,IAAI,EAAE,EAAE,CAAC,IAAI;QACb,QAAQ,EAAE,EAAE,CAAC,QAAQ;QACrB,WAAW,EAAE,EAAE,CAAC,WAAW;QAC3B,WAAW,EAAE,EAAE,CAAC,WAAW;KAC5B,CAAC,CAAC,CAAC;IAEJ,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED,KAAK,UAAU,kBAAkB,CAAC,EAAU;IAC1C,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;IAC7D,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,IAAY,EACZ,KAAY,EACZ,KAAY,EACZ,OAAe,UAAU,EACzB,WAAoB,KAAK;IAEzB,MAAM,QAAQ,GAAG;QACf,IAAI;QACJ,IAAI;QACJ,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC1C,QAAQ;KACT,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvE,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,IAAI;QACb,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,aAAa,IAAI,yBAAyB;QACnD,GAAG,EAAE,GAAG,eAAe,cAAc,MAAM,CAAC,EAAE,EAAE;KACjD,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,KAAK,UAAU,qBAAqB,CAClC,EAAU,EACV,IAAa,EACb,KAAa,EACb,KAAa,EACb,QAAkB;IAElB,MAAM,UAAU,GAAQ,EAAE,CAAC;IAE3B,IAAI,IAAI;QAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC;IACjC,IAAI,KAAK,IAAI,KAAK,EAAE,CAAC;QACnB,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,IAAI,QAAQ,KAAK,SAAS;QAAE,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAE3D,MAAM,MAAM,GAAG,MAAM,iBAAiB,CAAC,cAAc,EAAE,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;IAC9E,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,IAAI;QACb,EAAE,EAAE,MAAM,CAAC,EAAE;QACb,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,gCAAgC;KAC1C,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,KAAK,UAAU,qBAAqB,CAAC,EAAU;IAC7C,MAAM,iBAAiB,CAAC,cAAc,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;IACtD,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,YAAY,EAAE,wBAAwB;KAChD,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACd,CAAC;AAED,2BAA2B;AAE3B,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC5D,KAAK,EAAE,KAAK;CACb,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IAChE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,CAAC;QACH,IAAI,MAAc,CAAC;QAEnB,QAAQ,IAAI,EAAE,CAAC;YACb,cAAc;YACd,KAAK,aAAa;gBAChB,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;oBACtB,IAAI,EAAE,gBAAgB;oBACtB,OAAO,EAAE,eAAe;oBACxB,WAAW,EAAE,uEAAuE;iBACrF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACZ,MAAM;YAER,gCAAgC;YAChC,KAAK,iBAAiB;gBACpB,MAAM,GAAG,IAAI,CAAC,SAAS,CAAC;oBACtB,KAAK,EAAE,kCAAkC;oBACzC,SAAS,EAAE,+CAA+C;oBAC1D,QAAQ,EAAE;wBACR,8FAA8F;wBAC9F,4GAA4G;wBAC5G,gFAAgF;wBAChF,oFAAoF;qBACrF;oBACD,QAAQ,EAAE;wBACR,wEAAwE;wBACxE,sEAAsE;wBACtE,mEAAmE;wBACnE,2EAA2E;wBAC3E,2DAA2D;wBAC3D,2CAA2C;qBAC5C;oBACD,cAAc,EAAE;wBACd,oFAAoF;wBACpF,uFAAuF;wBACvF,4DAA4D;wBAC5D,gEAAgE;wBAChE,uEAAuE;wBACvE,mEAAmE;qBACpE;oBACD,eAAe,EAAE;wBACf,WAAW,EAAE,gEAAgE;wBAC7E,UAAU,EAAE;4BACV,EAAE,EAAE;gCACF,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,MAAM,EAAE,oBAAoB;gCAC5B,OAAO,EAAE,cAAc;gCACvB,WAAW,EAAE,qDAAqD;6BACnE;4BACD,QAAQ,EAAE;gCACR,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE;oCACV,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+BAA+B,EAAE;oCACnF,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;iCAClF;gCACD,WAAW,EAAE,gDAAgD;6BAC9D;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,YAAY;gCACnB,WAAW,EAAE,wCAAwC;6BACtD;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,GAAG;gCACZ,WAAW,EAAE,wCAAwC;6BACtD;4BACD,MAAM,EAAE;gCACN,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,iEAAiE;6BAC/E;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,6DAA6D;6BAC3E;4BACD,gBAAgB,EAAE;gCAChB,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oEAAoE;6BAClF;4BACD,QAAQ,EAAE;gCACR,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,SAAS;gCACf,WAAW,EAAE,2CAA2C;6BACzD;4BACD,QAAQ,EAAE;gCACR,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,SAAS;gCACf,WAAW,EAAE,0CAA0C;6BACxD;yBACF;wBACD,UAAU,EAAE;4BACV,EAAE,EAAE;gCACF,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,uCAAuC;6BACrD;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,YAAY;gCACrB,WAAW,EAAE,mCAAmC;6BACjD;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,YAAY;gCACrB,WAAW,EAAE,mEAAmE;6BACjF;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,YAAY;gCACrB,WAAW,EAAE,mCAAmC;6BACjD;4BACD,OAAO,EAAE;gCACP,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+EAA+E;6BAC7F;4BACD,QAAQ,EAAE;gCACR,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,OAAO,EAAE,aAAa;gCACtB,WAAW,EAAE,yDAAyD;6BACvE;4BACD,WAAW,EAAE;gCACX,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,kBAAkB;gCACxB,OAAO,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,SAAS,CAAC;gCACnD,WAAW,EAAE,6EAA6E;6BAC3F;4BACD,WAAW,EAAE;gCACX,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,OAAO;gCACb,WAAW,EAAE,sEAAsE;gCACnF,eAAe,EAAE;oCACf,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;oCACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8BAA8B,EAAE;oCACrE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8DAA8D,EAAE;oCACrG,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,oCAAoC,EAAE;oCAC/E,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,oCAAoC,EAAE;oCAChF,WAAW,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uBAAuB,EAAE;oCACtE,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,gCAAgC,EAAE;oCACxE,WAAW,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,kBAAkB,EAAE;oCACjE,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,kDAAkD,EAAE;oCAC7F,gBAAgB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,mDAAmD,EAAE;iCACxG;6BACF;4BACD,YAAY,EAAE;gCACZ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,OAAO;gCACb,WAAW,EAAE,0EAA0E;gCACvF,eAAe,EAAE;oCACf,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,8BAA8B,EAAE;oCACtE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,iCAAiC,EAAE;oCACxE,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,qDAAqD,EAAE;oCAC5F,QAAQ,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,qCAAqC,EAAE;oCACjF,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uCAAuC,EAAE;oCAC/E,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uCAAuC,EAAE;iCAC9E;6BACF;4BACD,aAAa,EAAE;gCACb,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,OAAO;gCACb,WAAW,EAAE,yEAAyE;gCACtF,eAAe,EAAE;oCACf,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,4CAA4C,EAAE,WAAW,EAAE,yBAAyB,EAAE;oCACpH,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE;oCACpD,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,eAAe,EAAE;oCACvD,IAAI,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,0DAA0D,EAAE;iCAClG;6BACF;4BACD,MAAM,EAAE;gCACN,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,+DAA+D;gCAC5E,OAAO,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE;6BAClD;4BACD,OAAO,EAAE;gCACP,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,0DAA0D;6BACxE;4BACD,UAAU,EAAE;gCACV,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,mFAAmF;6BACjG;yBACF;qBACF;oBACD,eAAe,EAAE;wBACf,WAAW,EAAE,gEAAgE;wBAC7E,UAAU,EAAE;4BACV,MAAM,EAAE;gCACN,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,sDAAsD;gCACnE,OAAO,EAAE,cAAc;6BACxB;4BACD,YAAY,EAAE;gCACZ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,MAAM,EAAE,wDAAwD;gCAChE,OAAO,EAAE,iEAAiE;gCAC1E,WAAW,EAAE,0EAA0E;6BACxF;4BACD,MAAM,EAAE;gCACN,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,oDAAoD;gCACjE,OAAO,EAAE,qBAAqB;6BAC/B;4BACD,YAAY,EAAE;gCACZ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,MAAM,EAAE,oDAAoD;gCAC5D,OAAO,EAAE,+CAA+C;gCACxD,WAAW,EAAE,+FAA+F;6BAC7G;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,KAAK,EAAE,YAAY;gCACnB,WAAW,EAAE,8CAA8C;6BAC5D;4BACD,EAAE,EAAE;gCACF,QAAQ,EAAE,IAAI;gCACd,IAAI,EAAE,QAAQ;gCACd,MAAM,EAAE,iDAAiD;gCACzD,OAAO,EAAE,gJAAgJ;gCACzJ,WAAW,EAAE,sFAAsF;6BACpG;4BACD,IAAI,EAAE;gCACJ,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,uEAAuE;6BACrF;4BACD,KAAK,EAAE;gCACL,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,QAAQ;gCACd,WAAW,EAAE,uDAAuD;6BACrE;4BACD,QAAQ,EAAE;gCACR,QAAQ,EAAE,KAAK;gCACf,IAAI,EAAE,SAAS;gCACf,WAAW,EAAE,0CAA0C;6BACxD;yBACF;wBACD,gBAAgB,EAAE;4BAChB,WAAW,EAAE,6BAA6B;4BAC1C,KAAK,EAAE;gCACL,oFAAoF;gCACpF,2GAA2G;gCAC3G,qEAAqE;gCACrE,6DAA6D;gCAC7D,6EAA6E;6BAC9E;yBACF;qBACF;oBACD,eAAe,EAAE;wBACf,+DAA+D;wBAC/D,2DAA2D;wBAC3D,wCAAwC;wBACxC,+CAA+C;wBAC/C,mCAAmC;wBACnC,gCAAgC;wBAChC,0DAA0D;wBAC1D,gDAAgD;wBAChD,qDAAqD;qBACtD;oBACD,gBAAgB,EAAE;wBAChB,IAAI,EAAE,uDAAuD;wBAC7D,KAAK,EAAE;4BACL,sEAAsE;4BACtE,mGAAmG;4BACnG,oFAAoF;4BACpF,uCAAuC;4BACvC,+CAA+C;4BAC/C,6EAA6E;4BAC7E,4EAA4E;4BAC5E,+EAA+E;4BAC/E,8EAA8E;4BAC9E,mFAAmF;yBACpF;qBACF;oBACD,0BAA0B,EAAE;wBAC1B,+CAA+C;wBAC/C,6DAA6D;wBAC7D,iDAAiD;wBACjD,mDAAmD;wBACnD,0BAA0B;qBAC3B;oBACD,wBAAwB,EAAE;wBACxB,wDAAwD;wBACxD,6FAA6F;wBAC7F,uDAAuD;wBACvD,iCAAiC;wBACjC,iCAAiC;qBAClC;iBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;gBACZ,MAAM;YAER,uBAAuB;YACvB,KAAK,iBAAiB;gBACpB,MAAM,GAAG,cAAc,EAAE,CAAC;gBAC1B,MAAM;YACR,KAAK,YAAY;gBACf,MAAM,GAAG,SAAS,CAAC,IAAI,EAAE,QAAkB,EAAE,IAAI,EAAE,MAAgB,CAAC,CAAC;gBACrE,MAAM;YACR,KAAK,iBAAiB;gBACpB,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,IAAc,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,cAAc;gBACjB,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,KAAe,EAAE,IAAI,EAAE,KAAe,CAAC,CAAC;gBACnE,MAAM;YACR,KAAK,gBAAgB;gBACnB,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,IAAc,EAAE,IAAI,EAAE,MAAgB,CAAC,CAAC;gBACrE,MAAM;YACR,KAAK,cAAc;gBACjB,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,IAAc,CAAC,CAAC;gBAC3C,MAAM;YACR,KAAK,uBAAuB;gBAC1B,MAAM,GAAG,mBAAmB,CAAC,IAAI,EAAE,SAAmB,EAAE,IAAI,EAAE,SAAmB,CAAC,CAAC;gBACnF,MAAM;YACR,KAAK,eAAe;gBAClB,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,KAAc,EAAE,IAAI,EAAE,KAAc,CAAC,CAAC;gBAClE,MAAM;YACR,KAAK,wBAAwB;gBAC3B,MAAM,GAAG,oBAAoB,CAAC,IAAI,EAAE,QAAkB,EAAE,IAAI,EAAE,UAAoB,CAAC,CAAC;gBACpF,MAAM;YAER,oBAAoB;YACpB,KAAK,yBAAyB;gBAC5B,MAAM,GAAG,MAAM,qBAAqB,EAAE,CAAC;gBACvC,MAAM;YACR,KAAK,wBAAwB;gBAC3B,MAAM,GAAG,MAAM,oBAAoB,EAAE,CAAC;gBACtC,MAAM;YACR,KAAK,sBAAsB;gBACzB,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,EAAY,CAAC,CAAC;gBACtD,MAAM;YACR,KAAK,yBAAyB;gBAC5B,MAAM,GAAG,MAAM,qBAAqB,CAClC,IAAI,EAAE,IAAc,EACpB,IAAI,EAAE,KAAc,EACpB,IAAI,EAAE,KAAc,EACnB,IAAI,EAAE,IAAe,IAAI,UAAU,EACpC,IAAI,EAAE,QAAmB,CAC1B,CAAC;gBACF,MAAM;YACR,KAAK,yBAAyB;gBAC5B,MAAM,GAAG,MAAM,qBAAqB,CAClC,IAAI,EAAE,EAAY,EAClB,IAAI,EAAE,IAAc,EACpB,IAAI,EAAE,KAAc,EACpB,IAAI,EAAE,KAAc,EACpB,IAAI,EAAE,QAAmB,CAC1B,CAAC;gBACF,MAAM;YACR,KAAK,yBAAyB;gBAC5B,MAAM,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE,EAAY,CAAC,CAAC;gBACzD,MAAM;YAER;gBACE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;SAC1C,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3E,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,oBAAoB;AAEpB,MAAM,CAAC,iBAAiB,CAAC,0BAA0B,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAChE,SAAS,EAAE;QACT;YACE,GAAG,EAAE,sBAAsB;YAC3B,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,qCAAqC;SACnD;QACD;YACE,GAAG,EAAE,iBAAiB;YACtB,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE,WAAW;YACjB,WAAW,EAAE,gCAAgC;SAC9C;QACD;YACE,GAAG,EAAE,qBAAqB;YAC1B,QAAQ,EAAE,kBAAkB;YAC5B,IAAI,EAAE,eAAe;YACrB,WAAW,EAAE,2BAA2B;SACzC;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,yBAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACpE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAE/B,IAAI,OAAe,CAAC;IAEpB,QAAQ,GAAG,EAAE,CAAC;QACZ,KAAK,sBAAsB;YACzB,OAAO,GAAG,cAAc,EAAE,CAAC;YAC3B,MAAM;QACR,KAAK,iBAAiB;YACpB,OAAO,GAAG,SAAS,EAAE,CAAC;YACtB,MAAM;QACR,KAAK,qBAAqB;YACxB,OAAO,GAAG,aAAa,EAAE,CAAC;YAC1B,MAAM;QACR;YACE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,kBAAkB,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;KACjE,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,kBAAkB;AAElB,MAAM,CAAC,iBAAiB,CAAC,wBAAwB,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAC9D,OAAO,EAAE;QACP;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,uCAAuC;YACpD,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,6BAA6B;oBAC1C,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,yCAAyC;YACtD,SAAS,EAAE;gBACT;oBACE,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,0BAA0B;oBACvC,QAAQ,EAAE,IAAI;iBACf;aACF;SACF;KACF;CACF,CAAC,CAAC,CAAC;AAEJ,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;IACjE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjD,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;QAC9B,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,0CAA0C,IAAI,EAAE,WAAW;;;;;;;qEAOR;qBAC1D;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;QAC/B,OAAO;YACL,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,MAAM;oBACZ,OAAO,EAAE;wBACP,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,4CAA4C,IAAI,EAAE,WAAW;;;;;;;qEAOV;qBAC1D;iBACF;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC;AAEH,uBAAuB;AAEvB,KAAK,UAAU,IAAI;IACjB,sBAAsB;IACtB,MAAM,GAAG,GAAG,MAAM,SAAS,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,gBAAgB,EAAE,CAAC;IAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACzC,EAAE,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEhC,sCAAsC;IACtC,aAAa,EAAE,CAAC;IAEhB,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IAC/C,OAAO,CAAC,KAAK,CAAC,yBAAyB,MAAM,EAAE,CAAC,CAAC;IACjD,OAAO,CAAC,KAAK,CAAC,sBAAsB,SAAS,CAAC,MAAM,QAAQ,CAAC,CAAC;IAE9D,IAAI,eAAe,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,2BAA2B,eAAe,EAAE,CAAC,CAAC;IAC9D,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,mFAAmF,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AAClC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ds-mcp-flowise",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.6",
|
|
4
4
|
"description": "MCP server for building and managing Flowise chatflows and agentflows. Provides AI assistants with comprehensive knowledge of Flowise nodes, tools for workflow creation, and direct API integration to deploy chatflows.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
package/src/index.ts
CHANGED
|
@@ -230,7 +230,19 @@ function createFlowiseNode(
|
|
|
230
230
|
const inputs: Record<string, any> = {};
|
|
231
231
|
|
|
232
232
|
// Types that are parameters (not connection anchors)
|
|
233
|
-
|
|
233
|
+
// IMPORTANT: 'credential' must be in paramTypes - credentials appear in inputParams, not inputAnchors
|
|
234
|
+
const paramTypes = ['string', 'number', 'boolean', 'password', 'options', 'asyncOptions', 'json', 'code', 'file', 'credential'];
|
|
235
|
+
|
|
236
|
+
// Handle credential field if it exists (defined separately from inputs in Flowise)
|
|
237
|
+
if (nodeInfo.credential) {
|
|
238
|
+
inputParams.push({
|
|
239
|
+
label: nodeInfo.credential.label || 'Connect Credential',
|
|
240
|
+
name: nodeInfo.credential.name || 'credential',
|
|
241
|
+
type: 'credential',
|
|
242
|
+
credentialNames: nodeInfo.credential.credentialNames || [],
|
|
243
|
+
id: `${id}-input-credential-credential`
|
|
244
|
+
});
|
|
245
|
+
}
|
|
234
246
|
|
|
235
247
|
for (const input of (nodeInfo.inputs || [])) {
|
|
236
248
|
const isAnchor = !paramTypes.includes(input.type);
|
|
@@ -709,23 +721,129 @@ function getNodeSchema(name: string): string {
|
|
|
709
721
|
ORDER BY additional_params, input_label
|
|
710
722
|
`, [name]);
|
|
711
723
|
|
|
712
|
-
const
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
724
|
+
const baseClasses = JSON.parse(node.base_classes || '[]');
|
|
725
|
+
const credential = node.credential ? JSON.parse(node.credential) : null;
|
|
726
|
+
|
|
727
|
+
// Use a placeholder node ID - AI should replace "0" with their desired suffix
|
|
728
|
+
const nodeId = `${name}_0`;
|
|
729
|
+
|
|
730
|
+
// Types that are parameters (UI fields), not connection anchors
|
|
731
|
+
const paramTypes = ['string', 'number', 'boolean', 'password', 'options', 'asyncOptions', 'json', 'code', 'file', 'credential'];
|
|
732
|
+
|
|
733
|
+
const inputParams: any[] = [];
|
|
734
|
+
const inputAnchors: any[] = [];
|
|
735
|
+
const inputsObj: Record<string, any> = {};
|
|
736
|
+
|
|
737
|
+
// Add credential to inputParams if it exists
|
|
738
|
+
if (credential) {
|
|
739
|
+
inputParams.push({
|
|
740
|
+
label: credential.label || 'Connect Credential',
|
|
741
|
+
name: credential.name || 'credential',
|
|
742
|
+
type: 'credential',
|
|
743
|
+
credentialNames: credential.credentialNames || [],
|
|
744
|
+
id: `${nodeId}-input-credential-credential`
|
|
745
|
+
});
|
|
746
|
+
}
|
|
747
|
+
|
|
748
|
+
// Process each input field
|
|
749
|
+
for (const input of inputs) {
|
|
750
|
+
const inputType = input.input_type;
|
|
751
|
+
const inputName = input.input_name;
|
|
752
|
+
const isParam = paramTypes.includes(inputType);
|
|
753
|
+
|
|
754
|
+
if (isParam) {
|
|
755
|
+
// This is a UI parameter (text field, dropdown, etc.)
|
|
756
|
+
const param: any = {
|
|
757
|
+
label: input.input_label,
|
|
758
|
+
name: inputName,
|
|
759
|
+
type: inputType,
|
|
760
|
+
id: `${nodeId}-input-${inputName}-${inputType}`
|
|
761
|
+
};
|
|
762
|
+
|
|
763
|
+
if (input.description) param.description = input.description;
|
|
764
|
+
if (input.optional) param.optional = true;
|
|
765
|
+
if (input.default_value !== null) param.default = input.default_value;
|
|
766
|
+
if (input.options) param.options = JSON.parse(input.options);
|
|
767
|
+
if (input.additional_params) param.additionalParams = true;
|
|
768
|
+
|
|
769
|
+
inputParams.push(param);
|
|
770
|
+
inputsObj[inputName] = input.default_value !== null ? input.default_value : '';
|
|
771
|
+
} else {
|
|
772
|
+
// This is a connection anchor (connects to another node's output)
|
|
773
|
+
const anchor: any = {
|
|
774
|
+
label: input.input_label,
|
|
775
|
+
name: inputName,
|
|
776
|
+
type: inputType,
|
|
777
|
+
id: `${nodeId}-input-${inputName}-${inputType}`
|
|
778
|
+
};
|
|
779
|
+
|
|
780
|
+
if (input.optional) anchor.optional = true;
|
|
781
|
+
if (input.description) anchor.description = input.description;
|
|
782
|
+
|
|
783
|
+
inputAnchors.push(anchor);
|
|
784
|
+
inputsObj[inputName] = '';
|
|
785
|
+
}
|
|
786
|
+
}
|
|
787
|
+
|
|
788
|
+
// Build outputAnchors
|
|
789
|
+
const typeChain = baseClasses.join('|');
|
|
790
|
+
const outputAnchors = [{
|
|
791
|
+
id: `${nodeId}-output-${name}-${typeChain}`,
|
|
792
|
+
name: name,
|
|
793
|
+
label: node.label,
|
|
794
|
+
description: node.description,
|
|
795
|
+
type: typeChain.replace(/\|/g, ' | ') // Format for display: "Type1 | Type2"
|
|
796
|
+
}];
|
|
797
|
+
|
|
798
|
+
// Return a ready-to-use node template
|
|
799
|
+
const nodeTemplate = {
|
|
800
|
+
id: nodeId,
|
|
801
|
+
position: { x: 0, y: 0 },
|
|
802
|
+
type: 'customNode',
|
|
803
|
+
width: 300,
|
|
804
|
+
height: Math.max(300, 150 + (inputParams.length + inputAnchors.length) * 50),
|
|
805
|
+
data: {
|
|
806
|
+
id: nodeId,
|
|
807
|
+
label: node.label,
|
|
808
|
+
version: node.version,
|
|
809
|
+
name: name,
|
|
810
|
+
type: node.type,
|
|
811
|
+
baseClasses: baseClasses,
|
|
812
|
+
category: node.category,
|
|
813
|
+
description: node.description,
|
|
814
|
+
inputParams: inputParams,
|
|
815
|
+
inputAnchors: inputAnchors,
|
|
816
|
+
inputs: inputsObj,
|
|
817
|
+
outputAnchors: outputAnchors,
|
|
818
|
+
outputs: {},
|
|
819
|
+
selected: false
|
|
820
|
+
},
|
|
821
|
+
selected: false
|
|
726
822
|
};
|
|
727
823
|
|
|
728
|
-
return JSON.stringify(
|
|
824
|
+
return JSON.stringify({
|
|
825
|
+
node_template: nodeTemplate,
|
|
826
|
+
usage: {
|
|
827
|
+
instructions: [
|
|
828
|
+
'This is a READY-TO-USE node template. Copy it exactly into your nodes array.',
|
|
829
|
+
'ONLY modify these fields:',
|
|
830
|
+
' 1. node.id and node.data.id - change suffix (e.g., chatOpenAI_0 -> chatOpenAI_1)',
|
|
831
|
+
' 2. node.position.x and node.position.y - set canvas coordinates',
|
|
832
|
+
' 3. node.data.inputs.* - fill in your actual values (leave empty string for unconfigured)',
|
|
833
|
+
'After changing node.id, you MUST update ALL id fields that contain the old ID:',
|
|
834
|
+
' - Every inputParams[].id',
|
|
835
|
+
' - Every inputAnchors[].id',
|
|
836
|
+
' - Every outputAnchors[].id',
|
|
837
|
+
'DO NOT remove any fields. DO NOT add fields. DO NOT restructure.',
|
|
838
|
+
],
|
|
839
|
+
id_format: {
|
|
840
|
+
node_id: `${name}_<number>`,
|
|
841
|
+
inputParam_id: `${name}_<number>-input-<paramName>-<paramType>`,
|
|
842
|
+
inputAnchor_id: `${name}_<number>-input-<anchorName>-<anchorType>`,
|
|
843
|
+
outputAnchor_id: `${name}_<number>-output-${name}-${typeChain}`,
|
|
844
|
+
}
|
|
845
|
+
}
|
|
846
|
+
}, null, 2);
|
|
729
847
|
}
|
|
730
848
|
|
|
731
849
|
function searchNodes(searchQuery: string, limit: number = 10): string {
|
|
@@ -1119,27 +1237,65 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1119
1237
|
result = JSON.stringify({
|
|
1120
1238
|
title: 'Flowise MCP Server - Usage Guide',
|
|
1121
1239
|
important: 'READ THIS COMPLETELY BEFORE USING OTHER TOOLS',
|
|
1240
|
+
|
|
1241
|
+
// ============================================================
|
|
1242
|
+
// SIMPLE RULES - get_node_schema now returns READY-TO-USE templates
|
|
1243
|
+
// ============================================================
|
|
1244
|
+
ABSOLUTE_RULES: {
|
|
1245
|
+
_READ_THIS_FIRST: '⚠️ get_node_schema returns a READY-TO-USE node_template. Copy it directly into your nodes array.',
|
|
1246
|
+
|
|
1247
|
+
RULE_1_USE_THE_TEMPLATE: {
|
|
1248
|
+
rule: 'get_node_schema returns a node_template object. Use it EXACTLY as provided.',
|
|
1249
|
+
what_to_change: [
|
|
1250
|
+
'node.id and node.data.id - change the suffix number if needed (e.g., chatOpenAI_0 → chatOpenAI_1)',
|
|
1251
|
+
'node.position.x and node.position.y - set canvas coordinates',
|
|
1252
|
+
'node.data.inputs.* - fill in your actual configuration values',
|
|
1253
|
+
],
|
|
1254
|
+
what_NOT_to_change: [
|
|
1255
|
+
'DO NOT remove any fields',
|
|
1256
|
+
'DO NOT restructure inputParams, inputAnchors, or outputAnchors',
|
|
1257
|
+
'DO NOT omit credential fields - they are required for authentication',
|
|
1258
|
+
],
|
|
1259
|
+
},
|
|
1260
|
+
|
|
1261
|
+
RULE_2_UPDATE_ALL_IDS_WHEN_CHANGING_NODE_ID: {
|
|
1262
|
+
rule: 'If you change node.id, you MUST update ALL internal id fields to match',
|
|
1263
|
+
fields_to_update: [
|
|
1264
|
+
'node.data.id',
|
|
1265
|
+
'Every inputParams[].id (format: {nodeId}-input-{name}-{type})',
|
|
1266
|
+
'Every inputAnchors[].id (format: {nodeId}-input-{name}-{type})',
|
|
1267
|
+
'Every outputAnchors[].id (format: {nodeId}-output-{name}-{types|joined|by|pipe})',
|
|
1268
|
+
],
|
|
1269
|
+
example: 'Changing chatOpenAI_0 to chatOpenAI_1 means updating ~20+ id fields',
|
|
1270
|
+
},
|
|
1271
|
+
|
|
1272
|
+
RULE_3_LEAVE_UNKNOWN_VALUES_EMPTY: {
|
|
1273
|
+
rule: 'If you do not know a value, leave it as empty string ""',
|
|
1274
|
+
explanation: 'Users will configure values in the Flowise UI. Do not guess or make up values.',
|
|
1275
|
+
},
|
|
1276
|
+
},
|
|
1277
|
+
|
|
1122
1278
|
warnings: [
|
|
1123
|
-
'DANGER:
|
|
1124
|
-
'
|
|
1125
|
-
'
|
|
1126
|
-
'If you create a corrupted chatflow, you must delete it via flowise_delete_chatflow',
|
|
1279
|
+
'DANGER: Malformed node data creates CORRUPTED chatflows that CRASH the Flowise UI',
|
|
1280
|
+
'ALWAYS call validate_flow BEFORE flowise_create_chatflow',
|
|
1281
|
+
'If you create a corrupted chatflow, delete it via flowise_delete_chatflow',
|
|
1127
1282
|
],
|
|
1128
1283
|
workflow: [
|
|
1129
|
-
'1. Call
|
|
1130
|
-
'2.
|
|
1131
|
-
'3.
|
|
1132
|
-
'4.
|
|
1133
|
-
'5.
|
|
1134
|
-
'6.
|
|
1284
|
+
'1. Call get_node_schema for each node type you need - it returns a READY-TO-USE node_template',
|
|
1285
|
+
'2. Copy node_template directly into your nodes array',
|
|
1286
|
+
'3. Update node IDs if using multiple nodes of same type (update ALL internal id fields)',
|
|
1287
|
+
'4. Fill in node.data.inputs with your configuration values',
|
|
1288
|
+
'5. Set node.position.x/y for canvas layout',
|
|
1289
|
+
'6. Create edges connecting nodes (see edge_properties below)',
|
|
1290
|
+
'7. Call validate_flow to verify your flow',
|
|
1291
|
+
'8. Call flowise_create_chatflow to deploy',
|
|
1135
1292
|
],
|
|
1136
1293
|
critical_rules: [
|
|
1137
|
-
'
|
|
1138
|
-
'
|
|
1139
|
-
'
|
|
1140
|
-
'
|
|
1141
|
-
'
|
|
1142
|
-
'Edges define connections - copy the format EXACTLY from templates',
|
|
1294
|
+
'get_node_schema returns node_template - USE IT DIRECTLY, do not reconstruct',
|
|
1295
|
+
'All id fields (inputParams, inputAnchors, outputAnchors) are pre-generated - keep them',
|
|
1296
|
+
'Credentials are included in inputParams when required - never remove them',
|
|
1297
|
+
'Leave unknown input values as empty string - users configure in Flowise UI',
|
|
1298
|
+
'When changing node.id, update ALL internal id fields to match',
|
|
1143
1299
|
],
|
|
1144
1300
|
node_properties: {
|
|
1145
1301
|
description: 'Complete list of node properties with required/optional status',
|
|
@@ -1239,6 +1395,17 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1239
1395
|
example: ['ChatOpenAI', 'BaseChatModel', 'BaseLLM'],
|
|
1240
1396
|
description: 'Inheritance chain. CRITICAL for edge connections. Get from get_node_schema.',
|
|
1241
1397
|
},
|
|
1398
|
+
credential: {
|
|
1399
|
+
note: 'Credentials are now AUTOMATICALLY included in inputParams by get_node_schema',
|
|
1400
|
+
description: 'When a node requires authentication, the credential field appears in inputParams with type "credential". Do not remove it.',
|
|
1401
|
+
example_in_inputParams: {
|
|
1402
|
+
label: 'Connect Credential',
|
|
1403
|
+
name: 'credential',
|
|
1404
|
+
type: 'credential',
|
|
1405
|
+
credentialNames: ['openAIApi'],
|
|
1406
|
+
id: 'chatOpenAI_0-input-credential-credential'
|
|
1407
|
+
},
|
|
1408
|
+
},
|
|
1242
1409
|
inputParams: {
|
|
1243
1410
|
required: true,
|
|
1244
1411
|
type: 'array',
|
|
@@ -1291,11 +1458,6 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1291
1458
|
type: 'object',
|
|
1292
1459
|
description: 'Output configuration. Usually auto-generated by Flowise.',
|
|
1293
1460
|
},
|
|
1294
|
-
credential: {
|
|
1295
|
-
required: false,
|
|
1296
|
-
type: 'string',
|
|
1297
|
-
description: 'Credential ID for nodes requiring authentication. Set in Flowise UI after import.',
|
|
1298
|
-
},
|
|
1299
1461
|
},
|
|
1300
1462
|
},
|
|
1301
1463
|
edge_properties: {
|
|
@@ -1368,42 +1530,37 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
1368
1530
|
},
|
|
1369
1531
|
},
|
|
1370
1532
|
common_mistakes: [
|
|
1371
|
-
'
|
|
1372
|
-
'Removing
|
|
1373
|
-
'
|
|
1374
|
-
'
|
|
1375
|
-
'Missing
|
|
1376
|
-
'
|
|
1377
|
-
'Inventing edge IDs instead of following the exact format',
|
|
1378
|
-
'Not including data.id (must match the node id)',
|
|
1379
|
-
'Simplifying or flattening the nested data structure',
|
|
1533
|
+
'⚠️ RECONSTRUCTING nodes instead of using node_template - just copy it directly!',
|
|
1534
|
+
'⚠️ Removing inputParams, inputAnchors, or outputAnchors - NEVER remove these arrays',
|
|
1535
|
+
'⚠️ Changing node.id without updating ALL internal id fields',
|
|
1536
|
+
'⚠️ Removing credential from inputParams - this breaks authentication',
|
|
1537
|
+
'Missing position, width, or height on nodes',
|
|
1538
|
+
'Wrong edge format - use find_compatible_nodes to get correct handles',
|
|
1380
1539
|
],
|
|
1381
1540
|
example_workflow: {
|
|
1382
|
-
task: 'Build a
|
|
1541
|
+
task: 'Build a chatbot with OpenAI and Buffer Memory',
|
|
1383
1542
|
steps: [
|
|
1384
|
-
'1.
|
|
1385
|
-
'2.
|
|
1386
|
-
'3. get_node_schema("
|
|
1387
|
-
'4. Copy
|
|
1388
|
-
'5.
|
|
1389
|
-
'6.
|
|
1390
|
-
'7.
|
|
1391
|
-
'8.
|
|
1392
|
-
'9.
|
|
1393
|
-
'10. flowise_create_chatflow({ name: "...", nodes: [...], edges: [...] }) - deploy',
|
|
1543
|
+
'1. get_node_schema("chatOpenAI") - get ready-to-use node template',
|
|
1544
|
+
'2. get_node_schema("bufferMemory") - get memory node template',
|
|
1545
|
+
'3. get_node_schema("conversationChain") - get chain node template',
|
|
1546
|
+
'4. Copy each node_template into nodes array',
|
|
1547
|
+
'5. Set positions: chatOpenAI at (100,100), bufferMemory at (100,400), conversationChain at (500,200)',
|
|
1548
|
+
'6. Fill inputs: chatOpenAI_0.data.inputs.modelName = "gpt-4o-mini"',
|
|
1549
|
+
'7. Create edges connecting chatOpenAI→conversationChain and bufferMemory→conversationChain',
|
|
1550
|
+
'8. validate_flow({ nodes, edges })',
|
|
1551
|
+
'9. flowise_create_chatflow({ name: "My Chatbot", nodes, edges })',
|
|
1394
1552
|
],
|
|
1395
1553
|
},
|
|
1396
1554
|
what_you_can_safely_change: [
|
|
1397
|
-
'data.
|
|
1398
|
-
'
|
|
1399
|
-
'data.
|
|
1400
|
-
'node id (but must update all references in edges)',
|
|
1401
|
-
'position x/y coordinates',
|
|
1555
|
+
'node.id and node.data.id (but update ALL internal id fields)',
|
|
1556
|
+
'node.position.x and node.position.y',
|
|
1557
|
+
'node.data.inputs.* values',
|
|
1402
1558
|
],
|
|
1403
1559
|
what_you_must_NOT_change: [
|
|
1404
|
-
'The overall node structure
|
|
1405
|
-
'
|
|
1406
|
-
'
|
|
1560
|
+
'The overall node structure from node_template',
|
|
1561
|
+
'inputParams array - contains credential and configuration fields',
|
|
1562
|
+
'inputAnchors array - defines connection points',
|
|
1563
|
+
'outputAnchors array - defines what outputs the node provides',
|
|
1407
1564
|
'The type: "customNode" on nodes',
|
|
1408
1565
|
'The type: "buttonedge" on edges',
|
|
1409
1566
|
],
|