@tiangong-ai/cli 0.0.27 → 0.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/AGENTS.md +1 -1
  2. package/README.md +83 -35
  3. package/dist/research/orchestration.js +38 -0
  4. package/dist/research/orchestration.js.map +1 -1
  5. package/dist/research/setup-command.js +1 -1
  6. package/dist/research/setup-command.js.map +1 -1
  7. package/dist/research/workspace/broker.d.ts +5 -0
  8. package/dist/research/workspace/broker.js +98 -9
  9. package/dist/research/workspace/broker.js.map +1 -1
  10. package/dist/research/workspace/capabilities.js +32 -11
  11. package/dist/research/workspace/capabilities.js.map +1 -1
  12. package/dist/research/workspace/credentials.d.ts +6 -1
  13. package/dist/research/workspace/credentials.js +16 -2
  14. package/dist/research/workspace/credentials.js.map +1 -1
  15. package/dist/research/workspace/executor.js +43 -3
  16. package/dist/research/workspace/executor.js.map +1 -1
  17. package/dist/research/workspace/external-skills.d.ts +31 -0
  18. package/dist/research/workspace/external-skills.js +161 -13
  19. package/dist/research/workspace/external-skills.js.map +1 -1
  20. package/dist/research/workspace/preflight.d.ts +34 -2
  21. package/dist/research/workspace/preflight.js +76 -21
  22. package/dist/research/workspace/preflight.js.map +1 -1
  23. package/dist/research/workspace/runtime.js +135 -50
  24. package/dist/research/workspace/runtime.js.map +1 -1
  25. package/dist/research/workspace/schemas.d.ts +4 -0
  26. package/dist/research/workspace/schemas.js +29 -3
  27. package/dist/research/workspace/schemas.js.map +1 -1
  28. package/dist/research/workspace/setup-catalog.d.ts +3 -2
  29. package/dist/research/workspace/setup-catalog.js +22 -1
  30. package/dist/research/workspace/setup-catalog.js.map +1 -1
  31. package/dist/research/workspace/setup-wizard.js +15 -6
  32. package/dist/research/workspace/setup-wizard.js.map +1 -1
  33. package/dist/research/workspace/setup.d.ts +4 -0
  34. package/dist/research/workspace/setup.js +84 -36
  35. package/dist/research/workspace/setup.js.map +1 -1
  36. package/dist/research/workspace/types.d.ts +2 -0
  37. package/dist/research/workspace/workspace.d.ts +2 -1
  38. package/dist/research/workspace/workspace.js +62 -13
  39. package/dist/research/workspace/workspace.js.map +1 -1
  40. package/package.json +1 -1
@@ -89,12 +89,17 @@ const EXTERNAL_SKILL_CATALOG = [
89
89
  healthUrl: "https://api.search.brave.com/res/v1/videos/search?q=tiangong+research+connectivity+check&count=1",
90
90
  },
91
91
  ];
92
+ const TIANGONG_SCI_CATALOG_ID = "first-party.tiangong.kb-sci-search";
93
+ const SETUP_MANAGED_CATALOG_IDS = new Set([
94
+ ...EXTERNAL_SKILL_CATALOG.map((entry) => entry.id),
95
+ TIANGONG_SCI_CATALOG_ID,
96
+ ]);
92
97
  const EVALUATED_EXTERNAL_SKILLS = [
93
98
  {
94
99
  skillName: "answers",
95
100
  expectedTreeSha256: "7c11afce362b8beb6a3c27ef0f77d82d10869db2ee583f74ecf0d76422d4410a",
96
101
  disposition: "unsupported-execution",
97
- reason: "Its synthesized-answer endpoint requires POST and is not a raw-evidence source; the current evidence broker authorizes bounded GET only.",
102
+ reason: "Its synthesized-answer endpoint is not a raw-evidence source; broker support for bounded JSON POST does not make synthesized answers admissible evidence.",
98
103
  },
99
104
  {
100
105
  skillName: "bx",
@@ -320,7 +325,7 @@ export async function inspectExternalSkillCatalog(input) {
320
325
  supportedKinds: [
321
326
  {
322
327
  kind: "brokered-evidence",
323
- execution: "The isolated producer translates the staged external Skill's documented GET endpoint into the credential broker.",
328
+ execution: "The isolated producer translates the staged external Skill's exact documented GET or JSON POST endpoint into the credential broker.",
324
329
  permissions: ["project-read", "candidate-write", "brokered-network"],
325
330
  },
326
331
  {
@@ -337,8 +342,8 @@ export async function inspectExternalSkillCatalog(input) {
337
342
  "license identifier",
338
343
  ],
339
344
  networkRequirements: [
340
- "exact HTTPS allowedHosts",
341
- "bounded GET response policy (the current broker does not authorize POST)",
345
+ "credential-free exact HTTPS endpoint on an allowed host",
346
+ "bounded GET or JSON POST response policy",
342
347
  "safe healthCheck",
343
348
  "logical credential declarations only",
344
349
  ],
@@ -361,6 +366,7 @@ export async function inspectExternalSkillCatalog(input) {
361
366
  permissions: ["project-read", "candidate-write", "brokered-network"],
362
367
  allowedHosts: ["database.example.org"],
363
368
  http: {
369
+ endpoint: "https://database.example.org/search",
364
370
  accept: "application/json",
365
371
  allowedContentTypes: ["application/json"],
366
372
  maxResponseBytes: 524288,
@@ -382,7 +388,7 @@ export async function inspectExternalSkillCatalog(input) {
382
388
  },
383
389
  ],
384
390
  healthCheck: {
385
- url: "https://database.example.org/health?query=connectivity",
391
+ url: "https://database.example.org/search?query=connectivity",
386
392
  credentialId: "database.owner-source.api-key",
387
393
  expectedContentTypes: ["application/json"],
388
394
  },
@@ -441,11 +447,10 @@ export async function configureExternalSkillProfile(input) {
441
447
  (input.profile === EXTERNAL_SKILL_CONTEXT_PROFILE && entry.tier === "enhanced"));
442
448
  const configured = await Promise.all(selectedEntries.map(async (entry) => catalogDeclaration(entry, await requireCatalogSkill(entry, roots, workspace))));
443
449
  const existing = await loadCapabilityDeclarations(workspace);
444
- const managedIds = new Set(configured.map((capability) => capability.id));
450
+ const configuredById = new Map(configured.map((capability) => [capability.id, capability]));
445
451
  for (const capability of existing.capabilities) {
446
- if (managedIds.has(capability.id) &&
447
- capability.source?.catalogId !==
448
- configured.find((candidate) => candidate.id === capability.id)?.source?.catalogId) {
452
+ const replacement = configuredById.get(capability.id);
453
+ if (replacement && capability.source?.catalogId !== replacement.source?.catalogId) {
449
454
  throw new CliError(`Capability ID conflicts with the external Skill profile: ${capability.id}`, {
450
455
  code: "RESEARCH_CAPABILITY_CONFLICT",
451
456
  exitCode: 3,
@@ -455,7 +460,8 @@ export async function configureExternalSkillProfile(input) {
455
460
  const merged = parseCapabilityDeclarations({
456
461
  schemaVersion: 1,
457
462
  capabilities: [
458
- ...existing.capabilities.filter((capability) => !managedIds.has(capability.id)),
463
+ ...existing.capabilities.filter((capability) => !EXTERNAL_SKILL_CATALOG.some((entry) => entry.id === capability.source?.catalogId) &&
464
+ !configuredById.has(capability.id)),
459
465
  ...configured,
460
466
  ],
461
467
  });
@@ -479,12 +485,37 @@ export async function configureExternalSkillProfile(input) {
479
485
  ],
480
486
  };
481
487
  }
488
+ export async function reconcileSetupManagedCapabilities(input) {
489
+ const workspace = resolve(input.workspace);
490
+ await requireExistingCapabilitiesVerified(workspace);
491
+ const selectedCapabilityIds = new Set(input.selectedCapabilityIds);
492
+ const existing = await loadCapabilityDeclarations(workspace);
493
+ const removed = existing.capabilities.filter((capability) => capability.source?.catalogId !== null &&
494
+ capability.source?.catalogId !== undefined &&
495
+ SETUP_MANAGED_CATALOG_IDS.has(capability.source.catalogId) &&
496
+ !selectedCapabilityIds.has(capability.id));
497
+ const retained = parseCapabilityDeclarations({
498
+ schemaVersion: 1,
499
+ capabilities: existing.capabilities.filter((capability) => !removed.some((candidate) => candidate.id === capability.id)),
500
+ });
501
+ const lock = await buildCapabilityLock(retained);
502
+ await persistDeclarationsAndLock(workspace, retained, lock);
503
+ return {
504
+ schemaVersion: 1,
505
+ workspace,
506
+ selectedCapabilityIds: [...selectedCapabilityIds].sort(),
507
+ removedCapabilityIds: removed.map((capability) => capability.id).sort(),
508
+ preservedCapabilityIds: retained.capabilities.map((capability) => capability.id).sort(),
509
+ installedSkillDirectoriesRemoved: false,
510
+ lockStatus: "written",
511
+ };
512
+ }
482
513
  export async function configureTiangongSciCapability(input) {
483
514
  const workspace = resolve(input.workspace);
484
515
  await requireExistingCapabilitiesVerified(workspace);
485
516
  if (input.source.type !== "git" ||
486
517
  input.source.locator.replace(/\/+$/, "") !== "https://github.com/tiangong-ai/skills.git" ||
487
- input.source.catalogId !== "first-party.tiangong.kb-sci-search") {
518
+ input.source.catalogId !== TIANGONG_SCI_CATALOG_ID) {
488
519
  throw new CliError("Tiangong SCI capability source identity is not the reviewed first-party catalog entry.", {
489
520
  code: "RESEARCH_SETUP_SOURCE_INVALID",
490
521
  exitCode: 3,
@@ -542,6 +573,7 @@ export async function configureTiangongSciCapability(input) {
542
573
  permissions: ["project-read", "candidate-write", "brokered-network"],
543
574
  allowedHosts: [endpoint.host.toLowerCase()],
544
575
  http: {
576
+ endpoint: endpoint.toString(),
545
577
  method: "POST",
546
578
  accept: "application/json",
547
579
  allowedContentTypes: ["application/json"],
@@ -727,6 +759,9 @@ export async function doctorExternalCapabilities(workspace, options = {}) {
727
759
  targetSha256: capability.healthCheck ? sha256Text(capability.healthCheck.url) : null,
728
760
  httpStatus: null,
729
761
  retryAfterSeconds: null,
762
+ providerCode: null,
763
+ providerRequestId: null,
764
+ minimumAction: "Resolve the reported static readiness error before retrying live checks.",
730
765
  detail: "Live probe was not started because static readiness failed.",
731
766
  }
732
767
  : capability.healthCheck
@@ -738,6 +773,9 @@ export async function doctorExternalCapabilities(workspace, options = {}) {
738
773
  targetSha256: null,
739
774
  httpStatus: null,
740
775
  retryAfterSeconds: null,
776
+ providerCode: null,
777
+ providerRequestId: null,
778
+ minimumAction: null,
741
779
  detail: "Capability has no brokered network health check.",
742
780
  }
743
781
  : {
@@ -747,6 +785,9 @@ export async function doctorExternalCapabilities(workspace, options = {}) {
747
785
  targetSha256: capability.healthCheck ? sha256Text(capability.healthCheck.url) : null,
748
786
  httpStatus: null,
749
787
  retryAfterSeconds: null,
788
+ providerCode: null,
789
+ providerRequestId: null,
790
+ minimumAction: "Rerun capability doctor with --live after reviewing quota impact.",
750
791
  detail: "Use --live for an explicit provider connectivity probe.",
751
792
  };
752
793
  capabilities.push({
@@ -826,6 +867,7 @@ function catalogDeclaration(entry, skillPath) {
826
867
  permissions: ["project-read", "candidate-write", "brokered-network"],
827
868
  allowedHosts: ["api.search.brave.com"],
828
869
  http: {
870
+ endpoint: capabilityEndpoint(entry.healthUrl),
829
871
  accept: "application/json",
830
872
  allowedContentTypes: ["application/json"],
831
873
  maxResponseBytes: entry.maxResponseBytes,
@@ -855,6 +897,12 @@ function catalogDeclaration(entry, skillPath) {
855
897
  ],
856
898
  }).capabilities[0];
857
899
  }
900
+ function capabilityEndpoint(healthUrl) {
901
+ const endpoint = new URL(healthUrl);
902
+ endpoint.search = "";
903
+ endpoint.hash = "";
904
+ return endpoint.toString();
905
+ }
858
906
  async function inspectCatalogInstallation(entry, roots) {
859
907
  const candidates = [];
860
908
  const errors = [];
@@ -988,6 +1036,7 @@ async function requireExistingCapabilitiesVerified(root) {
988
1036
  }
989
1037
  async function probeCapability(capability, healthCheck, credentialMap, fetcher = fetch, sleeper = sleep) {
990
1038
  const initial = new URL(healthCheck.url);
1039
+ const secrets = [...credentialMap.values()];
991
1040
  const headers = new Headers(capability.http?.staticHeaders ?? {});
992
1041
  headers.set("Accept", capability.http?.accept ?? "application/json");
993
1042
  const body = healthCheck.body === null ? null : JSON.stringify(healthCheck.body);
@@ -1039,7 +1088,8 @@ async function probeCapability(capability, healthCheck, credentialMap, fetcher =
1039
1088
  }
1040
1089
  const contentType = response.headers.get("content-type")?.split(";", 1)[0]?.trim().toLowerCase() ?? "";
1041
1090
  const retryAfterSeconds = parseRetryAfter(response.headers.get("retry-after"));
1042
- await response.body?.cancel();
1091
+ const responseBody = await readBoundedResponseBody(response, 4 * 1024);
1092
+ const diagnostics = providerDiagnostics(response, responseBody.text, contentType, secrets);
1043
1093
  if (response.status === 429 && rateLimitRetries === 0) {
1044
1094
  rateLimitRetries += 1;
1045
1095
  await sleeper(Math.min(5, retryAfterSeconds ?? 1) * 1000);
@@ -1059,7 +1109,12 @@ async function probeCapability(capability, healthCheck, credentialMap, fetcher =
1059
1109
  targetSha256: sha256Text(current.toString()),
1060
1110
  httpStatus: response.status,
1061
1111
  retryAfterSeconds,
1062
- detail: `Provider returned HTTP ${response.status}.`,
1112
+ providerCode: diagnostics.providerCode,
1113
+ providerRequestId: diagnostics.providerRequestId,
1114
+ minimumAction: providerMinimumAction(response.status, diagnostics.providerCode),
1115
+ detail: diagnostics.detail
1116
+ ? `Provider returned HTTP ${response.status}: ${diagnostics.detail}`
1117
+ : `Provider returned HTTP ${response.status}.`,
1063
1118
  };
1064
1119
  }
1065
1120
  if (!healthCheck.expectedContentTypes.includes(contentType)) {
@@ -1070,6 +1125,9 @@ async function probeCapability(capability, healthCheck, credentialMap, fetcher =
1070
1125
  targetSha256: sha256Text(current.toString()),
1071
1126
  httpStatus: response.status,
1072
1127
  retryAfterSeconds,
1128
+ providerCode: diagnostics.providerCode,
1129
+ providerRequestId: diagnostics.providerRequestId,
1130
+ minimumAction: "Verify the capability Accept/content-type contract against the selected provider endpoint.",
1073
1131
  detail: `Provider returned unsupported content type ${contentType || "unknown"}.`,
1074
1132
  };
1075
1133
  }
@@ -1080,6 +1138,9 @@ async function probeCapability(capability, healthCheck, credentialMap, fetcher =
1080
1138
  targetSha256: sha256Text(current.toString()),
1081
1139
  httpStatus: response.status,
1082
1140
  retryAfterSeconds,
1141
+ providerCode: diagnostics.providerCode,
1142
+ providerRequestId: diagnostics.providerRequestId,
1143
+ minimumAction: null,
1083
1144
  detail: "Provider authentication and response contract passed.",
1084
1145
  };
1085
1146
  }
@@ -1094,10 +1155,97 @@ async function probeCapability(capability, healthCheck, credentialMap, fetcher =
1094
1155
  targetSha256: sha256Text(initial.toString()),
1095
1156
  httpStatus: null,
1096
1157
  retryAfterSeconds: null,
1158
+ providerCode: null,
1159
+ providerRequestId: null,
1160
+ minimumAction: "Verify network/VPN/proxy access and the exact capability endpoint, then rerun the live check.",
1097
1161
  detail: "Provider connectivity probe failed before a valid response was received.",
1098
1162
  };
1099
1163
  }
1100
1164
  }
1165
+ async function readBoundedResponseBody(response, maxBytes) {
1166
+ if (!response.body)
1167
+ return { text: "", truncated: false };
1168
+ const reader = response.body.getReader();
1169
+ const chunks = [];
1170
+ let bytes = 0;
1171
+ let truncated = false;
1172
+ try {
1173
+ while (bytes < maxBytes) {
1174
+ const item = await reader.read();
1175
+ if (item.done)
1176
+ break;
1177
+ const remaining = maxBytes - bytes;
1178
+ if (item.value.byteLength > remaining) {
1179
+ chunks.push(item.value.subarray(0, remaining));
1180
+ bytes += remaining;
1181
+ truncated = true;
1182
+ await reader.cancel();
1183
+ break;
1184
+ }
1185
+ chunks.push(item.value);
1186
+ bytes += item.value.byteLength;
1187
+ if (bytes === maxBytes) {
1188
+ truncated = true;
1189
+ await reader.cancel();
1190
+ }
1191
+ }
1192
+ }
1193
+ finally {
1194
+ reader.releaseLock();
1195
+ }
1196
+ return {
1197
+ text: Buffer.concat(chunks.map((chunk) => Buffer.from(chunk))).toString("utf8"),
1198
+ truncated,
1199
+ };
1200
+ }
1201
+ function providerDiagnostics(response, responseText, contentType, secrets) {
1202
+ let value = null;
1203
+ if (contentType === "application/json" && responseText.trim()) {
1204
+ try {
1205
+ value = JSON.parse(responseText);
1206
+ }
1207
+ catch {
1208
+ value = null;
1209
+ }
1210
+ }
1211
+ const root = isObject(value) ? value : null;
1212
+ const error = root && isObject(root.error) ? root.error : null;
1213
+ const providerCode = safeProviderIdentifier(firstString(error?.code, root?.code, error?.type, root?.type), secrets);
1214
+ const providerRequestId = safeProviderIdentifier(firstString(response.headers.get("x-request-id"), response.headers.get("request-id"), error?.requestId, error?.request_id, error?.id, root?.requestId, root?.request_id), secrets);
1215
+ const detailSource = firstString(error?.detail, error?.message, root?.detail, root?.message) ??
1216
+ (value === null ? responseText : null);
1217
+ const detail = detailSource
1218
+ ? sanitizeResearchText(detailSource, secrets).replaceAll(/\s+/g, " ").trim().slice(0, 320) ||
1219
+ null
1220
+ : null;
1221
+ return { providerCode, providerRequestId, detail };
1222
+ }
1223
+ function firstString(...values) {
1224
+ return (values.find((value) => typeof value === "string" && value.length > 0) ?? null);
1225
+ }
1226
+ function safeProviderIdentifier(value, secrets) {
1227
+ if (!value || value.length > 128 || !/^[A-Za-z0-9][A-Za-z0-9._:-]*$/.test(value))
1228
+ return null;
1229
+ if (secrets.some((secret) => secret === value || secret.includes(value) || value.includes(secret))) {
1230
+ return null;
1231
+ }
1232
+ return value;
1233
+ }
1234
+ function providerMinimumAction(status, providerCode) {
1235
+ if (providerCode === "OPTION_NOT_IN_PLAN") {
1236
+ return `Create and apply a reviewed ${EXTERNAL_SKILL_PROFILE} baseline replacement plan, or enable the provider subscription option; setup never switches profiles silently.`;
1237
+ }
1238
+ if (status === 401 || status === 403) {
1239
+ return "Verify the selected logical credential and provider entitlement, then rerun the live check.";
1240
+ }
1241
+ if (status === 429) {
1242
+ return "Honor Retry-After or the provider quota reset; do not retry a deterministic configuration error.";
1243
+ }
1244
+ if (status >= 500) {
1245
+ return "Retry after the provider service recovers; preserve the request ID when reporting the incident.";
1246
+ }
1247
+ return "Review the sanitized provider code/detail and the exact capability request contract before retrying.";
1248
+ }
1101
1249
  function capabilityVerificationErrors(verification, capabilityId) {
1102
1250
  if (!verification)
1103
1251
  return ["capability verification was not run"];
@@ -1 +1 @@
1
- {"version":3,"file":"external-skills.js","sourceRoot":"","sources":["../../../src/research/workspace/external-skills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAChE,OAAO,EAAE,UAAU,IAAI,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EACL,mBAAmB,EACnB,0BAA0B,EAC1B,2BAA2B,EAC3B,kBAAkB,GACnB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,sCAAsC,EACtC,2BAA2B,GAC5B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EACL,eAAe,EACf,QAAQ,EACR,UAAU,EACV,YAAY,EACZ,UAAU,EACV,cAAc,EACd,eAAe,GAChB,MAAM,cAAc,CAAC;AAQtB,MAAM,CAAC,MAAM,2BAA2B,GAAG,QAAQ,CAAC;AACpD,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,MAAM,CAAC,MAAM,8BAA8B,GAAG,gCAAgC,CAAC;AAC/E,MAAM,CAAC,MAAM,4BAA4B,GAAG,8BAA8B,CAAC;AAE3E,MAAM,YAAY,GAAG;IACnB,UAAU,EAAE,2BAA2B;IACvC,OAAO,EAAE,kDAAkD;IAC3D,YAAY,EAAE,0CAA0C;IACxD,OAAO,EAAE,KAAK;CACN,CAAC;AAwBX,MAAM,sBAAsB,GAAyC;IACnE;QACE,EAAE,EAAE,2BAA2B;QAC/B,YAAY,EAAE,yBAAyB;QACvC,SAAS,EAAE,YAAY;QACvB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,oFAAoF;QAC7F,kBAAkB,EAAE,kEAAkE;QACtF,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,IAAI,GAAG,IAAI;QAC7B,QAAQ,EAAE,GAAG;QACb,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,IAAI;QACtB,SAAS,EACP,iHAAiH;KACpH;IACD;QACE,EAAE,EAAE,4BAA4B;QAChC,YAAY,EAAE,0BAA0B;QACxC,SAAS,EAAE,aAAa;QACxB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,4EAA4E;QACrF,kBAAkB,EAAE,kEAAkE;QACtF,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;QACjC,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,IAAI;QACtB,SAAS,EACP,mKAAmK;KACtK;IACD;QACE,EAAE,EAAE,4BAA4B;QAChC,YAAY,EAAE,0BAA0B;QACxC,SAAS,EAAE,aAAa;QACxB,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,uEAAuE;QAChF,kBAAkB,EAAE,kEAAkE;QACtF,oBAAoB,EAAE,IAAI;QAC1B,gBAAgB,EAAE,IAAI,GAAG,IAAI;QAC7B,QAAQ,EAAE,GAAG;QACb,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,IAAI;QACtB,SAAS,EACP,gGAAgG;KACnG;IACD;QACE,EAAE,EAAE,8BAA8B;QAClC,YAAY,EAAE,4BAA4B;QAC1C,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,aAAa;QACnB,OAAO,EACL,0FAA0F;QAC5F,kBAAkB,EAAE,kEAAkE;QACtF,oBAAoB,EAAE,KAAK;QAC3B,gBAAgB,EAAE,IAAI,GAAG,IAAI;QAC7B,QAAQ,EAAE,GAAG;QACb,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,IAAI;QACtB,SAAS,EACP,kGAAkG;KACrG;IACD;QACE,EAAE,EAAE,8BAA8B;QAClC,YAAY,EAAE,4BAA4B;QAC1C,SAAS,EAAE,eAAe;QAC1B,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,sFAAsF;QAC/F,kBAAkB,EAAE,kEAAkE;QACtF,oBAAoB,EAAE,KAAK;QAC3B,gBAAgB,EAAE,IAAI,GAAG,IAAI;QAC7B,QAAQ,EAAE,GAAG;QACb,QAAQ,EAAE,KAAK;QACf,gBAAgB,EAAE,IAAI;QACtB,SAAS,EACP,kGAAkG;KACrG;CACO,CAAC;AAEX,MAAM,yBAAyB,GAA2C;IACxE;QACE,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,uBAAuB;QACpC,MAAM,EACJ,0IAA0I;KAC7I;IACD;QACE,SAAS,EAAE,IAAI;QACf,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,uBAAuB;QACpC,MAAM,EACJ,6IAA6I;KAChJ;IACD;QACE,SAAS,EAAE,oBAAoB;QAC/B,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EACJ,uIAAuI;KAC1I;IACD;QACE,SAAS,EAAE,YAAY;QACvB,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EACJ,+HAA+H;KAClI;IACD;QACE,SAAS,EAAE,YAAY;QACvB,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,+EAA+E;KACxF;IACD;QACE,SAAS,EAAE,SAAS;QACpB,kBAAkB,EAAE,kEAAkE;QACtF,WAAW,EAAE,qBAAqB;QAClC,MAAM,EAAE,6EAA6E;KACtF;CACO,CAAC;AAEX,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAAC,KAIjD;IACC,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACjD,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpE,MAAM,KAAK,GAAG,UAAU,CAAC,YAAY,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;IAChE,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACpF,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5E,IAAI,qBAAqB,GAEd,IAAI,CAAC;IAChB,IAAI,0BAA0B,GAAkB,IAAI,CAAC;IACrD,IAAI,SAAS,EAAE,CAAC;QACd,IAAI,CAAC;YACH,qBAAqB,GAAG,MAAM,sCAAsC,CAClE,SAAS,EACT,YAAY,EAAE,YAAY,IAAI,EAAE,CACjC,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,0BAA0B,GAAG,oBAAoB,CAC/C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CACvD,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,CAAC;IACnB,KAAK,MAAM,KAAK,IAAI,sBAAsB,EAAE,CAAC;QAC3C,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,YAAY,EAAE,YAAY,CAAC,IAAI,CACjD,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,MAAM,EAAE,SAAS,KAAK,KAAK,CAAC,EAAE;YACzC,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,KAAK,CAAC,SAAS;gBACjD,UAAU,CAAC,EAAE,KAAK,KAAK,CAAC,YAAY,CAAC,CAC1C,CAAC;QACF,MAAM,MAAM,GACV,WAAW,KAAK,SAAS;YACzB,4BAA4B,CAAC,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC;QAC1E,MAAM,gBAAgB,GAAG,0BAA0B;YACjD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,WAAW;gBACX,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC;oBACpC,CAAC,CAAC,cAAc;oBAChB,CAAC,CAAC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,EAAE,CACzC,qBAAqB,EAAE,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAC7D;wBACH,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,SAAS;gBACf,CAAC,CAAC,gBAAgB,CAAC;QACvB,OAAO,CAAC,IAAI,CAAC;YACX,EAAE,EAAE,KAAK,CAAC,EAAE;YACZ,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,MAAM,EAAE;gBACN,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,YAAY,EAAE,YAAY,CAAC,YAAY;gBACvC,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;aAC7C;YACD,OAAO,EAAE;gBACP,WAAW,EAAE,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACtE,UAAU,EAAE,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACpE,kBAAkB,EAAE,KAAK;aAC1B;YACD,aAAa,EAAE;gBACb,YAAY,EAAE,CAAC,sBAAsB,CAAC;gBACtC,aAAa,EAAE,CAAC,sBAAsB,CAAC;gBACvC,eAAe,EAAE,CAAC,iBAAiB,CAAC;gBACpC,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;gBAChD,YAAY,EACV,KAAK,CAAC,IAAI,KAAK,UAAU;oBACvB,CAAC,CAAC,uDAAuD;oBACzD,CAAC,CAAC,6DAA6D;aACpE;YACD,YAAY;YACZ,MAAM,EAAE;gBACN,UAAU,EAAE,WAAW,KAAK,SAAS;gBACrC,MAAM;gBACN,UAAU,EAAE,gBAAgB;aAC7B;SACF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,qBAAqB,GAAG,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,yBAAyB,EAAE,CAAC;QAC9C,qBAAqB,CAAC,IAAI,CAAC;YACzB,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,WAAW,EAAE,KAAc;YAC3B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,MAAM,EAAE;gBACN,UAAU,EAAE,YAAY,CAAC,UAAU;gBACnC,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,YAAY,EAAE,YAAY,CAAC,YAAY;gBACvC,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;aAC7C;YACD,OAAO,EAAE;gBACP,WAAW,EAAE,iBAAiB,CAAC,KAAK,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACtE,UAAU,EAAE,iBAAiB,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACpE,kBAAkB,EAAE,KAAK;aAC1B;YACD,YAAY,EAAE,MAAM,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC;YAC5D,aAAa,EACX,KAAK,CAAC,WAAW,KAAK,kBAAkB;gBACtC,CAAC,CAAC;oBACE,MAAM,EAAE,0BAAmC;oBAC3C,OAAO,EACL,sHAAsH;iBACzH;gBACH,CAAC,CAAC;oBACE,MAAM,EAAE,eAAwB;oBAChC,OAAO,EAAE,IAAI;iBACd;SACR,CAAC,CAAC;IACL,CAAC;IACD,MAAM,qBAAqB,GACzB,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QAC5C,MAAM,UAAU,GAAG,4BAA4B,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7E,MAAM,aAAa,GAAG,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QAChF,OAAO;YACL,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,IAAI,IAAI;YAC/C,cAAc,EAAE,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC;YAC7D,MAAM,EACJ,UAAU,CAAC,MAAM,KAAK,IAAI;gBACxB,CAAC,CAAC,IAAI;gBACN,CAAC,CAAC;oBACE,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI;oBAC5B,aAAa,EAAE,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;oBACpD,YAAY,EAAE,UAAU,CAAC,MAAM,CAAC,YAAY;oBAC5C,kBAAkB,EAAE,UAAU,CAAC,MAAM,CAAC,kBAAkB;oBACxD,OAAO,EAAE,UAAU,CAAC,MAAM,CAAC,OAAO;iBACnC;YACP,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;YACrD,eAAe,EAAE,UAAU,CAAC,QAAQ,EAAE,eAAe,IAAI,EAAE;YAC3D,YAAY,EAAE,UAAU,CAAC,YAAY;YACrC,aAAa;YACb,MAAM,EAAE;gBACN,MAAM,EAAE,YAAY,EAAE,MAAM,KAAK,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;gBACtE,UAAU,EAAE,0BAA0B;oBACpC,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,aAAa,CAAC,MAAM,KAAK,CAAC;wBAC1B,CAAC,CAAC,cAAc;wBAChB,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,YAAY,EAAE,EAAE,CACjC,qBAAqB,EAAE,aAAa,CAAC,QAAQ,CAAC,YAAY,CAAC,CAC5D;4BACH,CAAC,CAAC,YAAY;4BACd,CAAC,CAAC,SAAS;gBACjB,MAAM,EAAE,UAAU;aACnB;SACF,CAAC;IACJ,CAAC,CAAC,IAAI,EAAE,CAAC;IACX,OAAO;QACL,aAAa,EAAE,CAAU;QACzB,OAAO,EAAE,mCAAmC;QAC5C,MAAM,EAAE;YACN,eAAe,EAAE,eAAe;YAChC,cAAc,EAAE,KAAK;YACrB,2BAA2B,EAAE,IAAI;SAClC;QACD,SAAS,EAAE;YACT,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,2BAA2B;YACpC,MAAM,EAAE;gBACN,OAAO,EAAE,YAAY,CAAC,OAAO;gBAC7B,YAAY,EAAE,YAAY,CAAC,YAAY;aACxC;YACD,WAAW,EAAE,iBAAiB,CAAC,KAAK,EAAE,YAAY,CAAC;YACnD,UAAU,EAAE,iBAAiB,CAAC,IAAI,EAAE,YAAY,CAAC;YACjD,yBAAyB,EAAE,iBAAiB,CAC1C,KAAK,EACL,YAAY,EACZ,sBAAsB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CACvD;YACD,wBAAwB,EAAE,iBAAiB,CACzC,IAAI,EACJ,YAAY,EACZ,sBAAsB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CACvD;SACF;QACD,QAAQ,EAAE;YACR;gBACE,EAAE,EAAE,sBAAsB;gBAC1B,WAAW,EAAE,uEAAuE;gBACpF,QAAQ,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,GAAG,CAC/E,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB;aACF;YACD;gBACE,EAAE,EAAE,8BAA8B;gBAClC,WAAW,EACT,gFAAgF;gBAClF,QAAQ,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAClF,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB;aACF;YACD;gBACE,EAAE,EAAE,4BAA4B;gBAChC,WAAW,EAAE,2EAA2E;gBACxF,QAAQ,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;aAC1D;SACF;QACD,mBAAmB,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,GAAG,CAC7F,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB;QACD,gBAAgB,EAAE,sBAAsB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,GAAG,CACvF,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CACpB;QACD,OAAO;QACP,qBAAqB;QACrB,WAAW,EAAE;YACX;gBACE,EAAE,EAAE,sBAAsB;gBAC1B,QAAQ,EAAE,kBAAkB;gBAC5B,UAAU,EAAE,sBAAsB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC3D,QAAQ,EAAE,8BAA8B;gBACxC,uBAAuB,EAAE,+CAA+C;gBACxE,iBAAiB,EACf,mGAAmG;gBACrG,gBAAgB,EACd,iJAAiJ;gBACnJ,gBAAgB,EAAE,CAAC;gBACnB,YAAY,EAAE,wBAAwB;aACvC;SACF;QACD,0BAA0B,EAAE;YAC1B,SAAS,EAAE,IAAI;YACf,OAAO,EACL,8FAA8F;YAChG,cAAc,EAAE;gBACd;oBACE,IAAI,EAAE,mBAAmB;oBACzB,SAAS,EACP,kHAAkH;oBACpH,WAAW,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;iBACrE;gBACD;oBACE,IAAI,EAAE,iBAAiB;oBACvB,SAAS,EACP,oHAAoH;oBACtH,WAAW,EAAE,CAAC,cAAc,EAAE,iBAAiB,CAAC;iBACjD;aACF;YACD,cAAc,EAAE,KAAK;YACrB,kBAAkB,EAAE;gBAClB,0BAA0B;gBAC1B,4BAA4B;gBAC5B,iBAAiB;gBACjB,oBAAoB;aACrB;YACD,mBAAmB,EAAE;gBACnB,0BAA0B;gBAC1B,0EAA0E;gBAC1E,kBAAkB;gBAClB,sCAAsC;aACvC;YACD,QAAQ,EAAE;gBACR,sHAAsH;gBACtH,sFAAsF;aACvF;YACD,kCAAkC,EAAE;gBAClC,EAAE,EAAE,8BAA8B;gBAClC,SAAS,EAAE,2CAA2C;gBACtD,MAAM,EAAE;oBACN,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,sDAAsD;oBAC/D,YAAY,EAAE,8BAA8B;oBAC5C,kBAAkB,EAAE,+BAA+B;oBACnD,OAAO,EAAE,qBAAqB;oBAC9B,SAAS,EAAE,IAAI;iBAChB;gBACD,oBAAoB,EAAE,IAAI;gBAC1B,WAAW,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;gBACpE,YAAY,EAAE,CAAC,sBAAsB,CAAC;gBACtC,IAAI,EAAE;oBACJ,MAAM,EAAE,kBAAkB;oBAC1B,mBAAmB,EAAE,CAAC,kBAAkB,CAAC;oBACzC,gBAAgB,EAAE,MAAM;oBACxB,QAAQ,EAAE,GAAG;iBACd;gBACD,QAAQ,EAAE;oBACR,UAAU,EAAE,CAAC,GAAG,CAAC;oBACjB,WAAW,EAAE,CAAC,GAAG,CAAC;oBAClB,eAAe,EAAE,CAAC,uBAAuB,CAAC;oBAC1C,QAAQ,EAAE,IAAI;oBACd,gBAAgB,EAAE,IAAI;iBACvB;gBACD,WAAW,EAAE;oBACX;wBACE,EAAE,EAAE,+BAA+B;wBACnC,YAAY,EAAE,CAAC,sBAAsB,CAAC;wBACtC,UAAU,EAAE,eAAe;wBAC3B,MAAM,EAAE,SAAS;qBAClB;iBACF;gBACD,WAAW,EAAE;oBACX,GAAG,EAAE,wDAAwD;oBAC7D,YAAY,EAAE,+BAA+B;oBAC7C,oBAAoB,EAAE,CAAC,kBAAkB,CAAC;iBAC3C;aACF;SACF;QACD,qBAAqB;QACrB,OAAO,EAAE;YACP,WAAW,EAAE,OAAO,CAAC,MAAM;YAC3B,SAAS,EAAE,OAAO,CAAC,MAAM,GAAG,qBAAqB,CAAC,MAAM;YACxD,WAAW,EAAE,qBAAqB,CAAC,MAAM;YACzC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM;YACrE,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,MAAM;YACrE,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC,MAAM;YAC3E,SAAS,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM;YACtF,UAAU,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM;YACrE,gBAAgB,EAAE,OAAO,CAAC,MAAM,CAC9B,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,MAAM,CAAC,UAAU,KAAK,YAAY,IAAI,KAAK,CAAC,MAAM,CAAC,UAAU,KAAK,cAAc,CACzF,CAAC,MAAM;YACR,qBAAqB,EAAE,qBAAqB,CAAC,MAAM;SACpD;QACD,SAAS;QACT,UAAU,EAAE,KAAK;QACjB,sBAAsB,EAAE,YAAY;QACpC,qBAAqB,EAAE,0BAA0B;YAC/C,CAAC,CAAC,EAAE,MAAM,EAAE,SAAkB,EAAE,MAAM,EAAE,0BAA0B,EAAE,UAAU,EAAE,EAAE,EAAE;YACpF,CAAC,CAAC,SAAS;gBACT,CAAC,CAAC;oBACE,MAAM,EAAE,qBAAqB,EAAE,UAAU,CAAC,MAAM;wBAC9C,CAAC,CAAE,SAAmB;wBACtB,CAAC,CAAE,OAAiB;oBACtB,MAAM,EAAE,qBAAqB,EAAE,MAAM,IAAI,aAAa;oBACtD,UAAU,EAAE,qBAAqB,EAAE,UAAU,IAAI,EAAE;iBACpD;gBACH,CAAC,CAAC,IAAI;KACX,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAAC,KAInD;IACC,IACE,KAAK,CAAC,OAAO,KAAK,sBAAsB;QACxC,KAAK,CAAC,OAAO,KAAK,8BAA8B;QAChD,KAAK,CAAC,OAAO,KAAK,4BAA4B,EAC9C,CAAC;QACD,MAAM,IAAI,QAAQ,CAAC,uCAAuC,KAAK,CAAC,OAAO,EAAE,EAAE;YACzE,IAAI,EAAE,yCAAyC;YAC/C,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE;gBACP,iBAAiB,EAAE;oBACjB,sBAAsB;oBACtB,8BAA8B;oBAC9B,4BAA4B;iBAC7B;aACF;SACF,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,mCAAmC,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,CAAC;IAC7D,MAAM,eAAe,GAAG,sBAAsB,CAAC,MAAM,CACnD,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,OAAO,KAAK,4BAA4B;QAC9C,KAAK,CAAC,IAAI,KAAK,UAAU;QACzB,CAAC,KAAK,CAAC,OAAO,KAAK,8BAA8B,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAClF,CAAC;IACF,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,GAAG,CAClC,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAClC,kBAAkB,CAAC,KAAK,EAAE,MAAM,mBAAmB,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CAC9E,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAC7D,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1E,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC/C,IACE,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,UAAU,CAAC,MAAM,EAAE,SAAS;gBAC1B,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EACnF,CAAC;YACD,MAAM,IAAI,QAAQ,CAChB,4DAA4D,UAAU,CAAC,EAAE,EAAE,EAC3E;gBACE,IAAI,EAAE,8BAA8B;gBACpC,QAAQ,EAAE,CAAC;aACZ,CACF,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,MAAM,GAAG,2BAA2B,CAAC;QACzC,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE;YACZ,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;YAC/E,GAAG,UAAU;SACd;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO;QACL,aAAa,EAAE,CAAU;QACzB,SAAS;QACT,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;YACzC,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,EAAE,UAAU;YACvF,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;SACtD,CAAC,CAAC;QACH,UAAU,EAAE,SAAkB;QAC9B,IAAI,EAAE;YACJ,yFAAyF;YACzF,oEAAoE;SACrE;KACF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAAC,KAMpD;IACC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,mCAAmC,CAAC,SAAS,CAAC,CAAC;IACrD,IACE,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,KAAK;QAC3B,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,KAAK,2CAA2C;QACxF,KAAK,CAAC,MAAM,CAAC,SAAS,KAAK,oCAAoC,EAC/D,CAAC;QACD,MAAM,IAAI,QAAQ,CAChB,wFAAwF,EACxF;YACE,IAAI,EAAE,+BAA+B;YACrC,QAAQ,EAAE,CAAC;SACZ,CACF,CAAC;IACJ,CAAC;IACD,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACtE,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,SAAS,CAAC,cAAc,EAAE,EAAE,CAAC;QAC5D,MAAM,IAAI,QAAQ,CAAC,6DAA6D,EAAE;YAChF,IAAI,EAAE,mCAAmC;YACzC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,kBAAkB,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAClE,IAAI,kBAAkB,KAAK,KAAK,CAAC,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC3D,MAAM,IAAI,QAAQ,CAAC,8DAA8D,EAAE;YACjF,IAAI,EAAE,mCAAmC;YACzC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE;gBACP,kBAAkB,EAAE,KAAK,CAAC,MAAM,CAAC,kBAAkB;gBACnD,kBAAkB;aACnB;SACF,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAa,CAAC;IAClB,IAAI,CAAC;QACH,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAAC,mCAAmC,EAAE;YACtD,IAAI,EAAE,gCAAgC;YACtC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,QAAQ,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAC/F,MAAM,IAAI,QAAQ,CAAC,sDAAsD,EAAE;YACzE,IAAI,EAAE,gCAAgC;YACtC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,WAAW,CAAC;IACnD,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtD,MAAM,IAAI,QAAQ,CAAC,iCAAiC,EAAE;YACpD,IAAI,EAAE,gCAAgC;YACtC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,UAAU,GAAG,2BAA2B,CAAC;QAC7C,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE;YACZ;gBACE,EAAE,EAAE,8BAA8B;gBAClC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC;gBACnC,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,oBAAoB,EAAE,IAAI;gBAC1B,WAAW,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;gBACpE,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3C,IAAI,EAAE;oBACJ,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,kBAAkB;oBAC1B,mBAAmB,EAAE,CAAC,kBAAkB,CAAC;oBACzC,aAAa,EAAE,EAAE,UAAU,EAAE,MAAM,EAAE;oBACrC,eAAe,EAAE,EAAE,GAAG,IAAI;oBAC1B,gBAAgB,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI;oBACjC,QAAQ,EAAE,GAAG;iBACd;gBACD,QAAQ,EAAE;oBACR,UAAU,EAAE,CAAC,GAAG,CAAC;oBACjB,WAAW,EAAE,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;oBAClD,eAAe,EAAE,CAAC,uBAAuB,CAAC;oBAC1C,QAAQ,EAAE,IAAI;oBACd,gBAAgB,EAAE,IAAI;iBACvB;gBACD,WAAW,EAAE;oBACX;wBACE,EAAE,EAAE,sBAAsB;wBAC1B,YAAY,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;wBAC3C,UAAU,EAAE,WAAW;wBACvB,MAAM,EAAE,EAAE;qBACX;iBACF;gBACD,WAAW,EAAE;oBACX,GAAG,EAAE,QAAQ,CAAC,QAAQ,EAAE;oBACxB,YAAY,EAAE,sBAAsB;oBACpC,oBAAoB,EAAE,CAAC,kBAAkB,CAAC;oBAC1C,MAAM,EAAE,MAAM;oBACd,IAAI,EAAE;wBACJ,KAAK,EAAE,sCAAsC;wBAC7C,IAAI,EAAE,CAAC;wBACP,IAAI,EAAE,CAAC;wBACP,OAAO,EAAE,IAAI;qBACd;iBACF;aACF;SACF;KACF,CAAC,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC;IACpB,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CACzC,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,MAAM,EAAE,SAAS,KAAK,KAAK,CAAC,MAAM,CAAC,SAAS,CAC7F,CAAC;IACF,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,IAAI,QAAQ,CAAC,8CAA8C,UAAU,CAAC,EAAE,EAAE,EAAE;YAChF,IAAI,EAAE,8BAA8B;YACpC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAG,2BAA2B,CAAC;QACzC,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE;YACZ,GAAG,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC;YAChF,UAAU;SACX;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO;QACL,aAAa,EAAE,CAAU;QACzB,SAAS;QACT,UAAU,EAAE;YACV,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;YACzC,UAAU,EAAE,kBAAkB;YAC9B,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;YACrD,eAAe,EAAE,UAAU,CAAC,QAAQ,EAAE,eAAe,IAAI,EAAE;SAC5D;QACD,UAAU,EAAE,SAAkB;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,KAG9C;IACC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,QAAQ,CAAC,uDAAuD,EAAE;YAC1E,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IACtE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC;QAC7C,MAAM,IAAI,QAAQ,CAAC,yEAAyE,EAAE;YAC5F,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC,CAAY,CAAC;IAC/E,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,QAAQ,CAAC,+DAA+D,EAAE;YAClF,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,2BAA2B,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC;SACvF,YAAY,CAAC,CAAC,CAAE,CAAC;IACpB,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,EAAE,CAAC;QACxF,MAAM,IAAI,QAAQ,CAAC,wEAAwE,EAAE;YAC3F,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,IAAI,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;QAC/E,MAAM,IAAI,QAAQ,CAAC,oEAAoE,EAAE;YACvF,IAAI,EAAE,oCAAoC;YAC1C,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,mCAAmC,CAAC,SAAS,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,MAAM,0BAA0B,CAAC,SAAS,CAAC,CAAC;IAC7D,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,QAAQ,CAAC,iCAAiC,QAAQ,CAAC,EAAE,EAAE,EAAE;YACjE,IAAI,EAAE,8BAA8B;YACpC,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IACD,MAAM,MAAM,GAAG,2BAA2B,CAAC;QACzC,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE,CAAC,GAAG,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC;KACnD,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,0BAA0B,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1D,OAAO;QACL,aAAa,EAAE,CAAU;QACzB,SAAS;QACT,QAAQ,EAAE;YACR,EAAE,EAAE,QAAQ,CAAC,EAAE;YACf,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;YACvC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;YAChC,mBAAmB,EAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;YACxD,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY;YAC1C,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,kBAAkB;YACtD,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;YAChC,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB;YACnD,eAAe,EAAE,QAAQ,CAAC,QAAQ,EAAE,eAAe,IAAI,EAAE;SAC1D;QACD,UAAU,EAAE,SAAkB;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAC9C,SAAiB,EACjB,UAII,EAAE;IAEN,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;IAChC,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,qBAAqB,GAEd,IAAI,CAAC;IAChB,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,IAAI,aAAa,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,IAAI,CAAC;QACH,qBAAqB,GAAG,MAAM,sCAAsC,CAClE,IAAI,EACJ,YAAY,CAAC,YAAY,CAC1B,CAAC;QACF,aAAa,GAAG,MAAM,2BAA2B,CAAC,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC,CAAC;IACrF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,eAAe,GAAG,oBAAoB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACjG,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,YAAY,CAC7B,cAAc,CAAC,IAAI,CAAC,CAAC,cAAc,EACnC,iBAAiB,CAClB,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACpB,MAAM,WAAW,GACf,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,YAAY,GAAG,EAAE,CAAC;IACxB,KAAK,MAAM,UAAU,IAAI,YAAY,CAAC,YAAY,EAAE,CAAC;QACnD,MAAM,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7E,MAAM,oBAAoB,GAAG,UAAU,CAAC,WAAW;aAChD,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;aAClC,MAAM,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;QAC9D,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,IAAI,4BAA4B,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxF,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,oBAAoB,CAAC,MAAM;YAAE,YAAY,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACzE,IAAI,eAAe;YAAE,YAAY,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QACzE,IAAI,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;YACnF,YAAY,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;QAC5C,CAAC;QACD,IACE,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;YAChE,CAAC,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,EAC9C,CAAC;YACD,YAAY,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;QAChD,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI;YACzB,CAAC,CAAC,YAAY,CAAC,MAAM;gBACnB,CAAC,CAAC;oBACE,MAAM,EAAE,SAAkB;oBAC1B,IAAI,EAAE,YAAY,CAAC,CAAC,CAAE;oBACtB,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;oBAC9E,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;oBACpF,UAAU,EAAE,IAAI;oBAChB,iBAAiB,EAAE,IAAI;oBACvB,MAAM,EAAE,6DAA6D;iBACtE;gBACH,CAAC,CAAC,UAAU,CAAC,WAAW;oBACtB,CAAC,CAAC,MAAM,eAAe,CACnB,UAAU,EACV,UAAU,CAAC,WAAW,EACtB,aAAa,EACb,OAAO,CAAC,OAAO,EACf,OAAO,CAAC,OAAO,CAChB;oBACH,CAAC,CAAC;wBACE,MAAM,EAAE,gBAAyB;wBACjC,IAAI,EAAE,gBAAgB;wBACtB,IAAI,EAAE,IAAI;wBACV,YAAY,EAAE,IAAI;wBAClB,UAAU,EAAE,IAAI;wBAChB,iBAAiB,EAAE,IAAI;wBACvB,MAAM,EAAE,kDAAkD;qBAC3D;YACP,CAAC,CAAC;gBACE,MAAM,EAAE,SAAkB;gBAC1B,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI;gBAC9E,YAAY,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;gBACpF,UAAU,EAAE,IAAI;gBAChB,iBAAiB,EAAE,IAAI;gBACvB,MAAM,EAAE,yDAAyD;aAClE,CAAC;QACN,YAAY,CAAC,IAAI,CAAC;YAChB,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,SAAS,EAAE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC;YACzC,SAAS,EAAE,UAAU,CAAC,MAAM,EAAE,SAAS,IAAI,IAAI;YAC/C,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,IAAI,IAAI,IAAI;YAC3C,cAAc,EAAE,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC;YAC7D,SAAS,EAAE,OAAO,CAAC,UAAU,CAAC;YAC9B,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU;YACjE,oBAAoB,EAAE,UAAU,CAAC,oBAAoB;YACrD,eAAe,EAAE,UAAU,CAAC,QAAQ,EAAE,eAAe,IAAI,EAAE;YAC3D,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;YACxE,oBAAoB;YACpB,YAAY,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;YACvD,YAAY;YACZ,MAAM;SACP,CAAC,CAAC;IACL,CAAC;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QACnD,MAAM,IAAI,GAAG,UAAU,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtF,IACE,OAAO,CAAC,IAAI;YACZ,UAAU,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM;YACnC,UAAU,CAAC,MAAM,CAAC,MAAM,KAAK,gBAAgB,EAC7C,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;QACrC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IACH,IAAI,eAAe;QAAE,QAAQ,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;IAC7D,OAAO;QACL,aAAa,EAAE,CAAU;QACzB,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,MAAgB,CAAC,CAAC,CAAE,QAAkB;QAC5D,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAE,SAAmB,CAAC,CAAC,CAAE,OAAiB;QACnE,sBAAsB,EAAE,YAAY;QACpC,qBAAqB,EAAE,eAAe;YACpC,CAAC,CAAC,EAAE,MAAM,EAAE,SAAkB,EAAE,MAAM,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,EAAE;YACzE,CAAC,CAAC;gBACE,MAAM,EAAE,qBAAqB,EAAE,UAAU,CAAC,MAAM;oBAC9C,CAAC,CAAE,SAAmB;oBACtB,CAAC,CAAE,OAAiB;gBACtB,MAAM,EAAE,qBAAqB,EAAE,MAAM,IAAI,aAAa;gBACtD,UAAU,EAAE,qBAAqB,EAAE,UAAU,IAAI,EAAE;aACpD;QACL,YAAY;QACZ,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,YAAoC;IAC9E,OAAO,YAAY,CAAC,YAAY,CAAC,IAAI,CACnC,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC;QACnD,UAAU,CAAC,QAAQ,EAAE,eAAe,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAChE,0BAA0B,CAAC,UAAU,CAAC,MAAM,CAAC,CAChD,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,YAAoC;IACjF,OAAO,YAAY,CAAC,YAAY;SAC7B,MAAM,CACL,CAAC,UAAU,EAAE,EAAE,CACb,UAAU,CAAC,oBAAoB,IAAI,UAAU,CAAC,WAAW,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CACzF;SACA,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC;SAClC,IAAI,EAAE,CAAC;AACZ,CAAC;AAED,SAAS,kBAAkB,CACzB,KAAgC,EAChC,SAAiB;IAEjB,OAAO,2BAA2B,CAAC;QACjC,aAAa,EAAE,CAAC;QAChB,YAAY,EAAE;YACZ;gBACE,EAAE,EAAE,KAAK,CAAC,YAAY;gBACtB,SAAS;gBACT,MAAM,EAAE;oBACN,IAAI,EAAE,KAAK;oBACX,OAAO,EAAE,YAAY,CAAC,OAAO;oBAC7B,YAAY,EAAE,YAAY,CAAC,YAAY;oBACvC,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;oBAC5C,OAAO,EAAE,YAAY,CAAC,OAAO;oBAC7B,SAAS,EAAE,KAAK,CAAC,EAAE;iBACpB;gBACD,oBAAoB,EAAE,KAAK,CAAC,oBAAoB;gBAChD,WAAW,EAAE,CAAC,cAAc,EAAE,iBAAiB,EAAE,kBAAkB,CAAC;gBACpE,YAAY,EAAE,CAAC,sBAAsB,CAAC;gBACtC,IAAI,EAAE;oBACJ,MAAM,EAAE,kBAAkB;oBAC1B,mBAAmB,EAAE,CAAC,kBAAkB,CAAC;oBACzC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;oBACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ;iBACzB;gBACD,QAAQ,EAAE;oBACR,UAAU,EAAE,CAAC,GAAG,CAAC;oBACjB,WAAW,EAAE,CAAC,GAAG,CAAC;oBAClB,eAAe,EAAE,CAAC,iBAAiB,CAAC;oBACpC,QAAQ,EAAE,KAAK,CAAC,QAAQ;oBACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;iBACzC;gBACD,WAAW,EAAE;oBACX;wBACE,EAAE,EAAE,sBAAsB;wBAC1B,YAAY,EAAE,CAAC,sBAAsB,CAAC;wBACtC,UAAU,EAAE,sBAAsB;wBAClC,MAAM,EAAE,EAAE;qBACX;iBACF;gBACD,WAAW,EAAE;oBACX,GAAG,EAAE,KAAK,CAAC,SAAS;oBACpB,YAAY,EAAE,sBAAsB;oBACpC,oBAAoB,EAAE,CAAC,kBAAkB,CAAC;iBAC3C;aACF;SACF;KACF,CAAC,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC;AACtB,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,KAA0E,EAC1E,KAAe;IAOf,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;QACzC,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;YAAE,SAAS;QACxC,IAAI,CAAC;YACH,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACrE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,KAAK,KAAK,CAAC,kBAAkB,CAAC,CAAC;IAClG,MAAM,MAAM,GACV,UAAU,CAAC,MAAM,GAAG,CAAC;QACnB,CAAC,CAAC,WAAW;QACb,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAClB,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,UAAU,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM;gBAClC,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,SAAS,CAAC;IACpB,OAAO;QACL,MAAM;QACN,KAAK,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC;QACpD,kBAAkB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC;QACvE,MAAM;KACP,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,KAAgC,EAChC,KAAe,EACf,eAAuB;IAEvB,MAAM,YAAY,GAAG,MAAM,0BAA0B,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,MAAM,CAC1C,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,kBAAkB,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,kBAAkB,CACtF,CAAC;IACF,IAAI,YAAY,CAAC,MAAM,KAAK,WAAW,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,QAAQ,CAChB,sFAAsF,KAAK,CAAC,SAAS,EAAE,EACvG;YACE,IAAI,EAAE,mCAAmC;YACzC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE;gBACP,SAAS,EAAE,KAAK,CAAC,EAAE;gBACnB,MAAM,EAAE,YAAY,CAAC,MAAM;gBAC3B,kBAAkB,EAAE,KAAK,CAAC,kBAAkB;gBAC5C,WAAW,EAAE,iBAAiB,CAAC,KAAK,EAAE,eAAe,CAAC;gBACtD,WAAW,EACT,YAAY,CAAC,MAAM,KAAK,WAAW;oBACjC,CAAC,CAAC,wDAAwD;oBAC1D,CAAC,CAAC,wFAAwF;aAC/F;SACF,CACF,CAAC;IACJ,CAAC;IACD,OAAO,UAAU,CAAC,CAAC,CAAE,CAAC;AACxB,CAAC;AAED,SAAS,UAAU,CAAC,YAAoB,EAAE,YAA2B;IACnE,IAAI,YAAY,EAAE,CAAC;QACjB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,QAAQ,CAAC,uCAAuC,EAAE;gBAC1D,IAAI,EAAE,sCAAsC;gBAC5C,QAAQ,EAAE,CAAC;aACZ,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO;QACL,GAAG,IAAI,GAAG,CAAC;YACT,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC;YAChD,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC;SACrC,CAAC;KACH,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB,CAC1B,MAAe,EACf,eAAuB,EACvB,UAA6B;IAE7B,MAAM,MAAM,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACpC,OAAO;QACL,oBAAoB,2BAA2B,MAAM;QACrD,UAAU,CAAC,eAAe,CAAC;QAC3B,WAAW,MAAM,EAAE;QACnB,4BAA4B;QAC5B,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;KACzB;SACE,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAe,EACf,YAAoB,EACpB,aAAgC,sBAAsB,CAAC,MAAM,CAC3D,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CACrC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC;IAEjC,MAAM,gBAAgB,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IAC/C,MAAM,iBAAiB,GAAG,MAAM;QAC9B,CAAC,CAAC,IAAI,CACF,OAAO,EAAE,EACT,QAAQ,EACR,aAAa,EACb,iBAAiB,EACjB,uBAAuB,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAChE;QACH,CAAC,CAAC,IAAI,CACF,gBAAgB,EAChB,2BAA2B,EAC3B,SAAS,EACT,uBAAuB,YAAY,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAChE,CAAC;IACN,OAAO;QACL,KAAK,EAAE,OAAO;QACd,gBAAgB;QAChB,iBAAiB;QACjB,YAAY,EAAE,0CAA0C;QACxD,kBAAkB,EAAE,KAAK;QACzB,QAAQ,EAAE;YACR,MAAM,UAAU,CAAC,gBAAgB,CAAC,EAAE;YACpC,oBAAoB,UAAU,CAAC,iBAAiB,CAAC,EAAE;YACnD,UAAU,UAAU,CAAC,iBAAiB,CAAC,sBAAsB,UAAU,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE;YAC/F,UAAU,UAAU,CAAC,iBAAiB,CAAC,2BAA2B,YAAY,CAAC,YAAY,EAAE;YAC7F,UAAU,UAAU,CAAC,iBAAiB,CAAC,+BAA+B;YACtE,kBAAkB,UAAU,CAAC,iBAAiB,CAAC,uBAAuB,UAAU,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE;YAC7G,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,EAAE,UAAU,CAAC;SAC3D;QACD,YAAY,EAAE;YACZ,UAAU,EAAE,YAAY,CAAC,UAAU;YACnC,YAAY,EAAE,YAAY,CAAC,YAAY;YACvC,aAAa,EAAE,CAAC,GAAG,sBAAsB,EAAE,GAAG,yBAAyB,CAAC;iBACrE,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;iBACvD,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACf,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,MAAM,EAAE,KAAK,CAAC,kBAAkB;aACjC,CAAC,CAAC;SACN;KACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAa;IAC/B,OAAO,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC;AAC/C,CAAC;AAED,KAAK,UAAU,0BAA0B,CACvC,IAAY,EACZ,YAAoC,EACpC,IAAqD;IAErD,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,eAAe,CAAC,KAAK,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC;IAClE,MAAM,eAAe,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,mCAAmC,CAAC,IAAY;IAC7D,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACpD,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACvC,MAAM,IAAI,QAAQ,CAChB,8FAA8F,EAC9F;YACE,IAAI,EAAE,2BAA2B;YACjC,QAAQ,EAAE,CAAC;YACX,OAAO,EAAE;gBACP,YAAY;gBACZ,WAAW,EACT,oHAAoH;aACvH;SACF,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,UAAiC,EACjC,WAA6C,EAC7C,aAAkC,EAClC,UAAwB,KAAK,EAC7B,UAAsD,KAAK;IAE3D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;IAClE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,IAAI,kBAAkB,CAAC,CAAC;IACrE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACjF,IAAI,IAAI;QAAE,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;IAC1D,IAAI,eAAe,GAAoB,IAAI,CAAC;IAC5C,IAAI,WAAW,CAAC,YAAY,EAAE,CAAC;QAC7B,MAAM,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAC5C,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,WAAW,CAAC,YAAY,CACzD,CAAC;QACF,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;QAC1D,IAAI,CAAC,UAAU,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;QACrF,eAAe,GAAG,UAAU,CAAC,YAAY,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,MAAM,GAAG,KAAK,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,OAAO,GAAG,OAAO,CAAC;IACtB,IAAI,CAAC;QACH,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,OAAO,aAAa,IAAI,CAAC,EAAE,CAAC;YAC1B,IACE,OAAO,CAAC,QAAQ,KAAK,QAAQ;gBAC7B,OAAO,CAAC,QAAQ;gBAChB,OAAO,CAAC,QAAQ;gBAChB,CAAC,UAAU,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAC7D,CAAC;gBACD,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;YAC9E,CAAC;YACD,IAAI,eAAe,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;gBAC7E,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;YAC9E,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE;gBACtC,MAAM,EAAE,WAAW,CAAC,MAAM;gBAC1B,OAAO;gBACP,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;gBAClC,QAAQ,EAAE,QAAQ;gBAClB,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;aACpC,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACxD,IAAI,WAAW,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;oBAClC,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;oBAC9B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBACpE,CAAC;gBACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAClD,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;gBAC9B,IAAI,CAAC,QAAQ,IAAI,aAAa,KAAK,CAAC,EAAE,CAAC;oBACrC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBACzD,CAAC;gBACD,OAAO,GAAG,IAAI,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACrC,aAAa,IAAI,CAAC,CAAC;gBACnB,SAAS;YACX,CAAC;YACD,MAAM,WAAW,GACf,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;YACrF,MAAM,iBAAiB,GAAG,eAAe,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC;YAC/E,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAC9B,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,gBAAgB,KAAK,CAAC,EAAE,CAAC;gBACtD,gBAAgB,IAAI,CAAC,CAAC;gBACtB,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;gBAC1D,SAAS;YACX,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,OAAO;oBACL,MAAM,EAAE,MAAe;oBACvB,IAAI,EACF,QAAQ,CAAC,MAAM,KAAK,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG;wBAChD,CAAC,CAAC,uBAAuB;wBACzB,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG;4BACvB,CAAC,CAAC,cAAc;4BAChB,CAAC,CAAC,QAAQ,CAAC,MAAM,IAAI,GAAG;gCACtB,CAAC,CAAC,sBAAsB;gCACxB,CAAC,CAAC,kBAAkB;oBAC5B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBAC5C,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAC3B,iBAAiB;oBACjB,MAAM,EAAE,0BAA0B,QAAQ,CAAC,MAAM,GAAG;iBACrD,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,oBAAoB,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAC5D,OAAO;oBACL,MAAM,EAAE,MAAe;oBACvB,IAAI,EAAE,uBAAuB;oBAC7B,IAAI,EAAE,OAAO,CAAC,IAAI;oBAClB,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;oBAC5C,UAAU,EAAE,QAAQ,CAAC,MAAM;oBAC3B,iBAAiB;oBACjB,MAAM,EAAE,8CAA8C,WAAW,IAAI,SAAS,GAAG;iBAClF,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,MAAM,EAAE,MAAe;gBACvB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC5C,UAAU,EAAE,QAAQ,CAAC,MAAM;gBAC3B,iBAAiB;gBACjB,MAAM,EAAE,uDAAuD;aAChE,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;IACzD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,KAAK,KAAK,CAAC;QACX,OAAO;YACL,MAAM,EAAE,MAAe;YACvB,IAAI,EAAE,kBAAkB;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,UAAU,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YAC5C,UAAU,EAAE,IAAI;YAChB,iBAAiB,EAAE,IAAI;YACvB,MAAM,EAAE,0EAA0E;SACnF,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,4BAA4B,CACnC,YAAmE,EACnE,YAAoB;IAEpB,IAAI,CAAC,YAAY;QAAE,OAAO,CAAC,qCAAqC,CAAC,CAAC;IAClE,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU;QAAE,OAAO,EAAE,CAAC;IAClD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC;IAC3F,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,SAAS,0BAA0B,CACjC,MAAuC;IAEvC,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC1B,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC3E,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACxC,MAAM,cAAc,GAAG,OAAO,CAAC,QAAQ;aACpC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;aACnB,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;aACtB,WAAW,EAAE,CAAC;QACjB,IACE,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,KAAK,YAAY;YAC/C,cAAc,KAAK,qBAAqB,EACxC,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2DAA2D;IAC7D,CAAC;IACD,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC;AACpE,CAAC;AAED,SAAS,eAAe,CAAC,KAAoB;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"external-skills.js","sourceRoot":"","sources":["../../../src/research/workspace/external-skills.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
- import type { AgentRoute, ProjectEvidenceRequirements, VerifiedProjectInputPlan, WorkspaceConfig } from "./types.js";
1
+ import type { AgentPackageStage, AgentRoute, ProjectEvidenceRequirements, VerifiedProjectInputPlan, WorkspaceConfig } from "./types.js";
2
2
  export declare const RESEARCH_AGENT_PROTOCOL_OVERHEAD_TOKENS: Record<AgentRoute["agent"], number>;
3
3
  export declare const RESEARCH_ESTIMATED_BYTES_PER_TOKEN = 3;
4
4
  export declare const RESEARCH_MAX_REPAIR_SOURCE_BYTES = 32000;
5
- export declare const RESEARCH_STRUCTURED_OUTPUT_MAX_TURNS = 2;
5
+ export declare const RESEARCH_CODEX_STRUCTURED_OUTPUT_MAX_TURNS = 2;
6
+ export declare const RESEARCH_CLAUDE_STRUCTURED_OUTPUT_MAX_TURNS = 3;
6
7
  export declare const RESEARCH_BROKER_MAX_TURNS = 6;
7
8
  export declare const RESEARCH_REPAIR_MAX_TURNS = 1;
8
9
  export declare function evaluateProjectPreflight(root: string, question: string, requirements: ProjectEvidenceRequirements | null, inputPlan: VerifiedProjectInputPlan | null): Promise<{
@@ -14,6 +15,7 @@ export declare function evaluateProjectPreflight(root: string, question: string,
14
15
  capabilities: {
15
16
  id: string;
16
17
  allowedHosts: string[];
18
+ endpoint: string | null;
17
19
  accept: string | null;
18
20
  maxResponseBytes: number | null;
19
21
  maxItems: number | null;
@@ -61,13 +63,22 @@ export declare function evaluateProjectPreflight(root: string, question: string,
61
63
  maxTokens: number;
62
64
  maxCostUsd: number;
63
65
  maxWallSeconds: number;
66
+ packageMaxTokens: Record<AgentPackageStage, number>;
64
67
  confirmationCostUsd: number;
65
68
  confirmationRequired: boolean;
66
69
  estimatedMaxCostUsd: number | null;
67
70
  maxBrokerContextTokens: number;
71
+ maxBrokerCalls: number;
72
+ maxOutputTokens: number;
73
+ maxRepairTokens: number;
68
74
  estimatedInputContextTokens: number;
69
75
  maxInputContextTokens: number;
70
76
  embeddedStageContextReservation: number;
77
+ stageContextTokenReservations: {
78
+ analyze: number;
79
+ synthesize: number;
80
+ review: number;
81
+ };
71
82
  recommendedDiscoverOutputTokens: number | null;
72
83
  outputTokenLimitEnforcement: {
73
84
  producer: string;
@@ -107,4 +118,25 @@ export declare function evaluateProjectPreflight(root: string, question: string,
107
118
  };
108
119
  readyToInitialize: boolean;
109
120
  }>;
121
+ export declare function researchStructuredOutputMaxTurns(route: Pick<AgentRoute, "agent">): number;
122
+ export declare function calculateAgentCallTokenReservation(input: {
123
+ route: Pick<AgentRoute, "agent">;
124
+ primaryPayloadTokens: number;
125
+ repairPayloadTokens: number;
126
+ maxTurns: number;
127
+ maxOutputTokens: number;
128
+ maxToolContextTokens: number;
129
+ maxRepairTokens: number;
130
+ reserveRepair: boolean;
131
+ alreadyUsedTokens?: number;
132
+ }): {
133
+ alreadyUsedTokens: number;
134
+ maxTurns: number;
135
+ estimatedCallInputTokensPerTurn: number;
136
+ estimatedCallInputTokens: number;
137
+ outputTokens: number;
138
+ potentialToolContextTokens: number;
139
+ potentialRepairTokens: number;
140
+ totalTokens: number;
141
+ };
110
142
  export declare function reservedAgentPackageCost(route: AgentRoute, tokens: number, config: Pick<WorkspaceConfig, "budget">): number;