@cello-protocol/daemon 0.0.229 → 0.0.230

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 (44) hide show
  1. package/dist/channel-collect-tick.d.ts +36 -0
  2. package/dist/channel-collect-tick.d.ts.map +1 -0
  3. package/dist/channel-collect-tick.js +133 -0
  4. package/dist/channel-collect-tick.js.map +1 -0
  5. package/dist/channel-collector.d.ts +99 -0
  6. package/dist/channel-collector.d.ts.map +1 -0
  7. package/dist/channel-collector.js +249 -0
  8. package/dist/channel-collector.js.map +1 -0
  9. package/dist/channel-config-store.d.ts +33 -0
  10. package/dist/channel-config-store.d.ts.map +1 -0
  11. package/dist/channel-config-store.js +61 -0
  12. package/dist/channel-config-store.js.map +1 -0
  13. package/dist/channel-inbox-store.d.ts +46 -0
  14. package/dist/channel-inbox-store.d.ts.map +1 -0
  15. package/dist/channel-inbox-store.js +88 -0
  16. package/dist/channel-inbox-store.js.map +1 -0
  17. package/dist/channel-log-store.d.ts +14 -0
  18. package/dist/channel-log-store.d.ts.map +1 -1
  19. package/dist/channel-log-store.js +58 -0
  20. package/dist/channel-log-store.js.map +1 -1
  21. package/dist/channel-publish-handlers.d.ts +42 -0
  22. package/dist/channel-publish-handlers.d.ts.map +1 -0
  23. package/dist/channel-publish-handlers.js +212 -0
  24. package/dist/channel-publish-handlers.js.map +1 -0
  25. package/dist/channel-publish-wiring.d.ts +41 -0
  26. package/dist/channel-publish-wiring.d.ts.map +1 -0
  27. package/dist/channel-publish-wiring.js +124 -0
  28. package/dist/channel-publish-wiring.js.map +1 -0
  29. package/dist/channel-publisher.d.ts +189 -0
  30. package/dist/channel-publisher.d.ts.map +1 -0
  31. package/dist/channel-publisher.js +394 -0
  32. package/dist/channel-publisher.js.map +1 -0
  33. package/dist/channel-relay-client.d.ts +88 -0
  34. package/dist/channel-relay-client.d.ts.map +1 -0
  35. package/dist/channel-relay-client.js +180 -0
  36. package/dist/channel-relay-client.js.map +1 -0
  37. package/dist/channel-subscription-store.d.ts +66 -0
  38. package/dist/channel-subscription-store.d.ts.map +1 -0
  39. package/dist/channel-subscription-store.js +109 -0
  40. package/dist/channel-subscription-store.js.map +1 -0
  41. package/dist/daemon.d.ts.map +1 -1
  42. package/dist/daemon.js +14 -0
  43. package/dist/daemon.js.map +1 -1
  44. package/package.json +5 -5
@@ -0,0 +1,180 @@
1
+ /**
2
+ * M16 018-PUBCOLLECT — the daemon's client for the relay's channel protocol.
3
+ *
4
+ * Speaks `/cello/channel/1.0.0` (defined by order 017) over length-prefixed CBOR: one logical
5
+ * request per stream, dial-then-`newStream`, exactly as `content-park-client.ts` does for the park
6
+ * protocol. It owns the transport and nothing else — every decision about what to publish, what to
7
+ * believe and what to store belongs to the publisher and the collector.
8
+ *
9
+ * ⚠️ **A DIAL FAILURE AND A REFUSAL ARE DIFFERENT ANSWERS, and the caller branches on both.** A
10
+ * relay that cannot be reached is not a relay that said no: the first is survivable by the other
11
+ * relay and retried later, the second is a verdict about the post. Collapsing them would make an
12
+ * unreachable relay look like a rejection of the content.
13
+ *
14
+ * ⚠️ The transport rejects with PLAIN OBJECT LITERALS carrying `reason`, not Errors — `String(err)`
15
+ * on one prints "[object Object]". Its own reason is preserved rather than overwritten with a
16
+ * generic one; `content-park-client.ts` records what discarding it cost.
17
+ */
18
+ import * as lp from "it-length-prefixed";
19
+ import { encodeCbor, decodeCbor } from "@cello-protocol/protocol-types";
20
+ export const CHANNEL_PROTOCOL_ID = "/cello/channel/1.0.0";
21
+ /**
22
+ * ⚠️ THE SHARED ENCODER, NOT A LOCAL ONE. `no-multiple-cbor-encoders.test.ts` exists because a
23
+ * locally-constructed cbor-x encoder was copy-pasted into fourteen files and two of them used
24
+ * cbor-x's bare `encode` instead — writing tag-64 typed arrays into the same columns the others
25
+ * wrote as raw bytes. cbor-x reads both, so the corruption was invisible until a non-cbor-x reader
26
+ * touched it. This file built its own anyway; the guard caught it.
27
+ *
28
+ * (The guard is a text scan, so it fires on a comment that spells the forbidden call out too. That
29
+ * is the right trade — a scanner that skipped comments would miss a commented-out one.)
30
+ */
31
+ function toU8(chunk) {
32
+ if (chunk instanceof Uint8Array)
33
+ return chunk;
34
+ const c = chunk;
35
+ return typeof c?.subarray === "function" ? c.subarray() : new Uint8Array(chunk);
36
+ }
37
+ function reasonOf(err) {
38
+ if (err !== null && typeof err === "object" && typeof err.reason === "string") {
39
+ return err.reason;
40
+ }
41
+ if (err instanceof Error)
42
+ return err.message;
43
+ const m = err?.message;
44
+ return typeof m === "string" ? m : "relay_unreachable";
45
+ }
46
+ export class ChannelRelayClient {
47
+ #opts;
48
+ constructor(opts) {
49
+ this.#opts = opts;
50
+ }
51
+ /**
52
+ * One request, one stream. THROWS when the relay could not be reached at all, and RESOLVES with
53
+ * whatever the relay said otherwise — including a refusal, which is an answer.
54
+ */
55
+ async request(relayAddr, frame) {
56
+ const node = this.#opts.getNode();
57
+ if (node === null)
58
+ throw new Error("node_stopped");
59
+ let peerId;
60
+ try {
61
+ ({ peerId } = await node.dial(relayAddr));
62
+ }
63
+ catch (err) {
64
+ throw new Error(reasonOf(err));
65
+ }
66
+ let stream;
67
+ try {
68
+ stream = await node.newStream(peerId, CHANNEL_PROTOCOL_ID);
69
+ }
70
+ catch (err) {
71
+ // `protocol_not_supported` here means the relay is not carrying channels — a real and
72
+ // distinguishable condition, not a refusal of this post.
73
+ throw new Error(reasonOf(err));
74
+ }
75
+ try {
76
+ stream.send(lp.encode.single(encodeCbor(frame)));
77
+ const iter = lp.decode(stream)[Symbol.asyncIterator]();
78
+ const res = await iter.next();
79
+ if (res.done || res.value === undefined)
80
+ throw new Error("relay_closed_without_answering");
81
+ const answer = decodeCbor(toU8(res.value));
82
+ if (typeof answer !== "object" || answer === null || Array.isArray(answer)) {
83
+ throw new Error("relay_answer_malformed");
84
+ }
85
+ return answer;
86
+ }
87
+ finally {
88
+ await stream.close().catch(() => { });
89
+ }
90
+ }
91
+ /** Deposit one post. A refusal comes back as `{ ok: false, reason }`, never as a throw. */
92
+ async deposit(relayAddr, req) {
93
+ const answer = await this.request(relayAddr, {
94
+ type: "channel_deposit",
95
+ post_cbor: req.post_cbor,
96
+ ...(req.fetch_key ? { fetch_key: req.fetch_key } : {}),
97
+ });
98
+ if (answer["type"] === "channel_deposit_ok" && answer["receipt_cbor"] instanceof Uint8Array) {
99
+ return { ok: true, receipt_cbor: answer["receipt_cbor"] };
100
+ }
101
+ return {
102
+ ok: false,
103
+ reason: typeof answer["reason"] === "string" ? answer["reason"] : "unexpected_answer",
104
+ ...(typeof answer["skew_ms"] === "number" ? { skew_ms: answer["skew_ms"] } : {}),
105
+ };
106
+ }
107
+ /** Fetch from a post number. The caller verifies everything that comes back. */
108
+ async fetch(relayAddr, req) {
109
+ const answer = await this.request(relayAddr, {
110
+ type: "channel_fetch",
111
+ channel_pubkey: req.channel_pubkey,
112
+ since_seq: req.since_seq,
113
+ max_bytes: req.max_bytes,
114
+ ...(req.auth ? { auth: req.auth } : {}),
115
+ ...(req.agent_pubkeys ? { agent_pubkeys: req.agent_pubkeys } : {}),
116
+ });
117
+ if (answer["type"] !== "channel_posts" || !Array.isArray(answer["posts"])) {
118
+ return { ok: false, reason: typeof answer["reason"] === "string" ? answer["reason"] : "unexpected_answer" };
119
+ }
120
+ const posts = [];
121
+ for (const raw of answer["posts"]) {
122
+ const seq = raw["seq"];
123
+ const postCbor = raw["post_cbor"];
124
+ // A malformed entry is skipped rather than failing the whole fetch: the other posts in the
125
+ // batch are still good, and the collector verifies each one anyway.
126
+ if (typeof seq !== "number" || !(postCbor instanceof Uint8Array))
127
+ continue;
128
+ posts.push({
129
+ seq,
130
+ post_cbor: postCbor,
131
+ ...(raw["receipt_cbor"] instanceof Uint8Array ? { receipt_cbor: raw["receipt_cbor"] } : {}),
132
+ });
133
+ }
134
+ return {
135
+ ok: true,
136
+ posts,
137
+ first_held_seq: typeof answer["first_held_seq"] === "number" ? answer["first_held_seq"] : null,
138
+ last_seq: typeof answer["last_seq"] === "number" ? answer["last_seq"] : null,
139
+ };
140
+ }
141
+ /** Where a relay's queue begins and ends, without pulling any posts. */
142
+ async head(relayAddr, channelPubkey) {
143
+ const answer = await this.request(relayAddr, { type: "channel_head", channel_pubkey: channelPubkey });
144
+ return {
145
+ first_held_seq: typeof answer["first_held_seq"] === "number" ? answer["first_held_seq"] : null,
146
+ last_seq: typeof answer["last_seq"] === "number" ? answer["last_seq"] : null,
147
+ };
148
+ }
149
+ /**
150
+ * Deposit the channel's info record. No receipt: the record carries no post number, so there is
151
+ * nothing for a relay to order or countersign — it either holds the latest one or it does not.
152
+ */
153
+ async depositInfo(relayAddr, req) {
154
+ const answer = await this.request(relayAddr, { type: "channel_info_set", info_record: req.info_cbor });
155
+ if (answer["type"] === "channel_info_set_ok")
156
+ return { ok: true };
157
+ return { ok: false, reason: typeof answer["reason"] === "string" ? answer["reason"] : "unexpected_answer" };
158
+ }
159
+ /** Ask a relay to drop everything through a post number. Oldest end only — the relay enforces that. */
160
+ async prune(relayAddr, req) {
161
+ const answer = await this.request(relayAddr, {
162
+ type: "channel_prune",
163
+ channel_pubkey: req.channel_pubkey,
164
+ through_seq: req.through_seq,
165
+ time_ms: req.time_ms,
166
+ signature: req.signature,
167
+ });
168
+ // `pruned` is the relay's own field name for how many it dropped — read it as sent.
169
+ if (answer["type"] === "channel_prune_ok") {
170
+ return { ok: true, ...(typeof answer["pruned"] === "number" ? { dropped: answer["pruned"] } : {}) };
171
+ }
172
+ return { ok: false, reason: typeof answer["reason"] === "string" ? answer["reason"] : "unexpected_answer" };
173
+ }
174
+ /** The channel's info record as this relay holds it, or null. */
175
+ async info(relayAddr, channelPubkey) {
176
+ const answer = await this.request(relayAddr, { type: "channel_info", channel_pubkey: channelPubkey });
177
+ return answer["info_record"] instanceof Uint8Array ? answer["info_record"] : null;
178
+ }
179
+ }
180
+ //# sourceMappingURL=channel-relay-client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-relay-client.js","sourceRoot":"","sources":["../src/channel-relay-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * ChannelSubscriptionStore — what a SUBSCRIBER knows about a channel it follows (M16).
3
+ *
4
+ * ⚠️ **THE SCHEMA IS 019's, CREATED HERE.** Order 019 owns membership — joining, the group key, the
5
+ * eject re-key — and defines this table. But 018's collector cannot advance a delivery position
6
+ * without somewhere to put it, so the table is created here with 019's FULL column set rather than a
7
+ * smaller one 019 would have to migrate. Nothing holds real data yet, so the alternative is a
8
+ * migration written for an empty database, which this milestone forbids. RAISED on the order.
9
+ *
10
+ * 018 writes `delivered_through` and reads `relays`, `access` and `admin_pubkey`. 019 fills in the
11
+ * join that populates them and adds `channel_subscription_keys` beside this.
12
+ *
13
+ * ─── TWO POSITIONS, NEVER ONE ────────────────────────────────────────────────────────────────
14
+ *
15
+ * delivered_through how far the DAEMON has fetched and verified. Moved by the collector.
16
+ * processed_through how far the AGENT has actually read. Moved by nothing here.
17
+ *
18
+ * Collapsing them into one number would mean a fetch marks a post as read, so anything an agent had
19
+ * not yet seen would be silently skipped the moment the daemon collected it. A fetch never touches
20
+ * `processed_through`; a read never touches `delivered_through`.
21
+ *
22
+ * Keyed on `agent_id` — the stable identity — never on `agent_name`, which is a mutable display
23
+ * label and reusable after retirement.
24
+ */
25
+ import type { DaemonDatabase } from "./sqlcipher-db.js";
26
+ import type { Logger } from "./types.js";
27
+ import type { ChannelAccess } from "@cello-protocol/protocol-types";
28
+ export declare const CHANNEL_SUBSCRIPTION_CREATE_SQL = "\n CREATE TABLE IF NOT EXISTS channel_subscriptions (\n agent_id TEXT NOT NULL,\n channel_pubkey TEXT NOT NULL,\n admin_pubkey TEXT NOT NULL,\n access TEXT NOT NULL,\n guidance TEXT NOT NULL DEFAULT '',\n retention_seconds INTEGER NOT NULL DEFAULT 604800,\n -- JSON array of multiaddrs: the relays this channel publishes to, in the order the info record\n -- gave them. A column per relay would fix the count at two, and the count is the publisher's.\n relays TEXT NOT NULL DEFAULT '[]',\n moniker TEXT NOT NULL DEFAULT '',\n delivered_through INTEGER NOT NULL DEFAULT 0,\n processed_through INTEGER NOT NULL DEFAULT 0,\n joined_at INTEGER NOT NULL DEFAULT 0,\n status TEXT NOT NULL DEFAULT 'active',\n PRIMARY KEY (agent_id, channel_pubkey)\n );\n";
29
+ export interface ChannelSubscription {
30
+ agent_id: string;
31
+ channel_pubkey: string;
32
+ admin_pubkey: string;
33
+ access: ChannelAccess;
34
+ relays: string[];
35
+ delivered_through: number;
36
+ processed_through: number;
37
+ status: "active" | "left" | "ejected";
38
+ }
39
+ export type ChannelSubscriptionErrorCode = "subscription_unknown" | "position_regression";
40
+ export declare class ChannelSubscriptionError extends Error {
41
+ readonly code: ChannelSubscriptionErrorCode;
42
+ constructor(code: ChannelSubscriptionErrorCode, message: string);
43
+ }
44
+ export declare class ChannelSubscriptionStore {
45
+ #private;
46
+ constructor(db: DaemonDatabase, logger: Logger);
47
+ /** Record (or refresh) a subscription. 019's join calls this; 018's tests use it directly. */
48
+ upsert(sub: {
49
+ agent_id: string;
50
+ channel_pubkey: string;
51
+ admin_pubkey: string;
52
+ access: ChannelAccess;
53
+ relays: string[];
54
+ joined_at?: number;
55
+ }): void;
56
+ get(agentId: string, channelPubkeyHex: string): ChannelSubscription | null;
57
+ /** Every channel this daemon should be collecting for. `left` and `ejected` are not collected. */
58
+ active(): ChannelSubscription[];
59
+ /**
60
+ * Move the DAEMON's position. Never moves backwards: a relay that answers with less than it did
61
+ * last time (a prune, a restart, a different relay) must not rewind a subscriber into re-fetching
62
+ * and re-delivering posts its agent has already been shown.
63
+ */
64
+ setDeliveredThrough(agentId: string, channelPubkeyHex: string, seq: number): void;
65
+ }
66
+ //# sourceMappingURL=channel-subscription-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-subscription-store.d.ts","sourceRoot":"","sources":["../src/channel-subscription-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAEpE,eAAO,MAAM,+BAA+B,i5BAkB3C,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,aAAa,CAAC;IACtB,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;CACvC;AAED,MAAM,MAAM,4BAA4B,GAAG,sBAAsB,GAAG,qBAAqB,CAAC;AAE1F,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,IAAI,EAAE,4BAA4B,CAAC;gBAChC,IAAI,EAAE,4BAA4B,EAAE,OAAO,EAAE,MAAM;CAKhE;AAaD,qBAAa,wBAAwB;;gBAIvB,EAAE,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM;IAM9C,8FAA8F;IAC9F,MAAM,CAAC,GAAG,EAAE;QACV,QAAQ,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,aAAa,CAAC;QACtF,MAAM,EAAE,MAAM,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;KACtC,GAAG,IAAI;IAiBR,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI;IAU1E,kGAAkG;IAClG,MAAM,IAAI,mBAAmB,EAAE;IAU/B;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;CAyClF"}
@@ -0,0 +1,109 @@
1
+ export const CHANNEL_SUBSCRIPTION_CREATE_SQL = `
2
+ CREATE TABLE IF NOT EXISTS channel_subscriptions (
3
+ agent_id TEXT NOT NULL,
4
+ channel_pubkey TEXT NOT NULL,
5
+ admin_pubkey TEXT NOT NULL,
6
+ access TEXT NOT NULL,
7
+ guidance TEXT NOT NULL DEFAULT '',
8
+ retention_seconds INTEGER NOT NULL DEFAULT 604800,
9
+ -- JSON array of multiaddrs: the relays this channel publishes to, in the order the info record
10
+ -- gave them. A column per relay would fix the count at two, and the count is the publisher's.
11
+ relays TEXT NOT NULL DEFAULT '[]',
12
+ moniker TEXT NOT NULL DEFAULT '',
13
+ delivered_through INTEGER NOT NULL DEFAULT 0,
14
+ processed_through INTEGER NOT NULL DEFAULT 0,
15
+ joined_at INTEGER NOT NULL DEFAULT 0,
16
+ status TEXT NOT NULL DEFAULT 'active',
17
+ PRIMARY KEY (agent_id, channel_pubkey)
18
+ );
19
+ `;
20
+ export class ChannelSubscriptionError extends Error {
21
+ code;
22
+ constructor(code, message) {
23
+ super(`${code}: ${message}`);
24
+ this.name = "ChannelSubscriptionError";
25
+ this.code = code;
26
+ }
27
+ }
28
+ export class ChannelSubscriptionStore {
29
+ #db;
30
+ #logger;
31
+ constructor(db, logger) {
32
+ this.#db = db;
33
+ this.#logger = logger;
34
+ this.#db.exec(CHANNEL_SUBSCRIPTION_CREATE_SQL);
35
+ }
36
+ /** Record (or refresh) a subscription. 019's join calls this; 018's tests use it directly. */
37
+ upsert(sub) {
38
+ this.#db
39
+ .prepare(`INSERT INTO channel_subscriptions
40
+ (agent_id, channel_pubkey, admin_pubkey, access, relays, joined_at, status)
41
+ VALUES (?, ?, ?, ?, ?, ?, 'active')
42
+ ON CONFLICT (agent_id, channel_pubkey) DO UPDATE SET
43
+ admin_pubkey = excluded.admin_pubkey,
44
+ access = excluded.access,
45
+ relays = excluded.relays`)
46
+ .run(sub.agent_id, sub.channel_pubkey.toLowerCase(), sub.admin_pubkey.toLowerCase(), sub.access, JSON.stringify(sub.relays), sub.joined_at ?? Date.now());
47
+ }
48
+ get(agentId, channelPubkeyHex) {
49
+ const row = this.#db
50
+ .prepare(`SELECT agent_id, channel_pubkey, admin_pubkey, access, relays, delivered_through, processed_through, status
51
+ FROM channel_subscriptions WHERE agent_id = ? AND channel_pubkey = ?`)
52
+ .get(agentId, channelPubkeyHex.toLowerCase());
53
+ return row ? this.#toSubscription(row) : null;
54
+ }
55
+ /** Every channel this daemon should be collecting for. `left` and `ejected` are not collected. */
56
+ active() {
57
+ const rows = this.#db
58
+ .prepare(`SELECT agent_id, channel_pubkey, admin_pubkey, access, relays, delivered_through, processed_through, status
59
+ FROM channel_subscriptions WHERE status = 'active' ORDER BY channel_pubkey ASC, agent_id ASC`)
60
+ .all();
61
+ return rows.map((r) => this.#toSubscription(r));
62
+ }
63
+ /**
64
+ * Move the DAEMON's position. Never moves backwards: a relay that answers with less than it did
65
+ * last time (a prune, a restart, a different relay) must not rewind a subscriber into re-fetching
66
+ * and re-delivering posts its agent has already been shown.
67
+ */
68
+ setDeliveredThrough(agentId, channelPubkeyHex, seq) {
69
+ const current = this.get(agentId, channelPubkeyHex);
70
+ if (!current) {
71
+ throw new ChannelSubscriptionError("subscription_unknown", `no subscription for ${channelPubkeyHex.slice(0, 16)}`);
72
+ }
73
+ if (seq < current.delivered_through) {
74
+ throw new ChannelSubscriptionError("position_regression", `delivered_through is ${String(current.delivered_through)}; refusing to move it back to ${String(seq)}`);
75
+ }
76
+ if (seq === current.delivered_through)
77
+ return;
78
+ this.#db
79
+ .prepare(`UPDATE channel_subscriptions SET delivered_through = ? WHERE agent_id = ? AND channel_pubkey = ?`)
80
+ .run(seq, agentId, channelPubkeyHex.toLowerCase());
81
+ this.#logger.debug("channel.delivered.advanced", {
82
+ agent_id: agentId, channel_pubkey: channelPubkeyHex, delivered_through: seq,
83
+ });
84
+ }
85
+ #toSubscription(row) {
86
+ let relays = [];
87
+ try {
88
+ const parsed = JSON.parse(row.relays);
89
+ if (Array.isArray(parsed))
90
+ relays = parsed.filter((r) => typeof r === "string");
91
+ }
92
+ catch {
93
+ // A corrupt relay list is an empty one, which makes the channel uncollectable and says so in
94
+ // the log — better than throwing on a read path that several channels share.
95
+ this.#logger.warn("channel.subscription.relays_corrupt", { channel_pubkey: row.channel_pubkey });
96
+ }
97
+ return {
98
+ agent_id: row.agent_id,
99
+ channel_pubkey: row.channel_pubkey,
100
+ admin_pubkey: row.admin_pubkey,
101
+ access: row.access,
102
+ relays,
103
+ delivered_through: Number(row.delivered_through),
104
+ processed_through: Number(row.processed_through),
105
+ status: row.status,
106
+ };
107
+ }
108
+ }
109
+ //# sourceMappingURL=channel-subscription-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"channel-subscription-store.js","sourceRoot":"","sources":["../src/channel-subscription-store.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,OAAO,KAAK,EACV,YAAY,EACb,MAAM,YAAY,CAAC;AA6EpB,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAKzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAS7E"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAIH,OAAO,KAAK,EACV,YAAY,EACb,MAAM,YAAY,CAAC;AA+EpB,YAAY,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AAKzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD;;;;;;;;;;GAUG;AACH,wBAAsB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,CAS7E"}
package/dist/daemon.js CHANGED
@@ -41,6 +41,8 @@ import { registerContactHandlers } from "./contact-handlers.js";
41
41
  import { registerSignalHandlers } from "./signal-handlers.js";
42
42
  import { registerTestHandlers } from "./test-handlers.js";
43
43
  import { registerAgentAdminHandlers } from "./agent-admin-handlers.js";
44
+ // M16 018-PUBCOLLECT — the channel publishing half.
45
+ import { wireChannelPublishing } from "./channel-publish-wiring.js";
44
46
  import { registerStatusHandler } from "./status-handler.js";
45
47
  import { registerBackupRestoreHandlers } from "./backup-restore-handlers.js";
46
48
  import { wireDocumentGate } from "./document-gate-wiring.js";
@@ -504,6 +506,17 @@ async function startDaemonHoldingLock(config, singletonLock) {
504
506
  resolveCurrentAgent, getPersistence, getAgentSignaling, waitForSignalingConnected,
505
507
  resolveConsortiumRoster, getFailoverEndpoint, sealFailures,
506
508
  });
509
+ // M16 018-PUBCOLLECT: the channel publishing verbs, their log, their relay client and the
510
+ // per-channel publisher → channel-publish-wiring.ts. What stays here is the wiring.
511
+ const channelWiring = wireChannelPublishing({
512
+ handlers, logger,
513
+ getDb: () => sessionNodeManager.getDb(),
514
+ getNode: () => sessionNodeManager.getStandingReceiverNode() ?? null,
515
+ screenOutbound: (content, ctx) => securityGateway.screenOutbound(content, ctx),
516
+ loadedAgents, keyProviders,
517
+ resolveCurrentAgent: (connectionId, explicitAgent) => resolveCurrentAgent(perConnectionState.get(connectionId), explicitAgent),
518
+ isAgentOnline: (agentId) => onlineAgents.has(agentId) && !explicitlyOfflineAgents.has(agentId),
519
+ });
507
520
  // ─── Trust-signal wallet (operator-facing, no agent scope required) ───
508
521
  // 040-DAEMONROOT unit 1: the trust-signal, attestation and consent handlers moved to
509
522
  // signal-handlers.ts, with the two helpers only they used. What stays here is the wiring.
@@ -1002,6 +1015,7 @@ async function startDaemonHoldingLock(config, singletonLock) {
1002
1015
  // not add a separate per-agent stop loop beside it: it would be redundant, and an unguarded
1003
1016
  // second stop() that throws would abort the rest of shutdown.
1004
1017
  trustSignalSweepTicker.stopAll();
1018
+ channelWiring.stop();
1005
1019
  await stopAllSignaling();
1006
1020
  // Gracefully mark active sessions interrupted (AC-009) before stopping IPC
1007
1021
  await sessionNodeManager.gracefulShutdown();
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAsB,MAAM,qBAAqB,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAK7E,OAAO,EAAE,gBAAgB,EAAwB,MAAM,2BAA2B,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,6BAA6B,EAAE,MAAM,8BAA8B,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAM/E,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAChE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,+BAA+B,EAAE,MAAM,2BAA2B,CAAC;AAC5E,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AAO/D,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,mGAAmG;AACnG,8FAA8F;AAC9F,kGAAkG;AAClG,0EAA0E;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,MAAoB;IACpD,MAAM,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,MAAM,aAAa,GAAG,oBAAoB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC3E,IAAI,CAAC;QACH,OAAO,MAAM,sBAAsB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,aAAa,CAAC,OAAO,EAAE,CAAC;QACxB,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,MAAoB,EACpB,aAA4B;IAE5B,MAAM,EACJ,QAAQ,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAC1D,gBAAgB,EAAE,qBAAqB,EACvC,gBAAgB,EAChB,gBAAgB,EAAE,iBAAiB,EAAE,yBAAyB,EAC9D,iBAAiB,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,yBAAyB,GACxF,GAAG,MAAM,CAAC;IAEX;;;;;;OAMG;IACH,MAAM,kBAAkB,GAAG,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAAE,CAAC;IAEtG,+FAA+F;IAC/F,+FAA+F;IAC/F,MAAM,EACJ,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EACtD,cAAc,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,uBAAuB,EAC3E,oBAAoB,EAAE,eAAe,EAAE,oBAAoB,EAC3D,uBAAuB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,kBAAkB,EAC1F,oBAAoB,EAAE,oBAAoB;IAC1C,6FAA6F;IAC7F,qFAAqF;IACrF,oBAAoB,GACrB,GAAG,MAAM,aAAa,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAE9D,iFAAiF;IACjF,wFAAwF;IACxF,yFAAyF;IACzF,6FAA6F;IAC7F,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;IACxC,IAAI,gBAA0C,CAAC;IAC/C,gFAAgF;IAChF,IAAI,mBAAoD,CAAC;IACzD,IAAI,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;QAC1D,MAAM,oBAAoB,GAAG,IAAI,sBAAsB,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;QAC5F,gBAAgB,GAAG,iBAAiB,CAAC;YACnC,SAAS,EAAE,MAAM,CAAC,qBAAqB;YACvC,YAAY,EAAE,gBAAgB,IAAI,mBAAmB,CAAC,OAAO,CAAC,GAAG,CAAC;YAClE,YAAY;YACZ,oBAAoB;YACpB,cAAc,EAAE,MAAM,CAAC,cAAc;YACrC,MAAM;YACN,iBAAiB,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE;SACtC,CAAC,CAAC;IACL,CAAC;IAED,+FAA+F;IAC/F,uEAAuE;IACvE,MAAM,EACJ,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAC/D,mBAAmB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,sBAAsB,GACrF,GAAG,MAAM,eAAe,CAAC;QACxB,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,eAAe;QACnD,gGAAgG;QAChG,2FAA2F;QAC3F,gGAAgG;QAChG,qDAAqD;QACrD,uBAAuB,EAAE,GAAG,EAAE,CAAC,oBAAoB;QACnD,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;QACnC,kBAAkB,EAAE,GAAG,EAAE,CAAC,eAAe;QACzC,oBAAoB,EAAE,GAAG,EAAE,CAAC,iBAAiB;KAC9C,CAAC,CAAC;IAEH,kGAAkG;IAClG,gGAAgG;IAChG,6FAA6F;IAC7F,8EAA8E;IAC9E,EAAE;IACF,yFAAyF;IACzF,uFAAuF;IACvF,+FAA+F;IAC/F,+FAA+F;IAC/F,iGAAiG;IACjG,+FAA+F;IAC/F,kGAAkG;IAClG,iDAAiD;IACjD,gGAAgG;IAChG,kGAAkG;IAClG,6FAA6F;IAC7F,EAAE;IACF,MAAM,YAAY,GAAG,IAAI,gBAAgB,EAAE,CAAC;IAC5C,MAAM,EACJ,OAAO,EACP,yBAAyB,EACzB,kBAAkB,EAClB,wBAAwB,EACxB,qBAAqB,GACtB,GAAG,qBAAqB,CAAC;QACxB,MAAM;QACN,kBAAkB;QAClB,cAAc;QACd,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,mBAAmB,CAAC;QAC1F,8FAA8F;QAC9F,4FAA4F;QAC5F,4FAA4F;QAC5F,iBAAiB,EAAE,CAAC,SAAiB,EAAE,SAAiB,EAAE,MAAc,EAAE,IAA8B,EAAE,EAAE,CAC1G,YAAY,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC;KACpF,CAAC,CAAC;IAEH,yFAAyF;IACzF,iGAAiG;IACjG,+EAA+E;IAC/E,iGAAiG;IACjG,gGAAgG;IAChG,gGAAgG;IAChG,0EAA0E;IAC1E,MAAM,kBAAkB,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAEvD,MAAM,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,GAAG,eAAe,CAAC;QAC1E,MAAM;QACN,kBAAkB;QAClB,MAAM;QACN,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,2FAA2F;QAC3F,+FAA+F;QAC/F,gGAAgG;QAChG,iGAAiG;QACjG,YAAY,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,SAAS,CAAC;QAC5D,QAAQ,EAAE,CAAC,SAAiB,EAAE,KAA8B,EAAE,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC;QAC3F,sBAAsB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACnH,qBAAqB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC;KAChG,CAAC,CAAC;IAEH,+FAA+F;IAC/F,oDAAoD;IACpD,MAAM,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,eAAe,EAAE,GACvE,sBAAsB,CAAC;QACrB,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,yBAAyB;KAClE,CAAC,CAAC;IAEL,8EAA8E;IAC9E,MAAM,EACJ,iBAAiB,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,kBAAkB,EACnF,YAAY,EAAE,QAAQ,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,sBAAsB,GAC3F,GAAG,qBAAqB,CAAC;QACxB,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,eAAe,EAAE,qBAAqB;QAC9F,uBAAuB,EAAE,cAAc,EAAE,oBAAoB,EAAE,uBAAuB;QACtF,wBAAwB,EAAE,mBAAmB,EAAE,YAAY,EAAE,iBAAiB;QAC9E,qBAAqB,EAAE,iBAAiB,EAAE,yBAAyB;QACnE,8FAA8F;QAC9F,+FAA+F;QAC/F,+FAA+F;QAC/F,8FAA8F;QAC9F,cAAc;QACd,6BAA6B,EAAE,GAAG,EAAE,CAAC,0BAA0B;QAC/D,0BAA0B,EAAE,GAAG,EAAE,CAAC,uBAAuB,EAAE,oBAAoB,EAAE,GAAG,EAAE,CAAC,wBAAwB;KAChH,CAAC,CAAC;IAEH,oGAAoG;IACpG,kGAAkG;IAClG,kGAAkG;IAClG,oGAAoG;IACpG,iGAAiG;IACjG,qGAAqG;IACrG,sEAAsE;IAEtE,gGAAgG;IAChG,iGAAiG;IACjG,MAAM,EACJ,kBAAkB,EAAE,YAAY,EAAE,uBAAuB,EAAE,gBAAgB,EAC3E,mBAAmB,EAAE,uBAAuB,EAAE,iBAAiB,EAC/D,oBAAoB,GACrB,GAAG,wBAAwB,CAAC,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAErD;;;;;;;;OAQG;IACH,MAAM,iBAAiB,GAAG,CAAC,SAAiB,EAAyC,EAAE,CACrF,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC;QACpC,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,eAAe,CAAC,kBAAkB,EAAE,SAAS,CAAC,GAAG,CAAC;YAClD,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,YAAY,CAAC;IACrB,kBAAkB,CAAC,0BAA0B,CAAC,iBAAiB,CAAC,CAAC;IAEjE,+EAA+E;IAC/E,8FAA8F;IAC9F,qFAAqF;IACrF,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,eAAe,EAAE,WAAW,EAAE,GACvE,sBAAsB,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,eAAe,EAAE,CAAC,CAAC;IAC9F,mGAAmG;IACnG,sFAAsF;IACtF,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IAAE,MAAM,EAAE,mBAAmB,EAAE,GAAG,sBAAsB,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,WAAW,EAAE,UAAU;QAClJ,YAAY,EAAE,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC,CAAC;IAEpI,iGAAiG;IACjG,kGAAkG;IAClG,mFAAmF;IACnF,MAAM,EACJ,oBAAoB,EACpB,iBAAiB,EACjB,+BAA+B,EAC/B,kBAAkB,GACnB,GAAG,sBAAsB,CAAC;QACzB,MAAM;QACN,mBAAmB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,mBAAmB,EAAE;QACnE,cAAc,EAAE,yBAAyB;KAC1C,CAAC,CAAC;IAEH,uFAAuF;IACvF,mBAAmB;IACnB,MAAM,EAAE,UAAU,EAAE,GAAG,iBAAiB,CAAC;QACvC,MAAM,EAAE,kBAAkB;QAC1B,8FAA8F;QAC9F,2BAA2B;QAC3B,iBAAiB,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,CAC7C,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,IAAI,IAAI;KACjE,CAAC,CAAC;IAEH,6FAA6F;IAC7F,8FAA8F;IAC9F,2EAA2E;IAC3E,IAAI,kBAAkD,CAAC;IACvD,IAAI,uBAA2E,CAAC;IAEhF,6FAA6F;IAC7F,8DAA8D;IAC9D,MAAM,EACJ,aAAa,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAC3E,uCAAuC,GACxC,GAAG,mBAAmB,CAAC;QACtB,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,oBAAoB,EAAE,iBAAiB;QACzE,gGAAgG;QAChG,8FAA8F;QAC9F,qEAAqE;QACrE,yBAAyB,EAAE,GAAG,EAAE,CAAC,sBAAsB;QACvD,qBAAqB,EAAE,GAAG,EAAE,CAAC,kBAAkB;QAC/C,sBAAsB,EAAE,GAAG,EAAE,CAAC,uBAAuB;QACrD,kBAAkB,EAAE,GAAG,EAAE,CAAC,eAAe;QACzC,WAAW,EAAE,GAAG,EAAE,CAAC,QAAQ;KAC5B,CAAC,CAAC;IAIH,gGAAgG;IAChG,iGAAiG;IACjG,qFAAqF;IAErF,0EAA0E;IAC1E,2EAA2E;IAC3E,iFAAiF;IACjF,4EAA4E;IAC5E,gFAAgF;IAChF,wDAAwD;IACxD,MAAM,cAAc,GAClB,MAAM,CAAC,cAAc;QACrB,kBAAkB,CAAC,0BAA0B,EAAE;QAC/C,IAAI,gBAAgB,EAAE,CAAC;IAEzB,mGAAmG;IACnG,6EAA6E;IAC7E,MAAM,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,CAAC;QACnL,MAAM;QACN,kBAAkB;QAClB,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,cAAc;QACd,iBAAiB,EAAE,CAAC,SAAiB,EAAE,EAAE,EAAE,SAAiB,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,EAAE,EAAE,EAAE,SAAS,CAAC;QAC5G,yBAAyB;QACzB,mBAAmB;QACnB,uBAAuB;QACvB,qBAAqB;QACrB,sBAAsB;QACtB,iBAAiB;QACjB,iBAAiB;QACjB,kBAAkB,EAAE,GAAG,EAAE,CAAC,uBAAuB;QACjD,YAAY;QACZ,qFAAqF;QACrF,2FAA2F;QAC3F,eAAe;QACf,kBAAkB;QAClB,oBAAoB,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC,YAAY;QACzD,8FAA8F;QAC9F,oGAAoG;QACpG,iBAAiB,EAAE,CAAC,IAAY,EAAE,GAAW,EAAE,MAAc,EAAE,IAA8B,EAAE,EAAE,CAC/F,YAAY,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,IAAI,CAAC;KACzE,CAAC,CAAC;IACH,iGAAiG;IACjG,0FAA0F;IAC1F,MAAM,EAAE,UAAU,EAAE,eAAe,EAAE,oBAAoB,EAAE,GACzD,sBAAsB,CAAC;QACrB,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY;QACxD,uBAAuB,EAAE,yBAAyB;QAClD,wFAAwF;QACxF,wEAAwE;QACxE,sBAAsB,EAAE,wBAAwB;KACjD,CAAC,CAAC;IAGL,8FAA8F;IAC9F,gGAAgG;IAChG,uFAAuF;IACvF,MAAM,EAAE,mCAAmC,EAAE,GAAG,+BAA+B,CAAC;QAC9E,MAAM;QACN,kBAAkB;QAClB,MAAM;QACN,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,QAAQ;QACR,sBAAsB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;QACnH,qBAAqB,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,CAAC;KAChG,CAAC,CAAC;IAEH,+EAA+E;IAC/E,EAAE;IACF,8FAA8F;IAC9F,gGAAgG;IAChG,6FAA6F;IAC7F,+FAA+F;IAC/F,gGAAgG;IAChG,EAAE;IACF,gGAAgG;IAChG,iGAAiG;IACjG,gGAAgG;IAChG,+FAA+F;IAC/F,2EAA2E;IAE3E,uFAAuF;IACvF,MAAM,EACJ,gBAAgB,EAAE,8BAA8B,EAChD,0BAA0B,EAC1B,uBAAuB,EACvB,qBAAqB,EACrB,aAAa,EACb,0BAA0B,EAC1B,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,eAAe,EACf,QAAQ,GACT,GAAG,qBAAqB,CAAC;QACxB,MAAM;QACN,kBAAkB;QAClB,MAAM;QACN,mBAAmB,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,uBAAuB,CAAC,GAAG,CAAC,SAAS,CAAC;QAClF,8EAA8E;QAC9E,QAAQ;QACR,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,4FAA4F;QAC5F,2EAA2E;QAC3E,mBAAmB,EAAE,CAAC,SAAoD,EAAE,aAAsB,EAAE,EAAE,CACpG,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC;QAC/C,yBAAyB;QACzB,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,eAAe;QACf,mCAAmC;QACnC,gGAAgG;QAChG,yFAAyF;QACzF,wBAAwB,EAAE,CAAC,SAAkB,EAAE,EAAE,CAAC,wBAAwB,CAAC,SAAS,CAAC;QACrF,gBAAgB;QAChB,uCAAuC;QACvC,oBAAoB;QACpB,qBAAqB,EAAE,cAAc,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,MAAM;KAC9F,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,iBAAiB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAED,MAAM,oBAAoB,EAAE,CAAC;IAE7B,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC;IAChF,eAAe,CAAC,UAAU,EAAE,CAAC;IAE7B,qGAAqG;IACrG,MAAM,EAAE,sBAAsB,EAAE,GAAG,sBAAsB,CAAC;QACxD,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,kBAAkB;QAC5D,+FAA+F;QAC/F,iCAAiC;QACjC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;KACvC,CAAC,CAAC;IAEH,uFAAuF;IACvF,uFAAuF;IACvF,MAAM,EACJ,wBAAwB,EAAE,wBAAwB,EAAE,iCAAiC,EACrF,aAAa,GACd,GAAG,kBAAkB,CAAC;QACrB,MAAM,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,YAAY,EAAE,uBAAuB;QACrF,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,OAAO,EAAE,yBAAyB;QAC1F,kBAAkB;KACnB,CAAC,CAAC;IAEH,6FAA6F;IAC7F,MAAM,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC;QAC7C,kBAAkB,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,wBAAwB;QAC/E,mBAAmB,EAAE,iCAAiC,EAAE,wBAAwB,EAAE,cAAc;QAChG,+FAA+F;QAC/F,gGAAgG;QAChG,oDAAoD;QACpD,wBAAwB,EAAE,GAAG,EAAE,CAAC,wBAAwB,EAAE;QAC1D,gBAAgB,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,kBAAkB;KAC1E,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAsB,CAAC;IAE/C,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,EAAE;QACtD,OAAO,SAAS,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,sEAAsE;IACtE,QAAQ,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE;QACzD,MAAM,UAAU,GAAI,MAAM,EAAE,UAAqB,IAAI,KAAK,CAAC;QAC3D,kBAAkB,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QACzE,4DAA4D;QAC5D,sBAAsB,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;QACxD,qFAAqF;QACrF,MAAM,CAAC,IAAI,CAAC,sBAAsB,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,CAAC,CAAC;QAClE,OAAO,EAAE,YAAY,EAAE,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,+FAA+F;IAC/F,kBAAkB;IAClB,MAAM,EAAE,kBAAkB,EAAE,GAAG,gBAAgB,CAAC;QAC9C,MAAM,EAAE,kBAAkB,EAAE,MAAM,EAAE,YAAY,EAAE,uBAAuB,EAAE,YAAY;QACvF,iBAAiB,EAAE,mBAAmB,EAAE,oBAAoB;QAC5D,0FAA0F;QAC1F,2CAA2C;QAC3C,yBAAyB,EAAE,GAAG,EAAE,CAAC,sBAAsB;KACxD,CAAC,CAAC;IAEH,kGAAkG;IAClG,4CAA4C;IAC5C,MAAM,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,GAChD,oBAAoB,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;IAEjD,kFAAkF;IAClF,qBAAqB,CAAC;QACpB,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,MAAM;QACN,YAAY;QACZ,uBAAuB;QACvB,yBAAyB,EAAE,GAAG,EAAE,CAAC,sBAAsB;QACvD,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,kBAAkB;QAClB,sBAAsB;QACtB,kBAAkB;QAClB,kBAAkB,EAAE,aAAa,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC;QAChF,WAAW;QACX,YAAY;QACZ,YAAY;QACZ,iBAAiB;QACjB,yBAAyB;QACzB,iBAAiB;KAClB,CAAC,CAAC;IAEH,kGAAkG;IAElG,2FAA2F;IAC3F,iGAAiG;IACjG,uBAAuB,CAAC;QACtB,QAAQ;QACR,MAAM;QACN,YAAY;QACZ,cAAc;QACd,iBAAiB;QACjB,yBAAyB;QACzB,kBAAkB;QAClB,kBAAkB;QAClB,yBAAyB;QACzB,YAAY;QACZ,oBAAoB;QACpB,gBAAgB;KACjB,CAAC,CAAC;IAGH,sFAAsF;IACtF,0BAA0B,CAAC;QACzB,QAAQ,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY;QAClD,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB,EAAE,cAAc,EAAE,iBAAiB,EAAE,yBAAyB;QACjF,uBAAuB,EAAE,mBAAmB,EAAE,YAAY;KAC3D,CAAC,CAAC;IAEH,yEAAyE;IACzE,qFAAqF;IACrF,0FAA0F;IAC1F,sBAAsB,CAAC;QACrB,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,YAAY;QACZ,YAAY;QACZ,YAAY;QACZ,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,iBAAiB;QACjB,sBAAsB;QACtB,yBAAyB;QACzB,uBAAuB;QACvB,gBAAgB;QAChB,iBAAiB;QACjB,sBAAsB;KACvB,CAAC,CAAC;IAEH,mGAAmG;IACnG,qDAAqD;IACrD,MAAM,EAAE,wBAAwB,EAAE,GAAG,2BAA2B,CAAC;QAC/D,kBAAkB,EAAE,oBAAoB,EAAE,oBAAoB;QAC9D,kBAAkB,EAAE,gBAAgB,KAAK,SAAS;KACnD,CAAC,CAAC;IAEH,6FAA6F;IAC7F,gEAAgE;IAChE,qBAAqB,CAAC;QACpB,QAAQ,EAAE,sBAAsB,EAAE,wBAAwB,EAAE,cAAc,EAAE,gBAAgB;QAC5F,gBAAgB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,iCAAiC;QAC/I,kBAAkB;KACnB,CAAC,CAAC;IAEH,4DAA4D;IAC5D,8EAA8E;IAC9E,kFAAkF;IAClF,+EAA+E;IAC/E,4EAA4E;IAC5E,0BAA0B;IAC1B,kGAAkG;IAClG,yDAAyD;IACzD,EAAE;IACF,uFAAuF;IACvF,0CAA0C;IAC1C,MAAM,6BAA6B,GAAa,EAAE,CAAC;IAGnD,KAAK,MAAM,IAAI,IAAI,6BAA6B,EAAE,CAAC;QACjD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE;YACjD,MAAM,SAAS,GAAG,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC;gBAC1C,OAAO,yBAAyB,CAAC;YACnC,CAAC;YACD,iFAAiF;YACjF,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iBAAiB,EAAE,QAAQ,EAAE,iBAAiB,IAAI,kIAAkI,EAAE,CAAC;QACrN,CAAC,CAAC,CAAC;IACL,CAAC;IAED,4FAA4F;IAC5F,wFAAwF;IACxF,MAAM,EAAE,cAAc,EAAE,GAAG,8BAA8B,CAAC;QACxD,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,0FAA0F;QAC1F,2FAA2F;QAC3F,+DAA+D;QAC/D,eAAe,EAAE,CAAC,SAAS,EAAE,kBAAkB,EAAE,EAAE;YACjD,IAAI,CAAC,kBAAkB,IAAI,CAAC,uBAAuB;gBAAE,OAAO;YAC5D,yFAAyF;YACzF,6FAA6F;YAC7F,2FAA2F;YAC3F,0FAA0F;YAC1F,sFAAsF;YACtF,+FAA+F;YAC/F,IAAI,sBAAsB,CAAC,aAAa,CAAC,SAAS,CAAC,EAAE,kBAAkB,CAAC,EAAE,CAAC;gBACzE,MAAM,CAAC,KAAK,CAAC,8CAA8C,EAAE;oBAC3D,SAAS,EAAE,MAAM,EAAE,qCAAqC;iBACzD,CAAC,CAAC;gBACH,OAAO;YACT,CAAC;YACD,MAAM,YAAY,GAAG,uBAAuB,CAAC,SAAS,CAAC,CAAC;YACxD,IAAI,YAAY,KAAK,IAAI;gBAAE,OAAO;YAClC,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;gBACxD,SAAS,EAAE,OAAO,EAAE,yBAAyB,EAAE,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;aACrF,CAAC,CAAC;YACH,KAAK,kBAAkB;iBACpB,WAAW,CAAC,YAAY,EAAE,kBAAkB,CAAC,WAAW,EAAE,CAAC;iBAC3D,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;gBACtB,MAAM,CAAC,IAAI,CAAC,6CAA6C,EAAE;oBACzD,SAAS,EAAE,MAAM,EAAE,mBAAmB,CAAC,GAAG,CAAC;iBAC5C,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACP,CAAC;QACD,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,yBAAyB;QACzB,yBAAyB;QACzB,iBAAiB;QACjB,cAAc;QACd,uBAAuB;QACvB,sBAAsB,EAAE,cAAc,EAAE,kBAAkB,CAAC,kBAAkB,EAAE,MAAM,CAAC,EAAE,MAAM;KAC/F,CAAC,CAAC;IAEH,kGAAkG;IAClG,2EAA2E;IAC3E,2BAA2B,CAAC;QAC1B,6FAA6F;QAC7F,iGAAiG;QACjG,+BAA+B;QAC/B,YAAY;QACZ,sBAAsB,EAAE,CAAC,CAAC,EAAE,EAAE;YAC5B,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACvB,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAClD,CAAC;QACD,4FAA4F;QAC5F,kEAAkE;QAClE,oBAAoB,EAAE,CAAC,SAAiB,EAAE,OAAe,EAAE,EAAE,CAAC,mBAAmB,CAAC,SAAS,EAAE,OAAO,CAAC;QACrG,iGAAiG;QACjG,qEAAqE;QACrE,mBAAmB,EAAE,CAAC,SAAiB,EAAE,YAAoB,EAAE,EAAE,CAC/D,mBAAmB,CACjB;YACE,MAAM;YACN,kBAAkB;YAClB,YAAY;YACZ,QAAQ;YACR,cAAc;YACd,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,MAAM;SAC/E,EACD,SAAS,EACT,YAAY,CACb;QACH,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,yBAAyB;QACzB,cAAc,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;QAClE,YAAY;QACZ,QAAQ;QACR,yBAAyB;QACzB,sBAAsB;QACtB,4FAA4F;QAC5F,6FAA6F;QAC7F,kGAAkG;QAClG,kBAAkB;QAClB,wBAAwB;QACxB,OAAO;QACP,yBAAyB;QACzB,kBAAkB;QAClB,wBAAwB;QACxB,yBAAyB;QACzB,oBAAoB;QACpB,uBAAuB;KACxB,CAAC,CAAC;IAEH,0EAA0E;IAC1E,6BAA6B,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAE9D,gGAAgG;IAChG,EAAE;IACF,iGAAiG;IACjG,mGAAmG;IACnG,sEAAsE;IACtE,8BAA8B,CAAC;QAC7B,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,yBAAyB;KAC1B,CAAC,CAAC;IAEH,+FAA+F;IAC/F,gGAAgG;IAChG,gCAAgC;IAChC,MAAM,0BAA0B,GAAG,6BAA6B,CAAC;QAC/D,QAAQ;QACR,QAAQ;QACR,MAAM;QACN,aAAa,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,UAAU;QACjF,GAAG,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,sBAAsB,EAAE,MAAM,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpG,CAAC,CAAC;IAEH,+FAA+F;IAC/F,uFAAuF;IACvF,2BAA2B,CAAC;QAC1B,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,YAAY;QACZ,+FAA+F;QAC/F,+FAA+F;QAC/F,SAAS,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAClC,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACrD,yBAAyB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC9D,iGAAiG;QACjG,6DAA6D;QAC7D,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC;QAChF,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,yBAAyB;QACzB,UAAU;QACV,iBAAiB;QACjB,oBAAoB;QACpB,wBAAwB;QACxB,kBAAkB;QAClB,eAAe;QACf,gGAAgG;QAChG,gGAAgG;QAChG,8FAA8F;QAC9F,6DAA6D;QAC7D,mBAAmB,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,EAAE,CAC/C,mBAAmB,CACjB;YACE,MAAM;YACN,kBAAkB;YAClB,YAAY;YACZ,QAAQ;YACR,cAAc;YACd,iBAAiB,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,MAAM;SAC/E,EACD,SAAS,EACT,YAAY,CACb;KACJ,CAAC,CAAC;IACH,8FAA8F;IAC9F,gGAAgG;IAChG,oBAAoB,CAAC;QACnB,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,UAAU;QACV,eAAe;QACf,aAAa;QACb,aAAa;QACb,uCAAuC;QACvC,qBAAqB;QACrB,aAAa;QACb,oBAAoB;QACpB,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;KACrE,CAAC,CAAC;IAEH,WAAW,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACvC,8BAA8B,CAAC,QAAQ,CAAC,CAAC;IAGzC,wFAAwF;IACxF,sFAAsF;IACtF,yFAAyF;IACzF,mCAAmC;IAKnC,iGAAiG;IACjG,kGAAkG;IAClG,yBAAyB;IACzB,8BAA8B,CAAC;QAC7B,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,eAAe;QACf,UAAU;QACV,UAAU;QACV,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,yBAAyB;QACzB,mBAAmB;QACnB,uBAAuB;QACvB,iBAAiB;QACjB,eAAe;KAChB,CAAC,CAAC;IAEH,oGAAoG;IACpG,kGAAkG;IAClG,wEAAwE;IACxE,4BAA4B,CAAC;QAC3B,QAAQ;QACR,MAAM;QACN,kBAAkB;QAClB,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,YAAY;QACZ,MAAM;QACN,0BAA0B;QAC1B,oBAAoB;QACpB,sBAAsB;QACtB,sBAAsB;QACtB,gGAAgG;QAChG,6FAA6F;QAC7F,6EAA6E;QAC7E,+FAA+F;QAC/F,gGAAgG;QAChG,sFAAsF;QACtF,GAAG,CAAC,gBAAgB,EAAE;YACpB,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,YAAoB,EAAE,EAAE,CAAC,aAAc,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YACnG,CAAC,CAAC,EAAE,CAAC;QACP,WAAW,EAAE,CAAC,SAAS,EAAE,EAAE,CACzB,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,IAAI;KAChF,CAAC,CAAC;IAEH,gGAAgG;IAChG,iGAAiG;IACjG,4FAA4F;IAC5F,uFAAuF;IACvF,uBAAuB,CAAC;QACtB,QAAQ;QACR,kBAAkB;QAClB,YAAY,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QACpE,mBAAmB;QACnB,MAAM;QACN,gGAAgG;QAChG,8FAA8F;QAC9F,eAAe,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CACtC,IAAI,eAAe,CAAC,kBAAkB,CAAC,KAAK,EAAE,EAAE,MAAM,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC;QACxF,MAAM;QACN,+BAA+B;KAChC,CAAC,CAAC;IAEH,6FAA6F;IAC7F,kBAAkB;IAClB,MAAM,EAAE,SAAS,EAAE,GAAG,gBAAgB,CAAC;QACrC,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,EAAE,kBAAkB,EAAE,mBAAmB;QACrF,mFAAmF;QACnF,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACpB,CAAC,CAAC;IAGH,4FAA4F;IAC5F,+FAA+F;IAC/F,6EAA6E;IAE7E,oEAAoE;IACpE,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,CAAC;QACxD,MAAM;QACN,gBAAgB,EAAE,CAAC,YAAY,EAAE,YAAY,EAAE,EAAE,CAAC,SAAS,CAAC,gBAAgB,CAAC,YAAY,EAAE,YAAY,CAAC;QACxG,gBAAgB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,gBAAgB,EAAE;KACrD,CAAC,CAAC;IAEH,8EAA8E;IAC9E,iEAAiE;IACjE,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,kBAAkB,CAAC,wBAAwB,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,EAAE,EAAE;QAC9F,uCAAuC,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC3F,CAAC,CAAC,CAAC;IAEH,yFAAyF;IACzF,+FAA+F;IAC/F,0FAA0F;IAC1F,kBAAkB,CAAC,mBAAmB,CAAC,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,EAAE;QAC5E,+FAA+F;QAC/F,sBAAsB,CAAC,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,CAAC,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC;QAChI,kGAAkG;QAClG,+FAA+F;QAC/F,KAAK,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QAC/C,gGAAgG;QAChG,KAAK,oBAAoB,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,qBAAqB,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,qGAAqG;IACrG,6FAA6F;IAC7F,sFAAsF;IACtF,MAAM,EACJ,aAAa,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,uBAAuB,EAC/E,mBAAmB,GACpB,GAAG,gBAAgB,CAAC;QACnB,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY;QACtD,eAAe,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ;QAC1C,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,iBAAiB,EAAE,kBAAkB;QACnF,qBAAqB,EAAE,GAAG,EAAE,CAAC,kBAAkB;QAC/C,sBAAsB;QACtB,sBAAsB,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC;QACjE,QAAQ,EAAE,kBAAkB,EAAE,mBAAmB;KAClD,CAAC,CAAC;IACH,6FAA6F;IAC7F,8FAA8F;IAC9F,kBAAkB,GAAG,uBAAuB,CAAC;IAC7C,uBAAuB,GAAG,mBAAmB,CAAC;IAE9C,kFAAkF;IAClF,EAAE;IACF,yFAAyF;IACzF,6FAA6F;IAC7F,+FAA+F;IAC/F,gGAAgG;IAChG,4FAA4F;IAC5F,8FAA8F;IAC9F,yEAAyE;IACzE,EAAE;IACF,2EAA2E;IAC3E,8FAA8F;IAC9F,4FAA4F;IAC5F,gGAAgG;IAChG,EAAE;IACF,6FAA6F;IAC7F,2FAA2F;IAC3F,0DAA0D;IAC1D,IAAI,CAAC;QACH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;IAC1B,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,oEAAoE;QACpE,MAAM,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC3D,MAAM,GAAG,CAAC;IACZ,CAAC;IAGD,gGAAgG;IAChG,yBAAyB;IACzB,qBAAqB,CAAC;QACpB,SAAS;QACT,YAAY,EAAE,CAAC,YAAoB,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,YAAY,CAAC;QAC5E,kBAAkB,EAAE,CAAC,SAAiB,EAAE,EAAE,CAAC,eAAe,CAAC,kBAAkB,EAAE,SAAS,CAAC;QACzF,gBAAgB;QAChB,kBAAkB,EAAE,CAAC,SAAS,EAAE,UAAU,EAAE,EAAE,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,SAAS,EAAE,UAAU,CAAC;QAC3G,qBAAqB;QACrB,8FAA8F;QAC9F,wFAAwF;QACxF,yBAAyB,EAAE,GAAG,EAAE,CAAC,sBAAsB;KACxD,CAAC,CAAC;IAEH,gFAAgF;IAChF,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE;QAC9C,aAAa,EAAE,CAAC;QAChB,UAAU,EAAE,CAAC;QACb,SAAS,EAAE,CAAC;KACb,CAAC,CAAC;IAEH,8FAA8F;IAC9F,mBAAmB,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAEhD,qBAAqB;IACrB,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;QAC5B,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,aAAa,EAAE,UAAU;QACzB,UAAU,EAAE,YAAY,CAAC,MAAM;QAC/B,gBAAgB;KACjB,CAAC,CAAC;IAEH,qFAAqF;IACrF,uFAAuF;IACvF,6FAA6F;IAE7F,oBAAoB;IACpB,iGAAiG;IACjG,wDAAwD;IACxD,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,KAAK,UAAU,IAAI,CAAC,MAAc;QAChC,2FAA2F;QAC3F,IAAI,mBAAmB,KAAK,SAAS;YAAE,aAAa,CAAC,mBAAmB,CAAC,CAAC;QAC1E,aAAa,CAAC,sBAAsB,CAAC,CAAC;QACtC,+FAA+F;QAC/F,uFAAuF;QACvF,KAAK,MAAM,CAAC,IAAI,eAAe;YAAE,YAAY,CAAC,CAAC,CAAC,CAAC;QACjD,eAAe,CAAC,KAAK,EAAE,CAAC;QACxB,6FAA6F;QAC7F,4FAA4F;QAC5F,+FAA+F;QAC/F,+FAA+F;QAC/F,0FAA0F;QAC1F,iDAAiD;QACjD,wFAAwF;QACxF,8FAA8F;QAC9F,6FAA6F;QAC7F,wEAAwE;QACxE,kBAAkB,EAAE,IAAI,EAAE,CAAC;QAC3B,+FAA+F;QAC/F,8FAA8F;QAC9F,6FAA6F;QAC7F,8DAA8D;QAC9D,aAAa,EAAE,eAAe,EAAE,CAAC;QACjC,6FAA6F;QAC7F,gFAAgF;QAChF,kBAAkB,EAAE,CAAC,CAAC,gFAAgF;QACtG,wFAAwF;QACxF,qFAAqF;QACrF,yDAAyD;QACzD,oBAAoB,EAAE,EAAE,CAAC;QACzB,IAAI,qBAAqB,EAAE,CAAC;YAC1B,qBAAqB,CAAC,MAAM,EAAE,CAAC;QACjC,CAAC;QACD,2FAA2F;QAC3F,0FAA0F;QAC1F,gCAAgC;QAChC,eAAe,EAAE,EAAE,CAAC;QACpB,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,gBAAgB,EAAE,EAAE,CAAC;QACrB,IAAI,MAAM,CAAC,qBAAqB,EAAE,CAAC;YACjC,MAAM,CAAC,qBAAqB,CAAC,MAAM,EAAE,CAAC;QACxC,CAAC;QACD,gGAAgG;QAChG,+FAA+F;QAC/F,gGAAgG;QAChG,8DAA8D;QAC9D,MAAM,mBAAmB,EAAE,IAAI,EAAE,CAAC;QAClC,6FAA6F;QAC7F,+FAA+F;QAC/F,2FAA2F;QAC3F,0FAA0F;QAC1F,sBAAsB;QACtB,iBAAiB,CAAC,IAAI,EAAE,CAAC;QACzB;;;;;;;;;WASG;QACH,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,sBAAsB,GAAG,KAAK,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,EAAE,KAAK,EAAE,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,sBAAsB,EAAE,CAAC,CAAC;YACnH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;gBACzD,IAAI,OAAO,CAAU,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,sBAAsB,CAAC,CAAC,CAAE,CAAuC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;aACnJ,CAAC,CAAC;YACH,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE;oBAC/C,KAAK,EAAE,eAAe,CAAC,IAAI;oBAC3B,MAAM,EACJ,2FAA2F;wBAC3F,8FAA8F;oBAChG,QAAQ,EAAE,kGAAkG;iBAC7G,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5D,4FAA4F;QAC5F,2FAA2F;QAC3F,0FAA0F;QAC1F,yEAAyE;QACzE,IAAI,aAAgC,CAAC;QACrC,IAAI,CAAC;YACH,4FAA4F;YAC5F,4FAA4F;YAC5F,8DAA8D;YAC9D,sBAAsB,CAAC,OAAO,EAAE,CAAC;YAAC,MAAM,gBAAgB,EAAE,CAAC;YAC3D,2EAA2E;YAC3E,MAAM,kBAAkB,CAAC,gBAAgB,EAAE,CAAC;YAC5C,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,2FAA2F;YAC3F,yFAAyF;YACzF,aAAa,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACpE,MAAM,GAAG,CAAC;QACZ,CAAC;gBAAS,CAAC;YACT,2FAA2F;YAC3F,sFAAsF;YACtF,sFAAsF;YACtF,0FAA0F;YAC1F,sFAAsF;YACtF,EAAE;YACF,6FAA6F;YAC7F,4FAA4F;YAC5F,2FAA2F;YAC3F,2FAA2F;YAC3F,yFAAyF;YACzF,4FAA4F;YAC5F,2CAA2C;YAC3C,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;gBACtB,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;oBAC/C,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;wBAC1C,KAAK,EAAE,mBAAmB,CAAC,GAAG,CAAC;qBAChC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC;YACD,8FAA8F;YAC9F,8FAA8F;YAC9F,8FAA8F;YAC9F,yEAAyE;YACzE,0BAA0B,EAAE,CAAC;YAC7B,8FAA8F;YAC9F,4FAA4F;YAC5F,2FAA2F;YAC3F,2FAA2F;YAC3F,yEAAyE;YACzE,EAAE;YACF,8FAA8F;YAC9F,0FAA0F;YAC1F,gFAAgF;YAChF,MAAM,iBAAiB,CAAC,YAAY,EAAE,OAAO,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAqB,CAAC,CAAC,CAAC;YAC9F,qFAAqF;YACrF,yDAAyD;YACzD,aAAa,CAAC,OAAO,EAAE,CAAC;YACxB,+EAA+E;YAC/E,kEAAkE;YAClE,EAAE;YACF,4FAA4F;YAC5F,2FAA2F;YAC3F,gCAAgC;YAChC,EAAE;YACF,yFAAyF;YACzF,6FAA6F;YAC7F,sEAAsE;YACtE,EAAE;YACF,yFAAyF;YACzF,oEAAoE;YACpE,sFAAsF;YACtF,yFAAyF;YACzF,8FAA8F;YAC9F,mFAAmF;YACnF,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,gBAAgB,GAAG,IAAI,CAAC;gBACxB,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE,aAAa,KAAK,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;YACtF,CAAC;QACH,CAAC;IACH,CAAC;IAED,SAAS,qBAAqB;QAC5B,OAAO,kBAAkB,CAAC;IAC5B,CAAC;IAED,SAAS,oBAAoB;QAC3B,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED,SAAS,iBAAiB;QACxB,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,SAAS,eAAe;QACtB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,yFAAyF;IACzF,mFAAmF;IACnF,+BAA+B,EAAE,CAAC;IAElC,yEAAyE;IACzE,EAAE;IACF,6FAA6F;IAC7F,iGAAiG;IACjG,uEAAuE;IACvE,EAAE;IACF,kGAAkG;IAClG,kGAAkG;IAClG,yEAAyE;IACzE,mBAAmB,GAAG,IAAI,mBAAmB,CAAC;QAC5C,MAAM;QACN,kBAAkB,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,2BAA2B,EAAE;QAC1E,GAAG,CAAC,MAAM,CAAC,yBAAyB,KAAK,SAAS;YAChD,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,yBAAyB,EAAE;YACtD,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,MAAM,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAChG,WAAW,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;YAClD,IAAI,CAAC,KAAK;gBAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;YAClE,MAAM,GAAG,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,gBAAgB,SAAS,EAAE,CAAC,CAErF,CAAC;YAEd,8FAA8F;YAC9F,8FAA8F;YAC9F,4FAA4F;YAC5F,8FAA8F;YAC9F,IAAI,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,KAAK,QAAQ,IAAK,GAAG,CAAC,aAAa,CAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1F,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;YACtB,CAAC;YACD,6FAA6F;YAC7F,4FAA4F;YAC5F,uEAAuE;YACvE,MAAM,MAAM,GAA4B,EAAE,CAAC;YAC3C,KAAK,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,sBAAsB;gBACjF,qBAAqB,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,QAAQ,CAAC,EAAE,CAAC;gBACrG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,SAAS;oBAAE,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YACjD,CAAC;YACD,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC,qBAAqB,CAAC,CAAC;YAC3C,OAAO;gBACL,EAAE,EAAE,KAAK;gBACT,MAAM,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,qBAAqB,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAW,CAAC,CAAC,CAAC,SAAS,CAAC;uBACxG,CAAC,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAW,CAAC,CAAC,CAAC,SAAS,CAAC;uBAC3E,2BAA2B;gBAChC,GAAG,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAClE,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,UAAU,CAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACzF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD,CAAC;QACJ,CAAC;QACD,UAAU,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,CAC3C,kBAAkB,CAAC,qBAAqB,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC;KACzE,CAAC,CAAC;IACH,mBAAmB,CAAC,KAAK,EAAE,CAAC;IAE5B,2FAA2F;IAC3F,MAAM,EAAE,sBAAsB,EAAE,GAAG,eAAe,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAEnF;;;;;;;;;;OAUG;IACH,MAAM,WAAW,GAAG,GAA4B,EAAE,CAAC,QAAQ,CAAC;IAE5D,OAAO;QACL;;;;;WAKG;QACH,uBAAuB,CAAC,SAAiB,EAAE,SAAiB;YAC1D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC,IAAI,OAAO,CAAC;YACrF,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;YAChE,MAAM,CAAC,IAAI,CAAC,oCAAoC,EAAE;gBAChD,SAAS,EAAE,SAAS,EAAE,UAAU;gBAChC,MAAM,EAAE,wCAAwC,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,4MAA4M;aAC5R,CAAC,CAAC;QACL,CAAC;QACD,IAAI,EAAE,SAAS,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe;QAChG,WAAW;KACZ,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.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.229",
3
+ "version": "0.0.230",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "engines": {
@@ -35,10 +35,10 @@
35
35
  "@signalapp/sqlcipher": "^3.3.5",
36
36
  "cbor-x": "^1.6.0",
37
37
  "it-length-prefixed": "^10.0.1",
38
- "@cello-protocol/crypto": "0.0.97",
39
- "@cello-protocol/protocol-types": "0.0.101",
40
- "@cello-protocol/transport": "0.0.103",
41
- "@cello-protocol/gateway": "0.0.82"
38
+ "@cello-protocol/crypto": "0.0.98",
39
+ "@cello-protocol/gateway": "0.0.83",
40
+ "@cello-protocol/transport": "0.0.104",
41
+ "@cello-protocol/protocol-types": "0.0.102"
42
42
  },
43
43
  "devDependencies": {
44
44
  "@types/node": "^25.6.2",