@hyperframes/engine 0.7.60 → 0.7.62

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 (66) hide show
  1. package/README.md +3 -4
  2. package/dist/config.d.ts +53 -0
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +208 -16
  5. package/dist/config.js.map +1 -1
  6. package/dist/index.d.ts +4 -2
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +4 -2
  9. package/dist/index.js.map +1 -1
  10. package/dist/services/audioMixer.d.ts.map +1 -1
  11. package/dist/services/audioMixer.js +19 -3
  12. package/dist/services/audioMixer.js.map +1 -1
  13. package/dist/services/browserLeasePool.d.ts +48 -0
  14. package/dist/services/browserLeasePool.d.ts.map +1 -0
  15. package/dist/services/browserLeasePool.js +210 -0
  16. package/dist/services/browserLeasePool.js.map +1 -0
  17. package/dist/services/browserManager.d.ts +6 -7
  18. package/dist/services/browserManager.d.ts.map +1 -1
  19. package/dist/services/browserManager.js +122 -177
  20. package/dist/services/browserManager.js.map +1 -1
  21. package/dist/services/captureFailure.d.ts +27 -0
  22. package/dist/services/captureFailure.d.ts.map +1 -0
  23. package/dist/services/captureFailure.js +134 -0
  24. package/dist/services/captureFailure.js.map +1 -0
  25. package/dist/services/chunkEncoder.d.ts.map +1 -1
  26. package/dist/services/chunkEncoder.js +45 -134
  27. package/dist/services/chunkEncoder.js.map +1 -1
  28. package/dist/services/frameCapture.d.ts +14 -3
  29. package/dist/services/frameCapture.d.ts.map +1 -1
  30. package/dist/services/frameCapture.js +100 -103
  31. package/dist/services/frameCapture.js.map +1 -1
  32. package/dist/services/parallelCoordinator.d.ts +2 -0
  33. package/dist/services/parallelCoordinator.d.ts.map +1 -1
  34. package/dist/services/parallelCoordinator.js +37 -6
  35. package/dist/services/parallelCoordinator.js.map +1 -1
  36. package/dist/services/screenshotService.d.ts +16 -0
  37. package/dist/services/screenshotService.d.ts.map +1 -1
  38. package/dist/services/screenshotService.js +20 -0
  39. package/dist/services/screenshotService.js.map +1 -1
  40. package/dist/services/streamingEncoder.d.ts.map +1 -1
  41. package/dist/services/streamingEncoder.js +23 -58
  42. package/dist/services/streamingEncoder.js.map +1 -1
  43. package/dist/services/videoFrameExtractor.d.ts.map +1 -1
  44. package/dist/services/videoFrameExtractor.js +39 -71
  45. package/dist/services/videoFrameExtractor.js.map +1 -1
  46. package/dist/utils/ffmpegBinaries.d.ts +2 -2
  47. package/dist/utils/ffmpegBinaries.d.ts.map +1 -1
  48. package/dist/utils/ffmpegBinaries.js +8 -82
  49. package/dist/utils/ffmpegBinaries.js.map +1 -1
  50. package/dist/utils/ffprobe.d.ts +3 -1
  51. package/dist/utils/ffprobe.d.ts.map +1 -1
  52. package/dist/utils/ffprobe.js +35 -42
  53. package/dist/utils/ffprobe.js.map +1 -1
  54. package/dist/utils/gpuEncoder.d.ts.map +1 -1
  55. package/dist/utils/gpuEncoder.js +32 -52
  56. package/dist/utils/gpuEncoder.js.map +1 -1
  57. package/dist/utils/managedChildProcess.d.ts +50 -0
  58. package/dist/utils/managedChildProcess.d.ts.map +1 -0
  59. package/dist/utils/managedChildProcess.js +148 -0
  60. package/dist/utils/managedChildProcess.js.map +1 -0
  61. package/dist/utils/processTracker.js +1 -1
  62. package/dist/utils/runFfmpeg.d.ts +3 -0
  63. package/dist/utils/runFfmpeg.d.ts.map +1 -1
  64. package/dist/utils/runFfmpeg.js +16 -50
  65. package/dist/utils/runFfmpeg.js.map +1 -1
  66. package/package.json +3 -2
@@ -10,6 +10,8 @@ import { join } from "path";
10
10
  import { homedir } from "os";
11
11
  import { DEFAULT_CONFIG } from "../config.js";
12
12
  import { getSystemTotalMb, LOW_MEMORY_TOTAL_MB_THRESHOLD } from "./systemMemory.js";
13
+ import { BrowserLeasePool, } from "./browserLeasePool.js";
14
+ export { BrowserLeasePool } from "./browserLeasePool.js";
13
15
  let _puppeteer;
14
16
  function isSoftwareWebGlRenderer(rendererInfo) {
15
17
  const renderer = rendererInfo.trim().toLowerCase();
@@ -76,28 +78,33 @@ async function probeHardwareWebGlInfo(ppt, options) {
76
78
  await probeBrowser?.close().catch(() => { });
77
79
  }
78
80
  }
79
- /**
80
- * Resolve chrome-headless-shell binary for deterministic BeginFrame rendering.
81
- * Checks config.chromePath, then PRODUCER_HEADLESS_SHELL_PATH env var,
82
- * then scans Puppeteer's managed cache at ~/.cache/puppeteer/chrome-headless-shell/.
83
- */
84
- export function resolveHeadlessShellPath(config) {
85
- if (config?.chromePath) {
86
- return config.chromePath;
87
- }
88
- if (process.env.PRODUCER_HEADLESS_SHELL_PATH) {
89
- const envPath = process.env.PRODUCER_HEADLESS_SHELL_PATH;
90
- if (!existsSync(envPath)) {
91
- throw new Error(`[BrowserManager] Chrome binary not found at PRODUCER_HEADLESS_SHELL_PATH="${envPath}". ` +
92
- "Run `hyperframes browser ensure` to re-download.");
81
+ function compareBrowserVersionsDescending(left, right) {
82
+ const parse = (value) => {
83
+ const version = value.slice(value.indexOf("-") + 1);
84
+ const segments = [];
85
+ for (const segment of version.split(".")) {
86
+ const parsed = Number.parseInt(segment, 10);
87
+ if (!Number.isFinite(parsed))
88
+ break;
89
+ segments.push(parsed);
93
90
  }
94
- return envPath;
95
- }
96
- const baseDir = join(homedir(), ".cache", "puppeteer", "chrome-headless-shell");
91
+ return segments;
92
+ };
93
+ const leftSegments = parse(left);
94
+ const rightSegments = parse(right);
95
+ const length = Math.max(leftSegments.length, rightSegments.length);
96
+ for (let index = 0; index < length; index += 1) {
97
+ const difference = (rightSegments[index] ?? 0) - (leftSegments[index] ?? 0);
98
+ if (difference !== 0)
99
+ return difference;
100
+ }
101
+ return 0;
102
+ }
103
+ function findCachedHeadlessShell(baseDir) {
97
104
  if (!existsSync(baseDir))
98
105
  return undefined;
99
106
  try {
100
- const versions = readdirSync(baseDir).sort().reverse(); // newest first
107
+ const versions = readdirSync(baseDir).sort(compareBrowserVersionsDescending);
101
108
  for (const version of versions) {
102
109
  const candidates = [
103
110
  join(baseDir, version, "chrome-headless-shell-linux64", "chrome-headless-shell"),
@@ -112,14 +119,38 @@ export function resolveHeadlessShellPath(config) {
112
119
  }
113
120
  }
114
121
  catch {
115
- // ignore
122
+ // Ignore unreadable cache directories and continue browser discovery.
116
123
  }
117
124
  return undefined;
118
125
  }
119
- let pooledBrowser = null;
120
- let pooledBrowserRefCount = 0;
121
- let pooledCaptureMode = "screenshot";
122
- let _pooledBrowserLaunchPromise = null;
126
+ /**
127
+ * Resolve chrome-headless-shell binary for deterministic BeginFrame rendering.
128
+ * Checks config.chromePath, then PRODUCER_HEADLESS_SHELL_PATH env var,
129
+ * then the CLI browser override, HyperFrames' managed cache, and Puppeteer's cache.
130
+ */
131
+ export function resolveHeadlessShellPath(config) {
132
+ if (config?.chromePath) {
133
+ return config.chromePath;
134
+ }
135
+ if (process.env.PRODUCER_HEADLESS_SHELL_PATH) {
136
+ const envPath = process.env.PRODUCER_HEADLESS_SHELL_PATH;
137
+ if (!existsSync(envPath)) {
138
+ throw new Error(`[BrowserManager] Chrome binary not found at PRODUCER_HEADLESS_SHELL_PATH="${envPath}". ` +
139
+ "Run `hyperframes browser ensure` to re-download.");
140
+ }
141
+ return envPath;
142
+ }
143
+ if (process.env.HYPERFRAMES_BROWSER_PATH) {
144
+ const envPath = process.env.HYPERFRAMES_BROWSER_PATH;
145
+ if (!existsSync(envPath)) {
146
+ throw new Error(`[BrowserManager] Chrome binary not found at HYPERFRAMES_BROWSER_PATH="${envPath}". ` +
147
+ "Run `hyperframes browser ensure` to re-download.");
148
+ }
149
+ return envPath;
150
+ }
151
+ const home = homedir();
152
+ return (findCachedHeadlessShell(join(home, ".cache", "hyperframes", "chrome", "chrome-headless-shell")) ?? findCachedHeadlessShell(join(home, ".cache", "puppeteer", "chrome-headless-shell")));
153
+ }
123
154
  // Preserve the producer-era export so re-export shims keep the same public API.
124
155
  export const ENABLE_BROWSER_POOL = DEFAULT_CONFIG.enableBrowserPool;
125
156
  // Flags only meaningful when Chrome's compositor is driven by
@@ -284,153 +315,71 @@ export function resolveBrowserGpuMode(mode, options = {}) {
284
315
  function logResolvedBrowserGpuMode(resolved, reason) {
285
316
  console.error(`[hyperframes] browserGpuMode auto → ${resolved} (${reason})`);
286
317
  }
287
- /**
288
- * Resolve the capture mode the caller expects, WITHOUT launching a browser.
289
- * Used to validate pool compatibility before returning a cached instance.
290
- */
291
- function resolveRequestedCaptureMode(config) {
292
- const headlessShell = resolveHeadlessShellPath(config);
293
- // BeginFrame requires chrome-headless-shell AND Linux — crashes on
294
- // macOS/Windows (crbug.com/40656275).
295
- const isLinux = process.platform === "linux";
296
- const forceScreenshot = config?.forceScreenshot ?? DEFAULT_CONFIG.forceScreenshot;
297
- if (headlessShell && isLinux && !forceScreenshot)
298
- return "beginframe";
299
- return "screenshot";
318
+ function createBrowserLaunchFingerprint(chromeArgs, config) {
319
+ const launchConfig = {
320
+ browserTimeout: DEFAULT_CONFIG.browserTimeout,
321
+ protocolTimeout: DEFAULT_CONFIG.protocolTimeout,
322
+ forceScreenshot: DEFAULT_CONFIG.forceScreenshot,
323
+ ...config,
324
+ };
325
+ const headlessShell = resolveHeadlessShellPath(launchConfig);
326
+ const requestedCaptureMode = headlessShell && process.platform === "linux" && !launchConfig.forceScreenshot
327
+ ? "beginframe"
328
+ : "screenshot";
329
+ return {
330
+ args: chromeArgs,
331
+ executablePath: headlessShell,
332
+ browserTimeoutMs: launchConfig.browserTimeout,
333
+ protocolTimeoutMs: launchConfig.protocolTimeout,
334
+ requestedCaptureMode,
335
+ };
300
336
  }
301
337
  export async function acquireBrowser(chromeArgs, config) {
302
338
  const enablePool = config?.enableBrowserPool ?? DEFAULT_CONFIG.enableBrowserPool;
303
- if (enablePool && pooledBrowser) {
304
- if (!pooledBrowser.connected) {
305
- pooledBrowser = null;
306
- pooledBrowserRefCount = 0;
307
- _pooledBrowserLaunchPromise = null;
308
- }
309
- else {
310
- // Validate mode compatibility: a caller that needs screenshot mode
311
- // (forceScreenshot, alpha output, BeginFrame timeout retry) must not
312
- // receive a beginframe browser — the BeginFrame-only flags make the
313
- // compositor wait for frames the screenshot path never sends.
314
- const requestedMode = resolveRequestedCaptureMode(config);
315
- if (pooledCaptureMode === requestedMode) {
316
- pooledBrowserRefCount += 1;
317
- return { browser: pooledBrowser, captureMode: pooledCaptureMode };
318
- }
319
- // Mode mismatch — skip pool, launch a dedicated browser for this caller.
320
- // Don't evict the pooled browser: other sessions may still hold refs.
321
- }
322
- }
323
- // Dedup concurrent launches: when the pool is enabled and multiple callers
324
- // (e.g. parallel workers via Promise.all) race into acquireBrowser before
325
- // the first launch completes, they would all see pooledBrowser === null and
326
- // each spawn a separate Chrome. Cache the in-flight launch Promise so the
327
- // second+ callers await the same one instead of launching again.
328
- if (enablePool && _pooledBrowserLaunchPromise) {
329
- const result = await _pooledBrowserLaunchPromise;
330
- const requestedMode = resolveRequestedCaptureMode(config);
331
- if (result.captureMode === requestedMode) {
332
- pooledBrowserRefCount += 1;
333
- return result;
334
- }
335
- // Mode mismatch with pending launch — launch a dedicated browser.
336
- }
337
- const launchPromise = launchBrowser(chromeArgs, config);
338
- if (enablePool && !pooledBrowser && !_pooledBrowserLaunchPromise) {
339
- _pooledBrowserLaunchPromise = launchPromise;
340
- try {
341
- const result = await launchPromise;
342
- pooledBrowser = result.browser;
343
- pooledBrowserRefCount = 1;
344
- pooledCaptureMode = result.captureMode;
345
- return result;
346
- }
347
- finally {
348
- _pooledBrowserLaunchPromise = null;
349
- }
350
- }
351
- return launchPromise;
339
+ return browserLeasePool.acquire(createBrowserLaunchFingerprint(chromeArgs, config), enablePool);
352
340
  }
353
341
  // fallow-ignore-next-line complexity
354
- async function launchBrowser(chromeArgs, config) {
355
- // Config chromePath overrides env var / auto-detection.
356
- const headlessShell = resolveHeadlessShellPath(config);
357
- // BeginFrame requires chrome-headless-shell AND Linux (crashes on
358
- // macOS/Windows — crbug.com/40656275).
359
- const isLinux = process.platform === "linux";
360
- const forceScreenshot = config?.forceScreenshot ?? DEFAULT_CONFIG.forceScreenshot;
361
- let captureMode;
362
- let executablePath;
363
- if (headlessShell && isLinux && !forceScreenshot) {
364
- captureMode = "beginframe";
365
- executablePath = headlessShell;
366
- }
367
- else {
368
- // Screenshot mode with renderSeek: works on all platforms.
369
- captureMode = "screenshot";
370
- executablePath = headlessShell ?? undefined;
371
- }
342
+ async function launchBrowser(fingerprint) {
372
343
  const ppt = await getPuppeteer();
373
- const browserTimeout = config?.browserTimeout ?? DEFAULT_CONFIG.browserTimeout;
374
- const protocolTimeout = config?.protocolTimeout ?? DEFAULT_CONFIG.protocolTimeout;
375
- let browser = await ppt.launch({
376
- headless: true,
377
- args: chromeArgs,
378
- defaultViewport: null,
379
- executablePath,
380
- timeout: browserTimeout,
381
- protocolTimeout,
382
- });
383
- const browserVersion = await browser.version().catch(() => "unknown");
384
- const gpuFlags = chromeArgs.filter((a) => a.startsWith("--use-gl=") || a.startsWith("--use-angle="));
385
- console.log(`[BrowserManager] Browser launched (${browserVersion}, ${captureMode}, gl=${gpuFlags.join(" ") || "default"}, headlessShell=${!!headlessShell}, platform=${process.platform})`);
386
- if (captureMode === "beginframe") {
387
- const supported = await probeBeginFrameSupport(browser).catch(() => true);
388
- if (!supported) {
389
- await browser.close().catch(() => { });
390
- console.warn("[BrowserManager] HeadlessExperimental.beginFrame unavailable in this Chromium build; falling back to screenshot mode.");
391
- captureMode = "screenshot";
392
- browser = await ppt.launch({
393
- headless: true,
394
- args: stripBeginFrameFlags(chromeArgs),
395
- defaultViewport: null,
396
- executablePath,
397
- timeout: browserTimeout,
398
- protocolTimeout,
399
- });
344
+ let captureMode = fingerprint.requestedCaptureMode;
345
+ let browser;
346
+ try {
347
+ browser = await ppt.launch({
348
+ headless: true,
349
+ args: [...fingerprint.args],
350
+ defaultViewport: null,
351
+ executablePath: fingerprint.executablePath,
352
+ timeout: fingerprint.browserTimeoutMs,
353
+ protocolTimeout: fingerprint.protocolTimeoutMs,
354
+ });
355
+ const browserVersion = await browser.version().catch(() => "unknown");
356
+ const gpuFlags = fingerprint.args.filter((a) => a.startsWith("--use-gl=") || a.startsWith("--use-angle="));
357
+ console.log(`[BrowserManager] Browser launched (${browserVersion}, ${captureMode}, gl=${gpuFlags.join(" ") || "default"}, headlessShell=${!!fingerprint.executablePath}, platform=${process.platform})`);
358
+ if (captureMode === "beginframe") {
359
+ const supported = await probeBeginFrameSupport(browser).catch(() => true);
360
+ if (!supported) {
361
+ await browser.close().catch(() => { });
362
+ browser = undefined;
363
+ console.warn("[BrowserManager] HeadlessExperimental.beginFrame unavailable in this Chromium build; falling back to screenshot mode.");
364
+ captureMode = "screenshot";
365
+ browser = await ppt.launch({
366
+ headless: true,
367
+ args: stripBeginFrameFlags([...fingerprint.args]),
368
+ defaultViewport: null,
369
+ executablePath: fingerprint.executablePath,
370
+ timeout: fingerprint.browserTimeoutMs,
371
+ protocolTimeout: fingerprint.protocolTimeoutMs,
372
+ });
373
+ }
400
374
  }
375
+ return { browser, captureMode };
401
376
  }
402
- return { browser, captureMode };
403
- }
404
- export async function releaseBrowser(browser, config) {
405
- const enablePool = config?.enableBrowserPool ?? DEFAULT_CONFIG.enableBrowserPool;
406
- if (!enablePool) {
407
- await browser.close().catch(() => { });
408
- return;
409
- }
410
- if (pooledBrowser && pooledBrowser === browser) {
411
- pooledBrowserRefCount = Math.max(0, pooledBrowserRefCount - 1);
412
- if (pooledBrowserRefCount === 0) {
413
- await browser.close().catch(() => { });
414
- pooledBrowser = null;
415
- _pooledBrowserLaunchPromise = null;
416
- }
417
- return;
377
+ catch (error) {
378
+ await browser?.close().catch(() => { });
379
+ throw error;
418
380
  }
419
- await browser.close().catch(() => { });
420
381
  }
421
- export function forceReleaseBrowser(browser) {
422
- if (pooledBrowser && pooledBrowser === browser) {
423
- // If other sessions still hold refs, just drop ours — don't kill the
424
- // shared Chrome out from under them. The browser will be cleaned up when
425
- // the last session releases or drainBrowserPool is called.
426
- if (pooledBrowserRefCount > 1) {
427
- pooledBrowserRefCount -= 1;
428
- return;
429
- }
430
- pooledBrowserRefCount = 0;
431
- pooledBrowser = null;
432
- _pooledBrowserLaunchPromise = null;
433
- }
382
+ function forceCloseBrowserProcess(browser) {
434
383
  const proc = browser.process?.();
435
384
  if (proc && !proc.killed) {
436
385
  try {
@@ -447,32 +396,28 @@ export function forceReleaseBrowser(browser) {
447
396
  // Best-effort cleanup.
448
397
  }
449
398
  }
399
+ const browserLeasePool = new BrowserLeasePool({
400
+ launch: launchBrowser,
401
+ close: async (browser) => browser.close(),
402
+ forceClose: forceCloseBrowserProcess,
403
+ });
404
+ export async function releaseBrowser(browser, _config) {
405
+ await browserLeasePool.releaseByBrowser(browser);
406
+ }
407
+ export function forceReleaseBrowser(browser) {
408
+ browserLeasePool.forceReleaseByBrowser(browser);
409
+ }
450
410
  /**
451
411
  * Forcefully close the pooled browser if one exists, regardless of refCount.
452
412
  * Used for explicit cleanup at process exit or between independent render jobs
453
413
  * that should not share browser state.
454
414
  */
455
415
  export async function drainBrowserPool() {
456
- // Await any in-flight launch first — otherwise the launch resolves after we
457
- // drain and produces a browser that nobody references (orphan).
458
- const pending = _pooledBrowserLaunchPromise;
459
- _pooledBrowserLaunchPromise = null;
460
- if (pending) {
461
- await pending.then((r) => r.browser.close()).catch(() => { });
462
- }
463
- if (pooledBrowser) {
464
- const browser = pooledBrowser;
465
- pooledBrowser = null;
466
- pooledBrowserRefCount = 0;
467
- await browser.close().catch(() => { });
468
- }
416
+ await browserLeasePool.drain();
469
417
  }
470
418
  /** Test-only: reset all pool state. */
471
419
  export function _resetBrowserPoolForTests() {
472
- pooledBrowser = null;
473
- pooledBrowserRefCount = 0;
474
- pooledCaptureMode = "screenshot";
475
- _pooledBrowserLaunchPromise = null;
420
+ browserLeasePool.reset();
476
421
  }
477
422
  /** Test-only: inject a mock PuppeteerNode so tests bypass the dynamic import. */
478
423
  export function _setPuppeteerForTests(mock) {
@@ -1 +1 @@
1
- {"version":3,"file":"browserManager.js","sourceRoot":"","sources":["../../src/services/browserManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browserManager.js","sourceRoot":"","sources":["../../src/services/browserManager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,IAAI,CAAC;AAC7C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,cAAc,EAAqB,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EACL,gBAAgB,GAIjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAQzD,IAAI,UAAqC,CAAC;AAQ1C,SAAS,uBAAuB,CAAC,YAAoB;IACnD,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IACnD,OAAO,CACL,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;QAChC,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC7B,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC7B,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC7B,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC;QACnC,QAAQ,CAAC,QAAQ,CAAC,+BAA+B,CAAC;QAClD,QAAQ,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CACzC,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAClC,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,WAAqB,CAAC,CAAC;QAChD,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAC3C,UAAU,GAAG,GAAG,CAAC,OAAO,CAAC;IAC3B,CAAC;IACD,IAAI,CAAC,UAAU;QAAE,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC/E,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,sBAAsB,CACnC,GAAkB,EAClB,OAIC;IAED,IAAI,YAAiC,CAAC;IACtC,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;YAC9B,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,eAAe,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;YAC1C,cAAc,EAAE,OAAO,CAAC,cAAc;YACtC,OAAO,EAAE,OAAO,CAAC,cAAc;SAChC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,OAAO,EAAE,CAAC;QAC1C,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE;YAC9B,MAAM,WAAW,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;YAClE,MAAM,CAAC,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC3C,IAAI,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAiC,CAAC;YAC/D,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;gBAChB,EAAE,GAAG,CAAC,CAAC,UAAU,CAAC,oBAAoB,CAAiC,CAAC;YAC1E,CAAC;YACD,IAAI,EAAE,KAAK,IAAI;gBAAE,OAAO,WAAW,CAAC;YACpC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,2BAA2B,CAG/C,CAAC;YACT,IAAI,WAAW,GAAW,EAAE,CAAC,MAAM,CAAC;YACpC,IAAI,aAAa,GAAW,EAAE,CAAC,QAAQ,CAAC;YACxC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACjB,WAAW,GAAG,GAAG,CAAC,qBAAqB,CAAC;gBACxC,aAAa,GAAG,GAAG,CAAC,uBAAuB,CAAC;YAC9C,CAAC;YACD,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;YAChD,OAAO;gBACL,QAAQ,EAAE,IAAI;gBACd,MAAM,EAAE,MAAM,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBAC5C,QAAQ,EAAE,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;aACnD,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;YAAS,CAAC;QACT,MAAM,YAAY,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAID,SAAS,gCAAgC,CAAC,IAAY,EAAE,KAAa;IACnE,MAAM,KAAK,GAAG,CAAC,KAAa,EAAY,EAAE;QACxC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACpD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,MAAM;YACpC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACxB,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC;IACjC,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACnE,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QAC/C,MAAM,UAAU,GAAG,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5E,IAAI,UAAU,KAAK,CAAC;YAAE,OAAO,UAAU,CAAC;IAC1C,CAAC;IACD,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAe;IAC9C,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC7E,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,MAAM,UAAU,GAAG;gBACjB,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,+BAA+B,EAAE,uBAAuB,CAAC;gBAChF,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,iCAAiC,EAAE,uBAAuB,CAAC;gBAClF,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,+BAA+B,EAAE,uBAAuB,CAAC;gBAChF,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,6BAA6B,EAAE,2BAA2B,CAAC;aACnF,CAAC;YACF,KAAK,MAAM,MAAM,IAAI,UAAU,EAAE,CAAC;gBAChC,IAAI,UAAU,CAAC,MAAM,CAAC;oBAAE,OAAO,MAAM,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,sEAAsE;IACxE,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,MAAkD;IAElD,IAAI,MAAM,EAAE,UAAU,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,UAAU,CAAC;IAC3B,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC;QAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC;QACzD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,6EAA6E,OAAO,KAAK;gBACvF,kDAAkD,CACrD,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACzC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC;QACrD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,KAAK,CACb,yEAAyE,OAAO,KAAK;gBACnF,kDAAkD,CACrD,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,OAAO,CACL,uBAAuB,CACrB,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,QAAQ,EAAE,uBAAuB,CAAC,CACvE,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,CAAC,CAAC,CACzF,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,mBAAmB,GAAG,cAAc,CAAC,iBAAiB,CAAC;AAEpE,8DAA8D;AAC9D,2EAA2E;AAC3E,4EAA4E;AAC5E,4EAA4E;AAC5E,MAAM,qBAAqB,GAAG,IAAI,GAAG,CAAC;IACpC,sBAAsB;IACtB,8BAA8B;IAC9B,yCAAyC;IACzC,yCAAyC;IACzC,8BAA8B;IAC9B,8BAA8B;IAC9B,2BAA2B;IAC3B,kCAAkC;IAClC,kCAAkC;CACnC,CAAC,CAAC;AAEH,SAAS,oBAAoB,CAAC,IAAc;IAC1C,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,sBAAsB,CAAC,OAAgB;IACpD,IAAI,IAAI,CAAC;IACT,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC7C,MAAM,MAAM,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QACjD,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAChE,cAAc,EAAE,CAAC;YACjB,QAAQ,EAAE,EAAE;YACZ,gBAAgB,EAAE,IAAI;SACvB,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC/C,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAAC,CACtE,CAAC;QACF,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC;QAC1C,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;YAAS,CAAC;QACT,MAAM,IAAI,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACtC,CAAC;AACH,CAAC;AAED;;;;;;;;;;;GAWG;AACH,IAAI,wBAAsE,CAAC;AAE3E,gDAAgD;AAChD,MAAM,UAAU,qCAAqC;IACnD,wBAAwB,GAAG,SAAS,CAAC;AACvC,CAAC;AAED,KAAK,UAAU,kBAAkB;IAC/B,IAAI,CAAC;QACH,OAAO,MAAM,YAAY,EAAE,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,uBAAuB,CAAC,QAAyB;IACxD,OAAO;QACL,cAAc;QACd,0BAA0B;QAC1B,yBAAyB;QACzB,gBAAgB;QAChB,wBAAwB;QACxB,GAAG,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC;KAC3C,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAoB;IACjD,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,UAAU,CAAC;IACtC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;QAAE,OAAO,UAAU,CAAC;IACpE,OAAO,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC;AAC1E,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAoB;IAC9C,IAAI,CAAC,IAAI,CAAC,QAAQ;QAAE,OAAO,mBAAmB,CAAC;IAC/C,OAAO,yBAAyB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;AAC1G,CAAC;AAED,SAAS,kBAAkB,CAAC,GAAY;IACtC,OAAO,iBAAiB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;AAC9E,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,OAItC;IACC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,cAAc,GAAG,OAAO,CAAC,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC;IAC/E,MAAM,cAAc,GAAG,OAAO,CAAC,UAAU,IAAI,wBAAwB,CAAC,EAAE,CAAC,CAAC;IAC1E,MAAM,GAAG,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAEvC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;QACjB,yBAAyB,CAAC,UAAU,EAAE,uBAAuB,CAAC,CAAC;QAC/D,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE;YAC7C,IAAI,EAAE,uBAAuB,CAAC,QAAQ,CAAC;YACvC,cAAc;YACd,cAAc;SACf,CAAC,CAAC;QACH,MAAM,QAAQ,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;QAC7C,yBAAyB,CAAC,QAAQ,EAAE,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9D,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,yBAAyB,CAAC,UAAU,EAAE,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,OAAO,UAAU,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,qBAAqB,CACnC,IAAoC,EACpC,UAII,EAAE;IAEN,IAAI,IAAI,KAAK,MAAM;QAAE,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,IAAI,wBAAwB;QAAE,OAAO,wBAAwB,CAAC;IAE9D,wBAAwB,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;IAC5D,OAAO,wBAAwB,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,SAAS,yBAAyB,CAAC,QAAiC,EAAE,MAAc;IAClF,OAAO,CAAC,KAAK,CAAC,uCAAuC,QAAQ,KAAK,MAAM,GAAG,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,8BAA8B,CACrC,UAAoB,EACpB,MAEC;IAED,MAAM,YAAY,GAAG;QACnB,cAAc,EAAE,cAAc,CAAC,cAAc;QAC7C,eAAe,EAAE,cAAc,CAAC,eAAe;QAC/C,eAAe,EAAE,cAAc,CAAC,eAAe;QAC/C,GAAG,MAAM;KACV,CAAC;IACF,MAAM,aAAa,GAAG,wBAAwB,CAAC,YAAY,CAAC,CAAC;IAC7D,MAAM,oBAAoB,GACxB,aAAa,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,eAAe;QAC5E,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,YAAY,CAAC;IACnB,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,cAAc,EAAE,aAAa;QAC7B,gBAAgB,EAAE,YAAY,CAAC,cAAc;QAC7C,iBAAiB,EAAE,YAAY,CAAC,eAAe;QAC/C,oBAAoB;KACrB,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,UAAoB,EACpB,MAKC;IAED,MAAM,UAAU,GAAG,MAAM,EAAE,iBAAiB,IAAI,cAAc,CAAC,iBAAiB,CAAC;IACjF,OAAO,gBAAgB,CAAC,OAAO,CAAC,8BAA8B,CAAC,UAAU,EAAE,MAAM,CAAC,EAAE,UAAU,CAAC,CAAC;AAClG,CAAC;AAED,qCAAqC;AACrC,KAAK,UAAU,aAAa,CAC1B,WAA+C;IAE/C,MAAM,GAAG,GAAG,MAAM,YAAY,EAAE,CAAC;IACjC,IAAI,WAAW,GAAG,WAAW,CAAC,oBAAoB,CAAC;IACnD,IAAI,OAA4B,CAAC;IACjC,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;YACzB,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC;YAC3B,eAAe,EAAE,IAAI;YACrB,cAAc,EAAE,WAAW,CAAC,cAAc;YAC1C,OAAO,EAAE,WAAW,CAAC,gBAAgB;YACrC,eAAe,EAAE,WAAW,CAAC,iBAAiB;SAC/C,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CACtC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CACjE,CAAC;QACF,OAAO,CAAC,GAAG,CACT,sCAAsC,cAAc,KAAK,WAAW,QAAQ,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS,mBAAmB,CAAC,CAAC,WAAW,CAAC,cAAc,cAAc,OAAO,CAAC,QAAQ,GAAG,CAC5L,CAAC;QAEF,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;YACjC,MAAM,SAAS,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YAC1E,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;gBACtC,OAAO,GAAG,SAAS,CAAC;gBACpB,OAAO,CAAC,IAAI,CACV,uHAAuH,CACxH,CAAC;gBACF,WAAW,GAAG,YAAY,CAAC;gBAC3B,OAAO,GAAG,MAAM,GAAG,CAAC,MAAM,CAAC;oBACzB,QAAQ,EAAE,IAAI;oBACd,IAAI,EAAE,oBAAoB,CAAC,CAAC,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;oBACjD,eAAe,EAAE,IAAI;oBACrB,cAAc,EAAE,WAAW,CAAC,cAAc;oBAC1C,OAAO,EAAE,WAAW,CAAC,gBAAgB;oBACrC,eAAe,EAAE,WAAW,CAAC,iBAAiB;iBAC/C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IAClC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvC,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,wBAAwB,CAAC,OAAgB;IAChD,MAAM,IAAI,GACR,OAGD,CAAC,OAAO,EAAE,EAAE,CAAC;IACd,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACH,OAAO,CAAC,UAAU,EAAE,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACP,uBAAuB;IACzB,CAAC;AACH,CAAC;AAED,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;IAC5C,MAAM,EAAE,aAAa;IACrB,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE;IACzC,UAAU,EAAE,wBAAwB;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAgB,EAChB,OAA0D;IAE1D,MAAM,gBAAgB,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;AACnD,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,gBAAgB,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,gBAAgB,CAAC,KAAK,EAAE,CAAC;AACjC,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,yBAAyB;IACvC,gBAAgB,CAAC,KAAK,EAAE,CAAC;AAC3B,CAAC;AAED,iFAAiF;AACjF,MAAM,UAAU,qBAAqB,CAAC,IAA+B;IACnE,UAAU,GAAG,IAAI,CAAC;AACpB,CAAC;AAED,IAAI,aAAa,GAAkB,IAAI,CAAC;AAExC,SAAS,iBAAiB;IACxB,IAAI,aAAa,KAAK,IAAI;QAAE,OAAO,aAAa,CAAC;IACjD,IAAI,CAAC;QACH,yEAAyE;QACzE,MAAM,GAAG,GAAG,QAAQ,CAAC,mEAAmE,EAAE;YACxF,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAClD,IAAI,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,CAAC;YAClC,aAAa,GAAG,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,4CAA4C;IAC9C,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACjC,IAAI,IAAI;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEvC,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,IAAI,KAAK,GAAG,IAAI;QAAE,OAAO,GAAG,CAAC;IAC7B,IAAI,KAAK,IAAI,6BAA6B;QAAE,OAAO,IAAI,CAAC;IACxD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AAChD,CAAC;AAED,SAAS,iBAAiB;IACxB,MAAM,KAAK,GAAG,gBAAgB,EAAE,CAAC;IACjC,IAAI,KAAK,GAAG,6BAA6B;QAAE,OAAO,EAAE,CAAC;IACrD,MAAM,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IACxC,OAAO,CAAC,mCAAmC,MAAM,EAAE,CAAC,CAAC;AACvD,CAAC;AASD,MAAM,gCAAgC,GAAG,qCAAqC,CAAC;AAC/E,MAAM,WAAW,GAAG,wBAAwB,CAAC;AAE7C,MAAM,UAAU,eAAe,CAC7B,OAA+B,EAC/B,MAAoF;IAEpF,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACtD,MAAM,WAAW,GAAG,MAAM,EAAE,UAAU,IAAI,cAAc,CAAC,UAAU,CAAC;IACpE,MAAM,cAAc,GAAG,WAAW;QAChC,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,CAAC,MAAM,EAAE,cAAc,IAAI,cAAc,CAAC,cAAc,CAAC,CAAC;IAC9D,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,2BAA2B;IAC3B,MAAM,UAAU,GAAG;QACjB,cAAc;QACd,0BAA0B;QAC1B,yBAAyB;QACzB,gCAAgC;QAChC,gBAAgB;QAChB,wBAAwB;QACxB,GAAG,iBAAiB,CAAC,cAAc,EAAE,QAAQ,CAAC;QAC9C,4BAA4B;QAC5B,4BAA4B;QAC5B,iBAAiB,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE;QAClD,4EAA4E;QAC5E,4CAA4C;QAC5C,uCAAuC;QACvC,0CAA0C;QAC1C,kCAAkC;QAClC,oCAAoC;QACpC,8CAA8C;QAC9C,oBAAoB;QACpB,sDAAsD;QACtD,wBAAwB;QACxB,sBAAsB;QACtB,wBAAwB;QACxB,mCAAmC;QACnC,0BAA0B;QAC1B,gBAAgB;QAChB,4BAA4B;QAC5B,8BAA8B;QAC9B,yBAAyB;QACzB,YAAY;QACZ,aAAa;QACb,oDAAoD;QACpD,gCAAgC,iBAAiB,EAAE,EAAE;QACrD,6BAA6B;QAC7B,GAAG,iBAAiB,EAAE;QACtB,qCAAqC;QACrC,kIAAkI;QAClI,yEAAyE;QACzE,mEAAmE;QACnE,qEAAqE;QACrE,qEAAqE;QACrE,yEAAyE;QACzE,4CAA4C;KAC7C,CAAC;IAEF,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;QAClC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC/B,CAAC;IAED,oEAAoE;IACpE,IAAI,OAAO,CAAC,WAAW,KAAK,YAAY,EAAE,CAAC;QACzC,0EAA0E;QAC1E,yEAAyE;QACzE,yDAAyD;QACzD,0EAA0E;QAC1E,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,0EAA0E;QAC1E,+EAA+E;QAC/E,IAAI,cAAc,KAAK,UAAU,EAAE,CAAC;YAClC,UAAU,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;QAC/C,CAAC;QACD,UAAU,CAAC,IAAI,CACb,sBAAsB,EACtB,8BAA8B,EAC9B,yCAAyC,EACzC,yCAAyC,EACzC,8BAA8B,EAC9B,8BAA8B,EAC9B,2BAA2B,EAC3B,kCAAkC,EAClC,kCAAkC,CACnC,CAAC;IACJ,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QAChB,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,iBAAiB,CACxB,IAAoC,EACpC,QAAyB;IAEzB,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,qEAAqE;QACrE,kEAAkE;QAClE,sEAAsE;QACtE,qEAAqE;QACrE,sEAAsE;QACtE,2DAA2D;QAC3D,OAAO,CAAC,gBAAgB,EAAE,yBAAyB,EAAE,6BAA6B,CAAC,CAAC;IACtF,CAAC;IAED,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;QACpB,sEAAsE;QACtE,yEAAyE;QACzE,+BAA+B;QAC/B,OAAO,CAAC,gBAAgB,EAAE,yBAAyB,EAAE,6BAA6B,CAAC,CAAC;IACtF,CAAC;IAED,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;QAC/E,KAAK,OAAO;YACV,OAAO,CAAC,gBAAgB,EAAE,mBAAmB,EAAE,4BAA4B,CAAC,CAAC;QAC/E,KAAK,OAAO;YACV,oEAAoE;YACpE,gEAAgE;YAChE,6DAA6D;YAC7D,+DAA+D;YAC/D,OAAO;gBACL,gBAAgB;gBAChB,oBAAoB;gBACpB,4BAA4B;gBAC5B,wBAAwB;gBACxB,+BAA+B;aAChC,CAAC;QACJ;YACE,OAAO,CAAC,4BAA4B,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC"}
@@ -0,0 +1,27 @@
1
+ export type CaptureFailureKind = "cancelled" | "transient_browser" | "protocol_timeout" | "memory_exhaustion" | "verification" | "authoring" | "io";
2
+ export interface CaptureWorkerDiagnostic {
3
+ workerId: number;
4
+ framesCaptured: number;
5
+ startFrame: number;
6
+ endFrame: number;
7
+ lines: readonly string[];
8
+ }
9
+ export declare class CaptureFailure extends Error {
10
+ readonly kind: CaptureFailureKind;
11
+ readonly cause: unknown;
12
+ readonly workerDiagnostics: readonly CaptureWorkerDiagnostic[];
13
+ constructor(input: {
14
+ kind: CaptureFailureKind;
15
+ message: string;
16
+ cause?: unknown;
17
+ workerDiagnostics?: readonly CaptureWorkerDiagnostic[];
18
+ });
19
+ }
20
+ export declare function classifyCaptureFailure(error: unknown, options?: {
21
+ signal?: AbortSignal;
22
+ workerDiagnostics?: readonly CaptureWorkerDiagnostic[];
23
+ }): CaptureFailure;
24
+ export declare function isTransientBrowserError(error: unknown): boolean;
25
+ export declare function isMemoryExhaustionError(error: unknown): boolean;
26
+ export declare function isFatalCaptureFailure(failure: CaptureFailure): boolean;
27
+ //# sourceMappingURL=captureFailure.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captureFailure.d.ts","sourceRoot":"","sources":["../../src/services/captureFailure.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,kBAAkB,GAC1B,WAAW,GACX,mBAAmB,GACnB,kBAAkB,GAClB,mBAAmB,GACnB,cAAc,GACd,WAAW,GACX,IAAI,CAAC;AAET,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1B;AAED,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,IAAI,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,iBAAiB,EAAE,SAAS,uBAAuB,EAAE,CAAC;gBAEnD,KAAK,EAAE;QACjB,IAAI,EAAE,kBAAkB,CAAC;QACzB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,OAAO,CAAC;QAChB,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;KACxD;CAYF;AAyFD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,OAAO,EACd,OAAO,GAAE;IACP,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;CACnD,GACL,cAAc,CAiChB;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE/D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAE/D;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAEtE"}
@@ -0,0 +1,134 @@
1
+ export class CaptureFailure extends Error {
2
+ kind;
3
+ cause;
4
+ workerDiagnostics;
5
+ constructor(input) {
6
+ super(input.message);
7
+ this.name = "CaptureFailure";
8
+ this.kind = input.kind;
9
+ this.cause = input.cause;
10
+ this.workerDiagnostics = Object.freeze((input.workerDiagnostics ?? []).map((diagnostic) => Object.freeze({ ...diagnostic, lines: Object.freeze([...diagnostic.lines]) })));
11
+ if (input.cause instanceof Error && input.cause.stack)
12
+ this.stack = input.cause.stack;
13
+ }
14
+ }
15
+ const TRANSIENT_BROWSER_ERROR_PATTERNS = [
16
+ /Navigating frame was detached/i,
17
+ /Target closed/i,
18
+ /Session closed/i,
19
+ /browser has disconnected/i,
20
+ /Page crashed/i,
21
+ /Execution context was destroyed/i,
22
+ /Cannot find context with specified id/i,
23
+ /Failed to launch the browser process/i,
24
+ /Navigation timeout of \d+ ms exceeded/i,
25
+ /ECONNREFUSED/i,
26
+ /net::ERR_NETWORK_CHANGED/i,
27
+ /Composition has zero duration[\s\S]*Runtime ready: false/,
28
+ ];
29
+ const PROTOCOL_TIMEOUT_PATTERNS = [
30
+ /Runtime\.callFunctionOn timed out/i,
31
+ /Runtime\.evaluate timed out/i,
32
+ /HeadlessExperimental\.beginFrame timed out/i,
33
+ /drawElement worker encode timed out \(frame \d+\)/i,
34
+ /Protocol error[\s\S]*tim(?:ed|e) out/i,
35
+ /Waiting failed:\s*\d+\s*ms exceeded/i,
36
+ /Waiting failed[\s\S]*timeout/i,
37
+ /timeout exceeded/i,
38
+ ];
39
+ const MEMORY_EXHAUSTION_ERROR_PATTERNS = [
40
+ /Set maximum size exceeded/i,
41
+ /Map maximum size exceeded/i,
42
+ /Invalid (?:array|string) length/i,
43
+ /Array buffer allocation failed/i,
44
+ /Cannot create a string longer than/i,
45
+ /Reached heap limit/i,
46
+ /JavaScript heap out of memory/i,
47
+ ];
48
+ // Bun/JSC reports oversized allocations as the bare string "Out of memory".
49
+ // Match only the complete message, or the complete worker segment produced by
50
+ // parallel capture, so unrelated WebGL diagnostics are not misclassified.
51
+ const BUN_MEMORY_EXHAUSTION_EXACT_MESSAGE = /^out of memory\.?$/i;
52
+ const BUN_MEMORY_EXHAUSTION_WRAPPED_WORKER_MESSAGE = /\bworker \d+: out of memory\.?(?:;|$)/i;
53
+ const VERIFICATION_ERROR_PATTERNS = [
54
+ /DrawElementVerificationError/i,
55
+ /drawElement self-verify/i,
56
+ /verification (?:failed|mismatch)/i,
57
+ /blank drawElement frame/i,
58
+ ];
59
+ const AUTHORING_ERROR_PATTERNS = [
60
+ /Composition has zero duration[\s\S]*Runtime ready: true/i,
61
+ /data-duration/i,
62
+ /No root \[data-composition-id\]/i,
63
+ /failed to parse/i,
64
+ /unparseable/i,
65
+ ];
66
+ function messageOf(error) {
67
+ return error instanceof Error ? error.message : String(error);
68
+ }
69
+ function matchesAny(message, patterns) {
70
+ return patterns.some((pattern) => pattern.test(message));
71
+ }
72
+ const IO_OPERATION_TOKENS = ["read", "write", "rename", "copy", "open", "file", "directory"];
73
+ function hasIoOperationFailure(message) {
74
+ const normalized = message.toLowerCase();
75
+ return normalized.split(/[\r\n]/).some((line) => IO_OPERATION_TOKENS.some((operation) => {
76
+ const operationIndex = line.indexOf(operation);
77
+ if (operationIndex < 0)
78
+ return false;
79
+ const failureStart = operationIndex + operation.length;
80
+ return line.indexOf("failed", failureStart) >= 0 || line.indexOf("error", failureStart) >= 0;
81
+ }));
82
+ }
83
+ function ioError(error, message) {
84
+ const code = error instanceof Error ? error.code : undefined;
85
+ return (Boolean(code && /^(?:EACCES|EEXIST|EIO|EMFILE|ENFILE|ENOENT|ENOSPC|EPERM|EROFS)$/.test(code)) ||
86
+ hasIoOperationFailure(message));
87
+ }
88
+ export function classifyCaptureFailure(error, options = {}) {
89
+ if (error instanceof CaptureFailure && !options.workerDiagnostics && !options.signal?.aborted) {
90
+ return error;
91
+ }
92
+ const message = messageOf(error);
93
+ let kind;
94
+ if (options.signal?.aborted || /(?:render|capture)?_?cancelled|AbortError/i.test(message)) {
95
+ kind = "cancelled";
96
+ }
97
+ else if (BUN_MEMORY_EXHAUSTION_EXACT_MESSAGE.test(message.trim()) ||
98
+ BUN_MEMORY_EXHAUSTION_WRAPPED_WORKER_MESSAGE.test(message) ||
99
+ matchesAny(message, MEMORY_EXHAUSTION_ERROR_PATTERNS)) {
100
+ kind = "memory_exhaustion";
101
+ }
102
+ else if (matchesAny(message, VERIFICATION_ERROR_PATTERNS)) {
103
+ kind = "verification";
104
+ }
105
+ else if (matchesAny(message, PROTOCOL_TIMEOUT_PATTERNS)) {
106
+ kind = "protocol_timeout";
107
+ }
108
+ else if (matchesAny(message, TRANSIENT_BROWSER_ERROR_PATTERNS)) {
109
+ kind = "transient_browser";
110
+ }
111
+ else if (matchesAny(message, AUTHORING_ERROR_PATTERNS)) {
112
+ kind = "authoring";
113
+ }
114
+ else {
115
+ kind = ioError(error, message) ? "io" : "authoring";
116
+ }
117
+ return new CaptureFailure({
118
+ kind,
119
+ message,
120
+ cause: error,
121
+ workerDiagnostics: options.workerDiagnostics ??
122
+ (error instanceof CaptureFailure ? error.workerDiagnostics : undefined),
123
+ });
124
+ }
125
+ export function isTransientBrowserError(error) {
126
+ return classifyCaptureFailure(error).kind === "transient_browser";
127
+ }
128
+ export function isMemoryExhaustionError(error) {
129
+ return classifyCaptureFailure(error).kind === "memory_exhaustion";
130
+ }
131
+ export function isFatalCaptureFailure(failure) {
132
+ return !["cancelled", "transient_browser", "protocol_timeout"].includes(failure.kind);
133
+ }
134
+ //# sourceMappingURL=captureFailure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captureFailure.js","sourceRoot":"","sources":["../../src/services/captureFailure.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"chunkEncoder.d.ts","sourceRoot":"","sources":["../../src/services/chunkEncoder.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAMH,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EACL,KAAK,UAAU,EAIhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,WAAW,EAA4B,MAAM,iBAAiB,CAAC;AAK7E,OAAO,EAAE,KAAK,GAAG,EAAkB,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAGvF,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEvF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAI3B,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE;QAAE,QAAQ,EAAE,WAAW,CAAA;KAAE,CAAC;CACjC;AA+BD,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CACvD,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAC3C;IACC;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAqBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,EACtC,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAa,EACtC,GAAG,CAAC,EAAE;IAAE,QAAQ,EAAE,WAAW,CAAA;CAAE,GAC9B,aAAa,CA4Bf;AAGD,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAE3E,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,GAAE,UAAiB,GAC5B,MAAM,EAAE,CA2SV;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,GAC1D,OAAO,CAAC,YAAY,CAAC,CAwGvB;AAED,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,GAC1D,OAAO,CAAC,YAAY,CAAC,CAqLvB;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,wBAAwB,EACjC,GAAG,CAAC,EAAE,GAAG,GACR,OAAO,CAAC,SAAS,CAAC,CAyDpB;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,EAC5D,GAAG,CAAC,EAAE,GAAG,GACR,OAAO,CAAC,SAAS,CAAC,CAiCpB"}
1
+ {"version":3,"file":"chunkEncoder.d.ts","sourceRoot":"","sources":["../../src/services/chunkEncoder.ts"],"names":[],"mappings":"AACA;;;;;GAKG;AAIH,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EACL,KAAK,UAAU,EAIhB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,KAAK,WAAW,EAA4B,MAAM,iBAAiB,CAAC;AAI7E,OAAO,EAAE,KAAK,GAAG,EAAkB,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAGvF,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEvF,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;CAI3B,CAAC;AAEF,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAC;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,CAAC,EAAE;QAAE,QAAQ,EAAE,WAAW,CAAA;KAAE,CAAC;CACjC;AA+BD,MAAM,WAAW,wBAAyB,SAAQ,OAAO,CACvD,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAC3C;IACC;;;;OAIG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAqBD;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,EACtC,MAAM,GAAE,KAAK,GAAG,MAAM,GAAG,KAAa,EACtC,GAAG,CAAC,EAAE;IAAE,QAAQ,EAAE,WAAW,CAAA;CAAE,GAC9B,aAAa,CA4Bf;AAGD,OAAO,EAAE,gBAAgB,EAAE,KAAK,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAE3E,wBAAgB,gBAAgB,CAC9B,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,MAAM,EAAE,EACnB,UAAU,EAAE,MAAM,EAClB,UAAU,GAAE,UAAiB,GAC5B,MAAM,EAAE,CA2SV;AAED,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,GAC1D,OAAO,CAAC,YAAY,CAAC,CA8DvB;AAED,wBAAsB,yBAAyB,CAC7C,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,cAAc,EACvB,eAAe,EAAE,MAAM,EACvB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,qBAAqB,CAAC,CAAC,GAC1D,OAAO,CAAC,YAAY,CAAC,CA+HvB;AAED,wBAAsB,iBAAiB,CACrC,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,wBAAwB,EACjC,GAAG,CAAC,EAAE,GAAG,GACR,OAAO,CAAC,SAAS,CAAC,CAyDpB;AAED,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,WAAW,EACpB,MAAM,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,sBAAsB,CAAC,CAAC,EAC5D,GAAG,CAAC,EAAE,GAAG,GACR,OAAO,CAAC,SAAS,CAAC,CAiCpB"}