@provos/ironcurtain 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/README.md +14 -12
  2. package/dist/cli.js +6 -0
  3. package/dist/cli.js.map +1 -1
  4. package/dist/config/config-command.d.ts +33 -1
  5. package/dist/config/config-command.js +608 -11
  6. package/dist/config/config-command.js.map +1 -1
  7. package/dist/config/openrouter-catalog.d.ts +46 -0
  8. package/dist/config/openrouter-catalog.js +111 -0
  9. package/dist/config/openrouter-catalog.js.map +1 -0
  10. package/dist/config/openrouter-models-fallback.d.ts +15 -0
  11. package/dist/config/openrouter-models-fallback.js +49 -0
  12. package/dist/config/openrouter-models-fallback.js.map +1 -0
  13. package/dist/config/types.d.ts +8 -0
  14. package/dist/config/user-config.d.ts +133 -7
  15. package/dist/config/user-config.js +234 -5
  16. package/dist/config/user-config.js.map +1 -1
  17. package/dist/daemon/daemon-command.js.map +1 -1
  18. package/dist/daemon/ironcurtain-daemon.js +6 -0
  19. package/dist/daemon/ironcurtain-daemon.js.map +1 -1
  20. package/dist/docker/adapters/claude-code.js +109 -1
  21. package/dist/docker/adapters/claude-code.js.map +1 -1
  22. package/dist/docker/adapters/codex.d.ts +10 -1
  23. package/dist/docker/adapters/codex.js +99 -20
  24. package/dist/docker/adapters/codex.js.map +1 -1
  25. package/dist/docker/adapters/goose.js +38 -2
  26. package/dist/docker/adapters/goose.js.map +1 -1
  27. package/dist/docker/agent-adapter.d.ts +29 -5
  28. package/dist/docker/agent-registry.js +1 -1
  29. package/dist/docker/agent-registry.js.map +1 -1
  30. package/dist/docker/apple-container-manager.d.ts +4 -4
  31. package/dist/docker/apple-container-manager.js +44 -22
  32. package/dist/docker/apple-container-manager.js.map +1 -1
  33. package/dist/docker/ca.js +9 -2
  34. package/dist/docker/ca.js.map +1 -1
  35. package/dist/docker/container-lifecycle.js +9 -0
  36. package/dist/docker/container-lifecycle.js.map +1 -1
  37. package/dist/docker/docker-agent-session.d.ts +31 -0
  38. package/dist/docker/docker-agent-session.js +67 -6
  39. package/dist/docker/docker-agent-session.js.map +1 -1
  40. package/dist/docker/docker-infrastructure.d.ts +55 -15
  41. package/dist/docker/docker-infrastructure.js +261 -61
  42. package/dist/docker/docker-infrastructure.js.map +1 -1
  43. package/dist/docker/docker-manager.js +127 -0
  44. package/dist/docker/docker-manager.js.map +1 -1
  45. package/dist/docker/docker-resource-lifecycle.d.ts +71 -0
  46. package/dist/docker/docker-resource-lifecycle.js +454 -0
  47. package/dist/docker/docker-resource-lifecycle.js.map +1 -0
  48. package/dist/docker/gc-command.d.ts +2 -0
  49. package/dist/docker/gc-command.js +37 -0
  50. package/dist/docker/gc-command.js.map +1 -0
  51. package/dist/docker/mitm-proxy.d.ts +6 -4
  52. package/dist/docker/mitm-proxy.js +105 -17
  53. package/dist/docker/mitm-proxy.js.map +1 -1
  54. package/dist/docker/network-topology.d.ts +16 -9
  55. package/dist/docker/network-topology.js +17 -10
  56. package/dist/docker/network-topology.js.map +1 -1
  57. package/dist/docker/openrouter.d.ts +107 -0
  58. package/dist/docker/openrouter.js +236 -0
  59. package/dist/docker/openrouter.js.map +1 -0
  60. package/dist/docker/orientation.js +1 -1
  61. package/dist/docker/orientation.js.map +1 -1
  62. package/dist/docker/platform.d.ts +3 -1
  63. package/dist/docker/platform.js +3 -1
  64. package/dist/docker/platform.js.map +1 -1
  65. package/dist/docker/provider-config.d.ts +6 -0
  66. package/dist/docker/provider-config.js.map +1 -1
  67. package/dist/docker/pty-session.d.ts +7 -0
  68. package/dist/docker/pty-session.js +111 -29
  69. package/dist/docker/pty-session.js.map +1 -1
  70. package/dist/docker/pty-types.d.ts +15 -0
  71. package/dist/docker/pty-types.js +8 -0
  72. package/dist/docker/pty-types.js.map +1 -1
  73. package/dist/docker/sse-extractor.js +55 -5
  74. package/dist/docker/sse-extractor.js.map +1 -1
  75. package/dist/docker/stream-delay.d.ts +86 -0
  76. package/dist/docker/stream-delay.js +218 -0
  77. package/dist/docker/stream-delay.js.map +1 -0
  78. package/dist/docker/token-stream-types.d.ts +15 -0
  79. package/dist/docker/trajectory-reassembler.d.ts +2 -2
  80. package/dist/docker/trajectory-reassembler.js +22 -2
  81. package/dist/docker/trajectory-reassembler.js.map +1 -1
  82. package/dist/docker/trajectory-tap.js +2 -2
  83. package/dist/docker/trajectory-tap.js.map +1 -1
  84. package/dist/docker/types.d.ts +63 -5
  85. package/dist/doctor/checks.d.ts +3 -3
  86. package/dist/doctor/checks.js +28 -11
  87. package/dist/doctor/checks.js.map +1 -1
  88. package/dist/doctor/doctor-command.js +1 -1
  89. package/dist/doctor/doctor-command.js.map +1 -1
  90. package/dist/escalation/escalation-watcher.js +6 -0
  91. package/dist/escalation/escalation-watcher.js.map +1 -1
  92. package/dist/{mux → escalation}/trusted-input.d.ts +7 -4
  93. package/dist/{mux → escalation}/trusted-input.js +8 -5
  94. package/dist/escalation/trusted-input.js.map +1 -0
  95. package/dist/hash.js.map +1 -1
  96. package/dist/index.js +37 -6
  97. package/dist/index.js.map +1 -1
  98. package/dist/mux/mux-app.d.ts +7 -0
  99. package/dist/mux/mux-app.js +17 -16
  100. package/dist/mux/mux-app.js.map +1 -1
  101. package/dist/mux/mux-command.js +8 -3
  102. package/dist/mux/mux-command.js.map +1 -1
  103. package/dist/mux/mux-input-handler.d.ts +26 -2
  104. package/dist/mux/mux-input-handler.js +93 -11
  105. package/dist/mux/mux-input-handler.js.map +1 -1
  106. package/dist/mux/mux-renderer.d.ts +2 -1
  107. package/dist/mux/mux-renderer.js +67 -0
  108. package/dist/mux/mux-renderer.js.map +1 -1
  109. package/dist/mux/provider-profile-snapshot.d.ts +44 -0
  110. package/dist/mux/provider-profile-snapshot.js +56 -0
  111. package/dist/mux/provider-profile-snapshot.js.map +1 -0
  112. package/dist/mux/types.d.ts +3 -2
  113. package/dist/mux/types.js +6 -2
  114. package/dist/mux/types.js.map +1 -1
  115. package/dist/observe/observe-command.js.map +1 -1
  116. package/dist/pipeline/constitution-compiler.js.map +1 -1
  117. package/dist/pipeline/generate-with-repair.js.map +1 -1
  118. package/dist/pipeline/refresh-lists.js.map +1 -1
  119. package/dist/pipeline/scenario-schema-validator.js.map +1 -1
  120. package/dist/{mux → pty}/pty-bridge.d.ts +39 -3
  121. package/dist/{mux → pty}/pty-bridge.js +68 -18
  122. package/dist/pty/pty-bridge.js.map +1 -0
  123. package/dist/pty/resolve-ironcurtain-bin.d.ts +17 -0
  124. package/dist/pty/resolve-ironcurtain-bin.js +22 -0
  125. package/dist/pty/resolve-ironcurtain-bin.js.map +1 -0
  126. package/dist/servers/fetch-server.js +2 -0
  127. package/dist/servers/fetch-server.js.map +1 -1
  128. package/dist/session/index.d.ts +1 -1
  129. package/dist/session/index.js +11 -2
  130. package/dist/session/index.js.map +1 -1
  131. package/dist/session/preflight.d.ts +19 -5
  132. package/dist/session/preflight.js +41 -25
  133. package/dist/session/preflight.js.map +1 -1
  134. package/dist/session/resource-budget-tracker.js +8 -0
  135. package/dist/session/resource-budget-tracker.js.map +1 -1
  136. package/dist/session/session-manager.d.ts +7 -0
  137. package/dist/session/session-manager.js.map +1 -1
  138. package/dist/session/types.d.ts +14 -0
  139. package/dist/signal/signal-bot-daemon.d.ts +1 -0
  140. package/dist/signal/signal-bot-daemon.js +9 -2
  141. package/dist/signal/signal-bot-daemon.js.map +1 -1
  142. package/dist/trusted-process/mcp-error-utils.js +4 -1
  143. package/dist/trusted-process/mcp-error-utils.js.map +1 -1
  144. package/dist/trusted-process/mcp-proxy-server.js +2 -0
  145. package/dist/trusted-process/mcp-proxy-server.js.map +1 -1
  146. package/dist/trusted-process/policy-engine.js.map +1 -1
  147. package/dist/trusted-process/tcp-server-transport.d.ts +7 -0
  148. package/dist/trusted-process/tcp-server-transport.js +48 -10
  149. package/dist/trusted-process/tcp-server-transport.js.map +1 -1
  150. package/dist/utils/preflight-checks.js +1 -3
  151. package/dist/utils/preflight-checks.js.map +1 -1
  152. package/dist/utils/stdio-guard.d.ts +1 -0
  153. package/dist/utils/stdio-guard.js +27 -0
  154. package/dist/utils/stdio-guard.js.map +1 -0
  155. package/dist/web-ui/__tests__/config-dispatch.test.d.ts +13 -0
  156. package/dist/web-ui/__tests__/config-dispatch.test.js +383 -0
  157. package/dist/web-ui/__tests__/config-dispatch.test.js.map +1 -0
  158. package/dist/web-ui/__tests__/json-rpc-dispatch.test.js +6 -0
  159. package/dist/web-ui/__tests__/json-rpc-dispatch.test.js.map +1 -1
  160. package/dist/web-ui/dispatch/config-dispatch.d.ts +15 -0
  161. package/dist/web-ui/dispatch/config-dispatch.js +277 -0
  162. package/dist/web-ui/dispatch/config-dispatch.js.map +1 -0
  163. package/dist/web-ui/dispatch/escalation-dispatch.js +11 -2
  164. package/dist/web-ui/dispatch/escalation-dispatch.js.map +1 -1
  165. package/dist/web-ui/dispatch/pty-dispatch.d.ts +15 -0
  166. package/dist/web-ui/dispatch/pty-dispatch.js +66 -0
  167. package/dist/web-ui/dispatch/pty-dispatch.js.map +1 -0
  168. package/dist/web-ui/dispatch/session-dispatch.js +69 -4
  169. package/dist/web-ui/dispatch/session-dispatch.js.map +1 -1
  170. package/dist/web-ui/dispatch/types.d.ts +12 -0
  171. package/dist/web-ui/dispatch/types.js +38 -1
  172. package/dist/web-ui/dispatch/types.js.map +1 -1
  173. package/dist/web-ui/dispatch/workflow-dispatch.js.map +1 -1
  174. package/dist/web-ui/json-rpc-dispatch.js +3 -0
  175. package/dist/web-ui/json-rpc-dispatch.js.map +1 -1
  176. package/dist/web-ui/pty-session-manager.d.ts +234 -0
  177. package/dist/web-ui/pty-session-manager.js +599 -0
  178. package/dist/web-ui/pty-session-manager.js.map +1 -0
  179. package/dist/web-ui/web-event-bus.d.ts +9 -0
  180. package/dist/web-ui/web-event-bus.js.map +1 -1
  181. package/dist/web-ui/web-session-transport.js.map +1 -1
  182. package/dist/web-ui/web-ui-server.d.ts +8 -0
  183. package/dist/web-ui/web-ui-server.js +25 -0
  184. package/dist/web-ui/web-ui-server.js.map +1 -1
  185. package/dist/web-ui/web-ui-types.d.ts +80 -1
  186. package/dist/web-ui/web-ui-types.js.map +1 -1
  187. package/dist/web-ui-static/assets/index-CCVI4nEK.css +1 -0
  188. package/dist/web-ui-static/assets/index-Dm012gvY.js +114 -0
  189. package/dist/web-ui-static/index.html +2 -2
  190. package/dist/workflow/daemon-gate-commands.js +38 -42
  191. package/dist/workflow/daemon-gate-commands.js.map +1 -1
  192. package/dist/workflow/machine-builder.js.map +1 -1
  193. package/dist/workflow/orchestrator.js +10 -7
  194. package/dist/workflow/orchestrator.js.map +1 -1
  195. package/dist/workflow/shutdown-signals.d.ts +7 -0
  196. package/dist/workflow/shutdown-signals.js +40 -0
  197. package/dist/workflow/shutdown-signals.js.map +1 -0
  198. package/dist/workflow/validate.js.map +1 -1
  199. package/dist/workflow/workflow-command.js +10 -8
  200. package/dist/workflow/workflow-command.js.map +1 -1
  201. package/dist/workflow/workflows/evolve/README.md +66 -0
  202. package/dist/workflow/workflows/vuln-discovery/README.md +54 -0
  203. package/docker/entrypoint-claude-code.sh +22 -0
  204. package/package.json +31 -27
  205. package/src/workflow/workflows/evolve/README.md +66 -0
  206. package/src/workflow/workflows/vuln-discovery/README.md +54 -0
  207. package/dist/mux/pty-bridge.js.map +0 -1
  208. package/dist/mux/trusted-input.js.map +0 -1
  209. package/dist/web-ui-static/assets/index-BD5U6ILh.css +0 -1
  210. package/dist/web-ui-static/assets/index-FMsHWEfK.js +0 -79
  211. package/packages/web-ui/README.md +0 -113
@@ -0,0 +1,383 @@
1
+ /**
2
+ * Unit tests for `config.*` dispatch (config-dispatch.ts).
3
+ *
4
+ * Covers the §12.6 wire contract for `config.getModelProviders` /
5
+ * `config.setModelProviders`: masking, the POLICY_MUTATION_FORBIDDEN gate, the
6
+ * per-profile M5 mask-unchanged/clear/set round-trip, the F7 `native`-key
7
+ * accept-and-drop / reject-other asymmetry, F10 delete-repoints-default, the
8
+ * validation-passthrough rejection (bad `default`), and `config.changed`.
9
+ *
10
+ * Config IO is isolated via a temp `IRONCURTAIN_HOME` (mirroring
11
+ * test/user-config.test.ts) so nothing touches the real ~/.ironcurtain.
12
+ */
13
+ import { describe, it, expect, beforeEach, afterEach, vi } from 'vitest';
14
+ import { mkdtempSync, rmSync, readFileSync, writeFileSync } from 'node:fs';
15
+ import { resolve } from 'node:path';
16
+ import { tmpdir } from 'node:os';
17
+ import { configDispatch } from '../dispatch/config-dispatch.js';
18
+ import { WebEventBus } from '../web-event-bus.js';
19
+ import { RpcError } from '../web-ui-types.js';
20
+ import { loadUserConfig } from '../../config/user-config.js';
21
+ // Env vars that affect config loading; save/restore between tests.
22
+ const ENV_VARS_TO_ISOLATE = ['IRONCURTAIN_HOME', 'OPENROUTER_API_KEY'];
23
+ let testHome;
24
+ const savedEnv = {};
25
+ function configPath() {
26
+ return resolve(testHome, 'config.json');
27
+ }
28
+ /** Writes a raw config.json into the isolated home. */
29
+ function writeConfig(config) {
30
+ writeFileSync(configPath(), JSON.stringify(config, null, 2) + '\n', 'utf-8');
31
+ }
32
+ /** Reads the raw on-disk config.json (throws if absent). */
33
+ function readConfig() {
34
+ return JSON.parse(readFileSync(configPath(), 'utf-8'));
35
+ }
36
+ /** A minimal dispatch context — only eventBus + allowPolicyMutation are used. */
37
+ function makeCtx(allowPolicyMutation) {
38
+ return {
39
+ eventBus: new WebEventBus(),
40
+ allowPolicyMutation,
41
+ };
42
+ }
43
+ async function get(ctx) {
44
+ return (await configDispatch(ctx, 'config.getModelProviders', {}));
45
+ }
46
+ async function set(ctx, params) {
47
+ return (await configDispatch(ctx, 'config.setModelProviders', params));
48
+ }
49
+ const SK_GLM = 'sk-or-v1-glmkeyREDACTED0000000000end';
50
+ const SK_KIMI = 'sk-or-v1-kimikeyREDACTED000000000end';
51
+ const MASK_GLM = 'sk-...end';
52
+ beforeEach(() => {
53
+ testHome = mkdtempSync(resolve(tmpdir(), 'ironcurtain-config-dispatch-'));
54
+ for (const key of ENV_VARS_TO_ISOLATE) {
55
+ savedEnv[key] = process.env[key];
56
+ Reflect.deleteProperty(process.env, key);
57
+ }
58
+ process.env.IRONCURTAIN_HOME = testHome;
59
+ });
60
+ afterEach(() => {
61
+ for (const key of ENV_VARS_TO_ISOLATE) {
62
+ if (savedEnv[key] !== undefined)
63
+ process.env[key] = savedEnv[key];
64
+ else
65
+ Reflect.deleteProperty(process.env, key);
66
+ }
67
+ rmSync(testHome, { recursive: true, force: true });
68
+ });
69
+ describe('config.getModelProviders', () => {
70
+ it('returns native-only registry when modelProviders is absent', async () => {
71
+ writeConfig({ preferredMode: 'container' });
72
+ const dto = await get(makeCtx(false));
73
+ expect(dto.default).toBe('native');
74
+ expect(dto.profiles.native).toEqual({ type: 'native' });
75
+ expect(Object.keys(dto.profiles)).toEqual(['native']);
76
+ });
77
+ it('masks every openrouter profile key; native present and key-less', async () => {
78
+ writeConfig({
79
+ modelProviders: {
80
+ default: 'glm',
81
+ profiles: {
82
+ glm: { type: 'openrouter', apiKey: SK_GLM },
83
+ kimi: { type: 'openrouter', apiKey: SK_KIMI },
84
+ },
85
+ },
86
+ });
87
+ const dto = await get(makeCtx(false));
88
+ expect(dto.default).toBe('glm');
89
+ // native is always present and carries no key.
90
+ expect(dto.profiles.native).toEqual({ type: 'native' });
91
+ const glm = dto.profiles.glm;
92
+ const kimi = dto.profiles.kimi;
93
+ expect(glm.type).toBe('openrouter');
94
+ expect(kimi.type).toBe('openrouter');
95
+ if (glm.type !== 'openrouter' || kimi.type !== 'openrouter')
96
+ throw new Error('unreachable');
97
+ expect(glm.apiKey).toBe(MASK_GLM);
98
+ expect(kimi.apiKey).toBe('sk-...end');
99
+ // The masks never leak the raw key.
100
+ expect(glm.apiKey).not.toContain('glmkey');
101
+ expect(kimi.apiKey).not.toContain('kimikey');
102
+ });
103
+ it('reports "none" for a profile that shares the env key only (no config apiKey)', async () => {
104
+ writeConfig({
105
+ modelProviders: { profiles: { kimi: { type: 'openrouter' } } },
106
+ });
107
+ const dto = await get(makeCtx(false));
108
+ const kimi = dto.profiles.kimi;
109
+ if (kimi.type !== 'openrouter')
110
+ throw new Error('unreachable');
111
+ expect(kimi.apiKey).toBe('none');
112
+ });
113
+ it('surfaces resolved defaults (perAgent/sessionAffinity) and OMITS modelMap for a minimal profile', async () => {
114
+ writeConfig({
115
+ modelProviders: { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM } } },
116
+ });
117
+ const dto = await get(makeCtx(false));
118
+ const glm = dto.profiles.glm;
119
+ if (glm.type !== 'openrouter')
120
+ throw new Error('unreachable');
121
+ // A default-tracking profile OMITS modelMap so the "track defaults" intent
122
+ // survives a set-back round-trip (rather than materializing DEFAULT_MODEL_MAP).
123
+ expect(glm.modelMap).toBeUndefined();
124
+ expect(glm.sessionAffinity).toBe(true);
125
+ expect(glm.perAgent).toBeDefined();
126
+ });
127
+ it('includes modelMap for a profile with an explicit non-empty map', async () => {
128
+ writeConfig({
129
+ modelProviders: {
130
+ profiles: {
131
+ glm: { type: 'openrouter', apiKey: SK_GLM, modelMap: [{ match: '*', model: 'z-ai/glm-5.2' }] },
132
+ },
133
+ },
134
+ });
135
+ const dto = await get(makeCtx(false));
136
+ const glm = dto.profiles.glm;
137
+ if (glm.type !== 'openrouter')
138
+ throw new Error('unreachable');
139
+ expect(glm.modelMap).toEqual([{ match: '*', model: 'z-ai/glm-5.2' }]);
140
+ });
141
+ it('includes an explicit empty modelMap (per-agent-only mode, distinct from default-tracking)', async () => {
142
+ writeConfig({
143
+ modelProviders: { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM, modelMap: [] } } },
144
+ });
145
+ const dto = await get(makeCtx(false));
146
+ const glm = dto.profiles.glm;
147
+ if (glm.type !== 'openrouter')
148
+ throw new Error('unreachable');
149
+ expect(glm.modelMap).toEqual([]);
150
+ });
151
+ });
152
+ describe('config.setModelProviders — gate', () => {
153
+ it('returns POLICY_MUTATION_FORBIDDEN when allowPolicyMutation is false', async () => {
154
+ writeConfig({});
155
+ await expect(set(makeCtx(false), { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM } } })).rejects.toMatchObject({ code: 'POLICY_MUTATION_FORBIDDEN' });
156
+ // Nothing was written.
157
+ expect(readConfig().modelProviders).toBeUndefined();
158
+ });
159
+ it('persists the whole section and emits config.changed when the gate is on', async () => {
160
+ writeConfig({});
161
+ const ctx = makeCtx(true);
162
+ const emitSpy = vi.spyOn(ctx.eventBus, 'emit');
163
+ const result = await set(ctx, {
164
+ default: 'glm',
165
+ profiles: { glm: { type: 'openrouter', apiKey: SK_GLM } },
166
+ });
167
+ expect(emitSpy).toHaveBeenCalledWith('config.changed', {});
168
+ expect(result.default).toBe('glm');
169
+ // Persisted with the real key on disk (masked over the wire).
170
+ const onDisk = readConfig().modelProviders;
171
+ expect(onDisk.default).toBe('glm');
172
+ expect(onDisk.profiles.glm.apiKey).toBe(SK_GLM);
173
+ // The get response never returns the raw key.
174
+ const glm = result.profiles.glm;
175
+ if (glm.type !== 'openrouter')
176
+ throw new Error('unreachable');
177
+ expect(glm.apiKey).toBe(MASK_GLM);
178
+ });
179
+ });
180
+ describe('config.setModelProviders — M5 per-profile apiKey', () => {
181
+ function seedTwoProfiles() {
182
+ writeConfig({
183
+ modelProviders: {
184
+ default: 'glm',
185
+ profiles: {
186
+ glm: { type: 'openrouter', apiKey: SK_GLM },
187
+ kimi: { type: 'openrouter', apiKey: SK_KIMI },
188
+ },
189
+ },
190
+ });
191
+ }
192
+ it('round-trip: set-back the masked DTO verbatim preserves every stored key', async () => {
193
+ seedTwoProfiles();
194
+ const ctx = makeCtx(true);
195
+ // get (masked) -> set-back verbatim (including the native echo, F7).
196
+ const gotten = await get(ctx);
197
+ await set(ctx, { default: gotten.default, profiles: gotten.profiles });
198
+ const onDisk = readConfig().modelProviders;
199
+ expect(onDisk.profiles.glm.apiKey).toBe(SK_GLM);
200
+ expect(onDisk.profiles.kimi.apiKey).toBe(SK_KIMI);
201
+ // native is NOT persisted (always implicit).
202
+ expect(onDisk.profiles.native).toBeUndefined();
203
+ // A subsequent load does not throw.
204
+ expect(() => loadUserConfig({ readOnly: true })).not.toThrow();
205
+ });
206
+ it('empty string clears a profile key; a new string sets it', async () => {
207
+ seedTwoProfiles();
208
+ const ctx = makeCtx(true);
209
+ await set(ctx, {
210
+ default: 'glm',
211
+ profiles: {
212
+ glm: { type: 'openrouter', apiKey: '' }, // clear
213
+ kimi: { type: 'openrouter', apiKey: 'sk-or-v1-BRANDNEWkey0000000000000new' }, // set
214
+ },
215
+ });
216
+ const onDisk = readConfig().modelProviders;
217
+ // Cleared: apiKey omitted from the persisted profile.
218
+ expect(onDisk.profiles.glm.apiKey).toBeUndefined();
219
+ expect(onDisk.profiles.kimi.apiKey).toBe('sk-or-v1-BRANDNEWkey0000000000000new');
220
+ });
221
+ it('absent apiKey keeps the stored key; null keeps it too', async () => {
222
+ seedTwoProfiles();
223
+ const ctx = makeCtx(true);
224
+ await set(ctx, {
225
+ default: 'glm',
226
+ profiles: {
227
+ glm: { type: 'openrouter' }, // apiKey absent -> keep
228
+ kimi: { type: 'openrouter', apiKey: null }, // null -> keep
229
+ },
230
+ });
231
+ const onDisk = readConfig().modelProviders;
232
+ expect(onDisk.profiles.glm.apiKey).toBe(SK_GLM);
233
+ expect(onDisk.profiles.kimi.apiKey).toBe(SK_KIMI);
234
+ });
235
+ it('drops a profile omitted from the request (whole-record replace)', async () => {
236
+ seedTwoProfiles();
237
+ const ctx = makeCtx(true);
238
+ await set(ctx, {
239
+ default: 'glm',
240
+ profiles: { glm: { type: 'openrouter', apiKey: MASK_GLM } }, // kimi omitted
241
+ });
242
+ const onDisk = readConfig().modelProviders;
243
+ expect(onDisk.profiles.glm).toBeDefined();
244
+ expect(onDisk.profiles.kimi).toBeUndefined();
245
+ // glm key preserved (mask-equal).
246
+ const glm = onDisk.profiles.glm;
247
+ expect(glm.apiKey).toBe(SK_GLM);
248
+ });
249
+ });
250
+ describe('config.setModelProviders — default-map preservation (round-trip)', () => {
251
+ it('a default-tracking profile stays default-tracking after a GET/SET round-trip', async () => {
252
+ // On-disk profile OMITS modelMap => it tracks DEFAULT_MODEL_MAP.
253
+ writeConfig({
254
+ modelProviders: { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM } } },
255
+ });
256
+ const ctx = makeCtx(true);
257
+ // GET returns the profile with modelMap OMITTED...
258
+ const gotten = await get(ctx);
259
+ const gotGlm = gotten.profiles.glm;
260
+ if (gotGlm.type !== 'openrouter')
261
+ throw new Error('unreachable');
262
+ expect(gotGlm.modelMap).toBeUndefined();
263
+ // ...and setting it back verbatim must NOT materialize DEFAULT_MODEL_MAP.
264
+ await set(ctx, { default: gotten.default, profiles: gotten.profiles });
265
+ const onDisk = readConfig().modelProviders;
266
+ expect(onDisk.profiles.glm.modelMap).toBeUndefined();
267
+ });
268
+ it('an explicit empty modelMap is preserved (not dropped) across a round-trip', async () => {
269
+ writeConfig({
270
+ modelProviders: { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM, modelMap: [] } } },
271
+ });
272
+ const ctx = makeCtx(true);
273
+ const gotten = await get(ctx);
274
+ await set(ctx, { default: gotten.default, profiles: gotten.profiles });
275
+ const onDisk = readConfig().modelProviders;
276
+ expect(onDisk.profiles.glm.modelMap).toEqual([]);
277
+ });
278
+ });
279
+ describe('config.setModelProviders — F7 native-key asymmetry', () => {
280
+ it('accepts-and-drops a verbatim { type: "native" } under profiles.native', async () => {
281
+ writeConfig({ modelProviders: { profiles: { glm: { type: 'openrouter', apiKey: SK_GLM } } } });
282
+ const ctx = makeCtx(true);
283
+ // Set-back a get response verbatim (which includes native) — must not throw.
284
+ const gotten = await get(ctx);
285
+ await expect(set(ctx, { default: gotten.default, profiles: gotten.profiles })).resolves.toBeDefined();
286
+ const onDisk = readConfig().modelProviders;
287
+ expect(onDisk.profiles.native).toBeUndefined();
288
+ });
289
+ it('rejects any non-native value under the native key', async () => {
290
+ writeConfig({});
291
+ const ctx = makeCtx(true);
292
+ await expect(set(ctx, { profiles: { native: { type: 'openrouter', apiKey: SK_GLM } } })).rejects.toBeInstanceOf(RpcError);
293
+ });
294
+ });
295
+ describe('config.setModelProviders — F10 delete-repoints-default', () => {
296
+ it('re-points default to native when the request drops the current default profile', async () => {
297
+ writeConfig({
298
+ modelProviders: {
299
+ default: 'glm',
300
+ profiles: {
301
+ glm: { type: 'openrouter', apiKey: SK_GLM },
302
+ kimi: { type: 'openrouter', apiKey: SK_KIMI },
303
+ },
304
+ },
305
+ });
306
+ const ctx = makeCtx(true);
307
+ // Delete glm (the current default) by omitting it; send default: 'glm' as
308
+ // the naive frontend would after removing it from the local list. Backend
309
+ // must re-point to native rather than persist a dangling default.
310
+ const result = await set(ctx, {
311
+ default: 'glm',
312
+ profiles: { kimi: { type: 'openrouter', apiKey: 'sk-...end' } },
313
+ });
314
+ const onDisk = readConfig().modelProviders;
315
+ expect(onDisk.default).toBe('native');
316
+ expect(onDisk.profiles.glm).toBeUndefined();
317
+ expect(onDisk.profiles.kimi).toBeDefined();
318
+ expect(result.default).toBe('native');
319
+ // The next load does not throw (no dangling default).
320
+ expect(() => loadUserConfig({ readOnly: true })).not.toThrow();
321
+ });
322
+ it('re-points to native when the request DROPS the current default and OMITS default entirely', async () => {
323
+ writeConfig({
324
+ modelProviders: {
325
+ default: 'glm',
326
+ profiles: {
327
+ glm: { type: 'openrouter', apiKey: SK_GLM },
328
+ kimi: { type: 'openrouter', apiKey: SK_KIMI },
329
+ },
330
+ },
331
+ });
332
+ const ctx = makeCtx(true);
333
+ // A raw client deletes glm (the current default) WITHOUT resending `default`.
334
+ // The shallow merge would preserve the stale `default: 'glm'` and dangle it;
335
+ // the backend must auto-repoint to native rather than reject the write.
336
+ const result = await set(ctx, { profiles: { kimi: { type: 'openrouter', apiKey: 'sk-...end' } } });
337
+ const onDisk = readConfig().modelProviders;
338
+ expect(onDisk.default).toBe('native');
339
+ expect(onDisk.profiles.glm).toBeUndefined();
340
+ expect(result.default).toBe('native');
341
+ expect(() => loadUserConfig({ readOnly: true })).not.toThrow();
342
+ });
343
+ it('leaves the stored default untouched when default is omitted and its profile survives', async () => {
344
+ writeConfig({
345
+ modelProviders: {
346
+ default: 'glm',
347
+ profiles: {
348
+ glm: { type: 'openrouter', apiKey: SK_GLM },
349
+ kimi: { type: 'openrouter', apiKey: SK_KIMI },
350
+ },
351
+ },
352
+ });
353
+ const ctx = makeCtx(true);
354
+ // Omit `default`; glm (the stored default) is still present, so preservation
355
+ // is correct — the fix must not gratuitously rewrite the default.
356
+ const result = await set(ctx, {
357
+ profiles: { glm: { type: 'openrouter', apiKey: 'sk-...glm' }, kimi: { type: 'openrouter', apiKey: 'sk-...end' } },
358
+ });
359
+ expect(result.default).toBe('glm');
360
+ expect(readConfig().modelProviders.default).toBe('glm');
361
+ });
362
+ });
363
+ describe('config.setModelProviders — validation passthrough', () => {
364
+ it('rejects a request whose default names a profile that never existed (bad default)', async () => {
365
+ // 'ghost' is neither in the request nor in the stored config, so it is NOT
366
+ // a delete-repoint case — the request itself set a bad default. The backend
367
+ // leaves it dangling so the Zod .refine in saveUserConfig rejects it.
368
+ writeConfig({});
369
+ const ctx = makeCtx(true);
370
+ await expect(set(ctx, { default: 'ghost', profiles: { real: { type: 'openrouter', apiKey: SK_GLM } } })).rejects.toBeInstanceOf(RpcError);
371
+ // Nothing was persisted.
372
+ expect(readConfig().modelProviders).toBeUndefined();
373
+ });
374
+ });
375
+ describe('config dispatch — routing', () => {
376
+ it('throws MethodNotFoundError for an unknown config method', async () => {
377
+ writeConfig({});
378
+ await expect(configDispatch(makeCtx(false), 'config.bogus', {})).rejects.toMatchObject({
379
+ code: 'METHOD_NOT_FOUND',
380
+ });
381
+ });
382
+ });
383
+ //# sourceMappingURL=config-dispatch.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config-dispatch.test.js","sourceRoot":"","sources":["../../../src/web-ui/__tests__/config-dispatch.test.ts"],"names":[],"mappings":"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"}
@@ -706,6 +706,7 @@ describe('dispatch()', () => {
706
706
  expect(dto.webUiListening).toBe(true);
707
707
  expect(dto.activeSessions).toBe(ctx.sessionManager.size);
708
708
  expect(typeof dto.nextFireTime).toBe('string');
709
+ expect(dto.sessionMode).toBe('container');
709
710
  });
710
711
  it('returns null nextFireTime when no scheduled jobs', () => {
711
712
  const handler = createMockHandler({
@@ -720,6 +721,11 @@ describe('dispatch()', () => {
720
721
  const dto = buildStatusDto(ctx);
721
722
  expect(dto.nextFireTime).toBeNull();
722
723
  });
724
+ it('returns builtin sessionMode for builtin daemon mode', () => {
725
+ const ctx = createMockContext({ mode: { kind: 'builtin' } });
726
+ const dto = buildStatusDto(ctx);
727
+ expect(dto.sessionMode).toBe('builtin');
728
+ });
723
729
  });
724
730
  });
725
731
  //# sourceMappingURL=json-rpc-dispatch.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"json-rpc-dispatch.test.js","sourceRoot":"","sources":["../../../src/web-ui/__tests__/json-rpc-dispatch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"json-rpc-dispatch.test.js","sourceRoot":"","sources":["../../../src/web-ui/__tests__/json-rpc-dispatch.test.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,sDAAsD;AAEtD,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAElD,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,cAAc,EAAwB,MAAM,yBAAyB,CAAC;AACpH,OAAO,EAEL,kBAAkB,EAClB,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,GACT,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAmD,MAAM,kCAAkC,CAAC;AAMnH,8EAA8E;AAC9E,uDAAuD;AACvD,8EAA8E;AAE9E,EAAE,CAAC,IAAI,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxC,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;CAC5C,CAAC,CAAC,CAAC;AAEJ,EAAE,CAAC,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC7C,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;QACpC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,uBAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE;QAC/E,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE;KACzE,CAAC;CACH,CAAC,CAAC,CAAC;AAEJ,uEAAuE;AACvE,iDAAiD;AACjD,EAAE,CAAC,IAAI,CAAC,uBAAuB,EAAE,GAAG,EAAE,CAAC,CAAC;IACtC,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE,CAAC;CACxC,CAAC,CAAC,CAAC;AACJ,EAAE,CAAC,IAAI,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,CAAC;IACvC,aAAa,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;CAC7C,CAAC,CAAC,CAAC;AACJ,uEAAuE;AACvE,uEAAuE;AACvE,EAAE,CAAC,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC;CACrD,CAAC,CAAC,CAAC;AAEJ,8EAA8E;AAC9E,sBAAsB;AACtB,8EAA8E;AAE9E,SAAS,sBAAsB;IAC7B,OAAO;QACL,gBAAgB,EAAE,IAAI;QACtB,iBAAiB,EAAE,IAAI;QACvB,WAAW,EAAE,IAAI;QACjB,SAAS,EAAE,EAAE;QACb,cAAc,EAAE,GAAG;QACnB,gBAAgB,EAAE,IAAI;QACtB,sBAAsB,EAAE,IAAI;QAC5B,MAAM,EAAE;YACN,cAAc,EAAE,SAAS;YACzB,QAAQ,EAAE,GAAG;YACb,iBAAiB,EAAE,IAAI;YACvB,mBAAmB,EAAE,GAAG;YACxB,oBAAoB,EAAE,EAAE;SACzB;QACD,UAAU,EAAE;YACV,gBAAgB,EAAE,IAAI;YACtB,iBAAiB,EAAE,IAAI;YACvB,WAAW,EAAE,IAAI;YACjB,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,GAAG;YAClB,gBAAgB,EAAE,IAAI;SACvB;KACF,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,SAAgC;IAC7D,OAAO;QACL,EAAE,EAAE,iBAAsC;QAC1C,MAAM,EAAE,OAAO;QACf,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,0BAA0B;QACrC,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAiF;IAC1G,MAAM,IAAI,GAAG,qBAAqB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACpD,MAAM,YAAY,GAAG,EAAE,GAAG,sBAAsB,EAAE,EAAE,GAAG,SAAS,EAAE,YAAY,EAAE,CAAC;IACjF,OAAO;QACL,OAAO,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;QACtC,eAAe,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,CAAC;QACtD,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;YAClC;gBACE,UAAU,EAAE,CAAC;gBACb,WAAW,EAAE,OAAO;gBACpB,iBAAiB,EAAE,WAAW;gBAC9B,KAAK,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE;gBAC7G,SAAS,EAAE,0BAA0B;aACtC;SAC2B,CAAC;QAC/B,gBAAgB,EAAE,EAAE;aACjB,EAAE,EAAE;aACJ,eAAe,CAAC;YACf,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE;SAC3C,CAAC;QAChC,WAAW,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC;QAClD,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QACvD,oBAAoB,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,CAAC;QACxD,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;KAC5C,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;QACL,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QACzC,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE;QACd,cAAc,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,eAAe,CAAC;KAC3D,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,SAMjC;IACC,MAAM,KAAK,GAAG,SAAS,EAAE,KAAK,IAAI,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,SAAS,EAAE,UAAU,IAAI,KAAK,CAAC;IAClD,MAAM,MAAM,GACV,UAAU,KAAK,MAAM;QACnB,CAAC,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,KAAK,EAAE,UAAiC,EAAE,OAAO,EAAE,UAAU,EAAE;QAC1F,CAAC,CAAC,UAAU,KAAK,QAAQ;YACvB,CAAC,CAAC,EAAE,IAAI,EAAE,QAAiB,EAAE;YAC7B,CAAC,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAE9D,OAAO;QACL,KAAK;QACL,OAAO,EAAE,iBAAiB,EAAE;QAC5B,SAAS,EAAE,mBAAmB,EAAE;QAChC,MAAM;QACN,eAAe,EAAE,SAAS,EAAE,eAAe,IAAI,KAAK;QACpD,iBAAiB,EAAE,SAAS,EAAE,iBAAiB,IAAI,IAAI;QACvD,mBAAmB,EAAE,KAAK;QAC1B,UAAU,EAAE,IAAI;KACjB,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB;IAC7B,OAAO;QACL,aAAa,EAAE,GAAG;QAClB,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;QAC1C,eAAe,EAAE,IAAI;QACrB,YAAY,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,SAA0C;IACnE,OAAO;QACL,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,sBAAsB,EAAE,CAAC;QAC5D,MAAM,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC5C,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC/C,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC/C,UAAU,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAChD,YAAY,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAClD,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC;QAC/C,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC;YACnC,SAAS,EAAE,0BAA0B;YACrC,WAAW,EAAE,0BAA0B;YACvC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;YAC5B,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE;YACxF,OAAO,EAAE,4BAA4B;YACrC,sBAAsB,EAAE,CAAC;YACzB,mBAAmB,EAAE,CAAC;YACtB,gBAAgB,EAAE,IAAI;SACH,CAAC;QACtB,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;YAChC;gBACE,GAAG,EAAE;oBACH,EAAE,EAAE,cAAuB;oBAC3B,IAAI,EAAE,mBAAmB;oBACzB,QAAQ,EAAE,aAAa;oBACvB,eAAe,EAAE,YAAY;oBAC7B,gBAAgB,EAAE,kBAAkB;oBACpC,kBAAkB,EAAE,KAAK;oBACzB,kBAAkB,EAAE,IAAI;oBACxB,OAAO,EAAE,IAAI;iBACU;gBACzB,OAAO,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC7C,OAAO,EAAE,SAAS;gBAClB,SAAS,EAAE,KAAK;aACjB;YACD;gBACE,GAAG,EAAE;oBACH,EAAE,EAAE,cAAuB;oBAC3B,IAAI,EAAE,cAAc;oBACpB,QAAQ,EAAE,WAAW;oBACrB,eAAe,EAAE,YAAY;oBAC7B,gBAAgB,EAAE,sBAAsB;oBACxC,kBAAkB,EAAE,IAAI;oBACxB,kBAAkB,EAAE,IAAI;oBACxB,OAAO,EAAE,IAAI;iBACU;gBACzB,OAAO,EAAE,IAAI,IAAI,CAAC,0BAA0B,CAAC;gBAC7C,OAAO,EAAE;oBACP,SAAS,EAAE,0BAA0B;oBACrC,WAAW,EAAE,0BAA0B;oBACvC,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;oBAC5B,MAAM,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,cAAc,EAAE,GAAG,EAAE,gBAAgB,EAAE,IAAI,EAAE;oBACxF,OAAO,EAAE,gBAAgB;oBACzB,sBAAsB,EAAE,CAAC;oBACzB,mBAAmB,EAAE,CAAC;oBACtB,gBAAgB,EAAE,IAAI;iBACH;gBACrB,SAAS,EAAE,KAAK;aACjB;SACF,CAAC;QACF,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,SAAoC;IAC7D,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;IAC5C,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;IACrG,MAAM,QAAQ,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;IAE5E,0DAA0D;IAC1D,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC/E,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE/E,OAAO;QACL,OAAO,EAAE,iBAAiB,EAAE;QAC5B,cAAc;QACd,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAsB,EAAE;QACvD,QAAQ,EAAE,IAAI,WAAW,EAAE;QAC3B,wBAAwB,EAAE,CAAC;QAC3B,aAAa,EAAE,IAAI,GAAG,EAAE;QACxB,GAAG,SAAS;KACb,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,QAAQ;AACR,8EAA8E;AAE9E,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;IAC1B,0EAA0E;IAC1E,iBAAiB;IACjB,0EAA0E;IAC1E,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACtG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACjG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC/G,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC3G,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACjG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO;gBACrB,QAAQ,EAAE,OAAO;aAClB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,QAAQ,EAAE,UAAU;aACrB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sCAAsC,EAAE,KAAK,IAAI,EAAE;YACpD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAChG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;YACtD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QACrF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0DAA0D,EAAE,KAAK,IAAI,EAAE;YACxE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,6FAA6F;YAC7F,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO;gBACrB,QAAQ,EAAE,UAAU;aACrB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5B,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO;gBACrB,QAAQ,EAAE,UAAU;aACrB,CAAC,CACH,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wDAAwD,EAAE,KAAK,IAAI,EAAE;YACtE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO;gBACrB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CACH,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAC5B,MAAM,MAAM,CACV,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACnC,YAAY,EAAE,OAAO;gBACrB,QAAQ,EAAE,QAAQ;aACnB,CAAC,CACH,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,4BAA4B;IAC5B,0EAA0E;IAC1E,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;QAC/B,EAAE,CAAC,kCAAkC,EAAE,KAAK,IAAI,EAAE;YAChD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CAAC,CAA4B,CAAC;YAC9E,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;YACpD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YACtC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;YACtD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAC9C,yDAAyD;YACzD,MAAM,CAAC,OAAO,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uCAAuC,EAAE,KAAK,IAAI,EAAE;YACrD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAmC,CAAC;YACxF,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACrD,6CAA6C;YAC7C,MAAM,CAAC,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mDAAmD,EAAE,KAAK,IAAI,EAAE;YACjE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAmC,CAAC;YACxF,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC,CAAmC,CAAC;YACxF,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,CAAE,MAAM,CAAC,CAAC,CAAC,CAAC,OAAqB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAChF,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAA4B,CAAC;YACvG,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAClE,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAAC;QAClG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAC9E,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;YAChF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC/D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAC/E,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAC9E,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YACjE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YACjF,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;YAC9E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,aAAa,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAC9E,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;YACzD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,CAAC,CAAmC,CAAC;YAC5F,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,0CAA0C;YAC1C,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;gBACzB,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;gBACxC,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;YACvC,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAA4B,CAAC;YAC9F,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC1C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;YAC/C,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACjD,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;YAC1E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAA4B,CAAC;YACjG,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;YAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;YAC3C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;YAChD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,wBAAwB,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAuB,CAAC;YAC7F,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAClD,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;YAC3D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,sBAAsB,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAsB,CAAC;YAChG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;YAC/D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAA4B,CAAC;YAC9G,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;YACrE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAE/C,MAAM,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,CAAC,OAAO,CAAC,CAAC,oBAAoB,CAAC,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;YAC5D,MAAM,UAAU,GAA0B;gBACxC,YAAY,EAAE,SAAS;gBACvB,YAAY,EAAE,CAAC;gBACf,QAAQ,EAAE,YAAY;gBACtB,UAAU,EAAE,YAAY;gBACxB,SAAS,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;gBACpC,MAAM,EAAE,yBAAyB;gBACjC,UAAU,EAAE,0BAA0B;aACvC,CAAC;YAEF,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAC3E,cAAc,CAAC,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAEvD,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,CAAC,CAAmC,CAAC;YAC/F,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;YAC5D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAC3D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAE3E,MAAM,UAAU,GAA0B;gBACxC,YAAY,EAAE,SAAS;gBACvB,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,aAAa;gBACvB,UAAU,EAAE,YAAY;gBACxB,SAAS,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE;gBACpC,MAAM,EAAE,kBAAkB;gBAC1B,UAAU,EAAE,0BAA0B;aACvC,CAAC;YACF,cAAc,CAAC,oBAAoB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YAEvD,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;YAElD,wDAAwD;YACxD,MAAM,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACzC,YAAY,EAAE,SAAS;gBACvB,QAAQ,EAAE,UAAU;aACrB,CAAC,CAAC;YAEH,oDAAoD;YACpD,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;QACtG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;YACpE,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;YACpC,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAE3E,cAAc,CAAC,oBAAoB,CAAC,KAAK,EAAE;gBACzC,YAAY,EAAE,SAAS;gBACvB,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,YAAY;gBACtB,UAAU,EAAE,YAAY;gBACxB,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;YAElD,MAAM,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACzC,YAAY,EAAE,SAAS;gBACvB,QAAQ,EAAE,QAAQ;gBAClB,kBAAkB,EAAE,CAAC;aACtB,CAAC,CAAC;YAEH,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,oBAAoB,CAAC,SAAS,EAAE,QAAQ,EAAE,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC;QACpH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;YACvD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,GAAG,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,CAAC,CAAmC,CAAC;YAC5F,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACzC,MAAM,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,WAAW,EAAE,uBAAuB,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;YAC3G,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC;QACtG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;YAC3E,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACnE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAEhC,MAAM,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;YAC5D,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;YAC7C,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACnE,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAEhC,MAAM,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,cAAc;IACd,0EAA0E;IAC1E,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;QAC3B,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;YAC1D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,mBAAiC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAC1G,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,GAAG,EAAE,OAAqB,EAAE,EAAE,CAAC,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;gBAChD,MAAM,CAAE,GAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAC1D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;YACjF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,GAAG,EAAE,cAAc,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,oBAAoB,CAAC,CAAC;gBACjD,MAAM,CAAE,GAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sEAAsE,EAAE,KAAK,IAAI,EAAE;YACpF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,iBAAiB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACvG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;YACrF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,kBAAkB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACxG,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2EAA2E,EAAE,KAAK,IAAI,EAAE;YACzF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,sBAAsB,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC5G,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;YAC7E,sDAAsD;YACtD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBAClE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAE,GAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBACtD,MAAM,CAAE,GAAgB,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;YACnE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;YAClF,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC;QACpH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;oBACzC,YAAY,EAAE,aAAa;oBAC3B,QAAQ,EAAE,UAAU;iBACrB,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAE,GAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YAC9D,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;YAC/E,MAAM,cAAc,GAAG,IAAI,cAAc,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;YACpC,wDAAwD;YACxD,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,kBAAkB,CACrD,GAAG,EAAE,CAAC,IAAI,OAAO,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAC5B,CAAC;YACF,MAAM,SAAS,GAAG,mBAAmB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;YAE3E,cAAc,CAAC,oBAAoB,CAAC,KAAK,EAAE;gBACzC,YAAY,EAAE,UAAU;gBACxB,YAAY,EAAE,KAAK;gBACnB,QAAQ,EAAE,YAAY;gBACtB,UAAU,EAAE,YAAY;gBACxB,SAAS,EAAE,EAAE;gBACb,MAAM,EAAE,MAAM;gBACd,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACrC,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;YAElD,8EAA8E;YAC9E,KAAK,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;gBACxC,YAAY,EAAE,UAAU;gBACxB,QAAQ,EAAE,UAAU;aACrB,CAAC,CAAC;YAEH,wDAAwD;YACxD,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YAE5C,kEAAkE;YAClE,IAAI,CAAC;gBACH,MAAM,QAAQ,CAAC,GAAG,EAAE,qBAAqB,EAAE;oBACzC,YAAY,EAAE,UAAU;oBACxB,QAAQ,EAAE,QAAQ;iBACnB,CAAC,CAAC;gBACH,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACrC,MAAM,CAAE,GAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACtD,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,0EAA0E;IAC1E,oBAAoB;IACpB,0EAA0E;IAC1E,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;YACjD,MAAM,OAAO,GAAG,wBAAwB,CAAC;gBACvC,KAAK,EAAE,CAAC;gBACR,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,eAAe;aACzB,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC;YACtE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC1C,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAChD,MAAM,WAAW,GAAG,wBAAwB,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC;YAC/E,MAAM,GAAG,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;YAC9D,MAAM,OAAO,GAAG,wBAAwB,CAAC;gBACvC,iBAAiB,EAAE;oBACjB,YAAY,EAAE,OAAO;oBACrB,YAAY,EAAE,CAAC;oBACf,QAAQ,EAAE,YAAY;oBACtB,UAAU,EAAE,YAAY;oBACxB,SAAS,EAAE,EAAE;oBACb,MAAM,EAAE,MAAM;oBACd,UAAU,EAAE,0BAA0B;iBACvC;aACF,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,OAAO,GAAG,wBAAwB,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YACpE,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAClC,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;QAC7B,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACxC,MAAM,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;YAClC,MAAM,OAAO,GAAG,wBAAwB,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;gBACzB,cAAc,EAAE,SAAS;gBACzB,QAAQ,EAAE,GAAG;gBACb,iBAAiB,EAAE,IAAI;gBACvB,mBAAmB,EAAE,GAAG;aACzB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;QAChC,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;YAC/C,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;YAC/D,MAAM,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACzD,MAAM,CAAC,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC5C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;YAC1D,MAAM,OAAO,GAAG,iBAAiB,CAAC;gBAChC,SAAS,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC;oBACjC,aAAa,EAAE,EAAE;oBACjB,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE;oBAC1C,eAAe,EAAE,KAAK;oBACtB,YAAY,EAAE,IAAI;iBACnB,CAAC;aACH,CAAC,CAAC;YACH,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;YAC7D,MAAM,GAAG,GAAG,iBAAiB,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;YAC7D,MAAM,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YAChC,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Config-related JSON-RPC method dispatch.
3
+ *
4
+ * Handles `config.*` methods, scoped to the `modelProviders` provider-profile
5
+ * registry only (see docs/designs/openrouter-integration.md §5-G / §12.6):
6
+ * - `config.getModelProviders` — read; masks every openrouter profile's key.
7
+ * - `config.setModelProviders` — mutation; gated on `ctx.allowPolicyMutation`,
8
+ * persists the WHOLE section via `saveUserConfig`, emits `config.changed`.
9
+ *
10
+ * Mirrors the `personas.*` gated-mutation pattern for the gate + change-event
11
+ * (persona-dispatch.ts:219,286). Unlike personas, the mutation persists to
12
+ * `~/.ironcurtain/config.json` via `saveUserConfig`.
13
+ */
14
+ import type { WorkflowDispatchContext } from './workflow-dispatch.js';
15
+ export declare function configDispatch(ctx: WorkflowDispatchContext, method: string, params: Record<string, unknown>): Promise<unknown>;