kiokuko-dsh 0.2.5 → 0.2.6

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 (58) hide show
  1. package/dist/client.cjs +78 -8
  2. package/dist/dsh/execution-selection.d.ts +13 -0
  3. package/dist/dsh/execution-selection.d.ts.map +1 -1
  4. package/dist/dsh/execution-selection.js +11 -0
  5. package/dist/dsh/execution-selection.js.map +1 -1
  6. package/dist/dsh/head-worker-configuration.d.ts +27 -0
  7. package/dist/dsh/head-worker-configuration.d.ts.map +1 -0
  8. package/dist/dsh/head-worker-configuration.js +69 -0
  9. package/dist/dsh/head-worker-configuration.js.map +1 -0
  10. package/dist/dsh/host-adapter/admission.d.ts.map +1 -1
  11. package/dist/dsh/host-adapter/admission.js +3 -0
  12. package/dist/dsh/host-adapter/admission.js.map +1 -1
  13. package/dist/dsh/host-adapter/routing.d.ts +3 -1
  14. package/dist/dsh/host-adapter/routing.d.ts.map +1 -1
  15. package/dist/dsh/host-adapter/routing.js +11 -6
  16. package/dist/dsh/host-adapter/routing.js.map +1 -1
  17. package/dist/dsh/host-adapter.d.ts.map +1 -1
  18. package/dist/dsh/host-adapter.js +146 -1
  19. package/dist/dsh/host-adapter.js.map +1 -1
  20. package/dist/dsh/model-selection-ui.d.ts +2 -0
  21. package/dist/dsh/model-selection-ui.d.ts.map +1 -1
  22. package/dist/dsh/model-selection-ui.js +69 -5
  23. package/dist/dsh/model-selection-ui.js.map +1 -1
  24. package/dist/dsh/models/contracts.d.ts +30 -2
  25. package/dist/dsh/models/contracts.d.ts.map +1 -1
  26. package/dist/dsh/models/contracts.js +6 -0
  27. package/dist/dsh/models/contracts.js.map +1 -1
  28. package/dist/dsh/models/profiles.d.ts +2 -0
  29. package/dist/dsh/models/profiles.d.ts.map +1 -1
  30. package/dist/dsh/models/profiles.js +7 -3
  31. package/dist/dsh/models/profiles.js.map +1 -1
  32. package/dist/dsh/models/service.d.ts +58 -3
  33. package/dist/dsh/models/service.d.ts.map +1 -1
  34. package/dist/dsh/models/service.js +159 -18
  35. package/dist/dsh/models/service.js.map +1 -1
  36. package/dist/dsh/models/session-selection.d.ts +25 -0
  37. package/dist/dsh/models/session-selection.d.ts.map +1 -0
  38. package/dist/dsh/models/session-selection.js +16 -0
  39. package/dist/dsh/models/session-selection.js.map +1 -0
  40. package/dist/dsh/models/surface.d.ts +1 -0
  41. package/dist/dsh/models/surface.d.ts.map +1 -1
  42. package/dist/dsh/models/surface.js +24 -4
  43. package/dist/dsh/models/surface.js.map +1 -1
  44. package/dist/dsh/native-worker-routing.d.ts +69 -0
  45. package/dist/dsh/native-worker-routing.d.ts.map +1 -0
  46. package/dist/dsh/native-worker-routing.js +147 -0
  47. package/dist/dsh/native-worker-routing.js.map +1 -0
  48. package/dist/locale/en.json +1 -1
  49. package/dist/locale/ja.json +1 -1
  50. package/dist/locale/ko.json +1 -1
  51. package/dist/locale/zh-CN.json +1 -1
  52. package/dist/models-client.cjs +78 -8
  53. package/dist/models-client.d.ts.map +1 -1
  54. package/dist/models-client.js +76 -8
  55. package/dist/models-client.js.map +1 -1
  56. package/docs/kiokuko-models.md +47 -0
  57. package/migrations/037_native_worker_routing.sql +8 -0
  58. package/package.json +1 -1
@@ -86,6 +86,7 @@ window.__ModuleLoader__.load({
86
86
  function KiokukoModelsPanel(props) {
87
87
  const [state, setState] = useState({ revision: 0, connections: [] }), [connection, setConnection] = useState(null), [models, setModels] = useState([]), [filter, setFilter] = useState("");
88
88
  const [busy, setBusy] = useState(false), [error, setError] = useState(""), [notice, setNotice] = useState(""), [key, setKey] = useState(""), [auth, setAuth] = useState(null), [answer, setAnswer] = useState("");
89
+ const [headChoice, setHeadChoice] = useState(""), [workerChoice, setWorkerChoice] = useState("");
89
90
  const [manual, setManual] = useState({
90
91
  id: "",
91
92
  contextWindow: 262144,
@@ -94,12 +95,27 @@ window.__ModuleLoader__.load({
94
95
  image: false
95
96
  });
96
97
  const [advanced, setAdvanced] = useState(false), [manualOpen, setManualOpen] = useState(false);
97
- const operation = useRef(void 0), mounted = useRef(true), working = useRef(false);
98
+ const operation = useRef(void 0), mounted = useRef(true), working = useRef(false), loadSequence = useRef(0);
98
99
  const sessionId = props.sessionId;
100
+ const currentSession = useRef(sessionId);
101
+ currentSession.current = sessionId;
102
+ const bindingKey = (binding) => binding ? JSON.stringify({ provider: binding.provider, model: binding.model }) : "";
103
+ const restorePairDraft = (value) => {
104
+ const candidates = value.headWorker?.candidates, selected = value.headWorker?.current;
105
+ const choice = (role, list) => {
106
+ const saved = list.find((candidate) => bindingKey(candidate) === bindingKey(selected?.[role]));
107
+ return bindingKey(saved ?? (list.length === 1 ? list[0] : void 0));
108
+ };
109
+ setHeadChoice(choice("head", candidates?.heads ?? []));
110
+ setWorkerChoice(choice("worker", candidates?.workers ?? []));
111
+ };
99
112
  const load = async () => {
100
- const value = await modelsApi();
101
- if (mounted.current)
113
+ const sequence = ++loadSequence.current;
114
+ const value = await modelsApi(void 0, sessionId ? "?sessionId=" + encodeURIComponent(sessionId) : "");
115
+ if (mounted.current && currentSession.current === sessionId && loadSequence.current === sequence) {
102
116
  setState(value);
117
+ restorePairDraft(value);
118
+ }
103
119
  return value;
104
120
  };
105
121
  useEffect(() => {
@@ -110,7 +126,7 @@ window.__ModuleLoader__.load({
110
126
  if (operation.current)
111
127
  void modelsApi({ op: "cancel", id: operation.current }).catch(() => void 0);
112
128
  };
113
- }, []);
129
+ }, [sessionId]);
114
130
  const run = async (action) => {
115
131
  if (working.current)
116
132
  return;
@@ -261,6 +277,38 @@ window.__ModuleLoader__.load({
261
277
  onClick: action,
262
278
  children: label
263
279
  });
280
+ const pair = state.headWorker, headCandidates = pair?.candidates?.heads ?? [], workerCandidates = pair?.candidates?.workers ?? [];
281
+ const selectedHead = headCandidates.find((binding) => bindingKey(binding) === headChoice), selectedWorker = workerCandidates.find((binding) => bindingKey(binding) === workerChoice);
282
+ const pairReady = !!selectedHead && !!selectedWorker;
283
+ const pairSummary = (configuration) => configuration ? configuration.head.provider + " / " + configuration.head.model + " \u2192 " + configuration.worker.provider + " / " + configuration.worker.model : "Ordinary model selection";
284
+ const savePair = async (scope, enabled) => {
285
+ if (enabled && !pairReady)
286
+ throw new Error("Choose an available connection for both models");
287
+ const retainEffort = (role, binding) => {
288
+ const saved = [pair?.current?.[role], pair?.default?.[role]].find((candidate) => candidate && bindingKey(candidate) === bindingKey(binding));
289
+ return saved?.reasoningEffort ? { ...binding, reasoningEffort: saved.reasoningEffort } : binding;
290
+ };
291
+ await modelsApi({
292
+ op: "head-worker",
293
+ scope,
294
+ revision: state.revision,
295
+ ...scope === "current" ? { sessionId } : {},
296
+ configuration: enabled ? { preset: "gpt-6.1-sol-deepseek-v4.1-flash", head: retainEffort("head", selectedHead), worker: retainEffort("worker", selectedWorker) } : null
297
+ });
298
+ await load();
299
+ if (mounted.current && currentSession.current === sessionId)
300
+ setNotice(scope === "current" ? enabled ? "Head/worker pair selected for this chat" : "Ordinary model selection restored for this chat" : enabled ? "Head/worker pair saved for new chats" : "Ordinary model default restored for new chats");
301
+ };
302
+ const pairSelect = (label, value, candidates, change) => jsx("label", { children: jsxs(Fragment, { children: [label, jsxs("select", {
303
+ "aria-label": label,
304
+ value,
305
+ disabled: busy || !candidates.length,
306
+ onChange: (event) => change(event.target.value),
307
+ children: [
308
+ jsx("option", { value: "", children: candidates.length ? "Choose connection\u2026" : "Unavailable" }),
309
+ ...candidates.map((binding) => jsx("option", { value: bindingKey(binding), children: binding.provider + " / " + binding.model }, bindingKey(binding)))
310
+ ]
311
+ })] }) });
264
312
  return jsxs("section", {
265
313
  className: "kiokuko-models-panel",
266
314
  "aria-label": "Kiokuko Models",
@@ -274,6 +322,24 @@ window.__ModuleLoader__.load({
274
322
  ...notice ? [jsx("p", { role: "status", children: notice }, "notice")] : [],
275
323
  ...busy ? [jsx("p", { role: "status", children: "Working\u2026" }, "busy")] : [],
276
324
  button("Reload", () => void run(load)),
325
+ jsxs("fieldset", {
326
+ "aria-label": "Head/worker pair",
327
+ children: [
328
+ jsx("legend", { children: "Head/worker pair (optional)" }),
329
+ jsx("p", { children: "GPT-6.1-Sol head + DeepSeek V4.1 Flash subagents for normal chat, Lisp and Enno. Both exact models must be available; there is no automatic replacement. An approved Enno task keeps its selected models until the next task." }),
330
+ jsx("p", { children: "Current chat: " + (sessionId ? pairSummary(pair?.current) : "Open a chat to select its pair") }),
331
+ jsx("p", { children: "Default for new chats: " + pairSummary(pair?.default) }),
332
+ ...pair?.currentAvailable === false ? [jsx("p", { role: "status", children: "The saved head/worker pair is unavailable. Reconnect its exact models or choose another available pair." })] : [],
333
+ ...(pair?.candidates?.problems ?? []).map((problem) => jsx("p", { role: "status", children: problem }, problem)),
334
+ pairSelect("Head connection \xB7 GPT-6.1-Sol", headChoice, headCandidates, setHeadChoice),
335
+ pairSelect("Worker connection \xB7 DeepSeek V4.1 Flash", workerChoice, workerCandidates, setWorkerChoice),
336
+ button("Use pair in current chat", () => void run(() => savePair("current", true)), !sessionId || !pairReady),
337
+ button("Pair default for new chats", () => void run(() => savePair("default", true)), !pairReady),
338
+ button("Disable pair in current chat", () => void run(() => savePair("current", false)), !sessionId || !pair?.current),
339
+ button("Clear pair default", () => void run(() => savePair("default", false)), !pair?.default),
340
+ button("Cancel pair changes", () => restorePairDraft(state))
341
+ ]
342
+ }),
277
343
  jsx("label", {
278
344
  children: jsxs(Fragment, {
279
345
  children: [
@@ -582,7 +648,9 @@ window.__ModuleLoader__.load({
582
648
  scope: "current",
583
649
  sessionId
584
650
  });
585
- setNotice("Model selected for this chat");
651
+ await load();
652
+ if (mounted.current && currentSession.current === sessionId)
653
+ setNotice("Model selected for this chat");
586
654
  }), !sessionId),
587
655
  button("Default for new chats", () => void run(async () => {
588
656
  await modelsApi({
@@ -591,7 +659,9 @@ window.__ModuleLoader__.load({
591
659
  model: m.id,
592
660
  scope: "default"
593
661
  });
594
- setNotice("Default model saved for new chats");
662
+ await load();
663
+ if (mounted.current && currentSession.current === sessionId)
664
+ setNotice("Default model saved for new chats");
595
665
  }))
596
666
  ]
597
667
  })
@@ -612,7 +682,7 @@ window.__ModuleLoader__.load({
612
682
  title: "Kiokuko Models",
613
683
  closeLabel: "Close",
614
684
  onClose: close,
615
- children: state.open ? jsx(KiokukoModelsPanel, { sessionId: state.sessionId }) : null
685
+ children: state.open ? jsx(KiokukoModelsPanel, { sessionId: state.sessionId }, state.sessionId ?? "no-session") : null
616
686
  });
617
687
  }
618
688
  function KiokukoModelsAnchor(props) {
@@ -666,7 +736,7 @@ window.__ModuleLoader__.load({
666
736
  order: 1e3,
667
737
  label: "Kiokuko Models",
668
738
  locale: MODELS_NS
669
- }, () => jsx(KiokukoModelsPanel, { sessionId: active.current })));
739
+ }, () => jsx(KiokukoModelsPanel, { sessionId: active.current }, active.current ?? "no-session")));
670
740
  ctx.slots.inject("conversation.input.left", () => ctx.slots.register({
671
741
  name: "conversation.input.left",
672
742
  id: "kiokuko-models-dialog",
@@ -1 +1 @@
1
- {"version":3,"file":"models-client.d.ts","sourceRoot":"","sources":["../src/models-client.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACxB,GAAG,CAAC,CAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,CAAC,EAAC,KAAK,GAAE,OAAO,CAAC;IAC1C,KAAK,EAAE;QACL,MAAM,CAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAI,OAAO,GAAE,OAAO,CAAC;QACjD,QAAQ,CAAC,UAAU,EAAC;YAAC,IAAI,EAAC,MAAM,CAAC;YAAA,EAAE,CAAC,EAAC,MAAM,CAAC;YAAA,KAAK,CAAC,EAAC,MAAM,CAAC;YAAA,KAAK,CAAC,EAAC,MAAM,CAAC;YAAA,MAAM,EAAC,MAAM,CAAC;YAAA,MAAM,CAAC,EAAC,MAAI,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAA;SAAC,EAAC,SAAS,EAAC,CAAC,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,KAAG,OAAO,GAAE,OAAO,CAAC;KACtL,CAAC;IACF,MAAM,EAAC;QAAC,QAAQ,CAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC,GAAE,OAAO,CAAA;KAAC,CAAC;IAC9F,MAAM,CAAC,KAAK,EAAC,MAAI,IAAI,GAAC,CAAC,MAAI,IAAI,GAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAC,KAAK,EAAC,MAAM,GAAE,OAAO,CAAC;IACrE,EAAE,CAAC,KAAK,EAAC,kBAAkB,EAAC,QAAQ,EAAC,CAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC;QAAC,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAA;KAAC,KAAG,IAAI,GAAE,OAAO,CAAC;CAClH;AA4BD,eAAO,MAAM,MAAM,8BAA+B,CAAC;AACnD,wBAAgB,KAAK,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAEjD;AAszBD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAqF7D"}
1
+ {"version":3,"file":"models-client.d.ts","sourceRoot":"","sources":["../src/models-client.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACxB,GAAG,CAAC,CAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,CAAC,EAAC,KAAK,GAAE,OAAO,CAAC;IAC1C,KAAK,EAAE;QACL,MAAM,CAAC,IAAI,EAAC,MAAM,EAAC,QAAQ,EAAC,MAAI,OAAO,GAAE,OAAO,CAAC;QACjD,QAAQ,CAAC,UAAU,EAAC;YAAC,IAAI,EAAC,MAAM,CAAC;YAAA,EAAE,CAAC,EAAC,MAAM,CAAC;YAAA,KAAK,CAAC,EAAC,MAAM,CAAC;YAAA,KAAK,CAAC,EAAC,MAAM,CAAC;YAAA,MAAM,EAAC,MAAM,CAAC;YAAA,MAAM,CAAC,EAAC,MAAI,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,CAAA;SAAC,EAAC,SAAS,EAAC,CAAC,KAAK,EAAC,MAAM,CAAC,MAAM,EAAC,OAAO,CAAC,KAAG,OAAO,GAAE,OAAO,CAAC;KACtL,CAAC;IACF,MAAM,EAAC;QAAC,QAAQ,CAAC,SAAS,EAAC,MAAM,EAAC,YAAY,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,MAAM,EAAC,MAAM,CAAC,CAAC,GAAE,OAAO,CAAA;KAAC,CAAC;IAC9F,MAAM,CAAC,KAAK,EAAC,MAAI,IAAI,GAAC,CAAC,MAAI,IAAI,GAAC,OAAO,CAAC,IAAI,CAAC,CAAC,EAAC,KAAK,EAAC,MAAM,GAAE,OAAO,CAAC;IACrE,EAAE,CAAC,KAAK,EAAC,kBAAkB,EAAC,QAAQ,EAAC,CAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,MAAM,EAAC,MAAM,EAAC;QAAC,QAAQ,CAAC,IAAI,EAAC,MAAM,CAAA;KAAC,KAAG,IAAI,GAAE,OAAO,CAAC;CAClH;AA4BD,eAAO,MAAM,MAAM,8BAA+B,CAAC;AACnD,wBAAgB,KAAK,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAEjD;AA63BD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAqF7D"}
@@ -54,6 +54,7 @@ async function modelsApi(body, query = "") {
54
54
  function KiokukoModelsPanel(props) {
55
55
  const [state, setState] = useState({ revision: 0, connections: [] }), [connection, setConnection] = useState(null), [models, setModels] = useState([]), [filter, setFilter] = useState("");
56
56
  const [busy, setBusy] = useState(false), [error, setError] = useState(""), [notice, setNotice] = useState(""), [key, setKey] = useState(""), [auth, setAuth] = useState(null), [answer, setAnswer] = useState("");
57
+ const [headChoice, setHeadChoice] = useState(""), [workerChoice, setWorkerChoice] = useState("");
57
58
  const [manual, setManual] = useState({
58
59
  id: "",
59
60
  contextWindow: 262144,
@@ -65,12 +66,27 @@ function KiokukoModelsPanel(props) {
65
66
  // status paragraphs remounts the editor, and a DOM-held `open` would snap
66
67
  // shut under the user mid-task.
67
68
  const [advanced, setAdvanced] = useState(false), [manualOpen, setManualOpen] = useState(false);
68
- const operation = useRef(undefined), mounted = useRef(true), working = useRef(false);
69
+ const operation = useRef(undefined), mounted = useRef(true), working = useRef(false), loadSequence = useRef(0);
69
70
  const sessionId = props.sessionId;
71
+ const currentSession = useRef(sessionId);
72
+ currentSession.current = sessionId;
73
+ const bindingKey = (binding) => binding ? JSON.stringify({ provider: binding.provider, model: binding.model }) : "";
74
+ const restorePairDraft = (value) => {
75
+ const candidates = value.headWorker?.candidates, selected = value.headWorker?.current;
76
+ const choice = (role, list) => {
77
+ const saved = list.find(candidate => bindingKey(candidate) === bindingKey(selected?.[role]));
78
+ return bindingKey(saved ?? (list.length === 1 ? list[0] : undefined));
79
+ };
80
+ setHeadChoice(choice("head", candidates?.heads ?? []));
81
+ setWorkerChoice(choice("worker", candidates?.workers ?? []));
82
+ };
70
83
  const load = async () => {
71
- const value = await modelsApi();
72
- if (mounted.current)
84
+ const sequence = ++loadSequence.current;
85
+ const value = await modelsApi(undefined, sessionId ? "?sessionId=" + encodeURIComponent(sessionId) : "");
86
+ if (mounted.current && currentSession.current === sessionId && loadSequence.current === sequence) {
73
87
  setState(value);
88
+ restorePairDraft(value);
89
+ }
74
90
  return value;
75
91
  };
76
92
  useEffect(() => {
@@ -81,7 +97,7 @@ function KiokukoModelsPanel(props) {
81
97
  if (operation.current)
82
98
  void modelsApi({ op: "cancel", id: operation.current }).catch(() => undefined);
83
99
  };
84
- }, []);
100
+ }, [sessionId]);
85
101
  const run = async (action) => {
86
102
  if (working.current)
87
103
  return;
@@ -252,6 +268,36 @@ function KiokukoModelsPanel(props) {
252
268
  onClick: action,
253
269
  children: label,
254
270
  });
271
+ const pair = state.headWorker, headCandidates = pair?.candidates?.heads ?? [], workerCandidates = pair?.candidates?.workers ?? [];
272
+ const selectedHead = headCandidates.find(binding => bindingKey(binding) === headChoice), selectedWorker = workerCandidates.find(binding => bindingKey(binding) === workerChoice);
273
+ const pairReady = !!selectedHead && !!selectedWorker;
274
+ const pairSummary = (configuration) => configuration
275
+ ? configuration.head.provider + " / " + configuration.head.model + " → " + configuration.worker.provider + " / " + configuration.worker.model
276
+ : "Ordinary model selection";
277
+ const savePair = async (scope, enabled) => {
278
+ if (enabled && !pairReady)
279
+ throw new Error("Choose an available connection for both models");
280
+ const retainEffort = (role, binding) => {
281
+ const saved = [pair?.current?.[role], pair?.default?.[role]].find(candidate => candidate && bindingKey(candidate) === bindingKey(binding));
282
+ return saved?.reasoningEffort ? { ...binding, reasoningEffort: saved.reasoningEffort } : binding;
283
+ };
284
+ await modelsApi({
285
+ op: "head-worker", scope, revision: state.revision,
286
+ ...(scope === "current" ? { sessionId } : {}),
287
+ configuration: enabled ? { preset: "gpt-6.1-sol-deepseek-v4.1-flash", head: retainEffort("head", selectedHead), worker: retainEffort("worker", selectedWorker) } : null,
288
+ });
289
+ await load();
290
+ if (mounted.current && currentSession.current === sessionId)
291
+ setNotice(scope === "current"
292
+ ? enabled ? "Head/worker pair selected for this chat" : "Ordinary model selection restored for this chat"
293
+ : enabled ? "Head/worker pair saved for new chats" : "Ordinary model default restored for new chats");
294
+ };
295
+ const pairSelect = (label, value, candidates, change) => jsx("label", { children: jsxs(Fragment, { children: [label, jsxs("select", {
296
+ "aria-label": label, value, disabled: busy || !candidates.length,
297
+ onChange: (event) => change(event.target.value),
298
+ children: [jsx("option", { value: "", children: candidates.length ? "Choose connection…" : "Unavailable" }),
299
+ ...candidates.map(binding => jsx("option", { value: bindingKey(binding), children: binding.provider + " / " + binding.model }, bindingKey(binding)))],
300
+ })] }) });
255
301
  return jsxs("section", {
256
302
  className: "kiokuko-models-panel",
257
303
  "aria-label": "Kiokuko Models",
@@ -271,6 +317,24 @@ function KiokukoModelsPanel(props) {
271
317
  ? [jsx("p", { role: "status", children: "Working…" }, "busy")]
272
318
  : []),
273
319
  button("Reload", () => void run(load)),
320
+ jsxs("fieldset", {
321
+ "aria-label": "Head/worker pair",
322
+ children: [
323
+ jsx("legend", { children: "Head/worker pair (optional)" }),
324
+ jsx("p", { children: "GPT-6.1-Sol head + DeepSeek V4.1 Flash subagents for normal chat, Lisp and Enno. Both exact models must be available; there is no automatic replacement. An approved Enno task keeps its selected models until the next task." }),
325
+ jsx("p", { children: "Current chat: " + (sessionId ? pairSummary(pair?.current) : "Open a chat to select its pair") }),
326
+ jsx("p", { children: "Default for new chats: " + pairSummary(pair?.default) }),
327
+ ...(pair?.currentAvailable === false ? [jsx("p", { role: "status", children: "The saved head/worker pair is unavailable. Reconnect its exact models or choose another available pair." })] : []),
328
+ ...(pair?.candidates?.problems ?? []).map(problem => jsx("p", { role: "status", children: problem }, problem)),
329
+ pairSelect("Head connection · GPT-6.1-Sol", headChoice, headCandidates, setHeadChoice),
330
+ pairSelect("Worker connection · DeepSeek V4.1 Flash", workerChoice, workerCandidates, setWorkerChoice),
331
+ button("Use pair in current chat", () => void run(() => savePair("current", true)), !sessionId || !pairReady),
332
+ button("Pair default for new chats", () => void run(() => savePair("default", true)), !pairReady),
333
+ button("Disable pair in current chat", () => void run(() => savePair("current", false)), !sessionId || !pair?.current),
334
+ button("Clear pair default", () => void run(() => savePair("default", false)), !pair?.default),
335
+ button("Cancel pair changes", () => restorePairDraft(state)),
336
+ ],
337
+ }),
274
338
  jsx("label", {
275
339
  children: jsxs(Fragment, {
276
340
  children: [
@@ -617,7 +681,9 @@ function KiokukoModelsPanel(props) {
617
681
  scope: "current",
618
682
  sessionId,
619
683
  });
620
- setNotice("Model selected for this chat");
684
+ await load();
685
+ if (mounted.current && currentSession.current === sessionId)
686
+ setNotice("Model selected for this chat");
621
687
  }), !sessionId),
622
688
  button("Default for new chats", () => void run(async () => {
623
689
  await modelsApi({
@@ -626,7 +692,9 @@ function KiokukoModelsPanel(props) {
626
692
  model: m.id,
627
693
  scope: "default",
628
694
  });
629
- setNotice("Default model saved for new chats");
695
+ await load();
696
+ if (mounted.current && currentSession.current === sessionId)
697
+ setNotice("Default model saved for new chats");
630
698
  })),
631
699
  ],
632
700
  }),
@@ -649,7 +717,7 @@ function KiokukoModelsDialog(props) {
649
717
  closeLabel: "Close",
650
718
  onClose: close,
651
719
  children: state.open
652
- ? jsx(KiokukoModelsPanel, { sessionId: state.sessionId })
720
+ ? jsx(KiokukoModelsPanel, { sessionId: state.sessionId }, state.sessionId ?? "no-session")
653
721
  : null,
654
722
  });
655
723
  }
@@ -705,7 +773,7 @@ export function mountModelsClient(ctx) {
705
773
  order: 1000,
706
774
  label: "Kiokuko Models",
707
775
  locale: MODELS_NS,
708
- }, () => jsx(KiokukoModelsPanel, { sessionId: active.current })));
776
+ }, () => jsx(KiokukoModelsPanel, { sessionId: active.current }, active.current ?? "no-session")));
709
777
  ctx.slots.inject("conversation.input.left", () => ctx.slots.register({
710
778
  name: "conversation.input.left",
711
779
  id: "kiokuko-models-dialog",
@@ -1 +1 @@
1
- {"version":3,"file":"models-client.js","sourceRoot":"","sources":["../src/models-client.ts"],"names":[],"mappings":"AAkCA,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AACD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAU,CAAC;AACnD,MAAM,UAAU,KAAK,CAAC,GAAqB;IACzC,iBAAiB,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,SAAS,GAAG,gBAAgB,CAAC;AACnC,MAAM,yBAAyB,GAAsC;IACnE,MAAM,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,WAAW,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,uCAAuC,EAAE,WAAW,CAAC;IACtE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,CAAC;IAC3D,GAAG,EAAE,CAAC,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,CAAC;IACvD,QAAQ,EAAE,CAAC,UAAU,EAAE,6BAA6B,EAAE,kBAAkB,CAAC;IACzE,QAAQ,EAAE,CAAC,cAAc,EAAE,4BAA4B,EAAE,kBAAkB,CAAC;IAC5E,aAAa,EAAE;QACb,aAAa;QACb,+BAA+B;QAC/B,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,YAAY;QACZ,8BAA8B;QAC9B,kBAAkB;KACnB;IACD,IAAI,EAAE;QACJ,eAAe;QACf,2CAA2C;QAC3C,kBAAkB;KACnB;IACD,MAAM,EAAE,CAAC,QAAQ,EAAE,8BAA8B,EAAE,kBAAkB,CAAC;IACtE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,EAAE,kBAAkB,CAAC;IACnE,MAAM,EAAE,CAAC,mBAAmB,EAAE,0BAA0B,EAAE,kBAAkB,CAAC;CAC9E,CAAC;AACF,sEAAsE;AACtE,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AAC/E,KAAK,UAAU,SAAS,CACtB,IAA8B,EAC9B,KAAK,GAAG,EAAE;IAEV,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qBAAqB,GAAG,KAAK,EAAE;QAC1D,GAAG,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B;YACH,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,EAAE,UAAU;KAClB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,+BAA+B,CAAC,CAAC;IAClE,OAAO,KAAK,CAAC;AACf,CAAC;AACD,mFAAmF;AACnF,SAAS,kBAAkB,CAAC,KAA8B;IACxD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EACvE,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAM,IAAI,CAAC,EACjD,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,EACzC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EACrC,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAChC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAClC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAC5B,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAM,IAAI,CAAC,EACrC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC;QACnC,EAAE,EAAE,EAAE;QACN,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;IACH,sEAAsE;IACtE,0EAA0E;IAC1E,gCAAgC;IAChC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EAC7C,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAqB,SAAS,CAAC,EACrD,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EACtB,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC1B,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;IACxD,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;QAChC,IAAI,OAAO,CAAC,OAAO;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACrC,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,IAAI,SAAS,CAAC,OAAO;gBACnB,KAAK,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAC3D,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACN,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IACP,MAAM,GAAG,GAAG,KAAK,EAAE,MAA2B,EAAE,EAAE;QAChD,IAAI,OAAO,CAAC,OAAO;YAAE,OAAO;QAC5B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,MAAM,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,OAAO;gBAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,IAAI,OAAO,CAAC,OAAO;gBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAAE,CAAM,EAAkB,EAAE;QAC9C,aAAa,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxB,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,SAAS,EACT,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAC5C,CAAU,CAAC;YACZ,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,8EAA8E;IAC9E,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,SAAS,CAAC;YACd,EAAE,EAAE,MAAM;YACV,UAAU,EAAE;gBACV,EAAE,EAAE,UAAU,CAAC,EAAE;gBACjB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B;YACD,QAAQ,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ;SAClC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,IAAoB,EAAE;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,OAAO,MAAM,CACX,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,IAAI,UAAU,CACzE,CAAC;IACJ,CAAC,CAAC;IACF;;;;;OAKG;IACH,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,KAAK,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,MAAM,OAAO,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,EAAE,CAAC,CAAC;QACb,CAAC;QACD,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC;QAC5B,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACnE,QAAQ,CACN,OAAO,GAAG,6DAA6D,CACxE,CAAC;QACJ,CAAC;;YACC,SAAS,CACP,IAAI,CAAC,MAAM;gBACT,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,WAAW;gBAC5C,CAAC,CAAC,qCAAqC,CAC1C,CAAC;IACN,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;QAC9C,aAAa,CAAC;YACZ,EAAE,EAAE,UAAU,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7D,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YACjB,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;QACH,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,KAAc,EAAE,EAAE,CAC/C,aAAa,CAAC,EAAE,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,MAAM,OAAO,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QACnE,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO;QAC/C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC7B,KAAK,SAAS,CACZ,SAAS,EACT,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAC7C,CAAC,IAAI,CACJ,CAAC,IAAI,EAAE,EAAE;gBACP,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;oBAC9B,KAAK,MAAM,EAAE;yBACV,IAAI,CAAC,GAAG,EAAE;wBACT,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;4BAC3B,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;oBACvD,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC,EACD,CAAC,CAAC,EAAE,EAAE;gBACJ,IAAI,CAAC,OAAO;oBAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC,CACF,CAAC;QACJ,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,OAAO,GAAG,EAAE;YACV,OAAO,GAAG,IAAI,CAAC;YACf,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,CACZ,KAAa,EACb,KAAc,EACd,QAAiC,EACjC,IAAI,GAAG,MAAM,EACb,MAAmB,EACnB,EAAE,CACF,GAAG,CAAC,OAAO,EAAE;QACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YACvB,QAAQ,EAAE;gBACR,GAAG,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBAChC,GAAG,CAAC,OAAO,EAAE;oBACX,IAAI;oBACJ,KAAK;oBACL,YAAY,EAAE,KAAK;oBACnB,QAAQ,EACN,IAAI;wBACJ,CAAC,KAAK,KAAK,UAAU;4BACnB,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAC3C,UAAU,EAAE,IAAI,CACjB,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC9C,GAAG,CAAC,MAAM;wBACR,CAAC,CAAC;4BACE,SAAS,EAAE,CAAC,CAAM,EAAE,EAAE;gCACpB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;oCAAE,OAAO;gCAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;gCACnB,MAAM,EAAE,CAAC;4BACX,CAAC;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,YAAY,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK;iBAC3D,CAAC;aACH;SACF,CAAC;KACH,CAAC,CAAC;IACL,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,MAAkB,EAAE,QAAQ,GAAG,KAAK,EAAE,EAAE,CACrE,GAAG,CAAC,QAAQ,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI,IAAI,QAAQ;QAC1B,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACL,OAAO,IAAI,CAAC,SAAS,EAAE;QACrB,SAAS,EAAE,sBAAsB;QACjC,YAAY,EAAE,gBAAgB;QAC9B,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE;YACR,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YACzC,GAAG,CAAC,GAAG,EAAE;gBACP,QAAQ,EACN,oHAAoH;aACvH,CAAC;YACF,GAAG,CAAC,KAAK;gBACP,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;gBACzD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC5D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,IAAI;gBACN,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;YACtC,GAAG,CAAC,OAAO,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACvB,QAAQ,EAAE;wBACR,gBAAgB;wBAChB,IAAI,CAAC,QAAQ,EAAE;4BACb,YAAY,EAAE,gBAAgB;4BAC9B,KAAK,EAAE,EAAE;4BACT,QAAQ,EAAE,IAAI;4BACd,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4BACnD,QAAQ,EAAE;gCACR,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;gCAC1D,GAAG,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAC9D,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CACpD;6BACF;yBACF,CAAC;qBACH;iBACF,CAAC;aACH,CAAC;YACF,GAAG,CAAC,IAAI,EAAE;gBACR,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CACzC,GAAG,CACD,IAAI,EACJ;oBACE,QAAQ,EAAE,MAAM,CACd,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,SAAS,EAC5B,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CACrB;iBACF,EACD,CAAC,CAAC,EAAE,CACL,CACF;aACF,CAAC;YACF,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC;oBACE,IAAI,CAAC,KAAK,EAAE;wBACV,SAAS,EAAE,uBAAuB;wBAClC,GAAG,EAAE,QAAQ;wBACb,QAAQ,EAAE;4BACR,IAAI,CAAC,IAAI,EAAE;gCACT,QAAQ,EAAE;oCACR,UAAU,CAAC,IAAI;oCACf,GAAG,CAAC,MAAM,EAAE;wCACV,SAAS,EAAE,sBAAsB;wCACjC,QAAQ,EACN,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,eAAe,CAAC;qCACpD,CAAC;iCACH;6BACF,CAAC;4BACF,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ;gCAC7D,CAAC,CAAC;oCACE,KAAK,CACH,wBAAwB,EACxB,GAAG,EACH,MAAM,EACN,UAAU,EACV,GAAG,EAAE;wCACH,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE;4CAAE,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;oCAC7C,CAAC,CACF;iCACF;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,IAAI,CAAC,KAAK,EAAE;gCACV,SAAS,EAAE,wBAAwB;gCACnC,QAAQ,EAAE;oCACR,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;oCACnD,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;wCACvC,CAAC,CAAC;4CACE,MAAM,CACJ,QAAQ,EACR,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,EAC1B,IAAI,EAAE,MAAM,KAAK,SAAS,CAC3B;yCACF;wCACH,CAAC,CAAC,EAAE,CAAC;iCACR;6BACF,CAAC;4BACF,GAAG,CAAC,GAAG,EAAE;gCACP,QAAQ,EACN,UAAU,CAAC,IAAI,KAAK,QAAQ;oCAC1B,CAAC,CAAC,2DAA2D;oCAC7D,CAAC,CAAC,kHAAkH;6BACzH,CAAC;4BACF,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS;gCAC5B,CAAC,CAAC;oCACE,IAAI,CAAC,KAAK,EAAE;wCACV,YAAY,EAAE,gBAAgB;wCAC9B,QAAQ,EAAE;4CACR,GAAG,CAAC,GAAG,EAAE;gDACP,IAAI,EAAE,QAAQ;gDACd,QAAQ,EAAE,4BAA4B;6CACvC,CAAC;4CACF,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,KAAa,EAAE,EAAE,CAC/C,GAAG,CACD,KAAK,EACL;gDACE,QAAQ,EACN,KAAK,CAAC,IAAI,KAAK,UAAU;oDACvB,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;wDACb,QAAQ,EAAE;4DACR,GAAG,CAAC,GAAG,EAAE;gEACP,IAAI,EAAE,KAAK,CAAC,GAAG;gEACf,MAAM,EAAE,QAAQ;gEAChB,GAAG,EAAE,qBAAqB;gEAC1B,QAAQ,EACN,0BAA0B;6DAC7B,CAAC;4DACF,GAAG,CAAC,GAAG,EAAE;gEACP,QAAQ,EAAE,KAAK,CAAC,YAAY;6DAC7B,CAAC;yDACH;qDACF,CAAC;oDACJ,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa;wDAC5B,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;4DACb,QAAQ,EAAE;gEACR,GAAG,CAAC,GAAG,EAAE;oEACP,IAAI,EAAE,KAAK,CAAC,eAAe;oEAC3B,MAAM,EAAE,QAAQ;oEAChB,GAAG,EAAE,qBAAqB;oEAC1B,QAAQ,EAAE,mBAAmB;iEAC9B,CAAC;gEACF,GAAG,CAAC,GAAG,EAAE;oEACP,QAAQ,EACN,QAAQ,GAAG,KAAK,CAAC,QAAQ;iEAC5B,CAAC;6DACH;yDACF,CAAC;wDACJ,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;4DACb,QAAQ,EAAE;gEACR,GAAG,CAAC,GAAG,EAAE;oEACP,QAAQ,EAAE,KAAK,CAAC,OAAO;iEACxB,CAAC;gEACF,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CACxB,CAAC,IAAS,EAAE,EAAE,CACZ,GAAG,CACD,GAAG,EACH;oEACE,IAAI,EAAE,IAAI,CAAC,GAAG;oEACd,MAAM,EAAE,QAAQ;oEAChB,GAAG,EAAE,qBAAqB;oEAC1B,QAAQ,EACN,IAAI,CAAC,KAAK,IAAI,WAAW;iEAC5B,EACD,IAAI,CAAC,GAAG,CACT,CACJ;6DACF;yDACF,CAAC;6CACX,EACD,KAAK,CACN,CACF;4CACD,GAAG,CAAC,IAAI,CAAC,MAAM;gDACb,CAAC,CAAC;oDACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;wDAC3B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,IAAI,CAAC,MAAM,CAAC,OAAO;oEACnB,IAAI,CAAC,QAAQ,EAAE;wEACb,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;wEACjC,KAAK,EAAE,MAAM;wEACb,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wEAC3B,QAAQ,EAAE;4EACR,GAAG,CAAC,QAAQ,EAAE;gFACZ,KAAK,EAAE,EAAE;gFACT,QAAQ,EAAE,SAAS;6EACpB,CAAC;4EACF,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CACxB,CAAC,MAAW,EAAE,EAAE,CACd,GAAG,CACD,QAAQ,EACR;gFACE,KAAK,EAAE,MAAM,CAAC,EAAE;gFAChB,QAAQ,EAAE,MAAM,CAAC,KAAK;6EACvB,EACD,MAAM,CAAC,EAAE,CACV,CACJ;yEACF;qEACF,CAAC;iEACH;6DACF,CAAC;yDACH,CAAC;wDACJ,CAAC,CAAC,KAAK,CACH,IAAI,CAAC,MAAM,CAAC,OAAO,EACnB,MAAM,EACN,SAAS,EACT,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;4DAC3B,CAAC,CAAC,UAAU;4DACZ,CAAC,CAAC,MAAM,CACX;oDACL,MAAM,CACJ,8BAA8B,EAC9B,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wDAClB,MAAM,SAAS,CAAC;4DACd,EAAE,EAAE,QAAQ;4DACZ,EAAE,EAAE,IAAI,CAAC,EAAE;4DACX,MAAM;yDACP,CAAC,CAAC;wDACH,SAAS,CAAC,EAAE,CAAC,CAAC;oDAChB,CAAC,CAAC,CACL;iDACF;gDACH,CAAC,CAAC,EAAE,CAAC;4CACP,MAAM,CACJ,uBAAuB,EACvB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gDAC/C,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;gDAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;gDACd,SAAS,CAAC,0BAA0B,CAAC,CAAC;4CACxC,CAAC,CAAC,CACL;yCACF;qCACF,CAAC;iCACH;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,IAAI,CAAC,SAAS,EAAE;gCACd,IAAI,EAAE,QAAQ;gCACd,QAAQ,EAAE;oCACR,GAAG,CAAC,SAAS,EAAE;wCACb,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;4CAClB,CAAC,CAAC,cAAc,EAAE,CAAC;4CACnB,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;wCACzB,CAAC;wCACD,QAAQ,EAAE,mBAAmB;qCAC9B,CAAC;oCACF,KAAK,CAAC,iBAAiB,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAClD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CACtB;oCACD,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9C,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CACzB;oCACD,GAAG,CAAC,OAAO,EAAE;wCACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;4CACvB,QAAQ,EAAE;gDACR,UAAU;gDACV,GAAG,CAAC,QAAQ,EAAE;oDACZ,YAAY,EAAE,UAAU;oDACxB,KAAK,EAAE,UAAU,CAAC,QAAQ;oDAC1B,QAAQ,EACN,IAAI;wDACJ;4DACE,OAAO;4DACP,QAAQ;4DACR,UAAU;4DACV,aAAa;yDACd,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;oDAC7B,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oDACpC,QAAQ,EAAE;wDACR,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;wDACxC,CAAC,WAAW,EAAE,WAAW,CAAC;wDAC1B,CAAC,UAAU,EAAE,UAAU,CAAC;qDACzB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CACnB,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CACjD;iDACF,CAAC;6CACH;yCACF,CAAC;qCACH,CAAC;oCACF,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ;wCAC9B,CAAC,CAAC;4CACE,GAAG,CAAC,OAAO,EAAE;gDACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oDACvB,QAAQ,EAAE;wDACR,cAAc;wDACd,GAAG,CAAC,QAAQ,EAAE;4DACZ,YAAY,EAAE,cAAc;4DAC5B,KAAK,EAAE,UAAU,CAAC,WAAW;4DAC7B,QAAQ,EAAE,IAAI;4DACd,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4DACvC,QAAQ,EAAE;gEACR,GAAG,CAAC,QAAQ,EAAE;oEACZ,KAAK,EAAE,UAAU;oEACjB,QAAQ,EAAE,UAAU;iEACrB,CAAC;gEACF,GAAG,CAAC,QAAQ,EAAE;oEACZ,KAAK,EAAE,MAAM;oEACb,QAAQ,EAAE,MAAM;iEACjB,CAAC;6DACH;yDACF,CAAC;qDACH;iDACF,CAAC;6CACH,CAAC;4CACF,GAAG,CAAC,GAAG,EAAE;gDACP,QAAQ,EACN,kBAAkB;oDAClB,UAAU,CAAC,WAAW;oDACtB,kBAAkB;oDAClB,CAAC,UAAU,CAAC,iBAAiB,IAAI,MAAM,CAAC;oDACxC,wBAAwB;oDACxB,CAAC,UAAU,CAAC,UAAU,IAAI,SAAS,CAAC;oDACpC,iDAAiD;6CACpD,CAAC;yCACH;wCACH,CAAC,CAAC,EAAE,CAAC;oCACP,MAAM,CACJ,iBAAiB,EACjB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,MAAM,EAAE,CAAC;wCACf,SAAS,CAAC,kBAAkB,CAAC,CAAC;oCAChC,CAAC,CAAC,CACL;oCACD,MAAM,CACJ,gBAAgB,EAChB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;wCACtD,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC;wCAC5B,SAAS,CACP,IAAI,CAAC,MAAM;4CACT,CAAC,CAAC,kBAAkB;4CACpB,CAAC,CAAC,mCAAmC,CACxC,CAAC;oCACJ,CAAC,CAAC,CACL;oCACD,MAAM,CACJ,wBAAwB,EACxB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;wCACrD,MAAM,CAAC,EAAE,CAAC,CAAC;wCACX,SAAS,CAAC,EAAE,CAAC,CAAC;wCACd,MAAM,IAAI,EAAE,CAAC;wCACb,SAAS,CAAC,YAAY,CAAC,CAAC;oCAC1B,CAAC,CAAC,CACL;oCACD,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;wCACxD,CAAC,CAAC;4CACE,GAAG,CAAC,SAAS,EAAE;gDACb,IAAI,EAAE,UAAU;gDAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oDACvB,QAAQ,EAAE;wDACR,GAAG,CAAC,SAAS,EAAE;4DACb,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;gEAClB,CAAC,CAAC,cAAc,EAAE,CAAC;gEACnB,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC;4DAC7B,CAAC;4DACD,QAAQ,EAAE,yBAAyB;yDACpC,CAAC;wDACF,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CACrC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CACpC;wDACD,KAAK,CACH,gBAAgB,EAChB,MAAM,CAAC,aAAa,EACpB,CAAC,KAAK,EAAE,EAAE,CACR,SAAS,CAAC;4DACR,GAAG,MAAM;4DACT,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC;yDAC7B,CAAC,EACJ,QAAQ,CACT;wDACD,KAAK,CACH,uBAAuB,EACvB,MAAM,CAAC,SAAS,EAChB,CAAC,KAAK,EAAE,EAAE,CACR,SAAS,CAAC;4DACR,GAAG,MAAM;4DACT,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;yDACzB,CAAC,EACJ,QAAQ,CACT;wDACD,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,GAAG,CAAC,OAAO,EAAE;wEACX,IAAI,EAAE,UAAU;wEAChB,OAAO,EAAE,MAAM,CAAC,SAAS;wEACzB,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC;4EACR,GAAG,MAAM;4EACT,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;yEAC5B,CAAC;qEACL,CAAC;oEACF,qBAAqB;iEACtB;6DACF,CAAC;yDACH,CAAC;wDACF,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,GAAG,CAAC,OAAO,EAAE;wEACX,IAAI,EAAE,UAAU;wEAChB,OAAO,EAAE,MAAM,CAAC,KAAK;wEACrB,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC;4EACR,GAAG,MAAM;4EACT,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;yEACxB,CAAC;qEACL,CAAC;oEACF,uBAAuB;iEACxB;6DACF,CAAC;yDACH,CAAC;wDACF,MAAM,CACJ,kBAAkB,EAClB,GAAG,EAAE;4DACH,MAAM,CAAC,QAAQ,EAAE;gEACf,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CACzB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAC/B;gEACD,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;6DAC/B,CAAC,CAAC;4DACH,SAAS,CACP,uDAAuD,CACxD,CAAC;wDACJ,CAAC,EACD,CAAC,MAAM,CAAC,EAAE,CACX;qDACF;iDACF,CAAC;6CACH,CAAC;yCACH;wCACH,CAAC,CAAC,EAAE,CAAC;iCACR;6BACF,CAAC;4BACF,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;4BACjC,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gCACrB,CAAC,CAAC;oCACE,GAAG,CAAC,GAAG,EAAE;wCACP,QAAQ,EACN,4FAA4F;qCAC/F,CAAC;iCACH;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC;4BACzC,GAAG,CAAC,IAAI,EAAE;gCACR,QAAQ,EAAE,MAAM;qCACb,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACZ,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC;qCAClB,WAAW,EAAE;qCACb,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAClC;qCACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,GAAG,CACD,IAAI,EACJ;oCACE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;wCACvB,QAAQ,EAAE;4CACR,GAAG,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;4CAChD,MAAM,CACJ,qBAAqB,EACrB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC;oDACd,EAAE,EAAE,QAAQ;oDACZ,EAAE,EAAE,UAAU,CAAC,EAAE;oDACjB,KAAK,EAAE,CAAC,CAAC,EAAE;oDACX,KAAK,EAAE,SAAS;oDAChB,SAAS;iDACV,CAAC,CAAC;gDACH,SAAS,CAAC,8BAA8B,CAAC,CAAC;4CAC5C,CAAC,CAAC,EACJ,CAAC,SAAS,CACX;4CACD,MAAM,CACJ,uBAAuB,EACvB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC;oDACd,EAAE,EAAE,QAAQ;oDACZ,EAAE,EAAE,UAAU,CAAC,EAAE;oDACjB,KAAK,EAAE,CAAC,CAAC,EAAE;oDACX,KAAK,EAAE,SAAS;iDACjB,CAAC,CAAC;gDACH,SAAS,CACP,mCAAmC,CACpC,CAAC;4CACJ,CAAC,CAAC,CACL;yCACF;qCACF,CAAC;iCACH,EACD,CAAC,CAAC,EAAE,CACL,CACF;6BACJ,CAAC;yBACH;qBACF,CAAC;iBACH;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC,CAAC;AACL,CAAC;AACD,SAAS,mBAAmB,CAAC,KAA8B;IACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAEhB,CAAC;IACT,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAC/B,KAAK,GAAG,KAAK,CAAC,WAAyB,CAAC;IAC1C,OAAO,GAAG,CAAC,KAAK,EAAE;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,sBAAsB;QACjC,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,OAAO;QACnB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK,CAAC,IAAI;YAClB,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;YACzD,CAAC,CAAC,IAAI;KACT,CAAC,CAAC;AACL,CAAC;AACD,SAAS,mBAAmB,CAAC,KAA8B;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAsD,CAAC;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,SAAmB,CAAC;QAC3C,OAAO,GAAG,EAAE;YACV,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;QACrE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC;AACD,MAAM,UAAU,iBAAiB,CAAC,GAAqB;IACrD,MAAM,KAAK,GAAG,mBAAmB,CAAwC;QACrE,IAAI,EAAE,KAAK;KACZ,CAAC,EACF,MAAM,GAAG,EAAE,OAAO,EAAE,SAA+B,EAAE,CAAC;IACxD,IAAI,UAA8B,CAAC;IACnC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,UAAU,KAAK,SAAS;YAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC/D,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE;YACtC,UAAU,GAAG,SAAS,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;YACjC,IAAI,CAAC,SAAS;gBAAE,OAAO;YACvB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,CAAqF,CAAC;YAClI,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAA0D,CAAC;YAC/G,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;QACpB,IAAI,UAAU,KAAK,SAAS;YAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACjE,CAAC,EAAE,gCAAgC,CAAC,CAAC;IACrC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;QACd,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,WAAW;YACf,w+BAAw+B,CAAC;QAC3+B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAAE,CACxC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,kBAAkB;QACxB,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,SAAS;KAClB,EACD,GAAG,EAAE,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC,CAC7D,CACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAC/C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,yBAAyB;QAC/B,EAAE,EAAE,uBAAuB;QAC3B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACb,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE;YAC/B,WAAW,EAAE,KAAK;YAClB,mBAAmB,EAAE,MAAM;SAC5B,CAAC;KACH,EACD,mBAAmB,CACpB,CACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,EAAE,CACrC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,eAAe;QACrB,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;KACxE,EACD,mBAAmB,CACpB,CACF,CAAC;IACF,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;QACrD,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YACjD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACjB,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;gBACd,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,MAAM,CACR,GAAG,EAAE,CACH,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;QAC7B,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE;QACtC,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE;KACvC,CAAe,EAClB,uBAAuB,CACxB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"models-client.js","sourceRoot":"","sources":["../src/models-client.ts"],"names":[],"mappings":"AAkCA,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAChE,CAAC;AACD,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAU,CAAC;AACnD,MAAM,UAAU,KAAK,CAAC,GAAqB;IACzC,iBAAiB,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,SAAS,GAAG,gBAAgB,CAAC;AACnC,MAAM,yBAAyB,GAAsC;IACnE,MAAM,EAAE,CAAC,YAAY,EAAE,2BAA2B,EAAE,WAAW,CAAC;IAChE,KAAK,EAAE,CAAC,OAAO,EAAE,uCAAuC,EAAE,WAAW,CAAC;IACtE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,EAAE,UAAU,CAAC;IAC3D,GAAG,EAAE,CAAC,KAAK,EAAE,qBAAqB,EAAE,kBAAkB,CAAC;IACvD,QAAQ,EAAE,CAAC,UAAU,EAAE,6BAA6B,EAAE,kBAAkB,CAAC;IACzE,QAAQ,EAAE,CAAC,cAAc,EAAE,4BAA4B,EAAE,kBAAkB,CAAC;IAC5E,aAAa,EAAE;QACb,aAAa;QACb,+BAA+B;QAC/B,kBAAkB;KACnB;IACD,UAAU,EAAE;QACV,YAAY;QACZ,8BAA8B;QAC9B,kBAAkB;KACnB;IACD,IAAI,EAAE;QACJ,eAAe;QACf,2CAA2C;QAC3C,kBAAkB;KACnB;IACD,MAAM,EAAE,CAAC,QAAQ,EAAE,8BAA8B,EAAE,kBAAkB,CAAC;IACtE,MAAM,EAAE,CAAC,QAAQ,EAAE,2BAA2B,EAAE,kBAAkB,CAAC;IACnE,MAAM,EAAE,CAAC,mBAAmB,EAAE,0BAA0B,EAAE,kBAAkB,CAAC;CAC9E,CAAC;AACF,sEAAsE;AACtE,MAAM,WAAW,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,CAAC,CAAC;AAC/E,KAAK,UAAU,SAAS,CACtB,IAA8B,EAC9B,KAAK,GAAG,EAAE;IAEV,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,qBAAqB,GAAG,KAAK,EAAE;QAC1D,GAAG,CAAC,IAAI;YACN,CAAC,CAAC;gBACE,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;gBAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;aAC3B;YACH,CAAC,CAAC,EAAE,CAAC;QACP,KAAK,EAAE,UAAU;KAClB,CAAC,CAAC;IACH,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACd,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,+BAA+B,CAAC,CAAC;IAClE,OAAO,KAAK,CAAC;AACf,CAAC;AACD,mFAAmF;AACnF,SAAS,kBAAkB,CAAC,KAA8B;IACxD,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,EACvE,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAM,IAAI,CAAC,EACjD,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAQ,EAAE,CAAC,EACzC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EACrC,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAChC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAClC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAC5B,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAM,IAAI,CAAC,EACrC,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,EAC9C,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,GAAG,QAAQ,CAAC;QACnC,EAAE,EAAE,EAAE;QACN,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,KAAK;QAChB,SAAS,EAAE,KAAK;QAChB,KAAK,EAAE,KAAK;KACb,CAAC,CAAC;IACH,sEAAsE;IACtE,0EAA0E;IAC1E,gCAAgC;IAChC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,EAC7C,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChD,MAAM,SAAS,GAAG,MAAM,CAAqB,SAAS,CAAC,EACrD,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,EACtB,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,EACvB,YAAY,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,SAAS,GAAG,KAAK,CAAC,SAA+B,CAAC;IACxD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;IACzC,cAAc,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,MAAM,UAAU,GAAG,CAAC,OAAY,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACzH,MAAM,gBAAgB,GAAG,CAAC,KAAU,EAAE,EAAE;QACtC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,EAAE,UAAU,EAC7C,QAAQ,GAAG,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,IAAuB,EAAE,IAAW,EAAE,EAAE;YACtD,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC7F,OAAO,UAAU,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACxE,CAAC,CAAC;QACF,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;QACvD,eAAe,CAAC,MAAM,CAAC,QAAQ,EAAE,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IAC/D,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,MAAM,QAAQ,GAAG,EAAE,YAAY,CAAC,OAAO,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,aAAa,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACzG,IAAI,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS,IAAI,YAAY,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACjG,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAC1B,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,KAAK,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,IAAI,SAAS,CAAC,OAAO;gBACnB,KAAK,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,KAAK,CAC3D,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACN,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,MAAM,GAAG,GAAG,KAAK,EAAE,MAA2B,EAAE,EAAE;QAChD,IAAI,OAAO,CAAC,OAAO;YAAE,OAAO;QAC5B,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC,CAAC;QACd,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,MAAM,EAAE,CAAC;QACjB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,OAAO,CAAC,OAAO;gBAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,OAAO,GAAG,KAAK,CAAC;YACxB,IAAI,OAAO,CAAC,OAAO;gBAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,CAAC;IACH,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,EAAE,CAAM,EAAkB,EAAE;QAC9C,aAAa,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxB,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,CAAC,MAAM,SAAS,CAC3B,SAAS,EACT,gBAAgB,GAAG,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAC5C,CAAU,CAAC;YACZ,SAAS,CAAC,IAAI,CAAC,CAAC;YAChB,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC,CAAC;IACF,8EAA8E;IAC9E,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,SAAS,CAAC;YACd,EAAE,EAAE,MAAM;YACV,UAAU,EAAE;gBACV,EAAE,EAAE,UAAU,CAAC,EAAE;gBACjB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,IAAI,EAAE,UAAU,CAAC,IAAI;gBACrB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,UAAU,CAAC,QAAQ;gBAC7B,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B;YACD,QAAQ,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ;SAClC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,KAAK,IAAoB,EAAE;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,EAAE,CAAC;QAC3B,OAAO,MAAM,CACX,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,IAAI,UAAU,CACzE,CAAC;IACJ,CAAC,CAAC;IACF;;;;;OAKG;IACH,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,MAAM,KAAK,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC;QAChC,MAAM,OAAO,EAAE,CAAC;QAChB,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,KAAK,EAAE,CAAC;YACV,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,EAAE,CAAC,CAAC;QACb,CAAC;QACD,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC;QAC5B,IAAI,OAAO,EAAE,CAAC;YACZ,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;YACnE,QAAQ,CACN,OAAO,GAAG,6DAA6D,CACxE,CAAC;QACJ,CAAC;;YACC,SAAS,CACP,IAAI,CAAC,MAAM;gBACT,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM,GAAG,WAAW;gBAC5C,CAAC,CAAC,qCAAqC,CAC1C,CAAC;IACN,CAAC,CAAC;IACF,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE;QACrC,MAAM,IAAI,GAAG,yBAAyB,CAAC,IAAI,CAAE,CAAC;QAC9C,aAAa,CAAC;YACZ,EAAE,EAAE,UAAU,GAAG,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAC7D,IAAI;YACJ,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;YACb,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YACjB,WAAW,EAAE,UAAU;YACvB,MAAM,EAAE,EAAE;SACX,CAAC,CAAC;QACH,SAAS,CAAC,EAAE,CAAC,CAAC;QACd,MAAM,CAAC,EAAE,CAAC,CAAC;QACX,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,KAAc,EAAE,EAAE,CAC/C,aAAa,CAAC,EAAE,GAAG,UAAU,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,KAAK,IAAI,EAAE;QAC5B,MAAM,OAAO,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;QACnE,SAAS,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC;QACvC,OAAO,CAAC,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO;QAC/C,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;YAC7B,KAAK,SAAS,CACZ,SAAS,EACT,cAAc,GAAG,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAC7C,CAAC,IAAI,CACJ,CAAC,IAAI,EAAE,EAAE;gBACP,IAAI,OAAO;oBAAE,OAAO;gBACpB,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAC9B,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;oBAC9B,KAAK,MAAM,EAAE;yBACV,IAAI,CAAC,GAAG,EAAE;wBACT,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;4BAC3B,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,0BAA0B,CAAC,CAAC;oBACvD,CAAC,CAAC;yBACD,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC,EACD,CAAC,CAAC,EAAE,EAAE;gBACJ,IAAI,CAAC,OAAO;oBAAE,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;YACvC,CAAC,CACF,CAAC;QACJ,CAAC,EAAE,GAAG,CAAC,CAAC;QACR,OAAO,GAAG,EAAE;YACV,OAAO,GAAG,IAAI,CAAC;YACf,aAAa,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,CACZ,KAAa,EACb,KAAc,EACd,QAAiC,EACjC,IAAI,GAAG,MAAM,EACb,MAAmB,EACnB,EAAE,CACF,GAAG,CAAC,OAAO,EAAE;QACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;YACvB,QAAQ,EAAE;gBACR,GAAG,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBAChC,GAAG,CAAC,OAAO,EAAE;oBACX,IAAI;oBACJ,KAAK;oBACL,YAAY,EAAE,KAAK;oBACnB,QAAQ,EACN,IAAI;wBACJ,CAAC,KAAK,KAAK,UAAU;4BACnB,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAC3C,UAAU,EAAE,IAAI,CACjB,CAAC;oBACN,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oBAC9C,GAAG,CAAC,MAAM;wBACR,CAAC,CAAC;4BACE,SAAS,EAAE,CAAC,CAAM,EAAE,EAAE;gCACpB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;oCAAE,OAAO;gCAC9B,CAAC,CAAC,cAAc,EAAE,CAAC;gCACnB,MAAM,EAAE,CAAC;4BACX,CAAC;yBACF;wBACH,CAAC,CAAC,EAAE,CAAC;oBACP,YAAY,EAAE,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,KAAK;iBAC3D,CAAC;aACH;SACF,CAAC;KACH,CAAC,CAAC;IACL,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,MAAkB,EAAE,QAAQ,GAAG,KAAK,EAAE,EAAE,CACrE,GAAG,CAAC,QAAQ,EAAE;QACZ,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,IAAI,IAAI,QAAQ;QAC1B,OAAO,EAAE,MAAM;QACf,QAAQ,EAAE,KAAK;KAChB,CAAC,CAAC;IACL,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,EAC3B,cAAc,GAAU,IAAI,EAAE,UAAU,EAAE,KAAK,IAAI,EAAE,EACrD,gBAAgB,GAAU,IAAI,EAAE,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;IAC5D,MAAM,YAAY,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,EACrF,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,YAAY,CAAC,CAAC;IAC1F,MAAM,SAAS,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,CAAC,cAAc,CAAC;IACrD,MAAM,WAAW,GAAG,CAAC,aAAkB,EAAE,EAAE,CAAC,aAAa;QACvD,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,QAAQ,GAAG,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK;QAC7I,CAAC,CAAC,0BAA0B,CAAC;IAC/B,MAAM,QAAQ,GAAG,KAAK,EAAE,KAA4B,EAAE,OAAgB,EAAE,EAAE;QACxE,IAAI,OAAO,IAAI,CAAC,SAAS;YAAE,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QAC7F,MAAM,YAAY,GAAG,CAAC,IAAuB,EAAE,OAAY,EAAE,EAAE;YAC7D,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,CAAC,KAAK,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3I,OAAO,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,EAAE,eAAe,EAAE,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;QACnG,CAAC,CAAC;QACF,MAAM,SAAS,CAAC;YACd,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ;YAClD,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,IAAI,EAAE,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;SACxK,CAAC,CAAC;QACH,MAAM,IAAI,EAAE,CAAC;QACb,IAAI,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS;YACzD,SAAS,CAAC,KAAK,KAAK,SAAS;gBAC3B,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC,CAAC,iDAAiD;gBACzG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC,CAAC,+CAA+C,CAAC,CAAC;IAC5G,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,KAAa,EAAE,KAAa,EAAE,UAAiB,EAAE,MAA+B,EAAE,EAAE,CACtG,GAAG,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACzE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM;oBAChE,QAAQ,EAAE,CAAC,KAAU,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;oBACpD,QAAQ,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;wBACzG,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,GAAG,KAAK,GAAG,OAAO,CAAC,KAAK,EAAE,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;iBACxJ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACZ,OAAO,IAAI,CAAC,SAAS,EAAE;QACrB,SAAS,EAAE,sBAAsB;QACjC,YAAY,EAAE,gBAAgB;QAC9B,WAAW,EAAE,IAAI;QACjB,QAAQ,EAAE;YACR,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC;YACzC,GAAG,CAAC,GAAG,EAAE;gBACP,QAAQ,EACN,oHAAoH;aACvH,CAAC;YACF,GAAG,CAAC,KAAK;gBACP,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;gBACzD,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,MAAM;gBACR,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,QAAQ,CAAC,CAAC;gBAC5D,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,IAAI;gBACN,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC9D,CAAC,CAAC,EAAE,CAAC;YACP,MAAM,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;YACtC,IAAI,CAAC,UAAU,EAAE;gBACf,YAAY,EAAE,kBAAkB;gBAChC,QAAQ,EAAE;oBACR,GAAG,CAAC,QAAQ,EAAE,EAAE,QAAQ,EAAE,6BAA6B,EAAE,CAAC;oBAC1D,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,+NAA+N,EAAE,CAAC;oBACvP,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,gBAAgB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,gCAAgC,CAAC,EAAE,CAAC;oBACtH,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,yBAAyB,GAAG,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;oBAC9E,GAAG,CAAC,IAAI,EAAE,gBAAgB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,yGAAyG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAChM,GAAI,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,IAAI,EAAE,CAAc,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;oBAC5H,UAAU,CAAC,+BAA+B,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,CAAC;oBACtF,UAAU,CAAC,yCAAyC,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,CAAC;oBACtG,MAAM,CAAC,0BAA0B,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC;oBAC7G,MAAM,CAAC,4BAA4B,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC;oBACjG,MAAM,CAAC,8BAA8B,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC;oBACtH,MAAM,CAAC,oBAAoB,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC;oBAC9F,MAAM,CAAC,qBAAqB,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;iBAC7D;aACF,CAAC;YACF,GAAG,CAAC,OAAO,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oBACvB,QAAQ,EAAE;wBACR,gBAAgB;wBAChB,IAAI,CAAC,QAAQ,EAAE;4BACb,YAAY,EAAE,gBAAgB;4BAC9B,KAAK,EAAE,EAAE;4BACT,QAAQ,EAAE,IAAI;4BACd,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4BACnD,QAAQ,EAAE;gCACR,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC;gCAC1D,GAAG,MAAM,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAC9D,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CACpD;6BACF;yBACF,CAAC;qBACH;iBACF,CAAC;aACH,CAAC;YACF,GAAG,CAAC,IAAI,EAAE;gBACR,QAAQ,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CACzC,GAAG,CACD,IAAI,EACJ;oBACE,QAAQ,EAAE,MAAM,CACd,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,SAAS,EAC5B,GAAG,EAAE,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CACrB;iBACF,EACD,CAAC,CAAC,EAAE,CACL,CACF;aACF,CAAC;YACF,GAAG,CAAC,UAAU;gBACZ,CAAC,CAAC;oBACE,IAAI,CAAC,KAAK,EAAE;wBACV,SAAS,EAAE,uBAAuB;wBAClC,GAAG,EAAE,QAAQ;wBACb,QAAQ,EAAE;4BACR,IAAI,CAAC,IAAI,EAAE;gCACT,QAAQ,EAAE;oCACR,UAAU,CAAC,IAAI;oCACf,GAAG,CAAC,MAAM,EAAE;wCACV,SAAS,EAAE,sBAAsB;wCACjC,QAAQ,EACN,KAAK,GAAG,CAAC,UAAU,CAAC,SAAS,IAAI,eAAe,CAAC;qCACpD,CAAC;iCACH;6BACF,CAAC;4BACF,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ;gCAC7D,CAAC,CAAC;oCACE,KAAK,CACH,wBAAwB,EACxB,GAAG,EACH,MAAM,EACN,UAAU,EACV,GAAG,EAAE;wCACH,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE;4CAAE,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;oCAC7C,CAAC,CACF;iCACF;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,IAAI,CAAC,KAAK,EAAE;gCACV,SAAS,EAAE,wBAAwB;gCACnC,QAAQ,EAAE;oCACR,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC;oCACnD,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;wCACvC,CAAC,CAAC;4CACE,MAAM,CACJ,QAAQ,EACR,GAAG,EAAE,CAAC,KAAK,GAAG,CAAC,UAAU,CAAC,EAC1B,IAAI,EAAE,MAAM,KAAK,SAAS,CAC3B;yCACF;wCACH,CAAC,CAAC,EAAE,CAAC;iCACR;6BACF,CAAC;4BACF,GAAG,CAAC,GAAG,EAAE;gCACP,QAAQ,EACN,UAAU,CAAC,IAAI,KAAK,QAAQ;oCAC1B,CAAC,CAAC,2DAA2D;oCAC7D,CAAC,CAAC,kHAAkH;6BACzH,CAAC;4BACF,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,SAAS;gCAC5B,CAAC,CAAC;oCACE,IAAI,CAAC,KAAK,EAAE;wCACV,YAAY,EAAE,gBAAgB;wCAC9B,QAAQ,EAAE;4CACR,GAAG,CAAC,GAAG,EAAE;gDACP,IAAI,EAAE,QAAQ;gDACd,QAAQ,EAAE,4BAA4B;6CACvC,CAAC;4CACF,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAU,EAAE,KAAa,EAAE,EAAE,CAC/C,GAAG,CACD,KAAK,EACL;gDACE,QAAQ,EACN,KAAK,CAAC,IAAI,KAAK,UAAU;oDACvB,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;wDACb,QAAQ,EAAE;4DACR,GAAG,CAAC,GAAG,EAAE;gEACP,IAAI,EAAE,KAAK,CAAC,GAAG;gEACf,MAAM,EAAE,QAAQ;gEAChB,GAAG,EAAE,qBAAqB;gEAC1B,QAAQ,EACN,0BAA0B;6DAC7B,CAAC;4DACF,GAAG,CAAC,GAAG,EAAE;gEACP,QAAQ,EAAE,KAAK,CAAC,YAAY;6DAC7B,CAAC;yDACH;qDACF,CAAC;oDACJ,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa;wDAC5B,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;4DACb,QAAQ,EAAE;gEACR,GAAG,CAAC,GAAG,EAAE;oEACP,IAAI,EAAE,KAAK,CAAC,eAAe;oEAC3B,MAAM,EAAE,QAAQ;oEAChB,GAAG,EAAE,qBAAqB;oEAC1B,QAAQ,EAAE,mBAAmB;iEAC9B,CAAC;gEACF,GAAG,CAAC,GAAG,EAAE;oEACP,QAAQ,EACN,QAAQ,GAAG,KAAK,CAAC,QAAQ;iEAC5B,CAAC;6DACH;yDACF,CAAC;wDACJ,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE;4DACb,QAAQ,EAAE;gEACR,GAAG,CAAC,GAAG,EAAE;oEACP,QAAQ,EAAE,KAAK,CAAC,OAAO;iEACxB,CAAC;gEACF,GAAG,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,GAAG,CACxB,CAAC,IAAS,EAAE,EAAE,CACZ,GAAG,CACD,GAAG,EACH;oEACE,IAAI,EAAE,IAAI,CAAC,GAAG;oEACd,MAAM,EAAE,QAAQ;oEAChB,GAAG,EAAE,qBAAqB;oEAC1B,QAAQ,EACN,IAAI,CAAC,KAAK,IAAI,WAAW;iEAC5B,EACD,IAAI,CAAC,GAAG,CACT,CACJ;6DACF;yDACF,CAAC;6CACX,EACD,KAAK,CACN,CACF;4CACD,GAAG,CAAC,IAAI,CAAC,MAAM;gDACb,CAAC,CAAC;oDACE,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;wDAC3B,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,IAAI,CAAC,MAAM,CAAC,OAAO;oEACnB,IAAI,CAAC,QAAQ,EAAE;wEACb,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO;wEACjC,KAAK,EAAE,MAAM;wEACb,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;wEAC3B,QAAQ,EAAE;4EACR,GAAG,CAAC,QAAQ,EAAE;gFACZ,KAAK,EAAE,EAAE;gFACT,QAAQ,EAAE,SAAS;6EACpB,CAAC;4EACF,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CACxB,CAAC,MAAW,EAAE,EAAE,CACd,GAAG,CACD,QAAQ,EACR;gFACE,KAAK,EAAE,MAAM,CAAC,EAAE;gFAChB,QAAQ,EAAE,MAAM,CAAC,KAAK;6EACvB,EACD,MAAM,CAAC,EAAE,CACV,CACJ;yEACF;qEACF,CAAC;iEACH;6DACF,CAAC;yDACH,CAAC;wDACJ,CAAC,CAAC,KAAK,CACH,IAAI,CAAC,MAAM,CAAC,OAAO,EACnB,MAAM,EACN,SAAS,EACT,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ;4DAC3B,CAAC,CAAC,UAAU;4DACZ,CAAC,CAAC,MAAM,CACX;oDACL,MAAM,CACJ,8BAA8B,EAC9B,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wDAClB,MAAM,SAAS,CAAC;4DACd,EAAE,EAAE,QAAQ;4DACZ,EAAE,EAAE,IAAI,CAAC,EAAE;4DACX,MAAM;yDACP,CAAC,CAAC;wDACH,SAAS,CAAC,EAAE,CAAC,CAAC;oDAChB,CAAC,CAAC,CACL;iDACF;gDACH,CAAC,CAAC,EAAE,CAAC;4CACP,MAAM,CACJ,uBAAuB,EACvB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;gDAC/C,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;gDAC9B,OAAO,CAAC,IAAI,CAAC,CAAC;gDACd,SAAS,CAAC,0BAA0B,CAAC,CAAC;4CACxC,CAAC,CAAC,CACL;yCACF;qCACF,CAAC;iCACH;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,IAAI,CAAC,SAAS,EAAE;gCACd,IAAI,EAAE,QAAQ;gCACd,QAAQ,EAAE;oCACR,GAAG,CAAC,SAAS,EAAE;wCACb,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;4CAClB,CAAC,CAAC,cAAc,EAAE,CAAC;4CACnB,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;wCACzB,CAAC;wCACD,QAAQ,EAAE,mBAAmB;qCAC9B,CAAC;oCACF,KAAK,CAAC,iBAAiB,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAClD,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CACtB;oCACD,KAAK,CAAC,UAAU,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAC9C,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,CACzB;oCACD,GAAG,CAAC,OAAO,EAAE;wCACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;4CACvB,QAAQ,EAAE;gDACR,UAAU;gDACV,GAAG,CAAC,QAAQ,EAAE;oDACZ,YAAY,EAAE,UAAU;oDACxB,KAAK,EAAE,UAAU,CAAC,QAAQ;oDAC1B,QAAQ,EACN,IAAI;wDACJ;4DACE,OAAO;4DACP,QAAQ;4DACR,UAAU;4DACV,aAAa;yDACd,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;oDAC7B,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;oDACpC,QAAQ,EAAE;wDACR,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;wDACxC,CAAC,WAAW,EAAE,WAAW,CAAC;wDAC1B,CAAC,UAAU,EAAE,UAAU,CAAC;qDACzB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CACnB,GAAG,CAAC,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CACjD;iDACF,CAAC;6CACH;yCACF,CAAC;qCACH,CAAC;oCACF,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ;wCAC9B,CAAC,CAAC;4CACE,GAAG,CAAC,OAAO,EAAE;gDACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oDACvB,QAAQ,EAAE;wDACR,cAAc;wDACd,GAAG,CAAC,QAAQ,EAAE;4DACZ,YAAY,EAAE,cAAc;4DAC5B,KAAK,EAAE,UAAU,CAAC,WAAW;4DAC7B,QAAQ,EAAE,IAAI;4DACd,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;4DACvC,QAAQ,EAAE;gEACR,GAAG,CAAC,QAAQ,EAAE;oEACZ,KAAK,EAAE,UAAU;oEACjB,QAAQ,EAAE,UAAU;iEACrB,CAAC;gEACF,GAAG,CAAC,QAAQ,EAAE;oEACZ,KAAK,EAAE,MAAM;oEACb,QAAQ,EAAE,MAAM;iEACjB,CAAC;6DACH;yDACF,CAAC;qDACH;iDACF,CAAC;6CACH,CAAC;4CACF,GAAG,CAAC,GAAG,EAAE;gDACP,QAAQ,EACN,kBAAkB;oDAClB,UAAU,CAAC,WAAW;oDACtB,kBAAkB;oDAClB,CAAC,UAAU,CAAC,iBAAiB,IAAI,MAAM,CAAC;oDACxC,wBAAwB;oDACxB,CAAC,UAAU,CAAC,UAAU,IAAI,SAAS,CAAC;oDACpC,iDAAiD;6CACpD,CAAC;yCACH;wCACH,CAAC,CAAC,EAAE,CAAC;oCACP,MAAM,CACJ,iBAAiB,EACjB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,MAAM,EAAE,CAAC;wCACf,SAAS,CAAC,kBAAkB,CAAC,CAAC;oCAChC,CAAC,CAAC,CACL;oCACD,MAAM,CACJ,gBAAgB,EAChB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;wCACtD,MAAM,IAAI,GAAG,MAAM,MAAM,EAAE,CAAC;wCAC5B,SAAS,CACP,IAAI,CAAC,MAAM;4CACT,CAAC,CAAC,kBAAkB;4CACpB,CAAC,CAAC,mCAAmC,CACxC,CAAC;oCACJ,CAAC,CAAC,CACL;oCACD,MAAM,CACJ,wBAAwB,EACxB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;wCAClB,MAAM,OAAO,EAAE,CAAC;wCAChB,MAAM,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC;wCACrD,MAAM,CAAC,EAAE,CAAC,CAAC;wCACX,SAAS,CAAC,EAAE,CAAC,CAAC;wCACd,MAAM,IAAI,EAAE,CAAC;wCACb,SAAS,CAAC,YAAY,CAAC,CAAC;oCAC1B,CAAC,CAAC,CACL;oCACD,GAAG,CAAC,CAAC,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC;wCACxD,CAAC,CAAC;4CACE,GAAG,CAAC,SAAS,EAAE;gDACb,IAAI,EAAE,UAAU;gDAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;oDACvB,QAAQ,EAAE;wDACR,GAAG,CAAC,SAAS,EAAE;4DACb,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;gEAClB,CAAC,CAAC,cAAc,EAAE,CAAC;gEACnB,aAAa,CAAC,CAAC,UAAU,CAAC,CAAC;4DAC7B,CAAC;4DACD,QAAQ,EAAE,yBAAyB;yDACpC,CAAC;wDACF,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CACrC,SAAS,CAAC,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,CACpC;wDACD,KAAK,CACH,gBAAgB,EAChB,MAAM,CAAC,aAAa,EACpB,CAAC,KAAK,EAAE,EAAE,CACR,SAAS,CAAC;4DACR,GAAG,MAAM;4DACT,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC;yDAC7B,CAAC,EACJ,QAAQ,CACT;wDACD,KAAK,CACH,uBAAuB,EACvB,MAAM,CAAC,SAAS,EAChB,CAAC,KAAK,EAAE,EAAE,CACR,SAAS,CAAC;4DACR,GAAG,MAAM;4DACT,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC;yDACzB,CAAC,EACJ,QAAQ,CACT;wDACD,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,GAAG,CAAC,OAAO,EAAE;wEACX,IAAI,EAAE,UAAU;wEAChB,OAAO,EAAE,MAAM,CAAC,SAAS;wEACzB,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC;4EACR,GAAG,MAAM;4EACT,SAAS,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;yEAC5B,CAAC;qEACL,CAAC;oEACF,qBAAqB;iEACtB;6DACF,CAAC;yDACH,CAAC;wDACF,GAAG,CAAC,OAAO,EAAE;4DACX,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;gEACvB,QAAQ,EAAE;oEACR,GAAG,CAAC,OAAO,EAAE;wEACX,IAAI,EAAE,UAAU;wEAChB,OAAO,EAAE,MAAM,CAAC,KAAK;wEACrB,QAAQ,EAAE,CAAC,CAAM,EAAE,EAAE,CACnB,SAAS,CAAC;4EACR,GAAG,MAAM;4EACT,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;yEACxB,CAAC;qEACL,CAAC;oEACF,uBAAuB;iEACxB;6DACF,CAAC;yDACH,CAAC;wDACF,MAAM,CACJ,kBAAkB,EAClB,GAAG,EAAE;4DACH,MAAM,CAAC,QAAQ,EAAE;gEACf,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,CACzB,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,CAC/B;gEACD,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,EAAE;6DAC/B,CAAC,CAAC;4DACH,SAAS,CACP,uDAAuD,CACxD,CAAC;wDACJ,CAAC,EACD,CAAC,MAAM,CAAC,EAAE,CACX;qDACF;iDACF,CAAC;6CACH,CAAC;yCACH;wCACH,CAAC,CAAC,EAAE,CAAC;iCACR;6BACF,CAAC;4BACF,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;4BACjC,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gCACrB,CAAC,CAAC;oCACE,GAAG,CAAC,GAAG,EAAE;wCACP,QAAQ,EACN,4FAA4F;qCAC/F,CAAC;iCACH;gCACH,CAAC,CAAC,EAAE,CAAC;4BACP,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,SAAS,CAAC;4BACzC,GAAG,CAAC,IAAI,EAAE;gCACR,QAAQ,EAAE,MAAM;qCACb,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CACZ,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC;qCAClB,WAAW,EAAE;qCACb,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAClC;qCACA,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CACT,GAAG,CACD,IAAI,EACJ;oCACE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE;wCACvB,QAAQ,EAAE;4CACR,GAAG,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,IAAI,GAAG,KAAK,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC;4CAChD,MAAM,CACJ,qBAAqB,EACrB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC;oDACd,EAAE,EAAE,QAAQ;oDACZ,EAAE,EAAE,UAAU,CAAC,EAAE;oDACjB,KAAK,EAAE,CAAC,CAAC,EAAE;oDACX,KAAK,EAAE,SAAS;oDAChB,SAAS;iDACV,CAAC,CAAC;gDACH,MAAM,IAAI,EAAE,CAAC;gDACb,IAAI,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS;oDAAE,SAAS,CAAC,8BAA8B,CAAC,CAAC;4CACzG,CAAC,CAAC,EACJ,CAAC,SAAS,CACX;4CACD,MAAM,CACJ,uBAAuB,EACvB,GAAG,EAAE,CACH,KAAK,GAAG,CAAC,KAAK,IAAI,EAAE;gDAClB,MAAM,SAAS,CAAC;oDACd,EAAE,EAAE,QAAQ;oDACZ,EAAE,EAAE,UAAU,CAAC,EAAE;oDACjB,KAAK,EAAE,CAAC,CAAC,EAAE;oDACX,KAAK,EAAE,SAAS;iDACjB,CAAC,CAAC;gDACH,MAAM,IAAI,EAAE,CAAC;gDACb,IAAI,OAAO,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,KAAK,SAAS;oDAAE,SAAS,CAAC,mCAAmC,CAAC,CAAC;4CAC9G,CAAC,CAAC,CACL;yCACF;qCACF,CAAC;iCACH,EACD,CAAC,CAAC,EAAE,CACL,CACF;6BACJ,CAAC;yBACH;qBACF,CAAC;iBACH;gBACH,CAAC,CAAC,EAAE,CAAC;SACR;KACF,CAAC,CAAC;AACL,CAAC;AACD,SAAS,mBAAmB,CAAC,KAA8B;IACzD,MAAM,SAAS,GAAG,KAAK,CAAC,gBAEhB,CAAC;IACT,MAAM,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAC/B,KAAK,GAAG,KAAK,CAAC,WAAyB,CAAC;IAC1C,OAAO,GAAG,CAAC,KAAK,EAAE;QAChB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,SAAS,EAAE,sBAAsB;QACjC,KAAK,EAAE,gBAAgB;QACvB,UAAU,EAAE,OAAO;QACnB,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,KAAK,CAAC,IAAI;YAClB,CAAC,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,KAAK,CAAC,SAAS,IAAI,YAAY,CAAC;YAC1F,CAAC,CAAC,IAAI;KACT,CAAC,CAAC;AACL,CAAC;AACD,SAAS,mBAAmB,CAAC,KAA8B;IACzD,MAAM,MAAM,GAAG,KAAK,CAAC,mBAAsD,CAAC;IAC5E,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,SAAmB,CAAC;QAC3C,OAAO,GAAG,EAAE;YACV,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,CAAC,SAAS;gBAAE,MAAM,CAAC,OAAO,GAAG,SAAS,CAAC;QACrE,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;IACtB,OAAO,IAAI,CAAC;AACd,CAAC;AACD,MAAM,UAAU,iBAAiB,CAAC,GAAqB;IACrD,MAAM,KAAK,GAAG,mBAAmB,CAAwC;QACrE,IAAI,EAAE,KAAK;KACZ,CAAC,EACF,MAAM,GAAG,EAAE,OAAO,EAAE,SAA+B,EAAE,CAAC;IACxD,IAAI,UAA8B,CAAC;IACnC,MAAM,KAAK,GAAG,GAAG,EAAE;QACjB,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YACjB,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,IAAI,UAAU,KAAK,SAAS;YAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAC/D,UAAU,GAAG,qBAAqB,CAAC,GAAG,EAAE;YACtC,UAAU,GAAG,SAAS,CAAC;YACvB,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC;YACjC,IAAI,CAAC,SAAS;gBAAE,OAAO;YACvB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,UAAU,EAAE,KAAK,CAAqF,CAAC;YAClI,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;YACzC,IAAI,CAAC,KAAK;gBAAE,OAAO;YACnB,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAA0D,CAAC;YAC/G,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;IACF,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE;QACpB,IAAI,UAAU,KAAK,SAAS;YAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;IACjE,CAAC,EAAE,gCAAgC,CAAC,CAAC;IACrC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE;QACd,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,WAAW;YACf,w+BAAw+B,CAAC;QAC3+B,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5B,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;IAC9B,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,GAAG,EAAE,CACxC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,kBAAkB;QACxB,EAAE,EAAE,SAAS;QACb,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,gBAAgB;QACvB,MAAM,EAAE,SAAS;KAClB,EACD,GAAG,EAAE,CAAC,GAAG,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,OAAO,IAAI,YAAY,CAAC,CAC7F,CACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,yBAAyB,EAAE,GAAG,EAAE,CAC/C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,yBAAyB;QAC/B,EAAE,EAAE,uBAAuB;QAC3B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACb,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE;YAC/B,WAAW,EAAE,KAAK;YAClB,mBAAmB,EAAE,MAAM;SAC5B,CAAC;KACH,EACD,mBAAmB,CACpB,CACF,CAAC;IACF,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,GAAG,EAAE,CACrC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAChB;QACE,IAAI,EAAE,eAAe;QACrB,EAAE,EAAE,wBAAwB;QAC5B,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;KACxE,EACD,mBAAmB,CACpB,CACF,CAAC;IACF,GAAG,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;QACrD,IAAI,IAAI,KAAK,SAAS,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS;YACjD,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;gBACjB,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;gBACd,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC;YAC1B,CAAC,CAAC,CAAC;IACP,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,MAAM,CACR,GAAG,EAAE,CACH,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;QAC7B,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE;QACtC,EAAE,EAAE,EAAE,YAAY,EAAE,gBAAgB,EAAE;KACvC,CAAe,EAClB,uBAAuB,CACxB,CAAC;AACJ,CAAC"}
@@ -35,6 +35,46 @@ chats** saves the native default for future chats. Enno, Deep and model-auto use
35
35
  same registered adapters and model capabilities. An unavailable model is rejected
36
36
  rather than silently substituted.
37
37
 
38
+ Managed provider requests also enforce the output-token budget at dispatch,
39
+ including bare adapter calls. A request never exceeds 32,768 output tokens, the
40
+ prepared model output limit, or its context limit; a smaller explicit caller
41
+ budget is preserved. Invalid caller budgets are rejected before transmission.
42
+ Catalog/context capacity metadata is not rewritten by this request-level clamp.
43
+
44
+ ## GPT-6.1-Sol head with DeepSeek V4.1 Flash workers
45
+
46
+ The **Head/worker pair (optional)** section offers the opt-in pair in the same
47
+ Settings panel. Select the exact configured head and worker connections, then save
48
+ for the current idle chat or as the default for new chats. Multiple connections
49
+ remain separate choices, even when their display names match. Cancel does not
50
+ change a saved choice. Disabling the pair restores native model selection; saving
51
+ a different normal head model also leaves pair mode for the selected scope. Selecting
52
+ the exact same provider and head model preserves the worker choice. Profile defaults are
53
+ snapshotted per chat, so changing the default does not rewrite existing chats.
54
+
55
+ The execution-choice card also offers the pair for just the current normal task,
56
+ and Enno's model-configuration menu offers the same pair. Lisp is an execution-tool
57
+ choice and uses the normal parent/worker routing. In Enno, `ideal`, `zenki`, `goki`
58
+ and `check` use the head; the delegated `worker` uses Flash. A profile/chat pair
59
+ seeds the initial Enno role review. An already approved Enno task keeps its explicit
60
+ role configuration until the next task; selecting another Enno custom configuration
61
+ continues to work.
62
+
63
+ Selection and dispatch require the exact live catalog bindings. The head ID is
64
+ `gpt-6.1-sol`. The worker ID is `deepseek-flash` on a DeepSeek route,
65
+ `deepseek-v4.1-flash` on OpenCode Zen/Go, or `deepseek/deepseek-v4.1-flash` on
66
+ OpenRouter. A bundled catalog is not proof of account access. Missing models,
67
+ credentials or compatible connections produce an unavailable reason; there is no
68
+ fallback to a different model or provider and no automatic login/download.
69
+
70
+ Native `subagent` (spawn) and `subagent_fork` requests receive the selected worker
71
+ model while the parent retains the head. The preset does not trigger delegation,
72
+ add tools, change approval/sandbox policy, change depth/concurrency limits, or
73
+ apply to Deep Planning. Child routes have durable identity-bound receipts and are
74
+ revalidated against their current owner and selection before further requests.
75
+ Local scripted-provider tests verify routing and persistence, not real-provider
76
+ availability, billing or answer quality.
77
+
38
78
  ## Infron
39
79
 
40
80
  The default endpoint is `https://llm.onerouter.pro/v1`, using Chat Completions.
@@ -67,6 +107,13 @@ migrations are unaffected.
67
107
 
68
108
  ## Verification
69
109
 
110
+ After `npm run build`, `node scripts/verify-head-worker-settings-web.mjs` exercises
111
+ the pair controls in a disposable native Web profile with localhost-only fixtures,
112
+ including default/current scopes, Cancel, unavailable models and restart.
113
+ `PLAYWRIGHT_EXECUTABLE_PATH` may select an installed browser. This check requires
114
+ Chromium socket access; a blocked browser launch is not a passed UI test.
115
+
116
+
70
117
  `npm run test:models:web` installs the packed package in a disposable Web profile,
71
118
  uses a local provider and tests Settings, commands, the add-provider-and-key action,
72
119
  a listing that discloses no capacities, a refused save that must keep the typed key,
@@ -0,0 +1,8 @@
1
+ CREATE TABLE dsh_native_worker_routes (
2
+ child_session_id TEXT PRIMARY KEY,
3
+ parent_session_id TEXT NOT NULL,
4
+ owner_json TEXT NOT NULL CHECK(json_valid(owner_json)),
5
+ state TEXT NOT NULL CHECK(state IN ('admitting', 'active', 'revoked')),
6
+ created_at TEXT NOT NULL
7
+ );
8
+ CREATE INDEX idx_dsh_native_worker_routes_parent ON dsh_native_worker_routes(parent_session_id);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kiokuko-dsh",
3
- "version": "0.2.5",
3
+ "version": "0.2.6",
4
4
  "description": "Kiokuko plugin for DeepSeek Harness",
5
5
  "type": "module",
6
6
  "license": "MIT",