@vibes.diy/api-svc 14.3.106 → 14.3.109

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 (116) hide show
  1. package/check-auth.js +7 -0
  2. package/check-auth.js.map +1 -1
  3. package/create-handler.d.ts +6 -2
  4. package/create-handler.js +1 -0
  5. package/create-handler.js.map +1 -1
  6. package/evento-handler-manifest.js +4 -0
  7. package/evento-handler-manifest.js.map +1 -1
  8. package/intern/agent-account-tools.js +4 -1
  9. package/intern/agent-account-tools.js.map +1 -1
  10. package/intern/agent-dispatcher.d.ts +5 -0
  11. package/intern/agent-dispatcher.js +12 -1
  12. package/intern/agent-dispatcher.js.map +1 -1
  13. package/intern/agent-session-runtime.d.ts +9 -2
  14. package/intern/agent-session-runtime.js +45 -5
  15. package/intern/agent-session-runtime.js.map +1 -1
  16. package/intern/agent-session.d.ts +6 -2
  17. package/intern/agent-session.js +8 -4
  18. package/intern/agent-session.js.map +1 -1
  19. package/intern/agent-wake.d.ts +2 -0
  20. package/intern/agent-wake.js +8 -1
  21. package/intern/agent-wake.js.map +1 -1
  22. package/intern/alt-first-build.js +4 -1
  23. package/intern/alt-first-build.js.map +1 -1
  24. package/intern/build-ledger-read.d.ts +29 -0
  25. package/intern/build-ledger-read.js +220 -0
  26. package/intern/build-ledger-read.js.map +1 -0
  27. package/intern/build-ledger-seams.d.ts +27 -0
  28. package/intern/build-ledger-seams.js +65 -0
  29. package/intern/build-ledger-seams.js.map +1 -0
  30. package/intern/build-ledger-store.d.ts +43 -0
  31. package/intern/build-ledger-store.js +78 -0
  32. package/intern/build-ledger-store.js.map +1 -0
  33. package/intern/emit-build-state.d.ts +21 -0
  34. package/intern/emit-build-state.js +72 -0
  35. package/intern/emit-build-state.js.map +1 -0
  36. package/intern/ensure-chat-id.d.ts +6 -1
  37. package/intern/ensure-chat-id.js +8 -0
  38. package/intern/ensure-chat-id.js.map +1 -1
  39. package/intern/first-build-request.d.ts +1 -0
  40. package/intern/first-build-request.js +1 -1
  41. package/intern/first-build-request.js.map +1 -1
  42. package/intern/guest-build-gate.d.ts +24 -0
  43. package/intern/guest-build-gate.js +66 -0
  44. package/intern/guest-build-gate.js.map +1 -0
  45. package/intern/guest-credit-meter.js +8 -2
  46. package/intern/guest-credit-meter.js.map +1 -1
  47. package/intern/guest-principal-claim.d.ts +6 -6
  48. package/intern/guest-principal-claim.js +75 -27
  49. package/intern/guest-principal-claim.js.map +1 -1
  50. package/intern/guest-principal-follow.d.ts +13 -0
  51. package/intern/guest-principal-follow.js +53 -0
  52. package/intern/guest-principal-follow.js.map +1 -0
  53. package/intern/guest-principal-owner.d.ts +4 -0
  54. package/intern/guest-principal-owner.js +21 -0
  55. package/intern/guest-principal-owner.js.map +1 -0
  56. package/intern/mint-fire-core.d.ts +3 -0
  57. package/intern/mint-fire-core.js +12 -2
  58. package/intern/mint-fire-core.js.map +1 -1
  59. package/intern/mint-job-store.d.ts +9 -1
  60. package/intern/mint-job-store.js +44 -3
  61. package/intern/mint-job-store.js.map +1 -1
  62. package/intern/open-turn-store.d.ts +27 -2
  63. package/intern/open-turn-store.js +12 -3
  64. package/intern/open-turn-store.js.map +1 -1
  65. package/intern/open-turn-sweep.d.ts +5 -1
  66. package/intern/open-turn-sweep.js +23 -0
  67. package/intern/open-turn-sweep.js.map +1 -1
  68. package/intern/parent-build-link.d.ts +12 -0
  69. package/intern/parent-build-link.js +48 -0
  70. package/intern/parent-build-link.js.map +1 -0
  71. package/intern/parked-refire.d.ts +42 -0
  72. package/intern/parked-refire.js +190 -0
  73. package/intern/parked-refire.js.map +1 -0
  74. package/intern/server-first-turn-fire.d.ts +12 -0
  75. package/intern/server-first-turn-fire.js +40 -0
  76. package/intern/server-first-turn-fire.js.map +1 -0
  77. package/intern/server-principal.d.ts +20 -0
  78. package/intern/server-principal.js +43 -0
  79. package/intern/server-principal.js.map +1 -0
  80. package/intern/shard-walk.d.ts +8 -0
  81. package/intern/shard-walk.js +21 -0
  82. package/intern/shard-walk.js.map +1 -0
  83. package/intern/turn-error-kind.d.ts +2 -1
  84. package/intern/turn-error-kind.js +1 -0
  85. package/intern/turn-error-kind.js.map +1 -1
  86. package/package.json +13 -13
  87. package/public/agent-turn-action.js +4 -0
  88. package/public/agent-turn-action.js.map +1 -1
  89. package/public/handle-prompt-context.js +14 -4
  90. package/public/handle-prompt-context.js.map +1 -1
  91. package/public/handler-llm-request.js +18 -2
  92. package/public/handler-llm-request.js.map +1 -1
  93. package/public/list-builds.d.ts +3 -0
  94. package/public/list-builds.js +46 -0
  95. package/public/list-builds.js.map +1 -0
  96. package/public/mark-build-seen.d.ts +10 -0
  97. package/public/mark-build-seen.js +57 -0
  98. package/public/mark-build-seen.js.map +1 -0
  99. package/public/open-chat.d.ts +3 -0
  100. package/public/open-chat.js +47 -6
  101. package/public/open-chat.js.map +1 -1
  102. package/public/prompt-chat-section.js +18 -5
  103. package/public/prompt-chat-section.js.map +1 -1
  104. package/public/prompt-turn-settled.js +2 -0
  105. package/public/prompt-turn-settled.js.map +1 -1
  106. package/public/prompt-turn-terminal.d.ts +1 -0
  107. package/public/prompt-turn-terminal.js +23 -0
  108. package/public/prompt-turn-terminal.js.map +1 -1
  109. package/public/shared-mint.js +12 -0
  110. package/public/shared-mint.js.map +1 -1
  111. package/public/stream-assembly.js +2 -0
  112. package/public/stream-assembly.js.map +1 -1
  113. package/shard-gate.js +10 -0
  114. package/shard-gate.js.map +1 -1
  115. package/types.d.ts +6 -2
  116. package/types.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-chat-id.js","sourceRoot":"","sources":["../../jsr/intern/ensure-chat-id.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ensure-chat-id.js","sourceRoot":"","sources":["../../jsr/intern/ensure-chat-id.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { Result } from "@adviser/cement";
2
2
  import type { VibesApiSQLCtx } from "../types.js";
3
3
  import type { EnsureChatIdPResult } from "./ensure-chat-id.js";
4
+ export declare function firstBuildChatId(userId: string, requestId: string): string;
4
5
  export declare function ensureFirstBuildRequest(vctx: VibesApiSQLCtx, input: {
5
6
  readonly userId: string;
6
7
  readonly requestId: string;
@@ -4,7 +4,7 @@ import { bytesToHex, utf8ToBytes } from "@noble/hashes/utils.js";
4
4
  import { eq } from "drizzle-orm";
5
5
  import { firstBuildNeedsAttachments, prepareFirstBuildDispatch } from "./mint-job-store.js";
6
6
  import { lockAppRelease } from "./onboarding-handle.js";
7
- function firstBuildChatId(userId, requestId) {
7
+ export function firstBuildChatId(userId, requestId) {
8
8
  return `first-${bytesToHex(sha256(utf8ToBytes(JSON.stringify([userId, requestId]))))}`;
9
9
  }
10
10
  export async function ensureFirstBuildRequest(vctx, input) {
@@ -1 +1 @@
1
- {"version":3,"file":"first-build-request.js","sourceRoot":"","sources":["../../jsr/intern/first-build-request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"first-build-request.js","sourceRoot":"","sources":["../../jsr/intern/first-build-request.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { Result } from "@adviser/cement";
2
+ import { type ResError } from "@vibes.diy/api-types";
3
+ import type { VibesApiSQLCtx } from "../types.js";
4
+ import { type BuildTerminalReader } from "./build-ledger-read.js";
5
+ export interface GuestGateRequest {
6
+ readonly mode: string;
7
+ readonly prompt?: string;
8
+ readonly chatId?: string;
9
+ readonly appSlug?: string;
10
+ readonly dryRun?: boolean;
11
+ readonly firstBuildRequestId?: string;
12
+ }
13
+ export declare function mintsPromptBuild(req: GuestGateRequest): boolean;
14
+ export declare function countGuestPromptBuildsInFlight(vctx: Pick<VibesApiSQLCtx, "sql">, args: {
15
+ readonly userId: string;
16
+ readonly nowMs?: number;
17
+ }, readTerminal?: BuildTerminalReader): Promise<Result<number>>;
18
+ export type GuestGateVerdict = "admit" | "sign-in-required";
19
+ export declare function signInRequiredError(): ResError;
20
+ export declare function guestBuildGate(vctx: Pick<VibesApiSQLCtx, "sql" | "logger">, args: {
21
+ readonly userId: string;
22
+ readonly req: GuestGateRequest;
23
+ readonly nowMs?: number;
24
+ }): Promise<GuestGateVerdict>;
@@ -0,0 +1,66 @@
1
+ import { exception2Result, Result } from "@adviser/cement";
2
+ import { eq } from "drizzle-orm";
3
+ import { GUEST_IN_FLIGHT_BUILD_LIMIT, IN_FLIGHT_BUILD_PHASES, isAgentChatAppSlug, isGuestPrincipal, LIST_BUILDS_MAX_LIMIT, SIGN_IN_REQUIRED_CODE, } from "@vibes.diy/api-types";
4
+ import { listBuilds } from "./build-ledger-read.js";
5
+ import { firstBuildChatId } from "./first-build-request.js";
6
+ import { GUEST_PRINCIPAL_LIFETIME_MS } from "./guest-principal-store.js";
7
+ export function mintsPromptBuild(req) {
8
+ return (req.mode === "codegen" &&
9
+ req.chatId === undefined &&
10
+ req.dryRun !== true &&
11
+ isAgentChatAppSlug(req.appSlug) === false &&
12
+ typeof req.prompt === "string" &&
13
+ req.prompt.trim() !== "");
14
+ }
15
+ export async function countGuestPromptBuildsInFlight(vctx, args, readTerminal) {
16
+ const nowMs = args.nowMs ?? Date.now();
17
+ const listed = await listBuilds(vctx, {
18
+ userId: args.userId,
19
+ since: new Date(nowMs - GUEST_PRINCIPAL_LIFETIME_MS).toISOString(),
20
+ limit: LIST_BUILDS_MAX_LIMIT,
21
+ nowMs,
22
+ }, ...(readTerminal === undefined ? [] : [readTerminal]));
23
+ if (listed.isErr())
24
+ return Result.Err(listed.Err());
25
+ return Result.Ok(listed.Ok().filter((b) => b.origin === "prompt" && IN_FLIGHT_BUILD_PHASES.includes(b.phase)).length);
26
+ }
27
+ async function isMintedReplay(vctx, userId, requestId) {
28
+ const cc = vctx.sql.tables.chatContexts;
29
+ const rows = await exception2Result(() => vctx.sql.db
30
+ .select({ chatId: cc.chatId })
31
+ .from(cc)
32
+ .where(eq(cc.chatId, firstBuildChatId(userId, requestId)))
33
+ .limit(1));
34
+ if (rows.isErr())
35
+ return Result.Err(rows.Err());
36
+ return Result.Ok(rows.Ok().length > 0);
37
+ }
38
+ export function signInRequiredError() {
39
+ return {
40
+ type: "vibes.diy.res-error",
41
+ error: {
42
+ message: `${SIGN_IN_REQUIRED_CODE}: sign in to start another build — the ones running come with you`,
43
+ code: SIGN_IN_REQUIRED_CODE,
44
+ },
45
+ };
46
+ }
47
+ export async function guestBuildGate(vctx, args) {
48
+ if (isGuestPrincipal(args.userId) === false || mintsPromptBuild(args.req) === false)
49
+ return "admit";
50
+ if (args.req.firstBuildRequestId !== undefined) {
51
+ const replay = await isMintedReplay(vctx, args.userId, args.req.firstBuildRequestId);
52
+ if (replay.isErr()) {
53
+ vctx.logger.Warn().Err(replay).Str("userId", args.userId).Msg("guest-build-gate-read-failed-open");
54
+ return "admit";
55
+ }
56
+ if (replay.Ok())
57
+ return "admit";
58
+ }
59
+ const counted = await countGuestPromptBuildsInFlight(vctx, { userId: args.userId, nowMs: args.nowMs });
60
+ if (counted.isErr()) {
61
+ vctx.logger.Warn().Err(counted).Str("userId", args.userId).Msg("guest-build-gate-read-failed-open");
62
+ return "admit";
63
+ }
64
+ return counted.Ok() >= GUEST_IN_FLIGHT_BUILD_LIMIT ? "sign-in-required" : "admit";
65
+ }
66
+ //# sourceMappingURL=guest-build-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"guest-build-gate.js","sourceRoot":"","sources":["../../jsr/intern/guest-build-gate.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,8 @@
1
1
  import { exception2Result, Result } from "@adviser/cement";
2
2
  import { type } from "arktype";
3
- import { and, eq } from "drizzle-orm";
3
+ import { and, eq, inArray } from "drizzle-orm";
4
4
  import { isGuestPrincipal } from "@vibes.diy/api-types";
5
+ import { claimedAccountOf } from "./guest-principal-owner.js";
5
6
  import { costCentsFromUsage, DISPLAY_CREDITS_PER_CENT, FREE_INCLUDED_CREDITS } from "../billing.js";
6
7
  import { lazyType } from "@vibes.diy/api-types/lazy-type";
7
8
  const usageRef = lazyType(() => type({ usage: { given: "object[]", calculated: { total_tokens: "number" } } }));
@@ -29,7 +30,12 @@ const SIGN_IN_TO_BUY = "sign-in-required: sign in to add credits";
29
30
  const refObject = lazyType(() => type("Record<string, unknown>"));
30
31
  async function markPlatformFunded(vctx, track) {
31
32
  const pc = vctx.sql.tables.promptContexts;
32
- const where = and(eq(pc.promptId, track.promptId), eq(pc.userId, track.userId));
33
+ const claimed = await claimedAccountOf(vctx, track.userId);
34
+ if (claimed.isErr())
35
+ return Result.Err(claimed.Err());
36
+ const account = claimed.Ok();
37
+ const owners = account === undefined ? [track.userId] : [track.userId, account];
38
+ const where = and(eq(pc.promptId, track.promptId), inArray(pc.userId, owners));
33
39
  const rows = await exception2Result(() => vctx.sql.db.select({ ref: pc.ref }).from(pc).where(where).limit(1));
34
40
  if (rows.isErr())
35
41
  return Result.Err(rows.Err());
@@ -1 +1 @@
1
- {"version":3,"file":"guest-credit-meter.js","sourceRoot":"","sources":["../../jsr/intern/guest-credit-meter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guest-credit-meter.js","sourceRoot":"","sources":["../../jsr/intern/guest-credit-meter.ts"],"names":[],"mappings":"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"}
@@ -7,15 +7,15 @@ type Db = VibesSqlite | Tx;
7
7
  type Tables = VibesApiSQLCtx["sql"]["tables"];
8
8
  export declare function countPrincipalRows(db: Db, t: Tables, userId: string): Promise<Record<string, number>>;
9
9
  export declare function rekeyGuestPrincipal(db: Db, t: Tables, guest: string, account: string): Promise<void>;
10
- export type GuestClaimOutcome = {
10
+ export interface GuestClaimOutcome {
11
11
  readonly status: "claimed";
12
12
  readonly handles: readonly string[];
13
- } | {
14
- readonly status: "busy";
15
- readonly handles: readonly string[];
16
- };
13
+ readonly rekeyedBuilds: readonly string[];
14
+ }
17
15
  export declare const GUEST_PRINCIPAL_CLAIMED = "guest-principal-claimed: sign in again to keep building";
18
- export declare function admitGuestTurn(vctx: Pick<VibesApiSQLCtx, "sql">, input: OpenTurnInput): Promise<Result<void>>;
16
+ export declare function admitGuestTurn(vctx: Pick<VibesApiSQLCtx, "sql">, input: OpenTurnInput): Promise<Result<{
17
+ readonly userId: string;
18
+ }>>;
19
19
  export declare function claimGuestPrincipal(vctx: VibesApiSQLCtx, input: {
20
20
  readonly guestUserId: string;
21
21
  readonly jti: string;
@@ -1,10 +1,13 @@
1
1
  import { exception2Result, Result } from "@adviser/cement";
2
- import { and, eq, gt, inArray, isNull, max, ne, or, sql } from "drizzle-orm";
2
+ import { and, eq, inArray, isNull, max, ne, notInArray, or, sql } from "drizzle-orm";
3
3
  import { isGuestPrincipal } from "@vibes.diy/api-types";
4
4
  import { AGENT_SESSION_RECORD_ID } from "./agent-session-store.js";
5
5
  import { readGuestPrincipal } from "./guest-principal-store.js";
6
6
  import { openTurnValues } from "./open-turn-store.js";
7
7
  import { persistDefaultUserSlug } from "./ensure-slug-binding.js";
8
+ import { claimedAccountOf } from "./guest-principal-owner.js";
9
+ import { SETTLED_INTENT_STATUSES } from "./build-ledger-read.js";
10
+ import { scheduleBuildState } from "./emit-build-state.js";
8
11
  export async function countPrincipalRows(db, t, userId) {
9
12
  const n = async (q) => (await q).length;
10
13
  return {
@@ -105,8 +108,7 @@ export async function rekeyGuestPrincipal(db, t, guest, account) {
105
108
  await db.update(t.openTurns).set({ userId: account }).where(eq(t.openTurns.userId, guest));
106
109
  await db.update(t.promptContexts).set({ userId: account }).where(eq(t.promptContexts.userId, guest));
107
110
  await db.update(t.applicationChats).set({ userId: account }).where(eq(t.applicationChats.userId, guest));
108
- await db.update(t.appSettings).set({ userId: account }).where(eq(t.appSettings.userId, guest));
109
- await db.update(t.appSettingItems).set({ userId: account }).where(eq(t.appSettingItems.userId, guest));
111
+ await mergeAppSettings(db, t, guest, account);
110
112
  await db.update(t.handleSettings).set({ userId: account }).where(eq(t.handleSettings.userId, guest));
111
113
  await db.update(t.developerGrants).set({ userId: account }).where(eq(t.developerGrants.userId, guest));
112
114
  await db.update(t.developerGrants).set({ devUserId: account }).where(eq(t.developerGrants.devUserId, guest));
@@ -121,14 +123,57 @@ export async function rekeyGuestPrincipal(db, t, guest, account) {
121
123
  await db.update(t.appContentOrdinals).set({ userId: account }).where(eq(t.appContentOrdinals.userId, guest));
122
124
  await db.update(t.appPublicNames).set({ ownerUserId: account }).where(eq(t.appPublicNames.ownerUserId, guest));
123
125
  }
124
- async function guestHasOpenTurn(db, t, guest, now) {
126
+ async function mergeAppSettings(db, t, guest, account) {
127
+ const as = t.appSettings;
128
+ for (const g of await db.select().from(as).where(eq(as.userId, guest))) {
129
+ const key = and(eq(as.appSlug, g.appSlug), eq(as.ownerHandle, g.ownerHandle));
130
+ const [a] = await db
131
+ .select()
132
+ .from(as)
133
+ .where(and(key, eq(as.userId, account)));
134
+ if (a === undefined)
135
+ continue;
136
+ const itemized = [a.settingsItemizedAt, g.settingsItemizedAt].filter((v) => typeof v === "string").sort()[0];
137
+ await db
138
+ .update(as)
139
+ .set({
140
+ ...(g.updated > a.updated ? { settings: g.settings, updated: g.updated } : {}),
141
+ settingsItemizedAt: itemized ?? null,
142
+ })
143
+ .where(and(key, eq(as.userId, account)));
144
+ await db.delete(as).where(and(key, eq(as.userId, guest)));
145
+ }
146
+ await db.update(as).set({ userId: account }).where(eq(as.userId, guest));
147
+ const ai = t.appSettingItems;
148
+ for (const g of await db.select().from(ai).where(eq(ai.userId, guest))) {
149
+ const key = and(eq(ai.appSlug, g.appSlug), eq(ai.ownerHandle, g.ownerHandle), eq(ai.itemKey, g.itemKey));
150
+ const [a] = await db
151
+ .select()
152
+ .from(ai)
153
+ .where(and(key, eq(ai.userId, account)));
154
+ if (a === undefined)
155
+ continue;
156
+ if (g.updated > a.updated)
157
+ await db
158
+ .update(ai)
159
+ .set({ item: g.item, updated: g.updated, revision: Math.max(a.revision, g.revision) + 1 })
160
+ .where(and(key, eq(ai.userId, account)));
161
+ await db.delete(ai).where(and(key, eq(ai.userId, guest)));
162
+ }
163
+ await db.update(ai).set({ userId: account }).where(eq(ai.userId, guest));
164
+ }
165
+ async function inFlightBuildChats(db, t, guest) {
125
166
  const ot = t.openTurns;
126
- const rows = await db
127
- .select({ chatId: ot.chatId })
167
+ const mj = t.mintJobs;
168
+ const turns = await db
169
+ .selectDistinct({ chatId: ot.chatId })
128
170
  .from(ot)
129
- .where(and(eq(ot.userId, guest), eq(ot.status, "open"), ne(ot.promptId, AGENT_SESSION_RECORD_ID), gt(ot.deadlineAt, now.toISOString())))
130
- .limit(1);
131
- return rows.length > 0;
171
+ .where(and(eq(ot.userId, guest), eq(ot.status, "open"), ne(ot.promptId, AGENT_SESSION_RECORD_ID)));
172
+ const intents = await db
173
+ .select({ chatId: mj.chatId })
174
+ .from(mj)
175
+ .where(and(eq(mj.userId, guest), notInArray(mj.status, [...SETTLED_INTENT_STATUSES])));
176
+ return [...new Set([...turns, ...intents].map((r) => r.chatId))];
132
177
  }
133
178
  export const GUEST_PRINCIPAL_CLAIMED = "guest-principal-claimed: sign in again to keep building";
134
179
  class Refused extends Error {
@@ -140,6 +185,15 @@ export async function admitGuestTurn(vctx, input) {
140
185
  const row = loaded.Ok();
141
186
  if (row === undefined)
142
187
  return Result.Err(GUEST_PRINCIPAL_CLAIMED);
188
+ const account = async () => {
189
+ const claimed = await claimedAccountOf(vctx, input.userId);
190
+ if (claimed.isErr())
191
+ return Result.Err(claimed.Err());
192
+ const userId = claimed.Ok();
193
+ return userId === undefined ? Result.Err(GUEST_PRINCIPAL_CLAIMED) : Result.Ok({ userId });
194
+ };
195
+ if (row.claimedUserId !== null)
196
+ return account();
143
197
  const gb = vctx.sql.tables.guestBuilds;
144
198
  const admitted = await exception2Result(() => vctx.sql.db.transaction(async (tx) => {
145
199
  const held = await tx
@@ -149,12 +203,12 @@ export async function admitGuestTurn(vctx, input) {
149
203
  .returning({ id: gb.chatId });
150
204
  if (held.length !== 1)
151
205
  throw new Refused();
152
- await tx.insert(vctx.sql.tables.openTurns).values(openTurnValues(input)).onConflictDoNothing();
206
+ await tx.insert(vctx.sql.tables.openTurns).values(openTurnValues(vctx.sql.tables, input)).onConflictDoNothing();
153
207
  }));
154
208
  if (admitted.isErr()) {
155
- return admitted.Err() instanceof Refused ? Result.Err(GUEST_PRINCIPAL_CLAIMED) : Result.Err(admitted.Err());
209
+ return admitted.Err() instanceof Refused ? account() : Result.Err(admitted.Err());
156
210
  }
157
- return Result.Ok(undefined);
211
+ return Result.Ok({ userId: input.userId });
158
212
  }
159
213
  async function handlesOf(vctx, userId) {
160
214
  const hb = vctx.sql.tables.handleBinding;
@@ -201,11 +255,6 @@ export async function claimGuestPrincipal(vctx, input, now = new Date()) {
201
255
  const handles = await handlesOf(vctx, input.guestUserId);
202
256
  if (handles.isErr())
203
257
  return Result.Err(handles.Err());
204
- const busyOutside = await exception2Result(() => guestHasOpenTurn(vctx.sql.db, vctx.sql.tables, input.guestUserId, now));
205
- if (busyOutside.isErr())
206
- return Result.Err(busyOutside.Err());
207
- if (busyOutside.Ok())
208
- return Result.Ok({ status: "busy", handles: handles.Ok() });
209
258
  const gb = vctx.sql.tables.guestBuilds;
210
259
  const merged = await exception2Result(() => vctx.sql.db.transaction(async (tx) => {
211
260
  const marked = await tx
@@ -214,22 +263,21 @@ export async function claimGuestPrincipal(vctx, input, now = new Date()) {
214
263
  .where(and(eq(gb.chatId, row.id), or(isNull(gb.claimedUserId), eq(gb.claimedUserId, input.accountUserId))))
215
264
  .returning({ id: gb.chatId });
216
265
  if (marked.length !== 1)
217
- return "taken";
218
- if (await guestHasOpenTurn(tx, vctx.sql.tables, input.guestUserId, now))
219
- throw new Refused();
266
+ return { taken: true };
267
+ const chats = await inFlightBuildChats(tx, vctx.sql.tables, input.guestUserId);
220
268
  await rekeyGuestPrincipal(tx, vctx.sql.tables, input.guestUserId, input.accountUserId);
221
269
  const repointed = await repointDefaultToGuestHandle({ ...vctx, sql: { ...vctx.sql, db: tx } }, { accountUserId: input.accountUserId, guestHandles: handles.Ok() });
222
270
  if (repointed.isErr())
223
271
  throw repointed.Err();
224
- return "claimed";
272
+ return { taken: false, chats };
225
273
  }));
226
- if (merged.isErr()) {
227
- if (merged.Err() instanceof Refused)
228
- return Result.Ok({ status: "busy", handles: handles.Ok() });
274
+ if (merged.isErr())
229
275
  return Result.Err(merged.Err());
230
- }
231
- if (merged.Ok() === "taken")
276
+ const outcome = merged.Ok();
277
+ if (outcome.taken)
232
278
  return Result.Err("guest-principal-claimed-by-another-account");
233
- return Result.Ok({ status: "claimed", handles: handles.Ok() });
279
+ for (const chatId of outcome.chats)
280
+ scheduleBuildState(vctx, { chatId, userId: input.accountUserId });
281
+ return Result.Ok({ status: "claimed", handles: handles.Ok(), rekeyedBuilds: outcome.chats });
234
282
  }
235
283
  //# sourceMappingURL=guest-principal-claim.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"guest-principal-claim.js","sourceRoot":"","sources":["../../jsr/intern/guest-principal-claim.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"guest-principal-claim.js","sourceRoot":"","sources":["../../jsr/intern/guest-principal-claim.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,cAAc,EAAsB,MAAM,sBAAsB,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAgD3D,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,EAAM,EAAE,CAAS,EAAE,MAAc;IACxE,MAAM,CAAC,GAAG,KAAK,EAAE,CAAqB,EAAmB,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7E,OAAO;QACL,yBAAyB,EAAE,MAAM,CAAC,CAChC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACzG;QACD,aAAa,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACrG,qBAAqB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC;QACrH,qBAAqB,EAAE,MAAM,CAAC,CAC5B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACtG;QACD,iBAAiB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACrH,kBAAkB,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;QACzH,uBAAuB,EAAE,MAAM,CAAC,CAC9B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC9G;QACD,yBAAyB,EAAE,MAAM,CAAC,CAChC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAClH;QACD,qBAAqB,EAAE,MAAM,CAAC,CAC5B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACtG;QACD,oBAAoB,EAAE,MAAM,CAAC,CAC3B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACpG;QACD,wBAAwB,EAAE,MAAM,CAAC,CAC/B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAChH;QACD,uBAAuB,EAAE,MAAM,CAAC,CAC9B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC5G;QACD,sBAAsB,EAAE,MAAM,CAAC,CAC7B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC1G;QACD,6BAA6B,EAAE,MAAM,CAAC,CACpC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC,CACjH;QACD,wBAAwB,EAAE,MAAM,CAAC,CAC/B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAChH;QACD,2BAA2B,EAAE,MAAM,CAAC,CAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,CACnH;QACD,qBAAqB,EAAE,MAAM,CAAC,CAC5B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACrG;QACD,gCAAgC,EAAE,MAAM,CAAC,CACvC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,gBAAgB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC,CAC7H;QACD,qBAAqB,EAAE,MAAM,CAAC,CAC5B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACvG;QACD,iCAAiC,EAAE,MAAM,CAAC,CACxC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CACnH;QACD,qBAAqB,EAAE,MAAM,CAAC,CAC5B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACtG;QACD,sBAAsB,EAAE,MAAM,CAAC,CAC7B,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACzG;QACD,2BAA2B,EAAE,MAAM,CAAC,CAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAC9G;QACD,4BAA4B,EAAE,MAAM,CAAC,CACnC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC3H;QACD,oCAAoC,EAAE,MAAM,CAAC,CAC3C,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,CAC9H;QACD,2BAA2B,EAAE,MAAM,CAAC,CAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACxH;QACD,yBAAyB,EAAE,MAAM,CAAC,CAChC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAClH;QACD,2BAA2B,EAAE,MAAM,CAAC,CAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACxH;QACD,4BAA4B,EAAE,MAAM,CAAC,CACnC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAC3H;QACD,2BAA2B,EAAE,MAAM,CAAC,CAClC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CACxH;QACD,4BAA4B,EAAE,MAAM,CAAC,CACnC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CACtH;KACF,CAAC;AACJ,CAAC;AAMD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,EAAM,EAAE,CAAS,EAAE,KAAa,EAAE,OAAe;IAIzF,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrH,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,UAAU,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,EAAE;aACnB,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;aACvC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;aACZ,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;QAC7B,MAAM,EAAE;aACL,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;aACd,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,CAAA,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,MAAM,MAAM,EAAE,EAAE,CAAC;aAC3E,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IACvE,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;IAIjG,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;IAC3B,MAAM,KAAK,GAAG,MAAM,EAAE;SACnB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;SAC/E,IAAI,CAAC,EAAE,CAAC;SACR,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;IACtC,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;QAC7G,MAAM,QAAQ,GAAG,MAAM,EAAE;aACtB,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,aAAa,EAAE,CAAC;aAC/B,IAAI,CAAC,EAAE,CAAC;aACR,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAClD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC;IACvF,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAGzE,MAAM,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;IAC3B,MAAM,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;SAChG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IACzG,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACzE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAGnF,MAAM,EAAE,GAAG,CAAC,CAAC,gBAAgB,CAAC;IAC9B,MAAM,SAAS,GAAG,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC7H,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;IAChH,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAGzE,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC;IAC1B,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;QACvF,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;;QAC7C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9E,MAAM,EAAE,GAAG,CAAC,CAAC,mBAAmB,CAAC;IACjC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;QACvF,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;;QAC7C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9E,MAAM,EAAE,GAAG,CAAC,CAAC,kBAAkB,CAAC;IAChC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC;QACvF,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;;QAC7C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAI9E,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACnG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACjG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACzF,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC3F,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACzG,MAAM,gBAAgB,CAAC,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAC9C,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACrG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACvG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC;IAI7G,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACjG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,EAAE,gBAAgB,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,gBAAgB,EAAE,KAAK,CAAC,CAAC,CAAC;IACvH,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACjG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC,CAAC;IACzH,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACjG,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,GAAG,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/H,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7G,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC/G,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC7G,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;AACjH,CAAC;AAcD,KAAK,UAAU,gBAAgB,CAAC,EAAM,EAAE,CAAS,EAAE,KAAa,EAAE,OAAe;IAC/E,MAAM,EAAE,GAAG,CAAC,CAAC,WAAW,CAAC;IACzB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC;QAC9E,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE;aACjB,MAAM,EAAE;aACR,IAAI,CAAC,EAAE,CAAC;aACR,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1H,MAAM,EAAE;aACL,MAAM,CAAC,EAAE,CAAC;aACV,GAAG,CAAC;YACH,GAAG,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9E,kBAAkB,EAAE,QAAQ,IAAI,IAAI;SACrC,CAAC;aACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAEzE,MAAM,EAAE,GAAG,CAAC,CAAC,eAAe,CAAC;IAC7B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC;QACvE,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;QACzG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE;aACjB,MAAM,EAAE;aACR,IAAI,CAAC,EAAE,CAAC;aACR,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC3C,IAAI,CAAC,KAAK,SAAS;YAAE,SAAS;QAC9B,IAAI,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO;YACvB,MAAM,EAAE;iBACL,MAAM,CAAC,EAAE,CAAC;iBACV,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;iBACzF,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;QAC7C,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3E,CAAC;AAoBD,KAAK,UAAU,kBAAkB,CAAC,EAAM,EAAE,CAAS,EAAE,KAAa;IAChE,MAAM,EAAE,GAAG,CAAC,CAAC,SAAS,CAAC;IACvB,MAAM,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,EAAE;SACnB,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC;SACrC,IAAI,CAAC,EAAE,CAAC;SACR,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,uBAAuB,CAAC,CAAC,CAAC,CAAC;IACrG,MAAM,OAAO,GAAG,MAAM,EAAE;SACrB,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC;SAC7B,IAAI,CAAC,EAAE,CAAC;SACR,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,GAAG,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAAC;IACzF,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AACnE,CAAC;AAMD,MAAM,CAAC,MAAM,uBAAuB,GAAG,yDAAyD,CAAC;AAGjG,MAAM,OAAQ,SAAQ,KAAK;CAAG;AAa9B,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAAiC,EACjC,KAAoB;IAEpB,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5D,IAAI,MAAM,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;IACxB,IAAI,GAAG,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IAClE,MAAM,OAAO,GAAG,KAAK,IAAkD,EAAE;QACvE,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;QAC3D,IAAI,OAAO,CAAC,KAAK,EAAE;YAAE,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;QAC5B,OAAO,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;IAC5F,CAAC,CAAC;IACF,IAAI,GAAG,CAAC,aAAa,KAAK,IAAI;QAAE,OAAO,OAAO,EAAE,CAAC;IACjD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAC3C,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,MAAM,EAAE;aAClB,MAAM,CAAC,EAAE,CAAC;aACV,GAAG,CAAC,EAAE,OAAO,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;aAC1C,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;aACpF,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAChC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,OAAO,EAAE,CAAC;QAC3C,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,mBAAmB,EAAE,CAAC;IAClH,CAAC,CAAC,CACH,CAAC;IACF,IAAI,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;QAErB,OAAO,QAAQ,CAAC,GAAG,EAAE,YAAY,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC;IACpF,CAAC;IACD,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC7C,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,IAAoB,EAAE,MAAc;IAC3D,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;IAC3H,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;AACnD,CAAC;AAWD,KAAK,UAAU,2BAA2B,CACxC,IAAoB,EACpB,KAAmF;IAEnF,IAAI,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IACjE,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACvC,IAAI,CAAC,GAAG,CAAC,EAAE;SACR,MAAM,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,CAAC,WAAW,EAAE,CAAC;SAC/E,IAAI,CAAC,EAAE,CAAC;SACR,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAC7C,CAAC;IACF,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAG5E,MAAM,WAAW,GAAG,IAAI;SACrB,EAAE,EAAE;SACJ,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACpD,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7F,IAAI,WAAW,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,sBAAsB,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IACtH,IAAI,SAAS,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;AAC9B,CAAC;AAOD,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAoB,EACpB,KAA6F,EAC7F,GAAG,GAAG,IAAI,IAAI,EAAE;IAEhB,IAAI,gBAAgB,CAAC,KAAK,CAAC,aAAa,CAAC;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;IAC7F,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACjE,IAAI,MAAM,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;IACxB,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,GAAG,KAAK,KAAK,CAAC,GAAG;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IACjG,IAAI,GAAG,CAAC,aAAa,KAAK,IAAI,IAAI,GAAG,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa,EAAE,CAAC;QAC5E,OAAO,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAClE,CAAC;IACD,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,OAAO,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACtD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC;IACvC,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CACzC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,EAA2F,EAAE;QAM5H,MAAM,MAAM,GAAG,MAAM,EAAE;aACpB,MAAM,CAAC,EAAE,CAAC;aACV,GAAG,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC;aAC1F,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aAC1G,SAAS,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAChC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;QAC/E,MAAM,mBAAmB,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;QAKvF,MAAM,SAAS,GAAG,MAAM,2BAA2B,CACjD,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACzC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,YAAY,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,CACnE,CAAC;QACF,IAAI,SAAS,CAAC,KAAK,EAAE;YAAE,MAAM,SAAS,CAAC,GAAG,EAAE,CAAC;QAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACjC,CAAC,CAAC,CACH,CAAC;IACF,IAAI,MAAM,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC;IAC5B,IAAI,OAAO,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC;IAInF,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK;QAAE,kBAAkB,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC;IACtG,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;AAC/F,CAAC"}