@needle-tools/engine 2.31.1-pre → 2.32.0-pre

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 (33) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/dist/needle-engine.d.ts +111 -111
  3. package/dist/needle-engine.js +72 -72
  4. package/dist/needle-engine.js.map +3 -3
  5. package/dist/needle-engine.min.js +17 -17
  6. package/dist/needle-engine.min.js.map +3 -3
  7. package/lib/engine/debug/error_overlay.js +4 -4
  8. package/lib/engine/debug/error_overlay.js.map +1 -1
  9. package/lib/engine/engine_input.d.ts +87 -102
  10. package/lib/engine/engine_input.js +173 -99
  11. package/lib/engine/engine_input.js.map +1 -1
  12. package/lib/engine/engine_mainloop_utils.d.ts +2 -1
  13. package/lib/engine/engine_mainloop_utils.js +5 -2
  14. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  15. package/lib/engine/engine_physics.d.ts +5 -1
  16. package/lib/engine/engine_physics.js +72 -22
  17. package/lib/engine/engine_physics.js.map +1 -1
  18. package/lib/engine/engine_setup.js +7 -3
  19. package/lib/engine/engine_setup.js.map +1 -1
  20. package/lib/engine-components/Component.d.ts +10 -3
  21. package/lib/engine-components/Component.js +98 -40
  22. package/lib/engine-components/Component.js.map +1 -1
  23. package/lib/engine-components/Rigidbody.d.ts +7 -4
  24. package/lib/engine-components/Rigidbody.js +43 -26
  25. package/lib/engine-components/Rigidbody.js.map +1 -1
  26. package/package.json +1 -1
  27. package/src/engine/debug/error_overlay.ts +3 -3
  28. package/src/engine/engine_input.ts +179 -103
  29. package/src/engine/engine_mainloop_utils.ts +6 -2
  30. package/src/engine/engine_physics.ts +86 -24
  31. package/src/engine/engine_setup.ts +8 -3
  32. package/src/engine-components/Component.ts +109 -40
  33. package/src/engine-components/RigidBody.ts +51 -29
@@ -44,10 +44,13 @@ THREE.Object3D.prototype["SetActive"] = function (active) {
44
44
  };
45
45
  class GameObject extends THREE.Object3D {
46
46
  guid;
47
- static setActive(go, active) {
47
+ static setActive(go, active, processStart = true) {
48
48
  if (!go)
49
49
  return;
50
50
  go.visible = active;
51
+ main.updateActiveInHierarchyWithoutEventCall(go);
52
+ if (active && processStart)
53
+ main.processStart(Context.Current, go);
51
54
  }
52
55
  static isActiveSelf(go) {
53
56
  return go.visible || GameObject.isUsingInstancing(go);
@@ -768,60 +771,115 @@ class Component {
768
771
  this.__didEnable = false;
769
772
  this._collisionExitRoutine = undefined;
770
773
  this.onDisable();
774
+ this._collisions?.clear();
771
775
  }
772
776
  constructor() {
773
777
  this.__internalNewInstanceCreated();
774
778
  }
775
779
  _collisionExitRoutine;
776
780
  _collisions = null;
781
+ _triggerExitRoutine;
782
+ _triggerCollisions = null;
783
+ get collisionsCount() { return this._collisions?.size ?? 0; }
777
784
  __internalResetsCachedPhysicsData() {
778
785
  this._collisionExitRoutine = null;
779
786
  this._collisions = null;
787
+ this._triggerExitRoutine = null;
788
+ this._triggerCollisions = null;
780
789
  }
781
- __internalHandleCollision(col) {
782
- if (this.onCollisionEnter || this.onCollisionExit || this.onCollisionStay) {
783
- const otherObject = col.gameObject;
784
- if (!this._collisions)
785
- this._collisions = new Map();
786
- if (this._collisions.has(otherObject)) {
787
- const cur = this._collisions.get(otherObject);
788
- cur.frame = this.context.time.frameCount;
789
- cur.col = col;
790
+ __internalHandleCollision(col, isTriggerCollision) {
791
+ if (isTriggerCollision) {
792
+ if (!this.onTriggerEnter && !this.onTriggerStay && !this.onTriggerExit)
793
+ return;
794
+ }
795
+ else {
796
+ if (!this.onCollisionEnter && !this.onCollisionStay && !this.onCollisionExit)
797
+ return;
798
+ }
799
+ const otherObject = col.gameObject;
800
+ // lazily create the maps
801
+ if (isTriggerCollision && !this._triggerCollisions)
802
+ this._triggerCollisions = new Map();
803
+ else if (!this._collisions)
804
+ this._collisions = new Map();
805
+ // select the correct map
806
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
807
+ if (collection.has(otherObject)) {
808
+ const cur = collection.get(otherObject);
809
+ // console.log("STAY", this.name, this.context.time.frameCount)
810
+ // cur.exitFrame = undefined;
811
+ cur.frame = this.context.time.frameCount;
812
+ cur.col = col;
813
+ if (isTriggerCollision)
814
+ this.onTriggerStay?.(col);
815
+ else
790
816
  this.onCollisionStay?.call(this, col);
791
- }
792
- else {
793
- const entry = { col, frame: this.context.time.frameCount };
794
- this._collisions.set(otherObject, entry);
817
+ }
818
+ else {
819
+ // console.log("START", this.name);
820
+ const entry = { col, frame: this.context.time.frameCount };
821
+ collection.set(otherObject, entry);
822
+ if (isTriggerCollision)
823
+ this.onTriggerEnter?.(col);
824
+ else
795
825
  this.onCollisionEnter?.call(this, col);
796
- }
797
826
  }
798
827
  }
799
- sendExitCollisionEvent(obj) {
800
- if (!this._collisions)
801
- return;
802
- const col = this._collisions.get(obj);
803
- if (!col)
828
+ __internalHandleExitCollisionEvent(obj, isTriggerCollision) {
829
+ if (isTriggerCollision) {
830
+ if (!this._triggerCollisions)
831
+ return;
832
+ }
833
+ else {
834
+ if (!this._collisions)
835
+ return;
836
+ }
837
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
838
+ const collision = collection.get(obj);
839
+ if (!collision)
804
840
  return;
805
- this.onCollisionExit?.call(this, col.col);
806
- this._collisions.delete(obj);
807
- }
808
- __waitForCollisionExit() {
809
- if (this._collisionExitRoutine)
841
+ collision.exitFrame = this.context.time.frameCount;
842
+ // console.log("EXIT col", this.name, this.context.time.frameCount);
843
+ // if (this.onCollisionExit !== undefined)
844
+ this.__waitForCollisionExit(isTriggerCollision);
845
+ if (!isTriggerCollision)
846
+ this.onCollisionExitRaw?.call(this, collision.col);
847
+ // this._collisions.delete(obj);
848
+ }
849
+ __waitForCollisionExit(isTriggerCollision) {
850
+ const routine = isTriggerCollision ? this._triggerExitRoutine : this._collisionExitRoutine;
851
+ if (routine)
810
852
  return;
811
- // const self = this;
812
- // function* routine() {
813
- // while (self._collisions && self._collisions.size > 0) {
814
- // for (let ob of self._collisions.keys()) {
815
- // const entry = self._collisions!.get(ob)!;
816
- // if (self.context.time.frameCount - entry.frame > 1) {
817
- // self._collisions!.delete(ob);
818
- // self.onCollisionExit?.call(self, entry.col);
819
- // }
820
- // }
821
- // yield;
822
- // }
823
- // }
824
- // this._collisionExitRoutine = this.startCoroutine(routine(), FrameEvent.EarlyUpdate);
853
+ const collection = isTriggerCollision ? this._triggerCollisions : this._collisions;
854
+ const self = this;
855
+ const frames = 10;
856
+ function* delayedExitRoutine() {
857
+ while (collection && collection.size > 0) {
858
+ for (let other of collection.keys()) {
859
+ const entry = collection.get(other);
860
+ if (entry.frame !== undefined && self.context.time.frameCount - entry.frame >= frames) {
861
+ // console.log("EXIT real", self.name, entry.col.gameObject.name, collection);
862
+ collection.delete(other);
863
+ if (isTriggerCollision)
864
+ self.onTriggerExit?.(entry.col);
865
+ else
866
+ self.onCollisionExit?.call(self, entry.col);
867
+ }
868
+ }
869
+ for (let i = 0; i < frames; i++)
870
+ yield;
871
+ }
872
+ if (isTriggerCollision)
873
+ self._triggerExitRoutine = undefined;
874
+ else
875
+ self._collisionExitRoutine = null;
876
+ // console.log("DONE", self.name);
877
+ }
878
+ const newRoutine = this.startCoroutine(delayedExitRoutine(), FrameEvent.OnAfterRender);
879
+ if (isTriggerCollision)
880
+ this._triggerExitRoutine = newRoutine;
881
+ else
882
+ this._collisionExitRoutine = newRoutine;
825
883
  }
826
884
  // TODO move this to threeutils
827
885
  // we need a copy for modifying the values to local space
@@ -900,7 +958,7 @@ class Component {
900
958
  }
901
959
  static _forward = new THREE.Vector3(0, 0, 1);
902
960
  get forward() {
903
- return Component._forward.set(0, 0, 1).applyQuaternion(this.worldQuaternion);
961
+ return Component._forward.set(0, 0, -1).applyQuaternion(this.worldQuaternion);
904
962
  }
905
963
  // EventTarget implementation:
906
964
  _eventListeners = new Map();
@@ -1 +1 @@
1
- {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAC;AAC3D,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,IAAI,MAAM,iCAAiC,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAS9G,oDAAoD;AACpD,2CAA2C;AAC3C,2BAA2B;AAC3B,wCAAwC;AACxC,6BAA6B;AAC7B,2DAA2D;AAC3D,IAAI;AAEJ,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAEhD,MAAM,CAAN,IAAY,SAUX;AAVD,WAAY,SAAS;IACjB,yCAAQ,CAAA;IACR,+DAAmB,CAAA;IACnB,+DAAmB,CAAA;IACnB,iEAAoB,CAAA;IACpB,uDAAe,CAAA;IACf,gEAAoB,CAAA;IACpB,4EAA0B,CAAA;IAC1B,kDAAqE,CAAA;IACrE,gEAA0D,CAAA;AAC9D,CAAC,EAVW,SAAS,KAAT,SAAS,QAUpB;AAaD,MAAM,OAAO,kBAAkB;IAC3B,UAAU,CAA2B;IAErC,mBAAmB;IACnB,MAAM,CAAiC;IACvC,iCAAiC;IACjC,iBAAiB,CAAU;IAC3B,QAAQ,CAA6B;IACrC,QAAQ,CAAgC;IACxC,KAAK,CAA6B;IAElC,OAAO,CAAuB;IAE9B,OAAO,CAAuB;CACjC;AAOD,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,UAAU,MAAe;IAC7D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1B,CAAC,CAAA;AAGD,MAAe,UAAW,SAAQ,KAAK,CAAC,QAAQ;IAE5C,IAAI,CAAqB;IAElB,MAAM,CAAC,SAAS,CAAC,EAAkB,EAAE,MAAe;QACvD,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,EAAE,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,EAAkB;QACzC,OAAO,EAAE,CAAC,OAAO,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAAC,EAAkB;QAChD,OAAO,EAAE,CAAC,0BAA0B,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,EAAkB,EAAE,SAAkB;QACxE,EAAE,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAAwB,IAAa,OAAO,QAAQ,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAEhH,MAAM,CAAC,gBAAgB,CAAC,QAAwB,EAAE,EAA4B,EAAE,YAAqB,IAAI;QAC5G,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC7C,IAAI,IAAI,YAAY,SAAS,EAAE;oBAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;oBACrB,IAAI,GAAG,KAAK,SAAS;wBAAE,OAAO,GAAG,CAAC;iBACrC;aACJ;SACJ;QAED,IAAI,SAAS,IAAI,QAAQ,CAAC,QAAQ,EAAE;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACnC,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,MAAM,GAAG,GAAG,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC9D,IAAI,GAAG,KAAK,SAAS;oBAAE,OAAO,GAAG,CAAC;aACrC;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAA4C,EAAE,IAAwB;QAClG,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,QAA4C,EAAE,OAAkC,IAAI;QAC1G,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAEnC,IAAI,OAAO,GAA8B,IAAI,CAAC;QAC9C,IAAI,IAAI,KAAK,IAAI,EAAE;YACf,kIAAkI;YAClI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;gBACzB,OAAO,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBACnC,OAAO,CAAC,QAAQ,GAAG,IAAgC,CAAC;aACvD;iBACI;gBACD,0CAA0C;gBAC1C,OAAO,GAAG,IAA0B,CAAC;gBACrC,SAAS;gBACT,0CAA0C;gBAC1C,oCAAoC;gBACpC,IAAI;aACP;SACJ;QAED,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,IAAI,OAAO,EAAE,OAAO;YAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChD,IAAI,KAAK,IAAI,OAAO,CAAC,KAAK;YACtB,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAE1C,yHAAyH;QACzH,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAChC,OAAO,CAAC,UAAU,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;SAC9D;QAED,MAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAkD,EAAE,CAAC,CAAC,uGAAuG;QAC5K,MAAM,aAAa,GAAkD,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAEzG,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,8BAA8B,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;SACjE;QAED,IAAI,KAAK,EAAE;YACP,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACxC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACxC;QAED,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YACxB,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1B,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE;gBAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC9C,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC9B,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aACxC;YACD,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,4BAA4B;gBACjC,IAAI,CAAC,4BAA4B,EAAE,CAAC;SAC3C;QACD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YACxB,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,IAAI,CAAC,YAAY;gBACjB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK;gBAAE,SAAS;;gBAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SAC5B;QAED,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhC,OAAO,KAAmB,CAAC;IAC/B,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAC9B,OAAgB,EAAE,QAAqC,EAAE,IAA+B,EACxF,cAAgC,EAChC,iBAAgE,EAChE,gBAA+D;QAG/D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,uDAAuD;QACvD,2CAA2C;QAC3C,wEAAwE;QACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;QACvB,IAAI,KAAkC,CAAC;QACvC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE7B,2CAA2C;QAC3C,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAExE,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE;YACjC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAC1E;QAED,gEAAgE;QAChE,4BAA4B;QAE5B,IAAI,IAAI,EAAE,OAAO,KAAK,SAAS;YAC3B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAEjC,IAAI,IAAI,EAAE,UAAU,EAAE;YAClB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAe,KAAmB,CAAC;YAChD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;SAC1C;QAED,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YACvD,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC/C;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,IAAI,MAAM,EAAE;YACR,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACrB;QAED,kBAAkB;QAClB,IAAI,IAAI,EAAE,QAAQ,EAAE;YAChB,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrD;;YACI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,IAAI,EAAE,QAAQ,EAAE;YAChB,UAAU,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpD,wCAAwC;SAC3C;;YACI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,KAAK,EAAE;YACb,kCAAkC;YAClC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;;YACI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE;YACzC,IAAI,eAAe,GAAoB,IAAI,CAAC;YAC5C,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACjC,eAAe,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC3E;iBACI;gBACD,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;aACjC;YACD,IAAI,eAAe,EAAE;gBACjB,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;gBAC5F,IAAI,CAAC,IAAI;oBAAE,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,eAAe,EAAE,8BAA8B,EAAE,QAAQ,CAAC,CAAC;;oBACxG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;aAC1C;;gBACI,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAC5D;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAC1D,IAAI,GAAG,KAAK,YAAY;gBAAE,SAAS;YACnC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SAC/B;QAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE;YAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;YAChD,MAAM,aAAa,GAAgB,EAAE,CAAC;YACtC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAC;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,0BAA0B;gBAC1B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAE7B;SACJ;QAED,oDAAoD;QACpD,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;SAC3B;QAED,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,QAAQ,EAAE;YAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAmB,EAAE,IAAI,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;YACzI,IAAI,QAAQ;gBACR,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC3B;QAED,OAAO,KAAK,CAAC;IAEjB,CAAC;IAEO,MAAM,CAAC,8BAA8B,CACzC,aAA4D,EAC5D,aAA4D;QAE5D,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAA6B,CAAC;YACnD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,KAA0B,CAAC;YAC7C,uCAAuC;YACvC,IAAI,CAAC,gBAAgB,EAAE;gBACnB,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;gBACnD,SAAS;aACZ;YACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC7C,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAE9C,KAAK,CAAC,QAAQ,GAAG,cAAc,CAAC;YAChC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnD,gCAAgC;YAChC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YACzD,yCAAyC;YACzC,iEAAiE;YACjE,wEAAwE;YACxE,MAAM,KAAK,GAAsB,EAAE,CAAC;YACpC,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,UAAU,GAAG,WAAW,CAAC,KAAmB,CAAC;gBACnD,yEAAyE;gBACzE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1B;YACD,8CAA8C;YAC9C,2BAA2B;YAC3B,gBAAgB;YAChB,0BAA0B;YAC1B,0BAA0B;YAC1B,iDAAiD;SACpD;QACD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,KAA0B,CAAC;YAC5D,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,sCAAsC;YACtC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7C,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC9B,gBAAgB;SACnB;IACL,CAAC;IAED,0DAA0D;IAC1D,sCAAsC;IACtC,qCAAqC;IACrC,4CAA4C;IAE5C,kDAAkD;IAClD,0BAA0B;IAC1B,wDAAwD;IACxD,wEAAwE;IACxE,YAAY;IACZ,QAAQ;IACR,0EAA0E;IAC1E,oDAAoD;IACpD,mDAAmD;IACnD,UAAU;IAEV,uCAAuC;IACvC,2CAA2C;IAC3C,mCAAmC;IACnC,qDAAqD;IACrD,yDAAyD;IAEzD,6DAA6D;IAC7D,6DAA6D;IAE7D,wEAAwE;IACxE,4CAA4C;IAC5C,cAAc;IACd,uEAAuE;IACvE,UAAU;IACV,oBAAoB;IAEpB,IAAI;IAEI,MAAM,CAAC,iBAAiB,CAAC,aAA4D;QACzF,0GAA0G;QAC1G,uFAAuF;QACvF,kGAAkG;QAClG,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACxB,qBAAqB;YACrB,IAAI,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE;gBAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACvD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1C,6CAA6C;oBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACrC,8BAA8B;oBAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE;wBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;4BACtB,MAAM,WAAW,GAAe,EAAE,CAAC;4BACnC,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;4BACxB,4CAA4C;4BAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCACnC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gCACvB,kCAAkC;gCAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oCAC3B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oCACxB,SAAS;iCACZ;gCACD,MAAM,GAAG,GAAQ,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;gCAC9E,IAAI,GAAG,KAAK,SAAS;oCACjB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;oCACrB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6BAChC;4BACD,yBAAyB;yBAC5B;6BACI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;4BAChC,MAAM,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;4BACzE,IAAI,GAAG,KAAK,SAAS,EAAE;gCACnB,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;6BACnB;yBACJ;qBACJ;iBACJ;aACJ;SACJ;IAEL,CAAC;IAEO,MAAM,CAAC,sBAAsB,CAAC,IAAoB,EAAE,GAAW,EAAE,KAAK,EAAE,aAA4D;QACxI,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,YAAY,SAAS,EAAE;YAC1D,MAAM,2BAA2B,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;YACxD,wDAAwD;YACxD,IAAI,2BAA2B,EAAE;gBAC7B,MAAM,EAAE,GAAG,2BAA2B,CAAC,IAAI,CAAC;gBAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;gBAC/C,IAAI,CAAC,aAAa,EAAE;oBAChB,6BAA6B;oBAC7B,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC9D,OAAO;iBACV;gBACD,MAAM,KAAK,GAAG,2BAA2B,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC7E,IAAI,KAAK,IAAI,CAAC,EAAE;oBACZ,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACzB,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oBACvD,OAAO,KAAK,CAAC;iBAChB;qBACI;oBACD,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;iBACxD;aACJ;SACJ;aAAM,IAAI,KAAK,YAAY,KAAK,CAAC,QAAQ,EAAE;YACxC,sBAAsB;YACtB,IAAI,GAAG,KAAK,YAAY;gBAAE,OAAO;YACjC,MAAM,2BAA2B,GAAG,KAAK,CAAC;YAC1C,IAAI,2BAA2B,EAAE;gBAC7B,MAAM,EAAE,GAAG,2BAA2B,CAAC,IAAI,CAAC;gBAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;gBAC/C,IAAI,aAAa,EAAE;oBACf,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;oBACzD,OAAO,aAAa,CAAC;iBACxB;aACJ;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,QAAoC,EAAE,OAAiB,EAAE,YAAqB,IAAI;QAC1G,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,EAAE,GAAG,QAAsB,CAAC;QAClC,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;QACrC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,QAAoC,EAAE,YAAqB,IAAI,EAAE,SAAkB,IAAI;QACzG,MAAM,IAAI,GAAG,QAAqB,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO;SACV;QAED,MAAM,GAAG,GAAG,QAAsB,CAAC;QACnC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE5B,IAAI,SAAS,IAAI,GAAG,CAAC,QAAQ,EAAE;YAC3B,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE;gBAC3B,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;aAC5C;SACJ;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC3C,IAAI,UAAU,EAAE;YACZ,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAc,UAAU,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAI,IAAI,CAAC,OAAO,EAAE;oBACd,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;oBAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;iBAClB;gBACD,4DAA4D;gBAC5D,IAAI,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE;oBAChC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;oBAC/B,CAAC,EAAE,CAAC;iBACP;aACJ;SACJ;QACD,IAAI,MAAM;YACN,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAC,QAA2C,EAAE,MAAsB,EAAE,OAAiB;QACpG,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM;YAAE,OAAO;QACjC,IAAI,QAAQ,KAAK,MAAM,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;YACrD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;SAC7B;QACD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrB,IAAI,CAAC,uCAAuC,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,OAAO,EAAE;YACT,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAe,EAAE,EAAE;gBACtD,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAQ,CAAC,CAAC;gBACvC,IAAI,OAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;oBACpD,OAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;iBACrD;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;SACZ;aACI;YACD,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACnC;IACL,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,QAA2C;QAC5D,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;YAC3C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,EAAqC,EAAE,YAAmC,EAAE,GAAG,IAAS;QACnH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,EAAqC,EAAE,YAAmC,EAAE,WAAoB,KAAK,EAAE,GAAG,IAAS;QACpI,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;YAC1B,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3B,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;gBAChC,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzB,wBAAwB;gBACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;aACjB;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,eAAe,CAAsB,EAA+B,EAAE,IAA4B,EAAE,YAAqB,IAAI;QACvI,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,EAAc,EAAE,QAAmB;QAC1D,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;SAClF;QACD,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,QAAmB;QAC7C,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACtD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAI,EAA+B,EAAE,QAA+B;QAC/F,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,QAAqD,CAAiB,CAAC;IAC3G,CAAC;IAEM,MAAM,CAAC,YAAY,CAAI,EAAsC,EAAE,QAA+B;QACjG,IAAI,EAAE,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC7B,0FAA0F;QAC1F,kEAAkE;QAClE,uCAAuC;QACvC,0BAA0B;QAC1B,OAAO,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAEM,MAAM,CAAC,aAAa,CAAI,EAAsC,EAAE,QAA+B,EAAE,MAAkB,IAAI;QAC1H,IAAI,EAAE,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,IAAY,EAAE,SAAyB;QAC5D,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAI,QAAiC,EAAE,OAAkC,EAAE,kBAA2B,IAAI;QACpI,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IACvE,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAI,QAAwB,EAAE,OAAkC;QAC3F,MAAM,GAAG,GAAG,EAAE,CAAC;QACf,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,MAAM,CAAC,sBAAsB,CAAI,EAA+B,EAAE,QAA+B;QACpG,OAAO,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAI,EAA+B,EAAE,QAA+B,EAAE,MAAkB,IAAI;QAC7H,OAAO,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAI,EAAiD,EAAE,QAAwB;QAC7G,OAAO,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAI,EAA+B,EAAE,QAAwB,EAAE,MAAuB,IAAI;QACzH,OAAO,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,EAA+B;QAC1D,MAAM,cAAc,GAAG,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,CAAC,iBAAiB,CAAC,EAA+B;QAC5D,MAAM,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC;QACtC,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACJ;IACL,CAAC;CAYJ;AAGD,kFAAkF;AAClF,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,EAAE;IAC1D,GAAG,EAAE;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,GAAG,EAAE,UAAU,GAAqB;QAChC,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;CACJ,CAAC,CAAC;AAGH,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,UAA+B,IAA4B;IACrG,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,UAAU,IAAe;IACnE,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,UAAa,QAA+B;IACxF,OAAO,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,UAAa,IAAoB;IACxE,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IACnF,OAAO,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC,GAAG,UAAa,IAAoB;IAClF,OAAO,UAAU,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,yBAAyB,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IAC7F,OAAO,UAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC/D,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,UAAa,IAAoB;IAChF,OAAO,UAAU,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,uBAAuB,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IAC3F,OAAO,UAAU,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7D,CAAC,CAAA;AAED,mCAAmC;AACnC,sEAAsE;AACtE,sCAAsC;AACtC,wCAAwC;AACxC,gDAAgD;AAChD,iDAAiD;AACjD,+CAA+C;AAC/C,QAAQ;AACR,IAAI;AACJ,yBAAyB;AAGzB,MAAM,SAAS;IAEX,IAAI,WAAW,KAAc,OAAO,IAAI,CAAC,CAAC,CAAC;IAEnC,SAAS,CAAsB;IACvC,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,CAAC,OAAgB;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;IAC7B,CAAC;IACD,IAAI,KAAK,KAAkB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAEvD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC;IAC5C,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC;IAC1C,CAAC;IACO,MAAM,CAAU;IACxB,IAAI,IAAI,CAAC,GAAW;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ;gBAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,EAAE,CAAA;YAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACrB;aACI;YACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACrB;IACL,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC;IACzC,CAAC;IACD,IAAI,GAAG,CAAC,GAAW;QACf,IAAI,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC;IAC3C,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC/C,CAAC;IAGD,IAAI,gBAAgB;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAO,KAAK,CAAC;QAC9C,4BAA4B;QAC5B,OAAO;QACP,0CAA0C;QAC1C,qCAAqC;QACrC,oCAAoC;QACpC,IAAI;QACJ,cAAc;QACd,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAY,UAAU;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACnC,CAAC;IACD,IAAY,qBAAqB;QAC7B,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC;QACxD,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,UAAU,CAAc;IACxB,IAAI,GAAW,SAAS,CAAC;IACzB,QAAQ,CAAoB;IAM5B,uGAAuG;IACvG,KAAK,KAAK,CAAC;IACX,eAAe;IACf,QAAQ,KAAK,CAAC;IACd,SAAS,KAAK,CAAC;IACf,SAAS;QACL,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAcD,cAAc,CAAC,OAAkB,EAAE,MAAkB,UAAU,CAAC,MAAM;QAClE,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CAAC,OAAkB,EAAE,MAAkB,UAAU,CAAC,MAAM;QACjE,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,OAAO;QACV,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,gCAAgC;QAChC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,GAAY,KAAK,CAAC;IAC9B,UAAU,GAAY,KAAK,CAAC;IAC1B,WAAW,GAAY,KAAK,CAAC;IAC7B,WAAW,GAAwB,SAAS,CAAC;IAC/C,WAAW,GAAY,KAAK,CAAC;IAErC,4BAA4B;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED,eAAe;QACX,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,kCAAkC;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,0BAA0B;QAE1B,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAED,eAAe;QACX,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,gBAAgB;QACZ,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAC7B,oCAAoC;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED,iBAAiB;QACb,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC9B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC;IACrB,CAAC;IAED;QACI,IAAI,CAAC,4BAA4B,EAAE,CAAC;IACxC,CAAC;IAEO,qBAAqB,CAAM;IAC3B,WAAW,GAA4D,IAAI,CAAC;IAE5E,iCAAiC;QACrC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAED,yBAAyB,CAAC,GAAc;QACpC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,eAAe,EAAE;YACvE,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;YACpD,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBACnC,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC;gBAC/C,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;gBACzC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;gBACd,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aACzC;iBACI;gBACD,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC3D,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;gBACzC,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;aAC1C;SACJ;IACL,CAAC;IAED,sBAAsB,CAAC,GAAc;QACjC,IAAG,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC7B,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAG,CAAC,GAAG;YAAE,OAAO;QAChB,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1C,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAEO,sBAAsB;QAC1B,IAAI,IAAI,CAAC,qBAAqB;YAAE,OAAO;QACvC,qBAAqB;QACrB,wBAAwB;QACxB,8DAA8D;QAC9D,oDAAoD;QACpD,wDAAwD;QACxD,oEAAoE;QACpE,gDAAgD;QAChD,+DAA+D;QAC/D,gBAAgB;QAChB,YAAY;QACZ,iBAAiB;QACjB,QAAQ;QACR,IAAI;QACJ,uFAAuF;IAC3F,CAAC;IAGD,+BAA+B;IAE/B,yDAAyD;IACjD,MAAM,CAAC,oBAAoB,GAAkB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;IACjE,MAAM,CAAC,sBAAsB,GAAqB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;IACzE,MAAM,CAAC,iBAAiB,GAAgB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;IAE1D,cAAc,GAA8B,SAAS,CAAC;IACtD,gBAAgB,GAAiC,SAAS,CAAC;IAC3D,MAAM,CAAC,sBAAsB,GAAqB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;IACzE,WAAW,GAA4B,SAAS,CAAC;IACjD,cAAc,GAA8B,SAAS,CAAC;IAE9D,IAAI,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACpE,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAClE,yDAAyD;QACzD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa,CAAC,GAAkB;QAChC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QAC5C,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,oBAAoB,CAAC;IACxD,CAAC;IAGD,IAAI,eAAe;QACf,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3E,OAAO,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,eAAe,CAAC,GAAqB;QACrC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACzD,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,sBAAsB,CAAC;IAC5D,CAAC;IAGD,2BAA2B;IAC3B,IAAI,UAAU;QACV,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,2BAA2B;IAC3B,IAAI,UAAU,CAAC,GAAgB;QAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3E,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IAED,8BAA8B;IAC9B,IAAI,aAAa;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACpE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;QAC/B,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,aAAa,CAAC,GAAkB;QAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,UAAmB,IAAI;QACrE,IAAI,OAAO,EAAE;YACT,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC1B;QACD,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,SAAS,CAAC,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,sBAAsB,CAAC;IAC5D,CAAC;IAEO,MAAM,CAAC,QAAQ,GAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,IAAW,OAAO;QAEd,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACjF,CAAC;IAID,8BAA8B;IAEtB,eAAe,GAAG,IAAI,GAAG,EAA2B,CAAC;IAE7D,gBAAgB,CAAC,IAAY,EAAE,QAAuB;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,IAAY,EAAE,QAAuB;QACrD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAAE,OAAO;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,KAAK,IAAI,CAAC;YAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,aAAa,CAAC,GAAU;QAEpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACrB;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;;AAIL,MAAM,SAAU,SAAQ,SAAS;IAC7B,uCAAuC;IAEvC,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,kDAAkD;IACvF,CAAC;IACD,IAAI,OAAO,CAAC,GAAY;QAEpB,oDAAoD;QACpD,4DAA4D;QAC5D,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACzB,IAAI,GAAG,IAAI,GAAG;gBAAE,GAAG,GAAG,IAAI,CAAC;;gBACtB,GAAG,GAAG,KAAK,CAAC;SACpB;QAED,IAAI,GAAG,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO;QAErC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,oBAAoB;QACpB,gFAAgF;QAChF,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,IAAI,GAAG,EAAE;YACL,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC3B;aAAM;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;IACL,CAAC;CACJ;AAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../../engine-components/Component.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,MAAM,MAAM,6BAA6B,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,KAAK,UAAU,MAAM,8BAA8B,CAAC;AAC3D,OAAO,KAAK,KAAK,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,4BAA4B,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,IAAI,MAAM,iCAAiC,CAAC;AAExD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAS9G,oDAAoD;AACpD,2CAA2C;AAC3C,2BAA2B;AAC3B,wCAAwC;AACxC,6BAA6B;AAC7B,2DAA2D;AAC3D,IAAI;AAEJ,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AAEhD,MAAM,CAAN,IAAY,SAUX;AAVD,WAAY,SAAS;IACjB,yCAAQ,CAAA;IACR,+DAAmB,CAAA;IACnB,+DAAmB,CAAA;IACnB,iEAAoB,CAAA;IACpB,uDAAe,CAAA;IACf,gEAAoB,CAAA;IACpB,4EAA0B,CAAA;IAC1B,kDAAqE,CAAA;IACrE,gEAA0D,CAAA;AAC9D,CAAC,EAVW,SAAS,KAAT,SAAS,QAUpB;AAaD,MAAM,OAAO,kBAAkB;IAC3B,UAAU,CAA2B;IAErC,mBAAmB;IACnB,MAAM,CAAiC;IACvC,iCAAiC;IACjC,iBAAiB,CAAU;IAC3B,QAAQ,CAA6B;IACrC,QAAQ,CAAgC;IACxC,KAAK,CAA6B;IAElC,OAAO,CAAuB;IAE9B,OAAO,CAAuB;CACjC;AAOD,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,WAAW,CAAC,GAAG,UAAU,MAAe;IAC7D,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;AAC1B,CAAC,CAAA;AAGD,MAAe,UAAW,SAAQ,KAAK,CAAC,QAAQ;IAE5C,IAAI,CAAqB;IAElB,MAAM,CAAC,SAAS,CAAC,EAAkB,EAAE,MAAe,EAAE,eAAwB,IAAI;QACrF,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,EAAE,CAAC,OAAO,GAAG,MAAM,CAAC;QACpB,IAAI,CAAC,uCAAuC,CAAC,EAAE,CAAC,CAAC;QACjD,IAAI,MAAM,IAAI,YAAY;YACtB,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,EAAkB;QACzC,OAAO,EAAE,CAAC,OAAO,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC1D,CAAC;IAEM,MAAM,CAAC,mBAAmB,CAAC,EAAkB;QAChD,OAAO,EAAE,CAAC,0BAA0B,CAAC,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC;IAC9E,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAC,EAAkB,EAAE,SAAkB;QACxE,EAAE,CAAC,qBAAqB,CAAC,GAAG,SAAS,CAAC;IAC1C,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAAwB,IAAa,OAAO,QAAQ,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAEhH,MAAM,CAAC,gBAAgB,CAAC,QAAwB,EAAE,EAA4B,EAAE,YAAqB,IAAI;QAC5G,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,QAAQ,CAAC,QAAQ,CAAC,UAAU,EAAE;YAC9B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC1D,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC7C,IAAI,IAAI,YAAY,SAAS,EAAE;oBAC3B,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;oBACrB,IAAI,GAAG,KAAK,SAAS;wBAAE,OAAO,GAAG,CAAC;iBACrC;aACJ;SACJ;QAED,IAAI,SAAS,IAAI,QAAQ,CAAC,QAAQ,EAAE;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC/C,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACnC,IAAI,CAAC,KAAK;oBAAE,SAAS;gBACrB,MAAM,GAAG,GAAG,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;gBAC9D,IAAI,GAAG,KAAK,SAAS;oBAAE,OAAO,GAAG,CAAC;aACrC;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAC,QAA4C,EAAE,IAAwB;QAClG,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,OAAO,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC3C,CAAC;IAEM,MAAM,CAAC,WAAW,CAAC,QAA4C,EAAE,OAAkC,IAAI;QAC1G,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAEnC,IAAI,OAAO,GAA8B,IAAI,CAAC;QAC9C,IAAI,IAAI,KAAK,IAAI,EAAE;YACf,kIAAkI;YAClI,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;gBACzB,OAAO,GAAG,IAAI,kBAAkB,EAAE,CAAC;gBACnC,OAAO,CAAC,QAAQ,GAAG,IAAgC,CAAC;aACvD;iBACI;gBACD,0CAA0C;gBAC1C,OAAO,GAAG,IAA0B,CAAC;gBACrC,SAAS;gBACT,0CAA0C;gBAC1C,oCAAoC;gBACpC,IAAI;aACP;SACJ;QAED,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,IAAI,OAAO,EAAE,OAAO;YAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAChD,IAAI,KAAK,IAAI,OAAO,CAAC,KAAK;YACtB,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;QAE1C,yHAAyH;QACzH,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YAChC,OAAO,CAAC,UAAU,GAAG,IAAI,qBAAqB,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;SAC9D;QAED,MAAM,UAAU,GAAqB,EAAE,CAAC;QACxC,MAAM,SAAS,GAAkD,EAAE,CAAC,CAAC,uGAAuG;QAC5K,MAAM,aAAa,GAAkD,EAAE,CAAC;QACxE,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAEzG,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YAClC,IAAI,CAAC,8BAA8B,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;SACjE;QAED,IAAI,KAAK,EAAE;YACP,UAAU,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACxC,UAAU,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;SACxC;QAED,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YACxB,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;YAC1B,IAAI,OAAO,IAAI,OAAO,CAAC,UAAU,EAAE;gBAC/B,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;gBAC9C,QAAQ,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC;gBAC9B,IAAI,KAAK;oBACL,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;aACxC;YACD,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACxC,IAAI,IAAI,CAAC,4BAA4B;gBACjC,IAAI,CAAC,4BAA4B,EAAE,CAAC;SAC3C;QACD,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE;YACxB,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,IAAI,CAAC,YAAY;gBACjB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,IAAI,CAAC,OAAO,KAAK,KAAK;gBAAE,SAAS;;gBAChC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;SAC5B;QAED,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAEhC,OAAO,KAAmB,CAAC;IAC/B,CAAC;IAEO,MAAM,CAAC,mBAAmB,CAC9B,OAAgB,EAAE,QAAqC,EAAE,IAA+B,EACxF,cAAgC,EAChC,iBAAgE,EAChE,gBAA+D;QAG/D,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAC3B,uDAAuD;QACvD,2CAA2C;QAC3C,wEAAwE;QACxE,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC;QACvB,IAAI,KAAkC,CAAC;QACvC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC7B,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAE7B,2CAA2C;QAC3C,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAExE,IAAI,QAAQ,CAAC,IAAI,KAAK,aAAa,EAAE;YACjC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;SAC1E;QAED,gEAAgE;QAChE,4BAA4B;QAE5B,IAAI,IAAI,EAAE,OAAO,KAAK,SAAS;YAC3B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAEjC,IAAI,IAAI,EAAE,UAAU,EAAE;YAClB,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,YAAY,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAe,KAAmB,CAAC;YAChD,IAAI,OAAO;gBAAE,OAAO,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;SAC1C;QAED,IAAI,QAAQ,CAAC,UAAU,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YACvD,KAAK,CAAC,UAAU,GAAG,CAAC,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC;SAC/C;QAED,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;QAC/B,IAAI,MAAM,EAAE;YACR,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;SACrB;QAED,kBAAkB;QAClB,IAAI,IAAI,EAAE,QAAQ,EAAE;YAChB,UAAU,CAAC,gBAAgB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;SACrD;;YACI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,IAAI,EAAE,QAAQ,EAAE;YAChB,UAAU,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpD,wCAAwC;SAC3C;;YACI,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,IAAI,EAAE,KAAK,EAAE;YACb,kCAAkC;YAClC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChC;;YACI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAEtC,IAAI,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO,EAAE;YACzC,IAAI,eAAe,GAAoB,IAAI,CAAC;YAC5C,IAAI,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,EAAE;gBACjC,eAAe,GAAG,KAAK,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC3E;iBACI;gBACD,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC;aACjC;YACD,IAAI,eAAe,EAAE;gBACjB,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC;gBAC5F,IAAI,CAAC,IAAI;oBAAE,OAAO,CAAC,KAAK,CAAC,uBAAuB,EAAE,eAAe,EAAE,8BAA8B,EAAE,QAAQ,CAAC,CAAC;;oBACxG,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;aAC1C;;gBACI,OAAO,CAAC,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SAC5D;QAED,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAC1D,IAAI,GAAG,KAAK,YAAY;gBAAE,SAAS;YACnC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SAC/B;QAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE;YAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC;YAChD,MAAM,aAAa,GAAgB,EAAE,CAAC;YACtC,KAAK,CAAC,QAAQ,CAAC,UAAU,GAAG,aAAa,CAAC;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACjC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBAC1B,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACzB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;gBACxB,0BAA0B;gBAC1B,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;aAE7B;SACJ;QAED,oDAAoD;QACpD,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;SAC3B;QAED,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,QAAQ,EAAE;YAChC,MAAM,KAAK,GAAG,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YACpC,MAAM,QAAQ,GAAG,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,KAAmB,EAAE,IAAI,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC;YACzI,IAAI,QAAQ;gBACR,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;SAC3B;QAED,OAAO,KAAK,CAAC;IAEjB,CAAC;IAEO,MAAM,CAAC,8BAA8B,CACzC,aAA4D,EAC5D,aAA4D;QAE5D,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,QAA6B,CAAC;YACnD,MAAM,gBAAgB,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAC3C,MAAM,KAAK,GAAG,GAAG,CAAC,KAA0B,CAAC;YAC7C,uCAAuC;YACvC,IAAI,CAAC,gBAAgB,EAAE;gBACnB,OAAO,CAAC,IAAI,CAAC,+BAA+B,EAAE,GAAG,CAAC,CAAC;gBACnD,SAAS;aACZ;YACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,KAAK,CAAC;YAC7C,MAAM,cAAc,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;YAE9C,KAAK,CAAC,QAAQ,GAAG,cAAc,CAAC;YAChC,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YACnD,gCAAgC;YAChC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAC;YACzD,yCAAyC;YACzC,iEAAiE;YACjE,wEAAwE;YACxE,MAAM,KAAK,GAAsB,EAAE,CAAC;YACpC,cAAc,CAAC,KAAK,GAAG,KAAK,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAC3C,MAAM,IAAI,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC9B,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,MAAM,UAAU,GAAG,WAAW,CAAC,KAAmB,CAAC;gBACnD,yEAAyE;gBACzE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAC1B;YACD,8CAA8C;YAC9C,2BAA2B;YAC3B,gBAAgB;YAChB,0BAA0B;YAC1B,0BAA0B;YAC1B,iDAAiD;SACpD;QACD,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,KAA0B,CAAC;YAC5D,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;YACxB,sCAAsC;YACtC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;YAC7C,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;YAC9B,gBAAgB;SACnB;IACL,CAAC;IAED,0DAA0D;IAC1D,sCAAsC;IACtC,qCAAqC;IACrC,4CAA4C;IAE5C,kDAAkD;IAClD,0BAA0B;IAC1B,wDAAwD;IACxD,wEAAwE;IACxE,YAAY;IACZ,QAAQ;IACR,0EAA0E;IAC1E,oDAAoD;IACpD,mDAAmD;IACnD,UAAU;IAEV,uCAAuC;IACvC,2CAA2C;IAC3C,mCAAmC;IACnC,qDAAqD;IACrD,yDAAyD;IAEzD,6DAA6D;IAC7D,6DAA6D;IAE7D,wEAAwE;IACxE,4CAA4C;IAC5C,cAAc;IACd,uEAAuE;IACvE,UAAU;IACV,oBAAoB;IAEpB,IAAI;IAEI,MAAM,CAAC,iBAAiB,CAAC,aAA4D;QACzF,0GAA0G;QAC1G,uFAAuF;QACvF,kGAAkG;QAClG,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE;YAC7B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;YACxB,qBAAqB;YACrB,IAAI,KAAK,CAAC,QAAQ,EAAE,UAAU,EAAE;gBAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACvD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC1C,6CAA6C;oBAC7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBACrC,8BAA8B;oBAC9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE;wBAChC,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;4BACtB,MAAM,WAAW,GAAe,EAAE,CAAC;4BACnC,IAAI,CAAC,GAAG,CAAC,GAAG,WAAW,CAAC;4BACxB,4CAA4C;4BAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gCACnC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gCACvB,kCAAkC;gCAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oCAC3B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oCACxB,SAAS;iCACZ;gCACD,MAAM,GAAG,GAAQ,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;gCAC9E,IAAI,GAAG,KAAK,SAAS;oCACjB,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;;oCACrB,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;6BAChC;4BACD,yBAAyB;yBAC5B;6BACI,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;4BAChC,MAAM,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;4BACzE,IAAI,GAAG,KAAK,SAAS,EAAE;gCACnB,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;6BACnB;yBACJ;qBACJ;iBACJ;aACJ;SACJ;IAEL,CAAC;IAEO,MAAM,CAAC,sBAAsB,CAAC,IAAoB,EAAE,GAAW,EAAE,KAAK,EAAE,aAA4D;QACxI,IAAI,KAAK,YAAY,SAAS,IAAI,KAAK,YAAY,SAAS,EAAE;YAC1D,MAAM,2BAA2B,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC;YACxD,wDAAwD;YACxD,IAAI,2BAA2B,EAAE;gBAC7B,MAAM,EAAE,GAAG,2BAA2B,CAAC,IAAI,CAAC;gBAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;gBAC/C,IAAI,CAAC,aAAa,EAAE;oBAChB,6BAA6B;oBAC7B,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,GAAG,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;oBAC9D,OAAO;iBACV;gBACD,MAAM,KAAK,GAAG,2BAA2B,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC7E,IAAI,KAAK,IAAI,CAAC,EAAE;oBACZ,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACzB,MAAM,KAAK,GAAG,aAAa,CAAC,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;oBACvD,OAAO,KAAK,CAAC;iBAChB;qBACI;oBACD,OAAO,CAAC,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;iBACxD;aACJ;SACJ;aAAM,IAAI,KAAK,YAAY,KAAK,CAAC,QAAQ,EAAE;YACxC,sBAAsB;YACtB,IAAI,GAAG,KAAK,YAAY;gBAAE,OAAO;YACjC,MAAM,2BAA2B,GAAG,KAAK,CAAC;YAC1C,IAAI,2BAA2B,EAAE;gBAC7B,MAAM,EAAE,GAAG,2BAA2B,CAAC,IAAI,CAAC;gBAC5C,MAAM,aAAa,GAAG,aAAa,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC;gBAC/C,IAAI,aAAa,EAAE;oBACf,IAAI,KAAK;wBACL,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,CAAC;oBACzD,OAAO,aAAa,CAAC;iBACxB;aACJ;SACJ;IACL,CAAC;IAEM,MAAM,CAAC,aAAa,CAAC,QAAoC,EAAE,OAAiB,EAAE,YAAqB,IAAI;QAC1G,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,MAAM,EAAE,GAAG,QAAsB,CAAC;QAClC,OAAO,GAAG,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;QACrC,WAAW,CAAC,EAAE,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,OAAO,CAAC,QAAoC,EAAE,YAAqB,IAAI,EAAE,SAAkB,IAAI;QACzG,MAAM,IAAI,GAAG,QAAqB,CAAC;QACnC,IAAI,IAAI,CAAC,WAAW,EAAE;YAClB,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO;SACV;QAED,MAAM,GAAG,GAAG,QAAsB,CAAC;QACnC,IAAI,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE5B,IAAI,SAAS,IAAI,GAAG,CAAC,QAAQ,EAAE;YAC3B,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE;gBAC3B,UAAU,CAAC,OAAO,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;aAC5C;SACJ;QAED,MAAM,UAAU,GAAG,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;QAC3C,IAAI,UAAU,EAAE;YACZ,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,MAAM,IAAI,GAAc,UAAU,CAAC,CAAC,CAAC,CAAC;gBACtC,IAAI,IAAI,CAAC,OAAO,EAAE;oBACd,IAAI,KAAK;wBAAE,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;oBAC3C,IAAI,CAAC,OAAO,EAAE,CAAC;iBAClB;gBACD,4DAA4D;gBAC5D,IAAI,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE;oBAChC,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC;oBAC/B,CAAC,EAAE,CAAC;iBACP;aACJ;SACJ;QACD,IAAI,MAAM;YACN,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC/B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAC,QAA2C,EAAE,MAAsB,EAAE,OAAiB;QACpG,IAAI,CAAC,QAAQ,IAAI,CAAC,MAAM;YAAE,OAAO;QACjC,IAAI,QAAQ,KAAK,MAAM,EAAE;YACrB,OAAO,CAAC,IAAI,CAAC,4BAA4B,EAAE,QAAQ,CAAC,CAAC;YACrD,OAAO;SACV;QACD,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;SAC7B;QACD,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrB,IAAI,CAAC,uCAAuC,CAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,OAAO,EAAE;YACT,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAe,EAAE,EAAE;gBACtD,IAAI,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAQ,CAAC,CAAC;gBACvC,IAAI,OAAQ,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE;oBACpD,OAAQ,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAiB,CAAC,CAAC;iBACrD;YACL,CAAC,EAAE,IAAI,CAAC,CAAC;SACZ;aACI;YACD,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;SACnC;IACL,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,MAAM,CAAC,QAA2C;QAC5D,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QAClC,UAAU,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;YAC3C,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QACtC,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,EAAqC,EAAE,YAAmC,EAAE,GAAG,IAAS;QACnH,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,EAAqC,EAAE,YAAmC,EAAE,WAAoB,KAAK,EAAE,GAAG,IAAS;QACpI,IAAI,CAAC,EAAE;YAAE,OAAO;QAChB,mBAAmB;QACnB,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE;YAC1B,MAAM,EAAE,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;YAC3B,IAAI,EAAE,IAAI,OAAO,EAAE,KAAK,UAAU,EAAE;gBAChC,MAAM,KAAK,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBACzB,wBAAwB;gBACxB,KAAK,CAAC,GAAG,IAAI,CAAC,CAAA;aACjB;QACL,CAAC,EAAE,QAAQ,CAAC,CAAC;IACjB,CAAC;IAEM,MAAM,CAAC,eAAe,CAAsB,EAA+B,EAAE,IAA4B,EAAE,YAAqB,IAAI;QACvI,MAAM,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC;QAC5B,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,CAAC,CAAC;QACxD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,YAAY,CAAC,EAAc,EAAE,QAAmB;QAC1D,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,EAAE;YAC7B,MAAM,IAAI,KAAK,CAAC,6DAA6D,CAAC,CAAC;SAClF;QACD,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEM,MAAM,CAAC,eAAe,CAAC,QAAmB;QAC7C,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACtD,OAAO,QAAQ,CAAC;IACpB,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAI,EAA+B,EAAE,QAA+B;QAC/F,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;QAC7C,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,QAAqD,CAAiB,CAAC;IAC3G,CAAC;IAEM,MAAM,CAAC,YAAY,CAAI,EAAsC,EAAE,QAA+B;QACjG,IAAI,EAAE,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC7B,0FAA0F;QAC1F,kEAAkE;QAClE,uCAAuC;QACvC,0BAA0B;QAC1B,OAAO,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC7C,CAAC;IAEM,MAAM,CAAC,aAAa,CAAI,EAAsC,EAAE,QAA+B,EAAE,MAAkB,IAAI;QAC1H,IAAI,EAAE,KAAK,IAAI;YAAE,OAAO,GAAG,IAAI,EAAE,CAAC;QAClC,OAAO,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IACnD,CAAC;IAEM,MAAM,CAAC,UAAU,CAAC,IAAY,EAAE,SAAyB;QAC5D,OAAO,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAI,QAAiC,EAAE,OAAkC,EAAE,kBAA2B,IAAI;QACpI,OAAO,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;IACvE,CAAC;IAEM,MAAM,CAAC,iBAAiB,CAAI,QAAwB,EAAE,OAAkC;QAC3F,MAAM,GAAG,GAAG,EAAE,CAAC;QACf,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACjD,OAAO,GAAG,CAAC;IACf,CAAC;IAEM,MAAM,CAAC,sBAAsB,CAAI,EAA+B,EAAE,QAA+B;QACpG,OAAO,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAEM,MAAM,CAAC,uBAAuB,CAAI,EAA+B,EAAE,QAA+B,EAAE,MAAkB,IAAI;QAC7H,OAAO,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC7D,CAAC;IAEM,MAAM,CAAC,oBAAoB,CAAI,EAAiD,EAAE,QAAwB;QAC7G,OAAO,MAAM,CAAC,oBAAoB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACrD,CAAC;IAEM,MAAM,CAAC,qBAAqB,CAAI,EAA+B,EAAE,QAAwB,EAAE,MAAuB,IAAI;QACzH,OAAO,MAAM,CAAC,qBAAqB,CAAC,QAAQ,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;IAC3D,CAAC;IAEM,MAAM,CAAC,gBAAgB,CAAC,EAA+B;QAC1D,MAAM,cAAc,GAAG,EAAE,CAAC,QAAQ,EAAE,UAAU,CAAC;QAC/C,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACpC,OAAO,OAAO,CAAC;IACnB,CAAC;IAEM,MAAM,CAAC,CAAC,iBAAiB,CAAC,EAA+B;QAC5D,MAAM,IAAI,GAAG,EAAE,EAAE,QAAQ,EAAE,UAAU,CAAC;QACtC,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC;aACjB;SACJ;IACL,CAAC;CAYJ;AAGD,kFAAkF;AAClF,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,YAAY,EAAE;IAC1D,GAAG,EAAE;QACD,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IACD,GAAG,EAAE,UAAU,GAAqB;QAChC,MAAM,KAAK,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACxD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;CACJ,CAAC,CAAC;AAGH,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,UAA+B,IAA4B;IACrG,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAClD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,iBAAiB,CAAC,GAAG,UAAU,IAAe;IACnE,OAAO,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,mBAAmB,CAAC,GAAG,UAAa,QAA+B;IACxF,OAAO,UAAU,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AACxD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,UAAa,IAAoB;IACxE,OAAO,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AAC/C,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,eAAe,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IACnF,OAAO,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AACrD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,wBAAwB,CAAC,GAAG,UAAa,IAAoB;IAClF,OAAO,UAAU,CAAC,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,yBAAyB,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IAC7F,OAAO,UAAU,CAAC,uBAAuB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC/D,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,sBAAsB,CAAC,GAAG,UAAa,IAAoB;IAChF,OAAO,UAAU,CAAC,oBAAoB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACvD,CAAC,CAAA;AAED,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,uBAAuB,CAAC,GAAG,UAAa,IAAoB,EAAE,GAAQ;IAC3F,OAAO,UAAU,CAAC,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;AAC7D,CAAC,CAAA;AAED,mCAAmC;AACnC,sEAAsE;AACtE,sCAAsC;AACtC,wCAAwC;AACxC,gDAAgD;AAChD,iDAAiD;AACjD,+CAA+C;AAC/C,QAAQ;AACR,IAAI;AACJ,yBAAyB;AAGzB,MAAM,SAAS;IAEX,IAAI,WAAW,KAAc,OAAO,IAAI,CAAC,CAAC,CAAC;IAEnC,SAAS,CAAsB;IACvC,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAC7C,CAAC;IACD,IAAI,OAAO,CAAC,OAAgB;QACxB,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC;IAC7B,CAAC;IACD,IAAI,KAAK,KAAkB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IAEvD,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC;IAC5C,CAAC;IAED,IAAI,IAAI;QACJ,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC;IAC1C,CAAC;IACO,MAAM,CAAU;IACxB,IAAI,IAAI,CAAC,GAAW;QAChB,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ;gBAAE,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,EAAE,CAAA;YAC5D,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,GAAG,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACrB;aACI;YACD,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;SACrB;IACL,CAAC;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG,CAAC;IACzC,CAAC;IACD,IAAI,GAAG,CAAC,GAAW;QACf,IAAI,IAAI,CAAC,UAAU;YACf,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,GAAG,GAAG,CAAC;IAC3C,CAAC;IACD,IAAI,MAAM;QACN,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC;IAC5C,CAAC;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC;IAC/C,CAAC;IAGD,IAAI,gBAAgB;QAChB,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,KAAK,CAAC;QACjC,IAAI,IAAI,CAAC,WAAW,KAAK,KAAK;YAAE,OAAO,KAAK,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,qBAAqB;YAAE,OAAO,KAAK,CAAC;QAC9C,4BAA4B;QAC5B,OAAO;QACP,0CAA0C;QAC1C,qCAAqC;QACrC,oCAAoC;QACpC,IAAI;QACJ,cAAc;QACd,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAY,UAAU;QAClB,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;IACnC,CAAC;IACD,IAAY,qBAAqB;QAC7B,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO,KAAK,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC;QACxD,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,IAAI,CAAC;QACnC,OAAO,GAAG,CAAC;IACf,CAAC;IAED,UAAU,CAAc;IACxB,IAAI,GAAW,SAAS,CAAC;IACzB,QAAQ,CAAoB;IAM5B,uGAAuG;IACvG,KAAK,KAAK,CAAC;IACX,eAAe;IACf,QAAQ,KAAK,CAAC;IACd,SAAS,KAAK,CAAC;IACf,SAAS;QACL,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC5B,CAAC;IAmBD,cAAc,CAAC,OAAkB,EAAE,MAAkB,UAAU,CAAC,MAAM;QAClE,OAAO,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACpE,CAAC;IAED,aAAa,CAAC,OAAkB,EAAE,MAAkB,UAAU,CAAC,MAAM;QACjE,IAAI,CAAC,OAAO,CAAC,yBAAyB,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IACzD,CAAC;IAED,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAEM,OAAO;QACV,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,gCAAgC;QAChC,MAAM,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IAES,UAAU,GAAY,KAAK,CAAC;IAC9B,UAAU,GAAY,KAAK,CAAC;IAC1B,WAAW,GAAY,KAAK,CAAC;IAC7B,WAAW,GAAwB,SAAS,CAAC;IAC/C,WAAW,GAAY,KAAK,CAAC;IAErC,4BAA4B;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,iCAAiC,EAAE,CAAC;IAC7C,CAAC;IAED,eAAe;QACX,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,kCAAkC;QAClC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,0BAA0B;QAE1B,IAAI,CAAC,KAAK,EAAE,CAAC;IACjB,CAAC;IAED,eAAe;QACX,IAAI,IAAI,CAAC,UAAU;YAAE,OAAO;QAC5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,IAAI,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAED,gBAAgB;QACZ,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAC7B,oCAAoC;QACpC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,QAAQ,EAAE,CAAC;IACpB,CAAC;IAED,iBAAiB;QACb,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO;QAC9B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,qBAAqB,GAAG,SAAS,CAAC;QACvC,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE,KAAK,EAAE,CAAC;IAC9B,CAAC;IAED;QACI,IAAI,CAAC,4BAA4B,EAAE,CAAC;IACxC,CAAC;IAEO,qBAAqB,CAAM;IAC3B,WAAW,GAAgF,IAAI,CAAC;IAEhG,mBAAmB,CAAM;IACzB,kBAAkB,GAAgF,IAAI,CAAC;IAE/G,IAAI,eAAe,KAAK,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAErD,iCAAiC;QACrC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC;QAChC,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC;IACnC,CAAC;IAED,yBAAyB,CAAC,GAAc,EAAE,kBAA2B;QACjE,IAAI,kBAAkB,EAAE;YACpB,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,aAAa;gBAAE,OAAO;SAClF;aACI;YACD,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe;gBAAE,OAAO;SACxF;QAED,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC;QAEnC,yBAAyB;QACzB,IAAI,kBAAkB,IAAI,CAAC,IAAI,CAAC,kBAAkB;YAAE,IAAI,CAAC,kBAAkB,GAAG,IAAI,GAAG,EAAE,CAAC;aACnF,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAEzD,yBAAyB;QACzB,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAY,CAAC;QAErF,IAAI,UAAU,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;YAC7B,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,WAAW,CAAE,CAAC;YACzC,+DAA+D;YAC/D,6BAA6B;YAC7B,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;YACzC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;YACd,IAAI,kBAAkB;gBAClB,IAAI,CAAC,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC;;gBAE1B,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;SAC7C;aACI;YACD,mCAAmC;YACnC,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC;YAC3D,UAAU,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;YACnC,IAAI,kBAAkB;gBAClB,IAAI,CAAC,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC;;gBAE3B,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;SAC9C;IACL,CAAC;IAED,kCAAkC,CAAC,GAAa,EAAE,kBAA2B;QACzE,IAAI,kBAAkB,EAAE;YACpB,IAAI,CAAC,IAAI,CAAC,kBAAkB;gBAAE,OAAO;SACxC;aACI;YACD,IAAI,CAAC,IAAI,CAAC,WAAW;gBAAE,OAAO;SACjC;QAED,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAY,CAAC;QAErF,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS;YAAE,OAAO;QACvB,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC;QACnD,oEAAoE;QACpE,0CAA0C;QAC1C,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,CAAC;QAChD,IAAI,CAAC,kBAAkB;YACnB,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC;QACvD,gCAAgC;IACpC,CAAC;IAEO,sBAAsB,CAAC,kBAA2B;QACtD,MAAM,OAAO,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC;QAC3F,IAAI,OAAO;YAAE,OAAO;QAEpB,MAAM,UAAU,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,WAAY,CAAC;QACrF,MAAM,IAAI,GAAG,IAAI,CAAC;QAClB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,QAAQ,CAAC,CAAC,kBAAkB;YACxB,OAAO,UAAU,IAAI,UAAU,CAAC,IAAI,GAAG,CAAC,EAAE;gBACtC,KAAK,IAAI,KAAK,IAAI,UAAU,CAAC,IAAI,EAAE,EAAE;oBACjC,MAAM,KAAK,GAAG,UAAW,CAAC,GAAG,CAAC,KAAK,CAAE,CAAC;oBACtC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,MAAM,EAAE;wBACnF,8EAA8E;wBAC9E,UAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBAC1B,IAAI,kBAAkB;4BAClB,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;;4BAEhC,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;qBACnD;iBACJ;gBACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE;oBAC3B,KAAK,CAAC;aACb;YACD,IAAI,kBAAkB;gBAClB,IAAI,CAAC,mBAAmB,GAAG,SAAS,CAAC;;gBAErC,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC;YACtC,kCAAkC;QACtC,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,EAAE,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;QACvF,IAAI,kBAAkB;YAClB,IAAI,CAAC,mBAAmB,GAAG,UAAU,CAAC;;YAEtC,IAAI,CAAC,qBAAqB,GAAG,UAAU,CAAA;IAC/C,CAAC;IAGD,+BAA+B;IAE/B,yDAAyD;IACjD,MAAM,CAAC,oBAAoB,GAAkB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;IACjE,MAAM,CAAC,sBAAsB,GAAqB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;IACzE,MAAM,CAAC,iBAAiB,GAAgB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;IAE1D,cAAc,GAA8B,SAAS,CAAC;IACtD,gBAAgB,GAAiC,SAAS,CAAC;IAC3D,MAAM,CAAC,sBAAsB,GAAqB,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;IACzE,WAAW,GAA4B,SAAS,CAAC;IACjD,cAAc,GAA8B,SAAS,CAAC;IAE9D,IAAI,aAAa;QACb,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACpE,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAClE,yDAAyD;QACzD,OAAO,IAAI,CAAC,cAAc,CAAC;IAC/B,CAAC;IAED,IAAI,aAAa,CAAC,GAAkB;QAChC,UAAU,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACtD,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QAC5C,SAAS,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC,oBAAoB,CAAC;IACxD,CAAC;IAGD,IAAI,eAAe;QACf,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3E,OAAO,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACjF,CAAC;IACD,IAAI,eAAe,CAAC,GAAqB;QACrC,UAAU,CAAC,kBAAkB,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC;IACxD,CAAC;IACD,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QACzD,SAAS,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,sBAAsB,CAAC;IAC5D,CAAC;IAGD,2BAA2B;IAC3B,IAAI,UAAU;QACV,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAC5D,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACzD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,2BAA2B;IAC3B,IAAI,UAAU,CAAC,GAAgB;QAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB;YAAE,IAAI,CAAC,gBAAgB,GAAG,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3E,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,gBAAgB,CAAC;IACjD,CAAC;IAED,8BAA8B;IAC9B,IAAI,aAAa;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,cAAc;YAAE,IAAI,CAAC,cAAc,GAAG,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QACpE,MAAM,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC;QAC/B,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7B,OAAO,EAAE,CAAC;IACd,CAAC;IAED,IAAI,aAAa,CAAC,GAAkB;QAChC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,gBAAgB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,UAAmB,IAAI;QACrE,IAAI,OAAO,EAAE;YACT,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC1B;QACD,SAAS,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACzC,SAAS,CAAC,sBAAsB,CAAC,YAAY,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC3E,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC,sBAAsB,CAAC;IAC5D,CAAC;IAEO,MAAM,CAAC,QAAQ,GAAkB,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACpE,IAAW,OAAO;QAEd,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IAClF,CAAC;IAID,8BAA8B;IAEtB,eAAe,GAAG,IAAI,GAAG,EAA2B,CAAC;IAE7D,gBAAgB,CAAC,IAAY,EAAE,QAAuB;QAClD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9D,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9C,CAAC;IAED,mBAAmB,CAAC,IAAY,EAAE,QAAuB;QACrD,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YAAE,OAAO;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC3D,IAAI,KAAK,IAAI,CAAC;YAAE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IAChE,CAAC;IAED,aAAa,CAAC,GAAU;QAEpB,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvC,SAAS,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACrB;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;;AAIL,MAAM,SAAU,SAAQ,SAAS;IAC7B,uCAAuC;IAEvC,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,CAAC,kDAAkD;IACvF,CAAC;IACD,IAAI,OAAO,CAAC,GAAY;QAEpB,oDAAoD;QACpD,4DAA4D;QAC5D,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACzB,IAAI,GAAG,IAAI,GAAG;gBAAE,GAAG,GAAG,IAAI,CAAC;;gBACtB,GAAG,GAAG,KAAK,CAAC;SACpB;QAED,IAAI,GAAG,KAAK,IAAI,CAAC,WAAW;YAAE,OAAO;QAErC,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC;QACvB,oBAAoB;QACpB,gFAAgF;QAChF,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,IAAI,GAAG,EAAE;YACL,IAAI,CAAC,gBAAgB,EAAE,CAAC;SAC3B;aAAM;YACH,IAAI,CAAC,iBAAiB,EAAE,CAAC;SAC5B;IACL,CAAC;CACJ;AAED,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import { Behaviour } from "./Component";
2
2
  import * as CANNON from 'cannon-es';
3
3
  import * as THREE from 'three';
4
+ import { Vector3 } from "three";
4
5
  export declare class Rigidbody extends Behaviour {
5
6
  mass: number;
6
7
  set isKinematic(kinematic: boolean);
@@ -19,20 +20,22 @@ export declare class Rigidbody extends Behaviour {
19
20
  private _ignoreChange;
20
21
  private _dirty;
21
22
  private _positionWatch?;
23
+ private _matrixWatch?;
22
24
  private _setMatrix;
23
25
  constructor();
24
26
  awake(): void;
25
- start(): void;
26
27
  onEnable(): void;
27
28
  onDisable(): void;
28
29
  onDestroy(): void;
29
- earlyUpdate(): void;
30
30
  onBeforeRender(): void;
31
31
  initialize(): void;
32
32
  wakeUp(): void;
33
- applyForce(vec: THREE.Vector3, rel: THREE.Vector3 | undefined): void;
33
+ applyForce(vec: THREE.Vector3, rel?: THREE.Vector3): void;
34
+ setForce(x: number, y: number, z: number): void;
34
35
  getVelocity(): THREE.Vector3;
35
- setVelocity(x: number, y: number, z: number): void;
36
+ setVelocity(x: number | Vector3, y: number, z: number): void;
37
+ getTorque(): THREE.Vector3;
38
+ setTorque(x: number | Vector3, y: number, z: number): void;
36
39
  get smoothedVelocity(): THREE.Vector3;
37
40
  setAngularVelocity(x: number, y: number, z: number): void;
38
41
  private static copyVector3;
@@ -11,6 +11,7 @@ import * as THREE from 'three';
11
11
  import { getWorldPosition } from "../engine/engine_three_utils";
12
12
  import { serializeable } from "../engine/engine_serialization_decorator";
13
13
  import { Watch } from "../engine/engine_utils";
14
+ import { Vector3 } from "three";
14
15
  export class Rigidbody extends Behaviour {
15
16
  mass = 1;
16
17
  set isKinematic(kinematic) {
@@ -41,7 +42,7 @@ export class Rigidbody extends Behaviour {
41
42
  _ignoreChange = false;
42
43
  _dirty = false;
43
44
  _positionWatch;
44
- // private _matrixWatch?: Watch;
45
+ _matrixWatch;
45
46
  _setMatrix;
46
47
  constructor() {
47
48
  super();
@@ -52,10 +53,12 @@ export class Rigidbody extends Behaviour {
52
53
  this.currentVelocity = new THREE.Vector3();
53
54
  this._smoothedVelocity = new THREE.Vector3();
54
55
  this.lastWorldPosition = getWorldPosition(this.gameObject).clone();
56
+ this._matrixWatch = undefined;
57
+ this._positionWatch = undefined;
55
58
  }
56
- start() {
57
- this.setBodyFromGameObject();
58
- }
59
+ // start() {
60
+ // this.setBodyFromGameObject();
61
+ // }
59
62
  onEnable() {
60
63
  if (this._body) {
61
64
  this.context.physics.addBody(this.gameObject, this._body);
@@ -72,20 +75,12 @@ export class Rigidbody extends Behaviour {
72
75
  this._positionWatch.subscribeWrite(_ => {
73
76
  if (!this.context.physics.isUpdating && !this._ignoreChange) {
74
77
  this._dirty = true;
78
+ this._setMatrix.copy(this.gameObject.matrix);
75
79
  this._setMatrix.setPosition(this.gameObject.position);
76
80
  }
77
81
  });
78
- // this._matrixWatch = onChange(this.gameObject.matrix, "elements", (newValue, oldValue) => {
79
- // if (newValue !== oldValue) {
80
- // if (!this.context.physics.isUpdating && !this._ignoreChange) {
81
- // this.dirty = true;
82
- // this._setMatrix.copy(this.gameObject.matrix);
83
- // }
84
- // }
85
- // });
86
82
  }
87
83
  onDisable() {
88
- // this._matrixWatch?.u();
89
84
  if (this._body)
90
85
  this.context.physics.removeBody(this.gameObject, this._body, false);
91
86
  }
@@ -93,27 +88,20 @@ export class Rigidbody extends Behaviour {
93
88
  if (this._body)
94
89
  this.context.physics.removeBody(this.gameObject, this._body);
95
90
  }
96
- earlyUpdate() {
91
+ onBeforeRender() {
92
+ this._ignoreChange = true;
93
+ this.updateVelocity();
97
94
  if (this._dirty) {
98
- this._ignoreChange = true;
99
95
  this._dirty = false;
100
- // // console.log("RESET");
101
96
  this._setMatrix.decompose(this.gameObject.position, this.gameObject.quaternion, this.gameObject.scale);
102
97
  this.setBodyFromGameObject();
103
- this._ignoreChange = false;
104
98
  }
105
- }
106
- onBeforeRender() {
107
- this._ignoreChange = true;
108
- this.updateVelocity();
109
- // this._ignoreChange = true;
110
- // this._setMatrix.decompose(this.gameObject.position, this.gameObject.quaternion, this.gameObject.scale);
111
- // this.setBodyFromGameObject();
112
99
  this._ignoreChange = false;
113
100
  }
114
101
  initialize() {
115
- if (this._body)
102
+ if (this._body) {
116
103
  return;
104
+ }
117
105
  const options = new BodyOptions();
118
106
  options.drag = this.drag;
119
107
  options.angularDrag = this.angularDrag;
@@ -127,7 +115,12 @@ export class Rigidbody extends Behaviour {
127
115
  this.body?.wakeUp();
128
116
  }
129
117
  applyForce(vec, rel) {
130
- this.body?.applyForce(new CANNON.Vec3(vec.x, vec.y, vec.z), rel ? new CANNON.Vec3(rel.x, rel.y, rel.z) : undefined);
118
+ const force = new CANNON.Vec3(vec.x, vec.y, vec.z);
119
+ force.scale(1 / this.context.time.deltaTime, force);
120
+ this.body?.applyForce(force, rel ? new CANNON.Vec3(rel.x, rel.y, rel.z) : undefined);
121
+ }
122
+ setForce(x, y, z) {
123
+ this.body?.force.set(x, y, z);
131
124
  }
132
125
  getVelocity() {
133
126
  if (this.body)
@@ -137,10 +130,34 @@ export class Rigidbody extends Behaviour {
137
130
  setVelocity(x, y, z) {
138
131
  if (!this.body)
139
132
  return;
133
+ if (x instanceof Vector3) {
134
+ const vec = x;
135
+ x = vec.x;
136
+ y = vec.y;
137
+ z = vec.z;
138
+ }
140
139
  this.body.velocity.x = x / this.context.time.deltaTime;
141
140
  this.body.velocity.y = y / this.context.time.deltaTime;
142
141
  this.body.velocity.z = z / this.context.time.deltaTime;
143
142
  }
143
+ getTorque() {
144
+ if (this.body)
145
+ return Rigidbody.tempPosition.set(this.body?.torque.x, this.body?.torque.y, this.body?.torque.z);
146
+ return Rigidbody.tempPosition.set(0, 0, 0);
147
+ }
148
+ setTorque(x, y, z) {
149
+ if (!this.body)
150
+ return;
151
+ if (x instanceof Vector3) {
152
+ const vec = x;
153
+ x = vec.x;
154
+ y = vec.y;
155
+ z = vec.z;
156
+ }
157
+ this.body.torque.x = x / this.context.time.deltaTime;
158
+ this.body.torque.y = y / this.context.time.deltaTime;
159
+ this.body.torque.z = z / this.context.time.deltaTime;
160
+ }
144
161
  get smoothedVelocity() { return this._smoothedVelocity; }
145
162
  setAngularVelocity(x, y, z) {
146
163
  if (!this.body)
@@ -1 +1 @@
1
- {"version":3,"file":"Rigidbody.js","sourceRoot":"","sources":["../../../engine-components/Rigidbody.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Rigidbody.js","sourceRoot":"","sources":["../../../engine-components/Rigidbody.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@needle-tools/engine",
3
- "version": "2.31.1-pre",
3
+ "version": "2.32.0-pre",
4
4
  "description": "Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development, and can be deployed anywhere. It is flexible, extensible, and collaboration and XR come naturally.",
5
5
  "main": "dist/needle-engine.js",
6
6
  "module": "lib/needle-engine.js",
@@ -38,13 +38,13 @@ export function makeErrorsVisibleForDevelopment() {
38
38
  function handleLog(type: LogType, message: string | any[], _file: string | null, _line: number | null) {
39
39
 
40
40
  const context = Context.Current;
41
- if (!context) return;
42
41
  if (type === LogType.Error) {
42
+ const domElement = context?.domElement ?? document.querySelector("needle-engine");
43
+ if(!domElement) return;
43
44
  if (Array.isArray(message)) {
44
45
  message = message.join(" ");
45
46
  }
46
- const container = context.domElement;
47
- appendErrorMessageToDomElement(container, message);
47
+ appendErrorMessageToDomElement(domElement, message);
48
48
  }
49
49
  }
50
50