@google/gemini-cli 0.13.0-nightly.20251103.9187f6f6 → 0.13.0-preview.0

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 (164) hide show
  1. package/dist/google-gemini-cli-0.13.0-nightly.20251031.c89bc30d.tgz +0 -0
  2. package/dist/package.json +3 -3
  3. package/dist/src/commands/mcp/list.test.js +25 -21
  4. package/dist/src/commands/mcp/list.test.js.map +1 -1
  5. package/dist/src/config/config.js +8 -84
  6. package/dist/src/config/config.js.map +1 -1
  7. package/dist/src/config/config.test.js +13 -30
  8. package/dist/src/config/config.test.js.map +1 -1
  9. package/dist/src/config/extension-manager.d.ts +18 -6
  10. package/dist/src/config/extension-manager.js +25 -19
  11. package/dist/src/config/extension-manager.js.map +1 -1
  12. package/dist/src/config/extension.test.js +9 -9
  13. package/dist/src/config/extension.test.js.map +1 -1
  14. package/dist/src/config/extensions/extensionSettings.test.js +39 -43
  15. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -1
  16. package/dist/src/config/extensions/github.test.js +133 -165
  17. package/dist/src/config/extensions/github.test.js.map +1 -1
  18. package/dist/src/config/keyBindings.d.ts +3 -0
  19. package/dist/src/config/keyBindings.js +29 -7
  20. package/dist/src/config/keyBindings.js.map +1 -1
  21. package/dist/src/config/keyBindings.test.js +17 -0
  22. package/dist/src/config/keyBindings.test.js.map +1 -1
  23. package/dist/src/config/policy.d.ts +0 -7
  24. package/dist/src/config/policy.js +10 -177
  25. package/dist/src/config/policy.js.map +1 -1
  26. package/dist/src/config/settingsSchema.d.ts +103 -21
  27. package/dist/src/config/settingsSchema.js +352 -21
  28. package/dist/src/config/settingsSchema.js.map +1 -1
  29. package/dist/src/config/settingsSchema.test.js +40 -1
  30. package/dist/src/config/settingsSchema.test.js.map +1 -1
  31. package/dist/src/gemini.js +15 -5
  32. package/dist/src/gemini.js.map +1 -1
  33. package/dist/src/gemini.test.js +2 -0
  34. package/dist/src/gemini.test.js.map +1 -1
  35. package/dist/src/generated/git-commit.d.ts +2 -2
  36. package/dist/src/generated/git-commit.js +2 -2
  37. package/dist/src/generated/git-commit.js.map +1 -1
  38. package/dist/src/nonInteractiveCli.js +68 -1
  39. package/dist/src/nonInteractiveCli.js.map +1 -1
  40. package/dist/src/services/BuiltinCommandLoader.js +4 -0
  41. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  42. package/dist/src/services/BuiltinCommandLoader.test.js +22 -0
  43. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  44. package/dist/src/services/McpPromptLoader.js +2 -2
  45. package/dist/src/services/McpPromptLoader.js.map +1 -1
  46. package/dist/src/services/McpPromptLoader.test.js +4 -2
  47. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  48. package/dist/src/test-utils/render.d.ts +2 -1
  49. package/dist/src/test-utils/render.js +3 -2
  50. package/dist/src/test-utils/render.js.map +1 -1
  51. package/dist/src/ui/AppContainer.js +32 -15
  52. package/dist/src/ui/AppContainer.js.map +1 -1
  53. package/dist/src/ui/AppContainer.test.js +160 -0
  54. package/dist/src/ui/AppContainer.test.js.map +1 -1
  55. package/dist/src/ui/commands/mcpCommand.js +14 -14
  56. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  57. package/dist/src/ui/commands/mcpCommand.test.js +4 -0
  58. package/dist/src/ui/commands/mcpCommand.test.js.map +1 -1
  59. package/dist/src/ui/commands/policiesCommand.d.ts +7 -0
  60. package/dist/src/ui/commands/policiesCommand.js +59 -0
  61. package/dist/src/ui/commands/policiesCommand.js.map +1 -0
  62. package/dist/src/ui/commands/policiesCommand.test.js +83 -0
  63. package/dist/src/ui/commands/policiesCommand.test.js.map +1 -0
  64. package/dist/src/ui/components/Composer.js +1 -1
  65. package/dist/src/ui/components/Composer.js.map +1 -1
  66. package/dist/src/ui/components/Composer.test.js +4 -1
  67. package/dist/src/ui/components/Composer.test.js.map +1 -1
  68. package/dist/src/ui/components/ConfigInitDisplay.js +4 -6
  69. package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
  70. package/dist/src/ui/components/InputPrompt.js +22 -2
  71. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  72. package/dist/src/ui/components/InputPrompt.test.js +70 -5
  73. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  74. package/dist/src/ui/components/MainContent.js +15 -4
  75. package/dist/src/ui/components/MainContent.js.map +1 -1
  76. package/dist/src/ui/components/Notifications.js +38 -5
  77. package/dist/src/ui/components/Notifications.js.map +1 -1
  78. package/dist/src/ui/components/SettingsDialog.js +32 -25
  79. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  80. package/dist/src/ui/components/ShellConfirmationDialog.js +1 -1
  81. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  82. package/dist/src/ui/components/messages/InfoMessage.js +1 -1
  83. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  84. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +1 -1
  85. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  86. package/dist/src/ui/components/messages/WarningMessage.js +2 -2
  87. package/dist/src/ui/components/messages/WarningMessage.js.map +1 -1
  88. package/dist/src/ui/components/shared/text-buffer.d.ts +1 -0
  89. package/dist/src/ui/components/shared/text-buffer.js +23 -0
  90. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  91. package/dist/src/ui/components/shared/text-buffer.test.js +246 -201
  92. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  93. package/dist/src/ui/contexts/KeypressContext.js +182 -132
  94. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  95. package/dist/src/ui/contexts/KeypressContext.test.js +144 -8
  96. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  97. package/dist/src/ui/contexts/MouseContext.d.ts +21 -0
  98. package/dist/src/ui/contexts/MouseContext.js +89 -0
  99. package/dist/src/ui/contexts/MouseContext.js.map +1 -0
  100. package/dist/src/ui/contexts/MouseContext.test.js +164 -0
  101. package/dist/src/ui/contexts/MouseContext.test.js.map +1 -0
  102. package/dist/src/ui/hooks/slashCommandProcessor.test.js +70 -73
  103. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  104. package/dist/src/ui/hooks/useGeminiStream.test.js +135 -368
  105. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  106. package/dist/src/ui/hooks/useKeypress.test.js +17 -9
  107. package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
  108. package/dist/src/ui/hooks/useMouse.d.ts +17 -0
  109. package/dist/src/ui/hooks/useMouse.js +27 -0
  110. package/dist/src/ui/hooks/useMouse.js.map +1 -0
  111. package/dist/src/ui/hooks/useMouse.test.d.ts +6 -0
  112. package/dist/src/ui/hooks/useMouse.test.js +57 -0
  113. package/dist/src/ui/hooks/useMouse.test.js.map +1 -0
  114. package/dist/src/ui/hooks/useSelectionList.js +5 -4
  115. package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
  116. package/dist/src/ui/hooks/useSelectionList.test.js +24 -3
  117. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  118. package/dist/src/ui/hooks/useToolScheduler.test.js +109 -200
  119. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  120. package/dist/src/ui/keyMatchers.test.js +27 -0
  121. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  122. package/dist/src/ui/themes/no-color.js +1 -0
  123. package/dist/src/ui/themes/no-color.js.map +1 -1
  124. package/dist/src/ui/themes/semantic-tokens.d.ts +1 -0
  125. package/dist/src/ui/themes/semantic-tokens.js +3 -0
  126. package/dist/src/ui/themes/semantic-tokens.js.map +1 -1
  127. package/dist/src/ui/themes/theme.d.ts +1 -0
  128. package/dist/src/ui/themes/theme.js +4 -0
  129. package/dist/src/ui/themes/theme.js.map +1 -1
  130. package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +1 -0
  131. package/dist/src/ui/utils/InlineMarkdownRenderer.js +11 -10
  132. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  133. package/dist/src/ui/utils/MarkdownDisplay.js +11 -9
  134. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  135. package/dist/src/ui/utils/input.d.ts +17 -0
  136. package/dist/src/ui/utils/input.js +51 -0
  137. package/dist/src/ui/utils/input.js.map +1 -0
  138. package/dist/src/ui/utils/input.test.d.ts +6 -0
  139. package/dist/src/ui/utils/input.test.js +44 -0
  140. package/dist/src/ui/utils/input.test.js.map +1 -0
  141. package/dist/src/ui/utils/kittyProtocolDetector.js +13 -4
  142. package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -1
  143. package/dist/src/ui/utils/mouse.d.ts +31 -0
  144. package/dist/src/ui/utils/mouse.js +164 -0
  145. package/dist/src/ui/utils/mouse.js.map +1 -0
  146. package/dist/src/ui/utils/mouse.test.d.ts +6 -0
  147. package/dist/src/ui/utils/mouse.test.js +131 -0
  148. package/dist/src/ui/utils/mouse.test.js.map +1 -0
  149. package/dist/src/utils/events.d.ts +11 -2
  150. package/dist/src/utils/events.js +1 -0
  151. package/dist/src/utils/events.js.map +1 -1
  152. package/dist/src/utils/sandbox.js +16 -18
  153. package/dist/src/utils/sandbox.js.map +1 -1
  154. package/dist/tsconfig.tsbuildinfo +1 -1
  155. package/package.json +4 -4
  156. package/dist/src/config/policy-toml-loader.d.ts +0 -46
  157. package/dist/src/config/policy-toml-loader.js +0 -314
  158. package/dist/src/config/policy-toml-loader.js.map +0 -1
  159. package/dist/src/config/policy-toml-loader.test.js +0 -626
  160. package/dist/src/config/policy-toml-loader.test.js.map +0 -1
  161. package/dist/src/config/policy.test.js +0 -1058
  162. package/dist/src/config/policy.test.js.map +0 -1
  163. /package/dist/src/{config/policy-toml-loader.test.d.ts → ui/commands/policiesCommand.test.d.ts} +0 -0
  164. /package/dist/src/{config/policy.test.d.ts → ui/contexts/MouseContext.test.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"useSelectionList.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSelectionList.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSelectionList.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSelectionList.ts"],"names":[],"mappings":"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"}
@@ -34,15 +34,15 @@ describe('useSelectionList', () => {
34
34
  mockOnSelect.mockClear();
35
35
  mockOnHighlight.mockClear();
36
36
  });
37
- const pressKey = (name, sequence = name) => {
37
+ const pressKey = (name, sequence = name, options = {}) => {
38
38
  act(() => {
39
39
  if (activeKeypressHandler) {
40
40
  const key = {
41
41
  name,
42
42
  sequence,
43
- ctrl: false,
43
+ ctrl: options.ctrl ?? false,
44
44
  meta: false,
45
- shift: false,
45
+ shift: options.shift ?? false,
46
46
  paste: false,
47
47
  };
48
48
  activeKeypressHandler(key);
@@ -168,6 +168,27 @@ describe('useSelectionList', () => {
168
168
  pressKey('up');
169
169
  expect(result.current.activeIndex).toBe(0);
170
170
  });
171
+ it('should ignore navigation keys when shift is pressed', async () => {
172
+ const { result } = await renderSelectionListHook({
173
+ items,
174
+ initialIndex: 2, // Start at middle item 'C'
175
+ onSelect: mockOnSelect,
176
+ });
177
+ expect(result.current.activeIndex).toBe(2);
178
+ // Shift+Down / Shift+J should not move down
179
+ pressKey('down', undefined, { shift: true });
180
+ expect(result.current.activeIndex).toBe(2);
181
+ pressKey('j', undefined, { shift: true });
182
+ expect(result.current.activeIndex).toBe(2);
183
+ // Shift+Up / Shift+K should not move up
184
+ pressKey('up', undefined, { shift: true });
185
+ expect(result.current.activeIndex).toBe(2);
186
+ pressKey('k', undefined, { shift: true });
187
+ expect(result.current.activeIndex).toBe(2);
188
+ // Verify normal navigation still works
189
+ pressKey('down');
190
+ expect(result.current.activeIndex).toBe(3);
191
+ });
171
192
  it('should wrap navigation correctly', async () => {
172
193
  const { result } = await renderSelectionListHook({
173
194
  items,
@@ -1 +1 @@
1
- {"version":3,"file":"useSelectionList.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSelectionList.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EACL,gBAAgB,GAEjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAM/C,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;AAE5B,IAAI,qBAAqB,GAA2B,IAAI,CAAC;AAEzD,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAChC,MAAM,YAAY,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC7B,MAAM,eAAe,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEhC,MAAM,KAAK,GAAqC;QAC9C,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;QACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;QACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;QACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;KACzB,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,qBAAqB,GAAG,IAAI,CAAC;QAC7B,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,kBAAkB,CACvC,CAAC,OAAwB,EAAE,OAAgC,EAAE,EAAE;YAC7D,IAAI,OAAO,EAAE,QAAQ,EAAE,CAAC;gBACtB,qBAAqB,GAAG,OAAO,CAAC;YAClC,CAAC;iBAAM,CAAC;gBACN,qBAAqB,GAAG,IAAI,CAAC;YAC/B,CAAC;QACH,CAAC,CACF,CAAC;QACF,YAAY,CAAC,SAAS,EAAE,CAAC;QACzB,eAAe,CAAC,SAAS,EAAE,CAAC;IAC9B,CAAC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,WAAmB,IAAI,EAAE,EAAE;QACzD,GAAG,CAAC,GAAG,EAAE;YACP,IAAI,qBAAqB,EAAE,CAAC;gBAC1B,MAAM,GAAG,GAAQ;oBACf,IAAI;oBACJ,QAAQ;oBACR,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,qBAAqB,CAAC,GAAG,CAAC,CAAC;YAC7B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,gCAAgC,IAAI,kHAAkH,CACvJ,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IAEF,MAAM,uBAAuB,GAAG,KAAK,EAAE,YAOtC,EAAE,EAAE;QACH,IAAI,UAA+C,CAAC;QACpD,SAAS,aAAa,CAAC,KAA0B;YAC/C,UAAU,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,KAAC,aAAa,OAAK,YAAY,GAAI,CAAC,CAAC;QAC1E,OAAO;YACL,MAAM,EAAE;gBACN,IAAI,OAAO;oBACT,OAAO,UAAU,CAAC;gBACpB,CAAC;aACF;YACD,QAAQ,EAAE,KAAK,EAAE,QAAsC,EAAE,EAAE;gBACzD,QAAQ,CAAC,KAAC,aAAa,OAAK,YAAY,KAAM,QAAQ,GAAI,CAAC,CAAC;YAC9D,CAAC;YACD,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,OAAO,EAAE,CAAC;YACZ,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;IAEF,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;YAC5F,MAAM,aAAa,GAAG;gBACpB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;aACzC,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,aAAa;gBACpB,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,EAAE;gBAChB,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC1D,KAAK;gBACL,YAAY,EAAE,CAAC,CAAC;gBAChB,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,WAAW,GAAG;gBAClB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;aACzC,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,WAAW;gBAClB,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;QACjD,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,YAAY,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC;gBAC9B,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,uBAAuB,CAAC;gBAC5B,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;aAC7B,CAAC,CAAC;YACH,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iGAAiG,EAAE,KAAK,IAAI,EAAE;YAC/G,MAAM,UAAU,GAAG,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9C,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,UAAU;gBACjB,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;aAC7B,CAAC,CAAC;YACH,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,WAAW,GAAG;gBAClB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;aACzC,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,WAAW;gBAClB,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;aAC7B,CAAC,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YAChD,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtD,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;QACjC,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,uBAAuB,CAAC;gBAC5B,KAAK;gBACL,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;YACvE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YAEH,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAE5C,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;QAC5D,EAAE,CAAC,8EAA8E,EAAE,KAAK,IAAI,EAAE;YAC5F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,6CAA6C;gBACpD,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;aAC7B,CAAC,CAAC;YAEH,yEAAyE;YACzE,IAAI,CAAC,qBAAqB;gBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YAElE,MAAM,OAAO,GAAG,qBAAqB,CAAC;YAEtC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;gBAC7B,MAAM,GAAG,GAAQ;oBACf,IAAI;oBACJ,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,KAAK;oBACX,KAAK,EAAE,KAAK;oBACZ,KAAK,EAAE,KAAK;iBACb,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,CAAC;YACf,CAAC,CAAC;YAEF,6CAA6C;YAC7C,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,MAAM,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,mDAAmD;YACnD,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,MAAM,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YACH,mCAAmC;YACnC,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,QAAQ,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,CAAC,eAAe,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,eAAe,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YACxD,MAAM,CAAC,eAAe,CAAC,CAAC,uBAAuB,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAExD,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sFAAsF,EAAE,KAAK,IAAI,EAAE;YACpG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,6CAA6C;gBACpD,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;aAC7B,CAAC,CAAC;YAEH,0FAA0F;YAC1F,GAAG,CAAC,GAAG,EAAE;gBACP,IAAI,CAAC,qBAAqB;oBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;gBAElE,MAAM,OAAO,GAAG,qBAAqB,CAAC;gBAEtC,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;oBAC7B,MAAM,GAAG,GAAQ;wBACf,IAAI;wBACJ,QAAQ,EAAE,IAAI;wBACd,IAAI,EAAE,KAAK;wBACX,IAAI,EAAE,KAAK;wBACX,KAAK,EAAE,KAAK;wBACZ,KAAK,EAAE,KAAK;qBACb,CAAC;oBACF,OAAO,CAAC,GAAG,CAAC,CAAC;gBACf,CAAC,CAAC;gBAEF,4EAA4E;gBAC5E,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,6BAA6B;gBAC5C,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,6BAA6B;gBAC5C,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,kBAAkB;YACrC,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;YAC3F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK;gBACL,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC7C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,uBAAuB,CAAC;gBAC5B,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;YACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,uBAAuB,CAAC;gBAC5B,KAAK,EAAE,EAAE;gBACT,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,SAAS,EAAE,KAAK;aACjB,CAAC,CAAC;YAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC;YAEzC,MAAM,QAAQ,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACpC,MAAM,CAAC,qBAAqB,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YAC7C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,QAAQ,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;YACrC,MAAM,CAAC,qBAAqB,CAAC,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4CAA4C,EAAE,GAAG,EAAE;QAC1D,UAAU,CAAC,GAAG,EAAE;YACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE;YACb,EAAE,CAAC,aAAa,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,KAAK,CAAC;QACxB,MAAM,QAAQ,GAAqC,KAAK,CAAC,IAAI,CAC3D,EAAE,MAAM,EAAE,EAAE,EAAE,EACd,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAC7D,CAAC;QAEF,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAExD,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,YAAY;aACvB,CAAC,CAAC;YACH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+EAA+E,EAAE,KAAK,IAAI,EAAE;YAC7F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YACH,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAClD,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC/C,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACrC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;YAC/F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,QAAQ;gBACf,YAAY,EAAE,CAAC,EAAE,6DAA6D;gBAC9E,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;YAEvD,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC5C,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,GAAG,CAAC,GAAG,EAAE;gBACP,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAE5C,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAE5C,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC9C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;YAC5E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAE5C,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC5C,wDAAwD;YACxD,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,yCAAyC;YACzC,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;QACvD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,KAAK,IAAI,EAAE;YAChE,MAAM,uBAAuB,CAAC;gBAC5B,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,wBAAwB;YAEjE,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,qCAAqC;YAElF,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,cAAc;YACvD,MAAM,CAAC,YAAY,CAAC,CAAC,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QACtD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4EAA4E,EAAE,KAAK,IAAI,EAAE;YAC1F,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,SAAS,EAAE,oCAAoC;gBACtD,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;gBAC5B,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,eAAe,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAElD,oDAAoD;YACpD,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,qEAAqE;YACrE,MAAM,qBAAqB,GAAG;gBAC5B,EAAE,KAAK,EAAE,iBAAiB,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,iBAAiB,EAAE;gBACpE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;aACrB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,qBAAqB;gBAC5B,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,GAAG,CAAC,GAAG,EAAE;gBACP,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YAEH,kCAAkC;YAClC,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YACjG,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAEjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,WAAW,CAAC,GAAG,CAAC,CAAC;YACjB,8BAA8B;YAC9B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,uBAAuB,CAAC;gBAC5B,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,WAAW,CAAC,GAAG,CAAC,CAAC;YAEjB,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnB,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAE9C,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,GAAG,CAAC,GAAG,EAAE;gBACP,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,YAAY,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,8BAA8B,EAAE,GAAG,EAAE;QAC5C,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;aAChB,CAAC,CAAC;YAEH,MAAM,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;YACpC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;aAChB,CAAC,CAAC;YAEH,4CAA4C;YAC5C,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,oDAAoD;YACpD,MAAM,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;YAEpC,oDAAoD;YACpD,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yEAAyE,EAAE,KAAK,IAAI,EAAE;YACvF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,KAAK;gBACL,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;aAChB,CAAC,CAAC;YAEH,MAAM,QAAQ,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;YAEpC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qFAAqF,EAAE,KAAK,IAAI,EAAE;YACnG,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;gBACf,KAAK;aACN,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YACF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,WAAW;YAEpD,kGAAkG;YAClG,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iFAAiF,EAAE,KAAK,IAAI,EAAE;YAC/F,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YACF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YACF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEpC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;YAClE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;gBACf,KAAK;aACN,CAAC,CAAC;YAEH,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9B,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;gBAC5B,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,GAAG,CAAC,GAAG,EAAE;gBACP,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,eAAe,CAAC,SAAS,EAAE,CAAC;YAE5B,sEAAsE;YACtE,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEpC,mEAAmE;YACnE,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;YACH,iEAAiE;YACjE,MAAM,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,eAAe;gBAC5B,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC3C,eAAe,CAAC,SAAS,EAAE,CAAC;YAE5B,wCAAwC;YACxC,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEpC,iEAAiE;YACjE,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,YAAY,EAAE,CAAC;gBACf,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YAEH,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,yCAAyC;YACzC,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEpC,6DAA6D;YAC7D,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBACzD,QAAQ,EAAE,YAAY;gBACtB,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YAEH,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE3C,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YAEpC,MAAM,OAAO,CAAC,GAAG,EAAE;gBACjB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7C,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mFAAmF,EAAE,KAAK,IAAI,EAAE;YACjG,MAAM,YAAY,GAAG;gBACnB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,IAAI,WAAW,GAAG,CAAC,CAAC;YAEpB,MAAM,mBAAmB,GAAG,KAAK,EAAE,YAElC,EAAE,EAAE;gBACH,SAAS,aAAa,CAAC,KAA0B;oBAC/C,WAAW,EAAE,CAAC;oBACd,gBAAgB,CAAC;wBACf,QAAQ,EAAE,YAAY;wBACtB,WAAW,EAAE,eAAe;wBAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;qBACnB,CAAC,CAAC;oBACH,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,KAAC,aAAa,OAAK,YAAY,GAAI,CAAC,CAAC;gBACjE,OAAO;oBACL,QAAQ,EAAE,KAAK,EAAE,QAAsC,EAAE,EAAE;wBACzD,QAAQ,CAAC,KAAC,aAAa,OAAK,YAAY,KAAM,QAAQ,GAAI,CAAC,CAAC;oBAC9D,CAAC;iBACF,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YAExE,iBAAiB;YACjB,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAE5B,sEAAsE;YACtE,MAAM,QAAQ,GAAG;gBACf,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;gBACxB,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE;aACzB,CAAC;YAEF,MAAM,QAAQ,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;YACpC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;QACvB,UAAU,CAAC,GAAG,EAAE;YACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,GAAG,EAAE;YACb,EAAE,CAAC,aAAa,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,QAAQ,GAAqC,KAAK,CAAC,IAAI,CAC3D,EAAE,MAAM,EAAE,EAAE,EAAE,EACd,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAC7D,CAAC;YAEF,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,uBAAuB,CAAC;gBAChD,KAAK,EAAE,QAAQ;gBACf,QAAQ,EAAE,YAAY;gBACtB,WAAW,EAAE,IAAI;aAClB,CAAC,CAAC;YAEH,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAEnB,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,GAAG,CAAC,GAAG,EAAE;gBACP,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAE5C,MAAM,OAAO,EAAE,CAAC;YAEhB,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAEnC,GAAG,CAAC,GAAG,EAAE;gBACP,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"useSelectionList.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useSelectionList.test.tsx"],"names":[],"mappings":"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"}
@@ -144,6 +144,19 @@ describe('useReactToolScheduler in YOLO Mode', () => {
144
144
  describe('useReactToolScheduler', () => {
145
145
  let onComplete;
146
146
  let capturedOnConfirmForTest;
147
+ const advanceAndSettle = async () => {
148
+ await act(async () => {
149
+ await vi.advanceTimersByTimeAsync(0);
150
+ });
151
+ };
152
+ const scheduleAndWaitForExecution = async (schedule, request) => {
153
+ act(() => {
154
+ schedule(request, new AbortController().signal);
155
+ });
156
+ await advanceAndSettle();
157
+ await advanceAndSettle();
158
+ await advanceAndSettle();
159
+ };
147
160
  beforeEach(() => {
148
161
  onComplete = vi.fn();
149
162
  capturedOnConfirmForTest = undefined;
@@ -181,7 +194,6 @@ describe('useReactToolScheduler', () => {
181
194
  });
182
195
  mockTool.shouldConfirmExecute.mockResolvedValue(null);
183
196
  const { result } = renderScheduler();
184
- const schedule = result.current[1];
185
197
  const request = {
186
198
  callId: 'call1',
187
199
  name: 'mockTool',
@@ -191,40 +203,15 @@ describe('useReactToolScheduler', () => {
191
203
  onComplete.mockImplementation((calls) => {
192
204
  completedToolCalls = calls;
193
205
  });
194
- act(() => {
195
- schedule(request, new AbortController().signal);
196
- });
197
- await act(async () => {
198
- await vi.advanceTimersByTimeAsync(0);
199
- });
200
- await act(async () => {
201
- await vi.advanceTimersByTimeAsync(0);
202
- });
203
- await act(async () => {
204
- await vi.advanceTimersByTimeAsync(0);
205
- });
206
+ await scheduleAndWaitForExecution(result.current[1], request);
206
207
  expect(mockTool.execute).toHaveBeenCalledWith(request.args);
207
- expect(onComplete).toHaveBeenCalledWith([
208
- expect.objectContaining({
209
- status: 'success',
210
- request,
211
- response: expect.objectContaining({
212
- resultDisplay: 'Formatted tool output',
213
- responseParts: [
214
- {
215
- functionResponse: {
216
- id: 'call1',
217
- name: 'mockTool',
218
- response: { output: 'Tool output' },
219
- },
220
- },
221
- ],
222
- }),
223
- }),
224
- ]);
225
208
  expect(completedToolCalls).toHaveLength(1);
226
209
  expect(completedToolCalls[0].status).toBe('success');
227
210
  expect(completedToolCalls[0].request).toBe(request);
211
+ if (completedToolCalls[0].status === 'success' ||
212
+ completedToolCalls[0].status === 'error') {
213
+ expect(completedToolCalls[0].response).toMatchSnapshot();
214
+ }
228
215
  });
229
216
  it('should clear previous tool calls when scheduling new ones', async () => {
230
217
  mockToolRegistry.getTool.mockReturnValue(mockTool);
@@ -314,95 +301,70 @@ describe('useReactToolScheduler', () => {
314
301
  resolveExecute({ llmContent: 'output', returnDisplay: 'display' });
315
302
  });
316
303
  });
317
- it('should handle tool not found', async () => {
318
- mockToolRegistry.getTool.mockReturnValue(undefined);
319
- const { result } = renderScheduler();
320
- const schedule = result.current[1];
321
- const request = {
322
- callId: 'call1',
323
- name: 'nonexistentTool',
324
- args: {},
325
- };
326
- let completedToolCalls = [];
327
- onComplete.mockImplementation((calls) => {
328
- completedToolCalls = calls;
329
- });
330
- act(() => {
331
- schedule(request, new AbortController().signal);
332
- });
333
- await act(async () => {
334
- await vi.advanceTimersByTimeAsync(0);
335
- });
336
- await act(async () => {
337
- await vi.advanceTimersByTimeAsync(0);
338
- });
339
- expect(completedToolCalls).toHaveLength(1);
340
- expect(completedToolCalls[0].status).toBe('error');
341
- expect(completedToolCalls[0].request).toBe(request);
342
- expect(completedToolCalls[0].response.error.message).toContain('Tool "nonexistentTool" not found in registry');
343
- expect(completedToolCalls[0].response.error.message).toContain('Did you mean one of:');
344
- });
345
- it('should handle error during shouldConfirmExecute', async () => {
346
- mockToolRegistry.getTool.mockReturnValue(mockTool);
347
- const confirmError = new Error('Confirmation check failed');
348
- mockTool.shouldConfirmExecute.mockRejectedValue(confirmError);
349
- const { result } = renderScheduler();
350
- const schedule = result.current[1];
351
- const request = {
352
- callId: 'call1',
353
- name: 'mockTool',
354
- args: {},
355
- };
356
- let completedToolCalls = [];
357
- onComplete.mockImplementation((calls) => {
358
- completedToolCalls = calls;
359
- });
360
- act(() => {
361
- schedule(request, new AbortController().signal);
362
- });
363
- await act(async () => {
364
- await vi.advanceTimersByTimeAsync(0);
365
- });
366
- await act(async () => {
367
- await vi.advanceTimersByTimeAsync(0);
368
- });
369
- expect(completedToolCalls).toHaveLength(1);
370
- expect(completedToolCalls[0].status).toBe('error');
371
- expect(completedToolCalls[0].request).toBe(request);
372
- expect(completedToolCalls[0].response.error).toBe(confirmError);
373
- });
374
- it('should handle error during execute', async () => {
375
- mockToolRegistry.getTool.mockReturnValue(mockTool);
376
- mockTool.shouldConfirmExecute.mockResolvedValue(null);
377
- const execError = new Error('Execution failed');
378
- mockTool.execute.mockRejectedValue(execError);
304
+ it.each([
305
+ {
306
+ desc: 'tool not found',
307
+ setup: () => {
308
+ mockToolRegistry.getTool.mockReturnValue(undefined);
309
+ },
310
+ request: {
311
+ callId: 'call1',
312
+ name: 'nonexistentTool',
313
+ args: {},
314
+ },
315
+ expectedErrorContains: [
316
+ 'Tool "nonexistentTool" not found in registry',
317
+ 'Did you mean one of:',
318
+ ],
319
+ },
320
+ {
321
+ desc: 'error during shouldConfirmExecute',
322
+ setup: () => {
323
+ mockToolRegistry.getTool.mockReturnValue(mockTool);
324
+ const confirmError = new Error('Confirmation check failed');
325
+ mockTool.shouldConfirmExecute.mockRejectedValue(confirmError);
326
+ },
327
+ request: {
328
+ callId: 'call1',
329
+ name: 'mockTool',
330
+ args: {},
331
+ },
332
+ expectedError: new Error('Confirmation check failed'),
333
+ },
334
+ {
335
+ desc: 'error during execute',
336
+ setup: () => {
337
+ mockToolRegistry.getTool.mockReturnValue(mockTool);
338
+ mockTool.shouldConfirmExecute.mockResolvedValue(null);
339
+ const execError = new Error('Execution failed');
340
+ mockTool.execute.mockRejectedValue(execError);
341
+ },
342
+ request: {
343
+ callId: 'call1',
344
+ name: 'mockTool',
345
+ args: {},
346
+ },
347
+ expectedError: new Error('Execution failed'),
348
+ },
349
+ ])('should handle $desc', async ({ setup, request, expectedErrorContains, expectedError }) => {
350
+ setup();
379
351
  const { result } = renderScheduler();
380
- const schedule = result.current[1];
381
- const request = {
382
- callId: 'call1',
383
- name: 'mockTool',
384
- args: {},
385
- };
386
352
  let completedToolCalls = [];
387
353
  onComplete.mockImplementation((calls) => {
388
354
  completedToolCalls = calls;
389
355
  });
390
- act(() => {
391
- schedule(request, new AbortController().signal);
392
- });
393
- await act(async () => {
394
- await vi.advanceTimersByTimeAsync(0);
395
- });
396
- await act(async () => {
397
- await vi.advanceTimersByTimeAsync(0);
398
- });
399
- await act(async () => {
400
- await vi.advanceTimersByTimeAsync(0);
401
- });
356
+ await scheduleAndWaitForExecution(result.current[1], request);
402
357
  expect(completedToolCalls).toHaveLength(1);
403
358
  expect(completedToolCalls[0].status).toBe('error');
404
359
  expect(completedToolCalls[0].request).toBe(request);
405
- expect(completedToolCalls[0].response.error).toBe(execError);
360
+ if (expectedErrorContains) {
361
+ expectedErrorContains.forEach((errorText) => {
362
+ expect(completedToolCalls[0].response.error.message).toContain(errorText);
363
+ });
364
+ }
365
+ if (expectedError) {
366
+ expect(completedToolCalls[0].response.error.message).toBe(expectedError.message);
367
+ }
406
368
  });
407
369
  it('should handle tool requiring confirmation - approved', async () => {
408
370
  mockToolRegistry.getTool.mockReturnValue(mockToolRequiresConfirmation);
@@ -421,9 +383,7 @@ describe('useReactToolScheduler', () => {
421
383
  act(() => {
422
384
  schedule(request, new AbortController().signal);
423
385
  });
424
- await act(async () => {
425
- await vi.advanceTimersByTimeAsync(0);
426
- });
386
+ await advanceAndSettle();
427
387
  const waitingCall = result.current[0][0];
428
388
  expect(waitingCall.status).toBe('awaiting_approval');
429
389
  capturedOnConfirmForTest = waitingCall.confirmationDetails?.onConfirm;
@@ -431,33 +391,18 @@ describe('useReactToolScheduler', () => {
431
391
  await act(async () => {
432
392
  await capturedOnConfirmForTest?.(ToolConfirmationOutcome.ProceedOnce);
433
393
  });
434
- await act(async () => {
435
- await vi.advanceTimersByTimeAsync(0);
436
- });
437
- await act(async () => {
438
- await vi.advanceTimersByTimeAsync(0);
439
- });
440
- await act(async () => {
441
- await vi.advanceTimersByTimeAsync(0);
442
- });
394
+ await advanceAndSettle();
395
+ await advanceAndSettle();
396
+ await advanceAndSettle();
443
397
  expect(mockOnUserConfirmForToolConfirmation).toHaveBeenCalledWith(ToolConfirmationOutcome.ProceedOnce);
444
398
  expect(mockToolRequiresConfirmation.execute).toHaveBeenCalled();
445
- expect(onComplete).toHaveBeenCalledWith([
446
- expect.objectContaining({
447
- status: 'success',
448
- request,
449
- response: expect.objectContaining({
450
- resultDisplay: 'Confirmed display',
451
- responseParts: expect.arrayContaining([
452
- expect.objectContaining({
453
- functionResponse: expect.objectContaining({
454
- response: { output: expectedOutput },
455
- }),
456
- }),
457
- ]),
458
- }),
459
- }),
460
- ]);
399
+ const completedCalls = onComplete.mock.calls[0][0];
400
+ expect(completedCalls[0].status).toBe('success');
401
+ expect(completedCalls[0].request).toBe(request);
402
+ if (completedCalls[0].status === 'success' ||
403
+ completedCalls[0].status === 'error') {
404
+ expect(completedCalls[0].response).toMatchSnapshot();
405
+ }
461
406
  });
462
407
  it('should handle tool requiring confirmation - cancelled by user', async () => {
463
408
  mockToolRegistry.getTool.mockReturnValue(mockToolRequiresConfirmation);
@@ -471,9 +416,7 @@ describe('useReactToolScheduler', () => {
471
416
  act(() => {
472
417
  schedule(request, new AbortController().signal);
473
418
  });
474
- await act(async () => {
475
- await vi.advanceTimersByTimeAsync(0);
476
- });
419
+ await advanceAndSettle();
477
420
  const waitingCall = result.current[0][0];
478
421
  expect(waitingCall.status).toBe('awaiting_approval');
479
422
  capturedOnConfirmForTest = waitingCall.confirmationDetails?.onConfirm;
@@ -481,30 +424,17 @@ describe('useReactToolScheduler', () => {
481
424
  await act(async () => {
482
425
  await capturedOnConfirmForTest?.(ToolConfirmationOutcome.Cancel);
483
426
  });
484
- await act(async () => {
485
- await vi.advanceTimersByTimeAsync(0);
486
- });
487
- await act(async () => {
488
- await vi.advanceTimersByTimeAsync(0);
489
- });
427
+ await advanceAndSettle();
428
+ await advanceAndSettle();
490
429
  expect(mockOnUserConfirmForToolConfirmation).toHaveBeenCalledWith(ToolConfirmationOutcome.Cancel);
491
- expect(onComplete).toHaveBeenCalledWith([
492
- expect.objectContaining({
493
- status: 'cancelled',
494
- request,
495
- response: expect.objectContaining({
496
- responseParts: expect.arrayContaining([
497
- expect.objectContaining({
498
- functionResponse: expect.objectContaining({
499
- response: expect.objectContaining({
500
- error: '[Operation Cancelled] Reason: User cancelled the operation.',
501
- }),
502
- }),
503
- }),
504
- ]),
505
- }),
506
- }),
507
- ]);
430
+ const completedCalls = onComplete.mock.calls[0][0];
431
+ expect(completedCalls[0].status).toBe('cancelled');
432
+ expect(completedCalls[0].request).toBe(request);
433
+ if (completedCalls[0].status === 'success' ||
434
+ completedCalls[0].status === 'error' ||
435
+ completedCalls[0].status === 'cancelled') {
436
+ expect(completedCalls[0].response).toMatchSnapshot();
437
+ }
508
438
  });
509
439
  it('should handle live output updates', async () => {
510
440
  mockToolRegistry.getTool.mockReturnValue(mockToolWithLiveOutput);
@@ -519,60 +449,40 @@ describe('useReactToolScheduler', () => {
519
449
  });
520
450
  mockToolWithLiveOutput.shouldConfirmExecute.mockResolvedValue(null);
521
451
  const { result } = renderScheduler();
522
- const schedule = result.current[1];
523
452
  const request = {
524
453
  callId: 'liveCall',
525
454
  name: 'mockToolWithLiveOutput',
526
455
  args: {},
527
456
  };
528
457
  act(() => {
529
- schedule(request, new AbortController().signal);
530
- });
531
- await act(async () => {
532
- await vi.advanceTimersByTimeAsync(0);
458
+ result.current[1](request, new AbortController().signal);
533
459
  });
460
+ await advanceAndSettle();
534
461
  expect(liveUpdateFn).toBeDefined();
535
462
  expect(result.current[0][0].status).toBe('executing');
536
463
  await act(async () => {
537
464
  liveUpdateFn?.('Live output 1');
538
465
  });
539
- await act(async () => {
540
- await vi.advanceTimersByTimeAsync(0);
541
- });
466
+ await advanceAndSettle();
542
467
  await act(async () => {
543
468
  liveUpdateFn?.('Live output 2');
544
469
  });
545
- await act(async () => {
546
- await vi.advanceTimersByTimeAsync(0);
547
- });
470
+ await advanceAndSettle();
548
471
  act(() => {
549
472
  resolveExecutePromise({
550
473
  llmContent: 'Final output',
551
474
  returnDisplay: 'Final display',
552
475
  });
553
476
  });
554
- await act(async () => {
555
- await vi.advanceTimersByTimeAsync(0);
556
- });
557
- await act(async () => {
558
- await vi.advanceTimersByTimeAsync(0);
559
- });
560
- expect(onComplete).toHaveBeenCalledWith([
561
- expect.objectContaining({
562
- status: 'success',
563
- request,
564
- response: expect.objectContaining({
565
- resultDisplay: 'Final display',
566
- responseParts: expect.arrayContaining([
567
- expect.objectContaining({
568
- functionResponse: expect.objectContaining({
569
- response: { output: 'Final output' },
570
- }),
571
- }),
572
- ]),
573
- }),
574
- }),
575
- ]);
477
+ await advanceAndSettle();
478
+ await advanceAndSettle();
479
+ const completedCalls = onComplete.mock.calls[0][0];
480
+ expect(completedCalls[0].status).toBe('success');
481
+ expect(completedCalls[0].request).toBe(request);
482
+ if (completedCalls[0].status === 'success' ||
483
+ completedCalls[0].status === 'error') {
484
+ expect(completedCalls[0].response).toMatchSnapshot();
485
+ }
576
486
  expect(result.current[0]).toEqual([]);
577
487
  });
578
488
  it('should schedule and execute multiple tool calls', async () => {
@@ -703,7 +613,6 @@ describe('useReactToolScheduler', () => {
703
613
  response: expect.objectContaining({ resultDisplay: 'done display' }),
704
614
  }),
705
615
  ]);
706
- // Wait for request2 to complete
707
616
  await act(async () => {
708
617
  await vi.advanceTimersByTimeAsync(50);
709
618
  await vi.advanceTimersByTimeAsync(0);