shadok-ai 0.9.0 → 0.9.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,5 @@
1
1
  import { execFile, spawn } from "node:child_process";
2
+ import { claudeCommand } from "./claude-bin.js";
2
3
  /** Pure: `claude auth status --json`. Unreadable output is `unknown`, NOT signed out. */
3
4
  export function parseAuthStatus(stdout) {
4
5
  try {
@@ -59,7 +60,7 @@ export function invalidateAuthStatus() {
59
60
  cached = null;
60
61
  }
61
62
  const probe = () => new Promise((resolve) => {
62
- execFile("claude", ["auth", "status", "--json"], { timeout: 15_000 }, (_err, stdout) => resolve(parseAuthStatus(stdout ?? "")));
63
+ execFile(claudeCommand(), ["auth", "status", "--json"], { timeout: 15_000 }, (_err, stdout) => resolve(parseAuthStatus(stdout ?? "")));
63
64
  });
64
65
  export async function authStatus(force = false) {
65
66
  if (!force && cached && Date.now() - cached.at < STATUS_TTL_MS)
@@ -106,7 +107,7 @@ export async function startLogin() {
106
107
  if ((await authStatus(true)).state === "signed-in")
107
108
  return { alreadySignedIn: true };
108
109
  cancelLogin();
109
- const child = spawn("claude", ["auth", "login", "--claudeai"], {
110
+ const child = spawn(claudeCommand(), ["auth", "login", "--claudeai"], {
110
111
  // BROWSER is neutralised: on a desktop host the CLI would otherwise open a
111
112
  // tab on the SERVER's machine, which is not where the user is.
112
113
  env: { ...process.env, BROWSER: "/usr/bin/true" },
@@ -1 +1 @@
1
- {"version":3,"file":"claude-auth.js","sourceRoot":"","sources":["../src/claude-auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-auth.js","sourceRoot":"","sources":["../src/claude-auth.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,121 @@
4
4
  * (name, env, exists) — inject `exists` in tests.
5
5
  */
6
6
  export declare function resolveBin(name: string, env?: NodeJS.ProcessEnv, exists?: (p: string) => boolean): string | null;
7
+ /** Bytes read to classify a launcher. The whole placeholder is 500 B. */
8
+ export declare const BIN_HEAD_BYTES = 512;
9
+ export type BinKind = "usable" | "stub" | "missing";
10
+ /** What a cheap look at a launcher file yields: its size and its first bytes. */
11
+ export interface BinSample {
12
+ size: number;
13
+ head: string;
14
+ }
15
+ /**
16
+ * Tell the npm placeholder from something we can actually run. Pure.
17
+ *
18
+ * Deliberately CONSERVATIVE: it condemns only what it positively recognises as
19
+ * the placeholder, and calls everything else usable. The tempting rule — "a
20
+ * real claude is an ELF/Mach-O of hundreds of MB, so anything else is broken" —
21
+ * would also condemn every legitimate small launcher: pnpm's shell shim,
22
+ * volta/asdf/mise shims, npm's `.cmd` shim on Windows, a user's own wrapper.
23
+ * Those work fine, and refusing to spawn them would be a worse bug than the one
24
+ * this fixes. Same rule as invariant 27: assert only what you observed.
25
+ *
26
+ * No execution probe. Running `claude --version` before each spawn would cost a
27
+ * process launch per session start, and it would not even be sound: the answer
28
+ * is stale the moment it returns, and the window this guards against is
29
+ * milliseconds wide. A stat plus a 512-byte read costs microseconds and is
30
+ * exactly as (un)raceable, so it buys the safety at none of the price.
31
+ */
32
+ export declare function classifyBin(sample: BinSample | null): BinKind;
33
+ /** Read the first {@link BIN_HEAD_BYTES} of a file, or null if it isn't there. */
34
+ export declare function sampleBin(p: string): BinSample | null;
35
+ /**
36
+ * The optional dependency holding the native binary for a platform, mirroring
37
+ * the PLATFORMS map of `install.cjs`. Returns null for a platform the package
38
+ * does not publish — the caller then has no fallback, which is the truth.
39
+ */
40
+ export declare function platformPkg(platform: string, arch: string, musl?: boolean): {
41
+ pkg: string;
42
+ bin: string;
43
+ } | null;
44
+ /**
45
+ * Where the native binary may sit, given the REAL path of the launcher
46
+ * (`.../@anthropic-ai/claude-code/bin/claude.exe`). Pure: it only builds
47
+ * candidates, the caller decides which one exists.
48
+ *
49
+ * The `node_modules` walk is not decoration. npm hoists an optional dependency
50
+ * to the top level as readily as it nests it, and the layout differs between a
51
+ * global install, `npx`, and the managed `~/.shadok-ai/app`. Assuming the nested
52
+ * layout is precisely the mistake that made `node-pty-fix.ts`'s chmod silently
53
+ * miss on every non-dev install (see CLAUDE.md) — so we reproduce node's own
54
+ * resolution instead: every ancestor directory, each with `node_modules/<pkg>`.
55
+ */
56
+ export declare function nativeBinCandidates(launcherRealPath: string, pkg: string, bin: string): string[];
57
+ export type ClaudeBin = {
58
+ ok: true;
59
+ path: string;
60
+ via: "launcher" | "native";
61
+ } | {
62
+ ok: false;
63
+ reason: "missing" | "stub";
64
+ };
65
+ export interface FindClaudeDeps {
66
+ /** Find the launcher now (typically resolveBin("claude")). */
67
+ resolve: () => string | null;
68
+ /** Follow symlinks (typically fs.realpathSync); may throw, caller guards. */
69
+ realpath: (p: string) => string;
70
+ /** Cheap look at a file (typically sampleBin). */
71
+ sample: (p: string) => BinSample | null;
72
+ platform: string;
73
+ arch: string;
74
+ musl: boolean;
75
+ }
76
+ /**
77
+ * Resolve a claude we can actually run: the launcher when it is real, else the
78
+ * native binary the launcher is only a placeholder for. Pure over injected
79
+ * deps, so the whole decision is unit-tested without touching the real FS.
80
+ */
81
+ export declare function findClaudeBin(deps: FindClaudeDeps): ClaudeBin;
82
+ export interface RetryOptions {
83
+ /** Total attempts, including the first. */
84
+ tries?: number;
85
+ delayMs?: number;
86
+ sleep?: (ms: number) => Promise<void>;
87
+ }
88
+ /**
89
+ * {@link findClaudeBin}, retried briefly. The failure this guards is a
90
+ * TRANSIENT window in someone else's postinstall (unlink → relink), so a hard
91
+ * refusal on the first look would report a healthy install as broken. Bounded
92
+ * on purpose — a couple of seconds at worst, and only on the spawn path, never
93
+ * at boot (same rule as `ensureTmux` / `ensureSshIdentity`: nothing here may
94
+ * hold the server back from serving).
95
+ */
96
+ export declare function findClaudeBinWithRetry(deps: FindClaudeDeps, opts?: RetryOptions): Promise<ClaudeBin>;
97
+ /** Live deps for {@link findClaudeBin}, reading the real filesystem. */
98
+ export declare function liveClaudeDeps(): FindClaudeDeps;
99
+ /**
100
+ * The claude to spawn. The resolved binary when we have one — which is NOT
101
+ * always the launcher, see {@link findClaudeBin} — else the bare name, so a
102
+ * layout we failed to understand behaves exactly as it did before.
103
+ *
104
+ * Re-validated on each call: a cached path rots the moment claude-code
105
+ * upgrades, and one stat is a rounding error next to the process spawn every
106
+ * caller is about to pay for.
107
+ */
108
+ export declare function claudeCommand(): string;
109
+ /** Record a path already resolved (by `ensureClaude`), so we don't look twice. */
110
+ export declare function rememberClaudeBin(p: string | null): void;
7
111
  /** The manual-install fallback message, shown when the auto-install can't help. */
8
112
  export declare function claudeMissingMessage(detail: string): string;
113
+ /**
114
+ * Why a spawn was refused when `claude` IS on PATH. The point is to say what is
115
+ * wrong instead of letting a bare `posix_spawnp failed` — or the placeholder's
116
+ * own exit 1 — reach the user, in the spirit of `describeStuckScreen`.
117
+ */
118
+ export declare function claudeStubMessage(): string;
9
119
  export interface EnsureClaudeDeps {
10
- /** Find claude now (typically resolveBin("claude")). Called again after install. */
11
- resolve: () => string | null;
120
+ /** Locate a RUNNABLE claude now. Called again after an install. */
121
+ find: () => Promise<ClaudeBin>;
12
122
  /** Perform the global install (typically `npm i -g @anthropic-ai/claude-code`). */
13
123
  install: () => Promise<void>;
14
124
  /** Surface progress (server log / a line to the client). */
@@ -22,10 +132,14 @@ export type EnsureClaudeResult = {
22
132
  error: string;
23
133
  };
24
134
  /**
25
- * Make the claude CLI available, installing it ONCE if it is missing. Returns
26
- * the resolved path, or a clear, actionable error when it still isn't there
27
- * (install failed on permissions, or the global bin dir isn't on PATH) — never
28
- * the raw `posix_spawnp failed` a bare spawn would throw. Pure orchestration
29
- * over injected deps, so it is tested without touching npm.
135
+ * Make a runnable claude CLI available, installing it ONCE if it is missing.
136
+ * Returns the path to spawn — which is NOT always the launcher: when the
137
+ * launcher is the placeholder we hand back the native binary behind it.
138
+ * Otherwise a clear, actionable error, never the raw `posix_spawnp failed` a
139
+ * bare spawn would throw, and never the placeholder's opaque exit 1.
140
+ *
141
+ * A placeholder is NOT a reason to reinstall: the package is plainly installed,
142
+ * so `npm i -g` would neither be the missing-CLI case nor a safe move while
143
+ * someone else's postinstall is mid-rewrite. We say what is wrong instead.
30
144
  */
31
145
  export declare function ensureClaude(deps: EnsureClaudeDeps): Promise<EnsureClaudeResult>;
@@ -29,6 +29,238 @@ function isExecutable(p) {
29
29
  return false;
30
30
  }
31
31
  }
32
+ // ---------------------------------------------------------------------------
33
+ // The npm placeholder
34
+ // ---------------------------------------------------------------------------
35
+ //
36
+ // Since the split packaging (verified on 2.1.250), `@anthropic-ai/claude-code`
37
+ // ships `bin/claude.exe` as a 500-byte shell PLACEHOLDER, and its postinstall
38
+ // (`install.cjs`) hardlinks the ~223 MB native binary from the platform
39
+ // optional dependency over it. The placeholder is mode 0755, so it satisfies
40
+ // `X_OK` exactly like the real thing — `resolveBin` cannot tell them apart, and
41
+ // running it just prints "Error: claude native binary not installed." and exits
42
+ // 1. That is the opaque death a spawn used to inherit.
43
+ //
44
+ // It is not only the `--ignore-scripts` / `--omit=optional` case. `placeBinary`
45
+ // in install.cjs UNLINKS the destination before relinking, and restores the
46
+ // placeholder if the copy fails, so EVERY claude-code upgrade opens a window in
47
+ // which the launcher path is either absent or the placeholder again. Measured
48
+ // on this machine: sampling every 2 s for a minute during an upgrade, 1 sample
49
+ // in 30 was broken, and one direct `claude --version` answered "No such file or
50
+ // directory" while `/usr/local/bin/claude` plainly existed (a symlink onto the
51
+ // launcher mid-rewrite). Anthropic acknowledged a cousin of this in the 2.1.246
52
+ // CHANGELOG ("background sessions failing ... EACCES when another Claude Code
53
+ // process was re-installing the npm package at that moment") and fixed it for
54
+ // their own sessions; we had no equivalent.
55
+ /** Bytes read to classify a launcher. The whole placeholder is 500 B. */
56
+ export const BIN_HEAD_BYTES = 512;
57
+ /**
58
+ * Above this, a file cannot be the placeholder. `install.cjs` uses the same
59
+ * order of magnitude (`statSync(dest).size < 4096`) to recognise its own stub.
60
+ */
61
+ const STUB_MAX_BYTES = 4096;
62
+ /** Verbatim from the placeholder's first line — the one thing only it says. */
63
+ const STUB_MARKER = "native binary not installed";
64
+ /**
65
+ * Tell the npm placeholder from something we can actually run. Pure.
66
+ *
67
+ * Deliberately CONSERVATIVE: it condemns only what it positively recognises as
68
+ * the placeholder, and calls everything else usable. The tempting rule — "a
69
+ * real claude is an ELF/Mach-O of hundreds of MB, so anything else is broken" —
70
+ * would also condemn every legitimate small launcher: pnpm's shell shim,
71
+ * volta/asdf/mise shims, npm's `.cmd` shim on Windows, a user's own wrapper.
72
+ * Those work fine, and refusing to spawn them would be a worse bug than the one
73
+ * this fixes. Same rule as invariant 27: assert only what you observed.
74
+ *
75
+ * No execution probe. Running `claude --version` before each spawn would cost a
76
+ * process launch per session start, and it would not even be sound: the answer
77
+ * is stale the moment it returns, and the window this guards against is
78
+ * milliseconds wide. A stat plus a 512-byte read costs microseconds and is
79
+ * exactly as (un)raceable, so it buys the safety at none of the price.
80
+ */
81
+ export function classifyBin(sample) {
82
+ if (!sample)
83
+ return "missing";
84
+ if (sample.size < STUB_MAX_BYTES && sample.head.includes(STUB_MARKER))
85
+ return "stub";
86
+ return "usable";
87
+ }
88
+ /** Read the first {@link BIN_HEAD_BYTES} of a file, or null if it isn't there. */
89
+ export function sampleBin(p) {
90
+ let fd = null;
91
+ try {
92
+ const size = fs.statSync(p).size;
93
+ // A multi-hundred-MB binary is never the placeholder: skip the read.
94
+ if (size >= STUB_MAX_BYTES)
95
+ return { size, head: "" };
96
+ fd = fs.openSync(p, "r");
97
+ const buf = Buffer.alloc(Math.min(size, BIN_HEAD_BYTES));
98
+ const read = fs.readSync(fd, buf, 0, buf.length, 0);
99
+ return { size, head: buf.subarray(0, read).toString("latin1") };
100
+ }
101
+ catch {
102
+ return null;
103
+ }
104
+ finally {
105
+ if (fd !== null)
106
+ try {
107
+ fs.closeSync(fd);
108
+ }
109
+ catch { /* nothing to do */ }
110
+ }
111
+ }
112
+ // ---------------------------------------------------------------------------
113
+ // The native binary behind the placeholder
114
+ // ---------------------------------------------------------------------------
115
+ /**
116
+ * The optional dependency holding the native binary for a platform, mirroring
117
+ * the PLATFORMS map of `install.cjs`. Returns null for a platform the package
118
+ * does not publish — the caller then has no fallback, which is the truth.
119
+ */
120
+ export function platformPkg(platform, arch, musl = false) {
121
+ const win = platform === "win32";
122
+ const key = platform === "linux" ? `linux-${arch}${musl ? "-musl" : ""}` : `${platform}-${arch}`;
123
+ const known = new Set([
124
+ "darwin-arm64", "darwin-x64",
125
+ "linux-x64", "linux-arm64", "linux-x64-musl", "linux-arm64-musl",
126
+ "win32-x64", "win32-arm64",
127
+ ]);
128
+ if (!known.has(key))
129
+ return null;
130
+ return { pkg: `${CLAUDE_PKG}-${key}`, bin: win ? "claude.exe" : "claude" };
131
+ }
132
+ /**
133
+ * Where the native binary may sit, given the REAL path of the launcher
134
+ * (`.../@anthropic-ai/claude-code/bin/claude.exe`). Pure: it only builds
135
+ * candidates, the caller decides which one exists.
136
+ *
137
+ * The `node_modules` walk is not decoration. npm hoists an optional dependency
138
+ * to the top level as readily as it nests it, and the layout differs between a
139
+ * global install, `npx`, and the managed `~/.shadok-ai/app`. Assuming the nested
140
+ * layout is precisely the mistake that made `node-pty-fix.ts`'s chmod silently
141
+ * miss on every non-dev install (see CLAUDE.md) — so we reproduce node's own
142
+ * resolution instead: every ancestor directory, each with `node_modules/<pkg>`.
143
+ */
144
+ export function nativeBinCandidates(launcherRealPath, pkg, bin) {
145
+ const pkgDir = path.dirname(path.dirname(launcherRealPath));
146
+ const out = [];
147
+ let dir = pkgDir;
148
+ for (;;) {
149
+ // `path.basename(dir) === "node_modules"` would skip the nested case, which
150
+ // is the layout npm actually produced here — take every ancestor.
151
+ out.push(path.join(dir, "node_modules", pkg, bin));
152
+ const up = path.dirname(dir);
153
+ if (up === dir)
154
+ break;
155
+ dir = up;
156
+ }
157
+ return out;
158
+ }
159
+ /**
160
+ * Resolve a claude we can actually run: the launcher when it is real, else the
161
+ * native binary the launcher is only a placeholder for. Pure over injected
162
+ * deps, so the whole decision is unit-tested without touching the real FS.
163
+ */
164
+ export function findClaudeBin(deps) {
165
+ const launcher = deps.resolve();
166
+ if (!launcher)
167
+ return { ok: false, reason: "missing" };
168
+ if (classifyBin(deps.sample(launcher)) === "usable")
169
+ return { ok: true, path: launcher, via: "launcher" };
170
+ // The launcher is the placeholder. The native binary is usually right there
171
+ // in the package's own tree — the postinstall just has not copied it over
172
+ // yet, or is mid-copy. Going straight to it turns a hard failure into a spawn
173
+ // that works, which is what `cli-wrapper.cjs` does for the same reason.
174
+ const info = platformPkg(deps.platform, deps.arch, deps.musl);
175
+ if (info) {
176
+ let real = launcher;
177
+ try {
178
+ real = deps.realpath(launcher);
179
+ }
180
+ catch {
181
+ // A launcher we cannot realpath is still a launcher: candidates built
182
+ // from the symlink itself are worth trying before giving up.
183
+ }
184
+ for (const c of nativeBinCandidates(real, info.pkg, info.bin)) {
185
+ if (classifyBin(deps.sample(c)) === "usable")
186
+ return { ok: true, path: c, via: "native" };
187
+ }
188
+ }
189
+ return { ok: false, reason: "stub" };
190
+ }
191
+ /**
192
+ * {@link findClaudeBin}, retried briefly. The failure this guards is a
193
+ * TRANSIENT window in someone else's postinstall (unlink → relink), so a hard
194
+ * refusal on the first look would report a healthy install as broken. Bounded
195
+ * on purpose — a couple of seconds at worst, and only on the spawn path, never
196
+ * at boot (same rule as `ensureTmux` / `ensureSshIdentity`: nothing here may
197
+ * hold the server back from serving).
198
+ */
199
+ export async function findClaudeBinWithRetry(deps, opts = {}) {
200
+ const tries = Math.max(1, opts.tries ?? 6);
201
+ const delayMs = opts.delayMs ?? 250;
202
+ const sleep = opts.sleep ?? ((ms) => new Promise((r) => setTimeout(r, ms)));
203
+ let last = { ok: false, reason: "missing" };
204
+ for (let i = 0; i < tries; i++) {
205
+ last = findClaudeBin(deps);
206
+ if (last.ok)
207
+ return last;
208
+ if (i < tries - 1)
209
+ await sleep(delayMs);
210
+ }
211
+ return last;
212
+ }
213
+ /** Live deps for {@link findClaudeBin}, reading the real filesystem. */
214
+ export function liveClaudeDeps() {
215
+ return {
216
+ resolve: () => resolveBin("claude"),
217
+ realpath: (p) => fs.realpathSync(p),
218
+ sample: sampleBin,
219
+ platform: process.platform,
220
+ arch: process.arch,
221
+ musl: isMusl(),
222
+ };
223
+ }
224
+ /**
225
+ * Same test `install.cjs` uses: `glibcVersionRuntime` is absent from the Node
226
+ * report on musl. Cheaper and more reliable than shelling out to `ldd`.
227
+ */
228
+ function isMusl() {
229
+ if (process.platform !== "linux")
230
+ return false;
231
+ try {
232
+ const report = typeof process.report?.getReport === "function" ? process.report.getReport() : null;
233
+ return report != null && report.header?.glibcVersionRuntime === undefined;
234
+ }
235
+ catch {
236
+ return false;
237
+ }
238
+ }
239
+ // The binary EVERY claude spawn goes through — the pilots, the auth probe, the
240
+ // sign-in, the version probe. Before this they each spawned the bare name
241
+ // `claude`, which is the placeholder whenever the postinstall has not landed:
242
+ // four subsystems failing at once, each with its own opaque symptom.
243
+ let cachedBin = null;
244
+ /**
245
+ * The claude to spawn. The resolved binary when we have one — which is NOT
246
+ * always the launcher, see {@link findClaudeBin} — else the bare name, so a
247
+ * layout we failed to understand behaves exactly as it did before.
248
+ *
249
+ * Re-validated on each call: a cached path rots the moment claude-code
250
+ * upgrades, and one stat is a rounding error next to the process spawn every
251
+ * caller is about to pay for.
252
+ */
253
+ export function claudeCommand() {
254
+ if (cachedBin && classifyBin(sampleBin(cachedBin)) === "usable")
255
+ return cachedBin;
256
+ const r = findClaudeBin(liveClaudeDeps());
257
+ cachedBin = r.ok ? r.path : null;
258
+ return cachedBin ?? "claude";
259
+ }
260
+ /** Record a path already resolved (by `ensureClaude`), so we don't look twice. */
261
+ export function rememberClaudeBin(p) {
262
+ cachedBin = p;
263
+ }
32
264
  /** The manual-install fallback message, shown when the auto-install can't help. */
33
265
  export function claudeMissingMessage(detail) {
34
266
  return (`Claude Code CLI ('claude') is required and ${detail}. ` +
@@ -36,16 +268,34 @@ export function claudeMissingMessage(detail) {
36
268
  `shadok-ai drives claude on your own subscription, so that one-time sign-in is unavoidable.`);
37
269
  }
38
270
  /**
39
- * Make the claude CLI available, installing it ONCE if it is missing. Returns
40
- * the resolved path, or a clear, actionable error when it still isn't there
41
- * (install failed on permissions, or the global bin dir isn't on PATH) — never
42
- * the raw `posix_spawnp failed` a bare spawn would throw. Pure orchestration
43
- * over injected deps, so it is tested without touching npm.
271
+ * Why a spawn was refused when `claude` IS on PATH. The point is to say what is
272
+ * wrong instead of letting a bare `posix_spawnp failed` — or the placeholder's
273
+ * own exit 1 — reach the user, in the spirit of `describeStuckScreen`.
274
+ */
275
+ export function claudeStubMessage() {
276
+ return (`Claude Code CLI ('claude') is on PATH but it is the npm fallback placeholder, ` +
277
+ `not the real binary: the native package (${CLAUDE_PKG}-<platform>) was not installed, ` +
278
+ `or an upgrade is rewriting the launcher right now. ` +
279
+ `If it does not clear on its own, reinstall without --ignore-scripts / --omit=optional, ` +
280
+ `or run the postinstall by hand: node <path-to>/${CLAUDE_PKG}/install.cjs`);
281
+ }
282
+ /**
283
+ * Make a runnable claude CLI available, installing it ONCE if it is missing.
284
+ * Returns the path to spawn — which is NOT always the launcher: when the
285
+ * launcher is the placeholder we hand back the native binary behind it.
286
+ * Otherwise a clear, actionable error, never the raw `posix_spawnp failed` a
287
+ * bare spawn would throw, and never the placeholder's opaque exit 1.
288
+ *
289
+ * A placeholder is NOT a reason to reinstall: the package is plainly installed,
290
+ * so `npm i -g` would neither be the missing-CLI case nor a safe move while
291
+ * someone else's postinstall is mid-rewrite. We say what is wrong instead.
44
292
  */
45
293
  export async function ensureClaude(deps) {
46
- const found = deps.resolve();
47
- if (found)
48
- return { ok: true, path: found };
294
+ const found = await deps.find();
295
+ if (found.ok)
296
+ return { ok: true, path: found.path };
297
+ if (found.reason === "stub")
298
+ return { ok: false, error: claudeStubMessage() };
49
299
  deps.notify(`Claude Code CLI not found — installing ${CLAUDE_PKG} (one-time, this can take a minute)…`);
50
300
  try {
51
301
  await deps.install();
@@ -53,11 +303,13 @@ export async function ensureClaude(deps) {
53
303
  catch (e) {
54
304
  return { ok: false, error: claudeMissingMessage(`installing it failed (${e instanceof Error ? e.message : String(e)})`) };
55
305
  }
56
- const after = deps.resolve();
57
- if (after) {
306
+ const after = await deps.find();
307
+ if (after.ok) {
58
308
  deps.notify("Claude Code CLI installed. You'll be asked to sign in to your Claude account on first use.");
59
- return { ok: true, path: after };
309
+ return { ok: true, path: after.path };
60
310
  }
311
+ if (after.reason === "stub")
312
+ return { ok: false, error: claudeStubMessage() };
61
313
  return { ok: false, error: claudeMissingMessage("it was installed but 'claude' is still not on PATH") };
62
314
  }
63
315
  //# sourceMappingURL=claude-bin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"claude-bin.js","sourceRoot":"","sources":["../src/claude-bin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,UAAU,GAAG,2BAA2B,CAAC;AAE/C;;;;GAIG;AACH,MAAM,UAAU,UAAU,CACxB,IAAY,EACZ,GAAG,GAAsB,OAAO,CAAC,GAAG,EACpC,MAAM,GAA2B,YAAY;IAE7C,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IACjF,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpE,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAChG,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;YACrB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CAAC,CAAC;YACjC,IAAI,MAAM,CAAC,CAAC,CAAC;gBAAE,OAAO,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,YAAY,CAAC,CAAS;IAC7B,IAAI,CAAC;QACH,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACpC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,CACL,8CAA8C,MAAM,IAAI;QACxD,iCAAiC,UAAU,+DAA+D;QAC1G,4FAA4F,CAC7F,CAAC;AACJ,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAsB;IACvD,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,IAAI,KAAK;QAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IAE5C,IAAI,CAAC,MAAM,CAAC,0CAA0C,UAAU,sCAAsC,CAAC,CAAC;IACxG,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC;IACvB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,CAAC,yBAAyB,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5H,CAAC;IAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;IAC7B,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,CAAC,MAAM,CAAC,4FAA4F,CAAC,CAAC;QAC1G,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;IACnC,CAAC;IACD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,oBAAoB,CAAC,oDAAoD,CAAC,EAAE,CAAC;AAC1G,CAAC"}
1
+ {"version":3,"file":"claude-bin.js","sourceRoot":"","sources":["../src/claude-bin.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { execFileSync } from "node:child_process";
2
+ import { claudeCommand } from "./claude-bin.js";
2
3
  import fs from "node:fs";
3
4
  import os from "node:os";
4
5
  import path from "node:path";
@@ -111,7 +112,7 @@ const settingsFile = () => path.join(os.homedir(), ".claude", "settings.json");
111
112
  /** The claude CLI's version, or a conservative fallback. */
112
113
  function claudeVersion() {
113
114
  try {
114
- return (parseClaudeVersion(execFileSync("claude", ["--version"], { encoding: "utf8" })) ?? "0.0.0");
115
+ return (parseClaudeVersion(execFileSync(claudeCommand(), ["--version"], { encoding: "utf8" })) ?? "0.0.0");
115
116
  }
116
117
  catch {
117
118
  return "0.0.0";
@@ -1 +1 @@
1
- {"version":3,"file":"claude-home.js","sourceRoot":"","sources":["../src/claude-home.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-home.js","sourceRoot":"","sources":["../src/claude-home.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -47,7 +47,7 @@ import { acquireInstanceLock, releaseInstanceLock } from "./lock.js";
47
47
  import { bindRefusal, originAllowed, parseOrigins, resolveHost, browserOrigin, } from "./net.js";
48
48
  import { pctFromUsage, windowForModel } from "./context.js";
49
49
  import { startHeartbeat } from "./heartbeat.js";
50
- import { ensureClaude, resolveBin } from "./claude-bin.js";
50
+ import { ensureClaude, claudeCommand, classifyBin, findClaudeBinWithRetry, liveClaudeDeps, rememberClaudeBin, resolveBin, sampleBin, } from "./claude-bin.js";
51
51
  import { ensureTmux, tmuxInstallCommand } from "./tmux-install.js";
52
52
  import { cspHeader, injectNonce, NONCE_PLACEHOLDER, injectAssetVersion } from "./csp.js";
53
53
  const __dirname = path.dirname(fileURLToPath(import.meta.url));
@@ -1536,9 +1536,15 @@ function makePilot(id, cwd, args, profileName) {
1536
1536
  pilotPrompt: sp ?? undefined,
1537
1537
  ledgerReflex: lr,
1538
1538
  }));
1539
+ // Spawn the binary `claudeCommand` resolved, not the bare name `claude`. They
1540
+ // differ exactly when the npm launcher is the fallback placeholder: spawning
1541
+ // by name would then run the 500-byte stub, which exits 1 on stderr and looks
1542
+ // like an agent that died for no reason. With nothing resolvable it falls
1543
+ // back to the bare name, i.e. the historical behaviour.
1544
+ const claudePath = claudeCommand();
1539
1545
  return USE_TMUX
1540
- ? new TmuxPilot({ cwd, args: fullArgs, env, tmuxName: "sk-" + id })
1541
- : new PtyPilot({ cwd, args: fullArgs, env });
1546
+ ? new TmuxPilot({ cwd, args: fullArgs, env, tmuxName: "sk-" + id, claudePath })
1547
+ : new PtyPilot({ cwd, args: fullArgs, env, claudePath });
1542
1548
  }
1543
1549
  /** Session-wide token totals, for the window-title counter. */
1544
1550
  function tokenTotals(s) {
@@ -1613,6 +1619,13 @@ async function restartSession(s) {
1613
1619
  // Resume only if there's a transcript; a never-used session has
1614
1620
  // nothing to resume (claude --resume would exit) — re-create it.
1615
1621
  const hasTranscript = fs.existsSync(sessionFilePath(s.cwd, s.id));
1622
+ // A restart respawns without passing through the `start` handler, so it is
1623
+ // its own chance to notice that the launcher has become the placeholder since
1624
+ // this session was created. Non-fatal: a restart that cannot re-resolve still
1625
+ // respawns on the last known path, which is what it did before.
1626
+ const claude = await ensureClaudeOnce();
1627
+ if (!claude.ok)
1628
+ console.error(`[sk-${s.id}] restart: ${claude.error}`);
1616
1629
  s.pilot = makePilot(s.id, s.cwd, hasTranscript ? ["--resume", s.id] : ["--session-id", s.id], s.profile);
1617
1630
  s.appliedProfile = s.profile; // the new process carries the desired profile
1618
1631
  await attachPilot(s);
@@ -1730,20 +1743,48 @@ function installClaudeCli() {
1730
1743
  }
1731
1744
  // The first spawn on a fresh machine used to fail with a bare `posix_spawnp
1732
1745
  // failed` when the `claude` CLI wasn't installed. We now install it once, on
1733
- // demand, and only surface a clear error if that can't help. Cache SUCCESS
1734
- // only, so a manual install after a failed attempt is picked up next spawn.
1746
+ // demand, and only surface a clear error if that can't help. A FAILURE is never
1747
+ // cached, so a manual install after a failed attempt is picked up next spawn —
1748
+ // and a success is re-validated (below), because the path it holds rots.
1735
1749
  let claudeReady = null;
1736
- function ensureClaudeOnce() {
1737
- if (claudeReady)
1738
- return claudeReady;
1750
+ function ensureClaudeOnce(revalidate = true) {
1751
+ const cached = claudeReady;
1752
+ if (cached) {
1753
+ if (!revalidate)
1754
+ return cached;
1755
+ // A cached path ROTS. The claude-code postinstall unlinks bin/claude.exe
1756
+ // and relinks the native binary over it on every upgrade, so a path that
1757
+ // was fine an hour ago can be the 500-byte placeholder right now — and
1758
+ // caching "ok" across that window is exactly what would turn a window of
1759
+ // milliseconds into a permanently broken instance. Re-validating is a stat
1760
+ // plus at most a 512-byte read, on a path we already have: cheap enough to
1761
+ // pay per spawn, which is a human-scale event.
1762
+ return cached.then((r) => {
1763
+ if (r.ok && classifyBin(sampleBin(r.path)) === "usable")
1764
+ return r;
1765
+ if (claudeReady === cached)
1766
+ claudeReady = null;
1767
+ // Re-resolve ONCE and take that answer as it comes. Looping until the
1768
+ // path validates would spin forever on a launcher that keeps flipping,
1769
+ // which is the very state we are trying to report.
1770
+ return ensureClaudeOnce(false);
1771
+ });
1772
+ }
1739
1773
  const p = ensureClaude({
1740
- resolve: () => resolveBin("claude"),
1774
+ // A short bounded retry, not a single look: the placeholder window is
1775
+ // transient, so failing hard on the first sample would report a healthy
1776
+ // install as broken. Nothing here runs at boot.
1777
+ find: () => findClaudeBinWithRetry(liveClaudeDeps()),
1741
1778
  install: installClaudeCli,
1742
1779
  notify: (line) => console.log(`[shadok-ai] ${line}`),
1743
1780
  });
1744
1781
  claudeReady = p;
1745
- p.then((r) => { if (!r.ok)
1746
- claudeReady = null; }).catch(() => { claudeReady = null; });
1782
+ p.then((r) => {
1783
+ rememberClaudeBin(r.ok ? r.path : null);
1784
+ if (!r.ok && claudeReady === p)
1785
+ claudeReady = null;
1786
+ }).catch(() => { if (claudeReady === p)
1787
+ claudeReady = null; });
1747
1788
  return p;
1748
1789
  }
1749
1790
  async function createSession(id, cwd, args, worktree = null, profile = null) {
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACnE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,IAAI,CAAC;AAChD,OAAO,EACL,YAAY,EACZ,SAAS,EACT,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,gBAAgB,GAEjB,MAAM,cAAc,CAAC;AACtB,6EAA6E;AAC7E,0EAA0E;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxF,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAsB,MAAM,gBAAgB,CAAC;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,mBAAmB,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACnG,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,eAAe,EAAmB,MAAM,WAAW,CAAC;AACjI,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAe,MAAM,YAAY,CAAC;AACnD,OAAO,EACL,YAAY,EACZ,UAAU,EACV,UAAU,EACV,aAAa,EACb,aAAa,EACb,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,aAAa,EACb,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,GAGb,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,cAAc,EACd,iBAAiB,EACjB,oBAAoB,EACpB,gBAAgB,EAChB,aAAa,EACb,SAAS,GAEV,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,SAAS,EACT,SAAS,EACT,UAAU,EACV,UAAU,EACV,aAAa,EACb,UAAU,EACV,mBAAmB,EACnB,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,MAAM,EACN,cAAc,EACd,aAAa,EACb,YAAY,EACZ,eAAe,EACf,cAAc,EACd,eAAe,GAGhB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAEL,WAAW,EACX,eAAe,EACf,gBAAgB,GAEjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,UAAU,EACV,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,cAAc,GAEf,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACpG,OAAO,EACL,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,aAAa,EACb,kBAAkB,EAElB,YAAY,EACZ,gBAAgB,EAEhB,cAAc,GAEf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,aAAa,EACb,sBAAsB,EACtB,OAAO,EACP,SAAS,EACT,gBAAgB,GAEjB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,cAAc,EAAsB,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,EAC5D,aAAa,GACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EACL,YAAY,EACZ,aAAa,EACb,WAAW,EACX,sBAAsB,EACtB,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,SAAS,GAEV,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAoB,MAAM,mBAAmB,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEzF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;AACpD,MAAM,cAAc,GAAG,EAAE,CAAC;AAC1B,8EAA8E;AAC9E,0EAA0E;AAC1E,+DAA+D;AAC/D,MAAM,IAAI,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;AACtC,4EAA4E;AAC5E,2BAA2B;AAC3B,MAAM,aAAa,GAAG,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AAE/D,2EAA2E;AAC3E,2EAA2E;AAC3E,+EAA+E;AAC/E,+EAA+E;AAC/E,iEAAiE;AACjE,MAAM,YAAY,GAAG,mBAAmB,EAAE,CAAC;AAC3C,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;IACrB,OAAO,CAAC,KAAK,CACX,4EAA4E,YAAY,CAAC,GAAG,cAAc,CAC3G,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AACD,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,mBAAmB,EAAE,CAAC,CAAC;AAEhD,MAAM,GAAG,GAAG,OAAO,EAAE,CAAC;AACtB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AACxC;iFACiF;AACjF,MAAM,WAAW,GAAG,MAAM,CAAC;AAE3B,4EAA4E;AAC5E,2EAA2E;AAC3E,gFAAgF;AAChF,iCAAiC;AACjC,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AACpE,gFAAgF;AAChF,yEAAyE;AACzE,6EAA6E;AAC7E,6EAA6E;AAC7E,6EAA6E;AAC7E,kEAAkE;AAClE,MAAM,UAAU,GAAG,YAAY;IAC7B,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;IAC9E,CAAC,CAAC,EAAE,CAAC;AAEP,uEAAuE;AACvE,+EAA+E;AAC/E,IAAI,QAAQ,GAAmB;IAC7B,IAAI,KAAI,CAAC;IACT,OAAO,EAAE,GAAG,EAAE,CAAC,KAAK;IACpB,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;CACrD,CAAC;AACF,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,WAAW,UAAU,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;AAE5E;;;;;;;GAOG;AACH;;;;GAIG;AACH,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,kBAAkB,CAAC,YAAY,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QAC7D,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,aAAa,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,iDAAiD,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAClF,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;IACjD,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,gBAAgB,CAAC;YACjC,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,QAAQ,EAAE;YAClB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,uEAAuE;YACvE,0BAA0B;YAC1B,OAAO,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,EAAE;gBAC3B,kEAAkE;gBAClE,mEAAmE;gBACnE,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;YAC3E,CAAC;SACF,CAAC,CAAC;QACH,IAAI,GAAG,KAAK,YAAY;YAAE,OAAO,CAAC,GAAG,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9F,CAAC;AACH,CAAC;AACD,SAAS,eAAe;IACtB,QAAQ,CAAC,IAAI,EAAE,CAAC;IAChB,QAAQ,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,gFAAgF;AAChF,6EAA6E;AAC7E,8EAA8E;AAC9E,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;AAMtC,0EAA0E;AAC1E,SAAS,OAAO,CAAC,CAAO;IACtB,OAAO,SAAS,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;AACrC,CAAC;AAUD;;;;GAIG;AACH,SAAS,YAAY,CAAC,CAAO,EAAE,MAAqB;IAClD,IAAI,CAAC,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,mCAAmC;IACpG,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACxE,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,CAAC;QAChE,QAAQ,CACN,IAAI,EACJ,CAAC,IAAI,EAAE,CAAC,CAAC,KAAM,CAAC,EAChB,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,EAAE,SAAS,EAAE,CAAC,IAAI,EAAE,EAAE,EACjE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;YACtB,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YAClC,IAAI,GAAG;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,+BAA+B;YAC/E,MAAM,CAAC,GAAG,GAAqF,CAAC;YAChG,IAAI,CAAC,CAAC;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAC1C,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;YACtC,8DAA8D;YAC9D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC,CAAC;YAC3F,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACrG,mEAAmE;YACnE,IAAI,CAAC,OAAO;gBAAE,OAAO,OAAO,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;QACjG,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AAED;kFACkF;AAClF,KAAK,UAAU,QAAQ,CAAC,CAAO;IAC7B,8EAA8E;IAC9E,2EAA2E;IAC3E,iDAAiD;IACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAChF,8EAA8E;IAC9E,4EAA4E;IAC5E,IAAI,CAAC,MAAM,CAAC,KAAK;QACf,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,sBAAsB,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;IACjH,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC5C,8EAA8E;IAC9E,iFAAiF;IACjF,6DAA6D;IAC7D,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IACD,IAAI,UAAkB,CAAC;IACvB,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC1B,UAAU,GAAG,8DAA8D,KAAK,CAAC,GAAG,OAAO,CAAC,CAAC,MAAM,EAAE,CAAC;QACtG,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACjF,CAAC;SAAM,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACnC,2EAA2E;QAC3E,4EAA4E;QAC5E,kEAAkE;QAClE,UAAU;YACR,qCAAqC,KAAK,CAAC,MAAM,4CAA4C;gBAC7F,4DAA4D,CAAC,CAAC,KAAK,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC;QAC/F,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,KAAK,CAAC,MAAM,sBAAsB,CAAC,CAAC;IACjF,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,yCAAyC;IAClE,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,CAAC,CAAC,SAAS,EAAE,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC;IAChF,IAAI,GAAG,CAAC,EAAE,EAAE,CAAC;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,SAAS,QAAQ,CAAC,CAAC;QACrD,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC;AACzE,CAAC;AAED;;gBAEgB;AAChB,SAAS,YAAY,CAAC,SAAiB,EAAE,IAAY,EAAE,MAAqB;IAC1E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;QAC1B,MAAM,EAAE,GAAG,IAAI,SAAS,CAAC,kBAAkB,SAAS,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAClG,IAAI,IAAI,GAAG,KAAK,CAAC;QACjB,MAAM,MAAM,GAAG,CAAC,GAAiB,EAAE,EAAE;YACnC,IAAI,IAAI;gBAAE,OAAO;YACjB,IAAI,GAAG,IAAI,CAAC;YACZ,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,IAAI,CAAC;gBAAC,EAAE,CAAC,KAAK,EAAE,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC;QACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,8BAA8B;QACrH,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAChB,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CACjB,EAAE,CAAC,IAAI,CACL,IAAI,CAAC,SAAS,CAAC;YACb,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,SAAS;YACjB,iEAAiE;YACjE,gEAAgE;YAChE,mCAAmC;YACnC,GAAG,EAAE,MAAM,CAAC,GAAG;YACf,oEAAoE;YACpE,mEAAmE;YACnE,mEAAmE;YACnE,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,MAAM,EAAE,MAAM;SACf,CAAC,CACH,CACF,CAAC;QACF,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,EAAE;YACvB,IAAI,CAAsE,CAAC;YAC3E,IAAI,CAAC;gBAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC;gBAAC,OAAO;YAAC,CAAC;YACtD,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACvB,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YACpD,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBAClC,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;YACvB,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBACrC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;YAClE,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC9B,qEAAqE;gBACrE,+DAA+D;gBAC/D,MAAM,MAAM,GAAgB,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC;gBACjE,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YACnD,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC/B,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC1C,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC7B,yEAAyE;gBACzE,0EAA0E;gBAC1E,wEAAwE;gBACxE,oCAAoC;gBACpC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAChC,kDAAkD;gBAClD,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC,CAAC,CAAC;QACH,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACpF,2EAA2E;QAC3E,yEAAyE;QACzE,uCAAuC;QACvC,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,8BAA8B,EAAE,CAAC,CAAC,CAAC;IAC1G,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;AAEhD,yEAAyE;AACzE,SAAS,UAAU,CAAC,QAA4B,EAAE,OAAe;IAC/D,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC;IACzD,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACjD,CAAC;AAED,+EAA+E;AAC/E,SAAS,eAAe,CAAC,QAAgB,EAAE,IAAY;IACrD,MAAM,MAAM,GAAG,oBAAoB,CAAC,YAAY,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7E,MAAM,GAAG,GAAG,YAAY,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;IAC/C,0EAA0E;IAC1E,qCAAqC;IACrC,KAAK,YAAY,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;QACrD,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,GAAG,GAAG,YAAY,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,YAAY,CAAC,KAAW,EAAE,MAA+C;IAChF,MAAM,QAAQ,GAAG,YAAY,EAAE,CAAC;IAChC,MAAM,EAAE,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,KAAK,CAAC,EAAE,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,EAAE,EAAE,MAAM,IAAI,IAAI,CAAC;IACpC,IAAI,CAAC,QAAQ;QAAE,OAAO;IACtB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC;QAAE,OAAO,CAAC,iBAAiB;IAC9E,2EAA2E;IAC3E,uCAAuC;IACvC,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,2CAA2C;IAC3C,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAClG,OAAO;IAET,MAAM,IAAI,GAAG,eAAe,CAC1B,gBAAgB,CACd;QACE,GAAG,MAAM;QACT,IAAI,EAAE,UAAU,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC;QACpC,SAAS,EAAE,KAAK,CAAC,EAAE;QACnB,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,MAAM,IAAI,IAAI;KACrD,EACD,SAAS,CACV,CACF,CAAC;IAEF,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,IAAI,MAAM,EAAE,IAAI,EAAE,CAAC;QACjB,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,uBAAuB,CAAC,CAAC;QAC7F,OAAO;IACT,CAAC;IACD,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AAClC,CAAC;AAED,oEAAoE;AACpE,SAAS,gBAAgB,CAAC,QAAgB;IACxC,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,CAAC,MAAM,EAAE,MAAM;QAAE,OAAO;IAC5B,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC7B,2EAA2E;IAC3E,uDAAuD;IACvD,eAAe,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;AACxD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CAAC,EAAU,EAAE,OAAe,EAAE,MAA+B,EAAE,MAAe;IAC/F,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC;QAAE,OAAO,CAAC,wBAAwB;IACxC,CAAC,CAAC,WAAW,GAAG,OAAO,CAAC;IACxB,IAAI,CAAC,MAAM,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;QACpC,uDAAuD;QACvD,IAAI,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1F,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC;QACd,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,OAAO;IACT,CAAC;IACD,2EAA2E;IAC3E,kEAAkE;IAClE,MAAM,IAAI,GAAG,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM,CAAC;IACxC,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9F,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,IAAI,SAAS,CAAC;IACnC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC;IACvB,6EAA6E;IAC7E,uEAAuE;IACvE,IAAI,IAAI;QAAE,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,QAAQ,CAAC;IACjC,OAAO,CAAC,GAAG,CACT,CAAC,CAAC,QAAQ;QACR,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,MAAM,cAAc,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,IAAI,gBAAgB,GAAG;QACpJ,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,MAAM,6BAA6B,CAClE,CAAC;IACF,SAAS,CAAC,IAAI,CAAC,CAAC;AAClB,CAAC;AAED,oEAAoE;AACpE,SAAS,QAAQ;IACf,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,SAAS;QACzB,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;YAAC,CAAC,CAAC,OAAO,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;YAAC,SAAS;QAAC,CAAC;QAC9G,IAAI,GAAG,GAAG,CAAC,CAAC,OAAO;YAAE,SAAS;QAC9B,0EAA0E;QAC1E,sEAAsE;QACtE,0EAA0E;QAC1E,6BAA6B;QAC7B,CAAC,CAAC,OAAO,GAAG,GAAG,CAAC;QAChB,qEAAqE;QACrE,0EAA0E;QAC1E,uDAAuD;QACvD,MAAM,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5D,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;QACvB,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC;QACvB,OAAO,GAAG,IAAI,CAAC;QACf,IAAI,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,SAAS;QACpC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;QAChB,KAAK,QAAQ,CAAC,CAAC,CAAC;aACb,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;aAC1D,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC;aAChF,OAAO,CAAC,GAAG,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,OAAO;QAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU;IACjB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC;IACzB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,IAAI,EAAE,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,OAAO;YAAE,SAAS;QACzB,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,OAAO,IAAI,GAAG;YAAE,SAAS,CAAC,sBAAsB;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,4DAA4D;QAC5D,IAAI,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI;YAAE,SAAS;QAClE,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;YAAC,OAAO,GAAG,IAAI,CAAC;QAAC,CAAC;IAC/D,CAAC;IACD,IAAI,OAAO;QAAE,SAAS,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,YAAgC;IACnD,MAAM,CAAC,GAAG,2BAA2B,CAAC,IAAI,CAAC,YAAY,IAAI,EAAE,CAAC,CAAC;IAC/D,OAAO,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC;AACD,SAAS,aAAa,CAAC,GAAyC;IAC9D,IAAI,CAAC,YAAY;QAAE,OAAO,IAAI,CAAC;IAC/B,MAAM,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,MAA4B,CAAC,CAAC;IAClE,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAC3D,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AACpE,CAAC;AACD,SAAS,eAAe,CAAC,KAAa;IACpC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACpC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACxD,CAAC;AACD,6EAA6E;AAC7E,0EAA0E;AAC1E,8EAA8E;AAC9E,4CAA4C;AAC5C,MAAM,UAAU,GAAG;;;;;;;iBAOF,iBAAiB;;;;;;;;;UASxB,CAAC;AAEX;+CAC+C;AAC/C,SAAS,SAAS,CAAC,GAAqB;IACtC,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;AACpE,CAAC;AAED,6DAA6D;AAC7D;;;;;GAKG;AACH,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkB,CAAC;AAC9C,SAAS,aAAa,CAAC,EAAU;IAC/B,IAAI,CAAC,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5B,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,GAAG,UAAU,EAAE,CAAC;QACjB,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AACD,SAAS,aAAa,CAAC,GAAW;IAChC,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,WAAW;QAAE,IAAI,CAAC,KAAK,GAAG;YAAE,OAAO,EAAE,CAAC;IAC5D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,kFAAkF;AAClF,SAAS,kBAAkB,CAAC,GAAyC;IACnE,OAAO,aAAa,CAClB,GAAG,CAAC,OAAO,CAAC,MAA4B,EACxC,GAAG,CAAC,OAAO,CAAC,IAA0B,EACtC,aAAa,CACd,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,GAAyC;IAChE,OAAO,aAAa,CAClB,GAAG,CAAC,OAAO,CAAC,MAA4B,EACxC,GAAG,CAAC,OAAO,CAAC,IAA0B,EACtC,aAAa,CACd,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,uEAAuE;AACvE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IACzB,IAAI,eAAe,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,EAAE,CAAC;IACxC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC,CAAC;AAEH,uEAAuE;AACvE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9B,IAAI,CAAC,YAAY;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,IAAI,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QACtD,GAAG,CAAC,SAAS,CACX,YAAY,EACZ,WAAW,UAAU,gDAAgD,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,CACrF,CAAC;QACF,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAChC,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AACH,iEAAiE;AACjE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;IACzB,IAAI,aAAa,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,EAAE,CAAC;IACtC,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC;QAC1E,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;AACzD,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,8CAA8C;AAC9C,EAAE;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,gFAAgF;AAChF,gFAAgF;AAChF,iBAAiB;AACjB,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;AACtE,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IAC1C,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;IAC3B,GAAG,CAAC,SAAS,CAAC,yBAAyB,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;IAC3D,0EAA0E;IAC1E,wEAAwE;IACxE,+CAA+C;IAC/C,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;AACnF,CAAC,CAAC,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACrF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAC;IACjG,MAAM,IAAI,GAAG,GAAG,CAAC,IAAc,CAAC;IAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;IACjG,MAAM,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,kBAAkB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACzE,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;IACtF,IAAI,CAAC;QACH,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;QAClF,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAC7B,uEAAuE;QACvE,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,gBAAgB,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3E,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;AAC9D,oEAAoE;AACpE,6EAA6E;AAC7E,4EAA4E;AAC5E,yEAAyE;AACzE,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CACzB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,EACpD,KAAK,EACL,eAAe,CAChB,CAAC;AACF,8EAA8E;AAC9E,gFAAgF;AAChF,2EAA2E;AAC3E,6EAA6E;AAC7E,iFAAiF;AACjF,gEAAgE;AAChE,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAC/C,CAAC;AACF,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,2EAA2E;AAC3E,uEAAuE;AACvE,YAAY;AACZ,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;AAC9D,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAChD,CAAC;AACF,wEAAwE;AACxE,8CAA8C;AAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC;AAC5E,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACxC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAC5E,CAAC;AACF,GAAG,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACzC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAC7E,CAAC;AACF,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,CAAC;AACnF,GAAG,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAC5C,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,cAAc,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CACnF,CAAC;AACF,qEAAqE;AACrE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAChC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAChE,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AACH,6EAA6E;AAC7E,2EAA2E;AAC3E,yEAAyE;AACzE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IAC7B,GAAG,CAAC,IAAI,CACN,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;SACnB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;QAClC,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI;QACvB,UAAU,EAAE,CAAC,CAAC,UAAU;KACzB,CAAC,CAAC,CACN,CAAC;AACJ,CAAC,CAAC,CAAC;AACH,gFAAgF;AAChF,kFAAkF;AAClF,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;IACpC,MAAM,CAAC,GAAG,MAAM,QAAQ,EAAE,CAAC;IAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,6EAA6E;IAC7E,qDAAqD;IACrD,MAAM,MAAM,GAAG,CAAC,CAAgB,EAAE,WAAmB,EAAE,EAAE,CACvD,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,GAAG,WAAW,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3D,GAAG,CAAC,IAAI,CAAC;QACP,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,QAAQ,IAAI,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;QAC1D,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,QAAQ,IAAI,IAAI,EAAE,UAAU,CAAC,QAAQ,CAAC;QAC1D,SAAS,EAAE,CAAC,EAAE,SAAS,IAAI,GAAG;QAC9B,GAAG,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;KACrB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AACH,uEAAuE;AACvE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC5B,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;IACxD,IAAI,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC1F,8EAA8E;IAC9E,4EAA4E;IAC5E,yEAAyE;IACzE,uEAAuE;IACvE,oDAAoD;IACpD,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5D,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC;AACH,oEAAoE;AACpE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/B,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAClE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AACH,+EAA+E;AAC/E,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACjC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AACH,+EAA+E;AAC/E,sEAAsE;AACtE,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC7B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACnF,cAAc,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAC;IACjD,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AACH,gFAAgF;AAChF,uEAAuE;AACvE,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC7B,cAAc,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3E,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC;AACH,+EAA+E;AAC/E,8EAA8E;AAC9E,mCAAmC;AACnC,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACvC,MAAM,CAAC,GAAG,cAAc,EAAE,CAAC;IAC3B,IAAI,CAAC,CAAC,KAAK;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AACH,kFAAkF;AAClF,+EAA+E;AAC/E,2EAA2E;AAC3E,gEAAgE;AAChE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;AAE7D,8EAA8E;AAC9E,yEAAyE;AACzE,GAAG,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,UAAU,EAAE,CAAC,CAAC,CAAC;AAEpE,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE;IAC1C,MAAM,CAAC,GAAG,MAAM,UAAU,EAAE,CAAC;IAC7B,IAAI,OAAO,IAAI,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACjD,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAG,8DAA8D;AAC/E,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;IACrE,MAAM,CAAC,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,CAAC,CAAC,EAAE;QAAE,oBAAoB,EAAE,CAAC,CAAC,yCAAyC;IAC3E,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,yEAAyE;IACzE,2EAA2E;IAC3E,qDAAqD;IACrD,IAAI,CAAC,CAAC,EAAE;QAAE,KAAK,eAAe,EAAE,CAAC;AACnC,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACtC,WAAW,EAAE,CAAC;IACd,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,8EAA8E;AAC9E,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;AAC/E,8EAA8E;AAC9E,kDAAkD;AAClD;;;;;;;GAOG;AACH,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACjC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACpD,GAAG,CAAC,IAAI,CACN,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,SAAS,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1G,CAAC,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;AACxD,yEAAyE;AACzE,mCAAmC;AACnC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9B,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnD,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,MAAM,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3E,6EAA6E;IAC7E,iDAAiD;IACjD,EAAE;IACF,uEAAuE;IACvE,2EAA2E;IAC3E,4CAA4C;IAC5C,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1D,IAAI,KAAK,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,KAAK,GAAG,EAAE,CAAC,CAAC;IAC5G,MAAM,EAAE,GAAG,KAAK,IAAI,QAAQ,EAAE,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;IAClC,IAAI,WAAW,GAAG,CAAC,CAAC,QAAQ,CAAC;IAC7B,IAAI,WAAW,EAAE,IAAI,KAAK,MAAM,IAAI,OAAO,WAAW,CAAC,EAAE,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAC/G,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,EAAE,IAAI,IAAI;YAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oBAAoB,WAAW,CAAC,EAAE,0BAA0B,EAAE,CAAC,CAAC;QACrH,WAAW,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IACrC,CAAC;IACD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAChD,IAAI,CAAC,SAAS,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qDAAqD,EAAE,CAAC,CAAC;IACtI,8EAA8E;IAC9E,gEAAgE;IAChE,IAAI,QAAQ,CAAC,IAAI,KAAK,MAAM,IAAI,QAAQ,CAAC,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;QACvD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iCAAiC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5G,MAAM,OAAO,GACX,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS;QAC5B,CAAC,CAAC,CAAC,CAAC,OAAO;QACX,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM;YACxB,CAAC,CAAC,IAAI,CAAC,4DAA4D;YACnE,CAAC,CAAC,CAAC,QAAQ,EAAE,OAAO,IAAI,IAAI,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IACjG,MAAM,IAAI,GAAS;QACjB,EAAE,EAAE,QAAQ,EAAE,EAAE,IAAI,UAAU,EAAE;QAChC,SAAS;QACT,MAAM;QACN,QAAQ;QACR,OAAO;QACP,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3B,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,QAAQ,EAAE,OAAO;QAC1B,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;KACtE,CAAC;IACF,UAAU,CAAC,IAAI,CAAC,CAAC;IACjB,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,EAAE,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AACH,8EAA8E;AAC9E,6DAA6D;AAC7D,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACjC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC,CAC5E,CAAC;AACF,GAAG,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACjC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACpD,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,GAAG,GAAG,EAAE,CAAC,CAAC;IACtG,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,IAAI,GAAG;QAAE,GAAG,CAAC,QAAQ,GAAG,GAAG,CAAC;;QACvB,OAAO,GAAG,CAAC,QAAQ,CAAC,CAAC,qCAAqC;IAC/D,UAAU,CAAC,GAAG,CAAC,CAAC;IAChB,wEAAwE;IACxE,4EAA4E;IAC5E,uBAAuB;IACvB,UAAU,EAAE,CAAC;IACb,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,IAAI,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAChC,4EAA4E;IAC5E,8EAA8E;IAC9E,oDAAoD;IACpD,MAAM,CAAC,GAAG,aAAa,CAAC,SAAS,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACjE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QAC/E,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YAC7B,KAAK,EACH,CAAC,CAAC,KAAK,KAAK,OAAO;gBACjB,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,WAAW;oBACvB,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,EAAE,aAAa,CAAC,CAAC,OAAO,8BAA8B;oBACtE,CAAC,CAAC,oBAAoB,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG;SAC5C,CAAC,CAAC;IACL,CAAC;IACD,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjB,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AACnC,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAChC,8EAA8E;IAC9E,sEAAsE;IACtE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChG,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IAClF,wEAAwE;IACxE,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC,CAAC,QAAQ,EAAE,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,CAAC;YACzE,mBAAmB,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACnB,CAAC,CAAC,CAAC;AACH,8EAA8E;AAC9E,+EAA+E;AAC/E,oCAAoC;AACpC,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAClD,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAC,CAAC;IACpE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,CAAC;IAChC,6EAA6E;IAC7E,0EAA0E;IAC1E,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC,CAAC;AACnG,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;AAC1D,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC9B,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACpD,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,oEAAoE;AACpE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC;AACvE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IAClD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,OAAO,KAAK,KAAK,QAAQ;QACvE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,CAAC,CAAC;IACpE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;IACxB,uEAAuE;IACvE,0EAA0E;IAC1E,0EAA0E;IAC1E,MAAM,OAAO,GAAG,kBAAkB,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,SAAS,KAAK,IAAI,CAAC,CAAC;IACpF,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;IACvF,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IACtB,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;AACtD,CAAC,CAAC,CAAC;AACH,GAAG,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAClC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,IAAI,IAAI;QAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,8EAA8E;AAC9E,qEAAqE;AACrE,kFAAkF;AAClF,8EAA8E;AAC9E,+EAA+E;AAC/E,8EAA8E;AAC9E,gFAAgF;AAChF,iDAAiD;AACjD,iFAAiF;AACjF,iFAAiF;AACjF,gFAAgF;AAChF,yEAAyE;AACzE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CACjC,GAAG,CAAC,IAAI,CACN,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzB,GAAG,CAAC;IACJ,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAC/C,eAAe,EAAE,gBAAgB,CAAC,CAAC,CAAC,EAAE,YAAY,IAAI,EAAE;CACzD,CAAC,CAAC,CACJ,CACF,CAAC;AAEF,4EAA4E;AAC5E,6EAA6E;AAC7E,0EAA0E;AAC1E,6EAA6E;AAC7E,gFAAgF;AAChF,iCAAiC;AACjC,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACzC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAC1B,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,4CAA4C,EAAE,CAAC,CAAC;IACvF,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC5E,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,IAAI,CAAC,OAAO,EAAE,YAAY;QACxB,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kCAAkC,IAAI,IAAI,WAAW,EAAE,EAAE,CAAC,CAAC;IAClG,MAAM,QAAQ,GAAY,UAAU,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;IACvD,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,QAAQ,CAAC;IACrE,aAAa,CAAC,IAAe,CAAC,CAAC;IAC/B,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC,CAAC;AACH,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,sEAAsE;AACtE,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAChC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAC1B,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;YAC1B,KAAK,EAAE,6EAA6E;SACrF,CAAC,CAAC;IACL,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACzB,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE;QAC9C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;IAC1D,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3B,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC;IAChF,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,YAAY,CAAC;IACnD,2EAA2E;IAC3E,wEAAwE;IACxE,oDAAoD;IACpD,MAAM,MAAM,GAAG,OAAO,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACzF,MAAM,CAAC,GAAY;QACjB,IAAI;QACJ,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;QAC1C,wEAAwE;QACxE,yEAAyE;QACzE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO;QACxC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAC9F,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACjG,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QACvG,KAAK,EAAE,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;KAClF,CAAC;IACF,aAAa,CAAC,CAAC,CAAC,CAAC;IACjB,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC,CAAC,CAAC;AAEH;;;;;;;;;GASG;AACH,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACvC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACnD,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;IAClF,MAAM,MAAM,GACV,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,OAAO,IAAI,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,OAAO,IAAI,IAAI,CAAC;IAC/F,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAC5F,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzD,MAAM,OAAO,GAAG,iBAAiB,CAAC;QAChC,MAAM;QACN,MAAM;QACN,YAAY,EAAE,CAAC,CAAC,QAAQ;QACxB,OAAO,EAAE,MAAM,KAAK,kBAAkB;KACvC,CAAC,CAAC;IACH,IAAI,CAAC,OAAO,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,MAAM,YAAY,GAAG,OAAO,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9E,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;IAC1F,wEAAwE;IACxE,uEAAuE;IACvE,MAAM,IAAI,GAAY,OAAO,CAAC,MAAM;QAClC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,EAAE;QAChG,CAAC,CAAC,EAAE,GAAG,QAAS,EAAE,YAAY,EAAE,CAAC;IACnC,aAAa,CAAC,IAAI,CAAC,CAAC;IACpB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,IAAI,YAAY,OAAO,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAC9H,GAAG,CAAC,IAAI,CAAC;QACP,EAAE,EAAE,IAAI;QACR,OAAO,EAAE,MAAM;QACf,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,IAAI,EAAE,qEAAqE;KAC5E,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,iFAAiF;AACjF,6EAA6E;AAC7E,6EAA6E;AAC7E,4EAA4E;AAC5E,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/B,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IAClE,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,CAAC,CAAC;IAClF,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3B,IAAI,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qBAAqB,EAAE,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,2BAA2B,CAAC,CAAC;IAClE,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,6CAA6C,EAAE,CAAC,CAAC;IAC5E,KAAK,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH,GAAG,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACnC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACnE,IAAI,IAAI;QAAE,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,gEAAgE;AAChE,KAAK,UAAU,aAAa;IAC1B,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAC9B,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC;QAC3B,OAAO,EAAE,EAAE,CAAC,OAAO;QACnB,OAAO,EAAE,QAAQ,CAAC,OAAO,EAAE;QAC3B,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,QAAQ;QACtD,UAAU,EAAE,KAAK,CAAC,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC,UAAU;QACvD,UAAU,EAAE,OAAO,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAqB,EAAE;QACvF,YAAY,EAAE,EAAE,CAAC,YAAY;QAC7B,WAAW,EAAE,EAAE,CAAC,WAAW;KAC5B,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,6EAA6E;AAC7E,mCAAmC;AACnC,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC,CAAC;AAC3E,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACtC,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,KAAK,GAAkB,EAAE,CAAC;IAChC,IAAI,OAAO,CAAC,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI;QAAE,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IAC3E,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK,SAAS;QAAE,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC;IAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;QAC/B,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAU,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE5F,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1B,MAAM,EAAE,GAAG,cAAc,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7C,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,EAAE,CAAC,WAAW;QAC7C,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,6DAA6D,EAAE,CAAC,CAAC;IAExG,+EAA+E;IAC/E,yEAAyE;IACzE,iCAAiC;IACjC,IAAI,CAAC,CAAC,WAAW,KAAK,IAAI;QAAE,WAAW,CAAC,IAAI,CAAC,CAAC;IAE9C,MAAM,eAAe,GACnB,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC;IAC/F,IAAI,eAAe,EAAE,CAAC;QACpB,UAAU,CAAC,kBAAkB,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC;QACzE,eAAe,EAAE,CAAC;IACpB,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC;AAClC,CAAC,CAAC,CAAC;AAEH,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;AACtC,MAAM,GAAG,GAAG,IAAI,eAAe,CAAC;IAC9B,MAAM;IACN,IAAI,EAAE,KAAK;IACX,6EAA6E;IAC7E,yEAAyE;IACzE,0EAA0E;IAC1E,0EAA0E;IAC1E,8BAA8B;IAC9B,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;CACrF,CAAC,CAAC;AACH,+EAA+E;AAC/E,0EAA0E;AAC1E,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;IAC7C,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY;QAAE,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;AAClF,CAAC,CAAC,CAAC;AACH,kFAAkF;AAClF,uEAAuE;AACvE,iFAAiF;AACjF,mBAAmB;AACnB,cAAc,CAAC,GAAG,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,KAAK,CAAC,CAAC,CAAC;AAEpE,+EAA+E;AAC/E,+EAA+E;AAC/E,2EAA2E;AAC3E,MAAM,WAAW,GAAW,CAAC,GAAG,EAAE;IAChC,IAAI,CAAC;QACH,OAAO,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC;IAChF,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AACL,qEAAqE;AACrE,IAAI,WAAW,GAAkB,IAAI,CAAC;AACtC,6EAA6E;AAC7E,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC;AAC7E,6EAA6E;AAC7E,yEAAyE;AACzE,4EAA4E;AAC5E,6CAA6C;AAC7C,IAAI,UAAU,GACZ,UAAU,EAAE,CAAC,UAAU,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;AAC5F,8EAA8E;AAC9E,8EAA8E;AAC9E,IAAI,aAAa,GACf,UAAU,EAAE,CAAC,aAAa,IAAI,oBAAoB,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,EAAE,CAAC,CAAC;AAC3F,8EAA8E;AAC9E,+EAA+E;AAC/E,0DAA0D;AAC1D,IAAI,aAAa,GAAkB,cAAc,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,CAAC;AAE9E,uEAAuE;AACvE,wEAAwE;AACxE,uEAAuE;AACvE,4EAA4E;AAC5E,IAAI,cAAc,GAAW,CAAC,GAAG,EAAE;IACjC,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC,cAAc,CAAC;IACxC,IAAI,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC;QAAE,OAAO,GAAG,CAAC;IAC7C,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9D,OAAO,GAAG,IAAI,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC;AACrD,CAAC,CAAC,EAAE,CAAC;AAEL,uEAAuE;AACvE,SAAS,YAAY,CAAC,GAAW;IAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,OAAO;QAAE,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,IAAI;YAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzE,CAAC;AAED;mEACmE;AACnE,8DAA8D;AAC9D,SAAS,YAAY;IACnB,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC;AACjH,CAAC;AAED,SAAS,cAAc;IACrB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,YAAY,EAAE,EAAE,CAAC;AAChD,CAAC;AAED,wEAAwE;AACxE,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB;;;;;GAKG;AACH,KAAK,UAAU,aAAa,CAAC,OAAe;IAC1C,IAAI,QAAQ;QAAE,OAAO;IACrB,QAAQ,GAAG,IAAI,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,6BAA6B,WAAW,OAAO,OAAO,8BAA8B,CAAC,CAAC;IAClG,MAAM,CAAC,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,CAAC;IAChC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,KAAK,sBAAsB,CAAC,CAAC;QACtF,QAAQ,GAAG,KAAK,CAAC;QACjB,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC,OAAO,aAAa,CAAC,CAAC;IAC1E,YAAY,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;IAC5D,yEAAyE;IACzE,uDAAuD;IACvD,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,CAAC,CAAC;AACxD,CAAC;AAED,KAAK,UAAU,WAAW;IACxB,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,aAAa,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM;QAAE,OAAO,CAAC,yDAAyD;IAC9E,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,WAAW,GAAG,MAAM,CAAC;QACrB,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IACjC,CAAC;IACD,IAAI,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC;QAAE,KAAK,aAAa,CAAC,MAAM,CAAC,CAAC;AAC7E,CAAC;AAED,IAAI,iBAAiB,GAAG,CAAC,EAAE,CAAC;IAC1B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,KAAK,WAAW,EAAE,EAAE,iBAAiB,GAAG,MAAM,CAAC,CAAC;IAChF,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,0DAA0D;IACzE,KAAK,WAAW,EAAE,CAAC,CAAC,gCAAgC;AACtD,CAAC;AAED,2EAA2E;AAC3E,6EAA6E;AAC7E,qBAAqB;AACrB,GAAG,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACnC,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;IACjC,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,UAAU,GAAG,UAAU,CAAC;IAC5B,UAAU,CAAC,GAAG,CAAC,CAAC;IAChB,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/B,IAAI,UAAU,IAAI,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,WAAW,CAAC;QAAE,KAAK,aAAa,CAAC,WAAW,CAAC,CAAC;IACpG,GAAG,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH;;;;;;;;;;;GAWG;AACH,SAAS,kBAAkB;IACzB,MAAM,IAAI,GAAG,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACpC,KAAK,CAAC,KAAK,IAAI,EAAE;QACf,KAAK,MAAM,CAAC,IAAI,IAAI;YAAE,MAAM,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAChE,CAAC,CAAC,EAAE,CAAC;IACL,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED,+EAA+E;AAC/E,gFAAgF;AAChF,sCAAsC;AACtC,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IACrC,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,0BAA0B,CAAC,CAAC;IAC5E,GAAG,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC;AAC1B,CAAC,CAAC,CAAC;AAEH,iFAAiF;AACjF,8EAA8E;AAC9E,6EAA6E;AAC7E,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;IAC/B,IAAI,OAAO,GAAU,EAAE,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,aAAa,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACpG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;YAAE,OAAO,GAAG,CAAC,CAAC;IACpC,CAAC;IAAC,MAAM,CAAC;QACP,iCAAiC;IACnC,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC;IAClE,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,+EAA+E;AAC/E,+EAA+E;AAC/E,+EAA+E;AAC/E,+EAA+E;AAC/E,4BAA4B;AAC5B,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;IACjC,MAAM,OAAO,GAAG,IAAI,KAAK,aAAa,CAAC;IACvC,aAAa,GAAG,IAAI,CAAC;IACrB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,aAAa,GAAG,aAAa,CAAC;IAClC,UAAU,CAAC,GAAG,CAAC,CAAC;IAChB,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACrD,GAAG,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,SAAS,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC,CAAC;AAEH;;;;;GAKG;AACH,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACvC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,EAAE,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,OAAO,IAAI,CAAC,KAAK,MAAM;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC7F,aAAa,GAAG,CAAC,CAAC;IAClB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,aAAa,GAAG,CAAC,CAAC;IACtB,UAAU,CAAC,GAAG,CAAC,CAAC;IAChB,WAAW,GAAG,IAAI,CAAC,CAAC,mDAAmD;IACvE,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/B,8EAA8E;IAC9E,+EAA+E;IAC/E,uEAAuE;IACvE,2EAA2E;IAC3E,4EAA4E;IAC5E,6DAA6D;IAC7D,IAAI,iBAAiB,GAAG,CAAC;QAAE,KAAK,WAAW,EAAE,CAAC;IAC9C,GAAG,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEH,6EAA6E;AAC7E,mEAAmE;AACnE,GAAG,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;IACxC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IAC9C,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC;QAAE,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,CAAC,CAAC;IACjF,cAAc,GAAG,CAAC,CAAC;IACnB,MAAM,GAAG,GAAG,UAAU,EAAE,CAAC;IACzB,GAAG,CAAC,cAAc,GAAG,CAAC,CAAC;IACvB,UAAU,CAAC,GAAG,CAAC,CAAC;IAChB,YAAY,CAAC,cAAc,EAAE,CAAC,CAAC;IAC/B,GAAG,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC;AAC/B,CAAC,CAAC,CAAC;AAkEH;;;;;;GAMG;AACH,0EAA0E;AAC1E,0DAA0D;AAC1D,IAAI,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;AAElE;;;;;GAKG;AACH,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;AACnF,IAAI,gBAA2C,CAAC;AAChD,SAAS,WAAW;IAClB,IAAI,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,gBAAgB;gBACd,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG;oBACrC,CAAC,CAAC,IAAI;oBACN,CAAC,CAAC,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;QAClE,CAAC;QAAC,MAAM,CAAC;YACP,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;IACH,CAAC;IACD,OAAO,gBAAgB,CAAC;AAC1B,CAAC;AAED;;;;GAIG;AACH,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,kBAAkB,CAAC,CAAC;AACrF,IAAI,iBAA4C,CAAC;AACjD,SAAS,YAAY;IACnB,IAAI,iBAAiB,KAAK,SAAS,EAAE,CAAC;QACpC,IAAI,CAAC;YACH,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC;QACjF,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;IACH,CAAC;IACD,OAAO,iBAAiB,CAAC;AAC3B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,mBAAmB,CAAC,WAA2B;IACtD,MAAM,MAAM,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAClF,IAAI,MAAM;QAAE,OAAO,MAAM,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;QACzF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC;QACrC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACzE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,iEAAiE;IAChF,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,aAAa,GAAG,IAAI,GAAG,EAA2B,CAAC;AAEzD,+DAA+D;AAC/D,MAAM,aAAa,GAAG;IACpB,kBAAkB;IAClB,kBAAkB;IAClB,gBAAgB;IAChB,eAAe;IACf,eAAe;CAChB,CAAC;AAEF;;;;;GAKG;AACH,SAAS,qBAAqB;IAC5B,MAAM,GAAG,GAA4C,EAAE,CAAC;IACxD,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,GAAG,EAAE,CAAC,YAAY,CACxB,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,CAAC,EAC9D,MAAM,CACP,CAAC;YACF,MAAM,IAAI,GAAG,cAAc,CAAC,EAAE,CAAC,CAAC;YAChC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,kBAAkB,EAAE,CAAC,CAAC;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,2DAA2D;QAC7D,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,SAAS,CAAC,EAAU,EAAE,GAAW,EAAE,IAAc,EAAE,WAA2B;IACrF,uEAAuE;IACvE,0EAA0E;IAC1E,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC1B,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAClE,2EAA2E;IAC3E,2EAA2E;IAC3E,+EAA+E;IAC/E,yDAAyD;IACzD,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,MAAM,GAAG,GAA2B,EAAE,GAAG,SAAS,EAAE,CAAC;IACrD,gFAAgF;IAChF,gFAAgF;IAChF,4CAA4C;IAC5C,GAAG,CAAC,iBAAiB,GAAG,EAAE,CAAC;IAC3B,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,SAAS,IAAI,UAAU,CAAC,CAAC;IAClD,IAAI,YAAY;QAAE,GAAG,CAAC,WAAW,GAAG,WAAW,UAAU,EAAE,CAAC;IAC5D,uEAAuE;IACvE,2CAA2C;IAC3C,GAAG,CAAC,kBAAkB,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3C,+EAA+E;IAC/E,8EAA8E;IAC9E,gFAAgF;IAChF,4EAA4E;IAC5E,6DAA6D;IAC7D,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACjD,MAAM,EAAE,GAAG,WAAW,EAAE,CAAC;IACzB,oEAAoE;IACpE,MAAM,EAAE,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,MAAM,QAAQ,GAAG;QACf,GAAG,IAAI;QACP,GAAG,kBAAkB,CAAC,cAAc,CAAC;QACrC,GAAG,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QACzC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjD,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7C,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC9C,CAAC;IACF,MAAM,QAAQ,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3C,aAAa,CAAC,GAAG,CACf,EAAE,EACF,cAAc,CAAC;QACb,WAAW,EAAE,WAAW,IAAI,IAAI;QAChC,IAAI,EAAE,QAAQ,EAAE,YAAY;QAC5B,KAAK,EAAE,QAAQ,EAAE,KAAK;QACtB,IAAI,EAAE,QAAQ,EAAE,IAAI;QACpB,KAAK,EAAE,QAAQ,EAAE,KAAK;QACtB,cAAc;QACd,qEAAqE;QACrE,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;QACnC,YAAY,EAAE,qBAAqB,EAAE;QACrC,WAAW,EAAE,EAAE,IAAI,SAAS;QAC5B,YAAY,EAAE,EAAE;KACjB,CAAC,CACH,CAAC;IACF,8EAA8E;IAC9E,6EAA6E;IAC7E,8EAA8E;IAC9E,0EAA0E;IAC1E,wDAAwD;IACxD,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,OAAO,QAAQ;QACb,CAAC,CAAC,IAAI,SAAS,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,GAAG,EAAE,EAAE,UAAU,EAAE,CAAC;QAC/E,CAAC,CAAC,IAAI,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,CAAC;AAC7D,CAAC;AAiGD,+DAA+D;AAC/D,SAAS,WAAW,CAAC,CAAO;IAC1B,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;IAClE,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;QACjC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,CAAC;QACnB,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,MAAM,CAAC;QACrB,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,aAAa,CAAC;QACnC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC;IAC7B,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;GAKG;AACH,MAAM,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC;AAE3E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAgB,CAAC;AAEzC,SAAS,SAAS,CAAC,CAAO,EAAE,GAAW,EAAE,MAAkB;IACzD,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,IAAI;YAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,cAAc,CAAC,CAAO;IACnC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;IACpB,wEAAwE;IACxE,iEAAiE;IACjE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;IACb,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;IAChB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACf,IAAI,CAAC,CAAC,WAAW;QAAE,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;IACrB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACf,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;IAClB,IAAI,CAAC,CAAC,UAAU;QAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;IACpB,oEAAoE;IACpE,iEAAiE;IACjE,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,QAAQ,EAAE,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;YAAE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAC9E,mEAAmE;QACnE,6EAA6E;QAC7E,wEAAwE;QACxE,yEAAyE;QACzE,4EAA4E;QAC5E,0CAA0C;QAC1C,IAAI,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,iEAAiE,CAAC,CAAC;YAC5F,eAAe,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,cAAc,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;gBAAE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IACD,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;IACf,CAAC,CAAC,UAAU,GAAG,EAAE,CAAC;IAClB,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;IACvB,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,gEAAgE;IAChE,iEAAiE;IACjE,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAClE,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;IACxC,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,cAAc,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;IACzG,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,OAAO,CAAC,CAAG,8CAA8C;IAC9E,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC,CAAC,UAAU,GAAG,KAAK,CAAC;IACrB,6EAA6E;IAC7E,+EAA+E;IAC/E,8EAA8E;IAC9E,6BAA6B;IAC7B,SAAS,CAAC,CAAC,EAAE;QACX,IAAI,EAAE,OAAO;QACb,SAAS,EAAE,CAAC,CAAC,EAAE;QACf,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE;QACxC,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,IAAI,IAAI;QAClC,UAAU,EAAE,CAAC,CAAC,UAAU;KACzB,CAAC,CAAC;IACH,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAY,2CAA2C;IAC3E,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;AACzF,CAAC;AAED;kFACkF;AAClF,SAAS,gBAAgB,CAAC,CAAO;IAC/B,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC,CAAC;AACnG,CAAC;AAED,SAAS,cAAc,CAAC,CAAO;IAC7B,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3B,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACzB,IAAI,CAAC,CAAC,WAAW;QAAE,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAChD,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;IACrB,IAAI,CAAC,CAAC,SAAS;QAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC;IACnB,IAAI,CAAC,CAAC,UAAU;QAAE,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;IACpB,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACf,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC;IAClB,qEAAqE;IACrE,YAAY,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;IACf,sEAAsE;IACtE,uEAAuE;IACvE,oCAAoC;IACpC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AACxB,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,UAAU,CAAC,SAAiB;IACzC,MAAM,EAAE,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;IACjE,0EAA0E;IAC1E,8EAA8E;IAC9E,2EAA2E;IAC3E,uEAAuE;IACvE,IAAI,EAAE,IAAI,aAAa,CAAC,EAAE,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1C,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,gDAAgD;IAC1E,IAAI,EAAE,EAAE,QAAQ,EAAE,QAAQ;QAAE,kBAAkB,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzF,MAAM,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAClC,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,IAAI,EAAE,EAAE,MAAM,CAAC;IACzD,MAAM,IAAI,GAAG,CAAC,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,IAAI,CAAC;IAC3C,IAAI,CAAC,EAAE,CAAC;QACN,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;QAClC,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrC,cAAc,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,8EAA8E;IAC9E,6EAA6E;IAC7E,qDAAqD;IACrD,IAAI,IAAI,IAAI,cAAc,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACpD,IAAI,OAAO,KAAK,MAAM;YAAE,OAAO,CAAC,GAAG,CAAC,YAAY,cAAc,KAAK,OAAO,iBAAiB,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,MAAM,CAAC,EAAa,EAAE,CAAO;IACpC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACrB,8EAA8E;IAC9E,qBAAqB;IACrB,IAAI,CAAC,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACpE,CAAC,CAAC,MAAM,EAAE,CAAC;QACX,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;QAAE,OAAO;IACjC,2EAA2E;IAC3E,yDAAyD;IACzD,IAAI,eAAe,IAAI,CAAC;QAAE,OAAO;IACjC,IAAI,CAAC,CAAC,SAAS;QAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;QAC5B,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,cAAc,CAAC,CAAC,CAAC,CAAC;IAC9C,CAAC,EAAE,eAAe,CAAC,CAAC;AACtB,CAAC;AAED;mFACmF;AACnF,SAAS,gBAAgB;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC;QAC7D,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,2BAA2B,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE;YACnG,KAAK,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC;SACxC,CAAC,CAAC;QACH,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,wBAAwB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAC5E,6EAA6E;AAC7E,gFAAgF;AAChF,+EAA+E;AAC/E,yEAAyE;AACzE,IAAI,WAAW,GAAuC,IAAI,CAAC;AAC3D,SAAS,gBAAgB,CAAC,UAAU,GAAG,IAAI;IACzC,MAAM,MAAM,GAAG,WAAW,CAAC;IAC3B,IAAI,MAAM,EAAE,CAAC;QACX,IAAI,CAAC,UAAU;YAAE,OAAO,MAAM,CAAC;QAC/B,yEAAyE;QACzE,yEAAyE;QACzE,uEAAuE;QACvE,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,+CAA+C;QAC/C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACvB,IAAI,CAAC,CAAC,EAAE,IAAI,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,QAAQ;gBAAE,OAAO,CAAC,CAAC;YAClE,IAAI,WAAW,KAAK,MAAM;gBAAE,WAAW,GAAG,IAAI,CAAC;YAC/C,sEAAsE;YACtE,uEAAuE;YACvE,mDAAmD;YACnD,OAAO,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IACD,MAAM,CAAC,GAAG,YAAY,CAAC;QACrB,sEAAsE;QACtE,wEAAwE;QACxE,gDAAgD;QAChD,IAAI,EAAE,GAAG,EAAE,CAAC,sBAAsB,CAAC,cAAc,EAAE,CAAC;QACpD,OAAO,EAAE,gBAAgB;QACzB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;KACrD,CAAC,CAAC;IACH,WAAW,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACX,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACxC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,WAAW,KAAK,CAAC;YAAE,WAAW,GAAG,IAAI,CAAC;IACrD,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,IAAI,WAAW,KAAK,CAAC;QAAE,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/D,OAAO,CAAC,CAAC;AACX,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,EAAU,EACV,GAAW,EACX,IAAc,EACd,QAAQ,GAAoB,IAAI,EAChC,OAAO,GAAkB,IAAI;IAE7B,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAChD,oEAAoE;IACpE,MAAM,WAAW,GAAG,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;IACxD,MAAM,aAAa,GAAG,cAAc,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,MAAM,CAAC,GAAS;QACd,EAAE;QACF,GAAG;QACH,KAAK;QACL,OAAO;QACP,cAAc,EAAE,OAAO,EAAI,6CAA6C;QACxE,OAAO,EAAE,IAAI,GAAG,EAAE;QAClB,IAAI,EAAE,KAAK;QACX,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,IAAI;QACjB,UAAU,EAAE,EAAE;QACd,aAAa,EAAE,IAAI;QACnB,aAAa;QACb,0EAA0E;QAC1E,2EAA2E;QAC3E,UAAU,EAAE,YAAY,CAAC,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC;QACxE,QAAQ,EAAE,IAAI;QACd,WAAW,EAAE,EAAE;QACf,cAAc,EAAE,KAAK;QACrB,QAAQ;QACR,SAAS,EAAE,IAAI;QACf,KAAK,EAAE,WAAW;QAClB,UAAU,EAAE,IAAI;QAChB,UAAU,EAAE,CAAC;QACb,iBAAiB,EAAE,EAAE;QACrB,aAAa,EAAE,IAAI;QACnB,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,IAAI;KACjB,CAAC;IACF,MAAM,WAAW,CAAC,CAAC,CAAC,CAAC;IACrB,OAAO,CAAC,CAAC;AACX,CAAC;AAED;;;;;GAKG;AACH;;;;;;;;GAQG;AACH,SAAS,gBAAgB,CAAC,CAAO;IAC/B,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACf,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;IAClB,MAAM,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;IACnC,CAAC,CAAC,QAAQ,GAAG,WAAW,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE;QAC1D,6EAA6E;QAC7E,oEAAoE;QACpE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACxB,yEAAyE;YACzE,mEAAmE;YACnE,CAAC,CAAC,cAAc,GAAG,IAAI,CAAC;YACxB,OAAO;QACT,CAAC;QACD,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YACtB,CAAC,CAAC,cAAc,GAAG,KAAK,CAAC,CAAC,+CAA+C;YACzE,uEAAuE;YACvE,0CAA0C;YAC1C,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;YAC3B,IAAI,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC;gBAAE,CAAC,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YACpD,2EAA2E;YAC3E,sEAAsE;YACtE,0EAA0E;YAC1E,sCAAsC;YACtC,MAAM,aAAa,GAAG,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,iBAAiB,IAAI,SAAS,CAAC;YAC1E,CAAC,CAAC,iBAAiB,GAAG,KAAK,CAAC;YAC5B,+DAA+D;YAC/D,wEAAwE;YACxE,aAAa;YACb,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;QAC/E,CAAC;aAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM;YAC1B,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;aAC/E,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC;YAClC,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACzD,yEAAyE;YACzE,2EAA2E;YAC3E,8DAA8D;YAC9D,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;YACnD,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;gBACzC,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;gBACnB,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;;YACC,SAAS,CAAC,CAAC,EAAE;gBACX,IAAI,EAAE,eAAe;gBACrB,SAAS,EAAE,CAAC,CAAC,SAAS;gBACtB,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;aACnB,CAAC,CAAC;IACP,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;;;;;;;;GASG;AACH;;;;4EAI4E;AAC5E,MAAM,aAAa,GAAG,MAAM,CAAC;AAE7B,SAAS,eAAe,CAAC,CAAO;IAC9B,4EAA4E;IAC5E,oEAAoE;IACpE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE;QAAE,OAAO;IACjC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,aAAa;QAAE,OAAO;IAChE,MAAM,MAAM,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC9C,2EAA2E;IAC3E,4EAA4E;IAC5E,2EAA2E;IAC3E,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;IAC3D,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,mCAAmC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,qBAAqB,CAAC,CAAC;IAC/G,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC;IAClB,8EAA8E;IAC9E,oDAAoD;IACpD,WAAW,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/C,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACpB,SAAS,CAAC,CAAC,EAAE;QACX,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,oGAAoG;QAC1G,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;KACf,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,CAAO;IAChC,MAAM,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACtB,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACtB,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;QACjC,IAAI,CAAC,CAAC,UAAU;YAAE,OAAO,CAAC,mDAAmD;QAC7E,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,6DAA6D;QAC7D,2EAA2E;QAC3E,wEAAwE;QACxE,YAAY,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpC,cAAc,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,KAAK,EAAE,CAAC;IACd,yEAAyE;IACzE,4EAA4E;IAC5E,uCAAuC;IACvC,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,2EAA2E;IAC3E,4EAA4E;IAC5E,2CAA2C;IAC3C,gBAAgB,CAAC,CAAC,CAAC,CAAC;IACpB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,CAAC,CAAC,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,IAAI,KAAK,CAAC,SAAS;YAAE,OAAO;QAC5B,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC;QAC3B,IAAI,GAAG,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC;YACzB,CAAC,CAAC,UAAU,GAAG,GAAG,CAAC;YACnB,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACxE,0EAA0E;YAC1E,uEAAuE;YACvE,0EAA0E;YAC1E,uEAAuE;YACvE,wEAAwE;YACxE,qEAAqE;YACrE,gEAAgE;YAChE,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,CAAC,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;gBAC5B,IAAI,CAAC;oBAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;oBACtB,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;YAC9B,CAAC;QACH,CAAC;QACD,sEAAsE;QACtE,uEAAuE;QACvE,uEAAuE;QACvE,IAAI,OAAO,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,KAAK,CAAC,SAAS,EAAE;YAAE,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAC3E,wEAAwE;QACxE,4EAA4E;QAC5E,6DAA6D;QAC7D,IAAI,OAAO,IAAI,EAAE,QAAQ,GAAG,EAAE,KAAK,CAAC;YAAE,eAAe,CAAC,CAAC,CAAC,CAAC;IAC3D,CAAC,EAAE,GAAG,CAAC,CAAC;IAER,kEAAkE;IAClE,sEAAsE;IACtE,yEAAyE;IACzE,2EAA2E;IAC3E,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAC3B,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACnF,IAAI,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9D,IAAI,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrB,MAAM,GAAG,MAAM,KAAK,CAAC,OAAO,CAC1B,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAClD,EAAE,SAAS,EAAE,MAAM,EAAE,CACtB,CAAC;IACJ,CAAC;IACD,2EAA2E;IAC3E,6EAA6E;IAC7E,uEAAuE;IACvE,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,KAAK,GAAG,EAAE,CAAC;QAC9C,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,EAAE,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACpE,IAAI,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;YAChD,MAAM,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YAClC,MAAM,KAAK;iBACR,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;iBAClF,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,IAAI,CAAC;IACf,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AACtB,CAAC;AAED;;;;;;;;;GASG;AACH,SAAS,cAAc,CAAC,CAAO;IAC7B,MAAM,SAAS,GAAG,CAAC,CAAC,aAAa,CAAC;IAClC,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AACxG,CAAC;AAED;;;;GAIG;AACH;;;;;;GAMG;AACH,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAElC,KAAK,UAAU,UAAU,CAAC,CAAO;IAC/B,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;IACd,2EAA2E;IAC3E,8EAA8E;IAC9E,8EAA8E;IAC9E,mEAAmE;IACnE,IAAI,CAAC,CAAC,CAAC,aAAa;QAAE,CAAC,CAAC,aAAa,GAAG,gBAAgB,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAChG,CAAC,CAAC,iBAAiB,GAAG,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,CAAC;QACH,wEAAwE;QACxE,oCAAoC;QACpC,MAAM,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;YACxB,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC;YAChE,SAAS,EAAE,OAAO;SACnB,CAAC,CAAC;QACH,0EAA0E;QAC1E,2EAA2E;QAC3E,0EAA0E;QAC1E,4EAA4E;QAC5E,yDAAyD;QACzD,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;YACzE,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACvB,MAAM,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QAC9C,IAAI,MAAM,EAAE,CAAC;YACX,wEAAwE;YACxE,uEAAuE;YACvE,yEAAyE;YACzE,0EAA0E;YAC1E,2EAA2E;YAC3E,2EAA2E;YAC3E,uEAAuE;YACvE,sEAAsE;YACtE,0EAA0E;YAC1E,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;YACvB,aAAa,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;QAC3B,CAAC;aAAM,CAAC;YACN,qEAAqE;YACrE,yEAAyE;YACzE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;YACvB,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACrD,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACtB,yEAAyE;YACzE,4DAA4D;YAC5D,YAAY,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,cAAc,EAAE,CAAC,CAAC;QAChH,CAAC;IACH,CAAC;YAAS,CAAC;QACT,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;QACf,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;QACvB,yEAAyE;QACzE,0EAA0E;QAC1E,IAAI,CAAC,CAAC,aAAa;YAAE,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC;QACjE,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC;QACvB,0EAA0E;QAC1E,sEAAsE;QACtE,2DAA2D;QAC3D,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACzB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,KAAY,EAAE,CAAS;IACjD,IAAI,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC;QACjC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IACD,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,2CAA2C;AACrE,CAAC;AAED;;;;;;;;;GASG;AACH,KAAK,UAAU,YAAY,CAAC,KAAY,EAAE,CAAS;IACjD,IAAI,MAAM,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;QAAE,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACrD,CAAC;AAED,wEAAwE;AACxE,MAAM,WAAW,GAAG,iCAAiC,CAAC;AAEtD;;;;;;;;;;;;;;GAcG;AACH,SAAS,aAAa,CAAC,CAAO,EAAE,CAAY;IAC1C,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,wEAAwE;IACxE,4EAA4E;IAC5E,6DAA6D;IAC7D,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;IAChF,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,CAAO,EAAE,IAA2B;IAC7D,MAAM,CAAC,GAAG,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IACzC,4EAA4E;IAC5E,sEAAsE;IACtE,IAAI,CAAC,CAAC,IAAI,qBAAqB,CAAC,CAAC,CAAC;QAAE,OAAO;IAC3C,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,aAAa,CAAC,CAAO,EAAE,CAAY;IAC1C,IAAI,qBAAqB,CAAC,CAAC,CAAC;QAAE,OAAO;IACrC,4EAA4E;IAC5E,yEAAyE;IACzE,2EAA2E;IAC3E,0EAA0E;IAC1E,qBAAqB;IACrB,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAAE,OAAO;IAC/C,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IACzB,IAAI,GAAG,KAAK,CAAC,CAAC,aAAa;QAAE,OAAO;IACpC,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC;IACtB,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAClC,2EAA2E;IAC3E,6EAA6E;IAC7E,4EAA4E;IAC5E,2EAA2E;IAC3E,yEAAyE;IACzE,YAAY,CAAC,CAAC,EAAE;QACd,IAAI,EAAE,QAAQ;QACd,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,OAAO,EAAE,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;KACvC,CAAC,CAAC;AACL,CAAC;AAED,sEAAsE;AACtE,SAAS,UAAU,CAAC,CAAO,EAAE,MAAM,GAAG,KAAK;IACzC,IAAI,CAAC,CAAC,CAAC,UAAU;QAAE,OAAO;IAC1B,YAAY,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;IACpB,IAAI,MAAM;QAAE,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;AAC7D,CAAC;AAED;;;GAGG;AACH,MAAM,eAAe,GAAG,MAAM,CAAC;AAE/B;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,CAAO;IACjC,IAAI,CAAC,CAAC,UAAU;QAAE,OAAO,CAAC,8BAA8B;IACxD,MAAM,KAAK,GAAG,kBAAkB,CAC9B,CAAC,CAAC,iBAAiB,EACnB,mBAAmB,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CACtC,CAAC;IACF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,uCAAuC;QACzD,OAAO;IACT,CAAC;IACD,IAAI,CAAC,CAAC,UAAU,IAAI,eAAe,CAAC,MAAM,EAAE,CAAC;QAC3C,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;QACrE,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC;QACjB,OAAO;IACT,CAAC;IACD,MAAM,OAAO,GAAG,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC,CAAC,UAAU,EAAE,CAAC;IACf,SAAS,CAAC,CAAC,EAAE;QACX,IAAI,EAAE,YAAY;QAClB,OAAO;QACP,OAAO,EAAE,CAAC,CAAC,UAAU;QACrB,GAAG,EAAE,eAAe,CAAC,MAAM;KAC5B,CAAC,CAAC;IACH,yEAAyE;IACzE,4DAA4D;IAC5D,IAAI,IAAI,GAAG,KAAK,CAAC;IACjB,MAAM,IAAI,GAAG,KAAK,IAAI,EAAE;QACtB,yEAAyE;QACzE,sEAAsE;QACtE,0BAA0B;QAC1B,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC;QAC1B,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAChC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;YACpB,OAAO;QACT,CAAC;QACD,yEAAyE;QACzE,0EAA0E;QAC1E,mEAAmE;QACnE,sEAAsE;QACtE,2DAA2D;QAC3D,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC1E,uEAAuE;QACvE,sEAAsE;QACtE,mEAAmE;QACnE,IAAI,CAAC,CAAC,UAAU,KAAK,IAAI;YAAE,OAAO;QAClC,yEAAyE;QACzE,iEAAiE;QACjE,mEAAmE;QACnE,wEAAwE;QACxE,yEAAyE;QACzE,gEAAgE;QAChE,IAAI,CAAC,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YAChC,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;YACpB,OAAO;QACT,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,IAAI,GAAG,IAAI,CAAC;gBACZ,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9D,CAAC;YACD,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;QACD,CAAC,CAAC,UAAU,GAAG,IAAI,CAAC;QACpB,IAAI,IAAI;YAAE,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QACjD,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,IAAI,GAAG,IAAI,CAAC;QACd,CAAC,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC7B,SAAS,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,mDAAmD;QAC7D,CAAC;gBAAS,CAAC;YACT,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC;QACjB,CAAC;QACD,MAAM,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACtC,CAAC,CAAC;IACF,CAAC,CAAC,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,KAAK,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;AAEpE,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,CAAC,EAAa,EAAE,EAAE;IACrC,IAAI,OAAO,GAAgB,IAAI,CAAC;IAChC,8EAA8E;IAC9E,4EAA4E;IAC5E,mEAAmE;IACnE,IAAI,MAA0B,CAAC;IAE/B,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE;QAC3B,IAAI,EAAE,CAAC,UAAU,KAAK,EAAE,CAAC,IAAI;YAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9D,CAAC,CAAC;IACF,6EAA6E;IAC7E,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAE7G,0EAA0E;IAC1E,2EAA2E;IAC3E,sEAAsE;IACtE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;IAEvB,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;QAClB,IAAI,OAAO;YAAE,MAAM,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,IAAI,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC7B,IAAI,GAAkB,CAAC;QACvB,IAAI,CAAC;YACH,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpC,CAAC;QAED,IAAI,CAAC;YACH,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,6DAA6D;YAC7D,IACE,OAAO;gBACP,CAAC,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EACrE,CAAC;gBACD,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAC1B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;YACzB,CAAC;YACD,QAAQ,GAAG,CAAC,IAAI,EAAE,CAAC;gBACjB,KAAK,OAAO,EAAE,CAAC;oBACb,IAAI,OAAO;wBAAE,OAAO,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBACpD,kEAAkE;oBAClE,mEAAmE;oBACnE,sEAAsE;oBACtE,+DAA+D;oBAC/D,8DAA8D;oBAC9D,gEAAgE;oBAChE,gEAAgE;oBAChE,oEAAoE;oBACpE,oEAAoE;oBACpE,8DAA8D;oBAC9D,sEAAsE;oBACtE,qEAAqE;oBACrE,oEAAoE;oBACpE,qEAAqE;oBACrE,MAAM,MAAM,GAAG,MAAM,gBAAgB,EAAE,CAAC;oBACxC,IAAI,CAAC,MAAM,CAAC,EAAE;wBAAE,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBAC1C,MAAM,IAAI,GAAG,MAAM,UAAU,EAAE,CAAC;oBAChC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;wBAC1B,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;oBACjF,IAAI,IAAI,CAAC,KAAK,KAAK,YAAY,EAAE,CAAC;wBAChC,kEAAkE;wBAClE,2DAA2D;wBAC3D,4DAA4D;wBAC5D,iBAAiB,EAAE,CAAC;wBACpB,OAAO,IAAI,CACT,+EAA+E,EAC/E,YAAY,CACb,CAAC;oBACJ,CAAC;oBACD,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;wBAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrE,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;oBAC7C,kEAAkE;oBAClE,gEAAgE;oBAChE,iEAAiE;oBACjE,+CAA+C;oBAC/C,IAAI,EAAU,CAAC;oBACf,MAAM,IAAI,GAAa,EAAE,CAAC;oBAC1B,IAAI,OAAO,GAAG,KAAK,CAAC;oBACpB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;wBACf,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;wBAChB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;wBAC1B,OAAO,GAAG,IAAI,CAAC;oBACjB,CAAC;yBAAM,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC;wBACxB,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;wBACjC,IAAI,KAAK,EAAE,CAAC;4BACV,EAAE,GAAG,KAAK,CAAC;4BACX,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;4BAC1B,OAAO,GAAG,IAAI,CAAC;wBACjB,CAAC;6BAAM,CAAC;4BACN,oDAAoD;4BACpD,EAAE,GAAG,UAAU,EAAE,CAAC;4BAClB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;wBAChC,CAAC;oBACH,CAAC;yBAAM,CAAC;wBACN,EAAE,GAAG,UAAU,EAAE,CAAC;wBAClB,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBAChC,CAAC;oBAED,kEAAkE;oBAClE,2DAA2D;oBAC3D,IAAI,QAAQ,GAAoB,IAAI,CAAC;oBACrC,uEAAuE;oBACvE,uEAAuE;oBACvE,qEAAqE;oBACrE,sEAAsE;oBACtE,sEAAsE;oBACtE,gEAAgE;oBAChE,MAAM,MAAM,GAAG,OAAO;wBACpB,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;wBACvG,CAAC,CAAC,IAAI,CAAC;oBACT,IAAI,YAAY,GAAG,MAAM,EAAE,GAAG,IAAI,GAAG,CAAC;oBACtC,qEAAqE;oBACrE,sEAAsE;oBACtE,qEAAqE;oBACrE,6DAA6D;oBAC7D,IAAI,OAAO,IAAI,QAAQ,IAAI,cAAc,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC;wBACtD,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC;wBACxC,IAAI,OAAO,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;4BAAE,YAAY,GAAG,OAAO,CAAC;oBAChE,CAAC;oBACD,IAAI,GAAG,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC;wBAC/C,IAAI,CAAC;4BACH,QAAQ,GAAG,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;4BAC/C,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC;wBAC/B,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,OAAO,IAAI,CACT,4BAA4B,GAAG,CAAC,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAC5E,CAAC;wBACJ,CAAC;oBACH,CAAC;oBAED,oEAAoE;oBACpE,gEAAgE;oBAChE,IAAI,MAAM,EAAE,MAAM,IAAI,MAAM,EAAE,IAAI,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBACnE,sBAAsB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;oBACnE,CAAC;oBAED,oEAAoE;oBACpE,oEAAoE;oBACpE,qEAAqE;oBACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;wBACjC,OAAO,IAAI,CAAC;4BACV,IAAI,EAAE,MAAM;4BACZ,SAAS,EAAE,EAAE;4BACb,OAAO,EAAE,sCAAsC,GAAG,YAAY;yBAC/D,CAAC,CAAC;oBACL,CAAC;oBAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAClC,IAAI,QAAQ,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;wBAC1C,iEAAiE;wBACjE,0CAA0C;wBAC1C,OAAO,GAAG,QAAQ,CAAC;wBACnB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;4BACtB,YAAY,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;4BAChC,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;wBAC3B,CAAC;wBACD,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;wBACxB,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;wBAC3C,IAAI,KAAK,CAAC,MAAM;4BAAE,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;wBACnD,IAAI,CAAC;4BACH,IAAI,EAAE,OAAO;4BACb,SAAS,EAAE,EAAE;4BACb,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE;4BACtC,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,UAAU,EAAE,OAAO,CAAC,UAAU;yBAC/B,CAAC,CAAC;wBACH,gEAAgE;wBAChE,+DAA+D;wBAC/D,4DAA4D;wBAC5D,aAAa,CAAC;4BACZ,SAAS,EAAE,EAAE;4BACb,GAAG,EAAE,OAAO,CAAC,GAAG;4BAChB,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;yBACjE,CAAC,CAAC;wBACH,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;wBACvD,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC,CAAC;wBACrG,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI;4BAAE,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;wBACpF,IAAI,CAAC;4BACH,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE;4BAC5B,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE;yBACnC,CAAC,CAAC;wBACH,IAAI,OAAO,CAAC,IAAI;4BACd,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;wBAChC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;wBACjC,MAAM;oBACR,CAAC;oBAED,uEAAuE;oBACvE,uEAAuE;oBACvE,qEAAqE;oBACrE,oEAAoE;oBACpE,wEAAwE;oBACxE,qEAAqE;oBACrE,gEAAgE;oBAChE,IAAI,OAAO,GAAkB,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC;oBACjD,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC;wBACvE,IAAI,MAAM,IAAI,IAAI;4BAAE,OAAO,GAAG,MAAM,CAAC,CAAC,2CAA2C;oBACnF,CAAC;oBACD,mEAAmE;oBACnE,sEAAsE;oBACtE,mEAAmE;oBACnE,oEAAoE;oBACpE,4DAA4D;oBAC5D,IAAI,aAAwC,CAAC;oBAC7C,IAAI,GAAG,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC7B,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,CAAC;wBACpE,IAAI,OAAO;4BAAE,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,yBAAyB,OAAO,GAAG,CAAC,CAAC;;4BACjF,aAAa,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC;oBAC1C,CAAC;oBACD,OAAO,GAAG,MAAM,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACzE,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACxB,IAAI,OAAO,EAAE,CAAC;wBACZ,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;wBAC5C,IAAI,KAAK,CAAC,MAAM;4BAAE,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;oBACrD,CAAC;oBACD,IAAI,CAAC;wBACH,IAAI,EAAE,OAAO;wBACb,SAAS,EAAE,EAAE;wBACb,SAAS,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE;wBACtC,GAAG,EAAE,YAAY;wBACjB,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;qBACjC,CAAC,CAAC;oBACH,aAAa,CAAC;wBACZ,SAAS,EAAE,EAAE;wBACb,GAAG,EAAE,YAAY;wBACjB,mEAAmE;wBACnE,mEAAmE;wBACnE,qEAAqE;wBACrE,qEAAqE;wBACrE,mEAAmE;wBACnE,+DAA+D;wBAC/D,EAAE;wBACF,oEAAoE;wBACpE,8DAA8D;wBAC9D,kEAAkE;wBAClE,oEAAoE;wBACpE,4DAA4D;wBAC5D,mEAAmE;wBACnE,sEAAsE;wBACtE,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrE,OAAO;wBACP,gEAAgE;wBAChE,kEAAkE;wBAClE,kEAAkE;wBAClE,WAAW;wBACX,GAAG,CAAC,OAAO,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAClE,yDAAyD;wBACzD,8DAA8D;wBAC9D,+DAA+D;wBAC/D,kEAAkE;wBAClE,2CAA2C;wBAC3C,GAAG,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAClE,CAAC,CAAC;oBACH,IAAI,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBACvD,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,EAAE,CAAC,CAAC;oBACnG,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI;wBAAE,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtF,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBACjC,MAAM;gBACR,CAAC;gBAED,KAAK,QAAQ,EAAE,CAAC;oBACd,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,IAAI,OAAO,CAAC,IAAI;wBAAE,OAAO,IAAI,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAC;oBAC3E,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC7B,IAAI,CAAC,IAAI;wBAAE,OAAO;oBAClB,qEAAqE;oBACrE,qEAAqE;oBACrE,qDAAqD;oBACrD,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;wBACf,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,QAAQ,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;wBACxD,IAAI,OAAO,CAAC,OAAO;4BAAE,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;wBACzF,gEAAgE;wBAChE,iEAAiE;wBACjE,iEAAiE;wBACjE,6DAA6D;wBAC7D,IAAI,OAAO,CAAC,IAAI;4BAAE,OAAO,IAAI,CAAC,mCAAmC,EAAE,MAAM,CAAC,CAAC;oBAC7E,CAAC;oBACD,mEAAmE;oBACnE,kEAAkE;oBAClE,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC1B,OAAO,CAAC,UAAU,GAAG,CAAC,CAAC;oBACvB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;oBAC1B,qEAAqE;oBACrE,kEAAkE;oBAClE,mEAAmE;oBACnE,+CAA+C;oBAC/C,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;wBACtB,+DAA+D;wBAC/D,qEAAqE;wBACrE,sDAAsD;wBACtD,OAAO,CAAC,iBAAiB,GAAG,KAAK,CAAC;wBAClC,SAAS,CACP,OAAO,EACP,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EACrG,EAAE,CACH,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,iEAAiE;wBACjE,gEAAgE;wBAChE,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC;oBACnC,CAAC;oBACD,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;oBACpB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACnC,SAAS,CAAC,OAAO,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC5C,IAAI,CAAC;wBACH,sEAAsE;wBACtE,sEAAsE;wBACtE,qEAAqE;wBACrE,kEAAkE;wBAClE,+DAA+D;wBAC/D,qCAAqC;wBACrC,MAAM,UAAU,GACd,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,KAAK;4BAC3D,CAAC,CAAC,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,IAAI,IAAI,EAAE,EAAE,GAAG,CAAC,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;4BACzF,CAAC,CAAC,IAAI,CAAC;wBACX,MAAM,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;oBACzC,CAAC;4BAAS,CAAC;wBACT,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC;oBACvB,CAAC;oBACD,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAED,KAAK,QAAQ,EAAE,CAAC;oBACd,kEAAkE;oBAClE,gEAAgE;oBAChE,kEAAkE;oBAClE,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,uEAAuE;oBACvE,iEAAiE;oBACjE,uDAAuD;oBACvD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBACvC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;oBACtG,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAED,KAAK,QAAQ,EAAE,CAAC;oBACd,gEAAgE;oBAChE,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBACvC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;oBACtG,MAAM,YAAY,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC/C,IAAI,CAAC;wBAAE,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;;wBAChD,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/B,MAAM;gBACR,CAAC;gBAED,KAAK,UAAU,EAAE,CAAC;oBAChB,2DAA2D;oBAC3D,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;wBACvC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;oBACtG,MAAM,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAC1B,IAAI,CAAC,CAAC;wBAAE,OAAO;oBACf,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACnC,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;oBAC9C,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;oBAC7B,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBAC/C,IAAI,CAAC;wBAAE,SAAS,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;;wBAChD,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC/B,MAAM;gBACR,CAAC;gBAED,KAAK,SAAS,EAAE,CAAC;oBACf,6DAA6D;oBAC7D,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;oBACpD,IAAI,CAAC,MAAM;wBACT,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC;oBACtG,qEAAqE;oBACrE,+DAA+D;oBAC/D,uEAAuE;oBACvE,wEAAwE;oBACxE,qEAAqE;oBACrE,sEAAsE;oBACtE,8CAA8C;oBAC9C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAC3B,MAAM,OAAO,CAAC,KAAK;yBAChB,OAAO,CACN,CAAC,GAAG,EAAE,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,MAAM,CAAC,QAAQ,EACtG,EAAE,SAAS,EAAE,IAAI,EAAE,CACpB;yBACA,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC,CAAC,oDAAoD;oBACxE,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;oBACjB,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;oBAC/B,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;wBACnC,qEAAqE;wBACrE,8DAA8D;wBAC9D,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC5B,CAAC;yBAAM,CAAC;wBACN,iEAAiE;wBACjE,0DAA0D;wBAC1D,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;oBAC/B,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,KAAK,KAAK,EAAE,CAAC;oBACX,6DAA6D;oBAC7D,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,KAAK,GAAG;wBACZ,OAAO;wBACP,QAAQ;wBACR,IAAI;wBACJ,MAAM;wBACN,MAAM;wBACN,OAAO;wBACP,KAAK;wBACL,QAAQ;qBACA,CAAC;oBACX,IAAK,KAA2B,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;wBACnD,kEAAkE;wBAClE,kEAAkE;wBAClE,8DAA8D;wBAC9D,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;4BACnE,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;wBACrC,CAAC;wBACD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAA6B,CAAC,CAAC;oBACzD,CAAC;yBAAM,IAAI,GAAG,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBAChC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBAC/B,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,oEAAoE;gBACpE,KAAK,aAAa,EAAE,CAAC;oBACnB,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,CAAC,GAAG,OAAO,CAAC;oBAClB,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,YAAY,SAAS,CAAC;wBAAE,OAAO,IAAI,CAAC,+CAA+C,CAAC,CAAC;oBAClG,CAAC,CAAC,UAAU,KAAK,IAAI,GAAG,EAAE,CAAC;oBAC3B,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBACrB,sEAAsE;oBACtE,kEAAkE;oBAClE,wEAAwE;oBACxE,qEAAqE;oBACrE,sEAAsE;oBACtE,uDAAuD;oBACvD,oDAAoD;oBACpD,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;wBACd,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,KAAK,EAAE,EAAE;4BACrC,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;4BACpF,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,EAAE;gCAAE,IAAI,CAAC,CAAC,UAAU,KAAK,CAAC,CAAC,IAAI;oCAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;wBACjF,CAAC,CAAC,CAAC;oBACL,CAAC;oBACD,MAAM;gBACR,CAAC;gBACD,KAAK,YAAY,EAAE,CAAC;oBAClB,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,YAAY,SAAS,CAAC;wBAAE,OAAO;oBAC9D,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;wBAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;oBACzF,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,EAAE,CAAC;oBACnB,sEAAsE;oBACtE,mEAAmE;oBACnE,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,YAAY,SAAS,CAAC;wBAAE,OAAO;oBAC9D,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;wBAC9D,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;oBACjD,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,EAAE,CAAC;oBACnB,IAAI,CAAC,OAAO;wBAAE,OAAO;oBACrB,OAAO,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;oBAC/B,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;wBAC1E,OAAO,CAAC,MAAM,EAAE,CAAC;wBACjB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;oBACxB,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,KAAK,QAAQ,EAAE,CAAC;oBACd,4DAA4D;oBAC5D,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI;wBAAE,OAAO;oBACrC,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC1B,MAAM;gBACR,CAAC;gBAED,KAAK,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,cAAc,CAAC,OAAO,CAAC,CAAC;oBAC9B,MAAM;gBACR,CAAC;gBACD,KAAK,aAAa,EAAE,CAAC;oBACnB,qEAAqE;oBACrE,uEAAuE;oBACvE,qDAAqD;oBACrD,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,CAAC,GAAG,OAAO,CAAC;oBAClB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,IAAI,IAAI,CAAC;oBACjC,oEAAoE;oBACpE,mEAAmE;oBACnE,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;wBAAE,OAAO,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;oBAChF,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;oBACjB,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;oBAClD,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAY,mDAAmD;oBACnF,IAAI,GAAG,CAAC,OAAO;wBAAE,MAAM,cAAc,CAAC,CAAC,CAAC,CAAC;oBACzC,MAAM;gBACR,CAAC;gBACD,KAAK,YAAY,EAAE,CAAC;oBAClB,oEAAoE;oBACpE,iEAAiE;oBACjE,gEAAgE;oBAChE,IAAI,CAAC,OAAO;wBAAE,OAAO,IAAI,CAAC,oBAAoB,CAAC,CAAC;oBAChD,MAAM,CAAC,GAAG,OAAO,CAAC;oBAClB,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC;oBAClC,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;oBAC1D,qEAAqE;oBACrE,yEAAyE;oBACzE,IAAI,OAAO;wBAAE,OAAO,IAAI,CAAC,kBAAkB,OAAO,EAAE,EAAE,cAAc,CAAC,CAAC;oBACtE,aAAa,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBACnD,SAAS,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBACjD,MAAM;gBACR,CAAC;gBACD,KAAK,MAAM,EAAE,CAAC;oBACZ,sEAAsE;oBACtE,sEAAsE;oBACtE,qEAAqE;oBACrE,2DAA2D;oBAC3D,MAAM,EAAE,GAAG,GAAG,CAAC,SAAS,IAAI,OAAO,EAAE,EAAE,CAAC;oBACxC,IAAI,CAAC,EAAE;wBAAE,OAAO;oBAChB,MAAM,UAAU,CAAC,EAAE,CAAC,CAAC;oBACrB,IAAI,OAAO,EAAE,EAAE,KAAK,EAAE;wBAAE,OAAO,GAAG,IAAI,CAAC;oBACvC,MAAM;gBACR,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,4EAA4E;AAC5E,iBAAiB,EAAE,CAAC;AACpB,4EAA4E;AAC5E,6CAA6C;AAC7C,8EAA8E;AAC9E,+EAA+E;AAC/E,gFAAgF;AAChF,uDAAuD;AACvD,IAAI,CAAC;IACH,MAAM,KAAK,GAAG,mBAAmB,EAAE,CAAC;IACpC,IAAI,KAAK,CAAC,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,+CAA+C,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACnG,CAAC;AAAC,MAAM,CAAC;IACP,wDAAwD;AAC1D,CAAC;AACD,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,wBAAwB;AACxB,IAAI,CAAC;IACH,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,IAAI,OAAO,CAAC,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,gDAAgD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACxG,CAAC;AAAC,MAAM,CAAC;IACP,wDAAwD;AAC1D,CAAC;AACD,gFAAgF;AAChF,2EAA2E;AAC3E,IAAI,CAAC;IACH,MAAM,KAAK,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;IACvG,IAAI,KAAK;QAAE,gBAAgB,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAAC,MAAM,CAAC;IACP,wEAAwE;AAC1E,CAAC;AAED,4EAA4E;AAC5E,8EAA8E;AAC9E,wBAAwB;AACxB,SAAS,kBAAkB;IACzB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,iBAAiB,CAAC,CAAC;QACrE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAAE,OAAO;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QACxE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC;QACtG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC;QAC/D,sEAAsE;QACtE,iEAAiE;QACjE,wEAAwE;QACxE,2EAA2E;QAC3E,yCAAyC;QACzC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACvE,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC;AACD,kBAAkB,EAAE,CAAC;AAErB,+EAA+E;AAC/E,4EAA4E;AAC5E,qEAAqE;AACrE,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;QACnE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAAE,OAAO;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;QAC3E,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC,CAAC;QACxE,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC;QAClG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,uEAAuE;QACvE,qDAAqD;QACrD,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC;AACD,gBAAgB,EAAE,CAAC;AAEnB,4EAA4E;AAC5E,iFAAiF;AACjF,6DAA6D;AAC7D,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAAE,OAAO;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1E,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,EAAE,CAAC;YAC3C,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,mFAAmF;IACrF,CAAC;AACH,CAAC;AACD,eAAe,EAAE,CAAC;AAElB,2EAA2E;AAC3E,wEAAwE;AACxE,+EAA+E;AAC/E,+EAA+E;AAC/E,wCAAwC;AACxC,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAAE,OAAO;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,eAAe,CAAC,CAAC;QAC1E,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,YAAY,EAAE,iBAAiB,CAAC,EAAE,CAAC;YAC9D,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,uEAAuE;IACzE,CAAC;AACH,CAAC;AACD,eAAe,EAAE,CAAC;AAElB,+EAA+E;AAC/E,iFAAiF;AACjF,kFAAkF;AAClF,yFAAyF;AACzF,+DAA+D;AAC/D,SAAS,eAAe;IACtB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;QAClE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAAE,OAAO;QACvD,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC;QAC7E,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,cAAc,CAAC,EAAE,CAAC;YAC7C,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACxD,CAAC;QACD,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,EAAE,KAAK,CAAC,CAAC;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,qFAAqF;IACvF,CAAC;AACH,CAAC;AACD,eAAe,EAAE,CAAC;AAElB;;qEAEqE;AACrE,SAAS,cAAc,CAAC,CAAc;IACpC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,IAAI,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;QAChB,IAAI,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QAClB,IAAI,CAAC,CAAC,SAAS,IAAI,OAAO,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YAClF,IAAI,GAAG,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC;YAC5B,GAAG,GAAG,MAAM,CAAC;QACf,CAAC;QACD,MAAM,CAAC,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/F,CAAC,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACtB,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,qBAAqB,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5G,CAAC,CAAC,CAAC;AACL,CAAC;AAED,4EAA4E;AAC5E,4EAA4E;AAC5E,8EAA8E;AAC9E,8EAA8E;AAC9E,KAAK,CAAC,KAAK,IAAI,EAAE;IACf,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,GAAG;QAAE,OAAO;IAC5C,MAAM,CAAC,GAAG,MAAM,UAAU,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC;QACjC,IAAI,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACxE,OAAO,EAAE,cAAc;QACvB,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC;KACrD,CAAC,CAAC;IACH,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC7B,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,GAAG,IAAI,aAAa,EAAE,CAAC;QAC9D,IAAI,QAAQ;YAAE,OAAO,CAAC,GAAG,CAAC,8EAA8E,CAAC,CAAC;IAC5G,CAAC;AACH,CAAC,CAAC,EAAE,CAAC;AAEL,4EAA4E;AAC5E,8EAA8E;AAC9E,+EAA+E;AAC/E,uEAAuE;AACvE,2BAA2B,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,CAAC;AAE1E;;;;;GAKG;AACH,SAAS,gBAAgB;IACvB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;QACvE,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,OAAO;QAChC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC;QACvE,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,EAAE,CAAC,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1B,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,4EAA4E;IAC9E,CAAC;AACH,CAAC;AACD,gBAAgB,EAAE,CAAC;AAEnB,0EAA0E;AAC1E,8EAA8E;AAC9E,2BAA2B;AAC3B,MAAM,OAAO,GAAG,WAAW,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;AACzD,IAAI,OAAO,EAAE,CAAC;IACZ,OAAO,CAAC,KAAK,CAAC,eAAe,OAAO,EAAE,CAAC,CAAC;IACxC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC;AAED,gFAAgF;AAChF,+EAA+E;AAC/E,IAAI,IAAI,GAAG,UAAU,CAAC;AACtB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE;IAChD,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,IAAI,IAAI,GAAG,UAAU,GAAG,cAAc,EAAE,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,oBAAoB,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACzD,IAAI,EAAE,CAAC;QACP,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,qBAAqB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC,CAAC,CAAC;AACH,+EAA+E;AAC/E,4EAA4E;AAC5E,uEAAuE;AACvE,gBAAgB,EAAE,CAAC;AACnB,gFAAgF;AAChF,yEAAyE;AACzE,gFAAgF;AAChF,wCAAwC;AACxC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,CAAC;AAEhD,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE;IAC7B,OAAO,CAAC,GAAG,CAAC,mCAAmC,IAAI,GAAG,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,IAAI,GAAG,EAAE,CAAC,CAAC;IACxG,OAAO,CAAC,GAAG,CACT,QAAQ;QACN,CAAC,CAAC,kDAAkD;QACpD,CAAC,CAAC,sGAAsG,CAC3G,CAAC;IACF,0EAA0E;IAC1E,6EAA6E;IAC7E,yEAAyE;IACzE,4EAA4E;IAC5E,SAAS,GAAG,IAAI,CAAC;IACjB,QAAQ,GAAG,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC3C,IAAI,YAAY;QAAE,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC;IAC7D,yEAAyE;IACzE,uCAAuC;IACvC,UAAU,EAAE,CAAC;IACb,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAChD,SAAS,CAAC,KAAK,EAAE,CAAC;IAClB,2EAA2E;IAC3E,6EAA6E;IAC7E,0EAA0E;IAC1E,8EAA8E;IAC9E,8CAA8C;IAC9C,2EAA2E;IAC3E,0EAA0E;IAC1E,sCAAsC;IACtC,WAAW,CAAC,mBAAmB,GAAG,IAAI,CAAC,CAAC;IACxC,gBAAgB,EAAE,CAAC;IACnB,UAAU,CAAC,GAAG,EAAE,CAAC,KAAK,eAAe,EAAE,EAAE,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;AAC3D,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "shadok-ai",
3
- "version": "0.9.0",
3
+ "version": "0.9.1",
4
4
  "main": "dist/session.js",
5
5
  "scripts": {
6
6
  "test": "node --import tsx --test test/*.ts context/*/test/*.test.mjs",