@mcsherrylabs/evolver-client 0.10.0 → 0.12.0

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.
package/dist/api.d.ts CHANGED
@@ -45,6 +45,33 @@ export declare class NodeClient {
45
45
  * already-on-chain identity reports `exists`. Never throws.
46
46
  */
47
47
  claimIdentity(id: Identity): Promise<ClaimResult>;
48
+ /**
49
+ * Claim a faucet-sponsored identity from PROOFS SOMEBODY ELSE PRODUCED.
50
+ *
51
+ * The difference from [[claimIdentity]] is the whole point: that one takes an `Identity` —
52
+ * public and private keys — and signs both proofs itself. This one takes public keys and the
53
+ * signatures their holder made elsewhere, so a caller can bring an identity onto the chain for
54
+ * a party whose keys it must never see.
55
+ *
56
+ * ⚠️ THE DIGEST IS RECOMPUTED LOCALLY AND A MISMATCH REFUSES. The node's `/prepare` answers
57
+ * with the bytes it wants signed; `faucetClaimDigest` reproduces them from the same inputs
58
+ * (it is `popCreateIdentity`, a described codec with a purpose tag and a golden vector). A
59
+ * party that supplies the bytes to be signed is a party choosing what gets signed, so the
60
+ * proofs are only forwarded once we can reproduce what they cover.
61
+ *
62
+ * ⚠️ BOTH KEYS, EXACTLY: the chain requires one `BLS12-381-G1` and one `Ed25519`, each at
63
+ * label `""`. A claim missing one is not refused at admit — it is ordered and FINED.
64
+ *
65
+ * The NODE pays here (its sponsorship cost plus the standard starting credit), so nothing
66
+ * about the caller's balance bounds how many of these succeed. The node's does.
67
+ */
68
+ claimIdentityWithProofs(args: {
69
+ nodeId: string;
70
+ blsPublicKey: Uint8Array;
71
+ blsPop: Uint8Array;
72
+ ed25519PublicKey: Uint8Array;
73
+ ed25519Pop: Uint8Array;
74
+ }): Promise<ClaimResult>;
48
75
  /**
49
76
  * GET /api/identity/:nodeId → { nodeId, balance }, or null if not yet on-chain.
50
77
  *
@@ -61,8 +88,88 @@ export declare class NodeClient {
61
88
  } | null>;
62
89
  /** Latest committed round (chain tip), via the explorer blocks list (orderDesc). 0 if none. */
63
90
  currentRound(): Promise<number>;
64
- /** Members of a group, from the on-chain group_members (/api/explorer/groups/:g/members). */
91
+ /**
92
+ * One group and its members, or `null` when this node holds no group of that name.
93
+ *
94
+ * ⚠️ `null` IS AN ANSWER; A THROW IS NOT. The explorer answers 404 for a name it has no group
95
+ * row for, so `null` means "the chain says this is not a group" — while an unreadable chain
96
+ * throws. Nothing could tell those apart before: `getGroupMembers` threw for both, so a caller
97
+ * had to treat a network failure as evidence about the world. Same convention as
98
+ * `getIdentity`, deliberately.
99
+ *
100
+ * ⚠️ A GROUP WITH NO MEMBERS ANSWERS `{ members: [] }`, WHICH IS NOT `null`. Absence of members
101
+ * is not absence of the group, and a caller deciding whether a name exists must not read the
102
+ * empty list as "no such group".
103
+ *
104
+ * It does NOT report who owns the group. The node offers an owner only on the whole-list route
105
+ * (`/api/explorer/groups`, unpaged), so answering about one group would mean pulling every group
106
+ * on somebody else's chain.
107
+ *
108
+ * ⚠️ Like every committed-state read, this answers AS OF THE NODE'S APPLIED POSITION. On a
109
+ * processing node a group that has been committed but not yet applied reads as `null` — "not
110
+ * yet", not "no". Ask a fully-applied node when the question is whether a name is taken.
111
+ */
112
+ getGroup(group: string): Promise<{
113
+ ledgerId: string;
114
+ members: string[];
115
+ } | null>;
116
+ /** Members of a group that is expected to exist; throws when it does not.
117
+ *
118
+ * One transport, expressed through `getGroup` — the URL and the parsing live in exactly one
119
+ * place. Kept because a caller that already knows the group exists should not have to handle a
120
+ * `null` it has ruled out; a caller ASKING whether it exists wants `getGroup`. */
65
121
  getGroupMembers(group: string): Promise<string[]>;
122
+ /** Every group on the chain, with its member count and its owner.
123
+ *
124
+ * ⚠️ UNPAGED, because the node's route is: `/api/explorer/groups` returns all of them in one
125
+ * response. That is the node's shape, not a choice made here, and it is why a caller wanting
126
+ * ONE group's members uses `getGroup` instead of filtering this. */
127
+ listGroups(): Promise<Array<{
128
+ ledgerId: string;
129
+ memberCount: number;
130
+ owner: string;
131
+ }>>;
132
+ /** Who owns each claimed ledger, paged.
133
+ *
134
+ * The caller bounds the walk: this returns one page and the total, and does not loop. An
135
+ * ownership check is a tripwire on a hot path, not an audit, so the bound belongs to whoever
136
+ * is asking. */
137
+ listLedgerOwners(limit?: number, offset?: number): Promise<{
138
+ owners: Array<{
139
+ ledgerId: string;
140
+ ownerNodeId: string;
141
+ }>;
142
+ total: number;
143
+ }>;
144
+ /**
145
+ * One channel's terms: who administers it, what it charges, its data-availability and write
146
+ * policies (156).
147
+ *
148
+ * ⚠️ IT NEVER ANSWERS "NO SUCH CHANNEL", and that is not an omission here — the node has no
149
+ * 404 branch for it. **A channel is not a registered entity**: any ledger id that is not a core
150
+ * ledger is a channel, and it either carries terms or carries the defaults. So this returns a
151
+ * value or throws, and it is the one read on this client that does NOT follow `getIdentity`'s
152
+ * null-means-absent convention, because there is no absence to report.
153
+ *
154
+ * ⚠️ A caller asking "is this claimed?" reads `owners.length === 0` — and on a PROCESSING NODE
155
+ * that means "not claimed as of my cursor", which is how a service nearly claimed a channel
156
+ * somebody else already owned (evolver#85). Ask a fully-applied node when the answer matters.
157
+ *
158
+ * Amounts arrive as decimal strings and are returned as `bigint` (Constitution VIII).
159
+ */
160
+ getChannelTerms(ledgerId: string): Promise<{
161
+ ledgerId: string;
162
+ owners: string[];
163
+ toll: {
164
+ amount: bigint;
165
+ recipient: string;
166
+ } | null;
167
+ da: {
168
+ group: string;
169
+ thresholdM: number;
170
+ } | null;
171
+ writePolicy: string | null;
172
+ }>;
66
173
  /**
67
174
  * Principal name search (`/api/explorer/search`) — the read behind a recipient picker.
68
175
  *
package/dist/api.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
package/dist/api.js CHANGED
@@ -4,7 +4,7 @@
4
4
  // to "" — relative paths, which is what the browser app uses behind its dev
5
5
  // proxy; pass an absolute origin (e.g. "https://node:8440") from Node.
6
6
  import { FAILURE_REASONS } from "./types.js";
7
- import { faucetClaimDigest } from "./identity.js";
7
+ import { faucetClaimDigest, faucetClaimDigestFor } from "./identity.js";
8
8
  import { blsSign, edSign } from "./crypto/auth.js";
9
9
  import { bytesToHex } from "./crypto/hash.js";
10
10
  function asFailureReason(s) {
@@ -234,6 +234,67 @@ export class NodeClient {
234
234
  return { kind: "failed", error: "internal", message: e instanceof Error ? e.message : String(e) };
235
235
  }
236
236
  }
237
+ /**
238
+ * Claim a faucet-sponsored identity from PROOFS SOMEBODY ELSE PRODUCED.
239
+ *
240
+ * The difference from [[claimIdentity]] is the whole point: that one takes an `Identity` —
241
+ * public and private keys — and signs both proofs itself. This one takes public keys and the
242
+ * signatures their holder made elsewhere, so a caller can bring an identity onto the chain for
243
+ * a party whose keys it must never see.
244
+ *
245
+ * ⚠️ THE DIGEST IS RECOMPUTED LOCALLY AND A MISMATCH REFUSES. The node's `/prepare` answers
246
+ * with the bytes it wants signed; `faucetClaimDigest` reproduces them from the same inputs
247
+ * (it is `popCreateIdentity`, a described codec with a purpose tag and a golden vector). A
248
+ * party that supplies the bytes to be signed is a party choosing what gets signed, so the
249
+ * proofs are only forwarded once we can reproduce what they cover.
250
+ *
251
+ * ⚠️ BOTH KEYS, EXACTLY: the chain requires one `BLS12-381-G1` and one `Ed25519`, each at
252
+ * label `""`. A claim missing one is not refused at admit — it is ordered and FINED.
253
+ *
254
+ * The NODE pays here (its sponsorship cost plus the standard starting credit), so nothing
255
+ * about the caller's balance bounds how many of these succeed. The node's does.
256
+ */
257
+ async claimIdentityWithProofs(args) {
258
+ const expected = faucetClaimDigestFor(args.nodeId, args.blsPublicKey, args.ed25519PublicKey);
259
+ const pubs = {
260
+ node_id: args.nodeId,
261
+ bls_pubkey_hex: bytesToHex(args.blsPublicKey),
262
+ ed25519_pubkey_hex: bytesToHex(args.ed25519PublicKey),
263
+ };
264
+ const post = async (path, body) => this.fetchImpl(this.url(path), {
265
+ method: "POST",
266
+ headers: { "Content-Type": "application/json", Accept: "application/json" },
267
+ body: JSON.stringify(body),
268
+ });
269
+ try {
270
+ const prep = await post("/api/identity/prepare", pubs);
271
+ const p = (await prep.json().catch(() => ({})));
272
+ if (!prep.ok)
273
+ return { kind: "failed", error: p.error ?? `http_${prep.status}`, message: p.message ?? "" };
274
+ if ((p.tx_hash_hex ?? "").toLowerCase() !== bytesToHex(expected).toLowerCase()) {
275
+ return {
276
+ kind: "failed",
277
+ error: "digest_mismatch",
278
+ message: `server tx_hash ${p.tx_hash_hex} != the digest these proofs can only have been made ` +
279
+ `over — refusing to submit them`,
280
+ };
281
+ }
282
+ const create = await post("/api/identity/create", {
283
+ ...pubs,
284
+ bls_pop_sig_hex: bytesToHex(args.blsPop),
285
+ ed25519_pop_sig_hex: bytesToHex(args.ed25519Pop),
286
+ });
287
+ const c = (await create.json().catch(() => ({})));
288
+ if (create.ok)
289
+ return { kind: "committed", blockHeight: c.block_height ?? 0 };
290
+ if (c.error === "identity_already_exists")
291
+ return { kind: "exists" };
292
+ return { kind: "failed", error: c.error ?? `http_${create.status}`, message: c.message ?? "" };
293
+ }
294
+ catch (e) {
295
+ return { kind: "failed", error: "internal", message: e instanceof Error ? e.message : String(e) };
296
+ }
297
+ }
237
298
  /**
238
299
  * GET /api/identity/:nodeId → { nodeId, balance }, or null if not yet on-chain.
239
300
  *
@@ -263,15 +324,105 @@ export class NodeClient {
263
324
  const b = (await res.json());
264
325
  return b.blocks && b.blocks.length > 0 ? b.blocks[0].roundNum : 0;
265
326
  }
266
- /** Members of a group, from the on-chain group_members (/api/explorer/groups/:g/members). */
267
- async getGroupMembers(group) {
327
+ /**
328
+ * One group and its members, or `null` when this node holds no group of that name.
329
+ *
330
+ * ⚠️ `null` IS AN ANSWER; A THROW IS NOT. The explorer answers 404 for a name it has no group
331
+ * row for, so `null` means "the chain says this is not a group" — while an unreadable chain
332
+ * throws. Nothing could tell those apart before: `getGroupMembers` threw for both, so a caller
333
+ * had to treat a network failure as evidence about the world. Same convention as
334
+ * `getIdentity`, deliberately.
335
+ *
336
+ * ⚠️ A GROUP WITH NO MEMBERS ANSWERS `{ members: [] }`, WHICH IS NOT `null`. Absence of members
337
+ * is not absence of the group, and a caller deciding whether a name exists must not read the
338
+ * empty list as "no such group".
339
+ *
340
+ * It does NOT report who owns the group. The node offers an owner only on the whole-list route
341
+ * (`/api/explorer/groups`, unpaged), so answering about one group would mean pulling every group
342
+ * on somebody else's chain.
343
+ *
344
+ * ⚠️ Like every committed-state read, this answers AS OF THE NODE'S APPLIED POSITION. On a
345
+ * processing node a group that has been committed but not yet applied reads as `null` — "not
346
+ * yet", not "no". Ask a fully-applied node when the question is whether a name is taken.
347
+ */
348
+ async getGroup(group) {
268
349
  const res = await this.fetchImpl(this.url(`/api/explorer/groups/${encodeURIComponent(group)}/members`), {
269
350
  headers: { Accept: "application/json" },
270
351
  });
352
+ if (res.status === 404)
353
+ return null;
354
+ if (!res.ok)
355
+ throw new Error(`getGroup ${group}: HTTP ${res.status}`);
356
+ const b = (await res.json());
357
+ return { ledgerId: b.ledgerId ?? group, members: b.members ?? [] };
358
+ }
359
+ /** Members of a group that is expected to exist; throws when it does not.
360
+ *
361
+ * One transport, expressed through `getGroup` — the URL and the parsing live in exactly one
362
+ * place. Kept because a caller that already knows the group exists should not have to handle a
363
+ * `null` it has ruled out; a caller ASKING whether it exists wants `getGroup`. */
364
+ async getGroupMembers(group) {
365
+ const found = await this.getGroup(group);
366
+ if (found === null)
367
+ throw new Error(`getGroupMembers ${group}: HTTP 404`);
368
+ return found.members;
369
+ }
370
+ /** Every group on the chain, with its member count and its owner.
371
+ *
372
+ * ⚠️ UNPAGED, because the node's route is: `/api/explorer/groups` returns all of them in one
373
+ * response. That is the node's shape, not a choice made here, and it is why a caller wanting
374
+ * ONE group's members uses `getGroup` instead of filtering this. */
375
+ async listGroups() {
376
+ const res = await this.fetchImpl(this.url("/api/explorer/groups"), {
377
+ headers: { Accept: "application/json" },
378
+ });
271
379
  if (!res.ok)
272
- throw new Error(`getGroupMembers ${group}: HTTP ${res.status}`);
380
+ throw new Error(`listGroups: HTTP ${res.status}`);
273
381
  const b = (await res.json());
274
- return b.members ?? [];
382
+ return b.groups ?? [];
383
+ }
384
+ /** Who owns each claimed ledger, paged.
385
+ *
386
+ * The caller bounds the walk: this returns one page and the total, and does not loop. An
387
+ * ownership check is a tripwire on a hot path, not an audit, so the bound belongs to whoever
388
+ * is asking. */
389
+ async listLedgerOwners(limit = 200, offset = 0) {
390
+ const res = await this.fetchImpl(this.url(`/api/explorer/ledger-owners?limit=${limit}&offset=${offset}`), { headers: { Accept: "application/json" } });
391
+ if (!res.ok)
392
+ throw new Error(`listLedgerOwners: HTTP ${res.status}`);
393
+ const b = (await res.json());
394
+ return { owners: b.owners ?? [], total: b.total ?? 0 };
395
+ }
396
+ /**
397
+ * One channel's terms: who administers it, what it charges, its data-availability and write
398
+ * policies (156).
399
+ *
400
+ * ⚠️ IT NEVER ANSWERS "NO SUCH CHANNEL", and that is not an omission here — the node has no
401
+ * 404 branch for it. **A channel is not a registered entity**: any ledger id that is not a core
402
+ * ledger is a channel, and it either carries terms or carries the defaults. So this returns a
403
+ * value or throws, and it is the one read on this client that does NOT follow `getIdentity`'s
404
+ * null-means-absent convention, because there is no absence to report.
405
+ *
406
+ * ⚠️ A caller asking "is this claimed?" reads `owners.length === 0` — and on a PROCESSING NODE
407
+ * that means "not claimed as of my cursor", which is how a service nearly claimed a channel
408
+ * somebody else already owned (evolver#85). Ask a fully-applied node when the answer matters.
409
+ *
410
+ * Amounts arrive as decimal strings and are returned as `bigint` (Constitution VIII).
411
+ */
412
+ async getChannelTerms(ledgerId) {
413
+ const res = await this.fetchImpl(this.url(`/api/explorer/channels/${encodeURIComponent(ledgerId)}`), { headers: { Accept: "application/json" } });
414
+ if (!res.ok)
415
+ throw new Error(`getChannelTerms ${ledgerId}: HTTP ${res.status}`);
416
+ const b = (await res.json());
417
+ return {
418
+ ledgerId: b.ledgerId ?? ledgerId,
419
+ owners: b.owners ?? [],
420
+ // Every key is always present with absence as null (156), so `null` here is the chain
421
+ // saying "no toll", not a field that failed to arrive.
422
+ toll: b.toll ? { amount: BigInt(b.toll.amount ?? "0"), recipient: b.toll.recipient ?? "" } : null,
423
+ da: b.da ? { group: b.da.group ?? "", thresholdM: b.da.thresholdM ?? 0 } : null,
424
+ writePolicy: b.writePolicy ?? null,
425
+ };
275
426
  }
276
427
  /**
277
428
  * Principal name search (`/api/explorer/search`) — the read behind a recipient picker.
package/dist/api.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,EAAE;AACF,+EAA+E;AAC/E,4EAA4E;AAC5E,uEAAuE;AAEvE,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAE7C,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAiB,MAAM,eAAe,CAAC;AACvF,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAQ9C,SAAS,eAAe,CAAC,CAAS;IAChC,oFAAoF;IACpF,qFAAqF;IACrF,OAAO,CAAE,eAAqC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAkB,CAAC;AAChG,CAAC;AAED,SAAS,aAAa,CAAC,GAAW;IAChC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC;IACtB,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACvC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE;QAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAChE,OAAO,GAAG,CAAC;AACb,CAAC;AASD;gFACgF;AAChF,MAAM,kBAAkB,GAAG,OAAO,CAAC;AAEnC;qFACqF;AACrF,SAAS,cAAc,CAAC,KAAa,EAAE,IAAY,EAAE,oBAA+B;IAClF,MAAM,OAAO,GAA2B;QACtC,cAAc,EAAE,0BAA0B;QAC1C,gBAAgB,EAAE,MAAM,CAAC,IAAI,CAAC;KAC/B,CAAC;IACF,MAAM,QAAQ,GAAG,oBAAoB,IAAI,EAAE,CAAC;IAC5C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACzE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAC5C,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,qFAAqF,CAAC,CAAC;IACjH,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,CAAC,gCAAgC,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,0FAA0F;AAC1F,SAAS,cAAc,CAAC,KAAa,EAAE,MAAc,EAAE,IAAY,EAAE,IAAY;IAC/E,IAAI,MAAM,KAAK,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,UAAU,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;IACxE,IAAI,IAAI,GAAoC,EAAE,CAAC;IAC/C,IAAI,CAAC;QAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAoC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;IAClG,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,sBAAsB,CAAC,CAAC;IAC/D,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE,CAAC;AACpD,CAAC;AAsBD,KAAK,UAAU,cAAc,CAAI,IAAY;IAC3C,IAAI,CAAC;QAAC,OAAO,CAAC,MAAM,MAAM,CAAC,kBAAkB,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAM,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC;QAAC,OAAO,IAAI,CAAC;IAAC,CAAC;AAC/F,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,cAAc,CAC3B,GAAW,EACX,OAA+B,EAC/B,IAAgC,EAChC,YAAoB;IAEpB,MAAM,QAAQ,GAAI,UAA6D,CAAC,OAAO,EAAE,QAAQ,CAAC;IAClG,IAAI,OAAO,QAAQ,EAAE,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IACpD,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC;IACrE,MAAM,IAAI,GAAG,MAAM,cAAc,CAAiB,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,OAAO,GAAG,MAAM,cAAc,CAAmB,QAAQ,CAAC,CAAC;IACjE,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACnD,OAAO,MAAM,IAAI,OAAO,CAAmC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7E,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,GAAS,EAAE,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,OAAO,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC,CAAC,CAAC,CAAC;QAC5F,MAAM,QAAQ,GAAG,CAAC,CAAU,EAAQ,EAAE;YACpC,IAAI,CAAC,OAAO,EAAE,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,MAAM,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,CAAC;QAC1F,CAAC,CAAC;QACF,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;YACjE,MAAM,GAAG,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YACjE,GAAG,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACxB,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YACtB,GAAG,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC1B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1B,CAAC,CAAC,CAAC;QACH,sCAAsC;QACtC,GAAG,CAAC,UAAU,CAAC,YAAY,EAAE,GAAG,EAAE,CAChC,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,0CAA0C,YAAY,MAAM,CAAC,CAAC,CAAC,CAAC;QACxF,qFAAqF;QACrF,uFAAuF;QACvF,yEAAyE;QACzE,IAAI,UAAU,GAAY,IAAI,CAAC;QAC/B,MAAM,WAAW,GAAG,CAAC,CAAU,EAAQ,EAAE,GAAG,IAAI,UAAU,KAAK,IAAI;YAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACvF,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;QAC7B,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACnB,IAAI,OAAO;gBAAE,OAAO;YACpB,IAAI,MAAM,KAAK,CAAC;gBAAE,MAAM,EAAE,CAAC;;gBACtB,QAAQ,CAAC,UAAU,IAAI,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC,CAAC;QAC7E,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,OAAO,UAAU;IACJ,OAAO,CAAS;IAChB,cAAc,CAAS;IACvB,SAAS,CAAe;IAEzC,YAAY,OAAuB,EAAE;QACnC,IAAI,CAAC,OAAO,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACrF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC;IACvC,CAAC;IAEO,GAAG,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IAC7B,CAAC;IAEO,UAAU,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;IACpC,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,QAAQ,CAAC,QAAoB;QACjC,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE;gBACtD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACjF,IAAI,EAAE,QAAoB;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACpH,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,cAAc,CAAC,QAAoB;QACvC,IAAI,IAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC,EAAE;gBAC9D,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE,EAAE,cAAc,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE;gBACjF,IAAI,EAAE,QAAoB;aAC3B,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACrG,CAAC;QACD,IAAI,IAAa,CAAC;QAClB,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACpH,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAC;IAC3B,CAAC;IAED;;;;;;;OAOG;IACH,KAAK,CAAC,aAAa,CAAC,EAAY;QAC9B,MAAM,MAAM,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;QACrC,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,EAAE,CAAC,MAAM;YAClB,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;YACtC,kBAAkB,EAAE,UAAU,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;SAC1C,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,IAAY,EAAE,EAAE,CAChD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC3E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QACL,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAA+D,CAAC;YAC9G,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC3G,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC7E,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EAAE,kBAAkB,CAAC,CAAC,WAAW,oDAAoD;iBAC7F,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAChD,GAAG,IAAI;gBACP,eAAe,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzD,mBAAmB,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;aAC5D,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgE,CAAC;YACjH,IAAI,MAAM,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;YAC9E,IAAI,CAAC,CAAC,KAAK,KAAK,yBAAyB;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACrE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACjG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;OAmBG;IACH,KAAK,CAAC,uBAAuB,CAAC,IAM7B;QACC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7F,MAAM,IAAI,GAAG;YACX,OAAO,EAAE,IAAI,CAAC,MAAM;YACpB,cAAc,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;YAC7C,kBAAkB,EAAE,UAAU,CAAC,IAAI,CAAC,gBAAgB,CAAC;SACtD,CAAC;QACF,MAAM,IAAI,GAAG,KAAK,EAAE,IAAY,EAAE,IAAY,EAAE,EAAE,CAChD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE;YAC3E,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAC;QACL,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,CAAC;YACvD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAA+D,CAAC;YAC9G,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,IAAI,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;YAC3G,IAAI,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,UAAU,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;gBAC/E,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,iBAAiB;oBACxB,OAAO,EACL,kBAAkB,CAAC,CAAC,WAAW,sDAAsD;wBACrF,gCAAgC;iBACnC,CAAC;YACJ,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,EAAE;gBAChD,GAAG,IAAI;gBACP,eAAe,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;gBACxC,mBAAmB,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;aACjD,CAAC,CAAC;YACH,MAAM,CAAC,GAAG,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAgE,CAAC;YACjH,IAAI,MAAM,CAAC,EAAE;gBAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,CAAC,YAAY,IAAI,CAAC,EAAE,CAAC;YAC9E,IAAI,CAAC,CAAC,KAAK,KAAK,yBAAyB;gBAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;YACrE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,QAAQ,MAAM,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;QACjG,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;QACpG,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,WAAW,CAAC,MAAc;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,kBAAkB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1F,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,eAAe,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyC,CAAC;QACrE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IAC3D,CAAC;IAED,+FAA+F;IAC/F,KAAK,CAAC,YAAY;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,uCAAuC,CAAC,EAAE;YAClF,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA6C,CAAC;QACzE,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACH,KAAK,CAAC,QAAQ,CAAC,KAAa;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,wBAAwB,kBAAkB,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE;YACtG,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACpC,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,YAAY,KAAK,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACtE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA8C,CAAC;QAC1E,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;IACrE,CAAC;IAED;;;;uFAImF;IACnF,KAAK,CAAC,eAAe,CAAC,KAAa;QACjC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,KAAK,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,YAAY,CAAC,CAAC;QAC1E,OAAO,KAAK,CAAC,OAAO,CAAC;IACvB,CAAC;IAED;;;;yEAIqE;IACrE,KAAK,CAAC,UAAU;QACd,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,sBAAsB,CAAC,EAAE;YACjE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/D,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAiF,CAAC;QAC7G,OAAO,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC;IACxB,CAAC;IAED;;;;qBAIiB;IACjB,KAAK,CAAC,gBAAgB,CACpB,KAAK,GAAG,GAAG,EACX,MAAM,GAAG,CAAC;QAEV,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAC9B,IAAI,CAAC,GAAG,CAAC,qCAAqC,KAAK,WAAW,MAAM,EAAE,CAAC,EACvE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAC5C,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,0BAA0B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACrE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAG1B,CAAC;QACF,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;IACzD,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,eAAe,CAAC,QAAgB;QAOpC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAC9B,IAAI,CAAC,GAAG,CAAC,0BAA0B,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,EAClE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAC5C,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAChF,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAM1B,CAAC;QACF,OAAO;YACL,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,QAAQ;YAChC,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;YACtB,sFAAsF;YACtF,uDAAuD;YACvD,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI;YACjG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI;YAC/E,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;SACnC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,KAAK,CAAC,gBAAgB,CAAC,CAAS;QAC9B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,0BAA0B,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC5F,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,UAAU,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAA2E,CAAC;QACvG,OAAO,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;IACzB,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,kBAAkB,CAAC,KAAK,GAAG,EAAE,EAAE,MAAM,GAAG,CAAC;QAQ7C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAC9B,IAAI,CAAC,GAAG,CAAC,oCAAoC,KAAK,WAAW,MAAM,EAAE,CAAC,EACtE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,EAAE,CAC5C,CAAC;QACF,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QACvE,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAK1B,CAAC;QACF,OAAO,CAAC,CAAC,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,MAAM,GAAG,CAAC;QACnC,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,4BAA4B,KAAK,WAAW,MAAM,EAAE,CAAC,EAAE;YAC/F,OAAO,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;SACxC,CAAC,CAAC;QACH,IAAI,CAAC,GAAG,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5D,MAAM,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAyB,CAAC;QACrD,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IACtB,CAAC;IAED;;;;;;;;;6BASyB;IACzB,KAAK,CAAC,WAAW,CACf,KAAiB,EACjB,IAA0C;QAE1C,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,KAAiB,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,oBAAoB,CAAC,CAAC;IAC1G,CAAC;IAED;;;;;;;;;6FASyF;IACzF,KAAK,CAAC,iBAAiB,CACrB,IAAgC,EAChC,IAAuD;QAEvD,MAAM,KAAK,GAAG,mBAAmB,CAAC;QAClC,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACrG,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5F,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAA2B,EAAE,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,KAAa,EACb,IAAc,EACd,IAAY,EACZ,oBAA+B;QAE/B,OAAO,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,EAAE,cAAc,CAAC,KAAK,EAAE,IAAI,EAAE,oBAAoB,CAAC,EAAE,IAAI,CAAC,CAAC;IACjG,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,KAAa,EACb,IAAc,EACd,OAA+B,EAC/B,IAAY;QAEZ,8EAA8E;QAC9E,MAAM,IAAI,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAiB,CAAC;QAC9E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,CAAC;QACrE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;QACzF,OAAO,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,6GAA6G;IAC7G,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;QAC7C,IAAI,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC9B,MAAM,KAAK,GAAiB,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;QACtC,SAAS,CAAC;YACR,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,MAAM;YAChB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpB,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;QACpE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;YAAC,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC;QAAC,CAAC;QAC5D,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;wDAMoD;IACpD,KAAK,CAAC,gBAAgB,CACpB,GAAW,EACX,IAAwD;QAExD,MAAM,OAAO,GAA2B,EAAE,CAAC;QAC3C,IAAI,IAAI,EAAE,KAAK;YAAE,OAAO,CAAC,OAAO,CAAC,GAAG,SAAS,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QACzF,gFAAgF;QAChF,qFAAqF;QACrF,gCAAgC;QAChC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,YAAY,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;QACtH,IAAI,IAAI,CAAC,MAAM,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC3F,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC9D,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC;YACzC,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,0BAA0B,CAAC,CAAC;QAClF,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC;QACzF,8EAA8E;QAC9E,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,MAAM,KAAK,GAAG,IAAI,eAAe,CAAyB;YACxD,SAAS,CAAC,KAAK,EAAE,IAAI,IAAI,IAAI,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACrE,KAAK,KAAK,IAAI,IAAI,KAAK,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,IAAI,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC;SACpG,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACxD,CAAC;IAED,kFAAkF;IAClF,KAAK,CAAC,WAAW,CAAC,KAAa,EAAE,KAAa;QAC5C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,2BAA2B,KAAK,UAAU,KAAK,EAAE,CAAC,CAAC,CAAC;QAC9F,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC;YACH,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACzD,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;QACpE,CAAC;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,YAAY,CAChB,KAAuC,EACvC,SAAgD,EAChD,OAA8D,EAAE;QAEhE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC;QACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC;QAClC,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QAEpE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAC7B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,IAAI,IAAI,GAAG,CAAC,CAAC;QAEb,OAAO,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC/C,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC;gBACjB,KAAK,SAAS;oBACZ,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxB,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;oBACxB,MAAM,SAAS,CAAC;wBACd,KAAK;wBACL,KAAK;wBACL,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE;wBAClB,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,EAAE;wBAC1B,MAAM,EAAE,CAAC,CAAC,MAAM,IAAI,EAAE;wBACtB,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;qBAClC,CAAC,CAAC;oBACH,KAAK,IAAI,CAAC,CAAC;oBACX,IAAI,IAAI,CAAC,CAAC;oBACV,IAAI,GAAG,CAAC,CAAC;oBACT,MAAM;gBACR,KAAK,cAAc;oBACjB,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAC5B,KAAK,GAAG,CAAC,CAAC;oBACV,IAAI,GAAG,CAAC,CAAC;oBACT,MAAM;gBACR,KAAK,cAAc,CAAC;gBACpB,KAAK,WAAW;oBACd,IAAI,IAAI,CAAC,CAAC;oBACV,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC;oBACpB,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;QACH,CAAC;QACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAC1B,CAAC;CACF;AAED,SAAS,WAAW,CAAC,IAAa;IAChC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;QAC9C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,qBAAqB,EAAE,CAAC;IAChF,CAAC;IACD,MAAM,CAAC,GAAG,IAA+B,CAAC;IAC1C,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5D,IAAI,MAAM,KAAK,WAAW,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAClH,IAAI,MAAM,KAAK,SAAS,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAC9G,mFAAmF;IACnF,+FAA+F;IAC/F,wFAAwF;IACxF,2FAA2F;IAC3F,+FAA+F;IAC/F,8EAA8E;IAC9E,yFAAyF;IACzF,6FAA6F;IAC7F,gGAAgG;IAChG,yCAAyC;IACzC,IAAI,MAAM,KAAK,UAAU,IAAI,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC1D,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IACnD,IAAI,MAAM,KAAK,SAAS;QACtB,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC;IAClH,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;QACvF,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC;QACxF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7C,CAAC;IACD,2FAA2F;IAC3F,sFAAsF;IACtF,0FAA0F;IAC1F,0FAA0F;IAC1F,0FAA0F;IAC1F,cAAc;IACd,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;YAChF,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACvD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE;SAC5D,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,KAAK,QAAQ,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC;QACrF,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,sFAAsF;QACtF,+DAA+D;QAC/D,OAAO,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;YACpC,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,SAAS,EAAE;YAC3D,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC1C,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,0BAA0B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;AAC3G,CAAC"}
package/dist/bodies.d.ts CHANGED
@@ -40,6 +40,15 @@ export interface ReplaceKeyArgs {
40
40
  * two descriptions carry different tags. */
41
41
  export declare function replaceKeyInner(args: ReplaceKeyArgs): Uint8Array;
42
42
  export declare function replaceKeyBody(args: ReplaceKeyArgs): Uint8Array;
43
+ /** DeleteIdentityTxBody{ target_node_id = 1 } as TxBody.delete_identity = 2.
44
+ *
45
+ * ⚠️ SELF-DELETION ONLY, AND IRREVERSIBLE. The chain fines a transaction whose sender is not the
46
+ * target, refuses one whose target is a quorum member, and refuses one whose target still has
47
+ * dependents (a group it owns, a membership, a ledger, a committee proposal, tickets, a toll it
48
+ * receives). What it does NOT do is give the name back: a deleted name is free for anyone to
49
+ * take, and a proof already issued naming it keeps working for whoever takes it next
50
+ * (157 FR-026a). The balance is forfeited. */
51
+ export declare function deleteIdentityBody(targetNodeId: string): Uint8Array;
43
52
  export declare function deleteKeyBody(args: {
44
53
  keyType: string;
45
54
  keyLabel: string;
@@ -68,6 +77,24 @@ export declare function transferBody(entries: TransferEntryArg[]): Uint8Array;
68
77
  export declare function createGroupBody(name: string): Uint8Array;
69
78
  export declare function addMemberBody(groupName: string, memberNodeId: string): Uint8Array;
70
79
  export declare function removeMemberBody(groupName: string, memberNodeId: string): Uint8Array;
80
+ /** DeleteGroupTxBody{ group_name = 1 } as GroupTxBody.delete_group = 4.
81
+ *
82
+ * The chain fines this unless the sender owns the group, and refuses it while the group still
83
+ * owns a ledger or serves as a channel's data-availability group — none of which is checked
84
+ * here. A builder that duplicated the ledger's rules would be a second copy of them, going
85
+ * stale the moment the ledger changed. */
86
+ export declare function deleteGroupBody(groupName: string): Uint8Array;
87
+ /** TransferGroupOwnershipTxBody{ group_name = 1, new_owner_node_id = 2 } as
88
+ * GroupTxBody.transfer_ownership = 5.
89
+ *
90
+ * ⚠️ THE TRANSACTION THIS BUILDS IS NOT COMPLETE. The chain requires an auth from the INCOMING
91
+ * owner as well as the sender's, and fines the transaction as "missing co-signer auth" without
92
+ * it. Handing a group over needs the other party's consent, by construction — 055 made adding a
93
+ * member the owner's decision alone and made this one mutual. */
94
+ export declare function transferGroupOwnershipBody(args: {
95
+ groupName: string;
96
+ newOwnerNodeId: string;
97
+ }): Uint8Array;
71
98
  /** 156 — a channel's write policy. "owner_or_group" is the default and today's
72
99
  * behaviour; "open" admits any identity while leaving ADMINISTRATION with the owner. */
73
100
  export type WritePolicy = "owner_or_group" | "open";
@@ -1 +1 @@
1
- {"version":3,"file":"bodies.d.ts","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,eAAO,MAAM,MAAM;;;;CAIT,CAAC;AAeX;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,GAAG,MAAM,EAC9B,IAAI,EAAE,QAAQ,EAAE,EAChB,OAAO,EAAE,OAAO,GACf,UAAU,CAOZ;AAED,+EAA+E;AAC/E,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,UAAU,GAAG,UAAU,CAEhE;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;;sGAIsG;AACtG,wBAAgB,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAOxD;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU,CAEvD;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,UAAU,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,UAAU,CAAC;CAC1B;AAED;;;6CAG6C;AAC7C,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAOhE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,UAAU,CAE/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,UAAU,CAIrF;AAED,qFAAqF;AACrF,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB;wFACoF;IACpF,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAKpE;AAKD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAExD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAEjF;AAED,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,UAAU,CAEpF;AASD;yFACyF;AACzF,MAAM,MAAM,WAAW,GAAG,gBAAgB,GAAG,MAAM,CAAC;AASpD,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B,GAAG,UAAU,CAab;AAID,wBAAgB,4BAA4B,CAAC,IAAI,EAAE;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;CAC1B,GAAG,UAAU,CAIb;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,UAAU,CAE5D;AAID,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,UAAU,CAKb;AAID,wBAAgB,WAAW,CAAC,OAAO,EAAE,UAAU,GAAG,UAAU,CAE3D"}
1
+ {"version":3,"file":"bodies.d.ts","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"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"}
package/dist/bodies.js CHANGED
@@ -60,6 +60,17 @@ export function replaceKeyInner(args) {
60
60
  export function replaceKeyBody(args) {
61
61
  return concat(fMessage(4, replaceKeyInner(args))); // TxBody.replace_key = 4
62
62
  }
63
+ /** DeleteIdentityTxBody{ target_node_id = 1 } as TxBody.delete_identity = 2.
64
+ *
65
+ * ⚠️ SELF-DELETION ONLY, AND IRREVERSIBLE. The chain fines a transaction whose sender is not the
66
+ * target, refuses one whose target is a quorum member, and refuses one whose target still has
67
+ * dependents (a group it owns, a membership, a ledger, a committee proposal, tickets, a toll it
68
+ * receives). What it does NOT do is give the name back: a deleted name is free for anyone to
69
+ * take, and a proof already issued naming it keeps working for whoever takes it next
70
+ * (157 FR-026a). The balance is forfeited. */
71
+ export function deleteIdentityBody(targetNodeId) {
72
+ return concat(fMessage(2, concat(fString(1, targetNodeId))));
73
+ }
63
74
  export function deleteKeyBody(args) {
64
75
  // DeleteKeyTxBody: 1 key_type | 2 key_label
65
76
  const inner = concat(fString(1, args.keyType), fString(2, args.keyLabel));
@@ -93,6 +104,25 @@ export function addMemberBody(groupName, memberNodeId) {
93
104
  export function removeMemberBody(groupName, memberNodeId) {
94
105
  return concat(fMessage(3, concat(fString(1, groupName), fString(2, memberNodeId))));
95
106
  }
107
+ /** DeleteGroupTxBody{ group_name = 1 } as GroupTxBody.delete_group = 4.
108
+ *
109
+ * The chain fines this unless the sender owns the group, and refuses it while the group still
110
+ * owns a ledger or serves as a channel's data-availability group — none of which is checked
111
+ * here. A builder that duplicated the ledger's rules would be a second copy of them, going
112
+ * stale the moment the ledger changed. */
113
+ export function deleteGroupBody(groupName) {
114
+ return concat(fMessage(4, concat(fString(1, groupName))));
115
+ }
116
+ /** TransferGroupOwnershipTxBody{ group_name = 1, new_owner_node_id = 2 } as
117
+ * GroupTxBody.transfer_ownership = 5.
118
+ *
119
+ * ⚠️ THE TRANSACTION THIS BUILDS IS NOT COMPLETE. The chain requires an auth from the INCOMING
120
+ * owner as well as the sender's, and fines the transaction as "missing co-signer auth" without
121
+ * it. Handing a group over needs the other party's consent, by construction — 055 made adding a
122
+ * member the owner's decision alone and made this one mutual. */
123
+ export function transferGroupOwnershipBody(args) {
124
+ return concat(fMessage(5, concat(fString(1, args.groupName), fString(2, args.newOwnerNodeId))));
125
+ }
96
126
  /** Wire value for a write policy. Anything but "open" is the proto3 zero, which is the
97
127
  * default — an unrecognised value must NARROW, never widen: guessing "open" on a typo
98
128
  * would hand write access to everyone. */
@@ -1 +1 @@
1
- {"version":3,"file":"bodies.js","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,EAAE;AACF,8EAA8E;AAC9E,oDAAoD;AACpD,kEAAkE;AAClE,EAAE;AACF,8EAA8E;AAC9E,2CAA2C;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC;AAGvE,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,4BAA4B;IACtC,MAAM,EAAE,0BAA0B;IAClC,MAAM,EAAE,0BAA0B;CAC1B,CAAC;AAEX,gFAAgF;AAChF,kFAAkF;AAElF,6EAA6E;AAC7E,SAAS,cAAc,CAAC,CAAW,EAAE,OAAgB;IACnD,OAAO;QACL,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;QACxB,GAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC;QACzB,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACnD,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,aAA8B,EAC9B,IAAgB,EAChB,OAAgB;IAEhB,yEAAyE;IACzE,OAAO,MAAM,CACX,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,EAClB,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,EACzB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CACpE,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,kBAAkB,CAAC,KAAiB;IAClD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;AACpC,CAAC;AASD;;;;sGAIsG;AACtG,MAAM,UAAU,WAAW,CAAC,IAAgB;IAC1C,OAAO,MAAM,CACX,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EACzB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EACxB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EACzB,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAAgB;IACzC,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,qBAAqB;AACtE,CAAC;AASD;;;6CAG6C;AAC7C,MAAM,UAAU,eAAe,CAAC,IAAoB;IAClD,OAAO,MAAM,CACX,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,EACzB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EACxB,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EACzB,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,CACjE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAAoB;IACjD,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAyB;AAC9E,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAA2C;IACvE,4CAA4C;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1E,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,wBAAwB;AAC7D,CAAC;AAUD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,YAAY,CAAC,OAA2B;IACtD,MAAM,KAAK,GAAG,MAAM,CAClB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAC1F,CAAC;IACF,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,sBAAsB;AAC3D,CAAC;AAED,gFAAgF;AAChF,wEAAwE;AAExE,MAAM,UAAU,eAAe,CAAC,IAAY;IAC1C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC;AACxF,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,SAAiB,EAAE,YAAoB;IACnE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,SAAiB,EAAE,YAAoB;IACtE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACtF,CAAC;AAaD;;2CAE2C;AAC3C,SAAS,eAAe,CAAC,CAA0B;IACjD,OAAO,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,IAQzB;IACC,MAAM,KAAK,GAAa,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvD,IAAI,IAAI,CAAC,UAAU;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,IAAI,IAAI,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,YAAY;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,2BAA2B;IAChG,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAClG,IAAI,IAAI,CAAC,aAAa;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACtE,wFAAwF;IACxF,sFAAsF;IACtF,qFAAqF;IACrF,uDAAuD;IACvD,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1G,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAyB;AACtE,CAAC;AAED,6EAA6E;AAC7E,sEAAsE;AACtE,MAAM,UAAU,4BAA4B,CAAC,IAG5C;IACC,MAAM,KAAK,GAAa,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvD,IAAI,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1G,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,+CAA+C;AAC5F,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAAgB;IAC9C,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,0BAA0B;AACtF,CAAC;AAED,yFAAyF;AACzF,mFAAmF;AACnF,MAAM,UAAU,qBAAqB,CAAC,IAIrC;IACC,MAAM,KAAK,GAAa,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IACvD,IAAI,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAClG,IAAI,IAAI,CAAC,aAAa;QAAE,KAAK,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACtE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,uCAAuC;AACpF,CAAC;AAED,gFAAgF;AAChF,6DAA6D;AAC7D,MAAM,UAAU,WAAW,CAAC,OAAmB;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAGD,gFAAgF;AAChF,EAAE;AACF,+FAA+F;AAC/F,gGAAgG;AAChG,8FAA8F;AAC9F,yFAAyF;AACzF,EAAE;AACF,+FAA+F;AAC/F,iGAAiG;AACjG,mGAAmG;AACnG,8FAA8F"}
1
+ {"version":3,"file":"bodies.js","sourceRoot":"","sources":["../src/bodies.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,13 @@ export declare const FAUCET_SPONSORED_CREDIT = 5000;
12
12
  * node's /api/identity/prepare returns as tx_hash_hex. Recomputing it locally lets
13
13
  * the claimer refuse to PoP-sign server-chosen bytes. */
14
14
  export declare function faucetClaimDigest(id: Identity): Uint8Array;
15
+ /** The same digest from PUBLIC keys alone — for a caller claiming an identity on behalf of
16
+ * whoever holds the private halves, who signed the proofs elsewhere.
17
+ *
18
+ * ⚠️ One implementation, two entry points: the version above is this one with the public halves
19
+ * taken off an `Identity`. Two copies of a digest recipe is how the two drift, and this recipe
20
+ * decides whether a proof verifies. */
21
+ export declare function faucetClaimDigestFor(nodeId: string, blsPub: Uint8Array, edPub32: Uint8Array): Uint8Array;
15
22
  /** CreateIdentity tx_body for `id`, with PoP signed by `id`'s own keys. */
16
23
  export declare function createIdentityBodyFor(id: Identity, initialCredit: number | bigint): Uint8Array;
17
24
  //# sourceMappingURL=identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAUA,OAAO,EAA+C,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGhH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;CACf;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAEpD;AAED;kFACkF;AAClF,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C;;0DAE0D;AAC1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,CAa1D;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAgB9F"}
1
+ {"version":3,"file":"identity.d.ts","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAUA,OAAO,EAA+C,KAAK,UAAU,EAAE,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAGhH,MAAM,WAAW,QAAQ;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,SAAS,CAAC;CACf;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,QAAQ,CAEpD;AAED;kFACkF;AAClF,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAE5C;;0DAE0D;AAC1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,CAE1D;AAED;;;;;wCAKwC;AACxC,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,UAAU,GAClB,UAAU,CAaZ;AAED,2EAA2E;AAC3E,wBAAgB,qBAAqB,CAAC,EAAE,EAAE,QAAQ,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAgB9F"}
package/dist/identity.js CHANGED
@@ -18,15 +18,24 @@ export const FAUCET_SPONSORED_CREDIT = 5000;
18
18
  * node's /api/identity/prepare returns as tx_hash_hex. Recomputing it locally lets
19
19
  * the claimer refuse to PoP-sign server-chosen bytes. */
20
20
  export function faucetClaimDigest(id) {
21
+ return faucetClaimDigestFor(id.nodeId, id.bls.pub, id.ed.pub);
22
+ }
23
+ /** The same digest from PUBLIC keys alone — for a caller claiming an identity on behalf of
24
+ * whoever holds the private halves, who signed the proofs elsewhere.
25
+ *
26
+ * ⚠️ One implementation, two entry points: the version above is this one with the public halves
27
+ * taken off an `Identity`. Two copies of a digest recipe is how the two drift, and this recipe
28
+ * decides whether a proof verifies. */
29
+ export function faucetClaimDigestFor(nodeId, blsPub, edPub32) {
21
30
  const keysNoPoP = [
22
- { keyType: "BLS12-381-G1", publicKey: id.bls.pub, keyLabel: "" },
23
- { keyType: "Ed25519", publicKey: edPubToSpki(id.ed.pub), keyLabel: "" },
31
+ { keyType: "BLS12-381-G1", publicKey: blsPub, keyLabel: "" },
32
+ { keyType: "Ed25519", publicKey: edPubToSpki(edPub32), keyLabel: "" },
24
33
  ];
25
34
  // 148 — canonical PoP encoding, matching the node. This value is recomputed locally and
26
35
  // compared against the server's tx_hash before signing, so a mismatch REFUSES rather than
27
36
  // signs bytes we cannot reproduce.
28
37
  return popCreateIdentity({
29
- nodeId: id.nodeId,
38
+ nodeId,
30
39
  initialCredit: BigInt(FAUCET_SPONSORED_CREDIT),
31
40
  keys: keysNoPoP,
32
41
  });
@@ -1 +1 @@
1
- {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,iFAAiF;AACjF,8FAA8F;AAC9F,8FAA8F;AAC9F,8FAA8F;AAC9F,cAAc;AAEd,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAmC,MAAM,kBAAkB,CAAC;AAShH,MAAM,UAAU,WAAW,CAAC,MAAc;IACxC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;AAChD,CAAC;AAED;kFACkF;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;0DAE0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,EAAY;IAC5C,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE;QAChE,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;KACxE,CAAC;IACF,wFAAwF;IACxF,0FAA0F;IAC1F,mCAAmC;IACnC,OAAO,iBAAiB,CAAC;QACvB,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,uBAAuB,CAAC;QAC9C,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,aAA8B;IAChF,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,iBAAiB;QACnF,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa;KACvF,CAAC;IACF,uEAAuE;IACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,MAAM,WAAW,GAAe;QAC9B,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa;QACzE,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,kBAAkB;KAC7E,CAAC;IACF,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC"}
1
+ {"version":3,"file":"identity.js","sourceRoot":"","sources":["../src/identity.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,EAAE;AACF,iFAAiF;AACjF,8FAA8F;AAC9F,8FAA8F;AAC9F,8FAA8F;AAC9F,cAAc;AAEd,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,EAAmC,MAAM,kBAAkB,CAAC;AAShH,MAAM,UAAU,WAAW,CAAC,MAAc;IACxC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;AAChD,CAAC;AAED;kFACkF;AAClF,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAE5C;;0DAE0D;AAC1D,MAAM,UAAU,iBAAiB,CAAC,EAAY;IAC5C,OAAO,oBAAoB,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;AAChE,CAAC;AAED;;;;;wCAKwC;AACxC,MAAM,UAAU,oBAAoB,CAClC,MAAc,EACd,MAAkB,EAClB,OAAmB;IAEnB,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC5D,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;KACtE,CAAC;IACF,wFAAwF;IACxF,0FAA0F;IAC1F,mCAAmC;IACnC,OAAO,iBAAiB,CAAC;QACvB,MAAM;QACN,aAAa,EAAE,MAAM,CAAC,uBAAuB,CAAC;QAC9C,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,qBAAqB,CAAC,EAAY,EAAE,aAA8B;IAChF,MAAM,SAAS,GAAe;QAC5B,EAAE,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,iBAAiB;QACnF,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,aAAa;KACvF,CAAC;IACF,uEAAuE;IACvE,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;QACpC,IAAI,EAAE,SAAS;KAChB,CAAC,CAAC;IACH,MAAM,WAAW,GAAe;QAC9B,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa;QACzE,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,kBAAkB;KAC7E,CAAC;IACF,OAAO,kBAAkB,CAAC,mBAAmB,CAAC,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;AAC9F,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcsherrylabs/evolver-client",
3
- "version": "0.10.0",
3
+ "version": "0.12.0",
4
4
  "description": "Client SDK for an Evolver node: proto3 wire codec, transaction signing (AuthBodySignable), on-chain + group crypto, and the node HTTP API.",
5
5
  "type": "module",
6
6
  "exports": {