@needle-tools/engine 2.40.0-pre → 2.42.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 (80) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/needle-engine.d.ts +332 -126
  3. package/dist/needle-engine.js +401 -401
  4. package/dist/needle-engine.js.map +4 -4
  5. package/dist/needle-engine.min.js +53 -53
  6. package/dist/needle-engine.min.js.map +4 -4
  7. package/lib/engine/engine_element.js +1 -1
  8. package/lib/engine/engine_element.js.map +1 -1
  9. package/lib/engine/engine_element_loading.js +6 -1
  10. package/lib/engine/engine_element_loading.js.map +1 -1
  11. package/lib/engine/engine_gizmos.d.ts +8 -21
  12. package/lib/engine/engine_gizmos.js +51 -5
  13. package/lib/engine/engine_gizmos.js.map +1 -1
  14. package/lib/engine/engine_math.d.ts +9 -6
  15. package/lib/engine/engine_math.js +9 -0
  16. package/lib/engine/engine_math.js.map +1 -1
  17. package/lib/engine/engine_physics.js +14 -6
  18. package/lib/engine/engine_physics.js.map +1 -1
  19. package/lib/engine/engine_serialization_core.js +2 -0
  20. package/lib/engine/engine_serialization_core.js.map +1 -1
  21. package/lib/engine/engine_setup.d.ts +3 -0
  22. package/lib/engine/engine_setup.js +15 -0
  23. package/lib/engine/engine_setup.js.map +1 -1
  24. package/lib/engine/engine_three_utils.d.ts +16 -1
  25. package/lib/engine/engine_three_utils.js +94 -54
  26. package/lib/engine/engine_three_utils.js.map +1 -1
  27. package/lib/engine/engine_types.d.ts +6 -0
  28. package/lib/engine/engine_types.js.map +1 -1
  29. package/lib/engine/engine_utils.d.ts +1 -0
  30. package/lib/engine/engine_utils.js +3 -0
  31. package/lib/engine/engine_utils.js.map +1 -1
  32. package/lib/engine-components/AnimationCurve.js +20 -5
  33. package/lib/engine-components/AnimationCurve.js.map +1 -1
  34. package/lib/engine-components/BoxHelperComponent.js +9 -10
  35. package/lib/engine-components/BoxHelperComponent.js.map +1 -1
  36. package/lib/engine-components/Light.d.ts +2 -0
  37. package/lib/engine-components/Light.js +33 -9
  38. package/lib/engine-components/Light.js.map +1 -1
  39. package/lib/engine-components/ParticleSystem.d.ts +29 -26
  40. package/lib/engine-components/ParticleSystem.js +349 -187
  41. package/lib/engine-components/ParticleSystem.js.map +1 -1
  42. package/lib/engine-components/ParticleSystemModules.d.ts +243 -64
  43. package/lib/engine-components/ParticleSystemModules.js +722 -153
  44. package/lib/engine-components/ParticleSystemModules.js.map +1 -1
  45. package/lib/engine-components/ReflectionProbe.js +29 -11
  46. package/lib/engine-components/ReflectionProbe.js.map +1 -1
  47. package/lib/engine-components/Renderer.d.ts +1 -0
  48. package/lib/engine-components/Renderer.js +4 -2
  49. package/lib/engine-components/Renderer.js.map +1 -1
  50. package/lib/engine-components/WebXR.js +8 -3
  51. package/lib/engine-components/WebXR.js.map +1 -1
  52. package/lib/engine-components/codegen/components.d.ts +7 -0
  53. package/lib/engine-components/codegen/components.js +7 -0
  54. package/lib/engine-components/codegen/components.js.map +1 -1
  55. package/package.json +4 -2
  56. package/src/engine/codegen/register_types.js +28 -0
  57. package/src/engine/dist/engine_three_utils.js +279 -0
  58. package/src/engine/engine_element.ts +1 -1
  59. package/src/engine/engine_element_loading.ts +5 -1
  60. package/src/engine/engine_gizmos.ts +58 -6
  61. package/src/engine/engine_math.ts +19 -6
  62. package/src/engine/engine_physics.ts +17 -7
  63. package/src/engine/engine_serialization_core.ts +1 -0
  64. package/src/engine/engine_setup.ts +25 -2
  65. package/src/engine/engine_three_utils.ts +103 -62
  66. package/src/engine/engine_types.ts +8 -1
  67. package/src/engine/engine_utils.ts +5 -0
  68. package/src/engine-components/AnimationCurve.ts +25 -11
  69. package/src/engine-components/BoxHelperComponent.ts +12 -15
  70. package/src/engine-components/Light.ts +39 -8
  71. package/src/engine-components/ParticleSystem.ts +395 -199
  72. package/src/engine-components/ParticleSystemModules.ts +638 -152
  73. package/src/engine-components/ReflectionProbe.ts +37 -13
  74. package/src/engine-components/Renderer.ts +4 -2
  75. package/src/engine-components/WebXR.ts +11 -8
  76. package/src/engine-components/codegen/components.ts +7 -0
  77. package/src/engine/dist/engine_physics.js +0 -739
  78. package/src/engine/dist/engine_setup.js +0 -777
  79. package/src/engine-components/dist/CharacterController.js +0 -123
  80. package/src/engine-components/dist/RigidBody.js +0 -458
@@ -143,7 +143,7 @@ export class EngineElement extends HTMLElement {
143
143
  if (fn) {
144
144
  this.classList.add("loading");
145
145
  console.log("Needle Engine: Begin loading", alias ?? "");
146
- const allowOverridingDefaultLoading = false;
146
+ const allowOverridingDefaultLoading = true;
147
147
  // default loading can be overriden by calling preventDefault in the onload start event
148
148
  const useDefaultLoading = this.dispatchEvent(new CustomEvent("loadstart", {
149
149
  detail: {
@@ -1 +1 @@
1
- {"version":3,"file":"engine_element.js","sourceRoot":"","sources":["../../../engine/engine_element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_element.js","sourceRoot":"","sources":["../../../engine/engine_element.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,12 @@ export class LoadingElementOptions {
6
6
  additionalClasses;
7
7
  }
8
8
  export function calculateProgress01(progress) {
9
- return progress.index / progress.count + (progress.progress.loaded / progress.progress.total) / progress.count;
9
+ if (debug)
10
+ console.log(progress);
11
+ const count = Math.max(1, progress.count);
12
+ const total = Math.max(1, progress.progress.total);
13
+ const prog = progress.index / count + (progress.progress.loaded / total) / count;
14
+ return Mathf.clamp01(prog);
10
15
  }
11
16
  export class EngineLoadingView {
12
17
  // the raw progress
@@ -1 +1 @@
1
- {"version":3,"file":"engine_element_loading.js","sourceRoot":"","sources":["../../../engine/engine_element_loading.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_element_loading.js","sourceRoot":"","sources":["../../../engine/engine_element_loading.ts"],"names":[],"mappings":"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"}
@@ -1,26 +1,13 @@
1
1
  import * as THREE from 'three';
2
- import { ColorRepresentation } from 'three';
3
- import { Vec3 } from './engine_types';
2
+ import { ColorRepresentation, Box3 } from 'three';
3
+ import { Vec3, Vec4 } from './engine_types';
4
4
  export declare class Gizmos {
5
5
  static DrawRay(origin: Vec3, dir: Vec3, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
6
- static DrawLine(pt0: {
7
- x: number;
8
- y: number;
9
- z: number;
10
- }, pt1: {
11
- x: number;
12
- y: number;
13
- z: number;
14
- }, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
15
- static DrawWireSphere(center: {
16
- x: number;
17
- y: number;
18
- z: number;
19
- }, radius: number, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
20
- static DrawSphere(center: {
21
- x: number;
22
- y: number;
23
- z: number;
24
- }, radius: number, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
6
+ static DrawDirection(pt: Vec3, direction: Vec3 | Vec4, color?: ColorRepresentation, duration?: number, depthTest?: boolean, lengthFactor?: number): void;
7
+ static DrawLine(pt0: Vec3, pt1: Vec3, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
8
+ static DrawWireSphere(center: Vec3, radius: number, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
9
+ static DrawSphere(center: Vec3, radius: number, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
10
+ static DrawBox(center: Vec3, size: Vec3, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
11
+ static DrawBox3(box: Box3, color?: ColorRepresentation, duration?: number, depthTest?: boolean): void;
25
12
  }
26
13
  export declare function CreateWireCube(col?: THREE.ColorRepresentation | null): THREE.LineSegments;
@@ -1,9 +1,11 @@
1
- import { BufferAttribute, Line, BoxGeometry, EdgesGeometry, Color, LineSegments, LineBasicMaterial, Mesh, SphereGeometry, Vector3 } from 'three';
1
+ import { BufferAttribute, Line, BoxGeometry, EdgesGeometry, Color, LineSegments, LineBasicMaterial, Mesh, SphereGeometry, Vector3, Quaternion } from 'three';
2
2
  import { Context } from './engine_setup';
3
3
  import { setWorldPositionXYZ } from './engine_three_utils';
4
4
  const _tmp = new Vector3();
5
+ const _quat = new Quaternion();
6
+ const defaultColor = 0x888888;
5
7
  export class Gizmos {
6
- static DrawRay(origin, dir, color = 0x888888, duration = 0, depthTest = true) {
8
+ static DrawRay(origin, dir, color = defaultColor, duration = 0, depthTest = true) {
7
9
  const obj = Internal.getLine(duration);
8
10
  const positions = obj.geometry.getAttribute("position");
9
11
  positions.setXYZ(0, origin.x, origin.y, origin.z);
@@ -13,7 +15,25 @@ export class Gizmos {
13
15
  obj.material["color"].set(color);
14
16
  obj.material["depthTest"] = depthTest;
15
17
  }
16
- static DrawLine(pt0, pt1, color = 0x888888, duration = 0, depthTest = true) {
18
+ static DrawDirection(pt, direction, color = defaultColor, duration = 0, depthTest = true, lengthFactor = 1) {
19
+ const obj = Internal.getLine(duration);
20
+ const positions = obj.geometry.getAttribute("position");
21
+ positions.setXYZ(0, pt.x, pt.y, pt.z);
22
+ if (direction["w"] !== undefined) {
23
+ _tmp.set(0, 0, -lengthFactor);
24
+ _quat.set(direction["x"], direction["y"], direction["z"], direction["w"]);
25
+ _tmp.applyQuaternion(_quat);
26
+ }
27
+ else {
28
+ _tmp.set(direction.x, direction.y, direction.z);
29
+ _tmp.multiplyScalar(lengthFactor);
30
+ }
31
+ positions.setXYZ(1, pt.x + _tmp.x, pt.y + _tmp.y, pt.z + _tmp.z);
32
+ positions.needsUpdate = true;
33
+ obj.material["color"].set(color);
34
+ obj.material["depthTest"] = depthTest;
35
+ }
36
+ static DrawLine(pt0, pt1, color = defaultColor, duration = 0, depthTest = true) {
17
37
  const obj = Internal.getLine(duration);
18
38
  const positions = obj.geometry.getAttribute("position");
19
39
  positions.setXYZ(0, pt0.x, pt0.y, pt0.z);
@@ -22,18 +42,34 @@ export class Gizmos {
22
42
  obj.material["color"].set(color);
23
43
  obj.material["depthTest"] = depthTest;
24
44
  }
25
- static DrawWireSphere(center, radius, color = 0x888888, duration = 0, depthTest = true) {
45
+ static DrawWireSphere(center, radius, color = defaultColor, duration = 0, depthTest = true) {
26
46
  const obj = Internal.getSphere(radius, duration, true);
27
47
  setWorldPositionXYZ(obj, center.x, center.y, center.z);
28
48
  obj.material["color"].set(color);
29
49
  obj.material["depthTest"] = depthTest;
30
50
  }
31
- static DrawSphere(center, radius, color = 0x888888, duration = 0, depthTest = true) {
51
+ static DrawSphere(center, radius, color = defaultColor, duration = 0, depthTest = true) {
32
52
  const obj = Internal.getSphere(radius, duration, false);
33
53
  setWorldPositionXYZ(obj, center.x, center.y, center.z);
34
54
  obj.material["color"].set(color);
35
55
  obj.material["depthTest"] = depthTest;
36
56
  }
57
+ static DrawBox(center, size, color = defaultColor, duration = 0, depthTest = true) {
58
+ const obj = Internal.getBox(duration);
59
+ obj.position.set(center.x, center.y, center.z);
60
+ obj.scale.set(size.x, size.y, size.z);
61
+ obj.material["color"].set(color);
62
+ obj.material["depthTest"] = depthTest;
63
+ obj.material["wireframe"] = true;
64
+ }
65
+ static DrawBox3(box, color = defaultColor, duration = 0, depthTest = true) {
66
+ const obj = Internal.getBox(duration);
67
+ obj.position.copy(box.getCenter(_tmp));
68
+ obj.scale.copy(box.getSize(_tmp));
69
+ obj.material["color"].set(color);
70
+ obj.material["depthTest"] = depthTest;
71
+ obj.material["wireframe"] = true;
72
+ }
37
73
  }
38
74
  const box = new BoxGeometry(1, 1, 1);
39
75
  export function CreateWireCube(col = null) {
@@ -50,6 +86,15 @@ export function CreateWireCube(col = null) {
50
86
  const $cacheSymbol = Symbol("GizmoCache");
51
87
  class Internal {
52
88
  // private static createdLines: number = 0;
89
+ static getBox(duration) {
90
+ let box = this.boxesCache.pop();
91
+ if (!box) {
92
+ const geo = new BoxGeometry(1, 1, 1);
93
+ box = new Mesh(geo);
94
+ }
95
+ this.registerTimedObject(Context.Current, box, duration, this.boxesCache);
96
+ return box;
97
+ }
53
98
  static getLine(duration) {
54
99
  let line = this.linesCache.pop();
55
100
  if (!line) {
@@ -75,6 +120,7 @@ class Internal {
75
120
  }
76
121
  static linesCache = [];
77
122
  static spheresCache = [];
123
+ static boxesCache = [];
78
124
  static registerTimedObject(context, object, duration, cache) {
79
125
  if (!this.contextPostRenderCallbacks.get(context)) {
80
126
  const cb = () => { this.onPostRender(context, this.timedObjectsBuffer, this.timesBuffer); };
@@ -1 +1 @@
1
- {"version":3,"file":"engine_gizmos.js","sourceRoot":"","sources":["../../../engine/engine_gizmos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_gizmos.js","sourceRoot":"","sources":["../../../engine/engine_gizmos.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,14 @@
1
1
  declare class MathHelper {
2
2
  random(): number;
3
- clamp(value: any, min: any, max: any): any;
4
- clamp01(value: any): any;
5
- lerp(value1: any, value2: any, amount: any): any;
6
- moveTowards(value1: any, value2: any, amount: any): any;
7
- toDegrees(radians: any): number;
8
- toRadians(degrees: any): number;
3
+ clamp(value: number, min: number, max: number): number;
4
+ clamp01(value: number): number;
5
+ lerp(value1: number, value2: number, amount: number): number;
6
+ remap(value: number, min1: number, max1: number, min2: number, max2: number): number;
7
+ moveTowards(value1: number, value2: number, amount: number): number;
8
+ toDegrees(radians: number): number;
9
+ toRadians(degrees: number): number;
10
+ gammaToLinear(gamma: number): number;
11
+ linearToGamma(linear: number): number;
9
12
  }
10
13
  declare const Mathf: MathHelper;
11
14
  export { Mathf };
@@ -19,6 +19,9 @@ class MathHelper {
19
19
  amount = amount > 1 ? 1 : amount;
20
20
  return value1 + (value2 - value1) * amount;
21
21
  }
22
+ remap(value, min1, max1, min2, max2) {
23
+ return min2 + (max2 - min2) * (value - min1) / (max1 - min1);
24
+ }
22
25
  moveTowards(value1, value2, amount) {
23
26
  value1 += amount;
24
27
  if (amount < 0 && value1 < value2)
@@ -33,6 +36,12 @@ class MathHelper {
33
36
  toRadians(degrees) {
34
37
  return degrees * Math.PI / 180;
35
38
  }
39
+ gammaToLinear(gamma) {
40
+ return Math.pow(gamma, 2.2);
41
+ }
42
+ linearToGamma(linear) {
43
+ return Math.pow(linear, 1 / 2.2);
44
+ }
36
45
  }
37
46
  ;
38
47
  const Mathf = new MathHelper();
@@ -1 +1 @@
1
- {"version":3,"file":"engine_math.js","sourceRoot":"","sources":["../../../engine/engine_math.ts"],"names":[],"mappings":"AAGA,MAAM,UAAU;IACZ,MAAM;QACF,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG;QAEjB,IAAI,KAAK,GAAG,GAAG,EAAE;YACb,OAAO,GAAG,CAAC;SACd;aACI,IAAI,KAAK,GAAG,GAAG,EAAE;YAClB,OAAO,GAAG,CAAC;SACd;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,KAAK;QACT,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM;QACvB,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjC,OAAO,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;IAC/C,CAAC;IACD,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM;QAC9B,MAAM,IAAI,MAAM,CAAC;QACjB,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,MAAM;YAAE,MAAM,GAAG,MAAM,CAAC;aAC9C,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,MAAM;YAAE,MAAM,GAAG,MAAM,CAAC;QACxD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,SAAS,CAAC,OAAO;QACb,OAAO,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,SAAS,CAAC,OAAO;QACb,OAAO,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;IACnC,CAAC;CACJ;AAAA,CAAC;AAEF,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"engine_math.js","sourceRoot":"","sources":["../../../engine/engine_math.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU;IACZ,MAAM;QACF,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;IACzB,CAAC;IACD,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;QAEzC,IAAI,KAAK,GAAG,GAAG,EAAE;YACb,OAAO,GAAG,CAAC;SACd;aACI,IAAI,KAAK,GAAG,GAAG,EAAE;YAClB,OAAO,GAAG,CAAC;SACd;QAED,OAAO,KAAK,CAAC;IACjB,CAAC;IACD,OAAO,CAAC,KAAa;QACjB,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACnC,CAAC;IAED,IAAI,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc;QAC/C,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACjC,OAAO,MAAM,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,KAAa,EAAE,IAAY,EAAE,IAAY,EAAE,IAAY,EAAE,IAAY;QACvE,OAAO,IAAI,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IACjE,CAAC;IAED,WAAW,CAAC,MAAc,EAAE,MAAc,EAAE,MAAc;QACtD,MAAM,IAAI,MAAM,CAAC;QACjB,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,MAAM;YAAE,MAAM,GAAG,MAAM,CAAC;aAC9C,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,GAAG,MAAM;YAAE,MAAM,GAAG,MAAM,CAAC;QACxD,OAAO,MAAM,CAAC;IAClB,CAAC;IACD,SAAS,CAAC,OAAe;QACrB,OAAO,OAAO,GAAG,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC;IACnC,CAAC;IACD,SAAS,CAAC,OAAe;QACrB,OAAO,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAAC;IACnC,CAAC;IACD,aAAa,CAAC,KAAa;QACvB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,aAAa,CAAC,MAAc;QACxB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;IACrC,CAAC;CACJ;AAAA,CAAC;AAEF,MAAM,KAAK,GAAG,IAAI,UAAU,EAAE,CAAC;AAE/B,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -5,6 +5,7 @@ import { Collision, ContactPoint, } from './engine_types';
5
5
  import { foreachComponent } from './engine_gameobject';
6
6
  import RAPIER, { ActiveEvents, Collider, ColliderDesc, EventQueue, JointData, RigidBody, RigidBodyType, World } from '@dimforge/rapier3d-compat';
7
7
  import { CollisionDetectionMode } from '../engine/engine_physics.types';
8
+ import { Gizmos } from './engine_gizmos';
8
9
  const debugPhysics = getParam("debugphysics");
9
10
  const debugColliderPlacement = getParam("debugphysicscolliders");
10
11
  const debugCollisions = getParam("debugcollisions");
@@ -734,7 +735,8 @@ class PhysicsCollisionHandler {
734
735
  // TODO: we dont respect the flip value here!
735
736
  this.world.contactPair(selfBody, otherBody, (manifold, _flipped) => {
736
737
  foreachComponent(object, (c) => {
737
- if (c.onCollisionEnter || c.onCollisionStay || c.onCollisionExit) {
738
+ const hasDeclaredEventMethod = c.onCollisionEnter || c.onCollisionStay || c.onCollisionExit;
739
+ if (hasDeclaredEventMethod || debugCollisions) {
738
740
  if (!collision) {
739
741
  const contacts = [];
740
742
  const normal = manifold.normal();
@@ -748,16 +750,22 @@ class PhysicsCollisionHandler {
748
750
  const friction = manifold.solverContactFriction(i);
749
751
  const contact = new ContactPoint(pt, dist, normal, impulse, friction);
750
752
  contacts.push(contact);
753
+ if (debugCollisions) {
754
+ Gizmos.DrawDirection(pt, normal, 0xff0000, 3, true);
755
+ }
751
756
  }
752
757
  }
753
758
  collision = new Collision(object, other, contacts);
754
759
  }
755
- const info = { collider: self, component: c, collision };
756
- this.activeCollisions.push(info);
757
- if (c.onCollisionStay) {
758
- this.activeCollisionsStay.push(info);
760
+ // we only need to keep track if any event exists
761
+ if (hasDeclaredEventMethod) {
762
+ const info = { collider: self, component: c, collision };
763
+ this.activeCollisions.push(info);
764
+ if (c.onCollisionStay) {
765
+ this.activeCollisionsStay.push(info);
766
+ }
767
+ c.onCollisionEnter?.call(c, collision);
759
768
  }
760
- c.onCollisionEnter?.call(c, collision);
761
769
  }
762
770
  });
763
771
  });
@@ -1 +1 @@
1
- {"version":3,"file":"engine_physics.js","sourceRoot":"","sources":["../../../engine/engine_physics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,IAAI,EAAE,eAAe,EAAE,cAAc,EAAwB,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,OAAO,EAAiE,UAAU,EAAO,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAA;AAE7Q,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AACzD,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,aAAa,EAAE,mBAAmB,EAAsB,sBAAsB,EAAE,MAAM,sBAAsB,CAAA;AAC3J,OAAO,EAIH,SAAS,EACT,YAAY,GAIf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,MAAM,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AACjJ,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAIxE,MAAM,YAAY,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC;AAC9C,MAAM,sBAAsB,GAAG,QAAQ,CAAC,uBAAuB,CAAC,CAAC;AACjE,MAAM,eAAe,GAAG,QAAQ,CAAC,iBAAiB,CAAC,CAAC;AACpD,MAAM,aAAa,GAAG,QAAQ,CAAC,eAAe,CAAC,CAAC;AAQhD,0DAA0D;AAC1D,MAAM,aAAa,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AACjD,sDAAsD;AACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;AACxC,MAAM,kBAAkB,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAC/C,sCAAsC;AAEtC,MAAM,OAAO,cAAc;IACvB,GAAG,GAAoB,SAAS,CAAC;IACjC,GAAG,GAA8B,SAAS,CAAC;IAC3C,WAAW,GAAwB,SAAS,CAAC;IAC7C,SAAS,GAA0B,SAAS,CAAC;IAC7C,OAAO,GAAoC,SAAS,CAAC;IACrD,OAAO,GAAgC,SAAS,CAAC;IACjD,SAAS,GAAwB,IAAI,CAAC;IACtC,WAAW,GAAuB,SAAS,CAAC;IAC5C,WAAW,GAAuB,SAAS,CAAC;IAC5C,aAAa,GAAuB,SAAS,CAAC;IAC9C,SAAS,GAAgC,SAAS,CAAC;IACnD,MAAM,GAA2B,SAAS,CAAC;IAE3C,qBAAqB,CAAC,EAAU,EAAE,EAAU;QACxC,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,OAAO,EAAE,CAAC;QACrE,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,UAAU,GAAG,CAAC,GAAG,CAAC,CAAC;QACpD,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,CAAC,IAAY;QAChB,IAAI,CAAC,IAAI,CAAC,SAAS;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,MAAM,EAAE,CAAC;QACnD,MAAM,EAAE,GAAG,IAAI,CAAC,SAAmB,CAAC;QACpC,IAAI,EAAE;YACF,EAAE,CAAC,IAAI,GAAG,IAAI,CAAC;;YACd,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;IAC/B,CAAC;IAEM,MAAM,CAAC,SAAS,GAAG,UAAU,CAAC;;AAGzC,MAAM,OAAO,kBAAkB;IAC3B,QAAQ,CAAS;IACjB,KAAK,CAAU;IACf,MAAM,CAAW;IACjB,YAAY,MAAgB,EAAE,QAAgB,EAAE,KAAc;QAC1D,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACvB,CAAC;CACJ;AAQD,MAAM,OAAO,OAAO;IAEhB,aAAa;IAEI,SAAS,GAAc,IAAI,SAAS,EAAE,CAAC;IACvC,qBAAqB,GAAmB,IAAI,cAAc,EAAE,CAAC;IAC7D,YAAY,GAAoB,IAAI,KAAK,CAAW,CAAC,CAAC,CAAC;IACvD,iBAAiB,GAAG;QACjC,IAAI,EAAE,EAAE;QACR,IAAI,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;QACtB,GAAG,EAAE,EAAE;QACP,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE;QACxB,MAAM,EAAE,EAAE;KACb,CAAA;IAGO,aAAa,GAAwB,IAAI,KAAK,EAAgB,CAAC;IAC/D,UAAU,GAAW,IAAI,MAAM,EAAE,CAAC;IACnC,aAAa,CAAC,SAAkB,EAAE,MAAc,EAAE,yBAAkC,IAAI;QAC3F,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;QAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;QACjB,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAChB,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC1C,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,sBAAsB,CAAC,CAAC;SACtF;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC;IACtE,CAAC;IACO,eAAe,GAAS,IAAI,IAAI,EAAE,CAAC;IACnC,eAAe,CAAC,GAAa,EAAE,EAAU,EAAE,IAAY,EAAE,OAA4B,EAAE,sBAA+B;QAC1H,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9C,MAAM,IAAI,GAAG,GAAW,CAAC;YACzB,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,WAAW;gBAChB,GAAG,CAAC,kBAAkB,EAAE,CAAC;YAC7B,IAAI,GAAG,CAAC,WAAW,EAAE;gBACjB,IAAI,IAAI,CAAC,sBAAsB;oBAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBACvF,IAAI,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE;oBACxB,uEAAuE;oBACvE,MAAM,EAAE,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;oBACjC,MAAM,IAAI,GAAG,EAAE,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC;oBACtC,MAAM,GAAG,GAAG,IAAI,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;oBAClB,IAAI,CAAC,sBAAsB;wBAAE,OAAO;iBACvC;aACJ;SACJ;QACD,IAAI,GAAG,CAAC,QAAQ,EAAE;YACd,KAAK,MAAM,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE;gBAC3B,MAAM,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC;gBAC3B,IAAI,CAAC,eAAe,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,sBAAsB,CAAC,CAAC;gBACpE,IAAI,GAAG,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,sBAAsB;oBAAE,OAAO;aAChE;SACJ;IACL,CAAC;IAEM,cAAc,CAAC,GAAQ,EAAE,UAAiC,IAAI;QACjE,MAAM,IAAI,GAAG,OAAO,IAAI,IAAI,CAAC,qBAAqB,CAAC;QACnD,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACI,OAAO,CAAC,UAAiC,IAAI;QAChD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC;QACnD,MAAM,EAAE,GAAG,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;QACrE,MAAM,EAAE,GAAG,OAAO,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QAC/C,EAAE,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;QACnC,EAAE,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,QAAQ,CAAC;QACzC,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACnC,IAAI,OAAO,CAAC,aAAa;YACrB,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,aAAa,EAAE,CAAC;;YACrD,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;QACvC,IAAI,OAAO,CAAC,GAAG,EAAE;YACb,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;SAC5B;aACI;YACD,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;YACnD,IAAI,CAAC,GAAG,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;gBAChE,IAAI,IAAI,CAAC,qBAAqB,CAAC,OAAO;oBAAE,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;gBACtF,OAAO,IAAI,CAAC,qBAAqB,CAAC,OAAO,IAAI,EAAE,CAAC;aACnD;YACD,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;SAC7B;QACD,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,EAAE;YACV,OAAO,GAAG,IAAI,CAAC,YAAY,CAAC;YAC5B,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;SACnC;QACD,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC9B,IAAI,CAAC,OAAO,EAAE;YACV,IAAI,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO;gBACnC,IAAI,CAAC,qBAAqB,CAAC,OAAO,GAAG,IAAI,KAAK,EAAgB,CAAC;YACnE,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC;SAChD;QAED,YAAY;QACZ,8DAA8D;QAC9D,IAAI,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE;YACjC,IAAI,OAAO,CAAC,SAAS,YAAY,MAAM;gBACnC,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;;gBAExC,EAAE,CAAC,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;SAC1C;aACI;YACD,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;SACxB;QAED,kBAAkB;QAClB,wBAAwB;QAExB,QAAQ;QACR,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QACnB,EAAE,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAEzD,kGAAkG;QAClG,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC;QAClC,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YACnD,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;SACjE;QACD,OAAO,OAAO,CAAC;IACnB,CAAC;IAEO,SAAS,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACvE,oBAAoB,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAE3E,gCAAgC;IACzB,kBAAkB,CAAC,MAAmB,EAAE,YAA8B,SAAS,EAAE,cAAsB,QAAQ,EAAE,QAAiB,IAAI;QAGzI,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QAClE,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC;QAEtB,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;QACzD,IAAI,GAAG,EAAE;YACL,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC;YAC5C,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACnC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;SAChE;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAEO,aAAa,CAAC,GAAe,EAAE,MAAmB,EAAE,YAA8B,SAAS;QAC/F,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QACpC,iEAAiE;QACjE,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE;YAC3B,IAAI,CAAC,GAAG,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,8DAA8D,CAAC,CAAC;gBAC9E,OAAO,IAAI,CAAC;aACf;YACD,MAAM,IAAI,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC;YAC7C,4EAA4E;YAC5E,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;gBAChE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC;aAC/D;YACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACpB,MAAM,GAAG,IAAI,CAAC;SACjB;QAED,MAAM,CAAC,GAAG,MAAc,CAAC;QAEzB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACnB,MAAM,GAAG,GAAG,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC;QAC5C,IAAI,SAAS;YACT,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC;aAC9C;YACD,IAAI,CAAC,GAAG,EAAE;gBACN,OAAO,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC;aACf;YACD,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAClD,MAAM,WAAW,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;YAC1C,GAAG,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;SACxB;QACD,gHAAgH;QAChH,GAAG,CAAC,SAAS,EAAE,CAAC;QAChB,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAClB,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAClB,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;QAClB,2DAA2D;QAC3D,OAAO,GAAG,CAAC;IACf,CAAC;IAED,qBAAqB;IAEb,aAAa,GAAY,IAAI,OAAO,EAAE,CAAC;IACvC,eAAe,GAAe,IAAI,UAAU,EAAE,CAAC;IAC/C,UAAU,GAAY,IAAI,OAAO,EAAE,CAAC;IACpC,WAAW,GAAY,IAAI,OAAO,EAAE,CAAC;IAErC,MAAM,CAAC,qBAAqB,GAAY,KAAK,CAAC;IAE9C,uBAAuB,GAAY,KAAK,CAAC;IACjD,IAAI,UAAU,KAAc,OAAO,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;IAG1D,OAAO,CAAU;IACjB,KAAK,CAAS;IACd,gBAAgB,GAAY,KAAK,CAAC;IAClC,UAAU,CAAc;IACxB,gBAAgB,CAA2B;IAG3C,OAAO,GAAiB,EAAE,CAAC;IAC3B,MAAM,GAAkB,EAAE,CAAC;IAE3B,UAAU,GAA8B,IAAI,GAAG,EAAwB,CAAC;IAGhF,YAAY,OAAgB;QACxB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,WAAW;QACb,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACvB,OAAO,CAAC,KAAK,CAAC,gEAAgE,CAAC,CAAC;YAChF,OAAO;SACV;QACD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE;YAChC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,CAAA;YACtC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;SACxC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;QAC7C,IAAI,CAAC,KAAK,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAED,WAAW;QACP,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAED,cAAc,CAAC,QAAmB,EAAE,MAAe,EAAE,IAAa;QAC9D,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACpE,KAAK,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QAC5D,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,iBAAiB,CAAC,QAAmB,EAAE,MAAe,EAAE,MAAc;QAClE,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;QAC5E,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACxC,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,kBAAkB,CAAC,QAAmB,EAAE,MAAe,EAAE,MAAc,EAAE,MAAc;QACnF,MAAM,GAAG,GAAG,QAAQ,CAAC,UAAU,CAAC;QAChC,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QACrD,IAAI,YAAY;YAAE,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,CAAC,MAAM,GAAG,EAAE,GAAG,KAAK,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,eAAe,CAAC,QAAmB,EAAE,IAAU,EAAE,MAAe;QAC5D,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC1B,IAAI,CAAC,GAAG,EAAE;YACN,IAAI,YAAY;gBAAE,OAAO,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YACnE,OAAO;SACV;QAED,IAAI,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,KAAqB,CAAC;QACnE,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,EAAE,KAAoB,CAAC;QAEhD,4BAA4B;QAE5B,gFAAgF;QAChF,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QACrD,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,EAAE;YACpG,MAAM,GAAG,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,GAAG,GAAG,GAAG,MAAM,CAAC;YACpF,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC1B,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAE,CAAC;aACzC;iBACI;gBACD,OAAO,CAAC,IAAI,CAAC,gFAAgF,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC;gBAC1I,4JAA4J;gBAC5J,MAAM,eAAe,GAAG,IAAI,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;gBAC3D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;oBAC1C,eAAe,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;oBAC5C,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;oBACpD,eAAe,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;iBACvD;gBACD,SAAS,GAAG,eAAe,CAAC;gBAC5B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,eAAe,CAAC,CAAC;aAC7C;SACJ;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACpG,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACpC,mDAAmD;SAEtD;IACL,CAAC;IAEO,cAAc,CAAC,QAAmB,EAAE,IAAkB,EAAE,MAAgB;QAC5E,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC;QAChC,MAAM,EACF,SAAS,EACT,yBAAyB,EAC5B,GAAG,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAElD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC5E,aAAa,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,MAAM;YACN,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACtF,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEvC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEnC,uFAAuF;QACvF,4FAA4F;QAC5F,6EAA6E;QAC7E,IAAI,yBAAyB,EAAE;YAC3B,sBAAsB;SACzB;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;QACvD,GAAG,CAAC,aAAa,CAAC,GAAG,QAAQ,CAAC;QAC9B,QAAQ,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;QACzB,GAAG,CAAC,eAAe,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;QACnD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACtB,OAAO,GAAG,CAAC;IACf,CAAC;IAEO,YAAY,CAAC,QAAmB,EAAE,OAAgB;QAEtD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAClE,IAAI,SAAS,GAAqB,IAAI,CAAC;QACvC,IAAI,yBAAyB,GAAG,KAAK,CAAC;QAEtC,IAAI,QAAQ,CAAC,iBAAiB,EAAE;YAE5B,MAAM,EAAE,GAAG,QAAQ,CAAC,iBAAiB,CAAC;YACtC,SAAS,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;YACzB,yBAAyB,GAAG,IAAI,CAAC;YACjC,IAAI,CAAC,SAAS,EAAE;gBACZ,MAAM,SAAS,GAAG,EAAE,CAAC,WAAW,IAAI,CAAC,sBAAsB,CAAC;gBAC5D,IAAI,YAAY;oBACZ,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;gBAC/C,MAAM,aAAa,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;gBACjH,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;gBACpE,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;gBAClD,aAAa,CAAC,WAAW,CAAC,kBAAkB,CAAC,QAAQ,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;gBACrF,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;gBACtD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aACzB;YACD,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC;YAC9B,EAAE,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,wBAAwB,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;YAC7C,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;SAEhF;aACI;YAED,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC,sBAAsB,EAAE,CAAC;YACpE,MAAM,GAAG,GAAG,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;YAClD,aAAa,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YAClD,aAAa,CAAC,WAAW,CAAC,kBAAkB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;YACnE,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;YACtD,OAAO,CAAC,QAAQ,EAAE,CAAC;YACnB,SAAS,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC;SAEnC;QAED,QAAQ,CAAC,kBAAkB,CAAC,GAAG,SAAS,CAAC;QAEzC,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,CAAC;IAC1F,CAAC;IAED,UAAU,CAAC,GAAe;QACtB,MAAM,IAAI,GAAG,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACrB,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE;YACpB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC;YACrD,IAAI,KAAK,IAAI,CAAC,EAAE;gBACZ,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBAE9B,IAAI,IAAI,YAAY,QAAQ,EAAE;oBAC1B,MAAM,QAAQ,GAAG,IAAgB,CAAC;oBAClC,IAAI,CAAC,KAAK,EAAE,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAE3C,2DAA2D;oBAC3D,MAAM,EAAE,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;oBAC7B,IAAI,EAAE,IAAI,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,EAAE;wBAC9B,IAAI,CAAC,KAAK,EAAE,eAAe,CAAC,EAAE,CAAC,CAAC;qBACnC;iBACJ;qBACI,IAAI,IAAI,YAAY,SAAS,EAAE;oBAChC,yDAAyD;oBACzD,gCAAgC;oBAChC,8CAA8C;oBAC9C,gDAAgD;oBAChD,kCAAkC;oBAClC,6CAA6C;oBAC7C,IAAI;oBACJ,kDAAkD;oBAClD,uCAAuC;oBACvC,iCAAiC;oBACjC,uCAAuC;iBAC1C;gBAED,+CAA+C;gBAC/C,gCAAgC;gBAChC,iDAAiD;gBACjD,+DAA+D;gBAC/D,0CAA0C;gBAC1C,8CAA8C;gBAC9C,QAAQ;gBACR,IAAI;aACP;SACJ;IACL,CAAC;IAED,UAAU,CAAC,IAA4B,EAAE,WAAoB,EAAE,QAAiB;QAC5E,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC/C,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ;YAAE,OAAO;QAEtC,IAAK,IAAkB,CAAC,UAAU,KAAK,IAAI,EAAE;YACzC,sCAAsC;YACtC,OAAO,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC;SAC9D;aACI;YACD,MAAM,SAAS,GAAG,IAAkB,CAAC;YACrC,MAAM,IAAI,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;YACjC,IAAI,IAAI,EAAE;gBACN,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;aAC3E;SACJ;IACL,CAAC;IAED,gBAAgB,CAAC,SAAqB;QAClC,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAA;QACvC,IAAI,WAAW,EAAE;YACb,IAAI,CAAC,wBAAwB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;SACzD;IACL,CAAC;IAED,qBAAqB,CAAC,EAAc;QAChC,OAAO,EAAE,CAAC,QAAQ,CAAc,CAAC;IACrC,CAAC;IAEO,wBAAwB,CAAC,EAAc,EAAE,SAAoB;QACjE,kCAAkC;QAClC,4FAA4F;QAC5F,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC,sBAAsB,KAAK,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QACnF,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACpC,SAAS,CAAC,iBAAiB,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAC5C,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAEvD,6EAA6E;QAC7E,8CAA8C;QAC9C,uDAAuD;QACvD,8CAA8C;QAC9C,sBAAsB;QACtB,qCAAqC;QACrC,oFAAoF;QACpF,QAAQ;QACR,IAAI;QAEJ,iBAAiB;QACjB,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAC7F,SAAS,CAAC,sBAAsB,CAAC,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,EAAE,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAEhG,IAAI,EAAE,CAAC,WAAW,EAAE;YAChB,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,sBAAsB,CAAC,CAAC;SACtE;aACI;YACD,SAAS,CAAC,WAAW,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;SACvD;IACL,CAAC;IAED,iDAAiD;IACzC,KAAK,CAAgB;IAEtB,IAAI,CAAC,UAAmB;QAC3B,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAClB,IAAI,CAAC,UAAU,GAAG,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC;SAC3C;QACD,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACjC,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;QACrC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1C,CAAC;IAEO,oBAAoB,CAAC,KAAY;QACrC,IAAI,YAAY,IAAI,sBAAsB,IAAI,aAAa,EAAE;YACzD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBACb,IAAI,QAAQ,GAAG,IAAI,iBAAiB,CAAC;oBACjC,KAAK,EAAE,QAAQ;oBACf,mCAAmC;iBACtC,CAAC,CAAC;gBACH,IAAI,QAAQ,GAAG,IAAI,cAAc,EAAE,CAAC;gBACpC,IAAI,CAAC,KAAK,GAAG,IAAI,YAAY,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;gBAClD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACtC;YACD,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACpC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,EAAE,IAAI,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAC;YACvF,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,IAAI,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;SACrF;IACL,CAAC;IAEM,QAAQ;QACX,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,uBAAuB,GAAG,IAAI,CAAC;QACpC,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,uBAAuB,GAAG,KAAK,CAAC;QAErC,IAAI,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE;YAC3C,IAAI,CAAC,gBAAgB,GAAG,IAAI,uBAAuB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACpF;QACD,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACvB,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC9C,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC;SAClC;IACL,CAAC;IAED,wFAAwF;IAChF,WAAW;QACf,IAAI,sBAAsB;YAAE,OAAO;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACzC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAa,CAAC;YAExC,iDAAiD;YACjD,gEAAgE;YAChE,MAAM,GAAG,GAAI,GAAiB,CAAC;YAC/B,IAAI,GAAG,EAAE,UAAU,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,iBAAiB,EAAE;gBACpD,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gBAChC,IAAI,SAAS;oBACT,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;gBAChE,SAAS;aACZ;YAGD,OAAO;YACP,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,wCAAwC;YACxC,MAAM,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAY,CAAC;YACxC,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,EAAE;gBAC5B,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;gBACrD,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;gBACrF,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;gBAC5C,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBACvB,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;gBAClB,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;gBAClB,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC;aACrB;YACD,mBAAmB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;YACzD,sBAAsB,CAAC,GAAG,CAAC,UAAU,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;SACtE;IACL,CAAC;IAEO,eAAe,CAAC,GAAa,EAAE,IAAe,EAAE,WAAoB,EAAE,QAAiB;QAE3F,oCAAoC;QACpC,8CAA8C;QAC9C,oCAAoC;QAEpC,MAAM,aAAa,GAAG,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAChE,MAAM,eAAe,GAAG,kBAAkB,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QACtE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC7B,QAAQ,IAAI,EAAE;YACV,KAAK,aAAa,CAAC,KAAK,CAAC;YACzB,KAAK,aAAa,CAAC,sBAAsB,CAAC;YAC1C,KAAK,aAAa,CAAC,sBAAsB;gBACrC,IAAI,WAAW;oBACX,IAAI,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAC;gBACpD,IAAI,QAAQ;oBACR,IAAI,CAAC,wBAAwB,CAAC,eAAe,CAAC,CAAC;gBACnD,MAAM;YACV;gBACI,IAAI,WAAW;oBACX,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;gBAC9C,IAAI,QAAQ;oBACR,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;gBAC7C,MAAM;SAEb;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,uDAAuD;QACvD,qCAAqC;QAErC,kBAAkB;QAClB,yCAAyC;QACzC,uBAAuB;QACvB,uBAAuB;QACvB,uBAAuB;QACvB,cAAc;QACd,eAAe;QACf,+FAA+F;QAC/F,2BAA2B;QAC3B,uDAAuD;QACvD,wBAAwB;QACxB,wBAAwB;QACxB,wBAAwB;QACxB,sBAAsB;QACtB,sBAAsB;QACtB,sBAAsB;QACtB,wBAAwB;QACxB,wCAAwC;QACxC,IAAI;QACJ,iGAAiG;QAEjG,8BAA8B;IAClC,CAAC;IAEO,MAAM,CAAC,eAAe,GAAc,EAAE,CAAC;IACvC,0BAA0B,CAAC,IAAc,EAAE,SAAmB,EAAE,GAAY,EAAE,QAAoB;QACtG,qFAAqF;QACrF,IAAI,QAAQ,KAAK,SAAS,EAAE;YACxB,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC;YACnC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;SACvB;QACD,IAAI,IAAI,KAAK,SAAS,EAAE;YACpB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACtD,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;YACzC,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC3C,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAC7B;YACD,OAAO,GAAG,CAAC;SACd;QACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;SAC1E;QACD,OAAO,GAAG,CAAC;IACf,CAAC;IAEO,MAAM,CAAC,mBAAmB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAClD,MAAM,CAAC,mBAAmB,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;IAIhE,aAAa,CAAC,KAAiB,EAAE,KAAiB;QAC9C,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC/C,OAAO;SACV;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAc,CAAC;QACxC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAc,CAAC;QAExC,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1F,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtF,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAC1B,OAAO,CAAC,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,EACxD,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,CAC3C,CAAC;QACF,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAClE,IAAI,YAAY;YACZ,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAID,aAAa,CAAC,KAAiB,EAAE,KAAiB,EAAE,MAA2C,EAAE,IAAyC;QACtI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;YACb,OAAO,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;YAC/C,OAAO;SACV;QACD,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAc,CAAC;QACxC,MAAM,EAAE,GAAG,KAAK,CAAC,QAAQ,CAAc,CAAC;QAExC,IAAI,CAAC,8BAA8B,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QAC1F,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAEtF,IAAI,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QACzE,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,CAAC;QAChE,IAAI,YAAY;YACZ,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC,CAAA;IAC7C,CAAC;IAGO,8BAA8B,CAAC,KAAkB,EAAE,KAAkB,EAAE,GAAY;QACvF,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,KAAK,CAAC,iBAAiB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;QACjC,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC;QACjC,iBAAiB;QACjB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACxB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;QACxB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;IAC3D,CAAC;;AAKL,0EAA0E;AAC1E,MAAM,uBAAuB;IAEhB,KAAK,CAAQ;IACb,UAAU,CAAa;IAEhC,YAAY,KAAY,EAAE,UAAsB;QAC5C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IACjC,CAAC;IAEO,gBAAgB,GAAgF,EAAE,CAAC;IACnG,oBAAoB,GAAgF,EAAE,CAAC;IACvG,cAAc,GAAoF,EAAE,CAAC;IAE7G,qBAAqB;QACjB,IAAI,CAAC,IAAI,CAAC,UAAU;YAAE,OAAO;QAC7B,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE;YAC/D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC9C,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,MAAM,kBAAkB,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC;YAC/C,IAAI,eAAe;gBACf,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,kBAAkB,CAAC,IAAI,EAAE,kBAAkB,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC9F,IAAI,kBAAkB,IAAI,kBAAkB,EAAE;gBAC1C,IAAI,OAAO,EAAE;oBACT,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;oBAC5E,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,CAAC,CAAC;iBAC/E;qBACI;oBACD,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;oBAC9D,IAAI,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;iBACjE;aACJ;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED,MAAM;QACF,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACjC,CAAC;IAEO,kBAAkB,CAAC,IAAe,EAAE,QAAkB,EAAE,KAAgB,EAAE,SAAmB;QACjG,IAAI,SAAS,GAAqB,IAAI,CAAC;QAEvC,kFAAkF;QAClF,IAAI,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,SAAS,EAAE;YACnC,gBAAgB,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAa,EAAE,EAAE;gBAChD,IAAI,CAAC,CAAC,cAAc,EAAE;oBAClB,CAAC,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;iBAC3B;gBACD,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC,CAAC;YACrF,CAAC,CAAC,CAAC;SACN;aACI;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;YAC/B,6CAA6C;YAC7C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,EAAE,EAAE;gBAC/D,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAa,EAAE,EAAE;oBACvC,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,eAAe,IAAI,CAAC,CAAC,eAAe,EAAE;wBAC9D,IAAI,CAAC,SAAS,EAAE;4BACZ,MAAM,QAAQ,GAAwB,EAAE,CAAC;4BACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;4BACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,iBAAiB,EAAE,EAAE,CAAC,EAAE,EAAE;gCACnD,mCAAmC;gCACnC,kGAAkG;gCAClG,MAAM,EAAE,GAAG,QAAQ,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;gCAC1C,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;gCAC3C,IAAI,EAAE,EAAE;oCACJ,MAAM,IAAI,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;oCACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;oCACnD,MAAM,OAAO,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;oCACtE,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;iCAC1B;6BACJ;4BACD,SAAS,GAAG,IAAI,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;yBACtD;wBAED,MAAM,IAAI,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC;wBACzD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACjC,IAAI,CAAC,CAAC,eAAe,EAAE;4BACnB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;yBACxC;wBAED,CAAC,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;qBAC1C;gBACL,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAEO,qBAAqB;QACzB,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,oBAAoB,EAAE;YAC5C,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;YAC3B,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,eAAe,EAAE;gBACzC,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC7B,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;aAC1B;SACJ;QACD,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,cAAc,EAAE;YACtC,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;YAC3B,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,aAAa,EAAE;gBACvC,MAAM,GAAG,GAAG,MAAM,CAAC,aAAa,CAAC;gBACjC,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;aACxB;SACJ;IACL,CAAC;IAEO,gBAAgB,CAAC,IAAe,EAAE,KAAgB;QACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACnD,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE;gBAC1D,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC3B,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACnC,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,eAAe,EAAE;oBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;oBACnC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;iBAChC;aACJ;SACJ;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACvD,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,QAAQ,KAAK,KAAK,EAAE;gBAC1D,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC3B,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACvC,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,eAAe,EAAE;oBACzC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;oBACnC,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;iBAChC;aACJ;SACJ;QACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACjD,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;YACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YACjC,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,CAAC,aAAa,KAAK,KAAK,EAAE;gBACrD,MAAM,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;gBAC3B,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBACjC,CAAC,EAAE,CAAC;gBACJ,IAAI,CAAC,CAAC,gBAAgB,IAAI,CAAC,CAAC,aAAa,EAAE;oBACvC,MAAM,SAAS,GAAG,MAAM,CAAC,aAAa,CAAC;oBACvC,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;iBAC9B;aACJ;SACJ;IACL,CAAC;CACJ"}
1
+ {"version":3,"file":"engine_physics.js","sourceRoot":"","sources":["../../../engine/engine_physics.ts"],"names":[],"mappings":"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"}
@@ -273,6 +273,8 @@ const blockChecks = getParam("noerrors");
273
273
  function checkObjectAssignments(obj, serializedData, implementationInformation) {
274
274
  if (blockChecks)
275
275
  return;
276
+ if (!serializedData)
277
+ return;
276
278
  if (isLocalNetwork() === false)
277
279
  return;
278
280
  if (!obj)