pi-daddy 0.26.1 → 0.27.1

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 (131) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/PRODUCT-GUIDE.md +127 -0
  3. package/README.md +23 -2
  4. package/REQUIREMENTS.md +41 -0
  5. package/dist/catalog.d.ts +1 -7
  6. package/dist/catalog.d.ts.map +1 -1
  7. package/dist/catalog.js +8 -40
  8. package/dist/catalog.js.map +1 -1
  9. package/dist/cli.d.ts +2 -2
  10. package/dist/cli.d.ts.map +1 -1
  11. package/dist/cli.js +44 -14
  12. package/dist/cli.js.map +1 -1
  13. package/dist/daily-dashboard-host.d.ts +14 -1
  14. package/dist/daily-dashboard-host.d.ts.map +1 -1
  15. package/dist/daily-dashboard-host.js +40 -17
  16. package/dist/daily-dashboard-host.js.map +1 -1
  17. package/dist/daily-panel.d.ts +36 -0
  18. package/dist/daily-panel.d.ts.map +1 -0
  19. package/dist/daily-panel.js +84 -0
  20. package/dist/daily-panel.js.map +1 -0
  21. package/dist/daily-view-render.d.ts +2 -1
  22. package/dist/daily-view-render.d.ts.map +1 -1
  23. package/dist/daily-view-render.js +2 -1
  24. package/dist/daily-view-render.js.map +1 -1
  25. package/dist/daily-view.d.ts +3 -0
  26. package/dist/daily-view.d.ts.map +1 -1
  27. package/dist/daily-view.js +6 -0
  28. package/dist/daily-view.js.map +1 -1
  29. package/dist/dashboard-cli.d.ts +2 -0
  30. package/dist/dashboard-cli.d.ts.map +1 -1
  31. package/dist/dashboard-cli.js +37 -15
  32. package/dist/dashboard-cli.js.map +1 -1
  33. package/dist/dashboard-host-contract.d.ts +2 -0
  34. package/dist/dashboard-host-contract.d.ts.map +1 -1
  35. package/dist/dashboard-host-contract.js.map +1 -1
  36. package/dist/dashboard-host-transport.d.ts.map +1 -1
  37. package/dist/dashboard-host-transport.js +6 -3
  38. package/dist/dashboard-host-transport.js.map +1 -1
  39. package/dist/dashboard-host.d.ts +30 -2
  40. package/dist/dashboard-host.d.ts.map +1 -1
  41. package/dist/dashboard-host.js +73 -11
  42. package/dist/dashboard-host.js.map +1 -1
  43. package/dist/dashboard-menu.d.ts +16 -0
  44. package/dist/dashboard-menu.d.ts.map +1 -0
  45. package/dist/dashboard-menu.js +33 -0
  46. package/dist/dashboard-menu.js.map +1 -0
  47. package/dist/definitions.d.ts +3 -8
  48. package/dist/definitions.d.ts.map +1 -1
  49. package/dist/definitions.js +19 -43
  50. package/dist/definitions.js.map +1 -1
  51. package/dist/factory-order.d.ts +10 -10
  52. package/dist/index.d.ts +7 -1
  53. package/dist/index.d.ts.map +1 -1
  54. package/dist/index.js +7 -1
  55. package/dist/index.js.map +1 -1
  56. package/dist/init.d.ts +7 -19
  57. package/dist/init.d.ts.map +1 -1
  58. package/dist/init.js +9 -20
  59. package/dist/init.js.map +1 -1
  60. package/dist/learning-connection.d.ts +127 -0
  61. package/dist/learning-connection.d.ts.map +1 -0
  62. package/dist/learning-connection.js +54 -0
  63. package/dist/learning-connection.js.map +1 -0
  64. package/dist/model-preflight.d.ts +5 -0
  65. package/dist/model-preflight.d.ts.map +1 -1
  66. package/dist/model-preflight.js +9 -0
  67. package/dist/model-preflight.js.map +1 -1
  68. package/dist/product-files.d.ts +6 -0
  69. package/dist/product-files.d.ts.map +1 -0
  70. package/dist/product-files.js +55 -0
  71. package/dist/product-files.js.map +1 -0
  72. package/dist/skill-packages.d.ts +6 -24
  73. package/dist/skill-packages.d.ts.map +1 -1
  74. package/dist/skill-packages.js +74 -33
  75. package/dist/skill-packages.js.map +1 -1
  76. package/dist/skill-resources.d.ts +21 -0
  77. package/dist/skill-resources.d.ts.map +1 -0
  78. package/dist/skill-resources.js +52 -0
  79. package/dist/skill-resources.js.map +1 -0
  80. package/dist/work-command.d.ts.map +1 -1
  81. package/dist/work-command.js +14 -6
  82. package/dist/work-command.js.map +1 -1
  83. package/dist/work-policy-registry.d.ts +133 -0
  84. package/dist/work-policy-registry.d.ts.map +1 -0
  85. package/dist/work-policy-registry.js +128 -0
  86. package/dist/work-policy-registry.js.map +1 -0
  87. package/dist/work-run.d.ts +56 -0
  88. package/dist/work-run.d.ts.map +1 -0
  89. package/dist/work-run.js +102 -0
  90. package/dist/work-run.js.map +1 -0
  91. package/dist/work-setup.d.ts +40 -0
  92. package/dist/work-setup.d.ts.map +1 -0
  93. package/dist/work-setup.js +174 -0
  94. package/dist/work-setup.js.map +1 -0
  95. package/extensions/daily-dashboard-session.ts +16 -7
  96. package/extensions/execute-child.ts +2 -2
  97. package/extensions/grants-command.ts +2 -2
  98. package/extensions/grants.ts +6 -2
  99. package/extensions/init-command.ts +3 -2
  100. package/extensions/learning-outcome-session.ts +38 -0
  101. package/extensions/learning-session.ts +59 -0
  102. package/extensions/ordinary-runtime.ts +2 -2
  103. package/extensions/run-delegation.ts +2 -2
  104. package/extensions/work-policy-session.ts +139 -0
  105. package/extensions/work-run-session.ts +75 -0
  106. package/extensions/work-runtime.ts +2 -2
  107. package/extensions/work-session.ts +132 -0
  108. package/package.json +9 -1
  109. package/src/catalog.ts +7 -37
  110. package/src/cli.ts +34 -14
  111. package/src/daily-dashboard-host.ts +32 -15
  112. package/src/daily-panel.ts +80 -0
  113. package/src/daily-view-render.ts +2 -1
  114. package/src/daily-view.ts +8 -0
  115. package/src/dashboard-cli.ts +29 -17
  116. package/src/dashboard-host-contract.ts +2 -0
  117. package/src/dashboard-host-transport.ts +7 -4
  118. package/src/dashboard-host.ts +48 -13
  119. package/src/dashboard-menu.ts +28 -0
  120. package/src/definitions.ts +16 -44
  121. package/src/index.ts +7 -1
  122. package/src/init.ts +10 -20
  123. package/src/learning-connection.ts +70 -0
  124. package/src/model-preflight.ts +9 -0
  125. package/src/product-files.ts +34 -0
  126. package/src/skill-packages.ts +59 -34
  127. package/src/skill-resources.ts +48 -0
  128. package/src/work-command.ts +11 -6
  129. package/src/work-policy-registry.ts +81 -0
  130. package/src/work-run.ts +79 -0
  131. package/src/work-setup.ts +141 -0
@@ -18,7 +18,9 @@ const MAX_DISPLAYED_ACTIONS_PER_TIP = 32_768;
18
18
  export const isDashboardHost = (value) => typeof value === "object" && value !== null && hosts.has(value);
19
19
  function configuration(input) {
20
20
  const c = detached(input);
21
- controlShape(c, ["version", "trustDirectory", "trustPolicyId", "archiveRoot", "scope", "author", "policyPath", "policySha256", "sources", "selection", "cases", "blind", "budgetDigest", "experimentDigest", "harnessArtifactDigest", ...(Object.hasOwn(c, "ordinaryDigest") ? ["ordinaryDigest"] : []), ...(Object.hasOwn(c, "learningLifecycleId") ? ["learningLifecycleId"] : [])]);
21
+ controlShape(c, ["version", "trustDirectory", "trustPolicyId", "archiveRoot", "scope", "author", "policyPath", "policySha256", "sources", "selection", "cases", "blind", "budgetDigest", "experimentDigest", "harnessArtifactDigest", ...(Object.hasOwn(c, "ordinaryDigest") ? ["ordinaryDigest"] : []), ...(Object.hasOwn(c, "learningLifecycleId") ? ["learningLifecycleId"] : []), ...(Object.hasOwn(c, "journalDirectory") ? ["journalDirectory"] : [])]);
22
+ if (c.journalDirectory !== undefined && (typeof c.journalDirectory !== "string" || !isAbsolute(c.journalDirectory)))
23
+ throw Error("explicit host journal directory required");
22
24
  if (Object.hasOwn(c, "ordinaryDigest") && !sha(c.ordinaryDigest))
23
25
  throw Error("invalid ordinary binding digest");
24
26
  if (Object.hasOwn(c, "learningLifecycleId") && !sha(c.learningLifecycleId))
@@ -37,7 +39,7 @@ export function createDashboardHost(options) {
37
39
  const trust = h.openTrustLifecycle(c.trustDirectory), view = trust.inspect(Date.now());
38
40
  if (view.policyId !== c.trustPolicyId)
39
41
  throw Error("trust policy changed");
40
- h.learningJournal(join(c.trustDirectory, "producer-host"), { type: "producer-host-initial", config: c });
42
+ h.learningJournal(c.journalDirectory ?? join(c.trustDirectory, "producer-host"), { type: "producer-host-initial", config: c });
41
43
  return openDashboardHost(options);
42
44
  }
43
45
  /** Existing native writers + original controllers; no model, launch, authority-file loader or PID recovery. */
@@ -50,7 +52,7 @@ export function openDashboardHost(options) {
50
52
  throw Error("original ordinary controller binding required");
51
53
  if (resourceBindingDigest(budget.binding) !== c.budgetDigest || experiment && (!isExperimentController(experiment) || experimentBindingDigest(experiment.binding) !== c.experimentDigest))
52
54
  throw Error("original controller binding required");
53
- const trust = h.openTrustLifecycle(c.trustDirectory), journal = h.learningJournal(join(c.trustDirectory, "producer-host"));
55
+ const trust = h.openTrustLifecycle(c.trustDirectory), journal = h.learningJournal(c.journalDirectory ?? join(c.trustDirectory, "producer-host"));
54
56
  const initial = journal.read()[0].value;
55
57
  if (initial.type !== "producer-host-initial" || dataDigest(initial.config) !== hostDigest)
56
58
  throw Error("host store binding changed; no new budget");
@@ -63,7 +65,7 @@ export function openDashboardHost(options) {
63
65
  const observation = dashboardObservations(h, c, journal.read), history = () => journal.read();
64
66
  const append = (value) => journal.append(history().at(-1).id, value);
65
67
  const saved = () => { const rows = history().filter(e => e.value.type === "checkpoint"); return rows.length ? detached(rows.at(-1).value.checkpoint) : null; };
66
- let presenter, busy = false, poisoned = false, presentationRevision = null, presenceDigest = null, attentionDeferred = null, presentationAcknowledged = false;
68
+ let presenter, busy = false, poisoned = false, stopped = false, presentationRevision = null, presenceDigest = null, attentionDeferred = null, presentationAcknowledged = false;
67
69
  const ordinaryDispatchHoldKey = dataDigest({ hostDigest, control: "pause-new-ordinary-dispatch" });
68
70
  // A host frame is a read-only snapshot: ordinary children may attach or settle without advancing this journal.
69
71
  // Within one tip, a key keeps its first exact request; humanAction revalidates it against current native authority.
@@ -114,6 +116,34 @@ export function openDashboardHost(options) {
114
116
  });
115
117
  };
116
118
  const api = { hostDigest, selectionDigest,
119
+ /** Same owner gate as action: checking stop cannot race a newly admitted effect. Never releases a hold. */
120
+ async stop() {
121
+ if (stopped)
122
+ return;
123
+ if (busy)
124
+ throw Error("Cannot stop: dashboard operation busy; wait for its acknowledgement first");
125
+ busy = true;
126
+ try {
127
+ const rows = history();
128
+ if (poisoned || rows.some(e => e.value.type === "host-failure") || rows.some(e => e.value.type === "claim" && !rows.some(r => r.value.type === "result" && r.value.requestId === e.value.requestId)))
129
+ throw Error("Cannot stop: acknowledgement unknown; retain this original host for readback. Do not repeat effects. Ending the whole Pi session does not reconcile or release this hold.");
130
+ if (c.ordinaryDigest && !ordinary)
131
+ throw Error("Cannot stop: original ordinary boundary unavailable; no recovery");
132
+ const dispatch = await budget.controls(null).inspect();
133
+ if (dispatch.admission === "blocked-pending")
134
+ throw Error("Cannot stop: pending original control requires explicit reconciliation, then resume before stopping");
135
+ if (dispatch.paused || ordinary && ordinary.inspect().admission !== "open")
136
+ throw Error("Cannot stop: resume new work in the original dashboard first. Any pending intent also needs its original reconciliation; no hold was released.");
137
+ stopped = true;
138
+ presenter?.close();
139
+ presentationRevision = null;
140
+ }
141
+ finally {
142
+ busy = false;
143
+ }
144
+ },
145
+ /** Final owner-session disposal only, not /grants host stop. Disconnects without resolving/releasing any control. */
146
+ endSession() { stopped = true; presenter?.close(); presentationRevision = null; },
117
147
  async frame() {
118
148
  const rows = history(), tip = rows.at(-1).id, a = authority();
119
149
  let source = null, error = null;
@@ -127,6 +157,8 @@ export function openDashboardHost(options) {
127
157
  }
128
158
  try {
129
159
  source = await observation.view(selectionState === "current-control-snapshot" ? a : null, selection);
160
+ if (options.currentWork)
161
+ source = { ...source, daily: await options.currentWork() };
130
162
  }
131
163
  catch (e) {
132
164
  error = String(e);
@@ -156,12 +188,26 @@ export function openDashboardHost(options) {
156
188
  catch (e) {
157
189
  error = String(e);
158
190
  }
191
+ let presentation = null;
192
+ try {
193
+ presentation = await options.presentation?.() ?? null;
194
+ }
195
+ catch (e) {
196
+ error = String(e);
197
+ }
198
+ if (options.learningView)
199
+ try {
200
+ learning = options.learningView();
201
+ }
202
+ catch (e) {
203
+ learning = { state: "deferred", reason: String(e) };
204
+ }
159
205
  const attention = trust.inspect(Date.now());
160
206
  let actions = [];
161
207
  try {
162
208
  const available = await availableHumanActions();
163
209
  // A frame that completed after its captured tip is stale and cannot replace a newer display generation.
164
- if (history().at(-1).id === tip) {
210
+ if (!stopped && history().at(-1).id === tip) {
165
211
  if (!displayedActions || displayedActions.tip !== tip)
166
212
  displayedActions = { tip, actions: new Map() };
167
213
  const additions = available.filter(action => !displayedActions.actions.has(action.key));
@@ -175,26 +221,30 @@ export function openDashboardHost(options) {
175
221
  displayedActions.actions.set(action.key, action);
176
222
  return true;
177
223
  });
178
- actions = shown.map(({ key, label, operation }) => ({ key, label, operation }));
224
+ actions = shown.map(({ key, label, operation, request }) => ({ key, label, operation, requestDigest: dashboardHostRequestDigest(request) }));
179
225
  }
180
226
  }
181
227
  catch (e) {
182
228
  error = String(e);
183
229
  }
184
- return freeze(detached({ version: "producer-dashboard-frame-v1", hostDigest, selectionDigest: dashboardSelectionDigest(selection), selectionState, tip, source, controls, learning, debrief, attention, error, actions,
230
+ return freeze(detached({ version: "producer-dashboard-frame-v1", hostDigest, selectionDigest: dashboardSelectionDigest(selection), selectionState, tip, source, controls, learning, debrief, attention, error, actions, presentation,
185
231
  requests: rows.filter(e => ["claim", "result", "presentation", "defer", "ordinary-intent-pending"].includes(String(e.value.type))).map(e => e.value),
186
232
  control: rows.some(e => e.value.type === "host-failure") ? "failed" : rows.some(e => e.value.type === "claim" && !rows.some(r => r.value.type === "result" && r.value.requestId === e.value.requestId)) ? "unknown" : "not-assessed",
187
233
  acknowledgement: poisoned ? "unknown" : "readback-only", identity: "independently-declared-host; not human/module authentication", activeBranch: null, acceptance: "not-assessed", freshness: "snapshot-unknown", workerInteractions: 0 }));
188
234
  },
189
235
  /** Explicit reconciliation is read-only. A retained claim is never replayed as an effect. */
190
236
  reconcile: () => api.frame(),
191
- async humanAction(key) {
237
+ async humanAction(key, expected) {
192
238
  const tip = history().at(-1).id;
239
+ if (expected && expected.tip !== tip)
240
+ throw Error("displayed action is stale; select again");
193
241
  if (!displayedActions || displayedActions.tip !== tip)
194
242
  throw Error("dashboard actions must be displayed at the current tip");
195
243
  const found = displayedActions.actions.get(key);
196
244
  if (!found)
197
245
  throw Error(`unknown dashboard action ${JSON.stringify(key)}`);
246
+ if (expected && dashboardHostRequestDigest(found.request) !== expected.requestDigest)
247
+ throw Error("displayed action identity changed; no effect attempted");
198
248
  const current = (await availableHumanActions()).find(action => action.key === key);
199
249
  if (!current || current.label !== found.label || dashboardHostRequestDigest(current.request) !== dashboardHostRequestDigest(found.request))
200
250
  throw Error("displayed dashboard action changed; no effect attempted");
@@ -202,6 +252,8 @@ export function openDashboardHost(options) {
202
252
  },
203
253
  async action(input) {
204
254
  const request = dashboardHostRequest(input), digest = dashboardHostRequestDigest(request);
255
+ if (stopped)
256
+ throw Error("dashboard host stopped; no effect attempted");
205
257
  if (busy || poisoned)
206
258
  throw Error("dashboard operation busy or acknowledgement unknown");
207
259
  busy = true;
@@ -234,6 +286,7 @@ export function openDashboardHost(options) {
234
286
  await options.beforeObservation?.(sourceId);
235
287
  const captured = observation.observe(request.payload, a, selection);
236
288
  append({ type: "observation", observation: captured });
289
+ options.afterObservation?.(captured);
237
290
  result = captured;
238
291
  }
239
292
  else if (request.operation === "present") {
@@ -317,9 +370,12 @@ export function openDashboardHost(options) {
317
370
  if (request.operation === "dispatch-reconcile" && (await port.inspect()).records.find(r => r.request.requestId === native.requestId)?.digest !== dispatchRequestDigest(native))
318
371
  throw Error("exact original dispatch reconciliation required");
319
372
  result = request.operation === "dispatch" ? await port.request(native) : await port.reconcile(native.requestId);
320
- const record = result.records.find(r => r.request.requestId === native.requestId);
321
- if (ordinaryHold && (record?.decision !== "approved" || native.action === "resume-dispatch" && record.application === "applied"))
322
- ordinaryHold.release();
373
+ const snapshot = result, record = snapshot.records.find(r => r.request.requestId === native.requestId);
374
+ if (!record)
375
+ throw Error("native dispatch application acknowledgement unavailable");
376
+ // A denied resume must not undo an earlier pause/pending control. Release only after final host sync.
377
+ if (ordinaryHold && (native.action === "resume-dispatch" && record.decision === "approved" && record.application === "applied" || record.application === "not-applied" && snapshot.admission === "enabled"))
378
+ releaseOrdinary = ordinaryHold.release;
323
379
  }
324
380
  else if (request.operation === "intent" || request.operation === "intent-reconcile") {
325
381
  const native = detached(intentRequest(request.payload)), port = budget.intentControls(a.dispatch), digest = intentRequestDigest(native);
@@ -386,6 +442,12 @@ export function openDashboardHost(options) {
386
442
  append({ type: "result", requestId: request.requestId, state: "failed-or-unknown", reason: String(error) });
387
443
  throw error;
388
444
  }
445
+ if (["dispatch", "dispatch-reconcile", "intent", "intent-reconcile"].includes(request.operation) && result && typeof result === "object") {
446
+ const snapshot = result, nativeId = request.payload.requestId;
447
+ const applied = snapshot.records?.find(r => (r.requestId ?? r.request?.requestId) === nativeId);
448
+ if (applied?.application)
449
+ result = { ...result, application: applied.application, nativeRequestId: nativeId };
450
+ }
389
451
  append({ type: "result", requestId: request.requestId, state: "acknowledged", resultDigest: dataDigest(result ?? null) });
390
452
  releaseOrdinary?.();
391
453
  return { state: "acknowledged", result };
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-host.js","sourceRoot":"","sources":["../src/dashboard-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard-host.js","sourceRoot":"","sources":["../src/dashboard-host.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAoD,MAAM,wBAAwB,CAAC;AACpI,OAAO,EAAE,4BAA4B,EAAE,MAAM,wBAAwB,CAAC;AACtE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACtF,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAA8B,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,YAAY,EAAwB,MAAM,uBAAuB,CAAC;AACnH,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAsB,MAAM,qBAAqB,CAAC;AAC7F,OAAO,EAAE,uBAAuB,EAAE,sBAAsB,EAAoD,MAAM,iBAAiB,CAAC;AACpI,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,wBAAwB,EACG,MAAM,8BAA8B,CAAC;AAChJ,cAAc,8BAA8B,CAAC;AAC7C,MAAM,KAAK,GAAC,IAAI,OAAO,EAAU,CAAC;AAClC;6HAC6H;AAC7H,MAAM,6BAA6B,GAAC,MAAM,CAAC;AAC3C,MAAM,CAAC,MAAM,eAAe,GAAC,CAAC,KAAa,EAAwB,EAAE,CAAA,OAAO,KAAK,KAAG,QAAQ,IAAE,KAAK,KAAG,IAAI,IAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;AAiB7H,SAAS,aAAa,CAAC,KAAyB;IAC9C,MAAM,CAAC,GAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAAA,YAAY,CAAC,CAAC,EAAC,CAAC,SAAS,EAAC,gBAAgB,EAAC,eAAe,EAAC,aAAa,EAAC,OAAO,EAAC,QAAQ,EAAC,YAAY,EAAC,cAAc,EAAC,SAAS,EAAC,WAAW,EAAC,OAAO,EAAC,OAAO,EAAC,cAAc,EAAC,kBAAkB,EAAC,uBAAuB,EAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,gBAAgB,CAAC,CAAA,CAAC,CAAA,CAAC,gBAAgB,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,qBAAqB,CAAC,CAAA,CAAC,CAAA,CAAC,qBAAqB,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC,EAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,kBAAkB,CAAC,CAAA,CAAC,CAAA,CAAC,kBAAkB,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC,CAAC,CAAC,CAAC;IACrb,IAAG,CAAC,CAAC,gBAAgB,KAAG,SAAS,IAAE,CAAC,OAAO,CAAC,CAAC,gBAAgB,KAAG,QAAQ,IAAE,CAAC,UAAU,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACnK,IAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,gBAAgB,CAAC,IAAE,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC;QAAC,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;IAC5G,IAAG,MAAM,CAAC,MAAM,CAAC,CAAC,EAAC,qBAAqB,CAAC,IAAE,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAAC,MAAM,KAAK,CAAC,qCAAqC,CAAC,CAAC;IAC1H,IAAG,CAAC,CAAC,OAAO,KAAG,4BAA4B,IAAE,CAAC,CAAC,CAAC,CAAC,cAAc,EAAC,CAAC,CAAC,WAAW,EAAC,CAAC,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAA,EAAE,CAAA,OAAO,CAAC,KAAG,QAAQ,IAAE,UAAU,CAAC,CAAC,CAAC,CAAC,IAAE,CAAC,CAAC,CAAC,CAAC,aAAa,EAAC,CAAC,CAAC,YAAY,EAAC,CAAC,CAAC,YAAY,EAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,IAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,KAAG,IAAI,IAAE,GAAG,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,IAAE,OAAO,CAAC,CAAC,KAAK,KAAG,QAAQ,IAAE,CAAC,CAAC,CAAC,KAAK,IAAE,CAAC,CAAC,KAAK,CAAC,MAAM,GAAC,GAAG,IAAE,OAAO,CAAC,CAAC,MAAM,KAAG,QAAQ,IAAE,CAAC,CAAC,CAAC,MAAM,IAAE,CAAC,CAAC,MAAM,CAAC,MAAM,GAAC,GAAG,IAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,IAAE,CAAC,CAAC,OAAO,CAAC,MAAM,GAAC,CAAC,IAAE,CAAC,CAAC,OAAO,CAAC,MAAM,GAAC,EAAE,IAAE,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAG,CAAC,CAAC,OAAO,CAAC,MAAM,IAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,KAAG,MAAM,CAAC,CAAC,MAAM,GAAC,CAAC,IAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAE,CAAC,CAAC,MAAM,EAAC,WAAW,EAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;IACvtB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC;AACnB,CAAC;AACD,6GAA6G;AAC7G,MAAM,UAAU,mBAAmB,CAAC,OAA4B;IAC9D,MAAM,CAAC,GAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC,CAAC,GAAC,OAAO,CAAC,OAAO,EAAC,CAAC,GAAC,OAAO,CAAC,SAAS,EAAE,CAAC;IAC9E,IAAG,4BAA4B,CAAC,CAAC,CAAC,KAAG,CAAC,CAAC,qBAAqB;QAAC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACtH,IAAG,CAAC,CAAC,EAAE,WAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC;QAAC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC7G,MAAM,KAAK,GAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,cAAc,CAAC,EAAC,IAAI,GAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAClF,IAAG,IAAI,CAAC,QAAQ,KAAG,CAAC,CAAC,aAAa;QAAC,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAC;IACvE,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,IAAE,IAAI,CAAC,CAAC,CAAC,cAAc,EAAC,eAAe,CAAC,EAAC,EAAC,IAAI,EAAC,uBAAuB,EAAC,MAAM,EAAC,CAAC,EAAC,CAAC,CAAC;IACtH,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AACD,+GAA+G;AAC/G,MAAM,UAAU,iBAAiB,CAAC,OAA4B;IAC5D,MAAM,CAAC,GAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC,CAAC,GAAC,OAAO,CAAC,OAAO,EAAC,UAAU,GAAC,mBAAmB,CAAC,CAAC,CAAC,EAAC,eAAe,GAAC,wBAAwB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAChJ,IAAG,4BAA4B,CAAC,CAAC,CAAC,KAAG,CAAC,CAAC,qBAAqB;QAAC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACtH,MAAM,MAAM,GAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,EAAC,UAAU,GAAC,OAAO,CAAC,UAAU,EAAC,QAAQ,GAAC,OAAO,CAAC,QAAQ,CAAC;IACxG,IAAG,QAAQ,IAAE,CAAC,CAAC,kBAAkB,CAAC,QAAQ,CAAC,IAAE,QAAQ,CAAC,aAAa,KAAG,CAAC,CAAC,cAAc,CAAC;QAAC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;IACrJ,IAAG,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,KAAG,CAAC,CAAC,YAAY,IAAE,UAAU,IAAE,CAAC,CAAC,sBAAsB,CAAC,UAAU,CAAC,IAAE,uBAAuB,CAAC,UAAU,CAAC,OAAO,CAAC,KAAG,CAAC,CAAC,gBAAgB,CAAC;QAAC,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACnO,MAAM,KAAK,GAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,cAAc,CAAC,EAAC,OAAO,GAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,gBAAgB,IAAE,IAAI,CAAC,CAAC,CAAC,cAAc,EAAC,eAAe,CAAC,CAAC,CAAC;IACzI,MAAM,OAAO,GAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACtC,IAAG,OAAO,CAAC,IAAI,KAAG,uBAAuB,IAAE,UAAU,CAAC,OAAO,CAAC,MAAM,CAAC,KAAG,UAAU;QAAC,MAAM,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC5I,MAAM,UAAU,GAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAyF,CAAC;IACpI,IAAG,UAAU,CAAC,WAAW,KAAG,CAAC,CAAC,WAAW,IAAE,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,KAAG,CAAC,CAAC,aAAa,IAAE,UAAU,CAAC,QAAQ,IAAE,UAAU,CAAC,QAAQ,CAAC,kBAAkB,GAAC,CAAC;QAAC,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;IAC9N,MAAM,SAAS,GAAC,GAAE,EAAE,GAAC,MAAM,CAAC,GAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA,IAAG,CAAC,CAAC;QAAC,OAAO,IAAI,CAAC,CAAA,MAAM,IAAI,GAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA,IAAG,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC;QAAC,OAAO,IAAI,CAAC,CAAA,OAAO,IAAI,CAAC,CAAA,CAAC,CAAC;IAC9J,MAAM,WAAW,GAAC,qBAAqB,CAAC,CAAC,EAAC,CAAC,EAAC,OAAO,CAAC,IAAI,CAAC,EAAC,OAAO,GAAC,GAAE,EAAE,CAAA,OAAO,CAAC,IAAI,EAAE,CAAC;IACrF,MAAM,MAAM,GAAC,CAAC,KAA4B,EAAC,EAAE,CAAA,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,EAAC,KAAK,CAAC,CAAC;IACxF,MAAM,KAAK,GAAC,GAAyB,EAAE,GAAC,MAAM,IAAI,GAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,YAAY,CAAC,CAAC,CAAA,OAAO,IAAI,CAAC,MAAM,CAAA,CAAC,CAAA,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,UAAU,CAAsB,CAAA,CAAC,CAAA,IAAI,CAAC,CAAA,CAAC,CAAC;IAC3L,IAAI,SAAoC,EAAC,IAAI,GAAC,KAAK,EAAC,QAAQ,GAAC,KAAK,EAAC,OAAO,GAAC,KAAK,EAAC,oBAAoB,GAAa,IAAI,EAAC,cAAc,GAAa,IAAI,EAAC,iBAAiB,GAAa,IAAI,EAAC,wBAAwB,GAAC,KAAK,CAAC;IACzN,MAAM,uBAAuB,GAAC,UAAU,CAAC,EAAC,UAAU,EAAC,OAAO,EAAC,6BAA6B,EAAC,CAAC,CAAC;IAC7F,+GAA+G;IAC/G,oHAAoH;IACpH,IAAI,gBAAgB,GAA0I,IAAI,CAAC;IACnK,MAAM,QAAQ,GAAC,GAAE,EAAE,GAAC,MAAM,CAAC,GAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA,OAAO,CAAC,IAAE,CAAC,CAAC,OAAO,KAAG,IAAI,IAAE,CAAC,CAAC,OAAO,KAAG,IAAI,IAAE,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,IAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAE,CAAC,CAAC,SAAS,GAAC,IAAI,CAAC,GAAG,EAAE,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,IAAI,CAAC,CAAA,CAAC,CAAC;IACpL,MAAM,WAAW,GAAoB,EAAC,UAAU,EAAC,YAAY,EAAC,IAAI,EAAC,KAAK,EAAC,cAAc,CAAC,QAAQ,EAAC,IAAI;YACnG,MAAM,IAAI,GAAC,OAAO,EAAE,EAAC,QAAQ,GAAC,KAAK,EAAE,CAAC;YAAA,IAAG,CAAC,QAAQ,CAAA,CAAC,CAAA,UAAU,CAAC,QAAQ,CAAC,CAAA,CAAC,CAAA,IAAI,CAAC,KAAG,QAAQ;gBAAC,MAAM,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC5H,IAAG,QAAQ,IAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,IAAE,QAAQ,CAAC,WAAW,KAAG,IAAI,CAAC,WAAW,CAAC;gBAAC,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACrK,MAAM,KAAK,GAAC,CAAC,GAAG,IAAI,CAAC,OAAO,EAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAA,CAAC,CAAA,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA,CAAC,CAAA,EAAE,CAAC,CAAC,CAAC;YAAA,IAAG,KAAK,CAAC,MAAM,GAAC,CAAC;gBAAC,MAAM,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAC5H,IAAG,CAAC,QAAQ;gBAAC,KAAI,MAAM,IAAI,IAAI,KAAK,EAAC,CAAC;oBAAA,MAAM,MAAM,GAAC,KAAK,CAAC,MAAM,CAAC,WAAW,GAAC,UAAU,CAAC,EAAC,UAAU,EAAC,IAAI,EAAC,CAAC,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;oBAAA,IAAG,MAAM,CAAC,IAAI,KAAG,KAAK,EAAC,CAAC;wBAAA,iBAAiB,GAAC,MAAM,CAAC,MAAM,CAAC;wBAAA,MAAM,KAAK,CAAC,2CAA2C,GAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAAA,CAAC;gBAAA,CAAC;YACvP,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,EAAC,EAAC,IAAI,EAAC,YAAY,EAAC,UAAU,EAAC,IAAI,EAAC,CAAC,CAAC;QACtE,CAAC,EAAC,CAAC;IACH,MAAM,QAAQ,GAAC,KAAK,IAAE,EAAE,GAAC,MAAM,QAAQ,GAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAC,UAAU,GAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAA,OAAO,EAAC,QAAQ,EAAC,MAAM,EAAC,UAAU,CAAC,MAAM,EAAC,CAAC,CAAA,CAAC,CAAC;IAC7J,MAAM,MAAM,GAAC,KAAK,EAAC,QAAe,EAAC,EAAE,GAAC,MAAM,CAAC,GAAC,MAAM,QAAQ,EAAE,CAAC,CAAA,IAAG,QAAQ,IAAE,CAAC,QAAQ,CAAC,SAAS,EAAE;QAAC,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAA,IAAG,UAAU,EAAC,CAAC;QAAA,MAAM,IAAI,GAAC,MAAM,UAAU,CAAC,OAAO,EAAE,CAAC;QAAA,IAAG,IAAI,CAAC,MAAM,EAAE,MAAM,KAAG,CAAC,IAAE,IAAI,CAAC,OAAO,KAAG,cAAc;YAAC,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;IAAA,CAAC,CAAA,IAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAE,CAAC,CAAC,QAAQ,CAAC,SAAS,KAAG,QAAQ,IAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,KAAG,QAAQ,IAAE,CAAC,CAAC,MAAM,KAAG,CAAC;QAAC,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC,CAAA,CAAC,CAAC;IACnd,MAAM,gBAAgB,GAAC,KAAK,IAAE,EAAE,CAAA,MAAM,CAAC,OAAO,CAAC,MAAM,CAAA,CAAC,CAAA,CAAC,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,SAAS,CAAA,CAAC,CAAA,CAAC,CAAC,SAAS,CAAC;IAC1H,MAAM,UAAU,GAAC,KAAK,IAAE,EAAE,CAAA,CAAC,EAAC,QAAQ,EAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAC,MAAM,EAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAA,CAAC,CAAA,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAA,CAAC,CAAA,IAAI,EAAC,UAAU,EAAC,UAAU,CAAA,CAAC,CAAA,MAAM,UAAU,CAAC,OAAO,EAAE,CAAA,CAAC,CAAA,IAAI,EAAC,QAAQ,EAAC,QAAQ,CAAA,CAAC,CAAA,QAAQ,CAAC,OAAO,EAAE,CAAA,CAAC,CAAA,IAAI,EAAC,CAAC,CAAC;IAC3P,MAAM,qBAAqB,GAAC,KAAK,IAAE,EAAE;QACnC,MAAM,IAAI,GAAC,OAAO,EAAE,EAAC,GAAG,GAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,EAAC,SAAS,GAAC,MAAM,gBAAgB,EAAE,EAAC,IAAI,GAAC,IAAI,GAAG,EAAU,CAAC;QACnG,MAAM,QAAQ,GAAC,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,EAAC,UAAU,EAAC,eAAe,EAAC,wBAAwB,CAAC,SAAS,CAAC,EAAC,GAAG,EAAC,YAAY,EAAC,WAAW,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,EAAC,QAAQ,EAAC,CAAC,CAAC,QAAQ,EAAC,YAAY,EAAC,CAAC,CAAC,YAAY,EAAC,CAAC,CAAC,EAAC,0BAA0B,EAAC,SAAS,IAAE,oBAAoB,KAAG,IAAI,IAAE,CAAC,wBAAwB,CAAA,CAAC,CAAA,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAA,CAAC,CAAA,IAAI,EAAC,CAAC,IAAE,EAAE,EAAC,CAAC,GAAC,SAAS,EAAE,CAAC;QACjW,OAAO,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAA,EAAE;YAAC,MAAM,CAAC,GAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAAA,YAAY,CAAC,CAAC,EAAC,CAAC,KAAK,EAAC,OAAO,EAAC,SAAS,CAAC,CAAC,CAAC;YAAA,MAAM,OAAO,GAAC,oBAAoB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;YAC1I,IAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,IAAE,OAAO,CAAC,CAAC,KAAK,KAAG,QAAQ,IAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,IAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAC,GAAG,IAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAAC,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAAA,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACpM,IAAG,OAAO,CAAC,UAAU,KAAG,UAAU,IAAE,OAAO,CAAC,WAAW,KAAG,GAAG,IAAE,OAAO,CAAC,eAAe,KAAG,wBAAwB,CAAC,SAAS,CAAC,IAAE,CAAC,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;gBAAC,MAAM,KAAK,CAAC,2DAA2D,CAAC,CAAC;YACxQ,OAAO,EAAC,GAAG,EAAC,CAAC,CAAC,GAAG,EAAC,KAAK,EAAC,CAAC,CAAC,KAAK,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,OAAO,EAAC,CAAC;QAAA,CAAC,CAAC,CAAC;IAC5E,CAAC,CAAC;IACF,MAAM,GAAG,GAAC,EAAC,UAAU,EAAC,eAAe;QACnC,2GAA2G;QAC3G,KAAK,CAAC,IAAI;YACR,IAAG,OAAO;gBAAC,OAAO;YAAA,IAAG,IAAI;gBAAC,MAAM,KAAK,CAAC,2EAA2E,CAAC,CAAC;YAAA,IAAI,GAAC,IAAI,CAAC;YAC7H,IAAG,CAAC;gBACF,MAAM,IAAI,GAAC,OAAO,EAAE,CAAC;gBACrB,IAAG,QAAQ,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,cAAc,CAAC,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,QAAQ,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBAAC,MAAM,KAAK,CAAC,2KAA2K,CAAC,CAAC;gBACvW,IAAG,CAAC,CAAC,cAAc,IAAE,CAAC,QAAQ;oBAAC,MAAM,KAAK,CAAC,kEAAkE,CAAC,CAAC;gBAC/G,MAAM,QAAQ,GAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACrD,IAAG,QAAQ,CAAC,SAAS,KAAG,iBAAiB;oBAAC,MAAM,KAAK,CAAC,qGAAqG,CAAC,CAAC;gBAC7J,IAAG,QAAQ,CAAC,MAAM,IAAE,QAAQ,IAAG,QAAQ,CAAC,OAAO,EAAyB,CAAC,SAAS,KAAG,MAAM;oBAAC,MAAM,KAAK,CAAC,gJAAgJ,CAAC,CAAC;gBAC1P,OAAO,GAAC,IAAI,CAAC;gBAAA,SAAS,EAAE,KAAK,EAAE,CAAC;gBAAA,oBAAoB,GAAC,IAAI,CAAC;YAC5D,CAAC;oBAAO,CAAC;gBAAA,IAAI,GAAC,KAAK,CAAC;YAAA,CAAC;QACvB,CAAC;QACD,qHAAqH;QACrH,UAAU,KAAG,OAAO,GAAC,IAAI,CAAC,CAAA,SAAS,EAAE,KAAK,EAAE,CAAC,CAAA,oBAAoB,GAAC,IAAI,CAAC,CAAA,CAAC;QACxE,KAAK,CAAC,KAAK;YACT,MAAM,IAAI,GAAC,OAAO,EAAE,EAAC,GAAG,GAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,EAAC,CAAC,GAAC,SAAS,EAAE,CAAC;YAAA,IAAI,MAAM,GAAS,IAAI,EAAC,KAAK,GAAa,IAAI,CAAC;YACtG,IAAI,SAAS,GAAC,CAAC,CAAC,SAAS,EAAC,cAAc,GAAC,0BAA0B,CAAC;YACpE,IAAG,CAAC;gBAAA,SAAS,GAAC,MAAM,gBAAgB,EAAE,CAAC;YAAA,CAAC;YAAA,OAAM,CAAC,EAAC,CAAC;gBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAAA,cAAc,GAAC,mCAAmC,CAAC;YAAA,CAAC;YACrH,IAAG,CAAC;gBAAA,MAAM,GAAC,MAAM,WAAW,CAAC,IAAI,CAAC,cAAc,KAAG,0BAA0B,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,IAAI,EAAC,SAAS,CAAC,CAAC;gBAC9F,IAAG,OAAO,CAAC,WAAW;oBAAC,MAAM,GAAC,EAAC,GAAI,MAAiB,EAAC,KAAK,EAAC,MAAM,OAAO,CAAC,WAAW,EAAE,EAAC,CAAC;YAC1F,CAAC;YAAA,OAAM,CAAC,EAAC,CAAC;gBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAAA,CAAC;YAC3B,IAAI,OAAO,GAAS,IAAI,CAAC;YACzB,IAAG,CAAC,IAAE,SAAS,IAAE,oBAAoB,KAAG,IAAI,IAAE,QAAQ,EAAE,EAAE,cAAc,KAAG,cAAc,EAAC,CAAC;gBAAA,IAAG,CAAC;oBAAA,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;oBAAA,OAAO,GAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBAAA,CAAC;gBAAA,MAAK,CAAC;oBAAA,OAAO,GAAC,IAAI,CAAC;gBAAA,CAAC;YAAA,CAAC;YACjL,IAAI,QAAQ,GAAS,IAAI,CAAC;YAAA,IAAG,CAAC;gBAAA,QAAQ,GAAC,MAAM,UAAU,EAAE,CAAC;YAAA,CAAC;YAAA,OAAM,CAAC,EAAC,CAAC;gBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAAA,CAAC;YACrF,IAAI,QAAQ,GAAS,IAAI,CAAC;YAAA,IAAG,CAAC,CAAC,mBAAmB;gBAAC,IAAG,CAAC;oBAAA,QAAQ,GAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,WAAW,EAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;gBAAA,CAAC;gBAAA,OAAM,CAAC,EAAC,CAAC;oBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAAA,CAAC;YACxJ,IAAI,YAAY,GAAuB,IAAI,CAAC;YAAA,IAAG,CAAC;gBAAA,YAAY,GAAC,MAAM,OAAO,CAAC,YAAY,EAAE,EAAE,IAAE,IAAI,CAAC;YAAA,CAAC;YAAA,OAAM,CAAC,EAAC,CAAC;gBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAAA,CAAC;YAC7H,IAAG,OAAO,CAAC,YAAY;gBAAC,IAAG,CAAC;oBAAA,QAAQ,GAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAAA,CAAC;gBAAA,OAAM,CAAC,EAAC,CAAC;oBAAA,QAAQ,GAAC,EAAC,KAAK,EAAC,UAAU,EAAC,MAAM,EAAC,MAAM,CAAC,CAAC,CAAC,EAAC,CAAC;gBAAA,CAAC;YACpH,MAAM,SAAS,GAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAAA,IAAI,OAAO,GAAmE,EAAE,CAAC;YAC3H,IAAG,CAAC;gBAAA,MAAM,SAAS,GAAC,MAAM,qBAAqB,EAAE,CAAC;gBAChD,wGAAwG;gBACxG,IAAG,CAAC,OAAO,IAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,KAAG,GAAG,EAAC,CAAC;oBACvC,IAAG,CAAC,gBAAgB,IAAE,gBAAgB,CAAC,GAAG,KAAG,GAAG;wBAAC,gBAAgB,GAAC,EAAC,GAAG,EAAC,OAAO,EAAC,IAAI,GAAG,EAAE,EAAC,CAAC;oBAC1F,MAAM,SAAS,GAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAA,EAAE,CAAA,CAAC,gBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBACrF,IAAG,gBAAgB,CAAC,OAAO,CAAC,IAAI,GAAC,SAAS,CAAC,MAAM,GAAC,6BAA6B;wBAAC,MAAM,KAAK,CAAC,+CAA+C,CAAC,CAAC;oBAC7I,MAAM,KAAK,GAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAA,EAAE;wBAAC,MAAM,KAAK,GAAC,gBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;wBAC1F,IAAG,KAAK,IAAE,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,KAAG,0BAA0B,CAAC,MAAM,CAAC,OAAO,CAAC;4BAAC,OAAO,KAAK,CAAC;wBAC9G,IAAG,CAAC,KAAK;4BAAC,gBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAC,MAAM,CAAC,CAAC;wBAAA,OAAO,IAAI,CAAC;oBAAA,CAAC,CAAC,CAAC;oBAC5E,OAAO,GAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAC,EAAC,EAAE,CAAA,CAAC,EAAC,GAAG,EAAC,KAAK,EAAC,SAAS,EAAC,aAAa,EAAC,0BAA0B,CAAC,OAAO,CAAC,EAAC,CAAC,CAAC,CAAC;gBAChI,CAAC;YAAA,CAAC;YAAA,OAAM,CAAC,EAAC,CAAC;gBAAA,KAAK,GAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAAA,CAAC;YAC9B,OAAO,MAAM,CAAC,QAAQ,CAAC,EAAC,OAAO,EAAC,6BAA6B,EAAC,UAAU,EAAC,eAAe,EAAC,wBAAwB,CAAC,SAAS,CAAC,EAAC,cAAc,EAAC,GAAG,EAAC,MAAM,EAAC,QAAQ,EAAC,QAAQ,EAAC,OAAO,EAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAC,YAAY;gBACnN,QAAQ,EAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,OAAO,EAAC,QAAQ,EAAC,cAAc,EAAC,OAAO,EAAC,yBAAyB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC;gBAC3I,OAAO,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,cAAc,CAAC,CAAA,CAAC,CAAA,QAAQ,CAAA,CAAC,CAAA,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,QAAQ,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,cAAc;gBACzM,eAAe,EAAC,QAAQ,CAAA,CAAC,CAAA,SAAS,CAAA,CAAC,CAAA,eAAe,EAAC,QAAQ,EAAC,8DAA8D,EAAC,YAAY,EAAC,IAAI,EAAC,UAAU,EAAC,cAAc,EAAC,SAAS,EAAC,kBAAkB,EAAC,kBAAkB,EAAC,CAAC,EAAC,CAAC,CAAC,CAAC;QAChO,CAAC;QACD,6FAA6F;QAC7F,SAAS,EAAC,GAAE,EAAE,CAAA,GAAG,CAAC,KAAK,EAAE;QACzB,KAAK,CAAC,WAAW,CAAC,GAAU,EAAC,QAA2C;YAAE,MAAM,GAAG,GAAC,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;YAAA,IAAG,QAAQ,IAAE,QAAQ,CAAC,GAAG,KAAG,GAAG;gBAAC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;YAAA,IAAG,CAAC,gBAAgB,IAAE,gBAAgB,CAAC,GAAG,KAAG,GAAG;gBAAC,MAAM,KAAK,CAAC,wDAAwD,CAAC,CAAC;YACrT,MAAM,KAAK,GAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAAA,IAAG,CAAC,KAAK;gBAAC,MAAM,KAAK,CAAC,4BAA4B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACvH,IAAG,QAAQ,IAAE,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,KAAG,QAAQ,CAAC,aAAa;gBAAC,MAAM,KAAK,CAAC,wDAAwD,CAAC,CAAC;YACtJ,MAAM,OAAO,GAAC,CAAC,MAAM,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAA,EAAE,CAAA,MAAM,CAAC,GAAG,KAAG,GAAG,CAAC,CAAC;YAAA,IAAG,CAAC,OAAO,IAAE,OAAO,CAAC,KAAK,KAAG,KAAK,CAAC,KAAK,IAAE,0BAA0B,CAAC,OAAO,CAAC,OAAO,CAAC,KAAG,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC;gBAAC,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC;YAAA,OAAO,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAAA,CAAC;QAC1T,KAAK,CAAC,MAAM,CAAC,KAA0B;YACrC,MAAM,OAAO,GAAC,oBAAoB,CAAC,KAAK,CAAC,EAAC,MAAM,GAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;YACrF,IAAG,OAAO;gBAAC,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;YACtE,IAAG,IAAI,IAAE,QAAQ;gBAAC,MAAM,KAAK,CAAC,qDAAqD,CAAC,CAAC;YAAA,IAAI,GAAC,IAAI,CAAC;YAAA,IAAI,SAAS,GAAC,KAAK,CAAC;YACnH,IAAG,CAAC;gBACF,MAAM,IAAI,GAAC,OAAO,EAAE,EAAC,GAAG,GAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,OAAO,CAAC,SAAS,CAAC,CAAC;gBACrG,IAAG,GAAG,EAAC,CAAC;oBAAA,IAAG,GAAG,CAAC,KAAK,CAAC,MAAM,KAAG,MAAM;wBAAC,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;oBAAA,OAAO,EAAC,KAAK,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,cAAc,CAAC,CAAA,CAAC,CAAA,mBAAmB,CAAA,CAAC,CAAA,eAAe,EAAC,MAAM,EAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,QAAQ,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,OAAO,CAAC,SAAS,CAAC,EAAE,KAAK,IAAE,IAAI,EAAC,CAAC;gBAAA,CAAC;gBACpR,MAAM,SAAS,GAAC,OAAO,CAAC,SAAS,KAAG,SAAS,CAAA,CAAC,CAAA,MAAM,gBAAgB,EAAE,CAAC,KAAK,CAAC,GAAE,EAAE,CAAA,CAAC,CAAC,SAAS,CAAC,CAAA,CAAC,CAAA,MAAM,gBAAgB,EAAE,CAAC;gBACvH,IAAG,OAAO,CAAC,UAAU,KAAG,UAAU,IAAE,OAAO,CAAC,eAAe,KAAG,wBAAwB,CAAC,SAAS,CAAC,IAAE,OAAO,CAAC,WAAW,KAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC,EAAE;oBAAC,MAAM,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBACtL,IAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,cAAc,CAAC,IAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,QAAQ,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;oBAAC,MAAM,KAAK,CAAC,kEAAkE,CAAC,CAAC;gBACpP,MAAM,CAAC,GAAC,SAAS,EAAE,EAAC,QAAQ,GAAC,OAAO,CAAC,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;gBACzE,SAAS,GAAC,IAAI,CAAC;gBAAA,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAC,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,MAAM,EAAC,OAAO,EAAC,QAAQ,EAAC,QAAQ,CAAA,CAAC,CAAA,UAAU,CAAA,CAAC,CAAA,QAAQ,EAAC,CAAC,CAAC;gBACnJ,IAAG,CAAC,QAAQ,EAAC,CAAC;oBAAA,MAAM,CAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC,CAAC;oBAAA,OAAO,EAAC,KAAK,EAAC,QAAQ,EAAC,CAAC;gBAAA,CAAC;gBAC1G,IAAI,MAAc,EAAC,eAAoC,CAAC;gBACxD,IAAG,CAAC;oBACF,IAAG,OAAO,CAAC,SAAS,KAAG,SAAS,EAAC,CAAC;wBAChC,MAAM,QAAQ,GAAE,OAAO,CAAC,OAA+B,EAAE,QAAQ,CAAC;wBAAA,IAAG,OAAO,QAAQ,KAAG,QAAQ;4BAAC,MAAM,KAAK,CAAC,mCAAmC,CAAC,CAAC;wBAAA,MAAM,OAAO,CAAC,iBAAiB,EAAE,CAAC,QAAQ,CAAC,CAAC;wBAC7L,MAAM,QAAQ,GAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,EAAC,CAAE,EAAC,SAAS,CAAC,CAAC;wBAAA,MAAM,CAAC,EAAC,IAAI,EAAC,aAAa,EAAC,WAAW,EAAC,QAAQ,EAAC,CAAC,CAAC;wBAAA,OAAO,CAAC,gBAAgB,EAAE,CAAC,QAAQ,CAAC,CAAC;wBAAA,MAAM,GAAC,QAAQ,CAAC;oBAC1K,CAAC;yBAAK,IAAG,OAAO,CAAC,SAAS,KAAG,SAAS,EAAC,CAAC;wBACtC,MAAM,CAAC,GAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAwF,CAAC;wBACzH,IAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,KAAG,qDAAqD,IAAE,CAAC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,IAAE,OAAO,CAAC,CAAC,WAAW,KAAG,SAAS,IAAE,OAAO,CAAC,CAAC,OAAO,KAAG,SAAS,IAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC;4BAAC,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAC;wBACvR,IAAG,CAAC,CAAC,CAAC,WAAW,IAAE,CAAC,CAAC,CAAC,OAAO,IAAE,QAAQ,EAAE,EAAE,cAAc,KAAG,CAAC,CAAC,cAAc,EAAC,CAAC;4BAAA,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,QAAQ,EAAC,CAAC,EAAC,MAAM,EAAC,sCAAsC,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;4BAAA,SAAS,EAAE,KAAK,EAAE,CAAC;4BAAA,oBAAoB,GAAC,IAAI,CAAC;4BAAA,MAAM,GAAC,EAAC,KAAK,EAAC,UAAU,EAAC,CAAC;wBAAA,CAAC;6BAC1Q,CAAC;4BACH,MAAM,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;4BAAA,MAAM,KAAK,GAAC,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,IAAI,KAAG,MAAM,CAAC,EAAE,KAAK,IAAE,CAAC,CAAC,KAAK,CAAC;4BAAA,IAAG,CAAC,KAAK;gCAAC,MAAM,KAAK,CAAC,0CAA0C,CAAC,CAAC;4BAC7K,MAAM,QAAQ,GAAC,KAAK,CAAC,OAAO,KAAG,iBAAiB,CAAA,CAAC,CAAA,CAAC,CAAC,wBAAwB,CAAC,CAAC,CAAC,WAAW,EAAC,KAAK,CAAC,OAAO,EAAC,CAAC,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,WAAW,EAAC,KAAK,CAAC,OAAO,EAAC,CAAC,CAAC,MAAM,CAAC,CAAC;4BACjL,MAAM,IAAI,GAAC,UAAU,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAC,CAAC,CAAC,KAAK,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAC,EAAC,CAAC,CAAC,KAAK,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,CAAA,CAAC,EAAC,CAAC,EAAC,KAAK,CAAC,OAAO,KAAG,iBAAiB,CAAA,CAAC,CAAA,EAAC,OAAO,EAAC,KAAK,CAAC,OAAO,EAAC,aAAa,EAAC,KAAK,CAAC,aAAa,EAAC,CAAA,CAAC,CAAA,SAAS,CAAC,CAAC;4BAC9K,IAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,UAAU,CAAC,EAAC,IAAI,EAAC,UAAU,EAAC,GAAG,CAAC,CAAC,SAAS,CAAC,QAAkB,EAAC,CAAC,KAAG,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gCAAC,MAAM,KAAK,CAAC,+DAA+D,CAAC,CAAC;4BACvM,SAAS,GAAC,qBAAqB,CAAC,CAAC,EAAC,EAAC,WAAW,EAAC,CAAC,CAAC,WAAW,EAAC,KAAK,EAAC,CAAC,CAAC,KAAK,EAAC,MAAM,EAAC,CAAC,CAAC,MAAM,EAAC,KAAK,EAAC,KAAK,EAAC,CAAC,CAAC,KAAK,IAAE,SAAS,EAAC,WAAW,EAAC,CAAC,CAAC;4BACxI,iBAAiB,GAAC,IAAI,CAAC;4BAAA,MAAM,IAAI,GAAC,MAAM,SAAS,CAAC,IAAI,CAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,WAAW,EAAC,IAAI,EAAC,CAAC,CAAC;4BAAA,MAAM,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;4BAC1H,IAAG,iBAAiB,EAAC,CAAC;gCAAA,SAAS,CAAC,KAAK,EAAE,CAAC;gCAAA,oBAAoB,GAAC,IAAI,CAAC;gCAAA,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,MAAM,EAAC,iBAAiB,EAAC,MAAM,EAAC,IAAI,EAAC,CAAC,CAAC;gCAAA,MAAM,GAAC,EAAC,KAAK,EAAC,UAAU,EAAC,MAAM,EAAC,iBAAiB,EAAC,CAAC;4BAAA,CAAC;iCACzM,CAAC;gCAAA,IAAG,IAAI,CAAC,KAAK,KAAG,MAAM;oCAAC,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC;gCAClG,oBAAoB,GAAC,CAAC,CAAC,gBAAgB,CAAC;gCAAA,cAAc,GAAC,CAAC,CAAC,cAAc,CAAC;gCAAA,wBAAwB,GAAC,KAAK,CAAC;gCAAA,MAAM,WAAW,GAAC,UAAU,CAAC,IAAI,CAAC,CAAC;gCAAA,MAAM,CAAC,EAAC,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,QAAQ,EAAC,CAAC,EAAC,WAAW,EAAC,KAAK,EAAC,uBAAuB,EAAC,SAAS,EAAC,aAAa,EAAC,CAAC,CAAC;gCAAA,MAAM,GAAC,EAAC,KAAK,EAAC,UAAU,EAAC,WAAW,EAAC,CAAC;4BAAA,CAAC;wBAC5T,CAAC;oBACH,CAAC;yBAAK,IAAG,OAAO,CAAC,SAAS,KAAG,WAAW,EAAC,CAAC;wBACxC,MAAM,CAAC,GAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAyB,CAAC;wBAAA,IAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAG,aAAa,IAAE,CAAC,SAAS,IAAE,oBAAoB,KAAG,IAAI;4BAAC,MAAM,KAAK,CAAC,yCAAyC,CAAC,CAAC;wBACnM,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;wBAAA,IAAG,QAAQ,EAAE,EAAE,cAAc,KAAG,cAAc;4BAAC,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;wBAAA,IAAG,CAAC,CAAC,WAAW,KAAG,UAAU,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;4BAAC,MAAM,KAAK,CAAC,oCAAoC,CAAC,CAAC;wBAAA,wBAAwB,GAAC,IAAI,CAAC;wBAAA,MAAM,GAAC,EAAC,KAAK,EAAC,gCAAgC,EAAC,WAAW,EAAC,CAAC,CAAC,WAAW,EAAC,mBAAmB,EAAC,aAAa,EAAC,CAAC;oBAC5W,CAAC;yBAAK,IAAG,OAAO,CAAC,SAAS,KAAG,OAAO,EAAC,CAAC;wBACpC,SAAS,EAAE,KAAK,EAAE,CAAC;wBAAA,oBAAoB,GAAC,IAAI,CAAC;wBAAA,MAAM,CAAC,EAAC,IAAI,EAAC,OAAO,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,MAAM,EAAC,IAAI,EAAC,QAAQ,EAAC,OAAO,CAAC,OAAO,EAAC,CAAC,CAAC;wBAAA,MAAM,GAAC,EAAC,KAAK,EAAC,UAAU,EAAC,CAAC;oBACjK,CAAC;yBAAK,IAAG,OAAO,CAAC,SAAS,KAAG,SAAS,EAAC,CAAC;wBACtC,IAAG,CAAC,SAAS,IAAE,oBAAoB,KAAG,IAAI,IAAE,OAAO,OAAO,CAAC,OAAO,KAAG,QAAQ;4BAAC,MAAM,KAAK,CAAC,oCAAoC,CAAC,CAAC;wBAAA,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;wBAAA,IAAG,QAAQ,EAAE,EAAE,cAAc,KAAG,cAAc;4BAAC,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;wBAAA,MAAM,GAAC,MAAM,aAAa,CAAC,SAAS,EAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wBAAA,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;wBAAA,IAAG,MAAM,KAAG,SAAS,IAAE,MAAM,KAAG,kBAAkB;4BAAC,MAAM,KAAK,CAAC,wCAAwC,CAAC,CAAC;oBAClc,CAAC;yBAAI,CAAC;wBACJ,SAAS,EAAE,KAAK,EAAE,CAAC;wBAAA,oBAAoB,GAAC,IAAI,CAAC;wBAC7C,IAAG,OAAO,CAAC,SAAS,KAAG,UAAU,IAAE,OAAO,CAAC,SAAS,KAAG,oBAAoB,EAAC,CAAC;4BAC3E,MAAM,MAAM,GAAC,eAAe,CAAC,OAAO,CAAC,OAA0B,CAAC,CAAC;4BAAA,IAAG,MAAM,CAAC,MAAM,KAAG,kBAAkB;gCAAC,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAC;4BACjL,MAAM,IAAI,GAAC,MAAM,CAAC,QAAQ,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAC,YAAY,GAAC,QAAQ,IAAE,CAAC,gBAAgB,EAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,oBAAoB,CAAC,QAAQ,EAAC,uBAAuB,CAAC,CAAA,CAAC,CAAA,SAAS,CAAC;4BAC7L,IAAG,OAAO,CAAC,SAAS,KAAG,oBAAoB,IAAE,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,OAAO,CAAC,SAAS,KAAG,MAAM,CAAC,SAAS,CAAC,EAAE,MAAM,KAAG,qBAAqB,CAAC,MAAM,CAAC;gCAAC,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;4BACnO,MAAM,GAAC,OAAO,CAAC,SAAS,KAAG,UAAU,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;4BACxG,MAAM,QAAQ,GAAC,MAA0D,EAAC,MAAM,GAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,OAAO,CAAC,SAAS,KAAG,MAAM,CAAC,SAAS,CAAC,CAAC;4BAClJ,IAAG,CAAC,MAAM;gCAAC,MAAM,KAAK,CAAC,yDAAyD,CAAC,CAAC;4BAClF,sGAAsG;4BACtG,IAAG,YAAY,IAAE,CAAC,MAAM,CAAC,MAAM,KAAG,iBAAiB,IAAE,MAAM,CAAC,QAAQ,KAAG,UAAU,IAAE,MAAM,CAAC,WAAW,KAAG,SAAS,IAAE,MAAM,CAAC,WAAW,KAAG,aAAa,IAAE,QAAQ,CAAC,SAAS,KAAG,SAAS,CAAC;gCAAC,eAAe,GAAC,YAAY,CAAC,OAAO,CAAC;wBAC9N,CAAC;6BAAK,IAAG,OAAO,CAAC,SAAS,KAAG,QAAQ,IAAE,OAAO,CAAC,SAAS,KAAG,kBAAkB,EAAC,CAAC;4BAC7E,MAAM,MAAM,GAAC,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,OAAwB,CAAC,CAAkB,EAAC,IAAI,GAAC,MAAM,CAAC,cAAc,CAAC,CAAE,CAAC,QAAQ,CAAC,EAAC,MAAM,GAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;4BACnK,IAAG,CAAC,CAAC,cAAc,IAAE,CAAC,QAAQ;gCAAC,MAAM,KAAK,CAAC,qDAAqD,CAAC,CAAC;4BAClG,IAAG,CAAC,QAAQ,EAAC,CAAC;gCAAA,MAAM,GAAC,OAAO,CAAC,SAAS,KAAG,QAAQ,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gCAAA,MAAM,QAAQ,GAAC,MAAgG,EAAC,OAAO,GAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,SAAS,KAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gCAAA,IAAG,OAAO,EAAE,WAAW,KAAG,SAAS;oCAAC,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;4BAAA,CAAC;iCAClX,CAAC;gCACN,MAAM,OAAO,GAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,yBAAyB,IAAE,CAAC,CAAC,KAAK,CAAC,eAAe,KAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gCACxH,IAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,MAAM,KAAG,MAAM,CAAC;oCAAC,MAAM,KAAK,CAAC,sCAAsC,CAAC,CAAC;gCAChG,IAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAA,EAAE,GAAC,MAAM,QAAQ,GAAC,GAAG,CAAC,KAAK,CAAC,OAAyC,CAAC,CAAA,OAAO,GAAG,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAG,CAAC,CAAC,KAAK,CAAC,aAAa,IAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAG,UAAU,IAAE,QAAQ,IAAE,CAAC,QAAQ,EAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAE,mBAAmB,CAAC,QAAQ,CAAC,OAAwB,CAAC,KAAG,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC;oCAAC,MAAM,KAAK,CAAC,oCAAoC,CAAC,CAAC;gCACvZ,MAAM,MAAM,GAAC,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,SAAS,KAAG,MAAM,CAAC,SAAS,CAAC,CAAC;gCACpF,IAAG,OAAO,CAAC,SAAS,KAAG,kBAAkB,IAAE,CAAC,MAAM,IAAE,CAAC,OAAO,CAAC,MAAM;oCAAC,MAAM,KAAK,CAAC,qDAAqD,CAAC,CAAC;gCACvI,IAAG,QAAQ,IAAE,CAAC,CAAE,CAAC,QAAQ,EAAE,eAAe,KAAG,MAAM,CAAC,OAAO,CAAC,eAAe,IAAE,CAAC,CAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;oCAAC,MAAM,KAAK,CAAC,mEAAmE,CAAC,CAAC;gCAC5M,MAAM,IAAI,GAAC,QAAQ,CAAA,CAAC,CAAA,oBAAoB,CAAC,QAAQ,EAAC,UAAU,CAAC,EAAC,UAAU,EAAC,MAAM,EAAC,CAAC,CAAC,CAAA,CAAC,CAAA,SAAS,CAAC;gCAC7F,IAAG,IAAI,IAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAC,CAAC;oCACtB,IAAG,CAAC,OAAO,CAAC,MAAM;wCAAC,MAAM,CAAC,EAAC,IAAI,EAAC,yBAAyB,EAAC,eAAe,EAAC,MAAM,CAAC,SAAS,EAAC,MAAM,EAAC,aAAa,EAAC,OAAO,CAAC,SAAS,EAAC,CAAC,CAAC;oCACpI,MAAM,GAAC,EAAC,KAAK,EAAC,2BAA2B,EAAC,eAAe,EAAC,MAAM,CAAC,SAAS,EAAC,WAAW,EAAC,kBAAkB,EAAC,CAAC;gCAC7G,CAAC;qCAAI,CAAC;oCACJ,MAAM,GAAC,CAAC,OAAO,CAAC,SAAS,KAAG,QAAQ,IAAE,OAAO,CAAC,MAAM,GAAC,CAAC,IAAE,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA,CAAC,CAAA,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oCACzH,MAAM,QAAQ,GAAC,MAAgG,EAAC,OAAO,GAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,SAAS,KAAG,MAAM,CAAC,SAAS,CAAC,CAAC;oCACjL,IAAG,IAAI,IAAE,CAAC,OAAO;wCAAC,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAC;oCACvF,IAAG,OAAO,EAAE,WAAW,KAAG,SAAS;wCAAC,MAAM,OAAO,CAAC,kBAAkB,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oCAC3F,IAAG,IAAI,IAAE,CAAC,SAAS,EAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,OAAQ,CAAC,WAAW,CAAC;wCAAC,eAAe,GAAC,IAAI,CAAC,OAAO,CAAC;gCACjG,CAAC;4BACD,CAAC;wBACH,CAAC;6BAAK,IAAG,OAAO,CAAC,SAAS,KAAG,iBAAiB,EAAC,CAAC;4BAC9C,IAAG,CAAC,QAAQ,IAAE,CAAC,kBAAkB,CAAC,QAAQ,CAAC;gCAAC,MAAM,KAAK,CAAC,0DAA0D,CAAC,CAAC;4BACpH,MAAM,GAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,OAA+B,EAAC,CAAE,CAAC,QAAQ,IAAE,IAAI,CAAC,CAAC;wBACpF,CAAC;6BAAK,IAAG,OAAO,CAAC,SAAS,KAAG,QAAQ,EAAC,CAAC;4BACrC,MAAM,CAAC,GAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAmE,CAAC;4BAAA,YAAY,CAAC,CAAC,EAAC,CAAC,UAAU,EAAC,cAAc,CAAC,CAAC,CAAC;4BAAA,MAAM,MAAM,GAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;4BACzL,MAAM,OAAO,GAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;4BACpD,IAAG,CAAC,UAAU,IAAE,CAAC,sBAAsB,CAAC,UAAU,CAAC,IAAE,MAAM,CAAC,MAAM,KAAG,kBAAkB,IAAE,MAAM,CAAC,aAAa,KAAG,CAAC,CAAC,YAAY,IAAE,MAAM,CAAC,gBAAgB,KAAG,OAAO,CAAC,QAAQ,IAAE,MAAM,CAAC,iBAAiB,KAAG,CAAC,CAAC,YAAY,CAAC,WAAW,IAAE,MAAM,CAAC,SAAS,KAAG,CAAC,CAAC,YAAY,CAAC,SAAS;gCAAC,MAAM,KAAK,CAAC,sDAAsD,CAAC,CAAC;4BACnV,IAAG,CAAE,CAAC,QAAQ,EAAE,eAAe,KAAG,MAAM,CAAC,OAAO,CAAC,eAAe,IAAE,CAAC,CAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;gCAAC,MAAM,KAAK,CAAC,oDAAoD,CAAC,CAAC;4BACxM,MAAM,GAAC,MAAM,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,EAAC,CAAE,CAAC,UAAU,CAAC,CAAC;wBAC/D,CAAC;;4BAAK,MAAM,KAAK,CAAC,iCAAiC,CAAC,CAAC;oBACvD,CAAC;gBACH,CAAC;gBAAA,OAAM,KAAK,EAAC,CAAC;oBAAA,SAAS,EAAE,KAAK,EAAE,CAAC;oBAAA,oBAAoB,GAAC,IAAI,CAAC;oBAAA,MAAM,CAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,KAAK,EAAC,mBAAmB,EAAC,MAAM,EAAC,MAAM,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC;oBAAA,MAAM,KAAK,CAAC;gBAAA,CAAC;gBAC3K,IAAG,CAAC,UAAU,EAAC,oBAAoB,EAAC,QAAQ,EAAC,kBAAkB,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,IAAE,MAAM,IAAE,OAAO,MAAM,KAAG,QAAQ,EAAC,CAAC;oBAC9H,MAAM,QAAQ,GAAC,MAA0F,EAAC,QAAQ,GAAE,OAAO,CAAC,OAA8B,CAAC,SAAS,CAAC;oBACrK,MAAM,OAAO,GAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,CAAC,SAAS,IAAE,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,KAAG,QAAQ,CAAC,CAAC;oBACxF,IAAG,OAAO,EAAE,WAAW;wBAAC,MAAM,GAAC,EAAC,GAAG,MAAM,EAAC,WAAW,EAAC,OAAO,CAAC,WAAW,EAAC,eAAe,EAAC,QAAQ,EAAC,CAAC;gBACtG,CAAC;gBACD,MAAM,CAAC,EAAC,IAAI,EAAC,QAAQ,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,KAAK,EAAC,cAAc,EAAC,YAAY,EAAC,UAAU,CAAC,MAAM,IAAE,IAAI,CAAC,EAAC,CAAC,CAAC;gBAAA,eAAe,EAAE,EAAE,CAAC;gBAAA,OAAO,EAAC,KAAK,EAAC,cAAc,EAAC,MAAM,EAAC,CAAC;YAC1K,CAAC;YAAA,OAAM,KAAK,EAAC,CAAC;gBAAA,IAAG,SAAS,EAAC,CAAC;oBAAA,QAAQ,GAAC,IAAI,CAAC;oBAAA,IAAG,CAAC;wBAAA,IAAG,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC,CAAA,EAAE,CAAA,CAAC,CAAC,KAAK,CAAC,IAAI,KAAG,OAAO,IAAE,CAAC,CAAC,KAAK,CAAC,SAAS,KAAG,OAAO,CAAC,SAAS,CAAC;4BAAC,MAAM,CAAC,EAAC,IAAI,EAAC,cAAc,EAAC,SAAS,EAAC,OAAO,CAAC,SAAS,EAAC,MAAM,EAAC,MAAM,CAAC,KAAK,CAAC,EAAC,CAAC,CAAC;oBAAA,CAAC;oBAAA,MAAK,CAAC,CAAA,oEAAoE,CAAA,CAAC;gBAAA,CAAC;gBAAA,MAAM,KAAK,CAAC;YAAA,CAAC;oBAAO,CAAC;gBAAA,IAAI,GAAC,KAAK,CAAC;YAAA,CAAC;QACjU,CAAC;KACF,CAAC;IAAA,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAAA,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AAC7C,CAAC"}
@@ -0,0 +1,16 @@
1
+ import type { PanelAction } from "./daily-panel.ts";
2
+ /** Numbers never acquire another meaning during repaint, including after a new journal tip. */
3
+ export declare function createDashboardMenu(): {
4
+ show(tip: string, actions: readonly PanelAction[]): {
5
+ choice: string;
6
+ label: string;
7
+ }[];
8
+ select(choice: string): {
9
+ key: string;
10
+ tip: string;
11
+ requestDigest: string;
12
+ label: string;
13
+ };
14
+ clear(): void;
15
+ };
16
+ //# sourceMappingURL=dashboard-menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard-menu.d.ts","sourceRoot":"","sources":["../src/dashboard-menu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,+FAA+F;AAC/F,wBAAgB,mBAAmB;cAKrB,MAAM,WAAW,SAAS,WAAW,EAAE;;;;mBAclC,MAAM;aAjBgB,MAAM;aAAO,MAAM;uBAAiB,MAAM;eAAS,MAAM;;;EAuBjG"}
@@ -0,0 +1,33 @@
1
+ /** Numbers never acquire another meaning during repaint, including after a new journal tip. */
2
+ export function createDashboardMenu() {
3
+ const ids = new Map();
4
+ const choices = new Map();
5
+ let current = new Set();
6
+ return {
7
+ show(tip, actions) {
8
+ current = new Set();
9
+ return actions.map(action => {
10
+ if (!action.requestDigest)
11
+ return { choice: action.key, label: action.label };
12
+ const identity = JSON.stringify([tip, action.key, action.requestDigest, action.label]);
13
+ let choice = ids.get(identity);
14
+ if (!choice) {
15
+ if (ids.size >= 32768)
16
+ throw Error("Action menu capacity reached; reopen the panel. No choice was remapped.");
17
+ choice = String(ids.size + 1);
18
+ ids.set(identity, choice);
19
+ choices.set(choice, { key: action.key, tip, requestDigest: action.requestDigest, label: action.label });
20
+ }
21
+ current.add(choice);
22
+ return { choice, label: action.label };
23
+ });
24
+ },
25
+ select(choice) {
26
+ if (!current.has(choice))
27
+ throw Error("That action is no longer displayed; select a current number.");
28
+ return choices.get(choice);
29
+ },
30
+ clear() { current.clear(); },
31
+ };
32
+ }
33
+ //# sourceMappingURL=dashboard-menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dashboard-menu.js","sourceRoot":"","sources":["../src/dashboard-menu.ts"],"names":[],"mappings":"AACA,+FAA+F;AAC/F,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAAG,IAAI,GAAG,EAAkB,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA8E,CAAC;IACtG,IAAI,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,OAAO;QACL,IAAI,CAAC,GAAW,EAAE,OAA+B;YAC/C,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;YACpB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBAC1B,IAAI,CAAC,MAAM,CAAC,aAAa;oBAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvF,IAAI,MAAM,GAAG,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC/B,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK;wBAAE,MAAM,KAAK,CAAC,yEAAyE,CAAC,CAAC;oBAC9G,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;oBAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;oBACzD,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC1G,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;YAC9D,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,CAAC,MAAc;YACnB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC;gBAAE,MAAM,KAAK,CAAC,8DAA8D,CAAC,CAAC;YACtG,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QAC9B,CAAC;QACD,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;KAC7B,CAAC;AACJ,CAAC"}
@@ -88,14 +88,9 @@ export declare function parseSkillDefinition(source: string, text: string): Skil
88
88
  */
89
89
  export declare function ceilingForDefinition(definition: SkillDefinition): DefinitionCeiling;
90
90
  /**
91
- * Discover `SKILL.md` definitions under pi's skill roots.
92
- *
93
- * Deliberately the SAME roots and the same convention the catalog uses (`skillDirs`): a directory
94
- * containing `SKILL.md` is one definition named after the directory, and a top-level `.md` is one named
95
- * after the file. If discovery and the catalog disagreed, a definition could be spawnable but not
96
- * grantable, or listed but unspawnable.
97
- *
98
- * Earlier directories win on a name collision, matching pi's own precedence — project before global.
91
+ * Read definitions from Pi's enabled resources, including installed packages and local overrides.
92
+ * Resolver precedence and filters are shared with the capability catalog; unregistered npm packages
93
+ * are not runtime resources until legacy init explicitly scaffolds them.
99
94
  */
100
95
  export declare function loadDefinitions(cwd: string): Promise<Map<string, SkillDefinition>>;
101
96
  //# sourceMappingURL=definitions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAOH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,eAAe,GAAG,gBAAgB,CAM9E;AAED,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,oGAAoG;IACpG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B;;;;;;;;OAQG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oFAAoF;IACpF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAyDzF;AAUD;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,eAAe,GAAG,iBAAiB,CA2BnF;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CA4BxF"}
1
+ {"version":3,"file":"definitions.d.ts","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAMH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,eAAe,GAAG,gBAAgB,CAM9E;AAED,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,oGAAoG;IACpG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,oEAAoE;IACpE,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,wDAAwD;IACxD,YAAY,EAAE,UAAU,EAAE,CAAC;IAC3B;;;;;;;;OAQG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,oFAAoF;IACpF,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CA8DzF;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,eAAe,GAAG,iBAAiB,CA2BnF;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CASxF"}
@@ -19,9 +19,8 @@
19
19
  * form now costs a refusal instead of a grant.
20
20
  */
21
21
  import { createHash } from "node:crypto";
22
- import { readFile, readdir } from "node:fs/promises";
23
- import { join } from "node:path";
24
- import { skillDirs } from "./catalog.js";
22
+ import { readFile } from "node:fs/promises";
23
+ import { resolveSkillResources, skillResourceName } from "./skill-resources.js";
25
24
  import { CAPABILITY_NAMESPACE_PREFIXES } from "./capabilities.js";
26
25
  /**
27
26
  * Digest a definition's body.
@@ -83,6 +82,12 @@ export function parseSkillDefinition(source, text) {
83
82
  }
84
83
  continue;
85
84
  }
85
+ // A YAML collection/block we cannot parse is not an explicit empty ceiling.
86
+ if (key === "allowed-tools" && value === "") {
87
+ const nextValue = lines.slice(i + 1).find(line => line.trim() !== "" && !/^\s*#/.test(line));
88
+ if (/^\s+\S/.test(nextValue ?? ""))
89
+ continue;
90
+ }
86
91
  fields.set(key, value);
87
92
  }
88
93
  const description = fields.get("description");
@@ -93,7 +98,7 @@ export function parseSkillDefinition(source, text) {
93
98
  // skills by their directory, so trusting a frontmatter `name` lets our view and the loader's
94
99
  // disagree about which file a name refers to. The spec requires `name` to match the parent
95
100
  // directory anyway, so a mismatch is the file's defect and not something to honour.
96
- name: nameFromPath(source),
101
+ name: skillResourceName(source),
97
102
  description,
98
103
  allowedTools: fields.get("allowed-tools"),
99
104
  metadata: Object.keys(metadata).length > 0 ? metadata : undefined,
@@ -101,14 +106,6 @@ export function parseSkillDefinition(source, text) {
101
106
  source,
102
107
  };
103
108
  }
104
- /** `/skills/review/SKILL.md` -> `review`; `/skills/triage.md` -> `triage`. */
105
- function nameFromPath(source) {
106
- const parts = source.split("/").filter((p) => p.length > 0);
107
- const last = parts.at(-1) ?? "";
108
- if (last.toLowerCase() === "skill.md")
109
- return parts.at(-2) ?? "";
110
- return last.replace(/\.md$/i, "");
111
- }
112
109
  /**
113
110
  * Turn a definition's `allowed-tools` into a capability ceiling.
114
111
  *
@@ -144,44 +141,23 @@ export function ceilingForDefinition(definition) {
144
141
  return { capabilities: [...capabilities].sort(), patterns, undeclared: false };
145
142
  }
146
143
  /**
147
- * Discover `SKILL.md` definitions under pi's skill roots.
148
- *
149
- * Deliberately the SAME roots and the same convention the catalog uses (`skillDirs`): a directory
150
- * containing `SKILL.md` is one definition named after the directory, and a top-level `.md` is one named
151
- * after the file. If discovery and the catalog disagreed, a definition could be spawnable but not
152
- * grantable, or listed but unspawnable.
153
- *
154
- * Earlier directories win on a name collision, matching pi's own precedence — project before global.
144
+ * Read definitions from Pi's enabled resources, including installed packages and local overrides.
145
+ * Resolver precedence and filters are shared with the capability catalog; unregistered npm packages
146
+ * are not runtime resources until legacy init explicitly scaffolds them.
155
147
  */
156
148
  export async function loadDefinitions(cwd) {
157
149
  const definitions = new Map();
158
- for (const dir of skillDirs(cwd)) {
159
- let names;
150
+ for (const { path } of (await resolveSkillResources(cwd)).skills) {
151
+ let text;
160
152
  try {
161
- names = await readdir(dir);
153
+ text = await readFile(path, "utf8");
162
154
  }
163
155
  catch {
164
- continue; // an absent skill root is normal
165
- }
166
- for (const name of [...names].sort()) {
167
- // A directory holding SKILL.md, or a top-level .md — try the former first, exactly as the
168
- // catalog does, so the two cannot disagree about what exists.
169
- const candidates = [join(dir, name, "SKILL.md"), ...(name.endsWith(".md") ? [join(dir, name)] : [])];
170
- for (const path of candidates) {
171
- let text;
172
- try {
173
- text = await readFile(path, "utf8");
174
- }
175
- catch {
176
- continue; // not this shape; try the next candidate
177
- }
178
- const parsed = parseSkillDefinition(path, text);
179
- // First writer wins, so project definitions shadow global ones rather than the reverse.
180
- if (parsed && !definitions.has(parsed.name))
181
- definitions.set(parsed.name, parsed);
182
- break;
183
- }
156
+ continue;
184
157
  }
158
+ const parsed = parseSkillDefinition(path, text);
159
+ if (parsed && !definitions.has(parsed.name))
160
+ definitions.set(parsed.name, parsed);
185
161
  }
186
162
  return definitions;
187
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../src/definitions.ts"],"names":[],"mappings":"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"}