prismcast 1.3.3 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/app.d.ts +3 -2
  2. package/dist/app.js +32 -17
  3. package/dist/app.js.map +1 -1
  4. package/dist/browser/channelSelection.d.ts +3 -2
  5. package/dist/browser/channelSelection.js +43 -19
  6. package/dist/browser/channelSelection.js.map +1 -1
  7. package/dist/browser/index.d.ts +9 -13
  8. package/dist/browser/index.js +65 -75
  9. package/dist/browser/index.js.map +1 -1
  10. package/dist/browser/tuning/hulu.js +613 -13
  11. package/dist/browser/tuning/hulu.js.map +1 -1
  12. package/dist/browser/tuning/sling.js +1 -1
  13. package/dist/browser/tuning/thumbnailRow.js +69 -71
  14. package/dist/browser/tuning/thumbnailRow.js.map +1 -1
  15. package/dist/browser/tuning/tileClick.js +111 -77
  16. package/dist/browser/tuning/tileClick.js.map +1 -1
  17. package/dist/browser/tuning/youtubeTv.js +5 -5
  18. package/dist/browser/tuning/youtubeTv.js.map +1 -1
  19. package/dist/browser/video.d.ts +3 -10
  20. package/dist/browser/video.js +91 -10
  21. package/dist/browser/video.js.map +1 -1
  22. package/dist/config/index.d.ts +9 -3
  23. package/dist/config/index.js +28 -28
  24. package/dist/config/index.js.map +1 -1
  25. package/dist/config/paths.d.ts +41 -0
  26. package/dist/config/paths.js +88 -0
  27. package/dist/config/paths.js.map +1 -0
  28. package/dist/config/providers.js +1 -1
  29. package/dist/config/sites.js +30 -13
  30. package/dist/config/sites.js.map +1 -1
  31. package/dist/config/userChannels.d.ts +1 -1
  32. package/dist/config/userChannels.js +10 -13
  33. package/dist/config/userChannels.js.map +1 -1
  34. package/dist/config/userConfig.d.ts +14 -7
  35. package/dist/config/userConfig.js +59 -34
  36. package/dist/config/userConfig.js.map +1 -1
  37. package/dist/index.d.ts +11 -1
  38. package/dist/index.js +187 -25
  39. package/dist/index.js.map +1 -1
  40. package/dist/routes/config.js +15 -7
  41. package/dist/routes/config.js.map +1 -1
  42. package/dist/routes/debug.js +41 -6
  43. package/dist/routes/debug.js.map +1 -1
  44. package/dist/routes/index.d.ts +1 -0
  45. package/dist/routes/index.js +3 -0
  46. package/dist/routes/index.js.map +1 -1
  47. package/dist/routes/logs.js +3 -3
  48. package/dist/routes/logs.js.map +1 -1
  49. package/dist/routes/playlist.d.ts +2 -2
  50. package/dist/routes/playlist.js +11 -9
  51. package/dist/routes/playlist.js.map +1 -1
  52. package/dist/routes/root.js +149 -6
  53. package/dist/routes/root.js.map +1 -1
  54. package/dist/routes/theme.js +4 -0
  55. package/dist/routes/theme.js.map +1 -1
  56. package/dist/routes/ui.js +2 -0
  57. package/dist/routes/ui.js.map +1 -1
  58. package/dist/routes/upgrade.d.ts +6 -0
  59. package/dist/routes/upgrade.js +68 -0
  60. package/dist/routes/upgrade.js.map +1 -0
  61. package/dist/service/commands.js +9 -7
  62. package/dist/service/commands.js.map +1 -1
  63. package/dist/service/generators.js +10 -15
  64. package/dist/service/generators.js.map +1 -1
  65. package/dist/streaming/fmp4Segmenter.d.ts +28 -0
  66. package/dist/streaming/fmp4Segmenter.js +140 -47
  67. package/dist/streaming/fmp4Segmenter.js.map +1 -1
  68. package/dist/streaming/hls.js +3 -1
  69. package/dist/streaming/hls.js.map +1 -1
  70. package/dist/streaming/lifecycle.js +13 -6
  71. package/dist/streaming/lifecycle.js.map +1 -1
  72. package/dist/streaming/mp4Parser.d.ts +19 -10
  73. package/dist/streaming/mp4Parser.js +39 -29
  74. package/dist/streaming/mp4Parser.js.map +1 -1
  75. package/dist/streaming/setup.d.ts +2 -0
  76. package/dist/streaming/setup.js +4 -1
  77. package/dist/streaming/setup.js.map +1 -1
  78. package/dist/types/index.d.ts +10 -7
  79. package/dist/types/index.js.map +1 -1
  80. package/dist/upgrade/commands.d.ts +6 -0
  81. package/dist/upgrade/commands.js +210 -0
  82. package/dist/upgrade/commands.js.map +1 -0
  83. package/dist/upgrade/detection.d.ts +15 -0
  84. package/dist/upgrade/detection.js +75 -0
  85. package/dist/upgrade/detection.js.map +1 -0
  86. package/dist/upgrade/index.d.ts +2 -0
  87. package/dist/upgrade/index.js +7 -0
  88. package/dist/upgrade/index.js.map +1 -0
  89. package/dist/utils/fileLogger.d.ts +2 -1
  90. package/dist/utils/fileLogger.js +10 -8
  91. package/dist/utils/fileLogger.js.map +1 -1
  92. package/dist/utils/logger.js +1 -1
  93. package/dist/utils/m3u.js +1 -7
  94. package/dist/utils/m3u.js.map +1 -1
  95. package/dist/utils/platform.d.ts +8 -2
  96. package/dist/utils/platform.js +26 -6
  97. package/dist/utils/platform.js.map +1 -1
  98. package/dist/utils/version.d.ts +18 -0
  99. package/dist/utils/version.js +3 -3
  100. package/dist/utils/version.js.map +1 -1
  101. package/package.json +6 -6
@@ -1,5 +1,6 @@
1
1
  import { LOG, evaluateWithAbort, formatError, startTimer } from "../utils/index.js";
2
2
  import { getAllStreams, getStreamCount } from "../streaming/registry.js";
3
+ import { getChromeDataDir, getDataDir, getExtensionDir } from "../config/paths.js";
3
4
  import { getEffectivePreset, getPresetViewport } from "../config/presets.js";
4
5
  import { getExtensionPage, getStream, launch } from "puppeteer-stream";
5
6
  import { resizeAndMinimizeWindow, unminimizeWindow } from "./cdp.js";
@@ -9,7 +10,6 @@ import { clearChannelSelectionCaches } from "./channelSelection.js";
9
10
  import { emitSystemStatusChanged } from "../streaming/statusEmitter.js";
10
11
  import { execSync } from "node:child_process";
11
12
  import fs from "node:fs";
12
- import os from "node:os";
13
13
  import path from "node:path";
14
14
  import { launch as puppeteerLaunch } from "puppeteer-core";
15
15
  import { terminateStream } from "../streaming/lifecycle.js";
@@ -20,7 +20,7 @@ const { promises: fsPromises } = fs;
20
20
  * - currentBrowser: The shared browser instance. All streaming sessions use a single Chrome process to avoid the overhead of launching multiple browsers. This is
21
21
  * created on first stream request (or during warmup) and persists until the application shuts down or the browser crashes.
22
22
  *
23
- * - dataDir: The filesystem location for persistent data (Chrome profile, extension files). This is always ~/.prismcast, which is created on startup if it doesn't
23
+ * - dataDir: The filesystem location for persistent data (Chrome profile, extension files). Resolved via config/paths.ts, which is created on startup if it doesn't
24
24
  * exist.
25
25
  *
26
26
  * Stream tracking and ID generation have been moved to streaming/registry.ts for unified stream management across all output types (direct WebM, HLS, etc.).
@@ -37,9 +37,7 @@ let browserLaunchTime = null;
37
37
  // Launch mutex. When a browser launch is in progress, this holds the pending promise so that concurrent callers piggyback on the same launch instead of
38
38
  // starting a second Chrome process. Cleared in a finally block once the launch settles.
39
39
  let browserLaunchPromise = null;
40
- // The data directory stores Chrome's profile data and the streaming extension files. This is always ~/.prismcast, which provides a consistent location for
41
- // user-specific data regardless of how PrismCast is run.
42
- const dataDir = path.join(os.homedir(), ".prismcast");
40
+ // The data directory stores Chrome's profile data and the streaming extension files. Path resolution is centralized in config/paths.ts.
43
41
  // The stale page cleanup interval handle, stored so we can clear it during graceful shutdown. The interval periodically checks for browser pages that are not
44
42
  // associated with active streams and closes them to prevent resource exhaustion.
45
43
  let stalePageCleanupInterval = null;
@@ -181,28 +179,21 @@ export function unregisterManagedPage(page) {
181
179
  function getManagedPageId(page) {
182
180
  return pageToId.get(page);
183
181
  }
184
- /**
185
- * Gets the current data directory path. This is where Chrome profile data and extension files are stored.
186
- * @returns The data directory path.
187
- */
188
- export function getDataDir() {
189
- return dataDir;
190
- }
191
182
  /**
192
183
  * Ensures the data directory exists, creating it if necessary. This should be called during application startup before any operations that depend on the data
193
184
  * directory (like browser launch or extension preparation).
194
185
  *
195
- * The data directory (~/.prismcast) stores:
186
+ * The data directory stores:
196
187
  * - Chrome profile data (cookies, local storage, session state)
197
188
  * - Extension files (when running as a packaged executable)
198
189
  */
199
190
  export async function ensureDataDirectory() {
200
191
  try {
201
- await fsPromises.mkdir(dataDir, { recursive: true });
202
- LOG.debug("browser", "Data directory ready: %s.", dataDir);
192
+ await fsPromises.mkdir(getDataDir(), { recursive: true });
193
+ LOG.debug("browser", "Data directory ready: %s.", getDataDir());
203
194
  }
204
195
  catch (error) {
205
- LOG.error("Failed to create data directory %s: %s.", dataDir, formatError(error));
196
+ LOG.error("Failed to create data directory %s: %s.", getDataDir(), formatError(error));
206
197
  throw error;
207
198
  }
208
199
  }
@@ -226,43 +217,42 @@ export async function ensureDataDirectory() {
226
217
  * find and terminate any Chrome processes whose command line contains our profile directory path, then polls pgrep to verify the processes have actually exited.
227
218
  * After process cleanup, it removes stale lock files (SingletonLock, SingletonCookie, SingletonSocket) and DevToolsActivePort from the profile directory.
228
219
  *
220
+ * The termination strategy escalates from SIGTERM to SIGKILL. SIGTERM is sent first, giving Chrome up to 5 seconds to flush its profile databases (LevelDB,
221
+ * extension state, session storage) and exit cleanly. If Chrome does not exit, SIGKILL is sent as a fallback. This escalation is critical when called from the
222
+ * process exit handler — Chrome may be running normally (e.g., after a capture probe timeout), and an immediate SIGKILL would corrupt its profile databases,
223
+ * poisoning the Docker volume for subsequent container restarts.
224
+ *
229
225
  * The file cleanup is essential for Docker deployments. Container restarts destroy Chrome processes without giving them a chance to release profile locks, but the
230
226
  * lock files persist in the mounted volume. Without removing them, Chrome cannot start in the new container, causing a crash loop.
231
227
  *
232
- * Waiting for exit is critical during service restarts. Without it, the new Chrome can launch while the old one is still releasing its profile lock and
233
- * tabCapture extension state, causing stale capture errors that cascade into startup failures.
234
- *
235
228
  * This is called at startup before launching the browser and after closeBrowser() during shutdown. It's safe to call even when no stale processes or files exist.
236
229
  */
237
230
  export function killStaleChrome() {
238
231
  // Build the profile directory path that would appear in Chrome's command-line arguments.
239
- const profileDir = path.join(dataDir, CONFIG.paths.chromeProfileName);
232
+ const profileDir = getChromeDataDir(CONFIG);
233
+ const POLL_INTERVAL_MS = 200;
240
234
  try {
241
- // Use pkill with -9 -f to forcefully kill Chrome processes matching our profile directory. SIGKILL is used instead of SIGTERM because orphaned Chrome
242
- // processes (from a crashed parent or process.exit without cleanup) may not respond to SIGTERM cleanly. The -f flag matches against the full command line,
243
- // not just the process name. The command is wrapped in quotes to handle paths with spaces.
244
- execSync(["pkill -9 -f \"", profileDir, "\""].join(""));
245
- LOG.debug("browser", "Killed stale Chrome instances using %s.", profileDir);
246
- // Poll until the killed processes have fully exited. pgrep returns exit code 0 when matching processes exist and non-zero when none remain. We poll every
247
- // 200ms for up to 5 seconds. This ensures Chrome has released its profile directory lock and tabCapture extension state before we launch a new instance.
248
- const maxWaitMs = 5000;
249
- const pollIntervalMs = 200;
250
- const deadline = Date.now() + maxWaitMs;
251
- let exited = false;
252
- while (Date.now() < deadline) {
235
+ // Send SIGTERM first to give Chrome a chance to flush its profile databases (LevelDB, extension state, session storage) before exiting. This is critical
236
+ // when called from the process exit handler Chrome may be running normally (e.g., after a capture probe timeout) and SIGKILL would corrupt its profile
237
+ // databases, poisoning the Docker volume for subsequent restarts.
238
+ execSync(["pkill -f \"", profileDir, "\""].join(""));
239
+ LOG.debug("browser", "Sent SIGTERM to Chrome instances using %s.", profileDir);
240
+ // Wait up to 5 seconds for Chrome to flush its databases and exit after SIGTERM. Containerized environments with software rendering and shared CPU may
241
+ // need the full window.
242
+ const TERM_WAIT_MS = 5000;
243
+ if (!waitForChromeExit(profileDir, TERM_WAIT_MS, POLL_INTERVAL_MS)) {
244
+ // SIGTERM didn't work. Escalate to SIGKILL. Orphaned Chrome processes (from a crashed parent or previous container) may not respond to SIGTERM.
245
+ LOG.debug("browser", "Chrome did not exit after SIGTERM. Escalating to SIGKILL.");
253
246
  try {
254
- execSync(["pgrep -f \"", profileDir, "\""].join(""), { stdio: "ignore" });
255
- // Processes still exist. Wait and check again.
256
- execSync(["sleep ", String(pollIntervalMs / 1000)].join(""));
247
+ execSync(["pkill -9 -f \"", profileDir, "\""].join(""));
257
248
  }
258
249
  catch (_error) {
259
- // pgrep returned non-zerono matching processes remain. Chrome has fully exited.
260
- exited = true;
261
- break;
250
+ // No matching processesChrome may have exited between the pgrep check and the pkill.
251
+ }
252
+ const KILL_WAIT_MS = 2000;
253
+ if (!waitForChromeExit(profileDir, KILL_WAIT_MS, POLL_INTERVAL_MS)) {
254
+ LOG.warn("Chrome processes did not exit after %sms of signal escalation. Proceeding anyway.", TERM_WAIT_MS + KILL_WAIT_MS);
262
255
  }
263
- }
264
- if (!exited) {
265
- LOG.warn("Stale Chrome processes did not exit within %sms. Proceeding anyway.", maxWaitMs);
266
256
  }
267
257
  }
268
258
  catch (_error) {
@@ -271,6 +261,29 @@ export function killStaleChrome() {
271
261
  // Remove stale lock and port files left behind by an unclean Chrome exit.
272
262
  cleanStaleProfileFiles(profileDir);
273
263
  }
264
+ /**
265
+ * Polls pgrep until no Chrome processes matching the profile directory remain, or the timeout expires. pgrep returns exit code 0 when matching processes exist
266
+ * and non-zero when none remain.
267
+ * @param profileDir - The Chrome profile directory path to match against process command lines.
268
+ * @param timeoutMs - Maximum time to wait in milliseconds.
269
+ * @param pollIntervalMs - Time between pgrep checks in milliseconds.
270
+ * @returns True if all matching processes exited within the timeout, false otherwise.
271
+ */
272
+ function waitForChromeExit(profileDir, timeoutMs, pollIntervalMs) {
273
+ const deadline = Date.now() + timeoutMs;
274
+ while (Date.now() < deadline) {
275
+ try {
276
+ execSync(["pgrep -f \"", profileDir, "\""].join(""), { stdio: "ignore" });
277
+ // Processes still exist. Wait and check again.
278
+ execSync(["sleep ", String(pollIntervalMs / 1000)].join(""));
279
+ }
280
+ catch (_error) {
281
+ // pgrep returned non-zero — no matching processes remain.
282
+ return true;
283
+ }
284
+ }
285
+ return false;
286
+ }
274
287
  /**
275
288
  * Removes stale Chrome profile lock files and the DevTools port file. Chrome writes these while running and removes them on clean shutdown, but an unclean exit
276
289
  * (container kill, SIGKILL, crash) leaves them behind. Stale lock files prevent Chrome from acquiring the profile, and a stale DevToolsActivePort can confuse the
@@ -425,7 +438,7 @@ export function buildLaunchOptions() {
425
438
  pipe: true,
426
439
  // Persistent user data directory for Chrome profile. This directory stores cookies, local storage, and other session data. By persisting this across
427
440
  // restarts, sites remember login state and don't require re-authentication.
428
- userDataDir: path.join(dataDir, CONFIG.paths.chromeProfileName)
441
+ userDataDir: getChromeDataDir(CONFIG)
429
442
  };
430
443
  }
431
444
  /**
@@ -439,16 +452,11 @@ async function launchWithCustomArgs(opts) {
439
452
  // --load-extension and --disable-extensions-except arguments pointing to node_modules, but these paths don't exist in the packaged executable. We replace
440
453
  // them with paths to our extracted extension files.
441
454
  if (process.pkg) {
442
- const extensionPath = path.join(dataDir, CONFIG.paths.extensionDirName);
455
+ const extensionPath = getExtensionDir(CONFIG);
443
456
  // Remove any existing extension arguments and add our own pointing to the extracted extension.
444
457
  opts.args = (opts.args ?? [])
445
- .filter((arg) => {
446
- return !arg.startsWith("--load-extension=") && !arg.startsWith("--disable-extensions-except=");
447
- })
448
- .concat([
449
- ["--disable-extensions-except=", extensionPath].join(""),
450
- ["--load-extension=", extensionPath].join("")
451
- ]);
458
+ .filter((arg) => !arg.startsWith("--load-extension=") && !arg.startsWith("--disable-extensions-except="))
459
+ .concat(["--disable-extensions-except=" + extensionPath, "--load-extension=" + extensionPath]);
452
460
  }
453
461
  return puppeteerLaunch(opts);
454
462
  }
@@ -736,10 +744,9 @@ export async function getBrowserPages() {
736
744
  * Closes the browser and cleans up resources. This is called during graceful shutdown to ensure Chrome exits cleanly. After this call, the browser reference is
737
745
  * cleared and any subsequent stream requests will launch a fresh browser.
738
746
  *
739
- * The function uses a multi-stage approach to ensure Chrome actually exits:
740
- * 1. Try browser.close() with a 5-second timeout
741
- * 2. If that fails or times out, kill the browser process directly
742
- * 3. As a final fallback, use pkill to terminate any Chrome processes using our profile
747
+ * The function uses a two-stage approach to ensure Chrome actually exits:
748
+ * 1. Try browser.close() with a 5-second timeout (DevTools Protocol graceful close)
749
+ * 2. Run killStaleChrome() to catch anything Stage 1 missed, using SIGTERM→SIGKILL escalation to give Chrome a chance to flush its profile databases
743
750
  */
744
751
  export async function closeBrowser() {
745
752
  // Ensure the flag is set so the disconnect handler knows this is intentional. Normally set earlier by app.ts shutdown(), but set here as a fallback for direct
@@ -754,14 +761,12 @@ export async function closeBrowser() {
754
761
  return;
755
762
  }
756
763
  // Stage 1: Try graceful close with a timeout. We use Promise.race to avoid hanging indefinitely if Chrome is unresponsive.
757
- let closedGracefully = false;
758
764
  if (browserRef.connected) {
759
765
  try {
760
766
  await Promise.race([
761
767
  browserRef.close(),
762
768
  new Promise((_, reject) => setTimeout(() => { reject(new Error("Browser close timed out")); }, 5000))
763
769
  ]);
764
- closedGracefully = true;
765
770
  }
766
771
  catch (error) {
767
772
  const message = formatError(error);
@@ -773,23 +778,8 @@ export async function closeBrowser() {
773
778
  }
774
779
  }
775
780
  }
776
- else {
777
- closedGracefully = true;
778
- }
779
- // Stage 2: If graceful close failed, try to kill the process directly.
780
- if (!closedGracefully) {
781
- try {
782
- const browserProcess = browserRef.process();
783
- if (browserProcess && !browserProcess.killed) {
784
- browserProcess.kill("SIGKILL");
785
- LOG.debug("browser", "Sent SIGKILL to browser process.");
786
- }
787
- }
788
- catch (error) {
789
- LOG.debug("browser", "Browser process kill error: %s.", formatError(error));
790
- }
791
- }
792
- // Stage 3: As a final fallback, use pkill to ensure no Chrome processes using our profile remain.
781
+ // Stage 2: Catch anything Stage 1 missed. If Chrome didn't respond to the DevTools close command (broken WebSocket, hung process), killStaleChrome()
782
+ // sends SIGTERM first to give Chrome a chance to flush its profile databases, then escalates to SIGKILL if needed.
793
783
  killStaleChrome();
794
784
  }
795
785
  /* These functions manage the login mode workflow, allowing users to authenticate with TV providers through the browser. The workflow is:
@@ -1165,8 +1155,8 @@ export async function prepareExtension() {
1165
1155
  return;
1166
1156
  }
1167
1157
  try {
1168
- // The extension files are extracted to ~/.prismcast/extension (the data directory is ensured to exist before this function is called).
1169
- const out = path.join(dataDir, CONFIG.paths.extensionDirName);
1158
+ // The extension files are extracted to the extension directory within the data directory (ensured to exist before this function is called).
1159
+ const out = getExtensionDir(CONFIG);
1170
1160
  // Create the extension directory if it doesn't exist.
1171
1161
  try {
1172
1162
  await fsPromises.mkdir(out, { recursive: true });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,GAAG,EAAE,iBAAiB,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AACvE,OAAO,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AACzE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAG5C,OAAO,EAAE,2BAA2B,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,IAAI,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC3D,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAE5D,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;AAEpC;;;;;;;;;;GAUG;AAEH,+JAA+J;AAC/J,oBAAoB;AACpB,IAAI,cAAc,GAAsB,IAAI,CAAC;AAE7C,kJAAkJ;AAClJ,uDAAuD;AACvD,IAAI,oBAAoB,GAAqB,IAAI,CAAC;AAElD,4JAA4J;AAC5J,uBAAuB;AACvB,IAAI,iBAAiB,GAAqB,IAAI,CAAC;AAE/C,wJAAwJ;AACxJ,wFAAwF;AACxF,IAAI,oBAAoB,GAA+B,IAAI,CAAC;AAE5D,2JAA2J;AAC3J,yDAAyD;AACzD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAAC;AAEtD,8JAA8J;AAC9J,iFAAiF;AACjF,IAAI,wBAAwB,GAA6C,IAAI,CAAC;AAE9E;;;GAGG;AAEH,iEAAiE;AACjE,MAAM,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,iGAAiG;AACjG,MAAM,4BAA4B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEnD,+EAA+E;AAC/E,MAAM,8BAA8B,GAAG,MAAM,CAAC;AAE9C,yJAAyJ;AACzJ,yFAAyF;AACzF,IAAI,iBAAiB,GAA4C,IAAI,CAAC;AAEtE,8DAA8D;AAC9D,IAAI,oBAAoB,GAA6C,IAAI,CAAC;AAE1E,kKAAkK;AAClK,kIAAkI;AAClI,IAAI,0BAA0B,GAAG,KAAK,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAc;IAEhD,0BAA0B,GAAG,KAAK,CAAC;AACrC,CAAC;AAED;;;;;;GAMG;AAEH,8FAA8F;AAC9F,IAAI,oBAAoB,GAAG,CAAC,CAAC;AAE7B,6IAA6I;AAC7I,MAAM,QAAQ,GAAG,IAAI,OAAO,EAAgB,CAAC;AAE7C,kKAAkK;AAClK,qCAAqC;AACrC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;AAEzC,gKAAgK;AAChK,iKAAiK;AACjK,MAAM,qBAAqB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAExD;;;;;;;;GAQG;AAEH,0CAA0C;AAC1C,IAAI,eAAe,GAAG,KAAK,CAAC;AAE5B,yFAAyF;AACzF,IAAI,SAAS,GAAmB,IAAI,CAAC;AAErC,6DAA6D;AAC7D,IAAI,QAAQ,GAAqB,IAAI,CAAC;AAEtC,wFAAwF;AACxF,IAAI,cAAc,GAAqB,IAAI,CAAC;AAE5C,8DAA8D;AAC9D,IAAI,kBAAkB,GAA4C,IAAI,CAAC;AAEvE,uCAAuC;AACvC,MAAM,gBAAgB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAiBxC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAE3C,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,CAAC;QAEH,IAAG,cAAc,EAAE,SAAS,EAAE,CAAC;YAE7B,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;YAE3C,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC;QAC3B,CAAC;IACH,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,oCAAoC;IACtC,CAAC;IAED,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAEvC,MAAM,MAAM,GAAiB;QAE3B,OAAO,EAAE;YAEP,SAAS,EAAE,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,SAAS;YACvD,SAAS;SACV;QACD,MAAM,EAAE;YAEN,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,EAAE,QAAQ,CAAC,GAAG;SAClB;QACD,OAAO,EAAE;YAEP,MAAM,EAAE,cAAc,EAAE;YACxB,KAAK,EAAE,MAAM,CAAC,SAAS,CAAC,oBAAoB;SAC7C;QACD,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE;KACzB,CAAC;IAEF,uBAAuB,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAU;IAE5C,sCAAsC;IACtC,MAAM,MAAM,GAAG,CAAE,OAAO,EAAE,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAEpE,yCAAyC;IACzC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAE3B,2BAA2B;IAC3B,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAAU;IAE9C,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAElC,IAAG,MAAM,EAAE,CAAC;QAEV,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAE9B,oFAAoF;QACpF,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAErC,wHAAwH;IAC1H,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,IAAU;IAElC,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,UAAU;IAExB,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB;IAEvC,IAAI,CAAC;QAEH,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAErD,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,2BAA2B,EAAE,OAAO,CAAC,CAAC;IAC7D,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,yCAAyC,EAAE,OAAO,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAElF,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,eAAe;IAE7B,yFAAyF;IACzF,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAEtE,IAAI,CAAC;QAEH,sJAAsJ;QACtJ,2JAA2J;QAC3J,2FAA2F;QAC3F,QAAQ,CAAC,CAAE,gBAAgB,EAAE,UAAU,EAAE,IAAI,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAE1D,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,yCAAyC,EAAE,UAAU,CAAC,CAAC;QAE5E,0JAA0J;QAC1J,yJAAyJ;QACzJ,MAAM,SAAS,GAAG,IAAI,CAAC;QACvB,MAAM,cAAc,GAAG,GAAG,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QACxC,IAAI,MAAM,GAAG,KAAK,CAAC;QAEnB,OAAM,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,EAAE,CAAC;YAE5B,IAAI,CAAC;gBAEH,QAAQ,CAAC,CAAE,aAAa,EAAE,UAAU,EAAE,IAAI,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;gBAE5E,+CAA+C;gBAC/C,QAAQ,CAAC,CAAE,QAAQ,EAAE,MAAM,CAAC,cAAc,GAAG,IAAI,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,CAAC;YAAC,OAAM,MAAM,EAAE,CAAC;gBAEf,mFAAmF;gBACnF,MAAM,GAAG,IAAI,CAAC;gBAEd,MAAM;YACR,CAAC;QACH,CAAC;QAED,IAAG,CAAC,MAAM,EAAE,CAAC;YAEX,GAAG,CAAC,IAAI,CAAC,qEAAqE,EAAE,SAAS,CAAC,CAAC;QAC7F,CAAC;IACH,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,qJAAqJ;IACvJ,CAAC;IAED,0EAA0E;IAC1E,sBAAsB,CAAC,UAAU,CAAC,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,SAAS,sBAAsB,CAAC,UAAkB;IAEhD,4JAA4J;IAC5J,2JAA2J;IAC3J,mEAAmE;IACnE,MAAM,UAAU,GAAG,CAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,iBAAiB,CAAE,CAAC;IAEnG,KAAI,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAE7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAE7C,IAAI,CAAC;YAEH,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YAExB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,iCAAiC,EAAE,IAAI,CAAC,CAAC;QAChE,CAAC;QAAC,OAAM,KAAc,EAAE,CAAC;YAEvB,oJAAoJ;YACpJ,oEAAoE;YACpE,IAAI,KAA+B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAEtD,GAAG,CAAC,IAAI,CAAC,6CAA6C,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACpF,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB;IAE/B,8HAA8H;IAC9H,IAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjC,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;IACvC,CAAC;IAED,oEAAoE;IACpE,MAAM,KAAK,GAAG;QAEZ,yGAAyG;QACzG,8DAA8D;QAE9D,gGAAgG;QAChG,wBAAwB;QACxB,+BAA+B;QAE/B,mGAAmG;QACnG,4DAA4D;QAC5D,kEAAkE;KACnE,CAAC;IAEF,uDAAuD;IACvD,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC;IAExC,IAAG,KAAK,EAAE,CAAC;QAET,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;AACxF,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO;QAEL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;WAiCG;QACH,IAAI,EAAE;YAEJ,kCAAkC;YAClC,4CAA4C;YAC5C,oCAAoC;YACpC,iCAAiC;YACjC,uCAAuC;YACvC,0CAA0C;YAC1C,+CAA+C;YAC/C,yBAAyB;YACzB,6BAA6B;YAC7B,mBAAmB;YACnB,gBAAgB;YAChB,CAAE,gBAAgB,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SACtH;QAED,sJAAsJ;QACtJ,iEAAiE;QACjE,eAAe,EAAE,IAAI;QAErB,mFAAmF;QACnF,cAAc,EAAE,iBAAiB,EAAE;QAEnC,yJAAyJ;QACzJ,4EAA4E;QAC5E,QAAQ,EAAE,KAAK;QAEf;;;;;;;;;;;;;;;;WAgBG;QACH,iBAAiB,EAAE;YAEjB,sDAAsD;YACtD,4BAA4B;YAC5B,wBAAwB;YACxB,sBAAsB;YACtB,qBAAqB;YACrB,uCAAuC;YACvC,cAAc;SACf;QAED,uJAAuJ;QACvJ,iEAAiE;QACjE,IAAI,EAAE,IAAI;QAEV,qJAAqJ;QACrJ,4EAA4E;QAC5E,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,iBAAiB,CAAC;KAChE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,oBAAoB,CAAC,IAAmB;IAErD,2JAA2J;IAC3J,0JAA0J;IAC1J,oDAAoD;IACpD,IAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAEf,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAExE,+FAA+F;QAC/F,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;aAC1B,MAAM,CAAC,CAAC,GAAW,EAAW,EAAE;YAE/B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,8BAA8B,CAAC,CAAC;QACjG,CAAC,CAAC;aACD,MAAM,CAAC;YAEN,CAAE,8BAA8B,EAAE,aAAa,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1D,CAAE,mBAAmB,EAAE,aAAa,CAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SAChD,CAAC,CAAC;IACP,CAAC;IAED,OAAO,eAAe,CAAC,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,uBAAuB,CAAC,OAAgB;IAErD,IAAI,QAAQ,GAAmB,IAAI,CAAC;IACpC,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,CAAC;QAEH,gFAAgF;QAChF,MAAM,aAAa,GAAG,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC;QAC5C,IAAI,UAAU,GAAmB,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC;QAElF,IAAG,CAAC,UAAU,EAAE,CAAC;YAEf,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;YACnC,aAAa,GAAG,IAAI,CAAC;YACrB,UAAU,GAAG,QAAQ,CAAC;QACxB,CAAC;QAED,gEAAgE;QAChE,MAAM,UAAU,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,GAA2F,EAAE;YAElJ,OAAO;gBAEL,kEAAkE;gBAClE,WAAW,EAAE,MAAM,CAAC,WAAW;gBAC/B,UAAU,EAAE,MAAM,CAAC,UAAU;gBAE7B,2DAA2D;gBAC3D,YAAY,EAAE,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW;gBACrD,WAAW,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU;aACnD,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,2EAA2E;QAC3E,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,GAAG,UAAU,CAAC,WAAW,CAAC;QAChE,MAAM,SAAS,GAAG,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,YAAY,CAAC;QAEnE,oEAAoE;QACpE,gBAAgB,CAAC,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,CAAC,CAAC;QAClE,uBAAuB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE7C,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,4FAA4F,EAC/G,UAAU,CAAC,UAAU,EAAE,UAAU,CAAC,WAAW,EAC7C,UAAU,CAAC,WAAW,EAAE,UAAU,CAAC,YAAY,EAC/C,QAAQ,EAAE,SAAS,CAAC,CAAC;QAEvB,yEAAyE;QACzE,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAEhD,IAAG,YAAY,CAAC,QAAQ,IAAI,YAAY,CAAC,WAAW,EAAE,CAAC;YAErD,GAAG,CAAC,IAAI,CAAC,gFAAgF,EACvF,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,WAAW,CAAC,MAAM,EAC/D,YAAY,CAAC,gBAAgB,CAAC,EAAE,EAAE,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,IAAI,CAAC,yEAAyE,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1G,CAAC;YAAS,CAAC;QAET,6CAA6C;QAC7C,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,IAAI,CAAC;gBAEH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,uBAAuB;YACzB,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,SAAS,uBAAuB;IAE9B,wIAAwI;IACxI,cAAc,GAAG,IAAI,CAAC;IACtB,iBAAiB,GAAG,IAAI,CAAC;IACzB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,4EAA4E;IAC5E,IAAG,iBAAiB,EAAE,CAAC;QAErB,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAChC,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC;IAED,sIAAsI;IACtI,2BAA2B,EAAE,CAAC;IAE9B,4JAA4J;IAC5J,kCAAkC;IAClC,IAAG,eAAe,EAAE,CAAC;QAEnB,IAAG,kBAAkB,EAAE,CAAC;YAEtB,YAAY,CAAC,kBAAkB,CAAC,CAAC;YACjC,kBAAkB,GAAG,IAAI,CAAC;QAC5B,CAAC;QAED,eAAe,GAAG,KAAK,CAAC;QACxB,SAAS,GAAG,IAAI,CAAC;QACjB,QAAQ,GAAG,IAAI,CAAC;QAChB,cAAc,GAAG,IAAI,CAAC;QAEtB,IAAG,CAAC,0BAA0B,EAAE,CAAC;YAE/B,GAAG,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;QAC1D,CAAC;IACH,CAAC;IAED,2IAA2I;IAC3I,IAAG,CAAC,0BAA0B,EAAE,CAAC;QAE/B,GAAG,CAAC,KAAK,CAAC,2EAA2E,CAAC,CAAC;IACzF,CAAC;IAED,iKAAiK;IACjK,2IAA2I;IAC3I,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAEhC,KAAI,MAAM,UAAU,IAAI,OAAO,EAAE,CAAC;QAEhC,eAAe,CAAC,UAAU,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,oBAAoB,CAAC,CAAC;IACjF,CAAC;IAED,oIAAoI;IACpI,IAAG,CAAC,0BAA0B,EAAE,CAAC;QAE/B,KAAK,uBAAuB,EAAE,CAAC;IACjC,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IAErC,uJAAuJ;IACvJ,eAAe;IACf,IAAG,cAAc,EAAE,SAAS,EAAE,CAAC;QAE7B,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,0JAA0J;IAC1J,kHAAkH;IAClH,IAAG,oBAAoB,EAAE,CAAC;QAExB,OAAO,oBAAoB,CAAC;IAC9B,CAAC;IAED,yGAAyG;IACzG,oBAAoB,GAAG,aAAa,EAAE,CAAC;IAEvC,IAAI,CAAC;QAEH,OAAO,MAAM,oBAAoB,CAAC;IACpC,CAAC;YAAS,CAAC;QAET,oBAAoB,GAAG,IAAI,CAAC;IAC9B,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,aAAa;IAE1B,MAAM,cAAc,GAAG,UAAU,EAAE,CAAC;IAEpC,yHAAyH;IACzH,IAAI,CAAC;QAEH,MAAM,OAAO,GAAG,kBAAkB,EAAE,CAAC;QAErC,uJAAuJ;QACvJ,+CAA+C;QAC/C,cAAc,GAAG,MAAM,MAAM,CAAC,EAAE,MAAM,EAAE,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;QAEzE,oIAAoI;QACpI,cAAc,CAAC,EAAE,CAAC,cAAc,EAAE,uBAAuB,CAAC,CAAC;QAE3D,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,iCAAiC,EAAE,cAAc,EAAE,CAAC,CAAC;QAEjF,0JAA0J;QAC1J,8JAA8J;QAC9J,iHAAiH;QACjH,IAAI,CAAC;YAEH,MAAM,aAAa,GAAG,MAAM,gBAAgB,CAAC,cAAc,CAAC,CAAC;YAE7D,MAAM,aAAa,CAAC,eAAe,CAAC,uCAAuC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;QACxH,CAAC;QAAC,MAAM,CAAC;YAEP,oIAAoI;YACpI,2GAA2G;YAC3G,GAAG,CAAC,IAAI,CAAC,uFAAuF,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAChI,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,gCAAgC,EAAE,cAAc,EAAE,CAAC,CAAC;QAEhF,sJAAsJ;QACtJ,4BAA4B;QAC5B,MAAM,uBAAuB,CAAC,cAAc,CAAC,CAAC;QAE9C,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,qCAAqC,EAAE,cAAc,EAAE,CAAC,CAAC;QAErF,yJAAyJ;QACzJ,iCAAiC;QACjC,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QAErD,iBAAiB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,oBAAoB,GAAG,aAAa,CAAC;QAErC,GAAG,CAAC,IAAI,CAAC,mBAAmB,EAAE,aAAa,CAAC,CAAC;QAE7C,GAAG,CAAC,KAAK,CAAC,gBAAgB,EAAE,6BAA6B,EAAE,cAAc,EAAE,CAAC,CAAC;QAE7E,iDAAiD;QACjD,MAAM,uBAAuB,EAAE,CAAC;IAClC,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,+BAA+B,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAE/D,8HAA8H;QAC9H,cAAc,GAAG,IAAI,CAAC;QACtB,iBAAiB,GAAG,IAAI,CAAC;QACzB,oBAAoB,GAAG,IAAI,CAAC;QAE5B,MAAM,KAAK,CAAC;IACd,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB;IAE9B,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB;IAEhC,OAAO,CAAC,CAAC,cAAc,IAAI,cAAc,CAAC,SAAS,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB;IAEzC,yDAAyD;IACzD,IAAG,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC;QAE9B,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,GAAmB,IAAI,CAAC;IACpC,IAAI,aAAa,GAAG,KAAK,CAAC;IAE1B,IAAI,CAAC;QAEH,qJAAqJ;QACrJ,MAAM,aAAa,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QACnD,IAAI,UAAU,GAAmB,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,IAAI,IAAI,CAAC;QAElF,sHAAsH;QACtH,IAAG,CAAC,UAAU,EAAE,CAAC;YAEf,QAAQ,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;YAC1C,aAAa,GAAG,IAAI,CAAC;YAErB,2DAA2D;YAC3D,mBAAmB,CAAC,QAAQ,CAAC,CAAC;YAC9B,UAAU,GAAG,QAAQ,CAAC;QACxB,CAAC;QAED,uJAAuJ;QACvJ,uCAAuC;QACvC,MAAM,uBAAuB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAEhD,iDAAiD;QACjD,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAEhC,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,uEAAuE;QACvE,IAAG,aAAa,IAAI,QAAQ,EAAE,CAAC;YAE7B,qBAAqB,CAAC,QAAQ,CAAC,CAAC;YAEhC,IAAI,CAAC;gBAEH,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;YACzB,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,6CAA6C;YAC/C,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,mDAAmD,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe;IAEnC,yDAAyD;IACzD,IAAG,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC;QAE9B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC;QAEH,OAAO,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;IACtC,CAAC;IAAC,OAAM,MAAM,EAAE,CAAC;QAEf,iGAAiG;QACjG,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAEhC,+JAA+J;IAC/J,2BAA2B;IAC3B,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAE1B,MAAM,UAAU,GAAG,cAAc,CAAC;IAElC,+GAA+G;IAC/G,cAAc,GAAG,IAAI,CAAC;IACtB,iBAAiB,GAAG,IAAI,CAAC;IACzB,oBAAoB,GAAG,IAAI,CAAC;IAE5B,IAAG,CAAC,UAAU,EAAE,CAAC;QAEf,OAAO;IACT,CAAC;IAED,2HAA2H;IAC3H,IAAI,gBAAgB,GAAG,KAAK,CAAC;IAE7B,IAAG,UAAU,CAAC,SAAS,EAAE,CAAC;QAExB,IAAI,CAAC;YAEH,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjB,UAAU,CAAC,KAAK,EAAE;gBAClB,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;aACtG,CAAC,CAAC;YAEH,gBAAgB,GAAG,IAAI,CAAC;QAC1B,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;YAEnC,IAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;gBAEjC,GAAG,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAC;YAC3E,CAAC;iBAAM,CAAC;gBAEN,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,0BAA0B,EAAE,OAAO,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QAEN,gBAAgB,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED,uEAAuE;IACvE,IAAG,CAAC,gBAAgB,EAAE,CAAC;QAErB,IAAI,CAAC;YAEH,MAAM,cAAc,GAAG,UAAU,CAAC,OAAO,EAAE,CAAC;YAE5C,IAAG,cAAc,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC;gBAE5C,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC/B,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,kCAAkC,CAAC,CAAC;YAC3D,CAAC;QACH,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,iCAAiC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAC9E,CAAC;IACH,CAAC;IAED,kGAAkG;IAClG,eAAe,EAAE,CAAC;AACpB,CAAC;AAED;;;;;;;;;GASG;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW;IAE9C,yCAAyC;IACzC,IAAG,eAAe,EAAE,CAAC;QAEnB,OAAO,EAAE,KAAK,EAAE,+BAA+B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACpE,CAAC;IAED,+BAA+B;IAC/B,IAAG,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC;QAE9B,OAAO,EAAE,KAAK,EAAE,2BAA2B,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IAChE,CAAC;IAED,IAAI,CAAC;QAEH,uHAAuH;QACvH,SAAS,GAAG,MAAM,cAAc,CAAC,OAAO,EAAE,CAAC;QAE3C,uHAAuH;QACvH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAEzB,wDAAwD;YACxD,IAAG,eAAe,IAAI,SAAS,EAAE,CAAC;gBAEhC,GAAG,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;gBAErD,+EAA+E;gBAC/E,KAAK,YAAY,EAAE,CAAC;YACtB,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,6BAA6B;QAC7B,MAAM,SAAS,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAE7D,2EAA2E;QAC3E,MAAM,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAElC,mBAAmB;QACnB,eAAe,GAAG,IAAI,CAAC;QACvB,QAAQ,GAAG,GAAG,CAAC;QACf,cAAc,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE5B,gCAAgC;QAChC,kBAAkB,GAAG,UAAU,CAAC,GAAG,EAAE;YAEnC,GAAG,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;YAEtE,KAAK,YAAY,EAAE,CAAC;QACtB,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAErB,GAAG,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;QAE5C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IAC3B,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,uBAAuB;QACvB,IAAG,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;YAEtC,IAAI,CAAC;gBAEH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;YAC1B,CAAC;YAAC,OAAM,WAAW,EAAE,CAAC;gBAEpB,uBAAuB;YACzB,CAAC;QACH,CAAC;QAED,SAAS,GAAG,IAAI,CAAC;QAEjB,OAAO,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;IACvD,CAAC;AACH,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAEhC,4CAA4C;IAC5C,IAAG,kBAAkB,EAAE,CAAC;QAEtB,YAAY,CAAC,kBAAkB,CAAC,CAAC;QACjC,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,2CAA2C;IAC3C,IAAG,SAAS,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,CAAC;QAEtC,IAAI,CAAC;YAEH,MAAM,SAAS,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC;QAAC,OAAM,MAAM,EAAE,CAAC;YAEf,+DAA+D;QACjE,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,SAAS,GAAG,eAAe,CAAC;IAElC,eAAe,GAAG,KAAK,CAAC;IACxB,SAAS,GAAG,IAAI,CAAC;IACjB,QAAQ,GAAG,IAAI,CAAC;IAChB,cAAc,GAAG,IAAI,CAAC;IAEtB,kCAAkC;IAClC,IAAG,SAAS,IAAI,cAAc,EAAE,SAAS,EAAE,CAAC;QAE1C,MAAM,qBAAqB,EAAE,CAAC;IAChC,CAAC;IAED,IAAG,SAAS,EAAE,CAAC;QAEb,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAE/B,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc;IAE5B,OAAO;QAEL,MAAM,EAAE,eAAe;QACvB,SAAS,EAAE,cAAc;QACzB,GAAG,EAAE,QAAQ;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AAEH;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IAErC,yDAAyD;IACzD,IAAG,CAAC,cAAc,EAAE,SAAS,EAAE,CAAC;QAE9B,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QAEH,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,CAAC;QAE3C,2GAA2G;QAC3G,IAAG,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YAErB,OAAO;QACT,CAAC;QAED,wEAAwE;QACxE,MAAM,aAAa,GAAG,IAAI,GAAG,EAAU,CAAC;QAExC,KAAI,MAAM,UAAU,IAAI,aAAa,EAAE,EAAE,CAAC;YAExC,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAEjD,IAAG,MAAM,EAAE,CAAC;gBAEV,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAC5B,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAEvB,MAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC;QAEzD,mFAAmF;QACnF,wDAAwD;QACxD,gDAAgD;QAChD,uDAAuD;QACvD,MAAM,cAAc,GAAqC,EAAE,CAAC;QAE5D,iHAAiH;QACjH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE5C,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAExB,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;YAEtC,qFAAqF;YACrF,IAAG,CAAC,MAAM,EAAE,CAAC;gBAEX,SAAS;YACX,CAAC;YAED,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAE9B,6CAA6C;YAC7C,IAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAE7B,0GAA0G;gBAC1G,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,SAAS;YACX,CAAC;YAED,2EAA2E;YAC3E,IAAG,CAAC,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;gBAEtC,qBAAqB,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;gBAEvC,kDAAkD;gBAClD,SAAS;YACX,CAAC;YAED,yCAAyC;YACzC,MAAM,cAAc,GAAG,qBAAqB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YAEhE,IAAG,CAAC,GAAG,GAAG,cAAc,CAAC,GAAG,WAAW,EAAE,CAAC;gBAExC,kEAAkE;gBAClE,SAAS;YACX,CAAC;YAED,2FAA2F;YAC3F,cAAc,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QACxC,CAAC;QAED,wJAAwJ;QACxJ,KAAI,MAAM,SAAS,IAAI,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC;YAEpD,IAAG,CAAC,iBAAiB,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBAErC,qBAAqB,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QAED,oFAAoF;QACpF,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QAEtE,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;QAEzD,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,KAAI,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,YAAY,EAAE,CAAC;YAE3C,IAAI,CAAC;gBAEH,+EAA+E;gBAC/E,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAE9B,qBAAqB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAErC,4CAA4C;gBAC5C,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;gBAEnB,WAAW,EAAE,CAAC;YAChB,CAAC;YAAC,OAAM,MAAM,EAAE,CAAC;gBAEf,kHAAkH;YACpH,CAAC;QACH,CAAC;QAED,sFAAsF;QACtF,IAAG,WAAW,GAAG,CAAC,EAAE,CAAC;YAEnB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,8BAA8B,EAAE,WAAW,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,+EAA+E;QAC/E,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,gCAAgC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7E,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IAEnC,wBAAwB,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,CAAC;AACxH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB;IAElC,IAAG,wBAAwB,EAAE,CAAC;QAE5B,aAAa,CAAC,wBAAwB,CAAC,CAAC;QAExC,wBAAwB,GAAG,IAAI,CAAC;IAClC,CAAC;AACH,CAAC;AAED;;;GAGG;AAEH;;;;GAIG;AACH,SAAS,mBAAmB;IAE1B,8FAA8F;IAC9F,IAAG,0BAA0B,IAAI,eAAe,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,SAAS,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEvH,OAAO;IACT,CAAC;IAED,wDAAwD;IACxD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC;IAE3C,IAAG,GAAG,GAAG,eAAe,EAAE,CAAC;QAEzB,OAAO;IACT,CAAC;IAED,0IAA0I;IAC1I,IAAG,cAAc,EAAE,GAAG,CAAC,EAAE,CAAC;QAExB,IAAG,iBAAiB,EAAE,CAAC;YAErB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,8DAA8D,CAAC,CAAC;YAErF,YAAY,CAAC,iBAAiB,CAAC,CAAC;YAChC,iBAAiB,GAAG,IAAI,CAAC;QAC3B,CAAC;QAED,OAAO;IACT,CAAC;IAED,wGAAwG;IACxG,IAAG,CAAC,iBAAiB,EAAE,CAAC;QAEtB,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,sHAAsH,EACzI,IAAI,CAAC,KAAK,CAAC,4BAA4B,GAAG,KAAK,CAAC,CAAC,CAAC;QAEpD,iBAAiB,GAAG,UAAU,CAAC,GAAG,EAAE;YAElC,KAAK,qBAAqB,EAAE,CAAC;QAC/B,CAAC,EAAE,4BAA4B,CAAC,CAAC;IACnC,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,qBAAqB;IAElC,0BAA0B;IAC1B,iBAAiB,GAAG,IAAI,CAAC;IAEzB,0JAA0J;IAC1J,+DAA+D;IAC/D,IAAG,0BAA0B,IAAI,eAAe,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,SAAS,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEjJ,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,wDAAwD,CAAC,CAAC;QAE/E,OAAO;IACT,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,iBAAiB,CAAC;IAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;IAEpD,GAAG,CAAC,IAAI,CAAC,iEAAiE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAE5F,IAAI,CAAC;QAEH,4GAA4G;QAC5G,MAAM,YAAY,EAAE,CAAC;QAErB,yFAAyF;QACzF,mBAAmB,CAAC,KAAK,CAAC,CAAC;QAE3B,8EAA8E;QAC9E,MAAM,iBAAiB,EAAE,CAAC;QAE1B,mEAAmE;QACnE,MAAM,qBAAqB,EAAE,CAAC;QAE9B,GAAG,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;IACjE,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,6BAA6B,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAE7D,kHAAkH;QAClH,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,2BAA2B;IAEzC,oBAAoB,GAAG,WAAW,CAAC,mBAAmB,EAAE,8BAA8B,CAAC,CAAC;AAC1F,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,0BAA0B;IAExC,IAAG,oBAAoB,EAAE,CAAC;QAExB,aAAa,CAAC,oBAAoB,CAAC,CAAC;QACpC,oBAAoB,GAAG,IAAI,CAAC;IAC9B,CAAC;IAED,IAAG,iBAAiB,EAAE,CAAC;QAErB,YAAY,CAAC,iBAAiB,CAAC,CAAC;QAChC,iBAAiB,GAAG,IAAI,CAAC;IAC3B,CAAC;AACH,CAAC;AAED;;;;;;;;;;GAUG;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IAEpC,qDAAqD;IACrD,IAAG,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAEhB,OAAO;IACT,CAAC;IAED,IAAI,CAAC;QAEH,uIAAuI;QACvI,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QAE9D,sDAAsD;QACtD,IAAI,CAAC;YAEH,MAAM,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;QAAC,OAAM,KAAK,EAAE,CAAC;YAEd,GAAG,CAAC,KAAK,CAAC,2CAA2C,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YAE3E,MAAM,KAAK,CAAC;QACd,CAAC;QAED,kHAAkH;QAClH,MAAM,KAAK,GAAG,CAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,YAAY,CAAE,CAAC;QAEjF,KAAI,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YAExB,IAAI,CAAC;gBAEH,iJAAiJ;gBACjJ,8EAA8E;gBAC9E,4CAA4C;gBAC5C,MAAM,UAAU,CAAC,QAAQ,CACvB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,IAAI,CAAC,EAChG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CACrB,CAAC;YACJ,CAAC;YAAC,OAAM,KAAK,EAAE,CAAC;gBAEd,GAAG,CAAC,KAAK,CAAC,uCAAuC,EAAE,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBAE7E,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,GAAG,CAAC,KAAK,CAAC,SAAS,EAAE,wCAAwC,CAAC,CAAC;IACjE,CAAC;IAAC,OAAM,KAAK,EAAE,CAAC;QAEd,GAAG,CAAC,KAAK,CAAC,mCAAmC,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAEnE,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,wJAAwJ;AACxJ,OAAO,EAAE,SAAS,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"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"}