bruce-cesium 4.4.4 → 4.4.7

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 (38) hide show
  1. package/dist/bruce-cesium.es5.js +4510 -3712
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +4485 -3699
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +5 -1
  6. package/dist/lib/bruce-cesium.js.map +1 -1
  7. package/dist/lib/internal/cesium-utils.js +92 -5
  8. package/dist/lib/internal/cesium-utils.js.map +1 -1
  9. package/dist/lib/rendering/cesium-animated-property.js +149 -0
  10. package/dist/lib/rendering/cesium-animated-property.js.map +1 -1
  11. package/dist/lib/rendering/entity-render-engine-model3d.js +809 -0
  12. package/dist/lib/rendering/entity-render-engine-model3d.js.map +1 -0
  13. package/dist/lib/rendering/entity-render-engine-point.js +995 -0
  14. package/dist/lib/rendering/entity-render-engine-point.js.map +1 -0
  15. package/dist/lib/rendering/entity-render-engine-polygon.js +756 -0
  16. package/dist/lib/rendering/entity-render-engine-polygon.js.map +1 -0
  17. package/dist/lib/rendering/entity-render-engine-polyline.js +516 -0
  18. package/dist/lib/rendering/entity-render-engine-polyline.js.map +1 -0
  19. package/dist/lib/rendering/entity-render-engine.js +62 -2420
  20. package/dist/lib/rendering/entity-render-engine.js.map +1 -1
  21. package/dist/lib/rendering/render-managers/data-source/data-source-static-csv-manager.js.map +1 -1
  22. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +15 -0
  23. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +1 -1
  24. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js +18 -0
  25. package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js.map +1 -1
  26. package/dist/lib/utils/view-utils.js +2 -2
  27. package/dist/lib/utils/view-utils.js.map +1 -1
  28. package/dist/lib/widgets/common/draw-3d-polyline.js +0 -8
  29. package/dist/lib/widgets/common/draw-3d-polyline.js.map +1 -1
  30. package/dist/types/bruce-cesium.d.ts +5 -1
  31. package/dist/types/internal/cesium-utils.d.ts +22 -2
  32. package/dist/types/rendering/cesium-animated-property.d.ts +21 -0
  33. package/dist/types/rendering/entity-render-engine-model3d.d.ts +56 -0
  34. package/dist/types/rendering/entity-render-engine-point.d.ts +73 -0
  35. package/dist/types/rendering/entity-render-engine-polygon.d.ts +26 -0
  36. package/dist/types/rendering/entity-render-engine-polyline.d.ts +48 -0
  37. package/dist/types/rendering/entity-render-engine.d.ts +31 -98
  38. package/package.json +2 -2
@@ -19,6 +19,10 @@ __exportStar(require("./viewer/cesium-view-monitor"), exports);
19
19
  __exportStar(require("./viewer/viewer-utils"), exports);
20
20
  __exportStar(require("./rendering/menu-item-manager"), exports);
21
21
  __exportStar(require("./rendering/entity-render-engine"), exports);
22
+ __exportStar(require("./rendering/entity-render-engine-point"), exports);
23
+ __exportStar(require("./rendering/entity-render-engine-polyline"), exports);
24
+ __exportStar(require("./rendering/entity-render-engine-polygon"), exports);
25
+ __exportStar(require("./rendering/entity-render-engine-model3d"), exports);
22
26
  __exportStar(require("./rendering/menu-item-creator"), exports);
23
27
  __exportStar(require("./rendering/visuals-register"), exports);
24
28
  __exportStar(require("./rendering/render-managers/render-manager"), exports);
@@ -62,5 +66,5 @@ __exportStar(require("./widgets/widget-searchbar"), exports);
62
66
  __exportStar(require("./widgets/widget-left-panel"), exports);
63
67
  __exportStar(require("./widgets/left-panel-tabs/widget-left-panel-tab"), exports);
64
68
  __exportStar(require("./widgets/left-panel-tabs/widget-left-panel-tab-bookmarks"), exports);
65
- exports.VERSION = "4.4.4";
69
+ exports.VERSION = "4.4.7";
66
70
  //# sourceMappingURL=bruce-cesium.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bruce-cesium.js","sourceRoot":"","sources":["../../src/bruce-cesium.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,wDAAsC;AACtC,gEAA8C;AAC9C,mEAAiD;AACjD,gEAA8C;AAC9C,+DAA6C;AAC7C,6EAA2D;AAC3D,mGAAiF;AACjF,sGAAoF;AACpF,+FAA6E;AAC7E,6FAA2E;AAC3E,kGAAgF;AAChF,kGAAgF;AAChF,uGAAqF;AACrF,kGAAgF;AAChF,yGAAuF;AACvF,4GAA0F;AAC1F,yGAAuF;AACvF,iGAA+E;AAC/E,6FAA2E;AAC3E,oFAAkE;AAClE,qFAAmE;AACnE,kFAAgE;AAChE,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC;AACrC,+DAA6C;AAE7C,uEAAqD;AACrD,qEAAmD;AAEnD,mEAAiD;AACjD,oEAAkD;AAClD,mEAAiD;AACjD,mDAAiC;AACjC,6DAA2C;AAC3C,4DAA0C;AAC1C,6DAA2C;AAC3C,sEAAoD;AACpD,6DAA2C;AAC3C,+DAA6C;AAC7C,6DAA2C;AAC3C,8DAA4C;AAC5C,kFAAgE;AAChE,4FAA0E;AAE7D,QAAA,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"bruce-cesium.js","sourceRoot":"","sources":["../../src/bruce-cesium.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,wDAAsC;AACtC,gEAA8C;AAC9C,mEAAiD;AACjD,yEAAuD;AACvD,4EAA0D;AAC1D,2EAAyD;AACzD,2EAAyD;AACzD,gEAA8C;AAC9C,+DAA6C;AAC7C,6EAA2D;AAC3D,mGAAiF;AACjF,sGAAoF;AACpF,+FAA6E;AAC7E,6FAA2E;AAC3E,kGAAgF;AAChF,kGAAgF;AAChF,uGAAqF;AACrF,kGAAgF;AAChF,yGAAuF;AACvF,4GAA0F;AAC1F,yGAAuF;AACvF,iGAA+E;AAC/E,6FAA2E;AAC3E,oFAAkE;AAClE,qFAAmE;AACnE,kFAAgE;AAChE,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC;AACrC,+DAA6C;AAE7C,uEAAqD;AACrD,qEAAmD;AAEnD,mEAAiD;AACjD,oEAAkD;AAClD,mEAAiD;AACjD,mDAAiC;AACjC,6DAA2C;AAC3C,4DAA0C;AAC1C,6DAA2C;AAC3C,sEAAoD;AACpD,6DAA2C;AAC3C,+DAA6C;AAC7C,6DAA2C;AAC3C,8DAA4C;AAC5C,kFAAgE;AAChE,4FAA0E;AAE7D,QAAA,OAAO,GAAG,OAAO,CAAC"}
@@ -1,14 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GetValue = exports.OnNextRender = void 0;
4
- function OnNextRender(viewer, callback) {
3
+ exports.CompareCPolygonHierarchies = exports.CompareCPosses = exports.CullDuplicateCPosses = exports.ColorToCColor = exports.GetCValue = exports.OnNextCRender = void 0;
4
+ var bruce_models_1 = require("bruce-models");
5
+ var Cesium = require("cesium");
6
+ function OnNextCRender(viewer, callback) {
5
7
  var removal = viewer.scene.postRender.addEventListener(function () {
6
8
  removal();
7
9
  callback();
8
10
  });
9
11
  }
10
- exports.OnNextRender = OnNextRender;
11
- function GetValue(viewer, obj) {
12
+ exports.OnNextCRender = OnNextCRender;
13
+ function GetCValue(viewer, obj) {
12
14
  if (obj === null || obj === void 0 ? void 0 : obj.getValue) {
13
15
  var date = viewer.scene.lastRenderTime;
14
16
  if (!date) {
@@ -18,5 +20,90 @@ function GetValue(viewer, obj) {
18
20
  }
19
21
  return obj;
20
22
  }
21
- exports.GetValue = GetValue;
23
+ exports.GetCValue = GetCValue;
24
+ function ColorToCColor(color) {
25
+ return new Cesium.Color(color.red ? color.red / 255 : 0, color.green ? color.green / 255 : 0, color.blue ? color.blue / 255 : 0, color.alpha);
26
+ }
27
+ exports.ColorToCColor = ColorToCColor;
28
+ /**
29
+ * Removes duplicate points in a row and returns a new array.
30
+ * Passed array is not mutated.
31
+ * @param posses
32
+ */
33
+ function CullDuplicateCPosses(posses) {
34
+ var newPosses = [];
35
+ var lastPos = null;
36
+ for (var i = 0; i < posses.length; i++) {
37
+ var pos = posses[i];
38
+ // Avoiding 'Cesium.Cartesian3.equals' because passed data might be just a json blob in certain cases.
39
+ if (pos && (!lastPos || (pos.x != lastPos.x || pos.y != lastPos.y || pos.z != lastPos.z))) {
40
+ newPosses.push(pos);
41
+ lastPos = pos;
42
+ }
43
+ }
44
+ return newPosses;
45
+ }
46
+ exports.CullDuplicateCPosses = CullDuplicateCPosses;
47
+ /**
48
+ * Returns if the given positions are equal.
49
+ * @param a
50
+ * @param b
51
+ */
52
+ function CompareCPosses(a, b) {
53
+ // Same reference.
54
+ if (a == b) {
55
+ return true;
56
+ }
57
+ // Different lengths or one is null.
58
+ if ((!a || !b) || (a.length != b.length)) {
59
+ return false;
60
+ }
61
+ for (var i = 0; i < a.length; i++) {
62
+ var posA = a[i];
63
+ var posB = b[i];
64
+ // Null detected.
65
+ if (!posA || !posB) {
66
+ return false;
67
+ }
68
+ // Position values don't match.
69
+ if (!bruce_models_1.Cartes.IsEqualCartes3(posA, posB)) {
70
+ return false;
71
+ }
72
+ }
73
+ return true;
74
+ }
75
+ exports.CompareCPosses = CompareCPosses;
76
+ /**
77
+ * Returns if the given polygon hierarchies are equal.
78
+ * @param a
79
+ * @param b
80
+ */
81
+ function CompareCPolygonHierarchies(a, b) {
82
+ // Same reference.
83
+ if (a == b) {
84
+ return true;
85
+ }
86
+ // Different lengths or one is null.
87
+ if ((!a || !b) || (a.positions.length != b.positions.length)) {
88
+ return false;
89
+ }
90
+ // Positions don't match.
91
+ if (!CompareCPosses(a.positions, b.positions)) {
92
+ return false;
93
+ }
94
+ var holes = a.holes;
95
+ var bHoles = b.holes;
96
+ // Number of holes don't match.
97
+ if (holes.length != bHoles.length) {
98
+ return false;
99
+ }
100
+ for (var i = 0; i < holes.length; i++) {
101
+ // Hole positions don't match.
102
+ if (!CompareCPosses(holes[i].positions, bHoles[i].positions)) {
103
+ return false;
104
+ }
105
+ }
106
+ return true;
107
+ }
108
+ exports.CompareCPolygonHierarchies = CompareCPolygonHierarchies;
22
109
  //# sourceMappingURL=cesium-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cesium-utils.js","sourceRoot":"","sources":["../../../src/internal/cesium-utils.ts"],"names":[],"mappings":";;;AAEA,SAAgB,YAAY,CAAC,MAAqB,EAAE,QAAoB;IACpE,IAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC;QACrD,OAAO,EAAE,CAAC;QACV,QAAQ,EAAE,CAAC;IACf,CAAC,CAAC,CAAC;AACP,CAAC;AALD,oCAKC;AAED,SAAgB,QAAQ,CAAI,MAAqB,EAAE,GAA0B;IACzE,IAAK,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,QAAQ,EAAE;QACxB,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;SACnC;QACD,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC7B;IACD,OAAO,GAAG,CAAC;AACf,CAAC;AATD,4BASC"}
1
+ {"version":3,"file":"cesium-utils.js","sourceRoot":"","sources":["../../../src/internal/cesium-utils.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CesiumAnimatedProperty = void 0;
4
+ var bruce_models_1 = require("bruce-models");
4
5
  var Cesium = require("cesium");
6
+ var entity_utils_1 = require("../utils/entity-utils");
5
7
  function getColor(viewer, obj) {
6
8
  var value = null;
7
9
  if (obj === null || obj === void 0 ? void 0 : obj.getValue) {
@@ -380,13 +382,40 @@ var CesiumAnimatedProperty;
380
382
  this.lastCalcTime = null;
381
383
  this.lastCalcSeriesPos3d = [];
382
384
  this.lastCalcSeriesTime = null;
385
+ this.lastCalcOrient = null;
386
+ this.lastCalcOrientTime = null;
383
387
  this.viewer = params.viewer;
384
388
  this.positions = params.posses;
389
+ this.pitch = params.pitch;
390
+ this.roll = params.roll;
391
+ this.processHeadings();
385
392
  // Order positions by date.
386
393
  this.positions.sort(function (a, b) {
387
394
  return a.dateTime.getTime() - b.dateTime.getTime();
388
395
  });
389
396
  }
397
+ /**
398
+ * Pre-process headings in the series.
399
+ * If all are null or 0, then we assume all are null.
400
+ */
401
+ AnimatePositionSeries.prototype.processHeadings = function () {
402
+ var hasHeading = false;
403
+ for (var i = 0; i < this.positions.length; i++) {
404
+ var pos = this.positions[i];
405
+ if (pos.heading !== null && pos.heading !== 0) {
406
+ hasHeading = true;
407
+ break;
408
+ }
409
+ }
410
+ if (!hasHeading) {
411
+ for (var i = 0; i < this.positions.length; i++) {
412
+ this.positions[i].heading = null;
413
+ }
414
+ }
415
+ };
416
+ AnimatePositionSeries.prototype.GetPositions = function () {
417
+ return this.positions;
418
+ };
390
419
  AnimatePositionSeries.prototype.GetValue = function () {
391
420
  var _this = this;
392
421
  var now = this.viewer.scene.lastRenderTime;
@@ -479,8 +508,128 @@ var CesiumAnimatedProperty;
479
508
  this.lastCalcSeriesPos3d = newPosses;
480
509
  return newPosses;
481
510
  };
511
+ /**
512
+ * Returns the orientation of the Entity.
513
+ * This will be based on either the series data, or a calculated heading if it's not available in the data.
514
+ * @returns
515
+ */
516
+ AnimatePositionSeries.prototype.GetOrient = function () {
517
+ var doUpdate = this.lastCalcOrientTime == null;
518
+ if (!doUpdate && this.lastCalcOrientTime && (new Date().getTime() - this.lastCalcOrientTime) > 1000 / 30) {
519
+ doUpdate = true;
520
+ }
521
+ if (!doUpdate) {
522
+ return this.lastCalcOrient;
523
+ }
524
+ if (this.positions.length === 0) {
525
+ return this.lastCalcOrient;
526
+ }
527
+ // Refresh cached values.
528
+ this.GetValue();
529
+ var now = this.viewer.scene.lastRenderTime;
530
+ if (!now) {
531
+ now = this.viewer.clock.currentTime;
532
+ }
533
+ var nowTime = Cesium.JulianDate.toDate(now).getTime();
534
+ // Determine the indices of the last and next positions
535
+ var lastIndex = this.lastCalcPosIndexLast;
536
+ var nextIndex = this.lastCalcPosIndexNext;
537
+ // Ensure valid indices
538
+ if (lastIndex < 0 || nextIndex < 0 || lastIndex >= this.positions.length || nextIndex >= this.positions.length) {
539
+ return this.lastCalcOrient;
540
+ }
541
+ var lastPos = this.positions[lastIndex];
542
+ var nextPos = this.positions[nextIndex];
543
+ // If the heading is present and not null, interpolate or use it directly
544
+ if (lastPos.heading !== null && nextPos.heading !== null) {
545
+ var deltaHeading = nextPos.heading - lastPos.heading;
546
+ // Handle wraparound between 359 and 0 degrees
547
+ if (deltaHeading > 180) {
548
+ deltaHeading -= 360;
549
+ }
550
+ else if (deltaHeading < -180) {
551
+ deltaHeading += 360;
552
+ }
553
+ var factor = (nowTime - lastPos.dateTime.getTime()) / (nextPos.dateTime.getTime() - lastPos.dateTime.getTime());
554
+ var interpolatedHeading = lastPos.heading + factor * deltaHeading;
555
+ interpolatedHeading = (interpolatedHeading + 360) % 360;
556
+ this.lastCalcOrient = Cesium.Transforms.headingPitchRollQuaternion(this.lastCalcPos3d, new Cesium.HeadingPitchRoll(Cesium.Math.toRadians(interpolatedHeading), Cesium.Math.toRadians(this.pitch), Cesium.Math.toRadians(this.roll)));
557
+ }
558
+ // If no valid heading is available, calculate based on movement direction
559
+ else {
560
+ var previousPos = this.positions[lastIndex].pos3d;
561
+ if (!previousPos || isNaN(previousPos.x)) {
562
+ return this.lastCalcOrient;
563
+ }
564
+ var nextPos_1 = this.positions[nextIndex].pos3d;
565
+ if (!nextPos_1 || isNaN(nextPos_1.x)) {
566
+ return this.lastCalcOrient;
567
+ }
568
+ // Flatten to avoid orientation changes due to height differences.
569
+ var adjustedPointPrev = Cesium.Cartographic.fromCartesian(previousPos);
570
+ var adjustedPos3dPrev = Cesium.Cartesian3.fromRadians(adjustedPointPrev.longitude, adjustedPointPrev.latitude, 0);
571
+ var adjustedPointNext = Cesium.Cartographic.fromCartesian(nextPos_1);
572
+ var adjustedPos3dNext = Cesium.Cartesian3.fromRadians(adjustedPointNext.longitude, adjustedPointNext.latitude, 0);
573
+ // Check if the previous and current positions are the same.
574
+ // We apply a threshold as well to avoid jittering.
575
+ if (Cesium.Cartesian3.distance(adjustedPos3dPrev, adjustedPos3dNext) < 0.05) {
576
+ return this.lastCalcOrient;
577
+ }
578
+ var direction = Cesium.Cartesian3.subtract(adjustedPos3dNext, adjustedPos3dPrev, new Cesium.Cartesian3());
579
+ // No movement, return the last calculated orientation.
580
+ if (direction.x == 0 && direction.y == 0 && direction.z == 0) {
581
+ return this.lastCalcOrient;
582
+ }
583
+ Cesium.Cartesian3.normalize(direction, direction);
584
+ // Calculate the rotation matrix from the position and direction.
585
+ var curPosition = this.lastCalcPos3d;
586
+ if (!curPosition || isNaN(curPosition.x)) {
587
+ curPosition = adjustedPos3dPrev;
588
+ }
589
+ var rotationMatrix = Cesium.Transforms.rotationMatrixFromPositionVelocity(curPosition, direction);
590
+ // Convert the rotation matrix to a quaternion.
591
+ var quaternion = Cesium.Quaternion.fromRotationMatrix(rotationMatrix);
592
+ // Apply pitch and roll adjustments
593
+ var hpr = new Cesium.HeadingPitchRoll(0, Cesium.Math.toRadians(this.pitch), Cesium.Math.toRadians(this.roll));
594
+ var pitchRollQuaternion = Cesium.Quaternion.fromHeadingPitchRoll(hpr);
595
+ // Combine the direction quaternion with pitch and roll.
596
+ Cesium.Quaternion.multiply(quaternion, pitchRollQuaternion, quaternion);
597
+ this.lastCalcOrient = quaternion;
598
+ }
599
+ return this.lastCalcOrient;
600
+ };
482
601
  return AnimatePositionSeries;
483
602
  }());
484
603
  CesiumAnimatedProperty.AnimatePositionSeries = AnimatePositionSeries;
604
+ function GetSeriesPossesForHistoricEntity(viewer, heightRef, historic) {
605
+ var series = [];
606
+ for (var i = 0; i < historic.length; i++) {
607
+ var item = historic[i];
608
+ var dateTime = new Date(item.dateTime);
609
+ if (!dateTime) {
610
+ continue;
611
+ }
612
+ var pos3d = entity_utils_1.EntityUtils.GetPos({
613
+ entity: item.data,
614
+ viewer: viewer,
615
+ recordHeightRef: heightRef,
616
+ returnHeightRef: heightRef,
617
+ allowRendered: false
618
+ });
619
+ if (!pos3d || isNaN(pos3d.x) || isNaN(pos3d.y) || isNaN(pos3d.z)) {
620
+ continue;
621
+ }
622
+ series.push({
623
+ dateTime: dateTime,
624
+ pos3d: pos3d,
625
+ heading: bruce_models_1.Entity.GetValue({
626
+ entity: item.data,
627
+ path: ["Bruce", "Transform", "Heading"]
628
+ })
629
+ });
630
+ }
631
+ return series;
632
+ }
633
+ CesiumAnimatedProperty.GetSeriesPossesForHistoricEntity = GetSeriesPossesForHistoricEntity;
485
634
  })(CesiumAnimatedProperty = exports.CesiumAnimatedProperty || (exports.CesiumAnimatedProperty = {}));
486
635
  //# sourceMappingURL=cesium-animated-property.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cesium-animated-property.js","sourceRoot":"","sources":["../../../src/rendering/cesium-animated-property.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cesium-animated-property.js","sourceRoot":"","sources":["../../../src/rendering/cesium-animated-property.ts"],"names":[],"mappings":";;;AAAA,6CAA0D;AAC1D,+BAAiC;AACjC,sDAAoD;AAEpD,SAAS,QAAQ,CAAC,MAAqB,EAAE,GAA0B;IAC/D,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAK,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,QAAQ,EAAE;QACxB,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;SACnC;QACD,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC9B;SACI;QACD,KAAK,GAAG,GAAG,CAAC;KACf;IACD,IAAI,KAAK,IAAI,KAAK,YAAY,MAAM,CAAC,qBAAqB,EAAE;QACxD,KAAK,GAAI,KAAsC,CAAC,KAAK,CAAC;KACzD;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,SAAS,CAAC,MAAqB,EAAE,GAA0B;IAChE,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAK,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,QAAQ,EAAE;QACxB,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;SACnC;QACD,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC9B;SACI;QACD,KAAK,GAAG,GAAG,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAAC,MAAqB,EAAE,GAA0B;IAClE,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAK,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,QAAQ,EAAE;QACxB,IAAI,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;QACvC,IAAI,CAAC,IAAI,EAAE;YACP,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;SACnC;QACD,KAAK,GAAG,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;KAC9B;SACI;QACD,KAAK,GAAG,GAAG,CAAC;KACf;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,MAAqB,EAAE,OAAmC;IAC9E,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,CAAA,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE;QACxC,OAAO,KAAK,CAAC;KAChB;IACD,IAAM,QAAQ,GAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,OAAO,CAAC;IAClC,IAAI,CAAC,QAAQ,EAAE;QACX,OAAO,KAAK,CAAC;KAChB;IACD,IAAI,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;QACvE,OAAO,KAAK,CAAC;KAChB;IACD,OAAO,IAAI,CAAC;AAChB,CAAC;AAED,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAM,YAAY,GAAG;IACjB,SAAS,IAAI,CAAC,CAAC;IACf,OAAO,SAAS,CAAC;AACrB,CAAC,CAAA;AAED,SAAS,OAAO,CAAC,KAAmB,EAAE,IAAY;IAC9C,KAAK,CAAC,yBAAyB,CAAC,GAAG,IAAI,CAAC;AAC5C,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,KAAmB;IACtD,OAAO,KAAK,CAAC,yBAAyB,CAAC,IAAI,IAAI,CAAC;AACpD,CAAC;AAED,IAAiB,sBAAsB,CAwsBtC;AAxsBD,WAAiB,sBAAsB;IAWnC;;;;;;;;;;;;;;;;;OAiBG;IACH;QAQI,sBAAY,MAAqB;;YAC7B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,UAAU,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAC3D,IAAI,MAAA,IAAI,CAAC,UAAU,0CAAE,KAAK,EAAE;gBACxB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;aAC7C;YACD,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC7C,OAAO,CAAC,IAAI,CAAC,0FAA0F,CAAC,CAAC;aAC5G;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAChC,CAAC;QAEM,6BAAM,GAAb;YACI,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC3D,OAAO,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC;QACxC,CAAC;QAED;;;WAGG;QACI,+BAAQ,GAAf;YACI,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAE3D,kBAAkB;YAClB,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC9B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;YAED,IAAI;gBACA,IAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC7C,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;aAC7F;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,6BAA6B;YAC7B,sCAAsC;YACtC,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5B,CAAC;QAED;;;WAGG;QACI,kCAAW,GAAlB;YACI,IAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,IAAI,MAAM,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACnD,CAAC;QACL,mBAAC;IAAD,CAAC,AA/DD,IA+DC;IA/DY,mCAAY,eA+DxB,CAAA;IAeD;QAQI,uBAAY,MAAsB;YAF1B,WAAM,GAAY,KAAK,CAAC;YAG5B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAC5D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;aACvB;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACd,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;aAC/B;QACL,CAAC;QAEM,4BAAI,GAAX;YACI,IAAI,IAAI,CAAC,MAAM,EAAE;gBACb,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;gBACpB,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;aAC/B;QACL,CAAC;QAEM,gCAAQ,GAAf;YACI,IAAI,IAAI,CAAC,MAAM,EAAE;gBACb,OAAO,IAAI,CAAC,UAAU,CAAC;aAC1B;YAED,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAE3D,kBAAkB;YAClB,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC9B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;YAED,IAAI;gBACA,IAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;aACxE;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,6BAA6B;YAC7B,sCAAsC;YACtC,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5B,CAAC;QACL,oBAAC;IAAD,CAAC,AAtDD,IAsDC;IAtDY,oCAAa,gBAsDzB,CAAA;IAED;;;;;;;;;;;;;;;;OAgBG;IACH,SAAgB,oBAAoB,CAAC,MAUpC;QACS,IAAA,MAAM,GAAkE,MAAM,OAAxE,EAAE,OAAO,GAAyD,MAAM,QAA/D,EAAe,KAAK,GAAqC,MAAM,YAA3C,EAAE,UAAU,GAAyB,MAAM,WAA/B,EAAE,UAAU,GAAa,MAAM,WAAnB,EAAE,MAAM,GAAK,MAAM,OAAX,CAAY;QACrF,2BAA2B,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,CAAC,UAAU,EAAE;YACb,IAAI,OAAO,CAAC,KAAK,EAAE;gBACf,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC;gBAC3B,IAAI,UAAU,CAAC,KAAK,EAAE;oBAClB,UAAU,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;iBACnC;aACJ;iBACI;gBACD,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;aAC3C;SACJ;QAED,2CAA2C;QAC3C,IAAI,QAAQ,GAAG,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAC/C,IAAI,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YACjD,QAAQ,GAAG,IAAI,CAAC;SACnB;QACD,IAAI,QAAQ,GAAG,KAAK,IAAI,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAChF,IAAI,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE;YACxB,OAAO,cAAQ,CAAC,CAAC;SACpB;aACI,IAAI,QAAQ,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE;YACxD,OAAO,cAAQ,CAAC,CAAC;SACpB;QAED,oEAAoE;QACpE,8DAA8D;QAC9D,IAAM,IAAI,GAAG,YAAY,EAAE,CAAC;QAC5B,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC7B,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;QAC1B,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAErB,IAAI,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC3B,IAAI,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,gBAAgB,CAAC;YACnD,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;gBAClC,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;gBACZ,OAAO,GAAG,IAAI,CAAC;gBACf,OAAO;aACV;YACD,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE;gBACvC,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;gBACZ,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;gBACX,OAAO;aACV;YAED,IAAI,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACrB,IAAI,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;YAEpD,kBAAkB;YAClB,IAAI,SAAS,IAAI,UAAU,EAAE;gBACzB,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;gBACtB,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;gBACZ,OAAO,GAAG,IAAI,CAAC;gBACf,MAAM,aAAN,MAAM,uBAAN,MAAM,EAAI,CAAC;gBACX,OAAO;aACV;YAED,IAAI;gBACA,IAAI,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;gBACtC,IAAI,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClF,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACxB,OAAO,CAAC,KAAK,GAAG,QAAQ,CAAC;gBACzB,OAAO;aACV;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,6BAA6B;YAC7B,0DAA0D;YAC1D,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,2CAA2C;QAC3C,OAAO,CAAC,wBAAwB,CAAC,GAAG,OAAO,CAAC;QAC5C,OAAO;YACH,OAAO,aAAP,OAAO,uBAAP,OAAO,EAAI,CAAC;YACZ,OAAO,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACN,CAAC;IA9Fe,2CAAoB,uBA8FnC,CAAA;IAED,SAAgB,2BAA2B,CAAC,OAAmC;QAC3E,IAAI,OAAO,IAAI,OAAO,CAAC,wBAAwB,CAAC,EAAE;YAC9C,OAAO,CAAC,wBAAwB,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,wBAAwB,CAAC,GAAG,IAAI,CAAC;SAC5C;IACL,CAAC;IALe,kDAA2B,8BAK1C,CAAA;IAED;QAOI,yBAAY,MAKX;YACG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAClB,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;aAC/D;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAChC,CAAC;QAEM,kCAAQ,GAAf;YACI,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAE3D,kBAAkB;YAClB,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC9B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;YAED,IAAI;gBACA,IAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC7C,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;aACvG;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,6BAA6B;YAC7B,sCAAsC;YACtC,OAAO,IAAI,CAAC,WAAW,CAAC;QAC5B,CAAC;QACL,sBAAC;IAAD,CAAC,AA5CD,IA4CC;IA5CY,sCAAe,kBA4C3B,CAAA;IACD;QAOI,wBAAY,MAKX;YACG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC;YAC7C,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YACpC,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC;YACnE,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE;gBACvB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC;aAC5B;YACD,IAAI,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAChC,CAAC;QAEM,+BAAM,GAAb;YACI,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAC3D,OAAO,SAAS,IAAI,IAAI,CAAC,UAAU,CAAC;QACxC,CAAC;QAEM,iCAAQ,GAAf;YACI,IAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,IAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;YAE3D,kBAAkB;YAClB,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE;gBAC9B,OAAO,IAAI,CAAC,gBAAgB,CAAC;aAChC;YAED,IAAI;gBACA,IAAM,QAAQ,GAAG,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;gBAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;aAClF;YACD,OAAO,CAAC,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aACpB;YAED,6BAA6B;YAC7B,sCAAsC;YACtC,OAAO,IAAI,CAAC,gBAAgB,CAAC;QACjC,CAAC;QACL,qBAAC;IAAD,CAAC,AAlDD,IAkDC;IAlDY,qCAAc,iBAkD1B,CAAA;IAQD;;;;;OAKG;IACH;QAkBI,+BAAY,MAMX;YAlBO,kBAAa,GAAsB,IAAI,CAAC;YACxC,yBAAoB,GAAW,CAAC,CAAC,CAAC;YAClC,yBAAoB,GAAW,CAAC,CAAC,CAAC;YAClC,iBAAY,GAAW,IAAI,CAAC;YAE5B,wBAAmB,GAAwB,EAAE,CAAC;YAC9C,uBAAkB,GAAW,IAAI,CAAC;YAElC,mBAAc,GAAsB,IAAI,CAAC;YACzC,uBAAkB,GAAW,IAAI,CAAC;YAUtC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAC1B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAA;YACvB,IAAI,CAAC,eAAe,EAAE,CAAC;YAEvB,2BAA2B;YAC3B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,UAAC,CAAC,EAAE,CAAC;gBACrB,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YACvD,CAAC,CAAC,CAAC;QACP,CAAC;QAED;;;WAGG;QACK,+CAAe,GAAvB;YACI,IAAI,UAAU,GAAG,KAAK,CAAC;YACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAI,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC5B,IAAI,GAAG,CAAC,OAAO,KAAK,IAAI,IAAI,GAAG,CAAC,OAAO,KAAK,CAAC,EAAE;oBAC3C,UAAU,GAAG,IAAI,CAAC;oBAClB,MAAM;iBACT;aACJ;YACD,IAAI,CAAC,UAAU,EAAE;gBACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5C,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC;iBACpC;aACJ;QACL,CAAC;QAEM,4CAAY,GAAnB;YACI,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1B,CAAC;QAEM,wCAAQ,GAAf;YAAA,iBAsDC;YArDG,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;YAC3C,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;aACvC;YACD,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9C,IAAI,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,OAAO,EAAE,EAAE;gBACxC,OAAO,IAAI,CAAC,aAAa,CAAC;aAC7B;YAED,IAAM,SAAS,GAAG;gBACd,0CAA0C;gBAC1C,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE;oBAC3D,KAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;oBAC9B,KAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC;oBAC9B,OAAO,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;iBAClC;gBAED,wCAAwC;gBACxC,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,KAAI,CAAC,SAAS,CAAC,KAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE;oBACnF,KAAI,CAAC,oBAAoB,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;oBACtD,KAAI,CAAC,oBAAoB,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;oBACtD,OAAO,KAAI,CAAC,SAAS,CAAC,KAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;iBAC1D;gBAED,6BAA6B;gBAC7B,IAAI,SAAS,GAAG,CAAC,CAAC;gBAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBAC5C,IAAI,GAAG,GAAG,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC5B,IAAI,OAAO,CAAC,OAAO,EAAE,IAAI,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE;wBAC7C,SAAS,GAAG,CAAC,CAAC;qBACjB;yBACI;wBACD,MAAM;qBACT;iBACJ;gBACD,IAAM,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBACvC,KAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;gBAEtC,4BAA4B;gBAC5B,IAAI,IAAI,GAAG,KAAI,CAAC,SAAS,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;gBACzC,IAAI,CAAC,IAAI,EAAE;oBACP,KAAI,CAAC,oBAAoB,GAAG,SAAS,CAAC;oBACtC,OAAO,IAAI,CAAC,KAAK,CAAC;iBACrB;gBACD,KAAI,CAAC,oBAAoB,GAAG,SAAS,GAAG,CAAC,CAAC;gBAE1C,IAAI,QAAQ,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBACnH,OAAO,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;YAC7F,CAAC,CAAC;YAEF,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,aAAa,GAAG,SAAS,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,aAAa,CAAC;QAC9B,CAAC;QAED;;WAEG;QACI,yCAAS,GAAhB;YACI,+BAA+B;YAC/B,IAAI,QAAQ,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC;YAC/C,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,GAAG,EAAE,EAAE;gBACtG,QAAQ,GAAG,IAAI,CAAC;aACnB;YACD,IAAI,CAAC,QAAQ,EAAE;gBACX,OAAO,IAAI,CAAC,mBAAmB,CAAC;aACnC;YAED,yBAAyB;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;YAC3C,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;aACvC;YACD,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAE9C,sBAAsB;YACtB,IAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;YAE1H,wEAAwE;YACxE,IAAM,oBAAoB,GAAG,IAAI,CAAC,CAAC,KAAK;YACxC,IAAM,kBAAkB,GAAG,aAAa,GAAG,oBAAoB,CAAC;YAEhE,6DAA6D;YAC7D,yBAAyB;YACzB,IAAM,SAAS,GAAwB,EAAE,CAAC;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC5C,IAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,GAAG,GAAG,OAAO,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,kBAAkB,GAAG,CAAC,CAAC,IAAI,OAAO,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,kBAAkB,GAAG,CAAC,CAAC,CAAC;gBACvJ,wFAAwF;gBACxF,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,oBAAoB,GAAG,CAAC,CAAC,EAC5E;oBACI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,oBAAoB,IAAI,CAAC,IAAI,IAAI,CAAC,oBAAoB,CAAC;iBAC1E;gBACD,IAAI,GAAG,EAAE;oBACL,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;iBAC7B;aACJ;YAED,IAAI,CAAC,kBAAkB,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;YAC5C,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;YACrC,OAAO,SAAS,CAAC;QACrB,CAAC;QAED;;;;WAIG;QACI,yCAAS,GAAhB;YACI,IAAI,QAAQ,GAAG,IAAI,CAAC,kBAAkB,IAAI,IAAI,CAAC;YAC/C,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,kBAAkB,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,IAAI,GAAG,EAAE,EAAE;gBACtG,QAAQ,GAAG,IAAI,CAAC;aACnB;YACD,IAAI,CAAC,QAAQ,EAAE;gBACX,OAAO,IAAI,CAAC,cAAc,CAAC;aAC9B;YAED,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7B,OAAO,IAAI,CAAC,cAAc,CAAC;aAC9B;YAED,yBAAyB;YACzB,IAAI,CAAC,QAAQ,EAAE,CAAC;YAEhB,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC;YAC3C,IAAI,CAAC,GAAG,EAAE;gBACN,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC;aACvC;YACD,IAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;YAExD,uDAAuD;YACvD,IAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC;YAC5C,IAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,CAAC;YAE5C,uBAAuB;YACvB,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,GAAG,CAAC,IAAI,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,IAAI,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;gBAC5G,OAAO,IAAI,CAAC,cAAc,CAAC;aAC9B;YAED,IAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAC1C,IAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;YAE1C,yEAAyE;YACzE,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE;gBACtD,IAAI,YAAY,GAAG,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;gBAErD,8CAA8C;gBAC9C,IAAI,YAAY,GAAG,GAAG,EAAE;oBACpB,YAAY,IAAI,GAAG,CAAC;iBACvB;qBACI,IAAI,YAAY,GAAG,CAAC,GAAG,EAAE;oBAC1B,YAAY,IAAI,GAAG,CAAC;iBACvB;gBAED,IAAM,MAAM,GAAG,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;gBAClH,IAAI,mBAAmB,GAAG,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC;gBAClE,mBAAmB,GAAG,CAAC,mBAAmB,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;gBAExD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,0BAA0B,CAC9D,IAAI,CAAC,aAAa,EAClB,IAAI,MAAM,CAAC,gBAAgB,CACvB,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,EAC1C,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EACjC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CACnC,CACJ,CAAC;aACL;YACD,0EAA0E;iBACrE;gBACD,IAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;gBACpD,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;oBACtC,OAAO,IAAI,CAAC,cAAc,CAAC;iBAC9B;gBAED,IAAM,SAAO,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;gBAChD,IAAI,CAAC,SAAO,IAAI,KAAK,CAAC,SAAO,CAAC,CAAC,CAAC,EAAE;oBAC9B,OAAO,IAAI,CAAC,cAAc,CAAC;iBAC9B;gBAED,kEAAkE;gBAClE,IAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;gBACzE,IAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAEpH,IAAM,iBAAiB,GAAG,MAAM,CAAC,YAAY,CAAC,aAAa,CAAC,SAAO,CAAC,CAAC;gBACrE,IAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,EAAE,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBAEpH,4DAA4D;gBAC5D,mDAAmD;gBACnD,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,GAAG,IAAI,EAAE;oBACzE,OAAO,IAAI,CAAC,cAAc,CAAC;iBAC9B;gBAED,IAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;gBAC5G,uDAAuD;gBACvD,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE;oBAC1D,OAAO,IAAI,CAAC,cAAc,CAAC;iBAC9B;gBACD,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBAElD,iEAAiE;gBACjE,IAAI,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC;gBACrC,IAAI,CAAC,WAAW,IAAI,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE;oBACtC,WAAW,GAAG,iBAAiB,CAAC;iBACnC;gBACD,IAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,kCAAkC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;gBAEpG,+CAA+C;gBAC/C,IAAM,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC,cAAc,CAAC,CAAC;gBAExE,mCAAmC;gBACnC,IAAM,GAAG,GAAG,IAAI,MAAM,CAAC,gBAAgB,CACnC,CAAC,EACD,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EACjC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CACnC,CAAC;gBACF,IAAM,mBAAmB,GAAG,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;gBAExE,wDAAwD;gBACxD,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC;gBAExE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC;aACpC;YAED,OAAO,IAAI,CAAC,cAAc,CAAC;QAC/B,CAAC;QACL,4BAAC;IAAD,CAAC,AAjSD,IAiSC;IAjSY,4CAAqB,wBAiSjC,CAAA;IAED,SAAgB,gCAAgC,CAAC,MAAqB,EAAE,SAAiC,EAAE,QAAoC;QAC3I,IAAM,MAAM,GAA+C,EAAE,CAAC;QAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACtC,IAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzB,IAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,CAAC,QAAQ,EAAE;gBACX,SAAS;aACZ;YACD,IAAM,KAAK,GAAG,0BAAW,CAAC,MAAM,CAAC;gBAC7B,MAAM,EAAE,IAAI,CAAC,IAAsB;gBACnC,MAAM,EAAE,MAAM;gBACd,eAAe,EAAE,SAAS;gBAC1B,eAAe,EAAE,SAAS;gBAC1B,aAAa,EAAE,KAAK;aACvB,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;gBAC9D,SAAS;aACZ;YACD,MAAM,CAAC,IAAI,CAAC;gBACR,QAAQ,UAAA;gBACR,KAAK,EAAE,KAAK;gBACZ,OAAO,EAAE,qBAAM,CAAC,QAAQ,CAAC;oBACrB,MAAM,EAAE,IAAI,CAAC,IAAsB;oBACnC,IAAI,EAAE,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC;iBAC1C,CAAC;aACL,CAAC,CAAC;SACN;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IA5Be,uDAAgC,mCA4B/C,CAAA;AACL,CAAC,EAxsBgB,sBAAsB,GAAtB,8BAAsB,KAAtB,8BAAsB,QAwsBtC"}