@mobileai/react-native 0.9.0 → 0.9.1

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 (173) hide show
  1. package/README.md +121 -0
  2. package/lib/module/components/AIAgent.js +248 -53
  3. package/lib/module/components/AIAgent.js.map +1 -1
  4. package/lib/module/components/AIZone.js +140 -0
  5. package/lib/module/components/AIZone.js.map +1 -0
  6. package/lib/module/components/AgentErrorBoundary.js +9 -0
  7. package/lib/module/components/AgentErrorBoundary.js.map +1 -1
  8. package/lib/module/components/HighlightOverlay.js +138 -0
  9. package/lib/module/components/HighlightOverlay.js.map +1 -0
  10. package/lib/module/components/ProactiveHint.js +138 -0
  11. package/lib/module/components/ProactiveHint.js.map +1 -0
  12. package/lib/module/components/cards/InfoCard.js +65 -0
  13. package/lib/module/components/cards/InfoCard.js.map +1 -0
  14. package/lib/module/components/cards/ReviewSummary.js +74 -0
  15. package/lib/module/components/cards/ReviewSummary.js.map +1 -0
  16. package/lib/module/core/AgentRuntime.js +16 -3
  17. package/lib/module/core/AgentRuntime.js.map +1 -1
  18. package/lib/module/core/FiberTreeWalker.js +62 -85
  19. package/lib/module/core/FiberTreeWalker.js.map +1 -1
  20. package/lib/module/core/IdleDetector.js +51 -0
  21. package/lib/module/core/IdleDetector.js.map +1 -0
  22. package/lib/module/core/ZoneRegistry.js +47 -0
  23. package/lib/module/core/ZoneRegistry.js.map +1 -0
  24. package/lib/module/core/systemPrompt.js +2 -0
  25. package/lib/module/core/systemPrompt.js.map +1 -1
  26. package/lib/module/index.js +21 -0
  27. package/lib/module/index.js.map +1 -1
  28. package/lib/module/services/AudioOutputService.js +10 -0
  29. package/lib/module/services/AudioOutputService.js.map +1 -1
  30. package/lib/module/services/flags/FlagService.js +117 -0
  31. package/lib/module/services/flags/FlagService.js.map +1 -0
  32. package/lib/module/services/telemetry/MobileAI.js +66 -0
  33. package/lib/module/services/telemetry/MobileAI.js.map +1 -0
  34. package/lib/module/services/telemetry/PiiScrubber.js +17 -0
  35. package/lib/module/services/telemetry/PiiScrubber.js.map +1 -0
  36. package/lib/module/services/telemetry/TelemetryService.js +260 -0
  37. package/lib/module/services/telemetry/TelemetryService.js.map +1 -0
  38. package/lib/module/services/telemetry/TouchAutoCapture.js +159 -0
  39. package/lib/module/services/telemetry/TouchAutoCapture.js.map +1 -0
  40. package/lib/module/services/telemetry/device.js +19 -0
  41. package/lib/module/services/telemetry/device.js.map +1 -0
  42. package/lib/module/services/telemetry/index.js +9 -0
  43. package/lib/module/services/telemetry/index.js.map +1 -0
  44. package/lib/module/services/telemetry/types.js +2 -0
  45. package/lib/module/services/telemetry/types.js.map +1 -0
  46. package/lib/module/support/CSATSurvey.js +273 -0
  47. package/lib/module/support/CSATSurvey.js.map +1 -0
  48. package/lib/module/support/EscalationSocket.js +92 -0
  49. package/lib/module/support/EscalationSocket.js.map +1 -0
  50. package/lib/module/support/SupportGreeting.js +142 -0
  51. package/lib/module/support/SupportGreeting.js.map +1 -0
  52. package/lib/module/support/escalateTool.js +120 -0
  53. package/lib/module/support/escalateTool.js.map +1 -0
  54. package/lib/module/support/index.js +18 -0
  55. package/lib/module/support/index.js.map +1 -0
  56. package/lib/module/support/supportPrompt.js +47 -0
  57. package/lib/module/support/supportPrompt.js.map +1 -0
  58. package/lib/module/support/types.js +2 -0
  59. package/lib/module/support/types.js.map +1 -0
  60. package/lib/module/tools/guideTool.js +61 -0
  61. package/lib/module/tools/guideTool.js.map +1 -0
  62. package/lib/module/tools/index.js +3 -0
  63. package/lib/module/tools/index.js.map +1 -1
  64. package/lib/module/tools/restoreTool.js +31 -0
  65. package/lib/module/tools/restoreTool.js.map +1 -0
  66. package/lib/module/tools/simplifyTool.js +31 -0
  67. package/lib/module/tools/simplifyTool.js.map +1 -0
  68. package/lib/module/types/jsx.d.js +4 -0
  69. package/lib/module/types/jsx.d.js.map +1 -0
  70. package/lib/typescript/src/components/AIAgent.d.ts +21 -2
  71. package/lib/typescript/src/components/AIAgent.d.ts.map +1 -1
  72. package/lib/typescript/src/components/AIZone.d.ts +16 -0
  73. package/lib/typescript/src/components/AIZone.d.ts.map +1 -0
  74. package/lib/typescript/src/components/AgentErrorBoundary.d.ts +1 -0
  75. package/lib/typescript/src/components/AgentErrorBoundary.d.ts.map +1 -1
  76. package/lib/typescript/src/components/HighlightOverlay.d.ts +10 -0
  77. package/lib/typescript/src/components/HighlightOverlay.d.ts.map +1 -0
  78. package/lib/typescript/src/components/ProactiveHint.d.ts +10 -0
  79. package/lib/typescript/src/components/ProactiveHint.d.ts.map +1 -0
  80. package/lib/typescript/src/components/cards/InfoCard.d.ts +19 -0
  81. package/lib/typescript/src/components/cards/InfoCard.d.ts.map +1 -0
  82. package/lib/typescript/src/components/cards/ReviewSummary.d.ts +19 -0
  83. package/lib/typescript/src/components/cards/ReviewSummary.d.ts.map +1 -0
  84. package/lib/typescript/src/core/AgentRuntime.d.ts +1 -0
  85. package/lib/typescript/src/core/AgentRuntime.d.ts.map +1 -1
  86. package/lib/typescript/src/core/FiberTreeWalker.d.ts.map +1 -1
  87. package/lib/typescript/src/core/IdleDetector.d.ts +27 -0
  88. package/lib/typescript/src/core/IdleDetector.d.ts.map +1 -0
  89. package/lib/typescript/src/core/ZoneRegistry.d.ts +13 -0
  90. package/lib/typescript/src/core/ZoneRegistry.d.ts.map +1 -0
  91. package/lib/typescript/src/core/systemPrompt.d.ts.map +1 -1
  92. package/lib/typescript/src/core/types.d.ts +54 -0
  93. package/lib/typescript/src/core/types.d.ts.map +1 -1
  94. package/lib/typescript/src/index.d.ts +5 -0
  95. package/lib/typescript/src/index.d.ts.map +1 -1
  96. package/lib/typescript/src/services/AudioOutputService.d.ts.map +1 -1
  97. package/lib/typescript/src/services/flags/FlagService.d.ts +25 -0
  98. package/lib/typescript/src/services/flags/FlagService.d.ts.map +1 -0
  99. package/lib/typescript/src/services/telemetry/MobileAI.d.ts +38 -0
  100. package/lib/typescript/src/services/telemetry/MobileAI.d.ts.map +1 -0
  101. package/lib/typescript/src/services/telemetry/PiiScrubber.d.ts +6 -0
  102. package/lib/typescript/src/services/telemetry/PiiScrubber.d.ts.map +1 -0
  103. package/lib/typescript/src/services/telemetry/TelemetryService.d.ts +49 -0
  104. package/lib/typescript/src/services/telemetry/TelemetryService.d.ts.map +1 -0
  105. package/lib/typescript/src/services/telemetry/TouchAutoCapture.d.ts +28 -0
  106. package/lib/typescript/src/services/telemetry/TouchAutoCapture.d.ts.map +1 -0
  107. package/lib/typescript/src/services/telemetry/device.d.ts +7 -0
  108. package/lib/typescript/src/services/telemetry/device.d.ts.map +1 -0
  109. package/lib/typescript/src/services/telemetry/index.d.ts +7 -0
  110. package/lib/typescript/src/services/telemetry/index.d.ts.map +1 -0
  111. package/lib/typescript/src/services/telemetry/types.d.ts +50 -0
  112. package/lib/typescript/src/services/telemetry/types.d.ts.map +1 -0
  113. package/lib/typescript/src/support/CSATSurvey.d.ts +20 -0
  114. package/lib/typescript/src/support/CSATSurvey.d.ts.map +1 -0
  115. package/lib/typescript/src/support/EscalationSocket.d.ts +38 -0
  116. package/lib/typescript/src/support/EscalationSocket.d.ts.map +1 -0
  117. package/lib/typescript/src/support/SupportGreeting.d.ts +19 -0
  118. package/lib/typescript/src/support/SupportGreeting.d.ts.map +1 -0
  119. package/lib/typescript/src/support/escalateTool.d.ts +25 -0
  120. package/lib/typescript/src/support/escalateTool.d.ts.map +1 -0
  121. package/lib/typescript/src/support/index.d.ts +11 -0
  122. package/lib/typescript/src/support/index.d.ts.map +1 -0
  123. package/lib/typescript/src/support/supportPrompt.d.ts +12 -0
  124. package/lib/typescript/src/support/supportPrompt.d.ts.map +1 -0
  125. package/lib/typescript/src/support/types.d.ts +114 -0
  126. package/lib/typescript/src/support/types.d.ts.map +1 -0
  127. package/lib/typescript/src/tools/guideTool.d.ts +4 -0
  128. package/lib/typescript/src/tools/guideTool.d.ts.map +1 -0
  129. package/lib/typescript/src/tools/index.d.ts +3 -0
  130. package/lib/typescript/src/tools/index.d.ts.map +1 -1
  131. package/lib/typescript/src/tools/restoreTool.d.ts +3 -0
  132. package/lib/typescript/src/tools/restoreTool.d.ts.map +1 -0
  133. package/lib/typescript/src/tools/simplifyTool.d.ts +3 -0
  134. package/lib/typescript/src/tools/simplifyTool.d.ts.map +1 -0
  135. package/lib/typescript/src/tools/types.d.ts +2 -0
  136. package/lib/typescript/src/tools/types.d.ts.map +1 -1
  137. package/package.json +5 -1
  138. package/src/components/AIAgent.tsx +253 -15
  139. package/src/components/AIZone.tsx +147 -0
  140. package/src/components/AgentErrorBoundary.tsx +10 -0
  141. package/src/components/HighlightOverlay.tsx +136 -0
  142. package/src/components/ProactiveHint.tsx +145 -0
  143. package/src/components/cards/InfoCard.tsx +58 -0
  144. package/src/components/cards/ReviewSummary.tsx +76 -0
  145. package/src/core/AgentRuntime.ts +18 -0
  146. package/src/core/FiberTreeWalker.ts +71 -93
  147. package/src/core/IdleDetector.ts +72 -0
  148. package/src/core/ZoneRegistry.ts +44 -0
  149. package/src/core/systemPrompt.ts +2 -0
  150. package/src/core/types.ts +60 -0
  151. package/src/index.ts +31 -0
  152. package/src/services/AudioOutputService.ts +13 -0
  153. package/src/services/flags/FlagService.ts +137 -0
  154. package/src/services/telemetry/MobileAI.ts +66 -0
  155. package/src/services/telemetry/PiiScrubber.ts +17 -0
  156. package/src/services/telemetry/TelemetryService.ts +291 -0
  157. package/src/services/telemetry/TouchAutoCapture.ts +165 -0
  158. package/src/services/telemetry/device.ts +16 -0
  159. package/src/services/telemetry/index.ts +13 -0
  160. package/src/services/telemetry/types.ts +75 -0
  161. package/src/support/CSATSurvey.tsx +304 -0
  162. package/src/support/EscalationSocket.ts +113 -0
  163. package/src/support/SupportGreeting.tsx +161 -0
  164. package/src/support/escalateTool.ts +134 -0
  165. package/src/support/index.ts +27 -0
  166. package/src/support/supportPrompt.ts +55 -0
  167. package/src/support/types.ts +141 -0
  168. package/src/tools/guideTool.ts +67 -0
  169. package/src/tools/index.ts +3 -0
  170. package/src/tools/restoreTool.ts +33 -0
  171. package/src/tools/simplifyTool.ts +33 -0
  172. package/src/tools/types.ts +2 -0
  173. package/src/types/jsx.d.ts +20 -0
@@ -16,7 +16,7 @@ import { walkFiberTree } from "./FiberTreeWalker.js";
16
16
  import { dehydrateScreen } from "./ScreenDehydrator.js";
17
17
  import { buildSystemPrompt, buildKnowledgeOnlyPrompt } from "./systemPrompt.js";
18
18
  import { KnowledgeBaseService } from "../services/KnowledgeBaseService.js";
19
- import { createTapTool, createLongPressTool, createTypeTool, createScrollTool, createSliderTool, createPickerTool, createDatePickerTool, createKeyboardTool } from "../tools/index.js";
19
+ import { createTapTool, createLongPressTool, createTypeTool, createScrollTool, createSliderTool, createPickerTool, createDatePickerTool, createKeyboardTool, createGuideTool, createSimplifyTool, createRestoreTool } from "../tools/index.js";
20
20
  const DEFAULT_MAX_STEPS = 25;
21
21
 
22
22
  // ─── Agent Runtime ─────────────────────────────────────────────
@@ -29,6 +29,8 @@ export class AgentRuntime {
29
29
  isCancelRequested = false;
30
30
  lastAskUserQuestion = null;
31
31
  knowledgeService = null;
32
+ lastDehydratedRoot = null;
33
+
32
34
  // ─── Task-scoped error suppression ──────────────────────────
33
35
  // Installed once at execute() start, removed after grace period.
34
36
  // Catches ALL async errors (useEffect, native callbacks, PagerView)
@@ -83,11 +85,12 @@ export class AgentRuntime {
83
85
  getRouteNames: () => this.getRouteNames(),
84
86
  findScreenPath: name => this.findScreenPath(name),
85
87
  buildNestedParams: (path, params) => this.buildNestedParams(path, params),
86
- captureScreenshot: async () => (await this.captureScreenshot()) ?? null
88
+ captureScreenshot: async () => (await this.captureScreenshot()) ?? null,
89
+ getLastDehydratedRoot: () => this.lastDehydratedRoot
87
90
  };
88
91
 
89
92
  // ── Register modular tools (extracted to src/tools/) ──
90
- const modularTools = [createTapTool(toolContext), createLongPressTool(toolContext), createTypeTool(toolContext), createScrollTool(toolContext), createSliderTool(toolContext), createPickerTool(toolContext), createDatePickerTool(toolContext), createKeyboardTool()];
93
+ const modularTools = [createTapTool(toolContext), createLongPressTool(toolContext), createTypeTool(toolContext), createScrollTool(toolContext), createSliderTool(toolContext), createPickerTool(toolContext), createDatePickerTool(toolContext), createKeyboardTool(), createGuideTool(toolContext), createSimplifyTool(), createRestoreTool()];
91
94
  for (const tool of modularTools) {
92
95
  this.tools.set(tool.name, tool);
93
96
  }
@@ -709,6 +712,10 @@ ${screen.elementsText}
709
712
  async executeToolSafely(tool, args, toolName) {
710
713
  // Clear any previous suppressed error before this tool
711
714
  this.lastSuppressedError = null;
715
+
716
+ // Signal analytics that the AGENT is acting (not the user).
717
+ // This prevents AI-driven taps from being tracked as user_interaction events.
718
+ this.config.onToolExecute?.(true);
712
719
  try {
713
720
  // ── Argument Validation (Pattern from Detox/Appium: typeof checks before native dispatch) ──
714
721
  const validationError = this.validateToolArgs(args, toolName);
@@ -731,6 +738,9 @@ ${screen.elementsText}
731
738
  } catch (error) {
732
739
  logger.error('AgentRuntime', `Tool "${toolName}" threw: ${error.message}`);
733
740
  return `❌ Tool "${toolName}" failed: ${error.message}`;
741
+ } finally {
742
+ // Always restore the flag — even on error or validation rejection
743
+ this.config.onToolExecute?.(false);
734
744
  }
735
745
  }
736
746
 
@@ -1055,6 +1065,9 @@ ${screen.elementsText}
1055
1065
  const walkResult = walkFiberTree(this.rootRef, this.getWalkConfig());
1056
1066
  const screenName = this.getCurrentScreenName();
1057
1067
  const screen = dehydrateScreen(screenName, this.getRouteNames(), walkResult.elementsText, walkResult.interactives);
1068
+
1069
+ // Store root for tooling access (e.g., GuideTool measuring)
1070
+ this.lastDehydratedRoot = screen;
1058
1071
  logger.info('AgentRuntime', `Screen: ${screen.screenName}`);
1059
1072
  logger.debug('AgentRuntime', `Dehydrated:\n${screen.elementsText}`);
1060
1073
 
@@ -1 +1 @@
1
- {"version":3,"names":["logger","walkFiberTree","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","createTapTool","createLongPressTool","createTypeTool","createScrollTool","createSliderTool","createPickerTool","createDatePickerTool","createKeyboardTool","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","isCancelRequested","lastAskUserQuestion","knowledgeService","originalErrorHandler","lastSuppressedError","graceTimer","originalReportErrorsAsExceptions","undefined","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","toolContext","getRootRef","getWalkConfig","getCurrentScreenName","getNavRef","routerRef","router","getRouteNames","findScreenPath","buildNestedParams","path","params","captureScreenshot","modularTools","description","parameters","screen","type","required","execute","args","startsWith","push","Promise","resolve","setTimeout","error","message","isReady","JSON","parse","availableRoutes","join","stringify","matchedScreen","find","r","toLowerCase","errMsg","warn","screenPath","length","nestedParams","navigate","text","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","round","screenName","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","index","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","direction","value","date","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","interactives","availableScreensText","appMapText","map","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","executeToolSafely","_startErrorSuppression","clearTimeout","ErrorUtils","global","setGlobalHandler","getGlobalHandler","isFatal","consoleAny","reportErrorsAsExceptions","_stopErrorSuppression","gracePeriodMs","restore","validationError","validateToolArgs","suppressedError","numericArgs","val","isFinite","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","SUMMARIZE_THRESHOLD","KEEP_HEAD","KEEP_TAIL","shouldSummarize","stepIndex","event","j","h","actionName","succeeded","output","reflection","previousGoalEval","memory","plan","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","cancelResult","onBeforeStep","transformScreenContent","contextMessage","maxTokenBudget","budgetResult","toLocaleString","maxCostUSD","toFixed","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning","cancel"],"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,EAAEC,wBAAwB,QAAQ,mBAAgB;AAC5E,SAASC,oBAAoB,QAAQ,qCAAkC;AACvE,SACEC,aAAa,EACbC,mBAAmB,EACnBC,cAAc,EACdC,gBAAgB,EAChBC,gBAAgB,EAChBC,gBAAgB,EAChBC,oBAAoB,EACpBC,kBAAkB,QACb,mBAAU;AAYjB,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,iBAAiB,GAAG,KAAK;EACzBC,mBAAmB,GAAkB,IAAI;EACzCC,gBAAgB,GAAgC,IAAI;EAG5D;EACA;EACA;EACA;EACQC,oBAAoB,GAAuD,IAAI;EAC/EC,mBAAmB,GAAiB,IAAI;EACxCC,UAAU,GAAyC,IAAI;EACvDC,gCAAgC,GAAwBC,SAAS;EAEzEC,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;IACpBjC,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,uCAAuC,EAAE,CAAC,CAACH,MAAM,CAACI,SAAS,CAAC;;IAEzF;IACA,IAAIJ,MAAM,CAACK,aAAa,EAAE;MACxB,IAAI,CAACb,gBAAgB,GAAG,IAAIlB,oBAAoB,CAC9C0B,MAAM,CAACK,aAAa,EACpBL,MAAM,CAACM,kBACT,CAAC;IACH;;IAEA;IACA,IAAIN,MAAM,CAACO,eAAe,KAAK,KAAK,EAAE;MACpC,IAAI,CAACC,0BAA0B,CAAC,CAAC;IACnC,CAAC,MAAM;MACL,IAAI,CAACC,oBAAoB,CAAC,CAAC;IAC7B;;IAEA;IACA,IAAIT,MAAM,CAACU,WAAW,EAAE;MACtB,KAAK,MAAM,CAACC,IAAI,EAAEC,IAAI,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACd,MAAM,CAACU,WAAW,CAAC,EAAE;QAC7D,IAAIE,IAAI,KAAK,IAAI,EAAE;UACjB,IAAI,CAAC3B,KAAK,CAAC8B,MAAM,CAACJ,IAAI,CAAC;UACvB1C,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,iBAAiBL,IAAI,EAAE,CAAC;QACtD,CAAC,MAAM;UACL,IAAI,CAAC1B,KAAK,CAACgC,GAAG,CAACN,IAAI,EAAEC,IAAI,CAAC;UAC1B3C,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,kBAAkBL,IAAI,EAAE,CAAC;QACvD;MACF;IACF;EACF;;EAEA;;EAEQF,oBAAoBA,CAAA,EAAS;IACnC;IACA,MAAMS,WAAwB,GAAG;MAC/BC,UAAU,EAAEA,CAAA,KAAM,IAAI,CAAClB,OAAO;MAC9BmB,aAAa,EAAEA,CAAA,KAAM,IAAI,CAACA,aAAa,CAAC,CAAC;MACzCC,oBAAoB,EAAEA,CAAA,KAAM,IAAI,CAACA,oBAAoB,CAAC,CAAC;MACvDC,SAAS,EAAEA,CAAA,KAAM,IAAI,CAACpB,MAAM;MAC5BqB,SAAS,EAAE,IAAI,CAACvB,MAAM,CAACwB,MAAM;MAC7BC,aAAa,EAAEA,CAAA,KAAM,IAAI,CAACA,aAAa,CAAC,CAAC;MACzCC,cAAc,EAAGf,IAAY,IAAK,IAAI,CAACe,cAAc,CAACf,IAAI,CAAC;MAC3DgB,iBAAiB,EAAEA,CAACC,IAAc,EAAEC,MAAY,KAAK,IAAI,CAACF,iBAAiB,CAACC,IAAI,EAAEC,MAAM,CAAC;MACzFC,iBAAiB,EAAE,MAAAA,CAAA,KAAY,CAAC,MAAM,IAAI,CAACA,iBAAiB,CAAC,CAAC,KAAK;IACrE,CAAC;;IAED;IACA,MAAMC,YAAY,GAAG,CACnBxD,aAAa,CAAC2C,WAAW,CAAC,EAC1B1C,mBAAmB,CAAC0C,WAAW,CAAC,EAChCzC,cAAc,CAACyC,WAAW,CAAC,EAC3BxC,gBAAgB,CAACwC,WAAW,CAAC,EAC7BvC,gBAAgB,CAACuC,WAAW,CAAC,EAC7BtC,gBAAgB,CAACsC,WAAW,CAAC,EAC7BrC,oBAAoB,CAACqC,WAAW,CAAC,EACjCpC,kBAAkB,CAAC,CAAC,CACrB;IAED,KAAK,MAAM8B,IAAI,IAAImB,YAAY,EAAE;MAC/B,IAAI,CAAC9C,KAAK,CAACgC,GAAG,CAACL,IAAI,CAACD,IAAI,EAAEC,IAAI,CAAC;IACjC;;IAGA;IACA,IAAI,CAAC3B,KAAK,CAACgC,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBqB,WAAW,EAAE,sbAAsb;MACncC,UAAU,EAAE;QACVC,MAAM,EAAE;UAAEC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,sEAAsE;UAAEI,QAAQ,EAAE;QAAK,CAAC;QAC/HP,MAAM,EAAE;UAAEM,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,0DAA0D;UAAEI,QAAQ,EAAE;QAAM;MACrH,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB;QACA,IAAI,IAAI,CAACtC,MAAM,CAACwB,MAAM,EAAE;UACtB,IAAI;YACF,MAAMI,IAAI,GAAGU,IAAI,CAACJ,MAAM,CAACK,UAAU,CAAC,GAAG,CAAC,GAAGD,IAAI,CAACJ,MAAM,GAAG,IAAII,IAAI,CAACJ,MAAM,EAAE;YAC1E,IAAI,CAAClC,MAAM,CAACwB,MAAM,CAACgB,IAAI,CAACZ,IAAI,CAAC;YAC7B,MAAM,IAAIa,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;YACtD,OAAO,mBAAmBd,IAAI,GAAG;UACnC,CAAC,CAAC,OAAOgB,KAAU,EAAE;YACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,EAAE;UAC/C;QACF;;QAEA;QACA,IAAI,CAAC,IAAI,CAAC3C,MAAM,EAAE;UAChB,OAAO,iCAAiC;QAC1C;QACA,IAAI,CAAC,IAAI,CAACA,MAAM,CAAC4C,OAAO,CAAC,CAAC,EAAE;UAC1B,MAAM,IAAIL,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;UACvD,IAAI,CAAC,IAAI,CAACxC,MAAM,CAAC4C,OAAO,CAAC,CAAC,EAAE;YAC1B,OAAO,gCAAgC;UACzC;QACF;QACA,IAAI;UACF,MAAMjB,MAAM,GAAGS,IAAI,CAACT,MAAM,GAAI,OAAOS,IAAI,CAACT,MAAM,KAAK,QAAQ,GAAGkB,IAAI,CAACC,KAAK,CAACV,IAAI,CAACT,MAAM,CAAC,GAAGS,IAAI,CAACT,MAAM,GAAIhC,SAAS;UAClH;UACA,MAAMoD,eAAe,GAAG,IAAI,CAACxB,aAAa,CAAC,CAAC;UAC5CxD,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,2BAA2BsB,IAAI,CAACJ,MAAM,mBAAmBe,eAAe,CAACC,IAAI,CAAC,IAAI,CAAC,eAAeH,IAAI,CAACI,SAAS,CAACtB,MAAM,CAAC,EAAE,CAAC;UACvJ,MAAMuB,aAAa,GAAGH,eAAe,CAACI,IAAI,CACxCC,CAAC,IAAIA,CAAC,CAACC,WAAW,CAAC,CAAC,KAAKjB,IAAI,CAACJ,MAAM,CAACqB,WAAW,CAAC,CACnD,CAAC;;UAED;UACA,IAAI,CAACH,aAAa,EAAE;YAClB,MAAMI,MAAM,GAAG,MAAMlB,IAAI,CAACJ,MAAM,6EAA6Ee,eAAe,CAACC,IAAI,CAAC,IAAI,CAAC,6CAA6CZ,IAAI,CAACJ,MAAM,uIAAuI;YACtUjE,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,yBAAyBD,MAAM,EAAE,CAAC;YAC9D,OAAOA,MAAM;UACf;UACAvF,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,yBAAyBsB,IAAI,CAACJ,MAAM,QAAQkB,aAAa,GAAG,CAAC;;UAEzF;UACA,MAAMM,UAAU,GAAG,IAAI,CAAChC,cAAc,CAAC0B,aAAa,CAAC;UACrD,IAAIM,UAAU,CAACC,MAAM,GAAG,CAAC,EAAE;YACzB;YACA;YACA1F,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,sBAAsB0C,UAAU,CAACR,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAC3E,MAAMU,YAAY,GAAG,IAAI,CAACjC,iBAAiB,CAAC+B,UAAU,EAAE7B,MAAM,CAAC;YAC/D,IAAI,CAAC3B,MAAM,CAAC2D,QAAQ,CAACH,UAAU,CAAC,CAAC,CAAC,EAAEE,YAAY,CAAC;UACnD,CAAC,MAAM;YACL;YACA,IAAI,CAAC1D,MAAM,CAAC2D,QAAQ,CAACT,aAAa,EAAEvB,MAAM,CAAC;UAC7C;UACA,MAAM,IAAIY,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,GAAG,CAAC,CAAC;UACtD,OAAO,mBAAmBU,aAAa,IAAIvB,MAAM,GAAG,iBAAiBkB,IAAI,CAACI,SAAS,CAACtB,MAAM,CAAC,EAAE,GAAG,EAAE,EAAE;QACtG,CAAC,CAAC,OAAOe,KAAU,EAAE;UACnB,OAAO,uBAAuBA,KAAK,CAACC,OAAO,wBAAwB,IAAI,CAACpB,aAAa,CAAC,CAAC,CAACyB,IAAI,CAAC,IAAI,CAAC,EAAE;QACtG;MACF;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACjE,KAAK,CAACgC,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZqB,WAAW,EAAE,+CAA+C;MAC5DC,UAAU,EAAE;QACV6B,IAAI,EAAE;UAAE3B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,8BAA8B;UAAEI,QAAQ,EAAE;QAAK,CAAC;QACrF2B,OAAO,EAAE;UAAE5B,IAAI,EAAE,SAAS;UAAEH,WAAW,EAAE,6CAA6C;UAAEI,QAAQ,EAAE;QAAK;MACzG,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,OAAOA,IAAI,CAACwB,IAAI;MAClB;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC7E,KAAK,CAACgC,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZqB,WAAW,EAAE,wMAAwM;MACrNC,UAAU,EAAE;QACV+B,OAAO,EAAE;UAAE7B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,mCAAmC;UAAEI,QAAQ,EAAE;QAAK;MAC9F,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,MAAM0B,OAAO,GAAGC,IAAI,CAACC,GAAG,CAACC,MAAM,CAAC7B,IAAI,CAAC0B,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtD,MAAM,IAAIvB,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAEsB,OAAO,GAAG,IAAI,CAAC,CAAC;QACjE,OAAO,YAAYA,OAAO,oCAAoC;MAChE;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAAC/E,KAAK,CAACgC,GAAG,CAAC,UAAU,EAAE;MACzBN,IAAI,EAAE,UAAU;MAChBqB,WAAW,EAAE,4GAA4G;MACzHC,UAAU,EAAE;QACVmC,QAAQ,EAAE;UAAEjC,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,0BAA0B;UAAEI,QAAQ,EAAE;QAAK;MACtF,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,IAAI,IAAI,CAACtC,MAAM,CAACqE,SAAS,EAAE;UACzB;UACA,IAAI,CAACrE,MAAM,CAACsE,cAAc,GAAG,4BAA4B,CAAC;UAC1D,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACvE,MAAM,CAACqE,SAAS,CAAC/B,IAAI,CAAC8B,QAAQ,CAAC;UACzD,OAAO,kBAAkBG,MAAM,EAAE;QACnC;QACA;QACA,OAAO,KAAKjC,IAAI,CAAC8B,QAAQ,EAAE;MAC7B;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,CAACnF,KAAK,CAACgC,GAAG,CAAC,oBAAoB,EAAE;MACnCN,IAAI,EAAE,oBAAoB;MAC1BqB,WAAW,EAAE,4LAA4L;MACzMC,UAAU,EAAE,CAAC,CAAC;MACdI,OAAO,EAAE,MAAAA,CAAA,KAAY;QACnB,MAAMmC,UAAU,GAAG,MAAM,IAAI,CAAC1C,iBAAiB,CAAC,CAAC;QACjD,IAAI0C,UAAU,EAAE;UACd,OAAO,0BAA0BP,IAAI,CAACQ,KAAK,CAACD,UAAU,CAACb,MAAM,GAAG,IAAI,CAAC,oDAAoD;QAC3H;QACA,OAAO,2EAA2E;MACpF;IACF,CAAC,CAAC;;IAKF;IACA,IAAI,IAAI,CAACnE,gBAAgB,EAAE;MACzB,IAAI,CAACP,KAAK,CAACgC,GAAG,CAAC,iBAAiB,EAAE;QAChCN,IAAI,EAAE,iBAAiB;QACvBqB,WAAW,EACT,gEAAgE,GAC9D,qEAAqE,GACrE,2FAA2F;QAC/FC,UAAU,EAAE;UACVmC,QAAQ,EAAE;YACRjC,IAAI,EAAE,QAAQ;YACdH,WAAW,EAAE,qCAAqC;YAClDI,QAAQ,EAAE;UACZ;QACF,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,MAAMoC,UAAU,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAC;UAC9C,OAAO,IAAI,CAAC7B,gBAAgB,CAAEmF,QAAQ,CAACrC,IAAI,CAAC8B,QAAQ,EAAEM,UAAU,CAAC;QACnE;MACF,CAAC,CAAC;IACJ;EACF;;EAEA;AACF;AACA;AACA;EACUlE,0BAA0BA,CAAA,EAAS;IACzC;IACA,IAAI,CAACvB,KAAK,CAACgC,GAAG,CAAC,MAAM,EAAE;MACrBN,IAAI,EAAE,MAAM;MACZqB,WAAW,EAAE,+CAA+C;MAC5DC,UAAU,EAAE;QACV6B,IAAI,EAAE;UAAE3B,IAAI,EAAE,QAAQ;UAAEH,WAAW,EAAE,8BAA8B;UAAEI,QAAQ,EAAE;QAAK,CAAC;QACrF2B,OAAO,EAAE;UAAE5B,IAAI,EAAE,SAAS;UAAEH,WAAW,EAAE,6CAA6C;UAAEI,QAAQ,EAAE;QAAK;MACzG,CAAC;MACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;QACvB,OAAOA,IAAI,CAACwB,IAAI;MAClB;IACF,CAAC,CAAC;;IAEF;IACA,IAAI,IAAI,CAACtE,gBAAgB,EAAE;MACzB,IAAI,CAACP,KAAK,CAACgC,GAAG,CAAC,iBAAiB,EAAE;QAChCN,IAAI,EAAE,iBAAiB;QACvBqB,WAAW,EACT,gEAAgE,GAC9D,qEAAqE,GACrE,2FAA2F;QAC/FC,UAAU,EAAE;UACVmC,QAAQ,EAAE;YACRjC,IAAI,EAAE,QAAQ;YACdH,WAAW,EAAE,qCAAqC;YAClDI,QAAQ,EAAE;UACZ;QACF,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,MAAMoC,UAAU,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAC;UAC9C,OAAO,IAAI,CAAC7B,gBAAgB,CAAEmF,QAAQ,CAACrC,IAAI,CAAC8B,QAAQ,EAAEM,UAAU,CAAC;QACnE;MACF,CAAC,CAAC;IACJ;EACF;;EAEA;;EAEAE,cAAcA,CAACC,MAAwB,EAAQ;IAC7C,IAAI,CAAC1F,OAAO,CAAC8B,GAAG,CAAC4D,MAAM,CAAClE,IAAI,EAAEkE,MAAM,CAAC;IACrC5G,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,sBAAsB6D,MAAM,CAAClE,IAAI,EAAE,CAAC;EAClE;EAEAmE,gBAAgBA,CAACnE,IAAY,EAAQ;IACnC,IAAI,CAACxB,OAAO,CAAC4B,MAAM,CAACJ,IAAI,CAAC;EAC3B;;EAEA;;EAEA;AACF;AACA;AACA;EACUc,aAAaA,CAAA,EAAa;IAChC,IAAI;MACF,IAAI,CAAC,IAAI,CAACvB,MAAM,EAAE4C,OAAO,GAAG,CAAC,EAAE,OAAO,EAAE;MACxC,MAAMiC,KAAK,GAAG,IAAI,CAAC7E,MAAM,EAAE8E,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC9E,MAAM,EAAE+E,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAE,OAAO,EAAE;MACrB,MAAMG,KAAK,GAAG,IAAI,CAACC,iBAAiB,CAACJ,KAAK,CAAC;MAC3C9G,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,mBAAmB,EAAE+E,KAAK,CAAChC,IAAI,CAAC,IAAI,CAAC,CAAC;MACnE,OAAOgC,KAAK;IACd,CAAC,CAAC,MAAM;MACN,OAAO,EAAE;IACX;EACF;EAEQC,iBAAiBA,CAACJ,KAAU,EAAY;IAC9C,MAAMG,KAAe,GAAG,EAAE;IAC1B;IACA,IAAIH,KAAK,EAAEK,UAAU,EAAE;MACrBF,KAAK,CAAC1C,IAAI,CAAC,GAAGuC,KAAK,CAACK,UAAU,CAAC;IACjC;IACA,IAAIL,KAAK,EAAEM,MAAM,EAAE;MACjB,KAAK,MAAMC,KAAK,IAAIP,KAAK,CAACM,MAAM,EAAE;QAChCH,KAAK,CAAC1C,IAAI,CAAC8C,KAAK,CAAC3E,IAAI,CAAC;QACtB;QACA,IAAI2E,KAAK,CAACP,KAAK,EAAE;UACfG,KAAK,CAAC1C,IAAI,CAAC,GAAG,IAAI,CAAC2C,iBAAiB,CAACG,KAAK,CAACP,KAAK,CAAC,CAAC;QACpD;MACF;IACF;IACA,OAAO,CAAC,GAAG,IAAIQ,GAAG,CAACL,KAAK,CAAC,CAAC;EAC5B;;EAEA;AACF;AACA;AACA;AACA;EACUxD,cAAcA,CAAC8D,YAAoB,EAAY;IACrD,IAAI;MACF,MAAMT,KAAK,GAAG,IAAI,CAAC7E,MAAM,EAAE8E,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC9E,MAAM,EAAE+E,QAAQ,GAAG,CAAC;MACxE,IAAI,CAACF,KAAK,EAAEM,MAAM,EAAE,OAAO,CAACG,YAAY,CAAC;;MAEzC;MACA,IAAIT,KAAK,CAACM,MAAM,CAACI,IAAI,CAAEnC,CAAM,IAAKA,CAAC,CAAC3C,IAAI,KAAK6E,YAAY,CAAC,EAAE;QAC1D,OAAO,CAACA,YAAY,CAAC;MACvB;;MAEA;MACA,KAAK,MAAMF,KAAK,IAAIP,KAAK,CAACM,MAAM,EAAE;QAChC,MAAMK,WAAW,GAAGJ,KAAK,CAACP,KAAK,GAAG,IAAI,CAACI,iBAAiB,CAACG,KAAK,CAACP,KAAK,CAAC,GAAG,EAAE;QAC1E,IAAIW,WAAW,CAACC,QAAQ,CAACH,YAAY,CAAC,EAAE;UACtC,OAAO,CAACF,KAAK,CAAC3E,IAAI,EAAE6E,YAAY,CAAC;QACnC;MACF;MAEA,OAAO,CAACA,YAAY,CAAC,CAAC,CAAC;IACzB,CAAC,CAAC,MAAM;MACN,OAAO,CAACA,YAAY,CAAC;IACvB;EACF;;EAGA;AACF;AACA;AACA;AACA;EACU7D,iBAAiBA,CAACC,IAAc,EAAEgE,UAAgB,EAAO;IAC/D;IACA,IAAIC,MAAM,GAAGD,UAAU;IACvB,KAAK,IAAIE,CAAC,GAAGlE,IAAI,CAAC+B,MAAM,GAAG,CAAC,EAAEmC,CAAC,IAAI,CAAC,EAAEA,CAAC,EAAE,EAAE;MACzCD,MAAM,GAAG;QAAE3D,MAAM,EAAEN,IAAI,CAACkE,CAAC,CAAC;QAAE,IAAID,MAAM,KAAKhG,SAAS,GAAG;UAAEgC,MAAM,EAAEgE;QAAO,CAAC,GAAG,CAAC,CAAC;MAAE,CAAC;IACnF;IACA,OAAOA,MAAM;EACf;;EAEA;AACF;AACA;AACA;EACUxE,oBAAoBA,CAAA,EAAW;IACrC;IACA,IAAI,IAAI,CAACrB,MAAM,CAAC+F,QAAQ,EAAE;MACxB,MAAMC,QAAQ,GAAG,IAAI,CAAChG,MAAM,CAAC+F,QAAQ,CAACE,KAAK,CAAC,GAAG,CAAC,CAACC,MAAM,CAACC,OAAO,CAAC;MAChE,OAAOH,QAAQ,CAACA,QAAQ,CAACrC,MAAM,GAAG,CAAC,CAAC,IAAI,SAAS;IACnD;IAEA,IAAI;MACF,IAAI,CAAC,IAAI,CAACzD,MAAM,EAAE4C,OAAO,GAAG,CAAC,EAAE,OAAO,SAAS;MAC/C,MAAMiC,KAAK,GAAG,IAAI,CAAC7E,MAAM,EAAE8E,YAAY,GAAG,CAAC,IAAI,IAAI,CAAC9E,MAAM,EAAE+E,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,EAAEM,MAAM,IAAIN,KAAK,CAACsB,KAAK,IAAI,IAAI,EAAE,OAAO,SAAS;IAC3D,MAAMf,KAAK,GAAGP,KAAK,CAACM,MAAM,CAACN,KAAK,CAACsB,KAAK,CAAC;IACvC,IAAI,CAACf,KAAK,EAAE,OAAO,SAAS;IAC5B;IACA,IAAIA,KAAK,CAACP,KAAK,EAAE;MACf,OAAO,IAAI,CAACqB,oBAAoB,CAACd,KAAK,CAACP,KAAK,CAAC;IAC/C;IACA,OAAOO,KAAK,CAAC3E,IAAI,IAAI,SAAS;EAChC;;EAEA;;EAEO2F,oBAAoBA,CAACC,OAA4B,EAAE;IACxD,IAAI,CAACC,iBAAiB,GAAGD,OAAO;EAClC;EAEQE,WAAWA,CAAA,EAAY;IAC7B,IAAI,IAAI,CAACD,iBAAiB,KAAK3G,SAAS,EAAE,OAAO,IAAI,CAAC2G,iBAAiB;IACvE,OAAO,IAAI,CAACxG,MAAM,CAACO,eAAe,KAAK,KAAK,CAAC,CAAC;EAChD;;EAEA;EACQmG,kBAAkBA,CAACC,QAAgB,EAAErE,IAAyB,EAAU;IAC9E,QAAQqE,QAAQ;MACd,KAAK,KAAK;QACR,OAAO,qBAAqB;MAC9B,KAAK,MAAM;QACT,OAAO,wBAAwB;MACjC,KAAK,UAAU;QACb,OAAO,iBAAiBrE,IAAI,CAACJ,MAAM,IAAI,gBAAgB,KAAK;MAC9D,KAAK,MAAM;QACT,OAAO,gBAAgB;MACzB,KAAK,UAAU;QACb,OAAO,0BAA0B;MACnC,KAAK,iBAAiB;QACpB,OAAO,6BAA6B;MACtC,KAAK,QAAQ;QACX,OAAO,aAAaI,IAAI,CAACsE,SAAS,IAAI,MAAM,KAAK;MACnD,KAAK,MAAM;QACT,OAAO,mCAAmC;MAC5C,KAAK,YAAY;QACf,OAAO,6BAA6B;MACtC,KAAK,eAAe;QAClB,OAAO,uBAAuB3C,IAAI,CAACQ,KAAK,CAAC,CAACnC,IAAI,CAACuE,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,MAAM;MACzE,KAAK,eAAe;QAClB,OAAO,cAAcvE,IAAI,CAACuE,KAAK,IAAI,EAAE,sBAAsB;MAC7D,KAAK,UAAU;QACb,OAAO,mBAAmBvE,IAAI,CAACwE,IAAI,IAAI,EAAE,KAAK;MAChD,KAAK,kBAAkB;QACrB,OAAO,wBAAwB;MACjC;QACE,OAAO,WAAWH,QAAQ,KAAK;IACnC;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAc7E,iBAAiBA,CAAA,EAAgC;IAC7D,IAAI;MACF;MACA;MACA;MACA,MAAMiF,UAAU,GAAG,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC7D,IAAI,CAAC,GAAG,CAAC;MAC1D,MAAM8D,QAAQ,GAAGC,OAAO,CAACF,UAAU,CAAC;MACpC,MAAMG,UAAU,GAAGF,QAAQ,CAACE,UAAU,IAAIF,QAAQ,CAACG,OAAO,EAAED,UAAU;MACtE,IAAI,CAACA,UAAU,IAAI,CAAC,IAAI,CAACjH,OAAO,EAAE,OAAOJ,SAAS;MAElD,MAAMuH,GAAG,GAAG,MAAMF,UAAU,CAAC,IAAI,CAACjH,OAAO,EAAE;QACzCoH,MAAM,EAAE,KAAK;QACbC,OAAO,EAAE,GAAG;QACZC,KAAK,EAAE,GAAG;QACV1B,MAAM,EAAE;MACV,CAAC,CAAC;MAEF5H,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,wBAAwBiD,IAAI,CAACQ,KAAK,CAAC,CAAC2C,GAAG,EAAEzD,MAAM,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC;MACtG,OAAOyD,GAAG,IAAIvH,SAAS;IACzB,CAAC,CAAC,OAAO+C,KAAU,EAAE;MACnB,IAAIA,KAAK,CAACC,OAAO,EAAE8C,QAAQ,CAAC,oBAAoB,CAAC,IAAI/C,KAAK,CAAC4E,IAAI,KAAK,kBAAkB,IAAI5E,KAAK,CAACC,OAAO,EAAE8C,QAAQ,CAAC,gBAAgB,CAAC,EAAE;QACnI1H,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,mGAAmG,CAAC;MAClI,CAAC,MAAM;QACLxF,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,uBAAuByC,KAAK,CAACC,OAAO,EAAE,CAAC;MACtE;MACA,OAAOhD,SAAS;IAClB;EACF;;EAEA;;EAEA;AACF;AACA;AACA;AACA;EACS4H,gBAAgBA,CAAA,EAAW;IAChC,IAAI;MACFxJ,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,yBAAyB,CAAC;MACvDlC,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,0BAA0B,EAAE,CAAC,CAAC,IAAI,CAACH,MAAM,CAACI,SAAS,CAAC;MACjF,IAAI,IAAI,CAACJ,MAAM,CAACI,SAAS,EAAE;QACzBnC,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,0BAA0B,EAAEU,MAAM,CAAC6G,IAAI,CAAC,IAAI,CAAC1H,MAAM,CAACI,SAAS,CAACuH,OAAO,CAAC,CAAChE,MAAM,CAAC;QAC3G1F,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,yBAAyB,EAAE,IAAI,CAACH,MAAM,CAACI,SAAS,CAACwH,MAAM,EAAEjE,MAAM,CAAC;MAC/F;MAEA,MAAMkE,UAAU,GAAG3J,aAAa,CAAC,IAAI,CAAC+B,OAAO,EAAE,IAAI,CAACmB,aAAa,CAAC,CAAC,CAAC;MACpE,MAAMsD,UAAU,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAC;MAC9CpD,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,iBAAiB,EAAEuE,UAAU,CAAC;MAE3D,MAAMxC,MAAM,GAAG/D,eAAe,CAC5BuG,UAAU,EACV,IAAI,CAACjD,aAAa,CAAC,CAAC,EACpBoG,UAAU,CAACC,YAAY,EACvBD,UAAU,CAACE,YACb,CAAC;MAED,MAAM3C,UAAU,GAAG,IAAI,CAAC3D,aAAa,CAAC,CAAC;MACvCxD,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,aAAa,EAAEiF,UAAU,CAAC;MACvD,IAAI4C,oBAA4B;MAChC,IAAIC,UAAU,GAAG,EAAE;MAEnB,IAAI,IAAI,CAACjI,MAAM,CAACI,SAAS,EAAE;QACzB,MAAM8H,GAAG,GAAG,IAAI,CAAClI,MAAM,CAACI,SAAS;QACjCnC,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,sCAAsC,CAAC;QAEpE,MAAMgI,WAAW,GAAG/C,UAAU,CAAC8C,GAAG,CAACvH,IAAI,IAAI;UACzC,MAAMyH,KAAK,GAAGF,GAAG,CAACP,OAAO,CAAChH,IAAI,CAAC;UAC/B,IAAIyH,KAAK,EAAE;YACT,MAAMC,KAAK,GAAGD,KAAK,CAACC,KAAK,GAAG,KAAKD,KAAK,CAACC,KAAK,GAAG,GAAG,EAAE;YACpD,MAAMC,IAAI,GAAG,KAAK3H,IAAI,GAAG0H,KAAK,KAAKD,KAAK,CAACpG,WAAW,EAAE;YACtD/D,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,UAAU,EAAEmI,IAAI,CAAC;YAC9C,OAAOA,IAAI;UACb;UACArK,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,qBAAqB,EAAEQ,IAAI,CAAC;UACzD,OAAO,KAAKA,IAAI,EAAE;QACpB,CAAC,CAAC;QACFqH,oBAAoB,GAAG,uBAAuBG,WAAW,CAACjF,IAAI,CAAC,IAAI,CAAC,EAAE;QAEtE,IAAIgF,GAAG,CAACN,MAAM,IAAIM,GAAG,CAACN,MAAM,CAACjE,MAAM,GAAG,CAAC,EAAE;UACvC,MAAM4E,UAAU,GAAGL,GAAG,CAACN,MAAM,CAACM,GAAG,CAACM,KAAK,IAAI,KAAKA,KAAK,CAACtF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;UACpE+E,UAAU,GAAG,yBAAyBM,UAAU,CAACrF,IAAI,CAAC,IAAI,CAAC,EAAE;UAC7DjF,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,SAAS,EAAEoI,UAAU,CAAC5E,MAAM,CAAC;QAC5D;QAEA,IAAI,CAAC8E,cAAc,CAACrD,UAAU,EAAE8C,GAAG,CAAC;MACtC,CAAC,MAAM;QACLjK,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,iCAAiC,CAAC;QAC/D6H,oBAAoB,GAAG,sBAAsB5C,UAAU,CAAClC,IAAI,CAAC,IAAI,CAAC,EAAE;MACtE;MAEA,MAAMwF,OAAO,GAAG;AACtB,kBAAkBhE,UAAU;AAC5B,EAAEsD,oBAAoB,GAAGC,UAAU;AACnC;AACA,EAAE/F,MAAM,CAAC4F,YAAY;AACrB,iBAAiB;MACX7J,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,eAAe,EAAEuI,OAAO,CAACC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;MACxE,OAAOD,OAAO;IAChB,CAAC,CAAC,OAAO9F,KAAU,EAAE;MACnB3E,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,yBAAyB,EAAEyC,KAAK,CAACC,OAAO,CAAC;MACtE5E,MAAM,CAAC2E,KAAK,CAAC,cAAc,EAAE,4BAA4BA,KAAK,CAACC,OAAO,EAAE,CAAC;MACzE,OAAO,qDAAqD;IAC9D;EACF;EACA;;EAEQ+F,cAAc,GAAG,KAAK;EAEtBH,cAAcA,CAACrD,UAAoB,EAAE8C,GAAqC,EAAE;IAClF,IAAI,IAAI,CAACU,cAAc,EAAE,OAAO,CAAC;;IAEjC,MAAMC,UAAU,GAAG,IAAItD,GAAG,CAAC1E,MAAM,CAAC6G,IAAI,CAACQ,GAAG,CAACP,OAAO,CAAC,CAAC;IACpD,MAAMmB,OAAO,GAAG1D,UAAU,CAACc,MAAM,CAAC5C,CAAC,IAAI,CAACuF,UAAU,CAACE,GAAG,CAACzF,CAAC,CAAC,CAAC;IAE1D,IAAIwF,OAAO,CAACnF,MAAM,GAAG,CAAC,EAAE;MACtB,IAAI,CAACiF,cAAc,GAAG,IAAI;MAC1BI,OAAO,CAACvF,IAAI,CACV,qCAAqCqF,OAAO,CAAC5F,IAAI,CAAC,MAAM,CAAC,KAAK,GAC9D,yDACF,CAAC;IACH;EACF;;EAEA;;EAEQ+F,qBAAqBA,CAAA,EAAqB;IAChD,MAAMC,QAAQ,GAAG,CAAC,GAAG,IAAI,CAACjK,KAAK,CAACkK,MAAM,CAAC,CAAC,CAAC;;IAEzC;IACA,KAAK,MAAMtE,MAAM,IAAI,IAAI,CAAC1F,OAAO,CAACgK,MAAM,CAAC,CAAC,EAAE;MAC1CD,QAAQ,CAAC1G,IAAI,CAAC;QACZ7B,IAAI,EAAEkE,MAAM,CAAClE,IAAI;QACjBqB,WAAW,EAAE6C,MAAM,CAAC7C,WAAW;QAC/BC,UAAU,EAAEpB,MAAM,CAACuI,WAAW,CAC5BvI,MAAM,CAACC,OAAO,CAAC+D,MAAM,CAAC5C,UAAU,CAAC,CAACiG,GAAG,CAAC,CAAC,CAACmB,GAAG,EAAEC,OAAO,CAAC,KAAK,CACxDD,GAAG,EACH;UAAElH,IAAI,EAAEmH,OAAc;UAAEtH,WAAW,EAAEqH,GAAG;UAAEjH,QAAQ,EAAE;QAAK,CAAC,CAC3D,CACH,CAAC;QACDC,OAAO,EAAE,MAAOC,IAAI,IAAK;UACvB,IAAI;YACF,MAAMuD,MAAM,GAAG,MAAMhB,MAAM,CAAC0E,OAAO,CAACjH,IAAI,CAAC;YACzCrE,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,WAAW6D,MAAM,CAAClE,IAAI,WAAW,EAAEoC,IAAI,CAACI,SAAS,CAAC0C,MAAM,CAAC,CAAC;YACtF,OAAO,OAAOA,MAAM,KAAK,QAAQ,GAAGA,MAAM,GAAG9C,IAAI,CAACI,SAAS,CAAC0C,MAAM,CAAC;UACrE,CAAC,CAAC,OAAOjD,KAAU,EAAE;YACnB,OAAO,aAAaiC,MAAM,CAAClE,IAAI,aAAaiC,KAAK,CAACC,OAAO,EAAE;UAC7D;QACF;MACF,CAAC,CAAC;IACJ;IAEA,OAAOqG,QAAQ;EACjB;;EAEA;EACOM,QAAQA,CAAA,EAAqB;IAClC,OAAO,IAAI,CAACP,qBAAqB,CAAC,CAAC;EACrC;;EAEA;EACA,MAAaQ,WAAWA,CAAC9I,IAAY,EAAE2B,IAAyB,EAAmB;IACjF,MAAM1B,IAAI,GAAG,IAAI,CAAC3B,KAAK,CAACyK,GAAG,CAAC/I,IAAI,CAAC,IAC/B,IAAI,CAACsI,qBAAqB,CAAC,CAAC,CAAC5F,IAAI,CAACsG,CAAC,IAAIA,CAAC,CAAChJ,IAAI,KAAKA,IAAI,CAAC;IACzD,IAAI,CAACC,IAAI,EAAE;MACT,OAAO,mBAAmBD,IAAI,EAAE;IAClC;IACA,OAAO,IAAI,CAACiJ,iBAAiB,CAAChJ,IAAI,EAAE0B,IAAI,EAAE3B,IAAI,CAAC;EACjD;EACA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;EACUkJ,sBAAsBA,CAAA,EAAS;IACrC;IACA,IAAI,IAAI,CAAClK,UAAU,EAAE;MACnBmK,YAAY,CAAC,IAAI,CAACnK,UAAU,CAAC;MAC7B,IAAI,CAACA,UAAU,GAAG,IAAI;IACxB;;IAEA;IACA,MAAMoK,UAAU,GAAIC,MAAM,CAASD,UAAU;IAC7C,IAAIA,UAAU,EAAEE,gBAAgB,EAAE;MAChC,IAAI,CAACxK,oBAAoB,GAAGsK,UAAU,CAACG,gBAAgB,GAAG,CAAC,IAAI,IAAI;MACnE,IAAI,CAACxK,mBAAmB,GAAG,IAAI;MAC/BqK,UAAU,CAACE,gBAAgB,CAAC,CAACrH,KAAY,EAAEuH,OAAiB,KAAK;QAC/D,IAAI,CAACzK,mBAAmB,GAAGkD,KAAK;QAChC3E,MAAM,CAACwF,IAAI,CACT,cAAc,EACd,kBAAkB0G,OAAO,GAAG,OAAO,GAAG,WAAW,6BAA6BvH,KAAK,CAACC,OAAO,EAC7F,CAAC;QACD;MACF,CAAC,CAAC;IACJ;;IAEA;IACA;IACA;IACA,MAAMuH,UAAU,GAAGpB,OAAc;IACjC,IAAIoB,UAAU,CAACC,wBAAwB,KAAKxK,SAAS,EAAE;MACrD,IAAI,CAACD,gCAAgC,GAAGwK,UAAU,CAACC,wBAAwB;MAC3ED,UAAU,CAACC,wBAAwB,GAAG,KAAK;IAC7C;EACF;;EAEA;AACF;AACA;AACA;AACA;EACUC,qBAAqBA,CAACC,aAAqB,GAAG,CAAC,EAAQ;IAC7D,MAAMC,OAAO,GAAGA,CAAA,KAAM;MACpB;MACA,MAAMT,UAAU,GAAIC,MAAM,CAASD,UAAU;MAC7C,IAAIA,UAAU,EAAEE,gBAAgB,IAAI,IAAI,CAACxK,oBAAoB,EAAE;QAC7DsK,UAAU,CAACE,gBAAgB,CAAC,IAAI,CAACxK,oBAAoB,CAAC;QACtD,IAAI,CAACA,oBAAoB,GAAG,IAAI;MAClC;MACA,IAAI,CAACC,mBAAmB,GAAG,IAAI;;MAE/B;MACA,MAAM0K,UAAU,GAAGpB,OAAc;MACjC,IAAI,IAAI,CAACpJ,gCAAgC,KAAKC,SAAS,EAAE;QACvDuK,UAAU,CAACC,wBAAwB,GAAG,IAAI,CAACzK,gCAAgC;QAC3E,IAAI,CAACA,gCAAgC,GAAGC,SAAS;MACnD;MAEA,IAAI,CAACF,UAAU,GAAG,IAAI;IACxB,CAAC;IAED,IAAI4K,aAAa,GAAG,CAAC,EAAE;MACrB,IAAI,CAAC5K,UAAU,GAAGgD,UAAU,CAAC6H,OAAO,EAAED,aAAa,CAAC;IACtD,CAAC,MAAM;MACLC,OAAO,CAAC,CAAC;IACX;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,MAAcZ,iBAAiBA,CAC7BhJ,IAAiD,EACjD0B,IAAS,EACTqE,QAAgB,EACC;IACjB;IACA,IAAI,CAACjH,mBAAmB,GAAG,IAAI;IAE/B,IAAI;MACF;MACA,MAAM+K,eAAe,GAAG,IAAI,CAACC,gBAAgB,CAACpI,IAAI,EAAEqE,QAAQ,CAAC;MAC7D,IAAI8D,eAAe,EAAE;QACnBxM,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,gCAAgCkD,QAAQ,MAAM8D,eAAe,EAAE,CAAC;QAC5F,OAAOA,eAAe;MACxB;MAEA,MAAM5E,MAAM,GAAG,MAAMjF,IAAI,CAACyB,OAAO,CAACC,IAAI,CAAC;;MAEvC;MACA;MACA,MAAM,IAAIG,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE,IAAI,CAAC,CAAC;MAEvD,MAAMiI,eAAe,GAAG,IAAI,CAACjL,mBAAmC;MAChE,IAAIiL,eAAe,EAAE;QACnB1M,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,aAAakD,QAAQ,sCAAsCgE,eAAe,CAAC9H,OAAO,EAAE,CAAC;QACjH,IAAI,CAACnD,mBAAmB,GAAG,IAAI;QAC/B,OAAO,GAAGmG,MAAM,8CAA8C8E,eAAe,CAAC9H,OAAO,GAAG;MAC1F;MACA,OAAOgD,MAAM;IACf,CAAC,CAAC,OAAOjD,KAAU,EAAE;MACnB3E,MAAM,CAAC2E,KAAK,CAAC,cAAc,EAAE,SAAS+D,QAAQ,YAAY/D,KAAK,CAACC,OAAO,EAAE,CAAC;MAC1E,OAAO,WAAW8D,QAAQ,aAAa/D,KAAK,CAACC,OAAO,EAAE;IACxD;EACF;;EAEA;AACF;AACA;AACA;AACA;AACA;EACU6H,gBAAgBA,CAACpI,IAAS,EAAEqE,QAAgB,EAAiB;IACnE,IAAI,CAACrE,IAAI,IAAI,OAAOA,IAAI,KAAK,QAAQ,EAAE,OAAO,IAAI;;IAElD;IACA,KAAK,MAAM,CAAC+G,GAAG,EAAExC,KAAK,CAAC,IAAIhG,MAAM,CAACC,OAAO,CAACwB,IAAI,CAAC,EAAE;MAC/C,IAAIuE,KAAK,KAAKhH,SAAS,EAAE;QACvB,OAAO,eAAewJ,GAAG,4BAA4B1C,QAAQ,2BAA2B;MAC1F;IACF;;IAEA;IACA,MAAMiE,WAAW,GAAG,CAAC,gBAAgB,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC;IACnE,KAAK,MAAMvB,GAAG,IAAIuB,WAAW,EAAE;MAC7B,IAAIvB,GAAG,IAAI/G,IAAI,IAAIA,IAAI,CAAC+G,GAAG,CAAC,KAAK,IAAI,IAAI/G,IAAI,CAAC+G,GAAG,CAAC,KAAKxJ,SAAS,EAAE;QAChE,MAAMgL,GAAG,GAAGvI,IAAI,CAAC+G,GAAG,CAAC;QACrB,IAAI,OAAOwB,GAAG,KAAK,QAAQ,IAAI,CAAC1G,MAAM,CAAC2G,QAAQ,CAACD,GAAG,CAAC,EAAE;UACpD,OAAO,eAAexB,GAAG,uCAAuC1C,QAAQ,UAAU,OAAOkE,GAAG,KAAKA,GAAG,EAAE;QACxG;MACF;IACF;IAEA,OAAO,IAAI;EACb;;EAEA;;EAEQzJ,aAAaA,CAAA,EAAe;IAClC,OAAO;MACL2J,oBAAoB,EAAE,IAAI,CAAC/K,MAAM,CAAC+K,oBAAoB;MACtDC,oBAAoB,EAAE,IAAI,CAAChL,MAAM,CAACgL,oBAAoB;MACtDtG,UAAU,EAAE,IAAI,CAACrD,oBAAoB,CAAC;IACxC,CAAC;EACH;;EAEA;;EAEQ4J,eAAeA,CAACvG,UAAkB,EAAU;IAClD,MAAM;MAAEwG;IAAa,CAAC,GAAG,IAAI,CAAClL,MAAM;IACpC,IAAI,CAACkL,YAAY,EAAE,OAAO,EAAE;IAE5B,IAAIrF,MAAM,GAAG,EAAE;IACf,IAAIqF,YAAY,CAACC,MAAM,EAAEC,IAAI,CAAC,CAAC,EAAE;MAC/BvF,MAAM,IAAI,0BAA0BqF,YAAY,CAACC,MAAM,CAACC,IAAI,CAAC,CAAC,4BAA4B;IAC5F;IAEA,IAAIF,YAAY,CAACG,qBAAqB,EAAE;MACtC,IAAI;QACF,MAAMC,kBAAkB,GAAGJ,YAAY,CAACG,qBAAqB,CAAC3G,UAAU,CAAC,EAAE0G,IAAI,CAAC,CAAC;QACjF,IAAIE,kBAAkB,EAAE;UACtBzF,MAAM,IAAI,0BAA0ByF,kBAAkB,4BAA4B;QACpF;MACF,CAAC,CAAC,OAAO1I,KAAK,EAAE;QACd3E,MAAM,CAAC2E,KAAK,CAAC,cAAc,EAAE,oCAAoC,EAAEA,KAAK,CAAC;MAC3E;IACF;IAEA,OAAOiD,MAAM,GAAG,mBAAmBA,MAAM,qBAAqB,GAAG,EAAE;EACrE;;EAEA;;EAEQ0F,YAAY,GAAa,EAAE;EAC3BC,cAAc,GAAW,EAAE;EAE3BC,kBAAkBA,CAACC,IAAY,EAAEC,QAAgB,EAAEjH,UAAkB,EAAQ;IACnF;IACA,IAAI,IAAI,CAAC8G,cAAc,IAAI9G,UAAU,KAAK,IAAI,CAAC8G,cAAc,EAAE;MAC7D,IAAI,CAACD,YAAY,CAAC/I,IAAI,CAAC,yBAAyBkC,UAAU,EAAE,CAAC;IAC/D;IACA,IAAI,CAAC8G,cAAc,GAAG9G,UAAU;;IAEhC;IACA,MAAMkH,SAAS,GAAGD,QAAQ,GAAGD,IAAI;IACjC,IAAIE,SAAS,KAAK,CAAC,EAAE;MACnB,IAAI,CAACL,YAAY,CAAC/I,IAAI,CACpB,WAAWoJ,SAAS,8EACtB,CAAC;IACH,CAAC,MAAM,IAAIA,SAAS,KAAK,CAAC,EAAE;MAC1B,IAAI,CAACL,YAAY,CAAC/I,IAAI,CACpB,qBAAqBoJ,SAAS,iEAChC,CAAC;IACH;EACF;;EAEA;;EAEQC,kBAAkBA,CACxBH,IAAY,EACZC,QAAgB,EAChBG,iBAAyB,EACzBpH,UAAkB,EAClBqH,aAAqB,EACrBC,WAAiD,EACzC;IACR,IAAIC,MAAM,GAAG,EAAE;;IAEf;IACAA,MAAM,IAAI,IAAI,CAAChB,eAAe,CAACvG,UAAU,CAAC;;IAE1C;IACAuH,MAAM,IAAI,iBAAiB;IAC3BA,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,GAAGH,iBAAiB,IAAI;IAClCG,MAAM,IAAI,mBAAmB;IAE7B,IAAID,WAAW,IAAIA,WAAW,CAACrI,MAAM,GAAG,CAAC,EAAE;MACzCsI,MAAM,IAAI,kBAAkB;MAC5B;MACA,MAAMC,aAAa,GAAGF,WAAW,CAACG,KAAK,CAAC,CAAC,EAAE,CAAC;MAC5C,KAAK,MAAMC,GAAG,IAAIF,aAAa,EAAE;QAC/BD,MAAM,IAAI,IAAIG,GAAG,CAACC,IAAI,MAAMD,GAAG,CAACE,OAAO,IAAI;MAC7C;MACAL,MAAM,IAAI,mBAAmB;IAC/B;IAEAA,MAAM,IAAI,eAAe;IACzBA,MAAM,IAAI,QAAQP,IAAI,GAAG,CAAC,OAAOC,QAAQ,uBAAuB;IAChEM,MAAM,IAAI,gBAAgB;IAC1BA,MAAM,IAAI,oBAAoB;;IAE9B;IACAA,MAAM,IAAI,mBAAmB;;IAE7B;IACA;IACA;IACA,MAAMM,mBAAmB,GAAG,CAAC;IAC7B,MAAMC,SAAS,GAAG,CAAC;IACnB,MAAMC,SAAS,GAAG,CAAC;IACnB,MAAMC,eAAe,GAAG,IAAI,CAACtN,OAAO,CAACuE,MAAM,GAAG4I,mBAAmB;IAEjE,IAAII,SAAS,GAAG,CAAC;IACjB,KAAK,IAAI7G,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAG,IAAI,CAAC1G,OAAO,CAACuE,MAAM,EAAEmC,CAAC,EAAE,EAAE;MAC5C,MAAM8G,KAAK,GAAG,IAAI,CAACxN,OAAO,CAAC0G,CAAC,CAAE;MAC9B6G,SAAS,EAAE;MAEX,IAAID,eAAe,IAAI5G,CAAC,IAAI0G,SAAS,IAAI1G,CAAC,GAAG,IAAI,CAAC1G,OAAO,CAACuE,MAAM,GAAG8I,SAAS,EAAE;QAC5E;QACA,IAAI3G,CAAC,KAAK0G,SAAS,EAAE;UACnBP,MAAM,IAAI,mBAAmB;UAC7B,KAAK,IAAIY,CAAC,GAAGL,SAAS,EAAEK,CAAC,GAAG,IAAI,CAACzN,OAAO,CAACuE,MAAM,GAAG8I,SAAS,EAAEI,CAAC,EAAE,EAAE;YAChE,MAAMC,CAAC,GAAG,IAAI,CAAC1N,OAAO,CAACyN,CAAC,CAAE;YAC1B,MAAME,UAAU,GAAGD,CAAC,CAACjI,MAAM,CAAClE,IAAI,IAAI,SAAS;YAC7C,MAAMqM,SAAS,GAAGF,CAAC,CAACjI,MAAM,CAACoI,MAAM,EAAE1K,UAAU,CAAC,GAAG,CAAC,GAAG,SAAS,GAAG,MAAM;YACvE0J,MAAM,IAAI,QAAQY,CAAC,GAAG,CAAC,KAAKE,UAAU,MAAMC,SAAS,IAAI;UAC3D;UACAf,MAAM,IAAI,oBAAoB;QAChC;QACA,SAAS,CAAC;MACZ;MAEAA,MAAM,IAAI,SAASU,SAAS,KAAK;MACjCV,MAAM,IAAI,uBAAuBW,KAAK,CAACM,UAAU,CAACC,gBAAgB,IAAI;MACtElB,MAAM,IAAI,WAAWW,KAAK,CAACM,UAAU,CAACE,MAAM,IAAI;MAChDnB,MAAM,IAAI,SAASW,KAAK,CAACM,UAAU,CAACG,IAAI,IAAI;MAC5CpB,MAAM,IAAI,kBAAkBW,KAAK,CAAC/H,MAAM,CAACoI,MAAM,IAAI;MACnDhB,MAAM,IAAI,UAAUU,SAAS,KAAK;IACpC;;IAEA;IACA,KAAK,MAAMW,GAAG,IAAI,IAAI,CAAC/B,YAAY,EAAE;MACnCU,MAAM,IAAI,QAAQqB,GAAG,UAAU;IACjC;IACA,IAAI,CAAC/B,YAAY,GAAG,EAAE;IAEtBU,MAAM,IAAI,sBAAsB;;IAEhC;IACAhO,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,uCAAuC,EAAE,CAAC,CAAC,IAAI,CAACH,MAAM,CAACI,SAAS,CAAC;IAC9F6L,MAAM,IAAI,kBAAkB;IAC5BA,MAAM,IAAI,mBAAmBvH,UAAU,IAAI;;IAE3C;IACA,IAAI,IAAI,CAAC1E,MAAM,CAACI,SAAS,EAAE;MACzB,MAAM8H,GAAG,GAAG,IAAI,CAAClI,MAAM,CAACI,SAAS;MACjC,MAAMgF,UAAU,GAAG,IAAI,CAAC3D,aAAa,CAAC,CAAC;MACvCxD,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,6CAA6C,EAAEuE,UAAU,CAAC;;MAEvF;MACA,MAAMyD,WAAW,GAAG/C,UAAU,CAAC8C,GAAG,CAACvH,IAAI,IAAI;QACzC,MAAMyH,KAAK,GAAGF,GAAG,CAACP,OAAO,CAAChH,IAAI,CAAC;QAC/B,IAAIyH,KAAK,EAAE;UACT,MAAMC,KAAK,GAAGD,KAAK,CAACC,KAAK,GAAG,KAAKD,KAAK,CAACC,KAAK,GAAG,GAAG,EAAE;UACpD,OAAO,KAAK1H,IAAI,GAAG0H,KAAK,KAAKD,KAAK,CAACpG,WAAW,EAAE;QAClD;QACA,OAAO,KAAKrB,IAAI,EAAE;MACpB,CAAC,CAAC;MACFsL,MAAM,IAAI,yBAAyB9D,WAAW,CAACjF,IAAI,CAAC,IAAI,CAAC,IAAI;;MAE7D;MACA,IAAIgF,GAAG,CAACN,MAAM,IAAIM,GAAG,CAACN,MAAM,CAACjE,MAAM,GAAG,CAAC,EAAE;QACvC,MAAM4E,UAAU,GAAGL,GAAG,CAACN,MAAM,CAACM,GAAG,CAACM,KAAK,IAAI,KAAKA,KAAK,CAACtF,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACpE+I,MAAM,IAAI,yBAAyB1D,UAAU,CAACrF,IAAI,CAAC,IAAI,CAAC,IAAI;MAC9D;IACF,CAAC,MAAM;MACL;MACA,MAAMkC,UAAU,GAAG,IAAI,CAAC3D,aAAa,CAAC,CAAC;MACvCwK,MAAM,IAAI,sBAAsB7G,UAAU,CAAClC,IAAI,CAAC,IAAI,CAAC,IAAI;IAC3D;IAEA+I,MAAM,IAAI,IAAI,GAAGF,aAAa,GAAG,IAAI;IACrCE,MAAM,IAAI,mBAAmB;IAE7B,OAAOA,MAAM;EACf;;EAEA;;EAEA,MAAM5J,OAAOA,CAACkL,WAAmB,EAAEvB,WAAiD,EAA4B;IAC9G,IAAI,IAAI,CAAC3M,SAAS,EAAE;MAClB,OAAO;QAAE0E,OAAO,EAAE,KAAK;QAAElB,OAAO,EAAE,2BAA2B;QAAE2K,KAAK,EAAE;MAAG,CAAC;IAC5E;IAEA,IAAI,CAACnO,SAAS,GAAG,IAAI;IACrB,IAAI,CAACC,iBAAiB,GAAG,KAAK;IAC9B,IAAI,CAACF,OAAO,GAAG,EAAE;IACjB,IAAI,CAACmM,YAAY,GAAG,EAAE;IACtB,IAAI,CAACC,cAAc,GAAG,EAAE;IACxB,MAAMG,QAAQ,GAAG,IAAI,CAAC3L,MAAM,CAAC2L,QAAQ,IAAI5M,iBAAiB;IAC1D,MAAM0O,SAAS,GAAG,IAAI,CAACzN,MAAM,CAACyN,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,IAAIhC,iBAAiB,GAAGyB,WAAW;IACnC,IAAI,IAAI,CAAChO,mBAAmB,EAAE;MAC5BuM,iBAAiB,GAAG,oCAAoC,IAAI,CAACvM,mBAAmB,uBAAuBgO,WAAW,EAAE;MACpH,IAAI,CAAChO,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACnC;IAEAtB,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,wBAAwB8K,iBAAiB,GAAG,CAAC;;IAEzE;IACA,MAAM,IAAI,CAAC9L,MAAM,CAAC+N,YAAY,GAAG,CAAC;IAElC,IAAI;MACF;MACA,IAAI,CAAClE,sBAAsB,CAAC,CAAC;;MAE7B;MACA;MACA;MACA,IAAI,CAAC,IAAI,CAACpD,WAAW,CAAC,CAAC,EAAE;QACvB,IAAI,CAACzG,MAAM,CAACsE,cAAc,GAAG,aAAa,CAAC;QAC3C,MAAM0J,YAAY,GAAG,CAAC,CAAC,IAAI,CAACxO,gBAAgB;QAC5C,MAAMyO,YAAY,GAAG5P,wBAAwB,CAC3C,IAAI,EAAE2P,YAAY,EAAE,IAAI,CAAChO,MAAM,CAACkL,YAAY,EAAEC,MAChD,CAAC;QACD,MAAMlM,KAAK,GAAG,IAAI,CAACgK,qBAAqB,CAAC,CAAC;QAC1C,MAAMvE,UAAU,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAC;;QAE9C;QACA,MAAM6M,UAAU,GAAG,mBAAmBxJ,UAAU,aAAaoH,iBAAiB,EAAE;QAEhF,MAAMqC,QAAQ,GAAG,MAAM,IAAI,CAACpO,QAAQ,CAACqO,eAAe,CAClDH,YAAY,EAAEC,UAAU,EAAEjP,KAAK,EAAE,EAAE,EAAEY,SACvC,CAAC;;QAED;QACA,IAAIsO,QAAQ,CAACE,UAAU,EAAE;UACvBX,YAAY,CAACC,YAAY,IAAIQ,QAAQ,CAACE,UAAU,CAACV,YAAY;UAC7DD,YAAY,CAACE,gBAAgB,IAAIO,QAAQ,CAACE,UAAU,CAACT,gBAAgB;UACrEF,YAAY,CAACG,WAAW,IAAIM,QAAQ,CAACE,UAAU,CAACR,WAAW;UAC3DH,YAAY,CAACI,gBAAgB,IAAIK,QAAQ,CAACE,UAAU,CAACP,gBAAgB;UACrE,IAAI,CAAC9N,MAAM,CAACsO,YAAY,GAAGH,QAAQ,CAACE,UAAU,CAAC;QACjD;;QAEA;QACA,IAAIxL,OAAO,GAAGsL,QAAQ,CAACrK,IAAI,IAAI,EAAE;QACjC,IAAIqK,QAAQ,CAACI,SAAS,EAAE;UACtB,KAAK,MAAMC,EAAE,IAAIL,QAAQ,CAACI,SAAS,EAAE;YACnC,MAAM3N,IAAI,GAAG,IAAI,CAAC3B,KAAK,CAACyK,GAAG,CAAC8E,EAAE,CAAC7N,IAAI,CAAC;YACpC,IAAIC,IAAI,EAAE;cACR,MAAMiF,MAAM,GAAG,MAAM,IAAI,CAAC+D,iBAAiB,CAAChJ,IAAI,EAAE4N,EAAE,CAAClM,IAAI,EAAEkM,EAAE,CAAC7N,IAAI,CAAC;cACnE,IAAI6N,EAAE,CAAC7N,IAAI,KAAK,MAAM,EAAE;gBACtBkC,OAAO,GAAGgD,MAAM;cAClB,CAAC,MAAM,IAAI2I,EAAE,CAAC7N,IAAI,KAAK,iBAAiB,EAAE;gBACxC;gBACA,MAAM8N,QAAQ,GAAG,sBAAsB5I,MAAM,sBAAsBiG,iBAAiB,4EAA4E;gBAChK,MAAM4C,gBAAgB,GAAG,MAAM,IAAI,CAAC3O,QAAQ,CAACqO,eAAe,CAC1DH,YAAY,EAAEQ,QAAQ,EAAExP,KAAK,EAAE,EAAE,EAAEY,SACrC,CAAC;gBACD,IAAI6O,gBAAgB,CAACL,UAAU,EAAE;kBAC/BX,YAAY,CAACC,YAAY,IAAIe,gBAAgB,CAACL,UAAU,CAACV,YAAY;kBACrED,YAAY,CAACE,gBAAgB,IAAIc,gBAAgB,CAACL,UAAU,CAACT,gBAAgB;kBAC7EF,YAAY,CAACG,WAAW,IAAIa,gBAAgB,CAACL,UAAU,CAACR,WAAW;kBACnEH,YAAY,CAACI,gBAAgB,IAAIY,gBAAgB,CAACL,UAAU,CAACP,gBAAgB;kBAC7E,IAAI,CAAC9N,MAAM,CAACsO,YAAY,GAAGI,gBAAgB,CAACL,UAAU,CAAC;gBACzD;gBACA,IAAIK,gBAAgB,CAACH,SAAS,EAAE;kBAC9B,KAAK,MAAMI,GAAG,IAAID,gBAAgB,CAACH,SAAS,EAAE;oBAC5C,IAAII,GAAG,CAAChO,IAAI,KAAK,MAAM,EAAE;sBACvB,MAAMiO,UAAU,GAAG,MAAM,IAAI,CAAC3P,KAAK,CAACyK,GAAG,CAAC,MAAM,CAAC,CAAErH,OAAO,CAACsM,GAAG,CAACrM,IAAI,CAAC;sBAClEO,OAAO,GAAG+L,UAAU;oBACtB;kBACF;gBACF;gBACA,IAAI,CAAC/L,OAAO,IAAI6L,gBAAgB,CAAC5K,IAAI,EAAE;kBACrCjB,OAAO,GAAG6L,gBAAgB,CAAC5K,IAAI;gBACjC;cACF;YACF;UACF;QACF;QAEA,MAAM+B,MAAuB,GAAG;UAC9B9B,OAAO,EAAE,IAAI;UACblB,OAAO,EAAEA,OAAO,IAAI,6BAA6B;UACjD2K,KAAK,EAAE,EAAE;UACTa,UAAU,EAAEX;QACd,CAAC;QACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;QACvC,OAAOA,MAAM;MACf;;MAEA;MACA,KAAK,IAAI6F,IAAI,GAAG,CAAC,EAAEA,IAAI,GAAGC,QAAQ,EAAED,IAAI,EAAE,EAAE;QAC1C;QACA,IAAI,IAAI,CAACpM,iBAAiB,EAAE;UAC1BrB,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,kCAAkC0K,IAAI,GAAG,CAAC,EAAE,CAAC;UACzE,MAAMoD,YAA6B,GAAG;YACpC/K,OAAO,EAAE,KAAK;YACdlB,OAAO,EAAE,qBAAqB;YAC9B2K,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGC,YAAY,CAAC;UAC7C,OAAOA,YAAY;QACrB;QACA7Q,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,cAAc0K,IAAI,GAAG,CAAC,IAAIC,QAAQ,QAAQ,CAAC;;QAEvE;QACA,MAAM,IAAI,CAAC3L,MAAM,CAAC+O,YAAY,GAAGrD,IAAI,CAAC;;QAEtC;QACA,MAAM7D,UAAU,GAAG3J,aAAa,CAAC,IAAI,CAAC+B,OAAO,EAAE,IAAI,CAACmB,aAAa,CAAC,CAAC,CAAC;QACpE,MAAMsD,UAAU,GAAG,IAAI,CAACrD,oBAAoB,CAAC,CAAC;QAC9C,MAAMa,MAAM,GAAG/D,eAAe,CAC5BuG,UAAU,EACV,IAAI,CAACjD,aAAa,CAAC,CAAC,EACpBoG,UAAU,CAACC,YAAY,EACvBD,UAAU,CAACE,YACb,CAAC;QAED9J,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,WAAWkB,MAAM,CAACwC,UAAU,EAAE,CAAC;QAC3DzG,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,gBAAgB+B,MAAM,CAAC4F,YAAY,EAAE,CAAC;;QAEnE;QACA,IAAIiE,aAAa,GAAG7J,MAAM,CAAC4F,YAAY;QACvC,IAAI,IAAI,CAAC9H,MAAM,CAACgP,sBAAsB,EAAE;UACtCjD,aAAa,GAAG,MAAM,IAAI,CAAC/L,MAAM,CAACgP,sBAAsB,CAACjD,aAAa,CAAC;QACzE;;QAEA;QACA,IAAI,CAACN,kBAAkB,CAACC,IAAI,EAAEC,QAAQ,EAAEjH,UAAU,CAAC;;QAEnD;QACA,MAAMuK,cAAc,GAAG,IAAI,CAACpD,kBAAkB,CAC5CH,IAAI,EAAEC,QAAQ,EAAEG,iBAAiB,EAAEpH,UAAU,EAAEqH,aAAa,EAAEC,WAChE,CAAC;;QAED;QACA,MAAMxH,UAAU,GAAG,MAAM,IAAI,CAAC1C,iBAAiB,CAAC,CAAC;;QAEjD;QACA,IAAI,CAAC9B,MAAM,CAACsE,cAAc,GAAG,qBAAqB,CAAC;QACnD,MAAM0J,YAAY,GAAG,CAAC,CAAC,IAAI,CAACxO,gBAAgB;QAC5C,MAAMyO,YAAY,GAAG7P,iBAAiB,CAAC,IAAI,EAAE4P,YAAY,CAAC;QAC1D,MAAM/O,KAAK,GAAG,IAAI,CAACgK,qBAAqB,CAAC,CAAC;QAE1ChL,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,sBAAsB/B,KAAK,CAAC0E,MAAM,WAAW,CAAC;QAC1E1F,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,uBAAuB,EAAE8N,YAAY,CAACtK,MAAM,CAAC;QAC1E1F,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,uBAAuB,EAAE8O,cAAc,CAACtG,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAEvF,MAAMwF,QAAQ,GAAG,MAAM,IAAI,CAACpO,QAAQ,CAACqO,eAAe,CAClDH,YAAY,EACZgB,cAAc,EACdhQ,KAAK,EACL,IAAI,CAACG,OAAO,EACZoF,UACF,CAAC;;QAED;QACA,IAAI2J,QAAQ,CAACE,UAAU,EAAE;UACvBX,YAAY,CAACC,YAAY,IAAIQ,QAAQ,CAACE,UAAU,CAACV,YAAY;UAC7DD,YAAY,CAACE,gBAAgB,IAAIO,QAAQ,CAACE,UAAU,CAACT,gBAAgB;UACrEF,YAAY,CAACG,WAAW,IAAIM,QAAQ,CAACE,UAAU,CAACR,WAAW;UAC3DH,YAAY,CAACI,gBAAgB,IAAIK,QAAQ,CAACE,UAAU,CAACP,gBAAgB;UACrE,IAAI,CAAC9N,MAAM,CAACsO,YAAY,GAAGH,QAAQ,CAACE,UAAU,CAAC;QACjD;;QAEA;QACA,IAAI,IAAI,CAACrO,MAAM,CAACkP,cAAc,IAAIxB,YAAY,CAACG,WAAW,IAAI,IAAI,CAAC7N,MAAM,CAACkP,cAAc,EAAE;UACxFjR,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,0BAA0BiK,YAAY,CAACG,WAAW,OAAO,IAAI,CAAC7N,MAAM,CAACkP,cAAc,EAAE,CAAC;UAClH,MAAMC,YAA6B,GAAG;YACpCpL,OAAO,EAAE,KAAK;YACdlB,OAAO,EAAE,6CAA6C6K,YAAY,CAACG,WAAW,CAACuB,cAAc,CAAC,CAAC,OAAO,IAAI,CAACpP,MAAM,CAACkP,cAAc,CAACE,cAAc,CAAC,CAAC,UAAU;YAC3J5B,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGM,YAAY,CAAC;UAC7C,OAAOA,YAAY;QACrB;QACA,IAAI,IAAI,CAACnP,MAAM,CAACqP,UAAU,IAAI3B,YAAY,CAACI,gBAAgB,IAAI,IAAI,CAAC9N,MAAM,CAACqP,UAAU,EAAE;UACrFpR,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,0BAA0BiK,YAAY,CAACI,gBAAgB,CAACwB,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAACtP,MAAM,CAACqP,UAAU,EAAE,CAAC;UAC/H,MAAMF,YAA6B,GAAG;YACpCpL,OAAO,EAAE,KAAK;YACdlB,OAAO,EAAE,wCAAwC6K,YAAY,CAACI,gBAAgB,CAACwB,OAAO,CAAC,CAAC,CAAC,QAAQ,IAAI,CAACtP,MAAM,CAACqP,UAAU,CAACC,OAAO,CAAC,CAAC,CAAC,OAAO;YACzI9B,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGM,YAAY,CAAC;UAC7C,OAAOA,YAAY;QACrB;;QAEA;QACA,IAAI,CAAChB,QAAQ,CAACI,SAAS,IAAIJ,QAAQ,CAACI,SAAS,CAAC5K,MAAM,KAAK,CAAC,EAAE;UAC1D1F,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,kCAAkC,EAAE0K,QAAQ,CAACrK,IAAI,CAAC;UAC9E,MAAM+B,MAAuB,GAAG;YAC9B9B,OAAO,EAAE,IAAI;YACblB,OAAO,EAAEsL,QAAQ,CAACrK,IAAI,IAAI,iBAAiB;YAC3C0J,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM;UAAE0J;QAAU,CAAC,GAAGpB,QAAQ;QAC9BlQ,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,YAAYuO,SAAS,CAAClC,IAAI,EAAE,CAAC;QACzD,IAAIkC,SAAS,CAACnC,MAAM,EAAE;UACpBnP,MAAM,CAACkC,KAAK,CAAC,cAAc,EAAE,cAAcoP,SAAS,CAACnC,MAAM,EAAE,CAAC;QAChE;;QAEA;QACA;QACA,MAAMoC,QAAQ,GAAGrB,QAAQ,CAACI,SAAS,CAAC,CAAC,CAAE;QACvC,IAAIJ,QAAQ,CAACI,SAAS,CAAC5K,MAAM,GAAG,CAAC,EAAE;UACjC1F,MAAM,CAACwF,IAAI,CAAC,cAAc,EAAE,eAAe0K,QAAQ,CAACI,SAAS,CAAC5K,MAAM,4CAA4C,CAAC;QACnH;QAEA1F,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,SAASwO,QAAQ,CAAC7O,IAAI,IAAIoC,IAAI,CAACI,SAAS,CAACqM,QAAQ,CAAClN,IAAI,CAAC,GAAG,CAAC;;QAEvF;QACA,MAAMmN,WAAW,GAAG,IAAI,CAAC/I,kBAAkB,CAAC8I,QAAQ,CAAC7O,IAAI,EAAE6O,QAAQ,CAAClN,IAAI,CAAC;QACzE;QACA,MAAMoN,aAAa,GAAGH,SAAS,CAAClC,IAAI,IAAIoC,WAAW;QACnD,IAAI,CAACzP,MAAM,CAACsE,cAAc,GAAGoL,aAAa,CAAC;;QAE3C;QACA,MAAM9O,IAAI,GAAG,IAAI,CAAC3B,KAAK,CAACyK,GAAG,CAAC8F,QAAQ,CAAC7O,IAAI,CAAC,IACxC,IAAI,CAACsI,qBAAqB,CAAC,CAAC,CAAC5F,IAAI,CAACsG,CAAC,IAAIA,CAAC,CAAChJ,IAAI,KAAK6O,QAAQ,CAAC7O,IAAI,CAAC;QAElE,IAAIsM,MAAc;QAClB,IAAIrM,IAAI,EAAE;UACRqM,MAAM,GAAG,MAAM,IAAI,CAACrD,iBAAiB,CAAChJ,IAAI,EAAE4O,QAAQ,CAAClN,IAAI,EAAEkN,QAAQ,CAAC7O,IAAI,CAAC;QAC3E,CAAC,MAAM;UACLsM,MAAM,GAAG,mBAAmBuC,QAAQ,CAAC7O,IAAI,EAAE;QAC7C;QAEA1C,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,WAAWiM,MAAM,EAAE,CAAC;;QAEhD;QACA,MAAM0C,SAAoB,GAAG;UAC3BhD,SAAS,EAAEjB,IAAI;UACfwB,UAAU,EAAEqC,SAAS;UACrB1K,MAAM,EAAE;YACNlE,IAAI,EAAE6O,QAAQ,CAAC7O,IAAI;YACnBiP,KAAK,EAAEJ,QAAQ,CAAClN,IAAI;YACpB2K;UACF;QACF,CAAC;QACD,IAAI,CAAC7N,OAAO,CAACoD,IAAI,CAACmN,SAAS,CAAC;;QAE5B;QACA,MAAM,IAAI,CAAC3P,MAAM,CAAC6P,WAAW,GAAG,IAAI,CAACzQ,OAAO,CAAC;;QAE7C;QACA,IAAIoQ,QAAQ,CAAC7O,IAAI,KAAK,MAAM,EAAE;UAC5B,MAAMkF,MAAuB,GAAG;YAC9B9B,OAAO,EAAEyL,QAAQ,CAAClN,IAAI,CAACyB,OAAO,KAAK,KAAK;YACxClB,OAAO,EAAE2M,QAAQ,CAAClN,IAAI,CAACwB,IAAI,IAAImJ,MAAM;YACrCO,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACDzP,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,mBAAmB6E,MAAM,CAAChD,OAAO,EAAE,CAAC;UAChE,MAAM,IAAI,CAAC7C,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,IAAI2J,QAAQ,CAAC7O,IAAI,KAAK,UAAU,IAAI,CAAC,IAAI,CAACX,MAAM,CAACqE,SAAS,EAAE;UAC1D,IAAI,CAAC9E,mBAAmB,GAAGiQ,QAAQ,CAAClN,IAAI,CAAC8B,QAAQ,IAAI6I,MAAM;UAE3D,MAAMpH,MAAuB,GAAG;YAC9B9B,OAAO,EAAE,IAAI;YACblB,OAAO,EAAEoK,MAAM;YACfO,KAAK,EAAE,IAAI,CAACpO,OAAO;YACnBiP,UAAU,EAAEX;UACd,CAAC;UACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;UACvC,OAAOA,MAAM;QACf;;QAEA;QACA,MAAM,IAAIpD,OAAO,CAACC,OAAO,IAAIC,UAAU,CAACD,OAAO,EAAE+K,SAAS,CAAC,CAAC;MAC9D;;MAEA;MACA,MAAM5H,MAAuB,GAAG;QAC9B9B,OAAO,EAAE,KAAK;QACdlB,OAAO,EAAE,0BAA0B8I,QAAQ,gCAAgC;QAC3E6B,KAAK,EAAE,IAAI,CAACpO,OAAO;QACnBiP,UAAU,EAAEX;MACd,CAAC;MACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,CAAC,OAAOjD,KAAU,EAAE;MACnB3E,MAAM,CAAC2E,KAAK,CAAC,cAAc,EAAE,kBAAkB,EAAEA,KAAK,CAAC;MACvD,MAAMiD,MAAuB,GAAG;QAC9B9B,OAAO,EAAE,KAAK;QACdlB,OAAO,EAAE,UAAUD,KAAK,CAACC,OAAO,EAAE;QAClC2K,KAAK,EAAE,IAAI,CAACpO,OAAO;QACnBiP,UAAU,EAAEX;MACd,CAAC;MACD,MAAM,IAAI,CAAC1N,MAAM,CAAC6O,WAAW,GAAGhJ,MAAM,CAAC;MACvC,OAAOA,MAAM;IACf,CAAC,SAAS;MACR,IAAI,CAACxG,SAAS,GAAG,KAAK;MACtB;MACA;MACA;MACA,IAAI,CAACiL,qBAAqB,CAAC,KAAK,CAAC;IACnC;EACF;;EAEA;EACAwF,UAAUA,CAAC7P,OAAY,EAAEC,MAAW,EAAQ;IAC1C,IAAI,CAACD,OAAO,GAAGA,OAAO;IACtB,IAAI,CAACC,MAAM,GAAGA,MAAM;EACtB;;EAEA;EACA6P,YAAYA,CAAA,EAAY;IACtB,OAAO,IAAI,CAAC1Q,SAAS;EACvB;;EAEA;AACF;AACA;AACA;AACA;EACE2Q,MAAMA,CAAA,EAAS;IACb,IAAI,IAAI,CAAC3Q,SAAS,EAAE;MAClB,IAAI,CAACC,iBAAiB,GAAG,IAAI;MAC7BrB,MAAM,CAAC+C,IAAI,CAAC,cAAc,EAAE,2DAA2D,CAAC;IAC1F;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["logger","walkFiberTree","dehydrateScreen","buildSystemPrompt","buildKnowledgeOnlyPrompt","KnowledgeBaseService","createTapTool","createLongPressTool","createTypeTool","createScrollTool","createSliderTool","createPickerTool","createDatePickerTool","createKeyboardTool","createGuideTool","createSimplifyTool","createRestoreTool","DEFAULT_MAX_STEPS","AgentRuntime","tools","Map","actions","history","isRunning","isCancelRequested","lastAskUserQuestion","knowledgeService","lastDehydratedRoot","originalErrorHandler","lastSuppressedError","graceTimer","originalReportErrorsAsExceptions","undefined","constructor","provider","config","rootRef","navRef","debug","screenMap","knowledgeBase","knowledgeMaxTokens","enableUIControl","registerKnowledgeOnlyTools","registerBuiltInTools","customTools","name","tool","Object","entries","delete","info","set","toolContext","getRootRef","getWalkConfig","getCurrentScreenName","getNavRef","routerRef","router","getRouteNames","findScreenPath","buildNestedParams","path","params","captureScreenshot","getLastDehydratedRoot","modularTools","description","parameters","screen","type","required","execute","args","startsWith","push","Promise","resolve","setTimeout","error","message","isReady","JSON","parse","availableRoutes","join","stringify","matchedScreen","find","r","toLowerCase","errMsg","warn","screenPath","length","nestedParams","navigate","text","success","seconds","Math","min","Number","question","onAskUser","onStatusUpdate","answer","screenshot","round","screenName","retrieve","registerAction","action","unregisterAction","state","getRootState","getState","names","collectRouteNames","routeNames","routes","route","Set","targetScreen","some","nestedNames","includes","leafParams","result","i","pathname","segments","split","filter","Boolean","getDeepestScreenName","index","setUIControlOverride","enabled","uiControlOverride","isUIEnabled","getToolStatusLabel","toolName","direction","value","date","moduleName","viewShot","require","captureRef","default","uri","format","quality","width","code","getScreenContext","keys","screens","chains","walkResult","elementsText","interactives","availableScreensText","appMapText","map","screenLines","entry","title","line","chainLines","chain","detectStaleMap","context","substring","staleMapWarned","mapScreens","missing","has","console","buildToolsForProvider","allTools","values","fromEntries","key","typeStr","handler","getTools","executeTool","get","t","executeToolSafely","_startErrorSuppression","clearTimeout","ErrorUtils","global","setGlobalHandler","getGlobalHandler","isFatal","consoleAny","reportErrorsAsExceptions","_stopErrorSuppression","gracePeriodMs","restore","onToolExecute","validationError","validateToolArgs","suppressedError","numericArgs","val","isFinite","interactiveBlacklist","interactiveWhitelist","getInstructions","instructions","system","trim","getScreenInstructions","screenInstructions","observations","lastScreenName","handleObservations","step","maxSteps","remaining","assembleUserPrompt","contextualMessage","screenContent","chatHistory","prompt","recentHistory","slice","msg","role","content","SUMMARIZE_THRESHOLD","KEEP_HEAD","KEEP_TAIL","shouldSummarize","stepIndex","event","j","h","actionName","succeeded","output","reflection","previousGoalEval","memory","plan","obs","userMessage","steps","stepDelay","sessionUsage","promptTokens","completionTokens","totalTokens","estimatedCostUSD","onBeforeTask","hasKnowledge","systemPrompt","userPrompt","response","generateContent","tokenUsage","onTokenUsage","toolCalls","tc","followUp","followUpResponse","ftc","doneResult","onAfterTask","cancelResult","onBeforeStep","transformScreenContent","contextMessage","maxTokenBudget","budgetResult","toLocaleString","maxCostUSD","toFixed","reasoning","toolCall","statusLabel","statusDisplay","agentStep","input","onAfterStep","updateRefs","getIsRunning","cancel"],"sourceRoot":"../../../src","sources":["core/AgentRuntime.ts"],"mappings":"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","ignoreList":[]}
@@ -28,17 +28,6 @@ const TEXT_TYPES = new Set(['Text', 'RCTText']);
28
28
  const IMAGE_TYPES = new Set(['Image', 'RCTImageView', 'ExpoImage', 'FastImage', 'CachedImage']);
29
29
  const VIDEO_TYPES = new Set(['Video', 'ExpoVideo', 'RCTVideo', 'VideoPlayer', 'VideoView']);
30
30
 
31
- // Overlay component names — these render ABOVE the active screen's subtree
32
- // (as siblings of the navigation container), so the screen-scoped walker misses them.
33
- // We detect these by name and walk them in a second pass.
34
- const OVERLAY_COMPONENT_NAMES = new Set([
35
- // Toast libraries
36
- 'Toast', 'ToastContainer', 'ToastRender', 'FlashMessage', 'DropdownAlert', 'SnackBar', 'Snackbar', 'NotificationContainer',
37
- // Dialog/Alert libraries
38
- 'Dialog', 'DialogContainer', 'AlertDialog',
39
- // Modal/BottomSheet
40
- 'BottomSheet', 'ActionSheet', 'RBSheet', 'BottomSheetModal', 'Popup', 'PopupContainer', 'Tooltip']);
41
-
42
31
  // Known RN internal component names to skip when walking up for context
43
32
  const RN_INTERNAL_NAMES = new Set(['View', 'RCTView', 'Pressable', 'TouchableOpacity', 'TouchableHighlight', 'ScrollView', 'RCTScrollView', 'FlatList', 'SectionList', 'SafeAreaView', 'RNCSafeAreaView', 'KeyboardAvoidingView', 'Modal', 'StatusBar', 'Text', 'RCTText', 'AnimatedComponent', 'AnimatedComponentWrapper', 'Animated']);
44
33
 
@@ -373,63 +362,10 @@ function matchesRefList(node, refs) {
373
362
  }
374
363
  return false;
375
364
  }
376
- // ─── Overlay Detection ─────────────────────────────────────────
377
-
378
- /**
379
- * Scan the root fiber tree for visible overlay nodes (toasts, dialogs, modals)
380
- * that render OUTSIDE the active screen's subtree.
381
- *
382
- * Toast/dialog libraries (react-native-alert-notification, react-native-flash-message, etc.)
383
- * typically render their overlay as a SIBLING of the navigation container:
384
- * <Root>
385
- * {children} ← navigation tree (contains screens)
386
- * <Toast ... /> ← overlay (outside screen subtree)
387
- * </Root>
388
- *
389
- * This function finds those overlay nodes so the main walker can include them.
390
- */
391
- function findOverlayNodes(rootFiber, screenSubtree) {
392
- const overlays = [];
393
- function scan(node) {
394
- if (!node) return;
395
-
396
- // Skip the screen subtree itself (already walked by main pass)
397
- if (node === screenSubtree) {
398
- // Don't scan children, but DO scan siblings
399
- if (node.sibling) scan(node.sibling);
400
- return;
401
- }
402
- const name = getComponentName(node);
403
- const props = node.memoizedProps || {};
404
- const style = props.style || {};
405
- // Flatten array styles (StyleSheet.flatten equivalent)
406
- const flatStyle = Array.isArray(style) ? Object.assign({}, ...style.filter(Boolean)) : style;
407
-
408
- // Detection: known overlay component name
409
- const isOverlayByName = name && OVERLAY_COMPONENT_NAMES.has(name);
410
-
411
- // Detection: position absolute with content (likely a floating overlay)
412
- const isOverlayByStyle = flatStyle.position === 'absolute' && (flatStyle.zIndex > 100 || flatStyle.elevation > 10);
413
- if (isOverlayByName || isOverlayByStyle) {
414
- // Only include if the overlay has visible content (not empty/hidden)
415
- const hasChildren = !!node.child;
416
- const isHidden = flatStyle.opacity === 0 || flatStyle.display === 'none';
417
- if (hasChildren && !isHidden) {
418
- logger.debug('FiberTreeWalker', `Found overlay: ${name || 'unnamed'} (byName=${isOverlayByName}, byStyle=${isOverlayByStyle})`);
419
- overlays.push(node);
420
- // Don't scan children of found overlays (the main walker will handle them)
421
- if (node.sibling) scan(node.sibling);
422
- return;
423
- }
424
- }
425
-
426
- // Continue scanning children and siblings
427
- if (node.child) scan(node.child);
428
- if (node.sibling) scan(node.sibling);
429
- }
430
- scan(rootFiber);
431
- return overlays;
432
- }
365
+ // ─── Note on overlays ──────────────────────────────────────────
366
+ // Toasts, modals, and dialogs are now captured naturally because
367
+ // walkFiberTree starts from the root Fiber and prunes only
368
+ // display:none nodes (inactive screens). No separate overlay scan needed.
433
369
 
434
370
  // ─── Main Tree Walker ──────────────────────────────────────────
435
371
 
@@ -447,28 +383,41 @@ export function walkFiberTree(rootRef, config) {
447
383
  };
448
384
  }
449
385
 
450
- // Scope to active screen's subtree if screenName is provided
451
- let startNode = fiber;
386
+ // Always walk from the root Fiber inactive screens are pruned inside
387
+ // processNode by checking for display:none, which React Navigation applies
388
+ // to all inactive screens. This ensures navigation chrome (tab bar, header)
389
+ // is always included without hardcoding any component names.
390
+ const startNode = fiber;
452
391
  if (config?.screenName) {
453
- const screenFiber = findScreenFiberNode(fiber, config.screenName);
454
- if (screenFiber) {
455
- startNode = screenFiber;
456
- logger.debug('FiberTreeWalker', `Walk scoped to screen "${config.screenName}" (component: ${getComponentName(screenFiber)})`);
457
- } else {
458
- logger.debug('FiberTreeWalker', `Screen "${config.screenName}" not found in Fiber tree — searching entire tree`);
459
- }
392
+ logger.debug('FiberTreeWalker', `Walk active for screen "${config.screenName}" (inactive screens pruned via display:none)`);
460
393
  }
461
394
 
462
- // Collect overlay nodes (toasts, dialogs, modals) that render outside the screen subtree.
463
- // These are siblings of the navigation container at the root fiber level.
464
- const overlayNodes = config?.screenName ? findOverlayNodes(fiber, startNode) : [];
395
+ // Overlay detection is superseded by root-level walk all visible nodes
396
+ // (toasts, modals, overlays) are included naturally since they aren't hidden.
397
+ const overlayNodes = [];
465
398
  const interactives = [];
466
399
  let currentIndex = 0;
467
400
  const hasWhitelist = config?.interactiveWhitelist && (config.interactiveWhitelist.length ?? 0) > 0;
468
- function processNode(node, depth = 0, isInsideInteractive = false, ancestorOnPress = null) {
401
+ function processNode(node, depth = 0, isInsideInteractive = false, ancestorOnPress = null, currentZoneId = undefined) {
469
402
  if (!node) return '';
470
403
  const props = node.memoizedProps || {};
471
404
 
405
+ // ── Prune inactive screens ──────────────────────────────────
406
+ // Two mechanisms cover all React Navigation setups:
407
+ //
408
+ // 1. react-native-screens (Expo default, recommended):
409
+ // React Navigation sets activityState=0 on inactive tab screens.
410
+ // Stack screens retain activityState=2 even in the background (NativeStack
411
+ // never decreases activityState — confirmed from react-native-screens source).
412
+ // Those are kept as useful navigation history context for the agent.
413
+ //
414
+ // 2. ResourceSavingScene (React Navigation fallback without react-native-screens):
415
+ // Wraps inactive screen content with pointerEvents="none". Prune any such wrapper.
416
+ //
417
+ // Both are prop-based — no component names, no CSS display property.
418
+ if (props.activityState === 0) return '';
419
+ if (props.pointerEvents === 'none') return '';
420
+
472
421
  // ── Security Constraints ──
473
422
  if (props.aiIgnore === true) return '';
474
423
  if (matchesRefList(node, config?.interactiveBlacklist)) {
@@ -513,15 +462,36 @@ export function walkFiberTree(rootRef, config) {
513
462
  const isVideoNode = !!(componentName && VIDEO_TYPES.has(componentName));
514
463
  const producesOutput = shouldInclude || isTextNode || isImageNode || isVideoNode;
515
464
  const childDepth = producesOutput ? depth + 1 : depth;
465
+ const nextZoneId = componentName === 'AIZone' && props.id ? props.id : currentZoneId;
466
+ const indent = ' '.repeat(depth);
467
+
468
+ // ── Zone Header Emission ──────────────────────────────────
469
+ // When entering an AIZone boundary, emit a section header so the agent
470
+ // knows this zone exists, what its id is, and what it's allowed to do.
471
+ // This is what lets the agent call simplify_zone / guide_user proactively.
472
+ let zoneHeader = '';
473
+ if (componentName === 'AIZone' && props.id) {
474
+ const permissions = [];
475
+ if (props.allowSimplify) permissions.push('simplify');
476
+ if (props.allowHighlight) permissions.push('highlight');
477
+ if (props.allowInjectHint) permissions.push('hint');
478
+ if (props.allowInjectCard) permissions.push('card');
479
+ const permStr = permissions.length ? ` | permissions: ${permissions.join(', ')}` : '';
480
+ zoneHeader = `${indent}[zone: ${props.id}${permStr}]\n`;
481
+ }
516
482
 
517
483
  // Process children
518
484
  let childrenText = '';
519
485
  let currentChild = node.child;
520
486
  while (currentChild) {
521
- childrenText += processNode(currentChild, childDepth, isInsideInteractive || !!shouldInclude, nextAncestorOnPress);
487
+ childrenText += processNode(currentChild, childDepth, isInsideInteractive || !!shouldInclude, nextAncestorOnPress, nextZoneId);
522
488
  currentChild = currentChild.sibling;
523
489
  }
524
- const indent = ' '.repeat(depth);
490
+
491
+ // Prepend zone header before children if this is a zone root
492
+ if (zoneHeader) {
493
+ childrenText = zoneHeader + childrenText;
494
+ }
525
495
  if (shouldInclude) {
526
496
  const resolvedType = elementType || 'pressable';
527
497
  // Primary: accessibilityLabel → deep text (pierces nested interactives)
@@ -548,6 +518,8 @@ export function walkFiberTree(rootRef, config) {
548
518
  index: currentIndex,
549
519
  type: resolvedType,
550
520
  label: label || `[${resolvedType}]`,
521
+ aiPriority: props.aiPriority,
522
+ zoneId: currentZoneId,
551
523
  fiberNode: node,
552
524
  props: {
553
525
  ...props
@@ -556,7 +528,11 @@ export function walkFiberTree(rootRef, config) {
556
528
 
557
529
  // Build output tag with state attributes
558
530
  const stateAttrs = extractStateAttributes(props);
559
- const attrStr = stateAttrs ? ` ${stateAttrs}` : '';
531
+ let attrStr = stateAttrs ? ` ${stateAttrs}` : '';
532
+ if (props.aiPriority) {
533
+ attrStr += ` aiPriority="${props.aiPriority}"`;
534
+ if (currentZoneId) attrStr += ` zoneId="${currentZoneId}"`;
535
+ }
560
536
  const textContent = label || '';
561
537
  const elementOutput = `${indent}[${currentIndex}]<${resolvedType}${attrStr}>${textContent} />${childrenText.trim() ? '\n' + childrenText : ''}\n`;
562
538
  currentIndex++;
@@ -568,7 +544,8 @@ export function walkFiberTree(rootRef, config) {
568
544
  if (isTextNode) {
569
545
  const textContent = extractRawText(props.children);
570
546
  if (textContent && textContent.trim() !== '') {
571
- return `${indent}${textContent.trim()}\n`;
547
+ const priorityTag = props.aiPriority ? ` (aiPriority="${props.aiPriority}"${currentZoneId ? ` zoneId="${currentZoneId}"` : ''})` : '';
548
+ return `${indent}${textContent.trim()}${priorityTag}\n`;
572
549
  }
573
550
  }
574
551
 
@@ -1 +1 @@
1
- {"version":3,"names":["logger","PRESSABLE_TYPES","Set","TEXT_INPUT_TYPES","SWITCH_TYPES","SLIDER_TYPES","PICKER_TYPES","DATE_PICKER_TYPES","TEXT_TYPES","IMAGE_TYPES","VIDEO_TYPES","OVERLAY_COMPONENT_NAMES","RN_INTERNAL_NAMES","STATE_PROPS","extractStateAttributes","props","parts","accessibilityState","k","v","Object","entries","undefined","push","accessibilityRole","key","join","hasAnyEventHandler","keys","startsWith","getNearestCustomComponentName","fiber","maxDepth","current","return","depth","name","getComponentName","has","type","displayName","render","getElementType","memoizedProps","role","onPress","onChangeText","onSlidingComplete","onValueChange","minimumValue","maximumValue","onChange","mode","isDisabled","disabled","editable","extractDeepTextContent","child","childName","childProps","text","extractRawText","children","isIconGlyph","nestedText","sibling","trim","trimmed","length","code","codePointAt","String","Array","isArray","map","filter","Boolean","extractIconName","componentName","found","getFiberRootFromDevTools","hook","globalThis","__REACT_DEVTOOLS_GLOBAL_HOOK__","renderers","size","rendererId","roots","getFiberRoots","fiberRoot","values","next","value","debug","e","getFiberFromRef","ref","fiberKey","find","_reactInternals","_reactInternalInstance","rootFiber","console","warn","matchesRefList","node","refs","stateNode","findOverlayNodes","screenSubtree","overlays","scan","style","flatStyle","assign","isOverlayByName","isOverlayByStyle","position","zIndex","elevation","hasChildren","isHidden","opacity","display","walkFiberTree","rootRef","config","elementsText","interactives","startNode","screenName","screenFiber","findScreenFiberNode","overlayNodes","currentIndex","hasWhitelist","interactiveWhitelist","processNode","isInsideInteractive","ancestorOnPress","aiIgnore","interactiveBlacklist","childText","currentChild","isWhitelisted","elementType","shouldInclude","ownOnPress","nextAncestorOnPress","typeStr","isTextNode","isImageNode","isVideoNode","producesOutput","childDepth","childrenText","indent","repeat","resolvedType","label","accessibilityLabel","placeholder","testID","nativeID","parentContext","index","fiberNode","stateAttrs","attrStr","textContent","elementOutput","context","alt","src","source","uri","attrs","paused","shouldPlay","poster","posterSource","overlayText","overlay","info","replace","SCROLLABLE_TYPES","PAGER_TYPES","lowerScreen","toLowerCase","search","lowerName","findScrollableContainers","containers","walk","isScrollable","isPagerLike","contextLabel","scrollRef","resolveNativeScrollRef","scrollTo","getNativeScrollRef","getScrollRef","nativeRef","scrollToOffset","grandchildName"],"sourceRoot":"../../../src","sources":["core/FiberTreeWalker.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["logger","PRESSABLE_TYPES","Set","TEXT_INPUT_TYPES","SWITCH_TYPES","SLIDER_TYPES","PICKER_TYPES","DATE_PICKER_TYPES","TEXT_TYPES","IMAGE_TYPES","VIDEO_TYPES","RN_INTERNAL_NAMES","STATE_PROPS","extractStateAttributes","props","parts","accessibilityState","k","v","Object","entries","undefined","push","accessibilityRole","key","join","hasAnyEventHandler","keys","startsWith","getNearestCustomComponentName","fiber","maxDepth","current","return","depth","name","getComponentName","has","type","displayName","render","getElementType","memoizedProps","role","onPress","onChangeText","onSlidingComplete","onValueChange","minimumValue","maximumValue","onChange","mode","isDisabled","disabled","editable","extractDeepTextContent","child","childName","childProps","text","extractRawText","children","isIconGlyph","nestedText","sibling","trim","trimmed","length","code","codePointAt","String","Array","isArray","map","filter","Boolean","extractIconName","componentName","found","getFiberRootFromDevTools","hook","globalThis","__REACT_DEVTOOLS_GLOBAL_HOOK__","renderers","size","rendererId","roots","getFiberRoots","fiberRoot","values","next","value","debug","e","getFiberFromRef","ref","fiberKey","find","_reactInternals","_reactInternalInstance","rootFiber","console","warn","matchesRefList","node","refs","stateNode","walkFiberTree","rootRef","config","elementsText","interactives","startNode","screenName","overlayNodes","currentIndex","hasWhitelist","interactiveWhitelist","processNode","isInsideInteractive","ancestorOnPress","currentZoneId","activityState","pointerEvents","aiIgnore","interactiveBlacklist","childText","currentChild","isWhitelisted","elementType","shouldInclude","ownOnPress","nextAncestorOnPress","typeStr","isTextNode","isImageNode","isVideoNode","producesOutput","childDepth","nextZoneId","id","indent","repeat","zoneHeader","permissions","allowSimplify","allowHighlight","allowInjectHint","allowInjectCard","permStr","childrenText","resolvedType","label","accessibilityLabel","placeholder","testID","nativeID","parentContext","index","aiPriority","zoneId","fiberNode","stateAttrs","attrStr","textContent","elementOutput","priorityTag","context","alt","src","source","uri","attrs","paused","shouldPlay","poster","posterSource","overlayText","overlay","info","replace","SCROLLABLE_TYPES","PAGER_TYPES","findScreenFiberNode","lowerScreen","toLowerCase","search","lowerName","findScrollableContainers","screenFiber","containers","walk","isScrollable","isPagerLike","contextLabel","scrollRef","resolveNativeScrollRef","scrollTo","getNativeScrollRef","getScrollRef","nativeRef","scrollToOffset","grandchildName"],"sourceRoot":"../../../src","sources":["core/FiberTreeWalker.ts"],"mappings":"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","ignoreList":[]}