aweshare 0.7.3 → 0.7.5

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 (52) hide show
  1. package/README.ai.md +1 -1
  2. package/README.md +43 -13
  3. package/apps/agent/dist/cli.js +17 -10
  4. package/apps/agent/dist/cli.js.map +1 -1
  5. package/apps/agent/dist/hub.d.ts +2 -0
  6. package/apps/agent/dist/hub.js +2 -0
  7. package/apps/agent/dist/hub.js.map +1 -1
  8. package/apps/agent/dist/table.d.ts +2 -2
  9. package/apps/agent/dist/table.js +48 -14
  10. package/apps/agent/dist/table.js.map +1 -1
  11. package/apps/hub/dist/admin.js +26 -18
  12. package/apps/hub/dist/admin.js.map +1 -1
  13. package/apps/hub/dist/auth.js +0 -12
  14. package/apps/hub/dist/auth.js.map +1 -1
  15. package/apps/hub/dist/backups.d.ts +43 -0
  16. package/apps/hub/dist/backups.js +122 -0
  17. package/apps/hub/dist/backups.js.map +1 -0
  18. package/apps/hub/dist/cli.js +371 -131
  19. package/apps/hub/dist/cli.js.map +1 -1
  20. package/apps/hub/dist/config.d.ts +2 -0
  21. package/apps/hub/dist/config.js +1 -0
  22. package/apps/hub/dist/config.js.map +1 -1
  23. package/apps/hub/dist/consumer.d.ts +3 -0
  24. package/apps/hub/dist/consumer.js +169 -54
  25. package/apps/hub/dist/consumer.js.map +1 -1
  26. package/apps/hub/dist/db.d.ts +9 -10
  27. package/apps/hub/dist/db.js +20 -22
  28. package/apps/hub/dist/db.js.map +1 -1
  29. package/apps/hub/dist/http.d.ts +7 -1
  30. package/apps/hub/dist/http.js +6 -1
  31. package/apps/hub/dist/http.js.map +1 -1
  32. package/apps/hub/dist/invites.js +9 -2
  33. package/apps/hub/dist/invites.js.map +1 -1
  34. package/apps/hub/dist/server.d.ts +7 -3
  35. package/apps/hub/dist/server.js +23 -8
  36. package/apps/hub/dist/server.js.map +1 -1
  37. package/apps/hub/dist/table.d.ts +3 -4
  38. package/apps/hub/dist/table.js +52 -20
  39. package/apps/hub/dist/table.js.map +1 -1
  40. package/apps/hub/dist/tunnel.d.ts +0 -2
  41. package/apps/hub/dist/tunnel.js +2 -16
  42. package/apps/hub/dist/tunnel.js.map +1 -1
  43. package/package.json +3 -2
  44. package/packages/producer-core/dist/catalog.js +9 -1
  45. package/packages/producer-core/dist/catalog.js.map +1 -1
  46. package/packages/producer-core/dist/job.js +1 -1
  47. package/packages/producer-core/dist/job.js.map +1 -1
  48. package/packages/protocol/dist/models.js +6 -1
  49. package/packages/protocol/dist/models.js.map +1 -1
  50. package/packages/protocol/dist/schedule.d.ts +8 -3
  51. package/packages/protocol/dist/schedule.js +124 -11
  52. package/packages/protocol/dist/schedule.js.map +1 -1
@@ -70,9 +70,14 @@ export declare function validateShareSchedule(value: unknown): {
70
70
  export declare function isShareOpen(schedule: ShareSchedule, at: Date): boolean;
71
71
  /**
72
72
  * The next minute (from `from`'s minute + 1) at which the schedule opens, or
73
- * null when nothing opens within the next 370 days. The scan is a plain
74
- * 1-minute walk so DST transitions and crossing windows need no special
75
- * casing; a date-list pre-filter short-circuits the common hopeless cases
73
+ * null when nothing opens within the next 370 days. isShareOpen's verdict is
74
+ * piecewise constant: it flips only at local midnight (day-filter changes)
75
+ * and at a window or exclude start or end on the schedule zone's wall clock.
76
+ * The walk evaluates those boundary minutes and jumps whole stretches of
77
+ * closed minutes in between; days whose day filter cannot open anything are
78
+ * skipped. A day whose zone offset changes (DST) abandons arithmetic and
79
+ * steps per minute — same answer as the old exhaustive walk, a thousandth of
80
+ * the Intl calls. A date-list pre-filter short-circuits the hopeless cases
76
81
  * (concrete dates already past or beyond the horizon) — which is exactly
77
82
  * what an exhaustive walk would answer, only instantly.
78
83
  */
@@ -45,8 +45,9 @@ function isRealDate(raw) {
45
45
  const probe = new Date(Date.UTC(y, m - 1, d));
46
46
  return probe.getUTCFullYear() === y && probe.getUTCMonth() + 1 === m && probe.getUTCDate() === d;
47
47
  }
48
- /** Our wall-clock formatters are per-zone singletons (the 370-day scan calls
49
- * them minute by minute); rebuilding per call would dominate that loop. */
48
+ /** Our wall-clock formatters are per-zone singletons (schedule scans hit them
49
+ * per boundary — minute by minute only on DST fallback days); rebuilding per
50
+ * call would dominate those loops. */
50
51
  const FORMATTERS = new Map();
51
52
  function formatterFor(tz) {
52
53
  let fmt = FORMATTERS.get(tz);
@@ -372,11 +373,96 @@ export function isShareOpen(schedule, at) {
372
373
  }
373
374
  return true;
374
375
  }
376
+ /** Calendar date `days` away from a 'YYYY-MM-DD' key — pure date math, no Intl. */
377
+ function plusDay(key, days) {
378
+ const [y, m, d] = key.split('-').map(Number);
379
+ const t = new Date(Date.UTC(y ?? 0, (m ?? 1) - 1, (d ?? 1) + days));
380
+ const yy = t.getUTCFullYear();
381
+ const mm = String(t.getUTCMonth() + 1).padStart(2, '0');
382
+ const dd = String(t.getUTCDate()).padStart(2, '0');
383
+ return `${yy}-${mm}-${dd}`;
384
+ }
385
+ /** The instant local midnight begins for wall date `key` in `tz`. A binary
386
+ * search over the key's ±1d UTC span finds the boundary in ≤ 16 Intl probes;
387
+ * a skipped civil date converges to its following wall-day boundary. */
388
+ function midnightOf(tz, key) {
389
+ const [y, m, d] = key.split('-').map(Number);
390
+ const noon = Date.UTC(y ?? 0, (m ?? 1) - 1, d ?? 1, 12);
391
+ let lo = noon - 86_400_000;
392
+ let hi = noon + 86_400_000;
393
+ while (hi - lo > 60_000) {
394
+ const mid = lo + Math.floor((hi - lo) / 2);
395
+ if (wallAt(tz, new Date(mid)).key < key)
396
+ lo = mid;
397
+ else
398
+ hi = mid;
399
+ }
400
+ return new Date(Math.ceil((lo + 1) / 60_000) * 60_000);
401
+ }
402
+ /** The next local midnight after `mid` (whose key is `key`). The fast path
403
+ * assumes a 24-hour advance; a verification miss means a zone transition
404
+ * inside the span and falls back to a binary search. */
405
+ function nextMidnightOf(tz, mid, key) {
406
+ const nextKey = plusDay(key, 1);
407
+ const guess = mid.getTime() + 86_400_000;
408
+ const g = wallAt(tz, new Date(guess));
409
+ if (g.key === nextKey && g.minutes === 0) {
410
+ return { mid: new Date(guess), key: nextKey, transition: false };
411
+ }
412
+ const found = midnightOf(tz, nextKey);
413
+ return { mid: found, key: wallAt(tz, found).key, transition: true };
414
+ }
415
+ /** Can anything open on wall date `key`? Either the day filter matches, or a
416
+ * crossing-midnight window attributes its early tail to the previous date
417
+ * and that date matches. */
418
+ function dayCanOpen(schedule, key) {
419
+ if (dayMatches(schedule.days, key))
420
+ return true;
421
+ if (schedule.windows === null)
422
+ return false;
423
+ const prevMatches = dayMatches(schedule.days, plusDay(key, -1));
424
+ if (!prevMatches)
425
+ return false;
426
+ return schedule.windows.some((w) => {
427
+ const p = parseWindow(w);
428
+ return p !== null && p[0] > p[1];
429
+ });
430
+ }
431
+ /** Evaluate the schedule at every flip boundary of one local day and return
432
+ * the first open instant, or null when none of them open. */
433
+ function firstOpenAtFlips(schedule, mid, flipMinutes, start, capInstant) {
434
+ const minutes = [0, ...flipMinutes.filter((m) => m !== 0)];
435
+ for (const m of minutes) {
436
+ const t = mid.getTime() + m * 60_000;
437
+ if (t < start || t > capInstant)
438
+ continue;
439
+ if (isShareOpen(schedule, new Date(t)))
440
+ return new Date(t);
441
+ }
442
+ return null;
443
+ }
444
+ /** Walk one local day minute by minute — exact fallback for days whose
445
+ * offset changed between midnight and the next midnight (a DST transition
446
+ * invalidates the arithmetic candidates). */
447
+ function firstOpenByMinute(schedule, lo, hi, start, capInstant) {
448
+ for (let t = lo.getTime(); t < hi.getTime(); t += 60_000) {
449
+ if (t < start || t > capInstant)
450
+ continue;
451
+ if (isShareOpen(schedule, new Date(t)))
452
+ return new Date(t);
453
+ }
454
+ return null;
455
+ }
375
456
  /**
376
457
  * The next minute (from `from`'s minute + 1) at which the schedule opens, or
377
- * null when nothing opens within the next 370 days. The scan is a plain
378
- * 1-minute walk so DST transitions and crossing windows need no special
379
- * casing; a date-list pre-filter short-circuits the common hopeless cases
458
+ * null when nothing opens within the next 370 days. isShareOpen's verdict is
459
+ * piecewise constant: it flips only at local midnight (day-filter changes)
460
+ * and at a window or exclude start or end on the schedule zone's wall clock.
461
+ * The walk evaluates those boundary minutes and jumps whole stretches of
462
+ * closed minutes in between; days whose day filter cannot open anything are
463
+ * skipped. A day whose zone offset changes (DST) abandons arithmetic and
464
+ * steps per minute — same answer as the old exhaustive walk, a thousandth of
465
+ * the Intl calls. A date-list pre-filter short-circuits the hopeless cases
380
466
  * (concrete dates already past or beyond the horizon) — which is exactly
381
467
  * what an exhaustive walk would answer, only instantly.
382
468
  */
@@ -390,13 +476,40 @@ export function nextShareOpen(schedule, from) {
390
476
  return null;
391
477
  }
392
478
  const start = Math.floor(from.getTime() / 60_000) * 60_000 + 60_000;
393
- const cap = 370 * 24 * 60; // minutes
394
- for (let i = 0; i < cap; i++) {
395
- const at = new Date(start + i * 60_000);
396
- if (isShareOpen(schedule, at))
397
- return at;
479
+ const capInstant = start + (370 * 24 * 60 - 1) * 60_000;
480
+ if (isShareOpen(schedule, new Date(start)))
481
+ return new Date(start);
482
+ // boundary wall minutes: local midnight plus every window/exclude start
483
+ // and end on the schedule zone's wall clock — the only places the verdict
484
+ // can flip closed→open
485
+ const flips = new Set();
486
+ for (const w of [...(schedule.windows ?? []), ...(schedule.exclude ?? [])]) {
487
+ const p = parseWindow(w);
488
+ if (p !== null) {
489
+ flips.add(p[0]);
490
+ flips.add(p[1]);
491
+ }
492
+ }
493
+ const flipMinutes = [...flips].sort((a, b) => a - b);
494
+ // calendar-day walk in the schedule zone; `mid` always reads minute 0
495
+ let key = wallAt(schedule.timezone, from).key;
496
+ let mid = midnightOf(schedule.timezone, key);
497
+ for (;;) {
498
+ if (mid.getTime() > capInstant)
499
+ return null;
500
+ // chain the next midnight first: arithmetic disagreement flags a zone
501
+ // transition inside [mid, nextMid) — the span where arithmetic is wrong
502
+ const next = nextMidnightOf(schedule.timezone, mid, key);
503
+ if (dayCanOpen(schedule, key)) {
504
+ const found = next.transition
505
+ ? firstOpenByMinute(schedule, mid, next.mid, start, capInstant)
506
+ : firstOpenAtFlips(schedule, mid, flipMinutes, start, capInstant);
507
+ if (found !== null)
508
+ return found;
509
+ }
510
+ mid = next.mid;
511
+ key = next.key;
398
512
  }
399
- return null;
400
513
  }
401
514
  /** Human rendering: '{days} {windows}', e.g. 'daily 00:00-06:00' or
402
515
  * 'weekdays !14:00-18:00'; the tz is appended only when it differs from the
@@ -1 +1 @@
1
- {"version":3,"file":"schedule.js","sourceRoot":"","sources":["../src/schedule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schedule.js","sourceRoot":"","sources":["../src/schedule.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,UAAU,GAAG,eAAe,CAAA;AAElC,iFAAiF;AACjF,MAAM,UAAU,eAAe;IAC7B,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,UAAU,CAAA;AACpD,CAAC;AAcD,MAAM,SAAS,GAAG,uDAAuD,CAAA;AACzE,MAAM,OAAO,GAAG,qBAAqB,CAAA;AAErC;2EAC2E;AAC3E,SAAS,WAAW,CAAC,GAAW;IAC9B,MAAM,CAAC,GAAG,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC7B,IAAI,CAAC,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC3B,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC9C,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,IAAI,KAAK,KAAK,GAAG;QAAE,OAAO,IAAI,CAAA;IAC9B,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AACrB,CAAC;AAED,oEAAoE;AACpE,SAAS,UAAU,CAAC,GAAW;IAC7B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,KAAK,CAAA;IACpC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,KAAK,CAAA;IACvE,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IAC7C,OAAO,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,IAAI,KAAK,CAAC,WAAW,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAA;AAClG,CAAC;AAED;;sCAEsC;AACtC,MAAM,UAAU,GAAG,IAAI,GAAG,EAA+B,CAAA;AACzD,SAAS,YAAY,CAAC,EAAU;IAC9B,IAAI,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IAC5B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,6DAA6D;QAC7D,GAAG,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE;YACrC,QAAQ,EAAE,EAAE;YACZ,IAAI,EAAE,SAAS;YACf,KAAK,EAAE,SAAS;YAChB,GAAG,EAAE,SAAS;YACd,IAAI,EAAE,SAAS;YACf,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,KAAK;SACjB,CAAC,CAAA;QACF,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;IACzB,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AASD,4EAA4E;AAC5E,SAAS,MAAM,CAAC,EAAU,EAAE,EAAQ;IAClC,MAAM,KAAK,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC,aAAa,CAAC,EAAE,CAAC,CAAA;IAChD,MAAM,GAAG,GAA2B,EAAE,CAAA;IACtC,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAA;IACrD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IAC/B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IAChC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,CAAC,CAAA;IACnC,MAAM,GAAG,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAA;IACvG,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAA;AACvC,CAAC;AAED;;8DAE8D;AAC9D,SAAS,SAAS,CAAC,GAAW;IAC5B,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAA,CAAC,eAAe;AACrF,CAAC;AAED;;;;gCAIgC;AAChC,SAAS,aAAa,CAAC,EAAU,EAAE,GAAW,EAAE,KAAa;IAC3D,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAA;IACzE,MAAM,EAAE,GAAG,MAAM,CAAC,cAAc,EAAE,CAAA;IAClC,MAAM,EAAE,GAAG,MAAM,CAAC,WAAW,EAAE,GAAG,CAAC,CAAA;IACnC,MAAM,EAAE,GAAG,MAAM,CAAC,UAAU,EAAE,CAAA;IAC9B,MAAM,IAAI,GAAG,GAAG,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAA;IAC3G,KAAK,MAAM,UAAU,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,UAAU,EAAE,EAAE,CAAC,CAAC,CAAA;QACjE,IAAI,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;IACjD,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,gDAAgD;AAChD,MAAM,UAAU,GAAG,CAAC,IAA2B,EAAE,GAAW,EAAW,EAAE;IACvE,IAAI,IAAI,KAAK,IAAI;QAAE,OAAO,IAAI,CAAA;IAC9B,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;QACzB,OAAO,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IAC3B,CAAC;IACD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,MAAM,EAAE,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;QACzB,OAAO,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;AAC3B,CAAC,CAAA;AAED,2DAA2D;AAC3D,MAAM,QAAQ,GAAG,CAAC,EAAU,EAAW,EAAE;IACvC,IAAI,CAAC;QACH,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAA;QAClD,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC,CAAA;AAED;;sEAEsE;AACtE,SAAS,eAAe,CAAC,KAAc,EAAE,GAAW,EAAE,QAAkB;IACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,GAAG,GAAG,kDAAkD,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QACvF,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,IAAI,EAAE,GAAG,IAAI,CAAA;IACb,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;QACxB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YAC3D,QAAQ,CAAC,IAAI,CACX,GAAG,GAAG,IAAI,CAAC,yDAAyD,MAAM,CAAC,IAAI,CAAC,GAAG,CACpF,CAAA;YACD,EAAE,GAAG,KAAK,CAAA;QACZ,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChB,CAAC;IACH,CAAC,CAAC,CAAA;IACF,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAA;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAChC,GAKC,EACD,IAA+C;IAE/C,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,KAAK,SAAS,CAAA;IACjD,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,KAAK,SAAS,CAAA;IAC/C,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,KAAK,SAAS,CAAA;IAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,aAAa,KAAK,SAAS,CAAA;IAC7C,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,IAAI,CAAC,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC;QACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;IACzC,CAAC;IACD,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAC;QAC3B,QAAQ,CAAC,IAAI,CACX,wFAAwF,CACzF,CAAA;IACH,CAAC;IAED,wEAAwE;IACxE,kEAAkE;IAClE,IAAI,EAAE,GAAG,EAAE,CAAA;IACX,IAAI,KAAK,EAAE,CAAC;QACV,IAAI,OAAO,GAAG,CAAC,aAAa,KAAK,QAAQ,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC;YAAE,EAAE,GAAG,GAAG,CAAC,aAAa,CAAA;;YAE9F,QAAQ,CAAC,IAAI,CACX,sDAAsD,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,GAAG,CACnF,CAAA;IACL,CAAC;SAAM,CAAC;QACN,EAAE,GAAG,IAAI,EAAE,eAAe,IAAI,eAAe,EAAE,CAAA;QAC/C,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;YAAE,QAAQ,CAAC,IAAI,CAAC,sDAAsD,EAAE,GAAG,CAAC,CAAA;IAC/F,CAAC;IAED,oEAAoE;IACpE,yEAAyE;IACzE,IAAI,OAAO,GAAoB,IAAI,CAAA;IACnC,IAAI,OAAO,GAAoB,IAAI,CAAA;IACnC,IAAI,UAAU,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAA;QACxE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,CAAA;IACnC,CAAC;SAAM,IAAI,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;QACnC,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAA;QACxE,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,CAAA;IACnC,CAAC;IAED,IAAI,IAAI,GAA0B,IAAI,CAAA;IACtC,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,OAAO,GAAG,GAAG,CAAC,SAAS,CAAA;QAC7B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAChC,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBAC9E,IAAI,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA;YAChD,CAAC;iBAAM,IAAI,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;gBACzD,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;oBACd,MAAM,GAAG,GAAG,IAAI,EAAE,GAAG,IAAI,IAAI,IAAI,EAAE,CAAA;oBACnC,MAAM,QAAQ,GAAG,MAAM,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,GAAG,CAAA;oBACpC,IAAI,GAAG,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;gBAC5E,CAAC;gBACD,uEAAuE;YACzE,CAAC;iBAAM,CAAC;gBACN,QAAQ,CAAC,IAAI,CACX,wGAAwG,OAAO,GAAG,CACnH,CAAA;YACH,CAAC;QACH,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACzB,QAAQ,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAA;YAC1E,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAa,EAAE,CAAA;gBACzB,IAAI,EAAE,GAAG,IAAI,CAAA;gBACb,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;oBAC1B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClD,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,8BAA8B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;wBAC1E,EAAE,GAAG,KAAK,CAAA;oBACZ,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACjB,CAAC;gBACH,CAAC,CAAC,CAAA;gBACF,IAAI,EAAE;oBAAE,IAAI,GAAG,IAAI,CAAA;YACrB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,QAAQ,CAAC,IAAI,CACX,iEAAiE,MAAM,CAAC,OAAO,CAAC,GAAG,CACpF,CAAA;QACH,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAA;IAC3E,OAAO,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAA;AAC7E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAIlD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACxE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,4BAA4B,CAAC,EAAE,CAAA;IACrE,CAAC;IACD,MAAM,CAAC,GAAG,KAAgC,CAAA;IAC1C,MAAM,QAAQ,GAAa,EAAE,CAAA;IAE7B,IAAI,QAAQ,GAAG,EAAE,CAAA;IACjB,IAAI,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5D,QAAQ,CAAC,IAAI,CAAC,iDAAiD,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;IACvF,CAAC;SAAM,CAAC;QACN,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAA;IACvB,CAAC;IAED,IAAI,IAAI,GAAiC,IAAI,CAAA;IAC7C,MAAM,OAAO,GAAG,CAAC,CAAC,IAAI,CAAA;IACtB,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC1B,QAAQ,CAAC,IAAI,CACX,oFAAoF,CACrF,CAAA;IACH,CAAC;SAAM,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAC5B,IAAI,GAAG,IAAI,CAAA;IACb,CAAC;SAAM,IAAI,OAAO,KAAK,UAAU,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAC3D,IAAI,GAAG,OAAO,CAAA;IAChB,CAAC;SAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAClC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,QAAQ,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;QAClD,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,GAAa,EAAE,CAAA;YACzB,IAAI,EAAE,GAAG,IAAI,CAAA;YACb,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBAC1B,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;oBAClD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,8BAA8B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;oBACrE,EAAE,GAAG,KAAK,CAAA;gBACZ,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC,CAAA;YACF,IAAI,EAAE;gBAAE,IAAI,GAAG,IAAI,CAAA;QACrB,CAAC;IACH,CAAC;SAAM,CAAC;QACN,QAAQ,CAAC,IAAI,CACX,kFAAkF,MAAM,CAAC,OAAO,CAAC,GAAG,CACrG,CAAA;IACH,CAAC;IAED,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAA;IAC5B,MAAM,UAAU,GAAG,CAAC,CAAC,OAAO,CAAA;IAC5B,IAAI,OAAO,GAAoB,IAAI,CAAA;IACnC,IAAI,OAAO,GAAoB,IAAI,CAAA;IACnC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAChF,CAAC;SAAM,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,eAAe,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC7D,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,CAAA;IACnC,CAAC;IACD,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,+DAA+D,CAAC,CAAA;IAChF,CAAC;SAAM,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,eAAe,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAA;QAC7D,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,CAAA;IACnC,CAAC;IACD,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzC,QAAQ,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAA;IAC/F,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAA;IAC5D,OAAO;QACL,QAAQ,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,IAAI,IAAI,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE;QAC9F,QAAQ,EAAE,EAAE;KACb,CAAA;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW,CAAC,QAAuB,EAAE,EAAQ;IAC3D,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;IACzC,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YACvC,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;YAC1B,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAA,CAAC,6CAA6C;YAC5E,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAA;YAClB,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;YAClF,CAAC;YACD,gEAAgE;YAChE,OAAO,CACL,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;gBACxD,CAAC,GAAG,CAAC,OAAO,GAAG,CAAC;oBACd,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAC5E,CAAA;QACH,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,IAAI;YAAE,OAAO,KAAK,CAAA;IACzB,CAAC;SAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;QAC/C,2DAA2D;QAC3D,OAAO,KAAK,CAAA;IACd,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;QAC9B,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;YAC1C,MAAM,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;YAC1B,IAAI,GAAG,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAA;YAC9B,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAA;YAClB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,IAAI,GAAG,CAAC,OAAO,GAAG,CAAC,CAAA;QAC1F,CAAC,CAAC,CAAA;QACF,IAAI,OAAO;YAAE,OAAO,KAAK,CAAA;IAC3B,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED,mFAAmF;AACnF,SAAS,OAAO,CAAC,GAAW,EAAE,IAAY;IACxC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAA;IACnE,MAAM,EAAE,GAAG,CAAC,CAAC,cAAc,EAAE,CAAA;IAC7B,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACvD,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAClD,OAAO,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAA;AAC5B,CAAC;AAED;;wEAEwE;AACxE,SAAS,UAAU,CAAC,EAAU,EAAE,GAAW;IACzC,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;IAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IACvD,IAAI,EAAE,GAAG,IAAI,GAAG,UAAU,CAAA;IAC1B,IAAI,EAAE,GAAG,IAAI,GAAG,UAAU,CAAA;IAC1B,OAAO,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;QAC1C,IAAI,MAAM,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG;YAAE,EAAE,GAAG,GAAG,CAAA;;YAC5C,EAAE,GAAG,GAAG,CAAA;IACf,CAAC;IACD,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC,CAAA;AACxD,CAAC;AAED;;wDAEwD;AACxD,SAAS,cAAc,CACrB,EAAU,EACV,GAAS,EACT,GAAW;IAEX,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAA;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,UAAU,CAAA;IACxC,MAAM,CAAC,GAAG,MAAM,CAAC,EAAE,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;IACrC,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,IAAI,CAAC,CAAC,OAAO,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,CAAA;IAClE,CAAC;IACD,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAA;IACrC,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,CAAA;AACrE,CAAC;AAED;;4BAE4B;AAC5B,SAAS,UAAU,CAAC,QAAuB,EAAE,GAAW;IACtD,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAC;QAAE,OAAO,IAAI,CAAA;IAC/C,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;QAAE,OAAO,KAAK,CAAA;IAC3C,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/D,IAAI,CAAC,WAAW;QAAE,OAAO,KAAK,CAAA;IAC9B,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;QACjC,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;QACxB,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;6DAC6D;AAC7D,SAAS,gBAAgB,CACvB,QAAuB,EACvB,GAAS,EACT,WAAqB,EACrB,KAAa,EACb,UAAkB;IAElB,MAAM,OAAO,GAAG,CAAC,CAAC,EAAE,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC1D,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,MAAM,CAAC,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,MAAM,CAAA;QACpC,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,UAAU;YAAE,SAAQ;QACzC,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;6CAE6C;AAC7C,SAAS,iBAAiB,CACxB,QAAuB,EACvB,EAAQ,EACR,EAAQ,EACR,KAAa,EACb,UAAkB;IAElB,KAAK,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,MAAM,EAAE,CAAC;QACzD,IAAI,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,UAAU;YAAE,SAAQ;QACzC,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;YAAE,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,aAAa,CAAC,QAAuB,EAAE,IAAU;IAC/D,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,GAAG,CAAA;QACjD,wEAAwE;QACxE,oEAAoE;QACpE,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAA;QAC1F,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,OAAO,CAAC;YAAE,OAAO,IAAI,CAAA;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAA;IACnE,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,MAAM,CAAA;IACvD,IAAI,WAAW,CAAC,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;QAAE,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAA;IAElE,wEAAwE;IACxE,0EAA0E;IAC1E,uBAAuB;IACvB,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;IAC/B,KAAK,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QAC3E,MAAM,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;QACxB,IAAI,CAAC,KAAK,IAAI,EAAE,CAAC;YACf,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACf,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAEpD,sEAAsE;IACtE,IAAI,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,GAAG,CAAA;IAC7C,IAAI,GAAG,GAAG,UAAU,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC5C,SAAS,CAAC;QACR,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,UAAU;YAAE,OAAO,IAAI,CAAA;QAC3C,sEAAsE;QACtE,wEAAwE;QACxE,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;QACxD,IAAI,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU;gBAC3B,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,UAAU,CAAC;gBAC/D,CAAC,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,CAAC,CAAA;YACnE,IAAI,KAAK,KAAK,IAAI;gBAAE,OAAO,KAAK,CAAA;QAClC,CAAC;QACD,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;QACd,GAAG,GAAG,IAAI,CAAC,GAAG,CAAA;IAChB,CAAC;AACH,CAAC;AAED;;8DAE8D;AAC9D,MAAM,UAAU,mBAAmB,CACjC,QAA0C,EAC1C,WAAmB,eAAe,EAAE;IAEpC,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,KAAK,SAAS;QAAE,OAAO,GAAG,CAAA;IAC3D,MAAM,SAAS,GACb,QAAQ,CAAC,IAAI,KAAK,IAAI;QACpB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,QAAQ,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS;YAC3D,CAAC,CAAC,QAAQ,CAAC,IAAI;YACf,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC/B,MAAM,UAAU,GACd,QAAQ,CAAC,OAAO,KAAK,IAAI,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI;QACpD,CAAC,CAAC,SAAS;QACX,CAAC,CAAC;YACE,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;YACzC,GAAG,CAAC,QAAQ,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;SAChD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAClB,MAAM,IAAI,GAAG,GAAG,SAAS,IAAI,UAAU,EAAE,CAAA;IACzC,OAAO,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,IAAI,CAAA;AAC/E,CAAC"}