dsh-cliworker-now 0.7.6 → 0.7.8

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 (181) hide show
  1. package/README.en.md +53 -11
  2. package/README.md +56 -11
  3. package/lib/account-models.mjs +49 -18
  4. package/lib/client.js +1221 -151
  5. package/lib/client.js.map +1 -1
  6. package/lib/grok-catalog.mjs +2 -2
  7. package/lib/hermes-native-entry.py +48 -13
  8. package/lib/hermes-nous-refresh.py +331 -0
  9. package/lib/index.js +9469 -6030
  10. package/lib/index.js.map +1 -1
  11. package/lib/native-launch.mjs +62 -7
  12. package/lib/native-spawn.mjs +32 -0
  13. package/lib/pi-installation.mjs +27 -3
  14. package/lib/pi-native-catalog.mjs +17 -7
  15. package/lib/pi-omp-bridge.mjs +2 -2
  16. package/lib/pi-omp-refresh.mjs +3 -3
  17. package/lib/private-launch.mjs +6 -2
  18. package/lib/terminal-bridge.mjs +2 -2
  19. package/lib/typert.host.js +265 -25
  20. package/lib/typert.remote-client.d.ts +8 -0
  21. package/lib/typert.remote-client.d.ts.map +1 -1
  22. package/lib/typert.remote-client.js +241 -25
  23. package/lib/types/client/account-query-queue.d.ts +16 -0
  24. package/lib/types/client/account-query-queue.js +61 -0
  25. package/lib/types/client/account-query-queue.js.map +1 -0
  26. package/lib/types/client/account-terminal.d.ts +6 -2
  27. package/lib/types/client/account-terminal.js +260 -31
  28. package/lib/types/client/account-terminal.js.map +1 -1
  29. package/lib/types/client/cli-executable-settings.d.ts +13 -0
  30. package/lib/types/client/cli-executable-settings.js +128 -0
  31. package/lib/types/client/cli-executable-settings.js.map +1 -0
  32. package/lib/types/client/management-styles.d.ts +1 -1
  33. package/lib/types/client/management-styles.js +4 -0
  34. package/lib/types/client/management-styles.js.map +1 -1
  35. package/lib/types/client/settings-dialog.js +196 -80
  36. package/lib/types/client/settings-dialog.js.map +1 -1
  37. package/lib/types/client/styles.d.ts +1 -1
  38. package/lib/types/client/styles.js +18 -16
  39. package/lib/types/client/styles.js.map +1 -1
  40. package/lib/types/client/zcode-login-link-provider.d.ts +9 -0
  41. package/lib/types/client/zcode-login-link-provider.js +105 -0
  42. package/lib/types/client/zcode-login-link-provider.js.map +1 -0
  43. package/lib/types/client/zcode-login-link.d.ts +16 -0
  44. package/lib/types/client/zcode-login-link.js +194 -0
  45. package/lib/types/client/zcode-login-link.js.map +1 -0
  46. package/lib/types/host/account-models.d.mts +10 -2
  47. package/lib/types/host/account-models.mjs +49 -18
  48. package/lib/types/host/accounts.d.ts +3 -2
  49. package/lib/types/host/accounts.js +168 -29
  50. package/lib/types/host/accounts.js.map +1 -1
  51. package/lib/types/host/adapters.d.ts +3 -1
  52. package/lib/types/host/adapters.js +138 -11
  53. package/lib/types/host/adapters.js.map +1 -1
  54. package/lib/types/host/agy-background-environment.d.ts +2 -0
  55. package/lib/types/host/agy-background-environment.js +7 -0
  56. package/lib/types/host/agy-background-environment.js.map +1 -0
  57. package/lib/types/host/agy-models.d.ts +2 -1
  58. package/lib/types/host/agy-models.js +6 -6
  59. package/lib/types/host/agy-models.js.map +1 -1
  60. package/lib/types/host/agy-windows-account.d.ts +14 -0
  61. package/lib/types/host/agy-windows-account.js +104 -0
  62. package/lib/types/host/agy-windows-account.js.map +1 -0
  63. package/lib/types/host/authorized-catalog.js +13 -4
  64. package/lib/types/host/authorized-catalog.js.map +1 -1
  65. package/lib/types/host/claude-native-oauth.d.ts +17 -0
  66. package/lib/types/host/claude-native-oauth.js +274 -0
  67. package/lib/types/host/claude-native-oauth.js.map +1 -0
  68. package/lib/types/host/claude-own-route.d.ts +45 -0
  69. package/lib/types/host/claude-own-route.js +375 -0
  70. package/lib/types/host/claude-own-route.js.map +1 -0
  71. package/lib/types/host/cli-account-binding.d.ts +2 -1
  72. package/lib/types/host/cli-account-binding.js +64 -21
  73. package/lib/types/host/cli-account-binding.js.map +1 -1
  74. package/lib/types/host/cli-executable-paths.d.ts +30 -0
  75. package/lib/types/host/cli-executable-paths.js +272 -0
  76. package/lib/types/host/cli-executable-paths.js.map +1 -0
  77. package/lib/types/host/codex-models.d.ts +3 -1
  78. package/lib/types/host/codex-models.js +41 -4
  79. package/lib/types/host/codex-models.js.map +1 -1
  80. package/lib/types/host/extended-adapters.d.ts +3 -2
  81. package/lib/types/host/extended-adapters.js +9 -7
  82. package/lib/types/host/extended-adapters.js.map +1 -1
  83. package/lib/types/host/first-party-models.d.ts +5 -0
  84. package/lib/types/host/first-party-models.js +173 -50
  85. package/lib/types/host/first-party-models.js.map +1 -1
  86. package/lib/types/host/hermes-accounts.js +68 -9
  87. package/lib/types/host/hermes-accounts.js.map +1 -1
  88. package/lib/types/host/hermes-adapter.d.ts +3 -0
  89. package/lib/types/host/hermes-adapter.js +13 -4
  90. package/lib/types/host/hermes-adapter.js.map +1 -1
  91. package/lib/types/host/hermes-installation.js +54 -35
  92. package/lib/types/host/hermes-installation.js.map +1 -1
  93. package/lib/types/host/hermes-models.js +21 -2
  94. package/lib/types/host/hermes-models.js.map +1 -1
  95. package/lib/types/host/hermes-native-entry.py +48 -13
  96. package/lib/types/host/hermes-nous-refresh.py +331 -0
  97. package/lib/types/host/hermes-nous.d.ts +5 -1
  98. package/lib/types/host/hermes-nous.js +5 -5
  99. package/lib/types/host/hermes-nous.js.map +1 -1
  100. package/lib/types/host/hermes-renewal.d.ts +27 -0
  101. package/lib/types/host/hermes-renewal.js +292 -0
  102. package/lib/types/host/hermes-renewal.js.map +1 -0
  103. package/lib/types/host/hermes-windows-installation.d.ts +5 -0
  104. package/lib/types/host/hermes-windows-installation.js +91 -0
  105. package/lib/types/host/hermes-windows-installation.js.map +1 -0
  106. package/lib/types/host/index.d.ts +12 -0
  107. package/lib/types/host/index.js +138 -8
  108. package/lib/types/host/index.js.map +1 -1
  109. package/lib/types/host/kimi-accounts.d.ts +2 -0
  110. package/lib/types/host/kimi-accounts.js +4 -2
  111. package/lib/types/host/kimi-accounts.js.map +1 -1
  112. package/lib/types/host/kimi-oauth-models.d.ts +14 -0
  113. package/lib/types/host/kimi-oauth-models.js +246 -0
  114. package/lib/types/host/kimi-oauth-models.js.map +1 -0
  115. package/lib/types/host/mimo-metadata-cache.d.ts +22 -0
  116. package/lib/types/host/mimo-metadata-cache.js +121 -0
  117. package/lib/types/host/mimo-metadata-cache.js.map +1 -0
  118. package/lib/types/host/native-capability-cache.d.ts +11 -0
  119. package/lib/types/host/native-capability-cache.js +94 -0
  120. package/lib/types/host/native-capability-cache.js.map +1 -0
  121. package/lib/types/host/native-launch.mjs +62 -7
  122. package/lib/types/host/native-process.d.ts +3 -1
  123. package/lib/types/host/native-process.js +30 -5
  124. package/lib/types/host/native-process.js.map +1 -1
  125. package/lib/types/host/native-spawn.mjs +32 -0
  126. package/lib/types/host/opencode-native.js +13 -0
  127. package/lib/types/host/opencode-native.js.map +1 -1
  128. package/lib/types/host/pi-installation.d.mts +1 -1
  129. package/lib/types/host/pi-installation.mjs +27 -3
  130. package/lib/types/host/pi-omp-adapter.js +17 -3
  131. package/lib/types/host/pi-omp-adapter.js.map +1 -1
  132. package/lib/types/host/pi-omp-native.js +5 -3
  133. package/lib/types/host/pi-omp-native.js.map +1 -1
  134. package/lib/types/host/pi-omp-refresh.mjs +3 -3
  135. package/lib/types/host/private-launch.mjs +23 -0
  136. package/lib/types/host/process.d.ts +3 -0
  137. package/lib/types/host/process.js +3 -1
  138. package/lib/types/host/process.js.map +1 -1
  139. package/lib/types/host/routing.js +25 -2
  140. package/lib/types/host/routing.js.map +1 -1
  141. package/lib/types/host/runtime.js +21 -5
  142. package/lib/types/host/runtime.js.map +1 -1
  143. package/lib/types/host/settings-catalog-cache.d.ts +28 -0
  144. package/lib/types/host/settings-catalog-cache.js +189 -0
  145. package/lib/types/host/settings-catalog-cache.js.map +1 -0
  146. package/lib/types/host/windows-account-bootstrap.ps1 +44 -0
  147. package/lib/types/host/windows-account-launch.mjs +47 -0
  148. package/lib/types/host/windows-account-owner.ps1 +137 -0
  149. package/lib/types/host/windows-account-stdio.mjs +19 -0
  150. package/lib/types/host/windows-account-terminal.d.ts +17 -0
  151. package/lib/types/host/windows-account-terminal.js +208 -0
  152. package/lib/types/host/windows-account-terminal.js.map +1 -0
  153. package/lib/types/host/windows-agy-account.ps1 +81 -0
  154. package/lib/types/host/windows-cli-installation.d.ts +35 -0
  155. package/lib/types/host/windows-cli-installation.js +164 -0
  156. package/lib/types/host/windows-cli-installation.js.map +1 -0
  157. package/lib/types/host/windows-codex-launch.d.ts +9 -0
  158. package/lib/types/host/windows-codex-launch.js +216 -0
  159. package/lib/types/host/windows-codex-launch.js.map +1 -0
  160. package/lib/types/host/windows-desktop-cli-installation.d.ts +20 -0
  161. package/lib/types/host/windows-desktop-cli-installation.js +420 -0
  162. package/lib/types/host/windows-desktop-cli-installation.js.map +1 -0
  163. package/lib/types/host/windows-hidden-launch.mjs +51 -0
  164. package/lib/types/host/windows-hidden-process.d.ts +12 -0
  165. package/lib/types/host/windows-hidden-process.js +116 -0
  166. package/lib/types/host/windows-hidden-process.js.map +1 -0
  167. package/lib/types/host/zcode-adapter.js +5 -1
  168. package/lib/types/host/zcode-adapter.js.map +1 -1
  169. package/lib/types/host/zcode-grok-accounts.d.ts +3 -1
  170. package/lib/types/host/zcode-grok-accounts.js +60 -11
  171. package/lib/types/host/zcode-grok-accounts.js.map +1 -1
  172. package/lib/types/shared/accounts.d.ts +4 -0
  173. package/lib/types/shared/cli-settings.d.ts +8 -0
  174. package/lib/windows-account-bootstrap.ps1 +44 -0
  175. package/lib/windows-account-launch.mjs +47 -0
  176. package/lib/windows-account-owner.ps1 +137 -0
  177. package/lib/windows-account-stdio.mjs +19 -0
  178. package/lib/windows-agy-account.ps1 +81 -0
  179. package/lib/windows-hidden-launch.mjs +51 -0
  180. package/lib/zcode-resume.mjs +2 -2
  181. package/package.json +2 -2
@@ -1,4 +1,6 @@
1
+ import { readClaudeOwnRoute, readClaudeOfficialAccountRoute, claudeNativeSettingsArguments, claudeLaunchEnvironment, prepareClaudeWorkerLaunch, claudeRouteIdentity, ClaudeOwnRouteError, } from "./claude-own-route.js";
1
2
  import { isExtendedCli } from "./extended-adapters.js";
3
+ import { nativeAgyAccountIdentity } from "./agy-windows-account.js";
2
4
  import { firstPartyEnvironment, MimoConfigurationError } from "./first-party-models.js";
3
5
  import { randomUUID } from 'node:crypto';
4
6
  import { StringDecoder } from 'node:string_decoder';
@@ -6,7 +8,7 @@ import { stripVTControlCharacters } from 'node:util';
6
8
  import { resolveCliExecutable } from "./adapters.js";
7
9
  import { projectDirectory, ProcessCleanupUnconfirmedError, } from "./process.js";
8
10
  import { CLI_IDS } from "../shared/types.js";
9
- import { accountEmail, localAccountIdentity, } from "./account-identity.js";
11
+ import { accountEmail, } from "./account-identity.js";
10
12
  import { readCodexAccount } from "./codex-account.js";
11
13
  import { homedir } from 'node:os';
12
14
  import { join } from 'node:path';
@@ -19,6 +21,10 @@ import { preparePiOmpAccountTerminal } from "./pi-omp-accounts.js";
19
21
  import { readKimiAccount, KIMI_MANAGE_LOGIN, prepareKimiAccountDirectory } from "./kimi-accounts.js";
20
22
  import { readMimoAccount } from "./mimo-configuration.js";
21
23
  import { prepareMimoAccountTerminal } from "./first-party-account-context.js";
24
+ import { spawnAccountTerminal, WindowsAccountTerminalError } from "./windows-account-terminal.js";
25
+ import { WindowsCliInstallationError, WindowsCliNotFoundError } from "./windows-cli-installation.js";
26
+ import { effectiveHermesHome } from "./hermes-account-context.js";
27
+ import { ensureHermesNousFresh, HermesRenewalError, reserveHermesAccount } from "./hermes-renewal.js";
22
28
  const STATUS_TIMEOUT = 10_000;
23
29
  const STARTUP_TIMEOUT = 30_000;
24
30
  const TERMINAL_TIMEOUT = 30 * 60_000;
@@ -48,6 +54,16 @@ const instructionFor = (cli, action) => {
48
54
  : '按 CLI 原生流程退出登录。';
49
55
  };
50
56
  const actionsFor = (cli, config) => {
57
+ if (cli === 'claude')
58
+ return [
59
+ {
60
+ id: 'login',
61
+ label: '官方登录 / 切换账号',
62
+ description: '打开 Claude 原生官方登录;保留本地代理设置。',
63
+ },
64
+ { id: 'logout', label: '退出官方账号', description: '仅退出 Claude 官方账号;本地代理设置保留。' },
65
+ { id: 'manage', label: '官方账号终端', description: '打开 Claude 官方账号原生终端。' },
66
+ ];
51
67
  if (cli === 'pi' || cli === 'omp' || cli === 'hermes')
52
68
  return [
53
69
  { id: 'login', label: '登录设置', description: '打开原生终端登录界面,选择提供商后由你完成授权。' },
@@ -101,8 +117,10 @@ function summarize(cli, raw, exitCode) {
101
117
  if (exitCode === 0 && value.loggedIn === true) {
102
118
  // Claude's installed auth/status implementation only returns email for
103
119
  // claude.ai sessions. Environment OAuth tokens do not identify an account.
104
- const oauth = value.authMethod === 'oauth_token' || value.authMethod === 'claude.ai';
120
+ const oauth = value.authMethod === 'claude.ai';
105
121
  const api = value.authMethod === 'api_key' || value.authMethod === 'api_key_helper';
122
+ if (value.authMethod === 'oauth_token')
123
+ return { state: 'configured', summary: 'CLI 已配置令牌,账号类型待确认', verification: 'cli' };
106
124
  return {
107
125
  state: 'authenticated',
108
126
  summary: api ? 'API 登录' : oauth ? '已通过 OAuth 登录' : 'CLI 报告已登录',
@@ -152,20 +170,21 @@ export class AccountManager {
152
170
  sessions = new Map();
153
171
  reserved = new Set();
154
172
  unsafeQueries = new Set();
173
+ unsafeTerminals = new Map();
155
174
  statusQueries = new Map();
156
175
  pending = new Set();
157
176
  parents = new Map();
158
177
  parentClosings = new Map();
159
178
  controller = new AbortController();
160
179
  closing;
161
- constructor(backend, config, identity = localAccountIdentity()) {
180
+ constructor(backend, config, identity = nativeAgyAccountIdentity(backend, config)) {
162
181
  this.backend = backend;
163
182
  this.config = config;
164
183
  this.identity = identity;
165
184
  }
166
185
  isBusy(cli) {
167
186
  validateCli(cli);
168
- return this.reserved.has(cli) || this.unsafeQueries.has(cli);
187
+ return this.reserved.has(cli) || this.unsafeQueries.has(cli) || this.unsafeTerminals.has(cli);
169
188
  }
170
189
  async status(cli, cwd, signal) {
171
190
  validateCli(cli);
@@ -220,6 +239,14 @@ export class AccountManager {
220
239
  }
221
240
  }
222
241
  async readStatus(cli, cwd, signal) {
242
+ if (this.unsafeTerminals.has(cli))
243
+ return {
244
+ cli,
245
+ installed: true,
246
+ state: 'unavailable',
247
+ summary: '账号终端尚未确认完全退出,请重启应用',
248
+ actions: [],
249
+ };
223
250
  if (this.unsafeQueries.has(cli))
224
251
  return {
225
252
  cli,
@@ -244,8 +271,19 @@ export class AccountManager {
244
271
  ...(await readMimoAccount(control)),
245
272
  actions: this.backend.spawnTerminal ? actionsFor(cli, this.config) : [],
246
273
  };
247
- if (cli === 'hermes')
274
+ if (cli === 'hermes') {
248
275
  await verifyHermesExecutable(executable, control);
276
+ const local = await readHermesAccount(this.config, control);
277
+ if (local.logins?.some((login) => login.providerLabel === 'Nous') ||
278
+ local.summary === 'Hermes 登录已保存,等待自动续期')
279
+ await ensureHermesNousFresh({
280
+ home: effectiveHermesHome(this.config),
281
+ executable,
282
+ backend: this.backend,
283
+ signal: control,
284
+ graceMs: this.config.graceMs,
285
+ });
286
+ }
249
287
  if (isExtendedCli(cli)) {
250
288
  const identity = await abortable(cli === 'zcode' || cli === 'grok'
251
289
  ? zcodeGrokAccountStatus(cli, this.config, control)
@@ -292,6 +330,7 @@ export class AccountManager {
292
330
  actions: this.backend.spawnTerminal ? actionsFor(cli, this.config) : [],
293
331
  };
294
332
  }
333
+ const claudeRoute = cli === 'claude' ? await readClaudeOwnRoute(cwd, control) : undefined;
295
334
  const argv = cli === 'codex'
296
335
  ? ['login', 'status']
297
336
  : cli === 'claude'
@@ -299,14 +338,27 @@ export class AccountManager {
299
338
  : cli === 'kimi'
300
339
  ? ['provider', 'list', '--json']
301
340
  : ['auth', 'whoami'];
302
- const child = this.backend.spawn({
303
- argv: [executable, ...argv],
304
- env: firstPartyEnvironment(cli),
305
- cwd,
306
- stdio: { stdin: 'ignore', stdout: 'pipe', stderr: 'pipe' },
307
- graceMs: this.config.graceMs,
308
- signal: control,
309
- });
341
+ const launch = claudeRoute
342
+ ? await prepareClaudeWorkerLaunch(claudeRoute, [executable, ...argv], this.config.stateDirectory ??
343
+ join(process.env.DSH_HOME ?? join(homedir(), '.dsh'), 'cliworker-now'), control)
344
+ : { argv: [executable, ...argv], env: firstPartyEnvironment(cli) };
345
+ let child;
346
+ try {
347
+ control.throwIfAborted();
348
+ child = this.backend.spawn({
349
+ argv: launch.argv,
350
+ env: launch.env,
351
+ cwd,
352
+ stdio: { stdin: 'ignore', stdout: 'pipe', stderr: 'pipe' },
353
+ graceMs: this.config.graceMs,
354
+ signal: control,
355
+ });
356
+ }
357
+ catch (error) {
358
+ if ('cleanup' in launch)
359
+ await launch.cleanup?.();
360
+ throw error;
361
+ }
310
362
  void child.done.catch(() => undefined);
311
363
  let raw = '', bytes = 0;
312
364
  const read = async (stream) => {
@@ -325,9 +377,11 @@ export class AccountManager {
325
377
  const readers = [read(child.stdout), read(child.stderr)];
326
378
  try {
327
379
  const [outcome] = await abortable(Promise.all([child.done, ...readers]), control);
328
- const status = cli === 'kimi' && outcome.exitCode === 0
329
- ? await readKimiAccount(raw, control)
330
- : summarize(cli, raw, outcome.exitCode);
380
+ const status = claudeRoute
381
+ ? claudeRouteIdentity(claudeRoute, raw, outcome.exitCode)
382
+ : cli === 'kimi' && outcome.exitCode === 0
383
+ ? await readKimiAccount(raw, control)
384
+ : summarize(cli, raw, outcome.exitCode);
331
385
  return {
332
386
  cli,
333
387
  installed,
@@ -350,6 +404,8 @@ export class AccountManager {
350
404
  }
351
405
  await Promise.allSettled([child.done, ...readers]);
352
406
  raw = '';
407
+ if ('cleanup' in launch)
408
+ await launch.cleanup?.();
353
409
  }
354
410
  }
355
411
  catch (error) {
@@ -366,10 +422,39 @@ export class AccountManager {
366
422
  if (signal.aborted || this.controller.signal.aborted)
367
423
  throw new Error('账号状态查询已取消');
368
424
  const code = error?.code;
425
+ if (error instanceof WindowsCliNotFoundError)
426
+ return { cli, installed: false, state: 'unconfigured', summary: error.message, actions: [] };
427
+ if (error instanceof WindowsCliInstallationError)
428
+ return { cli, installed: error.installed, state: 'unavailable', summary: error.message, actions: [] };
429
+ if (error instanceof ClaudeOwnRouteError)
430
+ return {
431
+ cli,
432
+ installed,
433
+ state: 'unavailable',
434
+ summary: error.message,
435
+ actions: this.backend.spawnTerminal ? actionsFor(cli, this.config) : [],
436
+ };
369
437
  if (error instanceof MimoConfigurationError)
370
438
  return { cli, installed, state: 'unavailable', summary: error.message, actions: [] };
371
439
  if (error instanceof HermesExecutableError)
372
440
  return { cli, installed, state: 'unavailable', summary: error.message, actions: [] };
441
+ if (error instanceof HermesRenewalError)
442
+ return {
443
+ cli,
444
+ installed,
445
+ state: error.state === 'relogin' ? 'unauthenticated' : 'unavailable',
446
+ verification: 'local',
447
+ summary: error.message,
448
+ actions: actionsFor(cli, this.config),
449
+ };
450
+ if (code === 'CLI_LAUNCHER_UNSUPPORTED')
451
+ return {
452
+ cli,
453
+ installed: true,
454
+ state: 'unavailable',
455
+ summary: 'CLI 启动入口无法确认,请配置原生程序或固定 Node/Bun 入口',
456
+ actions: [],
457
+ };
373
458
  if (code === 'CLI_IDENTITY_MISMATCH')
374
459
  return {
375
460
  cli,
@@ -403,6 +488,8 @@ export class AccountManager {
403
488
  }
404
489
  }
405
490
  hasCustomExecutable(cli) {
491
+ if (cli !== 'harness' && this.config.cliExecutablePaths?.read(cli)?.mode === 'manual')
492
+ return true;
406
493
  if (cli === 'antigravity')
407
494
  return this.config.executable !== 'agy';
408
495
  if (cli === 'harness')
@@ -410,7 +497,7 @@ export class AccountManager {
410
497
  const configured = this.config[`${cli}Executable`];
411
498
  return !!configured && configured !== cli;
412
499
  }
413
- start(parent, cli, action, cwd, signal, source) {
500
+ start(parent, cli, action, cwd, signal, source, provider) {
414
501
  validateCli(cli);
415
502
  if (!ACTIONS.includes(action))
416
503
  throw new Error('不支持的账号操作');
@@ -419,6 +506,12 @@ export class AccountManager {
419
506
  action !== 'logout' ||
420
507
  !['pi', 'omp', 'hermes'].includes(cli)))
421
508
  throw new Error('不支持的账号来源');
509
+ if (provider !== undefined &&
510
+ (cli !== 'zcode' ||
511
+ action !== 'login' ||
512
+ source !== undefined ||
513
+ !['bigmodel', 'zai'].includes(provider)))
514
+ throw new Error('不支持的 ZCode 授权来源');
422
515
  if (!parent || parent.length > 512)
423
516
  throw new Error('无效的父会话');
424
517
  this.controller.signal.throwIfAborted();
@@ -428,6 +521,8 @@ export class AccountManager {
428
521
  throw new Error('此版本 CLI 未提供终端登录或账号管理入口');
429
522
  if (!this.backend.spawnTerminal)
430
523
  throw new Error('当前宿主不支持交互终端');
524
+ if (this.unsafeTerminals.has(cli))
525
+ throw new Error('账号终端尚未确认完全退出,请重启应用');
431
526
  if (this.unsafeQueries.has(cli))
432
527
  throw new ProcessCleanupUnconfirmedError();
433
528
  if (this.reserved.has(cli))
@@ -442,12 +537,12 @@ export class AccountManager {
442
537
  scope = { controller: new AbortController(), pending: new Set() };
443
538
  this.parents.set(parent, scope);
444
539
  }
445
- const operation = this.track(this.startSession(parent, cli, action, directory, signal, scope, source));
540
+ const operation = this.track(this.startSession(parent, cli, action, directory, signal, scope, source, provider));
446
541
  scope.pending.add(operation);
447
542
  void operation.finally(() => scope.pending.delete(operation)).catch(() => undefined);
448
543
  return operation;
449
544
  }
450
- async startSession(parent, cli, action, cwd, signal, scope, source) {
545
+ async startSession(parent, cli, action, cwd, signal, scope, source, provider) {
451
546
  const timeout = new AbortController();
452
547
  const timer = setTimeout(() => timeout.abort(), STARTUP_TIMEOUT);
453
548
  timer.unref?.();
@@ -471,7 +566,23 @@ export class AccountManager {
471
566
  env: firstPartyEnvironment(cli),
472
567
  cwd,
473
568
  };
474
- if (cli === 'kimi') {
569
+ if (cli === 'claude') {
570
+ const claudeAccountRoute = await readClaudeOfficialAccountRoute(cwd, startup);
571
+ startup.throwIfAborted();
572
+ // Login/logout always address the native official account; proxy settings remain untouched.
573
+ launch.argv = [
574
+ executable,
575
+ ...claudeNativeSettingsArguments(claudeAccountRoute.configDirectory, claudeAccountRoute.suppressedEnvironment),
576
+ ...argumentsFor(cli, action),
577
+ ...(action === 'login' ? ['--claudeai'] : []),
578
+ ];
579
+ launch.env = claudeLaunchEnvironment();
580
+ instruction =
581
+ action === 'logout'
582
+ ? '退出 Claude 官方账号;本地代理设置保留。'
583
+ : '在原生终端登录 Claude 官方账号;本地代理设置保留。';
584
+ }
585
+ else if (cli === 'kimi') {
475
586
  if (action === 'login') {
476
587
  const current = await this.readStatus(cli, cwd, startup);
477
588
  startup.throwIfAborted();
@@ -494,7 +605,7 @@ export class AccountManager {
494
605
  release = prepared.cleanup;
495
606
  }
496
607
  else if (cli === 'zcode' || cli === 'grok') {
497
- const prepared = await zcodeGrokAccountLaunch(cli, action, executable, this.config, this.backend, startup);
608
+ const prepared = await zcodeGrokAccountLaunch(cli, action, executable, this.config, this.backend, startup, { loginProvider: provider });
498
609
  launch = prepared;
499
610
  instruction = prepared.instruction;
500
611
  }
@@ -515,10 +626,23 @@ export class AccountManager {
515
626
  release = prepared.cleanup;
516
627
  }
517
628
  else if (cli === 'hermes') {
629
+ const oldHome = effectiveHermesHome(this.config);
630
+ const releases = [await reserveHermesAccount(oldHome, startup)];
631
+ release = () => {
632
+ for (const free of releases)
633
+ free();
634
+ };
518
635
  const prepared = await prepareHermesAccount(action, executable, cwd, this.config, startup, source);
636
+ const cleanup = release;
637
+ release = async () => {
638
+ await prepared.cleanup();
639
+ await cleanup();
640
+ };
641
+ const selectedHome = effectiveHermesHome(this.config);
642
+ if (selectedHome !== oldHome)
643
+ releases.push(await reserveHermesAccount(selectedHome, startup));
519
644
  launch = prepared;
520
645
  instruction = prepared.instruction;
521
- release = prepared.cleanup;
522
646
  }
523
647
  else if (cli === 'opencode') {
524
648
  const prepared = await prepareOpenCodeAccount(executable, action, this.config, startup);
@@ -527,7 +651,7 @@ export class AccountManager {
527
651
  release = prepared.cleanup;
528
652
  }
529
653
  startup.throwIfAborted();
530
- allocation = this.backend.spawnTerminal({
654
+ allocation = spawnAccountTerminal(this.backend, {
531
655
  ...launch,
532
656
  rows: 24,
533
657
  cols: 80,
@@ -564,10 +688,14 @@ export class AccountManager {
564
688
  return session;
565
689
  }, async (error) => {
566
690
  try {
567
- await release?.();
691
+ if (!(error instanceof ProcessCleanupUnconfirmedError))
692
+ await release?.();
568
693
  }
569
694
  finally {
570
- this.reserved.delete(cli);
695
+ if (error instanceof ProcessCleanupUnconfirmedError)
696
+ this.unsafeTerminals.set(cli, parent);
697
+ else
698
+ this.reserved.delete(cli);
571
699
  }
572
700
  throw error;
573
701
  });
@@ -590,7 +718,11 @@ export class AccountManager {
590
718
  }, 30_000);
591
719
  session.attachDeadline.unref?.();
592
720
  void session.terminal.done
593
- .then((outcome) => this.finish(published, outcome.exitCode === 0 ? 'closed' : 'failed', outcome.exitCode === 0 ? '账号终端已结束' : '账号终端已退出,请查看 CLI 提示'), () => this.finish(published, 'failed', '账号终端连接失败,请重新打开'))
721
+ .then((outcome) => this.finish(published, outcome.exitCode === 0 ? 'closed' : 'failed', outcome.exitCode === 0
722
+ ? '账号终端已结束'
723
+ : Number.isInteger(outcome.exitCode)
724
+ ? `账号终端异常退出(退出码 ${outcome.exitCode}),请在系统终端检查该 CLI 后重试`
725
+ : '账号终端连接已结束,未返回退出码;请在系统终端检查该 CLI 后重试'), () => this.finish(published, 'failed', '账号终端连接失败,请重新打开'))
594
726
  .catch(() => undefined);
595
727
  return { id: session.id, instruction };
596
728
  }
@@ -609,10 +741,16 @@ export class AccountManager {
609
741
  await this.finish(session, 'closed', '启动已取消').catch(() => undefined);
610
742
  if (error instanceof Error && error.message === '此 CLI 已有账号终端,请先关闭后重试')
611
743
  throw error;
744
+ if (error instanceof ProcessCleanupUnconfirmedError)
745
+ throw new Error('账号终端尚未确认完全退出,请重启应用');
612
746
  if (timeout.signal.aborted)
613
747
  throw new Error('账号终端启动超时,正在回收启动过程;请稍后重试');
614
748
  if (error instanceof ZCodeAccountCapabilityError)
615
749
  throw error;
750
+ if (error instanceof WindowsAccountTerminalError)
751
+ throw error;
752
+ if (error instanceof WindowsCliInstallationError)
753
+ throw error;
616
754
  if (error instanceof HermesExecutableError)
617
755
  throw error;
618
756
  if (error instanceof MimoConfigurationError)
@@ -759,7 +897,8 @@ export class AccountManager {
759
897
  if (previous)
760
898
  cleanup.push(previous);
761
899
  const results = await Promise.allSettled(cleanup);
762
- if (results.some((result) => result.status === 'rejected'))
900
+ if (results.some((result) => result.status === 'rejected') ||
901
+ [...this.unsafeTerminals.values()].includes(parent))
763
902
  throw new Error('此主会话的账号终端尚未确认完全退出');
764
903
  })();
765
904
  this.parentClosings.set(parent, operation);
@@ -783,7 +922,7 @@ export class AccountManager {
783
922
  await session.output;
784
923
  await session.release?.();
785
924
  session.state = state;
786
- this.emit(session, { status: state, message });
925
+ this.emit(session, { status: state, message, cleanupConfirmed: true });
787
926
  this.reserved.delete(session.cli);
788
927
  session.expiry = setTimeout(() => {
789
928
  session.frames.length = 0;
@@ -826,7 +965,7 @@ export class AccountManager {
826
965
  session.frames.length = 0;
827
966
  }
828
967
  const failures = results.filter((result) => result.status === 'rejected');
829
- if (failures.length)
968
+ if (failures.length || this.unsafeTerminals.size)
830
969
  throw new Error('部分账号终端尚未确认完全退出');
831
970
  this.sessions.clear();
832
971
  this.reserved.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/host/accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAEvF,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAA;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAA;AACpD,OAAO,EAAiB,oBAAoB,EAAE,MAAM,eAAe,CAAA;AACnE,OAAO,EACL,gBAAgB,EAChB,8BAA8B,GAG/B,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,OAAO,EAAc,MAAM,oBAAoB,CAAA;AAExD,OAAO,EACL,YAAY,EACZ,oBAAoB,GAGrB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AACjC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EACL,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,GAC5B,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC9G,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAA;AACxG,OAAO,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAA;AAC5D,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AACxF,OAAO,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAA;AAClE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AACpG,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAA;AAE7E,MAAM,cAAc,GAAG,MAAM,CAAA;AAC7B,MAAM,eAAe,GAAG,MAAM,CAAA;AAC9B,MAAM,gBAAgB,GAAG,EAAE,GAAG,MAAM,CAAA;AACpC,MAAM,gBAAgB,GAAG,GAAG,GAAG,IAAI,CAAA;AACnC,MAAM,UAAU,GAAG,GAAG,CAAA;AACtB,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,CAAA;AACjC,MAAM,OAAO,GAAoB,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;AAE9D,MAAM,WAAW,GAAG,CAAC,GAAU,EAAE,EAAE;IACjC,IAAI,CAAE,OAA6B,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;AAChF,CAAC,CAAA;AACD,MAAM,cAAc,GAAG,CAAC,GAAU,EAAE,MAAqB,EAAU,EAAE;IACnE,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,oBAAoB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IAC/E,IAAI,GAAG,KAAK,aAAa;QACvB,OAAO,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,+CAA+C;YACjD,CAAC,CAAC,0BAA0B,MAAM,YAAY,CAAA;IAClD,IAAI,GAAG,KAAK,MAAM,IAAI,MAAM,KAAK,OAAO;QACtC,OAAO,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,6CAA6C;YAC/C,CAAC,CAAC,2CAA2C,CAAA;IACjD,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,gBAAgB,CAAA;IAChD,OAAO,MAAM,KAAK,OAAO;QACvB,CAAC,CAAC,qCAAqC;QACvC,CAAC,CAAC,iBAAiB,CAAA;AACvB,CAAC,CAAA;AACD,MAAM,UAAU,GAAG,CAAC,GAAU,EAAE,MAAqB,EAA4B,EAAE;IACjF,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,QAAQ;QACnD,OAAO;YACL,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,0BAA0B,EAAE;YACvE,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE;YACvE,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE;SAC5D,CAAA;IAEH,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC1B,EAAE;QACF,KAAK,EACH,EAAE,KAAK,OAAO;YACZ,CAAC,CAAC,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,MAAM;gBACpC,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,WAAW;YACf,CAAC,CAAC,EAAE,KAAK,QAAQ;gBACf,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM;QACd,WAAW,EAAE,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC;KACrC,CAAC,CAAC,CAAA;AACL,CAAC,CAAA;AAED,4FAA4F;AAC5F,MAAM,YAAY,GAAG,CAAC,GAAU,EAAE,MAAqB,EAAY,EAAE;IACnE,IAAI,GAAG,KAAK,aAAa,IAAI,MAAM,KAAK,QAAQ,IAAI,CAAC,GAAG,KAAK,MAAM,IAAI,MAAM,KAAK,QAAQ,CAAC;QAAE,OAAO,EAAE,CAAA;IACtG,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,CAAA;IACtD,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AACzB,CAAC,CAAA;AAED,kGAAkG;AAClG,SAAS,SAAS,CAAC,GAAU,EAAE,GAAW,EAAE,QAAuB;IACjE,MAAM,IAAI,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAA;IAC1C,IACE,QAAQ,KAAK,CAAC;QACd,sIAAsI,CAAC,IAAI,CACzI,IAAI,CACL;QAED,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAA;IACvE,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;QACpB,IAAI,QAAQ,KAAK,CAAC,IAAI,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5D,OAAO;gBACL,KAAK,EAAE,eAAe;gBACtB,OAAO,EAAE,gBAAgB;gBACzB,UAAU,EAAE,OAAO;gBACnB,YAAY,EAAE,KAAK;aACpB,CAAA;QACH,IAAI,QAAQ,KAAK,CAAC,IAAI,sCAAsC,CAAC,IAAI,CAAC,IAAI,CAAC;YACrE,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;QAC9F,IAAI,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;IACzF,CAAC;SAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YAC9B,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK;gBAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA;YAC/E,IAAI,QAAQ,KAAK,CAAC,IAAI,KAAK,CAAC,QAAQ,KAAK,IAAI,EAAE,CAAC;gBAC9C,uEAAuE;gBACvE,2EAA2E;gBAC3E,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,KAAK,aAAa,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,CAAA;gBACpF,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,gBAAgB,CAAA;gBACnF,OAAO;oBACL,KAAK,EAAE,eAAe;oBACtB,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,WAAW;oBAC9D,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS;oBACrD,YAAY,EAAE,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;oBACtF,YAAY,EAAE,KAAK;iBACpB,CAAA;YACH,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAA;QACjE,CAAC;IACH,CAAC;SAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QAC1B,IAAI,QAAQ,KAAK,CAAC,IAAI,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpD,mEAAmE;YACnE,4EAA4E;YAC5E,IAAI,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC;gBACzC,OAAO;oBACL,KAAK,EAAE,eAAe;oBACtB,OAAO,EAAE,QAAQ;oBACjB,UAAU,EAAE,KAAK;oBACjB,YAAY,EAAE,OAAO;iBACtB,CAAA;YACH,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,EAAE,CAAA;QAC7E,CAAC;QACD,IAAI,mDAAmD,CAAC,IAAI,CAAC,IAAI,CAAC;YAChE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,OAAO,EAAE,WAAW,EAAE,CAAA;IAC1D,CAAC;IACD,IAAI,QAAQ,KAAK,CAAC;QAAE,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAA;IACrF,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAA;AACxD,CAAC;AAED,SAAS,SAAS,CAAI,OAAmB,EAAE,MAAmB;IAC5D,MAAM,CAAC,cAAc,EAAE,CAAA;IACvB,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QAC1C,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACxD,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAC1F,CAAC,CAAC,CAAA;AACJ,CAAC;AAmCD,oFAAoF;AACpF,MAAM,OAAO,cAAc;IAYf;IACA;IACA;IAbO,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAA;IAC5C,QAAQ,GAAG,IAAI,GAAG,EAAS,CAAA;IAC3B,aAAa,GAAG,IAAI,GAAG,EAAS,CAAA;IAChC,aAAa,GAAG,IAAI,GAAG,EAAuB,CAAA;IAC9C,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAA;IACrC,OAAO,GAAG,IAAI,GAAG,EAAuB,CAAA;IACxC,cAAc,GAAG,IAAI,GAAG,EAAyB,CAAA;IACjD,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;IAC3C,OAAO,CAAgB;IAE/B,YACU,OAAuB,EACvB,MAAqB,EACrB,WAAkC,oBAAoB,EAAE;QAFxD,YAAO,GAAP,OAAO,CAAgB;QACvB,WAAM,GAAN,MAAM,CAAe;QACrB,aAAQ,GAAR,QAAQ,CAAgD;IAC/D,CAAC;IAEJ,MAAM,CAAC,GAAU;QACf,WAAW,CAAC,GAAG,CAAC,CAAA;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;IAC9D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,GAAU,EAAE,GAAW,EAAE,MAAmB;QACvD,WAAW,CAAC,GAAG,CAAC,CAAA;QAChB,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAA;QAClF,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAA;QAC5C,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACvC,IAAI,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACtG,8EAA8E;QAC9E,IAAI,KAAK,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACrC,MAAM,SAAS,CACb,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,EACtC,MAAM,CACP,CAAA;YACD,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;QAC5C,CAAC;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;YACxC,KAAK,GAAG;gBACN,GAAG;gBACH,UAAU;gBACV,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC;gBACzE,WAAW,EAAE,IAAI,GAAG,EAAE;gBACtB,OAAO,EAAE,KAAK;aACf,CAAA;YACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;YAClC,MAAM,OAAO,GAAG,KAAK,CAAA;YACrB,KAAK,OAAO,CAAC,SAAS;iBACnB,OAAO,CAAC,GAAG,EAAE;gBACZ,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;gBACtB,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,OAAO;oBAAE,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC7E,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC3B,CAAC;QACD,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,CAAA;QACzB,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAC7B,IAAI,CAAC;YACH,6EAA6E;YAC7E,OAAO,MAAM,SAAS,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAA;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAA;YAChD,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAChC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;gBAC9C,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;gBACxB,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,GAAU,EAAE,GAAW,EAAE,MAAmB;QACnE,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;YAC7B,OAAO;gBACL,GAAG;gBACH,SAAS,EAAE,IAAI;gBACf,KAAK,EAAE,aAAa;gBACpB,OAAO,EAAE,iBAAiB;gBAC1B,OAAO,EAAE,EAAE;aACZ,CAAA;QACH,MAAM,KAAK,GAAG,IAAI,eAAe,EAAE,CAAA;QACnC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,cAAc,CAAC,CAAA;QAC/D,OAAO,CAAC,KAAK,EAAE,EAAE,CAAA;QACjB,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;QAC/E,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACtF,SAAS,GAAG,IAAI,CAAA;YAChB,OAAO,CAAC,cAAc,EAAE,CAAA;YACxB,IAAI,GAAG,KAAK,MAAM;gBAChB,OAAO;oBACL,GAAG;oBACH,SAAS;oBACT,GAAG,CAAC,MAAM,eAAe,CAAC,OAAO,CAAC,CAAC;oBACnC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;iBACxE,CAAA;YACH,IAAI,GAAG,KAAK,QAAQ;gBAAE,MAAM,sBAAsB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YACvE,IAAI,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,MAAM,SAAS,CAC9B,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM;oBAC/B,CAAC,CAAC,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;oBACnD,CAAC,CAAC,GAAG,KAAK,UAAU;wBAClB,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;wBAC3C,CAAC,CAAC,GAAG,KAAK,QAAQ;4BAChB,CAAC,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;4BACzC,CAAC,CAAC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EACnD,OAAO,CACR,CAAA;gBACD,MAAM,OAAO,GACX,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK;oBAC3B,CAAC,CAAC,MAAM,uBAAuB,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC;oBACzE,CAAC,CAAC,GAAG,KAAK,QAAQ;wBAChB,CAAC,CAAC,MAAM,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;wBACtD,CAAC,CAAC,SAAS,CAAA;gBACjB,OAAO;oBACL,GAAG;oBACH,SAAS;oBACT,GAAG,QAAQ;oBACX,OAAO,EAAE,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC;yBAClC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;yBAC9E,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;iBAC5E,CAAA;YACH,CAAC;YACD,IAAI,GAAG,KAAK,aAAa,EAAE,CAAC;gBAC1B,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;gBACtE,OAAO;oBACL,GAAG;oBACH,SAAS;oBACT,GAAG,CAAC,QAAQ,IAAI;wBACd,KAAK,EAAE,SAAkB;wBACzB,OAAO,EAAE,YAAY;qBACtB,CAAC;oBACF,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;iBACxE,CAAA;YACH,CAAC;YACD,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACpB,qEAAqE;gBACrE,wEAAwE;gBACxE,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;gBAC5F,IAAI,QAAQ;oBACV,OAAO;wBACL,GAAG;wBACH,SAAS;wBACT,GAAG,QAAQ;wBACX,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;qBACxE,CAAA;YACL,CAAC;YACD,MAAM,IAAI,GACR,GAAG,KAAK,OAAO;gBACb,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC;gBACrB,CAAC,CAAC,GAAG,KAAK,QAAQ;oBAChB,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC;oBAC9B,CAAC,CAAC,GAAG,KAAK,MAAM;wBACd,CAAC,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,CAAC;wBAChC,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;YAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;gBAC/B,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC;gBAC3B,GAAG,EAAE,qBAAqB,CAAC,GAAG,CAAC;gBAC/B,GAAG;gBACH,KAAK,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;gBAC1D,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,MAAM,EAAE,OAAO;aAChB,CAAC,CAAA;YACF,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACtC,IAAI,GAAG,GAAG,EAAE,EACV,KAAK,GAAG,CAAC,CAAA;YACX,MAAM,IAAI,GAAG,KAAK,EAAE,MAA2B,EAAE,EAAE;gBACjD,IAAI,CAAC,MAAM;oBAAE,OAAM;gBACnB,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;gBACzC,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACjC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;oBAC1E,KAAK,IAAI,MAAM,CAAC,UAAU,CAAA;oBAC1B,IAAI,KAAK,GAAG,EAAE,GAAG,IAAI;wBAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;oBAClD,GAAG,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;gBAC9B,CAAC;gBACD,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAA;YACtB,CAAC,CAAA;YACD,MAAM,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;YACxD,IAAI,CAAC;gBACH,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;gBACjF,MAAM,MAAM,GACV,GAAG,KAAK,MAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC;oBACtC,CAAC,CAAC,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC;oBACrC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAA;gBAC3C,OAAO;oBACL,GAAG;oBACH,SAAS;oBACT,GAAG,MAAM;oBACT,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;wBACjC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACxC,GAAG,KAAK,MAAM,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,KAAK,eAAe;4BACvE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE;4BAC5D,CAAC,CAAC,IAAI,CACT;wBACH,CAAC,CAAC,EAAE;iBACP,CAAA;YACH,CAAC;oBAAS,CAAC;gBACT,IAAI,CAAC;oBACH,KAAK,CAAC,SAAS,EAAE,CAAA;oBACjB,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;wBAAE,MAAM,IAAI,8BAA8B,EAAE,CAAA;gBAC9E,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,8BAA8B,EAAE,CAAA;gBAC5C,CAAC;gBACD,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC,CAAA;gBAClD,GAAG,GAAG,EAAE,CAAA;YACV,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,8BAA8B,EAAE,CAAC;gBACpD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBAC3B,OAAO;oBACL,GAAG;oBACH,SAAS;oBACT,KAAK,EAAE,aAAa;oBACpB,OAAO,EAAE,iBAAiB;oBAC1B,OAAO,EAAE,EAAE;iBACZ,CAAA;YACH,CAAC;YACD,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,WAAW,CAAC,CAAA;YAClF,MAAM,IAAI,GAAI,KAA+B,EAAE,IAAI,CAAA;YACnD,IAAI,KAAK,YAAY,sBAAsB;gBACzC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;YACtF,IAAI,KAAK,YAAY,qBAAqB;gBACxC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,EAAE,CAAA;YACtF,IAAI,IAAI,KAAK,uBAAuB;gBAClC,OAAO;oBACL,GAAG;oBACH,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,aAAa;oBACpB,OAAO,EAAE,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,4BAA4B;oBACpE,OAAO,EAAE,EAAE;iBACZ,CAAA;YACH,MAAM,MAAM,GACV,SAAS;gBACT,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC;gBAC7B,KAAK,CAAC,MAAM,CAAC,OAAO;gBACpB,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,CAAC,CAAA;YACrD,OAAO;gBACL,GAAG;gBACH,SAAS;gBACT,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,cAAc;gBAC9C,OAAO,EAAE,SAAS;oBAChB,CAAC,CAAC,oBAAoB;oBACtB,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC;wBAC7B,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO;4BACpB,CAAC,CAAC,kBAAkB;4BACpB,CAAC,CAAC,MAAM;gCACN,CAAC,CAAC,oBAAoB;gCACtB,CAAC,CAAC,gBAAgB;gBAC1B,OAAO,EAAE,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE;aACrF,CAAA;QACH,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,OAAO,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,GAAU;QACpC,IAAI,GAAG,KAAK,aAAa;YAAE,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,KAAK,KAAK,CAAA;QAClE,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,KAAK,CAAA;QACnC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,YAAY,CAAC,CAAA;QAClD,OAAO,CAAC,CAAC,UAAU,IAAI,UAAU,KAAK,GAAG,CAAA;IAC3C,CAAC;IAED,KAAK,CACH,MAAc,EACd,GAAU,EACV,MAAqB,EACrB,GAAW,EACX,MAAmB,EACnB,MAAsB;QAEtB,WAAW,CAAC,GAAG,CAAC,CAAA;QAChB,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;QAC1D,IACE,MAAM,KAAK,SAAS;YACpB,CAAC,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACrC,MAAM,KAAK,QAAQ;gBACnB,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;YAEzC,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAA;QAC7B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC7D,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;QACvC,MAAM,CAAC,cAAc,EAAE,CAAA;QACvB,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAClF,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ;YAC/C,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAA;QAC3C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;QAC/D,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,8BAA8B,EAAE,CAAA;QAC3E,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACnE,MAAM,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAA;QACvC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACtB,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAAE,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG;gBAAE,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QAChG,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACpC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,KAAK,GAAG,EAAE,UAAU,EAAE,IAAI,eAAe,EAAE,EAAE,OAAO,EAAE,IAAI,GAAG,EAAE,EAAE,CAAA;YACjE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;QACjC,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAA;QACtG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC5B,KAAK,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACpF,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,MAAc,EACd,GAAU,EACV,MAAqB,EACrB,GAAW,EACX,MAAmB,EACnB,KAAkB,EAClB,MAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,eAAe,EAAE,CAAA;QACrC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,eAAe,CAAC,CAAA;QAChE,KAAK,CAAC,KAAK,EAAE,EAAE,CAAA;QACf,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;QAC1G,2EAA2E;QAC3E,4EAA4E;QAC5E,MAAM,iBAAiB,GAAG,IAAI,eAAe,EAAE,CAAA;QAC/C,MAAM,gBAAgB,GAAG,GAAG,EAAE,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAA;QACxD,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACnE,IAAI,OAAmC,CAAA;QACvC,IAAI,UAA+C,CAAA;QACnD,IAAI,OAAiD,CAAA;QACrD,IAAI,WAAW,GAAG,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QAC7C,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACtF,IAAI,GAAG,KAAK,QAAQ;gBAAE,MAAM,sBAAsB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YACvE,OAAO,CAAC,cAAc,EAAE,CAAA;YACxB,IAAI,MAAM,GAAkE;gBAC1E,IAAI,EAAE,CAAC,UAAU,EAAE,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBAChD,GAAG,EAAE,qBAAqB,CAAC,GAAG,CAAC;gBAC/B,GAAG;aACJ,CAAA;YACD,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBACnB,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;oBACvB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;oBACxD,OAAO,CAAC,cAAc,EAAE,CAAA;oBACxB,IAAI,OAAO,CAAC,KAAK,KAAK,eAAe,IAAI,OAAO,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;wBACxE,MAAM,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;wBAC1B,WAAW,GAAG,iBAAiB,CAAA;oBACjC,CAAC;gBACH,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAChD,IAAI,CAAC,MAAM,CAAC,cAAc;oBACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,EAAE,eAAe,CAAC,EACxE,OAAO,CACR,CAAA;gBACD,MAAM,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAA;gBACzB,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;gBAC1B,IAAI,MAAM,KAAK,OAAO;oBAAE,WAAW,GAAG,4BAA4B,WAAW,EAAE,CAAA;YACjF,CAAC;iBAAM,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBAC1B,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAC/C,UAAU,EACV,MAAM,EACN,IAAI,CAAC,MAAM,CAAC,cAAc;oBACxB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,EAAE,eAAe,CAAC,EACxE,OAAO,CACR,CAAA;gBACD,MAAM,GAAG,QAAQ,CAAA;gBACjB,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;YAC5B,CAAC;iBAAM,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,GAAG,EACH,MAAM,EACN,UAAU,EACV,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,OAAO,CACR,CAAA;gBACD,MAAM,GAAG,QAAQ,CAAA;gBACjB,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;YACpC,CAAC;iBAAM,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;gBACzC,MAAM,QAAQ,GAAG,MAAM,2BAA2B,CAAC;oBACjD,GAAG;oBACH,MAAM;oBACN,MAAM;oBACN,UAAU;oBACV,OAAO,EAAE,GAAG;oBACZ,cAAc,EACZ,IAAI,CAAC,MAAM,CAAC,cAAc;wBAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,EAAE,eAAe,CAAC;oBACxE,MAAM,EAAE,IAAI,CAAC,MAAM;oBACnB,MAAM,EAAE,OAAO;iBAChB,CAAC,CAAA;gBACF,MAAM,GAAG,QAAQ,CAAA;gBACjB,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;gBAClC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;YAC5B,CAAC;iBAAM,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,MAAM,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;gBAClG,MAAM,GAAG,QAAQ,CAAA;gBACjB,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;gBAClC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;YAC5B,CAAC;iBAAM,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBAC9B,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;gBACvF,MAAM,GAAG,QAAQ,CAAA;gBACjB,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAA;gBAClC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAA;YAC5B,CAAC;YACD,OAAO,CAAC,cAAc,EAAE,CAAA;YACxB,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,aAAc,CAAC;gBACvC,GAAG,MAAM;gBACT,IAAI,EAAE,EAAE;gBACR,IAAI,EAAE,EAAE;gBACR,YAAY,EAAE,gBAAgB;gBAC9B,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5B,MAAM,EAAE,iBAAiB,CAAC,MAAM;aACjC,CAAC,CAAC,IAAI,CACL,KAAK,EAAE,QAAQ,EAAE,EAAE;gBACjB,KAAK,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;gBACzC,OAAO,GAAG;oBACR,EAAE,EAAE,UAAU,EAAE;oBAChB,MAAM;oBACN,KAAK;oBACL,GAAG;oBACH,QAAQ;oBACR,MAAM,EAAE,EAAE;oBACV,KAAK,EAAE,CAAC;oBACR,GAAG,EAAE,CAAC;oBACN,KAAK,EAAE,SAAS;oBAChB,QAAQ,EAAE,KAAK;oBACf,OAAO,EAAE,IAAI,GAAG,EAAE;oBAClB,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE;oBACzB,OAAO;iBACR,CAAA;gBACD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;gBACtC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;gBACzC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;gBAC3C,KAAK,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;gBAC1C,qEAAqE;gBACrE,kEAAkE;gBAClE,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;oBACpB,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;oBAC7C,OAAO,CAAC,cAAc,EAAE,CAAA;gBAC1B,CAAC;gBACD,OAAO,OAAO,CAAA;YAChB,CAAC,EACD,KAAK,EAAE,KAAK,EAAE,EAAE;gBACd,IAAI,CAAC;oBACH,MAAM,OAAO,EAAE,EAAE,CAAA;gBACnB,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC3B,CAAC;gBACD,MAAM,KAAK,CAAA;YACb,CAAC,CACF,CAAA;YACD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YACtB,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAA;YAC7B,MAAM,iBAAiB,GAAG,UAAU,CAAA;YACpC,KAAK,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC7F,OAAO,GAAG,MAAM,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YAC9C,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAA;gBAC7C,OAAO,CAAC,cAAc,EAAE,CAAA;YAC1B,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,CAAA;YACzB,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,EAAE;gBACjC,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,uBAAuB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACvF,CAAC,EAAE,gBAAgB,CAAC,CAAA;YACpB,OAAO,CAAC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAA;YAC1B,OAAO,CAAC,cAAc,GAAG,UAAU,CAAC,GAAG,EAAE;gBACvC,KAAK,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YAC/E,CAAC,EAAE,MAAM,CAAC,CAAA;YACV,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,CAAA;YAChC,KAAK,OAAO,CAAC,QAAQ,CAAC,IAAI;iBACvB,IAAI,CACH,CAAC,OAAO,EAAE,EAAE,CACV,IAAI,CAAC,MAAM,CACT,SAAS,EACT,OAAO,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAC5C,OAAO,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAC1D,EACH,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CACzD;iBACA,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACzB,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,WAAW,EAAE,CAAA;QACxC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0EAA0E;YAC1E,oEAAoE;YACpE,IAAI,CAAC,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC5B,IAAI,CAAC;oBACH,MAAM,OAAO,EAAE,EAAE,CAAA;gBACnB,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC3B,CAAC;YACH,CAAC;YACD,IAAI,OAAO,IAAI,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO;gBAChD,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACtE,IAAI,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,sBAAsB;gBAAE,MAAM,KAAK,CAAA;YACnF,IAAI,OAAO,CAAC,MAAM,CAAC,OAAO;gBAAE,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;YACtE,IAAI,KAAK,YAAY,2BAA2B;gBAAE,MAAM,KAAK,CAAA;YAC7D,IAAI,KAAK,YAAY,qBAAqB;gBAAE,MAAM,KAAK,CAAA;YACvD,IAAI,KAAK,YAAY,sBAAsB;gBAAE,MAAM,KAAK,CAAA;YACxD,IAAK,KAA+B,EAAE,IAAI,KAAK,uBAAuB;gBACpE,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,4BAA4B,CAAC,CAAA;YAC9E,MAAM,IAAI,KAAK,CACb,OAAO,IAAI,OAAO,CAAC,OAAO;gBACxB,CAAC,CAAC,yBAAyB;gBAC3B,CAAC,CAAC,qBAAqB,CAC1B,CAAA;QACH,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAA;YACnB,OAAO,CAAC,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAA;QACxD,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,YAAY,CAAC,OAAuB;QAChD,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAA;QACzC,IAAI,CAAC;YACH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAClD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACrE,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,IAAI,IAAI;oBACvD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAA;YACnE,CAAC;YACD,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,EAAE,CAAA;YAC1B,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9C,CAAC;QAAC,MAAM,CAAC;YACP,wEAAwE;YACxE,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;IAEO,IAAI,CAAC,OAAuB,EAAE,KAAgC;QACpE,MAAM,KAAK,GAAG,EAAE,GAAG,KAAK,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;QAC9C,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;QAC1B,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;QACpD,OAAO,OAAO,CAAC,KAAK,GAAG,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YAC9E,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,EAAG,CAAA;YACvC,OAAO,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;QACxD,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO;YAAE,MAAM,EAAE,CAAA;QAC9C,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACzB,CAAC;IAEO,KAAK,CAAC,MAAc,EAAE,EAAU;QACtC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACrC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;QAC7E,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,CAAC,KAAK,CAAC,MAAc,EAAE,EAAU,EAAE,MAAmB;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACpC,IAAI,GAAG,GAAG,CAAC,CAAA;QACX,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACvB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAA;gBAChE,IAAI,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,GAAG,CAAC;oBAC1C,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA;gBAC5D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,GAAG,GAAG,KAAK,CAAC,GAAG,CAAA;oBACf,MAAM,KAAK,CAAA;gBACb,CAAC;gBACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO;oBAAE,OAAM;gBACzD,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;oBAClC,MAAM,IAAI,GAAG,GAAG,EAAE;wBAChB,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;wBACzC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;wBAC5B,OAAO,EAAE,CAAA;oBACX,CAAC,CAAA;oBACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;oBACzB,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;oBACtD,IAAI,MAAM,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,GAAG,GAAG,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;wBAAE,IAAI,EAAE,CAAA;gBAChF,CAAC,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS;gBAAE,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAA;QACpF,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,MAAc,EAAE,EAAU,EAAE,IAAY;QAClD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,eAAe;YACvE,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAA;QAC/B,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;QAC/E,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACpC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;QACnC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,MAAc,EAAE,EAAU,EAAE,IAAY,EAAE,IAAY;QACjE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACtC,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;YACvB,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;YACvB,IAAI,GAAG,EAAE;YACT,IAAI,GAAG,GAAG;YACV,IAAI,GAAG,CAAC;YACR,IAAI,GAAG,GAAG;YAEV,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;QAC5B,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAM;QAC3D,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAC3C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;QACrC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,MAAc,EAAE,EAAU;QACnC,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAA;IAChE,CAAC;IAED,sGAAsG;IACtG,WAAW,CAAC,MAAc;QACxB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAChD,IAAI,CAAC,KAAK,IAAI,QAAQ;YAAE,OAAO,QAAQ,CAAA;QACvC,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC3B,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QAC1B,CAAC;QACD,2EAA2E;QAC3E,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACjD,CAAC,OAAO,EAAE,EAAE,CACV,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CACjG,CAAA;QACD,MAAM,SAAS,GAAG,CAAC,KAAK,IAAI,EAAE;YAC5B,MAAM,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;YACzD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;YAC/B,IAAI,KAAK;gBAAE,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBAAE,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK;wBAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACxG,MAAM,OAAO,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;gBAC/C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;gBAC9C,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;gBACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;YAClC,CAAC,CAAC,CAAA;YACF,IAAI,QAAQ;gBAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YACpC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;YACjD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC;gBACxD,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QACxC,CAAC,CAAC,EAAE,CAAA;QACJ,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;QAC1C,KAAK,SAAS;aACX,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,SAAS;gBAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACvF,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACzB,OAAO,SAAS,CAAA;IAClB,CAAC;IAEO,MAAM,CAAC,OAAuB,EAAE,KAA0B,EAAE,OAAe;QACjF,IAAI,OAAO,CAAC,OAAO;YAAE,OAAO,OAAO,CAAC,OAAO,CAAA;QAC3C,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAA;QACvB,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;QAC9B,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;QACpC,OAAO,CAAC,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;YAC5B,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAA;gBAClC,MAAM,OAAO,CAAC,MAAM,CAAA;gBACpB,MAAM,OAAO,CAAC,OAAO,EAAE,EAAE,CAAA;gBACzB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAA;gBACrB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;gBAC9C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBACjC,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC/B,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;oBACzB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;gBAClC,CAAC,EAAE,MAAM,CAAC,CAAA;gBACV,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAA;gBACxB,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAA;gBACxF,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC;oBACzE,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;oBAC1B,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;oBACvB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;gBAChC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAA;gBACxB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAA;gBACnE,OAAO,CAAC,OAAO,GAAG,SAAS,CAAA;gBAC3B,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAA;YACjC,CAAC;QACH,CAAC,CAAC,EAAE,CAAA;QACJ,OAAO,OAAO,CAAC,OAAO,CAAA;IACxB,CAAC;IAEO,KAAK,CAAI,SAAqB;QACpC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;QAC3B,KAAK,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;QACnF,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,OAAO,CAAA;QACrC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;QACvB,IAAI,CAAC,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE;YACzB,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;YAC3C,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;YAC3D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CACtF,CAAA;YACD,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC7C,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;gBAC9B,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,CAAA;gBACpC,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;gBAC5B,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAA;YAC3B,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAA;YACzE,IAAI,QAAQ,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAA;YACtD,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YACrB,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAA;YACrB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;QACtB,CAAC,CAAC,EAAE,CAAA;QACJ,OAAO,IAAI,CAAC,OAAO,CAAA;IACrB,CAAC;CACF"}
1
+ {"version":3,"file":"accounts.js","sourceRoot":"","sources":["../../../src/host/accounts.ts"],"names":[],"mappings":"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"}
@@ -14,11 +14,13 @@ export interface Catalog {
14
14
  }
15
15
  export declare const executableFor: (cli: CliId, config: RuntimeConfig) => string;
16
16
  /** Read-only discovery with bounded output. Never persist or expose provider credentials. */
17
- export declare function captureCatalogMetadata(backend: ProcessBackend, config: RuntimeConfig, argv: string[], cwd: string, signal: AbortSignal, env?: Record<string, string>): Promise<string>;
17
+ export declare function captureCatalogMetadata(backend: ProcessBackend, config: RuntimeConfig, argv: string[], cwd: string, signal: AbortSignal, env?: Record<string, string>, allowedExitCodes?: readonly number[]): Promise<string>;
18
18
  export declare function catalogFor(cli: CliId, backend: ProcessBackend, config: RuntimeConfig, cwd: string, signal: AbortSignal): Promise<Catalog>;
19
19
  /** Official models --verbose prints provider/model followed by a pretty JSON object. */
20
20
  export declare function parseMimoModels(output: string): ModelChoice[];
21
21
  export declare function validatePreference(preference: Preference, catalog: Catalog): void;
22
22
  export declare function workerArguments(executable: string, project: string, preference: Preference, mode: TaskMode, prompt: string, timeoutMs: number, conversationId?: string): string[];
23
23
  export declare function protocolFor(cli: CliId, emit: (event: EventInput) => void, identify: (id: string) => void, maxLineBytes: number, expectedModel?: string): AgyProtocol | ZCodeProtocol | OpenCodeProtocol | HermesProtocol | GrokProtocol | BridgeProtocol | CliProtocol;
24
+ export declare function configuredCliExecutable(cli: CliId, config: RuntimeConfig): string | undefined;
25
+ /** Reuse a verified location; discovery never overwrites a later manual choice. */
24
26
  export declare function resolveCliExecutable(cli: CliId, backend: ProcessBackend, config: RuntimeConfig, signal?: AbortSignal): Promise<string>;