@wirecat/drive-cli 0.7.0 → 0.8.1

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 (41) hide show
  1. package/README.md +1 -1
  2. package/dist/catalog-commands.d.ts +2 -1
  3. package/dist/catalog-commands.d.ts.map +1 -1
  4. package/dist/catalog-commands.js +15 -15
  5. package/dist/catalog-commands.js.map +1 -1
  6. package/dist/config-upgrade.d.ts +5 -0
  7. package/dist/config-upgrade.d.ts.map +1 -0
  8. package/dist/config-upgrade.js +37 -0
  9. package/dist/config-upgrade.js.map +1 -0
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +14 -3
  12. package/dist/config.js.map +1 -1
  13. package/dist/failure.js +1 -1
  14. package/dist/failure.js.map +1 -1
  15. package/dist/knowledge-commands.d.ts +2 -1
  16. package/dist/knowledge-commands.d.ts.map +1 -1
  17. package/dist/knowledge-commands.js +39 -24
  18. package/dist/knowledge-commands.js.map +1 -1
  19. package/dist/knowledge.d.ts +8 -2
  20. package/dist/knowledge.d.ts.map +1 -1
  21. package/dist/knowledge.js.map +1 -1
  22. package/dist/mcp.js +1 -1
  23. package/dist/mcp.js.map +1 -1
  24. package/dist/output.d.ts +3 -8
  25. package/dist/output.d.ts.map +1 -1
  26. package/dist/output.js +5 -35
  27. package/dist/output.js.map +1 -1
  28. package/dist/policy.d.ts.map +1 -1
  29. package/dist/policy.js +1 -2
  30. package/dist/policy.js.map +1 -1
  31. package/dist/program.d.ts.map +1 -1
  32. package/dist/program.js +79 -76
  33. package/dist/program.js.map +1 -1
  34. package/dist/remote-commands.d.ts +2 -1
  35. package/dist/remote-commands.d.ts.map +1 -1
  36. package/dist/remote-commands.js +68 -50
  37. package/dist/remote-commands.js.map +1 -1
  38. package/dist/store.d.ts.map +1 -1
  39. package/dist/store.js +21 -8
  40. package/dist/store.js.map +1 -1
  41. package/package.json +5 -5
package/dist/program.js CHANGED
@@ -1,9 +1,10 @@
1
+ import { randomUUID } from "node:crypto";
1
2
  import { readFileSync, writeFileSync } from "node:fs";
2
3
  import { CliError, createDeadline, createOutputBuffer, createRenderer, fieldsOf, processStreams, projectFields, } from "@wirecat/cli-base";
3
4
  import { annotate, describeOptions, flatten, metaOf } from "@wirecat/cli-base/commands";
4
5
  import { formatSuggestions, suggest } from "@wirecat/cli-base/completion";
5
6
  import { writes } from "@wirecat/cli-base/standards";
6
- import { commandWords, jsonlRecords, liftJson, liftProfile, parseDuration, refuseCommandName, } from "@wirecat/cli-core/cli";
7
+ import { commandWords, itemOf, liftJson, liftProfile, parseDuration, refuseCommandName, renderAnswer, } from "@wirecat/cli-core/cli";
7
8
  import { Command, Help, InvalidArgumentError, Option } from "commander";
8
9
  import { validateRequest } from "./api-contract.js";
9
10
  import { installCatalogCommands } from "./catalog-commands.js";
@@ -15,7 +16,7 @@ import { apiMethod, googleApi } from "./google-api.js";
15
16
  import { installKnowledgeCommands } from "./knowledge-commands.js";
16
17
  import { login } from "./login.js";
17
18
  import { FOLDER, metadataJson, skipJson } from "./model.js";
18
- import { answerOf } from "./output.js";
19
+ import { allOf, snakeKeys } from "./output.js";
19
20
  import { checkPolicy, guardedGoogleWrite, methodPolicyKeys } from "./policy.js";
20
21
  import { lockProfile } from "./profile-lock.js";
21
22
  import { checkProviderJson, checkResultFields, providerJsonFields } from "./provider-json.js";
@@ -40,9 +41,7 @@ const offset = (input) => {
40
41
  throw new InvalidArgumentError("use a nonnegative integer");
41
42
  return n;
42
43
  };
43
- const keepFields = (answer, paths) => "items" in answer
44
- ? { ...answer, items: answer.items.map((item) => projectFields(item, paths)) }
45
- : { ...answer, item: projectFields(answer.item, paths) };
44
+ const eachItem = (body, change) => "items" in body ? { ...body, items: body.items.map(change) } : { ...body, item: change(body.item) };
46
45
  const commandIn = (root, words) => {
47
46
  let at = root;
48
47
  for (const word of words) {
@@ -54,6 +53,8 @@ const commandIn = (root, words) => {
54
53
  }
55
54
  return at === root ? undefined : at;
56
55
  };
56
+ class Preview extends Error {
57
+ }
57
58
  export const createProgram = (options = {}) => {
58
59
  const startedAt = Date.now();
59
60
  const env = options.env ?? process.env;
@@ -68,7 +69,7 @@ export const createProgram = (options = {}) => {
68
69
  .option("--quiet", "suppress optional diagnostics")
69
70
  .option("--debug", "on failure, show the full error record: cause and stack")
70
71
  .option("--timeout <duration>", "whole-command deadline, e.g. 30s", (raw) => parseDuration(raw, "--timeout"))
71
- .option("--max-output-bytes <n>", "largest result to print, in bytes; 0 for no limit", offset, 4 * 1024 * 1024)
72
+ .option("--max-output-bytes <bytes>", "largest result to print, in bytes; 0 for no limit", offset, 4 * 1024 * 1024)
72
73
  .option("--read-only", "refuse local and remote mutations")
73
74
  .option("--offline", "answer only operations that use local cached data")
74
75
  .option("--dry-run", "validate command/policy and preview without acting")
@@ -110,29 +111,35 @@ export const createProgram = (options = {}) => {
110
111
  ...program.opts(),
111
112
  allowDangerous: program.opts().allowDangerous || currentAction?.opts().allowDelete,
112
113
  });
113
- const output = (value) => {
114
- const whole = currentAction?.name() === "commands"
115
- ? undefined
116
- : answerOf(value, { startedAt, limit: currentAction?.opts().limit, page: currentAction?.opts().page });
117
- if (whole && fields && currentAction)
118
- checkResultFields(currentAction, whole, fields);
119
- const answer = whole && fields ? keepFields(whole, fieldsOf(fields)) : whole;
114
+ const runId = randomUUID();
115
+ const print = (render) => {
116
+ const format = program.opts().jsonl
117
+ ? "jsonl"
118
+ : program.opts().json || !process.stdout.isTTY
119
+ ? "json"
120
+ : "pretty";
120
121
  const buffer = createOutputBuffer({ maxOutputBytes: program.opts().maxOutputBytes });
121
- const renderer = createRenderer({
122
- format: program.opts().jsonl ? "jsonl" : program.opts().json || !process.stdout.isTTY ? "json" : "pretty",
123
- color: false,
124
- streams: { ...streams, data: (text) => buffer.data(text) },
125
- quiet: program.opts().quiet === true,
126
- });
127
- if (!answer)
128
- renderer.result(value);
129
- else if (program.opts().jsonl)
130
- for (const record of jsonlRecords(answer))
131
- renderer.result(record);
132
- else
133
- renderer.result(answer);
122
+ const buffered = { ...streams, data: (text) => buffer.data(text) };
123
+ render(createRenderer({ format, color: false, streams: buffered, quiet: program.opts().quiet === true }), format, buffered);
134
124
  buffer.flush((text) => streams.data(text));
135
125
  };
126
+ const output = (body) => {
127
+ const snaked = eachItem(body, (item) => snakeKeys(item));
128
+ const whole = {
129
+ ...snaked,
130
+ meta: {
131
+ run_id: runId,
132
+ duration_ms: Math.max(0, Math.round(Date.now() - startedAt)),
133
+ complete: true,
134
+ ...body.meta,
135
+ },
136
+ };
137
+ if (fields && currentAction)
138
+ checkResultFields(currentAction, whole, fields);
139
+ const paths = fields ? fieldsOf(fields) : undefined;
140
+ const answer = paths ? projectFields(whole, paths) : whole;
141
+ print((renderer, format, buffered) => renderAnswer(currentAction ?? program, { renderer, format, streams: buffered }, answer));
142
+ };
136
143
  const source = async () => {
137
144
  const name = selected();
138
145
  if (options.source)
@@ -161,7 +168,7 @@ export const createProgram = (options = {}) => {
161
168
  .action(async (args) => {
162
169
  if (args.credentialStorage !== "keyring" && args.credentialStorage !== "file")
163
170
  throw new CliError("validation_error", "credential storage is keyring or file");
164
- output(await login({
171
+ output(itemOf(await login({
165
172
  env,
166
173
  profile: selected(),
167
174
  application: application(env, args.clientFile),
@@ -173,18 +180,18 @@ export const createProgram = (options = {}) => {
173
180
  ...(activeSignal ? { signal: activeSignal } : {}),
174
181
  openBrowser: args.browser ? (options.openBrowser ?? (async () => { })) : async () => { },
175
182
  showUrl: (url) => streams.diagnostic(`Open Google sign-in: ${url}\n`),
176
- }));
183
+ })));
177
184
  });
178
185
  examples(session.command("list").description("list the configured profiles; credentials are never printed"), [
179
186
  "drive personal session list",
180
- ]).action(() => output({
187
+ ]).action(() => output(itemOf({
181
188
  scope: "all-configured-profiles",
182
189
  items: Object.entries(readConfig(env).profiles).map(([name, p]) => ({
183
190
  profile: name,
184
191
  selected_folders: p.roots.length,
185
192
  storage: p.storage,
186
193
  })),
187
- }));
194
+ })));
188
195
  examples(session.command("end").description("sign this profile out; imported documents stay"), [
189
196
  "drive personal session end",
190
197
  ]).action(() => {
@@ -194,7 +201,7 @@ export const createProgram = (options = {}) => {
194
201
  credentials(env, profile.storage, options.keyring).remove(name);
195
202
  // Preserve the principal and roots so reauthorization resumes the same source identities.
196
203
  writeConfig(env, config);
197
- output({ profile: name, signed_out: true, cached_data: "retained" });
204
+ output(itemOf({ profile: name, signed_out: true, cached_data: "retained" }));
198
205
  });
199
206
  const folders = program.command("folders").description("choose the Google Drive folders that sync imports");
200
207
  const folderArgument = "folder id or Google Drive URL";
@@ -213,11 +220,11 @@ export const createProgram = (options = {}) => {
213
220
  profile.roots.push(metadata.id);
214
221
  config.profiles[name] = profile;
215
222
  writeConfig(env, config);
216
- output({ id: metadata.id, name: metadata.name, added: true });
223
+ output(itemOf({ id: metadata.id, name: metadata.name, added: true }));
217
224
  });
218
225
  examples(folders.command("list").description("list the folder ids sync imports"), [
219
226
  "drive personal folders list",
220
- ]).action(() => output({ items: activeProfile(env, selected()).roots.map((id) => ({ id })) }));
227
+ ]).action(() => output(allOf(activeProfile(env, selected()).roots.map((id) => ({ id })))));
221
228
  examples(folders
222
229
  .command("remove")
223
230
  .argument("<folder>", folderArgument)
@@ -229,7 +236,7 @@ export const createProgram = (options = {}) => {
229
236
  profile.roots = profile.roots.filter((root) => root !== id);
230
237
  config.profiles[name] = profile;
231
238
  writeConfig(env, config);
232
- output({ id, removed: true });
239
+ output(itemOf({ id, removed: true }));
233
240
  });
234
241
  examples(program
235
242
  .command("sync")
@@ -245,7 +252,7 @@ export const createProgram = (options = {}) => {
245
252
  ...(await sync(remote, index, env, selected(), args.limit, activeSignal, args.rescan)),
246
253
  ...(args.embed ? { embeddings: await index.embed(600) } : {}),
247
254
  }));
248
- output(result);
255
+ output(itemOf(result));
249
256
  if (result.errors.length || result.pending)
250
257
  streams.diagnostic(`${result.pending} source operations remain; run drive ${selected()} sync again\n`);
251
258
  if (result.errors.length)
@@ -259,16 +266,16 @@ export const createProgram = (options = {}) => {
259
266
  const name = selected();
260
267
  const profile = activeProfile(env, name);
261
268
  const state = readState(env, name, profile.principal);
262
- output({
269
+ output(itemOf({
263
270
  profile: name,
264
271
  selected_folders: profile.roots,
265
272
  documents: Object.keys(state.documents).length,
266
273
  pending: state.pending?.jobs.length ?? 0,
267
274
  skipped: state.skipped.map(skipJson),
268
275
  last_sync: state.lastSync ?? null,
269
- coverage: "Google Docs and Markdown/TXT; native export tab fidelity and assets are not verified",
276
+ coverage: "Google Docs/Sheets, PDF/DOCX/XLSX and Markdown/TXT/CSV/TSV; native export layout, tab fidelity and assets are not verified",
270
277
  remote_checked: false,
271
- });
278
+ }));
272
279
  });
273
280
  const documents = program.command("documents").description("read imported documents and Google Docs");
274
281
  const documentArgument = "document id or Google Docs URL";
@@ -277,28 +284,30 @@ export const createProgram = (options = {}) => {
277
284
  "drive personal documents list --tag budget",
278
285
  ])
279
286
  .option("--tag <tag>", "only documents with this tag")
280
- .option("--person <reference>", "only documents linked to this person:<uid> reference")
287
+ .option("--person <uid>", "only documents linked to this person, by uid or person:<uid>")
281
288
  .action(async (args) => {
282
289
  const profile = activeProfile(env, selected());
283
290
  const state = readState(env, selected(), profile.principal);
284
291
  let docs = Object.values(state.documents);
292
+ const filters = {
293
+ ...(args.tag ? { tag: args.tag } : {}),
294
+ ...(args.person ? { person: args.person.startsWith("person:") ? args.person : `person:${args.person}` } : {}),
295
+ };
285
296
  if (args.tag || args.person)
286
297
  docs = await withIndex(async (index) => {
287
298
  if (!index.knowledge)
288
299
  throw new CliError("configuration_error", "index has no shared knowledge adapter");
289
300
  const filtered = [];
290
301
  for (const doc of docs)
291
- if (await index.knowledge.matches(profile.principal, doc.reference, args))
302
+ if (await index.knowledge.matches(profile.principal, doc.reference, filters))
292
303
  filtered.push(doc);
293
304
  return filtered;
294
305
  });
295
- output({
296
- items: docs.map((doc) => ({
297
- ...metadataJson(doc.metadata),
298
- reference: doc.reference,
299
- tabs: doc.tabs,
300
- })),
301
- });
306
+ output(allOf(docs.map((doc) => ({
307
+ ...metadataJson(doc.metadata),
308
+ reference: doc.reference,
309
+ tabs: doc.tabs,
310
+ }))));
302
311
  });
303
312
  const imported = (input) => {
304
313
  const id = fileId(input);
@@ -316,32 +325,32 @@ export const createProgram = (options = {}) => {
316
325
  .argument("<document>", documentArgument)
317
326
  .description("show an imported document's text, tabs and metadata"), ["drive personal documents show DOC_ID"]).action((input) => {
318
327
  const { snapshot } = imported(input);
319
- output({
328
+ output(itemOf({
320
329
  metadata: metadataJson(snapshot.metadata),
321
330
  text: snapshot.text,
322
331
  tabs: snapshot.tabs,
323
332
  ...(snapshot.notRead ? { not_read: snapshot.notRead } : {}),
324
- });
333
+ }));
325
334
  });
326
335
  examples(documents
327
336
  .command("export")
328
337
  .argument("<document>", documentArgument)
329
- .description("write an imported document to a new Markdown file"), ["drive personal documents export DOC_ID --out notes.md"])
330
- .requiredOption("--out <file>", "path of the Markdown file to write; an existing file is refused")
338
+ .description("write an imported document to a new Markdown file"), ["drive personal documents export DOC_ID --output notes.md"])
339
+ .requiredOption("--output <file>", "path of the Markdown file to write; an existing file is refused")
331
340
  .action((input, args) => {
332
341
  const { id, snapshot } = imported(input);
333
342
  try {
334
- writeFileSync(args.out, snapshot.markdown, { flag: "wx", mode: 0o600 });
343
+ writeFileSync(args.output, snapshot.markdown, { flag: "wx", mode: 0o600 });
335
344
  }
336
345
  catch (error) {
337
346
  if (error.code === "EEXIST")
338
- throw new CliError("validation_error", "the output file already exists; choose another --out", {
347
+ throw new CliError("validation_error", "the output file already exists; choose another --output", {
339
348
  reason: "export.exists",
340
- param: "--out",
349
+ param: "--output",
341
350
  });
342
351
  throw error;
343
352
  }
344
- output({ id, path: args.out, format: "markdown" });
353
+ output(itemOf({ id, path: args.output, format: "markdown" }));
345
354
  });
346
355
  examples(program
347
356
  .command("search")
@@ -350,12 +359,12 @@ export const createProgram = (options = {}) => {
350
359
  .option("--limit <n>", "how many results to return", positive, 20)
351
360
  .option("--page <n>", "which page to return", positive, 1)
352
361
  .option("--exact", "match the words exactly: no word forms, no meaning")
353
- .action(async (query, { page, ...args }) => output(await withIndex((index) => index.search(activeProfile(env, selected()).principal, query, {
362
+ .action(async (query, { page, ...args }) => output(itemOf(await withIndex((index) => index.search(activeProfile(env, selected()).principal, query, {
354
363
  ...args,
355
364
  offset: (page - 1) * args.limit,
356
365
  exact: args.exact ?? false,
357
366
  ...(pictureSearch(env, selected()) ? { pictures: true } : {}),
358
- }))));
367
+ })))));
359
368
  installCatalogCommands(program, { env, selected, output, positive, offset, withIndex });
360
369
  installKnowledgeCommands(program, {
361
370
  document: imported,
@@ -407,14 +416,16 @@ export const createProgram = (options = {}) => {
407
416
  throw new CliError("permission_error", "this operation needs Google; --offline was requested", {
408
417
  reason: "offline.refused",
409
418
  });
410
- if (flags.dryRun)
411
- return {
419
+ if (flags.dryRun) {
420
+ output(itemOf({
412
421
  dry_run: true,
413
422
  method,
414
423
  mutates: descriptor.mutates,
415
424
  parameters: params,
416
425
  body_provided: body !== undefined,
417
- };
426
+ }));
427
+ throw new Preview();
428
+ }
418
429
  const act = async () => {
419
430
  try {
420
431
  if (options.api)
@@ -433,7 +444,7 @@ export const createProgram = (options = {}) => {
433
444
  const config = program.command("config").description("read and change settings; credentials are kept apart");
434
445
  examples(config.command("show").description("show the defaults and every profile's settings"), [
435
446
  "drive personal config show",
436
- ]).action(() => output(readConfig(env)));
447
+ ]).action(() => output(itemOf(readConfig(env))));
437
448
  examples(config.command("set").description("set one setting of this profile, or of the defaults"), [
438
449
  "drive personal config set read_only true",
439
450
  `drive personal config set permissions.files '"readonly"' --defaults`,
@@ -483,7 +494,7 @@ export const createProgram = (options = {}) => {
483
494
  else
484
495
  throw new CliError("validation_error", "unknown setting path");
485
496
  writeConfig(env, value);
486
- output({ key, updated: true, scope: args.defaults ? "defaults" : selected() });
497
+ output(itemOf({ key, updated: true, scope: args.defaults ? "defaults" : selected() }));
487
498
  });
488
499
  examples(program.command("complete").description("print a shell completion script, or complete words"), [
489
500
  "drive complete zsh",
@@ -522,7 +533,7 @@ export const createProgram = (options = {}) => {
522
533
  ...(args.baseUrl ? { base_url: args.baseUrl } : {}),
523
534
  };
524
535
  writeConfig(env, config);
525
- output({ purpose: args.purpose, configured: true });
536
+ output(itemOf({ purpose: args.purpose, configured: true }));
526
537
  });
527
538
  const mcp = examples(program.command("mcp").description("serve drive's commands to an agent over MCP on stdio"), [
528
539
  "drive personal mcp",
@@ -533,13 +544,7 @@ export const createProgram = (options = {}) => {
533
544
  .action(async (args) => {
534
545
  const { mcpTools, serveMcp } = await import("./mcp.js");
535
546
  if (args.tools)
536
- output({
537
- items: mcpTools(createProgram, { ...options, env }, selected(), policyFlags()).map(({ name, schema, command }) => ({
538
- name,
539
- input_schema: schema,
540
- effects: command.effects,
541
- })),
542
- });
547
+ output(allOf(mcpTools(createProgram, { ...options, env }, selected(), policyFlags()).map(({ name, schema, command }) => ({ name, input_schema: schema, effects: command.effects }))));
543
548
  else
544
549
  await serveMcp(createProgram, { ...options, env, ...(activeSignal ? { signal: activeSignal } : {}) }, selected(), policyFlags());
545
550
  });
@@ -548,7 +553,7 @@ export const createProgram = (options = {}) => {
548
553
  "drive commands files copy --json",
549
554
  ])
550
555
  .argument("[path...]", "only this command or group, as words")
551
- .action((path) => output(commandsDocument(program, path)));
556
+ .action((path) => print((renderer) => renderer.result(commandsDocument(program, path))));
552
557
  for (const info of flatten(describeDriveProgram(program))) {
553
558
  let command = program;
554
559
  for (const part of info.path)
@@ -607,8 +612,6 @@ export const createProgram = (options = {}) => {
607
612
  state: "beta",
608
613
  });
609
614
  }
610
- class Preview extends Error {
611
- }
612
615
  const pathOf = (command) => {
613
616
  const path = [];
614
617
  for (let at = command; at?.parent; at = at.parent)
@@ -639,8 +642,8 @@ export const createProgram = (options = {}) => {
639
642
  const method = metadata.api_operation ?? rawMethod;
640
643
  if (rawMethod) {
641
644
  const descriptor = apiMethod(rawMethod);
642
- if (descriptor.mutates && !action.opts().allowWrite)
643
- throw new CliError("permission_error", "this method changes Google data; pass --allow-write", {
645
+ if (descriptor.mutates && !action.opts().allowWrites)
646
+ throw new CliError("permission_error", "this method changes Google data; pass --allow-writes", {
644
647
  reason: "write.not-allowed",
645
648
  });
646
649
  if (descriptor.destructive && !action.opts().allowDelete && !flags.allowDangerous)
@@ -660,7 +663,7 @@ export const createProgram = (options = {}) => {
660
663
  path[0] !== "api" &&
661
664
  !NETWORK_GROUPS.includes(path[0] ?? "") &&
662
665
  !["documents get", "documents create", "documents update", "documents history"].includes(words)) {
663
- output({ dry_run: true, command: words, effects: metadata.effects });
666
+ output(itemOf({ dry_run: true, command: words, effects: metadata.effects }));
664
667
  throw new Preview();
665
668
  }
666
669
  if (words === "session start")
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACrD,OAAO,EACL,QAAQ,EACR,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,QAAQ,EAER,cAAc,EACd,aAAa,GAId,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAA;AACvF,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAA;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAA;AACpD,OAAO,EAEL,YAAY,EACZ,MAAM,EACN,QAAQ,EACR,WAAW,EACX,aAAa,EACb,iBAAiB,EACjB,YAAY,GACb,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,oBAAoB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAA;AAC9D,OAAO,EACL,aAAa,EACb,WAAW,EACX,cAAc,EACd,SAAS,EACT,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACV,aAAa,EACb,WAAW,GACZ,MAAM,aAAa,CAAA;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,EAAiB,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AACvD,OAAO,EAAE,SAAS,EAAkB,SAAS,EAAE,MAAM,iBAAiB,CAAA;AACtE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAA;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,EAAsB,MAAM,EAAqB,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAA;AAClG,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,gBAAgB,EAAoB,MAAM,aAAa,CAAA;AACjG,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AAC7F,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACvG,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAA;AAC5D,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC/E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAetC,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,CAAC,CAAA;AACzF,MAAM,gBAAgB,GAAG,CAAC,aAAa,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,CAAC,CAAA;AACtF,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;IACjC,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACvB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,oBAAoB,CAAC,wBAAwB,CAAC,CAAA;IAC/F,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AACD,MAAM,MAAM,GAAG,CAAC,KAAa,EAAE,EAAE;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IACvB,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,MAAM,IAAI,oBAAoB,CAAC,2BAA2B,CAAC,CAAA;IAClG,OAAO,CAAC,CAAA;AACV,CAAC,CAAA;AACD,MAAM,QAAQ,GAAG,CAAC,IAAU,EAAE,MAAkC,EAAQ,EAAE,CACxE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;AACrG,MAAM,SAAS,GAAG,CAAC,IAAa,EAAE,KAAwB,EAAE,EAAE;IAC5D,IAAI,EAAE,GAAwB,IAAI,CAAA;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAQ;QAClC,MAAM,KAAK,GAAwB,EAAE,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAA;QAC1F,IAAI,KAAK;YAAE,EAAE,GAAG,KAAK,CAAA;IACvB,CAAC;IACD,OAAO,EAAE,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAA;AACrC,CAAC,CAAA;AACD,MAAM,OAAQ,SAAQ,KAAK;CAAG;AAC9B,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,OAAO,GAAmB,EAAE,EAAW,EAAE;IACrE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;IAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAA;IACtC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,cAAc,CAAA;IACjD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;SACjC,WAAW,CAAC,2EAA2E,CAAC;SACxF,OAAO,CAAC,OAAO,CAAC;SAChB,KAAK,CAAC,+BAA+B,CAAC;SACtC,MAAM,CAAC,kBAAkB,EAAE,iEAAiE,CAAC;SAC7F,MAAM,CAAC,QAAQ,EAAE,sEAAsE,CAAC;SACxF,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC;SACtD,MAAM,CAAC,SAAS,EAAE,+BAA+B,CAAC;SAClD,MAAM,CAAC,SAAS,EAAE,yDAAyD,CAAC;SAC5E,MAAM,CAAC,sBAAsB,EAAE,kCAAkC,EAAE,CAAC,GAAW,EAAE,EAAE,CAClF,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAChC;SACA,MAAM,CAAC,4BAA4B,EAAE,mDAAmD,EAAE,MAAM,EAAE,CAAC,GAAG,IAAI,GAAG,IAAI,CAAC;SAClH,MAAM,CAAC,aAAa,EAAE,mCAAmC,CAAC;SAC1D,MAAM,CAAC,WAAW,EAAE,mDAAmD,CAAC;SACxE,MAAM,CAAC,WAAW,EAAE,oDAAoD,CAAC;SACzE,MAAM,CAAC,OAAO,EAAE,gEAAgE,CAAC;SACjF,MAAM,CAAC,mBAAmB,EAAE,0CAA0C,CAAC;SACvE,MAAM,CACL,0BAA0B,EAC1B,+CAA+C,EAC/C,CAAC,KAAa,EAAE,QAAQ,GAAa,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,QAAQ,EAAE,KAAK,CAAC,CACjE,CAAA;IACH,OAAO;SACJ,eAAe,CAAC;QACf,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;QACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;QAC5C,WAAW,EAAE,GAAG,EAAE,CAAC,SAAS;KAC7B,CAAC;SACD,YAAY,EAAE,CAAA;IACjB,MAAM,QAAQ,GAAG,GAAW,EAAE;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAwB,CAAC,OAAO,CAAA;QACzD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAA;YAC5D,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,8FAA8F;gBAC5F,CAAC,OAAO,CAAC,MAAM;oBACb,CAAC,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBAC9C,CAAC,CAAC,mEAAmE,CAAC,EAC1E,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,OAAO,EAAE,CAClD,CAAA;QACH,CAAC;QACD,OAAO,WAAW,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC,CAAA;IACD,IAAI,aAAkC,CAAA;IACtC,IAAI,MAA0B,CAAA;IAC9B,IAAI,YAAY,GAAG,OAAO,CAAC,MAAM,CAAA;IACjC,IAAI,QAAuD,CAAA;IAC3D,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAA;IACvC,MAAM,OAAO,GAAG,KAAK,EAAE,GAAW,EAAE,EAAE;QACpC,IAAI,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAA;QACvC,MAAM,QAAQ,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAA;QACpD,IAAI,QAAQ;YAAE,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QACpC,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IACD,MAAM,WAAW,GAAG,GAAwC,EAAE,CAAC,CAAC;QAC9D,GAAG,OAAO,CAAC,IAAI,EAAE;QACjB,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,cAAc,IAAI,aAAa,EAAE,IAAI,EAAE,CAAC,WAAW;KACnF,CAAC,CAAA;IACF,MAAM,KAAK,GAAG,UAAU,EAAE,CAAA;IAC1B,MAAM,KAAK,GAAG,CAAC,MAA4E,EAAE,EAAE;QAC7F,MAAM,MAAM,GAAiB,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK;YAC/C,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;gBAC5C,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,QAAQ,CAAA;QACd,MAAM,MAAM,GAAG,kBAAkB,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,cAAc,EAAE,CAAC,CAAA;QACpF,MAAM,QAAQ,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAA;QAC1E,MAAM,CACJ,cAAc,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC,EACjG,MAAM,EACN,QAAQ,CACT,CAAA;QACD,MAAM,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5C,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,CAAC,IAAU,EAAE,EAAE;QAC5B,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;QACxD,MAAM,KAAK,GAAG;YACZ,GAAG,MAAM;YACT,IAAI,EAAE;gBACJ,MAAM,EAAE,KAAK;gBACb,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC;gBAC5D,QAAQ,EAAE,IAAI;gBACd,GAAG,IAAI,CAAC,IAAI;aACb;SACF,CAAA;QACD,IAAI,MAAM,IAAI,aAAa;YAAE,iBAAiB,CAAC,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,CAAA;QAC5E,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnD,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAE,aAAa,CAAC,KAAK,EAAE,KAAK,CAAkB,CAAC,CAAC,CAAC,KAAK,CAAA;QAC5E,KAAK,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,CACnC,YAAY,CAAC,aAAa,IAAI,OAAO,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,EAAE,MAAM,CAAC,CACxF,CAAA;IACH,CAAC,CAAA;IACD,MAAM,MAAM,GAAG,KAAK,IAAI,EAAE;QACxB,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;QACzE,MAAM,kBAAkB,CAAC,MAAM,CAAC,CAAA;QAChC,OAAO,YAAY,CAAC,MAAM,CAAC,CAAA;IAC7B,CAAC,CAAA;IACD,MAAM,SAAS,GAAG,KAAK,EAAK,EAAwC,EAAc,EAAE;QAClF,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAA;QACzD,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,CAAC,KAAK,CAAC,CAAA;QACxB,CAAC;gBAAS,CAAC;YACT,MAAM,KAAK,CAAC,KAAK,EAAE,CAAA;QACrB,CAAC;IACH,CAAC,CAAA;IACD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,6CAA6C,CAAC,CAAA;IACrG,QAAQ,CACN,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,qEAAqE,CAAC,EAC3G,CAAC,8BAA8B,EAAE,6CAA6C,CAAC,CAChF;SACE,MAAM,CAAC,sBAAsB,EAAE,uEAAuE,CAAC;SACvG,MAAM,CACL,gCAAgC,EAChC,gEAAgE,EAChE,SAAS,CACV;SACA,MAAM,CAAC,cAAc,EAAE,oDAAoD,CAAC;SAC5E,MAAM,CAAC,SAAS,EAAE,wDAAwD,CAAC;SAC3E,MAAM,CAAC,YAAY,EAAE,wDAAwD,CAAC;SAC9E,MAAM,CAAC,QAAQ,EAAE,qDAAqD,CAAC;SACvE,MAAM,CACL,KAAK,EAAE,IAON,EAAE,EAAE;QACH,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,IAAI,IAAI,CAAC,iBAAiB,KAAK,MAAM;YAC3E,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,uCAAuC,CAAC,CAAA;QACjF,MAAM,CACJ,MAAM,CACJ,MAAM,KAAK,CAAC;YACV,GAAG;YACH,OAAO,EAAE,QAAQ,EAAE;YACnB,WAAW,EAAE,WAAW,CAAC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC;YAC9C,OAAO,EAAE,IAAI,CAAC,iBAAiB;YAC/B,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,GAAE,CAAC;YACtF,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,wBAAwB,GAAG,IAAI,CAAC;SACtE,CAAC,CACH,CACF,CAAA;IACH,CAAC,CACF,CAAA;IACH,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,6DAA6D,CAAC,EAAE;QAC3G,6BAA6B;KAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CACb,MAAM,CACJ,MAAM,CAAC;QACL,KAAK,EAAE,yBAAyB;QAChC,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAClE,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;YAChC,OAAO,EAAE,CAAC,CAAC,OAAO;SACnB,CAAC,CAAC;KACJ,CAAC,CACH,CACF,CAAA;IACD,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,EAAE;QAC7F,4BAA4B;KAC7B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACxC,WAAW,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAC/D,0FAA0F;QAC1F,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACxB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;IAC9E,CAAC,CAAC,CAAA;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,WAAW,CAAC,mDAAmD,CAAC,CAAA;IAC3G,MAAM,cAAc,GAAG,+BAA+B,CAAA;IACtD,QAAQ,CACN,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;SACpC,WAAW,CAAC,0DAA0D,CAAC,EAC1E,CAAC,sCAAsC,CAAC,CACzC,CAAC,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE;QAC/B,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACpD,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,OAAO;YAC9C,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,2CAA2C,CAAC,CAAA;QACrF,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QACzE,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;QAC/B,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACxB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACvE,CAAC,CAAC,CAAA;IACF,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,kCAAkC,CAAC,EAAE;QAChF,6BAA6B;KAC9B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1F,QAAQ,CACN,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,UAAU,EAAE,cAAc,CAAC;SACpC,WAAW,CAAC,4DAA4D,CAAC,EAC5E,CAAC,yCAAyC,CAAC,CAC5C,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;QACzB,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACxC,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;QAC3D,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;QAC/B,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACxB,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IACvC,CAAC,CAAC,CAAA;IACF,QAAQ,CACN,OAAO;SACJ,OAAO,CAAC,MAAM,CAAC;SACf,OAAO,CAAC,0EAA0E,CAAC;SACnF,WAAW,CACV,4EAA4E;QAC1E,0BAA0B,WAAW,wDAAwD,CAChG,EACH,CAAC,qBAAqB,EAAE,0CAA0C,CAAC,CACpE;SACE,MAAM,CAAC,aAAa,EAAE,oDAAoD,EAAE,QAAQ,EAAE,GAAG,CAAC;SAC1F,MAAM,CAAC,UAAU,EAAE,6DAA6D,CAAC;SACjF,MAAM,CAAC,SAAS,EAAE,6EAA6E,CAAC;SAChG,MAAM,CAAC,KAAK,EAAE,IAA0D,EAAE,EAAE;QAC3E,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,MAAM,EAAE,CAAC,CAAC,CAAC,SAAS,CAAA;QACvF,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;YAC/C,GAAG,CAAC,MAAM,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;YACtF,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9D,CAAC,CAAC,CAAA;QACH,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAA;QACtB,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,OAAO;YACxC,OAAO,CAAC,UAAU,CAAC,GAAG,MAAM,CAAC,OAAO,wCAAwC,QAAQ,EAAE,eAAe,CAAC,CAAA;QACxG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM;YACtB,MAAM,IAAI,QAAQ,CAAC,gBAAgB,EAAE,4DAA4D,EAAE;gBACjG,MAAM,EAAE,cAAc;aACvB,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,yDAAyD,CAAC,EAAE;QACzG,uBAAuB;KACxB,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE;QACb,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAA;QACvB,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;QACxC,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QACrD,MAAM,CACJ,MAAM,CAAC;YACL,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,OAAO,CAAC,KAAK;YAC/B,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,MAAM;YAC9C,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC;YACxC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC;YACpC,SAAS,EAAE,KAAK,CAAC,QAAQ,IAAI,IAAI;YACjC,QAAQ,EACN,4HAA4H;YAC9H,cAAc,EAAE,KAAK;SACtB,CAAC,CACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,yCAAyC,CAAC,CAAA;IACrG,MAAM,gBAAgB,GAAG,gCAAgC,CAAA;IACzD,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,EAAE;QAChG,+BAA+B;QAC/B,4CAA4C;KAC7C,CAAC;SACC,MAAM,CAAC,aAAa,EAAE,8BAA8B,CAAC;SACrD,MAAM,CAAC,gBAAgB,EAAE,8DAA8D,CAAC;SACxF,MAAM,CAAC,KAAK,EAAE,IAAuC,EAAE,EAAE;QACxD,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAC3D,IAAI,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QACzC,MAAM,OAAO,GAAG;YACd,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC9G,CAAA;QACD,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,MAAM;YACzB,IAAI,GAAG,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACrC,IAAI,CAAC,KAAK,CAAC,SAAS;oBAAE,MAAM,IAAI,QAAQ,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAA;gBACxG,MAAM,QAAQ,GAAG,EAAE,CAAA;gBACnB,KAAK,MAAM,GAAG,IAAI,IAAI;oBACpB,IAAI,MAAM,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC;wBAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAClG,OAAO,QAAQ,CAAA;YACjB,CAAC,CAAC,CAAA;QACJ,MAAM,CACJ,KAAK,CACH,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YACjB,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC;YAC7B,SAAS,EAAE,GAAG,CAAC,SAAS;YACxB,IAAI,EAAE,GAAG,CAAC,IAAI;SACf,CAAC,CAAC,CACJ,CACF,CAAA;IACH,CAAC,CAAC,CAAA;IACJ,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAE,EAAE;QACjC,MAAM,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;QACxB,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;QAC9C,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,SAAS,CAAC,CAAA;QAC3D,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,MAAM,IAAI,QAAQ,CAAC,WAAW,EAAE,qDAAqD,EAAE;gBACrF,MAAM,EAAE,uBAAuB;aAChC,CAAC,CAAA;QACJ,MAAM,GAAG,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;QAC/B,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,EAAE,CAAA;IAChG,CAAC,CAAA;IACD,QAAQ,CACN,SAAS;SACN,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;SACxC,WAAW,CAAC,qDAAqD,CAAC,EACrE,CAAC,sCAAsC,CAAC,CACzC,CAAC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;QACzB,MAAM,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpC,MAAM,CACJ,MAAM,CAAC;YACL,QAAQ,EAAE,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACzC,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5D,CAAC,CACH,CAAA;IACH,CAAC,CAAC,CAAA;IACF,QAAQ,CACN,SAAS;SACN,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,YAAY,EAAE,gBAAgB,CAAC;SACxC,WAAW,CAAC,mDAAmD,CAAC,EACnE,CAAC,0DAA0D,CAAC,CAC7D;SACE,cAAc,CAAC,iBAAiB,EAAE,iEAAiE,CAAC;SACpG,MAAM,CAAC,CAAC,KAAa,EAAE,IAAwB,EAAE,EAAE;QAClD,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,CAAC;YACH,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAK,KAA+B,CAAC,IAAI,KAAK,QAAQ;gBACpD,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,yDAAyD,EAAE;oBAChG,MAAM,EAAE,eAAe;oBACvB,KAAK,EAAE,UAAU;iBAClB,CAAC,CAAA;YACJ,MAAM,KAAK,CAAA;QACb,CAAC;QACD,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC,CAAA;IAC/D,CAAC,CAAC,CAAA;IACJ,QAAQ,CACN,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,SAAS,EAAE,mBAAmB,CAAC;SACxC,WAAW,CAAC,iEAAiE,CAAC,EACjF,CAAC,8BAA8B,EAAE,0DAA0D,CAAC,CAC7F;SACE,MAAM,CAAC,aAAa,EAAE,4BAA4B,EAAE,QAAQ,EAAE,EAAE,CAAC;SACjE,MAAM,CAAC,YAAY,EAAE,sBAAsB,EAAE,QAAQ,EAAE,CAAC,CAAC;SACzD,MAAM,CAAC,SAAS,EAAE,oDAAoD,CAAC;SACvE,MAAM,CAAC,KAAK,EAAE,KAAa,EAAE,EAAE,IAAI,EAAE,GAAG,IAAI,EAAoD,EAAE,EAAE,CACnG,MAAM,CACJ,MAAM,CACJ,MAAM,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE,CACxB,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE;QAC5D,GAAG,IAAI;QACP,MAAM,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,KAAK;QAC1B,GAAG,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9D,CAAC,CACH,CACF,CACF,CACF,CAAA;IACH,sBAAsB,CAAC,OAAO,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAA;IACvF,wBAAwB,CAAC,OAAO,EAAE;QAChC,QAAQ,EAAE,QAAQ;QAClB,MAAM;QACN,QAAQ;QACR,QAAQ,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,IAAI,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,YAAY,CAAC;QAC9E,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;YACvB,MAAM,IAAI,GAAG,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;YAC/C,IAAI,CAAC;gBACH,OAAO,MAAM,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBACrC,IAAI,CAAC,UAAU,EAAE,CAAA;oBACjB,IAAI,CAAC,KAAK,CAAC,SAAS;wBAAE,MAAM,IAAI,QAAQ,CAAC,qBAAqB,EAAE,uCAAuC,CAAC,CAAA;oBACxG,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,SAAS,CAAA;oBAC1D,MAAM,KAAK,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAA;oBAChE,MAAM,GAAG,GAAG,KAAK,EAAE,GAAG,IAAI,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAA;oBAC7C,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,KAAK,CAAC,SAAS,EAAE,SAAS,EAAE,GAAG,CAAC,CAAA;oBACxD,IAAI,CAAC,UAAU,EAAE,CAAA;oBACjB,OAAO,MAAM,CAAA;gBACf,CAAC,CAAC,CAAA;YACJ,CAAC;oBAAS,CAAC;gBACT,MAAM,IAAI,CAAC,OAAO,EAAE,CAAA;YACtB,CAAC;QACH,CAAC;KACF,CAAC,CAAA;IACF,qBAAqB,CAAC,OAAO,EAAE;QAC7B,MAAM;QACN,QAAQ;QACR,QAAQ,EACN,OAAO,CAAC,QAAQ;YAChB,CAAC,CAAC,IAAI,EAAE,EAAE;gBACR,IAAI,CAAC;oBACH,OAAO,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAA;gBACnC,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,yCAAyC,EAAE;wBAChF,MAAM,EAAE,iBAAiB;wBACzB,KAAK,EAAE,aAAa;qBACrB,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC,CAAC;QACJ,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE;YACnC,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;YACpC,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;YACrC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAA;YAC3B,KAAK,MAAM,GAAG,IAAI,gBAAgB,CAAC,MAAM,CAAC;gBACxC,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;YAC7E,IAAI,KAAK,CAAC,OAAO;gBACf,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sDAAsD,EAAE;oBAC7F,MAAM,EAAE,iBAAiB;iBAC1B,CAAC,CAAA;YACJ,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,CACJ,MAAM,CAAC;oBACL,OAAO,EAAE,IAAI;oBACb,MAAM;oBACN,OAAO,EAAE,UAAU,CAAC,OAAO;oBAC3B,UAAU,EAAE,MAAM;oBAClB,aAAa,EAAE,IAAI,KAAK,SAAS;iBAClC,CAAC,CACH,CAAA;gBACD,MAAM,IAAI,OAAO,EAAE,CAAA;YACrB,CAAC;YACD,MAAM,GAAG,GAAG,KAAK,IAAI,EAAE;gBACrB,IAAI,CAAC;oBACH,IAAI,OAAO,CAAC,GAAG;wBAAE,OAAO,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;oBACpE,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;oBAC/E,MAAM,kBAAkB,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,CAAC,CAAA;oBAClD,OAAO,MAAM,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAA;gBAC3D,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,WAAW,CAAC,KAAK,CAAC,CAAA;gBAC1B,CAAC;YACH,CAAC,CAAA;YACD,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,OAAO,MAAM,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;QAC/G,CAAC;KACF,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,WAAW,CAAC,sDAAsD,CAAC,CAAA;IAC5G,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,EAAE;QAC7F,4BAA4B;KAC7B,CAAC,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAChD,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,qDAAqD,CAAC,EAAE;QACjG,0CAA0C;QAC1C,qEAAqE;KACtE,CAAC;SACC,QAAQ,CACP,OAAO,EACP,8GAA8G,CAC/G;SACA,QAAQ,CAAC,cAAc,EAAE,wBAAwB,CAAC;SAClD,MAAM,CAAC,YAAY,EAAE,6CAA6C,CAAC;SACnE,MAAM,CAAC,CAAC,MAAc,EAAE,GAAW,EAAE,IAA4B,EAAE,EAAE;QACpE,MAAM,GAAG,GAAG,SAAS,CAAC,MAAM,CAAC,CAAA;QAC7B,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC7B,IAAI,IAAI,CAAC,QAAQ;YAAE,KAAK,CAAC,QAAQ,KAAK,EAAE,CAAA;QACxC,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ;YAC1B,CAAC,CAAE,KAAK,CAAC,QAA+C;YACxD,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAA;QAClC,IAAI,CAAC,IAAI,CAAC,QAAQ;YAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,GAAG,MAAyC,CAAA;QAC1F,MAAM,CAAC,IAAI,EAAE,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvC,IACE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAE9E,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,4DAA4D,CAAC,CAAA;QACtG,IAAI,MAAe,CAAA;QACnB,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC1B,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,4BAA4B,CAAC,CAAA;QACtE,CAAC;QACD,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,QAAQ,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,SAAS;gBAC9D,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,kDAAkD,CAAC,CAC3F;YAAC,MAAuC,CAAC,cAAc,GAAG,MAAM,CAAA;QACnE,CAAC;aAAM,IAAI,IAAI,KAAK,gBAAgB,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;aAChG,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;aAC3D,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YAChC,MAAM,CAAC,WAAW,KAAK,EAAE,CAAA;YACzB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QAClE,CAAC;aAAM,IAAI,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3E,MAAM,CAAC,MAAM,KAAK,EAAE,CAAA;YACpB,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,EAAE,CAAA;YAC9B,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAW,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAA;QAC1E,CAAC;;YAAM,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sBAAsB,CAAC,CAAA;QACrE,WAAW,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;QACvB,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,oDAAoD,CAAC,EAAE;QACtG,oBAAoB;KACrB,CAAC;SACC,QAAQ,CAAC,YAAY,EAAE,kDAAkD,CAAC;SAC1E,kBAAkB,EAAE;SACpB,UAAU,CAAC,KAAK,CAAC;SACjB,MAAM,CAAC,KAAK,EAAE,KAAe,EAAE,EAAE;QAChC,IAAI,CAAE,OAA2C,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzE,IAAI,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,0BAA0B,CAAC,CAAA;YACpE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAA;YAC/C,MAAM,CAAC,KAAK,CAAC,CAAC,CAAU,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;QAC7C,CAAC;;YACC,OAAO,CAAC,IAAI,CACV,iBAAiB,CACf,OAAO,CAAC,EAAE,QAAQ,EAAE,oBAAoB,CAAC,OAAO,CAAC,EAAE,aAAa,EAAE,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,CAAC,CACrG,CACF,CAAA;IACL,CAAC,CAAC,CAAA;IACJ,QAAQ,CACN,OAAO;SACJ,OAAO,CAAC,QAAQ,CAAC;SACjB,WAAW,CAAC,kEAAkE,CAAC;SAC/E,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,wCAAwC,CAAC,EACxD,CAAC,8DAA8D,EAAE,0CAA0C,CAAC,CAC7G;SACE,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,EAAE,UAAU,CAAC;SACvE,SAAS,CACR,IAAI,MAAM,CAAC,uBAAuB,EAAE,wCAAwC,CAAC;SAC1E,OAAO,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;SACvC,mBAAmB,EAAE,CACzB;SACA,MAAM,CAAC,iBAAiB,EAAE,0BAA0B,CAAC;SACrD,MAAM,CAAC,kBAAkB,EAAE,mEAAmE,CAAC;SAC/F,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAA;QAC9B,MAAM,CAAC,QAAQ,KAAK,EAAE,CAAA;QACtB,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,EAAE,CAAA;QAC7B,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG;YACrC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpD,CAAA;QACD,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACxB,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAA;IAC7D,CAAC,CAAC,CAAA;IACJ,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,WAAW,CAAC,sDAAsD,CAAC,EAAE;QAC/G,oBAAoB;QACpB,4BAA4B;KAC7B,CAAC,CAAA;IACF,GAAG;SACA,MAAM,CAAC,SAAS,EAAE,uDAAuD,CAAC;SAC1E,MAAM,CAAC,KAAK,EAAE,IAAyB,EAAE,EAAE;QAC1C,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC,CAAA;QACvD,IAAI,IAAI,CAAC,KAAK;YACZ,MAAM,CACJ,KAAK,CACH,QAAQ,CAAC,aAAa,EAAE,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC,GAAG,CACzE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAC1F,CACF,CACF,CAAA;;YAED,MAAM,QAAQ,CACZ,aAAa,EACb,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EACtE,QAAQ,EAAE,EACV,WAAW,EAAE,CACd,CAAA;IACL,CAAC,CAAC,CAAA;IACJ,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,gDAAgD,CAAC,EAAE;QAClG,uBAAuB;QACvB,kCAAkC;KACnC,CAAC;SACC,QAAQ,CAAC,WAAW,EAAE,sCAAsC,CAAC;SAC7D,MAAM,CAAC,CAAC,IAAc,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;IACpG,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,GAAG,OAAO,CAAA;QACrB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,OAAO,CAAA;QAC1G,MAAM,WAAW,GAAG;YAClB,eAAe;YACf,aAAa;YACb,aAAa;YACb,gBAAgB;YAChB,MAAM;YACN,kBAAkB;YAClB,UAAU;YACV,aAAa;YACb,mBAAmB;YACnB,sBAAsB;YACtB,WAAW;YACX,YAAY;YACZ,cAAc;YACd,cAAc;YACd,kBAAkB;YAClB,gBAAgB;YAChB,kBAAkB;YAClB,WAAW;YACX,eAAe;YACf,iBAAiB;YACjB,YAAY;YACZ,YAAY;SACb,CAAA;QACD,MAAM,YAAY,GAAG;YACnB,UAAU;YACV,YAAY;YACZ,YAAY;YACZ,cAAc;YACd,aAAa;YACb,eAAe;YACf,aAAa;YACb,kBAAkB;YAClB,kBAAkB;SACnB,CAAA;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChC,MAAM,MAAM,GACV,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,KAAK,eAAe,IAAI,IAAI,KAAK,kBAAkB;YACpF,CAAC,CAAC,OAAO;YACT,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAC9E,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,MAAM,CAAA;QACd,QAAQ,CAAC,OAAO,EAAE;YAChB,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,IAAI,aAAa;YAC/C,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI;gBAClC,MAAM;gBACN,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAC/B,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC;wBACpD,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,MAAM;aACb;YACD,KAAK,EAAE,MAAM;SACd,CAAC,CAAA;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,OAAgB,EAAE,EAAE;QAClC,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,KAAK,IAAI,EAAE,GAAmB,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,MAAM;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1F,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IACD,OAAO,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE;QAChD,aAAa,GAAG,MAAM,CAAA;QACtB,iBAAiB,CACf,MAAM,EACN,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EACrE,OAAO,CAAC,MAAM,CAAC,KAAK,CACrB,CAAA;QACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;YACtD,QAAQ,GAAG,cAAc,CAAC;gBACxB,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,OAAO;gBACjC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtD,CAAC,CAAA;YACF,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAA;QAChC,CAAC;QACD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAC5B,uFAAuF;QACvF,IAAI,qBAAqB,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,OAAM;QAC5C,QAAQ,EAAE,CAAA;QACV,IAAI,CAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,OAAM;QACjG,MAAM,KAAK,GAAG,WAAW,EAAE,CAAA;QAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,SAAS,GAAG,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QACnE,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,IAAI,SAAS,CAAA;QAClD,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,UAAU,GAAG,SAAS,CAAC,SAAS,CAAC,CAAA;YACvC,IAAI,UAAU,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW;gBAClD,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,sDAAsD,EAAE;oBAC7F,MAAM,EAAE,mBAAmB;iBAC5B,CAAC,CAAA;YACJ,IAAI,UAAU,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,WAAW,IAAI,CAAC,KAAK,CAAC,cAAc;gBAC/E,MAAM,IAAI,QAAQ,CAChB,kBAAkB,EAClB,2EAA2E,EAC3E,EAAE,MAAM,EAAE,oBAAoB,EAAE,CACjC,CAAA;YACH,IAAI,KAAK,CAAC,cAAc;gBAAE,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;QACtE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC7E,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACrD,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAChE,MAAM,WAAW,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;QACzE,IAAI,KAAK,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC;YAClE,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,kEAAkE,EAAE;gBACzG,MAAM,EAAE,iBAAiB;aAC1B,CAAC,CAAA;QACJ,IACE,KAAK,CAAC,MAAM;YACZ,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK;YACjB,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,CAAC,CAAC,eAAe,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAC/F,CAAC;YACD,MAAM,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAA;YAC5E,MAAM,IAAI,OAAO,EAAE,CAAA;QACrB,CAAC;QACD,IAAI,KAAK,KAAK,eAAe;YAAE,iBAAiB,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IACF,MAAM,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IAC9C,OAAO,CAAC,UAAU,GAAG,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE;QAC3D,MAAM,MAAM,GAAG,QAAQ,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;QAChE,MAAM,IAAI,GAAG,QAAQ,EAAE,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAC7D,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;QAC9D,MAAM,SAAS,GAAG,QAAQ,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,kBAAkB,CAAC,CAAA;QACnG,MAAM,GAAG,SAAS,CAAC,MAAM,CAAA;QACzB,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,CAAA;QACpD,yFAAyF;QACzF,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAA;QAClH,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,WAAW,IAAI,GAAG,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAA;QAC5F,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC;YAC9D,MAAM,IAAI,QAAQ,CAAC,kBAAkB,EAAE,wDAAwD,CAAC,CAAA;QAClG,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;QACtG,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,KAAK,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,QAAQ,CAAC,CAAA;YACrD,OAAO,QAAQ,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM,OAAO,CAAA;QAC5E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,KAAK,YAAY,OAAO;gBAAE,OAAO,OAAO,CAAA;YAC5C,MAAM,KAAK,CAAA;QACb,CAAC;gBAAS,CAAC;YACT,QAAQ,EAAE,OAAO,EAAE,CAAA;QACrB,CAAC;IACH,CAAC,CAAA;IACD,kFAAkF;IAClF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,OAAO,GAAG,OAAO,CAAA;QACrB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,IAAI;YAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,OAAO,CAAA;QAC1G,OAAO,CAAC,aAAa,CAAC;YACpB,YAAY,EAAE,CAAC,MAAM,EAAE,EAAE;gBACvB,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,CAAA;gBAC7C,OAAO,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBACxD,CAAC,CAAC,KAAK;oBACP,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;YAClD,CAAC;SACF,CAAC,CAAA;QACF,OAAO,CAAC,YAAY,EAAE,CAAC,eAAe,CAAC;YACrC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YACtC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;YAC5C,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC;SACtB,CAAC,CAAA;IACJ,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC,CAAA"}
@@ -1,8 +1,9 @@
1
+ import { type Body } from "@wirecat/cli-core/cli";
1
2
  import type { Command } from "commander";
2
3
  export declare const jsonObject: (value: string) => Record<string, unknown>;
3
4
  export interface RemoteCommands {
4
5
  call(method: string, params: Record<string, unknown>, body?: Record<string, unknown>): Promise<unknown>;
5
- output(value: unknown): void;
6
+ output(body: Body): void;
6
7
  positive(input: string): number;
7
8
  readBody?: (path: string | number) => string;
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"remote-commands.d.ts","sourceRoot":"","sources":["../src/remote-commands.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAOxC,eAAO,MAAM,UAAU,UAAW,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAKhE,CAAA;AACD,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACvG,MAAM,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAA;IAC5B,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;CAC7C;AACD,eAAO,MAAM,qBAAqB,YAAa,OAAO,WAAW,cAAc,SA4R9E,CAAA"}
1
+ {"version":3,"file":"remote-commands.d.ts","sourceRoot":"","sources":["../src/remote-commands.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,KAAK,IAAI,EASV,MAAM,uBAAuB,CAAA;AAC9B,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAQxC,eAAO,MAAM,UAAU,UAAW,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAKhE,CAAA;AAuBD,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;IACvG,MAAM,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAA;IAC/B,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;CAC7C;AACD,eAAO,MAAM,qBAAqB,YAAa,OAAO,WAAW,cAAc,SA6T9E,CAAA"}