specrails-core 5.1.1 → 5.2.2

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.
@@ -3,7 +3,14 @@ import { spawn, spawnSync } from 'node:child_process';
3
3
  import { closeSync, existsSync, lstatSync, mkdirSync, openSync, readFileSync, readdirSync, readlinkSync, realpathSync, renameSync, rmSync, writeFileSync } from 'node:fs';
4
4
  import path from 'node:path';
5
5
  const PHASES = ['architect', 'developer', 'reviewer', 'archive', 'ship', 'ci'];
6
- const TRANSPORT_ENV_KEYS = new Set(['_', 'PWD', 'OLDPWD', 'SHLVL']);
6
+ // Session identity belongs to the agent transport, not the checked application.
7
+ // Keep this list explicit: provider configuration, application inputs and host
8
+ // scope/configuration (including SPECRAILS_*) must still invalidate receipts.
9
+ const TRANSPORT_ENV_KEYS = new Set([
10
+ '_', 'PWD', 'OLDPWD', 'SHLVL',
11
+ 'CLAUDE_PID', 'CLAUDE_CODE_SESSION_ID', 'CLAUDE_CODE_MESSAGING_SOCKET',
12
+ 'CLAUDE_CODE_MESSAGING_TOKEN', 'CLAUDE_CODE_CHILD_SESSION',
13
+ ]);
7
14
  function verificationEnvironmentKeys(env, overrideKeys = []) {
8
15
  return Object.keys(env).filter((key) => env[key] !== undefined && !TRANSPORT_ENV_KEYS.has(key) && !overrideKeys.includes(key)).sort();
9
16
  }
@@ -102,6 +109,8 @@ export function validatePipelineContext(input) {
102
109
  fail('Invalid acceptance criteria');
103
110
  return { id: spec.id, title: spec.title, description: spec.description, ...(spec.repositoryIds ? { repositoryIds: spec.repositoryIds } : {}), ...(spec.acceptanceCriteria ? { acceptanceCriteria: spec.acceptanceCriteria } : {}) };
104
111
  });
112
+ if (!specs.length || new Set(specs.map(spec => String(spec.id))).size !== specs.length)
113
+ fail('Frozen scope needs unique nonempty specs');
105
114
  const backlogRoot = directory(data.backlogRoot);
106
115
  const backlogPath = data.backlogPath === undefined ? path.join(backlogRoot, '.specrails', 'local-tickets.json') : String(data.backlogPath);
107
116
  if (!path.isAbsolute(backlogPath) || !within(backlogRoot, path.resolve(backlogPath)))
@@ -359,6 +368,101 @@ function taskGate(state) {
359
368
  if (!/^\s*-\s+\[x\]/m.test(tasks) || /^\s*-\s+\[ \]/m.test(tasks))
360
369
  fail('Required implementation tasks remain incomplete');
361
370
  }
371
+ /** Stable indices refer to the frozen scope, never to rewritten design text.
372
+ * When no explicit AC list exists, the frozen description is the requirement. */
373
+ function frozenCriteria(context) {
374
+ return context.specs.flatMap(spec => (spec.acceptanceCriteria?.length ? spec.acceptanceCriteria : [spec.description || spec.title])
375
+ .map((requirement, criterionIndex) => ({ specId: String(spec.id), criterionIndex, requirement })));
376
+ }
377
+ function nonempty(value) { return typeof value === 'string' && value.trim().length > 0; }
378
+ function evidence(value) { return Array.isArray(value) && value.length > 0 && value.every(nonempty); }
379
+ function acceptanceReport(context, input) {
380
+ const report = object(input);
381
+ const expected = frozenCriteria(context);
382
+ if (!Array.isArray(report.criteria) || report.criteria.length !== expected.length)
383
+ fail('Acceptance must cover every frozen requirement exactly once');
384
+ const seen = new Set();
385
+ const criteria = report.criteria.map((raw) => {
386
+ const row = object(raw);
387
+ const match = expected.find(item => item.specId === row.specId && item.criterionIndex === row.criterionIndex);
388
+ const key = String(row.specId) + ':' + String(row.criterionIndex);
389
+ if (!match || match.requirement !== row.requirement || seen.has(key))
390
+ fail('Acceptance requirement differs from frozen scope or is duplicated');
391
+ seen.add(key);
392
+ if (!['met', 'exception', 'blocked', 'pending'].includes(String(row.status)) || !evidence(row.evidence))
393
+ fail('Acceptance needs a valid status and concrete evidence for every requirement');
394
+ let exception;
395
+ if (row.status === 'exception') {
396
+ const entry = object(row.exception);
397
+ if (!nonempty(entry.reason) || !nonempty(entry.impact) || typeof entry.material !== 'boolean'
398
+ || !['reviewer', 'user', 'host'].includes(String(entry.acceptedBy)) || !nonempty(entry.approvalEvidence))
399
+ fail('Exception needs reason, impact and recorded acceptance');
400
+ if (entry.material && entry.acceptedBy === 'reviewer')
401
+ fail('Material scope exceptions require user or host acceptance');
402
+ exception = entry;
403
+ }
404
+ else if (row.exception !== undefined)
405
+ fail('Exception details require exception status');
406
+ return { ...match, status: row.status, evidence: row.evidence, ...(exception ? { exception } : {}) };
407
+ });
408
+ if (!Array.isArray(report.checks) || !Array.isArray(report.findings) || !report.findings.every(nonempty))
409
+ fail('Acceptance needs checks and findings arrays');
410
+ const checks = report.checks.map((raw) => {
411
+ const check = object(raw);
412
+ if (!nonempty(check.name) || !['passed', 'failed', 'unavailable'].includes(String(check.status)) || typeof check.required !== 'boolean'
413
+ || !evidence(check.evidence) || !nonempty(check.scope) || !nonempty(check.limitations))
414
+ fail('Check needs status, evidence, measurement scope and limitations');
415
+ return { name: check.name, status: check.status, required: check.required, evidence: check.evidence, scope: check.scope, limitations: check.limitations };
416
+ });
417
+ return { criteria, checks, findings: report.findings };
418
+ }
419
+ function inspectAcceptance(state) {
420
+ const receipt = state.acceptance;
421
+ if (!receipt)
422
+ return { valid: false, status: 'pending', reasons: ['No acceptance evidence'] };
423
+ const reasons = [];
424
+ try {
425
+ acceptanceReport(state.context, receipt);
426
+ }
427
+ catch (error) {
428
+ return { valid: false, status: 'blocked', reasons: [error instanceof Error ? error.message : String(error)] };
429
+ }
430
+ if (receipt.scopeHash !== state.scopeHash || receipt.candidateHash !== fingerprintCandidate(state) || receipt.artifactHash !== artifactFingerprint(state))
431
+ reasons.push('Acceptance evidence is stale');
432
+ for (const row of receipt.criteria ?? [])
433
+ if (row.status === 'blocked' || row.status === 'pending')
434
+ reasons.push('Unresolved requirement: ' + row.requirement);
435
+ for (const check of receipt.checks ?? [])
436
+ if (check.required && check.status !== 'passed')
437
+ reasons.push('Required check did not pass: ' + check.name);
438
+ const exceptions = receipt.criteria?.some(row => row.status === 'exception') || receipt.checks?.some(check => check.status !== 'passed');
439
+ return { valid: reasons.length === 0, status: reasons.length ? 'blocked' : exceptions ? 'with-exceptions' : 'verified', reasons, receipt };
440
+ }
441
+ function acceptanceGate(state) {
442
+ const acceptance = inspectAcceptance(state);
443
+ if (!acceptance.valid)
444
+ fail('Acceptance blocked: ' + acceptance.reasons.join('; '));
445
+ }
446
+ export function recordAcceptance(contextInput, input) {
447
+ const context = validatePipelineContext(contextInput);
448
+ const report = acceptanceReport(context, input);
449
+ return locked(context, () => {
450
+ const state = readState(context);
451
+ if (state.phases.developer.status !== 'done' || state.phases.archive.status === 'done')
452
+ fail('Record acceptance after development and before archive');
453
+ state.acceptance = { ...report, scopeHash: state.scopeHash, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), recordedAt: new Date().toISOString() };
454
+ // Replacing even just an exception decision requires a new review/approval.
455
+ for (const phase of PHASES.slice(2)) {
456
+ if (phase === 'reviewer' && state.phases[phase].status === 'running')
457
+ continue;
458
+ const { durationMs, attempts } = state.phases[phase];
459
+ state.phases[phase] = { status: 'pending', durationMs, attempts };
460
+ }
461
+ state.archiveApproval = undefined;
462
+ saveState(state);
463
+ return state;
464
+ });
465
+ }
362
466
  export function checkArchive(contextInput) {
363
467
  const context = validatePipelineContext(contextInput);
364
468
  return locked(context, () => {
@@ -377,7 +481,8 @@ export function checkArchive(contextInput) {
377
481
  fail('Architecture artifacts changed after design approval');
378
482
  taskGate(state);
379
483
  confidenceGate(state);
380
- state.archiveApproval = { candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), confidenceHash: digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))) };
484
+ acceptanceGate(state);
485
+ state.archiveApproval = { candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), confidenceHash: digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))), acceptanceHash: digest(canonical(state.acceptance)) };
381
486
  saveState(state);
382
487
  return state;
383
488
  });
@@ -399,6 +504,13 @@ export function transitionPipeline(contextInput, phase, status, reason) {
399
504
  if (before.some((p) => !['done', 'skipped'].includes(state.phases[p].status)))
400
505
  fail('A required earlier phase is incomplete');
401
506
  }
507
+ const previous = state.phases[phase];
508
+ const now = new Date().toISOString();
509
+ const timing = { attempts: previous.attempts ?? 0, durationMs: previous.durationMs ?? 0 };
510
+ if (previous.status === 'running' && previous.startedAt)
511
+ timing.durationMs += Math.max(0, Date.parse(now) - Date.parse(previous.startedAt));
512
+ if (status === 'running' && previous.status !== 'running')
513
+ timing.attempts += 1;
402
514
  if (status === 'done') {
403
515
  if (phase === 'architect') {
404
516
  const root = activeArtifactPath(state);
@@ -420,8 +532,10 @@ export function transitionPipeline(contextInput, phase, status, reason) {
420
532
  if (!verification.valid)
421
533
  fail('Fresh full verification required: ' + verification.reasons.join('; '));
422
534
  }
423
- if (phase === 'reviewer')
535
+ if (phase === 'reviewer') {
424
536
  confidenceGate(state);
537
+ acceptanceGate(state);
538
+ }
425
539
  if (phase === 'archive') {
426
540
  const archiveRoot = path.join(context.artifactRoot, 'openspec', 'changes', 'archive');
427
541
  const candidates = existsSync(archiveRoot) ? readdirSync(archiveRoot).filter((name) => name.endsWith('-' + state.change)) : [];
@@ -432,13 +546,13 @@ export function transitionPipeline(contextInput, phase, status, reason) {
432
546
  taskGate(state);
433
547
  confidenceGate(state);
434
548
  const approval = state.archiveApproval;
435
- if (!approval || approval.candidateHash !== fingerprintCandidate(state) || approval.artifactHash !== artifactFingerprint(state) || approval.confidenceHash !== digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))))
549
+ if (!approval || approval.acceptanceHash !== digest(canonical(state.acceptance)) || approval.candidateHash !== fingerprintCandidate(state) || approval.artifactHash !== artifactFingerprint(state) || approval.confidenceHash !== digest(readFileSync(path.join(activeArtifactPath(state), 'confidence-score.json'))))
436
550
  fail('Archive was not authorized for this exact reviewed candidate');
437
551
  }
438
- state.phases[phase] = { status, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), completedAt: new Date().toISOString() };
552
+ state.phases[phase] = { ...timing, status, candidateHash: fingerprintCandidate(state), artifactHash: artifactFingerprint(state), completedAt: new Date().toISOString() };
439
553
  }
440
554
  else {
441
- state.phases[phase] = { status, ...(reason ? { reason } : {}) };
555
+ state.phases[phase] = { ...timing, status, ...(status === 'running' ? { startedAt: now } : {}), ...(reason ? { reason } : {}) };
442
556
  if (status === 'running')
443
557
  for (const later of PHASES.slice(PHASES.indexOf(phase) + 1))
444
558
  state.phases[later] = { status: 'pending' };
@@ -474,7 +588,19 @@ export function inspectPipeline(contextInput) {
474
588
  }
475
589
  if (!verification.valid && state.phases.developer.status === 'done' && (resumePhase === null || ['archive', 'ship', 'ci'].includes(resumePhase)))
476
590
  resumePhase = 'reviewer';
477
- return { schemaVersion: 1, runId: context.runId, change: state.change, context, stateDir: pipelineStateDirectory(context), resumePhase, phases: state.phases, verification };
591
+ const acceptance = inspectAcceptance(state);
592
+ if (!acceptance.valid && state.phases.reviewer.status === 'done' && (resumePhase === null || ['archive', 'ship', 'ci'].includes(resumePhase)))
593
+ resumePhase = 'reviewer';
594
+ const reviewed = state.phases.reviewer.status === 'done';
595
+ const completion = {
596
+ implementation: state.phases.developer.status === 'done' && state.phases.architect.artifactHash === artifactFingerprint(state)
597
+ && (state.phases.developer.candidateHash === candidate || (reviewed && state.phases.reviewer.candidateHash === candidate)) ? 'complete' : 'incomplete',
598
+ validation: !verification.valid ? 'blocked' : !reviewed ? 'pending' : acceptance.status,
599
+ archive: state.phases.archive.status,
600
+ delivery: context.ownership.git === 'host' ? 'pending-host' : state.phases.ship.status === 'done' && state.phases.ci.status === 'done' ? 'complete' : 'pending',
601
+ reasons: [...verification.reasons, ...acceptance.reasons],
602
+ };
603
+ return { schemaVersion: 1, runId: context.runId, change: state.change, context, stateDir: pipelineStateDirectory(context), resumePhase, phases: state.phases, verification, acceptance, completion };
478
604
  }
479
605
  function validateCommand(context, raw) {
480
606
  const command = object(raw);
@@ -766,6 +892,11 @@ export async function runPipelineCommand(flags, positionals) {
766
892
  case 'phase':
767
893
  result = transitionPipeline(context, String(flags.phase), String(flags.status), typeof flags.reason === 'string' ? flags.reason : undefined);
768
894
  break;
895
+ case 'acceptance':
896
+ if (typeof flags.request !== 'string')
897
+ fail('Provide --request with acceptance evidence JSON');
898
+ result = recordAcceptance(context, readJson(flags.request));
899
+ break;
769
900
  case 'archive-check':
770
901
  result = checkArchive(context);
771
902
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline-state.js","sourceRoot":"","sources":["../../../src/installer/runtime/pipeline-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACpD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACzK,OAAO,IAAI,MAAM,WAAW,CAAA;AA+C5B,MAAM,MAAM,GAAoB,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;AAC/F,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AACnE,SAAS,2BAA2B,CAAC,GAAsB,EAAE,eAAyB,EAAE;IACtF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AACvI,CAAC;AACD,MAAM,EAAE,GAAG,oCAAoC,CAAA;AAC/C,MAAM,IAAI,GAAG,4BAA4B,CAAA;AACzC,SAAS,IAAI,CAAC,OAAe,IAAW,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAA,CAAC,CAAC;AAClE,SAAS,MAAM,CAAC,KAAsB,IAAY,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,CAAC;AAC3G,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IAC3E,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAA;IACzL,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,MAAM,CAAA;AACxC,CAAC;AACD,SAAS,QAAQ,CAAC,IAAY,IAAa,OAAO,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAA,CAAC,CAAC;AAC1F,SAAS,MAAM,CAAC,KAAc;IAC5B,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,wBAAwB,CAAC,CAAA;IAC/F,OAAO,KAAgC,CAAA;AACzC,CAAC;AACD,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,wCAAwC,CAAC,CAAA;IACxG,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,CAAA;IACpC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE;QAAE,IAAI,CAAC,qCAAqC,GAAG,KAAK,CAAC,CAAA;IAC3F,OAAO,QAAQ,CAAA;AACjB,CAAC;AACD,SAAS,MAAM,CAAC,IAAY,EAAE,MAAc;IAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;IAC5C,OAAO,QAAQ,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAA;AACtH,CAAC;AACD,SAAS,SAAS,CAAC,IAAY,EAAE,QAAgB;IAC/C,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAClH,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,MAAM,KAAK,IAAI;QAAE,IAAI,CAAC,+BAA+B,GAAG,QAAQ,CAAC,CAAA;IAC9F,IAAI,OAAO,GAAG,IAAI,CAAA;IAClB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;QAClC,IAAI,CAAC;YACH,IAAI,SAAS,CAAC,OAAO,CAAC,CAAC,cAAc,EAAE;gBAAE,IAAI,CAAC,iCAAiC,GAAG,QAAQ,CAAC,CAAA;QAC7F,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBAAE,MAAM,KAAK,CAAA;QAAC,CAAC;IACzF,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC;AACD,SAAS,UAAU,CAAC,IAAY,EAAE,KAAc;IAC9C,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAC/D,MAAM,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG,UAAU,EAAE,GAAG,MAAM,CAAA;IAC/C,IAAI,CAAC;QACH,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;QACvF,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACxB,CAAC;YAAS,CAAC;QAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;IAAC,CAAC;AAC7C,CAAC;AACD,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAC1B,IAAI,IAAI,CAAC,aAAa,KAAK,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,4CAA4C,CAAC,CAAA;IAC1I,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,KAAK,CAAC;QAAE,IAAI,CAAC,sCAAsC,CAAC,CAAA;IACrH,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAsB,EAAE;QACvE,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;YAAE,IAAI,CAAC,6BAA6B,CAAC,CAAA;QAC1H,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAAE,IAAI,CAAC,6BAA6B,CAAC,CAAA;QACpJ,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;IACnI,CAAC,CAAC,CAAA;IACF,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,MAAM;QAAE,IAAI,CAAC,uCAAuC,CAAC,CAAA;IAC3M,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACjD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,oBAAoB,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAC;QAAE,IAAI,CAAC,8CAA8C,CAAC,CAAA;IAC3J,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACxC,KAAK,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,WAAW,CAAC;QAAE,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,qBAAqB,GAAG,GAAG,CAAC,CAAA;IAC5I,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,+BAA+B,CAAC,CAAA;IACrE,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,EAAgB,EAAE;QACnD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QAC1B,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,IAAI,OAAO,IAAI,CAAC,WAAW,KAAK,QAAQ;YAAE,IAAI,CAAC,qBAAqB,CAAC,CAAA;QACzJ,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;YAAE,IAAI,CAAC,oCAAoC,CAAC,CAAA;QAC1M,IAAI,IAAI,CAAC,kBAAkB,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;YAAE,IAAI,CAAC,6BAA6B,CAAC,CAAA;QAC3L,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,EAAqB,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAyB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,kBAA8B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;IAChR,CAAC,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC/C,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;IAC1I,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAAE,IAAI,CAAC,kCAAkC,CAAC,CAAA;IAC9H,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,SAAyC,EAAE,KAAK,EAAE,CAAA;AAC5N,CAAC;AACD,MAAM,UAAU,sBAAsB,CAAC,OAAwB;IAC7D,OAAO,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,sBAAsB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAA;AAC/E,CAAC;AACD,SAAS,MAAM,CAAI,OAAwB,EAAE,SAAkB;IAC7D,MAAM,GAAG,GAAG,sBAAsB,CAAC,OAAO,CAAC,CAAA;IAC3C,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;IAChD,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,EAAE,cAAc,CAAC,CAAA;IAC3C,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAA;IACvD,MAAM,OAAO,GAAG,CAAC,MAAc,EAAE,KAAa,EAAQ,EAAE;QACtD,IAAI,CAAC;YAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK;gBAAE,MAAM,CAAC,MAAM,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,mDAAmD,CAAC,CAAC;IACpI,CAAC,CAAA;IACD,IAAI,EAAU,CAAA;IACd,IAAI,CAAC;QAAC,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;IAAC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACtD,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;YAAE,MAAM,KAAK,CAAA;QACnE,wEAAwE;QACxE,sEAAsE;QACtE,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,sBAAsB,CAAC,CAAA;QACpD,MAAM,QAAQ,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,CAAA;QAC1D,IAAI,OAAe,CAAA;QACnB,IAAI,CAAC;YAAC,OAAO,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,IAAI,CAAC,qFAAqF,CAAC,CAAA;QAAC,CAAC;QACpJ,IAAI,CAAC;YACH,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAA;YAChD,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,MAAM,YAAY,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBAC/C,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAA;gBACjD,IAAI,KAAK,GAAG,KAAK,CAAA;gBACjB,IAAI,OAAO,QAAQ,CAAC,GAAG,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC;oBACzD,IAAI,CAAC;wBAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;oBAAC,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBAAC,KAAK,GAAI,KAA+B,CAAC,IAAI,KAAK,OAAO,CAAA;oBAAC,CAAC;gBACnH,CAAC;gBACD,IAAI,CAAC,KAAK,IAAI,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,YAAY;oBAAE,IAAI,CAAC,iDAAiD,CAAC,CAAA;gBAClH,MAAM,CAAC,IAAI,CAAC,CAAA;YACd,CAAC;YACD,oEAAoE;YACpE,wEAAwE;YACxE,EAAE,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAA;QAClC,CAAC;gBAAS,CAAC;YAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YAAC,OAAO,CAAC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;QAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC;QACH,aAAa,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;QACxC,OAAO,SAAS,EAAE,CAAA;IACpB,CAAC;YAAS,CAAC;QAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IAAC,CAAC;AACzD,CAAC;AACD,SAAS,SAAS,CAAC,OAAwB,IAAY,OAAO,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,CAAA,CAAC,CAAC;AACxH,SAAS,SAAS,CAAC,OAAwB;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAA6B,CAAA;IAC9E,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,KAAK,CAAC,KAAK,KAAK,OAAO,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAAE,IAAI,CAAC,yDAAyD,CAAC,CAAA;IACjL,OAAO,KAAK,CAAA;AACd,CAAC;AACD,SAAS,SAAS,CAAC,KAAoB;IACrC,KAAK,CAAC,QAAQ,IAAI,CAAC,CAAA;IACnB,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;IAC1C,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;AAC7C,CAAC;AACD,SAAS,YAAY,CAAC,KAAa,IAAY,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAC,CAAC;AACvF,SAAS,QAAQ,CAAC,KAAoB,EAAE,IAAwB,EAAE,QAAgB;IAChF,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;IAC/C,IAAI,MAAM,CAAC,sBAAsB,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAA;IACxE,IAAI,CAAC,gCAAgC,EAAE,mCAAmC,EAAE,iCAAiC,EAAE,iCAAiC,GAAG,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAAE,OAAO,IAAI,CAAA;IACzM,IAAI,QAAQ,KAAK,oBAAoB,IAAI,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC;QAAE,OAAO,IAAI,CAAA;IAChG,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,oBAAoB;QAAE,OAAO,KAAK,CAAA;IAChE,OAAO,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAA;AACtG,CAAC;AACD,SAAS,eAAe,CAAC,IAAY,EAAE,YAAY,IAAI,GAAG,EAAU,EAAE,MAAM,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,UAAU,GAAG,KAAK;IACzH,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAA;IACvD,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,IAAI,UAAU;YAAE,IAAI,CAAC,0CAA0C,GAAG,IAAI,CAAC,CAAA;QACvE,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,IAAI,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM;QAAE,IAAI,CAAC,yDAAyD,GAAG,IAAI,CAAC,CAAA;IACrG,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,MAAc,CAAA;QAClB,IAAI,CAAC;YAAC,MAAM,GAAG,YAAY,CAAC,IAAI,CAAC,CAAA;QAAC,CAAC;QAAC,MAAM,CAAC;YAAC,IAAI,CAAC,8CAA8C,GAAG,IAAI,CAAC,CAAA;QAAC,CAAC;QACzG,IAAI,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,2CAA2C,GAAG,IAAI,CAAC,CAAA;QACnF,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAA;QAC/B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAChB,OAAO,OAAO,GAAG,IAAI,GAAG,GAAG,GAAG,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;IAC3E,CAAC;IACD,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,UAAU,EAAE,CAAC;QACrC,2EAA2E;QAC3E,4EAA4E;QAC5E,4EAA4E;QAC5E,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;QACjJ,OAAO,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvJ,CAAC;IACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;QAAE,IAAI,CAAC,4DAA4D,GAAG,IAAI,CAAC,CAAA;IAC7F,MAAM,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAA;IACzB,IAAI,UAAU,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI;QAAE,IAAI,CAAC,yDAAyD,GAAG,IAAI,CAAC,CAAA;IAC1H,OAAO,CAAC,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAA;AACnF,CAAC;AACD,SAAS,YAAY,CAAC,IAAwB;IAC5C,qEAAqE;IACrE,2EAA2E;IAC3E,MAAM,GAAG,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;IACtG,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAA;IAC7B,GAAG,CAAC,iBAAiB,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,CAAA;IAC1E,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;IACzN,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,IAAI,CAAC,gCAAgC,GAAG,IAAI,CAAC,IAAI,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;IAC7I,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;AACvE,CAAC;AACD,MAAM,UAAU,oBAAoB,CAAC,KAAoB;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACxD,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI;QAC5B,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;KACxK,CAAC,CAAC,CAAA;IACH,OAAO,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;AACnC,CAAC;AACD,SAAS,kBAAkB,CAAC,KAAoB,IAAY,OAAO,KAAK,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,CAAC,CAAA,CAAC,CAAC;AACpK,SAAS,mBAAmB,CAAC,KAAoB;IAC/C,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;IACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAA;IACvC,MAAM,MAAM,GAA4B,EAAE,CAAA;IAC1C,MAAM,IAAI,GAAG,CAAC,GAAW,EAAQ,EAAE;QACjC,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;YAC1G,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YACtC,IAAI,IAAI,CAAC,IAAI,KAAK,uBAAuB;gBAAE,SAAQ;YACnD,IAAI,IAAI,CAAC,WAAW,EAAE;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAA;iBAC7B,CAAC;gBACJ,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;gBACxD,MAAM,WAAW,GAAG,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;gBACjJ,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;IACH,CAAC,CAAA;IACD,IAAI,CAAC,IAAI,CAAC,CAAA;IACV,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;AAClC,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,YAAqB,EAAE,MAAc;IACtE,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,8BAA8B,CAAC,CAAA;IAC5D,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QAC1B,IAAI,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;YACnC,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM;gBAAE,IAAI,CAAC,6CAA6C,CAAC,CAAA;YACnF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAA;QACpC,MAAM,KAAK,GAAkB;YAC3B,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;YAC3G,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG;YAC9B,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,CAA4B;YAC5G,kBAAkB,EAAE,CAAC,mBAAmB,GAAG,MAAM,CAAC;SACnD,CAAA;QACD,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CAAA;QAC/E,SAAS,CAAC,KAAK,CAAC,CAAA;QAChB,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC;AACD,SAAS,eAAe,CAAC,IAAc,EAAE,YAAoC,EAAE,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG;IAChG,OAAO,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5G,CAAC;AACD,SAAS,cAAc,CAAC,KAAoB,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG;IAC7D,MAAM,OAAO,GAAG,KAAK,CAAC,YAAY,CAAA;IAClC,MAAM,OAAO,GAAa,EAAE,CAAA;IAC5B,IAAI,CAAC,OAAO;QAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,yBAAyB,CAAC,EAAE,CAAA;IAC3E,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,iCAAiC,CAAC,CAAA;IAChH,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;QAAE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAA;IAC7E,IAAI,OAAO,CAAC,aAAa,KAAK,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAA;IAClG,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,QAAQ,KAAK,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;QAC9E,MAAM,WAAW,GAAG,2BAA2B,CAAC,GAAG,EAAE,OAAO,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAA;QAC3F,IAAI,SAAS,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,OAAO,CAAC,eAAe,KAAK,eAAe,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,oCAAoC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IAC9M,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,OAAO,EAAE,CAAA;AACjF,CAAC;AACD,SAAS,UAAU,CAAC,KAAoB;IACtC,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;IACtC,KAAK,MAAM,IAAI,IAAI,CAAC,aAAa,EAAE,WAAW,EAAE,UAAU,CAAC;QAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAAE,IAAI,CAAC,iCAAiC,GAAG,IAAI,CAAC,CAAA;IACnJ,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IACtC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;QAAE,IAAI,CAAC,kCAAkC,CAAC,CAAA;IAC5M,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC,CAAC,CAAA;IAC1E,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAAE,IAAI,CAAC,yCAAyC,CAAC,CAAA;AAC9G,CAAC;AACD,SAAS,cAAc,CAAC,KAAoB;IAC1C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAA;IAC1E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,IAAI,CAAC,2CAA2C,CAAC,CAAA;IACxE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACpC,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACrC,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,GAAG,EAAE;QAAE,IAAI,CAAC,gCAAgC,CAAC,CAAA;IACpI,KAAK,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,gBAAgB,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,uBAAuB,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;QAC9J,IAAI,OAAO,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG;YAAE,IAAI,CAAC,mCAAmC,GAAG,IAAI,CAAC,CAAA;IAC7J,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,GAAG,GAAG;QAAE,IAAI,CAAC,0BAA0B,CAAC,CAAA;AAC3D,CAAC;AACD,SAAS,QAAQ,CAAC,KAAoB;IACpC,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAA;IACpF,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,IAAI,CAAC,iDAAiD,CAAC,CAAA;AAC5H,CAAC;AACD,MAAM,UAAU,YAAY,CAAC,YAAqB;IAChD,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QAC5B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAChC,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM;YAAE,IAAI,CAAC,qCAAqC,CAAC,CAAA;QACxF,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;QAC1C,IAAI,CAAC,YAAY,CAAC,KAAK;YAAE,IAAI,CAAC,mBAAmB,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACpF,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAK,oBAAoB,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,gDAAgD,CAAC,CAAA;QAC/H,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,KAAK,mBAAmB,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,uCAAuC,CAAC,CAAA;QACpH,UAAU,CAAC,KAAK,CAAC,CAAA;QACjB,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,KAAK,mBAAmB,CAAC,KAAK,CAAC;YAAE,IAAI,CAAC,sDAAsD,CAAC,CAAA;QACpI,QAAQ,CAAC,KAAK,CAAC,CAAA;QACf,cAAc,CAAC,KAAK,CAAC,CAAA;QACrB,KAAK,CAAC,eAAe,GAAG,EAAE,aAAa,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAAE,CAAA;QACrN,SAAS,CAAC,KAAK,CAAC,CAAA;QAChB,OAAO,KAAK,CAAA;IACZ,CAAC,CAAC,CAAA;AACJ,CAAC;AACD,MAAM,UAAU,kBAAkB,CAAC,YAAqB,EAAE,KAAoB,EAAE,MAAmB,EAAE,MAAe;IAClH,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;QAAE,IAAI,CAAC,0BAA0B,CAAC,CAAA;IACtI,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAChC,IAAI,CAAC,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,EAAE;YAAE,IAAI,CAAC,4CAA4C,CAAC,CAAA;QACxH,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,KAAK,MAAM,CAAC;YAAE,IAAI,CAAC,4CAA4C,CAAC,CAAA;QAC3J,IAAI,CAAC,KAAK,KAAK,MAAM,IAAI,KAAK,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC,SAAS,CAAC,GAAG,KAAK,MAAM,IAAI,MAAM,KAAK,SAAS;YAAE,IAAI,CAAC,wDAAwD,CAAC,CAAA;QACpK,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAA;YACrD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;gBAAE,IAAI,CAAC,wCAAwC,CAAC,CAAA;QAC/H,CAAC;QACD,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;YACtB,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAA;gBACtC,UAAU,CAAC,KAAK,CAAC,CAAA;gBACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;gBACzC,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzB,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;wBAClE,IAAI,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;4BAAE,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;oBAC9G,CAAC;gBACH,CAAC;YACH,CAAC;YACD,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,UAAU,EAAE,CAAC;gBAClD,UAAU,CAAC,KAAK,CAAC,CAAA;gBACjB,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,KAAK,mBAAmB,CAAC,KAAK,CAAC;oBAAE,IAAI,CAAC,sDAAsD,CAAC,CAAA;gBACpI,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACf,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;gBAC1C,IAAI,CAAC,YAAY,CAAC,KAAK;oBAAE,IAAI,CAAC,oCAAoC,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YACvG,CAAC;YACD,IAAI,KAAK,KAAK,UAAU;gBAAE,cAAc,CAAC,KAAK,CAAC,CAAA;YAC/C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,CAAC,CAAA;gBACrF,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;gBAC9H,IAAI,UAAU,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;oBAAE,IAAI,CAAC,8DAA8D,CAAC,CAAA;gBAC1I,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,CAAA;gBAC1D,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAA;gBACnG,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACf,cAAc,CAAC,KAAK,CAAC,CAAA;gBACrB,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe,CAAA;gBACtC,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,aAAa,KAAK,oBAAoB,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,YAAY,KAAK,mBAAmB,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,cAAc,KAAK,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC;oBAAE,IAAI,CAAC,8DAA8D,CAAC,CAAA;YAC1T,CAAC;YACD,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,aAAa,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,EAAE,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAA;QAC/J,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;YAC/D,IAAI,MAAM,KAAK,SAAS;gBAAE,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QACpI,CAAC;QACD,SAAS,CAAC,KAAK,CAAC,CAAA;QAChB,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC;AACD,MAAM,UAAU,eAAe,CAAC,YAAqB;IAInD,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;IAChC,MAAM,SAAS,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IAC7C,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IAC1C,IAAI,WAAW,GAAyB,IAAI,CAAA;IAC5C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAClC,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS;YAAE,SAAQ;QACzC,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAAC,WAAW,GAAG,KAAK,CAAC;YAAC,MAAK;QAAC,CAAC;QAC5D,IAAI,KAAK,KAAK,WAAW,IAAI,MAAM,CAAC,YAAY,KAAK,mBAAmB,CAAC,KAAK,CAAC,EAAE,CAAC;YAAC,WAAW,GAAG,KAAK,CAAC;YAAC,MAAK;QAAC,CAAC;QAC/G,IAAI,CAAC,KAAK,KAAK,WAAW,IAAI,KAAK,KAAK,UAAU,CAAC,IAAI,MAAM,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YAC1F,IAAI,KAAK,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAK,SAAS;gBAAE,SAAQ;YACnI,WAAW,GAAG,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC;YAAC,MAAK;QACjE,CAAC;IACH,CAAC;IACD,IAAI,CAAC,YAAY,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAAE,WAAW,GAAG,UAAU,CAAA;IAC1K,OAAO,EAAE,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,sBAAsB,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,YAAY,EAAE,CAAA;AAC9K,CAAC;AACD,SAAS,eAAe,CAAC,OAAwB,EAAE,GAAY;IAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,KAAK,OAAO,CAAC,YAAY,CAAC,CAAA;IAClF,IAAI,CAAC,IAAI,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAAE,IAAI,CAAC,8BAA8B,CAAC,CAAA;IAC5P,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;IAC3G,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC;QAAE,IAAI,CAAC,8CAA8C,CAAC,CAAA;IACjF,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACvE,IAAI,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAAE,IAAI,CAAC,kCAAkC,CAAC,CAAA;IAC1I,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;IAC3F,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,GAAG,EAAE,GAAG,MAAM;QAAE,IAAI,CAAC,8BAA8B,CAAC,CAAA;IAC1H,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAgB,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,GAA6B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAA;AACpK,CAAC;AACD;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAe,EAAE,IAAc,EAAE,GAAW,EAAE,WAA4B,OAAO,CAAC,QAAQ,EAAE,MAAyB,OAAO,CAAC,GAAG;IACrK,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAClD,IAAI,QAAQ,GAAG,OAAO,CAAA;IACtB,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QAC9F,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,OAAO,IAAI,qBAAqB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACpE,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAA;QAC/K,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,IAAI,GAAG,SAAS,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAA;YAChH,IAAI,SAAS,EAAE,CAAC;gBAAC,QAAQ,GAAG,SAAS,CAAC;gBAAC,MAAK;YAAC,CAAC;QAChD,CAAC;IACH,CAAC;IACD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAA;IACvE,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAAE,IAAI,CAAC,iHAAiH,CAAC,CAAA;IAC9L,MAAM,KAAK,GAAG,CAAC,KAAa,EAAU,EAAE,CAAC,GAAG,GAAG,KAAK,GAAG,GAAG,CAAA;IAC1D,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,SAAS,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,wBAAwB,EAAE,IAAI,EAAE,CAAA;AAC7K,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,OAA8C,EAAE,GAA2B;IACrG,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC1B,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1D,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IACnE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;IAClC,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,CAAA;IAC1D,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,QAAQ,GAAG,CAAC,CAAC,CAAA;IACjB,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;QAClC,IAAI,KAA+B,CAAA;QACnC,IAAI,KAAgD,CAAA;QACpD,IAAI,IAAI,GAAG,KAAK,CAAA;QAChB,MAAM,MAAM,GAAG,CAAC,IAAY,EAAQ,EAAE,GAAG,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,EAAE,CAAA,CAAC,CAAC,CAAA;QACpI,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,sBAAsB,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,CAAA;YACrF,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,IAAI,EAAE,EAAE,wBAAwB,EAAE,UAAU,CAAC,wBAAwB,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;QAC9R,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,OAAM;QAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,CAAC,KAAa,EAAQ,EAAE,GAAG,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA,CAAC,CAAC,CAAA;QACpI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QACpE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;QACrE,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,MAAM,IAAI,kCAAkC,CAAA;YAC5C,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;gBACd,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO;oBAAE,SAAS,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;qBAClH,CAAC;oBAAC,IAAI,CAAC;wBAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAA;oBAAC,CAAC;oBAAC,MAAM,CAAC,CAAC,oBAAoB,CAAC,CAAC;gBAAC,CAAC;YACrF,CAAC;YACD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACZ,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;IACvB,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,uBAAuB,EAAE,YAAY,EAAE,wBAAwB,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,EAAE,MAAM,EAAE,CAAA;AACjS,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,YAAqB,EAAE,GAAY,EAAE,MAA8B,GAAG,EAAE,GAAE,CAAC;IAC9G,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;IAC5D,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;IAChC,MAAM,aAAa,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAA;IACjD,MAAM,OAAO,GAAqB,EAAE,CAAA;IACpC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,OAAO,CAAC,IAAI,CAAC,MAAM,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;QAC9C,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAE,CAAC,QAAQ,KAAK,CAAC;YAAE,MAAK;IACxD,CAAC;IACD,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QAC1B,MAAM,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAClC,MAAM,OAAO,GAAG,oBAAoB,CAAC,OAAO,CAAC,KAAK,aAAa,IAAI,OAAO,CAAC,QAAQ,KAAK,KAAK,CAAC,QAAQ,CAAA;QACtG,MAAM,OAAO,GAAwB;YACnC,EAAE,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,IAAyB,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO;YACvH,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,CAAC,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC;YAChJ,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,uCAAuC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,+BAA+B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACxK,CAAA;QACD,UAAU,CAAC,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;QACnG,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY;YAAE,OAAO,CAAC,YAAY,GAAG,OAAO,CAAA;QACtG,SAAS,CAAC,OAAO,CAAC,CAAA;QAClB,OAAO,OAAO,CAAA;IAChB,CAAC,CAAC,CAAA;AACJ,CAAC;AACD,SAAS,gBAAgB,CAAC,OAAwB,EAAE,GAAY;IAC9D,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,GAAG;QAAE,IAAI,CAAC,mDAAmD,CAAC,CAAA;IACvN,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;IACrF,IAAI,OAAO,CAAC,IAAI,KAAK,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,YAAY,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;QAAE,IAAI,CAAC,wDAAwD,CAAC,CAAA;IACjM,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAA;AAC9B,CAAC;AACD,MAAM,UAAU,cAAc,CAAC,YAAqB,EAAE,GAAY;IAChE,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,MAAM,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,IAAI,CAAC,8BAA8B,CAAC,CAAA;IACrG,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAA;IAChC,OAAO,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QAC1B,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAChC,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAa,EAAE,KAAa,EAAe,EAAE;YACzE,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;YAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,YAAY,CAAC,CAAA;YAClF,IAAI,CAAC,IAAI,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBAAE,IAAI,CAAC,sBAAsB,CAAC,CAAA;YACnI,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAC/C,IAAI,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;gBAAE,IAAI,CAAC,yDAAyD,CAAC,CAAA;YAC1I,IAAI,KAAK,CAAC,SAAS,KAAK,QAAQ;gBAAE,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,CAAA;YAC7I,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC;gBAAE,IAAI,CAAC,qCAAqC,CAAC,CAAA;YAC3H,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA;YAC7C,IAAI,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;gBAAE,IAAI,CAAC,2CAA2C,CAAC,CAAA;YACtK,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;YAClC,MAAM,MAAM,GAAG,SAAS,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;YACrF,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YACjE,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YAC7C,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE,CAAA;QAC5J,CAAC,CAAC,CAAA;QACF,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,MAAM;YAAE,IAAI,CAAC,0BAA0B,CAAC,CAAA;QAC7H,KAAK,CAAC,OAAO,GAAG,EAAE,QAAQ,EAAE,oBAAoB,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAA;QACrG,SAAS,CAAC,KAAK,CAAC,CAAA;QAChB,OAAO,KAAK,CAAA;IACd,CAAC,CAAC,CAAA;AACJ,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,YAAqB,EAAE,mBAA4B,EAAE,MAA8B,GAAG,EAAE,GAAE,CAAC;IAC5H,MAAM,OAAO,GAAG,uBAAuB,CAAC,YAAY,CAAC,CAAA;IACrD,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAA;IAC9C,MAAM,CAAC,OAAO,EAAE,GAAG,EAAE;QACnB,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,CAAA;QAChC,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,oBAAoB,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,wEAAwE,CAAC,CAAA;QAC5J,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAClD,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,IAAI,CAAC,YAAY,CAAE,CAAA;YAClF,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;YAC9C,IAAI,IAAI,CAAC,SAAS,KAAK,OAAO,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;gBAAE,IAAI,CAAC,gDAAgD,CAAC,CAAA;YAC7M,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,UAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAClF,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,WAAW;gBAAE,IAAI,CAAC,yBAAyB,CAAC,CAAA;YACpF,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;QACtF,CAAC,CAAC,CAAA;QACF,MAAM,OAAO,GAAsB,EAAE,CAAA;QACrC,IAAI,CAAC;YACH,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACnC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;gBAC9D,IAAI,SAAS,CAAC,OAAO;oBAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,CAAA;;oBACpE,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAA;gBAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,KAAK,MAAM,SAAS,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;gBAC1C,IAAI,SAAS,CAAC,MAAM;oBAAE,aAAa,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,MAAM,CAAC,CAAA;;oBAClE,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;YAChD,CAAC;YACD,MAAM,KAAK,CAAA;QACb,CAAC;QACD,KAAK,CAAC,YAAY,GAAG,SAAS,CAAA;QAC9B,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAAE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,CAAA;QAChF,SAAS,CAAC,KAAK,CAAC,CAAA;IAClB,CAAC,CAAC,CAAA;IACF,4EAA4E;IAC5E,4EAA4E;IAC5E,OAAO,cAAc,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,CAAC,CAAA;AAC1D,CAAC;AACD,SAAS,cAAc,CAAC,IAAc;IACpC,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAA;IACrC,MAAM,KAAK,GAAqC,EAAE,CAAA;IAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAE,CAAA;QACpB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,IAAI,CAAC,kCAAkC,GAAG,GAAG,CAAC,CAAA;QACzE,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;QACxB,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;YAAC,CAAC,EAAE,CAAA;QAAC,CAAC;;YAClE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAA;IACjC,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,CAAA;AAC7B,CAAC;AACD,SAAS,cAAc,CAAC,KAAuC,EAAE,SAAiB;IAChF,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAA;IACxG,IAAI,IAAI;QAAE,OAAO,uBAAuB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;IACxD,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IACvC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAA;IACjE,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,uBAAuB,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAA;QAC1D,IAAI,SAAS,KAAK,MAAM;YAAE,OAAO,QAAQ,CAAA;QACzC,IAAI,UAAU,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,IAAI,SAAS,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM;YAAE,OAAO,QAAQ,CAAA;IACrG,CAAC;IACD,IAAI,SAAS,KAAK,MAAM;QAAE,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAC/F,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,CAAA;IAChE,IAAI,KAAK,GAA4B,EAAE,CAAA;IACvC,IAAI,OAAO,KAAK,CAAC,eAAe,CAAC,KAAK,QAAQ;QAAE,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAA;IAChG,MAAM,WAAW,GAAG,OAAO,KAAK,CAAC,cAAc,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,EAAE,oBAAoB,CAAC,CAAA;IAC1I,IAAI,KAAK,GAAY,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA;IACtC,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACtC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS;YAAE,IAAI,CAAC,qDAAqD,CAAC,CAAA;QAC1F,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;QAC7F,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAAE,IAAI,CAAC,iCAAiC,CAAC,CAAA;QAC/I,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAC7D,KAAK,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACrB,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;gBAAE,IAAI,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAA;YAC5D,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAA;YAClC,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;gBAAE,IAAI,CAAC,2BAA2B,GAAG,EAAE,CAAC,CAAA;YAC5E,OAAO,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,EAAE;gBACtF,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACvF,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAA;QAC9E,CAAC,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,uBAAuB,CAAC;QACtC,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,YAAY,EAAE,IAAI,EAAE,oBAAoB,EAAE,SAAS;QACzH,YAAY,EAAE,CAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK;QAC/E,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE;KAClF,CAAC,CAAA;IACF,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IAC3B,OAAO,OAAO,CAAA;AAChB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAuC,EAAE,WAAqB;IACrG,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAA;IAC5C,MAAM,OAAO,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAChD,IAAI,MAAe,CAAA;IACnB,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,MAAM;YAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC;YAAC,MAAK;QACpF,KAAK,QAAQ;YAAE,MAAM,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;YAAC,MAAK;QACvD,KAAK,OAAO;YAAE,MAAM,GAAG,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAkB,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAgB,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAAC,MAAK;QACjM,KAAK,eAAe;YAAE,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;YAAC,MAAK;QAC3D,KAAK,QAAQ,CAAC;QACd,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBAAE,IAAI,CAAC,qDAAqD,CAAC,CAAA;YAClG,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,MAAM,OAAO,GAAG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;YAClM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAA;YACpC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,CAAC;QACD,KAAK,SAAS;YACZ,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ;gBAAE,IAAI,CAAC,0CAA0C,CAAC,CAAA;YACvF,MAAM,GAAG,cAAc,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAC,MAAK;QAClE,OAAO,CAAC,CAAC,IAAI,CAAC,8BAA8B,GAAG,SAAS,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAA;IACnC,OAAO,CAAC,CAAA;AACV,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAc;IACjD,IAAI,CAAC;QAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QAAC,OAAO,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAAC,CAAC;IAC9G,OAAO,KAAK,EAAE,CAAC;QAAC,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAAC,OAAO,CAAC,CAAA;IAAC,CAAC;AACpH,CAAC"}
1
+ {"version":3,"file":"pipeline-state.js","sourceRoot":"","sources":["../../../src/installer/runtime/pipeline-state.ts"],"names":[],"mappings":"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"}
@@ -51,3 +51,46 @@ make paid model calls or claim identical behavior across every native CLI releas
51
51
 
52
52
  See [Core installation and update consistency](core-updates.md) for version
53
53
  selection, rollback and Desktop integration.
54
+
55
+
56
+ ## Acceptance evidence and completion
57
+
58
+
59
+ After development, normal review MUST write `stateDir/acceptance.json` and run
60
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
61
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
62
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
63
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
64
+ nonempty `evidence` array of concrete code/test/capture references and observations.
65
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
66
+ use its complete frozen description (or title if empty) at index 0.
67
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
68
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
69
+ user/host authorization; do not invent approval or label material changes minor.
70
+ Previously authorized decisions need no new confirmation. Unresolved requirements
71
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
72
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
73
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
74
+ the design. Record the original required classification; never downgrade a failed
75
+ check to make the gate pass. For benchmarks state what is measured and excluded:
76
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
77
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
78
+ array only when no findings remain. Numeric confidence cannot replace this report.
79
+
80
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
81
+ acceptance or unresolved requirements/required checks block review and archive.
82
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
83
+ Replacing the report requires review and archive authorization again; a green command
84
+ receipt alone is insufficient. Evidence references and approval attribution remain
85
+ reviewer assertions, not independently authenticated proof of human approval.
86
+
87
+ Keep operational completion notes, check requests and reports in `stateDir` from
88
+ start to finish. Run scoped checks for repairs and one final full verification after
89
+ all edits. Reuse that full receipt while runtime status says it is valid and its
90
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
91
+
92
+ End with ONE concise summary from runtime `status.completion`: implementation,
93
+ validation (including exceptions), archive, delivery, and evidence references.
94
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
95
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
96
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.
@@ -259,12 +259,15 @@
259
259
  "status",
260
260
  "phase",
261
261
  "verify",
262
+ "acceptance",
262
263
  "archive-check",
263
264
  "preview",
264
265
  "apply-preview"
265
266
  ],
266
267
  "statePath": "<backlogRoot>/.specrails/pipeline/<runId>/state.json",
267
268
  "verification": "Successful argv-based commands captured by the runtime, bound to frozen scope, candidate files and relevant execution environment. Unknown or stale evidence cannot pass archive.",
268
- "hostOwnership": "Host worktrees are used directly; host git/backlog are not mutated by Core delivery."
269
+ "hostOwnership": "Host worktrees are used directly; host git/backlog are not mutated by Core delivery.",
270
+ "acceptance": "acceptance --request JSON records every exact frozen requirement, evidence, exception authority, check scope/limitations and findings. Required by reviewer done/archive-check; bound to scope, candidate and design.",
271
+ "completion": "status.completion separates implementation, validation (verified|with-exceptions|pending|blocked), archive and delivery (pending-host|complete|pending); status.phases includes observed durationMs and attempts."
269
272
  }
270
273
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "specrails-core",
3
- "version": "5.1.1",
3
+ "version": "5.2.2",
4
4
  "description": "Provider-independent AI agent workflow system for Claude Code, Codex, Gemini CLI, and Kimi Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -313,3 +313,12 @@ This is non-negotiable for code-navigation work: plugin authors choose tools bec
313
313
  - Is this a symbol/reference/definition lookup? → MCP tool, not `Grep`/`Read`.
314
314
  - Am I about to read a file just to edit one function? → MCP tool, not `Read` + `Edit`.
315
315
  - No documented MCP tool fits the current need? → built-in, document why in your reasoning.
316
+
317
+
318
+ ## Acceptance and measurement plan
319
+
320
+ Map frozen requirements to behavioral evidence before implementation. Declare required
321
+ and supplementary checks and their measurement scope/limitations. Visual work needs
322
+ real rendered evidence at supported viewports and peak effect states; browser frame
323
+ performance needs browser measurements. Flag contradictory requirements and material
324
+ scope interpretations explicitly; do not weaken frozen acceptance text in the design.
@@ -272,3 +272,12 @@ Guidelines:
272
272
  ## MEMORY.md
273
273
 
274
274
  Your MEMORY.md is currently empty.
275
+
276
+
277
+ ## Verification evidence handoff
278
+
279
+ Keep operational notes and check requests under runtime `stateDir`, outside the design
280
+ artifacts. Supply evidence per frozen requirement and report failed/unavailable checks.
281
+ Declare benchmark scope and exclusions; Node timings do not prove browser frame time.
282
+ Use scoped checks during repairs and one final full receipt, reused while valid.
283
+ Return a concise handoff; the coordinator owns the single final run summary.
@@ -369,3 +369,14 @@ This is non-negotiable for code-navigation work: plugin authors choose tools bec
369
369
  - Is this a symbol/reference/definition lookup? → MCP tool, not `Grep`/`Read`.
370
370
  - Am I about to read a file just to edit one function? → MCP tool, not `Read` + `Edit`.
371
371
  - No documented MCP tool fits the current need? → built-in, document why in your reasoning.
372
+
373
+
374
+ ## Structured acceptance handoff
375
+
376
+ Follow the executable pipeline acceptance contract. Return a `stateDir/acceptance.json`
377
+ request covering every frozen requirement with evidence, explicit exceptions, required
378
+ and supplementary checks (including benchmark scope/limitations), and concrete findings.
379
+ Have the coordinator record it with `acceptance --request` before reviewer done and
380
+ archive-check. Inspect visual evidence at supported viewports and extreme states for
381
+ visual changes. A confidence score or checked tasks cannot substitute for acceptance.
382
+ Do not self-authorize material scope changes; cite actual existing user/host decisions.
@@ -312,3 +312,12 @@ state is corrupt, etc.), instead reply with:
312
312
 
313
313
  and end your turn. Do not invent fake plans or empty OpenSpec
314
314
  packages to keep the pipeline moving.
315
+
316
+
317
+ ## Acceptance and measurement plan
318
+
319
+ Map frozen requirements to behavioral evidence before implementation. Declare required
320
+ and supplementary checks and their measurement scope/limitations. Visual work needs
321
+ real rendered evidence at supported viewports and peak effect states; browser frame
322
+ performance needs browser measurements. Flag contradictory requirements and material
323
+ scope interpretations explicitly; do not weaken frozen acceptance text in the design.
@@ -205,3 +205,12 @@ no executable behaviour to test), reply with:
205
205
 
206
206
  and end your turn. Do not invent half-implementations or
207
207
  skip the RED step to pretend a task was completed.
208
+
209
+
210
+ ## Verification evidence handoff
211
+
212
+ Keep operational notes and check requests under runtime `stateDir`, outside the design
213
+ artifacts. Supply evidence per frozen requirement and report failed/unavailable checks.
214
+ Declare benchmark scope and exclusions; Node timings do not prove browser frame time.
215
+ Use scoped checks during repairs and one final full receipt, reused while valid.
216
+ Return a concise handoff; the coordinator owns the single final run summary.
@@ -289,3 +289,14 @@ Verdict: <"clean" | "fix needed: <one-sentence>" | "blocked: <reason>">
289
289
  Then end your turn. The orchestrator decides whether to spawn
290
290
  a second developer pass (if "fix needed") or to close the
291
291
  ticket (if "clean").
292
+
293
+
294
+ ## Structured acceptance handoff
295
+
296
+ Follow the executable pipeline acceptance contract. Return a `stateDir/acceptance.json`
297
+ request covering every frozen requirement with evidence, explicit exceptions, required
298
+ and supplementary checks (including benchmark scope/limitations), and concrete findings.
299
+ Have the coordinator record it with `acceptance --request` before reviewer done and
300
+ archive-check. Inspect visual evidence at supported viewports and extreme states for
301
+ visual changes. A confidence score or checked tasks cannot substitute for acceptance.
302
+ Do not self-authorize material scope changes; cite actual existing user/host decisions.
@@ -247,3 +247,45 @@ Only Core-owned backlog can close after all required delivery succeeds. First co
247
247
  ## Completion
248
248
 
249
249
  Report run/change, frozen tickets/roots, phase statuses, actual receipt commands, acceptance, confidence, archive and per-repository delivery. Distinguish reused evidence, newly executed checks and gaps. Keep failure excerpts bounded and refer to durable receipts. Missing workers, failed gates or incomplete required repositories stay blocked/failed, never falsely complete.
250
+
251
+
252
+ ### Acceptance evidence and completion
253
+
254
+ After development, normal review MUST write `stateDir/acceptance.json` and run
255
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
256
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
257
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
258
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
259
+ nonempty `evidence` array of concrete code/test/capture references and observations.
260
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
261
+ use its complete frozen description (or title if empty) at index 0.
262
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
263
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
264
+ user/host authorization; do not invent approval or label material changes minor.
265
+ Previously authorized decisions need no new confirmation. Unresolved requirements
266
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
267
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
268
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
269
+ the design. Record the original required classification; never downgrade a failed
270
+ check to make the gate pass. For benchmarks state what is measured and excluded:
271
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
272
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
273
+ array only when no findings remain. Numeric confidence cannot replace this report.
274
+
275
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
276
+ acceptance or unresolved requirements/required checks block review and archive.
277
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
278
+ Replacing the report requires review and archive authorization again; a green command
279
+ receipt alone is insufficient. Evidence references and approval attribution remain
280
+ reviewer assertions, not independently authenticated proof of human approval.
281
+
282
+ Keep operational completion notes, check requests and reports in `stateDir` from
283
+ start to finish. Run scoped checks for repairs and one final full verification after
284
+ all edits. Reuse that full receipt while runtime status says it is valid and its
285
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
286
+
287
+ End with ONE concise summary from runtime `status.completion`: implementation,
288
+ validation (including exceptions), archive, delivery, and evidence references.
289
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
290
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
291
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.
@@ -53,3 +53,45 @@ verification block success. Record reviewer done after semantic review, then run
53
53
  `archive-check`. ONLY a successful gate authorizes reviewer archive-only execution.
54
54
  Verify the archive exists and the active change is gone before recording archive
55
55
  done. Never archive inside an ordinary review before the combined gates run.
56
+
57
+
58
+ ### Acceptance evidence and completion
59
+
60
+ After development, normal review MUST write `stateDir/acceptance.json` and run
61
+ `acceptance --request <absolute-path>` before `phase --phase reviewer --status done`.
62
+ The request is `{criteria: [...], checks: [...], findings: [...]}`:
63
+ - Each criterion has `specId` (string), `criterionIndex` (zero-based), `requirement`
64
+ (exact frozen text), `status` (`met`, `exception`, `blocked`, `pending`) and a
65
+ nonempty `evidence` array of concrete code/test/capture references and observations.
66
+ Cover every frozen acceptance criterion once. If a spec has no explicit criteria,
67
+ use its complete frozen description (or title if empty) at index 0.
68
+ - An `exception` MUST include `{reason, impact, material, acceptedBy, approvalEvidence}`.
69
+ `acceptedBy` is `reviewer`, `user`, or `host`. Material scope changes require actual
70
+ user/host authorization; do not invent approval or label material changes minor.
71
+ Previously authorized decisions need no new confirmation. Unresolved requirements
72
+ remain `blocked` or `pending`, never `met` through a rewritten interpretation.
73
+ - Each check has `{name, status, required, evidence, scope, limitations}`; status is
74
+ `passed`, `failed`, or `unavailable`. Include required and supplementary checks from
75
+ the design. Record the original required classification; never downgrade a failed
76
+ check to make the gate pass. For benchmarks state what is measured and excluded:
77
+ a Node microbenchmark does not establish browser Canvas/GPU/frame performance.
78
+ - `findings` lists concrete review conclusions, risks and resolutions; use an empty
79
+ array only when no findings remain. Numeric confidence cannot replace this report.
80
+
81
+ The runtime binds this evidence to frozen scope, source and design. Missing/stale
82
+ acceptance or unresolved requirements/required checks block review and archive.
83
+ Accepted exceptions and supplementary failures produce `with-exceptions` validation.
84
+ Replacing the report requires review and archive authorization again; a green command
85
+ receipt alone is insufficient. Evidence references and approval attribution remain
86
+ reviewer assertions, not independently authenticated proof of human approval.
87
+
88
+ Keep operational completion notes, check requests and reports in `stateDir` from
89
+ start to finish. Run scoped checks for repairs and one final full verification after
90
+ all edits. Reuse that full receipt while runtime status says it is valid and its
91
+ commands cover required checks. New prose/phase handoffs alone do not warrant reruns.
92
+
93
+ End with ONE concise summary from runtime `status.completion`: implementation,
94
+ validation (including exceptions), archive, delivery, and evidence references.
95
+ Host-owned delivery stays `pending-host`; do not call uncommitted files "landed".
96
+ Report phase durations/attempts from `status.phases`; report per-phase cost only when
97
+ provider telemetry attributes it, otherwise unavailable. Do not invent cost splits.