dsh-cliworker-now 0.7.6 → 0.7.7

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 (144) hide show
  1. package/README.en.md +29 -9
  2. package/README.md +31 -9
  3. package/lib/account-models.mjs +16 -13
  4. package/lib/client.js +658 -61
  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 +3724 -1589
  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 +2 -2
  15. package/lib/pi-omp-bridge.mjs +2 -2
  16. package/lib/private-launch.mjs +6 -2
  17. package/lib/terminal-bridge.mjs +2 -2
  18. package/lib/typert.host.js +83 -11
  19. package/lib/typert.remote-client.d.ts +2 -0
  20. package/lib/typert.remote-client.d.ts.map +1 -1
  21. package/lib/typert.remote-client.js +77 -11
  22. package/lib/types/client/account-query-queue.d.ts +16 -0
  23. package/lib/types/client/account-query-queue.js +61 -0
  24. package/lib/types/client/account-query-queue.js.map +1 -0
  25. package/lib/types/client/account-terminal.d.ts +6 -2
  26. package/lib/types/client/account-terminal.js +260 -31
  27. package/lib/types/client/account-terminal.js.map +1 -1
  28. package/lib/types/client/settings-dialog.js +65 -38
  29. package/lib/types/client/settings-dialog.js.map +1 -1
  30. package/lib/types/client/zcode-login-link-provider.d.ts +9 -0
  31. package/lib/types/client/zcode-login-link-provider.js +105 -0
  32. package/lib/types/client/zcode-login-link-provider.js.map +1 -0
  33. package/lib/types/client/zcode-login-link.d.ts +16 -0
  34. package/lib/types/client/zcode-login-link.js +194 -0
  35. package/lib/types/client/zcode-login-link.js.map +1 -0
  36. package/lib/types/host/account-models.d.mts +3 -1
  37. package/lib/types/host/account-models.mjs +16 -13
  38. package/lib/types/host/accounts.d.ts +3 -2
  39. package/lib/types/host/accounts.js +129 -22
  40. package/lib/types/host/accounts.js.map +1 -1
  41. package/lib/types/host/adapters.d.ts +1 -1
  42. package/lib/types/host/adapters.js +60 -11
  43. package/lib/types/host/adapters.js.map +1 -1
  44. package/lib/types/host/agy-models.d.ts +2 -1
  45. package/lib/types/host/agy-models.js +6 -6
  46. package/lib/types/host/agy-models.js.map +1 -1
  47. package/lib/types/host/agy-windows-account.d.ts +14 -0
  48. package/lib/types/host/agy-windows-account.js +104 -0
  49. package/lib/types/host/agy-windows-account.js.map +1 -0
  50. package/lib/types/host/authorized-catalog.js +13 -4
  51. package/lib/types/host/authorized-catalog.js.map +1 -1
  52. package/lib/types/host/claude-native-oauth.d.ts +17 -0
  53. package/lib/types/host/claude-native-oauth.js +272 -0
  54. package/lib/types/host/claude-native-oauth.js.map +1 -0
  55. package/lib/types/host/claude-own-route.d.ts +33 -0
  56. package/lib/types/host/claude-own-route.js +250 -0
  57. package/lib/types/host/claude-own-route.js.map +1 -0
  58. package/lib/types/host/cli-account-binding.d.ts +2 -1
  59. package/lib/types/host/cli-account-binding.js +59 -21
  60. package/lib/types/host/cli-account-binding.js.map +1 -1
  61. package/lib/types/host/codex-models.js +4 -0
  62. package/lib/types/host/codex-models.js.map +1 -1
  63. package/lib/types/host/extended-adapters.d.ts +3 -2
  64. package/lib/types/host/extended-adapters.js +9 -7
  65. package/lib/types/host/extended-adapters.js.map +1 -1
  66. package/lib/types/host/first-party-models.d.ts +1 -0
  67. package/lib/types/host/first-party-models.js +136 -47
  68. package/lib/types/host/first-party-models.js.map +1 -1
  69. package/lib/types/host/hermes-accounts.js +15 -1
  70. package/lib/types/host/hermes-accounts.js.map +1 -1
  71. package/lib/types/host/hermes-adapter.d.ts +3 -0
  72. package/lib/types/host/hermes-adapter.js +13 -4
  73. package/lib/types/host/hermes-adapter.js.map +1 -1
  74. package/lib/types/host/hermes-installation.js +54 -35
  75. package/lib/types/host/hermes-installation.js.map +1 -1
  76. package/lib/types/host/hermes-native-entry.py +48 -13
  77. package/lib/types/host/hermes-nous-refresh.py +331 -0
  78. package/lib/types/host/hermes-nous.d.ts +5 -1
  79. package/lib/types/host/hermes-nous.js +5 -5
  80. package/lib/types/host/hermes-nous.js.map +1 -1
  81. package/lib/types/host/hermes-renewal.d.ts +27 -0
  82. package/lib/types/host/hermes-renewal.js +292 -0
  83. package/lib/types/host/hermes-renewal.js.map +1 -0
  84. package/lib/types/host/hermes-windows-installation.d.ts +5 -0
  85. package/lib/types/host/hermes-windows-installation.js +91 -0
  86. package/lib/types/host/hermes-windows-installation.js.map +1 -0
  87. package/lib/types/host/index.d.ts +2 -0
  88. package/lib/types/host/index.js +17 -2
  89. package/lib/types/host/index.js.map +1 -1
  90. package/lib/types/host/kimi-accounts.d.ts +2 -0
  91. package/lib/types/host/kimi-accounts.js +4 -2
  92. package/lib/types/host/kimi-accounts.js.map +1 -1
  93. package/lib/types/host/kimi-oauth-models.d.ts +14 -0
  94. package/lib/types/host/kimi-oauth-models.js +246 -0
  95. package/lib/types/host/kimi-oauth-models.js.map +1 -0
  96. package/lib/types/host/mimo-metadata-cache.d.ts +22 -0
  97. package/lib/types/host/mimo-metadata-cache.js +121 -0
  98. package/lib/types/host/mimo-metadata-cache.js.map +1 -0
  99. package/lib/types/host/native-capability-cache.d.ts +11 -0
  100. package/lib/types/host/native-capability-cache.js +94 -0
  101. package/lib/types/host/native-capability-cache.js.map +1 -0
  102. package/lib/types/host/native-launch.mjs +62 -7
  103. package/lib/types/host/native-process.d.ts +3 -1
  104. package/lib/types/host/native-process.js +18 -3
  105. package/lib/types/host/native-process.js.map +1 -1
  106. package/lib/types/host/native-spawn.mjs +32 -0
  107. package/lib/types/host/pi-installation.d.mts +1 -1
  108. package/lib/types/host/pi-installation.mjs +27 -3
  109. package/lib/types/host/pi-omp-adapter.js +15 -1
  110. package/lib/types/host/pi-omp-adapter.js.map +1 -1
  111. package/lib/types/host/private-launch.mjs +23 -0
  112. package/lib/types/host/routing.js +25 -2
  113. package/lib/types/host/routing.js.map +1 -1
  114. package/lib/types/host/runtime.js +17 -5
  115. package/lib/types/host/runtime.js.map +1 -1
  116. package/lib/types/host/windows-account-bootstrap.ps1 +44 -0
  117. package/lib/types/host/windows-account-launch.mjs +47 -0
  118. package/lib/types/host/windows-account-owner.ps1 +137 -0
  119. package/lib/types/host/windows-account-stdio.mjs +19 -0
  120. package/lib/types/host/windows-account-terminal.d.ts +17 -0
  121. package/lib/types/host/windows-account-terminal.js +208 -0
  122. package/lib/types/host/windows-account-terminal.js.map +1 -0
  123. package/lib/types/host/windows-agy-account.ps1 +81 -0
  124. package/lib/types/host/windows-cli-installation.d.ts +31 -0
  125. package/lib/types/host/windows-cli-installation.js +157 -0
  126. package/lib/types/host/windows-cli-installation.js.map +1 -0
  127. package/lib/types/host/windows-hidden-launch.mjs +49 -0
  128. package/lib/types/host/windows-hidden-process.d.ts +12 -0
  129. package/lib/types/host/windows-hidden-process.js +116 -0
  130. package/lib/types/host/windows-hidden-process.js.map +1 -0
  131. package/lib/types/host/zcode-adapter.js +5 -1
  132. package/lib/types/host/zcode-adapter.js.map +1 -1
  133. package/lib/types/host/zcode-grok-accounts.d.ts +3 -1
  134. package/lib/types/host/zcode-grok-accounts.js +60 -11
  135. package/lib/types/host/zcode-grok-accounts.js.map +1 -1
  136. package/lib/types/shared/accounts.d.ts +4 -0
  137. package/lib/windows-account-bootstrap.ps1 +44 -0
  138. package/lib/windows-account-launch.mjs +47 -0
  139. package/lib/windows-account-owner.ps1 +137 -0
  140. package/lib/windows-account-stdio.mjs +19 -0
  141. package/lib/windows-agy-account.ps1 +81 -0
  142. package/lib/windows-hidden-launch.mjs +49 -0
  143. package/lib/zcode-resume.mjs +2 -2
  144. package/package.json +1 -1
@@ -61,6 +61,19 @@ export function resolveCliName(name) {
61
61
  match: normalized === exact.cli ? 'canonical' : 'alias',
62
62
  matchedName: exact.name,
63
63
  };
64
+ const annotated = /^([^()]+)\(([^()]+)\)$/u.exec(normalized);
65
+ if (annotated) {
66
+ const primary = resolveCliName(annotated[1]);
67
+ const alias = resolveCliName(annotated[2]);
68
+ if (primary.status === 'resolved' && alias.status === 'resolved' && primary.cli === alias.cli)
69
+ return primary;
70
+ return {
71
+ status: 'ambiguous',
72
+ candidates: [
73
+ ...new Set([primary, alias].flatMap((result) => result.status === 'resolved' ? [result.cli] : result.candidates)),
74
+ ],
75
+ };
76
+ }
64
77
  const parts = name.split(/[,,、/;;+]|\s+(?:and|or)\s+|[和与或]/iu).filter((part) => part.trim());
65
78
  if (parts.length > 1) {
66
79
  const candidates = [
@@ -107,7 +120,7 @@ function withoutQuotes(text) {
107
120
  .replace(/^\s*>.*$/gmu, '')
108
121
  .replace(/`[^`\n]*`|“[^”]*”|「[^」]*」|『[^』]*』|"[^"\n]*"|'[^'\n]*'/gu, '');
109
122
  }
110
- const command = /^(?:(?:请(?:你)?|麻烦(?:你)?|帮我|帮忙|我想(?:要)?|我希望|我要|现在|再|然后|顺便|同时|并且|并|也|你能否|能否|能不能|可以|please|can you)\s*)*(?:调用|使用|用|派遣|启动|让|invoke\b|call\b|use\b|start\b)\s*(.+)$/iu;
123
+ const command = /^(?:(?:请(?:你)?|麻烦(?:你)?|帮我|帮忙|我想(?:要)?|我希望|我要|现在|再|然后|顺便|同时|并且|并|也|只|仅仅?|你能否|能否|能不能|可以|please|can you)\s*)*(?:调用|使用|用|派遣|启动|让|invoke\b|call\b|use\b|start\b)\s*(.+)$/iu;
111
124
  const discussion = /^\s*(?:的?\s*(?:模型|model\b)|是什么意思|是什[么麼]|是否|有什么|怎么样|怎么(?:用|调用)|如何(?:工作|使用)|有哪些|的?(?:区别|说明|例子|示例|介绍)|这个(?:说法|例子)|means\b)/iu;
112
125
  function isDiscussion(suffix) {
113
126
  if (discussion.test(suffix))
@@ -131,12 +144,18 @@ export function invocationResolution(messages) {
131
144
  if (message.source.kind !== 'user')
132
145
  continue;
133
146
  const text = withoutQuotes(message.content.flatMap((block) => (block.type === 'text' ? [block.text] : [])).join('\n'));
134
- for (const clause of text.split(/[\n。;;!?!?]|[,,](?=\s*(?:请|然后|顺便|同时|并且|调用|使用|用|让))/u)) {
147
+ for (const clause of text.split(/[\n。;;!?!?]|[,,](?=\s*(?:请|然后|顺便|同时|并且|只|仅|调用|使用|用|让))/u)) {
135
148
  const request = clause.trim().match(command)?.[1];
136
149
  if (!request)
137
150
  continue;
151
+ // Plugin/tool invocation is routing guidance, not a CLI selector. In
152
+ // particular, a later "参数 cli" must not turn cliworker_start into one.
153
+ if (/^(?:cli\s+worker(?:\s+now)?\b|cliworker_(?:start|resolve)\b)/iu.test(request))
154
+ continue;
138
155
  const explicit = request.match(/^(.*?)\s*(?:cli\b|命令行)(.*)$/iu);
139
156
  if (explicit) {
157
+ if (!explicit[1].trim())
158
+ continue;
140
159
  // A named worker's nested instruction belongs to followup, not CLI-name resolution.
141
160
  if (/调用|使用|继续|接着/u.test(explicit[1]))
142
161
  continue;
@@ -177,6 +196,10 @@ export function invocationResolution(messages) {
177
196
  return undefined;
178
197
  if (resolutions.length === 1)
179
198
  return resolutions[0];
199
+ const first = resolutions[0];
200
+ if (first.status === 'resolved' &&
201
+ resolutions.every((result) => result.status === 'resolved' && result.cli === first.cli))
202
+ return first;
180
203
  return {
181
204
  status: 'ambiguous',
182
205
  candidates: [
@@ -1 +1 @@
1
- {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/host/routing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../src/host/routing.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { readClaudeOwnRoute, prepareClaudeWorkerLaunch } from "./claude-own-route.js";
1
2
  import { extendedLaunch, isExtendedCli } from "./extended-adapters.js";
2
3
  import { appendFileSync } from 'node:fs';
3
4
  import { randomUUID } from 'node:crypto';
@@ -478,12 +479,23 @@ export class WorkerRuntime {
478
479
  worker.status = 'running';
479
480
  this.storage.save(worker);
480
481
  this.changed();
482
+ const selectedClaudeRoute = cliOf(worker.preference) === 'claude'
483
+ ? await readClaudeOwnRoute(worker.project, controller.signal)
484
+ : undefined;
485
+ // Bind the exact prepared snapshot as well as the current source. A -> B -> A
486
+ // configuration changes must not authorize launching B under A's admission.
487
+ if (selectedClaudeRoute &&
488
+ binding !==
489
+ (await readCliAccountBinding('claude', this.backend, this.config, worker.project, controller.signal, selectedClaudeRoute)))
490
+ throw new Error(ACCOUNT_CHANGED);
481
491
  const launch = isExtendedCli(cliOf(worker.preference))
482
- ? await extendedLaunch(cliOf(worker.preference), executable, worker.project, worker.preference, worker.mode, task.prompt, join(this.storage.directory, 'native', worker.id), this.config, expectedConversation, (argv, env) => captureCatalogMetadata(this.backend, this.config, argv, worker.project, controller.signal, env))
483
- : {
484
- env: firstPartyEnvironment(cliOf(worker.preference)),
485
- argv: workerArguments(executable, worker.project, worker.preference, worker.mode, task.prompt, this.config.timeoutMs, expectedConversation),
486
- };
492
+ ? await extendedLaunch(cliOf(worker.preference), executable, worker.project, worker.preference, worker.mode, task.prompt, join(this.storage.directory, 'native', worker.id), this.config, expectedConversation, (argv, env) => captureCatalogMetadata(this.backend, this.config, argv, worker.project, controller.signal, env), { backend: this.backend, signal: controller.signal, graceMs: this.config.graceMs })
493
+ : cliOf(worker.preference) === 'claude'
494
+ ? await prepareClaudeWorkerLaunch(selectedClaudeRoute, workerArguments(executable, worker.project, worker.preference, worker.mode, task.prompt, this.config.timeoutMs, expectedConversation), this.storage.directory, controller.signal)
495
+ : {
496
+ env: firstPartyEnvironment(cliOf(worker.preference)),
497
+ argv: workerArguments(executable, worker.project, worker.preference, worker.mode, task.prompt, this.config.timeoutMs, expectedConversation),
498
+ };
487
499
  release = 'cleanup' in launch ? launch.cleanup : undefined;
488
500
  controller.signal.throwIfAborted();
489
501
  if (binding !==
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/host/runtime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAExC,OAAO,EACL,MAAM,EACN,UAAU,EACV,eAAe,EACf,4BAA4B,EAC5B,YAAY,EACZ,sBAAsB,EACtB,KAAK,EACL,UAAU,EACV,UAAU,GASX,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAA;AAC1G,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EACL,gBAAgB,EAChB,8BAA8B,GAG/B,MAAM,cAAc,CAAA;AACrB,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEjE,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAC7E,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAA;AAChE,OAAO,EAAE,6BAA6B,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAA;AAgB9F,MAAM,OAAO,aAAa;IAWb;IACD;IACC;IAZH,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAA;IACzC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAA;IACvC,KAAK,GAAG,IAAI,GAAG,EAAgB,CAAA;IAC/B,KAAK,GAAW,EAAE,CAAA;IAClB,OAAO,GAAG,IAAI,GAAG,EAAQ,CAAA;IACzB,SAAS,GAAG,IAAI,GAAG,EAAc,CAAA;IACjC,QAAQ,GAAG,KAAK,CAAA;IAChB,OAAO,CAAS;IACxB,QAAQ,GAAG,CAAC,CAAA;IACZ,YACW,OAAsB,EACvB,OAAuB,EACtB,MAAqB;QAFrB,YAAO,GAAP,OAAO,CAAe;QACvB,YAAO,GAAP,OAAO,CAAgB;QACtB,WAAM,GAAN,MAAM,CAAe;QAE9B,MAAM,OAAO,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAA;QAC3C,IAAI,OAAO,KAAK,MAAM;YACpB,IAAI,CAAC,OAAO;gBACV,OAAO,KAAK,SAAS;oBACnB,CAAC,CAAC,yBAAyB;oBAC3B,CAAC,CAAC,mCAAmC,CAAA;IAC7C,CAAC;IACD,SAAS,CAAC,QAAoB;QAC5B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAA;QAC5B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IACD,OAAO;QACL,IAAI,CAAC,QAAQ,EAAE,CAAA;QACf,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,SAAS;YAAE,QAAQ,EAAE,CAAA;IACnD,CAAC;IACD,gBAAgB,CAAC,GAAU;QACzB,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,YAAY,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC9D,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC;YAC1C,MAAM,IAAI,KAAK,CAAC,GAAG,UAAU,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IAClE,CAAC;IACD,cAAc,CAAC,KAAqC;QAClD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAA;IACd,CAAC;IACO,kBAAkB,CAAC,KAAc;QACvC,IAAI,CAAC,OAAO,GAAG,0BAA0B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;QACjG,IAAI,CAAC;YACH,+EAA+E;YAC/E,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAA;QAC7B,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;YAC5E,IAAI,CAAC,OAAO,IAAI,aAAa,CAAA;QAC/B,CAAC;IACH,CAAC;IACD,aAAa,CAAC,GAAU,EAAE,OAAgB;QACxC,IAAI,YAAY,CAAC,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QAC9D,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO;YAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAA;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QACzD,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,OAAO,QAAQ,CAAA;IACjB,CAAC;IACD,8EAA8E;IAC9E,iBAAiB,CAAC,GAAW;QAC3B,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAA;QAC5C,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,IACE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACrC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,GAAG,CACtE;YAED,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;IAC/D,CAAC;IACD,GAAG,CAAC,MAAc,EAAE,EAAU;QAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,eAAe,KAAK,MAAM;YAC9C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,IAAI,MAAM,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,CAAC,CAAA;QACrD,OAAO,MAAM,CAAA;IACf,CAAC;IACD,kGAAkG;IAClG,aAAa,CAAC,MAAc,EAAE,EAAW,EAAE,IAAa;QACtD,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QAChE,MAAM,UAAU,GAAG,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/E,IAAI,EAAE,EAAE,CAAC;YACP,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;YACnC,IAAI,UAAU,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC;gBACrD,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAChD,OAAO,MAAM,CAAA;QACf,CAAC;QACD,MAAM,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACvD,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,eAAe,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,UAAW,CAAC,CACnG,CAAA;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YACtB,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,MAAM;gBACZ,CAAC,CAAC,wBAAwB;gBAC1B,CAAC,CAAC,mCAAmC,CACxC,CAAA;QACH,OAAO,OAAO,CAAC,CAAC,CAAE,CAAA;IACpB,CAAC;IACO,WAAW,CAAC,MAAc,EAAE,IAAY;QAC9C,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACjF,CAAC;IACO,cAAc,CAAC,MAAc,EAAE,IAAY,EAAE,WAAoB;QACvE,MAAM,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACzC,IACE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACrC,CAAC,MAAM,EAAE,EAAE,CACT,MAAM,CAAC,eAAe,KAAK,MAAM;YACjC,MAAM,CAAC,EAAE,KAAK,WAAW;YACzB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CACtD,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,KAAK,CAAC,iBAAiB,EAAE,CACjE,CACJ;YAED,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QAC/C,OAAO,KAAK,CAAA;IACd,CAAC;IACD,YAAY,CAAC,MAAc,EAAE,EAAU,EAAE,IAAY;QACnD,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QACvD,8EAA8E;QAC9E,8EAA8E;QAC9E,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,CAAC,CAAA;QACtE,MAAM,CAAC,SAAS,GAAG,SAAS,CAAA;QAC5B,MAAM,CAAC,eAAe,GAAG,QAAQ,CAAA;QACjC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QACpC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,iBAAiB,CAAC,MAAc,EAAE,EAAU,EAAE,KAAa;QACzD,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;QAC9C,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;QACpB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAA;QACpC,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,yFAAyF;IACjF,iBAAiB,CAAC,MAAc;QACtC,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACjE,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACpD,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;IAC5C,CAAC;IACD,mBAAmB,CAAC,MAAc,EAAE,EAAU;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;QAC/C,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;QAC5C,OAAO,MAAM,CAAA;IACf,CAAC;IACD,YAAY,CAAC,MAAc,EAAE,EAAU;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,CAAA;QACtE,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,aAAa,CAAC,MAAc,EAAE,EAAU;QACtC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,eAAe,KAAK,MAAM;YAC9C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC9B,IAAI,CAAC,MAAM,CAAC,UAAU;YAAE,MAAM,IAAI,KAAK,CAAC,SAAS,CAAC,CAAA;QAClD,MAAM,QAAQ,GAAG,EAAE,GAAG,MAAM,EAAE,CAAA;QAC9B,OAAO,QAAQ,CAAC,UAAU,CAAA;QAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,QAAQ,CAAC,MAAc,EAAE,QAAiB;QACxC,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;aAC7C,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,KAAK,MAAM,CAAC;aAC3C,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QACrF,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QAC5D,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;QACrE,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAChF,IAAI,QAAQ,IAAI,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,eAAe,KAAK,MAAM,CAAC;YAC5E,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,MAAM,MAAM,GAAG,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAA;QACtE,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;QACpD,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC9E,MAAM,OAAO,GACX,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,aAAa;YAClD,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC;YACnD,CAAC,CAAC,SAAS,CAAA;QACf,OAAO;YACL,SAAS,EACP,SAAS,IAAI,OAAO;gBAClB,CAAC,CAAC;oBACE,KAAK,EAAE,SAAS,EAAE,KAAK;oBACvB,WAAW,EAAE,SAAS,EAAE,WAAW;oBACnC,eAAe,EAAE,SAAS,EAAE,eAAe;oBAC3C,GAAG,OAAO;iBACX;gBACH,CAAC,CAAC,SAAS;YACf,OAAO;YACP,eAAe;YACf,QAAQ,EAAE,MAAM;YAChB,mBAAmB,EACjB,MAAM,EAAE,cAAc,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC/D,CAAC,CAAC,4BAA4B;gBAC9B,CAAC,CAAC,SAAS;YACf,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC;YACvD,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,SAAS,EAAE,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,gBAAgB;SAC1D,CAAA;IACH,CAAC;IACO,QAAQ,CAAC,MAAc;QAC7B,MAAM,IAAI,GAAG,UAAU,CACrB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,EAC/B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CACnF,CAAA;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;YACnE,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;QAChE,OAAO,IAAI,CAAA;IACb,CAAC;IACO,YAAY,CAAC,MAAc,EAAE,KAAa;QAChD,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,MAAM,CAAC,EAAE,IAAI,KAAK,YAAY,CAAC,EAC/D,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CACzB,CAAA;IACH,CAAC;IACD,OAAO,CAAC,MAAc,EAAE,QAAgB,EAAE,MAAc,EAAE,SAAiB;QACzE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;QACzC,IAAI,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAA;QACjG,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;QACtC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,MAAM,CAAC,CAAA;QAC9D,IAAI,KAAK,GAAG,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAA;QACvD,iFAAiF;QACjF,MAAM,GAAG,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,GAAG,GAAG,CAAC,CAAA;QACnF,MAAM,KAAK,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAA;QACzE,OAAO;YACL,QAAQ;YACR,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC;YACjC,KAAK;YACL,GAAG;YACH,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,QAAQ,EAAE,KAAK,GAAG,CAAC;YACnB,QAAQ,EAAE,GAAG,GAAG,QAAQ,CAAC,MAAM;SAChC,CAAA;IACH,CAAC;IACD,eAAe,CAAC,MAAc,EAAE,EAAU,EAAE,UAAsB;QAChE,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,IAAI,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;QACnF,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;QAC9D,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,KAAK,CAAC,UAAU,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAA;QACnF,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAA;QACxC,MAAM,OAAO,GAAG,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,CAAA;QAC5D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,OAAO,OAAO,CAAA;IAChB,CAAC;IACD,MAAM,CACJ,MAAc,EACd,OAAe,EACf,KAAa,EACb,MAAc,EACd,UAAsB,EACtB,IAAc,EACd,UAAmB,EACnB,QAAsD,EACtD,iBAA0B;QAE1B,IAAI,IAAI,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;QACjE,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,MAAM,GAAG,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;QACvG,MAAM,SAAS,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAA;QAC3C,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACtE,MAAM,SAAS,GAAG,QAAQ,EAAE,UAAU,IAAI,UAAU,CAAA;QACpD,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;QACvC,IAAI,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;YACrC,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAA;QAC/E,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,cAAc;YACtC,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAA;QAC5E,IAAI,QAAQ,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;QACxG,IAAI,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,SAAS;YAC5C,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;QAChE,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,MAAM,IAAI,CAAC,QAAQ,EAAE,IAAI,IAAI,IAAI,CAAC,KAAK,MAAM;YACpE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAA;QACtC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,MAAM,GAAW,QAAQ,IAAI;YACjC,EAAE,EAAE,UAAU,EAAE;YAChB,eAAe,EAAE,MAAM;YACvB,OAAO,EAAE,SAAS;YAClB,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YAC1B,SAAS,EAAE,QAAQ,EAAE,SAAS;gBAC5B,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,SAAS,CAAC;gBACjD,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YACjG,eAAe,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YACxD,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;YAC3F,UAAU,EAAE,EAAE,GAAG,UAAU,EAAE;YAC7B,IAAI;YACJ,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;YACd,KAAK,EAAE,UAAU,EAAE;YACnB,MAAM,EAAE,QAAQ;SACjB,CAAA;QACD,MAAM,CAAC,KAAK,GAAG,UAAU,EAAE,CAAA;QAC3B,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAA;QACxB,MAAM,CAAC,KAAK,GAAG,SAAS,CAAA;QACxB,MAAM,CAAC,UAAU,GAAG,SAAS,CAAA;QAC7B,MAAM,CAAC,aAAa,GAAG,SAAS,CAAA;QAChC,MAAM,CAAC,SAAS,GAAG,GAAG,CAAA;QACtB,MAAM,CAAC,KAAK,GAAG,SAAS,CAAA;QACxB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;QAC3D,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;QAChF,IAAI,MAAiC,CAAA;QACrC,MAAM,IAAI,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,EAAE;YAC3C,MAAM,GAAG,OAAO,CAAA;QAClB,CAAC,CAAC,CAAA;QACF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAA;QACxC,gFAAgF;QAChF,MAAM,SAAS,GAAG,iBAAiB;YACjC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC;YACpC,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;QACpG,KAAK,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC7B,IAAI,KAAK,YAAY,8BAA8B,EAAE,CAAC;gBACpD,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;gBAC9B,IAAI,CAAC,KAAK,EAAE,CAAA;YACd,CAAC;QACH,CAAC,CAAC,CAAA;QACF,MAAM,IAAI,GAAS;YACjB,MAAM;YACN,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;YACvC,UAAU;YACV,IAAI;YACJ,MAAM;YACN,SAAS;SACV,CAAA;QACD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACrB,IAAI,CAAC,OAAO,EAAE,CAAA;QACd,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAA;QAClC,OAAO;YACL,MAAM;YACN,IAAI;YACJ,MAAM,EAAE,GAAG,EAAE;gBACX,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,CAAA;YACnC,CAAC;SACF,CAAA;IACH,CAAC;IACD,SAAS,CAAC,MAAc,EAAE,KAAa;QACrC,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;QACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QACzB,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,IAAI,CAAC,MAAc,EAAE,EAAU;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,CAAC,CAAA;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QAC/B,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;QAC1D,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;YACjC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAA;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA;YAC3C,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAA;gBACjD,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,aAAa,EAAE,WAAW,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;IACD,oEAAoE;IAC5D,KAAK,CAAC,YAAY,CAAC,IAAU,EAAE,MAAgC,EAAE,MAAc;QACrF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAA;QACxC,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,SAAS,CAAA;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,8BAA8B;gBAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QACrF,CAAC;QACD,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,CAAA;IAC7E,CAAC;IACO,KAAK;QACX,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAM;QACzB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YACnC,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,UAAU,CAAA;gBAC/B,KAAK,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;YACtD,CAAC;YACD,OAAM;QACR,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa;gBAAE,MAAK;YACzD,MAAM,SAAS,GAAG,CAAC,KAAW,EAAE,EAAE,CAChC,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO;gBAC5C,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,CAAA;YAC/E,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;gBACpG,SAAQ;YACV,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAA;YAC9C,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;gBAClC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YAC5C,CAAC,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IACO,MAAM,CAAC,IAAU,EAAE,MAAwB,EAAE,KAAc;QACjE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,CAAC,MAAM,GAAG,MAAM,CAAA;QACtB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;QACpB,MAAM,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QAC3C,IAAI,CAAC;YACH,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,IAAI,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;QACvF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAA;YACxB,MAAM,CAAC,KAAK,GAAG,WAAW,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;YACzC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAA;QAC7B,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC5B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;YACzB,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,6EAA6E;YAC7E,mEAAmE;YACnE,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAA;YACpC,IAAI,CAAC,KAAK,EAAE,CAAA;QACd,CAAC;IACH,CAAC;IACO,KAAK,CAAC,GAAG,CAAC,IAAU;QAC1B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAA;QACnC,IAAI,MAAoC,CAAA;QACxC,IAAI,OAAO,GAAoB,EAAE,CAAA;QACjC,IAAI,MAAM,GAAG,EAAE,CAAA;QACf,IAAI,UAAU,GAAG,CAAC,CAAA;QAClB,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;QAC5F,MAAM,oBAAoB,GAAG,MAAM,CAAC,cAAc,CAAA;QAClD,MAAM,QAAQ,GAAG,WAAW,CAC1B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EACxB,CAAC,KAAK,EAAE,EAAE;YACR,IAAI,KAAK,CAAC,aAAa,EAAE,CAAC;gBACxB,MAAM,CAAC,aAAa,GAAG,KAAK,CAAC,aAAa,CAAA;gBAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAC3B,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;YAClC,IAAI,CAAC,OAAO,EAAE,CAAA;QAChB,CAAC,EACD,CAAC,EAAE,EAAE,EAAE;YACL,IAAI,oBAAoB,IAAI,EAAE,KAAK,oBAAoB;gBACrD,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;YACrF,MAAM,CAAC,cAAc,GAAG,EAAE,CAAA;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC3B,CAAC,EACD,IAAI,CAAC,MAAM,CAAC,YAAY,EACxB,MAAM,CAAC,UAAU,CAAC,KAAK,CACxB,CAAA;QACD,IAAI,OAAgB,CAAA;QACpB,IAAI,OAAiD,CAAA;QACrD,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,SAAS,CAAA;YACrC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAC9D,IAAI,eAAe,IAAI,eAAe,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAA;YACrF,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,GAAG,MAAM,kBAAkB,CAC5E,MAAM,CAAC,UAAU,EACjB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,OAAO,EACd,UAAU,CAAC,MAAM,EACjB,QAAQ,CACT,CAAA;YACD,IAAI,oBAAoB,CAAC,KAAK,KAAK,MAAM,CAAC,UAAU,CAAC,KAAK;gBACxD,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAA;YACrC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAA;YAC/C,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAC3C,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EACxB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,UAAU,CAAC,MAAM,CAClB,CAAA;YACD,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,MAAM,6BAA6B,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,CAAA;YAChG,MAAM,CAAC,MAAM,GAAG,SAAS,CAAA;YACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,CAAC,OAAO,EAAE,CAAA;YACd,MAAM,MAAM,GAAG,aAAa,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;gBACpD,CAAC,CAAC,MAAM,cAAc,CAClB,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EACxB,UAAU,EACV,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,CAAC,EACjD,IAAI,CAAC,MAAM,EACX,oBAAoB,EACpB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACZ,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAClG;gBACH,CAAC,CAAC;oBACE,GAAG,EAAE,qBAAqB,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACpD,IAAI,EAAE,eAAe,CACnB,UAAU,EACV,MAAM,CAAC,OAAO,EACd,MAAM,CAAC,UAAU,EACjB,MAAM,CAAC,IAAI,EACX,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,MAAM,CAAC,SAAS,EACrB,oBAAoB,CACrB;iBACF,CAAA;YACL,OAAO,GAAG,SAAS,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAA;YAC1D,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,IACE,OAAO;gBACP,CAAC,MAAM,qBAAqB,CAC1B,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EACxB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,OAAO,EACd,UAAU,CAAC,MAAM,CAClB,CAAC;gBAEF,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAA;YAClC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,IAAI,UAAU,IAAI,MAAM,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,UAAU;gBAAE,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAA;YAC1F,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;YAC5C,MAAM,GAAG,MAAM,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE;gBAC7C,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS;gBAC7C,GAAG,EAAE,MAAM,CAAC,OAAO;gBACnB,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,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAA;YACF,4EAA4E;YAC5E,KAAK,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAA;YACvC,MAAM,OAAO,GAAG,KAAK,EAAE,MAAkC,EAAE,OAAgB,EAAE,EAAE;gBAC7E,IAAI,CAAC,MAAM;oBAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;gBACpD,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBACjC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;oBACtC,IAAI,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW;wBACtC,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;oBACrE,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;oBACjG,IAAI,OAAO;wBAAE,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;;wBACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;gBAC3B,CAAC;YACH,CAAC,CAAA;YACD,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAA;YACvE,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YAC1B,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,CAAA;YACjC,UAAU,CAAC,MAAM,CAAC,cAAc,EAAE,CAAA;YAClC,QAAQ,CAAC,GAAG,EAAE,CAAA;YACd,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC;gBACxB,MAAM,IAAI,KAAK,CACb,mBAAmB,OAAO,CAAC,QAAQ,KAAK,MAAM,IAAI,QAAQ,CAAC,MAAM,EAAE,QAAQ,IAAI,eAAe,EAAE,CACjG,CAAA;YACH,IAAI,CAAC,QAAQ,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;YAC1E,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS;gBACtC,MAAM,IAAI,KAAK,CACb,OAAO,QAAQ,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,MAAM,IAAI,qBAAqB,EAAE,CACzH,CAAA;YACH,MAAM,CAAC,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAA;QAC9C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,GAAG,KAAK,CAAA;YACf,IAAI,KAAK,YAAY,8BAA8B;gBAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QACrF,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,OAAO,CAAC,CAAA;YACrB,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,SAAS,EAAE,CAAA;gBAClB,IAAI,CAAC;oBACH,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;wBAAE,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;oBAC1F,SAAS,GAAG,IAAI,CAAA;gBAClB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,GAAG,KAAK,CAAA;oBACf,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;gBAChC,CAAC;gBACD,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YACrD,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,MAAM,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO;gBAAE,MAAM,OAAO,EAAE,EAAE,CAAA;QAChE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,KAAK,KAAK,CAAA;YACjB,IAAI,KAAK,YAAY,8BAA8B;gBAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QACrF,CAAC;QACD,IAAI,MAAM,CAAC,IAAI,EAAE;YAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAA;QACtG,MAAM,KAAK,GACT,IAAI,CAAC,OAAO;YACZ,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAA;QACxG,IAAI,CAAC,MAAM,CACT,IAAI,EACJ,IAAI,CAAC,OAAO;YACV,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO;gBACpC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO;oBACzB,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,QAAQ;gBACZ,CAAC,CAAC,WAAW,EACjB,KAAK,CACN,CAAA;IACH,CAAC;IACD,KAAK,CAAC,KAAK;QACT,IAAI,IAAI,CAAC,QAAQ;YAAE,OAAM;QACzB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAA;QACpB,MAAM,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAA;QACtC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC9F,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;QACtB,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;IACtB,CAAC;CACF"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../../src/host/runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ param(
2
+ [Parameter(Mandatory=$true)][string]$Directory,
3
+ [Parameter(Mandatory=$true)][string]$RuntimePath,
4
+ [Parameter(Mandatory=$true)][string]$LaunchPath,
5
+ [Parameter(Mandatory=$true)][string]$ArgumentsBase64
6
+ )
7
+ $ErrorActionPreference = 'Stop'
8
+ # A console-subsystem root is necessary: Electron's GUI executable can attach
9
+ # to a different parent console even with ELECTRON_RUN_AS_NODE. Do not run any
10
+ # native CLI until this exact PowerShell root and its console belong to the Job.
11
+ $pidFile=Join-Path $Directory 'pid'
12
+ [System.IO.File]::WriteAllText(($pidFile+'.tmp'),[string]$PID)
13
+ [System.IO.File]::Move(($pidFile+'.tmp'),$pidFile)
14
+ [Console]::Out.Write(([char]27).ToString()+'[0m')
15
+ $until=[DateTime]::UtcNow.AddSeconds(15)
16
+ while (!(Test-Path -LiteralPath (Join-Path $Directory 'ready'))) {
17
+ if ([DateTime]::UtcNow -ge $until) { exit 1 }
18
+ Start-Sleep -Milliseconds 20
19
+ }
20
+ if (!(Test-Path -LiteralPath (Join-Path $Directory 'cancel')) -and !(Test-Path -LiteralPath (Join-Path $Directory 'stop'))) {
21
+ try {
22
+ # PowerShell's native pipeline may background a GUI executable or convert
23
+ # stderr to an error. Start the fixed helper without redirection and wait.
24
+ # Only fixed paths plus Base64 JSON are quoted here; CLI argv stays data.
25
+ $quote = { param([string]$Value) '"' + [regex]::Replace([regex]::Replace($Value, '(\\*)"', '$1$1\"'), '(\\+)$', '$1$1') + '"' }
26
+ $start = New-Object System.Diagnostics.ProcessStartInfo
27
+ $start.FileName = $RuntimePath
28
+ $start.Arguments = ((& $quote $LaunchPath), (& $quote $Directory), (& $quote $ArgumentsBase64)) -join ' '
29
+ $start.UseShellExecute = $false
30
+ $start.RedirectStandardInput = $false
31
+ $start.RedirectStandardOutput = $false
32
+ $start.RedirectStandardError = $false
33
+ $start.CreateNoWindow = $false
34
+ $runtime = [System.Diagnostics.Process]::Start($start)
35
+ try { $runtime.WaitForExit() } finally { $runtime.Dispose() }
36
+ if (!(Test-Path -LiteralPath (Join-Path $Directory 'exit'))) {
37
+ [System.IO.File]::WriteAllText((Join-Path $Directory 'exit'),'{"exitCode":1,"signal":null}')
38
+ }
39
+ } catch {
40
+ [System.IO.File]::WriteAllText((Join-Path $Directory 'exit'),'{"exitCode":1,"signal":null}')
41
+ }
42
+ }
43
+ # Host owns disposal, including native exit and startup cancellation paths.
44
+ while ($true) { Start-Sleep -Milliseconds 1000 }
@@ -0,0 +1,47 @@
1
+ // Windows account PTY bootstrap. No native CLI runs until its process has been
2
+ // assigned to the separate lifecycle Job owner; no task sandbox is applied.
3
+ import { accountInput } from './windows-account-stdio.mjs'
4
+ import { fileURLToPath } from 'node:url'
5
+ import { spawnNativeProcess } from './native-spawn.mjs'
6
+ import { writeFileSync, existsSync } from 'node:fs'
7
+ import { join } from 'node:path'
8
+ import { setTimeout as delay } from 'node:timers/promises'
9
+ import { nativeLaunchArgv } from './native-launch.mjs'
10
+ process.umask(0o077)
11
+ const [directory, encoded] = process.argv.slice(2)
12
+ let requested
13
+ try { requested = JSON.parse(Buffer.from(encoded, 'base64').toString('utf8')) } catch { process.exit(1) }
14
+ if (!directory || !Array.isArray(requested) || !requested.length || requested.some(value => typeof value !== 'string')) process.exit(1)
15
+ // This exact plugin wrapper only sets umask and delegates an argv array. This
16
+ // helper already does both; avoid another GUI runtime losing console stdin.
17
+ if (requested[0] === process.execPath && requested[1] === fileURLToPath(new URL('./private-launch.mjs', import.meta.url)))
18
+ requested = requested.slice(2)
19
+ const until = Date.now() + 15_000
20
+ while (!existsSync(join(directory, 'ready'))) {
21
+ if (Date.now() >= until) process.exit(1)
22
+ await delay(20)
23
+ }
24
+ // Keep ConPTY alive after the native command exits so Host can dispose its
25
+ // native worker before closing the entire Job. Only the exit code is exposed.
26
+ setInterval(() => {}, 1000)
27
+ const recordExit = (code, signal) => {
28
+ const exitCode = Number.isInteger(code) ? code : 1
29
+ writeFileSync(join(directory, 'exit'), JSON.stringify({ exitCode, signal: signal ?? null }), { mode: 0o600 })
30
+ }
31
+ if (!existsSync(join(directory, 'cancel')) && !existsSync(join(directory, 'stop'))) {
32
+ try {
33
+ const [executable, ...argv] = nativeLaunchArgv(requested)
34
+ // Node-based CLI account UIs also need their own Electron stdin restored.
35
+ // This fixed preload is scoped to that child, never NODE_OPTIONS or Host.
36
+ if (executable === process.execPath && process.versions.electron)
37
+ argv.unshift('--import', new URL('./windows-account-stdio.mjs', import.meta.url).href)
38
+ // Keep the existing ConPTY handles; a GUI-subsystem parent must not cause
39
+ // the native CLI to present an additional Windows console window.
40
+ const child = spawnNativeProcess(executable, argv, { env: process.env, stdio: [accountInput, 1, 2] })
41
+ child.once('error', () => { process.stderr.write('CLI launch failed\r\n') })
42
+ child.once('close', recordExit)
43
+ } catch {
44
+ process.stderr.write('CLI launch failed\r\n')
45
+ recordExit(1)
46
+ }
47
+ }
@@ -0,0 +1,137 @@
1
+ param([Parameter(Mandatory=$true)][string]$Directory, [Parameter(Mandatory=$true)][int]$HostProcessId)
2
+ $ErrorActionPreference = 'Stop'
3
+ # Fixed process ownership only: no resource, privilege, network, or filesystem limits.
4
+ Add-Type -TypeDefinition @'
5
+ using System;
6
+ using System.Diagnostics;
7
+ using System.ComponentModel;
8
+ using System.Runtime.InteropServices;
9
+ public sealed class CwnAccountJob : IDisposable {
10
+ [StructLayout(LayoutKind.Sequential)] struct BasicLimits { public long ProcessTime, JobTime; public uint Flags; public UIntPtr MinWorking, MaxWorking; public uint ActiveLimit; public UIntPtr Affinity; public uint Priority, Scheduling; }
11
+ [StructLayout(LayoutKind.Sequential)] struct Io { public ulong ReadOps, WriteOps, OtherOps, ReadBytes, WriteBytes, OtherBytes; }
12
+ [StructLayout(LayoutKind.Sequential)] struct ExtendedLimits { public BasicLimits Basic; public Io Io; public UIntPtr ProcessMemory, JobMemory, PeakProcessMemory, PeakJobMemory; }
13
+ [StructLayout(LayoutKind.Sequential)] struct Accounting { public long User, Kernel, PeriodUser, PeriodKernel; public uint PageFaults, TotalProcesses, ActiveProcesses, TerminatedProcesses; }
14
+ [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)] static extern IntPtr CreateJobObject(IntPtr attr, string name);
15
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool SetInformationJobObject(IntPtr job, int kind, ref ExtendedLimits limits, uint size);
16
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool QueryInformationJobObject(IntPtr job, int kind, out Accounting info, uint size, IntPtr length);
17
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool AssignProcessToJobObject(IntPtr job, IntPtr process);
18
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool TerminateJobObject(IntPtr job, uint code);
19
+ [DllImport("kernel32.dll")] static extern bool CloseHandle(IntPtr handle);
20
+ [DllImport("kernel32.dll")] static extern bool FreeConsole();
21
+ [DllImport("kernel32.dll", SetLastError=true)] static extern bool AttachConsole(uint pid);
22
+ [DllImport("kernel32.dll")] static extern IntPtr GetConsoleWindow();
23
+ [DllImport("user32.dll", SetLastError=true)] static extern uint GetWindowThreadProcessId(IntPtr window, out uint pid);
24
+ [DllImport("kernel32.dll", CharSet=CharSet.Unicode, SetLastError=true)] static extern IntPtr GetModuleHandle(string name);
25
+ [DllImport("kernel32.dll", SetLastError=true)] static extern IntPtr GetProcAddress(IntPtr module, IntPtr ordinal);
26
+ [UnmanagedFunctionPointer(CallingConvention.Winapi)] delegate uint RealWindowOwner(IntPtr window);
27
+ IntPtr job; Process root;
28
+ public CwnAccountJob() { job=CreateJobObject(IntPtr.Zero,null); if(job==IntPtr.Zero) throw new Win32Exception(Marshal.GetLastWin32Error()); var l=new ExtendedLimits(); l.Basic.Flags=0x2000; if(!SetInformationJobObject(job,9,ref l,(uint)Marshal.SizeOf(l))) { var error=Marshal.GetLastWin32Error(); Dispose(); throw new Win32Exception(error); } }
29
+ public void Attach(int pid, DateTime receiptTime, DateTime earliest) { root=Process.GetProcessById(pid); var handle=root.Handle; var started=root.StartTime.ToUniversalTime(); if(started>receiptTime || started<earliest) throw new Exception("process identity changed"); if(!AssignProcessToJobObject(job,handle)) throw new Win32Exception(Marshal.GetLastWin32Error()); }
30
+ public static int ConsoleOwner(int pid) {
31
+ FreeConsole(); if(!AttachConsole((uint)pid)) throw new Win32Exception(Marshal.GetLastWin32Error());
32
+ try {
33
+ var window=GetConsoleWindow(); uint owner;
34
+ if(window==IntPtr.Zero || GetWindowThreadProcessId(window,out owner)==0 || owner==0) throw new Exception("console owner unavailable");
35
+ // Modern ConPTY gives its message-only window to the root client, not
36
+ // conhost: microsoft/terminal#14196. Resolve this same HWND's real owner
37
+ // using the maintainer's dynamic API from discussion #16447. The ordinal
38
+ // is not a stable public API; absence or an invalid result fails closed.
39
+ if(owner==(uint)pid) {
40
+ var module=GetModuleHandle("user32.dll");
41
+ var address=module==IntPtr.Zero?IntPtr.Zero:GetProcAddress(module,new IntPtr(2712));
42
+ if(address==IntPtr.Zero) throw new Exception("real console owner unavailable");
43
+ var getOwner=(RealWindowOwner)Marshal.GetDelegateForFunctionPointer(address,typeof(RealWindowOwner));
44
+ owner=getOwner(window);
45
+ }
46
+ if(owner==0 || owner>(uint)Int32.MaxValue || owner==(uint)pid) throw new Exception("console owner unavailable");
47
+ return (int)owner;
48
+ } finally { FreeConsole(); }
49
+ }
50
+ public string ConsoleIdentityReason { get; private set; }
51
+ public string ConsoleImageKind { get; private set; }
52
+ public bool ConsoleImageDevicePrefix { get; private set; }
53
+ public void AttachConsoleHost(int pid, DateTime latest, DateTime earliest) {
54
+ using(var p=Process.GetProcessById(pid)) {
55
+ var handle=p.Handle; var started=p.StartTime.ToUniversalTime();
56
+ var expected=System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.System),"conhost.exe");
57
+ if(started>latest) { ConsoleIdentityReason="after-receipt"; throw new Exception("console identity changed"); }
58
+ if(started<earliest) { ConsoleIdentityReason="before-directory"; throw new Exception("console identity changed"); }
59
+ var image=p.MainModule.FileName; var leaf=System.IO.Path.GetFileName(image);
60
+ ConsoleImageKind=String.Equals(leaf,"conhost.exe",StringComparison.OrdinalIgnoreCase)?"conhost.exe":String.Equals(leaf,"openconsole.exe",StringComparison.OrdinalIgnoreCase)?"openconsole.exe":"other";
61
+ ConsoleImageDevicePrefix=image!=null && (image.StartsWith(@"\\?\") || image.StartsWith(@"\??\"));
62
+ if(!String.Equals(image,expected,StringComparison.OrdinalIgnoreCase)) { ConsoleIdentityReason="wrong-image"; throw new Exception("console identity changed"); }
63
+ if(!AssignProcessToJobObject(job,handle)) throw new Win32Exception(Marshal.GetLastWin32Error());
64
+ }
65
+ }
66
+ public bool RootExited { get { return root.HasExited; } }
67
+ public void Stop() { if(!TerminateJobObject(job,143)) throw new Win32Exception(Marshal.GetLastWin32Error()); }
68
+ public bool Empty { get { Accounting a; if(!QueryInformationJobObject(job,1,out a,(uint)Marshal.SizeOf(typeof(Accounting)),IntPtr.Zero)) throw new Win32Exception(Marshal.GetLastWin32Error()); return a.ActiveProcesses==0; } }
69
+ public void Dispose() { if(job!=IntPtr.Zero) { CloseHandle(job); job=IntPtr.Zero; } if(root!=null) root.Dispose(); }
70
+ }
71
+ '@
72
+ $job=$null
73
+ $stage='await-bootstrap'
74
+ $consolePid=$null
75
+ $consoleParentPid=$null
76
+ try {
77
+ $earliest=[System.IO.Directory]::GetCreationTimeUtc($Directory).AddSeconds(-1)
78
+ $pidFile=Join-Path $Directory 'pid'
79
+ $stopFile=Join-Path $Directory 'stop'
80
+ [System.IO.File]::WriteAllText((Join-Path $Directory 'owner-ready'),'owner-ready')
81
+ $until=[DateTime]::UtcNow.AddSeconds(15)
82
+ while (!(Test-Path -LiteralPath $pidFile)) {
83
+ if ([DateTime]::UtcNow -ge $until) { throw 'bootstrap timeout' }
84
+ Start-Sleep -Milliseconds 20
85
+ }
86
+ $childPid=0
87
+ if (![int]::TryParse([System.IO.File]::ReadAllText($pidFile),[ref]$childPid) -or $childPid -le 0) { throw 'invalid bootstrap receipt' }
88
+ $stage='create-job'
89
+ $job=New-Object CwnAccountJob
90
+ $stage='attach-root'
91
+ $job.Attach($childPid,[System.IO.File]::GetLastWriteTimeUtc($pidFile),$earliest)
92
+ # The ConPTY console is a sibling of the bootstrap, created by the Host.
93
+ # Resolve it through this exact console, then validate parent and creation
94
+ # identity before adding it; never enumerate/kill processes by image name.
95
+ $stage='resolve-console'
96
+ $consolePid=[CwnAccountJob]::ConsoleOwner($childPid)
97
+ $stage='validate-console-parent'
98
+ $console=Get-CimInstance Win32_Process -Filter "ProcessId=$consolePid"
99
+ if ($null -ne $console) { $consoleParentPid=$console.ParentProcessId }
100
+ if ($null -eq $console -or $console.ParentProcessId -ne $HostProcessId) { throw 'console owner mismatch' }
101
+ $stage='attach-console'
102
+ $job.AttachConsoleHost($consolePid,[System.IO.File]::GetLastWriteTimeUtc($pidFile),$earliest)
103
+ $stage='await-stop'
104
+ [System.IO.File]::WriteAllText((Join-Path $Directory 'ready'),'ready')
105
+ while (!$job.RootExited -and !(Test-Path -LiteralPath $stopFile)) { Start-Sleep -Milliseconds 50 }
106
+ $stage='stop-job'
107
+ $job.Stop()
108
+ $stage='confirm-empty'
109
+ $until=[DateTime]::UtcNow.AddSeconds(8)
110
+ while (!$job.Empty) {
111
+ if ([DateTime]::UtcNow -ge $until) { throw 'empty receipt timeout' }
112
+ Start-Sleep -Milliseconds 20
113
+ }
114
+ [System.IO.File]::WriteAllText((Join-Path $Directory 'closed'),'closed')
115
+ exit 0
116
+ } catch {
117
+ # Fixed stage and numeric metadata only; no exception text/argv/environment.
118
+ $failure=@{ stage=$stage; hostPid=$HostProcessId; ownerPid=$PID }
119
+ if ($null -ne $consolePid) { $failure.consolePid=$consolePid }
120
+ if ($null -ne $consoleParentPid) { $failure.consoleParentPid=$consoleParentPid }
121
+ if ($null -ne $job -and $job.ConsoleIdentityReason -in @('before-directory','after-receipt','wrong-image')) {
122
+ $failure.identityReason=$job.ConsoleIdentityReason
123
+ if ($job.ConsoleImageKind -in @('conhost.exe','openconsole.exe','other')) {
124
+ $failure.imageKind=$job.ConsoleImageKind
125
+ $failure.imageDevicePrefix=$job.ConsoleImageDevicePrefix
126
+ }
127
+ }
128
+ $errorObject=$_.Exception
129
+ while ($null -ne $errorObject) {
130
+ if ($errorObject -is [System.ComponentModel.Win32Exception]) { $failure.win32Code=$errorObject.NativeErrorCode; break }
131
+ $errorObject=$errorObject.InnerException
132
+ }
133
+ try { [System.IO.File]::WriteAllText((Join-Path $Directory 'failure'),($failure | ConvertTo-Json -Compress)) } catch {}
134
+ # Fixed classification only: never emit native exception/context/environment.
135
+ [Console]::Error.WriteLine('Windows account process ownership failed')
136
+ exit 2
137
+ } finally { if ($null -ne $job) { $job.Dispose() } }
@@ -0,0 +1,19 @@
1
+ // Imported only by the Windows account-terminal runtime and its Electron CLI
2
+ // child. Electron attaches stdout/stderr to the parent console, but its GUI
3
+ // executable can leave fd 0 mapped to NUL. Reopen this already-owned console;
4
+ // do not redirect stdin for task processes or change the shared Host.
5
+ import { openSync, closeSync } from 'node:fs'
6
+ import { isatty, ReadStream } from 'node:tty'
7
+ export let accountInput = 0
8
+ if (process.platform === 'win32' && !isatty(0)) {
9
+ try {
10
+ accountInput = openSync('\\\\.\\CONIN$', 'r+')
11
+ if (!isatty(accountInput)) throw new Error('not a console')
12
+ const input = new ReadStream(accountInput)
13
+ Object.defineProperty(process, 'stdin', { value: input, configurable: true })
14
+ process.once('exit', () => { try { closeSync(accountInput) } catch {} })
15
+ } catch {
16
+ if (accountInput) { try { closeSync(accountInput) } catch {} }
17
+ throw new Error('Windows account console input unavailable')
18
+ }
19
+ }
@@ -0,0 +1,17 @@
1
+ import type { SubprocessTerminalHandle, SubprocessTerminalSpawnSpec } from '@deepseek-ai/dsh-subprocess';
2
+ import { type ProcessBackend } from './process.ts';
3
+ /** A fixed diagnostic; never derived from PowerShell or native output. */
4
+ export declare class WindowsAccountTerminalError extends Error {
5
+ constructor();
6
+ }
7
+ /** ConPTY publishes pid=0 during async allocation in the pinned Windows SDK.
8
+ * Attach a waiting bootstrap to a lifecycle-only Job before allowing the CLI to
9
+ * spawn. The separate owner is itself held by the Host's ordinary subprocess
10
+ * Job, so closing/crashing the Host also closes the account process range.
11
+ */
12
+ export declare function spawnAccountTerminal(backend: ProcessBackend, spec: SubprocessTerminalSpawnSpec, options?: {
13
+ platform?: NodeJS.Platform;
14
+ handshakeMs?: number;
15
+ cleanupMs?: number;
16
+ terminalExitMs?: number;
17
+ }): Promise<SubprocessTerminalHandle>;