@intent-engine/cli 0.1.49 → 0.1.51

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 (88) hide show
  1. package/dist/src/agent/claim-line.js +13 -6
  2. package/dist/src/agent/claim-line.js.map +1 -1
  3. package/dist/src/agent/create.d.ts +1 -0
  4. package/dist/src/agent/create.js +15 -4
  5. package/dist/src/agent/create.js.map +1 -1
  6. package/dist/src/agent/problems.d.ts +6 -0
  7. package/dist/src/agent/problems.js +6 -0
  8. package/dist/src/agent/problems.js.map +1 -1
  9. package/dist/src/agent/spec.d.ts +1 -0
  10. package/dist/src/agent/spec.js +18 -11
  11. package/dist/src/agent/spec.js.map +1 -1
  12. package/dist/src/agent/wallet/attest.d.ts +7 -0
  13. package/dist/src/agent/wallet/attest.js +21 -6
  14. package/dist/src/agent/wallet/attest.js.map +1 -1
  15. package/dist/src/agent/wallet/committee.js +10 -7
  16. package/dist/src/agent/wallet/committee.js.map +1 -1
  17. package/dist/src/agent/wallet/costs.d.ts +2 -0
  18. package/dist/src/agent/wallet/costs.js +8 -4
  19. package/dist/src/agent/wallet/costs.js.map +1 -1
  20. package/dist/src/agent/wallet/delivery.d.ts +1 -0
  21. package/dist/src/agent/wallet/delivery.js +6 -2
  22. package/dist/src/agent/wallet/delivery.js.map +1 -1
  23. package/dist/src/agent/wallet/escrow-claims.d.ts +26 -0
  24. package/dist/src/agent/wallet/escrow-claims.js +77 -0
  25. package/dist/src/agent/wallet/escrow-claims.js.map +1 -0
  26. package/dist/src/agent/wallet/escrow.d.ts +2 -0
  27. package/dist/src/agent/wallet/escrow.js +56 -30
  28. package/dist/src/agent/wallet/escrow.js.map +1 -1
  29. package/dist/src/agent/wallet/history-work.d.ts +4 -2
  30. package/dist/src/agent/wallet/history-work.js +74 -27
  31. package/dist/src/agent/wallet/history-work.js.map +1 -1
  32. package/dist/src/agent/wallet/history.js +2 -2
  33. package/dist/src/agent/wallet/history.js.map +1 -1
  34. package/dist/src/agent/wallet/receipt.d.ts +42 -0
  35. package/dist/src/agent/wallet/receipt.js +9 -3
  36. package/dist/src/agent/wallet/receipt.js.map +1 -1
  37. package/dist/src/agent/wallet/seal.d.ts +1 -1
  38. package/dist/src/agent/wallet/seal.js +10 -10
  39. package/dist/src/agent/wallet/seal.js.map +1 -1
  40. package/dist/src/agent/wallet/split.js +4 -1
  41. package/dist/src/agent/wallet/split.js.map +1 -1
  42. package/dist/src/agent/wallet/work.d.ts +1 -1
  43. package/dist/src/agent/wallet/work.js +13 -13
  44. package/dist/src/agent/wallet/work.js.map +1 -1
  45. package/dist/src/agent/work-claims.d.ts +4 -0
  46. package/dist/src/agent/work-claims.js +39 -7
  47. package/dist/src/agent/work-claims.js.map +1 -1
  48. package/dist/src/arg-options.d.ts +6 -0
  49. package/dist/src/arg-options.js +6 -5
  50. package/dist/src/arg-options.js.map +1 -1
  51. package/dist/src/arg-usage.js +4 -4
  52. package/dist/src/arg-usage.js.map +1 -1
  53. package/dist/src/arg-values.d.ts +2 -1
  54. package/dist/src/arg-values.js +1 -0
  55. package/dist/src/arg-values.js.map +1 -1
  56. package/dist/src/args.js +7 -4
  57. package/dist/src/args.js.map +1 -1
  58. package/dist/src/claim-commands.js +29 -11
  59. package/dist/src/claim-commands.js.map +1 -1
  60. package/dist/src/claim-lists.d.ts +23 -0
  61. package/dist/src/claim-lists.js +53 -0
  62. package/dist/src/claim-lists.js.map +1 -0
  63. package/dist/src/command-types.d.ts +6 -3
  64. package/dist/src/commands.js +2 -1
  65. package/dist/src/commands.js.map +1 -1
  66. package/dist/src/committee-commands.js +10 -1
  67. package/dist/src/committee-commands.js.map +1 -1
  68. package/dist/src/delivery-fetch.js +14 -5
  69. package/dist/src/delivery-fetch.js.map +1 -1
  70. package/dist/src/invites.d.ts +20 -1
  71. package/dist/src/invites.js +44 -6
  72. package/dist/src/invites.js.map +1 -1
  73. package/dist/src/judge.js +4 -5
  74. package/dist/src/judge.js.map +1 -1
  75. package/dist/src/main.js +2 -2
  76. package/dist/src/main.js.map +1 -1
  77. package/dist/src/public-address.d.ts +1 -1
  78. package/dist/src/public-address.js +1 -1
  79. package/dist/src/public-address.js.map +1 -1
  80. package/dist/src/sealed-commands.d.ts +1 -0
  81. package/dist/src/sealed-commands.js +17 -5
  82. package/dist/src/sealed-commands.js.map +1 -1
  83. package/dist/src/trust-args.d.ts +1 -0
  84. package/dist/src/trust-args.js +13 -1
  85. package/dist/src/trust-args.js.map +1 -1
  86. package/dist/src/version.d.ts +1 -1
  87. package/dist/src/version.js +1 -1
  88. package/package.json +4 -4
@@ -1,6 +1,6 @@
1
1
  import { createHash } from "node:crypto";
2
- import { buildOpenClaims, feeBpsFor, formatAmount, isMemoUrl, Kind, MAX_CLAIM_SECS, MAX_CLAIM_STAKE, MEMO_URL_RULE, NATIVE_MINT, splitFees } from "@intent-engine/core";
3
- import { chainTime, loadConfig, mintOf, plainHttpOnPublic, WARN_NO_JUDGE_KEY } from "@intent-engine/client";
2
+ import { feeBpsFor, formatAmount, isMemoUrl, isSealed, Kind, MAX_CLAIM_SECS, MAX_CLAIM_STAKE, MEMO_URL_RULE, NATIVE_MINT, sealedTo, splitFees } from "@intent-engine/core";
3
+ import { chainTime, loadCommittee, loadConfig, MAX_SPEC_BYTES, mintOf, pinnedFetch, plainHttpOnPublic, WARN_NO_JUDGE_KEY } from "@intent-engine/client";
4
4
  import { TOKEN_NAMES, tokenNamed } from "../../tokens.js";
5
5
  import { define } from "../actions.js";
6
6
  import { escrowJudge, MAX_EXPIRES_IN, MIN_EXPIRES_IN, neverSettles, SPEC_URL_PLAIN } from "../create.js";
@@ -8,24 +8,35 @@ import { tool } from "../names.js";
8
8
  import { AgentRefusal, problemOf } from "../problems.js";
9
9
  import { InvalidInput, account, amount, flag, hex32, integer, list, object, optional, text } from "../schema.js";
10
10
  import { LANDING_SECONDS, access, mintNamed, raw, salesOf, checkSale, checkHour, refusedBeforeSending, PREVIEW_FIRST, oneAtATime, signerOf } from "./guard.js";
11
- import { offerOutput, offered } from "./offer.js";
12
- import { fetchBytes } from "../../delivery-fetch.js";
11
+ import { offerOutput } from "./offer.js";
12
+ import { fetchBytes, tooLarge } from "../../delivery-fetch.js";
13
+ import { systemLookup } from "../../public-address.js";
13
14
  import { costLines, escrowCosts } from "./costs.js";
14
15
  import { openedSpec, SEALED_UNCHECKED } from "./seal.js";
15
- async function specPreflight(ctx, specUrl, specHash) {
16
- const found = await fetchBytes(ctx.fetch ?? fetch, ctx.transport, specUrl);
16
+ import { claimantsOf, listedLines, offeredWithClaims } from "./escrow-claims.js";
17
+ export const SPEC_TOO_LARGE = `spec_url ${tooLarge(MAX_SPEC_BYTES)}, the most ${tool("get_spec")} reads, so workers cannot read the job; shorten the spec`;
18
+ export const notSealedTo = (missing, committee) => `spec_url holds a spec not sealed to the ${committee ? "committee members" : "attestor"} ${missing.join(", ")}, so the work cannot be judged; seal it again to ${committee ? "every member" : "the attestor"}`;
19
+ async function unreadBy(ctx, bytes, attestor) {
20
+ const recipients = new Set(sealedTo(bytes));
21
+ const committee = await loadCommittee(ctx.transport, attestor);
22
+ const missing = (committee === null ? [attestor] : committee.members).filter((reader) => !recipients.has(reader));
23
+ return missing.length === 0 ? [] : [notSealedTo(missing, committee !== null)];
24
+ }
25
+ async function specPreflight(ctx, specUrl, specHash, attestor) {
26
+ const found = await fetchBytes(ctx.fetch ?? pinnedFetch, ctx.transport, specUrl, systemLookup, MAX_SPEC_BYTES);
17
27
  if ("problem" in found) {
18
- return `spec_url ${found.problem}; publish it or workers cannot read the job`;
28
+ return { lines: [found.problem === tooLarge(MAX_SPEC_BYTES) ? SPEC_TOO_LARGE : `spec_url ${found.problem}; publish it or workers cannot read the job`] };
19
29
  }
30
+ const lines = isSealed(found.bytes) ? await unreadBy(ctx, found.bytes, attestor) : [];
20
31
  const opened = await openedSpec(ctx, found.bytes);
21
32
  if (opened === undefined) {
22
- return SEALED_UNCHECKED;
33
+ return { lines: [...lines, SEALED_UNCHECKED] };
23
34
  }
24
35
  const sha256 = createHash("sha256").update(opened).digest("hex");
25
36
  if (sha256 !== specHash.toLowerCase()) {
26
- return `spec_url ${opened === found.bytes ? "hashes" : "opens to a spec that hashes"} to ${sha256}, not spec_hash ${specHash}; publish the exact bytes, or fix spec_hash`;
37
+ lines.push(`spec_url ${opened === found.bytes ? "hashes" : "opens to a spec that hashes"} to ${sha256}, not spec_hash ${specHash}; publish the exact bytes, or fix spec_hash`);
27
38
  }
28
- return undefined;
39
+ return { lines };
29
40
  }
30
41
  export const ESCROW_EXPIRES_IN = 86_400;
31
42
  export const NO_SPEC_HASH = `no spec_hash, so workers cannot find this escrow with ${tool("find_jobs")}; give spec_hash and spec_url to list it`;
@@ -37,7 +48,7 @@ export const SPEC_NO_ANSWER = `${SPEC_ANSWER_OUT}; ${CLAIMS_ADVICE}`;
37
48
  export const CLAIMS_TOGETHER = "give claim_stake and claim_secs together, or neither";
38
49
  export const CLAIMS_NEED_SPEC = "claims need spec_hash, since only a proof escrow takes claims";
39
50
  const claimInputs = {
40
- claim_stake: optional(text("whole SOL a worker stakes to claim the job, such as 0.01; with claim_secs it opens claims, so one worker at a time can be paid; needs spec_hash")),
51
+ claim_stake: optional(text("whole SOL a worker stakes to claim the job, such as 0.01; with claim_secs it opens claims, so one worker at a time can be paid; on a spec sealed at spec_url only the workers it invites may claim; needs spec_hash")),
41
52
  claim_secs: optional(integer(1, MAX_CLAIM_SECS, "the longest a worker may hold the job by claiming it, in seconds; with claim_stake")),
42
53
  };
43
54
  export const claimsLine = (secs, stake, every) => `Opens: claims on ${every ? "every piece" : "the escrow"}; a worker can hold the job for up to ${secs} seconds by staking ${stake} SOL`;
@@ -53,10 +64,7 @@ function claimTerms(input, every) {
53
64
  throw new InvalidInput([{ path: "claim_stake", message: `must be at most ${formatAmount(MAX_CLAIM_STAKE, 9)}` }]);
54
65
  }
55
66
  const maxSecs = input.claim_secs;
56
- return {
57
- line: claimsLine(maxSecs, formatAmount(stake, 9), every),
58
- after: async (owner, intent) => [await buildOpenClaims({ owner, intent, maxSecs, stake })],
59
- };
67
+ return { line: claimsLine(maxSecs, formatAmount(stake, 9), every), maxSecs, stake };
60
68
  }
61
69
  export const recordAccountWhy = (mint) => `Why: the program needs a token account for the recorded output ${mint} even though an escrow pays nothing into it; later escrows that record the same token reuse it`;
62
70
  const createsRecordAccount = (mint) => `Setup: creates your token account for ${mint} (you pay its rent)`;
@@ -115,16 +123,21 @@ export const walletEscrow = define({
115
123
  if (claims !== undefined && specHash === undefined) {
116
124
  throw new InvalidInput([{ path: "claim_stake", message: CLAIMS_NEED_SPEC }]);
117
125
  }
118
- const preflight = input.spec_url !== undefined && specHash !== undefined && input.send !== true ? await specPreflight(ctx, input.spec_url, specHash) : undefined;
126
+ if (input.spec_url !== undefined && !isMemoUrl(input.spec_url)) {
127
+ throw new InvalidInput([{ path: "spec_url", message: `must be ${MEMO_URL_RULE}` }]);
128
+ }
129
+ const preflight = input.spec_url !== undefined && specHash !== undefined && input.send !== true ? [await specPreflight(ctx, input.spec_url, specHash, input.attestor)] : [];
119
130
  let settled;
120
131
  const buy = recordedMint(sold, wallet.url, input.record_mint);
121
132
  const signer = await signerOf(ctx);
122
- const costs = await escrowCosts(ctx.transport, { owner: signer.address, sell: sold, buy, claims: claims !== undefined });
133
+ const workers = claims !== undefined && input.spec_url !== undefined ? await claimantsOf(ctx, signer.address)(input.spec_url, input.attestor) : undefined;
134
+ const listed = claims === undefined ? undefined : { terms: claims, workers };
135
+ const costs = await escrowCosts(ctx.transport, { owner: signer.address, sell: sold, buy, claims: claims !== undefined, listed: workers !== undefined });
123
136
  let network = 0n;
124
137
  const priced = (lamports) => {
125
138
  network = lamports;
126
139
  };
127
- const escrowed = (await offered(ctx, call, { sell: sold, buy, send: input.send, after: claims?.after, priced }, (token, _, now) => {
140
+ const escrowed = await offeredWithClaims(ctx, call, { sell: sold, buy, send: input.send, priced }, (token, _, now) => {
128
141
  const amountIn = raw(input.amount, token.decimals, "amount");
129
142
  const judgeFee = input.judge_fee === undefined ? 0n : raw(input.judge_fee, token.decimals, "judge_fee");
130
143
  settled = { amount: amountIn, judgeFee, decimals: token.decimals };
@@ -141,16 +154,16 @@ export const walletEscrow = define({
141
154
  expires_at: now + BigInt((input.expires_in ?? ESCROW_EXPIRES_IN) + LANDING_SECONDS),
142
155
  ...(input.spec_url === undefined ? {} : { spec_url: input.spec_url }),
143
156
  };
144
- }, JOB_LIVE));
157
+ }, JOB_LIVE, listed, signer);
145
158
  const summary = [
146
159
  ...explainedSetup(escrowed["summary"] ?? [], buy),
147
- ...(claims === undefined ? [] : [claims.line]),
160
+ ...(claims === undefined ? [] : [claims.line, ...listedLines(workers)]),
148
161
  ...(settled === undefined ? [] : [await feeLine(ctx, settled), ...costLines(costs, network, settled.amount, 1)]),
149
162
  ];
150
163
  const ownKey = input.attestor === signer.address && signer.device === undefined;
151
164
  const warnings = [
152
165
  ...(escrowed["warnings"] ?? []).filter((line) => !(ownKey && line.startsWith(WARN_NO_JUDGE_KEY))),
153
- ...(preflight === undefined ? [] : [preflight]),
166
+ ...preflight.flatMap(({ lines }) => lines),
154
167
  ...(specHash === undefined ? [NO_SPEC_HASH] : input.send === true ? [] : [claims === undefined ? SPEC_NO_ANSWER : SPEC_ANSWER_OUT]),
155
168
  ];
156
169
  return { ...escrowed, summary, warnings };
@@ -184,6 +197,13 @@ async function checkedSpec(ctx, plan, piece, i) {
184
197
  }
185
198
  return { specHash, specUrl };
186
199
  }
200
+ function pieceLimits(planned, lists) {
201
+ const shown = lists.map((workers) => listedLines(workers).join(""));
202
+ if (shown.every((line) => line === shown[0])) {
203
+ return shown[0] === "" || shown[0] === undefined ? [] : [shown[0]];
204
+ }
205
+ return shown.flatMap((line, i) => (line === "" ? [] : [`Piece ${i + 1} (${planned[i]?.name ?? ""}): ${line}`]));
206
+ }
187
207
  const specBytes = (specHash) => (specHash === undefined ? new Uint8Array(32) : Uint8Array.from(Buffer.from(specHash, "hex")));
188
208
  export const walletEscrowPlan = define({
189
209
  name: tool("wallet_escrow_plan"),
@@ -221,7 +241,7 @@ export const walletEscrowPlan = define({
221
241
  }), MAX_PIECES),
222
242
  total: text("whole tokens escrowed across all pieces"),
223
243
  summary: list(text(), 40, `the plan, then lines marked ${PIECE_ONE} that describe the first piece alone`),
224
- warnings: list(text(), 16),
244
+ warnings: list(text(), 40),
225
245
  sent: flag(),
226
246
  next: optional(text()),
227
247
  }),
@@ -246,6 +266,12 @@ export const walletEscrowPlan = define({
246
266
  if (claims !== undefined && unproven >= 0) {
247
267
  throw new InvalidInput([{ path: `pieces.${unproven}.spec_hash`, message: CLAIMS_NEED_SPEC }]);
248
268
  }
269
+ const invites = claimantsOf(ctx, signer.address);
270
+ const lists = [];
271
+ for (const piece of planned) {
272
+ lists.push(claims === undefined || piece.specUrl === undefined ? undefined : await invites(piece.specUrl, piece.attestor));
273
+ }
274
+ const listedOf = (i) => (claims === undefined ? undefined : { terms: claims, workers: lists[i] });
249
275
  for (const [i, piece] of planned.entries()) {
250
276
  const order = { kind: Kind.AttestedResult, amountIn: piece.amountIn, minResult: 1n, maxResult: 1n, attestor: piece.attestor, specHash: specBytes(piece.specHash), judgeFee: 0n };
251
277
  const unsettled = neverSettles(order, config, 0, token.decimals);
@@ -286,16 +312,16 @@ export const walletEscrowPlan = define({
286
312
  const preflights = input.send === true
287
313
  ? []
288
314
  : await Promise.all(planned.map(async (piece, i) => {
289
- const found = piece.specUrl === undefined || piece.specHash === undefined ? undefined : await specPreflight(ctx, piece.specUrl, piece.specHash);
290
- return found === undefined ? [] : [`Piece ${i + 1} (${piece.name}): ${found}`];
315
+ const found = piece.specUrl === undefined || piece.specHash === undefined ? { lines: [] } : await specPreflight(ctx, piece.specUrl, piece.specHash, piece.attestor);
316
+ return { lines: found.lines.map((line) => `Piece ${i + 1} (${piece.name}): ${line}`) };
291
317
  }));
292
318
  const [head, ...rest] = planned;
293
- const costs = await escrowCosts(ctx.transport, { owner: signer.address, sell: sold, buy, claims: claims !== undefined });
319
+ const costs = await escrowCosts(ctx.transport, { owner: signer.address, sell: sold, buy, claims: claims !== undefined, listed: lists.some((workers) => workers !== undefined) });
294
320
  let network = 0n;
295
321
  const priced = (lamports) => {
296
322
  network = lamports;
297
323
  };
298
- const first = (await offered(ctx, call, { sell: sold, buy, send: input.send, after: claims?.after, priced }, terms(head)));
324
+ const first = await offeredWithClaims(ctx, call, { sell: sold, buy, send: input.send, priced }, terms(head), undefined, listedOf(0), signer);
299
325
  const ownKey = head.attestor === signer.address && signer.device === undefined;
300
326
  const shown = {
301
327
  total: formatAmount(total, token.decimals),
@@ -303,18 +329,18 @@ export const walletEscrowPlan = define({
303
329
  `Plan: ${planned.length} pieces, ${formatAmount(total, token.decimals)} of ${name} in all, each escrowed now and released on its own`,
304
330
  ...planned.map((piece, i) => `Piece ${i + 1}: ${piece.name}, ${formatAmount(piece.amountIn, token.decimals)} of ${name}, released by ${piece.attestor}${piece.specHash === undefined ? "" : ` against spec ${piece.specHash}`}`),
305
331
  ...costLines(costs, network, total, planned.length),
306
- ...(claims === undefined ? [] : [claims.line]),
332
+ ...(claims === undefined ? [] : [claims.line, ...pieceLimits(planned, lists)]),
307
333
  ...explainedSetup(first["summary"], buy).map((line) => `${PIECE_ONE}: ${line}`),
308
334
  ],
309
- warnings: [...first["warnings"].filter((line) => !(ownKey && line.startsWith(WARN_NO_JUDGE_KEY))), ...unlisted, ...preflights.flat()],
335
+ warnings: [...first["warnings"].filter((line) => !(ownKey && line.startsWith(WARN_NO_JUDGE_KEY))), ...unlisted, ...preflights.flatMap(({ lines }) => lines)],
310
336
  };
311
337
  if (input.send !== true) {
312
338
  return { pieces: planned.map(listed), ...shown, sent: false, next: first["next"] };
313
339
  }
314
340
  const pieces = [{ ...listed(head), intent: first["intent"], nonce: first["nonce"], signature: first["signature"] }];
315
- for (const piece of rest) {
341
+ for (const [i, piece] of rest.entries()) {
316
342
  try {
317
- const made = (await offered(ctx, call, { sell: sold, buy, send: true, after: claims?.after }, terms(piece)));
343
+ const made = await offeredWithClaims(ctx, call, { sell: sold, buy, send: true }, terms(piece), undefined, listedOf(i + 1), signer);
318
344
  pieces.push({ ...listed(piece), intent: made["intent"], nonce: made["nonce"], signature: made["signature"] });
319
345
  }
320
346
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"escrow.js","sourceRoot":"","sources":["../../../../src/agent/wallet/escrow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"escrow.js","sourceRoot":"","sources":["../../../../src/agent/wallet/escrow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,aAAa,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAC3K,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AACxJ,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAqB,MAAM,EAAE,MAAM,eAAe,CAAC;AAE1D,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACzG,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACjH,OAAO,EAAE,eAAe,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAC/J,OAAO,EAAE,WAAW,EAAc,MAAM,YAAY,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAkB,WAAW,EAAmB,WAAW,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAElH,MAAM,CAAC,MAAM,cAAc,GAAG,YAAY,QAAQ,CAAC,cAAc,CAAC,cAAc,IAAI,CAAC,UAAU,CAAC,0DAA0D,CAAC;AAE3J,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,OAA2B,EAAE,SAAkB,EAAU,EAAE,CACrF,2CAA2C,SAAS,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,oDAAoD,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;AAIjN,KAAK,UAAU,QAAQ,CAAC,GAAiB,EAAE,KAAiB,EAAE,QAAiB;IAC7E,MAAM,UAAU,GAAG,IAAI,GAAG,CAAS,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAC/D,MAAM,OAAO,GAAG,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;IAClH,OAAO,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,GAAiB,EAAE,OAAe,EAAE,QAAgB,EAAE,QAAiB;IAClG,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,WAAW,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC;IAC/G,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;QACvB,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY,KAAK,CAAC,OAAO,6CAA6C,CAAC,EAAE,CAAC;IAC3J,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACtF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,gBAAgB,CAAC,EAAE,CAAC;IACjD,CAAC;IACD,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACjE,IAAI,MAAM,KAAK,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC,YAAY,MAAM,KAAK,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,6BAA6B,OAAO,MAAM,mBAAmB,QAAQ,6CAA6C,CAAC,CAAC;IACjL,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAG,yDAAyD,IAAI,CAAC,WAAW,CAAC,0CAA0C,CAAC;AAEjJ,MAAM,CAAC,MAAM,QAAQ,GAAG,aAAa,IAAI,CAAC,uBAAuB,CAAC,4BAA4B,IAAI,CAAC,eAAe,CAAC,yBAAyB,CAAC;AAE7I,MAAM,CAAC,MAAM,SAAS,GAAG,wEAAwE,CAAC;AAElG,MAAM,CAAC,MAAM,eAAe,GAC1B,oKAAoK,CAAC;AAEvK,MAAM,CAAC,MAAM,aAAa,GAAG,oGAAoG,CAAC;AAElI,MAAM,CAAC,MAAM,cAAc,GAAG,GAAG,eAAe,KAAK,aAAa,EAAE,CAAC;AAErE,MAAM,CAAC,MAAM,eAAe,GAAG,sDAAsD,CAAC;AAEtF,MAAM,CAAC,MAAM,gBAAgB,GAAG,+DAA+D,CAAC;AAEhG,MAAM,WAAW,GAAG;IAClB,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,qNAAqN,CAAC,CAAC;IAClP,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,EAAE,cAAc,EAAE,oFAAoF,CAAC,CAAC;CACvI,CAAC;AAIF,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,KAAc,EAAE,EAAE,CACxE,oBAAoB,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,yCAAyC,IAAI,uBAAuB,KAAK,MAAM,CAAC;AAE1I,SAAS,UAAU,CAAC,KAA4E,EAAE,KAAc;IAC9G,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtE,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,YAAY,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;IAC/H,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,aAAa,CAAC,CAAC;IACvD,IAAI,KAAK,GAAG,eAAe,EAAE,CAAC;QAC5B,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,mBAAmB,YAAY,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACpH,CAAC;IACD,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC;IACjC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACtF,CAAC;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAa,EAAE,EAAE,CAChD,kEAAkE,IAAI,gGAAgG,CAAC;AAEzK,MAAM,oBAAoB,GAAG,CAAC,IAAa,EAAE,EAAE,CAAC,yCAAyC,IAAI,qBAAqB,CAAC;AAEnH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAA0B,EAAE,IAAa,EAAY,EAAE,CACpF,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAE7G,MAAM,CAAC,MAAM,kBAAkB,GAAG,iGAAiG,CAAC;AAEpI,SAAS,YAAY,CAAC,IAAa,EAAE,GAAW,EAAE,MAA0B;IAC1E,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,SAAS,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;QACzB,OAAO,WAAW,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACrC,IAAI,IAAI,YAAY,KAAK,EAAE,CAAC;QAC1B,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,IAAe,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,MAAM,CAAC;IACjC,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC;IAC3B,KAAK,EAAE,6CAA6C;IACpD,WAAW,EAAE,0LAA0L,IAAI,CAAC,WAAW,CAAC,KAAK,SAAS,KAAK,aAAa,EAAE;IAC1P,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,IAAI,CAAC,oDAAoD,CAAC;QAChE,MAAM,EAAE,IAAI,CAAC,sCAAsC,CAAC;QACpD,QAAQ,EAAE,OAAO,CAAC,2NAA2N,CAAC;QAC9O,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,iFAAiF,CAAC,CAAC;QAC/G,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,6FAA6F,CAAC,CAAC;QAC3H,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,uEAAuE,SAAS,+LAA+L,CAAC,CAAC;QAC3S,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,2CAA2C,aAAa,yEAAyE,CAAC,CAAC;QAC3J,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,sIAAsI,CAAC,CAAC;QACjK,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,0DAA0D,iBAAiB,EAAE,CAAC,CAAC;QAC5I,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,0HAA0H,CAAC,CAAC;QACvJ,GAAG,WAAW;QACd,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;KACnE,CAAC;IACF,MAAM,EAAE,WAAW;IACnB,GAAG,EAAE,KAAK,EAAE,GAAiB,EAAE,KAAK,EAAE,IAAU,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC;QACvC,IAAI,IAAI,GAAG,KAAK,EAAE,CAAC;YACjB,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,6BAA6B,EAAE,CAAC,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,CAAC;QACjC,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5D,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3D,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;QAC7E,CAAC;QACD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACxC,IAAI,MAAM,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACnD,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC/E,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/D,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,WAAW,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC;QACtF,CAAC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5K,IAAI,OAA2E,CAAC;QAChF,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC1J,MAAM,MAAM,GAAG,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;QAC7E,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,MAAM,EAAE,OAAO,KAAK,SAAS,EAAE,CAAC,CAAC;QACxJ,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAE,EAAE;YAClC,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE;YACnH,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YACxG,OAAO,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnE,OAAO;gBACL,KAAK,EAAE;oBACL,IAAI,EAAE,UAAU;oBAChB,SAAS,EAAE,QAAQ;oBACnB,UAAU,EAAE,KAAK;oBACjB,UAAU,EAAE,IAAI;oBAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;oBAC1D,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAC;iBAClE;gBACD,UAAU,EAAE,GAAG,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,iBAAiB,CAAC,GAAG,eAAe,CAAC;gBACnF,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;aACtE,CAAC;QACJ,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAC7B,MAAM,OAAO,GAAG;YACd,GAAG,cAAc,CAAE,QAAQ,CAAC,SAAS,CAAc,IAAI,EAAE,EAAE,GAAG,CAAC;YAC/D,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;YACvE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACjH,CAAC;QACF,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;QAChF,MAAM,QAAQ,GAAG;YACf,GAAG,CAAE,QAAQ,CAAC,UAAU,CAAc,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC/G,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC;YAC1C,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;SACpI,CAAC;QACF,OAAO,EAAE,GAAG,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;IAC5C,CAAC;CACF,CAAC,CAAC;AAEH,KAAK,UAAU,OAAO,CAAC,GAAiB,EAAE,OAA+D;IACvG,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,MAAM,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IACrF,MAAM,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACxE,OAAO,mBAAmB,YAAY,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,eAAe,GAAG,GAAG,GAAG,kCAAkC,CAAC;AAC1H,CAAC;AAED,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC;AAE7B,MAAM,CAAC,MAAM,SAAS,GAAG,cAAc,CAAC;AAExC,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,OAAe,EAAE,EAAE,CAC/E,GAAG,IAAI,OAAO,KAAK,+CAA+C,OAAO,gCAAgC,KAAK,GAAG,IAAI,4CAA4C,CAAC;AAEpK,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,OAAe,EAAE,EAAE,CAClF,GAAG,IAAI,OAAO,KAAK,2DAA2D,OAAO,YAAY,IAAI,CAAC,gBAAgB,CAAC,0DAA0D,CAAC;AAEpL,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAa,EAAE,IAAY,EAAE,EAAE,CAAC,+BAA+B,KAAK,KAAK,IAAI,oBAAoB,CAAC;AAMjI,KAAK,UAAU,WAAW,CAAC,GAAiB,EAAE,IAAU,EAAE,KAAW,EAAE,CAAS;IAC9E,MAAM,QAAQ,GAAG,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;IACnD,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;IAChD,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;IAC/B,CAAC;IACD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC;IAChF,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,iBAAiB,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IACD,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,MAAM,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC;IAC9D,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,OAAyB,EAAE,KAA2B;IACzE,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAClH,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,QAA4B,EAAc,EAAE,CAAC,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;AAE9J,MAAM,CAAC,MAAM,gBAAgB,GAAG,MAAM,CAAC;IACrC,IAAI,EAAE,IAAI,CAAC,oBAAoB,CAAC;IAChC,KAAK,EAAE,oCAAoC;IAC3C,WAAW,EAAE,kGAAkG,IAAI,CAAC,eAAe,CAAC,sEAAsE,IAAI,CAAC,eAAe,CAAC,2CAA2C,IAAI,CAAC,WAAW,CAAC,uDAAuD,aAAa,EAAE;IACjW,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,IAAI,CAAC,oDAAoD,CAAC;QAChE,QAAQ,EAAE,OAAO,CAAC,wEAAwE,CAAC;QAC3F,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,8GAA8G,CAAC,CAAC;QAC1I,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,iCAAiC,aAAa,oDAAoD,CAAC,CAAC;QAC5H,MAAM,EAAE,IAAI,CACV,MAAM,CAAC;YACL,IAAI,EAAE,IAAI,CAAC,+CAA+C,CAAC;YAC3D,MAAM,EAAE,IAAI,CAAC,4CAA4C,CAAC;YAC1D,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC;YAC3E,SAAS,EAAE,QAAQ,CAAC,KAAK,CAAC,+CAA+C,CAAC,CAAC;YAC3E,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;SACzE,CAAC,EACF,UAAU,EACV,sBAAsB,EACtB,CAAC,CACF;QACD,UAAU,EAAE,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,cAAc,EAAE,2DAA2D,iBAAiB,EAAE,CAAC,CAAC;QAC7I,WAAW,EAAE,QAAQ,CAAC,IAAI,CAAC,4HAA4H,CAAC,CAAC;QACzJ,GAAG,WAAW;QACd,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,wDAAwD,CAAC,CAAC;KAC/E,CAAC;IACF,MAAM,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,IAAI,CACV,MAAM,CAAC;YACL,IAAI,EAAE,IAAI,EAAE;YACZ,MAAM,EAAE,IAAI,EAAE;YACd,QAAQ,EAAE,OAAO,EAAE;YACnB,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3B,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC1B,MAAM,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC;YAC3B,KAAK,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;YACzB,SAAS,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;SAC5B,CAAC,EACF,UAAU,CACX;QACD,KAAK,EAAE,IAAI,CAAC,yCAAyC,CAAC;QACtD,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,+BAA+B,SAAS,sCAAsC,CAAC;QACzG,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC;QAC1B,IAAI,EAAE,IAAI,EAAE;QACZ,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;KACvB,CAAC;IACF,GAAG,EAAE,KAAK,EAAE,GAAiB,EAAE,KAAK,EAAE,IAAU,EAAE,EAAE;QAClD,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,CAAC;QACnC,UAAU,CAAC,MAAM,CAAC,CAAC;QACnB,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACvD,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACvI,MAAM,OAAO,GAAY,EAAE,CAAC;QAC5B,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YAChD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,UAAU,CAAC,SAAS,CAAC;gBACjE,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ;gBAC1C,GAAG,CAAC,MAAM,WAAW,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC;QAC5E,IAAI,MAAM,KAAK,SAAS,IAAI,QAAQ,IAAI,CAAC,EAAE,CAAC;YAC1C,MAAM,IAAI,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,QAAQ,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAChG,CAAC;QACD,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,KAAK,GAAgB,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7H,CAAC;QACD,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1G,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;YAC3C,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAW,CAAC;YAC1L,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;YACjE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,MAAM,IAAI,YAAY,CAAC,cAAc,EAAE,GAAG,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,CAAC;YAC7F,CAAC;YACD,MAAM,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;gBAC7F,MAAM,KAAK,YAAY,YAAY,CAAC,CAAC,CAAC,IAAI,YAAY,CAAC,mBAAmB,EAAE,GAAG,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC9I,CAAC,CAAC,CAAC;QACL,CAAC;QACD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,GAAG,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACvE,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAC7E,CAAC;QACD,SAAS,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QAClE,MAAM,KAAK,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC,KAAY,EAAE,OAAc,EAAE,EAAU,EAAE,EAAE,CAAC,CAAC;YAC7E,KAAK,EAAE;gBACL,IAAI,EAAE,UAAmB;gBACzB,SAAS,EAAE,KAAK,CAAC,QAAQ;gBACzB,UAAU,EAAE,EAAE;gBACd,UAAU,EAAE,EAAE;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;aACvE;YACD,UAAU,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,UAAU,IAAI,iBAAiB,CAAC,GAAG,eAAe,CAAC;YAClF,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;SACpE,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;QACvC,MAAM,MAAM,GAAG,CAAC,KAAY,EAAE,EAAE,CAAC,CAAC;YAChC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC;YACpD,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;YACtE,GAAG,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC;SACpE,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,MAAM,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC1I,MAAM,UAAU,GACd,KAAK,CAAC,IAAI,KAAK,IAAI;YACjB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,MAAM,OAAO,CAAC,GAAG,CACf,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;gBAC7B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACpK,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YACzF,CAAC,CAAC,CACH,CAAC;QACR,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,OAA8B,CAAC;QACvD,MAAM,KAAK,GAAG,MAAM,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,KAAK,SAAS,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,EAAE,CAAC,CAAC;QACjL,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,CAAC,QAAgB,EAAE,EAAE;YAClC,OAAO,GAAG,QAAQ,CAAC;QACrB,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC7I,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,CAAC;QAC/E,MAAM,KAAK,GAAG;YACZ,KAAK,EAAE,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC;YAC1C,OAAO,EAAE;gBACP,SAAS,OAAO,CAAC,MAAM,YAAY,YAAY,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,oDAAoD;gBACrI,GAAG,OAAO,CAAC,GAAG,CACZ,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CACX,SAAS,CAAC,GAAG,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,YAAY,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,IAAI,iBAAiB,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,iBAAiB,KAAK,CAAC,QAAQ,EAAE,EAAE,CACrM;gBACD,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC;gBACnD,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC;gBAC9E,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAa,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,SAAS,KAAK,IAAI,EAAE,CAAC;aAC5F;YACD,QAAQ,EAAE,CAAC,GAAI,KAAK,CAAC,UAAU,CAAc,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC;SAC3K,CAAC;QACF,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QACrF,CAAC;QACD,MAAM,MAAM,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QACpH,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC;YACxC,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;gBACnI,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAChH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;oBACvC,IAAI,EAAE,CAAC;gBACT,CAAC;gBACD,MAAM,OAAO,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBACjC,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC;gBAClD,OAAO;oBACL,MAAM,EAAE,CAAC,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAChE,GAAG,KAAK;oBACR,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,oBAAoB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC;iBACzJ,CAAC;YACJ,CAAC;QACH,CAAC;QACD,OAAO;YACL,MAAM;YACN,GAAG,KAAK;YACR,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,qBAAqB,IAAI,CAAC,uBAAuB,CAAC,SAAS,IAAI,CAAC,eAAe,CAAC,0BAA0B;SAClI,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
@@ -2,6 +2,8 @@ import type { Address } from "@solana/kit";
2
2
  import { type EngineEvent } from "@intent-engine/core";
3
3
  import { type EngineTransaction, type Transport } from "@intent-engine/client";
4
4
  export declare const OWN_TRANSACTIONS = 250;
5
+ export declare const STAKE_TO_WORKER = 0;
6
+ export declare const SOL_DECIMALS = 9;
5
7
  export declare const STAKE_OUTCOMES: readonly ["held", "returned", "forfeited", "unknown"];
6
8
  export declare const UNPAID_REASONS: readonly ["released_to_other", "open", "cancelled", "expired", "unknown"];
7
9
  export declare const workItem: import("../schema.js").Schema<{
@@ -17,7 +19,7 @@ export declare const workItem: import("../schema.js").Schema<{
17
19
  } & {}>;
18
20
  export declare const claimItem: import("../schema.js").Schema<{
19
21
  intent: Address;
20
- action: "claimed" | "dropped";
22
+ action: "claimed" | "dropped" | "left" | "queued";
21
23
  stake: string;
22
24
  stake_outcome: "forfeited" | "held" | "returned" | "unknown";
23
25
  signature: string;
@@ -51,7 +53,7 @@ export declare function workOf(transport: Transport, wallet: Address, transactio
51
53
  export declare function claimsOf(transport: Transport, wallet: Address, transactions: readonly EngineTransaction[], limit: number, kept?: Kept): Promise<{
52
54
  claims: {
53
55
  intent: Address;
54
- action: "claimed" | "dropped";
56
+ action: "claimed" | "dropped" | "left" | "queued";
55
57
  stake: string;
56
58
  stake_outcome: "forfeited" | "held" | "returned" | "unknown";
57
59
  signature: string;
@@ -4,11 +4,11 @@ import { account, choice, flag, nullable, object, text, time } from "../schema.j
4
4
  import { createdMint, heldMint, releaseLookup, releasedMint } from "./releases.js";
5
5
  export const OWN_TRANSACTIONS = 250;
6
6
  const ESCROW_EVENTS = 20;
7
- const STAKE_TO_WORKER = 0;
8
- const SOL_DECIMALS = 9;
7
+ export const STAKE_TO_WORKER = 0;
8
+ export const SOL_DECIMALS = 9;
9
9
  export const STAKE_OUTCOMES = ["held", "returned", "forfeited", "unknown"];
10
10
  export const UNPAID_REASONS = ["released_to_other", "open", "cancelled", "expired", "unknown"];
11
- const CLAIM_ACTIONS = ["claimed", "dropped"];
11
+ const CLAIM_ACTIONS = ["claimed", "dropped", "queued", "left"];
12
12
  const landedAt = (what) => nullable(time(`unix seconds ${what} landed, when the cluster reports it`));
13
13
  export const workItem = object({
14
14
  intent: account("the escrow the work was announced to"),
@@ -22,12 +22,12 @@ export const workItem = object({
22
22
  released_to: nullable(account("with released_to_other: the wallet the release paid; for a split, its first recipient")),
23
23
  });
24
24
  export const claimItem = object({
25
- intent: account("the escrow whose claim this wallet took or dropped"),
26
- action: choice(CLAIM_ACTIONS, "claimed: this wallet took the claim; dropped: it gave the claim up"),
27
- stake: text("whole SOL the claim staked, or that dropping returned"),
28
- stake_outcome: choice(STAKE_OUTCOMES, "held: the stake still sits on the claim; returned: it went back to this wallet; forfeited: it went to the escrow's owner; unknown: what became of it was not found"),
29
- signature: text("the transaction that took or dropped the claim"),
30
- at: landedAt("the claim or drop"),
25
+ intent: account("the escrow whose claim this wallet took, dropped or queued for"),
26
+ action: choice(CLAIM_ACTIONS, "claimed: this wallet took the claim, or was handed it from the line; dropped: it gave the claim up; queued: it stood by in the line; left: it left the line"),
27
+ stake: text("whole SOL the claim or place in line staked, or that dropping or leaving returned"),
28
+ stake_outcome: choice(STAKE_OUTCOMES, "held: the stake still sits on the claim or in the line; returned: it went back to this wallet; forfeited: it went to the escrow's owner; unknown: what became of it was not found"),
29
+ signature: text("the transaction that took, dropped or queued for the claim, or left the line"),
30
+ at: landedAt("the claim, drop, queue or leave"),
31
31
  });
32
32
  const everything = () => true;
33
33
  const newestFirst = (items) => [...items].sort((a, b) => (a.slot === b.slot ? 0 : a.slot < b.slot ? 1 : -1));
@@ -100,6 +100,7 @@ export async function workOf(transport, wallet, transactions, limit, tokens, kep
100
100
  }
101
101
  return { work, more: announced.length > limit };
102
102
  }
103
+ const keyOf = ({ signature, action, intent }) => `${signature}:${action}:${intent}`;
103
104
  function claimsIn(transactions, wallet) {
104
105
  return eventsIn(transactions).flatMap((event) => {
105
106
  const { signature, slot, blockTime } = event;
@@ -109,13 +110,19 @@ function claimsIn(transactions, wallet) {
109
110
  if (event.name === "ClaimDropped" && event.fields.worker === wallet) {
110
111
  return [{ intent: event.fields.intent, action: "dropped", stake: event.fields.refunded, signature, slot, blockTime }];
111
112
  }
113
+ if (event.name === "StoodBy" && event.fields.worker === wallet) {
114
+ return [{ intent: event.fields.intent, action: "queued", stake: event.fields.stake, signature, slot, blockTime }];
115
+ }
116
+ if (event.name === "LineLeft" && event.fields.worker === wallet) {
117
+ return [{ intent: event.fields.intent, action: "left", stake: event.fields.refunded, signature, slot, blockTime }];
118
+ }
112
119
  return [];
113
120
  });
114
121
  }
115
122
  function stakeEndsIn(transactions, wallet, intent) {
116
123
  return eventsIn(transactions).flatMap((event) => {
117
124
  const { signature, slot, blockTime } = event;
118
- if (event.name === "ClaimDropped" && event.fields.worker === wallet && event.fields.intent === intent) {
125
+ if ((event.name === "ClaimDropped" || event.name === "LineLeft") && event.fields.worker === wallet && event.fields.intent === intent) {
119
126
  return [{ outcome: "returned", signature, slot, blockTime }];
120
127
  }
121
128
  if (event.name === "StakeMoved" && event.fields.worker === wallet && event.fields.intent === intent) {
@@ -124,7 +131,7 @@ function stakeEndsIn(transactions, wallet, intent) {
124
131
  return [];
125
132
  });
126
133
  }
127
- const endAfter = (claim, ends) => ends.filter((end) => earlier(claim, end)).reduce((first, end) => (first === undefined || earlier(end, first) ? end : first), undefined);
134
+ const firstAfter = (from, items) => items.filter((item) => earlier(from, item)).reduce((first, item) => (first === undefined || earlier(item, first) ? item : first), undefined);
128
135
  async function heldBy(transport, wallet, intents) {
129
136
  try {
130
137
  const views = await loadClaimsOf(transport, intents);
@@ -134,31 +141,71 @@ async function heldBy(transport, wallet, intents) {
134
141
  return new Set();
135
142
  }
136
143
  }
144
+ function escrowHistories(transport) {
145
+ const read = new Map();
146
+ return (intent) => {
147
+ const found = read.get(intent) ?? transport.engineTransactions(ESCROW_EVENTS, intent);
148
+ read.set(intent, found);
149
+ return found;
150
+ };
151
+ }
152
+ async function allClaims(wallet, transactions, history) {
153
+ const own = claimsIn(transactions, wallet);
154
+ const claimed = new Set(own.filter(({ action }) => action === "claimed").map(({ intent }) => intent));
155
+ const queued = own.filter(({ action }) => action === "queued").map(({ intent }) => intent);
156
+ const moved = eventsIn(transactions).flatMap((event) => (event.name === "StakeMoved" && event.fields.worker === wallet && !claimed.has(event.fields.intent) ? [event.fields.intent] : []));
157
+ const seen = new Set(own.map(keyOf));
158
+ const found = [...own];
159
+ for (const intent of new Set([...queued, ...moved])) {
160
+ for (const claim of claimsIn(await history(intent), wallet)) {
161
+ if (claim.intent === intent && !seen.has(keyOf(claim))) {
162
+ seen.add(keyOf(claim));
163
+ found.push(claim);
164
+ }
165
+ }
166
+ }
167
+ return found;
168
+ }
169
+ async function outcomeOf(claim, wallet, transactions, history, all) {
170
+ if (claim.action === "dropped" || claim.action === "left") {
171
+ return "returned";
172
+ }
173
+ const end = firstAfter(claim, stakeEndsIn(transactions, wallet, claim.intent)) ?? firstAfter(claim, stakeEndsIn(await history(claim.intent), wallet, claim.intent));
174
+ const handover = claim.action === "queued" ? firstAfter(claim, all.filter((later) => later.intent === claim.intent && later.action === "claimed")) : undefined;
175
+ if (handover !== undefined && (end === undefined || earlier(handover, end))) {
176
+ return outcomeOf(handover, wallet, transactions, history, all);
177
+ }
178
+ return end?.outcome ?? "unknown";
179
+ }
180
+ async function openLines(transport, intents) {
181
+ const open = new Set();
182
+ for (const intent of intents) {
183
+ const escrow = await intentAt(transport, intent);
184
+ if (escrow !== null && escrow.status === IntentStatus.Open) {
185
+ open.add(intent);
186
+ }
187
+ }
188
+ return open;
189
+ }
137
190
  export async function claimsOf(transport, wallet, transactions, limit, kept = everything) {
138
- const found = newestFirst(claimsIn(transactions, wallet).filter(kept));
191
+ const history = escrowHistories(transport);
192
+ const all = await allClaims(wallet, transactions, history);
193
+ const found = newestFirst(all.filter(kept));
139
194
  const shown = found.slice(0, limit);
140
- const histories = new Map();
141
195
  const outcomes = [];
142
196
  for (const claim of shown) {
143
- if (claim.action === "dropped") {
144
- outcomes.push("returned");
145
- continue;
146
- }
147
- let end = endAfter(claim, stakeEndsIn(transactions, wallet, claim.intent));
148
- if (end === undefined) {
149
- const history = histories.get(claim.intent) ?? (await transport.engineTransactions(ESCROW_EVENTS, claim.intent));
150
- histories.set(claim.intent, history);
151
- end = endAfter(claim, stakeEndsIn(history, wallet, claim.intent));
152
- }
153
- outcomes.push(end?.outcome ?? "unknown");
197
+ outcomes.push(await outcomeOf(claim, wallet, transactions, history, all));
154
198
  }
155
- const open = [...new Set(shown.filter((claim, at) => claim.action === "claimed" && outcomes[at] === "unknown").map(({ intent }) => intent))];
156
- const held = open.length === 0 ? new Set() : await heldBy(transport, wallet, open);
199
+ const unknown = (action) => [...new Set(shown.filter((claim, at) => claim.action === action && outcomes[at] === "unknown").map(({ intent }) => intent))];
200
+ const claimedOpen = unknown("claimed");
201
+ const held = claimedOpen.length === 0 ? new Set() : await heldBy(transport, wallet, claimedOpen);
202
+ const lines = await openLines(transport, unknown("queued"));
203
+ const stillHeld = (claim) => (claim.action === "claimed" ? held : lines).has(claim.intent);
157
204
  const claims = shown.map((claim, at) => ({
158
205
  intent: claim.intent,
159
206
  action: claim.action,
160
207
  stake: formatAmount(claim.stake, SOL_DECIMALS),
161
- stake_outcome: outcomes[at] === "unknown" && held.has(claim.intent) ? "held" : (outcomes[at] ?? "unknown"),
208
+ stake_outcome: outcomes[at] === "unknown" && stillHeld(claim) ? "held" : (outcomes[at] ?? "unknown"),
162
209
  signature: claim.signature,
163
210
  at: claim.blockTime,
164
211
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"history-work.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history-work.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history-work.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history-work.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ async function paidWalletOf(transport, ending, intent) {
31
31
  export const walletHistory = define({
32
32
  name: tool("wallet_history"),
33
33
  title: "Show the wallet's history",
34
- description: `Shows what this wallet did, newest first, from the chain: orders (intents) it created and how each ended; work it announced with ${tool("wallet_deliver")} and whether a release paid it; claims it took or dropped. escrow, since and until narrow the lists; paid_from adds profit: what a job paid against what its sub-escrows cost. Leaves out transfers and releases it judged.`,
34
+ description: `Shows this wallet's history from the chain: intents it created and how each ended; work it announced with ${tool("wallet_deliver")} and whether a release paid it; claims it took, dropped or queued for, with each stake's outcome. escrow, since and until narrow the lists; paid_from adds profit: a job's pay less its sub-escrows' cost. Leaves out transfers and releases it judged.`,
35
35
  effect: "read",
36
36
  input: object({
37
37
  limit: optional(integer(1, HISTORY_MAX, `how many of the newest intents, and of the newest announcements and claims, to show; default ${HISTORY_DEFAULT}`)),
@@ -58,7 +58,7 @@ export const walletHistory = define({
58
58
  }), HISTORY_MAX, "the intents this wallet created, newest first"),
59
59
  more: flag("true when older intents exist beyond limit"),
60
60
  work: list(workItem, HISTORY_MAX, `the work this wallet announced with ${tool("wallet_deliver")}, newest first`),
61
- claims: list(claimItem, HISTORY_MAX, "the claims this wallet took or dropped, newest first"),
61
+ claims: list(claimItem, HISTORY_MAX, "the claims this wallet took, dropped or queued for, released escrows included, newest first"),
62
62
  more_work: flag(`true when older announcements or claims exist beyond limit, or this wallet has transactions older than the newest ${OWN_TRANSACTIONS} read`),
63
63
  profit: optional(profitItem),
64
64
  }),
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/agent/wallet/history.ts"],"names":[],"mappings":"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"}