@mnemonik/cli 7.104.9 → 7.104.11

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 (70) hide show
  1. package/dist/digests.json +68 -68
  2. package/dist/humanReason.d.ts +2 -0
  3. package/dist/humanReason.d.ts.map +1 -1
  4. package/dist/humanReason.js +18 -3
  5. package/dist/humanReason.js.map +1 -1
  6. package/dist/install/journal.d.ts +1 -1
  7. package/dist/install/journal.d.ts.map +1 -1
  8. package/dist/install/journal.js +2 -0
  9. package/dist/install/journal.js.map +1 -1
  10. package/dist/install/journey.d.ts.map +1 -1
  11. package/dist/install/journey.js +50 -20
  12. package/dist/install/journey.js.map +1 -1
  13. package/dist/install/transaction.d.ts.map +1 -1
  14. package/dist/install/transaction.js +6 -11
  15. package/dist/install/transaction.js.map +1 -1
  16. package/dist/output.d.ts.map +1 -1
  17. package/dist/output.js +1 -1
  18. package/dist/output.js.map +1 -1
  19. package/dist/preflight.js +2 -3
  20. package/dist/project/eligibility.d.ts +0 -1
  21. package/dist/project/eligibility.d.ts.map +1 -1
  22. package/dist/project/eligibility.js +9 -6
  23. package/dist/project/eligibility.js.map +1 -1
  24. package/dist/project.d.ts +4 -1
  25. package/dist/project.d.ts.map +1 -1
  26. package/dist/project.js +109 -58
  27. package/dist/project.js.map +1 -1
  28. package/dist/router.d.ts.map +1 -1
  29. package/dist/router.js +121 -33
  30. package/dist/router.js.map +1 -1
  31. package/dist/runtime/signers.js +6 -3
  32. package/dist/runtime/store.d.ts +2 -1
  33. package/dist/runtime/store.d.ts.map +1 -1
  34. package/dist/runtime/store.js +9 -1
  35. package/dist/runtime/store.js.map +1 -1
  36. package/dist/sbom.json +21 -21
  37. package/dist/scanner/control.d.ts +3 -0
  38. package/dist/scanner/control.d.ts.map +1 -1
  39. package/dist/scanner/control.js.map +1 -1
  40. package/dist/scanner/discover.d.ts +2 -1
  41. package/dist/scanner/discover.d.ts.map +1 -1
  42. package/dist/scanner/discover.js +8 -12
  43. package/dist/scanner/discover.js.map +1 -1
  44. package/dist/scanner/enable.d.ts +1 -1
  45. package/dist/scanner/enable.d.ts.map +1 -1
  46. package/dist/scanner/enable.js +153 -44
  47. package/dist/scanner/enable.js.map +1 -1
  48. package/dist/scanner/picker.d.ts +1 -2
  49. package/dist/scanner/picker.d.ts.map +1 -1
  50. package/dist/scanner/picker.js +11 -34
  51. package/dist/scanner/picker.js.map +1 -1
  52. package/dist/scanner/service.d.ts +21 -3
  53. package/dist/scanner/service.d.ts.map +1 -1
  54. package/dist/scanner/service.js +2353 -118
  55. package/dist/scanner/service.js.map +1 -1
  56. package/dist/scanner/update.d.ts.map +1 -1
  57. package/dist/scanner/update.js +55 -128
  58. package/dist/scanner/update.js.map +1 -1
  59. package/dist/scanner-release.json +29 -29
  60. package/dist/screens/journey.d.ts +4 -0
  61. package/dist/screens/journey.d.ts.map +1 -1
  62. package/dist/screens/journey.js +10 -4
  63. package/dist/screens/journey.js.map +1 -1
  64. package/dist/status.d.ts +2 -0
  65. package/dist/status.d.ts.map +1 -1
  66. package/dist/status.js +78 -6
  67. package/dist/status.js.map +1 -1
  68. package/dist/vendor/local-setup.js +21 -25
  69. package/dist/vendor/shared/runtimeReader.js +4 -0
  70. package/package.json +31 -31
package/dist/project.js CHANGED
@@ -946,9 +946,8 @@ function withBase(repository, root, nested) {
946
946
  return { root, repository, nested };
947
947
  }
948
948
  async function resolveProjectIdentity(cwd, options = {}) {
949
- const repository = await resolveRepositoryRoot(cwd);
950
- if (repository.kind === "git_unavailable")
951
- return repository;
949
+ const resolved = await resolveRepositoryRoot(cwd);
950
+ const repository = resolved.kind === "git_unavailable" ? { kind: "plain", root: resolve2(cwd) } : resolved;
952
951
  if (repository.kind === "plain") {
953
952
  const { root, result } = options.selectedRoot ? { root: repository.root, result: await readIdentityFile(repository.root, options) } : await readPlainIdentity(repository.root);
954
953
  const base2 = withBase(repository, root, []);
@@ -2632,7 +2631,7 @@ var require_proper_lockfile = __commonJS({
2632
2631
  });
2633
2632
 
2634
2633
  // packages/cli/src/project.ts
2635
- import { humanReason, humanProjectAction } from "./humanReason.js";
2634
+ import { humanReason, projectActionSentence } from "./humanReason.js";
2636
2635
  import { createCliCredentials } from "./auth/credentials.js";
2637
2636
  import { createInterface } from "node:readline";
2638
2637
  import { execFile as execFile3 } from "node:child_process";
@@ -7022,12 +7021,6 @@ var step = (beforeHash) => ({
7022
7021
  beforeHash,
7023
7022
  afterHash: null
7024
7023
  });
7025
- var nonGitSelectionRequired = () => ({
7026
- status: "ACTION_REQUIRED",
7027
- state: "non_git_selection_required",
7028
- allowedActions: ["select_non_git", "cancel"],
7029
- manualAction: "mnemonik project init <path>"
7030
- });
7031
7024
  var recordedCandidate = (remote, root, state) => ({
7032
7025
  status: "project_setup_required",
7033
7026
  state,
@@ -7046,17 +7039,6 @@ function createProjectSetupExecutor(deps) {
7046
7039
  return actionRequired(resolution.kind);
7047
7040
  const root = await realpath(resolution.root);
7048
7041
  const path = recordPath(root, deps.stateDir);
7049
- if (resolution.repository.kind === "plain" && !options.nonGitSelected) {
7050
- const prior = await readBytes(path);
7051
- if (!prior)
7052
- return nonGitSelectionRequired();
7053
- try {
7054
- if (JSON.parse(prior.toString()).nonGitSelected !== true)
7055
- return nonGitSelectionRequired();
7056
- } catch {
7057
- return actionRequired("record_invalid");
7058
- }
7059
- }
7060
7042
  return withLock(path, deps.waitMs ?? 6e4, async (assertOwned) => {
7061
7043
  const fresh = await deps.resolver.resolveProjectIdentity(options.cwd, options);
7062
7044
  if (fresh.kind !== "ok" && fresh.kind !== "absent")
@@ -7074,7 +7056,6 @@ function createProjectSetupExecutor(deps) {
7074
7056
  root,
7075
7057
  scopeKey: hash2(deps.scopeKey),
7076
7058
  owner: options.owner,
7077
- ...resolution.kind !== "git_unavailable" && resolution.repository.kind === "plain" && options.nonGitSelected ? { nonGitSelected: true } : {},
7078
7059
  ...options.intent ? { intent: options.intent } : {},
7079
7060
  before: {
7080
7061
  base64: bytes && bytes.length <= MAX_ORIGINAL_BYTES ? bytes.toString("base64") : null,
@@ -7090,7 +7071,7 @@ function createProjectSetupExecutor(deps) {
7090
7071
  } catch {
7091
7072
  return actionRequired("record_invalid");
7092
7073
  }
7093
- if (!record || record.schemaVersion !== 1 || record.root !== root || !record.operationId || !record.before || record.before.base64 !== null && typeof record.before.base64 !== "string" || record.staged && typeof record.staged.content !== "string" || !record.steps?.identity || !record.steps?.remote || !record.steps?.rollback || record.ignored !== void 0 && (!record.ignored || typeof record.ignored !== "object" || record.ignored.identityHash !== null && typeof record.ignored.identityHash !== "string" || typeof record.ignored.responseHash !== "string") || record.nonGitSelected !== void 0 && record.nonGitSelected !== true || record.intent !== void 0 && (record.intent.action !== "link" || typeof record.intent.projectId !== "string" || record.intent.replace !== void 0 && record.intent.replace !== true))
7074
+ if (!record || record.schemaVersion !== 1 || record.root !== root || !record.operationId || !record.before || record.before.base64 !== null && typeof record.before.base64 !== "string" || record.staged && typeof record.staged.content !== "string" || !record.steps?.identity || !record.steps?.remote || !record.steps?.rollback || record.ignored !== void 0 && (!record.ignored || typeof record.ignored !== "object" || record.ignored.identityHash !== null && typeof record.ignored.identityHash !== "string" || typeof record.ignored.responseHash !== "string") || record.intent !== void 0 && (record.intent.action !== "link" || typeof record.intent.projectId !== "string" || record.intent.replace !== void 0 && record.intent.replace !== true))
7094
7075
  return actionRequired("record_invalid");
7095
7076
  if (record.before.base64 !== null && record.before.hash !== hash2(Buffer.from(record.before.base64, "base64")) || record.before.base64 !== null && Buffer.from(record.before.base64, "base64").length > MAX_ORIGINAL_BYTES || record.staged && hash2(record.staged.content) !== record.staged.hash || record.remote && hash2(JSON.stringify(record.remote)) !== record.steps.remote.afterHash)
7096
7077
  return actionRequired("record_invalid");
@@ -7098,7 +7079,8 @@ function createProjectSetupExecutor(deps) {
7098
7079
  record = freshRecord();
7099
7080
  recordIsNew = true;
7100
7081
  }
7101
- if (record.scopeKey !== hash2(deps.scopeKey) || options.owner !== void 0 && JSON.stringify(record.owner) !== JSON.stringify(options.owner) || JSON.stringify(record.intent) !== JSON.stringify(options.intent)) {
7082
+ const settled = record.steps.identity.complete && !record.steps.rollback.started && resolution.kind === "ok" && resolution.identity.projectId === record.remote?.projectId && (!options.intent || options.intent.projectId === record.remote?.projectId);
7083
+ if (record.scopeKey !== hash2(deps.scopeKey) || options.owner !== void 0 && JSON.stringify(record.owner) !== JSON.stringify(options.owner) || !settled && JSON.stringify(record.intent) !== JSON.stringify(options.intent)) {
7102
7084
  const replaceable = !record.remote && !record.staged && !record.steps.remote.started && !record.steps.identity.started && !record.steps.rollback.started && diskHash === record.before.hash;
7103
7085
  if (replaceable) {
7104
7086
  record = freshRecord();
@@ -7116,9 +7098,6 @@ function createProjectSetupExecutor(deps) {
7116
7098
  return actionRequired("record_missing");
7117
7099
  record = freshRecord();
7118
7100
  }
7119
- if (resolution.repository.kind === "plain" && record.nonGitSelected !== true) {
7120
- return nonGitSelectionRequired();
7121
- }
7122
7101
  if (options.intent && resolution.kind === "ok" && resolution.identity.projectId !== options.intent.projectId && !options.intent.replace)
7123
7102
  return {
7124
7103
  status: "ACTION_REQUIRED",
@@ -7221,9 +7200,10 @@ function createProjectSetupExecutor(deps) {
7221
7200
  record.evidence = evidence;
7222
7201
  await save();
7223
7202
  const identity = resolution.kind === "ok" ? resolution.identity : null;
7203
+ const linkProjectId = options.intent?.projectId ?? identity?.projectId;
7224
7204
  const issued = await deps.transport.issueSetupRequest({
7225
7205
  ...evidence,
7226
- ...options.intent ? { projectId: options.intent.projectId } : identity ? { projectId: identity.projectId } : {}
7206
+ ...linkProjectId ? { projectId: linkProjectId } : {}
7227
7207
  });
7228
7208
  if (issued.status !== "complete") {
7229
7209
  const handled = await handleAccessResponse(issued);
@@ -7235,12 +7215,12 @@ function createProjectSetupExecutor(deps) {
7235
7215
  let outcome = "linked";
7236
7216
  if (issued.status === "complete")
7237
7217
  remote2 = issued;
7238
- else if (options.intent && issued.state === "confirmation_required" && issued.requestId && issued.allowedActions.includes("link")) {
7218
+ else if (linkProjectId && issued.state === "confirmation_required" && issued.requestId && issued.allowedActions.includes("link")) {
7239
7219
  remote2 = await deps.transport.consumeSetupRequest({
7240
7220
  ...evidence,
7241
7221
  requestId: issued.requestId,
7242
7222
  action: "link",
7243
- projectId: options.intent.projectId
7223
+ projectId: linkProjectId
7244
7224
  });
7245
7225
  if (remote2.status === "ACTION_REQUIRED")
7246
7226
  return remote2;
@@ -7325,13 +7305,81 @@ import {
7325
7305
  saveCommandRecord
7326
7306
  } from "./project/records.js";
7327
7307
  async function ensureProjectRoot(root, executor) {
7328
- const resolution = await executor.resolveProjectIdentity(root);
7329
- return executor.ensureProject({
7330
- cwd: root,
7331
- allowCreate: true,
7332
- allowNestedInherit: false,
7333
- ...resolution.kind !== "git_unavailable" && resolution.repository.kind === "plain" ? { nonGitSelected: true } : {}
7334
- });
7308
+ return executor.ensureProject({ cwd: root, allowCreate: true, allowNestedInherit: false });
7309
+ }
7310
+ var refusalReasons = {
7311
+ filesystem_root: "Mnemonik does not index a whole disk.",
7312
+ home_directory: "Mnemonik does not index your whole home folder.",
7313
+ temporary_directory: "Mnemonik does not index the temporary folder.",
7314
+ mnemonik_state_directory: "That folder holds Mnemonik settings.",
7315
+ user_data_directory: "That folder holds program settings.",
7316
+ host_config_directory: "That folder holds editor settings.",
7317
+ broad_workspace_parent: "It holds several projects, and Mnemonik would index all of them.",
7318
+ not_found: "Its project file names a project this account cannot open.",
7319
+ project_access_denied: "Its project file names a project this account cannot open.",
7320
+ archived: "Its project is archived.",
7321
+ blocked: "Its project belongs to an account that is on hold.",
7322
+ deleted: "Its project was deleted.",
7323
+ fingerprint_mismatch: "Its Git remote does not match the repository this project was set up with.",
7324
+ confirmation_required: "Mnemonik has not seen this folder on this machine before.",
7325
+ nested: "It sits inside another project.",
7326
+ conflict: "It holds project files that disagree.",
7327
+ invalid_identity: "Its project file cannot be read.",
7328
+ malformed: "Its project file cannot be read.",
7329
+ unknown_version: "Its project file was written by a newer version of Mnemonik.",
7330
+ identity_too_large: "Its project file is too large to keep a copy of.",
7331
+ identity_changed: "Its project file changed while Mnemonik was working.",
7332
+ operation_context_changed: "Another Mnemonik command is part-way through connecting it.",
7333
+ rollback_in_progress: "An undo of an earlier setup is still running for that folder.",
7334
+ operation_rolled_back: "An earlier setup of that folder was undone.",
7335
+ record_invalid: "Mnemonik cannot read its own notes about that folder.",
7336
+ record_missing: "Mnemonik has no notes about that folder to finish.",
7337
+ not_staged: "Nothing was prepared for that folder yet.",
7338
+ invalid_server_result: "Mnemonik got an answer it could not use.",
7339
+ identity_exists: "It is already connected to a different project."
7340
+ };
7341
+ var AGAIN = "Run the command again.";
7342
+ var CHOOSE_ONE = "Choose a single project folder and run mnemonik add on that folder.";
7343
+ var SIGN_IN = "Sign in to the account that owns that project, then run the command again.";
7344
+ var FRESH_FILE = "Delete the .mnemonik.json file in that folder, then run the command again.";
7345
+ var refusalSteps = {
7346
+ filesystem_root: CHOOSE_ONE,
7347
+ home_directory: CHOOSE_ONE,
7348
+ temporary_directory: CHOOSE_ONE,
7349
+ mnemonik_state_directory: CHOOSE_ONE,
7350
+ user_data_directory: CHOOSE_ONE,
7351
+ host_config_directory: CHOOSE_ONE,
7352
+ broad_workspace_parent: CHOOSE_ONE,
7353
+ not_found: SIGN_IN,
7354
+ project_access_denied: SIGN_IN,
7355
+ blocked: SIGN_IN,
7356
+ archived: "Restore the project in the Mnemonik web console, then run the command again.",
7357
+ deleted: FRESH_FILE,
7358
+ invalid_identity: FRESH_FILE,
7359
+ malformed: FRESH_FILE,
7360
+ unknown_version: "Update Mnemonik on this machine, then run the command again.",
7361
+ identity_too_large: FRESH_FILE,
7362
+ fingerprint_mismatch: "Run mnemonik project setup --confirm-mismatch in that folder to connect it anyway.",
7363
+ confirmation_required: "Run mnemonik project setup in that folder to confirm it.",
7364
+ nested: "Run mnemonik project setup in that folder and choose which project it belongs to.",
7365
+ conflict: "Run mnemonik project setup in that folder and choose which project it belongs to.",
7366
+ identity_changed: AGAIN,
7367
+ operation_context_changed: "Run mnemonik project setup in that folder to finish that command.",
7368
+ rollback_in_progress: "Wait for it to finish, then run the command again.",
7369
+ operation_rolled_back: "Run mnemonik project setup in that folder to set it up again.",
7370
+ not_staged: AGAIN,
7371
+ invalid_server_result: AGAIN,
7372
+ record_invalid: "Run mnemonik doctor on this machine, then run the command again.",
7373
+ record_missing: "Run mnemonik project setup in that folder.",
7374
+ identity_exists: "Run mnemonik project link <project id> --replace in that folder."
7375
+ };
7376
+ var hasRefusalWords = (reason) => reason in refusalReasons;
7377
+ function folderRefusalMessage(reason, root) {
7378
+ const name2 = basename3(root);
7379
+ return [
7380
+ `${name2} was not connected. ${refusalReasons[reason] ?? "Mnemonik could not finish connecting it."}`,
7381
+ refusalSteps[reason] ?? `Run mnemonik status in ${name2} and follow the first step.`
7382
+ ];
7335
7383
  }
7336
7384
  function projectLimitMessage(result, roots) {
7337
7385
  if (!("state" in result) || result.state !== "project_limit_reached") return void 0;
@@ -7454,15 +7502,18 @@ async function createRealProjectRuntime(options = {}) {
7454
7502
  };
7455
7503
  }
7456
7504
  var UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/;
7505
+ var choiceLines = (actions) => actions.flatMap((action) => {
7506
+ const label = projectActionSentence(action);
7507
+ return label ? [` You can ${label.replace(/^[A-Z]/u, (c) => c.toLowerCase())}.`] : [];
7508
+ });
7457
7509
  function actionRequired2(output, json, state, details = {}) {
7458
- const result = { status: "ACTION_REQUIRED", state, ...details };
7510
+ const { quiet, ...rest } = details;
7511
+ const result = { status: "ACTION_REQUIRED", state, ...rest };
7459
7512
  if (json) output.json(result);
7460
- else {
7513
+ else if (!quiet) {
7461
7514
  output.error(humanReason(state));
7462
7515
  if (Array.isArray(details.allowedActions))
7463
- output.line(
7464
- ` Allowed actions: ${details.allowedActions.map((action) => humanProjectAction(String(action))).join("; ")}`
7465
- );
7516
+ for (const line of choiceLines(details.allowedActions.map(String))) output.line(line);
7466
7517
  }
7467
7518
  return 3;
7468
7519
  }
@@ -7521,14 +7572,17 @@ function showResult(output, json, result, root, owner, record) {
7521
7572
  owner: ownerLabel(owner)
7522
7573
  });
7523
7574
  else {
7524
- output.error(humanReason("state" in result ? result.state : result.status));
7575
+ const state = "state" in result ? result.state : result.status;
7576
+ if (hasRefusalWords(state))
7577
+ for (const line of folderRefusalMessage(state, root)) output.line(line);
7578
+ else output.error(humanReason(state));
7525
7579
  if ("candidates" in result && Array.isArray(result.candidates))
7526
7580
  for (const candidate of result.candidates)
7527
7581
  output.line(` ${candidate.displayName} (${candidate.projectId})`);
7528
7582
  if ("used" in result && "limit" in result)
7529
7583
  output.line(` Projects: ${result.used} used, limit ${result.limit}`);
7530
7584
  if ("allowedActions" in result)
7531
- output.line(` Allowed actions: ${result.allowedActions.map(humanProjectAction).join("; ")}`);
7585
+ for (const line of choiceLines(result.allowedActions)) output.line(line);
7532
7586
  }
7533
7587
  }
7534
7588
  async function finish(deps, input, result, root, reason, owner, beforeHash) {
@@ -7655,28 +7709,23 @@ async function runProjectCommandInner(input, deps, prompts) {
7655
7709
  { identityLocation }
7656
7710
  );
7657
7711
  }
7658
- let selectedNonGit = input.nonGit || input.command === "link";
7659
- let decision = await evaluateRoot(resolution, {
7660
- cwd,
7661
- home: deps.home,
7662
- nonGitSelected: selectedNonGit
7663
- });
7664
- if (!decision.allowed && decision.reason === "non_git_selection_required" && !input.nonInteractive && !input.json && await prompts.confirm(`Use non-git folder ${decision.root}?`)) {
7665
- selectedNonGit = true;
7666
- decision = await evaluateRoot(resolution, { cwd, home: deps.home, nonGitSelected: true });
7667
- }
7668
- if (!decision.allowed)
7712
+ const decision = await evaluateRoot(resolution, { cwd, home: deps.home });
7713
+ if (!decision.allowed) {
7714
+ if (!input.json)
7715
+ for (const line of folderRefusalMessage(decision.reason, decision.root))
7716
+ deps.output.line(line);
7669
7717
  return actionRequired2(deps.output, input.json, decision.reason, {
7670
7718
  root: decision.root,
7671
- allowedActions: decision.reason === "non_git_selection_required" ? ["select_non_git", "cancel"] : ["cancel"]
7719
+ allowedActions: ["cancel"],
7720
+ quiet: true
7672
7721
  });
7722
+ }
7673
7723
  deps.output.setContext({ home: deps.home, projectRoot: decision.root });
7674
7724
  const base = {
7675
7725
  cwd,
7676
7726
  owner,
7677
7727
  allowCreate: input.command !== "link",
7678
- allowNestedInherit: false,
7679
- ...selectedNonGit ? { nonGitSelected: true } : {}
7728
+ allowNestedInherit: false
7680
7729
  };
7681
7730
  if (input.command === "setup") {
7682
7731
  if ((input.nonInteractive || input.json) && !input.apply) {
@@ -7906,6 +7955,8 @@ export {
7906
7955
  createRealProjectRuntime,
7907
7956
  ensureProjectForAgent,
7908
7957
  ensureProjectRoot,
7958
+ folderRefusalMessage,
7959
+ hasRefusalWords,
7909
7960
  projectExecutor,
7910
7961
  projectLimitMessage,
7911
7962
  repositoryFingerprint,
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAkB,MAAM,eAAe,CAAC;AAChE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EACL,0BAA0B,GAK3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,sBAAsB,EACtB,YAAY,GAIb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,qBAAqB,EACrB,yBAAyB,GAE1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,iBAAiB,EACjB,iBAAiB,GAElB,MAAM,sBAAsB,CAAC;AAU9B,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAY,EACZ,QAAyB;IAEzB,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC/D,OAAO,QAAQ,CAAC,aAAa,CAAC;QAC5B,GAAG,EAAE,IAAI;QACT,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,KAAK;QACzB,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;YACjF,CAAC,CAAC,EAAE,cAAc,EAAE,IAAa,EAAE;YACnC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,MAAmB,EACnB,KAAiC;IAEjC,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,KAAK,uBAAuB;QAAE,OAAO,SAAS,CAAC;IACvF,MAAM,OAAO,GAAG,MAA4C,CAAC;IAC7D,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;IAC7F,MAAM,IAAI,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACvF,MAAM,SAAS,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,KAAK,WAAW,CAAC;IACpE,MAAM,OAAO,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACvF,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,OAAO,CAAC,MAAM,GAAG,CAAC,OAAO,CAAC;IACrF,OAAO;QACL,GAAG,OAAO,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,uBAAuB,IAAI,kBAAkB,SAAS,GAAG;QAC5G,2EAA2E;KAC5E,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,KAAe,EAAU,EAAE,CAClE,KAAK,CAAC,MAAM,KAAK,CAAC;IAChB,CAAC,CAAC,iBAAiB,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG;IAC9C,CAAC,CAAC,iBAAiB,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAEpD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,YAAkC,EAAmB,EAAE;IACrF,MAAM,QAAQ,GAAG,0BAA0B,CAAC,YAAY,CAAC,CAAC;IAC1D,OAAO;QACL,sBAAsB,EAAE,CAAC,GAAG,EAAE,EAAE,CAC9B,YAAY,CAAC,QAAQ,CAAC,sBAAsB,CAAC,GAAG,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC;QAClF,GAAG,QAAQ;KACZ,CAAC;AACJ,CAAC,CAAC;AA2BF,MAAM,cAAc,GAAG,GAAsB,EAAE;IAC7C,MAAM,GAAG,GAAsB,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;IAC/C,KAAK,MAAM,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,CAAC;QACpF,IAAI,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS;YAAE,GAAG,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClE,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AAEF,MAAM,GAAG,GAAG,CAAC,GAAW,EAAE,IAAc,EAAmB,EAAE,CAC3D,IAAI,OAAO,CAAC,CAAC,cAAc,EAAE,MAAM,EAAE,EAAE,CACrC,QAAQ,CACN,KAAK,EACL,IAAI,EACJ,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,EAAE,EAAE,EAChE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CACpE,CACF,CAAC;AAEJ,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,IAAY;IACtD,IAAI,KAAe,CAAC;IACpB,IAAI,CAAC;QACH,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACxE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,OAAO,GAAuB,MAAM,OAAO,CAAC,GAAG,CACnD,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;QACvB,MAAM,IAAI,GAAG,KAAK,EAAE,IAAa,EAAE,EAAE;YACnC,IAAI,CAAC;gBACH,OAAO,CACL,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CACnF;qBACE,KAAK,CAAC,QAAQ,CAAC;qBACf,MAAM,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IAC5E,CAAC,CAAC,CACH,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IACvC,OAAO,QAAQ,CAAC,MAAM,KAAK,aAAa;QACtC,CAAC,CAAC;YACE,gBAAgB,EAAE,QAAQ,CAAC,WAAW,CAAC,gBAAgB;YACvD,IAAI,EAAE,QAAQ,CAAC,WAAW,CAAC,IAAI;SAChC;QACH,CAAC,CAAC,IAAI,CAAC;AACX,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,OAAO,GAA8B,EAAE;IACpF,MAAM,eAAe,GAAkC,CAAC,GAAG,EAAE,eAAe,EAAE,EAAE,CAC9E,sBAAsB,CAAC,GAAG,EAAE,EAAE,GAAG,eAAe,EAAE,YAAY,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC3F,MAAM,WAAW,GACf,OAAO,CAAC,WAAW;QACnB,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA2B,CAAC;IACpD,MAAM,UAAU,GAAG,CAAC,KAGnB,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC,CAAC;IAC7E,MAAM,SAAS,GAAG,qBAAqB,CAAC;QACtC,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW;QACX,YAAY,EAAE,OAAO,CAAC,YAAY;QAClC,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC5B,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;YAChD,IAAI,CAAC,OAAO;gBACV,MAAM,IAAI,yBAAyB,CAAC;oBAClC,MAAM,EAAE,iBAAiB;oBACzB,KAAK,EAAE,2BAA2B;oBAClC,cAAc,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;iBACpC,CAAC,CAAC;YACL,OAAO,EAAE,GAAG,OAAO,EAAE,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QAC7F,CAAC;KACF,CAAC,CAAC;IACH,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,cAAc,EAAE,CAAC;IACjD,MAAM,WAAW,GAAG,KAAK,EAAE,IAAY,EAAE,EAAE;QACzC,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC3D,WAAW,CAAC,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC;YACpC,qBAAqB,CAAC,IAAI,CAAC;YAC3B,eAAe,CAAC,IAAI,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC;SACrD,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG;YACf,iBAAiB,EAAE;gBACjB,gBAAgB,EAAE,OAAO,CAAC,OAAO;gBACjC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;aAC7D;YACD,qBAAqB,EAAE,WAAW;SACnC,CAAC;QACF,MAAM,OAAO,GAAoB;YAC/B,GAAG,QAAQ;YACX,QAAQ,EACN,UAAU,CAAC,IAAI,KAAK,iBAAiB,IAAI,UAAU,CAAC,UAAU,CAAC,IAAI,KAAK,OAAO;gBAC7E,CAAC,CAAC,kBAAkB;gBACpB,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,iBAAiB;oBACrC,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,KAAK;YACb,aAAa,EACX,UAAU,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC1F,GAAG,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClF,CAAC;QACF,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;QAC5C,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,OAAO;QACL,SAAS;QACT,YAAY,EAAE,SAAS,CAAC,YAAY;QACpC,QAAQ,EAAE,eAAe,CAAC;YACxB,QAAQ,EAAE,EAAE,sBAAsB,EAAE,eAAe,EAAE;YACrD,SAAS;YACT,QAAQ,EAAE,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,oBAAoB,EAAE;YAC7D,WAAW;YACX,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;KACH,CAAC;AACJ,CAAC;AA2BD,MAAM,IAAI,GAAG,2EAA2E,CAAC;AAEzF,SAAS,cAAc,CACrB,MAAc,EACd,IAAa,EACb,KAAa,EACb,OAAO,GAA4B,EAAE;IAErC,MAAM,MAAM,GAAG,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC;IAChE,IAAI,IAAI;QAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACzB,CAAC;QACJ,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QACjC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC;YACvC,MAAM,CAAC,IAAI,CACT,sBAAsB,OAAO,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,kBAAkB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC9G,CAAC;IACN,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,MAAM,QAAQ;IAKO,KAAK;IACL,MAAM;IALjB,QAAQ,CAAa;IACrB,KAAK,CAAyB;IAEtC,YACmB,KAAe,EACf,MAAc;qBADd,KAAK;sBACL,MAAM;IACtB,CAAC;IAEJ,KAAK,CAAC,OAAO,CAAC,MAAc;QAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,QAAQ,CAAC,CAAC;QACpC,IAAI,CAAC,QAAQ,KAAK,eAAe,CAAC;YAChC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,QAAQ,EAAE,OAAO,CAAE,IAAI,CAAC,KAAwC,CAAC,KAAK,CAAC;SACxE,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACvC,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACzD,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC;CACF;AAED,SAAS,UAAU,CAAC,KAAyB;IAC3C,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,KAAK,KAAK,UAAU;QAAE,OAAO,UAAU,CAAC;IAC5C,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAAE,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9F,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,QAA4B,EAC5B,MAAc,EACd,SAA2C;IAE3C,MAAM,MAAM,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACjC,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,OAAO,CAAC,MAAM,SAAS,EAAE,eAAe,CAAC,MAAM,CAAC,CAAC,IAAI,UAAU,CAAC;AAClE,CAAC;AAED,SAAS,QAAQ,CACf,MAAc,EACd,IAA2E;IAE3E,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5B,MAAM,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,CAAC,IAAI,CAAC,YAAY,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAClD,MAAM,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACpG,CAAC;AAED,SAAS,UAAU,CACjB,MAAc,EACd,IAAa,EACb,MAAmB,EACnB,IAAY,EACZ,KAAY,EACZ,MAA4B;IAE5B,IAAI,IAAI;QACN,MAAM,CAAC,IAAI,CAAC;YACV,GAAG,MAAM;YACT,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,GAAG,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,gBAAgB,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,GAAG,CAAC,YAAY,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;gBAC5D,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE;gBACnC,CAAC,CAAC,EAAE,CAAC;YACP,GAAG,CAAC,cAAc,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1E,GAAG,CAAC,MAAM,IAAI,MAAM,IAAI,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5F,IAAI;YACJ,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC;SACzB,CAAC,CAAC;SACA,CAAC;QACJ,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,IAAI,YAAY,IAAI,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAC5D,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU;gBACvC,MAAM,CAAC,IAAI,CAAC,KAAK,SAAS,CAAC,WAAW,KAAK,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC;QACvE,IAAI,MAAM,IAAI,MAAM,IAAI,OAAO,IAAI,MAAM;YACvC,MAAM,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,IAAI,gBAAgB,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACxE,IAAI,gBAAgB,IAAI,MAAM;YAC5B,MAAM,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,cAAc,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAClG,CAAC;AACH,CAAC;AAED,KAAK,UAAU,MAAM,CACnB,IAAgC,EAChC,KAA0B,EAC1B,MAAmB,EACnB,IAAY,EACZ,MAAc,EACd,KAAY,EACZ,UAA8C;IAE9C,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,MAAM,GAAyB;QACnC,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK;QACxF,WAAW,EAAE,UAAU,CAAC,KAAK,CAAC;QAC9B,SAAS,EACP,MAAM,CAAC,MAAM,KAAK,MAAM;YACtB,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC;YAC5B,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;gBAC7C,CAAC,CAAC,KAAK,CAAC,SAAS;gBACjB,CAAC,CAAC,IAAI;QACZ,UAAU;QACV,SAAS;KACV,CAAC;IACF,MAAM,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI;YACZ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;;YACpF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sCAAsC,IAAI,EAAE,CAAC,CAAC;QACpE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC7B,UAAU,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACjE,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,KAAK,CAAC,IAAI;QAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,MAAM,CAAC,SAAS,IAAI,OAAO,OAAO,IAAI,EAAE,CAAC,CAAC;QACtE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,iBAAiB,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,cAAc,CAC3B,IAAgC,EAChC,KAA0B,EAC1B,IAAY,EACZ,MAAc,EACd,KAAY,EACZ,KAAa,EACb,cAAwB,EACxB,OAAO,GAA4B,EAAE;IAErC,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC5C,OAAO,MAAM,CACX,IAAI,EACJ,KAAK,EACL,EAAE,MAAM,EAAE,iBAAiB,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,OAAO,EAAE,EAChE,IAAI,EACJ,MAAM,EACN,KAAK,EACL,UAAU,CACX,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,KAA0B,EAC1B,IAAgC;IAEhC,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC;IACnC,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,sBAAsB,IAAI,sBAAsB,CAAC,CAAC,GAAG,EAAE;QAC9F,kBAAkB,EAAE,KAAK;KAC1B,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,IAAI,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;IAC1D,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CACtC,GAAG,EAAE,CAAC,IAAI,EACV,CAAC,KAA4B,EAAE,EAAE;QAC/B,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAC1C,MAAM,KAAK,CAAC;IACd,CAAC,CACF,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;IAC3C,MAAM,MAAM,GACV,SAAS,IAAI,MAAM,IAAI,IAAI,CAAC,SAAS;QACnC,CAAC,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC7F,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,kBAAkB,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxE,MAAM,aAAa,GAAG,CAAC,SAAS,IAAI,kBAAkB,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,kBAAkB,CAAC;IAC5F,MAAM,MAAM,GAAG;QACb,YAAY,EAAE,IAAI;QAClB,cAAc,EAAE,UAAU,CAAC,IAAI;QAC/B,WAAW,EAAE,UAAmB;QAChC,SAAS;QACT,UAAU,EAAE,WAAW;QACvB,SAAS,EAAE,WAAW;QACtB,QAAQ,EAAE,UAAU,CAAC,IAAI;QACzB,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa;QACrD,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5C,CAAC;IACF,IAAI,KAAK,CAAC,IAAI;QAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC,CAAC;QACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,UAAU,CAAC,IAAI,KAAK,IAAI;YACtB,CAAC,CAAC,8BAA8B;YAChC,CAAC,CAAC,WAAW,CAAC,wBAAwB,CAAC,CAC1C,CAAC;QACF,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC9D,IAAI,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ;YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrF,IAAI,aAAa,IAAI,aAAa,KAAK,MAAM;YAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,KAA0B,EAC1B,IAAgC,EAChC,OAAiB;IAEjB,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ;QAAE,OAAO,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAClE,IAAI,CAAC,IAAI,CAAC,QAAQ;QAChB,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE;YAC9D,cAAc,EAAE,CAAC,kBAAkB,CAAC;SACrC,CAAC,CAAC;IACL,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;IAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,EAAE,CAAC;IAC3C,IAAI,CAAC,MAAM;QACT,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE;YAC9D,cAAc,EAAE,CAAC,kBAAkB,CAAC;SACrC,CAAC,CAAC;IACL,MAAM,KAAK,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IACvE,IAAI,CAAC,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE;YAC9D,cAAc,EAAE,CAAC,+BAA+B,EAAE,QAAQ,CAAC;SAC5D,CAAC,CAAC;IACL,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC;IACnC,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC9D,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnE,MAAM,gBAAgB,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACjE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;YAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,gBAAgB,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,UAAU,CAAC,IAAI,EACf,UAAU,CAAC,IAAI,EACf,KAAK,EACL,UAAU,CAAC,IAAI,EACf;YACE,qBAAqB;YACrB,8BAA8B;YAC9B,kCAAkC;YAClC,QAAQ;SACT,EACD,EAAE,gBAAgB,EAAE,CACrB,CAAC;IACJ,CAAC;IACD,IAAI,cAAc,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,CAAC;IAC9D,IAAI,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE;QAC5C,GAAG;QACH,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,cAAc,EAAE,cAAc;KAC/B,CAAC,CAAC;IACH,IACE,CAAC,QAAQ,CAAC,OAAO;QACjB,QAAQ,CAAC,MAAM,KAAK,4BAA4B;QAChD,CAAC,KAAK,CAAC,cAAc;QACrB,CAAC,KAAK,CAAC,IAAI;QACX,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,sBAAsB,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC,EAC/D,CAAC;QACD,cAAc,GAAG,IAAI,CAAC;QACtB,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,OAAO;QACnB,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE;YAC9D,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,cAAc,EACZ,QAAQ,CAAC,MAAM,KAAK,4BAA4B;gBAC9C,CAAC,CAAC,CAAC,gBAAgB,EAAE,QAAQ,CAAC;gBAC9B,CAAC,CAAC,CAAC,QAAQ,CAAC;SACjB,CAAC,CAAC;IACL,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;IACxE,MAAM,IAAI,GAAkB;QAC1B,GAAG;QACH,KAAK;QACL,WAAW,EAAE,KAAK,CAAC,OAAO,KAAK,MAAM;QACrC,kBAAkB,EAAE,KAAK;QACzB,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACpD,CAAC;IACF,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACzD,IAAI,CAAC,KAAK,CAAC,IAAI;gBACb,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE;oBACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;oBACvB,KAAK;oBACL,UAAU,EAAE,EAAE;iBACf,CAAC,CAAC;YACL,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,EACf,KAAK,EACL,gBAAgB,EAChB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,EAC9B,EAAE,cAAc,EAAE,QAAQ,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,EAAE,CACpD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YACzC,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;YACtE,MAAM,UAAU,GACd,YAAY,IAAI,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;YACzF,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE;gBACpB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,KAAK;gBACL,UAAU;aACX,CAAC,CAAC;YACH,MAAM,WAAW,GACf,OAAO,CAAC,MAAM,KAAK,QAAQ;gBAC3B,CAAC,OAAO,CAAC,MAAM,KAAK,wBAAwB;oBAC1C,OAAO,CAAC,KAAK,KAAK,SAAS;oBAC3B,OAAO,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC/C,IAAI,CAAC,WAAW,EAAE,CAAC;gBACjB,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;YACzF,CAAC;YACD,IAAI,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACpC,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;oBACrF,QAAQ;iBACT,CAAC,CAAC;YACL,MAAM,MAAM,GACV,OAAO,CAAC,MAAM,KAAK,QAAQ;gBACzB,CAAC,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC5B,CAAC,CAAC,MAAM,QAAQ;qBACX,KAAK,CAAC,IAAI,CAAC;qBACX,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;QAC7B,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;YACjD,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,EACf,KAAK,EACL,oBAAoB,EACpB,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CACnC,CAAC;QACJ,IAAI,CAAC,IAAI,CAAC,SAAS;YACjB,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,EACf,KAAK,EACL,oBAAoB,EACpB,CAAC,OAAO,EAAE,QAAQ,CAAC,CACpB,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAClD,KAAK,CAAC,SAAS,EACf,MAAM,EACN,MAAM,qBAAqB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAC3C,CAAC;QACF,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;YAChC,IACE,CAAC,KAAK,CAAC,eAAe;gBACtB,CAAC,KAAK,CAAC,cAAc;oBACnB,KAAK,CAAC,IAAI;oBACV,CAAC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,8CAA8C,CAAC,CAAC,CAAC,EAC3E,CAAC;gBACD,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,EACf,KAAK,EACL,sBAAsB,EACtB,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAC/B,CAAC;YACJ,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,OAAO,cAAc,CACnB,IAAI,EACJ,KAAK,EACL,QAAQ,CAAC,IAAI,EACb,QAAQ,CAAC,MAAM,EACf,KAAK,EACL,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,cAAc,IAAI,EAAE,CAC5B,CAAC;QACJ,CAAC;QACD,IACE,UAAU,CAAC,IAAI,KAAK,IAAI;YACxB,UAAU,CAAC,QAAQ,CAAC,SAAS,KAAK,KAAK,CAAC,SAAS;YACjD,CAAC,KAAK,CAAC,OAAO;YAEd,OAAO,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,iBAAiB,EAAE;gBAC3F,SAAS;gBACT,QAAQ;aACT,CAAC,CAAC;QACL,IAAI,CAAC,MAAM,GAAG;YACZ,MAAM,EAAE,MAAM;YACd,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5C,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IACrD,IAAI,MAAM,GACR,KAAK,CAAC,OAAO,KAAK,MAAM;QACtB,CAAC,CAAC,MAAM,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC;QACpC,CAAC,CAAC,MAAM,QAAQ;aACX,KAAK,CAAC,IAAI,CAAC;aACX,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;IAC9F,IAAI,KAAK,CAAC,OAAO,KAAK,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACrE,IAAI,MAAM,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC;YACvE,IAAI,MAAM,OAAO,CAAC,OAAO,CAAC,4CAA4C,CAAC;gBACrE,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1E,CAAC;aAAM,IACL,gBAAgB,IAAI,MAAM;YAC1B,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACxC,CAAC,MAAM,OAAO,CAAC,OAAO,CAAC,wCAAwC,CAAC,CAAC;YAEjE,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA0B,EAC1B,IAAgC;IAEhC,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IACtD,IAAI,CAAC;QACH,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5D,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,wBAAwB,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC5E,SAAS,GAAG;oBACV,GAAG,IAAI;oBACP,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,YAAY,EAAE,KAAK,IAAI,EAAE;wBACvB,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;wBAC5C,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;oBACzD,CAAC;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAC/B,MAAM,KAAK,GACT,KAAK,YAAY,yBAAyB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,gBAAgB;wBACnF,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;wBACpB,CAAC,CAAC,eAAe,CAAC;oBACtB,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;wBACpD,cAAc,EAAE,CAAC,KAAK,KAAK,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC;qBACrF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QACD,IAAI,CAAC;YACH,OAAO,MAAM,sBAAsB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QACjE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,yBAAyB;gBAC5C,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE;oBACjE,cAAc,EAAE,KAAK,CAAC,MAAM,CAAC,cAAc;iBAC5C,CAAC,CAAC;YACL,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;YAAS,CAAC;QACT,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAK3C;IACC,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAChC,IAAI,CAAC,QAAQ;QACX,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,oBAAoB,EAAE,CAAC;YAC3C,IAAI,CAAC,CAAC,MAAM,WAAW,CAAC,YAAY,EAAE,CAAC;gBACrC,MAAM,IAAI,yBAAyB,CAAC;oBAClC,MAAM,EAAE,iBAAiB;oBACzB,KAAK,EAAE,gBAAgB;oBACvB,cAAc,EAAE,CAAC,kBAAkB,CAAC;iBACrC,CAAC,CAAC;YACL,IAAI,SAA6B,CAAC;YAClC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;YAC7C,IAAI,CAAE,KAAwC,CAAC,KAAK,EAAE,CAAC;gBACrD,IAAI,IAAI,GAAG,EAAE,CAAC;gBACd,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAChC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC;oBACtB,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK;wBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC9D,CAAC;gBACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAA4B,CAAC;gBAC1D,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;gBAC5E,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;YAC9B,CAAC;YACD,QAAQ,GAAG,CAAC,MAAM,wBAAwB,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC;QACnF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,MAAM,GACV,KAAK,YAAY,yBAAyB,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,gBAAgB;gBACnF,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK;gBACpB,CAAC,CAAC,KAAK,YAAY,KAAK,IAAI,KAAK,CAAC,OAAO,KAAK,iBAAiB;oBAC7D,CAAC,CAAC,iBAAiB;oBACnB,CAAC,CAAC,eAAe,CAAC;YACxB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;gBAClB,MAAM,EAAE,iBAAiB;gBACzB,MAAM;gBACN,MAAM,EAAE,MAAM,KAAK,eAAe,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,qBAAqB;aAChF,CAAC,CAAC;YACH,OAAO,CAAC,CAAC;QACX,CAAC;IACH,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAClB,MAAM,EAAE,iBAAiB;YACzB,MAAM,EAAE,eAAe;YACvB,MAAM,EAAE,kBAAkB;SAC3B,CAAC,CAAC;QACH,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,sBAAsB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACtE,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACtE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,KAAK,IAAI,IAAI,UAAU,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,CAAC;QACpF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;YAClB,MAAM,EAAE,iBAAiB;YACzB,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM;YAC5D,MAAM,EAAE,8BAA8B;YACtC,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAC,CAAC;QACH,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC;QAC1C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,WAAW,EAAE,IAAI;QACjB,kBAAkB,EAAE,KAAK;KAC1B,CAAC,CAAC;IACH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC,MAAM,KAAK,iBAAiB,IAAI,MAAM,CAAC,MAAM,KAAK,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,OAI7C;IACC,IAAI,CAAC,OAAO,CAAC,QAAQ;QAAE,OAAO,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAC7C,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,WAAW,EAAE,KAAK;QAClB,kBAAkB,EAAE,KAAK;KAC1B,CAAC,CAAC;IACH,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,OAAO,MAAM,CAAC,MAAM,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.d.ts","sourceRoot":"","sources":["../src/router.ts"],"names":[],"mappings":"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"}