@thenewlabs/entangle-serve 2.12.2 → 2.13.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.
package/dist/daemon.js CHANGED
@@ -1,22 +1,19 @@
1
- import * as net from 'net';
2
- import * as fs from 'fs';
3
1
  import { OutputHandler, parseOutputMode } from '@thenewlabs/entangle-utils';
4
2
  import { startAgent } from './agent.js';
5
3
  import { SharedWorkspace } from './shared-workspace.js';
6
4
  import { LocalHostSession } from './host-session.js';
7
- import { addSession, logPath, removeSession } from './session-registry.js';
8
- import { createMessageReader, decodeChunk, encodeChunk, writeMessage, } from './ipc.js';
5
+ import { createDaemonServer } from './daemon-server.js';
9
6
  /**
10
7
  * The DAEMON half of the tmux-style detach/reattach split for `entangle serve`.
11
8
  *
12
9
  * Runs headless (no TTY): it owns a {@link SharedWorkspace} + {@link LocalHostSession}
13
10
  * and connects to the relay via {@link startAgent}, serving the pinned capability
14
- * handed to it. It listens on a local unix socket where zero or more terminal
15
- * CLIENTS ({@link RemoteHostSession}) attach; it fans the session's events out to
16
- * every attached client and applies each client's input/resize/window ops to the
17
- * one shared session. Detaching a client leaves the daemon (and the session)
18
- * running; the daemon exits only when the workspace's last shell exits or it is
19
- * signalled.
11
+ * handed to it. The socket server that terminal CLIENTS ({@link RemoteHostSession})
12
+ * attach to fan-out, per-client viewports, registry bookkeeping, shutdown lives
13
+ * in daemon-server.ts (shared with embedders like Locus); this file is just the
14
+ * entangle-specific composition around it. Detaching a client leaves the daemon
15
+ * (and the session) running; the daemon exits only when the workspace's last
16
+ * shell exits or it is signalled.
20
17
  *
21
18
  * Config comes entirely from the environment (set by the index wiring that spawns
22
19
  * the daemon):
@@ -40,232 +37,20 @@ export async function runDaemon() {
40
37
  // Installs the log sink (agent logs → ring buffer, fanned out to clients as
41
38
  // `log` frames) and owns the session URL via setUrl().
42
39
  const localSession = new LocalHostSession(workspace, output);
43
- const createdAt = Date.now();
44
- const register = (url) => {
45
- const info = {
46
- name,
47
- socket: socketPathValue,
48
- logFile: logPath(name),
49
- pid: process.pid,
50
- capId: cap.capId,
51
- url,
52
- createdAt,
53
- };
54
- addSession(info);
55
- };
56
- // --- client set + fan-out -------------------------------------------------
57
- const clients = new Set();
58
- const broadcast = (msg) => {
59
- for (const socket of clients) {
60
- try {
61
- writeMessage(socket, msg);
62
- }
63
- catch { /* dropped client; its close handler cleans up */ }
64
- }
65
- };
66
- // --- lifecycle / cleanup (idempotent) ------------------------------------
67
- let server;
68
- let shuttingDown = false;
69
- const shutdown = (code) => {
70
- if (shuttingDown)
71
- return;
72
- shuttingDown = true;
73
- broadcast({ t: 'exit', code });
74
- try {
75
- localSession.dispose();
76
- }
77
- catch { /* best-effort */ }
78
- try {
79
- workspace.kill();
80
- }
81
- catch { /* best-effort */ }
82
- for (const socket of clients) {
83
- try {
84
- socket.end();
85
- }
86
- catch { /* already gone */ }
87
- }
88
- clients.clear();
89
- try {
90
- server?.close();
91
- }
92
- catch { /* not listening */ }
93
- removeSession(name);
94
- try {
95
- fs.unlinkSync(socketPathValue);
96
- }
97
- catch { /* already gone */ }
98
- process.exit(0);
99
- };
100
- process.on('SIGTERM', () => shutdown(0));
101
- process.on('SIGINT', () => shutdown(0));
102
- // Subscribe ONCE to the SESSION-GLOBAL streams and fan each out to every
103
- // client. Terminal output and window-state are NOT global anymore: each client
104
- // gets its own workspace viewport (see onConnection) so it can sit on its own
105
- // active window, so we deliberately do NOT broadcast onHostData/onWindowState.
106
- localSession.onViewersChange((n) => broadcast({ t: 'viewers', n }));
107
- localSession.onLog((line) => broadcast({ t: 'log', line }));
108
- localSession.onUrl((url) => broadcast({ t: 'url', url }));
109
- // Workspace ended (last window's shell exited) → tear the daemon down.
110
- localSession.onExit((code) => shutdown(code));
111
- // --- inbound client handling ---------------------------------------------
112
- // A client's messages drive ITS OWN workspace viewport (keyed by `vpId`), so
113
- // input/window ops only move that client's active window. Sizing stays global
114
- // (the host/workspace size is authoritative), so hello/resize resize the whole
115
- // workspace as before.
116
- const handleClientMessage = (msg, socket, vpId) => {
117
- switch (msg.t) {
118
- case 'hello':
119
- workspace.resize(msg.cols, msg.rows);
120
- break;
121
- case 'input':
122
- workspace.writeFromViewport(vpId, decodeChunk(msg.data));
123
- break;
124
- case 'resize':
125
- workspace.resize(msg.cols, msg.rows);
126
- break;
127
- case 'win':
128
- switch (msg.op) {
129
- case 'new':
130
- workspace.newWindowForViewport(vpId);
131
- break;
132
- case 'next':
133
- workspace.nextWindowForViewport(vpId);
134
- break;
135
- case 'prev':
136
- workspace.prevWindowForViewport(vpId);
137
- break;
138
- case 'select':
139
- if (msg.index !== undefined)
140
- workspace.selectWindowForViewport(vpId, msg.index);
141
- break;
142
- case 'close':
143
- if (msg.index !== undefined)
144
- workspace.closeWindowFromViewport(vpId, msg.index);
145
- break;
146
- }
147
- break;
148
- case 'refresh':
149
- // Serialize the viewport's active window NOW and send it back as a
150
- // `replay` frame (getReplay()'s source client-side). Because this is a
151
- // full IPC round-trip after the client's own bytes were fed to the
152
- // emulator, the serialize reflects the window's live screen — this is
153
- // what lets a host repaint (e.g. after a full-screen app quits) paint
154
- // the CURRENT primary instead of the stale attach-time cache.
155
- try {
156
- const frame = workspace.snapshotForViewport(vpId, msg.scrollback !== undefined ? { scrollback: msg.scrollback } : undefined);
157
- writeMessage(socket, { t: 'replay', chunk: encodeChunk(frame) });
158
- }
159
- catch { /* dropped client; its close handler cleans up */ }
160
- break;
161
- case 'scrollback':
162
- // Serialize the viewport's active window buffer to plain-text lines NOW
163
- // and send them back for the client's copy-mode pager.
164
- try {
165
- writeMessage(socket, { t: 'scrollback', lines: workspace.scrollbackLinesForViewport(vpId) });
166
- }
167
- catch { /* dropped client; its close handler cleans up */ }
168
- break;
169
- case 'detach':
170
- // Drop just this client's viewport; the daemon (and session) keep running.
171
- clients.delete(socket);
172
- workspace.detachViewport(vpId);
173
- try {
174
- socket.end();
175
- }
176
- catch { /* already ending */ }
177
- break;
178
- }
179
- };
180
- let nextVpId = 0;
181
- const onConnection = (socket) => {
182
- // Each connection is its own workspace viewport with an independent active
183
- // window; reuse the connection counter as the viewport key.
184
- const vpId = `client-${nextVpId++}`;
185
- clients.add(socket);
186
- const remove = () => {
187
- clients.delete(socket);
188
- workspace.detachViewport(vpId);
189
- };
190
- socket.on('close', remove);
191
- socket.on('error', remove);
192
- // Attach this client's viewport: the workspace multiplexes ITS active
193
- // window's output onto this socket and pushes ITS own window-state.
194
- const { replay } = workspace.attachViewport({
195
- sid: vpId,
196
- onData: (chunk) => { try {
197
- writeMessage(socket, { t: 'data', chunk: encodeChunk(chunk) });
198
- }
199
- catch { /* dropped */ } },
200
- onWindowState: (state) => { try {
201
- writeMessage(socket, { t: 'window-state', state });
202
- }
203
- catch { /* dropped */ } },
204
- onExit: (code) => { try {
205
- writeMessage(socket, { t: 'exit', code });
206
- }
207
- catch { /* dropped */ } },
208
- });
209
- createMessageReader(socket, (msg) => {
210
- // Only ClientToDaemon frames are expected inbound; a single bad message
211
- // must not take down the daemon.
212
- try {
213
- handleClientMessage(msg, socket, vpId);
214
- }
215
- catch (err) {
216
- output.warn('Client message failed', err instanceof Error ? err.message : String(err));
217
- }
218
- }, () => { remove(); try {
219
- socket.destroy();
220
- }
221
- catch { /* already gone */ } });
222
- // Push this viewport's current state immediately so the client's UI
223
- // populates fast. Sent synchronously (no await) right after attach, so live
224
- // onData frames can't slip in before the replay.
225
- try {
226
- const url = localSession.getUrl();
227
- if (url)
228
- writeMessage(socket, { t: 'url', url });
229
- writeMessage(socket, { t: 'window-state', state: workspace.windowStateForViewport(vpId) });
230
- writeMessage(socket, { t: 'viewers', n: workspace.viewerCount() });
231
- for (const line of localSession.getLogBuffer())
232
- writeMessage(socket, { t: 'log', line });
233
- writeMessage(socket, { t: 'replay', chunk: encodeChunk(replay) });
234
- }
235
- catch {
236
- remove();
237
- }
238
- };
239
- // --- listen ---------------------------------------------------------------
240
- try {
241
- fs.unlinkSync(socketPathValue);
242
- }
243
- catch { /* no stale socket to remove */ }
244
- server = net.createServer(onConnection);
245
- server.on('error', (err) => output.error('Daemon socket server error', err.message));
246
- await new Promise((resolve, reject) => {
247
- const onError = (err) => reject(err);
248
- server.once('error', onError);
249
- server.listen(socketPathValue, () => {
250
- server.off('error', onError);
251
- resolve();
252
- });
40
+ const server = await createDaemonServer({
41
+ name,
42
+ socketPath: socketPathValue,
43
+ workspace,
44
+ session: localSession,
45
+ output,
46
+ registry: { capId: cap.capId, kind: 'entangle' },
253
47
  });
254
- try {
255
- fs.chmodSync(socketPathValue, 0o600);
256
- }
257
- catch { /* best-effort tightening */ }
258
- // Register now (url filled in once the relay assigns it).
259
- register('');
260
48
  // Connect to the relay and serve the pinned capability. onCapabilityReady sets
261
49
  // the session URL (fanned out as a `url` frame) and records it in the registry.
262
50
  await startAgent({
263
51
  serverUrl,
264
52
  sharedWorkspace: workspace,
265
- onCapabilityReady: ({ link }) => {
266
- localSession.setUrl(link);
267
- register(link);
268
- },
53
+ onCapabilityReady: ({ link }) => server.setUrl(link),
269
54
  ...(password ? { password } : {}),
270
55
  pinnedCapability: cap,
271
56
  });
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.js","sourceRoot":"","sources":["../src/daemon.ts"],"names":[],"mappings":"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"}
@@ -82,6 +82,13 @@ export interface HostSession {
82
82
  onExit(cb: (code: number | null, signal: string | null) => void): void;
83
83
  /** Tear down any owned resources (e.g. release the captured-log sink). */
84
84
  dispose(): void;
85
+ /**
86
+ * Release just the captured-log sink (if this session owns one) so agent logs
87
+ * print to stdout — a lighter cousin of {@link dispose} for UIs with no debug
88
+ * tab to feed. Unlike dispose it must NOT tear the session down (a daemon-
89
+ * backed session's dispose ends its socket).
90
+ */
91
+ releaseLogSink?(): void;
85
92
  /** Detach without ending the session (unused for now). */
86
93
  detach?(): void;
87
94
  }
@@ -135,6 +142,7 @@ export declare class LocalHostSession implements HostSession {
135
142
  /** Store the session URL (once the relay assigns it) and notify subscribers. */
136
143
  setUrl(link: string): void;
137
144
  onExit(cb: (code: number | null, signal: string | null) => void): void;
145
+ releaseLogSink(): void;
138
146
  dispose(): void;
139
147
  }
140
148
  //# sourceMappingURL=host-session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-session.d.ts","sourceRoot":"","sources":["../src/host-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-session.d.ts","sourceRoot":"","sources":["../src/host-session.ts"],"names":[],"mappings":"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"}
@@ -88,6 +88,7 @@ export class LocalHostSession {
88
88
  }
89
89
  // --- lifecycle -----------------------------------------------------------
90
90
  onExit(cb) { this.workspace.onExit(cb); }
91
- dispose() { OutputHandler.setLogSink(null); }
91
+ releaseLogSink() { OutputHandler.setLogSink(null); }
92
+ dispose() { this.releaseLogSink(); }
92
93
  }
93
94
  //# sourceMappingURL=host-session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"host-session.js","sourceRoot":"","sources":["../src/host-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"host-session.js","sourceRoot":"","sources":["../src/host-session.ts"],"names":[],"mappings":"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"}
@@ -853,9 +853,11 @@ function attachRawTerminal(session, output) {
853
853
  const stdin = process.stdin;
854
854
  const stdout = process.stdout;
855
855
  // No status bar and no debug tab here, so there's nowhere to surface captured
856
- // logs — release the session's log sink so agent logs print to stdout as they
857
- // did before this UI existed (the bar path keeps the sink for its debug tab).
858
- session.dispose();
856
+ // logs — release the session's log sink (if it owns one) so agent logs print
857
+ // to stdout as they did before this UI existed (the bar path keeps the sink
858
+ // for its debug tab). NOT dispose(): a daemon-backed session's dispose ends
859
+ // its socket, which would kill the attach right here.
860
+ session.releaseLogSink?.();
859
861
  const initial = session.getReplay();
860
862
  if (initial.length > 0) {
861
863
  try {
@@ -863,6 +865,13 @@ function attachRawTerminal(session, output) {
863
865
  }
864
866
  catch { }
865
867
  }
868
+ // A daemon-backed session delivers its post-attach replay (and any refreshed
869
+ // frames) asynchronously via onFrame — paint those too, so a raw reattach
870
+ // shows the window's current screen instead of starting blank.
871
+ session.onFrame((frame) => { try {
872
+ stdout.write(Buffer.from(frame));
873
+ }
874
+ catch { } });
866
875
  session.onHostData((chunk) => { try {
867
876
  stdout.write(chunk);
868
877
  }
@@ -871,7 +880,42 @@ function attachRawTerminal(session, output) {
871
880
  if (stdin.isTTY)
872
881
  stdin.setRawMode(true);
873
882
  stdin.resume();
874
- const onInput = (d) => session.write(new Uint8Array(d));
883
+ // A daemon-backed session gets a detach key even without the bar: Ctrl-B d
884
+ // detaches (Ctrl-B Ctrl-B sends a literal Ctrl-B; any other command byte is
885
+ // swallowed, like the bar's prefix), otherwise a raw attach could only be
886
+ // left by killing the terminal. Interactive TTYs only — piped stdin stays
887
+ // pure byte-for-byte passthrough.
888
+ const canDetach = !!stdin.isTTY && typeof session.detach === 'function';
889
+ let pendingPrefix = false;
890
+ const onInput = (d) => {
891
+ if (!canDetach) {
892
+ session.write(new Uint8Array(d));
893
+ return;
894
+ }
895
+ let start = 0;
896
+ for (let i = 0; i < d.length; i++) {
897
+ const byte = d[i];
898
+ if (pendingPrefix) {
899
+ pendingPrefix = false;
900
+ if (byte === PREFIX)
901
+ session.write(new Uint8Array([PREFIX]));
902
+ else if (byte === 0x64 /* d */) {
903
+ session.detach();
904
+ return;
905
+ }
906
+ start = i + 1;
907
+ continue;
908
+ }
909
+ if (byte === PREFIX) {
910
+ if (i > start)
911
+ session.write(new Uint8Array(d.subarray(start, i)));
912
+ pendingPrefix = true;
913
+ start = i + 1;
914
+ }
915
+ }
916
+ if (d.length > start)
917
+ session.write(new Uint8Array(d.subarray(start)));
918
+ };
875
919
  stdin.on('data', onInput);
876
920
  const onResize = () => session.resize(stdout.columns || 80, stdout.rows || 24);
877
921
  stdout.on('resize', onResize);
@@ -1 +1 @@
1
- {"version":3,"file":"host-terminal.js","sourceRoot":"","sources":["../src/host-terminal.ts"],"names":[],"mappings":"AAYA,8EAA8E;AAC9E,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,CAAC,CAAC;AAEnB,mFAAmF;AACnF,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,0DAA0D;AAC1D,MAAM,MAAM,GAAG,IAAI,CAAC;AAEpB,4CAA4C;AAC5C,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,uBAAuB;AACvD,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,mCAAmC;AAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,oBAAoB;AAC/C,MAAM,KAAK,GAAG,SAAS,CAAC;AAExB,8EAA8E;AAC9E,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAkB/C;;;;GAIG;AACH,SAAS,UAAU,CAAC,CAAS,EAAE,CAAS;IACtC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACzF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACd,MAAM,OAAO,GAAG,GAAkB,EAAE;QAClC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,IAAI,EAAE,CAAC;YAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC;QAAC,CAAC;QACxG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAAC,CAAC,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAAC,CAAC,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,IAAI,GAAG,KAAK,IAAI,CAAC,OAAO,IAAI,GAAG,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAoB,EAAE,MAAqB;IAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAE5B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAC9B,MAAM,UAAU,GACd,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,CAAC;IAE1E,IAAI,UAAU;QAAE,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;QAC1D,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CACxB,OAAoB,EACpB,MAAqB,EACrB,WAAmB,EACnB,WAAmB;IAEnB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAE5B,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,CAAC,CAAa,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IAEvF,IAAI,IAAI,GAAG,WAAW,CAAC;IACvB,IAAI,IAAI,GAAG,WAAW,CAAC;IAEvB,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,uDAAuD;IACzE,IAAI,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,0EAA0E;IAC1E,2EAA2E;IAC3E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,mEAAmE;IACnE,IAAI,QAAQ,GAAiC,OAAO,CAAC;IAErD,gFAAgF;IAChF,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,6BAA6B;IAC7B,IAAI,WAAW,GAAa,EAAE,CAAC;IAC/B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,8EAA8E;IAC9E,yEAAyE;IACzE,4EAA4E;IAC5E,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,2EAA2E;IAC3E,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,YAAY,GAAkB,EAAE,CAAC;IAErC,6EAA6E;IAC7E,+EAA+E;IAC/E,+EAA+E;IAC/E,8EAA8E;IAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,MAAM,UAAU,GAAG,GAAY,EAAE,CAC/B,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,aAAa,GAAG,qCAAqC,CAAC;IAC5D,MAAM,YAAY,GAAG,CAAC,GAAe,EAAQ,EAAE;QAC7C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAyB,CAAC;QAC9B,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;;gBACtC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,gFAAgF;IAChF,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,uEAAuE;IACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,QAAQ,GAAG,GAAY,EAAE,CAC7B,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,8BAA8B,CAAC;IACnD,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,UAAU,GAAG,CAAC,GAAe,EAAQ,EAAE;QAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,WAAW,CAAC,SAAS,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAyB,CAAC;QAC9B,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;YACzC,4EAA4E;YAC5E,2EAA2E;iBACtE,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,QAAQ,KAAK,OAAO;gBAAE,YAAY,GAAG,IAAI,CAAC;QAClF,CAAC;IACH,CAAC,CAAC;IAEF,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC3C,IAAI,OAAO,GAA0B,YAAY,CAAC,OAAO,CAAC;IAC1D,IAAI,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;IAE3C;;;;;;OAMG;IACH,MAAM,QAAQ,GAAG,GAAW,EAAE;QAC5B,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAkE;YAC1E,wEAAwE;YACxE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,KAAK,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,EAAE;SACnF,CAAC;QACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,GAAG,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG;gBAC3B,MAAM,EAAE,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,WAAW;gBACjD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC3D,CAAC,CAAC;QACL,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,OAAO,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QAEnE,+DAA+D;QAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC;QAChD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAE/D,0EAA0E;QAC1E,0EAA0E;QAC1E,8EAA8E;QAC9E,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,OAAO,IAAI,UAAU;gBAAE,MAAM;YACjC,MAAM,IAAI,GAAG,UAAU,GAAG,OAAO,CAAC;YAClC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnE,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACjG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC;QACzB,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,YAAY,GAAG,OAAO,CAAC;QACvB,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC;IAC5D,CAAC,CAAC;IAEF,+EAA+E;IAC/E,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,kEAAkE;QAClE,4EAA4E;QAC5E,6EAA6E;QAC7E,uEAAuE;QACvE,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,QAAQ,GAAG,KAAK,CAAC;QACjB,KAAK,CAAC,aAAa,IAAI,aAAa,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC;IAEF,4EAA4E;IAC5E,+EAA+E;IAC/E,MAAM,WAAW,GAAG,CAAC,IAAmB,EAAY,EAAE,CAAC;QACrD,GAAG,MAAM,aAAa,KAAK,wBAAwB;QACnD,qDAAqD;QACrD,EAAE;QACF,0BAA0B;QAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,aAAa,GAAG,KAAK,EAAE;QAC7C,EAAE;QACF,yEAAyE;KAC1E,CAAC;IAEF,6EAA6E;IAC7E,uEAAuE;IACvE,qEAAqE;IACrE,6EAA6E;IAC7E,sBAAsB;IACtB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,UAAU,GAAG,KAAK,CAAC;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,GAAG,MAAM,mBAAmB,KAAK,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,oCAAoC;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,2BAA2B;QAC3E,CAAC;QACD,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC;YAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,YAAY;QAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,wBAAwB;YAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,IAAI,KAAK,SAAS;gBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,sEAAsE;IACtE,8EAA8E;IAC9E,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,6DAA6D;IAC7D,MAAM,eAAe,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC5C,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EAAE;YAAE,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC;QAClE,GAAG,IAAI,QAAQ,CAAC;QAChB,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,EAAE,CAAC;QACV,4EAA4E;QAC5E,8EAA8E;QAC9E,mBAAmB;QACnB,KAAK,CAAC,YAAY,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,iFAAiF;IACjF,6EAA6E;IAC7E,0EAA0E;IAC1E,gFAAgF;IAChF,gFAAgF;IAChF,8EAA8E;IAC9E,6EAA6E;IAC7E,sEAAsE;IACtE,IAAI,iBAA4D,CAAC;IACjE,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,iBAAiB,EAAE,CAAC;YAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YAAC,iBAAiB,GAAG,SAAS,CAAC;QAAC,CAAC;IAC5F,CAAC,CAAC;IACF,4EAA4E;IAC5E,gFAAgF;IAChF,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,wBAAwB,GAAG,GAAG,EAAE;QACpC,kBAAkB,EAAE,CAAC;QACrB,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,iBAAiB,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;gBAAE,OAAO;YAC1C,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACtB,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;QAC5B,OAAO,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,yEAAyE;IACzE,MAAM,qBAAqB,GAAG,GAAG,EAAE;QACjC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,YAAY,GAAG,KAAK,CAAC,CAAC,uDAAuD;QAC7E,wBAAwB,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,gFAAgF;IAChF,wDAAwD;IACxD,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,wBAAwB,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QACjC,QAAQ,GAAG,OAAO,CAAC;QACnB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IACF,0EAA0E;IAC1E,mDAAmD;IACnD,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,QAAQ,GAAG,QAAQ,KAAK,OAAO,CAAC;QACtC,QAAQ,GAAG,OAAO,CAAC;QACnB,IAAI,QAAQ;YAAE,YAAY,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,4CAA4C;IAE5C,oEAAoE;IACpE,MAAM,eAAe,GAAG,GAAW,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACnC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC;IAEF,6EAA6E;IAC7E,gEAAgE;IAChE,MAAM,cAAc,GAAG,GAAW,EAAE;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;QACjC,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACrE,IAAI,KAAK,GAAG,mBAAmB,GAAG,IAAI,MAAM,IAAI,KAAK,oCAAoC,CAAC;QAC1F,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IACrD,CAAC,CAAC;IAEF,2EAA2E;IAC3E,0EAA0E;IAC1E,iCAAiC;IACjC,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACvC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;YACjC,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YAC3C,IAAI,IAAI;gBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,CAAC;QACD,GAAG,IAAI,QAAQ,IAAI,aAAa,cAAc,EAAE,EAAE,CAAC;QACnD,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC,CAAC;IAEF,+EAA+E;IAC/E,+EAA+E;IAC/E,yEAAyE;IACzE,sDAAsD;IACtD,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QAC1C,QAAQ,GAAG,QAAQ,CAAC;QACpB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,+CAA+C;QACrE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAM,+CAA+C;QACrE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAG,oCAAoC;QAC1D,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,kEAAkE;QAClE,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,6DAA6D;IAC7D,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,QAAQ,GAAG,OAAO,CAAC;QACnB,WAAW,GAAG,EAAE,CAAC;QACjB,YAAY,GAAG,CAAC,CAAC;QACjB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAe,kDAAkD;QACtF,KAAK,CAAC,WAAW,CAAC,CAAC,CAAiB,wBAAwB;QAC5D,KAAK,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,mCAAmC;QAC9E,KAAK,CAAC,YAAY,CAAC,CAAC,CAAgB,yCAAyC;QAC7E,OAAO,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC;IAC5E,CAAC,CAAC;IAEF,+EAA+E;IAC/E,gFAAgF;IAChF,gFAAgF;IAChF,8EAA8E;IAC9E,iDAAiD;IACjD,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAQ,EAAE;QAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAI,CAAC;YAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/B,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,CAAC;qBACzE,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,CAAC;gBACnF,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;gBAClB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,IAAI,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACvE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,IAAI,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACvE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnF,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAClE,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAClF,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAAC,UAAU,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC,CAAC,kBAAkB;gBACzE,6EAA6E;gBAC7E,CAAC,IAAI,QAAQ,CAAC;gBACd,OAAO,GAAG,IAAI,CAAC;gBACf,SAAS;YACX,CAAC;YACD,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,IAAI,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACjD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,IAAI,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACtD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,GAAG,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACrD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACrE,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,UAAU,EAAE,CAAC;gBAAC,OAAO;YAAC,CAAC;YAC9C,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,iBAAiB,EAAE,CAAC;YAAC,YAAY,EAAE,CAAC;QAAC,CAAC;IACvD,CAAC,CAAC;IAEF,6EAA6E;IAC7E,gFAAgF;IAChF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,6EAA6E;QAC7E,uCAAuC;QACvC,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAAC,IAAI,UAAU;gBAAE,WAAW,EAAE,CAAC;QAAC,CAAC;QAC5D,0EAA0E;QAC1E,yEAAyE;QACzE,wCAAwC;aACnC,IAAI,YAAY;YAAE,qBAAqB,EAAE,CAAC;aAC1C,IAAI,QAAQ;YAAE,OAAO,EAAE,CAAC;IAC/B,CAAC,EAAE,QAAQ,CAAC,CAAC;IACb,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAEhB,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,gEAAgE;QACnF,6EAA6E;QAC7E,+EAA+E;QAC/E,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;QAChC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,6EAA6E;QAC7E,yEAAyE;QACzE,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,6EAA6E;QAC7E,2EAA2E;QAC3E,8EAA8E;QAC9E,qEAAqE;QACrE,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,6EAA6E;YAC7E,2EAA2E;YAC3E,IAAI,UAAU,IAAI,CAAC,UAAU,EAAE;gBAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CAAC,CAAC;IACH,+EAA+E;IAC/E,+EAA+E;IAC/E,gFAAgF;IAChF,mEAAmE;IACnE,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACxB,2EAA2E;QAC3E,oEAAoE;QACpE,kBAAkB,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QAC1C,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,+EAA+E;IAC/E,+EAA+E;IAC/E,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,WAAW,GAAG,KAAK,CAAC;QACpB,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACtD,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QACxB,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,2EAA2E;IAC3E,8DAA8D;IAC9D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,QAAQ,KAAK,OAAO;QAAE,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,MAAM,EAAE,CAAC;IAEf,gFAAgF;IAChF,8EAA8E;IAC9E,2EAA2E;IAC3E,0EAA0E;IAC1E,kCAAkC;IAClC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;QAClC,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACrC,2EAA2E;QAC3E,+CAA+C;QAC/C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC/C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QACzC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,WAAW,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC,CAAC,mCAAmC;QAC9E,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAAC,CAAC;aACjD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAAC,CAAC;aACvD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAAC,CAAC;aACvD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC;aACnE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;YAChC,yEAAyE;YACzE,gEAAgE;YAChE,UAAU,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,+EAA+E;IAC/E,mDAAmD;IACnD,MAAM,WAAW,GAAG,CAAC,CAAa,EAAE,GAAW,EAAQ,EAAE;QACvD,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,iDAAiD;YACpE,0EAA0E;YAC1E,qEAAqE;YACrE,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;oBAC7B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;wBAAC,CAAC,CAAC,MAAM,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,OAAO,CAAC,kDAAkD;QAC5D,CAAC;QACD,yEAAyE;QACzE,6EAA6E;QAC7E,mDAAmD;QACnD,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACxE,WAAW,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,UAAU,EAAE;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB;QAC1E,4CAA4C;IAC9C,CAAC,CAAC;IAEF,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,gFAAgF;IAChF,4DAA4D;IAC5D,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE;QAC5B,4EAA4E;QAC5E,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC5D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAI,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YACnB,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,KAAK,CAAC;gBACtB,IAAI,IAAI,KAAK,MAAM;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;oBACxD,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC,EAAE,CAAC;gBACJ,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/B,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpD,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;gBAClB,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,0EAA0E;YAC1E,2EAA2E;YAC3E,mEAAmE;YACnE,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACpD,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzG,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,WAAW,EAAE,CAAC;gBACd,CAAC,IAAI,CAAC,CAAC;gBACP,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,aAAa,GAAG,IAAI,CAAC;gBACrB,CAAC,EAAE,CAAC;gBACJ,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1B,gFAAgF;IAChF,6EAA6E;IAC7E,wEAAwE;IACxE,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC9B,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,6EAA6E;QAC7E,8EAA8E;QAC9E,yDAAyD;QACzD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5C,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,KAAK,CAAC,UAAU,SAAS,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAChC,6EAA6E;QAC7E,4EAA4E;QAC5E,IAAI,QAAQ,KAAK,OAAO;YAAE,WAAW,EAAE,CAAC;;YACnC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,kBAAkB,EAAE,CAAC,CAAC,+CAA+C;QACrE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,kEAAkE;QACrF,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,QAAQ,KAAK,QAAQ;YAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,qCAAqC;QACtF,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,kDAAkD;QACxE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB;QACvC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,4DAA4D;QACpF,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;QAClC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC;gBAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAAC,CAAC;QAC/D,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,EAAE,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9D,8EAA8E;IAC9E,4EAA4E;IAC5E,wEAAwE;IACxE,2BAA2B;IAC3B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;QACjB,IAAI,IAAI,EAAE,CAAC,CAAC,uCAAuC;YACjD,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,QAAQ,KAAK,OAAO;gBAAE,UAAU,GAAG,IAAI,CAAC,CAAC,4BAA4B;YACzE,OAAO;QACT,CAAC;QACD,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC9B,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,KAAK,CAAC,UAAU,SAAS,GAAG,CAAC,CAAC,CAAC,qCAAqC;QACpE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,yCAAyC;QAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,+CAA+C;QAC1E,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,qDAAqD;QAC9E,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,mDAAmD;QACxE,IAAI,GAAG,IAAI,CAAC;QACZ,2EAA2E;QAC3E,sEAAsE;QACtE,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,iEAAiE;IACjE,KAAK,CAAC,eAAe,CAAC,CAAC;IACvB,KAAK,CAAC,GAAG,MAAM,2BAA2B,KAAK,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAoB,EAAE,MAAqB;IACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9B,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,OAAO,CAAC,OAAO,EAAE,CAAC;IAElB,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAAC,IAAI,CAAC;YAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IAAC,CAAC;IAEhF,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7B,IAAI,KAAK,CAAC,KAAK;QAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,CAAC,MAAM,EAAE,CAAC;IAEf,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;IAChE,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/E,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,kEAAkE;QACrF,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC;gBAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAAC,CAAC;QAC/D,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,IAAI,CAAC,8BAA8B,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE5B,gFAAgF;IAChF,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,uDAAuD,IAAI,IAAI,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"host-terminal.js","sourceRoot":"","sources":["../src/host-terminal.ts"],"names":[],"mappings":"AAYA,8EAA8E;AAC9E,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,QAAQ,GAAG,CAAC,CAAC;AAEnB,mFAAmF;AACnF,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAE9B,0DAA0D;AAC1D,MAAM,MAAM,GAAG,IAAI,CAAC;AAEpB,4CAA4C;AAC5C,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,uBAAuB;AACvD,MAAM,aAAa,GAAG,eAAe,CAAC,CAAC,mCAAmC;AAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,oBAAoB;AAC/C,MAAM,KAAK,GAAG,SAAS,CAAC;AAExB,8EAA8E;AAC9E,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAC9C,MAAM,aAAa,GAAG,wBAAwB,CAAC;AAkB/C;;;;GAIG;AACH,SAAS,UAAU,CAAC,CAAS,EAAE,CAAS;IACtC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IACzF,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACd,MAAM,OAAO,GAAG,GAAkB,EAAE;QAClC,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,GAAG,GAAG,KAAK,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAE,IAAI,IAAI,EAAE,CAAC;YAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,GAAG,IAAI,CAAC,CAAC;YAAC,CAAC,EAAE,CAAC;YAAC,GAAG,GAAG,IAAI,CAAC;QAAC,CAAC;QACxG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxB,CAAC,CAAC;IACF,MAAM,MAAM,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC3D,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAAC,CAAC,EAAE,CAAC;IAC5C,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAAC,CAAC,EAAE,CAAC;IACpC,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;IAAC,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACrD,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjB,IAAI,GAAG,KAAK,IAAI,CAAC,OAAO,IAAI,GAAG,KAAK,IAAI,CAAC,OAAO;QAAE,OAAO,IAAI,CAAC;IAC9D,OAAO,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;AACtE,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAAC,OAAoB,EAAE,MAAqB;IAC5E,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAE5B,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,CAAC,CAAC;IACjC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAC9B,MAAM,UAAU,GACd,CAAC,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,IAAI,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,CAAC;IAE1E,IAAI,UAAU;QAAE,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;;QAC1D,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,iBAAiB,CACxB,OAAoB,EACpB,MAAqB,EACrB,WAAmB,EACnB,WAAmB;IAEnB,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAE5B,MAAM,KAAK,GAAG,CAAC,CAAS,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,CAAC,CAAa,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC;IAEvF,IAAI,IAAI,GAAG,WAAW,CAAC;IACvB,IAAI,IAAI,GAAG,WAAW,CAAC;IAEvB,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,uDAAuD;IACzE,IAAI,OAAO,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,QAAQ,GAAG,KAAK,CAAC;IAErB,0EAA0E;IAC1E,2EAA2E;IAC3E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,mEAAmE;IACnE,IAAI,QAAQ,GAAiC,OAAO,CAAC;IAErD,gFAAgF;IAChF,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,6BAA6B;IAC7B,IAAI,WAAW,GAAa,EAAE,CAAC;IAC/B,IAAI,YAAY,GAAG,CAAC,CAAC;IACrB,8EAA8E;IAC9E,yEAAyE;IACzE,4EAA4E;IAC5E,IAAI,UAAU,GAAG,KAAK,CAAC;IAEvB,2EAA2E;IAC3E,4EAA4E;IAC5E,kDAAkD;IAClD,IAAI,YAAY,GAAkB,EAAE,CAAC;IAErC,6EAA6E;IAC7E,+EAA+E;IAC/E,+EAA+E;IAC/E,8EAA8E;IAC9E,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;IACxC,MAAM,UAAU,GAAG,GAAY,EAAE,CAC/B,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACtF,MAAM,aAAa,GAAG,qCAAqC,CAAC;IAC5D,MAAM,YAAY,GAAG,CAAC,GAAe,EAAQ,EAAE;QAC7C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,aAAa,CAAC,SAAS,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAyB,CAAC;QAC9B,OAAO,CAAC,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC5C,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;;gBACtC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;QACnC,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,gFAAgF;IAChF,+EAA+E;IAC/E,4EAA4E;IAC5E,8EAA8E;IAC9E,uEAAuE;IACvE,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,QAAQ,GAAG,GAAY,EAAE,CAC7B,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,WAAW,GAAG,8BAA8B,CAAC;IACnD,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,MAAM,UAAU,GAAG,CAAC,GAAe,EAAQ,EAAE;QAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC9C,WAAW,CAAC,SAAS,GAAG,CAAC,CAAC;QAC1B,IAAI,CAAyB,CAAC;QAC9B,OAAO,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG;gBAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,CAAC;YACzC,4EAA4E;YAC5E,2EAA2E;iBACtE,IAAI,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAE,CAAC,IAAI,QAAQ,KAAK,OAAO;gBAAE,YAAY,GAAG,IAAI,CAAC;QAClF,CAAC;IACH,CAAC,CAAC;IAEF,2EAA2E;IAC3E,yEAAyE;IACzE,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAC3C,IAAI,OAAO,GAA0B,YAAY,CAAC,OAAO,CAAC;IAC1D,IAAI,WAAW,GAAG,YAAY,CAAC,WAAW,CAAC;IAE3C;;;;;;OAMG;IACH,MAAM,QAAQ,GAAG,GAAW,EAAE;QAC5B,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,MAAM,IAAI,GAAkE;YAC1E,wEAAwE;YACxE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,KAAK,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,EAAE;SACnF,CAAC;QACF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACxE,MAAM,GAAG,GAAG,CAAC,CAAC;YACd,IAAI,CAAC,IAAI,CAAC;gBACR,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG;gBAC3B,MAAM,EAAE,QAAQ,KAAK,OAAO,IAAI,CAAC,KAAK,WAAW;gBACjD,MAAM,EAAE,GAAG,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAC3D,CAAC,CAAC;QACL,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,OAAO,UAAU,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QAEnE,+DAA+D;QAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC;QAChD,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAE/D,0EAA0E;QAC1E,0EAA0E;QAC1E,8EAA8E;QAC9E,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,OAAO,IAAI,UAAU;gBAAE,MAAM;YACjC,MAAM,IAAI,GAAG,UAAU,GAAG,OAAO,CAAC;YAClC,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YACnE,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YACjG,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,aAAa,GAAG,IAAI,GAAG,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;YAC7D,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC;QACzB,CAAC;QAED,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3F,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1C,YAAY,GAAG,OAAO,CAAC;QACvB,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,KAAK,GAAG,KAAK,EAAE,CAAC;IAC5D,CAAC,CAAC;IAEF,+EAA+E;IAC/E,6EAA6E;IAC7E,+EAA+E;IAC/E,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,kEAAkE;QAClE,4EAA4E;QAC5E,6EAA6E;QAC7E,uEAAuE;QACvE,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,QAAQ,GAAG,KAAK,CAAC;QACjB,KAAK,CAAC,aAAa,IAAI,aAAa,QAAQ,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC,CAAC;IAEF,4EAA4E;IAC5E,+EAA+E;IAC/E,MAAM,WAAW,GAAG,CAAC,IAAmB,EAAY,EAAE,CAAC;QACrD,GAAG,MAAM,aAAa,KAAK,wBAAwB;QACnD,qDAAqD;QACrD,EAAE;QACF,0BAA0B;QAC1B,KAAK,MAAM,GAAG,IAAI,IAAI,aAAa,GAAG,KAAK,EAAE;QAC7C,EAAE;QACF,yEAAyE;KAC1E,CAAC;IAEF,6EAA6E;IAC7E,uEAAuE;IACvE,qEAAqE;IACrE,6EAA6E;IAC7E,sBAAsB;IACtB,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,UAAU,GAAG,KAAK,CAAC;QACnB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,GAAG,MAAM,mBAAmB,KAAK,EAAE,CAAC;QAChD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,oCAAoC;QAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,QAAQ,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/C,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,2BAA2B;QAC3E,CAAC;QACD,IAAI,CAAC,GAAG,SAAS,EAAE,CAAC;YAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC;YAAC,CAAC,EAAE,CAAC;QAAC,CAAC,CAAC,YAAY;QAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;YACxC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,wBAAwB;YAC1D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,IAAI,IAAI,KAAK,SAAS;gBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC;IAEF,sEAAsE;IACtE,8EAA8E;IAC9E,8EAA8E;IAC9E,4EAA4E;IAC5E,6EAA6E;IAC7E,sEAAsE;IACtE,6DAA6D;IAC7D,MAAM,eAAe,GAAG,CAAC,KAAiB,EAAE,EAAE;QAC5C,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC,EAAE;YAAE,GAAG,IAAI,QAAQ,CAAC,YAAY,CAAC;QAClE,GAAG,IAAI,QAAQ,CAAC;QAChB,KAAK,CAAC,GAAG,CAAC,CAAC;QACX,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QACtC,OAAO,EAAE,CAAC;QACV,4EAA4E;QAC5E,8EAA8E;QAC9E,mBAAmB;QACnB,KAAK,CAAC,YAAY,CAAC,CAAC;IACtB,CAAC,CAAC;IAEF,iFAAiF;IACjF,6EAA6E;IAC7E,0EAA0E;IAC1E,gFAAgF;IAChF,gFAAgF;IAChF,8EAA8E;IAC9E,6EAA6E;IAC7E,sEAAsE;IACtE,IAAI,iBAA4D,CAAC;IACjE,MAAM,kBAAkB,GAAG,GAAG,EAAE;QAC9B,IAAI,iBAAiB,EAAE,CAAC;YAAC,YAAY,CAAC,iBAAiB,CAAC,CAAC;YAAC,iBAAiB,GAAG,SAAS,CAAC;QAAC,CAAC;IAC5F,CAAC,CAAC;IACF,4EAA4E;IAC5E,gFAAgF;IAChF,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,wBAAwB,GAAG,GAAG,EAAE;QACpC,kBAAkB,EAAE,CAAC;QACrB,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YAClC,iBAAiB,GAAG,SAAS,CAAC;YAC9B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;gBAAE,OAAO;YAC1C,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACxD,CAAC,EAAE,iBAAiB,CAAC,CAAC;QACtB,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC;QAC5B,OAAO,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,0EAA0E;IAC1E,wEAAwE;IACxE,4EAA4E;IAC5E,yEAAyE;IACzE,MAAM,qBAAqB,GAAG,GAAG,EAAE;QACjC,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,YAAY,GAAG,KAAK,CAAC,CAAC,uDAAuD;QAC7E,wBAAwB,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,gFAAgF;IAChF,wDAAwD;IACxD,MAAM,YAAY,GAAG,GAAG,EAAE;QACxB,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,wBAAwB,EAAE,CAAC;IAC7B,CAAC,CAAC;IAEF,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QACjC,QAAQ,GAAG,OAAO,CAAC;QACnB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IACF,0EAA0E;IAC1E,mDAAmD;IACnD,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,MAAM,QAAQ,GAAG,QAAQ,KAAK,OAAO,CAAC;QACtC,QAAQ,GAAG,OAAO,CAAC;QACnB,IAAI,QAAQ;YAAE,YAAY,EAAE,CAAC;IAC/B,CAAC,CAAC;IAEF,4EAA4E;IAC5E,2EAA2E;IAC3E,6EAA6E;IAC7E,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,4CAA4C;IAE5C,oEAAoE;IACpE,MAAM,eAAe,GAAG,GAAW,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;IACnF,MAAM,iBAAiB,GAAG,GAAS,EAAE;QACnC,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC;IAEF,6EAA6E;IAC7E,gEAAgE;IAChE,MAAM,cAAc,GAAG,GAAW,EAAE;QAClC,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC;QACjC,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACrE,IAAI,KAAK,GAAG,mBAAmB,GAAG,IAAI,MAAM,IAAI,KAAK,oCAAoC,CAAC;QAC1F,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI;YAAE,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACtD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1D,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,IAAI,GAAG,KAAK,EAAE,CAAC;IACrD,CAAC,CAAC;IAEF,2EAA2E;IAC3E,0EAA0E;IAC1E,iCAAiC;IACjC,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACvC,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC;YACjC,MAAM,IAAI,GAAG,WAAW,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;YAC3C,IAAI,IAAI;gBAAE,GAAG,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,CAAC;QACD,GAAG,IAAI,QAAQ,IAAI,aAAa,cAAc,EAAE,EAAE,CAAC;QACnD,KAAK,CAAC,GAAG,CAAC,CAAC;IACb,CAAC,CAAC;IAEF,+EAA+E;IAC/E,+EAA+E;IAC/E,yEAAyE;IACzE,sDAAsD;IACtD,MAAM,WAAW,GAAG,GAAS,EAAE;QAC7B,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QAC1C,QAAQ,GAAG,QAAQ,CAAC;QACpB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,+CAA+C;QACrE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAM,+CAA+C;QACrE,KAAK,CAAC,WAAW,CAAC,CAAC,CAAG,oCAAoC;QAC1D,2EAA2E;QAC3E,4EAA4E;QAC5E,2EAA2E;QAC3E,kEAAkE;QAClE,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAC9B,CAAC,CAAC;IAEF,yEAAyE;IACzE,2EAA2E;IAC3E,wEAAwE;IACxE,6DAA6D;IAC7D,MAAM,UAAU,GAAG,GAAS,EAAE;QAC5B,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,QAAQ,GAAG,OAAO,CAAC;QACnB,WAAW,GAAG,EAAE,CAAC;QACjB,YAAY,GAAG,CAAC,CAAC;QACjB,KAAK,CAAC,aAAa,CAAC,CAAC,CAAe,kDAAkD;QACtF,KAAK,CAAC,WAAW,CAAC,CAAC,CAAiB,wBAAwB;QAC5D,KAAK,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,mCAAmC;QAC9E,KAAK,CAAC,YAAY,CAAC,CAAC,CAAgB,yCAAyC;QAC7E,OAAO,CAAC,YAAY,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,iCAAiC;IAC5E,CAAC,CAAC;IAEF,+EAA+E;IAC/E,gFAAgF;IAChF,gFAAgF;IAChF,8EAA8E;IAC9E,iDAAiD;IACjD,MAAM,iBAAiB,GAAG,CAAC,CAAS,EAAQ,EAAE;QAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACnC,IAAI,OAAO,GAAG,KAAK,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAI,CAAC;YAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/B,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,CAAC;qBACzE,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,OAAO,GAAG,IAAI,CAAC;gBAAC,CAAC;gBACnF,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;gBAClB,SAAS;YACX,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC;gBACpB,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBACxB,IAAI,QAAQ,GAAG,CAAC,CAAC;gBACjB,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,IAAI,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACvE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,IAAI,IAAI,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACvE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnE,IAAI,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBACnF,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,CAAC,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAClE,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;oBAAC,QAAQ,GAAG,CAAC,CAAC;gBAAC,CAAC;qBAClF,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAAC,UAAU,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC,CAAC,kBAAkB;gBACzE,6EAA6E;gBAC7E,CAAC,IAAI,QAAQ,CAAC;gBACd,OAAO,GAAG,IAAI,CAAC;gBACf,SAAS;YACX,CAAC;YACD,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAChB,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,IAAI,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACjD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,IAAI,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACtD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,GAAG,CAAC,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACrD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,YAAY,GAAG,eAAe,EAAE,CAAC;gBAAC,OAAO,GAAG,IAAI,CAAC;YAAC,CAAC;iBACrE,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;gBAAC,UAAU,EAAE,CAAC;gBAAC,OAAO;YAAC,CAAC;YAC9C,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,OAAO,EAAE,CAAC;YAAC,iBAAiB,EAAE,CAAC;YAAC,YAAY,EAAE,CAAC;QAAC,CAAC;IACvD,CAAC,CAAC;IAEF,6EAA6E;IAC7E,gFAAgF;IAChF,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,6EAA6E;QAC7E,uCAAuC;QACvC,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YAAC,IAAI,UAAU;gBAAE,WAAW,EAAE,CAAC;QAAC,CAAC;QAC5D,0EAA0E;QAC1E,yEAAyE;QACzE,wCAAwC;aACnC,IAAI,YAAY;YAAE,qBAAqB,EAAE,CAAC;aAC1C,IAAI,QAAQ;YAAE,OAAO,EAAE,CAAC;IAC/B,CAAC,EAAE,QAAQ,CAAC,CAAC;IACb,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAEhB,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO,CAAC,gEAAgE;QACnF,6EAA6E;QAC7E,+EAA+E;QAC/E,MAAM,UAAU,GAAG,UAAU,EAAE,CAAC;QAChC,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,6EAA6E;QAC7E,yEAAyE;QACzE,UAAU,CAAC,KAAK,CAAC,CAAC;QAClB,6EAA6E;QAC7E,2EAA2E;QAC3E,8EAA8E;QAC9E,qEAAqE;QACrE,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,QAAQ,GAAG,IAAI,CAAC;YAChB,6EAA6E;YAC7E,2EAA2E;YAC3E,IAAI,UAAU,IAAI,CAAC,UAAU,EAAE;gBAAE,KAAK,CAAC,YAAY,CAAC,CAAC;QACvD,CAAC;IACH,CAAC,CAAC,CAAC;IACH,+EAA+E;IAC/E,+EAA+E;IAC/E,gFAAgF;IAChF,mEAAmE;IACnE,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;QACxB,2EAA2E;QAC3E,oEAAoE;QACpE,kBAAkB,EAAE,CAAC;QACrB,IAAI,CAAC,IAAI,IAAI,QAAQ,KAAK,OAAO;YAAE,OAAO;QAC1C,eAAe,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,+EAA+E;IAC/E,+EAA+E;IAC/E,OAAO,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE;QAC7B,IAAI,QAAQ,KAAK,QAAQ;YAAE,OAAO;QAClC,WAAW,GAAG,KAAK,CAAC;QACpB,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;QACtD,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5D,OAAO,CAAC,aAAa,CAAC,CAAC,KAAK,EAAE,EAAE;QAC9B,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QACxB,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC,CAAC,CAAC;IAEH,oEAAoE;IACpE,2EAA2E;IAC3E,8DAA8D;IAC9D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,QAAQ,KAAK,OAAO;QAAE,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7B,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACvB,KAAK,CAAC,MAAM,EAAE,CAAC;IAEf,gFAAgF;IAChF,8EAA8E;IAC9E,2EAA2E;IAC3E,0EAA0E;IAC1E,kCAAkC;IAClC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;QAClC,MAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACrC,2EAA2E;QAC3E,+CAA+C;QAC/C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QAC/C,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC;QACzC,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,WAAW,EAAE,CAAC;YAAC,OAAO;QAAC,CAAC,CAAC,mCAAmC;QAC9E,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,SAAS,EAAE,CAAC;QAAC,CAAC;aACjD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAAC,CAAC;aACvD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAAC,CAAC;aACvD,IAAI,EAAE,KAAK,GAAG,EAAE,CAAC;YAAC,UAAU,EAAE,CAAC;YAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAAC,CAAC;aACnE,IAAI,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,GAAG,EAAE,CAAC;YAChC,yEAAyE;YACzE,gEAAgE;YAChE,UAAU,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;YAC1B,OAAO,CAAC,YAAY,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC;IAEF,6EAA6E;IAC7E,6EAA6E;IAC7E,6EAA6E;IAC7E,+EAA+E;IAC/E,mDAAmD;IACnD,MAAM,WAAW,GAAG,CAAC,CAAa,EAAE,GAAW,EAAQ,EAAE;QACvD,IAAI,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,iDAAiD;YACpE,0EAA0E;YAC1E,qEAAqE;YACrE,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;gBACvC,KAAK,MAAM,CAAC,IAAI,YAAY,EAAE,CAAC;oBAC7B,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,EAAE,CAAC;wBAAC,CAAC,CAAC,MAAM,EAAE,CAAC;wBAAC,MAAM;oBAAC,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,OAAO,CAAC,kDAAkD;QAC5D,CAAC;QACD,yEAAyE;QACzE,6EAA6E;QAC7E,mDAAmD;QACnD,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,MAAM,KAAK,EAAE,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;YACxE,WAAW,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,UAAU,EAAE;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB;QAC1E,4CAA4C;IAC9C,CAAC,CAAC;IAEF,+EAA+E;IAC/E,gFAAgF;IAChF,+EAA+E;IAC/E,gFAAgF;IAChF,4DAA4D;IAC5D,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE;QAC5B,4EAA4E;QAC5E,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC5D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,GAAI,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YACnB,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,KAAK,CAAC;gBACtB,IAAI,IAAI,KAAK,MAAM;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;;oBACxD,UAAU,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC,EAAE,CAAC;gBACJ,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC/B,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;gBACpD,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC;gBAClB,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,0EAA0E;YAC1E,2EAA2E;YAC3E,mEAAmE;YACnE,IAAI,QAAQ,KAAK,OAAO,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,EAAE;gBACpD,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACzG,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,WAAW,EAAE,CAAC;gBACd,CAAC,IAAI,CAAC,CAAC;gBACP,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,aAAa,GAAG,IAAI,CAAC;gBACrB,CAAC,EAAE,CAAC;gBACJ,KAAK,GAAG,CAAC,CAAC;gBACV,SAAS;YACX,CAAC;YACD,CAAC,EAAE,CAAC;QACN,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1B,gFAAgF;IAChF,6EAA6E;IAC7E,wEAAwE;IACxE,MAAM,QAAQ,GAAG,GAAG,EAAE;QACpB,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC9B,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QAC3B,IAAI,CAAC,IAAI;YAAE,OAAO;QAClB,6EAA6E;QAC7E,8EAA8E;QAC9E,yDAAyD;QACzD,IAAI,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC1B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5C,iBAAiB,EAAE,CAAC;YACpB,YAAY,EAAE,CAAC;YACf,OAAO;QACT,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,KAAK,CAAC,UAAU,SAAS,GAAG,CAAC,CAAC;QAC9B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QAChC,6EAA6E;QAC7E,4EAA4E;QAC5E,IAAI,QAAQ,KAAK,OAAO;YAAE,WAAW,EAAE,CAAC;;YACnC,OAAO,EAAE,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,kBAAkB,EAAE,CAAC,CAAC,+CAA+C;QACrE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,kEAAkE;QACrF,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,QAAQ,KAAK,QAAQ;YAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,qCAAqC;QACtF,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,kDAAkD;QACxE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,sBAAsB;QACvC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,4DAA4D;QACpF,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc;QAClC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC;gBAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAAC,CAAC;QAC/D,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,EAAE,CAAC;QACV,KAAK,CAAC,IAAI,CAAC,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE9D,8EAA8E;IAC9E,4EAA4E;IAC5E,wEAAwE;IACxE,2BAA2B;IAC3B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;QACjB,IAAI,IAAI,EAAE,CAAC,CAAC,uCAAuC;YACjD,QAAQ,GAAG,IAAI,CAAC;YAChB,IAAI,QAAQ,KAAK,OAAO;gBAAE,UAAU,GAAG,IAAI,CAAC,CAAC,4BAA4B;YACzE,OAAO;QACT,CAAC;QACD,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;QAC9B,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC;QAC3B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;QACxC,KAAK,CAAC,eAAe,CAAC,CAAC;QACvB,KAAK,CAAC,UAAU,SAAS,GAAG,CAAC,CAAC,CAAC,qCAAqC;QACpE,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,yCAAyC;QAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,YAAY,CAAC,WAAW,CAAC,CAAC,CAAC,+CAA+C;QAC1E,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,qDAAqD;QAC9E,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,mDAAmD;QACxE,IAAI,GAAG,IAAI,CAAC;QACZ,2EAA2E;QAC3E,sEAAsE;QACtE,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,iEAAiE;IACjE,KAAK,CAAC,eAAe,CAAC,CAAC;IACvB,KAAK,CAAC,GAAG,MAAM,2BAA2B,KAAK,EAAE,CAAC,CAAC;AACrD,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAoB,EAAE,MAAqB;IACpE,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAE9B,8EAA8E;IAC9E,6EAA6E;IAC7E,4EAA4E;IAC5E,4EAA4E;IAC5E,sDAAsD;IACtD,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;IAE3B,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAAC,IAAI,CAAC;YAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;IAAC,CAAC;IAChF,6EAA6E;IAC7E,0EAA0E;IAC1E,+DAA+D;IAC/D,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnF,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE,GAAG,IAAI,CAAC;QAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAAC,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC,CAAC,CAAC,CAAC,CAAC;IAEzE,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IAC7B,IAAI,KAAK,CAAC,KAAK;QAAE,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,CAAC,MAAM,EAAE,CAAC;IAEf,2EAA2E;IAC3E,4EAA4E;IAC5E,0EAA0E;IAC1E,0EAA0E;IAC1E,kCAAkC;IAClC,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,CAAC;IACxE,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,MAAM,OAAO,GAAG,CAAC,CAAS,EAAE,EAAE;QAC5B,IAAI,CAAC,SAAS,EAAE,CAAC;YAAC,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO;QAAC,CAAC;QAC7D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC;YACnB,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,GAAG,KAAK,CAAC;gBACtB,IAAI,IAAI,KAAK,MAAM;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBACxD,IAAI,IAAI,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;oBAAC,OAAO,CAAC,MAAO,EAAE,CAAC;oBAAC,OAAO;gBAAC,CAAC;gBAC9D,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,SAAS;YACX,CAAC;YACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,KAAK;oBAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACnE,aAAa,GAAG,IAAI,CAAC;gBACrB,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;YAChB,CAAC;QACH,CAAC;QACD,IAAI,CAAC,CAAC,MAAM,GAAG,KAAK;YAAE,OAAO,CAAC,KAAK,CAAC,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACzE,CAAC,CAAC;IACF,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE1B,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,EAAE,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAC/E,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE9B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,QAAQ;YAAE,OAAO;QACrB,QAAQ,GAAG,IAAI,CAAC;QAChB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,kEAAkE;QACrF,KAAK,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACtC,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAAC,IAAI,CAAC;gBAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;QAAC,CAAC;QAC/D,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACtB,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,IAAI,CAAC,8BAA8B,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE5B,gFAAgF;IAChF,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,EAAE;QACrB,MAAM,CAAC,IAAI,CAAC,uDAAuD,IAAI,IAAI,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACL,CAAC"}