@energy8platform/game-engine 0.34.2 → 0.35.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 (45) hide show
  1. package/dist/audio.cjs.js +114 -59
  2. package/dist/audio.cjs.js.map +1 -1
  3. package/dist/audio.d.ts +25 -0
  4. package/dist/audio.esm.js +114 -59
  5. package/dist/audio.esm.js.map +1 -1
  6. package/dist/core.cjs.js +222 -66
  7. package/dist/core.cjs.js.map +1 -1
  8. package/dist/core.d.ts +25 -0
  9. package/dist/core.esm.js +223 -67
  10. package/dist/core.esm.js.map +1 -1
  11. package/dist/flow.cjs.js +246 -0
  12. package/dist/flow.cjs.js.map +1 -1
  13. package/dist/flow.d.ts +192 -33
  14. package/dist/flow.esm.js +238 -1
  15. package/dist/flow.esm.js.map +1 -1
  16. package/dist/host.cjs.js +343 -82
  17. package/dist/host.cjs.js.map +1 -1
  18. package/dist/host.d.ts +82 -2
  19. package/dist/host.esm.js +344 -83
  20. package/dist/host.esm.js.map +1 -1
  21. package/dist/index.cjs.js +222 -66
  22. package/dist/index.cjs.js.map +1 -1
  23. package/dist/index.d.ts +72 -0
  24. package/dist/index.esm.js +223 -67
  25. package/dist/index.esm.js.map +1 -1
  26. package/dist/scene-devtools.cjs.js +529 -115
  27. package/dist/scene-devtools.cjs.js.map +1 -1
  28. package/dist/scene-devtools.d.ts +187 -34
  29. package/dist/scene-devtools.esm.js +529 -115
  30. package/dist/scene-devtools.esm.js.map +1 -1
  31. package/dist/scene.cjs.js +704 -46
  32. package/dist/scene.cjs.js.map +1 -1
  33. package/dist/scene.d.ts +228 -41
  34. package/dist/scene.esm.js +698 -47
  35. package/dist/scene.esm.js.map +1 -1
  36. package/package.json +2 -2
  37. package/src/audio/AudioManager.ts +111 -53
  38. package/src/core/GameApplication.ts +47 -5
  39. package/src/host/buildConfig.ts +17 -4
  40. package/src/host/createSlotGame.ts +114 -12
  41. package/src/host/index.ts +3 -0
  42. package/src/host/types.ts +58 -0
  43. package/src/loading/LoadingScene.ts +76 -2
  44. package/src/loading/index.ts +6 -0
  45. package/src/types.ts +2 -0
package/dist/flow.esm.js CHANGED
@@ -383,6 +383,12 @@ function formatValue(value, format) {
383
383
  }
384
384
  const tweenStep = {
385
385
  kind: 'tween',
386
+ schema: {
387
+ node: { kind: 'nodeRef', doc: 'Scene node to animate.', order: 1 },
388
+ to: { kind: 'json', doc: 'Target numeric view props, e.g. {"alpha":1,"y":40}.', order: 10 },
389
+ ms: { kind: 'number', doc: 'Duration; scaled by turbo, zero under skip.', default: 300, min: 0, step: 10, order: 20 },
390
+ ease: { kind: 'text', doc: 'Easing name from the Easing table.', default: 'linear', order: 30 },
391
+ },
386
392
  agentDoc: 'Animate numeric view properties of a scene node (alpha, x, y, rotation; scale animates both axes). Transient — the doc is untouched, and any relayout (setVar/setState/resize) re-asserts layout-owned props (x/y/scale/rotation) from the doc. Persist a move via a set-layout patch, not a tween. Turbo divides ms; skip jumps to the end values.',
387
393
  async run(raw, rt) {
388
394
  const step = raw;
@@ -421,6 +427,10 @@ const tweenStep = {
421
427
  };
422
428
  const soundStep = {
423
429
  kind: 'sound',
430
+ schema: {
431
+ cue: { kind: 'enum', doc: 'A cue declared in the doc\'s `cues`.', options: [], order: 1 },
432
+ action: { kind: 'enum', options: ['play', 'stop'], default: 'play', order: 10 },
433
+ },
424
434
  agentDoc: 'Play/stop a cue from flow.cues (rotation/jitter handled by the runner). Never reference audio files directly.',
425
435
  run(raw, rt) {
426
436
  const step = raw;
@@ -429,6 +439,10 @@ const soundStep = {
429
439
  };
430
440
  const setStateStep = {
431
441
  kind: 'setState',
442
+ schema: {
443
+ node: { kind: 'nodeRef', doc: 'Node whose named variant changes.', order: 1 },
444
+ state: { kind: 'text', doc: 'A state declared on that node; empty clears it.', order: 10 },
445
+ },
432
446
  agentDoc: "Switch a node's named state (frame anticipation/bonus look). Same operation the inspector and agent use.",
433
447
  run(raw, rt) {
434
448
  const step = raw;
@@ -437,6 +451,10 @@ const setStateStep = {
437
451
  };
438
452
  const setVarStep = {
439
453
  kind: 'setVar',
454
+ schema: {
455
+ name: { kind: 'text', doc: 'Runtime var name (drives visibleWhen).', order: 1 },
456
+ value: { kind: 'text', doc: 'Literal, or a $ctx reference.', order: 10 },
457
+ },
440
458
  agentDoc: "Set a runtime var driving visibleWhen (e.g. mode). Use for mode transitions ('setVar mode free_spins').",
441
459
  run(raw, rt) {
442
460
  const step = raw;
@@ -445,6 +463,10 @@ const setVarStep = {
445
463
  };
446
464
  const setPropsStep = {
447
465
  kind: 'setProps',
466
+ schema: {
467
+ node: { kind: 'nodeRef', order: 1 },
468
+ props: { kind: 'json', doc: 'Props to merge onto the node.', order: 10 },
469
+ },
448
470
  agentDoc: 'Transient prop write on the live instance (badge values, board swaps during presentation). The scene doc is NOT modified.',
449
471
  run(raw, rt) {
450
472
  const step = raw;
@@ -473,6 +495,14 @@ function findDocNode(rt, id) {
473
495
  }
474
496
  const countUpStep = {
475
497
  kind: 'countUp',
498
+ schema: {
499
+ node: { kind: 'nodeRef', doc: 'Node holding the number (a text or a prefab).', order: 1 },
500
+ prop: { kind: 'text', default: 'value', order: 5 },
501
+ from: { kind: 'text', doc: 'Start value; literal or $ctx. Defaults to the current one.', order: 10 },
502
+ to: { kind: 'text', doc: 'End value; literal or $ctx (e.g. $win).', order: 11 },
503
+ ms: { kind: 'number', default: 1000, min: 0, step: 50, order: 20 },
504
+ format: { kind: 'enum', options: ['int', 'space'], order: 30 },
505
+ },
476
506
  agentDoc: "Animated number roll on an instance prop (default 'value' — badge prefabs). `to` may be '$win' (ctx ref). Turbo shortens, skip jumps to the final value.",
477
507
  async run(raw, rt) {
478
508
  const step = raw;
@@ -500,6 +530,10 @@ const countUpStep = {
500
530
  };
501
531
  const waitStep = {
502
532
  kind: 'wait',
533
+ schema: {
534
+ ms: { kind: 'number', doc: 'Pause; scaled by turbo, released by skip.', default: 300, min: 0, step: 10, order: 1 },
535
+ until: { kind: 'enum', doc: "'tap' waits for the player instead of a duration.", options: ['tap'], order: 10 },
536
+ },
503
537
  agentDoc: "Pause: {ms} (turbo-scaled) or {until:'tap'} (released by tap or skip). Prefer explicit waits over baking delays into tweens.",
504
538
  async run(raw, rt) {
505
539
  const step = raw;
@@ -510,6 +544,9 @@ const waitStep = {
510
544
  };
511
545
  const ifStep = {
512
546
  kind: 'if',
547
+ schema: {
548
+ when: { kind: 'text', doc: 'Guard: `<ctxField> <op> <literal>`, e.g. `win >= 20`.', order: 1 },
549
+ },
513
550
  agentDoc: "Branch on the fire() ctx: {when:'win >= 100', then:[…], else:[…]}. Bare name = truthy check.",
514
551
  async run(raw, rt) {
515
552
  const step = raw;
@@ -518,6 +555,7 @@ const ifStep = {
518
555
  };
519
556
  const parallelStep = {
520
557
  kind: 'parallel',
558
+ schema: {},
521
559
  agentDoc: 'Run tracks concurrently and await them all: {steps: [[…], […]]}. Each track is an independent sequence.',
522
560
  async run(raw, rt) {
523
561
  const step = raw;
@@ -526,6 +564,7 @@ const parallelStep = {
526
564
  };
527
565
  const seqStep = {
528
566
  kind: 'seq',
567
+ schema: {},
529
568
  agentDoc: 'Nested sequence (grouping inside parallel tracks).',
530
569
  async run(raw, rt) {
531
570
  const step = raw;
@@ -534,6 +573,12 @@ const seqStep = {
534
573
  };
535
574
  const forEachStep = {
536
575
  kind: 'forEach',
576
+ schema: {
577
+ items: { kind: 'text', doc: 'A $ctx array to walk, e.g. $cascadeSteps.', order: 1 },
578
+ as: { kind: 'text', doc: 'Name each element binds to inside ($item by default).', default: 'item', order: 10 },
579
+ mode: { kind: 'enum', options: ['sequential', 'parallel'], default: 'sequential', order: 20 },
580
+ staggerMs: { kind: 'number', doc: 'Delay between elements.', default: 0, min: 0, step: 10, order: 30 },
581
+ },
537
582
  agentDoc: "Fan out over a ctx collection: {items:'$jars', as:'jar', mode:'parallel', staggerMs:90, steps:[…]}. Nested steps read `$jar` / `$jarIndex`. THE primitive for staggered jar flights, per-cell transmutes, cascade histories — validated on 3 games.",
538
583
  async run(raw, rt) {
539
584
  const step = raw;
@@ -561,6 +606,10 @@ const forEachStep = {
561
606
  };
562
607
  const codeStep = {
563
608
  kind: 'code',
609
+ schema: {
610
+ ref: { kind: 'text', doc: 'Key in the host-provided `code` map — the escape hatch.', order: 1 },
611
+ args: { kind: 'json', order: 10 },
612
+ },
564
613
  agentDoc: 'Escape hatch: named choreography registered in createFlowRunner({code}). Use when the step vocabulary genuinely cannot express it — then consider a plugin step.',
565
614
  async run(raw, rt) {
566
615
  const step = raw;
@@ -585,6 +634,185 @@ const BUILTIN_FLOW_STEPS = [
585
634
  codeStep,
586
635
  ];
587
636
 
637
+ // Flow as a graph: stable step ids, and the layout that turns a flow event into nodes and
638
+ // edges for the canvas editor.
639
+ //
640
+ // The IR is a TREE (a step list, with `seq`/`parallel`/`if`/`forEach` nesting more lists),
641
+ // not a free DAG — control flow is strictly structural, there are no jumps. So the canvas
642
+ // draws a nested flow diagram rather than a general node soup: consecutive steps chain
643
+ // left to right, and a container is a box its children are laid out inside. That is the
644
+ // honest picture of what actually runs; a flat DAG would have to invent joins the runtime
645
+ // does not have.
646
+ //
647
+ // Layout is automatic by default so an existing flow.json opens as a readable graph with
648
+ // no migration. A step only gets `ui: {x, y}` once someone drags it.
649
+ /** Child lists a container step owns, by kind. `parallel` holds a list PER track. */
650
+ function containerTracks(step) {
651
+ const kind = step.do;
652
+ if (kind === 'parallel') {
653
+ const tracks = step.steps;
654
+ return Array.isArray(tracks) && Array.isArray(tracks[0]) ? tracks : [];
655
+ }
656
+ if (kind === 'seq' || kind === 'forEach') {
657
+ const list = step.steps;
658
+ return Array.isArray(list) ? [list] : [];
659
+ }
660
+ if (kind === 'if') {
661
+ const s = step;
662
+ return [s.then ?? [], s.else ?? []];
663
+ }
664
+ return [];
665
+ }
666
+ /** Human label for a container's Nth track (`if` branches are then/else, parallel is 1..N). */
667
+ function trackLabel(step, index) {
668
+ if (step.do === 'if')
669
+ return index === 0 ? 'then' : 'else';
670
+ if (step.do === 'parallel')
671
+ return `track ${index + 1}`;
672
+ return '';
673
+ }
674
+ const isContainer = (step) => containerTracks(step).length > 0;
675
+ /**
676
+ * Give every step a stable id, in place-ish (returns the same doc object). Ids are only
677
+ * assigned where missing, so re-running is a no-op and saved ids survive.
678
+ */
679
+ function ensureStepIds(doc, prefix = 's') {
680
+ const used = new Set();
681
+ const collect = (list) => {
682
+ for (const step of list) {
683
+ if (typeof step.id === 'string')
684
+ used.add(step.id);
685
+ for (const track of containerTracks(step))
686
+ collect(track);
687
+ }
688
+ };
689
+ for (const list of Object.values(doc.on))
690
+ collect(list);
691
+ let n = 0;
692
+ const fresh = () => {
693
+ let id;
694
+ do {
695
+ id = `${prefix}${++n}`;
696
+ } while (used.has(id));
697
+ used.add(id);
698
+ return id;
699
+ };
700
+ const assign = (list) => {
701
+ for (const step of list) {
702
+ if (typeof step.id !== 'string' || step.id === '')
703
+ step.id = fresh();
704
+ for (const track of containerTracks(step))
705
+ assign(track);
706
+ }
707
+ };
708
+ for (const list of Object.values(doc.on))
709
+ assign(list);
710
+ return doc;
711
+ }
712
+ /** Find a step by id, with the list and index that hold it (so edits can splice). */
713
+ function locateStep(doc, id) {
714
+ for (const [event, list] of Object.entries(doc.on)) {
715
+ const hit = search(list, id, event);
716
+ if (hit)
717
+ return hit;
718
+ }
719
+ return undefined;
720
+ }
721
+ function search(list, id, event) {
722
+ for (let i = 0; i < list.length; i++) {
723
+ const step = list[i];
724
+ if (step.id === id)
725
+ return { step, list, index: i, event };
726
+ for (const track of containerTracks(step)) {
727
+ const hit = search(track, id, event);
728
+ if (hit)
729
+ return hit;
730
+ }
731
+ }
732
+ return undefined;
733
+ }
734
+ const NODE_W = 168;
735
+ const NODE_H = 44;
736
+ const GAP_X = 56;
737
+ const GAP_Y = 26;
738
+ const PAD = 18; // inside a container box
739
+ const HEADER = 26; // container title strip
740
+ /**
741
+ * Lay one event out left-to-right. Containers are measured from their contents, so a
742
+ * `parallel` with two long tracks grows tall and wide instead of overlapping its siblings.
743
+ */
744
+ function layoutEvent(doc, event) {
745
+ const nodes = [];
746
+ const edges = [];
747
+ /** Lay out a chain starting at (ox, oy); returns the box it occupies. */
748
+ const layoutList = (list, ox, oy, depth, parentId, track) => {
749
+ let x = ox;
750
+ let maxH = 0;
751
+ let prevId;
752
+ for (const step of list) {
753
+ const id = step.id ?? '?';
754
+ const tracks = containerTracks(step);
755
+ let w = NODE_W;
756
+ let h = NODE_H;
757
+ if (tracks.length > 0) {
758
+ // Measure the children first: a container is as big as what it holds.
759
+ let innerH = 0;
760
+ let innerW = 0;
761
+ const childY = oy + HEADER + PAD;
762
+ for (let t = 0; t < tracks.length; t++) {
763
+ const box = layoutList(tracks[t], x + PAD, childY + innerH, depth + 1, id, trackLabel(step, t));
764
+ innerW = Math.max(innerW, box.width);
765
+ innerH += box.height + (t < tracks.length - 1 ? GAP_Y : 0);
766
+ const first = tracks[t][0];
767
+ if (first?.id)
768
+ edges.push({ from: id, to: first.id, kind: 'into', label: trackLabel(step, t) });
769
+ }
770
+ w = Math.max(NODE_W, innerW + PAD * 2);
771
+ h = HEADER + PAD + Math.max(NODE_H, innerH) + PAD;
772
+ }
773
+ const pinned = !!step.ui;
774
+ nodes.push({
775
+ id,
776
+ kind: step.do,
777
+ step,
778
+ x: step.ui?.x ?? x,
779
+ y: step.ui?.y ?? oy,
780
+ width: w,
781
+ height: h,
782
+ depth,
783
+ parentId,
784
+ track,
785
+ container: tracks.length > 0,
786
+ pinned,
787
+ });
788
+ if (prevId)
789
+ edges.push({ from: prevId, to: id, kind: 'next' });
790
+ prevId = id;
791
+ x += w + GAP_X;
792
+ maxH = Math.max(maxH, h);
793
+ }
794
+ return { width: Math.max(0, x - ox - GAP_X), height: maxH };
795
+ };
796
+ const box = layoutList(doc.on[event] ?? [], 0, 0, 0, undefined, undefined);
797
+ const right = nodes.reduce((m, n) => Math.max(m, n.x + n.width), box.width);
798
+ const bottom = nodes.reduce((m, n) => Math.max(m, n.y + n.height), box.height);
799
+ return { nodes, edges, width: right, height: bottom };
800
+ }
801
+ /** One-line summary of a step's most telling fields, for the node body. */
802
+ function summarize(step) {
803
+ const keys = ['node', 'cue', 'state', 'when', 'items', 'name', 'ref', 'to', 'ms'];
804
+ const parts = [];
805
+ for (const key of keys) {
806
+ const value = step[key];
807
+ if (value === undefined || value === null || typeof value === 'object')
808
+ continue;
809
+ parts.push(`${key}:${String(value)}`);
810
+ if (parts.length === 2)
811
+ break;
812
+ }
813
+ return parts.join(' ');
814
+ }
815
+
588
816
  // Flow-IR interpreter: createFlowRunner(flowDoc, { scene, … }).fire(event, ctx) executes
589
817
  // the event's steps and returns a Trace.
590
818
  //
@@ -626,6 +854,8 @@ function validateFlowDoc(doc, registry) {
626
854
  function createFlowRunner(doc, opts) {
627
855
  const log = opts.log ?? ((msg) => console.warn(`[flow] ${msg}`));
628
856
  const registry = createFlowStepRegistry(opts.plugins ?? [], BUILTIN_FLOW_STEPS);
857
+ // Hand-written docs omit ids; assign them once so traces and the canvas can address steps.
858
+ ensureStepIds(doc);
629
859
  const errors = validateFlowDoc(doc, registry);
630
860
  if (errors.length > 0)
631
861
  throw new Error(`flow doc "${doc.id}" is invalid:\n ${errors.join('\n ')}`);
@@ -733,6 +963,9 @@ function createFlowRunner(doc, opts) {
733
963
  continue; // validated; defensive
734
964
  trace({
735
965
  do: step.do,
966
+ // Which step this came from, so the canvas can highlight it and a scrub can
967
+ // point at it — `do` alone cannot tell two identical tweens apart.
968
+ stepId: typeof step.id === 'string' ? step.id : undefined,
736
969
  node: typeof step.node === 'string' ? step.node : undefined,
737
970
  });
738
971
  // trace() may flip `halted` on THIS entry — the halting step still executes
@@ -798,6 +1031,10 @@ function createFlowRunner(doc, opts) {
798
1031
  };
799
1032
  return {
800
1033
  fire,
1034
+ stepKinds: () => registry.kinds().map((kind) => {
1035
+ const c = registry.step(kind);
1036
+ return { kind, schema: c?.schema, agentDoc: c?.agentDoc };
1037
+ }),
801
1038
  replay(event, untilEntry) {
802
1039
  const ctx = lastCtx.get(event);
803
1040
  if (!ctx)
@@ -830,5 +1067,5 @@ function createFlowRunner(doc, opts) {
830
1067
  };
831
1068
  }
832
1069
 
833
- export { BUILTIN_FLOW_STEPS, createFlowRunner, createFlowStepRegistry, validateFlowDoc };
1070
+ export { BUILTIN_FLOW_STEPS, NODE_H, NODE_W, containerTracks, createFlowRunner, createFlowStepRegistry, ensureStepIds, isContainer, layoutEvent, locateStep, summarize, trackLabel, validateFlowDoc };
834
1071
  //# sourceMappingURL=flow.esm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"flow.esm.js","sources":["../src/flow/registry.ts","../src/scene/layout.ts","../src/animation/Easing.ts","../src/animation/Tween.ts","../src/slot/anim/easing-map.ts","../src/flow/steps.ts","../src/flow/runner.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"flow.esm.js","sources":["../src/flow/registry.ts","../src/scene/layout.ts","../src/animation/Easing.ts","../src/animation/Tween.ts","../src/slot/anim/easing-map.ts","../src/flow/steps.ts","../src/flow/graph.ts","../src/flow/runner.ts"],"sourcesContent":[null,null,null,null,null,null,null,null],"names":[],"mappings":";;AAAA;AACA;AACA;SAyBgB,sBAAsB,CACpC,UAAwB,EAAE,EAC1B,WAAmC,EAAE,EAAA;AAErC,IAAA,MAAM,KAAK,GAAG,IAAI,GAAG,EAAgC;IACrD,KAAK,MAAM,YAAY,IAAI,QAAQ;QAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;AAC/E,IAAA,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;AAC5B,QAAA,KAAK,MAAM,YAAY,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE;YAAE,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,YAAY,CAAC;IAC3F;IACA,OAAO;QACL,IAAI,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC;QAC/B,KAAK,EAAE,MAAM,CAAC,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;KAC/B;AACH;;ACxCA;AACA;AACA;AACA;AACA;AACA;AA2SA;;;;AAIG;AACG,SAAU,eAAe,CAAC,IAAY,EAAE,IAA6B,EAAA;IACzE,MAAM,CAAC,GAAG,0DAA0D,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/E,IAAA,IAAI,CAAC,CAAC;AAAE,QAAA,OAAO,SAAS;IACxB,MAAM,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC;AAC9B,IAAA,IAAI,GAAY;AAChB,IAAA,IAAI;AACF,QAAA,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACvD;AAAE,IAAA,MAAM;AACN,QAAA,OAAO,SAAS;IAClB;AACA,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;IACxB,QAAQ,EAAE;AACR,QAAA,KAAK,KAAK;YACR,OAAO,KAAK,KAAK,GAAG;AACtB,QAAA,KAAK,KAAK;YACR,OAAO,KAAK,KAAK,GAAG;AACtB,QAAA,KAAK,IAAI;YACP,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC;AACrC,QAAA,KAAK,IAAI;YACP,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC;AACrC,QAAA,KAAK,GAAG;YACN,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;AACpC,QAAA,KAAK,GAAG;YACN,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC;;AAEtC,IAAA,OAAO,SAAS;AAClB;;AC7UA;;;;AAIG;AACI,MAAM,MAAM,GAyBf;AACF,IAAA,MAAM,EAAE,CAAC,CAAS,KAAK,CAAC;IAExB,UAAU,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,CAAC;AAChC,IAAA,WAAW,EAAE,CAAC,CAAS,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACvC,IAAA,aAAa,EAAE,CAAC,CAAS,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAE1E,WAAW,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;AACrC,IAAA,YAAY,EAAE,CAAC,CAAS,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;IAC5C,cAAc,EAAE,CAAC,CAAS,KACxB,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AAEnE,IAAA,WAAW,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AACzC,IAAA,YAAY,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;AAChD,IAAA,cAAc,EAAE,CAAC,CAAS,KACxB,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;IAEvD,UAAU,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;AAC1D,IAAA,WAAW,EAAE,CAAC,CAAS,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;IACvD,aAAa,EAAE,CAAC,CAAS,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC;AAE9D,IAAA,UAAU,EAAE,CAAC,CAAS,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;AACnE,IAAA,WAAW,EAAE,CAAC,CAAS,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACpE,aAAa,EAAE,CAAC,CAAS,KACvB,CAAC,KAAK;AACJ,UAAE;UACA,CAAC,KAAK;AACN,cAAE;cACA,CAAC,GAAG;AACJ,kBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG;AAC7B,kBAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;AAE7C,IAAA,UAAU,EAAE,CAAC,CAAS,KAAI;QACxB,MAAM,EAAE,GAAG,OAAO;AAClB,QAAA,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC;AACjB,QAAA,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC;IACpC,CAAC;AACD,IAAA,WAAW,EAAE,CAAC,CAAS,KAAI;QACzB,MAAM,EAAE,GAAG,OAAO;AAClB,QAAA,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC9D,CAAC;AACD,IAAA,aAAa,EAAE,CAAC,CAAS,KAAI;QAC3B,MAAM,EAAE,GAAG,OAAO;AAClB,QAAA,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK;QACrB,OAAO,CAAC,GAAG;AACT,cAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI;AACnD,cAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC;IACtE,CAAC;AAED,IAAA,aAAa,EAAE,CAAC,CAAS,KAAI;QAC3B,MAAM,EAAE,GAAG,MAAM;QACjB,MAAM,EAAE,GAAG,IAAI;AACf,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;AAAE,YAAA,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC;AACjC,QAAA,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE;AAAE,YAAA,OAAO,EAAE,IAAI,CAAC,IAAI,GAAG,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI;AACtD,QAAA,IAAI,CAAC,GAAG,GAAG,GAAG,EAAE;AAAE,YAAA,OAAO,EAAE,IAAI,CAAC,IAAI,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,MAAM;AAC3D,QAAA,OAAO,EAAE,IAAI,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,QAAQ;IAC9C,CAAC;AAED,IAAA,YAAY,EAAE,CAAC,CAAS,KAAK,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC;IAE5D,eAAe,EAAE,CAAC,CAAS,KACzB,CAAC,GAAG;AACF,UAAE,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI;AAC1C,UAAE,CAAC,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;AAE/C,IAAA,cAAc,EAAE,CAAC,CAAS,KAAI;QAC5B,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC;QAC5B,OAAO,CAAC,KAAK;AACX,cAAE;cACA,CAAC,KAAK;AACN,kBAAE;AACF,kBAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,GAAG,CAAC;IACjE,CAAC;AAED,IAAA,aAAa,EAAE,CAAC,CAAS,KAAI;QAC3B,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC;QAC5B,OAAO,CAAC,KAAK;AACX,cAAE;cACA,CAAC,KAAK;AACN,kBAAE;AACF,kBAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;IACnE,CAAC;CACF;;ACnGD;;;;;;;;;;;;;;;;;AAiBG;MACU,KAAK,CAAA;AACR,IAAA,OAAO,OAAO,GAAkB,EAAE;AAClC,IAAA,OAAO,YAAY,GAAG,KAAK;AAEnC;;;;;;;;AAQG;IACH,OAAO,EAAE,CACP,MAAW,EACX,KAA6B,EAC7B,QAAgB,EAChB,MAAuB,EACvB,QAAqC,EAAA;;;AAIrC,QAAA,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS;AAAE,YAAA,OAAO,OAAO,CAAC,OAAO,EAAE;AAChE,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;;YAE7B,MAAM,IAAI,GAA2B,EAAE;YACvC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACpC,gBAAA,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC;YAC5C;AAEA,YAAA,MAAM,KAAK,GAAgB;gBACzB,MAAM;gBACN,IAAI;AACJ,gBAAA,EAAE,EAAE,EAAE,GAAG,KAAK,EAAE;gBAChB,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,CAAC;AAC/B,gBAAA,MAAM,EAAE,MAAM,IAAI,MAAM,CAAC,WAAW;AACpC,gBAAA,OAAO,EAAE,CAAC;AACV,gBAAA,KAAK,EAAE,CAAC;gBACR,OAAO;gBACP,QAAQ;aACT;AAED,YAAA,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,KAAK,CAAC,YAAY,EAAE;AACtB,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACH,OAAO,IAAI,CACT,MAAW,EACX,KAA6B,EAC7B,QAAgB,EAChB,MAAuB,EACvB,QAAqC,EAAA;AAErC,QAAA,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS;AAAE,YAAA,OAAO,OAAO,CAAC,OAAO,EAAE;;QAEhE,MAAM,EAAE,GAA2B,EAAE;QACrC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AACpC,YAAA,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,CAAC;AACxC,YAAA,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC5C;AAEA,QAAA,OAAO,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;IACzD;AAEA;;AAEG;AACH,IAAA,OAAO,MAAM,CACX,MAAW,EACX,SAAiC,EACjC,OAA+B,EAC/B,QAAgB,EAChB,MAAuB,EACvB,QAAqC,EAAA;AAErC,QAAA,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS;AAAE,YAAA,OAAO,OAAO,CAAC,OAAO,EAAE;;QAEhE,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AACxC,YAAA,KAAK,CAAC,WAAW,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QAChD;AAEA,QAAA,OAAO,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC;IAC9D;AAEA;;;AAGG;IACH,OAAO,KAAK,CAAC,EAAU,EAAA;AACrB,QAAA,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,KAAI;YAC7B,IAAI,OAAO,GAAG,CAAC;AACf,YAAA,MAAM,MAAM,GAAG,CAAC,MAAc,KAAI;AAChC,gBAAA,OAAO,IAAI,MAAM,CAAC,OAAO;AACzB,gBAAA,IAAI,OAAO,IAAI,EAAE,EAAE;AACjB,oBAAA,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;AAC5B,oBAAA,OAAO,EAAE;gBACX;AACF,YAAA,CAAC;AACD,YAAA,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;AAC3B,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;IACH,OAAO,YAAY,CAAC,MAAW,EAAA;AAC7B,QAAA,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,KAAI;AAC1C,YAAA,IAAI,EAAE,CAAC,MAAM,KAAK,MAAM,EAAE;gBACxB,EAAE,CAAC,OAAO,EAAE;AACZ,gBAAA,OAAO,KAAK;YACd;AACA,YAAA,OAAO,IAAI;AACb,QAAA,CAAC,CAAC;IACJ;AAEA;;AAEG;AACH,IAAA,OAAO,OAAO,GAAA;AACZ,QAAA,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE;YAC9B,EAAE,CAAC,OAAO,EAAE;QACd;AACA,QAAA,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;IAC1B;;AAGA,IAAA,WAAW,YAAY,GAAA;AACrB,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM;IAC7B;AAEA;;;AAGG;AACH,IAAA,OAAO,KAAK,GAAA;AACV,QAAA,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE;YAC9B,EAAE,CAAC,OAAO,EAAE;QACd;AACA,QAAA,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;AACxB,QAAA,IAAI,KAAK,CAAC,YAAY,EAAE;YACtB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;AAChC,YAAA,KAAK,CAAC,YAAY,GAAG,KAAK;QAC5B;IACF;;AAIQ,IAAA,OAAO,YAAY,GAAA;QACzB,IAAI,KAAK,CAAC,YAAY;YAAE;AACxB,QAAA,KAAK,CAAC,YAAY,GAAG,IAAI;QACzB,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;IAC/B;AAEQ,IAAA,OAAO,IAAI,GAAG,CAAC,MAAc,KAAU;AAC7C,QAAA,MAAM,EAAE,GAAG,MAAM,CAAC,OAAO;QACzB,MAAM,SAAS,GAAkB,EAAE;AAEnC,QAAA,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE;;AAE9B,YAAA,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE;AACxB,gBAAA,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAClB;YACF;AACA,YAAA,EAAE,CAAC,OAAO,IAAI,EAAE;AAEhB,YAAA,IAAI,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,KAAK;gBAAE;YAE3B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,OAAO,GAAG,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC;;AAGxB,YAAA,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;gBACpC,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC;gBAC1B,MAAM,GAAG,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC;gBACtB,MAAM,KAAK,GAAG,KAAK,GAAG,CAAC,GAAG,GAAG,KAAK,IAAI,CAAC;gBACvC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,KAAK,CAAC;YAC1C;AAEA,YAAA,EAAE,CAAC,QAAQ,GAAG,GAAG,CAAC;AAElB,YAAA,IAAI,GAAG,IAAI,CAAC,EAAE;AACZ,gBAAA,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;YACpB;QACF;;AAGA,QAAA,KAAK,MAAM,EAAE,IAAI,SAAS,EAAE;YAC1B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACrC,IAAI,GAAG,KAAK,EAAE;gBAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAC5C,EAAE,CAAC,OAAO,EAAE;QACd;;AAGA,QAAA,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,YAAY,EAAE;YACpD,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;AAChC,YAAA,KAAK,CAAC,YAAY,GAAG,KAAK;QAC5B;AACF,IAAA,CAAC;AAED;;AAEG;AACK,IAAA,OAAO,WAAW,CAAC,MAAW,EAAE,GAAW,EAAA;QACjD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5B,IAAI,GAAG,GAAG,MAAM;AAChB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB;AACA,QAAA,OAAO,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C;AAEA;;AAEG;AACK,IAAA,OAAO,WAAW,CAAC,MAAW,EAAE,GAAW,EAAE,KAAa,EAAA;QAChE,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;QAC5B,IAAI,GAAG,GAAG,MAAM;AAChB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACzC,GAAG,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACvB;QACA,IAAI,GAAG,IAAI,IAAI;YAAE;AACjB,QAAA,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK;IACtC;;;ACpQF;AAIA;AACO,MAAM,cAAc,GAAmC;IAC5D,MAAM,EAAE,MAAM,CAAC,MAAM;IACrB,UAAU,EAAE,MAAM,CAAC,UAAU;IAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;IACnC,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,YAAY,EAAE,MAAM,CAAC,YAAY;IACjC,cAAc,EAAE,MAAM,CAAC,cAAc;IACrC,UAAU,EAAE,MAAM,CAAC,UAAU;IAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;IACnC,aAAa,EAAE,MAAM,CAAC,aAAa;IACnC,YAAY,EAAE,MAAM,CAAC,YAAY;IACjC,cAAc,EAAE,MAAM,CAAC,cAAc;IACrC,UAAU,EAAE,MAAM,CAAC,UAAU;IAC7B,WAAW,EAAE,MAAM,CAAC,WAAW;IAC/B,aAAa,EAAE,MAAM,CAAC,aAAa;CACpC;AAED;AACM,SAAU,YAAY,CAAC,IAAa,EAAA;AACxC,IAAA,OAAO,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,WAAW;AAC7D;;AC3BA;AACA;AACA;AAqBA,MAAM,GAAG,GAAG,CAAC,CAAU,EAAE,QAAgB,MAAc,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;AAElH,SAAS,WAAW,CAAC,KAAa,EAAE,MAA6B,EAAA;IAC/D,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;IACjC,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,uBAAuB,EAAE,GAAG,CAAC;AACpF,IAAA,OAAO,MAAM,CAAC,OAAO,CAAC;AACxB;AAEA,MAAM,SAAS,GAAyB;AACtC,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE;AAClE,QAAA,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,qDAAqD,EAAE,KAAK,EAAE,EAAE,EAAE;QAC3F,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,6CAA6C,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;AACrH,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,oCAAoC,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,EAAE;AAChG,KAAA;AACD,IAAA,QAAQ,EACN,qVAAqV;AACvV,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAgB;QAC7B,MAAM,IAAI,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/B,QAAA,IAAI,CAAC,IAAI;YAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA,qBAAA,EAAwB,IAAI,CAAC,IAAI,CAAA,CAAA,CAAG,CAAC;QAC9D,MAAM,EAAE,GAA2B,EAAE;AACrC,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;AAAE,YAAA,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvF,MAAM,UAAU,GAAG,MAAW;AAC5B,YAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE;gBAC7C,IAAI,GAAG,KAAK,OAAO;AAAE,oBAAA,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC;;AACpC,oBAAA,IAA0C,CAAC,GAAG,CAAC,GAAG,KAAK;YAC/D;AACF,QAAA,CAAC;AACD,QAAA,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO;YAAE,OAAO,UAAU,EAAE;QACjD,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE;QAC7B,MAAM,IAAI,GAAuB,EAAE;QACnC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;YAChC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E;AACA,QAAA,IAAI,KAAK,KAAK,SAAS,EAAE;AACvB,YAAA,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtG;;QAEA,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;AAC9D,QAAA,IAAI,EAAE,CAAC,OAAO,EAAE;AACd,YAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC;AACxB,YAAA,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,YAAA,UAAU,EAAE;QACd;IACF,CAAC;CACF;AAED,MAAM,SAAS,GAAyB;AACtC,IAAA,IAAI,EAAE,OAAO;AACb,IAAA,MAAM,EAAE;AACN,QAAA,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,sCAAsC,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;QACzF,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;AAChF,KAAA;AACD,IAAA,QAAQ,EAAE,+GAA+G;IACzH,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAC5B,MAAM,IAAI,GAAG,GAAgB;AAC7B,QAAA,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC;IAC7C,CAAC;CACF;AAED,MAAM,YAAY,GAAyB;AACzC,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,mCAAmC,EAAE,KAAK,EAAE,CAAC,EAAE;AAC7E,QAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,iDAAiD,EAAE,KAAK,EAAE,EAAE,EAAE;AAC3F,KAAA;AACD,IAAA,QAAQ,EAAE,0GAA0G;IACpH,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAC5B,MAAM,IAAI,GAAG,GAAmB;AAChC,QAAA,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC;IAC1C,CAAC;CACF;AAED,MAAM,UAAU,GAAyB;AACvC,IAAA,IAAI,EAAE,QAAQ;AACd,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,wCAAwC,EAAE,KAAK,EAAE,CAAC,EAAE;AAC/E,QAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,+BAA+B,EAAE,KAAK,EAAE,EAAE,EAAE;AACzE,KAAA;AACD,IAAA,QAAQ,EAAE,yGAAyG;IACnH,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAC5B,MAAM,IAAI,GAAG,GAAiB;AAC9B,QAAA,EAAE,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;CACF;AAED,MAAM,YAAY,GAAyB;AACzC,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,MAAM,EAAE;QACN,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE;AACnC,QAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,+BAA+B,EAAE,KAAK,EAAE,EAAE,EAAE;AACzE,KAAA;AACD,IAAA,QAAQ,EAAE,2HAA2H;IACrI,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAC5B,MAAM,IAAI,GAAG,GAAmB;AAChC,QAAA,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,UAAU;YAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA,gBAAA,EAAmB,IAAI,CAAC,IAAI,CAAA,mBAAA,CAAqB,CAAC;QAC3F,MAAM,KAAK,GAA4B,EAAE;AACzC,QAAA,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;QACrF,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;AACvC,QAAA,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,KAAK,EAAE,CAAC;IAC3D,CAAC;CACF;AAED,SAAS,WAAW,CAAC,EAAe,EAAE,EAAU,EAAA;AAC9C,IAAA,MAAM,IAAI,GAAG,CAAC,CAAmC,KAAkD;AACjG,QAAA,IAAI,CAAC,CAAC,EAAE,KAAK,EAAE;AAAE,YAAA,OAAO,CAAC;QACzB,KAAK,MAAM,KAAK,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,EAAE;AACpC,YAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC;AACvB,YAAA,IAAI,GAAG;AAAE,gBAAA,OAAO,GAAG;QACrB;AACA,QAAA,OAAO,SAAS;AAClB,IAAA,CAAC;IACD,OAAO,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC;AAClC;AAEA,MAAM,WAAW,GAAyB;AACxC,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,EAAE,+CAA+C,EAAE,KAAK,EAAE,CAAC,EAAE;AACzF,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE;AAClD,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,4DAA4D,EAAE,KAAK,EAAE,EAAE,EAAE;AACpG,QAAA,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,yCAAyC,EAAE,KAAK,EAAE,EAAE,EAAE;QAC/E,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;AAClE,QAAA,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;AAC/D,KAAA;AACD,IAAA,QAAQ,EACN,0JAA0J;AAC5J,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAkB;AAC/B,QAAA,MAAM,QAAQ,GAAG,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE,UAAU;YAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA,eAAA,EAAkB,IAAI,CAAC,IAAI,CAAA,mBAAA,CAAqB,CAAC;QAC1F,MAAM,IAAI,GAAG,WAAW,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,CAAC;AACvC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO;AACjC,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC1C,QAAA,MAAM,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtC,QAAA,MAAM,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,KAAK;AACxC,QAAA,MAAM,KAAK,GAAG,CAAC,KAAa,KAC1B,QAAQ,CAAC,UAAW,CAAC,EAAE,IAAI,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,CAAC,IAAI,GAAG,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3F,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE,CAAC,OAAO,IAAI,EAAE,IAAI,CAAC;AAAE,YAAA,OAAO,KAAK,CAAC,EAAE,CAAC;AACzD,QAAA,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;AAC/B,QAAA,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE;AAClB,YAAA,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,EAAE,CAAC;YACvD,KAAK,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,CAAC,IAAI,CAAC;gBAAE;AACZ,YAAA,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB;QACA,KAAK,CAAC,EAAE,CAAC;IACX,CAAC;CACF;AAED,MAAM,QAAQ,GAAyB;AACrC,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,EAAE;QACN,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,2CAA2C,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE;AAClH,QAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,mDAAmD,EAAE,OAAO,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;AAC/G,KAAA;AACD,IAAA,QAAQ,EAAE,8HAA8H;AACxI,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAe;AAC5B,QAAA,IAAI,IAAI,CAAC,KAAK,KAAK,KAAK;AAAE,YAAA,OAAO,EAAE,CAAC,OAAO,EAAE;AAC7C,QAAA,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;CACF;AAED,MAAM,MAAM,GAAyB;AACnC,IAAA,IAAI,EAAE,IAAI;AACV,IAAA,MAAM,EAAE;AACN,QAAA,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,uDAAuD,EAAE,KAAK,EAAE,CAAC,EAAE;AAC/F,KAAA;AACD,IAAA,QAAQ,EAAE,8FAA8F;AACxG,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAa;AAC1B,QAAA,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;IAClE,CAAC;CACF;AAED,MAAM,YAAY,GAAyB;AACzC,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,QAAQ,EAAE,yGAAyG;AACnH,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAmB;QAChC,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAC7D,CAAC;CACF;AAED,MAAM,OAAO,GAAyB;AACpC,IAAA,IAAI,EAAE,KAAK;AACX,IAAA,MAAM,EAAE,EAAE;AACV,IAAA,QAAQ,EAAE,oDAAoD;AAC9D,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAc;QAC3B,MAAM,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,WAAW,GAAyB;AACxC,IAAA,IAAI,EAAE,SAAS;AACf,IAAA,MAAM,EAAE;AACN,QAAA,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,2CAA2C,EAAE,KAAK,EAAE,CAAC,EAAE;AACnF,QAAA,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,uDAAuD,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;QAC9G,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE;QAC7F,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,yBAAyB,EAAE,OAAO,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE;AACvG,KAAA;AACD,IAAA,QAAQ,EACN,qPAAqP;AACvP,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAkC;QAC/C,MAAM,KAAK,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;AACpC,QAAA,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;AAAE,YAAA,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA,4CAAA,EAA+C,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA,CAAA,CAAG,CAAC;AAC9G,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,MAAM;QAC5B,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;AACtC,QAAA,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA,EAAG,EAAE,CAAA,KAAA,CAAO,GAAG,KAAK,EAAE,CAAC,CAAC;QAC5F,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,YAAY,MAAM,UAAU,EAAE;AAC9C,YAAA,MAAM,OAAO,CAAC,GAAG,CACf,QAAQ,CAAC,GAAG,CAAC,OAAO,KAAK,EAAE,KAAK,KAAI;AAClC,gBAAA,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC;oBAAE,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;gBAC5D,MAAM,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YAC7B,CAAC,CAAC,CACH;QACH;aAAO;AACL,YAAA,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;AACpD,gBAAA,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,GAAG,CAAC;AAAE,oBAAA,MAAM,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;gBACpD,MAAM,QAAQ,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;YACvC;QACF;IACF,CAAC;CACF;AAED,MAAM,QAAQ,GAAyB;AACrC,IAAA,IAAI,EAAE,MAAM;AACZ,IAAA,MAAM,EAAE;AACN,QAAA,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,yDAAyD,EAAE,KAAK,EAAE,CAAC,EAAE;QAC/F,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;AAClC,KAAA;AACD,IAAA,QAAQ,EACN,kKAAkK;AACpK,IAAA,MAAM,GAAG,CAAC,GAAS,EAAE,EAAe,EAAA;QAClC,MAAM,IAAI,GAAG,GAAe;QAC5B,MAAM,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC;AACpC,QAAA,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA,mBAAA,EAAsB,IAAI,CAAC,GAAG,CAAA,CAAA,CAAG,CAAC;QAC9D,MAAM,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC;IACpC,CAAC;CACF;AAEM,MAAM,kBAAkB,GAA2B;IACxD,SAAS;IACT,SAAS;IACT,YAAY;IACZ,UAAU;IACV,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,MAAM;IACN,YAAY;IACZ,OAAO;IACP,WAAW;IACX,QAAQ;;;AC3RV;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACM,SAAU,eAAe,CAAC,IAAU,EAAA;AACxC,IAAA,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE;AACpB,IAAA,IAAI,IAAI,KAAK,UAAU,EAAE;AACvB,QAAA,MAAM,MAAM,GAAI,IAA4B,CAAC,KAAK;QAClD,OAAO,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,GAAI,MAAmB,GAAG,EAAE;IACtF;IACA,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,SAAS,EAAE;AACxC,QAAA,MAAM,IAAI,GAAI,IAA4B,CAAC,KAAK;AAChD,QAAA,OAAO,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,IAAc,CAAC,GAAG,EAAE;IACpD;AACA,IAAA,IAAI,IAAI,KAAK,IAAI,EAAE;QACjB,MAAM,CAAC,GAAG,IAAwC;AAClD,QAAA,OAAO,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC;IACrC;AACA,IAAA,OAAO,EAAE;AACX;AAEA;AACM,SAAU,UAAU,CAAC,IAAU,EAAE,KAAa,EAAA;AAClD,IAAA,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI;QAAE,OAAO,KAAK,KAAK,CAAC,GAAG,MAAM,GAAG,MAAM;AAC1D,IAAA,IAAI,IAAI,CAAC,EAAE,KAAK,UAAU;AAAE,QAAA,OAAO,CAAA,MAAA,EAAS,KAAK,GAAG,CAAC,EAAE;AACvD,IAAA,OAAO,EAAE;AACX;AAEO,MAAM,WAAW,GAAG,CAAC,IAAU,KAAc,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG;AAEnF;;;AAGG;SACa,aAAa,CAAC,GAAY,EAAE,MAAM,GAAG,GAAG,EAAA;AACtD,IAAA,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU;AAC9B,IAAA,MAAM,OAAO,GAAG,CAAC,IAAY,KAAU;AACrC,QAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;AACvB,YAAA,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ;AAAE,gBAAA,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;AAClD,YAAA,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,KAAK,CAAC;QAC3D;AACF,IAAA,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAAE,OAAO,CAAC,IAAI,CAAC;IAEvD,IAAI,CAAC,GAAG,CAAC;IACT,MAAM,KAAK,GAAG,MAAa;AACzB,QAAA,IAAI,EAAU;AACd,QAAA,GAAG;AACD,YAAA,EAAE,GAAG,CAAA,EAAG,MAAM,GAAG,EAAE,CAAC,EAAE;AACxB,QAAA,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACrB,QAAA,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;AACZ,QAAA,OAAO,EAAE;AACX,IAAA,CAAC;AACD,IAAA,MAAM,MAAM,GAAG,CAAC,IAAY,KAAU;AACpC,QAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;YACvB,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;AAAE,gBAAA,IAAI,CAAC,EAAE,GAAG,KAAK,EAAE;AACpE,YAAA,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC;gBAAE,MAAM,CAAC,KAAK,CAAC;QAC1D;AACF,IAAA,CAAC;IACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;QAAE,MAAM,CAAC,IAAI,CAAC;AACtD,IAAA,OAAO,GAAG;AACZ;AAEA;AACM,SAAU,UAAU,CACxB,GAAY,EACZ,EAAU,EAAA;AAEV,IAAA,KAAK,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE;QAClD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,KAAK,CAAC;AACnC,QAAA,IAAI,GAAG;AAAE,YAAA,OAAO,GAAG;IACrB;AACA,IAAA,OAAO,SAAS;AAClB;AAEA,SAAS,MAAM,CAAC,IAAY,EAAE,EAAU,EAAE,KAAa,EAAA;AACrD,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACpC,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;AACpB,QAAA,IAAI,IAAI,CAAC,EAAE,KAAK,EAAE;YAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE;QAC1D,KAAK,MAAM,KAAK,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;YACzC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC;AACpC,YAAA,IAAI,GAAG;AAAE,gBAAA,OAAO,GAAG;QACrB;IACF;AACA,IAAA,OAAO,SAAS;AAClB;AAuCO,MAAM,MAAM,GAAG;AACf,MAAM,MAAM,GAAG;AACtB,MAAM,KAAK,GAAG,EAAE;AAChB,MAAM,KAAK,GAAG,EAAE;AAChB,MAAM,GAAG,GAAG,EAAE,CAAC;AACf,MAAM,MAAM,GAAG,EAAE,CAAC;AAElB;;;AAGG;AACG,SAAU,WAAW,CAAC,GAAY,EAAE,KAAa,EAAA;IACrD,MAAM,KAAK,GAAgB,EAAE;IAC7B,MAAM,KAAK,GAAgB,EAAE;;AAG7B,IAAA,MAAM,UAAU,GAAG,CACjB,IAAY,EACZ,EAAU,EACV,EAAU,EACV,KAAa,EACb,QAA4B,EAC5B,KAAyB,KACY;QACrC,IAAI,CAAC,GAAG,EAAE;QACV,IAAI,IAAI,GAAG,CAAC;AACZ,QAAA,IAAI,MAA0B;AAC9B,QAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;AACvB,YAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,IAAI,GAAG;AACzB,YAAA,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,CAAC;YACpC,IAAI,CAAC,GAAG,MAAM;YACd,IAAI,CAAC,GAAG,MAAM;AAEd,YAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;;gBAErB,IAAI,MAAM,GAAG,CAAC;gBACd,IAAI,MAAM,GAAG,CAAC;AACd,gBAAA,MAAM,MAAM,GAAG,EAAE,GAAG,MAAM,GAAG,GAAG;AAChC,gBAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACtC,oBAAA,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,GAAG,CAAC,EAAE,EAAE,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC/F,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC;oBACpC,MAAM,IAAI,GAAG,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;oBAC1D,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC1B,IAAI,KAAK,EAAE,EAAE;AAAE,wBAAA,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;gBACjG;AACA,gBAAA,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC;AACtC,gBAAA,CAAC,GAAG,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,GAAG;YACnD;AAEA,YAAA,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE;YACxB,KAAK,CAAC,IAAI,CAAC;gBACT,EAAE;gBACF,IAAI,EAAE,IAAI,CAAC,EAAE;gBACb,IAAI;AACJ,gBAAA,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC;AAClB,gBAAA,CAAC,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE;AACnB,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,MAAM,EAAE,CAAC;gBACT,KAAK;gBACL,QAAQ;gBACR,KAAK;AACL,gBAAA,SAAS,EAAE,MAAM,CAAC,MAAM,GAAG,CAAC;gBAC5B,MAAM;AACP,aAAA,CAAC;AACF,YAAA,IAAI,MAAM;AAAE,gBAAA,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;YAC9D,MAAM,GAAG,EAAE;AACX,YAAA,CAAC,IAAI,CAAC,GAAG,KAAK;YACd,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;QAC1B;QACA,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE;AAC7D,IAAA,CAAC;IAED,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC;AAC1E,IAAA,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;AAC3E,IAAA,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC;AAC9E,IAAA,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE;AACvD;AAEA;AACM,SAAU,SAAS,CAAC,IAAU,EAAA;IAClC,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC;IACjF,MAAM,KAAK,GAAa,EAAE;AAC1B,IAAA,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;AACtB,QAAA,MAAM,KAAK,GAAI,IAAgC,CAAC,GAAG,CAAC;QACpD,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ;YAAE;AACxE,QAAA,KAAK,CAAC,IAAI,CAAC,CAAA,EAAG,GAAG,CAAA,CAAA,EAAI,MAAM,CAAC,KAAK,CAAC,CAAA,CAAE,CAAC;AACrC,QAAA,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE;IAC1B;AACA,IAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACzB;;ACjOA;AACA;AACA;AACA;AACA;AACA;AACA;AA2FA,MAAM,SAAS,GAAqB,EAAE,IAAI,EAAE,MAAK,EAAE,CAAC,EAAE,IAAI,EAAE,MAAK,EAAE,CAAC,EAAE;AAEhE,SAAU,eAAe,CAAC,GAAY,EAAE,QAA0B,EAAA;IACtE,MAAM,MAAM,GAAa,EAAE;AAC3B,IAAA,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC;AAAE,QAAA,MAAM,CAAC,IAAI,CAAC,CAAA,6BAAA,EAAgC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA,CAAE,CAAC;AACzF,IAAA,MAAM,KAAK,GAAG,CAAC,IAAU,EAAE,IAAY,KAAU;QAC/C,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;YAC3B,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAA,gBAAA,EAAmB,IAAI,CAAC,EAAE,CAAA,0CAAA,EAA6C,QAAQ,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA,CAAE,CAAC;YACxH;QACF;AACA,QAAA,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,EAAE;YACnB,IAAyB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAA,EAAG,IAAI,SAAS,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;YACjF,CAAE,IAA0B,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAA,EAAG,IAAI,CAAA,MAAA,EAAS,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;QAC5F;AAAO,aAAA,IAAI,IAAI,CAAC,EAAE,KAAK,UAAU,EAAE;AAChC,YAAA,IAA4B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAA,EAAG,IAAI,CAAA,CAAA,EAAI,EAAE,CAAA,EAAA,EAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACvH;AAAO,aAAA,IAAI,IAAI,CAAC,EAAE,KAAK,KAAK,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE;YACpD,IAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAA,EAAG,IAAI,UAAU,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;QACtF;AAAO,aAAA,IAAI,IAAI,CAAC,EAAE,KAAK,OAAO,EAAE;AAC9B,YAAA,MAAM,GAAG,GAAI,IAAwB,CAAC,GAAG;AACzC,YAAA,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC;gBAAE,MAAM,CAAC,IAAI,CAAC,CAAA,EAAG,IAAI,CAAA,aAAA,EAAgB,GAAG,CAAA,8BAAA,CAAgC,CAAC;QAC/F;AACF,IAAA,CAAC;AACD,IAAA,KAAK,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE;QACzD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,EAAE,CAAA,GAAA,EAAM,KAAK,IAAI,CAAC,CAAA,CAAA,CAAG,CAAC,CAAC;IAC9D;AACA,IAAA,OAAO,MAAM;AACf;AAEM,SAAU,gBAAgB,CAAC,GAAY,EAAE,IAA6B,EAAA;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,KAAK,CAAC,GAAW,KAAK,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG,CAAA,CAAE,CAAC,CAAC;AACxE,IAAA,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE,kBAAkB,CAAC;;IAE/E,aAAa,CAAC,GAAG,CAAC;IAClB,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC;AAC7C,IAAA,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC;AAAE,QAAA,MAAM,IAAI,KAAK,CAAC,CAAA,UAAA,EAAa,GAAG,CAAC,EAAE,CAAA,iBAAA,EAAoB,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA,CAAE,CAAC;AAEpG,IAAA,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,SAAS;IACrC,IAAI,KAAK,GAAG,CAAC;AACb,IAAA,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB;AAC1C,IAAA,MAAM,UAAU,GAAG,IAAI,GAAG,EAAc;AASxC,IAAA,MAAM,MAAM,GAAG,IAAI,GAAG,EAAa;AACnC,IAAA,MAAM,OAAO,GAAG,IAAI,GAAG,EAAmC;AAE1D,IAAA,MAAM,UAAU,GAAG,CAAC,IAAY,KAA6B;QAC3D,MAAM,GAAG,GAAuB,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;AAChD,QAAA,IAAI,CAAC,GAAG;AAAE,YAAA,OAAO,SAAS;QAC1B,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QAC5D,IAAI,KAAK,GAAG,CAAC;QACb,IAAI,GAAG,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;AACpC,YAAA,KAAK,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM;YAClD,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,GAAG,CAAC,CAAC;QAC/B;AACA,QAAA,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,CAAC;QAC9B,OAAO;AACL,YAAA,GAAG,EAAE,IAAI;AACT,YAAA,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;AACnB,YAAA,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,KAAK;AAC7B,YAAA,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,KAAK;YACvB,IAAI,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC;AACvD,YAAA,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC;SACxB;AACH,IAAA,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,KAAa,EAAE,GAAA,GAA+B,EAAE,EAAE,QAAsB,KAAwB;QAClH,MAAM,KAAK,GAAG,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC;AAC3B,QAAA,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC/B,MAAM,OAAO,GAAiB,EAAE;AAChC,QAAA,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM;AAC/B,QAAA,MAAM,GAAG,GAAc;AACrB,YAAA,OAAO,EAAE,KAAK;YACd,OAAO,EAAE,CAAC,CAAC,MAAM;AACjB,YAAA,SAAS,EAAE,MAAM,EAAE,UAAU,IAAI,EAAE;AACnC,YAAA,MAAM,EAAE,KAAK;YACb,QAAQ,EAAE,IAAI,GAAG,EAAE;SACpB;AACD,QAAA,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC;AACf,QAAA,IAAI,CAAC,MAAM;AAAE,YAAA,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC;AAEpC,QAAA,MAAM,KAAK,GAAG,CAAC,KAA4B,KAAU;YACnD,MAAM,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,EAAE,GAAG,KAAK,EAAE;AACnE,YAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;AAClB,YAAA,IAAI,GAAG,CAAC,SAAS,IAAI,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,GAAG,CAAC,SAAS;AAAE,gBAAA,GAAG,CAAC,MAAM,GAAG,IAAI;YAChF,IAAI,CAAC,GAAG,CAAC,OAAO;gBAAE,IAAI,CAAC,OAAO,GAAG,KAAK,EAAE,IAAI,CAAC;AAC/C,QAAA,CAAC;AAED,QAAA,MAAM,WAAW,GAAG,CAAC,QAAiC,KAAiB;AACrE,YAAA,MAAM,OAAO,GAAgB;gBAC3B,KAAK,EAAE,IAAI,CAAC,KAAK;AACjB,gBAAA,GAAG,EAAE,QAAQ;gBACb,KAAK;AACL,gBAAA,IAAI,OAAO,GAAA;oBACT,OAAO,GAAG,CAAC,OAAO;gBACpB,CAAC;AACD,gBAAA,IAAI,OAAO,GAAA;oBACT,OAAO,GAAG,CAAC,OAAO;gBACpB,CAAC;AACD,gBAAA,IAAI,KAAK,GAAA;AACP,oBAAA,OAAO,KAAK;gBACd,CAAC;AACD,gBAAA,IAAI,CAAC,EAAU,EAAA;;;oBAGb,IAAI,GAAG,CAAC,OAAO;AAAE,wBAAA,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,KAAK,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AAC9E,oBAAA,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,IAAI,CAAC;AAAE,wBAAA,OAAO,OAAO,CAAC,OAAO,EAAE;AACpD,oBAAA,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;AACnC,wBAAA,MAAM,KAAK,GAAG,UAAU,CAAC,MAAK;AAC5B,4BAAA,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AAC5B,4BAAA,OAAO,EAAE;AACX,wBAAA,CAAC,EAAE,EAAE,GAAG,KAAK,CAAC;wBACd,MAAM,OAAO,GAAG,MAAW;4BACzB,YAAY,CAAC,KAAK,CAAC;AACnB,4BAAA,OAAO,EAAE;AACX,wBAAA,CAAC;AACD,wBAAA,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AAC3B,oBAAA,CAAC,CAAC;gBACJ,CAAC;gBACD,OAAO,GAAA;AACL,oBAAA,IAAI,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO;AAAE,wBAAA,OAAO,OAAO,CAAC,OAAO,EAAE;AACxD,oBAAA,OAAO,IAAI,OAAO,CAAO,CAAC,OAAO,KAAI;wBACnC,MAAM,OAAO,GAAG,MAAW;AACzB,4BAAA,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC;AAC1B,4BAAA,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC;AAC5B,4BAAA,OAAO,EAAE;AACX,wBAAA,CAAC;AACD,wBAAA,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC;AACvB,wBAAA,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AAC3B,oBAAA,CAAC,CAAC;gBACJ,CAAC;gBACD,MAAM,GAAG,CAAC,IAAY,EAAA;AACpB,oBAAA,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE;wBACvB,IAAI,GAAG,CAAC,MAAM;4BAAE;wBAChB,MAAM,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;AAC3C,wBAAA,IAAI,CAAC,YAAY;AAAE,4BAAA,SAAS;AAC5B,wBAAA,KAAK,CAAC;4BACJ,EAAE,EAAE,IAAI,CAAC,EAAE;;;AAGX,4BAAA,MAAM,EAAE,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,GAAG,IAAI,CAAC,EAAE,GAAG,SAAS;AACzD,4BAAA,IAAI,EAAE,OAAQ,IAA2B,CAAC,IAAI,KAAK,QAAQ,GAAI,IAAyB,CAAC,IAAI,GAAG,SAAS;AAC1G,yBAAA,CAAC;;;wBAGF,MAAM,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC;oBACvC;gBACF,CAAC;AACD,gBAAA,OAAO,CAAC,KAAc,EAAA;AACpB,oBAAA,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AACtD,wBAAA,OAAO;6BACJ,KAAK,CAAC,CAAC;6BACP,KAAK,CAAC,GAAG;AACT,6BAAA,MAAM,CAAU,CAAC,GAAG,EAAE,GAAG,KAAM,GAA2C,GAAG,GAAG,CAAC,EAAE,QAAQ,CAAC;oBACjG;AACA,oBAAA,OAAO,KAAK;gBACd,CAAC;AACD,gBAAA,IAAI,CAAC,IAAY,EAAA;oBACf,MAAM,IAAI,GAAG,4BAA4B,CAAC,IAAI,CAAC,IAAI,CAAC;AACpD,oBAAA,IAAI,IAAI;wBAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC3C,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC;AAC9C,oBAAA,IAAI,MAAM,KAAK,SAAS,EAAE;AACxB,wBAAA,GAAG,CAAC,CAAA,kBAAA,EAAqB,IAAI,CAAA,oBAAA,CAAsB,CAAC;AACpD,wBAAA,OAAO,KAAK;oBACd;AACA,oBAAA,OAAO,MAAM;gBACf,CAAC;AACD,gBAAA,KAAK,EAAE,CAAC,QAAQ,KAAK,WAAW,CAAC,EAAE,GAAG,QAAQ,EAAE,GAAG,QAAQ,EAAE,CAAC;gBAC9D,KAAK;AACL,gBAAA,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;gBACjC,GAAG;AACH,gBAAA,OAAO,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;gBAClC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAA;oBAClB,IAAI,GAAG,CAAC,OAAO;AAAE,wBAAA,OAAO;oBACxB,IAAI,MAAM,KAAK,MAAM;AAAE,wBAAA,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AAC9C,oBAAA,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACjC,oBAAA,IAAI,QAAQ;AAAE,wBAAA,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;gBACpC,CAAC;aACF;AACD,YAAA,OAAO,OAAO;AAChB,QAAA,CAAC;AACD,QAAA,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC;AAE3B,QAAA,IAAI;AACF,YAAA,IAAI,CAAC,KAAK;AAAE,gBAAA,GAAG,CAAC,CAAA,MAAA,EAAS,KAAK,CAAA,sBAAA,CAAwB,CAAC;;AAClD,gBAAA,MAAM,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC;QAC1B;gBAAU;AACR,YAAA,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC;QACpB;QACA,OAAO;YACL,KAAK;YACL,KAAK;YACL,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,IAAI,MAAM,GAAG,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC;YACjF,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;YACjD,OAAO;SACR;AACH,IAAA,CAAC;IAED,OAAO;QACL,IAAI;AACJ,QAAA,SAAS,EAAE,MACT,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,KAAI;YAC5B,MAAM,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;AAC7B,YAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE;AAC3D,QAAA,CAAC,CAAC;QACJ,MAAM,CAAC,KAAK,EAAE,UAAU,EAAA;YACtB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC;AAC9B,YAAA,IAAI,CAAC,GAAG;AAAE,gBAAA,GAAG,CAAC,CAAA,QAAA,EAAW,KAAK,CAAA,8CAAA,CAAgD,CAAC;;;AAG/E,YAAA,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE;AACvB,YAAA,OAAO,IAAI,CAAC,KAAK,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,EAAE,CAAC;QAC3D,CAAC;QACD,IAAI,GAAA;AACF,YAAA,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE;AACxB,gBAAA,GAAG,CAAC,OAAO,GAAG,IAAI;gBAClB,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,GAAG,CAAC,QAAQ,CAAC;AAAE,oBAAA,OAAO,EAAE;AAClD,gBAAA,GAAG,CAAC,QAAQ,CAAC,KAAK,EAAE;YACtB;QACF,CAAC;AACD,QAAA,QAAQ,CAAC,MAAc,EAAA;YACrB,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC;QAC/B,CAAC;QACD,GAAG,GAAA;AACD,YAAA,KAAK,MAAM,OAAO,IAAI,CAAC,GAAG,UAAU,CAAC;AAAE,gBAAA,OAAO,EAAE;QAClD,CAAC;AACD,QAAA,MAAM,EAAE,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC;QACvC,OAAO,GAAA;YACL,IAAI,CAAC,IAAI,EAAE;YACX,MAAM,CAAC,KAAK,EAAE;QAChB,CAAC;KACF;AACH;;;;"}