@cello-protocol/daemon 0.0.105 → 0.0.106

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.
@@ -4,6 +4,8 @@ import type { IpcHandler } from "./ipc-server.js";
4
4
  import type { SessionNodeManager } from "./session-node-manager.js";
5
5
  import type { AgentInfo, Logger } from "./types.js";
6
6
  import type { ConnState } from "./contact-handlers.js";
7
+ import type { RelayConnectParams } from "./session-node-manager.js";
8
+ import type { RelayAssignmentCarry } from "./session-relay-client.js";
7
9
  /** How long an un-accepted inbound session request stays claimable. */
8
10
  export declare const INBOUND_SESSION_TTL_MS: number;
9
11
  /** A session request that expired before anyone claimed it. Surfaced by the push-loss reconciler. */
@@ -129,6 +131,63 @@ presentedThisSession?: ReadonlySet<string>): {
129
131
  claim: unknown;
130
132
  }>;
131
133
  } | undefined;
134
+ /**
135
+ * DOD-FIRSTMSG-WITNESS-1: build the RESPONDER's `RelayAssignmentCarry` from a parsed inbound
136
+ * assignment, so it can present `client_record_assignment` and create its own relay session state.
137
+ *
138
+ * Before this the responder carried no assignment at all: `#doRecord` no-opped (returning TRUE —
139
+ * "nothing to present"), `#doSubmit` submitted blind, and the relay answered `session_not_found`
140
+ * unless the initiator's record had already landed. Same-machine loses that race because local
141
+ * delivery is instant while the initiator's record is a round trip.
142
+ *
143
+ * Mirrors `buildRelayConnectParams` (daemon.ts) on the initiator side. Returns undefined when the
144
+ * directory issued no signature, leaving direct/legacy sessions exactly as they were.
145
+ *
146
+ * The field mapping is load-bearing: the relay rebuilds the signed TBS from these values, so a
147
+ * swapped participant or a dropped peer id yields an assignment it rejects as FORGED — which sets
148
+ * `recordRejected` terminally and leaves the session permanently unwitnessed. That is a worse
149
+ * failure than the one this closes, which is why it is extracted and tested directly.
150
+ */
151
+ /**
152
+ * M7 DOD-SPINE-6 / MSG-001-3b + DOD-FIRSTMSG-WITNESS-1: the responder's relay-witness params.
153
+ *
154
+ * Extracted from `acceptInboundAssignment` so the whole object handed to `acceptSession` — not just
155
+ * its parts — is directly assertable. The `assignment` field is the fix: without it the responder
156
+ * can never present `client_record_assignment`.
157
+ *
158
+ * Returns undefined when this agent has no key or the assignment carries no relay endpoint — the
159
+ * session then runs on the direct content path with no relay witness (degraded, never blocked).
160
+ */
161
+ export declare function buildResponderRelayParams(parsed: NonNullable<ReturnType<typeof extractInboundSessionAssignment>>, kp: KeyProvider | undefined, logger: Logger, agentName: string): Promise<RelayConnectParams | undefined>;
162
+ export declare function buildResponderRelayAssignment(parsed: {
163
+ participantAPubkeyHex: string;
164
+ participantBPubkeyHex: string;
165
+ sessionTimestamp: number;
166
+ initiatorPeerId: string;
167
+ counterpartySessionPeerId: string | null;
168
+ relayDirectorySignature: Uint8Array | undefined;
169
+ }): RelayAssignmentCarry | undefined;
170
+ export declare function extractInboundSessionAssignment(frame: Record<string, unknown>): {
171
+ sessionIdHex: string;
172
+ participantAPubkeyHex: string;
173
+ participantBPubkeyHex: string;
174
+ initiatorPeerId: string;
175
+ counterpartySessionPeerId: string | null;
176
+ sessionTimestamp: number;
177
+ signatureType: string | null;
178
+ signerPubkeyHex: string | null;
179
+ relayPeerId: string;
180
+ relayAddrs: string[];
181
+ relayDirectorySignature: Uint8Array | undefined;
182
+ relayDirectorySignatureMalformed: boolean;
183
+ offeredMoniker: string | null;
184
+ monikerRejected: boolean;
185
+ monikerRejectReason: "not_string" | "length" | "charset" | null;
186
+ trustSignals: Array<{
187
+ hash: string;
188
+ blob: Uint8Array;
189
+ }> | undefined;
190
+ } | null;
132
191
  export declare function createInboundSessions(deps: InboundSessionDeps): {
133
192
  registerHandlers: (handlers: Map<string, IpcHandler>) => void;
134
193
  wirePerAgentSessionInbound: (mgr: SignalingManager) => void;
@@ -1 +1 @@
1
- {"version":3,"file":"inbound-sessions.d.ts","sourceRoot":"","sources":["../src/inbound-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inbound-sessions.d.ts","sourceRoot":"","sources":["../src/inbound-sessions.ts"],"names":[],"mappings":"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"}
@@ -135,6 +135,150 @@ presentedThisSession) {
135
135
  trust_signals: signals,
136
136
  };
137
137
  }
138
+ // Pull the fields out of a pushed session_assignment frame. Returns null when the frame
139
+ // carries no usable assignment object / is missing the essential ids (the handler then
140
+ // ignores it rather than throwing). Field-level validity (peer id, signature type) is
141
+ // checked in the handler so it can emit a distinct, diagnosable event per failure.
142
+ /**
143
+ * Coerce a wire value to a 64-byte Ed25519 signature, or undefined. CBOR decodes byte strings as
144
+ * Uint8Array or Buffer depending on the decoder, so accept both; reject every other shape and any
145
+ * wrong length rather than passing a malformed signature downstream.
146
+ */
147
+ function toSignature64(v) {
148
+ const bytes = v instanceof Uint8Array ? v : Buffer.isBuffer(v) ? new Uint8Array(v) : null;
149
+ return bytes && bytes.length === 64 ? bytes : undefined;
150
+ }
151
+ /**
152
+ * DOD-FIRSTMSG-WITNESS-1: build the RESPONDER's `RelayAssignmentCarry` from a parsed inbound
153
+ * assignment, so it can present `client_record_assignment` and create its own relay session state.
154
+ *
155
+ * Before this the responder carried no assignment at all: `#doRecord` no-opped (returning TRUE —
156
+ * "nothing to present"), `#doSubmit` submitted blind, and the relay answered `session_not_found`
157
+ * unless the initiator's record had already landed. Same-machine loses that race because local
158
+ * delivery is instant while the initiator's record is a round trip.
159
+ *
160
+ * Mirrors `buildRelayConnectParams` (daemon.ts) on the initiator side. Returns undefined when the
161
+ * directory issued no signature, leaving direct/legacy sessions exactly as they were.
162
+ *
163
+ * The field mapping is load-bearing: the relay rebuilds the signed TBS from these values, so a
164
+ * swapped participant or a dropped peer id yields an assignment it rejects as FORGED — which sets
165
+ * `recordRejected` terminally and leaves the session permanently unwitnessed. That is a worse
166
+ * failure than the one this closes, which is why it is extracted and tested directly.
167
+ */
168
+ /**
169
+ * M7 DOD-SPINE-6 / MSG-001-3b + DOD-FIRSTMSG-WITNESS-1: the responder's relay-witness params.
170
+ *
171
+ * Extracted from `acceptInboundAssignment` so the whole object handed to `acceptSession` — not just
172
+ * its parts — is directly assertable. The `assignment` field is the fix: without it the responder
173
+ * can never present `client_record_assignment`.
174
+ *
175
+ * Returns undefined when this agent has no key or the assignment carries no relay endpoint — the
176
+ * session then runs on the direct content path with no relay witness (degraded, never blocked).
177
+ */
178
+ export async function buildResponderRelayParams(parsed, kp, logger, agentName) {
179
+ if (!kp || !parsed.relayPeerId || parsed.relayAddrs.length === 0)
180
+ return undefined;
181
+ // DOD-FIRSTMSG-WITNESS-1 (F4): mirror the initiator's loud warning (daemon.ts:457). We only reach
182
+ // here when the assignment carries a relay endpoint, so a missing signature is NOT the legitimate
183
+ // direct/legacy case — it means this session gets no relay witness of its own, which is exactly
184
+ // the pre-fix state. Unwitnessed is an allowed sovereign-redundancy state; it must not be
185
+ // INVISIBLE. Malformed is reported separately from absent: a wrong-length signature is a
186
+ // wire/version bug, not a legacy session.
187
+ if (!parsed.relayDirectorySignature) {
188
+ logger.warn("session.relay.assignment.signature.missing", {
189
+ agentName,
190
+ sessionId: parsed.sessionIdHex.slice(0, 16),
191
+ reason: parsed.relayDirectorySignatureMalformed
192
+ ? "relay_directory_signature_malformed"
193
+ : "relay_mode_assignment_without_directory_signature",
194
+ });
195
+ }
196
+ return {
197
+ relayPeerId: parsed.relayPeerId,
198
+ relayAddrs: parsed.relayAddrs,
199
+ keyProvider: kp,
200
+ senderPubkey: await kp.getPublicKey(),
201
+ sessionIdBytes: new Uint8Array(Buffer.from(parsed.sessionIdHex, "hex")),
202
+ assignment: buildResponderRelayAssignment(parsed),
203
+ };
204
+ }
205
+ export function buildResponderRelayAssignment(parsed) {
206
+ if (!parsed.relayDirectorySignature)
207
+ return undefined;
208
+ return {
209
+ participantA: new Uint8Array(Buffer.from(parsed.participantAPubkeyHex, "hex")),
210
+ participantB: new Uint8Array(Buffer.from(parsed.participantBPubkeyHex, "hex")),
211
+ sessionTimestamp: parsed.sessionTimestamp,
212
+ initiatorSessionPeerId: parsed.initiatorPeerId || undefined,
213
+ counterpartySessionPeerId: parsed.counterpartySessionPeerId ?? undefined,
214
+ assignmentSignature: parsed.relayDirectorySignature,
215
+ };
216
+ }
217
+ export function extractInboundSessionAssignment(frame) {
218
+ const raw = frame["assignment"];
219
+ if (!raw || typeof raw !== "object")
220
+ return null;
221
+ const a = raw;
222
+ const pa = a["participant_a"];
223
+ const pb = a["participant_b"];
224
+ const sessionIdHex = frameValueToHex(a["session_id"]);
225
+ const participantAPubkeyHex = pa ? frameValueToHex(pa["pubkey"]) : null;
226
+ const participantBPubkeyHex = pb ? frameValueToHex(pb["pubkey"]) : null;
227
+ if (!sessionIdHex || !participantAPubkeyHex || !participantBPubkeyHex)
228
+ return null;
229
+ // M7 DOD-SPINE-6 / MSG-001-3b: relay endpoint so the receiver also connects to the
230
+ // relay witness (so the relay can deliver the initiator's witnessed leaves to it).
231
+ const relayEndpoint = a["relay_endpoint"];
232
+ const relayPeerId = relayEndpoint && typeof relayEndpoint["peer_id"] === "string" ? relayEndpoint["peer_id"] : "";
233
+ const relayAddrs = relayEndpoint && Array.isArray(relayEndpoint["multiaddrs"])
234
+ ? relayEndpoint["multiaddrs"].filter((m) => typeof m === "string")
235
+ : [];
236
+ // MONIKER-2 AC2: validate the offered name ONCE, at this wire boundary.
237
+ const monikerResult = extractOfferedMoniker(a);
238
+ // DOD-PRESENT-1: extract trust signals that survived the directory's dumb check.
239
+ let trustSignals;
240
+ const rawSignals = a["trust_signals"];
241
+ if (Array.isArray(rawSignals) && rawSignals.length > 0) {
242
+ const parsed = [];
243
+ for (const entry of rawSignals) {
244
+ if (entry && typeof entry === "object") {
245
+ const e = entry;
246
+ const hash = typeof e["hash"] === "string" ? e["hash"] : null;
247
+ const blob = e["blob"] instanceof Uint8Array ? e["blob"] : Buffer.isBuffer(e["blob"]) ? new Uint8Array(e["blob"]) : null;
248
+ if (hash && blob)
249
+ parsed.push({ hash, blob });
250
+ }
251
+ }
252
+ if (parsed.length > 0)
253
+ trustSignals = parsed;
254
+ }
255
+ return {
256
+ sessionIdHex,
257
+ participantAPubkeyHex,
258
+ participantBPubkeyHex,
259
+ initiatorPeerId: typeof a["initiator_session_peer_id"] === "string" ? a["initiator_session_peer_id"] : "",
260
+ counterpartySessionPeerId: typeof a["counterparty_session_peer_id"] === "string" ? a["counterparty_session_peer_id"] : null,
261
+ sessionTimestamp: typeof a["session_timestamp"] === "number" ? a["session_timestamp"] : 0,
262
+ signatureType: typeof a["signature_type"] === "string" ? a["signature_type"] : null,
263
+ // M7 legibility-TBS-binding (responder verify): the FROST-signed assignment embeds the
264
+ // initiator's primary (group) pubkey as `signer_pubkey` — the key that signs the seal.
265
+ // The responder stores it so it can verify the bilateral seal signature locally, not just
266
+ // accept it (session.ts: "embedded so the counterparty can verify").
267
+ signerPubkeyHex: a["signer_pubkey"] !== undefined ? frameValueToHex(a["signer_pubkey"]) : null,
268
+ relayPeerId,
269
+ relayAddrs,
270
+ // DOD-FIRSTMSG-WITNESS-1. Accept only a well-formed 64-byte Ed25519 signature: anything else
271
+ // (wrong length, wrong type) reads as ABSENT, so a malformed field degrades to "this session
272
+ // has no client-presentable assignment" rather than producing a frame the relay rejects as
273
+ // forged — which would mark the session recordRejected and terminally unwitnessed.
274
+ relayDirectorySignature: toSignature64(a["relay_directory_signature"]),
275
+ relayDirectorySignatureMalformed: a["relay_directory_signature"] !== undefined && toSignature64(a["relay_directory_signature"]) === undefined,
276
+ offeredMoniker: monikerResult.offeredMoniker,
277
+ monikerRejected: monikerResult.rejected,
278
+ monikerRejectReason: monikerResult.reason ?? null,
279
+ trustSignals,
280
+ };
281
+ }
138
282
  export function createInboundSessions(deps) {
139
283
  const { logger, sessionNodeManager, agents, getConnState, resolveCurrentAgent, NO_CURRENT_AGENT_RESPONSE, getKeyProvider, sharedSignaling, handleInboundSealInterruptedRequest, reapDeadHalfOpenSessions, sendAwayResponse, dispatchSessionStateChangedWithTelegram, sendTelegramDoorbell, } = deps;
140
284
  // ─── Seam 2: inbound session establishment (counterparty side) ─────────────
@@ -257,69 +401,6 @@ export function createInboundSessions(deps) {
257
401
  }
258
402
  inboundSessionQueues.set(agentName, live);
259
403
  }
260
- // Pull the fields out of a pushed session_assignment frame. Returns null when the frame
261
- // carries no usable assignment object / is missing the essential ids (the handler then
262
- // ignores it rather than throwing). Field-level validity (peer id, signature type) is
263
- // checked in the handler so it can emit a distinct, diagnosable event per failure.
264
- function extractInboundSessionAssignment(frame) {
265
- const raw = frame["assignment"];
266
- if (!raw || typeof raw !== "object")
267
- return null;
268
- const a = raw;
269
- const pa = a["participant_a"];
270
- const pb = a["participant_b"];
271
- const sessionIdHex = frameValueToHex(a["session_id"]);
272
- const participantAPubkeyHex = pa ? frameValueToHex(pa["pubkey"]) : null;
273
- const participantBPubkeyHex = pb ? frameValueToHex(pb["pubkey"]) : null;
274
- if (!sessionIdHex || !participantAPubkeyHex || !participantBPubkeyHex)
275
- return null;
276
- // M7 DOD-SPINE-6 / MSG-001-3b: relay endpoint so the receiver also connects to the
277
- // relay witness (so the relay can deliver the initiator's witnessed leaves to it).
278
- const relayEndpoint = a["relay_endpoint"];
279
- const relayPeerId = relayEndpoint && typeof relayEndpoint["peer_id"] === "string" ? relayEndpoint["peer_id"] : "";
280
- const relayAddrs = relayEndpoint && Array.isArray(relayEndpoint["multiaddrs"])
281
- ? relayEndpoint["multiaddrs"].filter((m) => typeof m === "string")
282
- : [];
283
- // MONIKER-2 AC2: validate the offered name ONCE, at this wire boundary.
284
- const monikerResult = extractOfferedMoniker(a);
285
- // DOD-PRESENT-1: extract trust signals that survived the directory's dumb check.
286
- let trustSignals;
287
- const rawSignals = a["trust_signals"];
288
- if (Array.isArray(rawSignals) && rawSignals.length > 0) {
289
- const parsed = [];
290
- for (const entry of rawSignals) {
291
- if (entry && typeof entry === "object") {
292
- const e = entry;
293
- const hash = typeof e["hash"] === "string" ? e["hash"] : null;
294
- const blob = e["blob"] instanceof Uint8Array ? e["blob"] : Buffer.isBuffer(e["blob"]) ? new Uint8Array(e["blob"]) : null;
295
- if (hash && blob)
296
- parsed.push({ hash, blob });
297
- }
298
- }
299
- if (parsed.length > 0)
300
- trustSignals = parsed;
301
- }
302
- return {
303
- sessionIdHex,
304
- participantAPubkeyHex,
305
- participantBPubkeyHex,
306
- initiatorPeerId: typeof a["initiator_session_peer_id"] === "string" ? a["initiator_session_peer_id"] : "",
307
- counterpartySessionPeerId: typeof a["counterparty_session_peer_id"] === "string" ? a["counterparty_session_peer_id"] : null,
308
- sessionTimestamp: typeof a["session_timestamp"] === "number" ? a["session_timestamp"] : 0,
309
- signatureType: typeof a["signature_type"] === "string" ? a["signature_type"] : null,
310
- // M7 legibility-TBS-binding (responder verify): the FROST-signed assignment embeds the
311
- // initiator's primary (group) pubkey as `signer_pubkey` — the key that signs the seal.
312
- // The responder stores it so it can verify the bilateral seal signature locally, not just
313
- // accept it (session.ts: "embedded so the counterparty can verify").
314
- signerPubkeyHex: a["signer_pubkey"] !== undefined ? frameValueToHex(a["signer_pubkey"]) : null,
315
- relayPeerId,
316
- relayAddrs,
317
- offeredMoniker: monikerResult.offeredMoniker,
318
- monikerRejected: monikerResult.rejected,
319
- monikerRejectReason: monikerResult.reason ?? null,
320
- trustSignals,
321
- };
322
- }
323
404
  // Wait (bounded) for THIS AGENT's standing receiver to be ready. acceptSession consumes the
324
405
  // agent's standing receiver and rebuilds a replacement asynchronously, so a burst of inbound
325
406
  // assignments for that agent would otherwise drop all but the first (review M2). Polling the
@@ -393,17 +474,7 @@ export function createInboundSessions(deps) {
393
474
  }
394
475
  // M7 DOD-SPINE-6 / MSG-001-3b: relay witness for the receiver. Build from the
395
476
  // inbound assignment's relay endpoint + this agent's K_local + the 16-byte session id.
396
- const kp = getKeyProvider(agentName);
397
- let relayParams;
398
- if (kp && parsed.relayPeerId && parsed.relayAddrs.length > 0) {
399
- relayParams = {
400
- relayPeerId: parsed.relayPeerId,
401
- relayAddrs: parsed.relayAddrs,
402
- keyProvider: kp,
403
- senderPubkey: await kp.getPublicKey(),
404
- sessionIdBytes: new Uint8Array(Buffer.from(parsed.sessionIdHex, "hex")),
405
- };
406
- }
477
+ const relayParams = await buildResponderRelayParams(parsed, getKeyProvider(agentName), logger, agentName);
407
478
  const result = await sessionNodeManager.acceptSession(parsed.sessionIdHex, agentName, parsed.participantAPubkeyHex, // the initiator is OUR counterparty
408
479
  parsed.initiatorPeerId, correlationId, relayParams);
409
480
  if (!result.ok) {
@@ -1 +1 @@
1
- {"version":3,"file":"inbound-sessions.js","sourceRoot":"","sources":["../src/inbound-sessions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inbound-sessions.js","sourceRoot":"","sources":["../src/inbound-sessions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAOzC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,UAAU,EAA4B,MAAM,gCAAgC,CAAC;AACzL,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAIvE,uEAAuE;AACvE,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAuD1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,mBAAmB,CACjC,QAGE;AACF;;;;;;GAMG;AACH,oBAA0C;IAmD1C,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC;IAC9D,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC1C,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC/B,IAAI,KAAc,CAAC;QACnB,IAAI,CAAC;YAAC,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,KAAK,GAAG,IAAI,CAAC;QAAC,CAAC;QAC9D,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,KAAK,QAAQ,CAAC;QAC9C,IAAI,WAAW;YAAE,cAAc,GAAG,IAAI,CAAC;QACvC,OAAO;YACL,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,mBAAmB;YAC1D,WAAW,EAAE,CAAC,CAAC,UAAU;YACzB,4FAA4F;YAC5F,mFAAmF;YACnF,kBAAkB,EAAE,IAAI;YACxB,uBAAuB,EAAE,WAAW;YACpC,GAAG,CAAC,WAAW;gBACb,CAAC,CAAC;oBACE,OAAO,EACL,mFAAmF;wBACnF,uFAAuF;wBACvF,uFAAuF;wBACvF,wFAAwF;wBACxF,oEAAoE;iBACvE;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,4FAA4F;YAC5F,gGAAgG;YAChG,iDAAiD;YACjD,6BAA6B,EAAE,oBAAoB,EAAE,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK;YAC/E,gGAAgG;YAChG,6EAA6E;YAC7E,GAAG,CAAC,CAAC,CAAC,YAAY,KAAK,IAAI;gBACzB,CAAC,CAAC;oBACE,aAAa,EAAE,IAAI;oBACnB,qBAAqB,EACnB,qFAAqF;wBACrF,sFAAsF;wBACtF,uFAAuF;wBACvF,qFAAqF;wBACrF,6EAA6E;iBAChF;gBACH,CAAC,CAAC,EAAE,CAAC;YACP,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO;QACL,kGAAkG;QAClG,EAAE;QACF,4EAA4E;QAC5E,EAAE;QACF,6FAA6F;QAC7F,gEAAgE;QAChE,EAAE;QACF,8EAA8E;QAC9E,2FAA2F;QAC3F,kGAAkG;QAClG,iGAAiG;QACjG,sDAAsD;QACtD,EAAE;QACF,4FAA4F;QAC5F,kGAAkG;QAClG,8FAA8F;QAC9F,+FAA+F;QAC/F,YAAY;QACZ,EAAE;QACF,iGAAiG;QACjG,iGAAiG;QACjG,+EAA+E;QAC/E,qBAAqB,EACnB,+FAA+F;YAC/F,6FAA6F;YAC7F,0FAA0F;YAC1F,+FAA+F;YAC/F,iGAAiG;YACjG,gGAAgG;YAChG,0FAA0F;YAC1F,8FAA8F;YAC9F,+FAA+F;YAC/F,2BAA2B;YAC3B,CAAC,cAAc;gBACb,CAAC,CAAC,0FAA0F;oBAC1F,2FAA2F;gBAC7F,CAAC,CAAC,EAAE,CAAC;QACT,mCAAmC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC,MAAM;QAClG,aAAa,EAAE,OAAO;KACvB,CAAC;AACJ,CAAC;AAED,wFAAwF;AACxF,uFAAuF;AACvF,sFAAsF;AACtF,mFAAmF;AACnF;;;;GAIG;AACH,SAAS,aAAa,CAAC,CAAU;IAC/B,MAAM,KAAK,GAAG,CAAC,YAAY,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC1F,OAAO,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC1D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAuE,EACvE,EAA2B,EAC3B,MAAc,EACd,SAAiB;IAEjB,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACnF,kGAAkG;IAClG,kGAAkG;IAClG,gGAAgG;IAChG,0FAA0F;IAC1F,yFAAyF;IACzF,0CAA0C;IAC1C,IAAI,CAAC,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;YACxD,SAAS;YACT,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,EAAE,MAAM,CAAC,gCAAgC;gBAC7C,CAAC,CAAC,qCAAqC;gBACvC,CAAC,CAAC,mDAAmD;SACxD,CAAC,CAAC;IACL,CAAC;IACD,OAAO;QACL,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;QAC7B,WAAW,EAAE,EAAE;QACf,YAAY,EAAE,MAAM,EAAE,CAAC,YAAY,EAAE;QACrC,cAAc,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;QACvE,UAAU,EAAE,6BAA6B,CAAC,MAAM,CAAC;KAClD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,MAO7C;IACC,IAAI,CAAC,MAAM,CAAC,uBAAuB;QAAE,OAAO,SAAS,CAAC;IACtD,OAAO;QACL,YAAY,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAC9E,YAAY,EAAE,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAC9E,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,sBAAsB,EAAE,MAAM,CAAC,eAAe,IAAI,SAAS;QAC3D,yBAAyB,EAAE,MAAM,CAAC,yBAAyB,IAAI,SAAS;QACxE,mBAAmB,EAAE,MAAM,CAAC,uBAAuB;KACpD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,+BAA+B,CAAC,KAA8B;IAsC5E,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,IAAI,CAAC,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACjD,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,MAAM,EAAE,GAAG,CAAC,CAAC,eAAe,CAAwC,CAAC;IACrE,MAAM,EAAE,GAAG,CAAC,CAAC,eAAe,CAAwC,CAAC;IACrE,MAAM,YAAY,GAAG,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC;IACtD,MAAM,qBAAqB,GAAG,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,MAAM,qBAAqB,GAAG,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxE,IAAI,CAAC,YAAY,IAAI,CAAC,qBAAqB,IAAI,CAAC,qBAAqB;QAAE,OAAO,IAAI,CAAC;IACnF,mFAAmF;IACnF,mFAAmF;IACnF,MAAM,aAAa,GAAG,CAAC,CAAC,gBAAgB,CAAwC,CAAC;IACjF,MAAM,WAAW,GACf,aAAa,IAAI,OAAO,aAAa,CAAC,SAAS,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAChG,MAAM,UAAU,GACd,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACzD,CAAC,CAAE,aAAa,CAAC,YAAY,CAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC;QAC9F,CAAC,CAAC,EAAE,CAAC;IACT,wEAAwE;IACxE,MAAM,aAAa,GAAG,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC/C,iFAAiF;IACjF,IAAI,YAAmE,CAAC;IACxE,MAAM,UAAU,GAAG,CAAC,CAAC,eAAe,CAAC,CAAC;IACtC,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvD,MAAM,MAAM,GAA8C,EAAE,CAAC;QAC7D,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC/B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;gBACvC,MAAM,CAAC,GAAG,KAAgC,CAAC;gBAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC9D,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,YAAY,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,MAAM,CAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;gBACnI,IAAI,IAAI,IAAI,IAAI;oBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAChD,CAAC;QACH,CAAC;QACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,YAAY,GAAG,MAAM,CAAC;IAC/C,CAAC;IACD,OAAO;QACL,YAAY;QACZ,qBAAqB;QACrB,qBAAqB;QACrB,eAAe,EACb,OAAO,CAAC,CAAC,2BAA2B,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,EAAE;QAC1F,yBAAyB,EACvB,OAAO,CAAC,CAAC,8BAA8B,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,CAAC,IAAI;QAClG,gBAAgB,EAAE,OAAO,CAAC,CAAC,mBAAmB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC;QACzF,aAAa,EAAE,OAAO,CAAC,CAAC,gBAAgB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,IAAI;QACnF,uFAAuF;QACvF,uFAAuF;QACvF,0FAA0F;QAC1F,qEAAqE;QACrE,eAAe,EAAE,CAAC,CAAC,eAAe,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9F,WAAW;QACX,UAAU;QACV,6FAA6F;QAC7F,6FAA6F;QAC7F,2FAA2F;QAC3F,mFAAmF;QACnF,uBAAuB,EAAE,aAAa,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC;QACtE,gCAAgC,EAC9B,CAAC,CAAC,2BAA2B,CAAC,KAAK,SAAS,IAAI,aAAa,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,KAAK,SAAS;QAC7G,cAAc,EAAE,aAAa,CAAC,cAAc;QAC5C,eAAe,EAAE,aAAa,CAAC,QAAQ;QACvC,mBAAmB,EAAE,aAAa,CAAC,MAAM,IAAI,IAAI;QACjD,YAAY;KACb,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAwB;IAC5D,MAAM,EACJ,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,mBAAmB,EACrE,yBAAyB,EAAE,cAAc,EAAE,eAAe,EAC1D,mCAAmC,EAAE,wBAAwB,EAC7D,gBAAgB,EAAE,uCAAuC,EAAE,oBAAoB,GAChF,GAAG,IAAI,CAAC;IAET,8EAA8E;IAC9E,EAAE;IACF,kFAAkF;IAClF,8EAA8E;IAC9E,mFAAmF;IACnF,yEAAyE;IACzE,qFAAqF;IACrF,gFAAgF;IAChF,0FAA0F;IAC1F,+FAA+F;IAC/F,kGAAkG;IAClG,4DAA4D;IAC5D,EAAE;IACF,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,gGAAgG;IAChG,iFAAiF;IACjF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAkB,CAAC;IAClD,MAAM,QAAQ,GAAG,CAAC,SAAiB,EAAE,YAAoB,EAAU,EAAE,CAAC,GAAG,SAAS,IAAI,YAAY,EAAE,CAAC;IACrG,6FAA6F;IAC7F,wFAAwF;IACxF,MAAM,sBAAsB,GAAG,IAAI,GAAG,EAAmC,CAAC;IAC1E,kFAAkF;IAClF,sFAAsF;IACtF,oFAAoF;IACpF,qFAAqF;IACrF,sFAAsF;IACtF,gEAAgE;IAChE,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAiC,CAAC;IACtE,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkC,CAAC;IACxE,mFAAmF;IACnF,gFAAgF;IAChF,mFAAmF;IACnF,6DAA6D;IAC7D,gGAAgG;IAChG,mGAAmG;IACnG,kFAAkF;IAClF,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;IAC1C,iFAAiF;IACjF,mFAAmF;IACnF,oFAAoF;IACpF,iFAAiF;IACjF,uFAAuF;IACvF,IAAI,kBAAkB,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAE1D,SAAS,qBAAqB,CAAC,SAAiB,EAAE,KAA0B;QAC1E,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACrD,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAClC,+EAA+E;YAC/E,MAAM,CAAC,GAAG,OAAO,CAAC,KAAK,EAAG,CAAC;YAC3B,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YACjB,OAAO;QACT,CAAC;QACD,MAAM,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;QACpD,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,oCAAoC;QAClF,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;IACzC,CAAC;IAED,+FAA+F;IAC/F,iGAAiG;IACjG,gGAAgG;IAChG,gGAAgG;IAChG,+FAA+F;IAC/F,gFAAgF;IAChF,MAAM,4BAA4B,GAAG,EAAE,CAAC;IACxC,0FAA0F;IAC1F,4FAA4F;IAC5F,8FAA8F;IAC9F,wFAAwF;IACxF,SAAS,0BAA0B,CAAC,SAAiB;QACnD,MAAM,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,IAAI,GAA0B,EAAE,CAAC;QACvC,IAAI,WAAW,GAAG,sBAAsB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACxD,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,GAAG,CAAC,CAAC,UAAU,GAAG,sBAAsB,CAAC;YACzF,kFAAkF;YAClF,6FAA6F;YAC7F,yDAAyD;YACzD,IAAI,MAAM,GAAyB,IAAI,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,GAAG,kBAAkB,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;YAC1E,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;oBACnD,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY;oBACpC,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;iBACzD,CAAC,CAAC;YACL,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,KAAK,IAAI,IAAI,CAClC,MAAM,CAAC,MAAM,KAAK,QAAQ;gBAC1B,MAAM,CAAC,MAAM,KAAK,WAAW;gBAC7B,MAAM,CAAC,MAAM,KAAK,0BAA0B;gBAC5C,MAAM,CAAC,MAAM,KAAK,aAAa,CAChC,CAAC;YACF,IAAI,MAAM,IAAI,QAAQ,EAAE,CAAC;gBACvB,IAAI,MAAM,EAAE,CAAC;oBACX,IAAI,CAAC,WAAW,EAAE,CAAC;wBAAC,WAAW,GAAG,EAAE,CAAC;wBAAC,sBAAsB,CAAC,GAAG,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;oBAAC,CAAC;oBAC3F,WAAW,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,qBAAqB,EAAE,CAAC,CAAC,qBAAqB,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;oBACnH,IAAI,WAAW,CAAC,MAAM,GAAG,4BAA4B,EAAE,CAAC;wBACtD,WAAW,CAAC,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,4BAA4B,CAAC,CAAC,CAAC,gBAAgB;oBAC5F,CAAC;oBACD,MAAM,CAAC,IAAI,CAAC,yBAAyB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC7G,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;gBACpH,CAAC;gBACD,+EAA+E;gBAC/E,IAAI,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;oBAChE,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,YAAY,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC1H,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACf,CAAC;QACH,CAAC;QACD,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAGD,4FAA4F;IAC5F,6FAA6F;IAC7F,6FAA6F;IAC7F,gGAAgG;IAChG,6FAA6F;IAC7F,+FAA+F;IAC/F,4DAA4D;IAC5D,KAAK,UAAU,uBAAuB,CAAC,SAAiB,EAAE,SAAS,GAAG,KAAK,EAAE,MAAM,GAAG,EAAE;QACtF,IAAI,kBAAkB,CAAC,wBAAwB,CAAC,SAAS,CAAC;YAAE,OAAO,IAAI,CAAC;QACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,OAAO,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAC7B,MAAM,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;YAChD,IAAI,kBAAkB,CAAC,wBAAwB,CAAC,SAAS,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC1E,CAAC;QACD,OAAO,kBAAkB,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;IAChE,CAAC;IAED,KAAK,UAAU,uBAAuB,CACpC,MAAuE,EACvE,SAAiB,EACjB,aAAqB;QAErB,IAAI,CAAC;YACH,+FAA+F;YAC/F,iGAAiG;YACjG,+FAA+F;YAC/F,8FAA8F;YAC9F,gFAAgF;YAChF,wFAAwF;YACxF,2FAA2F;YAC3F,4FAA4F;YAC5F,qFAAqF;YACrF,wBAAwB,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,KAAK,GAAG,kBAAkB,CAAC,iCAAiC,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC,CAAC;YAC5G,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBAC3C,SAAS,EAAE,MAAM,CAAC,YAAY;oBAC9B,SAAS;oBACT,MAAM,EAAE,KAAK,CAAC,MAAM;oBACpB,aAAa;iBACd,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,8FAA8F;YAC9F,0FAA0F;YAC1F,gGAAgG;YAChG,gGAAgG;YAChG,iGAAiG;YACjG,0DAA0D;YAC1D,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBACnC,kBAAkB,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;YAC1G,CAAC;YACD,qFAAqF;YACrF,oFAAoF;YACpF,iFAAiF;YACjF,sFAAsF;YACtF,KAAK,kBAAkB,CAAC,8BAA8B,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;gBACvF,MAAM,CAAC,IAAI,CAAC,yCAAyC,EAAE;oBACrD,SAAS;oBACT,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;oBACxD,aAAa;iBACd,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YACH,gFAAgF;YAChF,MAAM,KAAK,GAAG,MAAM,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACvD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBAC3C,SAAS,EAAE,MAAM,CAAC,YAAY;oBAC9B,SAAS;oBACT,MAAM,EAAE,+BAA+B;oBACvC,aAAa;iBACd,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,8EAA8E;YAC9E,uFAAuF;YACvF,MAAM,WAAW,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YAC1G,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,aAAa,CACnD,MAAM,CAAC,YAAY,EACnB,SAAS,EACT,MAAM,CAAC,qBAAqB,EAAE,oCAAoC;YAClE,MAAM,CAAC,eAAe,EACtB,aAAa,EACb,WAAW,CACZ,CAAC;YACF,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;gBACf,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;oBAC3C,SAAS,EAAE,MAAM,CAAC,YAAY;oBAC9B,SAAS;oBACT,MAAM,EAAE,MAAM,CAAC,MAAM;oBACrB,aAAa;iBACd,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,wFAAwF;YACxF,yFAAyF;YACzF,mEAAmE;YACnE,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBAC3B,kBAAkB,CAAC,yBAAyB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,eAAe,CAAC,CAAC;YACvG,CAAC;YAED,kFAAkF;YAClF,qFAAqF;YACrF,mFAAmF;YACnF,8DAA8D;YAC9D,MAAM,kBAAkB,GAAG,MAAM,CAAC,IAAI,CACpC,sBAAsB,CACpB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,CAAC,EAChD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,qBAAqB,EAAE,KAAK,CAAC,EAChD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,KAAK,CAAC,EACvC,MAAM,CAAC,gBAAgB,CACxB,CACF,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAElB,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;gBACtC,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,SAAS;gBACT,aAAa,EAAE,MAAM,CAAC,MAAM;gBAC5B,aAAa;aACd,CAAC,CAAC;YACH,uFAAuF;YACvF,uFAAuF;YACvF,4EAA4E;YAC5E,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBAC3B,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE;oBAC9B,SAAS;oBACT,MAAM,EAAE,MAAM,CAAC,qBAAqB;oBACpC,MAAM,EAAE,MAAM,CAAC,mBAAmB,IAAI,SAAS;oBAC/C,aAAa;iBACd,CAAC,CAAC;YACL,CAAC;YACD,uFAAuF;YACvF,mFAAmF;YACnF,wFAAwF;YACxF,gFAAgF;YAChF,IAAI,MAAM,CAAC,cAAc,KAAK,IAAI,EAAE,CAAC;gBACnC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC;gBACrF,8FAA8F;gBAC9F,8FAA8F;YAChG,CAAC;YACD,uDAAuD;YACvD,4FAA4F;YAC5F,0EAA0E;YAC1E,MAAM,eAAe,GAAa,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE;oBAC1C,SAAS;oBACT,SAAS,EAAE,MAAM,CAAC,YAAY;oBAC9B,YAAY,EAAE,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oBACvD,KAAK,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM;oBACjC,aAAa;iBACd,CAAC,CAAC;gBACH,IAAI,CAAC;oBACH,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;oBACvE,MAAM,OAAO,GAAG,kBAAkB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;oBAC7D,gFAAgF;oBAChF,8EAA8E;oBAC9E,kBAAkB,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,qBAAqB,EAAE,IAAI,EAAE,qBAAqB,CAAC,CAAC;oBACpG,IAAI,QAAQ,GAAG,CAAC,CAAC;oBACjB,IAAI,QAAQ,GAAG,CAAC,CAAC;oBACjB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;wBACtC,IAAI,CAAC;4BACH,MAAM,QAAQ,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;4BACrD,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;4BAC/D,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,CAAC;gCAChD,sFAAsF;gCACtF,gFAAgF;gCAChF,mFAAmF;gCACnF,oFAAoF;gCACpF,+EAA+E;gCAC/E,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;oCACzC,SAAS;oCACT,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oCACjC,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;oCACvF,IAAI,EAAE,QAAQ,CAAC,IAAI;oCACnB,UAAU,EAAE,QAAQ,CAAC,WAAW;oCAChC,YAAY,EAAE,QAAQ,CAAC,aAAa;oCACpC,aAAa;iCACd,CAAC,CAAC;gCACH,QAAQ,EAAE,CAAC;gCACX,SAAS;4BACX,CAAC;4BACD,MAAM,cAAc,GAAG,QAAQ,CAAC,eAAe,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;4BACxH,KAAK,CAAC,iBAAiB,CAAC;gCACtB,OAAO;gCACP,aAAa,EAAE,MAAM,CAAC,qBAAqB;gCAC3C,UAAU,EAAE,GAAG,CAAC,IAAI;gCACpB,WAAW,EAAE,QAAQ,CAAC,YAAY;gCAClC,OAAO,EAAE,QAAQ,CAAC,OAAO;gCACzB,UAAU,EAAE,QAAQ,CAAC,WAAW;gCAChC,YAAY,EAAE,QAAQ,CAAC,aAAa;gCACpC,IAAI,EAAE,QAAQ,CAAC,IAAI;gCACnB,aAAa,EAAE,QAAQ,CAAC,cAAc;gCACtC,OAAO,EAAE,QAAQ,CAAC,OAAO;gCACzB,QAAQ,EAAE,QAAQ,CAAC,SAAS;gCAC5B,SAAS,EAAE,QAAQ,CAAC,UAAU;gCAC9B,cAAc;gCACd,oFAAoF;gCACpF,oFAAoF;gCACpF,gDAAgD;gCAChD,YAAY,EAAE,QAAQ,CAAC,aAAa;gCACpC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;gCACtB,OAAO,EAAE,QAAQ;6BAClB,CAAC,CAAC;4BACH,IAAI,cAAc,EAAE,CAAC;gCACnB,KAAK,CAAC,iBAAiB,CAAC;oCACtB,OAAO;oCACP,aAAa,EAAE,MAAM,CAAC,qBAAqB;oCAC3C,UAAU,EAAE,cAAc;oCAC1B,MAAM,EAAE,YAAY;iCACrB,CAAC,CAAC;4BACL,CAAC;4BACD,QAAQ,EAAE,CAAC;4BACX,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;wBACjC,CAAC;wBAAC,OAAO,GAAY,EAAE,CAAC;4BACtB,MAAM,CAAC,IAAI,CAAC,6BAA6B,EAAE;gCACzC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;gCAC5C,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gCACxD,aAAa;6BACd,CAAC,CAAC;4BACH,QAAQ,EAAE,CAAC;wBACb,CAAC;oBACH,CAAC;oBACD,IAAI,QAAQ,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;wBACjC,MAAM,CAAC,IAAI,CAAC,wBAAwB,EAAE;4BACpC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;4BAClE,QAAQ,EAAE,QAAQ,EAAE,aAAa;yBAClC,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAY,EAAE,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE;wBACxC,SAAS;wBACT,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;wBACxD,aAAa;qBACd,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,qBAAqB,CAAC,SAAS,EAAE;gBAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;gBACjC,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;gBACnD,kBAAkB;gBAClB,cAAc,EAAE,MAAM,CAAC,cAAc;gBACrC,qBAAqB,EAAE,eAAe;aACvC,CAAC,CAAC;YACH,uCAAuC,CACrC,SAAS,EACT,MAAM,CAAC,YAAY,EACnB,SAAS,EACT,MAAM,CAAC,qBAAqB,CAC7B,CAAC;YACF,4FAA4F;YAC5F,KAAK,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,iBAAiB,EAAE,qBAAqB,CAAC,CAAC;YACpG,6FAA6F;YAC7F,6FAA6F;YAC7F,KAAK,gBAAgB,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;YACjE,6FAA6F;YAC7F,6FAA6F;YAC7F,uFAAuF;YACvF,8FAA8F;YAC9F,6GAA6G;YAC7G,gGAAgG;YAChG,kGAAkG;YAClG,8EAA8E;QAChF,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IAED,SAAS,8BAA8B,CAAC,KAA8B;QACpE,qFAAqF;QACrF,MAAM,aAAa,GAAG,UAAU,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;gBAClD,MAAM,EAAE,2BAA2B;gBACnC,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,qFAAqF;QACrF,kFAAkF;QAClF,IAAI,MAAM,CAAC,aAAa,KAAK,QAAQ,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;gBAChD,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,MAAM,EAAE,4BAA4B;gBACpC,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,sFAAsF;QACtF,wFAAwF;QACxF,wFAAwF;QACxF,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC5B,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE;gBAClD,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,MAAM,EAAE,2BAA2B;gBACnC,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,kFAAkF;QAClF,gFAAgF;QAChF,6EAA6E;QAC7E,+CAA+C;QAC/C,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,KAAK,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnF,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;gBACxC,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,kBAAkB,EAAE,MAAM,CAAC,qBAAqB;gBAChD,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,0FAA0F;QAC1F,8FAA8F;QAC9F,+FAA+F;QAC/F,8FAA8F;QAC9F,wFAAwF;QACxF,2FAA2F;QAC3F,wFAAwF;QACxF,gEAAgE;QAChE,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,CAAC;YACtC,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;gBACnD,SAAS,EAAE,UAAU,CAAC,IAAI;gBAC1B,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,uFAAuF;QACvF,wFAAwF;QACxF,IAAI,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,IAAI,kBAAkB,CAAC,gBAAgB,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YACrJ,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;gBAC/C,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,SAAS,EAAE,UAAU,CAAC,IAAI;gBAC1B,aAAa;aACd,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,uFAAuF;QACvF,uFAAuF;QACvF,qFAAqF;QACrF,gFAAgF;QAChF,yFAAyF;QACzF,oCAAoC;QACpC,uFAAuF;QACvF,oFAAoF;QACpF,uFAAuF;QACvF,WAAW;QACX,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE;YACpD,SAAS,EAAE,MAAM,CAAC,YAAY;YAC9B,SAAS,EAAE,UAAU,CAAC,IAAI;YAC1B,IAAI,EAAE,+HAA+H;YACrI,aAAa;SACd,CAAC,CAAC;QAEH,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;QACpE,sFAAsF;QACtF,oFAAoF;QACpF,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC;QAClC,kBAAkB,GAAG,kBAAkB;aACpC,IAAI,CAAC,GAAG,EAAE,CAAC,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;aACrE,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;YACtB,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;YACvE,MAAM,CAAC,KAAK,CAAC,8BAA8B,EAAE;gBAC3C,SAAS,EAAE,MAAM,CAAC,YAAY;gBAC9B,SAAS;gBACT,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;gBACvD,aAAa;aACd,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,wFAAwF;IACxF,4FAA4F;IAC5F,0FAA0F;IAC1F,0FAA0F;IAC1F,6FAA6F;IAC7F,wFAAwF;IACxF,wDAAwD;IACxD,kGAAkG;IAClG,oGAAoG;IACpG,qGAAqG;IACrG,oGAAoG;IACpG,iFAAiF;IACjF,KAAK,UAAU,uBAAuB,CACpC,KAA8B,EAC9B,WAAyD,EACzD,GAAqB,EACrB,SAAiB;QAEjB,MAAM,EAAE,GAAG,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1F,MAAM,UAAU,GAAG,OAAO,KAAK,CAAC,aAAa,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1F,MAAM,UAAU,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,CAAC,EAAE,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,YAAY,UAAU,CAAC,EAAE,CAAC;YAC7E,iGAAiG;YACjG,0GAA0G;YAC1G,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;gBAC3C,SAAS;gBACT,KAAK,EAAE,CAAC,CAAC,EAAE;gBACX,aAAa,EAAE,CAAC,CAAC,UAAU;gBAC3B,aAAa,EAAE,CAAC,CAAC,UAAU;gBAC3B,YAAY,EAAE,UAAU,YAAY,UAAU;aAC/C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,CAAC;YACjC,kGAAkG;YAClG,gGAAgG;YAChG,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC;YAChG,OAAO;QACT,CAAC;QACD,kGAAkG;QAClG,MAAM,aAAa,GAAG,EAAE,CAAC;QAEzB,IAAI,SAA4B,CAAC;QACjC,IAAI,CAAC;YACH,SAAS,GAAG,MAAM,WAAW,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QAC5D,CAAC;QAAC,MAAM,CAAC;YACP,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC;QACD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAC;YACzF,OAAO;QACT,CAAC;QACD,gGAAgG;QAChG,yGAAyG;QACzG,kGAAkG;QAClG,oGAAoG;QACpG,wGAAwG;QACxG,iGAAiG;QACjG,IAAI,QAA6B,CAAC;QAClC,IAAI,CAAC;YACH,QAAQ,GAAG,yBAAyB,CAAC,SAAS,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,0CAA0C,EAAE;gBACvD,SAAS,EAAE,UAAU,EAAE,aAAa,EAAE,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aAC9F,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;YACvE,KAAK,CAAC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,qGAAqG;YACrG,qGAAqG;YACrG,MAAM,CAAC,KAAK,CAAC,uCAAuC,EAAE;gBACpD,SAAS;gBACT,UAAU;gBACV,aAAa;gBACb,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC;QACtG,6FAA6F;QAC7F,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,EAAE,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,qCAAqC,EAAE;gBACjD,SAAS;gBACT,UAAU;gBACV,aAAa;gBACb,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,aAAa;gBACtC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1D,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,SAAS,0BAA0B,CAAC,GAAqB;QACvD,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,0BAA0B;gBAAE,OAAO;YACzD,KAAK,mCAAmC,CAAC,KAAgC,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QACH,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,EAAE,EAAE;YACnC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,oBAAoB;gBAAE,OAAO;YACnD,8BAA8B,CAAC,KAAgC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,8FAA8F;IAC9F,qFAAqF;IACrF,IAAI,eAAe;QAAE,0BAA0B,CAAC,eAAe,CAAC,CAAC;IAEjE,sFAAsF;IACtF,4FAA4F;IAC5F,6FAA6F;IAC7F,+FAA+F;IAC/F,0FAA0F;IAE1F;;;;;;;;OAQG;IACH,SAAS,gBAAgB,CAAC,QAAiC;QACzD,uFAAuF;QACvF,uFAAuF;QACvF,kDAAkD;QAClD,QAAQ,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE;YACjE,MAAM,SAAS,GAAG,YAAY,CAAC,YAAY,CAAC,CAAC;YAC7C,4FAA4F;YAC5F,gGAAgG;YAChG,iGAAiG;YACjG,MAAM,SAAS,GAAG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,KAA2B,CAAC,CAAC;YACtF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,OAAO,yBAAyB,CAAC;YACnC,CAAC;YACD,MAAM,SAAS,GAAG,OAAO,MAAM,EAAE,CAAC,YAAY,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAE,MAAM,CAAC,YAAY,CAAY,CAAC,CAAC,CAAC,MAAM,CAAC;YAEzG,MAAM,UAAU,GAAG,CAAC,CAAsB,EAAE,EAAE;gBAC5C,IAAI,qBAA6D,CAAC;gBAClE,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,kBAAkB,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;oBAC1D,MAAM,KAAK,GAAG,IAAI,gBAAgB,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;oBACvE,MAAM,QAAQ,GAAG,KAAK,CAAC,YAAY,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAC,qBAAqB,EAAE,CAAC,CAAC;oBAC/F,sFAAsF;oBACtF,2FAA2F;oBAC3F,iEAAiE;oBACjE,qBAAqB,GAAG,mBAAmB,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC;gBAChG,CAAC;gBAAC,OAAO,GAAY,EAAE,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;wBACtC,SAAS;wBACT,YAAY,EAAE,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;wBAClD,MAAM,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;qBACzD,CAAC,CAAC;oBACH,qBAAqB,GAAG,SAAS,CAAC;gBACpC,CAAC;gBACD,OAAO;oBACL,IAAI,EAAE,aAAa;oBACnB,UAAU,EAAE,CAAC,CAAC,YAAY;oBAC1B,mBAAmB,EAAE,CAAC,CAAC,qBAAqB;oBAC5C,iBAAiB,EAAE,CAAC,CAAC,kBAAkB;oBACvC,eAAe,EAAE,CAAC,CAAC,cAAc,IAAI,IAAI;oBACzC,GAAG,CAAC,qBAAqB,IAAI,EAAE,CAAC;iBACjC,CAAC;YACJ,CAAC,CAAC;YAEF,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,mDAAmD;YAC1F,MAAM,MAAM,GAAG,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACnD,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO,UAAU,CAAC,MAAM,CAAC,KAAK,EAAG,CAAC,CAAC;YACrC,CAAC;YAED,MAAM,KAAK,GAAG,MAAM,IAAI,OAAO,CAA6B,CAAC,OAAO,EAAE,EAAE;gBACtE,MAAM,OAAO,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;gBAC3D,MAAM,MAAM,GAAyB;oBACnC,YAAY;oBACZ,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;wBACb,YAAY,CAAC,KAAK,CAAC,CAAC;wBACpB,OAAO,CAAC,CAAC,CAAC,CAAC;oBACb,CAAC;iBACF,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrB,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;gBAC9C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC5B,MAAM,IAAI,GAAG,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAClD,IAAI,IAAI,EAAE,CAAC;wBACT,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;wBACjC,IAAI,GAAG,KAAK,CAAC,CAAC;4BAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACtC,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC,EAAE,SAAS,CAAC,CAAC;YAChB,CAAC,CAAC,CAAC;YAEH,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;YAC/C,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,gBAAgB;QAChB,0BAA0B;QAC1B,uBAAuB;QACvB,qBAAqB;QACrB,0BAA0B;QAC1B,oBAAoB;QACpB,qBAAqB;QACrB,sBAAsB;QACtB,eAAe;QACf,QAAQ;KACT,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"session-relay-client.d.ts","sourceRoot":"","sources":["../src/session-relay-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-relay-client.d.ts","sourceRoot":"","sources":["../src/session-relay-client.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ var _a;
1
2
  /**
2
3
  * Daemon-side relay witness client (PER AGENT).
3
4
  *
@@ -173,6 +174,7 @@ export class AgentRelayClient {
173
174
  assignment: assignment ?? existing?.assignment,
174
175
  recorded: existing?.recorded ?? false,
175
176
  recordRejected: existing?.recordRejected ?? false,
177
+ recordTimedOut: existing?.recordTimedOut ?? false,
176
178
  });
177
179
  // Eagerly present the assignment so the relay records the session (binds peer IDs, creates the
178
180
  // session entry) BEFORE the first hash_submit or the counterparty's leaves arrive — the relay
@@ -236,6 +238,7 @@ export class AgentRelayClient {
236
238
  const result = await Promise.race([ackPromise, timeout]);
237
239
  if (result === "ok") {
238
240
  sess.recorded = true;
241
+ sess.recordTimedOut = false;
239
242
  this.#logger.info("session.relay.assignment.recorded", { relayPeerId: this.#relayPeerId, sessionShort: sessionIdHex.slice(0, 16) });
240
243
  return true;
241
244
  }
@@ -243,6 +246,7 @@ export class AgentRelayClient {
243
246
  // ONLY here reset the stream: a late ack on this superseded stream would settle a LATER submit's
244
247
  // resolver (FIFO desync). recorded stays false ⇒ a transient timeout is retried on reconnect.
245
248
  this.#resetStream();
249
+ sess.recordTimedOut = true;
246
250
  this.#logger.warn("session.relay.assignment.record.timeout", { relayPeerId: this.#relayPeerId, sessionShort: sessionIdHex.slice(0, 16) });
247
251
  return false;
248
252
  }
@@ -696,7 +700,87 @@ export class AgentRelayClient {
696
700
  this.#submitChain = run.then(() => undefined, () => undefined);
697
701
  return run;
698
702
  }
703
+ /**
704
+ * DOD-FIRSTMSG-WITNESS-1: `session_not_found` is TRANSIENT, not terminal.
705
+ *
706
+ * The relay answers it when it does not hold the session YET — the assignment record is still
707
+ * landing, or the counterparty recorded it and our own record raced ahead of the submit. Proven
708
+ * from the live log: in all 23 first-message failures the `assignment.recorded` event lands
709
+ * 5 ms – 2.1 s AFTER the rejected submit. The relay is reachable and answering; it is simply
710
+ * not ready.
711
+ *
712
+ * Before this, the rejection was returned to `sendContent`, which logged
713
+ * `session.relay.hash.submit.failed` and appended the leaf UNWITNESSED anyway. Nothing retried,
714
+ * so the relay's counter never counted that message and the local record stayed exactly one
715
+ * ahead for the life of the session. Because the bilateral certificate is rebuilt EXCLUSIVELY
716
+ * from relay-witnessed leaves, the sealed receipt omitted the conversation's opening message —
717
+ * and was issued regardless.
718
+ *
719
+ * Retrying re-presents the assignment first (idempotent — the relay answers `assignment_ok` on
720
+ * `session_already_exists`), which is also what supplies the wait: re-recording is a full
721
+ * round trip, so the retry cannot busy-spin against a relay that is still catching up.
722
+ *
723
+ * This does NOT collapse the two states the fix must tell apart:
724
+ * - `session_not_found` — a reachable relay that does not hold the session yet → retry here.
725
+ * - `relay_unavailable` / stream failures — a genuine outage → returned untouched, so
726
+ * `sendContent` still degrades to an unwitnessed append and the inbox stays readable.
727
+ * Any other rejection (`session_sealed`, `not_a_participant`, signature failures) is terminal
728
+ * and returned as-is — retrying those would be pointless traffic masking a real state.
729
+ */
730
+ static #SESSION_NOT_FOUND_ATTEMPTS = 3;
699
731
  async #doSubmit(node, sessionId, contentHash, leafKind) {
732
+ const sessionIdHex = Buffer.from(sessionId).toString("hex");
733
+ // Snapshotted BEFORE the first attempt, and it is the whole safety of this loop.
734
+ //
735
+ // The first-message race is BY DEFINITION a session we have not recorded yet. A session we DID
736
+ // record and that the relay now reports missing is a DIFFERENT state: the relay destroys a
737
+ // session on seal (relay-node.ts `confirmSeal`) and on idle sweep, and its store keeps NO
738
+ // tombstone — `recordSession` re-creates any absent key fresh (`seq_counter: 0`, empty
739
+ // leaf_log, status "active"). So `getSession` answers `session_not_found`, NOT `session_sealed`.
740
+ // Re-presenting our still-valid directory-signed assignment there would silently RESURRECT a
741
+ // sealed session on the relay: a ghost with an empty log, an idle timer and a delivery path,
742
+ // created by a client submit retry. Two ctrl leaves on it would drive a second notarization
743
+ // over a 1-leaf log for an already-certified session.
744
+ //
745
+ // The 2 post-seal failures in this defect's own evidence table are exactly that shape — they
746
+ // reported `session_not_found`, indistinguishable at the wire from the race — which is why
747
+ // this must be discriminated on OUR state, not on the relay's reason string.
748
+ const recordedBefore = this.#sessions.get(sessionIdHex)?.recorded === true;
749
+ let result = await this.#doSubmitOnce(node, sessionId, contentHash, leafKind);
750
+ for (let attempt = 1; attempt < _a.#SESSION_NOT_FOUND_ATTEMPTS
751
+ && !recordedBefore
752
+ && !result.ok
753
+ && (result.reason === "session_not_found" || result.reason === "session_not_recorded")
754
+ && !this.#closed; attempt++) {
755
+ // Force the assignment to be re-presented: we never recorded this session, so the relay
756
+ // genuinely does not hold it yet. A session with no assignment to present (direct/legacy)
757
+ // re-submits without a record — still bounded, and it surfaces the same named failure
758
+ // rather than hanging.
759
+ const sess = this.#sessions.get(sessionIdHex);
760
+ if (sess)
761
+ sess.recorded = false;
762
+ this.#logger.info("session.relay.submit.retry", {
763
+ relayPeerId: this.#relayPeerId,
764
+ sessionShort: sessionIdHex.slice(0, 16),
765
+ attempt,
766
+ reason: result.reason,
767
+ });
768
+ result = await this.#doSubmitOnce(node, sessionId, contentHash, leafKind);
769
+ }
770
+ // The relay lost a session we had successfully recorded — sealed, idle-swept, or restarted.
771
+ // Report THAT, rather than letting the caller read a bare `session_not_found` that reads like
772
+ // the first-message race. Never re-present here: recreating it is the resurrection above.
773
+ if (recordedBefore && !result.ok && result.reason === "session_not_found") {
774
+ this.#logger.warn("session.relay.session.gone", {
775
+ relayPeerId: this.#relayPeerId,
776
+ sessionShort: sessionIdHex.slice(0, 16),
777
+ guidance: "the relay no longer holds a session it had recorded (sealed, idle-swept, or restarted) — not re-presented, because that would recreate it with an empty leaf log",
778
+ });
779
+ return { ok: false, reason: "relay_session_gone" };
780
+ }
781
+ return result;
782
+ }
783
+ async #doSubmitOnce(node, sessionId, contentHash, leafKind) {
700
784
  if (this.#closed)
701
785
  return { ok: false, reason: "relay_client_closed" };
702
786
  if (!(await this.#ensureConnected(node)))
@@ -706,7 +790,29 @@ export class AgentRelayClient {
706
790
  // the first hash_submit — the relay rejects a submit for an unknown session. Idempotent + no-op when
707
791
  // there is no assignment to present (direct/persisted sessions). Runs inline on the submit chain (no re-chaining
708
792
  // — #doSubmit is already a chain link), and may reset the stream on failure, so capture #stream after.
709
- await this.#doRecord(node, sessionIdHex);
793
+ const recorded = await this.#doRecord(node, sessionIdHex);
794
+ const sess = this.#sessions.get(sessionIdHex);
795
+ if (!recorded && sess?.assignment) {
796
+ // DOD-FIRSTMSG-WITNESS-1 AC3: do NOT send a hash_submit for a session we know the relay does
797
+ // not hold. Previously this return value was discarded and the doomed frame went out anyway —
798
+ // the line this defect's producer→consumer trace names as THE gap. Two sub-states, kept apart:
799
+ // - recordRejected → TERMINAL (the relay refused the assignment as unverifiable). Retrying
800
+ // cannot help and would storm the shared stream.
801
+ // - anything else → the record is in flight or transiently failed. Retryable.
802
+ // A session with NO assignment to present (direct/legacy) is not covered here: #doRecord
803
+ // returns true for it, so it still submits exactly as before.
804
+ if (sess.recordRejected)
805
+ return { ok: false, reason: "relay_assignment_rejected" };
806
+ // A TIMEOUT IS NOT "NOT READY YET". The retry below exists for a relay that has not finished
807
+ // registering the session — it answers in milliseconds. A record that timed out means the relay
808
+ // is not answering at all, and retrying spends HASH_SUBMIT_TIMEOUT_MS again per attempt on the
809
+ // chain SHARED by every session this agent holds on this relay. Classifying it as unreachable
810
+ // proceeds unwitnessed immediately, which is what AC2 asks for on an outage — the send is not
811
+ // lost, and one sick relay cannot hold an operator's other conversations for half a minute.
812
+ if (sess.recordTimedOut)
813
+ return { ok: false, reason: "relay_unavailable" };
814
+ return { ok: false, reason: "session_not_recorded" };
815
+ }
710
816
  const stream = this.#stream;
711
817
  if (!stream)
712
818
  return { ok: false, reason: "relay_unavailable" };
@@ -790,4 +896,5 @@ export class AgentRelayClient {
790
896
  }
791
897
  }
792
898
  }
899
+ _a = AgentRelayClient;
793
900
  //# sourceMappingURL=session-relay-client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-relay-client.js","sourceRoot":"","sources":["../src/session-relay-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-relay-client.js","sourceRoot":"","sources":["../src/session-relay-client.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cello-protocol/daemon",
3
- "version": "0.0.105",
3
+ "version": "0.0.106",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {
@@ -34,10 +34,10 @@
34
34
  "@signalapp/sqlcipher": "^3.3.5",
35
35
  "cbor-x": "^1.6.0",
36
36
  "it-length-prefixed": "^10.0.1",
37
- "@cello-protocol/crypto": "0.0.36",
38
37
  "@cello-protocol/gateway": "0.0.21",
39
38
  "@cello-protocol/protocol-types": "0.0.38",
40
- "@cello-protocol/transport": "0.0.40"
39
+ "@cello-protocol/transport": "0.0.40",
40
+ "@cello-protocol/crypto": "0.0.36"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@types/node": "^25.6.2",