agent-screenplay 0.1.6 → 0.1.7

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.
@@ -1,6 +1,7 @@
1
1
  // The pill that tells the person at the Mac that Screenplay is driving it (and filming).
2
2
  // Run with `osascript -l JavaScript macos.js <label> <parent pid> [selftest]`.
3
- // It is left out of screen captures (NSWindowSharingNone), stays on top on every Space,
3
+ // It is left out of screen captures (NSWindowSharingNone: Screenplay films with screencapture,
4
+ // which honours it; ScreenCaptureKit, and so ffmpeg, films it anyway), stays on top on every Space,
4
5
  // never takes focus, and survives "Hide others". Stop exits with code 3; the pill also
5
6
  // quits by itself when the Screenplay process that started it is gone.
6
7
  ObjC.import("Cocoa");
@@ -1,11 +1,12 @@
1
+ import { type ChildProcess } from "node:child_process";
1
2
  import type { LoadedScenario } from "../scenario/load.js";
2
3
  import { SURFACES } from "../scenario/schema.js";
3
4
  import type { Take } from "../take.js";
4
5
  import { type CheckReport } from "./web.js";
5
6
  /**
6
7
  * Desktop apps: agent-desktop plays the steps through the OS accessibility
7
- * APIs (no real pointer moves), ffmpeg films the window without the system
8
- * cursor, and the shared editing step draws the cursor and zooms.
8
+ * APIs (no real pointer moves), screencapture (macOS) or ffmpeg films the
9
+ * window without the system cursor, and the shared editing step draws the cursor and zooms.
9
10
  */
10
11
  export interface DesktopRunOptions {
11
12
  mode: "record";
@@ -21,6 +22,17 @@ interface Envelope<T = any> {
21
22
  details?: unknown;
22
23
  };
23
24
  }
25
+ interface Win {
26
+ id: string;
27
+ title: string;
28
+ app_name: string;
29
+ bounds: {
30
+ x: number;
31
+ y: number;
32
+ width: number;
33
+ height: number;
34
+ };
35
+ }
24
36
  /** The error a run ends with when the person presses Stop on the pill. */
25
37
  export declare class StoppedError extends Error {
26
38
  constructor();
@@ -67,7 +79,48 @@ export interface Where {
67
79
  app?: string;
68
80
  surface?: Surface;
69
81
  }
82
+ type Bounds = Win["bounds"];
70
83
  export declare function normalizeCombo(combo: string): string;
84
+ /**
85
+ * Films a screen region without the system cursor. On macOS it uses `screencapture -v`, which
86
+ * leaves out windows marked as not shared (the recording pill): ffmpeg's capture goes through
87
+ * ScreenCaptureKit on recent macOS, which films them anyway. ffmpeg films on Windows and Linux,
88
+ * and on a Mac whose screencapture cannot record video.
89
+ */
90
+ export declare class Recorder {
91
+ private dir;
92
+ private proc?;
93
+ private mac?;
94
+ private t0;
95
+ /** The video file, once filming has started. */
96
+ file: string;
97
+ startedAt: number;
98
+ readonly fps = 30;
99
+ crop: {
100
+ x: number;
101
+ y: number;
102
+ width: number;
103
+ height: number;
104
+ };
105
+ constructor(dir: string);
106
+ start(area: Bounds, scale: number, t0: number): Promise<void>;
107
+ /** Starts `screencapture -v` on the area; false when it cannot record (it quit at once). */
108
+ private startScreencapture;
109
+ private startFfmpeg;
110
+ stop(): Promise<void>;
111
+ private stopScreencapture;
112
+ }
113
+ /**
114
+ * Asks a child process to stop (`ask`) and waits until it has; `force` runs if it is still there
115
+ * after `ms`. The timer is cleared once it ends, so it never keeps Screenplay running.
116
+ */
117
+ export declare function stopChild(proc: Pick<ChildProcess, "exitCode" | "signalCode" | "once">, ask: () => void, force: () => void, ms: number, event?: "exit" | "close"): Promise<void>;
118
+ /** Length and size of a video file, read from ffmpeg's description of it. */
119
+ export declare function parseVideoInfo(text: string): {
120
+ duration: number;
121
+ width: number;
122
+ height: number;
123
+ } | undefined;
71
124
  export declare function runDesktop(loaded: LoadedScenario, opts: DesktopRunOptions): Promise<Take>;
72
125
  export declare function checkDesktop(loaded: LoadedScenario, opts: {
73
126
  log?: (msg: string) => void;
@@ -5,7 +5,7 @@ import { execFile, spawn, spawnSync } from "node:child_process";
5
5
  import { promisify } from "node:util";
6
6
  import { describeStep, stepKind } from "../scenario/schema.js";
7
7
  import { parseTarget } from "../scenario/target.js";
8
- import { captureFfmpegPath } from "../ffmpeg.js";
8
+ import { captureFfmpegPath, ffmpegPath } from "../ffmpeg.js";
9
9
  import { cardDuration, travelDuration, typingDelays } from "./pace.js";
10
10
  import { showIndicator } from "./indicator.js";
11
11
  import { StepError, sleep } from "./web.js";
@@ -359,18 +359,69 @@ export function normalizeCombo(combo) {
359
359
  })
360
360
  .join("+");
361
361
  }
362
- /** Films a screen region with ffmpeg, without the system cursor. */
363
- class Recorder {
364
- file;
362
+ /**
363
+ * Films a screen region without the system cursor. On macOS it uses `screencapture -v`, which
364
+ * leaves out windows marked as not shared (the recording pill): ffmpeg's capture goes through
365
+ * ScreenCaptureKit on recent macOS, which films them anyway. ffmpeg films on Windows and Linux,
366
+ * and on a Mac whose screencapture cannot record video.
367
+ */
368
+ export class Recorder {
369
+ dir;
365
370
  proc;
371
+ mac;
372
+ t0 = 0;
373
+ /** The video file, once filming has started. */
374
+ file = "";
366
375
  startedAt = 0;
367
376
  fps = 30;
368
377
  crop = { x: 0, y: 0, width: 0, height: 0 };
369
- constructor(file) {
370
- this.file = file;
378
+ constructor(dir) {
379
+ this.dir = dir;
371
380
  }
372
381
  async start(area, scale, t0) {
382
+ this.t0 = t0;
383
+ if (process.platform === "darwin" && (await this.startScreencapture(area, scale)))
384
+ return;
385
+ await this.startFfmpeg(area, scale);
386
+ }
387
+ /** Starts `screencapture -v` on the area; false when it cannot record (it quit at once). */
388
+ async startScreencapture(area, scale) {
389
+ const file = path.join(this.dir, "capture.mov");
390
+ const spawnedAt = Date.now() / 1000 - this.t0;
391
+ let proc;
392
+ try {
393
+ // The whole main screen, cropped when editing: with -R (a region) it films the system cursor too.
394
+ proc = spawn("screencapture", ["-x", "-v", "-D", "1", file], { stdio: "ignore" });
395
+ }
396
+ catch {
397
+ return false;
398
+ }
399
+ // It prints nothing when it starts: if it is still running after a moment, it is filming.
400
+ const quit = await new Promise((resolve) => {
401
+ const timer = setTimeout(() => resolve(false), 700);
402
+ proc.once("error", () => (clearTimeout(timer), resolve(true)));
403
+ proc.once("exit", () => (clearTimeout(timer), resolve(true)));
404
+ });
405
+ if (quit) {
406
+ fs.rmSync(file, { force: true });
407
+ return false;
408
+ }
409
+ this.file = file;
410
+ this.mac = { proc, spawnedAt };
411
+ // Its first frame comes about 0.15 s after it starts; stop() measures it from the video's length.
412
+ this.startedAt = spawnedAt + 0.15;
413
+ this.crop = {
414
+ x: Math.round(area.x * scale),
415
+ y: Math.round(area.y * scale),
416
+ width: Math.round(area.width * scale) & ~1,
417
+ height: Math.round(area.height * scale) & ~1,
418
+ };
419
+ return true;
420
+ }
421
+ async startFfmpeg(area, scale) {
373
422
  const bin = captureFfmpegPath();
423
+ const t0 = this.t0;
424
+ this.file = path.join(this.dir, "capture.mp4");
374
425
  const W = Math.round(area.width * scale) & ~1;
375
426
  const H = Math.round(area.height * scale) & ~1;
376
427
  let input;
@@ -431,16 +482,61 @@ class Recorder {
431
482
  }
432
483
  }
433
484
  async stop() {
485
+ if (this.mac)
486
+ return this.stopScreencapture();
434
487
  if (!this.proc)
435
488
  return;
436
489
  const p = this.proc;
437
- await new Promise((resolve) => {
438
- p.on("close", () => resolve());
439
- p.stdin.write("q");
440
- setTimeout(() => p.kill("SIGINT"), 5000);
441
- });
490
+ this.proc = undefined;
491
+ await stopChild(p, () => p.stdin.write("q"), () => p.kill("SIGINT"), 5000, "close");
492
+ }
493
+ async stopScreencapture() {
494
+ const { proc, spawnedAt } = this.mac;
495
+ this.mac = undefined;
496
+ const stoppedAt = Date.now() / 1000 - this.t0;
497
+ await stopChild(proc, () => proc.kill("SIGINT"), () => proc.kill("SIGKILL"), 30_000);
498
+ const info = probeVideo(this.file);
499
+ if (!info)
500
+ throw new Error("Screen capture produced no video: check that your terminal may record the screen in System Settings → Privacy & Security → Screen Recording.");
501
+ // screencapture films until it is stopped, so the video ends when stop() was asked.
502
+ this.startedAt = Math.max(spawnedAt, stoppedAt - info.duration);
503
+ // Keep the crop inside the video (a window can stick out of the screen).
504
+ const c = this.crop;
505
+ const x = Math.max(0, Math.min(c.x, info.width - 2));
506
+ const y = Math.max(0, Math.min(c.y, info.height - 2));
507
+ this.crop = { x, y, width: Math.min(c.width, info.width - x) & ~1, height: Math.min(c.height, info.height - y) & ~1 };
442
508
  }
443
509
  }
510
+ /**
511
+ * Asks a child process to stop (`ask`) and waits until it has; `force` runs if it is still there
512
+ * after `ms`. The timer is cleared once it ends, so it never keeps Screenplay running.
513
+ */
514
+ export function stopChild(proc, ask, force, ms, event = "exit") {
515
+ return new Promise((resolve) => {
516
+ if (proc.exitCode !== null || proc.signalCode !== null)
517
+ return resolve();
518
+ const timer = setTimeout(force, ms);
519
+ proc.once(event, () => {
520
+ clearTimeout(timer);
521
+ resolve();
522
+ });
523
+ ask();
524
+ });
525
+ }
526
+ /** Length and size of a video file, read from ffmpeg's description of it. */
527
+ export function parseVideoInfo(text) {
528
+ const d = /Duration: (\d+):(\d+):(\d+(?:\.\d+)?)/.exec(text);
529
+ const s = /Stream #[^\n]*Video:[^\n]*?, (\d{2,5})x(\d{2,5})/.exec(text);
530
+ if (!d || !s)
531
+ return undefined;
532
+ return { duration: Number(d[1]) * 3600 + Number(d[2]) * 60 + Number(d[3]), width: Number(s[1]), height: Number(s[2]) };
533
+ }
534
+ function probeVideo(file) {
535
+ if (!fs.existsSync(file))
536
+ return undefined;
537
+ const r = spawnSync(ffmpegPath(), ["-hide_banner", "-i", file], { encoding: "utf8" });
538
+ return parseVideoInfo(r.stderr ?? "");
539
+ }
444
540
  function macScreenIndex(bin) {
445
541
  const r = spawnSync(bin, ["-hide_banner", "-f", "avfoundation", "-list_devices", "true", "-i", ""], { encoding: "utf8" });
446
542
  const m = /\[(\d+)\] Capture screen 0/.exec(r.stderr ?? "");
@@ -488,7 +584,7 @@ async function play(loaded, opts) {
488
584
  const W = ds.frame.width;
489
585
  const H = ds.frame.height;
490
586
  if (record) {
491
- recorder = new Recorder(path.join(takeDir, "capture.mp4"));
587
+ recorder = new Recorder(takeDir);
492
588
  await recorder.start(ds.frame, ds.scale, t0);
493
589
  await sleepIf(0.6);
494
590
  }
@@ -731,7 +827,7 @@ async function play(loaded, opts) {
731
827
  scale: ds.scale,
732
828
  duration,
733
829
  cursorStart,
734
- source: { kind: "video", file: "capture.mp4", fps: rec.fps, offset: rec.startedAt, crop: rec.crop },
830
+ source: { kind: "video", file: path.basename(rec.file), fps: rec.fps, offset: rec.startedAt, crop: rec.crop },
735
831
  steps,
736
832
  };
737
833
  return { take };
@@ -1 +1 @@
1
- {"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../src/drivers/desktop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../src/drivers/desktop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAA0D,MAAM,oBAAoB,CAAC;AACxH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AAEtC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAuB,MAAM,uBAAuB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EAAE,aAAa,EAAkB,MAAM,gBAAgB,CAAC;AAC/D,OAAO,EAAE,SAAS,EAAE,KAAK,EAA0C,MAAM,UAAU,CAAC;AAEpF,MAAM,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAChC,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AA2B/C,0EAA0E;AAC1E,MAAM,OAAO,YAAa,SAAQ,KAAK;IACrC;QACE,KAAK,CAAC,gGAAgG,CAAC,CAAC;IAC1G,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa;IAC3B,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAc,CAAC;IACtC,IAAI,MAA2B,CAAC;IAChC,MAAM,MAAM,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAC1D,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACvB,OAAO;QACL,IAAI,OAAO;YACT,OAAO,OAAO,CAAC;QACjB,CAAC;QACD,MAAM;QACN,IAAI;YACF,IAAI,OAAO;gBAAE,OAAO;YACpB,OAAO,GAAG,IAAI,CAAC;YACf,KAAK,MAAM,IAAI,IAAI,CAAC,GAAG,OAAO,CAAC;gBAAE,IAAI,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC,CAAC;QAC7B,CAAC;QACD,KAAK;YACH,IAAI,OAAO;gBAAE,MAAM,IAAI,YAAY,EAAE,CAAC;QACxC,CAAC;QACD,KAAK,CAAC,OAAe;YACnB,IAAI,OAAO,IAAI,OAAO,IAAI,CAAC;gBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;YACtD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,MAAM,IAAI,GAAG,GAAG,EAAE;oBAChB,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;oBACrB,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC;gBACF,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,YAAY;IACf,GAAG,CAAS;IACZ,OAAO,CAAU;IACjB,OAAO,GAAG,KAAK,CAAC;IAChB,KAAK,GAAG,IAAI,eAAe,EAAE,CAAC;IAEtC;QACE,IAAI,CAAC,GAAG,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAED,MAAM,CAAC,MAAM;QACX,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB;YAAE,OAAO,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QACtF,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;YAC1D,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAA8C,CAAC;YACnG,MAAM,GAAG,GAAG,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;YAClF,IAAI,GAAG;gBAAE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACtC,CAAC;QAAC,MAAM,CAAC;YACP,mCAAmC;QACrC,CAAC;QACD,MAAM,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,eAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;QACnH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACrE,MAAM,IAAI,KAAK,CAAC,2HAA2H,CAAC,CAAC;IAC/I,CAAC;IAED,+GAA+G;IAC/G,IAAI;QACF,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,IAAI,CAAU,IAAc,EAAE,IAAI,GAA4B,EAAE;QACpE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;QACtC,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,YAAY,EAAE,CAAC;QACtD,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,MAAM,CAAI,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACpF,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,YAAY,EAAE,CAAC;YACtD,OAAO,CAAC,CAAC;QACX,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,OAAO,IAAI,IAAI,CAAC,OAAO;gBAAE,MAAM,IAAI,YAAY,EAAE,CAAC;YACtD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,MAAM,CAAU,IAAc,EAAE,IAAI,GAA4B,EAAE,EAAE,MAAoB;QAC5F,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACjG,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC/C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAC/C,IAAI,MAAM,GAAG,EAAE,CAAC;QAChB,IAAI,CAAC;YACH,MAAM,CAAC,GAAG,MAAM,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;YAC7E,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QACpB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,GAAI,CAAyB,CAAC,MAAM,IAAI,EAAE,CAAC;YACjD,IAAI,CAAC,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,YAAa,CAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC3F,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,IAAI,IAAI,CAAgB,CAAC;QAChF,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,iBAAiB,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,IAAI,IAAI,OAAO,IAAI,IAAI,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;QAClH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,YAAY;QAChB,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,IAAI,CAAyB,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC;QAC9G,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,IAAK,CAAC,UAAU,CAAC;IACpC,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC3G,CAAC;CACF;AAED,iFAAiF;AACjF,MAAM,UAAU,SAAS,CAAC,MAAc;IACtC,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAC9B,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QACf,KAAK,MAAM;YACT,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;QACzF,KAAK,MAAM;YACT,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvC,KAAK,OAAO,CAAC;QACb,KAAK,aAAa;YAChB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvC,KAAK,QAAQ;YACX,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QACrC,KAAK,KAAK;YACR,MAAM,IAAI,KAAK,CAAC,6DAA6D,MAAM,KAAK,CAAC,CAAC;QAC5F,KAAK,IAAI;YACP,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;IACpD,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAW,EAAE,MAAc,EAAE,QAAiB;IACrE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;AACtG,CAAC;AAwBD,MAAM,cAAc;IAYP,MAAM;IAXjB,EAAE,GAAG,IAAI,YAAY,EAAE,CAAC;IACxB,oGAAoG;IACpG,GAAG,CAAU;IACb,0FAA0F;IAC1F,KAAK,CAAU;IACf,4CAA4C;IAC5C,GAAG,CAAO;IACV,KAAK,GAAG,CAAC,CAAC;IAEV,YACE,GAAuB,EACd,MAAe;sBAAf,MAAM;QAEf,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACjB,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,GAAwB,EAAE,IAAI,GAA6B,EAAE;QACtE,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACzD,MAAM,IAAI,KAAK,CACb,OAAO,CAAC,GAAG,CAAC,eAAe;gBACzB,CAAC,CAAC,+JAA+J;gBACjK,CAAC,CAAC,+EAA+E,CACpF,CAAC;QACJ,CAAC;QACD,MAAM,IAAI,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC;QAC7B,IAAI,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAY,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/E,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,IAAI;gBAAE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YACxD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YACzB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;YAC7B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ;oBAAE,GAAG,CAAC,6DAA6D,CAAC,CAAC;qBACjG,IAAI,CAAC,IAAI,CAAC,GAAG;oBAAE,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;qBACxG,CAAC;oBACJ,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC;oBAC9D,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnB,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC;YAC7B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC;YACrB,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzG,IAAI,CAAC,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED,0FAA0F;IAC1F,KAAK,CAAC,QAAQ,CAAC,GAAW,EAAE,GAAwB;QAClD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAoC,CAAC,WAAW,CAAC,CAAC,CAAC;QAClF,MAAM,KAAK,GAAG,IAAI,CAAC,IAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC;QACtF,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC,CAAC;YACxB,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC;YAClD,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC;YAClB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACjB,CAAC;;YAAM,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC;QAC7B,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,GAAG;YAAE,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;aACjG,IAAI,KAAK;YAAE,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,GAAW;QAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAQ,CAAC,cAAc,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QACvE,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1C,MAAM,CAAC,GAAG,CAA0D,CAAC;YACrE,OAAO,CAAC,CAAC,OAAO,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7C,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,GAAG,GAAG,yBAAyB,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAyC,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAC5F,CAAC;IAED,8BAA8B;IAC9B,MAAM,CAAC,KAAY;QACjB,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC;QAClC,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;QACxG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,GAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YAClE,MAAM,IAAI,KAAK,CAAC,wBAAwB,IAAI,CAAC,GAAG,6BAA6B,GAAG,kDAAkD,CAAC,CAAC;QACtI,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,qEAAqE;IACrE,KAAK,CAAC,KAAK,CAAC,KAAY;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,IAAI,QAAQ,CAAC;QAC1C,IAAI,OAAO,KAAK,QAAQ;YAAE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAI,CAAC,EAAE,CAAC;QACzE,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;IAC3C,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAc,EAAE,KAAK,GAAU,EAAE,EAAE,SAAS,GAAG,MAAM;QACjE,MAAM,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;QACzF,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,OAAO,IAAI,EAAE,CAAC;YACZ,IAAI,CAAmE,CAAC;YACxE,IAAI,CAAC;gBACH,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAChG,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,2CAA2C;gBAC3C,IAAI,CAAC,uBAAuB,CAAC,IAAI,CAAE,CAAW,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;oBAAE,MAAM,CAAC,CAAC;gBAC1F,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;gBACjB,SAAS;YACX,CAAC;YACD,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3C,IAAI,CAAC,EAAE,CAAC;gBACN,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;gBACjB,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAA2B,CAAC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;oBACvH,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;gBACzB,CAAC;gBACD,IAAI,CAAC,EAAE,CAAC;oBACN,OAAO;wBACL,GAAG,EAAE,CAAC,CAAC,MAAM,IAAI,SAAS;wBAC1B,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;qBACxF,CAAC;gBACJ,CAAC;YACH,CAAC;YACD,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,WAAW,CAAC;YACvC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ;gBAAE,MAAM;YACjC,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QACnB,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC/B,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QAC9F,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,cAAc,KAAK,aAAa,MAAM,MAAM,IAAI,IAAI,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACtH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAK,GAAU,EAAE;QAChC,MAAM,GAAG,GAAa,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC7D,IAAI,CAAC,KAAK;YAAE,OAAO,GAAG,CAAC;QACvB,KAAK,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,CAAC;YAClF,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAuD,CAAC,MAAM,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,EAAE;gBACtI,SAAS,EAAE,IAAI;aAChB,CAAC,CAAC;YACH,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE;gBAAE,IAAI,CAAC,CAAC,IAAI;oBAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvH,CAAC;QACD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAa,EAAE,IAAI,GAA0C,EAAE;QAC3E,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;YACZ,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,OAAO,CAAC;YAChF,MAAM,MAAM,GAAG,GAAG,KAAK,cAAc,IAAI,GAAG,KAAK,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YACnF,MAAM,CAAC,GAAG,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YACvF,+FAA+F;YAC/F,uEAAuE;YACvE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;gBACV,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,KAAK,eAAe;oBAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,GAAG,KAAK,CAAC,CAAC,KAAK,EAAE,IAAI,IAAI,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;gBAC7I,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;YACnE,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACpE,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAa,EAAE,KAAK,GAAU,EAAE;QAC1C,MAAM,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,KAAa;IAC1C,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,QAAQ,CAAC;IAC1C,OAAO,KAAK;SACT,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACjC,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,KAAK;YAAE,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC;QACjF,IAAI,CAAC,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACnC,IAAI,CAAC,KAAK,OAAO;YAAE,OAAO,QAAQ,CAAC;QACnC,IAAI,CAAC,KAAK,KAAK;YAAE,OAAO,QAAQ,CAAC;QACjC,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,OAAO,CAAC;QAC9B,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,OAAO,QAAQ;IAUC,GAAG;IATf,IAAI,CAAkC;IACtC,GAAG,CAA6C;IAChD,EAAE,GAAG,CAAC,CAAC;IACf,gDAAgD;IAChD,IAAI,GAAG,EAAE,CAAC;IACV,SAAS,GAAG,CAAC,CAAC;IACL,GAAG,GAAG,EAAE,CAAC;IAClB,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;IAE3C,YAAoB,GAAW;mBAAX,GAAG;IAAW,CAAC;IAEnC,KAAK,CAAC,KAAK,CAAC,IAAY,EAAE,KAAa,EAAE,EAAU;QACjD,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC;QACb,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAAE,OAAO;QAC1F,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,4FAA4F;IACpF,KAAK,CAAC,kBAAkB,CAAC,IAAY,EAAE,KAAa;QAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAC9C,IAAI,IAAkB,CAAC;QACvB,IAAI,CAAC;YACH,kGAAkG;YAClG,IAAI,GAAG,KAAK,CAAC,eAAe,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpF,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;QACD,0FAA0F;QAC1F,MAAM,IAAI,GAAG,MAAM,IAAI,OAAO,CAAU,CAAC,OAAO,EAAE,EAAE;YAClD,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,EAAE,CAAC;YACT,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QAC/B,kGAAkG;QAClG,IAAI,CAAC,SAAS,GAAG,SAAS,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,GAAG;YACV,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;YAC7B,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC;YAC7B,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1C,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;SAC7C,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,IAAY,EAAE,KAAa;QACnD,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAChC,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC;QAC/C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/C,IAAI,KAAe,CAAC;QACpB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YACrC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YACrC,KAAK,GAAG,CAAC,IAAI,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,aAAa,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACpJ,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAClD,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACxC,KAAK,GAAG;gBACN,IAAI;gBACJ,SAAS;gBACT,aAAa;gBACb,GAAG;gBACH,YAAY;gBACZ,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;gBAChB,WAAW;gBACX,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;gBAClC,WAAW;gBACX,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;gBAClC,aAAa;gBACb,GAAG,CAAC,IAAI,CAAC,EAAE;gBACX,IAAI;gBACJ,SAAS;aACV,CAAC;YACF,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QAClD,CAAC;aAAM,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC;YACnC,KAAK,GAAG,CAAC,IAAI,EAAE,cAAc,EAAE,iBAAiB,EAAE,GAAG,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO,CAAC,CAAC;YAC/G,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;QACpG,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,yCAAyC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpJ,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,iCAAiC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YAC9G,IAAI,CAAC,IAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE;gBACzC,GAAG,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;gBACpB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;oBAChD,mFAAmF;oBACnF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,GAAG,GAAG,CAAC;oBAC9C,YAAY,CAAC,KAAK,CAAC,CAAC;oBACpB,OAAO,EAAE,CAAC;gBACZ,CAAC;YACH,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,IAAK,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;gBAC9B,YAAY,CAAC,KAAK,CAAC,CAAC;gBACpB,IAAI,CAAC,IAAI,CAAC,SAAS;oBAAE,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,IAAI,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YAChG,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,mCAAmC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACnF,MAAM,IAAI,KAAK,CAAC,+GAA+G,CAAC,CAAC;QACnI,CAAC;IACH,CAAC;IAED,KAAK,CAAC,IAAI;QACR,IAAI,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC9C,IAAI,CAAC,IAAI,CAAC,IAAI;YAAE,OAAO;QACvB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QACtB,MAAM,SAAS,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACtF,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAAI,CAAC;QACtC,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC;QAC9C,MAAM,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC,CAAC;QACrF,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,8IAA8I,CAAC,CAAC;QAC3K,oFAAoF;QACpF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChE,yEAAyE;QACzE,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;QACpB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;IACxH,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS,CACvB,IAA4D,EAC5D,GAAe,EACf,KAAiB,EACjB,EAAU,EACV,KAAK,GAAqB,MAAM;IAEhC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI;YAAE,OAAO,OAAO,EAAE,CAAC;QACzE,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,EAAE;YACpB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;QACH,GAAG,EAAE,CAAC;IACR,CAAC,CAAC,CAAC;AACL,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,MAAM,CAAC,GAAG,uCAAuC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC7D,MAAM,CAAC,GAAG,kDAAkD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACzH,CAAC;AAED,SAAS,UAAU,CAAC,IAAY;IAC9B,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,MAAM,CAAC,GAAG,SAAS,CAAC,UAAU,EAAE,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IACtF,OAAO,cAAc,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;AACxC,CAAC;AAED,SAAS,cAAc,CAAC,GAAW;IACjC,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;IAC1H,MAAM,CAAC,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC5D,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;AACxB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,MAAsB,EAAE,IAAuB;IAC9E,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/G,OAAO,GAAG,CAAC,IAAK,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,MAAsB,EAAE,IAAqC;IAC9F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E,OAAO,GAAG,CAAC,KAAM,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,IAAI,CACjB,MAAsB,EACtB,IAA4E;IAE5E,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;IAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;IAC3B,MAAM,EAAE,GAAG,IAAI,cAAc,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC/B,IAAI,MAAM,EAAE,CAAC;QACX,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;IAC7B,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,GAAG,EAAE,CAAC;IACzC,8FAA8F;IAC9F,iGAAiG;IACjG,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAChC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,KAAK,EAAE,CAAS,EAAE,EAAE;QAClC,IAAI,MAAM;YAAE,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACnC,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IACF,IAAI,QAA8B,CAAC;IACnC,IAAI,IAA2B,CAAC;IAChC,MAAM,MAAM,GAAsB,EAAE,CAAC;IACrC,IAAI,CAAC;QACH,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QAC7D,IAAI,EAAE,CAAC,MAAM,IAAI,MAAM;YAAE,IAAI,CAAC,GAAG,CAAC,wFAAwF,CAAC,CAAC;QAC5H,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACzF,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACb,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;QACzB,MAAM,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1B,IAAI,MAAM,EAAE,CAAC;YACX,QAAQ,GAAG,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;YACjC,MAAM,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YAC7C,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;QACrB,CAAC;QACD,IAAI,MAAM,GAAU,EAAE,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC;QAChD,MAAM,WAAW,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QAClC,IAAI,SAA6B,CAAC;QAClC,MAAM,KAAK,GAAe,EAAE,CAAC;QAE7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,WAAW,EAAE,CAAC;YACd,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAA+B,CAAC;YAC7D,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC,CAAC;YAC7E,MAAM,EAAE,GAAa,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;YAChF,MAAM,KAAK,GAAU,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YAC9D,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAChD,MAAM,QAAQ,GAAG,KAAK,EAAE,GAAQ,EAAE,EAAE;gBAClC,MAAM,CAAC,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClE,EAAE,CAAC,WAAW,GAAG,GAAG,EAAE,CAAC;gBACvB,MAAM,OAAO,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzC,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC;gBACb,EAAE,CAAC,GAAG,GAAG,GAAG,CAAC;gBACb,MAAM,GAAG,CAAC,CAAC;YACb,CAAC,CAAC;YACF,MAAM,OAAO,GAAG,KAAK,EAAE,MAAc,EAAE,EAAE;gBACvC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;gBACjB,IAAI,CAAC;oBACH,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;oBAC1C,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG;wBAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;oBACjD,OAAO,CAAC,CAAC;gBACX,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,IAAI,CAAC,YAAY,SAAS;wBAAE,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC;oBAC3H,MAAM,CAAC,CAAC;gBACV,CAAC;YACH,CAAC,CAAC;YACF,IAAI,CAAC;gBACH,0FAA0F;gBAC1F,6FAA6F;gBAC7F,IAAI,EAAE,CAAC,MAAM,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,CAAC;oBAC9E,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;oBACjB,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACtC,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;oBACnB,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;oBAC3B,SAAS,GAAG,SAAS,CAAC,CAAC,iDAAiD;gBAC1E,CAAC;gBACD,iGAAiG;gBACjG,MAAM,IAAI,GAAG,CAAC,KAAK,IAAI,EAAE;oBACvB,QAAQ,IAAI,EAAE,CAAC;wBACb,KAAK,OAAO,CAAC;wBACb,KAAK,KAAK;4BACR,EAAE,CAAC,IAAI,GAAG;gCACR,IAAI;gCACJ,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC;gCACjB,QAAQ,EAAE,IAAI,CAAC,QAAQ;gCACvB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,CAAC;6BAC1F,CAAC;4BACF,MAAM;wBACR,KAAK,MAAM;4BACT,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,iFAAiF,CAAC,CAAC;wBACnH,KAAK,MAAM,EAAE,CAAC;4BACZ,IAAI,CAAC,EAAE,CAAC,MAAM;gCAAE,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,8DAA8D,CAAC,CAAC;4BAC9G,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;4BACjB,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;4BACvC,SAAS,GAAG,SAAS,CAAC,CAAC,iDAAiD;4BACxE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,mCAAmC;4BACvD,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;4BAC3B,MAAM;wBACR,CAAC;wBACD,KAAK,OAAO,CAAC;wBACb,KAAK,QAAQ,EAAE,CAAC;4BACd,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;4BACpC,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BACtB,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;4BACpB,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gCACtB,IAAI,CAAC,CAAC,CAAC,GAAG;oCAAE,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,0BAA0B,CAAC,CAAC;gCACtE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;4BACnD,CAAC;;gCAAM,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC,CAAC;4BACpF,IAAI,CAAC,CAAC,GAAG,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI;gCAAE,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC;4BACtE,MAAM;wBACR,CAAC;wBACD,KAAK,OAAO,EAAE,CAAC;4BACb,oGAAoG;4BACpG,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BACpC,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;4BACtB,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;4BACpB,IAAI,CAAC,CAAC,GAAG;gCAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;iCACrD,CAAC;gCACJ,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gCAC7D,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gCAC9D,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;4BACpE,CAAC;4BACD,MAAM;wBACR,CAAC;wBACD,KAAK,MAAM,EAAE,CAAC;4BACZ,IAAI,GAAG,GAAG,SAAS,CAAC;4BACpB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gCACd,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gCACnC,MAAM,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gCACtB,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;gCACpB,MAAM,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;gCACpB,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;gCACZ,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC;gCAClB,IAAI,IAAI,CAAC,KAAK,IAAI,GAAG;oCAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gCAC7E,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;4BACtB,CAAC;;gCAAM,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;4BAC3B,MAAM,IAAI,GAAW,IAAI,CAAC,IAAI,CAAC;4BAC/B,EAAE,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;4BACxD,MAAM,MAAM,GAAG,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;4BACpE,IAAI,CAAC,MAAM,EAAE,CAAC;gCACZ,IAAI,GAAG;oCAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;;oCAC1C,KAAK,MAAM,EAAE,IAAI,IAAI;wCAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;4BAC/E,CAAC;iCAAM,CAAC;gCACN,gFAAgF;gCAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oCACrC,WAAW,EAAE,CAAC;oCACd,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oCACnB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oCACtB,IAAI,GAAG;wCAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;;wCACxC,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;oCACtD,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;oCACvC,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;gCAChD,CAAC;4BACH,CAAC;4BACD,EAAE,CAAC,SAAS,GAAG,GAAG,EAAE,CAAC;4BACrB,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;gCAChB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;gCACpB,MAAM,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;4BAClC,CAAC;4BACD,MAAM;wBACR,CAAC;wBACD,KAAK,OAAO;4BACV,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;4BACpB,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;4BAClC,MAAM;wBACR,KAAK,QAAQ,EAAE,CAAC;4BACd,MAAM,CAAC,GAAG,IAAI,CAAC,MAAgB,CAAC;4BAChC,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;4BACjB,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gCAC/B,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAiC,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gCACzJ,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC;gCAClC,IAAI,CAAC,GAAG;oCAAE,MAAM,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,sCAAsC,CAAC,CAAC;gCAChF,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC,CAAC;4BACvE,CAAC;iCAAM,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;gCACzC,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;4BACtD,CAAC;iCAAM,CAAC;gCACN,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;gCAC3B,IAAI,CAAC,CAAC,GAAG;oCAAE,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;4BACzE,CAAC;4BACD,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;4BACnB,CAAC,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;4BACtC,MAAM;wBACR,CAAC;wBACD,KAAK,MAAM,EAAE,CAAC;4BACZ,MAAM,EAAE,GAAG,GAAG,EAAE,CAAC;4BACjB,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ;gCAAE,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;;gCACvD,MAAM,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;4BACrE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;4BAC3B,MAAM;wBACR,CAAC;wBACD,KAAK,OAAO;4BACV,MAAM,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;4BAC1B,MAAM;wBACR,KAAK,SAAS,CAAC;wBACf,KAAK,WAAW,CAAC;wBACjB,KAAK,QAAQ,EAAE,CAAC;4BACd,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;4BACpC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;4BACf,EAAE,CAAC,QAAQ,GAAG,GAAG,EAAE,CAAC;4BACpB,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;4BAC9E,MAAM,OAAO,CAAC,CAAC,GAAG,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;4BAClD,MAAM;wBACR,CAAC;oBACH,CAAC;gBACH,CAAC,CAAC,EAAE,CAAC;gBACL,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACrB,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;YAC7C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,WAAW,EAAE,CAAC;gBACd,MAAM,GAAG,GAAG,CAAC,YAAY,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,EAAE,KAAK,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;gBACvF,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC;oBAClG,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE;wBAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,CAAC;oBACtJ,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;gBACjD,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;YACD,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,MAAM,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;gBACxF,MAAM,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBACzD,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC;gBACjC,IAAI,OAAO,GAAG,WAAW;oBAAE,MAAM,OAAO,CAAC,WAAW,GAAG,OAAO,CAAC,CAAC;YAClE,CAAC;YACD,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YACpC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QACD,WAAW,EAAE,CAAC;QACd,IAAI,CAAC,MAAM;YAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC;QAE3D,MAAM,OAAO,CAAC,CAAC,CAAC,CAAC;QACjB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,QAAS,CAAC;QACtB,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACjB,QAAQ,GAAG,SAAS,CAAC;QACrB,MAAM,IAAI,GAAS;YACjB,OAAO,EAAE,CAAC;YACV,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACpC,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,IAAI,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YAC5F,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,CAAC;YACT,KAAK,EAAE,EAAE,CAAC,KAAK;YACf,QAAQ;YACR,WAAW;YACX,MAAM,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE;YAC7G,KAAK;SACN,CAAC;QACF,OAAO,EAAE,IAAI,EAAE,CAAC;IAClB,CAAC;YAAS,CAAC;QACT,IAAI,EAAE,KAAK,EAAE,CAAC;QACd,MAAM,QAAQ,EAAE,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvC,MAAM,EAAE,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC"}
package/dist/version.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const VERSION = "0.1.6";
1
+ export declare const VERSION = "0.1.7";
package/dist/version.js CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = "0.1.6";
1
+ export const VERSION = "0.1.7";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agent-screenplay",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "mcpName": "io.github.gmpetrov/agent-screenplay",
5
5
  "description": "Screen Studio-quality screen recordings for AI agents: write a scenario, Screenplay films it and edits it (smooth cursor, auto-zoom, callouts, voice-over).",
6
6
  "license": "MIT",