@bubblelab/bubble-core 0.1.8 → 0.1.10
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/bubble-bundle.d.ts +333 -1438
- package/dist/bubble-factory.d.ts.map +1 -1
- package/dist/bubble-factory.js +64 -28
- package/dist/bubble-factory.js.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts +17 -1
- package/dist/bubble-flow/bubble-flow-class.d.ts.map +1 -1
- package/dist/bubble-flow/bubble-flow-class.js +16 -0
- package/dist/bubble-flow/bubble-flow-class.js.map +1 -1
- package/dist/bubble-flow/sample/data-analyst-flow.d.ts +1 -1
- package/dist/bubble-flow/sample/data-analyst-flow.d.ts.map +1 -1
- package/dist/bubble-flow/sample/error-ts.d.ts +1 -1
- package/dist/bubble-flow/sample/error-ts.d.ts.map +1 -1
- package/dist/bubble-flow/sample/sanitytest.d.ts +1 -1
- package/dist/bubble-flow/sample/sanitytest.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simple-webhook-2.d.ts +1 -1
- package/dist/bubble-flow/sample/simple-webhook-2.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simple-webhook.d.ts +1 -1
- package/dist/bubble-flow/sample/simple-webhook.d.ts.map +1 -1
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts +1 -1
- package/dist/bubble-flow/sample/simplified-data-analysis.flow.d.ts.map +1 -1
- package/dist/bubble-flow/sample/slack-v0.1.d.ts +1 -1
- package/dist/bubble-flow/sample/slack-v0.1.d.ts.map +1 -1
- package/dist/bubble-flow/sample/slackagenttest.d.ts +1 -1
- package/dist/bubble-flow/sample/slackagenttest.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.d.ts +115 -97
- package/dist/bubbles/service-bubble/ai-agent.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/ai-agent.js +276 -96
- package/dist/bubbles/service-bubble/ai-agent.js.map +1 -1
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +805 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.js +131 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +485 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.js +176 -0
- package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +302 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.js +138 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +642 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.js +123 -0
- package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +184 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js +145 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts +52 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js +29 -0
- package/dist/bubbles/service-bubble/apify/actors/youtube-transcript-scraper.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +1999 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js +54 -0
- package/dist/bubbles/service-bubble/apify/apify-scraper.schema.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/apify.d.ts +143 -0
- package/dist/bubbles/service-bubble/apify/apify.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/apify.js +276 -0
- package/dist/bubbles/service-bubble/apify/apify.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/index.d.ts +6 -0
- package/dist/bubbles/service-bubble/apify/index.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/index.js +6 -0
- package/dist/bubbles/service-bubble/apify/index.js.map +1 -0
- package/dist/bubbles/service-bubble/apify/types.d.ts +7 -0
- package/dist/bubbles/service-bubble/apify/types.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/apify/types.js +5 -0
- package/dist/bubbles/service-bubble/apify/types.js.map +1 -0
- package/dist/bubbles/service-bubble/gmail.d.ts +626 -132
- package/dist/bubbles/service-bubble/gmail.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/gmail.js +435 -7
- package/dist/bubbles/service-bubble/gmail.js.map +1 -1
- package/dist/bubbles/service-bubble/google-calendar.d.ts +36 -36
- package/dist/bubbles/service-bubble/google-drive.d.ts +233 -4
- package/dist/bubbles/service-bubble/google-drive.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/google-drive.js +65 -75
- package/dist/bubbles/service-bubble/google-drive.js.map +1 -1
- package/dist/bubbles/service-bubble/google-sheets.d.ts +52 -52
- package/dist/bubbles/service-bubble/hello-world.js +2 -2
- package/dist/bubbles/service-bubble/hello-world.js.map +1 -1
- package/dist/bubbles/service-bubble/http.d.ts +6 -6
- package/dist/bubbles/service-bubble/postgresql.d.ts +4 -4
- package/dist/bubbles/service-bubble/resend.d.ts +5 -5
- package/dist/bubbles/service-bubble/resend.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/resend.js +16 -5
- package/dist/bubbles/service-bubble/resend.js.map +1 -1
- package/dist/bubbles/service-bubble/slack.d.ts +18 -18
- package/dist/bubbles/service-bubble/storage.d.ts +4 -4
- package/dist/bubbles/service-bubble/storage.d.ts.map +1 -1
- package/dist/bubbles/service-bubble/storage.js +16 -5
- package/dist/bubbles/service-bubble/storage.js.map +1 -1
- package/dist/bubbles/service-bubble/x-twitter.d.ts +814 -0
- package/dist/bubbles/service-bubble/x-twitter.d.ts.map +1 -0
- package/dist/bubbles/service-bubble/x-twitter.js +445 -0
- package/dist/bubbles/service-bubble/x-twitter.js.map +1 -0
- package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +20 -20
- package/dist/bubbles/tool-bubble/chart-js-tool.d.ts +16 -16
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts +14 -1
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js +101 -47
- package/dist/bubbles/tool-bubble/get-bubble-details-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts +435 -0
- package/dist/bubbles/tool-bubble/instagram-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/instagram-tool.js +474 -0
- package/dist/bubbles/tool-bubble/instagram-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +2136 -0
- package/dist/bubbles/tool-bubble/linkedin-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/linkedin-tool.js +608 -0
- package/dist/bubbles/tool-bubble/linkedin-tool.js.map +1 -0
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +69 -64
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.js +97 -22
- package/dist/bubbles/tool-bubble/reddit-scrape-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +6 -6
- package/dist/bubbles/tool-bubble/research-agent-tool.js +5 -5
- package/dist/bubbles/tool-bubble/research-agent-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/tool-template.d.ts +8 -8
- package/dist/bubbles/tool-bubble/web-crawl-tool.d.ts +14 -14
- package/dist/bubbles/tool-bubble/web-extract-tool.d.ts +4 -4
- package/dist/bubbles/tool-bubble/web-scrape-tool.d.ts +28 -28
- package/dist/bubbles/tool-bubble/web-scrape-tool.js +1 -1
- package/dist/bubbles/tool-bubble/web-scrape-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts +5 -4
- package/dist/bubbles/tool-bubble/web-search-tool.d.ts.map +1 -1
- package/dist/bubbles/tool-bubble/web-search-tool.js +6 -2
- package/dist/bubbles/tool-bubble/web-search-tool.js.map +1 -1
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts +394 -0
- package/dist/bubbles/tool-bubble/youtube-tool.d.ts.map +1 -0
- package/dist/bubbles/tool-bubble/youtube-tool.js +352 -0
- package/dist/bubbles/tool-bubble/youtube-tool.js.map +1 -0
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts +47 -36
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js +96 -65
- package/dist/bubbles/workflow-bubble/bubbleflow-generator.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +38 -38
- package/dist/bubbles/workflow-bubble/generate-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/generate-document.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/parse-document.workflow.d.ts +42 -42
- package/dist/bubbles/workflow-bubble/parse-document.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/parse-document.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +22 -22
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js +1 -4
- package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts +60 -60
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js +2 -2
- package/dist/bubbles/workflow-bubble/pdf-ocr.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +20 -20
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js +1 -1
- package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +66 -66
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.js +1 -1
- package/dist/bubbles/workflow-bubble/slack-formatter-agent.js.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts +18 -18
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.d.ts.map +1 -1
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js +1 -2
- package/dist/bubbles/workflow-bubble/slack-notifier.workflow.js.map +1 -1
- package/dist/bubbles.json +489 -0
- package/dist/index.d.ts +16 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/logging/BubbleLogger.d.ts +11 -0
- package/dist/logging/BubbleLogger.d.ts.map +1 -1
- package/dist/logging/BubbleLogger.js +87 -33
- package/dist/logging/BubbleLogger.js.map +1 -1
- package/dist/logging/StreamingBubbleLogger.d.ts.map +1 -1
- package/dist/logging/StreamingBubbleLogger.js +23 -16
- package/dist/logging/StreamingBubbleLogger.js.map +1 -1
- package/dist/test-gm.d.ts +10 -0
- package/dist/test-gm.d.ts.map +1 -0
- package/dist/test-gm.js +95 -0
- package/dist/test-gm.js.map +1 -0
- package/dist/types/available-tools.d.ts +1 -1
- package/dist/types/available-tools.d.ts.map +1 -1
- package/dist/types/available-tools.js +2 -0
- package/dist/types/available-tools.js.map +1 -1
- package/dist/types/base-bubble-class.d.ts +6 -1
- package/dist/types/base-bubble-class.d.ts.map +1 -1
- package/dist/types/base-bubble-class.js +47 -24
- package/dist/types/base-bubble-class.js.map +1 -1
- package/dist/types/bubble.d.ts +3 -13
- package/dist/types/bubble.d.ts.map +1 -1
- package/dist/types/bubble.js +1 -1
- package/dist/types/bubble.js.map +1 -1
- package/dist/types/service-bubble-class.d.ts +5 -5
- package/dist/types/service-bubble-class.d.ts.map +1 -1
- package/dist/types/service-bubble-class.js +6 -7
- package/dist/types/service-bubble-class.js.map +1 -1
- package/dist/types/tool-bubble-class.d.ts +1 -1
- package/dist/types/tool-bubble-class.d.ts.map +1 -1
- package/dist/types/tool-bubble-class.js +9 -3
- package/dist/types/tool-bubble-class.js.map +1 -1
- package/dist/types/workflow-bubble-class.d.ts +1 -1
- package/dist/types/workflow-bubble-class.d.ts.map +1 -1
- package/dist/utils/agent-formatter.d.ts +17 -0
- package/dist/utils/agent-formatter.d.ts.map +1 -0
- package/dist/utils/agent-formatter.js +139 -0
- package/dist/utils/agent-formatter.js.map +1 -0
- package/dist/utils/bubbleflow-validation.d.ts.map +1 -1
- package/dist/utils/bubbleflow-validation.js +89 -32
- package/dist/utils/bubbleflow-validation.js.map +1 -1
- package/dist/utils/error-sanitizer.d.ts +12 -0
- package/dist/utils/error-sanitizer.d.ts.map +1 -0
- package/dist/utils/error-sanitizer.js +77 -0
- package/dist/utils/error-sanitizer.js.map +1 -0
- package/dist/utils/json-parsing.d.ts +1 -0
- package/dist/utils/json-parsing.d.ts.map +1 -1
- package/dist/utils/json-parsing.js +205 -32
- package/dist/utils/json-parsing.js.map +1 -1
- package/package.json +6 -5
- package/dist/bubble-trigger/index.d.ts +0 -2
- package/dist/bubble-trigger/index.d.ts.map +0 -1
- package/dist/bubble-trigger/index.js +0 -2
- package/dist/bubble-trigger/index.js.map +0 -1
- package/dist/bubble-trigger/types.d.ts +0 -87
- package/dist/bubble-trigger/types.d.ts.map +0 -1
- package/dist/bubble-trigger/types.js +0 -14
- package/dist/bubble-trigger/types.js.map +0 -1
- package/dist/types/ai-models.d.ts +0 -4
- package/dist/types/ai-models.d.ts.map +0 -1
- package/dist/types/ai-models.js +0 -16
- package/dist/types/ai-models.js.map +0 -1
|
@@ -8,10 +8,20 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { z } from 'zod';
|
|
10
10
|
import { WorkflowBubble } from '../../types/workflow-bubble-class.js';
|
|
11
|
-
import { CredentialType } from '@bubblelab/shared-schemas';
|
|
11
|
+
import { CredentialType, GenerationResultSchema, CRITICAL_INSTRUCTIONS, VALIDATION_PROCESS, BUBBLE_SPECIFIC_INSTRUCTIONS, } from '@bubblelab/shared-schemas';
|
|
12
12
|
import { AIAgentBubble, } from '../service-bubble/ai-agent.js';
|
|
13
13
|
import { ToolMessage } from '@langchain/core/messages';
|
|
14
14
|
import { BubbleFactory } from '../../bubble-factory.js';
|
|
15
|
+
/**
|
|
16
|
+
* Extract unique bubble names from validation result
|
|
17
|
+
*/
|
|
18
|
+
function extractBubbleNames(validationResult) {
|
|
19
|
+
if (!validationResult?.bubbles) {
|
|
20
|
+
return [];
|
|
21
|
+
}
|
|
22
|
+
const bubbleNames = validationResult.bubbles.map((b) => b.bubbleName);
|
|
23
|
+
return Array.from(new Set(bubbleNames));
|
|
24
|
+
}
|
|
15
25
|
/**
|
|
16
26
|
* Parameters schema for the simple BubbleFlow generator
|
|
17
27
|
*/
|
|
@@ -25,26 +35,6 @@ const BubbleFlowGeneratorParamsSchema = z.object({
|
|
|
25
35
|
.optional()
|
|
26
36
|
.describe('Credentials for AI agent operations'),
|
|
27
37
|
});
|
|
28
|
-
/**
|
|
29
|
-
* Result schema
|
|
30
|
-
*/
|
|
31
|
-
const BubbleFlowGeneratorResultSchema = z.object({
|
|
32
|
-
generatedCode: z
|
|
33
|
-
.string()
|
|
34
|
-
.describe('The generated BubbleFlow TypeScript code'),
|
|
35
|
-
isValid: z.boolean().describe('Whether the generated code is valid'),
|
|
36
|
-
success: z.boolean(),
|
|
37
|
-
error: z.string(),
|
|
38
|
-
toolCalls: z.array(z.any()).describe('The tool calls made by the AI agent'),
|
|
39
|
-
summary: z
|
|
40
|
-
.string()
|
|
41
|
-
.default('')
|
|
42
|
-
.describe('High-level instructions for using the validated flow'),
|
|
43
|
-
inputsSchema: z
|
|
44
|
-
.string()
|
|
45
|
-
.default('')
|
|
46
|
-
.describe('JSON Schema (string) representing the inputs of the flow'),
|
|
47
|
-
});
|
|
48
38
|
// Shared constants and prompts
|
|
49
39
|
const AI_MODEL_CONFIG = {
|
|
50
40
|
model: 'google/gemini-2.5-pro',
|
|
@@ -64,37 +54,7 @@ WORKFLOW:
|
|
|
64
54
|
3. Write code using exact patterns from bubble details
|
|
65
55
|
4. Use bubbleflow-validation iteratively until valid
|
|
66
56
|
5. Do not provide a response until your code is fully validated`;
|
|
67
|
-
|
|
68
|
-
1. Start with the exact boilerplate template above (it has all the correct imports and class structure), come up with a name for the flow based on the user's request, export class [name] extends BubbleFlow
|
|
69
|
-
2. Properly type the payload import and output interface based on the user's request, create typescript interfaces for them
|
|
70
|
-
2. BEFORE writing any code, identify which bubbles you plan to use from the available list
|
|
71
|
-
3. For EACH bubble you plan to use, ALWAYS call get-bubble-details-tool first to understand:
|
|
72
|
-
- The correct input parameters and their types
|
|
73
|
-
- The expected output structure in result.data
|
|
74
|
-
- How to properly handle success/error cases
|
|
75
|
-
4. Replace the handle method with logic that fulfills the user's request
|
|
76
|
-
5. Use the exact parameter structures shown in the bubble details
|
|
77
|
-
6. If deterministic tool calls and branch logic are possible, there is no need to use AI agent.
|
|
78
|
-
7. Access bubble outputs safely using result.data with null checking (e.g., result.data?.someProperty or check if result.data exists first)
|
|
79
|
-
9. Return meaningful data from the handle method
|
|
80
|
-
10. DO NOT include credentials in bubble parameters - credentials are handled automatically
|
|
81
|
-
11. CRITICAL: Always use the pattern: const result = await new SomeBubble({params}).action() - NEVER use runBubble, this.runBubble, or any other method
|
|
82
|
-
12. When using AI Agent, ensure your prompt includes comprehensive context and explicitly pass in all relevant information needed for the task. Be thorough in providing complete data rather than expecting the AI to infer or assume missing details (unless the information must be retrieved from an online source)
|
|
83
|
-
13. When generating and dealing with images, process them one at a time to ensure proper handling and avoid overwhelming the system
|
|
84
|
-
14. When dealing with other async operations in for loops, batch the requests 5 at a time at most and use Promise.all to handle them efficiently. Always declare bubble instances separately outside of callbacks, loops, or maps before calling .action() - avoid instantiating bubbles directly within map(), forEach(), or other callback functions.
|
|
85
|
-
|
|
86
|
-
CRITICAL: You MUST use get-bubble-details-tool for every bubble before using it in your code!`;
|
|
87
|
-
const VALIDATION_PROCESS = `CRITICAL VALIDATION PROCESS:
|
|
88
|
-
1. After generating the initial code, ALWAYS use the bubbleflow-validation to validate it
|
|
89
|
-
2. If validation fails, you MUST analyze ALL errors carefully and fix EVERY single one
|
|
90
|
-
3. Use the bubbleflow-validation again to validate the fixed code
|
|
91
|
-
4. If there are still errors, fix them ALL and validate again
|
|
92
|
-
5. Repeat this validation-fix cycle until the code passes validation with NO ERRORS (valid: true)
|
|
93
|
-
6. Do NOT stop until you get a successful validation result with valid: true and no errors
|
|
94
|
-
7. NEVER provide code that has validation errors - keep fixing until it's completely error-free
|
|
95
|
-
8. IMPORTANT: Use .action() on the to call the bubble, (this is the only way to run a bubble) - NEVER use runBubble() or any other method
|
|
96
|
-
|
|
97
|
-
Only return the final TypeScript code that passes validation. No explanations or markdown formatting.`;
|
|
57
|
+
// CRITICAL_INSTRUCTIONS and VALIDATION_PROCESS are now imported from @bubblelab/shared-schemas
|
|
98
58
|
/**
|
|
99
59
|
* Simple BubbleFlow Generator using AI agent with tools
|
|
100
60
|
*/
|
|
@@ -102,7 +62,7 @@ export class BubbleFlowGeneratorWorkflow extends WorkflowBubble {
|
|
|
102
62
|
static type = 'workflow';
|
|
103
63
|
static bubbleName = 'bubbleflow-generator';
|
|
104
64
|
static schema = BubbleFlowGeneratorParamsSchema;
|
|
105
|
-
static resultSchema =
|
|
65
|
+
static resultSchema = GenerationResultSchema;
|
|
106
66
|
static shortDescription = 'Generate BubbleFlow code from natural language';
|
|
107
67
|
static longDescription = `
|
|
108
68
|
Simple BubbleFlow generator that uses AI with validation tools.
|
|
@@ -155,6 +115,7 @@ export class BubbleFlowGeneratorWorkflow extends WorkflowBubble {
|
|
|
155
115
|
let validatedCode = code;
|
|
156
116
|
let isValid = false;
|
|
157
117
|
let validationError = 'Validation agent failed';
|
|
118
|
+
let bubblesUsed = [];
|
|
158
119
|
// Handle both streaming (direct response) and non-streaming (wrapped in data) results
|
|
159
120
|
const isStreamingResult = 'response' in validationRun;
|
|
160
121
|
const response = isStreamingResult
|
|
@@ -193,12 +154,22 @@ export class BubbleFlowGeneratorWorkflow extends WorkflowBubble {
|
|
|
193
154
|
else {
|
|
194
155
|
validationContent = JSON.stringify(lastToolCall.output);
|
|
195
156
|
}
|
|
196
|
-
const
|
|
157
|
+
const parsedResult = JSON.parse(validationContent);
|
|
158
|
+
console.log('[BubbleFlowGenerator] Raw validation result structure:', {
|
|
159
|
+
hasData: !!parsedResult.data,
|
|
160
|
+
hasTopLevelValid: 'valid' in parsedResult,
|
|
161
|
+
hasNestedValid: parsedResult.data && 'valid' in parsedResult.data,
|
|
162
|
+
});
|
|
163
|
+
// Unwrap the result if it's wrapped in a data object
|
|
164
|
+
const validationResult = parsedResult.data || parsedResult;
|
|
197
165
|
isValid = validationResult.valid === true;
|
|
198
166
|
validationError =
|
|
199
167
|
validationResult.error ||
|
|
200
168
|
(validationResult.errors && validationResult.errors.join('; ')) ||
|
|
201
169
|
'';
|
|
170
|
+
// Extract bubble names from validation result
|
|
171
|
+
bubblesUsed = extractBubbleNames(validationResult);
|
|
172
|
+
console.log('[BubbleFlowGenerator] ✅ Validation parsed - valid:', isValid, 'error:', validationError || 'none', 'bubblesUsed:', bubblesUsed);
|
|
202
173
|
}
|
|
203
174
|
catch (e) {
|
|
204
175
|
isValid = true;
|
|
@@ -212,6 +183,7 @@ export class BubbleFlowGeneratorWorkflow extends WorkflowBubble {
|
|
|
212
183
|
isValid,
|
|
213
184
|
validationError,
|
|
214
185
|
toolCalls,
|
|
186
|
+
bubblesUsed,
|
|
215
187
|
};
|
|
216
188
|
}
|
|
217
189
|
async runSummarizeAgent(validatedCode, credentials, streamingCallback) {
|
|
@@ -289,6 +261,8 @@ ${bubbleDescriptions}
|
|
|
289
261
|
|
|
290
262
|
${CRITICAL_INSTRUCTIONS}
|
|
291
263
|
|
|
264
|
+
${BUBBLE_SPECIFIC_INSTRUCTIONS}
|
|
265
|
+
|
|
292
266
|
${VALIDATION_PROCESS}`;
|
|
293
267
|
}
|
|
294
268
|
createStreamingSystemPrompt(boilerplate, bubbleDescriptions) {
|
|
@@ -363,6 +337,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
363
337
|
error: result.error || 'Failed to generate code',
|
|
364
338
|
summary: '',
|
|
365
339
|
inputsSchema: '',
|
|
340
|
+
bubblesUsed: [],
|
|
366
341
|
};
|
|
367
342
|
}
|
|
368
343
|
console.log('[BubbleFlowGenerator] Processing AI response...');
|
|
@@ -373,6 +348,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
373
348
|
// Check if the AI made any tool calls and get validation from the last one
|
|
374
349
|
let isValid = true;
|
|
375
350
|
let validationError = '';
|
|
351
|
+
let bubblesUsed = [];
|
|
376
352
|
let needsValidationAgent = false;
|
|
377
353
|
if (result.data.toolCalls && result.data.toolCalls.length > 0) {
|
|
378
354
|
console.log('[BubbleFlowGenerator] Found', result.data.toolCalls.length, 'tool calls');
|
|
@@ -405,20 +381,33 @@ ${VALIDATION_PROCESS}`;
|
|
|
405
381
|
console.log('[BubbleFlowGenerator] Unexpected output type:', typeof lastToolCall.output);
|
|
406
382
|
validationContent = JSON.stringify(lastToolCall.output);
|
|
407
383
|
}
|
|
408
|
-
const
|
|
384
|
+
const parsedResult = JSON.parse(validationContent);
|
|
385
|
+
console.log('[BubbleFlowGenerator] 🔍 Validation tool output structure:', {
|
|
386
|
+
hasData: !!parsedResult.data,
|
|
387
|
+
hasTopLevelValid: 'valid' in parsedResult,
|
|
388
|
+
hasNestedValid: parsedResult.data && 'valid' in parsedResult.data,
|
|
389
|
+
topLevelValid: parsedResult.valid,
|
|
390
|
+
nestedValid: parsedResult.data?.valid,
|
|
391
|
+
});
|
|
392
|
+
// Unwrap the result if it's wrapped in a data object
|
|
393
|
+
// The ToolBubble base class wraps results in { success, data, error }
|
|
394
|
+
const validationResult = parsedResult.data || parsedResult;
|
|
409
395
|
isValid = validationResult.valid === true;
|
|
410
396
|
validationError =
|
|
411
397
|
validationResult.error ||
|
|
412
398
|
(validationResult.errors && validationResult.errors.join('; ')) ||
|
|
413
399
|
'';
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
});
|
|
400
|
+
// Extract bubble names from validation result
|
|
401
|
+
bubblesUsed = extractBubbleNames(validationResult);
|
|
402
|
+
console.log('[BubbleFlowGenerator] ✅ Validation result - valid:', isValid, 'needsAgent:', !isValid, 'bubblesUsed:', bubblesUsed);
|
|
418
403
|
// If validation ran but code is still invalid, trigger validationAgent to self-heal
|
|
419
404
|
if (!isValid) {
|
|
405
|
+
console.log('[BubbleFlowGenerator] ⚠️ Validation FAILED, will spawn validation agent. Errors:', validationError);
|
|
420
406
|
needsValidationAgent = true;
|
|
421
407
|
}
|
|
408
|
+
else {
|
|
409
|
+
console.log('[BubbleFlowGenerator] ✓ Validation PASSED, no validation agent needed');
|
|
410
|
+
}
|
|
422
411
|
}
|
|
423
412
|
catch (parseError) {
|
|
424
413
|
console.log('[BubbleFlowGenerator] Failed to parse validation output:', parseError);
|
|
@@ -437,9 +426,10 @@ ${VALIDATION_PROCESS}`;
|
|
|
437
426
|
}
|
|
438
427
|
if (needsValidationAgent) {
|
|
439
428
|
console.log('[BubbleFlowGenerator] Spawning validationAgent to validate code...');
|
|
440
|
-
const { validatedCode, isValid: validated, validationError: vErr, } = await this.runValidationAgent(generatedCode, this.params.credentials);
|
|
429
|
+
const { validatedCode, isValid: validated, validationError: vErr, bubblesUsed: validationBubbles, } = await this.runValidationAgent(generatedCode, this.params.credentials);
|
|
441
430
|
isValid = validated;
|
|
442
431
|
validationError = vErr;
|
|
432
|
+
bubblesUsed = validationBubbles;
|
|
443
433
|
const { summary, inputsSchema } = isValid
|
|
444
434
|
? await this.runSummarizeAgent(validatedCode, this.params.credentials)
|
|
445
435
|
: { summary: '', inputsSchema: '' };
|
|
@@ -451,6 +441,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
451
441
|
error: validationError,
|
|
452
442
|
summary,
|
|
453
443
|
inputsSchema,
|
|
444
|
+
bubblesUsed,
|
|
454
445
|
};
|
|
455
446
|
}
|
|
456
447
|
console.log('[BubbleFlowGenerator] Generation completed');
|
|
@@ -469,6 +460,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
469
460
|
error: validationError, // Include validation error for reference
|
|
470
461
|
summary,
|
|
471
462
|
inputsSchema,
|
|
463
|
+
bubblesUsed,
|
|
472
464
|
};
|
|
473
465
|
}
|
|
474
466
|
catch (error) {
|
|
@@ -483,6 +475,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
483
475
|
: 'Unknown error during generation',
|
|
484
476
|
summary: '',
|
|
485
477
|
inputsSchema: '',
|
|
478
|
+
bubblesUsed: [],
|
|
486
479
|
};
|
|
487
480
|
}
|
|
488
481
|
}
|
|
@@ -491,7 +484,8 @@ ${VALIDATION_PROCESS}`;
|
|
|
491
484
|
*/
|
|
492
485
|
async actionWithStreaming(streamingCallback, context) {
|
|
493
486
|
void context;
|
|
494
|
-
console.log('[BubbleFlowGenerator] Starting streaming generation process
|
|
487
|
+
console.log('[BubbleFlowGenerator] Starting streaming generation process with prompt: ' +
|
|
488
|
+
this.params.prompt);
|
|
495
489
|
console.log('[BubbleFlowGenerator] Prompt:', this.params.prompt);
|
|
496
490
|
try {
|
|
497
491
|
await streamingCallback({
|
|
@@ -526,6 +520,10 @@ ${VALIDATION_PROCESS}`;
|
|
|
526
520
|
type: 'tool_complete',
|
|
527
521
|
data: {
|
|
528
522
|
callId: 'discovery-1',
|
|
523
|
+
tool: 'bubble-discovery',
|
|
524
|
+
input: {
|
|
525
|
+
action: 'listing_available_bubbles',
|
|
526
|
+
},
|
|
529
527
|
output: {
|
|
530
528
|
availableBubbles: availableBubbles.length,
|
|
531
529
|
descriptions: bubbleDescriptions,
|
|
@@ -547,6 +545,8 @@ ${VALIDATION_PROCESS}`;
|
|
|
547
545
|
await streamingCallback({
|
|
548
546
|
type: 'tool_complete',
|
|
549
547
|
data: {
|
|
548
|
+
tool: 'template-generation',
|
|
549
|
+
input: { action: 'generating_boilerplate' },
|
|
550
550
|
callId: 'template-1',
|
|
551
551
|
output: { templateGenerated: true, length: boilerplate.length },
|
|
552
552
|
duration: 50,
|
|
@@ -587,15 +587,17 @@ ${VALIDATION_PROCESS}`;
|
|
|
587
587
|
error: result.error || 'Failed to generate code',
|
|
588
588
|
summary: '',
|
|
589
589
|
inputsSchema: '',
|
|
590
|
+
bubblesUsed: [],
|
|
590
591
|
};
|
|
591
592
|
}
|
|
592
|
-
|
|
593
|
+
let generatedCode = result.response
|
|
593
594
|
.replace(/```typescript/g, '')
|
|
594
595
|
.replace(/```/g, '')
|
|
595
596
|
.trim();
|
|
596
597
|
// Check validation status from tool calls
|
|
597
598
|
let isValid = true;
|
|
598
599
|
let validationError = '';
|
|
600
|
+
let bubblesUsed = [];
|
|
599
601
|
console.log('[BubbleFlowGenerator] Checking validation status...');
|
|
600
602
|
let needsValidationAgent = false;
|
|
601
603
|
if (result.toolCalls && result.toolCalls.length > 0) {
|
|
@@ -607,6 +609,10 @@ ${VALIDATION_PROCESS}`;
|
|
|
607
609
|
try {
|
|
608
610
|
// Handle ToolMessage object with content property
|
|
609
611
|
let validationContent;
|
|
612
|
+
console.log('[BubbleFlowGenerator] Last tool call output:', lastToolCall.input);
|
|
613
|
+
// Parse the input as a JSON object
|
|
614
|
+
const input = JSON.parse(lastToolCall.input.input);
|
|
615
|
+
generatedCode = input.code;
|
|
610
616
|
if (lastToolCall.output instanceof ToolMessage) {
|
|
611
617
|
const content = lastToolCall.output.content;
|
|
612
618
|
validationContent =
|
|
@@ -626,16 +632,31 @@ ${VALIDATION_PROCESS}`;
|
|
|
626
632
|
console.log('[BubbleFlowGenerator] Unexpected output type:', typeof lastToolCall.output);
|
|
627
633
|
validationContent = JSON.stringify(lastToolCall.output);
|
|
628
634
|
}
|
|
629
|
-
const
|
|
630
|
-
console.log('[BubbleFlowGenerator]
|
|
635
|
+
const parsedResult = JSON.parse(validationContent);
|
|
636
|
+
console.log('[BubbleFlowGenerator] 🔍 Validation agent output structure:', {
|
|
637
|
+
hasData: !!parsedResult.data,
|
|
638
|
+
hasTopLevelValid: 'valid' in parsedResult,
|
|
639
|
+
hasNestedValid: parsedResult.data && 'valid' in parsedResult.data,
|
|
640
|
+
topLevelValid: parsedResult.valid,
|
|
641
|
+
nestedValid: parsedResult.data?.valid,
|
|
642
|
+
});
|
|
643
|
+
// Unwrap the result if it's wrapped in a data object
|
|
644
|
+
const validationResult = parsedResult.data || parsedResult;
|
|
631
645
|
isValid = validationResult.valid === true;
|
|
632
646
|
validationError =
|
|
633
647
|
validationResult.error ||
|
|
634
648
|
(validationResult.errors && validationResult.errors.join('; ')) ||
|
|
635
649
|
'';
|
|
650
|
+
// Extract bubble names from validation result
|
|
651
|
+
bubblesUsed = extractBubbleNames(validationResult);
|
|
652
|
+
console.log('[BubbleFlowGenerator] ✅ Validation agent result - valid:', isValid, 'bubblesUsed:', bubblesUsed);
|
|
636
653
|
if (!isValid) {
|
|
654
|
+
console.log('[BubbleFlowGenerator] ⚠️ Validation agent says INVALID, will try again. First error:', validationResult.errors?.[0]?.substring(0, 100));
|
|
637
655
|
needsValidationAgent = true;
|
|
638
656
|
}
|
|
657
|
+
else {
|
|
658
|
+
console.log('[BubbleFlowGenerator] ✓ Validation agent says VALID');
|
|
659
|
+
}
|
|
639
660
|
}
|
|
640
661
|
catch (parseError) {
|
|
641
662
|
console.log('Failed to parse validation output:', parseError);
|
|
@@ -662,10 +683,12 @@ ${VALIDATION_PROCESS}`;
|
|
|
662
683
|
callId: 'validation-agent-1',
|
|
663
684
|
},
|
|
664
685
|
});
|
|
665
|
-
const { validatedCode, isValid: validated, validationError: vErr, } = await this.runValidationAgent(generatedCode, this.params.credentials, streamingCallback);
|
|
686
|
+
const { validatedCode, isValid: validated, validationError: vErr, bubblesUsed: validationBubbles, } = await this.runValidationAgent(generatedCode, this.params.credentials, streamingCallback);
|
|
666
687
|
await streamingCallback({
|
|
667
688
|
type: 'tool_complete',
|
|
668
689
|
data: {
|
|
690
|
+
tool: 'validation-agent',
|
|
691
|
+
input: { action: 'validating_generated_code' },
|
|
669
692
|
callId: 'validation-agent-1',
|
|
670
693
|
output: { success: validated },
|
|
671
694
|
duration: 100,
|
|
@@ -673,6 +696,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
673
696
|
});
|
|
674
697
|
isValid = validated;
|
|
675
698
|
validationError = vErr;
|
|
699
|
+
bubblesUsed = validationBubbles;
|
|
676
700
|
let summary = '';
|
|
677
701
|
let inputsSchema = '';
|
|
678
702
|
if (isValid) {
|
|
@@ -691,6 +715,8 @@ ${VALIDATION_PROCESS}`;
|
|
|
691
715
|
type: 'tool_complete',
|
|
692
716
|
data: {
|
|
693
717
|
callId: 'summary-agent-1',
|
|
718
|
+
tool: 'summary-agent',
|
|
719
|
+
input: { action: 'generating_summary_and_schema' },
|
|
694
720
|
output: {
|
|
695
721
|
summaryGenerated: !!summary,
|
|
696
722
|
schemaGenerated: !!inputsSchema,
|
|
@@ -707,6 +733,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
707
733
|
error: validationError,
|
|
708
734
|
summary,
|
|
709
735
|
inputsSchema,
|
|
736
|
+
bubblesUsed,
|
|
710
737
|
};
|
|
711
738
|
}
|
|
712
739
|
console.log('[BubbleFlowGenerator] Streaming generation completed');
|
|
@@ -731,6 +758,8 @@ ${VALIDATION_PROCESS}`;
|
|
|
731
758
|
type: 'tool_complete',
|
|
732
759
|
data: {
|
|
733
760
|
callId: 'summary-agent-final',
|
|
761
|
+
tool: 'summary-agent',
|
|
762
|
+
input: { action: 'generating_summary_and_schema' },
|
|
734
763
|
output: {
|
|
735
764
|
summaryGenerated: !!summary,
|
|
736
765
|
schemaGenerated: !!inputsSchema,
|
|
@@ -747,6 +776,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
747
776
|
error: validationError,
|
|
748
777
|
summary,
|
|
749
778
|
inputsSchema,
|
|
779
|
+
bubblesUsed,
|
|
750
780
|
};
|
|
751
781
|
}
|
|
752
782
|
catch (error) {
|
|
@@ -770,6 +800,7 @@ ${VALIDATION_PROCESS}`;
|
|
|
770
800
|
: 'Unknown error during generation',
|
|
771
801
|
summary: '',
|
|
772
802
|
inputsSchema: '',
|
|
803
|
+
bubblesUsed: [],
|
|
773
804
|
};
|
|
774
805
|
}
|
|
775
806
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bubbleflow-generator.workflow.js","sourceRoot":"","sources":["../../../src/bubbles/workflow-bubble/bubbleflow-generator.workflow.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bubbleflow-generator.workflow.js","sourceRoot":"","sources":["../../../src/bubbles/workflow-bubble/bubbleflow-generator.workflow.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAEtE,OAAO,EACL,cAAc,EACd,sBAAsB,EAEtB,qBAAqB,EACrB,kBAAkB,EAClB,4BAA4B,GAC7B,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,aAAa,GAEd,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AA+BxD;;GAEG;AACH,SAAS,kBAAkB,CAAC,gBAAmC;IAC7D,IAAI,CAAC,gBAAgB,EAAE,OAAO,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IACtE,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;AAC1C,CAAC;AAED;;GAEG;AACH,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,EAAE,oBAAoB,CAAC;SAC5B,QAAQ,CAAC,wDAAwD,CAAC;IAErE,WAAW,EAAE,CAAC;SACX,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;SAChD,QAAQ,EAAE;SACV,QAAQ,CAAC,qCAAqC,CAAC;CACnD,CAAC,CAAC;AAMH,+BAA+B;AAC/B,MAAM,eAAe,GAAG;IACtB,KAAK,EAAE,uBAAuB;IAC9B,WAAW,EAAE,GAAG;CACR,CAAC;AAEX,MAAM,cAAc,GAAG,EAAE,CAAC;AAE1B,MAAM,UAAU,GAAG;IACjB,UAAU,EAAE,4BAA4B;IACxC,cAAc,EAAE,yBAAyB;IACzC,YAAY,EAAE,mBAAmB;CACzB,CAAC;AAEX,MAAM,kBAAkB,GAAG;;;;;;;gEAOqC,CAAC;AAEjE,+FAA+F;AAE/F;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,cAGhD;IACC,MAAM,CAAU,IAAI,GAAG,UAAmB,CAAC;IAC3C,MAAM,CAAU,UAAU,GAAG,sBAAsB,CAAC;IACpD,MAAM,CAAU,MAAM,GAAG,+BAA+B,CAAC;IACzD,MAAM,CAAU,YAAY,GAAG,sBAAsB,CAAC;IACtD,MAAM,CAAU,gBAAgB,GAC9B,gDAAgD,CAAC;IACnD,MAAM,CAAU,eAAe,GAAG;;;;;;;;;;GAUjC,CAAC;IACF,MAAM,CAAU,KAAK,GAAG,eAAe,CAAC;IAEhC,aAAa,CAAgB;IAErC,YACE,MAAuD,EACvD,OAAuB;QAEvB,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,IAAY,EACZ,WAAqD,EACrD,iBAAqC;QAQrC,MAAM,eAAe,GAAG,IAAI,aAAa,CACvC;YACE,IAAI,EAAE,kBAAkB;YACxB,OAAO,EACL,oHAAoH;gBACpH,yFAAyF;gBACzF,6MAA6M;gBAC7M,aAAa;gBACb,IAAI;YACN,YAAY,EACV,mGAAmG;gBACnG,wFAAwF;YAC1F,KAAK,EAAE,eAAe;YACtB,KAAK,EAAE;gBACL;oBACE,IAAI,EAAE,UAAU,CAAC,UAAU;oBAC3B,WAAW,EAAE,WAAW,IAAI,EAAE;iBAC/B;gBACD;oBACE,IAAI,EAAE,UAAU,CAAC,cAAc;oBAC/B,WAAW,EAAE,WAAW,IAAI,EAAE;iBAC/B;gBACD;oBACE,IAAI,EAAE,UAAU,CAAC,YAAY;oBAC7B,WAAW,EAAE,WAAW,IAAI,EAAE;iBAC/B;aACF;YACD,aAAa,EAAE,EAAE;YACjB,WAAW;SACZ,EACD,IAAI,CAAC,OAAO,CACb,CAAC;QAEF,MAAM,aAAa,GAAG,iBAAiB;YACrC,CAAC,CAAC,MAAM,eAAe,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;YAC9D,CAAC,CAAC,MAAM,eAAe,CAAC,MAAM,EAAE,CAAC;QACnC,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,eAAe,GAAG,yBAAyB,CAAC;QAChD,IAAI,WAAW,GAAa,EAAE,CAAC;QAC/B,sFAAsF;QACtF,MAAM,iBAAiB,GAAG,UAAU,IAAI,aAAa,CAAC;QACtD,MAAM,QAAQ,GAAG,iBAAiB;YAChC,CAAC,CAAC,aAAa,CAAC,QAAQ;YACxB,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,QAAQ,CAAC;QACjC,MAAM,SAAS,GAAG,iBAAiB;YACjC,CAAC,CAAC,aAAa,CAAC,SAAS;YACzB,CAAC,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC;QAElC,IAAI,aAAa,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC;YACtC,aAAa,GAAG,QAAQ;iBACrB,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;iBAC7B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACnB,IAAI,EAAE,CAAC;YAEV,IAAI,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACtC,MAAM,YAAY,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAmB,CAAC;gBAEvE,IACE,CAAC,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU;oBAC1C,YAAY,CAAC,IAAI,KAAK,uBAAuB,CAAC;oBAChD,YAAY,CAAC,MAAM,EACnB,CAAC;oBACD,IAAI,CAAC;wBACH,IAAI,iBAAyB,CAAC;wBAC9B,IAAI,YAAY,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;4BAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;4BAC5C,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IACL,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ;4BACvC,YAAY,CAAC,MAAM,KAAK,IAAI;4BAC5B,SAAS,IAAI,YAAY,CAAC,MAAM,EAChC,CAAC;4BACD,MAAM,OAAO,GAAI,YAAY,CAAC,MAAsB,CAAC,OAAO,CAAC;4BAC7D,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IAAI,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BACnD,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;wBAC1C,CAAC;6BAAM,CAAC;4BACN,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;wBACnD,OAAO,CAAC,GAAG,CACT,wDAAwD,EACxD;4BACE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI;4BAC5B,gBAAgB,EAAE,OAAO,IAAI,YAAY;4BACzC,cAAc,EACZ,YAAY,CAAC,IAAI,IAAI,OAAO,IAAI,YAAY,CAAC,IAAI;yBACpD,CACF,CAAC;wBAEF,qDAAqD;wBACrD,MAAM,gBAAgB,GACpB,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC;wBAEpC,OAAO,GAAG,gBAAgB,CAAC,KAAK,KAAK,IAAI,CAAC;wBAC1C,eAAe;4BACb,gBAAgB,CAAC,KAAK;gCACtB,CAAC,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC/D,EAAE,CAAC;wBAEL,8CAA8C;wBAC9C,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;wBAEnD,OAAO,CAAC,GAAG,CACT,oDAAoD,EACpD,OAAO,EACP,QAAQ,EACR,eAAe,IAAI,MAAM,EACzB,cAAc,EACd,WAAW,CACZ,CAAC;oBACJ,CAAC;oBAAC,OAAO,CAAC,EAAE,CAAC;wBACX,OAAO,GAAG,IAAI,CAAC;wBACf,eAAe,GAAG,EAAE,CAAC;oBACvB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO;YACL,aAAa;YACb,OAAO;YACP,eAAe;YACf,SAAS;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,aAAqB,EACrB,WAAqD,EACrD,iBAAqC;QAErC,MAAM,cAAc,GAAG,IAAI,aAAa,CACtC;YACE,IAAI,EAAE,oBAAoB;YAC1B,OAAO,EACL;;qRAE2Q;gBAC3Q,aAAa;YACf,YAAY,EAAE,6VAA6V;YAC3W,KAAK,EAAE;gBACL,QAAQ,EAAE,IAAI;aACf;YACD,KAAK,EAAE,EAAE;YACT,aAAa,EAAE,CAAC;YAChB,WAAW;SACZ,EACD,IAAI,CAAC,OAAO,CACb,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAC;QAChE,MAAM,YAAY,GAAG,iBAAiB;YACpC,CAAC,CAAC,MAAM,cAAc,CAAC,mBAAmB,CAAC,iBAAiB,CAAC;YAC7D,CAAC,CAAC,MAAM,cAAc,CAAC,MAAM,EAAE,CAAC;QAClC,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE;YAC1D,OAAO,EAAE,YAAY,CAAC,OAAO;YAC7B,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,IAAI,YAAY;gBACxC,CAAC,CAAC,YAAY,CAAC,QAAQ;gBACvB,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC;YAChC,KAAK,EAAE,YAAY,CAAC,KAAK;SAC1B,CAAC,CAAC;QAEH,sFAAsF;QACtF,MAAM,iBAAiB,GAAG,UAAU,IAAI,YAAY,CAAC;QACrD,MAAM,QAAQ,GAAG,iBAAiB;YAChC,CAAC,CAAC,YAAY,CAAC,QAAQ;YACvB,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC;QAEhC,IAAI,YAAY,CAAC,OAAO,IAAI,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,oDAAoD,EAAE,GAAG,CAAC,CAAC;gBACvE,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC/B,OAAO,CAAC,GAAG,CACT,uDAAuD,EACvD,MAAM,CACP,CAAC;gBACF,OAAO,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnE,YAAY;oBACV,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrE,OAAO,CAAC,GAAG,CAAC,qDAAqD,EAAE;oBACjE,OAAO;oBACP,YAAY;iBACb,CAAC,CAAC;YACL,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,OAAO,CAAC,KAAK,CACX,gEAAgE,EAChE,UAAU,CACX,CAAC;gBACF,OAAO,GAAG,EAAE,CAAC;gBACb,YAAY,GAAG,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CACT,6DAA6D,EAC7D;gBACE,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,QAAQ,EAAE,QAAQ;gBAClB,KAAK,EAAE,YAAY,CAAC,KAAK;aAC1B,CACF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC;IACnC,CAAC;IAEO,kBAAkB,CACxB,WAAmB,EACnB,kBAA0B;QAE1B,OAAO,GAAG,kBAAkB;;;;EAI9B,WAAW;;;;EAIX,kBAAkB;;EAElB,qBAAqB;;EAErB,4BAA4B;;EAE5B,kBAAkB,EAAE,CAAC;IACrB,CAAC;IAEO,2BAA2B,CACjC,WAAmB,EACnB,kBAA0B;QAE1B,OAAO,GAAG,kBAAkB;;;;EAI9B,WAAW;;;;EAIX,kBAAkB;;EAElB,qBAAqB;;EAErB,kBAAkB,EAAE,CAAC;IACrB,CAAC;IAES,KAAK,CAAC,aAAa,CAC3B,OAAuB;QAEvB,KAAK,OAAO,CAAC;QAEb,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;YAE5C,6BAA6B;YAC7B,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,gBAAgB,CAAC,CAAC;YAE1E,MAAM,kBAAkB,GAAG,gBAAgB;iBACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACtD,OAAO,KAAK,IAAI,KAAK,QAAQ,EAAE,gBAAgB,IAAI,gBAAgB,EAAE,CAAC;YACxE,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,2BAA2B;YAC3B,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,CAAC;YAEvE,gDAAgD;YAChD,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,aAAa,CAC/B;gBACE,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,2EAA2E,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG;gBAEzG,YAAY,EAAE,IAAI,CAAC,kBAAkB,CACnC,WAAW,EACX,kBAAkB,CACnB;gBAED,KAAK,EAAE,eAAe;gBAEtB,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,UAAU,CAAC,UAAU;wBAC3B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE;qBAC3C;oBACD;wBACE,IAAI,EAAE,UAAU,CAAC,cAAc;wBAC/B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE;qBAC3C;iBACF;gBAED,aAAa,EAAE,cAAc;gBAC7B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;aACrC,EACD,IAAI,CAAC,OAAO,CACb,CAAC;YAEF,oBAAoB;YACpB,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;YACpE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,CAAC;YAEtC,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CACT,wCAAwC,EACxC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,CACnC,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC;gBAC9C,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;gBACpE,OAAO;oBACL,SAAS,EAAE,EAAE;oBACb,aAAa,EAAE,EAAE;oBACjB,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,yBAAyB;oBAChD,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,EAAE;oBAChB,WAAW,EAAE,EAAE;iBAChB,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YAC/D,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ;iBACvC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;iBAC7B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACnB,IAAI,EAAE,CAAC;YAEV,2EAA2E;YAC3E,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,eAAe,GAAG,EAAE,CAAC;YACzB,IAAI,WAAW,GAAa,EAAE,CAAC;YAE/B,IAAI,oBAAoB,GAAG,KAAK,CAAC;YAEjC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9D,OAAO,CAAC,GAAG,CACT,6BAA6B,EAC7B,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAC5B,YAAY,CACb,CAAC;gBAEF,oDAAoD;gBACpD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CACxC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CACf,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;gBAExE,IACE,CAAC,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU;oBAC1C,YAAY,CAAC,IAAI,KAAK,uBAAuB,CAAC;oBAChD,YAAY,CAAC,MAAM,EACnB,CAAC;oBACD,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;oBAClE,IAAI,CAAC;wBACH,kDAAkD;wBAClD,IAAI,iBAAyB,CAAC;wBAE9B,IAAI,YAAY,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;4BAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;4BAC5C,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IACL,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ;4BACvC,YAAY,CAAC,MAAM,KAAK,IAAI;4BAC5B,SAAS,IAAI,YAAY,CAAC,MAAM,EAChC,CAAC;4BACD,MAAM,OAAO,GAAI,YAAY,CAAC,MAAsB,CAAC,OAAO,CAAC;4BAC7D,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IAAI,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BACnD,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;wBAC1C,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CACT,+CAA+C,EAC/C,OAAO,YAAY,CAAC,MAAM,CAC3B,CAAC;4BACF,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;wBAEnD,OAAO,CAAC,GAAG,CACT,4DAA4D,EAC5D;4BACE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI;4BAC5B,gBAAgB,EAAE,OAAO,IAAI,YAAY;4BACzC,cAAc,EACZ,YAAY,CAAC,IAAI,IAAI,OAAO,IAAI,YAAY,CAAC,IAAI;4BACnD,aAAa,EAAE,YAAY,CAAC,KAAK;4BACjC,WAAW,EAAE,YAAY,CAAC,IAAI,EAAE,KAAK;yBACtC,CACF,CAAC;wBAEF,qDAAqD;wBACrD,sEAAsE;wBACtE,MAAM,gBAAgB,GACpB,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC;wBAEpC,OAAO,GAAG,gBAAgB,CAAC,KAAK,KAAK,IAAI,CAAC;wBAC1C,eAAe;4BACb,gBAAgB,CAAC,KAAK;gCACtB,CAAC,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC/D,EAAE,CAAC;wBAEL,8CAA8C;wBAC9C,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;wBAEnD,OAAO,CAAC,GAAG,CACT,oDAAoD,EACpD,OAAO,EACP,aAAa,EACb,CAAC,OAAO,EACR,cAAc,EACd,WAAW,CACZ,CAAC;wBAEF,oFAAoF;wBACpF,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,OAAO,CAAC,GAAG,CACT,kFAAkF,EAClF,eAAe,CAChB,CAAC;4BACF,oBAAoB,GAAG,IAAI,CAAC;wBAC9B,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CACT,uEAAuE,CACxE,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,OAAO,CAAC,GAAG,CACT,0DAA0D,EAC1D,UAAU,CACX,CAAC;wBACF,+CAA+C;wBAC/C,OAAO,GAAG,IAAI,CAAC;oBACjB,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,GAAG,CACT,8FAA8F,CAC/F,CAAC;oBACF,oBAAoB,GAAG,IAAI,CAAC;gBAC9B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,sEAAsE,CACvE,CAAC;gBACF,oBAAoB,GAAG,IAAI,CAAC;YAC9B,CAAC;YAED,IAAI,oBAAoB,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CACT,oEAAoE,CACrE,CAAC;gBACF,MAAM,EACJ,aAAa,EACb,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,IAAI,EACrB,WAAW,EAAE,iBAAiB,GAC/B,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAC/B,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,WAAW,CACxB,CAAC;gBACF,OAAO,GAAG,SAAS,CAAC;gBACpB,eAAe,GAAG,IAAI,CAAC;gBACvB,WAAW,GAAG,iBAAiB,CAAC;gBAChC,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO;oBACvC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;oBACtE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;gBACtC,OAAO;oBACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS;oBAChC,aAAa,EAAE,aAAa;oBAC5B,OAAO;oBACP,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,eAAe;oBACtB,OAAO;oBACP,YAAY;oBACZ,WAAW;iBACZ,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,OAAO,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,eAAe,CAAC,CAAC;YAExE,2EAA2E;YAC3E,oEAAoE;YACpE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,GAAG,OAAO;gBACvC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC;gBACtE,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC;YACtC,OAAO;gBACL,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS;gBAChC,aAAa;gBACb,OAAO;gBACP,OAAO,EAAE,IAAI,EAAE,8BAA8B;gBAC7C,KAAK,EAAE,eAAe,EAAE,yCAAyC;gBACjE,OAAO;gBACP,YAAY;gBACZ,WAAW;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,gDAAgD,EAAE,KAAK,CAAC,CAAC;YACvE,OAAO;gBACL,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,KAAK,YAAY,KAAK;oBACpB,CAAC,CAAC,KAAK,CAAC,OAAO;oBACf,CAAC,CAAC,iCAAiC;gBACvC,OAAO,EAAE,EAAE;gBACX,YAAY,EAAE,EAAE;gBAChB,WAAW,EAAE,EAAE;aAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,mBAAmB,CAC9B,iBAAoC,EACpC,OAAuB;QAEvB,KAAK,OAAO,CAAC;QAEb,OAAO,CAAC,GAAG,CACT,2EAA2E;YACzE,IAAI,CAAC,MAAM,CAAC,MAAM,CACrB,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,+BAA+B,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,CAAC;YACH,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE;oBACJ,OAAO,EAAE,mCAAmC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;oBAChE,aAAa,EAAE,cAAc;oBAC7B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;iBACpC;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC7D,MAAM,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC;YAE5C,6BAA6B;YAC7B,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,MAAM,gBAAgB,GAAG,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,CAAC;YAC1E,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,gBAAgB,CAAC,CAAC;YAE1E,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,kBAAkB;oBACxB,KAAK,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE;oBAC9C,MAAM,EAAE,aAAa;iBACtB;aACF,CAAC,CAAC;YAEH,MAAM,kBAAkB,GAAG,gBAAgB;iBACxC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBACZ,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;gBACtD,OAAO,KAAK,IAAI,KAAK,QAAQ,EAAE,gBAAgB,IAAI,gBAAgB,EAAE,CAAC;YACxE,CAAC,CAAC;iBACD,IAAI,CAAC,IAAI,CAAC,CAAC;YAEd,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE;oBACJ,MAAM,EAAE,aAAa;oBACrB,IAAI,EAAE,kBAAkB;oBACxB,KAAK,EAAE;wBACL,MAAM,EAAE,2BAA2B;qBACpC;oBACD,MAAM,EAAE;wBACN,gBAAgB,EAAE,gBAAgB,CAAC,MAAM;wBACzC,YAAY,EAAE,kBAAkB;qBACjC;oBACD,QAAQ,EAAE,GAAG;iBACd;aACF,CAAC,CAAC;YAEH,2BAA2B;YAC3B,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;YACxE,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,CAAC;YAEvE,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,YAAY;gBAClB,IAAI,EAAE;oBACJ,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE;oBAC3C,MAAM,EAAE,YAAY;iBACrB;aACF,CAAC,CAAC;YAEH,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE;oBACJ,IAAI,EAAE,qBAAqB;oBAC3B,KAAK,EAAE,EAAE,MAAM,EAAE,wBAAwB,EAAE;oBAC3C,MAAM,EAAE,YAAY;oBACpB,MAAM,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE;oBAC/D,QAAQ,EAAE,EAAE;iBACb;aACF,CAAC,CAAC;YAEH,gDAAgD;YAChD,OAAO,CAAC,GAAG,CACT,iEAAiE,CAClE,CAAC;YACF,MAAM,OAAO,GAAG,IAAI,aAAa,CAC/B;gBACE,IAAI,EAAE,6BAA6B;gBACnC,OAAO,EAAE,2EAA2E,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG;gBAEzG,YAAY,EAAE,IAAI,CAAC,2BAA2B,CAC5C,WAAW,EACX,kBAAkB,CACnB;gBAED,KAAK,EAAE,eAAe;gBAEtB,KAAK,EAAE;oBACL;wBACE,IAAI,EAAE,UAAU,CAAC,UAAU;wBAC3B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE;qBAC3C;oBACD;wBACE,IAAI,EAAE,UAAU,CAAC,cAAc;wBAC/B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE;qBAC3C;iBACF;gBAED,aAAa,EAAE,cAAc;gBAC7B,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW;aACrC,EACD,IAAI,CAAC,OAAO,CACb,CAAC;YAEF,mCAAmC;YACnC,OAAO,CAAC,GAAG,CACT,qEAAqE,CACtE,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;YAEpE,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;YAClE,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;YAErE,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;gBACpE,OAAO;oBACL,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,aAAa,EAAE,EAAE;oBACjB,OAAO,EAAE,KAAK;oBACd,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,yBAAyB;oBAChD,OAAO,EAAE,EAAE;oBACX,YAAY,EAAE,EAAE;oBAChB,WAAW,EAAE,EAAE;iBAChB,CAAC;YACJ,CAAC;YAED,IAAI,aAAa,GAAG,MAAM,CAAC,QAAQ;iBAChC,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;iBAC7B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;iBACnB,IAAI,EAAE,CAAC;YAEV,0CAA0C;YAC1C,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,eAAe,GAAG,EAAE,CAAC;YACzB,IAAI,WAAW,GAAa,EAAE,CAAC;YAE/B,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;YAEnE,IAAI,oBAAoB,GAAG,KAAK,CAAC;YAEjC,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpD,oDAAoD;gBACpD,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CACnC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CACV,CAAC;gBAEpB,IACE,CAAC,YAAY,CAAC,IAAI,KAAK,UAAU,CAAC,UAAU;oBAC1C,YAAY,CAAC,IAAI,KAAK,uBAAuB,CAAC;oBAChD,YAAY,CAAC,MAAM,EACnB,CAAC;oBACD,IAAI,CAAC;wBACH,kDAAkD;wBAClD,IAAI,iBAAyB,CAAC;wBAC9B,OAAO,CAAC,GAAG,CACT,8CAA8C,EAC9C,YAAY,CAAC,KAAK,CACnB,CAAC;wBACF,mCAAmC;wBACnC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CACrB,YAAY,CAAC,KAAwB,CAAC,KAAe,CACvD,CAAC;wBACF,aAAa,GAAG,KAAK,CAAC,IAAI,CAAC;wBAE3B,IAAI,YAAY,CAAC,MAAM,YAAY,WAAW,EAAE,CAAC;4BAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC;4BAC5C,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IACL,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ;4BACvC,YAAY,CAAC,MAAM,KAAK,IAAI;4BAC5B,SAAS,IAAI,YAAY,CAAC,MAAM,EAChC,CAAC;4BACD,MAAM,OAAO,GAAI,YAAY,CAAC,MAAsB,CAAC,OAAO,CAAC;4BAC7D,iBAAiB;gCACf,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;wBACpE,CAAC;6BAAM,IAAI,OAAO,YAAY,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;4BACnD,iBAAiB,GAAG,YAAY,CAAC,MAAM,CAAC;wBAC1C,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CACT,+CAA+C,EAC/C,OAAO,YAAY,CAAC,MAAM,CAC3B,CAAC;4BACF,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;wBAC1D,CAAC;wBAED,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;wBAEnD,OAAO,CAAC,GAAG,CACT,6DAA6D,EAC7D;4BACE,OAAO,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI;4BAC5B,gBAAgB,EAAE,OAAO,IAAI,YAAY;4BACzC,cAAc,EACZ,YAAY,CAAC,IAAI,IAAI,OAAO,IAAI,YAAY,CAAC,IAAI;4BACnD,aAAa,EAAE,YAAY,CAAC,KAAK;4BACjC,WAAW,EAAE,YAAY,CAAC,IAAI,EAAE,KAAK;yBACtC,CACF,CAAC;wBAEF,qDAAqD;wBACrD,MAAM,gBAAgB,GACpB,YAAY,CAAC,IAAI,IAAI,YAAY,CAAC;wBAEpC,OAAO,GAAG,gBAAgB,CAAC,KAAK,KAAK,IAAI,CAAC;wBAC1C,eAAe;4BACb,gBAAgB,CAAC,KAAK;gCACtB,CAAC,gBAAgB,CAAC,MAAM,IAAI,gBAAgB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCAC/D,EAAE,CAAC;wBAEL,8CAA8C;wBAC9C,WAAW,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;wBAEnD,OAAO,CAAC,GAAG,CACT,0DAA0D,EAC1D,OAAO,EACP,cAAc,EACd,WAAW,CACZ,CAAC;wBAEF,IAAI,CAAC,OAAO,EAAE,CAAC;4BACb,OAAO,CAAC,GAAG,CACT,sFAAsF,EACtF,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAChD,CAAC;4BACF,oBAAoB,GAAG,IAAI,CAAC;wBAC9B,CAAC;6BAAM,CAAC;4BACN,OAAO,CAAC,GAAG,CACT,qDAAqD,CACtD,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAAC,OAAO,UAAU,EAAE,CAAC;wBACpB,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,UAAU,CAAC,CAAC;wBAC9D,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;wBAChD,OAAO,GAAG,IAAI,CAAC,CAAC,WAAW;oBAC7B,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,kEAAkE;oBAClE,OAAO,CAAC,GAAG,CACT,gFAAgF,CACjF,CAAC;oBACF,oBAAoB,GAAG,IAAI,CAAC;gBAC9B,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CACT,sEAAsE,CACvE,CAAC;gBACF,oBAAoB,GAAG,IAAI,CAAC;YAC9B,CAAC;YAED,IAAI,oBAAoB,EAAE,CAAC;gBACzB,MAAM,iBAAiB,CAAC;oBACtB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE;wBACJ,IAAI,EAAE,kBAAkB;wBACxB,KAAK,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE;wBAC9C,MAAM,EAAE,oBAAoB;qBAC7B;iBACF,CAAC,CAAC;gBAEH,MAAM,EACJ,aAAa,EACb,OAAO,EAAE,SAAS,EAClB,eAAe,EAAE,IAAI,EACrB,WAAW,EAAE,iBAAiB,GAC/B,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAC/B,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,iBAAiB,CAClB,CAAC;gBAEF,MAAM,iBAAiB,CAAC;oBACtB,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE;wBACJ,IAAI,EAAE,kBAAkB;wBACxB,KAAK,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE;wBAC9C,MAAM,EAAE,oBAAoB;wBAC5B,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE;wBAC9B,QAAQ,EAAE,GAAG;qBACd;iBACF,CAAC,CAAC;gBAEH,OAAO,GAAG,SAAS,CAAC;gBACpB,eAAe,GAAG,IAAI,CAAC;gBACvB,WAAW,GAAG,iBAAiB,CAAC;gBAEhC,IAAI,OAAO,GAAG,EAAE,CAAC;gBACjB,IAAI,YAAY,GAAG,EAAE,CAAC;gBACtB,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,iBAAiB,CAAC;wBACtB,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE;4BACJ,IAAI,EAAE,eAAe;4BACrB,KAAK,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE;4BAClD,MAAM,EAAE,iBAAiB;yBAC1B;qBACF,CAAC,CAAC;oBAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAChD,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,iBAAiB,CAClB,CAAC;oBACF,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;oBAChC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;oBAE1C,MAAM,iBAAiB,CAAC;wBACtB,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE;4BACJ,MAAM,EAAE,iBAAiB;4BACzB,IAAI,EAAE,eAAe;4BACrB,KAAK,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE;4BAClD,MAAM,EAAE;gCACN,gBAAgB,EAAE,CAAC,CAAC,OAAO;gCAC3B,eAAe,EAAE,CAAC,CAAC,YAAY;6BAChC;4BACD,QAAQ,EAAE,GAAG;yBACd;qBACF,CAAC,CAAC;gBACL,CAAC;gBACD,OAAO;oBACL,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,aAAa,EAAE,aAAa;oBAC5B,OAAO;oBACP,OAAO,EAAE,IAAI;oBACb,KAAK,EAAE,eAAe;oBACtB,OAAO;oBACP,YAAY;oBACZ,WAAW;iBACZ,CAAC;YACJ,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,0CAA0C,EAAE,OAAO,CAAC,CAAC;YACjE,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,eAAe,CAAC,CAAC;YAExE,uEAAuE;YAEvE,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,IAAI,YAAY,GAAG,EAAE,CAAC;YACtB,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,iBAAiB,CAAC;oBACtB,IAAI,EAAE,YAAY;oBAClB,IAAI,EAAE;wBACJ,IAAI,EAAE,eAAe;wBACrB,KAAK,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE;wBAClD,MAAM,EAAE,qBAAqB;qBAC9B;iBACF,CAAC,CAAC;gBAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAChD,aAAa,EACb,IAAI,CAAC,MAAM,CAAC,WAAW,EACvB,iBAAiB,CAClB,CAAC;gBACF,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC;gBAChC,YAAY,GAAG,aAAa,CAAC,YAAY,CAAC;gBAE1C,MAAM,iBAAiB,CAAC;oBACtB,IAAI,EAAE,eAAe;oBACrB,IAAI,EAAE;wBACJ,MAAM,EAAE,qBAAqB;wBAC7B,IAAI,EAAE,eAAe;wBACrB,KAAK,EAAE,EAAE,MAAM,EAAE,+BAA+B,EAAE;wBAClD,MAAM,EAAE;4BACN,gBAAgB,EAAE,CAAC,CAAC,OAAO;4BAC3B,eAAe,EAAE,CAAC,CAAC,YAAY;yBAChC;wBACD,QAAQ,EAAE,GAAG;qBACd;iBACF,CAAC,CAAC;YACL,CAAC;YACD,OAAO;gBACL,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,aAAa;gBACb,OAAO;gBACP,OAAO,EAAE,IAAI;gBACb,KAAK,EAAE,eAAe;gBACtB,OAAO;gBACP,YAAY;gBACZ,WAAW;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,0DAA0D,EAC1D,KAAK,CACN,CAAC;YAEF,MAAM,iBAAiB,CAAC;gBACtB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE;oBACJ,KAAK,EACH,KAAK,YAAY,KAAK;wBACpB,CAAC,CAAC,KAAK,CAAC,OAAO;wBACf,CAAC,CAAC,iCAAiC;oBACvC,WAAW,EAAE,IAAI,EAAE,sCAAsC;iBAC1D;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,SAAS,EAAE,EAAE;gBACb,aAAa,EAAE,EAAE;gBACjB,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE,KAAK;gBACd,KAAK,EACH,KAAK,YAAY,KAAK;oBACpB,CAAC,CAAC,KAAK,CAAC,OAAO;oBACf,CAAC,CAAC,iCAAiC;gBACvC,OAAO,EAAE,EAAE;gBACX,YAAY,EAAE,EAAE;gBAChB,WAAW,EAAE,EAAE;aAChB,CAAC;QACJ,CAAC;IACH,CAAC"}
|