@cello-protocol/daemon 0.0.193 → 0.0.195

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 (114) hide show
  1. package/dist/assignment-verify.d.ts +39 -11
  2. package/dist/assignment-verify.d.ts.map +1 -1
  3. package/dist/assignment-verify.js +133 -17
  4. package/dist/assignment-verify.js.map +1 -1
  5. package/dist/authorship-verification.d.ts +70 -0
  6. package/dist/authorship-verification.d.ts.map +1 -0
  7. package/dist/authorship-verification.js +441 -0
  8. package/dist/authorship-verification.js.map +1 -0
  9. package/dist/daemon.js +4 -1
  10. package/dist/daemon.js.map +1 -1
  11. package/dist/db-identity-store.d.ts +1 -0
  12. package/dist/db-identity-store.d.ts.map +1 -1
  13. package/dist/db-identity-store.js +19 -1
  14. package/dist/db-identity-store.js.map +1 -1
  15. package/dist/held-content.d.ts +141 -0
  16. package/dist/held-content.d.ts.map +1 -0
  17. package/dist/held-content.js +388 -0
  18. package/dist/held-content.js.map +1 -0
  19. package/dist/inbound-refusals.d.ts +283 -0
  20. package/dist/inbound-refusals.d.ts.map +1 -0
  21. package/dist/inbound-refusals.js +919 -0
  22. package/dist/inbound-refusals.js.map +1 -0
  23. package/dist/inbound-sessions.d.ts +1 -1
  24. package/dist/inbound-sessions.d.ts.map +1 -1
  25. package/dist/inbound-sessions.js +189 -32
  26. package/dist/inbound-sessions.js.map +1 -1
  27. package/dist/initiate-session-handler.d.ts.map +1 -1
  28. package/dist/initiate-session-handler.js +82 -0
  29. package/dist/initiate-session-handler.js.map +1 -1
  30. package/dist/outbound-sessions.d.ts.map +1 -1
  31. package/dist/outbound-sessions.js +108 -8
  32. package/dist/outbound-sessions.js.map +1 -1
  33. package/dist/park-recovery.d.ts +205 -0
  34. package/dist/park-recovery.d.ts.map +1 -0
  35. package/dist/park-recovery.js +600 -0
  36. package/dist/park-recovery.js.map +1 -0
  37. package/dist/refusal-notices.d.ts +196 -0
  38. package/dist/refusal-notices.d.ts.map +1 -0
  39. package/dist/refusal-notices.js +496 -0
  40. package/dist/refusal-notices.js.map +1 -0
  41. package/dist/refusal-reasons.d.ts +34 -0
  42. package/dist/refusal-reasons.d.ts.map +1 -1
  43. package/dist/refusal-reasons.js +84 -0
  44. package/dist/refusal-reasons.js.map +1 -1
  45. package/dist/registration-manager.d.ts.map +1 -1
  46. package/dist/registration-manager.js +126 -5
  47. package/dist/registration-manager.js.map +1 -1
  48. package/dist/registration-persistence.d.ts +18 -0
  49. package/dist/registration-persistence.d.ts.map +1 -1
  50. package/dist/registration-persistence.js +6 -0
  51. package/dist/registration-persistence.js.map +1 -1
  52. package/dist/session-assignment-parser.d.ts.map +1 -1
  53. package/dist/session-assignment-parser.js +23 -1
  54. package/dist/session-assignment-parser.js.map +1 -1
  55. package/dist/session-ceremony.d.ts +12 -7
  56. package/dist/session-ceremony.d.ts.map +1 -1
  57. package/dist/session-ceremony.js +12 -7
  58. package/dist/session-ceremony.js.map +1 -1
  59. package/dist/session-ephemerals.d.ts +271 -0
  60. package/dist/session-ephemerals.d.ts.map +1 -0
  61. package/dist/session-ephemerals.js +546 -0
  62. package/dist/session-ephemerals.js.map +1 -0
  63. package/dist/session-leaf-records.d.ts +132 -0
  64. package/dist/session-leaf-records.d.ts.map +1 -0
  65. package/dist/session-leaf-records.js +320 -0
  66. package/dist/session-leaf-records.js.map +1 -0
  67. package/dist/session-liveness.d.ts +135 -0
  68. package/dist/session-liveness.d.ts.map +1 -0
  69. package/dist/session-liveness.js +347 -0
  70. package/dist/session-liveness.js.map +1 -0
  71. package/dist/session-node-manager.d.ts +293 -1652
  72. package/dist/session-node-manager.d.ts.map +1 -1
  73. package/dist/session-node-manager.js +1039 -9659
  74. package/dist/session-node-manager.js.map +1 -1
  75. package/dist/session-node-types.d.ts +933 -0
  76. package/dist/session-node-types.d.ts.map +1 -0
  77. package/dist/session-node-types.js +576 -0
  78. package/dist/session-node-types.js.map +1 -0
  79. package/dist/session-own-chain-store.d.ts +65 -0
  80. package/dist/session-own-chain-store.d.ts.map +1 -0
  81. package/dist/session-own-chain-store.js +75 -0
  82. package/dist/session-own-chain-store.js.map +1 -0
  83. package/dist/session-queries.d.ts +476 -0
  84. package/dist/session-queries.d.ts.map +1 -0
  85. package/dist/session-queries.js +1006 -0
  86. package/dist/session-queries.js.map +1 -0
  87. package/dist/session-records.d.ts +320 -0
  88. package/dist/session-records.d.ts.map +1 -0
  89. package/dist/session-records.js +792 -0
  90. package/dist/session-records.js.map +1 -0
  91. package/dist/session-relay-client.d.ts +35 -3
  92. package/dist/session-relay-client.d.ts.map +1 -1
  93. package/dist/session-relay-client.js +211 -30
  94. package/dist/session-relay-client.js.map +1 -1
  95. package/dist/session-salts.d.ts +390 -0
  96. package/dist/session-salts.d.ts.map +1 -0
  97. package/dist/session-salts.js +1457 -0
  98. package/dist/session-salts.js.map +1 -0
  99. package/dist/session-schema.d.ts +30 -0
  100. package/dist/session-schema.d.ts.map +1 -0
  101. package/dist/session-schema.js +786 -0
  102. package/dist/session-schema.js.map +1 -0
  103. package/dist/standing-receivers.d.ts +280 -0
  104. package/dist/standing-receivers.d.ts.map +1 -0
  105. package/dist/standing-receivers.js +1100 -0
  106. package/dist/standing-receivers.js.map +1 -0
  107. package/dist/transport-selector.d.ts +13 -0
  108. package/dist/transport-selector.d.ts.map +1 -1
  109. package/dist/transport-selector.js.map +1 -1
  110. package/dist/witness-alerts.d.ts +40 -0
  111. package/dist/witness-alerts.d.ts.map +1 -0
  112. package/dist/witness-alerts.js +102 -0
  113. package/dist/witness-alerts.js.map +1 -0
  114. package/package.json +5 -5
@@ -111,6 +111,7 @@ export declare class DbRegistrationPersistence implements DaemonRegistrationPers
111
111
  primaryPubkey: string;
112
112
  mlDsaPubkey: string;
113
113
  registeredAt: number;
114
+ keyBinding: string;
114
115
  }): Promise<void>;
115
116
  persistFrostKeyShare(opts: {
116
117
  epochId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"db-identity-store.d.ts","sourceRoot":"","sources":["../src/db-identity-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-identity-store.d.ts","sourceRoot":"","sources":["../src/db-identity-store.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,10 @@ const CREATE_AGENTS_SQL = `
57
57
  reg_ml_dsa_pubkey TEXT,
58
58
  reg_registered_at INTEGER,
59
59
  reg_status TEXT,
60
+ -- 038-KEYBIND: hex 64-byte Ed25519 signature by k_local_seed's public half over
61
+ -- (k_local_pubkey, reg_primary_pubkey). Minted once at the tail of registration — the only
62
+ -- moment both keys are on this machine together — and never re-derived by a second DKG.
63
+ reg_key_binding TEXT,
60
64
  -- agent↔user link captured at registration.
61
65
  link_agent_id TEXT,
62
66
  link_pre_auth_token TEXT,
@@ -150,6 +154,16 @@ export function ensureIdentitySchema(db) {
150
154
  // Outbound-name override. Nullable → existing agents keep the agent-name default.
151
155
  db.exec("ALTER TABLE agents ADD COLUMN moniker TEXT");
152
156
  }
157
+ if (!cols.some((c) => c.name === "reg_key_binding")) {
158
+ // 038-KEYBIND. Nullable, because an operator's existing row cannot grow a signature by a
159
+ // migration — the value is minted by the daemon holding the seed, on the next registration.
160
+ //
161
+ // A null here has no local consequence and nothing detects it: this column is written and
162
+ // read by nothing yet (see `RegistrationStateRecord.keyBinding`). What makes a pre-038 agent
163
+ // unusable is the DIRECTORY-side profile having no binding, which both clients refuse an
164
+ // assignment over — and the remedy for that is the same re-registration that fills this in.
165
+ db.exec("ALTER TABLE agents ADD COLUMN reg_key_binding TEXT");
166
+ }
153
167
  }
154
168
  db.exec(CREATE_ACTIVE_NAME_INDEX_SQL);
155
169
  // M10-D18: DROP the M8 `trust_signals` scaffold. It held canonical-JSON records keyed by a RAW hash;
@@ -335,7 +349,7 @@ export class DbRegistrationPersistence {
335
349
  this.#logger.info("registration.mldsa.persisted", { mlDsaPubkey: opts.mlDsaPubkey });
336
350
  }
337
351
  async persistRegistrationState(opts) {
338
- this.#updateRow("reg_agent_id = ?, reg_primary_pubkey = ?, reg_ml_dsa_pubkey = ?, reg_registered_at = ?, reg_status = 'active', state = 'registered'", [opts.agentId, opts.primaryPubkey, opts.mlDsaPubkey, opts.registeredAt]);
352
+ this.#updateRow("reg_agent_id = ?, reg_primary_pubkey = ?, reg_ml_dsa_pubkey = ?, reg_registered_at = ?, reg_key_binding = ?, reg_status = 'active', state = 'registered'", [opts.agentId, opts.primaryPubkey, opts.mlDsaPubkey, opts.registeredAt, opts.keyBinding]);
339
353
  this.#logger.info("registration.state.persisted", {
340
354
  agentId: opts.agentId,
341
355
  primaryPubkey: opts.primaryPubkey,
@@ -388,6 +402,10 @@ export class DbRegistrationPersistence {
388
402
  mlDsaPubkey: String(r["reg_ml_dsa_pubkey"]),
389
403
  registeredAt: Number(r["reg_registered_at"]),
390
404
  status: String(r["reg_status"]),
405
+ // 038-KEYBIND: null for a row written before this column existed. `String(null)` would hand
406
+ // callers the four characters "null" as if they were a signature, which is why this is a
407
+ // typeof check and not the String() every field above uses.
408
+ keyBinding: typeof r["reg_key_binding"] === "string" ? r["reg_key_binding"] : null,
391
409
  };
392
410
  }
393
411
  async loadMlDsaKeypair() {
@@ -1 +1 @@
1
- {"version":3,"file":"db-identity-store.js","sourceRoot":"","sources":["../src/db-identity-store.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"db-identity-store.js","sourceRoot":"","sources":["../src/db-identity-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,141 @@
1
+ /**
2
+ * CELLO Daemon — CONTENT WE HAVE BUT CANNOT SHOW YET
3
+ *
4
+ * Split out of `session-node-manager.ts` by 037-SESSIONCORE. A message that arrives out of order is
5
+ * verified and kept, not delivered: showing it would put the conversation in the wrong sequence, and
6
+ * dropping it would lose a message the sender believes landed. It is HELD until the gap ahead of it
7
+ * closes, then released down the path it came from.
8
+ *
9
+ * Moved verbatim, comments included.
10
+ *
11
+ * ⚠️ `origin` DECIDES THE RELEASE PATH, AND GETTING IT WRONG IS NOT COSMETIC. A held frame of OUR OWN
12
+ * must be released down the SENT path — appended and transcribed as sent. Releasing it down the
13
+ * received path would put our own words in the counterparty's mouth in the sealed record, and hand
14
+ * them back to our own agent through `cello_receive` as though they had just arrived.
15
+ */
16
+ import type { Logger } from "./types.js";
17
+ import type { DaemonDatabase } from "./sqlcipher-db.js";
18
+ import type { SessionQueries } from "./session-queries.js";
19
+ import type { SessionRecords } from "./session-records.js";
20
+ import type { SessionTree, WritableSessionTreeLeafKind } from "./session-tree.js";
21
+ import type { SentAuthorship } from "./session-node-types.js";
22
+ /** One piece of content held behind an ordering gap. */
23
+ type HeldEntry = {
24
+ content: Uint8Array;
25
+ originalContent?: Uint8Array;
26
+ contentHashHex: string;
27
+ correlationId?: string;
28
+ screenedOut?: boolean;
29
+ origin?: "sent";
30
+ kind?: WritableSessionTreeLeafKind;
31
+ authorship?: SentAuthorship;
32
+ restoredAcrossRestart?: boolean;
33
+ };
34
+ /** What held content needs from the manager. */
35
+ export interface HeldContentContext {
36
+ readonly logger: Logger;
37
+ readonly queries: SessionQueries;
38
+ readonly records: SessionRecords;
39
+ /** A function: the manager opens its database after construction. Re-exposed below as `#db`. */
40
+ db(): DaemonDatabase | null;
41
+ sessionKey(agentName: string, sessionId: string): string;
42
+ requireAgentId(agentName: string): string;
43
+ /**
44
+ * ⚠️ THE HELD MAP ITSELF, shared by reference rather than owned here — `ingestReceivedContent`,
45
+ * `placeOwnLeaf`, `sealReadiness` and `getUndeliverableSeqs` all read it and all stayed behind.
46
+ * Splitting the map would have meant two sources of truth for "what are we holding", which is
47
+ * worse than sharing one. It is only ever ASSIGNED once, at construction, so there is one Map
48
+ * object and no two-writer divergence.
49
+ */
50
+ readonly heldContent: Map<string, Map<number, HeldEntry>>;
51
+ readonly witnessedSeq: Map<string, Map<string, number>>;
52
+ getSessionTree(agentName: string, sessionId: string): SessionTree;
53
+ appendSessionLeaf(agentName: string, sessionId: string, kind: WritableSessionTreeLeafKind, leafHashHex: string, correlationId?: string): {
54
+ leafIndex: number;
55
+ newRootHex: string;
56
+ };
57
+ appendVerifiedContent(agentName: string, sessionId: string, content: Uint8Array, contentHashHex: string, senderPubkey: string, correlationId?: string, originalContent?: Uint8Array, verifiedAuthorship?: {
58
+ senderPubkey: Uint8Array;
59
+ senderSig: Uint8Array;
60
+ }): {
61
+ leafIndex: number;
62
+ };
63
+ }
64
+ export declare class HeldContent {
65
+ #private;
66
+ constructor(ctx: HeldContentContext);
67
+ /** M8C-ABUSE-1 (reviewer HIGH fix, D18): bytes currently sitting in the out-of-order hold
68
+ * buffer for this session — NOT yet committed leaves, but real bytes in memory that would
69
+ * otherwise let multiple held chunks each individually pass the size gate while cumulatively
70
+ * exceeding it once #releaseHeld drains them. */
71
+ getHeldBytesTotal(agentName: string, sessionId: string): number;
72
+ /**
73
+ * DOD-M12B-STRAND-1 — restore this session's held frames into memory.
74
+ *
75
+ * Called when a session node is (re)created, which is the moment the session becomes able to
76
+ * append again. Loading at daemon boot instead would be wrong for the same reason the old code
77
+ * was wrong: a frame is only releasable against a tree, and the tree is loaded per session.
78
+ *
79
+ * A frame whose content the tree ALREADY HOLDS at that position is dropped — re-appending it
80
+ * would change the root a seal signs over. That test is `hashAt`, not `canonical_seq < frontier`:
81
+ * the two counters are different spaces and this file documents them drifting, so the index
82
+ * comparison alone would destroy a frame the tree never held. See the drift branch below.
83
+ */
84
+ ensureHeldRestored(agentName: string, sessionId: string, opts?: {
85
+ release?: boolean;
86
+ }): void;
87
+ restoreHeldContent(agentName: string, sessionId: string): void;
88
+ /**
89
+ * DOD-MSG-4: drain held out-of-order content in canonical order. After a leaf is appended, any
90
+ * held entry whose canonical sequence equals the new next-expected index is now in order — append
91
+ * it, then check again (a single fill can release a run of consecutive held messages).
92
+ */
93
+ releaseHeld(agentName: string, sessionId: string, senderPubkey: string): number;
94
+ /**
95
+ * Test seam: put an own leaf in the HELD state instead of the tree — 033-ACKEMIT.
96
+ *
97
+ * The state `placeOwnLeaf` produces when the relay assigns a position ahead of our tail: the leaf
98
+ * exists on this side and is not in the tree, while the counterparty already has it from the relay
99
+ * and can acknowledge it. Reproducing it through the real hold map rather than by asserting the
100
+ * tree is short is what makes the acknowledgement test measure the case instead of a neighbour of
101
+ * it.
102
+ */
103
+ holdOwnLeafForTest(agentName: string, sessionId: string, canonicalSeq: number, contentHashHex: string): void;
104
+ /**
105
+ * ⚠️ **ORPHANED COMMENT, OWNER UNKNOWN — do not attach it to the method below.** It reads
106
+ * *"@returns true iff the UPDATE was executed without error (a failed write is logged, never
107
+ * thrown)"*, and `annexHeldContentOnTerminal` returns `void` and runs no such UPDATE. It was
108
+ * already stranded in `session-node-manager.ts` before 037 moved this code, and Rule C carried it
109
+ * verbatim rather than dropping a sentence that is true of SOMETHING.
110
+ *
111
+ * Kept, marked, and NOT reattached: the nearest candidate by behaviour is
112
+ * `SessionQueries.markCounterpartyAbandoned`, which already has its own doc — so attaching it
113
+ * there on a guess is the same defect this marker exists to stop. Delete it only once its owner is
114
+ * identified, or reattach it then.
115
+ */
116
+ /**
117
+ * DOD-M12B-STRAND-1 — move a terminal session's held frames to the annex.
118
+ *
119
+ * A held frame is content this agent RECEIVED and VERIFIED. When its session ends it can never
120
+ * join that chain (appending behind a committed root is not an option, and ingest refuses a
121
+ * terminal session outright), but it is still the operator's mail and no other copy exists —
122
+ * the sender was never acknowledged for it. `sealed_session_annex` is where M12-P17 already puts
123
+ * content that arrives for an ended session; this is the same content arriving slightly earlier.
124
+ *
125
+ * ANNEX FIRST, DELETE SECOND, per row. A crash between them costs a duplicate the annex's
126
+ * INSERT OR IGNORE absorbs; the other order costs the message. A row whose annex write fails is
127
+ * KEPT — the retention sweep will find it again, and a leftover row is cheaper than a lost one.
128
+ */
129
+ annexHeldContentOnTerminal(agentName: string, sessionId: string, status: "sealed" | "abandoned"): void;
130
+ /**
131
+ * Forget the restore/release bookkeeping for a torn-down session.
132
+ *
133
+ * The held CONTENT itself is not dropped here — the map is shared and the manager's eviction still
134
+ * owns that line. What goes is this module's memory of whether a session was already hydrated from
135
+ * disk and already released, which must not survive a teardown: a revived session has to re-read
136
+ * from durable state rather than trust a flag about a process that is gone.
137
+ */
138
+ evictSession(agentName: string, sessionId: string): void;
139
+ }
140
+ export {};
141
+ //# sourceMappingURL=held-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"held-content.d.ts","sourceRoot":"","sources":["../src/held-content.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAE9D,wDAAwD;AACxD,KAAK,SAAS,GAAG;IACf,OAAO,EAAE,UAAU,CAAC;IAAC,eAAe,CAAC,EAAE,UAAU,CAAC;IAAC,cAAc,EAAE,MAAM,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,CAAC;IAClG,WAAW,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,2BAA2B,CAAC;IAAC,UAAU,CAAC,EAAE,cAAc,CAAC;IACxG,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAEF,gDAAgD;AAChD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,gGAAgG;IAChG,EAAE,IAAI,cAAc,GAAG,IAAI,CAAC;IAC5B,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IACzD,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1C;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;IAC1D,QAAQ,CAAC,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACxD,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,CAAC;IAClE,iBAAiB,CACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,2BAA2B,EACjC,WAAW,EAAE,MAAM,EACnB,aAAa,CAAC,EAAE,MAAM,GACrB;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,qBAAqB,CACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,MAAM,EACtB,YAAY,EAAE,MAAM,EACpB,aAAa,CAAC,EAAE,MAAM,EACtB,eAAe,CAAC,EAAE,UAAU,EAC5B,kBAAkB,CAAC,EAAE;QAAE,YAAY,EAAE,UAAU,CAAC;QAAC,SAAS,EAAE,UAAU,CAAA;KAAE,GACvE;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1B;AAED,qBAAa,WAAW;;gBAGV,GAAG,EAAE,kBAAkB;IAWnC;;;sDAGkD;IAClD,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAW/D;;;;;;;;;;;OAWG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI;IA8B5F,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAsG9D;;;;OAIG;IACH,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAuF/E;;;;;;;;OAQG;IACH,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,IAAI;IAM5G;;;;;;;;;;;OAWG;IACH;;;;;;;;;;;;OAYG;IACH,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,WAAW,GAAG,IAAI;IAkDtG;;;;;;;OAOG;IACH,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;CAKzD"}