@monotykamary/localterm-server 2.29.0 → 2.31.0

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,5 +1,7 @@
1
+ import { randomBytes } from "node:crypto";
1
2
  import path from "node:path";
2
- import { MAX_CONCURRENT_SESSIONS, MAX_OUTPUT_BYTES, OUTPUT_BATCH_FLUSH_BYTES, OUTPUT_BATCH_WINDOW_MS, SESSION_ACTIVITY_WINDOW_MS, SESSION_GRACE_MS, SESSION_PENDING_PROMOTE_TIMEOUT_MS, WS_BACKPRESSURE_THRESHOLD_BYTES, WS_CLOSE_BACKPRESSURE, WS_OUTBOUND_DRAIN_POLL_MS, WS_OUTBOUND_PAUSE_HIGH_WATER_BYTES, WS_OUTBOUND_RESUME_LOW_WATER_BYTES, WS_READY_STATE_OPEN, } from "./constants.js";
3
+ import { CaptureRenderer } from "./capture-renderer.js";
4
+ import { CAPTURE_PANE_MAX_LINES, EXEC_DEFAULT_OUTPUT_LIMIT_BYTES, EXEC_DEFAULT_TIMEOUT_MS, EXEC_EPHEMERAL_SCROLLBACK, EXEC_MAX_OUTPUT_LIMIT_BYTES, EXEC_MAX_TIMEOUT_MS, EXEC_RAW_ACCUMULATE_CAP_BYTES, EXEC_TIMEOUT_INTERRUPT_GRACE_MS, MAX_CONCURRENT_SESSIONS, MAX_OUTPUT_BYTES, OUTPUT_BATCH_FLUSH_BYTES, OUTPUT_BATCH_WINDOW_MS, SESSION_ACTIVITY_WINDOW_MS, SESSION_GRACE_MS, SESSION_PENDING_PROMOTE_TIMEOUT_MS, WS_BACKPRESSURE_THRESHOLD_BYTES, WS_CLOSE_BACKPRESSURE, WS_OUTBOUND_DRAIN_POLL_MS, WS_OUTBOUND_PAUSE_HIGH_WATER_BYTES, WS_OUTBOUND_RESUME_LOW_WATER_BYTES, WS_READY_STATE_OPEN, } from "./constants.js";
3
5
  import { GitDiffWatcher, GIT_DIFF_WATCHER_EVENT_NAMES, } from "./git-diff-watcher.js";
4
6
  import { GitMetadataCoordinator } from "./git-metadata-coordinator.js";
5
7
  import { Session } from "./session.js";
@@ -24,13 +26,13 @@ export class SessionManager {
24
26
  coordinatorsByCwd = new Map();
25
27
  hooks;
26
28
  sendControl;
27
- graceMs;
29
+ getGraceMs;
28
30
  pendingPromoteTimeoutMs;
29
31
  shimsDir;
30
32
  constructor(options) {
31
33
  this.hooks = options.hooks;
32
34
  this.sendControl = options.sendControl;
33
- this.graceMs = options.graceMs ?? SESSION_GRACE_MS;
35
+ this.getGraceMs = options.getGraceMs ?? (() => SESSION_GRACE_MS);
34
36
  this.pendingPromoteTimeoutMs =
35
37
  options.pendingPromoteTimeoutMs ?? SESSION_PENDING_PROMOTE_TIMEOUT_MS;
36
38
  this.shimsDir = options.shimsDir;
@@ -42,7 +44,10 @@ export class SessionManager {
42
44
  if (this.sessions.size < MAX_CONCURRENT_SESSIONS)
43
45
  return false;
44
46
  for (const managed of this.sessions.values()) {
45
- if (managed.clients.size === 0)
47
+ // A dormant, non-pinned session can be evicted to make room. Pinned
48
+ // sessions hold their slots (never silently reaped), so a full cap of
49
+ // pinned sessions surfaces a real capacity error instead of a steal.
50
+ if (managed.clients.size === 0 && !managed.pinned)
46
51
  return false;
47
52
  }
48
53
  return true;
@@ -77,6 +82,7 @@ export class SessionManager {
77
82
  lastOutputAt: managed.lastOutputAt,
78
83
  clients: managed.clients.size,
79
84
  state: this.computeState(managed),
85
+ pinned: managed.pinned,
80
86
  }));
81
87
  }
82
88
  // Every live PTY whose current cwd is inside `targetPath` (or equals it). A
@@ -154,6 +160,8 @@ export class SessionManager {
154
160
  hasForeground: false,
155
161
  graceTimer: null,
156
162
  parkedAt: null,
163
+ pinned: false,
164
+ captureRenderer: undefined,
157
165
  ptySizeCols: null,
158
166
  ptySizeRows: null,
159
167
  ptySizeWasMultiViewer: false,
@@ -348,6 +356,218 @@ export class SessionManager {
348
356
  this.coordinatorsByCwd.clear();
349
357
  this.lastOutputAtByPid.clear();
350
358
  }
359
+ // Spawn a PTY with no attached WebSocket — the REST/CLI path (POST /api/sessions,
360
+ // `localterm session new`, the one-shot exec helper). `pinned` controls the
361
+ // idle-reap policy: a pinned session (the REST default) lives until explicitly
362
+ // killed or its shell exits; an unpinned one enters the no-clients grace window
363
+ // immediately (it has no viewer to detach from), matching a browser tab nobody
364
+ // opened. Returns the session id, or null at the capacity cap.
365
+ spawnDetached(input, pinned) {
366
+ const managed = this.spawn(input);
367
+ if (!managed)
368
+ return null;
369
+ managed.pinned = pinned;
370
+ // A detached session has no client to detach from, so arm the grace now (a
371
+ // no-op arm when pinned — startGrace parks it indefinitely instead).
372
+ if (managed.clients.size === 0 && !managed.session.isExited)
373
+ this.startGrace(managed);
374
+ return managed.id;
375
+ }
376
+ // Write input to a session by id — the REST/CLI send-keys path. Unlike the
377
+ // WebSocket `writeInput`, there's no pending-client handshake to promote; the
378
+ // bytes go straight to the PTY. Returns false for an unknown/exited session.
379
+ writeInputById(id, data) {
380
+ const managed = this.sessions.get(id);
381
+ if (!managed || managed.session.isExited)
382
+ return false;
383
+ managed.session.write(data);
384
+ return true;
385
+ }
386
+ // Resize a session by id — the REST/CLI resize path for detached sessions
387
+ // (those with no WebSocket client to drive recomputeResize). Also keeps the
388
+ // capture renderer's grid in sync. Returns false for an unknown/exited session.
389
+ resizeById(id, cols, rows) {
390
+ const managed = this.sessions.get(id);
391
+ if (!managed || managed.session.isExited)
392
+ return false;
393
+ managed.session.resize(cols, rows);
394
+ managed.captureRenderer?.resize(cols, rows);
395
+ return true;
396
+ }
397
+ // Read the session's rendered screen as clean text (ANSI processed by the
398
+ // headless emulator) — the tmux `capture-pane -p` equivalent. `lines` defaults
399
+ // to the visible viewport and may extend into scrollback up to
400
+ // CAPTURE_PANE_MAX_LINES. Returns null for an unknown/exited session. Awaits
401
+ // the renderer's pending writes so the read never lands before a parse.
402
+ async capturePane(id, lines) {
403
+ const managed = this.sessions.get(id);
404
+ if (!managed || managed.session.isExited)
405
+ return null;
406
+ const capped = lines && lines > 0 ? Math.min(lines, CAPTURE_PANE_MAX_LINES) : undefined;
407
+ const renderer = await this.ensureCaptureRenderer(managed);
408
+ return renderer.capture(capped);
409
+ }
410
+ // Toggle a session's pinned flag — PATCH /api/sessions/:id. Re-arms (or
411
+ // cancels) the grace timer live for a dormant session so the change takes
412
+ // effect immediately, not on the next detach. Returns false for an unknown id.
413
+ setPinned(id, pinned) {
414
+ const managed = this.sessions.get(id);
415
+ if (!managed)
416
+ return false;
417
+ managed.pinned = pinned;
418
+ if (managed.clients.size === 0 && !managed.session.isExited)
419
+ this.startGrace(managed);
420
+ return true;
421
+ }
422
+ // Rename a session — PATCH /api/sessions/:id. The shell's next OSC title or
423
+ // cwd-derived title overwrites it (as in tmux), but until then the picker and a
424
+ // fresh attach see the renamed title. Returns false for an unknown id.
425
+ setTitleById(id, title) {
426
+ const managed = this.sessions.get(id);
427
+ if (!managed)
428
+ return false;
429
+ managed.session.setTitle(title);
430
+ return true;
431
+ }
432
+ // Lazily create (and prime) a session's capture renderer. Fed the scrollback
433
+ // snapshot at creation so it catches up on recent history before the renderer
434
+ // existed, then kept alive and fed live output by onSessionOutput. Awaits the
435
+ // snapshot's async parse so the first capture-pane read lands on a populated
436
+ // grid instead of a blank one (xterm parses `write` on a timer).
437
+ async ensureCaptureRenderer(managed) {
438
+ if (managed.captureRenderer)
439
+ return managed.captureRenderer;
440
+ const renderer = new CaptureRenderer(managed.session.cols, managed.session.rows);
441
+ const snapshot = managed.session.snapshotScrollback();
442
+ if (snapshot)
443
+ renderer.write(snapshot);
444
+ await renderer.flush();
445
+ managed.captureRenderer = renderer;
446
+ return renderer;
447
+ }
448
+ // Run a single shell command line inside a persistent session, capture its
449
+ // rendered output, and return its exit code — the blocking tmux send-keys +
450
+ // capture-pane replacement for agents. The command and its completion marker
451
+ // are written on ONE input line (`;`-chained) so `$?` is the command's exit
452
+ // before the next prompt's precmd hooks reset it. A start/end marker pair
453
+ // brackets the output in the rendered grid; the marker lines themselves are
454
+ // stripped. A timeout interrupts a hung command (Ctrl-C) and returns partial
455
+ // output. `command` must be a single line — for multi-line logic, write a
456
+ // script and exec `bash script.sh`.
457
+ async execInSession(id, command, options = {}) {
458
+ const managed = this.sessions.get(id);
459
+ if (!managed || managed.session.isExited)
460
+ return null;
461
+ const session = managed.session;
462
+ const timeoutMs = this.clampInt(options.timeoutMs ?? EXEC_DEFAULT_TIMEOUT_MS, 1, EXEC_MAX_TIMEOUT_MS);
463
+ const outputLimit = this.clampInt(options.outputLimitBytes ?? EXEC_DEFAULT_OUTPUT_LIMIT_BYTES, 1, EXEC_MAX_OUTPUT_LIMIT_BYTES);
464
+ const token = randomBytes(8).toString("hex");
465
+ const startMarker = `__LT_S_${token}__`;
466
+ const endMarkerPrefix = `__LT_E_${token}__`;
467
+ const endPattern = new RegExp(`${endMarkerPrefix} (\\d+)`);
468
+ const cmd = command.trim() || ":";
469
+ const wrapped = `printf '${startMarker}\\n'; ${cmd}; printf '${endMarkerPrefix} %d\\n' "$?"`;
470
+ const startedAt = Date.now();
471
+ let accumulated = "";
472
+ let capped = false;
473
+ let exitCode = null;
474
+ let didTimeout = false;
475
+ let resolved = false;
476
+ let timeoutHandle = null;
477
+ let interruptHandle = null;
478
+ return new Promise((resolve) => {
479
+ const finalize = async (finalExit, finalTimedOut) => {
480
+ if (resolved)
481
+ return;
482
+ resolved = true;
483
+ if (timeoutHandle)
484
+ clearTimeout(timeoutHandle);
485
+ if (interruptHandle)
486
+ clearTimeout(interruptHandle);
487
+ session.off("output", onOutput);
488
+ session.off("exit", onExit);
489
+ resolve(await this.buildExecResult(session.cols, session.rows, accumulated, startMarker, endMarkerPrefix, finalExit, finalTimedOut, outputLimit, startedAt));
490
+ };
491
+ const onOutput = (data) => {
492
+ if (!capped) {
493
+ if (accumulated.length + data.length <= EXEC_RAW_ACCUMULATE_CAP_BYTES) {
494
+ accumulated += data;
495
+ }
496
+ else {
497
+ const room = EXEC_RAW_ACCUMULATE_CAP_BYTES - accumulated.length;
498
+ if (room > 0)
499
+ accumulated += data.slice(0, room);
500
+ capped = true;
501
+ }
502
+ }
503
+ // Once the timeout has fired we've committed to a timed-out result; a
504
+ // marker arriving during the interrupt grace (Ctrl-C kills the command,
505
+ // the trailing `printf END $?` runs with the interrupt exit code) is
506
+ // ignored so the call resolves as timed out, not as a normal completion.
507
+ if (didTimeout)
508
+ return;
509
+ const match = accumulated.match(endPattern);
510
+ if (match) {
511
+ exitCode = Number.parseInt(match[1], 10);
512
+ finalize(exitCode, false);
513
+ }
514
+ };
515
+ const onExit = (code) => {
516
+ exitCode = code;
517
+ finalize(code, false);
518
+ };
519
+ session.on("output", onOutput);
520
+ session.on("exit", onExit);
521
+ timeoutHandle = setTimeout(() => {
522
+ // Commit to a timed-out result: the command didn't finish within
523
+ // timeoutMs. Send Ctrl-C to interrupt it (so the session returns to a
524
+ // prompt for a follow-up call), then resolve after a short grace so any
525
+ // output already in flight is captured into the partial result. A marker
526
+ // arriving during the grace is ignored (see onOutput).
527
+ didTimeout = true;
528
+ session.write("\x03");
529
+ interruptHandle = setTimeout(() => finalize(null, true), EXEC_TIMEOUT_INTERRUPT_GRACE_MS);
530
+ interruptHandle.unref?.();
531
+ }, timeoutMs);
532
+ timeoutHandle.unref?.();
533
+ // A client sending input is live; for a detached session there's no
534
+ // pending handshake, so the bytes reach the PTY directly.
535
+ session.write(`${wrapped}\r`);
536
+ });
537
+ }
538
+ async buildExecResult(cols, rows, accumulated, startMarker, endMarkerPrefix, exitCode, timedOut, outputLimit, startedAt) {
539
+ // Render the captured raw stream through a fresh headless terminal and slice
540
+ // between the start/end marker rows for clean, ANSI-processed text. A fresh
541
+ // (not the persistent) renderer so this exec's output is isolated and the
542
+ // markers are always near the bottom of the buffer.
543
+ const renderer = new CaptureRenderer(cols, rows, EXEC_EPHEMERAL_SCROLLBACK);
544
+ let output;
545
+ try {
546
+ renderer.write(accumulated);
547
+ await renderer.flush();
548
+ const endRow = exitCode !== null && !timedOut ? renderer.findRow(`${endMarkerPrefix} ${exitCode}`) : -1;
549
+ const startRow = renderer.findRow(startMarker);
550
+ output = renderer.extractBetween(startRow, endRow);
551
+ }
552
+ finally {
553
+ renderer.dispose();
554
+ }
555
+ const textBytes = Buffer.byteLength(output, "utf8");
556
+ const truncated = textBytes > outputLimit;
557
+ if (truncated) {
558
+ output = Buffer.from(output, "utf8").subarray(0, outputLimit).toString("utf8");
559
+ }
560
+ return {
561
+ exitCode,
562
+ output,
563
+ timedOut,
564
+ truncated,
565
+ durationMs: Date.now() - startedAt,
566
+ };
567
+ }
568
+ clampInt(value, min, max) {
569
+ return Math.min(Math.max(Math.trunc(value), min), max);
570
+ }
351
571
  sendScrollback(ws, managed) {
352
572
  const snapshot = managed.session.snapshotScrollback();
353
573
  if (!snapshot)
@@ -400,6 +620,10 @@ export class SessionManager {
400
620
  managed.lastOutputAt = Date.now();
401
621
  this.noteOutput(managed.session.pid);
402
622
  this.hooks.onOutputActivity();
623
+ // Keep the capture renderer (if one exists) in lockstep with the PTY so a
624
+ // later capture-pane reads current rendered text. Lazily created, so this
625
+ // is a no-op for sessions nobody has captured (the common browser case).
626
+ managed.captureRenderer?.write(data);
403
627
  if (managed.outputBatch.length >= OUTPUT_BATCH_FLUSH_BYTES) {
404
628
  if (managed.outputBatchTimer !== null) {
405
629
  clearTimeout(managed.outputBatchTimer);
@@ -500,6 +724,9 @@ export class SessionManager {
500
724
  else {
501
725
  session.resize(cols, rows);
502
726
  }
727
+ // Keep the capture renderer's grid at the PTY's effective size so a
728
+ // capture-pane reflects the same line wrapping a viewer would see.
729
+ managed.captureRenderer?.resize(cols, rows);
503
730
  // The PTY's effective size is the min across attached clients (tmux-style):
504
731
  // a narrower peer constrains everyone. Broadcast it on change so each
505
732
  // viewer can mask the dead area beyond its own (possibly wider) grid as
@@ -613,6 +840,8 @@ export class SessionManager {
613
840
  managed.graceTimer = null;
614
841
  }
615
842
  managed.parkedAt = null;
843
+ managed.captureRenderer?.dispose();
844
+ managed.captureRenderer = undefined;
616
845
  if (managed.outputBatchTimer !== null) {
617
846
  clearTimeout(managed.outputBatchTimer);
618
847
  managed.outputBatchTimer = null;
@@ -648,6 +877,9 @@ export class SessionManager {
648
877
  for (const managed of this.sessions.values()) {
649
878
  if (managed.clients.size > 0)
650
879
  continue;
880
+ // Pinned sessions are never silently evicted — they're explicitly held.
881
+ if (managed.pinned)
882
+ continue;
651
883
  // Evict the parked session whose grace fires soonest (armed earliest); a
652
884
  // parked session with no timer is a fresh spawn nobody attached yet —
653
885
  // yield it only after all armed ones.
@@ -663,6 +895,17 @@ export class SessionManager {
663
895
  startGrace(managed) {
664
896
  this.cancelGrace(managed);
665
897
  managed.parkedAt = Date.now();
898
+ // Pinned sessions park indefinitely — never reaped by the idle grace and
899
+ // never evicted at the cap. They live until an explicit kill or shell exit.
900
+ if (managed.pinned)
901
+ return;
902
+ const graceMs = this.getGraceMs();
903
+ // "Never reap": park the shell with no timer. It lingers until a viewer
904
+ // reattaches, it's killed from the switcher, the shell exits, or it's
905
+ // evicted at MAX_CONCURRENT_SESSIONS. parkedAt stays set so eviction
906
+ // ordering still treats it as dormant.
907
+ if (graceMs === null)
908
+ return;
666
909
  managed.graceTimer = setTimeout(() => {
667
910
  managed.graceTimer = null;
668
911
  managed.parkedAt = null;
@@ -679,9 +922,19 @@ export class SessionManager {
679
922
  }
680
923
  this.tearDown(managed);
681
924
  this.hooks.onSessionActivity();
682
- }, this.graceMs);
925
+ }, graceMs);
683
926
  managed.graceTimer.unref?.();
684
927
  }
928
+ // Re-arm every parked session's grace timer with the current grace value.
929
+ // Called after a `PUT /api/config` grace change so it takes effect on shells
930
+ // that are already dormant, not only the next detach: a finite value arms (or
931
+ // resets) their timers, and `null` cancels them so they park indefinitely.
932
+ rearmGrace() {
933
+ for (const managed of this.sessions.values()) {
934
+ if (managed.clients.size === 0 && !managed.session.isExited)
935
+ this.startGrace(managed);
936
+ }
937
+ }
685
938
  cancelGrace(managed) {
686
939
  if (managed.graceTimer !== null) {
687
940
  clearTimeout(managed.graceTimer);
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.js","sourceRoot":"","sources":["../src/session-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EACL,sBAAsB,EACtB,+BAA+B,EAC/B,uBAAuB,EACvB,yBAAyB,EACzB,2BAA2B,EAC3B,mBAAmB,EACnB,6BAA6B,EAC7B,+BAA+B,EAC/B,uBAAuB,EACvB,gBAAgB,EAChB,wBAAwB,EACxB,sBAAsB,EACtB,0BAA0B,EAC1B,gBAAgB,EAChB,kCAAkC,EAClC,+BAA+B,EAC/B,qBAAqB,EACrB,yBAAyB,EACzB,kCAAkC,EAClC,kCAAkC,EAClC,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,cAAc,EACd,4BAA4B,GAE7B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAGvC,OAAO,EAAE,iBAAiB,EAAqB,MAAM,sBAAsB,CAAC;AAmI5E,+EAA+E;AAC/E,uEAAuE;AACvE,6EAA6E;AAC7E,0EAA0E;AAC1E,yEAAyE;AACzE,+EAA+E;AAC/E,4EAA4E;AAC5E,2EAA2E;AAC3E,uEAAuE;AACvE,6EAA6E;AAC7E,8EAA8E;AAC9E,qEAAqE;AACrE,mDAAmD;AACnD,MAAM,OAAO,cAAc;IACR,QAAQ,GAAG,IAAI,GAAG,EAA0B,CAAC;IAC7C,UAAU,GAAG,IAAI,GAAG,EAGlC,CAAC;IACa,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC9C,iBAAiB,GAAG,IAAI,GAAG,EAAkC,CAAC;IAC9D,KAAK,CAAsB;IAC3B,WAAW,CAA6D;IACxE,UAAU,CAAsB;IAChC,uBAAuB,CAAS;IAChC,QAAQ,CAAU;IAEnC,YAAY,OAA8B;QACxC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;QACjE,IAAI,CAAC,uBAAuB;YAC1B,OAAO,CAAC,uBAAuB,IAAI,kCAAkC,CAAC;QACxE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;IAC5B,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,uBAAuB;YAAE,OAAO,KAAK,CAAC;QAC/D,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,oEAAoE;YACpE,sEAAsE;YACtE,qEAAqE;YACrE,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM;gBAAE,OAAO,KAAK,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2EAA2E;IAC3E,8EAA8E;IAC9E,+CAA+C;IAC/C,IAAI;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAC3E,CAAC;IAED,UAAU,CAAC,GAAW;QACpB,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,eAAe,CAAC,IAAuB,EAAE,QAAgB;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC;QACrC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3C,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,IAAI,MAAM;gBAAE,OAAO,IAAI,CAAC;QACpD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI;QACF,OAAO,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YACnD,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,GAAG;YACxB,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK;YAC5B,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC,aAAa;YACxC,GAAG,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG;YAC1D,KAAK,EAAE,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,oBAAoB;YAC3E,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI;YAC7B,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC;YACjC,MAAM,EAAE,OAAO,CAAC,MAAM;SACvB,CAAC,CAAC,CAAC;IACN,CAAC;IAED,4EAA4E;IAC5E,2EAA2E;IAC3E,sEAAsE;IACtE,4EAA4E;IAC5E,4EAA4E;IAC5E,yEAAyE;IACzE,yEAAyE;IACzE,6DAA6D;IAC7D,cAAc,CAAC,UAAkB;QAC/B,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,MAAM,GAAG,GAAG,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9C,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;YACpC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACtC,OAAO,GAAG,KAAK,cAAc,IAAI,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,wEAAwE;IACxE,yEAAyE;IACzE,6EAA6E;IAC7E,2EAA2E;IAC3E,0EAA0E;IAC1E,kBAAkB;IAClB,eAAe,CAAC,EAAU;QACxB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC;QACzB,OAAO,CAAC,aAAa,GAAG,KAAK,CAAC;IAChC,CAAC;IAED,2EAA2E;IAC3E,2EAA2E;IAC3E,gFAAgF;IAChF,4EAA4E;IAC5E,sEAAsE;IACtE,oCAAoC;IACpC,qBAAqB,CAAC,EAAU;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,YAAY,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,6EAA6E;IAC7E,yEAAyE;IACzE,yEAAyE;IACzE,0EAA0E;IAC1E,2CAA2C;IAC3C,qBAAqB,CAAC,EAAU,EAAE,OAAO,GAAG,IAAI;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO;QACrB,OAAO,CAAC,aAAa,GAAG,OAAO,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,KAAoB,EAAE,UAA8B;QACxD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,uBAAuB;YAAE,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC7E,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,uBAAuB;YAAE,OAAO,IAAI,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC3F,MAAM,OAAO,GAAmB;YAC9B,OAAO;YACP,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,IAAI,GAAG,EAAE;YAClB,UAAU,EAAE,UAAU,IAAI,IAAI;YAC9B,WAAW,EAAE,EAAE;YACf,gBAAgB,EAAE,IAAI;YACtB,cAAc,EAAE,IAAI;YACpB,UAAU,EAAE,IAAI,cAAc,EAAE;YAChC,YAAY,EAAE,IAAI,CAAC,GAAG,EAAE;YACxB,aAAa,EAAE,KAAK;YACpB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,KAAK;YACb,eAAe,EAAE,SAAS;YAC1B,WAAW,EAAE,IAAI;YACjB,WAAW,EAAE,IAAI;YACjB,qBAAqB,EAAE,KAAK;SAC7B,CAAC;QACF,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACvC,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yEAAyE;IACzE,8EAA8E;IAC9E,uEAAuE;IACvE,iBAAiB;IACjB,cAAc,CACZ,EAAgB,EAChB,KAAoB,EACpB,UAA8B;QAE9B,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,MAAM,CAAC,EAAgB,EAAE,EAAU;QACjC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QACtD,0EAA0E;QAC1E,yCAAyC;QACzC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,oEAAoE;QACpE,wEAAwE;QACxE,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;YAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAChE,MAAM,MAAM,GAAkB;YAC5B,EAAE;YACF,OAAO,EAAE,IAAI;YACb,cAAc,EAAE,EAAE;YAClB,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,IAAI;YAClB,IAAI,EAAE,CAAC;YACP,IAAI,EAAE,CAAC;YACP,WAAW;SACZ,CAAC;QACF,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACpB,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC9B,sEAAsE;QACtE,yEAAyE;QACzE,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YAC7F,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE;gBACxB,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,OAAO,CAAC,WAAW;gBACzB,IAAI,EAAE,OAAO,CAAC,WAAW;aAC1B,CAAC,CAAC;QACL,CAAC;QACD,wEAAwE;QACxE,6EAA6E;QAC7E,0EAA0E;QAC1E,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,kEAAkE;QAClE,kEAAkE;QAClE,MAAM,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC9F,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,0EAA0E;IAC1E,0EAA0E;IAC1E,wEAAwE;IACxE,mEAAmE;IACnE,EAAE;IACF,uEAAuE;IACvE,uEAAuE;IACvE,uEAAuE;IACvE,4EAA4E;IAC5E,yEAAyE;IACzE,2EAA2E;IAC3E,2EAA2E;IAC3E,8EAA8E;IAC9E,4EAA4E;IAC5E,OAAO,CAAC,EAAgB,EAAE,MAAe;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,OAAO;QAC5B,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YACjC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,CAAC,cAAc,CAAC,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QACD,2EAA2E;QAC3E,sEAAsE;QACtE,sEAAsE;QACtE,uEAAuE;QACvE,yEAAyE;QACzE,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC;QAC7C,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,cAAc;YAAE,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QAC3E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,YAAY;YAAE,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACzE,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC;QAC3B,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;QACzB,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;IAED,UAAU,CAAC,EAAgB,EAAE,IAAY;QACvC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,0EAA0E;QAC1E,yEAAyE;QACzE,yEAAyE;QACzE,2EAA2E;QAC3E,6EAA6E;QAC7E,IAAI,KAAK,CAAC,MAAM,CAAC,OAAO;YAAE,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAClD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CACJ,EAAgB,EAChB,IAAY,EACZ,IAAY,EACZ,UAAmB,EACnB,WAAoB;QAEpB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC;QACzB,KAAK,CAAC,MAAM,CAAC,UAAU,GAAG,UAAU,CAAC;QACrC,KAAK,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACvC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAED,mEAAmE;IACnE,wEAAwE;IACxE,2EAA2E;IAC3E,MAAM,CAAC,EAAgB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;YACjC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;YAClC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;QAC7B,CAAC;QACD,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC;QAC3B,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;QACzB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC9B,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC9B,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtF,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,CAAC,EAAU;QACb,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,IAAI,CAAC;gBACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC/B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU;QACR,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAC/B,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,kFAAkF;IAClF,4EAA4E;IAC5E,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,+DAA+D;IAC/D,aAAa,CAAC,KAAoB,EAAE,MAAe;QACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;QACxB,2EAA2E;QAC3E,qEAAqE;QACrE,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtF,OAAO,OAAO,CAAC,EAAE,CAAC;IACpB,CAAC;IAED,2EAA2E;IAC3E,8EAA8E;IAC9E,6EAA6E;IAC7E,cAAc,CAAC,EAAU,EAAE,IAAY;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACvD,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0EAA0E;IAC1E,4EAA4E;IAC5E,gFAAgF;IAChF,UAAU,CAAC,EAAU,EAAE,IAAY,EAAE,IAAY;QAC/C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO,KAAK,CAAC;QACvD,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACnC,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0EAA0E;IAC1E,+EAA+E;IAC/E,+DAA+D;IAC/D,6EAA6E;IAC7E,wEAAwE;IACxE,KAAK,CAAC,WAAW,CAAC,EAAU,EAAE,KAAc;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QACtD,MAAM,MAAM,GAAG,KAAK,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,sBAAsB,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;IAED,wEAAwE;IACxE,0EAA0E;IAC1E,+EAA+E;IAC/E,SAAS,CAAC,EAAU,EAAE,MAAe;QACnC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;QACxB,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACtF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4EAA4E;IAC5E,gFAAgF;IAChF,uEAAuE;IACvE,YAAY,CAAC,EAAU,EAAE,KAAa;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO;YAAE,OAAO,KAAK,CAAC;QAC3B,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,8EAA8E;IAC9E,6EAA6E;IAC7E,iEAAiE;IACzD,KAAK,CAAC,qBAAqB,CAAC,OAAuB;QACzD,IAAI,OAAO,CAAC,eAAe;YAAE,OAAO,OAAO,CAAC,eAAe,CAAC;QAC5D,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACjF,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACtD,IAAI,QAAQ;YAAE,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACvC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACvB,OAAO,CAAC,eAAe,GAAG,QAAQ,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,0EAA0E;IAC1E,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,oCAAoC;IACpC,KAAK,CAAC,aAAa,CACjB,EAAU,EACV,OAAe,EACf,UAAuB,EAAE;QAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QACtD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAEhC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAC7B,OAAO,CAAC,SAAS,IAAI,uBAAuB,EAC5C,CAAC,EACD,mBAAmB,CACpB,CAAC;QACF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAC/B,OAAO,CAAC,gBAAgB,IAAI,+BAA+B,EAC3D,CAAC,EACD,2BAA2B,CAC5B,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC7C,MAAM,WAAW,GAAG,UAAU,KAAK,IAAI,CAAC;QACxC,MAAM,eAAe,GAAG,UAAU,KAAK,IAAI,CAAC;QAC5C,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,eAAe,SAAS,CAAC,CAAC;QAC3D,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,CAAC;QAClC,MAAM,OAAO,GAAG,WAAW,WAAW,SAAS,GAAG,aAAa,eAAe,cAAc,CAAC;QAE7F,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,MAAM,GAAG,KAAK,CAAC;QACnB,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,aAAa,GAA0B,IAAI,CAAC;QAChD,IAAI,eAAe,GAA0B,IAAI,CAAC;QAElD,OAAO,IAAI,OAAO,CAAa,CAAC,OAAO,EAAE,EAAE;YACzC,MAAM,QAAQ,GAAG,KAAK,EAAE,SAAwB,EAAE,aAAsB,EAAE,EAAE;gBAC1E,IAAI,QAAQ;oBAAE,OAAO;gBACrB,QAAQ,GAAG,IAAI,CAAC;gBAChB,IAAI,aAAa;oBAAE,YAAY,CAAC,aAAa,CAAC,CAAC;gBAC/C,IAAI,eAAe;oBAAE,YAAY,CAAC,eAAe,CAAC,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;gBAC5B,OAAO,CACL,MAAM,IAAI,CAAC,eAAe,CACxB,OAAO,CAAC,IAAI,EACZ,OAAO,CAAC,IAAI,EACZ,WAAW,EACX,WAAW,EACX,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACX,SAAS,CACV,CACF,CAAC;YACJ,CAAC,CAAC;YAEF,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAQ,EAAE;gBACtC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,6BAA6B,EAAE,CAAC;wBACtE,WAAW,IAAI,IAAI,CAAC;oBACtB,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,GAAG,6BAA6B,GAAG,WAAW,CAAC,MAAM,CAAC;wBAChE,IAAI,IAAI,GAAG,CAAC;4BAAE,WAAW,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;wBACjD,MAAM,GAAG,IAAI,CAAC;oBAChB,CAAC;gBACH,CAAC;gBACD,sEAAsE;gBACtE,wEAAwE;gBACxE,qEAAqE;gBACrE,yEAAyE;gBACzE,IAAI,UAAU;oBAAE,OAAO;gBACvB,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC5C,IAAI,KAAK,EAAE,CAAC;oBACV,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzC,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC,CAAC;YACF,MAAM,MAAM,GAAG,CAAC,IAAmB,EAAQ,EAAE;gBAC3C,QAAQ,GAAG,IAAI,CAAC;gBAChB,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YACxB,CAAC,CAAC;YAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;YAC/B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAE3B,aAAa,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC9B,iEAAiE;gBACjE,sEAAsE;gBACtE,wEAAwE;gBACxE,yEAAyE;gBACzE,uDAAuD;gBACvD,UAAU,GAAG,IAAI,CAAC;gBAClB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;gBACtB,eAAe,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,+BAA+B,CAAC,CAAC;gBAC1F,eAAe,CAAC,KAAK,EAAE,EAAE,CAAC;YAC5B,CAAC,EAAE,SAAS,CAAC,CAAC;YACd,aAAa,CAAC,KAAK,EAAE,EAAE,CAAC;YAExB,oEAAoE;YACpE,0DAA0D;YAC1D,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,IAAY,EACZ,IAAY,EACZ,WAAmB,EACnB,WAAmB,EACnB,eAAuB,EACvB,QAAuB,EACvB,QAAiB,EACjB,WAAmB,EACnB,SAAiB;QAEjB,6EAA6E;QAC7E,4EAA4E;QAC5E,0EAA0E;QAC1E,oDAAoD;QACpD,MAAM,QAAQ,GAAG,IAAI,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,yBAAyB,CAAC,CAAC;QAC5E,IAAI,MAAc,CAAC;QACnB,IAAI,CAAC;YACH,QAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YAC5B,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACvB,MAAM,MAAM,GACV,QAAQ,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,eAAe,IAAI,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3F,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAC/C,MAAM,GAAG,QAAQ,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACrD,CAAC;gBAAS,CAAC;YACT,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC;QACD,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpD,MAAM,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;QAC1C,IAAI,SAAS,EAAE,CAAC;YACd,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjF,CAAC;QACD,OAAO;YACL,QAAQ;YACR,MAAM;YACN,QAAQ;YACR,SAAS;YACT,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SACnC,CAAC;IACJ,CAAC;IAEO,QAAQ,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;QACtD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAEO,cAAc,CAAC,EAAgB,EAAE,OAAuB;QAC9D,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;QACtD,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC5C,IAAI,KAAK,CAAC,UAAU,IAAI,gBAAgB,EAAE,CAAC;YACzC,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;YAChC,OAAO;QACT,CAAC;QACD,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,IAAI,gBAAgB,EAAE,CAAC;YAC3E,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,EAAgB,EAAE,KAA8B;QACtE,IAAI,EAAE,CAAC,UAAU,KAAK,mBAAmB;YAAE,OAAO;QAClD,IAAI,iBAAiB,CAAC,EAAE,CAAC,GAAG,+BAA+B,EAAE,CAAC;YAC5D,EAAE,CAAC,KAAK,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC;YAChD,OAAO;QACT,CAAC;QACD,IAAI,CAAC;YACH,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,qDAAqD;QACvD,CAAC;IACH,CAAC;IAEO,cAAc,CAAC,OAAuB,EAAE,KAA8B;QAC5E,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAChC,SAAS;YACX,CAAC;YACD,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QACzC,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,MAAqB,EAAE,OAA8B;QACxE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACvC,CAAC;IAEO,SAAS,CAAC,OAAuB,EAAE,OAA8B;QACvE,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO;YAAE,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC3E,CAAC;IAEO,eAAe,CAAC,OAAuB,EAAE,IAAY;QAC3D,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC;QAC5B,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC9B,0EAA0E;QAC1E,0EAA0E;QAC1E,yEAAyE;QACzE,OAAO,CAAC,eAAe,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACrC,IAAI,OAAO,CAAC,WAAW,CAAC,MAAM,IAAI,wBAAwB,EAAE,CAAC;YAC3D,IAAI,OAAO,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBACtC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;gBACvC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAClC,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,OAAO,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,CAAC,gBAAgB,GAAG,UAAU,CAAC,GAAG,EAAE;gBACzC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;gBAChC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5B,CAAC,EAAE,sBAAsB,CAAC,CAAC;YAC3B,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,CAAC;QACrC,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,OAAuB;QACzC,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,CAAC;QAClC,OAAO,CAAC,WAAW,GAAG,EAAE,CAAC;QACzB,IAAI,CAAC,KAAK;YAAE,OAAO;QACnB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,KAAK,CAAC,UAAU,IAAI,gBAAgB,EAAE,CAAC;YACzC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,MAAM,IAAI,gBAAgB,EAAE,CAAC;gBAC3E,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QACD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAEO,oBAAoB,CAAC,OAAuB;QAClD,IAAI,OAAO,CAAC,OAAO,CAAC,QAAQ;YAAE,OAAO;QACrC,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,OAAO;gBAAE,SAAS;YAC7B,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,kCAAkC,EAAE,CAAC;gBACvE,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACxB,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;gBAC9B,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAEO,eAAe,CAAC,OAAuB;QAC7C,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO;QAC5C,OAAO,CAAC,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBAC9B,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;gBAC5B,OAAO;YACT,CAAC;YACD,IAAI,MAAM,GAAG,IAAI,CAAC;YAClB,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACrC,IAAI,MAAM,CAAC,OAAO;oBAAE,SAAS;gBAC7B,IAAI,iBAAiB,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,kCAAkC,EAAE,CAAC;oBACtE,MAAM,GAAG,KAAK,CAAC;oBACf,MAAM;gBACR,CAAC;YACH,CAAC;YACD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACzB,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC,EAAE,yBAAyB,CAAC,CAAC;QAC9B,OAAO,CAAC,cAAc,CAAC,KAAK,EAAE,EAAE,CAAC;IACnC,CAAC;IAEO,aAAa,CAAC,OAAuB;QAC3C,IAAI,OAAO,CAAC,cAAc,KAAK,IAAI;YAAE,OAAO;QAC5C,aAAa,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACtC,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAChC,CAAC;IAEO,eAAe,CAAC,OAAuB;QAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,OAAO,CAAC,QAAQ;YAAE,OAAO;QAC7B,IAAI,IAAI,GAAG,QAAQ,CAAC;QACpB,IAAI,IAAI,GAAG,QAAQ,CAAC;QACpB,IAAI,MAAM,GAAyB,IAAI,CAAC;QACxC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,KAAK,EAAE,CAAC;YACR,MAAM,GAAG,MAAM,CAAC;YAChB,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,IAAI;gBAAE,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;YAC9D,IAAI,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,MAAM,CAAC,IAAI,GAAG,IAAI;gBAAE,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAChE,CAAC;QACD,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO;QACxB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO;QAC7D,IAAI,KAAK,KAAK,CAAC,IAAI,MAAM,EAAE,UAAU,KAAK,SAAS,IAAI,MAAM,EAAE,WAAW,KAAK,SAAS,EAAE,CAAC;YACzF,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,CAAC;QACD,oEAAoE;QACpE,mEAAmE;QACnE,OAAO,CAAC,eAAe,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC5C,4EAA4E;QAC5E,sEAAsE;QACtE,wEAAwE;QACxE,0EAA0E;QAC1E,6EAA6E;QAC7E,uEAAuE;QACvE,qEAAqE;QACrE,wDAAwD;QACxD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,WAAW,KAAK,IAAI,CAAC;QACjF,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;QAC3B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;QAC3B,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;YACrC,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,CAAC,qBAAqB,EAAE,CAAC;YACzC,OAAO,CAAC,qBAAqB,GAAG,KAAK,CAAC;YACtC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAEO,uBAAuB,CAAC,OAAuB;QACrD,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QAC1F,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,GAAW,EAAE,EAAE;YAChC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC;YAC1B,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO;gBAAE,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;YAC9E,IAAI,CAAC,OAAO,CAAC,UAAU;gBAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QACjE,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,OAAsB,EAAE,EAAE;YAClD,OAAO,CAAC,aAAa,GAAG,OAAO,KAAK,IAAI,CAAC;YACzC,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,CAAC,CAAC;YACzD,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,YAAY,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YAClE,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,IAAY,EAAE,EAAE;YAC1C,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC;YACxD,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;gBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;YACpE,CAAC;QACH,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC;YACnC,IAAI,GAAG;gBAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;YAC9C,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,GAAG;gBAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAmB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACtC,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,QAAgB,EAAE,EAAE,CACjD,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,UAAU,CAAC,YAAY,EAAE,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,CACjF,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,WAAW,EAAE,GAAG,EAAE;YACtC,MAAM,GAAG,GAAG,OAAO,CAAC,cAAc,CAAC;YACnC,IAAI,GAAG;gBAAE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC;QAChD,CAAC,CAAC,CAAC;QACH,KAAK,MAAM,QAAQ,IAAI,4BAA4B,EAAE,CAAC;YACpD,IAAI,QAAQ,KAAK,WAAW;gBAAE,SAAS;YACvC,MAAM,SAAS,GAAoB,QAAQ,CAAC;YAC5C,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;gBACpC,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;oBAClD,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IACxC,CAAC;IAEO,qBAAqB,CAAC,MAAqB,EAAE,GAAW;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,MAAM,CAAC,WAAW,KAAK,IAAI;YAAE,OAAO;QACxC,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACrC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9C,CAAC;QACD,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACtB,CAAC;IAEO,UAAU,CAAC,OAAuB,EAAE,IAAmB;QAC7D,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;YACzC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC;gBACH,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YACpB,CAAC;YAAC,MAAM,CAAC;gBACP,qBAAqB;YACvB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YAC1D,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QACpE,CAAC;QACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QACvB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;IACjC,CAAC;IAEO,QAAQ,CAAC,OAAuB;QACtC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAChC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACjC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;QACxB,OAAO,CAAC,eAAe,EAAE,OAAO,EAAE,CAAC;QACnC,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;QACpC,IAAI,OAAO,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YACtC,YAAY,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;YACvC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAClC,CAAC;QACD,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC;QAC7B,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACrC,IAAI,MAAM,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBACjC,YAAY,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClC,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;YAC7B,CAAC;YACD,MAAM,CAAC,cAAc,GAAG,EAAE,CAAC;YAC3B,MAAM,CAAC,YAAY,GAAG,EAAE,CAAC;YACzB,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBACvB,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;gBACrC,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC9C,CAAC;YACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnD,IAAI,CAAC;YACH,OAAO,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IAEO,kBAAkB;QACxB,IAAI,MAAM,GAA0B,IAAI,CAAC;QACzC,IAAI,SAAS,GAAG,QAAQ,CAAC;QACzB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;gBAAE,SAAS;YACvC,wEAAwE;YACxE,IAAI,OAAO,CAAC,MAAM;gBAAE,SAAS;YAC7B,yEAAyE;YACzE,sEAAsE;YACtE,sCAAsC;YACtC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;YAClD,IAAI,GAAG,GAAG,SAAS,EAAE,CAAC;gBACpB,SAAS,GAAG,GAAG,CAAC;gBAChB,MAAM,GAAG,OAAO,CAAC;YACnB,CAAC;QACH,CAAC;QACD,IAAI,MAAM;YAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAEO,UAAU,CAAC,OAAuB;QACxC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC9B,yEAAyE;QACzE,4EAA4E;QAC5E,IAAI,OAAO,CAAC,MAAM;YAAE,OAAO;QAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,wEAAwE;QACxE,sEAAsE;QACtE,qEAAqE;QACrE,uCAAuC;QACvC,IAAI,OAAO,KAAK,IAAI;YAAE,OAAO;QAC7B,OAAO,CAAC,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;YACnC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;YACxB,0EAA0E;YAC1E,uEAAuE;YACvE,qEAAqE;YACrE,yEAAyE;YACzE,qEAAqE;YACrE,uEAAuE;YACvE,QAAQ;YACR,IAAI,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,OAAO,EAAE,CAAC;gBAC3C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;gBACzB,OAAO;YACT,CAAC;YACD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC;QACjC,CAAC,EAAE,OAAO,CAAC,CAAC;QACZ,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;IAC/B,CAAC;IAED,0EAA0E;IAC1E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,UAAU;QACR,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;YAC7C,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ;gBAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,OAAuB;QACzC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAChC,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACjC,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;QAC5B,CAAC;QACD,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,4EAA4E;IAC5E,0EAA0E;IAC1E,2EAA2E;IAC3E,+CAA+C;IACvC,YAAY,CAAC,OAAuB;QAC1C,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,YAAY,GAAG,0BAA0B;YAAE,OAAO,SAAS,CAAC;QACrF,OAAO,OAAO,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC;IACzD,CAAC;IAEO,iBAAiB,CAAC,GAAW;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QAC9B,IAAI,WAAW,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,WAAW,GAAG,IAAI,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YAChE,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAC/C,CAAC;QACD,OAAO,WAAW,CAAC;IACrB,CAAC;IAEO,kBAAkB,CAAC,WAAmC;QAC5D,IAAI,WAAW,CAAC,OAAO;YAAE,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,6DAA6D;IAC7D,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,6EAA6E;IAC7E,oBAAoB,CAAC,GAAW,EAAE,EAAsB;QACtD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;IACjE,CAAC;CACF"}
package/dist/session.d.ts CHANGED
@@ -46,6 +46,7 @@ export declare class Session extends EventEmitter<SessionEvents> {
46
46
  get isExited(): boolean;
47
47
  get isPaused(): boolean;
48
48
  get lastEmittedCwd(): string;
49
+ setTitle(title: string): void;
49
50
  write(data: string): void;
50
51
  pause(): void;
51
52
  resume(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
package/dist/session.js CHANGED
@@ -196,6 +196,17 @@ export class Session extends EventEmitter {
196
196
  get lastEmittedCwd() {
197
197
  return this.lastEmittedCwdValue;
198
198
  }
199
+ // Force the session's title from the REST/CLI rename surface. The shell's
200
+ // next OSC 0/2 title or cwd-derived title overwrites it (matching tmux, where
201
+ // a shell that sets its own title can override `rename-session`), but until
202
+ // then the picker and a fresh attach see the renamed title. Kept separate
203
+ // from `initialDocumentTitle` (frozen at spawn) so the override is live.
204
+ setTitle(title) {
205
+ const trimmed = title.trim();
206
+ if (!trimmed)
207
+ return;
208
+ this.lastEmittedTitle = trimmed;
209
+ }
199
210
  write(data) {
200
211
  if (this.exited)
201
212
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,KAAK,EAAa,MAAM,UAAU,CAAC;AAC5C,OAAO,EACL,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,eAAe,EACf,uBAAuB,EACvB,uBAAuB,EACvB,gBAAgB,EAChB,qBAAqB,EACrB,+BAA+B,EAC/B,SAAS,GACV,MAAM,gBAAgB,CAAC;AACxB,+EAA+E;AAC/E,4EAA4E;AAC5E,2EAA2E;AAC3E,4EAA4E;AAC5E,wEAAwE;AACxE,OAAO,EAAE,2BAA2B,EAAE,MAAM,qCAAqC,CAAC;AAClF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAE9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAC;AACxF,OAAO,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,8BAA8B,EAAE,MAAM,mCAAmC,CAAC;AACnF,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAa7E,MAAM,OAAO,OAAQ,SAAQ,YAA2B;IAC7C,KAAK,CAAS;IACd,GAAG,CAAS;IACZ,SAAS,CAAS;IAClB,EAAE,CAAS;IACH,QAAQ,CAAqB;IAE7B,GAAG,CAAO;IACV,SAAS,CAAS;IACnC,sEAAsE;IACtE,0EAA0E;IAC1E,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,4EAA4E;IAC5E,yEAAyE;IACzE,wEAAwE;IACvD,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/C,WAAW,CAAS;IACpB,WAAW,CAAS;IACpB,MAAM,GAAG,KAAK,CAAC;IACf,MAAM,GAAG,KAAK,CAAC;IACf,YAAY,GAAG,EAAE,CAAC;IAClB,gBAAgB,GAAG,EAAE,CAAC;IACtB,mBAAmB,GAAG,EAAE,CAAC;IACzB,qBAAqB,GAA8B,SAAS,CAAC;IAC7D,oBAAoB,GAAmB,IAAI,CAAC;IAC5C,gBAAgB,GAAa,EAAE,CAAC;IAChC,YAAY,GAAG,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,mDAAmD;IAClC,gBAAgB,GAAa,EAAE,CAAC;IACzC,eAAe,GAAG,CAAC,CAAC;IAC5B,4EAA4E;IAC5E,sEAAsE;IACtE,6EAA6E;IAC7E,yEAAyE;IACzE,6EAA6E;IAC7E,yCAAyC;IACxB,SAAS,GAAG,IAAI,iBAAiB,EAAE,CAAC;IACpC,iBAAiB,CAAoB;IACrC,wBAAwB,CAAU;IAC3C,wBAAwB,GAAG,KAAK,CAAC;IAEzC,YAAY,KAAoB;QAC9B,KAAK,EAAE,CAAC;QACR,2BAA2B,EAAE,CAAC;QAC9B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;QACrC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC;QAC9C,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,IAAI,YAAY,CAAC;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,EAAE,GAAG,UAAU,EAAE,CAAC;QACvB,IAAI,CAAC,wBAAwB,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAC9D,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QAE/B,MAAM,GAAG,GAA2B,EAAE,CAAC;QACvC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,gBAAgB,CAAC,CAAC;QACzC,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClF,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,2EAA2E;QAC3E,uEAAuE;QACvE,uEAAuE;QACvE,8BAA8B;QAC9B,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC;QAC7C,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAClE,MAAM,kBAAkB,GACtB,gBAAgB,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC;YACpD,CAAC,CAAC,gBAAgB;YAClB,CAAC,CAAC,oBAAoB,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC;gBAC9D,CAAC,CAAC,oBAAoB;gBACtB,CAAC,CAAC,SAAS,CAAC;QAClB,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YACvD,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QAClD,CAAC;QACD,IAAI,kBAAkB;YAAE,GAAG,CAAC,wBAAwB,GAAG,kBAAkB,CAAC;;YACrE,OAAO,GAAG,CAAC,wBAAwB,CAAC;QACzC,8EAA8E;QAC9E,GAAG,CAAC,IAAI,GAAG,qBAAqB,EAAE,CAAC;QACnC,IAAI,KAAK,CAAC,GAAG,EAAE,CAAC;YACd,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACnB,CAAC;QACH,CAAC;QACD,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC;QACrB,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC;QAChC,GAAG,CAAC,SAAS,GAAG,eAAe,CAAC;QAEhC,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;QACxE,IAAI,QAAQ,EAAE,CAAC;YACb,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpD,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACnB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE;YACtC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,IAAI,EAAE,IAAI,CAAC,WAAW;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,GAAG;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YACvB,wEAAwE;YACxE,yEAAyE;YACzE,qEAAqE;YACrE,yEAAyE;YACzE,wEAAwE;YACxE,yEAAyE;YACzE,sEAAsE;YACtE,0EAA0E;YAC1E,kDAAkD;YAClD,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,sBAAsB,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACjF,KAAK,MAAM,QAAQ,IAAI,SAAS;gBAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3D,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;YAC/B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEH,yEAAyE;QACzE,yEAAyE;QACzE,uDAAuD;QACvD,IAAI,KAAK,CAAC,cAAc;YAAE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,cAAc,IAAI,CAAC,CAAC;QAEtE,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3B,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAC5C,GAAG,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,EACnC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAC3C,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CACnB,CAAC;QACF,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;IACtB,CAAC;IAED,IAAI,aAAa;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IAED,4EAA4E;IAC5E,uEAAuE;IACvE,yEAAyE;IACzE,2EAA2E;IAC3E,aAAa;IACb,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,IAAY;QAChB,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,2EAA2E;QAC3E,2EAA2E;QAC3E,wDAAwD;QACxD,4DAA4D;QAC5D,sBAAsB,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACvC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;QAC/D,CAAC;IACH,CAAC;IAED,MAAM;QACJ,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO;QACxC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;QACpB,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAY,EAAE,IAAY,EAAE,UAAmB,EAAE,WAAoB;QAC1E,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC;YAAE,OAAO;QACnC,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW,IAAI,IAAI,KAAK,IAAI,CAAC,WAAW,IAAI,UAAU,KAAK,SAAS;YAAE,OAAO;QAC/F,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC;YACH,IAAI,UAAU,KAAK,SAAS,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;gBAC1D,IAAI,IAAI,CAAC,oBAAoB,KAAK,IAAI,EAAE,CAAC;oBACvC,IAAI,CAAC;wBACH,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;wBACrD,IAAI,CAAC,oBAAoB,GAAG,IAAI,CAAC;wBACjC,OAAO;oBACT,CAAC;oBAAC,MAAM,CAAC;wBACP,IAAI,CAAC,oBAAoB,GAAG,KAAK,CAAC;oBACpC,CAAC;gBACH,CAAC;gBACD,IAAI,IAAI,CAAC,oBAAoB,EAAE,CAAC;oBAC9B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;oBACrD,OAAO;gBACT,CAAC;YACH,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,sCAAsC;QACxC,CAAC;IACH,CAAC;IAED,IAAI,CAAC,SAAyB,QAAQ;QACpC,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QACxB,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,kBAAkB;QACpB,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI,CAAC,IAAI,EAAE,CAAC;QACZ,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QACnB,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAC5B,CAAC;IAED,0EAA0E;IAC1E,sEAAsE;IACtE,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,2EAA2E;IAC3E,0EAA0E;IAC1E,2EAA2E;IAC3E,+EAA+E;IAC/E,4EAA4E;IAC5E,gEAAgE;IAChE,0EAA0E;IAC1E,6EAA6E;IAC7E,sDAAsD;IACtD,kBAAkB;QAChB,OAAO,IAAI,CAAC,SAAS,CAAC,aAAa,EAAE,GAAG,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;IAEO,gBAAgB,CAAC,IAAY;QACnC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACxD,OACE,IAAI,CAAC,eAAe,GAAG,+BAA+B;YACtD,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAChC,CAAC;YACD,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;YAC9C,IAAI,OAAO;gBAAE,IAAI,CAAC,eAAe,IAAI,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QAC1E,CAAC;IACH,CAAC;IAEO,mBAAmB;QACzB,MAAM,YAAY,GAAG,2BAA2B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC3D,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;YACjC,IAAI,CAAC,gBAAgB,GAAG,YAAY,CAAC;QACvC,CAAC;QACD,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC;QACpC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;IACpC,CAAC;IAEO,WAAW,CAAC,IAAY;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QAC1C,IAAI,CAAC,YAAY,GAAG,EAAE,CAAC;QAEvB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEhC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC9C,IAAI,UAAU,GAAG,KAAK,CAAC;QACvB,IAAI,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACtD,IAAI,CAAC,mBAAmB,GAAG,QAAQ,CAAC;YACpC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YAC3B,UAAU,GAAG,IAAI,CAAC;QACpB,CAAC;QAED,MAAM,QAAQ,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAClD,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC;YAChC,IAAI,OAAO,IAAI,OAAO,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACjD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;gBAChC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;aAAM,IAAI,UAAU,EAAE,CAAC;YACtB,MAAM,QAAQ,GAAG,2BAA2B,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvE,IAAI,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QACpD,IAAI,SAAS,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAED,MAAM,aAAa,GAAG,8BAA8B,CAAC,QAAQ,CAAC,CAAC;QAC/D,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,uBAAuB,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACzB,CAAC;QAED,IAAI,IAAI,CAAC,wBAAwB,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,CAAC;YACpE,MAAM,kBAAkB,GAAG,+BAA+B,CAAC,QAAQ,CAAC,CAAC;YACrE,IAAI,kBAAkB,KAAK,IAAI,EAAE,CAAC;gBAChC,IAAI,CAAC,wBAAwB,GAAG,IAAI,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,CAAC,CAAC,IAAI,QAAQ,CAAC,MAAM,GAAG,OAAO,IAAI,uBAAuB,EAAE,CAAC;YAC3E,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;YAC3B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,gBAAgB,CAAC,IAAY;QACnC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACjC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,KAAK,CAAC;QAClC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;IAC5E,CAAC;IAEO,eAAe,CACrB,SAAiB,EACjB,GAA2B;QAE3B,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;QAC9C,QAAQ,SAAS,EAAE,CAAC;YAClB,KAAK,KAAK,CAAC,CAAC,CAAC;gBACX,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,MAAM,EAAE,CAAC,CAAC;gBACnE,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBACrD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM,UAAU,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;gBAC/C,MAAM,WAAW,GAAG,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;gBAChF,MAAM,YAAY,GAAG,mBAAmB,CACtC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,uBAAuB,EAAE,qBAAqB,CAAC,CACzF,CAAC;gBACF,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1D,MAAM,KAAK,GAAG;oBACZ,WAAW,cAAc,uBAAuB;oBAChD,wCAAwC;oBACxC,YAAY,cAAc,GAAG;oBAC7B,WAAW,cAAc,sBAAsB;oBAC/C,wCAAwC;oBACxC,oEAAoE;oBACpE,0DAA0D;oBAC1D,sEAAsE;oBACtE,oEAAoE;oBACpE,YAAY;oBACZ,sEAAsE;oBACtE,mEAAmE;oBACnE,qEAAqE;oBACrE,qEAAqE;oBACrE,+DAA+D;oBAC/D,oEAAoE;oBACpE,sEAAsE;oBACtE,qEAAqE;oBACrE,qEAAqE;oBACrE,qEAAqE;oBACrE,kEAAkE;oBAClE,oEAAoE;oBACpE,uEAAuE;oBACvE,sEAAsE;oBACtE,mEAAmE;oBACnE,mEAAmE;oBACnE,kEAAkE;oBAClE,iEAAiE;oBACjE,oBAAoB;oBACpB,UAAU;oBACV,gEAAgE;oBAChE,wBAAwB;oBACxB,6DAA6D;oBAC7D,iEAAiE;oBACjE,GAAG,CAAC,IAAI,CAAC,wBAAwB;wBAC/B,CAAC,CAAC;4BACE,GAAG,IAAI,CAAC,+BAA+B,CAAC,oCAAoC,CAAC;4BAC7E,8EAA8E;yBAC/E;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;gBACF,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE;oBACnE,IAAI,EAAE,KAAK;iBACZ,CAAC,CAAC;gBACH,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,CAAC,CAAC;YAC3E,CAAC;YACD,KAAK,MAAM,CAAC,CAAC,CAAC;gBACZ,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,kBAAkB,MAAM,EAAE,CAAC,CAAC;gBACnE,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC9C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBACpC,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBAC3C,MAAM,YAAY,GAAG,mBAAmB,CACtC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,uBAAuB,EAAE,qBAAqB,CAAC,CACzF,CAAC;gBACF,MAAM,KAAK,GAAG;oBACZ,gCAAgC;oBAChC,qCAAqC;oBACrC,8BAA8B;oBAC9B,sEAAsE;oBACtE,0CAA0C;oBAC1C,YAAY;oBACZ,UAAU;oBACV,qGAAqG;oBACrG,yBAAyB;oBACzB,6DAA6D;oBAC7D,GAAG,CAAC,IAAI,CAAC,wBAAwB;wBAC/B,CAAC,CAAC;4BACE,GAAG,IAAI,CAAC,+BAA+B,CAAC,oCAAoC,CAAC;4BAC7E,0FAA0F;yBAC3F;wBACH,CAAC,CAAC,EAAE,CAAC;iBACR,CAAC;gBACF,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;gBAClE,OAAO,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC;YACxC,CAAC;YACD;gBACE,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,0EAA0E;IAC1E,yEAAyE;IACzE,iEAAiE;IACzD,+BAA+B,CAAC,YAAoB;QAC1D,OAAO;YACL,uCAAuC;YACvC,GAAG,YAAY,MAAM;YACrB,qCAAqC;YACrC,oFAAoF;YACpF,6DAA6D;YAC7D,2EAA2E;YAC3E,MAAM;YACN,GAAG;SACJ,CAAC;IACJ,CAAC;IAEO,oBAAoB;QAC1B,OAAO;YACL,4BAA4B;YAC5B,qEAAqE;YACrE,GAAG;SACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAEO,gBAAgB;QACtB,OAAO;YACL,6BAA6B;YAC7B,qEAAqE;YACrE,GAAG;SACJ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACf,CAAC;IAEO,sBAAsB,CAAC,IAAmB;QAChD,MAAM,aAAa,GAAG,IAAI,CAAC,qBAAqB,IAAI,IAAI,CAAC;QACzD,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC9B,IAAI,aAAa,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnC,MAAM,QAAQ,GAAG,2BAA2B,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvE,IAAI,QAAQ,IAAI,QAAQ,KAAK,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACnD,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC;gBACjC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,sBAAsB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QAC3C,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QACtB,IAAI,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC;QACjD,2EAA2E;QAC3E,qEAAqE;QACrE,wEAAwE;QACxE,yEAAyE;QACzE,4EAA4E;QAC5E,sEAAsE;QACtE,yEAAyE;QACzE,0EAA0E;QAC1E,2EAA2E;QAC3E,oEAAoE;QACpE,6EAA6E;QAC7E,2CAA2C;QAC3C,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAClC,MAAM,SAAS,GAAG,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACzE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACtC,IAAI,SAAS,KAAK,GAAG;oBAAE,OAAO,IAAI,CAAC;YACrC,CAAC;QACH,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,gBAAgB;QACtB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;YAC7C,IAAI,CAAC;gBACH,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACrD,CAAC;YAAC,MAAM,CAAC;gBACP,uDAAuD;YACzD,CAAC;QACH,CAAC;QACD,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../src/session.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import type { z } from "zod";
2
- import type { automationLastRunSchema, automationLastRunStatusSchema, automationLifecycleSchema, automationRunLimitSchema, automationRunRecordSchema, automationRunStatusSchema, automationScheduleSchema, automationSchema, automationSessionEventSchema, automationTriggerSchema, automationV1Schema, automationV2Schema, automationWithNextRunSchema, caffeinateModeSchema, cdpHealthSchema, cdpConnectResultSchema, clientToServerMessageSchema, createAutomationInputSchema, daemonConfigSchema, updateDaemonConfigInputSchema, gitBaseSourceSchema, gitBranchInfoSchema, gitBranchPrLeaseSchema, gitBranchPrMergeableSchema, gitBranchPrSchema, gitBranchPrStateSchema, gitDiffFileListResponseSchema, gitDiffFileMetaSchema, gitDiffFilePatchSchema, gitDiffFileSchema, gitDiffFileStatusSchema, gitDiffModeSchema, gitDiffResponseSchema, gitDiffSummarySchema, gitWorktreeListResponseSchema, gitWorktreeResultSchema, gitWorktreeSchema, gitWorktreeBaseRefSchema, listeningPortSchema, listeningPortsResponseSchema, createWorktreeInputSchema, worktreeOpenInCommandSchema, worktreeRepoConfigFileSchema, worktreeRepoConfigSchema, updateWorktreeConfigInputSchema, worktreeIncludeFileInputSchema, worktreeIncludeFileSchema, worktreeSweepResultSchema, launchInputSchema, resetAutomationInputSchema, serverToClientMessageSchema, sessionListItemSchema, sessionsListResponseSchema, sessionActivityStateSchema, triggerInputSchema, updateAutomationInputSchema, secretEntrySchema, secretEntryResponseSchema, secretsListResponseSchema, secretSetInputSchema, processSchema, processSetInputSchema, processesListResponseSchema } from "./schemas.js";
2
+ import type { automationLastRunSchema, automationLastRunStatusSchema, automationLifecycleSchema, automationRunLimitSchema, automationRunRecordSchema, automationRunStatusSchema, automationScheduleSchema, automationSchema, automationSessionEventSchema, automationTriggerSchema, automationV1Schema, automationV2Schema, automationWithNextRunSchema, caffeinateModeSchema, cdpHealthSchema, cdpConnectResultSchema, clientToServerMessageSchema, createAutomationInputSchema, daemonConfigSchema, updateDaemonConfigInputSchema, gitBaseSourceSchema, gitBranchInfoSchema, gitBranchPrLeaseSchema, gitBranchPrMergeableSchema, gitBranchPrSchema, gitBranchPrStateSchema, gitDiffFileListResponseSchema, gitDiffFileMetaSchema, gitDiffFilePatchSchema, gitDiffFileSchema, gitDiffFileStatusSchema, gitDiffModeSchema, gitDiffResponseSchema, gitDiffSummarySchema, gitWorktreeListResponseSchema, gitWorktreeResultSchema, gitWorktreeSchema, gitWorktreeBaseRefSchema, listeningPortSchema, listeningPortsResponseSchema, createWorktreeInputSchema, worktreeOpenInCommandSchema, worktreeRepoConfigFileSchema, worktreeRepoConfigSchema, updateWorktreeConfigInputSchema, worktreeIncludeFileInputSchema, worktreeIncludeFileSchema, worktreeSweepResultSchema, launchInputSchema, resetAutomationInputSchema, serverToClientMessageSchema, sessionListItemSchema, sessionsListResponseSchema, sessionActivityStateSchema, createSessionInputSchema, sessionResponseSchema, updateSessionInputSchema, sessionInputSchema, sessionResizeSchema, execInputSchema, execOneShotInputSchema, execResultSchema, capturePaneResponseSchema, triggerInputSchema, updateAutomationInputSchema, secretEntrySchema, secretEntryResponseSchema, secretsListResponseSchema, secretSetInputSchema, processSchema, processSetInputSchema, processesListResponseSchema } from "./schemas.js";
3
3
  export interface SpawnPtyInput {
4
4
  cols?: number;
5
5
  rows?: number;
@@ -73,6 +73,15 @@ export type GitDiffSummary = z.infer<typeof gitDiffSummarySchema>;
73
73
  export type SessionListItem = z.infer<typeof sessionListItemSchema>;
74
74
  export type SessionListResponse = z.infer<typeof sessionsListResponseSchema>;
75
75
  export type SessionActivityState = z.infer<typeof sessionActivityStateSchema>;
76
+ export type CreateSessionInput = z.infer<typeof createSessionInputSchema>;
77
+ export type SessionResponse = z.infer<typeof sessionResponseSchema>;
78
+ export type UpdateSessionInput = z.infer<typeof updateSessionInputSchema>;
79
+ export type SessionInput = z.infer<typeof sessionInputSchema>;
80
+ export type SessionResize = z.infer<typeof sessionResizeSchema>;
81
+ export type ExecInput = z.infer<typeof execInputSchema>;
82
+ export type ExecOneShotInput = z.infer<typeof execOneShotInputSchema>;
83
+ export type ExecResultResponse = z.infer<typeof execResultSchema>;
84
+ export type CapturePaneResponse = z.infer<typeof capturePaneResponseSchema>;
76
85
  export type ListeningPort = z.infer<typeof listeningPortSchema>;
77
86
  export type ListeningPortsResponse = z.infer<typeof listeningPortsResponseSchema>;
78
87
  export type GitDiffFileMeta = z.infer<typeof gitDiffFileMetaSchema>;