@mobileai/react-native 0.5.5 → 0.5.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.
Files changed (34) hide show
  1. package/README.md +43 -12
  2. package/lib/module/components/AIAgent.js +55 -56
  3. package/lib/module/components/AIAgent.js.map +1 -1
  4. package/lib/module/core/AgentRuntime.js +18 -18
  5. package/lib/module/core/AgentRuntime.js.map +1 -1
  6. package/lib/module/core/FiberTreeWalker.js +6 -7
  7. package/lib/module/core/FiberTreeWalker.js.map +1 -1
  8. package/lib/module/core/ScreenDehydrator.js +1 -1
  9. package/lib/module/core/systemPrompt.js +2 -2
  10. package/lib/module/index.js +1 -1
  11. package/lib/typescript/src/components/AIAgent.d.ts +1 -3
  12. package/lib/typescript/src/components/AIAgent.d.ts.map +1 -1
  13. package/lib/typescript/src/core/AgentRuntime.d.ts +2 -2
  14. package/lib/typescript/src/core/FiberTreeWalker.d.ts +3 -4
  15. package/lib/typescript/src/core/FiberTreeWalker.d.ts.map +1 -1
  16. package/lib/typescript/src/core/ScreenDehydrator.d.ts +1 -1
  17. package/lib/typescript/src/core/systemPrompt.d.ts +2 -2
  18. package/lib/typescript/src/core/types.d.ts +9 -10
  19. package/lib/typescript/src/core/types.d.ts.map +1 -1
  20. package/lib/typescript/src/index.d.ts +1 -1
  21. package/package.json +4 -5
  22. package/src/components/AIAgent.tsx +60 -61
  23. package/src/core/AgentRuntime.ts +18 -18
  24. package/src/core/FiberTreeWalker.ts +8 -9
  25. package/src/core/ScreenDehydrator.ts +1 -1
  26. package/src/core/systemPrompt.ts +2 -2
  27. package/src/core/types.ts +15 -15
  28. package/src/index.ts +1 -1
  29. package/lib/typescript/fetch-models.d.mts +0 -2
  30. package/lib/typescript/fetch-models.d.mts.map +0 -1
  31. package/lib/typescript/list-all-models.d.mts +0 -2
  32. package/lib/typescript/list-all-models.d.mts.map +0 -1
  33. package/lib/typescript/list-models.d.mts +0 -2
  34. package/lib/typescript/list-models.d.mts.map +0 -1
package/README.md CHANGED
@@ -29,7 +29,7 @@ Wrap your navigation with `<AIAgent>`. The AI automatically understands your ent
29
29
  - 🧭 **Auto-navigation** — Navigates between screens to complete multi-step tasks.
30
30
  - 🧩 **Custom actions** — Expose any business logic (checkout, API calls) as AI-callable tools with `useAction`.
31
31
  - 🌐 **MCP bridge** — Let external AI agents (OpenClaw, Claude Desktop) control your app remotely.
32
- - 🌍 **Bilingual** — English and Arabic support built-in.
32
+
33
33
 
34
34
  ### 🎤 Voice Mode (Live Agent)
35
35
  - 🗣️ **Real-time voice chat** — Bidirectional audio with Gemini Live API. Speak naturally, the agent responds with voice.
@@ -124,9 +124,10 @@ Then rebuild: `npx react-native run-android` (or `run-ios`)
124
124
 
125
125
  ## 🚀 Quick Start
126
126
 
127
+ ### React Navigation
128
+
127
129
  ```tsx
128
130
  import { AIAgent } from '@mobileai/react-native';
129
- // or: import { AIAgent } from 'react-native-agentic-ai';
130
131
  import { NavigationContainer, useNavigationContainerRef } from '@react-navigation/native';
131
132
 
132
133
  export default function App() {
@@ -142,6 +143,27 @@ export default function App() {
142
143
  }
143
144
  ```
144
145
 
146
+ ### Expo Router
147
+
148
+ In your root layout (`app/_layout.tsx`):
149
+
150
+ ```tsx
151
+ import { AIAgent } from '@mobileai/react-native';
152
+ import { Slot, useNavigationContainerRef } from 'expo-router';
153
+
154
+ export default function RootLayout() {
155
+ // expo-router re-exports useNavigationContainerRef from React Navigation
156
+ // so useNavigationContainerRef works — just don't wrap with <NavigationContainer>
157
+ const navRef = useNavigationContainerRef();
158
+
159
+ return (
160
+ <AIAgent apiKey={process.env.EXPO_PUBLIC_GEMINI_API_KEY!} navRef={navRef}>
161
+ <Slot />
162
+ </AIAgent>
163
+ );
164
+ }
165
+ ```
166
+
145
167
  A floating chat bar appears automatically. Ask the AI to navigate, tap buttons, fill forms — it reads your live UI and acts.
146
168
 
147
169
  ## 🔌 API Reference
@@ -150,16 +172,25 @@ A floating chat bar appears automatically. Ask the AI to navigate, tap buttons,
150
172
 
151
173
  The root provider. Wrap your app once at the top level.
152
174
 
153
- | Prop | Type | Default | Description |
154
- |------|------|---------|-------------|
155
- | `apiKey` | `string` | — | **Required.** Gemini API key. |
156
- | `model` | `string` | `'gemini-2.5-flash'` | Gemini model name for text mode. |
157
- | `navRef` | `NavigationContainerRef` | — | Navigation ref for auto-navigation. |
158
- | `maxSteps` | `number` | `10` | Max steps per task (text mode). |
159
- | `showChatBar` | `boolean` | `true` | Show the floating chat bar. |
160
- | `enableVoice` | `boolean` | `true` | Enable voice mode tab in the chat bar. |
161
- | `language` | `'en' \| 'ar'` | `'en'` | Agent language (English/Arabic). |
162
- | `onResult` | `(result) => void` | — | Called when the agent finishes. |
175
+ | Prop | Type | Default | Mode | Description |
176
+ |------|------|---------|------|-------------|
177
+ | `apiKey` | `string` | — | Both | **Required.** Gemini API key. |
178
+ | `model` | `string` | `'gemini-2.5-flash'` | Text | Gemini model name. |
179
+ | `navRef` | `NavigationContainerRef` | — | Both | Navigation ref for auto-navigation. |
180
+ | `maxSteps` | `number` | `10` | Text | Max steps per task. |
181
+ | `showChatBar` | `boolean` | `true` | Both | Show the floating chat bar. |
182
+ | `enableVoice` | `boolean` | `true` | Voice | Enable voice mode tab in the chat bar. |
183
+ | `instructions` | `{ system?, getScreenInstructions? }` | | Both | Custom system prompt and per-screen instructions. |
184
+ | `customTools` | `Record<string, ToolDefinition \| null>` | — | Both | Override or remove built-in tools. |
185
+ | `onResult` | `(result) => void` | — | Text | Called when the agent finishes a task. |
186
+ | `onBeforeStep` | `(stepCount) => void` | — | Text | Called before each agent step. |
187
+ | `onAfterStep` | `(history) => void` | — | Text | Called after each agent step. |
188
+ | `onTokenUsage` | `(usage) => void` | — | Text | Token usage callback per step. |
189
+ | `stepDelay` | `number` | — | Text | Delay between steps in ms. |
190
+ | `router` | `{ push, replace, back }` | — | Both | Expo Router instance. |
191
+ | `pathname` | `string` | — | Both | Current pathname (Expo Router). |
192
+ | `mcpServerUrl` | `string` | — | Text | WebSocket URL for MCP bridge. |
193
+ | `debug` | `boolean` | `false` | Both | Enable SDK debug logging. |
163
194
 
164
195
  ### `useAction(name, description, params, handler)`
165
196
 
@@ -35,7 +35,6 @@ export function AIAgent({
35
35
  apiKey,
36
36
  model = 'gemini-2.5-flash',
37
37
  navRef,
38
- language = 'en',
39
38
  maxSteps = 10,
40
39
  showChatBar = true,
41
40
  children,
@@ -101,7 +100,7 @@ export function AIAgent({
101
100
  const config = useMemo(() => ({
102
101
  apiKey,
103
102
  model,
104
- language,
103
+ language: 'en',
105
104
  maxSteps,
106
105
  interactiveBlacklist,
107
106
  interactiveWhitelist,
@@ -120,7 +119,7 @@ export function AIAgent({
120
119
  pathname,
121
120
  onStatusUpdate: setStatusText,
122
121
  onTokenUsage,
123
- // Page-agent pattern: block the agent loop until user responds
122
+ // Block the agent loop until user responds
124
123
  onAskUser: mode === 'voice' ? undefined : question => {
125
124
  return new Promise(resolve => {
126
125
  askUserResolverRef.current = resolve;
@@ -134,7 +133,7 @@ export function AIAgent({
134
133
  setStatusText('');
135
134
  });
136
135
  }
137
- }), [mode, apiKey, model, language, maxSteps, interactiveBlacklist, interactiveWhitelist, onBeforeStep, onAfterStep, onBeforeTask, onAfterTask, transformScreenContent, customTools, instructions, stepDelay, mcpServerUrl, router, pathname, onTokenUsage]);
136
+ }), [mode, apiKey, model, maxSteps, interactiveBlacklist, interactiveWhitelist, onBeforeStep, onAfterStep, onBeforeTask, onAfterTask, transformScreenContent, customTools, instructions, stepDelay, mcpServerUrl, router, pathname, onTokenUsage]);
138
137
  const provider = useMemo(() => new GeminiProvider(apiKey, model), [apiKey, model]);
139
138
  const runtime = useMemo(() => new AgentRuntime(provider, config, rootViewRef.current, navRef),
140
139
  // eslint-disable-next-line react-hooks/exhaustive-deps
@@ -176,13 +175,13 @@ export function AIAgent({
176
175
  logger.info('AIAgent', `Registering ${runtimeTools.length} tools with VoiceService: ${runtimeTools.map(t => t.name).join(', ')}`);
177
176
  // Use voice-adapted system prompt — same core rules as text mode
178
177
  // but without agent-loop directives that trigger autonomous actions
179
- const voicePrompt = buildVoiceSystemPrompt(language, instructions?.system);
178
+ const voicePrompt = buildVoiceSystemPrompt('en', instructions?.system);
180
179
  logger.info('AIAgent', `📝 Voice system prompt (${voicePrompt.length} chars):\n${voicePrompt}`);
181
180
  voiceServiceRef.current = new VoiceService({
182
181
  apiKey,
183
182
  systemPrompt: voicePrompt,
184
183
  tools: runtimeTools,
185
- language
184
+ language: 'en'
186
185
  });
187
186
  logger.info('AIAgent', `VoiceService created with ${runtimeTools.length} tools: ${runtimeTools.map(t => t.name).join(', ')}`);
188
187
  }
@@ -410,7 +409,7 @@ export function AIAgent({
410
409
  setIsVoiceConnected(false);
411
410
  };
412
411
  // eslint-disable-next-line react-hooks/exhaustive-deps
413
- }, [mode, apiKey, runtime, language, instructions]);
412
+ }, [mode, apiKey, runtime, instructions]);
414
413
 
415
414
  // ─── Stop Voice Session (full cleanup) ─────────────────────
416
415
 
@@ -475,60 +474,60 @@ export function AIAgent({
475
474
 
476
475
  // ─── Render ──────────────────────────────────────────────────
477
476
 
478
- return /*#__PURE__*/_jsxs(AgentContext.Provider, {
477
+ return /*#__PURE__*/_jsx(AgentContext.Provider, {
479
478
  value: runtime,
480
- children: [/*#__PURE__*/_jsx(View, {
479
+ children: /*#__PURE__*/_jsxs(View, {
481
480
  ref: rootViewRef,
482
481
  style: styles.root,
483
482
  collapsable: false,
484
- children: children
485
- }), /*#__PURE__*/_jsx(AgentOverlay, {
486
- visible: isThinking,
487
- statusText: statusText
488
- }), showChatBar && /*#__PURE__*/_jsx(AgentChatBar, {
489
- onSend: handleSend,
490
- isThinking: isThinking,
491
- lastResult: lastResult,
492
- language: language,
493
- onDismiss: () => setLastResult(null),
494
- availableModes: availableModes,
495
- mode: mode,
496
- onModeChange: newMode => {
497
- logger.info('AIAgent', `Mode change: ${mode} → ${newMode}`);
498
- setMode(newMode);
499
- },
500
- isMicActive: isMicActive,
501
- isSpeakerMuted: isSpeakerMuted,
502
- isAISpeaking: isAISpeaking,
503
- onStopSession: stopVoiceSession,
504
- isVoiceConnected: isVoiceConnected,
505
- onMicToggle: active => {
506
- if (active && !isVoiceConnected) {
507
- logger.warn('AIAgent', 'Cannot toggle mic — VoiceService not connected yet');
508
- return;
509
- }
510
- logger.info('AIAgent', `Mic toggle: ${active ? 'ON' : 'OFF'}`);
511
- setIsMicActive(active);
512
- if (active) {
513
- logger.info('AIAgent', 'Starting AudioInput...');
514
- audioInputRef.current?.start().then(ok => {
515
- logger.info('AIAgent', `AudioInput start result: ${ok}`);
516
- });
517
- } else {
518
- logger.info('AIAgent', 'Stopping AudioInput...');
519
- audioInputRef.current?.stop();
520
- }
521
- },
522
- onSpeakerToggle: muted => {
523
- logger.info('AIAgent', `Speaker toggle: ${muted ? 'MUTED' : 'UNMUTED'}`);
524
- setIsSpeakerMuted(muted);
525
- if (muted) {
526
- audioOutputRef.current?.mute();
527
- } else {
528
- audioOutputRef.current?.unmute();
483
+ children: [children, /*#__PURE__*/_jsx(AgentOverlay, {
484
+ visible: isThinking,
485
+ statusText: statusText
486
+ }), showChatBar && /*#__PURE__*/_jsx(AgentChatBar, {
487
+ onSend: handleSend,
488
+ isThinking: isThinking,
489
+ lastResult: lastResult,
490
+ language: 'en',
491
+ onDismiss: () => setLastResult(null),
492
+ availableModes: availableModes,
493
+ mode: mode,
494
+ onModeChange: newMode => {
495
+ logger.info('AIAgent', `Mode change: ${mode} ${newMode}`);
496
+ setMode(newMode);
497
+ },
498
+ isMicActive: isMicActive,
499
+ isSpeakerMuted: isSpeakerMuted,
500
+ isAISpeaking: isAISpeaking,
501
+ onStopSession: stopVoiceSession,
502
+ isVoiceConnected: isVoiceConnected,
503
+ onMicToggle: active => {
504
+ if (active && !isVoiceConnected) {
505
+ logger.warn('AIAgent', 'Cannot toggle mic — VoiceService not connected yet');
506
+ return;
507
+ }
508
+ logger.info('AIAgent', `Mic toggle: ${active ? 'ON' : 'OFF'}`);
509
+ setIsMicActive(active);
510
+ if (active) {
511
+ logger.info('AIAgent', 'Starting AudioInput...');
512
+ audioInputRef.current?.start().then(ok => {
513
+ logger.info('AIAgent', `AudioInput start result: ${ok}`);
514
+ });
515
+ } else {
516
+ logger.info('AIAgent', 'Stopping AudioInput...');
517
+ audioInputRef.current?.stop();
518
+ }
519
+ },
520
+ onSpeakerToggle: muted => {
521
+ logger.info('AIAgent', `Speaker toggle: ${muted ? 'MUTED' : 'UNMUTED'}`);
522
+ setIsSpeakerMuted(muted);
523
+ if (muted) {
524
+ audioOutputRef.current?.mute();
525
+ } else {
526
+ audioOutputRef.current?.unmute();
527
+ }
529
528
  }
530
- }
531
- })]
529
+ })]
530
+ })
532
531
  });
533
532
  }
534
533
  const styles = StyleSheet.create({
@@ -1 +1 @@
1
- {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","StyleSheet","AgentRuntime","GeminiProvider","AgentContext","AgentChatBar","AgentOverlay","logger","buildVoiceSystemPrompt","MCPBridge","VoiceService","AudioInputService","AudioOutputService","jsx","_jsx","jsxs","_jsxs","console","log","AIAgent","apiKey","model","navRef","language","maxSteps","showChatBar","children","onResult","interactiveBlacklist","interactiveWhitelist","onBeforeStep","onAfterStep","onBeforeTask","onAfterTask","transformScreenContent","customTools","instructions","stepDelay","mcpServerUrl","router","pathname","enableVoice","onTokenUsage","debug","setEnabled","info","rootViewRef","isThinking","setIsThinking","statusText","setStatusText","lastResult","setLastResult","mode","setMode","isMicActive","setIsMicActive","isSpeakerMuted","setIsSpeakerMuted","isAISpeaking","setIsAISpeaking","isVoiceConnected","setIsVoiceConnected","voiceServiceRef","audioInputRef","audioOutputRef","toolLockRef","userHasSpokenRef","lastScreenContextRef","screenPollIntervalRef","availableModes","modes","push","join","askUserResolverRef","config","ask_user","onStatusUpdate","onAskUser","undefined","question","Promise","resolve","current","success","message","steps","provider","runtime","updateRefs","bridge","destroy","audioOutputInitPromise","runtimeTools","getTools","length","map","t","name","voicePrompt","system","systemPrompt","tools","onError","err","error","initialize","then","ok","onAudioChunk","chunk","isConnected","sendAudio","onPermissionDenied","warn","connect","onAudioResponse","audio","enqueue","onStatusChange","status","connected","start","intentionalDisconnect","stop","setTimeout","lastCallbacks","onTranscript","text","isFinal","role","onSetupComplete","initialContext","getScreenContext","passiveContext","sendScreenContext","onToolCall","toolCall","JSON","stringify","args","id","sendFunctionResponse","result","executeTool","updatedContext","enrichedResult","onTurnComplete","SCREEN_POLL_INTERVAL","MIN_DIFF_RATIO","setInterval","currentContext","lastLen","diff","Math","abs","diffRatio","toFixed","passiveUpdate","clearInterval","disconnect","stopVoiceSession","handleSend","trim","resolver","execute","Provider","value","ref","style","styles","root","collapsable","visible","onSend","onDismiss","onModeChange","newMode","onStopSession","onMicToggle","active","onSpeakerToggle","muted","mute","unmute","create","flex"],"sourceRoot":"../../../src","sources":["components/AIAgent.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","useCallback","useEffect","useMemo","useRef","useState","View","StyleSheet","AgentRuntime","GeminiProvider","AgentContext","AgentChatBar","AgentOverlay","logger","buildVoiceSystemPrompt","MCPBridge","VoiceService","AudioInputService","AudioOutputService","jsx","_jsx","jsxs","_jsxs","console","log","AIAgent","apiKey","model","navRef","maxSteps","showChatBar","children","onResult","interactiveBlacklist","interactiveWhitelist","onBeforeStep","onAfterStep","onBeforeTask","onAfterTask","transformScreenContent","customTools","instructions","stepDelay","mcpServerUrl","router","pathname","enableVoice","onTokenUsage","debug","setEnabled","info","rootViewRef","isThinking","setIsThinking","statusText","setStatusText","lastResult","setLastResult","mode","setMode","isMicActive","setIsMicActive","isSpeakerMuted","setIsSpeakerMuted","isAISpeaking","setIsAISpeaking","isVoiceConnected","setIsVoiceConnected","voiceServiceRef","audioInputRef","audioOutputRef","toolLockRef","userHasSpokenRef","lastScreenContextRef","screenPollIntervalRef","availableModes","modes","push","join","askUserResolverRef","config","language","ask_user","onStatusUpdate","onAskUser","undefined","question","Promise","resolve","current","success","message","steps","provider","runtime","updateRefs","bridge","destroy","audioOutputInitPromise","runtimeTools","getTools","length","map","t","name","voicePrompt","system","systemPrompt","tools","onError","err","error","initialize","then","ok","onAudioChunk","chunk","isConnected","sendAudio","onPermissionDenied","warn","connect","onAudioResponse","audio","enqueue","onStatusChange","status","connected","start","intentionalDisconnect","stop","setTimeout","lastCallbacks","onTranscript","text","isFinal","role","onSetupComplete","initialContext","getScreenContext","passiveContext","sendScreenContext","onToolCall","toolCall","JSON","stringify","args","id","sendFunctionResponse","result","executeTool","updatedContext","enrichedResult","onTurnComplete","SCREEN_POLL_INTERVAL","MIN_DIFF_RATIO","setInterval","currentContext","lastLen","diff","Math","abs","diffRatio","toFixed","passiveUpdate","clearInterval","disconnect","stopVoiceSession","handleSend","trim","resolver","execute","Provider","value","ref","style","styles","root","collapsable","visible","onSend","onDismiss","onModeChange","newMode","onStopSession","onMicToggle","active","onSpeakerToggle","muted","mute","unmute","create","flex"],"sourceRoot":"../../../src","sources":["components/AIAgent.tsx"],"mappings":"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","ignoreList":[]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
 
3
3
  /**
4
- * AgentRuntime — The main agent loop, inspired by page-agent.js.
4
+ * AgentRuntime — The main agent loop.
5
5
  *
6
6
  * Flow:
7
7
  * 1. Walk Fiber tree → detect interactive elements
@@ -32,7 +32,7 @@ export class AgentRuntime {
32
32
  this.navRef = navRef;
33
33
  this.registerBuiltInTools();
34
34
 
35
- // Apply customTools — mirrors page-agent: null = remove, otherwise override
35
+ // Apply customTools
36
36
  if (config.customTools) {
37
37
  for (const [name, tool] of Object.entries(config.customTools)) {
38
38
  if (tool === null) {
@@ -246,7 +246,7 @@ export class AgentRuntime {
246
246
  }
247
247
  });
248
248
 
249
- // ask_user — ask for clarification (mirrors page-agent: blocks until user responds)
249
+ // ask_user — ask for clarification
250
250
  this.tools.set('ask_user', {
251
251
  name: 'ask_user',
252
252
  description: 'Ask the user a question and wait for their answer. Use this if you need more information or clarification.',
@@ -259,7 +259,7 @@ export class AgentRuntime {
259
259
  },
260
260
  execute: async args => {
261
261
  if (this.config.onAskUser) {
262
- // Page-agent pattern: block until user responds, then continue the loop
262
+ // Block until user responds, then continue the loop
263
263
  this.config.onStatusUpdate?.('Waiting for your answer...');
264
264
  const answer = await this.config.onAskUser(args.question);
265
265
  return `User answered: ${answer}`;
@@ -455,7 +455,7 @@ export class AgentRuntime {
455
455
  /**
456
456
  * Get current screen context as formatted text.
457
457
  * Used by voice mode: sent once at connect + after each tool call.
458
- * Follows page-agent pattern: tree in user prompt, not system instructions.
458
+ * Tree goes in user prompt, not system instructions.
459
459
  */
460
460
  getScreenContext() {
461
461
  try {
@@ -533,7 +533,7 @@ ${screen.elementsText}
533
533
  };
534
534
  }
535
535
 
536
- // ─── Instructions (mirrors page-agent #getInstructions) ───────
536
+ // ─── Instructions ───────
537
537
 
538
538
  getInstructions(screenName) {
539
539
  const {
@@ -557,7 +557,7 @@ ${screen.elementsText}
557
557
  return result ? `<instructions>\n${result}</instructions>\n\n` : '';
558
558
  }
559
559
 
560
- // ─── Observation System (mirrors PageAgentCore.#handleObservations) ──
560
+ // ─── Observation System ──
561
561
 
562
562
  observations = [];
563
563
  lastScreenName = '';
@@ -577,7 +577,7 @@ ${screen.elementsText}
577
577
  }
578
578
  }
579
579
 
580
- // ─── User Prompt Assembly (mirrors PageAgentCore.#assembleUserPrompt) ──
580
+ // ─── User Prompt Assembly ──
581
581
 
582
582
  assembleUserPrompt(step, maxSteps, contextualMessage, screenName, screenContent) {
583
583
  let prompt = '';
@@ -585,7 +585,7 @@ ${screen.elementsText}
585
585
  // 1. <instructions> (optional system/screen instructions)
586
586
  prompt += this.getInstructions(screenName);
587
587
 
588
- // 2. <agent_state> — user request + step info (mirrors page-agent)
588
+ // 2. <agent_state> — user request + step info
589
589
  prompt += '<agent_state>\n';
590
590
  prompt += '<user_request>\n';
591
591
  prompt += `${contextualMessage}\n`;
@@ -595,7 +595,7 @@ ${screen.elementsText}
595
595
  prompt += '</step_info>\n';
596
596
  prompt += '</agent_state>\n\n';
597
597
 
598
- // 3. <agent_history> — structured per-step history (mirrors page-agent)
598
+ // 3. <agent_history> — structured per-step history
599
599
  prompt += '<agent_history>\n';
600
600
  let stepIndex = 0;
601
601
  for (const event of this.history) {
@@ -656,13 +656,13 @@ ${screen.elementsText}
656
656
  }
657
657
  logger.info('AgentRuntime', `Starting execution: "${contextualMessage}"`);
658
658
 
659
- // Lifecycle: onBeforeTask (mirrors page-agent)
659
+ // Lifecycle: onBeforeTask
660
660
  await this.config.onBeforeTask?.();
661
661
  try {
662
662
  for (let step = 0; step < maxSteps; step++) {
663
663
  logger.info('AgentRuntime', `===== Step ${step + 1}/${maxSteps} =====`);
664
664
 
665
- // Lifecycle: onBeforeStep (mirrors page-agent)
665
+ // Lifecycle: onBeforeStep
666
666
  await this.config.onBeforeStep?.(step);
667
667
 
668
668
  // 1. Walk Fiber tree with security config and dehydrate screen
@@ -672,16 +672,16 @@ ${screen.elementsText}
672
672
  logger.info('AgentRuntime', `Screen: ${screen.screenName}`);
673
673
  logger.debug('AgentRuntime', `Dehydrated:\n${screen.elementsText}`);
674
674
 
675
- // 2. Apply transformScreenContent (mirrors page-agent transformPageContent)
675
+ // 2. Apply transformScreenContent
676
676
  let screenContent = screen.elementsText;
677
677
  if (this.config.transformScreenContent) {
678
678
  screenContent = await this.config.transformScreenContent(screenContent);
679
679
  }
680
680
 
681
- // 3. Handle observations (mirrors page-agent #handleObservations)
681
+ // 3. Handle observations
682
682
  this.handleObservations(step, maxSteps, screenName);
683
683
 
684
- // 4. Assemble structured user prompt (mirrors page-agent #assembleUserPrompt)
684
+ // 4. Assemble structured user prompt
685
685
  const contextMessage = this.assembleUserPrompt(step, maxSteps, contextualMessage, screenName, screenContent);
686
686
 
687
687
  // 4.5. Capture screenshot for Gemini vision (optional)
@@ -689,7 +689,7 @@ ${screen.elementsText}
689
689
 
690
690
  // 5. Send to AI provider
691
691
  this.config.onStatusUpdate?.('Analyzing screen...');
692
- const systemPrompt = buildSystemPrompt(this.config.language || 'en');
692
+ const systemPrompt = buildSystemPrompt('en');
693
693
  const tools = this.buildToolsForProvider();
694
694
  logger.info('AgentRuntime', `Sending to AI with ${tools.length} tools...`);
695
695
  const response = await this.provider.generateContent(systemPrompt, contextMessage, tools, this.history, screenshot);
@@ -759,7 +759,7 @@ ${screen.elementsText}
759
759
  };
760
760
  this.history.push(agentStep);
761
761
 
762
- // Lifecycle: onAfterStep (mirrors page-agent)
762
+ // Lifecycle: onAfterStep
763
763
  await this.config.onAfterStep?.(this.history);
764
764
 
765
765
  // Check if done
@@ -786,7 +786,7 @@ ${screen.elementsText}
786
786
  return result;
787
787
  }
788
788
 
789
- // Step delay (mirrors page-agent stepDelay)
789
+ // Step delay
790
790
  await new Promise(resolve => setTimeout(resolve, stepDelay));
791
791
  }
792
792
 
@@ -1 +1 @@
1
- {"version":3,"names":["logger","walkFiberTree","dehydrateScreen","buildSystemPrompt","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","constructor","provider","config","rootRef","navRef","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","Math","round","registerAction","action","unregisterAction","state","getRootState","getState","collectRouteNames","names","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","getCurrentScreenName","pathname","segments","split","filter","Boolean","getDeepestScreenName","getToolStatusLabel","toolName","viewShot","require","captureRef","default","uri","format","quality","width","code","debug","getScreenContext","walkResult","screenName","elementsText","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","prompt","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","onBeforeStep","transformScreenContent","contextMessage","systemPrompt","language","response","generateContent","tokenUsage","onTokenUsage","toolCalls","onAfterTask","reasoning","toolCall","statusLabel","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["logger","walkFiberTree","dehydrateScreen","buildSystemPrompt","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","lastAskUserQuestion","constructor","provider","config","rootRef","navRef","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","description","parameters","index","type","required","execute","args","interactives","elements","getWalkConfig","element","find","el","map","e","join","props","onValueChange","value","Promise","resolve","setTimeout","label","error","message","onPress","fiber","fiberNode","return","bubbleDepth","parentProps","memoizedProps","text","onChangeText","screen","params","router","path","startsWith","push","isReady","JSON","parse","undefined","availableRoutes","getRouteNames","stringify","matchedScreen","r","toLowerCase","errMsg","warn","screenPath","findScreenPath","length","nestedParams","buildNestedParams","navigate","success","question","onAskUser","onStatusUpdate","answer","screenshot","captureScreenshot","Math","round","registerAction","action","unregisterAction","state","getRootState","getState","collectRouteNames","names","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","getCurrentScreenName","pathname","segments","split","filter","Boolean","getDeepestScreenName","getToolStatusLabel","toolName","viewShot","require","captureRef","default","uri","format","quality","width","code","debug","getScreenContext","walkResult","screenName","elementsText","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","prompt","stepIndex","event","reflection","previousGoalEval","memory","plan","output","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","onBeforeStep","transformScreenContent","contextMessage","systemPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","onAfterTask","reasoning","toolCall","statusLabel","agentStep","input","onAfterStep","updateRefs","getIsRunning"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA,SAASA,MAAM,QAAQ,oBAAiB;AACxC,SAASC,aAAa,QAAQ,sBAAmB;AAEjD,SAASC,eAAe,QAAQ,uBAAoB;AACpD,SAASC,iBAAiB,QAAQ,mBAAgB;AAWlD,MAAMC,iBAAiB,GAAG,EAAE;;AAE5B;;AAEA,OAAO,MAAMC,YAAY,CAAC;EAKhBC,KAAK,GAAgC,IAAIC,GAAG,CAAC,CAAC;EAC9CC,OAAO,GAAkC,IAAID,GAAG,CAAC,CAAC;EAClDE,OAAO,GAAgB,EAAE;EACzBC,SAAS,GAAG,KAAK;EACjBC,mBAAmB,GAAkB,IAAI;EAEjDC,WAAWA,CACTC,QAAoB,EACpBC,MAAmB,EACnBC,OAAY,EACZC,MAAW,EACX;IACA,IAAI,CAACH,QAAQ,GAAGA,QAAQ;IACxB,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;IAEpB,IAAI,CAACC,oBAAoB,CAAC,CAAC;;IAE3B;IACA,IAAIH,MAAM,CAACI,WAAW,EAAE;MACtB,KAAK,MAAM,CAACC,IAAI,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACR,MAAM,CAACI,WAAW,CAAC,EAAE;QAC7D,IAAIE,IAAI,KAAK,IAAI,EAAE;UACjB,IAAI,CAACd,KAAK,CAACiB,MAAM,CAACJ,IAAI,CAAC;UACvBnB,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,iBAAiBL,IAAI,EAAE,CAAC;QACtD,CAAC,MAAM;UACL,IAAI,CAACb,KAAK,CAACmB,GAAG,CAACN,IAAI,EAAEC,IAAI,CAAC;UAC1BpB,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,kBAAkBL,IAAI,EAAE,CAAC;QACvD;MACF;IACF;EACF;;EAEA;;EAEQF,oBAAoBA,CAAA,EAAS;IACnC;IACA,IAAI,CAACX,KAAK,CAACmB,GAAG,CAAC,KAAK,EAAE;MACpBN,IAAI,EAAE,KAAK;MACXO,WAAW,EAAE,yGAAyG;MACtHC,UAAU,EAAE;QACVC,KAAK,EAAE;UAAEC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,iCAAiC;UAAEI,QAAQ,EAAE;QAAK;MAC1F,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAM;UAAEC,YAAY,EAAEC;QAAS,CAAC,GAAGjC,aAAa,CAAC,IAAI,CAACc,OAAO,EAAE,IAAI,CAACoB,aAAa,CAAC,CAAC,CAAC;QACpF,MAAMC,OAAO,GAAGF,QAAQ,CAACG,IAAI,CAACC,EAAE,IAAIA,EAAE,CAACV,KAAK,KAAKI,IAAI,CAACJ,KAAK,CAAC;QAC5D,IAAI,CAACQ,OAAO,EAAE;UACZ,OAAO,wBAAwBJ,IAAI,CAACJ,KAAK,kCAAkCM,QAAQ,CAACK,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACZ,KAAK,CAAC,CAACa,IAAI,CAAC,IAAI,CAAC,EAAE;QACpH;;QAEA;QACA,IAAIL,OAAO,CAACP,IAAI,KAAK,QAAQ,IAAIO,OAAO,CAACM,KAAK,CAACC,aAAa,EAAE;UAC5D,IAAI;YACFP,OAAO,CAACM,KAAK,CAACC,aAAa,CAAC,CAACP,OAAO,CAACM,KAAK,CAACE,KAAK,CAAC;YACjD,MAAM,IAAIC,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,cAAcd,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,QAAQ,CAACZ,OAAO,CAACM,KAAK,CAACE,KAAK,EAAE;UAClF,CAAC,CAAC,OAAOK,KAAU,EAAE;YACnB,OAAO,qBAAqBjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;UAC7D;QACF;;QAEA;QACA,IAAId,OAAO,CAACM,KAAK,CAACS,OAAO,EAAE;UACzB,IAAI;YACFf,OAAO,CAACM,KAAK,CAACS,OAAO,CAAC,CAAC;YACvB,MAAM,IAAIN,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,aAAad,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;UACtD,CAAC,CAAC,OAAOC,KAAU,EAAE;YACnB,OAAO,oBAAoBjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;UAC5D;QACF;;QAEA;QACA,IAAIE,KAAK,GAAGhB,OAAO,CAACiB,SAAS,EAAEC,MAAM;QACrC,IAAIC,WAAW,GAAG,CAAC;QACnB,OAAOH,KAAK,IAAIG,WAAW,GAAG,CAAC,EAAE;UAC/B,MAAMC,WAAW,GAAGJ,KAAK,CAACK,aAAa,IAAI,CAAC,CAAC;UAC7C,IAAID,WAAW,CAACL,OAAO,IAAI,OAAOK,WAAW,CAACL,OAAO,KAAK,UAAU,EAAE;YACpE,IAAI;cACFK,WAAW,CAACL,OAAO,CAAC,CAAC;cACrB,MAAM,IAAIN,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;cACtD,OAAO,uBAAuBd,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;YAChE,CAAC,CAAC,OAAOC,KAAU,EAAE;cACnB,OAAO,8BAA8BjB,IAAI,CAACJ,KAAK,MAAMqB,KAAK,CAACC,OAAO,EAAE;YACtE;UACF;UACAE,KAAK,GAAGA,KAAK,CAACE,MAAM;UACpBC,WAAW,EAAE;QACf;QAEA,OAAO,cAAcvB,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,2DAA2D;MAC/G;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC1C,KAAK,CAACmB,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,mDAAmD;MAChEC,UAAU,EAAE;QACVC,KAAK,EAAE;UAAEC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,qCAAqC;UAAEI,QAAQ,EAAE;QAAK,CAAC;QAC7F4B,IAAI,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,kBAAkB;UAAEI,QAAQ,EAAE;QAAK;MAC1E,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAM;UAAEC,YAAY,EAAEC;QAAS,CAAC,GAAGjC,aAAa,CAAC,IAAI,CAACc,OAAO,EAAE,IAAI,CAACoB,aAAa,CAAC,CAAC,CAAC;QACpF,MAAMC,OAAO,GAAGF,QAAQ,CAACG,IAAI,CAACC,EAAE,IAAIA,EAAE,CAACV,KAAK,KAAKI,IAAI,CAACJ,KAAK,CAAC;QAC5D,IAAI,CAACQ,OAAO,EAAE;UACZ,OAAO,wBAAwBJ,IAAI,CAACJ,KAAK,aAAa;QACxD;QACA,IAAI,CAACQ,OAAO,CAACM,KAAK,CAACiB,YAAY,EAAE;UAC/B,OAAO,cAAc3B,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,wBAAwB;QAC5E;QACA,IAAI;UACFZ,OAAO,CAACM,KAAK,CAACiB,YAAY,CAAC3B,IAAI,CAAC0B,IAAI,CAAC;UACrC;UACA;UACA,MAAM,IAAIb,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;UACtD,OAAO,YAAYd,IAAI,CAAC0B,IAAI,WAAW1B,IAAI,CAACJ,KAAK,MAAMQ,OAAO,CAACY,KAAK,GAAG;QACzE,CAAC,CAAC,OAAOC,KAAU,EAAE;UACnB,OAAO,mBAAmBA,KAAK,CAACC,OAAO,EAAE;QAC3C;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC5C,KAAK,CAACmB,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBO,WAAW,EAAE,2CAA2C;MACxDC,UAAU,EAAE;QACViC,MAAM,EAAE;UAAE/B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,oCAAoC;UAAEI,QAAQ,EAAE;QAAK,CAAC;QAC7F+B,MAAM,EAAE;UAAEhC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,6BAA6B;UAAEI,QAAQ,EAAE;QAAM;MACxF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB;QACA,IAAI,IAAI,CAAClB,MAAM,CAACgD,MAAM,EAAE;UACtB,IAAI;YACF,MAAMC,IAAI,GAAG/B,IAAI,CAAC4B,MAAM,CAACI,UAAU,CAAC,GAAG,CAAC,GAAGhC,IAAI,CAAC4B,MAAM,GAAG,IAAI5B,IAAI,CAAC4B,MAAM,EAAE;YAC1E,IAAI,CAAC9C,MAAM,CAACgD,MAAM,CAACG,IAAI,CAACF,IAAI,CAAC;YAC7B,MAAM,IAAIlB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,mBAAmBiB,IAAI,GAAG;UACnC,CAAC,CAAC,OAAOd,KAAU,EAAE;YACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,EAAE;UAC/C;QACF;;QAEA;QACA,IAAI,CAAC,IAAI,CAAClC,MAAM,EAAE;UAChB,OAAO,iCAAiC;QAC1C;QACA,IAAI,CAAC,IAAI,CAACA,MAAM,CAACkD,OAAO,CAAC,CAAC,EAAE;UAC1B,MAAM,IAAIrB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;UACvD,IAAI,CAAC,IAAI,CAAC9B,MAAM,CAACkD,OAAO,CAAC,CAAC,EAAE;YAC1B,OAAO,gCAAgC;UACzC;QACF;QACA,IAAI;UACF,MAAML,MAAM,GAAG7B,IAAI,CAAC6B,MAAM,GAAI,OAAO7B,IAAI,CAAC6B,MAAM,KAAK,QAAQ,GAAGM,IAAI,CAACC,KAAK,CAACpC,IAAI,CAAC6B,MAAM,CAAC,GAAG7B,IAAI,CAAC6B,MAAM,GAAIQ,SAAS;UAClH;UACA,MAAMC,eAAe,GAAG,IAAI,CAACC,aAAa,CAAC,CAAC;UAC5CvE,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,2BAA2BQ,IAAI,CAAC4B,MAAM,mBAAmBU,eAAe,CAAC7B,IAAI,CAAC,IAAI,CAAC,eAAe0B,IAAI,CAACK,SAAS,CAACX,MAAM,CAAC,EAAE,CAAC;UACvJ,MAAMY,aAAa,GAAGH,eAAe,CAACjC,IAAI,CACxCqC,CAAC,IAAIA,CAAC,CAACC,WAAW,CAAC,CAAC,KAAK3C,IAAI,CAAC4B,MAAM,CAACe,WAAW,CAAC,CACnD,CAAC;;UAED;UACA,IAAI,CAACF,aAAa,EAAE;YAClB,MAAMG,MAAM,GAAG,MAAM5C,IAAI,CAAC4B,MAAM,6EAA6EU,eAAe,CAAC7B,IAAI,CAAC,IAAI,CAAC,6CAA6CT,IAAI,CAAC4B,MAAM,uIAAuI;YACtU5D,MAAM,CAAC6E,IAAI,CAAC,cAAc,EAAE,yBAAyBD,MAAM,EAAE,CAAC;YAC9D,OAAOA,MAAM;UACf;UACA5E,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,yBAAyBQ,IAAI,CAAC4B,MAAM,QAAQa,aAAa,GAAG,CAAC;;UAEzF;UACA,MAAMK,UAAU,GAAG,IAAI,CAACC,cAAc,CAACN,aAAa,CAAC;UACrD,IAAIK,UAAU,CAACE,MAAM,GAAG,CAAC,EAAE;YACzB;YACA;YACAhF,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,sBAAsBsD,UAAU,CAACrC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3E,MAAMwC,YAAY,GAAG,IAAI,CAACC,iBAAiB,CAACJ,UAAU,EAAEjB,MAAM,CAAC;YAC/D,IAAI,CAAC7C,MAAM,CAACmE,QAAQ,CAACL,UAAU,CAAC,CAAC,CAAC,EAAEG,YAAY,CAAC;UACnD,CAAC,MAAM;YACL;YACA,IAAI,CAACjE,MAAM,CAACmE,QAAQ,CAACV,aAAa,EAAEZ,MAAM,CAAC;UAC7C;UACA,MAAM,IAAIhB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;UACtD,OAAO,mBAAmB2B,aAAa,IAAIZ,MAAM,GAAG,iBAAiBM,IAAI,CAACK,SAAS,CAACX,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE;QACtG,CAAC,CAAC,OAAOZ,KAAU,EAAE;UACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,wBAAwB,IAAI,CAACqB,aAAa,CAAC,CAAC,CAAC9B,IAAI,CAAC,IAAI,CAAC,EAAE;QACtG;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACnC,KAAK,CAACmB,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZO,WAAW,EAAE,+CAA+C;MAC5DC,UAAU,EAAE;QACV+B,IAAI,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,8BAA8B;UAAEI,QAAQ,EAAE;QAAK,CAAC;QACrFsD,OAAO,EAAE;UAAEvD,IAAI,EAAE,SAAS;UAAEH,WAAW,EAAE,6CAA6C;UAAEI,QAAQ,EAAE;QAAK;MACzG,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,OAAOA,IAAI,CAAC0B,IAAI;MAClB;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACpD,KAAK,CAACmB,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBO,WAAW,EAAE,4GAA4G;MACzHC,UAAU,EAAE;QACV0D,QAAQ,EAAE;UAAExD,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,0BAA0B;UAAEI,QAAQ,EAAE;QAAK;MACtF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,IAAI,IAAI,CAAClB,MAAM,CAACwE,SAAS,EAAE;UACzB;UACA,IAAI,CAACxE,MAAM,CAACyE,cAAc,GAAG,4BAA4B,CAAC;UAC1D,MAAMC,MAAM,GAAG,MAAM,IAAI,CAAC1E,MAAM,CAACwE,SAAS,CAACtD,IAAI,CAACqD,QAAQ,CAAC;UACzD,OAAO,kBAAkBG,MAAM,EAAE;QACnC;QACA;QACA,OAAO,KAAKxD,IAAI,CAACqD,QAAQ,EAAE;MAC7B;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC/E,KAAK,CAACmB,GAAG,CAAC,oBAAoB,EAAE;MACnCN,IAAI,EAAE,oBAAoB;MAC1BO,WAAW,EAAE,4LAA4L;MACzMC,UAAU,EAAE,CAAC,CAAC;MACdI,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnB,MAAM0D,UAAU,GAAG,MAAM,IAAI,CAACC,iBAAiB,CAAC,CAAC;QACjD,IAAID,UAAU,EAAE;UACd,OAAO,0BAA0BE,IAAI,CAACC,KAAK,CAACH,UAAU,CAACT,MAAM,GAAG,IAAI,CAAC,oDAAoD;QAC3H;QACA,OAAO,2EAA2E;MACpF;IACF,CAAC,CAAC;EACJ;;EAEA;;EAEAa,cAAcA,CAACC,MAAwB,EAAQ;IAC7C,IAAI,CAACtF,OAAO,CAACiB,GAAG,CAACqE,MAAM,CAAC3E,IAAI,EAAE2E,MAAM,CAAC;IACrC9F,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,sBAAsBsE,MAAM,CAAC3E,IAAI,EAAE,CAAC;EAClE;EAEA4E,gBAAgBA,CAAC5E,IAAY,EAAQ;IACnC,IAAI,CAACX,OAAO,CAACe,MAAM,CAACJ,IAAI,CAAC;EAC3B;;EAEA;;EAEA;AACF;AACA;AACA;EACUoD,aAAaA,CAAA,EAAa;IAChC,IAAI;MACF,IAAI,CAAC,IAAI,CAACvD,MAAM,EAAEkD,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE;MACxC,MAAM8B,KAAK,GAAG,IAAI,CAAChF,MAAM,EAAEiF,YAAY,GAAG,CAAC,IAAI,IAAI,CAACjF,MAAM,EAAEkF,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,EAAE;MACrB,OAAO,IAAI,CAACG,iBAAiB,CAACH,KAAK,CAAC;IACtC,CAAC,CAAC,MAAM;MACN,OAAO,EAAE;IACX;EACF;EAEQG,iBAAiBA,CAACH,KAAU,EAAY;IAC9C,MAAMI,KAAe,GAAG,EAAE;IAC1B,IAAIJ,KAAK,EAAEK,MAAM,EAAE;MACjB,KAAK,MAAMC,KAAK,IAAIN,KAAK,CAACK,MAAM,EAAE;QAChCD,KAAK,CAACnC,IAAI,CAACqC,KAAK,CAACnF,IAAI,CAAC;QACtB;QACA,IAAImF,KAAK,CAACN,KAAK,EAAE;UACfI,KAAK,CAACnC,IAAI,CAAC,GAAG,IAAI,CAACkC,iBAAiB,CAACG,KAAK,CAACN,KAAK,CAAC,CAAC;QACpD;MACF;IACF;IACA,OAAO,CAAC,GAAG,IAAIO,GAAG,CAACH,KAAK,CAAC,CAAC;EAC5B;;EAEA;AACF;AACA;AACA;AACA;EACUrB,cAAcA,CAACyB,YAAoB,EAAY;IACrD,IAAI;MACF,MAAMR,KAAK,GAAG,IAAI,CAAChF,MAAM,EAAEiF,YAAY,GAAG,CAAC,IAAI,IAAI,CAACjF,MAAM,EAAEkF,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAEK,MAAM,EAAE,OAAO,CAACG,YAAY,CAAC;;MAEzC;MACA,IAAIR,KAAK,CAACK,MAAM,CAACI,IAAI,CAAE/B,CAAM,IAAKA,CAAC,CAACvD,IAAI,KAAKqF,YAAY,CAAC,EAAE;QAC1D,OAAO,CAACA,YAAY,CAAC;MACvB;;MAEA;MACA,KAAK,MAAMF,KAAK,IAAIN,KAAK,CAACK,MAAM,EAAE;QAChC,MAAMK,WAAW,GAAGJ,KAAK,CAACN,KAAK,GAAG,IAAI,CAACG,iBAAiB,CAACG,KAAK,CAACN,KAAK,CAAC,GAAG,EAAE;QAC1E,IAAIU,WAAW,CAACC,QAAQ,CAACH,YAAY,CAAC,EAAE;UACtC,OAAO,CAACF,KAAK,CAACnF,IAAI,EAAEqF,YAAY,CAAC;QACnC;MACF;MAEA,OAAO,CAACA,YAAY,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,MAAM;MACN,OAAO,CAACA,YAAY,CAAC;IACvB;EACF;;EAEA;AACF;AACA;AACA;AACA;EACUtB,iBAAiBA,CAACnB,IAAc,EAAE6C,UAAgB,EAAO;IAC/D;IACA,IAAIC,MAAM,GAAGD,UAAU;IACvB,KAAK,IAAIE,CAAC,GAAG/C,IAAI,CAACiB,MAAM,GAAG,CAAC,EAAE8B,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;MACzCD,MAAM,GAAG;QAAEjD,MAAM,EAAEG,IAAI,CAAC+C,CAAC,CAAC;QAAE,IAAID,MAAM,KAAKxC,SAAS,GAAG;UAAER,MAAM,EAAEgD;QAAO,CAAC,GAAG,CAAC,CAAC;MAAE,CAAC;IACnF;IACA,OAAOA,MAAM;EACf;;EAEA;AACF;AACA;AACA;EACUE,oBAAoBA,CAAA,EAAW;IACrC;IACA,IAAI,IAAI,CAACjG,MAAM,CAACkG,QAAQ,EAAE;MACxB,MAAMC,QAAQ,GAAG,IAAI,CAACnG,MAAM,CAACkG,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;MAChE,OAAOH,QAAQ,CAACA,QAAQ,CAACjC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS;IACnD;IAEA,IAAI;MACF,IAAI,CAAC,IAAI,CAAChE,MAAM,EAAEkD,OAAO,GAAG,CAAC,EAAE,OAAO,SAAS;MAC/C,MAAM8B,KAAK,GAAG,IAAI,CAAChF,MAAM,EAAEiF,YAAY,GAAG,CAAC,IAAI,IAAI,CAACjF,MAAM,EAAEkF,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,SAAS;MAC5B,OAAO,IAAI,CAACqB,oBAAoB,CAACrB,KAAK,CAAC;IACzC,CAAC,CAAC,MAAM;MACN,OAAO,SAAS;IAClB;EACF;EAEQqB,oBAAoBA,CAACrB,KAAU,EAAU;IAC/C,IAAI,CAACA,KAAK,EAAEK,MAAM,IAAIL,KAAK,CAACpE,KAAK,IAAI,IAAI,EAAE,OAAO,SAAS;IAC3D,MAAM0E,KAAK,GAAGN,KAAK,CAACK,MAAM,CAACL,KAAK,CAACpE,KAAK,CAAC;IACvC,IAAI,CAAC0E,KAAK,EAAE,OAAO,SAAS;IAC5B;IACA,IAAIA,KAAK,CAACN,KAAK,EAAE;MACf,OAAO,IAAI,CAACqB,oBAAoB,CAACf,KAAK,CAACN,KAAK,CAAC;IAC/C;IACA,OAAOM,KAAK,CAACnF,IAAI,IAAI,SAAS;EAChC;;EAEA;EACQmG,kBAAkBA,CAACC,QAAgB,EAAEvF,IAAyB,EAAU;IAC9E,QAAQuF,QAAQ;MACd,KAAK,KAAK;QACR,OAAO,mBAAmBvF,IAAI,CAACJ,KAAK,IAAI,EAAE,KAAK;MACjD,KAAK,MAAM;QACT,OAAO,sBAAsB;MAC/B,KAAK,UAAU;QACb,OAAO,iBAAiBI,IAAI,CAAC4B,MAAM,IAAI,QAAQ,KAAK;MACtD,KAAK,MAAM;QACT,OAAO,gBAAgB;MACzB,KAAK,UAAU;QACb,OAAO,0BAA0B;MACnC;QACE,OAAO,WAAW2D,QAAQ,KAAK;IACnC;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAc7B,iBAAiBA,CAAA,EAAgC;IAC7D,IAAI;MACF,MAAM8B,QAAQ,GAAGC,OAAO,CAAC,wBAAwB,CAAC;MAClD,MAAMC,UAAU,GAAGF,QAAQ,CAACE,UAAU,IAAIF,QAAQ,CAACG,OAAO,EAAED,UAAU;MACtE,IAAI,CAACA,UAAU,IAAI,CAAC,IAAI,CAAC3G,OAAO,EAAE,OAAOsD,SAAS;MAElD,MAAMuD,GAAG,GAAG,MAAMF,UAAU,CAAC,IAAI,CAAC3G,OAAO,EAAE;QACzC8G,MAAM,EAAE,KAAK;QACbC,OAAO,EAAE,GAAG;QACZC,KAAK,EAAE,GAAG;QACVlB,MAAM,EAAE;MACV,CAAC,CAAC;MAEF7G,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,wBAAwBmE,IAAI,CAACC,KAAK,CAAC,CAACgC,GAAG,EAAE5C,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;MACtG,OAAO4C,GAAG,IAAIvD,SAAS;IACzB,CAAC,CAAC,OAAOpB,KAAU,EAAE;MACnB;MACA,IAAIA,KAAK,CAACC,OAAO,EAAEyD,QAAQ,CAAC,oBAAoB,CAAC,IAAI1D,KAAK,CAAC+E,IAAI,KAAK,kBAAkB,EAAE;QACtFhI,MAAM,CAAC6E,IAAI,CAAC,cAAc,EAAE,mGAAmG,CAAC;MAClI,CAAC,MAAM;QACL7E,MAAM,CAACiI,KAAK,CAAC,cAAc,EAAE,uBAAuBhF,KAAK,CAACC,OAAO,EAAE,CAAC;MACtE;MACA,OAAOmB,SAAS;IAClB;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACS6D,gBAAgBA,CAAA,EAAW;IAChC,IAAI;MACF,MAAMC,UAAU,GAAGlI,aAAa,CAAC,IAAI,CAACc,OAAO,EAAE,IAAI,CAACoB,aAAa,CAAC,CAAC,CAAC;MACpE,MAAMiG,UAAU,GAAG,IAAI,CAACrB,oBAAoB,CAAC,CAAC;MAC9C,MAAMnD,MAAM,GAAG1D,eAAe,CAC5BkI,UAAU,EACV,IAAI,CAAC7D,aAAa,CAAC,CAAC,EACpB4D,UAAU,CAACE,YAAY,EACvBF,UAAU,CAAClG,YACb,CAAC;MAED,OAAO;AACb,kBAAkBmG,UAAU;AAC5B,qBAAqB,IAAI,CAAC7D,aAAa,CAAC,CAAC,CAAC9B,IAAI,CAAC,IAAI,CAAC;AACpD;AACA,EAAEmB,MAAM,CAACyE,YAAY;AACrB,iBAAiB;IACb,CAAC,CAAC,OAAOpF,KAAU,EAAE;MACnBjD,MAAM,CAACiD,KAAK,CAAC,cAAc,EAAE,4BAA4BA,KAAK,CAACC,OAAO,EAAE,CAAC;MACzE,OAAO,qDAAqD;IAC9D;EACF;;EAEA;;EAEQoF,qBAAqBA,CAAA,EAAqB;IAChD,MAAMC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAACjI,KAAK,CAACkI,MAAM,CAAC,CAAC,CAAC;;IAEzC;IACA,KAAK,MAAM1C,MAAM,IAAI,IAAI,CAACtF,OAAO,CAACgI,MAAM,CAAC,CAAC,EAAE;MAC1CD,QAAQ,CAACtE,IAAI,CAAC;QACZ9C,IAAI,EAAE2E,MAAM,CAAC3E,IAAI;QACjBO,WAAW,EAAEoE,MAAM,CAACpE,WAAW;QAC/BC,UAAU,EAAEN,MAAM,CAACoH,WAAW,CAC5BpH,MAAM,CAACC,OAAO,CAACwE,MAAM,CAACnE,UAAU,CAAC,CAACY,GAAG,CAAC,CAAC,CAACmG,GAAG,EAAEC,OAAO,CAAC,KAAK,CACxDD,GAAG,EACH;UAAE7G,IAAI,EAAE8G,OAAc;UAAEjH,WAAW,EAAEgH,GAAG;UAAE5G,QAAQ,EAAE;QAAK,CAAC,CAC3D,CACH,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,IAAI;YACF,MAAM6E,MAAM,GAAG,MAAMf,MAAM,CAAC8C,OAAO,CAAC5G,IAAI,CAAC;YACzChC,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,WAAWsE,MAAM,CAAC3E,IAAI,WAAW,EAAEgD,IAAI,CAACK,SAAS,CAACqC,MAAM,CAAC,CAAC;YACtF,OAAO,OAAOA,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAG1C,IAAI,CAACK,SAAS,CAACqC,MAAM,CAAC;UACrE,CAAC,CAAC,OAAO5D,KAAU,EAAE;YACnB,OAAO,aAAa6C,MAAM,CAAC3E,IAAI,aAAa8B,KAAK,CAACC,OAAO,EAAE;UAC7D;QACF;MACF,CAAC,CAAC;IACJ;IAEA,OAAOqF,QAAQ;EACjB;;EAEA;EACOM,QAAQA,CAAA,EAAqB;IAClC,OAAO,IAAI,CAACP,qBAAqB,CAAC,CAAC;EACrC;;EAEA;EACA,MAAaQ,WAAWA,CAAC3H,IAAY,EAAEa,IAAyB,EAAmB;IACjF,MAAMZ,IAAI,GAAG,IAAI,CAACd,KAAK,CAACyI,GAAG,CAAC5H,IAAI,CAAC,IAC/B,IAAI,CAACmH,qBAAqB,CAAC,CAAC,CAACjG,IAAI,CAAC2G,CAAC,IAAIA,CAAC,CAAC7H,IAAI,KAAKA,IAAI,CAAC;IACzD,IAAI,CAACC,IAAI,EAAE;MACT,OAAO,mBAAmBD,IAAI,EAAE;IAClC;IACA,IAAI;MACF,MAAM0F,MAAM,GAAG,MAAMzF,IAAI,CAACW,OAAO,CAACC,IAAI,CAAC;MACvChC,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,wBAAwBL,IAAI,MAAM0F,MAAM,EAAE,CAAC;MACvE,OAAOA,MAAM;IACf,CAAC,CAAC,OAAO5D,KAAU,EAAE;MACnBjD,MAAM,CAACiD,KAAK,CAAC,cAAc,EAAE,qBAAqB9B,IAAI,MAAM8B,KAAK,CAACC,OAAO,EAAE,CAAC;MAC5E,OAAO,WAAW/B,IAAI,aAAa8B,KAAK,CAACC,OAAO,EAAE;IACpD;EACF;;EAEA;;EAEQf,aAAaA,CAAA,EAAe;IAClC,OAAO;MACL8G,oBAAoB,EAAE,IAAI,CAACnI,MAAM,CAACmI,oBAAoB;MACtDC,oBAAoB,EAAE,IAAI,CAACpI,MAAM,CAACoI;IACpC,CAAC;EACH;;EAEA;;EAEQC,eAAeA,CAACf,UAAkB,EAAU;IAClD,MAAM;MAAEgB;IAAa,CAAC,GAAG,IAAI,CAACtI,MAAM;IACpC,IAAI,CAACsI,YAAY,EAAE,OAAO,EAAE;IAE5B,IAAIvC,MAAM,GAAG,EAAE;IACf,IAAIuC,YAAY,CAACC,MAAM,EAAEC,IAAI,CAAC,CAAC,EAAE;MAC/BzC,MAAM,IAAI,0BAA0BuC,YAAY,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,4BAA4B;IAC5F;IAEA,IAAIF,YAAY,CAACG,qBAAqB,EAAE;MACtC,IAAI;QACF,MAAMC,kBAAkB,GAAGJ,YAAY,CAACG,qBAAqB,CAACnB,UAAU,CAAC,EAAEkB,IAAI,CAAC,CAAC;QACjF,IAAIE,kBAAkB,EAAE;UACtB3C,MAAM,IAAI,0BAA0B2C,kBAAkB,4BAA4B;QACpF;MACF,CAAC,CAAC,OAAOvG,KAAK,EAAE;QACdjD,MAAM,CAACiD,KAAK,CAAC,cAAc,EAAE,oCAAoC,EAAEA,KAAK,CAAC;MAC3E;IACF;IAEA,OAAO4D,MAAM,GAAG,mBAAmBA,MAAM,qBAAqB,GAAG,EAAE;EACrE;;EAEA;;EAEQ4C,YAAY,GAAa,EAAE;EAC3BC,cAAc,GAAW,EAAE;EAE3BC,kBAAkBA,CAACC,IAAY,EAAEC,QAAgB,EAAEzB,UAAkB,EAAQ;IACnF;IACA,IAAI,IAAI,CAACsB,cAAc,IAAItB,UAAU,KAAK,IAAI,CAACsB,cAAc,EAAE;MAC7D,IAAI,CAACD,YAAY,CAACxF,IAAI,CAAC,yBAAyBmE,UAAU,EAAE,CAAC;IAC/D;IACA,IAAI,CAACsB,cAAc,GAAGtB,UAAU;;IAEhC;IACA,MAAM0B,SAAS,GAAGD,QAAQ,GAAGD,IAAI;IACjC,IAAIE,SAAS,KAAK,CAAC,EAAE;MACnB,IAAI,CAACL,YAAY,CAACxF,IAAI,CACpB,WAAW6F,SAAS,8EACtB,CAAC;IACH,CAAC,MAAM,IAAIA,SAAS,KAAK,CAAC,EAAE;MAC1B,IAAI,CAACL,YAAY,CAACxF,IAAI,CACpB,qBAAqB6F,SAAS,iEAChC,CAAC;IACH;EACF;;EAEA;;EAEQC,kBAAkBA,CACxBH,IAAY,EACZC,QAAgB,EAChBG,iBAAyB,EACzB5B,UAAkB,EAClB6B,aAAqB,EACb;IACR,IAAIC,MAAM,GAAG,EAAE;;IAEf;IACAA,MAAM,IAAI,IAAI,CAACf,eAAe,CAACf,UAAU,CAAC;;IAE1C;IACA8B,MAAM,IAAI,iBAAiB;IAC3BA,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,GAAGF,iBAAiB,IAAI;IAClCE,MAAM,IAAI,mBAAmB;IAC7BA,MAAM,IAAI,eAAe;IACzBA,MAAM,IAAI,QAAQN,IAAI,GAAG,CAAC,OAAOC,QAAQ,uBAAuB;IAChEK,MAAM,IAAI,gBAAgB;IAC1BA,MAAM,IAAI,oBAAoB;;IAE9B;IACAA,MAAM,IAAI,mBAAmB;IAE7B,IAAIC,SAAS,GAAG,CAAC;IACjB,KAAK,MAAMC,KAAK,IAAI,IAAI,CAAC3J,OAAO,EAAE;MAChC0J,SAAS,EAAE;MACXD,MAAM,IAAI,SAASC,SAAS,KAAK;MACjCD,MAAM,IAAI,uBAAuBE,KAAK,CAACC,UAAU,CAACC,gBAAgB,IAAI;MACtEJ,MAAM,IAAI,WAAWE,KAAK,CAACC,UAAU,CAACE,MAAM,IAAI;MAChDL,MAAM,IAAI,SAASE,KAAK,CAACC,UAAU,CAACG,IAAI,IAAI;MAC5CN,MAAM,IAAI,kBAAkBE,KAAK,CAACtE,MAAM,CAAC2E,MAAM,IAAI;MACnDP,MAAM,IAAI,UAAUC,SAAS,KAAK;IACpC;;IAEA;IACA,KAAK,MAAMO,GAAG,IAAI,IAAI,CAACjB,YAAY,EAAE;MACnCS,MAAM,IAAI,QAAQQ,GAAG,UAAU;IACjC;IACA,IAAI,CAACjB,YAAY,GAAG,EAAE;IAEtBS,MAAM,IAAI,sBAAsB;;IAEhC;IACAA,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,mBAAmB9B,UAAU,IAAI;IAC3C8B,MAAM,IAAID,aAAa,GAAG,IAAI;IAC9BC,MAAM,IAAI,mBAAmB;IAE7B,OAAOA,MAAM;EACf;;EAEA;;EAEA,MAAMnI,OAAOA,CAAC4I,WAAmB,EAA4B;IAC3D,IAAI,IAAI,CAACjK,SAAS,EAAE;MAClB,OAAO;QAAE0E,OAAO,EAAE,KAAK;QAAElC,OAAO,EAAE,2BAA2B;QAAE0H,KAAK,EAAE;MAAG,CAAC;IAC5E;IAEA,IAAI,CAAClK,SAAS,GAAG,IAAI;IACrB,IAAI,CAACD,OAAO,GAAG,EAAE;IACjB,IAAI,CAACgJ,YAAY,GAAG,EAAE;IACtB,IAAI,CAACC,cAAc,GAAG,EAAE;IACxB,MAAMG,QAAQ,GAAG,IAAI,CAAC/I,MAAM,CAAC+I,QAAQ,IAAIzJ,iBAAiB;IAC1D,MAAMyK,SAAS,GAAG,IAAI,CAAC/J,MAAM,CAAC+J,SAAS,IAAI,GAAG;;IAE9C;IACA,MAAMC,YAAwB,GAAG;MAC/BC,YAAY,EAAE,CAAC;MACfC,gBAAgB,EAAE,CAAC;MACnBC,WAAW,EAAE,CAAC;MACdC,gBAAgB,EAAE;IACpB,CAAC;;IAED;IACA,IAAIlB,iBAAiB,GAAGW,WAAW;IACnC,IAAI,IAAI,CAAChK,mBAAmB,EAAE;MAC5BqJ,iBAAiB,GAAG,oCAAoC,IAAI,CAACrJ,mBAAmB,uBAAuBgK,WAAW,EAAE;MACpH,IAAI,CAAChK,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACnC;IAEAX,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,wBAAwBwI,iBAAiB,GAAG,CAAC;;IAEzE;IACA,MAAM,IAAI,CAAClJ,MAAM,CAACqK,YAAY,GAAG,CAAC;IAElC,IAAI;MACF,KAAK,IAAIvB,IAAI,GAAG,CAAC,EAAEA,IAAI,GAAGC,QAAQ,EAAED,IAAI,EAAE,EAAE;QAC1C5J,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,cAAcoI,IAAI,GAAG,CAAC,IAAIC,QAAQ,QAAQ,CAAC;;QAEvE;QACA,MAAM,IAAI,CAAC/I,MAAM,CAACsK,YAAY,GAAGxB,IAAI,CAAC;;QAEtC;QACA,MAAMzB,UAAU,GAAGlI,aAAa,CAAC,IAAI,CAACc,OAAO,EAAE,IAAI,CAACoB,aAAa,CAAC,CAAC,CAAC;QACpE,MAAMiG,UAAU,GAAG,IAAI,CAACrB,oBAAoB,CAAC,CAAC;QAC9C,MAAMnD,MAAM,GAAG1D,eAAe,CAC5BkI,UAAU,EACV,IAAI,CAAC7D,aAAa,CAAC,CAAC,EACpB4D,UAAU,CAACE,YAAY,EACvBF,UAAU,CAAClG,YACb,CAAC;QAEDjC,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,WAAWoC,MAAM,CAACwE,UAAU,EAAE,CAAC;QAC3DpI,MAAM,CAACiI,KAAK,CAAC,cAAc,EAAE,gBAAgBrE,MAAM,CAACyE,YAAY,EAAE,CAAC;;QAEnE;QACA,IAAI4B,aAAa,GAAGrG,MAAM,CAACyE,YAAY;QACvC,IAAI,IAAI,CAACvH,MAAM,CAACuK,sBAAsB,EAAE;UACtCpB,aAAa,GAAG,MAAM,IAAI,CAACnJ,MAAM,CAACuK,sBAAsB,CAACpB,aAAa,CAAC;QACzE;;QAEA;QACA,IAAI,CAACN,kBAAkB,CAACC,IAAI,EAAEC,QAAQ,EAAEzB,UAAU,CAAC;;QAEnD;QACA,MAAMkD,cAAc,GAAG,IAAI,CAACvB,kBAAkB,CAC5CH,IAAI,EAAEC,QAAQ,EAAEG,iBAAiB,EAAE5B,UAAU,EAAE6B,aACjD,CAAC;;QAED;QACA,MAAMxE,UAAU,GAAG,MAAM,IAAI,CAACC,iBAAiB,CAAC,CAAC;;QAEjD;QACA,IAAI,CAAC5E,MAAM,CAACyE,cAAc,GAAG,qBAAqB,CAAC;QACnD,MAAMgG,YAAY,GAAGpL,iBAAiB,CAAC,IAAI,CAAC;QAC5C,MAAMG,KAAK,GAAG,IAAI,CAACgI,qBAAqB,CAAC,CAAC;QAE1CtI,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,sBAAsBlB,KAAK,CAAC0E,MAAM,WAAW,CAAC;QAE1E,MAAMwG,QAAQ,GAAG,MAAM,IAAI,CAAC3K,QAAQ,CAAC4K,eAAe,CAClDF,YAAY,EACZD,cAAc,EACdhL,KAAK,EACL,IAAI,CAACG,OAAO,EACZgF,UACF,CAAC;;QAED;QACA,IAAI+F,QAAQ,CAACE,UAAU,EAAE;UACvBZ,YAAY,CAACC,YAAY,IAAIS,QAAQ,CAACE,UAAU,CAACX,YAAY;UAC7DD,YAAY,CAACE,gBAAgB,IAAIQ,QAAQ,CAACE,UAAU,CAACV,gBAAgB;UACrEF,YAAY,CAACG,WAAW,IAAIO,QAAQ,CAACE,UAAU,CAACT,WAAW;UAC3DH,YAAY,CAACI,gBAAgB,IAAIM,QAAQ,CAACE,UAAU,CAACR,gBAAgB;UACrE,IAAI,CAACpK,MAAM,CAAC6K,YAAY,GAAGH,QAAQ,CAACE,UAAU,CAAC;QACjD;;QAEA;QACA,IAAI,CAACF,QAAQ,CAACI,SAAS,IAAIJ,QAAQ,CAACI,SAAS,CAAC5G,MAAM,KAAK,CAAC,EAAE;UAC1DhF,MAAM,CAAC6E,IAAI,CAAC,cAAc,EAAE,kCAAkC,EAAE2G,QAAQ,CAAC9H,IAAI,CAAC;UAC9E,MAAMmD,MAAuB,GAAG;YAC9BzB,OAAO,EAAE,IAAI;YACblC,OAAO,EAAEsI,QAAQ,CAAC9H,IAAI,IAAI,iBAAiB;YAC3CkH,KAAK,EAAE,IAAI,CAACnK,OAAO;YACnBiL,UAAU,EAAEZ;UACd,CAAC;UACD,MAAM,IAAI,CAAChK,MAAM,CAAC+K,WAAW,GAAGhF,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM;UAAEiF;QAAU,CAAC,GAAGN,QAAQ;QAC9BxL,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,YAAYsK,SAAS,CAACtB,IAAI,EAAE,CAAC;QACzD,IAAIsB,SAAS,CAACvB,MAAM,EAAE;UACpBvK,MAAM,CAACiI,KAAK,CAAC,cAAc,EAAE,cAAc6D,SAAS,CAACvB,MAAM,EAAE,CAAC;QAChE;;QAEA;QACA;QACA,MAAMwB,QAAQ,GAAGP,QAAQ,CAACI,SAAS,CAAC,CAAC,CAAE;QACvC,IAAIJ,QAAQ,CAACI,SAAS,CAAC5G,MAAM,GAAG,CAAC,EAAE;UACjChF,MAAM,CAAC6E,IAAI,CAAC,cAAc,EAAE,eAAe2G,QAAQ,CAACI,SAAS,CAAC5G,MAAM,4CAA4C,CAAC;QACnH;QAEAhF,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,SAASuK,QAAQ,CAAC5K,IAAI,IAAIgD,IAAI,CAACK,SAAS,CAACuH,QAAQ,CAAC/J,IAAI,CAAC,GAAG,CAAC;;QAEvF;QACA,MAAMgK,WAAW,GAAG,IAAI,CAAC1E,kBAAkB,CAACyE,QAAQ,CAAC5K,IAAI,EAAE4K,QAAQ,CAAC/J,IAAI,CAAC;QACzE,IAAI,CAAClB,MAAM,CAACyE,cAAc,GAAGyG,WAAW,CAAC;;QAEzC;QACA,MAAM5K,IAAI,GAAG,IAAI,CAACd,KAAK,CAACyI,GAAG,CAACgD,QAAQ,CAAC5K,IAAI,CAAC,IACxC,IAAI,CAACmH,qBAAqB,CAAC,CAAC,CAACjG,IAAI,CAAC2G,CAAC,IAAIA,CAAC,CAAC7H,IAAI,KAAK4K,QAAQ,CAAC5K,IAAI,CAAC;QAElE,IAAIsJ,MAAc;QAClB,IAAIrJ,IAAI,EAAE;UACRqJ,MAAM,GAAG,MAAMrJ,IAAI,CAACW,OAAO,CAACgK,QAAQ,CAAC/J,IAAI,CAAC;QAC5C,CAAC,MAAM;UACLyI,MAAM,GAAG,mBAAmBsB,QAAQ,CAAC5K,IAAI,EAAE;QAC7C;QAEAnB,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,WAAWiJ,MAAM,EAAE,CAAC;;QAEhD;QACA,MAAMwB,SAAoB,GAAG;UAC3B9B,SAAS,EAAEP,IAAI;UACfS,UAAU,EAAEyB,SAAS;UACrBhG,MAAM,EAAE;YACN3E,IAAI,EAAE4K,QAAQ,CAAC5K,IAAI;YACnB+K,KAAK,EAAEH,QAAQ,CAAC/J,IAAI;YACpByI;UACF;QACF,CAAC;QACD,IAAI,CAAChK,OAAO,CAACwD,IAAI,CAACgI,SAAS,CAAC;;QAE5B;QACA,MAAM,IAAI,CAACnL,MAAM,CAACqL,WAAW,GAAG,IAAI,CAAC1L,OAAO,CAAC;;QAE7C;QACA,IAAIsL,QAAQ,CAAC5K,IAAI,KAAK,MAAM,EAAE;UAC5B,MAAM0F,MAAuB,GAAG;YAC9BzB,OAAO,EAAE2G,QAAQ,CAAC/J,IAAI,CAACoD,OAAO,KAAK,KAAK;YACxClC,OAAO,EAAE6I,QAAQ,CAAC/J,IAAI,CAAC0B,IAAI,IAAI+G,MAAM;YACrCG,KAAK,EAAE,IAAI,CAACnK;UACd,CAAC;UACDT,MAAM,CAACwB,IAAI,CAAC,cAAc,EAAE,mBAAmBqF,MAAM,CAAC3D,OAAO,EAAE,CAAC;UAChE,MAAM,IAAI,CAACpC,MAAM,CAAC+K,WAAW,GAAGhF,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,IAAIkF,QAAQ,CAAC5K,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAACL,MAAM,CAACwE,SAAS,EAAE;UAC1D,IAAI,CAAC3E,mBAAmB,GAAGoL,QAAQ,CAAC/J,IAAI,CAACqD,QAAQ,IAAIoF,MAAM;UAE3D,MAAM5D,MAAuB,GAAG;YAC9BzB,OAAO,EAAE,IAAI;YACblC,OAAO,EAAEuH,MAAM;YACfG,KAAK,EAAE,IAAI,CAACnK;UACd,CAAC;UACD,MAAM,IAAI,CAACK,MAAM,CAAC+K,WAAW,GAAGhF,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM,IAAIhE,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE+H,SAAS,CAAC,CAAC;MAC9D;;MAEA;MACA,MAAMhE,MAAuB,GAAG;QAC9BzB,OAAO,EAAE,KAAK;QACdlC,OAAO,EAAE,0BAA0B2G,QAAQ,gCAAgC;QAC3Ee,KAAK,EAAE,IAAI,CAACnK,OAAO;QACnBiL,UAAU,EAAEZ;MACd,CAAC;MACD,MAAM,IAAI,CAAChK,MAAM,CAAC+K,WAAW,GAAGhF,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,CAAC,OAAO5D,KAAU,EAAE;MACnBjD,MAAM,CAACiD,KAAK,CAAC,cAAc,EAAE,kBAAkB,EAAEA,KAAK,CAAC;MACvD,MAAM4D,MAAuB,GAAG;QAC9BzB,OAAO,EAAE,KAAK;QACdlC,OAAO,EAAE,UAAUD,KAAK,CAACC,OAAO,EAAE;QAClC0H,KAAK,EAAE,IAAI,CAACnK,OAAO;QACnBiL,UAAU,EAAEZ;MACd,CAAC;MACD,MAAM,IAAI,CAAChK,MAAM,CAAC+K,WAAW,GAAGhF,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,SAAS;MACR,IAAI,CAACnG,SAAS,GAAG,KAAK;IACxB;EACF;;EAEA;EACA0L,UAAUA,CAACrL,OAAY,EAAEC,MAAW,EAAQ;IAC1C,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;EACtB;;EAEA;EACAqL,YAAYA,CAAA,EAAY;IACtB,OAAO,IAAI,CAAC3L,SAAS;EACvB;AACF","ignoreList":[]}