@northflare/runner 0.0.27 → 0.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/claude-sdk-manager.d.ts +4 -0
- package/dist/components/claude-sdk-manager.d.ts.map +1 -1
- package/dist/components/claude-sdk-manager.js +206 -24
- package/dist/components/claude-sdk-manager.js.map +1 -1
- package/dist/components/codex-sdk-manager.d.ts +3 -0
- package/dist/components/codex-sdk-manager.d.ts.map +1 -1
- package/dist/components/codex-sdk-manager.js +181 -11
- package/dist/components/codex-sdk-manager.js.map +1 -1
- package/dist/components/enhanced-repository-manager.d.ts +39 -0
- package/dist/components/enhanced-repository-manager.d.ts.map +1 -1
- package/dist/components/enhanced-repository-manager.js +604 -96
- package/dist/components/enhanced-repository-manager.js.map +1 -1
- package/dist/components/message-handler-sse.d.ts +1 -0
- package/dist/components/message-handler-sse.d.ts.map +1 -1
- package/dist/components/message-handler-sse.js +21 -0
- package/dist/components/message-handler-sse.js.map +1 -1
- package/dist/components/northflare-agent-sdk-manager.d.ts +3 -0
- package/dist/components/northflare-agent-sdk-manager.d.ts.map +1 -1
- package/dist/components/northflare-agent-sdk-manager.js +186 -11
- package/dist/components/northflare-agent-sdk-manager.js.map +1 -1
- package/dist/runner-sse.d.ts +3 -0
- package/dist/runner-sse.d.ts.map +1 -1
- package/dist/runner-sse.js +20 -0
- package/dist/runner-sse.js.map +1 -1
- package/dist/types/claude.d.ts +3 -0
- package/dist/types/claude.d.ts.map +1 -1
- package/dist/types/runner-interface.d.ts +2 -0
- package/dist/types/runner-interface.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -8,6 +8,7 @@ import path from "path";
|
|
|
8
8
|
import { isDebugEnabledFor } from '../utils/debug.js';
|
|
9
9
|
import { tmpdir } from "os";
|
|
10
10
|
import crypto from "crypto";
|
|
11
|
+
import { simpleGit } from "simple-git";
|
|
11
12
|
const console = createScopedConsole(isDebugEnabledFor("manager") ? "manager" : "sdk");
|
|
12
13
|
function buildSystemPromptWithNorthflare(basePrompt, northflarePrompt) {
|
|
13
14
|
const parts = [northflarePrompt, basePrompt]
|
|
@@ -38,6 +39,13 @@ export class CodexManager {
|
|
|
38
39
|
}
|
|
39
40
|
const conversationId = conversationData.id;
|
|
40
41
|
const agentSessionId = this.resolveSessionId(config, conversationData);
|
|
42
|
+
const pendingSummary = this.runner.consumePendingConversationSummary(conversationId);
|
|
43
|
+
const rawSummary = typeof conversationData.summary === "string"
|
|
44
|
+
? conversationData.summary
|
|
45
|
+
: pendingSummary;
|
|
46
|
+
const normalizedSummary = typeof rawSummary === "string"
|
|
47
|
+
? rawSummary.replace(/\s+/g, " ").trim()
|
|
48
|
+
: null;
|
|
41
49
|
const rawModel = conversationData?.model ||
|
|
42
50
|
config?.model ||
|
|
43
51
|
config?.defaultModel ||
|
|
@@ -85,6 +93,7 @@ export class CodexManager {
|
|
|
85
93
|
startedAt: new Date(),
|
|
86
94
|
lastActivityAt: new Date(),
|
|
87
95
|
model: normalizedModel,
|
|
96
|
+
summary: normalizedSummary,
|
|
88
97
|
globalInstructions: conversationData.globalInstructions || "",
|
|
89
98
|
workspaceInstructions: conversationData.workspaceInstructions || "",
|
|
90
99
|
permissionsMode: conversationData.permissionsMode ||
|
|
@@ -195,10 +204,13 @@ export class CodexManager {
|
|
|
195
204
|
return context;
|
|
196
205
|
}
|
|
197
206
|
async stopConversation(_agentSessionId, context, isRunnerShutdown = false, reason) {
|
|
207
|
+
context._stopRequested = true;
|
|
208
|
+
context._stopReason =
|
|
209
|
+
reason || (isRunnerShutdown ? "runner_shutdown" : undefined);
|
|
198
210
|
context.status = "stopping";
|
|
199
211
|
await this.abortActiveRun(context.conversationId);
|
|
200
212
|
try {
|
|
201
|
-
await this._finalizeConversation(context, false, undefined,
|
|
213
|
+
await this._finalizeConversation(context, false, undefined, context._stopReason);
|
|
202
214
|
}
|
|
203
215
|
catch (error) {
|
|
204
216
|
console.error(`[CodexManager] Error finalizing conversation ${context.conversationId}:`, error);
|
|
@@ -242,6 +254,149 @@ export class CodexManager {
|
|
|
242
254
|
this.launchTurn(context, input);
|
|
243
255
|
context.lastActivityAt = new Date();
|
|
244
256
|
}
|
|
257
|
+
async _handleRunCompletion(context, hadError, error) {
|
|
258
|
+
if (context._finalized)
|
|
259
|
+
return;
|
|
260
|
+
const inFlight = context._runCompletionInFlight;
|
|
261
|
+
if (inFlight)
|
|
262
|
+
return inFlight;
|
|
263
|
+
const promise = (async () => {
|
|
264
|
+
const isTaskConversation = context.conversationObjectType === "Task";
|
|
265
|
+
const stopRequested = context._stopRequested === true;
|
|
266
|
+
const taskHandle = context.taskHandle;
|
|
267
|
+
const shouldRunGitFlow = context.config.useWorktrees !== false &&
|
|
268
|
+
isTaskConversation &&
|
|
269
|
+
!!taskHandle &&
|
|
270
|
+
taskHandle.branch !== "local";
|
|
271
|
+
if (!shouldRunGitFlow || hadError || stopRequested) {
|
|
272
|
+
await this._finalizeConversation(context, hadError, error);
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
275
|
+
const taskId = context.conversationObjectId;
|
|
276
|
+
const baseBranch = context.config.repository?.branch || "main";
|
|
277
|
+
try {
|
|
278
|
+
const taskState = await this.repositoryManager.getTaskState(taskId);
|
|
279
|
+
const taskRepoInfo = await this.repositoryManager.getTaskRepoInfo(taskId);
|
|
280
|
+
if (!taskState ||
|
|
281
|
+
!taskRepoInfo ||
|
|
282
|
+
!taskRepoInfo.worktreePath ||
|
|
283
|
+
taskState.branch === "local") {
|
|
284
|
+
await this._finalizeConversation(context, false);
|
|
285
|
+
return;
|
|
286
|
+
}
|
|
287
|
+
const isLocalRepo = taskRepoInfo.repoKey.startsWith("local__");
|
|
288
|
+
const mergeWorkdir = isLocalRepo
|
|
289
|
+
? taskRepoInfo.controlPath
|
|
290
|
+
: taskRepoInfo.worktreePath;
|
|
291
|
+
// If we already have unresolved conflicts, immediately ask the agent to resolve them.
|
|
292
|
+
const taskGit = simpleGit(taskRepoInfo.worktreePath);
|
|
293
|
+
const initialTaskStatus = await taskGit.status();
|
|
294
|
+
if (initialTaskStatus.conflicted.length > 0) {
|
|
295
|
+
await this._resumeForGitConflictResolution(context, {
|
|
296
|
+
kind: "conflicts",
|
|
297
|
+
baseBranch,
|
|
298
|
+
conflicts: initialTaskStatus.conflicted,
|
|
299
|
+
workdir: taskRepoInfo.worktreePath,
|
|
300
|
+
});
|
|
301
|
+
return;
|
|
302
|
+
}
|
|
303
|
+
if (isLocalRepo && mergeWorkdir !== taskRepoInfo.worktreePath) {
|
|
304
|
+
const mergeGit = simpleGit(mergeWorkdir);
|
|
305
|
+
const mergeStatus = await mergeGit.status();
|
|
306
|
+
if (mergeStatus.conflicted.length > 0) {
|
|
307
|
+
await this._resumeForGitConflictResolution(context, {
|
|
308
|
+
kind: "conflicts",
|
|
309
|
+
baseBranch,
|
|
310
|
+
conflicts: mergeStatus.conflicted,
|
|
311
|
+
workdir: mergeWorkdir,
|
|
312
|
+
});
|
|
313
|
+
return;
|
|
314
|
+
}
|
|
315
|
+
}
|
|
316
|
+
// Ensure we're on the task branch for commit/rebase operations.
|
|
317
|
+
const currentBranch = (await taskGit.revparse(["--abbrev-ref", "HEAD"])).trim();
|
|
318
|
+
if (currentBranch !== taskState.branch) {
|
|
319
|
+
await taskGit.checkout(taskState.branch);
|
|
320
|
+
}
|
|
321
|
+
const status = await taskGit.status();
|
|
322
|
+
if (!status.isClean()) {
|
|
323
|
+
await this.repositoryManager.stageAll(taskId);
|
|
324
|
+
try {
|
|
325
|
+
const previousCommitCount = taskState?.commitCount ?? 0;
|
|
326
|
+
const baseSubject = (context.summary ?? "").replace(/\s+/g, " ").trim() ||
|
|
327
|
+
`Task ${taskId}`;
|
|
328
|
+
const message = previousCommitCount > 0
|
|
329
|
+
? `${baseSubject} (followup #${previousCommitCount})`
|
|
330
|
+
: baseSubject;
|
|
331
|
+
await this.repositoryManager.commit(taskId, message);
|
|
332
|
+
}
|
|
333
|
+
catch (commitError) {
|
|
334
|
+
const msg = commitError instanceof Error
|
|
335
|
+
? commitError.message
|
|
336
|
+
: String(commitError);
|
|
337
|
+
if (!msg.toLowerCase().includes("nothing to commit")) {
|
|
338
|
+
throw commitError;
|
|
339
|
+
}
|
|
340
|
+
}
|
|
341
|
+
}
|
|
342
|
+
const integrateResult = await this.repositoryManager.integrateTask(taskId, baseBranch, "no-ff");
|
|
343
|
+
if (!integrateResult.success) {
|
|
344
|
+
await this._resumeForGitConflictResolution(context, {
|
|
345
|
+
kind: integrateResult.phase,
|
|
346
|
+
baseBranch,
|
|
347
|
+
conflicts: integrateResult.conflicts ?? [],
|
|
348
|
+
workdir: integrateResult.conflictWorkdir,
|
|
349
|
+
error: integrateResult.error,
|
|
350
|
+
});
|
|
351
|
+
return;
|
|
352
|
+
}
|
|
353
|
+
// Worktree is no longer needed after a successful merge; preserve the branch
|
|
354
|
+
await this.repositoryManager.removeTaskWorktree(taskId, {
|
|
355
|
+
preserveBranch: true,
|
|
356
|
+
});
|
|
357
|
+
const wsId = context.config.workspaceId || context.workspaceId;
|
|
358
|
+
const repoUrl = context.config.repository?.url;
|
|
359
|
+
if (wsId && repoUrl) {
|
|
360
|
+
await this.repositoryManager.syncWorkspaceWorktree(wsId, repoUrl, baseBranch);
|
|
361
|
+
}
|
|
362
|
+
await this._finalizeConversation(context, false);
|
|
363
|
+
}
|
|
364
|
+
catch (mergeError) {
|
|
365
|
+
console.error("[CodexManager] Post-task git flow failed", mergeError);
|
|
366
|
+
await this._finalizeConversation(context, true, mergeError);
|
|
367
|
+
}
|
|
368
|
+
})();
|
|
369
|
+
context._runCompletionInFlight = promise.finally(() => {
|
|
370
|
+
delete context._runCompletionInFlight;
|
|
371
|
+
});
|
|
372
|
+
return context._runCompletionInFlight;
|
|
373
|
+
}
|
|
374
|
+
async _resumeForGitConflictResolution(context, payload) {
|
|
375
|
+
const { kind, baseBranch, conflicts, workdir, error } = payload;
|
|
376
|
+
const conflictsList = conflicts?.length
|
|
377
|
+
? `\n\nConflicted files:\n${conflicts.map((f) => `- ${f}`).join("\n")}`
|
|
378
|
+
: "";
|
|
379
|
+
const workdirHint = workdir ? `\n\nWork directory:\n- ${workdir}` : "";
|
|
380
|
+
const errorHint = error ? `\n\nError:\n${error}` : "";
|
|
381
|
+
const instruction = kind === "rebase"
|
|
382
|
+
? `<system-instructions>\nA git rebase onto \`${baseBranch}\` produced merge conflicts.${conflictsList}${workdirHint}${errorHint}\n\nPlease resolve the conflicts in that directory, then run:\n- git add -A\n- git rebase --continue\n\nWhen the rebase finishes cleanly, reply briefly so I can retry the integration.\n</system-instructions>`
|
|
383
|
+
: kind === "merge"
|
|
384
|
+
? `<system-instructions>\nA git merge into \`${baseBranch}\` produced merge conflicts.${conflictsList}${workdirHint}${errorHint}\n\nPlease resolve the conflicts in that directory, then run:\n- git add -A\n- git commit -m \"Resolve merge conflicts for ${context.conversationObjectId}\"\n\nWhen the working tree is clean, reply briefly so I can retry the integration.\n</system-instructions>`
|
|
385
|
+
: `<system-instructions>\nGit has unresolved conflicts.${conflictsList}${workdirHint}${errorHint}\n\nPlease resolve the conflicts in that directory and complete the in-progress git operation (rebase or merge). When the working tree is clean, reply briefly so I can retry the integration.\n</system-instructions>`;
|
|
386
|
+
const conversationData = {
|
|
387
|
+
id: context.conversationId,
|
|
388
|
+
objectType: context.conversationObjectType,
|
|
389
|
+
objectId: context.conversationObjectId,
|
|
390
|
+
model: context.model,
|
|
391
|
+
summary: context.summary ?? null,
|
|
392
|
+
globalInstructions: context.globalInstructions,
|
|
393
|
+
workspaceInstructions: context.workspaceInstructions,
|
|
394
|
+
permissionsMode: context.permissionsMode,
|
|
395
|
+
agentSessionId: context.agentSessionId,
|
|
396
|
+
workspaceId: context.workspaceId,
|
|
397
|
+
};
|
|
398
|
+
await this.resumeConversation(context.conversationObjectType, context.conversationObjectId, context.agentSessionId, context.config, conversationData, instruction, context.provider);
|
|
399
|
+
}
|
|
245
400
|
async buildEnvVars(config, githubToken, toolToken, provider) {
|
|
246
401
|
const envVars = {
|
|
247
402
|
...Object.fromEntries(Object.entries(process.env).filter(([, value]) => value !== undefined)),
|
|
@@ -492,7 +647,7 @@ export class CodexManager {
|
|
|
492
647
|
],
|
|
493
648
|
});
|
|
494
649
|
context.status = "stopped";
|
|
495
|
-
await this.
|
|
650
|
+
await this._handleRunCompletion(context, false);
|
|
496
651
|
break;
|
|
497
652
|
}
|
|
498
653
|
case "turn.failed": {
|
|
@@ -642,7 +797,7 @@ export class CodexManager {
|
|
|
642
797
|
if (phase === "updated")
|
|
643
798
|
return null;
|
|
644
799
|
return {
|
|
645
|
-
type: "
|
|
800
|
+
type: "file_change",
|
|
646
801
|
subtype: "file_change",
|
|
647
802
|
content: [
|
|
648
803
|
{
|
|
@@ -801,18 +956,22 @@ export class CodexManager {
|
|
|
801
956
|
}
|
|
802
957
|
mapSandboxMode(permissionsMode) {
|
|
803
958
|
const mode = (permissionsMode || "").toLowerCase();
|
|
804
|
-
|
|
805
|
-
if (mode === "read" || mode === "read_only" || mode === "project") {
|
|
959
|
+
if (mode === "read" || mode === "read_only") {
|
|
806
960
|
return "read-only";
|
|
807
961
|
}
|
|
808
|
-
|
|
962
|
+
// "project" mode allows bash but no file writes - Codex doesn't have fine-grained control,
|
|
963
|
+
// so we use workspace-write which allows both bash and file writes
|
|
964
|
+
if (mode === "project" || mode === "workspace" || mode === "workspace-write") {
|
|
809
965
|
return "workspace-write";
|
|
810
966
|
}
|
|
811
967
|
return "danger-full-access";
|
|
812
968
|
}
|
|
813
969
|
shouldEnableNetwork(permissionsMode) {
|
|
814
970
|
const mode = (permissionsMode || "").toLowerCase();
|
|
815
|
-
|
|
971
|
+
// project mode allows network (for fetching dependencies, running tests, etc.)
|
|
972
|
+
if (mode === "project")
|
|
973
|
+
return true;
|
|
974
|
+
return mode !== "read" && mode !== "read_only";
|
|
816
975
|
}
|
|
817
976
|
getAdditionalDirectories(config) {
|
|
818
977
|
const additionalDirs = [];
|
|
@@ -947,18 +1106,29 @@ export class CodexManager {
|
|
|
947
1106
|
async resolveWorkspacePath(context, config) {
|
|
948
1107
|
let workspacePath;
|
|
949
1108
|
const workspaceId = config.workspaceId;
|
|
1109
|
+
const useWorktrees = config.useWorktrees !== false;
|
|
950
1110
|
if (config.runnerRepoPath) {
|
|
951
1111
|
workspacePath = config.runnerRepoPath;
|
|
952
1112
|
console.log(`[CodexManager] Using local workspace path ${workspacePath}`);
|
|
953
|
-
if (context.conversationObjectType === "Task") {
|
|
954
|
-
const
|
|
955
|
-
|
|
1113
|
+
if (context.conversationObjectType === "Task" && workspaceId) {
|
|
1114
|
+
const hasGitDir = await fs
|
|
1115
|
+
.access(path.join(workspacePath, ".git"))
|
|
1116
|
+
.then(() => true)
|
|
1117
|
+
.catch(() => false);
|
|
1118
|
+
if (hasGitDir && useWorktrees) {
|
|
1119
|
+
const repoUrl = config.repository?.url || `file://${workspacePath}`;
|
|
1120
|
+
const baseBranch = config.repository?.branch || "main";
|
|
1121
|
+
const taskHandle = await this.repositoryManager.createTaskWorktree(context.conversationObjectId, workspaceId, repoUrl, baseBranch, config.githubToken);
|
|
1122
|
+
context.taskHandle = taskHandle;
|
|
1123
|
+
workspacePath = taskHandle.worktreePath;
|
|
1124
|
+
}
|
|
956
1125
|
}
|
|
957
1126
|
return workspacePath;
|
|
958
1127
|
}
|
|
959
1128
|
if (context.conversationObjectType === "Task" &&
|
|
960
1129
|
config.repository &&
|
|
961
|
-
workspaceId
|
|
1130
|
+
workspaceId &&
|
|
1131
|
+
useWorktrees) {
|
|
962
1132
|
if (!config.repository.url) {
|
|
963
1133
|
throw new Error("Repository URL is required for task conversations");
|
|
964
1134
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-sdk-manager.js","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,GAAG,MAAM,cAAc,CAAC;AAC/B,OAAO,EAAE,MAAM,aAAa,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;AAC5B,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,OAAO,GAAG,mBAAmB,CACjC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CACjD,CAAC;AAEF,SAAS,+BAA+B,CACtC,UAAmB,EACnB,gBAAyB;IAEzB,MAAM,KAAK,GAAG,CAAC,gBAAgB,EAAE,UAAU,CAAC;SACzC,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;SACxE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAExB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IACzC,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED,IAAI,eAAe,GACjB,IAAI,CAAC;AAEP,KAAK,UAAU,YAAY;IACzB,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,eAAe,GAAG,MAAM,CAAC,uBAAuB,CAAC,CAAC;IACpD,CAAC;IACD,OAAO,eAAe,CAAC;AACzB,CAAC;AAgCD,MAAM,OAAO,YAAY;IACf,MAAM,CAAa;IACnB,iBAAiB,CAA4B;IAC7C,YAAY,GAAkC,IAAI,GAAG,EAAE,CAAC;IAEhE,YACE,MAAkB,EAClB,iBAA4C;QAE5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,iBAAiB,CACrB,sBAA2D,EAC3D,oBAA4B,EAC5B,MAA0B,EAC1B,eAA0B,EAC1B,gBAAsC,EACtC,QAA2C;QAE3C,IAAI,CAAC,gBAAgB,EAAE,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,0EAA0E,CAC3E,CAAC;QACJ,CAAC;QAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,EAAE,CAAC;QAC3C,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;QAEvE,MAAM,QAAQ,GACZ,gBAAgB,EAAE,KAAK;YACtB,MAAc,EAAE,KAAK;YACrB,MAAc,EAAE,YAAY;YAC7B,QAAQ,CAAC;QACX,MAAM,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;QACjE,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,eAAe,CAAC,CAAC;QACzE,MAAM,eAAe,GAAG,SAAS,IAAI,QAAQ,CAAC;QAE9C,kCAAkC;QAClC,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE;YACjD,QAAQ;YACR,SAAS;YACT,eAAe;YACf,oBAAoB;YACpB,eAAe;SAChB,CAAC,CAAC;QAEH,mFAAmF;QACnF,MAAM,gBAAgB,GACpB,QAAQ;YACP,MAAc,EAAE,YAAY;YAC5B,gBAAwB,EAAE,YAAY;YACvC,QAAQ,CAAC;QAEX,uEAAuE;QACvE,MAAM,oBAAoB,GAAG,+BAA+B,CAC1D,MAAM,CAAC,YAAY,IAAK,gBAAwB,EAAE,YAAY,EAC7D,MAAc,EAAE,sBAAsB;YACpC,gBAAwB,EAAE,sBAAsB,CACpD,CAAC;QACF,MAAM,gBAAgB,GACpB,MAAM,CAAC,gBAAgB;YACtB,gBAAwB,EAAE,gBAAgB;YAC3C,QAAQ,CAAC;QAEX,MAAM,QAAQ,GAAwB;YACpC,oBAAoB,EAAE,KAAK;YAC3B,kBAAkB,EAAE,QAAQ;SAC7B,CAAC;QAEF,QAAQ,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAC5D,QAAQ,CAAC,kBAAkB,CAAC,GAAG,gBAAgB,CAAC;QAEhD,IAAI,eAAe,EAAE,CAAC;YACpB,QAAQ,CAAC,sBAAsB,CAAC,GAAG,eAAe,CAAC;QACrD,CAAC;QAED,MAAM,OAAO,GAAwB;YACnC,cAAc;YACd,cAAc;YACd,sBAAsB;YACtB,oBAAoB;YACpB,MAAM,EACJ,sBAAsB,KAAK,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS;YACtE,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,MAAM,EAAE,UAAU;YAClB,MAAM;YACN,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,cAAc,EAAE,IAAI,IAAI,EAAE;YAC1B,KAAK,EAAE,eAAe;YACtB,kBAAkB,EAAE,gBAAgB,CAAC,kBAAkB,IAAI,EAAE;YAC7D,qBAAqB,EAAE,gBAAgB,CAAC,qBAAqB,IAAI,EAAE;YACnE,eAAe,EACb,gBAAgB,CAAC,eAAe;gBAC/B,MAAc,EAAE,eAAe;gBAChC,KAAK;YACP,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ;SACT,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,GAAG,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE9D,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE;YACxD,cAAc;YACd,cAAc;YACd,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC,CAAC;QAEH,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAEtE,OAAO,CAAC,QAAgC,CAAC,eAAe,CAAC,GAAG,aAAa,CAAC;QAE3E,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW;YACrC,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,WAAW,CAAC;YACnD,CAAC,CAAC,SAAS,CAAC;QAEd,MAAM,SAAS,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAElD,IAAI,UAA2C,CAAC;QAChD,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnE,MAAM,eAAe,GAAG,SAAS,CAAC,MAAM,CAAC,UAAU,EAAE;gBACnD,UAAU,EAAE,SAAS;aACtB,CAAC,CAAC;YACH,UAAU,GAAG,IAAI,CAAC,2BAA2B,CAAC,eAAe,CAAC,CAAC;YAC/D,OAAO,CAAC,GAAG,CACT,2CAA2C,EAC3C,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CACpC,CAAC;YACD,OAAO,CAAC,QAAgC,CAAC,YAAY,CAAC,GAAG,UAAU,CAAC;QACvE,CAAC;QAED,IAAI,eAAe,GAAG,IAAI,CAAC,2BAA2B,CAAC,UAAU,CAAC,CAAC;QAEnE,+DAA+D;QAC/D,IAAI,gBAAgB,KAAK,YAAY,EAAE,CAAC;YACtC,MAAM,mBAAmB,GAAG,IAAI,CAAC,8BAA8B,EAAE,CAAC;YAClE,eAAe,GAAG;gBAChB,GAAG,eAAe;gBAClB,GAAG,mBAAmB;aACvB,CAAC;YACF,OAAO,CAAC,GAAG,CACT,6CAA6C,EAC7C,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAC7C,CAAC;QACJ,CAAC;QAED,2EAA2E;QAC3E,IAAI,oBAAoB,EAAE,CAAC;YACzB,MAAM,aAAa,GAAG,oBAAoB,CAAC,IAAI,EAAE,CAAC;YAClD,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBACzB,MAAM,qBAAqB,GAA4B;oBACrD,sBAAsB,EAAE,aAAa;iBACtC,CAAC;gBACF,eAAe,GAAG;oBAChB,GAAG,eAAe;oBAClB,GAAG,qBAAqB;iBACzB,CAAC;gBAEF,OAAO,CAAC,GAAG,CAAC,gDAAgD,EAAE;oBAC5D,IAAI,EAAE,gBAAgB;oBACtB,eAAe,EAAE,IAAI;oBACrB,YAAY,EAAE,gBAAgB,KAAK,SAAS;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,YAAY,CACrC,MAAM,EACN,WAAW,EACX,SAAS,EACT,gBAAgB,CACjB,CAAC;QAEF,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,YAAY,EAAE,CAAC;QACvC,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC;YACtB,OAAO,EACJ,MAAc,EAAE,aAAa;gBAC7B,MAAc,EAAE,YAAY;gBAC7B,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAChC,MAAM,EACH,MAAc,EAAE,YAAY;gBAC5B,MAAc,EAAE,WAAW;gBAC5B,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;gBAC5B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC;YAC/B,GAAG,EAAE,OAAO;SACb,CAAC,CAAC;QAEH,yEAAyE;QACzE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YAC3C,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7C,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;QAElB,yCAAyC;QACzC,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE;YACnD,YAAY,EAAE,OAAO,CAAC,KAAK;YAC3B,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;YACrC,mBAAmB,EAAE,SAAS;SAC/B,CAAC,CAAC;QAEH,MAAM,aAAa,GAAkB;YACnC,KAAK,EAAE,SAAS;YAChB,gBAAgB,EAAE,aAAa;YAC/B,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,eAAe,CAAC;YACzD,oBAAoB,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC,eAAe,CAAC;YACvE,gBAAgB,EAAE,IAAI;YACtB,gEAAgE;YAChE,eAAe;YACf,gBAAgB,EAAE,IAAI;YACtB,oBAAoB,EAAE,oBAAoB;SAC3C,CAAC;QAEF,OAAO,CAAC,GAAG,CACT,gCAAgC,EAChC,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,CACvC,CAAC;QAEF,MAAM,MAAM,GAAG,cAAc;YAC3B,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,cAAc,EAAE,aAAa,CAAC;YACnD,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;QAErC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,EAAE;YACpC,MAAM;YACN,eAAe,EAAE,IAAI;YACrB,UAAU,EAAE,IAAI;SACjB,CAAC,CAAC;QAEH,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC;QAE9B,6DAA6D;QAC7D,uEAAuE;QACvE,IAAI,eAAe,EAAE,MAAM,EAAE,CAAC;YAC5B,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAC5E,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,eAAuB,EACvB,OAA4B,EAC5B,mBAA4B,KAAK,EACjC,MAAe;QAEf,OAAO,CAAC,MAAM,GAAG,UAAU,CAAC;QAE5B,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,qBAAqB,CAC9B,OAAO,EACP,KAAK,EACL,SAAS,EACT,MAAM,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,SAAS,CAAC,CAC7D,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,gDAAgD,OAAO,CAAC,cAAc,GAAG,EACzE,KAAK,CACN,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACnD,CAAC;QAED,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,sBAA2D,EAC3D,oBAA4B,EAC5B,cAAsB,EACtB,MAA0B,EAC1B,gBAAsC,EACtC,aAAsB,EACtB,QAA2C;QAE3C,OAAO,CAAC,GAAG,CAAC,wCAAwC,cAAc,EAAE,CAAC,CAAC;QAEtE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC1C,sBAAsB,EACtB,oBAAoB,EACpB,EAAE,GAAG,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,EACxC,EAAE,EACF,gBAAgB,EAChB,QAAQ,CACT,CAAC;QAEF,IAAI,aAAa,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,CAAC;YACzE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QAED,OAAO,OAAO,CAAC,cAAc,CAAC;IAChC,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,cAAsB,EACtB,OAAY,EACZ,MAA2B,EAC3B,sBAA4D,EAC5D,oBAA6B,EAC7B,YAAkB,EAClB,sBAA+B,EAC/B,QAA2C;QAE3C,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE;YACnD,cAAc;YACd,SAAS,EAAE,CAAC,CAAC,MAAM;SACpB,CAAC,CAAC;QAEH,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QAEjE,IAAI,CAAC,OAAO,IAAI,YAAY,EAAE,CAAC;YAC7B,MAAM,mBAAmB,GAAG,YAAmC,CAAC;YAChE,MAAM,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAC3C,MAAM,EACN,mBAAmB,EACnB,sBAAsB,CACvB,CAAC;YACF,MAAM,WAAW,GAAuB;gBACtC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;gBACjB,WAAW,EACT,mBAAmB,CAAC,WAAW,IAAI,MAAM,EAAE,WAAW,IAAI,SAAS;gBACrE,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC3D,CAAC;YAEF,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CACnC,sBAA8C;gBAC5C,mBAAmB,CAAC,UAAkC,EACzD,oBAAoB,IAAI,mBAAmB,CAAC,QAAQ,EACpD,WAAW,EACX,EAAE,EACF,mBAAmB,EACnB,QAAQ,CACT,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CACb,iDAAiD,cAAc,EAAE,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;QAE1C,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEhC,OAAO,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;IACtC,CAAC;IAEO,KAAK,CAAC,YAAY,CACxB,MAA0B,EAC1B,WAAoB,EACpB,SAAkB,EAClB,QAAiB;QAEjB,MAAM,OAAO,GAA2B;YACtC,GAAI,MAAM,CAAC,WAAW,CACpB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAC5C;SAC7B,CAAC;QAEF,IAAI,MAAM,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;YAClC,OAAO,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC;QAChE,CAAC;aAAM,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YAC9B,OAAO,CAAC,qBAAqB,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;QACtD,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,CAAC,cAAc,CAAC,GAAG,WAAW,CAAC;QACxC,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC;QACpC,CAAC;QAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7B,OAAO,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;QACzB,CAAC;QAED,sEAAsE;QACtE,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;YACrD,MAAM,gBAAgB,GACnB,MAAc,CAAC,gBAAgB;gBAChC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YACpC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,OAAO,CAAC,oBAAoB,CAAC,GAAG,gBAAgB,CAAC;YACnD,CAAC;YAED,MAAM,UAAU,GACb,MAAc,CAAC,UAAU;gBAC1B,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC9B,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,CAAC,cAAc,CAAC,GAAG,UAAU,CAAC;YACvC,CAAC;YAED,IAAI,CAAC,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC;gBACrC,OAAO,CAAC,IAAI,CACV,uEAAuE,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACzD,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC;QACpC,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,MAA0B;QAE1B,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QAE5C,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CACV,iFAAiF,CAClF,CAAC;YACF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG;YAClB,cAAc,EAAE,IAAI;YACpB,MAAM,EAAE;gBACN,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO;gBAClC,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW;gBAC1C,aAAa,EAAE,EAAE;gBACjB,UAAU,EAAE,MAAM,CAAC,SAAS,CAAC,SAAS;aACvC;YACD,YAAY,EAAE,MAAM,CAAC,SAAS,CAAC,WAAW,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACvE,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC9C,MAAM,EAAE,CAAC,SAAS,CAChB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,EAChC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EACpC,OAAO,CACR,CAAC;YACF,OAAO,QAAQ,CAAC;QAClB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,4DAA4D,EAC5D,KAAK,CACN,CAAC;YACF,MAAM,IAAI,KAAK,CACb,4EAA4E,CAC7E,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,qBAAqB,CAC3B,OAA4B,EAC5B,IAAY,EACZ,iBAA0B;QAE1B,MAAM,OAAO,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAExD,MAAM,QAAQ,GACX,OAAO,CAAC,QAAgC,IAAK,EAA0B,CAAC;QAC3E,MAAM,wBAAwB,GAC5B,iBAAiB,IAAI,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;QAEzD,IAAI,YAAY,IAAI,wBAAwB,EAAE,CAAC;YAC7C,QAAQ,CAAC,sBAAsB,CAAC,GAAG,IAAI,CAAC;YACxC,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAC5B,OAAO,GAAG,YAAY,OAAO,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC;QAChD,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,oBAAoB,CAAC,OAA4B;QACvD,MAAM,KAAK,GAAa,EAAE,CAAC;QAE3B,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CACR,0BAA0B,OAAO,CAAC,kBAAkB,0BAA0B,CAC/E,CAAC;QACJ,CAAC;QAED,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CACR,6BAA6B,OAAO,CAAC,qBAAqB,6BAA6B,CACxF,CAAC;QACJ,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAEO,qBAAqB,CAAC,eAA0B;QACtD,OAAO,eAAe;aACnB,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;YACX,MAAM,IAAI,GAAI,GAAG,CAAC,IAAe,IAAI,MAAM,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClD,OAAO,IAAI,IAAI,cAAc,OAAO,OAAO,IAAI,WAAW,CAAC;QAC7D,CAAC,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,eAA0B,EAC1B,OAA4B;QAE5B,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACjD,IAAI,CAAC,oBAAoB,CAAE,GAAW,CAAC,OAAO,CAAC,CAChD,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;YAC/D,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QAC/D,CAAC;QAED,4DAA4D;QAC5D,MAAM,cAAc,GAAe,EAAE,CAAC;QAEtC,KAAK,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;YAClC,MAAM,IAAI,GAAI,GAAG,CAAC,IAAe,IAAI,MAAM,CAAC;YAC5C,MAAM,OAAO,GAAI,GAAW,CAAC,OAAO,CAAC;YAErC,qBAAqB;YACrB,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,IAAI,WAAW;aAC1B,CAAC,CAAC;YAEH,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC3B,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;oBAC3B,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;wBAAE,SAAS;oBAChD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC1D,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;oBACzD,CAAC;yBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;wBAC7D,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5B,CAAC;gBACH,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,cAAc,CAAC,IAAI,CAAC;oBAClB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;iBACpC,CAAC,CAAC;YACL,CAAC;YAED,qBAAqB;YACrB,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,KAAK,IAAI,WAAW;aAC3B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,qDAAqD,EAAE;gBACjE,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,MAAM,EAAE,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBACzC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ;gBACpD,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAC7B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,MAAM;oBACpD,CAAC,CAAC,CAAC;gBACL,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;oBAC9B,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,MAAM;oBAC3D,CAAC,CAAC,CAAC;aACN,CAAC,CAAC;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,UAAU,CAAC,OAA4B,EAAE,MAAa;QAC5D,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAE5D,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CACb,yCAAyC,OAAO,CAAC,cAAc,EAAE,CAClE,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAC9C,KAAK,CAAC,eAAe,GAAG,eAAe,CAAC;QAExC,OAAO,CAAC,cAAc,GAAG,IAAI,IAAI,EAAE,CAAC;QAEpC,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CACxC,OAAO,EACP,KAAK,CAAC,MAAM,EACZ,MAAM,EACN,eAAe,CAChB,CAAC;QAEF,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC;QAE9B,UAAU;aACP,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,KAAK,CACX,iCAAiC,OAAO,CAAC,cAAc,GAAG,EAC1D,KAAK,CACN,CAAC;gBACF,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAc,CAAC,CAAC;YACzD,CAAC;QACH,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;gBACpC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC;YAC1B,CAAC;YACD,IAAI,KAAK,CAAC,eAAe,KAAK,eAAe,EAAE,CAAC;gBAC9C,KAAK,CAAC,eAAe,GAAG,IAAI,CAAC;YAC/B,CAAC;QACH,CAAC,CAAC,CAAC;IACP,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,OAA4B,EAC5B,MAAc,EACd,MAAa,EACb,eAAgC;QAEhC,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,EAAE;gBAClD,MAAM,EAAE,eAAe,CAAC,MAAM;aAC/B,CAAC,CAAC;YAEH,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,CAAC,GAAG,CACT,mCAAmC,OAAO,CAAC,cAAc,EAAE,CAC5D,CAAC;gBACF,OAAO;YACT,CAAC;YAED,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,cAAsB;QACjD,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACpD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU;YAAE,OAAO;QAExC,IAAI,KAAK,CAAC,eAAe,EAAE,CAAC;YAC1B,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,CAAC;QAChC,CAAC;QAED,IAAI,CAAC;YACH,MAAM,KAAK,CAAC,UAAU,CAAC;QACzB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,CACV,6CAA6C,cAAc,GAAG,EAC9D,KAAK,CACN,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,OAA4B,EAC5B,KAAkB;QAElB,IAAI,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC;YAE9B,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;oBACzD,MAAM;gBACR,CAAC;gBACD,KAAK,cAAc,CAAC,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,GAAG,QAAQ,CAAC;oBAC1B,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE;wBAC7C,OAAO,EAAE,cAAc;wBACvB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,mBAAmB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;6BACpD;yBACF;qBACF,CAAC,CAAC;oBACH,MAAM;gBACR,CAAC;gBACD,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE;wBAC7C,OAAO,EAAE,gBAAgB;wBACzB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,OAAO;gCACb,KAAK,EAAE,KAAK,CAAC,KAAK;6BACnB;yBACF;qBACF,CAAC,CAAC;oBACH,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC3B,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBACjD,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,CAAC,CAAC,CAAC;oBACnB,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,IAAI,aAAa,CAAC,CAAC;oBAC/D,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE;wBAC5C,OAAO,EAAE,aAAa;wBACtB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,KAAK,CAAC,OAAO;6BACpB;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBACpD,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC3B,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;oBACtE,MAAM;gBACR,CAAC;gBACD,KAAK,cAAc,CAAC;gBACpB,KAAK,cAAc,CAAC;gBACpB,KAAK,gBAAgB,CAAC,CAAC,CAAC;oBACtB,MAAM,IAAI,CAAC,gBAAgB,CACzB,OAAO,EACP,KAAK,CAAC,IAAI,EACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAwC,CAChE,CAAC;oBACF,MAAM;gBACR,CAAC;gBACD,KAAK,OAAO,CAAC,CAAC,CAAC;oBACb,MAAM,UAAU,GAAG,IAAI,KAAK,CAAC,KAAK,CAAC,OAAO,IAAI,eAAe,CAAC,CAAC;oBAC/D,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE;wBAC5C,OAAO,EAAE,cAAc;wBACvB,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC;wBACrD,OAAO,EAAE,IAAI;qBACd,CAAC,CAAC;oBACH,MAAM,IAAI,CAAC,wBAAwB,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;oBACzD,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;oBAC3B,MAAM,IAAI,CAAC,qBAAqB,CAC9B,OAAO,EACP,IAAI,EACJ,UAAU,EACV,cAAc,CACf,CAAC;oBACF,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,8CAA8C,EAAE;gBAC5D,KAAK;gBACL,KAAK;aACN,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,OAA4B,EAC5B,IAAgB,EAChB,KAA0C;QAE1C,MAAM,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;QAClE,MAAM,OAAO,GAKT;YACF,OAAO;YACP,OAAO;YACP,OAAO;SACR,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAChC,CAAC;QAED,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtD,CAAC;IAEO,kBAAkB,CACxB,OAA4B,EAC5B,IAAgB,EAChB,KAA0C;QAE1C,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;YAClB,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,IAAI,KAAK,KAAK,WAAW;oBAAE,OAAO,IAAI,CAAC;gBACvC,OAAO;oBACL,IAAI,EAAE,WAAW;oBACjB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE;yBACtB;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,OAAO;oBACL,IAAI,EAAE,UAAU;oBAChB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,UAAU;4BAChB,QAAQ,EAAE,IAAI,CAAC,IAAI;4BACnB,IAAI,EAAE,IAAI,CAAC,IAAI;4BACf,KAAK;yBACN;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,mBAAmB,CAAC,CAAC,CAAC;gBACzB,iEAAiE;gBACjE,8DAA8D;gBAC9D,MAAM,iBAAiB,GAAG,eAAe,CAAC;gBAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CACnC,OAAO,EACP,GAAG,iBAAiB,IAAI,IAAI,CAAC,EAAE,EAAE,CAClC,CAAC;gBACF,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC3C,MAAM,UAAU,GACd,KAAK,KAAK,WAAW;oBACrB,IAAI,CAAC,MAAM,KAAK,WAAW;oBAC3B,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC;gBAE3B,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;wBACxB,OAAO,IAAI,CAAC;oBACd,CAAC;oBAED,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,UAAU;wBACnB,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE;oCACT;wCACE,EAAE,EAAE,SAAS;wCACb,IAAI,EAAE,eAAe;wCACrB,SAAS,EAAE;4CACT,OAAO,EAAE,IAAI,CAAC,OAAO;4CACrB,MAAM,EAAE,IAAI,CAAC,MAAM;yCACpB;wCACD,MAAM,EAAE,IAAI,CAAC,MAAM;qCACpB;iCACF;gCACD,SAAS;6BACV;yBACF;qBACF,CAAC;gBACJ,CAAC;gBAED,MAAM,QAAQ,GACZ,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;gBAElE,OAAO;oBACL,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,aAAa;4BACnB,WAAW,EAAE,SAAS;4BACtB,OAAO,EAAE;gCACP,IAAI,EAAE,sBAAsB;gCAC5B,OAAO,EAAE,IAAI,CAAC,OAAO;gCACrB,MAAM,EAAE,IAAI,CAAC,iBAAiB,IAAI,EAAE;gCACpC,QAAQ;gCACR,MAAM,EAAE,IAAI,CAAC,MAAM;6BACpB;4BACD,SAAS;yBACV;qBACF;oBACD,OAAO;iBACR,CAAC;YACJ,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,IAAI,KAAK,KAAK,SAAS;oBAAE,OAAO,IAAI,CAAC;gBACrC,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,aAAa;4BACnB,OAAO,EAAE,IAAI,CAAC,OAAO;4BACrB,MAAM,EAAE,IAAI,CAAC,MAAM;yBACpB;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,eAAe,CAAC,CAAC,CAAC;gBACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC/D,mEAAmE;gBACnE,kEAAkE;gBAClE,MAAM,eAAe,GAAG,OAAO,QAAQ,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;gBAEhE,IAAI,IAAI,CAAC,MAAM,KAAK,aAAa,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;oBAC3D,OAAO;wBACL,IAAI,EAAE,WAAW;wBACjB,OAAO,EAAE,UAAU;wBACnB,OAAO,EAAE;4BACP;gCACE,SAAS,EAAE;oCACT;wCACE,EAAE,EAAE,SAAS;wCACb,IAAI,EAAE,QAAQ;wCACd,SAAS,EAAE,IAAI,CAAC,SAAS;wCACzB,MAAM,EAAE,IAAI,CAAC,MAAM;wCACnB,IAAI,EAAE,IAAI,CAAC,IAAI;wCACf,MAAM,EAAE,IAAI,CAAC,MAAM;qCACpB;iCACF;gCACD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;6BACpC;yBACF;qBACF,CAAC;gBACJ,CAAC;gBAED,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC7B,OAAO;wBACL,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,aAAa;wBACtB,OAAO,EAAE;4BACP;gCACE,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,kBAAkB;gCAC/C,WAAW,EAAE,SAAS;gCACtB,SAAS,EAAE,QAAQ;gCACnB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;6BACpC;yBACF;wBACD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,aAAa;oBACnB,OAAO,EAAE,aAAa;oBACtB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,aAAa;4BACnB,OAAO,EAAE,aAAa;4BACtB,WAAW,EAAE,SAAS;4BACtB,OAAO,EAAE,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,EAAE;4BACnC,kBAAkB,EAAE,IAAI,CAAC,MAAM,EAAE,kBAAkB;4BACnD,QAAQ,EAAE;gCACR,MAAM,EAAE,IAAI,CAAC,MAAM;gCACnB,IAAI,EAAE,IAAI,CAAC,IAAI;gCACf,IAAI,EAAE,QAAQ;gCACd,oBAAoB,EAAE,IAAI,CAAC,EAAE;6BAC9B;4BACD,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;yBACpC;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,YAAY,CAAC,CAAC,CAAC;gBAClB,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,cAAc,KAAK,EAAE;oBAC9B,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,YAAY;4BAClB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,MAAM,EAAE,KAAK;yBACd;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,WAAW,CAAC,CAAC,CAAC;gBACjB,OAAO;oBACL,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,WAAW;oBACpB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,WAAW;4BACjB,KAAK,EAAE,IAAI,CAAC,KAAK;4BACjB,KAAK;yBACN;qBACF;iBACF,CAAC;YACJ,CAAC;YACD,KAAK,OAAO,CAAC,CAAC,CAAC;gBACb,OAAO;oBACL,IAAI,EAAE,OAAO;oBACb,OAAO,EAAE,QAAQ,KAAK,EAAE;oBACxB,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,OAAO;yBACnB;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YACD;gBACE,OAAO,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,OAA4B,EAC5B,IAAY,EACZ,EACE,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,GAMR;QAED,MAAM,iBAAiB,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAC9C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,CAAC,OAAO,CAAC;gBACX,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,OAAO,GAAG;YACd,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,IAAI;YACJ,OAAO;YACP,OAAO,EAAE,iBAAiB;YAC1B,SAAS;YACT,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;YACzB,SAAS,EAAE,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;YAC1C,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACpC,CAAC;QAEF,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC;QAED,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,OAA4B,EAC5B,QAAgB;QAEhB,IAAI,CAAC,QAAQ,IAAI,QAAQ,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC;YACrD,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;QAC5C,OAAO,CAAC,cAAc,GAAG,QAAQ,CAAC;QAElC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,wBAAwB,EAAE;YACjD,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,iBAAiB,EAAE,YAAY;YAC/B,iBAAiB,EAAE,QAAQ;SAC5B,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CACpB,eAAwB;QAExB,MAAM,IAAI,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACnD,+EAA+E;QAC/E,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAClE,OAAO,WAAW,CAAC;QACrB,CAAC;QACD,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;YACvD,OAAO,iBAAiB,CAAC;QAC3B,CAAC;QACD,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAEO,mBAAmB,CAAC,eAAwB;QAClD,MAAM,IAAI,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACnD,OAAO,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,SAAS,CAAC;IACvE,CAAC;IAEO,wBAAwB,CAC9B,MAA0B;QAE1B,MAAM,cAAc,GAAa,EAAE,CAAC;QACpC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;QAC7C,CAAC;QACD,OAAO,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5D,CAAC;IAEO,2BAA2B,CACjC,UAAgC;QAEhC,IAAI,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAClC,MAAM,SAAS,GAA4B,EAAE,CAAC;QAE9C,KAAK,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,qBAAqB,CACxB,eAAe,UAAU,EAAE,EAC3B,MAAM,EACN,SAAS,CACV,CAAC;QACJ,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAED;;;;;;;OAOG;IACK,8BAA8B;QACpC,OAAO;YACL,cAAc,EAAE,YAAY;YAC5B,iCAAiC,EAAE,YAAY;YAC/C,qCAAqC,EAAE,8BAA8B;YACrE,oCAAoC,EAAE,oBAAoB;SAC3D,CAAC;IACJ,CAAC;IAEO,2BAA2B,CACjC,UAA+B;QAE/B,MAAM,UAAU,GAAwB,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAAC,CAAC;QACjE,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,gBAAgB,CAAC,MAAe,EAAE,IAAa;QACrD,MAAM,UAAU,GAAG,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QAC7D,MAAM,QAAQ,GAAG,CAAC,IAAI,IAAI,SAAS,CAAC,CAAC,IAAI,EAAE,IAAI,SAAS,CAAC;QACzD,OAAO,QAAQ,UAAU,KAAK,QAAQ,EAAE,CAAC;IAC3C,CAAC;IAEO,iBAAiB,CAAC,KAAkB;QAC1C,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC9B,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,OAAO,CAAC,GAAG,CACT,sCAAsC,EACtC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAC1B,CAAC;YAEF,MAAM,OAAO,GAA4B;gBACvC,IAAI,EAAE,KAAK,EAAE,IAAI;gBACjB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAE,KAAiC,IAAI,EAAE,CAAC;gBAC3D,OAAO,EAAE,OAAO,CAAE,KAAa,EAAE,IAAI,CAAC;gBACtC,QAAQ,EAAG,KAAa,EAAE,IAAI,EAAE,IAAI;gBACpC,QAAQ,EAAE,OAAO,CAAE,KAAa,EAAE,KAAK,CAAC;gBACxC,QAAQ,EAAG,KAAa,EAAE,SAAS;gBACnC,MAAM,EAAG,KAAa,EAAE,OAAO;aAChC,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,yCAAyC,EAAE,OAAO,CAAC,CAAC;YAEhE,IAAK,KAAa,EAAE,IAAI,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CACT,sCAAsC,EACtC,IAAI,CAAC,aAAa,CAAE,KAAa,CAAC,IAAI,CAAC,CACxC,CAAC;YACJ,CAAC;YAED,IAAK,KAAa,EAAE,KAAK,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,iCAAiC,EAAG,KAAa,CAAC,KAAK,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAEO,aAAa,CAAC,KAAU;QAC9B,MAAM,IAAI,GAAG,IAAI,OAAO,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,SAAS,CACnB,KAAK,EACL,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,IAAI,OAAO,MAAM,KAAK,UAAU;gBAAE,OAAO,SAAS,CAAC;YACnD,IAAI,OAAO,MAAM,KAAK,QAAQ;gBAAE,OAAO,MAAM,CAAC,QAAQ,EAAE,CAAC;YACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClD,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;oBAAE,OAAO,YAAY,CAAC;gBAC1C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACnB,CAAC;YACD,OAAO,MAAM,CAAC;QAChB,CAAC,EACD,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,OAA4B,EAAE,KAAa;QAChE,MAAM,KAAK,GACT,OAAO,CAAC,cAAc;YACtB,OAAO,CAAC,cAAc;YACtB,OAAO,CAAC,oBAAoB;YAC5B,OAAO,CAAC;QACV,OAAO,GAAG,KAAK,IAAI,KAAK,EAAE,CAAC;IAC7B,CAAC;IAEO,wBAAwB,CAAC,MAAW;QAC1C,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnE,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,UAAU,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QACjC,IACE,UAAU,CAAC,oBAAoB;YAC/B,UAAU,CAAC,OAAO;YAClB,OAAO,UAAU,CAAC,OAAO,KAAK,QAAQ;YACtC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAClC,CAAC;YACD,MAAM,OAAO,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAC1C,OAAO,OAAO,CAAC,eAAe,CAAC,CAAC;YAChC,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtC,OAAO,UAAU,CAAC,OAAO,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,OAAO,GAAG,OAAO,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,qBAAqB,CAC3B,MAAc,EACd,KAAU,EACV,MAA+B;QAE/B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,MAAM,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC;YACvB,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACpB,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC;YACpB,OAAO;QACT,CAAC;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACpC,IAAI,CAAC,qBAAqB,CAAC,GAAG,MAAM,IAAI,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACjE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,OAA4B,EAC5B,MAA0B;QAE1B,IAAI,aAAqB,CAAC;QAC1B,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;QAEvC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,aAAa,GAAG,MAAM,CAAC,cAAc,CAAC;YACtC,OAAO,CAAC,GAAG,CAAC,6CAA6C,aAAa,EAAE,CAAC,CAAC;YAE1E,IAAI,OAAO,CAAC,sBAAsB,KAAK,MAAM,EAAE,CAAC;gBAC9C,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,qBAAqB,CACnE,OAAO,CAAC,oBAAoB,EAC5B,aAAa,CACd,CAAC;gBACD,OAAe,CAAC,UAAU,GAAG,UAAU,CAAC;YAC3C,CAAC;YACD,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IACE,OAAO,CAAC,sBAAsB,KAAK,MAAM;YACzC,MAAM,CAAC,UAAU;YACjB,WAAW,EACX,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACvE,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAChE,OAAO,CAAC,oBAAoB,EAC5B,WAAW,EACX,MAAM,CAAC,UAAU,CAAC,GAAG,EACrB,MAAM,CAAC,UAAU,CAAC,MAAM,EACxB,MAAM,CAAC,WAAW,CACnB,CAAC;YACD,OAAe,CAAC,UAAU,GAAG,UAAU,CAAC;YACzC,aAAa,GAAG,UAAU,CAAC,YAAY,CAAC;YACxC,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,MAAM,CAAC,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;gBACtE,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC;gBAC5C,OAAO,aAAa,CAAC;YACvB,CAAC;YAED,aAAa,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAC7D,WAAW,EACX,MAAM,CAAC,UAAU,CAAC,GAAG,EACrB,MAAM,CAAC,UAAU,CAAC,MAAM,EACxB,MAAM,CAAC,WAAW,CACnB,CAAC;YACF,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,aAAa;gBACX,MAAM,IAAI,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;YAC7D,OAAO,aAAa,CAAC;QACvB,CAAC;QAED,OAAO,OAAO,CAAC,GAAG,EAAE,CAAC;IACvB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAC7B,WAAmB;QAEnB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAC1B,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,eAAe,kCAAkC,WAAW,EAAE,EACrF;gBACE,MAAM,EAAE,KAAK;gBACb,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE;iBAClE;aACF,CACF,CAAC;YAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO,CAAC,KAAK,CACX,iDAAiD,QAAQ,CAAC,MAAM,EAAE,CACnE,CAAC;gBACF,OAAO,SAAS,CAAC;YACnB,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAA6B,CAAC;YACjE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,6CAA6C,EAAE,KAAK,CAAC,CAAC;YACpE,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,iBAAiB,CAAC,OAA4B;QACpD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU;YAAE,OAAO,SAAS,CAAC;QAEjD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;QAE7C,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS;YAAE,OAAO,SAAS,CAAC;QAEjD,OAAO,GAAG,CAAC,IAAI,CACb;YACE,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,SAAS;SACV,EACD,WAAW,EACX;YACE,SAAS,EAAE,KAAK;SACjB,CACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,KAAU;QACrC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACxC,OAAO,KAAK,CAAC,IAAI,CACf,CAAC,IAAI,EAAE,EAAE,CACP,IAAI;YACJ,OAAO,IAAI,KAAK,QAAQ;YACxB,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CACtD,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,gBAAgB,CAC5B,KAAU,EACV,OAA4B,EAC5B,iBAA0B;QAE1B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7D,MAAM,MAAM,GAAgB,EAAE,CAAC;YAE/B,qEAAqE;YACrE,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;oBAAE,SAAS;gBAChD,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;oBAC1D,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7B,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;oBACnD,MAAM,MAAM,GACV,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oBAClE,IAAI,MAAM,EAAE,CAAC;wBACX,UAAU,CAAC,IAAI,CAAC,cAAc,MAAM,GAAG,CAAC,CAAC;oBAC3C,CAAC;gBACH,CAAC;YACH,CAAC;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,qBAAqB,CACzC,OAAO,EACP,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAC3B,iBAAiB,CAClB,CAAC;YACF,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAChD,CAAC;YAED,gEAAgE;YAChE,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBAC/E,SAAS;gBACX,CAAC;gBACD,MAAM,QAAQ,GACZ,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClE,IAAI,CAAC,QAAQ;oBAAE,SAAS;gBAExB,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;gBAC3D,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;gBACtD,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC7B,CAAC;YAED,gGAAgG;YAChG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE,CAAC;gBAC3C,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,iBAAiB,CAAC,CAAC;gBACnF,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;YAED,IAAI,iBAAiB,CAAC,SAAS,CAAC,IAAI,iBAAiB,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC7D,OAAO,CAAC,GAAG,CAAC,4CAA4C,EAAE;oBACxD,cAAc,EAAE,OAAO,CAAC,cAAc;oBACtC,UAAU,EAAE,UAAU,CAAC,MAAM;oBAC7B,UAAU;oBACV,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC;iBACpD,CAAC,CAAC;YACL,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,6BAA6B;QAC7B,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAChD,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAC7E,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,mBAAmB,CAAC,GAAW;QAC3C,8DAA8D;QAC9D,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;YACzE,OAAO,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACxD,CAAC;QAED,qDAAqD;QACrD,IAAI,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC5B,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,IAAI,QAAQ,KAAK,CAAC,CAAC,EAAE,CAAC;gBACpB,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAChD,CAAC;YACD,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,iBAAiB;YACxD,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;YACzC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC;YAChD,MAAM,MAAM,GAAG,QAAQ;gBACrB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBACjC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACnD,CAAC;QAED,sBAAsB;QACtB,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,CAAC,MAAM,UAAU,GAAG,EAAE,CAAC,CAAC;QAC/E,CAAC;QACD,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC;QACrD,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,MAAc,EAAE,GAAW;QACzD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC,CAAC;QAChD,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,GAAG,MAAM,CAAC,UAAU,EAAE,IAAI,GAAG,EAAE,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC1C,MAAM,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACrC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,qBAAqB,CAAC,GAAW;QACvC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,GAAG,EAAE,CAAC;gBACR,OAAO,GAAG,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YACvD,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,gCAAgC;QAClC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,eAAe,CAAC,IAAY;QAClC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,MAAM,GAAG,GAA2B;YAClC,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,KAAK;YAClB,YAAY,EAAE,MAAM;YACpB,WAAW,EAAE,KAAK;SACnB,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC3B,CAAC;IAEO,eAAe,CAAC,KAAU;QAChC,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC5C,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,EAAE,CAAC;QAE7B,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,IAAI,OAAQ,KAAa,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC5C,OAAQ,KAAa,CAAC,IAAI,CAAC;YAC7B,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,MAAM,KAAK,GAAG,KAAK;qBAChB,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;oBACb,IACE,KAAK;wBACL,OAAO,KAAK,KAAK,QAAQ;wBACzB,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,EAC9B,CAAC;wBACD,OAAO,KAAK,CAAC,IAAI,CAAC;oBACpB,CAAC;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;qBACD,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;gBACtD,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;oBACjB,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACzB,CAAC;YACH,CAAC;YACD,IAAI,OAAQ,KAAa,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAC/C,OAAQ,KAAa,CAAC,OAAO,CAAC;YAChC,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,KAAqB;QAC9C,IAAI,CAAC,KAAK;YAAE,OAAO,SAAS,CAAC;QAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC7B,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;IAC9C,CAAC;IAEO,gBAAgB,CACtB,MAA2B,EAC3B,gBAAsC,EACtC,QAAwB;QAExB,OAAO,CACL,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC;YACjC,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,SAAS,CAAC;YAC1C,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,EAAE,cAAc,CAAC;YACzD,IAAI,CAAC,kBAAkB,CAAE,gBAAwB,EAAE,QAAQ,CAAC;YAC5D,IAAI,CAAC,kBAAkB,CAAE,gBAAwB,EAAE,SAAS,CAAC;YAC7D,EAAE,CACH,CAAC;IACJ,CAAC;IAEO,YAAY,CAAC,KAAc;QACjC,IAAI,CAAC,KAAK;YAAE,OAAO,KAAK,CAAC;QACzB,OAAO,CACJ,KAAa,CAAC,IAAI,KAAK,YAAY;YACpC,gBAAgB,CAAC,IAAI,CAAE,KAAa,CAAC,OAAO,IAAI,EAAE,CAAC,CACpD,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,OAA4B,EAC5B,QAAiB,EACjB,KAAW,EACX,MAAe;QAEf,0EAA0E;QAC1E,IAAK,OAAe,CAAC,UAAU;YAAE,OAAO;QACvC,OAAe,CAAC,UAAU,GAAG,IAAI,CAAC;QAEnC,+DAA+D;QAC/D,8DAA8D;QAC9D,IAAI,CAAC,MAAM,CAAC,yBAAyB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAE9D,qCAAqC;QACrC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAChE,iBAAiB,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAE3E,qDAAqD;QACrD,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAkB,EAAE;gBAC3C,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;gBACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;gBAClD,cAAc,EAAE,OAAO,CAAC,cAAc;gBACtC,OAAO,EAAE,QAAQ;gBACjB,YAAY,EAAE,KAAK,EAAE,OAAO;gBAC5B,MAAM;aACP,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,WAAW,EAAE,CAAC;YACrB,OAAO,CAAC,KAAK,CACX,6DAA6D,EAC7D,WAAW,CACZ,CAAC;QACJ,CAAC;QAED,0DAA0D;QAC1D,2EAA2E;QAC3E,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;QACxC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,CAAC,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,OAA4B,EAC5B,KAAY;QAEZ,OAAO,CAAC,KAAK,CACX,yCAAyC,OAAO,CAAC,cAAc,GAAG,EAClE,KAAK,CACN,CAAC;QAEF,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE;YACvC,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,sBAAsB,EAAE,OAAO,CAAC,sBAAsB;YACtD,oBAAoB,EAAE,OAAO,CAAC,oBAAoB;YAClD,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,SAAS,EAAE,aAAa;YACxB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,OAAO,EAAE;gBACP,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB;SACF,CAAC,CAAC;IACL,CAAC;IAEO,iBAAiB,CAAC,OAA4B;QACpD,OAAO,GAAG,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,IAAI,CAAC,MAAM,EAAE;aAC5D,QAAQ,CAAC,EAAE,CAAC;aACZ,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAChB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"codex-sdk-manager.js","sourceRoot":"","sources":["../../src/components/codex-sdk-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -44,11 +44,23 @@ export interface MergeResult {
|
|
|
44
44
|
error?: string;
|
|
45
45
|
}
|
|
46
46
|
export type MergeMode = "ff-only" | "no-ff" | "squash";
|
|
47
|
+
export type TaskIntegrationResult = {
|
|
48
|
+
success: true;
|
|
49
|
+
mergedCommit?: string;
|
|
50
|
+
} | {
|
|
51
|
+
success: false;
|
|
52
|
+
phase: "rebase" | "merge";
|
|
53
|
+
conflicts?: string[];
|
|
54
|
+
error?: string;
|
|
55
|
+
conflictWorkdir: string;
|
|
56
|
+
};
|
|
47
57
|
export interface TaskGitState {
|
|
48
58
|
taskId: string;
|
|
59
|
+
workspaceId?: string;
|
|
49
60
|
branch: string;
|
|
50
61
|
baseBranch: string;
|
|
51
62
|
lastCommit?: string;
|
|
63
|
+
commitCount?: number;
|
|
52
64
|
worktreePath: string;
|
|
53
65
|
status: "active" | "conflicted" | "merged" | "abandoned";
|
|
54
66
|
createdAt: Date;
|
|
@@ -65,11 +77,17 @@ export interface RepositoryState {
|
|
|
65
77
|
export declare class EnhancedRepositoryManager extends RepositoryManager {
|
|
66
78
|
private repoStates;
|
|
67
79
|
private stateFilePath;
|
|
80
|
+
private legacyStateFilePath;
|
|
81
|
+
private repoLocks;
|
|
82
|
+
private taskWorktreesBasePath;
|
|
68
83
|
constructor(runner: IRunnerApp);
|
|
69
84
|
/**
|
|
70
85
|
* Get repository key from owner and repo name
|
|
71
86
|
*/
|
|
72
87
|
private getRepoKey;
|
|
88
|
+
private parseRepoKey;
|
|
89
|
+
private findTaskStateEntry;
|
|
90
|
+
private withRepoLock;
|
|
73
91
|
/**
|
|
74
92
|
* Ensure control repository exists
|
|
75
93
|
*/
|
|
@@ -82,6 +100,7 @@ export declare class EnhancedRepositoryManager extends RepositoryManager {
|
|
|
82
100
|
* Create a task-specific worktree
|
|
83
101
|
*/
|
|
84
102
|
createTaskWorktree(taskId: string, workspaceId: string, repoUrl: string, baseBranch?: string, githubToken?: string): Promise<TaskHandle>;
|
|
103
|
+
private ensureInitialCommitOnBranch;
|
|
85
104
|
/**
|
|
86
105
|
* Remove a task worktree
|
|
87
106
|
*/
|
|
@@ -106,6 +125,25 @@ export declare class EnhancedRepositoryManager extends RepositoryManager {
|
|
|
106
125
|
* Merge a task branch into target branch
|
|
107
126
|
*/
|
|
108
127
|
mergeTask(taskId: string, targetBranch: string, mode?: MergeMode): Promise<MergeResult>;
|
|
128
|
+
private mergeTaskUnlocked;
|
|
129
|
+
getTaskRepoInfo(taskId: string): Promise<{
|
|
130
|
+
repoKey: string;
|
|
131
|
+
controlPath: string;
|
|
132
|
+
worktreePath: string;
|
|
133
|
+
branch: string;
|
|
134
|
+
baseBranch: string;
|
|
135
|
+
} | null>;
|
|
136
|
+
/**
|
|
137
|
+
* Fast-forward (or hard reset) the shared workspace worktree to a branch tip after a task merge.
|
|
138
|
+
* This keeps the "workspace" checkout in sync with concurrent task integrations.
|
|
139
|
+
*
|
|
140
|
+
* We only update existing workspace worktrees and only when they're clean to avoid
|
|
141
|
+
* clobbering any active non-concurrent task that might be using the workspace checkout.
|
|
142
|
+
*/
|
|
143
|
+
syncWorkspaceWorktree(workspaceId: string, repoUrl: string, branch: string): Promise<void>;
|
|
144
|
+
isTaskBranchMerged(taskId: string, targetBranch: string): Promise<boolean>;
|
|
145
|
+
pushBranch(taskId: string, branch: string): Promise<void>;
|
|
146
|
+
integrateTask(taskId: string, targetBranch: string, mode?: MergeMode): Promise<TaskIntegrationResult>;
|
|
109
147
|
/**
|
|
110
148
|
* Get task Git state
|
|
111
149
|
*/
|
|
@@ -126,6 +164,7 @@ export declare class EnhancedRepositoryManager extends RepositoryManager {
|
|
|
126
164
|
* Restore state from disk
|
|
127
165
|
*/
|
|
128
166
|
restoreState(): Promise<void>;
|
|
167
|
+
private migrateLegacyStateFileIfNeeded;
|
|
129
168
|
/**
|
|
130
169
|
* Override parent's checkoutRepository to use worktrees for backward compatibility
|
|
131
170
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enhanced-repository-manager.d.ts","sourceRoot":"","sources":["../../src/components/enhanced-repository-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"enhanced-repository-manager.d.ts","sourceRoot":"","sources":["../../src/components/enhanced-repository-manager.ts"],"names":[],"mappings":"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"}
|