steroids-cli 0.10.35 → 0.10.37
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/commands/loop-phases.d.ts +3 -2
- package/dist/commands/loop-phases.d.ts.map +1 -1
- package/dist/commands/loop-phases.js +146 -50
- package/dist/commands/loop-phases.js.map +1 -1
- package/dist/commands/loop.d.ts.map +1 -1
- package/dist/commands/loop.js +21 -3
- package/dist/commands/loop.js.map +1 -1
- package/dist/commands/workspaces.d.ts.map +1 -1
- package/dist/commands/workspaces.js +71 -1
- package/dist/commands/workspaces.js.map +1 -1
- package/dist/database/queries.d.ts +15 -1
- package/dist/database/queries.d.ts.map +1 -1
- package/dist/database/queries.js +43 -0
- package/dist/database/queries.js.map +1 -1
- package/dist/database/schema.d.ts +2 -2
- package/dist/database/schema.d.ts.map +1 -1
- package/dist/database/schema.js +4 -0
- package/dist/database/schema.js.map +1 -1
- package/dist/orchestrator/coordinator.d.ts.map +1 -1
- package/dist/orchestrator/coordinator.js +2 -1
- package/dist/orchestrator/coordinator.js.map +1 -1
- package/dist/parallel/clone.d.ts.map +1 -1
- package/dist/parallel/clone.js +34 -0
- package/dist/parallel/clone.js.map +1 -1
- package/dist/prompts/coder.d.ts.map +1 -1
- package/dist/prompts/coder.js +3 -2
- package/dist/prompts/coder.js.map +1 -1
- package/dist/prompts/instruction-files.d.ts +44 -0
- package/dist/prompts/instruction-files.d.ts.map +1 -0
- package/dist/prompts/instruction-files.js +104 -0
- package/dist/prompts/instruction-files.js.map +1 -0
- package/dist/prompts/prompt-helpers.d.ts +4 -1
- package/dist/prompts/prompt-helpers.d.ts.map +1 -1
- package/dist/prompts/prompt-helpers.js +6 -11
- package/dist/prompts/prompt-helpers.js.map +1 -1
- package/dist/prompts/reviewer.d.ts.map +1 -1
- package/dist/prompts/reviewer.js +3 -1
- package/dist/prompts/reviewer.js.map +1 -1
- package/dist/providers/claude.d.ts.map +1 -1
- package/dist/providers/claude.js +5 -4
- package/dist/providers/claude.js.map +1 -1
- package/dist/providers/codex.d.ts +6 -0
- package/dist/providers/codex.d.ts.map +1 -1
- package/dist/providers/codex.js +40 -14
- package/dist/providers/codex.js.map +1 -1
- package/dist/runners/global-db-connection.d.ts.map +1 -1
- package/dist/runners/global-db-connection.js +6 -0
- package/dist/runners/global-db-connection.js.map +1 -1
- package/dist/runners/global-db-schema.d.ts +3 -1
- package/dist/runners/global-db-schema.d.ts.map +1 -1
- package/dist/runners/global-db-schema.js +39 -2
- package/dist/runners/global-db-schema.js.map +1 -1
- package/dist/runners/global-db-sessions.d.ts.map +1 -1
- package/dist/runners/global-db-sessions.js +24 -1
- package/dist/runners/global-db-sessions.js.map +1 -1
- package/dist/runners/orchestrator-loop.d.ts.map +1 -1
- package/dist/runners/orchestrator-loop.js +114 -6
- package/dist/runners/orchestrator-loop.js.map +1 -1
- package/dist/runners/wakeup-sanitise.d.ts.map +1 -1
- package/dist/runners/wakeup-sanitise.js +7 -0
- package/dist/runners/wakeup-sanitise.js.map +1 -1
- package/dist/runners/wakeup.d.ts.map +1 -1
- package/dist/runners/wakeup.js +14 -0
- package/dist/runners/wakeup.js.map +1 -1
- package/dist/workspace/git-helpers.d.ts +54 -0
- package/dist/workspace/git-helpers.d.ts.map +1 -0
- package/dist/workspace/git-helpers.js +136 -0
- package/dist/workspace/git-helpers.js.map +1 -0
- package/dist/workspace/git-lifecycle.d.ts +53 -0
- package/dist/workspace/git-lifecycle.d.ts.map +1 -0
- package/dist/workspace/git-lifecycle.js +287 -0
- package/dist/workspace/git-lifecycle.js.map +1 -0
- package/dist/workspace/merge-lock.d.ts +25 -0
- package/dist/workspace/merge-lock.d.ts.map +1 -0
- package/dist/workspace/merge-lock.js +93 -0
- package/dist/workspace/merge-lock.js.map +1 -0
- package/dist/workspace/merge-pipeline.d.ts +21 -0
- package/dist/workspace/merge-pipeline.d.ts.map +1 -0
- package/dist/workspace/merge-pipeline.js +55 -0
- package/dist/workspace/merge-pipeline.js.map +1 -0
- package/dist/workspace/pool.d.ts +59 -0
- package/dist/workspace/pool.d.ts.map +1 -0
- package/dist/workspace/pool.js +247 -0
- package/dist/workspace/pool.js.map +1 -0
- package/dist/workspace/reconcile.d.ts +20 -0
- package/dist/workspace/reconcile.d.ts.map +1 -0
- package/dist/workspace/reconcile.js +50 -0
- package/dist/workspace/reconcile.js.map +1 -0
- package/dist/workspace/types.d.ts +27 -0
- package/dist/workspace/types.d.ts.map +1 -0
- package/dist/workspace/types.js +6 -0
- package/dist/workspace/types.js.map +1 -0
- package/migrations/020_add_workspace_fields.sql +10 -0
- package/migrations/manifest.json +9 -1
- package/package.json +1 -1
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { getTask } from '../database/queries.js';
|
|
2
2
|
import type { openDatabase } from '../database/connection.js';
|
|
3
3
|
import { type CoordinatorResult } from '../orchestrator/coordinator.js';
|
|
4
|
+
import type { PoolSlotContext } from '../workspace/types.js';
|
|
4
5
|
export { type CoordinatorResult };
|
|
5
6
|
interface LeaseFenceContext {
|
|
6
7
|
parallelSessionId?: string;
|
|
@@ -14,6 +15,6 @@ export interface CreditExhaustionResult {
|
|
|
14
15
|
message: string;
|
|
15
16
|
retryAfterMs?: number;
|
|
16
17
|
}
|
|
17
|
-
export declare function runCoderPhase(db: ReturnType<typeof openDatabase>['db'], task: ReturnType<typeof getTask>, projectPath: string, action: 'start' | 'resume', jsonMode?: boolean, coordinatorCache?: Map<string, CoordinatorResult>, coordinatorThresholds?: number[], leaseFence?: LeaseFenceContext, branchName?: string): Promise<void>;
|
|
18
|
-
export declare function runReviewerPhase(db: ReturnType<typeof openDatabase>['db'], task: ReturnType<typeof getTask>, projectPath: string, jsonMode?: boolean, coordinatorResult?: CoordinatorResult, branchName?: string, leaseFence?: LeaseFenceContext): Promise<void>;
|
|
18
|
+
export declare function runCoderPhase(db: ReturnType<typeof openDatabase>['db'], task: ReturnType<typeof getTask>, projectPath: string, action: 'start' | 'resume', jsonMode?: boolean, coordinatorCache?: Map<string, CoordinatorResult>, coordinatorThresholds?: number[], leaseFence?: LeaseFenceContext, branchName?: string, poolSlotContext?: PoolSlotContext): Promise<CreditExhaustionResult | void>;
|
|
19
|
+
export declare function runReviewerPhase(db: ReturnType<typeof openDatabase>['db'], task: ReturnType<typeof getTask>, projectPath: string, jsonMode?: boolean, coordinatorResult?: CoordinatorResult, branchName?: string, leaseFence?: LeaseFenceContext, poolSlotContext?: PoolSlotContext): Promise<CreditExhaustionResult | void>;
|
|
19
20
|
//# sourceMappingURL=loop-phases.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-phases.d.ts","sourceRoot":"","sources":["../../src/commands/loop-phases.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,OAAO,EAeR,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAU9D,OAAO,EAA8C,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"loop-phases.d.ts","sourceRoot":"","sources":["../../src/commands/loop-phases.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,OAAO,EAeR,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAU9D,OAAO,EAA8C,KAAK,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAyBpH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAU7D,OAAO,EAAE,KAAK,iBAAiB,EAAE,CAAC;AAElC,UAAU,iBAAiB;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA4ED,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,yBAAyB,GAAG,YAAY,CAAC;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAqRD,wBAAsB,aAAa,CACjC,EAAE,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,EACzC,IAAI,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,EAChC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,OAAO,GAAG,QAAQ,EAC1B,QAAQ,UAAQ,EAChB,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,EACjD,qBAAqB,CAAC,EAAE,MAAM,EAAE,EAChC,UAAU,CAAC,EAAE,iBAAiB,EAC9B,UAAU,SAAS,EACnB,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CAopBxC;AAED,wBAAsB,gBAAgB,CACpC,EAAE,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC,IAAI,CAAC,EACzC,IAAI,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,EAChC,WAAW,EAAE,MAAM,EACnB,QAAQ,UAAQ,EAChB,iBAAiB,CAAC,EAAE,iBAAiB,EACrC,UAAU,GAAE,MAAe,EAC3B,UAAU,CAAC,EAAE,iBAAiB,EAC9B,eAAe,CAAC,EAAE,eAAe,GAChC,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,CA+hBxC"}
|
|
@@ -19,6 +19,9 @@ const invoke_js_1 = require("../orchestrator/invoke.js");
|
|
|
19
19
|
const fallback_handler_js_1 = require("../orchestrator/fallback-handler.js");
|
|
20
20
|
const loader_js_1 = require("../config/loader.js");
|
|
21
21
|
const registry_js_1 = require("../providers/registry.js");
|
|
22
|
+
const git_lifecycle_js_1 = require("../workspace/git-lifecycle.js");
|
|
23
|
+
const pool_js_1 = require("../workspace/pool.js");
|
|
24
|
+
const merge_pipeline_js_1 = require("../workspace/merge-pipeline.js");
|
|
22
25
|
const WORKSTREAM_LEASE_TTL_SECONDS = 120;
|
|
23
26
|
const LEASE_HEARTBEAT_INTERVAL_MS = 30_000;
|
|
24
27
|
function refreshParallelWorkstreamLease(projectPath, leaseFence) {
|
|
@@ -266,7 +269,7 @@ function resolveCoderSubmittedCommitSha(projectPath, coderOutput, options = {})
|
|
|
266
269
|
}
|
|
267
270
|
return (0, status_js_1.getCurrentCommitSha)(projectPath) || undefined;
|
|
268
271
|
}
|
|
269
|
-
async function runCoderPhase(db, task, projectPath, action, jsonMode = false, coordinatorCache, coordinatorThresholds, leaseFence, branchName = 'main') {
|
|
272
|
+
async function runCoderPhase(db, task, projectPath, action, jsonMode = false, coordinatorCache, coordinatorThresholds, leaseFence, branchName = 'main', poolSlotContext) {
|
|
270
273
|
if (!task)
|
|
271
274
|
return;
|
|
272
275
|
if (!refreshParallelWorkstreamLease(projectPath, leaseFence)) {
|
|
@@ -275,6 +278,28 @@ async function runCoderPhase(db, task, projectPath, action, jsonMode = false, co
|
|
|
275
278
|
}
|
|
276
279
|
return;
|
|
277
280
|
}
|
|
281
|
+
// ── Pool slot: prepare workspace for task ──
|
|
282
|
+
let poolStartingSha;
|
|
283
|
+
let effectiveProjectPath = projectPath;
|
|
284
|
+
if (poolSlotContext) {
|
|
285
|
+
const prepResult = (0, git_lifecycle_js_1.prepareForTask)(poolSlotContext.globalDb, poolSlotContext.slot, task.id, projectPath);
|
|
286
|
+
if (!prepResult.ok) {
|
|
287
|
+
if (!jsonMode) {
|
|
288
|
+
console.log(`\n✗ Workspace preparation failed: ${prepResult.reason}`);
|
|
289
|
+
}
|
|
290
|
+
if (prepResult.blocked) {
|
|
291
|
+
const { setTaskBlocked } = await import('../database/queries.js');
|
|
292
|
+
setTaskBlocked(db, task.id, 'blocked_error', prepResult.reason);
|
|
293
|
+
}
|
|
294
|
+
(0, pool_js_1.releaseSlot)(poolSlotContext.globalDb, poolSlotContext.slot.id);
|
|
295
|
+
return;
|
|
296
|
+
}
|
|
297
|
+
poolStartingSha = prepResult.startingSha;
|
|
298
|
+
effectiveProjectPath = poolSlotContext.slot.slot_path;
|
|
299
|
+
if (!jsonMode) {
|
|
300
|
+
console.log(`\n✓ Workspace prepared (branch: ${prepResult.taskBranch}, base: ${prepResult.baseBranch})`);
|
|
301
|
+
}
|
|
302
|
+
}
|
|
278
303
|
let coordinatorGuidance;
|
|
279
304
|
const thresholds = coordinatorThresholds || [2, 5, 9];
|
|
280
305
|
const persistedMustImplement = (0, queries_js_1.getLatestMustImplementGuidance)(db, task.id);
|
|
@@ -318,7 +343,7 @@ async function runCoderPhase(db, task, projectPath, action, jsonMode = false, co
|
|
|
318
343
|
}));
|
|
319
344
|
}
|
|
320
345
|
coordExtra.submissionNotes = (0, queries_js_1.getLatestSubmissionNotes)(db, task.id);
|
|
321
|
-
const modified = (0, status_js_1.getModifiedFiles)(
|
|
346
|
+
const modified = (0, status_js_1.getModifiedFiles)(effectiveProjectPath);
|
|
322
347
|
if (modified.length > 0) {
|
|
323
348
|
coordExtra.gitDiffSummary = modified.join('\n');
|
|
324
349
|
}
|
|
@@ -368,9 +393,9 @@ async function runCoderPhase(db, task, projectPath, action, jsonMode = false, co
|
|
|
368
393
|
if (!jsonMode) {
|
|
369
394
|
console.log('\n>>> Invoking CODER...\n');
|
|
370
395
|
}
|
|
371
|
-
const initialSha = (0, status_js_1.getCurrentCommitSha)(
|
|
396
|
+
const initialSha = poolStartingSha || (0, status_js_1.getCurrentCommitSha)(effectiveProjectPath) || '';
|
|
372
397
|
const coderConfig = (0, loader_js_1.loadConfig)(projectPath).ai?.coder;
|
|
373
|
-
const coderInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, coder_js_1.invokeCoder)(task,
|
|
398
|
+
const coderInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, coder_js_1.invokeCoder)(task, effectiveProjectPath, action, coordinatorGuidance, leaseFence?.runnerId));
|
|
374
399
|
if (coderInvocation.superseded || !coderInvocation.result) {
|
|
375
400
|
if (!jsonMode) {
|
|
376
401
|
console.log('\n↺ Lease ownership changed during coder invocation; skipping post-processing in this runner.');
|
|
@@ -381,6 +406,18 @@ async function runCoderPhase(db, task, projectPath, action, jsonMode = false, co
|
|
|
381
406
|
if (coderResult.timedOut || !coderResult.success) {
|
|
382
407
|
const providerName = coderConfig?.provider ?? (0, loader_js_1.loadConfig)(projectPath).ai?.coder?.provider ?? 'unknown';
|
|
383
408
|
const modelName = coderConfig?.model ?? (0, loader_js_1.loadConfig)(projectPath).ai?.coder?.model ?? 'unknown';
|
|
409
|
+
// Check for credit/rate_limit exhaustion before counting as a provider failure
|
|
410
|
+
const registry = await (0, registry_js_1.getProviderRegistry)();
|
|
411
|
+
const prov = registry.tryGet(providerName);
|
|
412
|
+
if (prov) {
|
|
413
|
+
const classified = prov.classifyResult(coderResult);
|
|
414
|
+
if (classified?.type === 'credit_exhaustion') {
|
|
415
|
+
return { action: 'pause_credit_exhaustion', provider: providerName, model: modelName, role: 'coder', message: classified.message };
|
|
416
|
+
}
|
|
417
|
+
if (classified?.type === 'rate_limit') {
|
|
418
|
+
return { action: 'rate_limit', provider: providerName, model: modelName, role: 'coder', message: classified.message, retryAfterMs: classified.retryAfterMs };
|
|
419
|
+
}
|
|
420
|
+
}
|
|
384
421
|
const output = (coderResult.stderr || coderResult.stdout || '').trim();
|
|
385
422
|
const failed = await handleProviderInvocationFailure(db, task.id, {
|
|
386
423
|
role: 'coder',
|
|
@@ -395,11 +432,29 @@ async function runCoderPhase(db, task, projectPath, action, jsonMode = false, co
|
|
|
395
432
|
return;
|
|
396
433
|
}
|
|
397
434
|
(0, queries_js_1.clearTaskFailureCount)(db, task.id);
|
|
435
|
+
// ── Pool slot: post-coder verification gate ──
|
|
436
|
+
if (poolSlotContext && poolStartingSha) {
|
|
437
|
+
const gateResult = (0, git_lifecycle_js_1.postCoderGate)(effectiveProjectPath, poolStartingSha, task.title);
|
|
438
|
+
if (!gateResult.ok) {
|
|
439
|
+
if (!jsonMode) {
|
|
440
|
+
console.log(`\n⟳ Post-coder gate: ${gateResult.reason}. Returning to coder.`);
|
|
441
|
+
}
|
|
442
|
+
(0, queries_js_1.addAuditEntry)(db, task.id, task.status, task.status, 'orchestrator', {
|
|
443
|
+
actorType: 'orchestrator',
|
|
444
|
+
notes: `[retry] Post-coder gate: ${gateResult.reason}`,
|
|
445
|
+
});
|
|
446
|
+
return;
|
|
447
|
+
}
|
|
448
|
+
if (gateResult.autoCommitted && !jsonMode) {
|
|
449
|
+
console.log('\n✓ Post-coder gate: auto-committed uncommitted work');
|
|
450
|
+
}
|
|
451
|
+
(0, pool_js_1.updateSlotStatus)(poolSlotContext.globalDb, poolSlotContext.slot.id, 'awaiting_review');
|
|
452
|
+
}
|
|
398
453
|
// STEP 2: Gather git state
|
|
399
|
-
const commits = (0, status_js_1.getRecentCommits)(
|
|
400
|
-
const files_changed = (0, status_js_1.getChangedFiles)(
|
|
401
|
-
const has_uncommitted = (0, status_js_1.hasUncommittedChanges)(
|
|
402
|
-
const diff_summary = (0, status_js_1.getDiffSummary)(
|
|
454
|
+
const commits = (0, status_js_1.getRecentCommits)(effectiveProjectPath, 5, initialSha);
|
|
455
|
+
const files_changed = (0, status_js_1.getChangedFiles)(effectiveProjectPath);
|
|
456
|
+
const has_uncommitted = (0, status_js_1.hasUncommittedChanges)(effectiveProjectPath);
|
|
457
|
+
const diff_summary = (0, status_js_1.getDiffSummary)(effectiveProjectPath);
|
|
403
458
|
const hasRelevantChanges = has_uncommitted || commits.length > 0 || files_changed.length > 0;
|
|
404
459
|
const gitState = {
|
|
405
460
|
commits,
|
|
@@ -621,7 +676,7 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
621
676
|
switch (decision.action) {
|
|
622
677
|
case 'submit':
|
|
623
678
|
{
|
|
624
|
-
const submissionCommitSha = resolveCoderSubmittedCommitSha(
|
|
679
|
+
const submissionCommitSha = resolveCoderSubmittedCommitSha(effectiveProjectPath, coderResult.stdout, {
|
|
625
680
|
requireExplicitToken: requiresExplicitSubmissionCommit,
|
|
626
681
|
});
|
|
627
682
|
if (!submissionCommitSha && requiresExplicitSubmissionCommit) {
|
|
@@ -634,7 +689,7 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
634
689
|
}
|
|
635
690
|
break;
|
|
636
691
|
}
|
|
637
|
-
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(
|
|
692
|
+
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(effectiveProjectPath, submissionCommitSha)) {
|
|
638
693
|
(0, queries_js_1.updateTaskStatus)(db, task.id, 'failed', 'orchestrator', 'Task failed: cannot submit to review without a valid commit hash');
|
|
639
694
|
if (!jsonMode) {
|
|
640
695
|
console.log('\n✗ Task failed (submission commit missing or not in workspace)');
|
|
@@ -659,7 +714,7 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
659
714
|
break;
|
|
660
715
|
case 'stage_commit_submit':
|
|
661
716
|
if (!has_uncommitted) {
|
|
662
|
-
const submissionCommitSha = resolveCoderSubmittedCommitSha(
|
|
717
|
+
const submissionCommitSha = resolveCoderSubmittedCommitSha(effectiveProjectPath, coderResult.stdout, {
|
|
663
718
|
requireExplicitToken: requiresExplicitSubmissionCommit,
|
|
664
719
|
});
|
|
665
720
|
if (!submissionCommitSha && requiresExplicitSubmissionCommit) {
|
|
@@ -672,7 +727,7 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
672
727
|
}
|
|
673
728
|
break;
|
|
674
729
|
}
|
|
675
|
-
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(
|
|
730
|
+
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(effectiveProjectPath, submissionCommitSha)) {
|
|
676
731
|
(0, queries_js_1.updateTaskStatus)(db, task.id, 'failed', 'orchestrator', 'Task failed: cannot submit to review without a valid commit hash');
|
|
677
732
|
if (!jsonMode) {
|
|
678
733
|
console.log('\n✗ Task failed (submission commit missing or not in workspace)');
|
|
@@ -703,14 +758,14 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
703
758
|
}
|
|
704
759
|
// Stage all changes
|
|
705
760
|
try {
|
|
706
|
-
(0, node_child_process_1.execSync)('git add -A', { cwd:
|
|
761
|
+
(0, node_child_process_1.execSync)('git add -A', { cwd: effectiveProjectPath, stdio: 'pipe' });
|
|
707
762
|
const message = decision.commit_message || 'feat: implement task specification';
|
|
708
763
|
(0, node_child_process_1.execSync)(`git commit -m "${message.replace(/"/g, '\\"')}"`, {
|
|
709
|
-
cwd:
|
|
764
|
+
cwd: effectiveProjectPath,
|
|
710
765
|
stdio: 'pipe'
|
|
711
766
|
});
|
|
712
|
-
const submissionCommitSha = (0, status_js_1.getCurrentCommitSha)(
|
|
713
|
-
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(
|
|
767
|
+
const submissionCommitSha = (0, status_js_1.getCurrentCommitSha)(effectiveProjectPath) || undefined;
|
|
768
|
+
if (!submissionCommitSha || !(0, status_js_1.isCommitReachable)(effectiveProjectPath, submissionCommitSha)) {
|
|
714
769
|
(0, queries_js_1.updateTaskStatus)(db, task.id, 'failed', 'orchestrator', 'Task failed: auto-committed but commit hash is not in current workspace');
|
|
715
770
|
if (!jsonMode) {
|
|
716
771
|
console.log('\n✗ Task failed (auto-commit hash not in workspace)');
|
|
@@ -754,7 +809,7 @@ Only use WONT_FIX if you provide exceptional technical evidence and the orchestr
|
|
|
754
809
|
break;
|
|
755
810
|
}
|
|
756
811
|
}
|
|
757
|
-
async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordinatorResult, branchName = 'main', leaseFence) {
|
|
812
|
+
async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordinatorResult, branchName = 'main', leaseFence, poolSlotContext) {
|
|
758
813
|
if (!task)
|
|
759
814
|
return;
|
|
760
815
|
if (!refreshParallelWorkstreamLease(projectPath, leaseFence)) {
|
|
@@ -763,7 +818,12 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
763
818
|
}
|
|
764
819
|
return;
|
|
765
820
|
}
|
|
766
|
-
|
|
821
|
+
// ── Pool slot: set effective path for reviewer ──
|
|
822
|
+
const effectiveProjectPath = poolSlotContext ? poolSlotContext.slot.slot_path : projectPath;
|
|
823
|
+
if (poolSlotContext) {
|
|
824
|
+
(0, pool_js_1.updateSlotStatus)(poolSlotContext.globalDb, poolSlotContext.slot.id, 'review_active');
|
|
825
|
+
}
|
|
826
|
+
const submissionResolution = (0, submission_resolution_js_1.resolveSubmissionCommitWithRecovery)(effectiveProjectPath, (0, queries_js_1.getSubmissionCommitShas)(db, task.id));
|
|
767
827
|
if (submissionResolution.status !== 'resolved') {
|
|
768
828
|
const attemptsText = submissionResolution.attempts.join(' | ') || 'none';
|
|
769
829
|
(0, queries_js_1.updateTaskStatus)(db, task.id, 'in_progress', 'orchestrator', `[commit_recovery] Missing reachable submission hash (${submissionResolution.reason}; attempts: ${attemptsText}). ` +
|
|
@@ -788,7 +848,7 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
788
848
|
console.log(`Coordinator guidance included (decision: ${coordinatorResult.decision})`);
|
|
789
849
|
}
|
|
790
850
|
}
|
|
791
|
-
const reviewerInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, reviewer_js_1.invokeReviewers)(task,
|
|
851
|
+
const reviewerInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, reviewer_js_1.invokeReviewers)(task, effectiveProjectPath, reviewerConfigs, coordinatorResult?.guidance, coordinatorResult?.decision, leaseFence?.runnerId));
|
|
792
852
|
if (reviewerInvocation.superseded || !reviewerInvocation.result) {
|
|
793
853
|
if (!jsonMode) {
|
|
794
854
|
console.log('\n↺ Lease ownership changed during reviewer invocation; skipping post-processing in this runner.');
|
|
@@ -832,7 +892,7 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
832
892
|
console.log(`Coordinator guidance included (decision: ${coordinatorResult.decision})`);
|
|
833
893
|
}
|
|
834
894
|
}
|
|
835
|
-
const reviewerInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, reviewer_js_1.invokeReviewer)(task,
|
|
895
|
+
const reviewerInvocation = await invokeWithLeaseHeartbeat(projectPath, leaseFence, () => (0, reviewer_js_1.invokeReviewer)(task, effectiveProjectPath, coordinatorResult?.guidance, coordinatorResult?.decision, undefined, leaseFence?.runnerId));
|
|
836
896
|
if (reviewerInvocation.superseded || !reviewerInvocation.result) {
|
|
837
897
|
if (!jsonMode) {
|
|
838
898
|
console.log('\n↺ Lease ownership changed during reviewer invocation; skipping post-processing in this runner.');
|
|
@@ -847,25 +907,28 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
847
907
|
const modelName = reviewerResult.model ??
|
|
848
908
|
phaseConfig.ai?.reviewer?.model ??
|
|
849
909
|
'unknown';
|
|
850
|
-
|
|
851
|
-
const
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
910
|
+
// Check for credit/rate_limit exhaustion before provider failure handling
|
|
911
|
+
const registry = await (0, registry_js_1.getProviderRegistry)();
|
|
912
|
+
const prov = registry.tryGet(providerName);
|
|
913
|
+
if (prov) {
|
|
914
|
+
const classified = prov.classifyResult(reviewerResult);
|
|
915
|
+
if (classified?.type === 'credit_exhaustion') {
|
|
916
|
+
return { action: 'pause_credit_exhaustion', provider: providerName, model: modelName, role: 'reviewer', message: classified.message };
|
|
917
|
+
}
|
|
918
|
+
if (classified?.type === 'rate_limit') {
|
|
919
|
+
return { action: 'rate_limit', provider: providerName, model: modelName, role: 'reviewer', message: classified.message, retryAfterMs: classified.retryAfterMs };
|
|
920
|
+
}
|
|
860
921
|
}
|
|
861
|
-
|
|
922
|
+
// Non-credit/rate-limit reviewer failure: fall through to orchestrator
|
|
923
|
+
}
|
|
924
|
+
else {
|
|
925
|
+
(0, queries_js_1.clearTaskFailureCount)(db, task.id);
|
|
862
926
|
}
|
|
863
|
-
(0, queries_js_1.clearTaskFailureCount)(db, task.id);
|
|
864
927
|
}
|
|
865
928
|
// STEP 2: Gather git context
|
|
866
|
-
const commit_sha = (0, status_js_1.getCurrentCommitSha)(
|
|
867
|
-
const files_changed = (0, status_js_1.getModifiedFiles)(
|
|
868
|
-
const diffStats = (0, status_js_1.getDiffStats)(
|
|
929
|
+
const commit_sha = (0, status_js_1.getCurrentCommitSha)(effectiveProjectPath) || '';
|
|
930
|
+
const files_changed = (0, status_js_1.getModifiedFiles)(effectiveProjectPath);
|
|
931
|
+
const diffStats = (0, status_js_1.getDiffStats)(effectiveProjectPath);
|
|
869
932
|
const gitContext = {
|
|
870
933
|
commit_sha,
|
|
871
934
|
files_changed,
|
|
@@ -1132,23 +1195,56 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
1132
1195
|
const commitSha = submissionCommitSha;
|
|
1133
1196
|
switch (decision.decision) {
|
|
1134
1197
|
case 'approve':
|
|
1135
|
-
(
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1198
|
+
if (poolSlotContext) {
|
|
1199
|
+
// ── Pool slot: post-review gate + merge pipeline ──
|
|
1200
|
+
(0, git_lifecycle_js_1.postReviewGate)(effectiveProjectPath);
|
|
1201
|
+
// Refresh slot from DB before merge
|
|
1202
|
+
const freshSlot = (0, pool_js_1.getSlot)(poolSlotContext.globalDb, poolSlotContext.slot.id);
|
|
1203
|
+
if (!freshSlot) {
|
|
1204
|
+
if (!jsonMode)
|
|
1205
|
+
console.log('\n✗ Pool slot disappeared during review');
|
|
1206
|
+
return;
|
|
1207
|
+
}
|
|
1208
|
+
const mergeResult = (0, git_lifecycle_js_1.mergeToBase)(poolSlotContext.globalDb, freshSlot, task.id);
|
|
1209
|
+
if (!mergeResult.ok) {
|
|
1210
|
+
const failureResult = (0, merge_pipeline_js_1.handleMergeFailure)(db, poolSlotContext, task.id, mergeResult);
|
|
1211
|
+
if (!jsonMode) {
|
|
1212
|
+
if (failureResult.taskBlocked) {
|
|
1213
|
+
console.log(`\n✗ Task BLOCKED (${failureResult.blockStatus}): ${failureResult.reason}`);
|
|
1214
|
+
}
|
|
1215
|
+
else {
|
|
1216
|
+
console.log(`\n⟳ Merge failed, returning to pending: ${failureResult.reason}`);
|
|
1217
|
+
}
|
|
1218
|
+
}
|
|
1219
|
+
return;
|
|
1220
|
+
}
|
|
1221
|
+
// Merge succeeded — approve the task
|
|
1222
|
+
(0, queries_js_1.approveTask)(db, task.id, 'orchestrator', decision.notes, mergeResult.mergedSha || commitSha);
|
|
1223
|
+
(0, pool_js_1.releaseSlot)(poolSlotContext.globalDb, poolSlotContext.slot.id);
|
|
1141
1224
|
if (!jsonMode) {
|
|
1142
|
-
console.log(
|
|
1225
|
+
console.log(`\n✓ Task APPROVED and merged (sha: ${mergeResult.mergedSha})`);
|
|
1143
1226
|
}
|
|
1144
|
-
return;
|
|
1145
1227
|
}
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1228
|
+
else {
|
|
1229
|
+
// Legacy path: direct push
|
|
1230
|
+
(0, queries_js_1.approveTask)(db, task.id, 'orchestrator', decision.notes, commitSha);
|
|
1231
|
+
if (!jsonMode) {
|
|
1232
|
+
console.log(`\n✓ Task APPROVED (confidence: ${decision.confidence})`);
|
|
1233
|
+
console.log('Pushing to git...');
|
|
1234
|
+
}
|
|
1235
|
+
if (!refreshParallelWorkstreamLease(projectPath, leaseFence)) {
|
|
1236
|
+
if (!jsonMode) {
|
|
1237
|
+
console.log('\n↺ Lease ownership lost before review push; skipping push in this runner.');
|
|
1238
|
+
}
|
|
1239
|
+
return;
|
|
1240
|
+
}
|
|
1241
|
+
const pushResult = (0, push_js_1.pushToRemote)(effectiveProjectPath, 'origin', branchName);
|
|
1242
|
+
if (!jsonMode && pushResult.success) {
|
|
1243
|
+
console.log(`Pushed successfully (${pushResult.commitHash})`);
|
|
1244
|
+
}
|
|
1245
|
+
else if (!jsonMode) {
|
|
1246
|
+
console.warn('Push failed. Will stack and retry on next completion.');
|
|
1247
|
+
}
|
|
1152
1248
|
}
|
|
1153
1249
|
break;
|
|
1154
1250
|
case 'reject':
|
|
@@ -1170,7 +1266,7 @@ async function runReviewerPhase(db, task, projectPath, jsonMode = false, coordin
|
|
|
1170
1266
|
}
|
|
1171
1267
|
return;
|
|
1172
1268
|
}
|
|
1173
|
-
const disputePush = (0, push_js_1.pushToRemote)(
|
|
1269
|
+
const disputePush = (0, push_js_1.pushToRemote)(effectiveProjectPath, 'origin', branchName);
|
|
1174
1270
|
if (!jsonMode && disputePush.success) {
|
|
1175
1271
|
console.log(`Pushed disputed work (${disputePush.commitHash})`);
|
|
1176
1272
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-phases.js","sourceRoot":"","sources":["../../src/commands/loop-phases.ts"],"names":[],"mappings":";;AAyaA,sCA6lBC;AAED,4CAkgBC;AA1gDD,0DAA6D;AAC7D;;;GAGG;AAEH,2DAA8C;AAC9C,uDAgBgC;AAEhC,uDAAyE;AACzE,6DAOqC;AACrC,mEAAoH;AACpH,4CAA8C;AAC9C,gDAU0B;AAC1B,8EAAsF;AACtF,yDAImC;AACnC,6EAAmF;AAEnF,mDAAsE;AACtE,0DAA+D;AAW/D,MAAM,4BAA4B,GAAG,GAAG,CAAC;AACzC,MAAM,2BAA2B,GAAG,MAAM,CAAC;AAE3C,SAAS,8BAA8B,CAAC,WAAmB,EAAE,UAA8B;IACzF,IAAI,CAAC,UAAU,EAAE,iBAAiB,EAAE,CAAC;QACnC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,IAAA,iCAAkB,EAAC,CAAC,EAAO,EAAE,EAAE;QACpC,MAAM,GAAG,GAAG,EAAE;aACX,OAAO,CACN;;;;;iBAKS,CACV;aACA,GAAG,CAAC,UAAU,CAAC,iBAAiB,EAAE,WAAW,CAEnC,CAAC;QAEd,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,IAAI,GAAG,CAAC,SAAS,IAAI,UAAU,OAAO,CAAC,GAAG,IAAI,SAAS,EAAE,CAAC;QAC3F,MAAM,YAAY,GAAG,EAAE;aACpB,OAAO,CACN;;oDAE4C,4BAA4B;;;oCAG5C,CAC7B;aACA,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAE5C,OAAO,YAAY,CAAC,OAAO,KAAK,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,wBAAwB,CACrC,WAAmB,EACnB,UAAyC,EACzC,QAA0B;IAE1B,IAAI,CAAC,UAAU,EAAE,iBAAiB,EAAE,CAAC;QACnC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,EAAE,EAAE,CAAC;IACzD,CAAC;IAED,IAAI,UAAU,GAAG,KAAK,CAAC;IACvB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;QAChC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAC1E,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;IACH,CAAC,EAAE,2BAA2B,CAAC,CAAC;IAChC,QAAQ,CAAC,KAAK,EAAE,EAAE,CAAC;IAEnB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,QAAQ,EAAE,CAAC;QAChC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;QAC9B,CAAC;QACD,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IACvC,CAAC;YAAS,CAAC;QACT,aAAa,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAWD,SAAS,qBAAqB,CAAC,KAAc;IAC3C,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,2BAA2B,CACxC,KAAc,EACd,WAAmB;IAEnB,MAAM,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEpC,IAAI,KAAK,CAAC,QAAQ,CAAC,yCAAyC,CAAC,EAAE,CAAC;QAC9D,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC1E,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;IACvC,MAAM,YAAY,GAAG,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,CAAC;IACvD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,IAAI,EAAE,2BAA2B,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IAC1E,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAmB,GAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;IACrE,CAAC;IAED,MAAM,gBAAgB,GAAiB;QACrC,OAAO,EAAE,KAAK;QACd,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,OAAO;QACf,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,KAAK;KAChB,CAAC;IAEF,MAAM,UAAU,GAAG,QAAQ,CAAC,cAAc,CAAC,gBAAgB,CAAC,CAAC;IAC7D,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO;QACL,IAAI,EAAE,UAAU,CAAC,IAAI;QACrB,OAAO,EAAE,UAAU,CAAC,OAAO,IAAI,OAAO;QACtC,SAAS,EAAE,UAAU,CAAC,SAAS;KAChC,CAAC;AACJ,CAAC;AAED,MAAM,8BAA8B,GAAG,CAAC,CAAC;AACzC,MAAM,8BAA8B,GAAG,CAAC,CAAC;AACzC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AACxC,MAAM,6BAA6B,GAAG,CAAC,CAAC;AACxC,MAAM,2BAA2B,GAAG,4DAA4D,CAAC;AACjG,MAAM,8BAA8B,GAAG,0DAA0D,CAAC;AAClG,MAAM,yBAAyB,GAAG,sBAAsB,CAAC;AACzD,MAAM,kCAAkC,GAAG,+BAA+B,CAAC;AAC3E,MAAM,qBAAqB,GAAG,kBAAkB,CAAC;AAcjD,SAAS,4BAA4B,CACnC,MAAc,EACd,OAA+B;IAE/B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,4CAA4C,CAAC;IAC9E,OAAO,QAAQ,MAAM,cAAc,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,gCAAgC,OAAO,CAAC,QAAQ,WAAW,OAAO,CAAC,IAAI,WAAW,MAAM,EAAE,CAAC;AACjK,CAAC;AAED,KAAK,UAAU,+BAA+B,CAC5C,EAAyC,EACzC,MAAc,EACd,OAA+B,EAC/B,QAAiB;IAEjB,MAAM,YAAY,GAAG,IAAA,sCAAyB,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,4BAA4B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEtE,IAAI,YAAY,IAAI,6BAA6B,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,GAAG,eAAe,gCAAgC,YAAY,yBAAyB,CAAC;QACvG,IAAA,6BAAgB,EAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;QAE/D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,GAAG,CAAC,CAAC;QAC7C,CAAC;QAED,OAAO,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,WAAW,GAAG,6BAA6B,GAAG,YAAY,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,mCAAmC,YAAY,IAAI,6BAA6B,cAAc,MAAM,eAAe,WAAW,oBAAoB,CAAC,CAAC;QAChK,OAAO,CAAC,GAAG,CAAC,OAAO,eAAe,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC;AACnC,CAAC;AAED,SAAS,2CAA2C,CAClD,EAAyC,EACzC,MAAc,EACd,MAAc;IAEd,MAAM,KAAK,GAAG,IAAA,yBAAY,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc;YAAE,MAAM;QAE1C,8DAA8D;QAC9D,MAAM,UAAU,GAAG,KAAK,CAAC,QAAQ,KAAK,UAAU,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,KAAK,MAAM,CAAC;QAEhD,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;YAC9B,KAAK,IAAI,CAAC,CAAC;QACb,CAAC;aAAM,CAAC;YACN,MAAM;QACR,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,8BAA8B,CACrC,EAAyC,EACzC,MAAc;IAEd,MAAM,KAAK,GAAG,IAAA,yBAAY,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc;YAAE,MAAM;QAE1C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAChD,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QAED,MAAM;IACR,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,SAAS,4BAA4B,CACnC,EAAyC,EACzC,MAAc;IAEd,MAAM,KAAK,GAAG,IAAA,yBAAY,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc;YAAE,MAAM;QAE1C,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;YAC9C,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QAED,MAAM;IACR,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,yCAAyC,CAChD,EAAyC,EACzC,MAAc,EACd,WAAmB,EACnB,eAAwB;IAExB,MAAM,KAAK,GAAG,IAAA,yBAAY,EAAC,EAAE,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,GAAG,CAAC,CAAC;IAEd,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB,IAAI,KAAK,CAAC,KAAK,KAAK,cAAc,EAAE,CAAC;YACnC,SAAS,CAAC,wCAAwC;QACpD,CAAC;QAED,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAChC,KAAK,IAAI,CAAC,CAAC;YACX,SAAS;QACX,CAAC;QAED,IAAI,eAAe,IAAI,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YACvD,MAAM,CAAC,mDAAmD;QAC5D,CAAC;QAED,MAAM;IACR,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAc;IACnD,IAAI,CAAC,KAAK;QAAE,OAAO,CAAC,CAAC;IACrB,OAAO,KAAK;SACT,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;SACjD,MAAM,CAAC;AACZ,CAAC;AAED,SAAS,wBAAwB,CAAC,MAAc;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAEnC,IAAI,sFAAsF,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvG,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,sGAAsG,CAAC,IAAI,CAChH,KAAK,CACN,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CAAC,MAAc;IAClD,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;IAClF,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AAC5B,CAAC;AAED,SAAS,8BAA8B,CACrC,WAAmB,EACnB,WAAmB,EACnB,UAA8C,EAAE;IAEhD,MAAM,QAAQ,GAAG,4BAA4B,CAAC,WAAW,CAAC,CAAC;IAC3D,IAAI,QAAQ,IAAI,IAAA,sCAA0B,EAAC,WAAW,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACxF,IAAI,CAAC;YACH,OAAO,IAAA,6BAAQ,EAAC,iBAAiB,QAAQ,WAAW,EAAE;gBACpD,GAAG,EAAE,WAAW;gBAChB,QAAQ,EAAE,OAAO;gBACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;aAChC,CAAC,CAAC,IAAI,EAAE,CAAC;QACZ,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,oBAAoB,EAAE,CAAC;QACjC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,OAAO,IAAA,+BAAmB,EAAC,WAAW,CAAC,IAAI,SAAS,CAAC;AACvD,CAAC;AAEM,KAAK,UAAU,aAAa,CACjC,EAAyC,EACzC,IAAgC,EAChC,WAAmB,EACnB,MAA0B,EAC1B,QAAQ,GAAG,KAAK,EAChB,gBAAiD,EACjD,qBAAgC,EAChC,UAA8B,EAC9B,UAAU,GAAG,MAAM;IAEnB,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC;QAC5F,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAI,mBAAuC,CAAC;IAC5C,MAAM,UAAU,GAAG,qBAAqB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACtD,MAAM,sBAAsB,GAAG,IAAA,2CAA8B,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC3E,MAAM,mBAAmB,GACvB,sBAAsB;QACtB,IAAI,CAAC,MAAM,KAAK,aAAa;QAC7B,IAAI,CAAC,eAAe,IAAI,sBAAsB,CAAC,yBAAyB;QACtE,CAAC,CAAC,sBAAsB;QACxB,CAAC,CAAC,IAAI,CAAC;IAEX,2DAA2D;IAC3D,MAAM,uBAAuB,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAC1E,MAAM,YAAY,GAAG,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpD,IAAI,mBAAmB,EAAE,CAAC;QACxB,mBAAmB,GAAG,mBAAmB,CAAC,QAAQ,CAAC;QACnD,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;YAC7B,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,aAAa;YACvB,QAAQ,EAAE,mBAAmB,CAAC,QAAQ;SACvC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,iDAAiD,mBAAmB,CAAC,yBAAyB,GAAG,CAAC,CAAC;QACjH,CAAC;IACH,CAAC;IAED,IAAI,uBAAuB,EAAE,CAAC;QAC5B,IACE,mBAAmB;YACnB,IAAI,CAAC,eAAe,KAAK,mBAAmB,CAAC,yBAAyB,EACtE,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,mGAAmG,CAAC,CAAC;YACnH,CAAC;QACH,CAAC;aAAM,CAAC;YACR,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,CAAC,eAAe,yDAAyD,CAAC,CAAC;YAC/G,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,gBAAgB,GAAG,IAAA,8BAAiB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxD,MAAM,UAAU,GAAuB,EAAE,CAAC;gBAE1C,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,eAAe,GAAG,IAAA,sBAAS,EAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtE,UAAU,CAAC,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBAClD,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM;qBAC3C,CAAC,CAAC,CAAC;gBACN,CAAC;gBAED,UAAU,CAAC,eAAe,GAAG,IAAA,qCAAwB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAEnE,MAAM,QAAQ,GAAG,IAAA,4BAAgB,EAAC,WAAW,CAAC,CAAC;gBAC/C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACxB,UAAU,CAAC,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAClD,CAAC;gBAED,IAAI,YAAY,EAAE,CAAC;oBACjB,UAAU,CAAC,gBAAgB,GAAG,YAAY,CAAC,QAAQ,CAAC;gBACtD,CAAC;gBACD,IAAI,mBAAmB,EAAE,CAAC;oBACxB,UAAU,CAAC,2BAA2B,GAAG,mBAAmB,CAAC,QAAQ,CAAC;oBACtE,UAAU,CAAC,4BAA4B,GAAG,mBAAmB,CAAC,yBAAyB,CAAC;gBAC1F,CAAC;gBAED,MAAM,WAAW,GAAG,MAAM,IAAA,kCAAiB,EAAC,IAAI,EAAE,gBAAgB,EAAE,WAAW,EAAE,UAAU,CAAC,CAAC;gBAC7F,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,gBAAgB,GACpB,mBAAmB;wBACnB,IAAI,CAAC,eAAe,GAAG,mBAAmB,CAAC,yBAAyB,CAAC;oBACvE,MAAM,kBAAkB,GAAG,gBAAgB,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;wBAC9F,CAAC,CAAC,GAAG,mBAAmB,CAAC,QAAQ,yCAAyC,WAAW,CAAC,QAAQ,EAAE;wBAChG,CAAC,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAEzB,mBAAmB,GAAG,kBAAkB,CAAC;oBACzC,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;wBAC7B,GAAG,WAAW;wBACd,QAAQ,EAAE,kBAAkB;qBAC7B,CAAC,CAAC;oBAEH,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE;wBAClE,SAAS,EAAE,cAAc;wBACzB,KAAK,EAAE,IAAI,WAAW,CAAC,QAAQ,KAAK,kBAAkB,EAAE;qBACzD,CAAC,CAAC;oBAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,2BAA2B,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;wBAC/D,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;oBAC1E,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,IAAI,CAAC,6DAA6D,EAAE,KAAK,CAAC,CAAC;gBACrF,CAAC;YACH,CAAC;QACD,CAAC;IACH,CAAC;SAAM,IAAI,YAAY,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAChD,mBAAmB,GAAG,YAAY,CAAC,QAAQ,CAAC;QAC5C,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,CAAC,oDAAoD,YAAY,CAAC,QAAQ,GAAG,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED,8DAA8D;IAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;IAC3C,CAAC;IAED,MAAM,UAAU,GAAG,IAAA,+BAAmB,EAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAmC,CAAC;IACpF,MAAM,eAAe,GAAG,MAAM,wBAAwB,CACpD,WAAW,EACX,UAAU,EACV,GAAG,EAAE,CAAC,IAAA,sBAAW,EAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,UAAU,EAAE,QAAQ,CAAC,CACxF,CAAC;IACF,IAAI,eAAe,CAAC,UAAU,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,+FAA+F,CAAC,CAAC;QAC/G,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,WAAW,GAAgB,eAAe,CAAC,MAAM,CAAC;IAExD,IAAI,WAAW,CAAC,QAAQ,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;QACjD,MAAM,YAAY,GAAG,WAAW,EAAE,QAAQ,IAAI,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,IAAI,SAAS,CAAC;QACvG,MAAM,SAAS,GAAG,WAAW,EAAE,KAAK,IAAI,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,IAAI,SAAS,CAAC;QAC9F,MAAM,MAAM,GAAG,CAAC,WAAW,CAAC,MAAM,IAAI,WAAW,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvE,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAClD,EAAE,EACF,IAAI,CAAC,EAAE,EACP;YACE,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,WAAW,CAAC,QAAQ,IAAI,CAAC;YACnC,MAAM;SACP,EACD,QAAQ,CACT,CAAC;QAEF,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC1B,OAAO;QACT,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAA,kCAAqB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAEnC,2BAA2B;IAC3B,MAAM,OAAO,GAAG,IAAA,4BAAgB,EAAC,WAAW,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7D,MAAM,aAAa,GAAG,IAAA,2BAAe,EAAC,WAAW,CAAC,CAAC;IACnD,MAAM,eAAe,GAAG,IAAA,iCAAqB,EAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAG,IAAA,0BAAc,EAAC,WAAW,CAAC,CAAC;IACjD,MAAM,kBAAkB,GAAG,eAAe,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7F,MAAM,QAAQ,GAAG;QACf,OAAO;QACP,aAAa;QACb,uBAAuB,EAAE,eAAe;QACxC,YAAY;KACb,CAAC;IAEF,qCAAqC;IACrC,6BAA6B;IAC7B,MAAM,kBAAkB,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC;QACjD,CAAC,CAAC,IAAA,8BAAiB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,SAAS;QACjE,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,gCAAgC,GAAG,CAAC,kBAAkB,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IAClG,MAAM,kBAAkB,GAAG,6BAA6B,CAAC,kBAAkB,CAAC,CAAC;IAE7E,MAAM,OAAO,GAAiB;QAC5B,IAAI,EAAE;YACJ,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,KAAK,EAAE,mCAAmC;YAC5D,eAAe,EAAE,kBAAkB;YACnC,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,oBAAoB,EAAE,kBAAkB;SACzC;QACD,YAAY,EAAE;YACZ,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,MAAM,EAAE,WAAW,CAAC,MAAM;YAC1B,SAAS,EAAE,WAAW,CAAC,QAAQ;YAC/B,SAAS,EAAE,WAAW,CAAC,QAAQ;YAC/B,WAAW,EAAE,WAAW,CAAC,QAAQ;SAClC;QACD,SAAS,EAAE,QAAQ;KACpB,CAAC;IAEF,8BAA8B;IAC9B,IAAI,kBAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,kBAAkB,GAAG,MAAM,IAAA,mCAAuB,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;QACxD,MAAM,mBAAmB,GAAG,MAAM,2BAA2B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAElF,IAAI,mBAAmB,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,CAAC;YAC1D,kBAAkB,GAAG,wEAAwE,mBAAmB,CAAC,IAAI,oBAAoB,CAAC;QAC5I,CAAC;aAAM,CAAC;YACR,4DAA4D;YAC5D,MAAM,cAAc,GAAG,wBAAwB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YACpE,8EAA8E;YAC9E,mCAAmC;YACnC,MAAM,OAAO,GAAG,kBAAkB,CAAC;YAEnC,IAAI,cAAc,IAAI,OAAO,EAAE,CAAC;gBAC9B,kBAAkB,GAAG,sGAAsG,CAAC;YAC9H,CAAC;iBAAM,CAAC;gBACN,kCAAkC;gBAClC,kBAAkB,GAAG,4FAA4F,CAAC;YACpH,CAAC;QACD,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;IACnD,IAAI,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;IAE5D,4EAA4E;IAC5E,QAAQ,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC3C,QAAQ,CAAC,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC;IAC9C,QAAQ,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1C,2EAA2E;IAC3E,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,eAAe,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5E,MAAM,cAAc,GAAG,wBAAwB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACpE,IAAI,cAAc,EAAE,CAAC;YACnB,QAAQ,CAAC,MAAM,GAAG,qBAAqB,CAAC;QAC1C,CAAC;QACD,mEAAmE;QACnE,0DAA0D;IAC5D,CAAC;IAED,8EAA8E;IAC9E,gFAAgF;IAChF,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,IAAI,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,+BAA+B,CAAC,EAAE,CAAC;QAChG,MAAM,cAAc,GAAG,wBAAwB,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QACpE,MAAM,OAAO,GAAG,kBAAkB,CAAC;QAEnC,IAAI,cAAc,IAAI,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,0FAA0F,CAAC,CAAC;YAC1G,CAAC;YACD,QAAQ,GAAG;gBACT,MAAM,EAAE,eAAe,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,QAAQ;gBAC1D,SAAS,EAAE,kFAAkF;gBAC7F,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;gBAChC,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC,CAAC,SAAS;gBAClF,WAAW,EAAE,QAAQ;gBACnB,aAAa,EAAE,aAAa,CAAC,MAAM;gBACnC,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,IAAI;gBAChB,WAAW,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC;aAClC,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,uDAAuD;YACvD,MAAM,+BAA+B,GACnC,2CAA2C,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,2BAA2B,CAAC,GAAG,CAAC,CAAC;YAE5F,IAAI,+BAA+B,IAAI,8BAA8B,EAAE,CAAC;gBACtE,QAAQ,GAAG;oBACT,GAAG,QAAQ;oBACX,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,6BAA6B,+BAA+B,iDAAiD;oBACxH,WAAW,EAAE,QAAQ;oBACrB,UAAU,EAAE,KAAK;oBACjB,UAAU,EAAE,KAAK;iBAClB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG;oBACT,GAAG,QAAQ;oBACX,SAAS,EAAE,GAAG,QAAQ,CAAC,SAAS,iBAAiB,+BAA+B,IAAI,8BAA8B,GAAG;iBACtH,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,MAAM,wBAAwB,GAAG,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACxF,MAAM,gCAAgC,GAAG,gCAAgC,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;IACzG,MAAM,iBAAiB,GACrB,wBAAwB,CAAC,CAAC,CAAC,oBAAoB;QAC/C,CAAC,CAAC,gCAAgC,CAAC,CAAC,CAAC,6BAA6B;YAClE,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,MAAM,GAAG,iBAAiB,KAAK,oBAAoB;YACvD,CAAC,CAAC,yBAAyB;YAC3B,CAAC,CAAC,kCAAkC,CAAC;QACvC,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC;aAC1C,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC;aACvC,OAAO,CAAC,mCAAmC,EAAE,EAAE,CAAC;aAChD,IAAI,EAAE,CAAC;QACV,MAAM,WAAW,GAAG,UAAU,IAAI,wCAAwC,CAAC;QAC3E,MAAM,6BAA6B,GACjC,yCAAyC,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;QAEnF,IAAI,6BAA6B,IAAI,8BAA8B,EAAE,CAAC;YACpE,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,QAAQ;gBACrB,SAAS,EAAE,GAAG,MAAM,IAAI,WAAW,iBAAiB,6BAA6B,IAAI,8BAA8B,GAAG;gBACpH,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;aACpB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,MAAM,EAAE,OAAO;gBACf,WAAW,EAAE,aAAa;gBAC1B,SAAS,EAAE,GAAG,MAAM,IAAI,WAAW,WAAW,6BAA6B,IAAI,8BAA8B,GAAG;gBAC9G,UAAU,EAAE,QAAQ;aACvB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,wEAAwE;IACxE,wFAAwF;IACxF,MAAM,0BAA0B,GAAG,CAAC,QAAQ,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACvG,MAAM,aAAa,GAAG,0BAA0B,EAAE,CAAC,CAAC,CAAC;QACnD,CAAC,CAAC,0BAA0B,CAAC,CAAC,CAAC;aAC1B,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;aACxB,MAAM,CAAC,OAAO,CAAC;QACpB,CAAC,CAAC,EAAE,CAAC;IAEP,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7B,MAAM,cAAc,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;QAC/E,MAAM,iBAAiB,GAAG;EAC5B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;;;4GAGiF,CAAC;QACzG,MAAM,aAAa,GAAG,iBAAiB,CAAC;QAExC,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,aAAa,EAAE;YAClE,SAAS,EAAE,cAAc;YACzB,KAAK,EAAE,aAAa;YACpB,QAAQ,EAAE,gBAAgB;YAC1B,QAAQ,EAAE,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE;SACpD,CAAC,CAAC;QAEH,gBAAgB,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE;YAC7B,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,aAAa;YACvB,QAAQ,EAAE,iBAAiB;SAC5B,CAAC,CAAC;QAEH,QAAQ,GAAG;YACT,GAAG,QAAQ;YACX,MAAM,EAAE,OAAO;YACf,WAAW,EAAE,aAAa;YAC1B,SAAS,EAAE,4CAA4C;YACvD,UAAU,EAAE,QAAQ;SACrB,CAAC;IAAE,CAAC;IAEP,mFAAmF;IACnF,0FAA0F;IAC1F,IAAI,QAAQ,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACzE,IAAI,kBAAkB,IAAI,6BAA6B,EAAE,CAAC;YACxD,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,MAAM,EAAE,OAAO;gBACf,SAAS,EAAE,8BAA8B,kBAAkB,6CAA6C;gBACxG,WAAW,EAAE,QAAQ;gBACrB,UAAU,EAAE,KAAK;gBACjB,UAAU,EAAE,KAAK;aAClB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,qDAAqD;IACrD,8EAA8E;IAC9E,gFAAgF;IAChF,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;QACnE,SAAS,EAAE,cAAc;QACzB,KAAK,EAAE,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,CAAC,SAAS,iBAAiB,QAAQ,CAAC,UAAU,GAAG;QACxF,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,sFAAsF,CAAC,CAAC;QACtG,CAAC;QACD,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC;QACxB,KAAK,QAAQ;YACX,CAAC;gBACC,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE;oBAC1F,oBAAoB,EAAE,gCAAgC;iBACvD,CAAC,CAAC;gBACH,IAAI,CAAC,mBAAmB,IAAI,gCAAgC,EAAE,CAAC;oBAC7D,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;wBACnE,SAAS,EAAE,cAAc;wBACzB,KAAK,EAAE,uEAAuE;qBAC/E,CAAC,CAAC;oBACH,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;oBAC7E,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAA,6BAAiB,EAAC,WAAW,EAAE,mBAAmB,CAAC,EAAE,CAAC;oBACjF,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,kEAAkE,CACnE,CAAC;oBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;oBACjF,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,IAAI,UAAU,EAAE,iBAAiB,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;oBACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;wBACxB,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,iDAAiD,mBAAmB,OAAO,UAAU,gBAAgB,CACtG,CAAC;wBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;wBACzF,CAAC;wBACD,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,IAAA,6BAAgB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;YACnG,CAAC;YACD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,wDAAwD,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;YAC9F,CAAC;YACD,MAAM;QAER,KAAK,qBAAqB;YACxB,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,mBAAmB,GAAG,8BAA8B,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,EAAE;oBAC1F,oBAAoB,EAAE,gCAAgC;iBACvD,CAAC,CAAC;gBACH,IAAI,CAAC,mBAAmB,IAAI,gCAAgC,EAAE,CAAC;oBAC7D,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;wBACnE,SAAS,EAAE,cAAc;wBACzB,KAAK,EAAE,uEAAuE;qBAC/E,CAAC,CAAC;oBACH,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;oBAC7E,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAA,6BAAiB,EAAC,WAAW,EAAE,mBAAmB,CAAC,EAAE,CAAC;oBACjF,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,kEAAkE,CACnE,CAAC;oBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;oBACjF,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,IAAI,UAAU,EAAE,iBAAiB,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;oBACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;wBACxB,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,iDAAiD,mBAAmB,OAAO,UAAU,gBAAgB,CACtG,CAAC;wBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;wBACzF,CAAC;wBACD,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,6CAA6C,EAC7C,mBAAmB,CACpB,CAAC;gBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;gBACxF,CAAC;gBACD,MAAM;YACR,CAAC;YAED,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO;YACT,CAAC;YACD,oBAAoB;YACpB,IAAI,CAAC;gBACH,IAAA,6BAAQ,EAAC,YAAY,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC5D,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,IAAI,oCAAoC,CAAC;gBAChF,IAAA,6BAAQ,EAAC,kBAAkB,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE;oBAC1D,GAAG,EAAE,WAAW;oBAChB,KAAK,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM,mBAAmB,GAAG,IAAA,+BAAmB,EAAC,WAAW,CAAC,IAAI,SAAS,CAAC;gBAC1E,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAA,6BAAiB,EAAC,WAAW,EAAE,mBAAmB,CAAC,EAAE,CAAC;oBACjF,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,yEAAyE,CAC1E,CAAC;oBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,OAAO,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;oBACrE,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,IAAI,UAAU,EAAE,iBAAiB,EAAE,CAAC;oBAClC,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;oBACnE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;wBACxB,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,iDAAiD,mBAAmB,OAAO,UAAU,gBAAgB,CACtG,CAAC;wBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,OAAO,CAAC,GAAG,CAAC,yEAAyE,CAAC,CAAC;wBACzF,CAAC;wBACD,MAAM;oBACR,CAAC;gBACH,CAAC;gBACD,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,iCAAiC,QAAQ,CAAC,SAAS,GAAG,EACtD,mBAAmB,CACpB,CAAC;gBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,2DAA2D,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,aAAa,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBACnD,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,QAAQ,EACR,cAAc,EACd,uDAAuD,aAAa,GAAG,CACxE,CAAC;gBACF,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;YACD,MAAM;QAER,KAAK,OAAO;YACV,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,SAAS,iBAAiB,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;YAChG,CAAC;YACD,MAAM;QAER,KAAK,OAAO;YACV,IAAA,6BAAgB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,cAAc,EACpD,gBAAgB,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;YACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,oBAAoB,QAAQ,CAAC,SAAS,GAAG,CAAC,CAAC;gBACvD,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC9C,CAAC;YACD,MAAM;IACV,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,gBAAgB,CACpC,EAAyC,EACzC,IAAgC,EAChC,WAAmB,EACnB,QAAQ,GAAG,KAAK,EAChB,iBAAqC,EACrC,aAAqB,MAAM,EAC3B,UAA8B;IAE9B,IAAI,CAAC,IAAI;QAAE,OAAO;IAClB,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;QAC/F,CAAC;QACD,OAAO;IACT,CAAC;IAED,MAAM,oBAAoB,GAAG,IAAA,8DAAmC,EAC9D,WAAW,EACX,IAAA,oCAAuB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CACrC,CAAC;IACF,IAAI,oBAAoB,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC/C,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;QACzE,IAAA,6BAAgB,EACd,EAAE,EACF,IAAI,CAAC,EAAE,EACP,aAAa,EACb,cAAc,EACd,wDAAwD,oBAAoB,CAAC,MAAM,eAAe,YAAY,KAAK;YACnH,gIAAgI,CACjI,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;QAC1F,CAAC;QACD,OAAO;IACT,CAAC;IACD,MAAM,mBAAmB,GAAG,oBAAoB,CAAC,GAAG,CAAC;IACrD,MAAM,WAAW,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;IAC5C,MAAM,kBAAkB,GAAG,IAAA,kCAAoB,EAAC,WAAW,CAAC,CAAC;IAC7D,IAAI,2BAA2B,GAAG,kBAAkB,CAAC;IAErD,IAAI,cAA0C,CAAC;IAC/C,IAAI,eAAe,GAAqB,EAAE,CAAC;IAE3C,6BAA6B;IAC7B,IAAI,kBAAkB,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,IAAA,gCAAkB,EAAC,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,kBAAkB,eAAe,CAAC,MAAM,6BAA6B,CAAC,CAAC;YACnF,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,4CAA4C,iBAAiB,CAAC,QAAQ,GAAG,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,wBAAwB,CACvD,WAAW,EACX,UAAU,EACV,GAAG,EAAE,CACH,IAAA,6BAAe,EACb,IAAI,EACJ,WAAW,EACX,eAAe,EACf,iBAAiB,EAAE,QAAQ,EAC3B,iBAAiB,EAAE,QAAQ,EAC3B,UAAU,EAAE,QAAQ,CACrB,CACJ,CAAC;QACF,IAAI,kBAAkB,CAAC,UAAU,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;YAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,kGAAkG,CAAC,CAAC;YAClH,CAAC;YACD,OAAO;QACT,CAAC;QACD,eAAe,GAAG,kBAAkB,CAAC,MAAM,CAAC;QAE5C,MAAM,mBAAmB,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7F,IAAI,mBAAmB,KAAK,CAAC,CAAC,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;YAC5D,MAAM,YAAY,GAAG,eAAe,CAAC,mBAAmB,CAAC,CAAC;YAC1D,MAAM,YAAY,GAChB,cAAc,CAAC,QAAQ;gBACvB,YAAY,EAAE,QAAQ;gBACtB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ;gBAClC,SAAS,CAAC;YACZ,MAAM,SAAS,GACb,cAAc,CAAC,KAAK;gBACpB,YAAY,EAAE,KAAK;gBACnB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK;gBAC/B,SAAS,CAAC;YACZ,MAAM,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAClD,EAAE,EACF,IAAI,CAAC,EAAE,EACP;gBACE,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,YAAY;gBACtB,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,CAAC;gBACtC,MAAM;aACP,EACD,QAAQ,CACT,CAAC;YAEF,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAA,kCAAqB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QACnC,cAAc,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC;QACpC,2BAA2B,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;YAC5C,IAAI,iBAAiB,EAAE,CAAC;gBACtB,OAAO,CAAC,GAAG,CAAC,4CAA4C,iBAAiB,CAAC,QAAQ,GAAG,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GAAG,MAAM,wBAAwB,CACvD,WAAW,EACX,UAAU,EACV,GAAG,EAAE,CACH,IAAA,4BAAc,EACZ,IAAI,EACJ,WAAW,EACX,iBAAiB,EAAE,QAAQ,EAC3B,iBAAiB,EAAE,QAAQ,EAC3B,SAAS,EACT,UAAU,EAAE,QAAQ,CACrB,CACJ,CAAC;QACF,IAAI,kBAAkB,CAAC,UAAU,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,CAAC;YAChE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,kGAAkG,CAAC,CAAC;YAClH,CAAC;YACD,OAAO;QACT,CAAC;QACD,cAAc,GAAG,kBAAkB,CAAC,MAAM,CAAC;QAE3C,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC;YACvD,MAAM,YAAY,GAChB,cAAc,CAAC,QAAQ;gBACvB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ;gBAClC,SAAS,CAAC;YACZ,MAAM,SAAS,GACb,cAAc,CAAC,KAAK;gBACpB,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK;gBAC/B,SAAS,CAAC;YACZ,MAAM,MAAM,GAAG,CAAC,cAAc,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAC7E,MAAM,MAAM,GAAG,MAAM,+BAA+B,CAClD,EAAE,EACF,IAAI,CAAC,EAAE,EACP;gBACE,IAAI,EAAE,UAAU;gBAChB,QAAQ,EAAE,YAAY;gBACtB,KAAK,EAAE,SAAS;gBAChB,QAAQ,EAAE,cAAc,CAAC,QAAQ,IAAI,CAAC;gBACtC,MAAM;aACP,EACD,QAAQ,CACT,CAAC;YAEF,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;gBAC1B,OAAO;YACT,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAA,kCAAqB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,6BAA6B;IAC7B,MAAM,UAAU,GAAG,IAAA,+BAAmB,EAAC,WAAW,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,aAAa,GAAG,IAAA,4BAAgB,EAAC,WAAW,CAAC,CAAC;IACpD,MAAM,SAAS,GAAG,IAAA,wBAAY,EAAC,WAAW,CAAC,CAAC;IAE5C,MAAM,UAAU,GAAG;QACjB,UAAU;QACV,aAAa;QACb,SAAS,EAAE,SAAS,CAAC,SAAS;QAC9B,SAAS,EAAE,SAAS,CAAC,SAAS;KAC/B,CAAC;IAEF,qDAAqD;IACrD,IAAI,QAAqC,CAAC;IAE1C,IAAI,2BAA2B,EAAE,CAAC;QAChC,MAAM,EAAE,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,IAAA,6BAAe,EAAC,eAAe,CAAC,CAAC;QAEjF,IAAI,UAAU,EAAE,CAAC;YACf,oDAAoD;YACpD,MAAM,YAAY,GAAyB;gBACzC,IAAI,EAAE;oBACJ,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,eAAe,EAAE,IAAI,CAAC,eAAe;iBACtC;gBACD,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1C,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;oBACjC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,SAAS;oBAC3B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;oBACjC,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,WAAW,EAAE,CAAC,CAAC,QAAQ;iBACxB,CAAC,CAAC;gBACH,WAAW,EAAE,UAAU;aACxB,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,IAAA,2CAA+B,EAAC,YAAY,EAAE,WAAW,CAAC,CAAC;gBAC5F,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;gBACnD,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;gBAC5D,QAAQ,GAAG;oBACT,QAAQ,EAAE,SAAS;oBACnB,SAAS,EAAE,8CAA8C;oBACzD,KAAK,EAAE,0BAA0B;oBACjC,WAAW,EAAE,QAAQ;oBACnB,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,UAAU,EAAE,KAAK;oBACjB,cAAc,EAAE,KAAK;oBACrB,cAAc,EAAE,KAAK;iBACxB,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,0DAA0D;YAC1D,MAAM,YAAY,GAAyB;gBACzC,IAAI,EAAE;oBACJ,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,eAAe,EAAE,IAAI,CAAC,eAAe;iBACtC;gBACD,gBAAgB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBAC1C,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;oBACjC,KAAK,EAAE,CAAC,CAAC,KAAK,IAAI,SAAS;oBAC3B,QAAQ,EAAE,CAAC,CAAC,QAAQ,IAAI,SAAS;oBACjC,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,WAAW,EAAE,CAAC,CAAC,QAAQ;iBACxB,CAAC,CAAC;gBACH,WAAW,EAAE,UAAU;aACxB,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,IAAA,2CAA+B,EAAC,YAAY,EAAE,WAAW,CAAC,CAAC;gBAC5F,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;gBACnD,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YAC7D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,sDAAsD,EAAE,KAAK,CAAC,CAAC;gBAE7E,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;gBACnD,+DAA+D;gBAC/D,MAAM,oBAAoB,GAAG,eAAe,CAAC,MAAM,GAAG,CAAC,IAAI,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;oBACnF,IAAI,CAAC,CAAC,QAAQ,KAAK,aAAa;wBAAE,OAAO,IAAI,CAAC;oBAC9C,OAAO,OAAO,CAAC,+BAA+B,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,aAAa,CAAC;gBAC7E,CAAC,CAAC,CAAC;gBAEH,IAAI,oBAAoB,EAAE,CAAC;oBACzB,MAAM,aAAa,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,aAAa,CAAC,IAAI,eAAe,CAAC,CAAC,CAAC,CAAC;oBACpG,QAAQ,GAAG;wBACT,QAAQ,EAAE,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAQ;wBAC1E,SAAS,EAAE,qFAAqF,aAAa,EAAE;wBAC/G,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,aAAa,EAAE,MAAM,IAAI,mBAAmB;wBAC3E,WAAW,EAAE,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;4BAC3C,aAAa,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gCAC5C,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oCAC1C,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;wBAC5D,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,UAAU,EAAE,KAAK;wBACjB,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC;wBACtE,cAAc,EAAE,KAAK;qBACtB,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,QAAQ,GAAG;wBACT,QAAQ,EAAE,SAAS;wBACnB,SAAS,EAAE,yEAAyE;wBACpF,KAAK,EAAE,0BAA0B;wBACjC,WAAW,EAAE,QAAQ;wBACrB,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,UAAU,EAAE,KAAK;wBACjB,cAAc,EAAE,KAAK;wBACrB,cAAc,EAAE,KAAK;qBACtB,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,uBAAuB;QACvB,MAAM,OAAO,GAAoB;YAC/B,IAAI,EAAE;gBACJ,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,eAAe,EAAE,IAAI,CAAC,eAAe;aACtC;YACD,eAAe,EAAE;gBACf,MAAM,EAAE,cAAe,CAAC,MAAM;gBAC9B,MAAM,EAAE,cAAe,CAAC,MAAM;gBAC9B,SAAS,EAAE,cAAe,CAAC,QAAQ;gBACnC,SAAS,EAAE,cAAe,CAAC,QAAQ;gBACnC,WAAW,EAAE,cAAe,CAAC,QAAQ;aACtC;YACD,WAAW,EAAE,UAAU;SACxB,CAAC;QAEF,IAAI,CAAC;YACH,MAAM,kBAAkB,GAAG,MAAM,IAAA,sCAA0B,EAAC,OAAO,EAAE,WAAW,CAAC,CAAC;YAClF,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;YACnD,QAAQ,GAAG,OAAO,CAAC,mBAAmB,CAAC,kBAAkB,CAAC,CAAC;YAE3D,sFAAsF;YACtF,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,cAAc,GAAG,cAAc,EAAE,MAAM,IAAI,EAAE,CAAC;gBACpD,MAAM,gBAAgB,GAAG,OAAO,CAAC,+BAA+B,CAAC,cAAc,CAAC,CAAC;gBACjF,IAAI,gBAAgB,EAAE,CAAC;oBACrB,QAAQ,GAAG;wBACT,QAAQ,EAAE,gBAAgB;wBAC1B,SAAS,EAAE,mEAAmE,gBAAgB,CAAC,WAAW,EAAE,EAAE;wBAC9G,KAAK,EAAE,cAAc;wBACrB,WAAW,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;4BAC9C,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;gCAC/C,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;oCAC7C,gBAAgB,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;wBAC/D,eAAe,EAAE,IAAI,CAAC,eAAe;wBACrC,UAAU,EAAE,QAAQ;wBACpB,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;wBACzE,cAAc,EAAE,KAAK;qBACtB,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,CAAC;YACxD,MAAM,mBAAmB,GAAG,MAAM,2BAA2B,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YAElF,MAAM,OAAO,GAAG,IAAI,kDAA4B,EAAE,CAAC;YACnD,MAAM,cAAc,GAAG,cAAc,EAAE,MAAM,IAAI,EAAE,CAAC;YACpD,MAAM,gBAAgB,GAAG,OAAO,CAAC,+BAA+B,CAAC,cAAc,CAAC,CAAC;YACjF,MAAM,aAAa,GAAG,mBAAmB;gBACvC,CAAC,CAAC,GAAG,mBAAmB,CAAC,IAAI,KAAK,mBAAmB,CAAC,OAAO,EAAE;gBAC/D,CAAC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;YAEjC,IAAI,gBAAgB,EAAE,CAAC;gBACrB,QAAQ,GAAG;oBACT,QAAQ,EAAE,gBAAgB;oBAC1B,SAAS,EAAE,kCAAkC,aAAa,sCAAsC,gBAAgB,CAAC,WAAW,EAAE,EAAE;oBAChI,KAAK,EAAE,cAAc;oBACrB,WAAW,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;wBAC9C,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;4BAC/C,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;gCAC7C,gBAAgB,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;oBAC/D,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,UAAU,EAAE,KAAK;oBACjB,cAAc,EAAE,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBACzE,cAAc,EAAE,KAAK;iBACtB,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG;oBACT,QAAQ,EAAE,SAAS;oBACnB,SAAS,EAAE,kCAAkC,aAAa,oBAAoB;oBAC9E,KAAK,EAAE,0BAA0B;oBACjC,WAAW,EAAE,QAAQ;oBACnB,eAAe,EAAE,IAAI,CAAC,eAAe;oBACrC,UAAU,EAAE,KAAK;oBACjB,cAAc,EAAE,KAAK;oBACrB,cAAc,EAAE,KAAK;iBACxB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,qGAAqG;IACrG,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,+BAA+B,GACnC,8BAA8B,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QAElD,IAAI,+BAA+B,IAAI,8BAA8B,EAAE,CAAC;YACtE,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,QAAQ,EAAE,SAAS;gBACnB,SAAS,EAAE,6BAA6B,+BAA+B,+BAA+B;gBACtG,KAAK,EAAE,iEAAiE;gBACxE,WAAW,EAAE,UAAU;gBACrB,UAAU,EAAE,KAAK;gBACjB,cAAc,EAAE,KAAK;aACxB,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG;gBACT,GAAG,QAAQ;gBACX,SAAS,EAAE,GAAG,QAAQ,CAAC,SAAS,iBAAiB,+BAA+B,IAAI,8BAA8B,GAAG;aACtH,CAAC;QACJ,CAAC;IACH,CAAC;IAED,0EAA0E;IAC1E,iFAAiF;IACjF,IAAA,0BAAa,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,cAAc,EAAE;QACnE,SAAS,EAAE,cAAc;QACzB,KAAK,EAAE,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,SAAS,iBAAiB,QAAQ,CAAC,UAAU,GAAG;QAC1F,QAAQ,EAAE,UAAU;KACrB,CAAC,CAAC;IAEH,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;QAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,yFAAyF,CAAC,CAAC;QACzG,CAAC;QACD,OAAO;IACT,CAAC;IAED,6DAA6D;IAC7D,IAAI,QAAQ,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvG,MAAM,cAAc,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAA,6BAAgB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,cAAc,CAAC,aAAa,EAAE,QAAQ,IAAI,CAAC,CAAC;QAE7D,IAAI,KAAK,GAAG,QAAQ,EAAE,CAAC;YACrB,KAAK,MAAM,QAAQ,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAChD,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;oBAE5B,iDAAiD;oBACjD,uDAAuD;oBACvD,IAAI,iBAAiB,GAAG,IAAI,CAAC;oBAC7B,IAAI,SAAS,KAAK,CAAC,IAAI,cAAc,CAAC,aAAa,EAAE,mBAAmB,EAAE,CAAC;wBACzE,iBAAiB,GAAG,KAAK,CAAC;oBAC5B,CAAC;oBAED,MAAM,UAAU,GAAG,IAAA,+BAAkB,EAAC,EAAE,EAAE;wBACxC,KAAK,EAAE,QAAQ,CAAC,KAAK;wBACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;wBACjC,SAAS,EAAE,IAAI,CAAC,UAAU;wBAC1B,eAAe,EAAE,IAAI,CAAC,EAAE;wBACxB,eAAe,EAAE,mBAAmB;wBACpC,iBAAiB;wBACjB,KAAK,EAAE,SAAS;qBACjB,CAAC,CAAC;oBAEH,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACd,MAAM,WAAW,GAAG,iBAAiB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC;wBAClE,OAAO,CAAC,GAAG,CAAC,8BAA8B,WAAW,KAAK,QAAQ,CAAC,KAAK,KAAK,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC9G,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,IAAI,CAAC,oCAAoC,QAAQ,CAAC,KAAK,IAAI,EAAE,KAAK,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,CAAC,GAAG,CAAC,sCAAsC,KAAK,6BAA6B,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IAED,+BAA+B;IAC/B,MAAM,SAAS,GAAG,mBAAmB,CAAC;IAEtC,QAAQ,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAC1B,KAAK,SAAS;YACZ,IAAA,wBAAW,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,kCAAkC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;YACnC,CAAC;YACD,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO;YACT,CAAC;YACD,MAAM,UAAU,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;gBACpC,OAAO,CAAC,GAAG,CAAC,wBAAwB,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;YAChE,CAAC;iBAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACrB,OAAO,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;YACxE,CAAC;YACD,MAAM;QAER,KAAK,QAAQ;YACX,IAAA,uBAAU,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACnE,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,CAAC,eAAe,GAAG,CAAC,oBAAoB,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;gBACtG,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;YAC/C,CAAC;YACD,MAAM;QAER,KAAK,SAAS;YACZ,IAAA,6BAAgB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACrF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,kCAAkC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;gBACtE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC/D,CAAC;YACD,IAAI,CAAC,8BAA8B,CAAC,WAAW,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC7D,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,6EAA6E,CAAC,CAAC;gBAC7F,CAAC;gBACD,OAAO;YACT,CAAC;YACD,MAAM,WAAW,GAAG,IAAA,sBAAY,EAAC,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;YACpE,IAAI,CAAC,QAAQ,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACrC,OAAO,CAAC,GAAG,CAAC,yBAAyB,WAAW,CAAC,UAAU,GAAG,CAAC,CAAC;YAClE,CAAC;YACD,MAAM;QAER,KAAK,MAAM;YACT,IAAA,6BAAgB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,cAAc,EAAE,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YACpF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,iCAAiC,QAAQ,CAAC,UAAU,GAAG,CAAC,CAAC;YACvE,CAAC;YACD,MAAM;QAER,KAAK,SAAS;YACZ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,CAAC,GAAG,CAAC,uBAAuB,QAAQ,CAAC,SAAS,eAAe,CAAC,CAAC;YACxE,CAAC;YACD,MAAM;IACV,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"loop-phases.js","sourceRoot":"","sources":["../../src/commands/loop-phases.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/commands/loop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"loop.d.ts","sourceRoot":"","sources":["../../src/commands/loop.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AA6EnD,wBAAsB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAoWnF"}
|
package/dist/commands/loop.js
CHANGED
|
@@ -14,6 +14,7 @@ const task_selector_js_1 = require("../orchestrator/task-selector.js");
|
|
|
14
14
|
const wakeup_js_1 = require("../runners/wakeup.js");
|
|
15
15
|
const projects_js_1 = require("../runners/projects.js");
|
|
16
16
|
const loop_phases_js_1 = require("./loop-phases.js");
|
|
17
|
+
const credit_pause_js_1 = require("../runners/credit-pause.js");
|
|
17
18
|
const help_js_1 = require("../cli/help.js");
|
|
18
19
|
const output_js_1 = require("../cli/output.js");
|
|
19
20
|
const errors_js_1 = require("../cli/errors.js");
|
|
@@ -343,19 +344,36 @@ async function loopCommand(args, flags) {
|
|
|
343
344
|
action,
|
|
344
345
|
status: task.status,
|
|
345
346
|
});
|
|
347
|
+
let creditResult = undefined;
|
|
346
348
|
if (action === 'start') {
|
|
347
349
|
// Starting a new task
|
|
348
350
|
(0, task_selector_js_1.markTaskInProgress)(db, task.id);
|
|
349
|
-
await (0, loop_phases_js_1.runCoderPhase)(db, task, projectPath, 'start', flags.json, coordinatorCache, COORDINATOR_THRESHOLDS);
|
|
351
|
+
creditResult = await (0, loop_phases_js_1.runCoderPhase)(db, task, projectPath, 'start', flags.json, coordinatorCache, COORDINATOR_THRESHOLDS);
|
|
350
352
|
}
|
|
351
353
|
else if (action === 'resume') {
|
|
352
354
|
// Resuming in-progress task
|
|
353
|
-
await (0, loop_phases_js_1.runCoderPhase)(db, task, projectPath, 'resume', flags.json, coordinatorCache, COORDINATOR_THRESHOLDS);
|
|
355
|
+
creditResult = await (0, loop_phases_js_1.runCoderPhase)(db, task, projectPath, 'resume', flags.json, coordinatorCache, COORDINATOR_THRESHOLDS);
|
|
354
356
|
}
|
|
355
357
|
else if (action === 'review') {
|
|
356
358
|
// Task ready for review - pass coordinator guidance if available
|
|
357
359
|
const cachedCoord = coordinatorCache.get(task.id);
|
|
358
|
-
await (0, loop_phases_js_1.runReviewerPhase)(db, task, projectPath, flags.json, cachedCoord);
|
|
360
|
+
creditResult = await (0, loop_phases_js_1.runReviewerPhase)(db, task, projectPath, flags.json, cachedCoord);
|
|
361
|
+
}
|
|
362
|
+
if (creditResult) {
|
|
363
|
+
const pauseResult = await (0, credit_pause_js_1.handleCreditExhaustion)({
|
|
364
|
+
...creditResult,
|
|
365
|
+
runnerId: 'foreground',
|
|
366
|
+
db,
|
|
367
|
+
projectPath,
|
|
368
|
+
shouldStop: () => false,
|
|
369
|
+
onceMode: Boolean(values.once),
|
|
370
|
+
});
|
|
371
|
+
if (pauseResult.resolution === 'immediate_fail') {
|
|
372
|
+
process.exit(1);
|
|
373
|
+
}
|
|
374
|
+
if (!pauseResult.resolved)
|
|
375
|
+
break;
|
|
376
|
+
continue;
|
|
359
377
|
}
|
|
360
378
|
// Check if we should continue
|
|
361
379
|
if (values.once) {
|